SlideShare a Scribd company logo
1 of 41
Download to read offline
Placement
CAD for VLSI 2
Introduction
• A very important step in physical design cycle.
– A poor placement requires larger area.
– Also results in performance degradation.
• It is the process of arranging a set of modules on
the layout surface.
– Each module has fixed shape and fixed terminal locations.
– A subset of modules may have pre-assigned positions
(e.g., I/O pads).
CAD for VLSI 3
The Placement Problem
• Inputs:
– A set of modules with
• well-defined shapes
• fixed locations of pins.
– A netlist.
• Requirements:
– Find locations for each module so that no two modules overlap.
– The placement is routable.
• Objectives:
– Minimize layout area.
– Reduce the length of critical nets.
– Completion of routing.
CAD for VLSI 4
Placement Problems at Different Levels
1. System-level placement
– Place all the PCBs together such that
• Area occupied is minimum
• Heat dissipation is within limits.
2. Board-level placement
– All the chips have to be placed on a PCB.
• Area is fixed
• All modules of rectangular shape
– Objective is to
• Minimize the number of routing layers
• Meet system performance requirements.
CAD for VLSI 5
3. Chip-level placement
– Normally, floorplanning / placement carried out along
with pin assignment.
– Limited number of routing layers (2 to 4).
• Bad placements may be unroutable.
• Can be detected only later (during routing).
• Costly delays in design cycle.
– Minimization of area.
CAD for VLSI 6
Problem Formulation
• Notations:
B1,B2,…, Bn : modules/blocks to be placed
wi, hi : width and height of Bi, 1 ≤ i ≤ n
N={N1,N2,…,Nm} : set of nets (i.e. the netlist)
Q={Q1,Q2,…,Qk} : rectangular empty spaces for routing
Li : estimated length of net Ni, 1 ≤ i ≤ m
CAD for VLSI 7
Contd.
• The problem
Find rectangular regions R={R1,R2,...Rn} for each of the blocks
such that
• Block Bi can be placed in region Ri.
• No two rectangles overlap, Ri∩Rj = Φ.
• Placement is routable (Q is sufficient to route all nets).
• Total area of rectangle bounding R and Q is minimized.
• Total wire length ΣLi is minimized.
• For high performance circuits, max {Li | i=1,2,…,m} is
minimized.
• General problem is NP-complete.
• Algorithms used are heuristic in nature.
CAD for VLSI 8
CAD for VLSI 9
Interconnection Topologies
• The actual wiring paths are not known during
placement.
– For making an estimation, a placement algorithm needs to
model the topology of the interconnection nets.
• An interconnection graph structure is used.
• Vertices are terminals, and edges are interconnections.
CAD for VLSI 10
Estimation of Wirelength
• The speed and quality of estimation has a drastic
effect on the performance of placement algorithms.
– For 2-terminal nets, we can use Manhattan distance as an
estimate.
– If the end co-ordinates are (x1,y1) and (x2,y2), then the wire
length
L = ⎥ x1 – x2 ⎥ + ⎥ y1 – y2⎥
• How to estimate length of multi-terminal nets?
CAD for VLSI 11
Modeling of Multi-terminal Nets
1. Complete Graph
• nC2 = n(n-1)/2 edges for a n-pin net.
• A tree has (n-1) edges which is 2/n times the number
of edges of the complete graph.
• Length is estimated as 2/n times the sum of the edge
weights.
2. Minimum Spanning Tree
• Commonly used structure.
• Branching allowed only at pin locations.
• Easy to compute.
CAD for VLSI 12
Contd.
3. Rectangular Steiner Tree
• A Steiner tree is the shortest route for connecting a
set of pins.
• A wire can branch from any point along its length.
• Problem of finding Steiner tree is NP-complete.
4. Semi Perimeter
• Efficient and most widely used.
• Finds the smallest bounding rectangle that encloses
all the pins of the net to be connected.
• Estimated wire length is half the perimeter of this
rectangle.
• Always underestimates the wire length for congested
nets.
CAD for VLSI 13
Example
Complete Graph Minimum Spanning Tree
Semi PerimeterSteiner Tree
CAD for VLSI 14
Design Style Specific Issues
• Full Custom
– Placing a number of blocks of various shapes and sizes
within a rectangular region.
– Irregularity of block shapes may lead to unused areas.
• Standard Cell
– Minimization of the layout area means:
• Minimize sum of channel heights.
• Minimize width of the widest row.
• All rows should have equal width.
– Over-the-cell routing leads to almost “channel-less”
standard cell designs.
CAD for VLSI 15
• Gate Arrays
– The problem of partitioning and placement are the same in
this design style.
– For FPGA’s, the partitioned sub-circuit may be a complex
netlist.
• Map the netlist to one or more basic blocks (placement).
CAD for VLSI 16
Classification of Placement Algorithms
Placement Algorithms
OtherSimulation Based Partitioning Based
Simulated Annealing
Simulated Evolution
Force Directed
Breuer’s Algorithm
Terminal Propagation
Cluster Growth
Force Directed
CAD for VLSI 17
Simulated Annealing
• Simulation of the annealing process in metals or
glass.
– Avoids getting trapped in local minima.
– Starts with an initial placement.
– Incremental improvements by exchanging blocks,
displacing a block, etc.
– Moves which decrease cost are always accepted.
– Moves which increase cost are accepted with a probability
that decreases with the number of iterations.
• Timberwolf is one of the most successful placement
algorithms based on simulated annealing.
CAD for VLSI 18
Simulated Annealing Algorithm
Algorithm SA_Placement
begin
T = initial_temperature;
P = initial_placement;
while ( T > final_temperature) do
while (no_of_trials_at_each_temp not yet completed) do
new_P = PERTURB (P);
ΔC = COST (new_P) – COST (P);
if (ΔC < 0) then
P = new_P;
else if (random(0,1) > exp(ΔC/T)) then
P = new_P;
T = SCHEDULE (T); /** Decrease temperature **/
end
CAD for VLSI 19
TimberWolf
• One of the most successful placement algorithms.
– Developed by Sechen and Sangiovanni-Vincentelli.
• Parameters used:
– Initial_temperature = 4,000,000
– Final_temperature = 0.1
– SCHEDULE(T) = α(T) x T
• α(T) specifies the cooling rate which depends on the
current temperature.
• α(T) is 0.8 when the cooling process just starts.
• α(T) is 0.95 in the medium range of temperature.
• α(T) is 0.8 again when temperature is low.
CAD for VLSI 20
The SCHEDULE Function
CAD for VLSI 21
The PERTURB Function
• New configuration is generated by making a
weighted random selection from one of the
following:
a) The displacement of a block to a new location.
b) The interchange of locations between two blocks.
c) An orientation change for a block.
– Mirror image of the block’s x-coordinate.
– Used only when a new configuration generated using
alternative (a) is rejected.
CAD for VLSI 22
The COST Function
• The cost of a solution is computed as:
COST = cost1 + cost2 + cost3
where cost1 : weighted sum of estimated length of all nets
cost2 : penalty cost for overlapping
cost3 : penalty cost for uneven length among
standard cell rows.
– Overlap is not allowed in placement.
– Computationally complex to remove all overlaps.
– More efficient to allow overlaps during intermediate
placements.
• Cost function (cost2) penalizes the overlapping.
CAD for VLSI 23
Simulated Evolution / Genetic Algorithm
• The algorithm starts with an initial set of placement
configurations.
– Called the population.
• The process is iterative, where each iteration is
called a generation.
– The individuals of a population are evaluated to measure
their goodness.
• To move from one generation to the next, three
genetic operators are used:
• Crossover
• Mutation
• Selection
CAD for VLSI 24
CROSSOVER Operator
• Choose a random cut point.
• Generate offsprings by combining the left segment
of one parent with the right segment of the other.
– Some blocks may get repeated, while some others may get
deleted.
– Various ways to deal with this problem.
• Number of times the “crossover” operator is applied
is controlled by crossover rate.
CAD for VLSI 25
MUTATION Operator
• Causes incremental random changes to an offspring
produced by crossover.
• Most common is pairwise exchange.
• Number of times this is done is controlled by
mutation rate.
CAD for VLSI 26
SELECT Operator
• Select members for crossover based on their fitness
value.
– Obtained by evaluating a cost function.
• Higher the fitness value of a solution, higher will be
the probability for selection for crossover.
CAD for VLSI 27
Force Directed Placement
• Explores the similarity between placement problem
and classical mechanics problem of a system of
bodies attached to springs.
• The blocks connected to each other by nets are
supposed to exert attractive forces on each other.
– Magnitude of this force is directly proportional to the
distance between the blocks.
• Analogous to Hooke’s law in mechanics.
– Final configuration is one in which the system achieves
equilibrium.
CAD for VLSI 28
Contd.
• A cell i connected to several cells j experiences a total
force
Fi = Σj (wij * dij)
where wij is the weight of connection between i and j
dij is the distance between i and j.
• If the cell i is free to move, it would do so in the
direction of force Fi until the resultant force on it is
zero.
• When all cells move to their zero-force target locations,
the total wire length is minimized.
CAD for VLSI 29
Contd.
• For cell i, if (xi
0, yi
0) represents the zero-force target
location, by equating the x- and y-components of
the force to zero, we get
Σj ((wij * (xj – xi
0)) = 0
Σj ((wij * (yj – yi
0)) = 0
• Solving for xi
0 and yi
0, we get
xi
0 = (Σj (wij * xj)) / (Σj wij)
yi
0 = (Σj (wij * yj)) / (Σj wij)
• Care should be taken to avoid assigning more than
one cell to the same location.
CAD for VLSI 30
Example
CAD for VLSI 31
Force Directed Approach for
Constructive Placement
• The basic approach can be generalized for
constructive placement.
– Starting with some initial placement, one module is
selected at a time, and its zero-force location computed.
– The process can be iterated to improve upon the solution
obtained.
– The order of the cells can be random or driven by some
heuristic.
• Select the cell for which Fi is maximum.
CAD for VLSI 32
Breuer’s Algorithm
• Partitioning technique used to generate placement.
• The given circuit is repeatedly partitioned into two
sub-circuits.
– At each level of partitioning, the available layout area is
partitioned into horizontal and vertical subsections
alternately.
– Each of the sub-circuits is assigned to a subsection.
– Process continues till each sub-circuit consists of a single
gate, and has a unique place on the layout area.
CAD for VLSI 33
Contd.
• Different sequences of cut lines used:
1. Cut Oriented Min-Cut Placement
2. Quadrature Placement
3. Bisection Placement
4. Slice Bisection Placement
• These are illustrated diagrammatically.
CAD for VLSI 34
Illustration
4
3
2
1
1
3
2b
2a
4
3
4b4a
2b
1b
2b
2a2a 1a
6b56a
2
1
Cut-
Oriented
Slice
BisectionBisection
Quadrature
CAD for VLSI 35
Terminal Propagation Algorithm
• Partitioning algorithms merely reduce net cut.
• Direct use of partitioning algorithms would increase
net length.
– Also increases congestion in the channels.
• To prevent this, terminal propagation is used.
– When a net connecting two terminals is cut, a dummy
terminal is propagated to the nearest pin on the boundary.
– When this dummy terminal is generated, the partitioning
algorithm will not assign the two terminals in each partition
into different partitions, as this would not result in a
minimum cut.
CAD for VLSI 36
Illustration :: Terminal Propagation
BB
A
B
A
A
B
A
:: Dummy terminal :: Terminal
CAD for VLSI 37
Cluster Growth
• In this constructive placement algorithm, bottom-
up approach is used.
• Blocks are placed sequentially in a partially
completed layout.
– The first block (seed) is usually placed by the user.
– Other blocks are selected and placed one by one.
• Selection of blocks is usually based on
connectivity with placed blocks.
CAD for VLSI 38
Contd.
• Layouts produced are not usually good.
– Does not take into account the interconnections and other
circuit features.
• Useful for generating initial placements.
– For iterative placement algorithms.
CAD for VLSI 39
Algorithm Cluster_Growth
begin
B = set of blocks to be placed;
Select a seed block S from B;
Place S in the layout;
B = B – S;
while (B ≠ φ) do
begin
Select a block X from B;
Place X in the layout;
B = B – X;
end;
end
CAD for VLSI 40
Performance Driven Placement
• The delay at chip level plays an important role in
determining the performance of the chip.
– Depends on interconnecting wires.
• As the blocks in a circuit becomes smaller and
smaller:
– The size of the chip decreases.
– Interconnection delay becomes a major issue in high-
performance circuits.
• Placement algorithms for high-performance chips:
– Allow routing of nets within timing constraints.
CAD for VLSI 41
Contd.
• Two major categories of algorithms:
1. Net-based approach
• Try to route the nets to meet the timing constraints on
the individual nets instead of considering paths.
• The timing requirement for each net has to be decided
by the algorithm.
• Usually a pre-timing analysis generates the bounds on
the net-lengths which must be satisfied during
placement.
2. Path-based approach
• Critical paths in the circuit are considered.
• Try to place the blocks in a manner that the path length
is within the timing constraint.

More Related Content

What's hot

Vlsi interview questions compilation
Vlsi interview questions compilationVlsi interview questions compilation
Vlsi interview questions compilationRajesh M
 
crosstalk minimisation using vlsi
crosstalk minimisation using vlsicrosstalk minimisation using vlsi
crosstalk minimisation using vlsisubhradeep mitra
 
Clock Tree Timing 101
Clock Tree Timing 101Clock Tree Timing 101
Clock Tree Timing 101Silicon Labs
 
Placement and algorithm.
Placement and algorithm.Placement and algorithm.
Placement and algorithm.Ashish Singh
 
Analog Layout and Process Concern
Analog Layout and Process ConcernAnalog Layout and Process Concern
Analog Layout and Process Concernasinghsaroj
 
Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows Olivier Coudert
 
ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)Sudhanshu Janwadkar
 
Flip Chip technology
Flip Chip technologyFlip Chip technology
Flip Chip technologyMantra VLSI
 
Topograhical synthesis
Topograhical synthesis   Topograhical synthesis
Topograhical synthesis Deiptii Das
 
Understanding cts log_messages
Understanding cts log_messagesUnderstanding cts log_messages
Understanding cts log_messagesMujahid Mohammed
 
VLSI Physical Design Flow(http://www.vlsisystemdesign.com)
VLSI Physical Design Flow(http://www.vlsisystemdesign.com)VLSI Physical Design Flow(http://www.vlsisystemdesign.com)
VLSI Physical Design Flow(http://www.vlsisystemdesign.com)VLSI SYSTEM Design
 
Physical design-complete
Physical design-completePhysical design-complete
Physical design-completeMurali Rai
 
Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)shaik sharief
 
Lecture20 asic back_end_design
Lecture20 asic back_end_designLecture20 asic back_end_design
Lecture20 asic back_end_designHung Nguyen
 
Analog Layout design
Analog Layout design Analog Layout design
Analog Layout design slpinjare
 

What's hot (20)

ZERO WIRE LOAD MODEL.pptx
ZERO WIRE LOAD MODEL.pptxZERO WIRE LOAD MODEL.pptx
ZERO WIRE LOAD MODEL.pptx
 
Vlsi interview questions compilation
Vlsi interview questions compilationVlsi interview questions compilation
Vlsi interview questions compilation
 
crosstalk minimisation using vlsi
crosstalk minimisation using vlsicrosstalk minimisation using vlsi
crosstalk minimisation using vlsi
 
Clock Tree Timing 101
Clock Tree Timing 101Clock Tree Timing 101
Clock Tree Timing 101
 
VLSI routing
VLSI routingVLSI routing
VLSI routing
 
Placement and algorithm.
Placement and algorithm.Placement and algorithm.
Placement and algorithm.
 
Analog Layout and Process Concern
Analog Layout and Process ConcernAnalog Layout and Process Concern
Analog Layout and Process Concern
 
Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows Timing and Design Closure in Physical Design Flows
Timing and Design Closure in Physical Design Flows
 
ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)ASIC design Flow (Digital Design)
ASIC design Flow (Digital Design)
 
Flip Chip technology
Flip Chip technologyFlip Chip technology
Flip Chip technology
 
Topograhical synthesis
Topograhical synthesis   Topograhical synthesis
Topograhical synthesis
 
Understanding cts log_messages
Understanding cts log_messagesUnderstanding cts log_messages
Understanding cts log_messages
 
VLSI Physical Design Flow(http://www.vlsisystemdesign.com)
VLSI Physical Design Flow(http://www.vlsisystemdesign.com)VLSI Physical Design Flow(http://www.vlsisystemdesign.com)
VLSI Physical Design Flow(http://www.vlsisystemdesign.com)
 
Physical design-complete
Physical design-completePhysical design-complete
Physical design-complete
 
Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)Multi mode multi corner (mmmc)
Multi mode multi corner (mmmc)
 
Powerplanning
PowerplanningPowerplanning
Powerplanning
 
Placement
PlacementPlacement
Placement
 
Lecture20 asic back_end_design
Lecture20 asic back_end_designLecture20 asic back_end_design
Lecture20 asic back_end_design
 
Pd flow i
Pd flow iPd flow i
Pd flow i
 
Analog Layout design
Analog Layout design Analog Layout design
Analog Layout design
 

Viewers also liked

Tclsesion13 20 dtv1273g la carta misterriosa
Tclsesion13 20 dtv1273g la carta misterriosaTclsesion13 20 dtv1273g la carta misterriosa
Tclsesion13 20 dtv1273g la carta misterriosaJaneth Como
 
Design pattern module 1
Design pattern module 1Design pattern module 1
Design pattern module 1Andrii Hladkyi
 
Short CV of prof. mitra, 2015 16
Short CV of prof. mitra, 2015 16Short CV of prof. mitra, 2015 16
Short CV of prof. mitra, 2015 16Abhijit Mitra
 
Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...
Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...
Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...contactOpinionWay
 
Розв"язування задач
Розв"язування задачРозв"язування задач
Розв"язування задачsveta7940
 
Abordaje A la institución Educativa Nacional "Zea"
Abordaje A la institución Educativa Nacional "Zea"Abordaje A la institución Educativa Nacional "Zea"
Abordaje A la institución Educativa Nacional "Zea"Jorman garcia
 
Definiendo la filosofia basica 2 de 4
Definiendo la filosofia basica 2 de 4Definiendo la filosofia basica 2 de 4
Definiendo la filosofia basica 2 de 4PIMENTEL CONSULTORIA
 
Fi̇nansman kaynaklari
Fi̇nansman kaynaklariFi̇nansman kaynaklari
Fi̇nansman kaynaklariİlker YILDIZ
 
ppt on Recruitment & Selection Process
ppt on Recruitment & Selection Processppt on Recruitment & Selection Process
ppt on Recruitment & Selection ProcessBEC DOMS
 
1 introduction to vlsi physical design
1 introduction to vlsi physical design1 introduction to vlsi physical design
1 introduction to vlsi physical designsasikun
 
Xilinx interview questions and answers
Xilinx interview questions and answersXilinx interview questions and answers
Xilinx interview questions and answersRyanGiggs99
 
Vlsi physical design
Vlsi physical designVlsi physical design
Vlsi physical designI World Tech
 
Floorplanning in physical design
Floorplanning in physical designFloorplanning in physical design
Floorplanning in physical designMurali Rai
 
Nvidia interview questions and answers
Nvidia interview questions and answersNvidia interview questions and answers
Nvidia interview questions and answersselinasimpson15
 
53 Intel interview questions and answers pdf
53 Intel interview questions and answers pdf53 Intel interview questions and answers pdf
53 Intel interview questions and answers pdfpetlatas
 

Viewers also liked (19)

Tclsesion13 20 dtv1273g la carta misterriosa
Tclsesion13 20 dtv1273g la carta misterriosaTclsesion13 20 dtv1273g la carta misterriosa
Tclsesion13 20 dtv1273g la carta misterriosa
 
Design pattern module 1
Design pattern module 1Design pattern module 1
Design pattern module 1
 
Short CV of prof. mitra, 2015 16
Short CV of prof. mitra, 2015 16Short CV of prof. mitra, 2015 16
Short CV of prof. mitra, 2015 16
 
Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...
Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...
Opinion Way pour Délits d'Opinion - Baromètre Les Français et les sondages - ...
 
Lenguas extranjeras
Lenguas extranjerasLenguas extranjeras
Lenguas extranjeras
 
Presentación2 acabao
Presentación2 acabaoPresentación2 acabao
Presentación2 acabao
 
Розв"язування задач
Розв"язування задачРозв"язування задач
Розв"язування задач
 
Abordaje A la institución Educativa Nacional "Zea"
Abordaje A la institución Educativa Nacional "Zea"Abordaje A la institución Educativa Nacional "Zea"
Abordaje A la institución Educativa Nacional "Zea"
 
Definiendo la filosofia basica 2 de 4
Definiendo la filosofia basica 2 de 4Definiendo la filosofia basica 2 de 4
Definiendo la filosofia basica 2 de 4
 
Fi̇nansman kaynaklari
Fi̇nansman kaynaklariFi̇nansman kaynaklari
Fi̇nansman kaynaklari
 
ppt on Recruitment & Selection Process
ppt on Recruitment & Selection Processppt on Recruitment & Selection Process
ppt on Recruitment & Selection Process
 
1 introduction to vlsi physical design
1 introduction to vlsi physical design1 introduction to vlsi physical design
1 introduction to vlsi physical design
 
Vlsi design-styles
Vlsi design-stylesVlsi design-styles
Vlsi design-styles
 
Xilinx interview questions and answers
Xilinx interview questions and answersXilinx interview questions and answers
Xilinx interview questions and answers
 
Vlsi physical design
Vlsi physical designVlsi physical design
Vlsi physical design
 
Floorplanning in physical design
Floorplanning in physical designFloorplanning in physical design
Floorplanning in physical design
 
Nvidia interview questions and answers
Nvidia interview questions and answersNvidia interview questions and answers
Nvidia interview questions and answers
 
53 Intel interview questions and answers pdf
53 Intel interview questions and answers pdf53 Intel interview questions and answers pdf
53 Intel interview questions and answers pdf
 
Low power vlsi design
Low power vlsi designLow power vlsi design
Low power vlsi design
 

Similar to 09 placement

Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Hemant Jha
 
Lecture24 clockpower routing
Lecture24 clockpower routingLecture24 clockpower routing
Lecture24 clockpower routingfreeloadtailieu
 
Clustering of graphs and search of assemblages
Clustering of graphs and search of assemblagesClustering of graphs and search of assemblages
Clustering of graphs and search of assemblagesData-Centric_Alliance
 
maths_ presentation.pptx
maths_ presentation.pptxmaths_ presentation.pptx
maths_ presentation.pptxMoinPasha12
 
Vlsi physical design automation on partitioning
Vlsi physical design automation on partitioningVlsi physical design automation on partitioning
Vlsi physical design automation on partitioningSushil Kundu
 
Ram minimum spanning tree
Ram   minimum spanning treeRam   minimum spanning tree
Ram minimum spanning treeRama Prasath A
 
201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture SearchDaeJin Kim
 
L3-.pptx
L3-.pptxL3-.pptx
L3-.pptxasdq4
 
Oxford 05-oct-2012
Oxford 05-oct-2012Oxford 05-oct-2012
Oxford 05-oct-2012Ted Dunning
 
A two equation VLES turbulence model with near-wall delayed behaviour
A two equation VLES turbulence model with near-wall delayed behaviourA two equation VLES turbulence model with near-wall delayed behaviour
A two equation VLES turbulence model with near-wall delayed behaviourApplied CCM Pty Ltd
 
Paper study: Learning to solve circuit sat
Paper study: Learning to solve circuit satPaper study: Learning to solve circuit sat
Paper study: Learning to solve circuit satChenYiHuang5
 
SYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptx
SYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptxSYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptx
SYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptxSaiDhanushM
 

Similar to 09 placement (20)

Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
 
Floor planning ppt
Floor planning pptFloor planning ppt
Floor planning ppt
 
Lecture24 clockpower routing
Lecture24 clockpower routingLecture24 clockpower routing
Lecture24 clockpower routing
 
Clustering of graphs and search of assemblages
Clustering of graphs and search of assemblagesClustering of graphs and search of assemblages
Clustering of graphs and search of assemblages
 
maths_ presentation.pptx
maths_ presentation.pptxmaths_ presentation.pptx
maths_ presentation.pptx
 
Vlsi physical design automation on partitioning
Vlsi physical design automation on partitioningVlsi physical design automation on partitioning
Vlsi physical design automation on partitioning
 
Ram minimum spanning tree
Ram   minimum spanning treeRam   minimum spanning tree
Ram minimum spanning tree
 
201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search201907 AutoML and Neural Architecture Search
201907 AutoML and Neural Architecture Search
 
L3-.pptx
L3-.pptxL3-.pptx
L3-.pptx
 
Oxford 05-oct-2012
Oxford 05-oct-2012Oxford 05-oct-2012
Oxford 05-oct-2012
 
A two equation VLES turbulence model with near-wall delayed behaviour
A two equation VLES turbulence model with near-wall delayed behaviourA two equation VLES turbulence model with near-wall delayed behaviour
A two equation VLES turbulence model with near-wall delayed behaviour
 
ACM 2013-02-25
ACM 2013-02-25ACM 2013-02-25
ACM 2013-02-25
 
Paper study: Learning to solve circuit sat
Paper study: Learning to solve circuit satPaper study: Learning to solve circuit sat
Paper study: Learning to solve circuit sat
 
SYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptx
SYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptxSYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptx
SYSTOLIC ARCH IN COMPUTER OPERATING SYSTEM.pptx
 
eeca
eecaeeca
eeca
 
Discretization.pptx
Discretization.pptxDiscretization.pptx
Discretization.pptx
 
Parallel Algorithms
Parallel AlgorithmsParallel Algorithms
Parallel Algorithms
 
07 mesh
07 mesh07 mesh
07 mesh
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 

Recently uploaded

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineeringmalavadedarshan25
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 

Recently uploaded (20)

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Internship report on mechanical engineering
Internship report on mechanical engineeringInternship report on mechanical engineering
Internship report on mechanical engineering
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 

09 placement

  • 2. CAD for VLSI 2 Introduction • A very important step in physical design cycle. – A poor placement requires larger area. – Also results in performance degradation. • It is the process of arranging a set of modules on the layout surface. – Each module has fixed shape and fixed terminal locations. – A subset of modules may have pre-assigned positions (e.g., I/O pads).
  • 3. CAD for VLSI 3 The Placement Problem • Inputs: – A set of modules with • well-defined shapes • fixed locations of pins. – A netlist. • Requirements: – Find locations for each module so that no two modules overlap. – The placement is routable. • Objectives: – Minimize layout area. – Reduce the length of critical nets. – Completion of routing.
  • 4. CAD for VLSI 4 Placement Problems at Different Levels 1. System-level placement – Place all the PCBs together such that • Area occupied is minimum • Heat dissipation is within limits. 2. Board-level placement – All the chips have to be placed on a PCB. • Area is fixed • All modules of rectangular shape – Objective is to • Minimize the number of routing layers • Meet system performance requirements.
  • 5. CAD for VLSI 5 3. Chip-level placement – Normally, floorplanning / placement carried out along with pin assignment. – Limited number of routing layers (2 to 4). • Bad placements may be unroutable. • Can be detected only later (during routing). • Costly delays in design cycle. – Minimization of area.
  • 6. CAD for VLSI 6 Problem Formulation • Notations: B1,B2,…, Bn : modules/blocks to be placed wi, hi : width and height of Bi, 1 ≤ i ≤ n N={N1,N2,…,Nm} : set of nets (i.e. the netlist) Q={Q1,Q2,…,Qk} : rectangular empty spaces for routing Li : estimated length of net Ni, 1 ≤ i ≤ m
  • 7. CAD for VLSI 7 Contd. • The problem Find rectangular regions R={R1,R2,...Rn} for each of the blocks such that • Block Bi can be placed in region Ri. • No two rectangles overlap, Ri∩Rj = Φ. • Placement is routable (Q is sufficient to route all nets). • Total area of rectangle bounding R and Q is minimized. • Total wire length ΣLi is minimized. • For high performance circuits, max {Li | i=1,2,…,m} is minimized. • General problem is NP-complete. • Algorithms used are heuristic in nature.
  • 9. CAD for VLSI 9 Interconnection Topologies • The actual wiring paths are not known during placement. – For making an estimation, a placement algorithm needs to model the topology of the interconnection nets. • An interconnection graph structure is used. • Vertices are terminals, and edges are interconnections.
  • 10. CAD for VLSI 10 Estimation of Wirelength • The speed and quality of estimation has a drastic effect on the performance of placement algorithms. – For 2-terminal nets, we can use Manhattan distance as an estimate. – If the end co-ordinates are (x1,y1) and (x2,y2), then the wire length L = ⎥ x1 – x2 ⎥ + ⎥ y1 – y2⎥ • How to estimate length of multi-terminal nets?
  • 11. CAD for VLSI 11 Modeling of Multi-terminal Nets 1. Complete Graph • nC2 = n(n-1)/2 edges for a n-pin net. • A tree has (n-1) edges which is 2/n times the number of edges of the complete graph. • Length is estimated as 2/n times the sum of the edge weights. 2. Minimum Spanning Tree • Commonly used structure. • Branching allowed only at pin locations. • Easy to compute.
  • 12. CAD for VLSI 12 Contd. 3. Rectangular Steiner Tree • A Steiner tree is the shortest route for connecting a set of pins. • A wire can branch from any point along its length. • Problem of finding Steiner tree is NP-complete. 4. Semi Perimeter • Efficient and most widely used. • Finds the smallest bounding rectangle that encloses all the pins of the net to be connected. • Estimated wire length is half the perimeter of this rectangle. • Always underestimates the wire length for congested nets.
  • 13. CAD for VLSI 13 Example Complete Graph Minimum Spanning Tree Semi PerimeterSteiner Tree
  • 14. CAD for VLSI 14 Design Style Specific Issues • Full Custom – Placing a number of blocks of various shapes and sizes within a rectangular region. – Irregularity of block shapes may lead to unused areas. • Standard Cell – Minimization of the layout area means: • Minimize sum of channel heights. • Minimize width of the widest row. • All rows should have equal width. – Over-the-cell routing leads to almost “channel-less” standard cell designs.
  • 15. CAD for VLSI 15 • Gate Arrays – The problem of partitioning and placement are the same in this design style. – For FPGA’s, the partitioned sub-circuit may be a complex netlist. • Map the netlist to one or more basic blocks (placement).
  • 16. CAD for VLSI 16 Classification of Placement Algorithms Placement Algorithms OtherSimulation Based Partitioning Based Simulated Annealing Simulated Evolution Force Directed Breuer’s Algorithm Terminal Propagation Cluster Growth Force Directed
  • 17. CAD for VLSI 17 Simulated Annealing • Simulation of the annealing process in metals or glass. – Avoids getting trapped in local minima. – Starts with an initial placement. – Incremental improvements by exchanging blocks, displacing a block, etc. – Moves which decrease cost are always accepted. – Moves which increase cost are accepted with a probability that decreases with the number of iterations. • Timberwolf is one of the most successful placement algorithms based on simulated annealing.
  • 18. CAD for VLSI 18 Simulated Annealing Algorithm Algorithm SA_Placement begin T = initial_temperature; P = initial_placement; while ( T > final_temperature) do while (no_of_trials_at_each_temp not yet completed) do new_P = PERTURB (P); ΔC = COST (new_P) – COST (P); if (ΔC < 0) then P = new_P; else if (random(0,1) > exp(ΔC/T)) then P = new_P; T = SCHEDULE (T); /** Decrease temperature **/ end
  • 19. CAD for VLSI 19 TimberWolf • One of the most successful placement algorithms. – Developed by Sechen and Sangiovanni-Vincentelli. • Parameters used: – Initial_temperature = 4,000,000 – Final_temperature = 0.1 – SCHEDULE(T) = α(T) x T • α(T) specifies the cooling rate which depends on the current temperature. • α(T) is 0.8 when the cooling process just starts. • α(T) is 0.95 in the medium range of temperature. • α(T) is 0.8 again when temperature is low.
  • 20. CAD for VLSI 20 The SCHEDULE Function
  • 21. CAD for VLSI 21 The PERTURB Function • New configuration is generated by making a weighted random selection from one of the following: a) The displacement of a block to a new location. b) The interchange of locations between two blocks. c) An orientation change for a block. – Mirror image of the block’s x-coordinate. – Used only when a new configuration generated using alternative (a) is rejected.
  • 22. CAD for VLSI 22 The COST Function • The cost of a solution is computed as: COST = cost1 + cost2 + cost3 where cost1 : weighted sum of estimated length of all nets cost2 : penalty cost for overlapping cost3 : penalty cost for uneven length among standard cell rows. – Overlap is not allowed in placement. – Computationally complex to remove all overlaps. – More efficient to allow overlaps during intermediate placements. • Cost function (cost2) penalizes the overlapping.
  • 23. CAD for VLSI 23 Simulated Evolution / Genetic Algorithm • The algorithm starts with an initial set of placement configurations. – Called the population. • The process is iterative, where each iteration is called a generation. – The individuals of a population are evaluated to measure their goodness. • To move from one generation to the next, three genetic operators are used: • Crossover • Mutation • Selection
  • 24. CAD for VLSI 24 CROSSOVER Operator • Choose a random cut point. • Generate offsprings by combining the left segment of one parent with the right segment of the other. – Some blocks may get repeated, while some others may get deleted. – Various ways to deal with this problem. • Number of times the “crossover” operator is applied is controlled by crossover rate.
  • 25. CAD for VLSI 25 MUTATION Operator • Causes incremental random changes to an offspring produced by crossover. • Most common is pairwise exchange. • Number of times this is done is controlled by mutation rate.
  • 26. CAD for VLSI 26 SELECT Operator • Select members for crossover based on their fitness value. – Obtained by evaluating a cost function. • Higher the fitness value of a solution, higher will be the probability for selection for crossover.
  • 27. CAD for VLSI 27 Force Directed Placement • Explores the similarity between placement problem and classical mechanics problem of a system of bodies attached to springs. • The blocks connected to each other by nets are supposed to exert attractive forces on each other. – Magnitude of this force is directly proportional to the distance between the blocks. • Analogous to Hooke’s law in mechanics. – Final configuration is one in which the system achieves equilibrium.
  • 28. CAD for VLSI 28 Contd. • A cell i connected to several cells j experiences a total force Fi = Σj (wij * dij) where wij is the weight of connection between i and j dij is the distance between i and j. • If the cell i is free to move, it would do so in the direction of force Fi until the resultant force on it is zero. • When all cells move to their zero-force target locations, the total wire length is minimized.
  • 29. CAD for VLSI 29 Contd. • For cell i, if (xi 0, yi 0) represents the zero-force target location, by equating the x- and y-components of the force to zero, we get Σj ((wij * (xj – xi 0)) = 0 Σj ((wij * (yj – yi 0)) = 0 • Solving for xi 0 and yi 0, we get xi 0 = (Σj (wij * xj)) / (Σj wij) yi 0 = (Σj (wij * yj)) / (Σj wij) • Care should be taken to avoid assigning more than one cell to the same location.
  • 30. CAD for VLSI 30 Example
  • 31. CAD for VLSI 31 Force Directed Approach for Constructive Placement • The basic approach can be generalized for constructive placement. – Starting with some initial placement, one module is selected at a time, and its zero-force location computed. – The process can be iterated to improve upon the solution obtained. – The order of the cells can be random or driven by some heuristic. • Select the cell for which Fi is maximum.
  • 32. CAD for VLSI 32 Breuer’s Algorithm • Partitioning technique used to generate placement. • The given circuit is repeatedly partitioned into two sub-circuits. – At each level of partitioning, the available layout area is partitioned into horizontal and vertical subsections alternately. – Each of the sub-circuits is assigned to a subsection. – Process continues till each sub-circuit consists of a single gate, and has a unique place on the layout area.
  • 33. CAD for VLSI 33 Contd. • Different sequences of cut lines used: 1. Cut Oriented Min-Cut Placement 2. Quadrature Placement 3. Bisection Placement 4. Slice Bisection Placement • These are illustrated diagrammatically.
  • 34. CAD for VLSI 34 Illustration 4 3 2 1 1 3 2b 2a 4 3 4b4a 2b 1b 2b 2a2a 1a 6b56a 2 1 Cut- Oriented Slice BisectionBisection Quadrature
  • 35. CAD for VLSI 35 Terminal Propagation Algorithm • Partitioning algorithms merely reduce net cut. • Direct use of partitioning algorithms would increase net length. – Also increases congestion in the channels. • To prevent this, terminal propagation is used. – When a net connecting two terminals is cut, a dummy terminal is propagated to the nearest pin on the boundary. – When this dummy terminal is generated, the partitioning algorithm will not assign the two terminals in each partition into different partitions, as this would not result in a minimum cut.
  • 36. CAD for VLSI 36 Illustration :: Terminal Propagation BB A B A A B A :: Dummy terminal :: Terminal
  • 37. CAD for VLSI 37 Cluster Growth • In this constructive placement algorithm, bottom- up approach is used. • Blocks are placed sequentially in a partially completed layout. – The first block (seed) is usually placed by the user. – Other blocks are selected and placed one by one. • Selection of blocks is usually based on connectivity with placed blocks.
  • 38. CAD for VLSI 38 Contd. • Layouts produced are not usually good. – Does not take into account the interconnections and other circuit features. • Useful for generating initial placements. – For iterative placement algorithms.
  • 39. CAD for VLSI 39 Algorithm Cluster_Growth begin B = set of blocks to be placed; Select a seed block S from B; Place S in the layout; B = B – S; while (B ≠ φ) do begin Select a block X from B; Place X in the layout; B = B – X; end; end
  • 40. CAD for VLSI 40 Performance Driven Placement • The delay at chip level plays an important role in determining the performance of the chip. – Depends on interconnecting wires. • As the blocks in a circuit becomes smaller and smaller: – The size of the chip decreases. – Interconnection delay becomes a major issue in high- performance circuits. • Placement algorithms for high-performance chips: – Allow routing of nets within timing constraints.
  • 41. CAD for VLSI 41 Contd. • Two major categories of algorithms: 1. Net-based approach • Try to route the nets to meet the timing constraints on the individual nets instead of considering paths. • The timing requirement for each net has to be decided by the algorithm. • Usually a pre-timing analysis generates the bounds on the net-lengths which must be satisfied during placement. 2. Path-based approach • Critical paths in the circuit are considered. • Try to place the blocks in a manner that the path length is within the timing constraint.