Sie sind auf Seite 1von 26

ORGANIZAO E ARQUITETURA DE COMPUTADORES

Mquina de Estados Finitos

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. H diversas codificaes possveis para a representao do estado atual com o conjunto de flipflops, como por exemplo:
Binria Cdigo Gray One Hot

MQUINA DE ESTADOS FINITOS

Elementos do Modelo
Estado Transio
Relgio

E0
reset A

E1

Reset

Determinismo
Modelo determinstico Modelo no determinstico

Tipos de Mquina
Mealy versus Moore

MAQUINA DE MOORE

Entrada

Sada

Circuito Combinacional

Memria (FFs)

Circuito Combinacional

Sada muda somente na transio do relgio

MAQUINA DE MEALY
Sada muda em funo da entrada e do estado corrente Entrada Sada

Circuito Combinacional

Memria (FFs)

Circuito Combinacional

MAQUINAS DE MOORE
O comportamento das mquinas de Moore e Mealy idntico, mas suas implementaes diferem. Representao da mquina de Moore:
Arcos do grafo: representam os sinais de entrada causadores da transio de um estado para outro. Vrtices do grafo: representam os estados possveis e os valores a serem assumidos nas sadas quando naquele estado

MAQUINAS DE MEALY
Representao da mquina de Mealy:
Arcos do grafo: representaM os sinais de entrada causadores da transio de um estado para outro, e os respectivos valores a serem assumidos nas sadas. Vrtices do grafo: representam os estados possveis

Diagramas e Tabelas de Estados


Comum aos dois mecanismos
Convenientes para especificar o comportamento de um sistema seqncial

Diagramas de Estado (DE)


Mecanismo grfico de representao de transies

Tabelas de Estados (TE)


Similar a tabelas verdade (TB)
Diferena: TE desconsidera relgio do sistema na transio Associao com sinal de relgio fica implcita (borda de subida)

DE e TE: Exemplo
Especificao de funcionamento de despertar
Estados
(1) Dormindo; (2) Acordado; (3) Levanta

Entradas
Alarme = Sinal que te acorda Dia til = Define o grau de preguia aplicvel (false ou true)

Sada
Desliga alarme = Ao aplicvel ao despertador

- Despertar Desliga Alarme FSM Alarme Dia til Estado

10

TE: Exemplo
TE genrica

Estado atual

Entradas

Prximo estado

Sada

TE Despertar Todos estados


Estado atual Dormindo Dormindo Acordado Acordado Acordado Levanta Alarme Desligado Ligado Ligado Desligado Desligado Tanto faz Dia til Tanto faz Tanto faz Tanto faz Sim No Tanto faz Prximo estado Dormindo Acordado Acordado Levanta Dormindo Levanta Sada No desliga Desliga Desliga No desliga No desliga No desliga

- Despertar Desliga Alarme FSM Alarme Dia til Estado

TE Despertar - Acordando
Estado atual Dormindo Acordado Acordado Alarme Ligado Desligado Desligado Dia til Tanto faz Sim No Prximo estado Acordado Levanta Dormindo Sada Desliga No desliga No desliga

11

DE: 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 Alarme = Desligado Dia til == Sim Dia til == No Desliga despertador == Sim Desliga despertador == No Representao A A D D S S Entrada Sada

Levanta

A/S

12

Implementao de DEs
O que:
Implementar um circuito a partir de um DE

Como:
Levantamento do problema Gerar a tabela de estados Gerar o mapa de Karnaugh Desenhar o circuito

13

Implementao de DEs
Exemplo 1: Um contador Definio:
Implementar circuito com FFs do tipo D

0
3

Passo 1: Levantamento
Quantos bits uso para representar os estados?
Define o nmero de FFs a utilizar

Tem alguma entrada? Quantas? Tem alguma sada? Quantas?

14

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

(Contador)

Diagrama estados - Contador


01 00 11 10

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

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

15

Implementao de DEs

(Contador)

Passo 3: Criao dos Mapas de Karnaugh


Explorar as sadas, inclundo a de cada FF

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

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

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

D0
Q1 0 1 0 1 1 0

D1 = Q1 Q0 + Q1 Q0

D0 = Q0

16

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

(Contador)

E qual o Flip flop adotado nesta implementao?


Acho que era do tipo D, no?

D1 = Q1 Q0 + Q1 Q0

D0 = Q0

17

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

(Contador)

E qual o Flip flop adotado nesta implementao?


Sim, era do tipo D

D1 = Q1 Q0 + Q1 Q0

D0 = Q0

18

Implementao de DEs
Passo 4: Hora de desenhar o circuito

(Contador)

D1 = Q1 Q0 + Q1 Q0

D0 = Q0

19

Implementao de DEs
Passo 4: Hora de desenhar o circuito

(Contador)

D1 = Q1 Q0 + Q1 Q0 D0 = Q0

20

Implementao de DEs
Exemplo 2 Semforo
Objetivo: Apresentar DONT CARE

(Semforo)

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

21

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

22

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

23

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

24

Implementao de DEs
Passo 4: Hora de desenhar o circuito

(Semforo)

D1 = Q0

D0 = Q1 Q0

25

Implementao de DEs
Passo 4: Hora de desenhar o circuito

(Semforo)

D1 = Q0

D0 = Q1 Q0

26

Implementao de DEs
Exerccio: Circuito Hipottico Definio:
Implementar circuito com FF D

(Hipottico)

00 11

01

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

Das könnte Ihnen auch gefallen