CAI 1 Eletrônica Digital

Embed Size (px)

Citation preview

Eletrnica Digital SENAI- SP, 2000

Trabalho elaborado pela Escola SENAI Roberto Simonsen - Centro Nacional de Tecnologia em Mecnica -, do Departamento Regional de So Paulo.

Coordenao Geral Coordenao

Dionisio Pretel Paulo Roberto Martins Valdir Peruzzi

Elaborao

Regina Clia Roland Novaes Airton Almeida de Moraes

Contedo Tcnico

Aurlio Ribeiro Jos Roberto Nunes do Esprito Santo Julio Csar Caetano

Reviso Tcnica Ilustraes Editorao

lvaro Mamoru Horikoshi Jos Luciano de Souza Filho Adriano Ruiz Secco cio Gomes Lemos da Silva Silvio Audi

Escola SENAI Roberto Simonsen Rua Monsenhor Andrade, 298 Brs CEP 03008-000 - So Paulo, SP Tel. 011 3322-5000 Fax. 011 3322-5029 E-mail: [email protected] Home page: http://www.sp.senai.br

Sumrio

pgina Sistemas de numerao Operaes aritmticas Portas lgicas bsicas Portas lgicas derivadas Equaes lgicas Somadores e subtratores Circuitos biestveis Contadores Registrador de deslocamento Famlias lgicas Comparadores Decodificadores e codificadores Displays Conversor A/D Conversor D/A Circuitos multiplexadores e demultiplexadores 3 12 18 29 43 63 75 90 102 113 133 137 146 152 164 183

Neste captulo, apresentaremos os sistemas de numerao que auxiliam o estudo das tcnicas digitais e sistemas de computao. A partir do sistema decimal, estudaremos os sistemas binrio e hexadecimal e o mtodo de converso entre esses sistemas. Para assimilar os contedos desta lio, necessrio que voc conhea perfeitamente o sistema decimal.

Dos sistemas de numerao existentes, os mais utilizados so o decimal, o binrio e o hexadecimal.

O sistema de numerao decimal utiliza dez algarismos para a sua codificao: 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9. Assim, a base desse sistema dez. Com esses dez algarismos, possvel representar qualquer grandeza numrica graas caracterstica do valor de posio. Desse modo, temos:

nmeros que representam as unidades: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. nmeros que representam as dezenas: 10, 11, 12, 13, 14, 15 ...; nos quais o nmero da posio 1 indica uma dezena e o outro dgito, a unidade.

nmeros que representam as centenas: 110, 111, 112, 113, 114, 115, 116 ... , nos quais o valor de posio 1 indica a centena, seguida pela dezena e pela unidade.

3

Assim, por exemplo, o nmero 385 indica: centenas 3 3 100 300 300 + dezenas 8 8 10 80 80 + unidades 5 51 5 5 Ou seja:

= 385

O nmero 385 tambm pode ser expresso por meio de uma potncia de base dez: centenas 3 3 100 300 3 10 +2

dezenas 8 8 10 80 8 101

unidades 5 51 5 + 5 100

Ou seja

=385

A potncia da base 10 indica o valor da posio do nmero.

O sistema de numerao binrio empregado em circuitos lgicos digitais. Esse sistema possui apenas dois algarismos: 0 e 1. Por isso, sua base dois (dois dgitos). Cada dgito ou algarismo binrio chamado de bit (do ingls "binary digit", ou seja: dgito binrio). Um bit , pois, a menor unidade de informao nos circuitos digitais.

4

A tabela a seguir mostra a correspondncia entre nmeros decimais e binrios. Decimal 0 1 2 3 4 5 6 7 8 9 Binrio 0 1 10 11 100 101 110 111 1000 1001 Decimal 10 11 12 13 14 15 16 Binrio 1010 1011 1100 1101 1110 1111 10000 -

Empregando a propriedade do valor de posio do dgito, podemos representar qualquer valor numrico com os dgitos 0 e 1. Como a base da numerao binria 2, o valor de posio dado pelas potncias de base 2, como mostra o quadro a seguir. Potncias de base 2 Valor de posio Binrio 24

2

3

2

2

2

1

2

0

16 1

8 0

4 0

2 1

1 1

O valor da posio indicado pelo expoente da base do sistema numrico. Esse valor aumenta da direita para a esquerda. O valor da posio do bit mais significativo (de maior valor) ser a base elevada a n - 1 (n = nmero de dgitos; nmero de bits).

5

Por exemplo, 101011 um nmero binrio de 6 bits. Ao aplicar a frmula, temos 6 - 1 = 5. Assim, o bit mais significativo ter como valor de posio 2 . Binrio Valor de posio 1 25 5

0 24

1 23

0 22

1 21

1 20

MSB (*)

LSB (**)

* MSB - do ingls most significant bit, ou seja, bit mais significativo. ** LSB - do ingls least significant bit, ou seja, bit menos significativo.

A base o elemento diferenciador entre um nmero do sistema binrio e um do sistema decimal. Portanto, 1012 por ser um nmero base 2, lido um, zero, um. J 10110, por ser um nmero de base 10, ligado como cento e um.

Para converter um nmero binrio em decimal, deve-se multiplicar cada bit pelo seu valor de posio (que indicado pela potncia de base) e somar os resultados.

Na converso de 1010 para o sistema decimal, procede-se da seguinte forma: potncia de 2 binrio valor de posio no decimal Portanto, 10102 = 1010 2 1 18 8 +3 2

2 0

2

2 1

1

2 0

0

04 0 +

12 2 +

01 0 = 1010

6

Observe a seguir uma tabela das potncias de base 2. Potncia 2 2 2 2 2 2 2 2 20 1 2 3 4 5 6 7 8

Decimal 1 2 4 8 16 32 64 128 256

Potncia 2 2 2 2 2 2 2 2 29 10 11 12 13 14 15 16 17

Decimal 512 1024 2048 4096 8192 16384 32768 65536 131072

A converso de nmeros do sistema decimal para o sistema binrio realizada efetuando-se divises sucessivas do nmero decimal por 2 (base do sistema binrio).

Mtodo prtico

O nmero binrio formado pelo quociente da ltima diviso e os restos das divises sucessivas da direita para a esquerda: 2910 = 111012

Todo nmero decimal par, ao ser convertido para binrio, termina em zero. Por outro lado, todo o nmero decimal mpar ao ser convertido para binrio, terminar em um.

7

O sistema de numerao hexadecimal tem a base 16. Os dezesseis smbolos que constituem a numerao hexadecimal so os seguintes algarismos e letras: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Este sistema empregado em computao e em mapeamento de memrias de mquinas digitais que utilizam palavras de 4, 8 ou 16 bits. A tabela a seguir mostra a relao entre numerao decimal e a hexadecimal. Decimal 0 1 2 3 4 5 6 7 8 9 10 Hexa 0 1 2 3 4 5 6 7 8 9 A Decimal 11 12 13 14 15 16 17 18 19 20 21 Hexa B C D E F 10 11 12 13 14 15 Decimal 22 23 24 25 26 27 28 29 30 31 32 Hexa 16 17 18 19 1A 1B 1C 1D 1E 1F 20

Pela tabela, possvel observar que a contagem recomea a cada 16 dgitos. Os valores de posio da numerao hexadecimal sero as potncias de base 16. Observe o quadro a seguir. Potncias de base 16 Valores de posio 163

16

2

16

1

16 1

0

4096

256

16

8

A converso de um nmero hexadecimal realizada de mesmo modo como nos sistemas j estudados. Ou seja, multiplicandose cada dgito hexadecimal por seu valor de posio e somandose os resultados.

Converter 1A816 em decimal. potncias de 16 nmero hexadecimal valor de posio nmero decimal Portanto, 1A816 = 42410 16 1 1 256 256 +2

16 A

1

16 8 81 8 = (424)10 +

10 16 160

Para converter um nmero decimal em hexadecimal, executamse divises sucessivas do nmero decimal por 16, que a base do sistema hexadecimal. O nmero hexadecimal ser dado pelo ltimo quociente e pelos restos das divises.

O ltimo quociente e os restos das divises resultaro no nmero hexadecimal. Contudo, em nmero hexadecimal no existe o nmero 12. Na tabela j mostrada, vemos que a letra C em hexadecimal equivale ao nmero 12 decimal. Portanto, pela converso, obtivemos o nmero 307C. Portanto, 1241210 = 307C16.

9

A tabela a seguir mostra a correspondncia entre o sistema hexadecimal e o binrio. Hexadecimal 0 1 2 3 4 5 6 7 Binrio 0000 0001 0010 0011 0100 0101 0110 0111 Hexadecimal 8 9 A B C D E F Binrio 1000 1001 1010 1011 1100 1101 1110 1111

Pela tabela possvel observar que a cada cdigo hexadecimal correspondem quatro dgitos binrios. Desse modo, para converter cada algarismo ou letra do nmero hexadecimal no nmero binrio correspondente. Esse nmero binrio ter quatro dgitos.

Converter o nmero hexadecimal FACA16 em seu correspondente no sistema binrio. dgitos hexadecimais dgitos binrios F 1111 A 1010 C 1100 A 1010

Portanto, FACA16 = 11111010110010102

Para converter um nmero binrio em hexadecimal, basta separar o nmero binrio, da direita para a esquerda, em grupos de quatro bits. Em seguida, converte-se cada grupo no algarismo hexadecimal correspondente.

10

Se no for possvel formar um grupo de 4 bits, completa-se o grupo com zeros, ou seja: 100112, por exemplo, daria 000100112.

Converter 1010011012 para o sistema hexadecimal dgitos binrios nmero hexadecimal 0001 1 0100 4 1101 D

Na numerao hexadecimal no existe o nmero 13; em seu lugar usa-se a letra D. Portanto, o resultado da converso ser: 1010011012 = 14D16.

11

Qualquer operao executada por equipamentos munidos de circuitos lgicos digitais realizada necessariamente por meio de operaes aritmticas ou lgicas entre palavras binrias. Neste captulo, estudaremos as operaes de adio, subtrao e multiplicao, bem como as operaes lgicas E, OU, NO efetuadas entre palavras binrias. Para compreender bem esse assunto, voc precisa conhecer circuito integrado, operaes lgicas e sistema binrio.

Para facilitar a compreenso de circuitos lgicos e aritmticos, tais como somadores e subtratores necessrio estudar as operaes aritmticas de adio, subtrao e multiplicao de nmeros binrios.

A operao de adio de nmeros binrios idntica do sistema decimal. O sistema binrio, como j sabemos, possui apenas dois algarismos: 0 e 1. Para a realizao da soma, existem as seguintes condies: 0+0=0 1+0=1 0+1=1 1 + 1 = 0 e vai 1 = 10 (um, zero) ObservaoNa condio 1 + 1 = 10 (um, zero) est exemplificada a regra de transporte na qual 1 transportado para a coluna seguinte, ou seja, "vai um".Por exemplo, a soma

12

de 1102 + 1012, de acordo com essas regras realizada do seguinte modo: 1*

transporte ou vai-um 1 1 0 1 02 12 12 1 0

+ 1

Assim, 1102 + 1012 = 10112

O processo de subtrao binria igual ao de subtrao decimal. As regras da subtrao binria so: 0-0=0 1-1=0 1-0=1 0 - 1 = 1 e "empresta um" Observao Na condio 0 - 1 = 1 est exemplificada a regra de transporte na qual 1 emprestado da coluna seguinte. Veja, por exemplo, a subtrao de 1102 - 102: 1 1 1 1 0 02 02 02

Assim, 1102 - 102 = 1002

13

Veja, agora, um exemplo com "empresta um": 1 1 1 0 1 0 1 1 1 0 0 1 0 1 1 12 02 12 transporte ou emprstimo de 1

Assim, 1001012 - 10102 = 110112

A subtrao de nmeros binrios pode ser efetuada pela soma do complemento. Esse mtodo possui trs variaes: soma simples do complemento; soma do complemento de 1; soma do complemento de 2.

Para realizar a subtrao por soma simples do complemento, procede-se da seguinte forma:

determina-se o complemento do minuendo (transformando em 0 e o 0 em 1); soma-se o subtraendo; determina-se o complemento do resultado.

o1

Exemplo Subtrair 00102 de 01112 1 0 0 02 0 0 1 02 1 0 1 02 (complemento de 0111) + 0 1 0 1 (complemento de 1010)

Portanto, o resultado 01012. Pode-se provar a exatido desse resultado comparando-se com o da subtrao decimal: 0 1 1 12 0 0 1 02 0 1 0 1214

-

710 510

- 210

Esse mtodo de subtrao segue a seguinte seqncia: 1. determina-se o complemento de 1 do subtraendo, transformando-se o 0 em 1 e o 1 em 0; 2. efetua-se a soma do minuendo com o complemento de 1 do subtraendo; 3. soma-se o vai-um ao bit menos significativo. Exemplo Subtrair 01102 de 11012 1 1 0 12 1 0 0 12 1 0 1 1 02 vai-um Soma do vai-um ao resultado: 0 1 1 02 12 0 1 1 12 Portanto, 01112 o resultado final. Pode-se comprovar esse resultado, comparando-o com o obtido na subtrao decimal. complemento de 1 de 0110

+

1 _ 1 0 0 1 1 1

1 0 1 1 12 02 12 _ 1310

610 710

15

Observao Se o subtraendo tiver menos dgitos do que o minuendo, deve-se completar com zeros as posies que faltarem antes de complementar o subtraendo. Por exemplo:

_ 1

0

0 0

1 1

12 12

_ 1

0 0

0 0

1 1

12 12

+ 1

0 1 1 0

0 1 1 0

1 12 0 02 1 1 + 1

0

1 1 0 1

0 02

O resultado pode ser provado se comparado com o resultado da operao executada com nmeros decimais: 1 0 0 1 12 0 1 12 1 0 0 0 02 1910 310 1610

_

_

O mtodo de subtrao pela soma do complemento de 2 segue a seguinte seqncia: 1. determina-se o complemento de 1 do subtraendo; 2. soma-se 1 ao subtraendo (complemento de 1) a fim de obter o complemento de 2; 3. soma-se o minuendo com o complemento de 2 do subtraendo; 4. ignora-se o vai-um do resultado da soma. Exemplo Efetuar a seguinte subtrao: 11012 - 01102 1 0 0 12 complemento 1 do subtraendo 12 1 0 1 02 complemento de 2 do subtraendo + 1 1 0 12 minuendo 1 0 1 02 complemento de 2 do subtraendo (1) 0 1 1 1 2

+

16

Como o vai-um ignorado, o resultado de 11012 - 01102 = 01112

A multiplicao de nmeros binrios feita do mesmo modo como no sistema decimal, ou seja: 0.0=0 0.1=0 1.0=0 1.1=1 Exemplo Multiplicar 110102 . 102 1 1 0 1 02 . 1 02 0 0 0 02 1 1 0 1 02 1 1 0 1 0 02 2610 . 210 5210

17

!

Os circuitos eletrnicos so divididos em dois grupos: circuitos analgicos e circuitos digitais. Nos circuitos analgicos, os componentes operam normalmente de forma contnua ou linear, como, por exemplo os amplificadores e as fontes reguladas. Os circuitos digitais, tambm chamados de chaveadores, empregam componentes semicondutores que operam nos estados de corte ou saturao. o caso de um transistor que, conectado a um circuito, em um momento est cortado e no outro, saturado. A partir de agora vamos comear a estudar os circuitos digitais. Antes, porm, sero apresentados conceitos bsicos que voc dever aprender a fim de compreender melhor o funcionamento desse tipo de circuito. Eles so: estados ou nveis lgicos, funes lgicas e operaes lgicas.

"# !Em sistemas digitais, trabalha-se com dois estados ou nveis lgicos, pois a eletrnica digital apoia-se no princpio da lgica que considera uma proposio verdadeira ou falsa.

18

Assim, um ponto qualquer do circuito digital pode assumir apenas um de dois estados antagnicos:

ligado ou desligado alto ou baixo fechado ou aberto

saturado ou cortado com pulso ou sem pulso excitado ou desexcitado

Suponhamos, por exemplo, um circuito em que uma lmpada acionada por um interruptor. Nesse caso, a lmpada pode assumir os estados: acesa ou apagada. Um rel, dentro de um circuito, assume os estados energizado ou desenergizado. Do mesmo modo, um transistor ligado como chave no circuito pode assumir os estados saturado ou cortado. Os sistemas digitais processam apenas os nmeros binrios 1 (um) e 0 (zero). Isso significa que se associarmos o valor binrio 1 a um estado ou nvel lgico, associaremos o valor binrio 0 ao outro estado.

$

!A funo lgica (f) uma varivel dependente e binria. Seu valor o resultado de uma operao lgica em que se relacionam entre si duas ou mais variveis binrias. As funes lgicas operam com variveis independentes (elementos de entrada em um circuito) e com variveis dependentes (elementos de sada). Veja os circuitos a seguir.

Conveno A e B - variveis independentes (de entrada) Y ou S - varivel dependente (de sada)

19

Normalmente, as variveis lgicas independentes (de entrada) so representadas por letras maisculas A, B, C...; as variveis dependentes (de sada), por S ou Y. As funes lgicas tm apenas dois estados: o estado 0 e o estado 1.

!A relao entre duas ou mais variveis que representam estados estabelecida atravs de operaes lgicas. As operaes lgicas so:

produto ou multiplicao lgica; soma ou adio lgica; inverso ou complementao lgica.

Essas operaes, nos circuitos ou sistemas lgicos, so efetuadas por blocos denominados portas lgicas.

!Portas so unidades bsicas de sistemas lgicos eletrnicos. Porta lgica qualquer arranjo fsico capaz de efetuar uma operao lgica. As portas lgicas operam com nmeros binrios, ou seja, com os dois estados lgicos 1 e 0. Os sistemas digitais, mesmo os mais complexos como os computadores, so constitudos a partir de portas lgicas bsicas. As portas lgicas bsicas so trs:

a porta E que realiza a operao produto ou multiplicao lgica; a porta OU que realiza a operao soma ou adio lgica; a porta NO ou inversora que realiza a operao inverso, ou negao ou complementao lgica.

20

"A funo E aquela que assume o valor 1 quando todas as variveis de entrada forem iguais a 1; e assume o valor 0 quando pelo menos uma das variveis de entrada for igual a 0. A operao E ("AND" em ingls) a multiplicao ou o produto lgico de duas ou mais variveis binrias. Essa operao pode ser expressa da seguinte maneira: Y = A B. Essa expresso lida da seguintes forma: a sada Y igual a A e B. Observao O ponto uma funo lgica e l-se e. A figura a seguir mostra o circuito eltrico equivalente porta E.

Conveno Chave aberta = 0 Chave fechada = 1 Lmpada apagada = 0 Lmpada acesa = 1

Neste circuito, a lmpada (sada Y) acender (1) somente se ambas as chaves de entrada A e B estiverem fechadas (1). A seguir, apresentamos todas as combinaes possveis das chaves A e B, assim como a respectiva tabela-verdade que a forma de representao grfica das funes lgicas. Combinaes possveis Chaves de entrada B aberta aberta fechada fechada A aberta fechada aberta fechada Sada (lmpada) Y apagada apagada apagada acesa B 0 0 1 1 Tabela-verdade Entrada A 0 1 0 1 Sada Y 0 0 0 1

21

Os smbolos ou blocos lgicos para a porta E, de acordo com as normas ABNT e ASA, so mostrados a seguir. Observe as duas variveis de entrada A e B e a sada Y.

Muitas vezes, um circuito lgico tem trs variveis, ou seja, uma porta E de trs entradas (A, B e C) e uma sada (Y). Neste caso, a operao ser expressa assim: Y = A . B . C. Os smbolos da porta E com trs variveis de entrada so mostrados a seguir.

Observao possvel construir uma porta E de trs entradas empregando duas portas E de duas entradas. A ilustrao a seguir mostra o diagrama de blocos lgicos da porta E de trs entradas bem como seu circuito eltrico equivalente.

22

As combinaes possveis da operao E com trs variveis e a tabela-verdade correspondente so apresentadas a seguir. Combinaes possveis Chaves Sada de entrada Lmpada C aberta aberta aberta aberta fechada fechada fechada fechada B aberta aberta fechada fechada aberta aberta fechada fechada A aberta fechada aberta fechada aberta fechada aberta fechada Y apagada apagada apagada apagada apagada apagada apagada acesa C 0 0 0 0 1 1 1 1 Tabela verdade Entradas B 0 0 1 1 0 0 1 1 A 0 1 0 1 0 1 0 1 Sadas Y 0 0 0 0 0 0 1 1

%A funo OU aquela que assume valor 1 quando uma ou mais variveis de entrada forem iguais a 1; e assume o valor 0 quando todas as variveis de entrada forem iguais a 0. A operao OU, executada pela porta OU ("OR" em ingls) a soma lgica de duas ou mais variveis binrias. Essa operao expressa do seguinte modo: Y = A + B. A expresso lida da seguinte forma: a sada Y igual a A ou B. Observao O smbolo + nesta expresso significa OU. A figura a seguir mostra o circuito eltrico equivalente porta OU.

23

Conveno Chave aberta = 0 Chave fechada = 1 Lmpada apagada = 0 Lmpada acesa = 1

A lmpada (Y) acender quando ou a chave A ou a chave B estiver fechada. Ela tambm acender quando A e B estiverem fechadas. Quando A e B estiverem abertas, a lmpada no acender. A seguir, veja as combinaes possveis das chaves e tambm a tabela-verdade da funo OU. Combinaes possveis Chaves de entrada B aberta aberta fechada fechada A aberta fechada aberta fechada Sada lmpada Y apagada acesa acesa acesa B 0 0 1 1 Tabela-verdade Entrada A 0 1 0 1 Sada Y 0 1 1 1

Observe, nas tabelas, como a sada do circuito OU ativada quando pelo menos uma ou todas as chaves estiverem fechadas. Os smbolos lgicos da porta OU com duas entradas (A e B) e a sada (Y) esto esquematizados na ilustrao a seguir.

24

Uma porta OU de trs entradas apresenta as variveis A, B e C para as entradas e Y para a sada. Neste caso, a operao ser expressa da seguinte forma: Y=A+B+C Os smbolos da porta OU com trs variveis de entrada so mostrados a seguir.

Observao possvel construir uma porta OU de trs entradas utilizando duas portas OU de duas entradas. A ilustrao a seguir mostra o diagrama de blocos lgicos da porta OU de trs entradas, obtida partir de duas portas ou de duas entradas, bem como seu circuito eltrico equivalente.

25

Observe agora a tabela das combinaes possveis da porta OU de trs variveis e sua respectiva tabela-verdade. Combinaes possveis Chaves Sada de entrada Lmpada C aberta aberta aberta aberta fechada fechada fechada fechada B aberta aberta fechada fechada aberta aberta fechada fechada A aberta fechada aberta fechada aberta fechada aberta fechada Y apagada acesa acesa acesa acesa acesa acesa acesa C 0 0 0 0 0 1 1 1 Tabela verdade Entradas B 0 0 1 1 1 0 1 1 A 0 1 0 1 1 1 0 1Sadas

Y 0 1 1 1 1 1 1 1

&'A funo NO, ou funo complemento, ou ainda, funo inversora a que inverte o estado da varivel de entrada. Se a varivel de entrada for 1, ela se tornar 0 na sada. Se a varivel de entrada for 0, ela se tornar 1 na sada. A operao lgica inverso realizada pela porta lgica NO ("NOT" em ingls). Ela consiste em converter uma dada proposio em uma proposio a ela oposta. expressa da seguinte maneira: Y = A . Essa expresso lida da seguinte forma: sada Y igual a no A pois o trao sobre o A significa no. Para o A pode-se dizer tambm A barrado ou A negado.

26

Veja a seguir o circuito eltrico equivalente a uma porta NO e seus smbolos lgicos.

Conveno Chave aberta = 0 Chave fechada = 1 Lmpada apagada = 0 Lmpada acesa = 1

A lmpada Y acender (1) quando a chave A estiver aberta (0). Quando a chave A estiver fechada (1), a lmpada no acender. Veja a seguir, as combinaes possveis da chave e a respectiva tabela-verdade. Combinaes possveis Chaves de Saida entrada (lmpada) A aberta fechada Y acesa apagada Tabela verdade Entrada A 0 1 Sada Y 1 0

Quando houver negao de uma varivel j negada, ( A , que se l: A barrado barrado; ou ainda, no no A).Quando o nmero de barras sobre uma varivel for par, o resultado ser a prpria varivel, se for mpar, a varivel ser negada: Y=A= A Em uma expresso, quando a barra estiver sobre uma varivel, somente essa varivel negada. Por exemplo, na expresso Y = A . B, somente a varivel A negada.

27

O diagrama de blocos dessa expresso apresenta a seguinte configurao:

Quando a barra estiver sobre toda a expresso, ou seja, Y = A + B , o resultado da expresso que ser negado. Essa expresso representada pelo diagrama de blocos mostrado a seguir. Observe que a negao atua sobre a sada da porta OU, que o resultado da expresso.

Pode-se demonstrar essa afirmao pela tabela-verdade da expresso Y = A + B . Entrada A 0 0 1 1 B 0 1 0 1 A+B 0 1 1 1 Y A +B 1 0 0 0

28

!

Os sistemas digitais mais complexos como os computadores de grande porte, so construdos a partir das portas lgicas bsica E, OU e NO. A partir dessas portas podem-se construir quatro outras portas denominadas de portas lgicas derivadas. Elas so: porta NE (ou NO E), a porta NOU (ou NO OU), a porta OU EXCLUSIVO e a porta NO OU EXCLUSIVO. Neste captulo sero estudados os smbolos lgicos, a tabelaverdade e a expresso booleana das portas lgicas derivadas usadas em sistemas digitais. Vamos iniciar esse estudo por alguns conceitos da lgebra de Boole e que so necessrios ao estudo da lgica digital. Para isso, preciso ter conhecimentos anteriores sobre portas lgicas bsicas e construo de tabela-verdade.

(!)A lgebra de Boole a parte da matemtica destinada anlise e projetos de sistemas lgicos. Seu criador foi o matemtico ingls George Boole (1815-1864). A lgebra booleana opera com variveis que s podem assumir dois valores lgicos, usando para isso nmeros binrios 0, 1. Por exemplo, na funo Y = A + B, tanto a varivel A, como a B e a Y podem assumir os valores 0 ou 1. A lgebra booleana aplicada aos sistemas digitais que tambm trabalham com dois estados ou nveis lgicos. Para operar matematicamente dentro dos princpios da lgebra booleana,

29

basta associar o valor binrio 1 a um dos estados lgicos e o valor binrio 0 ao outro estado.

!*

Na lgebra booleana, as operaes lgicas bsicas so trs: Operao Multiplicao ou produto lgico - E Adio ou soma lgica - OU Negao ou inverso ou complementao - NO Expresso AB A+B A L-se AeB A ou B A barrado ou no A

!A operao produto lgico (ou multiplicao) permite obter uma nova proposio (sada Y) a partir de duas ou mais proposies (variveis A, B, C, ...), ligadas pela palavra E. A expresso algbrica booleana para a operao E : Y=AB A expresso booleana da operao E : Y=AB A operao E definida pela tabela a seguir. A 0 0 1 1 B 0 1 0 1 Y (A B) 0 0 0 1

Lembre-se de que a porta E pode ter duas ou mais entradas e ter sempre uma nica sada. Essa sada ter o estado 1 somente quando todas as entradas tiverem o estado 1.

30

As propriedades da operao E e as respectivas expresses booleanas so as seguintes:

associativa: A (BC) = (AB) C comutativa: AB = BA distributiva: A + (BC) = (A + B) (A + C)

A ttulo de exemplo, vamos demonstrar como, atravs da tabelaverdade, pode-se provar a propriedade associativa da operao E. A (BC) = (AB) C Y1 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 (B C) 0 0 0 1 0 0 0 1 A (BC) 0 0 0 0 0 0 0 1 (A B) 0 0 0 0 0 0 1 1 Y2 (AB) C 0 0 0 0 0 0 0 1

Observao As colunas dos resultados ou sadas (Y1 e Y2) apresentam, linha por linha, os mesmos valores. Isso prova que A (BC) = (AB) C.

A operao E possui as seguintes identidades bsicas: a) A 0 b) A 1 c) A A =0 =A =A

d) A A = 0

31

Observao o postulado da multiplicao lgica que determina as regras da multiplicao booleana, ou seja: (A) (B) = a) b) c) d) 0 0 1 1 0 = 1 = 0 = 1 = (Y) 0 0 0 1

Vamos agora analisar cada identidade bsica a partir desse postulado. a) A 0 = 0 Postula-se que todo nmero multiplicado por 0 (zero) igual a 0 (zero). Temos assim as seguintes possibilidades: (A) (B) = (Y) sendo B = 0 Se A = 0 Se A = 1 0 0 = 0 1 0 = 0

Assim, A 0 = 0 b) A 1 = A Todo nmero multiplicado por 1 (um) igual a ele mesmo. Demonstramos que se (A) (B) = (Y) sendo B = 1 Se A = 0 Se A = 1 0 1 = 0 1 1 = 1

Portanto: A 1 = A c) A A = A Existem duas possibilidades: (A) (B) = (Y) sendo A=B Se A = 0 Se A = 1 0 . 0 = 0 1 1 = 0

Portanto, A A = A d) A A = 0 Analisando as possibilidades: (A) (B) = (Y) sendo B= A Se A = 0, A = 1 Se A = 1, A = 0 Portanto: A A = 032

0 1 = 0 1 0 = 0

!A operao soma ou adio lgica permite uma nova proposio (sada Y) a partir de duas ou mais proposies (variveis A, B, C ...), ligadas pela palavra OU. A expresso algbrica booleana da operao OU : Y = A + B . A sada Y igual a A ou B. A expresso booleana da operao OU : Y = A + B. A operao OU definida pela tabela mostrada a seguir. A 0 0 1 1 B 0 1 0 1 Y (A + B) 0 1 1 1

A porta OU pode ter duas ou mais entradas e uma s sada. Essa sada ter o estado 1 quando pelo menos uma ou todas as entradas tiverem o estado 1.

As propriedades da operao OU e as respectivas expresses booleanas so as seguintes:

associativa: A + (B + C) = (A + B) + C comutativa: A + B = B + A distributiva: A (B + C) = AB + AC

33

A ttulo de exemplo, a propriedade distributiva da operao OU A (B + C) = AB + AC, demonstrada a seguir por meio da tabelaverdade. Y1 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 (B + C) 0 1 1 1 0 1 1 1 A (B + C) 0 0 0 0 0 1 1 1 (A B) 0 0 0 0 0 0 1 1 (A C) 0 0 0 0 0 1 0 1 Y2 AB + AC 0 0 0 0 0 1 1 1

Observao As colunas dos resultados ou sadas apresentam, linha por linha, os mesmos valores, isto Y1 = Y2. Deste modo provamos que: A (B + C) + AB + AC

A operao OU possui as seguintes identidades bsicas: a) A + 0 = A b) A + 1 = 1 c) A + A = A d) A + A = 1 Observao O postulado da adio determina as regras da adio dentro da lgebra booleana. (A) + (B) = (Y) a) 0 + 0 = 0 b) 0 + 1 = 1 c) 1 + 0 = 1 d) 1 + 1 = 1

34

A partir desse postulado possvel analisar cada identidade bsica. a) A + 0 = A As possibilidades so: (A) + (B) = (Y), sendo B = 0 Se A = 0 A=1 0 + 0 = 0 1 + 0 = 1

O resultado ser, portanto, sempre A. b) A + 1 = 1 (A) + (B) = (Y), sendo B = 1 Se A = 0 A=1 0 + 1 = 1 1 + 1 = 1

O resultado ser sempre 1. Portanto, A + 1 = 1 c) A + A = A (A) + (B) = (Y), sendo B = A Se A = 0 A=1 0 + 0 = 0 1 + 1 = 1

Conclui-se que ao efetuar a soma lgica da mesma varivel, o resultado ser essa mesma varivel. d) A + A = 1 possvel demonstrar que sempre que efetuarmos a soma lgica de uma varivel ao seu complemento, o resultado ser 1. (A) + (B) = (Y), sendo B = A Se A = 0 e A = 1 A=1e A =0 0 + 1 = 1 1 + 0 = 1

A operao lgica inverso ou negao ou complementao consiste em converter uma proposio dada numa proposio a ela antagnica. A expresso algbrica booleana da operao no de acordo com o enunciado : entrada A).35

Y= A (a sada Y igual a negao da

A operao NO definida pela seguinte tabela:A

Y (A) 1 0

0 1

A operao inverso, executada pela porta NO, tem apenas uma entrada e uma sada. A sada ter o estado 1 quando a entrada for 0, pois a negao ou oposto de 1 0.

As identidades bsicas da operao NO so: (A) (B) (Y), sendo B = A a) A + A = 1 b) A d A = 0 c) A = A A = A

Observao Ao complemento de A, chamamos A (l-se: no A ou A barrado). Desse modo, temos: A = 0 A = 1 a) A + A = 1 (A) (B) (Y) Se A = 0, A = 1 A = 1, A = 0 Portanto, A ou A = 1. b) A . A = 0 Se A = 0, A = 1 A = 1, A = 0 Portanto, A e A = 0. 0 1 = 0 1 0 = 0 0 + 1 = 1 1 + 0 = 1 A = 1 A = 0

36

c) A = A (no no A = A) Se A = 0, A = 1; ento A = 0 Portanto, A = A Ou, A = 1 A = 0, donde: A = 1 Portanto, A = A. A identidade vlida para nmero par de barras na varivel de entrada

d) A = A (no no no A = no A) Se A = 0; A = 1, A = 0 ento A = 1 Se A = 1; A = 0, A = 1 ento A = 0 Portanto A = A . A identidade vlida para nmero mpar de barras na varivel de entrada.

!As portas lgicas derivadas so:

porta NO E ou NE; porta NO OU ou NOU; porta OU EXCLUSIVO ou XOU; porta NO OU-EXCLUSIVO ou XNOU

! " #Quando um inversor conectado sada de uma porta E, obtemos uma porta NO E ("NAND" em ingls), cujos diagramas de blocos, segundo as normas ABNT e ASA, so mostrados a seguir.

Nos diagramas, as entradas A e B so submetidas a uma operao E (A B). em seguida, A B invertida pela porta NO formando sada a seguinte expresso booleana: Y = AB A barra sobre A . B indica a inverso do produto A e B.37

A operao NO E uma composio da operao E com a operao NO. Isso significa que ela resulta na funo E invertida. Isso pode ser verificado na tabela-verdade a seguir. Entradas A 0 0 1 1 B 0 1 0 1 (A B) 0 0 0 1 Sada (AB) 1 1 1 0

Os smbolos lgicos da porta NE so mostrados a seguir.

A porta NO E como outros blocos lgicos pode ter duas ou mais entradas. uma porta amplamente usada em sistemas digitais e considerada a porta universal. Observao possvel obter um circuito NO, a partir de um NO E de vrias entradas. Para isso, basta ligar as entradas em paralelo de modo que elas constituam uma nica entrada, conforme mostra a ilustrao a seguir.

38

! Quando se conecta um inversor sada de um porta OU, obtemos uma porta NOU ("NOR" em ingls). O diagrama de blocos a seguir indica como formada uma porta NOU.

Nesse circuito, uma porta OU est conectada a um inversor. As entradas A e B so submetidas a uma operao OU (A + B). Em seguida, A + B invertida pela porta NO, formando sada a seguinte expresso booleana: Y = A + B . A tabela-verdade a seguir mostra a operao da porta NOU. A coluna de sada da porta NOU o complemento ou inverso da operao OU. Entradas A 0 0 1 1 B 0 1 0 1 (A + B) 0 1 1 1 Sada (A +B) 1 0 0 0

A operao NO OU resulta verdadeira (1) quando todas as variveis de que dependa so falsas (0). Veja a seguir, os smbolos lgicos da porta NO OU.

39

$%&' "$#A porta OU-EXCLUSIVO ("XOR" em ingls) ativada somente quando na entrada aparecer um nmero mpar de uns (regra geral). Ou, a sada ser 1 quando as variveis de entrada forem diferentes. Na tabela-verdade a seguir, observe que as entradas das linhas 2 e 3 tm um nmero mpar de uns. Entradas A 0 0 1 1 B 0 1 0 1 Sada Y ( A B + A B) 0 1 1 0

Observe agora a expresso booleana da porta XOU extrada da tabela-verdade: Y = A B + A B . Com essa expresso booleana, pode ser desenvolvido um circuito lgico usando portas E, OU e inversoras.

Os circuitos mostrados podem ser tambm representados da seguinte maneira.

40

Este circuito executa a funo lgica XOU. A entrada A e a entrada B so submetidas juntas e exclusivamente a uma operao OU. Veja aos smbolos lgicos da porta XOU.

A expresso booleana A B = Y uma expresso XOU simplificada. O smbolo () significa OU-EXCLUSIVO em lgebra booleana. A expresso Y = A B = A B + A B lida da seguinte maneira: a sada igual a A OU-EXCLUSIVO B.

$%&' "$ # %(A porta NOU-EXCLUSIVO ("XNOR" em ingls) executa a operao NO OU-EXCLUSIVO que a inverso do resultado da operao XOU (OU-EXCLUSIVO). Veja a seguir a tabela-verdade da porta NOU-EXCLUSIVO de duas entradas: Entradas A 0 0 1 1 B 0 1 0 1 (A B) 0 1 1 0 Sada (A B) 1 0 0 1

Observe que a sada da operao XNOU a inverso da operao XOU. Portanto, se a expresso algbrica booleana de XOU Y = A B, a expresso booleana de XNOU a negao ou inverso de XOU, ou seja: Y = A B . Enquanto a porta XOU um detetor de nmero mpar de uns, a porta XNOU detecta nmeros pares de uns. A porta XNOU produzir uma sada 1 quando um nmero par de uns aparecer

41

nas entradas. Esta porta tambm denominada COINCIDNCIA pois a sada ser 1 quando os nveis lgicos das duas entradas forem iguais (coincidirem). O circuito lgico formado por portas lgicas bsicas que executa a funo XNOU mostrado a seguir.

Como a funo XNOU a inverso da XOU tambm podemos fazer:

Esta funo tambm pode ser escrita da seguinte forma: Y = A B = ( AB ) . ( AB ) = ( A + B ) . ( A + B ) = AB + A B = A B. Veja a seguir os smbolos lgicos da porta XNOU.

42

"+ !

Voc j sabe que os circuitos lgicos correspondem a equaes booleanas que, por sua vez, so extradas da tabela-verdade. Contudo, construir circuitos lgicos diretamente das expresses booleanas da tabela-verdade um processo complexo. Esses circuitos podem ser simplificados, o que facilita sua montagem e diminui o custo do sistema pela economia dos blocos lgicos necessrios a sua construo. Neste captulo, vamos estudar os postulados, teoremas, propriedades e identidade da lgebra booleana. Isso nos permitir realizar a simplificao das expresses booleanas o que facilitar muito a execuo dos circuitos combinatrios, ou seja, aqueles cuja sada depende das combinaes das variveis de entrada. Para estudar este captulo, importante ter os seguintes conhecimentos da lgebra booleana: propriedades e identidades bsicas.

,-!

Os teoremas de De Morgan so empregados para simplificar as expresses algbricas booleanas. Primeiramente, vamos demonstrar e comparar as leis postuladas por De Morgan. Em seguida, veremos a aplicao desses postulados.

43

Teorema 1: O complemento do produto igual soma dos complementos. Ou seja: A B = A + B Veja, com o auxlio da tabela-verdade, como os resultados de cada termo das expresses so iguais. A 0 0 1 1 B 0 1 0 1B

A

A

0 0 0 1

B

A B

A +

B

1 1 0 0

1 0 1 0

1 1 1 0

1 1 1 0

Este teorema pode tambm ser deduzido pela equivalncia entre blocos lgicos, como por exemplo:A B (porta NE) = A + B (porta OU)

Esse teorema pode ser aplicado para mais de duas variveis:A B C... N = ( A + B + C ... + N)

44

Teorema 2: O complemento da soma igual ao produto dos complementos. A + B=A B Este teorema a extenso do primeiro. Assim, podemos escrever:A + B + C + ...N = ( A B C ... N)

A aplicao desse teorema demonstrada pela equivalncia entre blocos lgicos.A + B (porta NOU) A B (porta E)

Generalizando:A + B + C + ...N (porta NOU) A B C ...N (porta E)

Com o auxlio do teorema de De Morgan, fcil realizar a transferncia de expresso booleana de termos mnimos para a de termos mximos. Observao Entende-se por expresso booleana de termos mnimos, a expresso booleana resultante da soma de produtos. Expresso booleana de termos mximos aquela que resulta do produto das somas.

45

"+ !Para resolver qualquer problema, ou antes de iniciar um projeto lgico, constri-se primeiramente a tabela-verdade. Da tabelaverdade, extrai-se a expresso booleana correspondentes operao exata de um circuito digital.

"Pela anlise da tabela-verdade de um operao OUEXCLUSIVO, vamos mostrar como extrair uma expresso booleana de soma de produtos. A 1 2 3 4 0 0 1 1 B 0 1 0 1 Y 0 1 1 0

A tabela-verdade mostra que apenas as linhas 2 e 3 da tabela geram a sada 1. Na linha 2, as variveis de entrada correspondem a no A e B ( A B ). A outra combinao de variveis que gera 1 a da linha 3 A B . Essas variveis so o produto. A 1 2 3 4 0 0 1 1 B 0 1 0 1 Y 0 1 1 0 AB AB

Ao realizar a soma desses produtos ( A B + B A ), temos a expresso booleana completa, ou seja:Y=AB + AB

46

Esta uma expresso de soma de produtos ou de termo mnimo. A expresso booleana Y = A B + A B constitui-se num circuito de portas lgicas E-OU cujo diagrama de blocos lgicos mostrado a seguir.

Assim para a elaborao de um projeto lgico, deve-se:

construir a tabela-verdade; determinar a partir da tabela-verdade, a expresso booleana de termos mnimos (soma de produtos); a partir da expresso booleana de termos mnimos, esquematizar o circuito lgico.

"Pela anlise de uma operao OU-EXCLUSIVO, vamos demonstrar como extrair uma expresso booleana de produtos de somas. A 1 2 3 4 0 0 1 1 B 0 1 0 1 Y 0 1 1 0 AB A B

Na tabela-verdade, vemos que as linhas 1 e 4 geram a sada 0. Dessas linhas ser extrada a expresso booleana. Pelos resultados 0, chega-se sada Y. A expresso booleana ser:

Y =AB + AB

47

Para chegar sada Y, inverte-se a expresso: Y=AB + AB Para simplificar essa expresso, aplica-se primeiramente o segundo teorema de De Morgan. Isso resulta na seguinte expresso: Y = A B AB Aplicando, nessa expresso, o primeiro teorema de De Morgan, obteremos:

Y= A + B A + BSabendo-se que duas negaes equivalem a uma afirmao, ento: Y = (A + B) ( A + B) Aplicando, ento, a identidade bsica em ambos os termos, chegamos a: Y = (A + B) ( A + B) Essa expresso resultante uma expresso de produto de somas ou de termo mximo. Agora voc j sabe que as expresses booleanas podem ser tiradas de duas maneiras:

a partir dos uns de sada (termos mnimos ou soma de produtos). a partir dos zeros (termos mximos ou produto da soma).

Contudo, antes de extrair a expresso booleana de uma tabelaverdade, convm verificar que mtodo oferece maior facilidade: tirar a expresso pelos uns ou pelos zeros.

48

Observe que na tabela verdade a seguir, mais fcil extrair a expresso booleana pelos zeros (termos mximos ou produto da soma), pois pelos uns a expresso booleana seria mais longa e mais complexa. A 1 2 3 4 5 6 7 8 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Y 1 1 1 1 0 1 1 0 2 Termoo

1 Termo

o

A B C = Y

A B C = Y

Temos ento, a expresso booleana das variveis das linhas 5 e 8. Quando submetidas ao teorema de De Morgan, estas variveis daro um termo da expresso booleana: 1 Termo ( A B C) ( A B C) ( A + B + C)o

2 Termo + (A B C) + ( A + B + C) . ( A + B + C)

o

Y= Y= Y=

Portanto, a expresso booleana de termos mximos (produto de somas) ser: Y = ( A + B + C) ( A + B + C)

49

O diagrama de blocos OU-E, a seguir a implementao da expresso retirada da tabela-verdade.

Observe que as sadas das portas OU esto alimentando uma porta E.

-! + !

As leis e as propriedades fundamentais da operao da lgebra booleana permitem resolver problemas e projetos lgicos em diversas reas. Atravs de um exemplo, vamos demonstrar a aplicao desses princpios. Exemplo No setor de operao de uma empresa, um alarme dever disparar toda a vez que ocorrer uma das seguintes situaes:

faltar energia eltrica, o gerador auxiliar no entrar em funcionamento e as luzes de emergncia no acenderem; ou faltar energia eltrica, o gerador auxiliar funcionar e as luzes de emergncia no acenderem; ou houver energia eltrica, o gerador auxiliar funcionar e as luzes de emergncia no acenderem; ou houver energia eltrica, o gerador auxiliar funcionar e as luzes de emergncia acenderem.

50

Observao Lembre-se de que os passos a serem seguidos para resolver um problema lgico so:

a elaborao da tabela-verdade; a extrao da equao lgica; a execuo do circuito ou diagrama de blocos lgicos.

Para elaborar a tabela verdade deste problema, observamos que h trs variveis a considerar:

a energia eltrica (A); o gerador auxiliar (B); as luzes de emergncia (C).

Uma vez identificadas as variveis de entrada, estabelecemos a conveno em binrio para as situaes existentes:

falta de energia = 1

existncia de energia = 0 no-funcionamento do gerador = 0

funcionamento do gerador = 1 alarme disparado = 1

luzes de emergncia acesas = 1 luzes de emergncias apagadas = 0 alarme no disparado = 0

A tabela resultante : A B C Y 1 0 0 0 0 2 0 0 1 0 3 0 1 0 1 ABC 4 0 1 1 1 ABC 5 1 0 0 1 ABC 6 1 0 1 0 7 1 1 0 1 ABC 8 1 1 1 0 Observao A sada Y = 1 resultado das proposies dadas. Vejamos, por exemplo, a primeira proposio: se faltar energia eltrica (1), o gerador auxiliar no entrar em funcionamento (0), e as luzes de emergncia no acenderem, o alarme disparar (1).

51

Tal situao est representada na linha 5 da tabela (100). As demais situaes nas linhas em que a sada for Y = 1. Montada a tabela-verdade, extramos a expresso algbrica booleana a partir das situaes em que Y = 1. Dessa forma, teremos a expresso booleana de termos mnimos ou de soma de produtos. Na tabela-verdade montada, as linhas 3, 4, 5 e 7 geram a sada 1 (Y = 1). Para a linha 3 gerar a sada 1, temos as variveis de entrada A , B e C unidas por uma operao E: A .B. C Para a linha 4 gerar a sada 1, as entradas so A , B e C. Isso corresponde expresso: A .B.C Na linha 5, temos as entradas A, B e C . A expresso booleana : A. B . C Na linha 7, as entradas so A, B e C . A expresso booleana : A.B. C A expresso booleana total ser composta pela interligao desses quatro termos por uma operao OU. Y= A .B. C + A .B.C+A. B . C +A.B. C

52

Essa expresso, tambm chamada expresso cannica, pode ser representada pelo diagrama de blocos de portas E e OU mostrado a seguir.

A expresso cannica que apresenta uma operao soma lgica (porta OU) como principal, chamada de soma de produtos. Como vimos antes, a expresso booleana pode tambm ser extrada a partir dos resultados Y = 0. A expresso assim obtida ser um produto de somas. No caso do exemplo apresentado, a tabela-verdade apresenta Y = 0 nas linhas 1, 2, 6 e 8. A B C Y 1 0 0 0 0 2 0 0 1 0 3 0 1 0 1 4 0 1 1 1 5 1 0 0 1 6 1 0 1 0 7 1 1 0 1 8 1 1 1 0A .B .C A .B .C A .B .C A .B.C

53

A expresso booleana final : A . B . C + A . B .C+A. B .C+A.B.C= Y Inverte-se a equao para obter a expresso de Y:

Y = A . B . C + A . B . C + A . B .C + A . B . CSimplificando a equao pela aplicao do teorema de De Morgan, temos: Y=A+B+C.A+B+ C . A +B+ C . A + B + C Embora essa expresso se apresente de forma diferente (produto das somas) daquela extrada pelos resultados Y = 1 (soma dos produtos), ambas so iguais, o que pode ser comprovado por meio da tabela-verdade como mostrado a seguir. Y1 = A . B . C + A . B . C + A . B . C + A . B . C = Y2 = A + B + C . A + B + C . A + B + C . A + B + C Y1 = Y2 A B C 000 001 010 011 100 101 110 111ABC A BC AB C

AB C 0 0 0 0 1 0 0 0

AB C 0 0 0 0 0 0 1 0

Y1 0 0 1 1 1 0 1 0

A+B+C A+B+ C 0 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1

A +B+ C

A +B +C

Y2 0 0 1 1 1 0 1 0

111 110 101 100 011 010 001 000

0 0 1 0 0 0 0 0

0 0 0 1 0 0 0 0

1 1 1 1 1 0 1 1

1 1 1 1 1 1 1 0

54

,

Os teoremas de absoro so os que definem identidades utilizadas para a simplificao de expresses booleanas. Quatro so os teoremas de absoro: A (A + B) = A A+AB=A A + AB = A + B A . ( A + B) = A . B Esses teoremas podem ser demonstrados de dois modos: pela tabela-verdade ou pela aplicao de postulados, propriedades e teoremas da lgebra booleana. Teorema 1 A (A + B) = A Aplicando a propriedade distributiva, temos a expresso: A {(1 + B)} = A Aplicando o princpio da identidade bsica, temos: (1 + B) = 1 Teorema 2 A+A.B=A Aplicando a tabela-verdade, provamos que A + A . B = A A B A.B 0 0 1 1 0 1 0 1 0 0 0 1 A + AB 0 0 1 1 A . 1), donde se conclui: A = A

Observe que as colunas A e A + A . B so iguais.

55

Teorema 3 A + AB = A + B Pela propriedade distributiva, obtemos a equao: A+ A .A+B=A+B Pela identidade bsica, obtemos: A+ A =1 Dado que 1 . A + B = A + B, conclumos que A + B = A + B. Assim, fica provado que: A + AB = A + B Teorema 4 A . (A + B) = A . B Empregando a tabela-verdade, obtemos: AB A 00 01 10 11 1 1 0 0A + B A . ( A +B) A . B

1 1 0 1

0 0 0 1

0 0 0 1

Verifique que A . ( A + B) = A . B, o que comprova as respectivas colunas da tabela-verdade.

*!De modo geral, a expresso booleana extrada da tabelaverdade longa e complexa, embora essa expresso seja a base da construo do circuito lgico. Para que o circuito se torne mais prtico, as expresses booleanas podem ser simplificadas por meio de dois mtodos:

o mtodo algbrico, que emprega os postulados, as propriedades, as identidades e os teoremas da lgebra de Boole; o mtodo prtico que utiliza mapas para a simplificao.

56

!*

Na simplificao de expresses booleanas pelo mtodo algbrico, no h ordem determinada a ser seguida. Conforme a necessidade, aplicam-se os postulados, as propriedades, os teoremas e as identidades at obter uma forma reduzida da expresso original. Exemplo Dada a expresso: Y = AC + AC + AC + B B B B AC1 2 3 4

1. Aplica-se a propriedade distributiva nos termos 1 e 2 e o resultado obtido ser o seguinte: / / Y = ( A + A ) B C + AC + AC B B3 4

Pela identidade bsica, obteremos:A +A=1e1.

BC =BC

Portanto: Y = BC + B + B A C A C3 4

2. Aplica-se igualmente a propriedade distributiva nos termos 3 e 4 e o resultado ser:

/ / Y = B C + BC (A +A )

1

Pela identidade bsica, obteremos:A +A=1e1. BC= BC

Portanto, Y =

BC+BC 1e 2 3e4

Aplicando novamente a propriedade distributiva, obteremos: Y = B ( C + C)C +C=1 e 1. B = B

Assim, a forma final da expresso ser: Y = B57

!**(mapas deKarnaugh)A simplificao de expresses algbricas booleanas um processo complexo e trabalhoso e pode apresentar resultado falso. O mtodo de simplificao por meio de mapas de Karnaugh (mtodo grfico) oferece maior facilidade e segurana no processo de simplificao. Esses mapas permitem simplificar expresses booleanas com qualquer nmero de variveis. Para cada expresso booleana, deve-se construir um mapa com diferentes nmeros de casas. Assim:

expresses booleanas com duas variveis (A, B) tero quatro casas (2 ): A B2

AA

As variveis, neste caso, podem ser A, B ( A e B seriam as outras possibilidades)

BC B C B C B C AA

expresses com trs variveis (A, B, C) tero 8 casas (2 ).3

CD C D C D C D ABAB AB

expresses com quatro variveis tero dezesseis casas (2 ).4

AB A disposio das variveis nas linhas horizontais e nas colunas pode ser feita em qualquer combinao de variveis. O que se deve observar que de uma casa para outra haja mudana em apenas uma varivel. Por exemplo, na expresso com as variveis A . B . C . D:

58

nas linhas horizontais, qualquer combinao pode dar incio seqncia. Iniciamos A B .

AB AB

Mudamos a varivel B para B Mudamos a varivel A para A Mudamos a varivel B para B

AB AB

nas colunas, pode-se iniciar tambm por qualquer combinao; a cada coluna muda-se apenas uma varivel.

C D C D CD

CD

A casa formada pela interseco de uma coluna com uma linha corresponde a uma combinao das variveis de entrada, como acontece na tabela-verdade. Veja exemplo abaixo. A B C Y 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1AB AB

C

C

AB C 110

AB AB

) *+,Vamos tomar como exemplo a seguinte expresso extrada de uma tabela-verdade qualquer: Y = A B C + A B C + A B C + A BC + ABC

59

B C B C BCA

BC

Para simplificar a expresso, constri-se, primeiramente, o mapa de acordo com o nmero de variveis. No exemplo dado, trs so as variveis (2 ).3

A B C B C BCA

BC

O processo de simplificao o seguinte: 1 Colocar 1 nas casas de acordo com os termos da expresso.

1 1 1

1 1 BC 0 0

A

B C B C BCA

1 1

0 1

1 1

2 Colocar 0 ou deixar em branco as demais casas, cujos termos no correspondem expresso.

A

Observao O mapa poder ser feito de outra forma, mas o resultado ser o mesmo. 3 Enlaar a maior quantidade de uns adjacentes em grupos de 2, 4 e 8 uns no mesmo lao como mostrado a seguir.

Observaes

No deixar nenhum nmero 1 fora do lao; o mesmo nmero 1 pode fazer parte de dois laos. A primeira e a ltima linhas do mapa, assim como a primeira e e ltima colunas tambm so adjacentes. Verifique que os uns pertencentes primeira e ltima colunas esto unidos pelo mesmo lao.

No importa a maneira de enlaar os uns, as respostas sero iguais e iro satisfazer a tabela-verdade.

60

4. Extrair a expresso simplificada, conforme mostramos a seguir. 1 lao

2 lao 1 lao: separar as variveis comuns dos termos:A BC + ABC = BC

2 lao: separar as variveis comuns dos termos: A B C + ABC = AC 3 lao: separar as variveis comuns dos termos:A B C + AB C = B C

Para obter a expresso booleana simplificada, basta juntar os termos separados da expresso booleana de soma lgica. Ou seja: Y = BC + AC + B C Observao H situaes em que uma mesma varivel pode assumir o nvel 1 ou 0 sem influenciar o estado de sada. Nesta situao, o estado da varivel irrelevante. Por exemplo, um interruptor, ao ser ligado acende a lmpada. Contudo, se a lmpada estiver queimada, tanto faz o interruptor estar ligado ou desligado: a lmpada no acender.

61

Esta situao pode ser comprovada na tabela-verdade a seguir. A 0 0 0 X 0 1 1 1 Y Conveno A - lmpada boa = 1 lmpada queimada = 0 interruptor desligado = 0

1 0 0 B - interruptor ligado = 1

Observe na linha 2 que o estado da varivel B (interruptor) irrelevante. Isso indicado por um X ao invs de 1 ou 0. Contudo, nos mapas de Karnaugh, quando a varivel for irrelevante, deve-se consider-la como estado 1, porque isso tornar menor a equao resultante da simplificao.

62

Em circuitos digitais, muito comum a necessidade de realizar operaes aritmticas. Neste captulo, estudaremos a famlia dos circuitos aritmticos que realizam operaes de soma, subtrao e comparao. As operaes de multiplicao e diviso no sero estudadas porque so realizadas a partir das operaes de soma e subtrao. Para estudar este captulo com mais facilidade necessrio ter conhecimentos sobre soma e subtrao de nmeros binrios e blocos lgicos bsicos.

A adio de nmeros binrios em circuitos digitais feita por blocos lgicos chamados meio-somador e somador completo.

.O meio-somador, tambm conhecido como HA (do ingls "half adder") um bloco lgico formado por portas XOU e E. Possui duas entradas A e B e duas sadas, uma de soma ( ) e outra de "vai um" (CO, do ingls "carry out").

63

Para melhor compreenso do circuito meio-somador, vamos relembrar a regra bsica utilizada para a adio de nmeros binrios: Entradas A+B 0+0 0+1 1+0 1+1 0 1 1 0 Sadas Soma ( ) Vai um (CO) 0 0 0 1

A ilustrao a seguir mostra um circuito meio-somador, sua tabela-verdade e smbolo. No circuito, A e B so as variveis de entrada a serem somadas, a sada da soma dada pelo smbolo de somatria ( ) e a sada "vai-um" representada pelas letras CO ("carry out"). Entradas 1 A 0 0 1 1 2 B 0 1 0 1 0 1 1 0 Sadas CO 0 0 0 1 (soma) (vai um)

O circuito meio-somador soma apenas um algarismo. Quando necessrio somar nmeros com mais de um algarismo, deve-se usar somadores completos.

O somador completo ou FA (do ingls "full adder") realiza a soma de nmeros binrios que tenham mais de um algarismo. Nesse caso, necessrio levar em considerao o vem-um ("carry in") vindo do estgio anterior. O resultado ser uma soma ( ) e um CO ("carry out). O somador completo efetua a soma de trs entradas A, B l CI ("carry in").

64

Veja a seguir o diagrama de blocos de um somador completo, seu smbolo e sua tabela-verdade. Entradas A 1 2 3 4 5 6 7 8 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 C 0 1 0 1 0 1 0 1 Sadas 0 1 1 0 1 0 0 1 CO 0 0 0 1 0 1 1 1

O circuito mostrado acima pode ser simplificado:

A figura a seguir mostra um circuito formado por somadores ligados em paralelo. Ele efetua a soma de dois nmeros de quatro bits. Observe que o dgito menos significativo pode ser feito com um circuito meio-somador, pois esse dgito no tem "carry in" vindo do estgio anterior.

65

A B S

= = =

A3 B3 S3

A2 B2 S2

A1 B1 S1

A0 B0 S0

Para se construir um somador de N bits basta utilizar N - 1 somadores completos e um circuito meio-somador. O circuito somador completo tambm pode ser construdo a partir de dois circuitos meio-somadores e uma porta OU. Esse circuito mostrado a seguir.

Assim como os meio-somadores e somadores completos podem ser construdos a partir de circuitos digitais, tambm possvel construir meio-subtratores e subtratores completos a partir de circuitos digitais.

66

O circuito meio-subtrator ou HS (do ingls "half-subtractor") faz a subtrao de dois algarismos binrios. um bloco formado por portas XOU e E e um inversor. Possui duas entradas A (minuendo) e B (subtraendo) e duas sadas DI (diferena) e BO (do ingls "borrow", ou seja, emprstimo). Para facilitar o entendimento do circuito subtrator, reveja a regra bsica da subtrao binria: 0 0 1 1 0 1 0 1 = = = = 0 1 1 0 (e empresta 1)

A figura a seguir mostra o circuito meio-subtrator, sua tabelaverdade e seu smbolo. Entradas Sadas A 0 1 0 1 B 0 0 1 1 DI BO 0 1 1 0 0 0 1 0

A sada DI (diferena) feita por uma porta XOU A B. Toda a vez em que houver uma diferena entre A e B, a sada DI vai a 1. Quando resta diferena e o minuendo for menor que o subtraendo (A < B), a sada BO (emprstimo) vai a nvel lgico 1.

67

O circuito meio-subtrator s realiza subtrao de nmeros binrios de apenas um algarismo. Para realizar a subtrao binria de nmeros com mais de um algarismo, deve-se utilizar o subtrator completo.

O subtrator completo tambm conhecido como FS (do ingls, "full subtractor") utilizado para fazer a subtrao dos nmeros binrios a partir do segundo dgito. No primeiro dgito, utiliza-se um circuito meio-somador. O subtrator completo possui trs entradas: A (minuendo), B, (subtraendo) e BIN (emprstimo). O circuito do subtrator completo, sua tabela-verdade e smbolo so mostrados a seguir. A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 BIN 0 1 0 1 0 1 0 1 DI 0 1 1 0 1 0 0 1 BO 0 1 1 1 0 0 0 1

Para se construir um subtrator de N bits, utiliza-se N - 1 circuitos subtratores completos e um meio-subtrator.

68

Observe na figura a seguir subtratores ligados em paralelo, formando um circuito subtrator de trs bits. A sada BO (emprstimo) de um bloco conectada entrada BIN do bloco seguinte para acompanhar o desenvolvimento do emprstimo.

Podemos construir um subtrator completo a partir de dois meiosubtratores e uma porta OU conforme figura a seguir.

muito comum utilizar circuitos somadores para realizar a subtrao binria.

69

A figura a seguir mostra um circuito com quatro somadores completos construdos para funcionar como um subtrator de quatro bits em paralelo.

A idia bsica deste circuito consiste em complementar o subtraendo. Isso feito atravs dos inversores nas entradas Bs e adicionando-se este complemento ao minuendo e ao transporte de contorno. Observao Contorno a sada CO do FA 8s que est ligada com a entrada CI de FA 1s. O resultado desta adio ser a diferena entre A1, A2, A3, A4 e B1, B2, B3, B4.

Os circuitos estudados at agora efetuavam somente ou soma ou subtrao. possvel montar um nico circuito que efetue soma e subtrao de palavras binrias, dependendo do nvel lgico da entrada M (modo).

70

Observao Chamamos de palavra a um cdigo binrio de determinado comprimento (4, 8, 16 bits, etc). Veja a seguir o diagrama de blocos e a tabela-verdade de um somador/subtrator completo.

M 0 0 0 soma completa 0 0 0 0 0 1 1 1 subtrao completa 1 1 1 1 1

A 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1

TE 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

S 0 1 1 0 1 0 0 1 0 1 1 0 1 0 0 1

TS 0 0 0 1 0 1 1 1 0 1 1 1 0 0 0 1

71

No circuito:

A e B so as entradas dos algarismos; M o modo de operao: soma; nvel 1 = subtrao; S o resultado da operao realizada; TE entrada de transporte: = CI; quando subtrai BI; TS a sada de transporte: = CO; quando subtrai = BO. quando soma quando soma nvel 0 =

Como vimos, os somadores e subtratores podem ser construdos a partir de blocos lgicos. Na prtica, esses circuitos so obtidos em circuitos integrados. Um exemplo desse tipo de CI o 7483, um somador completo de 4 bits.

Outro circuito lgico muito utilizado nos sistemas aritmticos o comparador de magnitude, tambm conhecido como comparador binrio. Ele utilizado em circuitos lgicos para comparar dois valores binrios. Possui trs sadas pelas quais indica se o valor comparado igual, maior ou menor que o valor estabelecido como padro. Essas sadas so: A > B; A = B; A < B.

Chama-se clula de comparao um comparador de magnitude que compara um bit da entrada A com um bit da entrada B. Veja a seguir a tabela-verdade e as expresses booleanas de uma clula de comparao Entradas A B 0 0 0 1 1 0 1 1 Sadas A>B A=B AB A=B A B ou A < B) fornece nvel lgico 1 em sua sada e ativa a porta OU correspondente. Caso no haja igualdade, a sada A = B fica em nvel 0, bloqueando as portas E e tornando irrelevantes os nveis das outras entradas. Caso haja uma igualdade no bit mais significativo, a sada A = B deste bit fornece nvel lgico 1, permitindo a comparao do segundo bit. Se no houver igualdade, uma das portas E ligada s sadas A > B ou A < B ativada e ativar a porta OU correspondente. Caso haja uma igualdade no segundo bit, sua sada A = B fornecer nvel lgico 1, permitindo que seja feita a comparao no prximo bit e assim por diante. Quando houver igualdade em todos os bits, a porta E qual todas as sadas de igualdade esto ligadas, ativada levando a sada A = B a nvel lgico 1. A tabela a seguir a tabela-verdade deste comparador. Entradas comparadoras B2 A1 B1 A0 B2 x B2 x B2 A1 > B1 B2 A1 < B1 B2 A1 = B1 A0 B2 A1 = B1 A0 B2 A1 = B1 A0 Sadas A>B A < => < = = = = =B0 B0 B0Observao Na prtica, utilizamos CIs comparadores de magnitude que comparam quatro ou cinco bits, tornando mais simples a construo de comparadores. Com esses CIs, possvel fazer ligaes em cascata para a comparao de palavras maiores.74O campo da eletrnica digital divide-se em lgica combinacional e lgica seqencial. Na lgica combinacional, as clulas bsicas para a construo dos circuitos so as portas lgicas. Na lgica seqencial, as clulas bsicas so os circuitos multivibradores biestveis ou flip-flops. Os circuitos lgicos seqenciais so amplamente empregados por causa de sua caracterstica de "memria". o caso, por exemplo, do comando de um elevador em que h necessidade de memorizar as chamadas a partir do acionamento dos botes correspondentes. Neste captulo, sero estudadas as caractersticas, o funcionamento e o emprego de vrios tipos de flip-flops. Para facilitar esse estudo, necessrio ter conhecimentos prvios sobre multivibradores biestveis e circuitos lgicos combinacionais.O flip-flop um circuito eletrnico que possui dois estados estveis (biestveis) isto , sua sada 0 ou 1. Possui duas sadas complementares (Q e Q ), ou seja, quando uma est em zero, a outra est em um e vice-versa. Sua principal caracterstica a capacidade de memorizao, pois ele pode permanecer infinitamente na condio apresentada nas sadas.75Esses nveis lgicos das sadas dependem dos sinais anteriormente aplicados nas entradas. Dessa forma, pode-se aplicar um determinado nvel lgico em uma das entradas, forando as sadas a assumirem as condies desejadas. As sadas continuaro nesse estado mesmo que cesse o nvel lgico nas entradas. A condio das sadas s ser alterada se um nvel lgico diferente for aplicado s entradas.Existem vrios tipos de flip-flops, classificados de acordo com a aplicao a que se destinam. Eles so: RS (Reset-Set); RS sncrono; JK; JK MS; T (Toggle) e D (Data). !O flip-flop tipo RS (ou flip-flop set/reset) um biestvel bsico porque dele se derivam os outros tipos. Em seu funcionamento, ele pode ser comparado a um sistema de partida de um motor trifsico onde existe o boto liga e o boto desliga. Pode-se afirmar que o boto liga o set e o boto desliga o reset. A sada, quando ativada (Q = 1), eqivale ao motor em funcionamento. O smbolo lgico do flip-flop mostrado a seguir.O smbolo mostra duas entradas chamadas "set" (palavra inglesa que quer dizer fixar, ligar ou estabelecer) e "reset" (reajustar, reafixar); e duas sadas Q e Q . A sada Q considerada normal e, portanto, a mais usada. A sada Q o complemento da sada Q.76Sob condies normais, estas sadas so sempre complementares: Q=1 Q= 0Q=0Q= 1O flip-flop RS bsico pode ser construdo a partir de portas NE.A figura a seguir mostra o diagrama de blocos de um flip-flop RS. Nele, possvel observar como ocorre a realimentao caracterstica desde a sada de uma das portas NE at a entrada da outra porta.As portas P1 e P3 atuando como inversoras, acionam a clula de memria formada pelas portas P2 e P4 com o auxlio dos sinais S e R. As portas P2 e P4 retm a informao de um bit. F1 e F2 so as linhas de realimentao que garantem a manuteno do estado de sada aps o desaparecimento do sinal de entrada. S (set) a entrada que posiciona a sada Q em nvel 1. R (reset) a entrada que posiciona a sada Q em nvel 0.77Q representa o sinal de sada normal do flip-flop.Q representa o complemento do sinal de sada do flip-flop.No funcionamento do flip-flop, as linhas de realimentao fazem com que as sadas sejam introduzidas juntamente com as variveis de entrada. Por isso, o estado que as sadas assumiro vai depender das variveis de entrada e de sada.A tabela-verdade mostrada a seguir define a operao do flip-flop RS. S 0 0 1 1 R 0 1 0 1 Qf QA 0 1 no permitidoNa condio S = 0 e R = 0, no se pode concluir o valor de Q, pois isso depender de uma condio anterior de S e R, isto , a sada Q ser igual a anterior (QA). Na condio S = 0 e R = 1, a sada Q forosamente estar em zero ( Q = 1). Na condio inversa, ou seja, S = 1 e R = 0, a sada Q assume nvel lgico 1 ( Q = 0). A condio S = 1 e R = 1 deve ser evitada no flip-flop RS, porque isso levaria as duas sadas para o nvel 1, o que impossvel, pois Q e Q so sadas complementares. O flip-flop RS mudar de estado no instante em que mudarem as variveis de entrada. Esta caracterstica torna-o assncrono, ou seja, no-sincronizado. Ele no opera simultaneamente com um sinal de temporizao ou de clock.78"O biestvel RS sncrono aquele que apresenta uma entrada adicional que permite a sincronizao com outros dispositivos mediante pulsos de um "clock" (relgio) externo. Isso faz com que o estado lgico atue sobre o flip-flop somente quando a entrada de sincronizao permitir. Normalmente, as entradas do flip-flop sncrono so formadas por portas lgicas NE. O funcionamento do flipflop depende das entradas R e S, do estado atual da sada (realimentao) e dos pulsos de clock (C) aplicados entrada de sincronismo. Veja diagrama a seguir.A tabela-verdade do flip-flop RS sncrono com clock ativo em 1 mostrada a seguir. Modo de operao Hold Set Reset Proibido Conveno: "hold" = C=1= C=0= manuteno pulso de clock ativo pulso de clock inativo C 1 1 1 1 S 0 0 1 1 R 0 1 0 1 QF QA (no muda) 1 0 1Se a entrada de clock estiver desativada (C = 0), o flip-flop permanecer no seu estado anterior (QA), mesmo que as entradas R e S variem. Por outro lado, se a entrada de clock estiver ativada, (C = 1), o circuito se comportar como um flip-flop RS bsico (assncrono). Ou seja, o circuito somente mudar de estado na sada quando o pulso de clock estiver ativo.79#Os flip-flops sincronizados podem ser classificados em dois tipos, de acordo com o modo de atuao do pulso de clock ou seja quanto ao gatilhamento ou tipo de disparo: flip-flop sincronizado ou disparado por nvel flip-flop sincronizado ou disparado por bordaOs flip-flops sncronos disparados por nvel possuem elementos que atualizam a sada do circuito, de acordo com as entradas de dados (R e S), quando sua entrada de clock (C) for levada a nvel ativo. O nvel ativo de clock pode ser 1 ou O, dependendo das caractersticas internas do biestvel. Veja a seguir os smbolos lgicos do flip-flop RS disparado por nvel 1 (a) e por nvel 0 (b).Os flip-flops sncronos disparados por borda possuem elementos que atualizam a sada do circuito, de acordo com as entradas de dados (R e S), no momento da transio do pulso de clock (C) do nvel lgico 0 para 1 ou vice versa. Isto , durante a subida ou descida do pulso. Quando o disparo ocorre na transio do pulso de clock de 0 para 1, ele se chama disparo de borda positiva. Quando o disparo ocorre na transio de 1 para 0, chama-se disparo de borda negativa.80Veja a seguir os smbolos lgicos do flip-flop disparado por borda positiva (a) e do disparado por borda negativa (b).$%Os flip-flops JK corrigem o problema da condio proibida que existe no flip-flop RS quando as entradas R e S forem iguais a 1. O flip-flop JK pode ser disparado por nvel ou por borda. O flip-flop JK disparado por nvel implementado a partir de portas lgicas NO E. Veja diagrama de blocos a seguir.As portas P3 e P4 retm a informao de um bit. As portas P1 e P2 habilitam o clock quando as entradas J e K juntamente com as condies de sada Q e Q permitirem.81F1 e F2 so linhas de realimentao que garantem a manuteno do estado de sada aps o desaparecimento do sinal de entrada. F3 e F4 so linhas de realimentao que levam a informao das sadas Q e Q s portas P1 e P2. J a entrada que posiciona a sada Q em 1 quando levada a nvel lgico 1. K a entrada que reposiciona a sada Q em O quando levada a nvel lgico 1. Q apresenta o sinal de sada do flip-flop.Q apresenta o complemento do sinal de sada do flip-flop.Veja a seguir os smbolos lgicos do flip-flop JK disparado por nvel 1 e disparado por nvel 0 respectivamente.A seguir mostramos a tabela-verdade do funcionamento do JK disparado por nvel 1. Modo de operao Hold Reset Set Toggle* C 1 1 1 1 J 0 0 1 1 K 0 1 0 1 QF QA 0 1QA*Toggle = chave de duas posies Por essa tabela, possvel perceber que, se as entradas J e K estiverem em 0 e for aplicado um pulso de clock, a sada no ser alterada, prevalecendo o estado anterior (QA - modo de operao hold).82Se J e K estiverem em 0 e 1 ou em 1 e 0, ao ser aplicado o sinal de clock, a sada assumir 0 ou 1 respectivamente (modo de operao reset ou set). Finalmente se J e K estiverem em 1 e for aplicado um pulso, haver uma inverso no sinal de sada ( Q A). Assim, se J e K permanecerem em 1, a cada pulso de clock, a sada ser trocada. Se a sada estiver em 0, com o pulso, ela passar para 1 e assim sucessivamente. Esse modo de operao (toggle) muito usado para divisor de freqncia. O flip-flop disparado por nvel tem o inconveniente de no apresentar a condio desejada na sada se, durante o estado ativo do sinal de clock, houver uma alterao dos sinais das entradas J e K. Por causa disso, foi desenvolvido o flip-flop JK disparado por borda o mais utilizado.$%O flip-flop JK disparado por borda tem por finalidade transferir imediatamente os sinais das entradas J e K para a sada no instante da transio do sinal de clock. O disparo pode ser por borda positiva (de 0 para 1) ou por borda negativa (de 1 para 0). O funcionamento do JK disparado por borda idntico ao do JK disparado por nvel, exceto pelo instante de transferncia do sinal de entrada para a sada. Veja a seguir a tabela-verdade do flip-flop JK disparado por borda considerando-se o disparo por borda positiva ( ) ou por borda negativa ( ). C ou ou ou ou J 0 0 1 1 K 0 1 0 1 QF QA 0 1 QA83$%O flip-flop JK MS (do ingls "Master Slave" ou seja mestreescravo) um aprimoramento do flip-flop JK. Ele possui dois flipflops em seu interior; um chamado mestre e outro escravo. O flip-flop JK MS disparado por borda o mais utilizado na prtica pois o disparado por nvel ainda apresenta o problema, embora em menor escala, de ter a sada diferente da esperada quando as entradas J e K variarem enquanto o clock estiver ativo. Esta situao denominada de "corrida" (race around condiction) porque enquanto o clock estiver ativo e as entradas variando, seus dados esto percorrendo o circuito e atualizando instantaneamente a sada. Esta variao dos nveis nas entradas pode inclusive ser causada por rudos. Veja o diagrama de blocos a seguir.O primeiro flip-flop (mestre) recebe os dados das entradas de informao (J e K) e sua sada conecta-se entrada do segundo biestvel (escravo) cuja sada constitui a sada do conjunto. Observe que as entradas de sincronizao (C) dos dois flip-flops so complementadas por uma porta inversora (P1).84Quando o clock (C) estiver em nvel 0, o biestvel mestre estar desabilitado o que manter as sadas Q1 e Q 1 no estado anterior. Quando o clock (C) e as entradas de informao (J e K) estiverem em nvel 1,e a sada Q1 em 0, o mestre estar habilitado e assim a sada Q1 ir para o nvel 1 mas no atualizar a sada Q2 pois o biestvel escravo estar desabilitado pela porta inversora. Quando o clock (C) sofrer a transio do nvel 0 para 1, com Q1 = 1, neste instante a informao contida nas sadas do biestvel mestre ser transferida para a sada do escravo que estar ativado pela porta inversora. Quando o clock (C) sofrer a transio do nvel 1 para O, o biestvel mestre estar desabilitado e portanto sua sada no se alterar. Para que haja transferncia do sinal de entrada para a sada necessrio que se complete um ciclo de clock. Ou seja, que exista uma borda de subida e outra de descida, ou vice-versa. Assim, ao receber o pulso de clock, o JK MS se comporta da seguinte maneira: na primeira borda do ciclo, os sinais das entradas J e K so transferidos para o interior do flip-flop. A sada permanece na condio anterior ao pulso. Quando ocorre a segunda borda do ciclo de clock, os sinais armazenados no interior do flip-flop so colocados na sada, obedecendo a tabela-verdade. J 0 0 1 1 K 0 1 0 1 QF QA 0 1QA85 &'O flip-flop T (do ingls "toggle", ou seja, chave) foi desenvolvido para aplicaes em que a sada deve ser complementada a cada pulso de entrada. Por exemplo, a chave tipo alavanca que muda os faris do carro de "alto" para "baixo", funciona como um flip-flop T. Esse tipo de operao, chamada "chave" muito usada em circuitos lgicos seqenciais. O flip-flop T basicamente um JK com entradas interconectadas, de maneira que as entradas J e K tero sempre o mesmo nvel lgico. Veja, a seguir, como obter o flip-flop T partir do flip-flop JK (a) e, seu smbolo (b).A tabela-verdade desse circuito a seguinte: T 0 0 1 1 QA 0 1 0 1 QF 0 1 1 0 Q F = QAQF = Q A86Se o clock no estiver ativo, o dado da entrada T ser irrelevante e a sada permanece esttica (QF = QA).Se o clock estiver ativo e a entrada T em 0, a sada Q permanecer esttica (QF = QA). Se o clock estiver ativo e a entrada T em 1, a sada ser complementada (QF = Q A). Observao Como ainda no h esse tipo de flip-flop disponvel no mercado, devemos implement-lo usando um JK com as entradas J e K interconectadas como visto anteriormente.(O flip-flop D empregado quando se necessita sincronizar a transferncia de dados de um estgio para outro. Esse flip-flop sincronizado por nvel e transfere o dado de entrada para a sada quando ocorre a presena do sinal de controle (clock ativo). O flip-flop D possui uma nica entrada denominada "Data" (dados). Pode ser construdo a partir de um flip-flop JK cujas entradas so complementadas entre si. Veja a seguir o diagrama de blocos, (a) e o smbolo lgico desse flip-flop (b).87A tabela da verdade do flip-flop D apresentada a seguir: D 0 1 0 1 QA 0 0 1 1 QF 0 1 0 1QF = DSe o clock estiver inativo, o dado de entrada ser irrelevante e a sada Q permanece esttica (QF = QA). Se o clock estiver ativo e o dado de entrada for 0, a sada copiar a entrada fazendo com que Q seja igual a 0. Se o clock estiver ativo e o dado de entrada for 1, a sada copiar a entrada e Q ser igual a 1. Isso significa que no flip-flop tipo D, a sada Q assume o estado da entrada a partir de um pulso de clock.)*+)+Preset (reajustado) e clear" (livre) so entradas que permitem a manipulao da sada de modo assncrono e com prioridade. Elas so necessrias porque sabemos que antes de receber dados e sinal de sincronismo (C) nas entradas, o flip-flop apresenta as sadas em um estado arbitrrio: ou 1 ou 0 e, s vezes, preciso garantir o posicionamento inicial de suas sadas. A entrada preset permite que o flip-flop assuma a sada Q = 1 e a entrada clear fora a sada Q para 0. Essas entradas so encontradas em alguns flip-flops comercializados em forma de CI.88Os smbolos lgicos do flip-flop com preset (PR) e clear (CLR) ativados por nvel lgico 0 (a) e nvel lgico 1 (b) bem como o seu diagrama de blocos so mostrados a seguir.O preset e o clear so terminais conectados diretamente s entradas das portas que memorizam o dado, no alterando a estrutura bsica do biestvel. Quando PR levada para nvel 0, posiciona Q em nvel 1. Quando CLR levada para nvel 0, posiciona Q em 0. P1 e P2 so as portas de memria de dados.O flip-flop JK com entradas de preset e clear ativas em 0, funciona da seguinte maneira:se as entradas de preset e clear estiverem em 1, o flip-flop funciona normalmente; se a entrada de preset for para o nvel 0 e a de clear permanecer em 1, a sada Q ir para nvel 1 e Q ficar em 0; se a entrada de preset for para o nvel 1 e a de clear para 0, a Sada Q ir para nvel 0 e Q para 1; as entradas de preset e de clear no podem assumir o nvel 0 simultaneamente, pois isso traria uma situao indesejvel na sada.Veja a tabela-verdade a seguir. Preset 0 0 1 1 Clear 0 1 0 1 Q no 1 0 QAQpermitido 0 1 QA89O contador binrio um circuito capaz de contar, segundo determinada seqncia, o nmero de pulsos que recebe em sua entrada. Os contadores tm grande aplicao nos circuitos digitais. Funcionam, por exemplo, como divisores de freqncia. Fazem tambm, o seqenciamento de operaes e medidas de freqncia e tempo. Para estudar esse contedo, necessrio ter conhecimentos prvios sobre portas lgicas e circuitos biestveis lgicos.Os circuitos contadores so construdos a partir de flip-flops ligados em cascata que geram uma seqncia especfica de pulsos de sada a partir do comando do um clock. Os contadores, na prtica, so utilizados para contagem de eventos de todos os tipos. Essa contagem feita a partir de um sensor que converte esses eventos em pulsos eltricos. Como exemplo de aplicao prtica, pode-se citar a contagem de peas que se movimentam sobre uma esteira em uma linha de produo ou, ainda, registro do nmero de veculos que passam pelo pedgio de uma rodovia. Como divisor de freqncia, pode-se citar como aplicao prtica o relgio digital.90Os contadores digitais contam apenas em cdigo binrio e so basicamente divididos em duas categorias: contadores assncronos; contadores sncronos."Os contadores assncronos so caracterizados por no possurem entradas de clock ligadas juntas, ou seja, a entrada de clock se faz apenas no primeiro flip-flop. As entradas de clock dos flip-flops seguintes so ligadas s sadas dos flip-flops anteriores. Veja esquema a seguir.H vrios tipos de contadores assncronos. Eles so: contador de pulsos; contador seqencial de 0 a n; contador de dcada; contador decrescente; contador crescente e decrescente. O contador de pulsos aquele que apresenta em sua sada o cdigo BCD 8421 em seqncia. O circuito que realiza essa funo mostrado a seguir.91Suponhamos que nesse circuito as sadas QA QB e QC sejam iguais a 0 e que os flip-flops troquem de estado na borda de descida (transio negativa do clock). Na primeira transio do clock (de 1 para 0) o estado do flip-flop 0 mudado e a sada QA vai para nvel 1. Isso no interfere no flipflop 2 porque houve somente uma transio de 0 para 1 na entrada de clock do flip-flop 2. Nessa condio, a sada mostrar 1. Na segunda transio do clock (de 1 para 0) o estado da sada do flip-flop 0 muda novamente e h uma transio negativa na entrada de clock do flip-flop 2 que muda de estado. A sada ento mostrar 010 e essa seqncia se repetir sucessivamente. No grfico de formas de onda mostrado a seguir, notamos que o perodo QA o dobro do perodo de clock. QB o dobro de QA e o qudruplo do clock. A freqncia de QA a metade da freqncia de clock e a de QB a quarta parte da freqncia de clock.Isso demonstra que esse tipo de contador usado como divisor de freqncia. Ele divide o sinal por nmeros que sejam potncias de dois (2).92 O contador seqencial de 0 at um nmero qualquer construdo com flip-flops com entrada "clear". Para isso necessrio verificar os nveis de sada do contador para nmero posterior ao desejado. Essas sadas ento so ligadas a uma porta NAND cujas sadas, por sua vez, so ligadas s entradas clear dos flip-flops do contador. O circuito a seguir um exemplo desse tipo de contador.Nesse circuito (contador de 0 a 5), recomea a contagem aps o nmero 5. Por isso, necessrio zerar a contagem no nmero 6 (6 = 110). Nesse caso, as sadas QC, QB a QA so ligadas na entrada da porta NAND que zera o contador quando ele assumir esse estado. O contador de dcada o circuito que efetua a contagem em nmeros binrios de zero a nove. Para construir esse circuito, usa-se um contador de pulso de quatro bits cujos flip-flops possuam entrada clear. Para que o contador conte somente de zero a nove, necessrio zerar a contagem no nmero 10 (1010). Nesse caso, as sadas QA QB QC QD so ligadas nas entradas da porta NAND que zera o contador quando ele assume esse estado, reiniciando a contagem.93Veja esse circuito ilustrado a seguir.Para construir um contador de 0 a 99, deve-se construir outro circuito igual ao mostrado acima, porm a entrada de clock deve ser retirada do terminal QD. Todos os contadores estudados at aqui so contadores crescentes. O circuito para o contador decrescente o mesmo que para o contador crescente. A diferena entre um e outro que o contador decrescente utiliza as sadas complementares de QA, QB, QC, QD, ou seja, Q A , Q B , Q C , Q D . Observe a seguir a tabela-verdade de um contador decrescente de 0 a 7. Crescente QC 0 1 2 3 4 5 6 7 0 0 0 0 1 1 1 1 QB 0 0 1 1 0 0 1 1 QA 0 1 0 1 0 1 0 1 7 6 5 4 3 2 1 0 Decrescente QC 1 1 1 1 0 0 0 0 QB 1 1 0 0 1 1 0 0 QA 1 0 1 0 1 0 1 0Pode-se notar que as sadas complementares indicam um contador decrescente.94Outra maneira de se montar um contador decrescente ligandose as entradas de clock s sadas complementares do contador como mostra a figura a seguir. Observe que o clock dos flip-flops 1 e 2 est ligado respectivamente em Q A e Q B . Assim, esses flip-flops trocam de estado na transio de subida de QA e QB e na transio de descida de Q A e Q B . Como j vimos, a nica diferena entre os contadores crescentes e decrescentes a ligao do clock que ligado nas sadas Q quando crescente e nas sadas Q quando decrescente. Para se construir um contador que faa contagens crescentes ou decrescentes usa-se uma varivel de controle que determine que funo o contador deve executar: se crescente ou decrescente.95No circuito mostrado a seguir, a chave S1 a varivel de controle. Assim, quando S1 estiver aberta, as sadas QA e QB, estaro bloqueadas e as sadas Q A e Q B liberadas. Isso faz com que o contador conte crescentemente. Quando a chave S1 estiver fechada, as sadas Q A e Q B estaro bloqueadas e as sadas QA e QB liberadas, fazendo com que o contador conte decrescentemente."Os contadores sncronos so aqueles que possuem as entradas de clock dos flip-flops ligadas juntas. Eles so utilizados em circuitos que operam em freqncias mais elevadas (acima de 7MHz), porque os flip-flops operam praticamente juntos.A figura a seguir mostra um circuito de contador sncrono de trs bits que utiliza a ligao chamada "parallel carry" (transporte paralelo).96Veja tambm o diagrama de tempo do circuito.Neste circuito, o controle dos flip-flops feito atravs das entradas J e K. Assim, quando J = K = 1, o flip-flop se complementa. Quando J = K = 0, o flip-flop permanece no estado anterior. Supondo-se que na condio inicial todos os flip-flops estejam ressetados, aps o primeiro pulso de clock, somente o FF0 troca de estado, pois neste flip-flop J = K = 1, o que resulta em 0 0 1 na sada. Aps o segundo pulso de clock, FF0 e FF1 trocam de estado, pois ambos esto com J = K = 1, o que resulta em 0 1 0 na sada. Aps o terceiro clock, somente FF0 troca de estado, pois nele J = K = 1, o que resulta em 011 na sada.97Aps o quarto pulso, FF0 e FF1 esto setados, J e K de FF2 estaro com nvel 1 atravs da porta E. Isso provoca a troca de estados nos trs flip-flops e joga 1 0 0 na sada. O contador cujo circuito acabamos de comentar um contador de mdulo igual a uma potncia de dois. s vezes necessrio fazer a contagem de mdulos diferentes de 2, ou mesmo fazer a contagem de uma seqncia qualquer. Nesse caso, usa-se um contador de dcada sncrono com "parallel carry", cujo circuito e tabela-verdade so mostrados a seguir.Clock 0 0 0 0 0 0 0 0 0 0J0 = K0 1 1 1 1 1 1 1 1 1 1 1QA 0 1 0 1 0 1 0 1 0 1 0J1 = K1 0 1 0 1 0 1 0 1 0 0 0QB 0 0 1 1 0 0 1 1 0 0 0J2 = K2 0 0 0 1 0 0 0 1 0 0 0QC 0 0 0 0 1 1 1 1 0 0 0J3 0 0 0 0 0 0 0 1 0 0 0K3 0 1 0 1 0 1 0 1 0 1 0QD 0 0 0 0 0 0 0 0 1 1 0Sada 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0000O funcionamento deste contador semelhante ao funcionamento do contador de trs bits. A diferena est no fato de que o contador de trs bits zera ao final da contagem,98enquanto que o contador de dcada deve zerar no clock subsequente ao 9 (1001). Observe na tabela-verdade os nveis lgicos das entradas J e K dos flip-flops no instante do dcimo clock e veja que todos os flip-flops ficam ressetados aps esse pulso, fazendo com que a contagem recomece. Este contador, tambm conhecido como "ring counter", funciona de tal modo que o nvel lgico 1 de um nico flip-flop que se encontra setado se desloque para o fli-flop seguinte cada vez que recebe um pulso de clock. O funcionamento desse tipo de contador pode ser comparado ao do registrador de deslocamento ("shift register"). O circuito do contador de anel e sua respectiva tabela-verdade so mostrados a seguir.Pulso 0 1 2 3 4Sadas QA 1 0 0 0 1 QB 0 1 0 0 0 QC 0 0 1 0 0 QD 0 0 0 0 099Ao se pulsar o boto I, os flip-flops 1, 2 e 3 so ressetados e o flip-flop 0 setado. Quando os pulsos de clock so aplicados, o flip-flop que estiver com a entrada J em 1 setado e assim sucessivamente, o nvel lgico deslocado a cada pulso de clock. Quando a seqncia de pulsos interrompida, um dos flip-flops estar setado. Para que ele seja ressetado, pulsa-se o boto R. Analisando o contador, observa-se que qualquer sada apresenta um pulso a cada quatro pulsos de clock. Isso significa que um contador de anel de "n" flip-flops um divisor de freqncia por "n". O contador de anel tambm pode ser construdo com flip-flops tipo D, como mostra o circuito a seguir.O funcionamento desse circuito semelhante ao do circuito anterior: d-se um pulso de inicializao e FF0 levado para nvel 1. Quando o sinal de clock aplicado, o flip-flop que estiver com a entrada em 1, transporta para a sada 0 esse nvel lgico. O contador sncrono crescente e decrescente deve ter um bloco lgico com uma entrada acessvel, que, quando estiver em zero determinar que o contador faa uma contagem crescente e quando estiver em 1, determinar que o contador faa uma contagem decrescente. A figura a seguir mostra o circuito de um contador crescente e decrescente de trs bits e sua tabela-verdade.100Tabela-verdade para contagem crescente: Clock J0 = K0 1 1 1 1 1 1 1 1 1 QA 0 1 0 1 0 1 0 1 0 J1 = K1 0 1 0 1 0 1 0 1 0 QB 0 0 1 1 0 0 1 1 0 J2 = K2 0 0 0 1 0 0 0 1 0 QC 0 0 0 0 1 1 1 1 0 Sada 000 001 010 011 100 101 110 111 000Tabela-verdade para contagem decrescente: Clock J0 = K0 1 1 1 1 1 1 1 1 1 QA 0 1 0 1 0 1 0 1 0 J1 = K1 1 0 1 0 1 0 1 0 1 QB 0 1 1 0 0 1 1 0 0 J2 = K2 1 0 0 0 1 0 0 0 1 QC 0 1 1 1 1 0 0 0 0 Sada 000 111 110 101 100 011 010 001 000101Registrador de deslocamento um circuito lgico seqencial construdo com multivibradores biestveis. Esse dispositivo usado como memria temporria e para fazer deslocamento de dados para a direita e para a esquerda. O registrador de deslocamento est presente em circuitos de comutao aleatria e seqencial cujo funcionamento ser estudado neste captulo. Para compreender com facilidade o assunto deste captulo, necessrio ter conhecimentos prvios sobre circuitos combinatrios e seqenciais.O registrador de deslocamento ("shift register", em ingls) um dispositivo largamente empregado em sistemas digitais. O exemplo mais comum de utilizao desse dispositivo o mostrador ("display") de uma calculadora de bolso. Para registrar o nmero 325, por exemplo, basta pressionar em seqncia as teclas 3, 2 e 5. No mostrador aparecero os algarismos 3, 2 e 5 na mesma seqncia. Para que isso acontea, o algarismo 3 que aparece direita do mostrador tem que ser deslocado para a esquerda para dar lugar ao algarismo 2 assim que a tecla 2 apertada. Os algarismos so progressivamente deslocados para a esquerda de modo que se pode perceber que esse circuito utiliza um registrador de deslocamento esquerda.102O registrador de deslocamento tambm exerce a funo de memria temporria. Na calculadora do nosso exemplo, mesmo quando a tecla anteriormente pressionada liberada, o algarismo continua sendo mostrado no "display". Isso acontece porque o registrador tem a funo de se "lembrar" da tecla que foi pressionada. Os registradores de deslocamento tambm transformam dados em srie em dados em paralelo e dados em paralelo em dados em srie. Observao Dados em srie so aqueles transmitidos por meio de uma nica via fsica como por exemplo, um fio ou cabo. Nesse caso, os bits de informao vm em seqncia, um aps outro conforme mostra o grfico a seguir.Dados em paralelo so aqueles em que todos os bits so transmitidos simultaneamente. Uma informao transmitida em paralelo precisa de tantos fios quantos forem os bits da informao. Veja ilustrao a seguir.103Conforme o modo como os dados so deslocados no circuito, os registradores podem ser: Registrador de deslocamento de carga em srie; Registrador de deslocamento de carga em paralelo; Registrador universal de deslocamento. Registrador de deslocamento de carga em srie (em ingls "Serial load shift register") aquele no qual os dados so deslocados um bit por vez. Veja diagrama do circuito a seguir.Pelo diagrama de blocos desse registrador, notamos que foram empregados quatro flip-flops do tipo D. Nele, os bits de dados (0 e 1) so introduzidos nas entradas de dados em srie (D) de FF1. A entrada de "clear" (CLR) reajusta todos os biestveis em 0. Os pulsos de entrada de "clock (C) deslocam as informaes de entradas de dados em srie at as posies QA, QB, QC QD que, por sua vez, so o contedo de cada biestvel ou registrador. Funcionamento Se todos os biestveis estiverem ressetados (Q = 0) a sada ser igual a 0000.104Nessa condio, o carregamento em srie funciona do seguinte modo:colocando a entrada "clear" (CLR) em nvel compatvel com o estado 0 ou 1, a entrada de dados (D) em 1 e pulsando a entrada do clock uma vez, o resultado na sada ser 1000 (QA = 1, QB = 0, QC = 0, QD = 0);colocando 0 em D e pulsando C uma segunda vez, o resultado na sada ser 0100 (QA = 0, QB = 1, QC = 0 QD = 0); pulsando C (terceiro pulso), o resultado na sada ser 0010 (QA = 0, QB = 0, QC = 1, QD = 0); mantendo 0 na entrada D e dando um quarto pulso, o resultado na sada ser 0001 (QA = 0, QB = 0, QC = 0, QD = 1). Como os dados foram carregados bit a bit e deslocados para a direita, esse circuito corresponde ao de um registrador de deslocamento de carga em srie direita. As forma de onda a seguir ilustram o modos de operao desse circuito.Analisando essas formas de onda, observamos que todos os biestveis esto setados de modo que no ponto a (entrada105"clear" que opera de maneira assncrona), os biestveis so todos ressetados em 0000. Observamos tambm que na entrada de dados em srie (ponto b), colocado nvel 1 na entrada D do FF1; na transio (borda de subida) do pulso 1 de clock, o nvel 1 transferido para a sada QA; o resultado na sada 1000. O pulso 2 de clock transfere o nvel 0 para a sada QA. Ao mesmo tempo, o nvel 1 na entrada D do FF2 transferido para a sada QB. O resultado da sada agora 0100. O pulso 3 do clock transfere o nvel 0 para a sada QA. O nmero 1, na entrada do FF3, transferido para a sada desse biestvel (QC). O resultado na sada do registrador agora 0010. O