Physical Design Q&A

Q171. how do you get the options/default settings in EDI?

get*Mode, where * means ECO, trailRoute, detailRoute

Q172. how do you get llx & ury of a macro?

  • set llx [lindex [lindex [dbGet [dbGet -p top.instance.name $macro].box] 0] 0]
  • set lly [lindex [lindex [dbGet [dbGet -p top.instance.name $macro].box] 0] 1]

Q173. what’s the difference b/w regular OCV & AOCV? Do you think regular OCV derating factors are more pessimistic than AOCV?

  • yes, Regular OCV is more pessimistic when we have deep logic level depth
  • In regular OCV - flat derating are applied on all the cells Irrespective of the levels of logic and hence we will see huge number of timing violations
  • AOCV: derating factors will decrease if the depth of the logic increases and derating will increase if distance of the cell from its diverging point
  • A longer path that has more gates tends to have less total variation because the random variations from gate to gate tend to cancel each other out. Accordingly, advanced OCV applies higher derating values to short clock paths and lower derating values to long clock paths
  • AOCV determines derating factors based on metrics of path logic depth and the physical distance traversed by a particular path. A longer path that has more gates tends to have less total variation because the random variations from gate to gate tend to cancel each other out. A path that spans a large physical distance across the chip tends to have larger systematic variations. AOCV is less pessimistic than a traditional OCV analysis, which relies on constant derating factors that do not take path-specific metrics into account.

Q174. what do you mean by "location based Derating" in AOCV? what's the reference which you take for deciding the derating number for a cell?

OCV derating will increasing with increasing location for the cell from diverging point in the clock

Q175. why can’t we route the design first and then do the clock tree synthesis? Any reasons?

  • In general routing will be done based on timing driven & it will be possible only after clock is built.
  • if the design gets routed first, then for clock tree you will not get proper routing resources and hence clock routing get de-tour & will impact insertion delay & skew

Q176. What happens if you swap PMOS & NMOS in CMOS inverter?

PMOS:
    ON when V(gs) < -V(tp) & OFF when V(gs) > -V(tp)

NMOS:
    ON when V(gs) > V(tn) & OFF when V(gs) < V(tp)

Assume V(tn)=V(tp)=V(t)
When PMOS & NMOS were swapped their positions, then connections will be like below
NMOS: Drain D connected to Vdd & Source S connected to load CL
PMOS: Drain D connected to Ground & Source S connected to load CL
Output voltage will take across CL and Assume initial voltage across CL is 0v

When Vin = Vdd:
For NMOS: V(gs) = Vdd - 0 = Vdd , which greater than V(t) and hence NMOS is on [i.e.V(gs) > V(t) ] and it starts charging the load capacitor CL towards Vdd.
When output voltage V0 across CL reaches Vdd - V(t) [i.e.V0 = Vdd - V(t)] , then voltage difference b/w gate & source of
NMOS will become come down to V(t) [i.e.Vgs = Vg - Vs = Vdd - (Vdd-V(t)) = V(t) ]. Then NMOS will be OFF.
So when Vin = Vdd, output V0 is Vdd-V(t). Output gets attenuated by V(t).
For PMOS: V(gs) = Vg - Vs = Vdd - 0 = Vdd , which is greater than -V(t) , so PMOs is OFF.

When Vin = 0
For NMOS: V(gs) = Vg - Vs = 0 - ( Vdd - V(t)) = - (Vdd - V(t)) , so NMOS is OFF
For PMOs: V(gs) = Vg - Vs = 0 - ( Vdd - V(t)) = - (Vdd - V(t) , which is less than -V(t) i.e.V(gs) < -V(t) condition is satisfying . So PMOS is ON.
hence voltage across load Capacitor CL will starts discharging through PMOS towards 0v and it will stop discharging
when voltage across load CL reaches V(t). So at this point Vgs = Vg - Vs = 0 - V(t) = -Vt. So PMOS will be OFF at this point.

So output voltage across load CL will be V(t) when Vin is 0v.

Summary:
V0 = Vdd - V(t) when Vin = vdd
V0 = V(t) When Vin = 0v
So this circuit doesn’t acts as pure buffer, but acts as partial buffer

Q177. if Multi cycle value for hold is 2, then on which edge do you verify/check hold violation? and does this hold check depends on frequency?

Setup MCP will be checked against capture edge by default ( i.e.-end) and hold MCP will be checked against launch edge by default ( i.e.-start). Timing checks against edges will change based on the -start or -end options specified in MCP definition.

create_clock -name CLKM -period 10 [get_ports CLKM] set_multicycle_path 3 -setup -from [get_pins UFF0/Q] -to [get_pins UFF1/D] set_multicycle_path 2 -hold -from [get_pins UFF0/Q] -to [get_pins UFF1/D]

The setup multicycle constraint specifies that the path from UFF0/CK to UFF1/D can take up to three clock cycles to complete for a setup check.

A hold multi cycle of two is specified to get the same behavior of a hold check as in a single cycle setup case. This is because in the absence of such a hold multi cycle specification, the default hold check is done on the active edge prior to the setup capture edge which is not the intent. We need to move the hold check two cycles prior to the default hold check edge and hence a hold multi cycle of two is specified

The number of cycles denoted on a multicycle hold specifies how many clock cycles to move back from its default hold check edge (which is one active edge prior to the setup capture edge).

Since this path has a setup multi cycle of 3, its default hold check is on the active edge prior to the capture edge. In most designs, if the max path (or setup) requires N clock cycles, it is not feasible to achieve the min path constraint to be greater than (N-1) clock cycles. By specifying a multicycle hold of two cycles, the hold check edge is moved back to the launch edge (at 0ns)

Thus, in most designs, a multicycle setup specified as N (cycles) should be accompanied by a multicycle hold constraint specified as N-1 (cycles).

What happens when a multicycle setup of N is specified but the corresponding N-1 multicycle hold is missing? In such a case, the hold check is performed on the edge one cycle prior to the setup capture edge. For hold check, capture edge moved back to 0ns and launch edge is also at the 0ns, then hold doesn’t depends upon the frequency at all.

Q178. What is timing window & explain about it?

The STA obtains this information from the timing windows of the aggressor nets. During timing analysis, the earliest and the latest switching times of the nets are obtained. These times represent the timing windows during which a net may switch within a clock cycle. The switching windows (rising and falling) provide the necessary information on whether the aggressor nets can switch together.

Timing window : latest & earliest arrival times difference at a particular net is the timing window for that net. Timing window is the window, during which signal may change any time within clock cycle.

Q179. Why don't you fix peak power in dynamic and why do u fix only RMS power?

In DC circuits the power is always calculated as the RMS power which produces the same heating effect as the DC power.

The current drawn is always the rms current .... I=sqrt(Power/Resistance)

Q180. How to fix text short in LVS? Can we tapeout with text short? What exactly is text short?

Same net shape or pin shape or substrate layer with two different labels. (ideally speaking no risk as it is just a label short technically). But i will not tapeout as it can hide a case where two different nets with same label or indeed an open.
  • What is synthesis?
  • Goals of synthesis
  • Synthesis Flow
  • Synthesis (input & output)
  • HDL file gen. & lib setup
  • Reading files
  • Design envi. Constraints
  • Compile
  • Generate Reports
  • Write files
Go To page
  • Netlist(.v or .vhd)
  • Constraints
  • Liberty Timing File(.lib or .db)
  • Library Exchange Format(LEF)
  • Technology Related files
  • TLU+ File
  • Milkyway Library
  • Power Specification File
  • Optimization Directives
  • Design Exchange Formats
  • Clock Tree Constraints/ Specification
  • IO Information File
Go To page
  • import design
  • sanity checks
  • partitioning (flat and hierarchy)
  • objectives of floorplan
  • Inputs of floorplan
  • Floorplan flowchart
  • Floorplan Techniques
  • Terminologies and definitions
  • Steps in FloorPlan
  • Utilization
  • IO Placement
  • Macro Placement
  • Macro Placement Tips
  • Blockages (soft,hard,partial)
  • Halo/keepout margin
  • Issues arises due to bad floor-plan)
  • FloorPlan Qualifications
  • FloorPlan Output
Go To page
  • levels of power distribution
  • Power Management
  • Powerplanning involves
  • Inputs of powerplan
  • Properties of ideal powerplan
  • Power Information
  • PowerPlan calculations
  • Sub-Block configuration
  • fullchip configuration
  • UPF Content
  • Isolation Cell
  • Level Shifters
  • Retention Registers
  • Power Switches
  • Types of Power dissipation
  • IR Drop
  • Electromigration
Go To page
  • Pre-Placement
  • Pre-Placement Optimization
  • Placement
  • Placement Objectives
  • Goals of Placement
  • Inputs of Placement
  • Checks Before placement
  • Placement Methods(Timing & Congestion)
  • Placement Steps
  • Placement Optimization
  • Placement Qualifications
  • Placement Outputs
Go To page
  • Pre-CTS Optimization
  • CTS
  • Diff b/w HFNS & CTS
  • Diff b/w Clock & normal buffer
  • CTS inputs
  • CTS Goals
  • Clock latency
  • Clock problems
  • Main concerns for Clock design
  • Clock Skew
  • Clock Jitter
  • CTS Pre requisites
  • CTS Objects
  • CTS Flow
  • Clock Tree Reference
  • Clock Tree Exceptions
  • CTS Algorithm
  • Analyze the Clock tree
  • Post CTS Optimization
  • CTS Outputs
Go To page
  • Importance of Routing as Technology Shrinks
  • Routing Objectives
  • Routing
  • Routing Inputs
  • Routing Goals
  • Routing constraints
  • Routing Flow
  • Trial/Global Routing
  • Track Assignment
  • Detail/Nano Routing
  • Grid based Routing
  • Routing Preferences
  • Post Routing Optimization
  • Filler Cell Insertion
  • Metal Fill
  • Spare Cells Tie-up/ Tie-down
Go To page
  • Diff b/w DTA & STA
  • Static Timing Analysis
  • main steps in STA
  • STA(input & output)
  • Timing Report
  • Clocked storage elements
  • Delays
  • Pins related to clock
  • Timing Arc
  • Timing Unate
  • Clock definitions in STA
  • Timing Paths
  • Timing Path Groups
  • Clock Latency
  • Insertion Delay
  • Clock Uncertainty
  • Clock Skew
  • Clock Jitter
  • Glitch
  • Pulse width
  • Duty Cycle
  • Transition/Slew
  • Asynchronous Path
  • Critical Path
  • Shortest Path
  • Clock Gating Path
  • Launch path
  • Arrival Path
  • Required Time
  • Common Path Pessimism(CPP/CRPR)
  • Slack
  • Setup and Hold time
  • Setup & hold time violations
  • Recovery Time
  • Removal Time
  • Recovery & Removal time violations
  • Single Cycle path
  • Multi Cycle Path
  • Half Cycle Path
  • False Path
  • Clock Domain Crossing(CDC)
  • Clock Domain Synchronization Scheme
  • Bottleneck Analysis
  • Multi-VT Cells(HVT LVT SVT)
  • Time Borrowing/Stealing
  • Types of STA (PBA GBA)
  • Diff b/w PBA & GBA
  • Block based STA & Path based STA
Go To page

  • Congestion Analysis
  • Routing Congestion Analysis
  • Placement Cong. Analysis
  • Routing Congestion causes
  • Congestion Fixes
  • Global & local cong.
  • Congestion Profiles
Go To page
  • Power Analysis
  • Leakeage Power
  • Switching Power
  • Short Circuit
  • Leakage/static Power
  • Static power Dissipation
  • Types of Static Leakage
  • Static Power Reduction Techniques
  • Dynamic/Switching Power
  • Dynamic Power calculation depends on
  • Types of Dynamic Power
  • Dynamic Power Reduction Techniques
Go To page
  • IR Drop Analysis
  • Types of IR Drop & their methodologies
  • IR Drop Reasons
  • IR Drop Robustness Checks
  • IR Drop Impacts
  • IR Drop Remedies
  • Ldi/dt Effects
Go To page

  • Design Parasitics
  • Latch-Up
  • Electrostatic Discharge(ESD)
  • Electromigration
  • Antenna Effect
  • Crosstalk
  • Soft Errors
  • Sef Heating
Go To page
  • Cells in PD
  • Standard Cells
  • ICG Cells
  • Well Taps
  • End Caps
  • Filler Cells
  • Decap Cells
  • ESD Clamp
  • Spare Cells
  • Tie Cells
  • Delay Cells
  • Metrology Cells
Go To page
  • IO Pads
  • Types of IO Pads
Go To page
  • Delay Calculation
  • Delay Models
  • Interconnect Delay Models
  • Cell Delay Models
Go To page
  • Engineering Change Order
  • Post Synthesis ECO
  • Post Route ECO
  • Post Silicon ECO
  • Metal Layer ECO Example
Go To page
  • std cell library types
  • Classification wrt density and Vth
Go To page

  • The Discontinuity
  • Discontinuity: Classification
  • DFM/DFY
  • Yield Classification
  • Why DFM/DFY?
  • DFM/DFY Solution
  • Wire Spreading
  • metal Fill
  • CAA
  • CMP Aware-Design
  • Redundant Via
  • RET
  • Litho Process Check(LPC)
  • Layout Dependent Effects
  • Resolution Enhancement Techniques
  • Types of RET
  • Optical Proximity Correction(OPC)
  • Scattering Bars
  • Multiple Patterning
  • Phase-shift Masking
  • Off-Axis Illumination
Go To page
  • Corners
  • Need for corner analysis
  • PVT Variations
  • Corner Analysis
  • PVT/RC Corners
  • Temperature Inversion
  • Cross Corner Analysis
  • Modes of Analysis
  • MC/MM Analysis
  • OCV
  • Derating
  • OCV Timing Checks
  • OCV Enhancements
  • AOCV
  • SSTA
  • CRPR/CPPR
Go To page
Copyright © 2021