配線レイアウト方法及び配線レイアウト装置
【課題】配線領域を無駄なく使用することが可能な配線レイアウト方法及び配線レイアウト装置を提供することを目的とする。
【解決手段】配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有する。
【解決手段】配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、半導体集積回路において配線レイアウトを行う配線レイアウト装置及び配線レイアウト方法に関する。
【背景技術】
【0002】
複数の配線層を有する従来の半導体集積回路では、各配線層に配線された信号線の端部同士がビアを介して接続される。各信号線の端部には、信号線同士を接続するために必要となるEOL(End Of Line)と呼ばれる突き出しが設けられている。
【0003】
半導体集積回路の製造工程では、一般的に、マスクパターンに対応するフォトレジスタを使用して基板上にマスクパターンを転写しているが、近年では素子の微細化によりフォトレジスタが収縮して信号線端部が縮むため、信号線端部の縮みを考慮してEOLが設定されている。
【0004】
半導体集積回路では、素子の微細化が進んで信号線の配線パターンが微細になるほど、信号線端部の縮みの程大きくなり、EOLが長く設定される傾向がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001−284455号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
近年の半導体集積回路は、配線パターンが微細になるほど信号線端部の縮みの程度が相対的に大きくなるために、素子の微細化に応じてEOLが相対的に長くなりつつある。このため、EOLが原因となって、配線領域に配線を行うことができないデッドスペースが生じると言った問題があった。
【0007】
本発明は、上記の点に鑑みなされたもので、配線領域を無駄なく使用することが可能な配線レイアウト方法及び配線レイアウト装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有する配線レイアウト装置が提供される。
【発明の効果】
【0009】
開示の配線レイアウト装置は、信号線端部の突き出し部分(EOL)により生じる配線領域のデッドスペースを少なくすることができ、配線領域を無駄なく使用することができる効果を奏する。
【図面の簡単な説明】
【0010】
【図1】配線レイアウト装置のハードウェア構成例を示す図である。
【図2】配線レイアウト装置の機能構成を説明する図である。
【図3】グループ設定部によるグリッド線のグループ化を説明する図である。
【図4】グループ化されたグリッド線上に信号線が配線された状態の一例を示す図である。
【図5】配線レイアウト装置の動作を説明するフローチャートである。
【図6】信号線配線順決定部によるステップS506の処理を詳細に説明するフローチャートである。
【図7】配線部によるステップS507の処理の詳細を説明する第一のフローチャートである。
【図8】配線部によるステップS507の処理の詳細を説明する第二のフローチャートである。
【図9】配線部によるステップS507の処理の詳細を説明する第三のフローチャートである。
【図10】配線レイアウト装置による配線レイアウトの一例を示す図である。
【図11】配線レイアウト装置による配線レイアウトの他の例を示す図である。
【図12】デッドスペースが生じた例を示す図である。
【図13】グリッド線を4つのグループにグループ化した例を説明する図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態を図面に基づいて説明する。
【0012】
図1は、配線レイアウト装置のハードウェア構成例を示す図である。図1において、配線レイアウト装置100は、コンピュータ装置であって、CPU(Central Processing Unit)11と、メモリユニット12と、表示ユニット13と、出力ユニット14と、入力ユニット15と、通信ユニット16と、記憶装置17と、ドライバ18とを有し、システムバスBに接続される。
【0013】
CPU11は、メモリユニット12に格納されたプログラムに従って配線レイアウト装置100を制御する。メモリユニット12には、RAM(Random Access Memory)及びROM(Read Only Memory)等が用いられ、CPU11にて実行されるプログラム、CPU11での処理に必要なデータ、CPU11での処理にて得られるデータ等を格納する。また、メモリユニット12の一部の領域が、CPU11での処理に利用されるワークエリアとして割り付けられている。
【0014】
表示ユニット13は、CPU11の制御のもとに必要な各種情報を表示する。出力ユニット14は、プリンタ等を有し、利用者からの指示に応じて各種情報を出力するために用いられる。入力ユニット15は、マウス、キーボード等を有し、利用者が配線レイアウト装置100が処理を行うための必要な各種情報を入力するために用いられる。通信ユニット16は、例えばインターネット、LAN(Local Area Network)等に接続し、外部装置との間の通信制御をするための装置である。記憶装置17には、例えばハードディスクユニットが用いられ、各種処理を実行するプログラム等のデータを格納する。
【0015】
配線レイアウト装置100によって行われる処理を実現するプログラムは、例えばCD−ROM(Compact Disc Read Only Memory)等の記録媒体19によって配線レイアウト装置100に提供される。即ち、プログラムが保存された記憶媒体19がドライバ18にセットされると、ドライバ18が記憶媒体19からプログラムを読み出し、その読み出されたプログラムがシステムバスBを介して記憶装置17にインストールされる。そして、プログラムが起動されると、記憶装置17にインストールされたプログラムに従ってCPU11がその処理を開始する。尚、プログラムを格納する媒体としてCD−ROMに限定するものではなく、コンピュータが読み取り可能な媒体であれば良い。本発明に係る処理を実現するプログラムは、通信ユニット16によってネットワークを介してダウンロードし、記憶装置17にインストールするようにしても良い。また、USB(Universal Serial Bus)対応の配線レイアウト装置100であれば、USB接続可能な外部記憶装置からインストールするようにしても良い。更に、SDカード等のフラッシュメモリ対応の配線レイアウト装置100であれば、そのようメモリカードからインストールするようにしても良い。
【0016】
以下に本実施例の配線レイアウト装置100について説明する。本実施例の配線レイアウト装置100は、複数の配線層を有する半導体集積回路の配線レイアウトを行う際に、各配線層に設けられたグリッド線を複数のグループに分ける。そして、複数のグループにおいて、予め配線のレイアウトで使用されるグループの順番を設定する。配線のレイアウトは、設定された順番通りにグループを選択し、選択されたグループに含まれるグリッド線を用いて行われる。
【0017】
以下に図2を参照して本実施例の配線レイアウト装置100の機能について説明する。図2は、配線レイアウト装置の機能構成を説明する図である。
【0018】
配線レイアウト装置100は、フロアプランナ110と、マクロ配置設定部120と、電源配線部130と、セル配置部140と、グループ設定部150と、使用グループ順設定部160と、信号線配線順設定部170と、配線部180と、データベース200と、を有する。
【0019】
データベース200には、ライブラリ210、ネットリスト220、デザインルール230が格納されている。ライブラリ210は、配線レイアウト装置100によりレイアウトされるセルを示すセル情報やマクロを示すマクロ情報等が含まれる。ネットリスト220は、半導体集積回路に実装される回路の接続情報である。デザインルール230は、半導体集積回路のレイアウトを設計するに際し、予め決められた設計規則である。
【0020】
本実施例の配線レイアウト装置100において、フロアプランナ110は、ライブラリ210、ネットリスト220、デザインルール230を参照し、レイアウト設計を実行する前に、半導体集積回路のチップ上で、どの回路ブロックをどこに配置するかの大枠を決定する。フロアプランナ110は、決定した結果をフロアプラン情報240として出力する。出力されたフロアプラン情報240は、データベース200に格納される。
【0021】
マクロ配置決定部120は、フロアプランナ110により決定された配置の中で、マクロの配置レイアウトを決定する。電源配線部130は、配置されたマクロに対する電源線の配線を行う。セル配置部140は、マクロ内におけるセルの配置レイアウトを行う。
【0022】
グループ設定部150は、配線層に設けられたグリッド線のグループ化を行う。本実施例では、グリッド線のグループは予め設定されている。グループ設定部150は、設定に基づき、グリッド線のグループ化を行う。
【0023】
以下に図3を参照して本実施例のグループ設定部150によるグリッド線のグループ化について説明する。図3は、グループ設定部によるグリッド線のグループ化を説明する図である。
【0024】
図3(A)に示す配線層31には、例えば6本のグリッド線G1、G2、G3、G4、G5、G6が設けられている。本実施例のグループ設定部150は、例えば配線層31に設けられたグリッド線G1〜G6を二つのグループに分け、グループ化を行う。配線層31では、グリッド線G1、G3、G5がグループAとしてグループ化され、グリッド線G2、G4、G6がグループBとしてグループ化される。配線層31に信号線等を配線する場合には、グリッド線G1〜G6上に配線される。
【0025】
尚実施例では、各グリッド線が属するグループに関するグループ情報が予め設定されており、例えばデータベース200内に格納されていても良い。グループ設定部150は、このグループ情報を参照して、配線層31に設けられたグリッド線のグループ化を行う。
【0026】
図3(B)に示す配線層32には、例えば6本のグリッド線G11、G12、G13、G14、G15、G16が設けられている。グリッド線G11〜G16は、配線層31と配線層32とが積層されたとき、配線層31に設けられたグリッド線G1〜G6と垂直に交差するように設けられている。
【0027】
本実施例のグループ設定部150は、例えば配線層32に設けられたグリッド線G11〜G16を二つのグループに分け、グループ化を行う。配線層32では、グリッド線G11、G13、G15がグループCとしてグループ化され、グリッド線G12、G14、G16がグループDとしてグループ化される。配線層32に信号線等を配線する場合には、グリッド線G11〜G16上に配線される。尚グループ設定部150は、データベース200に格納されたグループ情報を参照して、配線層32に設けられたグリッド線のグループ化を行う。
【0028】
図4は、グループ化されたグリッド線上に信号線が配線された状態の一例を示す図である。図4(A)に示す配線層31では、グループAに含まれるグリッド線と、グループBに含まれるグリッド線とに、それぞれ信号線が配線されている。図4(B)に示す配線層32では、グループCに含まれるグリッド線と、グループDに含まれるグリッド線とに、それぞれ信号線が配線されている。
【0029】
配線層31と配線層32とが積層されると、例えばグループAのグリッド線に配線された信号線と、グループCのグリッド線に配線された信号線とがビアにより接続される。またグループBのグリッド線に配線された信号線と、グループDのグリッド線に配線された信号線とがビアにより接続される。
【0030】
本実施例では、グループAに含まれるグリッド線間の距離(以下、グリッド幅)WAと、グループBに含まれるグリッド線間の距離(以下、グリッド幅)WBとは、後述するようにEOL(End Of Line)に基づき決められる。またグループCに含まれるグリッド線間の距離(以下、グリッド幅)WCと、グループDに含まれるグリッド線間の距離(以下、グリッド幅)WDも同様である。尚EOLとは、各配線の端部には、配線同士を接続するために必要となる突き出しである。
【0031】
図2に戻って、使用グループ順設定部160は、グループ化されたグループの中から、配線に使用するグループの順番を設定する。本実施例の使用グループ順設定部160は、グリッド線において未使用の部分が少ないグループから先に使用するように、順番を決定する。例えば図4に示す配線層31では、グループAの方が未使用部分が少ないので、配線に使用する順番はグループA、グループBとなる。
【0032】
信号線配線順設定部170は、信号線を配線する際に、配線される信号線の順番を設定する。本実施例の信号線配線順設定部170は、クロック信号線、その他の信号線の順に配線されるように順番を設定する。また信号線配線決定部170は、クロック信号線、その他の信号線において、配線順を設定するとき、例えば周波数の高い信号の信号線から順に配線されるように順番を設定する。周波数が同じ信号の信号線の場合は、例えば配線の長さが長い順に配線されるように順番を設定する。
【0033】
配線部180は、使用グループ順設定部160により使用する順が設定されたグループに含まれるグリッド線上に、信号線配線順設定部170により設定された順番に通りに信号線を配線する。
【0034】
以下に、図5を参照して本実施例の配線レイアウト装置100の動作を説明する。図5は、配線レイアウト装置の動作を説明するフローチャートである。尚本実施例では、以下に説明する処理が開始される以前に、グループ設定部150により、各配線層に設けられたグリッド線はグループ化がされている。
【0035】
配線レイアウト装置100において、フロアプランナ110はフロアプランを行い、フロアプラン情報240を出力する(ステップS501)。フロアプラン情報240は、データペース200へ格納される。
【0036】
次にマクロ配置設定部120は、フロアプラン情報240とライブラリ210とを参照してマクロの配置レイアウトを行う(ステップS502)。マクロの配置レイアウトが完了すると、次に電源配線部130は、マクロへ電源を供給する電源線の配線レイアウトを行う(ステップS503)。電源線の配線レイアウトが完了すると、セル配置部140は、ライブラリ210、ネットリスト220、デザインルール230を参照してセルの配置レイアウトを行う(ステップS504)。
【0037】
次に使用グループ順設定部160は、配線に使用されるグリッド線のグループの順番を設定する(ステップS505)。本実施例の使用グループ順設定部160は、マクロの配置レイアウト、電源線の配線レイアウト、セルの配置レイアウトが完了した後に、未使用部分が少ないグループから順に、選使用するグループとして選択する順番を設定する。
【0038】
使用するグリッド線のグループが設定されると、信号線配線順設定部170は、信号線の配線の順番を設定する(ステップS506)。信号線の配線の順番が設定されると、配線部180は設定された順番に沿って配線を行う(ステップS507)。
【0039】
以下に、ステップS506の処理及びステップS507の処理の詳細を説明する。図6は、信号線配線順決定部によるステップS506の処理を詳細に説明するフローチャートである。
【0040】
信号線配線順設定部170は、フロアプラン情報240を参照し、クロック信号線の仮ネット長及びその他の信号線の仮ネット長を算出する(ステップS61)。仮ネット長とは、フロアプラン情報240において決められた信号線の一端から他端までの長さである。
【0041】
次に信号線配線順設定部170は、クロック信号線の配線順を設定する(ステップS62)。本実施例の信号線配線順設定部170は、クロック信号線のうち、周波数が高いクロック信号を供給するクロック信号線から順に配線順を設定する。同じ周波数のクロック信号を供給するクロック信号線においては、ステップS61で算出された仮ネット長が長い方から順に配線順を設定する。
【0042】
次に信号線配線順設定部170は、その他の信号線の配線順を設定する(ステップS63)。本実施例の信号線配線順設定部170は、周波数の高い信号を供給する信号線から順に配線順を設定する。同じ周波数の信号を供給する信号線の場合、ステップS61で算出した仮ネット長が長い信号線から順に配線順を設定する。仮ネット長が同じである場合、信号線配線順設定部170は、フロアプラン情報240を参照して配線混雑度を比較し、配線混雑度が高い順に配線順を設定する。
【0043】
次に、図7乃至図9を参照して配線部180によるステップS507の処理の詳細を説明する。本実施例の配線部180は、始めにクロック信号線の配線のレイアウトを行い、次にその他の信号線の配線のレイアウトを行う。
【0044】
図7は、配線部によるステップS507の処理の詳細を説明する第一のフローチャートである。
【0045】
配線部180は、始めに信号線配線順設定部170により設定されたクロック信号線の配線順に沿って配線していく(ステップS701)。尚ステップS701でクロック信号線の配線に用いられるグリッド線のグループの使用順は、図5のステップS505で使用グループ順設定部160に設定された通りである。
【0046】
配線部180は、一番目の使用が設定されたグリッド線のグループ(以下、一番目グループ)を選択し、一番目グループにクロック信号線を配置できる未使用部分があるか否かを判断する(ステップS702)。ステップS702において、未使用部分がある場合、配線部180はクロック信号線を一番目グループに含まれるグリッド線に沿って配線のレイアウトを行う(ステップS703)。
【0047】
次に配線部180は、グリッド線のグループが一番目グループから他のグリッド線のグループへ切り替えられているか否かを判断する(ステップS704)。ステップS704において、他のグリッド線のグループに切り替わっていない場合、図8に示す処理へ進む。
【0048】
ステップS702において、一番目グループに未使用部分がない場合、配線部180は、使用するグリッド線のグループを二番目に使用されるグループに設定されたグループ(二番目グループ)を選択し、切り替える(ステップS705)。そして配線部180は、ステップS701へ戻り、二番目グループのグリッド線を用いてクロック信号線の配線を行う。
【0049】
ステップS704において、グリッド線のグループが一番目グループから他のグリッド線のグループへ切り替えられていた場合、次に使用されるグリッド線のグループを一番目グループへ戻し(ステップS706)、図8に示す処理へ進む。
【0050】
図8は、配線部によるステップS507の処理の詳細を説明する第二のフローチャートである。
【0051】
配線部180は、全てのクロック信号線の配線のレイアウトが終わったか否かを判断する(ステップS801)。全てのクロック信号線の配線のレイアウトが終わった場合、配線部180は、その他の信号線の配線のレイアウトを行う(ステップS802)。全てのクロック信号線の配線のレイアウトが終わっていない場合、配線部180はステップS701以降の処理を繰り返す。
【0052】
配線部180は、ステップS702と同様に、一番目グループに未使用部分があるか否かを判断する(ステップS803)。ステップS803において、一番目グループに未使用部分がある場合、配線部180は信号線の配線をレイアウトし(ステップS804)、図9の処理へ進む。ステップS803において、一番目グループに未使用部分がない場合には、信号線の配線に用いるグリッド線のグループを、二番目グループに切り替え(ステップS805)、ステップS802以降の処理を行う。
【0053】
図9は、配線部によるステップS507の処理の詳細を説明する第三のフローチャートである。
【0054】
ステップS804において信号線の配線のレイアウトが終了すると、配線部180は、グリッド線のグループが一番目グループから他のグリッド線のグループへ切り替えられているか否かを判定する(ステップS901)。ステップS901において、グリッド線のグループが他のグリッド線のグループへ切り替えられている場合、配線部180は、次に使用されるグリッド線のグループを一番目グループへ戻す(ステップS902)。ステップS901において、グループが他のグリッド線のグループに切り替えられていない場合、配線部180は全ての信号線の配線のレイアウトが終了したか否かを判断する(ステップS903)。
【0055】
ステップS903において全ての信号線の配線のレイアウトが終了していない場合、配線部180は、ステップS802以降の処理を繰り返す。
【0056】
ステップS903において全ての信号線の配線のレイアウトが終了していた場合、配線部180は配線のレイアウトの処理を終了する。
【0057】
図10は、配線レイアウト装置による配線レイアウトの一例を示す図である。図10には、配線層31と配線層32とが積層されて、配線層31に配線された信号線と配線層32に配線された信号線とが接続された状態を示している。
【0058】
グリッド線G1〜G6は、グリッド線G1、G3、G5がグループA、グリッド線G2、G4、G6がグループBとされており、グリッド線G11〜G16は、グリッド線G11、G13、G15がグループC、グリッド線G12、G14、G16がグループDとされている。グリッド線G1〜G6とグリッド線G11〜G16とは直交しており、グループAのグリッド線上に配線された信号線とグループCのグリッド線上に配線された信号線とがビアVにより接続される。またグループBのグリッド線上に配線された信号線とグループDのグリッド線上に配線された信号線とがビアVにより接続される。
【0059】
本実施例では、グリッド線をグループ化する際に、各グループにおけるグリッド線のグリッド幅を信号線のEOLの長さに基づき決定する。すなわち本実施例において、グループのグリッド幅は、そのグループに含まれるグリッド線と直交する同一のグリッド線上に隣接して配線された信号線のEOL同士がぶつからないように、決定される。
【0060】
例えばグループAに含まれるグリッド線G1とグリッド線G3との間の距離であるグリッド幅WAは、グループCのグリッド線において同一のグリッド線に隣接して配線された信号線のEOL同士がぶつからない幅に設定される。また例えばグリッド線G12とグリッド線G14との間の距離であるグリッド幅WDは、グループDのグリッド線と直交するグループBのグリッド線G2上に隣接して配線された信号線HのEOL同士がぶつからない幅に設定される。
【0061】
具体的にはグリッド幅WDは、グリッド幅WD≧2×Le+EOL間最小間隔となる。尚Leは、EOL長である。グリッド幅WA、グリッド幅WB、グリッド幅WCも同様である。よって本実施例では、例えば配線層に設けられたグリッド線をNグループに分ける場合、Nは、N≧(2×Le+EOL間最小間隔)/単位グリッド幅となる。
【0062】
尚、EOL間最小間隔とは、同一のグリッド線上に配線された信号線の端部と信号線の端部との間の最小距離であり、図10で示す長さLsである。EOL間最小間隔である長さLsは、例えばデザインルール等で予め決められている。また単位グリッド幅とは、デザインルールを基に定めた最小グリッド間距離であって、配線層に設けられたグリッド線をグループ化する前のグリッド幅であり、図10に示すグリッド幅WGで示される。
【0063】
以上に説明したように、本実施例では、EOL長に基づきグリッド幅を設定し、グリッド線をグループ化する。そしてグループ化されたグリッド線を用いて信号線の配線を行うため、EOLにより生じる配線領域のデッドスペースを少なくすることができ、配線領域を無駄なく使用することができる。また本実施例では、EOLのために配線領域を確保することを考慮せずに信号線を配線することができる。
【0064】
また本実施例では、例えば図11に示すように、新たな信号線を配線する場合にも、EOLによる障害を回避して配線することができる。
【0065】
図11は、配線レイアウト装置による配線レイアウトの他の例を示す図である。図11では、図10に示す配線レイアウトに信号線H1〜H4を追加した例である。図11の例では、グループAの未使用部分であるグリッド線G3上に信号線H1が配線され、グループBの未使用部分であるグリッド線G4上に信号線H2が配線されている。またグループCの未使用部分であるグリッド線G13上に信号線H3が配線され、グループDの未使用部分であるグリッド線G12上に信号線H4が配線されている。
【0066】
本実施例では、グループにおけるグリッド幅がEOL長の2倍よりも長くなるように設定されているため、同一グリッド線上に配線された信号線のEOL同士がぶつかることがなく、EOLよる障害を回避できる。
【0067】
尚本実施例では、例えば信号線をセルの端子へ接続する場合や、グリッド線のピッチが異なる配線層に配線された信号線同士を接続する場合には、信号線をグリッド線上からさらに伸ばしても良い。
【0068】
本実施例のようにグリッド線のグループ化を行わない場合、EOLが配線される領域を確保できずにデッドスペースが生じる。図12は、デッドスペースが生じた例を示す図である。図12に示すように、グリッド線のグループ化を行わずに信号線を配線した場合、EOLが存在するために信号線を配線できないデッドスペースDsが生じる。以上のことからも、本実施例では配線領域を無駄なく使用していることがわかる。
【0069】
次に、図13を参照してグリッド線を4つのグループにグループ化した例を説明する。図13は、グリッド線を4つのグループにグループ化した例を説明する図である。
【0070】
図13の例では、グリッド線G1〜G6を4つのグループにグループ化している。グリッド線G1、G5はグループA、グリッド線G2、G6はグループB、グリッド線G3はグループC、グリッド線G4はグループDとなっている。またグリッド線G11〜G16も同様に4つのグループにグループ化されている。グリッド線G11、G15はグループO、グリッド線G12、G16はグループP、グリッド線G13はグループQ、グリッド線G114はグループRとなっている。
【0071】
本実施例では、Nを1以上の整数とし、EOL長を長さLeとし、グループ化する前のグリッド幅を幅WGとした場合、N≧(2×Le+EOL間最小間隔)/WGであれば、グリッド線をNグループに分けることができる。
【0072】
このように本実施例では、配線領域を無駄なく使用することができる。よって、従来ではデッドスペースDsがあるために4層となっていた配線レイアウトに、本実施例を適用すればEOLの障害を回避できデットスペースDsを無くすことができ、2層の配線レイアウトとすることができる。よってコストを低減することもできる。
【0073】
本発明は、以下に記載する付記のような構成が考えられる。
(付記1)
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有することを特徴とする配線レイアウト装置。
(付記2)
前記グリッド幅は、前記突き出し部分の長さと、該突き出し部分間の最小間隔とで決定されることを特徴とする付記1記載の配線レイアウト装置。
(付記3)
前記複数のグループにおいて、前記グループに含まれるグリッド線上に配線されている部分の多い順に前記選択順を設定するグループ順設定手段を有することを特徴とする付記1又は2記載の配線レイアウト装置。
(付記4)
前記信号線に含まれるクロック信号線の配線順を設定した後に、前記信号線に含まれる前記クロック信号線以外の他の信号線の配線順を設定する信号線配線順設定手段を有することを特徴とする付記1乃至3の何れ一項に記載の配線レイアウト装置。
(付記5)
少なくとも前記クロック信号線又は前記他の信号線の配線順は、周波数の高い信号線から順に設定されることを特徴とする付記4記載の配線レイアウト装置。
(付記6)
少なくとも前記クロック信号線又は前記他の信号線の配線順は、周波数が同一である場合に、信号線の長さの順を設定されることを特徴とする付記5記載の配線レイアウト装置。
(付記7)
信号線の長さが同一の前記他の信号線の配線順は、混雑度が高い位置に配線される信号線の順に設定されることを特徴とする付記6記載の配線レイアウト装置。
(付記8)
前記配線手段は、
前記クロック信号線のレイアウト後に前記他の信号線のレイアウトを行うことを特徴とする付記4乃至7何れか一項に記載の配線レイアウト装置。
(付記9)
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置による配線レイアウト方法であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手順と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手順と、を有することを特徴とする配線レイアウト方法。
(付記10)
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置において実行される配線レイアウトプログラムであって、
前記配線レイアウト装置に、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定ステップと、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線ステップと、を実行させることを特徴とする配線レイアウトプログラム。
【0074】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【0075】
100 配線レイアウト装置
110 フロアプランナ
120 マクロ配置部
130 電源配線部
140 セル配置部
150 グループ設定部
160 使用グループ順設定部
170 信号線配線順設定部
180 配線部
200 データベース
240 フロアプラン情報
【技術分野】
【0001】
本発明は、半導体集積回路において配線レイアウトを行う配線レイアウト装置及び配線レイアウト方法に関する。
【背景技術】
【0002】
複数の配線層を有する従来の半導体集積回路では、各配線層に配線された信号線の端部同士がビアを介して接続される。各信号線の端部には、信号線同士を接続するために必要となるEOL(End Of Line)と呼ばれる突き出しが設けられている。
【0003】
半導体集積回路の製造工程では、一般的に、マスクパターンに対応するフォトレジスタを使用して基板上にマスクパターンを転写しているが、近年では素子の微細化によりフォトレジスタが収縮して信号線端部が縮むため、信号線端部の縮みを考慮してEOLが設定されている。
【0004】
半導体集積回路では、素子の微細化が進んで信号線の配線パターンが微細になるほど、信号線端部の縮みの程大きくなり、EOLが長く設定される傾向がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2001−284455号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
近年の半導体集積回路は、配線パターンが微細になるほど信号線端部の縮みの程度が相対的に大きくなるために、素子の微細化に応じてEOLが相対的に長くなりつつある。このため、EOLが原因となって、配線領域に配線を行うことができないデッドスペースが生じると言った問題があった。
【0007】
本発明は、上記の点に鑑みなされたもので、配線領域を無駄なく使用することが可能な配線レイアウト方法及び配線レイアウト装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有する配線レイアウト装置が提供される。
【発明の効果】
【0009】
開示の配線レイアウト装置は、信号線端部の突き出し部分(EOL)により生じる配線領域のデッドスペースを少なくすることができ、配線領域を無駄なく使用することができる効果を奏する。
【図面の簡単な説明】
【0010】
【図1】配線レイアウト装置のハードウェア構成例を示す図である。
【図2】配線レイアウト装置の機能構成を説明する図である。
【図3】グループ設定部によるグリッド線のグループ化を説明する図である。
【図4】グループ化されたグリッド線上に信号線が配線された状態の一例を示す図である。
【図5】配線レイアウト装置の動作を説明するフローチャートである。
【図6】信号線配線順決定部によるステップS506の処理を詳細に説明するフローチャートである。
【図7】配線部によるステップS507の処理の詳細を説明する第一のフローチャートである。
【図8】配線部によるステップS507の処理の詳細を説明する第二のフローチャートである。
【図9】配線部によるステップS507の処理の詳細を説明する第三のフローチャートである。
【図10】配線レイアウト装置による配線レイアウトの一例を示す図である。
【図11】配線レイアウト装置による配線レイアウトの他の例を示す図である。
【図12】デッドスペースが生じた例を示す図である。
【図13】グリッド線を4つのグループにグループ化した例を説明する図である。
【発明を実施するための形態】
【0011】
以下、本発明の実施の形態を図面に基づいて説明する。
【0012】
図1は、配線レイアウト装置のハードウェア構成例を示す図である。図1において、配線レイアウト装置100は、コンピュータ装置であって、CPU(Central Processing Unit)11と、メモリユニット12と、表示ユニット13と、出力ユニット14と、入力ユニット15と、通信ユニット16と、記憶装置17と、ドライバ18とを有し、システムバスBに接続される。
【0013】
CPU11は、メモリユニット12に格納されたプログラムに従って配線レイアウト装置100を制御する。メモリユニット12には、RAM(Random Access Memory)及びROM(Read Only Memory)等が用いられ、CPU11にて実行されるプログラム、CPU11での処理に必要なデータ、CPU11での処理にて得られるデータ等を格納する。また、メモリユニット12の一部の領域が、CPU11での処理に利用されるワークエリアとして割り付けられている。
【0014】
表示ユニット13は、CPU11の制御のもとに必要な各種情報を表示する。出力ユニット14は、プリンタ等を有し、利用者からの指示に応じて各種情報を出力するために用いられる。入力ユニット15は、マウス、キーボード等を有し、利用者が配線レイアウト装置100が処理を行うための必要な各種情報を入力するために用いられる。通信ユニット16は、例えばインターネット、LAN(Local Area Network)等に接続し、外部装置との間の通信制御をするための装置である。記憶装置17には、例えばハードディスクユニットが用いられ、各種処理を実行するプログラム等のデータを格納する。
【0015】
配線レイアウト装置100によって行われる処理を実現するプログラムは、例えばCD−ROM(Compact Disc Read Only Memory)等の記録媒体19によって配線レイアウト装置100に提供される。即ち、プログラムが保存された記憶媒体19がドライバ18にセットされると、ドライバ18が記憶媒体19からプログラムを読み出し、その読み出されたプログラムがシステムバスBを介して記憶装置17にインストールされる。そして、プログラムが起動されると、記憶装置17にインストールされたプログラムに従ってCPU11がその処理を開始する。尚、プログラムを格納する媒体としてCD−ROMに限定するものではなく、コンピュータが読み取り可能な媒体であれば良い。本発明に係る処理を実現するプログラムは、通信ユニット16によってネットワークを介してダウンロードし、記憶装置17にインストールするようにしても良い。また、USB(Universal Serial Bus)対応の配線レイアウト装置100であれば、USB接続可能な外部記憶装置からインストールするようにしても良い。更に、SDカード等のフラッシュメモリ対応の配線レイアウト装置100であれば、そのようメモリカードからインストールするようにしても良い。
【0016】
以下に本実施例の配線レイアウト装置100について説明する。本実施例の配線レイアウト装置100は、複数の配線層を有する半導体集積回路の配線レイアウトを行う際に、各配線層に設けられたグリッド線を複数のグループに分ける。そして、複数のグループにおいて、予め配線のレイアウトで使用されるグループの順番を設定する。配線のレイアウトは、設定された順番通りにグループを選択し、選択されたグループに含まれるグリッド線を用いて行われる。
【0017】
以下に図2を参照して本実施例の配線レイアウト装置100の機能について説明する。図2は、配線レイアウト装置の機能構成を説明する図である。
【0018】
配線レイアウト装置100は、フロアプランナ110と、マクロ配置設定部120と、電源配線部130と、セル配置部140と、グループ設定部150と、使用グループ順設定部160と、信号線配線順設定部170と、配線部180と、データベース200と、を有する。
【0019】
データベース200には、ライブラリ210、ネットリスト220、デザインルール230が格納されている。ライブラリ210は、配線レイアウト装置100によりレイアウトされるセルを示すセル情報やマクロを示すマクロ情報等が含まれる。ネットリスト220は、半導体集積回路に実装される回路の接続情報である。デザインルール230は、半導体集積回路のレイアウトを設計するに際し、予め決められた設計規則である。
【0020】
本実施例の配線レイアウト装置100において、フロアプランナ110は、ライブラリ210、ネットリスト220、デザインルール230を参照し、レイアウト設計を実行する前に、半導体集積回路のチップ上で、どの回路ブロックをどこに配置するかの大枠を決定する。フロアプランナ110は、決定した結果をフロアプラン情報240として出力する。出力されたフロアプラン情報240は、データベース200に格納される。
【0021】
マクロ配置決定部120は、フロアプランナ110により決定された配置の中で、マクロの配置レイアウトを決定する。電源配線部130は、配置されたマクロに対する電源線の配線を行う。セル配置部140は、マクロ内におけるセルの配置レイアウトを行う。
【0022】
グループ設定部150は、配線層に設けられたグリッド線のグループ化を行う。本実施例では、グリッド線のグループは予め設定されている。グループ設定部150は、設定に基づき、グリッド線のグループ化を行う。
【0023】
以下に図3を参照して本実施例のグループ設定部150によるグリッド線のグループ化について説明する。図3は、グループ設定部によるグリッド線のグループ化を説明する図である。
【0024】
図3(A)に示す配線層31には、例えば6本のグリッド線G1、G2、G3、G4、G5、G6が設けられている。本実施例のグループ設定部150は、例えば配線層31に設けられたグリッド線G1〜G6を二つのグループに分け、グループ化を行う。配線層31では、グリッド線G1、G3、G5がグループAとしてグループ化され、グリッド線G2、G4、G6がグループBとしてグループ化される。配線層31に信号線等を配線する場合には、グリッド線G1〜G6上に配線される。
【0025】
尚実施例では、各グリッド線が属するグループに関するグループ情報が予め設定されており、例えばデータベース200内に格納されていても良い。グループ設定部150は、このグループ情報を参照して、配線層31に設けられたグリッド線のグループ化を行う。
【0026】
図3(B)に示す配線層32には、例えば6本のグリッド線G11、G12、G13、G14、G15、G16が設けられている。グリッド線G11〜G16は、配線層31と配線層32とが積層されたとき、配線層31に設けられたグリッド線G1〜G6と垂直に交差するように設けられている。
【0027】
本実施例のグループ設定部150は、例えば配線層32に設けられたグリッド線G11〜G16を二つのグループに分け、グループ化を行う。配線層32では、グリッド線G11、G13、G15がグループCとしてグループ化され、グリッド線G12、G14、G16がグループDとしてグループ化される。配線層32に信号線等を配線する場合には、グリッド線G11〜G16上に配線される。尚グループ設定部150は、データベース200に格納されたグループ情報を参照して、配線層32に設けられたグリッド線のグループ化を行う。
【0028】
図4は、グループ化されたグリッド線上に信号線が配線された状態の一例を示す図である。図4(A)に示す配線層31では、グループAに含まれるグリッド線と、グループBに含まれるグリッド線とに、それぞれ信号線が配線されている。図4(B)に示す配線層32では、グループCに含まれるグリッド線と、グループDに含まれるグリッド線とに、それぞれ信号線が配線されている。
【0029】
配線層31と配線層32とが積層されると、例えばグループAのグリッド線に配線された信号線と、グループCのグリッド線に配線された信号線とがビアにより接続される。またグループBのグリッド線に配線された信号線と、グループDのグリッド線に配線された信号線とがビアにより接続される。
【0030】
本実施例では、グループAに含まれるグリッド線間の距離(以下、グリッド幅)WAと、グループBに含まれるグリッド線間の距離(以下、グリッド幅)WBとは、後述するようにEOL(End Of Line)に基づき決められる。またグループCに含まれるグリッド線間の距離(以下、グリッド幅)WCと、グループDに含まれるグリッド線間の距離(以下、グリッド幅)WDも同様である。尚EOLとは、各配線の端部には、配線同士を接続するために必要となる突き出しである。
【0031】
図2に戻って、使用グループ順設定部160は、グループ化されたグループの中から、配線に使用するグループの順番を設定する。本実施例の使用グループ順設定部160は、グリッド線において未使用の部分が少ないグループから先に使用するように、順番を決定する。例えば図4に示す配線層31では、グループAの方が未使用部分が少ないので、配線に使用する順番はグループA、グループBとなる。
【0032】
信号線配線順設定部170は、信号線を配線する際に、配線される信号線の順番を設定する。本実施例の信号線配線順設定部170は、クロック信号線、その他の信号線の順に配線されるように順番を設定する。また信号線配線決定部170は、クロック信号線、その他の信号線において、配線順を設定するとき、例えば周波数の高い信号の信号線から順に配線されるように順番を設定する。周波数が同じ信号の信号線の場合は、例えば配線の長さが長い順に配線されるように順番を設定する。
【0033】
配線部180は、使用グループ順設定部160により使用する順が設定されたグループに含まれるグリッド線上に、信号線配線順設定部170により設定された順番に通りに信号線を配線する。
【0034】
以下に、図5を参照して本実施例の配線レイアウト装置100の動作を説明する。図5は、配線レイアウト装置の動作を説明するフローチャートである。尚本実施例では、以下に説明する処理が開始される以前に、グループ設定部150により、各配線層に設けられたグリッド線はグループ化がされている。
【0035】
配線レイアウト装置100において、フロアプランナ110はフロアプランを行い、フロアプラン情報240を出力する(ステップS501)。フロアプラン情報240は、データペース200へ格納される。
【0036】
次にマクロ配置設定部120は、フロアプラン情報240とライブラリ210とを参照してマクロの配置レイアウトを行う(ステップS502)。マクロの配置レイアウトが完了すると、次に電源配線部130は、マクロへ電源を供給する電源線の配線レイアウトを行う(ステップS503)。電源線の配線レイアウトが完了すると、セル配置部140は、ライブラリ210、ネットリスト220、デザインルール230を参照してセルの配置レイアウトを行う(ステップS504)。
【0037】
次に使用グループ順設定部160は、配線に使用されるグリッド線のグループの順番を設定する(ステップS505)。本実施例の使用グループ順設定部160は、マクロの配置レイアウト、電源線の配線レイアウト、セルの配置レイアウトが完了した後に、未使用部分が少ないグループから順に、選使用するグループとして選択する順番を設定する。
【0038】
使用するグリッド線のグループが設定されると、信号線配線順設定部170は、信号線の配線の順番を設定する(ステップS506)。信号線の配線の順番が設定されると、配線部180は設定された順番に沿って配線を行う(ステップS507)。
【0039】
以下に、ステップS506の処理及びステップS507の処理の詳細を説明する。図6は、信号線配線順決定部によるステップS506の処理を詳細に説明するフローチャートである。
【0040】
信号線配線順設定部170は、フロアプラン情報240を参照し、クロック信号線の仮ネット長及びその他の信号線の仮ネット長を算出する(ステップS61)。仮ネット長とは、フロアプラン情報240において決められた信号線の一端から他端までの長さである。
【0041】
次に信号線配線順設定部170は、クロック信号線の配線順を設定する(ステップS62)。本実施例の信号線配線順設定部170は、クロック信号線のうち、周波数が高いクロック信号を供給するクロック信号線から順に配線順を設定する。同じ周波数のクロック信号を供給するクロック信号線においては、ステップS61で算出された仮ネット長が長い方から順に配線順を設定する。
【0042】
次に信号線配線順設定部170は、その他の信号線の配線順を設定する(ステップS63)。本実施例の信号線配線順設定部170は、周波数の高い信号を供給する信号線から順に配線順を設定する。同じ周波数の信号を供給する信号線の場合、ステップS61で算出した仮ネット長が長い信号線から順に配線順を設定する。仮ネット長が同じである場合、信号線配線順設定部170は、フロアプラン情報240を参照して配線混雑度を比較し、配線混雑度が高い順に配線順を設定する。
【0043】
次に、図7乃至図9を参照して配線部180によるステップS507の処理の詳細を説明する。本実施例の配線部180は、始めにクロック信号線の配線のレイアウトを行い、次にその他の信号線の配線のレイアウトを行う。
【0044】
図7は、配線部によるステップS507の処理の詳細を説明する第一のフローチャートである。
【0045】
配線部180は、始めに信号線配線順設定部170により設定されたクロック信号線の配線順に沿って配線していく(ステップS701)。尚ステップS701でクロック信号線の配線に用いられるグリッド線のグループの使用順は、図5のステップS505で使用グループ順設定部160に設定された通りである。
【0046】
配線部180は、一番目の使用が設定されたグリッド線のグループ(以下、一番目グループ)を選択し、一番目グループにクロック信号線を配置できる未使用部分があるか否かを判断する(ステップS702)。ステップS702において、未使用部分がある場合、配線部180はクロック信号線を一番目グループに含まれるグリッド線に沿って配線のレイアウトを行う(ステップS703)。
【0047】
次に配線部180は、グリッド線のグループが一番目グループから他のグリッド線のグループへ切り替えられているか否かを判断する(ステップS704)。ステップS704において、他のグリッド線のグループに切り替わっていない場合、図8に示す処理へ進む。
【0048】
ステップS702において、一番目グループに未使用部分がない場合、配線部180は、使用するグリッド線のグループを二番目に使用されるグループに設定されたグループ(二番目グループ)を選択し、切り替える(ステップS705)。そして配線部180は、ステップS701へ戻り、二番目グループのグリッド線を用いてクロック信号線の配線を行う。
【0049】
ステップS704において、グリッド線のグループが一番目グループから他のグリッド線のグループへ切り替えられていた場合、次に使用されるグリッド線のグループを一番目グループへ戻し(ステップS706)、図8に示す処理へ進む。
【0050】
図8は、配線部によるステップS507の処理の詳細を説明する第二のフローチャートである。
【0051】
配線部180は、全てのクロック信号線の配線のレイアウトが終わったか否かを判断する(ステップS801)。全てのクロック信号線の配線のレイアウトが終わった場合、配線部180は、その他の信号線の配線のレイアウトを行う(ステップS802)。全てのクロック信号線の配線のレイアウトが終わっていない場合、配線部180はステップS701以降の処理を繰り返す。
【0052】
配線部180は、ステップS702と同様に、一番目グループに未使用部分があるか否かを判断する(ステップS803)。ステップS803において、一番目グループに未使用部分がある場合、配線部180は信号線の配線をレイアウトし(ステップS804)、図9の処理へ進む。ステップS803において、一番目グループに未使用部分がない場合には、信号線の配線に用いるグリッド線のグループを、二番目グループに切り替え(ステップS805)、ステップS802以降の処理を行う。
【0053】
図9は、配線部によるステップS507の処理の詳細を説明する第三のフローチャートである。
【0054】
ステップS804において信号線の配線のレイアウトが終了すると、配線部180は、グリッド線のグループが一番目グループから他のグリッド線のグループへ切り替えられているか否かを判定する(ステップS901)。ステップS901において、グリッド線のグループが他のグリッド線のグループへ切り替えられている場合、配線部180は、次に使用されるグリッド線のグループを一番目グループへ戻す(ステップS902)。ステップS901において、グループが他のグリッド線のグループに切り替えられていない場合、配線部180は全ての信号線の配線のレイアウトが終了したか否かを判断する(ステップS903)。
【0055】
ステップS903において全ての信号線の配線のレイアウトが終了していない場合、配線部180は、ステップS802以降の処理を繰り返す。
【0056】
ステップS903において全ての信号線の配線のレイアウトが終了していた場合、配線部180は配線のレイアウトの処理を終了する。
【0057】
図10は、配線レイアウト装置による配線レイアウトの一例を示す図である。図10には、配線層31と配線層32とが積層されて、配線層31に配線された信号線と配線層32に配線された信号線とが接続された状態を示している。
【0058】
グリッド線G1〜G6は、グリッド線G1、G3、G5がグループA、グリッド線G2、G4、G6がグループBとされており、グリッド線G11〜G16は、グリッド線G11、G13、G15がグループC、グリッド線G12、G14、G16がグループDとされている。グリッド線G1〜G6とグリッド線G11〜G16とは直交しており、グループAのグリッド線上に配線された信号線とグループCのグリッド線上に配線された信号線とがビアVにより接続される。またグループBのグリッド線上に配線された信号線とグループDのグリッド線上に配線された信号線とがビアVにより接続される。
【0059】
本実施例では、グリッド線をグループ化する際に、各グループにおけるグリッド線のグリッド幅を信号線のEOLの長さに基づき決定する。すなわち本実施例において、グループのグリッド幅は、そのグループに含まれるグリッド線と直交する同一のグリッド線上に隣接して配線された信号線のEOL同士がぶつからないように、決定される。
【0060】
例えばグループAに含まれるグリッド線G1とグリッド線G3との間の距離であるグリッド幅WAは、グループCのグリッド線において同一のグリッド線に隣接して配線された信号線のEOL同士がぶつからない幅に設定される。また例えばグリッド線G12とグリッド線G14との間の距離であるグリッド幅WDは、グループDのグリッド線と直交するグループBのグリッド線G2上に隣接して配線された信号線HのEOL同士がぶつからない幅に設定される。
【0061】
具体的にはグリッド幅WDは、グリッド幅WD≧2×Le+EOL間最小間隔となる。尚Leは、EOL長である。グリッド幅WA、グリッド幅WB、グリッド幅WCも同様である。よって本実施例では、例えば配線層に設けられたグリッド線をNグループに分ける場合、Nは、N≧(2×Le+EOL間最小間隔)/単位グリッド幅となる。
【0062】
尚、EOL間最小間隔とは、同一のグリッド線上に配線された信号線の端部と信号線の端部との間の最小距離であり、図10で示す長さLsである。EOL間最小間隔である長さLsは、例えばデザインルール等で予め決められている。また単位グリッド幅とは、デザインルールを基に定めた最小グリッド間距離であって、配線層に設けられたグリッド線をグループ化する前のグリッド幅であり、図10に示すグリッド幅WGで示される。
【0063】
以上に説明したように、本実施例では、EOL長に基づきグリッド幅を設定し、グリッド線をグループ化する。そしてグループ化されたグリッド線を用いて信号線の配線を行うため、EOLにより生じる配線領域のデッドスペースを少なくすることができ、配線領域を無駄なく使用することができる。また本実施例では、EOLのために配線領域を確保することを考慮せずに信号線を配線することができる。
【0064】
また本実施例では、例えば図11に示すように、新たな信号線を配線する場合にも、EOLによる障害を回避して配線することができる。
【0065】
図11は、配線レイアウト装置による配線レイアウトの他の例を示す図である。図11では、図10に示す配線レイアウトに信号線H1〜H4を追加した例である。図11の例では、グループAの未使用部分であるグリッド線G3上に信号線H1が配線され、グループBの未使用部分であるグリッド線G4上に信号線H2が配線されている。またグループCの未使用部分であるグリッド線G13上に信号線H3が配線され、グループDの未使用部分であるグリッド線G12上に信号線H4が配線されている。
【0066】
本実施例では、グループにおけるグリッド幅がEOL長の2倍よりも長くなるように設定されているため、同一グリッド線上に配線された信号線のEOL同士がぶつかることがなく、EOLよる障害を回避できる。
【0067】
尚本実施例では、例えば信号線をセルの端子へ接続する場合や、グリッド線のピッチが異なる配線層に配線された信号線同士を接続する場合には、信号線をグリッド線上からさらに伸ばしても良い。
【0068】
本実施例のようにグリッド線のグループ化を行わない場合、EOLが配線される領域を確保できずにデッドスペースが生じる。図12は、デッドスペースが生じた例を示す図である。図12に示すように、グリッド線のグループ化を行わずに信号線を配線した場合、EOLが存在するために信号線を配線できないデッドスペースDsが生じる。以上のことからも、本実施例では配線領域を無駄なく使用していることがわかる。
【0069】
次に、図13を参照してグリッド線を4つのグループにグループ化した例を説明する。図13は、グリッド線を4つのグループにグループ化した例を説明する図である。
【0070】
図13の例では、グリッド線G1〜G6を4つのグループにグループ化している。グリッド線G1、G5はグループA、グリッド線G2、G6はグループB、グリッド線G3はグループC、グリッド線G4はグループDとなっている。またグリッド線G11〜G16も同様に4つのグループにグループ化されている。グリッド線G11、G15はグループO、グリッド線G12、G16はグループP、グリッド線G13はグループQ、グリッド線G114はグループRとなっている。
【0071】
本実施例では、Nを1以上の整数とし、EOL長を長さLeとし、グループ化する前のグリッド幅を幅WGとした場合、N≧(2×Le+EOL間最小間隔)/WGであれば、グリッド線をNグループに分けることができる。
【0072】
このように本実施例では、配線領域を無駄なく使用することができる。よって、従来ではデッドスペースDsがあるために4層となっていた配線レイアウトに、本実施例を適用すればEOLの障害を回避できデットスペースDsを無くすことができ、2層の配線レイアウトとすることができる。よってコストを低減することもできる。
【0073】
本発明は、以下に記載する付記のような構成が考えられる。
(付記1)
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有することを特徴とする配線レイアウト装置。
(付記2)
前記グリッド幅は、前記突き出し部分の長さと、該突き出し部分間の最小間隔とで決定されることを特徴とする付記1記載の配線レイアウト装置。
(付記3)
前記複数のグループにおいて、前記グループに含まれるグリッド線上に配線されている部分の多い順に前記選択順を設定するグループ順設定手段を有することを特徴とする付記1又は2記載の配線レイアウト装置。
(付記4)
前記信号線に含まれるクロック信号線の配線順を設定した後に、前記信号線に含まれる前記クロック信号線以外の他の信号線の配線順を設定する信号線配線順設定手段を有することを特徴とする付記1乃至3の何れ一項に記載の配線レイアウト装置。
(付記5)
少なくとも前記クロック信号線又は前記他の信号線の配線順は、周波数の高い信号線から順に設定されることを特徴とする付記4記載の配線レイアウト装置。
(付記6)
少なくとも前記クロック信号線又は前記他の信号線の配線順は、周波数が同一である場合に、信号線の長さの順を設定されることを特徴とする付記5記載の配線レイアウト装置。
(付記7)
信号線の長さが同一の前記他の信号線の配線順は、混雑度が高い位置に配線される信号線の順に設定されることを特徴とする付記6記載の配線レイアウト装置。
(付記8)
前記配線手段は、
前記クロック信号線のレイアウト後に前記他の信号線のレイアウトを行うことを特徴とする付記4乃至7何れか一項に記載の配線レイアウト装置。
(付記9)
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置による配線レイアウト方法であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手順と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手順と、を有することを特徴とする配線レイアウト方法。
(付記10)
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置において実行される配線レイアウトプログラムであって、
前記配線レイアウト装置に、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定ステップと、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線ステップと、を実行させることを特徴とする配線レイアウトプログラム。
【0074】
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【0075】
100 配線レイアウト装置
110 フロアプランナ
120 マクロ配置部
130 電源配線部
140 セル配置部
150 グループ設定部
160 使用グループ順設定部
170 信号線配線順設定部
180 配線部
200 データベース
240 フロアプラン情報
【特許請求の範囲】
【請求項1】
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有することを特徴とする配線レイアウト装置。
【請求項2】
前記複数のグループにおいて、前記グループに含まれるグリッド線上に配線されている部分の多い順に前記選択順を設定するグループ順設定手段を有することを特徴とする請求項1記載の配線レイアウト装置。
【請求項3】
前記信号線に含まれるクロック信号線の配線順を設定した後に、前記信号線に含まれる前記クロック信号線以外の他の信号線の配線順を設定する信号線配線順設定手段を有することを特徴とする請求項1又は2記載の配線レイアウト装置。
【請求項4】
前記配線手段は、
前記クロック信号線のレイアウト後に前記他の信号線のレイアウトを行うことを特徴とする請求項3記載の配線レイアウト装置。
【請求項5】
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置による配線レイアウト方法であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手順と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手順と、を有することを特徴とする配線レイアウト方法。
【請求項1】
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手段と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手段と、を有することを特徴とする配線レイアウト装置。
【請求項2】
前記複数のグループにおいて、前記グループに含まれるグリッド線上に配線されている部分の多い順に前記選択順を設定するグループ順設定手段を有することを特徴とする請求項1記載の配線レイアウト装置。
【請求項3】
前記信号線に含まれるクロック信号線の配線順を設定した後に、前記信号線に含まれる前記クロック信号線以外の他の信号線の配線順を設定する信号線配線順設定手段を有することを特徴とする請求項1又は2記載の配線レイアウト装置。
【請求項4】
前記配線手段は、
前記クロック信号線のレイアウト後に前記他の信号線のレイアウトを行うことを特徴とする請求項3記載の配線レイアウト装置。
【請求項5】
配線層上に設けられたグリッド線に沿って配線レイアウトを行う配線レイアウト装置による配線レイアウト方法であって、
信号線端部の突き出し部分の長さに基づいて決定されるグリッド幅となるように、前記配線層毎にグリッド線をグループ分けして複数のグループを設定するグループ設定手順と、
前記配線層毎に、選択順に従って前記グループを選択して、信号線の配線をレイアウトする配線手順と、を有することを特徴とする配線レイアウト方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2011−34474(P2011−34474A)
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願番号】特願2009−182180(P2009−182180)
【出願日】平成21年8月5日(2009.8.5)
【出願人】(308014341)富士通セミコンダクター株式会社 (2,507)
【Fターム(参考)】
【公開日】平成23年2月17日(2011.2.17)
【国際特許分類】
【出願日】平成21年8月5日(2009.8.5)
【出願人】(308014341)富士通セミコンダクター株式会社 (2,507)
【Fターム(参考)】
[ Back to top ]