Puertas básicas construidas a partir de puertas Nand

1

Estoy empezando a aprender los conceptos básicos de las puertas a través del primer capítulo de "Los elementos de los sistemas informáticos". El primer proyecto es implementar un grupo de puertas básicas (y, no, o, etc.) utilizando las puertas Nand como base.

Estoy logrando obtenerlos eventualmente, pero honestamente lo estoy haciendo a través de la intuición y prueba y error. ¿Es así como lo has hecho a un nivel de entrada, o hay alguna lógica booleana básica (manipulaciones?) Que podría aprender que ayudaría a mi comprensión de cómo construir cosas desde las puertas de Nand?     

pregunta Kyle Brandt

3 respuestas

7

Si su libro es bueno, debe mencionar Mapeo de Karnaugh . El mapeo de Karnaugh se trata de agrupar valores similares (como todos o ceros) en un mapa que consiste en filas y columnas de combinaciones lógicas.

Sipuedeagruparcombinacioneslógicasdeesamanera,puedesimplificarsufunciónlógicacomoseindicaenesteejemplo.

Otrométodoquemefuncionamejorestrabajarcontablasdeverdad.Alaizquierdaescribestodaslascombinacioneslógicasdelasentradas.Para3entradasqueserían

  

ABC
      000
      001
      010
      011
      100
      101
      110
      111

Tengaencuentaqueestatablasevuelvebastantelargasitienemuchasentradas:\$2^N\$líneas.Aladerechaescribesla(s)salida(s).Porejemplo

  

ABCY
      0000
      0011
      0101
      0110
      1001
      1010
      1100
      1111

Conalgodeejercicio,amenudosepuedeverunpatrónenlasalida.Enestecasoparalasprimerascuatrolíneas,dondeA=0,Y=BXORC.Paraelresto,dondeA=1,Y=NO(BXORC),o,combinados:Y=AXORBXORC.(Estosepuedeutilizarparacrearunbitdeparidad)

JeffmencionacómopuedesusarlaLeydeDeMorganparacrearunapuertaORapartirdeNAND.EstapuertaXORtambiénesbásica:

    
respondido por el stevenvh
6

Sorprendentemente, nadie ha mencionado la Ley de DeMorgan. Esto te da un par de transformaciones útiles:

!(A * B) = !A + !B
!(A + B) = !A * !B

Esto le permite cambiar entre las funciones AND y OR, con una inversión simultánea en las entradas y salidas. Hacer un inversor a partir de una NAND es fácil, solo une las entradas. Invierta la NAND (con su inversor recién acuñado) y tendrá AND; aplica la Ley de DeMorgan y tienes un OR con todo invertido; aplique inversores solo a las entradas de eso y usted tiene NOR; invierte la salida, tienes OR.

Por supuesto, construyendo de esta manera terminará con un resultado no óptimo, y K maps es una herramienta que lo ayuda a reducir su sistema a algo más simple que cumple la misma función.

    
respondido por el JustJeff
4

Creo que lo que estás buscando son Karnaugh Maps :

  

El mapa de Karnaugh (K-map para abreviar), el refinamiento de 1953 de Maurice Karnaugh del diagrama Veitch de 1952 de Edward Veitch, es un método para simplificar expresiones de álgebra booleana. El mapa de Karnaugh reduce la necesidad de realizar cálculos extensos al aprovechar la capacidad de reconocimiento de patrones de los humanos, lo que permite la rápida identificación y eliminación de las condiciones potenciales de la raza.

     

En un mapa de Karnaugh, las variables booleanas se transfieren (generalmente de una tabla de verdad) y se ordenan de acuerdo con los principios del código de Gray en el que solo una variable cambia entre los cuadrados adyacentes. Una vez que se genera la tabla y se transcriben las posibilidades de salida, los datos se organizan en los grupos más grandes posibles que contienen 2n celdas (n = 0,1,2,3 ...) y el término mínimo se genera a través de las leyes del axioma del álgebra booleana .

Una vez que tenga dos puertas básicas, puede combinarlas para crear una tercera, luego use los mapas de Karnaugh para reducir la cantidad de puertas NAND que necesita para hacerlo.

    
respondido por el Majenko

Lea otras preguntas en las etiquetas