(57)【要約】【課題】ＩＲドロップによる動作不良を改善するための不要な電源配線やチップ面積の増大を抑え、かつ、タイミング制約が厳しい回路ブロックが適切に配置された半導体集積回路を提供する。【解決手段】半導体集積回路を以下の方法で設計する。まず、（ａ）設計対象の半導体集積回路のレイアウト領域に回路セルを配置する。次に、（ｂ）回路セルが配置されたレイアウト領域で消費される消費電力を算出する。このとき、（ｃ）レイアウト領域のＩＲドロップ検証を実行して、ＩＲドロップが発生しているＩＲドロップ発生領域を特定する。そして、（ｄ）レイアウト領域のＳＴＡ解析を実行して、クリティカルパスを特定する。そして、（ｅ）クリティカルパスに含まれない回路セルを、移動候補回路セルとして特定する。そして、（ｆ）ＩＲドロップ発生領域に配置されている移動候補回路セルを、ＩＲドロップ発生領域の外に移動する。【選択図】図９
2011107950.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）設計対象の半導体集積回路のレイアウト領域に回路セルを配置するステップと、
（ｂ）前記回路セルが配置された前記レイアウト領域で消費される消費電力を算出するステップと、
（ｃ）前記レイアウト領域のＩＲドロップ検証を実行して、ＩＲドロップが発生しているＩＲドロップ発生領域を特定するステップと、
（ｄ）前記レイアウト領域のＳＴＡ解析を実行して、クリティカルパスを特定するステップと、
（ｅ）前記クリティカルパスに含まれない前記回路セルを、移動候補回路セルとして特定するステップと
（ｆ）前記ＩＲドロップ発生領域に配置されている前記移動候補回路セルを、前記ＩＲドロップ発生領域の外に移動するステップと
を具備する
半導体集積回路の設計方法。
【請求項２】
請求項１に記載の半導体集積回路の設計方法において、
前記（ｃ）ステップは、
前記ＩＲドロップ発生領域に配置されている前記回路セルのうち、電力消費量が大きい前記回路セルを、大消費電力セルとして特定するステップ
を含み、
前記（ｆ）ステップは、
前記移動候補回路セルとして特定され、かつ、前記ＩＲドロップ発生領域に配置されている前記大消費電力セルを移動セルとして特定するステップと、
前記クリティカルパスに含まれる前記回路セルの配置を維持しつつ、前記移動セルを前記ＩＲドロップ発生領域の外に移動するステップと
を含む
半導体集積回路の設計方法。
【請求項３】
請求項２に記載の半導体集積回路の設計方法において、
請求項（ｆ）ステップは、
前記移動セルを、電源供給源の近傍に移動させるステップを含む
半導体集積回路の設計方法。
【請求項４】
請求項３に記載の半導体集積回路の設計方法において、
請求項（ｆ）ステップは、
前記移動セルを含むパスのタイミングが許容できる範囲で、前記移動セルを移動させるステップを含む
半導体集積回路の設計方法。
【請求項５】
請求項１から４のいずれか１項に記載の半導体集積回路の設計方法において、
前記（ａ）ステップは、
電源基幹配線の配線レイアウトを決定した後、前記回路セルを前記レイアウト領域に配置するステップを含む
半導体集積回路の設計方法。
【請求項６】
請求項１から５のいずれか１項に記載の半導体集積回路の設計方法において、さらに、
（ｇ）前記移動セルの移動が完了した後、新たなＩＲドロップ検証を実行するステップと、
（ｈ）前記新たなＩＲドロップ検証を実行した実行結果に基づいて、電源基幹配線の配線レイアウトを変更するステップと
を具備する
半導体集積回路の設計方法。
【請求項７】
設計対象の半導体集積回路のレイアウト領域に配置される回路セルの基準レイアウトを決定するレイアウト生成部と、
前記回路セルが配置された前記レイアウト領域で消費される消費電力を算出し、前記消費電力に基づいて、前記レイアウト領域のＩＲドロップ検証を実行して、ＩＲドロップが発生しているＩＲドロップ発生領域を特定する前記電源降下解析部と、
前記レイアウト領域のＳＴＡ解析を実行して、前記半導体集積回路のクリティカルパスを特定するタイミング解析部と、
前記クリティカルパスに含まれない前記回路セルを、移動候補回路セルとして特定する移動候補セル解析部と
を具備し、
前記レイアウト生成部は、
前記ＩＲドロップ発生領域に配置されている前記移動候補回路セルを、前記ＩＲドロップ発生領域の外に移動して、前記基準レイアウトを変更する
半導体集積回路設計支援装置。
【請求項８】
請求項７に記載の半導体集積回路設計支援装置において、
前記電源降下解析部は、
前記ＩＲドロップ発生領域に配置されている前記回路セルのうち、電力消費量が大きい前記回路セルを、大消費電力セルとして特定し、
前記移動候補セル解析部は、
前記移動候補回路セルとして特定され、かつ、前記ＩＲドロップ発生領域に配置されている前記大消費電力セルを移動セルとして特定し、
前記レイアウト生成部は、
前記クリティカルパスに含まれる前記回路セルの配置を維持しつつ、前記移動セルを前記ＩＲドロップ発生領域の外に移動する
半導体集積回路設計支援装置。
【請求項９】
請求項８に記載の半導体集積回路設計支援装置において、
前記レイアウト生成部は、
前記移動セルを、電源供給源の近傍に移動させて前記基準レイアウトを変更する
半導体集積回路設計支援装置。
【請求項１０】
請求項９に記載の半導体集積回路設計支援装置において、
前記レイアウト生成部は、
前記移動セルを含むパスのタイミングが許容できる範囲で、前記移動セルを移動させて前記基準レイアウトを変更する
半導体集積回路設計支援装置。
【請求項１１】
請求項７から１０のいずれか１項に記載の半導体集積回路設計支援装置において、
前記レイアウト生成部は、
電源基幹配線の配線レイアウトを決定した後、前記回路セルを前記レイアウト領域に配置して、前記基準レイアウトを決定する
半導体集積回路設計支援装置。
【請求項１２】
請求項７から１１のいずれか１項に記載の半導体集積回路設計支援装置において、
前記電源降下解析部は、
前記移動セルの移動が完了した後、新たなＩＲドロップ検証を実行し、
前記レイアウト生成部は、
前記新たなＩＲドロップ検証を実行した実行結果に基づいて、電源基幹配線の配線レイアウトを変更する
半導体集積回路設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計方法、およびその半導体集積回路の設計を支援する半導体集積回路設計支援装置に関する。
【背景技術】
【０００２】
半導体集積回路のプロセスの微細化や低消費電力化に関する技術の進歩に伴って、動作電源電圧が低い半導体集積回路が普及してきている。そのような半導体集積回路において、プロセスの微細化や低消費電力化に伴う配線抵抗の増加も相まって、配線パターンによる電圧降下が問題になってきている。
【０００３】
半導体集積回路に外部から供給される電圧は、その内部集積回路の動作による電力消費や電源配線抵抗によって、内部集積回路の中心部では電圧レベルが下がってしまうので、その低下を防止するために電源を強化する必要がある。この電源の強化のために、従来のレイアウト設計では、例えば半導体チップ上にセルを自動配置したのちに、自動配線を行い、この後にＩＲドロップを測定して電源の補強を図る技術が知られている。例えば、チップ設計の際、動作周波数低下の原因となる電源網の電圧降下（ＩＲドロップ）を緩和するために、電源網の抵抗を下げる技術が知られている。また、電源網を流れる電流量を削減する技術が知られている。電源網の抵抗を下げるには、電源配線の強化を行う必要がありレイアウト領域を消費することがある。また、消費電力の削減には、限界がある。
【０００４】
また、内部集積回路内において、電源配線の本数を増やしたり、あるいは自動配置配線の終了後に電源補強をしたりすることが難しいので、初期の電源配線の本数を多めにしておくなどの技術が知られている。そのような技術では、電源配線を太くしたり、外部から電源供給する電源供給セルの数を増やしたりすることで、電源配線網上におけるＩＲドロップを抑制していた。しかし、所望の集積度や所望のチップサイズを実現するためには、電源配線を太くしたり、電源供給セルの数を増やしたりすることに限界があった。不要な電源配線を引くことなく、チップ面積の増大を抑えてＩＲドロップによる動作不良を改善するための技術が知られている（例えば、特許文献１参照。）。
【０００５】
特許文献１には、不要な電源ラインを引くことなく、チップ面積の増大を抑えてＩＲドロップによる動作不良を改善するための技術が開示されている。その特許文献１に記載の半導体集積回路は、外周に形成された外部接続用Ｉ／Ｏセルを配置するＩ／Ｏ領域と、その内部に回路ブロックを配置するコア領域から構成されている。
【０００６】
外周部のＩ／Ｏ領域には、電源を供給する電源供給セルが配置されている。コア領域には、階層回路ブロックが配置されている。電源供給セルに近い回路ブロックにはタイミング制約が最も厳しいものを配置し、中間位置の回路ブロックにはタイミング制約が中程度のものを配置し、一番遠い領域である中心部の回路ブロックには、タイミング的に余裕のあるものを配置している。
【０００７】
特許文献１に記載の技術では、半導体装置の中心部に向かって電圧ドロップが大きくなる物理現象を考慮して、設計で用いるライブラリを、予め複数の電圧値でタイミング情報を抽出している。そして、所望のタイミングで収束するように、予め回路ブロックのレイアウト設計を行っている。
【０００８】
特許文献１の半導体装置は、電源配線を太くしたり、外部から電源供給するＩ／Ｏセルの数を増やしたり、電圧値の異なる複数種類の電源ラインから内部セルへ供給したりすることがない様に設計されている。そのため、チップ面積の増加を抑制すると共に、低消費電力化を実現している。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００８−１９８７５６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献１に記載の技術では、タイミング制約が厳しい回路ブロックを、電源供給セルの近傍に配置することを予め定めている。また、その技術では、タイミング的に余裕のある回路ブロックから順に配置を決定している。
しかしながら、半導体集積回路の設計において、タイミング制約が厳しい回路ブロックは、その回路ブロックを配置する位置にも厳しい制限がある場合が多い。そのため、そのタイミング制約が厳しい回路ブロックを配置するときに、配置位置に対する制限に抵触するなどの不具合が発生し、適切な設計をすることが困難となる場合がある。
【００１１】
本発明が解決しようとする課題は、ＩＲドロップによる動作不良を改善するための不要な電源配線やチップ面積の増大を抑え、かつ、タイミング制約が厳しい回路ブロックが適切に配置された半導体集積回路を提供することにある。
【課題を解決するための手段】
【００１２】
以下に、［発明を実施するための形態］で使用される番号を用いて、［課題を解決するための手段］を説明する。これらの番号は、［特許請求の範囲］の記載と［発明を実施するための形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１３】
上記の課題を解決するために、以下のような設計方法で半導体集積回路を設計する。その方法は、
（ａ）設計対象の半導体集積回路のレイアウト領域に回路セルを配置するステップと、
（ｂ）前記回路セルが配置された前記レイアウト領域で消費される消費電力を算出するステップと、
（ｃ）前記レイアウト領域のＩＲドロップ検証を実行して、ＩＲドロップが発生しているＩＲドロップ発生領域を特定するステップと、
（ｄ）前記レイアウト領域のＳＴＡ解析を実行して、クリティカルパスを特定するステップと、
（ｅ）前記クリティカルパスに含まれない前記回路セルを、移動候補回路セルとして特定するステップと
（ｆ）前記ＩＲドロップ発生領域に配置されている前記移動候補回路セルを、前記ＩＲドロップ発生領域の外に移動するステップと
を具備することが好ましい。
【００１４】
回路内の各セル（もしくは各モジュール）毎に電力消費量を算出し、電力消費の大きなセル（モジュール）を電源供給源の近くに配置している。その際、タイミング解析を行い、クリティカルパスのセルは移動させない。換言すると、配線混雑の発生を抑制し、かつ、動作周波数の悪化を招くことなくＩＲドロップ量を改善するために、タイミングクリティカルパスに含まれず、かつ消費電力の大きいセルを、電源インピータンスの低い領域に移動させている。
【発明の効果】
【００１５】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば、電源供給源に近い箇所は、電源供給源から遠い箇所に比べて供給源からの抵抗値が低いため、電流量が大きい場合の電圧の降下量が少ないため、ＩＲドロップによる動作不良を改善するための不要な電源配線やチップ面積の増大を抑えることができる。
タイミング制約が厳しい回路ブロックの配置を適切に行いつつ、ＩＲドロップ変動量を抑制することができ、チップ面積の増加と動作周波数の低下とを抑止した半導体集積回路の設計に効果がある。
また、電源網の強化による信号配線のリソースの減少を抑制しつつ、タイミング制約が厳しい回路ブロックを適切に配置する半導体集積回路を設計することが可能となる。
【図面の簡単な説明】
【００１６】
【図１】図１は、第１実施形態の半導体集積回路設計支援装置１の構成を例示するブロック図である。
【図２】図２は、第１実施形態の半導体集積回路設計支援装置１の機能ブロックの接続関係を例示するブロック図である。
【図３】図３は、第１実施形態の半導体集積回路設計支援装置１の動作を例示するフローチャートである。
【図４】図４は、電圧降下領域３１と大消費電力セル領域３２とを概略的に例示するレイアウト図である。
【図５】図５は、クリティカルパスおよびノンクリティカルパスの構成を例示する回路図である。
【図６】図６は、タイミングレポート２４の構成を例示するテーブルである。
【図７】図７は、移動候補セルリスト２５の構成を例示するテーブルである。
【図８】図８は、移動候補パスの構成を例示する回路図である。
【図９】図９は、移動セルを特定する動作と、その移動セルの配置位置を変更する動作を概念的に例示する平面図である。
【図１０】図１０は、第２実施形態の半導体集積回路設計支援装置１の動作を例示するフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態を図面に基づいて説明する。なお、実施の形態を説明するための図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
［第１実施形態］
以下に、本願発明の半導体集積回路設計支援装置１とその半導体設計方法の第１実施形態について説明を行う。図１は、本実施形態の半導体集積回路設計支援装置１の構成を例示するブロック図である。半導体集積回路設計支援装置１は、情報処理装置２と、入力装置３と、出力装置４を備えている。
【００１８】
情報処理装置２は、コンピュータプログラムに示される手順に従って動作することによって、情報処理を高速に実行する装置である。情報処理装置２は、入力、記憶、演算、制御、および出力といった機能を備えている。入力装置３は、情報処理装置２へデータを入力するマンマシンインターフェースである。出力装置４は、情報処理装置２からのデータを出力するマンマシンインターフェースである。
【００１９】
図１に示されているように、情報処理装置２は、演算処理部５と、ＲＡＭ６と、記憶部７とを備え、それらはバス８を介してデータ通信が可能な状態で接続されている。演算処理部５は、情報処理装置２の備えられた各種装置の制御や、データの処理を行う。演算処理部５は、情報処理装置２が入力装置３などから受け取ったデータを解釈して演算し、その演算結果を出力装置４などで出力する。ＲＡＭ６は、演算処理部５が読み出したコンピュータプログラムを実行するときに使用される。ＲＡＭ６は、そのコンピュータプログラムを、演算処理部５によって実行可能な状態で保持する。また、ＲＡＭ６は、演算処理部５がデータ処理を実行する際に、処理対象のデータを記憶する。記憶部７は、本実施形態で実行される複数のコンピュータプログラムやデータなどを記憶する。
【００２０】
記憶部７は、さらに、ライブラリ格納部１１と、制御情報格納部１２と、論理合成部１３と、レイアウト生成部１４と、電源降下解析部１５と、タイミング解析部１６と、移動候補セル解析部１７と、レイアウトデータ出力部１８とを含んでいる。
【００２１】
ライブラリ格納部１１は、論理合成に用いるスタンダードセルやマクロセルのセル情報、電圧ドロップ値に応じたタイミング情報、消費電力情報などを格納している。制御情報格納部１２は、ユーザにより指定可能な配置制約情報や配線制約情報などの制御情報を格納している。
【００２２】
論理合成部１３は、ライブラリ格納部１１に格納されている情報と制御情報格納部１２に格納されている情報とに基づいて、論理合成によって、半導体集積回路のゲートレベルネットリストを生成する。レイアウト生成部１４は、そのゲートレベルネットリストに基づいて、半導体集積回路のレイアウトを決定する。
【００２３】
電源降下解析部１５は、レイアウトされた半導体集積回路が、電圧ドロップの範囲内にあるか否かを解析する。タイミング解析部１６は、レイアウトされた半導体集積回路のタイミング解析を行う。
【００２４】
移動候補セル解析部１７は、タイミング解析の結果に基づいて、レイアウトされた半導体集積回路を構成するセルのうち、配置を変更することが可能なセル（以下、移動候補セルと記載する）を特定する。レイアウトデータ出力部１８は、レイアウトされた半導体集積回路の情報を出力する。
【００２５】
図２は、本実施形態の半導体集積回路設計支援装置１の機能ブロックの接続関係を例示するブロック図である。図２に示されているように、論理合成部１３は、ライブラリ格納部１１と制御情報格納部１２とから読み出された情報の受け取りが可能なように構成されている。論理合成部１３は、その情報に基づいて論理合成を行う。レイアウト生成部１４は、論理合成部１３が実行した論理合成の結果を受け取ることが可能なように構成されている。
【００２６】
図２を参照すると、そのレイアウト生成部１４は、電源降下解析部１５とタイミング解析部１６とに対し、相互にデータの授受が可能なように構成されている。また、レイアウト生成部１４は、移動候補セル解析部１７が特定した移動候補セルに関する情報を受け取ることが可能なように構成されている。
【００２７】
レイアウトデータ出力部１８は、移動候補セル解析部１７が最終的に決定したレイアウト情報を受け取り、出力装置４などを介して出力することが可能なように構成されている。
【００２８】
以下に、本実施形態の半導体集積回路設計支援装置１の動作について説明を行う。なお、以下に述べる実施形態の動作は、本実施形態の半導体集積回路設計支援装置１が、ＥＤＡツールとしての機能を実現する場合に対応しているものとする。具体的には、情報処理装置２の演算処理部５が、記憶部７に格納された各種のコンピュータプログラムに示される手順に従って動作することによって、情報処理装置２は、半導体集積回路設計支援装置１としての機能を提供する。
図３は、本実施形態の半導体集積回路設計支援装置１の動作を例示するフローチャートである。ステップＳ１０１の処理を実行する前に、論理合成部１３によって生成された半導体集積回路のゲートレベルネットリストと、ライブラリ格納部１１に格納されている所定のライブラリと、制御情報格納部１２に格納されているタイミング制約の情報などを読み出す。そして、フロアプランを実施してチップサイズ、ハードマクロの配置位置を決定する。
【００２９】
その後、ステップＳ１０１において、許容可能な電圧降下値を設定、またはライブラリに記述してある許容可能な電圧降下値を自動取得し、読み込んだネットリストを解析して電源配線を決定する。
【００３０】
ステップＳ１０２において、論理セルの配置処理を行う。論理セルの配置処理では電圧降下量を考慮した配置を行う。このとき、電源配線を構成後、通常のタイミング収束性と配線混雑度を考慮した初期配置を実施する。その後、消費電力計算とＩＲドロップ検証を実施する。
【００３１】
ステップＳ１０３において、電力解析を行い、チップ全体の消費電力量情報、各論理セルの消費電力量情報を得る。各セルの消費電力は、トグルレート、配線負荷容量、スイッチング１回あたりの電力情報により求めることが出来る。セルの消費電力は予めライブラリとして準備しておくことで高速に求めることが可能である。階層レイアウトを行っている場合は、電力消費量の大きいモジュールを電源供給源の近くにあらかじめ配置することで同様の効果を実現できる。
【００３２】
ステップＳ１０４において、ＩＲドロップ解析を行い、チップ全体の電圧降下量情報、各論理セルの電圧降下量情報を得る。このとき、そのチップ全体の電圧降下量情報、各論理セルの電圧降下量情報が、許容可能な電圧降下値の範囲に収まっているか否かの判断を実行する。その判断の結果、許容可能な電圧降下値の範囲に収まっている場合（ＩＲドロップ制限を満たす場合）は、処理は終了する。
【００３３】
その判断の結果、許容可能な電圧降下値の範囲に収まっていない領域（以下、電圧降下領域３１と記載する）が存在する場合には、その電圧降下領域３１を示す情報を生成する。また、その電圧降下領域３１に対応し、消費電力の大きいセル（以下、大消費電力セル領域３２と記載する）のリスト（以下、電圧降下エリアセルリスト２３と記載する）を生成する。
【００３４】
図４は、電圧降下エリアセルリスト２３が示す電圧降下領域３１と、その電圧降下領域３１に対応する大消費電力セル領域３２とを概略的に例示するレイアウト図である。図４に示されているように、半導体集積回路設計支援装置１は、電源供給点や、電源網の抵抗が小さい領域に基づいて、電圧降下領域３１を特定する。また、上述のステップＳ１０３に算出して消費電力量に基づいて、大消費電力セル領域３２を特定する。
【００３５】
図３に戻り、ステップＳ１０５において、電圧降下量を考慮可能なＳＴＡ（静的タイミング解析）を実施してタイミングレポート２４を得る。このとき、このタイミングレポート２４よりクリティカルパスおよびノンクリティカルパスの認識を行う。なお、外部よりタイミング情報を入力してクリティカルパスおよびノンクリティカルパスを認識するようにしても良い。まｔ、クリティカルパスの範囲は回路の状態により任意の閾値を設定できるようにしておくことが好ましい。
【００３６】
図５は、クリティカルパスおよびノンクリティカルパスの構成を例示する回路図である。第１セルＣ１〜第８セルＣ８の各セルは、第１パス（クリティカルパス）３３を構成している。また、第１セルＣ１、第２セルＣ２、第３セルＣ３、第１０セルＣ１０、第１１セルＣ１１および第１２セルＣ１２は、第２パス（ノンクリティカルパス）３４を構成している。
【００３７】
図６は、ステップＳ１０５で生成されるタイミングレポート２４の構成を例示するテーブルである。図６は、図５に示される回路を含む半導体集積回路に対応したタイミングレポート２４を例示している。図６に示されているように、タイミングレポート２４は、半導体集積回路に配置される複数のパスに対し、所望のクロック周波数で動作するかなど、タイミング仕様を満足するかどうかを調べた結果を保持している。タイミングレポート２４は、パス名と、そのパスに含まれるセルのリストと、そのパスがクリティカルパスであるかノンクリティカルパスであるかを示すフラグとを関連付けて保持している。
【００３８】
図３に戻り、ステップＳ１０６において、移動候補セルリスト２５を生成する。このとき、上述のタイミングレポート２４に基づいて、ノンクリティカルパスと、そのノンクリティカルパスを構成するセルを抽出する。また、上述のタイミングレポート２４に基づいて、その抽出したセルのうち、クリティカルパスの構成要素でもあるセルを、クリティカルパスセルとして特定する。そして、その抽出したセルからクリティカルパスセルを除外して、移動候補セルリスト２５を生成する。
【００３９】
図７は、ステップＳ１０６で生成される移動候補セルリスト２５の構成を例示するテーブルである。図７に示されているように、移動候補セルリスト２５は、パス名と、そのパスに含まれるセルのリストと、そのパスがクリティカルパスであるかノンクリティカルパスであるかを示すフラグとを関連付け手保持している。上述の図５に示されているように、第１パス３３を構成している第１セルＣ１、第２セルＣ２および第３セルＣ３は、第２パス３４を構成する第１セルＣ１、第２セルＣ２および第３セルＣ３と同じである。半導体集積回路設計支援装置１は、移動候補セルリスト２５を生成するときに、タイミングレポート２４を参照し、第２パスがノンクリティカルであることに基づいて、第２パスからそのセル第１セルＣ１、第２セルＣ２および第３セルＣ３を除外して、移動候補セルを含むパス（以下、移動候補パスと記載する）に関する情報を含むセルリストを生成する。
【００４０】
図８は、移動候補パスの構成を例示する回路図である。半導体集積回路設計支援装置１は、移動候補セルリスト２５に基づいて、第１セルＣ１〜第１２セルＣ１２の各セルのうち、第１０セルＣ１０〜第１２セルＣ１２を第１移動候補パス３５として特定する。
【００４１】
図３に戻り、ステップＳ１０７において、電圧降下エリアセルリスト２３と、移動候補セルリスト２５とに基づいて、移動（配置位置を変更）するセルを決定する。このとき、電圧降下領域３１の大消費電力セル領域３２に、上述の移動候補セル（例えば、第１移動候補パス３５）が、含まれているか否かの判断を行う。その判断の結果、大消費電力セル領域３２に移動候補セルが含まれる場合、その移動候補セルを移動セルとして特定し、処理はステップＳ１０８に進む。なお、その移動セルが特定されない場合には、処理は終了する。つまり、ＩＲドロップ制限を満たすか、移動候補のセルが無くなった時点で、本実施形態の動作や処理は、終了する。ステップＳ１０８において、特定した移動セルを、電源供給点の近傍や、電源網の抵抗が小さい領域に移動する。
【００４２】
図９は、移動セルを特定する動作と、その移動セルの配置位置を変更する動作を概念的に例示する平面図である。図９の（ａ）は、大消費電力セル領域３２に移動候補セルが含まれる場合を例示している。図９の（ｂ）は、その移動候補セルを移動セルとして特定した後、配置位置を変更する場合を例示している。ステップＳ１０８の動作では、ＩＲドロップが発生している領域内に配置されたセル（もしくはモジュール）のうち、電力消費量が大きく、かつタイミングのクリティカルパスに含まれないセルを選択し、電源供給源の近く方向に数Ｒｏｗ単位で移動させる。そして、その後タイミング調整を行う。
【００４３】
図３に戻り、ステップＳ１０９において、再度論理セルの配置処理を行う。ステップＳ１１０において、与えられた再配置が完了した回路に対して、信号遅延を調整する処理を行い、タイミングの最適化を実行する。その後、処理は戻り、ステップＳ１０３の工程とステップＳ１０５の工程を繰り返す。以上の処理によりクリティカルパスのタイミングを保存しつつＩＲドロップ量を効果的に低下させることができる。
本実施形態の構成・動作を有する半導体集積回路設計支援装置１を構築することによって、セル（もしくはモジュール）の配置時に、消費電力とタイミングを同時に考慮してセル移動を行うことが可能となる。それによって、動作周波数の低下および配線混雑の発生なしに電源網の電圧降下量を減少させることができるようになる。
【００４４】
［第２実施形態］
以下に、図面を参照して本願発明の第２実施形態について説明を行う。図１０は、第２実施形態の半導体集積回路設計支援装置１の動作を例示するフローチャートである。図１０に示されているように、第２実施形態の動作は、第１実施形態の動作に、さらに、ステップＳ２０１とステップＳ２０２の動作を含んでいる。
【００４５】
第２実施形態の動作では、ステップＳ１０７において、電圧降下エリアセルリスト２３と、移動候補セルリスト２５とに基づいて、移動（配置位置を変更）するセルを決定する。このとき、電圧降下領域３１の大消費電力セル領域３２に、上述の移動候補セル（例えば、第１移動候補パス３５）が、含まれているか否かの判断を行い、移動候補のセルが無くなった場合に、処理はステップＳ２０１に進む。
【００４６】
ステップＳ２０１において、ＩＲドロップ解析（電圧降下解析）を実施する。このＩＲドロップ解析（電圧降下解析）では、チップ全体での解析の他に、各論理セルの電圧降下量も解析する。その後、ＩＲドロップ制限を満たすか否かの判断を実行する。その判断の結果、ＩＲドロップ制限を満たす場合には処理は終了する。その判断の結果、ＩＲドロップ制限を満たしていない場合には、処理はステップＳ２０２に進む。
【００４７】
ステップＳ２０２において、ＩＲドロップ制限を満たすように、電源配線の強化を実行する。このとき、移動セルの配置位置の変更が全て終了している。そのため、電圧降下領域３１の大消費電力セル領域３２は、初期状態のレイアウトよりも、消費電力が大きいセルの数が減少している。したがって、初期状態のレイアウトのまま電源配線を強化する場合に比較して、電源配線を太くしたり、電源供給セルの数を増やしたりするために使用されるリソースを低減することが可能となる。
【００４８】
以上、本願発明の実施の形態を具体的に説明した。本願発明は上述の実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。なお、上述の複数の実施形態は、その構成・動作に矛盾が生じない範囲において組み合わせて実施することが可能である。
【符号の説明】
【００４９】
１…半導体集積回路設計支援装置
２…情報処理装置
３…入力装置
４…出力装置
５…演算処理部
６…ＲＡＭ
７…記憶部
８…バス
１１…ライブラリ格納部
１２…制御情報格納部
１３…論理合成部
１４…レイアウト生成部
１５…電源降下解析部
１６…タイミング解析部
１７…移動候補セル解析部
１８…レイアウトデータ出力部
２１…タイミングライブラリ
２２…電力ライブラリ
２３…電圧降下エリアセルリスト
２４…タイミングレポート
２５…移動候補セルリスト
３１…電圧降下領域
３２…大消費電力セル領域
３３…第１パス（クリティカルパス）
３４…第２パス（ノンクリティカルパス）
３５…第１移動候補パス
Ｃ１…第１セル
Ｃ２…第２セル
Ｃ３…第３セル
Ｃ４…第４セル
Ｃ５…第５セル
Ｃ６…第６セル
Ｃ７…第７セル
Ｃ８…第８セル
Ｃ９…第９セル
Ｃ１０…第１０セル
Ｃ１１…第１１セル
Ｃ１２…第１２セル
【図１】
2011107950.tif 000003
【図２】
2011107950.tif 000004
【図３】
2011107950.tif 000005
【図４】
2011107950.tif 000006
【図５】
2011107950.tif 000007
【図６】
2011107950.tif 000008
【図７】
2011107950.tif 000009
【図８】
2011107950.tif 000010
【図９】
2011107950.tif 000011
【図１０】
2011107950.tif 000012