Intel® Quartus® Prime Software
Intel® Quartus® Prime Design Software, Design Entry, Synthesis, Simulation, Verification, Timing Analysis, System Design (Platform Designer, formerly Qsys)
16682 Discussions

lpm mult with Quartus II 10.0?

Altera_Forum
Honored Contributor II
2,304 Views

I haven't used Altera tools for ages, but I'm working on a Cyclone 3 design now, so I'm trying to understand them. 

 

The design is going to use many 20x20 signed multipliers. I had hoped that the synthesizer would be able to infer a 20 x 20 that used one 18 x 18, and did the rest in fabric, but I couldn't get that to work. 

 

I used the MegaWizard with the LPM_MULT. I set the Optimization to "Area" (otherwise it uses nothing but hardware multipliers) and set the latency to three (to allow some pipelining for the addition of the two 2x20 mults in fabric) and it seems to do pretty much what I expected. That was with Quartus 9.1. 

 

If I try to repeat this with Quartus 10, it won't let me set the latency to three. If I set it to two it does what I would expect, and runs too slow (as I would expect). 

 

Any idea what's going on? Am I being dumb, or are the tools broken?
0 Kudos
5 Replies
Altera_Forum
Honored Contributor II
1,372 Views

seems like a bug with the new GUI, it should probably be <= 3 or < 4 

 

after you generate your multiplier go into the .vhd and change the pipeline from 2 to 3. based on the fmax it seems like it took properly 

 

 

completely unrelated, i'd advise you to change your forum username, you might be a spam target with your email out in the open like that
0 Kudos
Altera_Forum
Honored Contributor II
1,372 Views

line 83: 

 

from: 

lpm_pipeline => 2, 

 

to: 

lpm_pipeline => 3,
0 Kudos
Altera_Forum
Honored Contributor II
1,372 Views

 

--- Quote Start ---  

 

after you generate your multiplier go into the .vhd and change the pipeline from 2 to 3. based on the fmax it seems like it took properly 

 

completely unrelated, i'd advise you to change your forum username, you might be a spam target with your email out in the open like that 

--- Quote End ---  

 

 

That worked. Thanks. 

Two related questions. 

Is there any way I can encourage inference of the structure I want, or am I stuck with the MegaWizard? 

 

How do I change my username (I poked around and couldn't find any obvious way)? 

 

Thanks 

 

Pete
0 Kudos
Altera_Forum
Honored Contributor II
1,372 Views

i think you can take the instantiation of the lpm function out of the generated HDL that you edited, and use that component declaration and instantiation in your own HDL. you can probably even change parameters, just make sure they are legal since this is normally taken care of by the wizard. 

 

you'll probably spend more time than you'd like writing HDL that will do the same as the MegaWizard (as far as performance and resource usage are concerned)
0 Kudos
Altera_Forum
Honored Contributor II
1,372 Views

I think you'll have to mail the forum admins about your username.

0 Kudos
Reply