题解 | #输入序列不连续的序列检测#未使用fsm

输入序列不连续的序列检测

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

`timescale 1ns/1ns
module sequence_detect(
	input clk,
	input rst_n,
	input data,
	input data_valid,
	output reg match
	);
// 0110
reg [3:0] data_ray;
always @(posedge clk or negedge rst_n) begin
    if (~rst_n) begin
        match <= 0;
        data_ray <= 0;
    end
    else begin
        if (data_valid)
            data_ray <= {data_ray[2:0],data};
			if (data_ray[2:0]==3'b011&& (~data))
				match <= 1;
        if (match)
            match <= 0;
    end
end

  
endmodule

match的时序需提前一个时钟周期

全部评论

相关推荐

02-10 12:23
已编辑
新余学院 C++
采集想要offer:专业技能那里要一条一条的列出来吧,感觉你项目很厉害了,但是如果你不写技术栈面试官对你项目不太懂的话都没办法问你八股😂C++都是基架岗,都是一群9✌🏻在卷,我觉得你要是有时间学个go把MySQL和redis写上去找个开发岗吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务