(57)【要約】【課題】配置配線エラーを引き起こす不要なスタックビアを削除することができる半導体集積回路のレイアウト設計装置及びレイアウト設計方法を提供する。【解決手段】本発明のレイアウト設計方法は、格子状の電源配線を配置し、配置配線した後、配置配線のエラーを判定するエラー判定ステップＳ６と、配置配線のエラーがある場合には、エラー座標に基づき削除範囲を指定し、当該削除範囲のスタックビアを取り除くスタックビア削除ステップＳ２０とを有する。ステップＳ２０では、配置配線のエラーが生じている座標を中心にしたｘ方向及びｙ方向の所定範囲に、範囲係数を乗算した領域を削除範囲とし、当該第１削除範囲に削除すべきスタックビアが存在しない場合は、範囲係数を大きい値に更新することで削除範囲を更新し、更新した削除範囲に削除すべきスタックビアが存在するか否かを判定する。【選択図】図２
2008310527.tif 000002
【特許請求の範囲】
【請求項１】
格子状電源配線を有する半導体集積回路のレイアウト設計装置であって、
電源配線及び配置配線を実行する自動配置配線部と、
前記自動配置配線部が実行した配置配線のエラーを検出するデザインルールチェック部と、
前記デザインルールチェック部により配置配線のエラーを検出した場合に、そのエラー座標に基づき削除範囲を指定し、当該削除範囲のスタックビアを取り除くための処理を行なうスタックビア削除部とを有する半導体集積回路のレイアウト設計装置。
【請求項２】
前記配置配線のエラーがなくなった場合に、スタックビアを追加可能か判定し、追加可能であればスタックビアを追加するための処理を行なうスタックビア追加部をさらに有する
ことを特徴とする請求項１記載の半導体集積回路のレイアウト設計装置。
【請求項３】
電源配線で発生するノイズの量に応じたエラーである電源解析エラーを検出する電源解析部と、
前記電源解析部が前記電源解析エラーを検出した場合に、そのエラー座標に基づき配線追加範囲を指定し、当該配線追加範囲内に電源強化配線を追加する電源追加配線強化部とをさらに有する
ことを特徴とする請求項１又は２記載の半導体集積回路のレイアウト設計装置。
【請求項４】
前記電源解析部は、エレクトロマイグレーションが生じるか否か及び／又は電源配線の電圧降下が基準値以内か否かを検出する
ことを特徴とする請求項３記載の半半導体集積回路のレイアウト設計装置。
【請求項５】
フロアプランを決定するフロアプラン部を有し、
前記電源追加配線強化部は、前記電源解析エラーが生じている座標が前記削除範囲内か否かを判定し、
前記フロアプラン部は、前記電源解析エラーが生じている座標が前記削除範囲内であれば、フロアプランをやり直す
ことを特徴とする請求項３又は４記載の半導体集積回路のレイアウト設計装置。
【請求項６】
半導体集積回路の消費電力を見積もる電力見積もり部を有し、
前記電源追加配線強化部は、前記電源解析エラーが生じている座標を含む所定範囲に含まれるフリップフロップ数が基準値以内か否かを判定し、
前記電力見積もり部は、前記電源解析エラーが生じている座標を含む所定範囲に含まれるフリップフロップ数が全て基準値以上である場合に当該半導体集積回路の消費電力の見積もりをやり直す
ことを特徴とする請求項３乃至５のいずれか１項記載の半導体集積回路のレイアウト設計装置。
【請求項７】
前記スタックビア削除部は、配置配線のエラーが生じている座標を中心にｘ方向及びｙ方向の所定範囲に、第１の範囲係数を乗算した領域を第１削除範囲とし、当該第１削除範囲に削除すべきスタックビアが存在しない場合は、前記第１の範囲係数を大きい値に更新して前記所定範囲に乗算した領域を第２削除範囲とし、当該第２削除範囲に削除すべきスタックビアが存在するか否かを判定する
ことを特徴とする請求項１乃至６のいずれか１項記載の半導体集積回路のレイアウト設計装置。
【請求項８】
前記スタックビア削除部は、配置配線のエラーが生じている座標を中心にｘ方向及びｙ方向の所定範囲を第１削除範囲とし、当該第１削除範囲に削除すべきスタックビアが存在しない場合は、当該第１削除範囲のｘ方向及びｙ方向を電源ピッチ又はビアピッチ分大きくした第２削除範囲を設定し、当該第２削除範囲に削除すべきスタックビアが存在するか否かを判定する
ことを特徴とする請求項１乃至６のいずれか１項記載の半導体集積回路のレイアウト設計装置。
【請求項９】
前記電源追加配線強化部は、前記電源解析エラーが生じている座標を中心にｘ方向及びｙ方向の所定範囲に、第２の範囲係数を乗算した領域を第１配線追加範囲とし、当該第１配線追加範囲に電源配線を追加できない場合は、前記第２の範囲係数を大きい値に更新して前記所定範囲に乗算した領域を第２配線追加範囲とし、当該第２配線追加範囲に電源配線が追加できるか否かを判定する
ことを特徴とする請求項３乃至８のいずれか１項記載の半導体集積回路のレイアウト設計装置。
【請求項１０】
前記電源追加配線強化部は、電源解析エラーが生じている座標を中心にｘ方向及びｙ方向の所定範囲を第１配線追加範囲とし、当該第１配線追加範囲に電源配線を追加できない場合は、当該第１配線追加範囲のｘ方向及びｙ方向を電源ピッチ又はビアピッチ分大きくした第２配線追加範囲を設定し、当該第２配線追加範囲に電源配線が追加できるか否かを判定する
ことを特徴とする請求項３乃至８のいずれか１項記載の半導体集積回路のレイアウト設計装置。
【請求項１１】
格子状電源配線を有する半導体集積回路のレイアウト設計方法であって、
電源配線及び配置配線実行した後、配置配線のエラーを判定するエラー判定ステップと、
前記配置配線のエラーがある場合に、エラー座標に基づき削除範囲を指定し、当該削除範囲のスタックビアを取り除くスタックビア削除ステップとを有する半導体装置のレイアウト設計方法。
【請求項１２】
前記配置配線のエラーがなくなった場合に、スタックビアが追加可能か判定し、追加可能であればスタックビアを追加するスタックビア追加ステップを更に有する
ことを特徴とする請求項１１に記載の半導体装置のレイアウト設計方法。
【請求項１３】
電源配線で発生するノイズの量に応じたエラーである電源解析エラーを検出する電源エラー検出工程と、
前記電源解析エラーを検出した場合に、そのエラー座標に基づき配線追加範囲を指定し、当該配線追加範囲内に電源強化配線を追加する電源追加配線強化工程とをさらに有する
ことを特徴とする請求項１１又は１２記載の半導体集積回路のレイアウト設計方法。
【請求項１４】
フロアプランを決定するフロアプラン工程を有し、
前記電源追加配線強化工程では、前記電源解析エラーが生じている座標が前記削除範囲内か否かを判定し、前記電源解析エラーが生じている座標が前記削除範囲内であれば、前記フロアプラン工程をやり直す
ことを特徴とする請求項１３記載の半導体集積回路のレイアウト設計方法。
【請求項１５】
半導体集積回路の消費電力を見積もる電力見積もり工程を有し、
前記電源追加配線強化工程では、前記電源解析エラーが生じている座標を含む所定範囲に含まれるフリップフロップ数が基準値以内か否かを判定し、前記電源解析エラーが生じている座標を含む所定範囲に含まれるフリップフロップ数が全て基準値以上である場合には前記電力見積もり工程をやり直す
ことを特徴とする請求項１３又は１４記載の半導体集積回路のレイアウト設計方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、格子状電源配線を有する半導体集積回路のレイアウト設計装置及びレイアウト設計方法に関する。
【背景技術】
【０００２】
ＬＳＩ（Large Scale Integration）及び論理回路のハードマクロ設計において、高集積密度でレイアウト設計を行うことはコストと動作スピードの面で大きなメリットがある。しかし、電源配線のメッシュ構造によるスタックビア（Ｖｉａ）が原因で部分的に迂回配線が発生する。これが配線ネックとなり、信号配線遅延時間が増加して高速化の妨げとなっていた。その解決策としては、スタックビアを削除して迂回配線率を減少させ高集積化を図ることが挙げられる。
【０００３】
従来のＬＳＩレイアウト設計装置について説明する（例えば特許文献１参照。）。図１３は、従来のＬＳＩレイアウト設計装置の構成を示すブロック図である。図１３において、ＬＳＩレイアウト設計装置１１１は、ＦＢ（function block）ブロックライブラリ（以下機能ブロックライブラリという。）１０１と、機能ブロックライブラリ読込み部１０２と、電源・クロック（ＣＬＫ）配線部１０３と、機能ブロック配置部１０４と、冗長電源配線削除部１０５と、配線部１０６と、配線確認部１０７と、フロアプラン変更部１０８と、レイアウト情報出力部１０９と、機能削減又はチップサイズ変更部１１０と、制御メモリ１１２とを備える。
【０００４】
機能ブロックライブラリ１０１には、予めレイアウト設計に必要な情報が格納されており、機能ブロックライブラリ読込み部１０２は、機能ブロックライブラリ１０１から必要なレイアウトデータを読込んで、電源・クロック配線部１０３に渡す。電源・クロック配線部１０３は、機能ブロックライブラリ読込み部１０２が読込んだレイアウトデータを基に電源配線とクロック配線とを行い、電源配線及びクロック配線の情報を付加したレイアウトデータを機能ブロック配置部１０４に渡す。機能ブロック配置部１０４は、電源・クロック配線部１０３で電源配線とクロック配線とが行われた後に機能ブロックを配置し、機能ブロックの配置情報を付加したレイアウトデータを冗長電源配線削除部１０５に渡す。
【０００５】
冗長電源配線削除部１０５は、機能ブロック配置部１０４で機能ブロックが配置された後に冗長な電源配線を削除し、冗長な電源配線の削除情報を付加したレイアウトデータを配線部１０６に渡す。配線部１０６は、冗長電源配線削除部１０５で冗長な電源配線が削除された後に機能ブロックへの配線を行い、機能ブロックへの配線情報を付加したレイアウトデータを配線確認部１０７に渡す。
【０００６】
配線確認部１０７は、配線部１０６による配線が終了すると未配線の有無を判定し、その判定結果に応じて上記の処理で作成されたレイアウトデータをフロアプラン変更部１０８とレイアウト情報出力部１０９と機能削減又はチップサイズ変更部１１０とのうちのいずれかに渡す。つまり、配線確認部１０７は未配線がありかつ集積可能と判定するとレイアウトデータをフロアプラン変更部１０８に渡し、未配線がない判定されるとレイアウトデータをレイアウト情報出力部１０９に渡し、未配線がありかつ集積不可能と判定するとレイアウトデータを機能削減又はチップサイズ変更部１１０に渡す。
【０００７】
フロアプラン変更部１０８は、配線確認部１０７から渡されたレイアウトデータに対してフロアプランを変更し、変更後のレイアウトデータを機能ブロックライブラリ読込み部２に戻す。レイアウト情報出力部１０９は、配線確認部１０７から渡されたレイアウトデータを出力する。機能削減またはチップサイズ変更部１１０は配線確認部１０７から渡されたレイアウトデータに対して機能を削減するか、又はチップサイズを変更し、変更後のレイアウトデータを機能ブロックライブラリ読込み部１０２に戻す。
【０００８】
図１４は、従来技術の電源削除処理動作を示すフローチャートである。図１４に示すように、１対の２層縦方向電源／グランド配線を挟んだ領域に機能ブロックが配置されていない場合（ステップＳ１１）、領域内部の２層縦方向電源／グランド配線を削除する（ステップＳ１２）。冗長電源配線削除部１０５は、１層横方向電源又はグランド配線の上下１ロウの領域に機能ブロックが配置されていない場合（ステップＳ１３）、領域内部の１層横方向電源又はグランド配線を削除する（ステップＳ１４）。冗長電源配線削除部１０５は、１対の２層縦方向電源／グランド配線と、１層横方向電源又はグランド配線とを挟んだ領域に機能ブロックが配置されていない場合（ステップＳ１５）、領域内部の１対の２層縦方向電源／グランド配線と、１層横方向電源又はグランド配線と、１対の２層縦方向電源／グランド配線と１層横方向電源又はグランド配線とが交差している電源又はグランドビア（１ＴＨ）の削除を実行する（ステップＳ１６）。
【０００９】
また、同様の問題を解決する公知技術として、特許文献２に記載の多層配線構造の半導体装置がある。この特許文献２に記載の技術においては、迂回配線が生じた近傍のスタックビアを縦一列又は横一列削除した領域分の信号のチャネル配線領域を確保することで迂回配線率の減少と高集積化を図っている。
【特許文献１】特許３２２５９２９号公報
【特許文献２】特許２００２−１８４９５０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上述の従来の方法においては、電源配線のメッシュ構造はＸ軸配線とＹ軸配線の交差部分をスタックビアで繋ぐ構成となっている。よって、チップ全体にスタックビアが多数存在する。そこで、一部のスタックビアの配置位置を、配線配置領域とするためにスタックビアを削除して配線領域を確保することで、集積度向上及び迂回配線率の減少を図ることができる。しかしながら、単純にスタックビアを削除すると、スタックビアを過剰に削除しすぎて、配線抵抗が上昇してしまう。
【課題を解決するための手段】
【００１１】
本発明にかかる半導体集積回路のレイアウト設計装置は、電源配線及びグランド配線からなる格子状電源配線を有する半導体集積回路のレイアウト設計装置であって、電源配線及び配置配線する自動配置配線部と、前記自動配置配線部が実行した配置配線のエラーを検出するデザインルールチェック部と、前記デザインルールチェック部により配置配線のエラーを検出した場合に、そのエラー座標に基づき削除範囲を指定し、当該削除範囲のスタックビアを取り除くための処理を行なうスタックビア削除部とを有するものである。
【００１２】
本発明においては、デザインルールチェック部により配置配線エラーを検出した座標に基づき、その周囲のスタックビアを削除することで、配置配線エラーを引き起こす不要なスタックビアを削除することができる。
【発明の効果】
【００１３】
本発明によれば、配置配線エラーを引き起こす不要なスタックビアを削除することができる半導体集積回路のレイアウト設計装置及びレイアウト設計方法を提供することができる。
【発明を実施するための最良の形態】
【００１４】
実施の形態１．
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。図１は、本発明の実施の形態１にかかる格子状電源配線を有する半導体集積回路のレイアウト設計装置を示すブロック図である。図１に示すように、本実施の形態にかかるレイアウト設計装置１０は、見積もり＆選択部１１、電源データベース１２、フロアプラン１３、自動配置配線ツール１４、デザインルールチェック部１５、スタックビア削除部１６、及びスタックビア追加部１７を有する。
【００１５】
見積もり＆選択部１１は、チップの消費電力を見積もり、その結果に基づき電源データベース１２を参照して電源タイプを選択する。フロアプラン１３は、チップサイズ決定の他、ピンアサインやマクロを搭載する場合にはマクロの配置位置や必要に応じてグルーピングなどの処理を行なう。なお、チップサイズの決定以外の処理は、通常のフロアプランで行なわれる処理である。自動配置配線ツール１４は、チップの形状（フロアプラン情報）に対し、電源配線、配置処理及び配線処理を行なう。電源配線は、一般的には、電源配線スクリプトにより行なうことができる。配置配線処理は、ファンクションブロック（ＦＢ）をその形状等に応じて配置し、当該ＦＢに配線する処理を行う。
【００１６】
ここで、後述するように、本実施の形態においては、格子状電源配線を配置するが、例えば例えば縦方向に配置した第１層（Ｍ１）の電源配線と、横方向に配置した第４層（Ｍ４）の電源配線とを、スタックビアにより適当な間隔で接続する。ここで、本明細書において、スタックビアとはビアの上にビアを重ねたものであって、ｎ層目のＸ方向配線と（ｎ＋ｍ）（ｍ≧２）層目のＹ方向配線とを接続する。この場合、これらのスタックビアが配置配線を悪化させる場合がある。すなわち、電源配線のメッシュ構造によるスタックビアが原因で部分的に迂回配線が発生し、これが配線ネックとなり、信号配線遅延時間が増加して高速化の妨げとなる場合がある。そこで、本実施の形態においては、スタックビア削除部１６を設け、配置配線エラーを引き起こすスタックビアを削除することで配置配線エラーを解消する。
【００１７】
デザインルールチェック部１５は、配置に関し、未配置セルとセルとの重なり等をチェックする。さらに配線に関し、配線間隔、信号配線のショート、及び未配線等をチェックする。スタックビア削除部１６は、デザインルールチェック部１５により配置配線のエラーを検出した場合に、そのエラー座標に基づきスタックビア削除範囲を指定し、当該スタックビア削除範囲のスタックビアを取り除くための処理を行なう。具体的には、デザインルールチェック部１５のチェックでエラーが検出されたエラー座標（配線ＮＧ箇所）を抽出し、スタックビア削除範囲を設定する。そして、スタックビア削除範囲の座標を元に、自動配置配線ツール１４に入力するビア削除スクリプトを作成する。ビア削除スクリプトを上記自動配置配線ツール１４が実行することでスタックビアが削除される。少なくとも３層構造のメタルを接続するスタックビアを削除することにより、例えば２層目等の中間層のメタルを配置配線に使用することができる。
【００１８】
スタックビア追加部１７は、配置配線のエラーがなくなった場合に、スタックビアを追加可能か判定し、追加可能であればスタックビアを追加するための処理を行なう。上述したように、電源メッシュ構造にて元々存在していたスタックビアを配線性向上のためにスタックビア削除部１６が削除するが、デザインルールチェック部１５によるチェックがＯＫになった場合、このスタックビア削除範囲において、配線で未使用となった箇所が存在した場合には再びスタックビアを追加する。この処理により、過剰にスタックビアを削除した箇所に再度スタックビアを配置し、電源配線抵抗を低減することができる。
【００１９】
次に、本実施の形態にかかる半導体集積回路のレイアウト設計方法について説明する。図２は、当該半導体集積回路のレイアウト設計方法を示すフローチャートである。図２に示すように、先ず、チップ消費電力を見積もる（ステップＳ１）。チップ消費電力を見積もった実行結果として消費電力見積もり結果が得られる。この消費電力見積もり結果に基づき、電源データベース１２から電源タイプを選択する（ステップＳ２）。次に、フロアプラン１３により、チップサイズを決定するほか、ピンアサインやマクロを搭載する場合にはマクロの配置位置や必要に応じてグルーピングなどの処理を行なう（ステップＳ３）。なお、チップサイズの決定以外の処理は、通常のフロアプランで行なわれる処理である。
【００２０】
次に、電源配線処理をする（ステップＳ５）。電源配線処理では、フロアプランステップＳ４にて生成したフロアプラン情報データのうち、チップ形状のデータを使用して、電源配線処理を行なう。この電源配線処理は、例えば、電源配線スクリプトを生成し、これを自動配置配線ツール１４に実行させることで行なうことができる。図３及び図４は、電源配線を示す図である。図３及び図４に示すように、本実施の形態にかかる電源配線は、ＶＤＤ配線及びＧＮＤ配線が交互に配置され、かつ格子状に配置されている。ここで、各電源配線同士を接続するため、スタックビア５７、５７ａ、５７ｂを設ける。
【００２１】
電源配線を配置したら、機能ブロックに対し、自動配置配線ツール１４により、配置処理及び配線処理を行なう（ステップＳ５）。その後、配置配線に関するデザインルールチェックを行いエラーがあるか否か判定する（ステップＳ６）。具体的には、配置に関しては、未配置配線セル及びセルの重なり等をチェックする。また、配線に関しては、配線間隔、信号配線のショート、及び未配線等をチェックする。配置配線にエラーがある場合は、スタックビア削除工程に進む（ステップＳ１０）。
【００２２】
スタックビア削除工程Ｓ２０では、先ず、配線ＮＧ箇所の抽出を行なう（ステップＳ２１）。このステップＳ２１では、配置配線のエラー検出ステップＳ６にて、配線エラーが検出された座標を抽出する。また、配線エラーのみならず、配線混雑箇所に関してもその座標を抽出する以下、これらの座標をエラー座標５１（図３及び図４参照）という。なお、エラー座標５１は、デザインルールチェック部１５がデザインルールチェックを実施することで抽出することができる。そして、抽出したエラー座標５１に基づき、スタックビア削除範囲を算出する（ステップＳ２２）。
【００２３】
スタックビア削除範囲の算出では、先ず、エラー座標５１を中心に、ｘ方向５３及びｙ方向５４が所定の範囲×範囲係数"ｎ"（５２）のスタックビア削除範囲を設定する。範囲係数ｎは、例えば１、２、３・・・のような整数とすることができ、後述するように順次更新される値である。先ず、範囲係数を"１"としてスタックビア削除範囲５５を設定する。当該スタックビア削除範囲５５内に、スタックビア５７が存在する場合、次のステップＳ２３に進む。
【００２４】
図３及び図４に示す例においては、スタックビア削除範囲５５にスタックビア５７ａがそれぞれ１つ及び４つ存在する。このようにスタックビア削除範囲５５にスタックビアが含まれている場合は、次のステップに進む。ステップＳ２３では、スタックビア削除範囲５５がチップサイズより小さいか否かを判定する。チップサイズよりスタックビア削除範囲５５が大きい場合は、ステップＳ３に戻り、フロアプラン処理から再度実行する。
【００２５】
一方、スタックビア削除範囲５５がチップサイズより小さい場合は、当該スタックビア削除範囲５５内のスタックビア５７ａが削除可能である。この場合は、そのスタックビア削除範囲５５の座標を元に、自動配置配線ツール１４に入力するビア削除スクリプトを生成する（ステップＳ２４）。そして、このビア削除スクリプトを自動配置配線ツール１４にて実行することで、スタックビア削除範囲５５内のスタックビア５７ａを全て削除する（ステップＳ２５）。スタックビアを削除したら、ステップＳ５に戻り、配置配線処理（ステップＳ５）から再度実行する。すなわち、例えば図３に示す例においては、スタックビア５７ａを削除した座標位置は配置配線に使用することができる。この領域を使用することで配置配線のエラーが解消しうる。
【００２６】
そして、ステップＳ６で再度配置配線のエラーが抽出されたら、再びスタックビア削除工程Ｓ２０を実施する。ここで、先ほどの同一座標がエラー座標５１として抽出された場合、図３に示すように、スタックビア削除範囲５５には、既にスタックビア５７ａを削除したためスタックビアが存在しない。その場合は、スタックビア削除範囲を算出するための範囲係数５２を大きな値に更新し、スタックビア削除範囲５６とする。スタックビア削除範囲５６には、削除することが可能なスタックビア５７ｂが存在するので先ほどと同様、ステップＳ２３からの処理を実行するのである。なお、本実施の形態においては、範囲係数ｎを１、２、３・・のように整数としているが、１、１．５、２・・・のように整数以外でもよい。
【００２７】
こうして設定したスタックビア削除範囲内のスタックビア５７を削除することで上記配置配線のエラーが解消された場合は、ステップＳ７に進む。ステップＳ７では、スタックビアが追加可能かを判断する（ステップＳ７）。上述のスタックビア削除工程Ｓ２０においては、配線性向上のためにスタックビアを削除するが、その後、スタックビア削除範囲内において、削除したスタックビア（例えばスタックビア５７ａ、５７ｂ）が存在していた領域のうち、配置配線（ステップＳ５）で未使用となった箇所が存在する場合がある。すなわち、図３に示す例では、スタックビア削除範囲５５、５６にそれぞれスタックビア５７ａ、５７ｂは１つしか存在しないが、範囲係数の設定の仕方等により、スタックビア削除範囲内に複数のスタックビアが存在する場合があり得る。その場合、全スタックビア５７ａ、５７ｂの位置を配置配線で使用するとは限らない。すなわち、削除したスタックビア５７ａ、５７ｂの箇所のうち、配置配線で未使用である箇所には、スタックビアを再度追加可能と判断し、過剰にスタックビアを削除した部分を復元すべく、スタックビア削除箇所にスタックビアを追加する（ステップＳ８）。ステップＳ７でスタックビア追加可能でない場合は、処理を終了する。
【００２８】
スタックビア削除範囲算出方法について、更に詳細に説明する。図３及び図４に示すように、配線エラー座標５１に対して、どれだけの範囲のスタックビアを削除するかを決めるための係数は範囲係数５２により与えられる。範囲係数５２の値は、図３に示すように、レイアウト設計の設計基準により決定し、これにより範囲係数を決定する。または、設計基準により決定しない場合は、図４に示すように、スタックビア削除範囲を電源ピッチ単位又はビアピッチ単位で更新していくこともできる。
【００２９】
スタックビア削除部１６は、配線エラー座標５１をエラー座標値とし、このエラー座標値を中心に所定の範囲のＸ方向５３、Ｙ方向５４の値に、範囲係数５２を掛け合わせた範囲としたスタックビア削除範囲５５を設定する。ここで、スタックビア削除範囲５５内にスタックビア５７が含まれない場合は、範囲係数５２を更新し、Ｘ方向５３、Ｙ方向５４いずれも±の両方向にスタックビア削除範囲を拡大したスタックビア削除範囲５６とする。範囲係数５２を更新し、スタックビア削除範囲を更新する処理は、スタックビア削除範囲内にスタックビア５７が存在するようになるまで繰り返し実行する。すなわち、スタックビア削除範囲５６にスタックビアが存在しない場合は、範囲係数を更新、又は電源ピッチ分若しくはビアピッチ分拡大したスタックビア削除範囲５７を設定し、当該範囲内にスタックビアが含まれるか否かを判定する。
【００３０】
こうしてスタックビア削除範囲内にスタックビア５７が含まれるようになったら、そのスタックビア削除範囲内のスタックビア５７を削除し、配置配線エラーが解消されるか否かを判断する。解消されない場合は、さらに他のスタックビアが含まれる範囲になるまでスタックビア削除範囲の更新を行なう。
【００３１】
本実施の形態においては、配置配線で配線ＮＧとなった場合に配線ＮＧ箇所を基点にスタックビア削除範囲を算出し、スタックビア削除範囲内のスタックビアを削除する。このように、スタックビア削除範囲を設定し、配置配線のエラーが解消されるまで、繰り返しスタックビア削除範囲を更新することでスタックビアを削除する。そして、この後に再度配置配線を実行することで、スタックビア周りの迂回配線率を低減し、信号配線遅延時間の短縮による高速化を図る。すなわち、このようにスタックビア削除範囲を設定して順次スタックビアを削除することにより、配置配線エラーを引き起こしているスタックビアのみを削除することができる。さらには、スタックビアを削除した箇所にスタックビアを追加可能か判断してスタックビアを追加することで、配置配線で未使用となったスタックビア配置位置に削除したスタックビアを再度追加し、配線抵抗の低減化を図ることができる。
【００３２】
実施の形態２．
次に、本発明の実施の形態２について説明する。図５は、本実施の形態にかかる半導体集積回路のレイアウト設計装置を示す図である。図５に示すように、本実施の形態にかかるレイアウト設計装置１０ｂは、図１に示す実施の形態１にかかるレイアウト設計装置１０の構成に更に電源解析ツール１８及び電源強化配線追加部１９を有する。電源解析ツール１８は、電源配線で発生するノイズの量に応じたエラーである電源解析エラーを検出する。具体的には、電源解析ルーツ１８は、電源解析エラーとして、エレクトロマイグレーション（Electro migration：ＥＭ、電流が過度に流れることで配線に使う金属の原子配列が乱れ、断線する現象）が生じるか否か及び／又は電源配線の電圧降下（ＩＲ−ドロップ）が基準値以内か否かを検出する。すなわち、配置配線後の設計データと電源情報（電源供給点の指定）を元に電源の検証を行なう。そして、ＥＭ及びＩＲドロップの値が基準内にない場合は、そのエラー座標を抽出する。
【００３３】
電源強化配線追加部１９は、電源解析ツール１８がＥＭやＩＲドロップの値が基準値を超えたことを検出した場合に、そのエラー座標に基づき電源強化配線追加範囲を指定し、当該電源強化配線追加範囲内に電源強化配線を追加する。具体的には、先ず、電源配線を追加することができる範囲（座標）を算出する。そして、この座標を元に、電源配線スクリプトを作成する。この電源配線スクリプトを上記自動配置配線ツール１４が実行することで電源配線が追加される。
【００３４】
次に、本実施の形態にかかる半導体集積回路のレイアウト方法について説明する。図６及び図７は、本実施の形態にかかる半導体集積回路のレイアウト方法を示すフローチャートである。図６に示すように、本実施の形態にかかる半導体集積回路のレイアウト方法は、スタックビア追加工程Ｓ８の後工程として、ＥＭ、ＩＲドロップの検証工程Ｓ９、検証結果がＯＫか否かの判定工程Ｓ２０、及び検証結果がＯＫでない場合は、電源強化配線追加工程Ｓ２０を更に有する。なお、ステップＳ１〜Ｓ８及びステップＳ１０は、実施の形態１と同様であり、その説明は省略する。
【００３５】
ステップＳ９では、ＥＭ・ＩＲドロップを検証する。ＥＭ・ＩＲドロップの検証では、配置配線後の設計データと電源情報（電源供給点の指定）を基に、電源解析ツール１８にて検証を行なう。次に、ステップＳ１０では、ＥＭ・ＩＲドロップの値が基準内にあるか否かを判定する。そして、定められた基準内にないときは、エラーと判定する。エラー判定の場合は、電源強化配線追加工程Ｓ３０に進む。
【００３６】
電源強化配線追加工程Ｓ３０では、先ず、ＥＭ、ＩＲ−ＤｒｏｐＮＧ箇所を抽出する（ステップＳ３１）。ＮＧ箇所の抽出は、電源解析ツール１８にて配置配線ツールでの配線エラーと同様に、エラー座標を抽出する。次に、当該エラー座標に基づき、電源強化配線追加範囲を算出する（ステップＳ３２）。電源強化配線追加範囲の算出は、上述のスタックビア削除範囲の算出と同様の方法で行なう。すなわち、エラー座標を中心に、所定の範囲を有するＸ方向及びＹ方向の範囲を設定することで、電源強化配線追加範囲を設定する。そして、電源配線を追加できるか否かを判定する。そして、電源配線を追加できる範囲になるまで、範囲係数を大きくしていき、電源強化配線追加範囲を更新する。電源強化配線追加範囲が電源配線を追加できる範囲になったら、当該電源強化配線追加範囲がチップサイズより小さいか否かを判定する（ステップＳ３３）。
【００３７】
電源強化配線追加範囲がチップ範囲より大きい場合は、ステップＳ３のフロアプラン処理に戻る。電源強化配線追加範囲がチップサイズより小さい場合は、電源強化配線追加部１９により電源強化配線追加スクリプトを作成し（ステップＳ３４）、当該電源強化配線追加スクリプトを自動配置配線ツール１４により実行することで、電源強化配線を追加する（ステップＳ３５）。こうして電源強化配線を追加したら、再びステップＳ９のＥＭ・ＩＲドロップの検証を行なう。再度ＥＭ、ＩＲ−Ｄｒｏｐ検証を実行し直し、ステップＳ１０のＥＭ、ＩＲ−Ｄｒｏｐ検証の判定がＯＫとなってレイアウト設計を終了する。
【００３８】
次に、電源強化配線追加範囲の算出方法について図８を参照して説明する。図８に示すように、電源強化配線を配置できる範囲を決めるための係数は範囲係数（６２）で与えられる。範囲係数６２はレイアウト設計の設計基準により決定することができる。ＥＭ、ＩＲドロップエラー座標６１に対して、Ｘ方向６３、Ｙ方向６４の所定の範囲に対し、範囲係数ｍを掛け合わせて電源強化配線追加範囲とする。なお、範囲係数ｍの掛け合わせ方はどのようであってもよい。
【００３９】
そして、ＥＭ、ＩＲドロップエラー座標６１を基点としてＸ方向６３、Ｙ６４方向に範囲係数５２に従って±の方向に電源強化配線範囲６５を、電源強化配線範囲６６へ拡大していく。電源強化配線範囲の拡大は、電源強化配線６７を配線できる範囲まで繰り返し実行する。
【００４０】
本実施の形態においては、ＥＭ、ＩＲ−Ｄｒｏｐ検証でＮＧとなった場合に電源強化配線追加範囲内の空き領域に電源強化配線（及びスタックビア）を追加することでフロアプラン変更や論理変更、論理機能削減、及び配置変換による繰返し回数の削減や電源配線のＥＭ、ＩＲ−Ｄｒｏｐによる不具合の防止によって、大幅な設計工数の削減と機能低下の防止を図ることができる。
【００４１】
すなわち、単純にスタックビアを削除して、配線領域を確保し、集積度向上及び迂回配線率減少を図ると、プロセス微細化に伴い電源配線のＥＭ、ＩＲ−Ｄｒｏｐによる不具合が顕著化する。通常、論理機能をＬＳＩチップ上のどの領域（場所）に配置するかを決めるため、各論理機能を実現するブロックの寸法を求め、チップ上に無駄な領域（デッド・スペース）が残らないようにブロックの配置（フロアプラン）を行なうが、前記不具合によりフロアプランまで戻る手戻りが発生するという問題点がある。これに対し、本実施の形態においては、ＥＭ、ＩＲ−Ｄｒｏｐを検証することで、ＥＭ、ＩＲ−Ｄｒｏｐによる不具合を防止することができる。
【００４２】
実施の形態３．
次に、本発明の実施の形態３について説明する。本実施の形態においては、電源追加配線強化部１９は、電源解析ツール１８の解析結果により、ＥＭ又はＩＲドロップの値が基準値を上回っている箇所（エラー）が生じている座標が、スタックビア削除範囲内か否かを判定する。そして、当該エラーが生じている座標がスタックビア削除範囲内であれば、フロアプラン部１３はフロアプランをやり直す。なお、レイアウト設計装置の構成は、実施の形態２と同様である。
【００４３】
図９及び図１０は、本実施の形態にかかる半導体集積化意図のレイアウト設計方法のうち、それぞれスタックビア削除工程及び電源強化配線追加工程を示すフローチャートである。図９及び図１０に示すように、本実施の形態においては、図６及び図７に示す実施の形態２にかかる半導体集積回路のレイアウト方法に対し、スタックビア削除工程Ｓ４０においては、スタックビア削除範囲座標算出工程Ｓ４１を追加する。また、電源強化配線追加工程Ｓ５０においては、ＥＭ・ＩＲドロップＮＧ箇所がスタックビア削除範囲内か否かを判定する工程Ｓ５１を有する。その他の工程は、実施の形態２と同様である。
【００４４】
すなわち、スタックビア削除工程Ｓ４０において、ステップＳ２５のスタックビア削除工程の後に、スタックビア削除範囲座標を算出する（ステップＳ４１）。スタックビア削除範囲座標とは、ステップＳ２２でスタックビア削除範囲を算出したもののうち、ステップＳ２３でチップサイズより小さいと判定されたスタックビア削除範囲を示す座標である。
【００４５】
次に、電源強化配線追加工程Ｓ５０において、ステップＳ３３の電源強化配線追加範囲がチップサイズより小さい場合、ステップＳ３１で抽出したＥＭ・ＩＲドロップＮＧ座標がステップＳ４１で算出したスタックビア削除範囲座標内であるか否かを判断する（ステップＳ５１）。スタックビア削除範囲内は、基本的に配線性向上のためにスタックビアを削除しているため、すなわち、配置配線でのエラー座標を含む配置配線性がよくない箇所である。よって、当該スタックビア削除範囲内での電源強化配線の追加は困難である。このため、スタックビア削除範囲内に電源強化配線追加範囲が含まれる場合は、エラーとし、ステップＳ３のフロアプランから処理をやり直す。
【００４６】
本実施の形態においては、スタックビア削除工程Ｓ４０で算出したスタックビアの削除範囲内に、ＥＭ・ＩＲドロップＮＧ座標が含まれるか否かを検証することでフロアプラン変更や配置変換による繰返し回数の削減や電源配線のＥＭ、ＩＲ−Ｄｒｏｐによる不具合の防止によって、大幅な設計工数の削減と機能低下の防止を図ることができる。
【００４７】
実施の形態４．
次に、本発明の実施の形態４について説明する。本実施の形態においては、電源追加配線強化部１９は、電源解析ツール１８が解析した結果、ＥＭ又はＩＲドロップエラーが生じている座標を含む所定範囲に含まれるフリップフロップ数が基準値以内か否かを判定する。そして、ＥＭ又はＩＲドロップエラーが生じている座標を含む所定範囲に含まれるフリップフロップ数が全て基準値以上である場合に、見積もり＆選択部１１により、当該半導体集積回路の消費電力の見積もりをやり直す。なお、レイアウト設計装置の構成は、実施の形態２と同様である。
【００４８】
図１１及び図１２は、本実施の形態にかかる半導体集積化意図のレイアウト設計方法のうち、それぞれスタックビア削除工程及び電源強化配線追加工程を示すフローチャートである。図１１及び図１２に示すように、本実施の形態においては、図６及び図７に示す実施の形態２にかかる半導体集積回路のレイアウト方法に対し、スタックビア削除工程Ｓ６０においては、削除範囲内のフリップフロップ（Ｆ／Ｆ）数算出工程Ｓ６１を追加する。また、電源強化配線追加工程Ｓ７０においては、ＥＭ・ＩＲ−ＤｒｏｐＮＧ箇所のＦ／Ｆ数が基準範囲内か否かを判定する工程Ｓ７１を設ける。その他の工程は、実施の形態２と同様である。
【００４９】
ステップＳ６１におけるスタックビア削除範囲内のＦ／Ｆ数の算出は、スタックビア削除範囲とＦ／Ｆの配置座標の比較により求めることができる。スタックビア削除範囲内に含まれるＦ／Ｆ数をカウントする。本実施の形態においては、スタックビア削除範囲内に含まれるＦ／Ｆ数をカウントすることで、チップの単位領域内のＦ／Ｆ数を推定するものとする。
【００５０】
電源強化配線追加工程Ｓ７０では、ステップＳ３１で抽出したエラー座標を所定領域内のＦ／Ｆ数が、基準範囲内か否かを判定する。この判定は、エラー座標が複数ある場合は、全てのエラー座標を含む各所定領域内のＦ／Ｆ数が基準範囲内か否かを判定する。この場合、プロセス等を考慮して、単位面積値の許容Ｆ／Ｆ数を検討し、例えば１００μｍ２内の許容Ｆ／Ｆ数を例えば１００個が基準とすると、上述のステップＳ６１でカウントしたＦ／Ｆ数がこの基準内か否かを判定する。
【００５１】
なお、本実施の形態においては、ステップＳ６１にてカウントしたＦ／Ｆ数に基づき判定するものとするが、ステップＳ３１で抽出したエラー座標を含む所定領域の座標を抽出し、この座標とＦ／Ｆの配置座標の比較から、当該所定領域内のＦ／Ｆ数を算出し、これが基準値内か否かを判定してもよいことは勿論である。
【００５２】
ここで、全てのエラー座標を含む所定領域内のＦ／Ｆ数がいずれも基準値を満たさない場合には、ステップＳ１のパワー見積もり工程に戻る。この工程においては、チップ消費電力を見積もるが、ステップＳ７１でＮｏであった場合は、この工程においてチップに含まれるＦ／Ｆ数等を見直す。
【００５３】
本実施の形態においては、電源強化配線追加工程Ｓ７０のＥＭ、ＩＲ−ＤｒｏｐＮＧ箇所を含む所定領域内のＦ／Ｆ数を基準値と比較することで、電源強化配線追加工程Ｓ７０に含まれる電源強化範囲算出工程Ｓ３２、電源追加範囲がチップのサイズより小さいか否かの判定工程Ｓ３３、電源強化配線追加スクリプト作成工程Ｓ３４、及び電源強化配線追加工程Ｓ３５を省略することができ、設計工数の削減ができる。
【００５４】
以上説明した実施の形態においては、以下の効果を奏する。すなわち、
１．スタックビア周りの迂回配線率が低減するため、信号配線遅延時間の短縮による高速化を図ることができる。さらに、未配線領域の収容に伴うフロアプラン変更や論理変更、及び論理機能削減による繰返し回数の削減や防止によって、大幅な設計工数の削減と機能低下の防止を図ることができる。
２．スタックビアを取り除いた箇所の座標とその箇所の追加スタックビア数情報で配置配線後のレイアウト設計データからＥＭ、ＩＲ−Ｄｒｏｐを予測できる。
３．電源配線のＥＭ、ＩＲ−Ｄｒｏｐによる不具合を改善するため、電源強化配線追加範囲内の空き領域にて電源強化配線（スタックビア）を追加することでフロアプランまで戻る繰返し回数の削減でレイアウト設計工数の削減ができる。
【００５５】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【図面の簡単な説明】
【００５６】
【図１】本発明の実施の形態１にかかる格子状電源配線を有する半導体集積回路のレイアウト設計装置を示すブロック図である。
【図２】本発明の実施の形態１にかかる半導体集積回路のレイアウト設計方法を示すフローチャートである。
【図３】本発明の実施の形態１におけるスタックビア削除工程を説明する図である。
【図４】同じく、本発明の実施の形態１におけるスタックビア削除工程を説明する図である。
【図５】本発明の実施の形態２にかかる半導体集積回路のレイアウト設計装置を示す図である。
【図６】本発明の実施の形態２にかかる半導体集積化意図のレイアウト設計方法のうち、スタックビア削除工程を示すフローチャートである。
【図７】本発明の実施の形態２にかかる半導体集積化意図のレイアウト設計方法のうち、電源強化配線追加工程を示すフローチャートである。
【図８】本発明の実施の形態２における電源強化配線追加範囲の算出方法を説明する図である。
【図９】本発明の実施の形態３にかかる半導体集積化意図のレイアウト設計方法のうち、スタックビア削除工程を示すフローチャートである。
【図１０】本発明の実施の形態３にかかる半導体集積化意図のレイアウト設計方法のうち、電源強化配線追加工程を示すフローチャートである。
【図１１】本発明の実施の形態４にかかる半導体集積化意図のレイアウト設計方法のうち、スタックビア削除工程を示すフローチャートである。
【図１２】本発明の実施の形態４にかかる半導体集積化意図のレイアウト設計方法のうち、電源強化配線追加工程を示すフローチャートである。
【図１３】従来のＬＳＩレイアウト設計装置の構成を示すブロック図である。
【図１４】従来の電源削除処理動作を示すフローチャートである。
【符号の説明】
【００５７】
１１  見積もり＆選択部
１２  電源データベース
１３  フロアプラン
１４  自動配置配線ツール
１５  デザインルールチェック部
１５  自動配線ツール
１６  スタックビア削除部
１７  スタックビア追加部
１８  電源解析ツール
１９  電源強化配線追加部
５１、６１  エラー座標
５２、６２  範囲係数
５３、６３  Ｘ方向
５４、６４  Ｙ方向
５５、５６  スタックビア削除範囲
５７  スタックビア
６５、６６  電源強化配線範囲
６７  電源強化配線
【図１】
2008310527.tif 000003
【図２】
2008310527.tif 000004
【図３】
2008310527.tif 000005
【図４】
2008310527.tif 000006
【図５】
2008310527.tif 000007
【図６】
2008310527.tif 000008
【図７】
2008310527.tif 000009
【図８】
2008310527.tif 000010
【図９】
2008310527.tif 000011
【図１０】
2008310527.tif 000012
【図１１】
2008310527.tif 000013
【図１２】
2008310527.tif 000014
【図１３】
2008310527.tif 000015
【図１４】
2008310527.tif 000016