Você está na página 1de 10

Universidade Federal de Uberlândia

Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

 É um sistema digital o qual integra a lógica combinacional e sequencial para produzir um


comportamento específico com um número finito de estados, transições e ações;
 Um contador digital é um tipo de máquina de estado;
 Os contadores digitais são utilizados em aplicações de contagem de eventos ou objetos enquanto as
FSM são tipicamente utilizadas em aplicações de lógica de controle de eventos, ações ou operações;
 Tipicamente as FSM utilizam circuitos sequenciais síncronos. Implementações assíncronas são
susceptíveis a erros, de difícil projeto e , portanto, raramente utilizadas;
 Semáforos, catraca eletrônica, “vending machines”, lógica de controle de uma CPU (central
processing unit) são sistemas onde as FSM estão presentes.
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Classificação das FSM


Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Comparação Mealy e Moore

 Mealy FSM têm normalmente um número menor de estados para uma dada aplicação;
 As ações respondem diretamente aos comandos, não havendo espera da transição de clock;
 A conexão direta da entrada à saída implica saídas assíncronas, gerando maior
susceptibilidade a falhas.

 Moore FSM têm saídas síncronas, portanto mais seguras;


 Podem requerer um maior número de estados para decodificação das saídas (quando a
equivalente Mealy FSM apresenta uma alteração de saída para uma alteração da entrada,
mas preserva o estado).
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Exemplo de aplicação – detector de sequência “11”


 A saída do sistema é igual a 1 se nas duas transições negativas
anteriores do sinal de clock, a entrada era igual a 1.
 O problema implica 3 estados:
a) Nenhum bit da sequência encontrado;
b) Apenas um bit da sequência encontrado;
c) Sequência de 2 bits (“11”) encontrada;
 Serão necessários 2 flip-flops.
Nome do Estado Corrente Entrada Próximo Estado Saída
Estado
Q1 Q0 E Q1 Q0 S
A 0 0 0 0 0 0
A 0 0 1 0 1 0
B 0 1 0 0 0 0
B 0 1 1 1 0 0
C 1 0 0 0 0 1
C 1 0 1 1 0 1
Não 1 1 X X X X
aplicável

Tabela de transição de estados


Diagrama de estados
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)


Exemplo de aplicação – detector de sequência “11”
Utilizando flip-flops tipo D!
Nome Estado Corrente Entrada Próximo Estado Saída Flip-flops
do Tipo D
Estado Q1 Q0 E Q1 Q0 S D1 D0
A 0 0 0 0 0 0 0 0
A 0 0 1 0 1 0 0 1
B 0 1 0 0 0 0 0 0
B 0 1 1 1 0 0 1 0
C 1 0 0 0 0 1 0 0
C 1 0 1 1 0 1 1 0
Não 1 1 X X X X X X
aplicável

Tabela de excitação

*
Diagrama de estados
* Função de saída depende apenas dos estados!
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Exemplo de aplicação – detector de sequência “11”


Projeto Final

Circuito do Detector de sequência


Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Exemplo de aplicação – detector de sequência “11”


 Considerando uma FSM Mealy, a detecção da sequência pode ser
identificada assim que a entrada permanecer ativa por mais de
um período de clock;
 O problema implica 2 estados:
a) Nenhum bit da sequência encontrado;
b) Um bit da sequência encontrado;
 A saída do sistema é igual a 1 se a entrada do sistema
permanecer em 1 durante o estado “b”;
 Apenas um flip-flop será necessário.

Nome do Estado Entrada Próximo Saída


Estado Corrente Estado
Q0 E Q0 S
A 0 0 0 0
A 0 1 1 0
B 1 0 0 0
B 1 1 1 0

Tabela de transição de estados


Diagrama de estados
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Exemplo de aplicação – detector de sequência “11”


Utilizando um flip-flop tipo D!

Nome do Estado Entrada Próximo Saída Flip-flop


Estado Corrente Estado Tipo D

Q0 E Q0 S D
A 0 0 0 0 0
A 0 1 1 0 1
B 1 0 0 0 0
B 1 1 1 0 1

Tabela de excitação

= = . *

* A saída é uma função da entrada e dos estados


Diagrama de estados (saída assíncrona)!
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)

Exemplo de aplicação – detector de sequência “11”


Projeto Final

Circuito do Detector de sequência


 A entrada E produz alterações assíncronas na saída S, fato que pode não ser tolerável
dependendo da aplicação;
 Um flip-flop adicional conectado à saída pode ser usado para gerar o sincronismo.
Universidade Federal de Uberlândia
Faculdade de Engenharia Elétrica

Eletrônica Digital Prof. Ernane Coelho

Máquina de Estados Finitos (FSM – Finite State Machine)


Exemplo de aplicação – detector de sequência “11”

 A inclusão de um flip-flop para sincronismo da saída na FSM Mealy resulta na FSM Moore equivalente;
 Se os estados “Q1Q0” do projeto original da FSM Moore desta apresentação fossem escolhidos como
00, 01 e 11 (10 - estado não aplicável) , ao invés de 00, 01 e 10 (11 - estado não aplicável), o resultado
final seria o circuito apresentado acima, ou seja, a escolha dos estados interfere na complexidade do
projeto final.