Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
FPGA community forums and blogs on community.intel.com are migrating to the new Altera Community and are read-only. For urgent support needs during this transition, please visit the FPGA Design Resources page or contact an Altera Authorized Distributor.
21615 Discussions

incrimental compilation

Altera_Forum
Honored Contributor II
2,224 Views

Greetings, 

 

After adjusting one small detail in the signal tap files I have to re-compile the entire design. Is there a way to run all the signal taps, adjust a small parameter and only compile the signal tap file without havingto wait thirty minutes to compile? 

 

Thank you
0 Kudos
8 Replies
Altera_Forum
Honored Contributor II
749 Views

Go to Assignments -> Design Partition Window and set the Top partition to Post-Fit. In essence, Signal Tap is another partition in the design, so when the top is post-fit, only SignalTap will be resynthesized, placed and routed.

0 Kudos
Altera_Forum
Honored Contributor II
749 Views

30 minutes, what a luxury ;) 

 

on a serious note, i find post-fit SignalTap nodes to be a lot less useful than pre-synthesis, so i rarely them
0 Kudos
Altera_Forum
Honored Contributor II
749 Views

30 minutes compared to what? Personally, I get that resynthesizing the SignalTap and refitting takes some time. (You can disable timing analysis to save a little more, if you're confident). I would really like to see a way to just re-route the signals from the user logic to SignalTap incrementally, which I believe could be significantly faster.  

There's a lot to be said for pre-synthesis, but there is the obvious expense of having to resynthesize and fit everything. I've seen user's put keep attributes on the pre-synthesis signals they commonly like to tap, ensuring they're around as SignalTap post-fit nodes.
0 Kudos
Altera_Forum
Honored Contributor II
749 Views

That last response didn't come out as I wanted. Anyway, when compile times are pretty quick, this flow doesn't have huge savings, where you're going to be running many iterations before lunch. But on the huge designs with the fitter effort cranked up and physical synthesis turned on, etc., it can have a significant impact. I've attached a sample script that opens a project and turns on SignalTap, sets the partitions to post-fit, and disables Physical Synthesis and Optimize Timing. There are probably other things that could be disabled or turned down, like the Fitter Effort. This all will make the run go more quickly. Note that it doesn't turn them back on, so if you were to use this build for future full compiles, they would be quite bad. (The script could easily be modified to turn them on...)

0 Kudos
Altera_Forum
Honored Contributor II
749 Views

And hopefully the attachment works this time...

0 Kudos
Altera_Forum
Honored Contributor II
749 Views

Thank you for the script. How do I run this within Quartus?

0 Kudos
Altera_Forum
Honored Contributor II
749 Views

I tried setting the Top level file to "post Fit" but when I compiled the deign a whole bunch of errors were thrown at me about signals that were now not working. Are there any caveats about partitioning? Thanks again

0 Kudos
Altera_Forum
Honored Contributor II
749 Views

It was designed to run outside of Quartus. You could just pare it down to the "set_global_assignment..." commands and run from Tools -> Tcl Scripts. That will modify the .qsf, and then just hit compile. 

Did you do it in the GUI? What were the errors?  

There are caveats, but this flow doesn't actually require you to create partitions, i.e. the Top level should always be in one, and SignalTap is kind of put into one on the side, so the caveats shouldn't really apply. (I think the web edition of Quartus II does not support partitions, but not positive). If you're interested, look at the Best Practices chapter: 

http://www.altera.com/literature/hb/qts/qts_qii5v1.pdf
0 Kudos
Reply