在C实现方面,Mealy和Moore状态机之间的区别是否有任何实际意义?通常会有什么不同?
很久以前,在RTL方面,我更容易理解Mealy/Moore的优缺点.整个输出取决于当前状态/输出取决于当前状态+当前输入差异是有意义的,因为在某些情况下Mealy可以用少1个状态制作也是有意义的.将时序图与每个FSM实现相关联也使它们之间的区别更加清晰.
假设我在C中制作状态机.在一种情况下,LUT取决于状态/电流输入(Mealy),而在Moore中,LUT只查找当前状态并返回下一个状态.在输出发生在LUT返回之后(我想,虽然我可能是错的).我没想到Mealy在用C编码时有明显的优势.代码可读性,速度,代码密度,设计简易等主题可能都是相关主题 - 从我的角度看,这两个模型看起来几乎相同.
也许这种差异只是学术界的一个主题 - 而在C实现中,差异可以忽略不计.如果你知道C状态机实现在Mealy和Moore之间的关键方式,并且如果有真正的优势(也很重要),我很想知道.我想强调一点 - 我不是在询问RTL实现.
我确实在这里看到了另一个Mealy/Moore帖子:Mealy v/s.穆尔
但这并不是我所寻求的解释水平.