Una compuerta universal es una compuerta que podemos implementar cualquier función booleana, sin importar cuán compleja sea, utilizando un circuito que consta solo de esa compuerta universal en particular. Las puertas NAND y NOR son las puertas universales más comúnmente encontradas en lógica digital.
En este artículo, veremos cómo convertir cualquier circuito en un circuito que consta solo de puertas NAND. Dado que la compuerta NAND es una compuerta universal, podemos convertir cualquier circuito en un circuito que consta solo de compuertas NAND. Primero comenzamos mostrando cómo se pueden implementar otras compuertas (AND, OR, Inverter) usando solo compuertas NAND, luego usamos este conocimiento para discutir cómo convertir cualquier circuito en solo un circuito NAND.
Objetivo:
Dado un circuito, nuestra tarea es implementar un circuito que sea equivalente al circuito dado y consista únicamente en puertas NAND .
Ejemplos:
Ejemplo 1:
Circuito dado:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220623220312/ConvertanycircuittoanonlyNANDgatecircuitExample1-660x426.jpg)
AB+CD
Misma función booleana con solo circuito NAND
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628114748/ConvertanycircuittoanonlyNANDgatecircuitExample1Answer-660x401.jpg)
Ejemplo 2:
Circuito dado:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220623224224/ConvertanycircuittoanonlyNANDgatecircuitExample2-660x367.jpg)
(A+B)C+ DE
Misma función booleana con circuito de compuerta solo NAND:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220625151340/ConvertanycircuittoanonlyNANDgatecircuitExample2Answer-660x374.jpg)
Antes de llegar a cómo convertir cualquier circuito en un circuito solo NAND , veremos cómo implementar la operación Complementaria, AND & OR usando puertas NAND. También tendremos que echar un vistazo a cómo implementar la operación NAND usando la puerta OR.
COMPLEMENTO Usando NAND
![](https://media.geeksforgeeks.org/wp-content/uploads/20220625155552/ConvertanycircuittoanonlyNANDgatecircuitComplementusingNAND-300x165.jpg)
(AA)’ = A’
Y usando NAND
![](https://media.geeksforgeeks.org/wp-content/uploads/20220625152429/ConvertanycircuittoanonlyNANDgatecircuitANDusingNAND-300x109.jpg)
Evalúa a AB
Esto es bastante sencillo, deseamos obtener AB pero la compuerta NAND da una salida (AB)’, por lo que complementamos la salida de la compuerta NAND usando otra compuerta NAND para obtener ((AB)’)’, que es AB.
O usando NAND
![](https://media.geeksforgeeks.org/wp-content/uploads/20220625154045/ConvertanycircuittoanonlyNANDgatecircuitORusingNAND-300x159.jpg)
Evalúa a A+B
Primero complementamos las entradas A y B. Luego realizamos la operación NAND en estas entradas complementadas. Obtenemos (A’B’)’.
Usando la ley de de morgan podemos demostrar que (A’B’)’ = A + B.
NAND usando OR e inversor
![](https://media.geeksforgeeks.org/wp-content/uploads/20220627225310/ConvertanycircuittoanonlyNANDgatecircuitNANDusingORInverter-300x153.jpg)
Para implementar la operación NAND usando la puerta OR, primero complementamos las entradas y luego realizamos OR en las entradas complementadas.
Obtenemos A’ + B’.
A’ + B’ es equivalente a (AB)’, lo cual se puede demostrar usando la ley de de morgan.
Procedimiento para la Conversión
Considere el siguiente circuito.
Tenemos:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220623220312/ConvertanycircuittoanonlyNANDgatecircuitExample1-300x194.jpg)
Tenemos que volver a implementar de alguna manera este circuito usando solo puertas NAND.
Supongamos qué sucede si insertamos dos inversores entre cada puerta AND y OR.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220627223506/ConvertanycircuittoanonlyNANDgatecircuitProcedurepic1-300x172.jpg)
Este circuito es completamente equivalente al original ya que la salida de cada puerta AND se complementa dos veces antes de que la señal llegue a la puerta OR. Estos inversores jugarán un papel clave en el proceso de conversión.
Ahora eche un vistazo a las áreas resaltadas.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220627224513/ConvertanycircuittoanonlyNANDgatecircuitProcedurepic2-300x179.jpg)
Las puertas en cada área resaltada se pueden combinar fácilmente en una puerta NAND, ya que es básicamente una puerta AND seguida de un inversor.
Obtenemos:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220627230844/ConvertanycircuittoanonlyNANDgatecircuitProcedurepic3-300x186.jpg)
Ahora solo tenemos que cuidar el área resaltada en azul. Recuerde la implementación de una operación NAND usando puertas OR e inversoras que hemos cubierto anteriormente, las puertas en el área azul implementan una operación NAND. ¡Por lo tanto, podemos reemplazar todas las puertas en el área azul con una sola puerta NAND!
Nuestro resultado final:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628114748/ConvertanycircuittoanonlyNANDgatecircuitExample1Answer-300x182.jpg)
Puedes comprobar por ti mismo que este circuito implementa la función AB + CD, igual que el circuito original.
Otro ejemplo:
Circuito original:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628115022/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic1-300x169.jpg)
(A+B+CD)E
Método 1
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628115733/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic2-300x175.jpg)
Primero, comenzamos reemplazando la primera puerta AND (resaltada en amarillo) con una puerta NAND. Para hacer esto, insertamos dos inversores después de esta puerta AND.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628121032/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic3-300x157.jpg)
Recuerde que este circuito es lo mismo que dos operaciones de complemento que dan como resultado la señal original. La puerta AND y el inversor que la sigue se pueden combinar en una sola puerta NAND (consulte el área resaltada en amarillo).
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628121959/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic4-300x167.jpg)
A continuación, reemplazamos la puerta OR en el área resaltada en azul con puertas NAND. Hemos visto cómo implementar la operación OR usando puertas NAND, ahora ponemos ese conocimiento en práctica.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220628124213/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic5-300x170.jpg)
Luego procedemos a reemplazar la última puerta AND (resaltada en amarillo) con puertas NAND. Al igual que reemplazamos la puerta OR en el paso anterior, reemplazamos la puerta AND con su circuito de puerta NAND equivalente.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629110808/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic6-300x161.jpg)
Ahora nos queda una puerta OR y una puerta inversora. Una puerta NAND puede implementarse mediante una puerta OR con entradas complementadas. Aquí tenemos solo una entrada complementada a la puerta OR. Para cumplir con la condición de que ambas entradas se complementen, insertamos dos inversores entre la puerta OR resaltada y la puerta NAND anterior.
Obtenemos:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629112842/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic7-660x350.jpg)
Ahora ambas entradas a la puerta OR están complementadas. Las puertas en el área azul representan una operación NAND, por lo que podemos reemplazarlas con una puerta NAND.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629120239/ConvertanycircuittoanonlyNANDgatecircuitAnotherExamplepic8-660x367.jpg)
Ahora solo nos queda un inversor. Una puerta Inverter es básicamente una puerta NAND de una entrada. Realizamos la reposición necesaria y obtenemos nuestro circuito final.
Nuestro circuito final de solo puerta NAND:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629121945/ConvertanycircuittoanonlyNANDgatecircuitAnotherExampleFinalcircuit-660x357.jpg)
Puede verificar que este circuito implementa: (A+B + CD)E
Método 2 (Método SOP):
El circuito original implementa la función booleana: (A+B+CD)E
Primero manipulamos esta ecuación booleana para que esté en la Suma de productos (SOP).
En este caso, simplemente multiplicamos cada término entre paréntesis por E.
Obtenemos: AE + BE + CDE.
Dado que esta ecuación booleana ahora está en formato SOP, el circuito para esta ecuación estará en una implementación estándar de dos niveles, lo que significa que habrá una serie de compuertas AND seguidas de una única compuerta OR.
Dibujamos el circuito:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629150837/ConvertanycircuittoanonlyNANDgatecircuitAnotherExampleSOPmethodpic1-300x168.jpg)
Al igual que en el ejemplo 1, insertamos dos puertas de inversor entre cada puerta AND y OR.
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629152139/ConvertanycircuittoanonlyNANDgatecircuitAnotherExampleSOPmethodpic2-300x165.jpg)
Probablemente ahora pueda averiguar qué haremos a continuación. Combinamos las puertas en las áreas amarillas en una sola puerta NAND. Además, sabemos que una puerta OR con entradas complementadas implementa una operación NAND. Entonces reemplazamos las puertas en el área azul con una puerta NAND.
Nuestro circuito final:
![](https://media.geeksforgeeks.org/wp-content/uploads/20220629153742/ConvertanycircuittoanonlyNANDgatecircuitAnotherExampleSOPmethodFinalResult-660x381.jpg)
Podemos concluir que siempre que un circuito tenga una serie de compuertas AND en el primer nivel seguidas de una única compuerta OR, podemos reemplazar ciegamente cada compuerta con una compuerta NAND y el circuito seguirá implementando la misma función booleana.
En este caso, el Método 2 requirió mucho menos esfuerzo que el Método 1, uno podría preguntarse por qué molestarse en aprender el Método 1 cuando el Método 2 parece más fácil. La respuesta es que el método 2 requiere que la ecuación booleana se represente en forma de suma de productos. En este caso, fue fácil convertir nuestra ecuación en SOP, pero no siempre es así.
Suponga que tiene un circuito que implementa la función booleana: (A+B)(C+D)(E+F)(G+H)
Convertir esto a un formulario SOP será complicado, y mejor con el Método 1 en este caso.
Publicación traducida automáticamente
Artículo escrito por swaraj_sonavane y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA