A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Máquinas de Estados Finitos (cont)

Apresentações semelhantes


Apresentação em tema: "Máquinas de Estados Finitos (cont)"— Transcrição da apresentação:

1 Máquinas de Estados Finitos (cont)
ANTONIO AUGUSTO LISBOA DE SOUZA

2 Plano da aula Tipos de FSMs: Modelo de Moore Modelo de Mealy Diagrama de estados de uma FSM tipo Moore Implementação de FSM tipo Moore

3 Revisão

4 Tipos de Máquinas de Estado
Modelo de Moore: Saídas dependentes (apenas) do estado dos FFs!!!

5 Tipos de Máquinas de Estado
Modelo de Mealy: Saídas dependentes do estado dos FFs e das entradas!!!

6 Modelo de Moore Saídas dependentes (apenas) do estado dos FFs!!!
Vocês conhecem algum circuito assim?

7 Modelo de Moore Condição de transição A/0 B/0 Diagrama de estados:
X W A/0 R B/0 Diagrama de estados: Y V S T Valor da saída Estado (A, B, C) C/1

8 Modelo de Moore A B C 1 Tabela de estados: A/0 B/0 C/1 Estado atual
X Estado atual Próximo estado (X=0) Próximo estado (X=1) Saída Z A B C 1 A/0 X B/0 X X X X C/1

9 Modelo de Moore Exemplo: =X Z=A0A1A2 X X X 001/0 010/0 011/0 100/0
Diagrama de estados: X X X X X X X X X X 000/0 111/1 110/0 101/0 X X X

10 Modelo de Moore Exemplo: =X Z=A0A1A2 Tabela de estados: EA PE(X=0)
000 001 111 010 011 100 101 110 1 Tabela de estados:

11 Diagrama de estados Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore

12 Diagrama de estados Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset 1

13 Diagrama de estados S0/0 1 S1/0 S2/0 1 1
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” 1 S1/0 S2/0 1 1

14 Diagrama de estados S0/0 1 S1/0 S2/0 1 1 S3/0 S4/0
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” S3 = “10” , S4 = “01” 1 S1/0 S2/0 1 1 S3/0 S4/0

15 Diagrama de estados S0/0 1 S1/0 S2/0 1 1 S3/0 S4/0 S5/0 S6/1
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” S3 = “10” , S4 = “01” S5 = “100”, S6 = “010” 1 S1/0 S2/0 1 1 S3/0 S4/0 S5/0 S6/1

16 Diagrama de estados S0/0 1 S1/0 S2/0 1 1 S3/0 S4/0 S5/0 S6/1 1 S7/1
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” S3 = “10” , S4 = “01” S5 = “100”, S6 = “010” S7 = “1001” 1 S1/0 S2/0 1 1 S3/0 S4/0 S5/0 S6/1 1 S7/1

17 Diagrama de estados S0/0 1 S1/0 S2/0 1 1 1 1 S3/0 S4/0 S5/0 S6/1 1
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” S3 = “10” , S4 = “01” S5 = “100”, S6 = “010” S7 = “1001” 1 S1/0 S2/0 1 1 1 1 S3/0 S4/0 S5/0 S6/1 1 S7/1

18 Diagrama de estados S0/0 1 S1/0 S2/0 1 1 1 1 S3/0 S4/0 1 S5/0 S6/1 1
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” S3 = “10” , S4 = “01” S5 = “100”, S6 = “010” S7 = “1001” 1 S1/0 S2/0 1 1 1 1 S3/0 S4/0 1 S5/0 S6/1 1 S7/1

19 Diagrama de estados S0/0 1 S1/0 S2/0 1 1 1 1 S3/0 S4/0 1 S5/0 S6/1 1 1
Exemplo: Defina o diagrama de estados de um circuito que detecte tanto a sequência “010” quanto a sequência “1001”. O circuito deve fornecer uma saída em 1 quando o último 0 da sequência “010” for detectado, ou quando o último 1 da sequência “1001” for detectado. Atenção às sequências sobrepostas. Lembre-se de incluir o estado após o reset. Utilizar o Modelo de Moore. S0/0 S0 = Reset S1 = “1” , S2 = “0” S3 = “10” , S4 = “01” S5 = “100”, S6 = “010” S7 = “1001” 1 S1/0 S2/0 1 1 1 1 S3/0 S4/0 1 S5/0 S6/1 1 1 S7/1

20 Implementação Sim, mas ... Cadê o circuito????????

21 Implementação X 010101... CLK X=01001011... Z= 00010010
Exemplo: Projete um circuito que detecte a sequência “010” em uma entrada serial X. O circuito deve fornecer uma saída Z em 1 apenas quando o último 0 da sequência “010” for detectado. Utilizar o Modelo de Moore. Detector de 010 X CLK X= Z=

22 A metodologia parece familiar?
Implementação Passo 1: Estabelecer o diagrama e a tabela de estados Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico A metodologia parece familiar?

23 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

24 Implementação Diagrama de estados: 1 Tabela de estados: X 010101... 1
Exemplo: Projete um circuito que detecte a sequência “010” em uma entrada serial X. O circuito deve fornecer uma saída Z em 1 apenas quando o último 0 da sequência “010” for detectado. Utilizar o Modelo de Moore. Diagrama de estados: Detector de 010 SR/0 1 Tabela de estados: X EA PE(X=0) PE(X=1) Z SR S0 S10 S010 1 S0/0 1 1 S10/0 CLK X= Z= 1 S010/1

25 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

26 4 estados! Adotemos 2 FFs do tipo D
Implementação Exemplo: Projete um circuito que detecte a sequência “010” em uma entrada serial X. O circuito deve fornecer uma saída Z em 1 apenas quando o último 0 da sequência “010” for detectado. Utilizar o Modelo de Moore. Diagrama de estados: Detector de 010 SR/0 1 Tabela de estados: X EA PE(X=0) PE(X=1) Z SR S0 S10 S010 1 S0/0 1 1 S10/0 CLK X= Z= 1 S010/1 4 estados! Adotemos 2 FFs do tipo D

27 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

28 Como usaremos 2FFs (A e B), podemos fazer a seguinte associação:
Implementação Tabela de estados: Como usaremos 2FFs (A e B), podemos fazer a seguinte associação: S0 = (AB==00) S1 = (AB==01) S2 = (AB==10) S3 = (AB==11) EA PE(X=0) PE(X=1) Z SR S0 S10 S010 1 EA+X A B X PE A B Z 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 1 1 1 0 1 1 1 0 1 1 1 1

29 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

30 Tabela de excitação do FF D
Implementação Tabela de excitação do FF D QnQn+1 D 00 01 1 10 11 D=Qn+1

31 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs, e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

32 = + Implementação QnQn+1 D 00 01 1 10 11 D=Qn+1 EA+X A B X PE A B
Z 0 0 0 0 1 0 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 1 1 1 0 1 1 1 0 1 1 1 1 A B X DA DB Z 0 0 0 0 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 1 1 1 0 1 0 0 1 1 0 1 1 1 1 QnQn+1 D 00 01 1 10 11 = + D=Qn+1

33 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

34 Implementação 1 1 1 DA=BX+A B X DB=X Z=AB BX A BX A BX A A B X DA DB Z
1 DA=BX+A B X A B X DA DB Z 0 0 0 0 0 1 0 1 0 0 1 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 1 BX A 1 DB=X BX A 1 Z=AB

35 Implementação Passo 1: Estabelecer o diagrama e a tabela de estados
Passo 2: Definir número e tipo de FFs Passo 3: Estabelecer um diagrama de Transições “EN  EN+1” para cada FF Passo 4: Estabelecer a Tabela de Excitação do FF Passo 5: Para cada Estado, definir as expressões das entradas dos FFs e das saídas Passo 6: Simplificar as expressões Passo 7: Implementar o Diagrama Elétrico

36 Implementação DA=BX+A B X DB=X Z=AB
Teria outro jeito de implementar a funcionalidade requerida? (poderíamos usar um registrador de deslocamento?)


Carregar ppt "Máquinas de Estados Finitos (cont)"

Apresentações semelhantes


Anúncios Google