Máquina de estados algorítmica
O método da máquina de estados algorítmica (MEA) é um método para modelar máquinas de estado finitas. Ele é usado para representar diagramas de circuitos digitais integrados. O diagrama de MEA é como um diagrama de estados, porém menos formal e mais fácil de se entender. Uma tabela MEA é um método de descrever sequencialmente as operações de um sistema digital.
Método MEA
[editar | editar código-fonte]O método MEA é composto dos seguintes passos:
- Criar um algoritmo, utilizando pseudocódigo, para descrever a operação desejada do dispositivo.
- Converter do pseudocódigo para uma tabela MEA.
- Modelar o caminho do dado baseado na tabela MEA.
- Criar uma tabela MEA detalhada baseada no caminho do dado.
- Modelar o controle lógico baseado na tabela MEA.
Tabela MEA
[editar | editar código-fonte]Uma tabela MEA consiste em uma interconexão de quatro tipos básicos de elementos: nomes dos estados, estados, verificação de condições e saídas condicionais. Uma tabela MEA, representada como um retângulo, corresponde a um estado de um diagrama de estados regular ou máquina de estados finita. Os tipos de saídas da máquina de Moore estão listadas dentro da caixa.
Nome do estado: O nome do estado está indicado dentro círculo e o círculo é posicionado no canto superior esquerdo ou o nome é posicionado sem o círculo.
Caixa de estado: A saída do estado é indicado dentro da caixa retangular.
Caixa de decisão: Um losango indica que a expressão condicional declarada está para ser testada e o caminho de saída está para ser escolhido de acordo. A expressão condicional contém uma ou mais entradas para a MEF (Máquina de Estados Finita). Uma verificação da condição da MEA, indicada por um losango com uma ou duas entradas (para verdadeiro e falso), é usada para condicionalmente transferir entre dois estados ou entre um estado e uma saída condicional. A caixa de decisão contém a expressão condicional declarada a ser testada, e a expressão contém uma ou mais entradas da MEF.
Caixa de saída condicional: Um ovoide denota os sinais de saída que são do tipo Mealy. Essas saídas não dependem somente do estado, mas também das entradas da MEF.
Caminho do dado
[editar | editar código-fonte]Uma vez que a operação desejada de um circuito foi descrita usando operações RTL, os componentes do caminho do dado podem ser deduzidos. Toda variável única que é atribuída um valor no programa RTL pode ser implementada como um registrador. Dependendo da operação funcional realizada quando atribuído um valor à variável, o registrador para essa variável pode ser implementada como um registrador direto, um registrador de deslocamento, um contador ou um registrador precedido por um bloco lógico combinacional. O bloco lógico combinacional associado a um registrador pode implementar um somador, um subtrator, um multiplicador ou algum outro tipo de função lógica combinacional.
Tabela MEA detalhada
[editar | editar código-fonte]Uma vez que o caminho do dado foi designado, a tabela MEA é convertida para uma tabela MEA detalhada. A notação RTL é substituída por sinais definidos no caminho do dado.
Ver também
[editar | editar código-fonte]- Fluxograma - Tipo de diagrama, e pode ser entendido como uma representação esquemática de um processo ou algoritmo.
- Drakon-chart
- Máquina de Mealy - Máquina de estado finito que produz um resultado (saída de dados) baseando-se no estado em que se encontra e na entrada de dados.
- Máquina de Moore - autômato de estado finito onde as saídas são determinadas pelo estado corrente apenas (e não pela entrada).