如何在Verilog中定义带参数的模块?
我想定义一个带有参数的 add
模块,但我对新实例的声明不太顺利。
我想定义此模块的一个实例:
module add #(parameter wd=1) (input wire [wd-1:0] a,b, output wire [wd-1:0] o);
assign o = a + b;
endmodule
我尝试了这一行,但收到错误:
add len_plus_1 #(8)(.a(len),.b(8'h1),.o(lenPlus1));
I want to define an add
module which has a parameter, but my declaration of the new instance doesn't go well.
I want to define an instance of this module:
module add #(parameter wd=1) (input wire [wd-1:0] a,b, output wire [wd-1:0] o);
assign o = a + b;
endmodule
I tried this line, but I get an error:
add len_plus_1 #(8)(.a(len),.b(8'h1),.o(lenPlus1));
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
实例名称必须位于参数说明符之后:
此语法在 IEEE 标准(例如 1800-2009)中指定。
The instance name must come after the parameter specifier:
This syntax is specified in the IEEE Standard (1800-2009, for example).