关于verilog中always块里阻塞赋值的问题

2019-07-16 01:14发布

本帖最后由 laihuadewuyu 于 2013-10-12 12:22 编辑

在用verilog hdl 编写代码的时候,为了得到一个上升沿突变信号,我这样处理的
always @ (posedge clk)
begin
sig_out=1‘b0;
sig_out=1’b1;
end
这样写有效果吗????
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
(金)
1楼-- · 2019-07-16 21:04
取反啊                sig_out=~sig_out
星夜听风
2楼-- · 2019-07-16 23:27
不知道楼主说的不是太清楚,突变信号是电平呢,还是脉冲?最简单的处理方法:
    always@(posedge clk)
       if(!rst)begin
           cnt <= 0;      pulseRst <= 0;
      end
      else begin
         cnt <= (cnt >5)?cnt:(cnt+1);
         pulseRst <= (cnt >2)?1:0;
      end
    以上给出的是一个上升沿电平信号;如果需要的是正脉冲,则只需要将“ pulseRst <= (cnt >2)?1:0;”改为“ pulseRst <=( (cnt >2)&&(cnt<4))?1:0;”即可。
   

一周热门 更多>