Fixes at STA - Aravind Bandi
Fixes at STA - Aravind Bandi
- Aravind Bandi
Setup Violations
Method 1: Reduce the number of buffers on the path
This will reduce the cell delay. The number of cells is reduced, but this
reduction is not simply a geometric reduction. The degree of reduction
should be less than "the number of removed buffers ✖ the original cell
delay"; because when the net wire becomes longer, the current
attenuation from one end of the net to the other end of the net is more
serious, and the charging speed of the device is slowed down.
However, the net delay will increase, the total length of the net wire will
increase, the RC parameters will increase, and the RC curve will be longer.
• In addition, you can also repair hold by repairing crosstalk and manual
routing
Min Period
• Minimum period of the clock input of a lib can be checked in Synopsys
Primetime tool. Imagine a scenario where a design A, is having a clock
named clk and the design is characterised with the cik's period as a
value say 2 ns, ie 500 MHz. Suppose we are reading the .lib for this
design A, at the Top level for Static Timing Analysis, and the period
defined for the top level clock, which is connected to A's clk is 1 ns ie,
1GHz. Definitely, the design A is not going to function properly. To find
out such discrepancies we can check for the min_period violations.
For this the min_period con- straint for the clk should be specified
inside the .lib of A.
Min Period
• The minimum period constraint can be added in the library as below
• pin (CP) {
• direction: input;
• capacitance: 1.2;
• min_period: 2; /* This is the minimum period contraint which is given inside the .lib */
• This tells that the clock, which is reaching at the CP pin, should be having a minimum period
of 2 ns. If it is not, then it will be shown as violated by how much slack, in the
report_constraint- min_period-verbose report. This will be as well, a part in,
report_constraint -all_violators report too.
• The command report_analysis_coverage also covers min_period checks. It can be checked as
below
• report_analysis_coverage-check_type min_period
Min Period
• What needs to be done when min_period violations are seen?