LINC
El LINC (Computadora de instrumentos de laboratorio) es una computadora transistorizada de 12 bits y 2048 palabras. La LINC es considerada por algunos como la primera minicomputadora y precursora de la computadora personal. Originalmente llamado 'Linc', lo que sugiere los orígenes del proyecto en el Laboratorio Lincoln del MIT, pasó a llamarse LINC después de que el proyecto se mudara del Laboratorio Lincoln. El LINC fue diseñado por Wesley A. Clark y Charles Molnar.
El LINC y otros "MIT Group" Las máquinas fueron diseñadas en el MIT y finalmente construidas por Digital Equipment Corporation (DEC) y Spear Inc. de Waltham, Massachusetts (más tarde una división de Becton, Dickinson and Company). El LINC se vendió por más de $40,000 en ese momento. Una configuración típica incluía un gabinete cerrado de 6'X20" estante; cuatro cajas que contienen (1) dos unidades de cinta, (2) osciloscopio de visualización y perillas de entrada, (3) consola de control y (4) interfaz de terminal de datos; y un teclado.
El LINC interactuó bien con los experimentos de laboratorio. Las entradas y salidas analógicas formaban parte del diseño básico. Fue diseñado en 1962 por Charles Molnar y Wesley Clark en el Laboratorio Lincoln, Massachusetts, para investigadores del NIH. El diseño de LINC era literalmente de dominio público, lo que quizás lo hacía único en la historia de las computadoras. Una docena de computadoras LINC fueron ensambladas por sus eventuales propietarios investigadores biomédicos en un taller de verano de 1963 en el MIT. Digital Equipment Corporation (a partir de 1964) y, más tarde, Spear Inc. de Waltham, MA. los fabricaba comercialmente.
El pionero de DEC, C. Gordon Bell, afirma que el proyecto LINC comenzó en 1961, con la primera entrega en marzo de 1962, y la máquina no se retiró formalmente hasta diciembre de 1969. Se construyeron un total de 50 (todas con DEC System Module Blocks and cabinets), la mayoría en Lincoln Labs, que albergan los instrumentos de escritorio en cuatro estantes de madera. El primer LINC incluía dos pantallas de osciloscopio. DEC vendió veintiuno a $ 43,600 (equivalente a $ 390,600 en 2021), entregados en el diseño del Modelo de producción. En estos, el gabinete alto sentado detrás de una mesa cubierta de fórmica blanca contenía dos cajas de metal algo más pequeñas que contenían la misma instrumentación, un osciloscopio de pantalla Tektronix sobre el "panel frontal" a la izquierda del usuario, una bahía para interfaces sobre dos unidades de cinta LINC a la derecha del usuario y un teclado grueso entre ellas. El software de desarrollo de programas estándar (un ensamblador/editor) fue diseñado por Mary Allen Wilkes; la última versión se denominó LAP6 (LINC Assembly Program 6).
Arquitectura
El LINC tenía 2048 palabras de memoria de 12 bits en dos secciones. Solo las primeras 1024 palabras se pudieron utilizar para la ejecución del programa. La segunda sección de la memoria solo podía usarse para datos.
Los programas pueden usar un acumulador de 12 bits y un registro de enlace de un bit. Las primeras dieciséis ubicaciones en la memoria del programa tenían funciones especiales. La ubicación 0 admitía el nivel único de llamada de subrutina y se actualizaba automáticamente con una dirección de retorno en cada instrucción de salto. Las próximas quince ubicaciones podrían usarse como registros de índice por uno de los modos de direccionamiento. Se diseñó un registro de relé programable de seis bits para ser utilizado por instrumentos externos.
Una modificación posterior al LINC agregó un registro Z de 12 bits para facilitar la aritmética de precisión extendida, y se proporcionó una interrupción que obligó a la ejecución a la ubicación 21 (octal).
Los dispositivos alfanuméricos de entrada/salida incluían un teclado dedicado y la capacidad de mostrar texto en el CRT de mapa de bits adjunto. Se podría conectar una teleimpresora para la salida impresa.
La aritmética era unos' complemento, lo que significaba que había representaciones para "más cero" y "menos cero".
El LINC original requería 8 microsegundos para cada instrucción.
Conjunto de instrucciones
La notación natural utilizada para el LINC fue octal. En esta sección, todos los números se dan en base diez a menos que se identifiquen como octales. El conjunto de instrucciones LINC fue diseñado para facilitar su uso con instrumentos científicos o aparatos experimentales personalizados.
- Clase diversa, sin dirección - Halt, acumulador claro, permitir la entrada de la marca de cinta, transferir el acumulador al registro de relés, leer el registro de relés al acumulador, sin operación, complemento acumulador
- Clase de desplazamiento, sin dirección (todo opera en el acumulador y opcionalmente el bit de enlace) - girar a la izquierda, girar a la derecha, escala derecha (replica bit de firma),
- Clase de dirección completa, dos instrucciones. dirección inmediata dada en la segunda palabra de 12 bits del opcode - añadir, almacenar y claro acumulador, saltar. Sólo se pueden acceder a las primeras 1024 palabras de memoria.
- Skip class, salta la siguiente instrucción, puede probar la condición fija o clara. Las condiciones son: línea lógica externa (14 líneas de entrada podrían ser probadas), pulsada clave, uno de los cinco interruptores de sentido, acumulador positivo, bit de enlace cero o unidad de cinta activa en una zona de interbloqueo. Más tarde los modelos añadidos saltan en la parte 0 del registro Z, saltan sobre el flujo desbordante y saltan sobre la interrupción pausada.
- Clase de índice - estas instrucciones pueden tener una segunda palabra que fue el operado inmediato, o que especificó la dirección de operando, o que especificó uno de los registros 01 a 15 (decimal) como mantener la dirección del operado. La dirección fue aumentada. Estas instrucciones incluyeron carga o añadir al acumulador, añadir acumulador a la memoria, añadir acumulador con carga a la memoria, multiplicar (producir un producto firmado de 22 bits), saltar si es igual, saltar y girar, poco claro, bit set y bit complemento. Otra instrucción en este grupo fue mostrar un mapa de bits, representar un personaje u otros datos, en la pantalla de pantalla de CRT integrada.
- Clase de media palabra - instrucciones que operan en los seis pedazos inferiores o superiores de una palabra. Estos incluyen carga media, almacena la mitad, saltar si las mitades son diferentes,
- Set - mueve datos desde cualquier ubicación de memoria a uno de los lugares 1 a 15.
- Muestra - lee uno de los dieciséis 8 bits analógico a convertidores digitales y coloca el valor firmado en el acumulador. Los primeros ocho canales A/D se dedicaron a controlar los paneles para permitir la interacción con un programa de ejecución por el usuario. La instrucción podría contener el ordenador hasta que un resultado de conversión estuviera listo, o permitir que se ejecutaran más instrucciones siempre que no dependieran del contenido del acumulador, que sería sobrescrito por el valor de conversión A/D.
- Mostrar - dibuja un píxel en una de las pantallas CRT en una ubicación especificada, indización opcional de un registro.
- Índice y salto - añade uno a uno de los lugares de memoria 1 a 15, y salta si se produce un desbordamiento de 10 bits.
- Clase de funcionamiento, utilizada para operaciones de entrada/salida. Estos incluyen establecer un poco en una de 14 líneas de salida, leer el teclado, o leer el banco de conmutación izquierda o derecha.
- Clase de cinta, con opcodes para colocar la cinta, leer o escribir a la cinta, y para comprobar la cinta contra la memoria.
Panel de control
El panel de control de LINC se usó para recorrer programas paso a paso y para depurar programas. La ejecución podría detenerse cuando el contador del programa coincidiera con un conjunto de interruptores. Otra función permitía detener la ejecución cuando se accedía a una dirección en particular. Las funciones de un solo paso y de reanudación podrían repetirse automáticamente. La tasa de repetición se puede variar en cuatro órdenes de magnitud por medio de una perilla analógica y un interruptor de década de cuatro posiciones, desde aproximadamente un paso por segundo hasta aproximadamente la mitad de la velocidad máxima. Ejecutar un programa a un paso por segundo y acelerarlo gradualmente hasta alcanzar la máxima velocidad proporcionó una manera extremadamente espectacular de experimentar y apreciar la velocidad de la computadora.
LINCcinta
Una característica notable de LINC fue la cinta LINC. Era una parte fundamental del diseño de la máquina, no un periférico opcional, y el sistema operativo de la máquina dependía de ella. La cinta LINCtape se puede comparar con un disquete lineal con un tiempo de búsqueda lento. Las unidades de cinta magnética en las grandes máquinas de la época almacenaban grandes cantidades de datos, tardaban minutos en pasar de un extremo a otro, pero no podían actualizar de forma fiable los bloques de datos en su lugar. Por el contrario, LINCtape era un dispositivo pequeño y ágil que almacenaba alrededor de 400 000, tenía una pista de formato fija que permitía leer y reescribir los datos repetidamente en las mismas ubicaciones y tardaba menos de un minuto en pasar de un extremo al otro.. La cinta se formateó en bloques de tamaño fijo y se usó para contener un directorio y un sistema de archivos. Una sola instrucción de hardware podría buscar y luego leer o escribir múltiples bloques de cinta, todo en una sola operación.
Los nombres de los archivos tenían seis caracteres. El sistema de archivos permitía almacenar dos archivos: un archivo fuente y un archivo binario ejecutable con el mismo nombre. En efecto, era un nombre de archivo 6.1 en el que la extensión estaba restringida a "S" o "B". Dado que el LINC básico tenía solo 1024 palabras de 12 bits de memoria central (RAM), y el LINC grande y ampliado solo tenía 2048, las operaciones normales dependían en gran medida del intercambio hacia y desde LINCtape. Posteriormente, Digital patentó y comercializó un diseño similar con el nombre de DECtape; Las patentes de Digital sobre DECtape finalmente se probaron en los tribunales y se declararon inválidas.
LINCtape también es recordado por su fiabilidad, superior a la de los disquetes que la suplantaron. LINCtape incorporó una forma muy simple de redundancia: todos los datos se duplicaron en dos ubicaciones a lo largo de la cinta. Los usuarios de LINC demostraron esto al perforar agujeros en una cinta con un perforador de papel de oficina común. La cinta dañada de esta manera era perfectamente legible. La pista de formateo hizo que la operación fuera casi independiente de la velocidad de la cinta, que era, de hecho, bastante variable. No había cabrestante; el movimiento de la cinta durante la lectura y la escritura estaba controlado directamente por los motores del carrete. No había avance rápido ni rebobinado: la lectura y la escritura se realizaban a velocidades de avance y rebobinado rápidos. En algunos modos de operación, las transferencias de datos eran audibles a través del altavoz incorporado y producían una serie muy característica de graznidos ásperos como los de los pájaros con un tono variable.
Teclado
El teclado LINC, fabricado por la empresa Soroban Engineering, tenía un solenoide de bloqueo exclusivo. El mecanismo interno de cada llave tenía una ranura que funcionaba con un conjunto de barras para codificar el carácter y otra ranura que atrapaba una barra de bloqueo, que bloqueaba todas las llaves en un movimiento mecánico del solenoide de bloqueo.
Cuando el usuario presionaba una tecla, la tecla presionada se bloqueaba en su posición hacia abajo y todas las demás teclas se bloqueaban en la posición hacia arriba. Cuando el programa en ejecución leyó el teclado, el bloqueo se liberó y la tecla presionada volvió a aparecer. Esto podría tener el efecto de ralentizar la escritura y evitar incluso el desplazamiento de 2 teclas. Este teclado exótico se abandonó en favor de los teclados de teletipo, como el Modelo 35 KSR y el Modelo 37 KSR, en las computadoras posteriores LINC-8 y PDP-12.
Perillas
El LINC incluía un conjunto de ocho potenciómetros de tres vueltas (numerados del 0 al 7) que podían ser leídos por una instrucción de computadora. El cuadro de marcación era un dispositivo de entrada de usuario conveniente en un momento anterior a la adopción general del mouse. Por ejemplo, una perilla podría controlar la escala de un gráfico mostrado y otra podría usarse como un cursor para mostrar el valor real de los datos en un punto.
Visualización de texto
El hardware LINC permitía que una palabra de 12 bits se mostrara rápida y automáticamente en la pantalla como una matriz de píxeles de 4 de ancho por 6 de alto, lo que hacía posible mostrar pantallas completas de texto sin parpadeo con un mínimo de hardware dedicado. Las rutinas de visualización estándar generaron celdas de 4 por 6 caracteres, lo que le dio al LINC uno de los conjuntos de caracteres más toscos jamás diseñados.
La pantalla de visualización era un CRT de unas 5 pulgadas cuadradas que en realidad era un osciloscopio Tektronix estándar con amplificadores enchufables especiales. Los complementos especiales podrían reemplazarse con complementos de osciloscopio estándar para usar en el mantenimiento de diagnóstico de la computadora. Muchos LINC se suministraron como kits para que los ensamblara el usuario final, por lo que el osciloscopio resultó útil.
El CRT usaba un fósforo blanco o amarillo de muy larga persistencia, de modo que las líneas y curvas dibujadas punto por punto a una velocidad relativamente lenta permanecerían visibles durante los bucles de dibujo programados que con frecuencia duraban medio segundo o más. El eje y mostraba tanto más como menos cero como valores diferentes, lo que reflejaba innecesariamente el hecho de que el LINC usaba unidades de unos. complemento aritmético. Los programadores aprendieron rápidamente a mover cualquier dato negativo mostrado un punto hacia arriba para ocultar el artefacto que, de lo contrario, tendía a aparecer en y=0.
Notoriamente, un bucle cerrado que mostrara puntos repetitivamente en un lugar de la pantalla quemaría un agujero oscuro permanente en el delicado fósforo en menos de un minuto; los programadores tenían que estar listos para presionar la palanca de parada rápidamente si aparecía repentinamente un punto muy brillante debido a un error de programación.
Salida de teletipo
La salida impresa en un Teletipo Modelo 33 ASR estaba controlada por un relé unipolar. Una subrutina convertiría los códigos de caracteres LINC en ASCII y usaría bucles de tiempo para activar y desactivar el relé, generando la salida correcta de 8 bits para controlar la impresora de teletipo.
Interfaz de laboratorio
El módulo conector LINC incluía bahías para dos chasis enchufables que permitían una interfaz personalizada para configuraciones experimentales. Los convertidores de analógico a digital y de digital a analógico estaban integrados en la computadora y se podía acceder a cada uno mediante una sola instrucción de máquina. También estaban disponibles seis relés.
Variantes
Además del "clásico" LINC, se produjeron ligeras variaciones de programación al usar micro-LINC (μ-LINC) (1965), micro-LINC 300 (μ-LINC 300) (1968) (versiones de circuito integrado [MECL]) y LINC-8. Hubo variaciones en los equipos de entrada/salida, acceso a la memoria. Los modelos posteriores tenían una velocidad de reloj más rápida.
Ordenadores LINC-8 y PDP-12
Mientras que Bell en su libro dice que el diseño del LINC proporcionó las ideas para la segunda y la tercera máquina de DEC, el PDP-4 y el PDP-5. Digital Equipment Corporation lanzaría el extremadamente exitoso PDP-8 antes de fabricar la primera computadora compatible con LINC de próxima generación, el LINC-8 y una combinación de PDP-8/I y LINC, combinados como el PDP-12. La última máquina de laboratorio de 12 bits de DEC, la Lab-8/E, incorporó el conjunto de instrucciones LINC. El primer seguimiento, el LINC-8, arrancó (lentamente) a un programa PDP-8 llamado PROGOFOP (PROGRAMA DE OPERACIÓN) que interactuó con el hardware LINC separado. El PDP-12 fue la última y más popular continuación del LINC. Era una máquina capaz y mejorada, y era más estable que la LINC-8, pero arquitectónicamente seguía siendo un híbrido imperfecto de una LINC y una PDP-8, llena de muchos pequeños fallos técnicos. (Por ejemplo, el LINC tenía un bit de desbordamiento que era una parte pequeña pero importante del estado de la máquina del LINC; el PDP-12 no tenía provisión para guardar y restaurar el estado de este bit a través de las interrupciones del PDP-8).
Ordenador MINC-11
Digital produjo una versión del PDP-11/03 llamada MINC-11, alojada en un carro portátil y equipable con módulos de E/S de laboratorio diseñados por Digital que admiten capacidades como entrada y salida analógica. Un lenguaje de programación, MINC BASIC, incluía soporte integrado para los módulos de E/S del laboratorio. MINC significa "Computadora de instrumentos modulares". Sin duda, el nombre tenía la intención de evocar recuerdos de LINC, pero la máquina de 16 bits no tenía ningún parecido arquitectónico ni compatibilidad con LINC.
Contenido relacionado
Hipertexto
Ciclón (lenguaje de programación)
Compatibilidad con versiones anteriores