Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20704 Discussions

Post synthesis timing analysis using TimeQuest Timing Analyzer

Altera_Forum
Honored Contributor II
1,129 Views

Dear all, 

 

(what the plan?) 

 

I am planning to use DE0 Nano FPGA board for checking a simple example of a counter. Before putting the design into the board, I would like to verify the design (after synthesis, place and route etc) for timing constraints and make sure that my delay constraints are met and the design would work perfectly for the 50MHz clock (of DE0 Nano) 

 

(what is done so far?) 

 

I have tried various clock frequencies in the TimeQuest Timing analyzer and found out that the design is working with a 'minimum pulsewidth slack' of '0ns' when the clock frequency is around 250MHz. If I increase it further, the slack would become negative. From that I assume that, my design will work at a max clock freq of 250 MHz. (attachment 2 is the circuit I have used for this analysis)  

 

(doubts) 

 

 

  1. What are the constraints (other than the clock freq), one should check to make sure that the design will work once it is put in the FPGA ? 

  2. Should I check setup violation, hold violation etc? If yes, how do I specify the inputs to check them? 

  3. Are there any constraints like clock to q, clock to pad etc. If yes, where should I specify them and how can I include those while doing synthesis, place & route etc ? 

  4. Is there any other method to give timing constraints to the design other than through the .sdc file (attachment1 the sample .sdc file generated by the TimeQuest Analyzer) ? 

 

 

Thanks a lot
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
306 Views

Hi, 

 

1) You will have to check for all violations. Setup, hold etc to make sure design will work on FPGA. 

2)Yes you need to check the violations. After you compile your code, under the table of contents you can see the TimeQuest timing analyzer. In case if there are any violations it will be highlighted in red and show you specifically what violations when you expand it. 

3 & 4) You need to specify all the constraints in the sdc file. I think this is the only way to do it. 

 

Thanks,
0 Kudos
Altera_Forum
Honored Contributor II
306 Views

I suggest you to read: 

 

Those are very well written and explain you all constraints. 

http://www.alterawiki.com/wiki/timequest_user_guide 

 

For Source Synchronous interface have also a look to this specific guide: 

www.alterawiki.com/wiki/source_synchronous_analysis_with_timequest
0 Kudos
Altera_Forum
Honored Contributor II
306 Views

Set period to 20ns into sdc clock 

Add false_path from * to led to no constraints output (with led there are no timing to respect) 

 

You can compensate clock with a PLL if timing is no meet (check why with timequest)
0 Kudos
Reply