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.
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
- 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.
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)
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...
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.
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.
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.
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.
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 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.
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.
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
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.
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
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.
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
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
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.
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
The document discusses Tevatron Technologies, a company focused on VLSI design, FPGA-based design, and embedded systems. It provides an overview of the company's vision to be an end-to-end provider of electronics design and manufacturing. It then describes an industrial training seminar on RTL design, Verilog, and FPGA design held at Tevatron Technologies.
Introduction – Multiple tasks and multiple processes – Multirate systems- Preemptive realtime operating systems- Priority based scheduling- Interprocess communication mechanisms – Evaluating operating system performance- power optimization strategies for processes –Example Real time operating systems-POSIX-Windows CE. – Distributed embedded systems – MPSoCs and shared memory multiprocessors. – Design Example – Audio player, Engine control unit – Video accelerator.
This document provides an outline for a TinyOS tutorial that introduces the TinyOS operating system and development environment. It covers the hardware primer, introduction to TinyOS, installation and configuration, NesC syntax, network communication, sensor data acquisition, debugging techniques, and concludes with an overview of the Agilla mobile agent system. The outline includes 10 sections that will guide students through understanding the TinyOS hardware platforms, programming model, components, interfaces, and building/installing applications.
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.
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 TECHNOLOGYIlango Jeyasubramanian
- 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.
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)
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.
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.
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.
Level sensitive scan design(LSSD) and Boundry scan(BS)Praveen Kumar
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.
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.
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 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.
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.
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
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.
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 architectureishapadhy
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.
Similar to Netlist to GDSII flow new.pptx physical design full info (20)
With Fear For Our Democracy I Dissent ShirtTeeFusion
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
Right Choice Landscaping offers exceptional villa landscape maintenance servi...rightchoicelandscapi
"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 IdeologiesAditi Sh.
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.
Professional Document Editing Services / Bank Statement EditingEdit Bank Statement
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
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.
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.
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
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.
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?