Você está na página 1de 108

Sistemas Digitais

Circuitos Combinacionais

Alessandra Hauck

FATECS

Alessandra Hauck Sistemas Digitais FATECS 1 / 108


Introdução

Circuitos Combinacionais é um tema importante da Eletrônica


Digital, pois podemos compreender o funcionamento de circuitos
muito utilizados na construção de sistemas digitais, tais como:
Somadores
Subtratores
Circuitos que executam prioridades
Codificadores
Decodificares
etc.
Circuito Combinacional é aquele cuja saı́da depende única e,
exclusivamente, das combinações entre as variáveis de entrada.

Alessandra Hauck Sistemas Digitais FATECS 2 / 108


Introdução

Podemos utilizar um circuito combinacional para solucionar


problemas em que necessitamos de uma resposta, quando
acontecerem determinadas situações, que são representadas pelas
variáveis de entrada.
Para construir esses circuitos, precisamos de suas expressões
caracterı́sticas, que são obtidas das tabelas-verdade, que
representam essas situações.

Alessandra Hauck Sistemas Digitais FATECS 3 / 108


Introdução

A figura abaixo mostra a sequência do processo, em que, a partir


da situação, obtemos a tabela-verdade e, a partir dela, por meio
das técnicas (já conhecidas), obtemos a expressão simplificada e o
circuito final.

Alessandra Hauck Sistemas Digitais FATECS 4 / 108


Projetos de Circuitos Combinacionais

A figura abaixo mostra o esquema geral de um circuito


combinacional composto:
pelas variáveis de entrada,
o circuito propriamente dito, e
sua(s) saı́da(s).

Alessandra Hauck Sistemas Digitais FATECS 5 / 108


Circuitos Combinacionais

Circuitos com 2 Variáveis

Alessandra Hauck Sistemas Digitais FATECS 6 / 108


Circuitos com 2 Variáveis

A figura a seguir representa o cruzamento das ruas A e B.

Alessandra Hauck Sistemas Digitais FATECS 7 / 108


Circuitos com 2 Variáveis

Neste cruzamento, queremos instalar um sistema automático para


os semáforos com as seguintes caracterı́sticas:
1 Quando houver carros transitando somente na Rua B, o semáforo 2
deve permanecer verde;
2 Quando houver carros transitando somente na Rua A, o semáforo 1
deve permanecer verde;
3 Quando houver carros transitando nas Ruas A e B, é preciso abrir o
semáforo 1, pois a Rua A é preferencial.

Alessandra Hauck Sistemas Digitais FATECS 8 / 108


Circuitos com 2 Variáveis

Para solucionar este problema, vamos montar um circuito lógico e


sua expressão.
Vamos estabelecer as seguintes convenções, para obter a
tabela-verdade:
a Existência de carro na Rua A : A = 1
b Não existência de carro na Rua A : A = 0 ou A = 1
c Existência de carro na Rua B : B = 1
d Não existência de carro na Rua B : B = 0 ou B = 1
e Verde do semáforo 1 aceso: V1 = 1
f Verde do semáforo 2 aceso: V2 = 1
g Quando V1 = 1:
Vermelho do semáforo 1 apagado: Vm1 = 0
Verde do semáforo 2 apagado: V2 = 0
Vermelho do semáforo 2 aceso: Vm2 = 1
h Quando V2 = 1: V1 = 0, Vm2 = 0 e Vm1 = 1

Alessandra Hauck Sistemas Digitais FATECS 9 / 108


Circuitos com 2 Variáveis - Tabela-verdade

Situação 0 (A = 0 e B = 0): ausência de carros nas Ruas A e


B ⇒ vamos adotar que verde do semáforo 2 fica aceso, pois tanto
faz qual semáforo permanece aceso.
Situação 1 (A = 0 e B = 1): ausência de carros na Rua A e
presença de carros na Rua B ⇒ verde no semáforo 2 aceso
(V2 = 1).
Situação 2 (A = 1 e B = 0): ausência de carros na Rua B e
presença de carros na Rua A ⇒ verde no semáforo 1 aceso
(V1 = 1).
Situação 3 (A = 1 e B = 1): presença de carros nas Ruas A e
B ⇒ verde no semáforo 1 aceso, pois a Rua A é preferencial
(V1 = 1).

Alessandra Hauck Sistemas Digitais FATECS 10 / 108


Circuitos com 2 Variáveis - Tabela-verdade

A B V1 Vm1 V2 Vm2
0 0 0 1 1 0
0 1 0 1 1 0
1 0 1 0 0 1
1 1 1 0 0 1

Vamos transportar a tabela para mapas de Karnaugh para


obtermos as expressões simplificadas das saı́das V1 , V2 , Vm1 e Vm2

Alessandra Hauck Sistemas Digitais FATECS 11 / 108


Circuitos com 2 Variáveis - Mapa de Karnaugh

Alessandra Hauck Sistemas Digitais FATECS 12 / 108


Circuitos com 2 Variáveis

Pela tabela e pelos mapas, nota-se que as expressões de V1 e Vm2


são idênticas, o mesmo ocorre com V2 e Vm1
Logo, as expressões simplificadas são:
V1 = Vm2 = A
V2 = Vm1 = A
A figura abaixo mostra o circuito a partir dessas expressões:

Alessandra Hauck Sistemas Digitais FATECS 13 / 108


Circuitos Combinacionais

Circuitos com 3 Variáveis

Alessandra Hauck Sistemas Digitais FATECS 14 / 108


Circuitos com 3 Variáveis
A figura abaixo é o esquema de um circuito lógico que permite
controlar uma bomba para encher uma caixa d’água no alto de um
edifı́cio, a partir de outra (reservatório) colocada no térreo.
Os circuitos dispostos nas caixas, devem atuar na bomba e em
uma eletroválvula ligada à canalização da entrada.

Alessandra Hauck Sistemas Digitais FATECS 15 / 108


Circuitos com 3 Variáveis

Estabelecendo as convenções, temos:


a Sensores A, B e C:
Presença de água = nı́vel 1
Ausência de água = nı́vel 0
b Bomba Bo:
Ligada = nı́vel 1
Desligada = nı́vel 0
c Eletroválvula Ev:
Ligada = nı́vel 1
Desligada = nı́vel 0

Alessandra Hauck Sistemas Digitais FATECS 16 / 108


Circuitos com 3 Variáveis - Tabela-verdade

Caso 0 (A = 0, B = 0 e C = 0): ausência de água nos 3


sensores ⇒ ligar a eletroválvula (Ev = 1) para abastecer a caixa 1
e não ligar a Bomba (Bo = 0), pois não há água no sensor B.
Caso 1 (A = 0, B = 0 e C = 1): ligar a eletroválvula (Ev =
1) e não ligar a Bomba (Bo = 0), pois a caixa 1 está vazia e a
caixa 2, cheia.
Caso 2 (A = 0, B = 1 e C = 0): ligar a Bomba (Bo = 1) e a
eletroválvula (Ev = 1), pois há água no sensor B, e os demais
sensores não.
Caso 3 (A = 0, B = 1 e C = 1): ligar a eletroválvula (Ev =
1) e não ligar a Bomba (Bo = 0), pois a caixa 1 está incompleta e
a caixa 2, cheia.

Alessandra Hauck Sistemas Digitais FATECS 17 / 108


Circuitos com 3 Variáveis - Tabela-verdade

Caso 4 (A = 1, B = 0 e C = 0): Caso impossı́vel de ocorrer,


pois, representa que, na caixa 1, existe água somente no sensor A,
e não no sensor B ⇒ Vamos considerar esse caso como uma
condição irrelevante (Ev = X e Bo = X).
Caso 5 (A = 1, B = 0 e C = 1): Ocorre o mesmo que com o
Caso 4 ⇒ então Ev = X e Bo = X.
Caso 6 (A = 1, B = 1 e C = 0): ligar a Bomba (Bo = 1) e
desligar a eletroválvula (Ev = 0), pois a caixa 1 está cheia e a
caixa 2, não.
Caso 7 (A = 1, B = 1 e C = 1): não devemos ligar a
eletroválvula (Ev = 0) nem a Bomba (Bo = 0), pois as duas caixas
estão cheias.

Alessandra Hauck Sistemas Digitais FATECS 18 / 108


Circuitos com 3 Variáveis - Tabela-verdade

A B C Ev Bo
0 0 0 1 0
0 0 1 1 0
0 1 0 1 1
0 1 1 1 0
1 0 0 X X
1 0 1 X X
1 1 0 0 1
1 1 1 0 0

Alessandra Hauck Sistemas Digitais FATECS 19 / 108


Circuitos com 3 Variáveis - Mapa de Karnaugh

Portanto, as expressões simplificadas são:


Ev = A
Bomba Bo = B · C

Alessandra Hauck Sistemas Digitais FATECS 20 / 108


Circuitos com 3 Variáveis

Conclusão:
A eletroválvula funcionará (Ev = 1) apenas na ausência de água no
sensor A (Ev = A)
A Bomba funcionará (Bo = 1) na presença de água no sensor B e
na ausência de água no sensor C (Bo = B · C)
A figura abaixo mostra o circuito lógico obtido a partir das
expressões simplificadas:

Alessandra Hauck Sistemas Digitais FATECS 21 / 108


Circuitos Combinacionais

Circuitos com 4 Variáveis

Alessandra Hauck Sistemas Digitais FATECS 22 / 108


Circuitos com 4 Variáveis

Uma indústria possui 4 máquinas de alta potência, podendo ser


ligadas, no máximo, 2 delas simultaneamente.
A figura abaixo é o esquema de um circuito lógico que efetua essa
controle, respeitando a prioridade de funcionamento da máquina 1
sobre a 2, da 2 sobre a 3 e da 3 sobre a 4.

A entrada A aciona a
máquina 1 (M1 )
A entrada B aciona a
máquina 2 (M2 )
A entrada C aciona a
máquina 3 (M3 )
A entrada D aciona a
máquina 4 (M4 )

Alessandra Hauck Sistemas Digitais FATECS 23 / 108


Circuitos com 4 Variáveis

Variáveis de entrada:
Comandos de entrada para acionar as máquinas: A, B, C e D
Convenções:
liga = nı́vel 1
desliga = nı́vel 0
Saı́das de acionamento:
Máquinas: M1 , M2 , M3 e M4
Convenções:
liga = nı́vel 1
desliga = nı́vel 0

Alessandra Hauck Sistemas Digitais FATECS 24 / 108


Circuitos com 4 Variáveis - Tabela-verdade

Alessandra Hauck Sistemas Digitais FATECS 25 / 108


Circuitos com 4 Variáveis - Mapas de Karnaugh

Alessandra Hauck Sistemas Digitais FATECS 26 / 108


Circuitos com 4 Variáveis - Mapas de Karnaugh

Conclusão:
As máquinas M1 e M2 serão acionadas quando houver solicitação
(M1 = A = 1 ou M2 = B = 1), pois elas são prioritárias em relação
às outras
A máquina M3 é acionada quando C = 1, e, no máximo, uma das
máquinas mais prioritárias M1 ou M2 (M3 = A · C + B · C)
A máquina M4 é acionada quando D = 1, e, no máximo, uma das
máquinas mais prioritárias M1 ou M2 ou M3
(M4 = A · C · D + A · B · D + B · C · D)

Alessandra Hauck Sistemas Digitais FATECS 27 / 108


Circuitos com 4 Variáveis
A figura abaixo mostra o circuito lógico obtido a partir das
expressões simplificadas:

Alessandra Hauck Sistemas Digitais FATECS 28 / 108


Circuitos Combinacionais

Código BCD 8421

Alessandra Hauck Sistemas Digitais FATECS 29 / 108


Código BCD 8421

BCD significa Binary Coded Decimal, ou seja, uma codificação


do Sistema Decimal em Sistema Binário.
8421 significa os valores dos algarismos de um dado número
binário, ou seja, 23 , 22 , 21 e 20 .
A tabela a seguir mostra a formação do Código BCD 8421.

Alessandra Hauck Sistemas Digitais FATECS 30 / 108


Código BCD 8421 - Tabela

Alessandra Hauck Sistemas Digitais FATECS 31 / 108


Circuitos Combinacionais

Código 9876543210

Alessandra Hauck Sistemas Digitais FATECS 32 / 108


Código 9876543210

É um código de 10 bits, ou seja, 10 saı́das, onde somente uma


saı́da vale 1 em cada caso, o que fará com que o algarismo
correspondente a essa saı́da acenda.
A tabela a seguir mostra a formação do Código 9876543210.

Alessandra Hauck Sistemas Digitais FATECS 33 / 108


Código 9876543210 - Tabela

Alessandra Hauck Sistemas Digitais FATECS 34 / 108


Circuitos Combinacionais

Codificadores

Alessandra Hauck Sistemas Digitais FATECS 35 / 108


Codificadores

Codificador é o circuito combinacional que torna possı́vel a


passagem de um código conhecido para um desconhecido.
Ex.: circuito inicial de uma calculadora, que transforma uma
entrada decimal, por meio do sistema de chaves de um teclado, em
saı́da binária, para que o circuito interno processe e faça a
operação.

Alessandra Hauck Sistemas Digitais FATECS 36 / 108


Codificador Decimal/Binário

Transforma um código decimal em binário (BCD 8421), fazendo:


A entrada do código decimal é feita por meio de um conjunto de
chaves numeradas de 0 a 9
A saı́da é feita por 4 fios, que fornecem um código binário de 4 bits,
que corresponde à chave acionada.
A figura abaixo mostra a estrutura geral desse sistema, onde:
O nı́vel 0 significa que a chave está fechada
O nı́vel 1 significa que a entrada é vazia

Alessandra Hauck Sistemas Digitais FATECS 37 / 108


Codificador Decimal/Binário - Tabela-verdade

A tabela-verdade abaixo relaciona cada chave de entrada decimal


com a respectiva saı́da em binário.

Chave A B C D
Ch0 0 0 0 0
Ch1 0 0 0 1
Ch2 0 0 1 0
Ch3 0 0 1 1
Ch4 0 1 0 0
Ch5 0 1 0 1
Ch6 0 1 1 0
Ch7 0 1 1 1
Ch8 1 0 0 0
Ch9 1 0 0 1

Alessandra Hauck Sistemas Digitais FATECS 38 / 108


Codificador Decimal/Binário - Tabela-verdade

Pela tabela, conclui-se que:


A = 1 ⇒ se as chaves Ch8 ou Ch9 for acionada
B = 1 ⇒ se as chaves Ch4, Ch5, Ch6 ou Ch7 for acionada
C = 1 ⇒ se as chaves Ch2, Ch3, Ch6 ou Ch7 for acionada
D = 1 ⇒ se as chaves Ch1, Ch3, Ch5, Ch7 ou Ch9 for acionada
Para construir o circuito, utilizaremos uma porta NAND (NE) em
cada saı́da, pois ela fornece nı́vel 1 quando qualquer uma de suas
entradas estiver no nı́vel 0 (situação compatı́vel com a convenção
adotada para o conjunto de chaves).
A ligação das entradas de cada porta será feita (conforme a análise
efetuada) às chaves responsáveis pelos nı́veis 1 de cada saı́da.
O circuito é apresentado a seguir:

Alessandra Hauck Sistemas Digitais FATECS 39 / 108


Codificador Decimal/Binário
Pela figura, nota-se que a chave Ch0 não está ligada a nenhuma das
entradas das portas, sendo irrelevante o seu acionamento, pois a saı́da
também será igual 0 (A = B = C = D = 0) quando nenhuma das
chaves for acionada.

Alessandra Hauck Sistemas Digitais FATECS 40 / 108


Circuitos Combinacionais

Decodificadores

Alessandra Hauck Sistemas Digitais FATECS 41 / 108


Decodificadores

Decodificador é o circuito que faz o inverso de um codificador,


ou seja, passa um código desconhecido para um conhecido.
Ex.: um circuito que recebe o resultado da operação em binário e
transforma-o em saı́da decimal, na forma compatı́vel para um
mostrador digital apresentar os algarismos.

Alessandra Hauck Sistemas Digitais FATECS 42 / 108


Observação

Os termos Codificador e Decodificador diferenciam-se em


função do referencial, ou seja:
Para o usuário da calculadora, o sistema de entrada é um
Codificador e,
Para o processador será um Decodificador, pois passa de um
código desconhecido para ele (decimal), para um código conhecido
(binário).

Alessandra Hauck Sistemas Digitais FATECS 43 / 108


Decodificador Binário/Decimal

A figura abaixo mostra a estrutura geral de um Decodificador


Binário/Decimal.

A seguir, temos a tabela-verdade do circuito, onde as entradas são


bits do Código BCD 8421 e as saı́das são os respectivos bits do
Código decimal 9876543210.

Alessandra Hauck Sistemas Digitais FATECS 44 / 108


Decodificador Binário/Decimal - Tabela

Alessandra Hauck Sistemas Digitais FATECS 45 / 108


Decodificador Binário/Decimal

O Código BCD 8421 não tem números maiores que 9. Logo, tanto
faz o valor assumido nas possibilidades excedentes, visto que,
quando passarmos do código BCD 8421 para o código 9876543210,
estas não ocorrerão.
Consequentemente, nos mapas de Karnaugh, vamos considerar
esses casos como condições irrelevantes.

Alessandra Hauck Sistemas Digitais FATECS 46 / 108


Decodificador Binário/Decimal - Mapas de Karnaugh

Alessandra Hauck Sistemas Digitais FATECS 47 / 108


Decodificador Binário/Decimal - Mapas de Karnaugh

Alessandra Hauck Sistemas Digitais FATECS 48 / 108


Decodificador Binário/Decimal - Circuito

Alessandra Hauck Sistemas Digitais FATECS 49 / 108


Circuitos Combinacionais

Decodificador para Display


de 7 Segmentos

Alessandra Hauck Sistemas Digitais FATECS 50 / 108


Decodificador para Display de 7 Segmentos

O Display de 7 Segmentos
possibilita escrever números
decimais de 0 a 9 e alguns
outros sı́mbolos, que podem
ser letras ou sinais.
A figura ao lado representa
um display de 7 segmentos
genérico, com a nomenclatura
de identificação dos segmentos
utilizada em manuais.

Alessandra Hauck Sistemas Digitais FATECS 51 / 108


Decodificador para Display de 7 Segmentos - Exemplo
Vamos criar um decodificador para, a partir de um código binário
(BCD 84221), escrever a sequência de 0 a 9 em um display de 7
segmentos.
A figura abaixo mostra o esquema geral desse decodificador:

Para criar esse decodificador, devemos verificar, em cada caractere,


os segmentos que devem ser acesos e atribuir nı́vel 1, em função da
respectiva entrada em código binário.
A tabela a seguir mostra a sequência de caracteres, o respectivo
código de entrada e os nı́veis aplicados em cada seguimento para
que isso ocorra.
Alessandra Hauck Sistemas Digitais FATECS 52 / 108
Decodificador para Display de 7 Segmentos - Tabela

Alessandra Hauck Sistemas Digitais FATECS 53 / 108


Decodificador para Display de 7 Segmentos - Mapas de
Karnaugh

Alessandra Hauck Sistemas Digitais FATECS 54 / 108


Decodificador para Display de 7 Segmentos - Mapas de
Karnaugh

Alessandra Hauck Sistemas Digitais FATECS 55 / 108


Decodificador para Display de 7 Segmentos - Circuito

Alessandra Hauck Sistemas Digitais FATECS 56 / 108


Circuitos Combinacionais

Circuitos Aritméticos

Alessandra Hauck Sistemas Digitais FATECS 57 / 108


Circuitos Aritméticos

Circuitos Aritméticos são utilizados, principalmente, para


construir a ULA (Unidade Lógica Aritmética) dos
microprocessadores.
Vamos estudar os principais Circuitos Aritméticos e seus
subsistemas derivados.

Alessandra Hauck Sistemas Digitais FATECS 58 / 108


Circuitos Combinacionais

Circuitos Aritméticos
Meio Somador

Alessandra Hauck Sistemas Digitais FATECS 59 / 108


Meio Somador

Vamos relembrar alguns tópicos importantes da soma de 2


números binários:

Meio Somador possibilita efetuar a soma de números binários


com um algarismo.

Alessandra Hauck Sistemas Digitais FATECS 60 / 108


Meio Somador

Abaixo temos a tabela-verdade da soma de 2 números binários de


um algarismo:

Representando cada número por 1 bit, pode-se, então, montar um


circuito que tem como entradas A e B, e como saı́da, a soma dos
algarismos (S) e o respectivo transporte de saı́da (Ts).

Alessandra Hauck Sistemas Digitais FATECS 61 / 108


Meio Somador

As expressões caracterı́sticas do circuito, extraı́das da


tabela-verdade são:
S = A⊕B
Ts = AB
A figura abaixo mostra o circuito obtido a partir dessas expressões:

Alessandra Hauck Sistemas Digitais FATECS 62 / 108


Meio Somador

A figura abaixo mostra a representação em bloco do circuito


anterior:

Esse circuito Meio Somador é também conhecido como half


adder, sendo a saı́da de transporte denominada carry out.

Alessandra Hauck Sistemas Digitais FATECS 63 / 108


Circuitos Combinacionais

Circuitos Aritméticos
Somador Completo

Alessandra Hauck Sistemas Digitais FATECS 64 / 108


Somador Completo

Meio Somador possibilita efetuar a soma de números binários


com um algarismo.
Para fazer a soma de números binários com mais algarismos, o
Meio Somador torna-se insuficiente, pois não possibilita a
introdução do transporte de entrada proveniente da coluna
anterior.
Ex.: Vamos analisar a soma 11102 + 1102 :

Alessandra Hauck Sistemas Digitais FATECS 65 / 108


Somador Completo

Coluna 1: resultado ⇒ saı́da 0


(0 + 0) e Ts = 0 para a
coluna 2
Coluna 2: resultado ⇒ saı́da 0
(1 + 1) e ”vai 1”(Ts = 1)
para a coluna 3

Coluna 3: resultado ⇒ saı́da 1 (1 + 1 + Ts) e ”vai 1”(Ts = 1)


para a coluna 4
Coluna 4: resultado ⇒ saı́da 0 (1 + 0 + Ts) e ”vai 1”(Ts = 1)
para a coluna 5
Coluna 5: resultado ⇒ saı́da 1 (Ts)

Alessandra Hauck Sistemas Digitais FATECS 66 / 108


Somador Completo

Logo, para fazer a soma de 2 números binários com mais


algarismos, basta somar coluna a coluna (começando da direita
para esquerda), levando em conta o transporte de entrada, que
é o Ts d coluna anterior.
Portanto, o Somador Completo é um circuito para efetuar a
soma completa de uma coluna, considerando o transporte de
entrada (Ts).
A seguir temos a tabela-verdade desse circuito.

Alessandra Hauck Sistemas Digitais FATECS 67 / 108


Somador Completo - Tabela-verdade

Alessandra Hauck Sistemas Digitais FATECS 68 / 108


Somador Completo - Mapas de Karnaugh

Figura: S = A ⊕ B ⊕ TE Figura: TS = BTE + ATE + AB

Alessandra Hauck Sistemas Digitais FATECS 69 / 108


Somador Completo - Circuito

Alessandra Hauck Sistemas Digitais FATECS 70 / 108


Somador Completo

Representação em bloco do
circuito anterior:
Ex.: Monte um sistema em
bloco que efetue a soma de 2
números de 4 bits, conforme o
esquema abaixo:

A3 A2 A1 A0
O Somador Completo + B3 B2 B1 B0
também é conhecido como S4 S3 S2 S1 S0
full adder, onde o transporte
de entrada é denominado
carry in.

Alessandra Hauck Sistemas Digitais FATECS 71 / 108


Somador Completo em Bloco - Exemplo

Coluna 1: Vamos usar um Meio Somador para soma dos bits A0


e B0 , pois não existe transporte de entrada (TE ).
Para as demais colunas: Vamos usar Somadores Completos,
pois precisamos considerar os transportes provenientes das colunas
anteriores (TS )
A figura a seguir mostra como será montado esse sistema.

Alessandra Hauck Sistemas Digitais FATECS 72 / 108


Somador Completo em Bloco - Exemplo

Alessandra Hauck Sistemas Digitais FATECS 73 / 108


Somador Completo em Bloco

Generalizando para um sistema que efetua a soma de 2 número de


m bits (m = n + 1), temos:
An An−1 ··· A1 A0
+ Bn Bn−1 ··· B1 B0
Sn+1 Sn Sn−1 ··· S1 S0

Alessandra Hauck Sistemas Digitais FATECS 74 / 108


Circuitos Combinacionais

Circuitos Aritméticos
Somador Completo a partir
de Meios Somadores

Alessandra Hauck Sistemas Digitais FATECS 75 / 108


Somador Completo a partir de Meios Somadores

Vamos construir um somador completo a partir de 2 meios


somadores.
Vamos analisar as expressões de ambos os blocos:

S = A ⊕ B ⊕ TE
S =X ⊕Y TS = ABTE + ABTE + ABTE +
TS = XY + ABTE

Alessandra Hauck Sistemas Digitais FATECS 76 / 108


Somador Completo a partir de Meios Somadores

Fatorando a Expressão de TS , temos:

TS = ABTE + ABTE + ABTE + ABTE


| {z } | {z }
TE (AB+AB) AB(TE +TE )
TS = TE (AB + AB) + AB(TE + TE )
| {z }
=1
TS = TE (A ⊕ B) + AB

Alessandra Hauck Sistemas Digitais FATECS 77 / 108


Somador Completo a partir de Meios Somadores

Ligando A e B nas entrada do Meio Somado 1, temos:

Ligando a saı́da S do Meio Somador 1 à entrada X do Meio


Somador 2 e à entrada Y deste, a variável TE , temos:

Alessandra Hauck Sistemas Digitais FATECS 78 / 108


Somador Completo a partir de Meios Somadores
A saı́da S do Meio Somador 2 apresenta a soma completa de 2
números.
As saı́das TS1 e TS2 , são os termos da expressão de TS de um
Somador Completo.
Logo, a soma dessas 2 saı́das (porta OU), gera o TS de um
Somador Completo.
A figura abaixo mostra o circuito completo com essa ligação:

Alessandra Hauck Sistemas Digitais FATECS 79 / 108


Circuitos Combinacionais

Circuitos Aritméticos
Meio Subtrator

Alessandra Hauck Sistemas Digitais FATECS 80 / 108


Meio Subtrator

Vamos relembrar alguns tópicos importantes da subtração de


números binários:

O Meio Subtrator possibilita efetuar a subtração de números


binários com um algarismo.

Alessandra Hauck Sistemas Digitais FATECS 81 / 108


Meio Subtrator

Abaixo temos a tabela-verdade da subtração de 2 números


binários de um algarismo:

Representando cada número por 1 bit, pode-se, então, montar um


circuito que tem como entradas A e B, e como saı́da, a subtração
dos algarismos (S) e o respectivo transporte de saı́da (Ts).

Alessandra Hauck Sistemas Digitais FATECS 82 / 108


Meio Subtrator

As expressões caracterı́sticas do circuito, extraı́das da


tabela-verdade são:
S = A⊕B
Ts = AB
A figura abaixo mostra o circuito obtido a partir dessas expressões:

Alessandra Hauck Sistemas Digitais FATECS 83 / 108


Meio Subtrator

A figura abaixo mostra a representação em bloco do circuito


anterior:

Esse circuito Meio Subtrator é também conhecido como half


subtractor.

Alessandra Hauck Sistemas Digitais FATECS 84 / 108


Circuitos Combinacionais

Circuitos Aritméticos
Subtrator Completo

Alessandra Hauck Sistemas Digitais FATECS 85 / 108


Subtrator Completo

Meio Subtrator possibilita efetuar a subtração de números


binários com um algarismo.
Para fazer a subtração de números binários com mais algarismos,
o Meio Subtrator torna-se insuficiente, pois não possibilita a
introdução do transporte de entrada (TE ) proveniente da coluna
anterior.
Ex.: Vamos analisar a subtração 11002 − 112 :

Alessandra Hauck Sistemas Digitais FATECS 86 / 108


Subtrator Completo

Coluna 1: resultado ⇒ saı́da 1


(0 - 1); TS = 1 ”pede
emprestado”da coluna 2 que
”pede emprestado”da coluna
3, ficando com 10 - 1 = 1; e
TE = 0 (não empresta a
ninguém).

Coluna 2: resultado ⇒ saı́da 0 (1 - 1); TS = 1, pois ”pediu


emprestado”da coluna 3; e TE = 1, pois emprestou 1 para a coluna
1
Coluna 3: resultado ⇒ saı́da 0 (0 - 0); TS = 0, pois não ”pediu
emprestado”; e TE = 1, pois emprestou 1 para a coluna 2
Coluna 4: resultado ⇒ saı́da 1 (1 - 0); TS = 0, pois não ”pediu
emprestado”; e TE = 0, pois não emprestou 1 para a coluna 3

Alessandra Hauck Sistemas Digitais FATECS 87 / 108


Subtrator Completo

Logo, para fazer a subtração de 2 números binários com mais


algarismos, basta subtrair coluna a coluna (começando da direita
para esquerda), levando em conta o transporte de entrada, que
é o Ts d coluna anterior.
Portanto, o Subtrator Completo é um circuito para efetuar a
subtração completa de uma coluna, considerando o transporte
de entrada (Ts).
A seguir temos a tabela-verdade desse circuito.

Alessandra Hauck Sistemas Digitais FATECS 88 / 108


Subtrator Completo - Tabela-verdade

Alessandra Hauck Sistemas Digitais FATECS 89 / 108


Subtrator Completo - Mapas de Karnaugh

Figura: S = A ⊕ B ⊕ TE Figura: TS = AB + ATE + BTE

Alessandra Hauck Sistemas Digitais FATECS 90 / 108


Subtrator Completo - Circuito

Alessandra Hauck Sistemas Digitais FATECS 91 / 108


Subtrator Completo

Representação em bloco do circuito anterior:

O Subtrator Completo também é conhecido como full


subtractor.
Generalizando para um sistema que efetua a subtração de 2
número de m bits (m = n − 1).
A figura a seguir mostra um sistema subtrator genérico para esse
caso.

Alessandra Hauck Sistemas Digitais FATECS 92 / 108


Subtrator Completo em Bloco

Se o número An · · · A0 (minuendo) for maior ou igual a Bn · · · B0


(subtraendo), a saı́da de transporte (TS ) do último bloco torna-se
desnecessária
Porém, TS pode ser utilizada no caso contrário, para sinalizar que
o resultado é negativo, estando, então, em Complemento de 2
Alessandra Hauck Sistemas Digitais FATECS 93 / 108
Circuitos Combinacionais

Circuitos Aritméticos
Subtrator Completo a
partir de Meios Subtratores

Alessandra Hauck Sistemas Digitais FATECS 94 / 108


Subtrator Completo a partir de Meios Subtratores

Vamos construir um subtrator completo a partir de 2 meios


subtratores.
Vamos analisar as expressões de ambos os blocos:

S = A ⊕ B ⊕ TE
S =X ⊕Y
TS = A · B · TE + A · B · TE +
TS = XY
+ A · B · TE + A · B · TE

Alessandra Hauck Sistemas Digitais FATECS 95 / 108


Subtrator Completo a partir de Meios Subtratores

Fatorando a Expressão de TS , temos:

TS = A · B · TE + A · B · TE + A · B · TE + A · B · TE
| {z } | {z }
TE (A·B+A·B) A·B(TE +TE )
TS = TE (A · B + A · B) + AB(TE + TE )
| {z }
=1
TS = TE (A ⊙ B) + AB

Alessandra Hauck Sistemas Digitais FATECS 96 / 108


Subtrator Completo a partir de Meios Subtratores
Ligando A e B nas entrada do Meio Subtrator 1, temos:

Ligando a saı́da S do Meio Subtrator 1 à entrada X do Meio


Subtrator 2 e à entrada Y deste, a variável TE , temos:

Alessandra Hauck Sistemas Digitais FATECS 97 / 108


Subtrator Completo a partir de Meios Subtratores
A saı́da S do Meio Subtrator 2 apresenta a subtração completa de
2 números.
As saı́das TS1 e TS2 , são os termos da expressão de TS de um
Subtrator Completo.
Logo, a soma (porta OU) dessas 2 saı́das, TS1 e TS2 , gera o TS de
um Subtrator Completo.
A figura abaixo mostra o circuito completo com essa ligação:

Alessandra Hauck Sistemas Digitais FATECS 98 / 108


Circuitos Combinacionais

Circuitos Aritméticos
Somador/Subtrator
Completo

Alessandra Hauck Sistemas Digitais FATECS 99 / 108


Somador/Subtrator Completo

Somador/Subtrator Completo é um circuito que efetua as 2


operações (soma e subtração).
O Somador/Subtrator Completo possui outra entrada que:
permanecendo em nı́vel 0, faz o circuito efetuar uma soma
completa, e
permanecendo em nı́vel 1, faz o circuito efetuar uma subtração
completa.
A seguir temos a tabela-verdade desse circuito, sendo que M é a
variável de controle, onde:
M = 0 ⇒ executa a operação de soma
M = 1 ⇒ executa a operação de subtração

Alessandra Hauck Sistemas Digitais FATECS 100 / 108


Somador/Subtrator Completo - Tabela-verdade

Alessandra Hauck Sistemas Digitais FATECS 101 / 108


Somador/Subtrator Completo - Mapas de Karnaugh

Do mapa, obtemos:

S = A · B · TE + A · B · TE + A · B · TE + A · B · TE

Alessandra Hauck Sistemas Digitais FATECS 102 / 108


Somador/Subtrator Completo - Mapas de Karnaugh

Simplificando a expressão, temos:

S = A · B · TE + A · B · TE + A · B · TE + ABTE
| {z } | {z }
A(BTE +BTE ) A(B·TE +BTE )
S = A(BTE + BTE ) + A(B · TE + BTE )
| {z } | {z }
A(B⊕TE ) A(B⊙TE )
S = A(B ⊕ TE ) + A(B ⊙ TE )
| {z }
(B⊕TE )
Fazendo B ⊕ TE = X
S = AX + AX}
| {z
A⊕X
S =A⊕X
Como X = B ⊕ TE , temos:
S = A ⊕ B ⊕ TE

Alessandra Hauck Sistemas Digitais FATECS 103 / 108


Somador/Subtrator Completo - Mapas de Karnaugh

Do mapa, obtemos:

TS = BTE + M AB + M ATE + M AB + M ATE

Alessandra Hauck Sistemas Digitais FATECS 104 / 108


Somador/Subtrator Completo - Mapas de Karnaugh

Simplificando a expressão, temos:

TS = BTE + |M AB {z
+ M AB} + M ATE M ATE
| {z }
B(M A+M A) TE (M A+M )
TS = BTE + B(M
| A {z
+ M A}) + TE (M
| A{z+ M})
M ⊕A M ⊕A
TS = BTE + B(M ⊕ A) + TE (M ⊕ A)
| {z }
(M ⊕A)(B+TE )
TS = BTE + (M ⊕ A)(B + TE )

Alessandra Hauck Sistemas Digitais FATECS 105 / 108


Somador/Subtrator Completo - Circuito

Alessandra Hauck Sistemas Digitais FATECS 106 / 108


Somador/Subtrator Completo

A figura abaixo mostra a representação do circuito


Somador/Subtrator Completo em bloco:

Alessandra Hauck Sistemas Digitais FATECS 107 / 108


Circuitos Aritméticos - Quadro Resumo

Alessandra Hauck Sistemas Digitais FATECS 108 / 108

Você também pode gostar