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

Design Space Explorer: how to ignore hold time slack

Altera_Forum
Honored Contributor II
1,006 Views

Hi, 

 

From Quartus manual about Design Space Explorer (DSE): 

"In an exploration for best performance, DSE works on reducing the worst magnitude 

slack, regardless of whether it is a hold slack or setup slack." 

 

But I would like to instruct DSE to reduce setup time slack rather than hold time slack. 

 

Is it possible to do this by ignore hold time constrain in SDC file? 

Or other method? 

 

Thanks.
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
268 Views

 

--- Quote Start ---  

Hi, 

 

From Quartus manual about Design Space Explorer (DSE): 

"In an exploration for best performance, DSE works on reducing the worst magnitude 

slack, regardless of whether it is a hold slack or setup slack." 

 

But I would like to instruct DSE to reduce setup time slack rather than hold time slack. 

 

Is it possible to do this by ignore hold time constrain in SDC file? 

Or other method? 

 

Thanks. 

--- Quote End ---  

 

 

Hi, 

 

unfortunately you have to solve both in order to make your design running. I would first  

look to the holdtime violations, because they are often caused by design issue like gated gated etc. clock. After solving the holdtime you can run the DSE for setup optimizations. 

Another solutions is to cut all paths with holdtime violations, but I would not recommend 

it. I'm pretty sure that your design will not work properly. 

 

Kind regards 

 

GPK
0 Kudos
Altera_Forum
Honored Contributor II
268 Views

I recently had this problem with a project. I did the following: 

 

quartus_sh --set -rev toprev TIMEQUEST_MULTICORNER_ANALYSIS=OFF top 

<insert command you run dse with here> 

cd dse 

quartus_sh --restore -output best_restored best.qar 

cd best_restored 

quartus_sh --set -rev __dse_temp_rev TIMEQUEST_MULTICORNER_ANALYSIS=ON top 

quartus_sta mpsc -c __dse_temp_rev 

 

In the example, top is the name of the proejct .qpf and toprev is the name of the revision(.qsf). In most designs these are the same. It first modifies the project to analyze the slow corner only. By not analyzing the fast corner, you are essentially ignoring hold violations(hopefully). It runs DSE, then unqars the best one, turns multicorner timing analysis back on, and then runs TimeQuest on the back end, so the project will contain timing on all three corners, but DSE's selection for Best was only based on the slow corner.
0 Kudos
Reply