Exams/ece241 2013 q8——Mealy型和Moore型FSM的比较

编程入门 行业动态 更新时间:2024-10-26 23:33:39

<a href=https://www.elefans.com/category/jswz/34/1684461.html style=Exams/ece241 2013 q8——Mealy型和Moore型FSM的比较"/>

Exams/ece241 2013 q8——Mealy型和Moore型FSM的比较

1、实现一个Mealy类型的有限状态机,识别名为x的输入信号上的序列“101”。FSM应该有一个输出信号z,当检测到“101”序列时,该信号被断言为logic-1。您的FSM也应该有一个有效的低异步复位。您的状态机中可能只有3个状态。FSM应该识别重叠序列。

这一题我设置了四种状态,none,one,two,xxx; 

首先,当areset异步置零时,state回到初始态xxx,等待接收x=1的信号。

state=xxx,当x=1时,state变为none,若x=0,则保持xxx;(初始信号)

state=none,当x=1时,保持none,若x=0,则state变为one; (检测x=1信号)

state=one,当x=1时,state变为two,若x=0,则回到xxx,重新等待1; (检测x=0信号)

state=two,当x=1时,state变为none,若x=0,则保持one(开始新一轮的101检测);

这一题易错在最后的输出z的判断,一开始我写的是state==two,即接收到101后,z为1.但报错,从波形图看出,z=1与“101”最后一个1的出现是同步的,所以这里改成了next_state==two时就输出z=1;

module top_module (input clk,input aresetn,    // Asynchronous active-low resetinput x,output z ); parameter none=0,one=1,two=2,xxx=3;reg [1:0] state,next_state;always @(posedge clk,negedge aresetn)beginif(aresetn==0) state<=xxx;else state<=next_state;endalways @(*)begin case(state)none:next_state<=(x)? none:one; one:next_state<=(x)? two:xxx;xxx:next_state<=(x)? none:xxx; two:next_state<=(x)? none:one; endcaseend assign z = (next_state==two);endmodule

写完才发现,说是merely机我还是写成了moore机了。。。

merely应该和当前输入有关,而我这里的输出只有状态就能判定了,应该不对。

于是又重新尝试了merely机的写法

和上面类似,只是减少了一个状态,修改了z的判断方法,当state=one时意味着已经接受到了10,而此时若x=1,就可以直接判断并输出z=1;

这就和输入扯上关系了就。而且更符合题意,并且可以看到确实输出领先Moore机。

module top_module (input clk,input aresetn,    // Asynchronous active-low resetinput x,output z ); parameter none=0,one=1,xxx=2;reg [1:0] state,next_state;always @(posedge clk,negedge aresetn)beginif(aresetn==0) state<=xxx;else state<=next_state;endalways @(*)begin case(state)none:next_state<=(x)? none:one; one:next_state<=(x)? none:xxx;xxx:next_state<=(x)? none:xxx; endcaseend assign z = ( state==one&&x==1);endmodule

看到别人的总结记个笔记

1、 Moore型的输出只与当前状态有关,而Mealy型的输出和输入、当前状态都相关。

2.、在实现相同功能的情况下,Mealy型状态机所需要的状态数比Moore型少,Moore需要待状态稳定才输出。

3、输出时序上,Moore状态机同步输出,Mealy状态机异步输出;

4、输出变化上,Mealy状态机比Moore状态机领先一个时钟周期;

更多推荐

Exams/ece241 2013 q8——Mealy型和Moore型FSM的比较

本文发布于:2024-03-08 00:55:43,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1719413.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Exams   FSM   Moore   Mealy

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!