我正在尝试制作一个取决于信号的计数器。信号在两个周期内为高电平,在接下来的两个周期内为低电平,并且一直持续到结束。在高脉冲期间,计数应从 0、1 开始。当脉冲为低电平时,计数为'x,从下一个高电平开始,它从 2、3 开始,然后再次为 'x 两个周期(仅在脉冲为高电平时向上计数),然后再次为 4、5。我是 Verilog 的新手,这是一个任务。
当我编写以下代码时,我总是得到计数 1 2 x 1 2 x。有什么帮助吗?
always@(posedge clk or posedge rst)
If(rst)
Count <= 0;
else
Count <= signal;
assign signal = pulse ? Count + 1: 'x;
我得到 1 2 x x1 2 xx 而不是。1 2 xx 3 4 xx 5 6 xx 等。任何帮助表示赞赏。