説明

ロバスト設計の特定及び静的タイミング解析を用いてのロバスト設計の向上

【課題】静的タイミング解析技術を用いてロバスト回路を最適化する。
【解決手段】合成、配置及びルーティングの設計フロー全体を通して一貫した方法でロバスト回路の構築につなげるために静的タイミング解析技術が用いられる。例示的な技法は、タイミングモデルを含む設計のためのライブラリデータを受信するステップを含むことができる。このデータの複数の実装を比較することによって、一連の基準(最悪の負のスラック、エンドポイントスラック分布、タイミング制約違反、トータルの負のスラックを含むことができる)に基づいてロバスト回路を定義することができる。この時点で、設計においてロバスト回路を向上させる論理変化を推進するために静的タイミング解析を用いることができる。静的タイミング解析は、静的タイミング解析におけるアークに関連する静的タイミング遅延を平均として、指定の割合の平均を標準偏差として用いることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、集積回路(IC)設計に関し、詳細には、ロバスト設計の特定(identify)及び静的タイミング解析を用いてのそのような設計の向上に関する。
【背景技術】
【0002】
図1は、例示的なデジタルIC設計フローを簡略化して説明するための図である。上側の段において、プロセスは、製品企画(ステップ100)より開始し、EDAソフトウェア設計プロセスを実行する(ステップ110)。設計が終了すると、テープアウトを行う(イベント140)。テープアウト後、製作プロセス(ステップ150)、パッケージング及び組立プロセス(ステップ160)を実施し、最終的に、完成品チップが得られる(結果170)。
【0003】
EDAソフトウェア設計プロセス(ステップ110)は、実際には複数のステップ112〜130から構成されされており、簡略化のために直線的に示している。実際のAISC設計プロセスでは、特定の設計は、所定の試験に合格するまでステップを逆戻りしなければならないこともある。同様に、任意の実際の設計プロセスでは、これらのステップは、異なる順序及び組み合わせで行われることがある。従って、この説明は、特定のASICのための具体的な或いは推奨する設計フローとしてよりも、むしろ背景説明(context)及び一般的な説明のために提供される。
【0004】
ここで、EDAソフトウェア設計プロセス(ステップ110)を構成するステップを簡単に説明する。
【0005】
システム設計(ステップ112):設計者は、実装したい機能性を記述し、what−ifプランニングを実施して機能性改良や費用確認などを行うことができる。ハードウェア−ソフトウェア・アーキテクチャ・パーティショニングは、このステップで行うことができる。このステップで使用することができるシノプシス社(Synopsys, Inc.)製の例示的なEDAソフトウェア製品には、Model Architect、Saber、System Studio、及びDesignWare(登録商標)などの製品が含まれる。
【0006】
論理設計及び機能性の検証(ステップ114):このステップでは、システム内のモジュールのためのVHDLまたはVerilogコードを書き込み、その設計を機能性の精度について検査する。より具体的には、設計を検査することによって、正しい出力を生成することを保証する。このステップで使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、VCS、VERA、DesignWare(登録商標)、Magellan、Formality、ESP、及びLEDAなどの製品が含まれる。
【0007】
合成及び試験のための設計(ステップ116):このステップでは、VHDL/Verilogをネットリストに変換する。ネットリストは、目的の技術のために最適化することができる。加えて、完成品チップの検査を可能とする試験の設計及び実装を行う。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、Design Compiler(登録商標)、Physical Compiler、Test Compiler、Power Compiler、FPGA Compiler、Tetramax、及びDesignWare(登録商標)などの製品が含まれる。
【0008】
ネットリスト検証(ステップ118):このステップでは、ネットリストを、タイミング制約との適合性及びVHDL/Verilogソースコードとの対応性について検査する。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、Formality、PrimeTime、及びVCSなどの製品が含まれる。
【0009】
設計プランニング(ステップ120):このステップでは、チップの全体フロアプランを作成し、タイミング及び最上位ルーティングについて解析する。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、Astro及びIC Compilerなどの製品が含まれる。
【0010】
物理的な実装(ステップ122):このステップでは、配置(回路素子の位置決め)及びルーティング(回路素子の接続)を行う。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、Astro及びIC Compilerなどの製品が含まれる。
【0011】
解析及び抽出(ステップ124):このステップでは、回路機能を物理的及び電気的レベルで検証する。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、AstroRail、PrimeRail、Primetime、及びStar RC/XTなどの製品が含まれる。
【0012】
物理的な検証(ステップ126):このステップでは、様々なチェック機能を実行し、製造、電気的な結果、リソグラフィックの結果、及び回路構成について正確性を保証する。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、Herculesなどの製品が含まれる。
【0013】
分解能向上(ステップ128):このステップでは、レイアウトの幾何学的操作を行い、設計の製造可能性を改善する。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、Proteus、ProteusAF、及びPSMGenなどの製品が含まれる。
【0014】
マスクデータ準備(ステップ130):このステップでは、完成品チップを作成するのに使用するリソグラフィーのために、マスク作成用の「テープアウト」データを提供する。このステップにおいて使用することができるシノプシス社製の例示的なEDAソフトウェア製品には、CATS(登録商標)シリーズの製品が含まれる。
【0015】
ネットリスト検証(ステップ118):シミュレーションなしでデジタル回路の期待タイミングを提供することができる。このネットリスト検証技法は、静的タイミング解析(STA)と呼ばれ、入力値の組合せと無関係な回路のタイミング挙動の詳細な解析を提供する。
【0016】
STA用語では、タイミング制約は、回路信号が伝播しかつ出力で満足に読み出されるかまたは記憶素子によって捕捉されるのに利用可能な時間のバジェットである。タイミング制約は、クロッキング方式、出力負荷などのユーザ指定の情報によって捕捉される。「クリティカルパス」は、タイミング制約に違反するような、入力ピンまたは記憶素子の出力と出力ピンまたは記憶素子の入力との間のパスとして定義される。タイミング照合が行われるピンは、エンドポイントと呼ばれる。タイミング制約は、2つの形態に分類されることができる。セットアップ制約は、バジェットより遅くならずに信号に安定していることを求める制約である。ホールド制約は、バジェットより早くならずに信号が変わることを求める制約である。説明のために、かつ一般性を喪失することなく、本明細書では第1の形態にのみ言及する。ピンの到着時間は、ピンでの信号が安定させる時間として定義される。静的タイミングでは、到着時間は、「加法」及び「最大」演算を用いて算出されることができる。ピンの要求時間は、信号がタイミング制約を満足するように安定させなければならない時間である。静的タイミングでは、要求時間は、「減法」及び「最小」演算を用いて算出されることができる。ピンの「スラック」は、要求時間と到着時間との差として定義されることができる。それゆえ、正のスラックは、回路の全体遅延が許容範囲にある(そして、望ましいならば、ピンへの到着時間を増加することさえできる)ことを意味するのに対して、負のスラックは、パスが遅すぎるので、回路の全体遅延に悪影響を及ぼさないようにスピードアップされなければならないことを意味する。
【発明の概要】
【発明が解決しようとする課題】
【0017】
ここ数年にわたって、産業界では遅延変動に多くの関心が寄せられている。遅延変動は、電圧及び温度などの動作条件の変化及び製造中に現れるプロセス変動から生じる場合がある。しかし、設計フローに照らせば、遅延変動は、下流ツールにおける最適化、設計が進展するにつれての算出に用いられるモデルの改良、設計に対する任意の変更(すなわち仕様変更)から生じる場合もある。
【0018】
残念ながら、変動の各原因をキャラクタライズし、その後、その変動に対する回路の「ロバストネス」を定義しようとすることは、かなりの資源配分を必要とすることになるであろう。それゆえ、費用効果の高い方法で耐変動(変動が起きても全体に悪影響を及ぼさない)設計を構築する方法及び装置の必要が生じている。
【0019】
静的タイミング解析として知られている静的タイミング解析への比較的新しい拡張機能が導入されている。この技術は、プロセス変動によって生じる回路遅延の変動をモデリングするように設計されている。遅延は統計的分布によって表され、解析ステップは、到着(要求)時間の分布を、これらの分布に「加法」及び「最大」(「減法」及び「最小」)演算を適用することによって広げる。このアプローチは、各プロセス変更に対して遅延挙動をキャラクタライズすることにかなりの資源配分を必要とする。
【課題を解決するための手段】
【0020】
本発明の一態様に従って、合成、配置及びルーティングの設計フロー全体を通して一貫した方法でロバスト回路を構築するために静的タイミング解析技術が用いられる。例示的な技法は、タイミングモデルを含む設計のためのライブラリデータを受信するステップを含むことができる。このデータの複数の実装を比較することによって、幾つかの基準を用いて遅延変動に対する回路の耐性をキャラクタライズすることができる。典型的な基準は、最悪の負のスラック、エンドポイントスラック分布、タイミング制約違反の数及びトータルの負のスラックを含むことができる。これらの基準は、静的タイミング解析における公知の概念を用いて定義される。この時点で、静的タイミング解析は、設計におけるロバストネスを向上させる論理変化を推進するために用いられることができる。
【0021】
とりわけ、静的タイミング解析は、静的タイミング解析(STA)において設計のアーク(すなわちピンとピンの間のパス)上の統計的遅延分布をモデリングする。各変動源に対するキャラクタライゼーション遅延変化の必要性は、静的タイミング解析においてアークに関連する遅延を平均として、ユーザ指定の割合の平均を標準偏差として用いることによって、有利に回避されることができる。それゆえ、この方法では、静的タイミング解析は、ゲート遅延に対する典型的な挙動を用いる一方で、原因を特定しようとすることなく変動をゲートのせいにする。その結果、各パスは適切に制約されることができる。例えば、パスが長ければ長いほど、変動が大きく、平均遅延に統計上の取消(cancellation)が現れる機会が大きくなる。
【0022】
一実施形態では、静的タイミング解析を実行するステップは、設計の最適化においてコストメトリック(cost metric)として用いるための設計のエンドポイントでのスラック分布を決定するステップをさらに含むことができる。例えば、コストメトリックは、エンドポイントがタイミング制約を満足しない確率を算出するステップを含む場合がある。確率は、(エンドポイントでの到着時間に対する確率密度関数を与える)静的タイミング解析から算出されることができる。とりわけ、この確率を用いて、設計のロバストネスを向上させることもできる。
【0023】
以下にさらに詳しく述べるように、ロバスト回路の最適化を導くために、プロセス変動の取扱いを背景として開発された静的タイミング解析技術を有利に用いることができる。
【図面の簡単な説明】
【0024】
【図1】例示的なデジタルAISC設計フローを簡略化して説明するための図を示す。
【図2】合成ステップにおける静的タイミング解析の後で同じ設計/回路の2つの実装をプロットしたエンドポイントスラック分布グラフを示す。
【図3A】複数のインバータを含むインバータチェインであって、各インバータが、できる限り異なる正規分布曲線によって表されるゲート遅延を有するようなインバータチェインを示す。
【図3B】平均から3標準偏差内の遅延に対する可能値の約100%を含むゲートに対する正規分布を示す。
【図3C】入力パス及び内部パス(両パスは総称的にアークと呼ばれる)に関連する遅延を有する例示的なゲートを示す。
【図3D】ゲートをより高速にすることによって変動を如何に減らすことができるかを示す。
【図4】実装プロセスのための設計フローにおける回路を生成するための例示的な静的タイミング解析技術を示す。
【発明を実施するための形態】
【0025】
集積回路(IC)設計フローの様々なステップ(例えば、合成、配置、クロックツリー解析、ルーティング)は、ゲートの遅延及び最適化のためのネットを用いる。しかし、これらの遅延は、ステップ間でかなり異なり得る。例えば、フィードバックがないと、下流ツールを最適化しても異なる遅延算出をもたらしかねない。さらに、IC設計フローの後の段階のためのモデルは、典型的には、そのときにはより多くの情報が利用可能であるので、より正確である。他の遅延変動は、仕様(例えば、ユーザが標的とする550MHz対500MHz)、技術(すなわち製作時に用いられるプロセス)、または動作条件(すなわち、限定されるものではないが、温度、レールパワーサプライなどを含む環境)の変更(変動)に起因し得る。遅延変動の各原因を明らかにし、変動に対してロバストネスを定義することは、商品化を妨げる複雑なタスクである。
【0026】
とりわけ、後述するように、「ロバスト」回路の定義は、費用効果の高い方法で耐変動設計の構築を可能にする一方でIC設計フローの各ステップに適用するのに十分に一般的であることができる。それゆえ、合成ステップにおけるロバスト回路は、おそらく配置ステップにおけるロバスト回路でもあることになる(または最低限でも配置ステップにおける問題を最小にする)。ロバストネスの概念は、絶対的というよりはむしろ相対的なものであることにも留意されたい。それゆえ、ロバストネスは、本明細書中で述べられているように、複数の回路の比較に基づいている。有利には、ロバストネスは一般的に負のスラックのSTAコンセプトを用いて定義されることができる。
【0027】
ロバスト回路は、一定の基準を満たすものとして定義されることができる。例えば、1つの単純な定義を用いて、以下の3つの基準が満たされれば回路Cは回路Dよりロバストである。第1に、回路Cは、回路Dと等しいかまたはそれより多くの最悪の負のスラックを有する。第2に、回路Cは、回路Dと等しいかまたはそれより多くのトータルの負のスラックを有する。第3に、回路Cは、タイミング制約に違反する設計において、回路Dよりもずっと少ないエンドポイントを有する(ここで、エンドポイントは、違反があれば回路が故障するような任意の点である)。
【0028】
エンドポイントスラック分布を用いたロバスト回路に対する別の定義を作り上げることもできる。一実施形態では、エンドポイント(スラックの昇順でソートされる)は、エンドポイント数をx値として、スラックをy値としてプロットされることができる。得られた曲線は、エンドポイントスラック分布曲線と呼ばれる。一実施形態では、回路Cは、そのエンドポイントスラック分布曲線が、完全に、回路Dに対するエンドポイントスラック分布曲線の上にあれば、回路Dよりロバストである。一方の曲線の限られた部分が他方の曲線の上に延在していれば、曲線の残りの大部分(最も重要)が上にある回路をよりロバストであると判断することは有益であろう。
【0029】
例えば、図2は、合成ステップにおける静的タイミング解析の後で同じ設計/回路の2つの実装をプロットしたエンドポイントスラック分布グラフ200を示す。これらの実装は、曲線201及び202によって示される。設計は、任意の数のエンドポイント、例えば最大で10個または何十万個ものエンドポイントを有することができる。図2の2つの回路実装は、各々が、最悪の負のスラックから最良の正のスラックへ並べ替えられた約16,000個のエンドポイントを有する。
【0030】
グラフ200では、曲線201は完全に曲線202の上にあるので、曲線201によって表される回路は、曲線202によって表される回路実装よりロバストである。換言すれば、変動にさらされる2つの回路を所与として、曲線201によって表される回路は、曲線202に関連する回路よりも故障する可能性が低い。具体的には、曲線201によって表される回路は、エンドポイント範囲203(曲線201が0スラック軸と交差する点から始まり、曲線202が0スラック軸と交差する点で終わる)によって示されるようなかなり少ない違反エンドポイントを有することに留意されたい。さらに、曲線201によって表される回路は、曲線201によって表される回路よりも多くのトータルの負のスラックを有する。回路のトータルの負のスラックは、x軸の下の曲線の部分とx軸の間の面積であることに留意されたい。曲線201に関連するトータルの負のスラックの向上の度合いは、グラフ200において面積204(曲線202の上かつ0スラック軸の下の面積によって画定され、曲線201によって表される回路に関連するトータルの負のスラックを含まない)によって示される。上記の全てのメトリクスは、静的タイミング解析との関連で明確にされることに留意されたい。
【0031】
統計的タイミングを用いた論理ゲート(以下、ゲートと呼ぶ)の解析に従って、ゲート遅延は、(ゲート遅延を表す固定数を有することになる静的タイミングとは対照的に)平均及び標準偏差を有することが分かる。例えば、図3Aを参照すると、インバータチェイン300は10個のインバータ301〜310を含み、各インバータは正規分布320によって表されるゲート遅延を有する。インバータ301〜310は、異なる平均及び標準偏差値を有する場合がある(それゆえ、正規分布320はただ一般的正規分布を表すように作成されているにすぎない)ことに留意されたい。図3Bの正規分布320においては、平均(μ)はゲート遅延値の中間点(x軸)で現れる。値の約68%が平均から1標準偏差(σ)内にあり、値の約95%が平均から2標準偏差(2σ)内にあり、約100%が平均から3標準偏差(3σ)内にある。正規分布のy軸は確率を表すので、ゲートが特定の値より小さいかまたは大きい遅延を有する確率は、その特定の値を用いて正規分布320の曲線の下の面積を決定してエッジを画定することによって見つけられることができる。それゆえ、各インバータは確率密度関数(PDF)を有する。静的タイミング解析は、ゲート遅延PDFから任意のピン(インバータ310の出力など)の到着時間に対するPDFを算出するための基礎を与える。ピンの到着時間に対するPDFは、ピンがタイミングを満足しない確率を算出するために用いられることができる。
【0032】
静的タイミング解析を用いてロバスト回路を構築するための重要な点は、静的タイミング解析が、通常は静的タイミング解析によって隠されている回路内のクリティカルパスを明らかにすることができることである。具体的には、複数のクリティカルパスがゲート(例えば、ANDゲート、ORゲートなど)の出力ピンに収束するような事例を考える。この事例では、各パスは同じ平均遅延及び標準偏差値を有する。出力ピンに対する統計的上の最大値の算出が行われるとき、結果として得られる統計上の最大値の平均は、各パスの個々の平均よりも大きい。パスの数が多ければ多いほど、統計上の平均は大きい。この算出は、クリティカルパスの数を「明らかにする」ものとして特徴付けられることができる。例えば、全く同じでかつ平均5.0及び標準偏差0.1を有する正規分布である2つの到着分布の統計上の最大値は、平均5.05及び標準偏差0.08の正規分布によって近似される。対照的に、最大遅延値を決定するための静的解析は、異なる数のクリティカルパスを有する複数の事例を区別することができない。例えば、1若しくは複数の到着値のうちの静的最大値5.0は尚も5.0である。それゆえ、静的タイミング解析では、複数のクリティカルパスを有するピンが(統計的平均と比べて)より大きな到着時間平均を有する。その結果、静的タイミング解析は、臨界範囲及び同点カウント(これらは静的タイミング解析を用いた回路最適化において用いられる)などのコンセプトの必要性を有利になくす。似たような挙動が、臨界分布に対する要求時間算出のために統計上の最小値が算出されるときに見られる。この場合には、結果として得られる統計上の最小値の平均は、各々の個々の平均よりも小さい。
【0033】
各ゲートはまた、ゲートの各内部パスに関連する遅延を有することに留意されたい。例えば、図3Cを参照すると、ANDゲート330のパス331、332は、静的タイミング解析を用いて解析されることができるような遅延を有する。とりわけ、図3Dを参照すると、速い方のゲート(すなわち当該ゲートの内部パス)は、遅い方のゲートよりも(正規分布340によって示されるような)小さな標準偏差と、それゆえに(正規分布341によって示されるような)小さな変動とを有する。具体的には、この例では、速い方のゲートはアークに対して正のスラックしか有しておらず、これは、遅い方のゲート(負のスラックを有するかもしれない)より大きいロバストネスの判断指標の1つとなる。それゆえ、静的タイミング解析を用いるステップは、回路最適化を有利に行うことができる。一実施形態では、入力パスの変動は、最大操作(クリティカルパスを含まない)に影響を及ぼす場合がある。
【0034】
静的設計では、設計者は、設計における遅延変動を取り扱うようにバジェットを割り当てさせる。このバジェット(b)は、典型的には標的クロックの割合(%)である。残念ながら、バジェットはクロックエッジ上にのみセットされ、それは必要以上にタイミングをタイトにする効果を有する。さらに、下流ツールにおける最適化、モデルの改良及び/または仕様、技術または環境の変化によりbは経時的に変化するので、異なるタイミング制約ファイルが生成される。従って、静的設計は、準最適設計及び/またはプロセスをもたらすような幾つかの欠点を有する。
【0035】
対照的に、統計的設計では、設計者は、下流ツールにおける最適化、モデルの改良及び/または仕様、技術または環境の変化に起因するタイミング変動を区別する必要がない。具体的には、統計的設計では、静的ゲート遅延は平均(μ)として用いられることができ、バジェットbはゲート遅延の%標準偏差(σ)として用いられることができる。とりわけ、統計的設計は過度な制約に悩まされず、それによって各パスはその適切な変動を得ることができる。
【0036】
一実施形態では、ばらつき(または標準偏差)は、ユーザによって或る割合の平均として指定されることができる。例えば、各ゲートのばらつきは、遅延変動に対してバジェッティングされるクロック周期の割合に設定されることができる。これは、設計における全てのゲートに対して同じ数を設定する。代替実施形態では、ゲートの遅延範囲が既知であれば(かつ異なるゲートに対して異なっていれば)、ばらつきの推定値は、各ゲートに対する最悪状況の遅延と典型的な遅延との差から算出されることができる。
【0037】
要約すれば、ロバスト回路の最適化を導くために、プロセス変動の取扱いを背景として静的タイミング解析技術が開発される。具体的には、プロセスデータに依存して遅延モデルを指定するよりはむしろ、静的タイミング解析によって与えられる遅延は平均として用いられることができ、ユーザ指定の割合の平均は標準偏差として用いられることができる。それゆえ、静的タイミング解析は、ゲート遅延に関する典型的な挙動を用いる一方で、変動バジェットの原因をゲートのせいにする。
【0038】
その結果、各パスは適切に制約されることができる。例えば、パスが長ければ長いほど、変動が大きく、平均遅延に統計上の取消が現れる機会が大きくなる。静的タイミング解析を用いるステップは、ロバスト回路に役立つ最適化メトリクスに有利に働く論理変化を有利に推進することができる。
【0039】
図4は、実装プロセスのための設計フローにおける回路を生成するための例示的な技法400を示す。ステップ401は、タイミングモデルを含む設計のためのライブラリデータを受信する。ステップ402は、負のスラック、エンドポイントスラック分布、タイミング制約違反、トータルの負のスラックのうち少なくとも2つに基づいてロバスト回路を定義する。ステップ403は、静的タイミング解析を用いて、設計においてロバスト回路を向上させる論理変化を推進する。
【0040】
静的タイミング解析は、設計のアーク(すなわちピンとピンの間のパス)上で統計的遅延分布をモデリングする。具体的には、静的タイミング解析は、静的タイミング解析におけるアークに関連する静的タイミング遅延を平均として(ステップ404)、特定の割合の平均を標準偏差として(ステップ405)用いることができる。指定の割合は、変動に対するクロックバジェットの推定値及びゲート上の遅延変動の推定値のうちの一方から得られる。一実施形態では、ステップ403は、設計最適化においてコストメトリックとして用いるための設計のエンドポイントでのスラック分布を決定するステップ(ステップ406)をさらに含むことができる。例えば、コストメトリックは、エンドポイントがタイミング制約を満足しない確率を算出するステップを含むことができる。確率は、(エンドポイントでの到着時間に対する確率密度関数を与える)静的タイミング解析から算出される。とりわけ、この確率を用いて、設計のロバストネスを改善することもできる。
【0041】
別の実施形態では、ピンの統計的スラック(統計的平均要求時間と統計的平均到着時間との差として定義される)は、最適化が行われることになるピンを賢明に選択するために用いられることができる。統計的タイミングは、より多くのクリティカルパスを有するピンをより少ないクリティカルパスと区別することができ、すなわち、そのようなピンは、より悪い統計的スラックだが理想的な静的スラックを有することになるので、最適化は、違反パスの数を効果的に減らすことになるような設計におけるピンの良好なセットを特定することができる。
【0042】
技法400は、集積回路(IC)設計フローの様々な最適化ステップに有利に用いられることができる(例えば例として、限定されるものではないが、合成、配置、クロックツリー解析、ルーティング)。
【0043】
本発明の事例的な実施形態について本明細書で添付の図面を参照しながら詳細に説明してきたが、本発明はこれらの実施形態のみに制限されるものではないことは理解されよう。これらは、包括的なものでも、本発明を開示されたまさにその形に制限使用とするものでもない。
【0044】
例えば、技法400(図4)は、少なくとも1つのプロセッサを含むシステム上で実行される1若しくは複数のコンピュータプログラム(例えばツールセット)に実装されることができる。各コンピュータプログラムは、高次手続き型又はオブジェクト指向型プログラミング言語で、あるいはアセンブリ言語または機械語で実装することができる。適切なプロセッサには、限定されるものではないが、汎用マイクロプロセッサ及び特定用途向けマイクロプロセッサの両者のほか、他の種類のマイクロコントローラが含まれる。一般的に、プロセッサは、読み取り専用メモリ(ROM)及び/またはランダムアクセスメモリ(RAM)から命令及びデータを受信することになる。コンピュータは、データファイルの保存用として1若しくは複数の記憶装置を含むことができる。例示的な記憶装置には、磁気ディスク(例えば、内蔵されたハードディスク及びリムーバブルディスク)、光磁気ディスク、及び光ディスクが含まれる。コンピュータプログラム命令及びデータを具体的に実施するのに適合する記憶装置には、全ての形態の不揮発性メモリ(例えば、EPROM、EEPROMなどの半導体メモリ装置、及びフラッシュメモリ装置)、磁気ディスク(例えば、内蔵されたハードディスク及びリムーバブルディスク)、光磁気ディスク、及びCD−ROMディスクが含まれる。
【0045】
従って、本発明の範囲は、以下の請求項及びそれらに相当するものによって画定されるものとする。

【特許請求の範囲】
【請求項1】
実装プロセスのための設計フローにおける回路を生成する方法であって、
タイミングモデルを含む設計のためのライブラリデータを受信するステップと、
最悪の負のスラック及びトータルの負のスラックのうちの少なくとも一方並びにエンドポイントスラック分布及びタイミング制約違反数のうちの少なくとも一方に基づいてロバスト回路を定義するステップと、
前記設計においてロバスト回路を向上させる論理変化を推進するために静的タイミング解析を用いるステップとを含み、
前記静的タイミング解析が、静的タイミング解析における前記設計のアーク上で統計的遅延分布をモデリングし、
前記アーク上の前記統計的遅延分布が、
静的タイミング解析における前記アークに関連する静的タイミング遅延を平均として用いるステップと、
指定の割合の平均を標準偏差として用いるステップとを含み、
前記指定の割合の平均が、変動に対するクロックバジェットの推定値及びゲート上の遅延変動の推定値のうちの一方から得られることを特徴とする方法。
【請求項2】
前記静的タイミング解析が、設計の最適化においてコストメトリックとして用いるための前記設計のエンドポイントでのスラック分布を決定するステップをさらに含むことを特徴とする請求項1の方法。
【請求項3】
前記コストメトリックが、エンドポイントがタイミング制約を満足しない確率の算出を含むことを特徴とする請求項2の方法。
【請求項4】
最適化を実行する設計においてボトルネックを特定するために統計的スラックが用いられることを特徴とする請求項2の方法。
【請求項5】
実装プロセスのための設計フローにおける回路を生成するためのツールセットを提供することになる命令を、プロセッサによって実行されるときに、具現化するコンピュータ読み取り可能な媒体であって、
タイミングモデルを含む設計のためのライブラリデータを受信するための手段と、
最悪の負のスラック及びトータルの負のスラックのうちの少なくとも一方並びにエンドポイントスラック分布及びタイミング制約違反数のうちの少なくとも一方に基づいてロバスト回路を定義するための手段と、
前記設計においてロバスト回路を向上させる論理変化を推進するために静的タイミング解析を用いるための手段とを含み、
前記静的タイミング解析が、静的タイミング解析における前記設計のアーク上で統計的遅延分布をモデリングし、
前記アーク上の前記統計的遅延分布が、
静的タイミング解析における前記アークに関連する静的タイミング遅延を平均として用いるステップと、
指定の割合の平均を標準偏差として用いるステップとを含み、
前記指定の割合の平均が、変動に対するクロックバジェットの推定値及びゲート上の遅延変動の推定値のうちの一方から得られることを特徴とするコンピュータ読み取り可能な媒体。
【請求項6】
前記静的タイミング解析を用いるための前記手段が、設計の最適化においてコストメトリックとして用いるための前記設計のエンドポイントでのスラック分布を決定するための手段をさらに含むことを特徴とする請求項5のコンピュータ読み取り可能な媒体。
【請求項7】
前記コストメトリックが、エンドポイントがタイミング制約を満足しない確率の算出を含むことを特徴とする請求項5のコンピュータ読み取り可能な媒体。
【請求項8】
最適化を実行する設計においてボトルネックを特定するために統計的スラックが用いられることを特徴とする請求項5のコンピュータ読み取り可能な媒体。

【図1】
image rotate

【図2】
image rotate

【図3A】
image rotate

【図3B】
image rotate

【図3C】
image rotate

【図3D】
image rotate

【図4】
image rotate


【公表番号】特表2010−531519(P2010−531519A)
【公表日】平成22年9月24日(2010.9.24)
【国際特許分類】
【出願番号】特願2010−515291(P2010−515291)
【出願日】平成20年7月24日(2008.7.24)
【国際出願番号】PCT/US2008/071065
【国際公開番号】WO2009/035772
【国際公開日】平成21年3月19日(2009.3.19)
【出願人】(509141958)シノプシイス インコーポレイテッド (9)
【Fターム(参考)】