EDA Lab., Tsinghua University

Slides:



Advertisements
Similar presentations
2.6. B OUNDING V OLUME H IERARCHIES Overview of different forms of bounding volume hierarchy.
Advertisements

An Effective Floorplanning Algorithm in Mixed Mode Placement Integrated with Rectilinear- Shaped Optimization for Soft Blocks Changqi Yang, Xianlong Hong,
3D-STAF: Scalable Temperature and Leakage Aware Floorplanning for Three-Dimensional Integrated Circuits Pingqiang Zhou, Yuchun Ma, Zhouyuan Li, Robert.
Natarajan Viswanathan Min Pan Chris Chu Iowa State University International Symposium on Physical Design April 6, 2005 FastPlace: An Analytical Placer.
A Size Scaling Approach for Mixed-size Placement Kalliopi Tsota, Cheng-Kok Koh, Venkataramanan Balakrishnan School of Electrical and Computer Engineering.
Ripple: An Effective Routability-Driven Placer by Iterative Cell Movement Xu He, Tao Huang, Linfu Xiao, Haitong Tian, Guxin Cui and Evangeline F.Y. Young.
1 Physical Hierarchy Generation with Routing Congestion Control Chin-Chih Chang *, Jason Cong *, Zhigang (David) Pan +, and Xin Yuan * * UCLA Computer.
Consistent Placement of Macro-Blocks Using Floorplanning and Standard-Cell Placement Saurabh Adya Igor Markov (University of Michigan)
FastPlace: Efficient Analytical Placement using Cell Shifting, Iterative Local Refinement and a Hybrid Net Model FastPlace: Efficient Analytical Placement.
Early Days of Circuit Placement Martin D. F. Wong Department of Electrical and Computer Engineering University of Illinois at Urbana-Champaign.
Content Based Image Clustering and Image Retrieval Using Multiple Instance Learning Using Multiple Instance Learning Xin Chen Advisor: Chengcui Zhang Department.
Routability-Driven Blockage-Aware Macro Placement Yi-Fang Chen, Chau-Chin Huang, Chien-Hsiung Chiou, Yao-Wen Chang, Chang-Jen Wang.
Multiobjective VLSI Cell Placement Using Distributed Simulated Evolution Algorithm Sadiq M. Sait, Mustafa I. Ali, Ali Zaidi.
Layer Assignment Algorithm for RLC Crosstalk Minimization Bin Liu, Yici Cai, Qiang Zhou, Xianlong Hong Tsinghua University.
Threshold Voltage Assignment to Supply Voltage Islands in Core- based System-on-a-Chip Designs Milestone 1: Gall Gotfried Steven Beigelmacher
Generating Supply Voltage Islands In Core-based System-on-Chip Designs Final Presentation Steven Beigelmacher Gall Gotfried 04/26/2005.
Reconfigurable Computing (EN2911X, Fall07)
Hard Optimization Problems: Practical Approach DORIT RON Tel Ziskind room #303
Merging Synthesis With Layout For Soc Design -- Research Status Jinian Bian and Hongxi Xue Dept. Of Computer Science and Technology, Tsinghua University,
Processing Rate Optimization by Sequential System Floorplanning Jia Wang 1, Ping-Chih Wu 2, and Hai Zhou 1 1 Electrical Engineering & Computer Science.
Chip Planning 1. Introduction Chip Planning:  Deals with large modules with −known areas −fixed/changeable shapes −(possibly fixed locations for some.
Improved results for a memory allocation problem Rob van Stee University of Karlsruhe Germany Leah Epstein University of Haifa Israel WADS 2007 WAOA 2007.
A Topology-based ECO Routing Methodology for Mask Cost Minimization Po-Hsun Wu, Shang-Ya Bai, and Tsung-Yi Ho Department of Computer Science and Information.
Placement by Simulated Annealing. Simulated Annealing  Simulates annealing process for placement  Initial placement −Random positions  Perturb by block.
Global Routing.
Pattern Selection based co-design of Floorplan and Power/Ground Network with Wiring Resource Optimization L. Li, Y. Ma, N. Xu, Y. Wang and X. Hong WuHan.
Techniques for Analysis and Calibration of Multi- Agent Simulations Manuel Fehler Franziska Klügl Frank Puppe Universität Würzburg Lehrstuhl für Künstliche.
CAD for Physical Design of VLSI Circuits
TSV-Aware Analytical Placement for 3D IC Designs Meng-Kai Hsu, Yao-Wen Chang, and Valerity Balabanov GIEE and EE department of NTU DAC 2011.
March 20, 2007 ISPD An Effective Clustering Algorithm for Mixed-size Placement Jianhua Li, Laleh Behjat, and Jie Huang Jianhua Li, Laleh Behjat,
An Efficient Clustering Algorithm For Low Power Clock Tree Synthesis Rupesh S. Shelar Enterprise Microprocessor Group Intel Corporation, Hillsboro, OR.
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,
Modern Floor-planning Based on B ∗ -Tree and Fast Simulated Annealing Paper by Chen T. C. and Cheng Y. W (2006) Presented by Gal Itzhak
Gordian Placement Tool: Quadratic and Linear Problem Formulation Ryan Speelman Jason Gordon Steven Butt EE 201A
Analytic Placement. Layout Project:  Sending the RTL file: −Thursday, 27 Farvardin  Final deadline: −Tuesday, 22 Ordibehesht  New Project: −Soon 2.
Quadratic and Linear WL Placement Using Quadratic Programming: Gordian & Gordian-L Shantanu Dutt ECE Dept., Univ. of Illinois at Chicago Acknowledgements:
Regularity-Constrained Floorplanning for Multi-Core Processors Xi Chen and Jiang Hu (Department of ECE Texas A&M University), Ning Xu (College of CST Wuhan.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
Massachusetts Institute of Technology 1 L14 – Physical Design Spring 2007 Ajay Joshi.
Tao Lin Chris Chu TPL-Aware Displacement- driven Detailed Placement Refinement with Coloring Constraints ISPD ‘15.
Deferred Decision Making Enabled Fixed- Outline Floorplanner Jackey Z. Yan and Chris Chu DAC 2008.
A Memetic Algorithm for VLSI Floorplanning Maolin Tang, Member, IEEE, and Xin Yao, Fellow, IEEE IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART.
Clock-Tree Aware Placement Based on Dynamic Clock-Tree Building Yanfeng Wang, Qiang Zhou, Xianlong Hong, and Yici Cai Department of Computer Science and.
A Stable Fixed-outline Floorplanning Method Song Chen and Takeshi Yoshimura Graduate School of IPS, Waseda University March, 2007.
Simultaneous Analog Placement and Routing with Current Flow and Current Density Considerations H.C. Ou, H.C.C. Chien and Y.W. Chang Electronics Engineering,
Tetris Agent Optimization Using Harmony Search Algorithm
LEMAR: A Novel Length Matching Routing Algorithm for Analog and Mixed Signal Circuits H. Yao, Y. Cai and Q. Gao EDA Lab, Department of CS, Tsinghua University,
Unified Quadratic Programming Approach for Mixed Mode Placement Bo Yao, Hongyu Chen, Chung-Kuan Cheng, Nan-Chi Chou*, Lung-Tien Liu*, Peter Suaris* CSE.
Solution approaches to the marker layout problem. Kath Dowsland Gower Optimal Algorithms Ltd.
An Exact Algorithm for Difficult Detailed Routing Problems Kolja Sulimma Wolfgang Kunz J. W.-Goethe Universität Frankfurt.
Interconnect Characteristics of 2.5-D System Integration Scheme Yangdong (Steven) Deng & Wojciech P. Maly
Dept. of Electronics Engineering & Institute of Electronics National Chiao Tung University Hsinchu, Taiwan ISPD’16 Generating Routing-Driven Power Distribution.
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
A Snap-On Placement Tool Israel Waldman. Introduction.
RTL Design Flow RTL Synthesis HDL netlist logic optimization netlist Library/ module generators physical design layout manual design a b s q 0 1 d clk.
Prediction of Interconnect Net-Degree Distribution Based on Rent’s Rule Tao Wan and Malgorzata Chrzanowska- Jeske Department of Electrical and Computer.
VLSI Physical Design Automation
Partial Reconfigurable Designs
HeAP: Heterogeneous Analytical Placement for FPGAs
Incremental Placement Algorithm for Field Programmable Gate Arrays
Buffer Insertion with Adaptive Blockage Avoidance
2 University of California, Los Angeles
Jinghong Liang,Tong Jing, Xianlong Hong Jinjun Xiong, Lei He
Sheqin Dong, Song Chen, Xianlong Hong EDA Lab., Tsinghua Univ. Beijing
Performance Optimization Global Routing with RLC Crosstalk Constraints
Placement and Routing With Congestion Control
○ Hisashi Shimosaka (Doshisha University)
BIRCH: Balanced Iterative Reducing and Clustering Using Hierarchies
Scalable light field coding using weighted binary images
Reconfigurable Computing (EN2911X, Fall07)
Presentation transcript:

EDA Lab., Tsinghua University Recursively Combine Floorplan and Q-Place in Mixed Mode Placement Based on Circuit‘s Variety of Block Configuration Changqi Yang, Xianlong Hong, Hannah Honghua Yang CS, Tsinghua University Strategic CAD Labs, Intel Corporation 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Content Motivation Previous Works Recursive Design Flow Algorithms for Each Stage Experimental Results Future Work The content of our presentation is listed as following: first, we will introduce the motivation about our work. After briefly discussing the previous work, we will introduce the recursive design flow in MMP. Then, algorithms for each design stage will be described. The final parts include the experimental results and our future work 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Motivation(1) Integrating more circuit cells into one chip results in MMP(Mixed Mode Placement) problem: Large scale: vast amount of cells. Mixed mode: standard cells mixed with blocks to be placed simultaneously. Floorplan and Placement technology Floorplan: can obtain overlap-free layout but is the great time-consumer. Placement: especially Q-Place, can obtain results rapidly, but it is difficult for eliminating overlap between standard cells and blocks. As we have known, because of SOC, Integrating more circuit cells into one chip results in MMP(Mixed Mode Placement) problem. There are two unique features in MMP: first is its large scale. Generally said, the number of cells is very vast. The other feature is that standard cells mixed with blocks should be placed simultaneously, this is so-called mixed mode. Currently, there are two main categories of placement algorithms: floorplan and placement. Floorplan can obtain overlap-free layout but it is the great time-consumer. And Placement, especially Q-Place, can obtain results rapidly, but it is difficult for eliminating overlap between standard cells and blocks. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Motivation(2) The common solution is the combination of floorplan and Q-Place according to circuit hierarchy. Another challenge for MMP is the variety of circuit: The number of blocks varies from 2 to 424 The size of blocks varies from 57 to 2045 Circuits #cells #macro blocks #nets Block area (average) /cell area(average) block2 7094 2 10049 2045 block6 5996 6 872 block8 5662 8 695 block9 5895 9 751 block10 5151 10 676 ibm01 12260 246 14111 57 ibm02 19071 271 19584 157 ibm11 69779 373 81454 166 ibm13 83285 424 99666 162 The common approach for solving MMP problem is to combine floorplan and placement together according to circuit hierarchy. However, there is still another challenge for MMP. It is the variety of circuit. Here, the variety of circuit is limited to the fact that the number and the size of blocks are much different in different circuits. Here is the table of characteristics for our test cases. Obviously, the number of blocks varies from 2 to 424, and the size of blocks varies from 57 to 2045 which is evaluated by the ratio of average block area and average cell area. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Previous Works HMMP: presented by W.M Wu in ASICON2001 Generate two-level hierarchy of circuit. Floorplan on block-level and Q-Place on cell-level. Fit the block configuration of few but huge blocks. Fall into the trap of running out of time in floorplan when there are too many blocks in circuit. MPG-MS presented by J. Cong in ASP-DAC03 Generate multi-level hierarchy. Bin-Based floorplan is adopted recursively on each level. Fit the block configuration of numerous blocks Consume much time because of its Simulated Annealing Process with high time complexity. In the previous work, W.M.Wu presented an algorithm named HMMP in ASICON2001. In his paper, the algorithm generates two-level hierarchy of circuit and then adopts floorplan algorithm on block-level which is followed by the Q-place on cell-level. His approach can fit the block configuration of few but huge blocks. However, it will fall into the trap of running out of time in floorplan when there are too many blocks in circuit. J.Cong presented a multi-level algorithm named MPG-MS for MMP. In his approach, multi-level hierarchy is generated and the bin-based floorplan is adopted recursively on each level. It can fit the block configuration of numerous blocks. But it will consume much time because of its simulated annealing process with high time complexity. 2/16/2019 EDA Lab., Tsinghua University

Recursive Design Flow(1) The presented design flow RMMP completes placement through 3 routines: partition, global placement and detailed placement. In partition phase, the components and netlist of circuit are analyzed and partitioned recursively to construct a tree of virtual blocks with the root pointing to the whole circuit on the chip. An operation-selector will travel along through all the nodes of the tree in the order of Deep First Search (DFS). For the virtual block composed by physical blocks or by child virtual blocks, the selector performs a fixed-outline floorplanner Otherwise, it performs a Q-Place based placer. Our design flow named RMMP for MMP is based on recursive partitioning. It completes placement through 3 routines: partition, global placement and detailed placement. In partition phase, the components and netlist of circuit are analyzed and partitioned recursively to construct a tree of virtual blocks with the root pointing to the whole circuit on the chip. An operation-selector will travel along through all the nodes of the tree in the order of Deep First Search (DFS). For the virtual block composed by physical blocks or by child virtual blocks, the selector performs a fixed-outline floorplanning. Otherwise, it performs a Q-Place based placer. 2/16/2019 EDA Lab., Tsinghua University

Recursive Design Flow(2) physical block standard cell Partition Floorplan Q-Place Detailed Placement virtual block This is the figure of our design flow. The cells are organized as tree of virtual blocks. And partition, floorplan, Q-place are performed on different nodes respectively. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Algorithms(1) Partition Use a bottom up cluster algorithm to create clusters each of which consists of no more than C standard cells: C-control parameter Use a top down partition algorithm to create partitions For each of its virtual blocks, involve partition process recursively For the partition stage, we Use a bottom up cluster algorithm to create clusters each of which consists of no more than C standard cells. Here C is the control parameter which can control the size of clusters. Then we Use a top down partition algorithm to create partitions and convert all partitions into virtual blocks. For each of its virtual blocks, partition process is involved recursively. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Algorithms(2) Global Placement The global placement is the combination of a floorplanner and a Q-Placer which are performed in the charge of an operation selector. Fixed-Outline Floorplanning =WL*Len+WR1*Max(ChipX-PX,0)+WR2*Max(ChipY-PY,0), where Len is the total net length, PX and PY are width and height in packing, ChipX and ChipY are width and height of the chip, wL and wR1 as well as wR2 are weighting factors. CBL – representation of encode for block placement. the area packed by blocks does not have to be minimized as an objective Our global placement consists of two sub-algorithms: a fixed-outline floorplanning and a Q-Place. They are performed in the charge of an operation selector. Because the floorplanning is done within a fixed area, the area packed by blocks does not have to be minimized as an objective. Therefore, we use the following equation as the objective in floorplanning. Here Len is the total net length, PX and PY are width and height in packing, ChipX and ChipY are width and height of the chip, wL and wR1 as well as wR2 are weighting factors. CBL is adopted as the representation of encode for block placement and the optimization process is based on Simulated Annealing Process. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Algorithms(3) Q-Place The objective function is the minimization for the total wire length: The constraints make the cells distribute on the chip evenly A faster and more stable method FaSa based on Lagrange multipliers to solve the linear constraint quadratic programming problem For the Q-Place, The objective function is the minimization for the total wire length. We use the following constraints which can make the cells distribute on the chip evenly. A faster and more stable method FaSa based on Lagrange multipliers to solve the linear constraint quadratic programming problem. So our solution is stable and effective. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Algorithm(4) Detailed Placement: After global placement in all virtual blocks, all standard cells and original blocks are placed near their optimum locations. Detailed placement is adopted throughout the whole chip with original blocks aligned to rows previously. An initial detailed placement is obtained by inheriting cell positions determined by global placement procedure. Row assignment refining and row evening are interlaced to reduce the wire length in y and x directions respectively, while rows evening and overlap removing are also done within interlaces. The wire length is reduced further by cell permutation within rows. After global placement in all virtual blocks, all standard cells and original blocks are placed near their optimum locations. Detailed placement is adopted throughout the whole chip with original blocks aligned to rows previously. There are 3 steps to complete the detailed placement: first, An initial detailed placement is obtained by inheriting cell positions determined by global placement procedure; second, Row assignment refining and row evening are interlaced to reduce the wire length in y and x directions respectively, while rows evening and overlap removing are also done within interlaces. Finally, The wire length is reduced further by cell permutation within rows. 2/16/2019 EDA Lab., Tsinghua University

Experimental Results(1) Circuits #cells #macro blocks #nets Block area (average) /cell area(average) block2 7094 2 10049 2045 block6 5996 6 872 block8 5662 8 695 block9 5895 9 751 block10 5151 10 676 ibm01 12260 246 14111 57 ibm02 19071 271 19584 157 ibm11 69779 373 81454 166 ibm13 83285 424 99666 162 In our experiments, we test different cases. The characteristics about these cases are shown in this table. We have seen it in previous slide. 2/16/2019 EDA Lab., Tsinghua University

Experimental Results(2) RMMP VS HMMP Circuits HMMP RunTime (s) RMMP RunTime(s) WireLen (um) Impr (wl %) block2 358 320 1.692e6 1.662e6 1.74 block6 382 335 2.029e6 1.556e6 23.30 block8 405 314 2.022e6 1.522e6 24.74 block9 388 295 2.345e6 2.216e6 5.5 block10 356 2.131e6 1.376e6 35.4 First, we compare our algorithm RMMP with HMMP presented before. The running time is comparable. But, the wire length is reduced much. The significant improvement is up to 35% on some case. 2/16/2019 EDA Lab., Tsinghua University

Experimental Results(3) RMMP VS MPG-MS Circuits MPG WireLen (um) RMMP RunTime (min) Impr (time %) ibm01 3.01e6 3.16e6 18 11 39 ibm02 7.42e6 6.59e6 32 44 ibm11 2.65e7 2.96e7 112 82 27 ibm13 3.77e7 3.94e7 151 105 30 Secondly, we compare RMMP with MGP-MS we mentioned before. Because of the combination of floorplan and Q-place, our approach is much faster than MGP-MS. The improvement about speed can reach 30%-40%. However, the wire length in RMMP is kept comparable as that in MGP-MS. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Future Work Improve algorithms for each stage. Support polygon in block floorplan Support placement in rectilinear-region Optimum timing delay in MMP. In our future work, we will improve algorithms for each stage of MMP design flow. For example, we will support polygon in block floorplan and support placement in rectilinear-region. And, our previous work was taking wire length as the objective of optimization which is not enough. We will optimum timing behavior in MMP which has great challenges. 2/16/2019 EDA Lab., Tsinghua University

EDA Lab., Tsinghua University Thank you 2/16/2019 EDA Lab., Tsinghua University