0

我正在寻找一种方法,以便我可以将来自 nios 的输入值作为参数发送到 verilog 模块。

或者

从输入分配verilog参数的任何其他方式。

4

2 回答 2

2

它当然不能传递参数,因为这些选项会改变 Verilog 在合成时的行为(即在您将其加载到芯片之前)。你的意思是问如何使用NIOS II设置输入值?

于 2013-03-01T06:06:33.563 回答
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
于 2013-03-01T07:00:56.403 回答