Ex.12. Usando o CI 7442 mais lógica adicional, implemente a função lógica:
Passo 1
O enunciado pede implementar a função lógica
usando o CI 7442 mais lógica adicional. Informações relevantes e hipóteses claras que vou usar:
usando o CI 7442 mais lógica adicional. Informações relevantes e hipóteses claras que vou usar:
- A função está dada em soma de mintermos: isso significa que
exatamente para os índices (e para os outros índices). - Adoto a convenção padrão de numeração de mintermos: o índice é o valor decimal do vetor de entradas
interpretado em binário com como bit mais significativo e como bit menos significativo. Por exemplo, índice . - O CI 7442 é um decodificador BCD (4 entradas) para 10 saídas. Vou chamar as saídas de
. A característica importante do 7442 que eu uso é: a saída fica em nível lógico baixo (0) quando as entradas representam o número decimal ; todas as demais saídas ficam em nível lógico alto (1). Em outras palavras, as saídas do 7442 são ativas em nível baixo. - Objetivo prático: usar as saídas do 7442 correspondentes aos mintermos desejados (índices 1,3,8,9) e combiná-las com lógica adicional para gerar
em nível alto quando a entrada for um desses mintermos.
Passo 2
Entendendo o papel do decodificador e a relação entre suas saídas e os mintermos.
- O 7442 fornece sinais
- Defino um sinal indicativo do mintermo
. Assim
exatamente quando as entradas fazem o número — ou seja, é um indicador ativo em nível alto do mintermo . - Como
é a soma dos mintermos , posso escrever - Substituindo
obtemos a forma em função das saídas do 7442: ]
Passo 3
Manipulação booleana para obter uma implementação prática com portas NAND/OR (explico por que escolho cada forma).
- Aplicando De Morgan à soma de complementos, posso escrever a soma como complemento de um AND:
Ou seja, - Interpretação prática: a expressão acima é exatamente a saída de uma porta NAND de 4 entradas cujos inputs são
. Lembre-se: a propriedade que uso é que o 7442 produz apenas quando o mintermo está ativo; portanto, se qualquer uma das saídas estiver em 0, o AND interno será 0 e a NAND resultará em 1 — justamente o que queremos para .
Passo 4
Implementações físicas possíveis (detalhes práticos e alternativas).
- Implementação direta e simples:
- Conectar as saídas
do CI 7442 às quatro entradas de uma porta NAND de 4 entradas. A saída dessa NAND é . - Em forma booleana:
.
- Conectar as saídas
- Alternativa usando inversores + OR:
- Inverter cada saída do 7442: obter
(cada uma é 1 exatamente no respectivo mintermo). - Fazer a OR dessas quatro inversões:
. - Essa alternativa pode ser útil se dispuser de portas OR e inversores mas não de uma NAND de 4 entradas.
- Inverter cada saída do 7442: obter
- Observação prática sobre o 7442:
- Algumas variantes de decodificadores têm saídas em coletor aberto (open-collector) ou requerem pull-ups para obter nível alto quando não ativos. Se o CI 7442 em uso tiver saídas open-collector, então providenciar resistores de pull-up nas saídas
(ou uma alimentação/pulldown apropriada) antes de ligar as saídas a portas lógicas. Se as saídas forem do tipo totem-pole (nível alto ativo), então não é necessário pull-up. Conferir o datasheet do CI usado.
- Algumas variantes de decodificadores têm saídas em coletor aberto (open-collector) ou requerem pull-ups para obter nível alto quando não ativos. Se o CI 7442 em uso tiver saídas open-collector, então providenciar resistores de pull-up nas saídas
- Se não houver porta NAND de 4 entradas disponível, usar uma porta NAND de 2 entradas em arranjo que gere a NAND de 4 entradas: por exemplo usar uma porta NAND de 4 entradas dedicada (ex.: 74HC20 / 74LS20 são portas NAND de 4 entradas) ou usar inversores e OR conforme a alternativa acima.
Passo 5
Exemplo concreto de conexões (passo a passo prático para montar no protoboard):
- Ligue as entradas
ao CI 7442 conforme o pinout do seu chip; verifique a ordem MSB, LSB conforme a convenção adotada. - Pegue as saídas
do 7442. - Conecte
às quatro entradas de uma porta NAND de 4 entradas; a saída dessa porta é . - Se as saídas do 7442 forem open-collector, coloque resistores de pull-up (ex.:
) nas linhas antes da entrada da NAND. - Teste a tabela verdade: quando
= qualquer dos vetores correspondentes a 1,3,8,9, a saída correspondente do 7442 fica 0 e, portanto, a NAND produzirá ; para outras entradas, todas as do conjunto estarão 1 e a NAND produzirá .