Implementando una función usando decodificador, codificador y algunas puertas

2

Implemente la función F (A, B, C, D, E) = A'B'C'DE '+ ABCD'E utilizando solo los componentes necesarios de los que se indican a continuación:

  • Un decodificador 3: 8 con salidas altas activas y una entrada de habilitación alta activa
  • Un codificador de prioridad 8: 3 con entrada no. 7 en la prioridad más alta con una habilitación alta activa que si está deshabilitada fuerza las salidas a lógica baja
  • Una entrada 2 XOR
  • Una 2 entradas O puerta
  • Una entrada 2 entradas Y puerta

Mis intentos:

  • He notado que la función tiene los términos mínimos 2 y 29 - 00010 y 11101.
  • Puedo hacer que el decodificador tenga cuatro entradas usando un pin de habilitación (para un variable).
  • Dibujar el K-Map no parece simplificar nada.
  • La aplicación de la ley de De-Morgan no parece simplificar las cosas.
  • Se intentó usar B, C y E en el decodificador y A o D en la habilitación. Esto me proporciona 8 minterms de B, C y E.

Estoy atascado en cómo implementarlo usando solo estos.

¿Cómo enfoco esta pregunta (y otras preguntas de diseño)?

    
pregunta Viktor

2 respuestas

0

No hay un procedimiento establecido para resolver este tipo de problemas. Requiere mucha creatividad y conocimiento.

Algunas ideas que pueden resultar útiles:

  • Los dos patrones son complementos entre sí.
  • Los codificadores de prioridad son particularmente buenos para detectar combinaciones de ceros.
  • Los decodificadores son particularmente buenos para detectar combinaciones de unos.

Hay una solución que usa exactamente las puertas enumeradas. (No requiere una salida "válida" en el codificador, aunque esa es una característica normal de dicho chip). Lo publicaré en uno o dos días si todavía estás atascado.

La tabla de verdad para un codificador de prioridad se ve así:

      Inputs         Outputs
E 7 6 5 4 3 2 1 0    V C B A
-----------------    -------
0 x x x x x x x x    0 0 0 0   <--
1 1 x x x x x x x    1 1 1 1
1 0 1 x x x x x x    1 1 1 0
1 0 0 1 x x x x x    1 1 0 1
1 0 0 0 1 x x x x    1 1 0 0
1 0 0 0 0 1 x x x    1 0 1 1   <--
1 0 0 0 0 0 1 x x    1 0 1 0
1 0 0 0 0 0 0 1 x    1 0 0 1
1 0 0 0 0 0 0 0 1    1 0 0 0
1 0 0 0 0 0 0 0 0    0 0 0 0

La información clave aquí es que tanto la primera como la sexta líneas de esta tabla son importantes para este problema. Preste atención a la salida C . Si conecta las entradas correctamente, puede hacer que disminuya para ABCDE = 000x0 o ABCDE = xxx0x . La pregunta restante es, ¿cómo se puede usar la puerta XOR para distinguir entre estos dos casos?

Solución completa

simular este circuito : esquema creado usando CircuitLab

    
respondido por el Dave Tweed
0

El hecho de que su problema se exprese como una suma de dos productos le brinda un gran indicador hacia la solución, ya que tiene dos componentes complejos y una puerta OR disponible. Por lo tanto, solo se debe hacer que un componente genere uno de los productos, el otro componente genere el otro producto y luego utilice la compuerta OR para combinar los dos para obtener el resultado. También tienes dos puertas elegidas al azar para ayudarte.

El término ABCD’E es el más fácil. Tiene cuatro entradas que necesitan ser 1 y una que necesita ser 0. Combine dos de las entradas que necesitan ser 1 usando la compuerta AND y usted tiene tres entradas que necesitan ser 1 y una que necesita ser 0, y eso se puede lograr fácilmente usando su decodificador 3: 8.

El segundo es más difícil, así que te dejaré que intentes resolverlo, pero escribe la tabla de verdad y la estudiaré para ver cómo puedes combinar el codificador 8: 3 con la puerta XOR para obtener el segundo producto.

    
respondido por el Finbarr

Lea otras preguntas en las etiquetas