Compuertas y circuitos combinacionales
De un transistor que conduce o no conduce a un sumador completo hay menos distancia de la que parece. Toda la lógica combinacional se arma con tres operaciones, y con una sola alcanza.
Un procesador es, en el fondo, un montón de interruptores conectados con criterio. El puente entre “un transistor conduce o no” y “esto suma dos números” es la lógica combinacional, y se construye en tres o cuatro pasos bien concretos.
El álgebra de Boole, hecha física
La base es el álgebra de Boole: variables que valen verdadero o falso y tres operaciones, AND, OR y NOT. Cada compuerta es la realización física de una de ellas.
Un circuito combinacional es el que depende sólo de sus entradas actuales: mismas entradas, misma salida, sin memoria. Se describe por completo con una tabla de verdad, y de esa tabla se puede derivar el circuito de forma mecánica.
Antes de seguir, predecí
Con NAND sola alcanza para todo
Un resultado lindo y con consecuencias industriales: NAND es universal. Con compuertas NAND solas se construye NOT, AND, OR y por lo tanto cualquier función booleana. Lo mismo vale para NOR.
Eso importa en la fabricación: alcanza con producir un solo tipo de compuerta, bien optimizada, y todo lo demás se arma combinándola. La lógica no necesita un catálogo de piezas, necesita una.
NAND es «no AND»: da falso sólo cuando las dos entradas son verdaderas.
De la tabla de verdad al circuito
El procedimiento es directo. Se escribe la tabla de verdad, se toma cada fila donde la salida es uno, se arma un AND con las entradas —negadas donde valgan cero— y se unen todos esos términos con un OR. Eso es la suma de productos, y siempre funciona.
Después se simplifica: los mapas de Karnaugh agrupan términos vecinos a ojo, y el algoritmo de Quine-McCluskey lo hace sistemáticamente. Simplificar no es estético, es menos compuertas, menos área y menos retardo.
Los bloques que se reutilizan
Con esa técnica se arman los bloques que se reutilizan. El multiplexor elige una de varias
entradas según una señal de control: es el if del hardware. El decodificador convierte un
número binario en una línea activa entre muchas, y es cómo se selecciona una celda de memoria o una
instrucción.
El comparador produce igual, mayor o menor. Y todo procesador tiene una unidad aritmético-lógica, que es un banco de operaciones en paralelo con un multiplexor eligiendo cuál sale.
El sumador, que cierra el círculo
El ejemplo que cierra el círculo es el sumador. Un semisumador suma dos bits: la salida es un XOR y el acarreo, un AND. Un sumador completo agrega el acarreo de entrada, y encadenando de ellos se suman números de bits.
El problema de encadenarlos es que cada uno espera el acarreo del anterior, así que el retardo crece de forma lineal con el ancho. Por eso existen los sumadores con anticipación de acarreo, que lo calculan en paralelo con más compuertas. Es el primer ejemplo del intercambio permanente del hardware: área contra velocidad.
El camino crítico manda la frecuencia
Ese retardo es el concepto que conviene llevarse. Una compuerta no cambia su salida instantáneamente, y el camino más largo del circuito —el camino crítico— determina cuánto hay que esperar para que la salida sea confiable.
De ahí sale la frecuencia máxima del reloj: el período tiene que ser mayor que el camino crítico. Toda la carrera por los gigahertz es, en el fondo, la pelea por acortar ese camino.
De la tabla al circuito, y de vuelta
| Concepto | En hardware | En software |
|---|---|---|
| Compuerta | transistores | operador booleano |
| Tabla de verdad | la especificación | los casos de prueba de una condición |
| Suma de productos | la implementación directa | una cadena de OR sobre ANDs |
| Simplificación | menos transistores | una condición que se puede leer |
| Multiplexor | elige entre entradas | el operador ternario |
Cierre
Tabla de verdad, suma de productos, simplificación: de ahí sale cualquier función combinacional, y con NAND sola alcanza. Multiplexores, decodificadores y sumadores son los bloques reutilizables, y el camino crítico es lo que fija la frecuencia del reloj.
Autoevaluación
¿Lo entendiste?
Práctica