JP2013196186A - Design device for semiconductor integrated circuit, design method of semiconductor integrated circuit, design program for semiconductor integrated circuit, recording medium, and data structure - Google Patents
Design device for semiconductor integrated circuit, design method of semiconductor integrated circuit, design program for semiconductor integrated circuit, recording medium, and data structure Download PDFInfo
- Publication number
- JP2013196186A JP2013196186A JP2012060978A JP2012060978A JP2013196186A JP 2013196186 A JP2013196186 A JP 2013196186A JP 2012060978 A JP2012060978 A JP 2012060978A JP 2012060978 A JP2012060978 A JP 2012060978A JP 2013196186 A JP2013196186 A JP 2013196186A
- Authority
- JP
- Japan
- Prior art keywords
- wiring
- area
- hierarchy
- check
- upper layer
- 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
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
Description
本実施形態は、半導体集積回路の設計装置及び半導体集積回路の設計方法、半導体集積回路の設計プログラム、記録媒体、並びにデータ構造に関する。 The present embodiment relates to a semiconductor integrated circuit design apparatus and semiconductor integrated circuit design method, a semiconductor integrated circuit design program, a recording medium, and a data structure.
従来、半導体集積回路の設計では、アンド(AND)回路やオア(OR)回路などの論理回路、フリップフロップ回路、メモリ回路など既に設計されている基本回路であるセルをチップ内の所定領域に複数配置し、それぞれの信号接続を配線することで、所望の機能を実現してきた。近年、半導体製造技術の向上により、さらに多くの機能を1チップに搭載できるようになり、搭載ゲート規模が大きくなってきた。それに伴い、セルの配置、配線などの設計についての重要性が高まってきている。 Conventionally, in the design of a semiconductor integrated circuit, a plurality of cells, which are already designed basic circuits such as logic circuits such as AND circuits and OR circuits, flip-flop circuits, memory circuits, etc., are arranged in a predetermined area in the chip. The desired function has been realized by placing and wiring each signal connection. In recent years, with the improvement of semiconductor manufacturing technology, more functions can be mounted on one chip, and the mounting gate scale has increased. Along with this, the importance of cell layout and wiring design is increasing.
そこで、大規模な半導体集積回路の設計手法については、複数の機能ブロック毎にセルの配置及び配線を行い、それを更に一つの半導体集積回路装置としてレイアウト設計を行う階層設計手法が多く用いられてきている。従来の配線設計では、下位階層を構成する機能ブロック(以下、階層ブロックと示す)のセルの配置及び配線を設計後に、トップと呼ばれる上位階層のセルの配置及び配線が設計される。 Therefore, as a design method for a large-scale semiconductor integrated circuit, a hierarchical design method in which a cell is arranged and wired for each of a plurality of functional blocks and a layout design is further performed as one semiconductor integrated circuit device has been used. ing. In the conventional wiring design, after the arrangement and wiring of cells of functional blocks (hereinafter referred to as hierarchical blocks) constituting the lower hierarchy are designed, the arrangement and wiring of cells in the upper hierarchy called the top are designed.
このとき、配線が過密に配置されたエリアでは、配線層の製造工程において隣接する配線がくっついてしまいショートする可能性がある。逆に、配線の密度が極端に低いエリアでは、配線層の製造工程において配線が細ったり局所的な欠けが生じたりする危険性があり、断線が発生する恐れがある。従って、配線を設計する際には、特定のエリアで配線の密度が過密や過疎にならないように、メタル被覆率のチェックが行われている。具体的には、デザインルールで定められた特定の大きさのエリア(以下、チェックエリアと示す)を設定し、同エリア内に配置されたメタル被覆率を算出する。算出された被覆率の値が、規定範囲として予め定められた最小値から最大値までの範囲に収まらない場合、配線を他のエリアに分散させたりダミーの配線を設置したりするなどの再配線が行われる。 At this time, in an area where wirings are densely arranged, adjacent wirings may stick together in the manufacturing process of the wiring layer, which may cause a short circuit. On the other hand, in an area where the density of wiring is extremely low, there is a risk that the wiring will be thin or local chipping may occur in the manufacturing process of the wiring layer, and disconnection may occur. Therefore, when designing the wiring, the metal coverage is checked so that the wiring density does not become overcrowded or sparse in a specific area. Specifically, an area having a specific size (hereinafter, referred to as a check area) determined by the design rule is set, and the metal coverage ratio arranged in the area is calculated. If the calculated coverage value does not fall within the range from the minimum value to the maximum value set in advance as the specified range, rewiring such as distributing wiring to other areas or installing dummy wiring Is done.
従来、トップの設計時においては、階層ブロックの上面は配線禁止領域として扱われ、階層ブロック内の配線などの詳細な情報を知ることができなかった。このため、トップの配線後に行われるメタルの被覆率のチェックでは、階層ブロック内の全領域のメタル密度を100%、もしくは0%などと仮定してチェックが行われていた。従って、チェックエリアがトップと階層ブロックとに跨る箇所では、実際の値と異なる値でメタルの被覆率が算出されてしまう。このため、トップのメタルの被覆率のチェック時においては、被覆率が規定の範囲内に収まっていても、最終的にトップから階層ブロックまでをフラットに展開して行われる最終チェックにおいて、算出される実際のメタル被覆率が規定の範囲内に収まらないという事態が生じてしまう。このような場合、メタル被覆率が規定の範囲内に収まるように、トップの再配線やダミー配線の設置などを行わなければならず、設計の手戻りが生じてしまうという問題があった。 Conventionally, when designing the top, the upper surface of the hierarchical block is treated as a wiring prohibited area, and detailed information such as wiring in the hierarchical block cannot be known. For this reason, in the check of the metal coverage performed after the top wiring, the check is performed on the assumption that the metal density of the entire region in the hierarchical block is 100% or 0%. Therefore, the metal coverage is calculated with a value different from the actual value at a location where the check area extends between the top and the hierarchical block. For this reason, when checking the coverage of the top metal, even if the coverage is within the specified range, it is calculated in the final check that is finally performed flatly from the top to the hierarchical block. The actual metal coverage will not be within the specified range. In such a case, there is a problem that the rewiring of the top or the dummy wiring has to be performed so that the metal coverage falls within a specified range, resulting in rework of the design.
配線の設計が完了した後、トップの階層図面から階層ブロック内の回路情報を識別する装置においても、トップの設計時において階層ブロック内の詳細な情報を得ることはできず、トップと階層ブロックとに跨る箇所における正確なメタル被覆率の算出を行うことはできない。 Even after the wiring design is completed, the device for identifying the circuit information in the hierarchical block from the top hierarchical drawing cannot obtain detailed information in the hierarchical block at the time of the top design. It is not possible to accurately calculate the metal coverage at the part straddling the line.
そこで、本実施形態は、以上の点に鑑みてなされたもので、複数の階層から構成される半導体集積回路の設計においてトップの配線の設計を効率よく行うことができる、半導体集積回路の設計装置及び半導体集積回路の設計方法、半導体集積回路の設計プログラム、記録媒体、並びにデータ構造を提供することを目的とする。 Therefore, the present embodiment has been made in view of the above points, and a semiconductor integrated circuit design apparatus capable of efficiently designing a top wiring in designing a semiconductor integrated circuit composed of a plurality of layers. Another object of the present invention is to provide a semiconductor integrated circuit design method, a semiconductor integrated circuit design program, a recording medium, and a data structure.
本実施形態の半導体集積回路の設計装置は、上位階層と下位階層とから構成される半導体集積回路において、前記上位階層に配置された配線の位置、幅、長さを含む上位階層配線詳細情報と、前記下位階層に配置された配線の位置、幅、長さを含む下位階層配線詳細情報と、前記下位階層を構成する階層ブロックの前記上位階層における位置、及び前記上位階層に配置されたセルの位置を含む配置位置情報とが格納されている配置配線情報記憶部と、前記上位階層配線詳細情報と、前記下位階層配線詳細情報と、前記配置位置情報とに基づき前記上位階層における前記配線が占める面積割合を算出するメタル被覆率算出部と、を有することを特徴とする。 The semiconductor integrated circuit design apparatus according to the present embodiment includes, in a semiconductor integrated circuit composed of an upper layer and a lower layer, detailed information on upper layer wiring including the position, width, and length of the wiring arranged in the upper layer. , Detailed information on the lower layer wiring including the position, width, and length of the wiring arranged in the lower layer, the position in the upper layer of the hierarchical block constituting the lower layer, and the cell arranged in the upper layer The wiring in the upper layer occupies the placement and wiring information storage unit storing the position information including the position, the upper layer wiring detailed information, the lower layer wiring detailed information, and the placement position information. And a metal coverage calculation unit for calculating an area ratio.
以下、図面を参照して実施形態を説明する。 Hereinafter, embodiments will be described with reference to the drawings.
まず、図1を参照して、本実施形態に係わる半導体集積回路の設計装置の構成を説明する。図1は、本実施形態に係わる半導体集積回路の設計装置の構成の一例を説明する図である。 First, the configuration of a semiconductor integrated circuit design apparatus according to the present embodiment will be described with reference to FIG. FIG. 1 is a diagram for explaining an example of the configuration of a semiconductor integrated circuit design apparatus according to this embodiment.
図1に示すように、本実施形態に係わる半導体集積回路の設計装置1は、各種ソフトウエアプログラムを実行する中央処理装置(以下、CPUという)11a、ROM、RAMなどを含む装置本体11と、キーボード12aやマウス12bなどの入力装置12と、表示装置13と、ハードディスク装置などの外部記憶装置14(以下、単に記憶装置14と示す)とを有してなるパーソナルコンピュータ(PC)などのコンピュータである。
As shown in FIG. 1, a semiconductor integrated circuit design apparatus 1 according to this embodiment includes a central processing unit (hereinafter referred to as a CPU) 11a that executes various software programs, an apparatus
記憶装置14には、各種ソフトウエアプログラムとして、半導体集積回路のセルの配置、配線などの設計を行う設計プログラム14aが記憶されている。また、記憶装置14には、セルの位置や接続に関する情報や、配線の位置や接続に関する情報などが格納されている配置配線情報ファイル14b、セル内に敷設された配線の位置など、より詳細な情報が格納されている内部詳細情報ファイル14c、配線全般の情報が格納されているメタルマージ情報ファイル14d、の各種ファイルが格納されている。本体装置11のCPU11aは、記憶部14に記憶されたプログラム等を実行あるいは読み出すことができる。
The
なお、配置配線情報ファイル14bに格納されているセルの位置や接続に関する情報は配置位置情報に相当し、同じく配線の配置配線情報ファイル14bに格納されている配線の位置や接続に関する情報は上位階層配線詳細情報のうちセル間に敷設された配線の情報に相当する。また、内部詳細情報ファイル14cに格納されているセル内に敷設された配線の位置などのより詳細な情報は、下位階層配線詳細情報及びセル内に敷設された上位階層配線詳細情報に相当する。また、設計プログラム14aには、メタル被覆率を算出するメタル被覆率算出部が含まれている。(メタル被覆率の算出については後に詳述する。)
図2は、本実施形態に係わる半導体集積回路の設計装置1により設計される半導体集積回路の構成の一例を概念的に示した図である。図2に示すように、設計装置1により設計される半導体集積回路は、下位階層4と上位階層(以下、トップと示す)3とが積層に配置して構成されている。
It should be noted that the information regarding the position and connection of the cell stored in the placement and
FIG. 2 is a diagram conceptually illustrating an example of the configuration of the semiconductor integrated circuit designed by the semiconductor integrated circuit design apparatus 1 according to the present embodiment. As shown in FIG. 2, the semiconductor integrated circuit designed by the design apparatus 1 is configured by arranging a lower hierarchy 4 and an upper hierarchy (hereinafter referred to as “top”) 3 in a stack.
下位階層4は、1つ以上の階層ブロック4a、4bから構成されており、階層ブロック4a、4bにはそれぞれ図示しないセルが配置されている。また、セル内部及びセル間には必要な配線が敷設されている。トップ3は、下位階層4の上面に配置され、1つ以上のセル31a、31bが配置されている。セル31a、31bの間やそれぞれの内部、及び、セル31a、31bと階層ブロック4a、4bの間には、必要な配線が敷設されている。また、トップ3の周縁部には、外部とのインタフェースとしてのI/O部21が配置されており、セル31a、31bとI/O部21との間やI/O部21の内部には必要な配線が敷設されている。
The lower hierarchy 4 is composed of one or
トップ3の設計(セル31a、31bの配置や必要な配線の敷設)においては、階層ブロック4a、4bが配置されている領域は配線禁止領域として扱われる。従って、セル31a、31bや必要な配線は、階層ブロック4a、4bの上面以外の領域に配置及び敷設される。なお、図2において、トップ3の上面に示したフラット層(以下、単にフラットと示す)2は、階層ブロック4a、4bとトップ3に配置された全てのセル4a、4b、31a、31b、及び全ての配線を、トップ3の上面に投影して示したものである。
In the top 3 design (placement of
図2に例示したような、階層設計手法を用いて設計される半導体集積回路の配線、特にトップ3の配線を行う手順について、図3を用いて以下説明する。図3は、トップ3の配線手順の一部を説明するフローチャートである。図3に示すフローチャートは、トップ3に配線が敷設された状態でメタル被覆率のチェックを行い、チェック結果を実際の配線にフィードバックする手順について示している。なお、メタル被覆率とは、所定の領域において配線が占める面積割合をいう。本実施形態では、所定の領域として微小な評価エリア(以下、チェックエリア5と示す)をトップ3に配置し、同チェックエリア5におけるメタル被覆率を算出する。
A procedure for wiring of a semiconductor integrated circuit designed using the hierarchical design method as illustrated in FIG. 2, particularly, the top 3 wiring will be described below with reference to FIG. FIG. 3 is a flowchart for explaining a part of the top 3 wiring procedure. The flowchart shown in FIG. 3 shows a procedure for checking the metal coverage in a state where the wiring is laid on the top 3 and feeding back the check result to the actual wiring. The metal coverage is an area ratio occupied by wiring in a predetermined region. In this embodiment, a minute evaluation area (hereinafter referred to as a check area 5) is arranged on the top 3 as a predetermined area, and the metal coverage in the
配線が過密に配置されたエリアでは、配線層の製造工程において隣接する配線がくっついてしまいショートする可能性がある。逆に、配線の密度が極端に低いエリアでは、配線層の製造工程において配線が細ったり局所的な欠けが生じたりする危険性があり、断線が発生する恐れがある。従って、配線を設計する際には、特定のエリアで配線の密度が過密や過疎にならないように、配線を敷設する全領域に渡ってメタルの被覆率チェックを細密に行う必要がある。算出されたメタル被覆率の値が規定範囲として予め定められた最小値から最大値までの範囲に収まらない場合、配線を他のエリアに分散させたりダミーの配線を設置したりするなどの再配線が行われる(チェック結果のフィードバック)。 In an area where wirings are densely arranged, adjacent wirings may stick together in the manufacturing process of the wiring layer, which may cause a short circuit. On the other hand, in an area where the density of wiring is extremely low, there is a risk that the wiring will be thin or local chipping may occur in the manufacturing process of the wiring layer, and disconnection may occur. Therefore, when designing the wiring, it is necessary to perform a metal coverage check on the entire area where the wiring is laid so that the wiring density does not become overcrowded or sparse in a specific area. When the calculated metal coverage value does not fall within the range from the minimum value to the maximum value determined as the specified range, rewiring such as distributing the wiring to other areas or installing dummy wiring (Check result feedback).
チェックエリア5は、例えば一辺が50μmの矩形の形状を有する微小領域として設定される。チェックエリア5の設定位置を少しずつずらしスキャンしながら繰り返しチェックを行うことで、トップ3の全ての領域についてメタル被覆率をもれなくチェックする。図4を参照しながら、チェックエリア5のスキャン方法の一例を説明する。図4は、トップ3におけるチェックエリア5のスキャン方法の一例を説明する概略図である。
The
図4に示すように、チェックエリア5を例えばトップ3の左下隅部に設定し、メタル被覆率チェックを行う。チェックが終了したら、チェックエリア5を右横方向(図4におけるx方向)に移動させる。このとき、チェックエリア5の移動距離を、チェックエリア5の一辺の長さ(=lc)よりも短い距離(例えば1μm)に設定する。このようにすることで、直前のチェックエリア5と新たに設定されるチェックエリア5´とに重なり領域が設けられるため、チェック漏れを防止することができる。
As shown in FIG. 4, the
メタル被覆率チェックとチェックエリア5の移動を繰り返し、チェックエリア5がトップ3の右端部まで達したら、チェックエリア5を縦上方向(図4におけるy方向)に移動させる。この場合のチェックエリア5の移動距離も、横方向の場合と同様に、チェックエリア5の一辺の長さよりも短い距離(例えば1μm)に設定する。
The metal coverage rate check and the movement of the
縦方向に移動して設定したチェックエリア5”におけるメタル被覆率のチェックが終了したら、左横方向にチェックエリア5を移動させる。チェックエリア5がトップ3の右上隅部(もしくは左上隅部)に達するまでこのようなジグザグ状のスキャンを行うことで、トップ3の全ての領域についてもれなくメタル被覆率をチェックする。
When the check of the metal coverage in the
なお、チェックエリア5の大きさやトップ3のスキャン方法(チェックエリアの移動距離を含む)は、上述の値及び方法に限定されるものではなく、設計を行う半導体集積回路などに応じて都度最適な方法で行ってよい。
Note that the size of the
図3に戻って、トップ3の配線(特にメタル被覆率チェック)手順について説明する。なお、トップ3の配線に先んじて、下位階層4の設計(セル・配線の配置)が終了しているものとする。 Returning to FIG. 3, the top 3 wiring (especially metal coverage check) procedure will be described. It is assumed that the design of the lower hierarchy 4 (cell and wiring arrangement) has been completed prior to the top 3 wiring.
まず、ステップS1において、トップ3の所定位置にメタル被覆率をチェックするためのチェックエリア5を設定する。次に、ステップS2に進み、チェックエリア5内のメタル被覆率を算出する。メタル被覆率の算出方法は、チェックエリア5の設定位置によって異なる。チェックエリア5の設定位置とメタル被覆率の算出方法との関係について、図5を用いて説明する。図5は、トップ3におけるチェックエリア5の設定位置を説明する図である。
First, in step S1, a
図5に示すトップ3は、図2に示した半導体集積回路のトップ3と同一である。図2を用いて説明したように、トップ3の下層には階層ブロック4a、4bが配置されており、これと重ならないようにセル31a、31bが配置されている。メタル被覆率の算出方法は、チェックエリア5の設定位置によって次の三つの方法に大別される。
The top 3 shown in FIG. 5 is the same as the
一つ目は、チェックエリアの全領域が階層ブロック4a、4bに重なるように配置されている場合(図5におけるチェックエリア5aの場合)である。二つ目は、チェックエリアの全領域が階層ブロック4a、4bに重ならないように配置されている場合(図5におけるチェックエリア5bの場合)である。三つ目は、チェックエリアの一部が階層ブロック4a、4bに重なるように、トップ3と階層ブロック4a、4bとに跨って配置されている場合(図5におけるチェックエリア5cの場合)である。
The first is a case where the entire area of the check area is arranged so as to overlap the
以下、それぞれの場合についてメタル被覆率の算出方法を説明する。まず、一つ目の場合、すなわち、チェックエリア5aの全領域が階層ブロック4a、4bに重なるように配置されている場合について説明する。階層ブロック4a、4bのメタル被覆率は、下位階層の配線設計時にすでにチェックがなされており、規定範囲として定められた範囲内に収まるように配線が調整されている。従って、階層ブロック4a、4bの上部についてはメタル被覆率のチェックを改めて行う必要はない。すなわち、チェックエリア5aの全領域が階層ブロック4a、4bに重なるように配置されている場合は、図3のステップS2は省略(スキップ)される。
Hereinafter, the calculation method of the metal coverage will be described for each case. First, the first case, that is, the case where the entire area of the
次に、二つ目の場合、すなわち、チェックエリア5bの全領域が階層ブロック4a、4bに重ならないように配置されている場合について説明する。この場合のメタル被覆率の算出手順を、図6のフローチャートを用いて説明する。図6は、チェックエリア5におけるメタル被覆率の算出手順を説明するフローチャートである。
Next, a second case, that is, a case where the entire area of the
まず、ステップS21において、チェックエリア5bが設定された領域に敷設された配線の数と長さの情報を、配置配線情報ファイル14bから取得する。配置配線情報ファイル14bから取得できる配線の情報は、セル31a、31bや、Primitiveセル(IV、NAND、NOR等)などの、各種セル間を接続する配線に関するものである。従って、チェックエリア5bにセル31a、31bが配置されている場合、セル31a、31bの内部の配線については以降の手順において別途情報を取得する。
First, in step S21, information on the number and length of wirings laid in the area where the
次に、ステップS22に進み、配線の幅の情報を内部詳細情報ファイル14cから取得する。続くステップS23において、ステップS21で取得した配線の数と長さから配線のトータルの長さを算出し、これにステップS22で取得した配線の幅を乗じて配線の面積Stoを算出する。なお、チェックエリア5bが設定された領域の全てがトップのセル31a、31bに含まれている場合、上述したステップS21からステップS23は行わずにステップS24へ進む。
In step S22, information about the width of the wiring is acquired from the internal
チェックエリア5bが設定された領域にトップ3のセル31a、31bが配置されている場合(ステップS24、Yes)、ステップS25に進み、チェックエリア5bが設定された領域に存在するトップ3のセル31a、31bの位置情報を、配置配線情報ファイル14bから取得する。続いて、ステップS26において、セル31a、31bのうちチェックエリア5bに含まれる領域に敷設された配線の数と長さ、幅の情報を、内部詳細情報ファイル14cから取得する。
If the top 3
次に、ステップS27に進み、ステップS26で取得した配線の数と長さから配線のトータル長さを算出し、同じくステップS27で取得した配線の幅をこれに乗じて配線の面積Stiを算出する。次に、ステップS27で算出した配線の面積Stiと、ステップS23で算出した配線の面積Stoとを合算し、チェックエリア5bに含まれる配線のトータルの面積Staを算出する(ステップS28)。
Next, the process proceeds to step S27, where the total length of the wiring is calculated from the number and length of the wiring acquired in step S26, and the wiring width Sti is also calculated by multiplying this by the width of the wiring acquired in step S27. To do. Then, the area S ti wires calculated in step S27, summing the area S-to wiring calculated in step S23, to calculate the total area S ta of interconnections included in the
なお、チェックエリア5bが設定された領域にトップ3のセル31a、31bが配置されていない場合(ステップS24、No)、ステップS25からステップS27は行わずにステップS28に進む。この場合、ステップS28では、ステップS23で算出した配線の面積Stoが、チェックエリア5bに含まれる配線のトータルの面積Staとなる。
If the top 3
最後に、ステップS29において、チェックエリア5bに含まれる配線のトータルの面積Staをチェックエリア5bの面積で除し、チェックエリア5bのメタル被覆率を算出する。
Finally, in step S29, the total area Sta of the wirings included in the
最後に、三つ目の場合、すなわち、チェックエリア5cの一部が階層ブロック4a、4bに重なるように、トップ3と階層ブロック4a、4bとに跨って配置されている場合について説明する。図7は、チェックエリア5cの配置されている領域を説明する図である。
Finally, a third case, that is, a case where the
図7に示すように、チェックエリア5cには階層ブロック4aの一部と、トップ3の一部とが含まれている。従来、配線禁止領域である階層ブロック4aの領域は、トップ3の設計の時点においてはブラックボックスとして扱われており、階層ブロック4a内部の配線や詳細な情報は得られなかった。このため、チェックエリア5cのメタル被覆率を算出する場合、階層ブロック4aが配置されている部分のメタル被覆率は0%又は100%など固定された値が用いられていた。
As shown in FIG. 7, the
しかし、図7に示すように、階層ブロック4aの内部に実際に敷設されている配線41を用いて算出するメタル被覆率は、上述した固定値とは異なる。従って、当該部分の被覆率を0%と固定してチェックエリア5cのメタル被覆率を算出した場合、実際の配線41を用いて計算した値よりも小さい値が算出されてしまう。逆に当該部分の被覆率を100%と固定してチェックエリア5cのメタル被覆率を算出した場合、実際の配線41を用いて計算した値よりも大きい値が算出されてしまう。
However, as shown in FIG. 7, the metal coverage calculated using the
メタル被覆率が実際よりも小さい値として算出され、規定の範囲の下限を下回ってしまう場合、当該チェックエリア5c内にダミー配線を付加してトップ3の配線が行われる。実際のメタル被覆率は規定の範囲内におさまっているにもかかわらず、固定値を用いたために規定の下限を下回ってしまう場合、必要のないダミー配線を付加してしまうことになる。この不必要なダミー配線のために、トップ3の設計後に最終確認として行われるフラット2のメタル被覆率チェック(下位階層4とトップ3に敷設された配線をフラット2と呼ばれる平面に投影して行われるメタル被覆率チェック)において、当該エリアのメタル被覆率が規定範囲を超えてしまう可能性がある。規定範囲を超えた場合、トップ3の配線を再設計しなおさなければならず、設計の手戻りが生じてしまう。
When the metal coverage is calculated as a value smaller than the actual value and falls below the lower limit of the specified range, the top 3 wiring is performed by adding a dummy wiring in the
また、メタル被覆率が実際よりも大きい値として算出され、規定の範囲の上限を上回ってしまう場合、当該チェックエリア5cから配線を他の領域に移動させるなどトップ3の再配線が行われる。実際のメタル被覆率は規定の範囲にあるのにもかかわらず、固定値を用いたために規定の下限を上回ってしまう場合、本来そのエリアにあるべき配線を他のエリアに移動してしまうことになる。この不必要な再配線のために、トップ3の設計後の最終確認として行われるフラット2のメタル被覆率チェックにおいて、当該エリアのメタル被覆率が規定範囲を下回ってしまう可能性がある。規定範囲を下回った場合、上述の場合と同様にトップ3の配線を再設計しなおさなければならず、設計の手戻りが生じてしまう。
Further, when the metal coverage is calculated as a value larger than the actual value and exceeds the upper limit of the specified range, the top 3 rewiring is performed such as moving the wiring from the
このような手戻りをなくして効率よく設計が行われるべく、本実施形態の半導体集積回路の設計装置では、チェックエリア5cの配置領域に含まれる階層ブロック4aの配線の情報を取得できるようにし、実際に階層ブロック4aに敷設されている配線41を用いて当該領域のメタル被覆率を算出する。
In order to efficiently perform the design without such rework, the semiconductor integrated circuit design apparatus of the present embodiment can acquire the wiring information of the
すなわち図8に示すように、本実施形態の半導体集積回路の設計装置では、トップ3のメタル被覆率をチェックする際に、階層ブロック4aのチェックエリア5の一部が配置される可能性のある領域43については、配線の位置、数や長さなどの詳細な情報を内部詳細情報ファイル14cから取得できる。図8は、トップ3の設計時における階層ブロック4aの内部情報取得可能範囲を説明する図である。
That is, as shown in FIG. 8, in the semiconductor integrated circuit design apparatus of this embodiment, when checking the metal coverage of the top 3, a part of the
トップ3の設計時にチェックエリア5が設定される領域は、階層ブロック4aの外周部分、すなわち、最外周である境界部からチェックエリア5の一辺の長さ(=lc)分内側に延出した内周部までの間の領域である、リング状の領域43だけである。従って、これよりも内側の領域42は配線に関する情報が不要であるため、従来と同様に情報を取得できない領域(いわゆるブラックボックス領域)とする。このように、トップ3の設計時において配線に関する情報を取得できる領域43を階層ブロック4aの一部の必要な領域に限定することで、必要最低限の情報量のみを保持し、情報量を最低限に抑制することができる。
The area where the
チェックエリア5cの一部が階層ブロック4a、4bに重なるように、トップ3と階層ブロック4a、4bとに跨って配置されている場合のメタル被覆率の算出手順を、図6、図9のフローチャートを用いて説明する。図9は、チェックエリア5に含まれる階層ブロック4領域におけるメタル被覆率の算出手順を説明するフローチャートである。
FIG. 6 and FIG. 9 are flowcharts for calculating the metal coverage when the
まず、図9のステップS31において、チェックエリア5cが設定された領域に存在する階層ブロック4aの位置情報を、配置配線情報ファイル14bから取得する。続いて、ステップS32において、階層ブロック4aのうちチェックエリア5bに含まれる領域に敷設された配線の数と長さ、幅の情報を、内部詳細情報ファイル14cから取得する。
First, in step S31 of FIG. 9, the position information of the
次に、ステップS33に進み、ステップS32で取得した配線の数と長さから配線のトータル長さを算出し、同じくステップS32で取得した配線の幅をこれに乗じて配線の面積Sbiを算出する。 Next, the process proceeds to step S33, where the total length of the wiring is calculated from the number and length of the wiring acquired in step S32, and the wiring area S bi is calculated by multiplying the same by the width of the wiring acquired in step S32. To do.
続いて、図6のフローチャートのステップS21からステップS29を実行する。ステップS21からステップS29の手順は、上述した二つ目の場合(チェックエリア5bの全領域が階層ブロック4a、4bに重ならないように配置されている場合)と同様であるので、詳細な説明を省略する。なお、ステップS28では、ステップS33で算出した配線の面積Sbiと、ステップS27で算出した配線の面積Stiと、ステップS23で算出した配線の面積Stoとを合算して、チェックエリア5cに含まれる配線のトータルの面積Staを算出する。
Subsequently, steps S21 to S29 in the flowchart of FIG. 6 are executed. The procedure from step S21 to step S29 is the same as in the second case described above (when the entire area of the
上述のように、チェックエリア5の設置位置に応じてメタル被覆率の算出(図3のフローチャートのステップS2)が終了すると、ステップS3に進み、予め上限と下限とが設定された規定範囲とが算出されたメタル被覆率とを比較される(メタル被覆率のチェック)。通常、メタル被覆率の規定範囲はデザインルールに設定されており、例えば20%以上80%以下などの値が設定されている。
As described above, when the calculation of the metal coverage (step S2 in the flowchart of FIG. 3) according to the installation position of the
続いて、ステップS4において、ステップS3でのチェック結果が出力される。結果は表示装置13に逐次出力及び表示してもよいし、ファイルなどに書き込んでおいて必要に応じて表示してもよい。また、一つのチェックエリア5ごとに結果を出力してもよいし、トップ3に設定されるすべてのチェックエリア5の結果をまとめて出力してもよい。
Subsequently, in step S4, the check result in step S3 is output. The result may be sequentially output and displayed on the
トップ3の全領域についてメタル被覆率のチェックが終了している場合(ステップS5、Yes)、図3に示すフローチャートを終了する。なお、トップ3にメタル被覆率のチェックを行っていない領域が残っている場合(ステップS5、No)、チェックエリア5を移動・再設定してステップS1からステップS4の手順を実行する。
When the metal coverage check has been completed for all the top 3 regions (step S5, Yes), the flowchart shown in FIG. 3 is terminated. In addition, when the area | region where the metal coverage is not checked remains in the top 3 (step S5, No), the
図3に示すフローチャートを終了した後、ステップS1からステップS5で得られたメタル被覆率のチェック結果に基づき、敷設されている配線に対してダミー配線を追加したり配線を移動させたりして、トップ3の全ての領域でメタル被覆率が規定範囲に収まるように再配線が行われ、トップ3の配線設計が完了する。 After finishing the flowchart shown in FIG. 3, based on the result of checking the metal coverage obtained in step S1 to step S5, add dummy wiring to the laid wiring or move the wiring, Rewiring is performed so that the metal coverage falls within the specified range in all regions of the top 3, and the wiring design of the top 3 is completed.
このように、本実施形態によれば、半導体集積回路の配線設計において、階層設計手法を用いて設計を行う場合、トップ3の配線後にメタル被覆率をチェックする際に、下位階層4である階層ブロック4a、4bの外周領域(チェックエリア5が設定される可能性がある領域)に敷設されている配線の詳細な情報を取得できるようにしている。
As described above, according to the present embodiment, in the wiring design of the semiconductor integrated circuit, when the design is performed using the hierarchical design method, the layer which is the lower layer 4 is checked when the metal coverage is checked after the top 3 wiring. Detailed information on the wirings laid in the outer peripheral area of the
従って、チェックエリア5の設定領域に階層ブロック4a、4bが含まれる場合においても、当該領域に実際に敷設されている配線の詳細情報を用いてメタル被覆率を算出することができ、正しい値を算出することができる。実際の配線に基づいた正しいメタル被覆率に基づき再配線を行って、トップ3の全ての領域のメタル被覆率を規定範囲におさめれば、トップ3の設計完了後に、最終チェックとして行われるフラット2のメタル被覆率チェック(メタルマージ情報ファイル14dから全ての配線の詳細情報を取得し、これを用いて算出するメタル被覆率のチェック)も規定範囲に収まるため、トップ3の配線設計をやりなおす必要がなくなり、設計時間の短縮及び設計の向上が図れる。
Therefore, even when the setting area of the
なお、上述した実施形態では、メタル被覆率の算出に必要な各種情報を、配置配線情報ファイル14bと内部詳細情報ファイル14cとに分けて格納し、参照できるように構成したが、全体として必要な情報が取得できればよく、例えば配線の幅に関する情報は内部詳細情報ファイル14cでなく配置配線情報ファイル14bに格納してもよい。また、情報を格納するファイルの数は2つでなくてもよく、1つのファイルにまとめたり、3つ以上のファイルに分割して格納したりしてもよい。
In the above-described embodiment, various types of information necessary for calculating the metal coverage are stored in the placement and routing
また、本実施形態の変形例として、ハード化マクロやIP(Intellectual Property)などの物理ライブラリへの適用も可能である。例えば、LSIチップの一部を構成するための部分的な回路情報として用いられるハード化メガセルにおいて、これを構成する各層ごとに層の周縁領域(図8の領域43に相当する領域)の詳細な物理情報(上述した配線の詳細情報や、隣接容量の詳細情報など)をデータとして参照可能な状態にしておき、ハード化メガセルと一緒に提供する。ハード化メガセルをLSIチップにレイアウトする際に、これらの物理情報を参照しながら設計を行うことで、LSIチップ全体としてメタル被覆率エラーなどを防止することができ、歩留まりの向上につながる。
Further, as a modification of the present embodiment, it can be applied to a physical library such as a hardware macro or IP (Intellectual Property). For example, in a hardened megacell used as partial circuit information for constituting a part of an LSI chip, the details of the peripheral area of the layer (area corresponding to the
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として例示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると共に、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 Although several embodiments of the present invention have been described, these embodiments are illustrated by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.
1…半導体集積回路の設計装置、11…装置本体、11a…CPU、12…入力装置、12a…キーボード、12b…マウス、13…表示装置、14…記憶装置、14a…設計プログラム、14b…配置配線情報ファイル、14c…内部詳細情報ファイル、14d…メタルマージ情報ファイル、 DESCRIPTION OF SYMBOLS 1 ... Semiconductor integrated circuit design device, 11 ... Device main body, 11a ... CPU, 12 ... Input device, 12a ... Keyboard, 12b ... Mouse, 13 ... Display device, 14 ... Storage device, 14a ... Design program, 14b ... Placement wiring Information file, 14c ... internal detailed information file, 14d ... metal merge information file,
Claims (7)
前記上位階層の面積に比して微小な領域であるチェック領域を設定し、前記上位階層配線詳細情報と、前記下位階層配線詳細情報と、前記配置位置情報とに基づき、前記チェック領域における前記配線が占める面積割合を算出するメタル被覆率算出部と、
を有し、前記配置配線情報記憶部には、前記階層ブロックの最外周から所定長さだけ内側に延出した位置にある内周までの間の領域である、リング状周縁領域における前記下位階層配線詳細情報が格納されており、前記所定長さは、少なくとも前記チェック領域を構成する辺のうち最も短い辺の長さよりも長いことを特徴とする、半導体集積回路の設計装置。 In a semiconductor integrated circuit composed of an upper layer and a lower layer, detailed information on the upper layer wiring including the position, width, and length of the wiring arranged in the upper layer, and the position of the wiring arranged in the lower layer, The lower layer wiring detailed information including the width and the length, and the position information including the position of the hierarchical block constituting the lower layer in the upper layer and the position of the cell arranged in the upper layer are stored. A placement and routing information storage unit;
A check area that is a minute area compared to the area of the upper hierarchy is set, and the wiring in the check area is based on the upper hierarchy wiring detailed information, the lower hierarchy wiring detailed information, and the arrangement position information. A metal coverage calculation unit for calculating the area ratio occupied by
And the placement and routing information storage unit includes the lower layer in the ring-shaped peripheral region, which is a region from the outermost periphery of the hierarchical block to the inner periphery at a position extending inward by a predetermined length. Wiring detailed information is stored, and the predetermined length is longer than at least the shortest side among the sides constituting the check area.
前記上位階層配線詳細情報と、前記下位階層配線詳細情報と、前記配置位置情報とに基づき前記上位階層における前記配線が占める面積割合を算出するメタル被覆率算出部と、
を有することを特徴とする、半導体集積回路の設計装置。 In a semiconductor integrated circuit composed of an upper layer and a lower layer, detailed information on the upper layer wiring including the position, width, and length of the wiring arranged in the upper layer, and the position of the wiring arranged in the lower layer, The lower layer wiring detailed information including the width and the length, and the position information including the position of the hierarchical block constituting the lower layer in the upper layer and the position of the cell arranged in the upper layer are stored. A placement and routing information storage unit;
A metal coverage ratio calculating unit that calculates an area ratio occupied by the wiring in the upper layer based on the upper layer wiring detailed information, the lower layer wiring detailed information, and the placement position information;
An apparatus for designing a semiconductor integrated circuit, comprising:
前記上位階層に配置されたセルの位置を含む配置位置情報と、前記上位階層に配置された配線の位置、幅、長さを含む上位階層配線詳細情報とを用いて、前記チェック領域に含まれる前記上位階層に配置された配線の面積を算出し、
前記下位階層を構成する階層ブロックの前記上位階層における位置を含む前記配置位置情報と、前記下位階層に配置された配線の位置、幅、長さを含む下位階層配線詳細情報とを用いて、前記チェック領域に含まれる前記階層ブロックに配置された配線の面積を算出し、
前記上位階層に配置された配線の面積と前記階層ブロックに配置された配線の面積とを合算し、前記チェック領域の面積に占める割合を算出することを特徴とする、半導体集積回路の設計方法。 In the wiring design of the upper hierarchy of the semiconductor integrated circuit composed of the upper hierarchy and the lower hierarchy, a check area that is a minute area compared to the area of the upper hierarchy is set in the upper hierarchy,
Included in the check area by using placement position information including the position of the cell placed in the upper layer and upper layer wiring detailed information including the position, width, and length of the wiring placed in the upper layer Calculate the area of the wiring arranged in the upper hierarchy,
Using the arrangement position information including the position of the hierarchical block constituting the lower hierarchy in the upper hierarchy, and the lower hierarchy wiring detailed information including the position, width, and length of the wiring arranged in the lower hierarchy, Calculate the area of the wiring arranged in the hierarchical block included in the check area,
A method for designing a semiconductor integrated circuit, comprising: adding an area of wiring arranged in the upper hierarchy and an area of wiring arranged in the hierarchical block to calculate a ratio of the area of the check region.
前記上位階層に配置されたセルの位置を含む配置位置情報と、前記上位階層に配置された配線の位置、幅、長さを含む上位階層配線詳細情報とを用いて、前記チェック領域に含まれる前記上位階層に配置された配線の面積を算出し、
前記下位階層を構成する階層ブロックの前記上位階層における位置を含む前記配置位置情報と、前記下位階層に配置された配線の位置、幅、長さを含む下位階層配線詳細情報とを用いて、前記チェック領域に含まれる前記階層ブロックに配置された配線の面積を算出し、
前記上位階層に配置された配線の面積と前記階層ブロックに配置された配線の面積とを合算し、前記チェック領域の面積に占める割合を算出する処理をコンピュータ実行させることを特徴とする、半導体集積回路の設計プログラム。 In the wiring design of the upper hierarchy of the semiconductor integrated circuit composed of the upper hierarchy and the lower hierarchy, a check area that is a minute area compared to the area of the upper hierarchy is set in the upper hierarchy,
Included in the check area by using placement position information including the position of the cell placed in the upper layer and upper layer wiring detailed information including the position, width, and length of the wiring placed in the upper layer Calculate the area of the wiring arranged in the upper hierarchy,
Using the arrangement position information including the position of the hierarchical block constituting the lower hierarchy in the upper hierarchy, and the lower hierarchy wiring detailed information including the position, width, and length of the wiring arranged in the lower hierarchy, Calculate the area of the wiring arranged in the hierarchical block included in the check area,
A process for calculating the ratio of the area of the wiring arranged in the upper layer and the area of the wiring arranged in the hierarchical block to calculate the ratio of the area in the check region is executed by a computer. Circuit design program.
前記下位階層に配置された配線の位置、幅、長さを含む下位階層配線詳細情報と、
前記下位階層を構成する階層ブロックの前記上位階層における位置、及び前記上位階層に配置されたセルの位置を含む配置位置情報と、
前記上位階層の面積に比して微小な領域であるチェック領域を前記上位階層に設定し、前記配置位置情報と前記上位階層配線詳細情報とを用いて前記チェック領域に含まれる前記上位階層に配置された配線の面積を算出し、前記配置位置情報と前記下位階層配線詳細情報とを用いて前記チェック領域に含まれる前記階層ブロックに配置された配線の面積を算出し、前記上位階層に配置された配線の面積と前記階層ブロックに配置された配線の面積とを合算し、前記チェック領域の面積に占める割合を算出する処理をコンピュータ実行させるプログラムと、
が格納されている記録媒体。 In a semiconductor integrated circuit composed of an upper layer and a lower layer, upper layer wiring detailed information including the position, width, and length of the wiring arranged in the upper layer;
Detailed information on lower layer wiring including the position, width and length of the wiring arranged in the lower layer,
Arrangement position information including the position of the hierarchical block constituting the lower hierarchy in the upper hierarchy, and the position of the cell arranged in the upper hierarchy;
A check area, which is a small area compared to the area of the upper hierarchy, is set in the upper hierarchy, and is arranged in the upper hierarchy included in the check area using the placement position information and the upper hierarchy wiring detailed information. And calculating the area of the wiring arranged in the hierarchical block included in the check region using the placement position information and the lower hierarchical wiring detailed information, and arranging the wiring in the upper hierarchy. A program for causing a computer to execute a process of calculating the ratio of the area of the check region to the area of the check region,
Is a recording medium on which is stored.
前記上位階層に配置された配線の位置、幅、長さを含む上位階層配線詳細データと、前記下位階層を構成する階層ブロックの前記上位階層における位置、及び前記上位階層に配置されたセルの位置を含む配置位置データと、前記階層ブロックの最外周から所定長さだけ内側に延出した位置にある内周までの間の領域であるリング状周縁領域に配置された、配線の位置、幅、長さを含む下位階層配線詳細データとから構成され、前記所定長さは、少なくとも前記チェック領域を構成する辺のうち最も短い辺の長さよりも長いことを特徴とする、半導体集積回路のデータ構造。 A data structure of a semiconductor integrated circuit composed of an upper layer and a lower layer,
Detailed data on the upper layer wiring including the position, width and length of the wiring arranged in the upper layer, the position in the upper layer of the hierarchical block constituting the lower layer, and the position of the cell arranged in the upper layer And the position of the wiring, the width of the wiring arranged in the ring-shaped peripheral region, which is the region between the outermost periphery of the hierarchical block and the inner periphery at a position extending inward by a predetermined length, Data structure of a semiconductor integrated circuit, characterized in that the predetermined length is longer than at least the shortest side among the sides constituting the check area. .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012060978A JP2013196186A (en) | 2012-03-16 | 2012-03-16 | Design device for semiconductor integrated circuit, design method of semiconductor integrated circuit, design program for semiconductor integrated circuit, recording medium, and data structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012060978A JP2013196186A (en) | 2012-03-16 | 2012-03-16 | Design device for semiconductor integrated circuit, design method of semiconductor integrated circuit, design program for semiconductor integrated circuit, recording medium, and data structure |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013196186A true JP2013196186A (en) | 2013-09-30 |
Family
ID=49395098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012060978A Pending JP2013196186A (en) | 2012-03-16 | 2012-03-16 | Design device for semiconductor integrated circuit, design method of semiconductor integrated circuit, design program for semiconductor integrated circuit, recording medium, and data structure |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013196186A (en) |
-
2012
- 2012-03-16 JP JP2012060978A patent/JP2013196186A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11675954B2 (en) | Method of designing a device | |
US11714947B2 (en) | Method and layout of an integrated circuit | |
US10002223B2 (en) | Method of designing layout of semiconductor device | |
US8225261B2 (en) | Methods for defining contact grid in dynamic array architecture | |
US9626472B2 (en) | Method and system of forming layout design | |
Seo et al. | Pin accessibility-driven cell layout redesign and placement optimization | |
US11093681B2 (en) | Method and system for generating layout design of integrated circuit | |
KR102255450B1 (en) | Layout design method for semiconductor device | |
US11842131B2 (en) | Method and system for generating layout diagram for semiconductor device having engineering change order (ECO) cells | |
US9213793B1 (en) | Methods, systems, and articles of manufacture for implementing electronic designs using flexible routing tracks | |
JP2013196186A (en) | Design device for semiconductor integrated circuit, design method of semiconductor integrated circuit, design program for semiconductor integrated circuit, recording medium, and data structure | |
US11176303B2 (en) | Constrained cell placement | |
US8296689B1 (en) | Customizing metal pattern density in die-stacking applications | |
JP5531723B2 (en) | Semiconductor device design method and program | |
JP4860661B2 (en) | Semiconductor package design method and semiconductor package layout design apparatus | |
US10509888B1 (en) | System and method for forming integrated device | |
JP2010097972A (en) | Layouting device of semiconductor integrated circuit and layouting method | |
JP2007273847A (en) | Design method of semiconductor integrated circuit device, and design equipment | |
JP2011060015A (en) | Design method | |
JP2015194965A (en) | Design support device, design support method, and design support program | |
JP2015102908A (en) | Design method and device | |
JP2012083952A (en) | Layout design device, layout design method, and program |