(57)【要約】【課題】  配線混雑を起こしやすい回路構造を検出することで、配置配線の際に発生する不具合を事前に抽出することができるレイアウト適正確認装置を提供する。【解決手段】  ネットリスト１を入力し、これに記述される構成部間の接続情報を用いてその全ての入力ポートから全ての出力ポートまでのパス上に存在するセル数と論理段との関係を求める論理段・セル数調査部２と、配線混雑を起こす回路構造に特徴的な構成部間の関係を規定する回路構造判定パラメータ８に基づいて、論理段・セル数調査部２が求めたセル数と論理段との関係から、ネットリスト１の回路構造及びその配線混雑を判定し、レイアウト適正確認情報として判定結果を出力する回路構造調査部７とを備える。【選択図】        図１
2006301786.tif 000002
【特許請求の範囲】
【請求項１】
ネットリストを入力し、これに記述される構成要素間の接続情報を用いてその入力から出力までのパス上に存在する構成要素間の関係を求めるネットリスト構造調査部と、
配線混雑を起こす回路構造に特徴的な構成要素間の関係を規定する判定情報に基づいて、前記ネットリスト構造調査部が求めた構成要素間の関係から前記ネットリストの回路構造及びその配線混雑を判定し、レイアウト適正確認情報として前記判定結果を出力する回路構造調査部とを備えたレイアウト適正確認装置。
【請求項２】
ネットリスト構造調査部は、ネットリストの構成要素間の関係として、その入力から出力までのパス上に存在する論理段とセル数との関係を求め、
回路構造調査部は、配線混雑を起こす回路構造に特徴的な論理段とセル数との関係を規定する判定情報に基づいて、前記ネットリスト構造調査部が求めた論理段とセル数との関係から前記ネットリストの回路構造及びその配線混雑を判定することを特徴とする請求項１記載のレイアウト適正確認装置。
【請求項３】
ネットリスト構造調査部は、ネットリストの構成要素間の関係として、その入力から出力までのパス上に存在する論理段とワイヤ数との関係を求め、
回路構造調査部は、配線混雑を起こす回路構造に特徴的な論理段とワイヤ数との関係を規定する判定情報に基づいて、前記ネットリスト構造調査部が求めた論理段とワイヤ数との関係から前記ネットリストの回路構造及びその配線混雑を判定することを特徴とする請求項１記載のレイアウト適正確認装置。
【請求項４】
ネットリスト構造調査部は、ネットリストの構成要素間の関係として、その入力から出力までのパス上に存在するワイヤ数と論理ワイヤ長との関係を求め、
回路構造調査部は、配線混雑を起こす回路構造に特徴的なワイヤ数と論理ワイヤ長との関係を規定する判定情報に基づいて、前記ネットリスト構造調査部が求めたワイヤ数と論理ワイヤ長との関係から前記ネットリストの回路構造及びその配線混雑を判定することを特徴とする請求項１記載のレイアウト適正確認装置。
【請求項５】
ネットリスト構造調査部は、ネットリストの構成要素間の関係として、その入力から出力までのパス上に存在する複数の構成要素間の関係を求め、
回路構造調査部は、配線混雑を起こす回路構造に特徴的な複数の構成要素間の関係をそれぞれ規定する判定情報に基づいて、前記ネットリスト構造調査部が求めた複数の構成要素間の関係から前記ネットリストの回路構造及びその配線混雑をそれぞれ判定し、これら判定結果を総合的に判定した結果をレイアウト適正確認情報として出力することを特徴とする請求項１記載のレイアウト適正確認装置。
【請求項６】
ネットリスト構造調査部は、複数の構成要素間の関係として、セル又はインスタンスの数と論理段との関係、ワイヤ数と論理段との関係、及びワイヤ数と論理ワイヤ長との関係を求め、
回路構造調査部は、配線混雑を起こす回路構造に特徴的な、論理段とセル数との関係、論理段とワイヤ数との関係、及びワイヤ数と論理ワイヤ長との関係をそれぞれ規定する判定情報に基づいて、前記ネットリスト構造調査部が求めた複数の構成要素間の関係から、前記ネットリストの回路構造及びその配線混雑をそれぞれ判定し、これら判定結果に対して重要度に応じた重み付けを付与して総合的に判定した結果を出力することを特徴とする請求項５記載のレイアウト適正確認装置。
【請求項７】
請求項１から請求項６のうちのいずれか１項記載のネットリスト構造調査部、請求項１から請求項６のうちのいずれか１項記載の回路構造調査部としてコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、レイアウト適性を確認するレイアウト適正確認装置及びこの装置としてコンピュータを機能させるプログラムに関するものである。
【背景技術】
【０００２】
ＬＳＩの自動配置配線を効率よく行うための従来の技術として、例えば特許文献１や特許文献２に開示されるものがある。これらは、ネットリストとセルライブラリを用い、実際にチップ上に配置配線される状態に近い環境をシミュレーションする。
【０００３】
【特許文献１】特開２００２−２１７２９９号公報
【特許文献２】特開平９−４５７７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述した従来の技術のようにシミュレーションを実行するには、セルの大きさやチップの大きさ、ひいては配線の幅に至るまで詳細な物理パラメータが必要である。また、これらの詳細データを扱うシミュレーションには膨大なシミュレーション時間が必要である。
【０００５】
このように、従来の技術では膨大な時間のかかる配置配線のシミュレーションを行わなければ、配置配線が可能であるかどうかがわからなかった。このため、配置配線シミュレーション後にレイアウトできないことが判明した場合、手戻りとなって大きな工程遅延が発生する等の課題があった。
【０００６】
この発明は、上記のような課題を解決するためになされたもので、実際に配置配線のシミュレーションを行う前にネットリストを調査することにより、配線混雑を起こしやすい回路構造を検出することで、配置配線の際に発生する不具合を事前に抽出することができるレイアウト適正確認装置及びこの装置としてコンピュータを機能させるプログラムを得ることを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係るレイアウト適正確認装置は、ネットリストを入力し、これに記述される構成部間の接続情報を用いてその入力から出力までのパス上に存在する構成要素間の関係を求めるネットリスト構造調査部と、配線混雑を起こす回路構造に特徴的な構成要素間の関係を規定する判定情報に基づいて、ネットリスト構造調査部が求めた構成要素間の関係からネットリストの回路構造及びその配線混雑を判定し、レイアウト適正確認情報として判定結果を出力する回路構造調査部とを備えるものである。
【発明の効果】
【０００８】
この発明によれば、ネットリストを入力し、これに記述される構成要素間の接続情報を用いてその入力から出力までのパス上に存在する構成要素間の関係を求めるネットリスト構造調査部と、配線混雑を起こす回路構造に特徴的な構成要素間の関係を規定する判定情報に基づいて、ネットリスト構造調査部が求めた構成要素間の関係から、ネットリストの回路構造及びその配線混雑を判定し、レイアウト適正確認情報として判定結果を出力する回路構造調査部とを備えるので、実際のレイアウトを行う前に配線混雑を起こす可能性の高いモジュールが検出でき、モジュールのレイアウト適性が確認できるため、レイアウト設計工期を短縮することができるという効果がある。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
本実施の形態１によるレイアウト適正確認装置は、以下の処理を実行する。
（１）モジュールネットリストを入力として、モジュールの入力から出力に至るまでの全ての経路について論理段とセル数との関係を調査し、論理段とセル数の関係を出力する。
（２）調査の結果得られた論理段とセル数の関係に基づき、回路構造判定パラメータを用いて回路構造を調査する。
（３）回路構造の調査の結果、配置配線で混雑を起こす可能性が高いモジュールであるか否かの判定結果を出力する。
【００１０】
図１は、この発明の実施の形態１によるレイアウト適正確認装置の論理段とセル数の関係を求める構成を示すブロック図である。本実施の形態１による論理段・セル数調査部（ネットリスト構造調査部）２は、ネットリスト整列部４、ネットリスト巡回部５及び１〜Ｎ段目セル数カウンタ６−１〜６−Ｎから構成される。ネットリスト整列部４は、入力したモジュールネットリスト１に記述されるセルをピラミッド型に整列させる。ネットリスト巡回部５は、整列後のモジュールネットリストに関する情報を読み取り、モジュールネットリスト１に記述されている回路網を網羅的に巡回して論理段に関する情報を出力する。１〜Ｎ段目セル数カウンタ６−１〜６−Ｎは、ネットリスト巡回部５より出力される各論理段に対応して設けられ、各論理段のセル数をカウントするカウンタである。
【００１１】
図２は、実施の形態１によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。本実施の形態１による回路構成調査部７は、パラメータ展開部９及びパラメータマッチ判定部１０から構成される。パラメータ展開部９は、特定の書式で書かれた回路構造判定パラメータ（判定情報）８を読み取り、パラメータマッチ判定部１０が利用できる命令に展開（コンパイル）する。パラメータマッチ判定部１０は、パラメータ展開部９が生成した命令に従い、論理段・セル数調査部２が生成した論理段とセル数の関係の調査結果３が、入力パラメータにマッチするか否かを判定する。
【００１２】
上述した、論理段・セル数調査部２及び回路構成調査部７は、本発明に従うレイアウト適正確認処理プログラムを、上記コンピュータに読み込ませて、その動作を制御することにより、当該コンピュータ上に実現することができる。また、論理段・セル数調査部２と回路構成調査部７の機能を別個のプログラムモジュールとして、互いの情報のやり取りが可能なコンピュータにそれぞれ実行させて、これらコンピュータで論理段・セル数調査部２及び回路構成調査部７を別個に具現化させても良い。モジュールネットリスト１や論理段とセル数の関係の調査結果３、回路構造判定パラメータ８は、例えば上記コンピュータに装備された記憶装置に格納される。
【００１３】
なお、以下の説明において、本発明のレイアウト適正確認装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該技術分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
【００１４】
次に動作について説明する。
図３は、実施の形態１のレイアウト適正確認装置による動作を示すフローチャートであり、図１で示した装置に対して図４に示すモジュールのネットリストを入力した例を挙げて具体的に説明する。先ず、図４に示すモジュールについて説明する。
【００１５】
図４は、主たる機能が２ｔｏ１のセレクタとなるモジュールのネットリストを図面にしたものである。セル１−１〜１−８は１段目の論理段のセルであり、セル２−１〜２−５は２段目の論理段のセル、セル３−１〜３−３は３段目の論理段のセルである。ＩＮ０〜ＩＮ１２、ＯＵＴ０〜ＯＵＴ４及びセル間をつなぐ実線は配線を表している。
【００１６】
また、セル２−５のように、２つの入力のうちの一方の入力から数えた場合と、もう一方の入力から数えた場合とで論理段数が異なる場合には、論理段数が大きくなる、あるいは小さくなるように予めソートする。図４では論理段数が大きくなるようにソートしてある。
【００１７】
図４のような回路構造をもつネットリストを配置配線する場合、ピラミッド型に配置するのが自然な形であるが、実際はチップサイズの制約や、タイミング制約、ピン位置の制約のためピラミッド型に配置されないことが多い。このため、配線のねじれや遠回りが発生し、配線混雑を起こしやすいことがわかっている。
【００１８】
次に、当該モジュールネットリストをモジュールネットリスト１としてレイアウト適正確認処理を説明する。
本実施の形態１によるレイアウト適正確認装置の論理段・セル数調査部２は、上述の回路構造をもつネットリスト１を入力する（ステップＳＴ１）。論理段・セル数調査部２では、内部のネットリスト整列部４が、入力したモジュールネットリスト１に記述されたセルの接続関係から図４に示すようなピラミッド型にセルを整列させる。
【００１９】
続いて、論理段・セル数調査部２のネットリスト巡回部５とセル数カウンタ６−１〜６−Ｎとにより論理段とセル数の調査を実行する（ステップＳＴ２）。先ず、ネットリスト巡回部５は、ネットリスト整列部４により整列されたモジュールネットリストに関する情報を読み取り、モジュールネットリスト１に記述されている回路網を網羅的に巡回して論理段毎に論理段に関する情報を出力する。例えば、各論理段に含まれるセルに関する情報が出力される。
【００２０】
ネットリスト巡回部５より出力される論理段毎の情報は、対応する論理段のセル数カウンタ６−１〜６−Ｎに入力され、各論理段におけるセル数がカウントされる。図４の例を扱う場合では、１段目セル数カウンタ６−１〜３段目セル数カウンタ６−３がそれぞれの論理段におけるセル数をカウントする。このようにして、論理段とセル数の関係の調査結果３が得られる（ステップＳＴ３）。
【００２１】
図４に示すモジュールの論理段とセル数の関係の調査結果は、図５に示すような１段目の論理段のセル数が８、２段目の論理段のセル数が５、３段目の論理段のセル数が３であることを示すグラフで表すことができる。
【００２２】
次に、回路構造調査部７が、論理段とセル数の関係の調査結果３を入力し、これを基に回路構造調査を実行する（ステップＳＴ４）。先ず、回路構造調査部７のパラメータ展開部９が、特定の書式で書かれた回路構造判定パラメータ８を読み取り、パラメータマッチ判定部１０が利用できる命令に展開（コンパイル）する。回路構造判定パラメータ８は、配線混雑を起こす可能性の高いモジュールにおける特徴的な回路構造をセル数に関して規定するパラメータであって、パラメータマッチ判定部１０に実行させる判定命令の判定基準となる。
【００２３】
パラメータマッチ判定部１０は、パラメータ展開部９が生成した命令に従い、論理段・セル数調査部２が生成した論理段とセル数の関係の調査結果３が、回路構造判定パラメータ８にマッチするか否かを判定する。図４に示す回路構造では、回路構造判定パラメータ８中の例えば「Ｎ段目とＮ＋１段目におけるセル数の比がおよそ２：１」というパラメータに一致するので、配線混雑を起こす可能性の高いモジュールと判定される。
【００２４】
なお、図４の例の場合では、Ｎ段目とＮ＋１段目のセル数をそれぞれＳｎ、Ｓｎ＋１とすると、下記式（１）を満たす連続するＮが２つ以上ある場合、回路構造判定パラメータ８中の前記パラメータと一致したものと判定される。
（Ｓｎ＋１）×０．７５≦Ｓｎ／２≦（Ｓｎ＋１）×１．２５      ・・・（１）
【００２５】
このようして、パラメータマッチ判定部１０は、図５に示すグラフの特徴と回路構造判定パラメータとの照らし合わせを実行し、当該グラフの特徴と一致するパラメータがある場合に配線混雑を起こす可能性の高いモジュールの判定結果をレイアウト適正確認用の情報として出力する（ステップＳＴ５）。
【００２６】
以上のように、この実施の形態１によれば、ネットリスト１を入力し、これに記述される構成部間の接続情報を用いてその全ての入力ポートから全ての出力ポートまでのパス上に存在するセル数と論理段との関係を求める論理段・セル数調査部２と、配線混雑を起こす回路構造に特徴的な構成部間の関係を規定する回路構造判定パラメータ８に基づいて、論理段・セル数調査部２が求めたセル数と論理段との関係から、ネットリスト１の回路構造及びその配線混雑を判定し、レイアウト適正確認情報として判定結果を出力する回路構造調査部７とを備えるので、実際のレイアウトを行う前に配線混雑を起こす可能性の高いモジュールを特定することができる。これにより、モジュールのレイアウト適性を事前に確認することができ、ひいてはレイアウト設計工期を短縮できる。
【００２７】
なお、上記実施の形態１では、図４のような主たる機能が２ｔｏ１のセレクタであるモジュールの判定のために「Ｎ段目とＮ＋１段目におけるセル数の比がおよそ２：１」という例を示したが、他に主たる機能が２ｔｏ１のセレクタであるモジュールを判定可能なパラメータが作成できるのであれば、前述のパラメータに限られるものではない。
【００２８】
また、図４のような主たる機能が２ｔｏ１のセレクタであるモジュール以外にも配線混雑を起こす可能性の高い回路構造を持つモジュールがあれば、その回路構造を判別するパラメータを論理段とセル数の関係から作成し、図４の回路を判定した手順と同じ手順を実行すれば、本装置で配線混雑を起こす可能性の高いモジュールであるか否かの判定が可能である。
【００２９】
さらに、配線混雑を起こす可能性の高い回路構造に関する様々なパラメータを回路構造判定パラメータ８に格納しておき、パラメータマッチ判定部１０が、各パラメータに対して配線混雑を起こす可能性の高いモジュールを判定をそれぞれ実行してもよい。
【００３０】
実施の形態２．
本実施の形態２によるレイアウト適正確認装置は、以下の処理を実行する。
（１）モジュールネットリストを入力として、モジュールの入力から出力に至るまでの全ての経路について論理段とワイヤ数との関係を調査し、論理段とワイヤ数の関係を出力する。
（２）調査の結果得られた論理段とワイヤ数の関係に基づき、回路構造判定パラメータを用いて回路構造を調査する。
（３）回路構造の調査の結果、配置配線で混雑を起こす可能性が高いモジュールであるか否かの判定結果を出力する。
【００３１】
図６は、この発明の実施の形態２によるレイアウト適正確認装置の論理段とワイヤ数の関係を求める構成を示すブロック図である。本実施の形態２による論理段・ワイヤ数調査部（ネットリスト構造調査部）２Ａは、ネットリスト整列部４、ネットリスト巡回部５ａ及び１〜Ｎ段目ワイヤ数カウンタ１１−１〜１１−Ｎから構成される。ネットリスト整列部４は、上記実施の形態１で示したものと同様の処理を実行する。ネットリスト巡回部５ａは、整列後のモジュールネットリストに関する情報を読み取り、モジュールネットリスト１に記述されている回路網を網羅的に巡回して各論理段のワイヤを含む論理段に関する情報を出力する。１〜Ｎ段目ワイヤ数カウンタ１１−１〜１１−Ｎは、ネットリスト巡回部５ａより出力される各論理段に対応して設けられ、各論理段のワイヤ数をカウントするカウンタである。
【００３２】
図７は、実施の形態２によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。本実施の形態２による回路構成調査部７Ａは、パラメータ展開部９ａ及びパラメータマッチ判定部１０ａから構成される。パラメータ展開部９ａは、特定の書式で書かれた回路構造判定パラメータ（判定情報）１３を読み取り、パラメータマッチ判定部１０ａが利用できる命令に展開（コンパイル）する。パラメータマッチ判定部１０ａは、パラメータ展開部９ａが生成した命令に従い、論理段・ワイヤ数調査部２Ａが生成した論理段とワイヤ数の関係の調査結果１２が、入力パラメータにマッチするか否かを判定する。
【００３３】
上述した、論理段・ワイヤ数調査部２Ａ及び回路構成調査部７Ａは、本発明に従うレイアウト適正確認処理プログラムを、上記コンピュータに読み込ませて、その動作を制御することにより、当該コンピュータ上に実現することができる。また、論理段・ワイヤ数調査部２Ａと回路構成調査部７Ａの機能を別個のプログラムモジュールとして、互いの情報のやり取りが可能なコンピュータにそれぞれ実行させて、これらコンピュータで論理段・ワイヤ数調査部２Ａ及び回路構成調査部７Ａを別個に具現化させても良い。モジュールネットリスト１や論理段とワイヤ数の関係の調査結果１２、回路構造判定パラメータ１３は、例えば上記コンピュータに装備された記憶装置に格納される。
【００３４】
なお、以下の説明において、本発明のレイアウト適正確認装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該技術分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
【００３５】
次に動作について説明する。
図８は、実施の形態２のレイアウト適正確認装置による動作を示すフローチャートであり、図６で示した装置に対して図９に示すモジュールのネットリストを入力した例を挙げて具体的に説明する。先ず、図９に示すモジュールについて説明する。
【００３６】
図９は、上記実施の形態１の図４のモジュールと同様に主たる機能が２ｔｏ１のセレクタとなるモジュールのネットリストを図面にしたものである。セル１−１〜１−８は１段目の論理段のセルであり、セル２−１〜２−４は２段目の論理段のセル、セル３−１，３−２は３段目の論理段のセルである。ＩＮ０〜ＩＮ１２、ＯＵＴ０〜ＯＵＴ４及びセル間をつなぐ実線は配線を表している。
【００３７】
また、図９のような回路構造も、図４とほぼ同様の構造を有していることから、この接続関係を有するネットリストを配置配線する場合、チップサイズの制約や、タイミング制約、ピン位置の制約のためピラミッド型に配置されないことが多い。このため、配線のねじれや遠回りが発生し、配線混雑を起こしやすい。
【００３８】
次に、当該モジュールネットリストをモジュールネットリスト１としてレイアウト適正確認処理を説明する。
本実施の形態２によるレイアウト適正確認装置の論理段・ワイヤ数調査部２Ａは、上述の回路構造をもつネットリスト１を入力する（ステップＳＴ１ａ）。論理段・ワイヤ数調査部２Ａでは、内部のネットリスト整列部４が、入力したモジュールネットリスト１に記述されたセルの接続関係から図９に示すようなピラミッド型にセルを整列させる。
【００３９】
続いて、論理段・ワイヤ数調査部２Ａのネットリスト巡回部５ａとワイヤ数カウンタ１１−１〜１１−Ｎとにより論理段とワイヤ数の調査を実行する（ステップＳＴ２ａ）。先ず、ネットリスト巡回部５ａは、ネットリスト整列部４により整列されたモジュールネットリストに関する情報を読み取り、モジュールネットリスト１に記述されている回路網を網羅的に巡回して論理段毎に論理段に関する情報を出力する。例えば、各論理段に含まれるセルに接続するワイヤに関する情報が出力される。
【００４０】
ネットリスト巡回部５ａより出力される論理段毎の情報は、対応する論理段のワイヤ数カウンタ１１−１〜１１−Ｎに入力され、各論理段のワイヤ数がカウントされる。ここでは、各論理段のセルに入力されるワイヤをカウントした値をワイヤ数とする。図９の例では、図中の太線の実線で示したワイヤが１段目の論理段についてのワイヤとしてカウントされ、太線の破線で示したワイヤが２段目の論理段についてのワイヤとしてカウントされ、細線の２点破線で示したワイヤが３段目の論理段についてのワイヤとしてカウントされる。このようにして、論理段とワイヤ数の関係の調査結果１２が得られる（ステップＳＴ３ａ）。
【００４１】
図９に示すモジュールの論理段とワイヤ数の関係の調査結果は、図１０に示すような１段目の論理段のワイヤ数が２４、２段目の論理段のワイヤ数が１２、３段目の論理段のワイヤ数が６であることを示すグラフで表すことができる。
【００４２】
次に、回路構造調査部７Ａが、論理段とワイヤ数の関係の調査結果１２を入力し、これを基に回路構造調査を実行する（ステップＳＴ４ａ）。先ず、回路構造調査部７Ａのパラメータ展開部９ａが、特定の書式で書かれた回路構造判定パラメータ１３を読み取り、パラメータマッチ判定部１０ａが利用できる命令に展開（コンパイル）する。回路構造判定パラメータ１３は、配線混雑を起こす可能性の高いモジュールにおける特徴的な回路構造をワイヤ数に関して規定するパラメータであって、パラメータマッチ判定部１０ａに実行させる判定命令の判定基準となる。
【００４３】
パラメータマッチ判定部１０ａは、パラメータ展開部９ａが生成した命令に従い、論理段・ワイヤ数調査部２Ａが生成した論理段とワイヤ数の関係の調査結果１２が、回路構造判定パラメータ１３にマッチするか否かを判定する。図９のような回路構造の場合、「Ｎ段目とＮ＋１段目におけるワイヤ数の比がおよそ２：１」というパラメータに一致するので、配線混雑を起こす可能性の高いモジュールと判定される。
【００４４】
なお、図９の例の場合では、Ｎ段目とＮ＋１段目のワイヤ数をそれぞれＳｎ、Ｓｎ＋１とすると、下記式（２）を満たす連続するＮが２つ以上ある場合、回路構造判定パラメータ１３中の前記パラメータと一致したものと判定される。
（Ｓｎ＋１）×０．７５≦Ｓｎ／２≦（Ｓｎ＋１）×１．２５      ・・・（２）
【００４５】
このように、パラメータマッチ判定部１０ａは、図１０に示すグラフの特徴と回路構造判定パラメータ１３との照らし合わせを実行し、当該グラフの特徴と一致するパラメータがある場合に配線混雑を起こす可能性の高いモジュールの判定結果をレイアウト適正確認用の情報として出力する（ステップＳＴ５ａ）。
【００４６】
以上のように、この実施の形態２によれば、論理段・ワイヤ数調査部２Ａが、ネットリスト１の入力ポートから出力ポートまでのパス上に存在する論理段とワイヤ数との関係を求め、回路構造調査部７Ａが、配線混雑を起こす回路構造に特徴的な論理段とワイヤ数との関係を規定する回路構造判定パラメータ１３に基づいて、論理段・ワイヤ数調査部２Ａが求めた論理段とワイヤ数との関係からネットリスト１の回路構造及びその配線混雑を判定し、その判定結果をレイアウト適正確認情報として出力するので、実際のレイアウトを行う前に配線混雑を起こす可能性の高いモジュールを特定することができる。これにより、モジュールのレイアウト適性を事前に確認することができ、ひいてはレイアウト設計工期を短縮できる。
【００４７】
なお、上記実施の形態２では、図９のような主たる機能が２ｔｏ１のセレクタであるモジュールの判定のために「Ｎ段目とＮ＋１段目におけるワイヤ数の比がおよそ２：１」という例を示したが、他に主たる機能が２ｔｏ１のセレクタであるモジュールを判定可能なパラメータが作成できるのであれば、前述のパラメータに限られるものではない。
【００４８】
また、図９のような主たる機能が２ｔｏ１のセレクタであるモジュール以外にも配線混雑を起こす可能性の高い回路構造を持つモジュールがあれば、その回路構造を判別するパラメータを論理段とワイヤ数の関係から作成し、図９の回路を判定した手順と同じ手順を実行すれば、本装置で配線混雑を起こす可能性の高いモジュールであるか否かの判定が可能である。
【００４９】
実施の形態３．
本実施の形態３によるレイアウト適正確認装置は、以下の処理を実行する。
（１）モジュールネットリストを入力として、モジュールの入力から出力に至るまでの全ての経路についてワイヤ数と論理ワイヤ長との関係を調査し、ワイヤ数と論理ワイヤ長の関係を出力する。
（２）調査の結果得られたワイヤ数と論理ワイヤ長の関係に基づき、回路構造判定パラメータを用いて回路構造を調査する。
（３）回路構造の調査の結果、配置配線で混雑を起こす可能性が高いモジュールであるか否かの判定結果を出力する。
【００５０】
図１１は、この発明の実施の形態３によるレイアウト適正確認装置のワイヤ数と論理ワイヤ長の関係を求める構成を示すブロック図である。本実施の形態３によるワイヤ数・論理ワイヤ長調査部（ネットリスト構造調査部）２Ｂは、ネットリスト整列／ラベル付け部１４、ネットリスト巡回部５ｂ及び論理ワイヤ長が１〜Ｎのワイヤ数カウンタ１５−１〜１５−Ｎから構成される。ネットリスト整列／ラベル付け部１４は、入力したモジュールネットリスト１に記述されるセルをピラミッド型に整列させ、セルに対してそれが属する論理段をラベル付けする。
【００５１】
ネットリスト巡回部５ｂは、整列後のモジュールネットリストに関する情報を読み取り、モジュールネットリスト１に記述されている回路網を網羅的に巡回しながら、例えばラベルＮのセルＡから後段のラベル（Ｎ＋Ｍ）のセルＢへ移動する際、ラベル付けされているセルの論理段の差Ｍを論理ワイヤ長として出力する。ワイヤ数カウンタ１５−１〜１５−Ｎは、ネットリスト巡回部５ｂより出力される各論理ワイヤ長に対応するワイヤ数をそれぞれカウントするカウンタである。
【００５２】
図１２は、実施の形態３によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。本実施の形態３による回路構成調査部７Ｂは、パラメータ展開部９ｂ及びパラメータマッチ判定部１０ｂから構成される。パラメータ展開部９ｂは、特定の書式で書かれた回路構造判定パラメータ（判定情報）１７を読み取り、パラメータマッチ判定部１０ｂが利用できる命令に展開（コンパイル）する。パラメータマッチ判定部１０ｂは、パラメータ展開部９ｂが生成した命令に従い、ワイヤ数・論理ワイヤ長調査部２Ｂが生成したワイヤ数と論理ワイヤ長の関係の調査結果１６が、入力パラメータにマッチするか否かを判定する。
【００５３】
上述した、ワイヤ数・論理ワイヤ長調査部２Ｂ及び回路構成調査部７Ｂは、本発明に従うレイアウト適正確認処理プログラムを、上記コンピュータに読み込ませて、その動作を制御することにより、当該コンピュータ上に実現することができる。また、ワイヤ数・論理ワイヤ長調査部２Ｂと回路構成調査部７Ｂの機能を別個のプログラムモジュールとして、互いの情報のやり取りが可能なコンピュータにそれぞれ実行させて、これらコンピュータでワイヤ数・論理ワイヤ長調査部２Ｂ及び回路構成調査部７Ｂを別個に具現化させても良い。モジュールネットリスト１やワイヤ数と論理ワイヤ長の関係の調査結果１６、回路構造判定パラメータ１７は、例えば上記コンピュータに装備した記憶装置に格納される。
【００５４】
なお、以下の説明において、本発明のレイアウト適正確認装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該技術分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
【００５５】
次に動作について説明する。
図１３は、実施の形態３のレイアウト適正確認装置による動作を示すフローチャートであり、図１１で示した装置に対して図１４に示すモジュールのネットリストを入力した例を挙げて具体的に説明する。先ず、図１４に示すモジュールについて説明する。
【００５６】
図１４はＮ段の論理段をもつ回路構成のモジュールを示しており、図中の太線で示したワイヤ１８は、１段目の論理段に配置されるセル１−１からＸ（１＜Ｘ＜Ｎ）段目の論理段における構成部１９に接続するワイヤ、１段目の論理段に配置されるセル１−２からＹ（Ｘ＜Ｙ＜Ｎ）段目の論理段における構成部１９に接続するワイヤを示している。なお、ワイヤ数は、上記実施の形態２でカウントしたものと同等とする。
【００５７】
１段〜Ｘ段、１段〜Ｙ段のように離れた論理段の構成部を接続するワイヤ１８は、セレクタのセレクト信号のように制御信号であることが多く、レイアウトが散らばってなされると、配線もそれにひっぱられて散らばる傾向にある。従って、図１４に示すように論理ワイヤ長が長いワイヤが多数あると、配線混雑の原因となりやすい。
【００５８】
次に、当該モジュールネットリストをモジュールネットリスト１としてレイアウト適正確認処理を説明する。
本実施の形態３によるレイアウト適正確認装置のワイヤ数・論理ワイヤ長調査部２Ｂは、上述の回路構造をもつネットリスト１を入力する（ステップＳＴ１ｂ）。ワイヤ数・論理ワイヤ長調査部２Ｂでは、内部のネットリスト整列／ラベル付け部１４が、入力したモジュールネットリスト１に記述されたセルの接続関係から、図１４に示すようなピラミッド型にセルを整列させ、セルに対してそれが属する論理段をラベル付けする。
【００５９】
続いて、ワイヤ数・論理ワイヤ長調査部２Ｂのネットリスト巡回部５ｂとワイヤ数カウンタ１５−１〜１５−Ｎとによりワイヤ数と論理ワイヤ長の調査を実行する（ステップＳＴ２ｂ）。先ず、ネットリスト巡回部５ｂは、ネットリスト整列／ラベル付け部１４により整列されたモジュールネットリストに関する情報を読み取り、整列後のモジュールネットリストに関する情報を読み取り、モジュールネットリスト１に記述されている回路網を網羅的に巡回しながら、ラベル付けされているセルの論理段の差を論理ワイヤ長として出力する。
【００６０】
図１４の例では、ネットリスト巡回部５ｂが、ラベル１のセル１−１から後段のラベルＸ＋１のセルへ探索を移動する際、ラベル付けされているセルの論理段の差（Ｘ）を論理ワイヤ長として出力する。また、ラベル１のセル１−２から後段のラベルＸ＋Ｙ＋１のセルへ探索を移動する際であれば、セルの論理段の差（Ｘ＋Ｙ）を論理ワイヤ長として出力する。
【００６１】
ネットリスト巡回部５ｂより出力される論理ワイヤ長毎の情報は、対応する論理ワイヤ長のワイヤ数カウンタ１５−１〜１５−Ｎに入力され、各論理ワイヤ長のワイヤ数がカウントされる。図１４の例を扱う場合では、論理ワイヤ長が１のワイヤ数カウンタ１５−１〜論理ワイヤ長が３のワイヤ数カウンタ１５−３がそれぞれの論理ワイヤ長におけるワイヤ数をカウントする。このようにして、ワイヤ数と論理ワイヤ長の関係の調査結果１６が得られる（ステップＳＴ３ｂ）。
【００６２】
図１４に示すモジュールのワイヤ数と論理ワイヤ長の関係の調査結果は、図１５に示すように論理ワイヤ長が１のワイヤ数が２２、論理ワイヤ長が２のワイヤ数が１２、論理ワイヤ長がＸのワイヤ数が１、論理ワイヤ長が（Ｘ＋Ｙ）のワイヤ数が１であることを示すグラフで表すことができる。
【００６３】
次に、回路構造調査部７Ｂが、ワイヤ数と論理ワイヤ長の関係の調査結果１６を入力し、これを基に回路構造調査を実行する（ステップＳＴ４ｂ）。先ず、回路構造調査部７Ｂのパラメータ展開部９ｂが、特定の書式で書かれた回路構造判定パラメータ１７を読み取り、パラメータマッチ判定部１０ｂが利用できる命令に展開（コンパイル）する。回路構造判定パラメータ１７は、配線混雑を起こす可能性の高いモジュールにおける特徴的な回路構造を論理ワイヤ長のワイヤ数に関して規定するパラメータであって、パラメータマッチ判定部１０ｂに実行させる判定命令の判定基準となる。
【００６４】
パラメータマッチ判定部１０ｂは、パラメータ展開部９ｂが生成した命令に従い、ワイヤ数・論理ワイヤ長調査部２Ｂが生成したワイヤ数・論理ワイヤ長の関係の調査結果１６が、回路構造判定パラメータ１７にマッチするか否かを判定する。図１４に示す回路構造では、回路構造判定パラメータ１７中に「論理ワイヤ長がＸ（Ｘ＞１）を超えるものがＮ（Ｎ＞１）個以上ある」というパラメータを設定しておけば、当該パラメータに一致して配線混雑を起こす可能性が高いモジュールとして判定される。
【００６５】
このように、パラメータマッチ判定部１０ｂは、図１５に示すグラフの特徴と回路構造判定パラメータ１７との照らし合わせを実行し、当該グラフの特徴と一致するパラメータがある場合に配線混雑を起こす可能性の高いモジュールの判定結果をレイアウト適正確認用の情報として出力する（ステップＳＴ５ｂ）。
【００６６】
以上のように、この実施の形態３によれば、ワイヤ数・論理ワイヤ長調査部２Ｂが、ネットリスト１の入力ポートから出力ポートまでのパス上に存在するワイヤ数と論理ワイヤ長との関係を求め、回路構造調査部７Ｂが、配線混雑を起こす回路構造に特徴的なワイヤ数と論理ワイヤ長との関係を規定する回路構造判定パラメータ１７に基づいて、ワイヤ数・論理ワイヤ長調査部２Ｂが求めたワイヤ数と論理ワイヤ長との関係から、ネットリスト１の回路構造及びその配線混雑を判定し、判定結果をレイアウト適正確認情報として出力するので、実際のレイアウトを行う前に配線混雑を起こす可能性の高いモジュールを特定することができる。これにより、モジュールのレイアウト適性を事前に確認することができ、ひいてはレイアウト設計工期を短縮できる。
【００６７】
なお、上記実施の形態３では、図１４のようなモジュールの判定のために「論理ワイヤ長がＸ（Ｘ＞１）を超えるものがＮ（Ｎ＞１）個以上ある」という例を示したが、図１４のようなモジュールを判定可能なパラメータが作成できるのであれば、前述のパラメータに限られるものではない。
【００６８】
実施の形態４．
本実施の形態４によるレイアウト適正確認装置は、以下の処理を実行する。
（１）モジュールネットリストを入力として、モジュールの入力から出力に至るまでの全ての経路について、論理段とセル数の関係、論理段とワイヤ数との関係、及びワイヤ数と論理ワイヤ長との関係を調査し、これらの調査結果を出力する。
（２）調査の結果得られた各関係に基づき、回路構造判定パラメータを用いて回路構造を調査する。
（３）各回路構造の調査結果に基づいた、配置配線で混雑を起こす可能性が高いモジュールであるか否かの判定結果を、さらに総合的に判定した判定結果を出力する。
【００６９】
この発明の実施の形態４によるレイアウト適正確認装置は、上記実施の形態１で示した論理段・セル数調査部２、上記実施の形態２で示した論理段・ワイヤ数調査部２Ａ、及びワイヤ数・論理ワイヤ長調査部２Ｂから構成される調査部（ネットリスト構造調査部）を有している。これら調査部２，２Ａ，２Ｂは、実施の形態４によるレイアウト適正確認装置に入力されたモジュールネットリストをそれぞれ上記実施の形態１〜３と同様な調査処理を実行して、論理段とセル数の関係の調査結果３、論理段とワイヤ数との関係の調査結果１２、及びワイヤ数と論理ワイヤ長との関係の調査結果１６を得る。
【００７０】
図１６は、この発明の実施の形態４によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。本実施の形態４による回路構成調査部７Ｃは、上記実施の形態１で示した回路調査部７、上記実施の形態２で示した回路調査部７Ａ、上記実施の形態３で示した回路調査部７Ｂ、パラメータマッチ総合判定部２０から構成される。パラメータマッチ総合判定部２０は、それぞれの回路構造調査部７，７Ａ，７Ｂが出力する判定結果に対してどの判定結果を重要視するかの重み付けを行い判定結果を出力する。
【００７１】
上述した、調査部２，２Ａ，２Ｂを含む調査部及び回路構成調査部７Ｃは、本発明に従うレイアウト適正確認処理プログラムを、上記コンピュータに読み込ませて、その動作を制御することにより、当該コンピュータ上に実現することができる。また、調査部２，２Ａ，２Ｂと回路構成調査部７Ｃの機能を別個のプログラムモジュールとして、互いの情報のやり取りが可能なコンピュータにそれぞれ実行させて、これらコンピュータで調査部２，２Ａ，２Ｂ及び回路構成調査部７Ｃを別個に具現化させても良い。モジュールネットリスト１や調査結果３，１２，１６、回路構造判定パラメータ８，１３，１７は、例えば上記コンピュータに装備された記憶装置に格納される。
【００７２】
なお、以下の説明において、本発明のレイアウト適正確認装置を具現化するコンピュータ自体の構成及びその基本的な機能については、当業者が当該技術分野の技術常識に基づいて容易に認識できるものであり、本発明の本質に直接関わるものでないので詳細な記載を省略する。
【００７３】
次に動作について説明する。
図１７は、実施の形態４のレイアウト適正確認装置による動作を示すフローチャートであり、この図に沿って動作を説明する。
本実施の形態４によるレイアウト適正確認装置の論理段・セル数調査部２、論理段・ワイヤ数調査部２Ａ、及びワイヤ数・論理ワイヤ長調査部２Ｂが、モジュールネットリスト１を入力すると（ステップＳＴ１ｃ）、上記実施の形態１〜３と同様にして、論理段とセル数の関係、ワイヤ数と論理ワイヤ長の調査を実行（ステップＳＴ２ｃ−１、ステップＳＴ２ｃ−２、ステップＳＴ２ｃ−３）して各調査結果３，１２，１６を得る（ステップＳＴ３ｃ−１、ステップＳＴ３ｃ−２、ステップＳＴ３ｃ−３）。
【００７４】
次に、回路構造調査部７Ｃが、各調査結果３，１２，１６を入力し、これらを基に回路構造調査を実行する（ステップＳＴ４ｃ）。回路構造調査部７Ｃ内の回路構造調査部７，７Ａ，７Ｂが、上記実施の形態１〜３と同様にして、各調査結果３，１２，１６が回路構造判定パラメータ８，１３，１７にマッチするか否かを判定する。このようにして、パラメータマッチ判定部１０，１０ａ，１０ｂは、各調査結果３，１２，１６で特定される化回路構造の特徴と回路構造判定パラメータ８，１３，１７との照らし合わせを実行し、当該グラフの特徴と一致するパラメータがある場合に配線混雑を起こす可能性の高いモジュールの判定結果をそれぞれ出力する。
【００７５】
パラメータマッチ判定部１０，１０ａ，１０ｂからの判定結果は、パラメータマッチ総合判定部２０に入力される。パラメータマッチ総合判定部２０では、それぞれの回路構造調査部７，７Ａ，７Ｂが出力する判定結果に対してどの判定結果を重要視するかの重み付けを加えて、レイアウト適正確認用の最終的な判定結果として出力する（ステップＳＴ５ｃ）。
【００７６】
以上のように、この実施の形態４によれば、上記実施の形態１〜３で述べた処理を総合した判定結果を出力することで、上記実施の形態１〜３の処理をそれぞれ実行する場合と比較して配線混雑を起こしやすい回路構造の検出をより精度良く行うことができる。
【００７７】
また、上記実施の形態４では、上記実施の形態１〜３で述べた処理により得られた判定結果を総合する例を示したが、配線混雑を起こす可能性がある回路構造における他の構成要素間の関係を規定する回路構造判定パラメータを設定し、上記実施の形態１〜３以外の関係を求めてレイアウト適正確認情報を作成するようにしてもよい。
【００７８】
なお、上記実施の形態１〜４におけるセルには、これをレイアウト上にインスタンス化したものも含むものとする。
【図面の簡単な説明】
【００７９】
【図１】この発明の実施の形態１によるレイアウト適正確認装置の論理段とセル数の関係を求める構成を示すブロック図である。
【図２】実施の形態１によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。
【図３】実施の形態１のレイアウト適正確認装置による動作を示すフローチャートである。
【図４】モジュールネットリストで特定される回路構造の一例を示す図である。
【図５】論理段とセル数の関係の調査結果のグラフである。
【図６】この発明の実施の形態２によるレイアウト適正確認装置の論理段とワイヤ数の関係を求める構成を示すブロック図である。
【図７】実施の形態２によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。
【図８】実施の形態２のレイアウト適正確認装置による動作を示すフローチャートである。
【図９】モジュールネットリストで特定される回路構造の一例を示す図である。
【図１０】論理段とワイヤ数の関係の調査結果のグラフである。
【図１１】この発明の実施の形態３によるレイアウト適正確認装置のワイヤ数と論理ワイヤ長の関係を求める構成を示すブロック図である。
【図１２】実施の形態３によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。
【図１３】実施の形態３のレイアウト適正確認装置による動作を示すフローチャートである。
【図１４】モジュールネットリストで特定される回路構造の一例を示す図である。
【図１５】ワイヤ数と論理ワイヤ長の関係の調査結果のグラフである。
【図１６】この発明の実施の形態４によるレイアウト適正確認装置の回路構造を調査する構成を示すブロック図である。
【図１７】実施の形態４のレイアウト適正確認装置による動作を示すフローチャートである。
【符号の説明】
【００８０】
１  モジュールネットリスト、１−１〜１−８，２−１〜２−５，３−１〜３−３  セル、２  論理段・セル数調査部（ネットリスト構造調査部）、２Ａ  論理段・ワイヤ数調査部（ネットリスト構造調査部）、２Ｂ  ワイヤ数・論理ワイヤ長調査部（ネットリスト構造調査部）、３  論理段とセル数の調査結果、４  ネットリスト整列部、５，５ａ，５ｂ  ネットリスト巡回部、６−１〜６−Ｎ  セル数カウンタ、７，７Ａ，７Ｂ，７Ｃ  回路構造調査部、８，１３，１７  回路構造判定パラメータ（判定情報）、９，９ａ，９ｂ  パラメータ展開部、１０，１０ａ，１０ｂ  パラメータマッチ判定部、１１−１〜１１−Ｎ  ワイヤ数カウンタ、１２  論理段とワイヤ数の関係の調査結果、１４  ネットリスト整列／ラベル付け部、１５−１〜１５−Ｎ  ワイヤ数カウンタ、１６  ワイヤ数と論理ワイヤ長の関係の調査結果、１８  ワイヤ、１９  構成部、２０  パラメータマッチ総合判定部。
【図１】
2006301786.tif 000003
【図２】
2006301786.tif 000004
【図３】
2006301786.tif 000005
【図４】
2006301786.tif 000006
【図５】
2006301786.tif 000007
【図６】
2006301786.tif 000008
【図７】
2006301786.tif 000009
【図８】
2006301786.tif 000010
【図９】
2006301786.tif 000011
【図１０】
2006301786.tif 000012
【図１１】
2006301786.tif 000013
【図１２】
2006301786.tif 000014
【図１３】
2006301786.tif 000015
【図１４】
2006301786.tif 000016
【図１５】
2006301786.tif 000017
【図１６】
2006301786.tif 000018
【図１７】
2006301786.tif 000019