¿Se puede construir un procesador solamente usando transistores? ¿Sin usar circuitos integrados siquiera básicos? ¿Sólo transistores? Parece hoy en día una tarea imposible pero en realidad el mundo está lleno de gente sorprendente.
James Newman -hace un par de años- se le ocurrió que quería aprender más acerca de los transistores. Pensó que un buen proyecto sería crear una computadora completa usando solamente este elemento de la electrónica. Y como él dice: “No planeé terminar haciendo toda una computadora. Yo sólo quería aprender sobre transistores, pero las cosas se salieron de control”.
Un microprocesador moderno tiene cientos de miles de transistores, por lo que cualquier proyecto en donde se quiera construir uno usando solamente transistores, va a estar limitado por muchas razones.
Sin embargo, Newman pensó en construir una máquina de 16 bits de direccionamiento o datos, con siete registros, cuatro de propósito general, todo corriendo a unos 20 Khz. Esto es más poderoso que los chips de 8 bits, como el 6502. La máquina de Newman tendría unos 256 bytes de memoria nada más, pero la razón es que es el total de transistores que pudo soldar.
El número de transistores que usó fue de 15 mil 300 para el procesador y unos 27 mil para la memoria RAM. Un 6502 tiene unos 3 mil 500 transistores. El sistema de Newman es gigantesco y nos puede dar una idea de cómo se han miniaturizado las cosas:
El sistema se puede programar en ensamblador y hay un simulador para probar el trabajo de programación hecho. Su aritmética es entera porque simplemente agregar las rutinas de punto flotante excederían la memoria disponible.
Newman ha armado también una página en donde explica las motivaciones, el costo, la construcción, la programación, la arquitectura, lo bueno, lo malo y lo feo de su proyecto. En mi opinión, son de esas ideas que requieren mucho tiempo, se invierte mucho trabajo y quizás el resultado final no sea nada extraordinario, pero en lo que se refiere a aprendizaje, sin duda que es una buena idea.
Referencias: Megaprocessor, i-programmer