incremental compiles in quartus

We just purchased the full version of Quartus II (version 6.0) because it has the ability to perform incremental recompiles after small changes, saving on compile time. I understand the design flow as described in the manual, but so far I've been unable to get incremental recompiles to work right. (I'm using a command line interface rather than the GUI, in case that makes a difference.)

Running quartus_map, I get this message.

Info: Partition "s_led" is synthesized because no netlist is available for reuse

That makes sense the first time around, but presumably a post-synthesis or post-fit netlist would be saved and subsequent compiles could use it.

Running quartus_cdb --merge=on, I get this:

Warning: Previously generated Fitter netlist for partition "s_led" does not exist -- trying to use previously generated Synthesis netlist

This might indicate a modicum of success, i.e. that at least the post-synthesis netlist *might* be used, but I want to use the post-fit netlist for more time savings.

Running quartus_fit, I get this:

Warning: Ignored partition netlist type assignment changes Info: Partition "s_led" is using previous netlist type "Source File" and not current setting of "Post-Fit"

I suspect that this warning message is tied in with the fact that no post-fit netlist appears to be being saved for next time.

Does anyone know what might be going on?

Many thanks... David

--
If only 2^(7/12) were equal to 3/2, music would sound a lot better.
Reply to
David B. Thomas
Loading thread data ...

Hi,

I don't exactly know what's going on for you, but I can share my experience with the quartus webpack, where I could perform kind of incremental compiles.

The way to do this is to back-annotate the design in plaintext files, and ask quartus to reuse the files. You can get the mapping, place, and route back annotation via:

quartus_cdb design --vqm=design.vqm quartus_cdb design --back_annotate=lab (writes place in the .qsf) quartus_cdb design --back_annotate=routing (writes routing info in .rcf)

The vqm is automatically taken into account. You reduce (I think) quartus compile time with: set_global_assignment -name TRUE_WYSIWYG_FLOW ON (in the .qsf)

Routing back-annotation should add lines of its own in the qsf asking quartus to re-use routing info.

I think that quartus will re-do the mapping on design change, but will take into account whatever place/route information still applies. I've only tried the above on very small design, where it seems to work, but never on full-fledged designs... If you give this a spin, i'd be interested in the results.

JB

Reply to
jbnote

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.