En Quartus ii schematic diagram
, he generado un lpm_ff
. Entonces he convertido el diseño a un archivo .v. cuando quiero usar este flip-flop en un módulo, se compila sin problemas, pero cuando quiero simularlo con modelsim
recibo este error para todo defparams
en el código en el:
Error: (vsim-10000) C: /.../ lpm_ff_8.v (30): defparam no resuelto referencia a 'LPM_WIDTH' en lpm_instance.LPM_WIDTH.
Aquí está el código de ff
que generó Quartus:
module lpm_ff_8(clock,sload,data,q);
input clock;
input sload;
input [15:0] data;
output [15:0] q;
lpm_ff lpm_instance(.clock(clock),.sload(sload),.data(data),.q(q));
defparam lpm_instance.LPM_AVALUE = 1;
defparam lpm_instance.LPM_FFTYPE = "DFF";
defparam lpm_instance.LPM_SVALUE = 0;
defparam lpmi_nstance.LPM_WIDTH = 16;
endmodule
Y el módulo que uso este flip-flop en él:
module test(input [15:0] a, clk, output reg [15:0] q);
lpm_ff_8 regg(.data(a), .clock(clk), .q(q));
endmodule
module testTB();
reg [15:0] a;
reg clk;
wire [15:0] q;
test t(a, clk, q);
initial begin
#15 clk = 1;
end
endmodule
También agrego la biblioteca lpm_ver cuando quiero simular. Entonces, ¿puedes ayudarme a encontrar qué hay de malo con este código?