(57)【要約】【課題】シミュレーションを実行することなく、最適な配線幅の取得を行えるようにすることにより、シミュレーションの複数回実行による処理時間増大を防ぐ。【解決手段】レイアウト設計装置は、フリップチップ構造の半導体集積回路のＲＤＬ（パッド−Ｉ／Ｏ端子間）配線処理において、Ｉ／Ｏセルの所要電流量と配線長に適した配線幅を取得するためのテーブルをライブラリ化して保持する手段と、パッドとＩ／Ｏセルの位置関係から配線に必要な距離を算出する手段と、パッドとＩ／Ｏセル端子間の配線に必要な距離とＩ／Ｏセルの所要電流量と前記テーブルから適切な配線幅を取得する手段とを有することを特徴とする。【選択図】図３
2012083952.tif 000002
【特許請求の範囲】
【請求項１】
フリップチップ構造の半導体集積回路におけるＩ／Ｏセルの所要電流量と配線長に応じた配線幅とを対応付けたテーブルをライブラリ化して保持するための記憶部と、
入力情報に基づいて、パッドを仮想的に配置したレイアウトデータを作成し、当該パッドに入力／出力する信号に対応するＩ／Ｏセルがどのような位置に配置されるかを仮に定義し、端子アサイン処理を行うレイアウト作成部と、
パッドとＩ／Ｏセルとの位置関係から配線に要する距離を算出する配線距離算出部と、
パッドとＩ／Ｏセル端子間の配線に要する距離とＩ／Ｏセルの所要電流量とを基に、前記テーブルから該当する配線幅を取得する配線幅取得部と
を具備する
レイアウト設計装置。
【請求項２】
請求項１に記載のレイアウト設計装置であって、
前記レイアウト作成部は、前記取得された配線幅でパッドとＩ／Ｏセル間の接続が可能かチェックし、チェック結果がＯＫかＮＧかを判定し、チェック結果がＮＧであれば、アサインの変更を行う
レイアウト設計装置。
【請求項３】
請求項１又は２に記載のレイアウト設計装置であって、
前記配線距離算出部は、処理対象のパッドの中心座標を（Ｘ１、Ｙ１）、処理対象のＩ／Ｏセルの端子の中心座標を（Ｘ２、Ｙ２）として、Ｘ方向の距離をＸ１とＸ２との差から求め、Ｙ方向の距離をＹ１とＹ２との差から求め、
前記配線距離算出部は、Ｘ方向の距離とＹ方向の距離の和から、パッドとＩ／Ｏセル端子間の距離を算出する
レイアウト設計装置。
【請求項４】
計算機により実施されるレイアウト設計方法であって、
フリップチップ構造の半導体集積回路におけるＩ／Ｏセルの所要電流量と配線長に応じた配線幅とを対応付けたテーブルをライブラリ化して保持することと、
入力情報に基づいて、パッドを仮想的に配置したレイアウトデータを作成することと、
パッドに入力／出力する信号に対応するＩ／Ｏセルがどのような位置に配置されるかを仮に定義することと、
端子アサイン処理を行うことと、
パッドとＩ／Ｏセルとの位置関係から配線に要する距離を算出することと、
パッドとＩ／Ｏセル端子間の配線に要する距離とＩ／Ｏセルの所要電流量とを基に、前記テーブルから該当する配線幅を取得することと
を含む
レイアウト設計方法。
【請求項５】
請求項４に記載のレイアウト設計方法であって、
前記取得された配線幅でパッドとＩ／Ｏセル間の接続が可能かチェックすることと、
チェック結果がＯＫかＮＧかを判定し、チェック結果がＮＧであれば、アサインの変更を行うことと
を更に含む
レイアウト設計方法。
【請求項６】
請求項４又は５に記載のレイアウト設計方法であって、
処理対象のパッドの中心座標を（Ｘ１、Ｙ１）、処理対象のＩ／Ｏセルの端子の中心座標を（Ｘ２、Ｙ２）とすることと、
Ｘ方向の距離をＸ１とＸ２との差から求めることと、
Ｙ方向の距離をＹ１とＹ２との差から求めることと、
Ｘ方向の距離とＹ方向の距離の和から、パッドとＩ／Ｏセル端子間の距離を算出することと
を更に含む
レイアウト設計方法。
【請求項７】
フリップチップ構造の半導体集積回路におけるＩ／Ｏセルの所要電流量と配線長に応じた配線幅とを対応付けたテーブルをライブラリ化して保持するステップと、
入力情報に基づいて、パッドを仮想的に配置したレイアウトデータを作成するステップと、
パッドに入力／出力する信号に対応するＩ／Ｏセルがどのような位置に配置されるかを仮に定義するステップと、
端子アサイン処理を行うステップと、
パッドとＩ／Ｏセルとの位置関係から配線に要する距離を算出するステップと、
パッドとＩ／Ｏセル端子間の配線に要する距離とＩ／Ｏセルの所要電流量とを基に、前記テーブルから該当する配線幅を取得するステップと
を計算機に実行させるための
プログラム。
【請求項８】
請求項７に記載のプログラムであって、
前記取得された配線幅でパッドとＩ／Ｏセル間の接続が可能かチェックするステップと、
チェック結果がＯＫかＮＧかを判定し、チェック結果がＮＧであれば、アサインの変更を行うステップと
を更に計算機に実行させるための
プログラム。
【請求項９】
請求項７又は８に記載のプログラムであって、
処理対象のパッドの中心座標を（Ｘ１、Ｙ１）、処理対象のＩ／Ｏセルの端子の中心座標を（Ｘ２、Ｙ２）とするステップと、
Ｘ方向の距離をＸ１とＸ２との差から求めるステップと、
Ｙ方向の距離をＹ１とＹ２との差から求めるステップと、
Ｘ方向の距離とＹ方向の距離の和から、パッドとＩ／Ｏセル端子間の距離を算出するステップと
を更に計算機に実行させるための
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レイアウト設計装置に関し、特にフリップチップ構造の半導体集積回路における外部端子（パッド）とＩ／Ｏ（入出力）バッファ端子間の配線を行うレイアウト設計装置に関する。
【背景技術】
【０００２】
半導体集積回路分野において、回路の高機能、高性能、大規模化に伴い、高集積なチップを短ＴＡＴ（Ｔｕｒｎ−Ａｒｏｕｎｄ  Ｔｉｍｅ）で設計する必要性が高まっている。
【０００３】
回路の大規模化に伴い、半導体チップ（ＩＣチップ）の外部との信号の授受に使用する外部端子（パッド）数も増大しており、半導体チップサイズを増大させることなく、パッドを必要数搭載する手段として、チップを格子状に区切り、その格子の交点上に連続して、もしくは1つ飛びでチップ全面にパッドを配置するフリップチップ構造の適用が進んでいる。
【０００４】
フリップチップ構造では、パッドとＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ：入出力）セルを結ぶ配線を均等な距離にできるワイヤボンディング構造と異なり、パッドとＩ／Ｏセルが離れた距離に配置される場合と近傍に配置される場合とでは、パッドとＩ／Ｏセルを結ぶ配線長に数百μｍの差が生じ、電位降下（ＩＲ−Ｄｒｏｐ）の原因となる。なお、パッドとＩ／Ｏセルを結ぶ配線は、ＲＤＬ（Ｒｅ−Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｌａｙｅｒ：再配線層）配線である。
【０００５】
高性能化が進む近年の半導体チップにおいては、求められる電気的な特性も厳しく、電気的特性を満たした電位降下の量にするためには、全てのＲＤＬ配線において、配線抵抗とＩ／Ｏセルの所要電流量で決まる電位降下の量が、要求される電気的特性を満たすように、配線長に適した配線幅で配線を行う必要がある。
【０００６】
しかしながら、チップ外周部のみならず、チップの中心部までパッドを格子状に多数配置するフリップチップ構造では、パッドとＩ/Ｏセル間の配線経路上に他の信号・電源用のパッドが存在している場合がある。
【０００７】
これら他のパッド同士の隙間を配線領域として配線を行う際、配線幅が太い（大きい）と、配線領域内で配線を行うことが不可能になる。そのため、現状では、パッドとＩ／Ｏセル間を接続するために必要十分な配線幅を算出し、この配線幅を基に、配線領域内で配線できるか確認しながらパッドとＩ／Ｏセルの配置を行う必要がある。
【０００８】
したがって、配線幅を取得する技術の効率化が求められている。
【０００９】
関連する技術として、特許文献１（特開２００６−２１０６６１号公報）に半導体集積回路の設計方法が開示されている。この関連技術では、半導体集積回路の配線許容電流から配線幅の制約値を求め、レイアウトデータで制約値通りの配線幅か否か検証する。
【００１０】
図１に、上記の関連技術における半導体集積回路の設計方法の処理を示す。
【００１１】
（１）ステップＳ１
まず、制約箇所選択処理により、回路図データ１とプロセスデータ２を基に、半導体集積回路の回路図において、配線幅の制約を設定する箇所を指定する。
【００１２】
（２）ステップＳ２
シミュレーション処理により、回路図データ１を基に、半導体集積回路の回路シミュレーションを実行して、制約箇所選択処理において与えた配線幅の制約値に応じた許容電流値を超えていないかを求める。
【００１３】
図２に、配線幅の制約値に応じた許容電流値の設定値の例を示す。
【００１４】
（３）ステップＳ３
ここで、求めた値が図２に示す許容電流値を超えていた場合、回路図データ１とプロセスデータ２を基に、その電流値から必要な配線幅を求めて、各ノードに必要な配線幅を制約値決定処理により決定する。
（４）ステップＳ４
接続情報作成処理により、回路図データ１を基に、半導体集積回路の接続情報３を作成する。
【００１５】
（５）ステップＳ５
次に、配線幅の検証ルール４を作成するルール作成処理において、制約値決定処理により決定した配線幅から半導体集積回路内に存在するネット毎に検証すべき配線幅を定義した検証ルール４のファイルを作成する。
【００１６】
（６）ステップＳ６
レイアウト作成処理により、半導体集積回路に応じたレイアウトデータ５を作成する。
【００１７】
（７）ステップＳ７
レイアウト検証処理により、レイアウト作成処理において作成されたレイアウトデータ５と、ルール作成処理において作成された配線幅の検証ルール４と、接続情報作成手段により作成された半導体集積回路の接続情報３を基に、レイアウトデータ５の配線幅がルール作成処理において決定された検証ルール４の配線幅通りに作成されているか否かを検証する。
【００１８】
ここで、上記の関連技術には、設計ＴＡＴが増加するという問題がある。
【００１９】
その理由は、図１のフローにおいて、シミュレーション処理によって各配線の電流値を算出し、その結果が予め定義されている配線幅で許容されている場合のみ、制約値決定処理において配線幅を太くすることで、パッドとＩ／Ｏセルの位置関係や、Ｉ／Ｏセルの所要電流量に応じた配線幅を取得することが可能であるが、フリップチップ構造のチップの設計においては、シミュレーション処理を繰り返し実行する必要が生じるためである。
【００２０】
ネットリストには、外部と信号を授受する端子が多数存在している。半導体チップを設計する際、これらの信号をチップ上のどのパッドから入力／出力するかを決定（端子アサイン）する必要がある。
【００２１】
端子アサイン（ピンアサイン）は、設計の初期段階においては、当該半導体チップと信号を授受する他の回路との配置位置の兼ね合いで変更が頻繁に行われる。
【００２２】
前述の通り、フリップチップ構造のチップ設計においては、パッドとＩ／Ｏセル端子間の距離は一定ではない。Ｉ／Ｏセルとの距離が短いパッドにある信号の端子をアサインした際の条件でシミュレーションを実行し、配線幅を取得した後、Ｉ／Ｏセルとの距離が長いパッドに端子アサインを変更すると、電位降下（ＩＲ−Ｄｒｏｐ）の要求仕様を満たせない可能性がある。
【００２３】
その理由は、配線抵抗値は、配線長に比例し、配線幅に反比例するため、配線幅を変更せずに配線長だけを大きくすると、配線抵抗が増大することに起因する。
【００２４】
すなわち、フリップチップの設計において、端子アサインを変更する度に、図１のシミュレーション処理において入力される回路図データの抵抗値が変動することになり、再度シミュレーション処理を実行する必要が生じる。
【００２５】
このように、イタレーション（ｉｔｅｒａｔｉｏｎ：繰り返し、反復）の度にシミュレーション処理を実行する必要があるため、設計ＴＡＴが増加する。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００６−２１０６６１号公報
【発明の概要】
【発明が解決しようとする課題】
【００２７】
フリップチップ構造の半導体集積回路のレイアウト設計では、イタレーションの度にシミュレーションを実行する必要があるため、設計ＴＡＴが増加するという問題があった。
【課題を解決するための手段】
【００２８】
本発明のレイアウト設計装置は、フリップチップ構造の半導体集積回路におけるＩ／Ｏセルの所要電流量と配線長に応じた配線幅とを対応付けたテーブルをライブラリ化して保持するための記憶部と、入力情報に基づいて、パッドを仮想的に配置したレイアウトデータを作成し、当該パッドに入力／出力する信号に対応するＩ／Ｏセルがどのような位置に配置されるかを仮に定義し、端子アサイン処理を行うレイアウト作成部と、パッドとＩ／Ｏセルとの位置関係から配線に要する距離を算出する配線距離算出部と、パッドとＩ／Ｏセル端子間の配線に要する距離とＩ／Ｏセルの所要電流量とを基に、テーブルから該当する配線幅を取得する配線幅取得部とを具備する。
【００２９】
本発明のレイアウト設計方法は、計算機により実施されるレイアウト設計方法であって、フリップチップ構造の半導体集積回路におけるＩ／Ｏセルの所要電流量と配線長に応じた配線幅とを対応付けたテーブルをライブラリ化して保持することと、入力情報に基づいて、パッドを仮想的に配置したレイアウトデータを作成することと、パッドに入力／出力する信号に対応するＩ／Ｏセルがどのような位置に配置されるかを仮に定義することと、端子アサイン処理を行うことと、パッドとＩ／Ｏセルとの位置関係から配線に要する距離を算出することと、パッドとＩ／Ｏセル端子間の配線に要する距離とＩ／Ｏセルの所要電流量とを基に、テーブルから該当する配線幅を取得することとを含む。
【００３０】
本発明のプログラムは、上記のレイアウト設計方法における処理を、計算機に実行させるためのプログラムである。なお、本発明のプログラムは、記憶装置や記憶媒体に格納することが可能である。
【発明の効果】
【００３１】
フリップチップ構造の半導体集積回路において、シミュレーションを実行することなく、最適な配線幅の取得を行えるようになる。これにより、シミュレーションの複数回実行による処理時間の増大を防止する。
【図面の簡単な説明】
【００３２】
【図１】従来技術の動作を示すフローチャートである。
【図２】従来技術の配線幅の制約を示す図である。
【図３】本発明のレイアウト設計装置の構成例を示すブロック図である。
【図４】本発明のレイアウト設計装置の動作を示すフローチャートである。
【図５】本発明におけるパッド、Ｉ／Ｏセルの仮想配置例を示す図である。
【図６】本発明における配線幅を取得するためのテーブルの構成例を示す図である。
【発明を実施するための形態】
【００３３】
以下に、本発明の実施形態について添付図面を参照して説明する。
図３に示すように、本発明のレイアウト設計装置は、入力装置１０と、記憶装置２０と、処理装置３０と、出力装置４０を備える。
【００３４】
入力装置１０は、入力情報として、Ｉ／Ｏライブラリ１１と、ネットリスト１２と、設計基準１３と、図形情報１４と、テーブル１５を取得し、記憶装置２０に格納する。なお、入力装置１０は、これらの入力情報を、必要に応じて内部／外部の記憶装置から読み出して処理装置３０に送るものでも良い。
【００３５】
Ｉ／Ｏライブラリ１１は、Ｉ／Ｏの種類と所要電流量を記載したライブラリである。
【００３６】
ネットリスト１２は、電子回路における端子間の接続情報のデータである。
【００３７】
設計基準１３は、図形同士の間隔のルールを定義した情報である。
【００３８】
図形情報１４は、半導体チップ（ＩＣチップ）のパッド位置やＩ／Ｏセル配置位置を表した情報である。
【００３９】
テーブル１５は、配線長、Ｉ／Ｏセルの所要電流量、配線幅を対応付けた情報である。テーブル１５は、配線長及びＩ／Ｏセルの所要電流量をパラメータとして最適な配線幅を取得するために用いられる。
【００４０】
記憶装置２０は、Ｉ／Ｏライブラリ１１と、ネットリスト１２と、設計基準１３と、図形情報１４と、テーブル１５を記憶し、必要に応じて処理装置３０に提供する。
【００４１】
処理装置３０は、レイアウト作成部３１と、配線距離算出部３２と、配線幅取得部３３を具備する
【００４２】
レイアウト作成部３１は、入力情報に基づいて、パッドを仮想的に配置したレイアウトデータを作成する。その後、レイアウト作成部３１は、配線距離算出部３２や配線幅取得部３３での処理結果を反映したレイアウトデータを作成する。
【００４３】
配線距離算出部３２は、パッドとＩ／Ｏセルとの位置関係から配線に要する距離を算出する。
【００４４】
配線幅取得部３３は、算出されたパッドとＩ／Ｏセル端子間の配線に要する距離と、Ｉ／Ｏセルの所要電流量を基に、テーブル１５から該当する配線幅を取得する
【００４５】
出力装置４０は、作成されたレイアウトデータを出力する。
【００４６】
［ハードウェアの例示］
本発明のレイアウト設計装置の例として、ＰＣ（パソコン）、シンクライアントサーバ、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機を想定している。
【００４７】
入力装置１０の例として、キーボードやキーパッド、画面上のキーパッド、タッチパネル（ｔｏｕｃｈ  ｐａｎｅｌ）、タブレット（ｔａｂｌｅｔ）、又は、ＩＣチップや記憶媒体を読み込む読取装置等が考えられる。或いは、入力装置１０は、外部の入力装置や記憶装置から情報を取得するためのインターフェース（ｉｎｔｅｒｆａｃｅ（Ｉ／Ｆ））でも良い。
【００４８】
記憶装置２０の例として、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ等の半導体記憶装置、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の補助記憶装置、又は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）やＳＤメモリカード（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  ｍｅｍｏｒｙ  ｃａｒｄ）等のリムーバブルディスクや記憶媒体（メディア）等が考えられる。
【００４９】
処理装置３０の例として、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、マイクロプロセッサ（ｍｉｃｒｏｐｒｏｃｅｓｓｏｒ）、マイクロコントローラ、或いは、専用の機能を有する半導体集積回路（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ（ＩＣ））等が考えられる。なお、処理装置３０は、各々の機能を計算機に実行させるためのプログラムでも良い。
【００５０】
出力装置４０の例として、ＬＣＤ（液晶ディスプレイ）やＰＤＰ（プラズマディスプレイ）、有機ＥＬディスプレイ（ｏｒｇａｎｉｃ  ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ  ｄｉｓｐｌａｙ）等の表示装置や、出力内容を用紙等に印刷するプリンタ等の印刷装置等が考えられる。或いは、出力装置４０は、外部の表示装置や記憶装置に情報を出力するためのインターフェース（Ｉ／Ｆ）でも良い。
【００５１】
なお、入力装置１０、記憶装置２０、処理装置３０、及び出力装置４０は、それぞれ独立した計算機でも良いし、物理マシン上に構築された仮想マシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ（ＶＭ））でも良い。
【００５２】
また、記憶装置２０及び処理装置３０は、一体化していても良い。例えば、近年では、マイコン等の１チップ化が進んでいる。従って、本発明のレイアウト設計装置に搭載される１チップマイコンが、記憶装置２０及び処理装置３０を備えている事例が考えられる。
【００５３】
処理装置３０は、記憶装置２０から設計ツール等のプログラムを読み出して実行することにより、レイアウト作成部３１、配線距離算出部３２、及び配線幅取得部３３を実現しても良い。
【００５４】
但し、実際には、これらの例に限定されない。
【００５５】
［レイアウト設計処理］
図４を参照して、本発明のレイアウト設計装置の処理の流れについて説明する。
【００５６】
（１）ステップＳ１０１
まず、処理装置３０のレイアウト作成部３１は、端子アサインの結果に基づいて、処理対象の外部端子（パッド）への信号の割付と、Ｉ／Ｏセルの配置を行う。
【００５７】
（２）ステップＳ１０２
処理装置３０の配線距離算出部３２は、信号の割り付いたパッドとＩ／Ｏセル端子間の距離を計算する。
【００５８】
（３）ステップＳ１０３
処理装置３０の配線幅取得部３３は、テーブル１５を参照し、接続するＩ／Ｏセルの所要電流量・配線距離から必要な配線幅を取得する。
【００５９】
（４）ステップＳ１０４
処理装置３０のレイアウト作成部３１は、取得した配線幅でパッドとＩ／Ｏセル間の接続が可能かチェック（確認）する。
【００６０】
（５）ステップＳ１０５
処理装置３０のレイアウト作成部３１は、チェック結果がＯＫ（可、合格）かＮＧ（不可、不合格）かを判定する。このとき、処理装置３０のレイアウト作成部３１は、チェック結果がＮＧであれば、ＯＫになるようにアサインの変更等を行う（ステップＳ１０１に戻る）。
【００６１】
（６）ステップＳ１０６
処理装置３０のレイアウト作成部３１は、チェック結果がＯＫであれば、全てのパッドのアサインが完了するまで、これらの処理を繰り返す（ステップＳ１０１に戻る）。
【００６２】
なお、上記のレイアウト設計処理において、処理装置３０のレイアウト作成部３１は、ステップＳ１０１の処理を行う前に、Ｉ／Ｏライブラリ１１、ネットリスト１２、設計基準１３、図形情報１４、テーブル１５を、入力情報として取得する。
【００６３】
処理装置３０のレイアウト作成部３１は、入力情報に従い、チップ上の所定の座標、所定の大きさでパッドを仮想的に配置する。また、端子アサインで決定した当該パッドに入力／出力する信号に対応するＩ／Ｏセルがどのような位置に配置されるかを仮に定義する。また、端子アサイン処理を行う。同時に、端子アサインをした信号に対応するＩ／Ｏセルの配置を行う。
【００６４】
また、処理装置３０のレイアウト作成部３１は、入力済みのネットリスト１２から、接続対象となるＩ／Ｏセル端子も特定する（ステップＳ１０１）。
【００６５】
図５は、本実施形態におけるパッド、Ｉ／Ｏセルの仮想配置を示す図である。
【００６６】
図５に示すように、本実施形態に係る半導体チップは、Ｉ／Ｏセル５１と、パッド５２と、Ｉ／Ｏセル端子５３を含む。
【００６７】
Ｉ／Ｏセル５１は、Ｉ／Ｏセルの本体である。パッド５２は、外部端子（パッド）である。Ｉ／Ｏセル端子５３は、Ｉ／Ｏセル５１の端子である。
【００６８】
パッド中心座標５４は、パッド５２の中心座標である。Ｉ／Ｏセル端子中心座標５５は、Ｉ／Ｏセル端子５３の中心座標である。
【００６９】
次に、処理装置３０の配線距離算出部３２は、図５に示すような半導体チップにおいて、処理対象のパッド５２の中心座標５４を（Ｘ１、Ｙ１）、処理対象のＩ／Ｏセル５１の端子５３の中心座標５５を（Ｘ２、Ｙ２）として、Ｘ方向の距離をＸ１とＸ２の差から求め、Ｙ方向の距離をＹ１とＹ２の差から求める。また、処理装置３０の配線距離算出部３２は、Ｘ方向の距離とＹ方向の距離の和から、パッドとＩ／Ｏセル端子間の距離（Ｌ）を算出する（ステップＳ１０２）。
【００７０】
次に、処理装置３０の配線幅取得部３３は、簡便な四則演算で算出されるパッドとＩ／Ｏセル端子間の距離（配線長Ｌ）と、処理対象となるＩ／Ｏセルに関するＩ／Ｏライブラリ１１から取得される所要電流量をテーブル１５に当てはめ、該当する配線幅を取得する（ステップＳ１０３）。
【００７１】
ここでは、処理装置３０の配線幅取得部３３は、図６に示すようなＩ／Ｏセルの所要電流量と、パッドとＩ／Ｏセル端子間の距離（配線長Ｌ）を基に、テーブル１５の中から、電気的特性を満たすために必要な配線幅を取得する。
【００７２】
例えば、処理装置３０の配線幅取得部３３は、Ｉ／Ｏセルの所要電流量が「３ｍＡ」で、配線長Ｌが「４０μｍ」の場合、図６の表中の「３ｍＡ」の列と、「２０μｍ＜Ｌ≦４０μｍ」の行の交差するカラムの値「３．００」を、必要な配線値として取得できる。
【００７３】
次に、処理装置３０のレイアウト作成部３１は、パッドとＩ／Ｏセル端子間の配線可否のチェック処理を行う（ステップＳ１０４）。
【００７４】
処理装置３０のレイアウト作成部３１は、パッドとＩ／Ｏセル端子間の配線可否のチェック処理において、設計者が端子アサインした端子に接続する配線を通過させる対向するパッド列の隙間、或いはこれらパッド列の隙間を通過させる全ての配線（既に端子アサイン処理を終えたネットの配線を含む）をリストアップし、これら各配線の配線幅の合計と、入力済みのデザインルールから取得されるスペーシング（配線同士の間隔）を加算した数値が、前述の２つのパッド列の間隔以下であれば配線が可能と判断し、それ以外であれば配線が不可能と判断する（ステップＳ１０５）。
【００７５】
処理装置３０のレイアウト作成部３１は、端子アサインをすることで、配線が不可能と判断される場合（ステップＳ１０５でＮＯ）、ステップＳ１０１に戻り、端子アサインを変更する。
【００７６】
例えば、パッド間が６０μｍ、配線するメタル層のスペーシングが５μｍ、それ以前の端子アサイン処理で配線幅２０μｍのネットが２本通過している場合、６０［μｍ］−５［μｍ］−２０［μｍ］×２−５［μｍ］−５［μｍ］＝５［μｍ］となり、後１本配線をすることは不可能と判断し（ステップＳ１０５でＮＯ）、ステップＳ１０１に戻り、端子アサインを変更する。
【００７７】
処理装置３０のレイアウト作成部３１は、配線が不可能と判断されなければ、配線可能と判断し（ステップＳ１０５でＹＥＳ）、次のパッドとＩ／Ｏセル端子間の配線処理に移る。
【００７８】
処理装置３０のレイアウト作成部３１は、以上の処理を終えたパッドを「処理済み」として扱い、チップ上のＩ／Ｏセルに接続するパッドのうち「未処理」のパッドが残っていないか判定を行う（ステップＳ１０６）。
【００７９】
処理装置３０のレイアウト作成部３１は、未処理のパッドが残っている場合（ステップＳ１０６でＮＯ）、ステップＳ１０１に戻り、端子アサイン処理を継続する。
【００８０】
処理装置３０のレイアウト作成部３１は、全パッドが処理済みの場合（ステップＳ１０６でＹＥＳ）、図４に示すレイアウト設計処理を終了し、パッドとＩ／Ｏ端子間の接続情報に基づきパッドとＩ／Ｏセル端子間を、図４に示すレイアウト設計処理で取得されている配線幅で配線を行い、配線結果を出力装置４０から出力する。
【００８１】
［テーブルの例］
図６を参照して、Ｉ／Ｏセル端子の所要電流量と、パッドとＩ／Ｏセル端子間の距離Ｌから、電気的特性を満たすために必要な配線幅を取得するためのテーブルの作り方について説明する。
【００８２】
Ｉ／Ｏセルの所要電流量に適した配線長・配線幅で配線経路を見積もるために、配線抵抗が所定の値以下となることを判断基準とする。
【００８３】
抵抗値（Ｒ）は配線長（Ｌ）×配線層のシート抵抗値（ρ）÷配線幅（Ｗ）で求められるため、配線長に応じて必要な配線幅をＷ＝Ｌ×ρ÷Ｒで求めることができる。
【００８４】
例えば、配線長が１２０［μｍ］、シート抵抗値（固定値）が０．０７８［ｏｈｍ／□］、配線抵抗値が２．２［ｏｈｍ］とすると、配線幅はおよそ４．２５［μｍ］で良いことになる。
【００８５】
同様な計算をＩ／Ｏセルの代表的な所定電流量（１ｍＡ、３ｍＡ、５ｍＡ、８ｍＡ、１２ｍＡ等）、配線長（２０［μｍ］刻み等）に対して行い、Ｉ／Ｏセル所要電流量と配線長のパラメータ２個から適切な配線幅を得るテーブル１５を作成する。
【００８６】
得られる配線幅は、レイアウトに適したグリッドに合わせることと、テーブルに設定した配線長（Ｌ）の範囲に応じて、離散的である。テーブルの分割数を増やす（Ｌの範囲を細分化する）ことで、高精度に配線幅を取得することが可能となるため、要求される精度に応じた運用が可能である。この場合でも、配線幅の取得方法そのものは不変であるため、端子アサイン時のＴＡＴには影響しない。
【００８７】
また、上記の実施例では、設計者がネットリスト１２の信号端子をインタラクティブに端子アサインする際の動作を例に説明したが、以下のような他の実施例も考えられる。
【００８８】
例えば、端子アサインの結果を定義したファイルを用意し、これを入力することで、処理装置３０のレイアウト作成部３１は、設計者が端子アサインした場合と同様の処理を行ったとする（ステップＳ１０１）。
【００８９】
その結果、処理装置３０の配線距離算出部３２は、パッドとＩ／Ｏセル端子間の距離を計算する（ステップＳ１０２）。
【００９０】
処理装置３０の配線幅取得部３３は、必要な配線幅を取得する（ステップＳ１０３）。
【００９１】
処理装置３０のレイアウト作成部３１は、配線幅を基に、配線が可能か否か判定を行う（ステップＳ１０４）。
【００９２】
処理装置３０のレイアウト作成部３１は、配線が可能な場合、全てのパッドに対して処理が完了したか確認する（ステップＳ１０５）。
【００９３】
配線が不可能な場合、ステップＳ１０１に戻り、端子アサインの変更を行うことで、インタラクティブに端子アサインした際と同等の処理が行える。
【００９４】
［本発明の特徴］
以上のように、本発明のレイアウト設計装置は、フリップチップ構造の半導体集積回路におけるＩ／Ｏセルの所要電流量と配線長に適した配線幅とを対応付けたテーブルをライブラリ化して保持する手段と、パッドとＩ／Ｏセルの位置関係から配線に必要な距離を算出する手段と、パッドとＩ／Ｏセル端子間の配線に必要な距離と、Ｉ／Ｏセルの所要電流量と、上記テーブルから、適切な配線幅を取得する手段とを備える。
【００９５】
本発明のレイアウト設計装置は、上記テーブルを参照して、配線長に適した配線幅を算出できるので、端子アサイン検討時の設計ＴＡＴの増加を防ぐことができる。
【００９６】
従来技術においては、端子アサインを変更すると配線の抵抗値が変動する。従って、適切な配線幅を取得するためには、図４に示すレイアウト設計処理において、シミュレーション処理を実行する必要があった。
【００９７】
しかし、本発明では、予め用意したテーブルを参照して適切な配線幅を取得できるようになるため、シミュレーションの実行が不要になる。
【００９８】
特に、端子アサインは通常何度も繰り返して調整する必要があるため、端子アサインが繰り返される度にシミュレーションする必要がなくなることで、設計ＴＡＴの増加を防ぐことができる。
【００９９】
また、本発明では、チップサイズが増大しない。
【０１００】
従来技術では、電流密度が規定値を超えた場合に配線幅を太くするが、本発明では、所要電流量や配線長に応じて、パッド間よりも細い配線幅を算出するため、パッド間を広げずにより多くのＲＤＬ配線を通過させることも可能である。
【０１０１】
以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
【符号の説明】
【０１０２】
１…  回路図データ
２…  プロセスデータ
３…  接続情報
４…  検証ルール
５…  レイアウトデータ
１０…  入力装置
１１…  Ｉ／Ｏライブラリ
１２…  ネットリスト
１３…  設計基準
１４…  図形情報
１５…  テーブル
２０…  記憶装置
３０…  処理装置
３１…  レイアウト作成部
３２…  配線距離算出部
３３…  配線幅取得部
４０…  出力装置
５１…  Ｉ／Ｏセル
５２…  パッド
５３…  Ｉ／Ｏセル端子
５４…  パッド中心座標
５５…  Ｉ／Ｏセル端子中心座標
【図１】
2012083952.tif 000003
【図２】
2012083952.tif 000004
【図３】
2012083952.tif 000005
【図４】
2012083952.tif 000006
【図５】
2012083952.tif 000007
【図６】
2012083952.tif 000008