「Verilog学习笔记」状态机-非重叠的序列检测

专栏前言

本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网

根据题意 定义一个五位的中间变量lock 每次始终上升沿来临时 判断当前寄存器的低四位+新数据是否等于10111 如果等于 则下一时刻lock应被清空 否则lock等于当前的lock的低四位+新数据

复制代码
`timescale 1ns/1ns

module sequence_test1(
	input wire clk  ,
	input wire rst  ,
	input wire data ,
	output reg flag
);
//*************code***********//
	reg [4:0] lock ; 

	always @ (posedge clk or negedge rst) begin
		if (~rst) lock <= 'd0 ; 
		else 
			if ({lock[3:0], data} == 5'b10111) lock <= 'd0 ; 
			else lock <= {lock[3:0], data} ;
	end

	always @ (posedge clk or negedge rst) begin
		if (~rst) flag <= 'd0 ; 
		else 
			if ({lock[3:0], data} == 5'b10111) flag <= 1'd1 ; 
			else flag <= 'd0 ;
	end

//*************code***********//
endmodule
相关推荐
~城南花已开~4 小时前
Intel E810 SR-IOV VF Spoofcheck 防伪造测试-KVM3
服务器·网络·笔记·学习·ubuntu·etl工程师
hss123456785 小时前
天津婚房装修怎么选:从整装、定制到全案落地的技术决策框架
笔记
职豚求职小程序刷题5 小时前
中国平安社招IQ测评+16PF怎么准备?
笔记
春和景明3605 小时前
27号笔记
笔记
志尊宝5 小时前
AI原生前端开发(028):AI辅助的调试与错误修复
人工智能·笔记·重构·ai-native
宽容人厚载物5 小时前
芯驰 E3620 XTRG 配置笔记:EB 配置、典型实例与注意事项
笔记
我命由我123457 小时前
6-3.Python 异常处理 - 异常处理进阶(else 块与 finally 块、异常传递、自定义异常)
开发语言·前端·数据库·后端·python·学习·java-ee
熊猫钓鱼>_>7 小时前
端侧 NPU 轻量大模型推理接入笔记【鸿蒙心迹】
开发语言·笔记·华为·ai编程·harmonyos·鸿蒙
外收内放7 小时前
FastAPI猜字谜实战(8):收官
开发语言·python·学习·fastapi
David猪大卫7 小时前
【C++修炼】STL容器—stack与queue
c语言·开发语言·数据结构·c++·经验分享·笔记·学习