Sie sind auf Seite 1von 24

Mquinas de Estado

Eletrnica Digital
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
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 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;
Etapas de Projeto de Circuitos Sequenciais
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 no estado de
reset aps o trmino da
mensagem.
Detector de Comeo de Mensagem
1 passo: elaborar diagrama de estados que interprete fielmente o problema
que se deseja resolver

Identificao dos Estados:


1) No 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 aps receber 1 ou 2 uns, q4.
Detector de Comeo de Mensagem
Construo de Diagrama de Estados usando
Mquina de Mealy
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 0 1
qt (y1y0)t 0 1 J1 K1 J0 K0 J1 K1 J0 K0
q0 00 00 11 0 X 0 X 1 X 1 X
q1 11 00 01 X 1 X 1 X 1 X 0
q2 01 00 10 0 X X 1 1 X X 1
q3 10 10 10 X 0 0 X X 0 0 X
Detector de Comeo de Mensagem
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

xt 0 1
qt (y1y0)t 0 1 J1 K1 J0 K0 J1 K1 J0 K0
q0 00 00 11 0 X 0 X 1 X 1 X
q1 11 00 01 X 1 X 1 X 1 X 0
q2 01 00 10 0 X X 1 1 X X 1
q3 10 10 10 X 0 0 X X 0 0 X
Detector de Comeo de Mensagem
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

xt 0 1
qt (y1y0)t 0 1 J1 K1 J0 K0 J1 K1 J0 K0
q0 00 00 11 0 X 0 X 1 X 1 X
q1 11 00 01 X 1 X 1 X 1 X 0
q2 01 00 10 0 X X 1 1 X X 1
q3 10 10 10 X 0 0 X X 0 0 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 (flip-flops) recebem o mesmo sinal de
relgio

J y1 = x
K y1 = y 0
J y 0 = xy1
K y 0 = x + y1
Z = xy1 y0
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.

Identificao dos Estados Mquina de Moore


Nmero de 1s acumulados par, q0; 1
0 0
Nmero de 1s acumulados mpar, q1. S0/0 S1/1
1
Detector de Paridade
Prossiga com o projeto!

1
0 0
S0/0 1 S1/1
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).
Mquina de Moore
Exemplo: 1
0 0
S0/1 0 S1/0

1 1
S2/0
Identificao dos Estados
1) Divisvel por 3, S0; Mquina de Mealy
2) Divisvel por 3 + 1, S1; 1/0
0/1 0/0
3) Divisvel por 3 + 2, S2.
S0 0/0 S1

1/0
1/1
S2
Detector de Paridade
Prossiga com o projeto considerando primeiramente a Mquina de
Moore e depois a Mquina de Mealy.

Mquina de Moore
1
0 0
S0/1 0 S1/0

1 Mquina de Mealy
1
S2/0 1/0
0/1 0/0
S0 0/0 S1

1/0
1/1
S2
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.
Identificao dos Estados
1) No recebeu nada, S0;
2) Em S0, recebeu 1, S1;
3) Em S0, recebeu 0 (mpar), S2;
4) Em S2, recebeu 0 (par), S3; Prossiga com o projeto!
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.
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:

Faa o projeto!