Prof. Michael
ELETRÔNICA DIGITAL II
Parte 8Máquina de Estados
1
Professor Dr. Michael Klug
• Circuitos Combinacionais: o valor da saída noinstante “t” depende apenas da combinação dosvalores das entradas neste instante.– Projeto utilizando tabela verdade, mapas de karnaugh(método conjuntivo ou disjuntivo)
• Circuitos Sequenciais: o valor da saída no instante “t”não depende apenas dos valores das entradas nesteinstante, mas também da sequência das entradasanteriores.– Método de projeto: Máquina de Estados
2
Lembrando
Prof. Michael
• Circuito Combinacional + Elementos de Memória (FFs)– Contadores, Registradores, Memórias
3
Circuitos Sequenciais
Prof. Michael
Característica Fundamental: Realimentação
• FSM (Finite State Machine): formalismo paraconstrução de circuitos sequenciais– Tipos: Moore e Mealy
• Estados: modos de operação– Cada estágio através do qual o circuito sequencial avança;– Em cada estado, o circuito armazena uma “recordação” desua história passada, para saber o que fazer a seguir;
• Nem toda informação anterior é relevante– Nem todo estado precisa ser armazanado
4
Máquina de Estados
Prof. Michael
5
Composição
Prof. Michael
Bloco(s) Combinatório(os): definir qual é opróximo estado e a saída externa. Tem comoentradas o estado presente e as entradasexternas.
Bloco de Memória: armazenar informaçõesanteriores para definir o estado presente. Temcomo entrada a lógica do próximo estado.
• Saídas dependem apenas do Estado Atual/Presente– Entradas interferem apenas nos estados futuros
6
Modelo de Moore
Prof. Michael
7
Modelo de Mealy
Prof. Michael
• Saídas dependem do Estado Atual e das Entradas– Entradas interferem nos estados futuros e na saída
• Máquinas de Moore:– As saídas são função apenas do estado presente (não das entradas);
• As entradas só interferem no próximo estado (lógica).
– As saídas variam sincronamente;• Durante o ciclo de “clock” as variações não afetarão diretamente a saída
do sistema;
– Resposta mais lenta ou inexistente à variações na entrada
• Máquinas de Mealy:– As saídas são função do estado presente e das entradas atuais;– As saídas variam assincronamente com as entradas;– Resposta mais rápida à variações na entrada.
• Moore ou Mealy?– Em geral a versão Mealy de um circuito será mais econômica em
termos de componentes físicos (hardware);– Entretanto, como a saída depende da entrada, valores incorretos na
entrada durante o ciclo de “clock” podem afetar a saída.8
Moore e Mealy
Prof. Michael
• Diagrama de Estados ou Diagrama de Fluxo deEstado– Grafo no qual cada nó representa um estado e cada arcorepresenta uma transição de estados (fluxo)
9
Diagrama de Estados
Prof. Michael
MooreMealy
• Exemplos:Latch RS Det. Paridade Ímpar
10
Diagrama de Estados
Prof. Michael
CNT MOD4 (MEALY)CNT MOD4 (MOORE)
Exercício: Desenhar o diagrama de estados paraum contador MOD4 com os seguintes terminais:habilita e MAX (contagem máxima)
11
Diagrama de Estados
Prof. Michael
Passos:i) Interpretação do problema e construção do
diagrama de estados* Inicialmente os estados ainda não estarão assinalados àvalores binários (codificação), recebendo apenas nomessimbólicos que podem ser letras do alfabeto, númerosinteiros ou nomes.
ii) Tabela de Transição (Próximo Estado)iii) Determinação e otimização de expressões (Para
a lógica do próximo estado e para as saídas):com base no FF a ser utilizado
iv) Implementação do circuito12
Projeto de Circuito Sequencial
Prof. Michael
• Tabela de Transição de Flip‐Flop:– FF D:
– FF JK:
13
Importante:
Prof. Michael
Projetar um contador crescente, utilizando código gray, de3 bits: 000, 001, 011, 010, 110, 111, 101, 100.OBS: utilizar modelo de Moore e FFs tipo D.
PASSO 1: Diagrama de Estados
14
Exemplo 1
Prof. Michael
PASSO 2: Tabela de Transição
15
Exemplo 1
Prof. Michael
Eventualmente utiliza-se a notação Qn(t) para o estado presente/atual, e Qn(t+) para o estado futuro/próximo
PASSO 3: Determinação e otimização de expressões
16
Exemplo 1
Prof. Michael
Sendo:
PASSO 4: Implementação
17
Exemplo 1
Prof. Michael
OBS: as saídas Q’, se existentes, poderiam ser utilizadas para reduzir a quantidade de elementos do circuito combinacional
Projete um contador para a seguinte sequenciairregular: 001, 010, 101, 111 e recicla.OBS: utilizar modelo de Moore e FFs tipo D.
PASSO 1: Diagrama de Estados
18
Exercício 1
Prof. Michael
Este contador (4 bits) poderia ser implementado utilizando um contador de 2 bits sequencial (clássico), efetuando um circuito combinacional para transformar a saída: 00 em 001, 01 em 010 .....
PASSO 2: Tabela de Transição
PASSO 3: Determinação e otimização de expressões
19Prof. Michael
Exercício 1
PASSO 4: Implementação
20Prof. Michael
Exercício 1