(57)【要約】【課題】  並列処理を可能にすることにより、高速な設計処理が可能な集積回路の配線処理装置を提供すること。【解決手段】  外部記憶装置１０５に記憶した部品配置情報、部品定義情報、分割情報、ネットリスト情報、端子定義情報を含む設計情報を参照して、集積回路チップの配線処理領域を複数の小領域に分割して大域配線を行い、前記各小領域の境界における配線通過位置を表す階層仮想ピンを下位層との整合性を保つように生成した後に、ＣＰＡ法により前記階層仮想ピンの位置を最適化する処理を、最上位層から最下位層まで所定の階層数だけ行うことにより、前記最下位層における各小領域の境界の配線通過位置を決定し、前記設計情報及び分割矩形内レイアウト情報を用いて、前記配線通過位置を満足するように、各小領域における詳細配線処理を行う。【選択図】  図１
2005108065.tif 000002
【特許請求の範囲】
【請求項１】
部品配置情報、部品定義情報、分割情報、ネットリスト情報、端子定義情報を含む設計情報を記憶する設計情報記憶手段と、
前記設計情報を用いて、集積回路チップの配線処理領域を複数の小領域に分割して大域配線を行い、前記各小領域の境界における配線通過位置を表す階層仮想ピンを下位層との整合性を保つように生成した後に、ＣＰＡ法により前記階層仮想ピンの位置を最適化する処理を、最上位層から最下位層まで所定の階層数だけ行うことにより、前記最下位層における各小領域の境界の配線通過位置を決定する配線通過位置決定手段と、
前記設計情報を用いて、前記配線通過位置決定手段が決定した配線通過位置を満足するように、前記最下位層における各小領域の詳細配線処理を行う詳細配線処理手段とを備えて成ることを特徴とする集積回路の配線処理装置。
【請求項２】
上位層の前記階層仮想ピンは、下位層の前記階層仮想ピンよりも多数の配線トラックを含むことを特徴とする請求項１記載の集積回路の配線処理装置。
【請求項３】
前記最下位層における階層仮想ピンの位置は、各小領域の境界を通過する配線の配線トラックに一致することを特徴とする請求項１又は２記載の集積回路の配線処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路における部品間の配線処理を行う集積回路の配線処理装置に関する。
【背景技術】
【０００２】
従来から、ＬＳＩ（Large Scale Integrated Circuit）等の半導体集積回路において、電子回路要素である部品間の配線を設計するために集積回路の配線処理装置が利用されている。
【０００３】
従来の集積回路の配線処理装置においては、集積回路チップの配線領域を複数の領域に分割し、大域配線（グローバル配線）処理を行うことによって前記複数の領域の境界に仮想端子を決定し、ＣＰＡ（Cross Point Assignment）法を用いて前記仮想端子の位置を最適化する。その後、詳細配線処理を行うことによって、集積回路チップ全体の配線処理を行うようにしている。これにより、集積回路の配線処理を行うことが可能である（例えば、非特許文献１、２参照）。
【非特許文献１】半導体集積回路及びシステムのＣＡＤに関する米国電気電子学会誌に掲載された「大域配線をともなうクロスポイントの割り当て」（１９９５年３月号、Ｖｏｌ１４、Ｎｏ３、５７６〜５８４頁）（Wen-Chung Kao and Tai-Ming Parn,"Cross Point Assignment with Global Routing"、IEEE Transaction on Computer-Aided Design Of Integrated Circuits and System,Vol.14,No3,pp576-584,March 1995）
【非特許文献２】ＣＡＤに関する米国電気電子学会国際会議録に掲載された「フルチップのグリッドレス配線に対するマルチレベルのアプローチ」（２００１年１１月、３９６〜４０３頁）（J.Cong,J.Fang and Y.Zhang "Multilevel Approach to Full-Chip Gridless Routing" Proc. IEEE International Conference on Computer Aided Design, San Jose, California, pp396-403,November 2001）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来の集積回路の配線処理装置においては、高品質な配線処理を行うことは可能であるが、配線計算に長時間要し又、大容量のメモリを必要とするという問題がある。
【０００５】
本発明は、並列処理を可能にすることにより、高速な設計処理が可能な集積回路の配線処理装置を提供することを課題としている。また、本発明は、必要なメモリを低減できるようにすることを課題としている。
【課題を解決するための手段】
【０００６】
本発明によれば、部品配置情報、部品定義情報、分割情報、ネットリスト情報、端子定義情報を含む設計情報を記憶する設計情報記憶手段と、前記設計情報を用いて、集積回路チップの配線処理領域を複数の小領域に分割して大域配線を行い、前記各小領域の境界における配線通過位置を表す階層仮想ピンを下位層との整合性を保つように生成した後に、ＣＰＡ法により前記階層仮想ピンの位置を最適化する処理を、最上位層から最下位層まで所定の階層数だけ行うことにより、前記最下位層における各小領域の境界の配線通過位置を決定する配線通過位置決定手段と、前記設計情報を用いて、前記配線通過位置決定手段が決定した配線通過位置を満足するように、前記最下位層における各小領域の詳細配線処理を行う詳細配線処理手段とを備えて成ることを特徴とする集積回路の配線処理装置が提供される。
【０００７】
配線通過位置決定手段は、集積回路チップの配線処理領域を複数の小領域に分割して大域配線を行い、前記各小領域の境界における配線通過位置を表す階層仮想ピンを下位層との整合性を保つように生成した後に、ＣＰＡ法により前記階層仮想ピンの位置を最適化する処理を、最上位層から最下位層まで所定の階層数だけ行うことにより、前記最下位層における各小領域の境界の配線通過位置を決定する。詳細配線処理手段は、前記配線通過位置決定手段が決定した配線通過位置を満足するように、前記最下位層における各小領域の詳細配線処理を行う。
【０００８】
ここで、上位層の前記階層仮想ピンは、下位層の前記階層仮想ピンよりも多数の配線トラックを含むように構成してもよい。
【０００９】
また、前記最下位層における階層仮想ピンの位置は、各小領域の境界を通過する配線の配線トラックに一致するように構成してもよい。
【発明の効果】
【００１０】
本発明に係る集積回路の配線処理装置によれば、配線処理を並列に行うことが可能になるため、高速な配線設計処理が可能になる。また、小領域単位で詳細配線を行うことが可能になるため、配線処理を行う際に一度に必要とするメモリを低減することが可能になる。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施の形態に係る集積回路の配線処理装置について図面を用いて説明する。
【００１２】
図１は、本発明の実施の形態に係る集積回路の配線処理装置のブロック図である。
【００１３】
図１において、集積回路の配線処理装置１００は、キーボードやマウス等によって構成され入力手段を構成する入力装置１０１、配線通過位置決定手段及び詳細配線手段を構成する中央処理装置（ＣＰＵ）１０２、表示手段を構成する表示装置１０３、半導体メモリによって構成された主記憶装置１０４、磁気ディスクによって構成された外部記憶装置１０５を備えている。
【００１４】
外部記憶装置１０５内には、部品の種類と部品の配置座標に関するデータである部品配置情報を予め記憶した部品配置情報記憶部１０７、部品の形状に関するデータや配線禁止に関するデータ（配線禁止情報）である部品定義情報を予め記憶した部品定義情報記憶部１０８、半導体チップの配線領域を分割するサイズ（換言すれば、数）及び階層レベルを対応付けたデータである分割情報を予め記憶した分割情報記憶部１０９と、ネットリスト情報を予め記憶したネットリスト情報記憶部１１０、端子の位置に関するデータである端子定義情報を予め記憶した端子定義情報記憶部１１１を有している。階層レベルは、最上位層から最下位層まで所定の階層数だけ設けて計算するように予定されている。
【００１５】
尚、前記部品配置情報、部品定義情報、分割情報、ネットリスト情報、端子定義情報は設計情報を構成している。外部記憶装置１０５は、ＣＰＵ１０２が実行する半導体集積回路の配線処理プログラムも記憶している。主記憶装置１０４及び外部記憶装置１０５は設計情報記憶手段を構成している。
【００１６】
図２は、図１の集積回路の配線処理装置１００の処理を示すフローチャートで、外部記憶装置１０５に記憶された配線処理プログラムを主記憶装置１０４に展開し、該プログラムをＣＰＵ１０２が実行することにより行う処理を示している。
【００１７】
図３は、図１の配線処理装置１００における配線処理を説明するための説明図である。
【００１８】
また、図４は、本実施の形態で使用する階層仮想ピンが変化する様子を示す図である。本実施の形態では、半導体集積回路チップの配線処理領域を複数の矩形領域に分割し、各矩形領域の境界に、配線が通過する位置を表す階層仮想ピンを使用するが、最上位層における階層仮想ピン４０１、最上位層から１段下の層における階層仮想ピン４０２、・・・、最下位層における階層仮想ピン４０３というように、階層レベルに応じて階層仮想ピンの大きさが順次小さくなるように変化する。階層仮想ピンは複数の配線トラックを束ねた概念であり、上位層の階層仮想ピンは下位層の階層仮想ピンよりも多くの配線トラック（１本の配線パターンが通る経路）を含んでおり、最下位層の階層仮想ピン４０３は１本の配線トラックを含むものであって配線トラックに一致する。
【００１９】
以下、図１〜図４を用いて、本実施の形態に係る集積回路の配線処理装置１００の動作を詳細に説明する。尚、以下の説明は、半導体集積回路チップの配線処理領域３０１と実際の端子３０２、３０３の配置は図３に示す関係にあるものとし、端子３０２、３０３間の配線処理を行う例で説明する。
【００２０】
先ず、ユーザ（例えば、半導体集積回路の設計者）が入力装置１０１を操作すると、ＣＰＵ１０２は外部記憶装置１０５に記憶しておいた部品配置情報、部品定義情報、分割情報、ネットリスト情報、端子定義情報を主記憶装置１０４に読み込む（ステップＳ２０１）。
【００２１】
次に、ＣＰＵ１０２は、前記分割情報を参照して、チップの配線処理領域３０１全体を、分割レベル（Ｎ）に対応する数の複数の矩形小領域３０５に分割する（図２のステップＳ２０２、図３の３０４）。図３では、Ｎレベルでは、１２個の矩形小領域３０５に分割している。尚、階層レベルは、最上位層から最下位層まで所定の階層数だけ予定されており、最上位層から最下位層へ行くに従って、階層レベルを表す整数Ｎは増加するものとする。
【００２２】
次に、ＣＰＵ１０２は、Ｎレベルにおける大域配線（グローバル配線）処理を行い（図２のステップＳ２０３、図３の３０６）、端子３０２、３０３間に大まかな配線（大域配線）３０７を生成する。
【００２３】
次に、ＣＰＵ１０２は、Ｎレベルと（Ｎ＋１）レベルの整合性を保つように、各小領域３０５間の境界の中の大域配線３０７が通る境界に、複数の階層仮想ピン３１０を生成する（図２のステップＳ２０４、図３の３０８、３１０）。このとき、各階層仮想ピン３１０の詳細な位置は未確定である。分割レベルが上位層であればある程、図４に示すように、各階層仮想ピン３１０が含む配線トラック数は多くなる。またこの時、現在の階層レベルＮのネットを分割して次の下位の階層（Ｎ＋１）についてのネットの生成を行なう（図２のステップＳ２０５、図３の３０９）。
【００２４】
次に、ＣＰＵ１０２は、ＣＰＡ（Cross Point Assignment）法を用いて、各階層仮想ピン３１０の位置の最適化を行う（図２のステップＳ２０６、図３の３１１）。
【００２５】
次に、前記処理が最下位層まで行われたか否か、即ち、現在の階層レベルＮが所定の階層数Ｋに一致するか否かを判断し（ステップＳ２０７）、現在の階層レベルＮが所定の階層数Ｋに一致しないと判断した場合、即ち、前記処理が最下位層まで行われていないと判断した場合には、Ｎ＝（Ｎ＋１）として、次の下位の階層（Ｎ＋１）について、前記同様の処理を行う。
【００２６】
即ち、ＣＰＵ１０２は、前記分割情報を参照して、チップの配線処理領域３０１全体を、分割レベル（Ｎ＋１）に対応する数の複数の矩形小領域３１３に分割する（図２のステップＳ２０２、図３の３１２）。図３では、（Ｎ＋１）レベルでは、１２個の各小領域３０５を９個の小領域３１４に各々分割し、チップ全体として、１０８個の矩形小領域３１４に分割している。
【００２７】
次に、ＣＰＵ１０２は、（Ｎ＋１）レベルにおける大域配線処理を行い（図２のステップＳ２０３、図３の３１３）、端子３０２、３０３間に大まかな配線（大域配線）３０７を生成する。
【００２８】
次に、ＣＰＵ１０２は、（Ｎ＋１）レベルと（Ｎ＋２）レベルの整合性を保つように、各小領域３１３間の境界の中の大域配線が通る境界に、複数の階層仮想ピン３１５を生成する（図２のステップＳ２０４、図３の３１５）。このとき、各階層仮想ピン３１５の詳細な位置は未確定である。但し、分割レベルが（Ｎ＋１）であり、前記処理（レベルＮ）よりも下位層になるため、図４に示すように、各階層仮想ピン３１５が含む配線トラック数は、階層仮想ピン３１０が含む配線トラックよりも少なくなる（例えば１／３）。
【００２９】
次に、ＣＰＵ１０２は、ＣＰＡ（Cross Point Assignment）法を用いて、各階層仮想ピン３１５の位置の最適化を行う（図２のステップＳ２０６）。
【００３０】
次に、前記処理が最下位層まで行われたか否か、即ち、現在の階層レベルＮが所定の階層数Ｋに一致するか否かを判断し（ステップＳ２０７）、現在の階層レベル（Ｎ＋１）が所定の階層数Ｋに一致しないと判断した場合、即ち、前記処理が最下位層まで行われていないと判断した場合には、再びＮに１を加算して、前記同様の処理を行う。
【００３１】
一方、ＣＰＵ１０２は、ステップＳ２０７において最下位層まで前記処理が終了したと判断すると、外部記憶装置１０５に記憶した前記設計情報及び他から主記憶装置１０４に記憶した最下位層の各領域における図形データのレイアウト情報（分割矩形内レイアウト情報）１０６を用いて、詳細配線処理を行う（ステップＳ２０８）。これにより、端子３０２と端子３０３間に配線が形成される。
【００３２】
このとき、最下位層では、図４に示すように、各階層仮想ピンは配線トラックに一致する。したがって、各階層仮想ピンの位置が、各矩形領域の境界における配線の通過する位置に対応することになる。
【００３３】
よって、最下位層における各矩形領域の境界条件を満たすように詳細配線処理することにより、各矩形領域内での詳細配線処理を各々独立して行うことが可能になる。各矩形領域の境界における配線通過位置、即ち、最下位層における各階層仮想ピンの位置を各矩形領域の配線が通過するという条件を満たすようにして、各矩形領域単位で独立して各矩形領域内の詳細配線処理を行うことが可能になる。前記各矩形領域内の詳細配線処理を複数のコンピュータを使用して並設処理することにより、高速な配線算出処理が可能になる。
【００３４】
また、階層化することによって最下位層の矩形領域の面積が小さくなるため、詳細配線処理を行う差違の各矩形領域のデータ量は小さくなるため、メモリ容量の小さなコンピュータを用いて演算処理することが可能になる。
【００３５】
ＣＰＵ１０２は、詳細配線処理が終了すると、配線結果を詳細配線情報２０１として外部記憶装置１０５に出力して記憶し（ステップＳ２０９）、一連の配線処理を終了する。
【００３６】
以上述べたように、本実施の形態に係る集積回路の配線処理装置１００は、部品配置情報、部品定義情報、分割情報、ネットリスト情報、端子定義情報を含む設計情報をあらかじめ記憶した外部記憶装置１０５と、前記設計情報を用いて、集積回路チップの配線処理領域３０１を複数の小領域３０５、３１４に分割して大域配線処理を行い、前記各小領域３０５、３１４の境界における配線通過位置を表す階層仮想ピン３１０、３１５を下位層との整合性を保つように生成した後に、ＣＰＡ法により前記階層仮想ピン３１０、３１５の位置を最適化する処理を、最上位層から最下位層まで所定の階層数だけ行うことにより、前記最下位層における各小領域の境界の配線通過位置を決定する配線通過位置決定手段（ＣＰＵ１０２）と、前記設計情報を用いて、前記配線通過位置決定手段が決定した配線通過位置を満足するように、前記最下位層における各小領域の詳細配線処理を行う詳細配線処理手段（ＣＰＵ１０２）とを備えて成ることを特徴としている。
【００３７】
前記詳細配線処理手段は、前記設計情報及び主記憶装置１０４に記憶した各小領域内のレイアウト情報（分割矩形内レイアウト情報）１０６を用いて、前記配線通過位置を満足するように、各小領域における詳細配線処理を行う。
【００３８】
また、上位層の前記階層仮想ピンは、下位層の前記階層下層ピンよりも多数の配線トラックを含むように構成している。また、前記最下位層における階層仮想ピンの位置は、各小領域の境界を通過する配線の配線トラックに一致するように構成している。
【００３９】
したがって、最下位層における境界条件（配線は各小領域の境界の配線通過位置を通過させるという条件）を満足させれば、詳細配線処理を行う場合、最下位層における各小領単位で相互に独立して行うことが可能になるため、複数のコンピュータを用いて、各小領域単位で並列処理を行うことが可能になり、高速な設計処理が可能になる。また、小領域単位での詳細配線処理が可能になるため、一度に取り扱うデータ量を小さくすることが可能になり、コンピュータが配線の算出処理時に必要とするメモリを低減することが可能になる。
【産業上の利用可能性】
【００４０】
半導体集積回路としては、アナログ集積回路とデジタル集積回路のいずれにも適用することが可能である。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施の形態に係る集積回路の配線処理装置のブロック図である。
【図２】本発明の実施の形態に係る集積回路の配線処理装置の動作を示すフローチャートである。
【図３】本発明の実施の形態に係る集積回路の配線処理装置の処理を説明するための説明図である。
【図４】本発明の実施の形態に係る集積回路の配線処理装置の処理を説明するための説明図である。
【符号の説明】
【００４２】
１０１・・・入力手段を構成する入力装置
１０２・・・配線通過位置決定手段及び詳細配線処理手段を構成するＣＰＵ
１０３・・・表示手段を構成する表示装置
１０４・・・記憶手段を構成する主記憶装置
１０５・・・設計情報記憶手段を構成する外部記憶装置
１０６・・・分割矩形内レイアウト情報記憶部
１０７・・・部品配置情報記憶部
１０８・・・部品定義情報記憶部
１０９・・・分割情報記憶部
１１０・・・ネットリスト情報記憶部
１１１・・・端子定義情報記憶部
３０２、３０３・・・端子
３１０、３１５・・・階層仮想ピン
【図１】
2005108065.tif 000003
【図２】
2005108065.tif 000004
【図３】
2005108065.tif 000005
【図４】
2005108065.tif 000006