概述
1. 两端状态机和三段状态机
根据状态机的实际写法,状态机可以分为一段式、二段式和三段式状态机。
一段式状态机:整个状态机写到一个 always模块里面,在该模块中既描述状态转移,又描述状态的输入和输出。
二段式状态机:用两个 always 模块来描述状态机,其中一个 always 模块采用同步时序描述状态转移;另一个模块采用组合逻辑判断状态转移条件,描述状态转移规律以及输出。不同于一段式状态机的是,它需要定义两个状态,现态和次态,然后通过现态和次态的转换来实现时序逻辑。
三段式状态机:在两个 always 模块描述方法基础上,使用三个always 模块,一个always 模块采用同步时序描述状态转移,一个 always 采用组合逻辑判断状态转移条件,描述状态转移规律,另一个 always 模块描述状态输出。
2. 摩尔状态机和米勒状态机
根据状态机的输出是否与输入条件相关,可将状态机分为两大类,即摩尔(Moore)型状态机和米勒(Mealy) 型状态机。
摩尔状态机=====>输入与输出无关
组合逻辑的输出只取决于当前状态,而与输入状态无关。
米勒状态机=====>输入与输出有关
输出不仅取决于当前状态,还取决于输入状态。
参考文献 : https://wuzhikai.blog.csdn.net/article/details/119421783?spm=1001.2101.3001.6650.10&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-10-119421783-blog-88830654.topnsimilarv1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-10-119421783-blog-88830654.topnsimilarv1&utm_relevant_index=14
最后
以上就是舒心篮球为你收集整理的关于状态机的全部内容,希望文章能够帮你解决关于状态机所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复