总是阻止@posedge 时钟

kra*_*cks 5 verilog clock

让我们以下面的示例代码为例:

always @(posedge clock)
   begin
   if (reset == 1)
     begin
        something <= 0
     end
   end
Run Code Online (Sandbox Code Playgroud)

现在假设重置从 0 更改为 1,同时时钟有一个posedge。那个时候会<= 0吗?或者下次有时钟的posedge时会发生这种情况(假设重置保持在1)?

too*_*lic 3

这具体取决于reset驱动方式。

如果resetsomething均由同一时钟触发,则在复位变为 1 后的一个时钟周期内某些内容将变为 0。例如:

always @(posedge clock)
   begin
   if (somethingelse)
     begin
        reset <= 1;
     end
   end
Run Code Online (Sandbox Code Playgroud)