Relatório do Experimento 6 - Circuitos Digitais
Israel Sérgio Silva Santana, Felipe Kauã Nascimento Menezes
1F
13/03/2025
1 Introdução
O experimento tem como objetivo projetar e construir um circuito digital capaz de realizar
operações aritméticas de soma e subtração. O circuito deve detectar overflow através
de um led vermelho e exibir corretamente o resultado em um display de 7 segmentos,
diferenciando entre valores positivos e negativos por meio de um LED indicador.
Circuito Somador de 3 Bits
O circuito somador de 3 bits realiza a soma de dois números binários de 3 bits, A =
A2A1A0 e B = B2B1B0, gerando um resultado de 3 bits S = S2S1S0 e um carry final
COU T 2 .
Figure 1: Circuito Integrado Somador Figure 2: PinOut do So-
mador 4008
1
Expressões Lógicas
Cada bit do resultado e o carry são calculados da seguinte forma:
Bit 0 (S0)
S0 = (A0 ⊕ B0 ) ⊕ CIN
COU T 0 = A0 · B0 · (A0 ⊕ B0 ) · CIN
Bit 1 (S1)
S1 = (A1 ⊕ B1 ) ⊕ COU T 0
COU T 1 = A1 · B1 · (A1 ⊕ B1 ) · COU T 0
Bit 2 (S2)
S2 = (A2 ⊕ B2 ) ⊕ COU T 1
COU T 2 = A2 · B2 · (A2 ⊕ B2 ) · COU T 1
Figure 3: Diagrama Logico do Somador
Funcionamento do Circuito
O circuito somador de 3 bits é composto por três somadores completos (full adders)
conectados em série. Cada somador completo recebe dois bits de entrada (Ai e Bi ) e o
carry do somador anterior (COU T i−1 ), e produz um bit de soma (Si ) e um carry de saı́da
(COU T i ).
2
Exemplo de Soma
Considere a soma de A = 001 e B = 010:
001
+010
011
Passo a passo:
1. Bit 0: 1 + 0 = 1
2. Bit 1: 0 + 1 = 1
3. Bit 2: 0 + 0 = 0
O resultado da soma basica é S = 011.
Exemplo de Soma com Carry Out
Considere a soma de A = 001 e B = 001:
(0) (1) (0)
0 0 1
+ 0 0 1
0 1 0
Passo a passo:
1. Bit 0: 1 + 1 = 0 com carry 1 (vai um).
2. Bit 1: 0 + 0 + 1 (carry do bit anterior) = 1 (sem carry).
3. Bit 2: 0 + 0 = 0 (sem carry).
O resultado da soma é S = 010 e o carry final é COU T 2 = 0.
2 Circuito Subtrator
Podemos usar o próprio somador para realizar subtrações, levando em consideração que:
A − B = A + (−B)
O complemento de 2 de um número é equivalente a multiplicá-lo por −1. Para
obter o complemento de 2 de B, fazemos:
Complemento de 2 de B = Complemento de 1 de B + 1
O complemento de 1 é obtido invertendo todos os bits de B (ou seja, aplicando a
operação NOT).
Implementação do Subtrator
Para transformar o somador em um subtrator, precisamos:
1. Inverter os bits de B (complemento de 1): - Isso pode ser feito usando portas
XOR como inversoras controladas. - Quando o sinal de controle OP for 1, os bits de B
serão invertidos.
3
2. Adicionar 1 para obter o complemento de 2: - O sinal de controle OP
também pode ser conectado ao carry in (CIN ) do somador. - Quando OP = 1, o carry in
será 1, completando o complemento de 2.
Porta XOR como Inversora Controlada
A porta XOR pode ser usada como uma inversora controlada. A tabela verdade da
porta XOR é:
A B S
0 0 0
0 1 1
1 0 1
1 1 0
- Quando A = 0, a saı́da S é igual a B. - Quando A = 1, a saı́da S é a inversão de B.
Funcionamento do Circuito
O circuito funciona da seguinte forma :
1. Quando OP = 0 (Soma): - As portas XOR não invertem os bits de B. - O carry
in (CIN ) é 0. - O circuito realiza a operação de soma normal: A + B.
2. Quando OP = 1 (Subtração): - As portas XOR invertem os bits de B (com-
plemento de 1). - O carry in (CIN ) é 1, completando o complemento de 2. - O circuito
realiza a operação de subtração: A + (Complemento de 2 de B) = A − B.
Figure 4: Circuito Subtrator
4
3 Overflow
Ocorre overflow quando o resultado de uma operação excede a faixa de representação
permitida pelos 3 bits. Isso acontece quando:
• A soma de dois números positivos gera um número negativo.
• A soma de dois números negativos gera um número positivo.
Circuito de Detecção de Overflow
O overflow pode ser detectado comparando os bits de sinal dos operandos e do resultado.
A expressão lógica para detectar overflow é:
LOVR = (A2 ⊕ B2 ) · (A2 ⊕ S2 )
Onde:
• A2 e B2 são os bits de sinal dos operandos.
• S2 é o bit de sinal do resultado.
• (A2 ⊕ B2 ) indica que A2 e B2 são iguais.
• (A2 ⊕ S2 ) indica que o bit de sinal do resultado é diferente do bit de sinal dos
operandos.
Se a expressão for verdadeira, o LED de overflow deve acender.
Figure 5: Circuito Detector de Overflow
5
4 Decodificador para Display de 7 Segmentos
Para exibir corretamente o resultado no display, o circuito deve separar o bit de sinal
e converter os 3 bits restantes para o formato decimal. O decodificador converte os
números negativos para a representação correta e exibe apenas valores válidos. Além
disso, o display só acenderá enquanto não houver overflow.
Representação dos Números com Sinal
No sistema de 3 bits com sinal, os números são representados da seguinte forma:
Binário (S2 S1 S0) Decimal
000 0
001 1
010 2
011 3
100 −4
101 −3
110 −2
111 −1
Tabela Verdade do Decodificador
O decodificador recebe as entradas S2, S1 e S0 e gera as saı́das SINAL, S02, S01 e
S00, onde: - SINAL = S2 (bit de sinal, que acenderá um LED para indicar números
negativos). - S02, S01 e S00 são os bits corrigidos para exibição no display.
S2 S1 S0 SINAL S02 S01 S00
0 0 0 0 0 0 0
0 0 1 0 0 0 1
0 1 0 0 0 1 0
0 1 1 0 0 1 1
1 0 0 1 1 0 0
1 0 1 1 0 1 1
1 1 0 1 0 1 0
1 1 1 1 0 0 1
Expressões Lógicas do Decodificador
As saı́das do decodificador são geradas pelas seguintes expressões lógicas:
SINAL = S2
S02 = S2 · S1 · S0
S01 = (S2 · S1) + (S2 · (S1 ⊕ S0))
S00 = S0
6
Figure 6: Diagrama Lógico do Circuito para o Decodificador
Controle do Display com Base no Overflow
O display só acenderá enquanto não houver overflow. Para isso, o sinal de overflow é
invertido e conectado ao pino de blanking do display. Quando não houver overflow, o
blanking estará ativo, permitindo que o display funcione. Quando o overflow for detec-
tado, o blanking desativará o display.
A lógica é a seguinte:
BLANKING = LOVR
Figure 7: Circuito do Blanking
Funcionamento do Circuito
1. Sem Overflow: - LOVR = 0. - BLANKING = 1 (display ligado). - O decodificador
converte os bits S2, S1 e S0 para a representação correta e exibe o número no display. -
O LED de sinal (SINAL) acende se o número for negativo.
2. Com Overflow: - LOVR = 1. - BLANKING = 0 (display desligado). - O
display é desativado para evitar a exibição de resultados incorretos.
7
Figure 8: Circuito Completo
5 Tabela de Componentes Utilizados
Componente Quantidade de CIs Quantidade de Portas Lógicas
Portas AND 2 5
Porta OR 1 1
Portas XOR 2 6
Portas NOT 1 5
Decodificador 1 -
Somador de 3 Bits 1 -