小编use*_*151的帖子

如何在 SystemVerilog 中将变量值传递给宏?

我认为这个问题很好地概括了我想要的:将变量的值传递给 SystemVerilog 中的宏。

例如,我想要的:假设有 4 个名为 abc_X_def 的信号,我想将它们全部初始化为 0。所以,没有宏:

abc_0_def = 4'b0000;
abc_1_def = 4'b0000;
abc_2_def = 4'b0000;
abc_3_def = 4'b0000;
Run Code Online (Sandbox Code Playgroud)

现在,我编写的代码有问题:

`define set_value(bit) abc_``bit``_def = 4'b0000

for (int i = 0; i < 4; i++) begin
  `set_value(i);
end
Run Code Online (Sandbox Code Playgroud)

错误在于它试图找到信号 abc_i_def ,这显然是错误的。只是想知道是否可以将变量“i”的实际值传递给宏。

macros system-verilog

5
推荐指数
1
解决办法
3万
查看次数

标签 统计

macros ×1

system-verilog ×1