Usando um decodificador 4 \rightarrow 16, implemente a função:
F(A, B, C, D)=\sum m(2,3,7,11,13)

Passo 1

O enunciado fornece o seguinte (vou listar exatamente o que temos e o que pedem):
  • Disponível: um decodificador de 4 \rightarrow 16 (ou seja, tem quatro entradas e 16 saídas).
  • Variáveis de entrada da função: A, B, C, D.
  • A função a ser implementada é
F(A,B,C,D)=\sum m(2,3,7,11,13).
O que se pede: implementar F usando o decodificador 4\rightarrow16. Não há outras restrições explícitas.

Passo 2

O que é e como funciona um decodificador 4\rightarrow16 (explicação didática, passo a passo):
  • Um decodificador 4\rightarrow16 tem quatro entradas (vou assumir a convenção usual: A é o bit mais significativo — MSB — e D o menos significativo — LSB) e 16 saídas Y_0, Y_1, \dots, Y_{15}.
  • A propriedade fundamental: exatamente uma saída Y_i fica em nível alto (1) para cada combinação de entradas; essa saída corresponde ao índice i cujo binário é o valor das entradas.
  • Em notação de mintermos, isso significa que Y_i implementa o mintermo m_i. Ou seja, para a combinação (A,B,C,D) igual ao binário de i, temos Y_i=1 e todas as outras saídas são 0.
  • Assumo também saídas ativas em nível alto (active-high). Se o decodificador que você tiver for active-low, é preciso inverter as saídas ou usar lógica adequada — aqui trabalho com active-high porque é o caso mais comum em exercícios.
Resumo prático: ligar A,B,C,D às entradas do decodificador produz diretamente todas as 16 possibilidades de mintermos nas saídas Y_0 a Y_{15}. Para formar F basta OR (somar logicamente) as saídas correspondentes aos mintermos desejados.

Passo 3

Identificar os mintermos pedidos e escrever suas formas em literais (peguei os índices do enunciado):
  • m_2: índice 2 em binário é 0010, ou seja (A,B,C,D)=(0,0,1,0). Então
m_2=\bar A\,\bar B\,C\,\bar D.
  • m_3: índice 3 em binário é 0011, ou seja (0,0,1,1). Então
m_3=\bar A\,\bar B\,C\,D.
  • m_7: índice 7 em binário é 0111, ou seja (0,1,1,1). Então
m_7=\bar A\,B\,C\,D.
  • m_{11}: índice 11 em binário é 1011, ou seja (1,0,1,1). Então
m_{11}=A\,\bar B\,C\,D.
  • m_{13}: índice 13 em binário é 1101, ou seja (1,1,0,1). Então
m_{13}=A\,B\,\bar C\,D.
Observação direta: a saída do decodificador Y_i corresponde a m_i. Ou seja, Y_2=m_2, Y_3=m_3, Y_7=m_7, Y_{11}=m_{11}, Y_{13}=m_{13}.

Passo 4

Implementação direta com o decodificador (método mais simples e pedido pelo enunciado):
  • Ligue as entradas do decodificador às variáveis A,B,C,D (na ordem assumida: A MSB, D LSB).
  • Pegue as saídas Y_2, Y_3, Y_7, Y_{11}, Y_{13} do decodificador e aplique uma porta OR que faça a soma lógica desses sinais.
  • Em expressão usando as saídas do decodificador:
F = Y_2 + Y_3 + Y_7 + Y_{11} + Y_{13}.
Isto resolve diretamente a implementação pedida: o decodificador gera os mintermos e a porta OR agrega os mintermos necessários.
Prática na prova: se tiver apenas portas OR de 2 entradas, faça a OR em cascata (por exemplo, OR Y_2 com Y_3 => T_1; OR Y_7 com Y_{11} => T_2; OR T_1 com T_2 => T_3; OR T_3 com Y_{13} => F). Isso é equivalente e realizável sem porta OR de 5 entradas.

Passo 5

(Opcional — otimização usando combinações de saídas do decodificador para reduzir porte de ORs)
  • Podemos usar propriedades algébricas para reduzir o número de entradas das portas OR antes de chegar ao OR final, aproveitando que certos pares de mintermos diferem apenas em D e, portanto, quando ORados eliminam D.
  • Observe:
m_2 + m_3 = \bar A\,\bar B\,C\,\bar D + \bar A\,\bar B\,C\,D = \bar A\,\bar B\,C\;(\bar D + D)=\bar A\,\bar B\,C.
Logo, Y_2 + Y_3 = \bar A\,\bar B\,C. Na prática, pode-se ORar Y_2 e Y_3 para obter um termo mais simples.
  • Também:
m_7 + m_{11} = \bar A\,B\,C\,D + A\,\bar B\,C\,D = C\,D\,( \bar A\,B + A\,\bar B)=C\,D\,(A\oplus B).
Ou, escrevendo o \oplus em portas básicas, \bar A\,B + A\,\bar B.
  • Mantemos m_{13}=A\,B\,\bar C\,D isolado.
  • Assim uma forma reduzida (útil se quiser reduzir fan-in do OR) é
F=\bar A\,\bar B\,C + C\,D\,(A\oplus B) + A\,B\,\bar C\,D,
e, em termos das saídas do decodificador, uma implementação prática é:
  • T_1 = Y_2 + Y_3 (produz \bar A\bar B C),
  • T_2 = Y_7 + Y_{11} (produz C D (A\oplus B) quando expandido),
  • F = T_1 + T_2 + Y_{13}.
  • Essa estratégia diminui a quantidade de entradas de uma única porta OR (útil quando portas de alta fan-in não estão disponíveis).

Resposta

F = Y_2 + Y_3 + Y_7 + Y_{11} + Y_{13}

Exercícios relacionados