16 Ways To Fix Setup and Hold Time Violations
16 Ways To Fix Setup and Hold Time Violations
edn.com/ways-to-solve-the-setup-and-hold-time-violation-in-digital-logic/
December 8, 2021
In the chip manufacturing process, these timing criteria are not met on the first try. After
several interactive back-end flow runs, the timing requirement is successfully met, and
only then, the chip is taped out. In this article, we will discuss the methods that are used
in back-end flow to solve setup and hold time violations.
In basic data path logic, the data from the launch flop is sampled by capture flop in the
next clock edge. Hence, the setup time check occurs in the next active clock edge while
the hold time check occurs in the same clock edge.
1/5
A detailed description of the setup and hold time requirement along with equations and
waveform can be found in the article titled “Setup and Hold Time Equations and
Formulas”.
The output capacitance of gate charges and discharges for the on and off operation of the
transistor. Charging operation can be quicker if a flop with increased drive strength is
used. This ultimately makes the data path logic quicker and hence eases the setup time
requirement on capture flop.
Same as setup time number, the clock-q delay depends on the kind of flop and on the
library that is used. So, different flops will have a different clock-q delay. Since setup time
violation can be solved by decreasing the data path logic delay, using a flop with a smaller
clock-q delay for launch flip-flop will ease timing requirement.
Flip-flop comes with various threshold voltage (VT). Some flip-flops have less threshold
voltage while some have higher threshold voltage. These flops are categorized as LVT
(Low VT), SVT (Standard VT), and HVT (High VT). Using an LVT flop for launch flip-flop
will result in less time for turning on and turning off of transistors inside the flip-flop that
will ultimately result in faster data path logic. Other slow data path cells can also be
substituted with a faster counterpart to decrease the data path delay. Hence, substituting
an LVT cell instead of SVT or HVT can solve setup time violation.
2/5
Another way to reduce logic delay apart from replacing SVT and HVT cells with LVT is to
change the logic in register transfer level (RTL). This will most of the time result in
increased latency, resources, and power consumption but will ease timing requirement
and solves setup time violation.
In an ASIC, there will be different blocks scattered across the chip. For example, floor
planning is done in such a way that memories are nearer to the power source—near the
pad—and processors are placed in the center of the chip. In place and route phase, care
should be taken to avoid long wire connections between different flops from different
blocks. Long wire increases logic delay while a short direct connection will ease the
timing requirement.
All the approaches discussed till now are optimizations that will be done in the chip
developmental phase. When the chip is already taped out, these optimizations are
impossible to be done. Under such circumstances, as a last resort, the operating
frequency can be reduced by increasing the clock period. It will delay the setup time
check and will give sufficient time for data to settle to a stable value before the setup
check.
3/5
2. Decrease the drive strength of data path logic
By decreasing the drive strength of cells found in the data path, we can slow the data
path signal to capture flop. It’s because the output gate capacitance will take a long time
to charge and discharge. It will help solve any hold violations.
As discussed previously, skew plays a major role in the gap between the ideal clock edge
and actual clock edge. Increased skew on launch flop gives the data less time to settle to
a stable value before the active edge of the clock. Hence, keeping skew to a value as low
as possible is necessary to reduce the number of hold time violations.
Following the steps outlined in this article will help solve setup and hold time violation and
will ensure no metastability propagation occurs inside the design.
4/5
Deekshith Krishnegowda works as a digital IC design engineer at Marvell Technology Inc.
in Santa Clara, California.
Related Content
5/5