Mixed-cell-height legalization considering complex minimum width constraints and half-row fragmentation effect

Mixed-cell-height legalization considering complex minimum width constraints and half-row fragmentation effect

Journal Pre-proof Mixed-cell-height legalization considering complex minimum width constraints and half-row fragmentation effect Ziran Zhu, Zhipeng Hu...

2MB Sizes 0 Downloads 3 Views

Journal Pre-proof Mixed-cell-height legalization considering complex minimum width constraints and half-row fragmentation effect Ziran Zhu, Zhipeng Huang, Peng Yang, Wenxing Zhu, Jianli Chen, Hanbin Zhou, Senhua Dons PII:

S0167-9260(19)30232-9

DOI:

https://doi.org/10.1016/j.vlsi.2019.11.008

Reference:

VLSI 1646

To appear in:

Integration

Received Date: 15 May 2019 Revised Date:

22 September 2019

Accepted Date: 16 November 2019

Please cite this article as: Z. Zhu, Z. Huang, P. Yang, W. Zhu, J. Chen, H. Zhou, S. Dons, Mixed-cellheight legalization considering complex minimum width constraints and half-row fragmentation effect, Integration (2019), doi: https://doi.org/10.1016/j.vlsi.2019.11.008. This is a PDF file of an article that has undergone enhancements after acceptance, such as the addition of a cover page and metadata, and formatting for readability, but it is not yet the definitive version of record. This version will undergo additional copyediting, typesetting and review before it is published in its final form, but we are providing this version to give early visibility of the article. Please note that, during the production process, errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain. Β© 2019 Published by Elsevier B.V.

Mixed-Cell-Height Legalization Considering Complex Minimum Width Constraints and Half-Row Fragmentation EffectI Ziran Zhu1 , Zhipeng Huang1 , Peng Yang1 , Wenxing Zhu1 , Jianli Chen1,βˆ— , Hanbin Zhou2 , and Senhua Dong2 1 Center

for Discrete Mathematics and Theoretical Computer Science, Fuzhou University, Fuzhou 350116, China 2 Empyrean Software, Inc, Beijing, 100000, China

Abstract With the increasing complexity in modern circuit designs, the 6T&6TPPNN circuits have become popular in advanced technologies for better trade-offs among routability, timing, power and performance. The 6TPPNN cells incur great challenges to layout designs, especially the legalization problem due to their complex minimum width (MW) constraints and the fragmentation effect (FE). In this paper, we address the mixed 6T&6TPPNN cell legalization problem considering both MW constraints and FE issues. Given a global placement result, we first align all cells to the correct rows/half-rows that satisfy the VDD/VSS alignment constraints, and then propose a clustering-based MW constraints solving method to eliminate all the MW violations. After that, we formulate the legalization problem with MW constraints as a quadratic programming (QP) problem, which not only satisfies the MW constraints, but also avoid causing excessive dead spaces. Finally, we integrate the FE issues into the formulated MW-aware QP model, and adopt the modulus-based matrix splitting iteration method (MMSIM) to solve the mathematical model effectively and efficiently. Experimental results show that our algorithm can resolve all MW constraints I Part of this work was presented at the 2019 China Semiconductor Technology International Conference (CSTIC), 2019. βˆ— Corresponding author: [email protected]

Preprint submitted to Journal of LATEX Templates

November 20, 2019

and mitigate the half-row fragmentation effect without any extra area overhead in a reasonable time. Keywords: 6T&6TPPNN, Minimum width (MW) constraints, Fragmentation effect, Legalization, Clustering

1. Introduction With the shrinking transistors and increasing complexity in modern circuit designs, standard cells with the same height are insufficient to meet the various design requirements [1, 2]. In order to make a better trade-offs among routability, timing, power and performance, designs with mixed-row-height 6T&6TPPNN cells become popular in advanced node technologies [3, 4], where complex 6T cells are designed as multi-row-height structure for larger drive strengths [5], while simple ones remain single-row-height structure for area efficiency [1, 6]. Besides, the 6TPPNN cells are designed to achieve both larger drive strengths and area efficiency. Although the manufacturing complexity of 6TPPNN cells are higher, the 6TPPNN cells play an important role in improving the drive strengths on critical paths. A 6TPPNN cell is double-row-height and it can reach the drive strengths of triple-row-height cell. Since the 6TPPNN cells should be aligned to the half-rows, thus may induce half-row fragmentation. If any half-row fragmentation is not eliminated, a 6TPPNN cell is no more area efficiency than a triple-row-height cell. Therefore, it is desirable to consider half-row fragmentation in mixed 6T&6TPPNN cell placement, especially the legalization problem. Furthermore, power (VDD) and ground (VSS) rails are interleaved among placement rows, and each cell must be aligned correctly such that its VDD/VSS pins match the corresponding rows [7]. A 6T cell can be aligned to dedicated rows to meet the VDD/VSS alignment requirement. However, since the 6TPPNN cells are double-row-height and include VDD/VSS pins inside the cells, the 6TPPNN cells must have half-row shift to conform to the VDD/VSS alignment constraints. Figure 1 illustrates the general 6T&6TPPNN cell structure with the VDD/VSS

2

constraints and half-row fragmentation, where cells c1 , c2 and c3 are 6T cells, and cells c4 and c5 are 6TPPNN cells. For a 6T odd-row-height cell (e.g., cell c1 or c3 ), it can be aligned to any placement row directly or by flipping vertically to satisfy the VDD/VSS constraints, due to its different types of pins at the top and bottom. In contrast, since both sides of a 6T even-row-height cell (e.g., cell c2 ) have the same type of pins (i.e., either VDD pins or VSS pins), the VDD/VSS mismatch cannot be corrected by vertical cell flipping, and thus a 6T even-row-height cell must be placed to dedicated placement row with the matched VDD/VSS rails. For a 6TPPNN cell (e.g., cell c4 or c5 ), it can be aligned to the half-rows directly or by vertical cell flipping to meet the VDD/VSS alignment constraints because it is double-row-height and includes VDD/VSS pins inside the cell. In addition, the 6TPPNN cells may induce halfrow fragmentation as shown in Figure 1. A legalizer without considering the half-row fragmentation may cause severe dead spaces, resulting in area overhead and degraded chip performance. VSS alignment violation

Half-row fragmentation

VDD

SVT

𝑐1

𝑐1

VSS 𝑐4 𝑐2

𝑐2

VDD

𝑐5

𝑐3

ULVT 6T 6TPPNN

VSS VDD alignment violation

Half-row fragmentation

Figure 1: General 6T&6TPPNN cell structure with the VDD/VSS constraints and half-row fragmentation.

In addition, in order to reduce leakage power while attaining high circuit performance, multiple threshold voltages (multi-VTs) have been widely used to balance the power consumption and timing [8]. In the general 6T&6TPPNN circuits, there are two types of VTs: ultralow threshold voltage (ULVT) and standard threshold voltage (SVT). Due to the limitations of the manufacturing

3

process and the particularity of 6TPPNN cells, the 6TPPNN cells may incur the minimum width (MW) constraints. The MW constraints specify a lower bound for the width of a 6TPPNN cell, and a 6TPPNN cell incur a MW violation if and only if its width is smaller than the specified lower bound. The MW constraints are important because small-width cells are widespread in cost-driven and lowpower designs [9, 10]. A legalizer without considering the MW constraints may violate the minimum-implant-area layer rule resulting from the limitations of patterning technologies [10]. Inserting the same VT fillers and clustering cells with the same VT are two common ways to resolve the MW violations [8, 10, 11]. For example, Figure 2(a) shows a placement of a 6T&6TPPNN design with two MW violations on 6TPPNN cells c3 and c4 . The MW violations can be fixed by inserting fillers or clustering the cells with the same VT type as shown in Figure 2(b) and 2(c), respectively. Since both mixed-cell-height 6T&6TPPNN cells and multiple VTs are significant for optimizing timing, power, and performance simultaneously, it is desirable to consider the complex MW constraints and half-row fragmentation effect in general 6T&6TPPNN circuit designs. 𝑐1

𝑐4

𝑐6

𝑐5

𝑐1

𝑐2

𝑐4

𝑐7

𝑐7 𝑐3

𝑐8

𝑐3

𝑐8

𝑐9 (a)

𝑐6

𝑐1 Area overhead

𝑐2

𝑐5

𝑐2

𝑐5

SVT

𝑐6

ULVT 6T

𝑒1 𝑐3 𝑐4

𝑐9

𝑐7

6TPPNN

𝑐8

Filler

𝑐9

MW MW violation

(c)

(b)

Figure 2: (a) A placement of a 6T&6TPPNN design with two MW violations on 6TPPNN cells c3 and c4 . (b) Inserting fillers to fix the MW violation cells directly, which incurs area overheads. (c) By using our clustering methodology, the violating 6TPPNN cells would be clustered into a new cluster without any area overhead.

4

1.1. Previous Works There are some recent state-of-the-art works handling the fundamental mixedcell-height standard cell legalization problem [12, 13, 14, 15, 7]. Wu et al. [12] presented an algorithm to legalize the designs with both single- and double-row heights, which did not consider the VDD/VSS alignment constraints. Chow et al. [13] developed a multi-row local legalization algorithm to legalize the mixed-cell-height cells one by one. The work [14] extended the single-row-cell legalizer Abacus [16] to address the mixed-cell-height legalization problem with the VDD/VSS alignment constraints. Hung et al. [15] presented a parallel legalization algorithm for the mixed-cell-height circuit designs, which is based on the network flow model and integer linear program formulation. Chen et al. [7] first formulated the mixed-cell-height legalization problem as a quadratic programming (QP) problem, and then converted the QP problem into an equivalent linear complementarity problem (LCP). Finally, they applied a modulus-based matrix splitting iteration method (MMSIM) to solve the LCP quickly. In addition to the fundamental mixed-cell-height legalization problem, there are some recent works addressed the mixed-cell-height standard cell circuit designs with various design rules and constraints in advanced node technologies [17, 10, 11, 18, 6, 19]. Lin et al. [17] considered the additional cell density and pin density for the mixed-cell-height detailed placement. Wu et al. [10] and Chen et al. [7] handled the minimum implant area constraints. Tseng et al. [18] considered mixed-cell-height legalization problem with the drain-to-drain abutment constraints, and Li et al. [6] and Zhu et al. [19] addressed the ICCAD 2017 CAD Contest problem [3], which considered the additional fence regions and routability constraints. However, none of the above previous works considered the crucial MW constraint and half-row fragmentation effect of the 6TPPNN cells. The commercial placement and routing tool handles MW constraints by inserting fillers of the same VT type at the final stage directly, this method may incur extra area overhead. Take Figure 2 for an example, where Figure 2(b) gives the initial placement with two MW violating cells c3 and c4 . For cell c3 , there are suf5

ficient whitespace for filler insertion. However, for cell c4 , the cell c5 should be pushed toward right to ensure that there are sufficient whitespace for filler insertion. Thus, if we resolve the violating cells by inserting fillers directly, there might incur area overheads as shown in Figure 2(c). In contrast, if we can fix the MW constraints by clustering cells of the same VT types, and place the cluster in a desired position, it is likely to avoid area overheads. Figure 2(d) shows the placement result after fixing the MW violating cells by our proposed method, which clustering the violating cells c3 and c4 into a new cluster and does not incur any area overhead. 1.2. Our Contributions In this paper, we address the general 6T&6TPPNN cell legalization problem considering the minimum width (MW) constraints and half-row fragmentation effect. The major contributions of our work are summarized as follows: β€’ We propose a clustering-based MW constraints solving method to eliminate all the MW violations, in which we first cluster the MW violating cells by a MW-aware cell clustering method, and then determine the desired locations for the clusters by an optimal region based method. β€’ We formulate the legalization problem with MW constraints as a quadratic programming problem, which not only satisfies the MW constraints, but also avoid causing excessive dead spaces. β€’ We present a FE-aware cell clustering in the high density areas to effectively mitigate the half-row fragmentation effect, and quantitatively define the fragmentation effect. β€’ We further integrate the FE issues into the formulated MW-aware legalization model, and adopt the modulus-based matrix splitting iteration method (MMSIM) [7] to solve the MW&FE-aware legalization problem effectively and efficiently.

6

β€’ Experimental results show that our algorithm can resolve all MW constraint and mitigate the half-row fragmentation effect without any extra area overhead in a reasonable time. The remainder of this paper is organized as follows. Section 2 gives the problem statement. Section 3 details our proposed algorithm. Section 4 gives the experimental results. Finally, we make a conclusion in Section 5.

2. Problem Statement In the general 6T&6TPPNN cell legalization problem, we are given a global placement result with n cells and m nets, and each cell is regarded as a vertex, each net is regarded as a hyperedge. Then, a hypergraph G = (C, E) is constructed, where the vertices C = {c1 , c2 , . . . , cn } represent the cells, the hyperedges E = {e1 , e2 , . . . , em } represent the nets. The Rh and Sw respectively represent the placement row height and placement site width. The placement region is a rectangular sheet with (0, 0) and (W, H) as the bottom-left and top-right corner coordinates, respectively. Let (x0i , yi0 ) be the initial bottom-left corner coordinate of cell ci , and (wi , hi ) be the width and height of this cell. Each cell has corresponding VDD/VSS pins. Let C U L , C S , C 6T and C 6T P N be the sets of ULVT, SVT, 6T and 6TPPNN cells, respectively. The minimum width Ο‰ is a given constant. The goal of the general 6T&6TPPNN cell legalization problem is to determine the best position (xi , yi ) for each cell ci such that the quality of the given global placement result is preserved as much as possible, and the following constraints are satisfied: 1) 6T cells should be aligned to the rows; 2) 6TPPNN cells should be aligned to the half-rows; 3) cells should be overlap-free; 4) cells should be placed inside the chip region; 5) cells should be located at placement sites; 6) 6TPPNN cells should meet the minimum width (MW) constraints;

7

7) cells should aligned with correct VDD/VSSs. Similar to the works [7, 16], we take the quadratic cell displacement as the objective function. Then, the general 6T&6TPPNN cell legalization problem can be formulated as follows:

min

n X (xi βˆ’ x0i )2 + (yi βˆ’ yi0 )2

(1)

i=1

s.t. 1) yi = ki Rh , ki ∈ {0, 1, 2, . . .}, for each 6T cell ci ; 2) yi =

ki Rh , ki ∈ {0, 1, 2, . . .}, for each 6TPPNN cell ci ; 2

3) xi βˆ’ xj β‰₯ wj , if x0i β‰₯ x0j ,

(1a) (1b) (1c)

for all adjacent cells i and j on the same row/half-row;

(1c)

4) 0 ≀ xi , xi + wi ≀ W, for each ci ∈ C,

(1d)

0 ≀ yi , yi + hi ≀ H, for each ci ∈ C;

(1d)

5) xi = ki0 Sw , ki0 ∈ {0, 1, 2, . . .}, for each ci ∈ C;

(1e)

6) wi1 + wi2 + Β· Β· Β· + wiul β‰₯ Ο‰, for cells ci1 , ci2 , . . . , ciul ∈ C U L /C S (1f) with the same VT type and are abutting on the same half-row; (1f) 7) cells should aligned with correct VDD/VSSs.

(1g)

The Constraint (1g) requires both 6T and 6TPPNN cells must be aligned to their correct VDD/VSS rails. Since the VDD/VSS rails of the 6TPPPNN cells are inside, we can treat the 6TPPNN cells as odd-row-height cells when considering the VDD/VSS alignment constraints. Thus, all odd-row-height cells and 6TPPNN cells can be aligned the correct VDD/VSS directly or by vertical cell flipping, while even-row-height cells except the 6TPPNN cells must be placed to dedicated rows to meet the VDD/VSS alignment constraints.

3. The Proposed Algorithm Our proposed algorithm address the general 6T&6TPPNN cell legalization problem, which considers not only VDD/VSS alignment constraints, but also 8

minimum width (MW) constraints and half-row fragmentation effect (FE). Figure 3 summarizes the overall flow of our algorithm, which consists of three major stages: (1) Cell alignment with VDD/VSS constraints; (2) Clustering-based MW/FE constraints handling; and (3) MW&FE-driven legalization. MW constraints

Global placement

VDD/VSS constraints

Cell alignment with VDD/VSS constraints Clustering-based MW/FE constraints handling MW-aware cell clustering and formulation FE-aware cell clustering and formulation

MW&FE-driven legalization MW&FE-driven QP formulation and solving MW&FE-aware cell allocation and refinement Placement result Figure 3: Framework of our algorithm.

In the first stage, we align all cells to the correct rows/half-rows that satisfy the VDD/VSS alignment constraints, while considering both cell displacement and density. The second stage includes two steps: (1) MW-aware cell clustering and formulation; (2) FE-aware cell clustering and formulation. In MW-aware cell clustering and formulation, we first cluster the MW violating cells by a MW-aware cell clustering method, and then determine the desired locations for the clusters by an optimal region based method. After that, we formulate the legalization problem with MW constraints as a quadratic programming problem, which not only satisfies the MW constraints, but also avoids causing excessive dead spaces. In FE-aware cell clustering and formulation, we present a FEaware cell clustering in high density areas to effectively mitigate the half-row FE, and quantitatively define the FE. In the last stage, we further integrate the 9

FE issues into the formulated MW-aware quadratic programming (QP) model, and adopt the modulus-based matrix splitting iteration method (MMSIM) [7] to solve the formulated MW&FE-aware QP problem effectively and efficiently. Finally, a MW&FE-aware cell allocation and refinement is presented to align cells to the placement sites and further improve the solution quality. We shall elaborate these major steps in the following subsections. 3.1. Cell Alignment with VDD/VSS Constraints In this stage, our goal is to align all cells to their correct rows/half-rows that satisfy the VDD/VSS alignment constraints by shifting cells in the vertical direction. We first assign each cell to its nearest correct rows/half-rows. More specifically, for an odd-row-height 6T cell, we assign it to the nearest rows directly or by vertical cell flipping to satisfy the VDD/VSS alignment constraints; for an even-row-height 6T cell, we assign it to the nearest dedicated rows with the matched VDD/VSS; for a 6TPPNN cell, we assign it to the nearest halfrows directly or by vertical cell flipping to satisfy the VDD/VSS alignment constraints. Although the total cell displacement in the vertical direction is minimized after aligning cells to the nearest correct rows, excessive horizontal cell displacement might be occurred when resolving the overlap in locally dense regions, and thus resulting in a degradation of the final solution quality. In order to obtain a better cell assignment, we further perform an operation to reassign cells to their desired rows/half-rows after aligning cells to the nearest correct rows/half-rows. That is, we first define a cost function for each cell ci as follows: costi = dispi + Ξ·1 Β· wli + Ξ·2 Β· deni , where dispi denotes the cell displacement of cell ci , wli is the total wirelength of the nets associated with cell ci , deni denotes the density cost, and Ξ·1 and Ξ·2 are the normalization parameters. To calculate the density cost deni , we define a window centered on cell ci . The window size is determined empirically and is set as hi Γ— 3 row height in our implementation. Then, the density cost is set to 10

deni =

Ac Aw ,

where Ac denotes the total cell area in the window and Aw is the

area of the window. After that, we sort cells by their cost in non-incremental order, and reassign cells one by one. When a cell ci is handling, other cells are regarded as fixed, and we try to assign this cell to several rows/half-rows with matched VDD/VSS and calculate the cost. Finally, we reassign cell ci to the rows/half-rows with the least cost. After this stage, the constraints (1a), (1b), and (1g) of Problem (1) are met. 3.2. Minimum Width (MW)-aware cell clustering and formulation In order to resolve the MW violations while preserving the solution quality from global placement as much as possible, we first present a MW-aware cell clustering method in this section to cluster the MW violating cells, and then determine the desired locations for the clusters. Finally, we formulate the legalization problem with MW constraints as a quadratic programming problem, which not only satisfies the MW constraints, but also avoids causing excessive dead spaces. 3.2.1. MW-aware Cell Clustering In this subsection, we present a cell clustering method to cluster each MW violating cell with other violating/non-violating cells that have the same VT type to eliminate all the MW violations, such that the constraint (1f) of Problem (1) can be met. Since there are two different VT types, we handle these two VT types independently and construct a weighted graph for each VT type as follows. For each VT type T (T is either ULVT or SVT), we first construct a graph G(V, E, W ), where each vertex vi ∈ V represents a cell with its VT type T , E is initialized to an empty set. Then, we define a search radius sr and set its size to 8 placement row height empirically in our implementation. For each MW violating cell vi ∈ V , we collect a set of cells CTi that have the same VT type within the search radius sr centered on the positions of cell vi . After that, for each vj ∈ CTi , we add the edge eij = (vi , vj ) into E, and the corresponding

11

weight between vi and vj is defined as follows: wij =

ΞΈij (|xi βˆ’ xj | + |yi βˆ’ yj |) Γ— max{hi , hj } , min{hi , hj }

(2)

where ΞΈij = 1 if both cells vi and vj are MW violating cells; otherwise, ΞΈij = 2. The |xi βˆ’ xj | + |yi βˆ’ yj | is the Manhattan distance between cells vi and vj . Obviously, the smaller weight wij between cells vi and vj , the greater probability that they should be clustered. We tend to cluster two cells that are closer to each other because it would have less disturbance to the initial placement. Besides, since the non-uniform cell heights may produce significant dead spaces, Equation (2) would prefer to cluster the cells with the same height. After the graph is constructed, we iteratively perform the following operation to eliminate the MW violations. At each iteration, we first select an edge with the minimum weight value, and then cluster the two vertices (cells/clusters) connected by the edge into a new cluster. After that, we remove the two vertices (cells/clusters) and the edges associated with them from the graph, and determine the desired position for the new cluster by Section 3.2.2. If the new cluster still does not meet the MW constraints, we will regard the cluster as a new vertex and add it into the graph, and the edges that connect the cluster and the other cells/clusters (whose distance from the cluster are less than the search radius sr) are also added into the graph. The process terminates when E is an empty set (i.e., no MW violating vertices (cells/clusters) or no other vertices (cells/clusters) within the sr range of each violating vertex (cell/cluster)). If there are still MW violating vertices (cells/clusters) after the process terminates, we further insert the same VT fillers to fixed the MW violating cells/clusters. 3.2.2. Determination of Cluster Location After clustering two cells/clusters into a new cluster, we need to determine the location of the new cluster. Inspired by the β€œoptimal region” of the works [20, 21, 10], we can find a minimum wirelength region (i.e., optimal region) for placing the cluster uk . More specifically, for a cluster uk = {c1 , c2 , . . . , cnuk }, where nuk is the number of cells in the cluster uk , assume that the other cells 12

connected to uk are fixed, we can find the cluster-based optimal region (xuk , yuk ) by solving the following optimization problem: nuk mi

(xuk , yuk ) = argmin

XX

nuk mi

|xuk βˆ’

x0i,j |

i=1 j=1

+

XX

0 |yuk βˆ’ yi,j |,

(3)

i=1 j=1

0 where mi is the number of cells that connects cell ci , and (x0i,j , yi,j ) is the cur-

rent position of the cell ci,j . Because the absolute function in Problem (3) is not differentiable everywhere, it is very hard and time-consuming to solve Problem (3) directly. Thus, we extend the median formulation in [20, 21] to obtain a minimum wirelength region for cluster uk , which provides an approximation solution for Problem (3). That is, we do the following operations. First, for each net ei,j associated with the cells in a cluster uk , we calculate a bounding box containing all cells in ei,j except the cells in the cluster uk . Then, we sort the x and y coordinates of all the bounding boxes, respectively. Finally, we calculate the medians of these x and y coordinates and obtain the optimal region. Note that we always ensures that the cells in the cluster meet the VDD/VSS alignment constraints when placing the cluster. For example, Figure 4 shows the optimal region for the cluster u1 = {c1 , c2 }. The closed dashed lines represents the three nets that connecting to the cluster u1 (i.e., cells c1 and c2 ): net e1,1 includes cells c1 , c3 and c4 ; net e1,2 includes cells c1 , c5 and c6 ; and net e2,1 includes cells c2 , c7 , c8 and c9 . The blue, purple, and green areas represent the corresponding bounding boxes of nets e1,1 , e1,2 , and e2,1 , respectively. The orange area represents the optimal region for the cluster u1 . 3.2.3. MW-aware Quadratic Programming (QP) Formulation After the MW-aware cell clustering, we need to remove overlaps among the cells/clusters while preserving the given global placement as much as possible. If we regard the minimal bounding box of each cluster as a new merged cell, then it is likely to induce excessive dead spaces in the bounding box, and thus degrading the final placement quality. Take Figure 5 for an example, where the width of 6TPPNN cell c3 is less than the given MW value Ο‰, and we clustered the cells c2 , 13

𝑐4

𝑒1,1 𝑒1 𝑐 𝑐1 2

𝑐3

Optimal region 𝑐5

π‘₯1,1 π‘₯1,2 π‘₯1,3

𝑦1,1

𝑒2,1

𝑐6 𝑒1,2

𝑐8

𝑦1,2

𝑐9

𝑦1,3 𝑦1,4 𝑦1,5

𝑐7

medians

𝑦1,6

π‘₯1,4

π‘₯1,5

π‘₯1,6

medians Figure 4: An example of cluster-based optimal region. Three nets e1,1 , e1,2 , and e2,1 are denoted by closed dashed lines. The blue, purple, and green areas represent the corresponding bounding boxes of nets e1,1 , e1,2 , and e2,1 , respectively. The orange area represent the optimal region.

c3 , c4 and c5 into a cluster through the clustering-based MW constraints solving stage. If we treat the minimal bounding box of cluster u2 = {c2 , c3 , c4 , c5 } as a new merged cell as shown in Figure 5(a), then the cells c1 and c6 will be placed outside the bounding box, and there are excessive dead spaces inside the bounding box. As a result, it might incur severe displacement, wirelength and area overheads in the final placement result. In contrast, if we only require the cells {c2 , c3 , c4 , c5 } in the cluster to be abutting in topological ordering, then the cells c1 and c6 can be placed inside the bounding box as shown in Figure 5(b). Thus, we can not only obtain a more compact result, but also avoid serious cell displacement and area overhead. Since the cells/clusters have been aligned to the correct VDD/VSS rails in the previous stage (i.e., the constraints (1a), (1b), and (1g) of Problem (1) have been met), we only move the cells/clusters horizontally in this stage. In order to eliminate the MW constraints violations while preventing the solution quality, similar to the work [7], by relaxing the right boundary constraints and placement sites alignment constraints (i.e., the constraints (1d) and (1e) of Problem (1)), we can reformulate the legalization Problem (1) with MW constraints as the

14

𝑐1

𝑒2

𝑐1

𝑐5 𝑐3

𝑐2

𝑐4

𝑐2

𝑐6

𝑐5 𝑐3

SVT ULVT

𝑐4 𝑐6

6T 6TPPNN MW

(a)

(b)

Figure 5: (a) The minimal bounding box of cluster u2 = {c2 , c3 , c4 , c5 } are regarded as a new merged cell, and then the cells c1 and c6 only can be placed outside the bounding box. (b) We only require the cells {c2 , c3 , c4 , c5 } in the cluster to be abutting in topological ordering, then the cells c1 and c6 can be placed inside the bounding box.

following quadratic programming problem: min s.t.

1 2

n P i=1

(xi βˆ’ x0i )2

xl βˆ’ xj β‰₯ wj ,

if x0l β‰₯ x0j and cl and cj are in different clusters,

for all adjacent cells cj and cl in the same row/half-row; xl βˆ’ xj = wj ,

(4)

if x0l β‰₯ x0j and cl and cj are in the same cluster,

for all adjacent cells cj and cl in the same row/half-row; x β‰₯ 0, where x0i is the initial x-position of cell ci , x0i is the current x-position of cell ci . The objective describes the sum of the squared cell displacement, and the constraints assure that not only there is no overlap between the cells, but also the adjacent cells in the same cluster are abutting. Hence, the MW constraints of 6TPPNN cells are also satisfied in this stage. 3.3. Fragmentation Effect (FE)-aware Cell Clustering and Formulation Since the 6TPPNN cells should be aligned to the half-rows, there may be many half-row fragmentation (i.e., dead spaces) in the design, resulting in area overhead and degraded chip performance. As pointed out in [14], dead spaces issue is important in legalization stage because it can make the chip area larger and the placement quality lower. Take Figure 6 as an example, where the Figure 6(a) shows the layout after the cell alignment and MW-aware cell clustering.

15

If we do not consider the half-row fragmentation effect, we may obtain the legalization result shown in Figure 6(b), which causes the severe cell displacement and area overheads. In contrast, if we move cell c3 vertically so that it is adjacent to cell c2 in the vertical direction to mitigate the half-row fragmentation effect, we can obtain a better legalization result as shown in Figure 6(c). 𝑐9

𝑐9

𝑐10

𝑐8

𝑐8

𝑐7

𝑐3

𝑐9

𝑐10 𝑐3

𝑐8

𝑐3

𝑐10 SVT

𝑐7

ULVT

𝑐7

6T

𝑐1

𝑐2

𝑐5

𝑐6

𝑐4

𝑐1

(a)

𝑐5

𝑐2

𝑐4 (b)

𝑐6

𝑐1

Half-row fragmentation

𝑐5

𝑐2

𝑐6

6TPPNN

𝑐4 (c)

Figure 6: (a) The layout after the cell alignment and MW-aware cell clustering. (b) The legalization result that the half-row fragmentation are not taken into account. (c) The legalization result that the half-row fragmentation are taken into account.

In order to mitigate the half-row fragmentation effect and obtain high-quality legalization results, we first present a FE-aware cell clustering in the high density areas, and then quantitatively define and formulate the fragmentation effect. Our FE-aware cell clustering is performed window-by-window, and the window size is determined empirically to better balance the runtime and solution quality. In order to avoid excessive cell displacement and too time-consuming, we set each window size as 8 Γ— 8 placement row height, and the high density area is defined as follows: Definition 1 (High Density Area). A high density area is a window that satisfies

AC AW

β‰₯ Ο„ , where the window size is set to 8 Γ— 8 placement row height,

AC is the total area of cells (clusters) in the window, AW is the area of this window, and Ο„ is a user-defined constant. We construct a weighted graph for each high density area, where each 6TPPNN cell/cluster in the high density area is considered as a vertex, and

16

there is an weighted edge between any two vertices. In order to determine the weight of each edge, we first temporarily cluster the two cells/clusters connected by the edge into a new cluster so that the two cells/clusters are vertically abutting, and the position of new cluster is determined based on Section 3.2.2. Then, the weight of the edge connecting the two cells/clusters is set as the difference between the total displacement of the two cells/clusters before and after the clustering. After the weighted graph is constructed, we iteratively select the two cells/clusters connected by the edge with the smallest weight to cluster them into a new cluster. Once an iteration is completed, we remove the two vertices (cells/clusters) and the edges associated with them from the weighted graph. Note that the cells/clusters are not really moved to the corresponding new positions during the computation of the weight, and only when the edge with the smallest weight is selected, the cells/clusters are actually moved to these positions.

𝑒1 𝑐1

𝑐2

Half-row fragmentation

𝑐8

𝑐6

𝑐3

𝑒1 𝑐9 𝑐7

𝑒1 𝑐1

(a)

𝑐8

𝑐3

SVT

𝑐6

𝑒2

𝑒2β€²

𝑒2 𝑐4 𝑐5

𝑐2

𝑐9

𝑐6

ULVT 6T 6TPPNN

𝑐4 𝑐5

𝑐7

(c)

(b)

Figure 7: (a) The layout before FE-aware cell clustering. (b) The weighted graph of (a). (c) The placement result after FE-aware cell clustering.

For example, Figure 7(a) shows the layout before FE-aware cell clustering, where c1 , c4 , c5 and c6 are the 6TPPNN cells, and cells c1 , c2 , c3 and cells c4 , c5 are respectively grouped into two clusters u1 and u2 in Section 3.2 to solve the MW constraints. Figure 7(b) gives the corresponding weighted graph of Figure 7(a). Assuming that the weight of the edge connecting cell c6 and cluster u2 is the smallest, then cell c6 and cluster u2 are clustered into the new 17

cluster u02 shown in Figure 7(c) to mitigate the half-row fragmentation effect. In the subsequent steps, we would not force the cells/clusters in the new cluster u02 to move as a whole. This is because treating them as a whole may reduce the flexibility and freedom of some cells, thus affecting the solution quality. See Figure 6(c) for an example, where the cells c2 and c3 are vertically adjacent and partially overlap in the horizontal direction. If we force cells c2 and c3 to completely overlap in the horizontal direction, although the half-row fragmentation effect can be minimized, it will inevitably lead to excessive area overhead and cell displacement. Therefore, in the next subsection, we will adopt a analytical method to better trade-off among the half-row fragmentation effect and other legalization objectives. Before that, we first quantitatively define the half-row fragmentation effect. We adopt the total width of half-row fragmentation to quantitatively define H the fragmentation effect. Let Oij be the horizontal overlap between 6TPPNN H cells ci and cj , i.e., Oij = max{0, min{xi + wi , xj + wj } βˆ’ max{xi , xj }}. And

the binary variable zij indicates whether cells ci and cj are vertically adjacent, that is, ο£± ο£² z = 1, ij ο£³ z = 0, ij

if yi + hi = yj ∨ yj + hj = yi , otherwise.

Then, the half-row fragmentation effect can be quantitatively calculated as follows: X

F E = SW6T P N βˆ’

H zij Oij ,

ci ,cj ∈C 6T P N

where SW6T P N is the sum of the width of all 6TPPNN cells. Since the SW6T P N is a fixed value, and we want FE to be as small as possible, we have the following objective X

max ci ,cj

H zij Oij .

(5)

∈C 6T P N

H Because the zij Oij is not differentiable, it is hard to optimize Problem (5)

directly. Furthermore, since we have aligned all cells to the correct VDD/VSS (and thus rows/half-rows) and performed the FE-aware cell clustering, we relax

18

the Problem (5) as follows: min

X

Ξ»ij (xi +

ci ,cj ∈C 6T P N

wi wj 2 βˆ’ xj βˆ’ ) , 2 2

(6)

where Ξ»ij is a constant and its value is defined as follows: ο£±   Ξ» = 1, if (yi0 + hi = yj0 ∨ yj0 + hj = yi0 )  ο£² ij and (x0i ≀ x0j ≀ x0i + wi ∨ x0j ≀ x0i ≀ x0j + wj ),    ο£³ Ξ» = 0, otherwise, ij

where

(x0i , yi0 )

is the current position of cell ci , and (wi , hi ) is the width and

height of cell ci . 3.4. MW&FE-driven Quadratic Programming (QP) Formulation and Solving In this subsection, we integrate the FE issues into the formulated MW-aware QP model, and adopt the modulus-based matrix splitting iteration method (MMSIM) [7] to solve the MW&FE-aware QP problem. Combining Problem (4) in Section 3.2.3 with Problem (6) in Section 3.3, we can further formulate the minimum width and fragmentation effect (MW&FE)aware legalization problem as follows: n

min

1 1X (xi βˆ’ x0i )2 + Ξ± 2 i=1 2

s.t. xl βˆ’ xj β‰₯ wj ,

X

Ξ»ij (xi +

ci ,cj ∈C 6T P N

wi wj 2 βˆ’ xj βˆ’ ) 2 2

if x0l β‰₯ x0j and cl and cj are in different clusters,

for all adjacent cells cj and cl in the same row/half-row; xl βˆ’ xj = wj ,

if x0l β‰₯ x0j and cl and cj are in the same cluster,

(7) (7a) (7a) (7b)

for all adjacent cells cj and cl in the same row/half-row;

(7b)

x β‰₯ 0,

(7c)

where Ξ± is a normalized factor to balance cell displacement and half-row fragmentation effect. Obviously, we can rewrite Problem (7) as follows: min

1 T 2 x Qx

s.t.

Bx β‰₯ b,

+ pT x

Dx = d, x β‰₯ 0. 19

(8)

where Q is a symmetric positive definite matrix, and if ci is a 6TPPNN cell, P then its diagonal element qi,i = 1 + Ξ± cj ∈C 6T P N Ξ»ij ; otherwise, its diagonal elements qi,i = 1. p is a vector and if ci is a 6TPPNN cell, its element pi = P βˆ’x0i + 21 Ξ± cj ∈C 6T P N Ξ»ij (wi βˆ’ wj ); otherwise, pi = βˆ’x0i . B is the constraint matrix for Equation (7a), and b is the corresponding vector. Similarly, D is the constraint matrix for Equation (7b), and d is the corresponding vector. Based on the modulus-based matrix splitting iteration method (MMSIM) presented in the work [22] for the linear complementarity problems (LCP), Chen et al. [7] proposed a MMSIM-based mixed-cell-height legalization algorithm. They first formulated the mixed-cell-height legalization problem as a QP problem, and then developed a MMSIM solver to solve the QP problem effectively and efficiently. The MMSIM solver [7] requires that the objective matrix of a QP is symmetric positive definite and the constraint matrix is full row rank to ensure the convergence and optimality. In this paper, the MMSIM solver [7] is also adopted to solve the QP problem effectively and efficiently. To guarantee the convergence of MMSIM solver, we further introduce multiple variables to represent each cell for the QP Problem (8). Specifically, we introduce the variables xi1 , xi2 , ..., xid for the cell ci , where d is equal to twice times the cell height hi divided by the row height Rh , i.e., d =

2hi Rh .

Then, the

Problem (8) can be rewritten as:

min

1 T x Qx + pT x 2

(9)

s.t. Bx β‰₯ b,

(9a)

Dx = d,

(9b)

Ex = 0,

(9c)

x β‰₯ 0,

(9d)

where Q, p, B, b, D, d are correspondingly transformed from Q, p, B, b, D, d. The new constraint Ex = 0 ensures that the variables for each cell are equal. Further, we relax constraints 9(b) and 9(c) by introducing two penalty factors 20

Ξ²1 and Ξ²2 to put the constraints into the objective. The new QP is formulated as follows: min

1 T 2 x (Q

s.t.

Bx β‰₯ b,

T

T

T

+ Ξ²1 D D + Ξ²2 E E)x + (pT βˆ’ Ξ²1 d D)x (10)

x β‰₯ 0. If the two penalty factors Ξ²1 and Ξ²2 are large enough, then Problem (9) and Problem (10) are equivalent in theory. Finally, we adopt the MMSIM solver presented in the work [7] to solve Problem (10), which only needs linear time for each iteration. In addition, according to Theorem 2 of [7], we also have the following theorem: Theorem 1. The solution generated by the MMSIM solver [7] gives the optimal solution of Problem (10). Proof 1. To guarantee the convergence and optimality of the MMSIM solver, T

T

according to the work [7], the Q + Ξ²1 D D + Ξ²2 E E should be a symmetric positive definite matrix and B should be a full row rank matrix. Since Q is T

T

a symmetric positive definite matrix, D D and E E are two positive semidefinite matrices, Ξ²1 and Ξ²2 are two positive constants, it is obvious that Q + T

T

Ξ²1 D D + Ξ²2 E E is a symmetric positive definite matrix. Suppose B is an m Γ— n matrix, where m is the number of constraints and n is the number of variables, it is obvious that m < n. In addition, since each row of matrix B has only two nonzero elements 1 and -1, and each column of matrix B has at most two nonzero elements, we can choose the columns with element 1 in each row to form an m-order matrix, and the matrix can be further transformed to an identity matrix by elementary row transformation. As a result, the matrix B in Problem (10) is of full row rank. Therefore, according to Theorem 2 of [7], the solution generated by the MMSIM solver [7] gives the optimal solution of Problem (10).

21

3.5. MW&FE-aware Cell Allocation and Refinement Since we temporarily relaxed the placement sites and the right boundary constraints during the MW&FE-driven QP formulation and solving stage, some cells may not be placed on the placement sites or inside the right boundary. Hence, in this subsection, our goal is to align cells to the placement sites and place the cells that are out of the right boundary into the chip region. First, we sort all cells by their center x-positions in non-decreasing order, and then move cells one by one to their nearest available placement sites in the sorted order. Note that in this process, we always maintain the relative topological order of the cells in each cluster, and the cells in each cluster are abutting. Thus, the MW constraints are always satisfied and the half-row FE are not aggravated. After the cell allocation, all cells are placed in the chip legally. In order to further improve the solution quality, similar to the works [6] and [19], we construct a bipartite graph between a set of cells with the same cell type in each local bin and the current positions of the cells, and the Kuhn-Munkres algorithm [23] is performed to find a perfect matching for the cells and positions. Note that the cells with the same cell type mean that they have the same height, width and VDD/VSS type, thus swapping these cells does not cause any cell overlapping or MW violation.

4. Experimental Results We implemented our proposed algorithm for the general 6T&6TPPNN cell legalization problem in the C++ programming language, and tested it on the benchmarks provided by the authors of [10]. These benchmarks were obtained by modifying Benchmark Suit A of the 2014 ISPD Detailed-Routing-Driven Placement Contest [24]. There are 20% of ULVT cells, and 15% of cells are selected to double or triple their heights randomly, while making their widths half or one-third to maintain the total cell areas and ensure that each chip can accommodate all the cells [10]. Based on the given benchmarks, we randomly select 30% double-row-height cells as 6TPPNN cells. Table 1 lists the benchmark

22

statistics, where β€œ#Cells”, β€œ#Nets”, β€œ#Pins”, β€œ#I/Os” and β€œUtil” denote the number of movable standard cells, the number of nets, the number of pins, the number of fixed I/O pins, and the design utilization rates, respectively. All the experiments in this paper were run on the same platform with Intel Core 3.40GHz CPU and 16GB memory for fair comparison. Table 1: Benchmark Statistics

Benchmark

#Cells

#Nets

#Pins

#I/Os

Util

mgc des perf 1

112644

112878

319119

374

0.90

mgc des perf 2

112644

112878

319119

374

0.85

mgc edit dist 1

130661

133223

382631

2574

0.40

mgc edit dist 2

130661

133223

382631

2574

0.43

mgc pci bridge32 1

30675

30835

87942

361

0.84

mgc pci bridge32 2

30675

30835

87942

361

0.85

mgc fft

32281

33307

104385

3010

0.83

mgc matrix mult

155325

158527

457756

4802

0.80

4.1. Comparison with the Commercial Tool To evaluate the effectiveness of our proposed algorithm (named β€œOurs”), we compared with a commercial tool (named β€œCommercial tool”) provided by the Empyrean Software Inc. The commercial tool fixes each MW violating cell by inserting fillers of the same VT type at the final stage directly, and does not consider the half-row fragmentation effect. Table 2 lists the experimental results. In the table, β€œHPWL (nm)”, β€œArea (um2 )”, β€œDisp.(sites)” and β€œCPU (s)” gives the total wirelength in nanometer, the total areas of circuits, the total cell displacement in the number of the placement site width, and the total runtime in second, respectively. Because the height of fragmentation of 6TPPNN cells are half-row, we use the total width of 6TPPNN cells to quantitatively calculate the half-row fragmentation effect. β€œInit Frag” is the sum of the width of all 6TPPNN cells (i.e., SW6T P N defined in Section 3.3), and β€œFixed Frag” is the sum of overlap width in the horizontal direction for adjacent 6TPPNN cells in 23

24

987800

1.000

N.Average

390000

460900783 2624515107

mgc fft

270781205

mgc pci bridge32 2

mgc matrix mult

492800

257692710

mgc pci bridge32 1

1.000

1565600

492800

6626400

3827588190

mgc edit dist 2

6626400

3921430290

1306015910

mgc edit dist 1

mgc des perf 2

987800

(nm)

(nm) 1292055150

Init Frag

HPWL

mgc des perf 1

Benchmark

Initial result

1.000

302500

70225

59536

60614

484416

521284

210681

Disp.

341232

537444

(sites)

1.086

2789119078

498982637

312460414

297853739

1.011

727894

147167

157799

160453

4163221740 1633577

4241340347 1483354

1427133606

1436993740

(nm)

198025

HPWL

Area (um2 )

0.004

7600

4800

3200

2000

14000

28000

6200

2600

(nm)

Fixed Frag

Commercial tool

(s)

CPU

2.38

2.91

2.27

1.114

1.702

305250 14.00

79765

65636

73614

513648 12.02

600704 12.74

251073 10.46

234515 31.98

(um2 )

Area

Disp.

340268

523581

(sites)

1.036

2675571052

491417017

294915829

284370410

1.000

714350

146984

157059

159757

3957487035 1622375

4034308275 1470033

1358770175

1364056504

(nm)

HPWL

Table 2: Comparisons of the Legalization Results between Commercial Tool and Ours

0.018

26000

35200

32200

31800

71800

64600

34000

31600

(nm)

Fixed Frag

Ours Area

(s)

CPU

1.000

302500

70225

59536

60614

484416

521284

210681

1.000

8.26

1.49

1.25

1.76

9.74

9.05

4.17

198025 16.40

(um2 )

P

vertical direction (i.e., ci ,cj

H zij Oij defined in Section 3.3). The columns

∈C 6T P N

of β€œInitial result” gives the initial total wirelength, total fragmentation effect, and total area for each benchmark. As can be seen from the Table 2, our proposed algorithm only incurs 3.6% wirelength increase to legalize the designs, while the β€œCommercial Tool” incurs 8.6% wirelength increase. In particular, our algorithm can resolves all the MW violations without any area overhead for all the tested benchmarks, while the β€œCommercial Tool” incurs 11.4% area overheads. Since the β€œCommercial Tool” fixes the MW violating cells by inserting fillers directly at the end of legalization stage, it incurs serious area overheads. Instead, through our clustering-based MW constraints solving method, we can effectively resolve the MW violations without any area overhead. Furthermore, since the β€œCommercial Tool” does not consider half-row fragmentation effect, it only reduces fragmentation effect by 0.4%, while our algorithm can reduce fragmentation effect by 1.8%. It should be noted that most of the half-row fragmentation effect cannot be eliminated. In addition, compared with the β€œCommercial Tool”, our algorithm achieves 1.1% smaller total cell displacement and 1.702Γ— faster running time. Overall, the experimental results show that our algorithm is effective and efficient for general 6T&6TPPNN circuit designs with the complex MW constraints and the fragmentation effect. 4.2. Effectiveness of Individual Techniques In this subsection, we verified the effectiveness of the proposed individual techniques. Table 3 shows the experimental results. In the table, the columns β€œw/o M.” list the results generated by our algorithm with the minimum width (MW)-aware cell clustering being turned off, and each MW violating cell is fixed by inserting fillers of the same VT type at the final stage directly. The columns β€œw/o F.” give the results generated by our algorithm without considering the half-row fragmentation effect (FE). As can be seen from the Table 3, on average, our algorithm with MWaware cell clustering can achieve 4.0% smaller HPWL, 0.7% smaller total cell 25

26 498077241

mgc fft

N.Average

500463396

300894273

289871292

491417017

294915829

284370410

1.040

1.019

1.000

2760683309 2724415354 2675571052

310984625

mgc matrix mult

296252297

4141065844 4031462561 3957487035

mgc edit dist 2

mgc pci bridge32 2

4211672264 4101648472 4034308275

mgc edit dist 1

mgc pci bridge32 1

1411921786 1384483416 1358770175

Ours

1406412842 1398641358 1364056504

w/o F.

mgc des perf 2

w/o M.

mgc des perf 1

Benchmark

HPWL

340691

527013

w/o F.

340268

523581

Ours

1.007

723956

147154

157217

160016

1.006

719230

147908

158114

160868

1.000

714350

146984

157059

159757

1628594 1633527 1622375

1481482 1479386 1470033

341068

529467

w/o M.

Disp.

Fixed Frag

0.981

26800

35000

30800

31200

69000

62600

35200

30400

0.182

6200

5400

2400

2000

10800

25600

4800

2200

w/o M. w/o F.

Table 3: Results of Individual Techniques

1.000

26000

35200

32200

31800

71800

64600

34000

31600

Ours

Ours

71285

61000

62042

70225

59536

60614

1.074

1.015

1.000

302500 302500 302500

77115

64660

68197

511560 489984 484416

566770 529226 521284

240057 218484 210681

217160 201140 198025

w/o M. w/o F.

Area

displacement, and 7.4% reduction in area overhead. This is because when the MW-aware cell clustering being turned off, excessive fillers need to be inserted to meet the MW constraints, resulting in significant area overhead and poor results. Besides, the proposed algorithm without considering the half-row FE increases the 1.9% HPWL, 0.6% total cell displacement, and 1.5% area overhead. This is because a legalizer without considering the half-row FE would cause severe dead spaces, resulting in area overhead and degraded chip performance. Overall, the experimental results show the effectiveness of our MW-aware cell clustering and FE-aware cell clustering.

(a)

(b)

Figure 8: The layouts for the circuit mgc pci bridge32 1. (a) The final layout generated by our proposed algorithm. ULVT cells are in red, and SVT cells are in green. (b) A partial layout of (a).

Figure 8 gives the placement layout for the circuit mac pci bridge32 1 generated by our proposed algorithm, where Figures 8(a) and 8(b) show the respective full final layout and a partial layout.

5. Conclusions This paper has addressed the mixed 6T&6TPPNN cell legalization considering both complex minimum width (MW) constraints and fragmentation effect (FE) issues. We have proposed a clustering-based MW constraints solving

27

method to eliminate all the MW violations. Besides, we have formulated the legalization problem with MW constraints as a quadratic programming (QP) problem, and presented a FE-aware cell clustering in the high density areas to effectively mitigate the half-row fragmentation effect. Finally, we have integrated the FE issues into the formulated MW-aware QP model, and adopted the modulus-based matrix splitting iteration method (MMSIM) to solve the MW&FE-aware QP problem effectively and efficiently. Experimental results have shown that our algorithm can effectively resolve all MW constraints and mitigate the half-row fragmentation effect without any extra area overhead in a reasonable time. Since there are many other constraints in modern circuit designs, extending the legalization method to handle the routability and timing issues in the mixed-cell-height placement problem is a topic needing further investigation [1] S.-H. Baek, H.-Y. Kim, Y.-K. Lee, D.-Y. Jin, S.-C. Park, J.-D. Cho, Ultrahigh density standard cell library using multi-height cell structure, in: Proceedings of SPIE 7268, 2008, pp. 72680C–72680C. [2] T. R. Gheewala, M. J. Colwell, H. H. Yang, D. G. Breid, Dual-height cell with variable width power rail architecture, in: U.S. Patent No. 7129562, 2006. [3] N. K. Darav, I. S. Bustany, A. Kennings, R. Mamidi, ICCAD-2017 CAD contest in multi-deck standard cell legalization and benchmarks, in: Proceedings of IEEE/ACM International Conference on Computer-Aided Design, 2017. [4] M. P.-H. Lin, C.-C. Hsu, Y.-T. Chang, Recent research in clock power saving with multi-bit flip-flops, in: IEEE International Midwest Symposium on Circuits and Systems (MWSCAS), 2011. [5] D. D. Sherlekar, Cell architecture for increasing transistor size, in: U.S. Patent No. 8631374, 2014.

28

[6] H. Li, W.-K. Chow, G. Chen, E. F. Y. Young, B. Yu, Routability-driven and fence-aware legalization for mixed-cell-height circuits, in: Proceedings of ACM/IEEE Design Automation Conference, 2018. [7] J. Chen, Z. Zhu, W. Zhu, Y.-W. Chang, Toward optimal legalization for mixed-cell-height circuit designs, in: Proceedings of ACM/IEEE Design Automation Conference, 2017. [8] K.-H. Tseng, Y.-W. Chang, C. C. Liu, Minimum-implant-area-aware detailed placement with spacing constraints, in: Proceedings of ACM/IEEE Design Automation Conference, 2016, pp. 84:1–84:6. [9] A. B. Kahng, Lithography-induced limits to scaling of design quality, in: Proceedings of SPIE, Vol. 9053, 2014, pp. 905302–1–905302–14. [10] Y.-Y. Wu, Y.-W. Chang, Mixed-cell-height detailed placement considering complex minimum-implant-area constraints, in:

Proceedings of

IEEE/ACM International Conference on Computer-Aided Design, 2017. [11] J. Chen, P. Yang, X. Li, W. Zhu, Y.-W. Chang, Mixed-cell-height placement with complex minimum-implant-area constraints, in: Proceedings of IEEE/ACM International Conference on Computer-Aided Design, 2018. [12] G. Wu, C. Chu, Detailed placement algorithm for VLSI design with doublerow height standard cells, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 35 (9) (2016) 1569–1573. [13] W.-K. Chow, C.-W. Pui, E. F. Y. Young, Legalization algorithm for multiple-row height standard cell design, in: Proceedings of ACM/IEEE Design Automation Conference, 2016. [14] C.-H. Wang, Y.-Y. Wu, J. Chen, Y.-W. Chang, S.-Y. Kuo, W. Zhu, G. Fan, An effective legalization algorithm for mixed-cell-height standard cells, in: Proceedings of IEEE/ACM Asia and South Pacific Design Automation Conference, 2017, pp. 450–455.

29

[15] C.-Y. Hung, P.-Y. Chou, W.-K. Ma, Mixed-cell-height standard cell placement legalization, in: Proceedings of the on Great Lakes Symposium on VLSI 2017. ACM, 2017, pp. 149–154. [16] P. Spindler, U. Schlichtmann, F. Johannes, Abacus: fast legalization of standard cell circuits with minimal movement (2008) 47–53. [17] Y. Lin, B. Yu, X. Xu, J.-R. Gao, N. Viswanathan, W.-H. Liu, Z. Li, C. J. Alpert, D. Z. Pan, MrDP: multiple-row detailed placement of heterogeneous-sized cells for advanced nodes, in: Proceedings of IEEE/ACM International Conference on Computer-Aided Design, 2016, pp. 7:1–7:8. [18] Y.-W. Tseng, Y.-W. Chang, Mixed-cell-height placement considering drainto-drain abutment, in: Proceedings of IEEE/ACM International Conference on Computer-Aided Design, 2018. [19] Z. Zhu, X. Li, Y. Chen, J. Chen, W. Zhu, Y.-W. Chang, Mixed-cell-height legalization considering technology and region constraints, in: Proceedings of IEEE/ACM International Conference on Computer-Aided Design, 2018. [20] S. Goto, An efficient algorithm for the two-dimensional placement problem in electrical circuit layout, IEEE Transactions on Circuits and Systems 28 (1) (1981) 12–18. [21] M. Pan, N. Viswanathan, C. Chu, An efficient and effective detailed placement algorithm, in: IEEE/ACM International Conference on ComputerAided Design, 2005, pp. 48–55. [22] Z.-Z. Bai, Modulus-based matrix splitting iteration methods for linear complementarity problems, Numerical Linear Algebra with Applications 17 (6) (2010) 917–933. [23] J. Munkres, Algorithms for the assignment and transportation problems, Journal of the Society for Industrial and Applied Mathematics 5 (1) (1957) 32–38. 30

[24] ISPD 2014 Detailed Routing-Driven Placement Contest. http://www.ispd. cc/contests/14/ispd2014 contest. html.

31

1. In this paper, we present the first work to address the general 6T&6TPPNN cell legalization problem. 2. We formulate the legalization problem with the complex minimum width (MW) constraints as a quadratic programming problem, which not only satisfies the MW constraints, but also avoid causing excessive dead spaces. 3. We integrate the fragmentation effect (FE) issues into the formulated MW-aware legalization model, and adopt the modulus-based matrix splitting iteration method (MMSIM) to solve the MW&FE-aware legalization problem effectively and efficiently. 4. Experimental results show that our algorithm can resolve all MW constraints and mitigate the half-row fragmentation effect without any extra area overhead in a reasonable time.