La serie CDC 6000 es una familia discontinuada de computadoras mainframe fabricadas por Control Data Corporation en la década de 1960. [1] Consistía en las computadoras CDC 6200, [2] CDC 6300, CDC 6400, CDC 6500, [3] CDC 6600 y CDC 6700 [4] , que eran todas extremadamente rápidas y eficientes para su época. Cada una es una computadora digital grande, de estado sólido , de propósito general, que realiza procesamiento de datos científicos y comerciales, así como multiprogramación , multiprocesamiento , entrada remota de trabajos , tiempo compartido y tareas de administración de datos bajo el control del sistema operativo llamado SCOPE (Supervisory Control Of Program Execution). [5] [6] [7] Para 1970 [8] también había un sistema operativo orientado al tiempo compartido llamado KRONOS. [9] Fueron parte de la primera generación de supercomputadoras . [10] El 6600 fue el buque insignia de la serie 6000 de Control Data. [11] [12]
Las computadoras de la serie CDC 6000 se componen de cuatro dispositivos funcionales principales:
La serie 6000 tiene una arquitectura distribuida.
Los miembros de la familia se diferencian principalmente por el número y tipo de procesador(es) central(es): [17]
Ciertas características y nomenclaturas también se habían utilizado en la serie CDC 3000 anterior :
La única máquina de la serie CDC 6000 que funciona actualmente (a partir de 2018), una 6500, ha sido restaurada por Living Computers: Museum + Labs [21]. Fue construida en 1967 y utilizada por la Universidad de Purdue hasta 1989, cuando fue desmantelada y luego donada al Museo de Industria y Tecnología de Chippewa Falls antes de ser comprada por Paul Allen para LCM+L. [22]
El primer miembro de la serie CDC 6000 fue la supercomputadora CDC 6600 , diseñada por Seymour Cray y James E. Thornton [23] en Chippewa Falls, Wisconsin . Fue presentada en septiembre de 1964 y ejecuta hasta tres millones de instrucciones por segundo, tres veces más rápido que la IBM Stretch , la campeona de velocidad durante los dos años anteriores. [24] [25] Siguió siendo la máquina más rápida durante cinco años hasta que se lanzó la CDC 7600. [26] La máquina se enfría con refrigerante Freon .
Control Data fabricó alrededor de 100 máquinas de este tipo, [27] vendiéndose entre 6 y 10 millones de dólares cada una.
El siguiente sistema que se presentó fue el CDC 6400, entregado en abril de 1966. El procesador central 6400 es una implementación más lenta y menos costosa con procesamiento en serie, en lugar de las unidades funcionales paralelas del 6600. Todos los demás aspectos del 6400 son idénticos al 6600. Luego siguió una máquina con procesadores centrales duales de estilo 6400, el CDC 6500, diseñado principalmente por James E. Thornton, en octubre de 1967. Y finalmente, el CDC 6700, con una CPU de estilo 6600 y una CPU de estilo 6400, fue lanzado en octubre de 1969.
Se desarrollaron opciones de edición especial posteriores personalizadas para la serie, entre ellas:
En todas las computadoras de la serie CDC 6000, el procesador central se comunica con alrededor de siete programas activos simultáneamente ( trabajos ), que residen en la memoria central. Las instrucciones de estos programas se leen en los registros del procesador central y el procesador central las ejecuta a intervalos programados. Luego, los resultados se devuelven a la memoria central.
La información se almacena en la memoria central en forma de palabras. La longitud de cada palabra es de 60 dígitos binarios ( bits ). Los mecanismos de control de datos y direcciones altamente eficientes que intervienen permiten mover una palabra hacia dentro o hacia fuera de la memoria central en tan sólo 100 nanosegundos.
Una unidad de almacenamiento de núcleo extendido (ECS) proporciona almacenamiento de memoria adicional y mejora las potentes capacidades informáticas de las computadoras de la serie CDC 6000. La unidad contiene bancos de núcleo intercalados, cada uno de una palabra ECS (488 bits) de ancho y un búfer de 488 bits para cada banco. Si bien nominalmente es más lento que CM, ECS incluye un búfer (caché) que en algunas aplicaciones le dio a ECS un mejor rendimiento que CM. Sin embargo, con un patrón de referencia más común, CM seguía siendo más rápido.
El procesador central es la unidad aritmética de alta velocidad que funciona como el caballo de batalla de la computadora. Realiza las operaciones de suma, resta y lógicas, y todas las instrucciones de multiplicación, división, incremento, indexación y ramificación para los programas de usuario. Tenga en cuenta que en la arquitectura CDC 6000, la unidad central de procesamiento no realiza operaciones de entrada/salida (E/S). La entrada/salida es totalmente asincrónica y la realizan procesadores periféricos.
Una CPU de la serie 6000 contiene 24 registros operativos , designados X0–X7, A0–A7 y B0–B7. Los ocho registros X tienen 60 bits cada uno y se utilizan para la mayoría de la manipulación de datos, tanto enteros como de punto flotante. Los ocho registros B tienen 18 bits y generalmente se utilizan para indexación y almacenamiento de direcciones. El registro B0 está programado para devolver siempre 0. Por convención de software, el registro B1 generalmente se establece en 1. (Esto a menudo permite el uso de instrucciones de 15 bits en lugar de instrucciones de 30 bits). Los ocho registros A de 18 bits están "acoplados" a sus registros X correspondientes: establecer una dirección en cualquiera de los registros A1 a A5 provoca una carga de memoria del contenido de esa dirección en los registros X correspondientes. Del mismo modo, establecer una dirección en los registros A6 y A7 provoca un almacenamiento de memoria en esa ubicación en la memoria desde X6 o X7. Los registros A0 y X0 no están acoplados de esta manera, por lo que se pueden utilizar como registros de borrador. Sin embargo, A0 y X0 se utilizan cuando se aborda el almacenamiento central extendido (ECS) de CDC.
Las instrucciones tienen una longitud de 15 o 30 bits, por lo que puede haber hasta cuatro instrucciones por palabra de 60 bits . Una palabra de 60 bits puede contener cualquier combinación de instrucciones de 15 y 30 bits que quepan dentro de la palabra, pero una instrucción de 30 bits no puede pasar a la siguiente palabra. Los códigos de operación tienen una longitud de seis bits. El resto de la instrucción son tres campos de registro de tres bits (dos operandos y un resultado) o dos registros con una constante inmediata de 18 bits . Todas las instrucciones son de "registro a registro". Por ejemplo, el siguiente código COMPASS (lenguaje ensamblador) carga dos valores de la memoria, realiza una suma de enteros de 60 bits y luego almacena el resultado:
SA1 X ESTABLECE EL REGISTRO A1 EN LA DIRECCIÓN DE X; CARGA X1 DESDE ESA DIRECCIÓNSA2 Y ESTABLECE EL REGISTRO A2 EN LA DIRECCIÓN DE Y; CARGA X2 DESDE ESA DIRECCIÓNIX6 X1+X2 ENTERO LARGO SUMA LOS REGISTROS X1 Y X2, RESULTA X6SA6 A1 ESTABLECE EL REGISTRO A6 EN (A1); ALMACENA X6 EN X; POR LO TANTO, X += Y
El procesador central utilizado en la serie CDC 6400 contiene un elemento aritmético unificado que ejecuta una instrucción de máquina a la vez. Según el tipo de instrucción, una instrucción puede tardar desde cinco ciclos de reloj para aritmética de enteros de 18 bits hasta 68 ciclos de reloj (recuento de población de 60 bits). El CDC 6500 es idéntico al 6400, pero incluye dos CPU 6400 idénticas. Por lo tanto, el CDC 6500 puede casi duplicar el rendimiento computacional de la máquina, aunque el rendimiento de E/S aún está limitado por la velocidad de los dispositivos de E/S externos atendidos por los mismos 10 PP/12 canales. Muchos clientes de CDC trabajaron en problemas limitados por el cálculo.
El ordenador CDC 6600, al igual que el CDC 6400, tiene un solo procesador central. Sin embargo, su procesador central ofrece una eficiencia mucho mayor. El procesador está dividido en 10 unidades funcionales individuales , cada una de las cuales fue diseñada para un tipo específico de operación. Las 10 unidades funcionales pueden operar simultáneamente, cada una trabajando en su propia operación. Las unidades de función proporcionadas son: bifurcación, booleana, desplazamiento, suma de enteros largos, suma de punto flotante , división de punto flotante, dos multiplicadores de punto flotante y dos unidades de incremento (suma de enteros de 18 bits). Las latencias de las unidades funcionales están entre tres ciclos de reloj para la suma de incremento y 29 ciclos de reloj para la división de punto flotante.
El procesador 6600 puede emitir una nueva instrucción en cada ciclo de reloj, suponiendo que haya varios recursos del procesador (unidad funcional, registro) disponibles. Estos recursos se controlan mediante un mecanismo de tablero de indicadores . También contribuye a mantener alta la tasa de emisión una pila de instrucciones , que almacena en caché el contenido de ocho palabras de instrucción (32 instrucciones cortas o 16 instrucciones largas, o una combinación). Los bucles pequeños pueden residir completamente dentro de la pila, lo que elimina la latencia de la memoria en las búsquedas de instrucciones.
Tanto la CPU 6400 como la 6600 tienen un tiempo de ciclo de 100 ns (10 MHz). Debido a la naturaleza serial de la CPU 6400, su velocidad exacta depende en gran medida de la mezcla de instrucciones, pero generalmente alrededor de 1 MIPS . Las adiciones de punto flotante son bastante rápidas a 11 ciclos de reloj, sin embargo, la multiplicación de punto flotante es muy lenta a 57 ciclos de reloj. Por lo tanto, su velocidad de punto flotante dependerá en gran medida de la mezcla de operaciones y puede ser inferior a 200 kFLOPS . El 6600 es más rápido. Con una buena programación de instrucciones del compilador, la máquina puede acercarse a su pico teórico de 10 MIPS. Las adiciones de punto flotante toman cuatro ciclos de reloj y las multiplicaciones de punto flotante toman 10 relojes (pero hay dos unidades funcionales de multiplicación, por lo que se pueden procesar dos operaciones al mismo tiempo). Por lo tanto, el 6600 puede tener una velocidad máxima de punto flotante de 2-3 MFLOPS.
El ordenador CDC 6700 combina características de los otros tres ordenadores. Al igual que el CDC 6500, tiene dos procesadores centrales. Uno es un procesador central CDC 6400/CDC 6500 con la sección aritmética unificada; el otro es el procesador central CDC 6600, más eficiente. La combinación hace que el CDC 6700 sea el más rápido y el más potente de la serie CDC 6000.
El procesador central comparte el acceso a la memoria central con hasta diez procesadores periféricos (PP). Cada procesador periférico es una computadora individual con su propia memoria de 1 μs de 4K palabras de 12 bits. [15] : p.4-2 (Son algo similares a las minicomputadoras CDC 160A , ya que comparten la longitud de palabra de 12 bits y partes del conjunto de instrucciones).
Si bien los PP se diseñaron como una interfaz para los 12 canales de E/S , partes del sistema operativo Chippewa (COS) y los sistemas derivados de él, por ejemplo, SCOPE , MACE, KRONOS , NOS y NOS/BE, se ejecutan en los PP. Solo los PP tienen acceso a los canales y pueden realizar entrada/salida: la transferencia de información entre la memoria central y los dispositivos periféricos, como discos y unidades de cinta magnética . Liberan al procesador central de todas las tareas de entrada/salida, de modo que pueda realizar cálculos mientras los procesadores periféricos se dedican a la entrada/salida y las funciones del sistema operativo. Esta característica promueve el procesamiento general rápido de los programas de usuario. Gran parte del sistema operativo se ejecutaba en los PP, [28] dejando así toda la potencia del procesador central disponible para los programas de usuario.
Cada procesador periférico puede sumar, restar y realizar operaciones lógicas. Las instrucciones especiales realizan la transferencia de datos entre la memoria del procesador y, a través de los canales, los dispositivos periféricos a una velocidad de hasta 1 μs por palabra. Los procesadores periféricos se implementan colectivamente como un procesador de barril . [29] Cada uno ejecuta rutinas independientemente de los demás. Son un predecesor flexible del dominio del bus o el acceso directo a la memoria .
Las instrucciones utilizan un código de operación de seis bits, por lo que quedan seis bits para un operando. También es posible combinar los 12 bits de la siguiente palabra para formar una dirección de 18 bits (el tamaño necesario para acceder a las 131.072 palabras de la memoria central). [15] : p.4–6
Para la entrada o salida, cada procesador periférico accede a un dispositivo periférico a través de un enlace de comunicación llamado canal de datos. Se puede conectar un dispositivo periférico a cada canal de datos; sin embargo, un canal se puede modificar con hardware para dar servicio a más de un dispositivo. Los canales de datos no tienen acceso a la memoria central ni a la periférica, y dependen de programas que se ejecutan en un procesador periférico para acceder a la memoria o encadenar operaciones.
Cada procesador periférico puede comunicarse con cualquier dispositivo periférico si otro procesador periférico no está utilizando el canal de datos conectado a ese dispositivo. En otras palabras, solo un procesador periférico a la vez puede utilizar un canal de datos particular para comunicarse con un dispositivo periférico. Sin embargo, un procesador periférico puede escribir datos en un canal que está leyendo un procesador periférico diferente.
Además de la comunicación entre los dispositivos periféricos y los procesadores periféricos, se produce la comunicación entre el operador del ordenador y el sistema operativo. Esto es posible gracias a la consola del ordenador , que tenía dos pantallas CRT .
Esta consola de visualización supuso un cambio significativo con respecto a las consolas de ordenador convencionales de la época, que contenían cientos de luces intermitentes e interruptores para cada bit de estado de la máquina (véase el panel frontal para ver un ejemplo). En comparación, la consola de la serie 6000 tiene un diseño elegante: simple, rápido y fiable.
Las pantallas de la consola son caligráficas , no basadas en tramas . Un circuito analógico dirige los haces de electrones para dibujar los caracteres individuales en la pantalla. Uno de los procesadores periféricos ejecuta un programa dedicado llamado "DSD" (Dynamic System Display), que controla la consola. La codificación en DSD debe ser rápida, ya que necesita volver a dibujar la pantalla continuamente con la suficiente rapidez para evitar parpadeos visibles.
DSD muestra información sobre el sistema y los trabajos en proceso. La consola también incluye un teclado a través del cual el operador puede introducir solicitudes para modificar programas almacenados y mostrar información sobre trabajos en ejecución o en espera de ejecución.
En la consola del operador se puede ejecutar un editor de pantalla completa, llamado O26 (en honor al modelo 026 de IBM , con el primer carácter convertido en alfabético debido a las restricciones del sistema operativo). Este editor de texto apareció en 1967, lo que lo convirtió en uno de los primeros editores de pantalla completa. (Desafortunadamente, CDC tardó otros 15 años en ofrecer FSE, un editor de pantalla completa para usuarios normales de tiempo compartido en el sistema operativo de red de CDC).
También hay una variedad de juegos que se escribieron utilizando la consola del operador. Entre ellos se incluyen BAT (un juego de béisbol), KAL (un caleidoscopio ), DOG ( Snoopy volando con su caseta de perro por las pantallas), ADC ( Andy Capp pavoneándose por las pantallas), EYE (convierte las pantallas en globos oculares gigantes y luego los guiña), PAC (un juego tipo Pac-Man ), un simulador de aterrizaje lunar y más.
Los requisitos mínimos de hardware de un sistema informático de la serie CDC 6000 consisten en la computadora, incluidas 32.768 palabras de almacenamiento de memoria central, cualquier combinación de discos, paquetes de discos o tambores para proporcionar 24 millones de caracteres de almacenamiento masivo, un lector de tarjetas perforadas , una perforadora de tarjetas perforadas , una impresora con controladores y dos unidades de cinta magnética de siete pistas.
Se podían obtener sistemas más grandes si se incluían equipos opcionales, como memoria central adicional, [30] [15] almacenamiento central extendido (ECS), unidades de disco o tambor adicionales, lectores de tarjetas, perforadoras, impresoras y unidades de cinta. También se disponía de trazadores gráficos y grabadoras de microfilm .
El modelo estrella fue el CDC 6600. El CDC 6400 era una CPU más lenta y de menor rendimiento que costaba significativamente menos.
El CDC 6500 era un modelo 6400 de CPU dual, con dos CPU pero solo un conjunto de PP de E/S, diseñado para problemas de computación limitada. El CDC 6700 también era una máquina de CPU dual, que tenía una CPU 6600 y una CPU 6400. El CDC 6415 era una máquina aún más barata y lenta; tenía una CPU 6400 pero estaba disponible con solo siete, ocho o nueve PPU en lugar de los diez normales. El CDC 6416 era una actualización que se podía agregar a una máquina de la serie 6000; agregó un banco de PPU adicional, lo que dio un total de 20 PPU y 24 canales, diseñados para un rendimiento de E/S significativamente mejorado.
El CDC 6600 es el superordenador mainframe insignia de la serie 6000 de sistemas informáticos fabricados por Control Data Corporation . Generalmente considerado como el primer superordenador exitoso , superó a su predecesor más rápido, el IBM 7030 Stretch , por un factor de tres. Con un rendimiento de hasta tres megaFLOPS , [32] [33] el CDC 6600, del que se vendieron alrededor de 100, [34] fue el ordenador más rápido del mundo desde 1964 hasta 1969, cuando cedió ese estatus a su sucesor, el CDC 7600. [ 35] [26]
El CDC 6600 anticipó la filosofía de diseño RISC y, de manera inusual, empleó una representación de números enteros en complemento a uno . Sus sucesores continuarían la tradición arquitectónica durante más de 30 años hasta fines de la década de 1980, y fueron los últimos chips diseñados con números enteros en complemento a uno. [36]
El CDC 6600 también fue la primera computadora generalizada en incluir una arquitectura de carga y almacenamiento , en la que la escritura en sus registros de direcciones activaba la carga de memoria o el almacenamiento de datos desde sus registros de datos.
Los primeros CDC 6600 se entregaron en 1965 a los Laboratorios Nacionales de Livermore y Los Álamos (administrados por la Universidad de California). El número de serie 4 fue al Instituto Courant de Ciencias Matemáticas Courant Institute en la Universidad de Nueva York en Greenwich Village, Ciudad de Nueva York. La primera entrega fuera de los EE. UU. fue al laboratorio CERN cerca de Ginebra , Suiza , [37] donde se utilizó para analizar los dos a tres millones de fotografías de pistas de cámara de burbujas que los experimentos del CERN producían cada año. En 1966 se entregó otro CDC 6600 al Laboratorio de Radiación Lawrence , parte de la Universidad de California en Berkeley , donde se utilizó para el análisis de eventos nucleares fotografiados dentro de la cámara de burbujas de Álvarez. [38] La Universidad de Texas en Austin recibió uno para sus Departamentos de Ciencias de la Computación y Matemáticas, y lo instaló bajo tierra en su campus principal, escondido en una ladera con un lado expuesto, para una mayor eficiencia de enfriamiento.
Un CDC 6600 está en exhibición en el Museo de Historia de la Computación en Mountain View, California .
El CDC 6400 , un miembro de la serie CDC 6000, es un ordenador mainframe fabricado por Control Data Corporation en la década de 1960. La unidad central de procesamiento era compatible arquitectónicamente con el CDC 6600. A diferencia del 6600, que tenía 10 unidades funcionales paralelas que podían trabajar en múltiples instrucciones al mismo tiempo, el 6400 tenía una unidad aritmética unificada, que solo podía trabajar en una sola instrucción a la vez. Esto dio como resultado una CPU más lenta y de menor rendimiento, pero que costaba significativamente menos. La memoria, la entrada/salida (E/S) basada en procesador periférico y los periféricos eran idénticos a los del 6600.
En diciembre de 1966, en la Universidad de California en Berkeley , se puso en funcionamiento un sistema CDC 6400 como sistema informático académico (de diciembre de 1966 a agosto de 1982). [39] [40] [41] [42] [43] [44]
En 1966, el Centro de Cálculo ( en alemán : Rechenzentrum ) de la Universidad RWTH de Aquisgrán adquirió un CDC 6400, el primer superordenador de datos de control de Alemania y el segundo de Europa después del de la Organización Europea para la Investigación Nuclear (CERN). También sirvió a toda la universidad mediante 64 teletipos de línea remota (TTY) hasta que fue reemplazado por un ordenador CDC Cyber 175 en 1976. [45]
El CDC 6500 , que cuenta con una CPU dual 6400, [46] es la tercera supercomputadora de la serie 6000 fabricada por Control Data Corporation y diseñada por el pionero de la supercomputadora Seymour Cray . [22] El primer 6500 se anunció en 1964 y se entregó en 1967. [47]
Incluye doce computadoras independientes diferentes. Diez son procesadores periféricos y de control, cada uno de los cuales tiene una memoria separada y puede ejecutar programas por separado entre sí y de los dos procesadores centrales 6400. [5] En lugar de estar refrigerado por aire, tiene un sistema de refrigeración por líquido y cada una de las tres bahías de la computadora tiene su propia unidad de refrigeración. [48]
Los sistemas CDC 6500 se instalaron en:
Compuesto por un 6600 y un 6400, el CDC 6700 fue el más potente de la serie 6000.
James E. Thornton ... Premio Eckert-Mauchly 1994 ... ayudó a diseñar los CDC 1604, 6600, 6400, 6500 y STAR-100.
{{cite journal}}
: Requiere citar revista |journal=
( ayuda )