JP2001168199A - Automatic layout and wiring method for semiconductor device - Google Patents

Automatic layout and wiring method for semiconductor device

Info

Publication number
JP2001168199A
JP2001168199A JP35243299A JP35243299A JP2001168199A JP 2001168199 A JP2001168199 A JP 2001168199A JP 35243299 A JP35243299 A JP 35243299A JP 35243299 A JP35243299 A JP 35243299A JP 2001168199 A JP2001168199 A JP 2001168199A
Authority
JP
Japan
Prior art keywords
buffer
wiring
coordinates
procedure
delay
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
Application number
JP35243299A
Other languages
Japanese (ja)
Inventor
Mikito Tanaka
幹人 田中
Akitoshi Kato
秋敏 加藤
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.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co Ltd
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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP35243299A priority Critical patent/JP2001168199A/en
Publication of JP2001168199A publication Critical patent/JP2001168199A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide an automatic layout and wiring method for semiconductor devices which enables reduction of delay in a route which does not satisfy the delay standard of a semiconductor integrated circuit device where elements are laid out and wired. SOLUTION: This method is based on the first step (1-12) of determining a wiring length from the output end of a semiconductor element which indicates a position where a buffer should be inserted, and judging whether coordinates can be laid out in positions where buffers do not overlap with existing elements within a buffer insertion range; the second step (1-13) of laying out and wiring buffers in coordinates in the case where coordinates can be laid out; and the third step ((13-1)-(13-6)) of setting 1G in the vicinity of a wiring present within a buffer insertion range on a wiring where buffers are to be inserted, and searching for a position where buffers to be inserted in the vicinity of this wiring do not overlap with the existing elements in the case where coordinates cannot be laid out in positions where buffers do not overlap with the existing elements.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は半導体装置の自動配
置配線方法に関し,特にLSI内の素子を配置して配線
することを自動的に実行する半導体装置の自動配置配線
方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an automatic placement and routing method for a semiconductor device, and more particularly to an automatic placement and routing method for a semiconductor device that automatically executes placement and wiring of elements in an LSI.

【0002】[0002]

【従来の技術】大規模集積回路(Large Scale Integrat
ion;以下LSIと称す)を設計する技術では,LSI
の微細化が進むと共にLSIを構成する素子の動作スピ
ードが速くなっている。一方,LSIの規模が大きくな
るにつれLSI内の配線の寄生容量及び寄生抵抗は大き
くなる。このLSI内の配線の寄生容量及び寄生抵抗が
大きくなることによって,LSI内の配線長による信号
遅延が近年では無視できない程度に大きくなってきてい
る。LSI製品を設計する最近の技術では,レイアウト
工程でIPO(In-Place-Optimization)という手法を
用いることによってLSI内の信号のタイミングを修正
する。このIPOを使用するLSI内の信号のタイミン
グ修正では,LSI内の信号の遅延規格を満たさない配
線にバッファを挿入する。すなわち,このバッファを挿
入することによってLSI内の信号が遅延することを低
減する。
2. Description of the Related Art Large scale integrated circuits (Large Scale Integrat)
ion; hereinafter, referred to as LSI).
With the advance of miniaturization, the operation speed of the elements constituting the LSI has been increased. On the other hand, as the scale of the LSI increases, the parasitic capacitance and the parasitic resistance of the wiring in the LSI increase. Due to the increase in the parasitic capacitance and the parasitic resistance of the wiring in the LSI, the signal delay due to the length of the wiring in the LSI has recently become so large that it cannot be ignored. In a recent technology for designing an LSI product, the timing of a signal in the LSI is corrected by using a technique called IPO (In-Place-Optimization) in a layout process. In the timing correction of the signal in the LSI using the IPO, a buffer is inserted into a wiring that does not satisfy the delay standard of the signal in the LSI. That is, the delay in the signal in the LSI due to the insertion of this buffer is reduced.

【0003】一般的な従来の半導体装置の自動配置配線
方法を図9から図14までを参照して説明する。図9
は,従来の半導体装置の自動配置配線方法において遅延
規格を満たさない配線が存在する場合における回路図を
示す。図10は,従来の半導体装置の自動配置配線方法
において第一フリップフロップから近い位置にバッファ
を挿入した回路図を示す。図11は,従来の半導体装置
の自動配置配線方法において第一フリップフロップから
遠い位置にバッファを挿入した回路図を示す。第一フリ
ップフロップ(以下F/F−1と称する)(7−1)の
出力端(以下Qと称する)から第二フリップフロップ
(以下F/F−2と称する)(7−2)の入力端(以下
Dと称する)までの経路(7−3)(配線長l)が遅延
規格を満たさない配線である場合,その経路(7−3)
における信号の遅延を低減し,遅延規格を満たす必要が
ある。この経路(7−3)における信号の遅延を低減し
遅延規格を満たすためにバッファ((8−3)又は(9
−3))を挿入する。図10又は図11では,F/F−
1((8−1)又は(9−1))のQからバッファ
((8−3)又は(9−3))までの配線長l1である
(8−4)と(9−4)とが異なる。更に,バッファ
((8−3)又は(9−3))からF/F−2((8−
2)又は(9−2))のDまでの配線長l−l1である
(8−5)と(9−5)とも異なる。その他の図10と
図11との回路図に異なる回路部分はない。
A general conventional automatic placement and routing method for a semiconductor device will be described with reference to FIGS. FIG.
FIG. 1 shows a circuit diagram in the case where there is a wiring that does not satisfy a delay standard in a conventional automatic placement and routing method of a semiconductor device. FIG. 10 is a circuit diagram in which a buffer is inserted at a position close to the first flip-flop in the conventional method of automatically placing and routing a semiconductor device. FIG. 11 is a circuit diagram in which a buffer is inserted at a position far from the first flip-flop in the conventional automatic placement and routing method for a semiconductor device. From the output terminal (hereinafter referred to as Q) of the first flip-flop (hereinafter referred to as F / F-1) (7-1) to the input of the second flip-flop (hereinafter referred to as F / F-2) (7-2) When the route (7-3) (wiring length 1) to the end (hereinafter referred to as D) is a wiring that does not satisfy the delay standard, the route (7-3)
It is necessary to reduce the delay of the signal in and to satisfy the delay standard. The buffer ((8-3) or (9-3) is used to reduce the signal delay in this path (7-3) and satisfy the delay standard.
-3)) is inserted. In FIG. 10 or FIG.
(8-4) and (9-4), which are the wiring length l1 from Q of 1 ((8-1) or (9-1)) to the buffer ((8-3) or (9-3)) Are different. Further, the buffer ((8-3) or (9-3)) transfers the F / F-2 ((8-
2) or (9-2)), which is different from (8-5) and (9-5), which are the wiring length l-l1 to D. There is no different circuit portion between the circuit diagrams of FIGS. 10 and 11.

【0004】この一般的な従来の半導体装置の自動配置
配線方法を用いると,LSI内の信号のタイミング修正
を実行するTAT(ターン・アラウンド・タイム)が長
くなるという問題が生じる。このTATが長くなってし
まう理由について,図9から図13までを参照して説明
する。図9の回路図における信号遅延値は,次式の(式
1)によって求められる。 tpd(D1)=tld+R1×(Cld+Co×l/2) +Ro×Co×l/2 (式1) ここで,tldはF/F−1素子自身の遅延値,R1は
F/F−1素子自身の出力抵抗,Roは単位配線長あた
りの配線抵抗,Coは単位配線長あたりの容量,Cld
は次段の素子の入力容量である。(式1)を遅延の種類
に分離して表示した式を次式の(式2)に示す。 tpd(D1)=tld+R1×Cld +(R1×Co×l/2+Ro×Co×l/2) (式2) (式2)において右辺の第一項から順に,素子自身の遅
延値(tld),次段入力容量による遅延値(R1×C
ld),配線容量による遅延値(R1×Co×l/2+
Ro×Co×l/2)である。
The use of this general conventional automatic placement and routing method for a semiconductor device causes a problem that the TAT (turn around time) for executing timing correction of signals in an LSI becomes long. The reason why the TAT becomes long will be described with reference to FIGS. The signal delay value in the circuit diagram of FIG. 9 is obtained by the following equation (Equation 1). tpd (D1) = tld + R1 × (Cld + Co × l / 2) + Ro × Co × l 2/2 ( 1) where, tld is F / F-1 element itself delay value, R1 is F / F-1 device Its own output resistance, Ro is the wiring resistance per unit wiring length, Co is the capacitance per unit wiring length, Cld
Is the input capacitance of the next element. An expression in which (Equation 1) is separated into delay types and displayed is shown in the following expression (Equation 2). tpd (D1) = tld + R1 × Cld + (R1 × Co × l / 2 + Ro × Co × l 2/2) ( Equation 2) in order from the first term on the right side in (Equation 2), elements themselves delay value (tld) , Delay value (R1 × C
ld), the delay value due to the wiring capacitance (R1 × Co × 1/2/2 +
A Ro × Co × l 2/2 ).

【0005】図10に示される回路における信号遅延値
を次式の(式3)に示す(図10における該当番号を
(8−x)とし図11におけるその該当番号に対応する
番号を(9−x)とすると,図11の場合も図10の場
合と同様になる。ここでxはある自然数(1,2,3
…)を示す)。 tpd(D2)=tld1+R1×(Co×l1/2+Cin) +Co×Ro×(l1)/2 +tld2+R2×(Co×(l−l1)/2+Cld) +Co×Ro×(l−l1)/2 (式3) ここで,tld2はバッファ固有の遅延値,Cinはバ
ッファ(8−3)の入力容量,CldはF/F−2(8
−2)の入力容量,R2はバッファ(8−3)の出力抵
抗,l1はF/F−1(8−1)のQからバッファ(8
−3)までの配線長(8−4)を示す。(式3)におい
て右辺は,F/F−1(8−1)のQからバッファ(8
−3)までの遅延値(tld1+R1×(Co×l1/
2+Cin)+Co×Ro×(l1)/2)と,バッ
ファ(8−3)からF/F−2(8−2)のDまでの遅
延値(tld2+R2×(Co×(l−l1)/2+C
ld)+Co×Ro×(l−l1)/2)との和を示
す。(式3)を遅延の種類に分離して表示した式を次式
の(式4)に示す。 tpd(D2)=(tld1+tld2) +(R1×Cin+R2×Cld) +{R1×Co×l1/2+Ro×Co×(l1)/2 +R2×Co×(l−l1)/2 +Ro×Co×(l−l1)/2} (式4) (式4)において右辺のtld1及び括弧で括られた項
に対し第一項から順に,素子自身の遅延値(tld1+
tld2),次段入力容量による遅延値(R1×Cin
+R2×Cld),配線容量による遅延値(R1×Co
×l1/2+Ro×Co×(l1)/2+R2×Co
×(l−l1)/2+Ro×Co×(l−l1)
2})を表す。また(式4)から判明するように次段入
力容量による遅延値の部分と素子自身の遅延値とは,配
線長l1の変化に依存せず一定である。
The signal delay value in the circuit shown in FIG. 10 is shown in the following equation (Equation 3) (the corresponding number in FIG. 10 is (8-x), and the number corresponding to the corresponding number in FIG. 11 is (9-x). x), the case of Fig. 11 is the same as that of Fig. 10. Here, x is a natural number (1, 2, 3, 3).
…))). tpd (D2) = tld1 + R1 × (Co × l1 / 2 + Cin) + Co × Ro × (l1) 2/2 + tld2 + R2 × (Co × (l-l1) / 2 + Cld) + Co × Ro × (l-l1) 2/2 ( Where tld2 is a delay value specific to the buffer, Cin is the input capacity of the buffer (8-3), and Cld is F / F-2 (8
-2) input capacitance, R2 is the output resistance of the buffer (8-3), and l1 is the Q / F of the F / F-1 (8-1).
The wiring length (8-4) up to -3) is shown. In (Equation 3), the right side is the buffer (8) from the Q of F / F-1 (8-1).
-3) (tld1 + R1 × (Co × 11 /
2 + Cin) + Co × Ro × ( the l1) 2/2), buffer (delay value from 8-3) to D of F / F-2 (8-2) (tld2 + R2 × (Co × (l-l1) / 2 + C
shows the sum of the ld) + Co × Ro × ( l-l1) 2/2). The following equation (Equation 4) shows the equation obtained by dividing (Equation 3) into the types of delay. tpd (D2) = (tld1 + tld2) + (R1 × Cin + R2 × Cld) + {R1 × Co × l1 / 2 + Ro × Co × (l1) 2/2 + R2 × Co × (l-l1) / 2 + Ro × Co × ( l-l1) 2/2} ( equation 4) (in order from the first term to term enclosed in tld1 and parentheses in the right side in equation 4), the element itself delay value (tld1 +
tld2), the delay value due to the next stage input capacitance (R1 × Cin
+ R2 × Cld), delay value due to wiring capacitance (R1 × Co
× l1 / 2 + Ro × Co × (l1) 2/2 + R2 × Co
× (l−11) / 2 + Ro × Co × (l−11) 2 /
2}). Further, as is apparent from (Equation 4), the part of the delay value due to the next stage input capacitance and the delay value of the element itself are constant independently of the change in the wiring length l1.

【0006】図10においてバッファの挿入位置l1の
長さを“0”とすると(式4)によって配線容量による
遅延値(tpd(D2))は,F/F−1(8−1)自
身の遅延値(tld1)と,F/F−1(8−1)を基
準とした場合のバッファ(8−3)の入力容量に関する
遅延値(R1×Cin)と,バッファ(8−3)自身の
遅延値(tld2)と,バッファ(8−3)を基準とし
た場合の次段入力容量による遅延値(R2×Cld)
と,配線容量による遅延値(R2×Co×l/2+Ro
×Co×l/2)との和となる。通常R2<<R1で
あるので,遅延値tpd(D2)はバッファを挿入しな
い場合の遅延値tpd(D1)と比較して,ほとんどの
場合小さくなる。一方,図11においてバッファの挿入
位置l1の長さを“l”とすると(式4)によって配線
容量による遅延値(tpd(D2))は,F/F−1
(8−1)自身の遅延値(tld1)と,F/F−1
(8−1)を基準とした場合のバッファの入力容量に関
する遅延値(R1×Cin)と,バッファ(8−3)自
身の遅延値(tld2)と,バッファ(8−3)を基準
とした場合の次段入力容量による遅延値(R2×Cl
d)と,全ての配線遅延値(R1×Co×l/2+Ro
×Co×l/2)との和となる。この場合は,図9の
場合にバッファ分遅延が付加された場合と同様であり,
バッファを挿入しない場合の遅延値tpd(D1)に比
較して配線容量による遅延値は大きくなる。したがっ
て,(式4)において配線長が変化しても配線容量によ
る遅延値が一定となる部分が加わり,図12に示すよう
な特性となる。図12の(10−1)は,図9に示す様
にバッファを挿入する前の状態であり,遅延時間tDは
遅延規格を満たさない。また,図12(10−2)は図
10に示す様にF/F−1((8−1)又は(9−
1))のQからバッファ((8−3)又は(9−3))
まで配線長がl1(l1は零に近い値)である位置Aに
バッファ(8−3)を挿入したときの特性を示す。更
に,図12(10−3)は図11でに示す様にF/F−
1((8−1)又は(9−1))のQからバッファ
((8−3)又は(9−3))まで配線長がl1(lは
lに近い値)である位置Bにバッファ(9−3)を挿入
したときの特性を示す。この場合,バッファを挿入する
前より遅延値が大きくなる。また,ソース素子例えばF
/F−1(11−1)及びバッファ(11−2)のそれ
ぞれのドライブ特性を図13に示す。このドライブ特性
によれば,バッファを挿入する位置によって遅延値を低
減する量が変化する。したがって,挿入バッファの配置
範囲を限定する必要があることがわかる。
In FIG. 10, assuming that the length of the buffer insertion position 11 is “0”, the delay value (tpd (D2)) due to the wiring capacitance is calculated by the equation (4) according to F / F-1 (8-1) itself. The delay value (tld1), the delay value (R1 × Cin) relating to the input capacity of the buffer (8-3) based on the F / F-1 (8-1), and the delay value of the buffer (8-3) itself. Delay value (tld2) and delay value (R2 × Cld) due to input capacitance of next stage based on buffer (8-3)
And the delay value due to the wiring capacitance (R2 × Co × 1/2/2 + Ro)
× the sum of the Co × l 2/2). Usually, since R2 << R1, the delay value tpd (D2) is almost always smaller than the delay value tpd (D1) when no buffer is inserted. On the other hand, assuming that the length of the buffer insertion position 11 in FIG. 11 is “1”, the delay value (tpd (D2)) due to the wiring capacitance is expressed by F / F−1 according to (Equation 4).
(8-1) own delay value (tld1) and F / F-1
The delay value (R1 × Cin) relating to the input capacity of the buffer when (8-1) is used as a reference, the delay value (tld2) of the buffer (8-3) itself, and the buffer (8-3) are used as references. (R2 × Cl)
d) and all wiring delay values (R1 × Co × 1/2 + Ro)
× the sum of the Co × l 2/2). This case is the same as the case of FIG. 9 where a buffer delay is added.
The delay value due to the wiring capacitance is larger than the delay value tpd (D1) when no buffer is inserted. Therefore, a part where the delay value due to the wiring capacitance becomes constant even if the wiring length changes in (Equation 4) is added, and the characteristic as shown in FIG. 12 is obtained. (10-1) in FIG. 12 is a state before the buffer is inserted as shown in FIG. 9, and the delay time tD does not satisfy the delay standard. FIG. 12 (10-2) shows F / F-1 ((8-1) or (9-
1)) Q to buffer ((8-3) or (9-3))
This shows the characteristics when the buffer (8-3) is inserted at the position A where the wiring length is 11 (11 is a value close to zero). Further, FIG. 12 (10-3) shows the F / F-
From Q of 1 ((8-1) or (9-1)) to the buffer ((8-3) or (9-3)), a buffer is provided at a position B where the wiring length is l1 (l is a value close to l). The following shows characteristics when (9-3) is inserted. In this case, the delay value becomes larger than before the buffer is inserted. Also, a source element such as F
FIG. 13 shows the drive characteristics of the / F-1 (11-1) and the buffer (11-2). According to this drive characteristic, the amount by which the delay value is reduced changes depending on the position where the buffer is inserted. Therefore, it is understood that it is necessary to limit the arrangement range of the insertion buffer.

【0007】一般的な従来の半導体装置の自動配置配線
方法の動作について流れ図を参照して順をおって説明す
る。図14に従来の半導体装置の自動配置配線方法の流
れ図を示す。図14は,従来の方法による遅延規格を満
たさない配線にバッファを挿入する流れ図である。 1.半導体回路素子をどのように配置配線するかを示す
リスト(以下ネットリストと称する)(12−1)をも
とに配置して配線(12−2)し,この配置配線後に半
導体回路素子が回路上にどのように配置されて配線され
たかを示すデータ(以下レイアウトデータと称する)
(12−3)を作成する。つぎに,レイアウトデータ
(12−3)と,回路上の回路素子及び配線の遅延値が
示される遅延ライブラリ(12−4)とによって遅延情
報(12−5)を作成する。 2.許容される最大の遅延値である最大遅延値を示すク
リティカルパス・タイミング規格(12−6)と,遅延
情報(12−5)とを比較して遅延規格を満たさない配
線を算出し,遅延規格を満たさない配線にバッファを挿
入するネットリスト修正(12−7)を行い,修正ネッ
トリスト(12−8)を作成する。 3.修正ネットリスト(12−8)とレイアウトデータ
(12−3)とによって,遅延規格が満たされない配線
上にバッファを挿入することが可能な座標を検索し,再
配置配線(12−9)を行う。この時点では,バッファ
を挿入する位置は特定できていないため,挿入した場所
により期待した効果を得ることができていないことが有
り得る。 4.再びレイアウトデータ(再レイアウトデータ)(1
2−10)を作成し,その再レイアウトデータ(12−
10)と遅延ライブラリ(12−4)とによって再遅延
情報(12−11)を作成する。 5.最終的にクリティカルパス・タイミング規格(12
−6)を満たしたか否かを確認し(12−12),規格
を満たさない遅延配線がある場合,ネットリスト修正
(12−7)から上記方法を繰り返す。全ての配線が規
格を満たしている場合は半導体装置の自動配置配線方法
を終了する。
The operation of a general conventional automatic placement and routing method for a semiconductor device will be described in order with reference to a flowchart. FIG. 14 shows a flow chart of a conventional automatic placement and routing method for a semiconductor device. FIG. 14 is a flowchart for inserting a buffer into a wiring that does not satisfy the delay standard according to the conventional method. 1. The semiconductor circuit elements are arranged and wired based on a list (hereinafter referred to as a netlist) (12-1) showing how the semiconductor circuit elements are arranged and wired. Data indicating how they are arranged and wired above (hereinafter referred to as layout data)
(12-3) is created. Next, delay information (12-5) is created from the layout data (12-3) and the delay library (12-4) indicating delay values of circuit elements and wiring on the circuit. 2. The critical path timing standard (12-6) indicating the maximum allowable delay value and the delay information (12-5) are compared with each other to calculate the wiring that does not satisfy the delay standard, Is corrected (12-7) to insert a buffer into a wire that does not satisfy the condition (1), and a corrected netlist (12-8) is created. 3. Based on the corrected netlist (12-8) and the layout data (12-3), a coordinate at which a buffer can be inserted on a wiring that does not satisfy the delay standard is searched, and relocation wiring (12-9) is performed. . At this point, the position where the buffer is to be inserted has not been specified, so that the expected effect may not be obtained depending on the position where the buffer is inserted. 4. Layout data (re-layout data) (1
2-10) is created, and the re-layout data (12-
10) and the delay library (12-4) to generate the re-delay information (12-11). 5. Finally, the critical path timing standard (12
-6) is checked (12-12), and if there is a delay wiring that does not satisfy the standard, the above method is repeated from netlist correction (12-7). If all the wirings satisfy the standard, the automatic placement and routing method of the semiconductor device ends.

【0008】しかし上述の従来の半導体装置の自動配置
配線方法では,例えば実際の0.25μmLSI製品に
おいて300万ゲートに対し10万ゲートのバッファを
挿入するような場合では,LSI内の信号の遅延規格を
満たさない全ての配線を修正することになる。この様に
遅延規格を満たさない全ての配線に対して遅延規格を使
用するため,何回もIPOを使用するタイミング修正を
繰り返すことになり,TATが長くなるという問題があ
る。また,この遅延規格を満たさない全ての配線を修正
することがTATを長くしてしまう最大の要因となって
いる。一方,IPOを使用して修正し一度完成したレイ
アウトに対して配置配線が自動的に修正される処理を実
行しても,実際の配置配線で配線上の期待する位置にバ
ッファが置かれることはほとんど有り得ない。したがっ
て,遅延規格を満たさない修正すべき箇所が発生するこ
とになる。このため再度IPO修正を行うことが必要に
なり,LSI内の信号のタイミング修正を実行するTA
Tが長くなるという問題がある。
However, in the conventional automatic placement and routing method of a semiconductor device described above, for example, in a case where a buffer of 100,000 gates is inserted for every 3,000,000 gates in an actual 0.25 μmL SI product, the signal delay standard in the LSI is required. Will be corrected. As described above, since the delay standard is used for all the wirings that do not satisfy the delay standard, the timing correction using the IPO is repeated many times, and there is a problem that the TAT becomes long. In addition, correcting all the wirings that do not satisfy the delay standard is the biggest factor that increases the TAT. On the other hand, even if processing is performed to correct placement and routing automatically for a layout that has been corrected using IPO and completed once, the buffer is not placed at the expected position on the wiring in the actual placement and routing. Almost impossible. Therefore, there are portions to be corrected that do not satisfy the delay standard. Therefore, it is necessary to perform the IPO correction again, and the TA for correcting the timing of the signal in the LSI is required.
There is a problem that T becomes long.

【0009】上述の問題を解決することを目的として,
特許公報第2739843号に記載された半導体装置の
自動レイアウト方法がある。この特許公報第27398
43号に記載された発明によれば,半導体装置における
配置配線後において,クリティカルネットにバッファを
挿入する場合に,当該クリティカルネットの遅延量を低
減することを目的として,機能セル,バッファ及び配線
等に起因するリアルな回路諸要因を配慮したうえで,前
記バッファの最適な挿入位置を明確に設定して,配置配
線を行うことのできる半導体装置の自動レイアウト方法
を実現することができると期待される。
For the purpose of solving the above problems,
There is an automatic layout method for a semiconductor device described in Japanese Patent Publication No. 2739843. This patent publication No. 27398
According to the invention described in No. 43, when a buffer is inserted into a critical net after placement and routing in a semiconductor device, a function cell, a buffer, a wiring, and the like are provided for the purpose of reducing the delay amount of the critical net. It is expected that it is possible to realize an automatic layout method of a semiconductor device in which the optimum insertion position of the buffer can be clearly set and the arrangement and wiring can be performed, while taking into account the real circuit factors caused by the above. You.

【0010】[0010]

【発明が解決しようとする課題】しかし,特許公報第2
739843号に記載された半導体装置の自動レイアウ
ト方法では最適位置は一点であるので,既に配置配線さ
れている半導体集積回路装置では最適な位置に位置配線
するのは困難であり容易に実行することが難しいという
可能性がある。
However, Patent Publication No. 2
In the automatic layout method for a semiconductor device described in US Pat. No. 7,398,843, the optimum position is one point. Therefore, it is difficult to position and wire the optimum position in a semiconductor integrated circuit device that has already been arranged and wired, and it is easy to execute. It can be difficult.

【0011】以上の従来技術における問題に鑑み,本発
明は素子が配置配線された半導体集積回路装置の遅延規
格を満たさない配線経路における遅延を低減することが
可能になる半導体装置の自動配置配線方法を提供するこ
とを目的とする。
In view of the above-mentioned problems in the prior art, the present invention provides an automatic placement and routing method for a semiconductor device capable of reducing a delay in a routing path that does not satisfy a delay standard of a semiconductor integrated circuit device in which elements are placed and wired. The purpose is to provide.

【0012】[0012]

【課題を解決するための手段】前記課題を解決する本出
願第1の発明の半導体装置の自動配置配線方法は,許容
される最大の遅延値である最大遅延値を示すクリティカ
ルパス・タイミング規格が満たされない配線に,バッフ
ァが挿入されるリストを示す修正ネットリストと,回路
上にどのように半導体回路素子が配置されて配線される
かを示すデータであるレイアウトデータと,ネットリス
ト内の回路ブロック特性を示すブロックライブラリとに
よってクリティカルパス・タイミング規格を満たさない
前記配線での遅延値の計算をする第一の手順と,バッフ
ァが挿入されるべき位置を示す一の半導体素子の出力端
からの配線長を求め,バッファが挿入されることが可能
な座標を算出し,この座標を算出したバッファ挿入範囲
においてバッファが既存の素子と重ならない位置に座標
を配置することが可能かどうかを判断し,配置すること
が可能である場合はその座標にバッファを配置して配線
する第二の手順と,バッファが既存の素子と重ならない
位置に座標を配置することが不可能である場合は,バッ
ファが挿入されようとする配線上に半導体素子を配置す
る最小単位である1Gを前記バッファ挿入範囲内に存在
する配線の近傍に設定して,この配線近傍内に挿入され
るべきバッファが既存の素子と重ならない位置を検索す
る第三の手順と,その位置にバッファを配置して配線
し,遅延規格を満たさない全ての配線にバッファを挿入
することが完了したかどうかを判断し,遅延規格を満た
さない全ての配線に対してバッファを挿入することが終
了するまで第一の手順から手順を繰り返すことを特徴と
する。
According to the first aspect of the present invention, there is provided an automatic placement and routing method for a semiconductor device, wherein a critical path timing standard indicating a maximum delay value, which is a maximum allowable delay value, is used. A modified netlist indicating a list in which a buffer is inserted into a wiring that is not satisfied, layout data indicating how semiconductor circuit elements are arranged and wired on a circuit, and circuit blocks in the netlist. A first procedure for calculating a delay value in the wiring that does not satisfy the critical path timing standard by using a block library having characteristics; and a wiring from an output end of one semiconductor element indicating a position where a buffer is to be inserted. Determine the length, calculate the coordinates where the buffer can be inserted, and calculate the buffer in the buffer insertion range where the coordinates were calculated. The second step is to determine whether coordinates can be placed at a position that does not overlap with existing elements, and if so, to place and wire a buffer at that coordinate, If it is impossible to arrange coordinates at a position that does not overlap with the element, 1G, which is the minimum unit for arranging the semiconductor element on the wiring into which the buffer is to be inserted, is set to 1G of the wiring existing within the buffer insertion range. A third procedure to search for a position where the buffer to be inserted in the vicinity of the wiring does not overlap with the existing element by setting it near, and placing the buffer at that position and wiring it, and all those that do not meet the delay standard It is determined whether or not the buffer has been inserted into the wiring of all lines, and the procedure from the first step is repeated until the buffer is inserted into all the wirings that do not satisfy the delay specification. And wherein the Succoth.

【0013】したがって,本出願第1の発明の半導体装
置の自動配置配線方法によれば,遅延規格を満たさない
配線上でバッファを挿入する位置をソース側素子自身の
遅延値が配線負荷による遅延値に比較して大きくなる範
囲の配線長に対して,バッファを配置して配線すること
によって,遅延規格を満たす修正をすることができる。
また,再度IPO修正を行うことなく,1回の修正で遅
延規格を満たす修正をすることができるため,短いTA
Tを実現することが可能になる。
Therefore, according to the method of automatically placing and routing a semiconductor device according to the first invention of the present application, the position at which a buffer is inserted on a wiring that does not satisfy the delay standard is determined by the delay value of the source-side element itself and the delay value due to the wiring load. By arranging and wiring a buffer for a wiring length in a range larger than that of the above, it is possible to correct the delay standard.
In addition, since a correction that satisfies the delay standard can be made with a single correction without having to make another IPO correction, a short TA
T can be realized.

【0014】本出願第2の発明の半導体装置の自動配置
配線方法は,本出願第1の発明の半導体装置の自動配置
配線方法において,配線近傍内のバッファが既存の素子
と重ならない位置を検索する前記第三の手順は,+側の
位置かつ配線に直角であって配線から所定の長さだけ離
れる位置に,バッファが挿入されようとする配線上に半
導体素子を配置する最小単位である1Gを設定し,前記
バッファ挿入範囲内においてバッファが既存の素子と重
ならない位置の座標をこの所定の位置の配線と平行に検
索する第一手順と,バッファを挿入することが可能な座
標が有った場合にはこの手順を終了してほかの遅延規格
を満たさない配線を検索し,バッファが既存の素子と重
なり配置されることが不可能な場合は,−側の位置であ
って配線から所定の長さだけ離れる位置に1Gを設定
し,前記バッファ挿入範囲内においてバッファが既存の
素子と重ならない位置の座標を所定の位置の配線と平行
に検索する第二手順と,バッファを挿入することが可能
な座標が有った場合にはこの手順を終了してほかの遅延
規格を満たさない配線を検索し,以上の手順によっても
バッファが既存の素子と重なり配置されることが不可能
な場合は,第一及び第二手順において配線から1Gが離
れる長さを長くしてゆき,前記バッファ挿入範囲内でバ
ッファが既存の素子と重ならない位置の座標を所定の位
置の配線と平行に検索する第三手順とを設定することを
特徴とする。
The automatic placement and routing method for a semiconductor device according to the second invention of the present application is directed to the automatic placement and routing method for a semiconductor device according to the first invention of the present application, which searches for a position where a buffer in the vicinity of the wiring does not overlap an existing element. The third procedure is a minimum unit for arranging a semiconductor element on a wiring into which a buffer is to be inserted, at a position on the + side and at a right angle to the wiring and at a distance from the wiring by a predetermined length. The first procedure is to search for the coordinates of the position where the buffer does not overlap the existing element within the buffer insertion range in parallel with the wiring at the predetermined position, and there are the coordinates where the buffer can be inserted. If this is the case, terminate this procedure and search for wiring that does not meet the other delay specifications. A second procedure of setting 1G at a position separated by a length and searching for coordinates of a position where the buffer does not overlap an existing element in the buffer insertion range in parallel with a wiring at a predetermined position, and inserting a buffer. If there are possible coordinates, terminate this procedure and search for wiring that does not meet other delay standards. If the above procedure does not make it possible to place the buffer overlapping existing elements, In the first and second procedures, the length at which 1 G separates from the wiring is increased, and the coordinates of the position where the buffer does not overlap the existing element within the buffer insertion range are searched in parallel with the wiring at the predetermined position. It is characterized in that three procedures are set.

【0015】したがって,本出願第2の発明の半導体装
置の自動配置配線方法によれば,配線に対して+側の位
置で配線と平行にバッファが既存の素子と重ならない位
置の座標を検索する。つぎに,配線に対して−側の位置
で配線と平行にバッファが既存の素子と重ならない位置
の座標を検索する。そして,配線と検索する位置との距
離を変化させることによって,バッファ挿入範囲におけ
る既存の素子と重ならない位置の座標を見つけ出すこと
が可能になる。ここで所定の長さとは,ある長さを単位
とする長さである。例えば1Gを単位とする長さであ
る。本発明ではこの手順を実行する回数が第n回目の場
合はn単位長さ(ここに示した例ではnG)がその回数
での所定の長さになる。
Therefore, according to the semiconductor device automatic placement and routing method of the second invention of the present application, the coordinates of a position where the buffer does not overlap the existing element are searched in parallel with the wiring at a position on the + side with respect to the wiring. . Next, the coordinates of a position where the buffer does not overlap the existing element are searched in parallel with the wiring on the negative side of the wiring. Then, by changing the distance between the wiring and the position to be searched, it is possible to find the coordinates of the position in the buffer insertion range that does not overlap with the existing element. Here, the predetermined length is a length in units of a certain length. For example, the length is in units of 1 G. In the present invention, when the number of times this procedure is executed is the nth time, the n unit length (nG in the example shown here) becomes the predetermined length at that number.

【0016】本出願第3の発明の半導体装置の自動配置
配線方法は,本出願第1の発明の半導体装置の自動配置
配線方法において,配線近傍内のバッファが既存の素子
と重ならない位置を検索する前記第三の手順は,配線に
直角かつ+側の位置であって配線から所定の長さだけ離
れる位置に,バッファが挿入されようとする配線上に半
導体素子を配置する最小単位である1Gを設定し,前記
バッファ挿入範囲内においてバッファが既存の素子と重
ならない位置の座標を検索する第一手順と,バッファを
挿入することが可能な座標が有った場合にはこの手順を
終了してほかの遅延規格を満たさない配線を検索し,バ
ッファが既存の素子と重なり配置されることが不可能な
場合は,第一手順で調べた位置とは配線に対して対称な
位置(−側の位置領域内の位置である)に1Gを設定
し,前記バッファ挿入範囲内においてバッファが既存の
素子と重ならない位置の座標を検索する第二手順と,バ
ッファを挿入することが可能な座標が有った場合にはこ
の手順を終了してほかの遅延規格を満たさない配線を検
索し,以上の手順によってもバッファが既存の素子と重
なり配置されることが不可能な場合は,第一及び第二手
順においてバッファが既存の素子と重ならない位置の座
標を前記バッファ挿入範囲内において配線と平行に検索
する第三手順と,バッファを挿入することが可能な座標
が有った場合にはこの手順を終了してほかの遅延規格を
満たさない配線を検索し,第三手順によってもバッファ
が既存の素子と重なり配置されることが不可能な場合
は,第一及び第二手順において配線から1Gが離れる長
さを長くして前記第一及び第二及び第三手順を行う第四
手順とを設定することを特徴とする。
The automatic placement and routing method for a semiconductor device according to the third invention of the present application is directed to the automatic placement and routing method for a semiconductor device according to the first invention of the present application, which searches for a position where a buffer in the vicinity of the wiring does not overlap an existing element. The third procedure is a minimum unit for arranging a semiconductor element on a wiring into which a buffer is to be inserted, at a position perpendicular to the wiring and on the + side and away from the wiring by a predetermined length. Is set, and the first step of searching for coordinates at a position where the buffer does not overlap an existing element within the buffer insertion range, and if there are coordinates at which the buffer can be inserted, this step is terminated. Search for wiring that does not meet the other delay specifications, and if it is not possible to place the buffer so that it overlaps with the existing elements, a position symmetrical to the wiring (the negative side) Position of There is a second procedure for searching for coordinates at a position where the buffer does not overlap an existing element within the buffer insertion range, and a coordinate at which a buffer can be inserted. In this case, terminate this procedure and search for wiring that does not meet the other delay specifications. If the above procedure does not make it possible to place the buffer so that it overlaps the existing elements, the first and second procedures shall be performed. In the above, the third step of searching the coordinates of the position where the buffer does not overlap the existing element in parallel with the wiring in the buffer insertion range, and if there is the coordinates where the buffer can be inserted, this step is ended. Then, search for wiring that does not meet other delay standards, and if it is not possible to place the buffer so that it overlaps with the existing elements even by the third procedure, perform wiring in the first and second procedures. By increasing the length of G is separated and sets a fourth procedure for the first and second and third steps.

【0017】したがって,本出願第3の発明の半導体装
置の自動配置配線方法によれば,配線に対して+側の位
置でバッファが既存の素子と重ならない位置の座標を検
索する。つぎに,一手順前に検索した位置と配線に関し
て対称な位置(−側の位置)でバッファが既存の素子と
重ならない位置の座標を検索する。そして,以上の手順
を配線に沿って平行移動する位置において実行する。更
に,以上の手順を配線からの検索する位置の距離を徐々
に長くして実行する。以上の方法によって,バッファ挿
入範囲内の全ての領域に対し,既存の素子と重ならない
位置の座標をくまなく検索することが可能になる。
Therefore, according to the method of automatically placing and routing a semiconductor device according to the third aspect of the present invention, the coordinates of a position where the buffer does not overlap the existing element at the position on the + side with respect to the wiring are searched. Next, the coordinates of the position where the buffer does not overlap with the existing element are searched for at a position (position on the minus side) symmetrical with respect to the wiring and the position searched one step before. Then, the above procedure is executed at a position where the parallel movement is performed along the wiring. Further, the above procedure is executed while gradually increasing the distance of the search position from the wiring. With the above method, it becomes possible to search all the areas within the buffer insertion range for coordinates of positions that do not overlap with existing elements.

【0018】本出願第4の発明の半導体装置の自動配置
配線方法は,本出願第1の発明の半導体装置の自動配置
配線方法において,配線近傍内のバッファが既存の素子
と重ならない位置を検索する前記第三の手順は,n(n
は自然数を示す)を1として,前記バッファ挿入範囲内
の配線上においてバッファを挿入することが可能な座標
を検索して,バッファを挿入することが可能な座標が有
った場合にはこの手順を終了してほかの遅延規格を満た
さない配線を検索し,バッファを挿入することが可能な
座標がない場合にはバッファ挿入範囲内の一端に検索開
始位置を設定してつぎの第二手順に進む第一手順と,配
線から+nG離れる位置(配線から離れる一方の向きを
プラス(+)方向とする)において配線に平行に1Gず
つバッファ挿入範囲内を移動してバッファを挿入するこ
とが可能な座標を検索する第二手順と,バッファを挿入
することが可能な座標が有った場合にはこの手順を終了
してほかの遅延規格を満たさない配線を検索し,バッフ
ァを挿入することが可能な座標がない場合には配線から
−nG離れる位置(配線から離れる他方の向き,すなわ
ち+方向と逆の向きをマイナス(−)方向とする)を配
線に平行に1Gずつバッファ挿入範囲内を移動してバッ
ファを挿入することが可能な座標を検索する第三手順
と,バッファを挿入することが可能な座標が有った場合
にはこの手順を終了してほかの遅延規格を満たさない配
線を検索し,バッファを挿入することが可能な座標がな
い場合にはnをn+1として第二手順に戻る第四手順と
を設定することを特徴とする。
The automatic placement and routing method for a semiconductor device according to the fourth invention of the present application is directed to the automatic placement and routing method for a semiconductor device according to the first invention of the present application, which searches for a position where a buffer in the vicinity of the wiring does not overlap an existing element. In the third procedure, n (n
Is a natural number), and 1 is searched for a buffer-insertable coordinate on the wiring within the buffer insertion range, and if there is a buffer-insertable coordinate, this procedure is performed. Search for wiring that does not satisfy the other delay standard, and if there is no coordinate at which a buffer can be inserted, set the search start position at one end within the buffer insertion range and go to the second procedure below. It is possible to insert the buffer by moving in the buffer insertion range by 1 G in parallel with the wiring at a position + nG away from the wiring (one direction away from the wiring is defined as a plus (+) direction) at the position + nG away from the wiring. The second step of searching for coordinates, and if there are coordinates that can insert a buffer, terminate this procedure and search for wiring that does not meet other delay standards, and insert a buffer. If there is no possible coordinate, the position away from the wiring by -nG (the other direction away from the wiring, that is, the direction opposite to the + direction is defined as a minus (-) direction) is set in the buffer insertion range by 1 G in parallel with the wiring. The third step of moving and searching for coordinates where a buffer can be inserted, and if there are coordinates where a buffer can be inserted, terminate this procedure and route the wiring that does not meet other delay standards And if there is no coordinate at which a buffer can be inserted, a fourth procedure is set, where n is set to n + 1 and the procedure returns to the second procedure.

【0019】したがって,本出願第4の発明の半導体装
置の自動配置配線方法によれば,バッファ挿入範囲内の
配線上においてバッファを挿入することが可能な座標を
検索する。つぎに,配線から+nG離れる位置で配線と
平行にバッファが既存の素子と重ならない位置の座標を
検索する。つぎに,配線から+nG離れる位置で配線と
平行にバッファが既存の素子と重ならない位置の座標を
検索する。つぎにnをn+1として上述の2番目の手順
にもどることによって,バッファ挿入範囲における既存
の素子と重ならない位置の座標を見つけ出すことが可能
になる。
Therefore, according to the semiconductor device automatic placement and routing method of the fourth invention of the present application, coordinates at which a buffer can be inserted are searched for on the wiring within the buffer insertion range. Next, the coordinates of a position where the buffer does not overlap the existing element at a position + nG away from the wiring and parallel to the wiring are searched. Next, the coordinates of a position where the buffer does not overlap the existing element at a position + nG away from the wiring and parallel to the wiring are searched. Next, by setting n to n + 1 and returning to the above-described second procedure, it becomes possible to find the coordinates of a position in the buffer insertion range that does not overlap with an existing element.

【0020】本出願第5の発明の半導体装置の自動配置
配線方法は,本出願第1の発明の半導体装置の自動配置
配線方法において,配線近傍内のバッファが既存の素子
と重ならない位置を検索する前記第三の手順は,n(n
は自然数を示す)を1として,前記バッファ挿入範囲内
の配線上においてバッファを挿入することが可能な座標
を検索して,バッファを挿入することが可能な座標が有
った場合にはこの手順を終了してほかの遅延規格を満た
さない配線を検索し,バッファを挿入することが可能な
座標がない場合にはバッファ挿入範囲内の一端に検索開
始位置を設定してつぎの第二手順に進む第一手順と,バ
ッファを挿入することが可能な座標が有った場合にはこ
の手順を終了してほかの遅延規格を満たさない配線を検
索し,バッファを挿入することが可能な座標がない場合
には,配線から+nG離れる位置(配線から離れる一方
の向きをプラス(+)方向とする)においてバッファを
挿入することが可能な座標を検索する第二手順と,バッ
ファを挿入することが可能な座標が有った場合にはこの
手順を終了してほかの遅延規格を満たさない配線を検索
し,バッファを挿入することが可能な座標がない場合に
は,配線から−nG離れる位置(配線から離れる他方の
向き,すなわち+方向と逆の向きをマイナス(−)方向
とする)においてバッファを挿入することが可能な座標
を検索する第三手順と,バッファを挿入することが可能
な座標が有った場合にはこの手順を終了してほかの遅延
規格を満たさない配線を検索し,検索している領域にバ
ッファを挿入することが可能な座標がない場合には,バ
ッファ挿入範囲内において配線に平行に1Gだけ移動し
て第二手順に戻り,配線に平行に1Gだけ移動するとバ
ッファ挿入範囲から逸脱する場合は次の第五手順に進む
第四手順と,nをn+1としてバッファ挿入範囲内の一
端に検索開始位置を設定して第二手順に戻る第五手順と
を設定することを特徴とする。
According to a fifth aspect of the present invention, there is provided an automatic placement and routing method for a semiconductor device according to the first aspect of the present invention, which searches for a position where a buffer in the vicinity of a wiring does not overlap an existing element. In the third procedure, n (n
Is a natural number), and 1 is searched for a buffer-insertable coordinate on the wiring within the buffer insertion range, and if there is a buffer-insertable coordinate, this procedure is performed. Search for wiring that does not satisfy the other delay standard, and if there is no coordinate at which a buffer can be inserted, set the search start position at one end within the buffer insertion range and go to the second procedure below. If there is a first step to proceed and if there are coordinates where a buffer can be inserted, terminate this procedure and search for wiring that does not meet other delay standards, and find the coordinates where a buffer can be inserted. If not, a second procedure of searching for coordinates where a buffer can be inserted at a position + nG away from the wiring (one direction away from the wiring is defined as a plus (+) direction), and inserting a buffer If there is a coordinate that can be used, this procedure is terminated and a wiring that does not satisfy another delay standard is searched. If there is no coordinate that can insert a buffer, a position -nG away from the wiring is searched. A third procedure for searching for coordinates where a buffer can be inserted in the other direction away from the wiring, that is, the direction opposite to the + direction is defined as a minus (-) direction, and the buffer can be inserted. If there are coordinates, this procedure is terminated and a search is made for wiring that does not satisfy other delay standards. If there are no coordinates where a buffer can be inserted in the searched area, the buffer insertion range In the case of moving by 1 G in parallel with the wiring and returning to the second procedure, moving by 1 G in parallel with the wiring and deviating from the buffer insertion range, the fourth procedure to proceed to the next fifth procedure, And setting a fifth procedure returns to the second step and begin the search at one end of the § insertion range.

【0021】したがって,本出願第5の発明の半導体装
置の自動配置配線方法によれば,バッファ挿入範囲内の
配線上においてバッファを挿入することが可能な座標を
検索する。バッファを挿入することが可能な座標がない
場合にはバッファ挿入範囲内の一端に検索開始位置を設
定してつぎの手順に進む。つぎに,配線から+nG離れ
る位置においてバッファを挿入することが可能な座標を
検索する。つぎに,配線から−nG離れる位置において
バッファを挿入することが可能な座標を検索する。つぎ
に,配線に平行に1Gだけ移動しnをn+1として上述
の2番目の手順にもどることによって,バッファ挿入範
囲における既存の素子と重ならない位置の座標を見つけ
出すことが可能になる。
Therefore, according to the method of automatically placing and routing a semiconductor device according to the fifth aspect of the present invention, coordinates at which a buffer can be inserted are searched for on the wiring within the buffer insertion range. If there is no coordinate at which a buffer can be inserted, a search start position is set at one end within the buffer insertion range, and the procedure proceeds to the next step. Next, at a position + nG away from the wiring, a coordinate at which a buffer can be inserted is searched. Next, a search is made for coordinates where a buffer can be inserted at a position -nG away from the wiring. Next, by moving by 1 G in parallel with the wiring and setting n to n + 1 and returning to the above-described second procedure, it is possible to find the coordinates of a position in the buffer insertion range that does not overlap the existing element.

【0022】本出願第6の発明の半導体装置の自動配置
配線方法は,本出願第1の発明の半導体装置の自動配置
配線方法において,配線近傍内のバッファが既存の素子
と重ならない位置を検索する順序は,前記バッファ挿入
範囲内の配線上の一端から他端までバッファを挿入する
ことが可能な座標を検索する第一過程と,配線によって
二に分断される領域の一方の領域において,配線から所
定の一定距離だけ離れた位置でバッファ挿入範囲内の一
端から他端までバッファを挿入することが可能な座標を
検索する第二過程と,配線によって二に分断される領域
の他方の領域において,配線から所定の一定距離だけ離
れた位置でバッファ挿入範囲内の一端から他端までバッ
ファを挿入することが可能な座標を検索する第三過程と
を設定して,バッファを挿入することが可能な座標が見
つかるまで第二過程及び第三過程において配線からの所
定の一定距離を徐々に長くして再び第二過程,第三過程
に進むことを特徴とする。
According to a sixth aspect of the present invention, there is provided an automatic placement and routing method for a semiconductor device according to the first aspect of the present invention, which searches for a position where a buffer in the vicinity of a wiring does not overlap an existing element. The order in which a buffer can be inserted from one end to the other end of the wiring within the buffer insertion range is searched in the first step, and the wiring is divided in one of two regions divided by the wiring. A second step of searching for a coordinate at which a buffer can be inserted from one end to the other end within the buffer insertion range at a position separated by a predetermined fixed distance from the other, in the other area of the area divided into two by the wiring And a third step of searching for coordinates at which a buffer can be inserted from one end to the other end within the buffer insertion range at a position separated by a predetermined fixed distance from the wiring, and Gradually lengthened again second step a predetermined fixed distance from the wiring in the second step and the third step until it finds can coordinate to insert §, characterized in that the process proceeds to the third step.

【0023】したがって,本出願第6の半導体装置の自
動配置配線方法によれば,前記バッファ挿入範囲内の配
線上の一端から他端までバッファを挿入することが可能
な座標を検索する。つぎに,配線によって二に分断され
る領域の一方の領域において,配線から所定の一定距離
だけ離れた位置でバッファ挿入範囲内の一端から他端ま
でバッファを挿入することが可能な座標を検索する。つ
ぎに,配線によって二に分断される領域の他方の領域に
おいて,配線から所定の一定距離だけ離れた位置でバッ
ファ挿入範囲内の一端から他端までバッファを挿入する
ことが可能な座標を検索する。バッファを挿入すること
が可能な座標が見つかるまで2番目及び3番目の手順に
おいて配線からの所定の一定距離を徐々に長くして再び
2番目,3番目の手順に進むことによって,バッファ挿
入範囲における既存の素子と重ならない位置の座標を見
つけ出すことが可能になる。ここで所定の一定距離と
は,ある長さを単位とする長さである。例えば1Gを単
位とする距離である。
Therefore, according to the automatic placement and routing method for a semiconductor device according to the sixth aspect of the present invention, a coordinate at which a buffer can be inserted from one end to the other end of the wiring within the buffer insertion range is searched. Next, in one area of the area divided into two by the wiring, a coordinate that allows a buffer to be inserted from one end to the other end within the buffer insertion range at a position separated by a predetermined fixed distance from the wiring is searched. . Next, in the other area of the area divided into two parts by the wiring, a coordinate which can insert a buffer from one end to the other end within the buffer insertion range at a position separated by a predetermined fixed distance from the wiring is searched. . By gradually increasing the predetermined distance from the wiring in the second and third procedures until the coordinates at which a buffer can be inserted are found, and then proceeding to the second and third procedures again, It is possible to find the coordinates of a position that does not overlap with the existing element. Here, the predetermined constant distance is a length in units of a certain length. For example, the distance is a unit of 1 G.

【0024】本出願第7の発明の半導体装置の自動配置
配線方法は,本出願第1の発明の半導体装置の自動配置
配線方法において,配線近傍内のバッファが既存の素子
と重ならない位置を検索する順序は,前記バッファ挿入
範囲内の配線上の一端から他端までバッファを挿入する
ことが可能な座標を検索する第一過程と,配線によって
二に分断される領域の一方の領域の一端において,配線
から所定の一定距離だけ離れた位置のバッファ挿入範囲
内においてバッファを挿入することが可能な座標を検索
する第二過程と,配線によって二に分断される領域の他
方の領域の一端において,配線から所定の一定距離だけ
離れた位置のバッファ挿入範囲内においてバッファを挿
入することが可能な座標を検索する第三過程と,第二過
程及び第三過程においてバッファ挿入範囲内を一端から
他端方向へ所定の距離移動した位置において,再び第二
過程,第三過程に進む第四過程とを設定して,バッファ
挿入範囲内でバッファを挿入することが可能な座標が見
つかるまで第四過程において配線からの所定の一定距離
を徐々に長くして再び第二過程,第三過程,第四過程に
進むことを特徴とする。
The automatic placement and routing method for a semiconductor device according to the seventh aspect of the present invention is directed to the automatic placement and routing method for a semiconductor device according to the first aspect of the present invention, which searches for a position where a buffer near a wiring does not overlap an existing element. The order in which the first step of searching for a coordinate at which a buffer can be inserted from one end to the other end of the wiring within the buffer insertion range and the end of one of two areas divided by the wiring are determined. A second step of retrieving coordinates at which a buffer can be inserted within a buffer insertion range at a position separated by a predetermined fixed distance from the wiring, and at one end of the other area of the area divided into two by the wiring, A third step of searching for a coordinate at which a buffer can be inserted within a buffer insertion range at a position separated by a predetermined fixed distance from the wiring, and a second step and a third step. Then, at a position moved a predetermined distance from one end to the other end in the buffer insertion range, a second process and a fourth process for proceeding to the third process are set again to insert a buffer in the buffer insertion range. The method is characterized in that a predetermined constant distance from the wiring is gradually increased in the fourth process until a possible coordinate is found, and the process proceeds to the second, third, and fourth processes again.

【0025】したがって,本出願第7の半導体装置の自
動配置配線方法によれば,バッファ挿入範囲内の配線上
の一端から他端までバッファを挿入することが可能な座
標を検索する。つぎに,配線によって二に分断される領
域の一方の領域の一端において,配線から所定の一定距
離だけ離れた位置のバッファ挿入範囲内においてバッフ
ァを挿入することが可能な座標を検索する。つぎに,配
線によって二に分断される領域の他方の領域の一端にお
いて,配線から所定の一定距離だけ離れた位置のバッフ
ァ挿入範囲内においてバッファを挿入することが可能な
座標を検索する。つぎに,2番目及び3番目の手順にお
いてバッファ挿入範囲内を一端から他端方向へ所定の距
離移動した位置において,再び2番目,3番目の手順に
進むことによって,バッファ挿入範囲内の全ての領域に
対し,既存の素子と重ならない位置の座標をくまなく検
索することが可能になる。
Therefore, according to the automatic placement and routing method for a semiconductor device according to the seventh aspect of the present invention, a coordinate at which a buffer can be inserted from one end to the other end of the wiring within the buffer insertion range is searched. Next, at one end of one of the regions divided into two by the wiring, a coordinate at which a buffer can be inserted within a buffer insertion range at a position separated by a predetermined fixed distance from the wiring is searched. Next, at one end of the other area of the area divided by the wiring, coordinates are searched for a buffer into which a buffer can be inserted within a buffer insertion range at a position separated by a predetermined fixed distance from the wiring. Next, in the second and third procedures, at the position moved a predetermined distance from the one end to the other end within the buffer insertion range, the procedure proceeds to the second and third procedures again, so that all of the buffers within the buffer insertion range are obtained. With respect to the area, it is possible to search all over the coordinates of the position that does not overlap with the existing elements.

【0026】本出願第8の発明の半導体装置の自動配置
配線方法は,本出願第1から本出願第7の発明のいずれ
か一の半導体装置の自動配置配線方法において,一の半
導体素子の出力端から別の半導体素子の入力端までの配
線長(l),一の半導体素子の出力端から挿入したバッ
ファ入力までの配線長(l1),単位配線長あたりの寄
生容量(Co),単位配線長あたりの配線抵抗(R
o),一の半導体素子自身の遅延値(tld1),一の
半導体素子の出力抵抗(R1),バッファの出力抵抗
(R2)バッファの入力容量(Cin),別の半導体素
子の入力容量(Cld),バッファ自身の遅延値(tl
d2)とした場合,バッファを挿入後の遅延値tPDが
遅延規格tPD0よりも小さいという条件である tPD0>tPD=tld1+R1×(Co×l1/2
+Cin)+Ro×Co×(l1)/2+tld2+
R2×{Co×(l−l1)/2+Cld}+Ro×C
o×(l−l1)/2 の条件によって,バッファを挿入することができる限界
長である配線長l1を求めることを特徴とする。
The automatic placement and routing method for a semiconductor device according to the eighth aspect of the present invention is the same as the automatic placement and routing method for a semiconductor device according to any one of the first to seventh aspects of the present invention. Wiring length (1) from one end to the input end of another semiconductor element, wiring length (11) from the output end of one semiconductor element to the inserted buffer input, parasitic capacitance per unit wiring length (Co), unit wiring Wiring resistance per length (R
o), the delay value (tld1) of one semiconductor element itself, the output resistance (R1) of one semiconductor element, the output resistance of a buffer (R2), the input capacitance (Cin) of a buffer, and the input capacitance (Cld) of another semiconductor element ), The delay value of the buffer itself (tl
d2), the condition is that the delay value tPD after inserting the buffer is smaller than the delay standard tPD0. tPD0> tPD = tld1 + R1 × (Co × 1/2)
+ Cin) + Ro × Co × (l1) 2/2 + tld2 +
R2 × {Co × (l-11) / 2 + Cld} + Ro × C
by o × (l-l1) 2 /2 conditions, and obtains the wiring length l1 is a length limit that can be inserted buffer.

【0027】したがって,本出願第8の半導体装置の自
動配置配線方法製造方法によれば,バッファを挿入後の
遅延値tPDと遅延規格tPD0とを比較することによ
りバッファを挿入することができる限界長である配線長
l1を求めることになる。この配線長l1によって,遅
延規格を満たすバッファを挿入することが可能な位置の
範囲を明確にすることができる。
Therefore, according to the method of manufacturing an automatic placement and routing method for a semiconductor device according to the eighth aspect of the present invention, the buffer length can be inserted by comparing the delay value tPD after the insertion of the buffer with the delay standard tPD0. Is obtained. The wiring length l1 makes it possible to clarify the range of positions where a buffer satisfying the delay standard can be inserted.

【0028】[0028]

【発明の実施の形態】第一の実施の形態 本発明における実施の形態の半導体装置の自動配置配線
方法を図1から図5までを参照して説明する。図1は,
本発明による遅延規格を満たさない配線にバッファを自
動挿入する流れ図である。まず,本実施の形態の半導体
装置の自動配置配線方法の手順の概略を示す。 1.半導体回路素子をどのように配置配線するかを示す
リストであるネットリスト(1−1)をもとに配置配線
(1−2)を行い,この配置配線後に半導体回路素子が
回路上にどのように配置配線されたかを示すデータであ
るレイアウトデータ(1−3)を作成する。つぎに,そ
のレイアウトデータ(1−3)と回路上の回路素子及び
配線の遅延値が示される遅延ライブラリ(1−4)とに
よって遅延情報(1−5)を作成する。 2.許容される最大の遅延値である最大遅延値を示すク
リティカルパス・タイミング規格(1−6)と,遅延情
報(1−5)とによって,遅延規格を満たさない配線を
算出し,遅延規格を満たさない配線にバッファを挿入す
るネットリスト修正(1−7)を行い,修正ネットリス
ト(1−8)を作成する。 3.ネットリスト内の回路ブロック特性を示すブロック
ライブラリ(1−10),修正ネットリスト(1−8)
及びレイアウトデータ(1−3)によって,遅延規格を
満たさない配線上のソース素子及びバッファの遅延パラ
メータを抽出(1−9)し,バッファが挿入される範囲
を算出(1−11)する。 4.遅延規格を満たさない配線上かつバッファを挿入す
る範囲で,バッファが既存の素子と重ならない座標に配
置することが可能かどうかを判断(1−12)する。つ
ぎにバッファが既存の素子と重ならず配置することが可
能な座標をバッファの配置座標として与え,配置配線を
行う(1−13)。 5.一方,この配線経路とは別の素子,配線等がありバ
ッファと重なり配置できない場合,遅延規格を満たさな
い配線を挟んだ両側を平行に(1−11)で求めたバッ
ファが挿入される範囲で,既存の素子とバッファが重な
らない座標を検索する。そして,そのバッファの配置座
標として与え(1−14),バッファを配置して配線
(1−13)する。 6.遅延規格を満たさない全ての配線に,バッファを挿
入することが完了した後(1−15),再びレイアウト
データ(再レイアウトデータ)(1−16)を作成す
る。 7.つぎにその再レイアウトデータ(1−16)と,遅
延ライブラリ(1−4)とによって,再遅延情報(1−
17)を作成し,クリティカルパス・タイミング規格
(1−6)を満たしたかどうかを確認する(1−18)
手順を有する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS First Embodiment An automatic placement and routing method for a semiconductor device according to an embodiment of the present invention will be described with reference to FIGS. Figure 1
5 is a flowchart of automatically inserting a buffer into a wiring that does not satisfy a delay standard according to the present invention. First, an outline of a procedure of an automatic placement and routing method for a semiconductor device according to the present embodiment will be described. 1. The placement and wiring (1-2) is performed based on the netlist (1-1), which is a list indicating how to place and route the semiconductor circuit elements, and how the semiconductor circuit elements are placed on the circuit after the placement and wiring. The layout data (1-3), which is data indicating whether or not wiring has been performed, is created. Next, delay information (1-5) is created based on the layout data (1-3) and a delay library (1-4) indicating delay values of circuit elements and wiring on a circuit. 2. The wiring which does not satisfy the delay standard is calculated based on the critical path timing standard (1-6) indicating the maximum delay value which is the maximum allowable delay value and the delay information (1-5). A netlist correction (1-7) for inserting a buffer into a non-existing wiring is performed to create a corrected netlist (1-8). 3. Block library showing circuit block characteristics in netlist (1-10), modified netlist (1-8)
Then, based on the layout data (1-3), the delay parameter of the source element and the buffer on the wiring that does not satisfy the delay standard is extracted (1-9), and the range in which the buffer is inserted is calculated (1-11). 4. It is determined whether or not the buffer can be arranged at coordinates that do not overlap the existing elements on the wiring that does not satisfy the delay standard and within the range where the buffer is inserted (1-12). Next, the coordinates at which the buffer can be arranged without overlapping the existing elements are given as the arrangement coordinates of the buffer, and the arrangement and wiring are performed (1-13). 5. On the other hand, if there is another element or wiring other than this wiring path and it cannot be arranged overlapping with the buffer, the buffer determined in (1-11) is inserted in parallel on both sides of the wiring that does not satisfy the delay standard. , Search for coordinates where existing elements and buffers do not overlap. Then, it is given as the arrangement coordinates of the buffer (1-14), and the buffer is arranged and wired (1-13). 6. After the buffer is completely inserted into all the wirings that do not satisfy the delay standard (1-15), layout data (relayout data) (1-16) is created again. 7. Next, the re-layout data (1-16) and the delay library (1-4) are used to generate the re-delay information (1--1).
17) is created and it is confirmed whether the critical path timing standard (1-6) is satisfied (1-18).
With procedures.

【0029】本実施の形態の半導体装置の自動配置配線
方法において,バッファを挿入する位置を算出する手順
を図2から図5まで及び図9,図10を参照して説明す
る。図2は,本発明によって遅延規格を満たさない配線
上の算出したバッファが挿入される範囲にバッファを配
置して,バッファが半導体素子を配置する既存の素子と
重なっている状態の図である。図3は,本発明によって
遅延規格を満たさない配線上の算出したバッファが挿入
される範囲にバッファを配置できないため,遅延配線近
傍にバッファを配置した実施例の図である。遅延規格を
満たさない配線上の算出したバッファが挿入される範囲
にバッファを配置できないのは,すでにこの配線経路と
は別の素子が配置配線されているからである。図4は,
図3に示される座標位置にバッファを配置するため,検
索する順序を表した図である。図5は,バッファを配置
する座標を検索し決定する流れ図である。 1.図9に示す回路の配線経路(7−3)の配線長lに
図10に示すバッファ(8−3)を挿入すると配線長l
は,l1(8−4)とl−l1(8−5)との和で表わ
される。また,バッファを挿入後の遅延値tPD=(ソ
ース素子自身の遅延値+ソース素子出力からバッファ入
力までの配線遅延値+バッファの入力容量による遅延
値)+(バッファ自身の遅延値+バッファ出力からロー
ド素子入力までの配線遅延値+ロード素子の入力容量に
よる遅延値)が,tPD<tPD0(遅延規格)を満す
必要がある。すなわち,tPD<tPD0は以下に示す
ようになる。ソース素子の出力端からロード素子の入力
端までの配線長(l),ソース素子出力から挿入したバ
ッファ入力までの配線長(l1),単位配線長あたりの
寄生容量(Co),単位配線長あたりの配線抵抗(R
o),ソース素子自身の遅延値(tld1),ソース素
子の出力抵抗(R1),バッファの出力抵抗(R2)バ
ッファの入力容量(Cin),ロード素子の入力容量
(Cld), バッファ自身の遅延値(tld2)とし
た場合, tPD0>tld1+R1×(Co×l1/2+Ci
n)+Ro×Co×(l1)/2+tld2+R2×
{Co×(l−l1)/2+Cld}+Ro×Co×
(l−l1)/2 の条件を満たすバッファを挿入することができる限界の
配線長l1を求める。 2.バッファを挿入するソース素子出力からの配線長l
1を求め,ソース素子出力からでかつ配線上に配線長l
1以内において既存素子と重ならないバッファを挿入す
る座標を検索し,バッファを挿入する座標を算出して配
置配線を行う。 3.上記「2」において図2に示す様に既存素子(2−
5)とバッファ(2−6)とが重なり,バッファを挿入
することができない場合,図4及び図5に示す様にソー
ス素子出力からでかつ配線上の配線長l1以内で配線と
平行する座標で既存素子と重ならないバッファが挿入さ
れる座標を検索し,バッファが挿入される座標を算出
し,図3に示すように配置配線する。
A procedure for calculating a buffer insertion position in the automatic placement and routing method for a semiconductor device according to the present embodiment will be described with reference to FIGS. 2 to 5 and FIGS. FIG. 2 is a diagram illustrating a state in which a buffer is arranged in a range where a calculated buffer on a wiring that does not satisfy a delay standard is inserted according to the present invention, and the buffer overlaps with an existing element in which a semiconductor element is arranged. FIG. 3 is a diagram of an embodiment in which a buffer is arranged in the vicinity of a delay line because a buffer cannot be arranged in a range where a calculated buffer on a line that does not satisfy the delay standard is inserted according to the present invention. The reason why the buffer cannot be arranged in the range where the calculated buffer is inserted on the wiring that does not satisfy the delay standard is that another element other than this wiring path is already arranged and wired. FIG.
FIG. 4 is a diagram showing a search order for arranging a buffer at the coordinate position shown in FIG. 3. FIG. 5 is a flowchart for searching and determining coordinates for arranging a buffer. 1. When the buffer (8-3) shown in FIG. 10 is inserted into the wiring length (l) of the wiring path (7-3) of the circuit shown in FIG.
Is represented by the sum of l1 (8-4) and l-1 (8-5). The delay value tPD after inserting the buffer = (the delay value of the source element itself + the wiring delay value from the output of the source element to the buffer input + the delay value due to the input capacity of the buffer) + (the delay value of the buffer itself + the buffer output It is necessary that the wiring delay value up to the input of the load element + the delay value due to the input capacitance of the load element) satisfies tPD <tPD0 (delay standard). That is, tPD <tPD0 is as shown below. The wiring length (l) from the output end of the source element to the input end of the load element, the wiring length (l1) from the output of the source element to the input of the inserted buffer, the parasitic capacitance per unit wiring length (Co), and the unit wiring length Wiring resistance (R
o), the delay value of the source element itself (tld1), the output resistance of the source element (R1), the output resistance of the buffer (R2), the input capacitance of the buffer (Cin), the input capacitance of the load element (Cld), and the delay of the buffer itself When the value is (tld2), tPD0> tld1 + R1 × (Co × l1 / 2 + Ci
n) + Ro × Co × ( l1) 2/2 + tld2 + R2 ×
{Co × (l-11) / 2 + Cld} + Ro × Co ×
Request (l-l1) wiring length l1 of limits can be inserted satisfying buffer 2/2. 2. Wiring length l from the output of the source element to insert the buffer
1 from the output of the source element and the wiring length l on the wiring.
The coordinates for inserting a buffer that does not overlap the existing element are searched for within one, and the coordinates for inserting the buffer are calculated to perform the placement and wiring. 3. In the above “2”, as shown in FIG.
5) When the buffer (2-6) overlaps and the buffer cannot be inserted, the coordinates parallel to the wiring from the output of the source element and within the wiring length l1 on the wiring as shown in FIGS. Search for the coordinates at which a buffer that does not overlap with the existing element is inserted, calculate the coordinates at which the buffer is inserted, and place and wire as shown in FIG.

【0030】本実施の形態の半導体装置の自動配置配線
方法の手順を図1から図5までを用い詳細に説明する。
また,上記「3」の手順を下記「6」においてより詳細
に説明する。手順1,手順2は上記の本実施の形態の半
導体装置の自動配置配線方法の手順の概略に示した1及
び2と同様である。 3.修正ネットリスト(1−8),レイアウトデータ
(1−3)及びブロックライブラリ(1−10)によっ
て諸量を算出する。すなわち,遅延規格を満たさない配
線経路のソース素子出力からロード素子入力までの配線
長(l),ソース素子出力から挿入したバッファ入力ま
での配線長(l1),挿入したバッファ出力からロード
素子入力までの配線長(l−l1),単位配線長あたり
の寄生容量(Co),単位配線長あたりの配線抵抗(R
o),ソース素子自身の遅延値(tld1),ソース素
子の出力抵抗(R1),バッファの出力抵抗(R2),
バッファの入力容量(Cin),ロード素子の入力容量
(Cld),バッファ自身の遅延値(tld2)を求め
る。(1−9)では,遅延値の計算式 tPD=tld1+R1×(Co×l1/2+Cin)
+Ro×Co×(l1)/2+tld2+R2×{C
o×(l−l1)/2+Cld}+Ro×Co×(l−
l1)/2 によってtPDを算定する。このtPDが遅延規格tP
D0を満たすにはtPD0>tPDでなくてはならな
い。したがって遅延式は tPD0>tld1+R1×(Co×l1/2+Ci
n)+Ro×Co×(l1)/2+tld2+R2×
{Co×(l−l1)/2+Cld}+Ro×Co×
(l−l1)/2 となる。この式を変形し,ソース素子出力からバッファ
までの配線長l1を求める。すなわち, l1<《−Co×(R1/2−R2/2−Ro×l)±
[{Co×(R1/2−R2/2−Ro×l)} −4
×Ro×Co×(tld1+tld2+R1×Cin+
R2×Cld)+R2×Co×l/2+Ro×Co×l
/2−tPD0)]1/2》/(2×Ro×Co)
(だたしl1は0≦l1≦lの範囲) 求めたl1がバッファ挿入するソース素子出力からでか
つ配線上の限界距離である。ソース素子出力から配線上
l1の配線長をバッファが挿入される範囲として決定
(1−11)する。 4.遅延規格を満たさない配線上のバッファが挿入され
る(1−11)で算出した範囲で,バッファが既存の素
子と重ならない座標に配置することが可能かどうかを判
断(1−12)する。つぎにその座標をバッファに与
え,配置配線(1−13)する。 5.図2に示す様に,バッファ(2−6)が既存の素子
(2−5)と重なる場合について図5の流れ図と図4と
を参照して説明する(図5は,図1(1−14)の詳細
を示す)。バッファを挿入しようとする配線(4−3)
の1格子(素子配置の最小単位。以下1Gと称す)であ
る配線上のある点を原点とした直交直線座標xyのx座
標又はy座標の一方で配線(4−3)と直角方向+側の
位置(4−5)を設定する。この+側の位置(4−5)
において,ソース素子(4−1)の出力端子側からロー
ド素子(4−2)の向きに,(1−11)で求めバッフ
ァ挿入範囲までバッファが既存の素子と重ならない座標
を検索する((13−1)及び(13−2))。つぎに
バッファが既存の素子と重なり配置できない場合(13
−3)は,配線(4−3)をはさみ反対側の1G−側の
位置(4−6)を同様に,バッファが既存の素子と重な
らない座標を検索する。つぎにバッファが既存の素子と
重ならない座標を検索し,バッファにその座標を与える
(13−7)。 6.上記「5」でバッファが既存の素子と重ならない座
標がない場合,配線(4−3)からの座標位置
…等に1を加える(13−6)。例えば図4に示すよ
うに,座標位置がの場合はになり,座標位置がの
場合はになる。流れ図(13−2)から(13−5)
までを繰り返す。バッファが既存の素子と重ならない座
標を検索し,バッファにその座標を与える(13−
7)。 7.バッファをその座標位置に配置配線(1−13)す
る。すると例えば図3に示すようにバッファ(3−6)
が配置される。 8.遅延規格を満たさない全ての配線に,バッファ挿入
が完了したかどうか(1−15)を判断し,全て終了す
るまで(1−9)からの手順を繰り返す。 9.遅延規格を満たさない全ての配線にバッファを配置
配線することができたら,再レイアウトデータ(1−1
6)を作成し,遅延ライブラリ(1−4)とあわせ,再
遅延情報(1−17)を作成する。最終的にクリティカ
ルパス・タイミング規格(1−6)を満たしたかどうか
を確認し(1−18),半導体装置の自動配置配線方法
を終了する。
Automatic placement and routing of semiconductor device of this embodiment
The procedure of the method will be described in detail with reference to FIGS.
Also, the procedure of the above “3” is described in more detail in “6” below.
Will be described. Procedure 1 and Procedure 2 are half of the above-described embodiment.
1 and 2 shown in the outline of the procedure of the automatic arrangement and wiring method of the conductor device
And 2 are the same. 3. Corrected netlist (1-8), layout data
(1-3) and block library (1-10)
To calculate various quantities. That is, a distribution that does not meet the delay specification
Wiring from source element output to load element input of wire path
Length (l), from the source element output to the inserted buffer input
Length (l1), load from inserted buffer output
Wiring length (l-11) to element input, per unit wiring length
Parasitic capacitance (Co), wiring resistance per unit wiring length (R
o), the delay value of the source element itself (tld1), the source element
Output resistance (R1), output resistance of buffer (R2),
Buffer input capacitance (Cin), load element input capacitance
(Cld), find the delay value (tld2) of the buffer itself
You. In (1-9), the calculation formula of the delay value is tPD = tld1 + R1 × (Co × l1 / 2 + Cin)
+ Ro × Co × (l1)2/ 2 + tld2 + R2 × ΔC
ox (l-11) / 2 + CldCl + Ro × Co × (l−
l1)2/ 2 is used to calculate tPD. This tPD is the delay standard tP
TPD0> tPD must be satisfied to satisfy D0
No. Therefore, the delay equation is tPD0> tld1 + R1 × (Co × l1 / 2 + Ci
n) + Ro × Co × (11)2/ 2 + tld2 + R2 ×
{Co × (l-11) / 2 + Cld} + Ro × Co ×
(L-11)2/ 2. This equation is transformed to output the buffer
Up to the wiring length l1. That is, l1 <<< − Co × (R1 / 2−R2 / 2−Ro × l) ±
[{Co × (R1 / 2−R2 / 2−Ro × l)}}2 -4
× Ro × Co × (tld1 + tld2 + R1 × Cin +
R2 × Cld) + R2 × Co × 1/2 + Ro × Co × 1
2/ 2-tPD0)]1/2>> / (2 × Ro × Co)
 (However, l1 is in the range of 0 ≦ l1 ≦ l) The obtained l1 is the output from the source element output to be inserted into the buffer.
One is the limit distance on the wiring. On wiring from source element output
Determine the wiring length of l1 as the range in which the buffer is inserted
(1-11). 4. A buffer on the wiring that does not meet the delay specification is inserted.
Within the range calculated in (1-11),
Determines whether it is possible to place the coordinates at
(1-12). Next, the coordinates are given to the buffer.
Then, place and route (1-13). 5. As shown in FIG. 2, the buffer (2-6) is an existing device
(2-5) and the flowchart of FIG.
(FIG. 5 shows details of FIG. 1 (1-14)).
Is shown). Wiring to insert buffer (4-3)
(The smallest unit of element arrangement; hereinafter referred to as 1G)
X-coordinate of orthogonal linear coordinates xy with a certain point on the wiring as the origin
One of the mark and the y-coordinate, in the direction perpendicular to the wiring (4-3)
Set the position (4-5). This + side position (4-5)
At the output terminal side of the source element (4-1).
In the direction of the element (4-2), the buffer is determined by (1-11).
Coordinates where the buffer does not overlap with existing elements up to the insertion range
(13-1) and (13-2). Next
When the buffer overlaps with the existing element and cannot be arranged (13)
-3) is the 1G- side of the opposite side with the wiring (4-3) in between.
Positions (4-6) are likewise duplicated for buffers
Find coordinates that do not match. Next, the buffer is
Find non-overlapping coordinates and give them to buffer
(13-7). 6. In the above "5", the buffer does not overlap with the existing element
If there is no mark, coordinate position from wiring (4-3)
..., etc., and add 1 (13-6). For example, as shown in FIG.
When the coordinate position is
You will be. Flowchart (13-2) to (13-5)
Repeat until The buffer does not overlap the existing element
Search for a marker and give its coordinates to the buffer (13-
7). 7. Place the buffer at the coordinate position (1-13)
You. Then, for example, as shown in FIG.
Is arranged. 8. Buffer insertion for all wiring that does not meet delay specifications
Is completed (1-15), and all are completed.
The procedure from (1-9) is repeated until the operation is completed. 9. Buffers are placed on all wires that do not meet the delay standard
If wiring is completed, the relayout data (1-1
6) is created and combined with the delay library (1-4).
The delay information (1-17) is created. Ultimately Kritika
Whether or not the Lupass timing standard (1-6) is satisfied
(1-18), and a method for automatic placement and routing of semiconductor devices
To end.

【0031】以上本発明の実施の形態の半導体装置の自
動配置配線方法によれば,許容される最大の遅延値であ
る最大遅延値を示すクリティカルパス・タイミング規格
(1−6)が満たされない配線に,バッファが挿入され
るリストを示す修正ネットリスト(1−8)と,回路上
にどのように半導体回路素子が配置されて配線されるか
を示すデータであるレイアウトデータ(1−3)と,ネ
ットリスト内の回路ブロック特性を示すブロックライブ
ラリ(1−10)とによってクリティカルパス・タイミ
ング規格(1−6)を満たさない前記配線での遅延値の
計算をする(1−9)第一の手順と,バッファが挿入さ
れるべき位置を示す一の半導体素子の出力端からの配線
長を求め,バッファが挿入されることが可能な座標を算
出し,この座標を算出したバッファ挿入範囲においてバ
ッファが既存の素子と重ならない位置に座標を配置する
ことが可能かどうかを判断し(1−12),配置するこ
とが可能である場合はその座標にバッファを配置して配
線する(1−13)第二の手順と,バッファが既存の素
子と重ならない位置に座標を配置することが不可能であ
る場合は,バッファが挿入されようとする配線上に半導
体素子を配置する最小単位である1Gを前記バッファ挿
入範囲内に存在する配線の近傍に設定して,この配線近
傍内に挿入されるべきバッファが既存の素子と重ならな
い位置を検索する第三の手順((13−1)〜(13−
6))と,その位置にバッファを配置して配線し,遅延
規格を満たさない全ての配線にバッファを挿入すること
が完了したかどうかを判断し,遅延規格を満たさない全
ての配線に対してバッファを挿入することが終了するま
で第一の手順から手順を繰り返すことによって,遅延規
格を満たさない配線上でバッファを挿入する位置をソー
ス側素子自身の遅延値が配線負荷による遅延値に比較し
て大きくなる範囲の配線長に対して,配置配線すること
ができ,遅延規格を満たす修正をすることができる。ま
た,再度IPO修正を行うことなく,1回の修正で遅延
規格を満たす修正をすることができるため,短いTAT
を実現することが可能になる。
According to the method for automatically placing and routing a semiconductor device according to the embodiment of the present invention, wiring that does not satisfy the critical path timing standard (1-6) indicating the maximum delay value, which is the maximum allowable delay value, is used. A modified netlist (1-8) indicating a list into which a buffer is to be inserted, and layout data (1-3) indicating how semiconductor circuit elements are arranged and wired on a circuit. Calculate the delay value of the wiring that does not satisfy the critical path timing standard (1-6) by using the block library (1-10) indicating the circuit block characteristics in the netlist (1-9) The procedure and the wiring length from the output terminal of one semiconductor device indicating the position where the buffer is to be inserted are determined, and the coordinates at which the buffer can be inserted are calculated. It is determined whether or not coordinates can be arranged at a position where the buffer does not overlap with an existing element in the issued buffer insertion range (1-12). If the coordinates can be arranged, the buffer is arranged at the coordinates. (1-13) If it is not possible to arrange coordinates in a position where the buffer does not overlap the existing element, the semiconductor element is placed on the wiring into which the buffer is to be inserted. A third procedure of setting 1G, which is the minimum unit to be arranged, in the vicinity of a wiring existing in the buffer insertion range and searching for a position where a buffer to be inserted in the vicinity of the wiring does not overlap with an existing element ( (13-1) to (13-
6)), place a buffer at that position and wire it, determine whether or not the buffer has been inserted into all the wires that do not meet the delay standard. By repeating the procedure from the first step until the buffer insertion is completed, the position where the buffer is inserted on the wiring that does not satisfy the delay standard is compared with the delay value of the source-side element itself and the delay value due to the wiring load. Thus, the wiring length can be arranged and wired for the wiring length in a range that is large, and the correction that satisfies the delay standard can be performed. In addition, since a correction that satisfies the delay standard can be made with one correction without having to make another IPO correction, a short TAT
Can be realized.

【0032】第二の実施の形態 本発明における実施の形態の半導体装置の自動配置配線
方法を図6から図8までを参照して説明する。図6は,
本発明における第二の実施の形態による,遅延規格を満
たさない配線にバッファを自動挿入する流れ図である。
図7は,本発明における第二の実施の形態の半導体装置
の自動配置配線方法において,バッファ配置することが
可能な場所を検索する順序を示す図である。図8は,本
発明における第二の実施の形態の半導体装置の自動配置
配線方法において,バッファ配置座標検索・決定を示す
流れ図である。まず,本実施の形態の半導体装置の自動
配置配線方法の手順の概略を示す。 1.ネットリスト(5−1)をもとに配置配線(5−
2)を行い,レイアウトデータ(5−3)を作成する。
つぎに,そのレイアウトデータ(5−3)と遅延ライブ
ラリ(5−4)とによって遅延情報(5−5)を作成す
る。 2.クリティカルパス・タイミング規格(5−6)と遅
延情報(5−5)とによって,遅延規格を満たさない配
線を算出し,遅延規格を満たさない配線にバッファを挿
入するネットリスト修正(5−7)を行い,修正ネット
リスト(5−8)を作成する。 3.ネットリスト内の回路ブロック特性を示すブロック
ライブラリ(5−10)と修正ネットリスト(5−8)
とレイアウトデータ(5−3)とによって,遅延規格を
満たさない配線上のソース素子,バッファの遅延パラメ
ータを抽出(5−9)し,バッファ挿入範囲を算出(5
−11)する。 4.遅延規格を満たさない配線上かつバッファ挿入範囲
において,バッファが既存の素子と重ならない座標に配
置することが可能かどうかを判断(5−12)する。つ
ぎに,バッファが既存の素子と重ならずに配置すること
が可能な座標をバッファの配置座標として与え,配置配
線を行う(5−13)。 5.一方,この配線経路とは別の素子,配線等があり,
バッファと重なり配置できない場合,遅延規格を満たさ
ない配線を挟んだ両側を交互に(5−11)で求めたバ
ッファ挿入範囲で,既存の素子とバッファが重ならない
座標を検索し,そのバッファの配置座標として与え(5
−14),配置配線(5−13)を行う。 6.遅延規格を満たさない全ての配線に,バッファを挿
入することが完了した後(5−15),再レイアウトデ
ータ(5−16)を作成する。 7.その再レイアウトデータ(5−16)と,遅延ライ
ブラリ(5−4)とによって,再遅延情報(5−17)
を作成し,クリティカルパス・タイミング規格(5−
6)を満たしたかどうかを確認する(5−18)手順を
有する。
Second Embodiment An automatic placement and routing method for a semiconductor device according to an embodiment of the present invention will be described with reference to FIGS. FIG.
8 is a flowchart for automatically inserting a buffer into a wiring that does not satisfy a delay standard according to a second embodiment of the present invention.
FIG. 7 is a diagram showing an order of searching for a place where a buffer can be arranged in the automatic placement and routing method for a semiconductor device according to the second embodiment of the present invention. FIG. 8 is a flowchart showing the buffer arrangement coordinate search / determination in the automatic arrangement and wiring method of the semiconductor device according to the second embodiment of the present invention. First, an outline of a procedure of an automatic placement and routing method for a semiconductor device according to the present embodiment will be described. 1. Based on the netlist (5-1), the placement and routing (5-
2) is performed to create layout data (5-3).
Next, delay information (5-5) is created from the layout data (5-3) and the delay library (5-4). 2. Based on the critical path timing standard (5-6) and the delay information (5-5), a wiring that does not satisfy the delay standard is calculated, and a buffer is inserted into the wiring that does not satisfy the delay standard (5-7). To create a modified netlist (5-8). 3. Block library (5-10) and modified netlist (5-8) indicating circuit block characteristics in the netlist
Based on the data and the layout data (5-3), the source device on the wiring that does not satisfy the delay standard and the delay parameter of the buffer are extracted (5-9), and the buffer insertion range is calculated (5-9).
-11). 4. It is determined whether or not the buffer can be arranged at coordinates that do not overlap with the existing elements on the wiring that does not satisfy the delay standard and in the buffer insertion range (5-12). Next, coordinates that allow the buffer to be arranged without overlapping existing elements are given as arrangement coordinates of the buffer, and arrangement and wiring are performed (5-13). 5. On the other hand, there are other elements, wiring, etc.
If it is not possible to place the buffer so as to overlap with the buffer, a search is made for the coordinates at which the buffer does not overlap the existing element in the buffer insertion range obtained in (5-11) alternately on both sides of the wiring that does not satisfy the delay standard, and the buffer is placed. Given as coordinates (5
-14), and place and route (5-13). 6. After the buffer is completely inserted into all the wirings that do not satisfy the delay standard (5-15), the relayout data (5-16) is created. 7. The re-layout data (5-16) and the delay library (5-4) form the re-delay information (5-17).
And create a critical path timing standard (5-
There is a procedure (5-18) of confirming whether 6) is satisfied.

【0033】本実施の形態の半導体装置の自動配置配線
方法において,バッファを挿入する位置を算出する手順
を図2,図7及び図8を参照して説明する。 1から2までは本発明の第一の実施の形態の半導体装置
の自動配置配線方法において,バッファを挿入する位置
を算出する手順と同様である。本実施の形態では第一の
実施の形態の3の手順が変更になる。 3.第一の実施の形態のバッファを挿入する位置を算出
する手順「2」において図2に示す様に既存素子(2−
5)とバッファ(2−6)とが重なり,バッファを挿入
することができない場合図7及び図8に示す様にソース
素子出力からでかつ配線上の配線長l1以内で,配線の
両側交互に既存素子と重ならないバッファが挿入される
座標を検索し,バッファが挿入される座標を算出して配
置配線する。
The procedure for calculating the buffer insertion position in the semiconductor device automatic placement and routing method according to the present embodiment will be described with reference to FIGS. 2, 7 and 8. Steps 1 to 2 are the same as the procedure for calculating the buffer insertion position in the semiconductor device automatic placement and routing method according to the first embodiment of the present invention. In the present embodiment, the third procedure of the first embodiment is changed. 3. In the procedure "2" for calculating the buffer insertion position according to the first embodiment, as shown in FIG.
5) When the buffer (2-6) overlaps and the buffer cannot be inserted, as shown in FIGS. 7 and 8, alternately on both sides of the wiring from the source element output and within the wiring length l1 on the wiring The coordinates at which a buffer that does not overlap with the existing element are inserted are searched for, the coordinates at which the buffer is inserted are calculated, and the wiring is performed.

【0034】実施の形態の半導体装置の自動配置配線方
法の手順を図6から図8までを用い詳細に説明する。ま
た,上記「3」の手順を下記「6」においてより詳細に
説明する。手順1から手順4までは本発明による第一の
実施の形態と同様である。 5.既存の素子と重なる場合について図8の流れ図と図
7とを参照して説明する(図8は,図6(5−14)の
詳細を示す)。バッファを挿入しようとする配線(6−
3)のソース素子の出力配線座標から,バッファを挿入
しようとする配線(6−3)上を1Gロード側の位置
で,その配線から1G(配線を軸とし配線上のある点を
原点とした直交直線座標xyのx座標又はy座標の一方
で配線(6−3)と直角方向)+側(6−5)の座標で
バッファが既存の素子と重ならないか検索する(14−
2)。バッファが既存の素子と重り配置できない場合
(14−3)は,配線(6−3)をはさみ反対側,1G
−側(6−6)の座標でバッファが既存の素子と重なら
ない座標を検索する(14−4)。これでもバッファが
既存の素子と重り配置できない場合,配線(6−3)上
を更に1Gだけロード素子側の位置でその配線(6ー
3)から1G+側の座標でバッファが既存の素子と重な
らないか,配線(6−3)をはさみ反対側,1G−側の
座標にバッファが既存の素子と重ならないかどうかを判
定する。(14−1)から(14−6)までをくりかえ
し(5−11)で求めたバッファを挿入すべき範囲ま
で,バッファと既存の素子とが重ならない座標を検索し
バッファにその座標を与える(14−8)。 6.上記「5」でバッファが既存の素子と重り配置でき
ない場合,配線(6−3)から更に1G+側の座標(6
−9)及び配線(6−3)をはさみ反対,−側の座標
(6−10)についてバッファが既存の素子と重ならな
い座標を検索し,バッファにその座標を与える(14−
8)。 7.遅延規格を満たしていない全ての配線に,バッファ
挿入が完了したかどうか(5−15)を判断し,全て終
了するまで(5−9)からの手順を繰り返す。 8.遅延規格を満たさない全ての配線にバッファが配置
配線できたら,再レイアウトデータ(5−16)を作成
し,遅延ライブラリ(5−4)とあわせ,再遅延情報
(5−17)を作成する。最終的にクリティカルパス・
タイミング規格(5−6)を満たしたかどうかを確認し
(5−18),半導体装置の自動配置配線方法を終了す
る。
The procedure of the automatic placement and routing method of the semiconductor device according to the embodiment will be described in detail with reference to FIGS. The procedure of the above "3" will be described in more detail in the following "6". Procedure 1 to procedure 4 are the same as in the first embodiment according to the present invention. 5. The case of overlapping with an existing element will be described with reference to the flowchart of FIG. 8 and FIG. 7 (FIG. 8 shows details of FIG. 6 (5-14)). Wiring to insert buffer (6-
From the output wiring coordinates of the source element in 3), the wiring (6-3) into which the buffer is to be inserted is a position on the 1G load side, and the wiring is 1G (the wiring is the axis and a point on the wiring is the origin. One of the x-coordinates or y-coordinates of the orthogonal linear coordinates xy, a search is made to determine whether or not the buffer overlaps with an existing element at the coordinates on the side perpendicular to the wiring (6-3) + (6-5) (14-
2). If the buffer cannot be overlapped with the existing element (14-3), the wiring (6-3) is inserted, and the opposite side, 1G
The coordinates on the negative side (6-6) where the buffer does not overlap with the existing element are searched (14-4). If the buffer still cannot overlap with the existing element, the buffer overlaps with the existing element on the wiring (6-3) by a further 1 G at the position on the load element side and 1 G + side from the wiring (6-3). It is determined whether the buffer does not overlap the existing element at the coordinates on the opposite side, 1G- side, with the wiring (6-3) interposed. Repeat (14-1) to (14-6) to find the coordinates where the buffer and the existing element do not overlap, and give the coordinates to the buffer up to the range to insert the buffer obtained in (5-11) ( 14-8). 6. If the buffer cannot overlap with the existing element in the above “5”, the coordinates (6) on the 1G + side from the wiring (6-3) are further added.
-9) and the wiring (6-3) are sandwiched, and the coordinates (6-10) on the opposite side are searched for coordinates where the buffer does not overlap the existing element, and the coordinates are given to the buffer (14-).
8). 7. It is determined whether or not the buffer insertion has been completed for all the wirings that do not satisfy the delay standard (5-15), and the procedure from (5-9) is repeated until all the wiring is completed. 8. When the buffers can be arranged and routed on all the wires that do not satisfy the delay standard, re-layout data (5-16) is created, and re-delay information (5-17) is created along with the delay library (5-4). Finally the critical path
It is confirmed whether the timing standard (5-6) is satisfied (5-18), and the automatic placement and routing method of the semiconductor device is completed.

【0035】以上本発明の実施の形態の半導体装置の自
動配置配線方法によれば,n(nは自然数を示す)を1
として,バッファ挿入範囲内の配線(6−3)上におい
てバッファを挿入することが可能な座標を検索して,バ
ッファを挿入することが可能な座標が有った場合にはこ
の手順を終了してほかの遅延規格を満たさない配線を検
索し,バッファを挿入することが可能な座標がない場合
にはバッファ挿入範囲内の一端に検索開始位置を設定し
てつぎの第二手順に進む第一手順(14−1)と,バッ
ファを挿入することが可能な座標が有った場合にはこの
手順を終了してほかの遅延規格を満たさない配線を検索
し,バッファを挿入することが可能な座標がない場合に
は,配線から+nG離れる位置(6−5)(配線から離
れる一方の向きをプラス(+)方向とする)においてバ
ッファを挿入することが可能な座標を検索する第二手順
(14−2)と,バッファを挿入することが可能な座標
が有った場合にはこの手順を終了してほかの遅延規格を
満たさない配線を検索し(14−3),バッファを挿入
することが可能な座標がない場合には,配線から−nG
離れる位置(6−6)(配線から離れる他方の向き,す
なわち+方向と逆の向きをマイナス(−)方向とする)
においてバッファを挿入することが可能な座標を検索す
る第三手順(14−4)と,バッファを挿入することが
可能な座標が有った場合にはこの手順を終了してほかの
遅延規格を満たさない配線を検索し(14−5),検索
している領域にバッファを挿入することが可能な座標が
ない場合には,バッファ挿入範囲内において配線に平行
に1Gだけ移動して第二手順に戻り(14−6),配線
に平行に1Gだけ移動するとバッファ挿入範囲から逸脱
する場合は次の第五手順に進む第四手順((14−
5),(14−6))と,nをn+1としてバッファ挿
入範囲内の一端に検索開始位置を設定して第二手順に戻
る第五手順(14−7)と,を設定することによって,
バッファ挿入範囲内の全ての領域に対し,既存の素子と
重ならない位置の座標をくまなく検索することが可能に
なり,バッファを配置して配線することによって,遅延
規格を満たす修正をすることができる。また,再度IP
O修正を行うことなく,1回の修正で遅延規格を満たす
修正をすることができるため,短いTATを実現するこ
とが可能になる。
According to the semiconductor device automatic placement and routing method according to the embodiment of the present invention, n (n is a natural number) is set to 1
As a result, a search is made for coordinates at which a buffer can be inserted on the wiring (6-3) within the buffer insertion range, and if there are coordinates at which a buffer can be inserted, this procedure is terminated. Search for wiring that does not meet other delay standards, and if there are no coordinates where a buffer can be inserted, set the search start position at one end within the buffer insertion range and proceed to the next second procedure. Step (14-1), and if there is a coordinate at which a buffer can be inserted, the procedure is terminated to search for a wiring that does not satisfy another delay standard, and a buffer can be inserted. If there is no coordinate, a second procedure for searching for a coordinate at which a buffer can be inserted at a position (6-5) away from the wiring by + nG (one direction away from the wiring is a plus (+) direction) ( 14-2), If there is a coordinate at which a buffer can be inserted, this procedure is terminated and another wiring that does not satisfy the delay standard is searched (14-3), and there is no coordinate at which a buffer can be inserted. -NG from wiring
Separated position (6-6) (the other direction away from the wiring, ie, the direction opposite to the + direction is the minus (-) direction)
In (3), a third procedure (14-4) for searching for coordinates at which a buffer can be inserted, and if there is a coordinate at which a buffer can be inserted, this procedure is terminated and another delay standard is set. A search is made for a wire that does not satisfy the condition (14-5). If there is no coordinate at which a buffer can be inserted in the searched area, the wire is moved by 1 G parallel to the wire within the buffer insertion range and the second hand is moved. Returning to the order (14-6), if moving by 1 G in parallel with the wiring deviates from the buffer insertion range, the fourth procedure proceeds to the next fifth procedure ((14-6).
5), (14-6)) and a fifth procedure (14-7) in which n is set to n + 1, a search start position is set at one end in the buffer insertion range, and the procedure returns to the second procedure.
For all areas within the buffer insertion range, it is possible to search all over the coordinates of positions that do not overlap with existing elements, and by arranging and wiring buffers, it is possible to correct delay specifications it can. In addition, IP
Since a correction that satisfies the delay standard can be performed by one correction without performing the O correction, a short TAT can be realized.

【0036】[0036]

【発明の効果】以上により本発明の半導体装置の自動配
置配線方法では,バッファ挿入範囲内の全ての領域に対
し,既存の素子と重ならない位置の座標をくまなく検索
することが可能になり,バッファを配置して配線するこ
とによって,遅延規格を満たす修正をすることができ
る。また,再度IPO修正を行うことなく,1回の修正
で遅延規格を満たす修正をすることができるため,短い
TATを実現することが可能になる。
As described above, in the automatic placement and routing method of the semiconductor device according to the present invention, it becomes possible to search all the areas within the buffer insertion range for coordinates of positions that do not overlap existing elements. By arranging and wiring the buffer, it is possible to make a correction satisfying the delay standard. In addition, since a correction that satisfies the delay standard can be performed with one correction without performing the IPO correction again, a short TAT can be realized.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明における第一の実施の形態の半導体装
置の自動配置配線方法の流れ図である。
FIG. 1 is a flowchart of an automatic placement and routing method for a semiconductor device according to a first embodiment of the present invention.

【図2】 本発明における第一の実施の形態の半導体装
置の自動配置配線方法において,特定した範囲にバッフ
ァを配置し既存の素子と重なる状態を示す図である。
FIG. 2 is a diagram showing a state in which a buffer is arranged in a specified range and overlaps an existing element in the automatic placement and routing method for a semiconductor device according to the first embodiment of the present invention.

【図3】 本発明における第一の実施の形態の半導体装
置の自動配置配線方法において,特定した範囲近傍にバ
ッファを配置することが可能な場所を検索し配置した状
態を示す図である。
FIG. 3 is a diagram showing a state in which a place where a buffer can be arranged near a specified range is searched and arranged in the automatic placement and routing method for a semiconductor device according to the first embodiment of the present invention;

【図4】 本発明における第一の実施の形態の半導体装
置の自動配置配線方法において,バッファ配置すること
が可能な場所を検索する順序を示す図である。
FIG. 4 is a diagram illustrating an order of searching for a place where a buffer can be arranged in the automatic placement and routing method for a semiconductor device according to the first embodiment of the present invention;

【図5】 本発明における第一の実施の形態の半導体装
置の自動配置配線方法において,バッファ配置座標検索
・決定を示す流れ図である。
FIG. 5 is a flowchart showing a buffer arrangement coordinate search / determination in the semiconductor device automatic arrangement and wiring method according to the first embodiment of the present invention;

【図6】 本発明における第二の実施の形態の半導体装
置の自動配置配線方法の流れ図である。
FIG. 6 is a flowchart of an automatic placement and routing method for a semiconductor device according to a second embodiment of the present invention.

【図7】 本発明における第二の実施の形態の半導体装
置の自動配置配線方法において,バッファ配置すること
が可能な場所を検索する順序を示す図である。
FIG. 7 is a diagram showing an order of searching for a place where a buffer can be arranged in the automatic placement and routing method for a semiconductor device according to the second embodiment of the present invention.

【図8】 本発明における第二の実施の形態の半導体装
置の自動配置配線方法において,バッファ配置座標検索
・決定を示す流れ図である。
FIG. 8 is a flowchart showing a buffer arrangement coordinate search / determination in the semiconductor device automatic arrangement and wiring method according to the second embodiment of the present invention.

【図9】 従来の半導体装置の自動配置配線方法におい
て,遅延規格を満たさない配線のある場合における回路
図を示す。
FIG. 9 shows a circuit diagram in a case where there is a wiring that does not satisfy a delay standard in a conventional method of automatically placing and routing a semiconductor device.

【図10】 従来の半導体装置の自動配置配線方法にお
いて,バッファを位置Aに挿入した回路図を示す。
FIG. 10 is a circuit diagram in which a buffer is inserted at a position A in the conventional method of automatically placing and routing a semiconductor device.

【図11】 従来の半導体装置の自動配置配線方法にお
いて,バッファを位置Bに挿入した回路図を示す。
FIG. 11 is a circuit diagram in which a buffer is inserted at a position B in the conventional method of automatically placing and routing a semiconductor device.

【図12】 従来の半導体装置の自動配置配線方法にお
いて,バッファ挿入位置の違いによる遅延差を示す図で
ある。
FIG. 12 is a diagram showing a delay difference due to a difference in a buffer insertion position in a conventional automatic placement and routing method for a semiconductor device.

【図13】 従来の半導体装置の自動配置配線方法にお
いて,ソース素子及びバッファのドライブ特性を示す図
である。
FIG. 13 is a diagram showing drive characteristics of a source element and a buffer in a conventional automatic placement and routing method for a semiconductor device.

【図14】 従来の半導体装置の自動配置配線方法の流
れ図である。
FIG. 14 is a flowchart of a conventional automatic placement and routing method for a semiconductor device.

【符号の説明】[Explanation of symbols]

(2−1)(3−1)(4−1)(6−1)・・・ソー
ス素子 (2−2)(3−2)(4−2)(6−2)・・・ロー
ド素子 (2−3)(3−3)(4−3)(6−3)・・・遅延
規格を満たさない配線経路 (2−4)(3−4)(4−4)(6−4)・・・算出
したバッファを挿入する範囲 (2−5)(3−5)・・・配置された既存素子 (2−6)・・・挿入したいバッファ(他の既存素子と
重なった位置) (3−6)・・・本発明により配置したバッファ (4−5)〜(4−10)・・・本発明の実施例による
バッファを挿入する位置を検索する順序 (6−5)〜(6−10)・・・本発明の実施例2によ
るバッファ挿入する位置を検索する順序 (7−1)(8−1)(9−1)・・・ソース素子F/
F−1 (7−2)(8−2)(9−2)・・・ロード素子F/
F−2 (7−3)・・・遅延規格を満たさない配線経路 (8−3)(9−3)・・・バッファ (8−4)(9−4)・・・ソース素子からバッファま
での配線経路 (8−5)(9−5)・・・バッファからロード素子ま
での配線経路 (10−1)・・・図9に示すバッファを挿入する前の
遅延特性 (10−2)・・・図10に示すバッファを位置Aに挿
入した場合の遅延特性 (10−3)・・・図11に示すバッファを位置Bに挿
入した場合の遅延特性 (11−1)・・・ソース素子のドライブ特性 (11−2)・・・バッファのドライブ特性
(2-1) (3-1) (4-1) (6-1) ... source element (2-2) (3-2) (4-2) (6-2) ... load element (2-3) (3-3) (4-3) (6-3) ... wiring route that does not satisfy the delay standard (2-4) (3-4) (4-4) (6-4) ... Calculated buffer insertion range (2-5) (3-5)... Arranged existing element (2-6)... Buffer to be inserted (position overlapping other existing elements) ( 3-6)... Buffers arranged according to the present invention (4-5) to (4-10)... Order in which to search for a buffer insertion position according to the embodiment of the present invention (6-5) to (6) −10) Order of searching for a buffer insertion position according to the second embodiment of the present invention (7-1) (8-1) (9-1) ... source element F /
F-1 (7-2) (8-2) (9-2) ... load element F /
F-2 (7-3): wiring route that does not satisfy the delay standard (8-3) (9-3) ... buffer (8-4) (9-4) ... from the source element to the buffer (8-5) (9-5) ... wiring path from buffer to load element (10-1) ... delay characteristic before inserting buffer shown in Fig. 9 (10-2) ..Delay characteristics when buffer shown in FIG. 10 is inserted at position A (10-3) ... Delay characteristics when buffer shown in FIG. 11 is inserted at position B (11-1) ... Source element (11-2) ・ ・ ・ Drive characteristics of buffer

───────────────────────────────────────────────────── フロントページの続き (72)発明者 加藤 秋敏 神奈川県川崎市中原区小杉町一丁目403番 53 日本電気アイシーマイコンシステム株 式会社内 Fターム(参考) 5B046 AA08 BA04 JA01 KA06 5F064 BB26 DD02 DD03 DD14 DD25 EE02 EE03 EE08 EE43 EE47 EE54 HH06 HH12  ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Akitoshi Kato 1-403, Kosugicho, Nakahara-ku, Kawasaki-shi, Kanagawa 53 F-term (reference) in NEC Ic Microcomputer System Co., Ltd. 5B046 AA08 BA04 JA01 KA06 5F064 BB26 DD02 DD03 DD14 DD25 EE02 EE03 EE08 EE43 EE47 EE54 HH06 HH12

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 許容される最大の遅延値である最大遅延
値を示すクリティカルパス・タイミング規格が満たされ
ない配線に,バッファが挿入されるリストを示す修正ネ
ットリストと,回路上にどのように半導体回路素子が配
置されて配線されるかを示すデータであるレイアウトデ
ータと,ネットリスト内の回路ブロック特性を示すブロ
ックライブラリとによってクリティカルパス・タイミン
グ規格を満たさない前記配線での遅延値の計算をする第
一の手順と,バッファが挿入されるべき位置を示す一の
半導体素子の出力端からの配線長を求め,バッファが挿
入されることが可能な座標を算出し,この座標を算出し
た範囲(以下バッファ挿入範囲と称す)においてバッフ
ァが既存の素子と重ならない位置に座標を配置すること
が可能かどうかを判断し,配置することが可能である場
合はその座標にバッファを配置して配線する第二の手順
と,バッファが既存の素子と重ならない位置に座標を配
置することが不可能である場合は,バッファが挿入され
ようとする配線上に半導体素子を配置する最小単位であ
る1格子(以下1Gと称す)を前記バッファ挿入範囲内
に存在する配線の近傍に設定して,この配線近傍内に挿
入されるべきバッファが既存の素子と重ならない位置を
検索する第三の手順と,その位置にバッファを配置して
配線し,遅延規格を満たさない全ての配線にバッファを
挿入することが完了したかどうかを判断し,遅延規格を
満たさない全ての配線に対してバッファを挿入すること
が終了するまで第一の手順から手順を繰り返すことを特
徴とする半導体装置の自動配置配線方法。
1. A modified netlist showing a list in which a buffer is inserted into a wiring that does not satisfy a critical path timing standard indicating a maximum delay value that is an allowable maximum delay value, Calculating a delay value in the wiring that does not satisfy the critical path timing standard by using layout data that is data indicating whether circuit elements are arranged and wired, and a block library that indicates circuit block characteristics in a netlist. In the first procedure, a wiring length from an output end of one semiconductor element indicating a position where a buffer is to be inserted is obtained, coordinates at which a buffer can be inserted are calculated, and a range in which the coordinates are calculated ( It is determined whether or not it is possible to place the coordinates in a position where the buffer does not overlap with the existing elements in the buffer insertion range. The second procedure is to place and route a buffer at that coordinate if it is possible to place it, and if it is not possible to place the coordinate at a position where the buffer does not overlap the existing element One grid (hereinafter referred to as 1G), which is the minimum unit for arranging a semiconductor element on a wiring into which a buffer is to be inserted, is set near a wiring existing in the buffer insertion range, and is set in the vicinity of the wiring. The third step of searching for a position where the buffer to be inserted does not overlap with the existing device, placing the buffer at that position, wiring it, and inserting the buffer into all the wiring that does not meet the delay standard are completed Determining whether or not to insert buffers into all the wirings that do not satisfy the delay standard, and repeating the procedure from the first step until the wiring is completed. .
【請求項2】 配線近傍内のバッファが既存の素子と重
ならない位置を検索する前記第三の手順は,配線から一
方の方向の位置(以下+側の位置と称す)かつ配線に直
角であって配線から所定の長さだけ離れる位置に,バッ
ファが挿入されようとする配線上に半導体素子を配置す
る最小単位である1Gを設定し,前記バッファ挿入範囲
内においてバッファが既存の素子と重ならない位置の座
標をこの所定の位置の配線と平行に検索する第一手順
と,バッファを挿入することが可能な座標が有った場合
にはこの手順を終了してほかの遅延規格を満たさない配
線を検索し,バッファが既存の素子と重なり配置される
ことが不可能な場合は,配線に対して+側の位置とは対
称な領域の位置(以下−側の位置と称す)であって配線
から所定の長さだけ離れる位置に1Gを設定し,前記バ
ッファ挿入範囲内においてバッファが既存の素子と重な
らない位置の座標を所定の位置の配線と平行に検索する
第二手順と,バッファを挿入することが可能な座標が有
った場合にはこの手順を終了してほかの遅延規格を満た
さない配線を検索し,以上の手順によってもバッファが
既存の素子と重なり配置されることが不可能な場合は,
第一及び第二手順において配線から1Gが離れる長さを
長くしてゆき,前記バッファ挿入範囲内でバッファが既
存の素子と重ならない位置の座標を所定の位置の配線と
平行に検索する第三手順と,を設定することを特徴とす
る請求項1に記載の半導体装置の自動配置配線方法。
2. The third step of searching for a position where a buffer in the vicinity of a wiring does not overlap with an existing element is performed in a position in one direction from the wiring (hereinafter, referred to as a + position) and at a right angle to the wiring. 1G, which is the minimum unit for arranging a semiconductor element on a wiring into which a buffer is to be inserted, is set at a position separated from the wiring by a predetermined length, and the buffer does not overlap with an existing element within the buffer insertion range. A first procedure for searching for the coordinates of the position in parallel with the wiring at the predetermined position, and if there is a coordinate at which a buffer can be inserted, the procedure is terminated and wiring that does not satisfy the other delay standards is completed. If it is impossible to place the buffer so that it overlaps with the existing element, the position on the + side with respect to the wiring is a position in a symmetrical region (hereinafter referred to as the-side position) and From a specified length A second procedure of setting 1G to the position to be inserted, and searching for the coordinates of the position where the buffer does not overlap the existing element in the buffer insertion range in parallel with the wiring at the predetermined position, and the coordinates at which the buffer can be inserted If there is a buffer, terminate this procedure and search for wiring that does not meet other delay standards. If the above procedure does not make it possible to place the buffer so that it overlaps the existing elements,
In the first and second procedures, the length at which 1 G is separated from the wiring is increased, and the coordinates of the position where the buffer does not overlap the existing element within the buffer insertion range are searched in parallel with the wiring at the predetermined position. 2. The method according to claim 1, wherein the steps (a) and (b) are set.
【請求項3】 配線近傍内のバッファが既存の素子と重
ならない位置を検索する前記第三の手順は,配線に直角
かつ+側の位置であって配線から所定の長さだけ離れる
位置に,バッファが挿入されようとする配線上に半導体
素子を配置する最小単位である1Gを設定し,前記バッ
ファ挿入範囲内においてバッファが既存の素子と重なら
ない位置の座標を検索する第一手順と,バッファを挿入
することが可能な座標が有った場合にはこの手順を終了
してほかの遅延規格を満たさない配線を検索し,バッフ
ァが既存の素子と重なり配置されることが不可能な場合
は,第一手順で調べた位置とは配線に対して対称な位置
(−側の位置領域内の位置である)に1Gを設定し,前
記バッファ挿入範囲内においてバッファが既存の素子と
重ならない位置の座標を検索する第二手順と,バッファ
を挿入することが可能な座標が有った場合にはこの手順
を終了してほかの遅延規格を満たさない配線を検索し,
以上の手順によってもバッファが既存の素子と重なり配
置されることが不可能な場合は,第一及び第二手順にお
いてバッファが既存の素子と重ならない位置の座標を前
記バッファ挿入範囲内において配線と平行に検索する第
三手順と,バッファを挿入することが可能な座標が有っ
た場合にはこの手順を終了してほかの遅延規格を満たさ
ない配線を検索し,第三手順によってもバッファが既存
の素子と重なり配置されることが不可能な場合は,第一
及び第二手順において配線から1Gが離れる長さを長く
して前記第一及び第二及び第三手順を行う第四手順と,
を設定することを特徴とする請求項1に記載の半導体装
置の自動配置配線方法。
3. The third step of searching for a position where a buffer in the vicinity of a wiring does not overlap with an existing element is performed at a position perpendicular to the wiring and on the + side and separated from the wiring by a predetermined length. A first procedure of setting 1G, which is the minimum unit for arranging a semiconductor element on a wiring into which a buffer is to be inserted, and searching for coordinates of a position where the buffer does not overlap an existing element within the buffer insertion range; If there is a coordinate at which a buffer can be inserted, terminate this procedure and search for wiring that does not meet other delay standards. 1G is set at a position symmetrical with respect to the wiring with respect to the position checked in the first procedure (a position in the position area on the negative side), and a position where the buffer does not overlap with an existing element within the buffer insertion range. Seat The second step of searching for a mark, and if there is a coordinate at which a buffer can be inserted, terminate this step and search for wiring that does not meet other delay standards.
If it is not possible to arrange the buffer so as to overlap with the existing element by the above procedure, the coordinates of the position where the buffer does not overlap with the existing element in the first and second procedures are set as wiring and within the buffer insertion range. If there is a third step to search in parallel, and if there is a coordinate at which a buffer can be inserted, terminate this step and search for wiring that does not meet other delay standards. In the case where it is impossible to overlap with the existing element, it is necessary to extend the length of 1 G away from the wiring in the first and second procedures and to perform the first, second and third procedures. ,
2. The automatic placement and routing method for a semiconductor device according to claim 1, wherein
【請求項4】 配線近傍内のバッファが既存の素子と重
ならない位置を検索する前記第三の手順は,n(nは自
然数を示す)を1として,前記バッファ挿入範囲内の配
線上においてバッファを挿入することが可能な座標を検
索して,バッファを挿入することが可能な座標が有った
場合にはこの手順を終了してほかの遅延規格を満たさな
い配線を検索し,バッファを挿入することが可能な座標
がない場合にはバッファ挿入範囲内の一端に検索開始位
置を設定してつぎの第二手順に進む第一手順と,配線か
ら+nG離れる位置(配線から離れる一方の向きをプラ
ス(+)方向とする)において配線に平行に1Gずつバ
ッファ挿入範囲内を移動してバッファを挿入することが
可能な座標を検索する第二手順と,バッファを挿入する
ことが可能な座標が有った場合にはこの手順を終了して
ほかの遅延規格を満たさない配線を検索し,バッファを
挿入することが可能な座標がない場合には配線から−n
G離れる位置(配線から離れる他方の向き,すなわち+
方向と逆の向きをマイナス(−)方向とする)を配線に
平行に1Gずつバッファ挿入範囲内を移動してバッファ
を挿入することが可能な座標を検索する第三手順と,バ
ッファを挿入することが可能な座標が有った場合にはこ
の手順を終了してほかの遅延規格を満たさない配線を検
索し,バッファを挿入することが可能な座標がない場合
にはnをn+1として第二手順に戻る第四手順と,を設
定することを特徴とする請求項1に記載の半導体装置の
自動配置配線方法。
4. The third procedure for searching for a position where a buffer in the vicinity of a wiring does not overlap an existing element is performed by setting n (n is a natural number) to 1 on a wiring within the buffer insertion range. Search for coordinates where a buffer can be inserted, and if there are coordinates where a buffer can be inserted, terminate this procedure and search for wiring that does not meet other delay standards, and insert a buffer If there are no coordinates that can be performed, a search start position is set at one end in the buffer insertion range, and the first procedure proceeds to the next second procedure, and a position away from the wiring by + nG (one direction away from the wiring is In the plus (+) direction), the second procedure of moving in the buffer insertion range by 1 G in parallel with the wiring and searching for the coordinates where the buffer can be inserted, and the coordinates where the buffer can be inserted are as follows. If there is, terminate this procedure and search for a wire that does not satisfy another delay standard. If there is no coordinate at which a buffer can be inserted, -n
G away position (the other direction away from wiring, ie +
The direction opposite to the direction is referred to as a minus (-) direction). The third procedure of searching the coordinates where the buffer can be inserted by moving in the buffer insertion range by 1 G in parallel with the wiring, and inserting the buffer. If there is a coordinate that can be inserted, the procedure is terminated and a wiring that does not satisfy another delay standard is searched. If there is no coordinate that can insert a buffer, n is set to n + 1 and the second 2. The method according to claim 1, further comprising: setting a fourth step of returning to the procedure.
【請求項5】 配線近傍内のバッファが既存の素子と重
ならない位置を検索する前記第三の手順は,n(nは自
然数を示す)を1として,前記バッファ挿入範囲内の配
線上においてバッファを挿入することが可能な座標を検
索して,バッファを挿入することが可能な座標が有った
場合にはこの手順を終了してほかの遅延規格を満たさな
い配線を検索し,バッファを挿入することが可能な座標
がない場合にはバッファ挿入範囲内の一端に検索開始位
置を設定してつぎの第二手順に進む第一手順と,バッフ
ァを挿入することが可能な座標が有った場合にはこの手
順を終了してほかの遅延規格を満たさない配線を検索
し,バッファを挿入することが可能な座標がない場合に
は,配線から+nG離れる位置(配線から離れる一方の
向きをプラス(+)方向とする)においてバッファを挿
入することが可能な座標を検索する第二手順と,バッフ
ァを挿入することが可能な座標が有った場合にはこの手
順を終了してほかの遅延規格を満たさない配線を検索
し,バッファを挿入することが可能な座標がない場合に
は,配線から−nG離れる位置(配線から離れる他方の
向き,すなわち+方向と逆の向きをマイナス(−)方向
とする)においてバッファを挿入することが可能な座標
を検索する第三手順と,バッファを挿入することが可能
な座標が有った場合にはこの手順を終了してほかの遅延
規格を満たさない配線を検索し,検索している領域にバ
ッファを挿入することが可能な座標がない場合には,バ
ッファ挿入範囲内において配線に平行に1Gだけ移動し
て第二手順に戻り,配線に平行に1Gだけ移動するとバ
ッファ挿入範囲から逸脱する場合は次の第五手順に進む
第四手順と,nをn+1としてバッファ挿入範囲内の一
端に検索開始位置を設定して第二手順に戻る第五手順
と,を設定することを特徴とする請求項1に記載の半導
体装置の自動配置配線方法。
5. The third step of searching for a position where a buffer in the vicinity of a wiring does not overlap with an existing element is performed by setting n (n is a natural number) to 1 on a wiring within the buffer insertion range. Search for coordinates where a buffer can be inserted, and if there are coordinates where a buffer can be inserted, terminate this procedure and search for wiring that does not meet other delay standards, and insert a buffer If there are no coordinates that can be used, there is a first procedure where the search start position is set at one end in the buffer insertion range and the procedure proceeds to the next second procedure, and there are coordinates where a buffer can be inserted. In this case, the procedure is terminated to search for a wire that does not satisfy another delay standard. If there is no coordinate at which a buffer can be inserted, the position away from the wire by + nG (one direction away from the wire is added. (+) Person The second procedure for searching for coordinates where a buffer can be inserted, and if there is a coordinate where a buffer can be inserted, this procedure is terminated and another delay standard is satisfied. If there are no wires that can be inserted into the buffer and there are no coordinates at which a buffer can be inserted, the position away from the wires by -nG (the other direction away from the wires, that is, the direction opposite to the + direction is the minus (-) direction. In step 3), search for coordinates at which a buffer can be inserted, and if there are coordinates at which a buffer can be inserted, terminate this procedure and replace wiring that does not meet other delay standards. If there is no coordinate at which the buffer can be inserted in the searched area, move by 1 G parallel to the wiring within the buffer insertion range, return to the second procedure, and move 1 G parallel to the wiring. A fourth procedure to proceed to the next fifth procedure when the movement deviates from the buffer insertion range, a fifth procedure to set a search start position at one end within the buffer insertion range and set n to n + 1, and return to the second procedure; 2. The automatic placement and routing method for a semiconductor device according to claim 1, wherein
【請求項6】 配線近傍内のバッファが既存の素子と重
ならない位置を検索する順序は,前記バッファ挿入範囲
内の配線上の一端から他端までバッファを挿入すること
が可能な座標を検索する第一過程と,配線によって二に
分断される領域の一方の領域において,配線から所定の
一定距離だけ離れた位置でバッファ挿入範囲内の一端か
ら他端までバッファを挿入することが可能な座標を検索
する第二過程と,配線によって二に分断される領域の他
方の領域において,配線から所定の一定距離だけ離れた
位置でバッファ挿入範囲内の一端から他端までバッファ
を挿入することが可能な座標を検索する第三過程と,を
設定して,バッファを挿入することが可能な座標が見つ
かるまで第二過程及び第三過程において配線からの所定
の一定距離を徐々に長くして再び第二過程,第三過程に
進むことを特徴とする請求項1に記載の半導体装置の自
動配置配線方法。
6. The order of searching for a position where a buffer in the vicinity of a wiring does not overlap an existing element is to search for coordinates at which a buffer can be inserted from one end to the other end of the wiring within the buffer insertion range. In the first step, in one of the areas divided into two by the wiring, coordinates at which a buffer can be inserted from one end to the other end within the buffer insertion range at a position separated by a predetermined fixed distance from the wiring are determined. It is possible to insert a buffer from one end to the other end within the buffer insertion range at a position separated by a predetermined fixed distance from the wiring in the second step of searching and in the other area of the area divided into two by the wiring And a third step of searching for coordinates, and gradually increasing a predetermined distance from the wiring in the second and third steps until coordinates capable of inserting a buffer are found. 2. The method according to claim 1, wherein the process is lengthened and the process proceeds to the second and third steps again.
【請求項7】 配線近傍内のバッファが既存の素子と重
ならない位置を検索する順序は,前記バッファ挿入範囲
内の配線上の一端から他端までバッファを挿入すること
が可能な座標を検索する第一過程と,配線によって二に
分断される領域の一方の領域の一端において,配線から
所定の一定距離だけ離れた位置のバッファ挿入範囲内に
おいてバッファを挿入することが可能な座標を検索する
第二過程と,配線によって二に分断される領域の他方の
領域の一端において,配線から所定の一定距離だけ離れ
た位置のバッファ挿入範囲内においてバッファを挿入す
ることが可能な座標を検索する第三過程と,第二過程及
び第三過程においてバッファ挿入範囲内を一端から他端
方向へ所定の距離移動した位置において,再び第二過
程,第三過程に進む第四過程と,を設定して,バッファ
挿入範囲内でバッファを挿入することが可能な座標が見
つかるまで第四過程において配線からの所定の一定距離
を徐々に長くして再び第二過程,第三過程,第四過程に
進むことを特徴とする請求項1に記載の半導体装置の自
動配置配線方法。
7. The order of searching for a position where a buffer in the vicinity of a wiring does not overlap an existing element is to search for coordinates at which a buffer can be inserted from one end to the other end of the wiring within the buffer insertion range. A first step of searching for a coordinate at which a buffer can be inserted in a buffer insertion range at a position separated by a predetermined fixed distance from the wiring at one end of one of the areas divided into two by the wiring; The second step is to search for a coordinate at which a buffer can be inserted in a buffer insertion range at a position separated by a predetermined distance from the wiring at one end of the other area of the area divided into two by the wiring. In the second step and the third step, the second step and the third step are performed again at a position moved from the one end to the other end by a predetermined distance within the buffer insertion range. In the fourth process, a predetermined constant distance from the wiring is gradually increased until coordinates that can insert a buffer within the buffer insertion range are set, and the second process and the third process are performed again. 2. The method according to claim 1, further comprising the steps of:
【請求項8】 一の半導体素子の出力端から別の半導体
素子の入力端までの配線長(l),一の半導体素子の出
力端から挿入したバッファ入力までの配線長(l1),
単位配線長あたりの寄生容量(Co),単位配線長あた
りの配線抵抗(Ro),一の半導体素子自身の遅延値
(tld1),一の半導体素子の出力抵抗(R1),バ
ッファの出力抵抗(R2)バッファの入力容量(Ci
n),別の半導体素子の入力容量(Cld),バッファ
自身の遅延値(tld2)とした場合,バッファを挿入
後の遅延値tPDが遅延規格tPD0よりも小さいとい
う条件である tPD0>tPD=tld1+R1×(Co×l1/2
+Cin)+Ro×Co×(l1)/2+tld2+
R2×{Co×(l−l1)/2+Cld}+Ro×C
o×(l−l1)/2 の条件によって,バッファを挿入することができる限界
長である配線長l1を求めることを特徴とする請求項1
から請求項7のいずれか一に記載の半導体装置の自動配
置配線方法。
8. A wiring length (l) from an output terminal of one semiconductor device to an input terminal of another semiconductor device, a wiring length (11) from an output terminal of one semiconductor device to an inserted buffer input,
Parasitic capacitance per unit wiring length (Co), wiring resistance per unit wiring length (Ro), delay value of one semiconductor element itself (tld1), output resistance of one semiconductor element (R1), output resistance of buffer ( R2) Input capacity of buffer (Ci
n), the input capacitance (Cld) of another semiconductor element, and the delay value (tld2) of the buffer itself, a condition that the delay value tPD after inserting the buffer is smaller than the delay standard tPD0. tPD0> tPD = tld1 + R1 × (Co × l1 / 2
+ Cin) + Ro × Co × (l1) 2/2 + tld2 +
R2 × {Co × (l-11) / 2 + Cld} + Ro × C
claim by o × (l-l1) 2 /2 conditions, and obtains the wiring length l1 is a length limit that can be inserted buffer 1
8. The automatic placement and routing method for a semiconductor device according to claim 1.
JP35243299A 1999-12-10 1999-12-10 Automatic layout and wiring method for semiconductor device Pending JP2001168199A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP35243299A JP2001168199A (en) 1999-12-10 1999-12-10 Automatic layout and wiring method for semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP35243299A JP2001168199A (en) 1999-12-10 1999-12-10 Automatic layout and wiring method for semiconductor device

Publications (1)

Publication Number Publication Date
JP2001168199A true JP2001168199A (en) 2001-06-22

Family

ID=18424046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP35243299A Pending JP2001168199A (en) 1999-12-10 1999-12-10 Automatic layout and wiring method for semiconductor device

Country Status (1)

Country Link
JP (1) JP2001168199A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257373A (en) * 2006-03-23 2007-10-04 Fujitsu Ltd Automatic arrangement method, device and program
JP2010146047A (en) * 2008-12-16 2010-07-01 Renesas Electronics Corp Buffer circuit insertion method, buffer circuit insertion device, and buffer circuit insertion program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007257373A (en) * 2006-03-23 2007-10-04 Fujitsu Ltd Automatic arrangement method, device and program
JP2010146047A (en) * 2008-12-16 2010-07-01 Renesas Electronics Corp Buffer circuit insertion method, buffer circuit insertion device, and buffer circuit insertion program

Similar Documents

Publication Publication Date Title
US20020010901A1 (en) Method and computer program product for estimating wire loads and method and computer program product for inserting repeater cells
US7143385B2 (en) Wiring design method and system for electronic wiring boards
WO2006136845A2 (en) Integrated circuit routing and compaction
US6622294B2 (en) Adaptive power routing and shield sharing to reduce shield count
JPH0997842A (en) Layout for logic circuit
JP2001168199A (en) Automatic layout and wiring method for semiconductor device
JP2856121B2 (en) Method and apparatus for optimizing circuit delay
JP2003158186A (en) Clock wiring structure and adjusting method for clock transmission delay time
US9904754B2 (en) Layout of interconnect lines in integrated circuits
JP4400428B2 (en) Semiconductor integrated circuit design method, design apparatus and program
JP2001267429A (en) Layout design device and method
US7441208B1 (en) Methods for designing integrated circuits
US20030233627A1 (en) Method of forming tree structure type circuit, and computer product
US6845346B1 (en) Iterative method of parasitics estimation for integrated circuit designs
TWI244583B (en) Optimization method of clock network capacitance on an integrated circuit
US20040153987A1 (en) Method and system for connecting computer-generated rectangles
US9767242B1 (en) Filling vacant areas of an integrated circuit design
JP2685566B2 (en) Wiring design method for semiconductor integrated circuit device
JP2004153011A (en) Layout design apparatus and layout designing method
JP2001290855A (en) Delay calculating method for hierarchical design
JP2508227B2 (en) Method for determining general wiring route of semiconductor integrated circuit
JP2000172736A (en) Integrated circuit layout designing device, integrated circuit layout designing method and storage medium with its control program recorded therein
JP2972713B2 (en) Semiconductor integrated circuit manufacturing apparatus, semiconductor integrated circuit wiring method, and recording medium
JP3420176B2 (en) Automatic placement and routing method for semiconductor devices
JP2853660B2 (en) Wiring processing equipment