边缘检测后如何保持输出一直为1

[复制链接]
1673|4
 楼主| aikimi7 发表于 2013-3-17 14:01 | 显示全部楼层 |阅读模式
我检测一个信号上升沿之后,想保持输出一直为高电平,怎么做呢?因为后续电路想让它一直为高电平。。。我是不是可以在边缘检测电路中增加一个操作,把一个寄存器置为1.
module VREF_posedge_detection (
   input  LLC,
   input  rst_n,
   input  VREF,
   output o_rising_edge
);

reg VREF_in0;
reg VREF_in1;

assign o_rising_edge = ~VREF_in0 & VREF_in1;

always@(posedge LLC or negedge rst_n) begin
   if (!rst_n) begin
     VREF_in0 <= 1'b0;
     VREF_in1 <= 1'b0;
   end
   else begin
     VREF_in0 <= VREF_in1;
     VREF_in1 <= i_data_in;
   end
end

endmodule


GoldSunMonkey 发表于 2013-3-17 20:34 | 显示全部楼层
比方设一个计数器,让计数器开始为0,然后上升沿以后为1,然后保持1不动即可
 楼主| aikimi7 发表于 2013-3-18 09:38 | 显示全部楼层
GoldSunMonkey 发表于 2013-3-17 20:34
比方设一个计数器,让计数器开始为0,然后上升沿以后为1,然后保持1不动即可 ...

谢谢猴哥的方法。。
我在上面的边沿检测中增加了这么一段:
always@(posedge LLC or negedge rst_n)
   if (!rst_n)
     VREF_flag <= 1'b0;
   else if (o_rising_edge)
     VREF_flag <= 1'b1;
好像也可以,就是打了一拍,猴哥,你觉得呢?
GoldSunMonkey 发表于 2013-3-18 17:00 | 显示全部楼层
aikimi7 发表于 2013-3-18 09:38
谢谢猴哥的方法。。
我在上面的边沿检测中增加了这么一段:
always@(posedge LLC or negedge rst_n)

嗯,就是2进制计数器嘛
feihong777 发表于 2013-3-18 17:19 | 显示全部楼层
GoldSunMonkey 发表于 2013-3-18 17:00
嗯,就是2进制计数器嘛

V5
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

136

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部