Anda di halaman 1dari 93

INSTITUTO FEDERAL DE SANTA CATARINA DEPTO ACADMICO DE ELETRNICA CURSO SUPERIOR DE TECNOLOGIA EM SISTEMAS ELETRNICOS CURSO TCNICO DE ELETRNICA

LGICA SEQENCIAL
Prof. Joel Lacerda Prof. Wilson B. Zapelini

FLORIANPOLIS 2009

SUMRIO Pgina 1 A NECESSIDADE DA MEMRIA OU ESTADO SEQENCIAL .................. 02 1.1 Conceito de memria ............................................................................... 02 1.2 Impacto da memria seqencial no desempenho de sistemas automatizados ......................................................................................... 04 1.3 Obteno do efeito memria (buffer realimentado) .................................. 04 2 A DEFINIO DE FLIP-FLOPS .................................................................... 06 2.1 Flip-flop SR bsico ................................................................................... 06 2.2 Diagrama de tempo .................................................................................. 07 3 APERFEIOAMENTO DO FLIP-FLOP ......................................................... 08 3.1 Necessidade de sincronismo .................................................................... 08 3.2 Lgica (terminais e estados) .................................................................... 08 3.3 Latch SR comandado por pulso de enable .............................................. 08 3.4 Flip-flop JK (eliminao do estado proibido) ............................................ 09 3.5 Flip-flop JK Mestre-Escravo (eliminao da oscilao) ............................ 10 3.6 Flip-flop JK Mestre-Escravo com terminais de programa entradas preset e clear ........................................................................................... 11 3.7 Flip-flop T (Toggle) ................................................................................... 11 3.8 Flip-flop D (Data) ...................................................................................... 12 Experincia 1 ................................................................................................. 18 4 REGISTRADORES DE DESLOCAMENTO ................................................... 20 4.1 Conceito ................................................................................................... 20 4.2 Caractersticas .......................................................................................... 20 4.3 Aplicaes ................................................................................................ 20 4.4 Classificao ............................................................................................ 20 4.5 Configuraes .......................................................................................... 20 4.6 Registrador de deslocamento usado como divisor por 2 ......................... 23 4.7 Registrador de deslocamento usado como multiplicador por 2 ................ 23 Experincia 2 .................................................................................................. 26 5 CONTADORES .............................................................................................. 26 5.1 Contadores assncronos ........................................................................... 26 5.2 Contadores sncronos .............................................................................. 34 5.3 Contadores para circuitos temporizados .................................................. 38 5.4 Contadores integrados ............................................................................. 39 Experincia 3 .................................................................................................. 50 Experincia 4 .................................................................................................. 52 Experincia 5 .................................................................................................. 53 6 MEMRIAS SEMICONDUTORAS ................................................................ 55 6.1 Introduo ................................................................................................. 55 6.2 Estrutura e organizao da memria ....................................................... 55 6.3 Princpios de operao ............................................................................. 56 6.4 Estruturas de endereamento .................................................................. 57 6.5 Classificao das memrias ..................................................................... 59 6.6 Tipos de memrias ................................................................................... 61 Experincia 6 .................................................................................................. 74 7 MQUINAS DE ESTADOS ............................................................................ 79 7.1 Modelo geral ............................................................................................. 79 7.2 Anlise de mquinas de estados .............................................................. 80 7.3 Sntese de mquinas de estados ............................................................. 85 REFERNCIAS ................................................................................................. 92

1 A NECESSIDADE DA MEMRIA OU ESTADO SEQENCIAL


1.1 CONCEITO DE MEMRIA Qualquer dispositivo ou circuito que tem dois estados estveis dito biestvel como, por exemplo, uma chave de conexo. Ela pode estar aberta ou fechada, dependendo da posio da alavanca. Esta chave possui uma memria, visto que ela permanecer em um estado definido at que algum ou algo mude a posio da alavanca. Quando um sinal de entrada aplicado num dispositivo, a sada muda em resposta entrada. Quando o sinal de entrada removido, a sada retorna ao seu estado original. Este dispositivo no exibe a propriedade de memria, j que sua sada volta ao estado anterior. Existem dispositivos e circuitos digitais que possuem memria, onde quando um sinal de entrada aplicado, a sada poder mudar seu estado, mas permanecer neste estado mesmo aps a entrada ter sido removida. Esta propriedade de reter sua resposta a uma entrada momentnea chamada memria.

Portanto, memria todo dispositivo que permite a perpetuao de uma informao ao longo do tempo. Costumamos classificar como tendo capacidade de memria a mente humana e os processadores digitais, mas h inmeras outras formas de memria. Os livros, as fotografias, os discos de msica so tambm dispositivos de memria. Mesmo coisas muito simples podem funcionar como memrias. Conta-se que Albert Einstein usava a caneta no bolso esquerdo ou direito para lembrar se j havia almoado ou no. Portanto, a memria que nos d, pela lembrana do passado, a noo de tempo. Sem ela, viveramos num eterno presente, no poderamos discriminar o que , daquilo que j foi e do que ser. o que ocorre aos sistemas digitais baseados em lgica combinacional. Os estados de suas sadas so dependentes apenas dos estados presentes (instantneos) das entradas, logo, estes sistemas no conseguem lidar com a varivel tempo e perceber seqncias de eventos, portanto, so incapazes de resolver qualquer problema que envolva a noo de tempo. Tome-se o exemplo do controle automtico de enchimento de uma caixa dgua. Pretende-se que o sistema controle a vlvula de entrada V a partir de dois sensores de nvel de gua A e B, como no esquema a seguir.

V LGICA COMBINACIONAL

B Pretende-se que a vlvula V seja aberta quando o sensor B estiver descoberto e s volte a ser fechada quando o sensor A estiver coberto. Se tentarmos resolver o problema usando lgica combinacional, obtm-se a tabela da verdade. Usando a conveno para: - Sensores A e B: 0 descoberto; 1 coberto - Vlvula V : 0 fechada; 1 aberta A 0 0 1 1 B 0 1 0 1 V 1 ? (0 quando esvazia e 1 quando enche) X (impossvel) 0

Portanto, alguma varivel precisa informar lgica se no momento a caixa est em processo de enchimento ou esvaziamento, lembrando qual foi o ltimo estado alcanado, isto , cheio (V=0) ou vazio (V=1). O novo diagrama mostrado abaixo.

V LGICA COMBINACIONAL

M MEMRIA

Uma nova tabela da verdade, incorporando a varivel de memorizao mostrada abaixo. M 0 0 0 0 1 1 1 1 A 0 0 1 1 0 0 1 1 B 0 1 0 1 0 1 0 1 V 1 (liga vlvula, caixa acabou de esvaziar) 0 (caixa esvaziando) X (impossvel) 0 (vlvula foi recentemente desligada) 1 (vlvula foi recentemente ligada) 1 (caixa enchendo) X (impossvel) 0 (desliga vlvula, caixa acabou de encher)

Ao conjunto do bloco combinacional mais o dispositivo de memria chamamos lgica seqencial. Nesta lgica, os estados presentes das sadas no dependem apenas dos estados das entradas, mas tambm dos estados anteriores do prprio sistema. Para a soluo do problema da caixa dgua usamos um dispositivo de memria capaz de armazenar um bit, que a definio funcional de flip-flop. 3

1.2 IMPACTO DA MEMRIA SEQENCIAL NO DESEMPENHO DE SISTEMAS AUTOMATIZADOS Os sistemas digitais dividem-se em duas classes: sistemas combinacionais e sistemas seqenciais. Nos sistemas combinacionais, uma sada no tempo t depende somente da entrada no tempo t. Neste caso, o sistema no tem memria porque a sada no depende de entradas prvias. Portanto, a sada dependente, nica e exclusivamente, das variveis de entrada. Exemplo: um cadeado de cdigos (usado para prender bicicletas) o cadeado ser aberto num dado tempo t quando o cdigo do cadeado colocado nas entradas em t, sem considerar a histria nas entradas. Se for o cdigo 234, por exemplo, o cadeado ser aberto quando esta combinao for colocada nas entradas, independentemente da ordem de colocao dos dgitos do cdigo. Nos sistemas seqenciais, uma sada no tempo t depende da entrada no tempo t e, possivelmente, tambm depende da entrada no tempo anterior a t. A sada dependente das variveis de entrada e/ou de seus estados anteriores armazenados. Exemplo: um sistema de discagem telefnica o nmero de um assinante a ser discado ser efetuado num dado instante t, se forem satisfeitas as seguintes condies: a) os dgitos discados antes do instante t devem seguir a seqncia daquela do nmero do assinante; b) o dgito discado no instante t, isto , o ltimo a ser discado, corresponde ao ltimo dgito do nmero do assinante; c) todos os dgitos devem estar memorizados e disponibilizados na mesma seqncia da discagem no instante t.

1.3 OBTENO DO EFEITO MEMRIA (BUFFER REALIMENTADO) Construtivamente, um flip-flop pode ser descrito como um inversor realimentado por um outro inversor, como mostra o desenho abaixo.
D Q

Observando o diagrama, percebemos que uma vez imposto um estado lgico entrada D, o estado da sada Q se manter indefinidamente. Como podemos mudar do estado de Q sem provocar uma contradio com o estado de Q ? A soluo adicionar terminais de entrada, substituindo os inversores por portas lgicas No-E.
S Q S Q

Q R R

Agora podemos levar Q a 1 impondo 0 em S (set) e levar Q a 0 impondo 0 em R (reset), armazenando o estado que desejamos no flip-flop. Entretanto, o flip-flop deve ser aperfeioado para satisfazer definio lgica de flip-flop: Um dispositivo com duas sadas complementares Q e Q , com duas entradas S e R que operam de acordo com a tabela abaixo.

S 0 0 1 1

R 0 1 0 1

Q no permitido 1 0 0 1 QA QA

Um circuito eletrnico biestvel quando possui dois estados estveis, isto , sua sada 0 Vcc (nvel lgico 0) ou +5V (nvel lgico 1). Assim, este dispositivo pode ser usado para armazenar um dgito binrio (bit).

2 A DEFINIO DE FLIP-FLOPS
O flip-flop um elemento de circuito que pode apresentar em seu funcionamento apenas dois estados estveis. Com a aplicao de um sinal de entrada pode-se efetuar a mudana de um estado para outro e de se conhecer o respectivo estado em que se encontra. Assim, este circuito considerado como uma clula bsica de memria da lgica seqencial capaz de armazenar um bit. 2.1 FLIP-FLOP SR BSICO Possui duas entradas, definidas como Set e Reset e duas sadas Q e Q. Estas sadas somente podem permanecer com valores lgicos complementares.

S 0 0 0 0 1 1 1 1

R 0 0 1 1 0 0 1 1

QA 0 1 0 1 0 1 0 1

QF 0 - estvel QA 1 - estvel 0 - estvel 0 0 - instvel 1 - instvel 1 1 - estvel 1 - instvel (no permitido) 1 - instvel (no permitido)

S 0 0 1 1

R 0 1 0 1

QF QA 0 1 no perm.

2.2 DIAGRAMA DE TEMPO Os grficos ou diagramas de nvel lgico x tempo fornecem uma representao visual do desenvolvimento de sinais no tempo, bem como uma demonstrao grfica de comparao entre sinais em vrios pontos de um circuito lgico. Assim, so muito usados em sistemas seqenciais.

Exemplo de diagrama de tempo de um flip-flop SR

3 APERFEIOAMENTO DO FLIP-FLOP
3.1 NECESSIDADE DE SINCRONISMO O flip-flop visto anteriormente no permite nenhum tipo de controle sobre as entradas, isto , quando as informaes chegam s entradas, so imediatamente processadas sem nenhum tipo de controle. Para corrigir este problema incorporada uma entrada de controle denominada clock (para flip-flops) ou enable (para latches), permitindo um controle sobre as informaes de entrada e estabelecendo um sincronismo na operao do circuito. Desse modo, possvel sincronizar o flip-flop (ativar ou desativar) com o intuito de armazenar a informao em qualquer instante e, ento, reter a informao armazenada por qualquer perodo de tempo desejado. 3.2 LGICA (TERMINAIS E ESTADOS) O flip-flop pode ser representado por um bloco com duas sadas Q e Q , entradas para as variveis e uma entrada de controle (clock/enable). As duas sadas correspondem aos dois estados estveis e complementares. Para que o flip-flop possa assumir um destes estados, necessrio que haja uma combinao das variveis de entrada e de um pulso de controle clock/enable. Com este pulso, o flip-flop permanecer nesse estado ou mudar at a chegada de um novo pulso de controle, que poder novamente manter ou mudar o estado. Portanto, a sada depende dos valores das entradas e/ou dos estados armazenados; Entrada 1 Clock/Enable Entrada 2 FLIP-FLOP ou LATCH

Q
Q

CONVENES E SIMBOLOGIAS O latch responde em nvel (0 ou 1) e o flip-flop responde em transio (subida ou descida). Se o circuito de controle detecta: - transio Clock (Ck) - nvel Enable (En)

sub

desc

3.3 LATCH SR COMANDADO POR CONTROLE ENABLE

Para Enable = 0 a sada Q do latch mantm seu estado armazenado; Para Enable = 1 o latch responde conforme os nveis lgicos das entradas. Exemplo de diagrama de tempo de um latch SR ativado em nvel lgico 1 1 Ck 2 3 4 5 6 7

R Q

Q
3.4 FLIP-FLOP JK (ELIMINAO DO ESTADO PROIBIDO) Objetivo: evitar a sada Q com situao no permitida.

J 0 0 0 0 1 1 1 1

K 0 0 1 1 0 0 1 1

QA 0 1 0 1 0 1 0 1

QA 1 0 1 0
1 0 1 0

S 0 0 0 0 1 0 1 0

R 0 0 0 1 0 0 0 1

QF 0 1 0 0 1 1 1 0 QA 0 1

J 0 0 1 1

K 0 1 0 1

QF QA 0 1 QA

QA

Circuito anlogo do Flip-flop JK (com portas lgicas No-E)

Caracterstica inconveniente no funcionamento do circuito Para J e K = 1, ocorrem constantes oscilaes (mudanas de estado) na sada Q, em funo das duplas realimentaes. Possveis solues forar o clock para zero num tempo conveniente aps a aplicao dos nveis lgicos nas entradas J e K (deve levar em conta o atraso na propagao de cada porta lgica); inserir blocos (portas lgicas) de atraso em srie com as linhas de realimentao e comutar a entrada clock da mesma forma. 3.5 FLIP-FLOP JK MESTRE-ESCRAVO (ELIMINAO DA OSCILAO) O flip-flop JK, quando ativado, funciona como um circuito combinacional, isto , ocorre a passagem das entradas J e K e da realimentao, provocando alteraes sucessivas na sada Q. Objetivo: evitar as constantes oscilaes na sada Q quando as entradas J=1 e K = 1. Seqncia de funcionamento

Para clock = 1: ocorre a passagem dos nveis lgicos J e K do Mestre; no passagem de Q1 e Q1 , porque o clock do escravo zero. Para clock = 0: Q1 e Q1 estavam bloqueadas com o ltimo estado assumido; passagem das entradas S e R (escravo), mudando as sadas Q e Q .

10

Concluso: o circuito s reconhece as entradas J e K quando o clock passa de 1 para zero. 3.6 FLIP-FLOP JK MESTRE-ESCRAVO COM TERMINAIS DE PROGRAMA ENTRADAS PRESET E CLEAR A maioria dos flip-flops com clock tambm possui uma ou mais entradas de programa, ditas assncronas, que operam independentemente das entradas sncronas e da entrada de clock. Estas entradas assncronas podem ser usadas para colocar o flip-flop no estado 0 ou no estado 1, em qualquer instante. Assim, estas entradas se sobrepem a todas as outras entradas.

Clr 0 0 1 1

Pr 0 1 0 1

QF No permitido 0 1 Func. normal

3.7 - FLIP-FLOP TIPO T (TOGGLE) Trata-se de um flip-flop JK com as entradas curto-circuitadas, de modo a assumir apenas duas condies de entrada. Pr T Ck

K
Clr

11

J 0 0 1 1

K 0 1 0 1

T 0

QF QA

T 0 1

QF QA QA

QA

3.8 - FLIP-FLOP TIPO D (DATA) Trata-se de um flip-flop JK com as entradas invertidas, obtidas atravs de uma porta lgica inversora conectada entre as mesmas. Pr D Ck

K
Clr J 0 0 1 1 K 0 1 0 1 D 0 1 QF 0 1

D 0 1

QF 0 1

12

EXERCCIOS 1. Analise o flip-flop abaixo, preencha a tabela de transio e especifique o seu tipo.

X 0 0 1 1

QA 0 1 0 1

QF

X 0 1

QF

2. Dado o circuito do flip-flop abaixo, determine sua tabela de transio para todas as situaes possveis nas entradas A e B. Aps, obtenha a tabela compacta e identifique seu tipo.

A 0 0 0 0 1 1 1 1

B 0 0 1 1 0 0 1 1

QA 0 1 0 1 0 1 0 1

QF

A 0 0 1 1

B 0 1 0 1

QF

3. Desenhe a forma de onda na sada Q do flip-flop JK abaixo. J K=1 Q

13

Ck

4. Analise o flip-flop abaixo, preencha a tabela de transio e especifique o seu tipo.

QA 0 1 0 1

QF

QF

5. Dado o circuito do flip-flop abaixo, determine sua tabela de transio para todas as situaes possveis nas entradas A e B. Aps, obtenha a tabela compacta e identifique seu tipo.

X 0 0 0 0 1 1 1 1

Y 0 0 1 1 0 0 1 1

QA 0 1 0 1 0 1 0 1

QF

X 0 0 1 1

Y 0 1 0 1

QF

14

6. Desenhe a forma de onda na sada Q do flip-flop tipo T abaixo.

Ck

CLR

PR

7.

Determine a forma de onda da sada Q do flip-flop tipo D, a partir dos sinais apresentados abaixo:

Ck

PR

CLR

15

8. Apresente as sadas Q dos flip-flops abaixo, a partir dos sinais de Clock e Entrada.

Ck

Q1

Q2

Q3

Q4

9. A partir das formas de onda de um flip-flop JK apresentadas abaixo, determine a forma de onda na sada Q.

Ck CLR PR J K

10. Dado o circuito do flip-flop abaixo, determine sua tabela de transio para todas as situaes possveis nas entradas X e Y. Aps, obtenha a tabela compacta e identifique seu tipo.

16

X Q

Ck

Q' Y

X 0 0 0 0 1 1 1 1

Y 0 0 1 1 0 0 1 1

QA 0 1 0 1 0 1 0 1

QF

X 0 0 1 1

Y 0 1 0 1

QF

17

EXPERINCIA 1 - FLIP-FLOPS
1. Identifique a pinagem dos circuitos integrados e monte em matriz de contatos os seguintes circuitos digitais. Em seguida, obtenha a tabela de transio e defina como o flip-flop ativado. 1.1 - Latch SR com enable, usando portas lgicas No-E (7400)

1.2 - Latch SR com enable, usando portas lgicas No-Ou (7402)


S Q Ck

Q R

1.3 - Flip-flop JK com Preset e Clear (7476)

1.4 - Flip-flop tipo T (7476)

1.5 - Flip-flop tipo D (7474)

18

1.6 Circuitos anti-repique

2. Na seqncia, energize os circuitos e simule, via chaves, os valores possveis para as entradas; 3. Organize e interprete os dados coletados na experimentao. Verifique se os valores encontrados na sada correspondem anlise terica do circuito (tabela de transio); 4. Desmonte os circuitos e reponha o equipamento e componentes aos seus lugares; 5. Mantenha sempre limpo e organizado o ambiente de experimentao educativa.

19

4 REGISTRADORES DE DESLOCAMENTO
4.1 CONCEITO Um registro de deslocamento (shift register) consiste de um grupo de flip-flops interconectados com a propriedade de deslocar dados armazenados nas suas sadas Q de um flip-flop para outro. A direo do deslocamento pode ser para a direita ou para a esquerda, cuja operao sncrona e sendo regida por um sinal de clock. 4.2 CARACTERSTICAS Um registrador pode deslocar informaes de dois tipos: Informao paralela So dados que trafegam em vrias linhas ou fios, uma para cada bit do nmero/palavra binrio, no existindo a necessidade de referenciar a um clock. Informao srie So dados que trafegam em uma nica linha ou fio, um bit de cada vez, a uma taxa de transferncia que constante e em fase com um clock de referncia. 4.3 APLICAES Os computadores trabalham com pacotes de informaes binrias de 8, 16 ou 32 bits. Os bytes so processados e/ou transportados num computador atravs de barramentos. A forma de transmisso paralela usada em computadores porque muito mais rpida e as distncias so pequenas. Por outro lado, o formato serial usado para mover dados de/para teclado e monitor e para comunicao digital entre microcomputadores. Os registradores tambm so usados para algumas operaes aritmticas como complementao, multiplicao e diviso binria. 4.4 CLASSIFICAO Os registradores de deslocamento so classificados de acordo com trs aspectos bsicos. a) Quanto forma de manipulao dos dados - Entrada srie e sada srie - Entrada srie e sada paralela - Entrada paralela e sada srie - Entrada paralela e sada paralela b) Quanto direo de deslocamento - Deslocamento para a esquerda (shift left) - Deslocamento para a direita (shift right) - Deslocamento bidirecional c) Quanto capacidade de armazenamento - Relacionado com o nmero de bits que pode ser armazenado no registrador 4.5 CONFIGURAES Os dados num registrador so possveis de deslocar: - em srie e em paralelo - para dentro e para fora Em funo disso, podem ser construdos quatro tipos bsicos de registradores: - em srie para dentro ou carga (load) em srie para fora ou descarga (shift) - em srie para carga em paralelo para descarga - em paralelo para carga em srie para descarga - em paralelo para carga em paralelo para descarga

20

4.5.1 REGISTRADOR DE DESLOCAMENTO DE ENTRADA SRIE E SADA SRIE Aps a entrada da informao, cada bit deslocado uma casa direita aps a ocorrncia do clock. Assim, so deslocados 4 bits de dados em modo srie para dentro ( direita) dos flip-flops. Entrada de informao: atravs da entrada srie; Sada da informao: em Q0

21

4.5.2 REGISTRADOR DE DESLOCAMENTO DE ENTRADA SRIE E SADAS PARALELAS O funcionamento deste registrador idntico ao registrador anterior, exceto que as sadas so obtidas, simultaneamente, aps 4 pulsos de clock, nos terminais Q3, Q2, Q1 e Q0.

4.5.3 REGISTRADOR DE DESLOCAMENTO DE ENTRADAS PARALELAS E SADA SRIE

Entrada da informao: Se limparmos o registrador (Clear=0) e introduzirmos a informao paralela atravs dos terminais PR, ento, as sadas Q dos flip-flops assumiro estes valores. Sada da informao: Para Clear=0, a cada descida do Clock, Q0 ir assumir os valores, seqencialmente, de Q0, Q1, Q2 e Q3. Se Enable=0 Preset (PR) dos flip-flops so iguais a 1 e atuam normais; Se Enable=1 Preset (PR) dos flip-flops tero valores complementares s entradas PR3, PR2, PR1, PR0 e, portanto, as sadas assumiro os valores destes terminais. Exemplo: Se PR3 = 0 Pr=1 Q3 mantm seu estado; Se PR3 = 1 Pr=0 Q3 = 1.

22

4.5.4 REGISTRADOR DE DESLOCAMENTO DE ENTRADA PARALELA E SADAS PARALELAS Entrada de informao: atravs dos terminais Preset e Clear; Sada da informao: inibindo o clock, as sadas so obtidas pelos terminais Q3, Q2, Q1 e Q0.

4.6 REGISTRADOR DE DESLOCAMENTO USADO COMO DIVISOR POR 2 (SHIFT RIGHT) Q3 Q2 Q1 Q0

Entrada Ck

Registrador de Deslocamento

Entra-se com zero na Entrada Srie e, atravs do clock, desloca-se uma casa direita. Exemplo: 1010(2) = 10(10) 0101(2) = 5(10) 4.7 REGISTRADOR DE DESLOCAMENTO USADO COMO MULTIPLICADOR POR 2 (SHIFT LEFT) Q3 Q2 Q1 Q0

Entrada Ck

Registrador de Deslocamento

Desloca-se uma casa esquerda atravs do clock e fora-se Q0 = 0. Exemplo: 0001(2) = 1(10) 0010(2) = 2(10)

23

EXERCCIOS 1. Esboce as formas de onda para o Registrador de Deslocamento abaixo, em funo dos sinais aplicados, considerando a entrada Enable = 0
PR2 Enable PR1 PR0

Q2

Q1

Q0

E
D CP

S Q _ Q R D CP

S Q _ Q R D CP

S Q _ Q R

Ck Clr

Ck Clr E

Q2

Q1 Q0 2. Na questo anterior, aplicando os nveis lgicos nas entradas PRs indicados abaixo, determina as formas de onda nas sadas Q. Considere Enable=1. Clr PR2 PR1 PR0 Q2 Q1 Q0

24

3. Quanto tempo em segundos levar para deslocar um nmero binrio de 8 bits para dentro do circuito integrado 74164, se o clock de 1 MHz?

4. Desenhe as formas de onda na sada P do circuito abaixo.

25

EXPERINCIA 2 - REGISTRADORES DE DESLOCAMENTO


1. Identifique a pinagem do circuito integrado e monte em matriz de contatos o seguinte circuito digital: 1.1 - Registrador de Deslocamento de 4 bits (7495) Outputs Vcc QA QB QC QD Shift Right Ck1 Shift Left Ck2

14

13

12

11

10

7495 R. D. 4 bits
Entrada paralela/srie Sada paralela
1 Serial Input 2 A 3 B 4 C 5 D 6 Mode control 7 GND

Inputs Etapa 1 Mode control = 0 Ck1 (srie/paralelo) Mode control = 1 Ck2 (paralelo/paralelo) Etapa 2 Ck1 e mode control = 0 deslocamento direita Ck2 e mode control = 1 deslocamento esquerda

1.2 Registrador de Deslocamento de 8 bits atravs de cascateamento (2 x 7495) sadas 1 sadas 2 ck1 ck2

14

13

12

11

10

14

13

12

11

10

7495 (1)
1 2 3 4 5 6 7 1 2

7495 (2)
3 4 5 6 7

entrada shift right

entrada shift left

mode control

26

1.3 Registrador de deslocamento usado na transmisso de dados (74194 e 7495)

Ck S1 S0

16 Vcc

15

14

13 QC

12 QD

11 Ck

10 S1

9 S0

14

13

12 QB

11 QC

10 QD

9 SR

8 SL

QA QB

Vcc QA

74194 Converso P/S


Clr SI-right A 1 2 3 B 4 C 5 D SI-left GND 6 7 8 SI 1

7495 Converso S/P


A 2 B 3 C 4 D 5 MC GND 6 7

Simulao com chaves

Mode control

SI-R 0 1 0 0

SI-L 0 0 0 1

Mode S1 S0 control 1 ck1 1 1 0 ck1 0 1 0 ck2 1 1 0 ck2 1 0

FUNO DO 74194 transfere dados das entradas para as sadas desloca dados da esquerda para a direita transfere dados das entradas para as sadas desloca dados da direita para a esquerda

27

1.4 Registrador de deslocamento de 8 bits em anel (74164)

Vcc

QH

QG

QF

QE

Reset

Ck

14

13

12

11

10

74164 R. D. 8 bits
Entrada srie Sadas paralelas
1 A 2 B 3 QA 4 QB 5 QC 6 QD 7 GND

2. Na seqncia, energize o circuito e simule, via chaves, os valores possveis para as entradas; 3. Organize e interprete os dados coletados na experimentao. Verifique se os valores encontrados na sada correspondem anlise terica do circuito; 4. Desmonte o circuito e reponha o equipamento e componentes aos seus lugares; 5. Mantenha sempre limpo e organizado o ambiente de experimentao educativa.

28

5 CONTADORES
Conceito O contador digital um circuito seqencial, configurado de tal modo que para cada estado presente nas sadas dos flip-flops, existe um estado seguinte bem definido. Durante a operao de contagem, o contador desloca-se de um estado para o outro de acordo com uma seqncia especificada. Caractersticas Variam os seus estados, sob comando de pulsos de clock, de acordo com uma seqncia pr-determinada; So usados para contagens, divisores de freqncia, geradores de forma de onda, conversores analgico-digitais, etc; Classificao quanto ao sincronismo Assncrono: quando o sinal de clock aplicado apenas ao primeiro estgio (flip-flop). Os estgios seguintes utilizam como sinal de sincronismo a sada de cada estgio anterior. Sncrono: quando o sinal de clock nico e externo, sendo aplicado a todos os estgios ao mesmo tempo. Classificao quanto ao modo de contagem Crescente (progressivo): quando conta numa seqncia de nmeros crescentes. Decrescente (regressivo): quando conta numa seqncia de nmeros decrescentes. Aleatria: quando conta numa seqncia qualquer programada. 5.1 - CONTADORES ASSNCRONOS Um contador assncrono, de modo geral, tem as sadas e entradas ligadas e polarizadas conforme a rotina: a) a sada de cada flip-flop deve ser conectada a entrada clock dos flip-flops seguintes; b) as entradas J e K de todos os flip-flops devem ser polarizadas com nvel lgico 1, na configurao do flip-flop tipo T; c) o sinal de clock do contador deve acionar a entrada clock do primeiro flip-flop. As sadas do primeiro e ltimo flip-flop correspondem, respectivamente, aos bits menos (LSB) e mais (MSB) significativos do contador. A interligao de todas as entradas clear dos flip-flops fornece uma entrada que corresponde linha clear (reset) do contador, usada para garantir um estado inicial zero. 5.1.1 - CONTADOR BINRIO Apresenta na sada a seqncia de contagem do cdigo binrio.

29

Inicialmente, supem-se as sadas zeradas. Aplica-se um pulso de clock no primeiro flipflop, cuja mudana de estado na sada ocorrer na descida do clock. O flip-flop seguinte mudar o nvel lgico na sada sempre que ocorrer a mudana (descida do clock) de nvel lgico no flip-flop anterior. O diagrama de tempo abaixo ilustra melhor a seqncia de funcionamento do contador. Aps o 160 pulso de clock, o contador ir reiniciar a contagem. Observa-se que este circuito possui tambm a caracterstica de divisor de freqncia por 2, 4, 8 e 16 (fn = fck/2n). 1 Ck 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Q0

Q1

Q2

Q3 O maior nmero que um contador pode registrar em sua sada dado por: (2n 1), onde n o nmero de flip-flops do contador. Exemplo: Para uma contagem limite do contador = 3110 = 111112 O nmero de flip-flops necessrios ser: 2n 1 = 31 n = 5 flip-flops Obs: A soma dos tempos de transio em cada flip-flop provoca a ocorrncia de estados lgicos falsos, que podem ser indesejveis quando se tm contadores com muitos flipflops e alta freqncia do clock.

5.1.2 CONTADOR MDULO QUALQUER Para o projeto de um contador assncrono com mdulo de contagem qualquer N, basta verificar quais as sadas do contador para o caso N+1. Estas sadas devem ser conectadas a uma porta lgica tipo NO-E, cuja sada ser remetida para as entradas clear dos flip-flops do contador. Exemplo: Contador de 0-5 - quando as sadas apresentarem Q2Q1Q0 = 110 (2) = 6 (10), um pulso zero ser encaminhado s entradas clear, zerando o contador e reiniciando a contagem.

30

5.1.3 - CONTADOR BCD (DCADAS)

Para contar de 0 a 9: quando as sadas apresentarem Q3Q2Q1Q0 = 1010 (2) = 10 (10) A lgica auxiliar (porta No-E) assume nvel lgico zero em sua sada, encaminhado a todos os terminais clear, zerando todas as sadas e o contador reinicia a contagem.

5.1.4 - CONTADOR BINRIO DECRESCENTE O circuito que efetua a contagem decrescente se diferencia da contagem crescente apenas pela forma de obteno dos clocks dos flip-flops: a partir das sadas complementares. Um outro circuito com mesmo resultado pode ser obtido quando as sadas do contador so extradas das sadas complementares dos flip-flops. O diagrama de tempo a seguir demonstra a seqncia de contagem.

31

1 Ck

10

11

12

13

14

15

16

Q0

Q1

Q2

Q3

5.1.5 - CONTADOR BINRIO CRESCENTE E DECRESCENTE Uma superposio de contadores crescente e decrescente resulta num contador bidirecional, onde uma varivel de controle X define se: - contagem crescente X = 1 - contagem decrescente X = 0

Uma outra estrutura pode ser construda usando multiplexadores (TTL 74157) entre os vrios estgios do contador que selecionam para a linha clock do prximo estgio a sada Q ou seu complemento Q do flip-flop. O controle da contagem ascendente ou descente feito pela entrada de seleo C do multiplex: - Para C = 0 a contagem crescente - Para C = 1 a contagem decrescente

32

5.1.6 CONTADOR ASSNCRONO PROGRAMVEL Um contador digital pode ser programado com um nmero binrio de tamanho igual ou menor que seu mdulo. Uma vez definida a programao, pode-se empregar um circuito comparador que efetua a comparao entre os bits das sadas Q do contador com os bits programados nas entradas A0, A1, A2 e A3. Quando forem iguais, um sinal controla a parada do contador.

33

5.2 CONTADORES SNCRONOS Um contador sncrono tem todas as entradas de clock interconectadas, de modo que cada flip-flop muda de estado lgico ao mesmo tempo. Antes de cada pulso de clock, as entradas devem ser estabelecidas com os nveis lgicos apropriados, assegurando nas sadas os estados lgicos desejados. Isto , o projeto de contadores sncronos requer a alterao conveniente dos nveis lgicos das entradas J e K dos flip-flops, a cada pulso introduzido no clock. Seguindo tal orientao, pode-se construir uma tabela da transio que estabelece os valores nas entradas J e K dos flip-flops, obtida a partir das possveis combinaes de estados na sada Q, antes e depois da aplicao do pulso de clock. J 0 0 1 1 K 0 1 0 1 QF QA 0 1 Q A QF 0 0 0 1 1 0 1 1 J 0 1 X X K X X 1 0

QA

5.2.1 - CONTADOR BINRIO (Procedimento de projeto) O procedimento para projeto de um contador sncrono desenvolvido a seguir pode ser aplicado a qualquer seqncia desejada. a) Determine o nmero de bits necessrios (nmero de flip-flops) e a seqncia de contagem desejada. Contagem = 2n 1, onde: n=nmero de flip-flops Ex: contagem = 15 = 2n 1 n=4 flip-flops 0123456789101112131415 b) Desenhe o diagrama da transio dos estados possveis, incluindo aqueles que no fazem parte da seqncia de contagem desejada.

0000

0001

0010

0011

0100

0101

1111

1110

Os nmeros que na fazem parte da contagem podem ser orientados para: a) ir para o incio da contagem; b) b) ir para o nmero imediatamente superior; c) torn-lo irrelevante.

0110

0111

1101

1100

1011 34

1010

1001

1000

c) Use o diagrama de transio de estados para construir uma tabela que relacione todos os estados possveis das sadas do contador. Acrescente colunas para as entradas J e K, indicando seus nveis lgicos necessrios para possibilitar as sadas desejadas. Q3 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 Q2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 Q1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 Q0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 J3 0 0 0 0 0 0 0 1 X X X X X X X X K3 X X X X X X X X 0 0 0 0 0 0 0 1 J2 0 0 0 1 X X X X 0 0 0 1 X X X X K2 X X X X 0 0 0 1 X X X X 0 0 0 1 J1 0 1 X X 0 1 X X 0 1 X X 0 1 X X K1 X X 0 1 X X 0 1 X X 0 1 X X 0 1 J0 1 X 1 X 1 X 1 X 1 X 1 X 1 X 1 X K0 X 1 X 1 X 1 X 1 X 1 X 1 X 1 X 1

d) Obtenha as expresses simplificadas para cada uma das entradas J e K dos flip-flops, utilizando os diagramas de Veitch-Karnaugh.

J3 = Q2.Q1.Q0 J2 = Q1.Q0 J1 = Q0 J0 = 1

K3 = Q2.Q1.Q0 K2 = Q1.Q0 K1 = Q0 K0 = 1

e) Desenhe o circuito do contador sncrono com 4 flip-flops, utilizando portas lgicas adequadas para as entradas J e K, conforme os resultados obtidos nas expresses lgicas simplificadas.

35

5.2.2 - CONTADOR BCD (DCADAS) Q3 0 0 0 0 0 0 0 0 1 1 Q2 0 0 0 0 1 1 1 1 0 0 Q1 0 0 1 1 0 0 1 1 0 0 Q0 0 1 0 1 0 1 0 1 0 1 J3 0 0 0 0 0 0 0 1 X X K3 X X X X X X X X 0 1 J2 0 0 0 1 X X X X 0 0 K2 X X X X 0 0 0 1 X X J1 0 1 X X 0 1 X X 0 0 K1 X X 0 1 X X 0 1 X X J0 1 X 1 X 1 X 1 X 1 X K0 X 1 X 1 X 1 X 1 X 1

J3 = Q2.Q1.Q0 J2 = Q1.Q0
J1 = Q0.Q3

J0 = 1

K3 = Q0 K2 = Q1.Q0 K1 = Q0 K0 = 1

5.2.3 - CONTADOR BINRIO CRESCENTE/DECRESCENTE DE 3 BITS


X 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 Q2 Q1 Q0 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 J2 0 0 0 1 X X X X X X X X 0 0 0 1 K2 X X X X 0 0 0 1 0 0 0 1 X X X X J1 0 1 X X 0 1 X X X X 0 1 X X 0 1 K1 X X 0 1 X X 0 1 0 1 X X 0 1 X X J0 1 X 1 X 1 X 1 X X 1 X 1 X 1 X 1 K0 X 1 X 1 X 1 X 1 1 X 1 X 1 X 1 X

36

J2 = X.Q1.Q0 + X.Q1.Q0

K2 = X.Q1.Q0 + X.Q1.Q0

J1 = XQ0 J0 = 1

K1 = XQ0 K0 = 1

37

5.3 - CONTADORES PARA CIRCUITOS TEMPORIZADOS 5.3.1 - CONTADOR DE 0 A 59 Para contagem de minutos e segundos: ciclo igual a 60. Formas de obteno: a) um contador assncrono ou sncrono de contagem 0 a 59. b) dois contadores assncronos ou sncronos: um para dezena (0 a 5) e outro para unidade (0 a 9)

5.3.2 - CONTADOR DE 1 A 12 Para contagem de horas: ciclo de 1 a 12. Mais usado o contador sncrono, pois permite o incio da contagem pelo estado 1.

5.3.3 - CONTADOR DE 0 A 23 Para contagem de horas: ciclo igual a 24. Formas de obteno: c) um contador assncrono ou sncrono de contagem 0 a 23. d) dois contadores assncronos ou sncronos: um para dezena (0 a 2) e outro para unidade (0 a 9)

DIAGRAMA DE BLOCOS DE UM RELGIO DIGITAL BSICO

Contador Horas 1 - 12

Contador Minutos 0 - 59

Contador Segundos 0 - 59

Gerador de clock 1 Hz

Decodificador BCD/7 segmentos

Decodificador BCD/7 segmentos

Decodificador BCD/7 segmentos

Display - Horas

Display - Minutos

Display - Segundos

38

5.4 - CONTADORES INTEGRADOS 5.4.1 CONTADOR BCD TTL 7490 Consiste de duas partes distintas: um divisor de freqncia por dois e um divisor por cinco, onde cada divisor possui entrada clock independente. Os divisores podem ser interligados para a obteno de um divisor por dez, desde que a sada QA seja conectada externamente a entrada B. Aplicando o clock na entrada A, o contador assume a contagem BCD e retorna ao estado inicial a cada dez pulsos. A tabela abaixo orienta melhor seu funcionamento.

R0(1) R0(2) 1 1 1 1 X X X 0 0 X 0 X X 0

Contador 7490 R9(1) R9(2) QD QC QB 0 X 0 0 0 X 0 0 0 0 1 1 1 0 0 X 0 Contagem 0 X Contagem X 0 Contagem 0 X Contagem

QA 0 0 1

5.4.2 CONTADOR-DIVISOR POR 12 TTL 7492 Consiste de duas partes distintas: um divisor de freqncia por dois e um divisor por seis, onde cada divisor possui entrada clock independente. Os divisores podem ser interligados para a obteno de um divisor por doze, desde que a sada QA seja conectada externamente a entrada B. Aplicando o clock na entrada A, o contador assume a contagem de mdulo 12 (0-1-2-3-4-5-8-9-10-11-12-13) e retorna ao estado inicial a cada doze pulsos. As figuras a seguir ilustram melhor seu funcionamento.

39

5.4.3 CONTADOR BINRIO-DIVISOR POR 16 TTL 7493 Consiste de duas partes distintas: um divisor de freqncia por dois e um divisor por oito, onde cada divisor possui entrada clock independente. Os divisores podem ser interligados para a obteno de um divisor por dezesseis, desde que a sada QA seja conectada externamente a entrada B. Aplicando o clock na entrada A, o contador assume a contagem binria de 4 bits ou como divisor por 16 e retorna ao estado inicial a cada dezesseis pulsos. As figuras a seguir ilustram melhor seu funcionamento.

40

5.4.4 CONTADORES CRESCENTE/DECRESCENTE - BCD (TTL 74190) - BINRIO (TTL 74191)

Os integrados TTL 74190 e 74191 so contadores sncronos reversveis (up/down) de 4 bits. Possuem pinagens compatveis entre si e se diferenciam por um (74190) apresentar contagem BCD e outro (74191) apresentar contagem binria. Quando a linha Enable = 1 inibe o circuito para contagem. Esta entrada deve ser alterada apenas quando o clock estiver em 1. A direo de contagem definida pela entrada Down/up. Quando em nvel 0, o contador segue a seqncia crescente. Quando em 1, segue a seqncia decrescente. Os circuitos so completamente programveis, isto , as sadas do contador podem ser colocadas em qualquer estado, independente de pulsos de clock. Para isso, coloca-se a entrada Load = 0 e entram-se com os estados desejados nas entradas paralelas de dados A, B, C e D. Com essa caracterstica possvel o uso desses contadores como divisores por N, pois possvel alterar o mdulo do contador atravs destas entradas paralelas. Duas sadas so disponveis para a execuo de cascateamento: as sadas Ripple-clock e Max/min. A sada Max/min fornece um pulso positivo quando ocorre um overflow (aps o estado 9 ou 15 na seqncia up) ou underflow (aps o estado 0 na seqncia down). A sada Ripple-clock fornece um pulso negativo quando ocorre um overflow e underflow. O cascateamento pode ser feito se a sada Ripple-clock de um contador for ligada entrada Enable do contador seguinte (quando as linhas clock esto interligadas) ou entrada clock (quando as entradas Enable esto interligadas).

41

EXERCCIOS CONTADORES CONTADORES ASSNCRONOS 1. Esquematize o circuito de um contador assncrono crescente para contagem de horas de 1 a 12. 2. Esquematize o circuito de um contador assncrono decrescente para contagem de minutos de 29 a zero. Q4Q3Q2Q1Q0 = 111012 = 2910 3. Projete um contador assncrono crescente de modo a travar (parar) no nmero 9(10) = 1001(2) 4. Dado o circuito do contador assncrono abaixo, usando flip-flops D, preencha a tabela de transio informando a seqncia de contagem.
Q0 Q1 Q2

U1A
S D S Q _ Q R D CP R Q _ Q

U1B
S D CP R Q _ Q

U2A

Ck
CP

No 0

Q2 0

Q1 0

Q0 0

5. Projete um contador assncrono decrescente mdulo 12 (11 0). 6. Projete um contador assncrono crescente de 0 a 7, com uma lgica auxiliar que possibilite duas condies: a) o travamento (parada) da contagem quando pressionada uma chave de presso; b) o zeramento do contador quando pressionada uma outra chave de presso. 7. Esquematize o circuito de um contador assncrono decrescente de 12 a 1 (timer de horas), usando flip-flops JK. 8. Esquematize um contador assncrono para trabalhar como divisor de freqncia por 4. Esboce as formas de onda do clock e das sadas do contador.

42

9. O circuito contador binrio de 3 bits abaixo obtido com flip-flops JK ativados na descida do clock, apresenta o seguinte sinal de clock. Desenhe as formas de ondas nas sadas Q. Assuma Q0inicial = 0.
Vcc Ck

S J CP K R Q _ Q J CP K

S Q _ Q R J CP K

S Q _ Q R

Ck

Q0

Q1

Q2

43

CONTADORES SNCRONOS 1. Projete um contador sncrono crescente/decrescente, que gere a seguinte contagem: X=0 contagem crescente 0-1-2-3 X=1 contagem decrescente 3-2-1-0 2. Determine as formas de onda de Q2, Q1 e Q0 para o contador abaixo, em funo dos sinais de clock e In aplicados.

In

Ck Q0 Q1 Q2

3. Projete um contador sncrono, que gere a contagem da tabela de transio abaixo: Q3 Q2 Q1 0 0 0 0 0 0 0 0 1 0 1 1 1 1 1 Q0 0 1 1 1 1 J3 K3 J2 K2 J1 K1 J0 K0

44

4. Desenhe as formas de onda nos pontos A e B do contador sncrono abaixo, em funo dos sinais de clock aplicados.

Ck

5. Determine as formas de onda de Q0, Q1 e Q2 para o contador sncrono abaixo, em funo dos sinais de Clear e Clock aplicados.

Clr

Ck Q0 Q1 Q2

45

6. Projete o circuito de um contador sncrono para gerar a seqncia da tabela abaixo. Q3 Q2 Q1 0 0 0 0 0 1 0 1 0 1 0 0 Q0 1 0 0 0 J3 K3 J2 K2 J1 K1 J0 K0

7. Projete um contador sncrono para gerar a seqncia dos nmeros primos: 1-2-3-5-7

46

CONTADORES INTEGRADOS 1. Interligue os contadores integrados abaixo de modo a formar um de 0-23. Q1 Q0 Q3 Q2 Q1 Q0

Ck

0-2 Dezena
Clr

Ck

0-9 Unidade
Clr

2. Interligue os contadores integrados abaixo de modo a formar um de 0-59.

Q2

Q1

Q0

Q3

Q2 Q1

Q0

Ck

0-5 Dezena
Clr

Ck

0-9 Unidade
Clr

3. Dada a pinagem do contador integrado 7490 abaixo, elabore as devidas interligaes, de modo a contar de 0 a 7.

14 Ent.A

13 NC

12 QA

11 QD

10 GND

9 QB

8 QC

Contador integrado

7490
Ent.B R0(1) 1 2 R0(2) 3 NC 4 Vcc 5 R9(1) 6 R9(2) 7

R0(1) R0(2) R9(1) R9(2) QD 1 1 0 X 0 1 1 X 0 0 X X 1 1 1 X 0 X 0 0 X 0 X 0 X X 0 X 0 0 X

QC 0 0 0 Cont. Cont. Cont. Cont.

QB 0 0 0

QA 0 0 1

47

4. Interligue os dois blocos contadores, de modo a formar um sistema contador de 0 a 12.

Q0

Q3

Q2

Q1

Q0

Ck

0-1 Dezena
Clr

Ck

0-9 Unidade
Clr

5. Interligue os contadores integrados abaixo de modo a formar um de 59-0.

Q2

Q1 Q0

Q3

Q2

Q1

Q0

Ck

5-0 Dezena
Pr Clr

Ck

9-0 Unidade
Pr Clr

6. Interligue os contadores integrados abaixo de modo a formar um de 23-0.

Q1

Q0

Q3

Q2

Q1

Q0

Ck

2-0 74190 (Dezena)


Load

A B C D

Ck

9-0 74190 (Unidade)


Load

Data A Data B Data C Data D

48

7. Desenhe todas as interligaes e conexes necessrias nos cis 7490 e 7408, de modo a obter-se um contador crescente de segundos (0-59).

14 Ent.A

13 NC

12 QA

11 QD

10 GND

9 QB

8 QC Vcc

7490 (dezena)
1

14 13 12

Ent.B R0(1) 1 2

R0(2) 3

NC 4

Vcc 5

R9(1) 6

R9(2) 7
2 3 4 7408

11 10 9

14 Ent.A

13 NC

12 QA

11 QD

10 GND

9 QB

8 QC

5 6 7

7490 (unidade)
Ent.B R0(1) 1 2 R0(2) 3 NC 4 Vcc 5 R9(1) 6 R9(2) 7

GND

R0(1) 1 1 X X 0 0 X

R0(2) 1 1 X 0 X X 0

R9(1) 0 X 1 X 0 X 0

R9(2) X 0 1 0 X 0 X

QD 0 0 1

QC 0 0 0 Cont. Cont. Cont. Cont.

QB 0 0 0

QA 0 0 1

PROJETO Uma academia de ginstica necessita de um cronmetro progressivo e regressivo para contagem de tempo dos exerccios fsicos, para um tempo de at 1 minuto. Projete o mdulo contador de segundos (0059 e 590), incorporando os seguintes recursos: a) uma chave para zerar o contador; b) uma chave para travar (parar) o contador em qualquer tempo; c) uma chave para avano rpido do clock para programao da contagem num determinado tempo.

49

EXPERINCIA 3 CONTADORES ASSNCRONOS


1. Identifique a pinagem dos circuitos integrados e monte em matriz de contatos os seguintes circuitos digitais: 1.1 - Contador binrio crescente de 4 bits (2x7476)

1.2 - Contador binrio decrescente de 4 bits (2x7476)

1.3 - Contador BCD crescente de dcadas (2x7476, 7420)

1.4 Contador binrio crescente/decrescente (2x7476, 74157)

50

1.5 - Contador assncrono programvel de mdulo varivel (2x7476, 7485)


Q0 Q1 Q2 Q3

1
S S Q _ Q R J CP K R Q _ Q J CP K R S Q _ Q J CP K R S Q _ Q

Ck

J CP K

74LS85
A3 A2 A1 A0 B3 B2 B1 B0 IA<B IA=B IA>B A<B A=B A>B

2. Na seqncia, energize os circuitos e simule, via chaves, os valores possveis para as entradas; 3. Organize e interprete os dados coletados na experimentao. Verifique se os valores encontrados na sada correspondem anlise terica do circuito; 4. Desmonte os circuitos e reponha o equipamento e componentes aos seus lugares; 5. Mantenha sempre limpo e organizado o ambiente de experimentao educativa.

51

EXPERINCIA 4 - CONTADORES SNCRONOS


1. Identifique a pinagem dos circuitos integrados e monte em matriz de contatos o seguinte circuito digital: 1.1 - Contador binrio crescente de 4 bits (2x7476, 7408)

1.2 - Contador BCD crescente de 4 bits (2x7476, 7408)

2. Na seqncia, energize o circuito e simule, via chaves, os valores possveis para as entradas; 3. Organize e interprete os dados coletados na experimentao. Verifique se os valores encontrados na sada correspondem anlise terica do circuito; 4. Desmonte o circuito e reponha o equipamento e componentes aos seus lugares; 5. Mantenha sempre limpo e organizado o ambiente de experimentao educativa.

52

EXPERINCIA 5 - CONTADORES INTEGRADOS


1. Identifique a pinagem dos circuitos integrados e monte em matriz de contatos os seguintes circuitos digitais: 1.1 - Contador BCD 0-9 (7490)

1.2 - Contador/divisor por 12 (7492)

1.3 - Contador binrio 0-15 (7493)

53

1.4 - Contador crescente/decrescente BCD 0-9-0 (74190)

1.5 - Contador crescente/decrescente binrio 0-15-0 (74191)

1.6 - Contadores em cascata BCD 00-99 (7490 e 74190) Contador dezena 74190 Ck Contador unidade 7490

Decodificador BCD para display de 7 segmentos

Decodificador BCD para display de 7 segmentos

Display Dezena

Display Unidade

2. Na seqncia, energize os circuitos e simule, via chaves, os valores possveis para as entradas; 3. Organize e interprete os dados coletados na experimentao. Verifique se os valores encontrados na sada correspondem anlise terica do circuito; 4. Desmonte os circuitos e reponha o equipamento e componentes aos seus lugares; 5. Mantenha sempre limpo e organizado o ambiente de experimentao educativa.

54

6 MEMRIAS SEMICONDUTORAS
6.1 INTRODUO Memrias so dispositivos semicondutores que armazenam informaes na forma binria. So informaes constitudas de nmeros, letras, caracteres quaisquer, comandos de operaes, endereos, etc. Os bits das informaes podem ser acessados, quando no procedimento de leitura ou gravados/substitudos, quando no procedimento de escrita ou armazenamento. As memrias semicondutoras so usadas como memria principal (interna) ou memria de trabalho de um computador, pois permanece em comunicao constante com a unidade central de processamento (CPU) medida que um programa de instrues est sendo executado. Uma outra forma de armazenamento no computador efetuada pela memria auxiliar (externa) ou memria de massa, onde opera com uma velocidade mais baixa que a memria principal e armazena programas e dados que no esto sendo usados a todo o momento pela CPU. Esta memria transfere as informaes para a memria principal quando apenas for necessria ou solicitada no processamento.

6.2 ESTRUTURA E ORGANIZAO DA MEMRIA Uma memria armazena ou acessa as informaes digitais em lugares denominados localidades, mediante um endereamento. Para o acesso a estas localidades, o bloco possui uma srie de terminais de entradas de endereos que so ligados a um conjunto de fios denominado barra de endereos (addres bus). Para a entrada e sada dos dados, da mesma forma, o bloco possui uma srie de terminais ligados barra de dados (data bus). O bloco ainda possui terminais de controle ligados barra de controle (control bus).

Barra de endereos

MEMRIA NxM
Barra de controle

Barra de dados

A barra de dados bidirecional, isto , pode ser usada tanto como entrada como para sada de dados, onde um dos terminais da barra de controle define o sentido. As memrias so especificadas pela notao N x M, onde N indica o nmero de localidades de memria (palavras) e M indica o nmero de bits da informao armazenada por localidade. O nmero de bits que constitui uma palavra varia de computador para computador, estando na faixa de 4 bits at 36 bits, tipicamente. Uma dada "pastilha" de memria armazenar um dado nmero de palavras de tantos bits por palavra. Por exemplo, uma pastilha de memria popular tem uma capacidade de armazenamento de 1024 palavras de 4 bits cada, totalizando 4096 bits (4K), que a capacidade total de memria.

55

A organizao de uma pastilha de memria estabelecida como sendo constituda por um grupo de registradores, onde cada registrador armazena uma palavra. A "largura" de cada registrador o nmero de bits por palavra. O nmero de registradores o nmero de palavras armazenadas na memria, conforme apresentado na figura a seguir. Valores comuns para o nmero de palavras por pastilha so 64, 256, 512, 1024, 2048 e 4096. Todos eles so potncias inteiras de 2. Valores comuns para o tamanho da palavra so 1, 4 e 8. possvel obter outros tamanhos de palavras, combinando-se diversas pastilhas de memria. O contedo de cada registrador est sujeito a duas operaes possveis: leitura e escrita. A leitura o processo de obter a palavra armazenada no registrador e envi-la para algum outro lugar, onde ela poder ser usada. O contedo do registrador no modificado pela operao de leitura. Escrita o processo de colocar uma nova palavra em um registrador particular. claro que esta operao de escrita destri a palavra que estava previamente armazenada no registrador. Porm, no so todas as pastilhas de memria que tm a capacidade de ter os seus contedos escritos.

6.3 PRINCPIOS DE OPERAO Apesar das diferenas existentes na implementao de cada um dos tipos de memria, um certo conjunto de princpios bsicos de operao permanece o mesmo para todos os sistemas de memria. Cada sistema requer um conjunto de tipos diferentes de entrada e sada para realizar as seguintes funes: a. Selecionar o endereo que est sendo acessado para uma operao de leitura ou escrita; b. Selecionar a operao a ser realizada, leitura ou escrita; c. Fornecer os dados de entrada para a operao de escrita; d. Manter estveis as informaes de sada da memria resultantes de uma operao de leitura, durante um tempo determinado; e. Habilitar (ou desabilitar) a memria, de forma a faz-la (ou no) responder ao endereo na entrada e ao comando de leitura/escrita.

56

A figura abaixo ilustra as funes bsicas num diagrama simplificado de uma memria de 32 palavras x 4 bits. Para o tamanho da palavra (4 bits) existem 4 linhas de entradas de dados (I3-I2-I1-I0) e 4 linhas de sadas de dados (O3-O2-O1-O0). Durante uma operao de escrita, o dado a ser armazenado na memria deve ser aplicado nas linhas de entrada de dados. Durante uma operao de leitura, a palavra que est sendo lida da memria aparece nas linhas de sada de dados.

6.4 ESTRUTURAS DE ENDEREAMENTO Cada registrador ou palavra recebe um nmero, comeando de 0 e continuando at onde for necessrio. Este nmero especifica, de forma nica, a localizao do registrador e da palavra que ele est armazenando, e chamado de seu endereo. Por exemplo, o endereo 2 refere-se ao registrador 2 ou palavra 2. Sempre que se quiser referir a uma palavra em particular da memria, usa-se o seu endereo. O endereo de cada palavra um nmero importante porque ele o meio pelo qual um dispositivo externo pastilha de memria pode selecionar qual a palavra desta que ele deseja acessar para uma operao de leitura ou de escrita. Para entender como o endereamento utilizado, precisa-se verificar a organizao interna de uma pastilha de memria tpica, como mostra a figura abaixo. Este circuito integrado, em particular, armazena 64 palavras de 4 bits cada (256 bits). Estas palavras tm endereos variando de 0 a 6310. Para selecionar uma das 64 locaes para ler ou escrever, um cdigo binrio de endereo aplicado ao circuito decodificador. Como 26 = 64, o decodificador requer um cdigo de entrada de 6 bits. Cada cdigo de endereo ativa uma particular sada do decodificador que, por sua vez, habilita o registrador correspondente. Por exemplo, suponha um cdigo de endereo de A5 A4 A3 A2 A1 A0 = 011010. Como 0110102 = 2610, a sada 26 do decodificador ficar ALTA, habilitando o registrador 26.

57

Operao de leitura O cdigo de endereo escolhe um registrador da pastilha de memria para leitura ou escrita. Para ler os contedos do registrador selecionado, a entrada LEITURA/ESCRITA (R/W) dever estar em nvel 1. Alm disso, a entrada SELEO DE PASTILHA (CS) dever estar ativada (em 1, neste caso) . A combinao de R/W = 1 e CS = 1 habilita os amplificadores (buffers) de sada de forma que os contedos do registrador selecionado aparecero nas quatro sadas de dados. R/W = 1 tambm desabilita os amplificadores de entrada de modo que as entradas de dados no afetam a memria durante a operao de leitura. Operao de escrita A escrita de uma nova palavra de 4 bits no registrador selecionado requer R/W = 0 e CS = 1. Esta combinao habilita os amplificadores de entrada, de modo que a palavra de 4 bits aplicada s entradas de dados ser carregada no registrador selecionado. R/W = 0 tambm desabilita os amplificadores de sada, de forma que as sadas de dados esto em seu estado de circuito aberto. Seleo da pastilha A maioria das pastilhas de memria tem uma ou mais entradas SELEO DE PASTILHA (Chip-Select-CS) que so usadas para habilitar a pastilha inteira ou desabilit-la completamente. No modo desabilitado todas as entradas de dados e as sadas de dados estaro desabilitadas, de modo que nenhuma operao de leitura, nem de escrita, poder ocorrer. Neste modo, os contedos da memria no so afetados. A razo para ter entradas CS ficar clara quando combinam-se pastilhas de memria para a obteno de memrias maiores. Deve ser notado que muitos fabricantes chamam estas entradas de HABILITAAO DA PASTILHA (Chip-Enable-CE) em vez de CS. Pinos de entrada/sada comuns Para economizar pinos em um encapsulamento de CI, os fabricantes, freqentemente, combinam as funes de entrada de dados e de sada de dados usando pinos de entrada/sada comuns. A entrada R/W controla as funes destes pinos de E/S. Durante uma operao de leitura, os pinos de E/S agem como sadas de dados que reproduzem o 58

contedo da locao selecionada pelo endereo. Durante uma operao de escrita, os pinos de E/S agem como entradas de dados. Com pinos separados de entrada e de sada, requer-se um total de 18 pinos (incluindo terra e fonte de alimentao). Com quatro pinos comuns de E/S, so necessrios apenas 14 pinos. A economia de pinos torna-se ainda mais significativa em pastilhas com tamanho de palavra anterior. Exemplo Quantos pinos seriam necessrios para uma pastilha de memria que armazena 256 palavras de 8 bits e tem linhas comuns de E/S? Soluo: H 256 locaes endereveis, isto , 28 = 256. Portanto, so necessrias 8 entradas de endereo para selecionar qualquer endereo entre 00000000 e 11111111 (25510). H oito linhas de E/S, j que o tamanho da palavra 8 bits. Acrescentando uma linha R/W, uma linha CS, alimentao e terra, resulta um total de 20 pinos.

6.5 CLASSIFICAO DAS MEMRIAS As memrias podem ser classificadas segundo os itens abaixo. 6.5.1 Quanto forma de acesso As formas de acesso a uma locao de memria podem ser do tipo aleatrio ou seqencial. No acesso aleatrio, qualquer locao pode ser acessada aleatoriamente, isto , pode ser lida diretamente sem a necessidade da leitura das demais locaes. Possui a vantagem de ter um tempo de acesso pequeno e igual para qualquer uma das localidades da memria. No acesso seqencial, a locao no pode ser feita diretamente. Assim, vrias locaes da memria so acessadas at a informao desejada. O tempo de acesso depende da posio onde a informao est armazenada. 6.5.2 Quanto volatilidade As memrias volteis so aquelas que, ao interromper a alimentao, perdem as informaes armazenadas. Exemplo: memrias RAM. As memrias no volteis so aquelas que, mesmo sem alimentao, continuam com as informaes armazenadas. Exemplo: memrias ROM, PROM, EPROM. 59

6.5.3 Quanto ao tipo de armazenamento As memrias de armazenamento esttico so aquelas em que, uma vez inserido o dado numa dada localidade, este l permanece. Tm a vantagem da facilidade de utilizao. As memrias de armazenamento dinmico so aquelas em que se necessita inserir a informao em intervalos de tempo repetidos, a fim de evitar que as mesmas sejam perdidas. 6.5.4 - Quanto capacidade de armazenamento A capacidade de armazenamento est relacionada com o nmero total de bits ou palavras que a memria pode armazenar. Por exemplo, uma memria de 1.024 x 8 corresponde a uma capacidade de 1.024 palavras, cada uma com 8 bits, totalizando 8.192 bits. 6.5.5 Quanto tecnologia As memrias so construdas com tecnologia do tipo semicondutor bipolar, semicondutor de xido metlico (MOS) ou semicondutor de xido complementar (CMOS). As memrias do tipo bipolares so encontradas nos circuitos TTL padro, Schottky e ECL. As memrias do tipo MOS de canal N so as mais usadas por apresentarem grande densidade e baixo custo. As memrias CMOS so mais lentas do que as NMOS e bipolares, contudo, so de menor consumo e maior imunidade ao rudo. 6.5.6 Quanto ao tipo de sada As sadas das memrias podem ser de trs tipos: totem-pole, open collector ou threestate. As memrias three-state so as mais usadas por permitirem a criao de bancos de memria, de forma mais eficiente. Sada totem-pole: Possui em sua estrutura interna um transistor conectado ao +Vcc, permitindo alimentar cargas capacitivas. Os transistores de sada estabelecem uma impedncia baixa na sada, possibilitando um rpido chaveamento dos nveis lgicos. Sada open collector (coletor aberto): No possui um resistor ligando o coletor de sada do transistor ao +Vcc, devendo ser ligado externamente (resistor pull-up). Esta sada possibilita o controle externo da corrente do coletor de sada, possibilitando o aumento do fan-out, alm de poder habilitar sadas diferentes interligadas entre si, podendo assumir nveis lgicos opostos sem danos. A desvantagem sua baixa velocidade de chaveamento dos nveis lgicos. Sada three-state: Configurao que apresenta uma alta impedncia de sada (terceiro estado), em relao linha na qual est conectada. Funciona como se o dispositivo estivesse desligado. Assim, permite interligar vrias sadas em uma mesma linha de dados, fornecendo nvel lgico alto ou baixo, sem danificar outros circuitos.

60

6.6 TIPOS DE MEMRIAS As memrias so basicamente de dois tipos: RAM e ROM. As memrias RAM so de escrita/leitura e permitem acesso a uma localidade qualquer para escrever a informao desejada, bem como permite o acesso para a leitura do dado armazenado. As memrias ROM so apenas de leitura e contm uma informao pr-gravada e fixa, portanto, permitindo apenas a sua leitura. 6.6.1 MEMRIAS ROM As memrias ROM (Read Only Memory Memria Apenas de Leitura) permitem somente a leitura dos dados nela gravados. Possuem acesso aleatrio e no so volteis, isto , no perdem seus dados armazenados quando a fonte de alimentao desligada. Sua grande aplicao no armazenamento de sistemas operacionais de computadores e outros sistemas digitais, em circuitos de gerao de caracteres, na construo de circuitos combinacionais. A figura abaixo apresenta o bloco representativo de uma memria ROM, com terminais e barramentos. O terminal de controle CS (Chip Select) refere-se habilitao ou seleo da pastilha, ou seja, uma entrada de nvel lgico que, quando em 0, ativa ou habilita as sadas para fornecer os dados armazenados ou para serem lidos, conforme o endereamento estabelecido. Se o terminal de controle estiver em 1, as sadas estaro desabilitadas, assumindo estados de alta impedncia (tri-state), liberando a barra de dados para uso por outros dispositivos presentes num sistema controlado por microprocessador. A escolha do nvel lgico 0 para habilitao por razo em proporcionar maior imunidade ao rudo. Com nvel lgico 1, haveria maior suscetibilidade para o acionamento dos blocos dentro do sistema diante de um transiente indesejvel.
CS

Barra de endereos

MEMRIA ROM

Barra de dados

A arquitetura bsica de uma ROM genrica apresentada em blocos abaixo, com os respectivos terminais e barramentos de entrada e sada. A0
DECODIFICADOR A1 ...................... DE ENDEREOS

MATRIZ DE DADOS

AN+1

CS

CHAVES DE SADA

D0 D1 D2

DM+1

61

O decodificador de endereos (multiplexador) ativa uma sada de cada vez em funo do endereamento. A matriz de dados (arranjo de linhas e colunas) possibilita a gravao dos dados pelo fabricante e conseqente leitura pelo usurio. Para a sada dos dados, a memria possui um conjunto de chaves lgicas (buffers) que, conforme a habilitao atravs do terminal CS , possibilita a conexo das sadas (em nvel 0) ou imprime alta impedncia (em nvel 1) desconectando as sadas de dados do sistema. Exemplo 1 Para evidenciar a estrutura interna dos blocos e explicar seu funcionamento, ser construda uma memria ROM de 4 palavras de 8 bits, cujo contedo dos dados mostrado na tabela abaixo. ENDEREO A1 A0 0 0 0 1 1 0 1 1 DADOS D5 D4 D3 0 1 1 0 0 1 0 0 1 1 1 0

HEX D7 1 E 0 8 A 1 0 D 0 7 6 0

D6 0 0 0 1

D2 1 0 1 1

D1 1 1 0 1

D0 0 0 1 0

O circuito a seguir apresenta o codificador de endereos constitudo de portas lgicas inversora e E, a matriz de dados formada por diodos semicondutores e as chaves de sadas constitudas por buffers ativos com zero. A matriz de dados formada por um conjunto de diodos constitui a clula da memria, definindo uma srie de portas lgicas OU, de modo que a presena do diodo em determinada localidade estabelece nvel lgico 1 e, a sua ausncia, o nvel lgico 0. Para analisar um dado de sada especfico, ser endereado A1A0 = 00 e aplicado entrada de controle CS = 0, ativando o conjunto de buffers. Neste endereo, apenas o fio de sada da primeira porta lgica E ativado com 1 pelo decodificador, provocando a conduo de corrente dos respectivos diodos atravs dos resistores R ao terra do circuito. Devido a estas condues, os resistores apresentaro quedas de tenso que sero transpostas pelos fios at as sadas D4, D3, D2 e D1, resultando no dado 00011110(2) = 1E(16). Portanto, as sadas apresentam nvel lgico 1 onde houver diodos conectados na matriz e nvel lgico 0 na ausncia de diodos.

62

Na tecnologia de fabricao da matriz de dados, tambm so utilizados outros elementos semicondutores, tais como transistores bipolares ou transistores de efeito de campo (MOS-FET). O processo de programao facilitado pelo uso de um gabarito fotogrfico das ligaes eltricas chamado mscara, donde provm as memrias denominadas MROM programadas por Mscara. As memrias ROM so produzidas com programaes determinadas e sob encomenda, em grande quantidade e normalmente para clientes especficos e/ou fabricantes de equipamentos. Para o pequeno usurio, a soluo o uso das ROMs programveis. Exemplo 2 Uma ROM de 16 palavras com 8 bits foi programada com os dados mostrados na tabela a seguir, na sua forma binria e em hexadecimal. Suponha a leitura dos dados armazenados na posio cujas entradas de endereos so A3A2A1A0 = 0111 e habilitando as sadas com a entrada de controle CS = 0. As entradas de endereos sero codificadas no interior da ROM para selecionar a palavra correta, ou seja, as sadas D7D6D5D4D3D2D1D0 = 11101101. Se a entrada CS = 1, as sadas da memria ROM no estaro habilitadas e ficaro em alta impedncia.

CS

A3 A2 A1 A0 Memria ROM 16 x 8

D7 D6 D5 D4 D3 D2 D1 D0

63

6.6.1.1 MEMRIAS PROM As memrias PROM (Programmable Read-Only Memory) permitem o armazenamento dos dados pelo prprio usurio. Com a programao, a PROM transforma-se em definitivo numa memria ROM. O princpio bsico de programao numa PROM a destruio de pequenas ligaes semicondutoras existentes (diodo ou fusvel em srie com diodo) internamente nas localidades onde se quer armazenar a palavra de dados, atravs de um nvel de tenso convenientemente especificado pelo fabricante e conforme o endereamento realizado. Este roteiro fornecido pelo fabricante atravs de manuais ou atravs de kits apropriados para realizar os procedimentos conforme o tipo de pastilha, com maior eficincia e rapidez.

6.6.1.2 MEMRIAS EPROM As memrias EPROM (Erasable Programmable Read-Only Memory) permitem programar e apagar dados, mediante banho de luz ultravioleta, efetuado atravs da exposio da pastilha por uma janela existente em seu encapsulamento e, ainda, serem reprogramadas. So tambm conhecidas como UVPROM (Ultraviolet PROM). um dispositivo com arquitetura similar s memrias PROM, do tipo MOS, onde a gravao feita atravs de circuitos eletrnicos especiais e o apagamento do conjunto inteiro das informaes armazenadas feito atravs da aplicao de raios ultravioleta em uma janela de quartzo localizada numa das faces do chip, durante um intervalo de tempo entre 10 a 30 minutos. Aps o apagamento, todas as localidades assumem nveis lgicos 1, podendo o processo de regravao e apagamento se repetir por inmeras vezes. Uma fita adesiva opaca deve ser colocada sobre a janela aps a reprogramao para evitar que ela seja acidentalmente apagada pela luz ambiente. O desenho a seguir mostra o bloco de uma memria EPROM de 2K x 8 bits, com a respectiva terminologia e funo dos terminais dos barramentos. Para a capacidade desta memria, o acesso s localidades efetuado por 11 fios (211 = 2.048 = 2K) e 8 fios para a barra de dados. +Vcc A10 ..... A0
OE PGM CE

Memria EPROM 2K x 8

Vpp
A0 - A10 barra de endereos D0 D7 barra de dados

2716

D7 D6 D5 D4 D3 D2 D1 D0
OE habilitao da sada (Output Enable) PGM habilitao da programao (Program)
Vpp tenso de programao (Program Supply Voltage)

CE habilitao da pastilha (Chip


Enable)

64

Quando CE =0, ativa o bloco e quando CE =1, o bloco permanece desativado na situao de baixo consumo de potncia (stand-by). A entrada de controle OE =0 habilita o barramento de sada. A programao efetuada pelo terminal Vpp com uma tenso tpica maior que Vcc, da habilitao de programao PGM =0, do endereamento e da aplicao das respectivas palavras de dados ao bloco, seqencialmente, possibilitaro o armazenamento das informaes. 6.6.1.3 MEMRIAS EEPROM As memrias EEPROM ou E2PROM (Electrically Erasable Programmable Read-Only Memory) permitem o apagamento dos dados eletricamente, alm de possibilitar esta ao isoladamente por palavra de dados, sem necessidade de reprogramao total. As alteraes de programao podem ser efetuadas pelo prprio sistema onde a memria estiver inserida, sem necessidade de sua desconexo do soquete. Apesar desta memria ser acessvel para escrita e leitura, a mesma faz parte das memrias PROM. O bloco abaixo representa uma EEPROM de 8K x 8. +Vcc A12 ..... A0
OE WE CE

Memria EEPROM 8K x 8

2864

I/O7 I/O6 I/O5 I/O4 I/O3 I/O2 I/O1 I/O0

O acesso das localidades desta memria estabelecido atravs de 13 entradas de endereo (213 = 8.192 = 8k) e oito pinos de entrada/sada de dados. A barra de dados I/O bidirecional por possibilitar a escrita e a leitura. A escrita de uma palavra de dados obtida atravs do endereamento e respectiva aplicao da palavra nos terminais da barra de dados, isto , com o terminal OE =1 e o de habilitao da escrita WE =0, dentro de um ciclo de tempo mnimo especificado pelo fabricante (normalmente 10 ms).

6.6.1.4 CD ROM Os CDs (compact disks) so fabricados com uma superfcie altamente reflexiva, onde se armazena os dados atravs de um feixe laser bastante intenso e focalizado sobre um ponto muito pequeno no disco. Esse feixe provoca uma depresso que capaz de provocar a difrao da luz nesse ponto da superfcie. Assim, os dados digitais (1s e 0s) so armazenados no disco, um bit por vez, fazendo ou no essa depresso no material reflexivo, sendo a gravao organizada em uma espiral contnua de pontos de dados. A preciso do feixe laser permite que grande quantidade de dados (maior que 550 Mbytes) seja armazenada num disco de 120 mm.

65

Para a leitura, um feixe laser bem menos potente focalizado na superfcie do disco, onde em qualquer ponto, a luz refletida expressa como nveis lgicos 1 ou 0. Esse arranjo tico montado num mecanismo de transporte que se move para frente/trs ao longo do raio do disco, seguindo a espiral de dados medida que o disco rotacionado. Os dados recebidos do sistema tico vm uma linha serial de dados, numa taxa constante de bits com rotao do disco controlada. Se o disco para reproduo de udio, a linha de dados convertida em formato analgico. Se o disco usado como memria de leitura, os dados so codificados em bytes paralelos para serem processados num outro circuito digital. 6.6.1.5 MEMRIAS FLASH As memrias flash recebem esta denominao por possurem tempos curtos de apagamento e escrita. A maioria destas memrias efetua o apagamento em bloco e dura em torno de centenas de ms. Entretanto, tambm so encontradas memrias mais recentes que oferecem o modo de apagamento por setor. A tabela abaixo mostra as vantagens e desvantagens dos vrios tipos de memrias semicondutoras no-volteis. medida que aumenta a flexibilidade para apagar e programar, tambm aumentam a complexidade e o custo do dispositivo.
Complexidade e custo do dispositivo MEMRIA EEPROM FLASH EPROM PROM MROM CARACTERSTICAS Pode ser apagada eletricamente, no circuito, byte a byte. Pode ser apagada eletricamente, no circuito, por setor ou todo de uma vez. Pode ser apagada toda de uma vez com luz UV e apagada e reprogramada fora do circuito. No pode ser apagada nem reprogramada.

6.6.1.6 APLICAES DE MEMRIAS ROM Firmware armazenamento de programas ou dados que devem estar disponveis no processo de inicializao de sistemas microprocessados. Por exemplo, produtos como videocassetes, CD players, fornos microondas etc. Memria de Bootstrap tipo de programa armazenado em uma ROM que trata da inicializao do hardware de um computador. Aps a inicializao, o programa de bootstrap chama o sistema operacional e o computador comea a executar o sistema operacional. Tabela de Dados as ROMs so bastante utilizadas para armazenar tabelas de dados que no variam. Por exemplo, tabela trigonomtricas, cdigos ASCII, etc. Conversor de Cdigos este tipo de aplicao toma valores expressos em um determinado tipo de cdigo e produz uma sada expressa em outro cdigo. Por exemplo, o cdigo BCD pode ser convertido para 7 segmentos por uma ROM. Gerador de Funes basicamente, um gerador de funes um circuito que produz formas de onda senides, triangulares e quadradas. Uma ROM com tabelas de valores armazenados e um conversor D/A podem ser usados para gerar essas formas de onda. Armazenamento Auxiliar dados podem ser armazenados em memrias ROM apagveis (EPROM, EEPROM, FLASH), tornando essas memrias como alternativa aos discos magnticos de armazenamento.

66

6.6.2 MEMRIAS RAM As memrias RAM (Random Access Memory Memria de Acesso Aleatrio) so do tipo voltil e permitem o acesso aleatrio ou randmico (para escrita ou leitura) a qualquer uma das suas locaes. So usadas para armazenar temporariamente os programas e dados correntes em computadores. Os contedos das posies de uma RAM podem ser lidos e escritos medida que um computador executa um programa. A principal desvantagem de uma RAM o fato de a mesma ser voltil, isto , ela vai perder a informao armazenada se a alimentao for desligada ou interrompida. Por outro lado, tem como vantagem, um tempo de acesso muito reduzido. Quanto ao armazenamento, as memrias RAM so classificadas em estticas (SRAM Static Ram) e dinmicas (DRAM Dynamic RAM). As estticas utilizam como clula bsica o flip-flop e outros componentes digitais. As dinmicas possuem circuitos mais simples, porm, necessitando periodicamente de reinsero de dados em ciclo, uma ao denominada refresh controlada pelo microprocessador do sistema. A RAM dinmica armazena cada dado por efeito capacitivo do pequeno semicondutor formado internamente, apresentando a vantagem de alta capacidade de armazenamento por circuito integrado. A figura abaixo apresenta o bloco representativo de uma memria RAM esttica, com terminais de entrada de controle CS , terminal de controle R/ W de dupla funo, para possibilitar a leitura=1 ou escrita=0.
CS

Barra de endereos

MEMRIA RAM

Barra de dados

R/ W

O circuito abaixo apresenta a clula bsica de uma RAM esttica que permite a escrita e a leitura de 1 bit de informao. Para efetuar a escrita, deve-se selecionar a clula especfica com o terminal SEL=1 e o terminal de controle de leitura/escrita R/ W =0. Em seguida, aplica-se o dado a ser gravado (1) no terminal D, configurado como entrada.

Com todos os nveis lgicos estabelecidos, a clula bsica estar configurada para a escrita, pois com 0 na porta No-E superior ir ativar os dois buffers (substitudos por 67

chaves equivalentes), possibilitando que o dado possa ser aplicado ao flip-flop e armazenado em sua sada. Ao mesmo tempo, com 1 na outra porta No-E inferior, ir desativar o buffer de sada, permitindo apenas a escrita ou a entrada do dado.

Para efetuar a leitura, deve-se selecionar SEL=1 e passar o controle R/ W =1, onde o dado armazenado ser agora obtido no terminal D, configurado como sada. Com 1 na porta No-E superior, ir desativar os buffers, impedindo a escrita de um novo dado. As entradas em aberto dos flip-flop assumem 1, fazendo com que suas sadas mantenham seus nveis lgicos. Enquanto isso, com 0 na porta No-E inferior, ir ativar o buffer na sada do flip-flop, possibilitando a sua leitura no terminal D. Se a clula for selecionada (SEL=0), as duas portas No-E apresentaro 1 em suas sadas, mantendo os buffers desativados (estado tri-state), impedindo tanto a escrita como a leitura.

68

6.6.2.1 ARQUITETURA INTERNA DE UMA RAM Atravs da clula bsica padro analisada anteriormente, pode-se construir arquiteturas de memrias RAM estticas no formato N x M, conforme exemplo abaixo, uma memria com estrutura de 4 localidades com 4 bits.

CS

A0 A1

D0 D1 RAM 4x4 D2 D3

R/ W

O circuito constitudo de um decodificador de 2 canais, responsvel pelo endereamento de cada localidade atravs de A1 e A0, no conjunto formado por 4 clulas interligadas horizontalmente. Os terminais de dados D esto interligados, verticalmente, cujo posicionamento do bit na palavra de dados efetuado atravs da entrada de controle CS . Para completar, todas as entradas R/ W esto interligadas para propiciar o controle simultneo da escrita/leitura em todas as localidades. Como exemplo, ser efetuado o armazenamento (escrita) do dado 516 (01012) na localidade 116, endereada por 012. A seleo da pastilha efetuada com CS =0 e o endereamento da localidade com A1=0 e A0=1, definindo a habilitao da segunda porta E e sua respectiva sada em 1 que selecionar todas as clulas bsicas atravs das entradas SEL. Atravs do controle R/ W =0, os dados (01012) so aplicados nos terminais D3, D2, D1 e D0 e armazenados nas respectivas clulas. Para a leitura da informao, deve-se selecionar a pastilha com CS =0, R/ W =1, e enderear a localidade, obtendo-se os dados armazenados nas clulas atravs dos terminais D. A informao s ser perdida quando desligar a alimentao.

69

6.6.2.2 EXPANSO DA CAPACIDADE DE UMA MEMRIA RAM A expanso da capacidade de uma memria pode ser efetuada pela palavra de dados, pelo aumento de localidade ou por ambos. O primeiro exemplo ao lado consiste de uma expanso por palavra de dados, onde mostra a obteno de uma memria de 256x8, obtida pela expanso de dois blocos de memria de 256x4. Os terminais de endereamento A7 a A0, de seleo da pastilha CS e de controle de escrita/leitura R/ W so interligados, pois as operaes so comuns aos dois blocos. A barra de dados D7 a D0 composta pela associao da barra de dados de cada bloco, resultando numa palavra de 8 bits.

O segundo exemplo consiste de uma expanso por localidades de memrias, mostrando a formao de uma memria RAM 128x4, obtida a partir de blocos de memrias 32x4. O endereamento efetuado pelos terminais A6 a A0, constitudos dos 5 terminais de cada bloco de memria mais 2 terminais auxiliares, onde faro a seleo de cada bloco em seqncia, atravs das entradas CS . Os terminais de dados D3 a D0, bem como os terminais de escrita/leitura R/ W so apenas interligados.

70

Uma ltima possibilidade de expanso de memria consiste na ampliao de palavra de dados e tambm do nmero de localidades. O processo obtido atravs da conjugao das duas outras abordadas, onde se aumenta o nmero de localidades usando o circuito seletivo e associa-se um outro sistema semelhante para compor a nova palavra de dados. Como exemplo de expanso de memrias na rea de microcomputadores, cita-se a disponibilizao de slots (srie de conectores) para receber novos mdulos removveis denominados pentes de memrias, possibilitando de forma fcil e prtica a expansibilidade do sistema.

6.6.2.3 OUTROS TIPOS DE MEMRIAS RAM Tecnologia da RAM Dinmica usada em Computadores Os tipos de DRAM existentes variam em funo da capacidade, velocidade, consumo, custo e versatilidade:

SIMM (Single-In-line Memory Module) e DIMM (Dual-In-line Memory Module) so mdulos de memria que permitem uma instalao rpida e so padres de diversos tipos de DRAMs. Os mdulos SIMM e DIMM definem apenas como a DRAM empacotada. DRAM FPM (Fast Page module) permite acesso mais rpido a qualquer posio de memria dentro da pgina corrente. Normalmente, a maioria dos dados gravados na memria so seqenciais. Nesse tipo de DRAM, o endereo da linha (RAS) enviado uma vez e o endereo da coluna (CAS) incrementado. DRAM EDO (Extended data output) uma melhoria em relao s FPM. Os dados so colocados na sada e a DRAM EDO j pode decodificar o prximo endereo sem que esses dados tenham sido lidos; DRAM BEDO (Burst EDO) Possui uma arquitetura que permite alcanar alta velocidade ao se acessar dados seqenciais; SDRAM (Synchronous DRAM) so organizadas em dois bancos que so acessados alternadamente utilizando um sinal de clock sincronizado com a CPU. Desse modo essas memrias alcanam altas taxas de transferncias.

Memrias com Funes Especiais

Armazenamento de Dados com o Sistema Desligado muitos equipamentos armazenam seus dados em memrias RAM alimentadas com baterias de reserva (NVRAM RAM no-voltil); Memria Cache tipo de memria de alta velocidade e baixa capacidade de armazenamento que interage diretamente com a CPU. Na cache esto contidos os dados mais requisitados pelo processador e isso evita um acesso desnecessrio na RAM. Memria FIFO (First-In, First-Out) tambm conhecidas como buffers para armazenamento temporrio. Por exemplo, os dados so transferidos em altas taxas do PC para a impressora. Como a impresso mais lenta que a transferncia, esses dados devem ser armazenados em FIFOs e da podem ser impressos.

71

EXERCCIOS 1. Mostrar a forma de onda da sada da memria ROM com conversor D/A da figura abaixo:

Endereo (Hex) 0 1 2 3 4 5 6 7 8 9 A B C D E F

Contedo (Hex) 80 42 ED 01 F3 39 8C B5 1A FF 09 D2 6A 57 E0 04

2. Determine o mapeamento de uma memria PROM para atuar como gerador de caracteres para hexadecimal, isto , a partir de um cdigo binrio, fornea os nveis para fazer um display de 7 segmentos catodo comum apresentar a seqncia do sistema hexadecimal. Especifique a memria e determine sua capacidade.

3. Determine o mapeamento de uma memria EPROM para, atravs do sistema gerador de funes esquematizado, gerar a funo digitalizada vista abaixo. Calcule a freqncia do clock do contador.

72

4. Determine a capacidade de memria e a palavra de endereo inicial e final (em hexadecimal) para cada memria especificada a seguir: a) ROM 512X4 b) EPROM 4Kx8 c) RAM 128Kx8 d) RAM 2Mx16 5. Implemente um circuito equivalente a uma memria RAM de 64 x 8 bits, usando memrias RAM de 64 x 4 bits. Determine a capacidade e o endereamento inicial e final.

73

EXPERINCIA 6 - MEMRIAS 1. Efetuar a montagem e posterior gravao de uma memria RAM de 16 palavras de 4 bits = 64 bits (TTL 74189), utilizando um contador binrio para o endereamento das localidades de dados. DO -3 DI-3 Vcc AD-B AD-C AD-D DI-4 DO -4

16

15

14

13

12

11

10

74189 Memria RAM de 64 bits

1
AD-A DI-N

2
S

3
W

4
DI-1

5
DO -1

6
DI-2

7
DO -2

8
GND

Entradas de dados

DO -N Sadas de dados ADN Seleo de dados

S Entrada de controle W Controle de Leitura/Escrita

Modo de operao Escrita Leitura Inibio/Escrita Nada

Entradas S W 0 0 0 1 1 0 1 1

Sadas DO -N Complementa dados das entradas Complementa palavra armazenada Complementa dados das entradas Nvel 1

14
ent.A (ck) 7493 Contador Binrio ent.B Ro(1) Ro(2) Vcc QD QC QB QA

10
GND

11

12
Sadas para leds

16
Vcc

13

14

15

11

AD-D AD-C AD-B AD-A DO -4 DO -3 DO -2 DO -1 74189 Memria RAM de 64 bits DI-4 DI-3 DI-2 DI-1
S W

GND

12

10

Entradas com chaves

74

Como os dados lidos correspondem ao complemento dos dados armazenados, deve-se: - armazenar o complemento da informao ou; - colocar inversores nas sadas das memrias.

SEQNCIA DE OPERAO a) b) c) d) e) f) g) zerar o contador com R0(1) e R0(2) = 1 e retomar para zero; disponibilizar os dados nas entradas; trocar S de 1 para 0; armazenar dados nas entradas atravs de W passando de 1 para 0; retornar W de 0 para 1 para inibir nova escrita; enviar um pulso de clock para novo endereamento; repetir os procedimentos anteriores para cada conjunto de dados a serem armazenados; h) concluda a gravao, efetuar a leitura atravs de S =0 e W =1, usando o clock interno do equipamento.

75

2. Efetuar a montagem e posterior gravao de uma memria RAM de 1024 palavras de 4 bits = 4K (2114), utilizando um contador binrio para o endereamento das localidades de dados. Gravar nas entradas I/O: 0150, com endereamento 00000 11111. Aps, ler os dados gravados nas sadas I/O. Vcc A7 A8 A9 I/O1 I/O2 I/O3 I/O4
WE

18

17

16

15

14

13

12

11

10

2114 Memria RAM de 1024x4 = 4K

1
A6

2
A5

3
A4

4
A3

5
A0

6
A1

7
A2

8
CS

9
GND

AN Seleo de dados I/ON Entradas e Sadas de dados Modo de operao Escrita Leitura Tri-state Entradas CS WE 0 0 0 1 1 X

CS Entrada de controle WE Controle de Leitura/Escrita

14
ent.A (ck) 7493 Contador Binrio ent.B Ro(1) Ro(2) Vcc QD QC QB

10
GND

QA

11

12

18
Vcc

15
A9

16
A8

17
A7

1
A6

2
A5

3
A4

4
A3

7
A2

6
A1

5
A0

2114 Memria RAM de 4K


CS WE

I/O4

I/O3

I/O2

I/O1

GND

10

11

12

13

14

Entradas com chaves (Sadas para leds)

76

Seqncia de operao para gravao e posterior leitura a) zerar o contador com R0(1)=1 e R0(2)=1 e, aps, retomar ambos para zero; b) habilitar a memria com CS =0; c) gravar os dados: c.1 disponibilizar os dados nas entradas I/O; c.2 habilitar para escrita mudando WE =1 para WE =0; c.3 retornar de WE =0 para WE =1; c.4 aplicar um pulso de clock manual; d) repetir os procedimentos do item anterior para cada conjunto de dados a serem gravados; e) concluda a gravao, no desligue a alimentao, desconectar as entradas das chaves e ligar aos leds. Efetuar a leitura atravs de CS =0 e WE =1, usando o clock automtico interno do mdulo digital.

Vs

77

3. Efetuar a gravao de uma memria EPROM de 2Kx8=16K (2716), utilizando o gravador de EPROM da Macsym. Gravar os dados 0150, cuja seleo corresponde aos 32 primeiros endereos 000002 (0016) 111112 (2016). Posteriormente, efetuar a montagem utilizando um contador binrio para o endereamento das localidades de dados. Por ltimo, ler os dados gravados nas sadas nos leds do mdulo didtico ou em osciloscpio atravs de um conversor D/A. Vcc A8 A9 VPP
OE

A10

CE

D7

D6

D5

D4

D3

24

23

22

21

20

19

18

17

16

15

14

13

2716 Memria EPROM de 2Kx8 = 16K

1
A7

2
A6

3
A5

4
A4

5
A3

6
A2

7
A1

8
A0

9
D0

10
D1

11
D2

12
GND

A0-A7 Endereos CE Habilitao do ci OE Habilitao da sada

D0-D7 Sadas de dados VPP Tenso de programao +25V

Modo de operao Leitura


CE 0 1

Stand by
Programao Verifica programa Inibe programa

0 0

Entradas OE VPP 0 +5V X +5V 1 +25V 0 +25V 1 +25V

Sadas D0-D7 D Alto Z Q D Alto Z

4. Deseja-se obter uma senide digitalizada, a partir da expresso: f(x) = 255/2.(1+sen x). Monte uma tabela no editor Excel simulando valores entre 0 e 2. Com os resultados obtidos, copie-os num arquivo com extenso tex e, em seguida, utilize um arquivo (Txt2bin) para converter os dados em decimal para binrio. Por ltimo, os dados sero gravados na memria EPROM de 2Kx8=16K (2716), utilizando o gravador de EPROM da Macsym. Quantos endereos (em hexadecimal) so necessrios para gravar todos os dados da senide? Aps a gravao, efetuar a montagem utilizando um contador binrio para o endereamento das localidades de dados. Por ltimo, ler os dados gravados nas sadas em osciloscpio atravs de um conversor D/A. x = 2/255

78

7 MQUINAS DE ESTADOS As mquinas de estados, tambm designadas por mquinas seqenciais sncronas ou circuitos seqenciais sncronos, utilizam clulas de memria sncronas que definem, em qualquer instante, o estado do sistema. 7.1 MODELO GERAL Em qualquer circuito seqencial sncrono, identificvel: - uma unidade de memria, constituda por um nmero finito de clulas de memria que implementam a funo de memria do sistema; - um decodificador de sada, constitudo por um circuito combinacional responsvel pela implementao das sadas do sistema; - um decodificador de estado seguinte, tambm designado por decodificador de entrada, constitudo por um circuito combinacional que gera as entradas da unidade de memria.

Variveis do modelo geral Variveis de entrada Variveis de excitao = sadas do decodificador de estado seguinte = entradas das clulas de memria sncronas (estado seguinte) = f(Variveis de entrada, Variveis de estado) Variveis de estado = sadas das clulas de memria sncronas (estado presente) Variveis de sada = sadas do decodificador de sada Mquina de estados finitos Circuito seqencial sncrono, constitudo por um nmero finito de clulas de memria que reagem mesma vertente do sinal de relgio (CLK) comum a todas as clulas. Mquina de Mealy Variveis de sada = sadas do decodificador de sada = f(Variveis de entrada, Variveis de estado). O fato de existirem entradas que alimentam diretamente o decodificador de sada introduz um comportamento assncrono nas sadas. Mquina de Moore Variveis de sada = sadas do decodificador de sada = f(Variveis de estado). As variveis de sada dependem apenas das variveis de estado, pelo que a alterao de estado nas sadas encontra-se sincronizada com o sinal de relgio. Entradas adicionais assncronas Alguns circuitos tm uma ou mais entradas assncronas que, normalmente, efetuam a inicializao ou colocam o sistema num estado desejado.

79

7.2 ANLISE DE MQUINAS DE ESTADOS A partir do diagrama lgico, pretende-se obter uma descrio funcional do circuito, traduzida num diagrama de estados e, quando possvel, numa descrio verbal. Mtodo sistematizado de anlise a) Identificar os elementos do circuito de acordo com o modelo geral: decodificador de estado seguinte, unidade de memria, decodificador de sada, variveis de entrada, variveis de excitao, variveis de estado e variveis de sada. b) Determinar: as expresses das funes lgicas das variveis de excitao que dependem das variveis de entrada e das variveis de estado (funes de excitao); as expresses das funes lgicas das variveis de sada que dependem das variveis de estado e das variveis de entrada (funes de sada). c) Construir a tabela de estados, tambm designada por tabela de transio de estados. d) Construir, a partir da tabela de estados, o diagrama de estados. e) Determinar a descrio verbal para o comportamento funcional do circuito. a) Identificao dos elementos do circuito

b) Funes das variveis de excitao e de sada

c) Tabela de estados

d) Diagrama de estados

e) Descrio funcional

80

Tabela de transio de estados 1 Variveis de estado (estado presente) 2 Variveis de entrada 3 Variveis de excitao (funes de excitao) 4 Variveis de estado (estado seguinte) 5 Variveis de sada (funes de sada)

Elaborao da tabela de estados 1. Considerar todas as combinaes possveis dos valores binrios para as variveis de estado e variveis de entrada (coluna 1 e 2 da tabela). Sendo N o nmero de variveis de estado e de entrada, obtm-se 2N combinaes distintas destas variveis. 2. Com base nas funes lgicas (funes de excitao) das variveis de excitao, preencher a coluna 3 da tabela de estados. 3. Com base nos valores das variveis de excitao (coluna 3 = entradas dos flip-flops) e as tabelas funcionais ou as equaes caractersticas dos flip-flops, determinar o estado seguinte (coluna 4). 4. Com base nas funes lgicas (funes de sada) das variveis de sada, preencher a coluna 5 da tabela de estados. Note-se que o preenchimento o resultado da avaliao das funes para as combinaes de valores definidos na coluna 1 (estado presente) e 2 (variveis de entrada). Diagrama de estados O diagrama de estados uma grafo orientado, constitudos por ns, representativos dos estados, e por arcos orientados, representativos das transies entre estados. Constitui uma representao grfica dos estados e transies entre estados de um circuito seqencial sncrono. Permite uma melhor leitura/interpretao do comportamento funcional deste tipo de circuitos. A informao contida no diagrama de estados acompanhada de uma legenda, de modo a associar os elementos grficos com as variveis do circuito seqencial sncrono. Representao grfica dos estados Cada estado representado por um n (crculo), com a informao que lhe est associada. Num circuito seqencial sncrono com N variveis de estado, o diagrama de estados constitudo por 2N estados distintos (2N Ns). Neste tipo de mquina, as variveis de sada encontram-se associadas ao prprio estado, por serem funo apenas das variveis de estado. Estado = designao ou cdigo de estado (valores lgicos das variveis de estado) Sadas = valores das sadas Neste tipo de mquina, as variveis de sada encontram-se associadas s transies entre estados, por serem funo das variveis de estado e das variveis de entrada. Estado = designao ou cdigo de estado (valores lgicos das variveis de estado)

81

Representao grfica das transies entre estados As transies entre estados so representadas por um arco orientado entre o estado presente e o estado seguinte. De cada estado, partem 2P arcos orientados, representativos das transies possveis para P variveis de entrada.

Neste tipo de mquina, as variveis de entrada e de sada esto associadas s transies entre estados.

Neste tipo de mquina, apenas as variveis de entrada esto associadas s transies entre estados.

Exemplos de anlise de circuitos seqenciais sncronos EXEMPLO 1 Dado o diagrama lgico, determinar a tabela de estados, o diagrama de estados e uma possvel descrio verbal do funcionamento do circuito. Diagrama lgico

a) Identificao dos elementos do circuito Var. entrada: X Var. sada = Var. estado (sadas dos flip-flops): B, A Var. excitao (entradas dos flip-flops): DB,DA

82

uma Mquina de Moore dado que as sadas (B,A) so coincidentes com as variveis de estado. b) Funes das variveis de excitao

DB = B X + BAX + B AX DA= AX
c) Tabela de estados

Nota: A coluna correspondente ao estado seguinte pode ser eliminada j que, tratando-se de flip-flops do tipo D, o estado seguinte corresponde aos valores das variveis de excitao.
d) Diagrama de estados

Legenda

Estado: B A Transio entre estados: X

e) Descrio funcional

Quando X =1, o sistema segue a seqncia de estados: 00, 01, 10, 11. Quando X=0, o sistema mantm-se no mesmo estado. Ao considerar as sadas BA como um nmero binrio de dois bits, est-se perante um contador binrio crescente de dois bits, com a entrada X para desinibir/inibir a contagem.

83

EXEMPLO 2

Dado o diagrama lgico, determinar a tabela de estados, o diagrama de estados e uma possvel descrio verbal do funcionamento do circuito.
Diagrama lgico

a) Identificao dos elementos do circuito

Entrada assncrona: RESET Var. entrada: Y Var. sada: Z Var. estado (sadas dos flip-flops): A,B Var. excitao (entradas dos flip-flops): JA,KA,JB,KB uma mquina de Mealy dado que a sada (Z) depende das variveis de estado (A,B) e da varivel de entrada (Y).
b) Funes das variveis de excitao e de sada
JA = B.Y JB = A + Y Z = A .B.Y

KA = B + Y KB = Y

c) Tabela de estados

84

d) Diagrama de estados

Legenda Estado: A B Transio entre estados: Y/Z

e) Descrio funcional

A sada Z colocada a 1 sempre que, em quatro vertentes consecutivas do sinal de relgio, detectada a seqncia 1001 na entrada Y. A entrada RESET, quando ativa, coloca o sistema no estado 00. Exemplo: Var. entrada Y: 0001010010000101001001 Var. sada Z: 0000000010000000001001

7.3 SNTESE (PROJETO) DE MQUINAS DE ESTADOS

O procedimento para o projeto (sntese) de um circuito seqencial sncrono, a partir da descrio verbal do funcionamento do circuito, o procedimento inverso ao realizado no processo de anlise deste tipo de circuitos.
Mtodo sistematizado de sntese

a) Analisar as especificaes do circuito (descrio verbal), obtendo um primeiro diagrama de estados (representados por identificadores). b) Minimizar o nmero de estados, eliminando eventuais estados redundantes. Um estado redundante se existir outro estado equivalente no diagrama, isto , se existir outro estado que para as mesmas especificaes das entradas apresente o mesmo estado seguinte e as mesmas especificaes de sada. c) Proceder codificao de estados. Nesta fase determina-se, em primeiro lugar, o nmero de clulas da unidade de memria. Normalmente, considera-se o expoente da menor potncia de base 2 (2N) que seja maior ou igual ao nmero de estados do circuito. Refira-se que podem existir situaes em que um nmero maior de clulas de memria pode conduzir a um circuito globalmente mais simples. Em segundo lugar, necessrio atribuir um cdigo binrio a cada um dos estados (cdigo de estado). A atribuio dos cdigos de estado condiciona a complexidade da lgica combinacional envolvente (decodificador de estado seguinte e decodificador de sada). As regras a seguir enunciadas tendem a minimizar a complexidade destes circuitos.
85

Regras 1. Escolher para o estado inicial do circuito um cdigo binrio facilmente obtido atravs da inicializao assncrona do circuito (tudo a 0s ou 1s); 2. Tentar associar aos bits ou conjunto de bits do cdigo de estado um significado relacionado com as entradas ou sadas; 3. Minimizar o nmero de bits do cdigo de estado que mudam em cada transio entre estados. d) Construir a tabela de estados para flip-flops D. e) Determinar os mapas de Karnaugh para as variveis de excitao dos flip-flops D e para as variveis de sada. Obter, se necessrio, os mapas de karnaugh para as variveis de excitao dos flip-flops J-K, a partir dos mapas de karnaugh das variveis de excitao dos flip-flops D. Normalmente, a utilizao de flip-flops J-K conduz a circuitos de menor complexidade. Selecionar o tipo de flip-flops (D ou J-K) e obter as expresses simplificadas das funes de excitao e funes de sada. f) Desenhar o diagrama do circuito lgico.

a) Descrio verbal e Diagrama de blocos

b) Diagrama de estados Eliminao de estados redundantes

c) Codificao de estados

d) Tabela de estados

e) Mapas de Karnaugh e Funes lgicas minimizadas

f) Diagrama do circuito lgico

86

Exemplos de sntese de circuitos seqenciais sncronos EXEMPLO 1 Detector de uma seqncia de bits (Mquina de Moore) Especificao funcional: Projetar um circuito seqencial sncrono que detecte ocorrncia de um determinado padro de bits numa seqncia de valores de entrada. circuito constitudo pela entrada de dados, X, e produz uma nica sada Z que colocada a 1 quando nas ltimas trs vertentes do sinal de relgio detectada seqncia de bits 110. a) Diagrama de blocos

a O a

X Clk

Circuito Sncrono

b) Diagrama de estados Trata-se de uma mquina de Moore, j que a sada depende apenas do estado do sistema. De acordo com as especificaes, se nas ltimas trs vertentes do sinal de relgio tiver sido detectada a seqncia 110 a sada colocada a 1.

- Considera-se um estado inicial A, ao qual se associa o fato de nenhuma subseqncia de 110 ter sido detectada. Se X=0, o estado do sistema mantm-se. - Se X=1, o sistema transita para o estado B (detectada a seqncia 1). - Do estado B, se X=1, o sistema transita para o estado C (detectada a seqncia 11), se X=0, o sistema transita para o estado A (estado inicial). - Se o estado atual C (detectada a seqncia 11) e X=1 o sistema mantm-se no mesmo estado C (detectada a seqncia 11). Se X=0, o sistema transita para o estado D (detectada a seqncia 110) colocando a sada Z a 1. - Se o estado atual D (detectada a seqncia 110) a sada Z est a 1. Se X=0, o sistema transita para o estado A (estado inicial). Se X=1, o sistema transita para o estado B (detectada a seqncia 1).
Legenda Estado: Identificador/Sada Z Transio de estado: X

A incio B detectada a seqncia 1 C detectada a seqncia 11 D detectada a seqncia 110

c) Codificao de estados

Existem quatro estados distintos, A, B, C e D, sendo, por isso, necessrios 2 bits (2 clulas de memria Q1, Q0) para codificar cada um dos estados. Obs: A codificao de estados tem por base: - a atribuio do estado 00 ao estado inicial; - o bit Q0 (estado seguinte) coincide com a varivel de entrada X.
87

d) Tabela de estados

Tabela de estados para as variveis de excitao dos flip-flops D

e) Mapas de Karnaugh e funes minimizadas

f) Diagrama do circuito lgico

88

EXEMPLO 2 Detector de uma seqncia de bits (Mquina de Mealy) Especificao funcional: Projetar um circuito seqencial sncrono que detecte ocorrncia de um determinado padro de bits numa seqncia de valores de entrada. circuito constitudo pela entrada de dados, X, e produz uma nica sada Z que colocada a 1 quando nas ltimas trs vertentes do sinal de relgio detectada seqncia de bits 100 e a entrada X est a 1. a) Diagrama de blocos

a O a

X Clk

Circuito Sncrono

Entrada X: 10110100101110001001001110 Sada Z: 00000000100000000001001000


b) Diagrama de estados

Trata-se de uma mquina de Mealy, j que a sada depende do estado do sistema e da varivel de entrada X. De acordo com as especificaes, se nas ltimas trs vertentes do sinal de relgio tiver sido detectada a seqncia 100 e a entrada tiver o valor 1 a sada colocada a 1. , portanto, necessrio memorizar a ocorrncia do padro de bits 100. - Considera-se um estado inicial A, ao qual se associa o fato da seqncia 100 no ter sido detectada at ao momento. Se X=0, o estado do sistema mantm-se. - Se X=1, o sistema transita para o estado B (detectada a seqncia 1). - Do estado B, se X=1, o estado do sistema mantm-se, se X=0, o sistema transita para o estado C (detectada a seqncia 10). - Se o estado atual C (detectada a seqncia 10) e X=1, o sistema deve regressar ao estado B (detectada a seqncia 1). Se X=0, o sistema deve transitar para um novo estado D (detectada seqncia 100). - Se o estado atual D (detectada a seqncia 100) e X=1, a sada Z colocada a 1 e o sistema transita para o estado B (detectada a seqncia 1). Se X=0, o sistema transita para o estado A, pois no foi detectada a seqncia 100.

Legenda Estado: Identificador Transio de estado: X/Z

89

c) Codificao de estados

Existem quatro estados distintos, A, B, C e D, sendo por isso, necessrios 2 bits (2 clulas de memria Q1, Q0) para codificar cada um dos estados. Dentre as vrias hipteses de codificao, utiliza-se neste exemplo o seguinte sistema de codificao: Estado A B C D Cdigo de estado Q1 Q0 0 0 0 1 1 0 1 1

d) Tabela de estados

Tabela de estados para as variveis de excitao dos flip-flops JK

e) Mapas de Karnaugh e funes minimizadas

90

f) Diagrama do circuito lgico

91

REFERNCIAS
BIGNELL, J. W. e DONOVAN, R. L. Eletrnica digital. Volumes 1 e 2, So Paulo: Makron Books, 1995 BONATTI, Ivanil e MADUREIRA, Marcos. Introduo anlise e sntese de circuitos lgicos. Campinas: Editora da UNICAMP, 1990. BRAGA, Newton C. Curso de eletrnica digital. So Paulo: Saber Eletrnica Especial n. 8, 2002. CAPUANO, Francisco G. Exerccios de eletrnica digital. So Paulo: rica, 2008. DATAPOOL. Mdulo 8410: teoria e prtica. Itajub: Datapool Eletrnica. ERCEGOVA, Milos et alii. Introduo aos sistemas digitais. Porto Alegre: Bookman, 2002. FRANCISCO, Francisco Ferreira. Circuitos seqenciais sncronos. Disponvel em: <http://www.estv.ipv.pt/paginaspessoais/ffrancisco/sd/sumarios.htm>. Acesso em: 04 nov. 2005. IDOETA, I.V. e CAPUANO, F.G. Elementos de eletrnica digital. So Paulo: rica, 1987. MALVINO, A. P. e LEACH, D. P. Eletrnica digital: princpios e aplicaes. Volumes 1 e 2, So Paulo: McGraw-Hill, 1987. MELO, Mairton de Oliveira. Eletrnica digital. So Paulo: Makron Books, 1994. MENDONA, Alexandre e ZELENOVSKY, Ricardo. Eletrnica digital: curso prtico e exerccios. Rio de Janeiro: MZ Editora, 2004. SZAJNBERG, Mordka. Eletrnica digital. Rio de Janeiro: Livros Tcnicos e Cientficos Ltda, 1988. TOCCI, Ronald J. e WIDMER, Neal S. Sistemas digitais: princpios e aplicaes. So Paulo: Pearson Prentice Hall, 2007.

92