我的代码中有一个表达式,如下面的代码所示。我正在Modelsim中编写此代码,这是一个Verilog模块。编译器发出警告,如标题所示。我已经在互联网上进行了搜索,但找不到任何参考。请注意,当我删除关键字“参数”时,此警告消失了。我必须保持关键字参数不变,因为我想保持不变。
parameter reg [4:0]REG_MIN = 5'b00000; // Address of Minimum register <br/>
parameter reg [4:0]REG_MAX = 5'b10110; // Address of Maximum register
答案 0 :(得分:2)
Verilog不允许指定参数的数据类型,但SystemVerilog允许。确保您的文件具有* .sv文件扩展名。否则,参数采用RHS中的类型。
答案 1 :(得分:0)
实际上想在此问题的背景上添加一些内容。 源代码用于芯片设计(数字ASIC)。问题是,我们必须仅使用一个许可证进行综合,即Verilog或Systemverilog。我知道,可以将此语句保留在代码中,这是可以的,因为编译器没有抱怨,只是警告,但是在合成时,该警告将转换为错误。因此,安全比后悔好。