【发布时间】:2021-03-24 17:47:20
【问题描述】:
我最初有一个“params_list.v”文件,其中列出了多个全局约束
// params_list.v file
localparam
parameter1 = 18'h00AB,
parameter2 = 18'h00CD;
参数在特定模块中使用如下所示
// design_main_ORIGINAL.v file
module my_module
`include "params_list.v"
assign reg1 = parameter1[4:0];
assign reg2 = parameter2[4:0];
endmodule
原来的“params_list.v”文件被分成了多个头文件“header1.vh”、“header2.vh”,
其中一个文件的定义如下所示
// header1.vh
`ifndef _header1_vh_
`define _header1_vh_
`define param1 18'h00AB
`define param2 18'h00CD
`endif
然后使用以下行将头文件包含在主设计文件 (*.v) 中
// design_main_NEW.v file
`include “header1.vh”
`include “header2.vh”
module module_xyz(
assign reg1 = param1[4:0];
assign reg2 = param2[4:0];
);
endmodule
编译时不断出现如下错误
** 错误:(vlog-13069) C:/my_path/main_module.v(440): near "[": 语法错误,意外的'['。
如果您能说明我可能遗漏的内容,我们将不胜感激。
【问题讨论】:
标签: verilog system-verilog modelsim