top of page

Laboratorio 9: La expansión de Shannon y la universalidad de las compuertas NAND y NOR.

Juan David Combita Murcia, 20181007017

Electrónica Digital

Grupo 743

Universidad Distrital Francisco José


I. Objetivos:


Objetivo general:


Implementar un sumador/restador de 6 bits.


Objetivos específicos:


1) Construir un multiplexor 16 a 1 con compuertas NAND.

2) Implementar un sumador de 2 bits utilizando el mutiplexor de 16 a 1.

3) Construir un sumador/restador de 6 bits mediante los sumadores de 2 bits.


II. Recursos:


1) Simulador CircuitVerse http://circuitverse.org/.


III. Marco teórico:


La propiedad universal de las puertas NAND y NOR:


La universalidad de la puerta NAND significa que puede utilizarse como un inversor y que pueden emplearse combinaciones de la puerta NAND para implementar las operaciones AND, OR y NOR. Del mismo modo, la puerta NOR se puede utilizar para implementar el inversor (NOT) y las operaciones AND, OR y NAND.


La puerta NAND es una puerta universal porque puede utilizarse para generar las funciones NOT, AND, OR y NOR. Se puede obtener un inversor a partir de una puerta NAND conectando juntas todas las entradas, dando lugar a una única entrada, como se muestra en la Figura 1(a) con una puerta de 2 entradas. La operación AND se puede generar utilizando sólo puertas NAND, como muestra la Figura 1(b). La operación OR se puede obtener con varias puertas NAND, como ilustra la parte (c). Por último, la operación NOR se obtiene como se indica en la parte (d) de la figura.[1]


En la Figura 1(b), se utiliza una puerta NAND para invertir (complementar) la salida de una puerta NAND para obtener una función AND, como indica la siguiente ecuación:

En la Figura 1(c), las puertas NAND G1 y G2 se emplean para invertir las dos variables de entrada antes de aplicarlas a la puerta NAND G3. La salida final de la puerta OR se obtiene aplicando el teorema de DeMorgan del siguiente modo:

En la Figura 5.16(d), la puerta NAND G4 se utiliza como un inversor conectado al circuito de la parte (c) con el fin de obtener la operación NOR (A+B)`.


Al igual que la puerta NAND, la puerta NOR se puede utilizar para generar las funciones NOT, AND, OR y NAND.[1]


Un circuito NOT, o inversor, puede obtenerse a partir de una puerta NOR conectando todas sus entradas juntas para tener una única puerta, como se muestra en la Figura 5.17(a) con una puerta de 2 entradas. También puede obtenerse una puerta OR a partir de puertas NOR, como se ilustra en la Figura 5.17(b). Un puerta AND puede construirse utilizando puertas NOR como muestra la Figura 5.17(c). En este caso, las puertas NOR G1 y G2 se usan como inversores y la salida final se obtiene aplicando el teorema de DeMorgan del siguiente modo:[1]

Teorema de Shannon:


El teorema de expansión de Shannon dice que si se tiene una función lógica, esta se puede expresar de la siguiente manera:

Por lo que cualquier función se podría implementar a partir de multiplexores 2 a 1 y compuertas lógicas, sin embargo, este teorema se puede aplicar para tener diferentes combinaciones en los selectores se la siguiente manera:

Si se puede observar las variables que se factorizan hacen de selectores, por lo cual se puede implementar con la cantidad de selectores necesaria, hay que recordar que la cantidad de entradas de un multiplexor es 2^n donde n es la cantidad de selectores.[2]


IV. Simulaciones y análisis de resultados:


Inicialmente se realizo un multiplexor 4 a 1, implementando únicamente compuertas NAND, teniendo en cuentas su respectiva tabla de verdad.

Posterior a esto se desarrollo un multiplexor 16 a 1, implementando 4 multiplexores 4 a 1 y los correspondientes 4 selectores.


Luego se realizo el sumador de 2 bits completo, utilizando 3 MUX 16 a 1 y un diseño 2^(n-1) donde, un MUX representara a su salida Cout, otro C1 y el ultimo C2 teniendo en cuenta que se ingresan 2 números de 2 bits y Cint. Su tabla de verdad es la siguiente:

Las entradas Cint, B1, B0 y A1 corresponden a los selectores de cada MUX y A0, lo relacionamos con cada salida para realizar el diseño 2^(n-1). En este caso solo se requirió de Vcc, Ground y un inversor con compuertas NAND para realizar el diseño.


Una vez diseñados, se realiza el sumador de 6 bits, el cual se realiza de manera similar al elaborado en la practica numero 7, pero adicional a esto, en añade una puerta de enable, la cual nos ayudara a realizar el sumador/restador posteriormente.


Para realizar la realizar la resta se requiere saber cuando un numero es mayor que otro, ya que por el metodo de complemento a 2, se realiza este proceso a el numero menor, se suma este resultado con el mayor y al resultado se anula el bit mas significativo. Ademas, si B>A el signo es negativo, por lo que hay que tener en cuenta este parametro. Para llevar a cabo dicha comparacion se realizo un comparador de 6 bits, como el elaborado en la practica numero 7, remplazando las compuertas utilizadas en dicho laboratorio por compuertas NOR.


Para realizar el complemento a 2 se implemento un sumador de 6 bits, el cual niega todas su entradas y suma 1 a dicho resultado. Su salida es simple es un numero de 5 bits.


Posterior a tener los anteriores subcircuitos, se plantea realizar el sumador/restador de 6 bits. Esto se realiza utilizando 5 sumadores de 6 bits, 1 comparador de 6 bits y 2 complemento a 2. La entrada S/R nos funciona como habilitador, ya que si esta es cero (suma) solo se habilita un sumador, el cual hacer la suma de los 2 números sin mayor complicación, y deshabilita los sumadores que realizan el procedimiento de la resta, sumando el resultado de dichos números mas cero. Ya para la resta, se tiene en cuenta el comparador que al tener A>B realiza el complemento a 2 de B y se lo suma a A, por otro si B<A se realiza el complemento de A y se se suma a B, por lo tanto, el comparador nos habilita y deshabilita los sumadores, dependiendo del proceso que se requiera.


Finalmente, se realiza el main, el cual solo requiere del sumador/restador, sus respectivas 13 entradas, donde una de estas nos dice si se quiere realizar la suma o resta, y 7 salidas, donde la séptima es el signo de dicho numero, siendo 1, un numero negativo.


El montaje correspondiente a cada procedimiento mencionado es el siguiente, realizado en CircuitVerse.

V. Conclusiones:


Es posible realizar cualquier función o circuito lógico únicamente con multiplexores, sin embargo, esto no quiere decir que sea un diseño mas simplificado o mas complejo, pero es una alternativa, al igual que pasa con las compuertas universales. Teniendo en cuenta lo anterior mencionado, es conveniente siempre tener a la mano dichos componentes, ya que estas características no los tienen todos los componentes vistos hasta el momento, con esto nos aseguramos poder realizar cualquier función lógica solo disponiendo de dichos elementos.


VI. Vídeo:



Referencias:


[1] Thomas L. Floyd, fundamentos de sistemas digitales, Madrid, PEARSON EDUCATION S.A., 2006.


[2] Guía practica 9.

Comments


bottom of page