0% found this document useful (0 votes)
48 views88 pages

STA

The document discusses advancements in transistor technology from 180nm to 2nm nodes, highlighting the transition from planar CMOS to FinFET and GAA transistors for improved power efficiency and performance. It details the steps and importance of Static Timing Analysis (STA) in digital design, including timing path analysis, setup and hold time considerations, and the impact of clock skew and uncertainty. Additionally, it covers various timing path types, the significance of margins, and the role of slew rate in signal transitions.

Uploaded by

212p5a0401
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views88 pages

STA

The document discusses advancements in transistor technology from 180nm to 2nm nodes, highlighting the transition from planar CMOS to FinFET and GAA transistors for improved power efficiency and performance. It details the steps and importance of Static Timing Analysis (STA) in digital design, including timing path analysis, setup and hold time considerations, and the impact of clock skew and uncertainty. Additionally, it covers various timing path types, the significance of margins, and the role of slew rate in signal transitions.

Uploaded by

212p5a0401
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 88

STATIC

TIMING
ANALYSIS
 Major Differences in Technology Nodes (From Initial to Present)
Nodes Transistor Type Major Changes & Improvements
Basic CMOS transistors, high power consumption,
180nm - 65nm Planar CMOS (2D Transistor)
lower density.
Improved power efficiency, but leakage becomes a
45nm - 20nm Advanced Planar CMOS
major issue.
Introduced FinFET to reduce leakage, improved
16nm - 10nm FinFET (3D Transistor)
power and performance.
Higher transistor density, extreme scaling, better
7nm - 3nm Advanced FinFET
energy efficiency.
Gate –All – Around(GAA) Full control over current, better power efficiency,
2nm & Beyond
Nanosheet next-gen performance.
 Why is FinFET being replaced by GAA (Nanosheet Transistors)?
 FinFET struggles with extreme scaling below 3nm. GAA provides better electrostatic control by
surrounding the channel on all sides.
STATIC TIMING ANALYSIS
 Where timing analysis starts (before STA) depends upon design flow?
 RTL & design verification do not involve detailed timing analysis because timing is dependent on
synthesized gates & Layout.
 Real timing analysis starts from synthesis & becomes accurate after routing.
 Synthesis stage (first timing consideration):-
 Timing analysis starts here with logical optimization.
 Tool optimized setup, hold time & clock constraints using wire load models (not real values).
 Floorplan stage (Physical Timing begins):-
 After synthesis, macro placement, pin placement & power planning are done.
 Timing analysis is performed here to check macro placement, blockages & early congestion impact.
 Placement stage ( Pre-CTS timing analysis):-
 Before CTS, timing is analyzed with estimated delay values.
 Tool optimizes placement to reduce the setup violations.
CTS stage:-
 Timing analysis is done with actual clock tree to check skew, insertion delay & hold time issues.
Post Routing stage:-
 After routing, a full STA is done.
 Checks for setup/hold violations, clocks uncertainty and delays.

 Why STA after routing?


 Before routing, wire delays are estimated(virtual).
 After routing, Actual RC delays(parasitic delays) are extracted to make accurate timing analysis.
 Clock tree is fully built and actual skew, insertion delay, and uncertainty are considered.
 STA ensures there are no setup & hold violations with real interconnect delays.
STATIC TIMING ANALYSIS
 Static Timing Analysis:-
 STA checks static delay requirements of the circuit without any i/p or o/p vectors.
 We can’t achieve the clock speed without STA.
 It doesn’t check for logic functionality of the design.
 It analyzed the best &worst cases simultaneously for all timing paths.
 It cannot be applied Asynchronous & Loop paths.
 It is not suitable for designs having clock cross multiple domains.

INPUTS OF STA:-
 Gate level netlist(.v)  it have circuit description.
 Constraints (.sdc)  it contains all the timing related information about the design. Includes the clock
definition (create clock, generated clock, virtual clock), uncertainty (jitter, skew, margin), I/O delays,
False paths, Multi-cycle paths, max trans, max cap, max fanout.
 Timing library(.lib)  every cell delay are present in the library.
 Standard Parasitic Exchange Format(.spef)  Parasitic of the design extracted from PD tools.
OUTPUTS:-
 Different timing paths REPORTS, which can be used for debugging.

 STA involves three steps


1 Break the design into sets of timing paths.
2 Calculate the delay of each path.
3 Check all path delays to see if the given timing constraints are met or not.
 DTA vs STA ?
DTA STA
Checks for both timing & functionality. Checks for only timing.
Dependent on input data (Test Vectors). Independent of data.
Slower because it also checks the functionality. Faster & takes less time.
 In ICC2 are any tool the universal command for checking is “ report_timing “.

Recovery & Removal :-


 Recovery refers to SETUP TIME & Removal refers to HOLD TIME.
 For synchronous clocks we do setup & hold timing analysis.
 For Asynchronous clocks we do Recovery & Removal analysis.

 Single Cycle Path:


 A timing path that completes in one clock cycle.
 Data propagates from one flip-flop to another, all clocked by the same clock.
 Tools generally consider all paths as single cycle by default.
TIMING PATHS
Timing paths:-
 A timing path is a point – to – point path in a design which can propagate data from one flip – flop to
another.
 Each point has a start point & an end point.
 Start point:- Input ports or clock pin of flip – flops
 End points:- Output ports or data input pin of flip – flops.

COMBO COMBO COMBO


RReg

RReg
IN OUT
LOGIC LOGIC LOGIC

COMBO
IN OUT
LOGIC
 Timing paths grouped into 4 paths i.e,
1. IN – REG.
2. REG – REG.
3. REG – OUT. I
Q D
4. IN – OUT. N
Clk

IN – REG Timing analysis:-


Setup Slack (ss) = RT – AT
 (Tclk + Tcapture_clk – Tsetup – Tuncertainty) –
( Tlaunch_clk + Tclk-q + Tcomb)
 Rearranging the eq:

 SS = (Tclk + Tcapture_clk – Tun – Tsu) – (Tlaunch_clk + Text + Tcomb_int)


Similarly Hold Eq:-
 HS = AT – RT
HS = (Tlaunch + Text + Tcomb_int ) – (Tcapture + Tun +Thold).

REG – OUT path :-


 SS = RT – AT O
Q U D
 (Tclk + Tcapture – Tsu – Tun ) –
T
(Tlaunch + Tclk-q + Tcomb_int + Tcomb_ext)
 (Tclk + Tcapture – Tsu – Tcomb_ext – Tun ) –
(Tlaunch + Tclk-q + Tcomb_int)
Rearrange the eq:-

SS = Tclk +Tcapture – Text – Tun – ( Tlaunch + Tclk-q + Tcomb_int)


HS = Tlaunch + Tclk-q + Tcomb_int – ( Tcapture – Text + Tun )
 Multi-Cycle Path:
 A timing path that takes more than one clock cycle for data propagation.
 You need to specify the launch and capture clock edges in the SDC (Synopsys Design Constraints) file.

 Half-Cycle Path:
 A half cycle path is a timing path where data is propagated during both the rising and falling edges
of the clock (half a cycle each).
 Tools can automatically detect it, so you don’t need to specify the launch or capture edge in SDC.

 False Path:
 A path that exists physically but doesn’t carry any functional data (it’s inactive).
 False paths are excluded from timing analysis because they don’t impact the circuit’s performance.
Clock Skew :-
 Clock skew is the difference in arrival time of the clock signal at two flip-flops in a design.

Tskew = Tlaunch – Tcapture.

• Here , Tlaunch = Arrival time of the clock at the launch flop.


• Tcapture = Arrival time of the clock at the capture flop.
Positive Skew :-
 If the capture clock comes late then the launch clock.
• it means Launch clock  Early & Capture clock  Late.

Tlaunch < Tcapture  good for setup violation.

Negative Skew :-
 If capture clock comes early then the launch clock.
Tlaunch > Tcapture  Hold for setup violation.
Equation for setup:-
• Tsetup with Skew
DAT < DRT  Tlaunch_clk + Tclk-q + Tcomb < Tcapture_clk – Tsetup + Skew

• Thold with Skew

DAT > DRT  Tlaunch_clk + Tclk-q + Tcomb > Tcapture_clk + Thold + Skew

 Here, Positive skew helps setup timing by effectively giving more time for data propagation(DAT
takes more time).
 Negative Skew helps hold timing by reducing the risk of data arriving too early.
DAT & DRT ? Means
DRT  Data Required Time
• The latest time by which data must arrive at the capture flop.

DRT = Tcapture_clk – Tsetup


DAT  Data Arrival Time
• The actual time taken by the data to arrive at the capture flop.
DAT = Tlaunch_clk + Tclk-q + Tcomb
• Tlaunch_clk = clock arrival time of the launch flop.
• Tclk-q = clock to Q delay of the flop.
• Tcomb = Delay through the combo logic.
Zero Skew :-
 When the capture clock & launch clock arrives at the same time is known as Zero Skew( ideally, it is
not possible).
Local Skew :-
 Difference in arrival time of clock at two consecutive pins of flops.
 It can either positive or negative.
Global Skew:-
 Difference between longest path delay & shortest path delay( min insertion delay & max insertion
delay).
Global skew = L2 –L1( L2  longest path & L1  shortest path)
Max insertion delay :-
• Delay of the clock signal takes to propagate to the farthest leaf cells in the design.
• Leaf cells  lowest level cell in the design(sequential cells).
Min insertion delay:-
• Delay of the clock signal takes to propagate to the nearest leaf cells in the design.
Useful Skew:-
 If clock is skewed intentionally to resolve violations.
Benefits of Useful Skew
• Timing Optimization: By adjusting the clock arrival times, designers can meet setup and hold time.
• Load Balancing: Useful skew can help balance the load across different parts of the circuit, reducing
the maximum current draw and improving power distribution.
• Clock Tree Synthesis (CTS): During CTS, useful skew can be used to minimize clock tree depth and
reduce clock distribution network complexity.
• Reducing Critical Path Delays: By skewing the clock, critical path delays can be minimized,
improving overall circuit performance.
Slack :-
 The difference between the required time & arrival time.
Slack = RT – AT
• Positive slack is good for setup. Setup  Data arrives too late at the capture flop.
• Negative slack is good for hold. Hold  Data arrives too early, so it overwriting
the previous data.
 For Setup timing equations:-
DRT > DAT ( slack = DRT – DAT >0 )
DRT = Tcapture_clk – Tsetup.
DAT = Tlaunch_clk + Tcomb + Tclk-q.
Tsetup_slack = DRT – DAT
 Tcapture_clk –Tsetup – ( Tlaunch_clk + Tcomb + Tclk-q)
 Tsetup_slack > 0  setup timing is met.
 For Hold timing equations:-
DRT < DAT (slack = DAT – DRT > 0)
DRT = Tcapture_clk + Thold.
Thold_slack = DAT – DRT > 0
 Tlaunch_clk + Tcomb + Tclk-q > Tcapture_clk + Thold
 Thold_slack > 0
Latency:-
 The delay difference from the clock generation point to the clock endpoints.
On – Chip Clock source :- clock is generated inside the chip, typically by a PLL (Phase-Locked Loop)
or an oscillator.
Clock Definition point
PLL

• Here, PLL to Clock Definition point  SOURCE LATENCY.


• Clock Definition Point to Clk pin of Flop  NETWORK LATENCY.
Off – Chip Clock Source :- clock is generated outside the chip, such as by an external crystal oscillator
or a system clock module.

Clock port
PLL

• PLL is external source

On – Chip Clock Source Off – Chip Clock Source


Clock source is inside the chip(PLL) Outside the chip.
Internal Clock tree delay only. Includes external + internal delays
Skew & Jitter controlled. High skew & jitter due to external factor.
Better synchronization & Efficiency. Higher latency may reduce the
performance
• Latency are 2 types.
1. Source latency.
2. Network latency.
Source latency :-
• The delay from clock generation point ( Clk source) to the Clk definition point.
• Ex:- PLL or External Clk Source.
• Command:- Set_clock_latency 1.9 –source ( i.e source latency = 1.9)
Network latency:-
• The delay from the Clk definition point to the Clk pin of flip-flop.
• Before CTS, these are estimated delay values.
• After CTS, Actual delay values come to picture
• Command:- Set_clock_latency 0.8
• Total Latency = Source latency + Network Latency.
• Source vs Network
Source Latency Network Latency
Fixed & stays the same after CTS. Used only before CTS as estimate.
Applied to both On-Chip & Off-Chip After CTS, it is replaced by the actual
Clock Sources. clock delay values.

• For Setup:- Total Clk latency impacts the calculation of DRT at the capture flop.
• For Hold:- Latency mismatches between the launch & capture Clk paths.
Equations:-

Tcomb ≤ Tclk – Tsetup + ( Capture Latency – Launch Latency)  Setup.


Tcomb > Thold + ( Capture Latency – Launch Latency)  Hold.
(Tclk is considered, because hold is within same clock edge or clock cycle).
Insertion Delay(ID):-
• Insertion delay is the clock latency, but it is after CTS.
• ID is physical delay & latency is virtual delay.

Clock Uncertainty:-
• Variations in clock arrival time due to multiple factors like as skew, jitter, OCV, cross talk & other
margins.
• It is a pessimism factor used in timing analysis to improve the design to meets timing requirements
even in the worst scenarios.
Types of uncertainty:
1. Static clock uncertainty:-
• Doesn’t vary or varies very slowly with time.
• Slow or fixed variations like skew or process mismatches.
Ex:- Uneven wire delays in the clock network.
Sources:-
1. Clock skew.
2. OCV(On Chip Variation).
3. Load variation.
Dynamic Clock Uncertainty:-
• Varies with time or Time varying issues like jitter or voltage changes.
Ex:- Small clock signal fluctuations caused by power noise.
Sources:-
1. Jitter.
2. Voltage drop.
3. Temperature Variations.
Pre CTS uncertainty Post CTS uncertainty
• Clock skew. • Clk jitter.
• Jitter. • Margins.
• Margins for PVT.
Usage of Uncertainty for setup & hold:-
 Setup timing:
• Clock uncertainty reduces the clock period or available time of data to propagate.
Ex:- Clock uncertainty is 0.2ns  it means the usable clock period is decreased by 0.2 ns.
 Effective clock period = Tclk – Uncertainty.
Command:- Set_clock_uncertainty –setup 0.2 [ get_clocks clk_name]
Reduces the clock period for setup timing analysis by 0.2 ns.

 Hold timing :
• Clock uncertainty is added as an additional margin that the design must met. (OR) Adds margin of
safety to prevent short path issues.
Ex:- Clock uncertainty is 0.05 ns,  it means the hold timing checks include these margin
Command:- Set_clock_uncertainty –hold 0.05 [ get_clocks clk_name]
Adds a margin of 0.05 ns for hold timing.
Equations for setup & hold :
 For setup  Tcomb +Tsetup ≤ Tclk – Tuncertainty
 For Hold  Tcomb ≥ Thold + Tuncertainty
 Why Clock Uncertainty is Important?
•It reserves some time in the clock period for unexpected variations.
•Ensures that setup and hold timing are met in worst-case conditions
 What is Margin?
 A margin is an extra buffer or safety time added in timing analysis to account for uncertainties and
variations in the design and environment.
 It ensures that the design is robust under worst-case conditions and operates reliably.
 Why Do We Need Margins?
•Timing analysis is based on simulations and estimations, but real-world conditions can introduce
unexpected variations.
•Margins help account for these differences, ensuring the design meets timing even in the worst scenarios.
SLEW(Transition):-
• A signal changes between two voltage levels like from 0 to 1 or 1 to 0.
• A fast change means  high slew rate.
• Slow change means  low slew rate.
 Transition is inversely proportional to slew rate.

Slew rate = V/ T ( Rate of change of the voltage w.r.to time).

 V  Change in voltage ( 0 to 1 or 1 to 0 ).
 T  Time it takes for the signal to transition between those voltages.
 Faster Transition = Higher Slew rate = Low Transition time.
 Slower Transition = Lower Slew rate = High Transition time.
Rise Time:-
 During rising edge, the time takes for the signal to Transition from 20 % to 80% of its maximum
value (VDD).
Rise time = T of 80% - T of 20%
Fall time:-
 During Falling edge, The time takes for the signal to transition from 80% to 20% of its maximum
VDD.

Fall time = T of 20% - T of 80%

Problems :
Problem 1: Setup Timing with High Clock Uncertainty
1. Scenario:
A design has a clock period of 2 ns. The setup uncertainty is 0.5 ns, and the combinational path delay
is 1.6 ns. The setup time of the flip-flop is 0.2 ns. Determine if the design meets setup time?
• Given that Tclk = 2ns.
• Tsetupuncertainty = 0.5ns.
• Tcomb = 1.6ns.
• Tsetup = 0.2ns.
For setup  Tcomb +Tsetup ≤ Tclk – Tuncertainty
1.6 + 0.2 ≤ 2 – 0.5
 1.8 ≤ 1.5 (fails setup timing because the available clock period after uncertainty (1.5 ns) is less
than the total delay 1.8ns).

Hold Timing with Skew-Induced Uncertainty


2. Scenario:
The hold time of a flip-flop is 0.1 ns. The data path delay is 0.15 ns. The hold uncertainty due to clock
skew is 0.08 ns. Does the design meet hold timing?
Equation for Hold: Tcomb ≥ Thold + Tuncertainty
• Given Thold = 0.1ns.
• Tcomb = 0.15ns.
• Tuncertainty = 0.08ns.
0.15 ≥ 0.1 + 0.08
 0.15 ≱ 0.18 (fails hold timing because the data path delay (0.15 ns) is less than the required minimum
delay 0.18ns).

Multi-Clock Domain Setup with Jitter.


3. Scenario:
Two flip-flops are in different clock domains with a 3 ns period each. The clock domains have a clock
skew of 0.3 ns and a jitter of 0.2 ns. The setup time is 0.3 ns, and the data path delay is 2.4 ns. Does it
meet timing?
Equation for Multi-Domain Setup:
• Pre CTS Clock uncertainty = Skew + jitter + Margin
• Post CTS Clock Uncertainty = Jitter + Margin
 Tcomb + Tsetup ≤ Tclk – Uncertainty
 Uncertainty = Skew + Jitter
Rearrange the eq = Tcomb + Tsetup ≤ Tclk – ( Skew + Jitter)
 2.4 + 0.3 ≤ 3− ( 0.3 + 0.2)
 2.7 ≤ 2.5 (fails setup timing due to excessive skew and jitter).

CTS Uncertainty Impact


4. Scenario
Before clock tree synthesis (CTS), the setup uncertainty is modelled as 0.4 ns due to skew, jitter, and
margins. After CTS, skew is reduced to 0.1 ns, but jitter remains 0.2 ns. How does the uncertainty
change, and what is its impact on timing?
• Pre CTS Clock uncertainty = Skew + jitter + Margin .
• Post CTS Clock Uncertainty = Jitter + Margin.
• After CTS, the uncertainty reduces by 0.1 ns, increasing the available clock period.
Clock Jitter:-
 Jitter refers short – term violation in the timing of a clock signal compared to its ideal timing.
Ex:- Imagine a clock pulse expected to arrive every 1ns.
• Due to jitter, the clock pulse might arrive slightly earlier or late (like 0.95ns or 1.05ns).
• This variations impacts the clock period, it causes synchronization issues in the circuits.
Source of jitter:
 Internal circuitry of PLL.
• Noise or imperfections in PLL circuits can introduce variations.
 Thermal noise in crystal oscillators.
• Heat can cause small fluctuations in the frequency of oscillators
 Transmitters & Receivers.
• Signal transmission paths can also introduce timing variations.
 When we are using clock signal, there are 2 phases in the design i.e
1. Ideal clock. 2. Propagated clock.
Ideal Clock:-
• In the first stage, during RTL design, Synthesis & placement  Clock is IDEAL.
• The ideal Clock has no distribution tree.
• It is directly connected at the same time to all flop clock pins.(so no delay or no violations)
Propagated Clock:-
• After CTS, the clock travels through a tree of buffers to reach the flip flop.
• Actual delays are introduced due to routing & buffers.
 Clock latency term using when the clock is in ideal mode.
 It is the delay that exists from the clock source to the clock pin of the flop.
 This delay is not real value  specified by the USER.
When comes to Propagated clock ,  After CTS
 Actual delay comes into the picture then it is called as insertion delay.
 Insertion Delay is a real & measured delay path through a tree of buffers.
How Jitter Affects the Design
 Setup Violations:
• If jitter reduces the effective clock period, data might not be ready in time.
 Hold Violations:
• If jitter causes the clock edge to arrive earlier, data might not have been held long enough.
 Signal Integrity Issues:
• Large jitter can disrupt timing relationships across flip-flops.

Types of Jitter (What They Are)

 Absolute Jitter → Signal arrives earlier or later than expected.


 Cycle-to-Cycle Jitter → One clock cycle length changes compared to the next.
 Periodic Jitter → Jitter happens at regular intervals due to interference.
 Random Jitter → Unpredictable, caused by thermal noise or power fluctuations.
 Deterministic Jitter → Caused by specific, known factors (like crosstalk or power noise).
Methods to Reduce Jitter (How to Fix It)
 Use low-jitter clock sources (for Absolute & Cycle-to-Cycle Jitter).
 Use jitter buffers (for Absolute & Periodic Jitter).
 Filter out power noise with capacitors (for Periodic & Random Jitter).
 Improve PCB design & shielding (for Deterministic Jitter).

Ex:-DDR RAM in a High-Speed Design


• Imagine designing a motherboard where DDR4 RAM communicates with the CPU.
• If jitter is too high:  Data errors → System crashes.
 Slow performance
 By applying the above methods (good clock, clean power, short traces, differential pairs), we reduce
jitter and ensure fast, error-free communication!
Why the Clock Doesn't Always Arrive Exactly After One Clock Cycle? or
Why does the clock not always arrive exactly after one clock period?
1. Insertion Delay and Skew
 Insertion Delay:
The time it takes for the clock signal to travel from the clock source to the flip-flop clock pin.
 Skew:
If the insertion delay to the launch clock (starting flip-flop) and the capture clock (destination flip-
flop) are different, the clock edges won't align.
• Example: If the capture clock arrives earlier than the launch clock, this difference is called
negative skew. If it arrives later, it is positive skew
2. Clock Jitter
 The clock period is not constant.
• Some cycles might be slightly longer or shorter due to variations in the clock source (like a PLL or
oscillator).
• This random fluctuation in clock period is called jitter.
• Effect: Jitter makes it hard to predict exactly when the next clock edge will occur.
3. On-Chip Variation (OCV)
 Different parts of the chip may behave differently due to changes in PVT ( process, voltage, or
temperature).
 This can make the clock slower or faster in some areas, increasing the difference in timing.

 Why MCMM (Multi-Corner Multi-Mode) is Important?


MCMM analysis ensures a chip works correctly under all conditions by considering:
1. Multi-Corner (PVT Variations)
• Process: Fabrication variations affect transistor performance.
• Voltage: Supply voltage fluctuations impact speed and power.
• Temperature: The chip must work from -40°C to 125°C (extreme conditions).
 Prevents failures due to process, voltage, and temperature variations.
2. Multi-Mode (Different Functional Scenarios)
• Functional Mode (normal operation)
• Test Mode (DFT scan & testing)
• Low-Power Mode (power-saving state)
 Why MCMM is NECESSARY?
 Ensures timing closure across all PVT conditions.
 Prevents setup & hold violations.
 Avoids chip failures in real-world applications.
 Improves yield, reliability, and silicon success.

 MCMM is Related to STA?


 STA checks timing across all MCMM scenarios to ensure the chip works under all conditions.
 Setup & Hold Timing Closure: Different corners and modes can affect timing margins, so STA ensures
no violations.
 Clock Skew & Uncertainty: STA considers worst-case delays across PVT variations to avoid timing
failures.
 Signoff Requirement: Modern chips must pass STA for all MCMM cases before tapeout.
 Why MCMM Essential in STA?
 Ensures chip works across all voltage, temperature, and process variations.
 Avoids failures in different operating conditions.
 Reduces ECOs (Engineering Change Orders) by catching violations early.
 Improves silicon yield and performance reliability.
 Without MCMM in STA, a chip might pass in one condition but fail in another!

Propagation delay :-
 Propagation delay is the time taken for a signal to travel through the combinational logic (gates and
interconnects) between the launching flip-flop and the capturing flip-flop.
 This delay depends on:
• The logic complexity in the path.
• Interconnect delays (RC delays).
• PVT variations (Process, Voltage, Temperature).
Setup :-
 Min time that the input (Data) must be stable before the clock edge ( Usually the Falling & Rising
edges, depending upon the design) in order to be correctly captured by the flip-flop.
 Data must be stable before the clock edge.
 If setup time violation occurs when the data input changes too close to the clock edge, it might
incorrect data capture.
Setup time = DRT ≥ DAT ( No setup violations)
Tclk ≥ Tsetup + Tclk-q + Tcomb
Hold :-
 Min time that the input (Data) must remain stable after the clock edge so it ensures the correct
operation of flip-flop.
 Data must be stable after the clock edge.
 If hold time violation occurs when the new data arrives too early, it might corrupt the currently
captured value.
Hold time = DRT ≤ DAT ( No hold violations)
Thold ≤ Tcomb + Tclk-q
Launch and Capture:
 Launch Flip-Flop: Flip-flop where the data is sent out (launched).
 Capture Flip-Flop: Flip-flop where the data is received (captured).
 Launch Edge: Clock edge that triggers data launch.
 Capture Edge: Clock edge that triggers data capture.

 Select the correct equation for setup time requirement ?


Tc2q – clock to Q FF delay, Tcomb – combinational delay, Tsetup – Setup time, Tclk – Clock Period,
Tskew – Clock skew
 a) Tc2q + Tcomb + Tsetup ≤ Tclk + Tskew
b) Tc2q + Tcomb + Tsetup > Tclk + Tskew
c) Tc2q + Tsetup ≤ Tclk + Tskew + Tcomb
d) None of the above.
Metastability :-
 Metastability occurs when a flip-flop receives an input signal too close to the clock edge, causing it to enter
an unstable state. This can result in unpredictable behavior, leading to timing failures in a design.
 How to Prevent Metastability?
 Use Two-Stage Synchronizers – Add extra flip-flops to allow enough settling time.
 Increase Setup & Hold Time Margins – Ensure signals arrive well before the clock edge.
 Use Proper Clock Domain Crossing (CDC) Techniques – Prevent data corruption when transferring
signals between different clock domains.
Clock Domain Crossing (CDC):-
 CDC happens when a signal moves from one clock domain to another with a different frequency or phase.
Problem:
 If not handled properly, CDC can cause data corruption or metastability, leading to design failures.
Solutions to CDC Issues:
 Two-Flip-Flop Synchronizer → Used for single-bit control signals like resets and enables.
 FIFO (First-In-First-Out Buffer) → Used for multi-bit data transfer between different clock domains.
 Handshake Protocols → Ensures safe data transfer using request/acknowledge signals.
 Gray Code Counters → Used in asynchronous FIFOs to avoid metastability in read/write pointers.
 During Placement Stage:
 Fixing Setup Violations (Data is too slow)
1.Timing Path Groups – Prioritize paths that need optimization.
2.Create Bounds – Restrict cell movement to improve timing.
3.Placement Optimization – Use high-effort placement to reduce delays.
4.Floorplan Changes – Adjust macro placement, spacing, and pin orientation.
After Placement Stage:
1.Increase Drive Strength – Use stronger gates to speed up data propagation.
2.Use Lower Vt Cells – Swap high-threshold cells with lower-threshold ones to reduce delay. ( LVT 
SVT & HVT)
3.Insert Buffers – Helps improve transition times and reduces wire delays.
4.Reduce Excess Buffers – Too many buffers can increase delay; optimize them.
5.Use Higher Metal Layers – Reduces wire resistance and delay.
6.Replace Buffers with Inverters – Improves signal transition time.
7.Play with Clock Skew – Intentionally delay the clock to help meet setup timing.
 Fixing Hold Violations (Data is too fast)
Use Higher Drive Strength Gates – Sometimes, stronger gates slow transitions by increasing
capacitance.
Use Higher Vt Cells – Slower threshold cells delay signal propagation.(HVT  LVT)
Insert or Remove Buffers – Adding buffers increases delay, while removing unnecessary buffers can
balance timing.
Use Higher Metal Layers – Helps optimize wire delay.
Increase Clock-to-Q Delay – Adjusting the launching flip-flop can slow down data arrival.
Clock push & pull  launch flop  pushing & capture flop  pulling.(here increasing &
decreasing the delays)
Crosstalk:-
 Cross talk is unwanted interference between two neighbouring wires or nets in a circuit.
 It happens because of coupling capacitance between them.
 It can effect the functionality or timing. AGGRESSOR
 A net can be VICTIM or AGGRESSOR.
 High Switching or Affecting signal AGGRESSOR.
 Experienced unwanted affects or Affected signal  VICTIM. VICTIM
 Why Does Coupling Capacitance Cause Crosstalk?
 Coupling capacitance (Cc) is the capacitance between two adjacent wires.
 When the signal (voltage) in one wire (aggressor) changes, it induces a voltage in the nearby wire
(victim) through this coupling capacitance.
 This results in:
• Crosstalk Noise or Glitch : Voltage spikes (glitches) on the victim wire.
• Crosstalk Delay : Delayed or accelerated signal transition on the victim wire.
Types of Crosstalk:-
 Crosstalk Noise Or Glitch.
 Crosstalk Delay.
Crosstalk Noise or Glitch:-
 It happens when the aggressor net switches, but the victim net remains constant.
 This causes a spike(glitch) in the victim net.
• Types of Glitches:-
1. Rise Glitch  Victim is low(0) , Aggressor rises.
2. Fall Glitch  Victim is high(1), Aggressor falls.
3. Overshoot  Victim is high(1), Aggressor rises further.
4. Undershoot  Victim is low(0), Aggressor falls further.
 Overshoot :- Signal voltage goes too HIGH, exceeding its expected max level(above VDD).
 Undershoot :- Signal voltage drops too LOW, below its expected min level(below VSS).
Crosstalk Delay:-
 It happens when both Aggressor & Victim nets are switching.
 It can either slow down or speed up the victim net transition based on the relative switching
direction.
 There are 2 types of crosstalk delays.
1 Positive cross talk delay.
2 Negative cross talk delay.
Positive cross talk delay:-
 Aggressor switches in the opposite direction of the victim  Victim slows down.
Negative cross talk delay:-
 Aggressor switches in the same direction as the victim  Victim speeds up.
Effects of Crosstalk
1. On Noise: It creates unexpected signal spikes, disrupting functionality.
2. On Timing: It can cause data to arrive too early or too late, affecting setup and hold timing checks.
Impacts on Timing Analysis:-
Crosstalk affects Setup & Hold timing:
1. Data path Crosstalk:
• Same Direction (Negative Crosstalk):
 Victim transition  Faster, Good for setup & Bad for Hold.
• Opposite Direction(Positive Crosstalk):
 Victim transition  Slower, Bad for setup & Good for Hold.

2. Clock path Crosstalk:


• Same Direction:
 Victim clock  Faster, Bad for Setup & Good for Hold.
• Opposite Direction:
 Victim clock is  Slower, Good for Setup & Bad for Hold.
Reduce the Crosstalk:
 Increase Wire Spacing(NDR rules):
 Reduces coupling capacitance between aggressor and victim nets.

 Use Higher Metal Layers:


 Higher layers have wider wires and lower coupling.

 Buffer Insertion:
 Splits long nets to minimize crosstalk.

 Shielding:
 Place power (VDD) or ground (VSS) lines between critical signals to absorb noise.

 Adjust Drive Strength:


 Increase the victim net's drive strength or reduce the aggressor net's drive strength.

 Use Multiple Vias:


 Reduces resistance and RC delay, minimizing interference
PBA & GBA  Pessimism = Worst-case assumptions (extra safety margin).
 PBA  Path Based Analysis.  GBA: Introduces pessimism to ensure no timing violations
are overlooked.
 GBA  Graph Based Analysis.  PBA: Removes pessimism for more accurate, realistic timing
Path Based Analysis(PBA) :- in critical paths
 Analyses individual paths one by one.
 Measures signal delay on each path & checks if it meets the Required Time(RT).
 High Accurate, But Slower because it checks every possible path.
Graph Based Analysis:-
 Analyses the entire design as Graph.
Calculation:
 Arrival Time (AT): When the signal arrives.
 Required Arrival Time (RAT): When the signal is needed.
 Slack: RAT - AT (to check timing margin).
 Faster, but less accurate because it doesn’t examine every path in detail.
Do We Prefer PBA in Real-Time STA?
 Yes, PBA (Path-Based STA) is preferred for sign-off in real-time chip design.
 But GBA (Graph-Based STA) is preferred for faster timing closure during early stages.
 Real-Time Industry Ex:
• Scenario:
1. Tape-Out of a Processor Chip (Intel, AMD, Qualcomm, etc.)
 During initial timing closure (Pre-layout STA):
 Engineers run GBA because it's fast and helps find timing violations quickly.
 If violations exist, they fix them with margin to be safe (even if pessimistic).
 Before sign-off (Final STA using Primetime STA, Cadence Tempus, or ICC2):
 Engineers run PBA to remove unnecessary pessimism and find actual delays.
 If GBA showed a violation, PBA might clear it, reducing unnecessary fixes.
 Final Validation: (PBA is final decision – maker before the design is sent for fabrication)
 Before tape-out, only PBA results are considered to ensure accuracy.
 This prevents false timing violations and unnecessary design modifications.
 Multi-cut Vias :-
 It is like adding extra support to make connections more Reliability & Durable.
 After the layout design, when ever possible single via replaced with multi-cut vias to improve better
performance & Yield..
 Handle more current & improve functionality on wide metal.
 When to Use Multi-Cut Vias?
 High-current paths (Power & Ground Nets).
 Critical signal paths (Clock & High-speed data signals).
 Advanced nodes (e.g., 7nm, 5nm, 3nm) where single vias are unreliable.
 Chip corners & high-stress areas where via failure risk is higher.
 When NOT to Use Multi-Cut Vias?
 Non-critical paths where single vias are sufficient.
 Tight routing areas where space is limited
 Redundant Vias:-
 It is like safety backup to ensure the connections stay strong & chip work reliability.
• Improve yield.
• Lower resistance  making signal faster.
• Avoid timing issues from Partial failures.
 Why Use Redundant Vias?
 Prevents Failure  If the main via fails, the extra one keeps the connection.
 Improves Reliability  Reduces the chance of open circuits.
 Better for Manufacturing  Helps avoid defects caused by process variations.
 When to Use Redundant Vias?
 Critical signal paths (Clock, Power, Ground).
 Areas with manufacturing variation risks.
 Smaller technology nodes (7nm, 5nm, 3nm) where via failures are more common.
Multi-cut Vias (Vs) Redundant vias ?
Multi-cut Vias Redundant vias

Uses multiple vias in one place for a stronger Adds extra vias next to the main via as a backup
connection
Reduces resistance & improves performance Prevents via failure and improves reliability
High-current paths (power, ground, clock signals) Areas where single vias might fail due to defects
Load spread across all vias If the main via fails, backup via takes over

 Imagine you are designing a mobile processor chip (like in smartphones)


 Why Use Redundant Vias
 If one via fails, the extra via keeps the connection working.
 Prevents chip failure and improves reliability.
 Used in modern processors (5nm, 3nm) for better performance.
 In a smartphone chip, redundant vias help prevent power loss and improve battery efficiency.
 PVT (Process, Voltage & Temperature):-
 A chip should work in all conditions—from freezing cold (-40°C ) to extreme heat.
 To ensure this, we simulate the chip under different PVT corners to check timing.
1. Process Variation (P) – Changes During Manufacturing
 Transistor properties change due to manufacturing imperfections.
Ex: Some chips on a wafer may be fast, some slow due to variations in materials.
 Affects delay: Slow process → Higher delay.
Fast process → Lower delay.
2. Voltage Variation(V) – Power Supply Instability
 Voltage is not always constant (e.g., 1V can fluctuate to 1.1V or 0.9V).
Causes:
 IR drop: Resistance in power lines reduces voltage.
 Supply noise: Inductance effects cause voltage spikes.
Affects delay: Higher voltage → Faster circuit (lower delay).
Lower voltage → Slower circuit (higher delay).
3. Temperature Variation (T) – Heat Effects on Chip
 High temperature → Slower transistors (higher delay).
 Low temperature → Faster transistors (lower delay).
 BUT in very small transistors (<65nm), delay increases at lower temperatures, This is called
Temperature Inversion.
 Worst-Case PVT Corners in Timing Analysis:-

Check Worst Case Condition Why?

Slow Process (SS),


Maximizes delay (data may arrive
Setup Timing Low Voltage,
too late)
& High Temperature.

Fast Process (FF),


Minimizes delay (data may arrive
Hold Timing High Voltage,
too early)
&Low Temperature.
 PVT Impact on Timing: Cell Delay vs. Net Delay
 In chip design, timing analysis is important to ensure the circuit works at the desired speed.
 Timing is affected by cell delay and net delay, both of which change due to PVT variations.
• Cell Delay (Gate Delay)
 What is it?
 The time taken by a logic cell (e.g., AND, OR, Flip-Flop) to process an input and produce an output.
 It depends on transistor switching speed inside the cell.
• PVT Impact:
 Process Variation: Slower transistors increase cell delay.
 Voltage Drop: Lower voltage reduces transistor speed, increasing cell delay.
 High Temperature: Slows down transistors, increasing cell delay (except in sub-65nm nodes due to
temperature inversion).
Ex:
 A NAND gate may normally take 100ps to switch, but under slow process, low voltage, and high
temperature, it may take 120ps.
2. Net Delay (Wire Delay / Interconnect Delay)
What is it?
 The time taken for a signal to travel through the wires (interconnects) connecting different cells.
 It depends on wire resistance (R) and capacitance (C) → RC Delay.
PVT Impact:
 Process Variation: Metal width variations change wire resistance (R), increasing RC delay.
 Voltage: Has minimal impact on net delay.
 Temperature:
 High temperature increases wire resistance, increasing net delay.
 Low temperature reduces wire resistance, decreasing net delay.
Ex:
 A long interconnect between two flip-flops might have a net delay of 50ps, but under high
temperature, resistance increases, making it 60ps.
3 Timing Paths & PVT Corners
 A timing path consists of:
Launch Flop → Combinational Logic (Cell Delay) → Interconnect (Net Delay) → Capture Flop
 Setup Timing (Data must arrive before clock edge):
 Worst case: Slow Process, Low Voltage, High Temperature (increases delay).
 Affected by cell delay (major impact) + net delay.
 Hold Timing (Data must not arrive too early):
 Worst case: Fast Process, High Voltage, Low Temperature (reduces delay).
 Affected by cell delay (major impact) + net delay.

 Cell delay is mainly affected by transistor behavior (PVT variations).


 Net delay is mainly affected by RC properties of wires.
 Both delays impact setup and hold timing, which must be checked at worst PVT corners.
Ex: Fixing Setup and Hold Violations in a Real Design
Let's consider a timing path in a digital circuit:
 Launch Flip-Flop (FF1) → Logic (Gates + Wires) → Capture Flip-Flop (FF2)
Timing analysis shows:
 Clock Period: 1ns (1GHz frequency)
 Setup Time Violation: Data arrives at 1.05ns (> 1ns)
 Hold Time Violation: Data arrives at 0.05ns (< Hold time)
 Fixing Setup Violation: Data arrive too Late
 Why it happens?
1. Slow process  Transistors switch slower.
2. Long net delay  Wire resistance / capacitance too high.
3. High Temperature  Increase delay of logic gates.
 Fixing Steps:-
 Use stronger cells ( Reduce logic delay(Drive strength Increases)):
 Like replace AND2_X2 ( weak , slower)  AND2_X4 ( Faster, Stronger).
 Insert buffers (Reduce net delay):
 Insert a buffer to break a long wire into two shorter ones.
 Clock skewing (Borrow time for data arrival):
 Delay the clock at FF2 slightly, giving more time for data to arrive.
 New Data Arrival Time: 0.95ns (Now it meets the 1ns requirement).

2. Fixing Hold Violation (Data Arrives Too Early)


Why It Happens?
Fast process: Transistors switch too quickly.
Short net delay: Signal reaches too soon.
Low temperature: Reduces wire resistance, speeding up data.
Fixing Steps:
 Use weaker cells (Increase logic delay or drive strength decreases):
 Replace INV_X4 → INV_X1 (slows down switching).
 Insert delay buffers (Increase net delay):
 Add extra buffer(s) in the data path.
 Clock skewing (Reduce available time for data to arrive early):
 Speed up the clock at FF2 slightly to reduce extra time.
 New Data Arrival Time: 0.10ns (Now it meets the hold requirement).
 RC Variations:
 What is RC Variation?
 RC variation refers to changes in resistance (R) and capacitance (C) due to fabrication process
deviations.
 It impacts interconnect delay, affecting setup and hold timing.
 Worst-Case Corners for Setup & Hold
Timing Check Process Voltage Temperature Impact

Setup Violation Slow Low High Data too slow (Max delay)
Hold Violation Fast High Low Data too fast (Min delay)
 Fixes for Setup & Hold Violations

 Fix Setup Violation (Data Too Slow)


 Increase drive strength (X2 → X4 → X8).
 Use higher metal layers (low resistance).
 Add repeaters (buffers) to reduce delay.

 Fix Hold Violation (Data Too Fast)


 Add delay buffers to slow data.
 Route on lower metal layers (higher resistance).
 Increase wire length (detour routing) to add delay.
 Critical corners for Setup & Hold
Check Process (P) Voltage (V) Temperature (T) Why?
Max T (or Min T for Ensures max delay
Setup (Worst Case) Slow (SS) Min (Vmin)
temp inversion) (slowest path)
Ensures min delay
Hold (Worst Case) Fast (FF) Max (Vmax) Min T
(fastest path)
Used for power
Power Analysis Typical (TT) Nominal (Vnom) Room Temp (~25°C)
estimation
 MC (Multi-Corner): Ensures the chip works across all PVT conditions.
Corner Mode Timing Check
SS, Min V, Max T Functional Mode Worst-case setup
FF, Max V, Min T Functional Mode Worst-case hold
SS, Min V, Max T Scan Mode Worst-case scan setup
FF, Max V, Min T Scan Mode Worst-case scan hold
TT, Nom V, Room Temp Low-Power Mode Power analysis
 Impact of RC Corners on Setup & Hold
Setup Timing (Data Too Slow):
 Worst RC (High R, High C) is the worst case for setup.
 If resistance and capacitance increase, wire delay increases, causing setup violations.
 Fix: Increase drive strength, use higher metal layers, add repeaters.
Hold Timing (Data Too Fast):
 Best RC (Low R, Low C) is the worst case for hold.
 If resistance and capacitance decrease, wire delay reduces, causing hold violations.
 Fix: Insert delay buffers, reroute signals on lower metal layers.
ON – CHIP VARIATION
On – Chip Variations(OCV):-
 OCV refers to small, unpredictable differences in transistor properties within the same chip
due to:
 Manufacturing process variations  tiny differences in transistor size, doping, etc.
 Voltage fluctuations  power supply variations across the chip.
 Temperature variations  some areas heat up more than others.
Since modern chips contain billions of transistors, these small differences add up and affect chip timing,
performance, and power efficiency.
 Scenario: Designing a Processor Clock Path
 Imagine you're designing a processor where a signal travels from one logic gate to another within 1
nanosecond (ns).
However, due to OCV effects, different parts of the chip may have slight timing variations:
Gate A takes 0.95 ns instead of 1 ns (faster due to variation).
Gate B takes 1.05 ns instead of 1 ns (slower due to variation).
A B
Result:
 The faster path may cause a HOLD timing violation (Data Arrives too early).
 The slower path may cause a SETUP timing violation (Data Arrives too late).
 This could lead to chip failures or reduced performance.

Reduce Techniques OCV impact:


 AOCV (Advanced On – Chip Variations).
 Applies different timing margins based on Path Depth.( Count of gates or Stages)
 POCV ( Parametric On – Chip Variations).
 Uses probability models instead of fixed margins for better accuracy.
 Modern chips are 7nm, 5nm  using POCV.
 Clock Skew Compensation  Adjusts the clock arrival time to balance variations.
 Adaptative Voltage Scaling (AVS)  Dynamically adjusts power to stabilize Performance.
 OCV is an unavoidable issue in modern chips, but careful design helps manage its effects.
 Ignoring OCV can lead to chip failures, performance drops, or excessive power consumption.
 Using techniques like AOCV and POCV improves chip reliability and efficiency.

• There are 2 types of variations


1. Global Variation.
2. Local Variation.
Global Variation:- ( Inter –Die Variation / Chip – to – Chip )
 Variations that effect the entire chip uniformly.
• Causes:
 Differences in manufacturing across different chips (DIE – to – DIE variations).
 All transistors on a chip experience similar changes in Process parameters.
EX:-
 Two Chips from the same wafer may have different threshold voltages due to global
manufacturing variations.
 So One chip might be  faster than another chip because of Global doping Concentration
differences.

Local Variation (Intra-Die Variation / Within the Same Chip)


 Variations that occur Within the same chip, affecting different parts differently.
• Causes:-
 Random fluctuations during fabrication, voltage drops, and Localized temperature changes.
• Effect:-
 Some transistors or circuit paths becomes faster or slower than others within the same chip.
Ex:-
 Transistors in one corner of the chip may have a slightly different threshold voltage than those in the
center.
 Some regions of a processor core may run hotter, affecting performance differently across the chip.
Global vs. Local Variations (Inter vs. Intra-Die)

Type Scope Cause Effect

Global Variation( Inter – Chip – to – Chip Wafer –Level All transistors on a chip
Die ) Manufacturing behave similarly but
differences. differ from another
chip.
Local Variation ( Intra – Within the same chip. Random fluctuations, Different regions or
Die) voltage drops, localized transistors behave
heating. differently within the
same chip.
AOCV – Advanced On – Chip Variations:
 AOCV is an improved version of traditional OCV (fixed derates) where depends on the path depth(
no. of logic gates).
 These method applies different derates based on how deep the logic path.
 Longer paths tends to have a more averaged variation (less variations)  because more no. of
gates are present in that path.
 Shortest path  Higher variations.
 So if we analysing Shortest path , it gets higher derates.( more variations)
 Similarly Longest path , it gets lower derates. ( less variations)
Ex:-
 Shortest path  3 stages  higher derates ( more pessimism).
 Longest path  10 stages  Lower derates ( less pessimism).
 Problem: It overestimates delays for short paths and underestimates them for long paths.
Advantages & Disadvantages of AOCV
Advantages Disadvantages

More accurate than OCV (reduces unnecessary Still some pessimism (not fully optimized like
delays). POCV).
Helps increase chip speed (higher frequency). More complex to implement than OCV.
Saves power by reducing extra buffers. Not as accurate as POCV for advanced nodes.
Faster timing closure than OCV. Needs extra characterization effort.
Better for advanced technologies (7nm, 5nm, 3nm). Not useful for older nodes (28nm, 16nm).
POCV – Parametric On – Chip Variations
 POCV is a more advanced version of OCV that uses statistical methods to model delay variations.
 Instead of applying fixed derates, it uses Gaussian (statistical) distributions to model delays.
 It considers the correlation between cells, making it more accurate.
 Each cells delay is modeled as a mean delay + standard deviation
 The final delay is calculated using statistical summation  Reducing pessimism.
Ex:-
 Shortest path  3 stages  Higher variation ( Wider distribution).
 Longest path  10 stages  Lower variation ( Narrow distribution).
 Why use POCV?
 It provides the most accurate timing analysis by using statistical models, reducing pessimism and
improving performance.
 Why not always use POCV?
 It is complex, expensive, and harder to debug, so it’s mainly needed for advanced nodes like 7nm,
5nm, 3nm."
Advantages & Disadvantages of POCV
Advantages Disadvantages
More Accurate Timing – Uses statistical models Complex Implementation – Requires more
instead of fixed margins. analysis than OCV/AOCV.
Reduces Pessimism – Avoids unnecessary delay
More Expensive – Needs advanced EDA tools.
margins.
Optimizes Performance – Enables higher clock Difficult to Debug – Statistical variations make
speeds by reducing over-design. debugging harder.
Lower Power Consumption – Fewer extra buffers Not Always Needed – For older nodes (28nm,
reduce power usage. 16nm), OCV/AOCV may be enough.
Improves Chip Yield – More realistic timing Requires Advanced Characterization – Needs
ensures better manufacturing success. detailed process variation models.
Best for Advanced Nodes – Ideal for 7nm, 5nm, EDA Tool Support Needed – Not all tools fully
3nm designs. support POCV.
DERATES
 Derates  method of OCV.
 Adjust delays to model variations.
 Traditional OCV uses Fixed derates.
 AOCV improves it with Table – Based derates.
 POCV is the most accurate, Using Statistical derates.
 Derates are Multipliers applied to cell & interconnect delays to account variations like PVT.
Ex:- Imagine a logic gate has delay  1 ns (normal condition).
 Due to variations, it delay might increases or decreases.
 Instead of re – characterizing every variation, we use a Derate Factor to adjust the delay.

Types:-
1. Fixed Derates ( Traditional OCV).
2. AOCV  Table based Derates.
3. POCV – Statistical Derates.
Fixed Derates:-
 A constant multiplier is used for all paths.
Ex:-
 1.1 derate is applied, a 1ns delay, So it becomes 1 * 1.1 = 1.1 ns.
 Too pessimistic because it assumes the Worst – Case.

AOCV Derates:-
 Uses predefined Look up tables to apply different derates, based upon Path depth.
 Longer path = no. of logic more = Higher derates.
POCV Derates:-
 Uses probability distributions instead of Fixed values.
 Provide the most realistic variations & with less pessimism.
 Most accurate , especially for advanced nodes (7nm, 5nm..)
Advantages of Fixed OCV , AOCV & POCV derates

Method Advantages Disadvantages


 Simple to implement.  Over pessimistic( leads to
 Conservative (safe for worst – unnecessary margins).
Traditional OCV (Fixed Derate)
case design).  Reduces chip performance &
increases power consumption.
AOCV  More accurate than OCV (  Still uses predefined margins(not
Reduces pessimism for Long fully statistical).
paths).  Less effective for ultra – deep
 Easy to integrate into existing submicron ( %nm, 3nm) nodes.
timing tools.
POCV  Most accurate ( uses statistical  More complex to implement (
models). requires statistical timing
 Reduces unnecessary margins, analysis).
improving speed & power  High cost in signoff
efficiency.

 For older nodes (45nm, 28nm, etc.)  OCV or AOCV is sufficient.


 For advanced nodes (7nm, 5nm, 3nm) → POCV is preferred due to higher accuracy and better performance
optimization.
 Derates related Setup & Hold:
 In OCV, The manufacturing process introduces variations, Where some cells may be Faster/Slower
than excepted.
 To account for these variation & prevent pessimism in timing analysis  DERATES are introduced.
 Multipliers applied to cell delays & net delays in timing checks.

Setup Analysis:- DRT > DAT.


 This checks if data arrives late and causes a problem when the clock signal is expected.
 So launch clock path gets a LATE DERATES( Increased cell delay)  it means, a little longer.
 Capture clock path gets an EARLY DERATES( Decreased cell delay)  Take less time.

Hold Analysis:- DRT < DAT.


 This checks if the data arrives too early, which can cause a problem by changing before the clock
signal is ready.
 Here, Launch clock path gets an EARLY DERATES (faster)  Arrives quickly.
 Capture clock path gets a LATE DERATES (slower)  Arrives slow.
For Setup
Late path

D D
FF1 FF2
Clk Clk

Early path
 Problem of Common Path Delay:
 If both launch and capture paths share a part of the clock tree (common path), applying different
derates (early and late) to the same path can create unrealistic delays.
 This results in extra pessimism, which can be removed using Clock Re-convergence Pessimism
Removal (CRPR) or Common Path Pessimism Removal (CPPR).
 set_timing_derate -max -early -net_delay 0.9  Apply early derate to capture path
 set_timing_derate -max -late -net_delay 1.1 Apply late derate to launch path

Derates in OCV methods:


Method Setup Derate Hold Derate Accuracy
Traditional OCV Fixed (e.g., 1.1 for setup) Fixed (e.g., 0.9 for hold) High pessimism
AOCV Variable (depends on path depth) Variable (depends on path depth) Less pessimism
POCV Statistical Statistical Most accurate
 Setup derate increases data delay, making setup violations more likely.
 Hold derate decreases clock delay, making hold violations more likely.
 AOCV & POCV refine derates to reduce pessimism and improve timing closure.
 Common Path Pessimism:
 When analyzing a path from FF1 to FF2, the launch clock and capture clock share a portion of the
clock tree (B1, B2) and then diverge.
 The common path delays (shared by both clocks) are multiplied by different derates (early and late).
 This results in different delays for the same cells depending on the clock path. The same cell can't have
both maximum and minimum delay at the same time, leading to additional pessimism.
 To remove this pessimism, Clock Re-convergence Pessimism Removal (CRPR) or Common Path
Pessimism Removal (CPPR) is used
Note:-
 CRPR removes pessimism by adjusting the delay in the common clock path
 In setup analysis, the CRPR value is added to the required time.
Setup = DRT + CRPR > DAT.
 In hold analysis, the CRPR value is subtracted from the required time.
Hold = DRT – CRPR > DAT.

 This helps to reduce pessimism and make the analysis more accurate.
ENGINEERING
CHANGE ORDER
(ECO)
Engineering Change Order (ECO):
 ECOs (Engineering Change Orders) are modifications made to the design after it has been
synthesized, placed, or routed.
 They are targeted changes that fix issues without requiring a full redesign, making them a time-
efficient solution in VLSI design.
Example:
 Suppose you're working on a chip that has passed the synthesis stage, but timing violations are
detected.
 Instead of rerunning the entire design process, you apply a Timing ECO to adjust specific paths and
ensure the timing constraints are met.
Why is ECO Needed?
•Bug Fixes – Correct functional errors in the design.
•Timing Violations – Ensure the design meets timing constraints.
•Power Optimization – Reduce power consumption.
•Feature Updates – Add or modify functionality at a late stage.
 Types of ECOs
 Functional ECO: Fixing logic issues (e.g., a bug in the design).
 Timing ECO: Solving timing violations (e.g., delays in signal propagation).
 Power ECO: Reducing power consumption (e.g., clock gating or low-power cells).
 Metal ECO: Adjusting the physical routing (e.g., fixing shorts or congestion).
 Post-silicon ECO: Changes after the chip has been fabricated (e.g., bugs discovered during testing).

 Benefits of ECO
 Saves time and cost by avoiding full redesign.
 Reduces risk and speeds up chip production.
 Ensures last-minute fixes without starting from scratch.

ECO Implementation Process


 Identify the issue (functional, timing, power, etc.).
 Modify the netlist (add/remove logic gates, buffers, or changes in wiring).
 Verify the changes using simulations and formal verification.
 Update the physical design (layout modifications).
 Perform final checks (timing, power, DRC, LVS).

Where ECOs Can Be Applied:


 RTL (Register Transfer Level) Design
 ECOs applied here often involve functional changes (fixing bugs in logic) or
adjusting timing at the RTL level.
 Synthesis
 After synthesis, timing ECOs can be applied if there are timing violations in the
gate-level netlist.
 Floor planning
 Here, power ECOs or timing ECOs can be applied to optimize the power usage or adjust placements
for better performance.
 Placement
 Timing ECOs might be applied to move gates to improve signal path delays.
 Routing
 Metal ECOs can be applied at this stage to fix routing issues like short circuits or congestion, or
even to optimize the routing layers for better performance or lower power.
 Post-routing (Layout Verification)
 Timing and Power ECOs can be applied here to fine-tune the design before signoff and ensure the
final layout meets timing and power requirements.
 Post-silicon (After Fabrication)
 If any issues are found during the testing of the fabricated chip, a Post-silicon ECO is applied to fix
any problems in the physical design or logic.
Note:
 RTL → Functional ECO.
 Synthesis → Timing ECO, Power ECO.
 Floor planning → Timing ECO, Power ECO.
 Placement → Timing ECO.
 Routing → Metal ECO.
 CTS (Clock Tree Synthesis) → Timing ECO (if clock issues like skew are found).
 Post-silicon → Post-silicon ECO (for final fixes)
 Why ECOs in CTS are Less Common?
 CTS tools are designed to optimize the clock network efficiently, and in most cases, no additional
ECOs are required.
 If issues like clock skew or timing violations persist after the CTS stage, a Timing ECO might be
used, but this is less common compared to other stages like placement or routing.

 What are the challenges faced while applying ECO?


 ECO implementation can be challenging because it requires careful verification to ensure that
changes don’t introduce new issues, especially in complex designs.
 Verification Complexity: Ensuring that the ECO doesn’t break other parts of the design.
 Timing and Cost: Delays in applying ECOs can increase costs or delay product release.
 Impact on design: Changes need to be made without affecting the overall functionality of the chip.
 Can ECO be applied after the chip has been fabricated?
 Yes, Post-silicon ECO can be applied after the chip has been manufactured to fix issues discovered
during testing.
 However, post-silicon ECO is more expensive and time-consuming compared to pre-silicon fixes.
 Post-silicon ECO: Changes are made to the chip after fabrication if issues are found during testing.
 Common for critical bugs that are difficult to catch earlier.

You might also like