复杂的状态机
状态机根据影响输出的原因分为两大类,即Moore 型状态机和 Mealy 型状态机,其共同点是:状态的跳转都只和输入有关。区别主要是在输出的时候:若最后的输出只和当前状态有关而与输入无关则称为 Moore 型状态机;若最后的输出不仅和当前状态有关还和输入有关则称为 Mealy 型状态机。
每个椭圆的框表示一个状态(也可以用其他图形表示),每个状态之间都有一个指向的箭头,表示的是状态跳转的过程,箭头上有标注的一组数字,斜杠左边表达的是状态的输入,斜杠右边表达的是状态的输出,结构非常的简单,各状态之间的功能、跳转的条件、输入输出都能够在状态转移图中非常清楚的表达出来。
总结出来就是一个完整的状态转移图需要知道以下三个要素:
1、输入: 根据输入可以确定是否需要进行状态跳转以及输出,是影响状态机系统执行过程
的重要驱动力;
2、输出: 根据当前时刻的状态以及输入,是状态机系统最终要执行的动作;
3、状态: 根据输入和上一状态决定当前时刻所处的状态,是状态机系统执行的一个稳定的
过程。
多输入,多输出型的状态机
`timescale 1ns/1nsmodule complex_fsm
(input wire sys_clk , //系统时钟50MHzinput wire sys_rst_n , //全局复位input wire pi_