SlideShare a Scribd company logo
PHYSICAL DESIGN
(GATE LEVEL NETLIST TO GDSII)
WHAT IS SYNTHESIS? & GOALS OF SYNTHESIS
Synthesis: It is the process of converting RTL code to Gate Level Netlist
Synthesis is process of converting RTL (Synthesizable Verilog code) to technology specific
gate level netlist (includes nets, sequential and combinational cells and their connectivity).
Goal of synthesis:
1. To get a gate level netlist
2. Inserting clock gates
3. Logic Optimization
4. Inserting DFT (Design for Testability)
5. Logic Equivalence Check B/W RTL to Netlist should be maintained
SYNTHESIS INPUTS
INPUTS FOR SYNTHESIS
1. RTL(.V)
2. LIBRARAY LIFES(.LIB)
3. SYNOPSYS DESIGN CONSTRAINTS (.SDC)
4. UNIFIED POWER FORMAT (UPF)
5. SCAN CONFIGURATION FILE
6. TECHNOLOGY FILE(.TF )
INPUT FILES REQUIRED
Tech related:
1. .tf- technology related information.
2. .lib-timing info of standard cell & macros
Design related:
1. .v- RTL code.
2. SDC- Timing constraints.
3. UPF- power intent of the design.
4. Scan config- Scan related info like scan chain length, scan IO, which flops are to be considered in the scan
chains.
For Physical aware:
1. RC co-efficient file (tluplus).
2. LEF/FRAM- abstract view of the cell.
3. Floorplan DEF- locations of IO ports and macros.

Recommended for you

VLSI
VLSIVLSI
VLSI

Tevatron Technologies is a private company focused on VLSI design, FPGA-based design, and embedded systems. Their vision is to be an end-to-end provider for electronics system design and manufacturing. The company hosted an industrial training seminar on RTL design, Verilog, and FPGA design. The seminar covered topics like VHDL vs. Verilog, Verilog coding styles, data types, constructs, RTL coding guidelines, and FPGA architecture. VLSI allows integrating millions of electronic components on a small chip area and is used for applications like processors, memory, and specialized chips.

24-02-18 Rejender pratap.pdf
24-02-18 Rejender pratap.pdf24-02-18 Rejender pratap.pdf
24-02-18 Rejender pratap.pdf

This document discusses the basics of RTL design and synthesis. It covers stages of synthesis including identifying state machines, inferring logic and state elements, optimization, and mapping to target technology. It notes that not everything that can be simulated can be synthesized. Good coding style reduces hazards and improves optimization. Examples are given of how logic, sequential logic, and datapaths can be synthesized. Pipelining is discussed as dividing complex operations into simpler operations processed sequentially.

ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGYASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY

- Designed and analyzed a complete MSDAP with optimized convolution computation by only shifts and adds using power-of-2 coefficients. Synthesized the chip through high level architecture design (C Program), Logic synthesis (Synopsys Design Compiler) and Physical Synthesis (Synopsys IC compiler). - Achieved a low power consumption of 3.1438mW at 29.186Mhz clock frequency, with core utilization of 70% and chip area of 1.29mm2.

SYNTHESIS FLOW STEPS
1)Analyze
Checks syntax on RTL and generates immediate files.
SYNTHESIS FLOW
2)Elaborate
1. Brings all lower level blocks into synthesis tool.
2. All the codes and arithmetic operators are converted into GTECH and DW (Design Ware) components.
These are technology independent libraries.
I. GTECH- contains basic logic gates &flops.
II. Design Ware- contains complex cells like FIFO, counters.muxs
Elaborate performs following tasks;
Analyses design hierarchy. Removes empty switches and dead branches. Executes initial commands.
Detects asynchronous reset. Converts decision trees to mux. Converts synchronous to D Latch/DFF.
FSM pass
1. Detects FSM logic and extracts the no of input, output bits and state bits.
2. Converts FSM logic to basic logic.
SYNTHESIS FLOW
Memory pass
Merging DFF to memory write(memwr) and memory read (memrd)
Consolidating memwr/memrd cells
Generate memory (mem) cells
Mapping mem cells to basic logic
3)Import constraints and UPF
1. Once the design is extracted in the form of technology independent cells, timing constraints are
imported from the SDC file.
2. If the design consists of multiple power domains, then using the UPF power domains, isolation cells,
level shifters, power switches, retention flops are placed.
4.CLOCK GATING
 Due to high switching activity of clock ,a lot of dynamic power is consumed. One of the techniques to lower the
dynamic power is clock gating. In load enabled flops, the output of the flops switches only when the enable is on.
But clock switches continuously, increasing the dynamic power consumption.
 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

Recommended for you

Scan insertion
Scan insertionScan insertion
Scan insertion

Scan design is currently the most popular structured DFT approach. It is implemented by Connecting selected storage elements present in the design into multiple shift registers, called Scan chains. Scannability Rules --> The tool perform basic two check 1) It ensures all the defined clocks including set/Reset are at their off-states, the sequential element remain stable and inactive. (S1) 2) It ensures for each defined clocks can capture data when all other defined clocks are off. (S2)

dftscan designscan pattern generation
Resume_new1_may
Resume_new1_mayResume_new1_may
Resume_new1_may

Anuradha is a senior specialist seeking a place and route engineer position. She has over 12 years of experience in physical design including floorplanning, placement, routing, and parasitic extraction. She is proficient with Cadence SOC Encounter for 90nm design and has worked on projects such as a DTMF core and RISC processor from RTL to GDSII. Anuradha is looking to leverage her skills and experience in physical design.

Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...

This document describes the design and implementation of pulse width modulation (PWM) using a hardware/software approach with the MicroBlaze soft-core processor on a Xilinx FPGA. The MicroBlaze processor is programmed in C to generate PWM signals by controlling the clock frequency and adjusting the pulse width without using timer/counter blocks. The PWM design is implemented on a Virtex-5 FPGA and the output signals are displayed on an oscilloscope. The MicroBlaze implementation provides flexibility while using fewer resources and lower power compared to a design using additional memory and timer blocks.

SYNTHESIS FLOW
1.To remove the glitches due to AND gate, integrated clock gate is used. It has a negative level
sensitive latch and an AND gate.
2.Clock gating makes design more complex. Timing and CG timing closure becomes complex. Clock gating adds
more gates to the design. Hence min bit width (minimum register bit width to be clock gated) should be wisely
chosen, because the overall dynamic power consumption may increase.
SYNTHESIS
5)Compile
 Performs Boolean optimization.
 Maps all the cells to technology libraries.
 Performs logic and design optimization.
SYNTHESIS FLOW
Optimization
Logic optimization Design optimization
1. Detect identical cells 1.Reduce TNS and WNS
2. Optimize mux(dead branches in mux) 2.Power Optimization
3. consolidate mux and reduce inputs(many to single ) 3. Area Optimization
4. Remove DFF with constant value 4.Meet the timing DRV’s
5. Reduce word size of the cells 5. incremental clock gating
6. Remove unused cells and wires
7. Constant folding
SYNTHESIS
7)DFT (Design for Testing) insertion
1. DFT circuits are used for testing each and every node in the design.
2. More the numbers of nodes that can be tested with some targeted pattern, more is the coverage.
3. To get more coverage the design needs to be more controllable and observable.
4. For the design to be more controllable we need more control points (mux through which alternate
path is provided to propagate pattern).
5. For the design to be more observable we need more observe point (A scan-able flop that observes
the value at that node).
6. Scan mode is used to test stuck at faults and anufactured devices for delay.

Recommended for you

ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI

This document provides an overview of the ASIC design process, which includes the following main steps: 1. Front-end design including market research, specification, architecture, and RTL design. 2. Verification of the RTL code by verification engineers. 3. Synthesis of the RTL code into a gate-level netlist, followed by equivalence checking. 4. Physical design including placement and routing of standard cells, followed by extraction of parasitic components and timing analysis. 5. Physical verification including design rule checking and layout vs schematic checking.

vlsiphysical designfpga
Level sensitive scan design(LSSD) and Boundry scan(BS)
Level sensitive scan design(LSSD) and Boundry scan(BS)Level sensitive scan design(LSSD) and Boundry scan(BS)
Level sensitive scan design(LSSD) and Boundry scan(BS)

This presentation contains, Introduction,design for testability, scan chain, operation, scan structure, test vectors, Boundry scan, test logic, operation, BS cell, states of TAP controller, Boundry scan instructions.

level sensitive scan designlssdbs
Design for testability and automatic test pattern generation
Design for testability and automatic test pattern generationDesign for testability and automatic test pattern generation
Design for testability and automatic test pattern generation

this ppt presents a brief information about testability and automatic test pattern generation used in making of CMOS circuits

testabilityatpg
SYNTHESIS
7)DFT (Design for Testing) insertion
Scan mode is done using scan chains
1. Scan chains are part of scan based designs to propagate the test data.
2. By having scan chains, the design can be more controlable and observable.
3. Each scan chain inputs the pattern through scan input and outputs the pattern through scan output.
4. Scan chain consists of scan flops where the output of scanflops is directly connected to scan inputs of
the flops
SYNTHESIS
7)DFT (Design for Testing) insertion
Stages of scan mode
1. Inputs the pattern through scan input port.
2. Scan shift- Scan enable is set to 1. Then inputs the pattern through the scan input, shifts the pattern
through the scan flops and load all the flops with test pattern.
3. Scan capture- Scan enable is set to 0. In one clock cycle the loaded value in the flops propagates
through combinational circuit and reaches the D pin of the next flop.
4. Scan enable is set to 1 and outputs the pattern through scan output port.
SYNTHESIS
1. The scan chain length and number of scan chains has to be properly chosen, as having more scan
chain length increases the pattern propagation time and having more scan chains increases the number
of scan IO ports.
2. Scan chain
Compile incremental
1. Technology mapping of DFT circuit
2. Optimization of the design
SYNTHESIS OUTPUTS
Outputs of synthesis
1. synthesized netlist
2. Modified constraints (.sdc)
3. Modified UPF
4. Timing reports
5. Scan DEF: Information of scan flops and their connectivity in scan
chain

Recommended for you

chameleon chip
chameleon chipchameleon chip
chameleon chip

The document discusses the Chameleon Chip, a reconfigurable processor that can rewire itself dynamically to adapt to different software tasks. It contains reconfigurable processing fabric divided into slices that can be reconfigured independently. Algorithms are loaded sequentially onto the fabric for high performance. The chip architecture includes an ARC processor, memory controller, PCI controller, and programmable I/O. Its applications include wireless base stations, wireless local loops, and software-defined radio.

EC8791-U5-PPT.pptx
EC8791-U5-PPT.pptxEC8791-U5-PPT.pptx
EC8791-U5-PPT.pptx

The document discusses various topics related to processes, operating systems, and real-time embedded systems design including: 1. Interprocess communication mechanisms like shared memory, message passing, signals, and mailboxes. 2. Factors that affect operating system performance such as context switching time and interrupt latency. 3. Power optimization strategies for processes including predictive shutdown and the Advanced Configuration and Power Interface standard. 4. Examples of real-time embedded system designs including an audio player, engine control unit, and video accelerator.

Hari Krishna Vetsa Resume
Hari Krishna Vetsa ResumeHari Krishna Vetsa Resume
Hari Krishna Vetsa Resume

Hari Krishna Vetsa has over 2 years of experience in RTL design including timing analysis, verification, testing, debugging, and logic minimization. He has knowledge of Tomasulo processors, PCI, UART, AXI4, SPI, I2C protocols, cache coherency, DDR3, slack borrowing, time stealing, and non-linear/wave pipelining. He has implemented Verilog and VHDL designs for modulation modules and an SDR platform on Xilinx FPGAs. He holds a Masters in Electrical Engineering from USC with a GPA of 3.9.

SYNTHESIS CHECKS
1.Check if the RTL and Netlist are logically equivalent (LEC)
2.Check if SDC and UPF are generated after synthesis and also check their completeness.
3.Checks Timing - Command: check_timing
4. Checks Design - Command: check_design
SYNTHESIS CHECKS
• SDC Checks: ICC command: check_timing
1. If any unconstrained paths exist in the design then PNR tool will not optimize that path, so these checks are used to report unconstrained
paths
2. Checks whether the clock is reaching to all the clock pin of the flip-flop.
3. Check if multiple clock are driving same registers
4. Check unconstrained endpoints
5. Port missing input/output delay.
6. Port missing slew/load constraints.
You can correct unconstrained paths by adding new constraints using commands such as
create_clock, set_input_delay, and set_output_delay. check_timing
[-overlap_tolerance minimum_distance]
[-override_defaults check_list]
[-include check_list]
[-exclude check_list]
[-multiple_clock]
[-retain]
SYNTHESIS CHECKS
Design checks: ICC command: check_design
Check if current design is consistent or not
It checks the quality of netlist and identifies:
1. Floating pins
2. Multidriven nets
3. Undriven input ports
4. Unloaded outputs
5. Unconstrained pins
6. Pin mismatch counts between an instance and its reference
7. Tristate buses with non-tristate drivers
8. Wire loops across hierarchies
TOOLS FOR PNR
SYNOPYSIS TOOL:1. ICC2 (New),
DC compiler (logic synthesis)
2.DC Topo (physical synthesis)
3.Fusion compiler (combo of both)
CADENCE TOOL: 1.RC Compiler (logic synthesis),Genus innoves (Physical synthesis)

Recommended for you

H344250
H344250H344250
H344250

International Journal of Engineering Research and Applications (IJERA) is an open access online peer reviewed international journal that publishes research and review articles in the fields of Computer Science, Neural Networks, Electrical Engineering, Software Engineering, Information Technology, Mechanical Engineering, Chemical Engineering, Plastic Engineering, Food Technology, Textile Engineering, Nano Technology & science, Power Electronics, Electronics & Communication Engineering, Computational mathematics, Image processing, Civil Engineering, Structural Engineering, Environmental Engineering, VLSI Testing & Low Power VLSI Design etc.

Dsp lab manual 15 11-2016
Dsp lab manual 15 11-2016Dsp lab manual 15 11-2016
Dsp lab manual 15 11-2016

This document provides information about a digital signal processing laboratory manual, including: - An index listing 12 experiments covering topics like DSP chip architecture, linear and circular convolution, FIR and IIR filter design, FFT implementation, frequency response analysis, and power spectral density computation. - General instructions for successfully completing experiments within the 3-hour laboratory period and guidance for laboratory reports. - Procedures for working with MATLAB and Code Composer Studio software to execute experiments and programs on a DSP processor. - An introduction to digital signal processors and an overview of the architecture of the TMS320C67xx DSP chip used, including its CPU, memory, peripherals, and advanced parallel processing capabilities

dsp
Introduction to Computer Architecture and Organization
Introduction to Computer Architecture and OrganizationIntroduction to Computer Architecture and Organization
Introduction to Computer Architecture and Organization

This document provides information on the course EC8552 Computer Architecture and Organization. The objectives of the course are to understand MIPS instruction set architecture, arithmetic and logic units, data and control paths, memory and I/O organization, and parallel processing architectures. The outcomes are that students will be able to analyze computer system performance, illustrate arithmetic operations, describe pipelining and hazards, explain memory and I/O, and interpret parallel architectures. Assessments include tests, quizzes, assignments, and tutorials. The course will use an online Canvas platform.

computer architecturebasic terminologies in computer architecture
OVERVIEW OF PHYSICAL DESIGN FLOW
1.Physical Design is a part in ASIC design flow.
2.It is the process of converting Gate Level Netlist Into Transistor level GDSII layout. Which can be
physically manufacturable with best QOR (Quality of Results ) and without changing the
functionality.
Thus Physical Design flow is also called as Netlist to GDSII Flow.
3.Most Commonly Used Tools presently in the industry for physical design ,
ICC2 From Synopsys
&
Innovus From Cadence.
PNR/NETLIST TO GDSII/PHYSICAL DESIGN FLOW
DESIGN IMPORT
• The first step is Design Import all required Inputs files
for PD
• Like
1.Netlist(.v) ………..given by synthesis people
2.Synopsys Design Constraints (.sdc)……given by synthesis
people
3.Logical /Timing library's (.lib)…... given by vendors
4.Physical Library (.lef)……given by vendors
5.TLU+ files …..given by fabrication people
6.Technology File (.tf)…… given by fabrication people
DESIGN IMPORT
Netlist: Format is .V
1. It contains Logical connectivity Of all Cell(Std cells, Macros).
2. It contain List of nets.
3. In the design for Knowing connectivity by using Fly lines.
SDC :Format is .SDC :
1. CLOCK DEFINITIONS: Create Clock Period.
2. Generated Clock Definitions
3. Input Delay
4. Output Delay
5. I/O delay
6. Max delay
7. Min Delay

Recommended for you

My paper
My paperMy paper
My paper

The document describes a modified radix-24 single-data-path discrete Fourier transform (DFT) algorithm and architecture for implementing a 128-point inverse fast Fourier transform (IFFT) module for use in FPGA-based multiband orthogonal frequency division multiplexing (MB-OFDM) ultra-wideband (UWB) systems. The key aspects of the proposed design include: 1) A modified radix-24 single-data-flow (SDF) DFT algorithm that reorders the twiddle factor sequence to enable easier implementation of complex multiplication compared to earlier designs. 2) A single-data-path pipelined architecture that achieves the required 528 MHz processing speed for the U

Computer arithmetic in computer architecture
Computer arithmetic in computer architectureComputer arithmetic in computer architecture
Computer arithmetic in computer architecture

The document discusses Flynn's Taxonomy, which classifies computer architectures based on the number of instruction and data streams. It proposes four categories: SISD, SIMD, MISD, and MIMD. SISD refers to a single instruction single data stream architecture, like the classical von Neumann model. SIMD uses a single instruction on multiple data streams, for applications like image processing. MIMD uses multiple instruction and data streams and is most common, allowing distributed computing across independent computers. The document also discusses parallel processing, pipeline processing in computers, and hazards that can occur in instruction pipelines.

engineering subject computer organization
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model SafeNehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe

Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe

DESIGN IMPORT
-------------->Exceptions<-------------------------
9. Multi cycle path
10. False path
11. Half cycle path
12. Disable timing arcs
13. Case Analysis
Multi cycle path, False path are Exceptions /contraints
DESIGN IMPORT
• Physical libraries: format is .lef:
1. Physical information of std cells,macros,pads.
2. Pin information.
• Define unit tile placement.
• Minimum Width of Resolution.
• Hight of the placement Rows .
• Preferred routing Directions.
• Pitch of the routing tracks.
8. Antenna Rules.
9 Routing Blockages
In physical info height,area,width, are present. and also it contains two views
• 1)Cell View: In this all layout information is present,it is used at the time of tapeout
• 2)FRAM view: is abstract view, it is used at the Place & Route
DESIGN IMPORT
Logical libraries :format is .lib
1. Timing information of Standard cells,Soft macros,Hard macros.
2. functionality information of Standard cells,Soft macros.
3. And design rules like max transition ,max capacitance, max fanout.
4. In timing information Cell delays ,Setup,Hold time are present.
5. Cell delay is Function of input transition and output load.
6. Cell delay is calculated based on lookup tables.
7. Cell delays are calculated by using linear delay models, Non linear delay models,CCS models.
8. functionality is used for Optimization Purpose.
9. And also Contain Power information.
10. And contains Leakage power for Default cell,Leakage Power Density for cell,Default Input voltage , Out put voltage.
DESIGN IMPORT
And PVT contains
------->Cell leakage Power
-------->Internal Power
--------->Rise Transition
----------->fall transition
---------->>Setup rise
----------->setup fall
-------------->Hold rise
------------->Hold fall
----------------->cell rise
---------------->cell fal
-------------------->Pin Capacitance
And it contains A view(sub directory) i.e. LM(Logical Model view)view.
It contains logical libraries

Recommended for you

ITR Filing for the year of the 2023-24 .pdf
ITR Filing for the year of the 2023-24 .pdfITR Filing for the year of the 2023-24 .pdf
ITR Filing for the year of the 2023-24 .pdf

ITR

Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model SafeDwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe

Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe

十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】 .
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】  .十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】  .
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】 .

在美洲杯投注网站,你会发现数之不尽的在线博彩机会,包括世界各地的精彩体育赛事以及绝佳的赔率。此外,美洲杯投注网站还会为你提供诸如赌场、宾果和扑克等在线游戏以及各种各样的奖金优惠,包括美洲杯投注网站的免费投注。无论你是忠实的足球迷,或者是二十一点的专业玩家,在这里都可以找到你最感兴趣的投注市场或游戏。 [博彩app]http://www.khznoise.net [澳门新葡京博彩]http://www.tjbcsongshui.com [利记]http://www.block-crypto-trader.com [yzc888亚洲城]http://www.f-tkn.net [威廉希尔中国]http://www.lifewithlambo.net [欧洲杯小组赛赔率]https://medium.com/@arcosarturo900/%E5%8D%81%E5%A4%A7%E6%AC%A7%E6%B4%B2%E6%9D%AF%E5%B0%8F%E7%BB%84%E8%B5%9B%E8%B5%94%E7%8E%87%E5%B9%B3%E5%8F%B0-%E5%85%A8%E7%90%83%E5%8D%81%E5%A4%A7%E6%AC%A7%E6%B4%B2%E6%9D%AF%E5%B0%8F%E7%BB%84%E8%B5%9B%E8%B5%94%E7%8E%87%E6%AD%A3%E8%A7%84%E5%B9%B3%E5%8F%B0-3965d8f0b6a1 [欧洲杯买球正规平台]https://ouzhoubeimaiqiuzhengguipingtaiouzhoubeimaiqiu.quora.com [欧宝体育]https://medium.com/@ereklejerson856/%E6%AC%A7%E5%AE%9D%E4%BD%93%E8%82%B2-%E6%AC%A7%E5%AE%9D%E4%BD%93%E8%82%B2%E5%9C%A8%E5%93%AA%E9%87%8C%E6%8A%BC%E6%B3%A8-%E6%AC%A7%E5%AE%9D%E4%BD%93%E8%82%B2%E5%9C%A8%E5%93%AA%E9%87%8C%E6%8A%95%E6%B3%A8-%E7%BD%91%E5%9D%80-ac44-net-23cf9c5159f6 [美洲杯比赛投注官网]https://vimeo.com/966321078 [2024欧洲杯竞猜]https://vimeo.com/964352335

美洲杯投注网站
DESIGN IMPORT
Technology file: format is .tf:
1. It contains Name,Number conventions of layer and via
2. It contains Physical,electrical characteristics of layer and via
3. In Physical characteristics Min width,area,height are present.
4. In Electrical characteristics Current Density is present.
5. Units and Precisions of layer and via .
6. Colors and pattern of layer and via .
7. Physical Design rules of layer and via
8. In Physical Design rules Wire to Wire Spacing,Min Width between Layer and via are present.
DESIGN IMPORT
TLU+ files: format is .TLUP:
1. R,C parasitics of metal per unit length.
2. These(R,C parasitics) are used for calculating Net Delays.
3. If TLU+ files are not given then these are getting from .ITF file.
4. For Loading TLU+ files we have load three files .
5. Those are Max Tlu+,Min TLU+,MAP file.
6. MAP file maps the .ITF file and .tf file of the layer and via names
SANITY CHECKS
Before going to floor plan we will do some sanity checks ,so after reading the inputs (Design Import input
files) sanity checks performs to make sure the correctness of the given inputs ,
So to avoid any mistakes and issues for further stage and verify the inputs by these checks
1.Check design –Netlist file command: check_design
2.Check timing -.sdc timing constraints command: check_timing
3.Check library –Connectivity b/w logical and physical librarys consist or not command: check_library
This command shows the name of the library, library type & its version, units of time, capacitance, leakage power, and
current.
It shows the number of cells missing, the number of metal or pins missing in the physical and logical library
4.Design Data –Import Design feeding the all required inputs
FLOOR PLANNING
 Before going to FP ,we have to estimate the die size, After Estimating the Die size for floorplan, first will placed the IO ports /Pins a as per the
information given by the full chip engineer. Then we have to analyze by using fly lines.

Recommended for you

Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model SafePaharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe

Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe

With Fear For Our Democracy I Dissent Shirt
With Fear For Our Democracy I Dissent ShirtWith Fear For Our Democracy I Dissent Shirt
With Fear For Our Democracy I Dissent Shirt

In these times of increasing political polarization, many people feel a deep concern for the health of American democracy. If you're one of them, then the "With Fear For Our Democracy, I Dissent" shirt might be the perfect way to express your convictions. https://dribbble.com/shots/24472856-With-Fear-For-Our-Democracy-I-Dissent-Shirt

with fear for our democracy i
S S Bhavikatti Civil Engineering Structural Designing
S S Bhavikatti Civil Engineering Structural DesigningS S Bhavikatti Civil Engineering Structural Designing
S S Bhavikatti Civil Engineering Structural Designing

SS Bhavikatti Book

civil
WHAT IS FLOOR PLAN ?
Primary aim of the FP, is place the macros into the core area towards the
boundary. with sufficient area available for standard cells and routing.
standard cell row:
The area allotted for the standard cells on the core is divided into
rows where standard cells are placed.
The height of the row is equal to the height of the standard cell and width
varies. The height varies according to multiple standard cell row height.
there may be double-height cells, triple-height cells, etc.
The standard cells will sit in the row with proper orientation
GOALS OF FLOORPLAN
FLOOR PLAN INPUTS
FLOOR PLAN STEPS
1. Decide core width and height for die size estimation.
2.IO pad sites are created for placement of IO pad placement.
3.Placement of macros.
4.The standard cell rows created for standard cell placement.
5.Power planning (pre routing)
6.Adding physical only cells
• apart from this aspect ratio of the core, utilization of core area, cell orientation, and core to IO
clearance are also taken care of during the floorplan stages.

Recommended for you

Right Choice Landscaping offers exceptional villa landscape maintenance servi...
Right Choice Landscaping offers exceptional villa landscape maintenance servi...Right Choice Landscaping offers exceptional villa landscape maintenance servi...
Right Choice Landscaping offers exceptional villa landscape maintenance servi...

"Right Choice Landscaping offers exceptional villa landscape maintenance services in Dubai. Our dedicated team ensures that your villa’s outdoor spaces are beautifully maintained, enhancing both the aesthetic appeal and the value of your property. We offer landscaping and Garden design services to commercial property owners and homeowners all over the UAE.

Gender Equity in Architecture: Cultural Anthropology in Design Ideologies
Gender Equity in Architecture: Cultural Anthropology in Design IdeologiesGender Equity in Architecture: Cultural Anthropology in Design Ideologies
Gender Equity in Architecture: Cultural Anthropology in Design Ideologies

This PowerPoint presentation offers a comparative analysis between a female and a male architect, focusing on their ideologies, approaches, concepts, and interpretations for a mixed-use building project. This study prompts a reconsideration of architectural inspiration and priorities, advocating for gender equity and cultural anthropology in architectural design.

gender equity in architecturecultural anthropologyarchitectural priorities
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model SafePaharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe

Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe

FLOORPLAN CONTROL PARAMETER:
• core area depends upon :
• Aspect ratio: Aspect ratio will decide the size and shape of the chip. It is the ratio between horizontal
routing resources to vertical routing resources (or) ratio of height and width.
• Aspect ratio = width/height
• Core utilization:- Utilization will define the area occupied by the standard cells, macros, and other cells.
If core utilization is 0.8 (80%) that means 80% of the core area is used for placing the standard cells,
macros, and other cells, and the remaining 20% is used for routing purposes.
• (macros area + std cell area +pads area)
Core utilization : ================================
• total core area
• : Ex: check: Initialize_floorplan –side_ratio {2 2} –core_offset {10}
MACRO PLACEMENT GUIDELINES(MPG)
Macros may be memories, analog blocks. Proper placement of macros has a great impact on the quality and performance
of the ASIC design. Macro placement can be manual or automatic.
 placing the macros are near to boundary for easily communicate with other blocks of macros through IO pins
 place similar macros together
 avoid criss cross connections
 pin direction towards the core
 provide the enough space around the macro for IO routing
 fix the macro locations , so that tool wont alter during optimization
 apply the keep out margin around the macro because cells disturb the macro.
 macro orientation is 180 degrees .for
(No of pins to be routed * pitch of the routing layer *2 )
 Spacing between macros = -------------------------------------------------------------------------
Available routing layers in the preferred direction
MACRO PLACEMENT GUIDELINES(MPG)
Avoid notch formation
Notch are is not utilized effectively, so it will increase the placement density of the core and will rise
the congestion
CONGESTION: means available resources are lesser than the required resources.
Reasons for Congestion.
High standard cell density in small area,
Placement of standard cells near macros,
High pin density at the edge of macros
Bad floorplan
During IO optimization tool does buffering, so lot of cells placed in the core area.
HOW TO CONTROL THE CONGESTION
High cell density can cause the congestion.by default the cell density can be up to 95%.
We can reduce the cell density in congested areas by using coordinate option
 check: Set_congestion_options –max_util 0.45 –coordinate {x1 y1 x2 y2}
Here we set the maximum cell density up to 45% and given the coordinates for the particular area.

Recommended for you

十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】

欧洲杯投注app是此世界知名网上博彩平台的特点是对英超、英冠以及英国的赛事准确率很高,赔率很��变动。欧洲杯投注app平台的赔率一旦出现变动,其它英国和国外的赛事赔率都会因而出现变动,欧洲杯投注app对业界的影响力可见一斑。 [线上博彩平台排名]http://www.phone-dating.net [皇冠博彩]http://www.cn-move.com [体育博彩]http://www.veganhousewife.com [冰球突破豪华版]http://www.vlcidoupe.net [澳门新葡京]http://www.britanniacoin.net [世预赛滚球平台]https://vimeo.com/966309925 [欧洲杯外围]https://irisvladislava756gmailcom.blogspot.com/2024/07/02142409.html [欧洲杯下注网址]https://vimeo.com/manage/videos/975025970 [美洲杯外围]https://vimeo.com/manage/videos/968524008 [美洲杯投注平台]https://medium.com/@balliuvilla512/%E5%8D%81%E5%A4%A7%E7%BE%8E%E6%B4%B2%E6%9D%AF%E6%8A%95%E6%B3%A8%E5%B9%B3%E5%8F%B0-%E5%8D%81%E5%A4%A7%E7%BE%8E%E6%B4%B2%E6%9D%AF%E6%8A%95%E6%B3%A8%E5%B9%B3%E5%8F%B0%E6%B8%B8%E6%88%8F%E5%B9%B3%E5%8F%B0-%E7%BD%91%E5%9D%80-ac22-net-99498456dcb7

欧洲杯投注app
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model SafeMalviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe

Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe

2024_summer_my_dream_from_users_gnjp_20240708
2024_summer_my_dream_from_users_gnjp_202407082024_summer_my_dream_from_users_gnjp_20240708
2024_summer_my_dream_from_users_gnjp_20240708

はがき

BLOCKAGES
 Blockages can be used for avoiding congestion
Two types of blockages:
1. placement blockage: check: Create _placement_blockage -type …
2 .Routing blockage :check: Create_routing_blockage –type..
placement blockage again can be divided into 3 types
1.Hard ,2.soft And,partial blockage
1.Hard blockage : No std cells are allowed
2.Soft blockage : only inverters /buffers are allowed and std cells are not allowed
3.Partial blockage
only std cells are allowed
partial std cell blockage is used to avoid congestion
we can block the std cells as per the required percentage value.
MACRO PLACEMENT GUIDELINES
 Placement of macros are the based on the fly-lines ( its shows the connectivity b/w macro to macro and macro to pins) so
we can minimize / reduce the interconnect length between IO pins and other cells.
fly lines: macros are placed manually using fly lines. fly lines are a virtual connection between macros and
macros to IO pads. , fly lines are of two types
1.macros to IO pin: 2. macros to macros fly lines
 Avoids notches while placing macros, if anywhere notches is present then use hard blockages in that area
Between two macros at least one pair of power straps (power and Ground) should be present.
• Note: lots of iterations happen to get optimum floorplan. the designer takes care of the design parameter such
as power, area, timing and performance during floor planning.
HALO/KEEP KEEP-OUT MARGIN MPG:
 The region around the four sides of macros, so no standard cells will not sit near to Macro pins. This
technique avoids the congestion. Check:Create_keepout_margin –outer {10 10 10 10} my_lib_macro
 This is the region around the fixed macros so that no other macros and standard cell can be placed near
to macros boundary
 The width of the keep out margin on each side of the fixed cell can be the same or different depending on
how you define keep out margin.
 keeping the placement of cells out of such regions avoids congestion and produce better QOR
 Halo of two adjacent macros can be overlap.
 If the macros moved from one place to another place, the halo will also move.
TYPES OF FLOORPLAN TECHNIQUES
2 Types of Floor Plan Techniques
1.Abutted:- When the chip is divided into blocks in the
abutted design there is no gap between the blocks.
2.Non abutted:- In this design there is a gap between blocks.
The connection between the blocks is done through the
routing nets.

Recommended for you

2024_summer_my_dream_gnjp_20240705_ks.pdf
2024_summer_my_dream_gnjp_20240705_ks.pdf2024_summer_my_dream_gnjp_20240705_ks.pdf
2024_summer_my_dream_gnjp_20240705_ks.pdf

はがき

Project on computer by saurabh very good 😊
Project on computer by saurabh very good 😊Project on computer by saurabh very good 😊
Project on computer by saurabh very good 😊

Project on computer ...... By saurabh........

Professional Document Editing Services / Bank Statement Editing
Professional Document Editing Services / Bank Statement EditingProfessional Document Editing Services / Bank Statement Editing
Professional Document Editing Services / Bank Statement Editing

Need to modify any document? Look no further! I offer expert editing services for all types of documents, ensuring accuracy and confidentiality. Whether you need adjustments for bank statements, certificates, bills, pay stubs, or any other documents, I can help. Contact me now for prompt and reliable editing services! Services Offered: • PDF Editing: Professional edits for all types of PDF documents. • Bank Statement Editing: Accurate and detailed edits for any bank statement. • Document Editing: Comprehensive edits for all kinds of documents. • Certificate Correction: Correct and improve certificates for clarity and accuracy. • Bill Editing: Modify and correct any bill details as needed. • Pay Stub Editing: Accurate editing of pay stubs for personal or professional use. • Anything You Want to Edit: Custom editing services tailored to your needs. #EditBankStatement #BankStatementEditing #Bank #StatementEdit #BankStatementEdit #BankStatementEditing #EditPaystubs #FinancialServices #Paystubs #CheckStubs #CheckStubService #BankServices #USA #Canada #Texas #California #America #UK #London #EditPDF #BankFiles #BankFinance #Statements #BankStatement #BankStatements #BankStatementLoan #EditBankStatementPhotoshop #EditBankStatementsFree #ExplorePage #Top #ForYou #FYP #Instagram #Documents #Edits #Photoshop #GraphicDesign #Illustrator #Illustration #Creative #Design #Designer #EditDrivingLicense #EditPaystubs #EditBankStatement #EditAnyDocument #Editing #Paystubs #PaystubServices #PaystubsNeeded #PaystubService #PaystubService #EditPDFOnlineFree #PDFToWord #PDFEditorFree #PDFEditorOnline #HowToEditABankStatement #FakeBankStatement #HowToEditBankStatementPDF #PDFEditor

how to edit pdfhow to edit bank statementedit docments
OUTPUTS OF FLOORPLAN
1. Die/Block area
2. I/O pad/placed
3. Macro placed
4. Power grid design
5. Power pre-routing
6. Standard cell placement areas.
POWER PLANING
Power planning means to provide power to the every macros, standard
cells, and all other cells are present in the design.
 Power planning is also called Pre-routing as the Power Network
Synthesis (PNS) is done before actual signal routing and clock routing.
Power ring is designed around the core.
Power rings contains both VDD and VSS rings.
 power mesh is nothing but horizontal and vertical lines on the chip.
 Objective of power planning is to meet IR drop budget.
POWER PLANING
LEVELS OF POWER DISTRIBUTION
1. Power Rings: Carries VDD and VSs around the chip
2. Power Straps: Carries VDD and VSS from rings across the chip
3. Power Rails: Connect VDD and VSS to the standard cells.
4.Trunks :Connects Ring to Power Pad

Recommended for you

AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdfAI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf

04.07.2024 slide deck for a virtual event

ux
A Journey Through Islamic Architecture.pdf
A Journey Through Islamic Architecture.pdfA Journey Through Islamic Architecture.pdf
A Journey Through Islamic Architecture.pdf

Islamic architecture is a vast and rich field that spans centuries and continents, reflecting the diversity and unity of Islamic culture.

designresearchsustainability
Arch.Bob _ 005 _ Architectural Portfolio
Arch.Bob _ 005 _ Architectural PortfolioArch.Bob _ 005 _ Architectural Portfolio
Arch.Bob _ 005 _ Architectural Portfolio

Portfolio

INPUTS FOR POWER PLANNING
1. Netlist(.v)
2. SDC
3. physical and logical libraries (.lef & .lib)
4. TLU+
5. UPF
6. Power rings and power straps width..
7. Power budget.
8. Spacing between the VDD and VSS straps.
METAL LAYERS FOR POWER PLANNING
M1-Metal layer M8-Metal layer
M2 -Metal layer M9 -Metal layer….For power
M3 -Metal layer ….For Routing M10 -Metal layer (AP)
M4 –Metal layer M11 -Metal layer
M5 –Metal layer M12 -Metal layer…..For power Planing
M6 –Metal layer
M7 -Metal layer…..For signal and clock Routing………Note: Only for Understandings Purpose
For Higher metal layers used for to avoid the EM and IR Drop.
Electromigration: Movement of molecular transfer of electrons in the metal from one area to another, that
caused by high density electric current flows in the metal. It can creates shorts b/w wires
IR Drop: Reduction in supply voltage ,that occurs power supply networks in IC,due to increasing current density
,this causes the voltage available at Standard cells to be a lower than the what is desired .
IR=IR(V=IR VOLTAGE DROP)
There are two types of IR drop
• Static IR drop
• Dynamic IR drop
Static IR drop: Dynamic IR drop :
• This drop is independent of cell switching . This drop is calculated with the help of the switching of cells.
Methods to improve static IR drop Methods to improve dynamic IR drop
1. We can go for higher layers if available 1.Use de-cap cells
2. Increase the width of the straps. 2. Increase the number of straps
3. Increase the number of wires.
4. Check if any via is missing then add more via.
ELECTROMIGRATION
Methods to solve EM:
1.Increase the width of wire
2.Buffer insertion
3.Downsize the driver
4.Switch the net to higher metal layers.
5.Adding more vias
6.Keep the wire length short

Recommended for you

Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdfHill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf

A book on strategy design.

strategy
LOW POWER DESIGN
Power Dissipations :
Static (During stable condition)
1. Leakage current /Sub-threshold current
2. Gate oxide leakage current
Dynamic ( During Switching activity)
1. Switching power dissipation
2. Short Circuit (SC) Power Dissipation
Low power Design Cells
1. Level shifters
2. power switches
3. Isolation cell
4. Retention registers /cells These are Used in Power Management Techniques
POWER MANAGEMENT TECHNIQUES
1.Clock Gating Method: (Place the ICG (integrated clk gate cells )) it makes particular ckt. is active
2.Multi Vth Design: (LVT & HVT cells)
3.Multi voltage Design: (when 2 dffnt. Voltage domains contains in chip we will use Level Shifters)
4.Power Gating Method: It is similar to Clock gating
power switches : It makes to always turned on in specific time)
Isolation cells: It ll work isolate nets b/w gated domain and always on block ,means it will be clamped
either 0 or 1
Retentions cells:If gated domain off state ,system consist of flip-flops we will lose the data we need to retain
the data so we will be use this cells
OUTPUT OF POWER PLANNING /CHECKS
Outputs:
1. Design with power structure.
2. Floorplan with synthesized power mesh.
Checks:
1. check_pg_missing_vias
2. check_pg_drc
3. check_pg_connectivity
4. (Report_power)
5. (Analyze_powerplan…)
6. (Check_design –checks pre_placement_stage)
PHYSICAL ONLY CELLS
These are Typically invented for chip finishing
(Tie Cells (these are used for preventing damage of cells) not a pre-placed cells
Pre-placed cells
1.EndCap cells (Before placing the standard cells )
These are added to end of the cells rows and around the boundaries (core area,macro,blockages ,voltage area and corner cells)
2.Well tap cells ( To avoid the latch-up: low impedance path gets formed between VDD and GND terminal and there is direct current flow from
VDD to GND)
To reduce the resistance values tap the N well to VDD and P substrate VSS
3.Decap cells (To avoid the dynamic IR Drop)
It will provide instantaneous current to driveres to reduce IR drop
4.Filler Cells (after placement ,to cover the any gab )
We can fill empty space in the standard cells rows and it will provide continuity in the rows for VDD and VSS Nets
5.Spare cells ( after Routing any violations appear. It is reducing time & cost )

Recommended for you

PLACEMENT
 placement is the process of finding the suitable physical location for each standard cell in the
design
standard cells are placed on placement tracks with automatically at placement stage
Steps:
1. Pre Placement
2. Initial Placement / Course Placement / Global Placement
3. Legalization
4. HFNS (High Fanout Net Synthesis)
5. Iteration for Congestion, Timing, DRV, and Power Optimization
6. Timing optimization iterations
7. Scan-Chain Reorder
PLACEMENT
Goals of Placement:
1. Timing,area,and power optimization
2 . Routable Design
3 . Min.cell density ,pin density (Reduce the congestion due to cells and pins)
4. Minimum timing DRC’s
Inputs To Placement Stage:
1. Netlist
2. Mapped and Floor planed Design
3. Logical and Physical Libraries
4. Design Constraints
PLACEMENT
STAGES
1. Pre Placement:
Before starting the actual placement of the standard
cells present in the synthesized netlist, we need to
place various physical only cells like end-cap cells,
well-tap cells, IO buffers, antenna diodes, and
spare cells
Once the pre Placement stage has been
completed, We can start the placement of standard
cells
but before that, we have to provide all the correct
placement and optimization settings that we want to
be applied while the tool does the placement and
optimization.
PLACEMENT STAGES
2.Global placement/Coarse placement:
The std cells can be placed into the core region
cells are overlapped , cells does not have legalized locations
it is rough placement
3 Legalization :
The global placement stage, the instances are left with
overlap. In this step, the tool will move the instances in nearby
places to overcome the overlap. To match the proper power
pins like the VDD pin of a standard cell should be on the VDD
rail and VSS on VSS rail and for that if the flipping of instance
is required tool also do the flipping. This process is called
legalization.

Recommended for you

PLACEMENT
4.( high fan out net synthesis :
Initially, there are some nets which have very high numbers of fanout.
We have a constraint of maximum fanout, so we need to distribute the sinks on nets
to different drivers.
The process of adding buffers and splitting the fanout is called high fanout net
synthesis (HFNS). So In this step, all high fanout nets get synthesize
 The buffering of high fan out nets to balance the load.
If you are not balance the load , transition time and delay is more
PLACEMENT STAGES
5.Iteration (the repetition of a process):for Congestion, Timing, DRV, and Power Optimization:
 In this step tool first, do an early global route and estimate the routing overflow/congestions in the design.
 The tool tries to initially minimize the congestion in this stage.
 Next, the tool starts the RC extraction to calculate the delay for setup analysis.
 The tool tries to minimize the setup WNS(Worst –Ve Slack) and TNS(Total –Ve Sack) in this step.
 Similarly, the tool also tries to minimize the DRV and Power in this stage.
6.Timing optimization iterations:
 This is a long step in which the tool tries to minimize the WNS and TNS of each path group in various iterations.
 There are several iterations required to get a minimum WNS and TNS depending upon the effort set and initial WNS number.
 In case the result is not good after this stage,
 we can further run incremental optimization for timing. Similarly, for congestion,
 we can run congestion repair followed by incremental optimization to get a better result. But these additional steps will increase the run
time
7.Scan chain reordering
This is nothing but scan-chain reordering.
 Scan-chain reordering helps to Reduce congestion and Total wire-length
Before After
PLACEMENT
1.Placement Can be Done as
1.Timing Driven: Tool tries to place the standard cells along timing critical path close together to reduce net RC and meet setup timing.
check: create_placement -timing
2.Congestion Driven: when path for routability, Tool tries to spread the cells where the density of cells are more for the reduction of congestion.
Check: create_placement -congestion
3.Power Driven: In a library contains multiple-threshold- voltage cells,
 The LVT cells have higher leakage current but better performance.
 The HVT cells have lower leakage current but worst performance.
 Percentage low threshold voltage optimization tries to find a balance between power and performance goals restricted the use of
LVT cells.
 During low power placement, the tool tries to minimize the length of high switching nets to improve the power QOR.
 During Dynamic power-driven placement, the tool tries to improve both the timing and power of the critical nets and the
power QOR without affecting the timing QOR.

Recommended for you

PLACEMENT BOUNDS
It is a constraint , that controls the placement of groups of leaf cells and hierarchical cells.
When our timing is critical during placement then we create bounds in that area where two
communicating cells are sitting far from another
 By using the bounds ,we can place the same group the cells into a bound.
 The wire length can be reduced
It can be used for avoiding the congestion also.
Types of bounds
i)Hard bound (In this tool must place the cells in the move bound within a specified region.)
ii)Soft bound (In this tool tries to place the cells in the move bound within a specified region, however,
there is no guarantee that the cells are placed inside the bounds.)
iii)Exclusive bound:(In this tool tries to place the cells in the group bound within a floating region,
however, there is no guarantee that the cells are placed inside the bound)
OUTPUTS OF PLACEMENT & CHECKS
Outputs:
1. Physical Layout Information
2. Cell placement location
3. Physical Layout Timing and Technology information of logical librarys
Checks:
1. Check legalization command: Check_legality and report_congestion
2. Check PG connections for all the cells.
3. Check congestion, density screens & pin density maps all these should be under control
4. Timing QOR, there should not be any high WNS violations.
5. Minimum max Tran and max cap violations.
6. Check whether all don’t touch cells & nets are preserved.
7. Check the total utilization of design after placement
PLACEMENT STEPS PRACTICAL
• Create_placement – will perform coarse placement of std. cells in core area
• Legalise_placement – will place std. cells in their appropriate std. cell rows
• ‘Place_opt’ – This command will follow through a order of steps and places the std. cells in their
respective rows and attempts to legalise them as well as optimising the timing
• By default place_opt runs through 5 stages:
• 1. initial_place
• 2. initial_drc
• 3. initial_opto
• 4. final_place
• 5. final_opto
PRE -CTS OPTIMIZATION PLACEMENT OPTIMIZATION
Cell Sizing
Sized up/ down to meet optimizing for timing and area
Up sizing will give timing advantage and Down sizing will give area advantage
VT Swapping
To optimize for leakage power (HVT, RVT, LVT)
Cloning
Is to distribute the load , To reduce fan out
Buffering
Long nets are buffered or remove buffers to bring the timing advantage
Logical Restructuring
To optimize timing and area without changing the functionality of the design
Breaking complex cells into simpler cells or vice versa
Pin Swapping

Recommended for you

PRE CTS OPTIMIZATION
Set Non-Default Rule (NDR): Clock nets are very sensitive and impacts timing if it changes a little.
 NDRs make the Clock Routes less sensitive to Crosstalk or EM effects
 Double/ Triple Width for avoiding Electro migration
 Double/ Triple Spacing for avoiding Crosstalk
 NDRs will improve Insertion Delay
Set the target skew and target latency
(Ex: set_clock_tree_options –clocks [get_clocks {clk}] –target_latency 0.450 –target_skew 0.150
Check legality : (check_legality)
BEFORE GOING TO CTS CHECKS
It should meet the following requirements:
The clock source are identified with the create clock or create_generated_clock commands.
The placement of standard cells and optimization is done. {NOTE: use check_legality –verbose
command to verify that the placement is legalized. If cells are not legalize the qor is not good and it
might have long run time during CTS stage}
Power ground nets- pre-routed
Congestion- acceptable
Timing – acceptable
Estimated max Tran/cap – no violations
High fan-out nets such as scan enable, reset are synthesized with buffers.
CLOCK TREE SYNTHESIS (CTS)
Clock is not propagated before CTS so after clock tree build in CTS stage we consider hold timings and
try to meet all hold violations..
CTS is the process of connecting the clocks to all clock pin of sequential circuits by using
inverters/buffers in order to balance the skew and to minimize the insertion delay. All the clock pins
are driven by a single clock source. Clock balancing is important for meeting all the design constraints
. Effect of CTS: Clock buffers are added congestion may increase non-clock cells may have been
moved to less ideal locations can introduce timing and tran/cap violations
 before the clock tree is not build CTS structure after clock tree build
CLOCK TREE SYNTHESIS (CTS)
CTS Quality Checks:
Minimize Insertion Delay.
Skew Balancing
Duty Cycle
Pulse Width
Clock Tree power consumption
Signal Integrity and Crosstalk

Recommended for you

INPUTS REQUIRED FOR CTS:
1.Placement DB : (Netlist, DEF, LIB, LEF, SDC, UPF )
2. CTS Spec File:
Target latency and skew if specify (SDC)
Buffer or inverters for building / balance the clock tree
The source of clock and all the sinks where the clock is going to feed (all sink pins).
Clock tree DRC (max Tran, max cap, max fan-out, max no. of buffer levels)
NDR (Nondefault routing) rules (because clock nets are more prone to cross-talk effect)
Routing metal layers info. VIA's information used for clocks
CTS TARGET & CTS GOAL:
CTS target:
• To make Skew Zero. For this we this reason we will need to synthesize the clock tree
• To Balance Insertion Delay
CTS goal:
• Max Tran
• Max cap
• Max fan-out
• A buffer tree is built to balance the loads and minimize skew, there are levels of buffer in the clock tree
between the clock source and clock sinks.
• To fix the setup and after CTS you should meet all the Hold Violations
CLOCK TREE SYNTHESIS (CTS)
If clock is divided then separate skew analysis is necessary.
Skew: This phenomenon in synchronous circuits. .
The Difference in arrival of clock at two consecutive pins of a sequential element..
Global skew: the difference between max insertion delay and the min insertion delay
Local skew : Difference in arrival of clock at two consecutive pins of sequential element.
it can be positive and negative local skew also
Useful skew: If the clock is skewed intentionally to resolve setup violations
Positive skew: if the capture clock comes late than the launch clock.
Negative skew: if the capture clock comes early than the launch clock.
Zero skew: when the capture clock and launch clock arrives at the same time. (ideally, it is not possible)
CLOCK TREE SYNTHESIS (CTS)
Insertion delay: Time taken to reach clk source to leaf point is called
Latency: The delay difference from the clock generation point to the clock endpoints.
ON-CHIP CLOCK SOURCE
There are two types of latency:
Source latency: Source latency is also called insertion delay. The delay from the clock source to the
clock definition points. Source latency could represent either on-chip or off-chip latency.
Network latency: The delay from the clock definition points (create_clock) to the flip-flop clock pins

Recommended for you

CLOCK TREE SYNTHESIS (CTS)
Advantages of the low Latency:
 Less buffer, hence less power consumption. As we know clock paths are the heaviest power dissipated path.
 Cell area reduction as less buffer in the clock path.
 Less runtime since less buffer need to be inserted in the design, which saves optimization as well
Duty Cycle : The on time and off time totally depends upon the rise transition and fall transition.
Due to transition differences, duty cycle changes and hence the calculation becomes bad. Practically, rise and fall
transition are not same.
Pulse Width: If we have variation in rise and fall transition from the input transition of rise and fall, then the threshold
(50%) will go worse. Hence the pulse width will decrease.
If pulse width decreases, then we might lose data which was about to be captured at some time.
CLOCK TREE SYNTHESIS (CTS)
Clock Uncertainty: the difference between the arrivals of clocks at registers in one clock
domain or between domains.
Timing Uncertainty of clock period is set by the command (set_clock_uncertainty ) at the synthesis stage to
reserve some part of the clock period for uncertain factors (like skew, jitter, OCV, CROSS TALK, MARGIN or any
other pessimism) which will occur in PNR stage
Clock uncertainty for setup effectively reduces the available clock period by the specified amount
• Pre CTS uncertainty = clock skew + jitter + margin
• CTS uncertainty = jitter + margin
CLOCK TREE SYNTHESIS (CTS)
• Clock Buffers:
are designed with some special property like high drive strength and less delay.
 Clock buffers have equal rise and fall time.
This prevents duty cycle of clock signal from changing when it passes through a chain of clock buffers.
Normal buffers:
are designed with W/L ratio such that sum of rise time and fall time is minimum.
They too are designed for higher drive strength.
CLOCK TREE SYNTHESIS
(CTS)
• Clock Tree Exceptions :
Stop Pin: No buffer/inverter insertion beyond this point (Don't touch scenario)
Ignore Pin : (Float Pins) No DRV, No Balance
Exclude Pin : DRV Fixing but no balancing
Through Pin : DRV Fixing as well as Balancing
Don’t buffer nets :
Don’t size cell :

Recommended for you

CLOCK TREE SYNTHESIS (CTS)
What is Signal Integrity : The nets routed that even nets are at their track but impacted by the noise from other
nets. This unwanted element is called Signal Integrity
Crosstalk?: Crosstalk is the undesirable electrical interaction between two or more physically adjacent nets due to
capacitive cross-coupling.
Crosstalk noise: During the transition on aggressor net causes a noise bump or glitch on victim net. This noise
is known as crosstalk noise..
Reasons for Crosstalk: .How To fix Crosstalk Issue
 Increasing number of metal layers, 1. Double spacing=>more spacing=>less capacitance=>less cross talk
 Routing congested Design 2. Multiple vias=>less resistance=>less RC delay
 Thin and long metal layer routed 3. Shielding=> constant cross coupling capacitance =>known value of crosstalk
 Faster waveform due to higher frequencies- 4. Buffer insertion=>boost the victim strength
 Low voltage design
CTS(CLOCK TREE SYNTHESIS
Types of Clock Trees: 1.
1. H-Tree
2. Balanced Fanout Clock Tree
3. Binary Clock Tree
4. Mesh tree
5. Fish-bone tree 2. Balanced Fanout TREE 3. Binary Clock Tree 4. X-
tree
6. X-tree
Outputs: Database with properly build clock tree in the design
Checks:
1)report_timing -delay_type min
2)report_timing -delay_type max
3)report_clock -skew
Clock tree synthesis is performed using command clock_opt. Here clock tree is built keeping in mind
skew and hold time .
Clock_opt undergoes 3 stages by default i.e
1. build_clock
2. route_clock
3. final_opto
ROUTING
Before going to routing we need to check
1.Target skew ,Target Latency should be met in CTS stage
2.We Should check Setup and Hold Violations met or not
3.DRV (Design Rule Violations)
4.No of Clock buffers and Inverters added should be in control

Recommended for you

ROUTING
• Routing: creating physical connection to all logical connection present in the design with the help of metal
layers is known as routing
Objectives
 minimize the total wire length
 minimize the vias
 Routed paths must meet setup and hold timing margin
 minimizing the congestion hotspots.
 Complete the connections with out increasing the total area of the block.
 Reduction in cross talk noise.
 meeting the timing DRC’s and obtaining a good timing QOR
 minimize the critical path delay
ROUTING CONSTRAINTS
setting the maximum length for the routing wires
Blocking routing in specific regions
set straighten guidelines for minimum width and minimum spacing.
set preferred routing directions to specific metal layers during routing
constraining the routing density
ROUTING FLOW
1.Global routing
Does not consider DRC rules ,which gives an overall view of routing and congested nets.
Assign layers to the nets
Avoid congested areas and long detours.
Avoid routing for Blockages
Avoid routing for pre route nets. such as Rings/stripes/Rails
Identify and assign the net segments over the specific routable window called Global route
cell(GRC).
ROUTING FLOW
2)Track Assignment
Assign tracks both Horizontal and vertical direction
It does not follow the physical DRC rules.
It will do the timing aware Track assignment.
It helps in via minimization.
3)Detail Routing
It performs the complete DRC aware and timing driven routing.
It is the final routing.
Detail routing is done after analyze the cause for congestion in the design

Recommended for you

TIMING ANALYSIS:
Timing analysis is necessary to calculate the design’s system performance, describes the chips
specification.
Types of timing analysis: Static timing analysis (STA) and Dynamic timing analysis
1.Dynamic timing analysis (DTA) (Gate level Simulation):
A series of vectors over a time are applied during a simulation run, simulation calculates the logic value
and delays over that time. So, in that manner we check the design’s functiality with time. on
TIMING ANALYSIS:
2.Static Timing Analysis:
Static timing analysis is a method of validating the timing performance of a design by checking all
possible paths for timing violations under worst-case conditions.
. So, it validates the design for desired frequency of operation, without checking the functionality of
the design
STA COMPARISON
DTA
Dynamic timing
1. Requires exhaust set of vectors
2. Checks for both functional and timing problems
3. Requires more resources (like run time, CPU memory, etc.)
4. Can work with any type of Logic either synchronous or asynchronous
5. Slower as compared to STA.
6. Easy to learn and all corners cases are not covered
Static timing
1. Doesn't requires any set of vectors.
2. Checks for timing only.
3. Requires fewer resources than DTA.
4. Restricted to synchronous part of the design only.
5. Faster as compared to DTA.
6. Difficult to learn
STA( STATIC TIMING ANALYSIS)
What is STA ?:
Static timing analysis is one. of the techniques used to verify the timing of a digital design.
Why Static timing Analysis?
1. To analyze the timing relationships of a given circuit to verify that the circuit works at the specified frequency
(verification).
2. You can’t achieve the clock speed without it.
3. All paths are assumed critical.
4. Process variation across die can be modeled.
5. Constraints and reports are concise and easy to interpret.
6. It can detect other serious problems like glitches, slow paths and clock

Recommended for you

INPUT AND OUTPUT FILES OF STA :
INPUTS:
Netlist (.v): The gate level netlist, having circuit description.
Constraints (.sdc): Synopsys Design Constraint file. It contains all the timing related information about the design.
Includes the Clock definition (Created clock, generated clock, Virtual clock), Uncertainty (Jitter, Skew, Extra margin),
IO Delays, False paths, Multi-cycle paths, Max trans, Max fanout, Max cap, Fanout load.
SDF (.sdf): Standard Delay Format File containing back-annotated delays.
OR
Standard Parasitic Exchange Format (.spef): These are the parasitic of the design extracted from physical design
tools.
Liberty File (.lib): The delay model of every cell in the library.
OUTPUTS
Reports: Different timing paths reports, which can be used for debugging.
STATIC TIMING ANALYSIS
STA involves three main steps:
1. Break the design into sets of timing paths
2. Calculate the delay of each path
3. Path delays are checked to see if timing constraints have been met.
But first some Basic STA concepts: Timing Paths:
Each path has a start point and an endpoint
Start points:
Input ports (A, Q)
Clock pins of sequential devices (CLk)
Endpoints:
Output ports (D, Z)
Data input pins of sequential devices (D) by sing these points we can identify the Path
STATIC TIMING ANALYSIS
1. STA TOOL Break the design into sets of timing paths
2.Calculate the propagation Delay along with each path
3.Check for timing violations (depending on the constraints eg: clock) on different paths and also inputs /outputs
interface.
Timing paths:
1.Data path,
2.Clock Path,
3.Clock Gating path.
4.Asynchronous path.
5.Critical path
6.Short path
STATIC TIMING ANALYSIS
1.Data path: We have 4 data paths
1.In to Reg ( Start Point (i/p), End Point (D1 ff )
2.Reg to Reg (start point ( D1 ff of clk) , end point (D2 ff
3.Reg to Out (start point (d2 ff of clk) , end point (o/p 1)
4.In to Out (start point ( input ) ,end point (output2)
By using these points we can analyze
It timing reports

Recommended for you

STATIC TIMING ANALYSIS
2.Clock Path: It is generated from PLL (Phased Lock Loop) In b/w start and end points there may be
lot of buffers and inverters
3.Clock Gating Path:
This is used in may synchronous ckts
For Reducing the dynamic power dissipation
STATIC TIMING ANALYSIS
4. Asynchronous Path:
1. A path from an input port to an asynchronous set or clear pin of a sequential element
2. We know that the functionality of set/reset pin is independent from the clock.
3. Its level triggered pins and can start functioning at any time of data. We can say that this path is not in
synchronous with the rest of the circuit and so such type of path is called Asynchronous path.
STATIC TIMING ANALYSIS
 In a STA ,the entire chip we are dividing into 4 paths because ,analyze better way and we can debug it easily
Suppose we have any violations internally in those paths(In to reg ,reg to reg ,reg to out and In to out) ,we can fix
and close the block. By using Setup and Hold Timing Violations:
Some basic Definitions:
1. Clock: Is a signal that oscillates between high and low logic. Clock controls timing in
the design there can be multiple clocks in the design.
2. Setup Time: the amount of time the Synchronous input (D) data must be stable before the active edge of the
Clock.
3. Hold Time :The amount of time the synchronous input (D) data must be stable after the active edge of clock.
4. Slack : The difference between arrival time and required time is called slack
STATIC TIMING ANALYSIS
Clock skews (timing skew):
Clock signal in synchronous circuits ,arrives at different components(generally latches or FFs) at different times.

Recommended for you

STATIC TIMING ANALYSIS
1. Launch Path
Launch path is launch clock path which is responsible for launching the data at launch flip flop
2. Capture Path
Capture path is capture clock path which is responsible for capturing the data at capture flip flop
3. Arrival Time
Launch path and data path together constitute arrival time of data at the input of capture flip-flop
4. Required Time
Capture clock period and its path delay together constitute required time of data at the input of capture flop
STATIC TIMING ANALYSIS
1. Positive Slack indicates that the design is meeting the timing and still it can be improved.
2. Zero slack means that the design is critically working at the desired frequency.
3. Negative slack means , design has not achieved the specified timings at the specified frequency.
4. Slack has to be positive always and negative slack in
STATIC TIMING ANALYSIS
There are 3 basic paths where the Set-up/Hold violations may occur:
inputs-to-register path -- actually if there is any violation in this path then first you have to see the
"set_input_delay" setting. By changing the value you can fix this path. setup and hold can be fixed by
constraining input delay and clock period
register-to-outputs path -- same with this case.. yo can do concentrate on set_output_delay setting.
So basically these 2 can be managed by timing budgetting of a particular block. if you want to fix these
inside the block, you can also use buffer/delay inside the block, else add these delay and all outside the
block. And for the block the effective value of the delay changes and that can be fixed by setting different
value of set_input_delay/set_out_put delay.
register-to-register path .. all the general ways like delay insertion/swapping/resizing ..etc will be the
part for this path in case there is any violation.
STATIC TIMING ANALYSIS
• Setup Slack: Required time > Arrival time [RT-AT]
Setup Equation: [Tlaunch+Tck2q+Tpd]<[Tcap+Tclk-Tsetup]
• Reasons for violations :
Capture clock comes early than launch clock,
Because of high delay in the data path or When data and clock are routed in opposite direction then it is negative skew.
To Fix The Setup Violations:
1 Reduce the amount of delay in data path, this can be done by reducing the necessary buffers
2.VT swapping, means you swap HVT cell with SVT or LVT cells
[size_cell instancename(present cell) referencename(replacing cell]
3. Buffering:
Use of two inverters in place of buffer ,if a cell is driving an exceptionally long net. considering that the driver cell already has
good driving strength, buffering helps to split the net which in turn reduces the total capacitance. Hence the data path delay
will be reduced, and arrival time reduces. [ insert_buffer netname referencename (buffer)]
4. Readjusting the position of cells

Recommended for you

STATIC TIMING ANALYSIS
5.Skewing:
Positive skew is good for setup and negative skew is good for hold
6. Gate Sizing: Upsizing cell
If a low driving strength cell is driving a higher load, it results in higher cell delay.
To fix this, one can upsize the cell which will reduce cell delay and helps to meet the setup time. 3. How upsize will help for
fixing the setup violations?
Upsizing means increasing the drive strength, if drive strength increases the width of the
gate increases, if width increases the resistance reduces, as resistance and delay are directly
proportional to each other if resistance reduces the delay also reduces in this way upsizing
will help in fixing setp violations.
7. Cloning:
Cloning refers to creating the same driver cell with the same functionality and giving it the same inputs as the original cell.
If gate sizing and buffering are not possible, then cloning can be helpful as this will split the load between the original cell
and the newly cloned cell
STATIC TIMING ANALYSIS
Hold Slack check= Required time < Arrival time [AT-RT]
Hold Equation : :[Tlaunch+Tck2q+Tpd]>[Tcap+Thold]
Reasons for Hold Violations :
If capture clock comes late than launch clock then it is called +ve skew
If data comes early or due to positive skew.
When data and clock are routed in same direction then it is Positive skew.
It is possible to have a flip flop with 0 hold time or negative hold time.
For example, if the hold time is -3 ns then it complies that we should not have any change in the input data
before 3ns of the clock event trigger
Minimum Time Period (T minimum) or Maximum clock operating frequency (F maximum)
1. To decide the speed of a chip design clock cycle frequency is the main parameter.
2. We all want a high-speed chip or processor which means the clock frequency must be as high as possible.
3. But we also know that clock frequency is inversely proportional to clock time period. So here we will have to constrain on
the minimum time period to be decided.
STATIC TIMING ANALYSIS
• To Fix Hold Time Violations:
1. Vt swapping from LVT to HVT cell
2. Pushing the launch clock CLOCK PUSH –INSERT_BUFFER
3. Pulling the capture clock CLOCK PULL –REMOVE BUFFER
4. Inserting Buffer at D pin
5. Metal width decreases
6. Net deteriorate
7. Using spare cells after BTO (Base Tape Out)
8. Inserting metal buff's after BTO
9. Voltage can be reduced.
10. Downsizing the cell
11 Skewing:
• Either we can late skew i.e. increase the clock network delay of launch flop making data to launch late or we can early skew i.e.
reduce the clock network delay of capture flop so that data will be reaching faster at the endpoint.
STATIC TIMING ANALYSIS
• Hold time constraint
• Thold_time <= Tclock_Q + delay
The hold time must be less than or equals to the sum of the clock to Q delay and other delays such as clock
jitter
• Setup time constraint
Tsetup_time + Tclock_Q + delay <= Tminimum
• Which says the overall sum of flop setup time and clock to Q delay and other delays such as jitter must be
less than or equals to the minimum clock time period.
• Note:
• If a situation comes to have a choice between setup violation fix and hold violation fix after the chip design is
completed and fabricated, then it is a better option to chose hold violation fix.
• The reason is to fix the setup time violation we need to modify Tminimum.
• As we saw above setup time constraint involves clock time period parameter which decides the overall chip
speed which cannot be modified after the chip come from the foundry.

Recommended for you

STATIC TIMING ANALYSIS
Delays
Time taken by a signal to propagate through a Cell or Net
1. Gate Delay/Propagation Delay
Amount of delay from the input to the output of a logic gate. It is calculated based on 2 parameters.
Input Transition Time
Output Load Capacitance
2. Net Delay:
Amount of delay from the output of a gate to the input of the next gate in a timing path. It depends on the
following parameters.
Parasitic Capacitance.
Resistance of net
Insertion Delay : The delay between the clock root pin and clock sink pin of the flip flop
STATIC TIMING ANALYSIS
Jitter: Jitter is the variation of the clock period from edge to edge. It can vary +/- jitter value.
OR Variation in period from clock source (PLL)
Critical Path
• The path which creates longest delay
• Also called worst path/ late path/ max. path
Shortest Path
• One that takes the shortest time; this is also called the best path or early path or a min path
STATIC TIMING ANALYSIS
Timing Exceptions: Timing exceptions are nothing but constraints.
Single Cycle Path
 Timing path that is designed to take only one clock cycle for the data to propagate from the start point to the endpoint
 Start point and endpoint are flops clocked by the same clock
 By default tool will consider all timing paths as single cycle paths
Multi-Cycle Path
 Timing path that is designed to take more than one clock cycle for the data to propagate from the start point to the endpoint
 Start point and endpoint are flops clocked by the same clock This is usually a large combinational block between two registers.
Half Cycle Path
 Timing path that is designed to take half clock cycle (both of the clock edges) for the data to propagate from the start point to the endpoint
 Start point and endpoint are flops clocked by the same clock( hold edge of capture flop can be earlier than the hold edge of launch flop)
False Path
 Physically exist in the design but are Logically/ Functionally inactive/ incorrect path
 Means no data is transferred from Start Point to End Point
STATIC TIMING ANALYSIS
Recovery and Removal Time:
• These are timing checks for asynchronous signals similar to the setup and hold checks
• Recovery time: Recovery time is the minimum amount of time required between the release of an asynchronous signal from the active state
to the next active clock edge.
• Removal time: Removal time specifies the minimum amount of time between an active clock edge and the release of an
asynchronous control signal.

Recommended for you

Design Rule violations (DRV’s
Maximum Transition Time (Max Tran)
1. Time required by a pin to change logic values ( 0 to1 or 1to 0) is called Transition time
2. the longest time required by a pin to change logic values is called Maximum Transition time.
3. Due to this , large dynamic power dissipation can happen.
4. To reduce the maximum transition time by adding buffers on the net
fixes: 1)replace hvt to lvt
2)replace net length by adding buffers
3)increase driver size
STATIC TIMING ANALYSIS
Design Rule violations (DRV’s
Maximum capacitance (Max Cap.)
1. It is the capacitive load on output pin can drive.
2. the output pin of cell can drive the inter connect capacitance of net and input capacitance
of cell.
3. If large capacitance load is there , it will take more time to charge or discharge.
4. to avoid this ,high drive strength cells are used , then it can drive the more load
capacitance.
fixes: 1)upsize driver cell
2)adding buffer in mid of long route
STATIC TIMING ANALYSIS
• Maximum fan out (Max Fanout)
1. output can drive other inputs without any degradation
2. If load increases ,current will be degraded
3. cloning and load splitting can be used to reduce the fanout
fixes:
1. Reduce fanout by load splitting by buffering
2. Cloning :Cloning is a good method to distribute the load and to improve the signal
strength.
STATIC TIMING ANALYSIS
• Min pulse width violation:
1. If we have variation in rise and fall transition from the input transition of rise
and fall, then the threshold (50%) will go worse. Hence the pulse width will
decrease.
2. If pulse width decreases, then we might lose data which was about to be
captured at some time.

Recommended for you

STATIC TIMING ANALYSIS
Virtual clock:
1.Virtual clock as the name suggests doesn't exist physically in the design at all, its just used for the specifying the
input / output delay values ( if no clock is existing )
2. Virtual clock can be created same as Create_clock, except that the port/pin name must not be specified !
incase if u have a purely combination path and if u want to specify a
set_input_delay
or
set_output_delay
for that path, then the virtual clock is used
STATIC TIMING ANALYSIS
• Signal Integrity :Signal Integrity is the ability of an electrical signal to carry information reliably
And TO resist the effects of high-frequency electromagnetic interference from nearby signals.
Effects: CrossTalk, EM, Antennae Effects.
CrossTalk:
Crosstalk is the undesirable electrical interaction between two or more physical adjacent nets due to cross coupling capacitance
or The switching activity in aggressor net overlaps (or) going to affect the victim net
. Crosstalk can lead to crosstalk-induced delay changes or static noise.
• There are two types of crosstalk: 1) crosstalk noise
2) crosstalk delay
Glitch- A glitch is a short-lived fault in a system.
An electrical pulse of short duration that is usually the result of a fault or design error, particularly in a digital circuit
STATIC TIMING ANALYSIS
Crosstalk noise: If one net is switching & another neighbouring net is at constant logic.
If they have mutual capacitance between them, other net may be affected & that net may have a
sudden raising or falling bump or spike.
such a spike on victim net is called crosstalk noise/glitch
STATIC TIMING ANALYSIS
Crosstalk Delay:
It occurs ,when both aggressor & victim nets switching together. which may violate setup time/hold time violations
How timing will effect with crosstalk delay?
1.When both the nets are switching in the same direction due to crosstalk the delay reduced in the victim due to this we get hold
violations in data path and setup violations in clock path.
2. When both the nets are switching in the opposite direction due to crosstalk the delay increases in the victim due to this we get
setup violations in the data path and hold violations in clock path

Recommended for you

STATIC TIMING
ANALYSIS
• PVT: PVT is abbreviation for process, Voltage and Temperature. In order to make our chip to work in all possible conditions,
• Process:
• Process variation is the deviation in attributes of transistor during the fabrication.
Process variation is gradual . It can not be abrupt.
Process variation is different for different technologies but is more dominant in lower node technologies (<65nm).
Below are few important factors which can cause process variation;
1. Wavelength of the UV light
2. Manufacturing defects
The affects of process variation are listed below;
1. Oxide thickness variation
2. Dopant and mobility fluctuation
3. Transistor width, length etc.
4. RC Variation
STATIC TIMING ANALYSIS
These variations will cause the parameters like threshold voltage to change its value from expected.
Threshold voltage depends on oxide thickness, source-to-body voltage and implant impurities. Consider
the drain current equation for NMOS;
ID = (1/2)μnCox (W/L)(VGS – VTh)2
As we are talking about process variation, it deals with physical properties of MOSFET. So, current
flowing through the channel directly depends upon mobility (μn), oxide capacitance Cox (and hence
thickness of oxide i.e. tox) and ratio of width to length.
Any of these parameters change, it will result in changing the current. In other words, it will affect the
delay of the circuit. Delay decreases with increase in current.
STATIC TIMING ANALYSIS
Voltage:
There are multiple reasons for voltage variation. These are discussed below.
The important reason for supply voltage fluctuations is IR drop. IR drop is caused by the current flow over the
parasitic resistance of the power grid. IR drop reduces the supply voltage from the required value.
The second important reason for voltage variation is supply noise caused by parasitic inductance in
combination with resistance and capacitance. The current through parasitic inductance causes the voltage
bounce. Both these effects together can not only lead to voltage drops but also voltage overshoot.
Supply voltage that any chip works on is given externally. It can come from DC source or some voltage
regulator. Voltage regulator will not give same voltage over a period of time. It can go above or below the
expected voltage and hence it will cause current to change making the circuit slower or faster than earlier.
STATIC TIMING ANALYSIS
Temperature:
The temperature variation is with respect to junction and not ambient temperature. The temperature at the
junction inside the chip can vary within a big range and that’s why temperature variation need to be
considered. Figure 3 shows the variation of delay with respect to temperature.
Delay of a cell increases with increase in temperature. But this is not true for all technology nodes.
For deep sub-micron technologies this behavior is contrary.
This phenomenon is called as temperature inversion.
The delay depends on the output capacitance and ID current (directly proportional to Cout and
inversely proportional to ID). When the temperature increases, delay also increases (due to the variation
in carrier concentration and mobility). But when temperature decreases, delay variation shows different
characteristics for submicron technologies. For technology nodes below 65nm, the delay will increase with
decrease in temperature and it will be maximum at -40°C. This phenomena is known as “temperature
inversion”.

Recommended for you

STATIC TIMING ANALYSIS
Why Temperature inversion happens?
As temperature increases, mobility and threshold voltage start decreasing. The delay is inversely proportional
to the mobility and directly proportional to the threshold voltage.
So the resultant effect from both mobility and threshold voltage decides the value of delay.
Consider the current equation of a MOSFET for better understanding;
ID = (1/2)μnCox (W/L)(VGS – VTh)2
In the higher technology node, where the supply voltage is very high, the effect of VTh is very low as (VGS –
VTh) value is large. Hence mobility plays major role in deciding current. So at higher technology nodes, when
the temperature increases mobility decreases and as a result the delay will increase.
At the lower technology node (specifically, less than 65nm), the supply voltage is very low, so the (VGS –
VTh) difference is small and the square of this value is very small resulting reduced ID current, which
increases delay at lower temperature. Where at other end above 65nm delay decreases at lower
temperature.
STATIC TIMING ANALYSIS
RC Variation:
RC variation is also considered as corners for the setup and hold checks. RC variation can happen
because of fabrication process and the width of metal layer can vary from the desired one
Critical corners for Setup and Hold check
We always check our chip to work in worst scenarios. We should be very pessimistic about setup and hold checks. So consider worst case scenarios.
Setup violation can be caused if data is coming very slow. So the condition when process is slow, voltage is minimum and temperature is maximum is
the worst case for setup check. Also because of temperature inversion at lower technology node, delay will increase as temperature decrease. Hence
lowest temperature results in more delay. It is not compulsory that the delay at lowest temperature is always less than delay at highest temperature.
Hold violation is caused if data comes faster. So process should be faster, voltage should be maximum and temperature should be minimum.
Now if setup and hold are checked in worst corners, then the chip should work in every scenario. Still we check them in typical corners because we
need to analyze power consumption. Refer following table for the worst case scenarios for setup and hold.
STATIC TIMING ANALYSIS
OCV,AOC AND POCV
1. During fabrication the chips on the same die may suffer from variations due to process, voltage or temperature
change, thus transistors can be faster or slower in different dies.
2. To compensate the variation, static timing analysis(STA) introduces a concept called On Chip Variation(OCV).
3. During design time, extra timing margins are added in timing analysis.
4. OCV has been evolved to Advanced On Chip Variation(AOCV), or even Parametric On Chip Variation(POCV).
5. On Chip Variation(OCV): This concept is related to fabrication process, these variation related to fabrication steps first
is Etching and second is oxide thickness.
There are two types of variation:
Global Variation: These variations are die to die or inter-chip variation. They depend on Pressure, voltage and temperature.
Local Variation: These variation are intra-chip variations and local variation are taken by derates, timing derates are
multiplied by cell delays and wire delays to account OCV.
STATIC TIMING ANALYSIS
Etching:
Etching is one of the sources of variation, which is used the define the structure of a transistor. In practical
case the width and length of transistor is different from the expected W and L ratio. The small change for one
transistor will result in big impact on chain of billion of transistor
From the above figure we observe that ideal case is different from practical case.Let
us take W and L in Ideal case . lt is different from W and L in actual case.
Now we will see how this small change in W/L ratio affect the cell delay
As we know the formula of Drain current

Recommended for you

STATIC TIMING ANALYSIS
As we know the formula of Drain current
Drain current (ld) = u Cox (W/L) [(Vgs-Vth)Vds-(1/2)VdsA2]
Where u is mobility of charge carriers,Cox is capacitance per unit area, W is width of channel,L is channel length, Vgs
is gate to source voltage, Vth is threshold voltage and Vds is drain to source voltage.
We can observe from drain current equation Id is directly proportional to (W/L),
when we think of a capacitor at the output of an inverter then capacitor charging depends on the amount
of current that is flowing it.
If drain current changes the amount of time taken by capacitor definitely.
If drain current (ld) is high then capacitor takes less amount of time to charge and
hence delay is minimum.
If drain current (ld) is low then capacitor takes huge amount of time to charge and
hence delay is maximum .
Hence we can say that delay decrease with increase in current and vice versa.
STATIC TIMING ANALYSIS
Oxide thickness:
Oxide thickness is another source of variation, In practical case the oxide thickness is not uniform along the channel.
We know the drain current equation,
Drain current (ld) = uCox(W/L)I(Vgs-Vth)Vds-(1/2)Vds^2].
where Cox=Eox/tox , ld is inversely proportional to tox.
If the value of tox changes the value of drain current is also changes.
Now we will see how delay of cell is related to W/L and tox from formula point of view,
we know that delay of a cell depends on resistance(R) and capacitance(C)and from ohm's law resistance
varies as current changes.
Delay (tpd)=function(R,C)=f(ld)=f(tox,W,L)
STATIC TIMING ANALYSIS
As a result of OCV, some cells may be fast or slow than expected.
If these variations are not accounted, results maybe pessimistic and can lead to setup or hold violations.
In order to model these, we introduce derates. Timing derates are multiplied with the net delay and cell
delay for the launch and capture clock paths.
STATIC TIMING ANALYSIS
How to calculate timing slack using OCV:
Setup Analysis: While calculating the setup analysis we need to take late derate along the launch path and early derate along the capture path.
Arrival Time:
Arrival time includes addition of cell and wire delays along the launch path.
Arrival Time(AT) = [wire1 delay late derate + clk to q *late derate + wire2 delay late derate inverter delay latederate+wire3 delay late derate.]
Arrival Time(AT) =[ 0.1*1.1 +0.2*1.1+0.2*1.1+ 3*1.1 +0.4*1.1]
Arrival Time(AT) = 4.29 ns
Required Time:
Required Time(RT) = [Tclk-Tsetup+ [Twire delays'early derate+ Tcell delays'early derate]
RT [2-0.2+[0.3 0.9+2'0.9+0.4 0.9]
Required Time(RT) = 4.23 ns
Setup Slack RT-AT=4.23-4.29= -0.06 ns (-ve slack).Negative slack indicates setup violation

Recommended for you

STATIC TIMING ANALYSIS
Hold Analysis: While calculating the hold analysis we need to take early derate along the launch path and
late derate along the capture path.
Arrival Time(AT) = wire1 delay early derate +clk to q early derate + wire2 delay early derate + inverter
delay early derate + wire3 delay *early derate.
Arrival Time(AT) = 0.1*0.9 +0.2*0.9 + 0.2*0.9 +3*0.9 0.4*0.9 3.51 ns
Required Time:
Required Time(RT) = T hold +Twire delays late derate+ T cell delays late derate
Required Time(RT) = 0.1+0.3*1.1+2*1.1 +0.4*1.1 3.07 ns
Hold Slack = AT-RT=3.51-3.07 0.44 ns(+ve slack) which shows hold condition is met
STATIC TIMING ANALYSIS
Without ocv
setup Analysis:
Arrival Time:
Arrival Time(AT) = wire1 + clk toq+ inv delay +wire3
Arrival Time(AT) = 0.1+0.2+0.2+3+0.4 3.9 ns
Required Time:
Required Time(RT) = Tclk-Tsetup + Twire delays + T cell delays
Required Time(RT) 2-0.2+0.3+2+0.4 = 4.5 ns
Setup Slack = RT-AT = 4.5-3.9 0.6 ns(+ve slack)
which shows setup condition is met.
Hold Analysis:
Arrival Time:
Arrival Time(AT) = wire1 + clk to q + inv delay + wire3
Arrival Time(AT) = 0.1+0.2+0.2+3+0.4 3.9 ns
Required Time:
Required Time(RT) = Thold + Twire delays + T cell delays
Required Time(RT) =0.1+0.3+2+0.4 2.8 nsHold Slack = AT-RT = 3.9-2.8 = 1.1 ns(+ve slack)
which shows hold condition is met.
From above two cases we conclude that we should always consider the derates and apply them to avoid timing violations.
STATIC TIMING ANALYSIS
Advanced On chip Variation(AOCV):
In case of OCV constant derates are applied across the timing path. But in AOCV we multiply cell and wire delays with different
derate factors depending on the distance and depth.
AOCV is represented by a two dimensional table: the derate value of a cell is determined by logic depth and distance.
For smaller path depths OCV gives optimistic results when compared to AOCV. For larger path depths OCV tends to be more
pessimistic than AOCV(AOCV gives accurate values)
Parametric On Chip Variation(POCV):
Below 1Onm technologies AOCV cannot reduce pessimism hence to reduce the pessimism at lower technology nodes POCV was
introduced.
Here cell delay is calculated based on delay variation of cell, delay variation denoted by sigma and delay is denoted by u.
POCV models a cell delay using Gaussian distribution directly, instead of adding a derate value.
Cell delay is calculated from a parameter, which is extracted from either library, or POCV table.
Pocv-here the derates will be based up on the cell type and the special distance.
STATIC TIMING ANALYSIS
Different Modes
Function Mode Scan Mode
Slowm40 Fastm40
Slow125 Fast125
Fastm40
Fast125
Corners
Slowm40…….(.lib+RC techfile Cmax
Slow125
Fastm40…….(.lib+RC techfile(Cmin|)
Fast125

Recommended for you

STATIC TIMING ANALYSIS
Timing eco flow fixing order:
ORDER OF ECO FIXING STEPS
1. Before you attempt ECO fixing, ensure that the design is fully placed and routed, with generated
clock trees, and use physically aware ECO to ensure the best quality of results.
2. The Prime Time ECO commands and command option let the ECO fixing goals.
3. Setup or hold fixing does not degrade DRC (max_capacitance and max_transition) violations,
4. but DRC fixing can degrade setup or hold violations because DRC fixing has the highest priority.
5. Also, hold fixing preserves setup slack, but setup fixing is allowed to introduce some hold violations,
because setup is a harder problem to fix. Therefore,
6. it is a good idea to fix DRC violations first, then setup violations, and finally hold violations
ECO FLOW
In the Primetime tool, an engineering change order (ECO) is an incremental change in a chip design to reduce
design rule constraint (DRC) violations, timing violations, or power.
The Primetime tool finds these design issues and corrects them by sizing cells, replacing cells, or inserting
buffers, and it writes out the changes in script format so that you can implement the changes in other tools.
The commands to perform ECO fixing are:
1. fix_eco_drc
2. fix_eco_timing
3. fix_eco_power
After ECO fixing is complete, to implement the changes, use the write_changes command to write out the
changes, and run the script in the IC Compiler or IC Compiler II tool. After the changes are implemented, you
should perform parasitic extraction and run timing analysis again in the Primetime tool.
SETTING THE ECO OPTIONS
• Before you run any ECO fixing commands, follow these steps to set the ECO options:
1. Import the design into Primetime by reading the Verilog, SDC, and parasitic data files.
2. Set the timing_save_pin_arrival_and_slack variable to true.
3. Perform a full timing update (update_timing or report_timing).
4. Set the ECO variables that are relevant for your design or analysis conditions

Recommended for you

ORDER OF ECO FIXING STEPS
Steps Commands Fixing
Step1: Power recovery
fix_eco_powe Fixing mechanisms Cell sizing, buffer removal
Does not introduce new timing or DRC violations
Step 2: Fix DRC and noise violations
fix_eco_drc Fixing mechanisms Buffer insertion, cell sizing
Alters setup and hold slacks as needed
Step 3: Fix timing violations
fix_eco_timing Fixing mechanisms Buffer insertion, cell sizing
Setup fixing honors DRC and alters hold slack if needed; hold
fixing honors setup slack and DRC
Step 4: Final leakage recovery
fix_eco_power Fixing mechanisms Threshold voltage
swapping
Does not introduce new timing or DRC violations; does not
change layout
STATIC TIMING ANALYSIS
• Bottleneck:
• NAME
report_si_bottleneck:
Identify the crosstalk bottlenecks in the design.
This is useful when the major sources of violations come from crosstalk effects.
SYNTAX
int report_si_bottleneck -cost_type type
Removing common clock buffer delay between launch path and capture path is CPPR. (common path pessimism
removal)
CPPR (CLOCK RE-CONVERGENCE PESSIMISM REMOVAL )
1. The delay difference along the common paths of the launching and capturing clock paths is called CRPR.
2. This common path delays are multiplied with different derates (early and late), resulting in different delays.
3. These cells have max delay in launch path and min delay in capture path.
4. The same cell cannot have different delays at the same time.
5. This results in additional pessimism which has to be removed. Here comes the need for Clock Re-convergence Pessimism Removal
(CRPR) or Common Path Pessimism Removal (CPPR).
6. This pessimism value is the difference between the max and min delay at the common clock path.
7. To reduce pessimism, CRPR is added to required time in setup analysis and subtracted from required time in hold analysis.
8. CRPR = Max. value - min. value
9. In the CRPR process we are removing the derating to common buffer.
10. it is clear that with the CRPR method both setup and hold are benefited
11. some commands related to CRPR:
pt_shell>
set_operating_conditions -analysis_type on_chip_variation -min MIN -max MAX
set timing_remove_clock_reconvergence_pessimism TRUE
PT SHELL FLOW
1. Starting from an RTL design.
2. The Design Compiler tool generates a gate-level
design.
3. From the gate-level netlist and physical library
information, the physical implementation tool (IC
Compiler or IC Compiler II) performs placement and
routing.
4. The Star RC parasitic extraction tool extracts the
parasitic RC data from the chip layout database.
5. The Prime Time tool reads the gate-level netlist and
parasitic data, and verifies the design timing using
information provided in the logic (.db) library.
6. If the tool finds any violations, it can generate
engineering change orders (ECOs) that guide the
physical implementation tool to fix the violations and
optimize power.

Recommended for you

PT SHELL
Compatibility With Galaxy Implementation Tools
The Prime Time static timing analysis tool is designed to work well with the Design Compiler synthesis tool and the IC
Compiler II place-and-route tool. These tools are compatible in the following ways:
1. They use the same logic libraries and read the same design data files.
2. They support the Synopsys Design Constraints (SDC) format for specifying design constraints, including the timing
and area constraints.
3. They share many commands (such as create_clock, set_input_delay, and report_timing) that are identical or similar in
operation.
4. They share the same delay calculation algorithms and produce similar delay results.
5. They generate similar timing reports.
6. Prime Time can provide engineering change order (ECO) guidance to IC Compiler II by generating change lists that
fix timing violations and optimize power.
Although the Design Compiler and IC Compiler II tools have their own built-in static timing analysis capabilities
The Prime Time tool has better speed, accuracy, capacity, and flexibility for static timing analysis.
PT_SHELL COMMANDS
Getting Help on the Command Line
To get help when running the Prime Time tool, use the following resources:
• Command help
❍ To list all Primetime commands, organized by command group, enter
pt_shell> help
❍ To show a brief description of a command, enter
pt_shell> help command_name
❍ To show all options and arguments for a command, enter
pt_shell> help -verbose command_name
• Man pages
To display the man page of a command, variable, or message, enter
pt_shell> man command_variable_or_message_nam
PT_SHELL COMMANDS
PT_SHELL COMMANDS

Recommended for you

PT_SHELL COMMANDS
command fixes setup violations throughout the design:
pt_shell> fix_eco_timing -type setup
The following command fixes hold violations throughout the design using both cell sizing
and buffer insertion, and using exhaustive path-based analysis for reduced timing pessimism:
pt_shell> fix_eco_timing -type hold -pba_mode exhaustive 
-buffer_list {BUFX2 DLY1X2 DLY2X2
STATIC TIMING ANALYSIS
STA Checks:
1 Setup and Hold Violations
2.Recovery and Removal Timings
3.Mean Pulse width Violations
4.Design Rule Violations
PHYSICAL VERIFICATION
Physical Verification : It is a process whereby an integrated ckt layout design is verified via EDA software
tools to ensure correct electrical and logical functionality
EDA electronic design automation tool such a ic validator from synopsis an caliber tool by mentor
graphics
After routing your pnr tool should give you zero drc/lvs violations
The major checks are
1.DRC
2.LVS
3 ERC
PHYSICAL VERIFICATION
Design Rule Check (DRC)
Design Rule Check (DRC) is the process of checking physical layout data against fabrication-specific rules specified by the
foundry to ensure successful fabrication.
Process specific design rules must be followed when drawing layouts to avoid any manufacturing defects during the fabrication of
an IC.
Process design rules are the minimum allowable drawing dimensions which affects the X and Y dimensions of layout and not the
depth/vertical dimensions.
As Technology Shrinks Number of Design Rules are increasing Corsplexity of Routing Rules is increasing Increasing the number
of objects involved More Design Rules depending on Width, Halo, Parallel Length

Recommended for you

PHYSICAL VERIFICATION
Design Rule examples:
Maximum Rules: Manufacturing of large continuous regions can lead to stress
cracks. So wide metal' must be slotted' (holes)
Angles: Usually only multiples of 45 degree are allowed
Grid: Al corner points must lie on a minimal grid, otherwise an "off griderror" is
produced
Minimum Spacing: The minimum spacing between objects on a single layer
Minimum Width: The min width rule specifies the minimum width of individual
shapes on a single layer
Minimum Enclosurel Overlap: Implies that the second layer is fully enclosed by
the first one Notch: The rule specifies the
minimum spacing rule: for objects on the same net, including defining the
minimum notch on a single-layer, merged object
Minimum Cut: the minimum number of cuts a via must have when it is on a wide
wire
PHYSICAL VERIFICATION
Order of fixes in signoff 1PO w.r.t To Intel:
1 Trclvs and Onlinelvs
2 Density Violation (Denallpheml)
3 Antenna Violations (Drc_IPHALL)
4 Drc_m1base
5.Drc_dv1up
6 Dfi_intergra (boundary violations)
7 Drc_sk (via stack violation) ..In 10nm tech more than 3vias can not be placed one above the other
PHYSICAL VERIFICATION LVS FLOW
Layout Versus Schematic (LVS): DRC only verifies that the
given layout satisfies the design rules provided by the
fabrication unit. It does not ensure the functionality of layout.
Because of this, idea of LVS is originated.
• It is the method of verifying the layout of the design is
Functionally equivalent to the schematic of design.
Layout Versus Schematic (LVS) verifies the connectivity of a
Verilog Netlist and Layout Netlist (Extracted Netlist from
GDS) . Tool extracts circuit devices and interconnects from
the layout and saved as Layout Netlist (SPICE formats LVS
performs comparison between 2 Netlist, it does not compare
the functionalities of both the Netlist.
PHYSICAL VERIFICATION
• Inputs Requirements
1. LVS Rule deck
2. Verilog Netlist
3. Physical layout database (GDS)
4. Spice Netlist (Extracted by the tool from GDS)
LVS rule deck : is a set of code written in Standard Verification Rule Format (SVRF) or TCL Verification Format (TVF).
It guides the tool to extract the devices and the connectivity of IC’s.
It contains the layer definition to identify the layers used in layout file and to match it with the local on of layer in GDS.
It also contains a device structure definitions
LVS checks:
Short Net Error, Open Net Error, Extract errors, Compare errors (Malformed Devices Pin Errors Device Mismatch Net
Mismatch)

Recommended for you

PHYSICAL VERIFICATION
• Steps of LVS
• Extraction:
1. The tool takes GDSII file containing all the layers and uses polygon based approach to determine the
components like transistors, diodes, capacitors and resistors and also connectivity information between
devices presented in the layout by their layers of construction.
2. All the device layers, terminals of the devices, size of devices, nets, vias and the locations of pins are
defined and given an unique identification.
Reduction:
1. All the defined information is extracted in the form of netlist.
Comparison:
1. The extracted layout netlist is then compared to the netlist of the same stage using the LVS rule deck. In
this stage the number of instances, nets and ports are compared.
2. All the mismatches such as shorts and opens, pin mismatch etc.. are reported.
3. The tools also checks topology and size mismatch
PHYSICAL VERIFICATION
LVS Checks :
No of devices in schematic and its layout
Type of devices in schematic and its layout
No of nets in schematic and its layout
Errors occur
Shorts: Shorts are formed, if two or more wires which should not be connected together are connected
Opens: Opens are formed, if the wires or components which should be connected together are left floating or partially
connected.
Component mismatch: Component mismatch can happen, if components of different types are used (e.g., LVT cells
instead of HVT cells)
Missing components: Component missing can happen, if an expected component is left out from the layout
Parameter mismatch: All components has it's own properties, LVS tool is configured to compare these properties with
some tolerance. If this tolerance is not met, then it will give parameter mismatch.
PHYSICAL VERIFICATION
Electrical Rule Check (ERC):
Electrical Rule Check (ERC) is used to analyze or confirm the electrical connectivity of an IC design ERC
checks are run to identify the following errors in layout.
1. To locate devices connected directly between Power and Ground
2. To locate floating Devices, Substrates and Wells
3. To locate devices which are shorted
4. To locate devices with missing connections
Well Tap connection error: The Well Taps should bias the Wells
Well Tap Density Error: If there is no enough Taps for a given area then this error is flagged Taps need to
be placed regularly which blases the Well to prevent Latch-up
Tools: Mentor Graphics Calibre, Synopsys Hercules, Cadence Assura, Magma Quartz
PHYSICAL VERIFICATION
Onlinelvs: check_lvs
Trclvs: Internally generated from Diagram ,so we need to laod this IC
Validator with respect synopsis after loading IC Validator this report we need
to open ,while popup will happens like : shorts and opens ,device mismatch.
Difference b/w onlinelvs and Trclvs is
In Trclvs hierarchical shorts are visible
In Onlinelvs hierarchical shorts are not visible

Recommended for you

PHYSICAL VERIFICATION
Antenna effect Definition:
During the fabrication of MOS integrated circuits, especially at the time of plasma etching, there will be a chance of collecting more
charges at the gate and causes damage to the gate oxide layer since it is very thin. This condition is known as Antenna effect.
Antenna Violation : The ratio of the gate area to the gate oxide area is known as Antenna ratio.
Solutions for Antenna Violation:
1 Metal Jumper insertion /metal jogging: Breaks the long wire which is connected gate and route to upper metal layer. So it
becomes short and less capable of collecting charge. If the antenna violation happens at a metal layer, always use higher metal
layers as metal jumper ,since all the lower layers are already fabricated at that moment .
2. Diode insertion: Connect reverse biased diodes near gate input where violation occurs on a net provides a discharge path to the
substrate which saves the gate of the transistor. it can protect the gate oxide
Adding diode increases the area and also the capacitance which leads to increase in delay,
3.IPN( Inter Process Node)
Add vias: near the gate(s), to connect the gate to the highest layer used. This adds more vias, but involves fewer changes to
the rest of the net.
1.INTERVIEW QUESTIONS
1. What is uncertainty values for hold time
2. What is skew values for setup and hold which one is violating
3. Where do you check set up & hold violations in multicycle paths?
4. Hold fixing for reg to out path?
5. How to reduce propagation delay ?
6. What are retention registers?
7. In a circuit, for reg to reg path ...Tclktoq is 50 ps, Tcombo 50ps, Tsetup 50ps, tskew is 100ps. Then
what is the maximum operating frequency?
8. How R and C values are affecting time?
9. How do u calculate insertion delay.
10. what are effects OCV on insertion delay and skew
11. setup is checked in which clock cycle and hold is checked in which clock cycle
2.INTERVIEW QUESTIONS
why to reduce insertion delay what are its impact
1. which is better for insertion delay more low drive strength buffers or less high drive strength buffers
2. Why do we use buffer for fixing violations instead of AND and NAND gates?
3. What setup analysis and how to fix setup violations ?if you tried all the setup methods, still violations are
there, what you do ?
4. What is clock pulling and clock pushing?
5. What is clock budgeting ? How much percentage will you provide to the design?
6. What is insertion delay ? In your design, insertion delay is more, how do you fix it? Whether it will effect
on the timing
7. How do you fix timing violations after routing?
8. How do you fix DRC violations after routing?
9. Explain multi voltage design?
10. How you worked on multi voltage design?

More Related Content

Similar to Netlist to GDSII flow new.pptx physical design full info

VLSI
VLSIVLSI
Ec8791 unit 5 processes and operating systems
Ec8791 unit 5 processes and operating systemsEc8791 unit 5 processes and operating systems
Ec8791 unit 5 processes and operating systems
RajalakshmiSermadurai
 
Tos tutorial
Tos tutorialTos tutorial
Tos tutorial
manikainth
 
VLSI
VLSIVLSI
24-02-18 Rejender pratap.pdf
24-02-18 Rejender pratap.pdf24-02-18 Rejender pratap.pdf
24-02-18 Rejender pratap.pdf
FrangoCamila
 
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGYASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
Ilango Jeyasubramanian
 
Scan insertion
Scan insertionScan insertion
Scan insertion
kumar gavanurmath
 
Resume_new1_may
Resume_new1_mayResume_new1_may
Resume_new1_may
anuradha m masanan
 
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
International Journal of Power Electronics and Drive Systems
 
ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI
Jayant Suthar
 
Level sensitive scan design(LSSD) and Boundry scan(BS)
Level sensitive scan design(LSSD) and Boundry scan(BS)Level sensitive scan design(LSSD) and Boundry scan(BS)
Level sensitive scan design(LSSD) and Boundry scan(BS)
Praveen Kumar
 
Design for testability and automatic test pattern generation
Design for testability and automatic test pattern generationDesign for testability and automatic test pattern generation
Design for testability and automatic test pattern generation
Dilip Mathuria
 
chameleon chip
chameleon chipchameleon chip
chameleon chip
Sucharita Bohidar
 
EC8791-U5-PPT.pptx
EC8791-U5-PPT.pptxEC8791-U5-PPT.pptx
EC8791-U5-PPT.pptx
Pavithra525349
 
Hari Krishna Vetsa Resume
Hari Krishna Vetsa ResumeHari Krishna Vetsa Resume
Hari Krishna Vetsa Resume
Hari Krishna
 
H344250
H344250H344250
H344250
IJERA Editor
 
Dsp lab manual 15 11-2016
Dsp lab manual 15 11-2016Dsp lab manual 15 11-2016
Dsp lab manual 15 11-2016
Gopinath.B.L Naidu
 
Introduction to Computer Architecture and Organization
Introduction to Computer Architecture and OrganizationIntroduction to Computer Architecture and Organization
Introduction to Computer Architecture and Organization
Dr. Balaji Ganesh Rajagopal
 
My paper
My paperMy paper
Computer arithmetic in computer architecture
Computer arithmetic in computer architectureComputer arithmetic in computer architecture
Computer arithmetic in computer architecture
ishapadhy
 

Similar to Netlist to GDSII flow new.pptx physical design full info (20)

VLSI
VLSIVLSI
VLSI
 
Ec8791 unit 5 processes and operating systems
Ec8791 unit 5 processes and operating systemsEc8791 unit 5 processes and operating systems
Ec8791 unit 5 processes and operating systems
 
Tos tutorial
Tos tutorialTos tutorial
Tos tutorial
 
VLSI
VLSIVLSI
VLSI
 
24-02-18 Rejender pratap.pdf
24-02-18 Rejender pratap.pdf24-02-18 Rejender pratap.pdf
24-02-18 Rejender pratap.pdf
 
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGYASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
ASIC DESIGN OF MINI-STEREO DIGITAL AUDIO PROCESSOR UNDER SMIC 180NM TECHNOLOGY
 
Scan insertion
Scan insertionScan insertion
Scan insertion
 
Resume_new1_may
Resume_new1_mayResume_new1_may
Resume_new1_may
 
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
Design and Implementation of Pulse Width Modulation Using Hardware/Software M...
 
ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI
 
Level sensitive scan design(LSSD) and Boundry scan(BS)
Level sensitive scan design(LSSD) and Boundry scan(BS)Level sensitive scan design(LSSD) and Boundry scan(BS)
Level sensitive scan design(LSSD) and Boundry scan(BS)
 
Design for testability and automatic test pattern generation
Design for testability and automatic test pattern generationDesign for testability and automatic test pattern generation
Design for testability and automatic test pattern generation
 
chameleon chip
chameleon chipchameleon chip
chameleon chip
 
EC8791-U5-PPT.pptx
EC8791-U5-PPT.pptxEC8791-U5-PPT.pptx
EC8791-U5-PPT.pptx
 
Hari Krishna Vetsa Resume
Hari Krishna Vetsa ResumeHari Krishna Vetsa Resume
Hari Krishna Vetsa Resume
 
H344250
H344250H344250
H344250
 
Dsp lab manual 15 11-2016
Dsp lab manual 15 11-2016Dsp lab manual 15 11-2016
Dsp lab manual 15 11-2016
 
Introduction to Computer Architecture and Organization
Introduction to Computer Architecture and OrganizationIntroduction to Computer Architecture and Organization
Introduction to Computer Architecture and Organization
 
My paper
My paperMy paper
My paper
 
Computer arithmetic in computer architecture
Computer arithmetic in computer architectureComputer arithmetic in computer architecture
Computer arithmetic in computer architecture
 

Recently uploaded

Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model SafeNehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
jiya khan$A17
 
ITR Filing for the year of the 2023-24 .pdf
ITR Filing for the year of the 2023-24 .pdfITR Filing for the year of the 2023-24 .pdf
ITR Filing for the year of the 2023-24 .pdf
shyamraj39
 
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model SafeDwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Jinni singh$A17
 
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】 .
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】  .十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】  .
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】 .
telchlarzelere270
 
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model SafePaharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
jiya khan$A17
 
With Fear For Our Democracy I Dissent Shirt
With Fear For Our Democracy I Dissent ShirtWith Fear For Our Democracy I Dissent Shirt
With Fear For Our Democracy I Dissent Shirt
TeeFusion
 
S S Bhavikatti Civil Engineering Structural Designing
S S Bhavikatti Civil Engineering Structural DesigningS S Bhavikatti Civil Engineering Structural Designing
S S Bhavikatti Civil Engineering Structural Designing
SuvamoyPanja
 
Right Choice Landscaping offers exceptional villa landscape maintenance servi...
Right Choice Landscaping offers exceptional villa landscape maintenance servi...Right Choice Landscaping offers exceptional villa landscape maintenance servi...
Right Choice Landscaping offers exceptional villa landscape maintenance servi...
rightchoicelandscapi
 
Gender Equity in Architecture: Cultural Anthropology in Design Ideologies
Gender Equity in Architecture: Cultural Anthropology in Design IdeologiesGender Equity in Architecture: Cultural Anthropology in Design Ideologies
Gender Equity in Architecture: Cultural Anthropology in Design Ideologies
Aditi Sh.
 
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model SafePaharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
dakshishsingh98798
 
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
antonellispunches643
 
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model SafeMalviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
bookmybebe1
 
2024_summer_my_dream_from_users_gnjp_20240708
2024_summer_my_dream_from_users_gnjp_202407082024_summer_my_dream_from_users_gnjp_20240708
2024_summer_my_dream_from_users_gnjp_20240708
kousato1
 
2024_summer_my_dream_gnjp_20240705_ks.pdf
2024_summer_my_dream_gnjp_20240705_ks.pdf2024_summer_my_dream_gnjp_20240705_ks.pdf
2024_summer_my_dream_gnjp_20240705_ks.pdf
kousato1
 
Project on computer by saurabh very good 😊
Project on computer by saurabh very good 😊Project on computer by saurabh very good 😊
Project on computer by saurabh very good 😊
Saurabh computer
 
Professional Document Editing Services / Bank Statement Editing
Professional Document Editing Services / Bank Statement EditingProfessional Document Editing Services / Bank Statement Editing
Professional Document Editing Services / Bank Statement Editing
Edit Bank Statement
 
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdfAI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
taranenkovictoria
 
A Journey Through Islamic Architecture.pdf
A Journey Through Islamic Architecture.pdfA Journey Through Islamic Architecture.pdf
A Journey Through Islamic Architecture.pdf
Mostafa Abd Elrahman
 
Arch.Bob _ 005 _ Architectural Portfolio
Arch.Bob _ 005 _ Architectural PortfolioArch.Bob _ 005 _ Architectural Portfolio
Arch.Bob _ 005 _ Architectural Portfolio
ssusere235001
 
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdfHill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Vasu283735
 

Recently uploaded (20)

Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model SafeNehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Nehru Place @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
 
ITR Filing for the year of the 2023-24 .pdf
ITR Filing for the year of the 2023-24 .pdfITR Filing for the year of the 2023-24 .pdf
ITR Filing for the year of the 2023-24 .pdf
 
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model SafeDwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
Dwarka @ℂall @Girls ꧁❤ 9873777170 ❤꧂Fabulous sonam Mehra Top Model Safe
 
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】 .
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】  .十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】  .
十大美洲杯投注网站-美洲杯投注网站平台网址大全 |【​网址​🎉ac123.net🎉​】 .
 
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model SafePaharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Ruhi Singla Top Model Safe
 
With Fear For Our Democracy I Dissent Shirt
With Fear For Our Democracy I Dissent ShirtWith Fear For Our Democracy I Dissent Shirt
With Fear For Our Democracy I Dissent Shirt
 
S S Bhavikatti Civil Engineering Structural Designing
S S Bhavikatti Civil Engineering Structural DesigningS S Bhavikatti Civil Engineering Structural Designing
S S Bhavikatti Civil Engineering Structural Designing
 
Right Choice Landscaping offers exceptional villa landscape maintenance servi...
Right Choice Landscaping offers exceptional villa landscape maintenance servi...Right Choice Landscaping offers exceptional villa landscape maintenance servi...
Right Choice Landscaping offers exceptional villa landscape maintenance servi...
 
Gender Equity in Architecture: Cultural Anthropology in Design Ideologies
Gender Equity in Architecture: Cultural Anthropology in Design IdeologiesGender Equity in Architecture: Cultural Anthropology in Design Ideologies
Gender Equity in Architecture: Cultural Anthropology in Design Ideologies
 
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model SafePaharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
Paharganj @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Neha Singla Top Model Safe
 
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
十大欧洲杯投注app平台-十大靠谱欧洲杯投注app官方平台 |【​网址​🎉ac10.net🎉​】
 
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model SafeMalviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
Malviya Nagar @ℂall @Girls ꧁❤ 9873777170 ❤꧂VIP Jya Khan Top Model Safe
 
2024_summer_my_dream_from_users_gnjp_20240708
2024_summer_my_dream_from_users_gnjp_202407082024_summer_my_dream_from_users_gnjp_20240708
2024_summer_my_dream_from_users_gnjp_20240708
 
2024_summer_my_dream_gnjp_20240705_ks.pdf
2024_summer_my_dream_gnjp_20240705_ks.pdf2024_summer_my_dream_gnjp_20240705_ks.pdf
2024_summer_my_dream_gnjp_20240705_ks.pdf
 
Project on computer by saurabh very good 😊
Project on computer by saurabh very good 😊Project on computer by saurabh very good 😊
Project on computer by saurabh very good 😊
 
Professional Document Editing Services / Bank Statement Editing
Professional Document Editing Services / Bank Statement EditingProfessional Document Editing Services / Bank Statement Editing
Professional Document Editing Services / Bank Statement Editing
 
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdfAI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
AI in UX AI in UX - Exploring the Future of Design by FoF Nuremberg.pdf
 
A Journey Through Islamic Architecture.pdf
A Journey Through Islamic Architecture.pdfA Journey Through Islamic Architecture.pdf
A Journey Through Islamic Architecture.pdf
 
Arch.Bob _ 005 _ Architectural Portfolio
Arch.Bob _ 005 _ Architectural PortfolioArch.Bob _ 005 _ Architectural Portfolio
Arch.Bob _ 005 _ Architectural Portfolio
 
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdfHill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
Hill Dan - Dark matter and trojan horses. A strategic design vocabulary.pdf
 

Netlist to GDSII flow new.pptx physical design full info

  • 1. PHYSICAL DESIGN (GATE LEVEL NETLIST TO GDSII)
  • 2. WHAT IS SYNTHESIS? & GOALS OF SYNTHESIS Synthesis: It is the process of converting RTL code to Gate Level Netlist Synthesis is process of converting RTL (Synthesizable Verilog code) to technology specific gate level netlist (includes nets, sequential and combinational cells and their connectivity). Goal of synthesis: 1. To get a gate level netlist 2. Inserting clock gates 3. Logic Optimization 4. Inserting DFT (Design for Testability) 5. Logic Equivalence Check B/W RTL to Netlist should be maintained
  • 3. SYNTHESIS INPUTS INPUTS FOR SYNTHESIS 1. RTL(.V) 2. LIBRARAY LIFES(.LIB) 3. SYNOPSYS DESIGN CONSTRAINTS (.SDC) 4. UNIFIED POWER FORMAT (UPF) 5. SCAN CONFIGURATION FILE 6. TECHNOLOGY FILE(.TF )
  • 4. INPUT FILES REQUIRED Tech related: 1. .tf- technology related information. 2. .lib-timing info of standard cell & macros Design related: 1. .v- RTL code. 2. SDC- Timing constraints. 3. UPF- power intent of the design. 4. Scan config- Scan related info like scan chain length, scan IO, which flops are to be considered in the scan chains. For Physical aware: 1. RC co-efficient file (tluplus). 2. LEF/FRAM- abstract view of the cell. 3. Floorplan DEF- locations of IO ports and macros.
  • 5. SYNTHESIS FLOW STEPS 1)Analyze Checks syntax on RTL and generates immediate files.
  • 6. SYNTHESIS FLOW 2)Elaborate 1. Brings all lower level blocks into synthesis tool. 2. All the codes and arithmetic operators are converted into GTECH and DW (Design Ware) components. These are technology independent libraries. I. GTECH- contains basic logic gates &flops. II. Design Ware- contains complex cells like FIFO, counters.muxs Elaborate performs following tasks; Analyses design hierarchy. Removes empty switches and dead branches. Executes initial commands. Detects asynchronous reset. Converts decision trees to mux. Converts synchronous to D Latch/DFF. FSM pass 1. Detects FSM logic and extracts the no of input, output bits and state bits. 2. Converts FSM logic to basic logic.
  • 7. SYNTHESIS FLOW Memory pass Merging DFF to memory write(memwr) and memory read (memrd) Consolidating memwr/memrd cells Generate memory (mem) cells Mapping mem cells to basic logic 3)Import constraints and UPF 1. Once the design is extracted in the form of technology independent cells, timing constraints are imported from the SDC file. 2. If the design consists of multiple power domains, then using the UPF power domains, isolation cells, level shifters, power switches, retention flops are placed.
  • 8. 4.CLOCK GATING  Due to high switching activity of clock ,a lot of dynamic power is consumed. One of the techniques to lower the dynamic power is clock gating. In load enabled flops, the output of the flops switches only when the enable is on. But clock switches continuously, increasing the dynamic power consumption.  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
  • 9. SYNTHESIS FLOW 1.To remove the glitches due to AND gate, integrated clock gate is used. It has a negative level sensitive latch and an AND gate. 2.Clock gating makes design more complex. Timing and CG timing closure becomes complex. Clock gating adds more gates to the design. Hence min bit width (minimum register bit width to be clock gated) should be wisely chosen, because the overall dynamic power consumption may increase.
  • 10. SYNTHESIS 5)Compile  Performs Boolean optimization.  Maps all the cells to technology libraries.  Performs logic and design optimization.
  • 11. SYNTHESIS FLOW Optimization Logic optimization Design optimization 1. Detect identical cells 1.Reduce TNS and WNS 2. Optimize mux(dead branches in mux) 2.Power Optimization 3. consolidate mux and reduce inputs(many to single ) 3. Area Optimization 4. Remove DFF with constant value 4.Meet the timing DRV’s 5. Reduce word size of the cells 5. incremental clock gating 6. Remove unused cells and wires 7. Constant folding
  • 12. SYNTHESIS 7)DFT (Design for Testing) insertion 1. DFT circuits are used for testing each and every node in the design. 2. More the numbers of nodes that can be tested with some targeted pattern, more is the coverage. 3. To get more coverage the design needs to be more controllable and observable. 4. For the design to be more controllable we need more control points (mux through which alternate path is provided to propagate pattern). 5. For the design to be more observable we need more observe point (A scan-able flop that observes the value at that node). 6. Scan mode is used to test stuck at faults and anufactured devices for delay.
  • 13. SYNTHESIS 7)DFT (Design for Testing) insertion Scan mode is done using scan chains 1. Scan chains are part of scan based designs to propagate the test data. 2. By having scan chains, the design can be more controlable and observable. 3. Each scan chain inputs the pattern through scan input and outputs the pattern through scan output. 4. Scan chain consists of scan flops where the output of scanflops is directly connected to scan inputs of the flops
  • 14. SYNTHESIS 7)DFT (Design for Testing) insertion Stages of scan mode 1. Inputs the pattern through scan input port. 2. Scan shift- Scan enable is set to 1. Then inputs the pattern through the scan input, shifts the pattern through the scan flops and load all the flops with test pattern. 3. Scan capture- Scan enable is set to 0. In one clock cycle the loaded value in the flops propagates through combinational circuit and reaches the D pin of the next flop. 4. Scan enable is set to 1 and outputs the pattern through scan output port.
  • 15. SYNTHESIS 1. The scan chain length and number of scan chains has to be properly chosen, as having more scan chain length increases the pattern propagation time and having more scan chains increases the number of scan IO ports. 2. Scan chain Compile incremental 1. Technology mapping of DFT circuit 2. Optimization of the design
  • 16. SYNTHESIS OUTPUTS Outputs of synthesis 1. synthesized netlist 2. Modified constraints (.sdc) 3. Modified UPF 4. Timing reports 5. Scan DEF: Information of scan flops and their connectivity in scan chain
  • 17. SYNTHESIS CHECKS 1.Check if the RTL and Netlist are logically equivalent (LEC) 2.Check if SDC and UPF are generated after synthesis and also check their completeness. 3.Checks Timing - Command: check_timing 4. Checks Design - Command: check_design
  • 18. SYNTHESIS CHECKS • SDC Checks: ICC command: check_timing 1. If any unconstrained paths exist in the design then PNR tool will not optimize that path, so these checks are used to report unconstrained paths 2. Checks whether the clock is reaching to all the clock pin of the flip-flop. 3. Check if multiple clock are driving same registers 4. Check unconstrained endpoints 5. Port missing input/output delay. 6. Port missing slew/load constraints. You can correct unconstrained paths by adding new constraints using commands such as create_clock, set_input_delay, and set_output_delay. check_timing [-overlap_tolerance minimum_distance] [-override_defaults check_list] [-include check_list] [-exclude check_list] [-multiple_clock] [-retain]
  • 19. SYNTHESIS CHECKS Design checks: ICC command: check_design Check if current design is consistent or not It checks the quality of netlist and identifies: 1. Floating pins 2. Multidriven nets 3. Undriven input ports 4. Unloaded outputs 5. Unconstrained pins 6. Pin mismatch counts between an instance and its reference 7. Tristate buses with non-tristate drivers 8. Wire loops across hierarchies
  • 20. TOOLS FOR PNR SYNOPYSIS TOOL:1. ICC2 (New), DC compiler (logic synthesis) 2.DC Topo (physical synthesis) 3.Fusion compiler (combo of both) CADENCE TOOL: 1.RC Compiler (logic synthesis),Genus innoves (Physical synthesis)
  • 21. OVERVIEW OF PHYSICAL DESIGN FLOW 1.Physical Design is a part in ASIC design flow. 2.It is the process of converting Gate Level Netlist Into Transistor level GDSII layout. Which can be physically manufacturable with best QOR (Quality of Results ) and without changing the functionality. Thus Physical Design flow is also called as Netlist to GDSII Flow. 3.Most Commonly Used Tools presently in the industry for physical design , ICC2 From Synopsys & Innovus From Cadence.
  • 23. DESIGN IMPORT • The first step is Design Import all required Inputs files for PD • Like 1.Netlist(.v) ………..given by synthesis people 2.Synopsys Design Constraints (.sdc)……given by synthesis people 3.Logical /Timing library's (.lib)…... given by vendors 4.Physical Library (.lef)……given by vendors 5.TLU+ files …..given by fabrication people 6.Technology File (.tf)…… given by fabrication people
  • 24. DESIGN IMPORT Netlist: Format is .V 1. It contains Logical connectivity Of all Cell(Std cells, Macros). 2. It contain List of nets. 3. In the design for Knowing connectivity by using Fly lines. SDC :Format is .SDC : 1. CLOCK DEFINITIONS: Create Clock Period. 2. Generated Clock Definitions 3. Input Delay 4. Output Delay 5. I/O delay 6. Max delay 7. Min Delay
  • 25. DESIGN IMPORT -------------->Exceptions<------------------------- 9. Multi cycle path 10. False path 11. Half cycle path 12. Disable timing arcs 13. Case Analysis Multi cycle path, False path are Exceptions /contraints
  • 26. DESIGN IMPORT • Physical libraries: format is .lef: 1. Physical information of std cells,macros,pads. 2. Pin information. • Define unit tile placement. • Minimum Width of Resolution. • Hight of the placement Rows . • Preferred routing Directions. • Pitch of the routing tracks. 8. Antenna Rules. 9 Routing Blockages In physical info height,area,width, are present. and also it contains two views • 1)Cell View: In this all layout information is present,it is used at the time of tapeout • 2)FRAM view: is abstract view, it is used at the Place & Route
  • 27. DESIGN IMPORT Logical libraries :format is .lib 1. Timing information of Standard cells,Soft macros,Hard macros. 2. functionality information of Standard cells,Soft macros. 3. And design rules like max transition ,max capacitance, max fanout. 4. In timing information Cell delays ,Setup,Hold time are present. 5. Cell delay is Function of input transition and output load. 6. Cell delay is calculated based on lookup tables. 7. Cell delays are calculated by using linear delay models, Non linear delay models,CCS models. 8. functionality is used for Optimization Purpose. 9. And also Contain Power information. 10. And contains Leakage power for Default cell,Leakage Power Density for cell,Default Input voltage , Out put voltage.
  • 28. DESIGN IMPORT And PVT contains ------->Cell leakage Power -------->Internal Power --------->Rise Transition ----------->fall transition ---------->>Setup rise ----------->setup fall -------------->Hold rise ------------->Hold fall ----------------->cell rise ---------------->cell fal -------------------->Pin Capacitance And it contains A view(sub directory) i.e. LM(Logical Model view)view. It contains logical libraries
  • 29. DESIGN IMPORT Technology file: format is .tf: 1. It contains Name,Number conventions of layer and via 2. It contains Physical,electrical characteristics of layer and via 3. In Physical characteristics Min width,area,height are present. 4. In Electrical characteristics Current Density is present. 5. Units and Precisions of layer and via . 6. Colors and pattern of layer and via . 7. Physical Design rules of layer and via 8. In Physical Design rules Wire to Wire Spacing,Min Width between Layer and via are present.
  • 30. DESIGN IMPORT TLU+ files: format is .TLUP: 1. R,C parasitics of metal per unit length. 2. These(R,C parasitics) are used for calculating Net Delays. 3. If TLU+ files are not given then these are getting from .ITF file. 4. For Loading TLU+ files we have load three files . 5. Those are Max Tlu+,Min TLU+,MAP file. 6. MAP file maps the .ITF file and .tf file of the layer and via names
  • 31. SANITY CHECKS Before going to floor plan we will do some sanity checks ,so after reading the inputs (Design Import input files) sanity checks performs to make sure the correctness of the given inputs , So to avoid any mistakes and issues for further stage and verify the inputs by these checks 1.Check design –Netlist file command: check_design 2.Check timing -.sdc timing constraints command: check_timing 3.Check library –Connectivity b/w logical and physical librarys consist or not command: check_library This command shows the name of the library, library type & its version, units of time, capacitance, leakage power, and current. It shows the number of cells missing, the number of metal or pins missing in the physical and logical library 4.Design Data –Import Design feeding the all required inputs
  • 32. FLOOR PLANNING  Before going to FP ,we have to estimate the die size, After Estimating the Die size for floorplan, first will placed the IO ports /Pins a as per the information given by the full chip engineer. Then we have to analyze by using fly lines.
  • 33. WHAT IS FLOOR PLAN ? Primary aim of the FP, is place the macros into the core area towards the boundary. with sufficient area available for standard cells and routing. standard cell row: The area allotted for the standard cells on the core is divided into rows where standard cells are placed. The height of the row is equal to the height of the standard cell and width varies. The height varies according to multiple standard cell row height. there may be double-height cells, triple-height cells, etc. The standard cells will sit in the row with proper orientation
  • 36. FLOOR PLAN STEPS 1. Decide core width and height for die size estimation. 2.IO pad sites are created for placement of IO pad placement. 3.Placement of macros. 4.The standard cell rows created for standard cell placement. 5.Power planning (pre routing) 6.Adding physical only cells • apart from this aspect ratio of the core, utilization of core area, cell orientation, and core to IO clearance are also taken care of during the floorplan stages.
  • 37. FLOORPLAN CONTROL PARAMETER: • core area depends upon : • Aspect ratio: Aspect ratio will decide the size and shape of the chip. It is the ratio between horizontal routing resources to vertical routing resources (or) ratio of height and width. • Aspect ratio = width/height • Core utilization:- Utilization will define the area occupied by the standard cells, macros, and other cells. If core utilization is 0.8 (80%) that means 80% of the core area is used for placing the standard cells, macros, and other cells, and the remaining 20% is used for routing purposes. • (macros area + std cell area +pads area) Core utilization : ================================ • total core area • : Ex: check: Initialize_floorplan –side_ratio {2 2} –core_offset {10}
  • 38. MACRO PLACEMENT GUIDELINES(MPG) Macros may be memories, analog blocks. Proper placement of macros has a great impact on the quality and performance of the ASIC design. Macro placement can be manual or automatic.  placing the macros are near to boundary for easily communicate with other blocks of macros through IO pins  place similar macros together  avoid criss cross connections  pin direction towards the core  provide the enough space around the macro for IO routing  fix the macro locations , so that tool wont alter during optimization  apply the keep out margin around the macro because cells disturb the macro.  macro orientation is 180 degrees .for (No of pins to be routed * pitch of the routing layer *2 )  Spacing between macros = ------------------------------------------------------------------------- Available routing layers in the preferred direction
  • 39. MACRO PLACEMENT GUIDELINES(MPG) Avoid notch formation Notch are is not utilized effectively, so it will increase the placement density of the core and will rise the congestion CONGESTION: means available resources are lesser than the required resources. Reasons for Congestion. High standard cell density in small area, Placement of standard cells near macros, High pin density at the edge of macros Bad floorplan During IO optimization tool does buffering, so lot of cells placed in the core area.
  • 40. HOW TO CONTROL THE CONGESTION High cell density can cause the congestion.by default the cell density can be up to 95%. We can reduce the cell density in congested areas by using coordinate option  check: Set_congestion_options –max_util 0.45 –coordinate {x1 y1 x2 y2} Here we set the maximum cell density up to 45% and given the coordinates for the particular area.
  • 41. BLOCKAGES  Blockages can be used for avoiding congestion Two types of blockages: 1. placement blockage: check: Create _placement_blockage -type … 2 .Routing blockage :check: Create_routing_blockage –type.. placement blockage again can be divided into 3 types 1.Hard ,2.soft And,partial blockage 1.Hard blockage : No std cells are allowed 2.Soft blockage : only inverters /buffers are allowed and std cells are not allowed 3.Partial blockage only std cells are allowed partial std cell blockage is used to avoid congestion we can block the std cells as per the required percentage value.
  • 42. MACRO PLACEMENT GUIDELINES  Placement of macros are the based on the fly-lines ( its shows the connectivity b/w macro to macro and macro to pins) so we can minimize / reduce the interconnect length between IO pins and other cells. fly lines: macros are placed manually using fly lines. fly lines are a virtual connection between macros and macros to IO pads. , fly lines are of two types 1.macros to IO pin: 2. macros to macros fly lines  Avoids notches while placing macros, if anywhere notches is present then use hard blockages in that area Between two macros at least one pair of power straps (power and Ground) should be present. • Note: lots of iterations happen to get optimum floorplan. the designer takes care of the design parameter such as power, area, timing and performance during floor planning.
  • 43. HALO/KEEP KEEP-OUT MARGIN MPG:  The region around the four sides of macros, so no standard cells will not sit near to Macro pins. This technique avoids the congestion. Check:Create_keepout_margin –outer {10 10 10 10} my_lib_macro  This is the region around the fixed macros so that no other macros and standard cell can be placed near to macros boundary  The width of the keep out margin on each side of the fixed cell can be the same or different depending on how you define keep out margin.  keeping the placement of cells out of such regions avoids congestion and produce better QOR  Halo of two adjacent macros can be overlap.  If the macros moved from one place to another place, the halo will also move.
  • 44. TYPES OF FLOORPLAN TECHNIQUES 2 Types of Floor Plan Techniques 1.Abutted:- When the chip is divided into blocks in the abutted design there is no gap between the blocks. 2.Non abutted:- In this design there is a gap between blocks. The connection between the blocks is done through the routing nets.
  • 45. OUTPUTS OF FLOORPLAN 1. Die/Block area 2. I/O pad/placed 3. Macro placed 4. Power grid design 5. Power pre-routing 6. Standard cell placement areas.
  • 46. POWER PLANING Power planning means to provide power to the every macros, standard cells, and all other cells are present in the design.  Power planning is also called Pre-routing as the Power Network Synthesis (PNS) is done before actual signal routing and clock routing. Power ring is designed around the core. Power rings contains both VDD and VSS rings.  power mesh is nothing but horizontal and vertical lines on the chip.  Objective of power planning is to meet IR drop budget.
  • 48. LEVELS OF POWER DISTRIBUTION 1. Power Rings: Carries VDD and VSs around the chip 2. Power Straps: Carries VDD and VSS from rings across the chip 3. Power Rails: Connect VDD and VSS to the standard cells. 4.Trunks :Connects Ring to Power Pad
  • 49. INPUTS FOR POWER PLANNING 1. Netlist(.v) 2. SDC 3. physical and logical libraries (.lef & .lib) 4. TLU+ 5. UPF 6. Power rings and power straps width.. 7. Power budget. 8. Spacing between the VDD and VSS straps.
  • 50. METAL LAYERS FOR POWER PLANNING M1-Metal layer M8-Metal layer M2 -Metal layer M9 -Metal layer….For power M3 -Metal layer ….For Routing M10 -Metal layer (AP) M4 –Metal layer M11 -Metal layer M5 –Metal layer M12 -Metal layer…..For power Planing M6 –Metal layer M7 -Metal layer…..For signal and clock Routing………Note: Only for Understandings Purpose For Higher metal layers used for to avoid the EM and IR Drop. Electromigration: Movement of molecular transfer of electrons in the metal from one area to another, that caused by high density electric current flows in the metal. It can creates shorts b/w wires IR Drop: Reduction in supply voltage ,that occurs power supply networks in IC,due to increasing current density ,this causes the voltage available at Standard cells to be a lower than the what is desired .
  • 51. IR=IR(V=IR VOLTAGE DROP) There are two types of IR drop • Static IR drop • Dynamic IR drop Static IR drop: Dynamic IR drop : • This drop is independent of cell switching . This drop is calculated with the help of the switching of cells. Methods to improve static IR drop Methods to improve dynamic IR drop 1. We can go for higher layers if available 1.Use de-cap cells 2. Increase the width of the straps. 2. Increase the number of straps 3. Increase the number of wires. 4. Check if any via is missing then add more via.
  • 52. ELECTROMIGRATION Methods to solve EM: 1.Increase the width of wire 2.Buffer insertion 3.Downsize the driver 4.Switch the net to higher metal layers. 5.Adding more vias 6.Keep the wire length short
  • 53. LOW POWER DESIGN Power Dissipations : Static (During stable condition) 1. Leakage current /Sub-threshold current 2. Gate oxide leakage current Dynamic ( During Switching activity) 1. Switching power dissipation 2. Short Circuit (SC) Power Dissipation Low power Design Cells 1. Level shifters 2. power switches 3. Isolation cell 4. Retention registers /cells These are Used in Power Management Techniques
  • 54. POWER MANAGEMENT TECHNIQUES 1.Clock Gating Method: (Place the ICG (integrated clk gate cells )) it makes particular ckt. is active 2.Multi Vth Design: (LVT & HVT cells) 3.Multi voltage Design: (when 2 dffnt. Voltage domains contains in chip we will use Level Shifters) 4.Power Gating Method: It is similar to Clock gating power switches : It makes to always turned on in specific time) Isolation cells: It ll work isolate nets b/w gated domain and always on block ,means it will be clamped either 0 or 1 Retentions cells:If gated domain off state ,system consist of flip-flops we will lose the data we need to retain the data so we will be use this cells
  • 55. OUTPUT OF POWER PLANNING /CHECKS Outputs: 1. Design with power structure. 2. Floorplan with synthesized power mesh. Checks: 1. check_pg_missing_vias 2. check_pg_drc 3. check_pg_connectivity 4. (Report_power) 5. (Analyze_powerplan…) 6. (Check_design –checks pre_placement_stage)
  • 56. PHYSICAL ONLY CELLS These are Typically invented for chip finishing (Tie Cells (these are used for preventing damage of cells) not a pre-placed cells Pre-placed cells 1.EndCap cells (Before placing the standard cells ) These are added to end of the cells rows and around the boundaries (core area,macro,blockages ,voltage area and corner cells) 2.Well tap cells ( To avoid the latch-up: low impedance path gets formed between VDD and GND terminal and there is direct current flow from VDD to GND) To reduce the resistance values tap the N well to VDD and P substrate VSS 3.Decap cells (To avoid the dynamic IR Drop) It will provide instantaneous current to driveres to reduce IR drop 4.Filler Cells (after placement ,to cover the any gab ) We can fill empty space in the standard cells rows and it will provide continuity in the rows for VDD and VSS Nets 5.Spare cells ( after Routing any violations appear. It is reducing time & cost )
  • 57. PLACEMENT  placement is the process of finding the suitable physical location for each standard cell in the design standard cells are placed on placement tracks with automatically at placement stage Steps: 1. Pre Placement 2. Initial Placement / Course Placement / Global Placement 3. Legalization 4. HFNS (High Fanout Net Synthesis) 5. Iteration for Congestion, Timing, DRV, and Power Optimization 6. Timing optimization iterations 7. Scan-Chain Reorder
  • 58. PLACEMENT Goals of Placement: 1. Timing,area,and power optimization 2 . Routable Design 3 . Min.cell density ,pin density (Reduce the congestion due to cells and pins) 4. Minimum timing DRC’s Inputs To Placement Stage: 1. Netlist 2. Mapped and Floor planed Design 3. Logical and Physical Libraries 4. Design Constraints
  • 59. PLACEMENT STAGES 1. Pre Placement: Before starting the actual placement of the standard cells present in the synthesized netlist, we need to place various physical only cells like end-cap cells, well-tap cells, IO buffers, antenna diodes, and spare cells Once the pre Placement stage has been completed, We can start the placement of standard cells but before that, we have to provide all the correct placement and optimization settings that we want to be applied while the tool does the placement and optimization.
  • 60. PLACEMENT STAGES 2.Global placement/Coarse placement: The std cells can be placed into the core region cells are overlapped , cells does not have legalized locations it is rough placement 3 Legalization : The global placement stage, the instances are left with overlap. In this step, the tool will move the instances in nearby places to overcome the overlap. To match the proper power pins like the VDD pin of a standard cell should be on the VDD rail and VSS on VSS rail and for that if the flipping of instance is required tool also do the flipping. This process is called legalization.
  • 61. PLACEMENT 4.( high fan out net synthesis : Initially, there are some nets which have very high numbers of fanout. We have a constraint of maximum fanout, so we need to distribute the sinks on nets to different drivers. The process of adding buffers and splitting the fanout is called high fanout net synthesis (HFNS). So In this step, all high fanout nets get synthesize  The buffering of high fan out nets to balance the load. If you are not balance the load , transition time and delay is more
  • 62. PLACEMENT STAGES 5.Iteration (the repetition of a process):for Congestion, Timing, DRV, and Power Optimization:  In this step tool first, do an early global route and estimate the routing overflow/congestions in the design.  The tool tries to initially minimize the congestion in this stage.  Next, the tool starts the RC extraction to calculate the delay for setup analysis.  The tool tries to minimize the setup WNS(Worst –Ve Slack) and TNS(Total –Ve Sack) in this step.  Similarly, the tool also tries to minimize the DRV and Power in this stage. 6.Timing optimization iterations:  This is a long step in which the tool tries to minimize the WNS and TNS of each path group in various iterations.  There are several iterations required to get a minimum WNS and TNS depending upon the effort set and initial WNS number.  In case the result is not good after this stage,  we can further run incremental optimization for timing. Similarly, for congestion,  we can run congestion repair followed by incremental optimization to get a better result. But these additional steps will increase the run time
  • 63. 7.Scan chain reordering This is nothing but scan-chain reordering.  Scan-chain reordering helps to Reduce congestion and Total wire-length Before After
  • 64. PLACEMENT 1.Placement Can be Done as 1.Timing Driven: Tool tries to place the standard cells along timing critical path close together to reduce net RC and meet setup timing. check: create_placement -timing 2.Congestion Driven: when path for routability, Tool tries to spread the cells where the density of cells are more for the reduction of congestion. Check: create_placement -congestion 3.Power Driven: In a library contains multiple-threshold- voltage cells,  The LVT cells have higher leakage current but better performance.  The HVT cells have lower leakage current but worst performance.  Percentage low threshold voltage optimization tries to find a balance between power and performance goals restricted the use of LVT cells.  During low power placement, the tool tries to minimize the length of high switching nets to improve the power QOR.  During Dynamic power-driven placement, the tool tries to improve both the timing and power of the critical nets and the power QOR without affecting the timing QOR.
  • 65. PLACEMENT BOUNDS It is a constraint , that controls the placement of groups of leaf cells and hierarchical cells. When our timing is critical during placement then we create bounds in that area where two communicating cells are sitting far from another  By using the bounds ,we can place the same group the cells into a bound.  The wire length can be reduced It can be used for avoiding the congestion also. Types of bounds i)Hard bound (In this tool must place the cells in the move bound within a specified region.) ii)Soft bound (In this tool tries to place the cells in the move bound within a specified region, however, there is no guarantee that the cells are placed inside the bounds.) iii)Exclusive bound:(In this tool tries to place the cells in the group bound within a floating region, however, there is no guarantee that the cells are placed inside the bound)
  • 66. OUTPUTS OF PLACEMENT & CHECKS Outputs: 1. Physical Layout Information 2. Cell placement location 3. Physical Layout Timing and Technology information of logical librarys Checks: 1. Check legalization command: Check_legality and report_congestion 2. Check PG connections for all the cells. 3. Check congestion, density screens & pin density maps all these should be under control 4. Timing QOR, there should not be any high WNS violations. 5. Minimum max Tran and max cap violations. 6. Check whether all don’t touch cells & nets are preserved. 7. Check the total utilization of design after placement
  • 67. PLACEMENT STEPS PRACTICAL • Create_placement – will perform coarse placement of std. cells in core area • Legalise_placement – will place std. cells in their appropriate std. cell rows • ‘Place_opt’ – This command will follow through a order of steps and places the std. cells in their respective rows and attempts to legalise them as well as optimising the timing • By default place_opt runs through 5 stages: • 1. initial_place • 2. initial_drc • 3. initial_opto • 4. final_place • 5. final_opto
  • 68. PRE -CTS OPTIMIZATION PLACEMENT OPTIMIZATION Cell Sizing Sized up/ down to meet optimizing for timing and area Up sizing will give timing advantage and Down sizing will give area advantage VT Swapping To optimize for leakage power (HVT, RVT, LVT) Cloning Is to distribute the load , To reduce fan out Buffering Long nets are buffered or remove buffers to bring the timing advantage Logical Restructuring To optimize timing and area without changing the functionality of the design Breaking complex cells into simpler cells or vice versa Pin Swapping
  • 69. PRE CTS OPTIMIZATION Set Non-Default Rule (NDR): Clock nets are very sensitive and impacts timing if it changes a little.  NDRs make the Clock Routes less sensitive to Crosstalk or EM effects  Double/ Triple Width for avoiding Electro migration  Double/ Triple Spacing for avoiding Crosstalk  NDRs will improve Insertion Delay Set the target skew and target latency (Ex: set_clock_tree_options –clocks [get_clocks {clk}] –target_latency 0.450 –target_skew 0.150 Check legality : (check_legality)
  • 70. BEFORE GOING TO CTS CHECKS It should meet the following requirements: The clock source are identified with the create clock or create_generated_clock commands. The placement of standard cells and optimization is done. {NOTE: use check_legality –verbose command to verify that the placement is legalized. If cells are not legalize the qor is not good and it might have long run time during CTS stage} Power ground nets- pre-routed Congestion- acceptable Timing – acceptable Estimated max Tran/cap – no violations High fan-out nets such as scan enable, reset are synthesized with buffers.
  • 71. CLOCK TREE SYNTHESIS (CTS) Clock is not propagated before CTS so after clock tree build in CTS stage we consider hold timings and try to meet all hold violations.. CTS is the process of connecting the clocks to all clock pin of sequential circuits by using inverters/buffers in order to balance the skew and to minimize the insertion delay. All the clock pins are driven by a single clock source. Clock balancing is important for meeting all the design constraints . Effect of CTS: Clock buffers are added congestion may increase non-clock cells may have been moved to less ideal locations can introduce timing and tran/cap violations  before the clock tree is not build CTS structure after clock tree build
  • 72. CLOCK TREE SYNTHESIS (CTS) CTS Quality Checks: Minimize Insertion Delay. Skew Balancing Duty Cycle Pulse Width Clock Tree power consumption Signal Integrity and Crosstalk
  • 73. INPUTS REQUIRED FOR CTS: 1.Placement DB : (Netlist, DEF, LIB, LEF, SDC, UPF ) 2. CTS Spec File: Target latency and skew if specify (SDC) Buffer or inverters for building / balance the clock tree The source of clock and all the sinks where the clock is going to feed (all sink pins). Clock tree DRC (max Tran, max cap, max fan-out, max no. of buffer levels) NDR (Nondefault routing) rules (because clock nets are more prone to cross-talk effect) Routing metal layers info. VIA's information used for clocks
  • 74. CTS TARGET & CTS GOAL: CTS target: • To make Skew Zero. For this we this reason we will need to synthesize the clock tree • To Balance Insertion Delay CTS goal: • Max Tran • Max cap • Max fan-out • A buffer tree is built to balance the loads and minimize skew, there are levels of buffer in the clock tree between the clock source and clock sinks. • To fix the setup and after CTS you should meet all the Hold Violations
  • 75. CLOCK TREE SYNTHESIS (CTS) If clock is divided then separate skew analysis is necessary. Skew: This phenomenon in synchronous circuits. . The Difference in arrival of clock at two consecutive pins of a sequential element.. Global skew: the difference between max insertion delay and the min insertion delay Local skew : Difference in arrival of clock at two consecutive pins of sequential element. it can be positive and negative local skew also Useful skew: If the clock is skewed intentionally to resolve setup violations Positive skew: if the capture clock comes late than the launch clock. Negative skew: if the capture clock comes early than the launch clock. Zero skew: when the capture clock and launch clock arrives at the same time. (ideally, it is not possible)
  • 76. CLOCK TREE SYNTHESIS (CTS) Insertion delay: Time taken to reach clk source to leaf point is called Latency: The delay difference from the clock generation point to the clock endpoints. ON-CHIP CLOCK SOURCE There are two types of latency: Source latency: Source latency is also called insertion delay. The delay from the clock source to the clock definition points. Source latency could represent either on-chip or off-chip latency. Network latency: The delay from the clock definition points (create_clock) to the flip-flop clock pins
  • 77. CLOCK TREE SYNTHESIS (CTS) Advantages of the low Latency:  Less buffer, hence less power consumption. As we know clock paths are the heaviest power dissipated path.  Cell area reduction as less buffer in the clock path.  Less runtime since less buffer need to be inserted in the design, which saves optimization as well Duty Cycle : The on time and off time totally depends upon the rise transition and fall transition. Due to transition differences, duty cycle changes and hence the calculation becomes bad. Practically, rise and fall transition are not same. Pulse Width: If we have variation in rise and fall transition from the input transition of rise and fall, then the threshold (50%) will go worse. Hence the pulse width will decrease. If pulse width decreases, then we might lose data which was about to be captured at some time.
  • 78. CLOCK TREE SYNTHESIS (CTS) Clock Uncertainty: the difference between the arrivals of clocks at registers in one clock domain or between domains. Timing Uncertainty of clock period is set by the command (set_clock_uncertainty ) at the synthesis stage to reserve some part of the clock period for uncertain factors (like skew, jitter, OCV, CROSS TALK, MARGIN or any other pessimism) which will occur in PNR stage Clock uncertainty for setup effectively reduces the available clock period by the specified amount • Pre CTS uncertainty = clock skew + jitter + margin • CTS uncertainty = jitter + margin
  • 79. CLOCK TREE SYNTHESIS (CTS) • Clock Buffers: are designed with some special property like high drive strength and less delay.  Clock buffers have equal rise and fall time. This prevents duty cycle of clock signal from changing when it passes through a chain of clock buffers. Normal buffers: are designed with W/L ratio such that sum of rise time and fall time is minimum. They too are designed for higher drive strength.
  • 80. CLOCK TREE SYNTHESIS (CTS) • Clock Tree Exceptions : Stop Pin: No buffer/inverter insertion beyond this point (Don't touch scenario) Ignore Pin : (Float Pins) No DRV, No Balance Exclude Pin : DRV Fixing but no balancing Through Pin : DRV Fixing as well as Balancing Don’t buffer nets : Don’t size cell :
  • 81. CLOCK TREE SYNTHESIS (CTS) What is Signal Integrity : The nets routed that even nets are at their track but impacted by the noise from other nets. This unwanted element is called Signal Integrity Crosstalk?: Crosstalk is the undesirable electrical interaction between two or more physically adjacent nets due to capacitive cross-coupling. Crosstalk noise: During the transition on aggressor net causes a noise bump or glitch on victim net. This noise is known as crosstalk noise.. Reasons for Crosstalk: .How To fix Crosstalk Issue  Increasing number of metal layers, 1. Double spacing=>more spacing=>less capacitance=>less cross talk  Routing congested Design 2. Multiple vias=>less resistance=>less RC delay  Thin and long metal layer routed 3. Shielding=> constant cross coupling capacitance =>known value of crosstalk  Faster waveform due to higher frequencies- 4. Buffer insertion=>boost the victim strength  Low voltage design
  • 82. CTS(CLOCK TREE SYNTHESIS Types of Clock Trees: 1. 1. H-Tree 2. Balanced Fanout Clock Tree 3. Binary Clock Tree 4. Mesh tree 5. Fish-bone tree 2. Balanced Fanout TREE 3. Binary Clock Tree 4. X- tree 6. X-tree
  • 83. Outputs: Database with properly build clock tree in the design Checks: 1)report_timing -delay_type min 2)report_timing -delay_type max 3)report_clock -skew Clock tree synthesis is performed using command clock_opt. Here clock tree is built keeping in mind skew and hold time . Clock_opt undergoes 3 stages by default i.e 1. build_clock 2. route_clock 3. final_opto
  • 84. ROUTING Before going to routing we need to check 1.Target skew ,Target Latency should be met in CTS stage 2.We Should check Setup and Hold Violations met or not 3.DRV (Design Rule Violations) 4.No of Clock buffers and Inverters added should be in control
  • 85. ROUTING • Routing: creating physical connection to all logical connection present in the design with the help of metal layers is known as routing Objectives  minimize the total wire length  minimize the vias  Routed paths must meet setup and hold timing margin  minimizing the congestion hotspots.  Complete the connections with out increasing the total area of the block.  Reduction in cross talk noise.  meeting the timing DRC’s and obtaining a good timing QOR  minimize the critical path delay
  • 86. ROUTING CONSTRAINTS setting the maximum length for the routing wires Blocking routing in specific regions set straighten guidelines for minimum width and minimum spacing. set preferred routing directions to specific metal layers during routing constraining the routing density
  • 87. ROUTING FLOW 1.Global routing Does not consider DRC rules ,which gives an overall view of routing and congested nets. Assign layers to the nets Avoid congested areas and long detours. Avoid routing for Blockages Avoid routing for pre route nets. such as Rings/stripes/Rails Identify and assign the net segments over the specific routable window called Global route cell(GRC).
  • 88. ROUTING FLOW 2)Track Assignment Assign tracks both Horizontal and vertical direction It does not follow the physical DRC rules. It will do the timing aware Track assignment. It helps in via minimization. 3)Detail Routing It performs the complete DRC aware and timing driven routing. It is the final routing. Detail routing is done after analyze the cause for congestion in the design
  • 89. TIMING ANALYSIS: Timing analysis is necessary to calculate the design’s system performance, describes the chips specification. Types of timing analysis: Static timing analysis (STA) and Dynamic timing analysis 1.Dynamic timing analysis (DTA) (Gate level Simulation): A series of vectors over a time are applied during a simulation run, simulation calculates the logic value and delays over that time. So, in that manner we check the design’s functiality with time. on
  • 90. TIMING ANALYSIS: 2.Static Timing Analysis: Static timing analysis is a method of validating the timing performance of a design by checking all possible paths for timing violations under worst-case conditions. . So, it validates the design for desired frequency of operation, without checking the functionality of the design
  • 91. STA COMPARISON DTA Dynamic timing 1. Requires exhaust set of vectors 2. Checks for both functional and timing problems 3. Requires more resources (like run time, CPU memory, etc.) 4. Can work with any type of Logic either synchronous or asynchronous 5. Slower as compared to STA. 6. Easy to learn and all corners cases are not covered Static timing 1. Doesn't requires any set of vectors. 2. Checks for timing only. 3. Requires fewer resources than DTA. 4. Restricted to synchronous part of the design only. 5. Faster as compared to DTA. 6. Difficult to learn
  • 92. STA( STATIC TIMING ANALYSIS) What is STA ?: Static timing analysis is one. of the techniques used to verify the timing of a digital design. Why Static timing Analysis? 1. To analyze the timing relationships of a given circuit to verify that the circuit works at the specified frequency (verification). 2. You can’t achieve the clock speed without it. 3. All paths are assumed critical. 4. Process variation across die can be modeled. 5. Constraints and reports are concise and easy to interpret. 6. It can detect other serious problems like glitches, slow paths and clock
  • 93. INPUT AND OUTPUT FILES OF STA : INPUTS: Netlist (.v): The gate level netlist, having circuit description. Constraints (.sdc): Synopsys Design Constraint file. It contains all the timing related information about the design. Includes the Clock definition (Created clock, generated clock, Virtual clock), Uncertainty (Jitter, Skew, Extra margin), IO Delays, False paths, Multi-cycle paths, Max trans, Max fanout, Max cap, Fanout load. SDF (.sdf): Standard Delay Format File containing back-annotated delays. OR Standard Parasitic Exchange Format (.spef): These are the parasitic of the design extracted from physical design tools. Liberty File (.lib): The delay model of every cell in the library. OUTPUTS Reports: Different timing paths reports, which can be used for debugging.
  • 94. STATIC TIMING ANALYSIS STA involves three main steps: 1. Break the design into sets of timing paths 2. Calculate the delay of each path 3. Path delays are checked to see if timing constraints have been met. But first some Basic STA concepts: Timing Paths: Each path has a start point and an endpoint Start points: Input ports (A, Q) Clock pins of sequential devices (CLk) Endpoints: Output ports (D, Z) Data input pins of sequential devices (D) by sing these points we can identify the Path
  • 95. STATIC TIMING ANALYSIS 1. STA TOOL Break the design into sets of timing paths 2.Calculate the propagation Delay along with each path 3.Check for timing violations (depending on the constraints eg: clock) on different paths and also inputs /outputs interface. Timing paths: 1.Data path, 2.Clock Path, 3.Clock Gating path. 4.Asynchronous path. 5.Critical path 6.Short path
  • 96. STATIC TIMING ANALYSIS 1.Data path: We have 4 data paths 1.In to Reg ( Start Point (i/p), End Point (D1 ff ) 2.Reg to Reg (start point ( D1 ff of clk) , end point (D2 ff 3.Reg to Out (start point (d2 ff of clk) , end point (o/p 1) 4.In to Out (start point ( input ) ,end point (output2) By using these points we can analyze It timing reports
  • 97. STATIC TIMING ANALYSIS 2.Clock Path: It is generated from PLL (Phased Lock Loop) In b/w start and end points there may be lot of buffers and inverters 3.Clock Gating Path: This is used in may synchronous ckts For Reducing the dynamic power dissipation
  • 98. STATIC TIMING ANALYSIS 4. Asynchronous Path: 1. A path from an input port to an asynchronous set or clear pin of a sequential element 2. We know that the functionality of set/reset pin is independent from the clock. 3. Its level triggered pins and can start functioning at any time of data. We can say that this path is not in synchronous with the rest of the circuit and so such type of path is called Asynchronous path.
  • 99. STATIC TIMING ANALYSIS  In a STA ,the entire chip we are dividing into 4 paths because ,analyze better way and we can debug it easily Suppose we have any violations internally in those paths(In to reg ,reg to reg ,reg to out and In to out) ,we can fix and close the block. By using Setup and Hold Timing Violations: Some basic Definitions: 1. Clock: Is a signal that oscillates between high and low logic. Clock controls timing in the design there can be multiple clocks in the design. 2. Setup Time: the amount of time the Synchronous input (D) data must be stable before the active edge of the Clock. 3. Hold Time :The amount of time the synchronous input (D) data must be stable after the active edge of clock. 4. Slack : The difference between arrival time and required time is called slack
  • 100. STATIC TIMING ANALYSIS Clock skews (timing skew): Clock signal in synchronous circuits ,arrives at different components(generally latches or FFs) at different times.
  • 101. STATIC TIMING ANALYSIS 1. Launch Path Launch path is launch clock path which is responsible for launching the data at launch flip flop 2. Capture Path Capture path is capture clock path which is responsible for capturing the data at capture flip flop 3. Arrival Time Launch path and data path together constitute arrival time of data at the input of capture flip-flop 4. Required Time Capture clock period and its path delay together constitute required time of data at the input of capture flop
  • 102. STATIC TIMING ANALYSIS 1. Positive Slack indicates that the design is meeting the timing and still it can be improved. 2. Zero slack means that the design is critically working at the desired frequency. 3. Negative slack means , design has not achieved the specified timings at the specified frequency. 4. Slack has to be positive always and negative slack in
  • 103. STATIC TIMING ANALYSIS There are 3 basic paths where the Set-up/Hold violations may occur: inputs-to-register path -- actually if there is any violation in this path then first you have to see the "set_input_delay" setting. By changing the value you can fix this path. setup and hold can be fixed by constraining input delay and clock period register-to-outputs path -- same with this case.. yo can do concentrate on set_output_delay setting. So basically these 2 can be managed by timing budgetting of a particular block. if you want to fix these inside the block, you can also use buffer/delay inside the block, else add these delay and all outside the block. And for the block the effective value of the delay changes and that can be fixed by setting different value of set_input_delay/set_out_put delay. register-to-register path .. all the general ways like delay insertion/swapping/resizing ..etc will be the part for this path in case there is any violation.
  • 104. STATIC TIMING ANALYSIS • Setup Slack: Required time > Arrival time [RT-AT] Setup Equation: [Tlaunch+Tck2q+Tpd]<[Tcap+Tclk-Tsetup] • Reasons for violations : Capture clock comes early than launch clock, Because of high delay in the data path or When data and clock are routed in opposite direction then it is negative skew. To Fix The Setup Violations: 1 Reduce the amount of delay in data path, this can be done by reducing the necessary buffers 2.VT swapping, means you swap HVT cell with SVT or LVT cells [size_cell instancename(present cell) referencename(replacing cell] 3. Buffering: Use of two inverters in place of buffer ,if a cell is driving an exceptionally long net. considering that the driver cell already has good driving strength, buffering helps to split the net which in turn reduces the total capacitance. Hence the data path delay will be reduced, and arrival time reduces. [ insert_buffer netname referencename (buffer)] 4. Readjusting the position of cells
  • 105. STATIC TIMING ANALYSIS 5.Skewing: Positive skew is good for setup and negative skew is good for hold 6. Gate Sizing: Upsizing cell If a low driving strength cell is driving a higher load, it results in higher cell delay. To fix this, one can upsize the cell which will reduce cell delay and helps to meet the setup time. 3. How upsize will help for fixing the setup violations? Upsizing means increasing the drive strength, if drive strength increases the width of the gate increases, if width increases the resistance reduces, as resistance and delay are directly proportional to each other if resistance reduces the delay also reduces in this way upsizing will help in fixing setp violations. 7. Cloning: Cloning refers to creating the same driver cell with the same functionality and giving it the same inputs as the original cell. If gate sizing and buffering are not possible, then cloning can be helpful as this will split the load between the original cell and the newly cloned cell
  • 106. STATIC TIMING ANALYSIS Hold Slack check= Required time < Arrival time [AT-RT] Hold Equation : :[Tlaunch+Tck2q+Tpd]>[Tcap+Thold] Reasons for Hold Violations : If capture clock comes late than launch clock then it is called +ve skew If data comes early or due to positive skew. When data and clock are routed in same direction then it is Positive skew. It is possible to have a flip flop with 0 hold time or negative hold time. For example, if the hold time is -3 ns then it complies that we should not have any change in the input data before 3ns of the clock event trigger Minimum Time Period (T minimum) or Maximum clock operating frequency (F maximum) 1. To decide the speed of a chip design clock cycle frequency is the main parameter. 2. We all want a high-speed chip or processor which means the clock frequency must be as high as possible. 3. But we also know that clock frequency is inversely proportional to clock time period. So here we will have to constrain on the minimum time period to be decided.
  • 107. STATIC TIMING ANALYSIS • To Fix Hold Time Violations: 1. Vt swapping from LVT to HVT cell 2. Pushing the launch clock CLOCK PUSH –INSERT_BUFFER 3. Pulling the capture clock CLOCK PULL –REMOVE BUFFER 4. Inserting Buffer at D pin 5. Metal width decreases 6. Net deteriorate 7. Using spare cells after BTO (Base Tape Out) 8. Inserting metal buff's after BTO 9. Voltage can be reduced. 10. Downsizing the cell 11 Skewing: • Either we can late skew i.e. increase the clock network delay of launch flop making data to launch late or we can early skew i.e. reduce the clock network delay of capture flop so that data will be reaching faster at the endpoint.
  • 108. STATIC TIMING ANALYSIS • Hold time constraint • Thold_time <= Tclock_Q + delay The hold time must be less than or equals to the sum of the clock to Q delay and other delays such as clock jitter • Setup time constraint Tsetup_time + Tclock_Q + delay <= Tminimum • Which says the overall sum of flop setup time and clock to Q delay and other delays such as jitter must be less than or equals to the minimum clock time period. • Note: • If a situation comes to have a choice between setup violation fix and hold violation fix after the chip design is completed and fabricated, then it is a better option to chose hold violation fix. • The reason is to fix the setup time violation we need to modify Tminimum. • As we saw above setup time constraint involves clock time period parameter which decides the overall chip speed which cannot be modified after the chip come from the foundry.
  • 109. STATIC TIMING ANALYSIS Delays Time taken by a signal to propagate through a Cell or Net 1. Gate Delay/Propagation Delay Amount of delay from the input to the output of a logic gate. It is calculated based on 2 parameters. Input Transition Time Output Load Capacitance 2. Net Delay: Amount of delay from the output of a gate to the input of the next gate in a timing path. It depends on the following parameters. Parasitic Capacitance. Resistance of net Insertion Delay : The delay between the clock root pin and clock sink pin of the flip flop
  • 110. STATIC TIMING ANALYSIS Jitter: Jitter is the variation of the clock period from edge to edge. It can vary +/- jitter value. OR Variation in period from clock source (PLL) Critical Path • The path which creates longest delay • Also called worst path/ late path/ max. path Shortest Path • One that takes the shortest time; this is also called the best path or early path or a min path
  • 111. STATIC TIMING ANALYSIS Timing Exceptions: Timing exceptions are nothing but constraints. Single Cycle Path  Timing path that is designed to take only one clock cycle for the data to propagate from the start point to the endpoint  Start point and endpoint are flops clocked by the same clock  By default tool will consider all timing paths as single cycle paths Multi-Cycle Path  Timing path that is designed to take more than one clock cycle for the data to propagate from the start point to the endpoint  Start point and endpoint are flops clocked by the same clock This is usually a large combinational block between two registers. Half Cycle Path  Timing path that is designed to take half clock cycle (both of the clock edges) for the data to propagate from the start point to the endpoint  Start point and endpoint are flops clocked by the same clock( hold edge of capture flop can be earlier than the hold edge of launch flop) False Path  Physically exist in the design but are Logically/ Functionally inactive/ incorrect path  Means no data is transferred from Start Point to End Point
  • 112. STATIC TIMING ANALYSIS Recovery and Removal Time: • These are timing checks for asynchronous signals similar to the setup and hold checks • Recovery time: Recovery time is the minimum amount of time required between the release of an asynchronous signal from the active state to the next active clock edge. • Removal time: Removal time specifies the minimum amount of time between an active clock edge and the release of an asynchronous control signal.
  • 113. Design Rule violations (DRV’s Maximum Transition Time (Max Tran) 1. Time required by a pin to change logic values ( 0 to1 or 1to 0) is called Transition time 2. the longest time required by a pin to change logic values is called Maximum Transition time. 3. Due to this , large dynamic power dissipation can happen. 4. To reduce the maximum transition time by adding buffers on the net fixes: 1)replace hvt to lvt 2)replace net length by adding buffers 3)increase driver size
  • 114. STATIC TIMING ANALYSIS Design Rule violations (DRV’s Maximum capacitance (Max Cap.) 1. It is the capacitive load on output pin can drive. 2. the output pin of cell can drive the inter connect capacitance of net and input capacitance of cell. 3. If large capacitance load is there , it will take more time to charge or discharge. 4. to avoid this ,high drive strength cells are used , then it can drive the more load capacitance. fixes: 1)upsize driver cell 2)adding buffer in mid of long route
  • 115. STATIC TIMING ANALYSIS • Maximum fan out (Max Fanout) 1. output can drive other inputs without any degradation 2. If load increases ,current will be degraded 3. cloning and load splitting can be used to reduce the fanout fixes: 1. Reduce fanout by load splitting by buffering 2. Cloning :Cloning is a good method to distribute the load and to improve the signal strength.
  • 116. STATIC TIMING ANALYSIS • Min pulse width violation: 1. If we have variation in rise and fall transition from the input transition of rise and fall, then the threshold (50%) will go worse. Hence the pulse width will decrease. 2. If pulse width decreases, then we might lose data which was about to be captured at some time.
  • 117. STATIC TIMING ANALYSIS Virtual clock: 1.Virtual clock as the name suggests doesn't exist physically in the design at all, its just used for the specifying the input / output delay values ( if no clock is existing ) 2. Virtual clock can be created same as Create_clock, except that the port/pin name must not be specified ! incase if u have a purely combination path and if u want to specify a set_input_delay or set_output_delay for that path, then the virtual clock is used
  • 118. STATIC TIMING ANALYSIS • Signal Integrity :Signal Integrity is the ability of an electrical signal to carry information reliably And TO resist the effects of high-frequency electromagnetic interference from nearby signals. Effects: CrossTalk, EM, Antennae Effects. CrossTalk: Crosstalk is the undesirable electrical interaction between two or more physical adjacent nets due to cross coupling capacitance or The switching activity in aggressor net overlaps (or) going to affect the victim net . Crosstalk can lead to crosstalk-induced delay changes or static noise. • There are two types of crosstalk: 1) crosstalk noise 2) crosstalk delay Glitch- A glitch is a short-lived fault in a system. An electrical pulse of short duration that is usually the result of a fault or design error, particularly in a digital circuit
  • 119. STATIC TIMING ANALYSIS Crosstalk noise: If one net is switching & another neighbouring net is at constant logic. If they have mutual capacitance between them, other net may be affected & that net may have a sudden raising or falling bump or spike. such a spike on victim net is called crosstalk noise/glitch
  • 120. STATIC TIMING ANALYSIS Crosstalk Delay: It occurs ,when both aggressor & victim nets switching together. which may violate setup time/hold time violations How timing will effect with crosstalk delay? 1.When both the nets are switching in the same direction due to crosstalk the delay reduced in the victim due to this we get hold violations in data path and setup violations in clock path. 2. When both the nets are switching in the opposite direction due to crosstalk the delay increases in the victim due to this we get setup violations in the data path and hold violations in clock path
  • 121. STATIC TIMING ANALYSIS • PVT: PVT is abbreviation for process, Voltage and Temperature. In order to make our chip to work in all possible conditions, • Process: • Process variation is the deviation in attributes of transistor during the fabrication. Process variation is gradual . It can not be abrupt. Process variation is different for different technologies but is more dominant in lower node technologies (<65nm). Below are few important factors which can cause process variation; 1. Wavelength of the UV light 2. Manufacturing defects The affects of process variation are listed below; 1. Oxide thickness variation 2. Dopant and mobility fluctuation 3. Transistor width, length etc. 4. RC Variation
  • 122. STATIC TIMING ANALYSIS These variations will cause the parameters like threshold voltage to change its value from expected. Threshold voltage depends on oxide thickness, source-to-body voltage and implant impurities. Consider the drain current equation for NMOS; ID = (1/2)μnCox (W/L)(VGS – VTh)2 As we are talking about process variation, it deals with physical properties of MOSFET. So, current flowing through the channel directly depends upon mobility (μn), oxide capacitance Cox (and hence thickness of oxide i.e. tox) and ratio of width to length. Any of these parameters change, it will result in changing the current. In other words, it will affect the delay of the circuit. Delay decreases with increase in current.
  • 123. STATIC TIMING ANALYSIS Voltage: There are multiple reasons for voltage variation. These are discussed below. The important reason for supply voltage fluctuations is IR drop. IR drop is caused by the current flow over the parasitic resistance of the power grid. IR drop reduces the supply voltage from the required value. The second important reason for voltage variation is supply noise caused by parasitic inductance in combination with resistance and capacitance. The current through parasitic inductance causes the voltage bounce. Both these effects together can not only lead to voltage drops but also voltage overshoot. Supply voltage that any chip works on is given externally. It can come from DC source or some voltage regulator. Voltage regulator will not give same voltage over a period of time. It can go above or below the expected voltage and hence it will cause current to change making the circuit slower or faster than earlier.
  • 124. STATIC TIMING ANALYSIS Temperature: The temperature variation is with respect to junction and not ambient temperature. The temperature at the junction inside the chip can vary within a big range and that’s why temperature variation need to be considered. Figure 3 shows the variation of delay with respect to temperature. Delay of a cell increases with increase in temperature. But this is not true for all technology nodes. For deep sub-micron technologies this behavior is contrary. This phenomenon is called as temperature inversion. The delay depends on the output capacitance and ID current (directly proportional to Cout and inversely proportional to ID). When the temperature increases, delay also increases (due to the variation in carrier concentration and mobility). But when temperature decreases, delay variation shows different characteristics for submicron technologies. For technology nodes below 65nm, the delay will increase with decrease in temperature and it will be maximum at -40°C. This phenomena is known as “temperature inversion”.
  • 125. STATIC TIMING ANALYSIS Why Temperature inversion happens? As temperature increases, mobility and threshold voltage start decreasing. The delay is inversely proportional to the mobility and directly proportional to the threshold voltage. So the resultant effect from both mobility and threshold voltage decides the value of delay. Consider the current equation of a MOSFET for better understanding; ID = (1/2)μnCox (W/L)(VGS – VTh)2 In the higher technology node, where the supply voltage is very high, the effect of VTh is very low as (VGS – VTh) value is large. Hence mobility plays major role in deciding current. So at higher technology nodes, when the temperature increases mobility decreases and as a result the delay will increase. At the lower technology node (specifically, less than 65nm), the supply voltage is very low, so the (VGS – VTh) difference is small and the square of this value is very small resulting reduced ID current, which increases delay at lower temperature. Where at other end above 65nm delay decreases at lower temperature.
  • 126. STATIC TIMING ANALYSIS RC Variation: RC variation is also considered as corners for the setup and hold checks. RC variation can happen because of fabrication process and the width of metal layer can vary from the desired one Critical corners for Setup and Hold check We always check our chip to work in worst scenarios. We should be very pessimistic about setup and hold checks. So consider worst case scenarios. Setup violation can be caused if data is coming very slow. So the condition when process is slow, voltage is minimum and temperature is maximum is the worst case for setup check. Also because of temperature inversion at lower technology node, delay will increase as temperature decrease. Hence lowest temperature results in more delay. It is not compulsory that the delay at lowest temperature is always less than delay at highest temperature. Hold violation is caused if data comes faster. So process should be faster, voltage should be maximum and temperature should be minimum. Now if setup and hold are checked in worst corners, then the chip should work in every scenario. Still we check them in typical corners because we need to analyze power consumption. Refer following table for the worst case scenarios for setup and hold.
  • 127. STATIC TIMING ANALYSIS OCV,AOC AND POCV 1. During fabrication the chips on the same die may suffer from variations due to process, voltage or temperature change, thus transistors can be faster or slower in different dies. 2. To compensate the variation, static timing analysis(STA) introduces a concept called On Chip Variation(OCV). 3. During design time, extra timing margins are added in timing analysis. 4. OCV has been evolved to Advanced On Chip Variation(AOCV), or even Parametric On Chip Variation(POCV). 5. On Chip Variation(OCV): This concept is related to fabrication process, these variation related to fabrication steps first is Etching and second is oxide thickness. There are two types of variation: Global Variation: These variations are die to die or inter-chip variation. They depend on Pressure, voltage and temperature. Local Variation: These variation are intra-chip variations and local variation are taken by derates, timing derates are multiplied by cell delays and wire delays to account OCV.
  • 128. STATIC TIMING ANALYSIS Etching: Etching is one of the sources of variation, which is used the define the structure of a transistor. In practical case the width and length of transistor is different from the expected W and L ratio. The small change for one transistor will result in big impact on chain of billion of transistor From the above figure we observe that ideal case is different from practical case.Let us take W and L in Ideal case . lt is different from W and L in actual case. Now we will see how this small change in W/L ratio affect the cell delay As we know the formula of Drain current
  • 129. STATIC TIMING ANALYSIS As we know the formula of Drain current Drain current (ld) = u Cox (W/L) [(Vgs-Vth)Vds-(1/2)VdsA2] Where u is mobility of charge carriers,Cox is capacitance per unit area, W is width of channel,L is channel length, Vgs is gate to source voltage, Vth is threshold voltage and Vds is drain to source voltage. We can observe from drain current equation Id is directly proportional to (W/L), when we think of a capacitor at the output of an inverter then capacitor charging depends on the amount of current that is flowing it. If drain current changes the amount of time taken by capacitor definitely. If drain current (ld) is high then capacitor takes less amount of time to charge and hence delay is minimum. If drain current (ld) is low then capacitor takes huge amount of time to charge and hence delay is maximum . Hence we can say that delay decrease with increase in current and vice versa.
  • 130. STATIC TIMING ANALYSIS Oxide thickness: Oxide thickness is another source of variation, In practical case the oxide thickness is not uniform along the channel. We know the drain current equation, Drain current (ld) = uCox(W/L)I(Vgs-Vth)Vds-(1/2)Vds^2]. where Cox=Eox/tox , ld is inversely proportional to tox. If the value of tox changes the value of drain current is also changes. Now we will see how delay of cell is related to W/L and tox from formula point of view, we know that delay of a cell depends on resistance(R) and capacitance(C)and from ohm's law resistance varies as current changes. Delay (tpd)=function(R,C)=f(ld)=f(tox,W,L)
  • 131. STATIC TIMING ANALYSIS As a result of OCV, some cells may be fast or slow than expected. If these variations are not accounted, results maybe pessimistic and can lead to setup or hold violations. In order to model these, we introduce derates. Timing derates are multiplied with the net delay and cell delay for the launch and capture clock paths.
  • 132. STATIC TIMING ANALYSIS How to calculate timing slack using OCV: Setup Analysis: While calculating the setup analysis we need to take late derate along the launch path and early derate along the capture path. Arrival Time: Arrival time includes addition of cell and wire delays along the launch path. Arrival Time(AT) = [wire1 delay late derate + clk to q *late derate + wire2 delay late derate inverter delay latederate+wire3 delay late derate.] Arrival Time(AT) =[ 0.1*1.1 +0.2*1.1+0.2*1.1+ 3*1.1 +0.4*1.1] Arrival Time(AT) = 4.29 ns Required Time: Required Time(RT) = [Tclk-Tsetup+ [Twire delays'early derate+ Tcell delays'early derate] RT [2-0.2+[0.3 0.9+2'0.9+0.4 0.9] Required Time(RT) = 4.23 ns Setup Slack RT-AT=4.23-4.29= -0.06 ns (-ve slack).Negative slack indicates setup violation
  • 133. STATIC TIMING ANALYSIS Hold Analysis: While calculating the hold analysis we need to take early derate along the launch path and late derate along the capture path. Arrival Time(AT) = wire1 delay early derate +clk to q early derate + wire2 delay early derate + inverter delay early derate + wire3 delay *early derate. Arrival Time(AT) = 0.1*0.9 +0.2*0.9 + 0.2*0.9 +3*0.9 0.4*0.9 3.51 ns Required Time: Required Time(RT) = T hold +Twire delays late derate+ T cell delays late derate Required Time(RT) = 0.1+0.3*1.1+2*1.1 +0.4*1.1 3.07 ns Hold Slack = AT-RT=3.51-3.07 0.44 ns(+ve slack) which shows hold condition is met
  • 134. STATIC TIMING ANALYSIS Without ocv setup Analysis: Arrival Time: Arrival Time(AT) = wire1 + clk toq+ inv delay +wire3 Arrival Time(AT) = 0.1+0.2+0.2+3+0.4 3.9 ns Required Time: Required Time(RT) = Tclk-Tsetup + Twire delays + T cell delays Required Time(RT) 2-0.2+0.3+2+0.4 = 4.5 ns Setup Slack = RT-AT = 4.5-3.9 0.6 ns(+ve slack) which shows setup condition is met. Hold Analysis: Arrival Time: Arrival Time(AT) = wire1 + clk to q + inv delay + wire3 Arrival Time(AT) = 0.1+0.2+0.2+3+0.4 3.9 ns Required Time: Required Time(RT) = Thold + Twire delays + T cell delays Required Time(RT) =0.1+0.3+2+0.4 2.8 nsHold Slack = AT-RT = 3.9-2.8 = 1.1 ns(+ve slack) which shows hold condition is met. From above two cases we conclude that we should always consider the derates and apply them to avoid timing violations.
  • 135. STATIC TIMING ANALYSIS Advanced On chip Variation(AOCV): In case of OCV constant derates are applied across the timing path. But in AOCV we multiply cell and wire delays with different derate factors depending on the distance and depth. AOCV is represented by a two dimensional table: the derate value of a cell is determined by logic depth and distance. For smaller path depths OCV gives optimistic results when compared to AOCV. For larger path depths OCV tends to be more pessimistic than AOCV(AOCV gives accurate values) Parametric On Chip Variation(POCV): Below 1Onm technologies AOCV cannot reduce pessimism hence to reduce the pessimism at lower technology nodes POCV was introduced. Here cell delay is calculated based on delay variation of cell, delay variation denoted by sigma and delay is denoted by u. POCV models a cell delay using Gaussian distribution directly, instead of adding a derate value. Cell delay is calculated from a parameter, which is extracted from either library, or POCV table. Pocv-here the derates will be based up on the cell type and the special distance.
  • 136. STATIC TIMING ANALYSIS Different Modes Function Mode Scan Mode Slowm40 Fastm40 Slow125 Fast125 Fastm40 Fast125 Corners Slowm40…….(.lib+RC techfile Cmax Slow125 Fastm40…….(.lib+RC techfile(Cmin|) Fast125
  • 137. STATIC TIMING ANALYSIS Timing eco flow fixing order:
  • 138. ORDER OF ECO FIXING STEPS 1. Before you attempt ECO fixing, ensure that the design is fully placed and routed, with generated clock trees, and use physically aware ECO to ensure the best quality of results. 2. The Prime Time ECO commands and command option let the ECO fixing goals. 3. Setup or hold fixing does not degrade DRC (max_capacitance and max_transition) violations, 4. but DRC fixing can degrade setup or hold violations because DRC fixing has the highest priority. 5. Also, hold fixing preserves setup slack, but setup fixing is allowed to introduce some hold violations, because setup is a harder problem to fix. Therefore, 6. it is a good idea to fix DRC violations first, then setup violations, and finally hold violations
  • 139. ECO FLOW In the Primetime tool, an engineering change order (ECO) is an incremental change in a chip design to reduce design rule constraint (DRC) violations, timing violations, or power. The Primetime tool finds these design issues and corrects them by sizing cells, replacing cells, or inserting buffers, and it writes out the changes in script format so that you can implement the changes in other tools. The commands to perform ECO fixing are: 1. fix_eco_drc 2. fix_eco_timing 3. fix_eco_power After ECO fixing is complete, to implement the changes, use the write_changes command to write out the changes, and run the script in the IC Compiler or IC Compiler II tool. After the changes are implemented, you should perform parasitic extraction and run timing analysis again in the Primetime tool.
  • 140. SETTING THE ECO OPTIONS • Before you run any ECO fixing commands, follow these steps to set the ECO options: 1. Import the design into Primetime by reading the Verilog, SDC, and parasitic data files. 2. Set the timing_save_pin_arrival_and_slack variable to true. 3. Perform a full timing update (update_timing or report_timing). 4. Set the ECO variables that are relevant for your design or analysis conditions
  • 141. ORDER OF ECO FIXING STEPS Steps Commands Fixing Step1: Power recovery fix_eco_powe Fixing mechanisms Cell sizing, buffer removal Does not introduce new timing or DRC violations Step 2: Fix DRC and noise violations fix_eco_drc Fixing mechanisms Buffer insertion, cell sizing Alters setup and hold slacks as needed Step 3: Fix timing violations fix_eco_timing Fixing mechanisms Buffer insertion, cell sizing Setup fixing honors DRC and alters hold slack if needed; hold fixing honors setup slack and DRC Step 4: Final leakage recovery fix_eco_power Fixing mechanisms Threshold voltage swapping Does not introduce new timing or DRC violations; does not change layout
  • 142. STATIC TIMING ANALYSIS • Bottleneck: • NAME report_si_bottleneck: Identify the crosstalk bottlenecks in the design. This is useful when the major sources of violations come from crosstalk effects. SYNTAX int report_si_bottleneck -cost_type type Removing common clock buffer delay between launch path and capture path is CPPR. (common path pessimism removal)
  • 143. CPPR (CLOCK RE-CONVERGENCE PESSIMISM REMOVAL ) 1. The delay difference along the common paths of the launching and capturing clock paths is called CRPR. 2. This common path delays are multiplied with different derates (early and late), resulting in different delays. 3. These cells have max delay in launch path and min delay in capture path. 4. The same cell cannot have different delays at the same time. 5. This results in additional pessimism which has to be removed. Here comes the need for Clock Re-convergence Pessimism Removal (CRPR) or Common Path Pessimism Removal (CPPR). 6. This pessimism value is the difference between the max and min delay at the common clock path. 7. To reduce pessimism, CRPR is added to required time in setup analysis and subtracted from required time in hold analysis. 8. CRPR = Max. value - min. value 9. In the CRPR process we are removing the derating to common buffer. 10. it is clear that with the CRPR method both setup and hold are benefited 11. some commands related to CRPR: pt_shell> set_operating_conditions -analysis_type on_chip_variation -min MIN -max MAX set timing_remove_clock_reconvergence_pessimism TRUE
  • 144. PT SHELL FLOW 1. Starting from an RTL design. 2. The Design Compiler tool generates a gate-level design. 3. From the gate-level netlist and physical library information, the physical implementation tool (IC Compiler or IC Compiler II) performs placement and routing. 4. The Star RC parasitic extraction tool extracts the parasitic RC data from the chip layout database. 5. The Prime Time tool reads the gate-level netlist and parasitic data, and verifies the design timing using information provided in the logic (.db) library. 6. If the tool finds any violations, it can generate engineering change orders (ECOs) that guide the physical implementation tool to fix the violations and optimize power.
  • 145. PT SHELL Compatibility With Galaxy Implementation Tools The Prime Time static timing analysis tool is designed to work well with the Design Compiler synthesis tool and the IC Compiler II place-and-route tool. These tools are compatible in the following ways: 1. They use the same logic libraries and read the same design data files. 2. They support the Synopsys Design Constraints (SDC) format for specifying design constraints, including the timing and area constraints. 3. They share many commands (such as create_clock, set_input_delay, and report_timing) that are identical or similar in operation. 4. They share the same delay calculation algorithms and produce similar delay results. 5. They generate similar timing reports. 6. Prime Time can provide engineering change order (ECO) guidance to IC Compiler II by generating change lists that fix timing violations and optimize power. Although the Design Compiler and IC Compiler II tools have their own built-in static timing analysis capabilities The Prime Time tool has better speed, accuracy, capacity, and flexibility for static timing analysis.
  • 146. PT_SHELL COMMANDS Getting Help on the Command Line To get help when running the Prime Time tool, use the following resources: • Command help ❍ To list all Primetime commands, organized by command group, enter pt_shell> help ❍ To show a brief description of a command, enter pt_shell> help command_name ❍ To show all options and arguments for a command, enter pt_shell> help -verbose command_name • Man pages To display the man page of a command, variable, or message, enter pt_shell> man command_variable_or_message_nam
  • 149. PT_SHELL COMMANDS command fixes setup violations throughout the design: pt_shell> fix_eco_timing -type setup The following command fixes hold violations throughout the design using both cell sizing and buffer insertion, and using exhaustive path-based analysis for reduced timing pessimism: pt_shell> fix_eco_timing -type hold -pba_mode exhaustive -buffer_list {BUFX2 DLY1X2 DLY2X2
  • 150. STATIC TIMING ANALYSIS STA Checks: 1 Setup and Hold Violations 2.Recovery and Removal Timings 3.Mean Pulse width Violations 4.Design Rule Violations
  • 151. PHYSICAL VERIFICATION Physical Verification : It is a process whereby an integrated ckt layout design is verified via EDA software tools to ensure correct electrical and logical functionality EDA electronic design automation tool such a ic validator from synopsis an caliber tool by mentor graphics After routing your pnr tool should give you zero drc/lvs violations The major checks are 1.DRC 2.LVS 3 ERC
  • 152. PHYSICAL VERIFICATION Design Rule Check (DRC) Design Rule Check (DRC) is the process of checking physical layout data against fabrication-specific rules specified by the foundry to ensure successful fabrication. Process specific design rules must be followed when drawing layouts to avoid any manufacturing defects during the fabrication of an IC. Process design rules are the minimum allowable drawing dimensions which affects the X and Y dimensions of layout and not the depth/vertical dimensions. As Technology Shrinks Number of Design Rules are increasing Corsplexity of Routing Rules is increasing Increasing the number of objects involved More Design Rules depending on Width, Halo, Parallel Length
  • 153. PHYSICAL VERIFICATION Design Rule examples: Maximum Rules: Manufacturing of large continuous regions can lead to stress cracks. So wide metal' must be slotted' (holes) Angles: Usually only multiples of 45 degree are allowed Grid: Al corner points must lie on a minimal grid, otherwise an "off griderror" is produced Minimum Spacing: The minimum spacing between objects on a single layer Minimum Width: The min width rule specifies the minimum width of individual shapes on a single layer Minimum Enclosurel Overlap: Implies that the second layer is fully enclosed by the first one Notch: The rule specifies the minimum spacing rule: for objects on the same net, including defining the minimum notch on a single-layer, merged object Minimum Cut: the minimum number of cuts a via must have when it is on a wide wire
  • 154. PHYSICAL VERIFICATION Order of fixes in signoff 1PO w.r.t To Intel: 1 Trclvs and Onlinelvs 2 Density Violation (Denallpheml) 3 Antenna Violations (Drc_IPHALL) 4 Drc_m1base 5.Drc_dv1up 6 Dfi_intergra (boundary violations) 7 Drc_sk (via stack violation) ..In 10nm tech more than 3vias can not be placed one above the other
  • 155. PHYSICAL VERIFICATION LVS FLOW Layout Versus Schematic (LVS): DRC only verifies that the given layout satisfies the design rules provided by the fabrication unit. It does not ensure the functionality of layout. Because of this, idea of LVS is originated. • It is the method of verifying the layout of the design is Functionally equivalent to the schematic of design. Layout Versus Schematic (LVS) verifies the connectivity of a Verilog Netlist and Layout Netlist (Extracted Netlist from GDS) . Tool extracts circuit devices and interconnects from the layout and saved as Layout Netlist (SPICE formats LVS performs comparison between 2 Netlist, it does not compare the functionalities of both the Netlist.
  • 156. PHYSICAL VERIFICATION • Inputs Requirements 1. LVS Rule deck 2. Verilog Netlist 3. Physical layout database (GDS) 4. Spice Netlist (Extracted by the tool from GDS) LVS rule deck : is a set of code written in Standard Verification Rule Format (SVRF) or TCL Verification Format (TVF). It guides the tool to extract the devices and the connectivity of IC’s. It contains the layer definition to identify the layers used in layout file and to match it with the local on of layer in GDS. It also contains a device structure definitions LVS checks: Short Net Error, Open Net Error, Extract errors, Compare errors (Malformed Devices Pin Errors Device Mismatch Net Mismatch)
  • 157. PHYSICAL VERIFICATION • Steps of LVS • Extraction: 1. The tool takes GDSII file containing all the layers and uses polygon based approach to determine the components like transistors, diodes, capacitors and resistors and also connectivity information between devices presented in the layout by their layers of construction. 2. All the device layers, terminals of the devices, size of devices, nets, vias and the locations of pins are defined and given an unique identification. Reduction: 1. All the defined information is extracted in the form of netlist. Comparison: 1. The extracted layout netlist is then compared to the netlist of the same stage using the LVS rule deck. In this stage the number of instances, nets and ports are compared. 2. All the mismatches such as shorts and opens, pin mismatch etc.. are reported. 3. The tools also checks topology and size mismatch
  • 158. PHYSICAL VERIFICATION LVS Checks : No of devices in schematic and its layout Type of devices in schematic and its layout No of nets in schematic and its layout Errors occur Shorts: Shorts are formed, if two or more wires which should not be connected together are connected Opens: Opens are formed, if the wires or components which should be connected together are left floating or partially connected. Component mismatch: Component mismatch can happen, if components of different types are used (e.g., LVT cells instead of HVT cells) Missing components: Component missing can happen, if an expected component is left out from the layout Parameter mismatch: All components has it's own properties, LVS tool is configured to compare these properties with some tolerance. If this tolerance is not met, then it will give parameter mismatch.
  • 159. PHYSICAL VERIFICATION Electrical Rule Check (ERC): Electrical Rule Check (ERC) is used to analyze or confirm the electrical connectivity of an IC design ERC checks are run to identify the following errors in layout. 1. To locate devices connected directly between Power and Ground 2. To locate floating Devices, Substrates and Wells 3. To locate devices which are shorted 4. To locate devices with missing connections Well Tap connection error: The Well Taps should bias the Wells Well Tap Density Error: If there is no enough Taps for a given area then this error is flagged Taps need to be placed regularly which blases the Well to prevent Latch-up Tools: Mentor Graphics Calibre, Synopsys Hercules, Cadence Assura, Magma Quartz
  • 160. PHYSICAL VERIFICATION Onlinelvs: check_lvs Trclvs: Internally generated from Diagram ,so we need to laod this IC Validator with respect synopsis after loading IC Validator this report we need to open ,while popup will happens like : shorts and opens ,device mismatch. Difference b/w onlinelvs and Trclvs is In Trclvs hierarchical shorts are visible In Onlinelvs hierarchical shorts are not visible
  • 161. PHYSICAL VERIFICATION Antenna effect Definition: During the fabrication of MOS integrated circuits, especially at the time of plasma etching, there will be a chance of collecting more charges at the gate and causes damage to the gate oxide layer since it is very thin. This condition is known as Antenna effect. Antenna Violation : The ratio of the gate area to the gate oxide area is known as Antenna ratio. Solutions for Antenna Violation: 1 Metal Jumper insertion /metal jogging: Breaks the long wire which is connected gate and route to upper metal layer. So it becomes short and less capable of collecting charge. If the antenna violation happens at a metal layer, always use higher metal layers as metal jumper ,since all the lower layers are already fabricated at that moment . 2. Diode insertion: Connect reverse biased diodes near gate input where violation occurs on a net provides a discharge path to the substrate which saves the gate of the transistor. it can protect the gate oxide Adding diode increases the area and also the capacitance which leads to increase in delay, 3.IPN( Inter Process Node) Add vias: near the gate(s), to connect the gate to the highest layer used. This adds more vias, but involves fewer changes to the rest of the net.
  • 162. 1.INTERVIEW QUESTIONS 1. What is uncertainty values for hold time 2. What is skew values for setup and hold which one is violating 3. Where do you check set up & hold violations in multicycle paths? 4. Hold fixing for reg to out path? 5. How to reduce propagation delay ? 6. What are retention registers? 7. In a circuit, for reg to reg path ...Tclktoq is 50 ps, Tcombo 50ps, Tsetup 50ps, tskew is 100ps. Then what is the maximum operating frequency? 8. How R and C values are affecting time? 9. How do u calculate insertion delay. 10. what are effects OCV on insertion delay and skew 11. setup is checked in which clock cycle and hold is checked in which clock cycle
  • 163. 2.INTERVIEW QUESTIONS why to reduce insertion delay what are its impact 1. which is better for insertion delay more low drive strength buffers or less high drive strength buffers 2. Why do we use buffer for fixing violations instead of AND and NAND gates? 3. What setup analysis and how to fix setup violations ?if you tried all the setup methods, still violations are there, what you do ? 4. What is clock pulling and clock pushing? 5. What is clock budgeting ? How much percentage will you provide to the design? 6. What is insertion delay ? In your design, insertion delay is more, how do you fix it? Whether it will effect on the timing 7. How do you fix timing violations after routing? 8. How do you fix DRC violations after routing? 9. Explain multi voltage design? 10. How you worked on multi voltage design?