JPH08213468A - Automatic layout method for semiconductor integrated circuits - Google Patents
Automatic layout method for semiconductor integrated circuitsInfo
- Publication number
- JPH08213468A JPH08213468A JP7039002A JP3900295A JPH08213468A JP H08213468 A JPH08213468 A JP H08213468A JP 7039002 A JP7039002 A JP 7039002A JP 3900295 A JP3900295 A JP 3900295A JP H08213468 A JPH08213468 A JP H08213468A
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- block
- critical
- path
- calculating
- 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.)
- Pending
Links
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
(57)【要約】
【目的】遅延を考慮した配置方法において、クリティカ
ルブロックを自動的に駆動能力の高いブロックに置き換
える場合、配線遅延に対し最も有効なクリティカルブロ
ックから置き換えて遅延を満足するまでにブロックを置
き換える処理及び置き換えるブロック数を必要最低限に
する配置を行う。
【構成】自動配置を行った後、配線長を算出して配線遅
延値を算出し、クリティカルパスを抽出し、クリティカ
ルブロックを抽出し、クリティカルブロックのパスの密
度を算出し、パスの密度が最も高いクリティカルブロッ
クを自動的に駆動能力の高いブロックに置き換え(「バ
ッファサイジング」という)、配線長、配線遅延値を算
出し、遅延制約を満足しているか判断し、満足していな
い場合にはパスの密度が次に高いクリティカルブロック
を抽出し、再度バッファサイジングを行う。
(57) [Abstract] [Purpose] When a critical block is automatically replaced with a block having a high driving capability in a placement method that takes delay into account, it is necessary to replace the critical block that is most effective for the wiring delay until the delay is satisfied. A process for replacing blocks and an arrangement that minimizes the number of blocks to be replaced are performed. [Configuration] After performing automatic placement, the wiring length is calculated, the wiring delay value is calculated, the critical path is extracted, the critical block is extracted, and the path density of the critical block is calculated. The high critical block is automatically replaced with a block with high driving ability (called "buffer sizing"), the wiring length and the wiring delay value are calculated, it is judged whether the delay constraint is satisfied, and if it is not satisfied, the path is passed. The critical block with the next highest density is extracted and buffer sizing is performed again.
Description
【0001】[0001]
【産業上の利用分野】本発明は、半導体集積回路の自動
配置方式に関し、特に機能ブロック間の接続の遅延を考
慮する場合の自動配置方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an automatic placement system for semiconductor integrated circuits, and more particularly to an automatic placement system in consideration of a connection delay between functional blocks.
【0002】[0002]
【従来の技術】近年、半導体集積回路は高集積化、大規
模化が進み、これに伴う配線幅の縮小は配線抵抗を増大
させている。このため、配線抵抗と配線容量の積に比例
する配線の遅延時間も増大化している。2. Description of the Related Art In recent years, semiconductor integrated circuits have become highly integrated and large-scaled, and the reduction of the wiring width accompanying this has increased the wiring resistance. Therefore, the delay time of the wiring, which is proportional to the product of the wiring resistance and the wiring capacitance, is also increasing.
【0003】配線の遅延時間が増大することにより、特
にタイミングが重要なネットにおいて、誤動作を起こす
危険性がある。これを防ぐためにも、特にタイミングが
重要なネット上のブロックについては、配線遅延値に注
意しながら配置配線する必要がある。There is a risk of malfunction due to an increase in the delay time of the wiring, especially in a net where timing is important. In order to prevent this, it is necessary to place and route the blocks on the net in which timing is particularly important while paying attention to the wiring delay value.
【0004】従来の自動配置システムとして、例えば特
開平3−266082号公報には、配置前にクリティカ
ルパス上のクリティカルブロックを抽出した後、そのク
リティカルブロックをインタラクティブに配置すること
により、配線遅延値を満足させるようにした構成が開示
されている。As a conventional automatic placement system, for example, in Japanese Patent Laid-Open No. 3-266082, a wiring delay value is calculated by extracting a critical block on a critical path before placement and then placing the critical block interactively. Disclosed configurations have been disclosed.
【0005】すなわち、図4に示すように、まず機能ブ
ロック間の接続関係を示す接続情報を記憶し(ステップ
21)、クリティカルパス(始まりのブロックのソース
ピンと終りのブロックのロードピン)を指定する(ステ
ップ22)。That is, as shown in FIG. 4, first, the connection information indicating the connection relationship between the functional blocks is stored (step 21), and the critical path (the source pin of the starting block and the load pin of the ending block) is designated (step 21). Step 22).
【0006】次に、格納された接続情報に基づいてソー
スピンに接続されているパスを全てトレースし、そのパ
スの中からロードピンに接続しているクリティカルパス
を抽出する(ステップ23)。Next, all the paths connected to the source pins are traced based on the stored connection information, and the critical paths connected to the load pins are extracted from the paths (step 23).
【0007】そして、クリティカルパス上のブロックを
クリティカルブロックとして抽出する(ステップ2
4)。Then, a block on the critical path is extracted as a critical block (step 2
4).
【0008】抽出されたクリティカルブロックを、回路
制約条件を満足するようにその接続順にインタラクティ
プに配置する(ステップ25)。The extracted critical blocks are arranged interactively in the order of connection so that the circuit constraint conditions are satisfied (step 25).
【0009】次に、クリティカルブロックの配置情報と
接続関係より予測配線長を算出し(ステップ26)、配
線遅延値を算出する(ステップ27)。Next, the predicted wiring length is calculated from the arrangement information of the critical block and the connection relationship (step 26), and the wiring delay value is calculated (step 27).
【0010】配線遅延値が回路制約条件の制限値以下に
なるようにブロックを配置できたら、残りの(すなわ
ち、回路制約の厳しくない通常の)ブロックについて自
動配置を行う(ステップ28)。When the blocks can be arranged so that the wiring delay value becomes equal to or less than the limit value of the circuit constraint condition, automatic placement is performed for the remaining (that is, a normal block where the circuit constraint is not severe) (step 28).
【0011】しかし、上記従来例のように、配置の段階
だけで配線遅延値を考慮しても配線を実行した結果が配
置の段階での結果と異なり、配線遅延値を満足しない場
合がある。このような場合、配線までの処理を考慮し、
クリティカルパスに重み付けを行ってから配置配線を行
うことにより、配線遅延値を満足するようにしていた。However, as in the above-mentioned conventional example, even if the wiring delay value is taken into consideration only at the placement stage, the result of executing the wiring may be different from the result at the placement stage and may not satisfy the wiring delay value. In this case, consider the process up to wiring,
The wiring delay value is satisfied by performing the placement and routing after weighting the critical paths.
【0012】また、特開平2−120845号公報に
は、仮想線長シミュレーションから得る遅延情報と、タ
イミング検証から得る信号間のクリティカルパスの要求
される遅延時間情報を入力することにより、要求される
ICの動作速度を満足するように自動配置配線を行なう
装置が提案されている。Further, in Japanese Patent Laid-Open No. 2-1208845, the delay information obtained from the virtual line length simulation and the required delay time information of the critical path between the signals obtained from the timing verification are input to input the delay information. There has been proposed a device for automatically placing and wiring so as to satisfy the operating speed of an IC.
【0013】すなわち、図5を参照して、クリティカル
パスを指定した(ステップ31)後、クリティカルパス
に重みを付け(ステップ32)、自動配置を行ない(ス
テップ33)、概略配線を行う(ステップ34)。That is, referring to FIG. 5, after designating a critical path (step 31), weighting is applied to the critical path (step 32), automatic placement is performed (step 33), and rough wiring is performed (step 34). ).
【0014】次に、全て配置配線できたかを判定し(ス
テップ35)、全て配置配線できなかった場合には、仮
想遅延とタイミング情報を入力し(ステップ36)、配
置配線結果が要求されている遅延を満足しているかを比
較する(ステップ37)。Next, it is judged whether or not all the placement and routing can be performed (step 35). When all the placement and routing are not possible, virtual delay and timing information are input (step 36), and the placement and routing result is requested. It is compared whether the delay is satisfied (step 37).
【0015】そして、遅延要求を満足しているか否かを
判定した結果(ステップ38)、満足している場合は、
再度同じ条件で配置、概略配線を行い、配置配線できる
まで繰り返す。Then, as a result of judging whether or not the delay request is satisfied (step 38), if it is satisfied,
Place and outline wiring again under the same conditions, and repeat until placement and wiring are completed.
【0016】遅延要求を満足していない場合には、信号
の重み付けを変更してから(ステップ39)、再度、配
置、概略配線を行い、遅延を満足して配置配線できるま
で繰り返す。If the delay requirement is not satisfied, the signal weighting is changed (step 39), and then the placement and the rough wiring are performed again, and the process is repeated until the delay is satisfied and the placement and routing can be performed.
【0017】そして、遅延要求を満足した配置・概略配
線が終了した段階で、詳細配線を実行する(ステップ4
0)。Then, when the placement and rough wiring satisfying the delay requirement are completed, the detailed wiring is executed (step 4).
0).
【0018】次に、全ての詳細配線ができたか否かを判
定し(ステップ41)、全ての詳細配線ができなかった
場合には、詳細配線結果が要求している遅延を満足して
いるかどうかを比較し(ステップ42)、遅延要求を満
足しているか否かを判定した結果(ステップ43)、満
足している場合は、再度同じ条件で詳細配線を実行し
(ステップ40)、配線できるまで繰り返す。Next, it is judged whether or not all the detailed wirings have been made (step 41). If all the detailed wirings have not been made, whether or not the delays required by the detailed wiring results are satisfied. Are compared (step 42) and it is determined whether the delay requirement is satisfied (step 43). If they are satisfied, detailed wiring is executed again under the same conditions (step 40) until wiring is possible. repeat.
【0019】遅延要求を満足していない場合には、信号
の配線順序と重みを変更してから(ステップ44)、再
度詳細配線を行い、配線できるまで繰り返す。If the delay requirement is not satisfied, the wiring order and weight of the signals are changed (step 44), the detailed wiring is performed again, and the processing is repeated until the wiring is completed.
【0020】上記2つの従来例において、なお配線遅延
を満足しない場合は、クリティカルブロックを駆動能力
の高いブロックに人手で置き換えることにより、配線遅
延を満足していた。In the above two conventional examples, when the wiring delay was not satisfied, the wiring delay was satisfied by manually replacing the critical block with a block having a high driving ability.
【0021】[0021]
【発明が解決しようとする課題】前記従来の配線遅延値
を考慮した配置方法では、抽出したクリティカルブロッ
ク全てに対して、配線遅延を考慮しなくてはならなかっ
た。また人手でブロックを置き換えるなど、TATが増
大するという問題点があった。さらにブロックを置き換
える場合、人手により必要以上にブロックを置き換える
可能性があり、チップ面積が増大するという問題点があ
った。In the conventional placement method considering the wiring delay value, the wiring delay must be taken into consideration for all the extracted critical blocks. There is also a problem that TAT increases, such as manually replacing blocks. Further, when the blocks are replaced, there is a possibility that the blocks may be replaced more than necessary, and the chip area increases.
【0022】従って、本発明は前記問題点を解消し、遅
延を考慮した配置方法において、遅延に有効なクリティ
カルブロックから自動的に駆動能力の高いブロックに置
き換え、遅延を満足するまでに置き換えるブロックの数
を低減し、TATの短縮とチップ面積の増大を抑止する
自動配置方式を提供することを目的とする。Therefore, the present invention solves the above-mentioned problems, and in a placement method considering delay, a critical block effective for delay is automatically replaced with a block having a high driving ability, and a block to be replaced until the delay is satisfied. It is an object of the present invention to provide an automatic placement method that reduces the number of devices and suppresses the reduction of TAT and the increase of chip area.
【0023】[0023]
【課題を解決するための手段】前記目的を達成するた
め、本発明は、クリティカルパスを構成する機能ブロッ
ク(「クリティカルブロック」という)のパスの密度を
算出し、前記クリティカルブロックの中からパスの密度
が高いクリティカルブロックの順に該クリティカルブロ
ックを駆動能力の高いブロックと置き換え、配線遅延が
予め定めた遅延制約値を満たすようにすることを特徴と
する半導体集積回路の自動配置方式を提供する。In order to achieve the above object, the present invention calculates the path density of functional blocks (referred to as "critical blocks") forming a critical path, and selects the path density from among the critical blocks. (EN) Provided is an automatic placement method of a semiconductor integrated circuit, characterized in that a critical block is replaced with a block having a high driving ability in the order of a high-density critical block so that a wiring delay satisfies a predetermined delay constraint value.
【0024】本発明の半導体集積回路の自動配置方式
は、好ましくは、配線長を算出する工程と、前記配線長
から配線遅延値を算出する工程と、前記配線遅延値をあ
らかじめ定められた対象回路の制約条件と比較すること
により、クリティカルパスを抽出する工程と、前記クリ
ティカルパスを構成する機能ブロックを抽出する工程
と、前記機能ブロックの各々のパス密度を算出する工程
と、前記機能ブロックの中から、最もパスの密度の高い
機能ブロックを選択する工程と、前記機能ブロックに対
して自動的にブロックの置き換えを行う工程と、ブロッ
クの置き換えを行った後、再度配線長を算出する工程
と、前記配線長から配線遅延値を算出する工程と、前記
配線遅延値と前記回路制約条件に示される制限値とを比
較する工程と、を備えている。In the semiconductor integrated circuit automatic placement method of the present invention, preferably, a step of calculating a wiring length, a step of calculating a wiring delay value from the wiring length, and a target circuit in which the wiring delay value is predetermined A critical path is extracted by comparing with a constraint condition of No. 1, a step of extracting functional blocks constituting the critical path, a step of calculating a path density of each of the functional blocks, From the step of selecting the functional block with the highest path density, the step of automatically replacing the block with respect to the functional block, and the step of calculating the wiring length again after the block replacement, And a step of calculating a wiring delay value from the wiring length, and a step of comparing the wiring delay value with a limit value indicated in the circuit constraint condition. That.
【0025】[0025]
【作用】本発明によれば、クリティカルブロックの中か
ら高いパス密度を有するクリティカルブロック順に駆動
能力の高いブロックと順次置き換えるものであり、配線
遅延値に対し有効なブロックから置き換えていくため、
遅延を満足するまでに行うブロックの置き換え処理が必
要最低限ですみ、TATを短縮する。また、本発明によ
れば、置き換えるブロック数が最小ですむため、チップ
面積の増大化を回避している。According to the present invention, a block having a high drive capacity is sequentially replaced with a block having a high driving ability in the order of a high block density among the critical blocks, and the block effective for the wiring delay value is replaced.
The block replacement process performed until the delay is satisfied is minimal, and TAT is shortened. Further, according to the present invention, the number of blocks to be replaced can be minimized, so that the increase of the chip area is avoided.
【0026】[0026]
【実施例】図面を参照して、本発明の実施例を以下に説
明する。Embodiments of the present invention will be described below with reference to the drawings.
【0027】[0027]
【実施例1】図1は、本発明の一実施例を説明する流れ
図である。Embodiment 1 FIG. 1 is a flow chart for explaining an embodiment of the present invention.
【0028】図1を参照して、まず機能ブロックの自動
配置を行い(ステップ1)、予測配線長を算出し(ステ
ップ2)、予測配線長から配線遅延値を算出する(ステ
ップ3)。Referring to FIG. 1, first, functional blocks are automatically arranged (step 1), a predicted wiring length is calculated (step 2), and a wiring delay value is calculated from the predicted wiring length (step 3).
【0029】ステップ3で求めた配線遅延値を予め定め
られた対象回路の制限値と比較して、制限値以上の配線
遅延値をもつパス(「クリティカルパス」という)を抽
出する(ステップ4)。The wiring delay value obtained in step 3 is compared with a predetermined limit value of the target circuit, and a path having a wiring delay value equal to or larger than the limit value (referred to as "critical path") is extracted (step 4). .
【0030】次に、クリティカルパス上の全ての機能ブ
ロックをクリティカルブロックとして抽出する(ステッ
プ5)。Next, all the functional blocks on the critical path are extracted as critical blocks (step 5).
【0031】そして、クリティカルブロックのソースピ
ンに接続されているパスを全てトレースし、ステップ5
で抽出した全てのクリティカルブロック上を通過するパ
スの本数から、パスの密度を算出する(ステップ6)。Then, all the paths connected to the source pins of the critical block are traced, and step 5
The density of paths is calculated from the number of paths passing over all the critical blocks extracted in step (step 6).
【0032】ステップ6で算出したパスの密度に基づ
き、最もパスの密度が高いクリティカルブロックを抽出
する(ステップ7)。Based on the path densities calculated in step 6, the critical block with the highest path density is extracted (step 7).
【0033】ステップ7で抽出したクリティカルブロッ
クを自動的に駆動能力の高いブロックに置き換える処理
(「バッファサイジング」という)を行う(ステップ
8)。A process (referred to as "buffer sizing") for automatically replacing the critical block extracted in step 7 with a block having high driving capability is performed (step 8).
【0034】バッファサイジングを行った結果に基づき
配線長を算出し(ステップ9)、求めた予測配線長から
配線遅延値を算出する(ステップ10)。The wiring length is calculated based on the result of the buffer sizing (step 9), and the wiring delay value is calculated from the obtained predicted wiring length (step 10).
【0035】ステップ10で求めた配線遅延値と回路制
約条件の制限値とを比較し(ステップ11)、遅延を満
足していない場合、パスの密度が次に高いクリティカル
ブロックを抽出し(ステップ7)、バッファサイジング
を行う(ステップ8)。The wiring delay value obtained in step 10 is compared with the limit value of the circuit constraint condition (step 11). If the delay is not satisfied, the critical block having the next highest path density is extracted (step 7). ), And buffer sizing (step 8).
【0036】上記のようにして、遅延を満足するまで処
理を繰り返す。The process is repeated as described above until the delay is satisfied.
【0037】このように、本実施例においては、配線遅
延値に対し有効なブロックから置き換えていくため、遅
延を満足するまでに行うブロックの置き換え処理が必要
最低限ですみ、TATの短縮となる。また、本実施例に
よれば、置き換えるブロックの数が最小で済むため、面
積の増大化を防ぐ。As described above, in this embodiment, since the block effective for the wiring delay value is replaced, the block replacement process performed until the delay is satisfied is the minimum necessary, and the TAT is shortened. . Further, according to the present embodiment, the number of blocks to be replaced can be minimized, so that an increase in area can be prevented.
【0038】図2は、機能ブロックとその接続関係を表
した回路図の一例である。図2を参照して、本実施例を
より具体的に説明する。FIG. 2 is an example of a circuit diagram showing the functional blocks and their connection relationships. The present embodiment will be described more specifically with reference to FIG.
【0039】図2において、201から214は機能ブ
ロック、N01からN14はソースピン、H01からH
17はロードピンをそれぞれ示す。In FIG. 2, 201 to 214 are functional blocks, N01 to N14 are source pins, and H01 to H.
Reference numerals 17 respectively indicate load pins.
【0040】図2に示す例で、機能ブロック201のソ
ースピンN01から機能ブロック214のロードピンH
13に至るパスが、クリティカルパスとして抽出された
として説明する。In the example shown in FIG. 2, the source pin N01 of the functional block 201 to the load pin H of the functional block 214.
It is assumed that the paths up to 13 are extracted as critical paths.
【0041】次に、クリティカルパス上の機能ブロック
201から213をクリティカルブロックとして抽出す
る。そして、クリティカルブロックのソースピンに接続
されているパスを全てトレースし、クリティカルブロッ
ク上を通過するパスの本数から、パスの密度を算出す
る。Next, the functional blocks 201 to 213 on the critical path are extracted as critical blocks. Then, all the paths connected to the source pins of the critical block are traced, and the density of the paths is calculated from the number of paths passing over the critical block.
【0042】例えば、クリティカルブロック201のソ
ースピンN01に接続されているパスは、ブロック20
2、204、205、207、209、211を経て、
ブロック212のロードピンH13に至るパスと、ブロ
ック202、204、205、208のソースピンN0
8、ブロック210、211を経てブロック212のロ
ードピンH13に至るパスと、ブロック202、20
4、205、208のソースピンN09、ブロック21
0、211を経てブロック212のロードピンH13に
至るパスと、ブロック202、204、206、208
のソースピンN08、ブロック210、211を経てブ
ロック212のロードピンH13に至るパスと、ブロッ
ク202、204、206、208のソースピンN0
9、ブロック210、211を経てブロック212のロ
ードピンH13に至るパスと、ブロック203、21
3、208のソースピンN08、ブロック210、21
1を経て、ブロック212のロードピンH13に至るパ
スと、ブロック203、213、208のソースピンN
09、ブロック210、211を経て、ブロック212
のロードピンH13に至るパスの計7本である。For example, the path connected to the source pin N01 of the critical block 201 is the block 20.
2, 204, 205, 207, 209, 211,
The path to the load pin H13 of the block 212 and the source pin N0 of the blocks 202, 204, 205 and 208
8, the path from the blocks 210 and 211 to the load pin H13 of the block 212, and the blocks 202 and 20
Source pin N09 of 4, 205, 208, block 21
Paths from 0, 211 to the load pin H13 of the block 212, and blocks 202, 204, 206, 208
Of the source pin N08 of the blocks 202, 204, 206 and 208, and the source pin N0 of the blocks 202, 204, 206 and 208 through the source pin N08 of the blocks 210 and 211 to the load pin H13 of the block 212.
9. The path from the block 210, 211 to the load pin H13 of the block 212, and the blocks 203, 21
Source pins N08 of 3, 208, blocks 210, 21
1 to the load pin H13 of the block 212 and the source pin N of the blocks 203, 213, and 208.
09, blocks 210 and 211, and then block 212
There are a total of 7 paths to the load pin H13.
【0043】同様に、クリティカルブロック202を通
過するパスは5本、202は2本、204は5本、20
5は3本、206は2本、208は2本、210は2
本、209から214はそれぞれ1本である。Similarly, there are 5 passes through the critical block 202, 2 passes through 202, 5 passes through 204, and 20 passes.
5 is 3; 206 is 2; 208 is 2; 210 is 2
There is one book, and each of 209 to 214 is one.
【0044】このうち最も多くパスが通過する、すなわ
ちパスの密度が最も高いブロック201を抽出し、バッ
ファサイジングを行う。Of these, the block 201 having the largest number of passes, that is, having the highest pass density, is extracted and buffer sizing is performed.
【0045】バッファサイジングを行った結果に基づき
予測配線長を算出し、配線遅延値を算出する。そして、
求めた配線遅延値と回路制約条件の制限値とを比較し、
遅延の制限値を満足していたら、処理を終了する。The predicted wiring length is calculated based on the result of buffer sizing, and the wiring delay value is calculated. And
Compare the obtained wiring delay value and the limit value of the circuit constraint condition,
If the delay limit value is satisfied, the processing ends.
【0046】制限値を満足していなかったら、パスの密
度が次に高いクリティカルブロック202を抽出し、遅
延を満足するように、バッファサイジングを行う。If the limit value is not satisfied, the critical block 202 having the next highest path density is extracted and buffer sizing is performed so as to satisfy the delay.
【0047】このようにして、遅延を満足するまで、パ
スの密度の高い、すなわち配線遅延に対し有効なクリテ
ィカルブロックから置き換えていく。遅延を満足したと
ころで、処理は終了する。In this way, until the delay is satisfied, the critical block having a high path density, that is, effective for the wiring delay is replaced. When the delay is satisfied, the processing ends.
【0048】[0048]
【実施例2】図3は本発明の第2の実施例を示す流れ図
である。Second Embodiment FIG. 3 is a flow chart showing the second embodiment of the present invention.
【0049】本実施例は、詳細配線後に、配線遅延に対
し有効なクリティカルブロックを置き換えるものであ
る。In this embodiment, after the detailed wiring, the critical block effective for the wiring delay is replaced.
【0050】概略配線(global routing:「グローバル
配線」ともいう)を行なった(ステップ101)後、詳細
配線(detaile routing)を行い(ステップ102)、実配
線長を算出する(ステップ103)。After performing rough routing (also called "global routing") (step 101), detailed routing is performed (step 102), and the actual wiring length is calculated (step 103).
【0051】次に、実配線長から配線遅延値を算出する
(ステップ104)。Next, a wiring delay value is calculated from the actual wiring length (step 104).
【0052】そして、ステップ104で算出した配線遅延
値を予め定められた対象回路の制限値と比較して、クリ
ティカルパスを抽出する(ステップ105)。Then, the wiring delay value calculated in step 104 is compared with a predetermined limit value of the target circuit to extract a critical path (step 105).
【0053】クリティカルパス上のブロックをクリティ
カルブロックとして抽出する(ステップ106)。A block on the critical path is extracted as a critical block (step 106).
【0054】クリティカルパス上の始まりのブロックの
ソースピンに接続されているパスの全てトレースし、ス
テップ106で抽出した全てのクリティカルブロックのパ
スの密度を算出する(ステップ107)。All the paths connected to the source pins of the first block on the critical path are traced, and the density of the paths of all the critical blocks extracted in step 106 is calculated (step 107).
【0055】次に、最もパスの密度が高いクリティカル
ブロックを抽出する(ステップ108)。Next, the critical block having the highest path density is extracted (step 108).
【0056】抽出した最もパスの密度が高いクリティカ
ルブロックに対してバッファサイジングを行う(ステッ
プ109)。Buffer sizing is performed on the extracted critical block having the highest path density (step 109).
【0057】そして、ブロックの置き換えが行なわれた
エリアだけ再配線する(ステップ110)。Then, rewiring is performed only in the area where the block is replaced (step 110).
【0058】バッファサイジングを行った結果に基づき
再度配線長を算出し(ステップ111)、配線長から配線
遅延値を算出する(ステップ112)。The wiring length is calculated again based on the result of buffer sizing (step 111), and the wiring delay value is calculated from the wiring length (step 112).
【0059】算出された配線遅延値と回路制約条件の制
限値とを比較し、遅延を満足していないなら、パスの密
度が次に高いクリティカルブロックを抽出し(ステップ
108)、バッファサイジングを行う(ステップ109)。The calculated wiring delay value is compared with the limit value of the circuit constraint condition. If the delay is not satisfied, a critical block having the next highest path density is extracted (step
108) and buffer sizing (step 109).
【0060】上記のようにして、遅延を満足するまで、
処理を繰り返す。As described above, until the delay is satisfied,
Repeat the process.
【0061】以上、本発明を上記各実施例に即して説明
したが、本発明は上記態様にのみ限定されるものでな
く、本発明の原理に準ずる各種態様を含むことは勿論で
ある。Although the present invention has been described with reference to the above-described embodiments, the present invention is not limited to the above-mentioned embodiments, and it is needless to say that various embodiments according to the principle of the present invention are included.
【0062】[0062]
【発明の効果】以上説明したように本発明は、遅延に有
効なクリティカルブロックから自動的に駆動能力の高い
ブロックに置き換える処理を行うため、遅延を満足する
までに置き換えるブロックの数が最小ですみ、TATの
短縮とチップ面積の増大化を防ぐという効果を有する。As described above, according to the present invention, a critical block effective for delay is automatically replaced with a block having a high driving ability. Therefore, the number of blocks to be replaced is the minimum until the delay is satisfied. , TAT is shortened and the chip area is prevented from increasing.
【図1】本発明の一実施例を説明するための流れ図であ
る。FIG. 1 is a flow chart for explaining an embodiment of the present invention.
【図2】本発明の一実施例により自動配置される回路の
一例を示す図である。FIG. 2 is a diagram showing an example of a circuit automatically arranged according to an embodiment of the present invention.
【図3】本発明の第2の実施例を説明するための流れ図
である。FIG. 3 is a flow chart for explaining a second embodiment of the present invention.
【図4】従来例を説明するための流れ図である。FIG. 4 is a flowchart for explaining a conventional example.
【図5】別の従来例を説明するための流れ図である。FIG. 5 is a flowchart for explaining another conventional example.
1 自動配置を実行するステップ 2 予測配線長を算出するステップ 3 配線遅延値を算出するステップ 4 クリティカルネットを抽出するステップ 5 クリティカルパスを抽出するステップ 6 クリティカルブロックを抽出するステップ 7 クリティカルブロックのパスの密度を算出するステ
ップ 8 パスの密度が最も高いブロックを抽出するステップ 9 駆動能力の高いブロックに置き換える処理を行うス
テップ 10 予測配線長を算出するステップ 11 配線遅延値を算出するステップ 12 遅延を満足しているかを判断するステップ 21 機能ブロック間の接続情報を記憶するステップ 22 クリティカルパスを指定するステップ 23 クリティカルパスを抽出するステップ 24 クリティカルブロックを抽出するステップ 25 クリティカルブロックをインタラクティブに配置
するステップ 26 予測配線長を算出するステップ 27 配線遅延値を算出するステップ 28 残りのブロックに対して自動配置を実行するステ
ップ 31 クリティカルパスを指定するステップ 32 クリティカルパスに重みを付けるステップ 33 自動配置を実行するステップ 34 概略配線を実行するステップ 35 全て配置・配線を終了したかを判定するステップ 36 仮想遅延とタイミング情報を入力するステップ 37 配置・配線結果を要求している遅延を満足してい
るかどうか比較するステップ 38 要求を満足しているかどうかを判定するステップ 39 要求を満足するように信号の重みを変更するステ
ップ 40 詳細配線を実行するステップ 41 全て詳細配線を終了したかを判定するステップ 42 詳細配線結果が要求している遅延を満足している
かどうか比較するステップ 43 要求を満足しているかどうかを判定するステップ 44 要求を満足するように信号の配線順序と重みを変
更するステップ 101 概略配線を実行するステップ 102 詳細配線を実行するステップ 103 配線長を算出するステップ 104 配線遅延値を算出するステップ 105 クリティカルパスを抽出するステップ 106 クリティカルブロックを抽出するステップ 107 クリティカルブロックのパスの密度を算出する
ステップ 108 パスの密度が最も高いブロックを抽出するステ
ップ 109 駆動能力の高いブロックに置き換える処理を行
うステップ 110 配線長を算出するステップ 111 配線遅延値を算出するステップ 112 遅延を満足しているかを判断するステップ 201〜214 機能ブロック N01〜N14 ソースピン H01〜H17 ロードピン1 Step of executing automatic placement 2 Step of calculating predicted wiring length 3 Step of calculating wiring delay value 4 Step of extracting critical net 5 Step of extracting critical path 6 Step of extracting critical block 7 Step of critical block path Step 8 to calculate the density Step 8 to extract the block with the highest path density 9 Step to replace the block with the highest driving ability 10 Step to calculate the predicted wiring length 11 Step 12 to calculate the wiring delay value Satisfy the delay Step 21 of determining whether or not there is a connection 21 Step of storing connection information between functional blocks 22 Step of specifying a critical path 23 Step of extracting a critical path 24 Step of extracting a critical block 25 Critical block Interactively place step 26 step of calculating predicted wiring length 27 step of calculating wiring delay value 28 step of executing automatic placement for the remaining blocks 31 step of designating critical path 32 weighting of critical path Attaching step 33 Performing automatic placement 34 Step executing general routing 35 Step determining whether all placement / wiring has been completed 36 Step inputting virtual delay and timing information 37 Delay requesting placement / wiring results Step 38 to determine whether or not the requirement is satisfied Step 39 to determine whether or not the requirement is satisfied 39 Step to change the weight of the signal so as to satisfy the requirement 40 Step to execute the detailed wiring 41 Is all the detailed wiring completed? Determining step 42 Step 43 of comparing whether or not the result of the fine wiring satisfies the required delay 43 Step of determining whether the requirement is satisfied 44 Step of changing the wiring order and weight of the signals so as to satisfy the requirement 101 General wiring Step 102 for executing detailed wiring Step 103 for calculating detailed wiring 103 Step for calculating wiring length 104 Step for calculating wiring delay value 105 Step for extracting critical path 106 Step for extracting critical block 107 Calculate density of path of critical block Step 108 Extracting a block with the highest path density Step 109 Performing a process of replacing with a block having a high driving capability 110 Step calculating a wiring length 111 Step calculating a wiring delay value 112 Whether the delay is satisfied Sectional steps 201-214 function block N01~N14 source pin H01~H17 load pin
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 H01L 21/822 H01L 27/04 A ─────────────────────────────────────────────────── ─── Continuation of the front page (51) Int.Cl. 6 Identification code Internal reference number FI Technical display location H01L 21/822 H01L 27/04 A
Claims (3)
(「クリティカルブロック」という)のパスの密度を算
出し、前記クリティカルブロックの中からパスの密度が
高いクリティカルブロックの順に該クリティカルブロッ
クを駆動能力の高いブロックと置き換え、配線遅延が予
め定めた遅延制約値を満たすようにすることを特徴とす
る半導体集積回路の自動配置方式。1. A density of paths of functional blocks (referred to as "critical block") forming a critical path is calculated, and the critical blocks having a high path density are arranged in descending order of the driving ability of the critical blocks. An automatic placement method for a semiconductor integrated circuit, characterized in that the wiring delay is replaced with a block so that a wiring delay satisfies a predetermined delay constraint value.
比較してクリティカルパスを抽出する工程と、 前記クリティカルパスを構成する機能ブロックを抽出す
る工程と、 前記機能ブロックについてそれぞれのパス密度を算出す
る工程と、 前記機能ブロックの中から最もパスの密度の高い機能ブ
ロックを選択する工程と、 前記選択された機能ブロックに対して自動的にブロック
の置き換えを行う工程と、 前記ブロックの置き換えを行った後に再度配線長を算出
する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値と前記回路制約条件に示される制限値と
を比較する工程と、を備えることを特徴とする半導体集
積回路の自動配置方式。2. A step of calculating a wiring length, a step of calculating a wiring delay value from the wiring length, and a step of comparing the wiring delay value with a predetermined constraint condition of a target circuit to extract a critical path. A step of extracting a functional block forming the critical path, a step of calculating a path density of each of the functional blocks, a step of selecting a functional block with the highest path density from the functional blocks, A step of automatically replacing a block with respect to the selected functional block; a step of calculating a wiring length again after the replacement of the block; a step of calculating a wiring delay value from the wiring length; A method for automatically arranging a semiconductor integrated circuit, comprising: comparing the wiring delay value with a limit value indicated by the circuit constraint condition. .
算出する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値を予め定められた対象回路の制約条件と
比較してクリティカルパスを抽出する工程と、 前記クリティカルパスを構成する機能ブロックを抽出す
る工程と、 前記機能ブロックについてそれぞれのパス密度を算出す
る工程と、 前記機能ブロックの中から最もパスの密度の高い機能ブ
ロックを選択する工程と、 前記選択された機能ブロックに対して自動的にブロック
の置き換えを行う工程と、 前記ブロックの置き換えを行った領域について再度配線
を行なう工程と、 再度配線長を算出する工程と、 前記配線長から配線遅延値を算出する工程と、 前記配線遅延値と前記回路制約条件に示される制限値と
を比較する工程と、を備えることを特徴とする半導体集
積回路の自動配置方式。3. A step of calculating a wiring length after performing rough wiring and a detailed wiring, a step of calculating a wiring delay value from the wiring length, and a constraint condition of a target circuit in which the wiring delay value is predetermined. A step of comparing and extracting a critical path, a step of extracting a functional block that constitutes the critical path, a step of calculating the path density of each of the functional blocks, and the most path density of the functional blocks A step of selecting a high functional block, a step of automatically replacing a block with respect to the selected functional block, a step of rewiring the area where the block is replaced, and a wiring length calculation again And a step of calculating a wiring delay value from the wiring length, and comparing the wiring delay value with a limit value indicated in the circuit constraint condition. A method for automatically arranging a semiconductor integrated circuit, comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7039002A JPH08213468A (en) | 1995-02-03 | 1995-02-03 | Automatic layout method for semiconductor integrated circuits |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7039002A JPH08213468A (en) | 1995-02-03 | 1995-02-03 | Automatic layout method for semiconductor integrated circuits |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08213468A true JPH08213468A (en) | 1996-08-20 |
Family
ID=12540924
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7039002A Pending JPH08213468A (en) | 1995-02-03 | 1995-02-03 | Automatic layout method for semiconductor integrated circuits |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08213468A (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05326705A (en) * | 1992-05-22 | 1993-12-10 | Toshiba Corp | Method for designing semiconductor integrated circuit |
| JPH0728876A (en) * | 1993-07-12 | 1995-01-31 | Fujitsu Ltd | Delay time analyzer |
-
1995
- 1995-02-03 JP JP7039002A patent/JPH08213468A/en active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05326705A (en) * | 1992-05-22 | 1993-12-10 | Toshiba Corp | Method for designing semiconductor integrated circuit |
| JPH0728876A (en) * | 1993-07-12 | 1995-01-31 | Fujitsu Ltd | Delay time analyzer |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5737580A (en) | Wiring design tool improvement for avoiding electromigration by determining optimal wire widths | |
| EP0145925B1 (en) | Iterative method for establishing connections between nodes and the resulting product | |
| KR0153392B1 (en) | How to design interconnect wiring for LSI | |
| US5926397A (en) | Routing design method and routing design apparatus | |
| JPH10270563A (en) | Automatic general wiring method for integrated circuit | |
| US6971082B2 (en) | Method and apparatus for revising wiring of a circuit to prevent electro-migration | |
| US7191420B2 (en) | Net/wiring selection method, net selection method, wiring selection method, and delay improvement method | |
| US5757657A (en) | Adaptive incremental placement of circuits on VLSI chip | |
| US20070022400A1 (en) | Method, program, and apparatus for designing layout of semiconductor integrated circuit | |
| JPH08213468A (en) | Automatic layout method for semiconductor integrated circuits | |
| US6202195B1 (en) | Semiconductor integrated circuit layout method | |
| US6615401B1 (en) | Blocked net buffer insertion | |
| US6226775B1 (en) | Semiconductor integrated circuit designing method of an interconnection thereof and recording medium in which the method is recorded for empty area | |
| JP3193167B2 (en) | Logic synthesis system | |
| JP2000172738A (en) | Automatic layout method for LSI | |
| US6532583B1 (en) | Global routing determination method and storage medium | |
| JP3548398B2 (en) | Schematic route determination method and schematic route determination method | |
| JPH04251961A (en) | Placement design system for circuit block by cad | |
| JP3134838B2 (en) | Wiring device between blocks | |
| JP2715931B2 (en) | Semiconductor integrated circuit design support method | |
| JP2002313920A (en) | Layout method of semiconductor integrated circuit | |
| JPH05243383A (en) | Automatic wiring method | |
| JP2005107556A (en) | Wiring processing method for semiconductor integrated circuit | |
| JP2000057197A (en) | Clock net layout design change method | |
| JPH04151853A (en) | Wiring method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19980106 |