porosity aware buffered steiner tree construction c. alpert g. gandham s. quay ibm corp m. hrkic...

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

Upload: abdiel-baber

Post on 28-Mar-2015

218 views

Category:

Documents


2 download

TRANSCRIPT

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Thank you !Thank you !