Altera_Forum
Honored Contributor
14 years ago"LPM_MULT" Modelsim simulation problem
I defined a LPM_MULT in my vhdl design as follows:
--################################## COMPONENT LPM_MULT GENERIC ( LPM_WIDTHA : NATURAL; LPM_WIDTHB : NATURAL; LPM_WIDTHS : NATURAL := 1; LPM_WIDTHP : NATURAL; MAXIMIZE_SPEED : NATURAL := 8; LPM_REPRESENTATION : STRING := "UNSIGNED"; DEDICATED_MULTIPLIER_CIRCUITRY : STRING := "YES"; INPUT_B_IS_CONSTANT : STRING := "NO"; LPM_PIPELINE : NATURAL := 0; LPM_TYPE : STRING := "L_MULT"; LPM_HINT : STRING := "UNUSED"); PORT ( DATAA : IN STD_LOGIC_VECTOR(LPM_WIDTHA-1 DOWNTO 0); DATAB : IN STD_LOGIC_VECTOR(LPM_WIDTHB-1 DOWNTO 0); ACLR : IN STD_LOGIC := '0'; CLOCK : IN STD_LOGIC := '0'; CLKEN : IN STD_LOGIC := '1'; SUM : IN STD_LOGIC_VECTOR(LPM_WIDTHS-1 DOWNTO 0) := (OTHERS=> '0'); RESULT : OUT STD_LOGIC_VECTOR(LPM_WIDTHP-1 DOWNTO 0) ); END COMPONENT; --############################################### then i mapped the component as follows: mult_icos : LPM_MULT GENERIC MAP( LPM_WIDTHA => 6, LPM_WIDTHB => 8, LPM_WIDTHS => 1, LPM_WIDTHP => 8+6, MAXIMIZE_SPEED => 9, LPM_REPRESENTATION => "SIGNED", DEDICATED_MULTIPLIER_CIRCUITRY => "YES", INPUT_B_IS_CONSTANT => "YES", LPM_PIPELINE => 1, LPM_TYPE => "L_MULT", LPM_HINT => "UNUSED") PORT MAP( DATAA => Iin_reg, DATAB => cos_in_reg, ACLR => reset, CLOCK => clock, CLKEN => resetn, SUM => (OTHERS=> '0'), RESULT => icos ); I writed a testbench and simulated the vhdl code in modelsim. I added the lpm, altera, altera_mf and sgate libraries to modelsim, and simulated the project, then prompted the warning: component instance "mult_icos: lpm_mult " is not bound. I ignored the warning and started simulation. I analyzed the simulation result when the simulation proess was over, and found that the lpm_mult didn't work. I don't know why the lpm_mult doesn't work. Do I miss any libraries or other anyhow questions? Can somebody help me? Thanks a lot.