Más de una vez hemos visto a entusiastas del cómputo hacerse de una computadora hecha solamente con los componentes básicos, incluso sin pensar en microprocesadores. En su afán de aprendizaje y curiosidad, más de uno ha decidido armar con circuitos TTL, que se basan principalmente en compuertas lógicas, su computadora completa. La cuestión comienza cuando uno se pregunta, ¿cuántas compuertas NAND se necesitan en un proyecto como éste?

En términos teóricos basta un solo tipo de compuerta lógica para construir una computadora completa. Por ejemplo, la compuerta NAND (Not AND) es universal en este sentido. Uniendo sus entradas se obtiene una compuerta NOT. Aplicando las leyes de Morgan podemos probar que con tres compuertas NAND implementamos una compuerta OR, por ejemplo.

A partir de esto se puede construir cualquier sistema lógico que se deseé. Con compuertas NAND se pueden construir flip-flops y por ende, cualquier registro que se necesite. De hecho, los flip-flops son la base de la memoria o de los osciladores para llevar tiempo.

Con esto en mente, ¿por qué no construir una computadora completa usando sólo chips NAND?

La NANDputadora tiene un diseño serial para así ahorrarse compuertas. Al ver el diseño ya en la realidad uno se da cuenta que la reducción de compuertas va más allá que el costo de comprar compuertas. Nótese que toda la construcción se hizo a mano, sin usar circuitos impresos siquiera. Es increíble.

Esta pequeña “bestia” corre a 11 MHz (pero quizás podría ir más rápido). El total de compuertas es de 352, un número que uno pensaría es demasiado menor a las consideraciones “a ojo de buen cubero”.

La computadora corriendo puede verse en el siguiente video:

 

Uno ve estos esfuerzos y dan ganas de decir “no es de Dios”.

Referencias:

Blog del autor del sistema