A net reduction-based clustering preprocessing algorithm - ISPD 2006
A Net-Reduction based Clustering Preprocessing Algorithm Jianhua Li, - - PowerPoint PPT Presentation
A Net-Reduction based Clustering Preprocessing Algorithm Jianhua Li, - - PowerPoint PPT Presentation
A Net-Reduction based Clustering Preprocessing Algorithm Jianhua Li, Laleh Behjat University of Calgary, Calgary, Canada ISPD April 12, 2006 A net reduction-based clustering preprocessing algorithm - ISPD 2006 Outline Introduction
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Outline
- Introduction
- Background and Motivation
- Net Cluster Algorithm
- Numerical Results
- Conclusions and Future Work
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Introduction
Exponential growth in circuit sizes, Moore’s Law
1995 2000 2005 2010 2015 Year of Production - Source: ITRS report 2005 1E-2 1E+1 1E+0 1E-1 1E+2 Product Function/chip Giga transistors
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Introduction
Multi-level platforms have become the norm
Consist of three phases: a) Clustering b) Initial partitioning placement or routing a) Refinement partitioning, placement or routing refinement Original circuit clustering Original circuit
A net reduction-based clustering preprocessing algorithm - ISPD 2006
- Introduction
- Background and Motivation
- Net Cluster Algorithm
- Numerical Results
- Conclusions and Future Work
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Background - Clustering algorithms
Numerous clustering algorithms:
- Edge coarsening (EC)
- First Choice (FC)
- Edge Separability (ESC)
- Fine Granularity (FG)
- Best-Choice
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Background - Clustering algorithms
General Drawbacks:
- Lack of global view
- Ignore natural cluster
- Limitations on number of cells in a cluster
- Edge based - need clique transformation
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Background - Example
4 and 5 can be put together based on local connectivity
4 5
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Background - Example
1 2 3 4 5 7 6 8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Background - Example
1 2 3 4 5 7 6 8
Eliminating natural clusters in the circuit
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Background - motivations
- Capture the natural clusters in a circuit
- Focus on clustering nets versus cells
- Avoid using a clique model
- Remove hard limitations on the number of
cells in a cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
- Introduction
- Background and Motivation
- Net Cluster Algorithm
- Numerical Results
- Conclusions and Future Work
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Outline
Input: flat netlist Output: clustered netlist For all cells:
- 1. Initial Cluster Identification
- 2. Initial Cluster refinement
- 3. Score Calculation
Form clusters based on score
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - initial Cluster Identification
- Visit each cell as a seed cell
- Group seed cell with neighboring cells
1 2 3 4 5 n1 n2 n3 n5 n4 n6 7 6 9 8 n7 n9 n8 Cell 1 initial cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - initial Cluster Identification
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - initial Cluster Identification
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Cluster refinement
Use one-way FM to remove any cell with more connection to outside
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8 Cell 1 initial cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Cluster refinement
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Cluster refinement
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
Which clusters to choose?
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Cluster refinement
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
Let’s forget about the clusters
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Score Calculation
Nets cut: n3, n6, n7
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Score Calculation
Nets only clustered: n4, n5 n8,n9 n1,n2
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Score Calculation
Net Score Calculations: sn(n) = { # times clustered if not cut if cut
1 2 3 4 5 7 6 9 8 n1 n2 n3 n5 n4 n6 n7 n9 n8
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Cluster Formation
Cluster nets based on their score till a clustering ratio is achieved
1 2 3 6 n1 n2 n3 n6 n7 4,5 7,8,9 7 9 8 n9 n8 4 5 n4 n5
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Cluster Formation
6 n3 n6 4,5 7,8,9 1,2,3 n7
Final Clustered circuit
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Net Cluster - Discussion
Characteristics:
- Identify the natural clusters in a circuit
- Uses a simplified FM to refine clusters
- Assigns scores to nets
- Clusters nets versus cell
A net reduction-based clustering preprocessing algorithm - ISPD 2006
- Introduction
- Background and Motivation
- Net Cluster Algorithm
- Numerical Results
- Conclusions and Future Work
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Numerical Results
Tested as a preprocessing step for multilevel partitioning. Why Partitioning:
- Easy implementation
- Less parameters affecting the results
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Numerical Results
Preprocessing:
- The number of natural clusters decreases
dramatically after first few levels
6 n3 n6 4,5 7,8,9 1,2,3 n7
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Numerical Results - net cuts (1)
- 20
20 40 60 80 100 1 2 3 4 5 6 7 8 9 hMethis MLPart
Net cut comparison for ISPD 98 benchmarks
Benchmarks Difference in Average net cut compared to Net Cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Numerical Results - net cuts (2)
- 150
- 100
- 50
50 100 150 200 250 300 350 10 11 12 13 14 15 16 17 18 hMethis MLPart
Net cut comparison for ISPD 98 benchmarks
Benchmarks Difference in Average net cut compared to Net Cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Numerical Results - run times (1)
- 50
50 100 150 200 1 2 3 4 5 6 7 8 9 hMethis MLPart
Net cut comparison for ISPD 98 benchmarks
Benchmarks Difference in Average run time compared to Net Cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Numerical Results - run times (2)
- 2500
- 2000
- 1500
- 1000
- 500
500 1000 1500 10 11 12 13 14 15 16 17 18 hMethis MLPart
Net cut comparison for ISPD 98 benchmarks
Benchmarks Difference in Average run time compared to Net Cluster
A net reduction-based clustering preprocessing algorithm - ISPD 2006
Conclusions and Future Work
- Developed a deterministic clustering algorithm
- Is capable of finding the natural clusters
- Focuses on clustering nets versus cells
Future Work
- Techniques for developing initial clusters in the
lower levels
- Application to placement
A net reduction-based clustering preprocessing algorithm - ISPD 2006