arrays - Verilog:在分层路径中使用数组元素

标签 arrays verilog system-verilog

我的问题是关于如何在 Verilog (SystemVerilog) 的分层路径中使用预定义的数组元素。

例如,我定义了以下字符串数组:

string my_modules [0:1] = {"my_module_0","my_module_1"};

之后,在我的代码中,我尝试在某些层次结构中使用它们:

generate
for (genvar i = 0; i < 2; i++) begin: BLOCK
    wire a = top_module.my_modules[i].a;
end
endgenerate

但是我遇到了模拟错误,因为它找不到层次结构,因为它正在寻找 my_modules 模块而不是其定义的值(即 my_module_0 my_module_1)。

有人可以就此提出建议吗?

谢谢。

最佳答案

我尝试使用 NCVerilog,只需稍作修改即可得到结果。

generate
for (genvar i = 0; i < 2; i++) begin: BLOCK
    wire a = top_module.my_modules[i][0];
end
endgenerate
  1. 没有 my_modules[i].a。字符串类型怎么可能有子字段a
  2. 我将 [0] 附加到 my_modules[i],因为 my_modules[i] 是字符串类型。

关于arrays - Verilog:在分层路径中使用数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25481663/

相关文章:

verilog - 如何在系统verilog中使用枚举中的算术表达式?

sum - Verilog 中的 BCD 加法器

arrays - 在 SystemVerilog 中将动态位数组格式化为字符串

interface - 使用接口(interface)宽度和 $size 自动 SystemVerilog 可变大小?

arrays - 覆盖 systemverilog 中结构数组参数的大小

javascript - [] == ![] 计算结果为真

C++ 返回数组并将其分配给变量

verilog - 异步 FIFO 设计

c++ - ptrdiff_t 可以表示指向同一数组对象的元素的指针的所有减法吗?

arrays - MongoDB查询以在数组中查找具有重复值的文档