Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

Quartus 10.0 lpm modules

Hi all,

this has been treated here and that. Also a pool has been set by tentner (Should the lpm_counter and lpm_add_sub-megafunctions, etc. return to the MegaWizard?)

The release notes of QII 10.0 state:

"The MegaWizard Plug-In Manager no longer supports the following megafunctions: ALT3PRAM, ALTACCUMULATE,

ALTGXB, ALTSHIFT_TAPS, ALTSQRT, LPM_ABS, LPM_ADD_SUB, ....

You can compile designs that include the above megafunctions in the Quartus II software version 10.0, but you cannot create new instances or edit existing variations of these megafunctions."

The first questions are:

If the LPM_ADD_SUB and similar modules are no more available. Which should be the usage of the schematic editor according to Altera ideas?

Is there a plan to remove the schematic editor from future QuartusII releases?

I don't see the utility of a schematic editor where you can only instantiate basic AND, OR and NOT gates and complex components such as FP units (the ALT megacores).

Which are your ideas?

Further there things that are not clear to me. It seems the the above LPM components are still in the Megafunction libraries and it is possible to instantiate them, even if the Megawizard doesn't show them.

This is an example of usage of the LPM_ADD_SUB

I created a new Project in QuartusII 10.0 web edition.

The chosen device is a StratixII.

When I go through the symbol list in a newly created schematic file I can still see the LPM_ADD_SUB, LPM_COUNTER etc.

I can also place them on the schematic.

The difference with 9.1 is that the Launch Megawizard plug in checkbox is not enabled.

In QII 9.1 the placing the component automatically launches the Megawizard plug in Manager.

I can set bus width, pipelining, ADD/SUB etc. At the end I get a nice symbol that respects my whishes..

After "creating an HDL design file from current file" and added a test bench. The modelsim simulation works correctly.

The LE occupation is 8ALUTs in arithmetic mode and 24 pins.

In QII 10.0 the LPM_ADD_SUB component is not targeted to my wishes but a table is present on the right upper corner where the LPM parameters are shown.

I can also change them.

As example I can state that some I/O are not used in my design. The names disappear from the symbol but the signal lines are still there.

I can create an HDL file from the circuit.

The problems I found are the following:

1) Setting the parameters is cumbersome. Column width is too narrow ti read what you're going to select. Further for certain parameters it is not clear what to write.

For pipeline, as example, I set "NO" but this resulted in an error. It wants 0 if you want a circuit without pipelining.

2) The generated Verilog HDL cope recalls an empty lpm_add_sub0 module. I delete the call.

After these steps the project has been synthesized providing the same results as QII 9.1 and the ModelSim simulation is also working.

The above described project is added to this

So my last question is: Why the LPM_ADD_SUB is still instantiable if not supported by Megawizard?

Thx and sorry for the length of the post.

13 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    In my humble opinion the most important functions are:

    lpm_add_sub

    lpm_counter

    lpm_shift_reg

    Please note that

    lpm_shift_reg has not been cited in previous posts.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Hi,

    I'm also missing the lpm modules in the latest Quartus Version.

    I was looking foreward to 10.0 in order to be able to use Quartus under windows 7 but no, I'm very disapointed because of the missing support for the LPM modules.

    Our main project is now about 8 years old and it is still maintained and improved. The last big step for us was the porting from Nios to Nios II which now works nice. And now, again with another Quartus Version, I'm not able to use the known and proven functionality as I was used to be. This is very anoying to me that with every new Quartus Version not only new device support is added but also some functionalities are changed completely or some components are totally removed.

    I myself also miss the lpm_constant module because I liked to use this in combination with the in system memory content editor. This was the initial thing I wanted to do with my brand new Quartus 10 on windows 7 but it is not working anymore.

    I'm very disappointed! I would like to have the lpm_constant back in 10.1, too.

    Regards,

    Maik

    --- Quote End ---

    I agree, the lpm_constant was an extremely useful feature (I don't even use the altera graphical methods).

    Does anyone know what we can use in its place for simply inserting data via jtag in its absence?
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Hi to everybody,

    I wanted to give my contribution,

    I begun to use the Alters products mainly for the possibility to realize the projects using schematic entry.

    I find schematic editor very useful and I realize the most greater part of my projects with this method, I hope that in future Altera will implement this functionality back again.