Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic...
-
Upload
abdiel-baber -
Category
Documents
-
view
218 -
download
2
Transcript of Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic...
![Page 1: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/1.jpg)
Porosity Aware Buffered Steiner Tree Construction
C. Alpert
G. Gandham
S. Quay
IBM Corp
M. Hrkic
Univ Illinois ChicagoJ. Hu
Texas A&M Univ
![Page 2: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/2.jpg)
Outline
• Introduction and Previous work
• Problem formulation
• Algorithm
• Experimental results
• Conclusion
![Page 3: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/3.jpg)
Buffer Insertion• Improve timing
– Drive long wire– Shield load from critical
path
• Van Ginneken’s Algorithm– Given tree topology
fixed– Find optimal solution at
fast speed
Slack
Slack
73
-23
24
33
![Page 4: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/4.jpg)
If There Are Big Blockages
![Page 5: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/5.jpg)
Previous Works
• Simultaneous tree construction and buffer insertion– Buffer blockage driven
• Recursively Merging and Embedding [Cong and Yuan, DAC 00]• Graph-based[Tang, et al., ICCAD 01]
– General purpose• SP-Tree [Hrkic and Lillis, ISPD 02]
– Excellent solution quality– High complexity
• Sequential tree construction + buffer insertion– Adaptive blockage avoidance [Hu, et al., ISPD 02]– Very good solution quality– Practical computation speed
![Page 6: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/6.jpg)
If There Are Many Small Blockages
![Page 7: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/7.jpg)
Porosity Has to Be Considered
• Handling small blockages will slow down computation
• Buffers in dense region may be spiraled away
• No previous work handles porosity directly
![Page 8: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/8.jpg)
Express Porosity through Tile Graph
• For a tile g• A(g): tile area• a(g): usage area• d(g) = a(g)/A(g)• Porosity cost is
d2(g), if a buffer is placed in g
![Page 9: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/9.jpg)
Problem Formulation
Porosity-aware Buffered Steiner Tree Problem: • Given
– A net N = {v0, v1, …, vn} – Load capacitance c(vi) and required arrival time q(vi) – Tile graph G(VG, EG)
• Construct a Steiner tree T(V,E), such that– Required arrival time q(vi) are satisfied– Total porosity cost is minimized
![Page 10: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/10.jpg)
Observation• Easy to deal with node-to-node path
– Congestion can be avoided by rerouting without affecting timing
• Hard to deal with Steiner nodes– Moving Steiner nodes may degrade timing
![Page 11: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/11.jpg)
Basic Strategy
• Construct a timing driven Steiner tree regardless porosity
• Adjust Steiner nodes simultaneously with length-based buffer insertion– Adjustment range need to be restrained– A Steiner node is moved only when buffer
is needed there
![Page 12: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/12.jpg)
Length-based Buffer Insertion
• Simple buffering following rule of thumb– Capacitance load of driver/buffer ≤ bound L
• Dynamic programming based• Candidate solutions are propagated bottom-
up• Solution is characterized by load capacitance
and porosity cost• A solution with greater load and cost will be
pruned
L=2
![Page 13: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/13.jpg)
Plate: Adjustment Range
![Page 14: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/14.jpg)
Plate-based Adjustment
• Integrate Steiner node adjustment with length-based buffer insertion
• Solutions are propagated to and merged at each tile of plate
• Merged solutions at each tile are further propagated toward root
• Alternative topologies are generated • A candidate topology is selected only when it
is a part of min cost solution at the root
![Page 15: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/15.jpg)
Example of Plate-based Adjustment
![Page 16: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/16.jpg)
Methodology Flow
1. Timing-driven Steiner tree ( C-Tree )
2. Plate-based adjustment
3. Local blockage avoidance• If a wire overlaps with blockage, it is
rerouted within its local tiles
4. Van Ginneken style buffer insertion
![Page 17: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/17.jpg)
Experiment Setup
• Integrated into industrial physical synthesis tool
• Three testcases – 155K, 334K and 293K cells– 209, 848 and 18 blockages
• FOM(Figure of Merit): cumulative negative slacks
![Page 18: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/18.jpg)
Experimental Result on FOM
-30000
-25000
-20000
-15000
-10000
-5000
0
test1 test2 test3
baseline
porosity
![Page 19: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/19.jpg)
Resource Consumption
• Wirelength increase is negligible
• CPU time is increased significantly– Plate-based adjustment– More candidate buffer locations enabled
![Page 20: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/20.jpg)
Result Regardless Porosity
![Page 21: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/21.jpg)
Result Considering Porosity
![Page 22: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/22.jpg)
Conclusion
• Porosity need to be considered in buffered Steiner tree construction
• A plate-based adjustment in a four-stage flow is proposed as a solution
• Experiments with industrial physical synthesis system show encouraging results
![Page 23: Porosity Aware Buffered Steiner Tree Construction C. Alpert G. Gandham S. Quay IBM Corp M. Hrkic Univ Illinois Chicago J. Hu Texas A&M Univ.](https://reader035.fdocuments.net/reader035/viewer/2022081518/551656dc550346a2698b4e02/html5/thumbnails/23.jpg)
Thank you !Thank you !