PROJETO DE
MÁQUINAS DE ESTADOS
COMPARANDO PROJETOS COM FLIP-FLOPS JK, D E T
PROJETO DE CONTADORES SÍNCRONOS
Prof. Filippo Valiante Filho
OBJETIVOS
•
Nesta aula compararemos, através de um exemplo, o projeto de uma
máquina de estados finitos (FSM — Finite State Machine), ou contador
síncrono, usando Flip-Flops JK, D e T.
EXEMPLO
Projetar um circuito contador síncrono que efetue ciclicamente a contagem:
SOLUÇÃO GERAL (I)
000 010 100 011 101 001 111 110SOLUÇÃO GERAL (II)
Estado Atual Próximo Estado
C B A C B A 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 000 010 100 011 101 001 111 110
SOLUÇÃO GERAL (III)
Estado Atual Próximo Estado
C B A C B A 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 1 0 0 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 1 1 1 0 0 0 000 010 100 011 101 001 111 110
SOLUÇÃO COM
FLIP-FLOPS TIPO JK
SOLUÇÃO TIPO JK (I)
Estado Atual Próximo Estado Transições dos Flip-Flops
C B A C B A JC KC JB KB JA KA 0 0 0 0 1 0 0 X 0 X 0 0 1 0 0 0 0 X 0 X 0 1 0 1 0 0 0 X 0 1 1 0 0 0 0 X 1 0 0 1 0 1 0 X 1 0 1 1 1 0 1 1 0 0 0 0 0 X 1 1 1 0 0 0
O uso de flip-flops JK
tende a diminuir o
tamanho dos circuitos
combinacionais pela
aplicação das condições
irrelevantes (X).
P.ex.: de 0 para 0 pode
ser J=0 e K=0, ou J=0 e
K=1, portanto 0 e X.
SOLUÇÃO TIPO JK (II)
Estado Atual Próximo Estado Transições dos Flip-Flops
C B A C B A JC KC JB KB JA KA 0 0 0 0 1 0 0 X 1 X 0 X 0 0 1 0 0 0 0 X 0 X X 1 0 1 0 1 0 0 1 X X 1 0 X 0 1 1 0 0 0 0 X X 1 X 1 1 0 0 1 0 1 X 0 0 X 1 X 1 0 1 1 1 0 X 0 1 X X 1 1 1 0 0 0 0 X 1 X 1 0 X 1 1 1 0 0 0 X 1 X 1 X 1
O uso de flip-flops JK
tende a diminuir o
tamanho dos circuitos
combinacionais pela
aplicação das condições
irrelevantes (X).
P.ex.: de 0 para 0 pode
ser J=0 e K=0, ou J=0 e
K=1, portanto 0 e X.
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
J
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶X
X
X
X
K
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
X
X
𝐶1
1
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
J
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶X
X
X
X
K
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
X
X
𝐶1
1
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
J
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶X
X
X
X
K
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
X
X
𝐶1
1
SOLUÇÃO TIPO JK (V)
J
C= B.A’
K
C= B
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
J
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
X
X
𝐶1
X
X
K
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
1
1
𝐶X
X
1
1
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
J
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
X
X
𝐶1
X
X
K
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
1
1
𝐶X
X
1
1
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
J
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
X
X
𝐶1
X
X
K
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
1
1
𝐶X
X
1
1
SOLUÇÃO TIPO JK (VIII)
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
SOLUÇÃO TIPO JK (IX)
J
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
𝐶1
X
X
K
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
1
1
X
𝐶X
1
1
X
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
SOLUÇÃO TIPO JK (X)
J
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
𝐶1
X
X
K
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
1
1
X
𝐶X
1
1
X
Estado Atual Transições dos Flip-Flops C B A JC KC JB KB JA KA 0 0 0 0 X 1 X 0 X 0 0 1 0 X 0 X X 1 0 1 0 1 X X 1 0 X 0 1 1 0 X X 1 X 1 1 0 0 X 0 0 X 1 X 1 0 1 X 0 1 X X 1 1 1 0 X 1 X 1 0 X 1 1 1 X 1 X 1 X 1
SOLUÇÃO TIPO JK (XI)
J
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
X
𝐶1
X
X
K
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶X
1
1
X
𝐶X
1
1
X
J
A= CB’
K
A= 1
SOLUÇÃO TIPO JK
CIRCUITO
J
A= CB’
K
A= 1
J
B= C’A’ + CA = C equal A
J
C= B.A’
SOLUÇÃO COM
SOLUÇÃO TIPO D (I)
Estado Atual Próximo Estado Transições dos Flip-Flops C B A C B A DC DB DA 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 0 0 1 0 1 1 0 1 1 0 1 1 1 0 1 1 0 1 1 0 0 0 0 0 0 0
Com o uso de flip-flops
tipo D não haverá
condições irrelevantes!
A transição é exatamente
O próximo estado.
SOLUÇÃO TIPO D (II)
Estado Atual Transições dos Flip-Flops C B A DC DB DA 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 1 0 0 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0 1 1 1 0 0 0
D
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶1
1
D
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶1
D
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶 𝐶1
SOLUÇÃO TIPO D (III)
Estado Atual Transições dos Flip-Flops C B A DC DB DA 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 1 1 0 0 0 1 0 0 1 0 1 1 0 1 1 1 0 1 1 0 0 0 0
D
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶1
1
D
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶1
D
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶 𝐶1
D
C= CB’ + C’BA’
D
B= C’B’A’ + CB’A
D
A= CB’A’
C'B'A' + CB'A = B' (C'A' + CA) = B' (C equal A)SOLUÇÃO TIPO D
CIRCUITO
D
C= CB’ + C’BA’
D
B= C’B’A’ + CB’A
SOLUÇÃO COM
FLIP-FLOPS TIPO T
SOLUÇÃO TIPO T (I)
Estado Atual Próximo Estado Transições dos Flip-Flops C B A C B A TC TB TA 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 0 0 1 1 1 0 0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 0 1 1 1 0 0 0 1 1 1
Com o uso de flip-flops
tipo T não haverá
condições irrelevantes!
Ou o próximo estado
muda, ou é o mesmo.
SOLUÇÃO TIPO T (II)
T
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶1
1
T
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
1
1
𝐶1
1
1
T
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
1
𝐶1
1
1
Estado Atual Transições dos Flip-Flops C B A TC TB TA 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 0
SOLUÇÃO TIPO T (III)
T
C 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
𝐶1
1
T
B 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
1
1
𝐶1
1
1
T
A 𝐵 ҧത𝐴 𝐵𝐴ത 𝐵𝐴 𝐵 ҧ𝐴 ҧ 𝐶1
1
𝐶1
1
1
Estado Atual Transições dos Flip-Flops C B A TC TB TA 0 0 0 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 1