Buscar

Circuitos lógicos combinacionais

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

DESCRIÇÃO
Apresentação de circuitos combinacionais clássicos e suas aplicações em sistemas digitais.
PROPÓSITO
Conhecer os circuitos combinacionais clássicos para compreender a estrutura de sistemas digitais de
maior complexidade, como a dos computadores.
OBJETIVOS
MÓDULO 1
Descrever o funcionamento dos circuitos aritméticos: somadores e subtratores
MÓDULO 2
Descrever o funcionamento dos codificadores e decodificadores
MÓDULO 3
Descrever o funcionamento de multiplexadores, demultiplexadores e buffers
INTRODUÇÃO
A característica que define um circuito como combinacional é que sua saída depende única e
exclusivamente do estado atual das variáveis de entrada. Neste tema, estudaremos circuitos
combinacionais clássicos muito utilizados em sistemas digitais no geral, do teclado de calculadoras ao
núcleo dos processadores de computadores, celulares etc.
ESTUDO DOS CIRCUITOS COMBINACIONAIS
MÓDULO 1
 Descrever o funcionamento dos circuitos aritméticos: somadores e subtratores
PRIMEIRAS PALAVRAS
Neste módulo, estudaremos os circuitos aritméticos, responsáveis por realizar operações como soma e
subtração de números binários. Uma das utilizações mais notáveis desses circuitos é para compor a
unidade lógica aritmética (ULA), o “coração” dos processadores.
REPRESENTAÇÃO NUMÉRICA NOS SISTEMAS
DIGITAIS
Antes de abordarmos os circuitos aritméticos, devemos falar das diferenças entre as contas feitas na
matemática tradicional e as realizadas em sistemas digitais.
Quando realizamos operações matemáticas, podemos utilizar quantos dígitos forem necessários para
escrever o resultado. Isso quer dizer que os números, na matemática tradicional, não possuem limites
inferior ou superior.

Porém, em sistemas digitais, eles são representados por um conjunto de bits de tamanho predeterminado,
o que limita a quantidade dos valores que podem ser representados.
Neste tema, trabalharemos com os números inteiros. Eles possuem duas características principais: a
quantidade de bits utilizada e a existência (ou não) de sinal.
O número “sem sinal” é considerado sempre positivo. Então, por exemplo, se tivermos um número inteiro
sem sinal de 1 nibble, ele poderá assumir os valores de 0 (0000b) a 15 (1111b). Vejamos a tabela a
seguir:
NIBBLE
O nibble corresponde a uma sucessão de quatro cifras binárias, em que 1 nibble = 4 bits, 2 nibble = 1 Byte
= 8 bits, 4 nibble = 1 Word = 2 Bytes = 16 bits etc.
Número decimal Nibble correspondente
0 0000
javascript:void(0)
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
10 1010
11 1011
12 1100
13 1101
14 1110
15 1111
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Números inteiros sem sinal de 1 nibble (4 bits). Fonte: (YDUQS, 2020)
Observe que, independentemente do número representado, ele sempre ocupa a quantidade de bits
designada.
 EXEMPLO
Apesar de o número decimal “2” poder ser expresso somente em 2 bits na forma 10b, são utilizados todos
os bits que o sistema emprega na representação numérica, como, por exemplo, 4 bits (como se verifica na
tabela acima: 0010b). A faixa de valores que um número sem sinal pode assumir vai de 0 até , em
que é a quantidade de bits utilizados. No exemplo da tabela, são utilizados 4 bits, sendo possível
representar até .
Ao tratar os números inteiros com sinal, a primeira pergunta que vem à tona é: como devemos
representar um número negativo, já que o computador só entende “0” e “1”?
SUGESTÃO
A primeira sugestão que nos parece viável é considerar o primeiro dígito o de sinal; assim, 0010b
representaria 2, e 1010b o -2. Apesar de intuitiva, essa forma de representação não traz vantagens para a
implementação em hardware.
Então, em vez de utilizá-la, empregaremos a notação em complemento dois para representar os
números negativos. Dessa forma, , onde é o complemento dois do número .
O cálculo do complemento dois é simples: basta inverter todos os bits (esta operação é chamada de
complemento) e somar 1.
 EXEMPLO
Calcule a representação do número -23 em um sistema que utilize 1 byte para os inteiros.
Solução:
2N − 1
N
24 − 1 = 15
−23 = (23)2,C (N)2,C N
Inicialmente, escreveremos o número 23 em binário com 1 byte:
23 = 0001 0111b
A seguir, inverteremos todos os bits, ou seja, calcularemos o complemento:
1110 1000b
Por fim, somaremos 1:
 1110 1000b + 1 = 1110 1001b
Assim, temos que -23 = 1110 1001b.
Utilizando a representação dos negativos em complemento dois, o primeiro bit (o mais significativo) será
sempre um indicativo do sinal. Se ele for 0, o número é positivo; se for 1, negativo. Por isso, este bit é
conhecido como “bit de sinal”.
 ATENÇÃO
Nota: em eletrônica digital, o número 0 é considerado positivo.
Um sistema que utilize bits para armazenar um inteiro com sinal pode representar valores na faixa de
 a . Podemos observar nesta tabela a representação de números inteiros com sinal de 1
nibble:
Número decimal Nibble correspondente
-8 1000
-7 1001
-6 1010
-5 1011
-4 1100
(23)2,C =
N
−2N−1 2N−1 − 1
-3 1101
-2 1110
-1 1111
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Números inteiros com sinal de 1 nibble (4 bits). Fonte: (YDUQS, 2020)
Faremos agora a operação: , utilizando 4 bits para armazenar os números inteiros:6  +  (−4)
Repare que o resultado possui 5 bits, mas, como o sistema utiliza apenas 4 bits, o mais significativo é
desconsiderado. Desse modo, o resultado da operação é: .
Isso mostra que, ao usar a representação dos números negativos com complemento dois, os circuitos
digitais podem fazer a operação de soma com números negativos sem nenhuma alteração.
Note que, se quisermos fazer uma subtração, como, por exemplo, 14 – 8, ela poderá ser feita da seguinte
forma: 14 + (–8). Ou seja, o sistema pode realizá-la por meio de uma soma!
Contudo, para fazer a subtração dessa forma, o circuito deve ser capaz de calcular o complemento dois do
termo que se deseja subtrair. Essa propriedade permite a simplificação do projeto de hardware, uma vez
que não é necessário incluir dois circuitos separados: um para a adição e outro para a subtração.
Neste momento, você pode estar se perguntando:
Como fica a subtração entre os números quando utilizamos a representação sem sinal?
Veja que interessante: a notação em complemento dois também funciona neste caso!
 EXEMPLO
Calcule 202 – 49 utilizando uma representação com 8 bits e sem sinal.
Solução:
Calcularemos inicialmente as representações em binário:
202 = 1100 1010b
49 = 0011 0001b
Agora faremos o cálculo do complemento dois de 49:
 1100 1111b
Somaremos, por fim, 202 + :
 0010b = 2
(49)2,C =
 (49)2,C
Descartando o bit mais significativo, já que o sistema utiliza apenas 8 bits na representação, verificamos
que é o resultado esperado!
Exemplo:
Considerando um número de 8 bits sem sinal e o complemento de , faça o que se pede:
a) Calcule quanto vale em função de .
b) Calcule o valor da expressão , onde “ ” e “ ” são as operações matemáticas de adição e
multiplicação, não as operações lógicas OU e E.
Solução:
a) Temos que 
Logo 
b) Sabemos que .
Então: 
Aplicando a relação do complemento dois em , temos isto:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Para finalizarmos esta parte do estudo, apresentaremos a seguir o conceito de overflow. Como estamos
trabalhando com um número fixo de bits para armazenar os números, é possível que uma operação dê um
resultado que exceda a capacidade de representação daquele sistema.
Por exemplo, utilizando 4 bits e a notação sem sinal, podemos representar, como vimos anteriormente,
valores de 0 a 15. O que ocorre então se somarmos, por exemplo, 10 + 7?
 202 + (49)2,C = 1001 1001b = 153
A ¯̄̄A A
¯̄̄A A
¯̄¯̄¯̄¯̄¯̄¯̄A + 2¯̄̄A + ⋅
A  + ¯̄̄A = 1111 1111b = 28 − 1 = 255
¯̄̄A = 255 − A
−A =  ̄ ¯̄A + 1
¯̄¯̄¯̄¯̄¯̄¯̄A + 2¯̄̄A =   − A −2¯̄̄A − 1
¯̄̄A
¯̄¯̄¯̄¯̄¯̄¯̄A + 2¯̄̄A =   − A + 2A + 2 − 1 = A + 1
Como nosso número é composto por 4 bits, o resultado é 0001b, que representa 1! Ou seja:
10 + 7 = 1
Apesar de este resultado ser incorreto do ponto de vista matemático, é o que ocorre nos sistemas digitais
quando se excede a capacidade de representação.
Tal fenômeno é chamado de overflow. Note que esse transbordamento de dados também pode ocorrer
com os números negativos.
Veja o que acontece quando somamos -6 e -8 utilizando um sistema de representação de 4 bits com sinal:
Vemos que - 6 – 8 = 0010b = 2!
Observando a segunda tabela, podemos perceber que -8 - 1 = 7 e 7 + 1 = -8, assim como, na tabela
anterior, tínhamos visto que 15 + 1 = 0 e 0 - 1 = 15. Isso é conhecido como lógica circular.
Em sistemas digitais, quando ocorre um overflow em uma operação com números inteiros, o resultado
“naturalmente” salta para o extremo oposto da capacidade de representação.
No exemplo visto, a operação -6 -8 poderia ser feita por partes: (-8 - 1)-5 = 7 - 5 = 2.
MEIO SOMADOR (HALF-ADDER)
O projeto de um circuito combinacional segue os seguintes passos:
1º passo: Levantamento das especificações, entradas, saídas do sistema e comportamento desejado;
2º passo: Confecção da tabela verdade;
3º passo: Obtenção da expressão simplificada;
4º passo: Esquematização do circuito.
Destacaremos agora cada um deles para projetar o meio somador:
1º PASSO
Queremos um circuito que some dois bits ( e ) e tenha como saídas o bit resultante ( ) e o carry out (
), que é o bit que pode “sobrar” na operação.
2º PASSO
A tabela verdade da soma é a seguinte:
Ai Bi Co Si
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
3º PASSO
Pela tabela verdade do circuito anterior, temos que:
4º PASSO
Finalmente, podemos sintetizar o circuito do meio somador:
Ai Bi Si
Co
Co =  Ai .  Bi 
Si =  ̄ ¯̄Āi .  Bi + Ai .  ̄ ¯̄Bi = Ai ⊕ Bi
 Meio somador
SOMADOR COMPLETO (FULL-ADDER)
Abordado anteriormente, o meio somador soma 2 bits, mas não pode ser utilizado para somar números
com mais de 1 bit cada. Para resolvermos esse problema, projetaremos agora o somador completo, ou
seja, um circuito capaz de somar 3 bits.
1º PASSO
2º PASSO
3º PASSO
4º PASSO
1º PASSO
Queremos um circuito que some três bits - , e (carry in) – e tenha como saídas o bit resultante (
) e o carry out .
2º PASSO
Ai Bi Ci Si
Fazendo a soma entre os três bits, obtemos a seguinte tabela verdade:
Ci Ai Bi Co Si
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
3º PASSO
Utilizaremos o mapa de Karnaugh para obter as expressões simplificadas de e :Co Si
Colocando e em evidência na expressão de , vemos que:
 Atenção! Para visualização completa da equação utilize a rolagem horizontal
Como e , chegamos a:
Chamando de , temos que:
Logo:
4º PASSO
Podemos finalmente esquematizar o circuito do somador
¯̄̄Ci Ci Si
Si = ¯̄̄Ci(¯̄̄AiBi + Ai
¯̄̄Bi)+Ci(¯̄̄Ai
¯̄̄Bi + AiBi)
¯̄̄AiBi + Ai
¯̄̄Bi =  Ai ⊕ Bi
¯̄̄Ai
¯̄̄Bi + AiBi =  ̄ ¯̄¯̄¯̄¯̄¯̄¯Ai ⊕ Bi
Si =  ̄ ¯̄Ci(Ai ⊕ Bi)+Ci(¯̄¯̄¯̄¯̄¯̄¯̄Ai ⊕ Bi)
Ai ⊕ Bi X
Si =  ̄ ¯̄CiX + Ci
¯̄̄X =  Ci ⊕ X
Si = Ci ⊕(Ai ⊕ Bi) 
 Somador completo
Para a soma de números com mais de 1 bit, podemos cascatear somadores completos. A soma de 2
números de 4 bits ( e ), em que e representam os bits menos
significativos, pode ser realizada com o seguinte circuito:
 Somador de 4 bits
Nesta soma, consideramos que o nível de tensão do referencial terra (0 Volts) corresponde ao nível lógico
0. Analogamente, consideraremos, no resto deste tema, que o nível lógico 1 corresponde à tensão .
Note que o esquema proposto na figura acima realiza a operação de maneira similar ao modo que
fazemos na mão:
Nesta operação, o bit mais significativo do resultado (o carry out do somador completo) já está
desconsiderado por exceder a capacidade de representação. O cascateamento de somadores completos
pode ser estendido para somar dois números com uma quantidade qualquer de bits.
A = A3A2A1A0 B = B3B2B1B0 A0 B0
+VCC
SOMADOR COMPLETO (FULL-ADDER)
SUBTRATOR
Como vimos no tópico que abordava a representação numérica nos sistemas digitais, podemos fazer a
subtração por meio do cálculo do complemento dois do subtraendo. Dessa forma, conseguimos construir
um subtrator a partir do somador.
Utilizaremos como exemplo o circuito da figura acima para fazer um subtrator de quatro bits:
 Subtrator de 4 bits
Note que cada bit da entrada é invertido e que o carry in é utilizado para somar 1, ou seja, calcula-se o
complemento dois de B. Dessa forma, o circuito esquematizado na figura acima possui saída S:
 EXEMPLO
Projete um circuito que realize a soma ou a subtração de um número de 4 bits de acordo com um sinal de
controle que siga a seguinte lógica:
.
Solução:
Para realizar as operações desejadas, podemos nos basear no circuito da figura acima. Porém, para que o
sistema funcione, precisamos achar uma maneira de fazer com que a realização do complemento dois
seja condicionada ao valor da variável .
Examinaremos a tabela verdade da porta XOR:
Porta XOR
X Y S
S = A +   (B)2,C = A − B
Se  { Op = 0,   S = A + B
Op = 1,   S = A − B 
Op
0 0 0
0 1 1
1 0 1
1 1 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Observe que, quando temos que . Por outro lado, se , verifica-se que . Dessa
maneira, podemos gerar o circuito pedido da seguinte forma:
 Circuito somador/subtrator
Observe que, se os bits da entrada são invertidos pelas portas XOR e o carry in é igual a 1.
Portanto, é calculado o complemento dois da entrada , sendo calculado . Já quando os
bits de B não são invertidos e ; logo, calcula-se .
VERIFICANDO O APRENDIZADO
X = 0, S = Y  X = 1 S = ¯̄̄Y
Op = 1, B
B A − B Op = 0,
Ci = 0 A + B
MÓDULO 2
 Descrever o funcionamento dos codificadores e decodificadores
PRIMEIRAS PALAVRAS
Como já verificamos, em eletrônica digital, os sistemas armazenam sequências de bits. Porém,
dependendo da tarefa a ser realizada, esse sequenciamento pode possuir diferentes significados. É
comum que os sistemas digitais precisem mudar o código em que determinadas variáveis estão
expressas, principalmente no início e no final do processamento.
 EXEMPLO
O display de um elevador mostra o andar em que ele se encontra. Mas, para que essa informação seja
disponibilizada, é necessário haver um decodificador que transforme o número binário correspondente ao
andar (dado captado pelos sensores) para o formato apropriado do display.
Neste módulo, conheceremos alguns dos códigos e sistemas codificadores/decodificadores mais
conhecidos.
CÓDIGO BCD
CÓDIGO BCD
BCD é a sigla para binary coded decimal, que significa decimal codificado em binário. Existem vários tipos
de códigos BCD, mas o BCD 8421 é o mais comum. Por isso, muitas vezes, nos referimos ao BCD 8421
simplesmente como BCD.
Neste código, são utilizados quatro dígitos binários para representar cada dígito decimal. No BCD 8421, o
número descrito é o valor de cada digito binário em ordem, ou seja, o código 0110, em BCD 8421,
representa .
 ATENÇÃO
Note que a formação do dígito decimal a partir do código BCD 8421 é igual à formação dos números
binários, mas isso decorre da convenção utilizada pelo código. Essa “coincidência” não acontece em
outros BCD, como, por exemplo, o BCD 7421.
Esta tabela contém os códigos BCD 8421, BCD 7421, BCD 5211 e BCD 2421:
4 +  2 = 6
Decimal BCD 8421 BCD 7421 BCD 5211 BCD 2421
0 0000 0000 0000 0000
1 0001 0001 0001 0001
2 0010 0010 0011 0010
3 0011 0011 0101 0011
4 0100 0100 0111 0100
5 0101 0101 1000 1011
6 0110 0110 1001 1100
7 0111 1000 1011 1101
8 1000 1001 1101 1110
9 1001 1010 1111 1111
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Códigos BCD. Fonte: (YDUQS, 2020)
CÓDIGO9876543210
No código 9876543210, cada dígito decimal é codificado em 10 bits binários de forma que o bit codificado
possua apenas uma saída em nível alto. Tal saída será, como podemos ver nesta tabela, a
correspondente à posição do dígito decimal:
Decimal
bit binário
9 8 7 6 5 4 3 2 1 0
0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 0 0 0 1 0
2 0 0 0 0 0 0 0 1 0 0
3 0 0 0 0 0 0 1 0 0 0
4 0 0 0 0 0 1 0 0 0 0
5 0 0 0 0 1 0 0 0 0 0
6 0 0 0 1 0 0 0 0 0 0
7 0 0 1 0 0 0 0 0 0 0
8 0 1 0 0 0 0 0 0 0 0
9 1 0 0 0 0 0 0 0 0 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Código 9876543210. Fonte: (YDUQS, 2020)
CÓDIGO GRAY
A característica que distingue o código Gray dos outros códigos é que, entre números adjacentes, existe a
variação de apenas 1 bit. Esse código pode ser gerado com uma quantidade qualquer de bits.
Mostraremos a seguir como funciona o código Gray de 4 bits e o compararemos ao número binário
tradicional:
Número decimal Número binário Código Gray
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Código Gray. Fonte: (YDUQS, 2020)
O código Gray já foi muito usado no passado. Entretanto, hoje em dia, sua aplicação é mais restrita. Ele
ainda é utilizado em alguns sensores, como, por exemplo, encoders absolutos, no projeto de máquinas de
estados e nos mapas de Karnaugh.
 Figura ilustrativa: Uso do código de Gray no mapa de Karnaugh.
CODIFICADOR DECIMAL/BINÁRIO
Definir um circuito como codificador ou decodificador é, em geral, uma questão de ponto de vista. Por
exemplo, ao se apertar um botão do controle remoto, um codificador transformará esse evento em um
comando binário que será processado e depois enviado à TV.
No exemplo acima, pensamos no circuito como um codificador, pois o observamos como um usuário. No
entanto, se o analisássemos a partir do ponto de vista do processador do controle remoto, veríamos um
decodificador, já que ele transforma o pressionar de um botão em um comando conhecido.
Consideraremos que, quando passarmos de um código qualquer para o código binário, estaremos falando
de um codificador. Consequentemente, quando o circuito converter o código binário para outro código, o
consideraremos um decodificador.
No codificador decimal/binário, a entrada do valor decimal pode ser realizada pressionando uma chave
conectada à terra. O circuito então converte essa entrada no código binário correspondente de acordo com
o código BCD.
 Codificador decimal/binário
Esta figura possui um esquema de codificador decimal/binário. Observe os símbolos de inversão nas
entradas do conversor: isso indica que, no caso dessas entradas, elas são ativadas com o nível lógico 0.
Dessa forma, ao se pressionar determinada chave, a entrada correspondente é conectada à terra (nível
lógico 0), enquanto a saída do circuito segue o que será descrito na próxima tabela.
 ATENÇÃO
Ao trabalhar com circuitos integrados comerciais, deve-se observar a ordem dos bits. Por exemplo, no
codificador apresentado, a saída D é a mais significativa, enquanto a A é a menos significativa.
Essa ordem pode mudar de acordo com o fabricante e o modelo do circuito integrado utilizado.
Entrada com nível lógico “0”
Saída
D C B A
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Codificador decimal/binário. Fonte: (YDUQS, 2020)
Repare que o codificador decimal/binário descrito nesta tabela define o valor da saída pela entrada com
nível lógico 0. Então, para projetar seu circuito, podemos utilizar as portas NAND. Afinal, como podemos
ver pela sua tabela verdade, uma entrada com nível lógico 0 força a saída a ser 1:
Porta NAND
X Y S
0 0 1
0 1 1
1 0 1
1 1 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Obtemos, com isso, o seguinte circuito para o codificador proposto:
 Circuito do codificador decimal/binário
Note que o codificador decimal/binário descrito só prevê uma entrada ativa – que, neste caso, é com nível
lógico 0 – por vez. Caso mais de uma entrada seja ativada simultaneamente, o comportamento do circuito
não está especificado e vai depender da implementação realizada.
CODIFICADOR DE PRIORIDADE
Trata-se de um circuito com função parecida, podendo lidar com diferentes entradas ativas
simultaneamente. Nesse codificador, a saída indica a entrada ativa de maior prioridade.
Um codificador de prioridade com três entradas ativadas no nível lógico 1 apresenta, por exemplo, a
seguinte tabela verdade:
3 2 1 B A
1 X X 1 1
0 1 X 1 0
0 0 1 0 1
0 0 0 0 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Tabela verdade de um codificador de prioridade. Fonte: (YDUQS, 2020)
Observe que, nesta tabela, o don’t care foi utilizado na entrada. Essa é uma notação empregada para
simplificar e tornar mais clara a tabela verdade. 
DECODIFICADOR BINÁRIO/DECIMAL
O decodificador binário/decimal, que também pode ser chamado apenas de decodificador, converte o
código BCD 8421 para o código decimal 9876543210:
BCD 8421 Código 9876543210
D C B A S9 S8 S7 S6 S5 S4 S3 S2 S1 S0
0 0 0 0 0 0 0 0 0 0 0 0 0 1
0 0 0 1 0 0 0 0 0 0 0 0 1 0
0 0 1 0 0 0 0 0 0 0 0 1 0 0
0 0 1 1 0 0 0 0 0 0 1 0 0 0
0 1 0 0 0 0 0 0 0 1 0 0 0 0
0 1 0 1 0 0 0 0 1 0 0 0 0 0
0 1 1 0 0 0 0 1 0 0 0 0 0 0
0 1 1 1 0 0 1 0 0 0 0 0 0 0
1 0 0 0 0 1 0 0 0 0 0 0 0 0
1 0 0 1 1 0 0 0 0 0 0 0 0 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Decodificador binário/decimal. Fonte: (YDUQS, 2020)
DECODIFICADOR BCD/7 SEGMENTOS
O display de 7 segmentos é constituído por 8 leds (7 segmentos e um ponto) a fim de poder representar
algarismos decimais e alguns outros números. Na figura a seguir, podemos ver o esquema de um display
de sete segmentos com a indicação da nomenclatura de cada led:
LED
 Disposição dos leds no display de sete segmentos
Existem dois tipos de displays de sete segmentos: os de catodo comum, nos quais os leds acendem com
tensão positiva, e os de anodo comum, cujos leds acendem quando conectados à terra.
javascript:void(0)
 ATENÇÃO
Na conexão com o display, devem ser utilizados resistores em série para limitar a corrente que passa
pelos leds.
Os dígitos decimais são representados da seguinte maneira:
 Representação dos dígitos decimais em um display de sete segmentos
Com base nas duas últimas figuras e considerando um display do tipo catodo comum, podemos
determinar as entradas e saídas do decodificador BCD/7 segmentos. Por exemplo, para formar o número
1, é preciso acender os leds b e c, enquanto os demais são mantidos apagados.
Montaremos agora a tabela de entradas/saídas do decodificador BCD/7 segmentos:
Dígito Decimal
Código BCD Código para o display de 7 segmentos
D C B A a b c d e f g
0 0 0 0 0 1 1 1 1 1 1 0
1 0 0 0 1 0 1 1 0 0 0 0
2 0 0 1 0 1 1 0 1 1 0 1
3 0 0 1 1 1 1 1 1 0 0 1
4 0 1 0 0 0 1 1 0 0 1 1
5 0 1 0 1 1 0 1 1 0 1 1
6 0 1 1 0 1 0 1 1 1 1 1
7 0 1 1 1 1 1 1 0 0 0 0
8 1 0 0 0 1 1 1 1 1 1 1
9 1 0 0 1 1 1 1 1 0 1 1
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Entradas/saídas do decodificador BCD/7 segmentos. Fonte: (YDUQS, 2020)
 EXEMPLO
Projetaremos agora o circuito do decodificador responsável por acionar o led a do display de sete
segmentos.
Utilizaremos as informações da tabela acima para montar o mapa de Karnaugh. Note que, como as
entradas possíveis só vão de 0000 a 1001, as combinações de 1010 até 1111 são don’t cares.
VERIFICANDO O APRENDIZADO
MÓDULO 3
 Descrever o funcionamento de multiplexadores, demultiplexadores e buffers
PRIMEIRAS PALAVRAS
Neste módulo,apresentaremos os circuitos utilizados para permitir o compartilhamento de meios, sejam
eles barramentos de comunicação ou a entrada de outros dispositivos. Versaremos sobre os
multiplexadores, demultiplexadores e buffers de três estados.
MULTIPLEXADOR
MULTIPLEXADOR
O multiplexador é um circuito que permite à saída ser a cópia de umas das entradas. A seleção sobre a
entrada a ser passada para a saída é definida de acordo com uma entrada de seleção.
A figura a seguir ilustra a ideia por trás de multiplexador de 4 entradas e 2 saídas.
Repare que, como o multiplexador proposto possui 4 entradas, são necessários 2 bits na entrada de
seleção. Outro fato importante é que apenas uma entrada pode ser copiada para a saída por vez.
Observamos nesta figura que isso seria o equivalente a dizer que não pode haver mais de uma chave
fechada a cada instante:
 Esquema do multiplexador de quatro entradas
Montaremos agora a tabela verdade do multiplexador proposto:
B A Y
0 0 D0
0 1 D1
1 0 D2
1 1 D3
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
 ATENÇÃO
Muitos circuitos possuem uma entrada habilitadora (também chamada de enable). A lógica normal deste
tipo é que, caso ela esteja em nível alto, o circuito funciona normalmente. Em nível baixo, por sua vez,
todas as saídas do circuito ficam desativadas (normalmente nível lógico baixo).
Como a entrada habilitadora não participa da lógica que expressa a função do circuito propriamente dita,
não é comum incluir o enable na tabela verdade.
 Figura: Multiplexador de 4 entradas com entrada habilitadora
A implementação do enable pode ser realizada de formas diferentes. A mais simples é o uso de uma porta
E com uma entrada habilitadora e uma saída “normal” do circuito. Podemos vê-la nesta figura, que mostra
o circuito do multiplexador proposto, com sendo a entrada habilitadora.
Nos circuitos comerciais, o mais comum é observar sinais que são ativados em nível lógico alto, embora
também haja muitos circuitos com entradas e/ou saídas ativadas em nível lógico baixo. Podemos
identificar o nível que ativa a saída de acordo com o diagrama esquemático.
Uma entrada/saída em que o estado ativo é o nível lógico 1 emprega a representação que temos usado
normalmente:
 Figura: Entrada/saída com o nível lógico 1 sendo o estado ativo.
 Figura: Entrada/saída com o nível lógico 0 sendo o estado ativo.
Já quando a entrada/saída tem estado ativo no nível lógico 0, usa-se qualquer uma das três formas a
seguir:
Os multiplexadores são utilizados principalmente em três aplicações:
Comutação controlada das entradas;
Multiplexação temporal (serialização) de sinais digitais;
Na implementação de funções booleanas.
Comutação
A comutação das entradas ocorre quando queremos que uma delas possa receber o sinal de múltiplas
fontes em momentos distintos. Exemplo: se tivermos diversos sensores e apenas um mostrador,
poderemos usar um multiplexador com chaves controlando as entradas de seleção. Assim, o usuário pode
decidir qual informação deseja ver.
Multiplexação temporal
A multiplexação temporal é uma aplicação avançada; nela, cada sinal de entrada pode ocupar o meio em
que é feita a transmissão da informação em slots de tempo bem definidos.
Isso permite que, em apenas um único canal de transmissão, possam circular informações provenientes
de diferentes circuitos. O multiplexador controla quem vai transmitir a cada momento por meio de um
circuito conectado às entradas de seleção.
A multiplexação temporal também é chamada de serialização, porque, ao ser implementada, os sinais são
transmitidos em sequência, um de cada vez, no tempo – ou seja, em série.
Na implementação de funções booleanas os multiplexadores podem ser empregados para gerar funções
arbitrárias.
 EXEMPLO
Projetemos o circuito que implementa o mapa de Karnaugh a seguir utilizando apenas um multiplexador de
quatro entradas e as portas NÃO:
Solução:
Para projetar o circuito, devemos escolher duas variáveis para serem utilizadas na entrada de seleção,
enquanto o restante o será nas entradas de dados.
Neste caso, ficamos com as variáveis e para serem os sinais de controle do multiplexador. Dessa forma,
refazemos o mapa de Karnaugh introduzindo a variável .
Esse passo é feito olhando cada combinação de A e B e vendo se a saída corresponde a 0, 1, ou :
C
 ̄ ¯̄C  C
Basta agora desenhar o circuito com as conexões indicadas pelo mapa de Karnaugh modificado:
Se for utilizado um multiplexador com oito entradas, as três variáveis poderão ser colocadas como sendo
de controle. Além disso, as entradas de dados, de acordo com o mapa de Karnaugh original, ficam sempre
conectadas à terra ou ao .+VCC
Pelo exemplo resolvido, podemos afirmar que um codificador com entradas de dados pode realizar
qualquer expressão booleana de variáveis utilizando apenas o multiplexador e uma porta inversora.
Além disso, também vimos que esse codificador pode representar qualquer expressão booleana de N
variáveis sem a necessidade de se utilizar nenhuma porta lógica.
DEMULTIPLEXADOR
Como seu nome sugere, o demultiplexador realiza a operação inversa à do multiplexador. Sua tabela
verdade é muito similar à do decodificador binário/decimal.
No entanto, por não estar relacionado a um código específico, ele pode ter tantos bits de entrada quanto
queira. Por essa razão, o demultiplexador também é denominado decodificador.
B A Y3 Y2 Y1 Y0
0 0 0 0 0 1
0 1 0 0 1 0
1 0 0 1 0 0
1 1 1 0 0 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Demultiplexador de duas entradas. Fonte: (YDUQS, 2020)
Note que, com bits, são possíveis combinações de entrada. Logo, um demultiplexador com 
 entradas deverá ter saídas, já que cada saída deve estar ativa para apenas uma combinação da
entrada.
 EXEMPLO
2N
N + 1
N 2N N
2N
Qual é a lógica implementada em cada uma das saídas do demultiplexador de oito canais?
Solução:
Para haver 8 canais de saída, são necessários 3 sinais de entrada, pois . Estruturaremos a seguir a
tabela verdade do multiplexador:
C B A Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
0 0 0 0 0 0 0 0 0 0 1
0 0 1 0 0 0 0 0 0 1 0
0 1 0 0 0 0 0 0 1 0 0
0 1 1 0 0 0 0 1 0 0 0
1 0 0 0 0 0 1 0 0 0 0
1 0 1 0 0 1 0 0 0 0 0
1 1 0 0 1 0 0 0 0 0 0
1 1 1 1 0 0 0 0 0 0 0
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Como as saídas estão ativas em apenas uma combinação da entrada, não há como simplificar a
expressão. Basta, portanto, pegar o mintermo de quando a saída está ativa:
23 = 8
Y0 = ¯̄̄C .  ̄ ¯̄B .  ̄ ¯̄A
Y1 = ¯̄̄C .  ̄ ¯̄B .  A
BUFFER DE TRÊS ESTADOS
O buffer de três estados é um circuito muito simples e, ao mesmo tempo, muito prático. A saída do buffer
de três estados copia a entrada desde que o sinal habilitador esteja ativado.
Se o sinal habilitador estiver desativado, a saída do buffer será “desconectada” do circuito. Essa
“desconexão” é, na verdade, um estado de alta impedância (Z). A figura a seguir demonstra a ideia por trás
do buffer:
 Figura: Esquema do buffer de três estados.
Já o símbolo do buffer de três estados é:
 Figura: Símbolo do buffer de três estados.
Y2 = ¯̄̄C .  B .  ̄ ¯̄A
Y3 = ¯̄̄C .  B .  A
Y4 = C .  ̄ ¯̄B .  ̄ ¯̄A
Y5 = C .  ̄ ¯̄B .  A
Y6 = C .  B .  ̄ ¯̄A
Y7 = C .  B .  A
O buffer de três estados nos permite conectar a saída de mais de um dispositivo no mesmo fio e fazer o
controle de quem está enviando sinal por ele. Neste caso, a saída de cada um dos circuitos deve ser
conectada ao fio comum por meio de um buffer. Apenas um pode estar ativo por vez.
Se tentarmos conectar duas saídas sem a utilização do buffer de três estados, eventualmente haverá um
curto-circuito. Isso ocorrerá quando uma das saídas estiver em nível lógico 1 e a outra, em nível lógico 0.
Lembre-se de que cada nível lógico corresponde, no mundo físico, a um valor de tensão diferente.
VERIFICANDO O APRENDIZADO
CONCLUSÃO
CONSIDERAÇÕES FINAIS
Apresentamos nestetema os principais circuitos combinacionais da eletrônica digital. Além disso, vimos
algumas das suas aplicações mais comuns.
Durante a apresentação dos circuitos combinacionais, descrevemos por diversas vezes os passos
necessários para o seu projeto. Dessa forma, você, além de conhecer os circuitos combinacionais mais
comuns, também é capaz agora de projetar os próprios circuitos!
 PODCAST
AVALIAÇÃO DO TEMA:
REFERÊNCIAS
CAPUANO, F. G. Sistemas digitais circuitos combinacionais e sequenciais. 1. ed. São Paulo: Érica,
2014.
DACHI, E. P; HAUPT, A. G. Eletrônica digital. 1. ed. São Paulo: Blucher, 2018.
IDOETA, I. V.; CAPUANO, F. G. Elementos de eletrônica digital. 41. ed. São Paulo: Érica, 2012.
MENDONÇA, A.; ZELENOVSKY, R. Eletrônica digital: curso prático e exercícios. 2. ed. São Paulo: MZ
Editora, 2007.
EXPLORE+
Pesquise sobre o código ASCII para descobrir maiores curiosidades, como, por exemplo, os caracteres
exibidos no seu computador.
Aprenda a escrever no display de 7 segmentos lendo o terceiro capítulo deste livro:
CAPUANO, F. G. Sistemas digitais: circuitos combinacionais e sequenciais. São Paulo: Érica, 2014. Cap.
3.
Conheça uma abordagem formalizada sobre a projeção circuitos combinacionais no quarto capítulo desta
obra:
CAPUANO, F. G.; IDOETA, I. V. Elementos de eletrônica digital. São Paulo: Érica, 2012. Cap. 4. 
CONTEUDISTA
Felipe Gonçalves Serrenho
 CURRÍCULO LATTES
javascript:void(0);
javascript:void(0);

Continue navegando

Outros materiais