Upload
lauro
View
228
Download
6
Embed Size (px)
DESCRIPTION
Conteúdo dedicado a disciplina de Eletrônica Digital
Citation preview
Circuitos combinacionais
Estudaremos circuitos destinados principalmente a aplicações específicas,
empregados, sobretudo na arquitetura interna de circuitos integrados e, ainda, em sistemas
digitais.
Entre os circuitos destinados a estas finalidades destacamos os codificadores,
decodificadores e os circuitos aritméticos (meio somador, somador completo, meio subtrator
e subtrator completo), que serão bordados a nível básico como projetos combinacionais, para
melhor entendimento sendo, entretanto encontrados na prática, disponíveis em circuitos
integrados comerciais ou internos a sistemas mais complexos, tais como microprocessadores e
circuitos integrados dedicados.
Para a construção de codificadores e decodificadores, vamos inicialmente conhecer
alguns códigos digitais, que serão muito úteis nos exemplos e exercícios de execução dos
projetos já referidos.
Códigos
São vários os códigos dentro do campo da Eletrônica Digital, existindo situações em
que a utilização de um é vantajosa em relação a outro. Vamos, descrever os códigos mais
conhecidos.
Código BCD 8421
Vamos iniciar explicando que no nome deste código, a sigla BCD representa as iniciais
de Binary Coded Decimal, que significa uma codificação do sistema decimal em binário. Os
termos seguintes 8421 significam os valores dos algarismos num dado número binário, que
conforme estudado, representam respectivamente: 23, 2
2, 2
1, 2
0.
A formação deste código é vista na tabela:
Decimal BCD 8421
A B C D
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
O número de bits de um código é o número de dígitos binários que este possui.
Notamos, então, que o código BCD 8421 é um código de 4 bits e, ainda, que é válido de 0 a 910.
Outros códigos BCD de 4 bits podemos citar: BCD 5211, BCD 2421
Código Excesso 3
Este nada mais é do que a transformação do número decimal no binário
correspondente, somando-se 3 unidades.
Ex.:
010 = 0000 – somando-se 3 unidades, temos: 0011.
A formação do código é vista na tabela:
Decimal Excesso 3
A B C D
0 0 0 1 1
1 0 1 0 0
2 0 1 0 1
3 0 1 1 0
4 0 1 1 1
5 1 0 0 0
6 1 0 0 1
7 1 0 1 0
8 1 0 1 1
9 1 1 0 0
Este código é utilizado em alguns casos nos circuitos aritméticos.
Código Gray
Sua principal característica é que de um número a outro apenas 1 bit varia. Sua
formação é mostrada na tabela:
Decimal Código Gray
A B C D
0 0 0 0 0
1 0 0 0 1
2 0 0 1 1
3 0 0 1 0
4 0 1 1 0
5 0 1 1 1
6 0 1 0 1
7 0 1 0 0
8 1 1 0 0
9 1 1 0 1
10 1 1 1 1
11 1 1 1 0
12 1 0 1 0
13 1 0 1 1
14 1 0 0 1
15 1 0 0 0
O código Gray, transpondo para o digrama de Veitch-Karnaugh, apresenta a seguinte
ordem de colocação:
Códigos de 5 bits
Destacaremos apenas os dois mais importantes:
1) Código 2 entre 5
Trata-se de um códgio que possui sempre 2 bits iguais a 1, dentro de 5 bits. Sua formação
é vista na tabela.
Decimal Código 2 entre 5
A B C D E
0 0 0 0 1 1
1 0 0 1 0 1
2 0 0 1 1 0
3 0 1 0 0 1
4 0 1 0 1 0
5 0 1 1 0 0
6 1 0 0 0 1
7 1 0 0 1 0
8 1 0 1 0 0
9 1 1 0 0 0
2) Código Johnson
Trata-se de um código que será utilizado na construção do contador Johnson. Sua
formação é vista na tabela:
Decimal Código Johnson
A B C D E
0 0 0 0 0 0
1 0 0 0 0 1
2 0 0 0 1 1
3 0 0 1 1 1
4 0 1 1 1 1
5 1 1 1 1 1
6 1 1 1 1 0
7 1 1 1 0 0
8 1 1 0 0 0
9 1 0 0 0 0
Código 9876543210
Este código de 10 bits foi bastante utilizado na época em que os sistemas mostradores de
algarismos eram válvulas eletrônicas (Nixie e Numitron). Algumas dessas válvulas possuíam
cada algarismo composto por uma placa ou filamento, arranjado apropriadamente no formato
do número. Notamos, no código, que em 10 saídas somente uma vale em cada caso,
acendendo assim o algarismo correspondente. A formação deste código é vista na tabela:
Decimal 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
Codificadores e decodificadores:
Vamos, agora, tratar de circuitos que efetuam a passagem de um determinado código
para outro. Primeiramente, vamos fazer uma análise do significado das palavras codificador e
decodificador.
Chamamos de codificador o circuito combinacional que torna possível a passagem de
um código conhecido para um desconhecido. Como exemplo, podemos citar o circuito inicial
de uma calculadora que transforma uma entrada decimal, através do sistema de chaves de um
teclado, em saída binária para que o circuito interno processe e faça a operação.
Chamamos de decodificador o circuito que faz o inverso, ou seja, a passa de um código
desconhecido para um conhecido. No exemplo citado é o circuito que recebe o resultado da
operação em binário e o transforma em saída decimal, na forma compatível para um
mostrador digital apresentar os algarismos.
Os termos codificador e decodificador, porém, diferenciam-se em função do
referencial. Se para o usuário da calculadora o sistema de entrada é um codificador, para o
processador será um decodificador, pois passa de um código desconhecido para ele (decimal),
para um conhecido (binário). Na prática, é comum se utilizar a denominação de decodificador
para o sistema que passa de um código para outro, quaisquer que sejam.
Decodificador para display de 7 segmentos
O display de 7 segmentos possibilita escrevermos números decimais de 0 a 9 e alguns
outros símbolos que podem ser letras ou sinais. A figura representa uma unidade do display
genérica, com a nomenclatura de identificação dos segmentos usual em manuais práticos.
Entre as tecnologias de fabricação das unidades de display usaremos o mais comum
que é o display a led, que possui cada segmento composto por um led, existindo um tipo
denominado catodo comum e outro anodo comum.
O display tipo catodo comum é aquele que possui todos os catodos dos led’s
interligados, sendo necessário aplicar nível 1 no anodo respectivo para acender cada
segmento. Já o de anodo comum possui todos os anodos interligados, sendo preciso aplicar
nível 0 ao catodo respectivo.
Vamos, como exemplo, elaborar um decodificador para a partir de um código binário
(BCD 8421) escrever a sequencia de 0 a 9 em um display de 7 segmentos catodo comum.
Para efetuar o projeto deste decodificador, devemos verificar em cada caractere os
segmentos que devem ser acesos e atribuir nível 1 ( no caso do catodo comum), em função da
respectiva entrada no código binário. A tabela apresenta a sequencia de caracteres, o
respectivo código de entrada e os níveis aplicados em cada segmento para que tal ocorra.
Para fins de simplificação, vamos considerar os casos fora da sequencia como irrelevantes.
Transpondo as saídas para os diagramas, temos:
O circuito do decodificador BCD 8421 para display de 7 segmentos obtido, é visto na
próxima figura.
Convém observar que o circuito poderia ser otimizado, pois as expressões dos
segmentos possuem vários termos em comum, resultando no emprego de um número menor
de portas. Porém, para melhor clareza, este foi deixado na sua forma original de acordo com
as expressões extraídas dos diagramas.
Outro ponto a ser realçado é que numa montagem prática, a ligação do display se faz,
conforme a família lógica, através dos resistores para observar os limites máximos de corrente
nos led’s, ou ainda, utilizando outras estratégias para controlar o brilho.
Os displays de 7 segmentos podem ainda escrever outros caracteres, que são
frequentemente utilizados em sistemas digitais para representar outras funções, bem como
formar palavras-chave em software de programação.
O circuito lógico obtido das expressões simplificadas é visto abaixo:
Exercício:
1. Projete um decodificador para, a partir de um código binário, escrever a sequencia da
tabela abaixo em um display de 7 segmentos catodo comum.
Caractere S T O P - E R 8
Caso 0 1 2 3 4 5 6 7
Circuitos Aritméticos
Dentro do conjunto de circuitos combinacionais aplicados para finalidade específica
nos sistemas digitais, destacam-se os circuitos aritméticos. São utilizados, principalmente, para
construir a ULA (Unidade de Lógica Aritmética) dos microprocessadores e, ainda, encontrados
disponíveis em circuitos integrados comerciais.
Meio Somador
O meio somador permite efetuar a soma de número binários com somente 1
algarismo.
Assim, pode-se construir a tabela da verdade da soma de 2 números binários de 1 algarismo,
definindo Ts como o transporte de saía.
Representando cada numero por 1 bit, podemos, então, montar um circuito que
possui como entradas A e B, e como saída, a soma dos algarismos (S) e o respectivo transporte
de saída (Ts). As expressões características do circuito, extraídas da tabela, são:
Este circuito meio somador é também conhecido como Half Adder, sendo a saída de
transporte denominada carry out, ambos os termos derivados do inglês.
Somador Completo
O somador completo é um circuito lógico utilizado para fazer a soma de dois números
binários de mais de 1 algarismo, pois possibilita a introdução do transporte de entrada Cin
proveniente da coluna anterior.
A tabela da verdade do somador completo está descrita abaixo:
As expressões características, sem simplificações, de um somador completo são:
Transpondo para diagramas de Veitch-Karnaugh temos:
S:
Conforme já estudado podemos escrever:
Ts:
Das equações simplificadas é montado o circuito somador completo:
O circuito somador completo é conhecido por Full Adder, sendo a entrada de
transporte Te denominada carry in.
Para exemplificar será montado um sistema em blocos que efetua a soma de 2
números de n bits, conforme o esquema a seguir:
Obs.: Para se efetuar a soma de A0 e B0 pode-se usar um meio somador, pois não há
transporte de entrada. Para as demais colunas deve-se utilizar o somador completo, pois Te
(carry in) deve ser considerado.
Meio Subtrator
O meio subtrator efetua a subtração de dois números binários com somente um
algarismo. Desta forma pode-se montar a tabela da verdade considerando a operação de
subtração de 2 números binários de 1 algarismo (A e B).
Pode-se montar o circuito lógico que executa a tabela, tendo como entrada as
variáveis booleanas A e B, e como saída, a subtração S e o transporte de saída Ts. As
expressões características extraídas do circuito são:
O meio subtrator é conhecido por Half Subtractor.
Subtrator Completo
O subtrator completo é utilizado para fazer a subtração de 2 números binários com
mais de 1 algarismo, pois possibilita a introdução do transporte de entrada Te proveniente da
coluna anterior.
A tabela da verdade do subtrator completo segue abaixo:
As expressões características, sem simplificações, de um subtrator completo são:
Simplificando com o Diagrama de Karnaugh:
Das expressões simplificadas é montado o circuito lógico do subtrator completo:
O subtrator completo é conhecido como full subtractor.
Da mesma forma pode-se esquematizar um sistema subtrator para dois números de m
bits , onde m = n+1;
Neste sistema, a saída de transporte Ts do último bloco é desnecessária se o minuendo
(An...A0) for maior ou igual ao subtraendo (Bn...B0), porém poderá ser utilizada no caso
contrário para indicar que o resultado é negativo, na notação do complemento de 2.
Exercício:
1. Esquematize em blocos, um sistema subtrator para 2 números de 4 bits.