有限状态机(Finite State Machines)是设计中控制逻辑的重要部分。
同步状态机和异步状态机之间有什么区别?
同步状态机和异步状态机是状态机的两种基本类型。
异步状态机状态在输出信号经过一段时间延时后变化,时间无法预测。同步状态机状态变化由时钟信号控制。
Mealy和Moore状态机之间的差异。
Mealy状态机和Moore状态机是两种常用的状态机编码风格。这两种状态机的基本框图如下所示:
Mealy状态机输出是当前状态和输入信号的函数。
Moore状态机输出仅是当前状态的函数。
如果输入信号没有被寄存,Mealy状态机可能会有毛刺,并且组合逻辑路径比Moore状态机长。所以,Mealy状态机相对于Moore状态机可能有更低的工作频率。
二进制编码和onehot编码状态机之间的差异。
二进制编码需要更少的触发器,onehot编码需要的触发器和状态机状态一样多。因为输出存在组合逻辑,二进制编码时序没有onehot编码状态机好。在ASIC中,如果输出路径时序不是很关键的话,推荐使用二进制编码,减少触发器个数。在FPGA中,触发器资源较多,可以使用onehot编码。
本文转载自公众号:芯片数字实验室
原文链接:https://mp.weixin.qq.com/s?\_\_biz=MzU4ODY5MzkzOA==&mid=2247484632&idx=1&sn=2c6aa9415254b381548ad150693dd30a&chksm=fdd9ac05caae25131693c3dabedddc00c7e86e2a2d5e0aa75a9458fc579b22498f06650ffa49&scene=21#wechat\_redirect
未经作者同意,请勿转载!
推荐阅读
想了解更多内容,欢迎关注芯片数字实验室专栏