JP3589995B2 - 半導体集積回路の設計方法 - Google Patents
半導体集積回路の設計方法 Download PDFInfo
- Publication number
- JP3589995B2 JP3589995B2 JP2001085790A JP2001085790A JP3589995B2 JP 3589995 B2 JP3589995 B2 JP 3589995B2 JP 2001085790 A JP2001085790 A JP 2001085790A JP 2001085790 A JP2001085790 A JP 2001085790A JP 3589995 B2 JP3589995 B2 JP 3589995B2
- Authority
- JP
- Japan
- Prior art keywords
- placement
- macro
- hard macro
- area
- routing
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Description
【発明の属する技術分野】
本発明は半導体集積回路の設計方法に関し、特に他の機能ブロックのための空き領域を内部に有するハードマクロを有する半導体集積回路の設計方法に関する。
【0002】
【従来の技術】
近年、例えば、CBIC(Cell Based Integrated Circuit:セルベース集積回路)方式により設計された大規模半導体集積回路(LSI)が広く用いられてきている。この種のLSIは、一般にそれぞれが1つ又は複数の機能ブロックを含む複数のハードマクロから構成される。
【0003】
一般に、マクロ上(内)部を通過する信号配線は、リピータの挿入なしに長い距離にわたって配線のみで信号が通過していくため波形が鈍り遅延が悪化することや、長配線によるチップ(ウェハ)製造過程、特に微細加工に起因する下記のような問題が存在していた。しかし、マクロ上部を通過する配線による信号遅延時間がチップのターゲット周波数に対して許容範囲内であったり、また、万一、配線の遅延時間が許容範囲外であったとしても、該当マクロの周辺をリピータを挿入しながら迂回することによりターゲット周波数を満足することが可能である。また、微細加工といってもアンテナ効果によるゲート絶縁膜破壊が起こらないような加工寸法であったりして、特に現実の問題としてすぐに解決しなければならないということには至らないらなかった。
【0004】
しかし、近年、SOC(システム・オン・チップ)が推進されるなか、従来は別チップとして用意されていた「機能ブロック」が同一チップ上に組み込まれる趨勢になってきている。これにより、より大きなハードマクロとなったり、同一チップ上に組み込まれることでより高速なターゲット周波数を要求されたり、アンテナ効果によるゲート絶縁膜破壊が問題となるような加工寸法になったりしている。従って、ただ単に大規模マクロの上部を自由に信号配線が通過することを許可していても、実際にはリピータを挿入しながら迂回したり、場合によってはハードマクロの形状自体を見直したりしなければならず、通過配線用に用意されたマクロ上部の配線領域は有効に利用できないのが実状である。
【0005】
このことから、大規模ハードマクロの中にも該当ハードマクロと関係ない別機能のブロック、すなわち、リピータ(中継用バッファ)の挿入(配置)が可能であることが要求されている。
【0006】
このような要求に応えらため、例えば、特開平05−160266号公報記載の従来の半導体集積回路の設計方法は、予め予備素子を埋め込んでおき必要に応じてこの予備素子を使用することを提案している。
【0007】
ただし、この従来技術の本来の目的は、製品開発過程で生じた変更に対して容易にかつ短期間で対処し得る半導体装置を実現することにあり、特に、開発が製造工程の実施段階に入ってしまった製品を出来る限り低コストで修正することを主眼とするものである。従って、製造工程前のチップ設計段階での修正に対しては対応していない。
【0008】
従来の半導体集積回路の設計方法を適用したLSIの一例を基板レイアウト図で示す図7を参照すると、この図に示すLSIは基板101上に形成され各々が回路群から成るマクロである8個のモジュールM101〜M108と、配列した各モジュール間に発生した3箇所の空き領域に配置した所定の予備ゲートRG1と、予備ユニットRU1,RU2と、基板101の四辺に沿って形成した多数のボンディングパッドPADとを備える。
【0009】
次に、図7を参照して、従来の半導体集積回路の設計方法の動作について説明すると、このLSIは、いわゆるCBIC方式により設計される。モジュールM101〜M108の各々は、予めモジュールライブラリに用意された標準的なモジュール又は予めセルライブラリに用意されたマクロセルを組み合わせて成るユーザモジュールにより構成し、内部バス(図示省略)を介して論理的に結合する。
【0010】
モジュールM101〜M108は、その持つべき機能を最小の素子数とレイアウト面積及び配線長で実現すべく設計し、これらのモジュールのレイアウト及び結合配線は、コンピュータ支援設計(CAD)を用いた自動配線配置設計システムにより行う。これにより、LSIの設計期間を短縮すると共に、LSI全体としての素子数及び基板所要面積の削減並びに信号伝達遅延時間の短縮を図る。
【0011】
このように、モジュールM101〜M108は、その機能を最小の素子数とレイアウト面積及び配線長で実現すべく設計され、確定した最適回路構成及び最適配置をもって固定的に形成される。このとき、モジュールM101〜M108のレイアウト形状は必然的に矩形となり、各モジュール間には、最適設計が行われたとしてもなおいくつか、この例では3箇所の空き領域が発生する。このため、これら3箇所の空き領域に予備ゲートRG1と、予備ユニットRU1,RU2を配置する。
【0012】
製品開発の過程で何らかの変更が生じた場合、半導体基板の製作が終了した時点で、対応する結合配線をFIB(Focused Ion Beam)又はレーザCVD(Chemical Vapor Deposition)を用いて選択的に切断又は追加することにより選択的に有効とする。
【0013】
上述したように、従来の半導体集積回路の設計方法は、予め、予備ゲートや予備ユニット等の予備素子をモジュール間の空き領域に配置して置くので、配置配線ツールや論理設計・検証ツールに「予備素子付きハードマクロ」という形で認識させておく必要がある。
【0014】
その結果、予備素子を備えたマクロは予め予備素子を伴った形でモデル化されている必要があり、予備素子を使用した場合としなかった場合において細かく動作を規定しなければならず、ライブラリが煩雑化し、マクロ開発TATが予想外に長引くこととなる。
【0015】
また、最終的に未使用となった予備素子は必ず各端子を正しく処置(電源またはGNDへ接続)する必要があり、処置し忘れるとDC電流が流れたり、最悪の場合ラッチアップを起こす危険性がある。
【0016】
また、予備素子使用の場合と不使用の場合とで該当マクロの本来の遅延情報や消費電流情報が変化する場合には、該当個所をリピータとして使用/不使用によりチップ全体のタイミングなどが変化してしまうために、チップ設計そのものがなかなか収束しないという欠点が存在する。
【0017】
さらに、予備素子付きの該当マクロが階層設計の下層階層で使用された場合には、上位階層から予備素子が認識できない可能性も有る。
【0018】
またさらに、最終的に予備素子が未使用でよかったのか、あるいはツールの問題で端子接続(処理)が正しく行えなかったのかなどの判断は人手を必要とするため、確認忘れ等のミスが混入したり、膨大な検証時間が必要になることが予想される。
【0019】
さらに、予備素子付きマクロを各種設計ツールを正しく認識できるような設計フローを追加する必要があるため、既存の設計体系から大幅な変更を余儀なくされるという問題もある。
【0020】
【発明が解決しようとする課題】
上述した従来の半導体集積回路の設計方法は、予め予備素子をモジュール間の空き領域に配置して置くので、配置配線ツールや論理設計・検証ツールに「予備素子付きハードマクロ」という形で認識させておく必要があるため、予備素子を備えたマクロは予め予備素子を伴った形でモデル化されている必要があり、予備素子を使用した場合としなかった場合において細かく動作を規定しなければならず、ライブラリが煩雑化し、マクロ開発TATが予想外に長引くという欠点があった。
【0021】
また、最終的に未使用となった予備素子は必ず各端子を正しく処置(電源またはGNDへ接続)する必要があり、処置し忘れるとDC電流が流れたり、最悪の場合ラッチアップを起こす危険性があるという欠点があった。
【0022】
また、予備素子使用の場合と不使用の場合とで該当マクロの本来の遅延情報や消費電流情報が変化する場合には、該当個所をリピータとして使用/不使用によりチップ全体のタイミングなどが変化してしまうために、チップ設計そのものがなかなか収束しないという欠点があった。
【0023】
さらに、予備素子付きの該当マクロが階層設計の下層階層で使用された場合には、上位階層から予備素子が認識できない可能性が有るという欠点があった。
【0024】
またさらに、最終的に予備素子が未使用でよかったのか、あるいはツールの問題で、端子接続処理が正しく行えなかったのかなどの判断は人手を必要とするため、確認忘れ等のミスの混入や、膨大な検証時間の必要可能性を生じ得るという欠点があった。
【0025】
さらに、予備素子付きマクロを各種設計ツールを正しく認識できるような設計フローを追加する必要があるため、既存の設計体系から大幅な変更を余儀なくされるという欠点があった。
【0026】
本発明の目的は、従来の設計体系をそのまま踏襲可能な形でハードマクロ内部に別機能のブロックを配置することが可能な未使用領域、すなわち、素子及び配線が予め存在しない領域を、設計ツールに認識できる形のレイアウト情報として持つ半導体集積回路の設計方法を提供することにある。
【0027】
【課題を解決するための手段】
請求項1記載の発明の半導体集積回路の設計方法は、少なくとも1つのハードマクロ(以下マクロ)を有する半導体集積回路の設計方法において、
前記マクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、前記マクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、
前記マクロ内部の前記実際の素子又はブロック及び配線が存在しない内部未使用領域を前記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、
配置配線の設計段階で配置配線ツールに前記マクロの内部の前記未使用領域を前記マクロに所属する前記実際の素子又はブロック以外の新規ブロック又は新規素子の配置領域として認識させることを特徴とするものである。
【0028】
また、請求項2記載の発明は、請求項1記載の半導体集積回路の設計方法において、
前記暗示的に定義された前記マクロの前記内部未使用領域が、前記配置配線ツールにより配置完了後の前記マクロの外部に存在する既存のマクロ外部未使用領域と等価に扱われることを特徴とするものである。
【0029】
請求項3記載の発明の半導体集積回路の設計方法は、少なくとも1つのハードマクロ(以下マクロ)を有する半導体集積回路の設計方法において、前記マクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、前記マクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、前記マクロ内部の前記実際の素子又はブロック及び配線が存在しない内部未使用領域を前記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、配置配線の設計段階で配置配線ツールに前記マクロの内部の前記未使用領域を前記マクロに所属する前記実際の素子又はブロック以外の新規ブロック又は新規素子の配置領域として認識させ、前記マクロの前記内部未使用領域が、前記内部未使用領域のサイズとその配置位置、及び前記マクロ内部で複数個存在する場合に配置間隔(ピッチ)に関して一定の規則性が存在することを特徴とするものである。
【0030】
また、請求項4記載の発明は、請求項3記載の半導体集積回路の設計方法において、
前記内部未使用領域のサイズが、信号中継用バッファであるリピータブロックを少なくとも1個を新規ブロックとして配置可能であることを特徴とするものである。
【0031】
また、請求項5記載の発明は、請求項3記載の半導体集積回路の設計方法において、
前記マクロが回転配置又はミラー配置が可能な場合、前記マクロが回転配置又はミラー配置されても前記マクロの前記内部未使用領域の縦及び横のサイズが少なくとも1個の信号中継用バッファであるリピータブロックを十分配置可能であることを特徴とするものである。
【0032】
請求項6記載の発明の半導体集積回路の設計方法は、少なくとも1つのハードマクロ(以下マクロ)を有する半導体集積回路の設計方法において、
前記マクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、前記マクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、
前記マクロ内部の前記実際の素子又はブロック及び配線が存在しない内部未使用領域を前記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、
配置配線の設計段階で配置配線ツールに前記マクロの内部の前記未使用領域を前記マクロに所属する前記実際の素子又はブロック以外の新規ブロック又は新規素子の配置領域として認識させ、
信号遅延及び/又は減衰による信号の劣化及び/又はエレクトロマイグレーション/熱電子の影響を考慮した信号完全性に関連する配線の制限長を限界距離とし、
前記マクロの外周部から内部に向かって最初に配置される前記内部未使用領域が前記マクロの外周部から縦方向及び横方向のいずれの方向に対しても前記限界距離以内に配置され、
前記マクロ内部の全ての前記内部未使用領域が、前記縦方向及び前記横方向のいずれの方向に対しても相互に前記限界距離以内で配置されることを特徴とするものである。
【0033】
また、請求項7記載の発明は、請求項1又は3又は6記載の半導体集積回路の設計方法において、
前記マクロの電源ラインから前記内部未使用領域に配置される前記新規ブロック又は新規素子への電源供給を行うよう構成することを特徴とするものである。
【0034】
また、請求項8記載の発明は、請求項6記載の半導体集積回路の設計方法において、前記マクロの縦方向及び横方向のいずれものサイズが前記限界距離以内のとき、複数の前記マクロを組み合わせて配列することにより上位階層の機能ブロックである上位マクロとして定義し、前記マクロ内部の前記内部未使用領域が前記上位マクロの縦方向及び横方向のいずれの方向に対しても相互に前記限界距離以内で配列されるよう構成することを特徴とするものである。
【0035】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【0036】
本実施の形態の半導体集積回路の設計方法は、少なくとも1つのハードマクロ(以下マクロ)を有する半導体集積回路の設計方法において、上記マクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、上記マクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、上記マクロ内部の上記実際の素子又はブロック及び配線が存在しない未使用領域を上記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、配置配線の設計段階で配置配線ツールに上記マクロの内部の上記未使用領域を上記マクロに所属する上記実際の素子又はブロック以外のブロック又は素子の配置領域として認識させることを特徴とするものである。
【0037】
次に、本発明の実施の形態の設計方法を適用したハードマクロ(以下マクロ)の一例をレイアウト図で示す図1(A)を参照すると、この図に示す本実施の形態の半導体集積回路の設計方法を適用したマクロは、点abcdで囲まれた長方形(以下、長方形abcd等と呼ぶ)から成るマクロ全体であるマクロ1と、マクロ1の外部の何も配置されていない未使用領域2と、長方形efghで囲まれ配置禁止を定義しなかった内部の未使用領域3とを有する。この中には素子や配線は存在せずにマクロ1外部の未使用領域2と同じ状態となっている。
【0038】
マクロ1は、各々がマクロ1を分割し長方形aihl,ibje,fjck,及びlgkdで定義された使用領域部分であり新たなブロックの配置を禁止する配置禁止領域11,12,13及び14を有する。
【0039】
ライブラリにおけるこのマクロ1の定義方法をプログラム記述で示す図1(B)を参照すると、マクロ1の定義全体を示す記述900は、マクロ1のピン情報を定義した記述901と、マクロ1の禁止情報を定義した記述902とを有する。
【0040】
記述902は、禁止情報の中でも特に配置禁止に関することを定義している部分である記述903を有する。
【0041】
この様に明示的に配置禁止情報(領域)を定義した場合は、配置配線ツールが「配置禁止」を定義されなかった未使用領域を配置禁止領域の反対論理として暗示的に配置可能領域3として認識することになる。このようにして配置可能領域を定義できる。
【0042】
なお、通常はハードマクロの内部に別のブロックを重複させて配置することは行わない(互いの素子・配線がショートしてしまうため)ので、明示的に配置禁止領域を定義していない場合は「マクロ全体が配置禁止である」と配置配線ツールが認識する。
【0043】
図1(A)の配置禁止領域に置かれるべきレイアウト情報や図1(B)のその他のレイアウト情報を定義する方法に関しては、当業者にとって周知であり、また本発明とは直接関係しないので、その詳細な構成については説明を省略する。
【0044】
次に、図1(A),(B)及び配置配線ツールが認識したマクロ1のレイアウト形状をレイアウト図で示す図2を参照して本実施の形態の動作について説明すると、まず、配置配線ツールは、図1(B)に示すような配置禁止情報が明示的に定義されたレイアウト形状を読み込むことで、配置禁止領域以外の領域、すなわち、配置禁止が定義されてない領域が「何も配置されていない未使用の領域である」と認識する。
【0045】
一般に、配置配線ツールは、図1(C)に示すように、この未使用領域を、意図的にそれぞれ別機能ブロックであるマクロ11A,12A,13A,及び14Aを強制的に配置した場合に、まだ配置可能な領域として残っている空き領域である未使用領域3Aと全く同一の未使用領域として認識するように設計されている。本実施の形態でも、配置配線ツールが上記想定の認識機能を有するものとする。
【0046】
未使用領域2Aは、マクロ11A,12A,13A,及び14Aの外部におけるまだ何も配置されていない未使用領域であり、未使用領域3Aは、マクロ11A〜14Aで囲まれた未使用領域である。
【0047】
次に、詳細配線の設計段階において、信号配線がマクロ1の上部を通過する必要が発生した場合、配置配線ツールがその配線の途中にリピータ(信号中継用バッファ)の挿入を必要とすると判断すれば、マクロ1の内部の未使用領域3に、マクロ1の外部の未使用領域2と全く同一方法でリピータを挿入し、チップ設計を行う。
【0048】
これは未使用領域3には、最初から何も素子が存在しないため、通常の未使用領域2と全く同一であると配置配線ツールが解釈するからである。
【0049】
このように、配置禁止定義を積極的に用いることで、逆に暗示的に配置可能領域を定義でき、それが特別な手法を用いなくとも配置配線ツールに配置可能領域として認識される。
【0050】
配置配線ツールにとっては、マクロ1の内部の空き領域、すなわち未使用領域3はマクロ1の外部の通常の未使用領域2と全く等価なものとして扱われるため、マクロ1の内部の未使用領域2に必要に応じて後から別機能ブロックであるリピータなどの予備素子を配置できる。
【0051】
この場合、マクロと予備素子は互いに独立した関係にあるため、設計フロー・設計ツールは従来通り全く変更する必要はない。
【0052】
しかも、予備素子が予め存在しない故、予備素子が未使用である場合の処理やその検証は不要となる。
【0053】
さらに、どの部分の予備素子を使ったのかによってチップ設計にフィードバックをかける必要はない。
【0054】
次に、本発明の第2の実施の形態を特徴づけるマクロをレイアウト図で示す図2(A),(B)を参照すると、この図に示す本実施の形態のマクロ1Bの前述の第1の実施の形態のマクロ1との相違点は、マクロ1Bの内部に暗示的に作られた複数の配置可能領域である未使用領域300〜309,310〜319,・・・,391〜399を有することである。
【0055】
図2(B)に示した未使用領域に配置対象とするリピータ4の寸法は、説明の便宜上、横×縦の各々を長さc,dとする。
【0056】
また、信号完全性(Signal Integrity)に関連する配線の制限長を距離Aで表す。距離Bは0≦B<Aを満たす距離であり、ここではリピータ4の配置間隔(ピッチ)を示す。ここで、信号完全性に関連する配線の制限長とは、これ以上の配線長を用いた場合に信号遅延及び/又は減衰による信号の劣化や、EM(エレクトロマイグレーション)/HotE(熱電子)の影響等により問題となる距離を意味する。
【0057】
図2(A)に示す、マクロ1Bの内部の未使用領域300〜309,310〜319,・・・,391〜399の各々の寸法は、リピータ4が最低1つ以上配置できる大きさである。また、マクロ1Bの外周部からこのマクロの内側に向かって縦方向及び横方向とも最初に現れる未使用領域は必ず距離Bを満たす範囲で現れること、及び、全ての未使用領域は、互いに隣接し合う間隔が距離Bを満たすように準備されている。さらに、距離Bを満たす距離の基点は未使用領域内に配置されるであろうリピータ4の入出力端子の位置を想定して距離を算出したレイアウト構成となっている。
【0058】
この時に、マクロ1の上部を信号配線が通過する場合には必ず未使用領域300〜399の何れかにリピータ4を挿入(配置)しながら通過することが可能となる。
【0059】
ここで、距離Aは、L=0.15μmのプロセスの世代では、遅延の観点からは3mm程度おきにリピータを挿入する必要があること、及び、EM(エレクトロマイグレーション)/HotE(ホットエレクトロン)に関する制限からは、動作周波数にもよるが0.5pF(配線容量換算で2〜3mm)程度しか許容できそうも無いことが予測されている。このため、従来は、4〜5mm角規模のハードマクロが存在した場合には、このマクロ上は通過不可能となるためマクロの外周部を迂回せざるを得ないことが問題であったが、大規模なハードマクロ内部にリピータの配置可能な中継地点があることでマクロ上を信号が通過可能となる。
【0060】
本実施の形態では、未使用領域、すなわち配置可能領域のサイズと間隔(ピッチ)に規則性を持たせたことで縦又は横方向どちらかの通過信号であっても必ずリピータによる中継を得ることが出来るため、速度劣化せず迂回による配線集中も起こらないという効果も出てくる。
【0061】
次に、本発明の第3の実施の形態を特徴づけるマクロをレイアウト図で示す図3(A),(B),(C)を参照すると、この図に示す本実施の形態のマクロ1Cの前述の第1の実施の形態のマクロ1との相違点は、このマクロ1Cが回転及びミラー配置可能であることである。
【0062】
図3(A)は、マクロ1Cを、図3(B)はマクロ1Cを90度回転して配置したマクロ1CAをそれぞれ示す。
【0063】
マクロ1Cは未使用領域31,32を有し、マクロ1CAは未使用領域31,32の90度回転配置になった場合の未使用領域31A,32Aを有する。
【0064】
図3(C)は、未使用領域31、32,31A,32Aに配置を予定しているリピータ4を示す。リピータ4の横と縦の大きさはc及びdであり、かつ、d>cの関係にあるとする。
【0065】
図3(A)に上述した信号完全性に関連する配線の制限長である距離Aと、0≦B<Aを満たすリピータ配置間隔(ピッチ)である距離Bを示す。
【0066】
このときにリピータ4の配置可能な領域である未使用領域31,32,31A,32Aの縦及び横のサイズは、マクロ1Cが、どのように回転及びミラー配置されても必ずリピータ4が正しく配置できるように各辺がd以上の大きさで構成されていることが特徴である。
【0067】
このことで、どのように配置されても問題なくリピータ4による中継を伴いながらマクロ1C上を信号配線が通過していくことが可能になる。
【0068】
次に、本発明の第4の実施の形態を特徴づけるマクロをレイアウト図で示す図4(A)を参照すると、この図に示す本実施の形態のマクロ1Dの前述の第1の実施の形態のマクロ1との相違点は、このマクロ1Dの内部の未使用領域3Dのに配置したブロックであるリピータ4Dに対する電源供給方法を具体的に示すため未使用領域3Dに電源を供給する2本の電源ライン5D,6Dを有することである。
【0069】
ここで、説明の便宜上、マクロ1Dは例えばIPコアのようなセルの縦方向の長さ(以下Y方向ピッチ)が一定の基本セルで構成されているものとする。従って、未使用領域3DのY方向ピッチもマクロ1Dの内部セルと同一となる。また、リピータ4DのY方向サイズはマクロ4Dの内部セルと同一とする。また、電源供給ライン5D,6DのY方向の配設間隔(Y方向ピッチ)もマクロ1Dの内部セルと同一のY方向ピッチである。
【0070】
この場合、電源ライン5D,6Dの各々の配設位置は、IPコアであるマクロ1Dの内部の電源供給ラインと同一の配設位置であるため、これら電源ライン5D,6Dの位置に、未使用領域3Dのための電源供給端子を設ける。上述のように、マクロ1Dの内部セルのY方向ピッチと、未使用領域3DのY方向ピッチ及びその内部に配置されるリピータ4DのY方向ピッチが同一のため、問題なく、通常の未使用領域にセルを配置する場合と同様に、配置されたリピータ4Dに電源が供給されることになる。
【0071】
このようにして特別な電源生成フローを伴うことなく、マクロ内部の未使用領域とそこへ配置されるリピータとの電源とが接続可能となる。
【0072】
次に、本発明の第5の実施の形態を特徴づけるマクロをレイアウト図で示す図4(B)を参照すると、この図に示す本実施の形態のマクロ1Eの前述の第4の実施の形態のマクロ1Dとの相違点は、マクロ1EがRAMマクロのような基本セルのY方向ピッチ(又は横(X)方向ピッチ:以下単にピッチ)で電源ラインが存在しないマクロであり、そのようなマクロ1Eの内部に未使用領域3Eを有し、その中にリピータ4Eを配置したことである。
【0073】
この場合、電源供給のため、未使用領域3E内部に電源リングL5E,L6Eを設け、これら電源リングL5E,L6Eをマクロ1Eの電源ラインとは電源引出端子T5E,T6Eの各々でそれぞれ接続する。電源リングL5E,L6Eの内部にはこれら電源リングL5E,L6Eの各々に接続した電源ライン5E,6Eを備える。
【0074】
この図に示すように電源ラインのピッチがリピータ4Eの電源端子のピッチと一致しない場合は、一旦、未使用領域3E内に電源リングL5E,L6Eを配設して、それらの電源リングL5E,L6Eからリング内部に向かって改めてリピータ4Eの電源端子のピッチに一致するように電源ライン5E,6Eを配設する。こうすることで、マクロ1E内部の電源ラインピッチに依存しなくても電源の供給が可能となる。
【0075】
次に、本発明の第6の実施の形態を特徴づけるマクロをレイアウト図で示す図5を参照すると、この図に示す本実施の形態のマクロ1Fの前述の第4の実施の形態のマクロ1Dとの相違点は、未使用領域3Fに配置されたリピータ4F自身が直接マクロ1F上部を通過する電源ライン5F,6Fから未使用領域3F内部に設けた電源パッドP5F,P6F及び未使用領域3F内の電源ライン5G,6Gを経由して電源を供給されていることである。
【0076】
未使用領域3Fの大きさが、マクロ1F上部の電源ライン5F,6Fへ接続するための電源パッドP5F,P6Fを独自に持てるくらいに大きい場合や、マクロ1F内部の電源と未使用領域3Fの電源を分離したい場合に用いる。
【0077】
未使用領域3F内部に、電源パッドP5F,P6Fのような電源パッドを独自に配設可能な場合は、マクロ1F内部からの電源供給の手段を用いなくとも容易に上層の電源ラインへと接続可能となる。
【0078】
このようにすることでマクロ内部のリピータへ別電源を供給可能となりマクロとリピータとが電源分離されるため電源ノイズの干渉を相互に受けないマクロを構築可能となる。
【0079】
次に、本発明の第7の実施の形態をレイアウト図で示す図6を参照すると、この図に示す本実施の形態を特徴付ける上位の大規模ハードマクロであるマクロ100は、下層のハードマクロであるマクロ111〜121を有する。
【0080】
マクロ111〜121は、内部に未使用領域700〜720を有する。Y方向の最下部にでX方向に配列した未使用領域700〜703と、Y方向の下から2番目にX方向に配列した未使用領域710〜713と、Y方向の最上部にX方向に配列した未使用領域720〜723とを有する。説明の便宜上、X,Y各方向の配置間隔(ピッチ)はそれぞれ同一とする。
【0081】
従って、この図の例では、未使用領域700〜703,710〜713,720〜720は、各マクロ内に次のように配置される。
【0082】
マクロ111は、内部に未使用領域720〜723を有し、マクロ112は内部に未使用領域710を有し、マクロ113は内部に未使用領域700を有し、マクロ114は内部に未使用領域711、701を有し、マクロ115は未使用領域702を有し、マクロ116は内部に未使用領域703を有し、マクロ117は内部に未使用領域712を有し、マクロ118〜121は隣接して隙間なく配置され、マクロ118,121の内部に未使用領域を有せず、マクロ119とマクロ120の境界部内部に未使用領域713を有する。
【0083】
マクロ111〜121の各々は、信号完全性に関連する配線の制限長に関しては問題とならないサイズであるが、階層設計によりそれらを組み合わせることでさらに上位のハードマクロが構築され、上記配線の制限長の問題を生じ得る場合がある。
【0084】
ここで、説明の便宜上、マクロ100のX方向及びY方向のサイズは上記配線の制限長である距離Aより十分大きい( A)ものとし、下層のマクロ、代表としてマクロ113のX及びY方向のサイズは距離Aより小さい(<A)ものとする。
【0085】
この場合、マクロ100から見た場合に未使用領域のサイズと配置ピッチが第2及び第3の実施の形態で説明した条件を満足するように未使用領域700〜703,710〜713,720〜720を選択すれば良い。
【0086】
このようにすれば、階層設計によって生成された大規模なモジュールの上も、問題なく信号配線が通過できるようになる。
【0087】
以上本発明の実施の形態を述べたが、本発明は上記実施の形態に限られることなく種々の変形が可能である。例えば、内部の未使用領域に配置されるブロックはリピータに限らず、他の論理ブロックとすることも本発明の主旨を逸脱しない限り適用できることは勿論である。
【0088】
【発明の効果】
以上説明したように、本発明の半導体集積回路の設計方法は、マクロを記述しているライブラリの記述におけるマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、マクロ内部の実際のブロック等が存在する使用領域を明示的に配置配線禁止領域として記述し、上記マクロ内部の実際のブロック等が存在しない内部未使用領域を配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、配置配線の設計段階で配置配線ツールに上記未使用領域を新規ブロック等の配置領域として認識させることにより、特別な手法を用いなくとも配置配線ツールに未使用領域として認識されるので、配置配線ツールはマクロ内部の未使用領域をマクロ外部の未使用領域と全く等価のものとして扱うため、マクロ内部の未使用領域に必要に応じて後から別機能ブロックである予備素子を配置できるという効果がある。
【0089】
また、マクロと予備素子は互いに独立した関係にあるため、設計フロー・設計ツールは従来通り全く変更する必要はないという効果がある。
【0090】
さらに、予備素子が予め存在しない故、予備素子が未使用である場合の処理やその検証は不要となるという効果がある。
【0091】
またさらに、どの部分の予備素子を使ったのかによってチップ設計にフィードバックをかける必要はないので、設計期間の増加要因が除去され、短期間で設計できるという効果がある。
【図面の簡単な説明】
【図1】本発明の半導体集積回路の設計方法の第1の実施の形態を適用したマクロの一例を示すレイアウト図である。
【図2】本発明の半導体集積回路の設計方法の第2の実施の形態を特徴付けるマクロの一例を示すレイアウト図である。
【図3】本発明の半導体集積回路の設計方法の第3の実施の形態を特徴付けるマクロの一例を示すレイアウト図である。
【図4】本発明の半導体集積回路の設計方法の第3及び第5の実施の形態を特徴付けるマクロの一例をそれぞれ示すレイアウト図である。
【図5】本発明の半導体集積回路の設計方法の第6の実施の形態を特徴付けるマクロの一例を示すレイアウト図である。
【図6】本発明の半導体集積回路の設計方法の第7の実施の形態を特徴付けるマクロの一例を示すレイアウト図である。
【図7】従来の半導体集積回路の設計方法を適用したLSIの一例を示すレイアウト図である。
【符号の説明】
1,1B,1C,1CA,1D,1E,1F,11A,12A,13A,14A,100,111〜121 マクロ
2,3,2A,3A,3E、3F,31,32,31A,32A,300〜309,310〜319,・・・,391〜399,700〜703,710〜713,720〜723 未使用領域
4,4D,4E,4F リピータ
5D,6D,5E,6E,5F,6F,5G,6G 電源ライン
11〜14 配置禁止領域
900〜903 記述
L5E,L6E 電源リング
P5F,P6F 電源パッド
T5E,T6E 電源引出端子
Claims (8)
- 少なくとも1つのハードマクロを有する半導体集積回路の設計方法において、
前記ハードマクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるハードマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、前記ハードマクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、
前記ハードマクロ内部の前記実際の素子又はブロック及び配線が存在しない内部未使用領域を前記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、
配置配線の設計段階で配置配線ツールに前記ハードマクロの内部の前記未使用領域を前記ハードマクロに所属する前記実際の素子又はブロック以外の新規ブロック又は新規素子の配置領域として認識させることを特徴とする半導体集積回路の設計方法。 - 前記暗示的に定義された前記ハードマクロの前記内部未使用領域が、前記配置配線ツールにより配置完了後の前記ハードマクロの外部に存在する既存のハードマクロ外部未使用領域と等価に扱われることを特徴とする請求項1記載の半導体集積回路の設計方法。
- 少なくとも1つのハードマクロを有する半導体集積回路の設計方法において、
前記ハードマクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるハードマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、前記ハードマクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、
前記ハードマクロ内部の前記実際の素子又はブロック及び配線が存在しない内部未使用領域を前記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、
配置配線の設計段階で配置配線ツールに前記ハードマクロの内部の前記未使用領域を前記ハードマクロに所属する前記実際の素子又はブロック以外の新規ブロック又は新規素子の配置領域として認識させ、
前記ハードマクロの前記内部未使用領域が、前記内部未使用領域のサイズとその配置位置、及び前記ハードマクロ内部で複数個存在する場合の配置間隔(ピッチ)に関して一定の規則性が存在することを特徴とする半導体集積回路の設計方法。 - 前記内部未使用領域のサイズが、信号中継用バッファであるリピータブロックを少なくとも1個を新規ブロックとして配置可能であることを特徴とする請求項3記載の半導体集積回路の設計方法。
- 前記ハードマクロが回転配置又はミラー配置が可能な場合、前記ハードマクロが回転配置又はミラー配置されても前記ハードマクロの前記内部未使用領域の縦及び横のサイズが少なくとも1個の信号中継用バッファであるリピータブロックを十分配置可能であることを特徴とする請求項3記載の半導体集積回路の設計方法。
- 少なくとも1つのハードマクロを有する半導体集積回路の設計方法において、
前記ハードマクロを記述している配置配線用レイアウトデータであるライブラリの記述におけるハードマクロ内部の配置配線を禁止する領域である配置配線禁止領域の情報の定義部分を、前記ハードマクロ内部の実際の素子又はブロック及び配線が存在する使用領域を明示的に配置配線禁止領域として記述し、
前記ハードマクロ内部の前記実際の素子又はブロック及び配線が存在しない内部未使用領域を前記配置配線禁止領域の反対論理である配置配線可能領域として特に記述することなく暗示的に定義し、
配置配線の設計段階で配置配線ツールに前記ハードマクロの内部の前記未使用領域を前記ハードマクロに所属する前記実際の素子又はブロック以外の新規ブロック又は新規素子の配置領域として認識させ、
信号遅延及び/又は減衰による信号の劣化及び/又はエレクトロマイグレーション/熱電子の影響を考慮した信号完全性に関連する配線の制限長を限界距離とし、
前記ハードマクロの外周部から内部に向かって最初に配置される前記内部未使用領域が前記ハードマクロの外周部から縦方向及び横方向のいずれの方向に対しても前記限界距離以内に配置され、
前記ハードマクロ内部の全ての前記内部未使用領域が、前記縦方向及び前記横方向のいずれの方向に対しても相互に前記限界距離以内で配置されることを特徴とする半導体集積回路の設計方法。 - 前記ハードマクロの電源ラインから前記内部未使用領域に配置される前記新規ブロック又は新規素子への電源供給を行うよう構成することを特徴とする請求項1又は3又は6記載の半導体集積回路の設計方法。
- 前記ハードマクロの縦方向及び横方向のいずれものサイズが前記限界距離以内のとき、複数の前記ハードマクロを組み合わせて配列することにより上位階層の機能ブロックである上位ハードマクロとして定義し、前記ハードマクロ内部の前記内部未使用領域が前記上位ハードマクロの縦方向及び横方向のいずれの方向に対しても相互に前記限界距離以内で配列されるよう構成することを特徴とする請求項6記載の半導体集積回路の設計方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001085790A JP3589995B2 (ja) | 2001-03-23 | 2001-03-23 | 半導体集積回路の設計方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001085790A JP3589995B2 (ja) | 2001-03-23 | 2001-03-23 | 半導体集積回路の設計方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002289693A JP2002289693A (ja) | 2002-10-04 |
JP3589995B2 true JP3589995B2 (ja) | 2004-11-17 |
Family
ID=18941246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001085790A Expired - Fee Related JP3589995B2 (ja) | 2001-03-23 | 2001-03-23 | 半導体集積回路の設計方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3589995B2 (ja) |
-
2001
- 2001-03-23 JP JP2001085790A patent/JP3589995B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002289693A (ja) | 2002-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11031385B2 (en) | Standard cell for removing routing interference between adjacent pins and device including the same | |
US6732344B2 (en) | Semiconductor integrated circuit device and standard cell placement design method | |
KR900000202B1 (ko) | 반도체 집적회로 및 그 회로 패턴 설계방법 | |
CN109791930B (zh) | 实现具有延伸出单元边界的金属层段的标准单元的集成电路 | |
US7647574B2 (en) | Basic cell design method for reducing the resistance of connection wiring between logic gates | |
US6453447B1 (en) | Method for fabricating integrated circuits | |
CN102005246B (zh) | 只读存储器布局方法与系统 | |
JP2001015602A (ja) | スタンダードセル、スタンダードセル列、スタンダードセルの配置配線装置および配置配線方法 | |
TW201931500A (zh) | 使用工程改變次序單元架構之積體電路設計方法 | |
JP4141322B2 (ja) | 半導体集積回路の自動配線方法及び半導体集積回路の設計のプログラム | |
JP2004252717A (ja) | 半導体集積回路の設計方法、設計装置、セルライブラリのデータ構造および自動レイアウトプログラム | |
JP4254059B2 (ja) | 半導体集積回路の設計方法 | |
TW201803070A (zh) | 半導體裝置及半導體裝置的設計方法 | |
JP2001306641A (ja) | 半導体集積回路の自動配置配線方法 | |
JPH0677403A (ja) | 半導体集積回路装置及びその設計方法 | |
KR100373568B1 (ko) | 반도체집적회로의칩레이아웃및그검증방법 | |
TW202107850A (zh) | 多工器電路、多工器及製造多工器方法 | |
US20040183103A1 (en) | Semiconductor integrated circuit having an oblique global signal wiring and semiconductor integrated circuit wiring method | |
JP3589995B2 (ja) | 半導体集積回路の設計方法 | |
JP2006155524A (ja) | 半導体集積回路の検証方法、検証装置および検証プログラム | |
JP3996735B2 (ja) | 半導体装置 | |
US7073154B1 (en) | Apparatus and methods for interconnect zones and associated cells in integrated circuits | |
JP3651654B2 (ja) | 機能マクロ及びその設計方法、及び半導体装置の設計方法 | |
JP3204381B2 (ja) | 半導体装置の自動配置配線方法 | |
WO2023054601A1 (ja) | 半導体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040727 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040818 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070827 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100827 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |