Você está na página 1de 22

Mquinas de Estado

Sistemas Digitais

Introduo
Mquinas de Estados so usadas para representar o funcionamento de circuitos sequenciais um circuito sequencial consiste de um circuito combinacional e uma rede de memria formada por elementos de armazenamento (usualmente flip-flops) a rede de memria define o estado atual da mquina de estados o circuito sequencial difere de um circuito combinacional puro na medida em que o prximo estado ser definido no s a partir das entradas atuais, como tambm do estado atual, aumentando enormemente as possibilidades de projeto

Tipos de Implementaes
Mquinas de Estados podem ser dos tipos seguintes:
Mquina de Moore: a sada muda apenas na transio do relgio

Mquina de Mealy: a sada pode mudar a qualquer instante em funo da entrada

Tipos de Implementaes
O comportamento das mquinas de Moore e Mealy idntico, mas suas implementaes diferem, como mostrado a seguir.
Mquina de Moore: somente os sinais de entrada causadores da transio de um estado para outro so representados nos arcos do grado

Mquina de Mealy: nos arcos do grafo so representados os sinais de entrada causadores da transio de um estado para outro, com os respectivos valores para a sada

Projeto de Mquinas de Estados


1 passo: elaborar diagrama de estados que interprete fielmente o problema que se deseja resolver 2 passo: opcionalmente pode-se minimizar o nmero de estados no diagrama de estados 3 passo: escrever a tabela de estados, com os estados atuais, prximos estados e sadas 4 passo: atribuir a cada estado uma combinao de variveis de estado (flip-flops) 5 passo: construir a tabela de excitao do tipo de flip-flop utilizado 6 passo: montar o mapa de Karnaugh para cada uma das entradas dos flip-flops do circuito, com o auxlio da tabela de excitao 7 passo: obter a equao final de cada entrada para cada um dos flip-flops do circuito a partir da simplificao do mapa de Karnaugh 8 passo: fazer o mesmo procedimento para as equaes das variveis de sada 9 passo: finalmente, elaborao do diagrama lgico do circuito, lembrando que todos os elementos de memria (flipflops) recebem o mesmo sinal de relgio

Detector de Comeo de Mensagem


O comeo de uma mensagem em um sistema de comunicao indicado pela ocorrncia de trs 1 consecutivos em uma linha x. Projete um circuito que fornea em sua sada o valor 1 apenas durante o perodo de relgio coincidente com o terceiro 1 consecutivo na linha x. Supor que um mecanismo externo inicializa o detector, aps o trmino da mensagem, no estado de reset.

Detector de Comeo de Mensagem


1 passo: elaborar diagrama de estados que interprete fielmente o problema que se deseja resolver
Mquina de Mealy 2 passo: opcionalmente pode-se minimizar o nmero de estados no diagrama de estados

Detector de Comeo de Mensagem


3 passo: escrever a tabela de estados, com os estados atuais, prximos estados e sadas

Detector de Comeo de Mensagem


4 passo: atribuir a cada estado uma combinao de variveis de estado (flip-flops)

Detector de Comeo de Mensagem


4 passo: atribuir a cada estado uma combinao de variveis de estado (flip-flops)

Detector de Comeo de Mensagem


5 passo: construir a tabela de excitao do tipo de flip-flop utilizado

xt qt (y1y0)t q0 00 q1 11 q2 01 q3 10 0 00 00 00 10 1 11 01 10 10 J1 0 X 0 X

0 K1 J0 X 0 1 X X X 0 0

K0 X 1 1 X

J1 1 X 1 X

1 K1 J0 X 1 1 X X X 0 0

K0 X 0 1 X

Detector de Comeo de Mensagem


6 passo: montar o mapa de Karnaugh para cada uma das entradas dos flipflops do circuito, com o auxlio da tabela de excitao 7 passo: obter a equao final de cada entrada para cada um dos flip-flops do circuito a partir da simplificao do mapa de Karnaugh

xt qt (y1y0)t q0 00 q1 11 q2 01 q3 10 0 00 00 00 10 1 11 01 10 10 J1 0 X 0 X

0 K1 J0 X 0 1 X X X 0 0

K0 X 1 1 X

J1 1 X 1 X

1 K1 J0 X 1 1 X X X 0 0

K0 X 0 1 X

Detector de Comeo de Mensagem


6 passo: montar o mapa de Karnaugh para cada uma das entradas dos flipflops do circuito, com o auxlio da tabela de excitao 7 passo: obter a equao final de cada entrada para cada um dos flip-flops do circuito a partir da simplificao do mapa de Karnaugh xt 0 K1 J0 X 0 1 X X X 0 0 1 K1 J0 X 1 1 X X X 0 0

qt (y1y0)t q0 00 q1 11 q2 01 q3 10

0 00 00 00 10

1 11 01 10 10

J1 0 X 0 X

K0 X 1 1 X

J1 1 X 1 X

K0 X 0 1 X

Detector de Comeo de Mensagem


8 passo: fazer o mesmo procedimento para as equaes das variveis de sada

Detector de Comeo de Mensagem


9 passo: finalmente, elaborao do diagrama lgico do circuito, lembrando que todos os elementos de memria (flipflops) recebem o mesmo sinal de relgio

Consideraes Importantes

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

Divisvel por 3
Obter o diagrama de estados de um circuito que indique se o nmero de 1s recebidos divisvel por 3 (considerar zero divisvel por 3). Exemplo:

Mquina de Moore

Mquina de Mealy

Indicao de Nmeros de Zeros


Obter o diagrama de estados de um circuito que indique se o nmero de zeros recebidos par, maior que zero, e desde que NUNCA ocorram dois 1s consecutivos. Mquina de Moore

Detector de Sequncia 0010


Obter o diagrama de estados de um circuito que detecte todas as sequncias 0010. Se ocorrer mais do que dois zeros consecutivos a mquina deve ser reiniciada aps a ocorrncia de um 1. Exemplo:

Mquina de Mealy

Detector de Sequncia 0010


Obter o diagrama de estados de um circuito que detecte todas as sequncias 0010. Se ocorrer mais do que dois zeros consecutivos a mquina deve ser reiniciada aps a ocorrncia de um 1. Exemplo:
1

Mquina de Mealy

Exerccios
Aplique os 8 passos de projeto, tal como feito no detector de comeo de mensagem, nos exemplos de circuitos sequenciais apresentados previamente.

Você também pode gostar