2
\$\begingroup\$

You may find this question easy. But it has been confusing me for a while now I really wanted to make it clear out of my mind. The problem is: Is it always good to have a positive slack along a timing path? Since slack is calculated as Required_Time - Actual_Arrival_Time, through which implies, in case of a positive slack, the Actual signal always comes earlier than expected. Then problems: I know it's good for setup time, but, isn't it a problem to hold time? Why people are only complaining about -ve slack but not +ve slack? Really thanks if you guys can help me out!

\$\endgroup\$
2
\$\begingroup\$

... in case of a positive slack, the Actual signal always comes earlier than expected.

This is not true. The expected time for a signal is a window between min type (hold) and max type (setup) timing requirements.

Modern P&R tools (e.g. IC Compiler) try to fix both hold and setup violations. If a data path is very fast, the tool inserts delay cells and/or buffers to meet hold timing. After it succeeds, there is nothing to worry about the positive slack for setup timing.

For synthesis, hold checks are not much accurate, because clock tree synthesis (CTS) is not performed yet (done by the P&R tool). It's very common to see hold violations in post-synthesis STA. They are negligible to some degree and expected to be fixed by P&R. If I catch a real hold issue in synthesis, it's mostly (to my experience) caused by level-triggered cells (e.g. latches).

The final checkpoint is post-P&R STA. If there is no hold and setup violation, forget about the positive slacks. If hold violations exist, there must be something wrong with the timing constraints and/or the design. Positive slacks (of setup checks) are not the root cause of hold violations themselves.

\$\endgroup\$
  • \$\begingroup\$ Hi ahmedus! Thanks for your reply. So it's more like a matter with which has more impact in the design. Like you said the hold time violation is less likely to occur or can be fixed easily. That makes picture more clearer now. Thanks \$\endgroup\$ – 王云龙 Sep 14 '17 at 11:17
  • \$\begingroup\$ @王云龙 Right, the tools (especially P&R) take care of all timing requirements. I'm glad if my answer is helpful. \$\endgroup\$ – ahmedus Sep 14 '17 at 11:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.