JP2002197140A - Method of forming macro-block library for logical simulation and layout designing method - Google Patents

Method of forming macro-block library for logical simulation and layout designing method

Info

Publication number
JP2002197140A
JP2002197140A JP2000394797A JP2000394797A JP2002197140A JP 2002197140 A JP2002197140 A JP 2002197140A JP 2000394797 A JP2000394797 A JP 2000394797A JP 2000394797 A JP2000394797 A JP 2000394797A JP 2002197140 A JP2002197140 A JP 2002197140A
Authority
JP
Japan
Prior art keywords
circuit
terminal
macro
delay
macro block
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
JP2000394797A
Other languages
Japanese (ja)
Inventor
Toshimi Motooka
俊美 元岡
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.)
Renesas Micro Systems Co Ltd
Original Assignee
Renesas Micro 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 Renesas Micro Systems Co Ltd filed Critical Renesas Micro Systems Co Ltd
Priority to JP2000394797A priority Critical patent/JP2002197140A/en
Publication of JP2002197140A publication Critical patent/JP2002197140A/en
Pending legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a method of forming the macro-block library for logical simulation capable of setting a proper delay time not including the excess margin, to a macro-block wherein a clock control circuit is inserted between a macro-clock input terminal and a synchronizing output circuit, and to provide a layout designing method capable of easily eliminating the timing error, and remarkably shortening a time for designing. SOLUTION: The circuit connecting information from which the clock control circuit and the circuit connecting information connected to the circuit are eliminated, is formed for the macro-block wherein the clock control circuit is connected between the macro-clock input terminal and a clock input terminal of the synchronizing output circuit, the clock control circuit is formed outside of the macro-block, and the equivalent circuit connecting information equivalent to the circuit connecting information of the original macro-block is produced to verify the timing of an integrated circuit.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は論理シミュレーショ
ン用マクロブロックライブラリの作成方法及びその論理
シミュレーション用マクロブロックライブラリを用いた
レイアウト設計方法に関し、特にマクロブロックを用い
てタイミングドリブンレイアウト方法により半導体チッ
プを設計する場合の論理シミュレーション用マクロブロ
ックライブラリの作成方法及びその論理シミュレーショ
ン用マクロブロックライブラリを用いたレイアウト設計
方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for creating a macroblock library for logic simulation and a layout design method using the macroblock library for logic simulation, and more particularly to designing a semiconductor chip by a timing-driven layout method using macroblocks. The present invention relates to a method of creating a logic simulation macro block library and a layout design method using the logic simulation macro block library.

【0002】[0002]

【従来の技術】最近LSIの回路規模が大規模化し半導
体チップのチップ面積が急速に増大してきている。この
ため、半導体チップ上の配線で数mmを越えるような長
配線長の配線割合が増加し、配線抵抗及び配線容量が増
大して配線遅延が大きくなってきている。一方、LSI
の動作速度が高速化してきており、LSIの動作速度に
及ぼす配線遅延の影響が深刻化している。
2. Description of the Related Art Recently, the circuit scale of an LSI has become larger and the chip area of a semiconductor chip has been rapidly increasing. For this reason, the ratio of wiring having a long wiring length exceeding several mm in the wiring on the semiconductor chip is increasing, the wiring resistance and the wiring capacitance are increasing, and the wiring delay is increasing. On the other hand, LSI
Has been increasing, and the influence of wiring delay on the operating speed of LSI has become more serious.

【0003】また回路規模の増大と回路の複雑さを反映
して、回路設計終了後に行う仮想的なレイアウトから算
出する配線遅延と、最終的なレイアウトから算出する配
線遅延との差が大きくなり、回路設計終了後の仮想的な
レイアウトから算出した配線遅延を用いて行うタイミン
グ検証の精度が著しく悪くなっている。このため、従来
のレイアウト設計方法では、LSIのタイミングを満足
することが困難となってきている。
In addition, reflecting the increase in circuit scale and the complexity of the circuit, the difference between the wiring delay calculated from the virtual layout performed after the circuit design is completed and the wiring delay calculated from the final layout increases. The accuracy of the timing verification performed using the wiring delay calculated from the virtual layout after the circuit design has been remarkably deteriorated. For this reason, it is becoming difficult to satisfy the timing of the LSI in the conventional layout design method.

【0004】従って最近のLSIのレイアウト設計で
は、タイミングを補償しながらレイアウト設計を進める
ことが極めて重要となってきている。タイミングの補償
をしながらレイアウトを行う設計方法として、TDL
(Timing DrivenLayout)設計方法
が知られており、このTDL設計方法は、回路ブロック
の出力端子と他の回路ブロックの入力端子間の遅延時間
の制約や複数の回路ブロックの入出力端子を結ぶパスの
遅延時間の制約を与え、与えられた遅延時間の制約以内
に配置配線を行うレイアウト設計方法である。
Therefore, in recent LSI layout design, it is extremely important to proceed with the layout design while compensating timing. TDL is a design method that performs layout while compensating for timing.
(Timing DrivenLayout) design method is known. This TDL design method restricts a delay time between an output terminal of a circuit block and an input terminal of another circuit block and a path connecting input / output terminals of a plurality of circuit blocks. This is a layout design method in which a delay time is restricted and placement and routing is performed within the given delay time restriction.

【0005】TDL設計方法の第1の従来例を図8を参
照して説明すると、図8は第1の従来によるTDL設計
方法を表すフローチャートであり、ステップS801で
集積回路の回路接続情報81を入力し、ステップS80
2で自動レイアウトで用いる自動レイアウト用回路ブロ
ックレイアウト情報82を入力する。ここで自動レイア
ウト用回路ブロックレイアウト情報82は、回路ブロッ
クの外形、端子位置・属性などの端子情報、配線禁止領
域などの情報から構成される。
[0005] A first conventional example of a TDL design method will be described with reference to FIG. 8. FIG. 8 is a flowchart showing a first conventional TDL design method. In step S 801, circuit connection information 81 of an integrated circuit is stored. Input and step S80
In step 2, circuit block layout information 82 for automatic layout used in automatic layout is input. Here automatic layout circuit block layout information 82, the outer shape of the circuit blocks, terminal information such as the terminal position and attribute, an information such as routing prohibited area.

【0006】次にステップS803で、回路ブロックの
遅延を規定した回路ブロック遅延ライブラリ83を入力
し、ステップS804で集積回路の回路接続情報81と
自動レイアウト用回路ブロックレイアウト情報82及び
目標チップ面積とを参照して回路ブロックの配置を行
い、続いてステップS805で回路ブロック間の概略配
線を生成し、この概略配線結果が評価基準を満足した場
合は詳細配線を行い半導体チップを生成する。
In step S803, a circuit block delay library 83 defining the delay of the circuit block is input. In step S804, the circuit connection information 81 of the integrated circuit, the circuit block layout information for automatic layout 82, and the target chip area are obtained. With reference to the layout of the circuit blocks, a schematic wiring between the circuit blocks is generated in step S805. If the result of the general wiring satisfies the evaluation criterion, detailed wiring is performed to generate a semiconductor chip.

【0007】次にステップS806において、ステップ
S805で生成された回路ブロック間の配線情報を参照
して回路ブロック間の配線遅延を算出し、ステップS8
07においてステップS806で生成した配線遅延を用
いて、フリップフロップ間のタイミング解析を行う。
Next, in step S806, the wiring delay between the circuit blocks is calculated with reference to the wiring information between the circuit blocks generated in step S805.
At 07, timing analysis between flip-flops is performed using the wiring delay generated at step S806.

【0008】そしてステップS808において、ステッ
プS807でのタイミング解析結果を参照して、この解
析結果にセットアップタイムエラーやホールドタイムエ
ラーなどのタイミングエラーが存在するか否かについて
判定し、タイミングエラーが存在すると判定された場合
は、ステップS809でタイミングを補正しタイミング
エラーを解消するために、配線遅延の大きい配線を駆動
するためのバッファを追加挿入したり、配線遅延の大き
い配線が出力端子に接続している回路ブロックを、この
回路ブロックと機能が同一で駆動能力が大きい回路ブロ
ックに置き換えるなどの処理を行う。
In step S808, it is determined with reference to the timing analysis result in step S807 whether or not a timing error such as a setup time error or a hold time error exists in the analysis result. If determined, in step S809, in order to correct the timing and eliminate the timing error, a buffer for driving a wiring having a large wiring delay is additionally inserted, or the wiring having a large wiring delay is connected to the output terminal. For example, processing such as replacing the existing circuit block with a circuit block having the same function as this circuit block and a large driving capability is performed.

【0009】次にステップS810で、タイミング補正
により必要となった配線の変更を行い、続いてステップ
S811で変更した配線部の配線遅延を算出する。そし
てステップS807に戻って、ステップS811で算出
された配線遅延を用いて再度タイミング解析を行い、全
てのタイミングエラーが解消するまでステップS807
〜ステップS811の処理を繰り返す。
Next, in step S810, a change in the wiring required by the timing correction is performed, and then, in step S811, the wiring delay of the changed wiring portion is calculated. Then, returning to step S807, the timing analysis is performed again using the wiring delay calculated in step S811, and step S807 is performed until all timing errors are resolved.
To Step S811 are repeated.

【0010】こうしてステップS808で全てのタイミ
ングエラーが解消したと判定された場合は、ステップS
812でマスクを制作するための集積回路のレイアウト
パターン84を出力する。
If it is determined in step S808 that all timing errors have been resolved, the process proceeds to step S808.
At 812, an integrated circuit layout pattern 84 for producing a mask is output.

【0011】次に図9,10を参照してTDL設計方法
の第1の従来例について具体的に説明する。図9は、フ
リップフロップ92,95と組み合わせ回路93,94
とを含むマクロブロック90の回路図を表しており、マ
クロクロック入力端子91はこのマクロブロック90の
クロック信号入力端子を表し、出力端子96はフリップ
フロップ95からの出力信号をマクロブロック90の出
力信号として取り出すための端子を表す。
Next, a first conventional example of the TDL design method will be specifically described with reference to FIGS. FIG. 9 shows flip-flops 92 and 95 and combinational circuits 93 and 94.
A macro clock input terminal 91 represents a clock signal input terminal of the macro block 90, and an output terminal 96 outputs an output signal from the flip-flop 95 to an output signal of the macro block 90. Represents a terminal to be taken out.

【0012】いまフリップフロップ95のデータ入力端
子99に入力するデータとクロック入力端子910に入
力するクロック信号との競合を考える。始点Aからデー
タ入力端子99に至るパスの遅延は、次の(1)〜
(3)の各パスに対応する遅延τ1〜τ3からなってい
る。すなわち、τ1は始点Aからフリップフロップ92
のクロック入力端子97に至る配線遅延を表し、τ2は
クロック入力端子97に印加されたクロック信号が変化
してから出力端子98にデータが出力されるまでの遅延
時間を表し、τ3は出力端子98からデータ入力端子9
9に至るパスの遅延時間を表す。
Now consider the conflict between the data input to the data input terminal 99 of the flip-flop 95 and the clock signal input to the clock input terminal 910. The delay of the path from the starting point A to the data input terminal 99 is as follows:
It consists of delays τ1 to τ3 corresponding to each path of (3). That is, τ1 is from the start point A to the flip-flop 92
Represents a wiring delay to the clock input terminal 97, τ2 represents a delay time from the change of the clock signal applied to the clock input terminal 97 to the output of data to the output terminal 98, and τ3 represents the output terminal 98. To data input terminal 9
9 represents the delay time of the path to 9.

【0013】さらに遅延時間τ3は、出力端子98から
組み合わせ回路93の入力端子に至る配線遅延τ31
と、組み合わせ回路93の遅延時間τ32と、組み合わ
せ回路93の出力端子と組み合わせ回路94の入力端子
間の配線遅延τ33と、組み合わせ回路94の遅延時間
τ34と、組み合わせ回路94の出力端子とフリップフ
ロップ95のデータ入力端子99に至る配線遅延τ35
とからなる。
Further, the delay time τ3 is a wiring delay τ31 from the output terminal 98 to the input terminal of the combinational circuit 93.
The delay time τ32 of the combination circuit 93, the wiring delay τ33 between the output terminal of the combination circuit 93 and the input terminal of the combination circuit 94, the delay time τ34 of the combination circuit 94, the output terminal of the combination circuit 94 and the flip-flop 95. Delay τ35 to the data input terminal 99 of
Consists of

【0014】また始点Aからクロック入力端子910に
至るパス(4)に対応した配線遅延をτ4とする。
The wiring delay corresponding to the path (4) from the starting point A to the clock input terminal 910 is defined as τ4.

【0015】図9の回路を図8のステップS807でタ
イミング解析する際に、τ1,τ2,τ31〜τ35,
τ4がτ1=50psec、τ2=200psec、τ
31〜τ33=100psec、τ34=200pse
c、τ35=450psec、τ4=200psecの
ように与えられたとする。
When the timing of the circuit of FIG. 9 is analyzed in step S807 of FIG. 8, τ1, τ2, τ31 to τ35,
τ4 is τ1 = 50 psec, τ2 = 200 psec, τ
31 to τ33 = 100 psec, τ34 = 200 psec
c, τ35 = 450 psec, τ4 = 200 psec.

【0016】ここで遅延時間τ2,τ32,τ34は図
8のステップS803で回路ブロック遅延ライブラリ8
3から読み出された値であり、τ1,τ31,τ33,
τ35,τ4は、図8のステップS806又はステップ
S811で算出された配線遅延である。
Here, the delay times .tau.2, .tau.32, .tau.34 are stored in the circuit block delay library 8 in step S803 in FIG.
A value read from the 3, τ1, τ31, τ33,
τ35 and τ4 are wiring delays calculated in step S806 or step S811 in FIG.

【0017】上記の値を用いて図8のステップS807
において、始点A→(1)のパス→(2)のパス→
(3)のパスを経由して、データ入力端子99に至る遅
延時間T1は、T1=50+200+100×3+20
0+450=1200psec=1.2nsecとして
算出される。
Using the above values, step S807 in FIG.
At the starting point A → (1) path → (2) path →
The delay time T1 from the path (3) to the data input terminal 99 is T1 = 50 + 200 + 100 × 3 + 20
It is calculated as 0 + 450 = 1200 psec = 1.2 nsec.

【0018】上述したように始点Aからデータ入力端子
99に至るパスについては、セットアップ時間を判定す
る際の遅延時間T1は1.2nsecとなり、一方マク
ロクロック入力端子91に印加されるクロック信号の周
期を1nsecとすると、始点Aからクロック入力端子
910に至るパスについては、セットアップ時間を判定
する際の遅延時間τ4は1.0+0.2=1.2nse
cとなり、遅延時間T1と遅延時間τ4とが同一の値と
なる。
The period of the paths to the data input terminal 99 from the start point A as described above, the clock signal delay time T1 in determining the setup time to be applied to the 1.2nsec next, whereas macro clock input terminal 91 Is 1 nsec, the delay time τ4 for determining the setup time for the path from the starting point A to the clock input terminal 910 is 1.0 + 0.2 = 1.2 nsec
c, and the delay time T1 and the delay time τ4 have the same value.

【0019】ここでフリップフロップ95のセットアッ
プ時間が図8のステップS803で10psecとして
読み出されたとすると、データ入力端子99に入力する
データとクロック入力端子910に入力するクロック信
号とが同時に入力するため、フリップフロップ95にお
いてセットアップエラーが発生する。
If the setup time of the flip-flop 95 is read as 10 psec in step S803 in FIG. 8, data input to the data input terminal 99 and a clock signal input to the clock input terminal 910 are input simultaneously. , A setup error occurs in the flip-flop 95.

【0020】このため図8のステップS808でタイミ
ングエラーがあるとして判定され、ステップS809で
タイミング補正を行うために、図10に示すように図9
の回路に対してバッファ101が追加挿入される。
For this reason, it is determined that there is a timing error in step S808 of FIG. 8, and in order to correct the timing in step S809, as shown in FIG.
Buffer 101 is additionally inserted into the circuit of FIG.

【0021】一般的に配線長が長くなり配線容量が大き
くなるにつれて、この配線容量を駆動するのに時間がか
かり配線遅延が増大するので、バッファ101は図10
の例では配線遅延が最も大きい組み合わせ回路94の出
力に対して追加挿入される。
Generally, as the wiring length increases and the wiring capacitance increases, it takes time to drive the wiring capacitance and the wiring delay increases.
In the example of (1), the signal is additionally inserted into the output of the combinational circuit 94 having the largest wiring delay.

【0022】そしてステップS811でバッファ101
の出力からデータ入力端子99に接続している配線遅延
が算出され、この値が400psecであり、回路ブロ
ック遅延ライブラリ83から読み出したバッファ101
の遅延時間が10psecであった場合、ステップS8
07で始点Aからバッファ101を介してデータ入力端
子99に至る遅延時間T1’は、T1’=50+200
+100×3+200+400+10=1160pse
c=1.16nsecとして算出される。
Then, in step S811, the buffer 101
, The wiring delay connected to the data input terminal 99 is calculated. This value is 400 psec, and the buffer 101 read out from the circuit block delay library 83 is calculated.
If the delay time is 10 psec, step S8
At 07, the delay time T1 ′ from the start point A to the data input terminal 99 via the buffer 101 is T1 ′ = 50 + 200
+ 100 × 3 + 200 + 400 + 10 = 1160 pse
It is calculated as c = 1.16 nsec.

【0023】従ってデータ入力端子99に入力するデー
タは、クロック入力端子910に入力するクロック信号
に対して40psecだけ早く入力することになり、フ
リップフロップ95のセットアップ時間10psecを
満足することになる。
Therefore, the data input to the data input terminal 99 is input 40 psec earlier than the clock signal input to the clock input terminal 910, thereby satisfying the setup time of the flip-flop 95 of 10 psec.

【0024】以上説明したようにTDL設計方法の第1
の従来例では、LSI内部回路でセットアップエラーや
ホールドタイムエラーなどのタイミングエラーが発生し
ないように補正することが可能であるものの、クロック
信号の配線経路とデータ信号の配線経路との遅延差を検
出して遅延補正とタイミング補正を行っているため、次
のような制約がある。
As described above, the first of the TDL design methods
In the conventional example, although it is possible to correct a timing error such as a setup error or a hold time error in an LSI internal circuit, a delay difference between a clock signal wiring route and a data signal wiring route is detected. Since the delay correction and the timing correction are performed as described above, there are the following restrictions.

【0025】1)クロック信号の配線経路とデータ信号
の配線経路との遅延差を補正することが出来るのは、特
定のフリップフロップのクロック入力端子とこのフリッ
プフロップの次の段のフリップフロップのクロック入力
端子に対し、同一節点から単相クロック信号が供給され
る場合に限定される。
1) The delay difference between the clock signal wiring path and the data signal wiring path can be corrected only by the clock input terminal of a specific flip-flop and the clock of the next flip-flop of the flip-flop. This is limited to the case where a single-phase clock signal is supplied to the input terminal from the same node.

【0026】2)TDL設計方法の第1の従来例におい
ては、遅延ライブラリに格納されている遅延定義ファイ
ルは、各入力端子から各出力端子までの遅延時間がそれ
ぞれ定義されている必要がある。しかしながら、CPU
など機能が複雑なマクロブロックでは、各入力端子の状
態により各出力端子の状態が一義的に定まらないため、
各入力端子と各出力端子間の遅延時間を一義的に定義す
ることが出来ない。このため、SOC(System
On Chip)に代表される大規模LSI開発におい
ては、TDL設計方法の第1の従来例を設計に用いるこ
とが出来ないと言う問題がある。
2) In the first conventional example of the TDL design method, the delay definition file stored in the delay library needs to define the delay time from each input terminal to each output terminal. However, CPU
Since the function such as to be a complex macro-blocks, the state of the output terminals is not determined uniquely by the state of the input terminals,
The delay time between each input terminal and each output terminal cannot be uniquely defined. For this reason, SOC (System
In the development of a large-scale LSI represented by On Chip), there is a problem that the first conventional example of the TDL design method cannot be used for the design.

【0027】上記に述べたTDL設計方法の第1の従来
例の制約条件を解決するために、マクロブロックの出力
端子に単相クロックが印加される同期化出力フリップフ
ロップを必要に応じて付加することにより、マクロブロ
ックの出力の一部をクロック信号に同期させて出力する
タイプのマクロブロックを用いたTDL設計方法の第2
の従来例が提案されている。
In order to solve the above-described constraint of the first conventional example of the TDL design method, a synchronization output flip-flop in which a single-phase clock is applied to an output terminal of a macro block is added as necessary. Accordingly, the second part of the TDL design method using a macroblock of a type in which a part of the output of the macroblock is output in synchronization with a clock signal.
Has been proposed.

【0028】この第2の従来例によるTDL設計方法で
は、マクロブロック本来の複雑な論理動作を考慮しない
で各入力端子から各出力端子に至る遅延時間が定義され
た遅延ライブラリが用いられている。
In the TDL design method according to the second conventional example, a delay library in which a delay time from each input terminal to each output terminal is defined without using a complicated logic operation inherent in a macroblock is used.

【0029】次にTDL設計方法の第2の従来例に用い
るマクロブロックの遅延ライブラリ作成方法を、図11
に示すフローチャートと図12に示すマクロブロックの
回路図とを参照して説明する。
Next, a method of creating a macro block delay library used in the second conventional example of the TDL design method will be described with reference to FIG.
12 and the circuit diagram of the macro block shown in FIG.

【0030】図11のステップS111でマクロブロッ
ク内部の回路接続情報を入力し、ステップS112でマ
クロブロックを構成する配線の配線遅延情報(マクロブ
ロック配線遅延情報)112を、ステップS111で入
力したマクロブロック内部の回路接続情報に付加して、
配線遅延情報を有するマクロブロックの回路接続情報を
生成する。
[0030] In step S111 of FIG. 11 enter the circuit connection information inside macroblocks, macroblock wiring delay information (macroblock wiring delay information) 112 of the wiring constituting the macroblock in step S112, input at step S111 In addition to the internal circuit connection information,
Circuit connection information of a macro block having wiring delay information is generated.

【0031】ここで図15を参照してマクロブロック配
線遅延情報112の一例について説明する。図15
(a)は、マクロブロック内部に回路ブロックA,B,
Cを有するマクロブロックの回路図を示しており、端子
P0と回路ブロックAの端子P1とが接続し、回路ブロ
ックAの端子P2と回路ブロックBの端子P3及び回路
ブロックCの端子P4とが接続している。
An example of the macroblock wiring delay information 112 will now be described with reference to FIG. FIG.
(A) shows circuit blocks A, B,
Shows a circuit diagram of a macro block having a C, and the terminal P1 of the terminal P0 and the circuit block A is connected, connected to the terminal P4 of the terminal P3 and the circuit block C terminal P2 and the circuit block B of the circuit blocks A are doing.

【0032】図15(b)は図15(a)のマクロブロ
ックに対応するマクロブロック配線遅延情報112であ
り、1行目は端子P0と端子P1との間の配線遅延が3
psecであることを表し、2行目は端子P2と端子P
3との間の配線遅延が2psecであることを表し、同
様に3行目は端子P2と端子P4との間の配線遅延が1
0psecであることを表している。このように、マク
ロブロック配線遅延情報112は、基本的には端子対の
情報とこの端子対に対応する配線遅延により表される。
FIG. 15B shows macro block wiring delay information 112 corresponding to the macro block shown in FIG. 15A. In the first row, the wiring delay between the terminal P0 and the terminal P1 is three.
psec, and the second row shows the terminal P2 and the terminal P
3 indicates that the wiring delay between the terminal P2 and the terminal P4 is 1 psec.
0 psec. As described above, the macro block wiring delay information 112 is basically represented by the information of the terminal pair and the wiring delay corresponding to this terminal pair.

【0033】次にステップS113で、マクロブロック
の回路接続情報を構成する内部回路を、対応する内部回
路の遅延ライブラリに置換する。続いてステップS11
4で、同期化出力フリップフロップの出力端子情報に含
まれる遅延処理フラグを、初期設定として未処理である
ことを示す0に全て設定する。ここで同期化出力フリッ
プフロップは、マクロブロックの出力をマクロクロック
信号に同期して出力するために設けられており、この同
期化出力フリップフロップ一般的には同期化出力回路に
よりマクロブロックの入力端子と出力端子との遅延がマ
クロクロック信号を基準として一義的に規定可能となる 次にステップS115で遅延処理フラグが全て1である
か否かについて判定し、ステップS114で遅延処理フ
ラグが全て0に設定されているので、ステップS116
の処理を行う。そしてステップS116において、0の
遅延処理フラグが立っている出力端子を検索する。
Next, in step S113, the internal circuit constituting the circuit connection information of the macro block is replaced with the delay library of the corresponding internal circuit. Subsequently, step S11
In step 4, all the delay processing flags included in the output terminal information of the synchronization output flip-flop are set to 0 indicating that no processing is performed as an initial setting. Here, the synchronization output flip-flop is provided to output the output of the macro block in synchronization with the macro clock signal. The synchronization output flip-flop is generally provided with an input terminal of the macro block by a synchronization output circuit. The delay between the delay processing flag and the output terminal can be uniquely defined based on the macro clock signal. Next, it is determined in step S115 whether or not all the delay processing flags are 1, and in step S114, the delay processing flags are all set to 0. Since it has been set, step S116
Is performed. In step S116, an output terminal on which a delay processing flag of 0 is set is searched.

【0034】次にステップS117において、図12の
パス(1)で一例を示すように、マクロブロックのクロ
ック入力端子であるマクロクロック入力端子から同期化
出力フリップフロップのクロック入力端子までの配線遅
延を算出する。
Next, in step S117, as shown in an example of the path (1) in FIG. 12, the wiring delay from the macro clock input terminal which is the clock input terminal of the macro block to the clock input terminal of the synchronization output flip-flop is reduced. calculate.

【0035】次にステップS118において、図12の
パス(3)に示すように、同期化出力フリップフロップ
の出力端子からマクロブロックの出力端子までの配線遅
延を算出する。
Next, in step S118, as shown by the path (3) in FIG. 12, a wiring delay from the output terminal of the synchronization output flip-flop to the output terminal of the macro block is calculated.

【0036】続いてステップS119において、ステッ
プS117及びステップS118でそれぞれ算出した配
線遅延と、図12のパス(2)に示すように出力フリッ
プフロップ125のクロック入力が変化してからデータ
がこの出力フリップフロップの出力端子Qに伝搬するま
での遅延時間とを加算し、この加算値をクロック遅延値
として算出する。すなわち、図12のパス(1)〜パス
(3)に示す遅延を加算した値がクロック遅延値であ
る。
[0036] Then in step S119, step S117 and a wiring delay calculated respectively step S118, the output data from the clock input is changed from the flip-flop 125 is the output flip as shown in path (2) in FIG. 12 The delay time until the signal propagates to the output terminal Q of the loop is added, and the sum is calculated as a clock delay value. That is, the value obtained by adding the delays shown in the paths (1) to (3) in FIG. 12 is the clock delay value.

【0037】次にステップS120において、ステップ
S119で算出したクロック遅延値をクロック遅延値フ
ァイル114に格納し、続いてステップS121におい
てクロック遅延値を算出した出力フリップフロップの出
力端子情報に含まれる遅延処理フラグを、遅延処理が完
了したことを表す1に設定する。
[0037] Next, at step S120, and stores the clock delay values calculated in step S119 to the clock delay value file 114, followed by delay processing included in the output terminal information of the output flip-flop of calculating the clock delay value in Step S121 The flag is set to 1 indicating that the delay processing has been completed.

【0038】こうして出力フリップフロップの出力端子
に含まれる遅延処理フラグが、全て処理が完了したこと
を表す1になるまで、ステップS115〜ステップS1
21の処理を繰り返す。
Steps S115 to S1 until the delay processing flag included in the output terminal of the output flip-flop becomes 1 indicating that the processing is completed.
Step 21 is repeated.

【0039】またステップS115で同期化出力フリッ
プフロップの出力端子情報に含まれる遅延処理フラグが
全て1であると判定された場合は、ステップS122で
全てのクロック遅延値をクロック遅延値ファイル114
から読み込む。そしてステップS123において、ステ
ップS122で読み込んだクロック遅延値をマクロブロ
ックの入力端子と出力端子間の遅延時間を表すテーブル
形式のデータに変換し、マクロブロック遅延ライブラリ
115として生成する。
If it is determined in step S115 that the delay processing flags included in the output terminal information of the synchronization output flip-flop are all "1", all clock delay values are stored in the clock delay file 114 in step S122.
Read from. In step S123, the clock delay value read in step S122 is converted into data in a table format representing the delay time between the input terminal and the output terminal of the macroblock, and is generated as a macroblock delay library 115.

【0040】[0040]

【発明が解決しようとする課題】ところが上述したTD
L設計方法の第2の従来例に用いるマクロブロック遅延
ライブラリの作成方法においては、マクロクロック入力
端子に印加されるクロック信号の立上がりエッジあるい
は立下がりエッジの変化に着目してマクロブロック遅延
ライブラリ115の生成を行うため、マクロブロック内
部のクロック信号伝搬経路に論理回路が挿入されている
場合は、正確な遅延ライブラリが生成できないと言う問
題がある。
However, the above-mentioned TD
In the method of creating a macroblock delay library used in the second conventional example of the L design method, the macroblock delay library 115 is focused on a change in a rising edge or a falling edge of a clock signal applied to a macroclock input terminal. When a logic circuit is inserted in the clock signal propagation path inside the macro block for generation, there is a problem that an accurate delay library cannot be generated.

【0041】次に上記に述べたマクロブロック内部のク
ロック信号伝搬経路に論理回路が挿入されている場合の
問題点について、図13に示すマクロブロックの回路図
と図14に示すこのマクロブロックのタイミングチャー
トを参照して具体的に説明する。
Next, with respect to the above-mentioned problem when a logic circuit is inserted in the clock signal propagation path inside the macro block, the circuit diagram of the macro block shown in FIG. 13 and the timing of this macro block shown in FIG. This will be specifically described with reference to a chart.

【0042】図13のマクロブロックは、マクロクロッ
ク入力端子132と同期化出力フリップフロップ13
4,135の各クロック入力端子の共通節点との間にエ
クスクルーシブOR133が挿入されており、エクスク
ルーシブOR133の他方の入力はクロック選択端子1
31と接続している。
The macro block shown in FIG. 13 has a macro clock input terminal 132 and a synchronization output flip-flop 13.
An exclusive OR 133 is inserted between the common node of each of the clock input terminals 4 and 135, and the other input of the exclusive OR 133 is the clock selection terminal 1
31.

【0043】このクロック選択端子131に印加する制
御信号CSELをロウレベル(“0”)にすることによ
り、同期化出力フリップフロップ134,135の各ク
ロック入力端子に印加されるクロック信号をマクロクロ
ック信号MCLKに対して同相に制御し、制御信号CS
ELをハイレベル(“1”)にすることにより、同期化
出力フリップフロップ134,135の各クロック入力
端子に印加されるクロック信号をマクロクロック信号M
CLKに対して逆相に制御する。
By setting the control signal CSEL applied to the clock selection terminal 131 to a low level (“0”), the clock signal applied to each clock input terminal of the synchronization output flip-flops 134 and 135 is changed to the macro clock signal MCLK. And the control signal CS
By setting EL to high level (“1”), the clock signal applied to each clock input terminal of the synchronization output flip-flops 134 and 135 is changed to the macro clock signal M.
Controlling the phase opposite to CLK.

【0044】図14からわかるように、制御信号CSE
Lが“0”のときの時刻t1では、マクロクロック信号
MCLKの立上がりから遅延時間τ(0)だけ遅れて出
力端子OUT1からデータが出力されるが、制御信号C
SELが“1”のときの時刻t2では、マクロクロック
信号MCLKの立上がりから、遅延時間τ(0)にマク
ロクロック信号MCLKの半クロック周期だけ加算した
遅延時間τ(1)だけ遅れて出力端子OUT1からデー
タが出力される すなわちマクロクロック入力端子132と出力端子OU
T1間の遅延時間が一義的に定まらず、制御信号CSE
Lにより異なるという問題が発生する。
As can be seen from FIG. 14, the control signal CSE
At time t1 when L is “0”, data is output from output terminal OUT1 with a delay of delay time τ (0) from the rise of macro clock signal MCLK.
At time t2 when SEL is “1”, the output terminal OUT1 is delayed from the rise of the macro clock signal MCLK by a delay time τ (1) obtained by adding the delay time τ (0) by a half clock cycle of the macro clock signal MCLK. The macro clock input terminal 132 and the output terminal OU
The delay time between T1 is not uniquely determined, and the control signal CSE
The problem that it differs depending on L occurs.

【0045】クロック信号伝搬経路にクロック信号を制
御するためのコントロールゲートを挿入する技術は、消
費電力を小さくするためのゲーテッドクロック技術の一
種であり、集積回路の回路規模が増大しこれに伴う消費
電力の増大を抑制する上で極めて有効な方法である。
The technique of inserting a control gate for controlling a clock signal into a clock signal propagation path is a kind of gated clock technique for reducing power consumption. This is an extremely effective method for suppressing an increase in power.

【0046】従って、クロック信号伝搬経路にコントロ
ールゲートを挿入したマクロブロックは今後多数設計さ
れると考えられるが、このような同期化出力フリップフ
ロップを有するマクロブロック内に対して遅延ライブラ
リを作成する場合、過剰なタイミングマージンが発生し
てしまう。
Therefore, it is considered that a large number of macroblocks having control gates inserted in the clock signal propagation path will be designed in the future. However, when a delay library is created in a macroblock having such a synchronized output flip-flop. This causes an excessive timing margin.

【0047】すなわち図14の時刻t1における遅延時
間τ(0)と、時刻t2における遅延時間τ(1)の大
小2つの遅延時間を考慮しなければならないが、遅延ラ
イブラリを作成する上での遅延時間は、いかなる使用条
件下でおいても汎用的に回路動作を保証する必要があ
り、大きい方の遅延時間τ(1)を選択せざるを得な
い。
In other words, the delay time τ (0) at time t1 in FIG. 14 and the delay time τ (1) at time t2 must be considered. time, it is necessary to ensure generically circuit operation even at any operating conditions, the delay time larger tau (1) the selection inevitably.

【0048】しかしながら実際の回路動作上制御信号C
SELが0の場合、本来的には遅延時間としてはτ
(0)でよいはずであり、半クロック周期分だけ過剰マ
ージンとなってしまう。従って、図11に示す処理フロ
ーで作成した遅延ライブラリは、高速動作を要求される
集積回路の設計には適用できないという問題がある。
However, in actual circuit operation, the control signal C
When SEL is 0, the delay time is essentially τ
(0) should be sufficient, resulting in an excess margin for a half clock cycle. Therefore, there is a problem that the delay library created by the processing flow shown in FIG. 11 cannot be applied to the design of an integrated circuit that requires high-speed operation.

【0049】このため本発明の目的は、外部からクロッ
ク信号を入力するマクロクロック入力端子と、同期化出
力フリップフロップなどの同期化出力回路との間に論理
回路が挿入されているマクロブロックに対して、過剰な
マージンを含むことなく適切な遅延時間を設定すること
が可能な論理シミュレーション用マクロブロックライブ
ラリの作成方法を提供することにある。
Therefore, an object of the present invention is to provide a macro block in which a logic circuit is inserted between a macro clock input terminal for inputting a clock signal from the outside and a synchronization output circuit such as a synchronization output flip-flop. It is another object of the present invention to provide a method of creating a macroblock library for logic simulation that can set an appropriate delay time without including an excessive margin.

【0050】また本発明の目的は、高精度の遅延時間を
設定することができ、このため高速動作を行う集積回路
に適用可能な論理シミュレーション用マクロブロックラ
イブラリの作成方法を提供することにある。
Another object of the present invention is to provide a method for creating a macroblock library for logic simulation which can set a highly accurate delay time and can be applied to an integrated circuit which operates at high speed.

【0051】さらに本発明の目的は、本発明による論理
シミュレーション用マクロブロックライブラリを用いた
タイミングドリブンレイアウト設計方法により、タイミ
ングエラーを容易に解消し設計期間を大幅に短縮するこ
とが可能なレイアウト設計方法を提供することにある。
A further object of the present invention is to provide a timing driven layout design method using a macro block library for logic simulation according to the present invention, whereby a timing error can be easily eliminated and a design period can be greatly reduced. Is to provide.

【0052】[0052]

【課題を解決するための手段】このため本発明による論
理シミュレーション用マクロブロックライブラリの作成
方法は、マクロクロック端子から入力したマクロクロッ
ク信号を論理演算して内部クロック信号を生成するクロ
ック制御回路と、前記内部クロック信号に同期してデー
タをマクロ出力端子に出力する同期化出力回路とを含む
マクロブロックを備えた集積回路を論理シミュレーショ
ンする際に用いられ、前記マクロクロック端子を含む前
記マクロブロックのマクロ入力端子と前記マクロ出力端
子間の遅延を定義した論理シミュレーション用マクロブ
ロックライブラリの作成方法において、前記マクロブロ
ック内部の回路接続情報から前記クロック制御回路とこ
のクロック制御回路の入力端子に接続する回路接続情報
とを削除し、前記クロック制御回路の出力端子に仮想端
子を設け、前記仮想端子と前記内部クロック信号が入力
する前記同期化出力回路の入力クロック端子間の配線遅
延と、前記同期化出力回路が前記内部クロック信号に応
答して前記同期化出力回路の出力端子にデータを出力す
るまでの遅延時間と、前記同期化出力回路の出力端子と
前記マクロ出力端子間の配線遅延時間とを加算して、こ
の加算値を前記マクロブロックの遅延ライブラリを構成
する遅延情報として用いることを特徴としている。
Therefore, a method of creating a macroblock library for logic simulation according to the present invention comprises: a clock control circuit for performing a logical operation on a macroclock signal input from a macroclock terminal to generate an internal clock signal; A synchronous output circuit that outputs data to a macro output terminal in synchronization with the internal clock signal. The macro circuit of the macro block including the macro clock terminal is used when performing a logic simulation of an integrated circuit including the macro block. In the method for creating a logic simulation macro block library in which a delay between an input terminal and the macro output terminal is defined, a circuit connection to be connected to the clock control circuit and an input terminal of the clock control circuit from circuit connection information inside the macro block. Delete the information and said A virtual terminal is provided at an output terminal of the lock control circuit, a wiring delay between the virtual terminal and an input clock terminal of the synchronization output circuit to which the internal clock signal is input, and the synchronization output circuit responds to the internal clock signal. The delay time until data is output to the output terminal of the synchronization output circuit, and the wiring delay time between the output terminal of the synchronization output circuit and the macro output terminal are added, It is characterized in that it is used as delay information constituting a delay library of a macro block.

【0053】また本発明によるレイアウト設計方法は、
マクロクロック端子から入力したマクロクロック信号を
論理演算して内部クロック信号を生成するクロック制御
回路と、前記内部クロック信号に同期してデータをマク
ロ出力端子に出力する同期化出力回路とを含むマクロブ
ロックを備えた集積回路のレイアウト方法において、前
記マクロブロック内部の回路接続情報から前記クロック
制御回路とこのクロック制御回路の入力端子に接続する
回路接続情報とを削除し前記クロック制御回路の出力端
子に仮想端子を設け、前記仮想端子と前記内部クロック
信号が入力する前記同期化出力回路の入力クロック端子
間の配線遅延と、前記同期化出力回路が前記内部クロッ
ク信号に応答して前記同期化出力回路の出力端子にデー
タを出力するまでの遅延時間と、前記同期化出力回路の
出力端子と前記マクロ出力端子間の配線遅延時間とを加
算して、この加算値を遅延情報として有する編集マクロ
ブロックを生成する第1のステップと、前記集積回路の
回路接続情報と前記クロック制御回路の回路接続情報と
を入力し、前記マクロブロックを前記編集マクロブロッ
クに置換し、前記クロック制御回路を前記編集マクロブ
ロックの外側に設け、前記編集マクロブロックの仮想端
子と前記クロック制御回路の出力端子間、及び前記マク
ロブロック内の前記クロック制御回路の入力端子が接続
した前記集積回路の端子と前記クロック制御回路の入力
端子間とを、それぞれ接続して前記集積回路の回路接続
情報と等価な等価回路接続情報を接続する第2のステッ
プと、前記等価回路接続情報を参照して、この等価回路
接続情報を構成する回路ブロックを配置し、回路ブロッ
ク間の配線を行う第3のステップと、前記第2のステッ
プで生成した配線の配線遅延を算出する第4のステップ
と、前記マクロブロック内に配置された前記クロック制
御回路の入力配線の配線遅延を算出する第5のステップ
と、前記第4のステップで生成した配線遅延と前記第5
のステップで生成した配線遅延との遅延差を算出する第
6のステップと、前記等価回路接続情報と前記第4のス
テップで生成した前記配線遅延とを参照して前記集積回
路のタイミング解析を行う第7のステップと、前記第7
のステップにおけるタイミング解析結果が所定の判定基
準を満足した場合、前記等価回路接続情報から前記クロ
ック制御回路とこれに接続する回路接続情報とを削除す
る第8のステップと、前記第8のステップで得られた回
路接続情報でオープンとなった回路接続情報を接続し、
前記集積回路の回路接続情報と等価な回路接続情報を生
成し、この回路接続情報と前記遅延差とを参照して、新
たに生成される配線遅延が前記遅延差を打ち消すように
前記回路ブロック間の配線を行う第9のステップと、を
備えている。
Further, the layout design method according to the present invention
A macro block including a clock control circuit that performs a logical operation on a macro clock signal input from a macro clock terminal to generate an internal clock signal, and a synchronization output circuit that outputs data to a macro output terminal in synchronization with the internal clock signal Wherein the clock control circuit and the circuit connection information connected to the input terminal of the clock control circuit are deleted from the circuit connection information inside the macro block, and a virtual connection is made to the output terminal of the clock control circuit. A wiring delay between the virtual terminal and the input clock terminal of the synchronization output circuit to which the internal clock signal is input, and the synchronization output circuit responds to the internal clock signal, The delay time until data is output to the output terminal, the output terminal of the synchronization output circuit and the (B) a first step of adding an interconnect delay time between output terminals to generate an edited macroblock having the added value as delay information; and a circuit connection information of the integrated circuit and a circuit connection information of the clock control circuit. And replacing the macro block with the edit macro block, providing the clock control circuit outside the edit macro block, between a virtual terminal of the edit macro block and an output terminal of the clock control circuit, and A terminal of the integrated circuit connected to an input terminal of the clock control circuit in a macro block is connected to an input terminal of the clock control circuit, and equivalent circuit connection information equivalent to circuit connection information of the integrated circuit is connected. A second step of connecting, and referring to the equivalent circuit connection information, refer to a circuit block constituting the equivalent circuit connection information. A third step of placing and wiring between circuit blocks, a fourth step of calculating a wiring delay of the wiring generated in the second step, and a step of calculating the delay of the clock control circuit disposed in the macro block. A fifth step of calculating a wiring delay of the input wiring, and the wiring delay generated in the fourth step and the fifth step.
A sixth step of calculating a delay difference from the wiring delay generated in the step, and a timing analysis of the integrated circuit with reference to the equivalent circuit connection information and the wiring delay generated in the fourth step. A seventh step;
An eighth step of deleting the clock control circuit and the circuit connection information connected thereto from the equivalent circuit connection information when the timing analysis result in the step satisfies a predetermined judgment criterion; and Connect the open circuit connection information with the obtained circuit connection information,
Generating circuit connection information equivalent to the circuit connection information of the integrated circuit; and referring to the circuit connection information and the delay difference, the inter-circuit blocks are connected so that a newly generated wiring delay cancels the delay difference. A ninth step of performing the above wiring.

【0054】[0054]

【発明の実施の形態】次に、本発明の論理シミュレーシ
ョン用マクロブロックライブラリの作成方法の実施の形
態について図1〜図3を参照して説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, an embodiment of a method for creating a macroblock library for logic simulation according to the present invention will be described with reference to FIGS.

【0055】図1及び図2は、本発明の論理シミュレー
ション用マクロブロックライブラリの作成方法を表すフ
ローチャートであり、論理シミュレーション用マクロブ
ロックライブラリは図3に示すような同期化出力フリッ
プフロップ39,310などの同期化出力回路313を
有するマクロブロックに対して生成される。
FIGS. 1 and 2 are flow charts showing a method of creating a macro block library for logic simulation according to the present invention. The macro block library for logic simulation includes synchronized output flip-flops 39 and 310 as shown in FIG. It is generated for a macro block having a synchronization output circuit 313.

【0056】すなわち、マクロブロックに内蔵された同
期化出力回路は、マクロブロックの外部から入力するマ
クロクロック信号に同期して、マクロブロック内部から
同期化出力回路に入力するデータをマクロブロックの外
部に出力する。この同期化出力回路は、マクロブロック
の全ての出力端子に設ける必要はなく、タイミング制約
条件を満たす必要がある出力端子に限定して設ける。
That is, the synchronization output circuit built in the macro block synchronizes the data input from inside the macro block to the synchronization output circuit to the outside of the macro block in synchronization with the macro clock signal input from outside the macro block. Output. This synchronization output circuit does not need to be provided for all output terminals of the macroblock, but is provided only for output terminals that need to satisfy timing constraint conditions.

【0057】最初に図3を参照して、本発明の論理シミ
ュレーション用マクロブロックライブラリの作成方法に
用いるマクロブロックを具体的に説明する。図3に示す
マクロブロックは、データ入力端子31,32と、クロ
ック選択端子33と、マクロクロック入力端子34と、
このマクロブロックからの出力信号を取り出す出力端子
OUT1,OUT2と、組み合わせ回路35〜38と、
同期化出力フリップフロップ39,310からなる同期
化出力回路313と、エクスクルーシブOR311を含
むクロック制御回路311Aと、仮想端子312とを備
えている。
First, referring to FIG. 3, the macro blocks used in the method for creating a macro block library for logic simulation according to the present invention will be specifically described. The macro block shown in FIG. 3 includes data input terminals 31 and 32, a clock selection terminal 33, a macro clock input terminal 34,
Output terminals OUT1 and OUT2 for extracting an output signal from the macro block, combination circuits 35 to 38,
A synchronization output circuit 313 including synchronization output flip-flops 39 and 310, a clock control circuit 311A including an exclusive OR 311 and a virtual terminal 312 are provided.

【0058】データ入力端子31に印加された入力信号
IN1は、組み合わせ回路35,36で論理的に処理さ
れ、同期化出力フリップフロップ39のデータ入力端子
Dに入力する。同様に、データ入力端子32に印加され
た入力信号IN2は、組み合わせ回路37,38で論理
的に処理され、同期化出力フリップフロップ310のデ
ータ入力端子Dに入力する。
The input signal IN1 applied to the data input terminal 31 is logically processed by the combination circuits 35 and 36, and is input to the data input terminal D of the synchronization output flip-flop 39. Similarly, the input signal IN2 applied to the data input terminal 32 is logically processed by the combination circuits 37 and 38, and is input to the data input terminal D of the synchronization output flip-flop 310.

【0059】またクロック選択端子33に入力する制御
信号CSELにより、マクロクロック入力端子34に印
加されるマクロクロック信号MCLKは正相または逆相
に位相制御されて、同期化出力フリップフロップ39,
310のクロック入力端子に印加される。
The macro clock signal MCLK applied to the macro clock input terminal 34 is phase-controlled to the positive or negative phase by the control signal CSEL input to the clock selection terminal 33, so that the synchronization output flip-flop 39,
310 is applied to the clock input terminal.

【0060】従ってマクロクロック信号MCLKに同期
した出力信号が、同期化出力回路313を構成する同期
化出力フリップフロップ39,310の出力端子Qにそ
れぞれ出力される。
Therefore, output signals synchronized with the macro clock signal MCLK are output to the output terminals Q of the synchronization output flip-flops 39 and 310 constituting the synchronization output circuit 313, respectively.

【0061】次に図1及び図2を参照して、本発明の論
理シミュレーション用マクロブロックライブラリの作成
方法の実施の形態について説明すると、ステップS11
で、マクロクロック信号の位相などを制御するクロック
制御回路を含むマクロブロック内部の回路接続情報1
と、このマクロブロックを構成する配線の配線遅延情報
2とを入力し、マクロブロック内部の回路接続情報1に
マクロブロックを構成する配線の配線遅延情報2を付加
して、配線遅延情報を有するマクロブロックの回路接続
情報を生成する。
Next, with reference to FIGS. 1 and 2, an embodiment of a method for creating a macroblock library for logic simulation according to the present invention will be described.
The circuit connection information 1 inside the macro block including the clock control circuit for controlling the phase and the like of the macro clock signal
And the wiring delay information 2 of the wiring forming the macro block, and adding the wiring delay information 2 of the wiring forming the macro block to the circuit connection information 1 inside the macro block to obtain a macro having the wiring delay information. Generate circuit connection information for the block.

【0062】次にステップS12において、マクロクロ
ック入力端子と同期化出力回路のクロック入力端子間の
経路上に存在するマクロクロック信号を制御するための
クロック制御回路を検索する。このクロック制御回路
は、図3に示すエクスクルーシブOR311のようにマ
クロクロック信号を0〜180度まで任意に位相を制御
するなどの動作を行う。
Next, in step S12, a clock control circuit for controlling the macro clock signal existing on the path between the macro clock input terminal and the clock input terminal of the synchronization output circuit is searched. This clock control circuit performs an operation such as arbitrarily controlling the phase of the macro clock signal from 0 to 180 degrees as in the exclusive OR 311 shown in FIG.

【0063】そしてステップS13で、マクロブロック
内にクロック制御回路が存在するか否かを判定し、クロ
ック制御回路が存在すると判定した場合は次のステップ
S14の処理を行い、クロック制御回路が存在しないと
判定した場合は処理を完了する。
In step S13, it is determined whether or not a clock control circuit exists in the macro block. If it is determined that the clock control circuit exists, the process in step S14 is performed, and the clock control circuit does not exist. If it is determined that the process ends.

【0064】次にステップS14において、クロック制
御回路の入力端子に接続された配線の配線遅延を算出す
る。図3に示すマクロブロックの場合は、クロック選択
端子33とエクスクルーシブOR311の入力端子間の
配線容量及び配線抵抗を参照して、この配線経路の配線
遅延を算出し、同様に、マクロクロック端子34とエク
スクルーシブOR311の入力端子間の配線容量及び配
線抵抗を参照して、この配線経路の配線遅延を算出し、
クロック制御回路の入力配線遅延情報3として出力す
る。そしてこのクロック制御回路の入力配線遅延情報3
は、半導体チップをレイアウトする際に、図4に示す本
発明による論理シミュレーション用マクロブロックライ
ブラリを用いたタイミングドリブンレイアウト設計方法
で用いられる。
Next, in step S14, the wiring delay of the wiring connected to the input terminal of the clock control circuit is calculated. For macro-block shown in FIG. 3, with reference to the wiring capacitance and wiring resistance between the input terminals of the clock selection terminals 33 and exclusive OR311, calculates the wiring delay of the wiring path, similarly, the macro clock terminal 34 With reference to the wiring capacitance and the wiring resistance between the input terminals of the exclusive OR 311, the wiring delay of this wiring path is calculated,
It is output as input wiring delay information 3 of the clock control circuit. The input wiring delay information 3 of this clock control circuit
Is used in the timing driven layout design method using the macro block library for logic simulation according to the present invention shown in FIG. 4 when laying out a semiconductor chip.

【0065】次にステップS15で、クロック制御回路
と、このクロック制御回路の入力端子に付加された配線
遅延情報を、ステップS11で生成された配線遅延情報
付き回路接続情報から削除し、クロック制御回路に関連
する配線遅延情報を除いた配線遅延情報4として出力す
る。
Next, in step S15, the clock control circuit and the wiring delay information added to the input terminal of the clock control circuit are deleted from the circuit connection information with wiring delay information generated in step S11, and the clock control circuit is deleted. Is output as wiring delay information 4 excluding wiring delay information related to.

【0066】次にステップS16で、マクロブロック内
部の回路接続情報1からクロック制御回路と、このクロ
ック制御回路の入力端子に接続する回路接続情報を削除
し、図3に示すようにクロック制御回路の出力に仮想端
子を発生する。
Next, in step S16, the clock control circuit and the circuit connection information connected to the input terminal of the clock control circuit are deleted from the circuit connection information 1 inside the macro block, and the clock control circuit is connected to the clock control circuit as shown in FIG. Generate a virtual terminal at the output.

【0067】すなわち仮想端子312を新たに生成し、
仮想端子312の左側(入力側)に図示されたエクスク
ルーシブOR311と、クロック選択端子33とエクス
クルーシブOR311の入力端子とを接続する回路接続
情報、及びマクロクロック入力端子34とエクスクルー
シブOR311の入力端子とを接続する回路接続情報と
を削除し、仮想端子312の右側(出力側)に図示され
た同期化出力フリップフロップ39,310のクロック
入力端子に接続する回路接続情報を削除しないでそのま
ま残すような処理を行う。
That is, a new virtual terminal 312 is generated,
Circuit connection information for connecting the exclusive OR 311 shown on the left side (input side) of the virtual terminal 312 to the clock selection terminal 33 and the input terminal of the exclusive OR 311, and connection between the macro clock input terminal 34 and the input terminal of the exclusive OR 311 And deleting the circuit connection information to be connected to the clock input terminals of the synchronization output flip-flops 39 and 310 shown on the right side (output side) of the virtual terminal 312 without deleting the circuit connection information. do.

【0068】そしてマクロブロック内部の回路接続情報
からクロック制御回路と、このクロック制御回路の入力
端子に接続する接続情報を削除して、クロック制御回路
とこのクロック制御回路の各入力端子に接続する回路接
続情報を除いたマクロブロックの回路接続情報5と、ク
ロック制御回路の回路接続情報6とを生成する。
The clock control circuit and the connection information connected to the input terminal of the clock control circuit are deleted from the circuit connection information inside the macro block, and the clock control circuit and the circuit connected to each input terminal of the clock control circuit are deleted. The circuit connection information 5 of the macro block excluding the connection information and the circuit connection information 6 of the clock control circuit are generated.

【0069】次に図2のステップS17において、クロ
ック制御回路とこの入力端子に接続する回路接続情報を
除いたマクロブロックの回路接続情報5と、マクロブロ
ックレイアウト情報7とを参照して、マクロブロックの
レイアウト情報に仮想端子を生成する。
Next, in step S17 of FIG. 2, the macro block layout information 7 and the macro block circuit connection information 5 excluding the clock control circuit and the circuit connection information connected to this input terminal are referred to, and the macro block A virtual terminal is generated for the layout information of

【0070】続いてステップS18において、ステップ
S17で生成したマクロブロックのレイアウト情報を参
照して、マクロブロックの外形、端子位置・属性などの
端子情報、配線禁止領域などの情報から構成される自動
レイアウト用マクロブロックレイアウト情報8を出力す
る。このとき自動レイアウト用マクロブロックレイアウ
ト情報8で、図3のクロック選択端子33とマクロクロ
ック入力端子34に対応するレイアウト上の各端子につ
いては、元のまま残っている。
Subsequently, in step S18, referring to the layout information of the macro block generated in step S17, an automatic layout composed of information on the outer shape of the macro block, terminal information such as terminal positions and attributes, and information such as a wiring prohibited area is provided. And output the macro block layout information 8. At this time, in the macro block layout information 8 for automatic layout, each terminal on the layout corresponding to the clock selection terminal 33 and the macro clock input terminal 34 in FIG. 3 remains as it is.

【0071】次にステップS19において、クロック制
御回路に関連する配線遅延情報を除いた配線遅延情報4
と、クロック制御回路とこのクロック制御回路の各入力
端子に接続する回路接続情報を除いたマクロブロックの
回路接続情報5とを参照して、同期化出力回路とこの出
力回路の入力接続情報が削除され代わりに仮想端子を有
する配線遅延情報付きマクロブロック内回路接続情報を
生成する。
Next, in step S19, the wiring delay information 4 excluding the wiring delay information related to the clock control circuit
With reference to the clock control circuit and the circuit connection information 5 of the macro block excluding the circuit connection information connected to each input terminal of the clock control circuit, the synchronization output circuit and the input connection information of this output circuit are deleted. Instead, it generates circuit connection information within a macro block with wiring delay information having virtual terminals.

【0072】次にステップS20において、ステップS
19で生成したマクロブロック内回路接続情報と、マク
ロブロックを構成する内部回路に対して入力端子と出力
端子間の遅延が定義されたマクロブロック内部の遅延ラ
イブラリ9とを参照してマクロブロック内部の回路ブロ
ックを対応する遅延ライブラリに置換する。
Next, at step S20, step S
Referring to the circuit connection information in the macro block generated in step 19 and the delay library 9 in the macro block in which the delay between the input terminal and the output terminal is defined for the internal circuit constituting the macro block, Replace circuit blocks with corresponding delay libraries.

【0073】続いてステップS21で、同期化出力回路
の出力端子情報に含まれる遅延処理フラグを、全て初期
設定として未処理であることを示す0に設定する。
Subsequently, in step S21, the delay processing flags included in the output terminal information of the synchronization output circuit are all set to 0 indicating that no processing is performed as an initial setting.

【0074】次にステップS22で同期化出力回路の出
力端子情報に含まれる遅延処理フラグが全て1であるか
否かについて判定し、ステップS21で遅延処理フラグ
が全て0に設定されているので、ステップS23の処理
を行う。そしてステップS23において、0の遅延処理
フラグが立っている出力端子を検索する。
Next, at step S22, it is determined whether or not the delay processing flags included in the output terminal information of the synchronization output circuit are all "1". Since the delay processing flags are all set to "0" at step S21, Step S23 is performed. In step S23, an output terminal on which a delay processing flag of 0 is set is searched.

【0075】次にステップS24において、ステップS
16で生成した図3に示す仮想端子312から同期化出
力回路313を構成する同期化フリップフロップ39,
310の各クロック入力端子までのパス(4)、
(4)’にそれぞれ対応した配線遅延である仮想クロッ
ク配線遅延を算出する。
Next, in step S24, step S
The synchronization flip-flops 39 constituting the synchronization output circuit 313 from the virtual terminal 312 shown in FIG.
Path (4) to each clock input terminal 310;
(4) Calculate virtual clock wiring delays which are wiring delays respectively corresponding to '.

【0076】次にステップS25において、図3の
(6)に一例として示す同期化出力フリップフロップ3
9、310の各出力端子Qからマクロブロックの出力端
子OUT1及びOUT2までのパス(6)、(6)’に
それぞれ対応した配線遅延をそれぞれ算出する。
Next, in step S25, the synchronization output flip-flop 3 shown as an example in FIG.
The wiring delays respectively corresponding to the paths (6) and (6) ′ from the output terminals Q of Nos. 9 and 310 to the output terminals OUT1 and OUT2 of the macroblock are calculated.

【0077】続いてステップS26において、ステップ
S24で算出した仮想クロック配線遅延と、ステップS
25で算出した同期化出力回路の出力端子からマクロブ
ロックの出力端子までの配線遅延と、一例として図3に
示す出力フリップフロップ39,310へのクロック入
力が変化してからデータがこの出力フリップフロップの
出力端子Qに伝搬するまでの遅延時間とを加算し、この
加算値をクロック遅延値として算出する。すなわち、図
3に示す例ではパス(4)、(5)、(6)に対応する
遅延をそれぞれ加算した値、およびパス(4)’、
(5)、(6)’に対応する遅延をそれぞれ加算した値
がクロック遅延値となる。
Subsequently, in step S26, the virtual clock wiring delay calculated in step S24 and the
The wiring delay from the output terminal of the synchronization output circuit to the output terminal of the macro block calculated in step 25 and the data input to the output flip-flops 39 and 310 shown in FIG. , And a delay time until the signal propagates to the output terminal Q is added, and the added value is calculated as a clock delay value. That is, in the example shown in FIG. 3, a value obtained by adding delays corresponding to paths (4), (5), and (6), and a path (4) ′,
The value obtained by adding the delays corresponding to (5) and (6) ′ is the clock delay value.

【0078】次にステップS27において、ステップS
26で算出したクロック遅延値をクロック遅延値ファイ
ル10に格納し、続いてステップS28においてクロッ
ク遅延値を算出した同期化出力回路の出力端子情報に含
まれる遅延処理フラグを、遅延処理が完了したことを表
す1に設定する。
Next, in step S27, step S
The clock delay value calculated in step 26 is stored in the clock delay value file 10, and the delay processing flag included in the output terminal information of the synchronization output circuit whose clock delay value has been calculated in step S28 indicates that the delay processing has been completed. Is set to 1.

【0079】こうして同期化出力回路の出力端子に含ま
れる遅延処理フラグが、全て処理が完了したことを表す
1になるまで、ステップS22〜ステップS28の処理
を繰り返す。
[0079] Thus delay processing flag contained in the output terminal of the synchronization output circuit, until 1 indicating that all processing is complete, the process is repeated step S22~ step S28.

【0080】またステップS22で同期化出力回路の出
力端子情報に含まれる遅延処理フラグが全て1であると
判定された場合は、ステップS29で全てのクロック遅
延値をクロック遅延値ファイル10から読み込む。そし
てステップS30において、ステップS29で読み込ん
だクロック遅延値をマクロブロックの入力端子と出力端
子間の遅延時間を表すテーブル形式のデータに変換し、
マクロブロック遅延ライブラリ11として生成する。
If it is determined in step S22 that all the delay processing flags included in the output terminal information of the synchronization output circuit are 1, all clock delay values are read from the clock delay value file 10 in step S29. Then, in step S30, the clock delay value read in step S29 is converted into table format data representing the delay time between the input terminal and the output terminal of the macro block,
Generated as the macro block delay library 11.

【0081】次に、本発明による論理シミュレーション
用マクロブロックライブラリを用いたタイミングドリブ
ンレイアウト設計方法の第1の実施の形態について図4
に示すフローチャートと、図5、6に示す集積回路の一
部である回路図を参照して説明する。
Next, a first embodiment of a timing-driven layout design method using a macroblock library for logic simulation according to the present invention will be described with reference to FIG.
5 and a circuit diagram which is a part of the integrated circuit shown in FIGS.

【0082】最初に図5について説明すると、図5は集
積回路の一部の回路図を表し、データ入力端子51,5
2と、外部クロック入力端子53と、出力端子54と、
同期化出力回路を内蔵したマクロブロック55と、組み
合わせ回路56,58と、フリップフロップ57とを有
している。
Referring first to FIG. 5, FIG. 5 shows a circuit diagram of a part of an integrated circuit, and data input terminals 51 and 5 are shown.
2, an external clock input terminal 53, an output terminal 54,
It has a macro block 55 having a built-in synchronization output circuit, combination circuits 56 and 58, and a flip-flop 57.

【0083】すなわち、マクロブロック55は外部クロ
ック入力端子53に印加される外部クロック信号ECL
Kに同期して出力端子OUT1,OUT2にマクロブロ
ック55内部で演算したデータを出力する。
That is, the macro block 55 receives the external clock signal ECL applied to the external clock input terminal 53.
The data calculated inside the macro block 55 is output to the output terminals OUT1 and OUT2 in synchronization with K.

【0084】なおマクロブロック55としては、図3に
示す回路として以下の説明を進める。すなわち、組み合
わせ回路58で生成された制御信号は図3のクロック選
択端子33に入力し、さらにクロック制御回路311A
を構成するエクスクルーシブOR311に入力する。
The following description will be given of the macro block 55 as a circuit shown in FIG. That is, the control signal generated by the combination circuit 58 is input to the clock selection terminal 33 in FIG.
Is input to the exclusive OR 311 constituting.

【0085】一方外部クロック信号ECLKはノード5
9を介してマクロクロック入力端子34に入力し、さら
にエクスクルーシブOR311に入力する。そしてエク
スクルーシブOR311の出力は仮想端子312を介し
て同期化出力回路313のクロック入力端子に入力す
る。
External clock signal ECLK is applied to node 5
9 and input to the macro clock input terminal 34, and further to the exclusive OR 311. The output of the exclusive OR311 is inputted to the clock input terminal of the synchronization control circuit 313 via the virtual terminal 312.

【0086】また外部クロック信号ECLKはノード5
9を介して、フリップフロップ57のクロック入力端子
にも印加される。こうして外部クロック信号ECLKに
同期したデータがマクロブロック55の出力端子OUT
1に出力され、さらに組み合わせ回路56で論理演算さ
れてフリップフロップ57のデータ入力端子に入力す
る。このデータは、外部クロック信号ECLKに同期し
て出力端子54に出力される。
[0086] The external clock signal ECLK is node 5
9 is also applied to the clock input terminal of flip-flop 57. Thus, the data synchronized with the external clock signal ECLK is output to the output terminal OUT of the macro block 55.
1 and further subjected to logical operation by the combinational circuit 56 and input to the data input terminal of the flip-flop 57. This data is output to output terminal 54 in synchronization with external clock signal ECLK.

【0087】次に図4の処理フローについて説明する
と、図4のステップS401において、集積回路の回路
接続情報41と図1のステップS16で生成したクロッ
ク制御回路の回路接続情報6とを参照して、同期化出力
回路を内蔵するマクロブロックを、仮想端子からマクロ
クロック入力端子及びクロック選択端子間に存在するク
ロック制御回路と接続情報とを削除したマクロブロック
に置換すると共に、図6に一例として示す集積回路の回
路接続情報41と論理的に等価な等価回路接続情報を生
成する。
Next, the processing flow of FIG. 4 will be described. In step S401 of FIG. 4, the circuit connection information 41 of the integrated circuit and the circuit connection information 6 of the clock control circuit generated in step S16 of FIG. 1 are referred to. FIG. 6 shows an example in which a macro block having a built-in synchronization output circuit is replaced with a macro block in which a clock control circuit and connection information existing between a virtual terminal and a macro clock input terminal and a clock selection terminal are deleted. The equivalent circuit connection information logically equivalent to the circuit connection information 41 of the integrated circuit is generated.

【0088】すなわち図6において図5のマクロブロッ
ク55が、仮想端子からマクロクロック入力端子及びク
ロック選択端子間に存在するクロック制御回路と接続情
報とを削除したマクロブロック55’に置換されてお
り、マクロブロック55を構成している図3のエクスク
ルーシブOR311が図6に示すようにエクスクルーシ
ブOR510として、ノード59及びマクロブロック5
5’の仮想端子間に接続される。ここでマクロブロック
55’の自動レイアウト用レイアウト情報は、外形、端
子位置などマクロブロック55の自動レイアウト用レイ
アウト情報と基本的に同一である。
That is, in FIG. 6, the macro block 55 in FIG. 5 is replaced by a macro block 55 'in which the clock control circuit and the connection information existing between the virtual terminal and the macro clock input terminal and the clock selection terminal are deleted from the virtual terminal. As shown in FIG. 6, the exclusive OR 311 of FIG. 3 constituting the macro block 55 is changed to the node 59 and the macro block 5 as the exclusive OR 510.
5 'is connected between the virtual terminals. Here, the layout information for the automatic layout of the macro block 55 'is basically the same as the layout information for the automatic layout of the macro block 55, such as the outer shape and the terminal position.

【0089】従って図6におけるノード59及び組み合
わせ回路58の出力からエクスクルーシブOR510を
介して仮想端子に至る論理動作は、図5におけるノード
59及び組み合わせ回路58の出力からマクロクロック
入力端子とクロック選択端子を介して図3の仮想端子に
至る論理動作と同一となる。
Therefore, the logical operation from the output of the node 59 and the combination circuit 58 to the virtual terminal through the exclusive OR 510 in FIG. 6 is performed by changing the macro clock input terminal and the clock selection terminal from the output of the node 59 and the combination circuit 58 in FIG. This is the same as the logic operation reaching the virtual terminal of FIG.

【0090】次にステップS402において、ステップ
S401で生成した等価回路接続情報と、自動レイアウ
ト用回路ブロックレイアウト情報42と、回路ブロック
遅延ライブラリ43とを参照して、集積回路を構成する
マクロブロックなどの回路ブロックを自動的に配置す
る。
Next, in step S402, referring to the equivalent circuit connection information generated in step S401, the circuit block layout information for automatic layout 42, and the circuit block delay library 43, the macro block and the like constituting the integrated circuit are referred to. Automatically place circuit blocks.

【0091】ここで自動レイアウト用回路ブロックレイ
アウト情報42は、図2のステップS18で生成された
マクロブロックの外形、端子位置・属性などの端子情
報、配線禁止領域などの情報から構成される自動レイア
ウト用マクロブロックレイアウト情報8と、ANDゲー
ト、フリップフロップなどの基本論理回路に対する外
形、端子位置・属性などの端子情報、配線禁止領域など
の情報の両方を含んでいる。
Here, the automatic layout circuit block layout information 42 is an automatic layout composed of the macro block outer shape, terminal information such as terminal positions and attributes, and information such as a wiring prohibited area generated in step S18 in FIG. It includes both the macro block layout information 8 for the basic logic circuit such as an AND gate and a flip-flop, terminal information such as terminal positions and attributes, and information such as a wiring prohibited area.

【0092】また回路ブロック遅延ライブラリ43は、
図2のステップS30で生成されたマクロブロック遅延
ライブラリ11と、基本論理回路の入力端子と出力端子
間の遅延を定義した基本論理回路遅延ライブラリの両方
を含んでいる。
Further, the circuit block delay library 43 includes:
It includes both the macroblock delay library 11 generated in step S30 of FIG. 2 and a basic logic circuit delay library that defines the delay between the input terminal and the output terminal of the basic logic circuit.

【0093】次に図4のステップS403において、ス
テップS402で生成された回路ブロックの配置情報を
参照して、マクロブロックや基本論理回路などの回路ブ
ロック間の概略配線を行い、この概略配線の結果が妥当
であれば回路ブロック間の詳細配線を行い、ステップS
404において、ステップS403で生成された詳細配
線の配線情報を参照して回路ブロック間の配線遅延を算
出する。
Next, in step S403 in FIG. 4, with reference to the arrangement information of the circuit blocks generated in step S402, general wiring between circuit blocks such as macro blocks and basic logic circuits is performed. If it is appropriate, detailed wiring between circuit blocks is performed, and step S
In 404, a wiring delay between circuit blocks is calculated with reference to the wiring information of the detailed wiring generated in step S403.

【0094】次にステップS405において、ステップ
S404で生成された配線遅延を参照して、次の2つの
編集処理を行う。
Next, in step S405, the following two editing processes are performed with reference to the wiring delay generated in step S404.

【0095】1)クロック制御回路の出力からマクロブ
ロックの仮想端子までの配線遅延を0とする。図6の例
では、エクスクルーシブOR510の出力からマクロブ
ロック55’の仮想端子に至る点線で示すパスの配線遅
延を0とする。これは、図6のエクスクルーシブOR5
10の出力と仮想端子間の配線遅延は、図3のエクスク
ルーシブOR311の出力から仮想端子312間の配線
遅延に対応し、この配線遅延は実質的に0であることか
らこのような処理を行う。
1) The wiring delay from the output of the clock control circuit to the virtual terminal of the macro block is set to 0. In the example of FIG. 6, the wiring delay of a path indicated by a dotted line from the output of the exclusive OR 510 to the virtual terminal of the macro block 55 'is set to 0. This is the exclusive OR5 in FIG.
The wiring delay between the output of the terminal 10 and the virtual terminal corresponds to the wiring delay between the output of the exclusive OR 311 and the virtual terminal 312 in FIG. 3, and since the wiring delay is substantially 0, such processing is performed.

【0096】2)図1のステップS14で生成されたク
ロック制御回路の入力配線遅延情報3と、図4のステッ
プS404で生成されたクロック制御回路の入力配線遅
延情報との差分であるクロック制御回路配線遅延差分値
を算出する。
2) The clock control circuit which is the difference between the input wiring delay information 3 of the clock control circuit generated in step S14 of FIG. 1 and the input wiring delay information of the clock control circuit generated in step S404 of FIG. Calculate the wiring delay difference value.

【0097】このクロック制御回路配線遅延差分値が最
終的には0となるようにクロック制御回路に入力する配
線の配線処理を行うことにより、図6に示す等価回路接
続情報に対応する等価回路図を用いてレイアウトするに
も関わらず、図5に示す回路接続情報に対応する回路図
を用いてレイアウトした場合の集積回路チップと、論理
的にもかつタイミング的にも等価な集積回路チップのレ
イアウトを生成することが可能となる。
By performing wiring processing of the wiring input to the clock control circuit so that the clock control circuit wiring delay difference value finally becomes 0, an equivalent circuit diagram corresponding to the equivalent circuit connection information shown in FIG. And a layout of an integrated circuit chip which is logically and timing equivalently laid out using a circuit diagram corresponding to the circuit connection information shown in FIG. it is possible to generate.

【0098】次にステップS406において、ステップ
S405で編集処理した配線遅延を用いてフリップフロ
ップ間のタイミング解析を行う。そしてステップS40
7において、ステップS406でのタイミング解析結果
を参照して、この解析結果にセットアップタイムエラー
やホールドタイムエラーなどのタイミングエラーが存在
するか否かについて判定し、タイミングエラーが存在す
ると判定された場合は、ステップS408でタイミング
を補正しタイミングエラーを解消するために、配線遅延
が大きい配線を駆動するためのバッファを追加挿入した
り、配線遅延が大きい配線が出力端子に接続している回
路ブロックを、この回路ブロックと機能が同一で駆動能
力が大きい回路ブロックに置き換えるなどの処理を行
う。
Next, in step S406, timing analysis between flip-flops is performed using the wiring delay edited in step S405. And step S40
In step 7, with reference to the timing analysis result in step S406, it is determined whether a timing error such as a setup time error or a hold time error exists in the analysis result. If it is determined that a timing error exists, In order to correct the timing in step S408 and eliminate the timing error, a buffer for driving a wiring with a large wiring delay is additionally inserted, or a circuit block in which the wiring with a large wiring delay is connected to the output terminal is Processing such as replacing the circuit block with a circuit block having the same function as the circuit block and having a large driving capability is performed.

【0099】次にステップS409で、タイミング補正
により必要となった配線の変更を行い、続いてステップ
S410で変更した配線部の配線遅延を算出する。そし
てステップS406に戻って、ステップS410で算出
された配線遅延を用いて再度タイミング解析を行い、全
てのタイミングエラーが解消するまでステップS406
〜ステップS410の処理を繰り返す。
Next, in step S409, the wiring required by the timing correction is changed, and then, in step S410, the wiring delay of the changed wiring part is calculated. Then, returning to step S406, the timing analysis is performed again using the wiring delay calculated in step S410, and step S406 is performed until all timing errors are eliminated.
Step S410 is repeated.

【0100】こうしてステップS407で全てのタイミ
ングエラーが解消したと判定された場合は、ステップS
411において、ステップS401で生成された等価回
路接続情報からクロック制御回路とこれに接続する回路
接続情報とを削除する。
If it is determined in step S407 that all timing errors have been resolved, step S407 is executed.
In step 411, the clock control circuit and the circuit connection information connected thereto are deleted from the equivalent circuit connection information generated in step S401.

【0101】図6に示す例では、エクスクルーシブOR
510と、エクスクルーシブOR510の入力とノード
59及び組み合わせ回路58の出力とをそれぞれ接続す
る回路接続情報、さらにエクスクルーシブOR510の
出力と仮想端子とを接続する回路接続情報とを削除す
る。
In the example shown in FIG. 6, the exclusive OR
The circuit connection information for connecting the input of the exclusive OR 510 and the output of the node 59 and the combinational circuit 58, and the circuit connection information for connecting the output of the exclusive OR 510 and the virtual terminal are deleted.

【0102】次にステップS412において、ステップ
S411の処理としてオープンとなった端子間に回路接
続情報を発生させる。図6の例では、ノード59とマク
ロクロック入力端子間の回路接続情報、組み合わせ回路
58の出力とクロック選択端子間の回路接続情報とを発
生させる。そしてこの回路接続情報を基にして、ステッ
プS405で算出したクロック制御回路配線遅延差分値
を補償するように、クロック制御回路に接続する配線の
再配線処理を行う。
Next, in step S412, circuit connection information is generated between the terminals that have become open as the processing in step S411. In the example of FIG. 6, circuit connection information between the node 59 and the macro clock input terminal, and circuit connection information between the output of the combinational circuit 58 and the clock selection terminal are generated. Then, based on this circuit connection information, a rewiring process of the wiring connected to the clock control circuit is performed so as to compensate for the clock control circuit wiring delay difference value calculated in step S405.

【0103】例えばクロック制御回路配線遅延差分値
(「図1のマクロブロックのクロック制御回路の入力配
線遅延3−ステップS404で生成したクロック制御回
路の入力配線遅延」として定義した場合)が+1nse
cだったとすれば、ステップS412で生成する再配線
による配線遅延がステップS404で生成したクロック
制御回路の入力配線遅延よりも1nsec大きくなるよ
うに再配線する。
For example, the clock control circuit wiring delay difference value (defined as “input wiring delay of clock control circuit of macroblock in FIG. 1—input wiring delay of clock control circuit generated in step S404”) is +1 ns.
If it is c, rewiring is performed such that the wiring delay due to the rewiring generated in step S412 is 1 nsec greater than the input wiring delay of the clock control circuit generated in step S404.

【0104】これにより、図6に示す等価回路接続情報
に対応する等価回路図を用いたレイアウトは、図5に示
す回路接続情報に対応する回路図を用いてレイアウトし
た場合の集積回路チップのレイアウトと、論理的にもか
つタイミング的にも等価となる。
As a result, the layout using the equivalent circuit diagram corresponding to the equivalent circuit connection information shown in FIG. 6 is the layout of the integrated circuit chip when the layout is laid out using the circuit diagram corresponding to the circuit connection information shown in FIG. Is logically and timingly equivalent.

【0105】最後にステップS413でマスクを制作す
るための集積回路のレイアウトパターン44を出力す
る。
Finally, in step S413, the layout pattern 44 of the integrated circuit for producing a mask is output.

【0106】なお図1のステップS13において、マク
ロブロック内部にクロック制御回路が存在しない場合処
理完了としたが、処理を停止せずに図11に示すマクロ
ブロックの遅延ライブラリ作成方法と同様な方法で処理
を継続することも可能である。こうして得られた遅延ラ
イブラリと、図1,2に示す本発明により得られた遅延
ライブラリとを集積回路上に混在させ図4に示す設計フ
ローに従って設計することが出来る。
In step S13 of FIG. 1, the processing is completed when there is no clock control circuit inside the macro block. However, the processing is not stopped, and a method similar to the macro block delay library creating method shown in FIG. 11 is used. it is also possible to continue the process. The delay library obtained in this way and the delay library obtained by the present invention shown in FIGS. 1 and 2 can be mixed on an integrated circuit and designed according to the design flow shown in FIG.

【0107】次に本発明による論理シミュレーション用
マクロブロックライブラリを用いたタイミングドリブン
レイアウト設計方法の第2の実施の形態について図7に
示すフローチャートを参照して説明する。
Next, a second embodiment of the timing driven layout design method using the macro block library for logic simulation according to the present invention will be described with reference to the flowchart shown in FIG.

【0108】本発明の処理フローは図7のステップS4
12’において、ステップS411の処理としてオープ
ンとなった端子間に回路接続情報を発生させ、この回路
接続情報を基にして、ステップS405で算出したクロ
ック制御回路配線遅延差分値を考慮しないで、クロック
制御回路に接続する配線の再配線処理を行う。
The processing flow of the present invention corresponds to step S4 in FIG.
In step 12 ′, circuit connection information is generated between the terminals that have been opened as the processing in step S411, and based on this circuit connection information, the clock control circuit wiring delay difference value calculated in step S405 is not considered, and the clock connection information is generated. A rewiring process of the wiring connected to the control circuit is performed.

【0109】そしてタイミングの補償を行うために、図
4に示す処理フローのステップS412とステップS4
13との間に、図7に示す再配線部の配線遅延を算出す
るステップS414の処理と、図4のステップS406
〜ステップS410の処理と同様にタイミング解析及び
タイミング補正を行うステップS415の処理とを設け
ている。
In order to compensate for the timing, steps S412 and S4 of the processing flow shown in FIG.
13, the processing of step S414 for calculating the wiring delay of the rewiring unit shown in FIG. 7, and the processing of step S406 in FIG.
Step S415 for performing timing analysis and timing correction similarly to the processing of Step S410.

【0110】本実施の形態による論理シミュレーション
用マクロブロックライブラリを用いたタイミングドリブ
ンレイアウト設計方法は、ステップS412’において
クロック制御回路配線遅延差分値を考慮しないで、クロ
ック制御回路に接続する配線の再配線処理を行うので、
設計の処理が早いという特徴がある。
In the timing driven layout design method using the logic simulation macro block library according to the present embodiment, the wiring connected to the clock control circuit is re-wired without considering the clock control circuit wiring delay difference value in step S412 '. Processing,
The feature is that the design process is fast.

【0111】なお同期化出力回路は、フリップフロップ
から構成されるとして説明したがラッチまたはレジスタ
で構成しても良い。またエクスクルーシブORは、エク
スクルーシブNORであっても本発明は同様に適用でき
る。
Although the synchronizing output circuit has been described as being composed of a flip-flop, it may be composed of a latch or a register. Further, the present invention can be similarly applied even when the exclusive OR is an exclusive NOR.

【0112】また本発明の論理シミュレーション用マク
ロブロックライブラリの作成方法及びレイアウト設計方
法より設計した集積回路チップには、回路としては動作
しないクロック制御回路がマクロブロックの近くに配置
されることになるが、クロック制御回路の面積が小さい
ので、このクロック制御回路による集積回路チップ面積
の増加は殆どない。また回路修正などでマクロブロック
の近くに小ゲートが必要となった場合、このクロック制
御回路を用いて配線工程から変更することで対応できる
という利点もある。
A clock control circuit which does not operate as a circuit is arranged near a macro block on an integrated circuit chip designed by the method of preparing a macro block library for logic simulation and the layout design method of the present invention. Since the area of the clock control circuit is small, the area of the integrated circuit chip hardly increases due to the clock control circuit. In addition, when a small gate is required near a macro block due to a circuit modification or the like, there is an advantage that the clock control circuit can be used to change from a wiring process to cope with the problem.

【0113】[0113]

【発明の効果】以上説明したように本発明による論理シ
ミュレーション用マクロブロックライブラリの作成方法
及びレイアウト設計方法は、外部からクロック信号を入
力するマクロクロック入力端子と同期化出力フリップフ
ロップなどの同期化出力回路との間に論理回路が挿入さ
れているマクロブロックに対して、過剰なマージンを含
むことなく適切な遅延時間を設定することが可能であ
る。
As described above, the method of creating a macro block library for logic simulation and the method of layout design according to the present invention provide a macro clock input terminal for inputting a clock signal from the outside and a synchronization output such as a synchronization output flip-flop. It is possible to set an appropriate delay time for a macro block in which a logic circuit is inserted between the circuit and the macro block without including an excessive margin.

【0114】また本発明による論理シミュレーション用
マクロブロックライブラリの作成方法では高精度の遅延
時間を設定することができ、このため本発明による論理
シミュレーション用マクロブロックライブラリを用いて
高速動作を行う集積回路を実現することが出来る。
Further, the method for creating a macroblock library for logic simulation according to the present invention can set a highly accurate delay time. Therefore, an integrated circuit that performs high-speed operation using the macroblock library for logic simulation according to the present invention can be provided. Can be realized.

【0115】さらに、タイミングエラーを容易に解消し
設計期間を大幅に短縮することが可能である。実際に従
来の設計方法では2週間以上かかってもタイミングエラ
ーが解消しなかった集積回路の設計において、本発明の
論理シミュレーション用マクロブロックライブラリの作
成方法及びレイアウト設計方法に従って設計したとこ
ろ、1日でタイミング条件を満足することが出来た。
Further, it is possible to easily eliminate the timing error and greatly reduce the design period. Actually, in the design of an integrated circuit in which the timing error did not disappear even if it took more than two weeks in the conventional design method, the design was performed in accordance with the method of creating the macro block library for logic simulation and the layout design method of the present invention. The timing condition was satisfied.

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

【図1】図2と共に本発明による論理シミュレーション
用マクロブロックライブラリの作成方法を示すフローチ
ャートである。
1 is a flowchart illustrating a method of creating a macro block library for the logic simulation according to the present invention in conjunction with FIG.

【図2】図1と共に本発明による論理シミュレーション
用マクロブロックライブラリの作成方法を示すフローチ
ャートである。
FIG. 2 is a flowchart showing a method of creating a macroblock library for logic simulation according to the present invention, together with FIG.

【図3】本発明による論理シミュレーション用マクロブ
ロックライブラリの作成方法を説明するための同期化出
力回路を有するマクロブロックの回路図の一例である。
FIG. 3 is an example of a circuit diagram of a macro block having a synchronization output circuit for explaining a method of creating a macro block library for logic simulation according to the present invention.

【図4】本発明による論理シミュレーション用マクロブ
ロックライブラリを用いたレイアウト設計方法の第1の
実施の形態を示すフローチャートである。
FIG. 4 is a flowchart showing a first embodiment of a layout design method using a logic simulation macro block library according to the present invention.

【図5】本発明のレイアウト設計方法を説明するための
集積回路の部分回路図である。
FIG. 5 is a partial circuit diagram of an integrated circuit for explaining a layout design method of the present invention.

【図6】図4のステップS401で生成した等価回路接
続情報に対応した等価回路図、すなわち図5の回路と論
理的に等価な等価回路図である。
6 is an equivalent circuit diagram corresponding to the equivalent circuit connection information generated in step S401 in FIG. 4, that is, an equivalent circuit diagram that is logically equivalent to the circuit in FIG.

【図7】本発明による論理シミュレーション用マクロブ
ロックライブラリを用いたレイアウト設計方法の第2の
実施の形態を示すフローチャートである。
FIG. 7 is a flowchart illustrating a layout design method using a logic simulation macro block library according to a second embodiment of the present invention;

【図8】TDL設計方法の第1の従来例を表すフローチ
ャートである。
FIG. 8 is a flowchart illustrating a first conventional example of a TDL design method.

【図9】TDL設計方法の第1の従来例を説明するため
のマクロブロックの回路図である。
FIG. 9 is a circuit diagram of a macro block for explaining a first conventional example of a TDL design method.

【図10】図8のステップS810で生成したマクロブ
ロックの回路図である。
FIG. 10 is a circuit diagram of the macro block generated in step S810 of FIG.

【図11】TDL設計方法の第2の従来例に用いるマク
ロブロックの遅延ライブラリ作成方法を示すフローチャ
ートである。
11 is a flowchart showing a delay library creation method of macroblocks used in the second conventional example of TDL design method.

【図12】TDL設計方法の第2の従来例に用いるマク
ロブロックの遅延ライブラリ作成方法を説明するための
マクロブロックの回路図である。
FIG. 12 is a circuit diagram of a macro block for explaining a method of creating a macro block delay library used in a second conventional example of a TDL design method.

【図13】TDL設計方法の第2の従来例に用いるマク
ロブロックの遅延ライブラリ作成方法を説明するための
マクロブロックの回路図であり、同期化出力回路のクロ
ック入力端子にクロック制御回路が接続されているマク
ロブロックの回路図である。
FIG. 13 is a circuit diagram of a macro block for explaining a method of creating a delay library of the macro block used in the second conventional example of the TDL design method, wherein a clock control circuit is connected to a clock input terminal of a synchronization output circuit; FIG. 3 is a circuit diagram of a macro block in operation.

【図14】TDL設計方法の第2の従来例におけるタイ
ミングマージンに関する問題点を説明するための図13
に示すマクロブロックのタイミングチャートである。
[14] The second conventional example for explaining a problem regarding the timing margin in view of the TDL design method 13
6 is a timing chart of the macroblock shown in FIG.

【図15】マクロブロック配線遅延情報の一例である。FIG. 15 is an example of macroblock wiring delay information.

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

1,111 マクロブロック内回路接続情報 2,112 マクロブロック配線遅延情報 3 クロック制御回路の入力配線遅延情報 4 クロック制御回路関連情報を編集した配線情報 5 クロック制御回路関連情報を編集したマクロブロ
ック内回路接続情報 6 クロック制御回路の回路接続情報 7 マクロブロックレイアウト情報 8 自動レイアウト用マクロブロックレイアウト情報 9、113 マクロブロック内部の遅延ライブラリ 10,114 クロック遅延値ファイル 11,115 マクロブロック遅延ライブラリ 31,32,51,52 データ入力端子 33,131 クロック選択端子 34,91,120,132 マクロクロック入力端
子 35〜38,56,58,93,94,121〜124
組み合わせ回路 39,310,92,95,125,126,134,
135 フリップフロップ 133,311,510 エクスクルーシブOR 312 仮想端子 313 同期化出力回路 41,81 集積回路の回路接続情報 42,82 自動レイアウト用回路ブロックレイアウ
ト情報 43,83 回路ブロック遅延ライブラリ 44、45,84 集積回路のレイアウトパターン 53 外部クロック入力端子 54,OUT1,OUT2,96、98 出力端子 55,55’ 同期化出力回路を内蔵したマクロブロ
ック 59 ノード 90 マクロブロック 97、910 クロック入力端子 99 データ入力端子 101 バッファ A,B,C 回路ブロック P1〜P4 端子
1,111 Macroblock circuit connection information 2,112 Macroblock wiring delay information 3 Clock control circuit input wiring delay information 4 Clock control circuit related information edited wiring information 5 Clock control circuit related information edited macroblock circuit Connection information 6 Circuit connection information of clock control circuit 7 Macro block layout information 8 Macro block layout information for automatic layout 9, 113 Delay library inside macro block 10, 114 Clock delay value file 11, 115 Macro block delay library 31, 32, 51, 52 Data input terminal 33, 131 Clock selection terminal 34, 91, 120, 132 Macro clock input terminal 35-38, 56, 58, 93, 94, 121-124
Combination circuits 39, 310, 92, 95, 125, 126, 134,
135 Flip-flop 133, 311, 510 Exclusive OR 312 Virtual terminal 313 Synchronization output circuit 41, 81 Circuit connection information of integrated circuit 42, 82 Circuit block layout information for automatic layout 43, 83 Circuit block delay library 44, 45, 84 Integrated Circuit layout pattern 53 External clock input terminal 54, OUT1, OUT2, 96, 98 Output terminal 55, 55 'Macroblock with built-in synchronization output circuit 59 Node 90 Macroblock 97, 910 Clock input terminal 99 Data input terminal 101 Buffer A, B, C circuit blocks P1 to P4 terminals

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B046 AA08 BA06 JA05 KA06 5F064 BB03 BB04 BB06 BB19 BB28 DD02 DD10 DD25 EE02 EE42 EE43 EE47 EE54 EE57 HH06 HH09 HH12  ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5B046 AA08 BA06 JA05 KA06 5F064 BB03 BB04 BB06 BB19 BB28 DD02 DD10 DD25 EE02 EE42 EE43 EE47 EE54 EE57 HH06 HH09 HH12

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 マクロクロック端子から入力したマクロ
クロック信号を論理演算して内部クロック信号を生成す
るクロック制御回路と、前記内部クロック信号に同期し
てデータをマクロ出力端子に出力する同期化出力回路と
を含むマクロブロックを備えた集積回路を論理シミュレ
ーションする際に用いられ、前記マクロクロック端子を
含む前記マクロブロックのマクロ入力端子と前記マクロ
出力端子間の遅延を定義した論理シミュレーション用マ
クロブロックライブラリの作成方法において、 前記マクロブロック内部の回路接続情報から前記クロッ
ク制御回路とこのクロック制御回路の入力端子に接続す
る回路接続情報とを削除し、前記クロック制御回路の出
力端子に仮想端子を設け、前記仮想端子と前記内部クロ
ック信号が入力する前記同期化出力回路の入力クロック
端子間の配線遅延と、前記同期化出力回路が前記内部ク
ロック信号に応答して前記同期化出力回路の出力端子に
データを出力するまでの遅延時間と、前記同期化出力回
路の出力端子と前記マクロ出力端子間の配線遅延時間と
を加算して、この加算値を前記マクロブロックの遅延ラ
イブラリを構成する遅延情報として用いることを特徴と
する論理シミュレーション用マクロブロックライブラリ
の作成方法。
1. A clock control circuit for performing a logical operation on a macro clock signal input from a macro clock terminal to generate an internal clock signal, and a synchronization output circuit for outputting data to a macro output terminal in synchronization with the internal clock signal A logic simulation macro block library which is used when performing a logic simulation of an integrated circuit having a macro block including a macro block and defines a delay between a macro input terminal and a macro output terminal of the macro block including the macro clock terminal. In the creation method, the clock control circuit and circuit connection information connected to an input terminal of the clock control circuit are deleted from circuit connection information inside the macro block, and a virtual terminal is provided at an output terminal of the clock control circuit. A virtual terminal and the same input to which the internal clock signal is input; A wiring delay between input clock terminals of the synchronized output circuit, a delay time until the synchronized output circuit outputs data to an output terminal of the synchronized output circuit in response to the internal clock signal, and Generating a macro block library for logic simulation, wherein an output terminal of a circuit and a wiring delay time between the macro output terminals are added, and the added value is used as delay information constituting a delay library of the macro block. Method.
【請求項2】 マクロクロック端子から入力したマクロ
クロック信号を論理演算して内部クロック信号を生成す
るクロック制御回路と、前記内部クロック信号に同期し
てデータをマクロ出力端子に出力する同期化出力回路と
を含むマクロブロックを備えた集積回路を論理シミュレ
ーションする際に用いられ、前記マクロクロック端子を
含む前記マクロブロックのマクロ入力端子と前記マクロ
出力端子間の遅延を定義した論理シミュレーション用マ
クロブロックライブラリの作成方法において、 前記マクロブロック内部の回路接続情報と前記マクロブ
ロック内部の配線遅延情報とを入力し、これらの情報を
含む配線遅延情報付き回路接続情報を算出する第1のス
テップと、 前記クロック制御回路の入力端子に接続する配線の配線
遅延を算出する第2のステップと、 前記第1のステップで算出された配線遅延情報付き回路
接続情報と前記第2のステップで算出された配線遅延と
を参照して、前記クロック制御回路に接続する配線遅延
を含まない配線遅延情報を算出する第3のステップと、 前記マクロブロック内部の回路接続情報から、前記クロ
ック制御回路とこのクロック制御回路の入力端子に接続
する回路接続情報とを削除し、前記クロック制御回路の
出力に仮想端子を設けた回路接続情報を生成する第4の
ステップと、 前記第3のステップで生成した配線遅延情報と、前記第
4のステップで生成した回路接続情報の両方を含む配線
遅延情報付き回路接続情報を生成する第5のステップ
と、 前記仮想端子と前記内部クロック信号が入力する前記同
期化出力回路の入力クロック端子間の配線遅延と、前記
同期化出力回路の出力端子と前記マクロ出力端子間の配
線遅延を算出し、これらの配線遅延と前記同期化出力回
路が前記内部クロック信号に応答して前記同期化出力回
路の出力端子にデータを出力するまでの遅延時間とを加
算した加算値を算出する第6のステップとを備え、 前記加算値を前記マクロブロックの遅延ライブラリを構
成する遅延情報として用いることを特徴とする論理シミ
ュレーション用マクロブロックライブラリの作成方法。
2. A clock control circuit for performing a logical operation on a macro clock signal input from a macro clock terminal to generate an internal clock signal, and a synchronization output circuit for outputting data to a macro output terminal in synchronization with the internal clock signal A logic simulation macro block library which is used when performing a logic simulation of an integrated circuit having a macro block including a macro block and defines a delay between a macro input terminal and a macro output terminal of the macro block including the macro clock terminal. In the creation method, a first step of inputting circuit connection information inside the macro block and wiring delay information inside the macro block, and calculating circuit connection information with wiring delay information including these information, Calculate the wiring delay of the wiring connected to the input terminal of the circuit Step 2 and a wiring delay to be connected to the clock control circuit with reference to the circuit connection information with wiring delay information calculated in the first step and the wiring delay calculated in the second step. A third step of calculating no wiring delay information; and removing the clock control circuit and circuit connection information connected to an input terminal of the clock control circuit from the circuit connection information inside the macro block, A fourth step of generating circuit connection information in which virtual terminals are provided at the output of the second step, and a wiring delay including both the wiring delay information generated in the third step and the circuit connection information generated in the fourth step. A fifth step of generating circuit connection information with information; and between the virtual terminal and the input clock terminal of the synchronization output circuit to which the internal clock signal is input. A wiring delay and a wiring delay between the output terminal of the synchronization output circuit and the macro output terminal are calculated, and these wiring delays and the synchronization output circuit of the synchronization output circuit respond to the internal clock signal. A sixth step of calculating an added value by adding a delay time until data is output to an output terminal, wherein the added value is used as delay information constituting a delay library of the macro block. How to create a macro block library for logic simulation.
【請求項3】 前記マクロブロックのレイアウト情報を
参照し、このレイアウト情報に前記仮想端子を配置し、
自動レイアウト用のマクロブロックレイアウト情報を生
成することを特徴とする請求項1又は2記載の論理シミ
ュレーション用マクロブロックライブラリの作成方法。
3. Referring to layout information of the macro block, arranging the virtual terminal in the layout information,
3. The method for creating a macroblock library for logic simulation according to claim 1, wherein macroblock layout information for automatic layout is generated.
【請求項4】 前記同期化出力回路は、フリップフロッ
プまたはラッチあるいはレジスタであることをことを特
徴とする請求項1又は2記載の論理シミュレーション用
マクロブロックライブラリの作成方法。
4. The method according to claim 1, wherein the synchronization output circuit is a flip-flop, a latch, or a register.
【請求項5】 前記クロック制御回路は、制御信号によ
り前記マクロクロック信号の位相をシフトして前記内部
クロック信号を生成する請求項1又は2記載の論理シミ
ュレーション用マクロブロックライブラリの作成方法。
5. The method according to claim 1, wherein the clock control circuit shifts the phase of the macro clock signal by a control signal to generate the internal clock signal.
【請求項6】 前記クロック制御回路は、エクスクルー
シブORまたはエクスクルーシブNORである請求項1
又は2記載の論理シミュレーション用マクロブロックラ
イブラリの作成方法。
6. The clock control circuit is an exclusive OR or an exclusive NOR.
Or the method of creating the logic simulation macroblock library description.
【請求項7】 マクロクロック端子から入力したマクロ
クロック信号を論理演算して内部クロック信号を生成す
るクロック制御回路と、前記内部クロック信号に同期し
てデータをマクロ出力端子に出力する同期化出力回路と
を含むマクロブロックを備えた集積回路のレイアウト方
法において、 前記マクロブロック内部の回路接続情報から前記クロッ
ク制御回路とこのクロック制御回路の入力端子に接続す
る回路接続情報とを削除し前記クロック制御回路の出力
端子に仮想端子を設け、前記仮想端子と前記内部クロッ
ク信号が入力する前記同期化出力回路の入力クロック端
子間の配線遅延と、前記同期化出力回路が前記内部クロ
ック信号に応答して前記同期化出力回路の出力端子にデ
ータを出力するまでの遅延時間と、前記同期化出力回路
の出力端子と前記マクロ出力端子間の配線遅延時間とを
加算して、この加算値を遅延情報として有する編集マク
ロブロックを生成する第1のステップと、 前記集積回路の回路接続情報と前記クロック制御回路の
回路接続情報とを入力し、前記マクロブロックを前記編
集マクロブロックに置換し、前記クロック制御回路を前
記編集マクロブロックの外側に設け、前記編集マクロブ
ロックの仮想端子と前記クロック制御回路の出力端子
間、及び前記マクロブロック内の前記クロック制御回路
の入力端子が接続した前記集積回路の端子と前記クロッ
ク制御回路の入力端子間とを、それぞれ接続して前記集
積回路の回路接続情報と等価な等価回路接続情報を接続
する第2のステップと、 前記等価回路接続情報を参照して、この等価回路接続情
報を構成する回路ブロックを配置し、回路ブロック間の
配線を行う第3のステップと、 前記第2のステップで生成した配線の配線遅延を算出す
る第4のステップと、 前記マクロブロック内に配置された前記クロック制御回
路の入力配線の配線遅延を算出する第5のステップと、 前記第4のステップで生成した配線遅延と前記第5のス
テップで生成した配線遅延との遅延差を算出する第6の
ステップと、 前記等価回路接続情報と前記第4のステップで生成した
前記配線遅延とを参照して前記集積回路のタイミング解
析を行う第7のステップと、 前記第7のステップにおけるタイミング解析結果が所定
の判定基準を満足した場合、前記等価回路接続情報から
前記クロック制御回路とこれに接続する回路接続情報と
を削除する第8のステップと、 前記第8のステップで得られた回路接続情報でオープン
となった回路接続情報を接続し、前記集積回路の回路接
続情報と等価な回路接続情報を生成し、この回路接続情
報と前記遅延差とを参照して、新たに生成される配線遅
延が前記遅延差を打ち消すように前記回路ブロック間の
配線を行う第9のステップと、を備えるレイアウト設計
方法。
7. A clock control circuit for performing a logical operation on a macro clock signal input from a macro clock terminal to generate an internal clock signal, and a synchronization output circuit for outputting data to a macro output terminal in synchronization with the internal clock signal DOO in the layout method of producing an integrated circuit comprising a macroblock comprising, remove the circuit connection information which connects the circuit connection information inside the macro block to an input terminal of the clock control circuit and the clock control circuit and the clock control circuit A virtual terminal is provided at an output terminal of the synchronization terminal, and a wiring delay between an input clock terminal of the synchronization output circuit to which the virtual terminal and the internal clock signal are inputted, and the synchronization output circuit responds to the internal clock signal, The delay time until data is output to the output terminal of the synchronization output circuit and the output time of the synchronization output circuit A first step of adding a wiring delay time between a terminal and the macro output terminal to generate an edited macro block having the added value as delay information; and a circuit connection information of the integrated circuit and a clock control circuit. Inputting circuit connection information, replacing the macro block with the edit macro block, providing the clock control circuit outside the edit macro block, between the virtual terminal of the edit macro block and the output terminal of the clock control circuit. And an equivalent circuit equivalent to the circuit connection information of the integrated circuit by connecting a terminal of the integrated circuit to which an input terminal of the clock control circuit in the macro block is connected and an input terminal of the clock control circuit. A second step of connecting the connection information; and referring to the equivalent circuit connection information, forming the equivalent circuit connection information. A third step of arranging road blocks and wiring between circuit blocks; a fourth step of calculating a wiring delay of the wiring generated in the second step; and the clock arranged in the macro block. A fifth step of calculating a wiring delay of the input wiring of the control circuit; and a sixth step of calculating a delay difference between the wiring delay generated in the fourth step and the wiring delay generated in the fifth step. A seventh step of performing timing analysis of the integrated circuit by referring to the equivalent circuit connection information and the wiring delay generated in the fourth step; and determining whether a result of the timing analysis in the seventh step is predetermined. If it satisfied the criteria, and an eighth step of deleting the circuit connection information for connecting to said clock control circuit from the equivalent circuit connection information, the eighth Connect the open circuit connection information with the circuit connection information obtained in the step, generate circuit connection information equivalent to the circuit connection information of the integrated circuit, and refer to this circuit connection information and the delay difference. A ninth step of performing wiring between the circuit blocks so that a newly generated wiring delay cancels the delay difference.
JP2000394797A 2000-12-26 2000-12-26 Method of forming macro-block library for logical simulation and layout designing method Pending JP2002197140A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000394797A JP2002197140A (en) 2000-12-26 2000-12-26 Method of forming macro-block library for logical simulation and layout designing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000394797A JP2002197140A (en) 2000-12-26 2000-12-26 Method of forming macro-block library for logical simulation and layout designing method

Publications (1)

Publication Number Publication Date
JP2002197140A true JP2002197140A (en) 2002-07-12

Family

ID=18860363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000394797A Pending JP2002197140A (en) 2000-12-26 2000-12-26 Method of forming macro-block library for logical simulation and layout designing method

Country Status (1)

Country Link
JP (1) JP2002197140A (en)

Similar Documents

Publication Publication Date Title
KR101591376B1 (en) Synchronous to asynchronous logic conversion
US8516422B1 (en) Method and mechanism for implementing electronic designs having power information specifications background
US7254796B2 (en) Method for synthesizing domino logic circuits cross reference to related patent application using partition
US10467365B1 (en) Systems and methods for calculating common clock path pessimism for hierarchical timing analysis in an electronic design
US6425115B1 (en) Area efficient delay circuits
JP2001357090A (en) Method and device for synthesizing logic
US20100253409A1 (en) Clock generation system and clock dividing module
JP2006343151A (en) Scanning test circuit and method for arranging the same
Simatic et al. A practical framework for specification, verification, and design of self-timed pipelines
KR100279389B1 (en) Synchronous delay circuit
Quinton et al. Practical asynchronous interconnect network design
JPH0645879A (en) Flip flop
JP2002197140A (en) Method of forming macro-block library for logical simulation and layout designing method
JP2007072995A (en) Layout device, automatic arrangement and wiring method and semiconductor integrated circuit manufacturing method
Casu et al. Throughput-driven floorplanning with wire pipelining
JP3651659B2 (en) Latch circuit with enable
JP2000286342A (en) Computer-readable memory medium, method of design for semiconductor integrated circuit, and method of design for semiconductor device
JP3080037B2 (en) How to create a logic simulation model
JP2004192227A (en) Layout method for semiconductor integrated circuit and layout system for semiconductor integrated circuit
JP3139750B2 (en) Timing adjustment method
JP3561661B2 (en) Semiconductor integrated circuit and method of designing semiconductor integrated circuit
JP2000305965A (en) Method and device for clock tree synthesis
JPH11259555A (en) Design method for macro
JP2000082090A (en) Flip-flop circuit with delay function, latch circuit with delay function, designing method for sequence circuit, automatic designing device for clock signal wire of semiconductor integrated circuit, and clock signal wire of semiconductor integrated circuit
JP2000208632A (en) Design method for semiconductor integrated circuit

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050317

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050329

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050726