JP2001358223A - Method of designing lsi circuit using hard blocks and method of restoring cell-placement information of hard blocks for lsi - Google Patents
Method of designing lsi circuit using hard blocks and method of restoring cell-placement information of hard blocks for lsiInfo
- Publication number
- JP2001358223A JP2001358223A JP2000181470A JP2000181470A JP2001358223A JP 2001358223 A JP2001358223 A JP 2001358223A JP 2000181470 A JP2000181470 A JP 2000181470A JP 2000181470 A JP2000181470 A JP 2000181470A JP 2001358223 A JP2001358223 A JP 2001358223A
- Authority
- JP
- Japan
- Prior art keywords
- cell
- block
- hard block
- hard
- cells
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、LSI回路設計方
法に関し、特に、ハードブロックとソフトブロックとを
混在させたLSI回路設計方法に関する。また、そのよ
うなLSI回路設計を行う際に必要となるLSI用ハー
ドブロックのセル配置情報復元方法に関する。The present invention relates to an LSI circuit design method, and more particularly, to an LSI circuit design method in which hard blocks and soft blocks are mixed. Further, the present invention relates to a method for restoring cell arrangement information of LSI hard blocks necessary for designing such an LSI circuit.
【0002】[0002]
【従来の技術】今日、様々な機器にLSIが組み込まれ
るようになり、多種多用のLSI回路の需要が今後も伸
び続けることが予想される。このようなLSI回路は、
通常、所定の基本論理動作を行う部品として用意された
種々のセルを組み合わせることによって設計されてい
る。LSI回路の設計手法としては、予め用意されたセ
ルライブラリの中から所望の機能をもったセルを選択
し、これらのセルについての結線関係を示すネットリス
トを作成し、自動配置配線ツールを利用して、各セルに
ついての配置および配線を自動的に行うことにより、半
導体基板上に形成される各層の幾何学的なレイアウトを
示すレイアウトデータを作成する手法が一般的である。
ただ、ある程度の規模をもったLSI回路を設計する場
合、セルライブラリ内のセルの組み合わせによって全回
路を設計するには、多大な労力が必要になる。このた
め、最近では、ある特定の機能を有する論理回路をハー
ドブロックとして予め用意しておき、このハードブロッ
クを既存の部品として利用することにより、LSI設計
を効率良く行う手法も一般的になりつつある。ハードブ
ロックの内部は、基本論理動作を行う多数のセルと、こ
のセルに電源を供給するための電源ラインと、セル間お
よびセルと電源ラインとの間を接続する配線と、が予め
組み込まれている。したがって、LSI回路の設計者
は、このハードブロックを特定の機能をもった部品とし
てそのまま利用することにより、当該特定の機能に関す
る回路部分の設計を省略することができる。2. Description of the Related Art Today, LSIs are being incorporated into various devices, and it is expected that demands for a variety of LSI circuits will continue to grow. Such an LSI circuit is
Usually, it is designed by combining various cells prepared as components for performing a predetermined basic logical operation. As an LSI circuit design method, a cell having a desired function is selected from a cell library prepared in advance, a netlist showing a connection relation of these cells is created, and an automatic placement and routing tool is used. In general, a method of automatically generating the layout data indicating the geometric layout of each layer formed on the semiconductor substrate by automatically arranging and wiring the cells.
However, when designing an LSI circuit having a certain scale, a great deal of labor is required to design all circuits by combining cells in a cell library. For this reason, recently, a method of efficiently designing an LSI by preparing a logic circuit having a specific function as a hard block in advance and using the hard block as an existing component is becoming common. is there. Inside the hard block, a large number of cells performing a basic logic operation, a power supply line for supplying power to the cells, and wiring connecting between the cells and between the cells and the power supply line are pre-installed. I have. Therefore, the designer of the LSI circuit can omit the design of the circuit portion related to the specific function by using the hard block as a component having the specific function as it is.
【0003】[0003]
【発明が解決しようとする課題】上述のように、既成の
ハードブロックを利用してLSI回路設計を行えば、個
々のセルを組み合わせて同じ機能ブロックを設計する場
合に比べて、労力を大幅に削減することができるという
メリットが得られる。しかしながら、従来の手法によ
り、ハードブロックを利用してLSI回路を設計する
と、LSIチップのサイズが大きくならざるを得ないと
いう問題がある。通常、個々の需要に応じたLSI回路
を設計する場合、既成のハードブロックによる論理機能
だけでは不十分であり、この既成のハードブロックを一
部に利用しながらも、設計者自身がセルを組み合わせる
ことによりソフトブロックを作成し、ハードブロックと
ソフトブロックとを混在させる形で、目的となるLSI
回路を設計することになる。ところが、ハードブロック
は、特定の論理機能を有する部品として、いわばブラッ
クボックスとして取り扱われるため、LSI回路のチッ
プ配線をハードブロック上に通過させるような設計を行
うことはできない。したがって、必要なチップ配線は、
すべてハードブロックの領域を迂回させるように配置す
る必要があり、ハードブロックの周囲に余分な配線領域
を確保する必要が生じる。また、ハードブロック内に
は、既に電源ラインが組み込まれているが、ハードブロ
ック内部はブラックボックスとして取り扱われるため、
このハードブロック内の電源ラインを、ソフトブロック
への電源供給に利用することはできない。したがって、
ハードブロック内の電源ラインと、ソフトブロック内の
電源ラインとをそれぞれ別個独立して設ける必要が生
じ、本来は必要のない無駄な電源ラインのための領域を
確保せざるを得ない。このような理由により、従来の手
法では、ハードブロックとして提供される既存のセル集
合と、設計者の意図に基づいて作成されるソフトブロッ
ク内のセル集合と、を混在させてLSI回路設計を行う
場合、LSIチップのサイズが増加してしまうという問
題が生じていた。As described above, when an LSI circuit is designed using an existing hard block, labor is greatly reduced as compared with the case where the same functional block is designed by combining individual cells. The advantage that reduction can be obtained is obtained. However, when an LSI circuit is designed using a hard block by a conventional method, there is a problem that the size of the LSI chip must be increased. In general, when designing an LSI circuit according to individual demands, it is not enough to use only the logic functions of the existing hard blocks, and the designer himself / herself combines the cells while partially using the existing hard blocks. In this way, the target LSI is created by creating a soft block and mixing the hard block and the soft block.
You will be designing a circuit. However, since the hard block is treated as a so-called black box as a component having a specific logical function, it is not possible to design such that the chip wiring of the LSI circuit passes over the hard block. Therefore, the necessary chip wiring is
All the blocks need to be arranged so as to bypass the area of the hard block, and it becomes necessary to secure an extra wiring area around the hard block. Also, the power line is already built in the hard block, but the inside of the hard block is treated as a black box,
The power line in the hard block cannot be used to supply power to the soft block. Therefore,
It is necessary to provide a power supply line in the hard block and a power supply line in the soft block separately and independently, and it is necessary to secure an area for a useless power supply line which is originally unnecessary. For this reason, in the conventional method, an LSI circuit design is performed by mixing an existing cell set provided as a hard block and a cell set in a soft block created based on a designer's intention. In this case, there has been a problem that the size of the LSI chip increases.
【0004】そこで本発明は、LSIチップサイズの増
加を招くことなしに、ハードブロックを用いたLSI回
路を設計することが可能なLSI回路設計方法を提供す
ることを目的とし、また、そのような目的を達成させる
ために、LSI用ハードブロックのセル配置情報を復元
する方法を提供することを目的とする。Accordingly, an object of the present invention is to provide an LSI circuit design method capable of designing an LSI circuit using a hard block without increasing the size of an LSI chip. In order to achieve the object, an object of the present invention is to provide a method for restoring cell arrangement information of an LSI hard block.
【0005】[0005]
【課題を解決するための手段】(1) 本発明の第1の態
様は、ハードブロックとして提供される既存のセル集合
と、設計者の意図に基づいて作成されるソフトブロック
内のセル集合と、を混在させてLSI回路設計を行うハ
ードブロックを用いたLSI回路設計方法において、設
計に利用するハードブロックについて、内部のセル配置
を示すセル配置情報を復元する段階と、復元されたセル
配置情報によって特定されるハードブロックセルと、設
計者の意図に基づいて選択されたソフトブロックセル
と、を用いて、対象となるLSI回路を設計する段階
と、ハードブロックセルおよびソフトブロックセルにつ
いての共通電源ラインを配置し、各セル間の配線および
各セルと共通電源ラインとの配線を行う段階と、を行う
ようにしたものである。Means for Solving the Problems (1) The first aspect of the present invention relates to an existing cell set provided as a hard block and a cell set in a soft block created based on a designer's intention. , An LSI circuit design method using a hard block for designing an LSI circuit by mixing the cell arrangement information, wherein the cell arrangement information indicating the internal cell arrangement is restored for the hard block used for the design, and the restored cell arrangement information Designing a target LSI circuit using the hard block cells specified by the above and the soft block cells selected based on the intention of the designer; and a common power supply for the hard block cells and the soft block cells. A step of arranging lines and performing wiring between cells and wiring between each cell and a common power supply line.
【0006】(2) 本発明の第2の態様は、上述の第1
の態様に係るハードブロックを用いたLSI回路設計方
法において、ハードブロックセルについては、復元され
たセル配置情報に基づくセル配置をそのまま利用し、自
動配置配線ツールを利用して配線を行い、ソフトブロッ
クセルについては、自動配置配線ツールを利用して、セ
ル配置の決定および配線を行うようにしたものである。(2) The second aspect of the present invention relates to the above-described first aspect.
In the LSI circuit designing method using the hard block according to the aspect, for the hard block cell, the cell arrangement based on the restored cell arrangement information is used as it is, and the wiring is performed by using the automatic arrangement and wiring tool, As for the cells, the cell arrangement is determined and the wiring is performed by using an automatic arrangement and wiring tool.
【0007】(3) 本発明の第3の態様は、上述の第2
の態様に係るハードブロックを用いたLSI回路設計方
法において、ハードブロックセルおよびソフトブロック
セルとして用いられている個々のセルの内容を示すセル
ライブラリと、これら各セルについての結線関係を示す
ネットリストと、ハードブロックについて復元されたセ
ル配置情報と、を自動配置配線ツールに与え、ハードブ
ロックセルについては、復元されたセル配置情報に基づ
いてセル配置を決定するとともに、セルライブラリおよ
びネットリストの情報に基づいて、自動配置配線ツール
に配線を行わせ、ソフトブロックセルについては、セル
ライブラリおよびネットリストの情報に基づいて、自動
配置配線ツールに配置および配線を行わせるようにした
ものである。(3) The third aspect of the present invention is the above-described second aspect.
In the method for designing an LSI circuit using hard blocks according to the aspect of the present invention, a cell library showing the contents of individual cells used as hard block cells and soft block cells, and a netlist showing a connection relationship of these cells are provided. Then, the cell placement information restored for the hard block is given to the automatic placement and routing tool, and for the hard block cells, the cell placement is determined based on the restored cell placement information and the cell library and netlist information are Based on the information of the cell library and the netlist, the automatic placement and routing tool performs the placement and routing of the soft block cells.
【0008】(4) 本発明の第4の態様は、上述の第1
〜3の態様に係るハードブロックを用いたLSI回路設
計方法において、ハードブロックセルとして用いられて
いる個々のセルの内容を示すセルライブラリと、ハード
ブロック内の幾何学的なレイアウトを示すハードブロッ
クレイアウトデータと、ハードブロックセルとして用い
られている各セルについての結線関係を示すハードブロ
ックネットリストと、を用意し、これらに基づいてハー
ドブロックについてのセル配置情報を復元するように
し、ハードブロックネットリスト上でのインスタンスに
対応したセルについてのセル配置情報が得られるように
したものである。(4) The fourth aspect of the present invention is the above-mentioned first aspect.
In the LSI circuit designing method using the hard blocks according to the first to third aspects, the cell library indicating the contents of each cell used as the hard block cell, and the hard block layout indicating the geometric layout in the hard block A data and a hard block netlist indicating a connection relation of each cell used as a hard block cell are prepared, and cell arrangement information on the hard block is restored based on the prepared data. The cell arrangement information for the cell corresponding to the above instance is obtained.
【0009】(5) 本発明の第5の態様は、複数のセル
と電源ラインと配線とが既に組み込まれたハードブロッ
クについて、内部のセル配置を示すセル配置情報を復元
するLSI用ハードブロックのセル配置情報復元方法に
おいて、ハードブロック内に用いられている個々のセル
の内容を示すセルライブラリと、ハードブロック内の幾
何学的なレイアウトを示すハードブロックレイアウトデ
ータと、ハードブロック内に用いられている各セルにつ
いての結線関係を示すハードブロックネットリストと、
を用意する段階と、用意したセルライブラリとハードブ
ロックレイアウトデータとに基づいて、個々のセルエリ
アを確定する段階と、用意したハードブロックレイアウ
トデータとハードブロックネットリストとに基づいて、
セル内トランジスタの座標を抽出する段階と、確定した
セルエリアと抽出したトランジスタ座標とを照合するこ
とにより、セル配置を探索し、ハードブロックについて
のセル配置情報を、ハードブロックネットリスト上での
インスタンスに対応したセルについての情報として復元
する段階と、を行うようにしたものである。(5) According to a fifth aspect of the present invention, for a hard block in which a plurality of cells, power supply lines, and wirings are already incorporated, an LSI hard block for restoring cell arrangement information indicating an internal cell arrangement is provided. In the cell arrangement information restoring method, a cell library indicating the contents of individual cells used in the hard block, hard block layout data indicating a geometric layout in the hard block, and a cell library used in the hard block. A hard block netlist showing the connection relationship for each cell
And, based on the prepared cell library and the hard block layout data, determining individual cell areas.Based on the prepared hard block layout data and the hard block netlist,
The cell arrangement is searched by extracting the coordinates of the transistor in the cell and comparing the determined cell area with the extracted transistor coordinates, and the cell arrangement information on the hard block is stored in an instance on the hard block netlist. And restoring the information as information about the cell corresponding to.
【0010】(6) 本発明の第6の態様は、上述の第5
の態様に係るLSI用ハードブロックのセル配置情報復
元方法において、個々のセルエリアを確定する段階を行
う際に、セルライブラリからセルサイズを抽出し、ハー
ドブロックレイアウトデータからセル位置を抽出し、抽
出したセルサイズおよびセル位置に基づいて、セルエリ
アの確定を行うようにしたものである。(6) The sixth aspect of the present invention is the above-mentioned fifth aspect.
In the method for restoring cell arrangement information of an LSI hard block according to the aspect, when the step of determining individual cell areas is performed, a cell size is extracted from a cell library, and a cell position is extracted and extracted from hard block layout data. The cell area is determined based on the cell size and cell position thus determined.
【0011】[0011]
【発明の実施の形態】以下、本発明を図示する実施形態
に基づいて説明する。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described below based on an embodiment shown in the drawings.
【0012】§1.本発明の基本概念 はじめに、本発明に係るハードブロックを用いたLSI
回路設計方法の基本概念を述べる。図1は、一般的なハ
ードブロック100の内部構成を示す平面図である。図
示のように、このハードブロック100は、多数のセル
Cの集合からなるハードブロックセル110と、数本の
導電層Lからなる電源ライン120と、各セル間および
電源ライン120と各セルとの間を接続する配線によっ
て構成されている。もっとも、このようなハードブロッ
ク100を利用する設計者の立場としては、このハード
ブロック100は、ある特定の論理動作を行う機能をも
った部品として利用できればよいので、図1に示すよう
な内部構成をいちいち認識する必要はない。したがっ
て、設計者は、このハードブロック100を、いわゆる
ブラックボックスとして取り扱えばよい。通常、個々の
需要に応じたLSI回路を設計する場合、既成のハード
ブロックを一部に利用しながら、設計者自身がセルを組
み合わせることによりソフトブロックを作成し、ハード
ブロックとソフトブロックとを混在させる形で、目的と
なるLSI回路を設計することになる。 §1. Basic concept of the present invention First, an LSI using a hard block according to the present invention
The basic concept of the circuit design method is described. FIG. 1 is a plan view showing the internal configuration of a general hard block 100. As shown in the figure, the hard block 100 is composed of a hard block cell 110 composed of a group of a large number of cells C, a power supply line 120 composed of several conductive layers L, and inter-cell and inter-cell power supply lines 120. It is composed of wiring connecting between them. However, from the standpoint of a designer using such a hard block 100, it is sufficient that the hard block 100 can be used as a component having a function of performing a specific logical operation. It is not necessary to recognize each time. Therefore, the designer may treat the hard block 100 as a so-called black box. Normally, when designing LSI circuits according to individual demands, designers themselves create soft blocks by combining cells while partially using existing hard blocks, and mix hard blocks and soft blocks. In this way, a target LSI circuit is designed.
【0013】図2は、このような形で設計を行ったLS
I回路の平面図である。図にハッチングを施して示す部
分がハードブロック100であり、ここではブラックボ
ックスとして取り扱われている。もちろん、ハードブロ
ック100には、いくつかの入力端子と出力端子とが用
意されており、設計者は、これら各端子に外部からの配
線を接続することにより、このハードブロック100を
利用することになる。一方、ハードブロック100の右
隣には、ソフトブロック200が配置されている。この
ソフトブロック200は、多数のセルCの集合からなる
ソフトブロックセル210と、数本の導電層Lからなる
電源ライン220と、各セル間および電源ライン220
と各セルとの間を接続する配線(図示省略)によって構
成されており、その基本構成は、ハードブロック100
と同様である。基本的な構成という観点からは、ハード
ブロック100とソフトブロック200とは実質的に同
じものである。両者の相違は、ハードブロック100
が、予め用意されたいわば既製品の回路ブロックである
のに対し、ソフトブロック200は、設計者の意図に基
づいて作成されたオーダメイドの回路ブロックである点
である。したがって、設計者は、ソフトブロック200
については、その内部を自分自身で設計する必要がある
が、ハードブロック100については、その内部に関知
する必要はないので、全回路をソフトブロックとして設
計した場合に比べて、労力を大幅に削減することができ
るというメリットが得られる。FIG. 2 shows an LS designed in this manner.
It is a top view of an I circuit. The portion shown with hatching in the figure is the hard block 100, which is treated here as a black box. Of course, the hard block 100 is provided with several input terminals and output terminals, and the designer can use the hard block 100 by connecting external wiring to these terminals. Become. On the other hand, on the right side of the hard block 100, a soft block 200 is arranged. The soft block 200 includes a soft block cell 210 composed of a group of a large number of cells C, a power supply line 220 composed of several conductive layers L, and a power supply line 220 between each cell.
And a wiring (not shown) for connecting between each cell and each cell.
Is the same as From the viewpoint of the basic configuration, the hard block 100 and the soft block 200 are substantially the same. The difference between the two is that the hard block 100
However, the soft block 200 is an off-the-shelf circuit block prepared in advance, whereas the soft block 200 is an order-made circuit block created based on the intention of the designer. Therefore, the designer can use the soft block 200
Needs to be designed by itself, but it is not necessary to be aware of the inside of the hard block 100, so the labor is greatly reduced compared to the case where all circuits are designed as soft blocks. The advantage is that it can be done.
【0014】しかしながら、図2に示すように、ハード
ブロック100とソフトブロック200とを混在させて
LSI回路を設計すると、LSIのチップ面積が増加し
てしまうという問題がある。その第1の理由は、ハード
ブロック100が、いわばブラックボックスとして取り
扱われるため、LSI回路のチップ配線をハードブロッ
ク上に通過させるような設計を行うことができなくなる
ためである。図2には、1つのハードブロック100と
1つのソフトブロック200とを隣接配置してなる単純
なモデルを示してあるが、実際のLSI回路では、より
多数のブロックが配置されることになる。したがって、
LSI回路全体の配線を考慮すると、特定のブロックを
跨ぐようないわゆるチップ配線が必要になる。このよう
なチップ配線は、ソフトブロック200内を通過させる
ように配置することは可能であるが、ブラックボックス
として取り扱われているハードブロック100内を通過
させることはできない。このため、図2に太線の矢印で
示すように、ソフトブロック200については、チップ
配線300を通過させるような設計を行うことができる
が、ハードブロック100については、チップ配線30
0を迂回させるような設計をせざるを得ない。結局、す
べてをソフトブロックとして設計した場合に比べ、ハー
ドブロックを利用すると、このチップ配線300を迂回
させるための領域だけ、チップ面積が増加してしまうこ
とになる。第2の理由は、電源ラインの共通化ができな
いためである。図1に示すように、ハードブロック10
0内には、既に電源ライン120が用意されている。し
かしながら、ハードブロック100はブラックボックス
として取り扱われるため、ソフトブロックセル210用
の電源供給を行うために、電源ライン120を利用する
ことはできない。そこで、図2に示すように、ソフトブ
ロック200内には、別個に電源ライン220を設けざ
るを得ない。物理的には、電源ライン120と電源ライ
ン220とが近接して配置されているため、両者を共通
化することが可能であっても、現実的には、そのような
共通化を行うことができず、本来は必要のない無駄な電
源ラインのための領域を確保せざるを得ない。これが、
チップ面積を増加させる第2の理由である。However, as shown in FIG. 2, when the LSI circuit is designed by mixing the hard block 100 and the soft block 200, there is a problem that the chip area of the LSI increases. The first reason is that since the hard block 100 is treated as a so-called black box, it is not possible to design such that the chip wiring of the LSI circuit passes over the hard block. FIG. 2 shows a simple model in which one hard block 100 and one soft block 200 are arranged adjacent to each other. However, in an actual LSI circuit, a larger number of blocks will be arranged. Therefore,
In consideration of the wiring of the entire LSI circuit, a so-called chip wiring that crosses a specific block is required. Such a chip wiring can be arranged so as to pass through the soft block 200, but cannot pass through the hard block 100 treated as a black box. For this reason, as shown by the thick arrows in FIG. 2, the soft block 200 can be designed to pass through the chip wiring 300, but the hard block 100 can be designed to pass through the chip wiring 30.
Design must be made to bypass 0. As a result, when a hard block is used as compared with a case where all are designed as soft blocks, the chip area is increased only by a region for bypassing the chip wiring 300. The second reason is that power supply lines cannot be shared. As shown in FIG.
In 0, the power supply line 120 is already prepared. However, since the hard block 100 is treated as a black box, the power supply line 120 cannot be used to supply power for the soft block cell 210. Therefore, as shown in FIG. 2, a separate power supply line 220 must be provided in the soft block 200. Physically, the power supply line 120 and the power supply line 220 are arranged close to each other. Therefore, even if both can be shared, it is practically possible to perform such commonization. It is impossible to secure a region for useless power lines that are not originally required. This is,
This is the second reason for increasing the chip area.
【0015】本発明は、このような従来の問題を解決す
るためになされたものであり、その基本概念は、利用す
るハードブロックの内部のセル構成を復元し、ハードブ
ロックセル110のセル配置を認識できる状態にし、こ
のハードブロックセル110とソフトブロックセル21
0とについて、改めて配線をしなおす点にある。図3
は、このような基本概念に基づいて設計されたLSI回
路の平面図である。図の右半分に示されているソフトブ
ロック200の構成は、図2に示す従来のLSI回路と
同様であるが、図の左半分に示されているハードブロッ
ク100の部分が異なっている。すなわち、図2に示す
従来のLSI回路では、ブラックボックスとしてのハー
ドブロック100が配置されていたのに対し、図3に示
す本発明に係るLSI回路では、ハードブロック100
の中から、ハードブロックセル110が抽出されて配置
されている。もともとのハードブロック100には、図
1に示すように、電源ライン120および配線(セル間
の配線や電源ライン120と各セルとの間の配線)が含
まれているが、本発明では、これら既存の電源ライン1
20および配線はすべて除去され、ハードブロックセル
110の部分だけが利用されることになる。The present invention has been made to solve such a conventional problem. The basic concept of the present invention is to restore the internal cell configuration of a hard block to be used and to change the cell arrangement of the hard block cells 110. The hard block cell 110 and the soft block cell 21
With respect to 0, the point is that the wiring is performed again. FIG.
Is a plan view of an LSI circuit designed based on such a basic concept. The configuration of the soft block 200 shown in the right half of the figure is the same as that of the conventional LSI circuit shown in FIG. 2, but is different from the hard block 100 shown in the left half of the figure. That is, in the conventional LSI circuit shown in FIG. 2, the hard block 100 as a black box is arranged, whereas in the LSI circuit according to the present invention shown in FIG.
Are extracted and arranged. As shown in FIG. 1, the original hard block 100 includes a power supply line 120 and wiring (wiring between cells or wiring between the power supply line 120 and each cell). Existing power line 1
20 and the wiring are all removed, and only the portion of the hard block cell 110 is used.
【0016】図3に示すハードブロックセル110は、
内部のセル構成が復元されているため、もはやブラック
ボックスとしての取り扱いを行う必要はなく、ソフトブ
ロックセル210と同等の取り扱いが可能になる。した
がって、図4の平面図に示すように、ソフトブロックセ
ル210上にも、ハードブロックセル110上にも、同
じようにチップ配線300を通過させて配置することが
できるようになる。また、ハードブロックセル110に
ついてのセル間の配線や電源ラインと各セルとの間の配
線も、新たにやり直しされるため、ソフトブロック20
0内の電源ライン220を共通の電源ラインとして、ソ
フトブロックセル210に対する配線とともにハードブ
ロックセル110に対する配線を行うことができるよう
になる。このため、もともとハードブロック100に含
まれていた電源ライン120は不要になる。かくして、
図2に示す従来のLSI回路では必要とされたチップ配
線300を迂回させるための領域や余分な電源ラインの
ための領域が、図4に示す本発明のLSI回路では不要
になり、LSI全体のチップ面積の増加を抑えることが
できる。The hard block cell 110 shown in FIG.
Since the internal cell configuration has been restored, it is no longer necessary to handle as a black box, and handling equivalent to that of the soft block cell 210 is possible. Therefore, as shown in the plan view of FIG. 4, the chip wiring 300 can be similarly arranged on the soft block cell 210 and the hard block cell 110 so as to pass therethrough. Also, the wiring between the hard block cells 110 and the wiring between the power supply line and each cell are newly redone, so that
By using the power supply line 220 in 0 as a common power supply line, wiring for the hard block cell 110 can be performed together with wiring for the soft block cell 210. For this reason, the power supply line 120 originally included in the hard block 100 becomes unnecessary. Thus,
A region for bypassing the chip wiring 300 and a region for an extra power supply line, which are required in the conventional LSI circuit shown in FIG. 2, are not required in the LSI circuit of the present invention shown in FIG. An increase in chip area can be suppressed.
【0017】結局、本発明の骨子は、ハードブロックと
して提供される既存のセル集合と、設計者の意図に基づ
いて作成されるソフトブロック内のセル集合と、を混在
させてLSI回路設計を行う場合に、利用するハードブ
ロック100について、内部のセル配置を示すセル配置
情報を復元する処理を行い、図3の例に示すように、復
元されたセル配置情報によって特定されるハードブロッ
クセル110と、設計者の意図に基づいて選択されたソ
フトブロックセル210と、を用いて、対象となるLS
I回路を設計するようにし、ハードブロックセル110
およびソフトブロックセル210についての共通電源ラ
イン220を配置し、各セル間の配線および各セルとこ
の共通電源ライン220との配線を行うようにする点に
ある。なお、通常、セルの配置や配線の作業は、自動配
置配線ツールを用いて行われる。したがって、実用上
は、図3に示す例において、ソフトブロックセル210
については、自動配置配線ツールを利用して、セル配置
の決定および配線を行うことになる。一方、ハードブロ
ックセル110については、復元されたセル配置情報に
基づくセル配置をそのまま利用し、配線についてのみ自
動配置配線ツールを利用することになる。After all, the gist of the present invention is to design an LSI circuit by mixing an existing cell set provided as a hard block and a cell set in a soft block created based on a designer's intention. In this case, for the hard block 100 to be used, a process of restoring cell arrangement information indicating an internal cell arrangement is performed, and as shown in the example of FIG. 3, the hard block cell 110 identified by the restored cell arrangement information And the soft block cell 210 selected based on the intention of the designer,
An I-circuit is designed, and the hard block cell 110
In addition, a common power supply line 220 for the soft block cell 210 is arranged, and wiring between cells and wiring between each cell and the common power supply line 220 are performed. Normally, the work of arranging and wiring cells is performed using an automatic arrangement and wiring tool. Therefore, in practice, in the example shown in FIG.
As for (2), the cell placement is determined and the wiring is performed by using the automatic placement and routing tool. On the other hand, for the hard block cells 110, the cell arrangement based on the restored cell arrangement information is used as it is, and only the wiring uses the automatic arrangement and wiring tool.
【0018】§2.本発明の具体的な実施形態で用いら
れるデータ 続いて、本発明のより具体的な実施形態を、図5の流れ
図を参照しながら説明する。既に述べたように、本発明
では、LSI回路設計に利用するハードブロックについ
て、内部のセル配置を示すセル配置情報を復元する処理
を行う必要がある。本明細書では、この復元処理の方法
を具体例に即して説明する。まず、図5の上段に示され
ているように、復元対象となるハードブロックについ
て、セルライブラリCLと、ハードブロックレイアウト
データLD(以下、誤解が生じない場合には、単にレイ
アウトデータLDと呼ぶ)と、ハードブロックネットリ
ストNL(以下、誤解が生じない場合には、単にネット
リストNLと呼ぶ)とを用意する。本発明では、これら
の各データを利用して、セル配置情報の復元を行うこと
になる。そこで、まず、これらの各データの内容につい
て簡単に説明しておく。 §2. Used in specific embodiments of the invention
Next, a more specific embodiment of the present invention will be described with reference to the flowchart of FIG. As described above, in the present invention, it is necessary to perform a process of restoring cell arrangement information indicating an internal cell arrangement for a hard block used for LSI circuit design. In this specification, a method of the restoration processing will be described with reference to a specific example. First, as shown in the upper part of FIG. 5, for a hard block to be restored, a cell library CL and hard block layout data LD (hereinafter, when no misunderstanding occurs, simply referred to as layout data LD) And a hard block netlist NL (hereinafter, simply referred to as a netlist NL when no misunderstanding occurs). In the present invention, the cell arrangement information is restored using these data. Therefore, first, the contents of these data will be briefly described.
【0019】セルライブラリCLは、個々のセルのそれ
ぞれについて、セル名、セルサイズ、入出力端子名、入
出力端子の位置を示すデータと、その内部構造を示すデ
ータとから構成されている。図6は、セルライブラリC
Lの具体例を示す図であり、図(a) ,(b) ,(c) は、そ
れぞれセル名「Cell-1」,「Cell-2」,「Cell-3」なる
各セルについての内容を示すデータとなっている。図6
では説明の便宜上、3種類のセルから構成されるセルラ
イブラリCLを示してあるが、実際には、多数のセルに
関するデータがセルライブラリCLとして用意される。
また、実際には、各セルの内部構造を示すデータも含ま
れているが、ここでは図示は省略する。この図6におい
て、たとえば、図6(a) に示されているデータにおける
第1行目の記述「CELL Cell-1 」は、このデータがセル
名「Cell-1」なるセルについてのデータであることを示
し、第2行目の記述「SIZE 60 100 」は、このセルのサ
イズが60×100 であることを示し、第3行目の記述「PI
N IN1 (20 40) 」は、このセルには(20 40) なる座標位
置に「IN1 」なる入力端子が存在することを示し、第4
行目の記述「PIN IN2 (40 40) 」は、このセルには(40
40) なる座標位置に「IN2 」なる入力端子が存在するこ
とを示し、第5行目の記述「PIN OUT (50 40) 」は、こ
のセルには(50 40) なる座標位置に「OUT1」なる出力端
子が存在することを示し、第6行目の記述「END 」は、
このセルに関する記述がこれで終わることを示してい
る。図6(b) ,(c) に示すデータも、同様に、「Cell-
2」,「Cell-3」なる各セルについての内容を示してい
る。The cell library CL includes, for each cell, data indicating the cell name, cell size, input / output terminal name, input / output terminal position, and data indicating the internal structure. FIG. 6 shows a cell library C
FIG. 4 is a diagram showing a specific example of L, and FIGS. (A), (b) and (c) show the contents of each cell having cell names “Cell-1”, “Cell-2” and “Cell-3”, respectively; The data indicates FIG.
Although a cell library CL composed of three types of cells is shown for convenience of description, actually, data on a large number of cells is prepared as the cell library CL.
Actually, data indicating the internal structure of each cell is also included, but illustration is omitted here. In FIG. 6, for example, the description “CELL Cell-1” on the first line in the data shown in FIG. 6A is data on a cell whose cell name is “Cell-1”. The description “SIZE 60 100” in the second line indicates that the size of this cell is 60 × 100, and the description “PI 60
“N IN1 (20 40)” indicates that this cell has an input terminal “IN1” at the coordinate position (20 40).
The description “PIN IN2 (40 40)” on the line indicates that (40
40) indicates that the input terminal “IN2” exists at the coordinate position “50”, and the description “PIN OUT (50 40)” on the fifth line indicates that “OUT1” is at the coordinate position (50 40) in this cell. The description "END" on the sixth line indicates that there is an output terminal
This indicates that the description of this cell ends here. Similarly, the data shown in FIGS.
2 ”and“ Cell-3 ”.
【0020】図7(a) ,(b) ,(c) は、図6(a) ,(b)
,(c) に示す3種類のセルのイメージを示す図であ
る。各端子の位置を示す座標値は、左下隅点を原点にと
ったときの二次元座標値となっている。なお、ここで
は、この原点の対角となる右上隅に短い斜線を施してセ
ルの向きを示してある。これらの各セルは、たとえば、
NANDゲートやインバータなどの基本論理動作を行う
論理素子に相当し、通常は、ハードブロックを構成する
ハードブロックセルとして用いられるとともに、ソフト
ブロックを構成するソフトブロックセルとしても利用さ
れる。前述したように、ハードブロックとソフトブロッ
クとは、本質的には同じ回路ブロックであり、セルライ
ブラリCLは、ハードブロックの設計とソフトブロック
の設計とに共通して利用される多数のセルを提供するこ
とになる。FIGS. 7 (a), (b) and (c) show FIGS. 6 (a) and 6 (b).
FIG. 4 is a diagram showing images of three types of cells shown in FIGS. The coordinate value indicating the position of each terminal is a two-dimensional coordinate value when the origin is set at the lower left corner point. Here, a short diagonal line is given to the upper right corner, which is a diagonal of the origin, to indicate the direction of the cell. Each of these cells, for example,
It corresponds to a logic element that performs a basic logic operation such as a NAND gate or an inverter, and is usually used as a hard block cell forming a hard block and also used as a soft block cell forming a soft block. As described above, the hard block and the soft block are essentially the same circuit block, and the cell library CL provides a large number of cells commonly used for the design of the hard block and the design of the soft block. Will do.
【0021】ハードブロックレイアウトデータLDは、
ハードブロック内の幾何学的なレイアウトを示すデータ
であり、たとえば、図8に示すようなデータから構成さ
れている。一般に、LSI回路は階層構造をもって定義
される。この図8に示す例(図8には、その一部のみが
示されている)の場合、第1行目の記述「STRUCTURETOP
」によって、最上位階層のブロック「TOP 」が定義さ
れている。第2行目以下の記述は、この最上位階層「TO
P 」に含まれる第2階層のブロックを示す記述である。
たとえば、第2行目の「Cell-1 (100,300) 180 FLIP 」
なる記述は、この第2階層のブロックの1つとして、セ
ル名「Cell-1」なるセルが、座標(100,300) なる位置
に、180 °回転させ、更に表裏反転させた状態で配置さ
れることを示している。同様に、第3〜5行目の記述
は、更に3つのセル「Cell-2」,「Cell-1」,「Cell-
3」の配置を示している(合計4個のセルが用いられて
いるが、「Cell-1」が2回用いられている)。なお、セ
ルの回転角度および表裏反転を示す記号は、図9に示す
ような8通りの配置パターンを示している。第6行目の
「TEXT TI1 (20,260) 」なる記述は、座標(20,260)なる
位置に「TI1 」なる文字列(外部に対する入出力端子を
示す)を配置すべきことを示す記述であり、このような
記述を含ませておくことにより、このレイアウトパター
ンをディスプレイ画面上に表示させたときに、パターン
とともに文字指標を表示させることができる。第7行目
の「WIRE (20,260) (120,260) 」なる記述は、座標(20,
260)から座標(120,260) まで、配線が配置されることを
示している。以下、同様に、文字列および配線を配置す
べき記述が続き、更に、電源ラインなどの配置に関する
記述(図8には示されていない)が続く。こうして、最
上位階層のブロック「TOP 」に関する記述が終了した
ら、更に、各第2階層のブロックの内容を示す記述(図
8には示されていないが、個々のセル内のパターンを示
す記述)が続くことになる。The hard block layout data LD is:
This is data indicating a geometric layout in the hard block, and is composed of, for example, data as shown in FIG. Generally, LSI circuits are defined with a hierarchical structure. In the case of the example shown in FIG. 8 (only a part thereof is shown in FIG. 8), the description “STRUCTURETOP
Defines a top-level block “TOP”. The description on the second and subsequent lines is the top-level “TO
P "is a description indicating a second-layer block included in" P ".
For example, "Cell-1 (100,300) 180 FLIP" on the second line
Is described as one of the blocks in the second hierarchy, the cell with the cell name “Cell-1” is arranged at the position of the coordinates (100, 300), rotated by 180 °, and further turned upside down. Is shown. Similarly, the description in the third to fifth lines further describes three cells “Cell-2”, “Cell-1”, and “Cell-
No. 3 "(a total of four cells are used, but" Cell-1 "is used twice). The symbols indicating the cell rotation angle and the front / back inversion indicate eight arrangement patterns as shown in FIG. The description “TEXT TI1 (20,260)” on the sixth line indicates that a character string “TI1” (indicating an input / output terminal to the outside) should be placed at the position of coordinates (20,260). By including such a description, when the layout pattern is displayed on the display screen, the character index can be displayed together with the pattern. The description “WIRE (20,260) (120,260)” on the seventh line indicates the coordinates (20,
This indicates that wiring is arranged from (260) to coordinates (120,260). Hereinafter, similarly, a description for arranging a character string and a wiring follows, followed by a description (not shown in FIG. 8) regarding the arrangement of power supply lines and the like. When the description of the block “TOP” of the highest hierarchy is completed in this way, a description indicating the contents of each block of the second hierarchy (not illustrated in FIG. 8, but a description indicating a pattern in each cell) Will follow.
【0022】図10は、図8に示すレイアウトデータL
Dに対応するレイアウトパターンを示す図であり、最上
位階層のブロック「TOP 」のイメージが示されている。
図の中央付近に配置された4個のセルは、図6に示すセ
ルライブラリCL内のセル(図7にイメージを示すセ
ル)であり、それぞれ所定位置に所定の向きで配置され
ている。このブロック「TOP 」の座標系の原点は図のと
おり左下位置に設定されており、各セルの配置は、この
座標系上の座標値に基づいて行われる。4個のセルの両
側には、電源ラインが配置されており、また、セル間お
よびセル外に対しては配線(黒い太線)が行われてい
る。なお、参考までに、このブロック「TOP」の回路図
を図11に示す。FIG. 10 shows the layout data L shown in FIG.
FIG. 9 is a diagram showing a layout pattern corresponding to D, showing an image of a block “TOP” in the highest hierarchy.
The four cells arranged near the center of the figure are cells in the cell library CL shown in FIG. 6 (cells shown in FIG. 7) and are arranged at predetermined positions in predetermined directions. The origin of the coordinate system of this block "TOP" is set at the lower left position as shown in the figure, and the arrangement of each cell is performed based on the coordinate values on this coordinate system. Power supply lines are arranged on both sides of the four cells, and wiring (black thick lines) is provided between cells and outside the cells. For reference, a circuit diagram of the block “TOP” is shown in FIG.
【0023】上述したように、図8には、ハードブロッ
クレイアウトデータLDのうち、最上位階層のブロック
「TOP 」の構成を示す一部分のみが示されているだけで
あり、実際には、このレイアウトデータLDには、第2
階層のブロックの内容を示す記述も含まれている。図1
2は、第2階層のブロック「Cell-1」のイメージを示す
図であり、「Cell-1」なるセルについての内部のレイア
ウトパターンが示されている(図に示されている各文字
は、説明の便宜上のものであり、実際には表示されな
い)。結局、図8に示すレイアウトデータLDは、図1
0に示すパターンあるいは図12に示すパターンのよう
に、ハードブロック内の幾何学的なレイアウトパターン
を各階層ごとに定義するデータとなっており、このレイ
アウトデータLDを用いることにより、半導体基板上に
形成される各領域の平面図形が決定されることになる。As described above, FIG. 8 shows only a portion of the hard block layout data LD indicating the configuration of the block "TOP" of the highest hierarchical level. The data LD contains the second
A description indicating the contents of the hierarchical block is also included. FIG.
2 is a diagram showing an image of a block “Cell-1” in the second hierarchy, showing an internal layout pattern of a cell “Cell-1” (each character shown in the figure is It is for convenience of explanation and is not actually displayed.) As a result, the layout data LD shown in FIG.
0 or a pattern shown in FIG. 12, which defines a geometric layout pattern in a hard block for each layer. By using this layout data LD, The plane figure of each area to be formed is determined.
【0024】ハードブロックネットリストNLは、ハー
ドブロック内の各セルについての結線関係を示すデータ
であり、たとえば、図13に示すようなデータから構成
される。この例では、ネットリストNLは4つの部分P
1〜P4から構成されており、部分P1は回路名「Cell
-A」に関する記述、部分P2は回路名「Cell-B」に関す
る記述、部分P3は回路名「Cell-C」に関する記述、部
分P4は最上位階層の回路名「TOP 」に関する記述とな
っている。たとえば、部分P1の第1行目の「.subckt
Cell-A IN1 IN2 OUT1 」なる記述は、以下の記述が、セ
ル名「Cell-A」なるセルに関する記述であることを示す
とともに、このセルには、「IN1 IN2 OUT1」なる入出力
端子があることを示す記述であり、第6行目の「.ends
Cell-A」なる記述は、セル名「Cell-A」なるセルに関す
る記述の終了を示す記述である。この間に挟まれた第2
〜第5行目の記述は、それぞれこのセルに含まれるトラ
ンジスタについての記述であり、このセルには、4つの
トランジスタM1〜M4が含まれていることが示されている
(M1〜M4は、個々のトランジスタのインスタンス名)。The hard block netlist NL is data indicating a connection relation for each cell in the hard block, and is composed of, for example, data as shown in FIG. In this example, the netlist NL has four parts P
1 to P4, and the portion P1 has a circuit name "Cell
-A ", part P2 describes the circuit name" Cell-B ", part P3 describes the circuit name" Cell-C ", and part P4 describes the top-level circuit name" TOP ". . For example, ".subckt" in the first line of the portion P1
The description "Cell-A IN1 IN2 OUT1" indicates that the following description is a description relating to the cell having the cell name "Cell-A", and the cell has an input / output terminal "IN1 IN2 OUT1". This is a description that indicates that ".ends
The description “Cell-A” is a description indicating the end of the description of the cell having the cell name “Cell-A”. The second sandwiched between
The description in the fifth to fifth lines is a description of the transistors included in this cell, and indicates that this cell includes four transistors M1 to M4 (M1 to M4 are: Instance name of individual transistor).
【0025】具体的には、第2行目の「M1 VCC IN1 OUT
1 VCC / P 」なる記述は、インスタンス名「M1」なるト
ランジスタの4つの端子(ソース、ゲート、ドレイン、
バックゲートの順、以下同様)が、それぞれ VCC(電圧
電源)、IN1 (このセルの第1の入力端子)、OUT1(こ
のセルの出力端子)、 VCCに接続され、このトランジス
タがPMOSトランジスタであることを示している。同
様に、第3行目の「M2VCC IN2 OUT1 VCC / P 」なる記
述は、インスタンス名「M2」なるトランジスタの4つの
端子が、それぞれ VCC、IN2 (このセルの第2の入力端
子)、OUT1、 VCCに接続され、このトランジスタがPM
OSトランジスタであることを示している。また、第4
行目の「M3 OUT1 IN1 net1 GND / N」なる記述は、イン
スタンス名「M3」なるトランジスタの4つの端子が、そ
れぞれOUT1、IN1 、net1(このセル内の別なトランジス
タの「net1」で示される端子:具体的には、インスタン
ス名「M4」なるトランジスタのソース)、 GND(接地電
源)に接続され、このトランジスタがNMOSトランジ
スタであることを示しており、第5行目の「M4 net1 IN
2 GND GND / N 」なる記述は、インスタンス名「M4」な
るトランジスタの4つの端子が、それぞれnet1(このセ
ル内の別なトランジスタの「net1」で示される端子:具
体的には、インスタンス名「M3」なるトランジスタのド
レイン)、IN2 GND GND に接続され、このトランジスタ
がNMOSトランジスタであることを示している。Specifically, the second line “M1 VCC IN1 OUT
The description “1 VCC / P” describes the four terminals (source, gate, drain,
The order of the back gate, and so on) are connected to VCC (voltage power supply), IN1 (first input terminal of this cell), OUT1 (output terminal of this cell) and VCC, respectively, and this transistor is a PMOS transistor. It is shown that. Similarly, the description “M2VCC IN2 OUT1 VCC / P” on the third line indicates that the four terminals of the transistor having the instance name “M2” are VCC, IN2 (the second input terminal of this cell), OUT1, Connected to VCC and this transistor
This indicates that the transistor is an OS transistor. Also, the fourth
The description “M3 OUT1 IN1 net1 GND / N” on the line indicates that the four terminals of the transistor with the instance name “M3” are indicated by OUT1, IN1 and net1 respectively (“net1” of another transistor in this cell) Terminal: Specifically, it is connected to the source of the transistor having the instance name “M4”) and GND (ground power supply), indicating that this transistor is an NMOS transistor, and “M4 net1 IN” on the fifth line.
The description “2 GND GND / N” means that the four terminals of the transistor with the instance name “M4” are connected to net1 (the terminal indicated by “net1” of another transistor in this cell: specifically, the instance name “ M3 "), IN2 GND is connected to GND, indicating that this transistor is an NMOS transistor.
【0026】部分P2,P3は、同様に、「Cell-B」お
よび「Cell-C」のトランジスタ構成を示す記述から構成
されている。部分P4は、これら3つのセルを用いて構
成される最上位階層の回路「TOP 」に関する記述となっ
ており、たとえば、この部分P4の第1行目の「.subck
t TOP TI1 TI2 TI3 TI4 TI5 TO1 」なる記述は、以下の
記述が、回路名「TOP 」なるブロックに関する記述であ
ることを示すとともに、このブロックには、「TI1 TI2
TI3 TI4 TI5 TO1 」なる入出力端子があることを示す記
述であり、第6行目の「.ends TOP 」なる記述は、回路
名「TOP 」なるブロックに関する記述の終了を示す記述
である。この間に挟まれた第2〜第5行目の記述は、そ
れぞれこのブロックに含まれるセルについての記述であ
り、このブロックには、4つのセルX1〜X4が含まれてい
ることが示されている(X1〜X4は、個々のセルのインス
タンス名)。The parts P2 and P3 are similarly composed of descriptions showing the transistor configurations of "Cell-B" and "Cell-C". The part P4 is a description related to a circuit “TOP” of the highest hierarchy configured using these three cells. For example, “.subck” in the first row of the part P4
The description “t TOP TI1 TI2 TI3 TI4 TI5 TO1” indicates that the following description is a description related to the block named “TOP”, and this block includes the description “TI1 TI2
This is a description indicating that there is an input / output terminal “TI3 TI4 TI5 TO1”, and the description “.ends TOP” on the sixth line is a description indicating the end of the description of the block having the circuit name “TOP”. The description in the second to fifth rows interposed therebetween is a description of a cell included in this block, and it is shown that this block includes four cells X1 to X4. (X1 to X4 are instance names of individual cells).
【0027】具体的には、第2行目の「X1 TI1 TI2 net
1 / Cell-A」なる記述は、インスタンス名「X1」なるセ
ルの各端子(部分P1の第1行目に列挙された入出力端
子)が、それぞれ TI1(このブロック「TOP 」の第1の
入力端子)、 TI2(このブロック「TOP 」の第2の入力
端子)、net1(このブロック内の別なセルの「net1」で
示される端子:具体的には、インスタンス名「X3」なる
セルの第1の入力端子)に接続され、このセルが部分P
1で定義された「Cell-A」であることを示している。第
3〜第5行目も同様に、各セルX2,X3,X4の構成を示し
ている。Specifically, the second line “X1 TI1 TI2 net
The description “1 / Cell-A” indicates that each terminal of the cell having the instance name “X1” (input / output terminal enumerated in the first row of the portion P1) is TI1 (the first terminal of this block “TOP”). Input terminal), TI2 (second input terminal of this block "TOP"), net1 (terminal indicated by "net1" of another cell in this block: specifically, the cell of instance name "X3" 1st input terminal), and this cell is connected to the portion P
It is “Cell-A” defined in 1. Similarly, the third to fifth rows also show the configuration of each cell X2, X3, X4.
【0028】以上、図5の上段に示すセルライブラリC
L、ハードブロックレイアウトデータLD、ハードブロ
ックネットリストNLを具体例に基づいて説明した。従
来の一般的なLSI回路設計方法において、ハードブロ
ックを利用した設計を行う場合、実際の設計に利用され
るデータは、これらの各データのうちのレイアウトデー
タLDである。レイアウトデータLDは、図10あるい
は図12に示すように、階層構造をもって定義されたレ
イアウトパターンを具体的な図形の集合として示すデー
タであり、このようなデータが用意できれば、半導体基
板上に形成すべき具体的なパターンが定まることにな
る。このハードブロックレイアウトデータLDの提供を
受けた設計者は、既に具体的なレイアウトパターンが定
まっているので、各パターンの意味するところを何ら知
らずに、そのまま利用することができる。The cell library C shown in the upper part of FIG.
L, hard block layout data LD, and hard block netlist NL have been described based on specific examples. When a design using a hard block is performed in a conventional general LSI circuit design method, the data used in the actual design is the layout data LD among these data. As shown in FIG. 10 or FIG. 12, the layout data LD is data indicating a layout pattern defined with a hierarchical structure as a set of specific figures. If such data is prepared, it is formed on a semiconductor substrate. The specific pattern to be determined is determined. The designer who has received the provision of the hard block layout data LD can use the layout without knowing what each pattern means because the specific layout pattern has already been determined.
【0029】しかしながら、このレイアウトデータLD
は、もともと、セルライブラリCLとハードブロックネ
ットリストNLとに基づいて作成されたデータであり
(通常、ハードブロックの設計者は、セルライブラリC
L内のセルを利用して、ハードブロックネットリストN
Lを作成し、自動配置配線ツールを利用して、ハードブ
ロックレイアウトデータLDを得ることになる)、ハー
ドブロックの提供元からは、レイアウトデータLDとと
もに、セルライブラリCLおよびネットリストNLの提
供を受けることができる。そこで、本発明では、図5の
上段に示すように、セルライブラリCL、ハードブロッ
クレイアウトデータLD、ハードブロックネットリスト
NLなる3つの情報を用いて、ハードブロックの内部の
セル配置を復元する処理を行う。以下、その手順を、図
5の流れ図に基づいて説明する。However, the layout data LD
Is data that is originally created based on the cell library CL and the hard block netlist NL.
Using the cells in L, the hard block netlist N
L, and the hard block layout data LD is obtained using the automatic placement and routing tool), and the hard library provider provides the cell library CL and the netlist NL together with the layout data LD. be able to. Therefore, in the present invention, as shown in the upper part of FIG. 5, a process of restoring the cell arrangement inside the hard block using the three pieces of information including the cell library CL, the hard block layout data LD, and the hard block netlist NL. Do. Hereinafter, the procedure will be described based on the flowchart of FIG.
【0030】§3.本発明の具体的な実施形態に係るセ
ル配置の復元手順 まず、図5のステップS1において、セルライブラリC
Lから必要なセルについてのセルサイズを抽出する処理
が行われ、ステップS2において、レイアウトデータL
Dからセル位置を抽出する処理が行われる。具体的に
は、たとえば、図6に示すようなセルライブラリCLか
らは、セル「Cell-1」については、サイズ60×100 、セ
ル「Cell-2」については、サイズ40×100 、セル「Cell
-3」については、サイズ80×100 なるデータが抽出さ
れ、図8に示すようなレイアウトデータLDからは、第
2行目に記述されたセル「Cell-1」の位置(100,300)、
第3行目に記述されたセル「Cell-2」の位置(140,10
0)、第4行目に記述されたセル「Cell-3」の位置(160,
300)、第5行目に記述されたセル「Cell-3」の位置(14
0,100)が抽出されることになる。こうして、ハードブ
ロック内に配置されている個々のセルについてのサイズ
および位置が抽出できれば、個々のセルが占有するセル
エリアを確定することができる。図5に示すステップS
3は、このようにしてセルエリアを確定する処理を示し
ている。ここでは、個々のセルエリアを、左下座標(Xm
in,Ymin)と右上座標(Xmax,Ymax)とによって確定す
るようにしており、ステップS3の処理により、図14
に示すような4通りのセルについてのデータが得られる
ことになる。図15は、このようにして確定したセルエ
リアのイメージを示す平面図である。 §3. A cell according to a specific embodiment of the present invention.
Restore procedure Le arrangement First, in step S1 of FIG. 5, the cell library C
A process of extracting a cell size of a required cell from L is performed. In step S2, layout data L
A process of extracting a cell position from D is performed. Specifically, for example, from the cell library CL as shown in FIG. 6, the size of the cell “Cell-1” is 60 × 100, the size of the cell “Cell-2” is 40 × 100, and the size of the cell “Cell
With respect to “-3”, data having a size of 80 × 100 is extracted. From the layout data LD as shown in FIG. 8, the position (100, 300) of the cell “Cell-1” described in the second row,
The position of cell "Cell-2" described in the third row (140,10
0), the position of cell “Cell-3” described in the fourth row (160,
300), the position of cell “Cell-3” described in the fifth row (14
0,100) will be extracted. Thus, if the size and position of each cell arranged in the hard block can be extracted, the cell area occupied by each cell can be determined. Step S shown in FIG.
3 shows a process for determining the cell area in this manner. Here, each cell area is defined by the lower left coordinates (Xm
in, Ymin) and the upper right coordinates (Xmax, Ymax).
Will be obtained for four types of cells as shown in FIG. FIG. 15 is a plan view showing an image of the cell area determined in this way.
【0031】続いて、ステップS4において、レイアウ
トデータLDとネットリストNLとに基づいて、セル内
トランジスタの座標を抽出する処理が行われる。レイア
ウトデータLDは、前述したように、図10および図1
2に示すような階層をもって定義された図形パターンの
データであるので、所定の図形演算を行うことにより、
トランジスタが形成されている領域を認識することがで
きる。たとえば、図12には、ブロック「Cell-1」のイ
メージが示されているが、ここで、破線で示されている
ポリシリコン層と一点鎖線で示されている拡散層との交
差領域が、MOSトランジスタの領域となる。このブロ
ック「Cell-1」は、図10に示すように、上位階層のブ
ロック「TOP 」内の所定位置に配置されている。この配
置は、図8の第2行目の「Cell-1 (100,300) 180 FLIP
」なる記述によって定義されており、図12に示すブ
ロック「Cell-1」は、実際には、図16に示すように、
180°回転させた上、表裏逆転した状態で、ブロック「T
OP 」内の座標(100,300) なる位置に左上隅部がくるよ
うに配置される。図16においてハッチングを施した矩
形領域は、破線で示されているポリシリコン層と一点鎖
線で示されている拡散層との交差領域、すなわち、MO
Sトランジスタの領域である。ここでは、各トランジス
タの左下隅点を当該トランジスタの位置を示す座標と定
義している。したがって、このブロック「Cell-1」につ
いては、図示のとおり4つのトランジスタ領域が認識さ
れ、4つの座標値が抽出されることになる。Subsequently, in step S4, a process of extracting the coordinates of the transistor in the cell based on the layout data LD and the netlist NL is performed. As described above, the layout data LD is shown in FIGS.
Since the data is a graphic pattern defined with a hierarchy as shown in FIG. 2, by performing a predetermined graphic operation,
The region where the transistor is formed can be recognized. For example, FIG. 12 shows an image of the block “Cell-1”. Here, an intersection region between the polysilicon layer shown by the broken line and the diffusion layer shown by the dashed line is This is a region of the MOS transistor. As shown in FIG. 10, the block “Cell-1” is arranged at a predetermined position in the block “TOP” in the upper hierarchy. This arrangement is based on the “Cell-1 (100,300) 180 FLIP
The block "Cell-1" shown in FIG. 12 is actually defined as shown in FIG.
After turning 180 °, turn the block `` T
It is arranged so that the upper left corner is located at the position of coordinates (100, 300) in "OP". In FIG. 16, a hatched rectangular area is an intersection area between the polysilicon layer shown by the broken line and the diffusion layer shown by the dashed line, that is, the MO area.
This is the region of the S transistor. Here, the lower left corner point of each transistor is defined as coordinates indicating the position of the transistor. Therefore, for the block "Cell-1", four transistor regions are recognized as shown, and four coordinate values are extracted.
【0032】レイアウトデータLDは、単なる図形パタ
ーンのデータであるため、図形の交差領域として認識さ
れた個々のトランジスタが、ネットリストNL上でどの
ようなインスタンス名で呼ばれているかを、レイアウト
データLDからは直接認識することはできない。そこ
で、レイアウトデータLDとネットリストNLとを照合
することにより、レイアウトデータLD上で認識された
各トランジスタと、ネットリストNL上の各トランジス
タとの対応関係を調べる処理を行う。この処理は、外部
端子からの配線を辿ることによって行うことができる。
たとえば、レイアウトデータLDからは、図10に示す
ようなブロック「TOP 」のイメージを得ることができる
ので、ここで、外部端子を示す文字列「TI1 」からの配
線および導電層のパターンを図形として辿ってゆくと、
図16に示す座標(118,220) に配置されたトランジスタ
と座標(118,270) に配置されたトランジスタに接続され
ていることがわかる。一方、図13に示すネットリスト
NLについて、外部端子(信号名)「TI1 」を検索する
と、部分P4の第2行目に記述されているように、イン
スタンス名「X1」なるセル(「Cell-A」)へ接続されて
いることがわかり、更に、部分P1の「IN1 」ヘと接続
されていることがわかる。そして最終的には、部分P1
の第2行目および第4行目に記述されているように、イ
ンスタンス名「M1」なるPMOSトランジスタおよびイ
ンスタンス名「M3」なるNMOSトランジスタへと接続
されていることがわかる。Since the layout data LD is merely graphic pattern data, the layout data LD identifies what instance name of each transistor recognized as a crossing area of the graphic is called on the netlist NL. Can not be directly recognized from. Therefore, by comparing the layout data LD with the netlist NL, a process of checking the correspondence between each transistor recognized on the layout data LD and each transistor on the netlist NL is performed. This processing can be performed by tracing the wiring from the external terminal.
For example, an image of a block "TOP" as shown in FIG. 10 can be obtained from the layout data LD. Here, the pattern of the wiring and the conductive layer from the character string "TI1" indicating the external terminal is represented as a figure. As you follow,
It can be seen that they are connected to the transistor arranged at the coordinates (118, 220) and the transistor arranged at the coordinates (118, 270) shown in FIG. On the other hand, when the external terminal (signal name) “TI1” is searched for the netlist NL shown in FIG. 13, as described in the second row of the portion P4, the cell having the instance name “X1” (“Cell- A "), and further connected to" IN1 "of the portion P1. And finally, the part P1
As described in the second and fourth lines of the above, it can be seen that they are connected to the PMOS transistor having the instance name “M1” and the NMOS transistor having the instance name “M3”.
【0033】かくして、図13に示すネットリストNL
上のインスタンス名「X1-M1 」で示されるトランジスタ
は、図16に示すレイアウトパターンにおける座標(11
8,220) に配置されたトランジスタであることが確認で
き、図13に示すネットリストNL上のインスタンス名
「X1-M3 」で示されるトランジスタは、図16に示すレ
イアウトパターンにおける座標(118,270) に配置された
トランジスタであることが確認できる。全く同様の手法
により、図13に示すネットリストNL上のインスタン
ス名「X1-M2 」で示されるトランジスタは、図16に示
すレイアウトパターンにおける座標(135,220) に配置さ
れたトランジスタであることが確認でき、図13に示す
ネットリストNL上のインスタンス名「X1-M4 」で示さ
れるトランジスタは、図16に示すレイアウトパターン
における座標(135,270) に配置されたトランジスタであ
ることが確認できる。このような手法と採れば、ステッ
プS4における座標抽出処理の結果として、図17に示
すような対応関係を得ることができる。すなわち、イン
スタンス名で示された各トランジスタについて、それぞ
れ座標値を得ることができる。Thus, the netlist NL shown in FIG.
The transistor indicated by the instance name “X1-M1” above has the coordinates (11
8, 220), and the transistor indicated by the instance name “X1-M3” on the netlist NL shown in FIG. 13 is arranged at the coordinates (118, 270) in the layout pattern shown in FIG. It can be confirmed that this is a transistor. By a completely similar method, it can be confirmed that the transistor indicated by the instance name “X1-M2” on the netlist NL shown in FIG. 13 is a transistor arranged at the coordinates (135, 220) in the layout pattern shown in FIG. It can be confirmed that the transistor indicated by the instance name “X1-M4” on the netlist NL shown in FIG. 13 is a transistor arranged at the coordinates (135, 270) in the layout pattern shown in FIG. With such a method, a correspondence relationship as shown in FIG. 17 can be obtained as a result of the coordinate extraction process in step S4. That is, coordinate values can be obtained for each transistor indicated by the instance name.
【0034】このように、ネットリストNLにおける各
トランジスタについての座標値を求めるのは、ネットリ
ストNL上の個々のセルと、レイアウトパターン上の個
々のセルとの整合性をとるためである。ここに示す実施
形態では、この整合性の説明を容易に行うことができる
ように、セルライブラリCL上では、図6に示すよう
に、「Cell-1」,「Cell-2」,「Cell-3」のような数字
を含むセル名を付与し、ネットリストNL上では、図1
3に示すように、「Cell-A」,「Cell-B」,「Cell-C」
のようなアルファベットを含むセル名を付与している。
もちろん、ここでは、「Cell-1」=「Cell-A」,「Cell
-2」=「Cell-B」,「Cell-3」=「Cell-C」なる対応関
係がある。しかしながら、個々のセルは基本的な論理素
子であるため、ハードブロック内には、通常、同一のセ
ルが多数用いられることになり、ネットリストNL上の
個々のセルと、レイアウトパターン上の個々のセルとの
間に整合性がとれなくなる。たとえば、図15に示すセ
ルエリアのイメージを参照すると、上列の左右には、そ
れぞれ「Cell-1」が配置されている。一方、図13に示
すネットリストNLの部分P4を参照すると、第2行目
のインスタンス名「X1」なるセルも、第4行目のインス
タンス名「X3」なるセルも、いずれも「Cell-A」であ
る。したがって、「Cell-1」=「Cell-A」なる対応関係
だけでは、ネットリストNL上のインスタンス名「X1」
なるセルが、実際のレイアウトパターンの上列右に配置
された「Cell-1」なのか、上列左に配置された「Cell-
1」なのかを認識することができない。The reason for obtaining the coordinate values for each transistor in the netlist NL in this way is to ensure consistency between the individual cells on the netlist NL and the individual cells on the layout pattern. In the embodiment shown here, as shown in FIG. 6, "Cell-1", "Cell-2", "Cell- A cell name including a numeral such as “3” is given, and in the netlist NL, FIG.
As shown in 3, “Cell-A”, “Cell-B”, “Cell-C”
Cell names containing alphabets such as
Of course, here, "Cell-1" = "Cell-A", "Cell
-2 "=" Cell-B "," Cell-3 "=" Cell-C ". However, since each cell is a basic logic element, many identical cells are usually used in the hard block, and each cell on the netlist NL and each cell on the layout pattern are usually used. Consistency with the cell is lost. For example, referring to the image of the cell area shown in FIG. 15, “Cell-1” is arranged on the left and right of the upper row, respectively. On the other hand, referring to the portion P4 of the netlist NL shown in FIG. 13, both the cell having the instance name “X1” in the second row and the cell having the instance name “X3” in the fourth row are both “Cell-A”. ". Therefore, if only the correspondence “Cell-1” = “Cell-A” is used, the instance name “X1” on the netlist NL is used.
Is the actual layout pattern, "Cell-1" arranged on the upper right of the row, or "Cell-" arranged on the left of the upper row
1 "cannot be recognized.
【0035】そこで、本実施形態では、トランジスタの
座標値を利用して、両者の整合性をとる処理を行うよう
にしている。図5の流れ図におけるステップS5のセル
配置探索処理は、このような整合性を確保するための探
索処理である。すなわち、このセル配置探索処理では、
ステップS3で確定したセルエリア(図15)とステッ
プS4で抽出したトランジスタ座標(図17)とを照合
することにより、セル配置が探索される。図18は、こ
のようなセル配置探索の結果を示す表である。この表の
左側には、図17に示す各トランジスタの座標値が示さ
れ、右側には探索結果が示されている。たとえば、この
表の第1行目には、インスタンス名「X1-M1 」なるトラ
ンジスタの座標が、(118,220) であることが示されてい
る。この座標(118,220) で示される位置を、図15に示
すセルエリアのイメージ上で探索すると、上列左の「Ce
ll-1」内部の位置であることが判明する。同様に、図1
8の第2〜第4行目の各トランジスタの座標について
も、図15に示すセルエリア内を探索すると、結局、こ
れらのトランジスタは、いずれも図15に示す上列左の
「Cell-1」内部に位置するトランジスタであることがわ
かる。このことから、図15に示す上列左の「Cell-1」
は、図13の部分P4の第2行目に記載されているイン
スタンス名「X1」の「Cell-A」であることが認識でき
る。同様に、図15に示す下列左の「Cell-2」は、図1
3の部分P4の第3行目に記載されているインスタンス
名「X2」の「Cell-B」であることが認識でき、図15に
示す上列右の「Cell-1」は、図13の部分P4の第4行
目に記載されているインスタンス名「X3」の「Cell-A」
であることが認識でき、図15に示す下列右の「Cell-
3」は、図13の部分P4の第5行目に記載されている
インスタンス名「X4」の「Cell-C」であることが認識で
きる。Therefore, in the present embodiment, a process for obtaining consistency between the two is performed using the coordinate values of the transistors. The cell arrangement search process in step S5 in the flowchart of FIG. 5 is a search process for ensuring such consistency. That is, in this cell arrangement search processing,
By comparing the cell area (FIG. 15) determined in step S3 with the transistor coordinates (FIG. 17) extracted in step S4, a cell arrangement is searched. FIG. 18 is a table showing the result of such a cell arrangement search. The left side of this table shows the coordinate values of each transistor shown in FIG. 17, and the right side shows the search results. For example, the first row of the table indicates that the coordinates of the transistor having the instance name “X1-M1” are (118,220). When the position indicated by the coordinates (118, 220) is searched on the image of the cell area shown in FIG. 15, “Ce
ll-1 ”. Similarly, FIG.
Also, when the coordinates of each transistor in the second to fourth rows of FIG. 8 are searched in the cell area shown in FIG. 15, after all, these transistors are all “Cell-1” in the upper left column shown in FIG. It can be seen that the transistor is located inside. From this, "Cell-1" in the upper left column shown in FIG.
Can be recognized as "Cell-A" of the instance name "X1" described in the second line of the portion P4 in FIG. Similarly, “Cell-2” in the lower left of FIG.
It can be recognized that “Cell-B” of the instance name “X2” described in the third row of the part P4 of No. 3 is “Cell-1” in the upper row shown in FIG. "Cell-A" of instance name "X3" described in the fourth line of part P4
Can be recognized, and “Cell-
It can be recognized that "3" is "Cell-C" of the instance name "X4" described in the fifth line of the portion P4 in FIG.
【0036】こうして、セル配置の探索が完了したら、
ステップS6において、セル配置情報PLが復元され
る。すなわち、ハードブロックについてのセル配置情報
が、ハードブロックネットリストNL上でのインスタン
スに対応したセルについての情報として復元されること
になる。図19は、このようにして復元されたセル配置
情報PLを示す図である。第1行目の「PLACEMENT 」
は、この情報がセル配置情報であることを宣言する文字
列であり、第2行目の「X1 Cell-A Cell-1 (100,300) 1
80 FLIP 」なる記述は、ネットリストNL上のインスタ
ンス名「X1」のセル(Cell-A)は、実際のレイアウト上
で「(100,300) 180 FLIP」なる座標および向きに配置さ
れたセル(Cell-1)であることを示している。第3〜第
5行目は、同様にして、ネットリストNL上のインスタ
ンス名「X2」,「X3」,「X4」なるセルの配置を示す記
述であり、第6行目の「END 」は、このセル配置情報P
Lの終了を示す記述である。結局、この図19に示すセ
ル配置情報PLは、セルライブラリCL内に用意された
セルのうちのいくつかを、特定の座標に特定の向きに配
置する方法を示すとともに、これらの各セルをハードブ
ロックネットリストNL内のインスタンス名と1対1に
対応させる情報ということになる。When the search for the cell arrangement is completed,
In step S6, the cell arrangement information PL is restored. That is, the cell arrangement information on the hard block is restored as information on the cell corresponding to the instance on the hard block netlist NL. FIG. 19 is a diagram showing the cell arrangement information PL thus restored. "PLACEMENT" on the first line
Is a character string declaring that this information is cell arrangement information, and “X1 Cell-A Cell-1 (100,300) 1
The description “80 FLIP” indicates that the cell (Cell-A) having the instance name “X1” on the netlist NL is a cell (Cell-A) arranged at the coordinates and directions “(100,300) 180 FLIP” on the actual layout. 1). Similarly, the third to fifth lines describe the arrangement of the cells having the instance names “X2”, “X3”, and “X4” on the netlist NL, and “END” in the sixth line is , This cell arrangement information P
This is a description indicating the end of L. Eventually, the cell arrangement information PL shown in FIG. 19 indicates a method of arranging some of the cells prepared in the cell library CL at specific coordinates in a specific direction and hard-coding each of these cells. This is information that has a one-to-one correspondence with the instance name in the block netlist NL.
【0037】§4.本発明の具体的な実施形態に係るL
SI回路設計方法 さて、これまで、図5の流れ図を参照しながら、特定の
ハードブロックについてセル配置情報を復元し、図19
に示すようなセル配置情報PLを求める具体的な方法を
述べた。本発明の骨子は、ハードブロックとして提供さ
れる既存のセル集合と、設計者の意図に基づいて作成さ
れるソフトブロック内のセル集合と、を混在させてLS
I回路設計を行う場合に、ハードブロックについてのセ
ル配置を復元し、共通電源ラインを用いて、ハードブロ
ックとソフトブロックとに配線を行う点にある。通常、
セルの配置や配線の作業は、自動配置配線ツールを用い
て行われる。そこで、本発明を実施する場合も、実用上
は、自動配置配線ツールを用いたセルの配置および配線
を行うのが好ましい。このとき、ソフトブロックの部分
については、セルライブラリCLと、ソフトブロックの
設計者が作成した「ソフトブロックを含めた全回路のネ
ットリストNL(ALL) 」(ハードブロック内部のネット
リストNLは含まない)とを自動配置配線ツールに与え
て、ソフトブロックセルの配置と配線との両方を行わせ
るようにするが、ハードブロックの部分については、既
にセルの配置は完了しているため(復元したセル配置情
報PLによって配置は定まっている)、セルライブラリ
CLとハードブロックネットリストNLとを自動配置配
線ツールに与えて、ハードブロックセルの配線だけを行
わせるようにする。 §4. L according to a specific embodiment of the present invention
SI Circuit Design Method Now, with reference to the flowchart of FIG. 5, the cell arrangement information is restored for a specific hard block, and FIG.
The specific method for obtaining the cell arrangement information PL as shown in FIG. The gist of the present invention is to mix an existing cell set provided as a hard block and a cell set in a soft block created based on a designer's intention by mixing LS.
In designing an I-circuit, the cell arrangement of a hard block is restored, and wiring is performed between the hard block and the soft block using a common power supply line. Normal,
The work of cell placement and wiring is performed using an automatic placement and routing tool. Therefore, even when implementing the present invention, it is practically preferable to perform cell placement and wiring using an automatic placement and routing tool. At this time, regarding the soft block portion, the cell library CL and the “net list NL (ALL) of all circuits including the soft block” created by the designer of the soft block (the net list NL inside the hard block is not included) ) Is given to the automatic placement and routing tool so that both the soft block cell placement and the routing are performed. However, since the cell placement has already been completed for the hard block part (the restored cell The placement is determined by the placement information PL), and the cell library CL and the hard block netlist NL are provided to the automatic placement and routing tool so that only the hard block cells are routed.
【0038】図5のステップS7の自動配置配線の処理
は、このように、自動配置配線ツールを用いた配置配線
処理である。自動配置配線ツールには、図5に示すセル
ライブラリCL(前述したように、ハードブロックもソ
フトブロックも、この共通のセルライブラリCL内のセ
ルを用いて設計される)と、ハードブロックネットリス
トNLと、復元されたセル配置情報PLと、目的となる
LSI回路の設計者が作成した「ソフトブロックを含め
た全回路のネットリストNL(ALL) 」と、が与えられる
ことになる。これにより、自動配置配線ツールは、ハー
ドブロックセルについては、セル配置情報PLに基づい
てセル配置を決定するとともに、セルライブラリCLお
よびネットリストNLの情報に基づいて配線を行い、ソ
フトブロックセルについては、セルライブラリCLおよ
びネットリストNL(ALL) の情報に基づいて、配置およ
び配線を行うことになる。既存のハードブロックから
は、ハードブロックセルの部分だけが利用されることに
なり、電源ラインはソフトブロックのために設けられた
ものが利用される。このとき、ハードブロックセルにつ
いての配線は、ソフトブロックセルについての配線とと
もにやり直されるので、同一の電源ラインを両者で共用
することができるようになる。また、ソフトブロックセ
ルの部分およびハードブロックセルの部分の両方に、チ
ップ配線300を通過させることができるようになるの
で、チップ配線300を迂回させる必要はなくなる。The automatic placement and routing process in step S7 in FIG. 5 is a placement and routing process using an automatic placement and routing tool. The automatic placement and routing tool includes a cell library CL shown in FIG. 5 (as described above, both hard blocks and soft blocks are designed using cells in the common cell library CL) and a hard block netlist NL. And the restored cell arrangement information PL and the "netlist NL (ALL) of all circuits including soft blocks" created by the designer of the target LSI circuit. Accordingly, the automatic placement and routing tool determines the cell arrangement based on the cell arrangement information PL for the hard block cells, performs the wiring based on the information of the cell library CL and the netlist NL, and performs the wiring for the soft block cells. And the wiring are performed based on the information of the cell library CL and the netlist NL (ALL). From the existing hard block, only the portion of the hard block cell is used, and the power supply line provided for the soft block is used. At this time, the wiring for the hard block cells is redone together with the wiring for the soft block cells, so that the same power supply line can be shared by both. In addition, since the chip wiring 300 can pass through both the soft block cell part and the hard block cell part, it is not necessary to bypass the chip wiring 300.
【0039】結局、内部が図1に示すような構成のハー
ドブロック100を利用して、LSI回路設計を行う場
合、従来は、これをブラックボックスとして取扱い、図
2に示すように、このハードブロック100をそっくり
そのままLSI回路の中に取り込まざるを得なかった
が、本発明に係る設計方法では、図1に示すようなハー
ドブロック100について、ハードブロックセル110
の部分のセル配置を、セル配置情報PLとして復元し、
図3に示すように、このハードブロックセル110の部
分だけをLSI回路設計に利用することができる。すな
わち、もともとハードブロック100内に組み込まれて
いた電源ライン120や、種々の配線は、利用しないこ
とになる。図3に示すように、回路設計者が、ソフトブ
ロック200を設計する段階で、電源ライン220を配
置すれば、この電源ライン220を共通電源として両ブ
ロックに対する電源配線を行うことができる。また、両
ブロックについてのセル間配線を行えば、図4に示すよ
うに、チップ配線300を各ブロック上を通過させて配
置することができるようになる。After all, when designing an LSI circuit using the hard block 100 having the internal structure shown in FIG. 1, conventionally, this is treated as a black box, and as shown in FIG. 100 had to be taken into the LSI circuit as it was. However, in the design method according to the present invention, the hard block 100 shown in FIG.
Is restored as the cell arrangement information PL,
As shown in FIG. 3, only the hard block cell 110 can be used for LSI circuit design. That is, the power supply line 120 originally incorporated in the hard block 100 and various wirings are not used. As shown in FIG. 3, when the circuit designer arranges the power supply line 220 at the stage of designing the soft block 200, the power supply wiring for both blocks can be performed using the power supply line 220 as a common power supply. Further, by performing inter-cell wiring for both blocks, as shown in FIG. 4, the chip wiring 300 can be arranged to pass over each block.
【0040】なお、図5に示した各処理手順は、実際に
はコンピュータプログラムからなる専用ツールによって
実行される。したがって、本発明を実施するにあたっ
て、回路設計者の作業負担が増加することはない。回路
設計者は、まず、セルライブラリCLと、利用するハー
ドブロックについてのレイアウトデータLDおよびネッ
トリストNLを入手し、これらを上記専用ツールに与え
る操作を行う。すると、この専用ツールによって、図5
に示すステップS1〜S6までの処理が実行され、ハー
ドブロックセル110の配置を示すセル配置情報PLが
自動的に作成(復元)される。既に述べたように、この
セル配置情報PLは、たとえば、図19に示す例のよう
に、ハードブロックネットリストNL上でのインスタン
スに対応したセルの配置を示すものになる。すなわち、
ハードブロックネットリストNLに対する整合性をもっ
た形式で、ハードブロックセル110の配置を示す情報
が得られたことになる。回路設計者は、このハードブロ
ックセル110を一部として組み込み、ソフトブロック
を含めたLSI回路全体の設計を行うことになる。具体
的には、セルライブラリCLを参照しながら、ソフトブ
ロックを含めた全回路のネットリストNL(ALL) を作成
する。そして、自動配置配線ツールに、セルライブラリ
CL、ハードブロックネットリストNL、復元したセル
配置情報PL、ソフトブロックを含めた全回路のネット
リストNL(ALL) を与えると、ソフトブロックセルにつ
いての自動配置が行われ、すべてのセルに対する配線が
実行されることになる。Note that each processing procedure shown in FIG. 5 is actually executed by a dedicated tool composed of a computer program. Therefore, in implementing the present invention, the work load of the circuit designer does not increase. First, the circuit designer obtains the cell library CL, the layout data LD and the netlist NL for the hard block to be used, and performs an operation of providing these to the dedicated tool. Then, with this special tool,
Are performed, and the cell arrangement information PL indicating the arrangement of the hard block cells 110 is automatically created (restored). As described above, the cell arrangement information PL indicates an arrangement of cells corresponding to an instance on the hard block netlist NL, for example, as shown in FIG. That is,
This means that the information indicating the arrangement of the hard block cells 110 has been obtained in a format compatible with the hard block netlist NL. The circuit designer incorporates the hard block cell 110 as a part and designs the entire LSI circuit including the soft block. Specifically, a netlist NL (ALL) of all the circuits including the soft blocks is created with reference to the cell library CL. When the cell library CL, the hard block netlist NL, the restored cell placement information PL, and the netlist NL (ALL) of all circuits including the soft blocks are given to the automatic placement and routing tool, the automatic placement of the soft block cells is performed. Is performed, and wiring for all cells is executed.
【0041】[0041]
【発明の効果】以上のとおり、本発明に係るハードブロ
ックを用いたLSI回路設計方法によれば、ハードブロ
ックのセル位置情報を復元した上で、ハードブロックセ
ルとソフトブロックセルとについて、改めて配線を行う
ようにしたため、電源ラインを共通化することができる
ようになり、また、ハードブロック上にチップ配線を通
すことができるようになるので、LSIチップサイズの
増加を招くことなしに、ハードブロックを用いたLSI
回路を設計することが可能になる。As described above, according to the LSI circuit designing method using the hard block according to the present invention, the cell position information of the hard block is restored, and then the hard block cell and the soft block cell are reconnected. Since the power supply line can be shared and the chip wiring can be passed over the hard block, it is possible to increase the size of the hard block without increasing the LSI chip size. LSI using
It becomes possible to design a circuit.
【図1】一般的なハードブロック100の内部構成を示
す平面図である。FIG. 1 is a plan view showing an internal configuration of a general hard block 100. FIG.
【図2】図1に示すハードブロック100を利用して設
計を行ったLSI回路の平面図である。FIG. 2 is a plan view of an LSI circuit designed using the hard block 100 shown in FIG.
【図3】本発明の基本概念に基づいて設計されたLSI
回路の平面図である。FIG. 3 is an LSI designed based on the basic concept of the present invention.
It is a top view of a circuit.
【図4】図3に示すLSI回路におけるチップ配線30
0の配置を示す平面図である。4 is a chip wiring 30 in the LSI circuit shown in FIG.
It is a top view which shows arrangement | positioning of 0.
【図5】本発明の具体的な実施形態に係る手順を示す流
れ図である。FIG. 5 is a flowchart showing a procedure according to a specific embodiment of the present invention.
【図6】セルライブラリCLの具体的な構成例を示す図
である。FIG. 6 is a diagram showing a specific configuration example of a cell library CL.
【図7】図6に示すセルライブラリCL内の個々のセル
のイメージを示す図である。FIG. 7 is a diagram showing an image of each cell in a cell library CL shown in FIG. 6;
【図8】ハードブロックレイアウトデータLDの具体的
な構成例を示す図である。FIG. 8 is a diagram showing a specific configuration example of hard block layout data LD.
【図9】セルを配置する向きを示す平面図である。FIG. 9 is a plan view showing a direction in which cells are arranged.
【図10】図8に示すレイアウトデータLDにおける最
上位階層のブロック「TOP 」のレイアウトパターンを示
す平面図である。FIG. 10 is a plan view showing a layout pattern of a block “TOP” of the highest hierarchy in the layout data LD shown in FIG. 8;
【図11】図10に示すブロック「TOP 」の回路図であ
る。11 is a circuit diagram of a block “TOP” shown in FIG.
【図12】図11に示すブロック「TOP 」の下位階層の
ブロック「Cell-1」のレイアウトパターンを示す平面図
である。12 is a plan view showing a layout pattern of a block “Cell-1” in a lower hierarchy of the block “TOP” shown in FIG. 11;
【図13】ハードブロックネットリストNLの具体的な
構成例を示す図である。FIG. 13 is a diagram illustrating a specific configuration example of a hard block netlist NL.
【図14】図5の流れ図におけるステップS3において
確定したセルエリアに対応するデータの一例を示す図で
ある。14 is a diagram showing an example of data corresponding to the cell area determined in step S3 in the flowchart of FIG.
【図15】図14に示すデータに対応するセルエリアの
イメージを示す平面図である。FIG. 15 is a plan view showing an image of a cell area corresponding to the data shown in FIG. 14;
【図16】図5の流れ図におけるステップS4のセル内
トランジスタ座標抽出処理の原理を説明するための1つ
のセルのレイアウトパターンの平面図である。16 is a plan view of a layout pattern of one cell for explaining the principle of the transistor coordinate extraction process in step S4 in the flowchart of FIG. 5;
【図17】図16に示す原理に基づいて抽出されたセル
内トランジスタ座標の具体例を示す図である。FIG. 17 is a diagram showing a specific example of intra-cell transistor coordinates extracted based on the principle shown in FIG. 16;
【図18】図5の流れ図におけるステップS5のセル配
置探索処理の結果を示す図である。FIG. 18 is a diagram showing a result of a cell arrangement search process in step S5 in the flowchart of FIG. 5;
【図19】図5の流れ図におけるステップS6のセル配
置情報復元処理によって得られるセル配置情報PLの具
体的な構成例を示す図である。19 is a diagram showing a specific configuration example of cell arrangement information PL obtained by the cell arrangement information restoring process in step S6 in the flowchart of FIG. 5;
100…ハードブロック 110…ハードブロックセル 120…電源ライン 200…ソフトブロック 210…ソフトブロックセル 220…電源ライン 300…チップ配線 C…セル CL…セルライブラリ Cell-1〜Cell-3,Cell-A〜Cell-C…セル名 L…導電層 LD…ハードブロックレイアウトデータ M1〜M6…トランジスタのインスタンス名 NL…ハードブロックネットリスト NL(ALL) …ソフトブロックを含めた全回路のネットリ
スト P1〜P4…ネットリストの各部分 PL…セル配置情報 S1〜S6…流れ図の各ステップ X1〜X4…セルのインスタンス名100 hard block 110 hard block cell 120 power line 200 soft block 210 soft block cell 220 power line 300 chip wiring C cell CL cell library Cell-1 to Cell-3, Cell-A to Cell -C: cell name L: conductive layer LD: hard block layout data M1 to M6: transistor instance name NL: hard block netlist NL (ALL): netlist of all circuits including soft blocks P1 to P4: netlist ... PL... Cell arrangement information S1 to S6... Each step of the flow chart X1 to X4.
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H01L 27/04 D U ──────────────────────────────────────────────────続 き Continued on the front page (51) Int.Cl. 7 Identification symbol FI Theme coat ゛ (Reference) H01L 27/04 DU
Claims (6)
セル集合と、設計者の意図に基づいて作成されるソフト
ブロック内のセル集合と、を混在させてLSI回路設計
を行う方法であって、 設計に利用するハードブロックについて、内部のセル配
置を示すセル配置情報を復元する段階と、 復元されたセル配置情報によって特定されるハードブロ
ックセルと、設計者の意図に基づいて選択されたソフト
ブロックセルと、を用いて、対象となるLSI回路を設
計する段階と、 前記ハードブロックセルおよび前記ソフトブロックセル
についての共通電源ラインを配置し、各セル間の配線お
よび各セルと前記共通電源ラインとの配線を行う段階
と、 を有することを特徴とするハードブロックを用いたLS
I回路設計方法。1. A method for designing an LSI circuit by mixing an existing cell set provided as a hard block and a cell set in a soft block created based on a designer's intention, comprising: Restoring cell arrangement information indicating an internal cell arrangement for a hard block used for hard block cells, a hard block cell specified by the restored cell arrangement information, and a soft block cell selected based on a designer's intention. And designing a target LSI circuit using: and arranging a common power supply line for the hard block cell and the soft block cell, and wiring between the cells and connecting each cell to the common power supply line. LS using a hard block, comprising the steps of:
I-circuit design method.
おいて、 ハードブロックセルについては、復元されたセル配置情
報に基づくセル配置をそのまま利用し、自動配置配線ツ
ールを利用して配線を行い、 ソフトブロックセルについては、自動配置配線ツールを
利用して、セル配置の決定および配線を行うことを特徴
とするLSI回路設計方法。2. The LSI circuit design method according to claim 1, wherein for the hard block cells, the cell arrangement based on the restored cell arrangement information is used as it is, and wiring is performed using an automatic arrangement and wiring tool. An LSI circuit design method for a soft block cell, wherein the cell arrangement is determined and wired using an automatic placement and routing tool.
おいて、 ハードブロックセルおよびソフトブロックセルとして用
いられている個々のセルの内容を示すセルライブラリ
と、これら各セルについての結線関係を示すネットリス
トと、ハードブロックについて復元されたセル配置情報
と、を自動配置配線ツールに与え、 ハードブロックセルについては、前記配置情報に基づい
てセル配置を決定するとともに、前記セルライブラリお
よび前記ネットリストの情報に基づいて、前記自動配置
配線ツールに配線を行わせ、 ソフトブロックセルについては、前記セルライブラリお
よび前記ネットリストの情報に基づいて、前記自動配置
配線ツールに配置および配線を行わせることを特徴とす
るLSI回路設計方法。3. The LSI circuit design method according to claim 2, wherein a cell library indicating the contents of each cell used as a hard block cell and a soft block cell, and a net indicating a connection relationship between these cells. The list and the cell placement information restored for the hard block are provided to the automatic placement and routing tool. For the hard block cell, the cell placement is determined based on the placement information, and the information of the cell library and the netlist is determined. Based on the information of the cell library and the netlist, the soft placement and routing are performed by the automatic placement and routing tool. LSI circuit design method.
回路設計方法において、 ハードブロックセルとして用いられている個々のセルの
内容を示すセルライブラリと、ハードブロック内の幾何
学的なレイアウトを示すハードブロックレイアウトデー
タと、ハードブロックセルとして用いられている各セル
についての結線関係を示すハードブロックネットリスト
と、を用意し、これらに基づいてハードブロックについ
てのセル配置情報を復元するようにし、前記ハードブロ
ックネットリスト上でのインスタンスに対応したセルに
ついてのセル配置情報が得られるようにしたことを特徴
とするハードブロックを用いたLSI回路設計方法。4. The LSI according to claim 1,
In the circuit design method, a cell library indicating the contents of each cell used as a hard block cell, hard block layout data indicating a geometric layout in the hard block, and each cell used as a hard block cell A hard block netlist indicating the connection relation of the cells, and restoring the cell arrangement information about the hard blocks based on these; and a cell for the cell corresponding to the instance on the hard block netlist. An LSI circuit design method using hard blocks, wherein placement information is obtained.
組み込まれたハードブロックについて、内部のセル配置
を示すセル配置情報を復元する方法であって、 ハードブロック内に用いられている個々のセルの内容を
示すセルライブラリと、ハードブロック内の幾何学的な
レイアウトを示すハードブロックレイアウトデータと、
ハードブロック内に用いられている各セルについての結
線関係を示すハードブロックネットリストと、を用意す
る段階と、 前記セルライブラリと前記ハードブロックレイアウトデ
ータとに基づいて、個々のセルエリアを確定する段階
と、 前記ハードブロックレイアウトデータと前記ハードブロ
ックネットリストとに基づいて、セル内トランジスタの
座標を抽出する段階と、 前記セルエリアと前記トランジスタ座標とを照合するこ
とにより、セル配置を探索し、ハードブロックについて
のセル配置情報を、前記ハードブロックネットリスト上
でのインスタンスに対応したセルについての情報として
復元する段階と、 を有することを特徴とするLSI用ハードブロックのセ
ル配置情報復元方法。5. A method for restoring cell arrangement information indicating an internal cell arrangement for a hard block in which a plurality of cells, power supply lines, and wirings have already been incorporated, comprising: A cell library indicating the contents of the cell, hard block layout data indicating a geometric layout in the hard block,
A step of preparing a hard block netlist indicating a connection relation for each cell used in the hard block; and a step of determining individual cell areas based on the cell library and the hard block layout data. Extracting the coordinates of the transistor in the cell based on the hard block layout data and the hard block netlist; and searching for the cell arrangement by comparing the cell area with the transistor coordinates. Restoring cell arrangement information on a block as information on a cell corresponding to an instance on the hard block netlist; and restoring a cell arrangement information of an LSI hard block.
において、 個々のセルエリアを確定する段階を行う際に、セルライ
ブラリからセルサイズを抽出し、ハードブロックレイア
ウトデータからセル位置を抽出し、抽出したセルサイズ
およびセル位置に基づいて、セルエリアの確定を行うこ
とを特徴とするLSI用ハードブロックのセル配置情報
復元方法。6. The cell arrangement information restoring method according to claim 5, wherein, when the step of determining individual cell areas is performed, a cell size is extracted from a cell library and a cell position is extracted from hard block layout data. And a cell arrangement information restoring method for an LSI hard block, wherein a cell area is determined based on the extracted cell size and cell position.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000181470A JP2001358223A (en) | 2000-06-16 | 2000-06-16 | Method of designing lsi circuit using hard blocks and method of restoring cell-placement information of hard blocks for lsi |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000181470A JP2001358223A (en) | 2000-06-16 | 2000-06-16 | Method of designing lsi circuit using hard blocks and method of restoring cell-placement information of hard blocks for lsi |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001358223A true JP2001358223A (en) | 2001-12-26 |
Family
ID=18682396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000181470A Pending JP2001358223A (en) | 2000-06-16 | 2000-06-16 | Method of designing lsi circuit using hard blocks and method of restoring cell-placement information of hard blocks for lsi |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001358223A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100896464B1 (en) | 2007-12-21 | 2009-05-14 | 주식회사 하이닉스반도체 | Semiconductor device holing metal line between pads in common |
KR101004663B1 (en) | 2008-12-11 | 2011-01-04 | 주식회사 하이닉스반도체 | Device for extracting coordinate and method for it |
KR20160019047A (en) * | 2014-06-13 | 2016-02-18 | 삼성전자주식회사 | integrated circuit chips having field effect transistors with different gate designs |
KR20210030321A (en) * | 2018-06-28 | 2021-03-17 | 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 | Odd-fin height cell regions, semiconductor device having the same, and method of generating a layout diagram corresponding to the same |
-
2000
- 2000-06-16 JP JP2000181470A patent/JP2001358223A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100896464B1 (en) | 2007-12-21 | 2009-05-14 | 주식회사 하이닉스반도체 | Semiconductor device holing metal line between pads in common |
US8039965B2 (en) | 2007-12-21 | 2011-10-18 | Hynix Semiconductor Inc. | Semiconductor device with reduced layout area having shared metal line between pads |
KR101004663B1 (en) | 2008-12-11 | 2011-01-04 | 주식회사 하이닉스반도체 | Device for extracting coordinate and method for it |
KR20160019047A (en) * | 2014-06-13 | 2016-02-18 | 삼성전자주식회사 | integrated circuit chips having field effect transistors with different gate designs |
KR102350694B1 (en) | 2014-06-13 | 2022-01-12 | 삼성전자주식회사 | Integrated circuit chips having field effect transistors with different gate designs |
KR20210030321A (en) * | 2018-06-28 | 2021-03-17 | 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 | Odd-fin height cell regions, semiconductor device having the same, and method of generating a layout diagram corresponding to the same |
US11177256B2 (en) | 2018-06-28 | 2021-11-16 | Taiwan Semiconductor Manufacturing Company, Ltd. | Odd-fin height cell regions, semiconductor device having the same, and method of generating a layout diagram corresponding to the same |
KR102387001B1 (en) * | 2018-06-28 | 2022-04-18 | 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 | Odd-fin height cell regions, semiconductor device having the same, and method of generating a layout diagram corresponding to the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR900000202B1 (en) | Manufacturing of semiconductor integrated circuit device | |
US8839175B2 (en) | Scalable meta-data objects | |
JP3231741B2 (en) | Standard cell, standard cell row, standard cell placement and routing device and placement and routing method | |
JP3420694B2 (en) | Standard cell integrated circuit | |
US6446248B1 (en) | Spare cells placement methodology | |
US20050127406A1 (en) | Semiconductor integrated circuit device and method of producing the same | |
JPS63209144A (en) | Logic chip and manufacture of the same | |
JP4254059B2 (en) | Semiconductor integrated circuit design method | |
US6414852B1 (en) | Integrated circuit and method of design thereof | |
CN112086453B (en) | Multiplexer circuit and method of forming the same | |
JP2001358223A (en) | Method of designing lsi circuit using hard blocks and method of restoring cell-placement information of hard blocks for lsi | |
JPH05198672A (en) | Method of designing cell and manufacture of semiconductor integrated circuit using said method | |
JP2004040081A (en) | Mask-programmable logic device with programmable gate array part | |
JP2005197428A (en) | Semiconductor integrated circuit | |
US7698675B2 (en) | Method and design system for semiconductor integrated circuit with a reduced placement area | |
JP2010287768A (en) | Semiconductor device and method of manufacturing the same | |
US7073154B1 (en) | Apparatus and methods for interconnect zones and associated cells in integrated circuits | |
US7216323B2 (en) | Process for designing base platforms for IC design to permit resource recovery and flexible macro placement, base platform for ICs, and process of creating ICs | |
JPH06110972A (en) | Method for extracting circuit connection information from integrated circuit mask pattern | |
JP2570597B2 (en) | Layout design method for semiconductor integrated circuit | |
JPH0689937A (en) | Semiconductor integrated circuit and its designing method | |
JP3589995B2 (en) | Design method of semiconductor integrated circuit | |
JP3611202B2 (en) | Non-rectangular LSI layout method | |
JP5276380B2 (en) | Circuit diagram design apparatus, circuit diagram design program, and circuit diagram design method | |
JPH07130858A (en) | Semiconductor integrated circuit and its manufacturing method |