JP4066399B2 - 集積回路におけるホットキャリア効果のシミュレーション方法 - Google Patents
集積回路におけるホットキャリア効果のシミュレーション方法 Download PDFInfo
- Publication number
- JP4066399B2 JP4066399B2 JP14616599A JP14616599A JP4066399B2 JP 4066399 B2 JP4066399 B2 JP 4066399B2 JP 14616599 A JP14616599 A JP 14616599A JP 14616599 A JP14616599 A JP 14616599A JP 4066399 B2 JP4066399 B2 JP 4066399B2
- Authority
- JP
- Japan
- Prior art keywords
- cell
- delay
- data
- input
- hot carrier
- 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.)
- Expired - Fee Related
Links
- 230000000694 effects Effects 0.000 title claims description 103
- 238000000034 method Methods 0.000 title claims description 56
- 238000006731 degradation reaction Methods 0.000 claims description 101
- 238000004088 simulation Methods 0.000 claims description 64
- 230000006866 deterioration Effects 0.000 claims description 47
- 239000004065 semiconductor Substances 0.000 claims description 22
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000003111 delayed effect Effects 0.000 claims description 8
- 239000000470 constituent Substances 0.000 claims description 6
- 230000015556 catabolic process Effects 0.000 description 46
- 238000010586 diagram Methods 0.000 description 44
- 238000013461 design Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 17
- 238000012512 characterization method Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 12
- 230000008859 change Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 230000032683 aging Effects 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000012546 transfer Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000003071 parasitic effect Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000036755 cellular response Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000001186 cumulative effect Effects 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 3
- 235000013599 spices Nutrition 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 230000005684 electric field Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000003915 cell function Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000035882 stress Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
Description
【発明の属する技術分野】
本発明は、集積回路のシミュレーションに関するものであり、特に、集積回路のホットキャリア効果をシミュレーションする技術に属する。
【0002】
【従来の技術】
集積回路(IC)の設計は、半導体製造技術の進歩によって単一基板に数百万個のトランジスタが形成可能になったことに伴って、より複雑に、より長い時間を要するようになった。集積回路の設計者は、近年の集積回路における異常なまでの複雑さや、改良設計の短期間開発に対する要求から、益々、設計を支援する様々なCADツールに依存するようになっている。改良設計はしばしば、多くの可能設計解に対して試行錯誤を行い、その中から「最適な」設計解を選択することによって行われる。そして、集積回路向けCADツールすなわちICCADツールは、設計者を、より速く「最適な」設計をできるように支援するものである。
【0003】
ICCADツールの中には一般に、ICレイアウトツールとIC設計ツールがある。ICレイアウトツールは、設計者がICレイアウトを生成するのを支援する。集積回路設計において、IC「レイアウト」とは、半導体デバイスを生成するのに用いられる異なる種類の材料の大きさおよび位置と、ICの製造期間にデバイス間に配置される電気的接続とを表す幾何学的パターンのことをいい、例えば多角形の形態で表される。例えば、IC上の拡散窓はレイアウト上では1つまたは複数の多角形によって表され、これは、製造側では「拡散層形状」を意味するものと解釈される。コンタクトやビアのような他の層の材料や形態もまた同様に、ICレイアウトにおいて表される。
【0004】
ICレイアウトにおける多角形形状は、ある種の材料の最小サイズおよび異種材料間の最小間隔を規定するデザインルールに従わなければならない。このデザインルールはまた、コンタクトのような他のレイアウト形態に対して要求されるサイズおよび間隔を特定する。ICレイアウトツールは、ICレイアウトが生成されたときに自動的にデザインルール違反を検出できるので、ICレイアウトが完成するまえにこれを修正することが可能になる。
【0005】
ICレイアウトが一旦生成されると、IC設計ツールが、そのICレイアウトの特性をシミュレートしてテストするために用いられる。IC設計ツールとしては多くの種類のものがあるが、そのうち重要なものは、ICシミュレーションツールとIC信頼性ツールの2つである。
【0006】
従来のICシミュレーションツールは、機能デバイスの接続と、デバイスの寸法や接合部面積のような物理的なモデルおよびパラメータとを組み合わせて、開発中のICに対して、電流電圧波形の時間変化や周波数応答をシミュレートする。ICシミュレーションツールによってIC特性が前もって分かるので、IC設計において論理およびタイミングエラーを知ることができる。よく知られたトランジスタレベルのICシミュレーションツールの一例としては、カリフォルニア大学バークレー校で開発された「SPICE」(Simulation Program for Integrated Circuit Emphasis)がある。
【0007】
【発明が解決しようとする課題】
ICシミュレーションツールの限界の1つに、トランジスタ、特にMOSトランジスタのホットキャリア効果に起因するIC特性の劣化を反映できない、ということがある。ホットキャリア効果は、時間の経過とともにトランジスタ、ひいてはICの特性を劣化させる、よく知られた物理的現象である。長期間動作すると、ホットキャリア効果はスレッショルド電圧の増加やトランスコンダクタンスの減少、およびデバイススイッチング速度の減少として現れ、ICのレスポンスの変化を引き起こし、極端な場合、ICの誤動作を引き起こす。近年のICではデバイスの微細化が進み、一方で電源電圧のスケーリングが追いつかず、トランジスタ内の高電界によってホットキャリア効果はより激しくあらわれ、ICの寿命を縮める大きな要因になっている。
【0008】
ホットキャリア効果に起因するIC劣化を低減するための、多くの技術が知られている。例えば、電源電圧や動作周波数の低減、またはLDD構造のような特殊なドレイン構造の採用などがある。これらの手法は、IC性能を逆に下げたり、ICのサイズを大きくしたり、製造プロセスを複雑にしたりするためトレードオフとなる。IC特性を所望のレベルに保ちつつ、ホットキャリア効果を抑えるための最適な手法を選択するためには、設計者はICにおけるホットキャリア効果をキャラクタライズしてシミュレートしなければならない。半導体デバイス特性における長期間にわたるホットキャリア効果を評価したいというニーズに対して、様々なIC信頼性ツールが開発されている。
【0009】
いくつかのIC信頼性ツールでは、半導体デバイス特性におけるホットキャリア効果がモデル化されている。このようなツールは、半導体デバイスにおけるホットキャリア効果を決定するのに特に有用である。なぜなら、ホットキャリア効果を決めるためにはいくつかの複雑な方程式を解くことを必要とするからである。すなわち、トランジスタのドレイン近傍の最大電界の計算は、2次元ポアソン方程式のコンピュータ支援解を必要とする複雑な処理となる。
【0010】
IC信頼性ツールは、単一の半導体デバイスにおけるホットキャリア効果については、比較的精度の高いモデルを与える。ところが、IC全体に対するホットキャリア効果のモデル化については成功していない。なぜなら、数百万のデバイスに対してホットキャリア効果をモデル化するには、圧倒的に膨大な量のコンピュータ資源が必要となるからである。IC信頼性ツールである商業的に利用可能なIC信頼性シミュレータの一例としては、「BTABERT」(BTA Technology,Inc.,of Santa Clara,California,USA )がある。BTABERTは、ある動作条件におけるホットキャリア効果によるデバイス劣化をキャラクタライズできるIC信頼性シミュレータである。ホットキャリア効果によるデバイス劣化がキャラクタライズされると、劣化後デバイスモデルが生成され、それから劣化後波形が得られ、劣化前デバイスモデルから得られる劣化前波形と比較できる。この手法は精度は高いが時間がかかる。またこのことは、数百万個のデバイスを有する大規模ICについてはシミュレートできない、という限界にもなる。
【0011】
IC全体のホットキャリア効果をモデル化する1つの手法として、「標準的な」デバイスに対してホットキャリア効果をキャラクタライズし、これらの標準的なキャラクタライゼーションを用いてIC全体におけるホットキャリア効果を評価する、というものがある。この手法では、同種類のデバイスは全て同様にホットキャリア効果の影響を受けるものと近似するため、IC中の各デバイス毎にキャラクタライズする手法に比べて、必要となるコンピュータ資源が格段に小さくなる。しかしながら、この手法には、いくつかの欠点がある。第1に、多くのICは、異なるレイアウト形状に合わせて、「標準的な」デバイスの多様な変形例を用いている。これら様々なデバイスはしばしば異なるホットキャリア特性を有する。また、「標準的な」デバイスと同一のものであってもホットキャリア特性が異なる場合がある。なぜなら、あるデバイスのホットキャリア特性は、IC中における他のデバイスとの接続関係と、そのデバイスのスイッチング周波数などの動作条件とに依存するからである。したがって、前述したIC全体のホットキャリア効果を推定する手法では、IC全体についてホットキャリア効果を正確にキャラクタライゼーションすることができない。
【0012】
IC全体のホットキャリア効果をシミュレーションしたいというニーズ、および従来の手法の限界に基づいて、IC全体のホットキャリア効果をシミュレーションする手法として、より正確なキャラクタゼーションが実現でき、かつ、従来の手法よりも必要となるコンピュータ資源が少ないものが、高く望まれている。
【0013】
前記の問題に鑑み、本発明は、集積回路におけるホットキャリア効果のシミュレーションとして、IC全体規模のホットキャリア効果を、従来よりも少ないコンピュータ資源で実行できるようにすることを課題とする。
【0014】
【課題を解決するための手段】
請求項1の発明が講じた解決手段は、ICセルデータ入力部と、遅延データ生成部と、劣化後遅延データ生成部と、劣化後タイミングデータ生成部とを含むコンピュータにおいて、少なくとも1つの半導体デバイスを有する集積回路におけるホットキャリア効果をシミュレーションする方法として、前記ICセルデータ入力部が、前記集積回路内の、少なくとも1つの半導体デバイスをそれぞれ有する少なくとも1つのセルを記述するICセルデータを受け、前記遅延データ生成部が、前記各セルについて、当該セルに含まれた各半導体デバイスの、異なる経年数における特性劣化を決定し、スティミュラスパターンを定め、前記スティミュラスパターンに対して、前記ホットキャリア効果に起因する経時特性劣化を求めることによって、ホットキャリア効果に起因する時間の経過と、入力スルー時間および出力負荷容量とを考慮した前記各セルにおける入力から出力までの伝播遅延を表す遅延データを生成し、前記劣化後遅延データ生成部が、前記遅延データおよび各セルのスイッチング動作情報に基づいて、スイッチング動作を考慮した前記各セルにおける入力から出力までの伝播遅延を記述する劣化後遅延データを生成し、前記劣化後タイミングデータ生成部が、前記劣化後遅延データと、前記各セルの遅延時間を示すスケーリング前タイミングデータとに基づいて、シミュレーションに用いるセルインスタンスにおける入力から出力までの伝播遅延を表した劣化後タイミングデータをスケーリングで生成するものである。
【0015】
請求項2の発明が講じた解決手段は、ICセルデータ入力部と、遅延データ生成部と、スイッチング回数決定部と、劣化後遅延データ生成部と、劣化後タイミングデータ生成部とを含むコンピュータにおいて、少なくとも1つの半導体デバイスを有する集積回路におけるホットキャリア効果をシミュレーションする方法として、前記ICセルデータ入力部が、前記集積回路内の、少なくとも1つの半導体デバイスをそれぞれ有する少なくとも1つのセルを記述するICセルデータを受け、前記遅延データ生成部が、前記各セルについて、当該セルに含まれた各半導体デバイスの、異なる経年数における特性劣化を決定し、スティミュラスパターンを定め、前記スティミュラスパターンに対して、前記ホットキャリア効果に起因する経時特性劣化を求めることによって、ホットキャリア効果に起因する時間の経過と、入力スルー時間および出力負荷容量とを考慮した前記各セルにおける入力から出力までの伝播遅延を表す遅延データを生成し、前記スイッチング回数決定部が、所定の期間、当該集積回路の論理シミュレーションを行い、前記各セルのうち組合せ論理を含む一のセルを構成要素に分解し、各構成要素について、前記所定の期間において、個別に、前記構成要素の出力状態が変化する回数を計ることによって、前記各セルのスイッチング動作情報を生成し、前記劣化後遅延データ生成部が、前記遅延データおよび各セルのスイッチング動作情報に基づいて、スイッチング動作を考慮した前記各セルにおける入力から出力までの伝播遅延を記述する劣化後遅延データを生成し、前記劣化後タイミングデータ生成部が、前記劣化後遅延データと、前記各セルの遅延時間を示すスケーリング前タイミングデータとに基づいて、シミュレーションに用いるセルインスタンスにおける入力から出力までの伝播遅延を表した劣化後タイミングデータをスケーリングで生成するものである。
【0016】
請求項3の発明が講じた解決手段は、ICセルデータ入力部と、遅延データ生成部と、劣化後遅延データ生成部と、劣化後タイミングデータ生成部とを含むコンピュータにおいて、少なくとも1つの半導体デバイスを有する集積回路におけるホットキャリア効果をシミュレーションする方法として、前記ICセルデータ入力部が、前記集積回路内の、少なくとも1つの半導体デバイスをそれぞれ有する少なくとも1つのセルを記述するICセルデータを受け、前記遅延データ生成部が、前記各セルについて、当該セルに含まれた各半導体デバイスの、異なる経年数における特性劣化を決定し、スティミュラスパターンを定め、前記スティミュラスパターンに対して、前記ホットキャリア効果に起因する経時特性劣化を求めることによって、ホットキャリア効果に起因する時間の経過と、入力スルー時間および出力負荷容量とを考慮した前記各セルにおける入力から出力までの伝播遅延を表す遅延データを生成し、前記劣化後遅延データ生成部が、前記各セルの駆動能力を、セルに係るI/Oパス遅延および配線遅延に基づくソーステーブル遅延モデルを用いて、複数の入力スルー時間および出力負荷容量に基づいてキャラクタライズを行い、前記遅延データおよび各セルのスイッチング動作情報に基づいて、スイッチング動作を考慮した前記各セルにおける入力から出力までの伝播遅延を記述する劣化後遅延データを生成し、前記劣化後タイミングデータ生成部が、前記劣化後遅延データと、前記各セルの遅延時間を示すスケーリング前タイミングデータとに基づいて、シミュレーションに用いるセルインスタンスにおける入力から出力までの伝播遅延を表した劣化後タイミングデータをスケーリングで生成するものである。
【0017】
請求項4の発明では、前記請求項3のシミュレーション方法において、入力スルー時間および負荷容量に基づく遅延値を含む駆動ソーステーブルを、各セルに対して生成するものとする。
【0018】
請求項5の発明では、前記請求項4のシミュレーション方法において、前記駆動ソーステーブルを、入力スルー時間および出力負荷容量に基づいて参照し、補間によって、遅延値を求めるものとする。
【0019】
請求項6の発明では、前記請求項4のシミュレーション方法において、前記駆動ソーステーブルを参照するための入力スルー時間を、遅延計算のためのものとは別個に、設定するものとする。
【0020】
【発明の実施の形態】
以下の記載では、説明のために、具体的詳細を本発明の十分な理解のために示す。しかしながら、本発明は明らかに、ここに示す以外の形態によっても実現され得る。ここでは、本発明が必要以上に分かりにくくなることを避けるために、よく知られた構成や装置をブロック図の形で示す。
【0021】
(機能の概観)
前述のIC信頼性ツールとして、ICにおけるホットキャリア効果を回路レベルでシミュレートするホットキャリアシミュレーションツールを提供する。このホットキャリアシミュレーションツールはホットキャリアタイミングライブラリジェネレータとホットキャリアシミュレータとを有し、これらは2つのフェーズの処理でそれぞれ用いられる。ここで扱うICは、論理セルや機能ブロックが相互に配線されて回路を構成するセルベース設計に基づくICを考える。第1のフェーズでは、ホットキャリアタイミングライブラリジェネレータは、IC設計における各セルのホットキャリアタイミングデータを含むホットキャリアタイミングライブラリを生成する。
【0022】
第2のフェーズでは、ホットキャリアシミュレータはホットキャリアタイミングライブラリを参照して、各セルインスタンスに対して遅延劣化率に基づく劣化後タイミングデータを決定する。このデータは、後述のセルインスタンスタイミングデータをスケーリングし、スケーリングされたタイミングデータを生成するのに用いられる。このスケーリングされたタイミングデータは、論理シミュレータなどの一般的なICシミュレーションプログラムがIC全体規模でのホットキャリアシミュレーションを行うために用いられる。本発明に係るホットキャリアシミュレーションツールは、所望のシミュレーションに応じて、IC全体にわたって、またはICの一部分に対して用いられる。例えばある状況では、IC全体にわたるホットキャリア効果が決定できるよう、IC全体のシミュレーションが望まれる。他の状況では、ICレイアウトや製造プロセスがより適切に実行できるように、ICのうち、ホットキャリア効果が重要な関心事となる部分についてのシミュレーションが望まれる。例えば、ICによっては、寸法の小さなデバイスが密に詰め込まれた部分を有しており、この部分ではホットキャリア効果は重要な関心事となる。本発明に係るホットキャリアシミュレーションツールを用いると、ICのある部分についてのホットキャリア効果が個別にシミュレートでき、またIC全体についてもシミュレーションを行うことができる。
【0023】
(実施形態)
図1は本発明の一実施形態に係る集積回路(IC)におけるホットキャリア効果のシミュレーションを行うためのシステム構成を示すブロック図である。ICセルデータ102は、遅延データ生成部および劣化後遅延データ生成部としてのホットキャリアタイミングライブラリジェネレータ104に与えられる。ICセルデータ102では、通常、ICにおいてシミュレーションの対象となるセルの特性や性質が記述されている。ICセルデータ102の具体的な内容については後述する。
【0024】
第1のフェーズにおいて、ホットキャリアタイミングライブラリジェネレータ104はICセルデータ102を処理し、シミュレーションの対象となる各セルのホットキャリアタイミングデータを含むホットキャリアタイミングライブラリ106を出力する。第2のフェーズにおいて、劣化後タイミングデータ生成部としてのホットキャリアシミュレータ110はホットキャリアタイミングライブラリ106と入力タイミングデータ108とを受け、劣化後タイミングデータ112を出力する。劣化後タイミングデータ112は、ICを構成するセルのホットキャリア効果をゲートレベルでシミュレートするように論理シミュレータ114に与えられる。また劣化後タイミングデータ112はタイミングアナライザ116にも与えることができ、タイミングアナライザ116はタイミング解析を行う。第1のフェーズ(ホットキャリアタイミングライブラリ生成)および第2のフェーズ(ホットキャリアシミュレーション)について、詳細に説明する。
【0025】
I.ホットキャリアタイミングライブラリ生成
第1のフェーズにおいて、ホットキャリアタイミングライブラリは、シミュレーション対象であるICで用いられる各セルに対し、ホットキャリアタイミングライブラリジェネレータ104によって生成される。これを行うために、ICは、複数のセルに分けられ、各セルについてホットキャリアタイミングライブラリのデータが個別に決定される。ICセルの例としては、加算器やシフトレジスタのようなMSI(medium scale integration)デバイスや、AND、NORまたはXORのような論理ゲートがある。ICシミュレーションの対象となるセルは、シミュレーションに応じて異なる。多段セルでは、入力から出力までの遅延は、それぞれが異なるホットキャリア劣化を有する2以上の部分に分けられる。後に詳述するように、ホットキャリア劣化をより正確に解析するために、ホットキャリアプリミティブが用いられる。ホットキャリアタイミングライブラリは、ホットキャリアタイミングライブラリ生成の間に、全てのホットキャリアプリミティブに対して生成される。
【0026】
A.入力データ
図2はホットキャリアタイミングライブラリ106の生成をより詳細に示すブロック図である。前述したように、ICセルデータ102はホットキャリアタイミングライブラリジェネレータ104に与えられ、ホットキャリアタイミングライブラリジェネレータ104はICセルデータ102を処理してホットキャリアタイミングライブラリ106を生成する。ここでは、ICセルデータ102は4種類のデータ、すなわち、(1)セルキャラクタライゼーション・コンディションデータ、(2)セルネットリストデータ、(3)デバイスモデルデータ、(4)セル特性データ、を有するものとする。例えば、セルキャラクタライゼーション・コンディションデータは、ICセルデータ入力部としてのユーザインターフェース202を介してホットキャリアタイミングライブラリジェネレータ104に供給される。ユーザインターフェース202は、ユーザがプルダウンメニューを選択して入力フィールドへ入力することによってセルキャラクタライゼーション・コンディションデータを特定できるGUI(graphical user interface)が好ましい。以下、ICセルデータ102の4種類のデータについて、説明する。
【0027】
1.セルキャラクタライゼーション・コンディションデータ
セルキャラクタライゼーション・コンディションデータは、電源電圧、動作温度、入力スルー(立上り/立下り)時間の範囲、出力負荷容量の範囲および動作時間の範囲(経年数)などのような、セルの動作条件を表したものである。各範囲では、キャラクタライゼーションポイントを表す多数の値が準備されている。また、遅延量、しきい値電圧Vth、出力スルー高電圧VSHおよび出力スルー低電圧VSLのような他のパラメータも、コンディションデータに含まれている。出力スルー高電圧VSHおよび出力スルー低電圧VSLは、スルー立上り/立下り時間を決めるのに用いられる。
【0028】
図3は本発明の一実施形態に係るシステムにおけるライブラリ生成条件設定の画面を示す図である。図3に示すように、条件設定として、さらに、キャラクタライゼーション実行時に起動する回路信頼性シミュレータや回路性能シミュレータに関する情報(図3におけるCircuit Simulator )、これらのシミュレータを搭載するコンピュータのネットワーク環境下における認識用名称の情報(図3におけるHost Name )、または、複数電源系の回路についてはキャラクタライゼーションの対象となる電源(接地)名の情報(図3におけるPower Name,Ground Name)も含んでよい。
【0029】
図4(a)はスルー立下り時間tSFの定義を表す図である。スルー立下り時間tSFは、出力電圧(曲線212)が、例えば電圧VDDの約20%で表されるスルー低電圧レベルVSLに達するのに要する時間を外挿推定し、この時間に基づいて決定される。図4(b)はスルー立上り時間tSRの定義を表す図である。スルー立上り時間tSRは、出力電圧(曲線216)が、例えば電圧VDDの約80%で表されるスルー高電圧レベルVSHに達するのに要する時間を外挿推定し、この時間に基づいて決定される。ここで、図4のように電圧波形はノイズ等で電源電圧VDDより高い値またはグランドVSSより低い値をとりうる。
【0030】
2.セルネットリストデータ
セルネットリストデータは、各セルにおけるデバイスと寄生素子とを記述し、かつ、各デバイスの固有情報および電気的接続を記述するものである。デバイス固有情報の内容は、そのデバイスの種類によって決まる。例えば、抵抗についてはその特性は抵抗値であり、容量については容量値であり、またトランジスタについては例えばゲート長やゲート幅のような寸法である。また電気的接続は、デバイスの各端子がIC中において接続される箇所を示すものであり、通常、ICノードで表される。例えば後述のSPICEの場合には、抵抗「R1」は「10K」の抵抗値を持ち、その第1および第2の端子はノード「N1」と「N2」にそれぞれ接続される、というように記述される。
【0031】
3.デバイスモデルデータ
デバイスモデルデータは、セル内部の各ノードの電圧および電流を求めるための回路性能シミュレーションや回路信頼性シミュレーションにおいて用いられる時間的な(time-based)数式モデルを含んでいる。ICデバイスの数式モデルは、一般には、デバイスパラメータと、デバイス動作のシミュレーションのために解くべき複雑な方程式群とを含んでいる。商業上利用可能な回路性能シミュレーションソフトウェアの多くは、特定の製造プロセスやアプリケーションに合うように変更可能なデフォルトのデバイスパラメータとモデルを備えている。このようなシミュレーションソフトウェアすなわちシミュレータの例としては、「StarHspice」(Avant! Corporation,Fremont,California,USA )、「SPECTRE」(Cadence Design Systems,San Jose,California,USA)および「SPICE」がある。デバイスモデルデータは、異なるデバイス年齢におけるデバイス動作をモデル化するために「劣化前」デバイスモデルと「劣化後」デバイスモデルとを含んでいる。
【0032】
劣化後デバイスモデルには、使用が望ましい累積劣化(図3中のAge limit,ストレス累積積分値)の範囲があるので、その範囲をセルキャラクタライゼーション・コンディションデータの条件設定に含んでもよい。回路信頼性シミュレータでセルのキャラクタライゼーションを実行する過程で、各デバイス(トランジスタ)の累積劣化がこの範囲内であることをチェックし、範囲外である場合は誤差が大きくなることが予想されることから警告を出力するようにしてもよい。
【0033】
4.セル特性データ
セル特性データは各セルの特性を記述するものであり、セルの名前や、「INPUT1」「INPUT2」「OUTPUT1」などのようなセルの入力・出力端子の識別子を表すものである。またセル特性データは、セルの機能、入力スティミュラスとこの入力スティミュラスに対して予想されるセルのレスポンス(応答)を定義する。例えば、2個の入力A,Bと1個の出力Yとを有するセルに対して、次表のようなセルのレスポンスが与えられる。
【0034】
【表1】
【0035】
ここで、「0」とLOWは論理レベルのローを表し、「1」とHIGHは論理レベルのハイを表す。また、「R」(rise)は入力が論理レベルのLOWからHIGHへ変化することを意味し、「F」(fall)は入力が論理レベルのHIGHからLOWへ変化することを意味する。
【0036】
図5は本発明の一実施形態に係るシステムにおける入力スティミュラスパターン設定画面を示す図である。図5に示すように、全ての入力組合せに対してキャラクタリゼーションを行う必要がない場合は、条件設定として、各組合せに対してキャラクタリゼーションを行うか否かを示す属性(図5におけるMask)を設けて、制御するようにしてもよい。
【0037】
B.入力データの処理
ホットキャリアタイミングライブラリジェネレータ104は回路信頼性シミュレータ204を用いてICセルデータ102を処理し、各ICセルの信頼性を、ホットキャリア効果に起因する各セルの動作劣化を基にして求める。またホットキャリアタイミングライブラリジェネレータ104は回路性能シミュレータ206を用いてICセルデータ102を処理し、セルの動作を異なるセル年齢においてシミュレートし、ホットキャリア効果に起因する回路の動作劣化を推定する。ホットキャリアタイミングライブラリジェネレータ104はセルの動作を測定し、特に、ホットキャリア効果に起因するセル劣化を考慮したときのセルの遅延を測定する。
【0038】
図6はホットキャリア効果に起因するあるセル(図示せず)の動作劣化を示す図である。図6において、入力曲線302はこのセルの入力に与えられた立上り電圧レベル(V)と時間(t)との関係を示す。また、出力曲線304,306,308はそれぞれ、0年、1年または2年経過した時のセルのレスポンスを表している。セルはその経年数が増すにつれて、出力レベルVout が電圧VDDから所定の電圧レベルV1まで下がるのに要する時間が長くなる。すなわち、曲線304に示すように、経年数が0年でありホットキャリア効果に起因する動作劣化がない場合は、セルの出力が電圧V1に達するのに時間t1を要する。そして、1年経過すると、曲線306に示すように、出力が電圧V1に達するのに時間t2を要し、2年経過すると、曲線308に示すように、出力が電圧V1に達するのに時間t3を要する。このように、セルのレスポンス時間は、ホットキャリア効果に起因して時間の経過とともに劣化すなわちこの例では増大する(t3>t2>t1)。
【0039】
C.ソーステーブル遅延モデル
ここでは、セルの駆動能力を、異なる入力スルー時間tsおよび負荷容量clに基づいてキャラクタライズするために、ソーステーブル遅延モデルを用いる。これにより、配線遅延および入力スルー時間が精度良く決定される。このソーステーブル遅延モデルに基づいて、各セルに対して駆動ソーステーブルが生成される。駆動ソーステーブルに含まれた値は、図6に示すような劣化前遅延t1および劣化後遅延t2,t3を決定するために用いられる。
【0040】
図7は駆動ソーステーブルの値を決定するために用いられるソーステーブル遅延モデルを示す図である。次にこのソーステーブル遅延モデルを、ICセルインスタンス(図7(a))およびタイミングチャート(図7(b))で説明する。ICセルインスタンスは、入力Aおよび出力Yを有するゲート314を含んでいる。出力Yは例えば寄生抵抗Rと寄生容量Cとを含むRC配線ネットワーク320を介して、次段のゲート324の入力Zに接続されている。ゲート324は出力326に信号を出力する。
【0041】
図7(b)のタイミングチャートは図7(a)のICセルインスタンスの動作に係る信号伝搬遅延関係を示している。Vthは遅延計算の基準となるゲートのしきい値電圧である。tpdxはI/Oパス遅延であり、入力Aから出力Yまでの伝搬遅延を表している。I/Oパス遅延tpdxは、入力Aがしきい値電圧Vthをクロスしてから出力Yが「立ち下がってVthをクロスする」までに要する時間である。I/Oパス遅延tpdxは、図8(a)に示すテーブルのような入力スルー時間ts(ここでは3点ts1〜ts3)と出力負荷容量cl(ここでは6点cl1〜cl6)との18点の組合せについてそれぞれtpdxが求められ、2次元テーブルの形で格納される。
【0042】
tpdwは配線遅延であり、出力Yから入力Zまでの伝搬遅延を表している。RC配線ネットワーク320に係る遅延によって、出力Yの立ち下がりと入力Zの立ち下がりとの間に遅延が生じる。
【0043】
ゲート314に係る遅延は、入力Aから入力Zまでの伝搬遅延すなわちtpdxとtpdwとの和によって表される。図8(a)の駆動ソーステーブルは後述する図19の所定の処理ステップで内部・外部遅延計算機222が配線遅延tpdwを計算するために用いられる。
【0044】
また、図8(b),(c),(d)は一実施形態に係る駆動トランジスタの電圧Vds−電流Ids特性を示すグラフである。駆動トランジスタの出力特性は、駆動トランジスタが飽和して動作する飽和領域と、線形的に動作する線形領域とにわたって特徴づけられる。飽和領域では、定電圧源、飽和ドレイン電流Idsatおよび抵抗値R(=Vdsat/Idsat)の線形抵抗が近似的に用いられる。トランジスタの出力特性は、入力スルー時間tsの影響を受けるゲート電圧Vgsの変化と、出力負荷容量clの影響を受けるドレイン電圧Vdsの変化に依存する。具体的には、図8(b)のグラフの破線はtsが小さくclが大きいときのトランジスタの出力特性の軌跡を、図8(c)のグラフの破線はtsが中程度でclも中程度のときのトランジスタの出力特性の軌跡を、そして図8(d)のグラフの破線はtsが大きくclが小さいときのトランジスタの出力特性の軌跡を示している。
【0045】
図9はNMOS(Nチャネル型MOS)トランジスタの飽和領域および線形領域における動作をキャラクタライズするために用いるモデルの一例を示す図である。同図中、(a)はNMOSトランジスタ、(b)は(a)に示すNMOSトランジスタの飽和領域における動作をキャラクタライズするために用いられるモデル、(c)は(a)に示すNMOSトランジスタの線形領域における動作をキャラクタライズするために用いられるモデルである。
【0046】
図9(b)のモデルにおいて、ドレイン飽和電流Idsatはtsとclの関数である。次式は、NMOSトランジスタの飽和領域における動作をキャラクタライズするために用いられる。ここで、Coはセル内部のトランジスタもしくはセルの出力端子自身が有する負荷容量である。
Vo(t)=VDD−Idsat・(t−t0)/(Co+cl)
ただし、VDD>Vo(t)>Vdsat …(1)
【0047】
図9(c)のモデルにおいて、抵抗値“R”は飽和電圧Vdsat(ts,cl)と飽和電流Idsat(ts,cl)との比である。次式は、NMOSトランジスタの線形領域における動作をキャラクタライズするために用いられる。
Vo(t)
=Vdsat・exp(−Idsat・(t−tsat)/((Co+cl)・Vdsat))
ただし、Vo(t)<Vdsat …(2)
【0048】
図9(d)はドレイン飽和電流Idsatとドレイン飽和電圧Vdsatとの関係を示すグラフ、図9(e)は出力電圧と時間との関係Vo(t)を示すグラフである。図9(e)中に示すように、実際の波形と本モデルの波形との間に若干の差があるが無視できる程度である。
【0049】
図10はPMOS(Pチャネル型MOS)トランジスタの飽和領域および線形領域における動作をキャラクタライズするために用いるモデルの一例を示す図である。同図中、(a)はPMOSトランジスタ、(b)は(a)に示すPMOSトランジスタの飽和領域における動作をキャラクタライズするために用いられるモデル、(c)は(a)に示すPMOSトランジスタの線形領域における動作をキャラクタライズするために用いられるモデルである。
【0050】
図10(b)のモデルにおいて、ドレイン飽和電流Idsatはtsとclの関数である。次式はPMOSトランジスタの飽和領域における動作をキャラクタライズするために用いられる。
Vo(t)=Idsat・(t−t0)/(Co+cl)
ただし、0>Vo(t)>Vdsat …(3)
【0051】
図10(c)のモデルにおいて、抵抗値“R”はVDDと飽和電圧Vdsat(ts,cl)との差と、飽和電流Idsat(ts,cl)との比である。次式は、PMOSトランジスタの線形領域における動作をキャラクタライズするために用いられる。
Vo(t)
=Vdsat+(VDD−Vdsat)
・(1−exp(−Idsat・(t−tsat)/((Co+cl)・Vdsat)))
ただし、Vo(0)>Vdsat …(4)
【0052】
図10(d)はドレイン飽和電流Idsatとドレイン飽和電圧Vdsatとの関係を示すグラフ、図10(e)は出力電圧と時間との関係Vo(t)を示すグラフである。図10(e)中に示すように、実際の波形と本モデルの波形との間に若干の差があるが無視できる程度である。前記Idsat、Vdsatについても、tpdxと同様に、図8(a)に示すようなtsとclに関する2次元のソーステーブルを生成する。図8(a)中の丸で囲んだところはそれぞれ、Idsatが最小、最大になりうるところを示している(ts1<ts2<ts3,cl1<cl2<cl3<cl4<cl5<cl6の仮定の場合)。
【0053】
式(1)〜(4)において、t0,tsatは、図9(e)と図10(e)にそれぞれ示すように、変化の始まる時点とVdsatをクロスする時点を表す。
【0054】
D.スティミュラスパターン
ホットキャリアタイミングライブラリ106は、ホットキャリア回路シミュレーションに含まれる各セルに対してタイミングデータを有している。各セルに対するタイミングデータは、そのセルの各スティミュラスパターンに対する遅延データを含んでいる。ここでは、「スティミュラスパターン」はある特定の入力値に基づく特定の出力値を意味している。あるセルに対するスティミュラスパターンの個数は、セルの入力および出力の端子数と、セルの機能とに依る。各スティミュラスパターンに対しては個別の遅延データを用意する必要がある。なぜなら、ホットキャリア効果に起因するセルの動作劣化は、スティミュラスパターンが異なると変わり得るからである。
【0055】
図11(a)は2個の入力A,Bおよび1個の出力Yを有する論理NANDゲートを示す図、図11(b)は図11(a)のセルに対する4種類のスティミュラスパターンを示すテーブルである。スティミュラスパターン#1,#2は入力Aが“1”一定状態で入力Bが変化する2つの状態にそれぞれ対応する。具体的には、スティミュラスパターン#1は入力Aが“1”で入力Bが“0”から“1”に立ち上がる状態(“R”)に対応し、スティミュラスパターン#2は入力Aが“1”で入力Bが“1”から“0”に立ち下がる状態(“F”)に対応する。
【0056】
図12はホットキャリアタイミングライブラリ106の内容の一例を示す図である。ホットキャリアライブラリ106は、ホットキャリアシミュレーションに含まれる各セルに対する遅延データ420を有する。各遅延データ420は、セル毎に各スティミュラスパターンに対する経年数ベース(時間ベース)の遅延時間を含んでいる。この経年数べースの遅延時間は、ホットキャリア効果に起因するセルのレスポンスにおける遅延を反映している。ここでは、セル1データ422が図11(a)のセルに対応するものであり、各スティミュラスパターン#1〜#4に対する経年数ベースの遅延時間を含んでいるものとする。図11(a)のセルに対しては4種類のスティミュラスパターン#1〜#4があるので、セル1データ422はスティミュラスパターン#1〜#4にそれぞれ対応する4個の遅延テーブル424,426,428および430を備えている。遅延テーブル424はスティミュラスパターン#1に対する経年数ベースの遅延時間を有している。スティミュラスパターン#1に対する経年数ベースの遅延時間は、経年数0すなわちホットキャリア効果に起因するセル動作劣化が全く反映されていない劣化前(初期)の遅延時間を、他の経年数1〜Nに対する遅延時間とともに有している。
【0057】
経年数の点の個数と刻み幅は、ホットキャリアタイミングライブラリジェネレータ104が受けた経年情報に基づく。例えば、セルキャラクタライゼーション・コンディションデータに含まれた経年情報が、ホットキャリアシミュレーションを10年間、各年ごとに実行することを規定するものとする。遅延テーブル424,426,428および430はそれぞれ11種類のエントリー、すなわち1つは経年数0すなわち劣化前である初期の、そして1年から10年までの各年のエントリーを含む。あるスティミュラスパターンに対する遅延データは、例えば、入力スルー時間および出力負荷容量に基づく遅延時間の前記2次元テーブルによって表され格納される。この2次元テーブルは、前記駆動ソーステーブルおよび図8(a)で説明したとおりである。Idsat,Vdsatについても同様に各スティミュラスパターンと各経年数に対して前記2次元テーブルで表し格納される。各セルの各スティミュラスパターンに対して、経過時間にわたって個別に遅延データを求めることによって、セルの動作条件を細かく分類でき、より正確なホットキャリアシミュレーションを行うことができる。
【0058】
図13はセルに対してホットキャリアタイミングライブラリを生成する方法の一例を示すフローチャートである。まずステップ502において、ICセルデータ102は、対象とするセル中の各デバイスに対するホットキャリア効果に起因する動作劣化をキャラクタライズするために、回路信頼性シミュレータ204および回路性能シミュレータ206によって処理される。回路信頼性シミュレータ204は、ホットキャリア効果に起因するセルの動作劣化をキャラクタライズする。回路信頼性シミュレータ204は、必要となるノード電圧および電流を与える回路性能シミュレータ206と連動して用いられる。好ましい回路信頼性シミュレータの一例は、「BTABERT」(BTA Technology Inc.,Santa Clara California,USA)である。好ましい回路性能シミュレータの一例としては、「StarHspice」と「SPECTRE」がある。他の回路信頼性および回路性能シミュレータを用いてもよい。
【0059】
ステップ504において、セルの「劣化前」タイミング情報が、回路信頼性シミュレータ204および回路性能シミュレータ206によるICセルデータ102の処理結果から劣化前デバイスモデルを用いて抽出される。「劣化前」タイミング情報は、ホットキャリア効果に起因する動作劣化がないときのセルの遅延時間を含んでいる。劣化前タイミング情報は、図12に示すホットキャリアタイミングライブラリ106の中の適当な遅延テーブルに格納される。
【0060】
ステップ506において、ステップ502の処理結果を用いて、セルに対して劣化後デバイスモデルが生成される。劣化後デバイスモデルは、ホットキャリアに起因するセルの動作劣化を考慮して、ある経過時間点におけるセルの動作をキャラクタライズするために、回路性能シミュレータによって用いることができる。例えば、セルキャラクタライズ・コンディションデータが10年間、1年ごとのシミュレーションを規定している状態において、1年から10年までの10年分の劣化後デバイスモデルが生成される。その中で5年後のモデルは、5年後のセルの動作をシミュレートするために用いられる、ホットキャリア効果に起因する動作劣化を含む数式モデルである。
【0061】
ステップ508において、ICセルデータ102は、ホットキャリア効果に起因する動作劣化を含む最初の時間間隔後のセル動作をシミュレートするために、ステップ506において生成された第1の劣化後デバイスモデルを用いて回路性能シミュレータ206によって処理される。ステップ510において、回路性能シミュレータ206によるICデータ102と劣化後デバイスモデルの処理結果から、劣化後タイミング情報が抽出される。劣化後タイミング情報は、最初の時間間隔の後(図12の経年数1に相当)のセルの各スティミュラスパターンに対する遅延時間を含む。この遅延時間は、図12に示すホットキャリアタイミングライブラリ106内の適当な遅延テーブルに格納される。
【0062】
ステップ512において、他の劣化後デバイスモデルを処理する必要があるか否かを判断する。必要があるときはステップ508に戻る。これにより、ステップ508,510は、各劣化後デバイスモデルが全て処理されて、全ての遅延時間がホットキャリアタイミングライブラリ106に格納されるまで繰り返される。全ての劣化後デバイスモデルが処理されたとき、処理を終了する。
【0063】
なお、「A.入力データ」の項で触れたGUIには、次のような機能を持たせてもよい。
・LSIを構成するセルは、通常、数百種類以上あるため、キャラクタライズの対象とするセルを容易に指定できるのが好ましい。このため、図14に示すツリー構造のように、セル毎に属性を持たせたり、グループ化できるようにしてもよい。
・キャラクタライズ処理の進行が分かるように、進行状況をリアルタイムに表示させてもよい(図14のステータスボタン)。
・キャラクタライズ処理を並列にできるようにしてもよく、この場合は、並列処理に必要なコンピュータの設定をできるようにしてもよい。
・ホットキャリアタイミングライブラリジェネレータ104の入出力データはファイルの形態でもよく、その場合はファイルの所在であるコンピュータ上のディレクトリを指定できるようにしてもよい。
・ホットキャリアタイミングライブラリ106に格納されているデータを、視覚的に分かりやすく表示させてもよい。図15(a)のようにテーブルで表示したり、図15(b)のように3次元グラフで表示してもよい。また、図16に示すように、各スティミュラスパターンの解析結果であるセルの入出力電圧波形を表示させてもよい。この場合、さらに図17に示すように、表示させる(ts,cl)の組合せを指定できるようにしてもよい。
【0064】
なお、これまで説明したGUIに持たせる機能は、バッチコマンドのオプションとして実現できるようにしてもよい。
【0065】
II.ホットキャリアシミュレーション
再び図1において、第2のフェーズであるホットキャリアシミュレーションでは、ホットキャリアシミュレータ110が、ホットキャリアタイミングライブラリ106およびユーザから供給された入力タイミングデータ108に含まれるデータを処理して、劣化後タイミングデータ112を供給する。劣化後タイミングデータ112は、論理シミュレータ114がゲートレベルにおけるICのホットキャリアシミュレーションを行うために、またタイミングアナライザ116がタイミング解析を行うために、用いられる。ホットキャリアタイミングライブラリ106およびユーザが供給する入力タイミングデータ108に含まれるデータに基づく劣化後タイミングデータ112の生成は、以下、図18のブロック図および図19のフローチャートを参照して具体的に説明する。
【0066】
図19はICのホットキャリア効果をシミュレートする方法の一例を示すフローチャートである。まず、ステップ602において、各セルインスタンスに対して、劣化前入力スルー時間と出力負荷容量が決定される。ここで「インスタンス」は、IC内に含まれる複数の同じ種類のセルを個々に区別したものである。劣化前入力スルー時間と出力負荷容量は、ICの寄生素子付設計ネットリスト220、好ましくは、内部または外部遅延計算機222が用いるDSPF(Detailed Standard Parasitic Format:Cadence Design Systems,Inc.,San Jose,California,USA )ファイルから抽出される。
【0067】
A.スイッチング頻度
ステップ604において、各セルインスタンスのスイッチング頻度が決定される。各セルインスタンスに対して、ICの論理シミュレーション期間における所定の入力スティミュラスに基づくセル出力の状態変化の回数が、決定される。各セルインスタンスの出力は各セルインスタンスの入力に対応させて評価する。なぜなら、入力が異なると、ある出力におけるスイッチング回数も異なり、これにより、ホットキャリア効果に起因するセル劣化の程度も異なるからである。例えば、再び図11(a)のセルを参照すると、入力Aは出力Yに、ある論理シミュレーション期間において、ある回数の状態変化を引き起こす。一方、入力Bは出力Yに、同一の論理シミュレーション期間において、異なる回数の状態変化を引き起こす。あるデバイスにおけるホットキャリア効果は、入力の状態変化に応じたセルインスタンス出力のスイッチング回数に関係する。したがって、各入力による出力の状態変化回数は個別に決めなければならない。
【0068】
一実施形態では、セルインスタンスに対するスイッチング頻度情報224は、スイッチング回数決定部としての論理シミュレータ226によってICをシミュレーションして得られたセルインスタンスのレスポンスを解析することによって、決定される。これにより、論理シミュレータ226の出力結果が、ICの全てのセルインスタンスについてスイッチング頻度を決めるために評価される。この目的に合う論理シミュレータ226の一例として、「VeriLog-XL」(Cadence Design Systems,Inc.,San Jose,California,USA )がある。また、スイッチング回数をインスタンス毎に求める方法以外に、IC全体で一律にスイッチング確率を設定し、動作周波数、動作期間とその確率からスイッチング回数を計算するような近似を用いてもよい。
【0069】
ある状況では、セルの内部ノードのスイッチングは、そのセルが有する組合せ論理のために、決めることが困難である。このような状況では、セルは構成部分に分解され、この構成部分毎にスイッチング頻度が個別に決められる。例えば、図20に示す6入力NANDセル700について考える。セル700では、2個の3入力NANDゲートNAND1,NAND2が並列にNORゲートNORに接続され、さらに直列にインバータINVに接続されている。NAND2の入力Dは“0”なので、その出力は入力E,Fの値にかかわらず“1”である。そして、NAND2の出力は“1”なので、NORの出力は常に“0”である。加えて、NORの出力は常に“0”なので、インバータINVの出力は常に“1”である。したがって、方形波スティミュラスパターンが入力Aに与えられても、NAND1の出力におけるスイッチング動作は、インバータINVの出力のスイッチング動作からは検出されない。なぜなら、インバータINVの出力は常に“1”であり、入力Aの入力スティミュラスパターンによっては変化しないからである。この場合には、セル700は個別に評価可能な構成部分に分解される。構成部分のスイッチング動作はセル700の内部ノードのスイッチングを決めるために用いられる。この例では、NAND1およびNAND2のスイッチング頻度はNORおよびインバータINVのスイッチング頻度とは別に、決定される。
【0070】
B.ホットキャリアプリミティブ
一実施形態では、スイッチング頻度を決定する目的のために通常、構成部分に分解されるようなある種の複雑なセルは、その代わりに、構成部分である所定のホットキャリアプリミティブを単位にして解析される。なぜなら、ホットキャリアプリミティブのホットキャリア効果はスイッチング頻度を求められるため正確に決定することができるからである。組合せ論理を含むセルに対しては、このホットキャリアプリミティブを、1または複数入力と単一出力の一段CMOS回路構造か、または単一入力と単一出力の多段CMOS回路構造のいずれかと定義する。単一入力と単一出力の多段CMOS回路構造の一例には、2個のインバータからなる2段バッファがある。ホットキャリアプリミティブは、複雑なセルのホットキャリア効果に起因する動作劣化がより正確に決定できるように、用いられる。ホットキャリアプリミティブも、ホットキャリアタイミングライブラリジェネレータ104での処理の対象となる。
【0071】
フリップフロップを含むICセルのスイッチング頻度は、タイミング解析における順序回路型セルの役割の重要性およびこのタイプのセルの分解の困難性のために、フリップフロップの専用モデルを別途準備して決定する。以下に詳細に示すように、特別な遅延モデルが、入出力遅延(=I/Oパス遅延)を決定するために用いられる。
【0072】
図21は入力D,クロック入力CLKおよび2個の出力Q,/Qを有するDフリップフロップを示す図である。図21に示すフリップフロップの内部はマスターおよびスレーブの回路とクロックバッファとからなる。CKはフリップフロップの内部クロックである。例えば、フリップフロップのI/Oパス遅延すなわちCLKからQまたはCLKから/Qの遅延は、(1)CLKからCKの遅延tpd(CLKtoCK)と、(2)CKからQまたはCKから/Qの遅延tpd(CKtoQ),tpd(CKto/Q)との2つの部分に分けられる。遅延tpd(CLKtoCK)は、ホットキャリアタイミングライブラリ106においてI/Oパス遅延tpdxのテーブルで表される。他の情報、例えばIdsatテーブル値やVdsatテーブル値は、この遅延に対しては考慮しない。クロックのスイッチング回数が、この劣化後遅延の補間のために用いられる。遅延tpd(CKtoQ),tpd(CKto/Q)は、全ての情報、すなわちI/Oパス遅延tpdx、Idsatテーブル値およびVdsatテーブル値から求められる。出力ピンのスイッチング回数が、この劣化後遅延の補間のために用いられる。CLKからQおよびCLKから/QのI/Oパス遅延tpd は次のようになる。
tpd(CLKtoQ) =tpd(CLKtoCK)+tpd(CKtoQ) …(5)
tpd(CLKto/Q)=tpd(CLKtoCK)+tpd(CKto/Q)…(6)
【0073】
入力Dとクロック入力CLKとの位相関係を示すセットアップ時間やホールド時間などのタイミング制約も、劣化によって変化する。図22は図21のフリップフロップの構成をさらに詳細に示す図である。図22において、セットアップ時間Tsetup およびホールド時間Tholdは、次のように定義される。
Tsetup =max{tpd(DtoPD01),tpd(DtoND01)}
−min{tpd(CLKtoPCK),tpd(CLKtoNCK)}…(7)
Thold =max{tpd(CLKtoPCK),tpd(CLKtoNCK)}
−min{tpd(DtoPD01),tpd(DtoND01)} …(8)
上式に示すようなセットアップ時間Tsetup およびホールド時間Tholdについて、劣化前(Tsetup-fresh,Thold-fresh )および劣化後(Tsetup-aged,Thold-aged )の値を求め、さらにこれらの差分を求める。
ΔTsetup =Tsetup-aged −Tsetup-fresh …(9)
ΔThold =Thold-aged −Thold-fresh …(10)
この差分ΔTsetup ,ΔTholdは、ステップ616において、初期(劣化前)のタイミングファイル中の所定のTsetup ,Tholdに対してそれぞれ加えられ劣化後タイミングファイルに格納される。セットアップ時間、ホールド時間以外のタイミング制約も計算対象としてもよい。
【0074】
ステップ606において、各セルインスタンスに対する劣化後入力スルー時間は、各セルに対して、そのセルの前段の駆動段に係る遅延に基づいて更新される。ステップ608において、劣化前遅延が、各セルに対して、内部または外部遅延計算機222によって決定される。ステップ610において、各セルインスタンスおよびホットキャリアプリミティブに対する劣化後遅延が、内部または外部遅延計算機222によって、劣化後遅延およびスイッチング頻度情報224に基づき決定され、セルインスタンスおよびホットキャリアプリミティブのホットキャリア効果に起因する動作劣化が表される。
【0075】
ステップ602において、各インスタンス毎にtsおよびclが決定され、ステップ604において、スイッチング回数が決定されると、ステップ610において、図23に示すように、これらの情報を基にして、ホットキャリアタイミングライブラリ106に格納されている図12の遅延データ420からテーブルを参照し、I/Oパス遅延tpdx,ドレイン飽和電流Idsat,ドレイン飽和電圧Vdsatをそれぞれ補間で求める。図23に示すように、ホットキャリアタイミングライブラリ106中には設定した経年数のポイントに従ってtpdx,Idsat,Vdsatのテーブルがポイント毎にそれぞれ生成されており(例えば図中の経年数1と経年数2のテーブル)、任意の経年数に相当するスイッチング回数Nが動作周波数から求められ、ts,clと合わせて与えられると、それらのテーブルの補間が行える。ここでの補間は、線形補間または対数補間によって行えばよい。劣化後遅延は、これらインスタンスおよびホットキャリアプリミティブ毎に補間されたtpdx,Idsat,Vdsatを用いて計算される。
【0076】
ステップ612において、劣化前遅延に対する劣化後遅延の比率すなわち遅延劣化率が各セルインスタンスに対して決定される。遅延劣化率は、次のように決定される。
遅延劣化率=劣化後遅延/劣化前遅延 …(11)
【0077】
あるCMOS論理回路では、トランジスタは直列に接続されている。この場合、直列に接続されたトランジスタに係る劣化は、これらのトランジスタに依る遅延パスに影響を与える。このようなパスに対する複雑な遅延劣化現象をキャラクタライズするためには、大きなコンピュータ資源を必要とする。シミュレーション速度を改善するために、ここで述べるホットキャリアシミュレーションツールは、直列に接続されたトランジスタに対するホットキャリア効果を求めるために、下記の特別なモデルを用いる。
【0078】
例えば、直列抵抗モデルを、直列に接続された2個のトランジスタのホットキャリア効果を決定するために用いる。これは、直列に接続された2個のトランジスタに対するホットキャリア効果を決定するために必要となるコンピュータ資源を考慮したものである。
【0079】
図24は直列接続された2個のトランジスタM1,M2を含む回路を示す図である。図24において、トランジスタM1はソースS1、ゲートG1およびドレインD1を有し、トランジスタM2はソースS2、ゲートG2およびドレインD2を有し、トランジスタM1のドレインD1はトランジスタM2のソースS2と接続されている。この回路のホットキャリア効果を決めるためには大量のコンピュータ資源が必要になる。なぜなら、トランジスタM1,M2のホットキャリア効果は相互に独立ではなく、互いに依存するからである。このため、ここでは、直列に接続された2個のトランジスタのホットキャリア効果を決めるために直列抵抗モデルを用いるものとする。
【0080】
図25は直列に接続された2個のトランジスタのホットキャリア効果を決めるためのモデルとなる直列抵抗回路を示す図である。図25に示す抵抗回路は直列に接続された2個の抵抗R1,R2を含んでいる。抵抗R1は2個の端子912,914を有し、抵抗R2は2個の端子916,918を有し、端子914は端子916と接続されている。
【0081】
次に、直列接続されたトランジスタのホットキャリア効果を決めるために用いられる定義と式を示す。
(12)定義
α1:トランジスタM1のみが劣化したときの劣化前遅延に対する劣化後遅延の比率
α2:トランジスタM2のみが劣化したときの劣化前遅延に対する劣化後遅延の比率
β1:トランジスタM1のみが劣化したときの劣化前抵抗値に対する劣化後抵抗値の比率
β2:トランジスタM2のみが劣化したときの劣化前抵抗値に対する劣化後抵抗値の比率
α:トランジスタM1,M2がともに劣化したときの劣化前遅延に対する劣化後遅延の比率
α1,α2およびαの値は次式で決定される。
α1=(β1・R1+R2)/(R1+R2) …(13)
α2=(R1+β2・R2)/(R1+R2) …(14)
α =(β1・R1+β2・R2)/(R1+R2)
=α1+α2−1 …(15)
【0082】
上記の式は、直列接続されたトランジスタを含む論理ゲートのホットキャリア効果を決めるために用いられる。図26は2入力NANDゲートを示す図である。NANDゲートは2個の入力A,Bおよび1個の出力Yを有する。NANDゲートの動作は従来からよく知られている。NANDゲートの双方の遅延パス、すなわち入力Aから出力Yまでの遅延および入力Bから出力Yまでの遅延におけるホットキャリア効果は、次式でキャラクタライズされる。
αfinal=αBtoY+αAtoY−1 …(16)
【0083】
図26に示すNANDゲート中のNMOSに着目すると、図24のような2段直列の回路が一般的に見い出せる。ここで、式(16)は式(15)と同様に、αfinal はαに、αBtoYはα2 に、αAtoYはα1 に対応する。
【0084】
ある条件では、αfinalの値は、直列接続されたトランジスタにおけるホットキャリア効果に起因する動作劣化を、過剰に評価してしまうことがある。これゆえ、他の実施形態では、次に示すような別の式が、直列接続されたトランジスタにおけるホットキャリア効果を求めるために用いられる。
<BからYへの遅延パス>
α(BtoY)final=αBtoY+(αAtoY−1)・K …(17)
<AからYへの遅延パス>
α(AtoY)final=αAtoY+(αBtoY−1)・K …(18)
フィッティングパラメータK(例えば0から1の間の値をとる)を導入し、式(16)の精度を高めるために用いられる。フィッティングパラメータKは直列接続された2個のトランジスタの両方が劣化した場合の劣化を計ることによって決定され、個別に決定されたα1,α2が、Kの値を計算するために用いられる。
【0085】
この結果は、直列接続された任意の個数のトランジスタに対して一般化される。n個のトランジスタが直列接続され、入力端子がA1〜An、出力端子がYとする。
<AiからYへの遅延パス>
n
α(AitoY)final=αAitoY+( Σ αAjtoY−(n−1))・K
j=1;j≠i
…(19)
直列トランジスタを含むセルについて、フィッティングパラメータKはホットキャリアタイミングライブラリジェネレータ104によって求められ、ホットキャリアタイミングライブラリ106に格納されて、ステップ612において参照される。
【0086】
図19に戻り、ステップ614において、各セルインスタンスに対する劣化前のものである入力タイミングデータ108(図1)が、入力タイミングファイルから読み出される。入力タイミングファイルはユーザが与えるか、所定のファイルを用いる。一実施形態では、入力タイミングファイルに含まれるデータは、ファイルフォーマットSDF(standard delay format:Cadence Design Systems,Inc.,San Jose,California,USA)で記述される。
【0087】
ステップ616では、式(19)のように、入力タイミングデータ108は、劣化前遅延に対する劣化後遅延の比率である遅延劣化率が掛けられ、すなわちスケールされて、ホットキャリア効果に起因するセルインスタンス遅延を決定する。
【0088】
なお、ステップ616において、全てのセルインスタンスについて劣化前/劣化後比率を求め、求めた比率に基づいて個々にスケールしてもよいし、特定のインスタンスのみについて劣化前/劣化後比率を求めて、それ以外のインスタンスには、予め別途ファイルに設定しておいた比率を参照して、スケールしてもよい。さらに、劣化計算の対象外にしたいセルやインスタンスには、比率を1、すなわち劣化が生じないという設定ができるようにしてもよい。
劣化後タイミングデータ=入力タイミングデータ・遅延劣化率 …(20)
【0089】
ステップ618において、スケーリング後の劣化後タイミングデータは劣化後タイミングファイルに書き込まれる。この劣化後タイミングファイルには、例えば前記のSDF書式が用いられる。このファイルは、ステップ620において、セルインスタンスによって表されたIC全体におけるホットキャリア効果をシミュレートするために、論理シミュレータまたはタイミングアナライザによって参照される。そして、処理を終了する。
【0090】
ホットキャリアシミュレータ110は次のような機能のGUIを備えてもよい。
・図27に示すように、経過時間(Aging )、補間計算法(Interpolating method)、動作周波数(Switching activityのFrequency )などを設定できるようにしてもよい。
・図28に示すように、ホットキャリアシミュレータ110の入力データのうちファイルでなされるものは、そのファイルの所在であるコンピュータ上のディレクトリを指定できるようにしてもよい。
・図29の処理実行メニュー画面に示すように、図19の処理方法における各ステップを、個別に、または一括して順次、実行、中断できるようなコマンドを備えてもよい。
・処理の進行が分かるように、リアルタイムに進行度合を表示させてもよい。
・図19の処理方法における中間データや最終結果データを表示させる機能を持たせてもよい。
【0091】
なお、これまで説明したGUIに持たせる機能は、バッチコマンドのオプションとして実現できるようにしてもよい。
【0092】
入力スルー時間tsは図19のステップ606や610において、2種類の目的で用いられる。1つの目的は図12に示すテーブルを参照するためであり、出力負荷容量clやスイッチング回数とともに用いられる。他の目的は、遅延計算のためである。
【0093】
図30(a)に示すように、入力スルー時間tsは図4で説明したように、セルの出力波形250が予め設定された観測電位VSH,VSLと交わる2点を直線で外挿した時間tSFによって定義される。ところが、元来曲線である出力波形250を直線近似して求めるため、計算誤差が生じる。このため、遅延計算のためには、計算誤差が最小になるように観測電位VSH,VSLを設定する必要がある。この場合、設定された観測電位VSH,VSLはあくまでも遅延計算において最適なものに過ぎず、前記のテーブル参照のために用いる入力スルー時間としては、最適なものとは限らない。そこで図30(b)に示すように、さらにもう1組の観測電位VSH2,VSL2を定義し、これを基に得られた入力スルー時間tSF2 をテーブル参照のために用いればよい。
【0094】
このように2種類の観測電位を設定することによって、それぞれの目的に応じて観測電位を最適化できるので、結果として、ホットキャリアシミュレーションの精度向上を実現することができる。この場合、2種類の入力スルー時間は、図19のステップ602において決定される。
【0095】
C.インプリメントメカニズム
ICのホットキャリア効果をシミュレートするアプローチは、ここでは、コンピュータによって実行される1つまたは複数の命令、プロセス、プログラム、サブルーチン、機能、ルーチンその他の同等物として、インプリメントされる。例えば、一実施形態では、ICのホットキャリア効果をシミュレーションするアプローチは、汎用コンピュータが実行する1つまたは複数の命令からなる1つまたは複数のシーケンスを含むコンピュータプログラムによって、インプリメントされる。このようなコンピュータプログラムの一例としては「GLACIER」(BTA Technology Inc.,Santa Clara,California,USA)がある。またここでは、ICのホットキャリア効果をシミュレートするアプローチは、具体的なハード構成によってもインプリメントされる。このように、本発明の実施形態は、コンピュータソフトウェア、具体的なハードウェアまたはソフトウェアとハードウェアとの組合せによって実現される。
【0096】
D.ハードウェア概観
図31は本発明の一実施形態がインプリメントされたコンピュータシステム1000を示すブロック図である。コンピュータシステム1000はバス1002または情報を伝達するための他の情報伝達機構と、バス1002と接続された情報処理を行うプロセッサ1004とを有している。コンピュータシステム1000はまた、例えばRAMまたは他の動的記憶装置からなるメインメモリ1006を有し、メインメモリ1006はバス1002と接続され、情報やプロセッサ1004が実行する命令を記憶する。またメインメモリ1006は、プロセッサ1004が命令を実行しているとき、一時的な変数や他の中間情報を記憶するために用いられる。コンピュータシステム1000はさらに、バス1002と接続され、静的な情報およびプロセッサ1004の命令を記憶するROM1008または他の静的記憶装置を有している。また、磁気ディスクや光ディスクのような記憶装置1010がバス1002と接続されて設けられており、情報や命令を記憶する。
【0097】
コンピュータシステム1000はバス1002を介して、ユーザに情報を表示するための例えばCRT(Cathode Ray Tube)のようなディスプレイ1012と接続されている。入力装置1014は英数その他のキーを有し、情報や命令選択を転送するバス1002を介してプロセッサ1004に接続されている。他のタイプのユーザ入力装置として、マウス、トラックボールまたはカーソル方向キーなどの、プロセッサ1004に情報や命令選択を伝達し、ディスプレイ1012におけるカーソルの動きをコントロールするカーソルコントロール1016がある。このカーソルコントロール1016はX方向およびY方向に2次元の自由度を有し、平面上における位置を特定することができる。
【0098】
本発明の一実施形態では、ICにおけるホットキャリア効果のシミュレーションは、コンピュータシステム1000において、プロセッサ1004がメインメモリ1006に記憶された命令列を実行することによって実現される。この命令列は、記憶装置1010のような他のコンピュータ読み取り可能な媒体からメインメモリ1006に書き込まれる。プロセッサ1004がメインメモリ1006に記憶された命令列を実行することによって、前述したシミュレーション処理が実現される。別の実施形態では、本発明を実現するために、ハードワイヤド回路を、ソフトウェア命令に代えて、またはこれと組み合わせて用いてもよい。すなわち、本発明の実施形態は、特定のハードウェア回路とソフトウェアとの組合せに限定されるものではない。
【0099】
ここで用いられる「コンピュータ読み取り可能な媒体」という用語は、プロセッサ1004に実行させる命令を供給するために用いられるいかなる媒体も含む。このような媒体は、不揮発性媒体、揮発性媒体または転送媒体などの多くの形態をとりうるものであり、またこれらの形態に限定されるものではない。不揮発性媒体としては、例えば記録装置1010のような光ディスク、磁気ディスクがある。揮発性媒体としては、例えばメインメモリ1006のような動的メモリがある。転送媒体としては、同軸ケーブル、銅線または光ファイバがあり、バス1002を含む配線もある。また転送媒体は、例えば無線通信や赤外線データ伝送によって生成された音響波や光波のような形態もとりうる。
【0100】
コンピュータ読み取り可能な媒体の共通の形態としては、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープその他の磁気媒体、CD−ROMその他の光媒体、パンチカード、紙テープその他の穴あき媒体、RAM、PROM、EPROM、フラッシュEPROMその他のメモリチップまたはカートリッジ、後述する搬送波、その他のコンピュータが読みとれる媒体を含む。
【0101】
様々な形態のコンピュータ読みとり可能な媒体が、プロセッサ1004が実行する命令列を転送するために用いられる。例えば、最初に、遠隔コンピュータの磁気ディスクに命令列が転送される。この遠隔コンピュータはこの命令列を自らの動的メモリにロードし、そしてその命令列を電話線を介してモデムを用いて送信する。コンピュータシステム1000のモデムは電話線を介してデータを受信し、赤外線伝送器を用いてそのデータを赤外線信号に変換する。バス1002と接続された赤外線検出器は赤外線信号の形で送信されたデータを受け、そのデータをバス1002に供給する。バス1002はそのデータをメインメモリ1006に送り、プロセッサ1004は命令を再生して実行する。メインメモリ1006が受けた命令列は、場合によっては、プロセッサ1004の実行の前または後に記憶装置1010に記憶させてもよい。
【0102】
コンピュータシステム1000はまた、バス1002と接続された通信インターフェース1018を有している。通信インターフェース1018はローカルネットワーク1022と接続されたネットワークリンク1020とともに、双方向データ伝送を行う。通信インターフェース1018は例えば、特定種類の電話線とのデータ伝送接続を実現するためのISDN(Integrated Services Digital Network )カードやモデムである。他の実施形態では、通信インターフェース1018は互換性のあるLAN(Local Area Network)とのデータ伝送接続を実現するためのLANカードである。ワイヤレスリンクもまた利用可能である。いかなる形態であれ、通信インターフェース1018は、様々な種類の情報を表すディジタルデータストリームを運ぶ電気、電磁または光信号を送受信する。
【0103】
ネットワークリンク1020は具体的には、1または複数のネットワークを介して他のデータ装置に対するデータ通信を行う。例えばネットワークリンク1020はローカルネットワーク1022を介して、ホストコンピュータ、またはISP(Internet Service Provider )1026によって管理されるデータ装置との接続を行う。そしてISP1026は、いわゆるインターネット1028と称される世界的パケットデータ通信ネットワークを介してデータ通信サービスを供給する。ローカルネットワーク1022およびインターネット1028はともに、ディジタルデータストリームを運ぶ電気、電磁または光信号を用いる。ディジタルデータをコンピュータシステム1000に、またはコンピュータシステム1000から運ぶために、様々なネットワークを流れる信号およびネットワークリンク1020や通信インターフェース1018を通る信号は、例えば、情報を転送する搬送波の形態で実現される。
【0104】
コンピュータシステム1000は、ネットワークや、ネットワークリンク1020および通信インターフェース1018を介して、メッセージを送信したり、プログラムコードを含むデータを受信したりすることができる。インターネットを用いる例では、サーバ1030はアプリケーションプログラムに対する要求コードを、インターネット1028、ISP1026、ローカルネットワーク1022および通信インターフェース1018を介して転送することができる。本発明によると、このようなダウンロードされたアプリケーションによって、前述したICにおけるホットキャリア効果のシミュレーションが実現される。
【0105】
受信されたコードは受信時にプロセッサ1004によって実行され、これとともに、またはこれに代えて、後の実行のために記録装置1010または不揮発性媒体に記憶される。このように、コンピュータシステム1000はアプリケーションコードを搬送波の形態で受け取ってもよい。
【0106】
ここで述べた技術は、従来技術と比べて、ホットキャリア効果に起因するICの動作劣化をシミュレートする際に、さまざまな利点をもたらす。第1に、ここでのアプローチによると、ICの各セルは個別にキャラクタライズされるので、IC全体におけるホットキャリア効果に起因する動作劣化についてより精度の高いシミュレーションを実現することができる。具体的には、各セルの各インスタンスに対するホットキャリア経時劣化が個別に決定されるので、より精度よくホットキャリア効果に起因する動作劣化をキャラクタライズすることができる。複雑なセルインスタンスはホットキャリアプリミティブに分割されて扱われるので、ホットキャリア効果のキャラクタライゼーションをより精度良く実現することができる。加えて、各セルインスタンスのスイッチング頻度を特定の経年数において決定できるように、所定期間にわたって評価する。これにより、ホットキャリア効果に起因する動作劣化をより正確に評価することができる。
【0107】
ここで述べたアプローチによって、膨大な数のデバイスを有するICをシミュレートすることが可能になる。加えて、ここで述べたアプローチによって、従来技術に対してパフォーマンス面での効果も得られる。なぜなら、ホットキャリアタイミングライブラリが一旦生成されると、このホットキャリアタイミングライブラリに含まれたデータは再利用することができ、これにより、IC全体のホットキャリア効果をシミュレートするのに要するコンピュータ資源の量を削減することができるからである。これにより、設計者は数多くのICについて容易にシミュレートすることができるので、「最適」設計解を比較的少ないコンピュータ資源を用いて求めることができる。
【0108】
以上の説明において、本発明は特定の実施形態に基づいて説明された。しかしながら、本発明の広い思想および範囲から外れない範囲において、本実施形態に対して様々な変形や変更が可能であることはいうまでもない。したがって、本明細書および図面は、限定的な意味ではなく、例示としてみなされるものである。
【図面の簡単な説明】
【図1】 本発明の一実施形態に係る集積回路におけるホットキャリア効果のシミュレーションを行うためのシステム構成を示すブロック図である。
【図2】 図1の構成の一部を詳細に示すブロック図である。
【図3】 本発明の一実施形態に係るシステムにおけるライブラリ生成条件設定の画面を示す図である。
【図4】 (a)はスルー立下り時間を決定する方法を示す図、(b)はスルー立上り時間を決定する方法を示す図である。
【図5】 本発明の一実施形態に係るシステムにおける入力スティミュラスパターン設定の画面を示す図である。
【図6】 ホットキャリア効果によるセルの動作劣化を示す図である。
【図7】 (a)(b)は本発明の一実施形態に係るソーステーブル遅延モデルを示す図である。
【図8】 (a)は駆動ソーステーブルを示す図、(b)〜(d)は駆動トランジスタの特性を示すグラフである。
【図9】 NMOSトランジスタの飽和領域および線形領域における動作をキャラクタライズするために用いられるモデルを示す図である。
【図10】 PMOSトランジスタの飽和領域および線形領域における動作をキャラクタライズするために用いられるモデルを示す図である。
【図11】 (a)は2入力NANDゲートを示す図、(b)は(a)のNANDゲートに対するスティミュラスパターンのテーブルを示す図である。
【図12】 ホットキャリアタイミングライブラリ中のデータの一例を示す図である。
【図13】 セルに対してホットキャリアタイミングライブラリを生成する方法の一例を示すフローチャートである。
【図14】 本発明の一実施形態に係るシミュレーションツールにおけるセルのツリー構造の画面を示す図である。
【図15】 (a),(b)は本発明の一実施形態に係るシミュレーションツールにおけるホットキャリアライブラリのデータを表示する画面を示す図である。
【図16】 本発明の一実施形態に係るシステムにおけるホットキャリアタイミングライブラリのデータを表示する画面を示す図である。
【図17】 本発明の一実施形態に係るシミュレーションツールにおける入力スルー時間と出力負荷容量を指定する画面を示す図である。
【図18】 図1の構成の一部を詳細に示すブロック図である。
【図19】 図13の方法によって生成されたホットキャリアタイミングライブラリに含まれたデータを用いて、集積回路のホットキャリア効果をシミュレーションする方法を示すフローチャートである。
【図20】 6入力NANDセルの構成を示す図である。
【図21】 Dフリップフロップの構成を示す図である。
【図22】 図21のDフリップフロップの構成を詳細に示す図である。
【図23】 図12の遅延データからテーブルを参照し、I/Oパス遅延tpdx,ドレイン飽和電流Idsat,ドレイン飽和電圧Vdsatを補間で求める方法を示す図である。
【図24】 直列接続された2個のトランジスタM1,M2を含むトランジスタ回路を示す図である。
【図25】 直列接続された2個のトランジスタのホットキャリア効果を決めるためのモデルとなる直列抵抗回路を示す図である。
【図26】 NANDゲートを示す図である。
【図27】 本発明の一実施形態に係るシミュレーションツールにおける処理実行メニュー画面を示す図である。
【図28】 本発明の一実施形態に係るシミュレーションツールにおけるセットアップファイル画面を示す図である。
【図29】 本発明の一実施形態に係るシミュレーションツールにおける処理実行メニュー画面を示す図である。
【図30】 (a),(b)は入力スルー時間を設定する2種類の観測電位を説明するための図である。
【図31】 本発明の一実施形態に係るコンピュータシステムを示すブロック図である。
【符号の説明】
102 ICセルデータ
112 劣化後タイミングデータ
224 スイッチング頻度情報
420 遅延データ
Claims (6)
- ICセルデータ入力部と、遅延データ生成部と、劣化後遅延データ生成部と、劣化後タイミングデータ生成部とを含むコンピュータにおいて、少なくとも1つの半導体デバイスを有する集積回路におけるホットキャリア効果をシミュレーションする方法であって、
前記ICセルデータ入力部が、
前記集積回路内の、少なくとも1つの半導体デバイスをそれぞれ有する少なくとも1つのセルを記述するICセルデータを受け、
前記遅延データ生成部が、
前記各セルについて、当該セルに含まれた各半導体デバイスの、異なる経年数における特性劣化を決定し、スティミュラスパターンを定め、前記スティミュラスパターンに対して、前記ホットキャリア効果に起因する経時特性劣化を求めることによって、ホットキャリア効果に起因する時間の経過と、入力スルー時間および出力負荷容量とを考慮した前記各セルにおける入力から出力までの伝播遅延を表す遅延データを生成し、
前記劣化後遅延データ生成部が、
前記遅延データおよび各セルのスイッチング動作情報に基づいて、スイッチング動作を考慮した前記各セルにおける入力から出力までの伝播遅延を記述する劣化後遅延データを生成し、
前記劣化後タイミングデータ生成部が、
前記劣化後遅延データと、前記各セルの遅延時間を示すスケーリング前タイミングデータとに基づいて、シミュレーションに用いるセルインスタンスにおける入力から出力までの伝播遅延を表した劣化後タイミングデータをスケーリングで生成する
ことを特徴とするシミュレーション方法。 - ICセルデータ入力部と、遅延データ生成部と、スイッチング回数決定部と、劣化後遅延データ生成部と、劣化後タイミングデータ生成部とを含むコンピュータにおいて、少なくとも1つの半導体デバイスを有する集積回路におけるホットキャリア効果をシミュレーションする方法であって、
前記ICセルデータ入力部が、
前記集積回路内の、少なくとも1つの半導体デバイスをそれぞれ有する少なくとも1つのセルを記述するICセルデータを受け、
前記遅延データ生成部が、
前記各セルについて、当該セルに含まれた各半導体デバイスの、異なる経年数における特性劣化を決定し、スティミュラスパターンを定め、前記スティミュラスパターンに対して、前記ホットキャリア効果に起因する経時特性劣化を求めることによって、ホットキャリア効果に起因する時間の経過と、入力スルー時間および出力負荷容量とを考慮した前記各セルにおける入力から出力までの伝播遅延を表す遅延データを生成し、
前記スイッチング回数決定部が、
所定の期間、当該集積回路の論理シミュレーションを行い、前記各セルのうち組合せ論理を含む一のセルを構成要素に分解し、各構成要素について、前記所定の期間において、個別に、前記構成要素の出力状態が変化する回数を計ることによって、前記各セルのスイッチング動作情報を生成し、
前記劣化後遅延データ生成部が、
前記遅延データおよび各セルのスイッチング動作情報に基づいて、スイッチング動作を考慮した前記各セルにおける入力から出力までの伝播遅延を記述する劣化後遅延データを生成し、
前記劣化後タイミングデータ生成部が、
前記劣化後遅延データと、前記各セルの遅延時間を示すスケーリング前タイミングデータとに基づいて、シミュレーションに用いるセルインスタンスにおける入力から出力までの伝播遅延を表した劣化後タイミングデータをスケーリングで生成する
ことを特徴とするシミュレーション方法。 - ICセルデータ入力部と、遅延データ生成部と、劣化後遅延データ生成部と、劣化後タイミングデータ生成部とを含むコンピュータにおいて、少なくとも1つの半導体デバイスを有する集積回路におけるホットキャリア効果をシミュレーションする方法であって、
前記ICセルデータ入力部が、
前記集積回路内の、少なくとも1つの半導体デバイスをそれぞれ有する少なくとも1つのセルを記述するICセルデータを受け、
前記遅延データ生成部が、
前記各セルについて、当該セルに含まれた各半導体デバイスの、異なる経年数における特性劣化を決定し、スティミュラスパターンを定め、前記スティミュラスパターンに対して、前記ホットキャリア効果に起因する経時特性劣化を求めることによって、ホットキャリア効果に起因する時間の経過と、入力スルー時間および出力負荷容量とを考慮した前記各セルにおける入力から出力までの伝播遅延を表す遅延データを生成し、
前記劣化後遅延データ生成部が、
前記各セルの駆動能力を、セルに係るI/Oパス遅延および配線遅延に基づくソーステーブル遅延モデルを用いて、複数の入力スルー時間および出力負荷容量に基づいてキャラクタライズを行い、前記遅延データおよび各セルのスイッチング動作情報に基づいて、スイッチング動作を考慮した前記各セルにおける入力から出力までの伝播遅延を記述する劣化後遅延データを生成し、
前記劣化後タイミングデータ生成部が、
前記劣化後遅延データと、前記各セルの遅延時間を示すスケーリング前タイミングデータとに基づいて、シミュレーションに用いるセルインスタンスにおける入力から出力までの伝播遅延を表した劣化後タイミングデータをスケーリングで生成する
ことを特徴とするシミュレーション方法。 - 請求項3記載のシミュレーション方法において、
入力スルー時間および負荷容量に基づく遅延値を含む駆動ソーステーブルを、各セルに対して生成する
ことを特徴とするシミュレーション方法。 - 請求項4記載のシミュレーション方法において、
前記駆動ソーステーブルを、入力スルー時間および出力負荷容量に基づいて参照し、補間によって、遅延値を求める
ことを特徴とするシミュレーション方法。 - 請求項4記載のシミュレーション方法において、
前記駆動ソーステーブルを参照するための入力スルー時間を、遅延計算のためのものとは別個に、設定する
ことを特徴とするシミュレーション方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14616599A JP4066399B2 (ja) | 1999-05-26 | 1999-05-26 | 集積回路におけるホットキャリア効果のシミュレーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14616599A JP4066399B2 (ja) | 1999-05-26 | 1999-05-26 | 集積回路におけるホットキャリア効果のシミュレーション方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000339356A JP2000339356A (ja) | 2000-12-08 |
JP4066399B2 true JP4066399B2 (ja) | 2008-03-26 |
Family
ID=15401611
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14616599A Expired - Fee Related JP4066399B2 (ja) | 1999-05-26 | 1999-05-26 | 集積回路におけるホットキャリア効果のシミュレーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4066399B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200809748A (en) * | 2006-08-09 | 2008-02-16 | Ind Tech Res Inst | Method for simulating circuit reliability and system thereof |
JP4989261B2 (ja) * | 2007-03-14 | 2012-08-01 | オンセミコンダクター・トレーディング・リミテッド | 回路シミュレーション方法 |
JP6434755B2 (ja) | 2014-09-09 | 2018-12-05 | 株式会社東芝 | 回路シミュレーション方法、回路シミュレーション装置およびコンピュータ読み取り可能な記録媒体 |
-
1999
- 1999-05-26 JP JP14616599A patent/JP4066399B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000339356A (ja) | 2000-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6278964B1 (en) | Hot carrier effect simulation for integrated circuits | |
US5974247A (en) | Apparatus and method of LSI timing degradation simulation | |
US10380299B2 (en) | Clock tree synthesis graphical user interface | |
US6499131B1 (en) | Method for verification of crosstalk noise in a CMOS design | |
US8381151B1 (en) | Method and system for power distribution analysis | |
US11003824B2 (en) | Computer implemented system and method of identification of useful untested states of an electronic design | |
US8954917B1 (en) | Method and system for performing fast electrical analysis and simulation of an electronic design for power gates | |
US6807660B1 (en) | Vectorless instantaneous current estimation | |
JP2005092885A (ja) | デジタル回路の統計的タイミング解析のためのシステムおよび方法 | |
JP2004252831A (ja) | Lsiの統計的遅延シミュレーション装置及びそのシミュレーション方法 | |
US6185723B1 (en) | Method for performing timing analysis of a clock-shaping circuit | |
US8595677B1 (en) | Method and system for performing voltage-based fast electrical analysis and simulation of an electronic design | |
US8234611B2 (en) | System and method for modeling I/O simultaneous switching noise | |
US7100140B2 (en) | Generation of graphical congestion data during placement driven synthesis optimization | |
JP4066399B2 (ja) | 集積回路におけるホットキャリア効果のシミュレーション方法 | |
JP5119506B2 (ja) | 半導体集積回路の設計装置、そのデータ処理方法、およびその制御プログラム | |
US6871329B2 (en) | Design system of integrated circuit and its design method and program | |
JP3243434B2 (ja) | Lsiのタイミング劣化シミュレーション装置およびシミュレーション方法 | |
US10970445B2 (en) | Methods and apparatus for performing timing driven hardware emulation | |
US10614182B2 (en) | Timing analysis for electronic design automation of parallel multi-state driver circuits | |
US7219046B2 (en) | Characterizing input/output models | |
JP3519591B2 (ja) | Lsiのタイミング劣化シミュレーション装置およびシミュレーション方法 | |
Zhao et al. | Fault-coverage analysis techniques of crosstalk in chip interconnects | |
JP2006031277A (ja) | 検証ベクタ生成方法およびこれを用いた電子回路の検証方法 | |
Sambamurthy et al. | A robust top-down dynamic power estimation methodology for delay constrained register transfer level sequential circuits |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041020 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041026 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050126 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050329 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050704 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050803 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20050902 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071107 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071228 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110118 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120118 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130118 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130118 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140118 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |