EJERCICIO 1

Realice un circuito combinacional minimizado con puertas lógicas que implemente un circuito que realice el complemento a dos de un número de cuatro bits.

SOLUCIÓN:

El complemento a dos de un número binario de "n" dígitos es su diferencia a 2n. Así el complemento a 2 del número "N" será 2n-N. Para n=4 dígitos será su diferencia a 24=16. Por ejemplo, el complemento a dos del número 13=1101 es el 16-13=3=0011. El complemento a dos de un número binario se puede obtener también intercambiando los "ceros" por "unos" y viceversa y sumándole "1" al dígito que ocupa la posición de menor peso. Recordamos que para convertir un número binario a decimal se multiplica cada dígito por 2 elevado a su posición y luego se suman. El dígito más a la derecha tiene la posición "0" y se sigue contando hacia la izquierda. Por ejemplo: 1101=13.

posición 3 posición 2 posición 1 posición 0 número en decimal
1
1
0
1
x23
x22
x21
x20
8
4
0
1
13

Realizamos el complemento a dos de todos los números binarios de cuatro dígitos y colocamos en una tabla de verdad como entradas los dígitos del número original y como salidas los dígitos de su complemento a dos. En la animación puedes realizar la conversión a decimal y el complemento a dos de cada número binario de cuatro bits.

Para simplificar las salidas utilizamos el mapa de Karnaugh: en una tabla colocamos las combinaciones de las entradas D y C en una fila y las de B y A en la columna. Las combinaciones de D y C no pueden cambiar de estado lógico las dos a la vez en dos columnas consecutivas del mapa y tampoco las de B y A..

BA DC 00 01 11 10
00
       
01
       
11        
10        

Simplificación para las salidas: se colocan los valores de cada salida de la tabla de verdad en las celdas correspondientes del mapa de Karnaugh.

El mapa de Karnaugh no es más que la Tabla de Verdad dispuesta de otra manera.

Para simplificar varias funciones a la vez, primero se buscan los "1"s no comunes para cada función y asociarlos de la forma más sencilla en su mapa de Karnaugh. Las expresiones obtenidas deben aparecer en la expresión final de cada función. Si faltan "1"s por asociar de las funciones se asocian en las funciones producto (primero dos a dos, después de tres en tres y así sucesivamente) y serán términos comunes a las funciones.

Para las salidas los "1"s no comunes con todas las demás salidas están en las posiciones en rojo; si los asociamos de las formas más sencillas que tenemos, se han seleccionado todos los "1"s de S0 y S4; por tanto ya no hay que tenerlas más en cuenta:

s4

s0

Para S1 los "1"s no comunes con S2 y S3 son los que están en rojo, que asociándolos de la forma más sencilla nos da S1 completa, por lo que ya no la volvemos a tener en cuenta:

s1

Nos queda S2 y S3 cuyos "1"s no comunes (entre ellos dos) están en rojo en cada mapa, y asociándolos de la manera más sencilla en sus respectivos mapas se obtiene completa S2, por lo que lo más sencillo es asociar los "1"s comunes de S3 en su propio mapa:

s2

s3

Al final no nos quedan elementos comunes entre algunas de las salidas: la forma más sencilla y mínima ha sido simplificando cada salida por su cuenta. El circuito con puertas lógicas es el siguiente:

Para realizar la simulación de este circuito utilizamos el simulador MicroSim DesignLab.

esquema

El resultado de la simulación nos da el cronograma siguiente, que como puede comprobarse coincide con la tabla de verdad del problema, moviendo el rectángulo rojo de la tabla con MOVER TABLA o moviendo la línea roja del cronograma con MOVER CURSOR. Al pulsar el botón izquierdo del ratón el rectángulo y el cursor rojo se paran en la posición deseada. Para volver a moverlos pulsar MOVER TABLA o MOVER CURSOR.