×

状态机学习心得

消耗积分:10 | 格式:rar | 大小:576 | 2010-11-19

哈哈哈

分享资料个

  FSM 分两大类:米里型和摩尔型。

  组成要素有输入(包括复位),状态(包括当前状态的操作),状态转移条件,状态的输出条件。

  设计FSM 的方法和技巧多种多样,但是总结起来有两大类:第一种,将状态转移和状态的操作和判断等写到一个模块(process、block)中。另一种是将状态转移单独写成一个模块,将状态的操作和判断等写到另一个模块中(在Verilog 代码中,相当于使用两个“always” block)。其中较好的方式是后者。其原因

  如下:

  首先FSM 和其他设计一样,最好使用同步时序方式设计,好处不再累述。而状态机实现后,状态转移是用寄存器实现的,是同步时序部分。状态的转移条件的判断是通过组合逻辑判断实现的,之所以第二种比第一种编码方式合理,就在于第二种编码将同步时序和组合逻辑分别放到不同的程序块(process,block) 中实现。这样做的好处不仅仅是便于阅读、理解、维护,更重要的是利于综合器优化代码,利于用户添加合适的时序约束条件,利于布局布线器实现设计。显式的 FSM 描述方法可以描述任意的FSM(参考Verilog 第四版)P181 有限状态机的说明。两个 always 模块。其中一个是时序模块,一个为组合逻辑。时序模块设计与书上完全一致,表示状态转移,可分为同步与异步复位。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(1)
发评论
zhk_llm 2015-04-05
0 回复 举报
谢谢分享 收起回复

下载排行榜

全部1条评论

快来发表一下你的评论吧 !