我正在寻找一种方法,以便我可以将来自nios的输入值作为参数发送到verilog模块。
或
从输入中分配verilog参数的任何其他方法。
答案 0 :(得分:2)
它肯定无法传递参数,因为这些选项会在合成时(即在您将其加载到芯片之前)改变Verilog的行为。您是想询问如何使用NIOS II设置输入值吗?
答案 1 :(得分:2)
正如Ben Jackson已经提到的,参数是常量而且在运行时无法更改。您需要的是低位宽输入,它从查找表(LUT)中选择预定义值。
module lut(
input [1:0] sel,
output [31:0] val
);
localparam CLOCK1 = 1500 ;
localparam CLOCK2 = 3600 ;
localparam CLOCK3 = 3564 ;
localparam CLOCK4 = 4048 ;
always @* begin
case (sel)
2'b00 : val = CLOCK1;
2'b01 : val = CLOCK2;
2'b10 : val = CLOCK3;
2'b11 : val = CLOCK4;
endcase
end