FACULDADE SANTO AGOSTINHO - FSA ENGENHARIA ELTRICA Tpicos Procedimento de projeto de circuitos sequenciais Projeto com FFs tipo D Projeto com FFs tipo JK Procedimento de projeto de sistemas sequenciais Critrios para Escolha dos FFs Tarefa de casa Procedimentos de Projeto A partir da especificao, obter o diagrama de estados (modelo de Moore ou Mealy) Atribuir cdigos binrios a cada estado do diagrama Obter a tabela de estados Escolher o tipo de flip-flop ser a utilizado Obter as equaes de entrada de cada flip-flop Obter as equaes das sadas Desenhar o circuito A sntese de redes sequencias pode ser obtida seguindo-se uma srie bem determinada de passos:
O primeiro passo consiste em elaborar um diagrama de estados, que seja uma interpretao fiel do problema original;
Opcionalmente pode-se minimizar o nmero de estados no diagrama de estados;
Escrever a tabela de estados, com os estados atuais, prximos estados e sadas.
Atribuir a cada estado uma combinao de variveis de estado (flip- flops);
Contruir a tabela de excitao do tipo de f lip-flop utilizado; Sntese de Redes Sequenciais A sntese de redes seqencias pode ser obtida seguindo-se uma srie bem determinada de passos:
Montar o mapa de Karnaugh para cada uma das entradas dos flip- flops do circuito, com o auxlo da tabela de excitao;
Obter a equao fina de cada entrada de cada um dos flip-flops do circuito a partir da simplificao do mapa de Karnaugh;
Fazer o mesmo procedimento para as equaes das variveis de sada.
Finalmente, elaborao do diagrama lgico do circuito, lembrando que todos os elementos de memria (flip-flops) recebem o mesmo sinal de relgio. Sntese de Redes Sequenciais Projeto com Flip-flops D Pretende-se obter o circuito correspondente ao seguinte diagrama de estados. Vai-se projetar o circuito utilizando flip-flops D.
Entrada: X Sada: Y N de estados: 4 N de flip-flops: 2 Modelo: Mealy Projeto com Flip-flops D CIRCUITO COMBINACIONAL CIRCUITO COMBINACIONAL Como ser a tabela de transio de estados ? Maquina de Mealy Projeto com Flip-flops D Tabela de estados A B 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 X 0 1 0 1 0 1 0 1 A ' B ' 0 0 0 1 1 0 0 1 1 0 1 1 1 1 0 0 Y 0 1 0 0 0 1 0 0 Estado atual Prximo estado Entrada Sada Projeto com Flip-flops D A B 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 X 0 1 0 1 0 1 0 1 A' B' 0 0 0 1 1 0 0 1 1 0 1 1 1 1 0 0 Y 0 1 0 0 0 1 0 0 Estado actual Prximo estado Entrada Sada Equaes Projeto com Flip-flops D Circuito Como seria o projeto para FF JK ? Projeto com Flip-flops JK Projeto com flip-flops JK
Quando se projeta circuitos com flip-flops D, as equaes de entrada dos flip-flops so obtidas diretamente a partir do prximo estado.
Com flip-flops JK, ser necessrio derivar equaes para as entradas J e K de cada flip-flop. Isso poder ser realizado com base nas tabelas verdade dos flip-flops. Exemplos de como projetar usando flip-flops JK ? Exemplo FF JK Detector de sequncias Pretende-se projetar um circuito sequncial com uma entrada srie, designada X, em que entram bits ao mesmo ritmo do sinal de relgio. A sada do circuito dever ser 1 quando apresentado o valor 0 entrada durante 3 ou mais impulsos de relgio consecutivos. Nos demais casos, a sada dever ser 0. O projeto dever seguir o modelo de Moore. Quantos estados so necessrios ? O suficiente para contar a ocorrncia de 3 ou mais zeros ! FF A J K Exemplo FF JK FF B J K CIRCUITO COMBINACIONAL CIRCUITO COMBINACIONAL Como ser o diagrama de estados ? Exemplo FF JK Diagrama de estados Codificao dos estados: 0 00 1 01 2 10 3 11 4 estados 2 Flip-flops 0 / 0 1 / 0 1 0 1 2 / 0 0 3 / 1 0 0 1 1 Como seria a tabela de transies correspondente ? Exemplo FF JK Tabela de transies de estados Estado atual Prximo estado A
B
X A B 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 1 1 1 1 1 0 0 Mas... Para realizar essas transies, quais devem ser as entradas J e K ? Exemplo FF JK Estado Anterior
Prximo Estado
J K 0 0 0 X 0 1 1 X 1 0 X 1 1 1 X 0 Assim, podemos unir essa informao tabela de transio ! Exemplo FF JK Projeto com flip-flops JK Estado atual Prximo estado A
B
X A B J A K A J B K B
0 0 0 0 1 0 x 1 x 0 0 1 0 0 0 x 0 x 0 1 0 1 0 1 x x 1 0 1 1 0 0 0 x x 1 1 0 0 1 1 x 0 1 x 1 0 1 0 0 x 1 0 x 1 1 0 1 1 x 0 x 0 1 1 1 0 0 x 1 x 1 So 2 expresses lgicas para cada FF JK ! Exemplo FF JK Equaes de entrada nos flip-flops 0 0 1 0 x x x x 00 01 11 10 0 1 AB X J A x x x x 0 1 0 1 00 01 11 10 0 1 AB X K A 1 0 x x x x 1 0 00 01 11 10 0 1 AB X J B x x 1 1 0 1 x x 00 01 11 10 0 1 AB X K B X B J A X K A X J B A X K B
Mas, e a sada do circuito ? Exemplo FF JK Equao da sada Como a mquina projetada segue o modelo de Moore, a equao da sada depende apenas do estado. Estado actual Sada A
B
Y 0 0 0 0 1 0 1 0 0 1 1 1 0 / 0 1 / 0 1 0 1 2 / 0 0 3 / 1 0 0 1 1 0 00 1 01 2 10 3 11 Exemplo FF JK Equao da sada Como a mquina projetada segue o modelo de Moore, a equao da sada depende apenas do estado. Estado actual Sada A
B
Y 0 0 0 0 1 0 1 0 0 1 1 1 Y = A.B Exemplo FF JK Circuito resultante X B J A X K A X J B AB Y A X K B
FF A J K FF B J K Y X CLK Mais um exemplo... Voltando ao FF D... Exemplo FF D Divisor de frequncia Pretende-se projetar um circuito sequencial com duas entradas, designadas por S 1 e S 0 , segundo o modelo de Moore. Conforme os valores de S 1 S 0 apresentados na entrada, a sada dever seguir uma das seguintes sequncias binrias: Entradas 00 Sequncia 10101010 Entradas 01 Sequncia 100100100 Entradas 10 Sequncia 11001100 Entradas 11 No especificado. Na prtica, e considerando-se as formas de onda da sada, este circuito comporta-se como um divisor da freqncia de relgio. Diagrama de transio de estados Entradas: S 1 e S 0
Sada: Y Variveis de estado: Q 1 e Q 0 Entradas 00 Sequncia 10101010 Entradas 01 Sequncia 100100100 Entradas 10 Sequncia 11001100 Entradas 11 No especificado A/B A- Estado B - Sada Entrada 00 / 1 01 / 0 10 / 0 11 / 1 10 10 00 , 10 00 , 01 00 , 01 00 , 01 01 10 Quantos bits so necessrios para representar os estados dessa mquina de estados ? Tabela de Estados Estado Actual Entradas Prximo Estado Q 1 Q 0 S 1 S 0 Q 1 Q 0
0 0 1 0 1 1 0 0 1 1 0 1 1 0 1 1 S Q Q Q Q S S Q Q S Q Q S Q Q D
1 0 1 1 0 0 1 0 S Q Q S Q Q Q D 0 0 0 1 X 1 X 0 0 0 0 0 X 1 X 0 00 01 11 10 00 01 11 10 Q 1 Q 0 S 1 S 0 D 1 1 1 0 0 X 1 X 0 1 1 0 0 X 0 X 1 00 01 11 10 00 01 11 10 Q 1 Q 0 S 1 S 0 D 0 Exemplo FF D Equao da sada Estado actual Sada Q 1 Q 0 Y 0 0 1 0 1 0 1 0 0 1 1 1 Exemplo FF D Circuito resultante
0 0 1 0 1 1 1 S Q Q Q Q S D 1 0 1 1 0 0 1 0 S Q Q S Q Q Q D 0 1 Q Q Y D 1 CP D 0 CP Q 1 Q 0 S 1 S 0 CLK Y O que aconteceria se o circuito usasse FF JK ? Estado Actual Entradas Prximo Estado Q 1 Q 0 S 1 S 0 Q 1 Q 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 1 0 1 1 0 0 1 1 X X 0 1 0 0 0 0 0 1 0 1 1 0 0 1 1 0 0 0 0 1 1 1 X X 1 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 X X 1 1 0 0 0 1 1 1 0 1 0 1 1 1 1 0 1 0 1 1 1 1 X X
J K 0 X 0 X 1 X X X 0 X 1 X 0 X X X X 1 X 1 X 1 X X X 1 X 1 X 0 X X
J K 1 X 1 X 1 X X X X 1 X 1 X 1 X X 0 X 0 X 1 X X X X 0 X 0 X 1 X X 1 1 0 0
Tabela de Estados FF JK Tabela de Estados FF D Estado Actual Entradas Prximo Estado Q 1 Q 0 S 1 S 0 Q 1 Q 0
Qual concluso se pode tirar ? Critrios para Escolha dos FFs No caso de FFs JK, a existncia de dont care, como regra geral, facilita a obteno de equaes mais simplificadas em relao quelas obtidas para FFs D.
No caso de FFs D, estes exigem metade das conexes entre a lgica combinacional e sua entrada em relao ao que seria exigido com as duas entradas dos FFs JK.
Portanto, as vantagens relativas destes dois FFs precisam ser pesadas em cada situao particular, em termos de uma otimizao global do circuito.
Exerccio: (MEALY x MOORE) ???? ???? ???? Bibliografia Bsica Tocci, R. J., Widmer, N. S., Moss, G. L.; Sistemas Digitais - Princpios e Aplicaes - 10 Ed, Editora Pearson, 2007.
Baptista, Carlos Pedro; Fundamental dos Sistemas Digitais 4 Ed, FCA Editora de Informtica Lda. 218p. ISBN 978-972-722-272-8
Notas de Aula, Prof Dr. Paulo Praa. Universidade Federal do Cear.