题解 | #序列检测器(Moore型)#

序列检测器(Moore型)

https://www.nowcoder.com/practice/d5c5b853b892402ea80d27879b8fbfd6

`timescale 1ns/1ns

module det_moore(
   input                clk   ,
   input                rst_n ,
   input                din   ,
 
   output	reg         Y   
);
parameter s0=0;
parameter s1=1;
parameter s2=2;
parameter s3=3;
parameter s4=4; 
reg[3:0]state;
reg [3:0]next_state;
always@(posedge clk or negedge rst_n)
begin if(!rst_n)
  state<=0;
else state<=next_state;
end
always@(*)
begin if(!rst_n)
next_state=0;
else case(state)
   s0:if(din) next_state=s1; else next_state=s0;
   s1:if(din) next_state=s2; else next_state=s0;
   s2:if(din==0) next_state=s3; else next_state=s2;
   s3:if(din) next_state=s4; else next_state=s0;
   s4:if(din) next_state=s1; else next_state=s0;
   default:next_state=0;
endcase
end
always@(posedge clk or negedge rst_n)
begin if(!rst_n)
Y<=0;
else if(state==s4)
Y<=1;
else 
Y<=0;
end 
endmodule

全部评论

相关推荐

不愿透露姓名的神秘牛友
06-05 15:27
点赞 评论 收藏
分享
那一天的Java_Java起来:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
长鑫存储
投递长鑫存储等公司6个岗位 >
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务