Verilog:将寄存器分配给寄存器
在下面的Verilog分配中,寄存器rotationDoneR分配给信号,然后另一个寄存器rotationDoneRR分配给同一个寄存器。这难道不意味着两个寄存器持有相同的值,并且条件永远不会为真吗Verilog:将寄存器分配给寄存器,verilog,variable-assignment,Verilog,Variable Assignment,在下面的Verilog分配中,寄存器rotationDoneR分配给信号,然后另一个寄存器rotationDoneRR分配给同一个寄存器。这难道不意味着两个寄存器持有相同的值,并且条件永远不会为真吗 input wire RotationDone; // from the module definition reg rotationDoneR; reg rotationDoneRR; rotationDoneR <= RotationDone; rotationDoneRR <
input wire RotationDone; // from the module definition
reg rotationDoneR;
reg rotationDoneRR;
rotationDoneR <= RotationDone;
rotationDoneRR <= rotationDoneR;
if ( rotationDoneR && (! rotationDoneRR ) ) begin
InterruptToCPU <= 1;
end
谢谢你的澄清 我假设代码中存在一些基于计时事件边缘的程序块
当您有非阻塞分配时
// synthesize to simple wire
a = inp;
b = a;
// synthesize to shift register
a <= inp;
b <= a;