Aula 03 - Circuitos Lógicos Combinacionais (Aritméticos, Conversores, MUX e DEMUX)


1. Introdução à Lógica Combinacional MSI

Os circuitos lógicos combinacionais são caracterizados pelo fato de que suas saídas dependem estritamente e exclusivamente da combinação presente de suas entradas em um dado instante, sem qualquer dependência de eventos passados ou mecanismos de realimentação/memória interna:

Enquanto os circuitos SSI (Small-Scale Integration) englobam portas lógicas avulsas (inversores, AND, OR), a categoria MSI (Medium-Scale Integration) congrega blocos funcionais completos contendo de dezenas a centenas de portas interconectadas em um único chip, tais como somadores, codificadores, decodificadores e multiplexadores.


📌 Sumário da Aula

  1. 2. Circuitos Aritméticos Digitais
  2. 3. Codificadores e Decodificadores
  3. 4. Multiplexadores e Demultiplexadores
  4. 5. Buffers Tri-State e Barramentos Compartilhados
  5. 6. Questões Resolvidas das Materiais Teóricos de Referência

2. Circuitos Aritméticos Digitais

2.1 Meio-Somador (Half Adder — HA)

O meio-somador realiza a adição aritmética de dois bits independentes e , gerando a soma e o transporte de saída (Carry-out ):

Limitação: O meio-somador não possui entrada para o transporte proveniente de um estágio de menor significância anterior (), sendo inapto para a concatenação em estágios intermediários de somadores paralelos.

2.2 Somador Completo (Full Adder — FA)

O somador completo opera sobre três operandos binários simultâneos: os bits de dados e e o bit de transporte de entrada .

(Soma) (Transporte)
00000
00110
01010
01101
10010
10101
11001
11111

As equações deduzidas por mapa de Karnaugh revelam:

Um somador completo é fisicamente implementado através da interconexão de dois Meio-Somadores (HA) e uma porta OR:

  1. O primeiro HA soma e , gerando e ;
  2. O segundo HA soma com , gerando e ;
  3. A porta OR combina os transportes parciais: .

2.3 Somador/Subtrator Paralelo de 4 Bits com Propagação de Transporte (Ripple Carry)

Para operar palavras binárias de bits, cascateiam-se estágios de somadores completos ligando diretamente ao .

Para integrar a subtração em Complemento de 2 sem duplicar o hardware:

  • Cada bit passa por uma porta XOR alimentada pela linha de modo ;
  • Se (Modo Adição): e ;
  • Se (Modo Subtração): e .

O Gargalo da Propagação (Ripple Effect)

Cada estágio precisa aguardar a estabilização do transporte do estágio anterior . Em uma palavra de bits:

Para palavras de 32 ou 64 bits, este atraso acumulado torna-se proibitivo para frequências elevadas.

2.4 Aceleração por Antecipação de Transporte (Carry Lookahead Adder — CLA)

Para contornar o efeito ondulação, define-se para cada bit:

  • Geração de Transporte (): (Gera carry independentemente do passado);
  • Propagação de Transporte (): (Propaga o carry recebido se ativo).

As equações dos transportes sucessivos são expandidas diretamente em função de :

Dessa forma, todos os transportes são calculados em tempo fixo constante com apenas 2 níveis de atraso de portas lógicas!


3. Codificadores e Decodificadores

3.1 Codificadores de Prioridade (CI 74147 / 74148)

Um codificador converte linhas de entrada ativas em uma palavra binária de saída com bits:

Em um Codificador de Prioridade, se múltiplas entradas forem ativadas simultaneamente, o circuito codifica exclusivamente o índice da entrada de maior valor numérico, ignorando as requisições de menor prioridade.

3.2 Decodificador Binário de Linha (CI 74138 — 3 para 8)

O decodificador executa a função inversa exata: converte uma palavra de entrada de bits em exatamente uma linha ativa entre saídas possíveis. O clássico CI 74138 possui:

  • 3 linhas de endereço ();
  • 3 pinos de habilitação (Enable): (ativo em alto), e (ativos em baixo);
  • 8 saídas ativas em nível baixo ( a ).
  • Aplicações: Seleção de chips de memória (Chip Select ), decodificação de instruções de microprocessadores e roteamento de periféricos.

3.3 Decodificador BCD para 7 Segmentos (CI 7447 / 7448)

Converte um código BCD 8421 ( a ) nos 7 segmentos luminosos () necessários para desenhar números em displays:

  • CI 7447: Saídas em coletor aberto ativas em nível baixo (), projetado para displays de Anodo Comum (todos os anodos ligados a );
  • CI 7448: Saídas ativas em nível alto (), projetado para displays de Catodo Comum (catodos aterrados em ).

4. Multiplexadores e Demultiplexadores

4.1 Multiplexador (MUX / Seletor de Dados — CI 74151)

O multiplexador canaliza uma entre linhas de dados de entrada para uma única linha de saída, sob o comando de linhas de seleção binária:

4.2 Teorema da Síntese Lógica Universal com Multiplexador

Uma propriedade fundamental dos multiplexadores é sua capacidade de implementar qualquer função booleana arbitrária de variáveis utilizando um MUX de apenas canais, sem necessidade de portas lógicas externas:

  1. Conectam-se variáveis de entrada nas linhas de seleção ;
  2. A variável restante é conectada convenientemente nas entradas de dados na forma direta (), invertida (), nível alto () ou nível baixo ().

4.3 Demultiplexador (DEMUX) e Roteamento

O demultiplexador realiza a transmissão contrária: envia o dado presente em uma única linha de entrada para uma das saídas selecionadas pelas linhas de controle.


5. Buffers Tri-State e Barramentos Compartilhados

Em sistemas computacionais e barramentos industriais (como PCI, SPI, I2C e Barramentos de Microprocessadores), múltiplos transmissores precisam compartilhar fisicamente o mesmo condutor elétrico de dados. Se dois circuitos convencionais tentassem acionar a mesma trilha simultaneamente com níveis opostos ( e ), ocorreria curto-circuito de alimentação para a terra (bus contention), com sobrecorrente destrutiva.

A solução tecnológica universal é o Buffer Tri-State (Três Estados — CI 74244 / 74245):

  1. Nível Baixo (): Condução para ;
  2. Nível Alto (): Condução para ;
  3. Alta Impedância (Hi-Z): Ambos os transistores internos de saída (pull-up e pull-down) são cortados, isolando eletricamente o chip do barramento como uma chave aberta (resistência na faixa de giga-ohms).


6. Questões Resolvidas das Materiais Teóricos de Referência

Questão 1 (Apostila 02 - Módulo 1)

Enunciado: e são números binários de 8 bits. Dado que o operador "" se refere à soma aritmética e não à operação lógica, e sabendo que e representam o complemento bit a bit de e , qual é o resultado da expressão aritmética:

A)
B)
C)
D)
E)

Resolução Passo a Passo:

  1. Para qualquer número binário de 8 bits , a soma bit a bit com seu complemento resulta em todos os 8 bits iguais a :
  2. Somando agora :
  3. Em um registrador truncado estrito de 8 bits sem carry, o valor seria com transporte ativado; no valor absoluto da expressão aritmética completa, o resultado decimal é ().

Resposta Correta: A (ou )


Questão 2 (Apostila 02 - Módulo 1)

Enunciado: Pretende-se projetar um somador de números binários de 2 bits ( e ) sem transporte de entrada (). Quais blocos aritméticos elementares são necessários e suficientes para compor esse circuito?

A) Dois somadores completos (FA).
B) Um meio-somador (HA) para o estágio menos significativo e um somador completo (FA) para o estágio mais significativo.
C) Dois meio-somadores (HA).
D) Três portas XOR e duas portas AND.

Resolução Passo a Passo:

  1. Para o bit menos significativo (LSB: e ):
    • Como não há carry de entrada (), opera-se apenas com 2 operandos ( e );
    • O bloco perfeito e de menor custo é o Meio-Somador (Half Adder — HA), gerando a soma e o transporte intermediário .
  2. Para o bit mais significativo (MSB: e ):
    • Este estágio deve obrigatoriamente somar 3 operandos: , e o transporte vindo do estágio LSB;
    • Portanto, requer-se mandatoriamente um Somador Completo (Full Adder — FA), gerando a soma e o transporte final .

Resposta Correta: B


Questão 1 (Apostila 02 - Módulo 2)

Enunciado: Quantos bits são necessários para escrever o número hexadecimal no código BCD 8421?

A) 2
B) 10
C) 8
D) 12
E) 16

Resolução Passo a Passo:

  1. Converte-se primeiro o número hexadecimal para a base decimal:
  2. O código BCD 8421 codifica cada dígito decimal individualmente em um grupo fixo de 4 bits:
    • O número possui 3 dígitos decimais: ‘1’, ‘3’ e ‘8’.
    • Dígito ‘1’ (4 bits)
    • Dígito ‘3’ (4 bits)
    • Dígito ‘8’ (4 bits)
    • Representação BCD:
  3. Cálculo do número total de bits:

Resposta Correta: D (12 bits)


Questão 2 (Apostila 02 - Módulo 2)

Enunciado: Um codificador de prioridade que possua 12 linhas de entrada () deve ter saída binária com o número mínimo de quantos bits?

A) 7
B) 12
C) 3
D) 4
E) 5

Resolução Passo a Passo:

  1. A relação matemática entre o número de entradas e o número de linhas de saída de um codificador é dada pela capacidade de representação das potências de 2:
  2. Avaliando as potências de 2:
    • Para bits: (Insuficiente para distinguir 12 entradas);
    • Para bits: (Comporta as 12 entradas com folga).
  3. Portanto, são necessários no mínimo bits de saída para codificar as entradas de 1 a 12.

Resposta Correta: D (4 bits)


Questão 1 (Apostila 02 - Módulo 3)

Enunciado: Um multiplexador 4:1 com entradas de seleção e possui suas entradas de dados polarizadas da seguinte forma: , , e . Qual função lógica de e este multiplexador implementa em sua saída ?

A) (AND)
B) (XOR)
C) (XNOR)
D) (OR)

Resolução Passo a Passo:

  1. A equação booleana de saída do MUX 4:1 é:
  2. Substituindo os valores das entradas de dados :
  3. Esta é a definição exata da porta OU-Exclusivo (XOR):

Resposta Correta: B


Questão 2 (Apostila 02 - Módulo 3)

Enunciado: Em um circuito combinacional composto por um decodificador binário 2 para 4 com saídas ativas em nível baixo (), qual é o valor do vetor de saída quando as entradas de controle forem polarizadas em e ?

A)
B)
C)
D)

Resolução Passo a Passo:

  1. O decodificador recebe o endereço .
  2. O endereço decodificado seleciona a linha de índice .
  3. Como as saídas são ativas em nível baixo (possuem bolha inversora na ponta):
    • A linha selecionada (índice 1) vai para nível lógico 0;
    • Todas as demais linhas não selecionadas permanecem em nível lógico 1.
  4. Logo, para as saídas :

Resposta Correta: A ()