stringtranslate.com

Serie GEC 4000

Computadoras de la serie GEC 4000 en el Centro de desarrollo Dunstable de GEC Computers, 1991
Panel frontal GEC 4080 [1]

El GEC 4000 fue una serie de minicomputadoras de 16/32 bits producidas por GEC Computers Ltd en el Reino Unido durante las décadas de 1970, 1980 y principios de 1990.

Historia

GEC Computers se formó en 1968 como una unidad de negocios del conglomerado GEC . Heredó de Elliott Automation la antigua serie Elliott 900 y necesitaba desarrollar una nueva gama de sistemas. Se identificaron tres rangos, conocidos internamente como Alfa, Beta y Gamma. Alpha apareció primero y se convirtió en la minicomputadora de 8 bits GEC 2050 . Beta siguió y se convirtió en GEC 4080. Gamma nunca se desarrolló, por lo que algunas de sus características mejoradas se reincorporaron al 4080. El diseñador principal del GEC 4080 fue el Dr. Michael Melliar-Smith y el diseñador principal del 4060 y 4090 era Peter Mackley.

Los sistemas de la serie 4000 se desarrollaron y fabricaron en el Reino Unido en las oficinas de GEC Computers en Borehamwood en Elstree Way. El desarrollo y la fabricación se transfirieron a las nuevas fábricas de la empresa en Woodside Estate, Dunstable, a finales de los años 1970. En 1979, GEC Computers recibió el Queen's Award for Technical Achievement por el desarrollo de la serie 4000, particularmente Nucleus. [2] En 1991, el número de sistemas fabricados estaba disminuyendo, por lo que la fabricación se transfirió a la fábrica de GPT en Beeston, Nottinghamshire y el desarrollo regresó a Borehamwood. Los últimos sistemas se fabricaron alrededor de 1995. Todavía había algunos sistemas GEC 4220 en funcionamiento en 2018 con mantenimiento proporcionado por Telent , y algunos GEC 4310 estuvieron en funcionamiento hasta 2013. El metro de Londres continúa utilizando sistemas GEC 4190 en 2022.

Núcleo

El hardware y firmware de la serie GEC 4000 incluían una instalación pionera conocida como Nucleus . [3] Nucleus implementa una serie de características que generalmente se implementan dentro del kernel de un sistema operativo y, en consecuencia, los sistemas operativos que se ejecutan en sistemas de la serie GEC 4000 no necesitan proporcionar directamente estas características. El firmware de Nucleus no puede reprogramarse mediante ningún código que se ejecute en el sistema, y ​​esto hizo que los sistemas fueran particularmente atractivos para varias aplicaciones de seguridad.

Núcleo realiza: [4]

No existe ninguna disposición para ejecutar ningún código en modo supervisor/privilegiado/kernel en los sistemas 4000; todo el código del sistema operativo se ejecuta como procesos. Por lo tanto, los controladores de dispositivos , el código del sistema de archivos y otras características que a menudo se encuentran dentro de los núcleos del sistema operativo deben ejecutarse en procesos en los sistemas 4000. Inherente a esto es que todos se ejecutan en sus propios espacios de direcciones, protegidos de las acciones de los demás, tal como lo están todos los procesos.

Nucleus está configurado mediante un conjunto de tablas del sistema, y ​​los procesos que necesitan modificar el funcionamiento del núcleo tienen acceso a las tablas del sistema relevantes. Este sería el caso de procesos que cambian directamente el estado de otros procesos, procesos que asignan y eliminan segmentos de memoria, procesos que pueden cambiar el enrutamiento de mensajes entre otros procesos o cambiar la asignación de dispositivos de E/S a procesos, etc. Normalmente El acceso a la tabla del sistema está limitado a relativamente pocos procesos confiables, y otros procesos que necesitan realizar operaciones como cargar procesos, asignar memoria, etc. pasarán un mensaje al proceso confiable relevante que examinará antes de realizar la acción y responder.

Conjunto de instrucciones

La serie 4000 tiene un conjunto de instrucciones CISC . Tiene bytes de 8 bits , big-endian , memoria direccionable por bytes, aritmética en complemento a dos y formato de punto flotante base 16 con exceso de 64 (igual que IBM System/360 ). [5]

Los números de modelo inferiores a 4090 son procesadores de 16 bits, y los números de modelo a partir del 4090 son una combinación de 16 y 32 bits. Esto se relaciona con los tamaños de puntero disponibles para los programas. Todos los sistemas admiten punteros de 16 bits, lo que se conoce como direccionamiento CST (tabla de segmento actual). Los sistemas de 32 bits también admiten punteros de 32 bits, conocidos como direccionamiento PAS (espacio de direcciones paginadas). Cada proceso tiene una PAST (Tabla de segmentos accesibles al programa) que enumera a cuáles de los segmentos de memoria del sistema se le permite acceder al programa. El direccionamiento CST permite asignar cuatro de las entradas PASADAS a las direcciones 0, 16 KB, 32 KB y 48 KB, lo que proporciona un espacio de direcciones de 16 bits/64 KB. Los programas que utilizan más de 64 KB de memoria deben asignar explícitamente las entradas PASADAS que requieren en cualquier momento a sus 4 entradas CST, aunque Nucleus asignará automáticamente diferentes segmentos de código a los CST. El direccionamiento PAS permite a los programas ver su espacio de direcciones como un espacio de direcciones plano de 32 bits, con entradas PASADAS sucesivas que aparecen cada 16 KB y Nucleus realizando el mapeo del segmento de entradas PASADAS automáticamente. Los sistemas de 32 bits admiten la combinación de direccionamiento CST y PAS en el mismo proceso. Todas las instrucciones tienen 16 bits de ancho, excepto algunas instrucciones de direccionamiento PAS que tienen 32 bits. Las instrucciones sólo se pueden ejecutar desde el espacio de direcciones CST.

El registro A de 32 bits es el registro acumulador principal. También hay un registro B de 32 bits, que se utiliza más comúnmente junto con el registro A como registro BA de 64 bits para operaciones de coma flotante de doble precisión. Un registro X de 16 bits se utiliza principalmente para la indexación de matrices y dos registros Y y Z de 16 bits se utilizan como punteros de 16 bits. Un registro L de 16 bits apunta a datos locales de función, y un registro G siempre contiene cero que se puede utilizar como puntero global de 16 bits, y también un valor cero de 8, 16 o 32 bits. El registro S (secuencia) de 16 bits apunta a la siguiente instrucción a seguir. El registro EC de 8 bits contiene bits de códigos de condición. (Parte de esto se ilustra en el conjunto de instrucciones mucho más simple del GEC 2050 ). Un registro de 'teclas' de solo lectura permite a los programas leer el valor establecido en los interruptores del panel frontal por el personal de operaciones. No existe ningún registro de puntero PAS de 32 bits: los punteros PAS de 32 bits residen en la memoria en el espacio de direcciones CST de 16 bits y se accede a ellos mediante un puntero de 16 bits. No hay soporte para conjuntos de instrucciones para una pila . Hay una serie de registros inaccesibles para los programas que utiliza Nucleus, como los registros de segmento de hardware que apuntan a los cuatro CST del proceso en ejecución, el segmento maestro y los segmentos PAS, y las tablas del sistema.

El conjunto de instrucciones contiene instrucciones que operan registro-registro, almacenamiento-registro, registro-almacenamiento y almacenamiento-almacenamiento. Hay un conjunto de instrucciones de manipulación de cadenas que operan en longitudes variables de almacenamiento, copia, comparación o escaneo en busca de un patrón. Hay una serie de instrucciones de Nucleus para tareas como enviar un mensaje a otro proceso o un dispositivo periférico, recibir un mensaje o una interrupción, cambiar una entrada CST para que apunte a un segmento diferente al que pueda acceder el proceso, etc.

El 4080 tiene un canal de instrucciones de dos etapas . Esto se convierte en un proceso de cuatro etapas para el 4220, el sistema de mayor rendimiento de la serie. Los sistemas básicos 415x y 4x6x tienen solo una tubería de una sola etapa.

El modo de funcionamiento normal de la CPU se denomina Full Nucleus . Todos los sistemas también admiten un modo de operación limitado llamado Prueba básica . En el modo de prueba básica, Nucleus está deshabilitado, la E/S se realiza de manera diferente y solo se puede ejecutar un programa, restringido a los 64 KB inferiores del almacenamiento, pero todas las demás instrucciones que no son de núcleo ni de PAS funcionan normalmente. Este modo se utiliza muy temprano durante el arranque para configurar las tablas del sistema requeridas por Nucleus, antes de obedecer una instrucción Switch Full Nucleus . Una vez que el sistema ha cambiado a Full Nucleus, no puede volver al modo de prueba básica sin la intervención del operador en el panel frontal, lo que de hecho elimina cualquier sistema operativo que se estuviera ejecutando. El modo de prueba básica también se utiliza para ejecutar cierto software de prueba (de ahí el nombre).

Entrada/salida

El diseño del 4000 I/O se basa en una serie de procesadores de entrada/salida conocidos como IOP , cada uno de los cuales interactúa entre el almacén y un conjunto de controladores de E/S. Los IOP están controlados por la función Nucleus en la CPU, pero una vez que se activa un evento de E/S, funcionan de forma autónoma sin interacción con la CPU hasta que se completa la E/S. Cada uno de los IOP de interfaz normal puede admitir hasta 255 o 256 operaciones de E/S simultáneas, cada una de forma independiente . Los controladores de E/S de cada IOP ocuparían cada uno una o más vías, dependiendo de cuántas operaciones de E/S simultáneas necesiten manejar. El IOP controla el acceso de cada Way al almacén principal, permitiendo sólo el acceso a ubicaciones de memoria sucesivas definidas para la operación de E/S que Way está realizando actualmente. Los IOP anteriores realizaban accesos a almacenes de 8 y 16 bits de ancho, con un modo de ráfaga para realizar hasta 8 transferencias juntas para controladores de E/S de mayor rendimiento. Los IOP posteriores agregaron accesos a tiendas de 32 bits de ancho.

Todos los sistemas tienen al menos un IOP. En el 4080, este primer IOP se denominó Canal Multiplexor Básico, [6] o BMC, y el panel frontal del 4080 permite controlar tanto la CPU como el BMC. Los sistemas de nivel básico 415x y 4x6x tienen su primer IOP (canal multiplexor integral o IMC) integrado en el firmware de Nucleus y, por lo tanto, las operaciones de E/S en el IMC tuvieron cierto impacto en el rendimiento de la CPU, aunque los sistemas 4x6x podrían tener IOP externos. agregado. Las instrucciones y tablas del sistema Nucleus I/O de la serie 4000 permiten hasta 8 IOP, aunque la mayoría de los modelos de la gama de la serie 4000 tenían algún tipo de limitación de hardware que reducía esto. Los sistemas 408x tenían un almacén de 4 puertos, con la CPU y el primer IOP compartiendo uno de ellos, y hasta tres IOP adicionales conectados a los puertos de almacén restantes. (La documentación anterior muestra que estos puertos de almacenamiento adicionales también se diseñaron para conectar CPU adicionales, aunque esta no fue una configuración que alguna vez se vendió usando procesadores 4080). Los modelos posteriores tenían más puertos de almacenamiento, dependiendo de cuántas placas de puertos de almacenamiento se pudieran instalar en el sistema. El 4190 podía admitir el complemento completo de ocho IOP y el 4190D admitía ocho IOP con dos CPU.

Algunos controladores de E/S comúnmente utilizados son el temporizador de intervalos , el controlador de la consola del sistema , el lector de cinta perforada y los controladores de perforación, el controlador de impresora de línea (todos ellos usan una sola vía), varios controladores de disco SMD (y una interfaz de bus de disco anterior ) para controlar hasta cuatro unidades (todas usando dos vías), controladores de cinta magnética Pertec PPC para hasta cuatro unidades de cinta de 12 " y varios controladores de comunicación en serie síncronos y asíncronos multipuerto (que usan entre 4 y 32 vías). La placa de E/S digital (que usaba cuatro vías) se usaba comúnmente para la interfaz de control de procesos directo y para proporcionar un enlace paralelo rápido entre sistemas. También estaba disponible un controlador de caja CAMAC (nuevamente, usado para la interfaz de control de procesos). a la que se conectan estos controladores es una interfaz publicada, [7] y muchos clientes también construyeron sus propios controladores para sus propios requisitos de control de procesos específicos. La minicomputadora GEC 2050 anterior usaba una versión de 8 bits de la interfaz normal y la mayoría de las E/S. Los controladores podrían usarse en ambas gamas de sistemas.

Todos los IOP diseñados y construidos durante la década de 1970 proporcionaban el mismo bus de interfaz normal para los controladores de E/S, y los controladores de E/S generalmente podían usarse en cualquiera de ellos. En la década de 1980 se diseñaron algunas PIO más especializadas. Un IOP de Director de acceso directo a memoria (DMAD) permitió un nuevo tipo de controlador de E/S que tenía más libertad para acceder a la memoria principal y permitió el diseño de controladores de comunicaciones más inteligentes. Un IOP SCSI generaba un bus SCSI para conectar discos más modernos y también incluía un temporizador de intervalos integrado, un controlador de consola del sistema y un reloj de calendario, de modo que no se requería un IOP de interfaz normal adicional ni controladores separados para admitir solo estas funciones.

Clientes

Los usuarios de los sistemas de la serie GEC 4000 incluyeron muchos departamentos de física e ingeniería de universidades británicas, el servicio de computación central de University College London (Euclid) y la Universidad de Keele , la red troncal de conmutación X.25 académica/de investigación JANET , el Laboratorio Rutherford-Appleton , [8] Laboratorio Daresbury , Laboratorio Harwell , NERC , Met Office , CERN , ICI , British Telecom , SIP ( empresa de telecomunicaciones italiana ) y Plessey . British Steel Corporation y BHP Steel los utilizaron para el control en tiempo real de laminadoras de acero, British Rail y London Underground para la programación de trenes en tiempo real, London Fire Brigade y Durham Fire Brigade para sistemas de comando y control. Las computadoras controlaban la mayoría de los sistemas Videotex nacionales del mundo , incluido el servicio Prestel viewdata .

En el Laboratorio Rutherford-Appleton se utilizó un sistema GEC 4000 para controlar el sincrotrón y los inyectores utilizados para la fuente de espalación de neutrones ISIS hasta 1998.

Se utilizó un GEC 4080M como procesador central para el sistema de radar del desafortunado avión de alerta temprana aerotransportado Nimrod AEW.3 . [9]

La Junta Central de Generación de Electricidad utilizó procesadores GEC 4080 en tres de sus Centros de Control de Red. Conocidos como GI74, se utilizaron para recopilar datos de las subestaciones y mostrarlos en diagramas de pared y pantallas de visualización tabulares.

Modelos

Se produjeron varias variantes del procesador GEC 4000, que incluyen (en orden cronológico aproximado):

Software

Había varios sistemas operativos disponibles para la serie GEC 4000, entre ellos:

Los lenguajes de programación disponibles incluían Babbage (un lenguaje ensamblador de alto nivel ), FORTRAN IV , CORAL 66 , ALGOL , APL y BASIC .

babbage

Babbage es el lenguaje ensamblador de alto nivel para las minicomputadoras de la serie GEC 4000 . Apareció en 1971. [10] [11] Lleva el nombre de Charles Babbage , un pionero de la informática inglés . [10]

Ejemplo

Este código imprime el factorial de los números del 1 al 9.

FACTORIAL DEL CAPÍTULO DEL PROCESOETIQUETA DE ENTRADA PUNTO DE ENTRADALITERAL TO = 4 // Supongamos que se utiliza la forma predeterminadaRUTINA EXTERNA ABIERTO, PONER, CERCA, TOCARVECTOR [0,19] DE BYTE RESPUESTA = "factorial x = xxxxxx" MEDIA CUENTAVALOR MITADRESULTADO COMPLETO//************************************************ ******************************* HECHO DE RUTINA (VALOR) // retorno factorial de RA. VALOR => RESULTADO MIENTRAS DISMINUYE VALOR GT //0// DO << RESULTADO * VALOR => RESULTADO >> VOLVER(RESULTADO) FIN//************************************************ *******************************PUNTO DE ENTRADA: ABIERTO(A, 1) // Imprime factoriales para los números del 1 al 9 1 => AR REPETIR << RA => CONTAR HECHO(RA) => RA TOCAR(RA, 7, RESPUESTA + 13) TOCHAR(CUENTA, 2, RESPUESTA + 9) PONER(A, 20, RESPONDER) CONTAR + 1 => RA >> MIENTRAS RA LT 10 CERCA(A) DETENER(0) FIN//************************************************ *******************************

Ver también

Referencias

  1. ^ "Controles y supervisión de la unidad central de procesador" (PDF) . Computadora GEC 4000 . Diciembre de 1977 . Consultado el 15 de junio de 2009 .
  2. ^ "Comunicado de prensa: GEC Computers gana el premio Queens" (PDF) . 21 de abril de 1979. Archivado desde el original (PDF) el 22 de octubre de 2019.
  3. «Manual del Núcleo de la Unidad Central de Procesamiento» (PDF) . Computadora GEC 4000 . Diciembre de 1977 . Consultado el 15 de junio de 2009 .
  4. ^ PJ Denning, "Carta del presidente de ACM: arquitectura informática: algunas viejas ideas que aún no han triunfado", Communications of the ACM , 24 (9), 1981, página 553.
  5. ^ "Conjunto de instrucciones de la unidad de procesador central (GEC 4080)" (PDF) . Computadora GEC 4000 . Diciembre de 1977 . Consultado el 15 de junio de 2009 .
  6. ^ "Canal multiplexor básico de CPU" (PDF) . Computadora GEC 4000 . Diciembre de 1977 . Consultado el 15 de junio de 2009 .
  7. ^ "Manual de hardware del usuario: interfaces (GEC 4080)" (PDF) . Computadora GEC 4000 . Abril de 1977, págs. 4-25 . Consultado el 15 de junio de 2009 .
  8. ^ "El último de los minis británicos". Boletín de Ingeniería Informática . Consultado el 7 de enero de 2017 .
  9. ^ "BAe Nimrod AEW 3". vueloespia.co.uk . Archivado desde el original el 2 de mayo de 2012 . Consultado el 17 de mayo de 2009 .
  10. ^ ab Illingworth, V. (1986). "B.001 Babbage". Diccionario de informática (2ª ed.). Oxford: Market House Books Ltd. ISBN 0-19-853913-4.
  11. ^ Salomón, David (febrero de 1993). "6.1.4 BABBAJE". Ensambladoras y Cargadoras (PDF) . Serie de Ellis Horwood sobre computadoras y sus aplicaciones (1 ed.). Chicester, West Sussex, Reino Unido: Ellis Horwood Limited / Simon & Schuster International Group . págs. 184-185. ISBN 0-13-052564-2. Archivado (PDF) desde el original el 23 de marzo de 2020 . Consultado el 1 de octubre de 2008 .[1] (xiv+294+4 páginas)

Enlaces externos