Force Directed Mongrel with
Physical Net Constraints
Sung-Woo Hur
Dong-A University
Tung Cao
Intel Corporation
Karthik Rajagopal Intel Corporation
Amit Chowdhary
Intel Corporation
Vladimir Tiourin
Intel Corporation
Bill Halpin
Intel Corporation/
Syracuse University
Yegna Parasuram
FD-Mongrel Key Ideas
New detailed placer
Combination of Kraftwerk and Mongrel
Kraftwerk’s forces guide Mongrel ripple move
Adds net constraint concept to ripple move
Result: Force Directed Mongrel
“Force Directed” (Kraftwerk) Overview
Described by Eisenmann and Johannes in DAC 1998
Leading technique for industry and academic placers
Uses
cell forces to spread instances
Optimizes wirelength and forces simultaneously
Iterative and smooth spreading
Very good wire length quality
Easy to add timing convergence functionality
Kraftwerk Net Constraints variant (ISPD2003)
Good
timing driven results
Mongrel Overview
Described by Hur and Lillis in ICCAD 2000
Good wire length, but not timing driven
Generates complete global and legal placement
Collection of optimization techniques
Relaxation-based
local search (RBLS)
Optimal interleaving
Uses Ripple moves to resolve cell overlaps
Uses grid placement approach
Optimizes
along max-gain monotone path
Moves from high congestion to low congestion
Animation: Mongrel Ripple Move
Observations
KraftwerkNC’s forces are good for global placement
Force concept: global clues on spreading
Allow for smooth iterative flow
Net constraints: effective for timing driven
placement
but, KraftwerkNC force’s are bad for detail placement
Forces
are not as effective at detailed level
Overlap
removal requires larger forces
Reduced optimization contribution
Long time to reduce fine grained cell overlaps
Uses “linearized” quadratic net model
Intuition
Strengths of KraftwerkNC and Mongrel are
complementary
Mongrel’s strength is detailed placement
Ripple
move can efficiently remove local congestion
Has accurate instance congestion picture
Uses accurate bounding box model
Optimal
Interleaving is a very effective final placer
Replace Kraftwerk’s final spreading with Mongrel
Improve
quality
Reduce runtime
Observations
Mongrel legalization
Causes
significant perturbation given rough placement
Degrades timing
Lacks global congestion view in Ripple moves
Use Kraftwerk forces to direct ripple move
Algorithm overview
Compute
Spreading
Forces
Gross overlaps
Sufficiently
spread?
Small overlaps
Meet net
constraints
legal
Kraftwerk
spreading
Done
FD-Mongrel
Ripple Move
Contributions of this work
Force-based ripple move
Global
cell congestion view
Uses same force formulation as Kraftwerk
Controlled movement
Net Constraints in Ripple move
Reject
moves that would degrade net constraints
Result: Force Directed Mongrel
Force Directed Mongrel
Two grids:
Coarse
Directs and control optimization on the fine grid
Direct search start/end based on congestion/forces
Forces are computed coarse grid
Fine
force grid
grid
Used for ripple movements
Iterative flow
In
single iteration cells can only move to adjacent
coarse bins
Synchronizes forces and moves
Ripple move may stop at intermediate fine bin
Animation: FD-Mongrel Ripple Move
FD-Mongrel: High level flow
Initial placement
Bins superimposed
Compute force
After FD-Mongrel
Displacement
Experimental Results
Compared to KraftwerkNC (ISPD ’03)
Metrics
Run
time
Wire length measured by half perimeter of net’s pins
Worst negative slack (wns)
Total negative slack (tns)
Experimental Circuits
Design
Number of
cells
Number of
nets
testcase1
6223
7296
testcase2
6039
7081
testcase3
5010
5855
testcase4
4905
5735
testcase5
3399
4150
testcase6
3374
4122
Runtime
Runtime Comparison
40
Runtime (in minutes)
35
30
25
KraftwerkNC
20
Our flow
15
10
5
0
testcase1
testcase2
testcase3 testcase4
testcase5
testcase6
Wirelength Results
Wirelength Comparison
900000
Wirelength (in microns)
800000
700000
600000
500000
KraftwerkNC
400000
Our flow
300000
200000
100000
0
testcase1
testcase2
testcase3
testcase4
testcase5
testcase6
Worst and Total Negative Slack
Worst and Total Negative Slack Results
% Improvement over KraftwerkNC
40.00%
35.00%
30.00%
25.00%
TNS
20.00%
WNS
15.00%
10.00%
5.00%
0.00%
testcase1
testcase2
testcase3
testcase4
testcase5
testcase6
Conclusion
New detailed placement approach
Combines strengths of Kraftwerk and Mongrel
Removes cell overlaps at the end of global placement
Reduces timing degradation
Reduces cell perturbation
Thank you!
What do we mean by congestion?
Not routing congestion!
Cell density
Backups
Contributions of this work
Force-based ripple move
Uses
Force formulation from Kraftwerk
Uses Mongrel’s max gain monotone path formulation
Direct search start/end based on congestion/forces
Has
global view of design’s congestion
Controlled spreading based on coarse grid
Use
iterative flow
Cell movement in iteration is limited to neighboring bin
Net Constraints in Ripple move
Reject
moves that would degrade net constraints
FD-Mongrel: High level flow
Initial placement
Bins superimposed
Compute force
Displacement
After FD-Mongrel
Algorithm overview
Initial Placement
Create bins
Compute force
No
No
Any congested force bins ?
Yes
Any force bin has
congested fine bin?
Yes
Determine a target force bin
Ripple move cells within the
Find a most congested fine
force bin
bin in the source force bin
Find a most congested fine
bin in the target force bin
Ripple move cell from source
fine bin to target fine bin
New placement
procedure FD-Mongrel
2. input: global placement P, density threshold value Dth
3. output: new global placement P’
4. begin
5.
while (there is a bin B such that d(B) > Dth w.r.t. P) {
6.
Determine force for each bin in the coarse grid
7.
P resolve-congestion(P, Dth)
8.
}
9.
for (each bin S that has an over-congested fine bin) {
10.
move-cells(S, S) // move cells within the bin S
11.
}
12.
return new placement
13. end
Force creation
Adopt four requirements for spreading force (from
Eisenmann paper)
The force that directs the ripple move of cells are
computed at the center of the coarse bin
Timing Results
Circuit speed limited by maximum path delay
Net delays dominating
Optimization potential: Reduction of net delay
Total Delay
zero length delay
Interconnect delay
Optimization potential
Constraint Modeling
Introduce 4 variables for each net constraint
Form
the net bounding box
Upper y
UpperY
LowerY
LowerX
UpperX
Bounding box half perimeter
= (UpperX – LowerX) + (UpperY- LowerY)
<= constraint bound
FD-Mongrel key ideas
Combination of Kraftwerk and Mongrel
1. procedure FD-Mongrel
Uses calculated forces from Kraftwerk to guide
Mongrel ripple move
2. input: global placement P, density threshold value Dth
3. output: new global placement P’
4. begin
1. 5.procedure
FD-Mongrel
while (there
is a bin B such that d(B) > Dth w.r.t. P) {
2. input: global placement P, density threshold value Dth
the coarse grid
Result: Force Directed Mongrel
Determine
for each
3. 6.output: new
globalforce
placement
P’ bin in
4. 7.begin P resolve-congestion(P, Dth)
5. 8. while
} (there is a bin B such that d(B) > Dth w.r.t. P) {
6. 9.
Determine
force
for each
binover-congested
in the coarse gridfine bin) {
for
(each bin
S that
has an
P
resolve-congestion(P,
Dth)cells within the bin S
move-cells(S,
S) // move
7. 10.
8. 11. } }
9. 12. forreturn
(each new
bin Splacement
that has an over-congested fine bin) {
10.13. end
move-cells(S, S) // move cells within the bin S
11. }
12.
return new placement
13. end
What is a Net Constraint?
Physical upper bound on the half perimeter of a net.
Meeting net constraint if:
The
half perimeter of the all net terminals is <= bound.
Violating net constraint if:
The
half perimeter of the all net terminals is > bound.
References
Glossary
Mongrel Overview
Very good wire length results, but no timing driven
capabilities
Generates complete global and legal placement from
scratch
Collection of optimization techniques
•
RBLS
•
•
Uses grid placement approach
Sub-circuit extraction
Optimal relaxed placement
Ripple moves along max-gain monotone path
FM partitioner
Optimal Interleaving
Mongrel Overview (con’d)
Uses Ripple moves to resolve cell overlaps
4
stages
Resolve over congestion
– Ripple move from high congestion to low congestion
Resolve under congestion
– Ripple move from high congestion to low congestion
Remove inter-rowsite congestion
Legalize within each rowsite
Animation
Move
of
FD-Mongrel
Ripple
Intuitions
Strengths of KraftwerkNC and Mongrel are
complementary
KraftwerkNC’s strength is timing driven
global placement
Net
constraints: effective for timing driven placement
Force concept: gives good clues on spreading
Mongrel’s strength is detailed placement and
legalization
Ripple
move technique can efficiently remove local
congestion
Uses accurate bounding box model
Has accurate instance congestion picture
Optimal
Interleaving is a very effective final placer
Observations
Kraftwerk
After
rough global placement is achieved, Kraftwerk
spends long time trying to reduce fine grained cell
overlaps
Overlap removal requires larger forces which reduce
optimization contribution
Uses “linearized” quadratic net model
Mongrel
Lacks
global congestion view in Ripple moves
Causes significant perturbation given rough placement
Ripple legalization creates even cell density
throughout chip
Goals
Timing-driven Kraftwerk with net constraints
Generates
rough global placement
Good timing
Force-directed Mongrel to resolve localized cell
congestion
optimize
wirelength and timing
Probable Mongrel Moves
© Copyright 2026 Paperzz