Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

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
1 0001
2 0010
3 0011
4 0100
5 0101
javascript:void(0)
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é .
2N − 1 N
24 − 1 = 15
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:
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
−23 = (23)2,C (N)2,C N
(23)2,C =
N −2N−1
2N−1 − 1
-7 1001
-6 1010
-5 1011
-4 1100
-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:
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 + :
6  +  (−4)
 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
Fazendo a soma entre os três bits, obtemos a seguinte tabela verdade:
Ci Ai Bi Co Si
Ai Bi Ci 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 :
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:
Co Si
¯̄̄Ci Ci Si
Si = ¯̄̄Ci(¯̄̄AiBi + Ai
¯̄̄Bi)+Ci(¯̄̄Ai
¯̄̄Bi + AiBi)
¯̄̄AiBi + Ai
¯̄̄Bi =  Ai ⊕ Bi
¯̄̄Ai
¯̄̄Bi + AiBi =  ̄ ¯̄¯̄¯̄¯̄¯̄¯Ai ⊕ Bi
Chamando de , temos que:
Logo:
4º PASSO
Podemos finalmente esquematizar o circuito do somador
 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 .
Si =  ̄ ¯̄Ci(Ai ⊕ Bi)+Ci(¯̄¯̄¯̄¯̄¯̄¯̄Ai ⊕ Bi)
Ai ⊕ Bi X
Si =  ̄ ¯̄CiX + Ci
¯̄̄X =  Ci ⊕ X
Si = Ci ⊕(Ai ⊕ Bi) 
A = A3A2A1A0 B = B3B2B1B0 A0 B0
+VCC
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.
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
0 0 0
S = A +   (B)2,C = A − B
Se  { Op = 0,   S = A + B
Op = 1,   S = A − B 
Op
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
MÓDULO 2
 Descrever o funcionamento dos codificadores e decodificadores
X = 0, S = Y  X = 1 S = ¯̄̄Y
Op = 1, B
B A − B Op = 0,
Ci = 0 A + B
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:
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
4 +  2 = 6
9 1001 1010 1111 1111
 Atenção! Para visualizaçãocompleta da tabela utilize a rolagem horizontal
Tabela: Códigos BCD. Fonte: (YDUQS, 2020)
CÓDIGO 9876543210
No código9876543210, 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
javascript:void(0)
 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.
 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 utilizadospara 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 :
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
.
C
 ̄ ¯̄C  C
+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
2N
N + 1
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
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:
N 2N N
2N
23 = 8
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.
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.
Y0 = ¯̄̄C .  ̄ ¯̄B .  ̄ ¯̄A
Y1 = ¯̄̄C .  ̄ ¯̄B .  A
Y2 = ¯̄̄C .  B .  ̄ ¯̄A
Y3 = ¯̄̄C .  B .  A
Y4 = C .  ̄ ¯̄B .  ̄ ¯̄A
Y5 = C .  ̄ ¯̄B .  A
Y6 = C .  B .  ̄ ¯̄A
Y7 = C .  B .  A
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 neste tema os principais circuitos combinacionais daeletrô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);

Mais conteúdos dessa disciplina