JP2006154951A - 検証方法及び検証装置 - Google Patents

検証方法及び検証装置 Download PDF

Info

Publication number
JP2006154951A
JP2006154951A JP2004340797A JP2004340797A JP2006154951A JP 2006154951 A JP2006154951 A JP 2006154951A JP 2004340797 A JP2004340797 A JP 2004340797A JP 2004340797 A JP2004340797 A JP 2004340797A JP 2006154951 A JP2006154951 A JP 2006154951A
Authority
JP
Japan
Prior art keywords
pulse width
delay
path
variation
signal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004340797A
Other languages
English (en)
Inventor
Toshikatsu Hosono
敏克 細野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004340797A priority Critical patent/JP2006154951A/ja
Priority to US11/080,555 priority patent/US7299438B2/en
Publication of JP2006154951A publication Critical patent/JP2006154951A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R29/00Arrangements for measuring or indicating electric quantities not covered by groups G01R19/00 - G01R27/00
    • G01R29/02Measuring characteristics of individual pulses, e.g. deviation from pulse flatness, rise time or duration
    • G01R29/023Measuring pulse width
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/30Marginal testing, e.g. by varying supply voltage
    • G01R31/3016Delay or race condition test, e.g. race hazard test
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31725Timing aspects, e.g. clock distribution, skew, propagation delay

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

【課題】オンチップバラツキを考慮して検証をより正確に行うことができる検証方法を提供すること。
【解決手段】タイミング検証装置11は、入力されるクロック信号のパルス幅と、そのクロック信号の遅延値と動作周波数に応じた変動係数とによってそのクロック信号が伝達されるFFのクロック入力端子におけるパルス幅を算出し、該パルス幅と規格値とを比較するようにした。更に、タイミング検証装置11は、FFのクロック入力端子におけるパルス幅を、クロック信号のパルス幅と、パスにおける立ち上がり遅延及び立ち下がり遅延とにより算出する。
【選択図】 図2

Description

本発明は、半導体集積回路の検証方法及び検証装置に関するものである。
半導体集積回路の開発においては、論理回路の遅延計算を実施し、動作タイミングや遅延を検証して論理回路の動作を確認、保証する工程がある。近年の半導体集積回路においては、回路の高集積化、高速化、動作電圧の低電圧化が図られている。そのため、チップ内における電源電圧降下のバラツキが回路動作の遅延や変動に大きな影響を及ぼすようになってきており、このバラツキを考慮したスタティックタイミング検証(STA:Static Timing Analyzer)を実施することが必要となっている。
従来、半導体集積回路の設計では、先ず論理合成等によってネットリストを作成し、次に、そのネットリストに基づいてチップのレイアウトを行う。そして、レイアウト結果に基づいてスタティックタイミング検証を行う。
図16は、従来のタイミング検証処理を示すフローチャートである。尚、この処理の各ステップは、図示しない検証装置により実行される。
先ず、半導体集積回路を形成したチップにおける電源電圧の降下量等のバラツキを見積もり(ステップ101)、半導体集積回路のレイアウト(各インスタンス(セル)の配置と配線)により回路の寄生容量を抽出し(ステップ102)、遅延値を算出する(ステップ103)。次に、データ系パスとクロック系パスを抽出する経路解析を行い(ステップ104)、各パスに対して遅延値を用いてタイミングチェック(ステップ105),パルス幅チェック(ステップ106)を行う。そして、それらチェックに基づいてレイアウトの妥当性を判定する(ステップ107)。
ところで、半導体集積回路におけるトランジスタ,配線を形成するプロセスのバラツキや電源電圧,温度のバラツキは、セルの遅延時間に影響を与える。このため、バラツキの各要素に対し、ばらつき量の見積りを行い、その見積り量に基づいて、遅延への影響を係数化し、オンチップバラツキ係数(OCV係数)を算出する。このOCV係数を遅延値に乗算してオンチップバラツキを考慮した遅延値を算出する。この算出した遅延値によりタイミングチェック・パルス幅チェックを実施する。
例えば、図17(a)に示すように、チップに形成された半導体集積回路は、クロック信号CKが複数段のバッファ回路111を介してフリップフロップ回路112に供給される回路を含む。パルス幅チェックでは、この回路において、そのフリップフロップ回路112のクロック入力端子112aにおけるクロック信号CKのパルス幅をチェックする。この場合、クロック信号CKは、複数段のバッファ回路111によるパス遅延によりクロック信号CKnとして対象とするフリップフロップ回路112に到達する。このクロック信号CKnのパルス幅PWnは、クロック信号CKのパルス幅PWHと、クロック信号CKの供給元(例えば、外部入力端子)に対するバッファ回路111の入力端子における立ち上がり遅延時間PRと立ち下がり遅延時間PFとから、
PWn=PWH+PF−PR
により求められる。尚、立ち上がり遅延時間PRは、クロック信号CKの立ち上がりエッジに対するクロック信号CKnの立ち上がりエッジの遅れ時間であり、立ち下がり遅延時間PFは、クロック信号CKの立ち下がりエッジに対するクロック信号CKnの立ち下がりエッジの遅れ時間である。そして、時間立ち上がり遅延時間PRは遅延バラツキを考慮した遅延時間の最大値であり、立ち下がり遅延時間PFは遅延バラツキを考慮した遅延時間の最小値である。上記式により求められたパルス幅PWnと、対象セル(図においてフリップフロップ回路112)の規格値tPWとを比較してパルス幅をチェックしていた。立ち上がり遅延時間PRについて遅延時間の最大値を考慮し、立ち下がり遅延時間PFについて遅延時間の最小値を考慮することは、両遅延時間PR,PFにおける時間差を大きくしてタイミング的に厳しいチェックを行うためである。尚、同様な式を用いてパルス幅を検証する方法が特許文献1に開示されている。
例えば、図18(a)に示すように、半導体集積回路は、2つのフリップフロップ回路113,114を含む。タイミングチェックでは、この回路において、フリップフロップ回路114の入力端子114a,114bにおけるデータ(Data)とクロック信号(CK)のタイミングチェックを行う。この時、オンチップバラツキを考慮したタイミングチェックを行う場合には、データ(Data)とクロック信号(CK)の何れか一方に遅延のバラツキを考慮し、厳しいチェックを行う。
特開2001−184372号公報
しかしながら、パルス幅チェックにおいて、図17(a)に示すように、クロック信号CKを伝達するバッファ回路111の数が多くなると、クロック信号CKの入力端からフリップフロップ回路112までの累積的なバラツキ量が多くなり、立ち上がりエッジと立ち下がりエッジとが近づいてパルス幅が極めて短くなり、多くの回路の入力端子におけるパルス幅がエラーであると判定され、結果的にタイミングの収束を遅らせ半導体集積回路の設計時間を長くする要因となっていた。
パルス幅は、同じセル(図17においてバッファ回路111)から出力される立ち上がり遅延と立ち下がり遅延の影響を受ける。実際の回路では、全ての回路素子において立ち上がりと立ち下がりのうちの一方のみが一様に変動することは極めて少ない。従って、セルから出力される信号の立ち上がり遅延と立ち下がり遅延の一方だけがチップ内のバラツキの影響を受けて変動することは考えにくく、上記のように一方の遅延に対して遅延バラツキを考慮する、つまり異なる条件の立ち上がり遅延時間と立ち下がり遅延時間を用いて検証を行っているため、正しい検証結果が得られないことや、悲観的な検証を実施していた。
又、タイミングチェックにおいて、オンチップバラツキによる遅延変動は、そのチップにおける遅延変動の要素(プロセス、温度、電圧、等)における最大値を用いているため、厳しすぎるチェック、又は実際にはあり得ないタイミングによるチェックを招く。例えば、図18(b)に示すように、対象となるフリップフロップが動作するためには、クロック信号CKに対してデータDataは、所定のホールドタイムHTを必要とするが、クロック信号CKの遅延変動を考慮することになり、ホールドタイムHTが規定を満足することができなくなり(ホールドタイムHTが規定時間よりも短くなり)、フリップフロップの動作が保証できなくなる。このように、多くの回路の入力端子におけるタイミングがエラーであると判定され、結果的にタイミングの収束を遅らせ半導体集積回路の設計時間を長くする要因となっていた。
本発明は上記問題点を解決するためになされたものであって、その目的は、オンチップバラツキを考慮して検証をより正確に行うことができる検証方法及び検証装置を提供することにある。
上記目的を達成するため、請求項1に記載の発明によれば、前記信号の供給地点におけるパルス幅と、前記信号の遅延値と動作周波数に応じたパルス幅変動係数とによって前記入力端子における前記信号のパルス幅を算出される。従って、同じ条件における立ち上がり遅延及び立ち下がり遅延を用いることができ、パルス幅自体の変動量を扱うことで、最終パルス幅を正確に算出して精度の高い検証を行うことができる。
請求項2に記載の発明によれば、前記入力端子におけるパルス幅は、前記供給地点におけるパルス幅と、前記供給地点における信号の立ち上がりエッジと前記入力端子における信号の立ち上がりエッジの時間差であり解析の条件における立ち上がり遅延値と、前記立ち上がり遅延値と同じ条件にて算出され、前記供給地点における信号の立ち下がりエッジと前記入力端子における信号の立ち下がりエッジの時間差である立ち下がり遅延値と、により算出される。従って、同じ条件における立ち上がり遅延値及び立ち下がり遅延値の変動を考慮することができるようになり、正確な検証を行うことができる。
請求項3に記載の発明によれば、前記パルス幅変動係数は、基準とする条件におけるパルス幅と、バラツキを考慮したパルス幅の比である。基準となるパルス幅をプロセスの条件(ワースト、ベスト)とすることで、各条件における検証を容易に行うことができる。
請求項4に記載の発明によれば、前記パルス幅変動係数は、前記信号を伝達するパスの遅延値と、前記信号の周波数と、周波数及び遅延値に基づく係数と、により算出されるものである。従って、パルス幅の変動を動作周波数と入力からの遅延値の相関で表現することが可能となり、検証を容易に行うことができるようになる。
請求項5に記載の発明によれば、検証装置は、前記信号を伝達するパスの始点におけるパルス幅と、前記信号の遅延値と動作周波数に応じた変動係数とによって前記入力端子におけるパルス幅を算出する算出手段と、該パルス幅と規格値とを比較する比較手段とを備えた。従って、同じ条件における立ち上がり遅延及び立ち下がり遅延を用いることができ、最終パルス幅を正確に算出して精度の高い検証を行うことができる。
請求項6に記載の発明によれば、半導体チップにおいて前記各信号を伝達するパス全体の遅延として考慮すべきバラツキ量を決定し、該バラツキ量をそのパスに対する遅延係数に変換し、該遅延係数に基づいて該パス全体に対する遅延値を算出し、該算出した遅延値に基づいて前記信号のタイミングを検証される。従って、パス全体のバラツキ量として考慮することで、精度の高いタイミング検証が実施される。
請求項7に記載の発明によれば、前記パス全体におけるバラツキ量は、パスに存在するインスタンスのバラツキ量の総和をパスに存在するインスタンスの数で除算して求められる。従って、各インスタンスのバラツキ量をパス全体のバラツキ量として考慮することで、精度の高いタイミング検証が実施される。
請求項8に記載の発明によれば、各インスタンスの電圧バラツキ量は、基準電圧に対して各インスタンスに供給される電源電圧の差である。従って、パスに含まれる各インスタンスに応じた電源電圧を考慮するため、全てのインスタンスについて同じ電源電圧を考慮する場合に比べてバラツキ量を緩和して精度の高いタイミング検証が実施される。
請求項9に記載の発明によれば、パス中のインスタンス数、電圧分布、最大電圧降下量から各インスタンスにおける電源電圧値が算出され、該電圧値を平均化処理して電圧のバラツキ量が算出される。従って、パスに含まれる各インスタンスに応じた電源電圧を考慮するため、全てのインスタンスについて同じ電源電圧を考慮する場合に比べてバラツキ量を緩和して精度の高いタイミング検証が実施される。
請求項10に記載の発明によれば、検証装置には、半導体チップにおいて前記各信号を伝達するパス遅延として考慮すべきバラツキ量を決定する決定手段と、該バラツキ量をそのパスに対する遅延係数に変換し、該遅延係数に基づいて該パス全体に対する遅延値を算出する算出手段と、該算出した遅延値に基づいて前記信号のタイミングを検証する検証手段とが備えられる。従って、パス全体のバラツキ量として考慮することで、精度の高いタイミング検証が実施される。
以上記述したように、本発明によれば、オンチップバラツキを考慮した検証が正確な検証方法及び検証装置を提供することができる。
以下、本発明を具体化した実施の形態を図1〜図15に従って説明する。
図2は、タイミング検証装置11の概略構成図である。
タイミング検証装置11は一般的なCAD(Computer Aided Design) 装置からなり、算出手段、比較手段、決定手段、検証手段としての中央処理装置(以下、CPU)12、メモリ13、記憶装置14、表示装置15、入力装置16、及びドライブ装置17を備え、それらはバス18を介して相互に接続されている。
CPU12は、メモリ13を利用してプログラムを実行し、タイミング検証に必要な処理を実現する。メモリ13には、タイミング検証の機能を提供するために必要なプログラムとデータが格納され、メモリ13としては、通常、キャッシュ・メモリ,システム・メモリ,及びディスプレイ・メモリ等(図示略)を含む。
表示装置15は、レイアウト表示、パラメータ入力画面等の表示に用いられ、これには通常、CRT,LCD,PDP等(図示略)が用いられる。入力装置16は、ユーザからの要求や指示、パラメータの入力に用いられ、これにはキーボード及びマウス装置等(図示略)が用いられる。
記憶装置14は、通常、磁気ディスク装置,光ディスク装置,光磁気ディスク装置等(図示略)を含む。記憶装置14には、後述するタイミング検証処理のためのプログラムデータ(以下、プログラム)及び各種のデータファイル(以下、ファイル)が格納される。CPU12は、入力装置16による指示に応答してプログラムや各種ファイルに格納されるデータを適宜メモリ13へ転送し、それを逐次実行する。この記憶装置14は、データベースとしても使用される。
CPU12が実行するプログラムは、記録媒体19にて提供される。ドライブ装置17は、記録媒体19を駆動し、その記憶内容にアクセスする。CPU12は、ドライブ装置17を介して記録媒体19からプログラムを読み出し、それを記憶装置14にインストールする。
記録媒体19としては、メモリカード,フレキシブルディスク,光ディスク(CD-ROM,DVD-ROM,… ),光磁気ディスク(MO,MD,…)等(図示略)、任意のコンピュータ読み取り可能な記録媒体を使用することができる。この記録媒体19に、上述のプログラムを格納しておき、必要に応じて、メモリ13にロードして使用することもできる。
尚、記録媒体19には、通信媒体を介してアップロード又はダウンロードされたプログラムを記録した媒体、ディスク装置を含む。更に、コンピュータによって直接実行可能なプログラムを記録した記録媒体だけでなく、いったん他の記録媒体(ハードディスク等)にインストールすることによって実行可能となるようなプログラムを記録した記録媒体や、暗号化されたり、圧縮されたりしたプログラムを記録した記録媒体も含む。
図1は、タイミング検証装置11が実行するタイミング検証処理を示すフローチャートである。
タイミング検証装置11は、ステップ21(バラツキ量の見積り処理)において、半導体集積回路を構成する要素や半導体集積回路を形成するプロセスの各要素におけるバラツキ量の見積りを行う、次に、ステップ22(バラツキ量の見直し・緩和処理)において、半導体集積回路のデザインの条件を考慮し、バラツキ量の見直し(主に緩和)を行う。デザインの条件には、回路段数、チップ面内分布(電圧分布、温度分布)を含む。タイミング検証装置11は、デザインの条件に基づいてインスタンス(セル)の配置位置を設定し、回路中のインスタンスの電位・温度を算出する。そして、パス中のインスタンスの電位・温度に基づいてそのパスにおける遅延値(パスディレイ)として考慮すべきバラツキ量を算出する。
次に、タイミング検証装置11は、ステップ23(OCV係数算出処理)において、バラツキ量に基づいてオンチップバラツキ係数(OCV係数)を算出する。このOCV係数の算出において、タイミング検証装置11はプロセス,電圧,温度と遅延の特性値を用い、OCV係数を算出する。ステップ24(遅延計算処理)において、タイミング検証装置11はOCV係数を用いて、バラツキを考慮した遅延値を算出する。
次に、タイミング検証装置11は、ステップ25(経路解析処理)において、データ信号を伝達するパス(データパス)とクロック信号を伝達するパス(クロックパス)を抽出する。また、タイミング検証装置11は、ステップ26(バラツキ係数算処理)において、バラツキを考慮したパルス幅変動係数を算出する。このステップにおいて、タイミング検証装置11は、予め抽出したパルス幅の特性情報、PTV条件、入力クロックのパルス幅、CK端子までの到達時間、セル種類、等に基づいて、パルス幅変動係数を算出する。
次に、タイミング検証装置11は、ステップ27において、パルス幅チェック処理を行う。この処理において、タイミング検証装置11は、先に算出したパルス幅変動係数に基づいて、バラツキ量を含むパルス幅を算出し、そのパルス幅と規格値とを比較する。また、タイミング検証装置11は、ステップ28において、先に算出したパスにおける遅延値に基づいてタイミング検証を行う。
次に、タイミング検証装置11は、ステップ29において、ステップ27における比較結果と、ステップ28における検証結果に基づいて、その半導体集積回路の設計が適切か否か(設定された仕様範囲に検証結果(パルス幅やタイミングマージン)が含まれるか否かを判断する。
次に、パルス幅検証について詳述する。
[パルス幅のバラツキ]
従来方法では、特性が変動したときのパルス幅を、バラツキを考慮した遅延値を用いて表現している。特に、パルスを形成する立ち上がりエッジの遅延値(立ち上がり遅延値:ライズ遅延値)と立ち下がりエッジの遅延値(立ち下がり遅延値:フォール遅延値)の一方にバラツキによる遅延値を含める、つまり、別々の条件によって算出したライズ遅延値とフォール遅延値によって決定されるパルス幅を評価していた。
これに対し、本実施形態では、パルス幅の特性変動係数を定義し、パルス幅の変動係数を用いて、特性が変動した時のパルス幅を表現する。例えば、半導体集積回路は、図3(a)に示すように、クロック信号ckをフリップフロップ(FF)31に伝達するパス32を含む。このパス32は、クロック信号ckを複数のセル33を経由してFF31に供給する。図3(b)に示すように、このFF31の入力端子31aにおける信号ck1は、クロック信号ckに対して、パス32による遅延と、パス32におけるバラツキによりパルス幅が異なる。
入力信号であるクロック信号ck(Hレベル)のパルス幅をpw(H)、ライズ遅延値をDr、フォール遅延値をDf、パルス幅変動係数をKとした場合、タイミング検証を行う対象となるインスタンス(セル)の入力端子におけるパルス幅、つまりFF31のクロック入力端子31aにおける信号ck1のパルス幅(Hレベル)をwF(H)とし、
wF(H)=(pw(H)+Df−Dr)×K
により算出する。
つまり、ライズ遅延値Drとフォール遅延値Dfについて同じ条件の値を用い、入力端におけるクロック信号ckをパス32によって伝達したFF31の入力端子におけるパルス幅(pw(H)+Df−Dr)にパルス幅変動係数Kを乗算する。
尚、パルス幅変動係数Kは1以下の値であり、バラツキが大きいほど値を小さくする。これは、FF等の回路素子が正常に動作するためには、バラツキによってパルス幅が小さくなった場合に注意を要する。FFの入力端子におけるセットアップタイムやホールドタイムが短くなると、正確にデータを保持することができなくなるためである。
[パルス幅変動係数の定義]
パルス幅変動係数Kは、基準となるパルス幅に対し、バラツキを考慮したパルス幅の比で算出する。
例えば、ワーストプロセス時のパルス幅に対するバラツキ時のパルス幅のパルス幅変動係数K(w)は、
K(w)=(バラツキ時のパルス幅)/(ワーストプロセス時のパルス幅)
と表される。同様に、ベストプロセス時のパルス幅に対するバラツキ時のパルス幅の変動係数を表すことができる。
[パルス幅の変動に考慮する条件]
パルス幅変動係数Kは、係数式の分子にバラツキ時のパルス幅の値を用い算出することから、立ち上がりエッジ及び立ち下がりエッジの両方の変動を考慮しパルス幅変動として算出することができる。
プロセスのバラツキ量には、従来同様に、プロセスのバラツキ量を定義し、プロセスが変動した場合のパルス幅を評価し、そのパルス幅を用いてもよいが、特性の保証としては、パルス幅が最も小さくなる条件を考慮した方がよい。Hレベルのパルス幅が最も小さくなる条件は、立ち上がりエッジが遅くなり、立ち下がりエッジが早くなることである。これは、例えばCMOS回路で考えた場合、バラツキが無いときの各トランジスタの駆動能力に対して、PチャネルMOSトランジスタの駆動能力が大きく、NチャネルMOSトランジスタの駆動能力が小さいときに該当する。このような場合を含むようにパルス幅変動係数Kの値を設定する。
[パルス幅の回路変数による変動要因の把握]
上記したように、パルス幅は、
wF(H)=(pw(H)+Df−Dr)×K
と表され、入力端におけるパルス幅pw(H)と、ライズ遅延とフォール遅延の差の絶対値|Df−Dr|の大小関係によりのパルス幅変動係数Kが異なる。
例えば、ワーストプロセス時の立ち下がり遅延及び立ち上がり遅延をfallmax,risemax(fallmax<risemax)、バラツキの立ち下がり遅延及び立ち上がり遅延をfalls,rises(falls<rises)とする。fallmax,risemaxは設計に用いるライブラリデータに格納された値であり、falls,risesはシミュレーションにより求められた値である。
そして、ワーストプロセス時の立ち上がり遅延と立ち下がり遅延の差の絶対値が、バラツキの立ち下がり遅延及び立ち上がり遅延の差の絶対値に対して、|fallmax−risemax|<<|falls−rises|の関係がある場合、パルス幅変動係数Kは、
K=(pw(H)+falls−rises)/(pw(H)+fallmax−risemax)
により求められる。
そして、上記の式により求めたパルス幅変動係数を用いてバラツキを考慮したパルス幅を算出する。尚、pw(H)は半導体集積回路のチップ毎に設定される値であり、ライズ遅延値及びフォール遅延値はパストレースの結果を含む。
パルス幅の変動要因は以下の項目が考えられる。そして、パルス幅が小さくなる場合を考慮すればよいため、上記式の分子を小さくする要因を考える。
(a)入力のパルス幅[pw(H)]:入力信号のパルス幅が小さい程、遅延値によるパルス幅変動係数Kは小さくなる。
(b)パスの回路段数:回路段数が多い程、パルス幅変動係数Kは小さくなる。1段(バッファ等の1つの回路素子)あたりのフォール遅延値とライズ遅延値の差を固定値とした場合、段数が増えるだけ、フォール遅延値とライズ遅延値の差は大きくなり、パルス幅変動係数Kは小さくなる。
(c)セル依存:回路を構成するセルによりパスの累積遅延値としてフォール遅延値とライズ遅延値の差が大きくなる程、パルス幅変動係数Kが大きい。同一位相が繰り返される場合、つまりtrue論理のセルの繰り返しの場合にフォール遅延値とライズ遅延値の差が最も大きくなる。
これらの要因が考えられ、これらの要因に対しパルス幅の変動を評価し、パルス幅のバラツキとして表現すれば、特性を反映することができる。
ところで、入力のパルス幅は、動作周波数に置き換えることができ、パスの回路段数は、入力からの遅延値として置き換えることができる。動作周波数と入力からの遅延値は、チップを設計する上で容易に得られるパラメータである。
これにより、パルス幅の変動係数は、動作周波数と入力からの遅延値による相関で表現することが可能になる。
例えば、図4(a)に示すように、入力端から3つのバッファ回路41,42,43を介してFF44のクロック入力端子44aにクロック信号ckを供給するパス45がある。このパス45において、2段目のバッファ回路42の入力端子42aにおける信号ckaと、3段目のバッファ回路43の入力端子43aにおける信号ckbにおいて、それら信号cka,ckbには前段のセルを通過する分の遅れが発生する。同様に、FF44のクロック入力端子44aにおける信号ckcは、前段までのセルを通過する分の遅れが発生する。このため、図4(b)に示すように、クロック信号ckの立ち上がりエッジと信号ckcの立ち上がりエッジの時間差がパス遅延値Tpdとなる。
そして、クロック信号ckのようにパルスが繰り返す信号では、仮にデューティ50パーセントとした場合、パルス幅(周期)の逆数が周波数となる。従って、図5に示すように、横軸をパス遅延値とし、縦軸をパルス幅変動係数Kとした場合、それらの特性は、パス遅延値が大きいほどパルス幅変動係数Kの値が小さくなる特性である。更に、動作周波数が高い(サイクルタイムが短い)ほどパルス幅変動係数Kが小さくなる。
このような特性を持つパルス幅変動係数Kは、
K=Ka*f*Tpd+1
と表現することが可能である。尚、Kaはセル、Hレベルのパルス、Lレベルのパルス、PTV条件に依存する係数であり、負の値を持つ。
これにより、回路条件、プロセスバラツキを考慮したパルス幅のパルス幅変動係数を表現することができる。
[パルス幅のチェック式]
パルス幅の変動係数を用い、パルス幅のチェック式を下記のようにする。
Width(H)={pw(H)+fall−rise}*K > tPW
尚、Width(H)は対象セルの入力端子におけるパルス幅、pw(H)は外部入力のパルス幅、fallはフォール遅延値、riseはライズ遅延値、tPWは対象セルの規格値、Kは回路の動作周波数、Pathの遅延、に依存するパルス幅変動係数である。
尚、上記の式はHレベルのパルス幅をチェックするためのものである。Lレベルのパルス幅をチェックする場合、次の式、
Width(L)={pw(L)+rise−fall}*K > tPW
を用いる。
[検証]
タイミング検証装置11は、上記した式及び値に基づいてパルス幅検証を行う。回路上の対象セルのタイミングチェックを行なう場合、パルス幅のチェック式に必要な入力パルス幅および回路の遅延値、また、パルス幅変動係数の算出に必要な動作周波数と入力からの遅延値を入手し、パルス幅のチェックを行う。
例えば、ワースト条件におけるパルス幅をチェックする場合、
Width(H)={pw(H)+fallmax−risemax}*Kw
> tPW
尚、fallmaxはワースト条件でのフォール遅延値、risemaxはワースト条件でのライズ遅延値、kwはワースト条件を基準にしたパルス幅変動係数である。
Lレベルのパルス幅をチェックする場合には、上記の式と同様に、
Width(L)={pw(L)+risemax−fallmax}*Kw
> tPW
により検証する。更に、ベスト条件の解析を行う場合、ベスト条件を基準としたパルス幅変動係数を用いる。
次に、タイミング検証について詳述する。
[バラツキ量緩和]
パスの遅延は、各セルに供給される電源電圧の影響を受ける。低い電圧の電源が供給されるセルは、それよりも高い電圧の電源が供給されるセルに比べて動作速度が遅いため遅延が大きくなる。チップ内の各セルに供給される電源の電圧値は、そのチップの電源供給位置、チップ内のセルの配置位置、セルの密度や使用電流量によって異なる。従来では、チップ内において最も低い電圧、つまり供給する電源電圧からの電圧低下量(ドロップ量)が最も大きい値の電圧を全てのセルに対して供給していることにしていた。
しかし、実際の回路では、全セルに対し同じ値の電圧降下が発生しているわけではない、即ち実際に最大のドロップ量が発生しているセルと、それよりも小さなドロップ量が発生しているセルとが1つのパス中に混在する。このため、パス中の各セルについて適切なドロップ量を設定することで、パスにおける遅延のバラツキ量を緩和し(小さくし)、実際のチップに近いタイミング検証を行うものである。
[チップにおけるドロップ量]
今、図6に示す半導体チップ50がある。この半導体チップ50は、コア部51の周囲にはI/O部52が設けられ、その外側に電源電圧Vddを供給するための複数のパッド53が形成されている。
コア部51は、図7に示すように、FF61,62に対してクロック信号ckを供給するクロックパスPCと、クロック信号ckが分岐されデータを伝達するデータパスPDを含む。また、2つのFF61,62間には複数のセルを含む。尚、複数のセルは、図6において破線で囲まれた矩形として表してある。
図10は、半導体チップ50における電源電圧の分布を示す説明図である。
半導体チップ50における電源電圧のドロップ量(IRD)は、コア周辺部P1,P2からコア中心部P0に向けて徐々に増大している。つまり、図9に示すように、半導体チップ50における電源電圧のドロップ量は、チップ50の周辺から中心部に向かって徐々に増加する。尚、図10に示すように、チップ50におけるドロップ量は、コア中心部P0で最大値Vdpmax、コア周辺部P1,P2で最小値Vdpminである。尚、IRDとチップ周辺からの距離の相関は、チップ内の分布に応じて、直線、2次関数、exp関数などで近似することができるが、標準の相関関係を2次関数とした。
外部から供給されたクロック信号ckに基づくデータパスPDとクロックパスPCは、クロック信号ckを供給する端子とFF61,62の配置により決定される。しかし、図9に示す用意電源電圧のドロップ量が分布している場合、同図に示すように、チップの周辺部を通るパスPAと、中心部を通るパスPBがIRDの影響を最も受ける。
尚、パスの長さは、セルの配置によって異なる。例えば、図8(a)は、FF61,62が近い場合のパスPA,PBの経路を示す。また、図8(b)は、FF61,62間が遠い場合のパスPA,PBの経路を示す。また、図8(c),図8(d)は、FF61,62間が更に遠い場合を示す。
[パスディレイでの影響度]
タイミング検証装置11は、タイミングチェックにおいて、FF62の動作を確保するため、FF62のクロック入力端子62aとデータ入力端子62bにおける信号のタイミングをチェックする。この時、クロックパスPCとデータパスPDを構成するセルに供給される電源の電圧値に差があることを想定し、クロック信号とデータ信号の遅延差が小さくなる条件でチェックを行う。つまり、電圧差に応じて、遅延の変動係数(OCV係数)を算出し、そのOCV係数によってばらつきを考慮した遅延値を算出し、タイミングチェックに使用する。
図11(a)及び図11(b)は、パス遅延が最も大きい値(最遅値)の場合におけるOCV係数の考慮の仕方を示している。図11(a)に示すように、クロック信号CKの立ち上がりに対して、セットアップタイムのタイミングチェックを行う。このチェックにおいて、セットアップ期間(クロック信号CKの立ち上がり時間より前にデータDataが確定している必要のある期間)が短い方がタイミング的に厳しいチェックとなる。セットアップ期間を短くするには、データDataが遅くなるか、クロック信号CKが早くなることによる。しかし、最遅値を扱っているためデータDataがこれ以上遅くなることはない。従って、クロック信号CKを早くするようにOCV係数を設定する。同様に、図11(b)に示すように、ホールド期間(クロック信号CKの立ち上がり時間より後にデータDataを保持する必要のある期間)のチェックにおいて、データDataを早くするようにOCV係数を設定する。
図11(c)及び図11(d)は、パス遅延が最も小さい値(最速値)の場合におけるOCV係数の考慮の仕方を示している。図11(c)に示すように、クロック信号ckの立ち上がりに対して、セットアップタイムのタイミングチェックを行う。このチェックにおいて、セットアップ期間が短い方がタイミング的に厳しいチェックとなる。セットアップ期間を短くするには、データdataが遅くなるか、クロック信号ckが早くなることによる。しかし、最速値を扱っているためクロック信号ckがこれ以上早くなることはない。従って、データdataを遅くするようにOCV係数を設定する。同様に、図11(d)に示すように、ホールド期間のチェックにおいて、クロック信号ckを遅くするようにOCV係数を設定する。
タイミング検証装置11は、上記の4つの方法によって、オンチップバラツキを考慮したタイミングチェックを実施する。一方のパス側の遅延の変動分がバラツキ考慮分に相当するが、この部分をパスの遅延としての影響として考慮する。
タイミング検証装置11は、ワースト解析を行う場合、バラツキによりエッジのタイミングが早くなる方向のOCV係数を用いる。また、タイミング検証装置11は、ベスト解析を行う場合、バラツキによりタイミングが遅くなる方向のOCV係数を用いる。即ち、図2に示す記憶装置14には、予め用意されたワースト解析用のOCV係数と、ベスト解析用のOCV係数とが記憶されており、タイミング検証装置11はこれらOCV係数を記憶装置14から読み出してタイミング検証を実行する。
尚、バラツキには、プロセスバラツキ、電圧バラツキ、温度バラツキが含まれ、それらの値をセルの遅延として考慮する必要がある。しかし、実際のパスを想定した場合、パスを構成するセルの遅延は、全体のパスの遅延として見ることができる。従って、タイミング検証装置11は、バラツキ量をパスの遅延における変動分として扱う。
[タイミングチェックに考慮する電圧バラツキ量]
上記したように、半導体チップ50では、セルや配線等の配置位置によって電圧分布が存在する。これを、パス遅延として変動する分の電圧降下量(ドロップ量)を見込み考慮する。例えば、図11(d)に示すタイミングを検証する場合、クロックパス側が遅れる分を算出する。今、このデータパスPDの段数を4段とし、4個のセルの配置位置を考慮してパス遅延を算出する。
基準電位におけるパス遅延に対してどれだけ遅くなるかを概算する。基準電位の設定値は、タイミング検証の条件によって異なる。例えば、図11(c)(d)のように最速値を扱う場合、パスにおける電源電圧の最大値(例えば、チップの入力端における電圧)を基準電位とする。
基準電位の電源電圧が供給されたセルの遅延値をTpd、4つのセルに対する変動係数を0.05,0.1,0.15,0.2とする。この場合、パスにおける遅延の変動分は、
Tpd*0.05+Tpd*0.1+Tpd*0.15+Tpd*0.2
=4*Tpd*0.5
=4*(Tpd*0.125)
となる。
つまり、遅延の変動分としては、4*Tpd*0.5を考慮すればよい。ちなみに、従来技術によれば、最大ドロップ量に対する変動係数を0.2とした場合、全てのセルに対してこの変動係数を用いるため、遅延の変動分として4*(Tpd*0.2)=4*Tpd*0.8を考慮していた。
パスのバラツキ分としては、各セルに配分して考慮することから、遅延の変動分をセルの数で割った分、つまり平均的な変動分を考慮すればよい。上記の計算では、全体の遅延の変動分が4*(Tpd*0.125)であるため、各セルには0.125を変動係数として演算を行えばよいことになる。
ところで、遅延変動分は、電圧変動分との相関で決まるため、平均的な遅延変動分を求めるためには、電圧変動分に平均値を使用すればよい。
上記では、クロックパスPCにおける変動算出であるが、データパスPDについても同様に行うことができる。また、図11(a)(b)のように最遅遅を扱う場合、パスにおける電源電圧の最小値(例えばチップの中心部における電圧)を基準電位とすることで、上記と同様に遅延の変動分を算出することができる。
[クロックパスとデータパスの相関関係]
電圧バラツキを考慮したタイミングチェックが必要な場合は、クロックパスとデータパスにおいて、各パスが通過する経路が離れている場合や、チップ内のドロップ量の違う領域を通過する場合に考慮しなければならない。
タイミングチェックのFFとそれを駆動するクロック信号ckの入力端子の配置位置、クロック信号ckの分岐位置が近い場合には、電圧ドロップの変動が少ないので、電圧分布を考慮しない。
タイミングチェックのFFとそれを駆動するクロック信号ckの入力端子の配置位置、クロック信号ckの分岐位置が離れている場合には、電圧ドロップの影響を受ける。
しかし、距離が長いパスでも、配線長制限や遅延最適化やslew制御、クロストーク対策によってある程度の均等な間隔でセルが配置されたり、ネットが分割されたりするため、データパスのセルとクロックパスのセルが完全に違う領域にあることは少ない。
また、ドロップ量の大きな領域を通過するパス(図9に示すパスPB)において、このパスPBを構成する複数のセルがその経路の電圧分布に応じた電源が供給されるため、パスに含まれる全てのセルについて最大ドロップ量を考慮する必要はない。
つまり、電圧値が異なる領域を通過するパスは、電圧ドロップ値を考慮する必要がある。それは、長い距離のパスであり、クロックパスPCが対象になると考えられる。クロックパスPCにはバッファセルが使用されており、均等な負荷分配が考えられることから、上記で述べたように平均的な変動分を考慮すればよい。
近距離のデータパス、ランダムな論理回路群は電圧ドロップの影響を受けにくいため、タイミング検証装置11はチップ全体のバラツキの平均的な値を考慮する。これによるマージンは実用上十分である。
[インスタンス電圧値の考慮方法]
OCV係数は、設計の初期から考慮する場合もあり、各インスタンスにおけるドロップ値が確定する前(レイアウト前などの設計の初期段階)では、可能性のあるドロップ量を考慮しておく必要がある。
ドロップ量の影響を受ける最大のパスは、最大ドロップ部を通過するパスであることから、最大ドロップ量とパス中におけるインスタンス数、チップ内のドロップ分布を想定し、パス中のインスタンスのドロップ値を算出し、平均化する。
実際のレイアウト状況を想定し、最大ドロップ量とパス中におけるインスタンス数、チップ内の電圧分布を想定した演算を行うことで、悲観性の少ないOCV係数を算出することが可能になる。
[OCVを考慮するバラツキ量の算出方法]
OCVを考慮するバラツキ量は、パス中の各インスタンスの電圧バラツキ値の平均値で算出することから、
電圧バラツキ量
=Σ(パス中のインスタンスのバラツキ量)/(パス中のインスタンス数)
尚、インスタンスのバラツキ量は基準電圧値に対する差を表す。そして、遅延速い側の場合はインスタンスのドロップ量を、遅延遅い側の場合は(最大ドロップ量−インスタンスのドロップ量)により求める。
の式で算出する。
しかし、パス中のインスタンスのドロップ量が不明な場合がある。半導体チップのレイアウトを終了して寄生容量や電源ネットが解って初めてチップにおける電圧ドロップ量の分布が解る。寄生容量や電源ネットが解る前、更にはレイアウトよりも前にドロップ量を考慮しておかなければ多くのバイオレーション(違反)が発生する。このため、できるだけドロップ量、形状(電位差分布)を見積もって(予測して)値を決めていくことが必要となっている。このように、インスタンスの配置位置、電位差分布、等が解っていない状態で解析を行う場合に下記の方法に従って行うようにする。
(1)パス中のインスタンス(セル)の数、ドロップの分布傾向、最大ドロップ量から各インスタンスの電圧値を求め、平均化処理する方法。
パス中のセルの数、ドロップの分布傾向、最大ドロップ量が入力され、最大ドロップまでのパスにおいて均等な距離で配置されたことを想定し、各セルのドロップ量を算出する。
クロックパス、データパス中に含まれるであろうセルの数(最小の数)が解る場合と、電位差分布(電圧ドロップ)の傾向がある程度予想できる場合と、ピークの値が解る場合と、この3つの値が解れば計算できる。
ドロップの分布傾向には、図12(a)〜(c)に示すように、距離に対し直線的な傾き、2次曲線的な傾き、exp関数的な傾きなどがあり、それらの中から選択した上で、均等な距離で配置された各インスタンスのドロップ量を算出する。尚、図12(a)〜(c)において、横軸はチップ中心からの距離L、縦軸は電源電圧値を示す。
(2)パス長さ(距離)、配線長制限値から、セル数を算出し、ドロップ量の分布傾向、最大ドロップ量から各インスタンスの電圧値を求め、平均化処理する方法。
パス中のセルの数は不明。おおよそのチップサイズは解ることからパスの長さが予測できる。設計上の制約(周波数)などが解ればスルーレート:波形のなまりの値とかが制限されてきて、配線長制限もだいたい解る、パスの長さと配線長制限があればパス中のセルの数を概算する。パス中のセルの数が想定できない場合には、パスの距離と配線長制限値からセル数を求めた上で、上記(1)と同様の手順で算出する。
(3)配置情報から、各インスタンスの電圧値を求め、平均化処理する方法。
想定されるパスのインスタンスの配置位置から、各インスタンスの電圧値を算出する。フロアプランでどのあたりに配置されるか解ればおおよそのドロップ量を見積もることができる。チップの周辺あるいは中心からセルまでの距離・方向を概算することができ、そのセルにおける電圧ドロップを算出する。上記(1)では、均等な距離で配置されたことを想定したが、周辺からの距離やパス間の距離情報を与えることで、インスタンスの電圧値の精度が向上する。
[OCV係数算出の手順]
OCV係数の算出は、プロセス、温度、電圧がTypical時の遅延値を1として、プロセス、温度、電圧の条件を振った場合の遅延の係数グラフを基に算出する。
品種の電圧および温度条件、想定するばらつき量を入力し、指定した条件でのOCV係数を算出する。図13は、その結果を示し、図14は従来方法により算出したOCV係数を示す。
具体的には、図15(a)に示すように、プロセスにおける変動量を正規化した値(ティピカルの時を「0」、プロセスワーストを「1」、プロセスベストを「−1」)とプロセスに対する遅延係数Kpについてのグラフ(実際には特性データを格納したマップ)を用いる。このマップは図2に示す記憶装置14に格納されている。この時、遅延係数Kpは「+1」の時に1.2倍、「−1」の時に0.8倍、となる。
同様に、電源電圧に対する遅延係数Kvについて、電源電圧1.0〜1.3V[ボルト]の範囲において図15(b)に示す特性を持つ。同様に、温度に対する遅延係数Ktについて、温度―40℃〜125℃の範囲において図15(c)に示す特性を持つ。この特性値のデータを有しており、指定した条件(温度等)に応じた係数値を得る。これら値を演算して基準OCV係数を算出する。
尚、上記手順では電圧バラツキを扱う方法について説明したが、温度バラツキについても同様に扱うことができる。例えば、チップにおける電圧降下分布と同様に、温度の分布が得られる場合には、上記の電圧におけるOCV係数を求めた方法と同様にして温度におけるOCV係数を求めることが可能である。
以上記述したように、本実施の形態によれば、以下の効果を奏する。
(1)入力されるクロック信号ckのパルス幅と、そのクロック信号ckの遅延値と動作周波数に応じたパルス幅変動係数とによってそのクロック信号ckが伝達されるFF31,44の入力端子31a,44aにおけるパルス幅Width(H)を算出し、該最終パルス幅Width(H)と規格値tPWとを比較するようにした。FF31,44の入力端子31a,44aにおけるパルス幅は、クロック信号ckのパルス幅と、パスにおける立ち上がり遅延及び立ち下がり遅延とにより算出される。従って、同じ条件における立ち上がり遅延及び立ち下がり遅延を用いることができ、パルス幅自体の変動量を扱うことで、FF31,44の入力端子31a,41aにおけるパルス幅を正確に算出して精度の高い検証を行うことができる。
(2)パルス幅変動係数Kは、基準となるパルス幅と、バラツキを考慮したパルス幅の比である。基準となるパルス幅をプロセスの条件(ワースト、ベスト)とすることで、各条件における検証を容易に行うことができる。
(3)パルス幅変動係数Kは、パルスの遅延値と、信号の周波数と、周波数及び遅延値に基づく係数と、により算出されるものである。従って、パルス幅の変動を動作周波数と入力からの遅延値の相関で表現することが可能となり、検証を容易に行うことができるようになる。
(4)半導体チップ50においてクロック信号,データ信号を伝達するクロックパスPCとデータパスPD全体のバラツキ量を決定し、それぞれのバラツキ量を各パスに対する遅延係数に変換する。そして、遅延係数に基づいてFF62の入力端子における各信号のタイミングチェックを行うようにした。従って、パスにおけるバラツキ量を緩和し、チップ内において発生する可能性のあるバラツキの最大値を考慮する場合に比べて、精度の高いタイミング検証を行うことができる。
(5)各セルにおけるバラツキ量を、基準電圧に対する各セルの電圧降下量(ドロップ量)とした。このため、各セルに供給される電源電圧に応じた遅延を考慮してタイミング検証を行うことができるため、最大電圧降下量により検証する場合に比べて精度の高い検証を行うことができる。
(6)各パスにおけるバラツキ量を、各パスに含まれるセルの数、電圧分布、最大電圧降下量から各インスタンスにおける電源電圧値を算出し、該電圧値を平均化処理して値を各インスタンスにおける電源電圧値とした。その結果、レイアウトが決定していない段階においてパスにおける遅延を概略的に求めることができ、早い段階におけるタイミング検証を行うことができる。
(7)各パスに含まれるインスタンスの数を、パスの長さ、配線長制限値から算出するようにした。その結果、インスタンス数が決定してない設計段階においてパスの遅延を概略的に求めることができ、それによってタイミング検証を早い段階において実施することができる。
尚、上記実施の形態は、以下の態様で実施してもよい。
・上記実施形態ではタイミングチェックとパルス幅チェックを同時に行うようにしたが、別々に行うようにしてもよい。その場合、タイミングチェックに必要な処理と、パルス幅チェックに必要な処理を別々のプログラムとして実行するようにしてもよい。
・上記実施形態では、タイミングチェックにおいて、データ信号とクロック信号との間のタイミング(セットアップ時間,ホールド時間)について検証する場合について説明したが、その他の検証対象となるタイミング(リムーバル時間、リカバリ時間など)について検証するようにしてもよい。リムーバル時間は、規定された入力端子におけるデータが解除されてから、関連する他の入力端子(例えばクロック入力)を変化させることができるまでの時間である。この場合、クロック信号、データ信号以外に、イネーブル信号などの制御信号、クリア端子,プリセット端子に供給される信号が検証対象の信号となる。
・上記実施形態では、電圧のバラツキ量に基づいてタイミングチェックを行うようにしたが、温度のバラツキ量やプロセスのバラツキ量に基づいて、同様にしてタイミングチェックを行うようにしてもよい。
上記各実施の形態から把握できる技術的思想を以下に記載する。
(付記1) チップ検証対象とするインスタンスの入力端子において検証対象とする信号のパルス幅を検証する検証方法であって、
前記信号の供給地点におけるパルス幅と、前記信号の遅延値と動作周波数に応じたパルス幅変動係数とによって前記入力端子における前記信号のパルス幅を算出し、該パルス幅と規格値とを比較するようにしたことを特徴とする検証方法。
(付記2) 前記入力端子におけるパルス幅を、
前記供給地点におけるパルス幅と、
前記供給地点における信号の立ち上がりエッジと前記入力端子における信号の立ち上がりエッジの時間差であり解析の条件における立ち上がり遅延値と、
前記立ち上がり遅延値と同じ条件にて算出され、前記供給地点における信号の立ち下がりエッジと前記入力端子における信号の立ち下がりエッジの時間差である立ち下がり遅延値と、
により算出するようにしたことを特徴とする付記1記載の検証方法。
(付記3) 前記パルス幅変動係数は、基準とする条件におけるパルス幅と、バラツキを考慮したパルス幅の比であることを特徴とする付記1又は2記載の検証方法。
(付記4) 前記パルス幅変動係数は、前記信号を伝達するパスの遅延値と、前記信号の周波数と、周波数及び遅延値に基づく係数と、により算出されるものであることを特徴とする付記1,2又は3記載の検証方法。
(付記5) チップ上の素子の入力端子における信号のパルス幅を検証する検証装置であって、
前記信号を伝達するパスの始点におけるパルス幅と、前記信号の遅延値と動作周波数に応じた変動係数とによって前記入力端子におけるパルス幅を算出する算出手段と、該パルス幅と規格値とを比較する比較手段とを備えたことを特徴とする検証装置。
(付記6) チップ上にあるインスタンスにおいて、2つの入力端子間における信号のタイミングを検証する検証方法であって、
半導体チップにおいて前記各信号を伝達するパス全体の遅延として考慮すべきバラツキ量を決定し、該バラツキ量をそのパスに対する遅延係数に変換し、該遅延係数に基づいて該パス全体に対する遅延値を算出し、該算出した遅延値に基づいて前記信号のタイミングを検証するようにしたことを特徴とする検証方法。
(付記7) 前記パス全体におけるバラツキ量をパス中の各インスタンスのバラツキ量の総和をパス中のインスタンス数で除算して求めることを特徴とする付記6に記載の検証方法。
(付記8) 各インスタンスのバラツキ量は基準電圧に対して各インスタンスに供給される電源電圧の差であることを特徴とする付記6又は7に記載の検証方法。
(付記9) 信号の遅延を基準に比べて速くして検証する場合にはインスタンスのバラツキ量に各インスタンスにおけるドロップ量を設定し、信号の遅延を基準に比べて遅くして検証する場合には最大ドロップ量と各インスタンスのドロップ量の差を各インスタンスのバラツキ量に設定することを特徴とする付記6〜8のうちの何れか一つに記載の検証方法。
(付記10) パス中のインスタンス数、電圧分布、最大電圧降下量から各インスタンスにおける電源電圧値を算出し、該電圧値を平均化処理して電圧のバラツキ量を算出することを特徴とする付記6〜9のうちの何れか一つに記載の検証方法。
(付記11) 前記パス中のインスタンス数を、パスの長さ、配線長制限値から算出することを特徴とする付記10に記載の検証方法。
(付記12) 配置情報から各インスタンスにおける電源電圧値を算出し、該電圧値を平均化処理して電圧のバラツキ量を算出することを特徴とする付記6〜11のうちの何れか一つに記載の検証方法。
(付記13) プロセス・温度・電圧の標準条件における遅延値を1とし、条件を変更した場合の遅延値を持つ係数特性データに基づいて、指定された条件に応じた遅延値を取得し、該遅延値を演算してOCV係数を算出することを特徴とする付記6〜12のうちの何れか一つに記載の検証方法。
(付記14) 付記6〜13の何れか一つにて算出した電圧のバラツキ量を考慮して緩和したOCV係数を算出することを特徴とする付記6〜13のうちの何れか一つに記載の検証方法。
(付記15) チップ上にあるインスタンスにおいて、2つの入力端子間における信号のタイミングを検証する検証装置であって、
半導体チップにおいて前記各信号を伝達するパス全体の遅延として考慮すべきバラツキ量を決定する決定手段と、該バラツキ量をそのパスに対する遅延係数に変換し、該遅延係数に基づいて該パス全体に対する遅延値を算出する算出手段と、該算出した遅延値に基づいて前記信号のタイミングを検証する検証手段とを備えたことを特徴とする検証装置。
本実施形態のタイミング検証処理のフローチャートである。 タイミング検証装置の概略構成図である。 (a)はパスを示す回路図、(b)はパルス幅変動を示す波形図である。 (a)はパスを示す回路図、(b)はパルス幅変動を示す波形図である。 遅延値と変動係数の関係を示す特性図である。 半導体チップの概略構成図である。 パスを示す回路図である。 (a)〜(d)はチップにおけるパスを示す説明図である。 半導体チップにおける電圧降下分布を示す説明図である。 半導体チップにおける電源電圧の分布を示す説明図である。 (a)〜(d)はパスディレイの影響を示す波形図である。 (a)〜(c)はチップ上の位置に対する電圧降下を示す特性図である。 OCV係数を示す説明図である。 従来のOCV係数を示す説明図である。 (a)はプロセスに対する変動係数を示す特性図、(b)は電源電圧に対する変動係数を示す特性図、(c)は温度に対する変動係数を示す特性図である。 従来のタイミング検証処理のフローチャートである。 (a)はパスを示す回路図、(b)は(a)の動作波形図である。 (a)はパスを示す回路図、(b)は(a)の動作波形図である。
符号の説明
31,44 インスタンス(セル)
31a,44a 入力端子
50 半導体チップ
ck クロック信号
CK1,ckc 信号
data データ
K パルス幅変動係数
32,45,PA〜PD パス
PC クロックパス
PD データパス
pw,Width パルス幅
tPW 規格値

Claims (10)

  1. チップ検証対象とするインスタンスの入力端子において検証対象とする信号のパルス幅を検証する検証方法であって、
    前記信号の供給地点におけるパルス幅と、前記信号の遅延値と動作周波数に応じたパルス幅変動係数とによって前記入力端子における前記信号のパルス幅を算出し、該パルス幅と規格値とを比較するようにしたことを特徴とする検証方法。
  2. 前記入力端子におけるパルス幅を、
    前記供給地点におけるパルス幅と、
    前記供給地点における信号の立ち上がりエッジと前記入力端子における信号の立ち上がりエッジの時間差であり解析の条件における立ち上がり遅延値と、
    前記立ち上がり遅延値と同じ条件にて算出され、前記供給地点における信号の立ち下がりエッジと前記入力端子における信号の立ち下がりエッジの時間差である立ち下がり遅延値と、
    により算出するようにしたことを特徴とする請求項1記載の検証方法。
  3. 前記パルス幅変動係数は、基準とする条件におけるパルス幅と、バラツキを考慮したパルス幅の比であることを特徴とする請求項1又は2記載の検証方法。
  4. 前記パルス幅変動係数は、前記信号を伝達するパスの遅延値と、前記信号の周波数と、周波数及び遅延値に基づく係数と、により算出されるものであることを特徴とする請求項1,2又は3記載の検証方法。
  5. チップ上の素子の入力端子における信号のパルス幅を検証する検証装置であって、
    前記信号を伝達するパスの始点におけるパルス幅と、前記信号の遅延値と動作周波数に応じた変動係数とによって前記入力端子におけるパルス幅を算出する算出手段と、該パルス幅と規格値とを比較する比較手段とを備えたことを特徴とする検証装置。
  6. チップ上にあるインスタンスにおいて、2つの入力端子間における信号のタイミングを検証する検証方法であって、
    半導体チップにおいて前記各信号を伝達するパス全体の遅延として考慮すべきバラツキ量を決定し、該バラツキ量をそのパスに対する遅延係数に変換し、該遅延係数に基づいて該パス全体に対する遅延値を算出し、該算出した遅延値に基づいて前記信号のタイミングを検証するようにしたことを特徴とする検証方法。
  7. 前記パス全体におけるバラツキ量をパス中の各インスタンスのバラツキ量の総和をパス中のインスタンス数で除算して求めることを特徴とする請求項6に記載の検証方法。
  8. 各インスタンスのバラツキ量は基準電圧に対して各インスタンスに供給される電源電圧の差であることを特徴とする請求項6又は7に記載の検証方法。
  9. パス中のインスタンス数、電圧分布、最大電圧降下量から各インスタンスにおける電源電圧値を算出し、該電圧値を平均化処理して電圧のバラツキ量を算出することを特徴とする付記6〜9のうちの何れか一つに記載の検証方法。
  10. チップ上にあるインスタンスにおいて、2つの入力端子間における信号のタイミングを検証する検証装置であって、
    半導体チップにおいて前記各信号を伝達するパス遅延として考慮すべきバラツキ量を決定する決定手段と、該バラツキ量をそのパスに対する遅延係数に変換し、該遅延係数に基づいて該パス全体に対する遅延値を算出する算出手段と、該算出した遅延値に基づいて前記信号のタイミングを検証する検証手段とを備えたことを特徴とする検証装置。
JP2004340797A 2004-11-25 2004-11-25 検証方法及び検証装置 Pending JP2006154951A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004340797A JP2006154951A (ja) 2004-11-25 2004-11-25 検証方法及び検証装置
US11/080,555 US7299438B2 (en) 2004-11-25 2005-03-16 Method and apparatus for verifying semiconductor integrated circuits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004340797A JP2006154951A (ja) 2004-11-25 2004-11-25 検証方法及び検証装置

Publications (1)

Publication Number Publication Date
JP2006154951A true JP2006154951A (ja) 2006-06-15

Family

ID=36460379

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004340797A Pending JP2006154951A (ja) 2004-11-25 2004-11-25 検証方法及び検証装置

Country Status (2)

Country Link
US (1) US7299438B2 (ja)
JP (1) JP2006154951A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010160572A (ja) * 2009-01-06 2010-07-22 Renesas Technology Corp クロストーク解析装置
JP2011238163A (ja) * 2010-05-13 2011-11-24 Renesas Electronics Corp 半導体集積回路のレイアウト方法、レイアウトシステム及びレイアウトプログラム
JP2012027630A (ja) * 2010-07-22 2012-02-09 Fujitsu Ltd 集積回路設計装置、集積回路設計方法、及び集積回路設計プログラム

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536663B2 (en) * 2005-02-25 2009-05-19 Verigy (Singapore) Pte. Ltd. Method and apparatus for quantifying the timing error induced by an impedance variation of a signal path
JP4629607B2 (ja) * 2006-03-31 2011-02-09 富士通セミコンダクター株式会社 半導体集積回路のタイミング検証方法及びタイミング検証装置
JP4964685B2 (ja) * 2007-06-21 2012-07-04 ルネサスエレクトロニクス株式会社 半導体集積回路の電源変動検証装置及び方法並びにそのプログラム
US8418102B2 (en) * 2008-04-29 2013-04-09 Lsi Corporation Optimization of library slew ratio based circuit
JP5298946B2 (ja) * 2009-02-25 2013-09-25 富士通セミコンダクター株式会社 設計支援プログラム、設計支援装置、および設計支援方法
JP2012053651A (ja) * 2010-09-01 2012-03-15 Renesas Electronics Corp タイミング解析方法、プログラム、及びシステム
JP2013222248A (ja) * 2012-04-13 2013-10-28 Renesas Electronics Corp タイミング解析プログラム、タイミング解析装置及びタイミング解析方法
US8782593B2 (en) * 2012-09-25 2014-07-15 Taiwan Semiconductor Manufacturing Company, Ltd. Thermal analysis of integrated circuit packages
US8806405B2 (en) * 2012-10-31 2014-08-12 Cadence Design Systems, Inc. Producing a net topology pattern as a constraint upon routing of signal paths in an integrated circuit design
KR20140133123A (ko) * 2013-05-09 2014-11-19 삼성디스플레이 주식회사 지연 파라미터 추출 장치 및 방법
JP2015166981A (ja) * 2014-03-04 2015-09-24 株式会社ソシオネクスト レイアウト検証方法、検証装置、及び検証プログラム
US10175297B2 (en) 2016-07-13 2019-01-08 International Business Machines Corporation Measuring a slew rate on-chip
CN106443202B (zh) * 2016-08-31 2018-11-23 西北核技术研究所 一种片上自触发单粒子瞬态脉冲宽度测量方法及***
CN117272889B (zh) * 2023-08-28 2024-04-30 海光云芯集成电路设计(上海)有限公司 一种电路延时的估计方法及装置、电子设备、存储介质

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4047057A (en) * 1976-08-23 1977-09-06 Rca Corporation Monostable switching circuit
US5222028A (en) * 1990-10-12 1993-06-22 Westinghouse Electric Corp. Pulse analysis system and method
US5239481A (en) * 1991-08-30 1993-08-24 International Business Machines Corporation Method for measuring pulse distortion
JP3625400B2 (ja) * 1999-09-22 2005-03-02 株式会社東芝 可変遅延素子のテスト回路
JP3329323B2 (ja) 1999-12-22 2002-09-30 日本電気株式会社 波形なまり検証方法及び波形なまり検証装置
US6643828B2 (en) * 2001-12-14 2003-11-04 Hewlett-Packard Development Company, L.P. Method for controlling critical circuits in the design of integrated circuits
US6661717B1 (en) * 2002-05-30 2003-12-09 Micron Technology, Inc. Dynamically centered setup-time and hold-time window
KR100500929B1 (ko) * 2002-11-27 2005-07-14 주식회사 하이닉스반도체 지연 고정 루프 회로
US7134062B2 (en) * 2003-08-12 2006-11-07 Via Telecom, Inc. Static timing analysis approach for multi-clock domain designs
JP2005122298A (ja) * 2003-10-14 2005-05-12 Fujitsu Ltd タイミング解析装置、タイミング解析方法及びプログラム
US7242233B2 (en) * 2003-10-23 2007-07-10 International Business Machines Corporation Simplified method for limiting clock pulse width

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010160572A (ja) * 2009-01-06 2010-07-22 Renesas Technology Corp クロストーク解析装置
JP2011238163A (ja) * 2010-05-13 2011-11-24 Renesas Electronics Corp 半導体集積回路のレイアウト方法、レイアウトシステム及びレイアウトプログラム
US8751991B2 (en) 2010-05-13 2014-06-10 Renesas Electronics Corporation Layout method, layout system, and non-transitory computer readable medium storing layout program of semiconductor integrated circuit
JP2012027630A (ja) * 2010-07-22 2012-02-09 Fujitsu Ltd 集積回路設計装置、集積回路設計方法、及び集積回路設計プログラム

Also Published As

Publication number Publication date
US20060109032A1 (en) 2006-05-25
US7299438B2 (en) 2007-11-20

Similar Documents

Publication Publication Date Title
US7299438B2 (en) Method and apparatus for verifying semiconductor integrated circuits
US8645888B2 (en) Circuit timing analysis incorporating the effects of temperature inversion
US20080034338A1 (en) Timing analysis method and device
JP4664231B2 (ja) タイミング解析方法及びタイミング解析装置
US20070136705A1 (en) Timing analysis method and device
US8255850B2 (en) Fabricating IC with NBTI path delay within timing constraints
US7836418B2 (en) Method and system for achieving power optimization in a hierarchical netlist
JP4946573B2 (ja) デカップリングセル配置方法及びデカップリングセル配置装置
US6651230B2 (en) Method for reducing design effect of wearout mechanisms on signal skew in integrated circuit design
US20060253823A1 (en) Semiconductor integrated circuit and method for designing same
CN104981805A (zh) 自动时钟树布线规则生成
US6718523B2 (en) Reduced pessimism clock gating tests for a timing analysis tool
JP4351207B2 (ja) タイミング検証方法及びタイミング検証装置
JP2005352787A (ja) タイミング解析方法およびタイミング解析装置
JP2000331901A (ja) ワーストケースファイルからの統計的デバイスモデルの抽出手法
JP3926296B2 (ja) 半導体集積回路の性能分散系算出装置及びその算出方法
US9495497B1 (en) Dynamic voltage frequency scaling
US8756544B2 (en) Method for inserting characteristic extractor
US7178116B2 (en) Method and device for designing semiconductor integrated circuit and logic design program
US10372851B2 (en) Independently projecting a canonical clock
CN116050332A (zh) 可感知动态电源噪声的静态时序分析方法及装置
JP2005141434A (ja) 集積回路のタイミング検証システム、タイミング検証プログラム
JP2000163460A (ja) 半導体集積回路装置の信頼性検証方法及びその配置配線方法
US20090177424A1 (en) 3-Dimensional method for determining the clock-to-Q delay of a flipflop
JPH09198419A (ja) 半導体装置の設計方法及び設計装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080819

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080909

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090203