我想忽略 SystemVerilog 中模块的数组参数中的一位或多位。
module x(in a, out [0:3] z);
...
endmodule
module tb;
logic my_a;
logic [1:3] my_z;
// I want to stop having to do this next line:
logic ignore_this_bit;
x myx(.a(my_a), .z({ignore_this_bit, my_z}));
endmodule
Run Code Online (Sandbox Code Playgroud)
执行此操作的正确语法是什么?我一直按照上面所示的方式进行操作,并声明ignore_this_bit并且从未连接到该网络。但似乎应该有一个更简单的方法。比如在模块实例化的参数中只使用逗号而不使用变量名,或者可能使用类似的东西1'bX而不是输出参数位,或者类似的东西。
这是否受到我在此处对向量使用大端位排序这一事实的影响?(我讨厌它,但我正在为使用该顺序的旧 CPU 构建代码,并且将我的代码与现有代码匹配比修复它更容易。)
这是一个很难寻找的概念,但我已经尝试过。有谁拥有专业知识可以帮助我知道如何“以正确的方式”做到这一点?谢谢。