摩尔状态机和米利状态机的区别

编程入门 行业动态 更新时间:2024-10-26 16:27:29

摩尔<a href=https://www.elefans.com/category/jswz/34/1768137.html style=状态机和米利状态机的区别"/>

摩尔状态机和米利状态机的区别

根据状态机的输出是否与输入条件相关来区分Moore状态机和Mealy状态机。

Moore状态机:输出仅仅与当前状态有关;

如下实例,如三段式写法来写的一个序列检测的状态机(【 FPGA 】序列检测器的Moore状态机实现),状态机最后的输出部分:

always @*
beginif(current_state == s4) dout = 1;else dout = 0;
end

由此可见,Moore状态机仅仅和当前状态有关。

也可以看状态转移图判断:

Mealy状态机:输出不仅取决于当前状态,还和输入有关;

同样,如下序列检测的例子:【 FPGA 】序列检测器的Mealy状态机实现

同样是三段式描述,状态机的输出部分为:

always @ *
beginif(reset) dout = 1'b0;else if( (current_state == s3)&&(din == 1'b1) ) dout = 1'b1;else dout = 1'b0;end

同样,也可以通过状态转移图判断:

可见,输出不仅和当前状态和输入都有关系。

最后,Moore状态机和Mealy状态机可以相互转换。上述两个状态转移图实际上实现的是同一个功能,就是检测序列1101.

更多推荐

摩尔状态机和米利状态机的区别

本文发布于:2024-03-08 01:00:43,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1719426.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:状态机   区别

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!