Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para...

24
Máquinas de Estado Eletrônica Digital

Transcript of Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para...

Page 1: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Máquinas de Estado

Eletrônica Digital

Page 2: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito sequencial consiste de um circuito combinacional e uma rede de memória formada por elementos de armazenamento (usualmente flip-flops). a rede de memória define o estado atual da máquina de estados. o circuito sequencial difere de um circuito combinacional puro na medida em que o próximo estado será definido não só a partir das entradas atuais, como também do estado atual, aumentando enormemente as possibilidades de projeto.

Page 3: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Tipos de Implementações Máquinas de Estados podem ser dos tipos seguintes:

Máquina de Moore: a saída muda apenas na transição do relógio

Máquina de Mealy: a saída pode mudar a qualquer instante em função da entrada

Page 4: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Tipos de Implementações O comportamento das máquinas de Moore e Mealy é idêntico, mas suas implementações diferem, como mostrado a seguir.

Máquina de Moore: somente os sinais de entrada causadores da transição de um estado para outro são representados nos arcos do grado

Máquina de Mealy: nos arcos do grafo são representados os sinais de entrada causadores da transição de um estado para outro, com os respectivos valores para a saída

Page 5: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Etapas de Projeto de Circuitos Sequenciais

1º passo: elaborar diagrama de estados que interprete fielmente o problema que se deseja resolver;2º passo: opcionalmente pode-se minimizar o número de estados no diagrama de estados;3º passo: escrever a tabela de estados, com os estados atuais, próximos estados e saídas;4º passo: atribuir a cada estado uma combinação de variáveis de estado (flip-flops);5º passo: construir a tabela de excitação do tipo de flip-flop utilizado;

Page 6: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

6º passo: montar o mapa de Karnaugh para cada uma das entradas dos flip-flops do circuito, com o auxílio da tabela de excitação;7º passo: obter a equação final de cada entrada para cada um dos flip-flops do circuito a partir da simplificação do mapa de Karnaugh;8º passo: fazer o mesmo procedimento para as equações das variáveis de saída;9º passo: finalmente, elaboração do diagrama lógico do circuito, lembrando que todos os elementos de memória (flipflops) recebem o mesmo sinal de relógio.

Etapas de Projeto de Circuitos Sequenciais

Page 7: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de MensagemO começo de uma mensagem em um sistema de comunicação é indicado pela ocorrência de três ‘1’ consecutivos em uma linha x.

Projete um circuito que forneça em sua saída o valor ‘1’ apenas durante o período de relógio coincidente com o terceiro ‘1’ consecutivo na linha x.

Supor que um mecanismo externo inicializa o detector no estado de “reset” após o término da mensagem.

Page 8: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem1º passo: elaborar diagrama de estados que interprete fielmente o problema que se deseja resolver

Identificação dos Estados:

1) Não recebeu nenhum 1, q0;

2) Recebeu o primeiro 1, q1;

3) Recebeu o segundo 1, q2;

4) Recebeu o terceiro 1, q3;

5) Recebeu 0 após receber 1 ou 2 uns, q4.

Page 9: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem

Construção de Diagrama de Estados usando Máquina de Mealy

Page 10: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem3º passo: escrever a tabela de estados, com os estados atuais, próximos estados e saídas

Page 11: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem4º passo: atribuir a cada estado uma combinação de variáveis de estado (flip-flops)

Page 12: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem4º passo: atribuir a cada estado uma combinação de variáveis de estado (flip-flops)

Page 13: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem5º passo: construir a tabela de excitação do tipo de flip-flop utilizado

qt (y1y0)txt 0 1

0 1 J1 K1 J0 K0 J1 K1 J0 K0q0 00 00 11 0 X 0 X 1 X 1 Xq1 11 00 01 X 1 X 1 X 1 X 0q2 01 00 10 0 X X 1 1 X X 1q3 10 10 10 X 0 0 X X 0 0 X

Page 14: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem6º passo: montar o mapa de Karnaugh para cada uma das entradas dos flip-flops do circuito, com o auxílio da tabela de excitação

qt (y1y0)txt 0 1

0 1 J1 K1 J0 K0 J1 K1 J0 K0q0 00 00 11 0 X 0 X 1 X 1 Xq1 11 00 01 X 1 X 1 X 1 X 0q2 01 00 10 0 X X 1 1 X X 1q3 10 10 10 X 0 0 X X 0 0 X

7º passo: obter a equação final de cada entrada para cada um dos flip-flops do circuito a partir da simplificação do mapa de Karnaugh

Page 15: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem

qt (y1y0)txt 0 1

0 1 J1 K1 J0 K0 J1 K1 J0 K0q0 00 00 11 0 X 0 X 1 X 1 Xq1 11 00 01 X 1 X 1 X 1 X 0q2 01 00 10 0 X X 1 1 X X 1q3 10 10 10 X 0 0 X X 0 0 X

6º passo: montar o mapa de Karnaugh para cada uma das entradas dos flip-flops do circuito, com o auxílio da tabela de excitação

7º passo: obter a equação final de cada entrada para cada um dos flip-flops do circuito a partir da simplificação do mapa de Karnaugh

Page 16: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem8º passo: fazer o mesmo procedimento para as equações das variáveis de saída

Page 17: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Começo de Mensagem9º passo: finalmente, elaboração do diagrama lógico do circuito, lembrando que todos os elementos de memória (flip-flops) recebem o mesmo sinal de relógio

01

10

10

01

1

yyxZ

yxK

yxJ

yK

xJ

y

y

y

y

Page 18: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Considerações Importantes

Page 19: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Paridade Obter o diagrama de estados de um circuito que detecte a paridade de um sinal serial. Considere paridade ímpar e máquina de Moore.

Identificação dos Estados

• Número de 1s acumulados é par, q0;

• Número de 1s acumulados é ímpar, q1. S0/0 S1/10 0

1

1

Máquina de Moore

Page 20: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Paridade Prossiga com o projeto!

S0/0 S1/10 0

1

1

Page 21: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Divisível por 3 Obter o diagrama de estados de um circuito que indique se o número de 1s recebidos é divisível por 3 (considerar zero divisível por 3).

Exemplo:Máquina de Moore

Máquina de Mealy

S0 S10/1 0/0

1/0

1/0S2

1/1

0/0

S0/1 S1/00 0

1

1S2/0

1

0

Identificação dos Estados1) Divisível por 3, S0;2) Divisível por 3 + 1, S1;3) Divisível por 3 + 2, S2.

Page 22: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Paridade Prossiga com o projeto considerando primeiramente a Máquina de Moore e depois a Máquina de Mealy.

Máquina de Moore

Máquina de Mealy

S0 S10/1 0/0

1/0

1/0S2

1/1

0/0

S0/1 S1/00 0

1

1S2/0

1

0

Page 23: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Indicação de Números de Zeros Obter o diagrama de estados de um circuito que indique se o número de zeros recebidos é par, maior que zero, e desde que NUNCA ocorram dois 1s consecutivos.

Identificação dos Estados1) Não recebeu nada, S0;2) Em S0, recebeu 1, S1;3) Em S0, recebeu 0 (ímpar), S2;4) Em S2, recebeu 0 (par), S3;5) Em S3, recebeu 1, S4;6) Em S3, recebeu 0 (ímpar), S2;7) Em S2, recebeu 1, S5;8) Em S1, recebeu 0 (ímpar), S2;9) Em S1, recebeu 1, S6;10) Em S4, recebeu 0 (ímpar), S2;11) Em S4, recebeu 1 (dois 1s consecutivos), S6;12) Em S5, recebeu 0 (ímpar), S2;13) Em S5, recebeu 1 (dois 1s consecutivos), S6;14) Em S6, recebeu X, S6.

Prossiga com o projeto!

Page 24: Máquinas de Estado Eletrônica Digital. Introdução Máquinas de Estados são usadas para representar o funcionamento de circuitos sequenciais. um circuito.

Detector de Sequência 0010 Obter o diagrama de estados de um circuito que detecte todas as sequências 0010. Se ocorrer mais do que dois zeros consecutivos a máquina deve ser reiniciada após a ocorrência de um 1.

Exemplo:

Faça o projeto!