一个简单的上升沿检测代码:
reg RS_r1,RS_r2;
always @ (posedge CLKIN or posedge RESET)
if(RESET)
RS_r1 <= 1'b0;
else
RS_r1 <= RS;
always @ (posedge CLKIN or posedge RESET)
if(RESET)
RS_r2 <= 1'b0;
else
RS_r2 <= RS_r1;
wire pos_RS = RS_r1 & ~RS_r2;
然后我们使用pos_RS来在其他模块里做判断使用,
但这种方法实际检测到的上升沿会比实际上升沿延迟2个时钟
那用下面的方法不就可以直接检测上升沿了吗?
always @ (posedge RS or posedge RESET)//直接检测RS上升沿
这两种方法有什么具体区别吗?
一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!