Funções de Lógica Combinacional

Transcrição

Funções de Lógica Combinacional
Circuitos Digitais
03/11/2014
Objetivos
• Fazer distinção entre meio-somadores e
somadores-completos
• Usar somadores-completos para implementar
somadores binários em paralelo
• Explicar as diferenças entre somadores em paralelo
com carry ondulante e com carry antecipado
• Usar o comparador de magnitude para determinar
a relação entre dois números binários e usar
comparadores em cascata para conseguir realizar
comparações de números com maior número de
bits
7. Funções de Lógica
Combinacional
Circuitos Digitais
697
Circuitos Digitais
698
Objetivos
• Implementar um decodificador binário básico
• Usar decodificadores de BCD para 7 segmentos em
sistemas com display
• Usar um codificador de decimal para BCD com
prioridade numa aplicação com um teclado simples
7. Funções de Lógica
Combinacional
1. Somadores Básicos
Circuitos Digitais
699
Circuitos Digitais
700
Circuitos Digitais
03/11/2014
Introdução
O Meio-Somador
• Os somadores são importantes em computadores e
também em outros tipos de sistemas digitais nos
quais dados numéricos são processados
• Uma compreensão da operação básica de um
somador é fundamental no estudo de sistemas
digitais
• Serão apresentados o meio-somador e o somadorcompleto
• Um meio-somador soma dois bits e produz um
resultado (soma) e um carry de saída
Circuitos Digitais
701
Circuitos Digitais
O Meio-Somador
O Somador-Completo
• Circuito lógico do meio-somador
• Um somador-completo tem um carry de entrada,
enquanto que um meio-somador não tem
• A soma pode ser implementado com a porta EX-OR
• O carry pode ser implementado com a porta AND
Circuitos Digitais
703
Circuitos Digitais
702
704
Circuitos Digitais
03/11/2014
O Somador-Completo
O Somador-Completo
• Circuito lógico do somador-completo
• Somador-completo implementado com dois meiosomadores e uma porta OR
• Carry de saída:
• Resultado da soma:
Circuitos Digitais
705
Circuitos Digitais
O Somador-Completo
O Somador-Completo
• Exemplo: Para cada um dos três somadorescompletos na Figura abaixo, determine as saídas
para as entradas mostradas.
• Solução:
Circuitos Digitais
707
Circuitos Digitais
706
708
Circuitos Digitais
03/11/2014
Revisão
7. Funções de Lógica
Combinacional
• Respostas
2. Somadores Binários Paralelos
Circuitos Digitais
709
Introdução
Circuitos Digitais
710
Circuitos Digitais
712
Introdução
• Um único somador-completo é capaz de somar
dois números de 1 bit e um carry de entrada
• Para somar números binários com mais de 1 bit,
temos que usar somadores-completos adicionais
• Quando um número binário é somado a outro,
cada coluna gera um bit de soma e um bit de carry
(que pode ser 1 ou 0) para a próxima coluna à
esquerda
• A saída de carry de cada somador é conectada à
entrada de carry do próximo somador de maior
ordem
Circuitos Digitais
711
Circuitos Digitais
03/11/2014
Introdução
Introdução
• Exemplo: Determine a soma gerada pelo somador
paralelo de 3 bits visto na Figura abaixo e mostre os
carries intermediários quando os números binários
101 e 011 são somados.
Circuitos Digitais
713
Circuitos Digitais
714
Somadores Paralelos de Quatro
Bits
Introdução
• Solução: Os LSBs dos dois números são somados no
somador-completo mais à direita
• Os bits do resultado e os carries intermediários são
indicados em cinza na Figura abaixo
Circuitos Digitais
715
• Um grupo de quatro bits é denominado de nibble
• Um somador paralelo de 4 bits básico é
implementado com quatro estágios de somadorescompletos
• A saída de carry de cada somador é conectada à
entrada de carry para o próximo somador de
ordem mais alta
• Esses são denominados de carries internos
Circuitos Digitais
716
Circuitos Digitais
03/11/2014
Somadores Paralelos de Quatro
Bits
Circuitos Digitais
Somadores Paralelos de Quatro
Bits
717
Circuitos Digitais
718
Somadores Paralelos de Quatro
Bits
Somadores Paralelos de Quatro
Bits
• Em termos do método usado para operar com
carries em somadores paralelos, existem dois tipos
• Exemplo: Use a tabela-verdade do somador
paralelo de 4 bits para determinar a soma e o carry
de saída para a adição dos seguintes números de 4
bits se o carry de entrada (Cn – 1) for 0:
• o somador com carry ondulante (ripple carry)
• o somador com carry antecipado (lookahead carry)
Circuitos Digitais
719
Circuitos Digitais
720
Circuitos Digitais
03/11/2014
Somadores Paralelos de Quatro
Bits
Uma Aplicação
• Solução:
• Um exemplo de aplicação de somador-completo e
somador paralelo é um simples sistema de votação
que pode ser usado para fornecer
simultaneamente o número de votos “sim” e o
número de votos “não”
• Esse tipo de sistema pode ser usado quando um
grupo de pessoas é reunido e é necessário
determinar imediatamente opiniões (a favor ou
contra), tomar decisões ou votar certa questão ou
outras matérias
Circuitos Digitais
721
Circuitos Digitais
722
Uma Aplicação
Uma Aplicação
• Em sua forma mais simples, o sistema inclui uma
chave para seleção do “sim” ou do “não” em cada
um do grupo e um display digital para o número de
votos “sim” e um outro para o número de votos
“não”
• Cada somador-completo pode produzir a soma de
até três votos
• A soma e o carry de saída de cada somadorcompleto passam então para os dois bits menos
significativos de um somador paralelo binário
• As duas entradas mais significativas do somador
paralelo são conectadas em GND (0) porque não
existe nenhum caso em que a entrada binária
exceda a 0011 (decimal 3)
• Para esse sistema básico de 6 posições, as saídas do
somador paralelo vão para um decodificador de
BCD para 7 segmentos que aciona um display de 7
segmentos
• Circuitos adicionais têm que ser incluídos quando o
sistema é expandido
Circuitos Digitais
723
Circuitos Digitais
724
Circuitos Digitais
03/11/2014
Uma Aplicação
• Os resistores das entradas de cada somadorcompleto para GND garantem que cada entrada
será nível BAIXO quando a chave estiver na posição
neutra (a lógica CMOS é usada)
• Quando uma chave é comutada para a posição
“sim” ou posição “não”, um nível ALTO (VCC) é
aplicado na entrada do somador-completo
associado
Circuitos Digitais
725
Circuitos Digitais
726
Circuitos Digitais
728
Um Somador Paralelo de 4 Bits
(74LS283)
• Um exemplo de um somador paralelo de 4 bits que
é comercializado é o CI 74LS283
• Nesse CI, VCC é o pino 16 e GND é o pino 8, que é
uma configuração padrão
• Esse dispositivo pode ser comercializado em outras
famílias TTL e CMOS
• Texas Instruments http://www.ti.com
Circuitos Digitais
727
Circuitos Digitais
03/11/2014
Expansão de um Somador
Expansão de um Somador
• Somadores podem ser expandidos, conectados em
cascata, para operarem mais bits
Circuitos Digitais
729
Circuitos Digitais
730
Revisão
• 1. Dois números de 4 bits (1101 e 1011) são
aplicados num somador paralelo de 4 bits. O carry
de entrada é 1. Determine a soma (∑) e o carry de
saída.
• 2. Quantos CIs 74LS283 seriam necessários para
somar dois números binários em que cada um
representa números decimais até 100010?
• Respostas
Circuitos Digitais
7. Funções de Lógica
Combinacional
3. Somadores com Carry Ondulante versus Somadores com
Carry Antecipado
731
Circuitos Digitais
732
Circuitos Digitais
03/11/2014
Introdução
Somador com Carry Ondulante
• Os somadores paralelos podem ser classificados em
duas categorias baseado na forma em que os carries
internos de um estágio para o outro são operados
• As categorias são carry ondulante e carry antecipado
• Externamente, os dois tipos de somadores são iguais
em termos de entradas e saídas
• A diferença é a velocidade na qual eles podem somar
números
• O somador com carry antecipado é muito mais rápido
que o somador com carry ondulante
• Um somador com carry ondulante é aquele no qual
a saída de carry de cada somador-completo (FA –
full-adder) é conectada à entrada de carry do
próximo estágio de maior ordem (um estágio
corresponde a um somador-completo)
• A soma e o carry de saída de qualquer estágio não
podem ser gerados antes que o carry de entrada
seja estabelecido
• Isso provoca um atraso no processo de adição
Circuitos Digitais
733
Somador com Carry Ondulante
Circuitos Digitais
734
Somador com Carry Antecipado
• A velocidade com a qual uma adição pode ser
realizada é limitada pelo tempo necessário para os
carries se propagarem (ondulação) através de todos
os estágios de um somador paralelo
• Um método de aumentar a velocidade do processo
de adição que elimina esse atraso do carry
ondulante é denominado adição com carry
antecipado
• Esse somador antecipa o carry de saída de cada
estágio e, com base nas entradas, produz o carry de
saída através da geração ou da propagação de carry
Circuitos Digitais
735
Circuitos Digitais
736
Circuitos Digitais
03/11/2014
Somador com Carry Antecipado
Somador com Carry Antecipado
• A geração de carry ocorre quando um carry de
saída é produzido (gerado) internamente pelo
somador-completo
• Um carry é gerado apenas quando os dois bits de
entrada são 1s
• O carry gerado, Cg, é expresso como uma função
AND dos dois bits de entrada, A e B
• A propagação de carry ocorre quando um carry de
entrada passa através dos somadores (ondulação)
até se tornar um carry de saída
• Um carry de entrada pode ser propagado pelo
somador-completo quando um ou os dois bits de
entrada forem 1s
• O carry propagado, Cp, é expresso como a função
OR entre os bits de entrada
Circuitos Digitais
737
Somador com Carry Antecipado
Circuitos Digitais
738
Somador com Carry Antecipado
• O carry de saída de um somador-completo pode
ser expresso em termos do carry gerado (Cg) e do
carry propagado (Cp)
Circuitos Digitais
739
Circuitos Digitais
740
Circuitos Digitais
03/11/2014
Combinação de Somadores com
Carry Antecipado e Somadores com
Carry Ondulante
Revisão
• O CI 74LS283 (somador de 4 bits) que foi
apresentado anteriormente é um somador com
carry antecipado
• Quando esses somadores são associados em
cascata para expandir sua capacidade de operar
números binários com mais de 4 bits, o carry de
saída de um somador é conectado à entrada de
carry do próximo
• O somador resultante é na realidade uma
combinação de somador com carry antecipado e
carry ondulante
Circuitos Digitais
• 1. Os bits de entrada para um somador-completo
são A = 1 e B = 0. Determine Cg e Cp.
• 2. Determine o carry de saída de um somadorcompleto quando Cin = 1, Cg = 0 e Cp = 1.
• Respostas
741
Circuitos Digitais
742
Introdução
• A função básica de um comparador é comparar as
magnitudes de dois números binários para
determinar a relação comparativa entre eles
• Em sua forma mais simples, um circuito
comparador determina se dois números são iguais
7. Funções de Lógica
Combinacional
4. Comparadores
Circuitos Digitais
743
Circuitos Digitais
744
Circuitos Digitais
03/11/2014
Igualdade
Igualdade
• A porta EX-OR pode ser usada como um
comparador básico porque sua saída é nível 1 se os
dois bits de entrada forem diferentes e é 0 se os
bits de entrada forem iguais
• Para comparar números binários com dois bits cada
um, é necessário mais uma porta EX-OR
• Exemplo: Considerando os seguintes conjuntos de
números binários e o circuito comparador
mostrado anteriormente, determine a saída do
circuito para cada conjunto.
• (a) 10 e 10
• (b) 11 e 10
• Solução:
Circuitos Digitais
745
Circuitos Digitais
Desigualdade
Desigualdade
• Além da saída de igualdade, muitos CIs
comparadores proveem saídas adicionais que
indicam qual dos dois números binários
comparados é maior
• Exemplo: Determine as saídas A = B, A > B e A < B
para os números de entradas mostrados no
comparador visto na Figura abaixo.
Circuitos Digitais
747
Circuitos Digitais
746
748
Circuitos Digitais
03/11/2014
Desigualdade
Revisão
• Solução: O número nas entradas A é 0110 e o
número nas entradas B é 0011.
• A saída A > B é nível ALTO e as outras saídas são
nível BAIXO.
• 1. Os números binários A = 1011 e B = 1010 são
aplicados nas entradas de um comparador de 4
bits. Determine as saídas.
• 2. Os números binários A = 11001011 e B =
11010100 são aplicados ao comparador de 8 bits.
Determine as saídas, caso este comparador tenha
sido implementado usando-se dois comparadores
de 4 bits em cascata.
Circuitos Digitais
749
Circuitos Digitais
750
Respostas
• 1. A > B = 1, A < B = 0, A = B = 0 quando A = 1011 e
B = 1010
• 2.
• Comparador da direita: A < B = 1; A = B = 0; A > B = 0
• Comparador da esquerda: A < B = 0; A = B = 0; A > B = 1
7. Funções de Lógica
Combinacional
5. Decodificadores
Circuitos Digitais
751
Circuitos Digitais
752
Circuitos Digitais
03/11/2014
Introdução
Decodificador Binário Básico
• Um decodificador é um circuito digital que detecta
a presença de uma combinação específica de bits
(código) em suas entradas indicando a presença
desse código através de um nível de saída
especificado
• Em sua forma geral, um decodificador tem n linhas
de entrada para manipular n bits e de uma a 2n
linhas de saída para indicar a presença de uma ou
mais combinações de n bits
• Suponha que precisamos determinar quando um
binário 1001 ocorre nas entradas de um circuito
digital
• Uma porta AND pode ser usada como o elemento
de decodificação básico porque ela produz um nível
ALTO na saída apenas quando todas as suas
entradas estão em nível ALTO
Circuitos Digitais
753
Circuitos Digitais
754
Decodificador Binário Básico
Decodificador de 4 Bits
• Exemplo: Determine a lógica necessária para
decodificar o número binário 1011 produzindo um
nível ALTO na saída.
• Solução: A função de decodificação pode ser obtida
complementando apenas as variáveis que
aparecem como 0 no número binário desejado,
como a seguir:
• Para decodificar todas as combinações possíveis de
quatro bits, são necessárias dezesseis portas de
decodificação (24 = 16)
• Esse tipo de decodificador é normalmente
denominado decodificador de 4 linhas para 16
linhas porque existem quatro entradas e dezesseis
saídas ou decodificador 1 de 16 porque para um
dado código nas entradas, uma das dezesseis saídas
é ativada
Circuitos Digitais
Circuitos Digitais
755
756
Circuitos Digitais
03/11/2014
Decodificador de 4 Bits
Circuitos Digitais
Decodificador de 4 Bits
757
Decodificador de BCD para
Decimal
Circuitos Digitais
Circuitos Digitais
758
Decodificador de BCD para 7
Segmentos
759
Circuitos Digitais
760
Circuitos Digitais
03/11/2014
Decodificador de BCD para 7
Segmentos
Circuitos Digitais
Decodificador de BCD para 7
Segmentos
761
Circuitos Digitais
762
Revisão
Respostas
• 1. Um decodificador de 3 linhas para 8 linhas pode
ser usado para a decodificação de octal para
decimal. Quando um binário 101 for colocado nas
entradas, qual linha de saída é ativada?
• 2. Quantos CIs 74HC154 (decodificador 1 de 16) são
necessários para decodificar um número binário
• de 6 bits?
• 3. Você escolheria um decodificador/driver com
saídas ativas em nível ALTO ou BAIXO para acionar
um display de LEDs do tipo catodo comum?
• 1. A saída 5 é ativada quando 101 estiver nas
entradas.
• 2. Quatro CIs 74HC154 são usados para decodificar
um número binário de 6 bits.
• 3. Uma saída ativa em nível BAIXO aciona um
display de LED de catodo comum.
Circuitos Digitais
763
Circuitos Digitais
764
Circuitos Digitais
03/11/2014
Introdução
• Um codificador é um circuito lógico que realiza
essencialmente a função “inversa” do decodificador
• Um codificador aceita um nível ativo em uma de suas
entradas representando um dígito, tal como um dígito
decimal ou octal, e o converte em uma saída
codificada, tal como binário ou BCD
• Codificadores também podem ser implementados para
codificar vários símbolos e caracteres alfabéticos
• O processo de conversão de símbolos familiares ou
números para um formato codificado é denominado de
codificação
7. Funções de Lógica
Combinacional
6. Codificadores
Circuitos Digitais
765
Codificador de Decimal para BCD
Circuitos Digitais
766
Codificador de Decimal para BCD
• Este tipo de codificador tem dez entradas – uma
para cada dígito decimal – e quatro saídas
correspondentes ao código BCD
Circuitos Digitais
767
Circuitos Digitais
768
Circuitos Digitais
03/11/2014
Codificador de Decimal para BCD
(Figura 6-38)
Codificador de Prioridade de
Decimal para BCD
• Um codificador de prioridade oferece também
uma flexibilidade adicional na qual ele pode ser
usado em aplicações que requerem detecção de
prioridade
• A função de prioridade significa que o codificador
produzirá uma saída BCD correspondente à entrada
do dígito decimal mais significativo que estiver
ativado ignorando qualquer outra entrada ativa
menos significativa
• Por exemplo, se as entradas 6 e 3 estiverem ativas,
a saída BCD será 0110 (que representa o decimal 6)
Circuitos Digitais
769
Um Codificador de Decimal para
BCD (74HC147, Figura 6-39)
Circuitos Digitais
Circuitos Digitais
770
Um Codificador de 8 Linhas para 3
Linhas (74LS148)
771
Circuitos Digitais
772
Circuitos Digitais
03/11/2014
Um codificador de 16 linhas para
4 linhas usando CIs 74LS148 e
lógica externa
Exemplo
• Se aparecerem níveis BAIXOs nos pinos 1, 4 e 13 do
CI 74HC147, indique o estado das quatro saídas.
Todas as outras entradas estão em nível ALTO.
• Solução:
Circuitos Digitais
773
Circuitos Digitais
774
Circuitos Digitais
776
Uma Aplicação
• Um exemplo de aplicação clássica é um codificador
de teclado
• Os dez dígitos decimais no teclado de um
computador, por exemplo, tem que ser codificado
para ser processado pelo circuito lógico
• Quando uma das teclas é pressionada, o dígito
decimal é codificado para o código BCD
correspondente
Circuitos Digitais
775
Circuitos Digitais
03/11/2014
Revisão
7. Funções de Lógica
Combinacional
• Respostas
7. Multiplexadores
Circuitos Digitais
777
Introdução
Circuitos Digitais
778
Circuitos Digitais
780
Introdução
• Um multiplexador (MUX) é um dispositivo que permite
que informações digitais de diversas fontes sejam
encaminhadas para uma única linha para serem
transmitidas nessa linha para um destino comum
• Um multiplexador básico tem várias linhas de entrada
de dados e uma única linha de saída
• Ele também possui entradas de seleção de dados, as
quais permitem que os dados digitais de quaisquer
entradas sejam comutados para a linha de saída
• Os multiplexadores também são conhecidos como
seletores de dados
Circuitos Digitais
779
Circuitos Digitais
03/11/2014
Introdução
Expressão de Saída
• Como os dados podem ser selecionados a partir de
qualquer uma das linhas de entrada, esse circuito
também é denominado de seletor de dados
Circuitos Digitais
781
Circuitos Digitais
782
Exemplo
• As formas de onda da entrada de dados e das
entradas de seleção de dados vistas na Figura a
seguir (a) são aplicadas no multiplexador mostrado
na Figura anterior
• Determine a forma de onda de saída em relação às
entradas
Circuitos Digitais
783
Circuitos Digitais
784
Circuitos Digitais
03/11/2014
Exemplo
• Solução: Os estados binários das entradas de
seleção de dados durante cada intervalo determina
qual dado de entrada é selecionado
• Observe que as entradas de seleção de dados
passam pela sequência binária repetitiva: 00, 01,
10, 11, 00, 01, 10, 11 e assim por diante
• A forma de onda de saída resultante é mostrada na
Figura anterior (b)
Circuitos Digitais
785
Circuitos Digitais
786
Introdução
• Um demultiplexador (DEMUX) basicamente
inverte a função da multiplexação
• Ele recebe informações digitais a partir de uma
linha e as distribui para um determinado número
de linhas de saída
• Por essa razão, o demultiplexador também é
conhecido como distribuidor de dados
• Os decodificadores também podem ser usados
como demultiplexadores
7. Funções de Lógica
Combinacional
8. Demultiplexadores
Circuitos Digitais
787
Circuitos Digitais
788
Circuitos Digitais
03/11/2014
Introdução
Exemplo
• A forma de onda de entrada de dados em série e as
entradas de seleção de dados (S0 e S1) são
mostradas na Figura a seguir
• Determine as formas de onda da saída de dados D0
a D3 para o demultiplexador visto na Figura
anterior
Circuitos Digitais
789
Exemplo
Circuitos Digitais
790
Exemplo
• Solução: Observe que as linhas de seleção seguem
uma sequência binária de forma que cada bit
sucessivo de entrada é direcionado para D0, D1, D2
e D3 na sequência, conforme mostra as formas de
onda vistas na Figura anterior.
Circuitos Digitais
791
Circuitos Digitais
792
Circuitos Digitais
03/11/2014
Resumo
7. Funções de Lógica
Combinacional
9. Resumo
Circuitos Digitais
793
Circuitos Digitais
794
Exercícios de Fixação
• 1. Um meio-somador é caracterizado por
•
•
•
•
7. Funções de Lógica
Combinacional
• 2. Um somador-completo é caracterizado por
•
•
•
•
10. Exercícios de Fixação
Circuitos Digitais
(a) duas entradas e duas saídas
(b) três entradas e duas saídas
(c) duas entradas e três saídas
(d) duas entradas e uma saída
795
(a) duas entradas e duas saídas
(b) três entradas e duas saídas
(c) duas entradas e três saídas
(d) duas entradas e uma saída
Circuitos Digitais
796
Circuitos Digitais
03/11/2014
Exercícios de Fixação
Circuitos Digitais
Exercícios de Fixação
797
Exercícios de Fixação
Circuitos Digitais
Circuitos Digitais
798
Circuitos Digitais
800
Gabarito
799
Circuitos Digitais
03/11/2014
Exercícios para Entregar na
Próxima Aula (10/11/2014)
• Resolver os seguintes problemas do Capítulo 6
(Funções de Lógica Combinacional), do livro do
Floyd (pode ser em dupla)
7. Funções de Lógica
Combinacional
• 1-23
• 26-29
11. Exercícios para Entregar na Próxima Aula
Circuitos Digitais
801
Circuitos Digitais
802

Documentos relacionados