Timing and Design Closure in Physical Design Flows Olivier Coudert
A physical design flow consists of producing a production-worthy layout from a gate-level netlist subject to a set of constraints. We focus on the problems imposed by shrinking process technologies. It exposes the problems of timing closure, signal integrity, design variable dependencies, clock and power/ground routing, and design signoff. It also surveys some physical design flows, and outlines a refinement-based flow.
https://www.udemy.com/vlsi-academy
Usually, while drawing any circuit on paper, we have only one 'vdd' at the top and one 'vss' at the bottom. But on a chip, it becomes necessary to have a grid structure of power, with more than one 'vdd' and 'vss'. The concept of power grid structure would be uploaded soon. It is actually the scaling trend that drives chip designers for power grid structure.
Timing and Design Closure in Physical Design Flows Olivier Coudert
A physical design flow consists of producing a production-worthy layout from a gate-level netlist subject to a set of constraints. We focus on the problems imposed by shrinking process technologies. It exposes the problems of timing closure, signal integrity, design variable dependencies, clock and power/ground routing, and design signoff. It also surveys some physical design flows, and outlines a refinement-based flow.
https://www.udemy.com/vlsi-academy
Usually, while drawing any circuit on paper, we have only one 'vdd' at the top and one 'vss' at the bottom. But on a chip, it becomes necessary to have a grid structure of power, with more than one 'vdd' and 'vss'. The concept of power grid structure would be uploaded soon. It is actually the scaling trend that drives chip designers for power grid structure.
This is a custom GUI, which eases fixing violations either by adding buffer, cloning or sizing. Drop down menu item is created in ICC2 layout window. Desired terminals can be selected by dragging or adding points in rectilinear fashion and desired locations can be selected for adding new buffer.
In this course, you
● Identify and apply timing arc information from a library, such as unateness, delays, and slew
● Identify cell delays from a library and calculate output slew degradation
● Use wire-load information to calculate net delays
● Identify the properties of a clock, including period, edges, and slew, and calculate the duty cycle
● Apply setup and hold checks to diagnose design violations
● Identify timing path types to calculate slack values
● Set environmental constraints, clocks constraints, and path exceptions
● Constrain a design using SDC
● Analyze reports to identify timing problems
Fusion Compiler is the next-generation RTL-to-GDSII implementation system architected to address the complexities of advanced node designs and deliver up to 20% improved PPA while reducing Time To Results (TTR) by 2X.
Placement is the process of determining the locations of circuit devices on a die surface. It is an important stage in the VLSI design flow, because it affects routabil- ity, performance, heat distribution, and to a less extent, power consumption of a design.
Clock Tree Synthesis is a technique for distributing the clock equally among all sequential parts of a VLSI design. The purpose of Clock Tree Synthesis is to reduce skew and delay. Clock Tree Synthesis is provided the placement data as well as the clock tree limitations as input. Clock Tree Synthesis (CTS) is the technique of balancing the clock delay to all clock inputs by inserting buffers/inverters along the clock routes of an ASIC design. As a result, CTS is used to balance the skew and reduce insertion latency. Before Clock Tree Synthesis, all clock pins were driven by a single clock source. Clock tree synthesis includes both clock tree construction and clock tree balance. Clock tree inverters may be used to create a clock tree that maintains the correct transition (duty cycle), and clock tree buffers (CTB) can balance the clock tree to fulfil the skew and latency requirements. To fulfil the space and power limits, fewer clock tree inverters and buffers should be employed.
This is the presentation that was shared by Nilesh Ranpura and Vineeth Mathramkote at CDNLIVE 2015. The session briefs about the implementation challenges and covers the solution approach and how to achieve results
A typical design flow follows the below structure and can be broken down into multiple steps. Some of these phases happen in parallel and some in sequentially.
Requirements
A customer of a semiconductor firm is typically some other company who plans to use the chip in its systems or end products. So, the customer's requirements also play an important role in deciding how the chip should be designed.
The first step is to collect the requirements, estimate the end product's market value, and evaluate the number of resources required to do the project.
Specifications
The next step is to collect specifications that describe the functionality, interface abstractly, and over all architecture of the chip to be designed. This can be something along the lines such as:
Play
Next
Unmute
Current TimeÂ
0:00
/
DurationÂ
18:10
Â
Fullscreen
Backward Skip 10s
Play Video
Forward Skip 10s
Requires computational power to run imaging algorithms to support virtual reality.
Requires two ARM A53 processors with coherent interconnect and should run at 600 MHz.
Requires USB 3.0, Bluetooth, and PCIe 2nd gen interfaces.
It should support 1920x1080 pixel displays with an appropriate controller.
Digital Design
Because of the complex nature of modern chips, it's impossible to build something from scratch, and in many cases, many components will be reused.
For example, company A requires a FlexCAN module to interact with other modules in an automobile. They can either buy the FlexCAN design from another company to save time and effort or spend resources to build one.
It's not practical to design such a system from basic building blocks such as flip-flops and CMOS transistors.
Instead, a behavioral description is developed to analyze the design in terms of functionality, performance, and other high-level issues using a Hardware Description Language such as Verilog or VHDL.
This is usually done by a digital designer and is similar to a high-level computer programmer equipped with digital electronics skills.
Verification
Once the RTL design is ready, it needs to be verified for functional correctness.
For example, a DSP processor is expected to issue bus transactions with fetching instructions from memory and know that this will happen as expected.
The functional verification is required at this point, which is done with EDA simulators' help that can model the design and apply a different stimulus to it. This is the job of a pre-silicon verification engineer.
Logic Synthesis
Now we will convert this design into hardware schematic with real elements such as combinational gates and flip-flops. This step is called synthesis.
Logic synthesis tools enable the conversion of RTL description in HDL to a gate-level netlist. This netlist is a description of the circuit in terms of gates and connections between them.
Logic synthesis tools ensure that the netlist meets timing, area, and power specifications. Typically, they have access to different technology node
Routing is an important step in the design of integrated circuits. It involves generating metal wires to connect the pins of same signal while obeying manufacturing design rules. Before routing is performed on the design, cell placement has to be carried out wherein the cells used in the design are placed. But the connections between the pins of the cells pertaining to same signal need to be made. At the time of placement, there are only logical connections between these pins. The physical connections are made by routing. More generally speaking, routing is to locate a set of wires in routing space so as to connect all the nets in the netlist taking into consideration routing channels’ capacities, wire widths and crossings etc. The objective of routing is to minimize total wire length and number of vias and that each net meets its timing budget. The tools that perform routing are termed as routers. You typically provide them with a placed netlist along with list of timing critical nets. These tools, in turn, provide you with the geometry of all the nets in the design.
This is a custom GUI, which eases fixing violations either by adding buffer, cloning or sizing. Drop down menu item is created in ICC2 layout window. Desired terminals can be selected by dragging or adding points in rectilinear fashion and desired locations can be selected for adding new buffer.
In this course, you
● Identify and apply timing arc information from a library, such as unateness, delays, and slew
● Identify cell delays from a library and calculate output slew degradation
● Use wire-load information to calculate net delays
● Identify the properties of a clock, including period, edges, and slew, and calculate the duty cycle
● Apply setup and hold checks to diagnose design violations
● Identify timing path types to calculate slack values
● Set environmental constraints, clocks constraints, and path exceptions
● Constrain a design using SDC
● Analyze reports to identify timing problems
Fusion Compiler is the next-generation RTL-to-GDSII implementation system architected to address the complexities of advanced node designs and deliver up to 20% improved PPA while reducing Time To Results (TTR) by 2X.
Placement is the process of determining the locations of circuit devices on a die surface. It is an important stage in the VLSI design flow, because it affects routabil- ity, performance, heat distribution, and to a less extent, power consumption of a design.
Clock Tree Synthesis is a technique for distributing the clock equally among all sequential parts of a VLSI design. The purpose of Clock Tree Synthesis is to reduce skew and delay. Clock Tree Synthesis is provided the placement data as well as the clock tree limitations as input. Clock Tree Synthesis (CTS) is the technique of balancing the clock delay to all clock inputs by inserting buffers/inverters along the clock routes of an ASIC design. As a result, CTS is used to balance the skew and reduce insertion latency. Before Clock Tree Synthesis, all clock pins were driven by a single clock source. Clock tree synthesis includes both clock tree construction and clock tree balance. Clock tree inverters may be used to create a clock tree that maintains the correct transition (duty cycle), and clock tree buffers (CTB) can balance the clock tree to fulfil the skew and latency requirements. To fulfil the space and power limits, fewer clock tree inverters and buffers should be employed.
This is the presentation that was shared by Nilesh Ranpura and Vineeth Mathramkote at CDNLIVE 2015. The session briefs about the implementation challenges and covers the solution approach and how to achieve results
A typical design flow follows the below structure and can be broken down into multiple steps. Some of these phases happen in parallel and some in sequentially.
Requirements
A customer of a semiconductor firm is typically some other company who plans to use the chip in its systems or end products. So, the customer's requirements also play an important role in deciding how the chip should be designed.
The first step is to collect the requirements, estimate the end product's market value, and evaluate the number of resources required to do the project.
Specifications
The next step is to collect specifications that describe the functionality, interface abstractly, and over all architecture of the chip to be designed. This can be something along the lines such as:
Play
Next
Unmute
Current TimeÂ
0:00
/
DurationÂ
18:10
Â
Fullscreen
Backward Skip 10s
Play Video
Forward Skip 10s
Requires computational power to run imaging algorithms to support virtual reality.
Requires two ARM A53 processors with coherent interconnect and should run at 600 MHz.
Requires USB 3.0, Bluetooth, and PCIe 2nd gen interfaces.
It should support 1920x1080 pixel displays with an appropriate controller.
Digital Design
Because of the complex nature of modern chips, it's impossible to build something from scratch, and in many cases, many components will be reused.
For example, company A requires a FlexCAN module to interact with other modules in an automobile. They can either buy the FlexCAN design from another company to save time and effort or spend resources to build one.
It's not practical to design such a system from basic building blocks such as flip-flops and CMOS transistors.
Instead, a behavioral description is developed to analyze the design in terms of functionality, performance, and other high-level issues using a Hardware Description Language such as Verilog or VHDL.
This is usually done by a digital designer and is similar to a high-level computer programmer equipped with digital electronics skills.
Verification
Once the RTL design is ready, it needs to be verified for functional correctness.
For example, a DSP processor is expected to issue bus transactions with fetching instructions from memory and know that this will happen as expected.
The functional verification is required at this point, which is done with EDA simulators' help that can model the design and apply a different stimulus to it. This is the job of a pre-silicon verification engineer.
Logic Synthesis
Now we will convert this design into hardware schematic with real elements such as combinational gates and flip-flops. This step is called synthesis.
Logic synthesis tools enable the conversion of RTL description in HDL to a gate-level netlist. This netlist is a description of the circuit in terms of gates and connections between them.
Logic synthesis tools ensure that the netlist meets timing, area, and power specifications. Typically, they have access to different technology node
Routing is an important step in the design of integrated circuits. It involves generating metal wires to connect the pins of same signal while obeying manufacturing design rules. Before routing is performed on the design, cell placement has to be carried out wherein the cells used in the design are placed. But the connections between the pins of the cells pertaining to same signal need to be made. At the time of placement, there are only logical connections between these pins. The physical connections are made by routing. More generally speaking, routing is to locate a set of wires in routing space so as to connect all the nets in the netlist taking into consideration routing channels’ capacities, wire widths and crossings etc. The objective of routing is to minimize total wire length and number of vias and that each net meets its timing budget. The tools that perform routing are termed as routers. You typically provide them with a placed netlist along with list of timing critical nets. These tools, in turn, provide you with the geometry of all the nets in the design.
A natural extension of the Random Access Machine (RAM) serial architecture is the Parallel Random Access Machine, or PRAM.
PRAMs consist of p processors and a global memory of unbounded size that is uniformly accessible to all processors.
Processors share a common clock but may execute different instructions in each cycle.
IP based communications over satellitesBektaş Şahin
IP based communications over satellites is a hard task however emerging technologies improve it's viability. This presentation gives some insight about how it is done and showcase some of the problems and solution approaches. Also some constellations are given as examples to how this process is done.
We’re all caught up! Welcome to modern times, where technology has become fully integrated into nearly every aspect of both consumers’ lives and businesses’ operations. Workplace trends and business best practices are constantly changing as new technologies are evolving at a rapid pace.
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsVictor Morales
K8sGPT is a tool that analyzes and diagnoses Kubernetes clusters. This presentation was used to share the requirements and dependencies to deploy K8sGPT in a local environment.
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...Amil Baba Dawood bangali
Contact with Dawood Bhai Just call on +92322-6382012 and we'll help you. We'll solve all your problems within 12 to 24 hours and with 101% guarantee and with astrology systematic. If you want to take any personal or professional advice then also you can call us on +92322-6382012 , ONLINE LOVE PROBLEM & Other all types of Daily Life Problem's.Then CALL or WHATSAPP us on +92322-6382012 and Get all these problems solutions here by Amil Baba DAWOOD BANGALI
#vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore#blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #blackmagicforlove #blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #Amilbabainuk #amilbabainspain #amilbabaindubai #Amilbabainnorway #amilbabainkrachi #amilbabainlahore #amilbabaingujranwalan #amilbabainislamabad
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
Literature Review Basics and Understanding Reference Management.pptxDr Ramhari Poudyal
Three-day training on academic research focuses on analytical tools at United Technical College, supported by the University Grant Commission, Nepal. 24-26 May 2024
Understanding Inductive Bias in Machine LearningSUTEJAS
This presentation explores the concept of inductive bias in machine learning. It explains how algorithms come with built-in assumptions and preferences that guide the learning process. You'll learn about the different types of inductive bias and how they can impact the performance and generalizability of machine learning models.
The presentation also covers the positive and negative aspects of inductive bias, along with strategies for mitigating potential drawbacks. We'll explore examples of how bias manifests in algorithms like neural networks and decision trees.
By understanding inductive bias, you can gain valuable insights into how machine learning models work and make informed decisions when building and deploying them.
Harnessing WebAssembly for Real-time Stateless Streaming PipelinesChristina Lin
Traditionally, dealing with real-time data pipelines has involved significant overhead, even for straightforward tasks like data transformation or masking. However, in this talk, we’ll venture into the dynamic realm of WebAssembly (WASM) and discover how it can revolutionize the creation of stateless streaming pipelines within a Kafka (Redpanda) broker. These pipelines are adept at managing low-latency, high-data-volume scenarios.
ACRP 4-09 Risk Assessment Method to Support Modification of Airfield Separat...
Lecture24 clockpower routing
1. 1
VLSI Physical Design Automation
Prof. David Pan
dpan@ece.utexas.edu
Office: ACES 5.434
Clock and Power Routing
2. 2
Routing of Clock and Power Nets
• Different from other signal nets, clock and power are
special routing problems
– For clock nets, need to consider clock skew as well as delay.
– For power nets, need to consider current density (IR drop)
• => specialized routers for these nets.
• Automatic tools for ASICs
• Often manually routed and optimized for
microprocessors, with help from automatic tools
3. 3
Clock Introduction
• For synchronized designs, data transfer between
functional elements are synchronized by clock signals
• Clock signal are generated externally (e.g., by PLL)
• Clock period equation
dssuskewd ttttodclock peri +++≥
td: Longest path through combinational logic
tskew: Clock skew
tsu: Setup time of the synchronizing elements
tds: Propagation delay within the synchronizing element
4. 4
Clock Skew
• Clock skew is the maximum difference in the arrival
time of a clock signal at two different components.
• Clock skew forces designers to use a large time period
between clock pulses. This makes the system slower.
• So, in addition to other objectives, clock skew should
be minimized during clock routing.
5. 5
Clock Design Problem
• What are the main concerns for clock design?
• Skew
– No. 1 concern for clock networks
– For increased clock frequency, skew may contribute over 10% of
the system cycle time
• Power
– very important, as clock is a major power consumer!
– It switches at every clock cycle!
• Noise
– Clock is often a very strong aggressor
– May need shielding
• Delay
– Not really important
– But slew rate is important (sharp transition)
6. 6
The Clock Routing Problem
• Given a source and n sinks.
• Connect all sinks to the source by an interconnect
network (tree or non-tree) so as to minimize:
– Clock Skew = maxi,j |ti - tj|
– Delay = maxi ti
– Total wirelength
– Noise and coupling effect
7. 7
Clock Design Considerations
• Clock signal is global in nature, so clock nets are
usually very big
– Significant interconnect capacitance and resistance
• So what are the techniques?
– Routing
• Clock tree versus clock mesh (non-tree or grid)
• Balance skew and total wire length
– Buffer insertion // will be covered in EE382V (Optimization
issues in VLSI CAD)
• Clock buffers to reduce clock skew, delay, and distortion in waveform.
– Wire sizing // will be covered in Opt. Issues in VLSI CAD
• To further tune the clock tree/mesh
8. 8
Clock trees
• A path from the clock source to clock sinks
Clock Source
FF FF FF FF FFFF FF FFFF FF
9. 9
Clock trees
• A path from the clock source to clock sinks
Clock Source
FF FF FF FF FFFF FF FFFF FF
11. 11
H-tree Algorithm
• Minimize skew by making interconnections to subunits
equal in length
– Regular pattern
– The skew is 0 assuming delay is directly proportional to
wirelength
• Is this always the case???
• Can be used when terminals are evenly distributed
– However, this is never the case in practice (due to blockage,
and so on)
– So strict (pure) H-trees are rarely used
– However, still popular for top-level clock network design
– Cons: too costly to be used everywhere
Can you think of another shape if non-rectilinear wires are allowed?
12. 12
Method of Means and Medians (MMM)
• Applicable when the clock terminals are arbitrarily
arranged.
• Follows a strategy very similar to H-Tree.
• Recursively partition the terminals into two sets of equal
size (median). Then, connect the center of mass of the
whole circuit to the centers of mass of the two sub-circuits
(mean).
• Clock skew is only minimized heuristically. The resulting
tree may not have zero-skew.
14. 14
Geometric Matching Algorithm
(GMA)
• MMM is a top-down algorithm, but GMA is a bottom-up
algorithm.
• Geometric matching of n endpoints:
– Construct a set of n/2 line segments connecting n endpoints
pairwise.
– No two line segments share an endpoint.
– The cost is the sum of the edge lengths.
• The basic idea is to find a minimum cost geometric
matching recursively.
• Time complexity is O(n2.5
log n) for n endpoints.
15. 15
An Example of GMA
Apply geometricApply geometric
matching recursively.matching recursively.
H-flippingH-flipping
Post-processing
Tapping pointTapping point
(not necessarily(not necessarily
the mid-point)the mid-point)
Can give clock tree of zero skew.Can give clock tree of zero skew.
16. 16
An Exact Zero Skew Algorithm
• ICCAD 1991 and TCAD 1993, Ren-Song Tsay
• A classic paper to manage clock skew
• Use Elmore delay model to compute delay
• Guarantee zero skew
– Can easily to extended for zero skew or bounded skew
– Can you think of a method to do it?
• Try to minimize wire length, but not done very well
– Lots of follow up works to minimize total wire length while
maintaining zero skew
– DME and its extensions
17. 17
Deferred Merge Embedding
• As its name implies, DME defers the merging as late
as possible, to make sure minimal wire length cost for
merging
• Independently proposed by several groups
– Edahiro, NEC Res Dev, 1991
– Chao et al, DAC’92
– Boese and Kahng, ASIC’92
• DME needs an abstract routing topology as the input
• It has a bottom-up phase followed by a top-down
process (sounds familiar?)
19. 19
Some Thoughts/Trend
• Clock skew scheduling together with clock tree
synthesis
– Schedule the timing slack of a circuit to the individual
registers for optimal performance and as a second
criteria to increase the robustness of the
implementation w.r.t. process variation.
• Variability is a major nanometer concern
• Non-tree clock networks for variation-tolerance
– How to analyze it?
– The task is to investigate a combined optimization
such that clock skew variability is reduced with
minimum wirelength penalty
20. 20
Non-tree: Spine & Mesh
Applied in Pentium processor
Spines
Clock sinks or local sub-networks
Clock sinks or local sub-networks
Clock sinks or local sub-
networks
Applied in IBM microprocessor
Very effective, huge wire
[Restle et. al, JSSC’01]
[Su et. al, ICCAD’01]
[Kurd et. al. JSSC’01]
21. 21
Non-tree: Link Perspective
• Non-tree = tree + links
• How to select link pairs is the key problem
• Link = link_capacitors + link_resistor
• Key issue: find the best links that can help the skew variation
reduction the most!
u
w
i
w
u
Rl
C/2 C/2
u w
Rl
C/2
C/2
[Rajaram et al, DAC’04]
23. 23
Power Distribution
• Power Distribution Network functions
– Carry current from pads to transistors on chip
– Maintain stable voltage with low noise
– Provide average and peak power demands
– Provide current return paths for signals
– Avoid electromigration & self-heating wearout
– Consume little chip area and wire
– Easy to lay out
24. 24
Power and Ground Routing
• Each standard cell or macro has power and ground
signals, i.e., Vdd (power) and GND (ground)
• They need to be connected as well
• You can imagine that they are HUGE NETWORKS!
• In general, P/G routings are pretty regular
• They have high priority as well
– P/G routing resources are usually reserved
– When you do global and detailed routing for signal nets, you
cannot use up all the routing resources at each metal layers
• Normally some design rules will be given (e.g., 40% of top metal
layers are reserved for P/G)
25. 25
P/G Routing Main Objectives
• Routing resource
– Need to balance the routing resource for P/G, clock and signals
• Voltage drop
– Static (IR) and dynamic (L di/dt) voltage drops
– More voltage drop means more gate delay
– Usually less than 5-10% voltage drop is allowed
– So you may need to size P/G wires accordingly
• Electrical migration
– Too big current may cause EMI problem
• Others…
26. 26
P/G Mesh (Grid Distribution)
• Power/Ground mesh will allow multiple paths from P/G
sources to destinations
– Less series resistance
– Hierarchical power and ground meshes from upper metal
layers to lower metal layers
• All the way to M1 or M2 (stand cells)
– Connection of lower layer layout/cells to the grid is through
vias
27. 27
Using One Metal Layer
VDDVDD GNDGND
One tree for VDD and another tree for GND.
28. 28
Using Two Metal Layers
One 2D-grid for VDD and another one for GND:
VDDVDD GNDGND
M5M5 M4M4
30. 30
Some Thoughts/Trends
• P/G I/O pad co-optimization with classic
physical design
• Decoupling capacitor can reduce P/G related
voltage drop
– Need to be planned together with floorplanning and
placement
• Multiple voltage/frequency islands make the
P/G problem and clock distributions more
challenging
Editor's Notes
Within most VLSI circuits, data transfer between functional elements is synchronized by the processing clock.
Clock frequency can directly determine the performance of a chip. In the case of a microprocessor the clock frequency determines the Instructions Per Second. IPS=f*NIPC.
The clock signal is generated external to the chip and provided to the chip through the clock pin. Each functional unit computes and waits for the next clock signal to pass its results to another unit before the next processing cycle
Within most VLSI circuits, data transfer between functional elements is synchronized by the processing clock.
Clock frequency can directly determine the performance of a chip. In the case of a microprocessor the clock frequency determines the Instructions Per Second. IPS=f*NIPC.
The clock signal is generated external to the chip and provided to the chip through the clock pin. Each functional unit computes and waits for the next clock signal to pass its results to another unit before the next processing cycle. Clock should arrive at the same time to all functional units to minimize delay
Within most VLSI circuits, data transfer between functional elements is synchronized by the processing clock.
Clock frequency can directly determine the performance of a chip. In the case of a microprocessor the clock frequency determines the Instructions Per Second. IPS=f*NIPC.
The clock signal is generated external to the chip and provided to the chip through the clock pin. Each functional unit computes and waits for the next clock signal to pass its results to another unit before the next processing cycle
Within most VLSI circuits, data transfer between functional elements is synchronized by the processing clock.
Clock frequency can directly determine the performance of a chip. In the case of a microprocessor the clock frequency determines the Instructions Per Second. IPS=f*NIPC.
The clock signal is generated external to the chip and provided to the chip through the clock pin. Each functional unit computes and waits for the next clock signal to pass its results to another unit before the next processing cycle. Clock should arrive at the same time to all functional units to minimize delay
The goal of a clock tree is to get the clock signal from a clock source to clock sinks. The relative arrival times, shape, and amplitude of the clock signal at the sinks need to meet certain criteria for the circuit to work correctly. Simple wires are susceptible to influences of signals in nearby wires and their own parasitics among other things that may compromise the integrity the signal and cause the signal arriving at the sinks to be unacceptable.
Buffering, which restores the signal and reduces delay, helps to guarantee the integrity of the clock signal. These are the two steps that are carried out in the clock tree generation steps in the SSHAFT flow.
The skew can be minimized by making interconnections carrying clocks signal to sub-units equal in length
In the case where terminals are arranged symmetrically, as in gate arrays, zero skew achieved by using H-trees
A manhattan plane is one where the distance between two points is defined by min{d(p,q) p in P and q in Q}
Manhattan distance delta(x)+delta(y)
Sinks are locations.
in the manhattan plane.