Static Timing Analysis Interview Questions
Static Timing Analysis Interview Questions
Checks for both timing and functionality. Checks for only timing.
Dependent on input data (test vectors). Independent of data.
Slower because it also checks the Faster and takes less time.
functionality.
14.Derating Factor:
Timing derate numbers are ratios used to derate(increase/decrease) the delay
numbers you get in your timing reports.
15.Common Path Pessimism Removal (CPPR):
It means the cells sitting in the common clock branch for both launching and
capturing paths.
16.Advanced OCV (AOCV):
In AOCV derate is applied on each cell based on path depth and distance of the cell in
the timing path and it also varies with cell type and drive strength of the cell.
Distance is defined by a bounding box for the net and cells.
• Used above 40nm technology.
• Distance is the max net length of clock path.
• Path Depth defines the no. of cells in the clock path.
17.Parametric On chip Variation (POCV):
• In POCV instead of applying the specific derate factor to a cell, cell delay is
calculated based on delay variation (σ) of the cell. In POCV it is assumed that
the normal delay value of a cell follows the normal distribution curve.
• POCV uses a nominal delay value (µ) instead of using the min or max value of
delay to model the random variations.
• Timing analysis is done using the nominal delay value (µ) and delay variation (σ).
• Used above 40nm technology.
18.Clock:
The signal which is used to trigger all the sequential elements in the design.
Types,
• Synchronous
• Asynchronous
• Exclusive
19.Synchronous & Asynchronous Clocks:
• Two clocks are synchronous with respect to each other if they share a common
source and have a fixed phase relationship and a common base period(should
have a common multiple).
Ex: time period of two clocks : 2 and 6, here the common base period is 2.
• Two clocks are said to be asynchronous if they do not have a fixed phase
relationship with each other in the design and don’t have a common base
period.
Ex: time period of two clocks : 6 and 7, here there is no common base period.
20.Exclusive Clocks:
• Two clocks are exclusive if they do not interact with each other.
• For example, a circuit might multiplex two different clock signals onto a clock
line, one a fast clock for normal operation and the other a slow clock for low-
power operation.
• Only one of the two clocks is enabled at any given time, so there is no
interaction between the two clocks.
• You may define "false path" between these mutually exclusive clocks.
21.Virtual Clock:
• A virtual clock has no actual source in the current design, but you can use it for
setting input or output delays.
• You can use virtual clock cmd to define virtual clocks for signals that interface
to external clocked devices (other block).
22.Create Clocks:
• The crete_clock cmd is used to create a clock at the specified source. A source
can be defined at an input port of the design or an internal pin.
• To create a clock on ports C1 and CK2 with a period of 10, a rising edge at 2,
and falling edge at 4, enter the cmd
• With this an ideal clock is created that ignores the delay effects of the clock
network.
23.Gated Clock:
A gated clock is a clock signal under the control of gating logic.Tool performs both
setup and hold checks on the gating clock.
24.Generated Clocks:
• A generated Clock is a clock signal generated from another clock signal by a
circuit within the design itself, such as a clock divider.
• The create_generated_clock cmd is used to create generated clocks in which
you can create frequency divided (-divide_by) or frequency multiplied (-
multiply_by) clock.
CMD: create_generated_clock –name dclk\
–source [get_ports CLK] –divide_by 2 [get_ports FF1/Q]
As seen in Figure 2, the det output will go high as soon as a rising edge is detected on
the d input. The det output is cleared on the next rising clock edge.
Falling Edge Detector:
As seen in Figure 4, the det output will go high as soon as a falling edge is detected
on the d input. The det output is cleared on the next rising clock edge.
26.Timing Path:
Timing path is defined as the path between start point and end point.
• Start Point - CK pin of flop or Input port of the block.
• End Point - D pin of the flop or output port of the block.
27.Types of Paths:
• Reg to Reg
• In to Reg
• Reg to Out
• In to Out
28.Input Delays:
• In order to do the timing analysis in the paths like I2R and I2O, tool needs
information about the arrival times of the signals at the input ports.
• The set_input_delay cmd is used to specify the min and max amount of delay
from a clock edge to the arrival of a signal at a specified input port.
29.Output Delays:
• In order to do the timing analysis in the paths like R2O and I2O, tool needs
information about the timing requirements at the output ports.
• The set_output_delay cmd is used to specify the min and max amount of delay
between the output port and the external sequential device that captures the
data from that output port is specified at that output port.
30.Recovery and Removal times:
Recovery time is the minimum time that as asynchronous control signal must be
stable before the clock active-edge transition. In other words, this check ensures that
after the asynchronous signal become inactive, there is adequate time to recover so
that the next active clock edge can be effective.
Removal time is the minimum length of time that an asynchronous control must be
stable after the clock active edge transition. This check ensures that the active clock
edge has no effect because the asynchronous control signal remains active until
removal time after the active clock edge.
3. Sanity Checks:
check_design - Netlist check_timing - SDC
• Unresolved References • Sequential clock pin without clock waveform
• Empty Modules • Sequential clock pin with multi clock waveform
• Unloaded Ports • Generated clocks without clock waveform
• Unloaded Sequential Pins • Generated clocks with multi master clocks
• Undriven Leaf pins • Timing exceptions with no effect
• Undriven Ports • Inputs/Outputs without clocked external delay
• Combinational Loops Exceptions with invalid timing start or end points
• Multidriven Port
4. Elaborate:
Elaboration is the process that occurs between parsing and simulation. It binds
modules to module instances, builds the model hierarchy, computes parameter values,
resolves hierarchical names, establishes net connectivity, and prepares all of this for
simulation.
5. Inputs of Synthesis:
▪ .lib
▪ .lef
▪ SDC
▪ RTL
▪ Tech lef
6. Types of libraries:
Slow, Typical and Fast libraries.
Corner Process Voltage Temperature
Slow SS 0.9 125
Typical TT 1 25
Fast FF 1.1 M40
26. set_dont_use:
This cmd is used to specify the std cells, so that the tool don’t use these cells in the
design at the time of optimization.
27. False Path:
A false path is a timing path which is not required to meet its timing constraints for the
design to function properly.
28. Multi Cycle Path:
A Multi-Cycle Path (MCP) is a flop-to-flop path, where the combinational logic delay in
between the flops is permissible to take more than one clock cycle.
35. Min Delay & Max Delay:
A path must match a delay constraint that matches a specific value. It is not an integer
like multicycle path.
36. Design for Testability (DFT):
The process in which we check for failures in the functionality due to manufacturing
faults by inserting test patters in the design.
30. Scan:
Scan diagnosis helps identify the location and classification of a defect based on the
design description, test patterns used to detect the failure, and data from failing
pins/cycles.
31. Scan Stiching:
The process of serially connecting a group of scan flipflops together to form a
scan chain is referred to as 'scan stitching'.
The scan chain stitching is made power aware by placing flip-flops with higher
test combination requirements at the beginning of scan chains, while flip-flops with
lower test combination requirements are put toward the end of scan chains.
32. Scan Chain:
• Scan chains are the elements in scan-based designs that are used to shift-in and
shift-out test data.
• A scan chain is formed by a number of flops connected back to back in a chain
with the output of one flop connected to another.
• The input of first flop is connected to the input pin of the chip (called scan-in)
from where scan data is fed.
• The output of the last flop is connected to the output pin of the chip (called scan-
out) which is used to take the shifted data out.
33. Memory Built In Self Test (MBIST):
MBIST is a self-testing and repair mechanism which tests the memories through
an effective set of algorithms to detect possibly all the faults that could be present
inside a typical memory cell whether it is stuck-at (SAF).
34. Joint Test Action Group (JTAG):
JTAG is a powerful test technology that can be used to test the io pads for all the
possible Manufacturing Defects or Faults.
35. Test Enable:
Input to the scan-flop that controls whether scan_in data or functional data will
propagate to output.
36. Scan Chain Reordering:
• It is the process of reconnecting the scan chains in a design to optimize for
routing by reordering the scan connection which improve timing and
congestion.
• It is done either at pre CTS or post CTS.
• And then the CTS def is sent to DFT team for changing the test vectors for the
reordered scan chain.
• By converting load enable circuits to clock gating circuit dynamic power can be
reduced. Normal clock gating circuit consists of an AND gate in the clock path
with one input as enable. But when enable becomes one in between positive
level of the clock a glitch is obtained.
• To remove the glitches due to AND gate, integrated clock gate is used. It has a
negative triggered flop and an AND gate.
2. Inputs of PnR:
• Netlist(.V)
• Updated SDC(Standard Design Constraints)
• .lib (Liberty or Library file)
• .lef(Library Exchange Format)
• TLU+ (Table Look Up)
• Captable File
• UPF(Unified Power Format).
3. DEF (Design Exchange Format):
DEF File is a text file which consist of :
• Placement info
• Pin Locations
• Metal Blockages
• Orientation
• Macro Placement Info
4. UPF (Unified Power Format):
UPF contains :
• supply set definition,
• power domain definition,
• power switch definition
• retention cell definition
• level shifter cell definition and other low power related definition.
5. TLU(Table Look Up):
It is a table containing wire capacitance at different net length and spacing. contain RC
coefficients for specific technology.
6. Manufacturing Deviations:
Minimum spacing rules to be followed to consider manufacturing deviations,
otherwise adjacent nets gets shorted if the deviation on the adjacent nets is opposite.
7. Pitch:
The distance between the centre to centre of the metal is called as pitch.
8. Offset:
Offset is the distance between the core and first metal layer.
9. Core:
A 'core' is the section of the chip where the fundamental logic of the design is placed.
10.Die:
Die is the combination of core area and I/O pad area.
11.Package:
The package is a case that surrounds the circuit material to protect it from corrosion
or physical damage and allow mounting of the electrical contacts connecting it to the
printed circuit board (PCB).
12.I/O Pads:
• Input/ Output circuits (I/O Pads) are intermediate structures connecting internal
signals from the core of the integrated circuit to the external pins of the chip
package.
• Typically I/O pads are organized into a rectangular Pad Frame.
• The input/output pads are spaced with a Pad Pitch.
13.I/O Voltage:
The Voltage which powers the I/O Pads.
14.Core Voltage:
Core voltage is the voltage which powers the Logic Blocks ,logic cells in the core area.
15.OBUF:
Output Buffer is used to drive the signal from the design to the external output pads.
16.IBUF:
Input Buffer is used to drive the signal from the external pads to the design.
17.Level Shifters:
Level Shifters (LS) are special standard cells used in Multi Voltage designs to covert one
voltage level to another.
18.STD.Cell Utilization:
The ratio of the total std. cell area to the core area is known as std. cell utilization.
19.Core Utilization:
The Ratio of the std.cell area, macro area and blockage are to the total core area.
• All the macros should be placed at periphery of the core boundaries but not at the
center of the core.
• Macros are to be placed such that pins must face towards the core area.
• Macros should not contain criss crossing.
• There must be a space between two macros.
• The space between a macro and core boundary is = (Total no. of pins/No. of vertical
layers) x pitch
• Halo should be specified around the macros.
• Notches should be avoided.
44. Types of Blockages:
Blockages are used to avoid the congestion in our design. There are 2 types of
blockages
• Placement Blockage.
(a) Soft Blockage:
This Blockage allows only optimization cells to be place in it.
(b) Partial Blockage:
It allows only specified percentage of cells to be placed.
(c) Hard Blockage:
It does not allow any cells to be placed.
• Routing Blockage.
It allows only some specified metal layers inside the blockage.
45. Stack Via and Via Array
• A stacked via consists of multiple vias layered directly on top of each other.
• Array vias are used for connecting wide wires where the required cut size would
exceed the maximum cut size of the simple via.
ARRAY VIA
STACK VIA
46. Halo:
Halo is special hard blockage around the macro which blocks the placement of std.
cells near the macro.
47. Physical Cells:
These cells are not present in the design netlist. if the name of a cell is not present in
the current design, it will consider as physical only cells. they do not appear on timing
paths reports they are typically invented for finishing the chip.
48. Tap Cells:
• Used to avoid cell damage which are placed at core boundary & to main row
continuity.
• These are placed at pre-placement stage.
• Cell padding is used to avoid the congestion caused by high pin density cells. For
these cells we reserve some site by using cell padding technique.
• Cell padding is done for specified cell name in the design.
57. Instance Padding:
• Minimum Skew
• Minimum latency
• DRV’s
66. Leaf Pin:
The flop pin where the cts stops balancing the skew is known as leaf pin.
67. Root Pin:
The start point of the clock is called root pin.
68. Clock Insertion Delay:
The delay between the source of the clock signal and the flip-flop clock pin is known
as Clock Insertion Delay.
• Detailed routing follows up with the track routed net segments and performs
the complete DRC aware and timing driven routing.
• It is the final routing for the design built after the CTS and the timing is freeze
• Filler Cells are adding before Detailed Routing
• Detail Routing is done after analyze the cause for congestion in the design, add
density screen or change floorplan etc.
79. Max_dept :
This parameter indicates no. of logic levels that tool can trace through before CTS is
done.
80. RC Corners:
RC Corners are the wire delay corners which we use for timing analysis
• RC_Worst
• RC_Best
• C_Worst
• C_Best
81. SPEF(Standard Parasitic Extraction Format):
• SPEF mainly contains extracted RC values of every single net in the design.
• It is the input to the STA where we can get accurate RC delays of the net.
82. Design Modes:
• MBIST MODE
• JTAG MODE
• SCAN SHIFT MODE
• SCAN CAPTURE MODE
• FUNCTIONAL MODE.
83. Rise and Fall Glitch:
Whenever one net switches from low to high and other neighbouring net is supposed
to remain constantly low, will get affected by the switching net due to the mutual
capacitance in that case we have a rising glitch on it.
Whenever one net switches from high to low and other neighbouring net is supposed
to remain constantly high, will get affected by the switching net due to the mutual
capacitance in that case we have a falling glitch on it.
84. Increase in Cell Delay (Factors):
• Input Skew
• Library Setup Time
• Operating Conditions
• Wire Load Models
• Input Transition
• Output load Capacitance.
85. Glitch Analysis:
• Glitch analysis depends upon the height because of this height it could be safe
or unsafe.
• If the glitch height is in between Vol and Vil then it is safe.
• If the glitch height is in between Vih and Voh then it is unsafe.
• If the glitch is in between undefined region then it is unpredictable.
• The glitch height depends upon the factors
➢ Coupling Capacitance
𝐶𝑚
ℎ𝖺
𝐶1+𝐶2
1
𝐶𝑚 𝖺
𝐷
➢ In lower node technologies the distance(D) Cm So the height(h) is
more. So the glitch will be in unsafe.
• Aggressor drive strength is more, the slew rate is faster, higher the crosstalk.
• Victim drive strength is more, lower the crosstalk.
• Load Splitting is the technique which adds the buffer in high fanout nets and
divides the load.
• For max_tran violation we use this technique to reduce it.
91. DRC(Design Rule Check):
Design Rule Checking (DRC) verifies as to whether a specific design meets the
constraints imposed by the process technology to be used for its manufacturing.
92. Module Constraints Types: Guide, Fence, Region
Sometimes we need to place a particular group of standard cells or modules in a
particular area (box).
93. Fence:
Latchup refers to short circuit/low impedance path formed between power and
ground rails in an IC leading to high current and damage to the IC. It occurs due to
interaction between parasitic pnp and npn transistors. The structure formed by these
resembles a Silicon Controlled rectifier (SCR).
2. Antenna Effect:
The oxide layer is often only a few molecules thick, and if enough charge builds up,
the thin oxide layer breaks down, damaging or even completely destroying the MOSFET.
This accumulation of charge is usually, and misleadingly, called the antenna effect.
𝑀𝑒𝑡𝑎𝑙 𝐴𝑟𝑒𝑎
𝐴𝑛𝑡𝑒𝑛𝑛𝑎 𝑅𝑎𝑡𝑖𝑜 =
𝐺𝑎𝑡𝑒 𝐴𝑟𝑒𝑎
3. Electro Migration:
Electromigration is the movement of atoms based on the flow of current through
a material. If the current density is high enough, the heat dissipated within the material
will repeatedly break atoms from the structure and move them. This will create both
‘vacancies’ and ‘deposits’. The vacancies can grow and eventually break circuit
connections resulting in open-circuits, while the deposits can grow and eventually
close circuit connections resulting in short-circuit.
• Here the vacancies are called voids.
• The deposits are called hillocks.
4. IR Drop:
IR drop is the voltage drop in the metal wires constituting the power grid before
it reaches the power pins of the standard cells. It becomes very important to limit the
IR drop as it affects the speed of the cells and overall performance of the chip. There
are two types of IR drops:
• Static - Vstatic_drop = Iavg x Rwire [Iavg are all factors of leakage currents ]
• Dynamic - Vdynamic_drop = L (di/dt) [current L is due to switching current]
5. Cross Talk:
If a signal voltage level goes above the VDD value is called Overshoot.
If a signal voltage level goes below the VSS value is called Undershoot.
7. ECO Flow:
Engineering change order (ECO) refers to a practice in the VLSI design flow to
accommodate specification changes, to rectify functional errors, or to fix non-
functional design requirements, such as timing and power, with minimal disturbance
to the existing implementation, to save as much as possible the already-spent
optimization efforts.
8. Metal Density Check:
Density check is performed to check the even density through out the chip which
required for manufacturing process to ensure the mechanical sturdiness of the chip to
achieve planarity during CMP (Chemical Mechanical Polishing). Different density
checks verify the overall density of each metal and densities per unit area.
9. Why the Metal Fill is required?
If there is lot of gap between the routed metal layers (empty tracks), during the
process of Etching the etching material used will fall more in this gap due to which
Over Etching of existing metal occurs which may create opens. So in order to have
uniform Metal Density across the chip, Dummy Metal is added in these empty tracks.