JPH09232436A - Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit - Google Patents

Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit

Info

Publication number
JPH09232436A
JPH09232436A JP8034888A JP3488896A JPH09232436A JP H09232436 A JPH09232436 A JP H09232436A JP 8034888 A JP8034888 A JP 8034888A JP 3488896 A JP3488896 A JP 3488896A JP H09232436 A JPH09232436 A JP H09232436A
Authority
JP
Japan
Prior art keywords
block
cells
cell
blocks
wiring
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.)
Withdrawn
Application number
JP8034888A
Other languages
Japanese (ja)
Inventor
Hideki Iwamura
英樹 岩村
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP8034888A priority Critical patent/JPH09232436A/en
Publication of JPH09232436A publication Critical patent/JPH09232436A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

PROBLEM TO BE SOLVED: To shorten the design period of a semiconductor integrated circuit. SOLUTION: In a logic synthetic operation, a circuit at a gate level is generated in units of blocks. After that, (1) the size of every block is decided on the basis of the total area of a cell inside the block or on the basis of the number of gates, and the block in the size is arranged inside a floor. Then, (2) the cell is arranged approximately inside the block, and cells at the inside and the outside of the block are wired globally. Then, (3) the number of interconnections between blocks, a part in which a wiring density is at a set value or higher and a critical path passing a plurality of blocks in a semiconductor integrated circuit are displayed. Then, (4) when it is judged that a correction is required by looking at a displayed result, a floor planning operation to be returned to (2) is performed after every block is resized or moved. The length of a shortest route connecting centers of gravity of different blocks by using a line parallel to the side of the floor is found as a virtual wiring length between cells in the different blocks so as to be used for a wiring adjustment. The result of the floor planning operation is used to design a layout.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、論理合成方法及び
装置並びに半導体集積回路設計方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a logic synthesis method and device, and a semiconductor integrated circuit design method.

【0002】[0002]

【従来の技術】半導体集積回路の自動設計では、論理合
成ツールに対しHDL(ハードウエア記述言語)で記述
された半導体集積回路の機能及び構造の仕様を入力する
ことにより、ゲートレベルの回路が生成される。生成さ
れた回路は、自動配置配線ツールを用いてレイアウト設
計される。
2. Description of the Related Art In automatic design of a semiconductor integrated circuit, a gate-level circuit is generated by inputting the function and structure specifications of the semiconductor integrated circuit described in HDL (Hardware Description Language) to a logic synthesis tool. To be done. The generated circuit is layout-designed using an automatic placement and routing tool.

【0003】レイアウト設計後のタイミングエラーを低
減するために、論理合成ツールにおいて、セル間仮想配
線容量とセルの入力容量との和に基づきセルの駆動入力
が不足するかどうかを自動的に判断し、セル駆動能力が
不足すると判断した場合にはセル間にドライバセルを挿
入している。レイアウト設計前であるので、図8(A)
に示すような関係によりセル間仮想配線容量が見積もら
れる。横軸はブロックのゲートサイズであり、縦軸はブ
ロック内でのセル間の仮想配線容量である。例えば図8
(B)に示すブロックA及びBのゲート数がそれぞれN
A及びNBであるとし、それぞれのブロック内でのセル
間の仮想配線容量が仮想配線容量C1であるとする。こ
の場合、ブロックA内のセル1とブロックB内のセル2
(セル1及び2のブロック内での位置は未定)との間の
配線3の仮想容量は、図8(A)において、ゲート数N
S=NA+NBのブロックS内でのセル間の仮想配線容
量C2と見積もられる。配線3の仮想配線容量C2とセ
ル2の入力容量Ciとの和C2+Ciがセル1の駆動能
力を越えている場合には、配線3にドライバセルが挿入
される。また、設計段階で指定された端子間の信号伝播
遅延時間が許容範囲に収まるように、バッファセルが挿
入され又はセルのサイズ(セルの入力容量)が変更され
る。
In order to reduce the timing error after layout design, the logic synthesis tool automatically determines whether or not the drive input of the cell is insufficient based on the sum of the virtual wiring capacitance between cells and the input capacitance of the cell. If it is determined that the cell driving ability is insufficient, a driver cell is inserted between the cells. Since it is before the layout design, FIG. 8 (A)
The inter-cell virtual wiring capacity can be estimated from the relationship shown in. The horizontal axis represents the gate size of the block, and the vertical axis represents the virtual wiring capacity between cells in the block. For example, FIG.
The number of gates of blocks A and B shown in FIG.
A and NB, and the virtual wiring capacitance between cells in each block is the virtual wiring capacitance C1. In this case, cell 1 in block A and cell 2 in block B
The virtual capacitance of the wiring 3 between (the positions of the cells 1 and 2 in the block are not determined) is N gates in FIG.
It is estimated as the virtual wiring capacity C2 between cells in the block S of S = NA + NB. When the sum C2 + Ci of the virtual wiring capacitance C2 of the wiring 3 and the input capacitance Ci of the cell 2 exceeds the driving capability of the cell 1, the driver cell is inserted in the wiring 3. Further, the buffer cell is inserted or the cell size (cell input capacitance) is changed so that the signal propagation delay time between the terminals designated at the design stage falls within the allowable range.

【0004】このような処理により、レイアウト設計後
のタイミングエラーが低減される。
By such processing, the timing error after layout design is reduced.

【0005】[0005]

【発明が解決しようとする課題】しかし、回路素子の微
細化により、容量比=(セル間配線容量)/(セル入力
容量)が大きくなり、配線幅が0.5μmのLSIでこ
の比がほぼ1になる。この容量比が大きいほど、(仮想
配線容量)−(実配線容量)が大きくなって、仮想配線
容量が不正確になり、レイアウト設計後のタイミングエ
ラーが増加する。ある部分のタイミングエラーを無くす
ために回路を部分的に修正すると、他の部分のタイミン
グに影響する。このため、HDLで記述された回路構造
の修正(タイミング調整用ドライブセル挿入)、論理合
成及びレイアウト設計を繰り返し行う必要があり、設計
期間が長くなる原因となる。
However, due to miniaturization of circuit elements, the capacitance ratio = (inter-cell wiring capacitance) / (cell input capacitance) becomes large, and this ratio is almost the same in an LSI having a wiring width of 0.5 μm. Becomes 1. The larger the capacitance ratio, the larger (virtual wiring capacitance)-(real wiring capacitance), the virtual wiring capacitance becomes inaccurate, and the timing error after layout design increases. Partially modifying the circuit to eliminate timing errors in one part affects the timing in another part. Therefore, it is necessary to repeatedly modify the circuit structure described in HDL (insert drive cells for timing adjustment), logic synthesis, and layout design, which causes a long design period.

【0006】本発明の目的は、このような問題点に鑑
み、半導体集積回路の設計期間を短縮することが可能な
論理合成方法及び装置並びに半導体集積回路設計方法を
提供するとにある。
In view of such problems, an object of the present invention is to provide a logic synthesizing method and device and a semiconductor integrated circuit designing method which can shorten the design period of the semiconductor integrated circuit.

【0007】[0007]

【課題を解決するための手段及びその作用効果】本発明
は、ハードウエア記述言語(HDL)で記述された半導
体集積回路の仕様を入力とし、ブロック単位でゲートレ
ベルの回路を生成し、仮想配線容量とセルの入力容量と
の和に基づいてセルの駆動能力が不足するかどうかを判
断し、セル駆動能力が不足すると判断した場合にセル間
にドライバセルを挿入する論理合成方法であって、該ゲ
ートレベルの回路を生成した後、該判断の前において、
フロアプラニングを行って該ブロックの配置を決定し、
チップ領域に相当するフロアの辺に平行な線で異なるブ
ロックの重心間を結んだ最短経路の長さを、異なるブロ
ックのセル間の仮想配線長として求め、異なるブロック
のセル間の該仮想配線容量を該仮想配線長に基づいて求
める。
According to the present invention, a specification of a semiconductor integrated circuit described in a hardware description language (HDL) is used as an input, a gate level circuit is generated in block units, and virtual wiring is performed. A logic synthesis method of determining whether or not the driving capability of the cell is insufficient based on the sum of the capacitance and the input capacitance of the cell, and inserting a driver cell between the cells when determining that the cell driving capability is insufficient. After generating the gate level circuit and before the determination,
Perform floor planning to determine the placement of the block,
The length of the shortest path connecting the centers of gravity of different blocks with a line parallel to the side of the floor corresponding to the chip area is obtained as the virtual wiring length between cells of different blocks, and the virtual wiring capacity between cells of different blocks Is calculated based on the virtual wiring length.

【0008】本発明によれば、論理合成段階でのフロア
プラニングにより、異なるブロックのセル間の仮想配線
容量が従来よりも正確になるので、タイミング調整がよ
り正確に行われ、レイアウト設計後のタイミングエラー
数が低減されて、HDLで記述された回路仕様の修正、
論理合成及びレイアウト設計を繰り返し行う回数が低減
され、設計期間が短縮されるという効果を奏する。
According to the present invention, the floor wiring at the logic synthesis stage makes the virtual wiring capacitance between cells of different blocks more accurate than before, so that the timing adjustment is performed more accurately and the timing after the layout design is performed. The number of errors has been reduced and the circuit specifications written in HDL have been corrected.
The number of times of repeating logic synthesis and layout design is reduced, and the design period is shortened.

【0009】また、同じ理由により、挿入されるドライ
バセルの数が従来よりも低減されるので、信号伝播遅延
時間が低減してシステムクロック周波数上昇が可能にな
るという効果を奏する。本発明の第1態様では、上記フ
ロアプラニングにおいて、(1)ブロック内のセルの総
面積又はゲート数に基づいてブロックのサイズを決定
し、該サイズのブロックをフロア内に配置し、(2)ブ
ロック内でセルを概略配置し、ブロック内外のセル間を
グローバル配線し、(3)グローバル配線結果を表示装
置に表示させ、(4)表示結果を見て修正要と判断した
場合には、ブロックのリサイズ又は移動を行った後に
(2)へ戻る。
Further, for the same reason, the number of driver cells to be inserted is reduced as compared with the prior art, so that the signal propagation delay time is reduced and the system clock frequency can be increased. In the first aspect of the present invention, in the floor planning described above, (1) the size of the block is determined based on the total area of the cells or the number of gates in the block, and the block having the size is arranged in the floor, (2) When cells are roughly arranged in a block, global wiring is performed between cells inside and outside the block, (3) global wiring result is displayed on a display device, and (4) when it is determined that correction is necessary by looking at the display result, the block is After resizing or moving, the procedure returns to (2).

【0010】本発明の第2態様では、上記(3)におい
て、ブロック間の配線数と、配線密度が設定値以上の部
分とを表示させる。この第2態様によれば、ブロックの
リサイズ及び移動の判断が容易になるという効果を奏す
る。本発明の第3態様では、上記(3)において、上記
半導体集積回路の、複数ブロックを通るクリティカルパ
スも表示させる。
In the second aspect of the present invention, in the above (3), the number of wirings between blocks and the portion where the wiring density is equal to or more than the set value are displayed. According to the second aspect, it is possible to easily determine whether to resize or move the block. In the third aspect of the present invention, in (3) above, the critical path passing through a plurality of blocks of the semiconductor integrated circuit is also displayed.

【0011】この第3態様によれば、クリティカルパス
が短くなるようにブロックを移動させることができるの
で、システムクロック上昇が可能になるという効果を奏
する。本発明の第4態様は、上記いずれかの論理合成方
法を実施するためのコンピュータを備えた論理合成装置
である。
According to the third aspect, the block can be moved so that the critical path is shortened, so that the system clock can be raised. A fourth aspect of the present invention is a logic synthesizing apparatus including a computer for implementing any one of the above logic synthesizing methods.

【0012】本発明の第5態様は、上記いずれかの論理
合成方法を実施した後、上記フロアプラニングの結果に
基づいてレイアウト設計を行う半導体集積回路設計方法
である。この方法では、論理合成段階で行ったフロアプ
ラニングの結果をレイアウト設計で用いるので、論理合
成とレイアウト設計の全体としては複雑化が避けられ、
上記発明の効果が得られるので、意義が大である。
A fifth aspect of the present invention is a semiconductor integrated circuit designing method for carrying out any one of the above logic synthesis methods, and then performing a layout design based on the result of the floor planning. In this method, since the result of the floor planning performed in the logic synthesis stage is used in the layout design, the logic synthesis and the layout design can be prevented from becoming complicated,
Since the effects of the above invention can be obtained, the significance is great.

【0013】[0013]

【発明の実施の形態】以下、図面に基づいて本発明の一
実施形態を説明する。図1は、半導体集積回路用CAD
システムの概略構成を示す。このシステムは、論理合成
装置10と、シミュレーション&レイアウト設計装置2
0とからなる。論理合成装置10は、コンピュータ11
と、外部記憶装置12〜14と、手操作入力装置15
と、表示装置16とを備えた一般的なコンピュータシス
テムである。外部記憶装置12、13及び14は機能的
に分けて記載したものであり、外部記憶装置12にはH
DLで記述された設計データが格納され、外部記憶装置
13には半導体集積回路で使用されるセルの種類、サイ
ズ、マクロセルの構造及びセルのパターンが格納されて
いる。セルの種類には、基本セルと、基本セルを組み合
わせたマクロセルとがあり、基本セルは例えばナンドゲ
ート、ノアゲート、インバータ及びフリップフロップで
ある。セルの種類、サイズ及びマクロセルの構造はコン
ピュータ11で用いられ、セルのパターンはシミュレー
ション&レイアウト設計装置20で用いられる。外部記
憶装置14には、コンピュータ11の計算結果であるネ
ットリスト及びフロアプラニングデータが格納され、こ
れらはシミュレーション&レイアウト設計装置20で用
いられる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a CAD for a semiconductor integrated circuit.
1 shows a schematic configuration of a system. This system includes a logic synthesis device 10 and a simulation & layout design device 2
It consists of 0. The logic synthesizer 10 is a computer 11
And external storage devices 12 to 14, and manual operation input device 15
And a display device 16, which is a general computer system. The external storage devices 12, 13 and 14 are functionally divided and described.
The design data described in DL is stored, and the external storage device 13 stores the cell type, size, macrocell structure, and cell pattern used in the semiconductor integrated circuit. There are two types of cells, a basic cell and a macro cell that is a combination of basic cells. The basic cells are, for example, a NAND gate, a NOR gate, an inverter, and a flip-flop. The cell type, size, and macrocell structure are used in the computer 11, and the cell pattern is used in the simulation & layout design apparatus 20. The external storage device 14 stores a netlist and floorplanning data, which are calculation results of the computer 11, and these are used by the simulation & layout design device 20.

【0014】論理合成装置10による処理の概略を図2
に示す。従来の論理合成では、ステップ30〜36、3
8及び39の処理が行われていたが、本案ではさらに、
ステップ36とステップ38との間にステップ37の処
理が行われる。以下、括弧内は図中のステップ識別番号
である。 (30)HDL、例えばVerirog HDLで記述されたL
SI設計データを、外部記憶装置12から読み込む。
The outline of the processing by the logic synthesizer 10 is shown in FIG.
Shown in In conventional logic synthesis, steps 30-36, 3
Although the processing of 8 and 39 was performed, in this proposal,
The process of step 37 is performed between step 36 and step 38. Hereinafter, the numbers in parentheses are step identification numbers in the drawings. (30) L described in HDL, for example, Verirog HDL
The SI design data is read from the external storage device 12.

【0015】(31)この設計データを翻訳して、機能
仕様部分は論理式に変換する。 (32)外部記憶装置13を参照して、マクロセルを基
本セルで展開する。 (33)チップ周辺部のI/Oバッファを手操作入力に
より割り当てる。 (34)構成が簡単になるように、論理式を最適化す
る。 (35)テクノロジマッピングを行う。すなわち、論理
式に対応して、外部記憶装置13に格納された基本セル
を割り付け、また、局所的に冗長なゲートや配線を削除
することにより、面積及び遅延時間を低減するという最
適化を行う。
(31) This design data is translated, and the functional specification portion is converted into a logical expression. (32) Referring to the external storage device 13, the macro cell is expanded by the basic cell. (33) Allocate the I / O buffer in the peripheral area of the chip by manual input. (34) The logical expression is optimized so that the configuration becomes simple. (35) Perform technology mapping. That is, the optimization is performed by allocating the basic cells stored in the external storage device 13 in accordance with the logical expression and locally deleting redundant gates and wirings to reduce the area and the delay time. .

【0016】(36)ブロック間の最適化を行う。例え
ばブロックAのインバータの出力端がブロックBのイン
バータの入力端に接続されている場合、冗長な両インバ
ータを削除する。ただし、タイミング調整のためにHD
Lで構造記述されているドライバセル(バッファゲー
ト)はそのままにしておく。 (37)従来、図1のシミュレーション&レイアウト設
計装置20によるレイアウト設計で行われていたフロア
プラニングを、この段階で行う。このフロアプラニング
では、従来行われていなかったブロック間仮想配線容量
の算出及びクリティカルパスの表示が含まれている。ス
テップ37の処理の詳細を図3に示す。
(36) Optimization between blocks is performed. For example, when the output terminal of the inverter of block A is connected to the input terminal of the inverter of block B, both redundant inverters are deleted. However, HD for timing adjustment
The driver cell (buffer gate) whose structure is described by L is left as it is. (37) The floor planning, which has been conventionally performed in the layout design by the simulation & layout designing apparatus 20 of FIG. 1, is performed at this stage. This floor planning includes calculation of inter-block virtual wiring capacity and display of a critical path, which have not been performed conventionally. Details of the process of step 37 are shown in FIG.

【0017】(370)外部記憶装置13に格納されて
いるセルサイズデータを用いて、各ブロックのサイズを
見積もる。例えば、ブロック内のセルの面積の総和を求
め、これを1.4倍したものをブロック面積とし、簡単
化のためにブロックが正方形であるとしてその一辺の長
さを求める。ブロック面積は、ブロック内ゲート数を定
数倍したものであってもよい。このブロックを、チップ
領域に相当するフロア上に配置する。
(370) Using the cell size data stored in the external storage device 13, the size of each block is estimated. For example, the total area of the cells in the block is calculated, and a value obtained by multiplying this by 1.4 is used as the block area. For simplification, the length of one side is calculated assuming that the block is a square. The block area may be a constant multiple of the number of gates in the block. This block is placed on the floor corresponding to the chip area.

【0018】(371)ブロック間の仮想配線長を求め
る。例えば図4に示す如く、フロア40にブロックA〜
Dが配置されているとき、ブロックBの重心とブロック
Aの重心との間をフロア40の辺に平行な直線で結んだ
経路の長さを、ブロックB内のセルとブロックD内のセ
ルとの間の仮想配線長として求める。この仮想配線長
は、例えば図中の点線を通る経路の長さと同一であり、
同一長さの各種経路が考えられる。他のブロック間につ
いても同様である。
(371) The virtual wiring length between blocks is calculated. For example, as shown in FIG.
When D is arranged, the length of the path connecting the center of gravity of block B and the center of gravity of block A with a straight line parallel to the side of floor 40 is defined as the cell in block B and the cell in block D. Calculated as the virtual wiring length between This virtual wiring length is, for example, the same as the length of the route passing through the dotted line in the figure,
Various routes of the same length are possible. The same applies to other blocks.

【0019】(372)各ブロック内でセルを概略配置
する。この概略配置では、例えばセル間の部分的重なり
を無視するというふうに設計ルールを弱くし、その替わ
りに、グリッド間隔を実配置の場合よりも大きくする。
ブロック内外のセル間を、グローバル配線する。 (373)配線結果を、図5(A)、(B)及び図6に
示すように、図1の表示装置16に表示する。また、予
め指定された、半導体集積回路のクリティカルパスも表
示する。図5(A)は、ブロックiとブロックjの間の
配線数Nij(i及びjはブロックA〜Dのいずれか)
を示している。図5(B)は、配線密度が設定値以上の
混雑した部分にハッチングを付している。図6は、複数
ブロックを通るクリティカルパスB→D→A→Cを、ブ
ロックの重心を通る折れ線で示している。設計者は、こ
れらの表示を見て、修正の要否を判断する。
(372) The cells are roughly arranged in each block. In this schematic arrangement, the design rule is weakened, for example, by ignoring the partial overlap between cells, and instead, the grid spacing is made larger than in the actual arrangement.
Global wiring is performed between cells inside and outside the block. The (373) wiring result is displayed on the display device 16 of FIG. 1 as shown in FIGS. 5 (A), 5 (B) and 6. Further, the critical path of the semiconductor integrated circuit, which is designated in advance, is also displayed. FIG. 5A shows the number of wirings Nij between block i and block j (i and j are any of blocks A to D).
Is shown. In FIG. 5B, the congested portion where the wiring density is equal to or higher than the set value is hatched. FIG. 6 shows a critical path B → D → A → C passing through a plurality of blocks by a polygonal line passing through the center of gravity of the block. The designer judges the necessity of correction by looking at these displays.

【0020】(375)修正要と判断した場合には、配
線密度が設定値以上の部分を低減し、ブロック間の平均
配線長を短くし、かつ、クリティカルパスを短くするた
めに、例えば図7に示すようにブロックのサイズを変更
しまたはブロックを移動させる。クリティカルパスの折
れ線表示は、この変更及び移動に応じて変化する。図7
は、図6のブロックAとブロックDの位置を入れ替え、
ブロックA、C及びDの形状をそれぞれブロックA’、
C’及びD’に変更した場合を示す。
(375) When it is judged that the correction is necessary, in order to reduce the portion where the wiring density is the set value or more, shorten the average wiring length between blocks, and shorten the critical path, for example, FIG. Resize or move the block as shown in. The polygonal line display of the critical path changes according to this change and movement. Figure 7
Replaces the positions of block A and block D in FIG.
The shapes of blocks A, C, and D are changed to block A ′,
The case of changing to C'and D'is shown.

【0021】次に、上記ステップ371へ戻る。 (376)ステップ374で修正不要と判断した場合に
は、フロアプラニングデータ、すなわちブロックのサイ
ズ及び配置、ブロック内のセルの配置及びブロック内外
のセル間のグローバル配線のデータを出力し、図1の外
部記憶装置14に格納する。
Then, the process returns to step 371. (376) If it is determined that the correction is unnecessary in step 374, the floor planning data, that is, the size and arrangement of the block, the arrangement of the cells in the block, and the data of the global wiring between the cells inside and outside the block are output, and the data of FIG. It is stored in the external storage device 14.

【0022】(38)セル間配線容量とセルの入力容量
との和に基づいてタイミング調整を行う。すなわち、こ
の和がセルの駆動能力を越えている場合、駆動能力以下
になるようにセル間配線にドライバセルを挿入する。ま
た、予め指定された端子間の信号伝播遅延時間が許容範
囲に収まるように、該端子間にバッファセルを挿入し又
は該端子間に接続されているセルのサイズ(セルの入力
容量)を変更する。
(38) Timing adjustment is performed based on the sum of inter-cell wiring capacitance and cell input capacitance. That is, when this sum exceeds the driving capability of the cell, the driver cell is inserted into the inter-cell wiring so as to be less than the driving capability. Also, insert a buffer cell between the terminals or change the size of the cell connected between the terminals (input capacitance of the cell) so that the signal propagation delay time between the terminals specified in advance falls within the allowable range. To do.

【0023】例えば図8(B)について上述のように調
整する。但し、配線3のようなブロック間の仮想配線容
量は、図3のステップ371で求めた仮想配線長に定数
(単位長さの配線容量)を乗じた値を用いる。ブロック
サイズが小さい場合には図8(A)に示す関係で求めた
セル間仮想配線容量の誤差が比較的小さいので、同一ブ
ロック内のセル間の上記タイミング調整は、従来と同様
に、図8(A)に示す関係で求めたセル間仮想配線容量
を用いて行う。
For example, the adjustment is performed as described above with reference to FIG. However, as the virtual wiring capacity between blocks such as the wiring 3, a value obtained by multiplying the virtual wiring length obtained in step 371 of FIG. 3 by a constant (wiring capacity of unit length) is used. When the block size is small, the error in the inter-cell virtual wiring capacitance obtained from the relationship shown in FIG. 8A is relatively small. Therefore, the above timing adjustment between cells in the same block is performed as in the conventional case. The virtual wiring capacitance between cells obtained by the relationship shown in (A) is used.

【0024】(39)ネットリストを出力し、外部記憶
装置14に格納する。以上のような論理合成処理を行っ
た後、図1のシミュレーション&レイアウト設計装置2
0により、外部記憶装置14に格納されたネットリスト
に基づいてシミュレーションを行い、動作を確認する。
次に、このネットリスト、外部記憶装置14に格納され
たフロアプラニングデータ及び外部記憶装置13に格納
されたセルパターンデータに基づいて、セル配置及びセ
ル間配線を自動的に行うことにより、レイアウト設計す
る。フロアプラニングデータがあるので、このレイアウ
ト設計では、従来行われていたフロアプラニングを省略
することができる。次に、レイアウトパターンに基づい
たセル間遅延時間を算出し、これを用いて、より正確な
シミュレーションを行う。
(39) The netlist is output and stored in the external storage device 14. After performing the logic synthesis processing as described above, the simulation & layout design apparatus 2 of FIG.
With 0, simulation is performed based on the netlist stored in the external storage device 14, and the operation is confirmed.
Next, a layout design is performed by automatically performing cell placement and inter-cell wiring based on the netlist, floor planning data stored in the external storage device 14 and cell pattern data stored in the external storage device 13. To do. Since there is floor planning data, floor layout, which has been conventionally performed, can be omitted in this layout design. Next, an inter-cell delay time is calculated based on the layout pattern, and a more accurate simulation is performed using this.

【0025】本実施形態によれば、上記ステップ37で
のフロアプラニングにより、異なるブロックのセル間の
仮想配線容量が従来よりも正確になるので、タイミング
調整がより正確に行われ、レイアウト設計後のタイミン
グエラー数が低減されて、HDLで記述された回路仕様
の修正、論理合成及びレイアウト設計を繰り返し行う回
数が低減され、設計期間が短縮される。
According to this embodiment, since the virtual wiring capacitance between cells of different blocks is more accurate than before by the floor planning in step 37, the timing adjustment is performed more accurately, and the layout adjustment after the layout design is performed. The number of timing errors is reduced, the number of times of repeating the circuit specifications described in HDL, logic synthesis, and layout design is reduced, and the design period is shortened.

【0026】また、同じ理由により、挿入されるドライ
バセルの数が従来よりも低減され、信号伝播遅延時間が
低減してシステムクロック周波数上昇が可能になる。さ
らに、フロアプラニングにおいて、クリティカルパスを
表示し、クリティカルパスが短くなるようにブロックを
移動させることができるので、この点からもシステムク
ロック上昇が可能になる。
For the same reason, the number of driver cells to be inserted is reduced as compared with the conventional case, the signal propagation delay time is reduced, and the system clock frequency can be increased. Further, in the floor planning, the critical path can be displayed and the block can be moved so that the critical path becomes shorter. Therefore, the system clock can be increased also from this point.

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

【図1】半導体集積回路用CADシステムの概略図であ
る。
FIG. 1 is a schematic diagram of a CAD system for a semiconductor integrated circuit.

【図2】論理合成の概略フローチャートである。FIG. 2 is a schematic flowchart of logic synthesis.

【図3】図2のステップ37の詳細フローチャートであ
る。
FIG. 3 is a detailed flowchart of step 37 of FIG.

【図4】図3のステップ371の説明図である。FIG. 4 is an explanatory diagram of step 371 in FIG.

【図5】図3のステップ373の説明図である。5 is an explanatory diagram of step 373 in FIG. 3. FIG.

【図6】図3のステップ373の説明図である。FIG. 6 is an explanatory diagram of step 373 in FIG.

【図7】図3のステップ375の説明図である。FIG. 7 is an explanatory diagram of step 375 in FIG.

【図8】従来のセル間仮想配線容量の説明図である。FIG. 8 is an explanatory diagram of a conventional inter-cell virtual wiring capacity.

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

10 論理合成装置 20 シミュレーション&レイアウト設計装置 11 コンピュータ 12〜14 外部記憶装置 15 手操作入力装置 16 表示装置 40 フロア A〜D、S、A’、C’、D’ ブロック 10 Logic Synthesizer 20 Simulation & Layout Design Device 11 Computer 12-14 External Storage Device 15 Manual Operation Input Device 16 Display Device 40 Floor A-D, S, A ', C', D'Block

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 ハードウエア記述言語で記述された半導
体集積回路の仕様を入力とし、ブロック単位でゲートレ
ベルの回路を生成し、仮想配線容量とセルの入力容量と
の和に基づいてセルの駆動能力が不足するかどうかを判
断し、セル駆動能力が不足すると判断した場合にセル間
にドライバセルを挿入する論理合成方法であって、 該ゲートレベルの回路を生成した後、該判断の前におい
て、フロアプラニングを行って該ブロックの配置を決定
し、チップ領域に相当するフロアの辺に平行な線で異な
るブロックの重心間を結んだ最短経路の長さを、異なる
ブロックのセル間の仮想配線長として求め、 異なるブロックのセル間の該仮想配線容量を該仮想配線
長に基づいて求める、 ことを特徴とする論理合成方法。
1. A cell is driven on the basis of a sum of a virtual wiring capacitance and an input capacitance of a cell by inputting a specification of a semiconductor integrated circuit described in a hardware description language as an input and generating a circuit at a gate level in a block unit. A logic synthesis method of determining whether or not the capacity is insufficient, and inserting a driver cell between cells when it is determined that the cell driving capacity is insufficient, which is performed after the gate level circuit is generated and before the determination. , Floor placement is performed to determine the layout of the blocks, and the length of the shortest path connecting the centers of gravity of different blocks with a line parallel to the side of the floor corresponding to the chip area is used as the virtual wiring between cells of different blocks. And a virtual wiring capacity between cells of different blocks based on the virtual wiring length.
【請求項2】 上記フロアプラニングでは、 (1)ブロック内のセルの総面積又はゲート数に基づい
てブロックのサイズを決定し、該サイズのブロックをフ
ロア内に配置し、 (2)ブロック内でセルを概略配置し、ブロック内外の
セル間をグローバル配線し、 (3)グローバル配線結果を表示装置に表示させ、 (4)表示結果を見て修正要と判断した場合には、ブロ
ックのリサイズ又は移動を行った後に(2)へ戻る、 ことを特徴とする請求項1記載の論理合成方法。
2. In the floor planning, (1) the size of the block is determined based on the total area of the cells in the block or the number of gates, and the block having the size is arranged in the floor, and (2) in the block. When cells are roughly arranged, global wiring is performed between cells inside and outside the block, (3) global wiring result is displayed on a display device, and (4) when it is determined that correction is necessary by looking at the display result, the block is resized or The logic synthesis method according to claim 1, wherein the process returns to (2) after the move.
【請求項3】 上記(3)では、ブロック間の配線数
と、配線密度が設定値以上の部分とを表示させる、 ことを特徴とする請求項2記載の論理合成方法。
3. The logic synthesis method according to claim 2, wherein in (3), the number of wirings between blocks and a portion where the wiring density is equal to or more than a set value are displayed.
【請求項4】 上記(3)では、上記半導体集積回路
の、複数ブロックを通るクリティカルパスも表示させ
る、 ことを特徴とする請求項3記載の論理合成方法。
4. The logic synthesis method according to claim 3, wherein in (3), a critical path passing through a plurality of blocks of the semiconductor integrated circuit is also displayed.
【請求項5】 請求項1乃至4のいずれか1つに記載の
論理合成方法を実施するためのコンピュータを備えてい
る、 ことを特徴とする論理合成装置。
5. A logic synthesizing apparatus comprising a computer for carrying out the logic synthesizing method according to any one of claims 1 to 4.
【請求項6】 請求項1乃至4のいずれか1つに記載の
論理合成方法を実施した後、上記フロアプラニングの結
果に基づいてレイアウト設計を行う、 ことを特徴とする半導体集積回路設計方法。
6. A semiconductor integrated circuit design method, comprising: performing the logic synthesis method according to claim 1, and then performing layout design based on a result of the floor planning.
JP8034888A 1996-02-22 1996-02-22 Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit Withdrawn JPH09232436A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8034888A JPH09232436A (en) 1996-02-22 1996-02-22 Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8034888A JPH09232436A (en) 1996-02-22 1996-02-22 Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit

Publications (1)

Publication Number Publication Date
JPH09232436A true JPH09232436A (en) 1997-09-05

Family

ID=12426703

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8034888A Withdrawn JPH09232436A (en) 1996-02-22 1996-02-22 Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit

Country Status (1)

Country Link
JP (1) JPH09232436A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6425109B1 (en) 1999-07-23 2002-07-23 International Business Machines Corporation High level automatic core configuration
JP2006527429A (en) * 2003-05-30 2006-11-30 シンプリシティ・インコーポレーテッド Method and apparatus for automatic circuit design
JP2007272360A (en) * 2006-03-30 2007-10-18 Fujitsu Ltd Lsi function module arrangement device, arrangement program, arrangement method and semiconductor device manufacturing method
JP2009238129A (en) * 2008-03-28 2009-10-15 Hitachi Information & Communication Engineering Ltd Program and method for arrangement of semiconductor integrated circuit

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6425109B1 (en) 1999-07-23 2002-07-23 International Business Machines Corporation High level automatic core configuration
JP2006527429A (en) * 2003-05-30 2006-11-30 シンプリシティ・インコーポレーテッド Method and apparatus for automatic circuit design
US8151228B2 (en) 2003-05-30 2012-04-03 Synopsys, Inc. Method and apparatus for automated circuit design
US8990743B2 (en) 2003-05-30 2015-03-24 Synopsys, Inc. Automated circuit design
JP2007272360A (en) * 2006-03-30 2007-10-18 Fujitsu Ltd Lsi function module arrangement device, arrangement program, arrangement method and semiconductor device manufacturing method
JP2009238129A (en) * 2008-03-28 2009-10-15 Hitachi Information & Communication Engineering Ltd Program and method for arrangement of semiconductor integrated circuit

Similar Documents

Publication Publication Date Title
US7299442B2 (en) Probabilistic congestion prediction with partial blockages
US6966045B2 (en) Method and computer program product for estimating wire loads
CN107918694B (en) Method for reducing delay on an integrated circuit
US20180261590A1 (en) Integrated circuit and computer-implemented method of manufacturing the same
US20190251224A1 (en) Method for legalizing mixed-cell height standard cells of ic
JP2004502259A (en) Method and system for checking tiered metal terminations, surroundings, and exposure
US6397169B1 (en) Adaptive cell separation and circuit changes driven by maximum capacitance rules
US10424518B2 (en) Integrated circuit designing system and a method of manufacturing an integrated circuit
JP2006301961A (en) Automatic floor planning technique for semiconductor integrated circuit
US20020124230A1 (en) Timing optimization for integrated circuit design
US8281269B2 (en) Method of semiconductor integrated circuit device and program
JP2001188817A (en) Logic synthesizer, logic synthesis method, computer readable recording medium having logic synthesis program and stored therein method for manufacturing circuit
US5930147A (en) Design support system in which delay is estimated from HDL description
US6820048B1 (en) 4 point derating scheme for propagation delay and setup/hold time computation
KR20170094744A (en) Integrated circuit and computer-implemented method for manufacturing the same
US7076754B2 (en) Functional block design method and apparatus
JPWO2006137119A1 (en) Floor plan apparatus, floor plan program, and computer-readable recording medium recording the program
JP2005149273A (en) Apparatus and method for floor planning of semiconductor integrated circuit
JPH09232436A (en) Method and apparatus for logic synthesis, and method for designing semiconductor integrated circuit
JP4053969B2 (en) Semiconductor integrated circuit design apparatus and semiconductor integrated circuit design method
JP3107207B2 (en) Logic circuit improvement method and logic circuit improvement method
JP3433025B2 (en) Module placement method
JP2006338090A (en) Method and device for designing semiconductor integrated circuit
JP4139236B2 (en) Timing analysis program
US20100257500A1 (en) System for placing elements of semiconductor integrated circuit, method of placing elements thereon, and program for placing elements

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030506