Verilog状态机,以检测1101序列为例

如题所述

状态机在时钟脉冲作用后输出稳定,分为Moore和Mealy两种类型。Moore状态机在下一个时钟周期才对输入变化有响应,输出仅由状态决定。Mealy状态机的输出随输入变化而实时改变,其输出不仅依赖状态,还依赖输入。从时序上,Mealy状态机属于异步输出,响应比Moore状态机早一个周期。

状态机有几种常见的分类方式,包括一段式、两段式和三段式。一段式状态机将状态机描述整合在一个always模块中,包括状态转移和输入输出描述。两段式状态机有专门描述状态转移和状态输出的两个always模块。三段式状态机则有三个always模块,分别负责状态转移、状态转移条件判断和状态输出。

详细对比可参考《fpga状态机详解》一文,链接如下:(4条消息) fpga状态机详解_Ruanyz_china的专栏-CSDN博客

在Moore型状态机中,输出完全由当前状态决定。Mealy型状态机的输出则同时依赖当前状态和输入信号。

以下是使用Verilog语言实现Moore型状态机的一个例子,代码由B站UP主FPGA小学生提供,链接如下:[转自]B站UP主FPGA小学生。 FPGA小学生的个人空间_哔哩哔哩_bilibili
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜