在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4705|回复: 6

[讨论] 什么时候用状态机?

[复制链接]
发表于 2017-11-7 16:20:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
在一些情况下,不用状态机也可以,用状态机也行,那我们到底是用状态机呢还是不用呢?有什么判断标准吗?
发表于 2017-11-8 08:43:06 | 显示全部楼层
其实,逻辑稍微复杂一点的时候,你感觉有点理不清的时候,就可以用状态机了。
用了状态机,反倒会觉得思路没那么混乱了,虽然写的时候麻烦一些。
因此,不要怕麻烦。
发表于 2017-11-8 09:22:17 | 显示全部楼层
我说一下我的感觉,希望有大牛来拍砖。

用状态机思路会很清晰,写代码的速度也会提高,但有时要用二三十个状态导致状态位有5bit之多;
用状态机好像不利于综合时clock gate的插入。
发表于 2017-11-8 17:22:51 | 显示全部楼层
状态机要一分为二看,一方面可以简化设计思路,有些太过复杂的不用状态机几乎很难实现;另一方面,状态机考虑不周,或者约束不好,一旦进入不可恢复态,则死在那里,只能复位解决
发表于 2017-11-8 22:48:22 | 显示全部楼层
学习了
发表于 2017-11-9 14:56:20 | 显示全部楼层
其实最重要的就一点,代码写出来是给人读的,只要每个人都看得懂,随便哪种写法都可以。
发表于 2017-11-10 23:04:13 | 显示全部楼层
其实呢,涉及阻塞式顺序操作,你无论用不用状态机,其实实现出来的电路都差不多,用状态机的好处是某些复杂思维可以很明显展示出来,例如先读取到有信息,再从相关缓存里取数据这种,这2部操作,不用状态机会导致代码不易读,维护起来也蛋疼,如果让人接手就更无语了;
但是类似一个计数器的开始与停止,完全可以用一个enable信号去控制,你可以理解为这个enable也是个2态fsm,只是不用常用fsm写法去写,别人也能轻易看懂这个意思,这种就没必要用fsm写法去做;
至于n段式状态机,那个和应用无关,只是fsm的电路实现形式而已,通常用3段式,会让电路性能优越一些;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-3-28 17:16 , Processed in 0.024111 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表