verilog - @(posedge Clk) 之间的区别; a<= 1'b1; and @(posedge Clk) a<= 1' b1;

标签 verilog system-verilog

有什么区别吗

@(posedge Clk);
   a<= 1'b1;


@(posedge Clk)
   a<= 1'b1;

注意 Clk 后面的分号。我在浏览测试平台时遇到了类似的代码行。我做了一些简单的实验,在模拟过程中我找不到任何差异。由于分号的存在/不存在,这些行后面的代码的执行顺序是否会发生任何变化?

最佳答案

你是对的 - 没有行为差异。

分号版本是:WAITING。做这个。
非分号版本是:WAITING然后执行此操作。您有时会在单行中看到这种形式:

@(posedge Clk) a<= 1'b1;

关于verilog - @(posedge Clk) 之间的区别; a<= 1'b1; and @(posedge Clk) a<= 1' b1;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8909899/

相关文章:

typedef - 为什么在 verilog 中使用 typedef 时出现语法错误?

verilog - 如何使用 ModelSim 查看波形中定点数的实际值? (系统Verilog)

verilog - SystemVerilog `force` 是如何工作的?

system-verilog - 隐式网络类型声明和`default-nettype

c - C 中对 `main' 的 undefined reference

system-verilog - 通过 SystemVerilog DPI-C 层传递 C 结构

verilog - 究竟何时使用 "assign"关键字以及何时使用 "<="运算符?

verilog - Verilog 中始终后面跟着 #(...) pound 是什么意思?

constants - 在函数/任务范围内定义常量的最佳方法

testing - 使用 System-Verilog 进行串行测试台架和断言