以下两个示例在模拟方面有什么区别?
一种)
reg a;
initial a = 1'b0;
和
B)
reg a = 1'b0;
逻辑变量有什么不同吗?
最佳答案
不同之处在于初始化作为变量声明的一部分在任何 initial
或 always
构造启动的任何进程之前执行。如果你写道:
bit clk;
initial clk = 1;
always #5 clk++;
always @(posedge clk) ...;
@(posedge clk)
是否在时间 0 或时间 10 被触发存在竞争条件。但是:
bit clk = 1;
always #5 clk++;
always @(posedge clk) ...;
与上述没有竞争。第一个posedge将在10个时间单位出现。
关于verilog - 在 systemverilog 中使用初始块与初始化 reg 变量有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38445246/