TA的每日心情 | 开心 2019-11-19 15:19 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
关于状态机的浅谈 1 e& c/ L( S% p) J4 C
% o- I5 l/ M; Z
7 p ~: s. g6 }. C2 x4 I) T
很多时候对于状态机都感觉高深莫测,自己写了很多,但是别人问到的时候还是觉得这个东西怎么没有接触过,就像上次一个同学问我,moore状态机和mealy状态机哪个属于同步输出的,哪个属于异步输出的,我当时觉得只有在时钟上共用的同步概念,对于输出同步还真的不知道啊,后来回来查查书,书上关于状态机的描述和写法有一段式、两段式、三段式。
1 z0 d% U4 L% L$ B3 e9 b7 K7 k- e4 z$ Z% f; g5 r: k7 j ~. s8 e
一段式是把所有的逻辑和状态写在一个always里面,两段式是把状态转换和组合逻辑电路分开写,三段式是把状态转换、组合逻辑、输出时序分开写的,在看了夏老师的书中,真的有些害人 啊,没有给出综合区别。( n6 q, p3 G0 ^ H
: w6 _, r% [5 r
第一次看的时候真的以为是差不多的啊,但是自己做了之后综合的结果差异真的挺大的,三个写法综合之后有的是有寄存器的,有的是直接组合逻辑电路输出的,因此从这个上面就能够看书哪个是输出同步和输入同步啊,但是具体的moore和mealy如何来看,我还在继续中,希望和朋友们有所探讨。+ t/ g7 ~9 t, l) U
7 n( p+ ~7 L& x
关于状态机,其实并不深奥,就3个简单的单元:状态跳转(一定是时序逻辑)、状态跳转逻辑(一般是组合电路)、状态输出(是组合还是时序,取决于您的要求,复杂的状态机,甚至两者都会用到)。% C# C1 h6 H2 o0 a; F
|
|