introdução circuitos digitais -...

7
1 Circuitos Digitais Circuitos Combinacionais Parte II Prof. Sergio Ribeiro Ciência da Computação Circuitos Digitais Introdução Códigos Binários Código BCD 8421 Outros Códigos BCD Código Excesso de 3 Código Gray Códigos de 5 bits Código 9876543210 Codificadores e Decodificadores Codificador Decimal/Binário e Binário/Decimal Projetos de Decodificadores Decodificador para Display de 7 Segmentos Conteúdo 2 Circuitos Digitais Introdução Anteriormente, vimos como obter circuitos lógicos combinacionais para solucionar problemas relacionados a situações práticas. Agora estudaremos problemas destinados a aplicações específicas empregados na arquitetura interna de circuitos integrados e em sistemas digitais. Exemplos de circuitos destinados a esta finalidade: Codificadores Decodificadores Circuitos aritméticos Multiplexadores Tais circuitos são encontrados em CI’s comerciais ou em sistemas complexos como microprocessadores. 3 Códigos São vários os códigos dentro do campo da Eletrônica Digital. Em algumas situações a utilização de um código é vantajosa em relação a outro. Serão descritos os códigos mais conhecidos: BCD 8421 Outros códigos BCD de 4 bits Código Excesso de 3 Código Gray Códigos de 5 bits Código 9876543210 Circuitos Digitais 4 Código BCD 8421 BCD (Binary Coded Decimal) codificação do sistema decimal em binário. 8421 valores dos algarismos num dado número binário, representando respectivamente: 2 3 ,2 2 ,2 1 ,e2 0 . Circuitos Digitais Decimal BCD 8421 A B C D 0 1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 O código BCD 8421 é um código de 4 bits, e é válido de 0 a9 10 . 5 Outros Códigos BCD de 4 Bits Exemplos: BCD 7421 BCD 5211 BCD 2421 A regra de conversão destes códigos para o decimal é análoga à do BCD 8421. Circuitos Digitais Decimal BCD 7421 0 1 2 3 4 5 6 7 8 9 0000 0001 0010 0011 0100 0101 0110 1000 1001 1010 0000 0001 0011 0101 0111 1000 1001 1011 1101 1111 0000 0001 0010 0011 0100 1011 1100 1101 1110 1111 BCD 5211 BCD 2421 6

Upload: dangnhi

Post on 24-Jul-2018

241 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

1

Circuitos Digitais

Circuitos Combinacionais

Parte II

Prof. Sergio Ribeiro

Ciência da Computação

Circuitos Digitais

� Introdução� Códigos Binários� Código BCD 8421� Outros Códigos BCD� Código Excesso de 3� Código Gray� Códigos de 5 bits� Código 9876543210� Codificadores e Decodificadores� Codificador Decimal/Binário e Binário/Decimal� Projetos de Decodificadores� Decodificador para Display de 7 Segmentos

Conteúdo

2

Circuitos Digitais

Introdução� Anteriormente, vimos como obter circuitos lógicos

combinacionais para solucionar problemas relacionados asituações práticas.

� Agora estudaremos problemas destinados a aplicaçõesespecíficas empregados na arquitetura interna de circuitosintegrados e em sistemas digitais.

� Exemplos de circuitos destinados a esta finalidade:� Codificadores� Decodificadores� Circuitos aritméticos� Multiplexadores

� Tais circuitos são encontrados em CI’s comerciais ou emsistemas complexos como microprocessadores.

3

Códigos

� São vários os códigos dentro do campo da EletrônicaDigital.

� Em algumas situações a utilização de um código évantajosa em relação a outro.

� Serão descritos os códigos mais conhecidos:� BCD 8421� Outros códigos BCD de 4 bits� Código Excesso de 3� Código Gray� Códigos de 5 bits� Código 9876543210

Circuitos Digitais 4

Código BCD 8421� BCD (Binary Coded Decimal) ⇒ codificação do sistema

decimal em binário.� 8421 ⇒ valores dos algarismos num dado número

binário, representando respectivamente: 23,22,21, e 20.

Circuitos Digitais

Decimal BCD 8421

A B C D

0123456789

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

O código BCD 8421é um código de 4bits, e é válido de 0a 910.

5

Outros Códigos BCD de 4 Bits� Exemplos:

� BCD 7421� BCD 5211� BCD 2421

� A regra de conversão destes códigos para o decimal é análoga à do BCD 8421.

Circuitos Digitais

Decimal BCD 7421

0123456789

0000000100100011010001010110100010011010

0000000100110101011110001001101111011111

0000000100100011010010111100110111101111

BCD 5211 BCD 2421

6

Page 2: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

2

Código Excesso de 3� Corresponde à transformação do número decimal no

binário correspondente, somando-se 3 unidades.� Exemplo: 010 = 0000 → somando-se 3 unidades,

temos: 0011.

Circuitos Digitais

Decimal Excesso de 3

A B C D

0123456789

0 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 0

Este código éutilizado em algunscasos nos circuitosaritméticos.

7

Código Gray

� Sua principal característica é que de um número a outro apenas um bit varia.

� Sua formação é mostrada na tabela ao lado:

Circuitos Digitais

Decimal Gray

A B C D

0123456789101112131415

0 0 0 00 0 0 10 0 1 10 0 1 00 1 1 00 1 1 10 1 0 10 1 0 01 1 0 01 1 0 11 1 1 11 1 1 01 0 1 01 0 1 11 0 0 11 0 0 0

8

Circuitos Digitais

Código Gray

O código Gray, transpondo para o diagrama deVeitch-Karnaugh, apresenta a seguinte ordem decolocação:

0 1 2 3

7 6 5 4

8 9 10 11

15 14 13 12A

B

C

D

9 Circuitos Digitais

Destacaremos apenas os dois mais importantes:

1. Código 2 entre 5� Este código possui sempre 2 bits iguais a 1, dentro de 5 bits.

� Sua formação é assim vista:

Códigos de 5 Bits

Decimal 2 entre 5

A B C D E

0123456789

0 0 0 1 10 0 1 0 10 0 1 1 00 1 0 0 10 1 0 1 00 1 1 0 01 0 0 0 11 0 0 1 01 0 1 0 01 1 0 0 0

10

Circuitos Digitais

2. Código Johnson� Trata-se de um código que será utilizado na construção do

Contador Johnson.

� Sua formação é assim vista:

Códigos de 5 Bits

Decimal Johnson

A B C D E

0123456789

0 0 0 0 00 0 0 0 10 0 0 1 10 0 1 1 10 1 1 1 11 1 1 1 11 1 1 1 01 1 1 0 01 1 0 0 01 0 0 0 0

11

Código 9876543210� Código de 10 bits bastante utilizado em sistemas antigos

em que mostradores de algarismos eram a válvulas.� Nota-se, no código, que em 10 saídas somente uma vale

1 em cada caso, acendendo assim o algarismo correspon-dente.

Circuitos Digitais

Decimal 9 8 7 6 5 4 3 2 1 0

0123456789

0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 1 00 0 0 0 0 0 0 1 0 00 0 0 0 0 0 1 0 0 00 0 0 0 0 1 0 0 0 00 0 0 0 1 0 0 0 0 00 0 0 1 0 0 0 0 0 00 0 1 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0 01 0 0 0 0 0 0 0 0 0

12

Page 3: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

3

Circuitos Digitais

� Vamos, agora, tratar de circuitos que efetuam a passagem de um determinado código para outro.

� Codificador ⇒ circuito combinacional que torna possível a passagem de um código conhecido para um desconhecido.� Ex: circuito inicial de uma calculadora ⇒ entrada decimal

(chaves do teclado) para saída binária (para que processe e faça a operação).

� Decodificador ⇒ circuito que faz o inverso (passa um código desconhecido para um conhecido).� Ex: calculadora ⇒ transforma o resultado de uma operação

em binário em uma saída decimal no mostrador.

Codificadores e Decodificadores

13 Circuitos Digitais

� Os termos codificador e decodificador diferenciam-se em função do referencial.

� Ex: sistema de entrada da calculadora.� Para o usuário: é um codificador.

� Para o processador: é um decodificador, pois passa de um código desconhecido para ele (decimal), para um conhecido (binário).

� Na prática, é comum se usar o termo decodificador para o sistema que passa de um código pra outro, quaisquer que sejam.

Codificadores e Decodificadores

14

Circuitos Digitais

� Objetivo: elaborar um codificador para transformar um código decimal em binário (BCD 8421).

� Entrada (código decimal) ⇒ conjunto de chaves de 0 a 9.

� Saída (BCD 8421) ⇒ 4 fios (para fornecer um código binário de 4 bits, correspondente à chave acionada).

� A figura abaixo mostra a estrutura geral deste sistema, convencionando-se que chave fechada equivale a nível 0, e que terminal de entrada em vazio (chave aberta) equivale a nível 1.

Codificador Decimal/Binário

15 Circuitos Digitais

� Tabela verdade do codificador que relaciona cada chave de entrada decimal com a respectiva saída em binário:

Codificador Decimal/Binário

Decimal A B C D

Ch0Ch1Ch2Ch3Ch4Ch5Ch6Ch7Ch8Ch9

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

Conclusão:� Saída A valerá 1 quando Ch8 ou Ch9

for acionada.� Saída B quando Ch4, Ch5, Ch6 ou Ch7

for acionada.� Saída C quando Ch2, Ch3, Ch6 ou Ch7

for acionada.� Saída D quando Ch1, Ch3, Ch5, Ch7 ou

Ch9 for acionada.

16

Circuitos Digitais

� Usaremos, para a construção do circuito, uma porta NE em cada saída, pois esta fornece nível 1 quando qualquer uma de suas entradas assumir nível 0 (situação compatível com a convenção adotada para o conjunto de chaves).

� O circuito é assim construído:

Codificador Decimal/Binário

Nota-se que a chave Ch0 não está ligada a nenhuma das entradas das portas, sendo irrelevante o seu acionamento, pois a saída também será 0 (A = B = C = D = 0) quando nenhuma das chaves for acionada.

17 Circuitos Digitais

� A estrutura geral deste decodificador é:

Decodificador Binário/Decimal

� Vamos montar a tabela verdade do circuito ⇒ as entradas são bits do código BCD 8421 e as saídas são os respectivos bits do código decimal 9876543210.

� O código BCD 8421 não possui números maiores que 9.� Logo, não importa quando o valor excede o limite, uma vez

que ao converter o código BCD 8421 para o código 987654 3210, os valores excedentes não irão ocorrer.

18

Page 4: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

4

Circuitos Digitais

� Nos diagramas de Veitch-Karnaugh, estes casos excedentes são vistos como condições irrelevantes.

Decodificador Binário/Decimal

BCD 8421 Código 9876543210

A B C D S9 S8 S7 S6 S5 S4 S3 S2 S1 S0

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

0 0 0 0 0 0 0 0 0 10 0 0 0 0 0 0 0 1 00 0 0 0 0 0 0 1 0 00 0 0 0 0 0 1 0 0 00 0 0 0 0 1 0 0 0 00 0 0 0 1 0 0 0 0 00 0 0 1 0 0 0 0 0 00 0 1 0 0 0 0 0 0 00 1 0 0 0 0 0 0 0 01 0 0 0 0 0 0 0 0 0

19

� As figuras abaixo mostram os diagramas de todas as saídas do decodificador (S9 a S0) e suas respectivas simplificações.

Circuitos Digitais

Decodificador Binário/Decimal

0 0 0 0

0 0 0 0

x x x x

0 1 x xA

B

C

D

S9: 0 0 0 0

0 0 0 0

x x x x

1 0 x xA

B

C

D

S8:

0 0 0 0

0 0 1 0

x x x x

0 0 x xA

B

C

D

S7: 0 0 0 0

0 0 0 1

x x x x

0 0 x xA

B

C

D

S6:

S9 = AD S8 = AD�

S7 = BCD S6 = BCD�20

Circuitos Digitais

Decodificador Binário/Decimal

0 0 0 0

0 1 0 0

x x x x

0 0 x xA

B

C

D

S5: 0 0 0 0

1 0 0 0

x x x x

0 0 x xA

B

C

D

S4:

0 0 1 0

0 0 0 0

x x x x

0 0 x xA

B

C

D

S3: 0 0 0 1

0 0 0 0

x x x x

0 0 x xA

B

C

D

S2:

S5 = BC�D S4 = BC�D�

S3 = B�CD S2 = B�CD�

21 Circuitos Digitais

Decodificador Binário/Decimal

A partir das expressões simplificadas, obtemos o circuito do decodificador, como visto na figura seguinte.

0 1 0 0

0 0 0 0

x x x x

0 0 x xA

B

C

D

S1: 1 0 0 0

0 0 0 0

x x x x

0 0 x xA

B

C

D

S0:

S1 = A�B�C� D S0 = A�B�C� D�

22

Circuitos Digitais

Decodificador Binário/Decimal

23

� De forma análoga ao processo visto no decodificadoranterior, podemos construir decodificadores que passemde qualquer código para qualquer outro.

� Para isso, basta montarmos a tabela verdade, simplificaras expressões de saída e implementarmos o circuito.

� Para exemplificar, vamos implementar o decodificadorBCD 8421 para Excesso de 3.

� Inicialmente, montamos a tabela verdade.

Circuitos Digitais

Projetos de Decodificadores

24

Page 5: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

5

Circuitos Digitais

Decodificador BCD 8421 / Excesso de 3

� Podemos notar que o código BCD 8421 é utilizado para representar até o algarismo 9.

� As outras possibilidades não irão ocorrer ⇒ para estas condições a resposta torna-se irrelevante.

BCD 8421 Excesso de 3

A B C D S3 S2 S1 S0

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

0 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 0

25 Circuitos Digitais

Decodificador BCD 8421 / Excesso de 3

� Para simplificar as expressões, vamos montar osdiagramas de Veitch-Karnaugh.

0 0 0 0

0 1 1 1

x x x x

1 1 x xA

B

C

D

Agrupamentos: 1 oitava e2 quadras

S3 = A + B⋅D + B⋅C

S3:

0 1 1 1

1 0 0 0

x x x x

0 1 x xA

B

C

D

Agrupamentos: 2 quadras e1 par

S2 = B⋅�D + B�⋅C + B⋅C⋅�D�

S2:

26

Circuitos Digitais

Decodificador BCD 8421 / Excesso de 3

O circuito decodificador, obtido a partir das expressões, é assimrepresentado:

1 0 1 0

1 0 1 0

x x x x

1 0 x xA

B

C

D

Agrupamentos: 2 quadras

S1 = C⋅�D�+ C⋅D ou

S1 = C ʘ D

S1:

1 0 0 1

1 0 0 1

x x x x

1 0 x x

B

C

D

Agrupamentos: 1 oitava

S0 = D�

S0:

A

27 Circuitos Digitais

Decodificador BCD 8421 / Excesso de 3

28

Circuitos Digitais

� No circuito, ao ser aplicado o código BCD 8421 nosterminais de entrada A, B, C e D, teremos nos terminaisde saída S3, S2, S1 e S0, o código Excesso de 3.

� Agora fica como atividade implementar o decodificadorinverso, ou seja, que transforme do código Excesso de 3para BCD 8421.

Decodificador BCD 8421 / Excesso de 3

29 Circuitos Digitais

� 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 abaixo ilustra um display genérico com a forma usual de identificação dos segmentos.

Display de 7 Segmentos

� Existem diversas tecnologias de fabricação de display.Usaremos o mais comum: display a led (cada segmentoé composto por um led).

30

Page 6: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

6

Circuitos Digitais

� Existem displays de 7 segmentos do tipo catodo comum e anodo comum.

� Display do tipo catodo comum ⇒ possui todos os catodos (terminais negativos) dos led’s interligados.� É necessário aplicar nível 1 no anodo respectivo para acender cada

segmento.

� Display do tipo anodo comum ⇒ possui todos os anodos (terminais positivos) interligados.� É preciso aplicar nível 0 ao catodo respectivo para acender cada

segmento.

Display de 7 Segmentos

31

Decodificador para Display de 7 Segmentos

Circuitos Digitais

� O objetivo agora é projetar um decodificador para a partir deum código binário (BCD 8421) escrever a sequência de 0 a 9em um display de 7 segmentos catodo comum.

� O esquema geral deste decodificador é mostrado na figuraabaixo.

� Para projetar este decodificador, devemos verificar em cadacaracter quais segmentos devem ser acesos e atribuir nível 1(no caso do catodo comum).

� A tabela a seguir apresenta a sequência de caracteres, orespectivo código de entrada e os níveis nos segmentos.

32

Decodificador para Display de 7 Segmentos

Circuitos Digitais 33

Decodificador para Display de 7 Segmentos

Circuitos Digitais 34

Decodificador para Display de 7 Segmentos

Circuitos Digitais

Resumindo, temos a seguinte tabela verdade:

BCD 8421 Código para 7 SegmentosDisplay

A B C D a b c d e f g

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

1 1 1 1 1 1 00 1 1 0 0 0 01 1 0 1 1 0 11 1 1 1 0 0 10 1 1 0 0 1 11 0 1 1 0 1 11 0 1 1 1 1 11 1 1 0 0 0 01 1 1 1 1 1 11 1 1 1 0 1 1

Para fins de simplificação, vamos considerar os casos fora da sequência como irrelevantes. Transpondo as saídas para os diagramas, temos:

0123456789

35 Circuitos Digitais

Decodificador para Display de 7 Segmentos

1 0 1 1

0 1 1 1

x x x x

1 1 x x

B

C

D

a:1 1 1 1

1 0 1 0

x x x x

1 1 x xA

B

C

D

b:

1 1 1 0

1 1 1 1

x x x x

1 1 x xA

B

C

D

c: 1 0 1 1

0 1 0 1

x x x x

1 1 x xA

B

C

D

d:

c = B + C� + D

A

a = A + C + BD + B�D� ou

a = A + C + B ʘ D

d = A + CD� + B�C + B�D� + BC�D

b = B� + C�D� + CD ou

b = B� + C ʘ D

36

Page 7: Introdução Circuitos Digitais - files.ccfacape.webnode.comfiles.ccfacape.webnode.com/200000101-7e2a1801db/aulaCD07.pdf · Codificador Decimal/Binário e Binário/Decimal Projetos

7

Circuitos Digitais

Decodificador para Display de 7 Segmentos

1 0 0 1

0 0 0 1

x x x x

1 0 x x

B

C

D

e: 1 0 0 0

1 1 0 1

x x x x

1 1 x xA

B

C

D

f:

0 0 1 1

1 1 0 1

x x x x

1 1 x xA

B

C

D

g:

A

f = A + C�D� + BC� + BD�e = CD� + B�D�

g = A + BC� + CD� + B�C ou

g = A + CD� + B ⊕ C

37 Circuitos Digitais

Circuito do decodificadorBCD 8421 para display de7 segmentos.

38

Circuitos Digitais

� Observe que o circuito poderia ser otimizado, pois asexpressões dos segmentos possuem vários termos emcomum ⇒ circuito com um número menor de portas.

� Porém, para melhor clareza didática, o circuito foideixado na sua forma original.

� Numa montagem prática, a ligação do display se fazatravés de resistores a fim de limitar a corrente nos leds.

� Os displays de 7 segmentos podem escrever outroscaracteres:

Decodificador para Display de 7 Segmentos

39

1. Elabore o decodificador BCD 8421 para 2 entre 5.

2. Projete um decodificador que transforme do código Gray para o sistema binário comum.

3. Projete um decodificador para, a partir de um código binário, escrever a sequência da figura abaixo em um display de 7 segmentos catodo comum.

Circuitos Digitais

Exercícios

40