CN100454316C - Topological structure optimization method of clock tree - Google Patents

Topological structure optimization method of clock tree Download PDF

Info

Publication number
CN100454316C
CN100454316C CNB2006100256920A CN200610025692A CN100454316C CN 100454316 C CN100454316 C CN 100454316C CN B2006100256920 A CNB2006100256920 A CN B2006100256920A CN 200610025692 A CN200610025692 A CN 200610025692A CN 100454316 C CN100454316 C CN 100454316C
Authority
CN
China
Prior art keywords
node
topological structure
cost
optimization
clock
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.)
Expired - Fee Related
Application number
CNB2006100256920A
Other languages
Chinese (zh)
Other versions
CN1831830A (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.)
Fudan University
Original Assignee
Fudan 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 Fudan University filed Critical Fudan University
Priority to CNB2006100256920A priority Critical patent/CN100454316C/en
Publication of CN1831830A publication Critical patent/CN1831830A/en
Application granted granted Critical
Publication of CN100454316C publication Critical patent/CN100454316C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

The present invention belongs to the technical field of electron, more specifically a topological structure optimization method of a clock distribution circuit in a very large-scale integrated circuit. The method can input topological relations generated by any other methods and the topological structure is partially revised in the process of forming a clock tree to optimize expenses. Each optimization process begins from a leaf node of the clock tree to partially adjust all nodes by utilizing the conversion operation of binary trees and completes to upward root nodes. The optimization processes are iteratively carried out until the expenses can not be further decreased. The method of the invention has the advantages of strong universality, high efficiency, low expense ratio from 6 to 10 percent, high-efficient treatment for the clock wiring problem of the very large-scale integrated circuit, favorable expandability and combination with other optimization strategies to try best to obtain an optimal solution.

Description

A kind of topological structure optimization method of clock trees
Technical field
The invention belongs to electronic technology field, be specifically related to a kind of topological structure optimization method of VLSI (very large scale integrated circuit) clock trees based on local correction.
Technical background
Along with the develop rapidly of integrated circuit (IC) design and manufacturing technology level, integrated circuit technique has entered the sub-micro epoch, and high frequency, high-speed, low-power consumption become needs the target that realizes in the chip design.The scale of high frequency, high performance integrated circuit such as SOC (system on a chip) (SoC) constantly enlarges, the interconnect delay on the chip between the device considerably beyond the device intrinsic postpone, the quality that causes the clock distributed circuit increases day by day to the performance impact of SoC.Therefore when design clock distributed circuit, need make clock signal receive end points (sink) on the one hand, guarantee that circuit is according to normal sequential working by specifying deviation to arrive clock; On the other hand, the raising that must consider chip integration has proposed more strict requirement to the design margin of clock distributed circuit, need adjust topological structure according to its expense (as line length, area, power consumption etc.) assessment, to reach the purpose of optimization.
The clock distributed circuit generally adopts tree structure, is called clock trees.In these years, research field has proposed many clock trees wirings and topological structure optimization algorithm, is summarized as follows:
(1) early stage algorithm is divided or coupling based on how much, can only satisfy the line length balance, as mean value and median algorithm (MMM)
(2) improve algorithm, considered the delay balance, accomplished zero time lag wiring.Merge and postpone to embed algorithm DME[2] be its representative, also be widely used up to now, but it needs a topological relation as input.
(3) recent algorithm concentrates on how to optimize topological structure with on the expense that reduces clock trees, by in construction process, taking some optimized Measures, try hard to after structure is finished, just obtain the clock trees of an expense minimum, as based on the construction algorithm of " bunch group " etc.
But, just because of clock trees also just is through with at the back optimizing process that finishes of structure once, so these algorithms fail fully to excavate the possibility of solution space.
At this situation, the present invention proposes a kind of local correction method of optimizing the clock trees topological structure.This method can be accepted topological relation that any other method produces as input, in the clock trees construction process by its topological structure is carried out local correction with the optimization expense.Each optimizing process utilizes the binary tree map function to make local the adjustment from the leaf node of clock trees to all nodes, finishes after upwards proceeding to root node.The optimizing process iteration is carried out, till expense can not further reduce again.The increment of cost calculation mode guarantees that optimizing process carries out fast, finally converges on the locally optimal solution, therefore can obtain a topological structure of optimizing than former topological relation.There is not this type of Optimizing operation strategy to occur at present in the world.
List of references:
[1]Jackson?M?A?B,Srinivasan?A,and?Kuh?E?S.Clock?routing?for?high-performanceICs[C],in?Proceedings?of?27th?Design?Automation?Conference,Orlando,1990,pp.573-579
[2]Boese?K?D,Kahng?A?B.Zero-skew?clock?routing?trees?with?minimum?wirelength[C],in?Proceedings?of?Fifth?Annual?IEEE?International?ASIC?Conference?andExhibit,Rochester,1992,pp.17-21
[3]Edahiro?M.A?clustering?based?optimization?algorithm?in?zero-skew?routings[C],in?Proceedings?of?30th?Design?Automation?Conference,1993,pp.612-616
[4]Cormen?T?H,Leiserson?C?E?and?Rivest?R?L.Chapter?13Section?2:Rotations,inIntroduction?to?Algorithms[M],MIT?press,1990
[5]Lucas?J?M,Baronaigien?D?R?van?and?Ruskey?F.On?rotations?and?the?generationof?binary?trees[J],in?Journal?of?Algorithms,1993,15(3),pp.343-366
Summary of the invention
The objective of the invention is to propose a kind of can be with the VLSI (very large scale integrated circuit) clock trees topological structure optimization method of any clock topological relation as input, realization expense minimum.
The clock trees topological structure optimization method that the present invention proposes is a kind of local correction method, is by input clock tree topology relation being carried out the local correction based on the binary tree map function, thereby optimizes a kind of novel method of clock trees expense.
The proposition of problem: be located at the set of given n point on the plane, its topological structure is T, and v is certain node among the T, and each node all comprises left child node and two child nodes of right child node (may be empty node), and the expense of T is cost (T); Our optimization aim is to adjust by the annexation to v and child node thereof, thereby obtains a T that cost is less.
The present invention is as follows to the step that the clock trees topological structure is optimized:
1, at first utilizes the DME algorithm operation steps in " merging " stage, generate the merging line segment of all node correspondences, and calculate the cost information of each node of storage;
2, utilize local adjustment technology to come loop iteration then, ask the expense optimum solution.The step of each Optimizing operation is identical; In Optimizing operation, upwards each node is judged and determines whether adjust the end of from, wherein the step that each node is operated is also identical.Specify the step of node in certain being finished an Optimizing operation below:
Step 1: if v is a leaf node, perhaps the left and right sides child node of v is leaf node, returns layer operation;
Step 2: the left child node to v carries out part adjustment operation;
Step 3: the right child node to v carries out part adjustment operation;
Step 4: v is carried out local adjustment of " trial " property operate.So-called " trial " property, refer to really not carry out and adjust operation, just according to the merging line segment and the cost value (being collectively referred to as topology information) of storing, begin upwards up to root node from the child node of v, calculate the increment of cost of adjusting the back clock trees, and in computation process, only need consider the node that those topology informations can change along road test, then just take out its value for the constant node of those topology informations and bring calculating into; Use when topology information last time only is next calculating, need not store.This account form is called increment of cost and calculates and " part " DME method.
Above-mentioned local adjustment behaviour has three kinds of modes of operation being used always based on the binary tree conversion, is respectively:
(a) rotation of rotary manipulation binary tree comprises and turning right and left-hand rotation dual mode [4].When node x is used the right-hand rotation operation, need to guarantee that its left child node y is not empty node, the operation of turning right is that pivot turns right with the connection of x and y, makes y become new " root node " of subtree, and x becomes the right child node of y and the former right child node of y becomes the left child node of x.Turn left operation similarly.
(b) swap operation is the subtree transposition that certain two node in the binary tree are connected below together with them.Swap operation just will belong to two child node transpositions of same father node only as the means of supplementing out economy of rotary manipulation in present technique.
(c) flip operations flip operation is applied to the H tree the earliest, changes the annexation of four fixed nodes in position by the direction that changes letter " H ", therefrom selects the structure of line length minimum.We with its abstract be adjustment to topological structure: the left side of the left child node of routing node x and the left side of the right child node of x, or the right son of the right child node of x.
3, judge after finishing when increment of cost calculates,, just really carry out rotation or turning operation, and still use the topology information of the node that the change of " part " DME method changes if its value, illustrate that the local correction operation can reduce expense for negative.So far among the T in certain the local correction Optimizing operation of node v finish.
4, utilize the step in DME algorithm " embedding " stage to select to embed point at last, connect up according to the topological structure after optimizing again, can obtain the clock trees of a Cost Optimization.
The characteristics of inventive principle are:
(1) having proposed a kind of new topological structure optimization strategy, is not the use that is confined to optimisation technique in optimizing process, but by the repeatedly loop iteration of initial topology structure being found the solution and solution space is made expansion, thereby select optimization solution therein.
(2) consider the locality of clock trees, i.e. the unlikely meeting of clock end points of two apart from each others becomes " neighbours " node, and the local correction method is a wise selection.The clock trees topological structure adopts binary tree structure usually, so the binary tree conversion is applicable to local correction.How much demonstrating visuals of these operations are obvious, not complicated, so be easy to realize.
(3) increment of cost calculates with " part " DME method and provides assurance for the efficient operation of operating, and the expense of clock trees can quickly converge on an optimization solution, and the algorithm complex of this technology only is 0 (nlogn).
The present invention has the following advantages:
(1) method highly versatile, the efficient height.
The optimisation strategy of loop iteration guarantees that the expense of the clock trees of input topological structure can converge on the optimization solution arbitrarily, has jumped out the restriction of optimisation technique itself, therefore can the topological structure that obtain after dividing through the additive method topology be optimized again.The delay model of this method and employing is irrelevant, both can be used for linear model and also can be used for Elmore time delay model, can both be optimized the result preferably, and expense reduces ratio and reaches 6 ~ 10%.Can handle the situation of the clock zone that comprises up to ten thousand clocks reception end points, processing speed is very efficient, thereby can effectively handle ultra-large clock routing problem.
(2) be with good expansibility.
This method can be applied to engineering preferably and change in the customization (ECO), and after trickle change took place in designing requirement, the deviser need not start anew to redesign, and need only utilize " part " DME technology that the node on some individual path is made corresponding change.This method can also combine with other optimisation strategy such as simulated annealing strategy, makes every effort to obtain optimum solution.
Description of drawings
Fig. 1 is three kinds of binary tree map function diagrams.Wherein, (a) rotary manipulation; (b) swap operation; (c) turning operation.
Fig. 2 is that applying portion " DME " technology was carried out increment of cost and calculated after node x was carried out the operation of turning right.
Fig. 3 carries out the result that the topology generation obtains for the clock that 20 are generated at random receives end points.Wherein, (a) MMM adds the initial topology structure (total line length 11488) that the DME algorithm generates; (b) topological structure of the optimization that obtains after the local correction (total line length 8655 is optimized ratio 24.66%).
Fig. 4 carries out the topological structure that topology is divided and local correction obtains for 500 sink points that generate are at random used linear model.Wherein, (a) for MMM adds the initial topology structure that the DME algorithm generates, (b) topological structure for obtaining after the local correction.
Fig. 5 carries out the topological structure that topology is divided and local correction obtains for standard use-case s15850 (ISCAS89 benchmark) being used Elmore time delay model.Wherein, (a) for MMM adds the initial topology structure that the DME algorithm generates, (b) be the topological structure of the optimization that obtains after the local correction.
Embodiment
Further specify the present invention below by specific embodiment:
On the known SoC chip of a physics and electrical parameter, the position of clock source and the set of clock receiving end point is determined.After carrying out the topology division someway, obtain clock trees initial topology relation, as shown in Figure 2.
In carrying out certain bottom-up local correction optimizing process, suppose that current operating point is node x.Earlier node x is carried out " trial " right-hand rotation operation, and along the topology information of calculating the node that changes on the road direction, obtain the increment of cost of whole tree after arriving root node, topological structure maintains the original state in computation process.Then node x is carried out similarly " trial " and turn left to operate, calculate the corresponding cost increment.From two increment of cost, select little that, judge that again it is positive and negative,, illustrate that rotary manipulation is helpless to reduce expense, next node x is carried out " trial " turning operation, do same judgement after obtaining increment of cost if just; If negative, then node x is carried out real rotary manipulation (being right-hand rotation in the example), will change the result that the topological structure shape obtains a Cost Optimization this moment.Three kinds of operations shown in Figure 1 have been used during local correction.When two branches of certain child node of node x are uneven, will use swap operation exchange left and right sides branch, make the MAXPATHLEN of the branch that will rotate bigger.
Table 1, table 2 are respectively that random test example and standard testing use-case (IBM and ISCAS89 benchmarks) are carried out after topology generates and optimize, total line length, MAXPATHLEN, minimum path length and the statistics of working time tabulation (wherein MMM+DME represents that in conjunction with MMM and DME algorithm, MMM+LRFDME represents in conjunction with MMM and local correction technique).
The topology generation of table 1 random test example and optimization is * as a result
Figure C20061002569200071
(every index is the mean value of 100 operation results in the * table)
The topology of table 2 standard testing use-case generates and the optimization result
Figure C20061002569200072
Experimental result has fully shown the validity of local correction technology.Utilize the MMM+DME algorithm to carry out topology and generate, total line length of clock trees has obtained optimization, but the local correction technology can also further be made optimization.Generating test case at random and adopting under the situation of linear model, the distribution of point is more even, compares the total line length of MMM+DME algorithm after the application local correction technology and has reduced 6~8%.Adopt Elmore time delay model to carry out topology to the standard testing use-case and divide, the local correction technology is compared with the MMM+DME algorithm, and total line length can reduce 6~10%, has also diminished the time delay from the clock source to clock receiving end point simultaneously.In addition, experimental result shows, uses the process of local correction technology not complicated, and the expense of clock trees can rapidly converge on the optimization solution.Obtain total line length of 6~10% and reduce ratio in short working time, the effect of local correction technology is fairly obvious.

Claims (2)

1, a kind of topological structure optimization method of clock trees is located at given n set of putting on the plane, and its topological structure is T, and v is certain node among the T, and each node all comprises left child node and two child nodes of right child node, and the expense of T is cost (T); Optimization aim is to adjust by the annexation to v and child node thereof, thereby obtains a T that cost is less; Its feature is as follows in concrete steps:
(1) at first utilizes the DME algorithm operation steps in " merging " stage, generate the merging line segment of all node correspondences, and calculate the cost information of each node of storage;
(2) utilize local adjustment technology to come loop iteration then, ask the expense optimum solution; The step of each Optimizing operation is identical; In Optimizing operation, upwards each node is judged and determines whether adjust the end of from, wherein the step that each node is operated is also identical; Here, to node in certain finish an Optimizing operation step be:
Step 1: if v is a leaf node, perhaps the left and right sides child node of v is leaf node, returns layer operation;
Step 2: the left child node to v carries out part adjustment operation;
Step 3: the right child node to v carries out part adjustment operation;
Step 4: v is carried out local adjustment of " trial " property operate: according to the merging line segment and the cost value of storage, begin upwards up to root node from the child node of v, calculate the increment of cost of adjusting the back clock trees, and in computation process, only need consider the node that those topology informations can change along road test, then just take out its value for the constant node of those topology informations and bring calculating into; Use when topology information last time only is next calculating, need not store; This account form is called increment of cost and calculates and " part " DME method;
(3) after finishing, increment of cost calculating judges, if its value is for negative, illustrate that the local correction operation can reduce expense, just real rotation or the turning operation carried out, and still use " part " DME method to change the topology information of the node that changes, so far among the T in certain the local correction Optimizing operation of node v finish;
(4) utilize the step in DME algorithm " embedding " stage to select to embed point at last, connect up according to the topological structure after optimizing again, can obtain the clock trees of a Cost Optimization.
2, clock trees topological structure optimization method according to claim 1 is characterized in that the said local routine operation that operation is based on the binary tree conversion of adjusting, and adopts in the following method of operating any:
(1) rotary manipulation;
(2) swap operation;
(3) turning operation.
CNB2006100256920A 2006-04-13 2006-04-13 Topological structure optimization method of clock tree Expired - Fee Related CN100454316C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100256920A CN100454316C (en) 2006-04-13 2006-04-13 Topological structure optimization method of clock tree

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100256920A CN100454316C (en) 2006-04-13 2006-04-13 Topological structure optimization method of clock tree

Publications (2)

Publication Number Publication Date
CN1831830A CN1831830A (en) 2006-09-13
CN100454316C true CN100454316C (en) 2009-01-21

Family

ID=36994124

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100256920A Expired - Fee Related CN100454316C (en) 2006-04-13 2006-04-13 Topological structure optimization method of clock tree

Country Status (1)

Country Link
CN (1) CN100454316C (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101729353B (en) * 2008-11-03 2012-04-04 华为技术有限公司 Method, device and system of network topology layout
CN102567557B (en) * 2010-12-20 2014-07-09 国际商业机器公司 Method and device for constructing clock tree used for integrated circuit design
CN107300948A (en) * 2016-04-14 2017-10-27 飞思卡尔半导体公司 Integrated circuit with multidigit clock gating unit
CN107835175B (en) * 2017-11-09 2020-09-22 深圳市云盾科技有限公司 Network connection tracking method adopting balanced binary tree algorithm
CN108256189B (en) * 2018-01-06 2021-08-03 嘉兴倚韦电子科技有限公司 Efficient clock tree physical position optimization method for semi-custom back-end design of integrated circuit
CN110213091B (en) * 2019-05-23 2021-06-04 复旦大学 Automatic topological method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651232B1 (en) * 1998-11-05 2003-11-18 Monterey Design Systems, Inc. Method and system for progressive clock tree or mesh construction concurrently with physical design
CN1560915A (en) * 2004-02-16 2005-01-05 复旦大学 Clock network wired manhattan planar cutting line generating method
CN1574628A (en) * 2003-06-12 2005-02-02 安捷伦科技有限公司 Method and apparatus for clock gating clock trees to reduce power dissipation
CN1822008A (en) * 2006-03-30 2006-08-23 复旦大学 Topological structure optimizing method of clock tree

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6651232B1 (en) * 1998-11-05 2003-11-18 Monterey Design Systems, Inc. Method and system for progressive clock tree or mesh construction concurrently with physical design
CN1574628A (en) * 2003-06-12 2005-02-02 安捷伦科技有限公司 Method and apparatus for clock gating clock trees to reduce power dissipation
CN1560915A (en) * 2004-02-16 2005-01-05 复旦大学 Clock network wired manhattan planar cutting line generating method
CN1822008A (en) * 2006-03-30 2006-08-23 复旦大学 Topological structure optimizing method of clock tree

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
一种VLSI零偏差时钟线网布线算法. 葛海通,严晓浪.电路与系统学报,第4卷第1期. 1999
一种VLSI零偏差时钟线网布线算法. 葛海通,严晓浪.电路与系统学报,第4卷第1期. 1999 *
一种有效的变线宽时钟布线算法. 李芝燕,严晓浪.微电子学,第29卷第3期. 1999
一种有效的变线宽时钟布线算法. 李芝燕,严晓浪.微电子学,第29卷第3期. 1999 *

Also Published As

Publication number Publication date
CN1831830A (en) 2006-09-13

Similar Documents

Publication Publication Date Title
CN100454316C (en) Topological structure optimization method of clock tree
Mendoza et al. NSGA and SPEA applied to multiobjective design of power distribution systems
CN112995289B (en) Internet of vehicles multi-target computing task unloading scheduling method based on non-dominated sorting genetic strategy
CN103324774A (en) Processor performance optimization method based on clock planning deviation algorithm
CN111465944A (en) Graphical neural network system for generating a structured representation of an object
CN103955864A (en) Power system multi-target differentiation planning method based on improved harmony search algorithm
CN103605863B (en) The planing method of integrated circuit clock grid trunk size
CN112464611B (en) Automatic PCB wiring system based on cloud-end collaborative intelligent processing
CN105205205A (en) Method for FPGA coarse-grained parallel wiring based on optimal division of netlist position information
CN112395822B (en) Time delay driven non-Manhattan structure Steiner minimum tree construction method
Jun et al. Partial connection-aware topology synthesis for on-chip cascaded crossbar network
CN115859899A (en) Method for integrated circuit standard unit layout migration with multiple driving capacities
Ahmadi et al. Analog layout placement for FinFET technology using reinforcement learning
CN1822008A (en) Topological structure optimizing method of clock tree
CN115983187A (en) Multi-strategy-based layer distribution method considering bus deviation
JPH07230485A (en) Method and device for logic synthesis
CN110020456A (en) The method for gradually generating FPGA realization using the similarity searching based on figure
Wang et al. A survey of FPGA placement algorithm research
Gorissen et al. Automatic model type selection with heterogeneous evolution: An application to rf circuit block modeling
Forno et al. A parallel hardware architecture for quantum annealing algorithm acceleration
CN112217707B (en) Method, apparatus and medium for evaluating quality of integrated circuit clock tree network
Chang et al. Flexible multiple-objective reinforcement learning for chip placement
CN112364599A (en) Fixed frame circuit layout planning method
Zhao et al. Signal-Division-Aware Analog Circuit Topology Synthesis Aided by Transfer Learning
Jing et al. UTACO: A unified timing and congestion optimization algorithm for standard cell global routing

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090121

Termination date: 20110413