我有一个参数如下:
parameter PARAM = 7'd69;
当我尝试将该值分配给下面的寄存器时:
reg [6:0] r;
像这样:
r <= PARAM;
我得到综合警告:
警告(10230):...大小为32的截断值,以匹配目标大小(7)
-
我假设这是因为PARAM被解释为整数,因为它被定义为参数。 有没有办法将PARAM定义为7位宽?
我总是可以将其作为7位输入传递给我的模块,但我想知道是否有更优雅的解决方案。
答案 0 :(得分:9)
您可以按如下方式定义参数:
parameter [6:0]PARAM = 7'd69;
这样你告诉你的编译器PARAM
大小是7位。