A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

ENGA78 – Síntese de Circuitos Digitais

Apresentações semelhantes


Apresentação em tema: "ENGA78 – Síntese de Circuitos Digitais"— Transcrição da apresentação:

1 ENGA78 – Síntese de Circuitos Digitais
Máquina de Estados Finita Wagner L. A. de Oliveira ENGA78 – Síntese de Circuitos Digitais

2 Como funciona uma máquina de vendas?

3 Máquina de Estados Finita
É um circuito sequencial capaz de implementar um algoritmo em hardware Conhecida por sua sigla em inglês FSM: Finite State Machine FSM é um modelo de comportamento, formado por um número finito de estados, transições entre tais estados e ações

4 Circuito da FSM FSM de Moore (orientada a estados)

5 Circuito da FSM FSM de Mealy (orientada a transições)

6 Diagrama de estados Utilizado para descrever o comportamento de um circuito sequencial Formado por 2 tipos de elementos FSM de Mealy FSM de Moore Estado Estado Saídas Entradas/Saídas Entradas

7 Variáveis de estado São informações internas da FSM
Sinalizam o estado atual da máquina Exemplo: Uma máquina de 7 estados terá, pelo menos, 3 variáveis de estado

8 Variáveis de estado Há 3 formas de codificação de estados
Numeração Binária Sequencial One Hot Código Gray

9 Variáveis de estado Há 3 formas de codificação de estados
Numeração Binária Sequencial recomendada para FSMs com poucos estados (até 4) utiliza o menor número de Flip-Flops (FFs) decodificador de próximo estado mais complexo, uma vez que utiliza todos os FFs exige maior cuidado na verificação de temporização, devido a maior propensão à metaestabilidade One Hot Código Gray

10 Variáveis de estado Há 3 formas de codificação de estados
Numeração Binária Sequencial One Hot recomendada para FSMs entre 4 e 32 estados número de bits (isto é, o número de variáveis) é igual ao número de estados para cada estado, um único bit é 1 utiliza o maior número de FFs simplifica decodificadores (próximo estado / saída) simplifica a verificação de temporização opção default de ferramentas de geração automática de FSMs para FPGA (Altera / Xilinx) Código Gray

11 Variáveis de estado Há 3 formas de codificação de estados
Numeração Binária Sequencial One Hot Código Gray recomendada para FSMs acima de 32 estados número de FFs igual ao da codificação sequencial baixa propensão à metaestabilidade (menor que One Hot) aumento de complexidade (tamanho do circuito) devido a contadores Gray

12

13 Tabela de estados É a transcrição do diagrama de estados para a forma de tabela Permite encontrar as relações binárias entre as informações de entrada, variáveis de estado e saídas (obs.: considerando codificação sequencial ou codificação Gray)

14 Processo de Síntese de uma FSM
Definir a quantidade de estados, as entradas e as saídas Adotar uma convenção de nomenclatura Ex.: identificar variáveis de estado por letras do começo do alfabeto e as entradas/saídas por letras do meio para o final do alfabeto Ideal: usar nomes significativos

15 Processo de Síntese de uma FSM
Definir a quantidade de estados, as entradas e as saídas Definir a estrutura da FSM e desenhar o diagrama de estados Escolher entre Mealy / Moore

16 Processo de Síntese de uma FSM
Definir a quantidade de estados, as entradas e as saídas Definir a estrutura da FSM e desenhar o diagrama de estados Preencher a tabela de estados Escolher a forma de codificação de estados Calcular a quantidade de variáveis de estado Associar estados à valoração das variáveis de estado

17 Processo de Síntese de uma FSM
Definir a quantidade de estados, as entradas e as saídas Definir a estrutura da FSM e desenhar o diagrama de estados Preencher a tabela de estados Calcular as expressões booleanas dos decodificadores Próximo Estado Saída

18 Processo de Síntese de uma FSM
Definir a quantidade de estados, as entradas e as saídas Definir a estrutura da FSM e desenhar o diagrama de estados Preencher a tabela de estados Calcular as expressões booleanas dos decodificadores Desenhar o circuito Definir um FF para cada variável de estado

19 Processo de Síntese de uma FSM
Definir a quantidade de estados, as entradas e as saídas Definir a estrutura da FSM e desenhar o diagrama de estados Preencher a tabela de estados Calcular as expressões booleanas dos decodificadores Desenhar o circuito Verificar os estados iniciais Definir a situação dos sinais de CLEAR e PRESET dos FFs

20 Exemplo

21 Exemplo: Identificando as Variáveis
De estado 4 estados  2 variáveis de estado A e B Entradas 2 entradas H (high) e L (low) Saídas 2 saídas M (motor) e A (alarme)

22 Exemplo: Fazendo o Diagrama de Estados (Modelo de Mealy)
HL/MA Cheio 01/00 11/00 00/01 10/01 11/00 00/01 01/10 10/01 Esvaziando Enchendo 01/00 10/01 11/01 00/00 01/10 Vazio 00/10 10/01 11/01

23 Exemplo: Definindo a Estrutura da FSM
FSM de Moore (orientada a estados) Os FFs compõem o elemento de memória As saídas do DPE são as entradas do EM (entradas dos FFs) As saídas do EM (saídas dos FFs) são as entradas do DS

24 Exemplo: Definindo a Estrutura da FSM
FSM de Mealy (orientada a transições) Os FFs compõem o elemento de memória As saídas do DPE são as entradas do EM (entradas dos FFs) As entradas do circuito e as saídas do EM (saídas dos FFs) são as entradas do DS

25 Exemplo: Preenchendo a Tabela de Estados para Síntese
ESTADO ATUAL ENTRADAS ESTADO FUTURO SAÍDAS SAÍDAS DO D.P.E. Variáveis de estado Variáveis de Entrada Variáveis de Saída Entradas dos FF   

26 Exemplo: Demais Tarefas
Após obter a tabela, use os conhecimentos referentes à construção de circuitos combinacionais Extraia as expressões do decodificador de saída e do decodificador de próximo estado Simplifique tais expressões Desenhe o circuito correspondente Por fim, defina o estado default dos sinais de CLEAR e PRESET dos FFs, de acordo com os estados iniciais

27 Processo de Análise de uma FSM
Calcular a quantidade de estados a partir do total de FFs Cada FF corresponde a uma variável de estado O total de variáveis de estado é o total de FFs

28 Processo de Análise de uma FSM
Calcular a quantidade de estados a partir do total de FFs Identificar as entradas e saídas externas Separar as entradas e saídas de dados das entradas de clock e RESET

29 Processo de Análise de uma FSM
Calcular a quantidade de estados a partir do total de FFs Identificar as entradas e saídas externas Levantar as expressões algébricas das saídas dos decodificadores

30 Processo de Análise de uma FSM
Calcular a quantidade de estados a partir do total de FFs Identificar as entradas e saídas externas Levantar as expressões algébricas das saídas dos decodificadores Preencher a tabela de estados

31 Processo de Análise de uma FSM
Calcular a quantidade de estados a partir do total de FFs Identificar as entradas e saídas externas Levantar as expressões algébricas das saídas dos decodificadores Preencher a tabela de estados Desenhar o diagrama de estados Informar quais são os estados iniciais, caso existam, sinalizando a operação de RESET

32 Tabela de Estados para Análise
ESTADO ATUAL ENTRADAS SAÍDAS DO D.P.E. ESTADO FUTURO SAÍDAS Variáveis de estado Variáveis de Entrada Entradas dos FF Variáveis de Saída   

33 Exercício (Análise)

34 Exercício (Síntese) Projete uma máquina de estados que funcione como um contador crescente ou decrescente de 0-9. Entradas START/STOP Sentido de contagem (0=crescente; 1=decrescente) RESET CLOCK SAÍDAS Valor do contador


Carregar ppt "ENGA78 – Síntese de Circuitos Digitais"

Apresentações semelhantes


Anúncios Google