CN103324796A - Obstacle-avoiding rectilinear Steiner tree construction method in large-scale integrated circuit design - Google Patents

Obstacle-avoiding rectilinear Steiner tree construction method in large-scale integrated circuit design Download PDF

Info

Publication number
CN103324796A
CN103324796A CN2013102497245A CN201310249724A CN103324796A CN 103324796 A CN103324796 A CN 103324796A CN 2013102497245 A CN2013102497245 A CN 2013102497245A CN 201310249724 A CN201310249724 A CN 201310249724A CN 103324796 A CN103324796 A CN 103324796A
Authority
CN
China
Prior art keywords
solution
coding
feasible solution
construct
limit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013102497245A
Other languages
Chinese (zh)
Other versions
CN103324796B (en
Inventor
张�浩
叶东毅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fuzhou University
Original Assignee
Fuzhou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuzhou University filed Critical Fuzhou University
Priority to CN201310249724.5A priority Critical patent/CN103324796B/en
Publication of CN103324796A publication Critical patent/CN103324796A/en
Application granted granted Critical
Publication of CN103324796B publication Critical patent/CN103324796B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention relates to an obstacle-avoiding rectilinear Steiner tree construction method in large-scale integrated circuit design, and belongs to the field of integrated circuit computer aided design, in particular to the field of circuit wiring design in physical design of large-scale integrated circuits. The obstacle-avoiding rectilinear Steiner tree construction method is characterized in that firstly, a wiring problem wiring diagram is built according to escape graph theory; secondly, a quasi-optimal feasible solution is constructed by the aid of edges of the wiring diagram by taking an artificial bee colony optimization method as a basic framework; thirdly, a global search strategy, a local search strategy based on key nodes, codes based on key nodes and an encoder based on an improved heuristic algorithm are designed in order to implement the artificial bee colony optimization method. The obstacle-avoiding rectilinear Steiner tree construction method can be used for constructing a high-quality obstacle-avoiding rectilinear Steiner tree, and is applicable to solving the problems of an obstacle-avoiding minimum rectilinear Steiner tree and a non-obstacle-avoiding minimum rectilinear Steiner tree in circuit wiring of the integrated circuit design.

Description

In a kind of large scale integrated circuit design around barrier global routing building method
Technical field
The present invention relates in a kind of large scale integrated circuit design around barrier global routing building method, belong to the integrated circuit CAD field, especially wiring design field in the large scale integrated circuit physical Design.
Background technology
In the large scale integrated circuit physical Design, the basic problem that wiring solves is all pins that global routing of employing is communicated with a gauze in the zone of can connecting up, and to set total line length as far as possible little.For this problem, people mainly study around barrier minimum global routing problem (obstacle-avoiding rectilinear Steiner minimal tree, OARSMT) at present.The minimum global routing problem of non-obstacle (rectilinear Steiner minimal tree, RSMT) is the special case that of OARSMT problem has simplified, and has been proved to be the NP-complete problem.Along with developing rapidly of integrated circuit technique, introduced in a large number macroelement, IP module, prewiring gauze etc. in the modern integrated circuits design, so that the obstacle number on the wiring chip constantly increases, need simultaneously interconnected pin number also in continuous increase.This is complex so that wiring problem becomes, and designs a kind of efficient wiring method and seems particularly important.
Around barrier global routing problem, can't estimate and bear the working time of Deterministic Methods for fairly large.At present, the effective ways that Chinese scholars proposes mainly are tradition to be opened method and Local Search combines, wherein representative method has: [list of references: Long J, Zhou H, O.MS (2008) EBOARST:An Efficient Edge-Based Obstacle-Avoiding Rectilinear Steiner Tree Construction Algorithm.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on27 (12): 2169-2182.], [list of references: Lin CW, Chen S-Y, Chi-Feng L, Yao-Wen C, Chia-Lin Y (2008) Obstacle-Avoiding Rectilinear Steiner Tree Construction Based on Spanning Graphs.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on27 (4): 643-653.], [list of references: Li L, Young EFY (2008) Obstacle-avoiding rectilinear Steiner tree construction.Paper presented at the Proceedings of the2008IEEE/ACM International Conference on Computer-Aided Design, San Jose, California:523-528], [list of references: Liu C-H, Kuo S-Y, Lee DT, Lin C-S, Weng J-H, Yuan S-Y (2012) Obstacle-Avoiding Rectilinear Steiner Tree Construction:A Steiner-Point-Based Algorithm.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on31 (7): 1050-1060.] and [list of references: Ajwani G, Chu C, Mak W-K (2011) FOARS:FLUTE Based Obstacle-Avoiding Rectilinear Steiner Tree Construction.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on30 (2): 194-204.] etc.This class algorithm easily is absorbed in locally optimal solution, causes finding the solution quality lower.
Summary of the invention
The purpose of this invention is to provide in a kind of large scale integrated circuit design around barrier global routing building method.
The present invention adopts following scheme to realize: in a kind of large scale integrated circuit design around barrier global routing building method, it is characterized in that: at first go out this wiring problem wiring diagram according to figure (Escape Graph) the Theory Construction of escaping; Then take the artificial bee colony optimization method as basic framework, use the limit in the wiring diagram to construct a quasi-optimal feasible solution; In order to realize the artificial bee colony optimization method, designed the global search strategy, based on the local searching strategy of key node, based on the coding of key node and one take the scrambler of improved heuritic approach as the basis; Particularly, it contains following steps successively:
(1) the following preset data of wiring problem is read in initialization, computing machine from input file:
Gauze information: the two-dimensional coordinate information of all pins in the gauze;
Complaint message: the two-dimensional coordinate information on 4 summits of Rectangular Obstacles;
(2) according to gauze information and complaint message, with [list of references: Ganley JL, Cohoon JP Routing a multi-terminal critical net:Steiner tree construction in the presence of obstacles.In:Circuits and Systems, 1994.ISCAS'94., 1994IEEE International Symposium on, 30May-2Jun19941994.pp113-116vol.111] in the method construct mentioned go out escape figure (Escape Graph); This escape figure is a weighted-graph, and with G=(V, E, T, ω) expression, E represents limit set and number | E|=m, V represent vertex set and number | and V|=n, the summit that pin is corresponding is called end points, and T represents that Extreme points set and number are | T|=l, ω: E-〉R +The weight mapping function on expression limit, limit weight corresponding sides are at the actual line length in wiring zone;
(3) adopt the global search method, construct NS initial solution and form the feasible solution set, wherein NS is preset value;
(4) calculate the adaptive value of each feasible solution by following formula
fitness i = Σ e ∈ S i ω ( e )
S wherein iRepresent the limit set of the corresponding steiner tree of i feasible solution;
(5) each feasible solution was as current solution x during the selection feasible solution was gathered i, carry out one time local searching strategy, its step is as follows:
(5.1) except x iOutside, from the feasible solution set, in NS-1 the solution of remainder, select arbitrarily the auxiliary x of solution of a conduct k, be divided into two kinds of situations according to auxiliary difference of separating;
If (5.1.1) x iWith x kCoding identical, adopt the global search method to re-construct a feasible solution and substitute current solution;
If (5.1.2) x iWith x kCoding not identical, select local search approach one with default LSRatio probability, select local search approach two with the 1-LSratio probability, carry out Local Search and obtain new feasible solution n iAnd calculate its adaptive value;
(5.2) at x iAnd n iThe solution that middle selection has less total line length is retained in the feasible solution set;
(6) calculate the selection probability of each feasible solution by following formula:
p i = 0.9 * fitness i Σ k = 1 NS fitness k + 0.1
(7) according to the selection probability of each feasible solution, adopt the method for roulette, from the feasible solution set, carry out NS time and select, select a solution as current solution x at every turn i, carry out one time local searching strategy, its step is as follows:
(7.1) except x iOutside, from the feasible solution set, in NS-1 the solution of remainder, select arbitrarily the auxiliary x of solution of a conduct k, be divided into two kinds of situations according to auxiliary difference of separating;
If (7.1.1) x iWith x kCoding identical, re-execute (7.1), all can't find with the auxiliary solution of current solution different coding then adopt the global search method to re-construct the alternative current solution of a feasible solution if carry out NS time (7.1);
If (7.1.2) x iWith x kCoding not identical, select local search approach one with default LSRatio probability, select local search approach two with the 1-LSratio probability, carry out Local Search and obtain new feasible solution n iAnd calculate its adaptive value;
(7.2) at x iAnd n iThe solution that middle selection has less total line length is retained in the feasible solution set;
(8) if a feasible solution has been performed Limit time default Local Search, all can not find than its better solution, then be called and abandon solution, all are abandoned and are performed the maximum solution of Local Search number of times in the solution and are called and abandon at most solution, adopt the global search method to re-construct a feasible solution and substitute and abandon at most solution in the feasible solution set;
(9) repeated execution of steps (4)~(7) are until the execution number of times of scrambler reaches default upper limit maxNFE;
(10) return the optimum solution that finds in the whole search procedure.
In an embodiment of the present invention, described coding based on key node is to be that the binary coding of n-l records key node corresponding summit in figure G in the steiner tree of feasible solution with length; The key node here refers to that the number of degrees are not less than 3 non-end points summit in the steiner tree of feasible solution.
In an embodiment of the present invention, described scrambler is to encode as input with the virtual terminal point set, constructs the steiner tree of corresponding feasible solution, and calculates its weight, draws its coding.Wherein virtual endpoint refers to expectation by the non-end points summit of the steiner tree process of feasible solution, and it is the summit that the Bit String of n-l records virtual endpoint correspondence in figure G of feasible solution to be constructed that virtual terminal point set coding refers to length.Particularly, scrambler contains following steps successively:
(1) the virtual terminal point set of input and end point set consist of the candidate point set that need to pass through, adopt Dijkstra ' s method construct to go out Thiessen polygon divides take candidate point as starting point, then the Thiessen polygon zone is corresponding one by one with candidate point, and claims that candidate point is the root node in corresponding Thiessen polygon zone; In using Dijkstra ' s method, adopted greedy random searching strategy (Greed Randomized Adaptive Search Procedure during each nearest summit of selecting not to be communicated with, GRASP), namely from the nearest vertex list that all are not communicated with, select at random a summit to be communicated with;
(2) vertex set that comprises in each Thiessen polygon zone is regarded an overtrick (SV represents the overtrick set) as, regard the limit that connects two different Thiessen polygon zones as a super limit (SE represents the set of super limit), respective path that should super limit is dated back to the path of the regional root node of place Thiessen polygon separately and is worked as the front by the two-end-point on super limit and forms, the length on super limit is defined as the weight of its respective path, super limit and overtrick construct a Weight connected graph SG (SV, SE, s ω);
(3) the minimum spanning tree MST of employing Kruskal ' s method construct figure SG (SV, SE) Sup, in using Kruskal ' s method, when selecting the super limit of minimal weight, adopted greedy random searching strategy strategy, i.e. super limit of random selection from the super limit tabulation of all minimal weight at every turn;
(4) MST SupIn super limit substitute deletion MST with respective path SupMiddle repetition limit, deletion MST SupIn all number of degrees be one non-end points summit with and incidence edge, construct the steiner tree of a feasible solution and calculate its coding.
In an embodiment of the present invention, described global search method is to realize global search by random configuration virtual terminal point set coding; Particularly, it contains following steps successively:
(1) constructing virtual end point set coding makes its every to be set to 1 with Probability p, otherwise is set to 0,
Come calculating probability p by following formula, wherein InitiRatio is preset value;
p=min(max((l-2)*InitiRatio/(n-l),1/n),(n-l)/n)
(2) with the input of this virtual terminal point set coding as scrambler, construct a feasible solution and coding thereof.
In an embodiment of the present invention, described local search approach one is the current solution x according to input iWith the auxiliary x that separates k, construct a new feasible solution n i, realize Local Search; Particularly, it contains following steps successively:
(1) calculates x iCoding and x kHamming distance D between the coding, and two different positions of coding value are set to revise candidate bit;
(2) from two identical positions of coding value, be set to revise candidate bit with probability D/ (n-l-D);
(3) constructing virtual end point set coding is so that revise the value Random assignment of candidate bit, other value and x iThe coding value is identical;
(4) with the input of this virtual terminal point set coding as scrambler, construct a feasible solution n iAnd coding.
In an embodiment of the present invention, described local search approach two is the current solution x according to input iWith the auxiliary x that separates k, construct a new feasible solution n i, realize Local Search; Particularly, it contains following steps successively:
(1) gets x iWith x kThe union of limit collection in the corresponding steiner tree constructs the subgraph G ' of G;
(2) constructing virtual end point set coding, so that its number of degrees among subgraph G ' is set to 1 greater than the corresponding positions on 2 non-end points summit, other are set to 0;
(3) with the input of this virtual terminal point set coding as scrambler, construct a feasible solution n iAnd coding.
Characteristics of the present invention: through analysis of simulation result, its quality of finding the solution obviously is better than at present newer several method, please specifically referring to table 1 and table 2.In table 1, listed result's contrast that the whole bag of tricks solves the OARSMT problem of 22 preferred circuits, the line length that has wherein comprised altogether 5 kinds of existing heuristics and a kind of Deterministic Methods acquired results, the inventive method is carried out computing to each circuit, and to list the line of shortest length of acquired results for 10 times long, and average line length and nose are long.In table 2, listed result's contrast that the whole bag of tricks solves the RSMT problem of 22 preferred circuits, the line length that has wherein comprised altogether 2 kinds of existing heuristics and a kind of Deterministic Methods acquired results, the inventive method is carried out computing to each circuit, and to list the line of shortest length of acquired results for 10 times long, and average line length and nose are long.
Table 1. the whole bag of tricks solves the line length contrast of OARSMT problem acquired results
Figure BDA00003384981300071
Huang: be Deterministic Methods, [list of references: Huang T, Young EFY (2010) Obstacle-avoiding rectilinear Steiner minimum tree construction:an optimal approach.Proceedings of the International Conference on Computer-Aided Design, pp610-613]
Liu:[list of references: Liu C-H, Kuo S-Y, Lee DT, Lin C-S, Weng J-H, Yuan S-Y (2012) Obstacle-Avoiding Rectilinear Steiner Tree Construction:A Steiner-Point-Based Algorithm.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on31 (7): 1050-1060.] the Ajwani:[list of references: Ajwani G, Chu C, Mak W-K (2011) FOARS:FLUTE Based Obstacle-Avoiding Rectilinear Steiner Tree Construction.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on30 (2): 194-204.]
Lin:[list of references: Lin CW, Chen S-Y, Chi-Feng L, Yao-Wen C, Chia-Lin Y (2008) Obstacle-Avoiding Rectilinear Steiner Tree Construction Based on Spanning Graphs.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on27 (4): 643-653.]
Li:[list of references: Li L, Young EFY (2008) Obstacle-avoiding rectilinear Steiner tree construction.Paper presented at the Proceedings of the2008IEEE/ACM International Conference on Computer-Aided Design, San Jose, California:523-528.]
Long:[list of references: Long J, Zhou H, O.MS (2008) EBOARST:An Efficient Edge-Based Obstacle-Avoiding Rectilinear Steiner Tree Construction Algorithm.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on27 (12): 2169-2182.]
The line length of runic numeral algorithm acquired results of the present invention is better than every other heuristic.
Table 2. the whole bag of tricks solves the line length contrast of RSMT problem acquired results
Figure BDA00003384981300091
GeoSteiner: be Deterministic Methods, [list of references: Warme D, Winter P, Zachariasen M (2001) GeoSteiner Software for Computing Steiner Trees.http: //www.diku.dk/hjemmesider/ansatte/martinz/geosteiner/.]
Long:[list of references: Long J, Zhou H, O.MS (2008) EBOARST:An Efficient Edge-Based Obstacle-Avoiding Rectilinear Steiner Tree Construction Algorithm.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on27 (12): 2169-2182.]
Ajwani:[list of references: Ajwani G, Chu C, Mak W-K (2011) FOARS:FLUTE Based Obstacle-Avoiding Rectilinear Steiner Tree Construction.Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on30 (2): 194-204.]
The line length of runic numeral algorithm acquired results of the present invention is better than every other heuristic.
Can reach a conclusion from above-mentioned analysis, the present invention is a kind of more effectively around barrier global routing building method.
Description of drawings
Marginal data among Fig. 1: Fig. 2,3,4;
Fig. 2: the illustrating of coding method
(1) corresponding steiner tree of feasible solution;
(2) this feasible solution is encoded accordingly;
Fig. 3: the illustrating of local search approach one
(1) the corresponding steiner tree of current solution and coding thereof;
(2) auxiliary corresponding steiner tree and the coding thereof separated;
(3) the corresponding steiner tree of new explanation and coding thereof;
(4) contrast of each coding;
Fig. 4: the illustrating of local search approach two
(1) the corresponding steiner tree of current solution and coding thereof;
(2) auxiliary corresponding steiner tree and the coding thereof separated;
(3) gained subgraph and coding thereof;
(4) the corresponding steiner tree of new explanation and coding thereof;
(5) contrast of each coding;
Fig. 5: the inventive method constructs the optimum solution of example lin17.
Embodiment
For implementation the present invention, we provide the following description of implementing about invention.
Implement computer system of the present invention: will be implemented a concrete computer system around barrier global routing building method in the designed large scale integrated circuit design of the present invention, computer system specifically describes as follows.
A personal computer (Intel Duo I53.2GHz processor, 16GB internal memory);
CentOS6.4 operating system;
The C++ programming language;
Gcc4.4.7 compiler, gdb debugging acid etc.
Be a typical combinatorial optimization problem around barrier global routing construction problem, its problem model specifically describes as follows:
Comprise each gauze pin two-dimensional coordinate information in the plane in the given gauze information, comprise four angles two-dimensional coordinate information in the plane of each Rectangular Obstacles in the given complaint message; Require pin can not drop on the inside of obstacle, but can be on the border of obstacle; Require two obstacles can mutually not superpose, but can be adjacent on the border; The problem target is, constructs one without the steiner tree that only is made of horizontal and vertical lines of any obstacle inside, is communicated with all gauze pins, makes its total line length minimum.
The present invention at first goes out this wiring problem wiring diagram according to escape figure the Theory Construction; Then take the artificial bee colony optimization method as basic framework, use the limit in the wiring diagram to construct a quasi-optimal feasible solution; In order to realize the artificial bee colony optimization method, designed the global search strategy, based on the local searching strategy of key node, based on the encoding scheme of key node and one take the scrambler of improved heuritic approach as the basis.Wherein escape figure theory and building method thereof referring to [list of references: Ganley JL, Cohoon JP Routing a multi-terminal critical net:Steiner tree construction in the presence of obstacles.In:Circuits and Systems, 1994.ISCAS'94., 1994IEEE International Symposium on, 30May-2Jun19941994.pp113-116vol.111.]. according to gauze information and complaint message, the escape figure that goes out with this escape figure the Theory Construction is a weighted-graph, with G=(V, E, T, ω) expression, E represents limit set and number | E|=m, V represent vertex set and number | and V|=n, the summit that pin is corresponding is called end points, T represents that Extreme points set and number are | T|=l, ω: E-〉and R +The weight mapping function on expression limit, limit weight corresponding sides are at the actual line length in wiring zone.The false code of the main flow process of the present invention is described below:
Figure BDA00003384981300121
Figure BDA00003384981300131
Wherein the relevant information around barrier global routing construction problem comprises gauze information and complaint message;
The adaptive value formula of each feasible solution wherein:
Figure BDA00003384981300132
Try to achieve, wherein S iRepresent the limit set of the corresponding steiner tree of i feasible solution;
The selection probability formula of each feasible solution wherein:
Figure BDA00003384981300133
Try to achieve;
Wherein the roulette method is referring to [list of references: Karaboga D, Basturk B (2007) A powerful and efficient algorithm for numerical function optimization:artificial bee colony (ABC) algorithm.J Glob Optim39 (3): 459-471.];
Wherein abandon to separate and abandon solution at most and be defined as respectively: if a feasible solution has been performed Limit time default Local Search, all can not find than its better solution, then be called and abandon solution, all are abandoned and are performed the maximum solution of Local Search number of times in the solution and are called and abandon at most solution.
A kind of encoding scheme based on key node is provided among the present invention, adopt the steiner tree of the binary bits string accurate expression feasible solution of n-l length, a non-end points summit among every bit corresponding diagram G of coding, if this summit is key point in steiner tree then is set to 1, otherwise is set to 0; Wherein key node refers to that the number of degrees are not less than 3 non-end points summit in the steiner tree of feasible solution; This coding method is so that the search volume is compacter and comprise optimum solution, and its search volume size is: Its concrete example as shown in Figure 2, example among Fig. 2 (1) has 24 summits (n=24), 4 end points (l=4) wherein, so code length is 20, No. 7 No. 10 summits key point that is steiner tree wherein, corresponding coding is shown in Fig. 2 (2), and No. 7 positions and No. 10 place values are 1, and other positions are 0.
A kind of scrambler is provided among the present invention, and it is encoded as input with the virtual terminal point set of n-l length, constructs the steiner tree of corresponding feasible solution, and calculates its weight, draws its coding.Wherein virtual endpoint refers to expectation by the non-end points summit of the steiner tree process of feasible solution, a non-end points summit among every bit corresponding diagram G of virtual terminal point set coding, if this summit be virtual endpoint then be set to 1, otherwise be set to 0.Construct a solution that can connect all virtual endpoints and satisfy the problem constraint, and have as far as possible little total weight, according to unnecessary limit in the problem constraint deletion gained solution, finally obtain a feasible solution that satisfies the problem constraint again.Wherein used Dijkstra ' s method to construct the Thiessen polygon zone; Used Kruskal ' s method to set up minimum spanning tree; In Dijkstra ' s method and Kruskal ' s method, also introduced the GRASP strategy; Binary heap and disjoint set forest structure are respectively applied to the realization of Dijkstra ' s method and Kruskal ' s method.The false code of scrambler specific implementation is described below, and its algorithm complex is Ο (mlgn).
Figure BDA00003384981300141
Figure BDA00003384981300151
A kind of global search method is provided among the present invention, realize global search by random configuration virtual terminal point set coding, in the construction process in the Bit String each probability that is set to 1 be min (max ((l-2) * InitiRatio/ (n-l), 1/n), (n-l)/n), wherein InitiRatio is preset value, and the false code of the method specific implementation is described below.
Figure BDA00003384981300152
Local search approach among the present invention according to current solution and auxiliary solution of input, is constructed a new feasible solution and is realized Local Search, has designed two kinds of local search approach among the present invention:
Local search approach one, around current solution, move at random toward the auxiliary direction of separating, go out first the virtual terminal point set coding of the feasible solution that will survey according to the code construction of current solution and auxiliary solution, call scrambler again and construct this feasible solution and coding thereof, the false code of the method specific implementation is described below:
? Method 4: local search approach one
? Input: G//escape figure information, i.e. Weight non-directed graph
? T//Extreme points set
? Sol//current solution
? AuSol//auxiliary the solution
? Output: SteinerT//gained steiner tree
1 Begin
2 Initialization n-l length mark Bit String BS
3 Coding initialization virtual terminal point set coding CBS with So1
4 Every bt among for BS
5 If Sol is coded in this position from AuSol, and upward value is different
6 Bt is set to 1
7 else
8 Bt is set to 0
9 Calculate the Hamming distance D of Sol and AuSol coding
10 Value among for BS is 0 every bt
11 If generate 0 to 1 between random number<D/ (n-l-D)
12 The bt position of BS is set to 1
13 The bt position of if BS is 1
14 If generate 0 to 1 between random number<0.5
15 The bt position negate of C_BS
16 With C_BS, G, T calls scrambler for input, obtains feasible solution SteinerT
17 Return?SteinerT.
Giving an example as shown in Figure 3 of its specific implementation, Fig. 3 (1) and Fig. 3 (2) they are respectively current solution and auxiliary steiner tree and the coding thereof of separating correspondence, and No. 11 positions are positions of current solution and auxiliary solution different value, and it is set to revise candidate bit; No. 6 the position is to separate other modification No. 11 positions of candidate bit and No. 16 positions of selecting the position of identical value according to probability D/ (n-l-D) from two with No. 16 positions; So revising candidate bit is No. 6 positions, No. 11 positions and No. 16 positions, obtaining revising the position according to random selection from revise candidate bit is No. 6 positions, namely consists of virtual terminal point set and coding thereof, virtual terminal point set code construction process shown in Fig. 3 (4); With virtual terminal point set coding input scrambler obtain new feasible solution and the coding shown in Fig. 3 (3).
Local search approach two, the virtual terminal point set that constructs the feasible solution that will survey with current solution and the auxiliary common ground of separating is encoded, and calls scrambler again and constructs this feasible solution and coding thereof, and the false code of the method specific implementation is described below.
? Method 4: local search approach two
? Input: G//escape figure information, i.e. Weight non-directed graph
? T//Extreme points set
? Sol//current solution
? AuSol//auxiliary the solution
? Output: SteinerT//gained steiner tree
1 Begin
2 Ask the subgraph G ' with the limit union of sets collection formation of Sol and two solutions of AuSol
3 Calculate the number of degrees among the G ' greater than 2 non-end points vertex set V "
4 " position corresponding to summit is set to 1 to V among the virtual terminal point set coding C_BS, otherwise is 0
5 With C_BS, G, T calls scrambler for input, obtains feasible solution SteinerT
6 Return?SteinerT.
Giving an example as shown in Figure 4 of its specific implementation, Fig. 4 (1) and Fig. 4 (2) are respectively current solution and auxiliary steiner tree and the coding thereof of separating correspondence, Fig. 4 (3) is that their limit union of sets collection obtain the number of degrees in subgraph and the mark subgraph thereof greater than 2 virtual terminal point set coding, being encoded to input with the virtual terminal point set calls scrambler and obtains new feasible solution, Fig. 4 (4) is steiner tree corresponding to new feasible solution and coding thereof, and Fig. 4 (5) is the contrast of encoding in the method implementation.
When solving the large scale integrated circuit wiring problem, preset parameter value is selected as follows:
NS=20,InitiRatio=25,LSRatio=0.1,Limit=(n-l)*2,maxNFE=30000;
Wherein parameter m axNFE can be according to the requirement of finding the solution quality is adjusted.
[list of references K. T., M. A., and V. S, " SteinLib:An updated library on Steiner tree problems in graphs.; " Konrad-Zuse-Zentrum f ¨ ur Informationstechnik Berlin2000.] in the lin17 example, use a optimum solution that the inventive method constructs as shown in Figure 5.
The above only is preferred embodiment of the present invention, and all equalizations of doing according to the present patent application claim change and modify, and all should belong to covering scope of the present invention.

Claims (6)

  1. In the large scale integrated circuit design around barrier global routing building method, it is characterized in that: at first go out this wiring problem wiring diagram according to figure (Escape Graph) the Theory Construction of escaping; Then take the artificial bee colony optimization method as basic framework, use the limit in the wiring diagram to construct a quasi-optimal feasible solution; In order to realize the artificial bee colony optimization method, designed the global search strategy, based on the local searching strategy of key node, based on the coding of key node and one take the scrambler of improved heuritic approach as the basis; Particularly, it contains following steps successively:
    (1) the following preset data of wiring problem is read in initialization, computing machine from input file:
    Gauze information: the two-dimensional coordinate information of all pins in the gauze;
    Complaint message: the two-dimensional coordinate information on 4 summits of Rectangular Obstacles;
    (2) according to gauze information and complaint message, with [list of references: Ganley JL, Cohoon JP Routing a multi-terminal critical net:Steiner tree construction in the presence of obstacles.In:Circuits and Systems, 1994.ISCAS'94., 1994IEEE International Symposium on, 30May-2Jun19941994.pp113-116vol.111] in the method construct mentioned go out escape figure (Escape Graph); This escape figure is a weighted-graph, and with G=(V, E, T, ω) expression, E represents limit set and number | E|=m, V represent vertex set and number | and V|=n, the summit that pin is corresponding is called end points, and T represents that Extreme points set and number are | T|=l, ω: E-〉R +The weight mapping function on expression limit, limit weight corresponding sides are at the actual line length in wiring zone;
    (3) adopt the global search method, construct NS initial solution and form the feasible solution set, wherein NS is preset value;
    (4) calculate the adaptive value of each feasible solution by following formula
    fitness i = Σ e ∈ S i ω ( e )
    S wherein iRepresent the limit set of the corresponding steiner tree of i feasible solution;
    (5) each feasible solution was as current solution x during the selection feasible solution was gathered i, carry out one time local searching strategy, its step is as follows:
    (5.1) except x iOutside, from the feasible solution set, in NS-1 the solution of remainder, select arbitrarily the auxiliary x of solution of a conduct k, be divided into two kinds of situations according to auxiliary difference of separating;
    If (5.1.1) x iWith x kCoding identical, adopt the global search method to re-construct a feasible solution and substitute current solution;
    If (5.1.2) x iWith x kCoding not identical, select local search approach one with default LSRatio probability, select local search approach two with the 1-LSratio probability, carry out Local Search and obtain new feasible solution n iAnd calculate its adaptive value;
    (5.2) at x iAnd n iThe solution that middle selection has less total line length is retained in the feasible solution set;
    (6) calculate the selection probability of each feasible solution by following formula:
    p i = 0.9 * fitness i Σ k = 1 NS fitness k + 0.1
    (7) according to the selection probability of each feasible solution, adopt the method for roulette, from the feasible solution set, carry out NS time and select, select a solution as current solution x at every turn i, carry out one time local searching strategy, its step is as follows:
    (7.1) except x iOutside, from the feasible solution set, in NS-1 the solution of remainder, select arbitrarily the auxiliary x of solution of a conduct k, be divided into two kinds of situations according to auxiliary difference of separating;
    If (7.1.1) x iWith x kCoding identical, re-execute (7.1), all can't find with the auxiliary solution of current solution different coding then adopt the global search method to re-construct the alternative current solution of a feasible solution if carry out NS time (7.1);
    If (7.1.2) x iWith x kCoding not identical, select local search approach one with default LSRatio probability, select local search approach two with the 1-LSratio probability, carry out Local Search and obtain new feasible solution n iAnd calculate its adaptive value;
    (7.2) at x iAnd n iThe solution that middle selection has less total line length is retained in the feasible solution set;
    (8) if a feasible solution has been performed Limit time default Local Search, all can not find than its better solution, then be called and abandon solution, all are abandoned and are performed the maximum solution of Local Search number of times in the solution and are called and abandon at most solution, adopt the global search method to re-construct a feasible solution and substitute and abandon at most solution in the feasible solution set;
    (9) repeated execution of steps (4)~(7) are until the execution number of times of scrambler reaches default upper limit maxNFE;
    (10) return the optimum solution that finds in the whole search procedure.
  2. In the large scale integrated circuit design according to claim 1 around barrier global routing building method, it is characterized in that: described coding based on key node is to be the summit that the binary coding of n-l records key node correspondence in figure G in the steiner tree of feasible solution with length; The key node here refers to that the number of degrees are not less than 3 non-end points summit in the steiner tree of feasible solution.
  3. In the large scale integrated circuit design according to claim 1 around barrier global routing building method, it is characterized in that: described scrambler is as input with virtual terminal point set coding, construct the steiner tree of corresponding feasible solution, and calculate its weight, draw its coding; Wherein virtual endpoint refers to expectation by the non-end points summit of the steiner tree process of feasible solution, and it is the summit that the Bit String of n-l records virtual endpoint correspondence in figure G of feasible solution to be constructed that virtual terminal point set coding refers to length; Particularly, scrambler contains following steps successively:
    (1) the virtual terminal point set of input and end point set consist of the candidate point set that need to pass through, adopt Dijkstra ' s method construct to go out Thiessen polygon divides take candidate point as starting point, then the Thiessen polygon zone is corresponding one by one with candidate point, and claims that candidate point is the root node in corresponding Thiessen polygon zone; In using Dijkstra ' s method, adopted greedy random searching strategy (Greed Randomized Adaptive Search Procedure during each nearest summit of selecting not to be communicated with, GRASP), namely from the nearest vertex list that all are not communicated with, select at random a summit to be communicated with;
    (2) vertex set that comprises in each Thiessen polygon zone is regarded an overtrick (SV represents the overtrick set) as, regard the limit that connects two different Thiessen polygon zones as a super limit (SE represents the set of super limit), respective path that should super limit is dated back to the path of the regional root node of place Thiessen polygon separately and is worked as the front by the two-end-point on super limit and forms, the length on super limit is defined as the weight of its respective path, super limit and overtrick construct a Weight connected graph SG (SV, SE, s ω);
    (3) the minimum spanning tree MST of employing Kruskal ' s method construct figure SG (SV, SE) Sup, in using Kruskal ' s method, when selecting the super limit of minimal weight, adopted greedy random searching strategy strategy, i.e. super limit of random selection from the super limit tabulation of all minimal weight at every turn;
    (4) MST SupIn super limit substitute deletion MST with respective path SupMiddle repetition limit, deletion MST SupIn all number of degrees be one non-end points summit with and incidence edge, construct the steiner tree of a feasible solution and calculate its coding.
  4. In the large scale integrated circuit design according to claim 1 around barrier global routing building method, it is characterized in that: described global search method is to realize global search by random configuration virtual terminal point set coding; Particularly, it contains following steps successively:
    (1) constructing virtual end point set coding makes its every to be set to 1 with Probability p, otherwise is set to 0,
    Come calculating probability p by following formula, wherein InitiRatio is preset value;
    p=min(max((l-2)*InitiRatio/(n-l),1/n),(n-l)/n)
    (2) with the input of this virtual terminal point set coding as scrambler, construct a feasible solution and coding thereof.
  5. In the large scale integrated circuit design according to claim 1 around barrier global routing building method, it is characterized in that: described local search approach one is the current solution x according to input iWith the auxiliary x that separates k, construct a new feasible solution n i, realize Local Search; Particularly, it contains following steps successively:
    (1) calculates x iCoding and x kHamming distance D between the coding, and two different positions of coding value are set to revise candidate bit;
    (2) from two identical positions of coding value, be set to revise candidate bit with probability D/ (n-l-D);
    (3) constructing virtual end point set coding is so that revise the value Random assignment of candidate bit, other value and x iThe coding value is identical;
    (4) with the input of this virtual terminal point set coding as scrambler, construct a feasible solution n iAnd coding.
  6. In the large scale integrated circuit design according to claim 1 around barrier global routing building method, it is characterized in that: described local search approach two is the current solution x according to input iWith the auxiliary x that separates k, construct a new feasible solution n i, realize Local Search; Particularly, it contains following steps successively:
    (1) gets x iWith x kThe union of limit collection in the corresponding steiner tree constructs the subgraph G ' of G;
    (2) constructing virtual end point set coding, so that its number of degrees among subgraph G ' is set to 1 greater than the corresponding positions on 2 non-end points summit, other are set to 0;
    (3) with the input of this virtual terminal point set coding as scrambler, construct a feasible solution n iAnd coding.
CN201310249724.5A 2013-06-21 2013-06-21 In a kind of VLSI Design around barrier global routing building method Expired - Fee Related CN103324796B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310249724.5A CN103324796B (en) 2013-06-21 2013-06-21 In a kind of VLSI Design around barrier global routing building method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310249724.5A CN103324796B (en) 2013-06-21 2013-06-21 In a kind of VLSI Design around barrier global routing building method

Publications (2)

Publication Number Publication Date
CN103324796A true CN103324796A (en) 2013-09-25
CN103324796B CN103324796B (en) 2016-08-10

Family

ID=49193538

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310249724.5A Expired - Fee Related CN103324796B (en) 2013-06-21 2013-06-21 In a kind of VLSI Design around barrier global routing building method

Country Status (1)

Country Link
CN (1) CN103324796B (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902772A (en) * 2014-03-28 2014-07-02 清华大学 Staggered pin structure based escape wiring method for isometric difference pairs
CN103984789A (en) * 2014-01-26 2014-08-13 福州大学 Obstacle bypassing wiring method based on optimization of shortest wire length in large-sized integrated circuit design
CN103902775B (en) * 2014-03-31 2017-02-15 福州大学 Multilayer obstacle-avoiding Steiner minimal tree construction method for very large scale integration
CN108804811A (en) * 2018-06-07 2018-11-13 福州大学 Multilayer is around barrier right angle wiring method in VLSI Design
CN109033611A (en) * 2018-07-20 2018-12-18 福州大学 A kind of wiring method of VLSI multi-terminal obstacle
CN110096823A (en) * 2019-05-08 2019-08-06 深圳职业技术学院 Based on binary-coded digit integrated circuit wiring method and terminal device
CN111582274A (en) * 2020-05-11 2020-08-25 南京航空航天大学 Wire wiring virtual guiding method based on marker
CN113255284A (en) * 2021-05-30 2021-08-13 上海立芯软件科技有限公司 Rapid local disconnection redistribution method in global wiring
CN113283208A (en) * 2021-05-26 2021-08-20 福州大学 Circuit division local search method based on dynamic convex
CN113947057A (en) * 2021-12-20 2022-01-18 南京集成电路设计服务产业创新中心有限公司 Complete optimal Steiner tree construction method based on lookup table
CN115801177A (en) * 2023-02-06 2023-03-14 江苏华存电子科技有限公司 Signal offset calibrator
CN116402010A (en) * 2023-05-10 2023-07-07 南京邮电大学 Multi-instantiation block top-level wiring method based on Steiner tree algorithm

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588381A (en) * 2004-07-06 2005-03-02 清华大学 Rectangular steiner tree method of super large size integrated circuit avoiding barrier
CN1604094A (en) * 2004-11-16 2005-04-06 清华大学 Right angle wiring tree method for wire length optimized obstacle passing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588381A (en) * 2004-07-06 2005-03-02 清华大学 Rectangular steiner tree method of super large size integrated circuit avoiding barrier
CN1604094A (en) * 2004-11-16 2005-04-06 清华大学 Right angle wiring tree method for wire length optimized obstacle passing

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HAO ZHANG,DONGYI YE: "An Artificial Bee Colony Algorithm Approach for Routing in VLSI", 《ADVANCES IN SWARM INTELLIGENCE,THIRD INTERNATIONAL CONFERENCE, ICSI 2012,PART I》 *
LIANG LI,EVANGELINE F. Y. YOUNG: "Obstacle-avoiding rectilinear Steiner tree construction", 《ICCAD "08 PROCEEDINGS OF THE 2008 IEEE/ACM INTERNATIONAL CONFERENCE ON COMPUTER-AIDED DESIGN》 *
WEN-LIANG ZHONG ET AL.: "A novel particle swarm optimization for the Steiner tree problem in graphs", 《EVOLUTIONARY COMPUTATION, 2008》 *
ZHENHUA ZHENG,ET AL.: "An Artificial Bee Colony Optimization Algorithm for Multicast Routing", 《ICACT2012》 *

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103984789A (en) * 2014-01-26 2014-08-13 福州大学 Obstacle bypassing wiring method based on optimization of shortest wire length in large-sized integrated circuit design
CN103984789B (en) * 2014-01-26 2017-01-25 福州大学 Obstacle bypassing wiring method based on optimization of shortest wire length in large-sized integrated circuit design
CN103902772A (en) * 2014-03-28 2014-07-02 清华大学 Staggered pin structure based escape wiring method for isometric difference pairs
CN103902772B (en) * 2014-03-28 2017-01-18 清华大学 Staggered pin structure based escape wiring method for isometric difference pairs
CN103902775B (en) * 2014-03-31 2017-02-15 福州大学 Multilayer obstacle-avoiding Steiner minimal tree construction method for very large scale integration
CN108804811A (en) * 2018-06-07 2018-11-13 福州大学 Multilayer is around barrier right angle wiring method in VLSI Design
CN108804811B (en) * 2018-06-07 2021-11-30 福州大学 Multilayer barrier-bypassing right-angle wiring method in large-scale integrated circuit design
CN109033611A (en) * 2018-07-20 2018-12-18 福州大学 A kind of wiring method of VLSI multi-terminal obstacle
CN109033611B (en) * 2018-07-20 2023-04-07 福州大学 Routing method for VLSI multi-end-point wire network around obstacles
CN110096823A (en) * 2019-05-08 2019-08-06 深圳职业技术学院 Based on binary-coded digit integrated circuit wiring method and terminal device
WO2020224036A1 (en) * 2019-05-08 2020-11-12 深圳职业技术学院 Digital integrated circuit wiring method based on binary code, and terminal device
JP7122785B2 (en) 2019-05-08 2022-08-22 深▲セン▼▲職▼▲業▼技▲術▼学院 Digital integrated circuit wiring method and terminal device using binary code
JP2021532605A (en) * 2019-05-08 2021-11-25 深▲セン▼▲職▼▲業▼技▲術▼学院 Wiring method of digital integrated circuit by binary code and terminal device
CN110096823B (en) * 2019-05-08 2022-10-04 深圳职业技术学院 Digital integrated circuit wiring method based on binary coding and terminal equipment
CN111582274A (en) * 2020-05-11 2020-08-25 南京航空航天大学 Wire wiring virtual guiding method based on marker
CN111582274B (en) * 2020-05-11 2021-05-18 南京航空航天大学 Wire wiring virtual guiding method based on marker
CN113283208A (en) * 2021-05-26 2021-08-20 福州大学 Circuit division local search method based on dynamic convex
CN113255284A (en) * 2021-05-30 2021-08-13 上海立芯软件科技有限公司 Rapid local disconnection redistribution method in global wiring
CN113255284B (en) * 2021-05-30 2023-07-18 上海立芯软件科技有限公司 Quick local disconnecting and re-distributing method in global wiring
CN113947057A (en) * 2021-12-20 2022-01-18 南京集成电路设计服务产业创新中心有限公司 Complete optimal Steiner tree construction method based on lookup table
CN115801177A (en) * 2023-02-06 2023-03-14 江苏华存电子科技有限公司 Signal offset calibrator
CN115801177B (en) * 2023-02-06 2023-06-20 江苏华存电子科技有限公司 Signal offset calibrator
CN116402010A (en) * 2023-05-10 2023-07-07 南京邮电大学 Multi-instantiation block top-level wiring method based on Steiner tree algorithm
CN116402010B (en) * 2023-05-10 2023-11-21 南京邮电大学 Multi-instantiation block top-level wiring method based on Steiner tree algorithm

Also Published As

Publication number Publication date
CN103324796B (en) 2016-08-10

Similar Documents

Publication Publication Date Title
CN103324796A (en) Obstacle-avoiding rectilinear Steiner tree construction method in large-scale integrated circuit design
Qi et al. Accurate prediction of detailed routing congestion using supervised data learning
Dai et al. NCTU-GR: Efficient simulated evolution-based rerouting and congestion-relaxed layer assignment on 3-D global routing
CN104050245B (en) A kind of social network influence power maximization approach based on liveness
CN103984789B (en) Obstacle bypassing wiring method based on optimization of shortest wire length in large-sized integrated circuit design
CN106709503A (en) Large spatial data clustering algorithm K-DBSCAN based on density
CN105338540A (en) Base station data modeling method and terminal
Huang et al. Application-specific network-on-chip synthesis with topology-aware floorplanning
Tian et al. Triple patterning aware detailed placement with constrained pattern assignment
Chiou et al. Circular-contour-based obstacle-aware macro placement
CN106709119A (en) FPGA chip wiring method
CN104267936A (en) Semantic tree based asynchronous dynamic push-down network reachability analysis method
Tusi et al. Using ABC and RRT algorithms to improve mobile robot path planning with danger degree
US9928331B2 (en) Method and control device for circuit layout migration
Landau et al. The rotor–router model on regular trees
CN116307325A (en) Line planning method and device for power distribution network, electronic equipment and storage medium
Barlow I–Loop Erased Walks and Uniform Spanning Trees
Turki et al. Iterative routing algorithm of inter-FPGA signals for multi-FPGA prototyping platform
JP2008027302A (en) Layout evaluation device
Samanta et al. A provably tight delay-driven concurrently congestion mitigating global routing algorithm
Miller et al. Embedding-based placement of processing element networks on FPGAs for physical model simulation
CN106330559A (en) Complex network topology characteristic parameter calculation method and system based on MapReduce
CN107103381A (en) A kind of method and system for planning of data center
Lee et al. Wire type assignment for FPGA routing
Zhu et al. Energy and switch area optimizations for FPGA global routing architectures

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20160810

Termination date: 20200621

CF01 Termination of patent right due to non-payment of annual fee