An accelerated Newton splitting iterative method for mixed-size cell circuit layout

By converting the legalization problem in VLSI layout into a generalized absolute value equation and solving it using the accelerated Newton splitting iteration method, the problems of high computational complexity and improper parameter selection in mixed-size cell layout are solved, achieving fast and efficient layout design.

CN115114880BActive Publication Date: 2025-09-05NANTONG UNIV
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210695559.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-17
Publication Date
2025-09-05
Estimated Expiration
2042-06-17

AI Technical Summary

Technical Problem

In the existing technology of ultra-large-scale integrated circuit layout, the layout problem of mixed-size cells has high computational complexity, and the existing methods are prone to difficult iteration convergence or slow convergence due to improper parameter selection.

Method used

The legalization problem is equivalent to a linear complementarity problem and converted into a generalized absolute value equation. An accelerated Newton splitting iterative method is designed to solve it. The iterative process is optimized through preprocessing and network flow model. Only one parameter matrix needs to be determined, avoiding the problem of improper parameter selection.

Benefits of technology

It effectively accelerates the convergence speed of the iterative process, reduces the number of iterations and running time, improves layout design efficiency, and quickly obtains high-quality neighborhood solutions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115114880B_ABST
    Figure CN115114880B_ABST
Patent Text Reader

Abstract

The present invention provides an accelerated Newton splitting iteration method for applying to a mixed-size unit circuit layout method. First, multiple row height units are preprocessed into single row height sub-units and placed on the nearest row that matches the power line. Then, a network flow model is established for all units, and they are diffused to avoid local congestion. Then, the legalization problem is expressed as a convex quadratic programming problem, and the quadratic programming problem is equivalently converted into a linear complementary problem. The linear complementary problem is then equivalently expressed as a generalized absolute value equation. An accelerated Newton splitting iteration method is designed to solve it. Finally, the multiple row height standard units are restored and placed on the available positions in the row, and the remaining illegal units are processed. Compared with the prior art, the present invention solves the generalized absolute value equation equivalent to the legalization problem through an accelerated Newton splitting iteration method. There is no need to consider the setting of parameters too much. Only a parameter matrix needs to be determined, and suggestions are given for the selection of the parameter matrix, avoiding the limitation of being unable to effectively or efficiently solve the problem due to improper selection of parameters or parameter matrices. The present invention can effectively accelerate the convergence speed of the iterative process and quickly obtain a high-quality neighborhood solution to the legalization problem.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of very large scale integrated circuit physical design automation, and in particular to a method for applying an accelerated Newton decomposition iteration method to a mixed-size unit circuit layout method. Background Art

[0002] The physical design of very large-scale integrated circuit (VLSI) circuits is crucial to semiconductor chip manufacturing. With the advancement of VLSI advanced node technology, designing circuits with libraries of standard cells of varying heights has become mainstream. Standard cells with multiple row heights offer improved pin accessibility and reduced latency, but their emergence also presents greater challenges during the layout phase. Unlike single-row-height standard cells, where the movement only requires considering the overlap of cells within that row, the movement of multiple-row-height cells also requires considering the overlap of cells in adjacent rows. Furthermore, the layout of mixed-size cells must adhere to power rail matching constraints. The sheer number of standard cells in circuit design leads to a combinatorial explosion in the solution space, resulting in extremely high computational complexity. Therefore, the layout problem is considered NP-hard. For such problems, iterative solutions are often used to obtain approximate solutions. However, how to quickly and efficiently approach the optimal solution remains a pressing challenge.

[0003] Existing legalization algorithms are divided into heuristic algorithms and analytical algorithms. Heuristic algorithms have the advantage of fast solution speed, but are prone to falling into local optimal solutions. Analytical methods usually establish a mathematical model for the legalization problem and then solve the model. Chen Jianli et al. (CN106971042A) proposed to express the quadratic programming problem in the legalization problem as a linear complementarity problem, and applied the modular matrix splitting iteration method to solve the linear complementarity problem. However, this method requires the determination of many parameters. If one of the parameters is not selected properly, it is easy for the iterative method to fail to converge. Summary of the Invention

[0004] Purpose of the Invention: The purpose of the present invention is to solve the above-mentioned problem by transforming the linear complementarity problem equivalent to the legalization problem into a generalized absolute value equation, and then designing an accelerated Newton splitting iteration method to solve it. Compared with existing methods, it only contains one parameter matrix and provides suggestions for the selection of this parameter matrix, effectively avoiding the problem of difficulty in convergence or slow convergence due to improper parameter selection. This invention can greatly reduce the number of iterations and running time in the iterative solution process, further improving the design efficiency of the layout stage.

[0005] The accelerated Newton splitting iteration method is applied to the mixed-size unit circuit layout method: first, the multiple-row height units are preprocessed into single-row height sub-units and placed on the nearest row that matches the power line. Then, a network flow model is established for all units, and they are diffused to avoid local congestion. Then, the legalization problem is expressed as a convex quadratic programming problem, and the quadratic programming problem is equivalently converted into a linear complementarity problem. The linear complementarity problem is then equivalently expressed as a generalized absolute value equation. An accelerated Newton splitting iteration method is designed to solve it. Finally, the multiple-row height standard units are restored and placed on the available positions in the row, and the remaining illegal units are processed. Compared with the prior art, the present invention solves the generalized absolute value equation equivalent to the legalization problem through the accelerated Newton splitting iteration method. There is no need to consider the parameter settings too much. It only needs to determine a parameter matrix and give suggestions for the selection of the parameter matrix, avoiding the limitation of being unable to effectively or efficiently solve the problem due to improper selection of parameters or parameter matrices. It can effectively accelerate the convergence speed of the iterative process and quickly obtain a high-quality neighborhood solution to the legalization problem.

[0006] To achieve the above objectives, the present invention provides an accelerated Newton decomposition iteration method for applying to a mixed-size cell circuit layout method, comprising the following steps:

[0007] S1: pre-process the standard cell, split the multi-row height standard cell into multiple single-row height standard sub-cells, and place them on the nearest row that matches the power line;

[0008] S2: Establish a network flow model for all units and diffuse it;

[0009] S3: Formulate the legalization problem as a convex quadratic programming problem;

[0010] S4: Equivalently transform the quadratic programming problem into a linear complementarity problem;

[0011] S5: Equivalently express the linear complementarity problem as a generalized absolute value equation;

[0012] S6: Solving generalized absolute value equations using the accelerated Newton iteration method;

[0013] S7: Restore the multiple row height standard cells and place them on available positions in the row;

[0014] S8: Legalize the remaining illegal units.

[0015] Furthermore, the specific implementation of step S1 includes: given a rectangular layout area of ​​a chip, (0, 0) and (W, H) are used to represent the coordinates of its lower left corner and upper right corner respectively; W represents the width of the layout area, and H represents the height of the layout area; the set of movable standard cells to be laid out is C = (c1, c2, ... cn ), where unit c i The initial lower left corner coordinate obtained from the global stage is The unit width and height are w i , h i , the coordinates after the legalization stage are (x i ,y i ) indicates; for multiple-row high standard units, they are represented as multiple sub-units, using (c i1 , c i2 ,…c it ), where t means the height of the standard cell is t times the row height.

[0016] Furthermore, the height of all cells is an integer multiple of the row height; then all standard cells are aligned to the nearest row that matches their power lines; the power lines and ground lines are staggered in the row. For cells with odd-numbered row heights, the power types at both ends are different, so as long as they do not exceed the layout area, they can be placed on any row, and the power type can be matched by flipping; for cells with even-numbered row heights, the power types at both ends are the same, so they need to be placed on the row that matches their power type.

[0017] Furthermore, the specific implementation of step S2 includes: in order to avoid excessive congestion of standard cells in subsequent processing, the cells are diffused using a network flow algorithm to ensure that the sum of the cell widths in each row does not exceed the width of the row, and the layout area is evenly divided into grids in the horizontal and vertical directions. Each grid constitutes a node in the network flow graph. In addition, two additional nodes are created, namely, super source nodes (N B ) and super sink nodes (N E ), calculate the sum of the areas of the cells in each grid s C , and compare it with the grid area s G For comparison, if s C >s G , then the grid is called the overflow grid and the overflow area s is recorded o , if s C ≤s G , then the grid is called an idle grid and the remaining idle area s is recorded f , for the overflow grid, set it to the source node N in the network flow s , and establish a line from N B to N s The arc, the capacity and cost on the arc are set to s o and zero, for an idle grid, set it to target node N t , and establish a line from N t to N EThe arc, the capacity and cost on the arc are set to s f and 0, and for the overflow grid, find the free grid adjacent to it and build s to N t The arc, the capacity and cost on the arc are set to infinity and the displacement of the unit moving between the two grids respectively. For the established network flow graph, the strategy of unit movement in the grid can be obtained. According to the strategy, the unit is moved. The unit after movement c i The coordinates are Furthermore, the specific implementation of step S3 includes: the legalization process is to eliminate the overlap between cells and minimize the total displacement of the standard cell as the optimization goal. In the above steps, the cell has been moved to the minimum in the vertical direction, that is, aligned with the matching power rail, so the displacement in the vertical direction can be ignored. The legalization problem is described as the following model (27):

[0018]

[0019] The above model is rewritten as the standard form of convex quadratic programming problem, namely:

[0020]

[0021] in, is an identity matrix, is a column vector whose components consist of the initial horizontal coordinates of the standard cells; any adjacent pair of standard cells should satisfy the inequality x j -x i ≥w i (x j ≥x i ), establish this inequality between all adjacent cells, and it can be written in matrix form Wx≥d, where W is a matrix containing only two elements -1 and 1 in each row, representing the cell c i and c j The horizontal coordinate x j , x i , d is a column vector, where the corresponding component represents the left unit c i The width w i ; Then the number of rows of W and d is the number of constraints, and the number of columns of W is the total number of standard cells, that is, the sum of the number of single-row-height cells and the number of sub-cells into which multiple-row-height cells are split. R is also a matrix consisting of -1 and 1 in each row, where -1 represents a multiple of the row height unit c. i Subunit c i1 , 1 represents c i Subunit c i2 , and so on; x i2 -xi1 =0 guarantee c i The horizontal coordinates of the subunits are equal, so the constraint matrix Rx=0 can be obtained, where The matrices W, R, and vector d constructed based on this position are as follows:

[0022] R=(0 -1 1 0), d=(w1 w2) T ;

[0023] Using the Lagrange multiplier method, the equality constraints in the quadratic programming are added to the objective function, and (2) can be expressed as:

[0024]

[0025] Here, λ is the Lagrange multiplier.

[0026] Furthermore, the specific implementation of step S4 is: using the Karush-Kuhn-Tucker (KKT) condition, model (3) can be written as the KKT equations with the following conditions:

[0027]

[0028] Rewrite equation (4) into the following form:

[0029]

[0030] make The problem then becomes finding a pair of non-negative and orthogonal solution vectors

[0031] The following conditions are met:

[0032] w=Az+q≥0,z≥0 and w T z≥0. (19)

[0033] Problem (6) is a linear complementarity problem, where

[0034] Furthermore, the specific implementation of step S5 is as follows: let z = (|v| - v), w = (|v| + v), then (6) can be converted into the following equivalent generalized absolute value equation:

[0035] (A+I)v-(AI)|v|=q. (20)

[0036] Let C = A + I, E = AI, where I is the identity matrix, then (7) can be restated as follows:

[0037] Cv-E|v|=q. (21).

[0038] Furthermore, the specific implementation of step S6 is as follows: let F(v) = Cv-E|v|-q, and let F(v) = 0; since F(v) is a piecewise linear vector function, it is not continuously differentiable, and the Newton iteration method cannot be directly applied to solve this equation; therefore, based on the subgradient of the component of |v|, the generalized Jacobian of |v| is used. To obtain the approximate solution of the generalized absolute value equation (8); It can be represented by a diagonal matrix D(v), where And sign(v k ) is a vector whose component values ​​are

[0039]

[0040] For the nonlinear equation system F(v), it is decomposed into the sum of the differentiable function H(v) and the Lipschitz continuous function G(v), that is, F(v) = H(v) + G(v), so a modified Newton iteration method can be used to solve F(v), that is,

[0041] v k+1 =v k -H′(v k ) -1 (H(v k )+G(v k )), k=0, 1, 2,…, (23)

[0042] Let H(v) = C(v) + Ω(v), G(v) = -Ω(v) - E|v| - q, where Ω is a positive semidefinite matrix. Solving F(v) using (10) yields the following iterative format:

[0043] v k+1 =v k -(C+Ω) -1 (Cv k -E|v k |-q). (24)

[0044] Multiplying both sides of (11) by (C + Ω) yields

[0045] (C+Ω)v k+1 =Ωv k +E|v k |+g. (25)

[0046] Since C = A + I, E = AI, the matrices C and E are two positive definite matrices. Let C = M1-N1 be the split of matrix C, E = M2-N2 be the split of matrix E, and the latest estimated value v k+1 Substituting v on the right side of the equation k, the following iterative format can be obtained:

[0047] (M1+Ω)v k+1 =(N1+Ω)v k +M2|v k |-N2|v k+1 |+q. (26)

[0048] Among them, N2 is required to be a lower triangular matrix. Specifically, according to the structure of matrix A in formula (5), the values ​​of M1, N1, M2, and N2 are as follows:

[0049]

[0050]

[0051] in, is the unit matrix; take Ω=ωI, ω is a positive constant, let B1=B+λR T R, therefore, the process of solving the legalization problem using formula (13) is as follows:

[0052]

[0053] Given an arbitrary initial vector Compute v by iteratively solving the linear system k+1 The value of the absolute residual vector RES(v k ):=||z k -z k-1 ||2 is less than or equal to a given constant, then it can be considered an iterative sequence Converges, and z k =(|v k |-v k ), k=0,1,2,…。

[0054] Furthermore, the specific implementation method of step S7 is: sorting the coordinates of all subunits of each multiple row height standard unit in ascending order, the median is the coordinate of the multiple row height unit, and then placing the unit to the nearest available position to the obtained coordinates.

[0055] Furthermore, the specific implementation of step S8 is as follows: for a few standard cells that still overlap or exceed the right boundary of the layout area, traverse the standard cells from the upper right corner of the layout area in the order from right to left and from top to bottom. i If it exceeds the right boundary, its coordinates are set to Ww i , if unit c i with c i-1 If they overlap, c i-1 Set the coordinate to xi -w i-1 ; Since the movement of multiple-row-height cells may cause cells in adjacent rows to overlap, multiple-row-height cells that have already been moved in the previous row will not be moved again in the next row; then, traverse the standard cells again from left to right and from bottom to top according to the same rules. After this step, all cell overlaps can be eliminated.

[0056] The above technical solution of the present invention has the following advantages over the prior art: first, the multiple row height units are preprocessed into single row height sub-units and placed on the nearest row that matches the power line, then a network flow model is established for all units, and they are diffused to avoid local congestion, then the legalization problem is expressed as a convex quadratic programming problem, and the quadratic programming problem is equivalently converted into a linear complementary problem, and then the linear complementary problem is equivalently expressed as a generalized absolute value equation, and an accelerated Newton splitting iteration method is designed to solve it, and finally the multiple row height standard units are restored and placed on the available positions in the row, and the remaining illegal units are processed. Compared with the prior art, the present invention solves the generalized absolute value equation equivalent to the legalization problem through an accelerated Newton splitting iteration method, without excessive consideration of parameter settings, only a parameter matrix needs to be determined, and suggestions are given for the selection of the parameter matrix, avoiding the limitation of being unable to effectively or efficiently solve the problem due to improper selection of parameters or parameter matrices. It can effectively accelerate the convergence speed of the iterative process and quickly obtain a high-quality neighborhood solution to the legalization problem.

[0057] Compared to existing technologies, this invention transforms the linear complementarity problem, equivalent to the legalization problem, into a generalized absolute value equation and then designs an accelerated Newton-splitting iterative method to solve it. Compared to existing methods, this invention only includes a single parameter matrix and provides recommendations for selecting this matrix, effectively avoiding the difficulty or slow convergence caused by improper parameter selection. This invention can significantly reduce the number of iterations and runtime during the iterative solution process, further improving design efficiency during the layout phase. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] Figure 1 It is a flow chart for legalization of mixed-size standard cell circuits;

[0059] Figure 2 This is a layout diagram that takes into account power rail constraints;

[0060] Figure 3 This is an example layout diagram of mixed-size standard cells.

[0061] Figure 4 This is a diagram of the solution steps of the accelerated Newton iteration method;

[0062] Figure 5It is an iterative diagram of an embodiment of the accelerated Newton iteration method for solving the generalized absolute value equation derived from the legalization problem. DETAILED DESCRIPTION

[0063] The technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without making any creative work shall fall within the scope of protection of the present invention.

[0064] like Figure 1 As shown, an accelerated Newton splitting iteration method is applied to a mixed-size unit circuit layout method, which specifically includes the following steps:

[0065] S1: pre-process the standard cell, split the multi-row height standard cell into multiple single-row height standard sub-cells, and place them on the nearest row that matches the power line;

[0066] S2: Establish a network flow model for all units and diffuse it;

[0067] S3: Formulate the legalization problem as a convex quadratic programming problem;

[0068] S4: Equivalently transform the quadratic programming problem into a linear complementarity problem;

[0069] S5: Equivalently express the linear complementarity problem as a generalized absolute value equation;

[0070] S6: Solving generalized absolute value equations using the accelerated Newton iteration method;

[0071] S7: Restore the multiple row height standard cells and place them on available positions in the row;

[0072] S8: Legalize the remaining illegal units.

[0073] In this example, the specific implementation of step S1 includes: given a rectangular layout area of ​​a chip, (0, 0) and (W, H) are used to represent the coordinates of its lower left corner and upper right corner respectively; W represents the width of the layout area, and H represents the height of the layout area; the set of movable standard cells to be laid out is C = (c1, c2, ... c n ), where unit c i The initial lower left corner coordinate obtained from the global stage is The unit width and height are w i , h i , the coordinates after the legalization stage are (x i ,y i) indicates; for multiple-row high standard units, they are represented as multiple sub-units, using (c i1 , c i2 ,…c it ), where t means the height of the standard cell is t times the row height; note that the height of all cells is an integer multiple of the row height; then align all standard cells to the nearest row that matches their power lines; the power lines and ground lines are staggered in the row; for cells with odd-numbered row heights, the power types at both ends are different, so as long as they do not exceed the layout area, they can be placed on any row, and the power type can be matched by flipping; for cells with even-numbered row heights, the power types at both ends are the same, so they need to be placed on the row that matches their power type; such as Figure 2 As shown, the red lines represent power lines, the blue lines represent ground lines, and the dotted lines represent the rows where cells can be placed.

[0074] Furthermore, in this example, the specific implementation of step S2 includes: to avoid excessive congestion of standard cells in subsequent processing, the cells are diffused using a network flow algorithm to ensure that the sum of the cell widths in each row does not exceed the width of the row; the layout area is evenly divided into grids in the horizontal and vertical directions, and each grid constitutes a node in the network flow graph; in addition, two additional nodes are created, namely, super source nodes (N B ) and super sink nodes (N E ); Calculate the sum of the areas of the cells in each grid s C , and compare it with the grid area s G Compare; if s C >s G , then the grid is called the overflow grid and the overflow area s is recorded o ; if s C ≤s G , then the grid is called an idle grid and the remaining idle area s is recorded f ; For the overflow grid, set it to the source node N in the network flow s , and establish a line from N B to N s The arc, the capacity and cost on the arc are set to s o and zero; for an idle grid, set it to target node N t , and establish a line from N t to N E The arc, the capacity and cost on the arc are set to s f and 0; and for the overflow grid, find the free grid adjacent to it and establish s to N tThe arc, the capacity and cost on the arc are set to infinity and the displacement of the unit moving between the two grids respectively; for the established network flow graph, the strategy of unit movement in the grid can be obtained, and the unit is moved according to the strategy. The unit after movement c i The coordinates are

[0075] In this example, the specific implementation of step S3 includes: the legalization process is to eliminate the overlap between cells and minimize the total displacement of the standard cell as the optimization goal. In the above steps, the cell has been moved to the minimum in the vertical direction, that is, aligned with the matching power rail, so the displacement in the vertical direction can be ignored. The legalization problem is described as the following model (27):

[0076]

[0077] The above model is rewritten as the standard form of convex quadratic programming problem, namely:

[0078]

[0079] in, is an identity matrix, is a column vector whose components consist of the initial horizontal coordinates of the standard cells; any adjacent pair of standard cells should satisfy the inequality x j -x i ≥w i (x j ≥x i ), establish this inequality between all adjacent cells, and it can be written in matrix form Wx≥d, where W is a matrix containing only two elements -1 and 1 in each row, representing the cell c i and c j The horizontal coordinate x j , x i , d is a column vector, where the corresponding component represents the left unit c i The width w i ; Then the number of rows of W and d is the number of constraints, and the number of columns of W is the total number of standard cells, that is, the sum of the number of single-row-height cells and the number of sub-cells into which multiple-row-height cells are split. R is also a matrix consisting of -1 and 1 in each row, where -1 represents a multiple of the row height unit c. i Subunit c i1 , 1 represents c i Subunit c i2 , and so on; x i2 -x i1 =0 guarantee c iThe horizontal coordinates of the subunits are equal, so the constraint matrix Rx=0 can be obtained, where Figure 3 This is a simple example diagram of a mixed-size standard cell layout. The matrices W, R, and vector d constructed based on this position are shown below:

[0080] R=(0 -1 1 0), d=(w1 w2) T ;

[0081] Using the Lagrange multiplier method, the equality constraints in the quadratic programming are added to the objective function, and (2) can be expressed as:

[0082]

[0083] Here, λ is the Lagrange multiplier.

[0084] In this example, the specific implementation of step S4 is as follows: using the Karush-Kuhn-Tucker (KKT) condition, model (3) can be written as the following KKT equations:

[0085]

[0086] Rewrite equation (4) into the following form:

[0087]

[0088] make The problem then becomes finding a pair of non-negative and orthogonal solution vectors The following conditions are met:

[0089] w=Az+q≥0,z≥0 and w T z≥0. (32)

[0090] Problem (6) is a linear complementarity problem, where

[0091] Furthermore, in this example, the specific implementation of step S5 is as follows: let z = (|v| - v), w = (|v| + v), then (6) can be converted into the following equivalent generalized absolute value equation:

[0092] (A+I)v-(AI)|v|=q. (33)

[0093] Let C = A + I, E = AI, where I is the identity matrix, then (7) can be restated as follows:

[0094] Cv-E|v|=q. (34)

[0095] In this example, the specific implementation of step S6 is as follows: let F(v) = Cv-E|v|-q, and let F(v) = 0; since F(v) is a piecewise linear vector function, it is not continuously differentiable, and the Newton iteration method cannot be directly applied to solve this equation; therefore, based on the subgradient of the component of |v|, the generalized Jacobian of |v| is used. To obtain the approximate solution of the generalized absolute value equation (8); It can be represented by a diagonal matrix D(v), where And sign(v k ) is a vector whose component values ​​are

[0096]

[0097] For the nonlinear equation system F(v), it is decomposed into the sum of the differentiable function H(v) and the Lipschitz continuous function G(v), that is, F(v) = H(v) + G(v), so a modified Newton iteration method can be used to solve F(v), that is,

[0098] v k+1 =v k -H′(v k ) -1 (H(v k )+G(v k )), k=0, 1, 2,…, (36)

[0099] According to the modified Newton-type iterative method for the generalized absolute value equation in this paper, we take H(v) = C(v) + Ω(v), G(v) = -Ω(v) - E|v| -q, where Ω is a positive semi-definite matrix. Solving F(v) using (10) yields the following iterative format:

[0100] v k+1 =v k -(C+Ω) -1 (Cv k -E|v k |-q). (37)

[0101] Multiplying both sides of (11) by (C + Ω) yields

[0102] (C+Ω)v k+1 =Ωv k +E|v k |+q. (38)

[0103] Since C = A + I, E = AI, the matrices C and E are two positive definite matrices. In this invention, let C = M1-N1 be the split of matrix C, E = M2-N2 be the split of matrix E, and the latest estimated value v k+1 Substituting v on the right side of the equationk , the following iterative format can be obtained:

[0104] (M1+Ω)v k+1 =(N1+Ω)v k +M2|v k |-N2|v k+1 |+q. (39)

[0105] Among them, N2 is required to be a lower triangular matrix. Specifically, according to the structure of matrix A in formula (5), the values ​​of M1, N1, M2, and N2 are as follows:

[0106]

[0107]

[0108] in, is the unit matrix; take Ω=ωI, ω is a positive constant, let B1=B+λR T R, therefore, the process of solving the legalization problem using formula (13) is as follows:

[0109]

[0110] Given an arbitrary initial vector Compute v by iteratively solving the linear system k+1 The value of the absolute residual vector RES(v k ):=||z k -z k-1 ||2 is less than or equal to a given constant, then it can be considered an iterative sequence Converges, and z k =(|v k |-v k ), k=0, 1, 2, ...; the solution process is as follows Figure 4 As shown; Figure 5 An example of solving a legalization problem by converting it into a generalized absolute value equation using the accelerated Newton splitting iterative method is given. The horizontal axis represents the number of iterations, and the vertical axis represents the value of the two-norm RES of the absolute residual vector. The iterative convergence condition is RES(v (k) )≤10 -5 .

[0111] Furthermore, in this example, the specific implementation method of step S7 is: sorting the x-coordinates of all subunits of each multiple row height standard unit in ascending order, the median is the x-coordinate of the multiple row height unit, and then placing the unit at the nearest available position to the obtained x-coordinate.

[0112] In this example, the specific implementation of step S8 is as follows: for a few standard cells that still overlap or exceed the right boundary of the layout area, traverse the standard cells from the upper right corner of the layout area in the order from right to left and from top to bottom. i If it exceeds the right boundary, its coordinates are set to Ww i , if unit c i with c i-1 If they overlap, c i-1 Set the coordinate to x i -w i-1 ; Since the movement of multiple-row-height cells may cause cells in adjacent rows to overlap, multiple-row-height cells that have already been moved in the previous row will not be moved again in the next row; then, traverse the standard cells again from left to right and from bottom to top according to the same rules. After this step, all cell overlaps can be eliminated.

[0113] The above paper is about the modified Newton-type iteration method for generalized absolute value equations. Specific paper information: Wang A, Cao Y, Chen J X. Modified Newton-type iteration methods for generalized absolute value equations[J]. Journal of Optimization Theory and Applications, 2019, 181(1): 216-230.

[0114] The above description is merely an exemplary embodiment of the present invention and does not limit the scope of patent protection of the present invention. Any equivalent structure or equivalent process transformation made by using the contents of the description and drawings of the present invention, or directly or indirectly applied in other related technical fields, shall be included in the scope of patent protection of the present invention.

Claims

1. An accelerated Newton-decomposition iteration method is applied to a mixed-size cell circuit layout method, characterized by: The steps include: S1: pre-processing the standard cell, splitting the multiple-row-height standard cell into multiple single-row-height standard sub-cells, and placing them on the nearest row that matches the power line; The specific implementation of step S1 includes: given a rectangular layout area of ​​a chip, (0,0) and (W,H) are used to represent the coordinates of its lower left corner and upper right corner respectively; W represents the width of the layout area, and H represents the height of the layout area; the set of movable standard cells to be laid out is C = (c1, c2, ... c n ), where unit c i The initial lower left corner coordinate obtained from the global stage is The unit width and height are w i , h i , the coordinates after the legalization stage are expressed as (x i ,y i ) indicates; for multiple-row high standard units, they are represented as multiple sub-units, using (c i1 ,c i2 ,…c it ), where t means the height of the standard cell is t times the row height; S2: Establish a network flow model for all units and diffuse it; S3: Formulate the legalization problem as a convex quadratic programming problem; S4: Equivalently transform the quadratic programming problem into a linear complementarity problem; The specific implementation of step S4 is: using the Karush-Kuhn-Tucker (KKT) condition, the model can be written as the KKT equations with the following conditions: Rewrite equation (4) into the following form: make The problem then becomes finding a pair of non-negative and orthogonal solution vectors The following conditions are met: <h2 style=";text-align:left;direction:ltr">w = Az + q ≥ 0, z ≥ 0 and w<h2 style=";text-align:left;direction:ltr"> T <h2 style=";text-align:left;direction:ltr"> z≥0;(6) Problem (6) is a linear complementarity problem, where S5: Equivalently express the linear complementarity problem as a generalized absolute value equation; The specific implementation of step S5 is: let z = (|v| - v), w = (|v| + v), then (6) can be converted into the following equivalent generalized absolute value equation: (A+I)v-(AI)|v|=q; (7) Let C = A + I, E = AI, where I is the identity matrix, then (7) can be restated as follows: Cv-E|v|=q;(8) S6: Solve the generalized absolute value equation using the accelerated Newton iteration method; The specific implementation of step S6 is as follows: let F(v) = Cv-E|v|-q, and let F(v) = 0; since F(v) is a piecewise linear vector function, it is not differentiable and the Newton iteration method cannot be directly applied to solve this equation; therefore, based on the subgradient of the component of |v|, the generalized Jacobian of |v| is used To obtain the approximate solution of the generalized absolute value equation (8); It can be represented by a diagonal matrix D(v), where and For the nonlinear equation system F(v), it is decomposed into the sum of the differentiable function H(v) and the Lipschitz continuous function G(v), that is, F(v) = H(v) + G(v), so a modified Newton iteration method can be used to solve F(v), that is, v k+1 =v k -H'(v k ) -1 (H(v k )+G(v k )),k=0,1,2,…, (10) Let H(v) = C(v) + Ω(v), G(v) = -Ω(v) - E|v| - q, where Ω is a positive semidefinite matrix. Solving F(v) using (10) yields the following iterative format: v k+1 =v k -(C+Ω) -1 (Cv k -E|v k |-q); (11) Multiplying both sides of (11) by (C + Ω) yields (C+Ω)v k+1 =Ωv k +E|v k |+q; (12) Since C = A + I, E = AI, the matrices C and E are two positive definite matrices. Let C = M1-N1 be the split of matrix C, E = M2-N2 be the split of matrix E, and set the latest estimated value v k+1 Substituting v on the right side of the equation k , the following iterative format can be obtained: (M1+Ω)v k+1 =(N1+Ω)v k +M2|v k |-N2|v k+1 |+q; (13) Among them, N2 is required to be a lower triangular matrix. Specifically, according to the structure of matrix A in formula (5), the values ​​of M1, N1, M2, and N2 are as follows: in, is the unit matrix; take Ω=ωI, ω is a positive constant, let B1=B+λR T R, therefore, the process of solving the legalization problem using formula (13) is as follows: Given an arbitrary initial vector Compute v by iteratively solving the linear system k+1 The value of the absolute residual vector RES(v k ):=||z k -z k-1 ||2 is less than or equal to a given constant, then it can be considered an iterative sequence Converges, and z k =(|v k |-v k ), k=0,1,2,…; S7: Restore the multiple row height standard cells and place them on available positions in the row; S8: Legalize the remaining illegal units.

2. The accelerated Newton decomposition iteration method according to claim 1 is applied to a mixed-size cell circuit layout method, characterized in that: The height of all cells is an integer multiple of the row height; then all standard cells are aligned to the nearest row that matches their power line; the power lines and ground lines are arranged alternately in the row. For cells with odd-numbered row heights, the power types at both ends are different, so as long as they do not exceed the layout area, they can be placed on any row and the power type can be matched by flipping; for cells with even-numbered row heights, the power types at both ends are the same, so they need to be placed on the row that matches their power type.

3. The accelerated Newton decomposition iteration method according to claim 2 is applied to a mixed-size cell circuit layout method, characterized in that: The specific implementation of step S2 includes: in order to avoid excessive crowding of standard cells in subsequent processing, the network flow algorithm is used to diffuse the cells, ensuring that the sum of the cell widths in each row does not exceed the width of the row, and the layout area is evenly divided into grids in the horizontal and vertical directions. Each grid constitutes a node in the network flow graph. In addition, two additional nodes are created, namely the super source node (N B ) and super sink nodes (N E ), calculate the sum of the areas of the cells in each grid s C , and compare it with the grid area s G For comparison, if s C >s G , then the grid is called the overflow grid and the overflow area s is recorded o , if s C ≤s G , then the grid is called an idle grid and the remaining idle area s is recorded f , for the overflow grid, set it to the source node N in the network flow s , and establish a line from N B to N s The arc, the capacity and cost on the arc are set to s o and zero, for an idle grid, set it to target node N t , and establish a line from N t to N E The arc, the capacity and cost on the arc are set to s f and 0, and for the overflow grid, find the free grid adjacent to it and build s to N t The arc, the capacity and cost on the arc are set to infinity and the displacement of the unit moving between the two grids respectively. For the established network flow graph, the strategy of unit movement in the grid can be obtained. According to the strategy, the unit is moved. The unit after movement c i The coordinates are 4. The accelerated Newton decomposition iteration method according to claim 3 is applied to a mixed-size cell circuit layout method, characterized in that: The specific implementation of step S3 includes: the legalization process is to eliminate the overlap between cells and minimize the total displacement of the standard cell as the optimization goal. In the previous step, the cell has been moved to the minimum in the vertical direction, that is, aligned with the matching power rail, so the displacement in the vertical direction can be ignored. The legalization problem is described as the following model (1): The above model is rewritten as the standard form of convex quadratic programming problem, namely: in, is an identity matrix, is a column vector whose components consist of the initial horizontal coordinates of the standard cells; any adjacent pair of standard cells should satisfy the inequality x j -x i ≥w i (x j ≥x i ), establish this inequality between all adjacent cells, and it can be written in matrix form Wx≥d, where W is a matrix containing only two elements -1 and 1 in each row, representing the cell c i and c j The horizontal coordinate x j ,x i , d is a column vector, where the corresponding component represents the left unit c i The width w i ; Then the number of rows of W and d is the number of constraints, and the number of columns of W is the total number of standard cells, that is, the sum of the number of single-row-height cells and the number of sub-cells into which multiple-row-height cells are split. R is also a matrix consisting of -1 and 1 in each row, where -1 represents a multiple of the row height unit c. i Subunit c i1 , 1 represents c i Subunit c i2 , and so on; x i2 -x i1 =0 guarantee c i The horizontal coordinates of the subunits are equal, so the constraint matrix Rx=0 can be obtained, where The matrices W, R, and vector d constructed based on this position are as follows: Using the Lagrange multiplier method, the equality constraints in the quadratic programming are added to the objective function, and (2) can be expressed as: Here, λ is the Lagrange multiplier.

5. The accelerated Newton decomposition iteration method applied to a mixed-size cell circuit layout method according to claim 4, characterized in that: The specific implementation method of step S7 is: sort the coordinates of all subunits of each multiple row height standard unit in ascending order, the median is the coordinate of the multiple row height unit, and then place the unit at the nearest available position to the obtained coordinates.

6. The accelerated Newton decomposition iteration method applied to a mixed-size cell circuit layout method according to claim 5, characterized in that: The specific implementation of step S8 is as follows: for a few standard cells that still overlap or exceed the right boundary of the layout area, traverse the standard cells from the upper right corner of the layout area in the order from right to left and from top to bottom. i If it exceeds the right boundary, its coordinates are set to Ww i , if unit c i with c i-1 If they overlap, c i-1 Set the coordinate to x i -w i-1 ; Since the movement of multiple-row-height cells may cause cells in adjacent rows to overlap, multiple-row-height cells that have already been moved in the previous row will not be moved again in the next row; then, traverse the standard cells again from left to right and from bottom to top according to the same rules. After this step, all cell overlaps can be eliminated.

Citation Information

Patent Citations

  • Legalized method used for mixed height standard cell circuit design

    CN106971042A