Activa las notificaciones para estar al tanto de lo más nuevo en tecnología.

Regresando a los orígenes

A estas alturas de la vida hablamos solamente de procesadores que corren a altísimas velocidades, a grandes capacidades de memoria RAM, a discos duros que...

cpu-ttl

A estas alturas de la vida hablamos solamente de procesadores que corren a altísimas velocidades, a grandes capacidades de memoria RAM, a discos duros que ya tienen almacenamiento de 1 a 3 terabytes. La tecnología nos ha rebasado y no sabemos qué nuevo invento tendrá repercusiones en nuestra vida cotidiana.

Mientras tanto, sin embargo, existen personas que han decidido regresar a los orígenes. ¿Cómo es que un procesador, el “CPU”, puede hacer sus labores? ¿A quién se le ocurrió el conjunto de instrucciones que usa cualquier procesador moderno? ¿Cómo está implementada la Unidad Lógico Aritmética? ¿Cómo pues, se ha llegado a tener en pocos cms cuadrados tanto poder de cómputo?

Para entender esto, una idea es crear un CPU, un procesador central con los chips más elementales que hay en el mercado, es decir, los TTL (transistor-transistor logic), los cuales son un conjunto de circuitos integrados de primera generación que contienen compuertas lógicas, flip flops, registros, multiplexores, etc. La serie 7400 de circuitos integrados fue diseñada con mucho cuidado para poderse conectar en patrones que permitieran hacer circuitos lógicos más grandes. Con ellos se puede crear una unidad central de procesamiento, un CPU, con un diseño propio.

El autor de este CPU, Donn Stewart, no es más que un aficionado a las computadoras y a la electrónica. Su primera computadora fue una Sinclair Z80 en donde aprendió primero BASIC y después el lenguaje ensamblador. Más adelante se hizo de una TRS-80 e hizo una serie de videojuegos simples.

Donn se interesó en cómo las máquinas trabajan a nivel electrónico y se compró entonces el “laboratorio de aprendizaje de lógica digital de Radio Shack”, un kit que contenía un sólo circuito integrado 7400, varios capacitores y resistencias, así como algunos LEDs. Con esta información, se dedicó a leer algunos libros sobre cómo armar una computadora de 8 bits usando un procesador Z-80. Pero todo esto fue un fracaso porque no supo cómo probar el sistema.

Sin embargo, este fracaso lo único que logró fue acrecentar su deseo de armar una computadora. Así entonces, pudo armar una máquina con un Z-80, con memoria estática y con un reloj muy lento, todo construido en un protoboard. Donn escribió un programa y lo puso en la memoria bit a bit, a mano. Arrancó el sistema y notó que su programa funcionaba. Finalmente había construido su primera computadora.

Su siguiente proyecto fue un sistema Z-80 más completo. Tenía un EPROM de 2K, 1K de memoria estática, puertos de entrada y salida, así como un teclado. Más importante aún, tenía un display que mostraba el estado de los datos, las líneas de control y de las direcciones. Cuando el sistema corría como usaba un reloj lento, podía verse la actividad de la computadora y así darse cuenta de qué andaba mal.

Donn entonces halló que entendía ya las computadoras, pero el procesador por sí mismo era un misterio. Como quería entender esa parte también, al nivel de compuertas lógicas, decidió que armaría un procesador propio, con un pequeño conjunto de instrucciones. Aparentemente la idea era buena pero parecía estar fuera del nivel de competencia de Donn.

No obstante,  un día una compañera de trabajo que tomaba una clase de computación le mostró su libro de texto: “Computer Organization and Design“, de David Patterson y John Hennessy (1998, Morgan Kaufmann). Mientras le echaba una hojeada, Donn se percató de cómo diseñar el procesador que tenía en mente. Su amiga, Lan, le regaló el libro al terminar su curso y Donn, al terminar el capítulo 5, ya estaba listo para diseñar su propio procesador central.

Las lecciones aprendidas con los sistemas de 8 bits sirvieron para el proyecto del procesador. El autor dice que sí, cometió errores, pero que pudo probar cada subsistema en la medida que iba armándolos. Le llevó muchos meses y fines de semana de paciencia y de pruebas, pero finalmente logró su objetivo. Tenía su propia computadora con un procesador armado con circuitos TTL.

El sistema de Donn ha sido documentado. Puede verse aquí.

Quien le interese comunicarse con el autor, escríbale directamente a su correo electrónico (el cual aparece en su página). De acuerdo a lo que dice ahí, está en la mejor disposición de ayudarle a todo aquel que deseé aprender de estos temas.

Comentarios