Você está na página 1de 19

ORGANIZAO E ARQUITETURA DE COMPUTADORES

Mquina de Estados Finitos


Alexandre Amory Edson Moreno

Na Aula Anterior
Definio de circuitos seqenciais Memria: flip- flop tipo D Registradores da Cleo

Na Aula de Hoje
Como descrever e interpretar uma mquina de estados Como implementar uma mquina de estados com portas lgicas e flip-flops A mquina de estados da parte de controle da Cleo

Diagramas de Estados: Exemplo


Especificao de funcionamento de despertar
Estados
(1) Dormindo; (2) Acordado; (3) Levanta

Entradas
Alarme = Sinal que te acorda (ligado ou desligado) Dia til = Define o grau de preguia aplicvel (falso ou verdadeiro)

Sada
Desliga alarme = Ao aplicvel ao despertador

- Despertar Desliga Alarme FSM Alarme Dia til Estado

Diagramas de Estados: Exemplo


Representao por grafo:
Vrtices representam os estados Arcos representam os valores de entrada / sada

A/S A / S
Dormindo Acordado

A/S

A e D / S

A e D / S
Valor Alarme = Ligado Entrada Alarme = Desligado Dia til == Sim Dia til == No Desliga despertador == Sim Desliga despertador == No Representao A A D D S S

Levanta

A/S

Sada

CIRCUTOS SEQUENCIAIS
O funcionamento dos circuitos seqenciais pode ser representado por uma mquina de estado. O conjunto dos valores armazenados em cada flipflop define o estado atual dessa mquina de estado.

Implementao de DEs
Exemplo 1 Semforo Definio:
Implementar circuito com FF D

(Semforo)

Relembrando passos:
Passo 1 Levantamento (nro bits p. repres. estados/ entradas / saidas) Passo 2 Gerao de uma TE Passo 3 Mapa de Karnaugh Passo 4 Desenhar o circuito

Implementao de DEs
Passo 2: Gerao de uma TE
TE genrica
Estado atual Entradas Prximo estado Sada

(Semforo)

Diagrama estados - Semforo


10 00 01

TE Semforo(FF D)
Estado atual Q1 Q0 0 0 0 1 1 0 1 1 Prximo estado D1 D0 0 1 1 0 0 0 X X

Tabela Verdade - FF D
Entradas D Q 0 0 0 1 1 0 1 1 Sada Q (T+1) 0 0 1 1

Implementao de DEs

(Semforo)

Passo 3: Criao dos Mapas de Karnaugh


Explorar as sadas, incluindo a de cada FF

Como:
(1) Analisar TE (2) Gerar equaes booleanas

TE Semforo (FF D)
Estado atual Q1 Q0 0 0 0 1 1 0 1 1 Prximo estado D1 D0 0 1 1 0 0 0 X X

D1
Q1 0 1 0 0 1 1 0 X 0 1 Q0 Q0

D0
Q1 0 1 0 1 0 X

D1 = Q0

D0 = Q1 Q0

10

Implementao de DEs
Passo 4: Hora de desenhar o circuito
Quais equaes booleanas mmo?

(Semforo)

E qual o Flip flop adotado nesta implementao?


Sim, era do tipo D
D0 = Q1 Q0

D1 = Q0

11

Implementao de DEs
Passo 4: Hora de desenhar o circuito

(Semforo)

D1 = Q0

D0 = Q1 Q0

12

Implementao de DEs
Passo 4: Hora de desenhar o circuito

(Semforo)

D1 = Q0

D0 = Q1 Q0

13

Implementao de DEs
Simulao: ciclo 0 Estado 00 verde

(Semforo)

0
1

0
1

14

Implementao de DEs
Simulao: ciclo 1 Estado 01 amarelo

(Semforo)

0
1

1
0

15

Implementao de DEs
Simulao: ciclo 2 Estado 10 vermelho

(Semforo)

1
0

0
1

16

Implementao de DEs
Simulao: ciclo 3 Estado 00 verde

(Semforo)

0
1

0
1

17

Implementao de DEs
Forma de onda Mostrar semfaro no Logisim 0
CK Dff1 Qff1 Dff2 Qff2

(Semforo)

tempo (ns)

18

Implementao de DEs
Exerccio Estados da gua
Estados
S: Slida L: Liquida G: Gasosa

L T

Entrada
T: Temperatura (0 diminui, 1 aumenta)

Definio:
Implementar circuito com FF D

Relembrando passos:
Passo 1 Levantamento (nro bits p. repres. estados/ entradas / saidas) Passo 2 Gerao de uma TE Passo 3 Mapa de Karnaugh Passo 4 Desenhar o circuito

19

Resumo
Vimos como descrever, interpretar, e implementar uma mquina de estados O funcionamento da mquina de estados da Cleo
Processador visto como uma grande mquina de estados