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

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

ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Máquina de Estados Finito.

Apresentações semelhantes


Apresentação em tema: "ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Máquina de Estados Finito."— Transcrição da apresentação:

1 ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Máquina de Estados Finito

2 2 / 11 MÁQUINA DE ESTADOS Elementos do Modelo –Estado –Transição Relógio –Reset Determinismo –Modelo determinístico –Modelo não determinístico Tipos de Máquina –Mealy versus Moore Representação de Máquina de Estados Finito –Um processo com um único sinal representando o estado –Dois processos, um representando a operação combinacional e outro representando o elemento de memorização para troca de estados E0E1 reset A A

3 3 / 11 Circuito Combinacional Memória (FFs) Circuito Combinacional EntradaSaída Saída muda somente na transição do relógio Máquina de Moore

4 4 / 11 MÁQUINA DE ESTADOS MOORE entity Moore is port ( ck: in std_logic; entrada: in std_logic; saida: out std_logic ); end Moore; architecture M of Moore is type STATE_TYPE is (S0, S1, S2, S3); signal estado: STATE_TYPE; begin process(ck, reset) begin if reset = '1' then estado <= S0; elsif ck'event and ck = '1' then > end if; end process; end A_Moore;

5 5 / 11 MÁQUINA DE ESTADOS MOORE case estado is when S0 => saida <= '0'; if entrada = '1' then estado <= S2; end if; when S1 => saida <= '1'; if entrada = '0' then estado <= S0; else estado <= S2; end if; when S2 => saida <= '1'; if entrada = '1' then estado <= S3; end if; when S3 => saida <= '0'; if entrada = '1' then estado <= S1; end if; end case;

6 6 / 11 Máquina de Mealy Circuito Combinacional Memória (FFs) Circuito Combinacional EntradaSaída Saída muda em função da entrada e do estado corrente

7 7 / 11 MÁQUINA DE ESTADOS MEALY entity Mealy is port ( ck: in std_logic; entrada: in std_logic; saida: out std_logic ); end Mealy; architecture A_Mealy of Mealy is type STATE_TYPE is (S0, S1, S2, S3); signal estado: STATE_TYPE; begin end A_Mealy;

8 8 / 11 MÁQUINA DE ESTADOS MEALY case estado is when S0 => if entrada = '1' then estado <= S2; end if; when S1 => if entrada = '0' then estado <= S0; else estado <= S2; end if; when S2 => if entrada = '1' then estado <= S3; end if; when S3 => if entrada = '1' then estado <= S1; end if; end case; process(ck, reset) begin if reset = '1' then estado <= S0; elsif ck'event and ck = '1' then > end if; end process; Processo de controle de estado Processo de controle da saída Saída <= '0' when entrada = '1' and (estado = S0 or estado = S3) else '1';

9 9 / 11 MÁQUINA DE ESTADOS –Moore saídas são calculadas dependendo apenas do ESTADO ATUAL –Mealy saídas são calculadas à partir do ESTADO ATUAL e ENTRADAS 1) O tipo state está bem especificado ? Não precisa definir quem é S0,S1,S2,S3? 2) O que deve ser alterado no código anterior para transformar de Moore para Mealy?

10 10 / 11 Exercícios 1.Descreva em VHDL o sistema SAgua através de uma máquina de estados. Deve ser representado o comportamento da água frente a mudança de temperatura, sabendo que a água pode estar em um de três estados: sólido, líquido ou gasoso (use uma biblioteca para representar o estado da água). Considere que SAgua tem como entradas: (i) temp - uma porta de um bit, que em 0 representa frio e em 1 representa calor; (ii) estInic – porta com o estado da água codificado; (iii) ck - sinal de controle para efetuar as transições em SAgua; e (iv) start - porta de controle que, em 1, indica que o valor de estInic deve ser armazenado em SAgua – considere que start é síncrono com ck. Como saídas SAgua tem: (i) tempExc – porta contendo os valores 0 ou 1 para informa que o calor ou frio recebidos foram devolvidos para o ambiente, respectivamente; e (ii) estado que é um sinal codificado com o valor do estado da água.

11 11 / 11 Exercícios Faça a descrição de uma máquina reconhecedora de padrões. Esta máquina deve reconhecer os seguintes padrões: Ao reconhecer um padrão válido, a saída reconheceu deve ir para 1, enquanto não tiver uma nova entrada e o contador cont deve ser incrementado. Este deve conter o número de vezes que um padrão foi reconhecido desde a máquina ter sido inicializada com o sinal de reset em 1 A 0 X X B 1 X 1 X X 0 1 S0S1S2S3 S7S6S5S4 reset A A B B A A B


Carregar ppt "ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Máquina de Estados Finito."

Apresentações semelhantes


Anúncios Google