Flip-flop clustering by weighted K-means algorithm

This paper presents a novel flip-flop clustering and relocation framework to help reduce the overall chip power consumption. Given an initial legalized placement, our goal is to reduce the wirelength of the clock network by reducing distance between flip-flops and their drivers, while minimize the disturbance of original placement result. The idea is to form flip-flops into clusters, such that all flip-flops within each cluster can be placed near a single clock buffer and connected by a simple routing structure. Therefore, overall clock network wirelength can be greatly reduced and significant power savings can be achieved. In particular, we propose a modified K-means algorithm which effectively assigns flops into clusters at the clustering step. Then, at the relocation step, flops are actually relocated and regularly structured clusters are formed. Our framework is evaluated on real industrial benchmarks. We compare our framework with a flow without flop clustering and an industrial window based flop clustering flow. Experimental results show our framework can achieve significant dynamic power savings while has less disturbance of the original placement.

[1]  Yongqiang Lyu,et al.  Navigating registers in placement for clock network minimization , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[2]  Anil K. Jain Data clustering: 50 years beyond K-means , 2008, Pattern Recognit. Lett..

[3]  Chih-Cheng Hsu,et al.  Post-Placement Power Optimization With Multi-Bit Flip-Flops , 2011, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[4]  Anil K. Jain Data clustering: 50 years beyond K-means , 2010, Pattern Recognit. Lett..

[5]  Malgorzata Marek-Sadowska,et al.  Buffer sizing for clock power minimization subject to general skew constraints , 2004, Proceedings. 41st Design Automation Conference, 2004..

[6]  David Z. Pan,et al.  Clock power minimization using structured latch templates and decision tree induction , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[7]  Sariel Har-Peled,et al.  How Fast Is the k-Means Method? , 2005, SODA '05.

[8]  S. P. Lloyd,et al.  Least squares quantization in PCM , 1982, IEEE Trans. Inf. Theory.

[9]  Wenting Hou,et al.  Automatic register banking for low-power clock trees , 2009, 2009 10th International Symposium on Quality Electronic Design.

[10]  Yiyu Shi,et al.  Analytical Clustering Score with Application to Post-Placement Multi-Bit Flip-Flop Merging , 2015, ISPD.

[11]  Massoud Pedram,et al.  Clock-gating and its application to low power design of sequential circuits , 2000 .

[12]  王紹桓 Power-Driven Flip-Flop Merging and Relocation , 2011 .

[13]  Yu-Ming Yang,et al.  INTEGRA: Fast Multibit Flip-Flop Clustering for Clock Power Saving , 2012, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  Trevor Mudge,et al.  Combined dynamic voltage scaling and adaptive body biasing for lower power microprocessors under dynamic workloads , 2002, ICCAD 2002.

[15]  Dongjin Lee,et al.  Obstacle-Aware Clock-Tree Shaping During Placement , 2012, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Igor L. Markov,et al.  Physical Synthesis with Clock-Network Optimization for Large Systems on Chips , 2011, IEEE Micro.

[17]  Dongjin Lee,et al.  Obstacle-Aware Clock-Tree Shaping During Placement , 2012, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[18]  Andrew B. Kahng,et al.  Power-aware placement , 2005, Proceedings. 42nd Design Automation Conference, 2005..