Physical Design Q&A

Q81. How are the number of Buffer (logic) levels determined during CTS?

  • Spread macros
  • Spread standard cells
  • Increase strap width
  • Increase number of straps
  • Use proper blockage

Q82. Which is better compared to buffer and inverter? If so, Why?

  • Inverters, Since the Transition time is less for Inverters. It reduced current flow between VDD and VSS rail and hence Power reduction. Better to use both with all drive strength to get good skew and insertion delay.
  • One other advantage of using inverters in a clock tree is the reduction of duty cycle distortion. The delay models for a cell library are usually characterized at three different operation conditions or corners: worst, typical, and best. But, there are other effects that are not modeled at these corners. You can have clock jitter introduced by the PLL, variances in the doping of PFETs or NFETs, and other known physical effects of a manufacturing process.

Q83. While Doing CTS which buffer and inverters are used in the Design?

Clock tree synthesis uses buffers or inverters in clock tree construction. The tool identifies the buffers and inverters if their Boolean function is defined in library preparation. By default, clock tree synthesis synthesizes clock trees with all the buffers and inverters available in your libraries. It is not necessary to specify all of them explicitly in the Buffers/Inverters.

Q84. How will you have built Clock tree for Gated Clocks?

Historically, separate trees are built for any net that drives clock gating elements as well as clock leaves. The two trees diverge at the root of the net. This typically results in excessive insertion delays and makes the clock tree more susceptible to failure due to on-chip variation (OCV).
By default, the clock tree synthesizer attempts to tap the gated branches into a lower point in the clock tree, sharing more of the clock tree topology with the non-gated branches. It attempts to insert negative offset branch points earlier in the main tree.
In many cases, this results in fewer buffers being inserted as well as lower clock insertion delays. Sharing the clock tree topology between gated and non-gated branches typically also reduces the local OCV impact on timing. You should disable the clock tap-in feature if too many buffers are inserted or if the clock tree insertion delay is too large.

Q85. Explain Clock Tree Options for building better Clock Tree?

Five special clock options are available to address this situation. They greatly expand your ability to control the clock building.

Clock phase:
  1. A clock phase is a timer event that is associated with a particular edge of the source clock.
  2. Each clock domain created with two clock phases:
    • The rising edge
    • The falling edge.

  • The clock phases are named after the timing clock with R or F to denote rising or falling clock phase.
  • These phases propagate through the circuit to the endpoints, so that events at the clock pins can be traced to events driven by the clocks defined.
  • Because Tool is capable of propagating multiple clocks through a circuit, any clock pin can have two or more clock phases associated with it.
  • For example, if CLKA and CLKB are connected to the i0 and i1 inputs of a 2:1 MUX, all clock pins in the fan-out of this MUX have four clock phases associated with them—CLKA:R, CLKA:F, CLKB:R, and CLKB:F. (This assumes that you allow the propagation of multiple clock phases).

Skew phase:
  • A skew phase is a collection of clock phases.
  • Each clock phase is placed into the skew phase of the same name.
  • When a clock is defined, skew phases are also automatically created. They are created with the same names as the clock phases that are created.

Skew group
  • Clock tree skew balancing is done on a per-skew group basis.
  • A skew group is a subdivision of a clock phase.
  • Normally, all pins in a clock phase are in group 0 and are balanced as a group.
  • If you have created a set of pins labeled as group 1,
    For example,
  • Then the skew phase containing these pins will be broken into two skew groups: one containing the user-specified group, and one containing the “normal” clock pins.
  • This feature is useful if we want to segregate certain sets of clock pins and not balance them with the default group. We can now define multiple groups of pins and balance them independently.

Skew anchor or Sink Point
  • A skew anchor is a clock endpoint pin that controls downstream clock tree.
  • For example, a register that is a divide-by-2 clock generator has a clock input pin that is a skew anchor, because the arrival time of the clock at that clock pin affects the arrival times of all the clocks in the generated domain that begins at the register Q pin.

Skew offset
  • The skew offset a floating point number to describe certain phase relationships that exist, when placing multiple clocks with different periods or different edges of the same clock different phases into the same skew phase.
  • Use the skew offset to adjust the arrival time of a specific clock phase when you want to compare it to another clock phase in the same group.

Q86. How does a skew group relate to the clock phase and skew phase?

  • A skew group is a set of clock pins that have been declared as a group. By default, all clock pins are placed in group 0. So each skew phase contains one group.
  • If the user has created a group of pins labeled by the number 1, for example, then the skew phase that contains these pins will be broken into two skew groups:
      (i) The “normal” clock pins
      (ii) The user-specified group.
  • This is useful for segregating groups of clock pins that have special circumstances and that you do not want to be balanced with the default group.
  • Skew optimization is performed on a skew-group basis that takes place after the basic clock is inserted

Q87. Why to reduce Clock Skew?

  • Reducing clock skew is not just a performance issue, it is also a manufacturing issue.
  • Scan based testing, which is currently the most popular way to structurally test chips for manufacturing defects, requires minimum skew to allow the error free shifting of scan vectors to detect stuck-at and delay faults in a circuit.
  • Hold failures at the best-case PVT Corner is common of these circuits since there are typically no logic gates between the output of one flop and the scan input on the next flop on the scan chain.
  • Managing and reducing clock skew in this case often resolves these hold failures.

Q88. What are all the Checks to be done before doing CTS?

  • Hierarchical pins should not be defined as a clock source
  • Generated clock should have a valid master clock source A generated clock does not have a valid master clock source in the following situations:
    • The master clock specified in create_generated_clock does not exist.
    • The master clock specified in create_generated_clock does not drive the source pin of the generated clock.
    • The source pin of the generated clock is driven by multiple clocks, and some of the master clocks are not specified with create_generated_clock.
  • Clock (master or generated) with no sinks
  • Looping clock
  • Cascaded clock with an un-synthesized clock tree in its fan-out
  • Multiple-clocks-per-register propagation not enabled, but the design contains overlapping clocks
  • Clock tree exceptions should not be ignored.
  • Stop pin or float pin defined on an output pin is an issue.

Q89. How will you synthesize clock tree?

  • Single clock-normal synthesis and optimization
  • Multiple Clocks-Synthesis each clock separately
  • Multiple clocks with domain Crossing-Synthesis each clock separately and balance the skew

Q90. How many clocks were there in this project?

  • It is specific to your project
  • More the clocks more challenging!
  • 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