题解 | #输入序列不连续的序列检测#

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

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
	);

reg [3:0] datareg;

always @(posedge clk or negedge rst_n)
	begin
		if(~rst_n)
			begin
				datareg <= 0;
			end
		else
			begin
				if(data_valid)
					datareg <= {datareg[2:0],data};
				else
					datareg <= datareg;
			end
	end

always @(posedge clk or negedge rst_n)
	begin
		if(~rst_n)
			begin
				match <= 0;
			end
		else
			begin
				if(datareg == 3'b011 && data ==0 && data_valid)
					match <= 1;
				else
					match <= 0;
			end
	end

endmodule

全部评论

相关推荐

牛客62533758...:华为不卡双非,而是卡院校hhhh
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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