(57)【要約】【課題】半導体集積回路の設計段階で、より高精度にタイミング収束を行うことが可能な技術を提供する。【解決手段】動的ＩＲドロップ解析から電源ノイズ周期を求め、遅延パスの遅延をノイズ周期の倍数とする。これにより、半導体集積回路の内部信号が遅延パス回路を通過する際に受ける電源ノイズ量（遅延時間×電源ノイズ振幅）の遅延増加分と遅延減少分をほぼ等しくする。【選択図】図３
2009187325.tif 000002
【特許請求の範囲】
【請求項１】
（ａ）半導体集積回路のレイアウトデータに基づいて、前記半導体集積回路の寄生パラメータを抽出するステップと、
（ｂ）前記レイアウトデータに基づいて、前記半導体集積回路に対する高精度ＩＲドロップ解析を実行し、前記高精度ＩＲドロップ解析によって得られた第１ＩＲドロップ情報と前記寄生パラメータとに基づいて第１遅延情報を生成し、前記寄生パラメータと前記第１ＩＲドロップ情報と前記第１遅延情報とに基づいて静的タイミング解析を実行してタイミング情報を生成するステップと、
（ｃ）前記レイアウトデータに基づいて、前記半導体集積回路に対する動的ＩＲドロップ解析を実行して第２ＩＲドロップ情報を生成し、前記タイミング情報と前記第２ＩＲドロップ情報とに基づいて、動的ＩＲドロップを考慮した遅延計算を行って第２遅延情報を生成するステップと、
（ｄ）前記寄生パラメータと前記タイミング情報とに基づいて、クロストークを考慮した遅延計算を行って第３遅延情報を生成するステップと、
（ｅ）前記第１遅延情報と、前記第２遅延情報と、前記第３遅延情報とに基づいてタイミング検証を実行して、前記半導体集積回路のタイミングが収束したか否かを判定するステップと
を具備する
半導体集積回路の設計方法。
【請求項２】
請求項１に記載の半導体集積回路の設計方法において、さらに、
（ｆ）前記第２ＩＲドロップ情報に基づいて、前記半導体集積回路のノイズ周期を算出してノイズ周期情報を生成し、前記ノイズ周期情報に基づいて、遅延回路の遅延値を決定するステップを含み、
前記（ｄ）ステップは、
前記ノイズ周期に基づいて遅延値が決定した前記遅延回路に基づいて、前記動的ＩＲドロップを考慮した遅延計算を行って前記第２遅延情報を生成する
半導体集積回路の設計方法。
【請求項３】
請求項２に記載の半導体集積回路の設計方法において、
前記（ｃ）ステップは、
前記レイアウトデータに基づいて、前記半導体集積回路の電源回路モデルを生成するステップと、
前記レイアウトデータに基づいて、前記半導体集積回路のノイズ源モデルを生成するステップと、
前記電源回路モデルと前記ノイズ源モデルとに基づいて、電源ノイズシミュレーションを実行して電源電圧の過渡解析を行った結果に基づいて前記第２ＩＲドロップ情報を生成するステップ
を含む
半導体集積回路の設計方法。
【請求項４】
請求項３に記載の半導体集積回路の設計方法において、
前記（ｆ）ステップは、
前記第２ＩＲドロップ情報に基づいて、電源ノイズ波形をフーリエ変換して前記電源ノイズ波形の周波成分の連続スペクトラムを算出し、前記周波成分の連続スペクトラムに基づいて得られた振幅スペクトラムの最大周波数帯を前記ノイズ周期として前記ノイズ周期情報を生成するステップと、
前記ノイズ周期情報に基づいて、信号ラインの遅延が前記ノイズ周期の整数倍である遅延回路を構成するステップと
を含む
半導体回路の設計方法。
【請求項５】
請求項４に記載の半導体集積回路の設計方法において、
前記（ｅ）ステップは、
前記遅延回路の遅延に設定していないノイズ周期が存在するか否か判定する判定ステップと、
前記判定ステップの結果、設定していないノイズ周期が存在する場合、前記遅延回路の遅延を再設定した新たな遅延回路を構成する再構成ステップと、
前記判定ステップの結果、設定していないノイズ周期が存在しない場合、複数回のタイミング検証を実行して得られた実行結果から、最もタイミングが収束しているものを選択し、選択された遅延回路を含む半導体集積回路のタイミングが収束したか否かを判定するステップと
を含み、
前記（ｃ）ステップは、
前記新たな遅延回路に基づいて前記動的ＩＲドロップを考慮した遅延計算を行って前記第２遅延情報を生成するステップを含む
半導体集積回路の設計方法。
【請求項６】
半導体集積回路のレイアウトデータに基づいて、前記半導体集積回路の寄生パラメータを抽出する寄生パラメータ抽出部と、
前記レイアウトデータに基づいて、前記半導体集積回路に対する高精度ＩＲドロップ解析を実行して第１ＩＲドロップ情報を生成するＩＲドロップ解析部と、
前記寄生パラメータと前記第１ＩＲドロップ情報とに基づいて第１遅延情報を生成する第１遅延計算部と、
前記寄生パラメータと前記第１ＩＲドロップ情報と前記第１遅延情報とに基づいて静的タイミング解析を実行してタイミング情報を生成するタイミング解析部と、
前記レイアウトデータに基づいて、前記半導体集積回路に対する動的ＩＲドロップ解析を実行して第２ＩＲドロップ情報を生成する動的ＩＲドロップ解析部と、
前記タイミング情報と前記第２ＩＲドロップ情報とに基づいて、動的ＩＲドロップを考慮した遅延計算を行って第２遅延情報を生成する第２遅延計算部と、
前記寄生パラメータと前記タイミング情報とに基づいて、クロストークを考慮した遅延計算を行って第３遅延情報を生成するクロストーク対応遅延計算部と、
前記第１遅延情報と、前記第２遅延情報と、前記第３遅延情報とに基づいてタイミング検証を実行して、前記半導体集積回路のタイミングが収束したか否かを判定するタイミング検証部と
を具備する
半導体集積回路の設計支援装置。
【請求項７】
請求項６に記載の半導体集積回路の設計支援装置において、
さらに、前記第２ＩＲドロップ情報に基づいて、前記半導体集積回路のノイズ周期を算出してノイズ周期情報を生成するノイズ周期算出部と、
前記ノイズ周期情報に基づいて、遅延回路の遅延値を決定する遅延パス回路生成部とを含み、
前記第２遅延計算部は、
前記ノイズ周期に基づいて遅延値が決定した前記遅延回路に基づいて、前記動的ＩＲドロップを考慮した遅延計算を行って前記第２遅延情報を生成する
半導体集積回路の設計支援装置。
【請求項８】
請求項７に記載の半導体集積回路の設計支援装置において、
前記動的ＩＲドロップ解析部は、
前記レイアウトデータに基づいて生成された前記半導体集積回路の電源回路モデルとノイズ源モデルとに基づいて電源ノイズシミュレーションを実行し、前記電源ノイズシミュレーションから得られる電源電圧の過渡解析を行った結果に基づいて前記第２ＩＲドロップ情報を生成する
半導体集積回路の設計支援装置。
【請求項９】
請求項８に記載の半導体集積回路の設計支援装置において、
前記ノイズ周期算出部は、
前記第２ＩＲドロップ情報に基づいて、電源ノイズ波形をフーリエ変換して前記電源ノイズ波形の周波成分の連続スペクトラムを算出し、前記周波成分の連続スペクトラムに基づいて得られた振幅スペクトラムの最大周波数帯を前記ノイズ周期として前記ノイズ周期情報を生成し、
前記遅延パス回路生成部は、
前記ノイズ周期情報に基づいて、信号ラインの遅延が前記ノイズ周期の整数倍である遅延回路を構成する
半導体回路の設計支援装置。
【請求項１０】
請求項９に記載の半導体集積回路の設計方法において、
前記タイミング検証部は、
前記遅延回路の遅延に設定していないノイズ周期が存在するか否か判定し、設定していないノイズ周期が存在する場合、前記遅延回路の遅延を再設定した新たな遅延回路を構成し、
設定していないノイズ周期が存在しない場合、複数回のタイミング検証を実行して得られた実行結果から、最もタイミングが収束しているものを選択し、選択された遅延回路を含む半導体集積回路のタイミングが収束したか否かを判定し、
前記第２遅延計算部は、
前記新たな遅延回路に基づいて前記動的ＩＲドロップを考慮した遅延計算を行って前記第２遅延情報を生成する
半導体集積回路の設計支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体集積回路の設計方法および設計支援装置に関する。
【背景技術】
【０００２】
近年、携帯型音楽プレーヤーや携帯電話機等のバッテリ駆動の製品が多く普及してきている。そのような製品には半導体集積回路が搭載され、その半導体集積回路に対する省電力化の要求が高まっている。半導体集積回路の消費電力を低減するために、電源電圧を低電圧にする技術が知られている。電源電圧を低下させた場合、一般的に、内部回路に流れる電流も減り、ノイズの発生を抑制することができる。しかしながら、近年の高速化に伴って、単純に電源電圧を低電圧にしても電流量が低減されない場合があり、電源電圧の低下に関わらず発生ノイズ量が低減されないことがある。
【０００３】
電源ノイズが低減せずに電源電圧が小さくなると、電源電圧に対する電源ノイズが占める割合が相対的に大きくなる。このとき、その電源ノイズに起因して、半導体集積回路の内部信号の位相の時間的な揺らぎ（以下、ジッタと呼ぶ）が増大する。半導体集積回路の電源ノイズによるジッタを低減する技術が知られている（例えば、非特許文献１参照。）。
【０００４】
図１は、非特許文献１に記載のＳＩ（Ｓｉｇｎａｌ  Ｉｎｔｅｇｒｉｔｙ：信号波形の完全性）を考慮した遅延計算とタイミング検証フローを示すフローチャートである。図１に示されるフローチャートは、３つの処理ステップを含んでいる。
【０００５】
第１の処理ステップは、高精度寄生パラメータ抽出（ステップＳ１）から得た寄生パラメータ１０１と、高精度ＩＲドロップ解析（ステップＳ２）から得たＩＲドロップ情報１０３を基にして、ＩＲドロップを考慮した遅延計算（ステップＳ３）を行い、第１遅延情報１０４を出力する。これら情報から静的タイミング解析（ステップＳ４）を行い、全ての信号線とノイズ源となりうる信号線のタイミング関係を抽出し、タイミング情報１０２として出力する。
【０００６】
第２の処理ステップでは、寄生パラメータ１０１とそのタイミング情報１０２を基にして、クロストークを考慮した遅延計算（ステップＳ５）を行い、クロストークに影響のあるネットの遅延計算結果を第１遅延情報１０４の差分情報として第２遅延情報１０５に出力する。
【０００７】
第３の処理ステップでは、第１遅延情報１０４とその差分情報である第２遅延情報１０５を基にして、静的タイミング検証（ステップＳ６）を行い、タイミングが収束したかどうか判定する（ステップＳ７）。これら一連の手順により、ＩＲドロップとクロストークを同時に考慮したタイミング検証が行われタイミング収束が完結する（ステップＳ８）。
【０００８】
【非特許文献１】沖テクニカルレビュー２００３年１０月／第１９６号Ｖｏｌ．７０Ｎｏ．４  Ｐ５０〜５１：シグナルインテグリティを考慮したタイミング収束手法
【発明の開示】
【発明が解決しようとする課題】
【０００９】
半導体製造における微細化技術の進歩に伴って、従来のタイミング収束手法では、発生するジッタを高精度に予測し、レイアウト設計に反映させることが困難な場合がある。ジッタが増大すると、半導体集積回路を構成する順序回路のタイミング規定から、動作条件の限定が必要となる。設計余裕度をより広くするために、半導体集積回路の設計段階で、より高精度にタイミング収束を行うことが可能な技術が求められている。
【課題を解決するための手段】
【００１０】
以下に、［発明を実施するための最良の形態］で使用される番号を用いて、課題を解決するための手段を説明する。これらの番号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために付加されたものである。ただし、それらの番号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１１】
上記の課題を解決するために、
［ａ］半導体集積回路のレイアウトデータに基づいて、前記半導体集積回路の寄生パラメータ（３１）を抽出するステップと、
［ｂ］前記レイアウトデータに基づいて、前記半導体集積回路に対する高精度ＩＲドロップ解析を実行し、前記高精度ＩＲドロップ解析によって得られた第１ＩＲドロップ情報（３３）と前記寄生パラメータ（３１）とに基づいて第１遅延情報（３６）を生成し、前記寄生パラメータ（３１）と前記第１ＩＲドロップ情報（３３）と前記第１遅延情報（３６）とに基づいて静的タイミング解析を実行してタイミング情報（３２）を生成するステップと、
［ｃ］前記レイアウトデータに基づいて、前記半導体集積回路に対する動的ＩＲドロップ解析を実行して第２ＩＲドロップ情報（３４）を生成し、前記タイミング情報（３２）と前記第２ＩＲドロップ情報（３４）とに基づいて、動的ＩＲドロップを考慮した遅延計算を行って第２遅延情報（３７）を生成するステップと、
［ｄ］前記寄生パラメータ（３１）と前記タイミング情報（３２）とに基づいて、クロストークを考慮した遅延計算を行って第３遅延情報（３８）を生成するステップと、
［ｅ］前記第１遅延情報（３６）と、前記第２遅延情報（３７）と、前記第３遅延情報（３８）とに基づいてタイミング検証を実行して、前記半導体集積回路のタイミングが収束したか否かを判定するステップとを具備する方法で半導体集積回路を設計する。
【００１２】
動的ＩＲドロップ解析から電源ノイズ周期を求め、遅延パスの遅延をノイズ周期の倍数とする。これにより、半導体集積回路の内部信号が遅延パス回路を通過する際に受ける電源ノイズ量（遅延時間×電源ノイズ振幅）の遅延増加分と遅延減少分をほぼ等しくする。遅延増加分と遅延減少分がほぼ等しくなるので、ジッタを低減することができる。
【発明の効果】
【００１３】
本発明によると、半導体集積回路の設計において、より高精度にタイミング収束を行うことが可能となる。
【発明を実施するための最良の形態】
【００１４】
［第１実施形態］
以下に、図面を参照して本発明を実施するための形態について説明を行う。図２は、本実施形態の半導体設計支援装置１の構成を例示するブロック図である。半導体設計支援装置１は、情報処理装置２と、入力装置３と、出力装置４とを含んでいる。情報処理装置２は、入力装置３と出力装置４とに接続されている。
【００１５】
情報処理装置２は、コンピュータプログラムに示される手順に従って動作、高速に情報処理を行う装置である。情報処理装置２は、入力、記憶、演算、制御および出力の５つの基本機能を備えている。入力装置３は、情報処理装置２へデータを入力するマンマシンインターフェースである。出力装置４は、情報処理装置２の処理結果を外部に出力するマンマシンインターフェースである。
【００１６】
図２を参照すると、情報処理装置２は、ＣＰＵ５と、メモリ６と、大容量記憶装置７とを含み、それらはバス８を介して接続されている。ＣＰＵ５は、情報処理装置２に備えられた各種装置の制御やデータの処理を行う。ＣＰＵ５は、入力装置３などから受け取ったデータを解釈して演算し、結果を出力装置などで出力する。メモリ６は、ＲＡＭなどに代表されるデータを記憶する記憶装置である。メモリ６は、ＣＰＵ５が演算処理を実行するときに使用される。大容量記憶装置７は、ＨＤＤ（ハードディスクドライブ）に代表される記憶装置であり、本実施形態に関連する情報やデータを記憶している。
【００１７】
大容量記憶装置７は、ＥＤＡツール９と、寄生パラメータ保持部２１と、タイミング情報保持部２２と、ＩＲドロップ情報保持部２３と、ノイズ情報保持部２４と、遅延情報保持部２５とを備えている。ＥＤＡツール９は、寄生パラメータ抽出部１１と、ＩＲドロップ解析部１２と、遅延計算部１３と、静的タイミング解析部１４と、クロストーク対応遅延計算部１５と、静的タイミング検証部１６と、動的ＩＲドロップ解析部１７と、ノイズ周期算出部１８と、遅延パス回路生成部１９と、動的ＩＲドロップ対応遅延計算部２０とを含んでいる。
【００１８】
寄生パラメータ保持部２１は、寄生パラメータ３１を保持する。タイミング情報保持部２２は、タイミング情報３２を保持する。ＩＲドロップ情報保持部２３は、第１ＩＲドロップ情報３３と第２ＩＲドロップ情報３４とを保持する。ノイズ情報保持部２４は、ノイズ情報３５を保持する。遅延情報保持部２５は、第１遅延情報３６と、第２遅延情報３７と、第３遅延情報３８とを保持する。
【００１９】
図３は、第１実施形態の動作を例示するフローチャートである。ステップＳ１０１において、ＳＩ（ＳｉｇｎａｌＩｎｔｅｇｒｉｔｙと呼ばれる信号波形の完全性）を考慮したレイアウト設計を実行する。ステップＳ１０１では、半導体集積回路内部のデカップリング容量と、半導体集積回路の内部信号とＬＳＩ外部信号を繋ぐＬＳＩパッケージの構成、サイズ、端子配置と、ＬＳＩパッケージ外部に接続される負荷情報と、ＬＳＩ外部の電源／Ｇｎｄ／信号の数及び配置情報と、ＬＳＩ外部の電源／Ｇｎｄ間に接続するチップコンデンサと、半導体集積回路内部の消費電流の情報と、半導体集積回路のサイズ情報及び動作周波数情報等の情報より、チップ・ＰＫＧ仕様を検討してレイアウトを決定する。
【００２０】
ステップＳ１０２において、設計された例ストに基づいて、高精度寄生パラメータ抽出処理を実行して寄生パラメータ３１を抽出する。ステップＳ１０３において、高精度ＩＲドロップ解析処理を実行して第１ＩＲドロップ情報３３を算出する。ステップＳ１０４において、抽出された寄生パラメータ３１と、算出された第１ＩＲドロップ情報３３とを基にして、ＩＲドロップを考慮した遅延計算を実行する。ステップＳ１０４の処理では、遅延計算を実行した実行結果を、第１遅延情報３６として格納する。
【００２１】
ステップＳ１０５において、これら情報から静的タイミング解析を実行する。ステップＳ１０５では、全ての信号線とノイズ源となりうる信号線のタイミング関係を抽出し、タイミング情報３２として出力する。
【００２２】
ステップＳ１０６において、電源回路モデルとノイズ源モデルとに基づいた電源ノイズシミュレーションにより、電源電圧の過度解析を行う動的ＩＲドロップ解析を実行して第２ＩＲドロップ情報３４を生成する。
【００２３】
ステップＳ１０７において、第２ＩＲドロップ情報３４より、電源ノイズ波形をフーリエ変換してノイズ波形の周波成分の連続スペクトラムを求め、その結果より振幅スペクトラムの最も大きい周波数帯をノイズ周期として読み取ることで、ノイズ情報３５を作成する。
【００２４】
ステップＳ１０８において、作成されたノイズ情報３５より、信号ラインの遅延をノイズ周期のＮ倍（Ｎ＝整数）となるように、遅延を設定した遅延パス回路を作成する。ステップＳ１０９において、作成された遅延パス回路と、第２ＩＲドロップ情報３４と、タイミング情報３２とを基にして、動的ＩＲドロップ考慮した遅延計算を行なう。ステップＳ１０９では、ＩＲドロップに影響のある信号ラインの遅延計算結果を、第１ＩＲドロップ情報３３の差分情報として第２遅延情報３７を作成する。
【００２５】
ステップＳ１１０において、寄生パラメータ３１と、タイミング情報３２を基にして，クロストークを考慮した遅延計算を行い、クロストークに影響のあるネットの遅延計算結果を第１ＩＲドロップ情報３３の差分情報として第３遅延情報３８として出力する。
【００２６】
ステップＳ１１１において、第１遅延情報３６と、差分情報である第２遅延情報３７と第３遅延情報３８を基にして、静的タイミング検証を行う。ステップＳ１１２において、その検証結果に基づいて、タイミングが収束したかどうか判定する。タイミングが収束していた場合、処理は終了する。タイミングが収束しなければ、処理はレイアウト設計（ステップＳ１０１）に戻り、上述の動作を繰り返す。
【００２７】
これら一連の手順により、ＩＲドロップとクロストークを同時に考慮したタイミング検証が行われタイミング収束が完結する。
【００２８】
図４は、動的ＩＲドロップ解析の動作を例示するフローチャートである。ステップＳ２０１において、半導体集積回路の電源回路を抵抗、容量、インダクタンスで表した電源情報と、デカップリング容量と、ＬＳＩパッケージを抵抗、容量、インダクタンスで表したパッケージ情報と、ＬＳＩパッケージ外部に接続される負荷情報とＬＳＩ外部の電源／Ｇｎｄ／信号の数及び配置情報とを基にして、電流経路のインピーダンスをモデル化し、電源回路モデルを作成する。
【００２９】
ステップＳ２０２において、半導体集積回路内部のフロアプランと、消費電流の情報と、動作周波数情報とを基にして、ノイズ源モデルを作成する。ステップＳ２０３において、作成された電源回路モデルと、作成されたノイズ源モデルより、電源ノイズシミュレーションをする。ステップＳ２０４において、電源ノイズシミュレーションにより電源電圧の過度解析を行った結果を第２ＩＲドロップ情報３４として出力する。
【００３０】
図５は、遅延パス回路４１の構成を例示する回路図である。遅延パス回路モデル４１は、遅延パス回路４２と、遅延パス回路４２に入力信号を供給する入力端子４３と、遅延パス回路４２にから出力される出力信号を受ける出力端子４４と、電源電圧を供給する電源線４５とを含んでいる。
【００３１】
遅延パス回路４２は、第１インバータＩ１と、第２インバータＩ２と、第３インバータＩ３と、第４インバータＩ４とを含んでいる。第１インバータＩ１の入力端は、入力端子４３に接続されている。第１インバータＩ１の出力端は第１ノードＮ１を介して第２インバータＩ２の入力端に接続されている。第２インバータＩ２の出力端は、第２ノードＮ２を介して第３インバータＩ３の入力端に接続されている。第３インバータＩ３の出力端は、第３ノードＮ３を介して第４インバータＩ４の入力端に接続されている。第４インバータＩ４の出力端は、出力端子４４に接続されている。電源線４５は、第１インバータＩ１と、第２インバータＩ２と、第３インバータＩ３と、第４インバータＩ４にそれぞれ接続されている。
【００３２】
入力端子４３を介して遅延パス回路４２に入力される入力信号は、第１インバータＩ１、第２インバータＩ２、第３インバータＩ３、第４インバータＩ４を順に伝播した後、出力端子４４を介して出力される。
【００３３】
図６は、遅延パス回路モデル４１の動作を例示するタイミングチャートである。図６の（ａ）は、遅延パス回路４２に供給される入力信号の時間的推移をあらわしている。図６の（ｂ）は、遅延パス回路４２に供給される入力信号に応答して変化する第１ノードＮ１の時間的推移をあらわしている。図６の（ｃ）は、第１ノードＮ１の変化に応答した第２ノードＮ２の時間的推移をあらわしている。図６の（ｄ）は、第２ノードＮ２の変化に応答した第３ノードＮ３の時間的推移をあらわしている。図６の（ｅ）は、第３ノードＮ３の変化に応答して遅延パス回路４２が出力する出力信号の時間的推移をあらわしている。時刻Ｔ１と時刻Ｔ２との差分は、入力端子４３から出力端子４４までの遅延時間Ｔｄである。
【００３４】
図７は、遅延パス回路で構成される半導体集積回路の電源ノイズを例示する波形図である。図７の（ａ）は、時刻Ｔ１から時刻Ｔ２までにおける電源ノイズが、電源電圧よりも大きいときの電源電圧Ｖ１を例示している。図７の（ｂ）は、時刻Ｔ１から時刻Ｔ２までにおける電源ノイズが、電源電圧よりも小さいときの電源電圧Ｖ２を例示している。図７の（ｃ）は、時刻Ｔ１から時刻Ｔ２までにおける電源ノイズが、領域Ａ１において電源電圧よりも大きく、領域Ａ２において小さいときの電源電圧Ｖ３を例示している。図７の（ｄ）は、時刻Ｔ１から時刻Ｔ２までにおける電源ノイズが、電源電圧Ｖ３の２倍の周期で変動する場合の電源電圧Ｖ４を例示している。
【００３５】
入力端子４３から出力端子４４までに内部信号を伝送する遅延時間は、電源波形Ｖ１では電源ノイズがない場合より高い電圧になるため、遅延値は電源ノイズがない場合より相対的に小さくなる。また、電源波形Ｖ２は、逆に電源ノイズがない場合より高い電圧になるため、遅延値は電源ノイズがない場合より相対的に大きくなる。したがって、電源波形Ｖ１と電源波形Ｖ２では信号の位相の時間的な遅延値の揺らぎであるジッタが大きくなる。
【００３６】
また電源波形Ｖ３は、電源電圧が高い領域Ａ１と電源電圧が低い領域Ａ２がある。そのため、第１インバータＩ１と第２インバータＩ２では電源ノイズがない場合より相対的に遅延値が小さくなり、第３インバータＩ３と第４インバータＩ４は電源ノイズがない場合より相対的に遅延値が大きくなる。したがって、遅延値は、電源電圧の変動に対してほぼ線形であるから、遅延値の増加分と減少分は同程度となり、電源ノイズによる遅延値の変動分は互い相殺され、電源ノイズがない場合の遅延値とほぼ等しくなる。
【００３７】
同様に、電源波形Ｖ４は、電源波形Ｖ３の２倍の周期であり、第１インバータＩ１と第３インバータＩ３では電源ノイズがない場合より相対的に遅延値が小さくなり、第２インバータＩ２と第４インバータＩ４は電源ノイズがない場合より相対的に遅延値が大きくなる。そのため、遅延値は、入力端子４３から出力端子４４までのトータルの遅延値で考えた場合には、電源ノイズによる遅延値の増減分が相殺され、電源ノイズがない場合の遅延値とほぼ等しくなる。電源波形Ｖ３の周期と遅延パス回路の遅延値は等しく、電源波形Ｖ３のＮ倍（Ｎ＝整数）の周期の電源波形についても、同様の原理により電源ノイズによる遅延値の増減分が相殺され、電源ノイズがない場合の遅延値とほぼ等しくなる。
【００３８】
このように、動的ＩＲドロップ解析から電源ノイズの周期を求め、遅延パスの遅延をノイズ周期のＮ倍（Ｎ＝整数）とする半導体集積回路のレイアウトを行う。これによって、半導体集積回路の内部信号が遅延パス回路を通過する際に受ける電源ノイズ量（遅延時間×電源ノイズ振幅）の遅延増加分と遅延減少分をほぼ等しくし、遅延回路をトータルで考えた場合には遅延値の増減分が相殺されジッタを低減することが可能となる。
【００３９】
図８は、遅延パス回路に電源ノイズが重畳した場合に発生するジッタと遅延値の関係を示したグラフである。図８を参照すると、上述の実施形態を適用することで、電源ノイズに対して最も影響を受けるノイズ周期の半分の第１遅延設定値Ｄ１と、ノイズ周期のＮ倍に第２遅延設定値Ｄ２とを比較した場合、ジッタをおよそ８０％削減できることが示されている。
【００４０】
［第２実施形態］
以下に、図面を参照して、本発明の第２実施形態について説明を行う。図９は、第２実施形態の動作を例示するフローチャートである。第２実施形態の動作は、第１実施形態の
動作に、さらに、遅延回路の遅延値を変更して繰り返し検証する工程を備えている。なお、他の動作は第１実施形態と同様なので、詳細な説明は省略する。
【００４１】
図９を参照すると、ステップＳ１１１において、静的タイミング検証を行った後に、処理はステップＳ１１３に進む。ステップＳ１１３において、電源ノイズのフーリエ変換結果からノイズ周期を確認し、遅延回路の遅延に設定していないノイズ周期がないかを判断する。その判断の結果、遅延回路の遅延に設定していないノイズ周期が確認された場合、処理は、ステップＳ１１５に進む。
【００４２】
ステップＳ１１５において、新たなノイズ周期として、信号ラインの遅延をノイズ周期のＮ倍（Ｎ＝整数）となるように、遅延を再設定した遅延パス回路を作成した後、処理はステップＳ１０９に戻り、動的ＩＲドロップ考慮した遅延計算を再び行う。
【００４３】
ステップＳ１１３の判断の結果、遅延回路の遅延に設定していないノイズ周期がない場合、処理はステップＳ１１４に進む。
【００４４】
ステップＳ１１４において、行なった全てのタイミング検証から最もタイミングが収束しているものを選び、処理はステップＳ１１２に進む。ステップＳ１１２において、タイミング収束の判定を行い、タイミングが収束していない場合には、処理はステップＳ１１６に進む。
【００４５】
ステップＳ１１６において、チップ・パッケージの仕様の再検討を行った後、処理はステップＳ１０１に戻る。ステップＳ１１２において、タイミングが収束している場合、処理は終了する。
【００４６】
遅延パス回路のジッタは、電源電圧ノイズに対して周波数依存を持ち、ノイズ周期が複数ある場合には、遅延を設定したノイズ周期以外のノイズ周期に対して大きく影響を受ける可能性がある。複数の大きな振幅スペクトラムを持つ電源電圧ノイズに対して、それぞれのノイズ周期に遅延を設定し、繰り返し検証することで、ジッタを低減する遅延設定を行なうことが可能となる。なお、上述の複数の実施形態は、その構成・動作が矛盾しない範囲において、組み合わせて実施することが可能である。
【図面の簡単な説明】
【００４７】
【図１】図１は、従来のＳＩを考慮した遅延計算とタイミング検証フローを示すフローチャートである。
【図２】図２は、半導体設計支援装置１の構成を例示するブロック図である。
【図３】図３は、第１実施形態の動作を例示するフローチャートである。
【図４】図４は、動的ＩＲドロップ解析の動作を例示するフローチャートである。
【図５】図５は、遅延パス回路４１の構成を例示する回路図である。
【図６】図６は、遅延パス回路モデル４１の動作を例示するタイミングチャートである。
【図７】図７は、遅延パス回路で構成される半導体集積回路の電源ノイズを例示する波形図である。
【図８】図８は、遅延パス回路に電源ノイズが重畳した場合に発生するジッタと遅延値の関係を示したグラフである。
【図９】図９は、第２実施形態の動作を例示するフローチャートである。
【符号の説明】
【００４８】
１…半導体設計支援装置
２…情報処理装置
３…入力装置
４…出力装置
５…ＣＰＵ
６…メモリ
７…大容量記憶装置
８…バス
９…ＥＤＡツール
１１…寄生パラメータ抽出部
１２…ＩＲドロップ解析部
１３…遅延計算部
１４…静的タイミング解析部
１５…クロストーク対応遅延計算部
１６…静的タイミング検証部
１７…動的ＩＲドロップ解析部
１８…ノイズ周期算出部
１９…遅延パス回路生成部
２０…動的ＩＲドロップ対応遅延計算部
２１…寄生パラメータ保持部
２２…タイミング情報保持部
２３…ＩＲドロップ情報保持部
２４…ノイズ情報保持部
２５…遅延情報保持部
３１…寄生パラメータ
３２…タイミング情報
３３…第１ＩＲドロップ情報
３４…第２ＩＲドロップ情報
３５…ノイズ情報
３６…第１遅延情報
３７…第２遅延情報
３８…第３遅延情報
４１…遅延パス回路モデル
４２…遅延パス回路
４３…入力端子
４４…出力端子
４５…電源線
Ｉ１…第１インバータ
Ｉ２…第２インバータ
Ｉ３…第３インバータ
Ｉ４…第４インバータ
Ｎ１…第１ノード
Ｎ２…第２ノード
Ｎ３…第３ノード
Ｔ１…第１時刻
Ｔ２…第２時刻
Ｔｄ…伝送遅延時間
Ｖ１…電源電圧
Ｖ２…電源電圧
Ｖ３…電源電圧
Ｖ４…電源電圧
１０１…寄生パラメータ
１０２…タイミング情報
１０３…ＩＲドロップ情報
１０４…第１遅延情報
１０５…第２遅延情報
【図１】
2009187325.tif 000003
【図２】
2009187325.tif 000004
【図３】
2009187325.tif 000005
【図４】
2009187325.tif 000006
【図５】
2009187325.tif 000007
【図６】
2009187325.tif 000008
【図７】
2009187325.tif 000009
【図８】
2009187325.tif 000010
【図９】
2009187325.tif 000011
【手続補正書】
【提出日】平成20年9月24日(2008.9.24)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
電源に発生するノイズである電源ノイズの波形を求めるステップと、
求めた前記波形の周期を決定するステップと、
信号ラインを伝播する信号の遅延時間を前記周期の整数倍となるよう調整するステップと
を有することを特徴とする
半導体集積回路の設計方法。
【請求項２】
前記調整の結果に基づく第１遅延計算を行うステップと、
前記電源ノイズの前記波形の別の周期を決定するステップと、
信号ラインを伝搬する信号の遅延時間を前記別の周期の整数倍となるよう再調整するステップと、
をさらに有することを特徴とする
請求項１に記載の半導体集積回路の設計方法。
【請求項３】
前記再調整の結果に基づく第２遅延計算を行うステップと、
前記第１遅延計算に基づき得たタイミング収束の結果と前記第２遅延計算に基づき得たタイミング収束の結果の内の一を選択するステップと、
をさらに有することを特徴とする
請求項２に記載の半導体集積回路の設計方法。
【請求項４】
前記電源ノイズの前記周期は、前記波形をフーリエ変換して得られるスペクトラムに基づき決定されることを特徴とする
請求項１に記載の半導体集積回路の設計方法。
【請求項５】
前記電源ノイズの前記周期は、前記波形の振幅の最大値と前記スペクトラムの内の振幅スペクトラムに基づき決定されることを特徴とする
請求項４に記載の半導体集積回路の設計方法。