verilog写题笔记26-------含有无关项的序列检测

含有无关项的序列检测

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

3个输入:
1、时钟信号clk
2、复位信号rst_n
3、串行数据a
一个输出
检测合格标志位match
这个题跟上一道题没有任何区别,有无关项那我们就在判断的时候不判断无关项就好了。移位储存并检测的方法是一样的,这个题直接上代码了,如果不理解可以看我上一道题的帖子。
`timescale 1ns/1ns
module sequence_detect(
	input clk,
	input rst_n,
	input a,
	output reg match
	);

  parameter a_reg_true = 'b011000110;	//这里保证前三位和后三位是题目要求就好,中间三位可以随便填,我用了000来占位。

reg [8:0] a_reg;
	
initial 
	begin
		a_reg = 9'b000000000;
	end
	
	
always@(posedge clk or negedge rst_n)           //移位存储
	if(rst_n == 1'b0)
		a_reg <= 9'd0;
	else 
		a_reg <= {a,a_reg[8:1]};
		
always@(posedge clk or negedge rst_n)           
	if(rst_n == 1'b0)
		match <= 1'b0;
	else if(a_reg[8:6] == a_reg_true[8:6] && a_reg[2:0] == a_reg_true[2:0])  //只检测前三位和后三位就好了
		match <= 1'b1;
	else
		match <= 1'b0;
    
endmodule


verilog写题笔记 文章被收录于专栏

写Verilog题目的一些笔记备忘

全部评论

相关推荐

在秋招的河老师很爱吃:40岁失业 假如22岁开始工作 18年前 2007年那个时候如何 2015年开始互联网爆发 这个时候有了8年经验 然后黄金10年 你想想这些年挣了多少 这要是进的时候某个大厂 这辈子根本花不完了
你找实习最大的坎坷是什么
点赞 评论 收藏
分享
牛客96763241...:杭电✌️也是打完招呼,没人回吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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