Whirlwind I fue una computadora de tubo de vacío de la era de la Guerra Fría desarrollada por el Laboratorio de Servomecanismos del MIT para la Marina de los EE . UU . Operativa en 1951, fue una de las primeras computadoras electrónicas digitales que operaban en tiempo real para la salida, y la primera que no era simplemente un reemplazo electrónico de los sistemas mecánicos más antiguos.
Fue una de las primeras computadoras en calcular en bit-paralelo (en lugar de bit-serial ) y fue la primera en utilizar memoria de núcleo magnético .
Su desarrollo condujo directamente al diseño Whirlwind II utilizado como base para el sistema de defensa aérea SAGE de la Fuerza Aérea de los Estados Unidos , e indirectamente a casi todas las computadoras y minicomputadoras comerciales en la década de 1960, [3] particularmente debido al mantra "longitud de palabra corta, velocidad, gente". [4]
Durante la Segunda Guerra Mundial , el Laboratorio de Investigación Naval de la Armada de los EE. UU. se acercó al MIT para hablar sobre la posibilidad de crear un ordenador que manejara un simulador de vuelo para entrenar a las tripulaciones de los bombarderos . Imaginaron un sistema bastante simple en el que el ordenador actualizaría continuamente un panel de instrumentos simulado en función de las entradas de control de los pilotos. A diferencia de los sistemas más antiguos, como el Link Trainer , el sistema que imaginaron tendría un modelo aerodinámico considerablemente más realista que podría adaptarse a cualquier tipo de avión. Esta fue una consideración importante en ese momento, cuando se estaban introduciendo muchos diseños nuevos en servicio.
El Laboratorio de Servomecanismos del edificio 32 del MIT [5] realizó una breve encuesta que concluyó que un sistema de este tipo era posible. La Oficina de Investigación Naval de la Armada decidió financiar el desarrollo en el marco del Proyecto Whirlwind (y sus proyectos hermanos, el Proyecto Typhoon y el Proyecto Cyclone , junto con otras instituciones), [6] y el laboratorio puso a Jay Forrester a cargo del proyecto. Pronto construyeron una gran computadora analógica para la tarea, pero descubrieron que era imprecisa e inflexible. Resolver estos problemas de manera general requeriría un sistema mucho más grande, tal vez uno tan grande que fuera imposible de construir. Judy Clapp fue uno de los primeros miembros técnicos de alto nivel de este equipo.
Perry Crawford , otro miembro del equipo del MIT, vio una demostración de ENIAC en 1945. Entonces sugirió que una computadora digital sería la mejor solución. Una máquina de este tipo permitiría mejorar la precisión de las simulaciones añadiendo más código al programa informático , en lugar de añadir partes a la máquina. Mientras la máquina fuera lo suficientemente rápida, no habría límite teórico a la complejidad de la simulación.
Hasta ese momento, todos los ordenadores construidos se dedicaban a tareas individuales y funcionaban en modo por lotes . Se configuraba una serie de datos de entrada con antelación y se introducían en el ordenador, que calculaba las respuestas y las imprimía. Esto no era adecuado para el sistema Whirlwind, que necesitaba funcionar continuamente con una serie de datos de entrada en constante cambio. La velocidad se convirtió en un problema importante: mientras que con otros sistemas simplemente significaba esperar más tiempo para obtener la impresión, con Whirlwind significaba limitar seriamente la cantidad de complejidad que podía incluir la simulación.
En 1947, Forrester y su colaborador Robert Everett completaron el diseño de una computadora de programa almacenado de alta velocidad para esta tarea. La mayoría de las computadoras de la época operaban en modo bit-serial , utilizando aritmética de un solo bit e introduciendo palabras grandes, a menudo de 48 o 60 bits de tamaño, un bit a la vez. Esto simplemente no era lo suficientemente rápido para sus propósitos, por lo que Whirlwind incluyó dieciséis de esas unidades matemáticas, operando en una palabra completa de 16 bits en cada ciclo en modo bit-paralelo . Ignorando la velocidad de la memoria, Whirlwind ("20.000 operaciones de una sola dirección por segundo" en 1951) [7] era esencialmente dieciséis veces más rápido que otras máquinas. Hoy, casi todas las CPU realizan aritmética en modo "bit-paralelo".
El tamaño de la palabra se seleccionó después de algunas deliberaciones. La máquina funcionaba pasando una única dirección con casi todas las instrucciones, reduciendo así el número de accesos a la memoria. Para operaciones con dos operandos, como por ejemplo la suma, se suponía que el "otro" operando era el último cargado. Whirlwind funcionaba de forma muy similar a una calculadora de notación polaca inversa en este sentido; excepto que no había pila de operandos, solo un acumulador . Los diseñadores consideraron que 2048 palabras de memoria serían la cantidad mínima utilizable, requiriendo 11 bits para representar una dirección, y que de 16 a 32 instrucciones serían el mínimo para otros cinco bits, y por lo tanto eran 16 bits. [8]
El diseño de Whirlwind incorporaba un dispositivo de control accionado por un reloj maestro. Cada paso del reloj seleccionaba una o más líneas de señal en una matriz de diodos que habilitaba puertas y otros circuitos en la máquina. Un interruptor especial dirigía señales a diferentes partes de la matriz para implementar diferentes instrucciones. [ cita requerida ] A principios de la década de 1950, Whirlwind I "se bloqueaba cada 20 minutos en promedio". [9]
La construcción de Whirlwind comenzó en 1948, un esfuerzo que empleó a 175 personas, incluidos 70 ingenieros y técnicos. El uso de la multiplicación de acarreo y ahorro parece haber sido introducido por primera vez en la computadora Whirlwind a fines de la década de 1940. [10] En el tercer trimestre de 1949, la computadora estaba lo suficientemente avanzada como para resolver una ecuación y mostrar su solución en un osciloscopio, [11] : 11.13 [12] e incluso para el primer juego gráfico de computadora animado e interactivo. [13] [14] Finalmente, Whirlwind "logró con éxito el cálculo digital de cursos de interceptación" el 20 de abril de 1951. [15] [11] : 11.20–21 El presupuesto del proyecto era de aproximadamente $ 1 millón al año, que era mucho más alto que los costos de desarrollo de la mayoría de las otras computadoras de la época. Después de tres años, la Marina había perdido el interés. Sin embargo, durante este tiempo, la Fuerza Aérea se interesó en el uso de computadoras para ayudar en la tarea de interceptación controlada desde tierra , y el Whirlwind era la única máquina adecuada para la tarea. Comenzaron a desarrollarlo bajo el Proyecto Claude .
El Whirlwind pesaba 20.000 libras (10 toneladas cortas; 9,1 t) y ocupaba más de 2.000 pies cuadrados (190 m 2 ). [16]
El diseño original de la máquina requería 2048 (2K) palabras de 16 bits cada una de almacenamiento de acceso aleatorio. Las únicas dos tecnologías de memoria disponibles en 1949 que podían almacenar esta cantidad de datos eran las líneas de retardo de mercurio y el almacenamiento electrostático .
Una línea de retardo de mercurio consistía en un tubo largo lleno de mercurio , un transductor mecánico en un extremo y un micrófono en el otro, muy parecido a una unidad de reverberación de resorte que luego se utilizó en el procesamiento de audio. Los pulsos se enviaban a la línea de retardo de mercurio en un extremo y tardaban una cierta cantidad de tiempo en llegar al otro extremo. El micrófono los detectaba, los amplificaba, les daba la forma de pulso correcta y los enviaba de regreso a la línea de retardo. Por lo tanto, se decía que la memoria recirculaba.
Las líneas de retardo de mercurio operaban a una velocidad similar a la del sonido, por lo que eran muy lentas en términos informáticos, incluso para los estándares de las computadoras de finales de los años 1940 y 1950. La velocidad del sonido en el mercurio también dependía mucho de la temperatura. Como una línea de retardo contenía una cantidad definida de bits, la frecuencia del reloj tenía que cambiar con la temperatura del mercurio. Si había muchas líneas de retardo y no todas tenían la misma temperatura en todo momento, los datos de la memoria podían corromperse fácilmente.
Los diseñadores de Whirlwind descartaron rápidamente la línea de retardo como posible memoria: era demasiado lenta para el simulador de vuelo previsto y demasiado poco confiable para un sistema de producción reproducible, para el cual Whirlwind estaba destinado a ser un prototipo funcional.
La forma alternativa de memoria se conocía como "electrostática". Se trataba de una memoria de tubo de rayos catódicos, similar en muchos aspectos a un tubo de imagen de televisión o un tubo de osciloscopio primitivos . Un cañón de electrones enviaba un haz de electrones al extremo más alejado del tubo, donde impactaban en una pantalla. El haz se desviaba para aterrizar en un punto determinado de la pantalla. El haz podía entonces acumular una carga negativa en ese punto, o cambiar una carga que ya estaba allí. Al medir la corriente del haz se podía determinar si el punto era originalmente un cero o un uno, y el haz podía almacenar un nuevo valor.
En 1949 existían varias formas de tubos de memoria electrostática. El más conocido hoy en día es el tubo Williams , desarrollado en Inglaterra, pero había varios otros que habían sido desarrollados de forma independiente por varios laboratorios de investigación. Los ingenieros de Whirlwind consideraron el tubo Williams, pero determinaron que la naturaleza dinámica del almacenamiento y la necesidad de ciclos de actualización frecuentes eran incompatibles con los objetivos de diseño de Whirlwind I. En su lugar, se decidieron por un diseño que se estaba desarrollando en el Laboratorio de Radiación del MIT . Se trataba de un tubo de electrones de doble cañón. Un cañón producía un haz muy enfocado para leer o escribir bits individuales. El otro cañón era un "cañón de inundación" que rociaba toda la pantalla con electrones de baja energía. Como resultado del diseño, este tubo era más bien una RAM estática que no requería ciclos de actualización, a diferencia del tubo Williams de RAM dinámica .
Al final, la elección de este tubo fue desafortunada. El tubo Williams estaba considerablemente mejor desarrollado y, a pesar de la necesidad de actualización, podía contener fácilmente 1024 bits por tubo y era bastante confiable si se operaba correctamente. El tubo MIT todavía estaba en desarrollo y, si bien el objetivo era contener 1024 bits por tubo, este objetivo nunca se alcanzó, incluso varios años después de que el plan exigiera tubos funcionales de tamaño completo. Además, las especificaciones exigían un tiempo de acceso de seis microsegundos, pero el tiempo de acceso real era de alrededor de 30 microsegundos. Dado que el tiempo de ciclo básico del procesador Whirlwind I estaba determinado por el tiempo de acceso a la memoria, todo el procesador era más lento de lo diseñado.
Jay Forrester estaba desesperado por encontrar un reemplazo de memoria adecuado para su computadora. Inicialmente, la computadora solo tenía 32 palabras de almacenamiento, y 27 de estas palabras eran registros de solo lectura hechos de interruptores de palanca . Los cinco registros restantes eran de almacenamiento flip-flop , y cada uno de los cinco registros estaba hecho de más de 30 tubos de vacío . Este "almacenamiento de prueba", como se lo conocía, estaba destinado a permitir la verificación de los elementos de procesamiento mientras la memoria principal no estaba lista. La memoria principal estaba tan retrasada que los primeros experimentos de seguimiento de aviones con datos de radar en vivo se realizaron utilizando un programa configurado manualmente en el almacenamiento de prueba. Forrester se encontró con un anuncio de un nuevo material magnético que estaba produciendo una empresa. Reconociendo que esto tenía el potencial de ser un medio de almacenamiento de datos, Forrester consiguió un banco de trabajo en la esquina del laboratorio y obtuvo varias muestras del material para experimentar. Luego, durante varios meses, pasó tanto tiempo en el laboratorio como en la oficina administrando todo el proyecto.
Al final de esos meses, había inventado los conceptos básicos de la memoria de núcleo magnético y había demostrado que era probable que fuera factible. Su demostración consistió en un pequeño plano de núcleo de 32 núcleos, cada uno de tres octavos de pulgada de diámetro. Una vez demostrado que el concepto era práctico, sólo necesitaba ser reducido a un diseño funcional. En el otoño de 1949, Forrester reclutó al estudiante de posgrado William N. Papian para probar docenas de núcleos individuales, para determinar aquellos con las mejores propiedades. [11] El trabajo de Papian se vio reforzado cuando Forrester le pidió al estudiante Dudley Allen Buck [17] [18] [19] que trabajara en el material y lo asignó al banco de trabajo, mientras Forrester regresó a la gestión de proyectos a tiempo completo. (Buck continuaría inventando el criotrón y la memoria direccionable por contenido en el laboratorio).
Después de aproximadamente dos años de investigación y desarrollo, pudieron demostrar un plano de núcleo compuesto de 32 por 32, o 1024 núcleos, que albergaban 1024 bits de datos. De este modo, habían alcanzado el tamaño de almacenamiento previsto originalmente para un tubo electrostático, una meta que aún no se había alcanzado con los propios tubos, que solo albergaban 512 bits por tubo en la última generación de diseño. Muy rápidamente, se fabricó una memoria de núcleo de 1024 palabras, que reemplazó a la memoria electrostática. El diseño y la producción de la memoria electrostática se cancelaron sumariamente, lo que permitió ahorrar una gran cantidad de dinero que se reasignó a otras áreas de investigación. Posteriormente se fabricaron dos unidades de memoria de núcleo adicionales, lo que aumentó el tamaño total de memoria disponible.
El diseño utilizó aproximadamente 5.000 tubos de vacío .
La gran cantidad de tubos utilizados en Whirlwind resultó en una tasa de fallas problemática, ya que la falla de un solo tubo podía causar una falla del sistema. El pentodo estándar en ese momento era el 6AG7, pero las pruebas en 1948 determinaron que su vida útil esperada en servicio era demasiado corta para esta aplicación. En consecuencia, se eligió el 7AD7 en su lugar, pero este también tenía una tasa de fallas en servicio demasiado alta. Una investigación sobre la causa de las fallas encontró que el silicio en la aleación de tungsteno del filamento del calentador estaba causando envenenamiento del cátodo ; los depósitos de ortosilicato de bario que se forman en el cátodo reducen o impiden su función de emitir electrones . El tubo 7AK7 con un filamento de tungsteno de alta pureza fue desarrollado especialmente para Whirlwind por Sylvania . [20] : 59–60
El envenenamiento del cátodo es peor cuando el tubo funciona en estado de corte con el calentador encendido. Los tubos comerciales fueron diseñados para aplicaciones de radio (y más tarde, televisión) donde rara vez se utilizan en este estado. Las aplicaciones analógicas como estas mantienen el tubo en la región lineal, mientras que las aplicaciones digitales cambian el tubo entre el estado de corte y la conducción completa, pasando solo brevemente por la región lineal. Además, los fabricantes comerciales esperaban que sus tubos solo se usaran unas pocas horas al día. [20] : 59 Para mejorar este problema, los calentadores se apagaban en válvulas que no se esperaba que se encendieran durante períodos prolongados. El voltaje del calentador se encendía y apagaba con una forma de onda de rampa lenta para evitar un choque térmico en los filamentos del calentador. [21] : 226
Ni siquiera estas medidas fueron suficientes para lograr la fiabilidad requerida. Se buscaron de forma proactiva los fallos incipientes probando las válvulas durante los periodos de mantenimiento. Se sometieron a pruebas de estrés llamadas pruebas marginales porque aplicaban voltajes y señales a las válvulas hasta sus márgenes de diseño. Estas pruebas estaban diseñadas para provocar un fallo temprano de las válvulas que de otro modo habrían fallado durante el servicio. Se llevaron a cabo automáticamente mediante un programa de pruebas. [20] : 60–61 Las estadísticas de mantenimiento de 1950 muestran el éxito de estas medidas. De los 1.622 tubos 7AD7 en uso, 243 fallaron, de los cuales 168 se detectaron mediante pruebas marginales. De los 1.412 tubos 7AK7 en uso, 18 fallaron, de los cuales solo 2 fallaron durante la comprobación marginal. Como resultado, Whirlwind era mucho más fiable que cualquier máquina disponible comercialmente. [20] : 61–62
Muchas otras características del régimen de prueba de los tubos Whirlwind no eran pruebas estándar y requerían de un equipo especialmente construido. Una condición que requería pruebas especiales era el cortocircuito momentáneo en algunos tubos causado por objetos pequeños como pelusa dentro del tubo. Los pulsos cortos espurios ocasionales son un problema menor, o incluso totalmente imperceptible, en circuitos analógicos, pero es probable que sean desastrosos en un circuito digital. Estos no aparecían en las pruebas estándar, pero se podían descubrir manualmente golpeando la envoltura de vidrio. Se construyó un circuito activado por tiratrón para automatizar esta prueba. [21] : 225
Después de la conexión al radar experimental de alerta temprana por microondas (MEW) en Hanscom Field utilizando el equipo de Jack Harrington y líneas telefónicas comerciales, [22] los aviones fueron rastreados por Whirlwind I. [23] El sistema Cape Cod posteriormente demostró una defensa aérea computarizada que cubría el sur de Nueva Inglaterra . [ especificar ] Las señales de tres radares de largo alcance (AN/FPS-3), once radares de relleno de huecos y tres radares de búsqueda de altura se transmitieron a través de líneas telefónicas a la computadora Whirlwind I en Cambridge, Massachusetts . El diseño Whirlwind II para una máquina más grande y más rápida (nunca completado) fue la base para el sistema de defensa aérea SAGE IBM AN/FSQ-7 Combat Direction Central .
El Whirlwind utilizaba aproximadamente 5.000 tubos de vacío. También se inició un esfuerzo para convertir el diseño del Whirlwind a una forma transistorizada, liderado por Ken Olsen y conocido como TX-0 . TX-0 tuvo mucho éxito y se hicieron planes para hacer una versión aún más grande conocida como TX-1. Sin embargo, este proyecto era demasiado ambicioso y tuvo que reducirse a una versión más pequeña conocida como TX-2 . Incluso esta versión resultó problemática, y Olsen abandonó el proyecto a mitad del proyecto para fundar Digital Equipment Corporation (DEC). El PDP-1 de DEC era esencialmente una colección de conceptos TX-0 y TX-2 en un paquete más pequeño. [24]
Después de apoyar a SAGE, Whirlwind I fue alquilado ($1/año) desde el 30 de junio de 1959 hasta 1974 por el miembro del proyecto, William M. Wolf (1928-2015). La energía para hacer funcionar la máquina costaba $2500 por mes, y Wolf Research and Development Corporation trabajó para la Fuerza Aérea y Buckminster Fuller 's World Game . Finalmente, trasladar Whirlwind I costó $250,000 y la compañía ganó $100,000 con ello. Wolf R&D Corporation fue vendida a EG&G en 1967 por $5.5 millones. [25] [26] [27]
Ken Olsen y Robert Everett salvaron la máquina, que se convirtió en la base del Museo de Computación de Boston en 1979. Aunque gran parte de la máquina se perdió cuando fue desmantelada, muchos de sus componentes ahora están en la colección del Museo de Historia de la Computación en Mountain View, California y el Museo del MIT . [28]
Desde febrero de 2009, se exhibe una unidad de memoria central en el Museo de Industria e Innovación Charles River en Waltham, Massachusetts . Un plano de memoria central, prestado por el Museo de Historia de la Computación , se exhibe como parte de las exhibiciones de Ciencias de la Computación Histórica en el Edificio de Ciencias de la Computación Gates, Stanford .
El edificio que albergaba Whirlwind fue hasta hace poco el hogar del departamento de TI de todo el campus del MIT, Servicios de Información y Tecnología y en 1997-1998 fue restaurado a su diseño exterior original. [29]
De estos, la velocidad es el factor menos importante desde un punto de vista histórico. Las personas son un factor muy importante.
Ken Olsen
. Ben Gurley.
La tasa de impulsos básica para el funcionamiento de la computadora será de un megaciclo. […] La computadora Whirlwind I está siendo planificada para una capacidad de almacenamiento de 2.048 números de 16 dígitos binarios cada uno.
esta vez para la Wolf Research and Development Corporation de Boston. William M. Wolf, presidente de la corporación de Boston, cree que la histórica máquina puede utilizarse de forma ventajosa de diversas maneras.
42°21′42″N 71°5′48″O / 42.36167, -71.09667