[go: up one dir, main page]

JP3183728B2 - 集積回路解析方法および装置 - Google Patents

集積回路解析方法および装置

Info

Publication number
JP3183728B2
JP3183728B2 JP26070292A JP26070292A JP3183728B2 JP 3183728 B2 JP3183728 B2 JP 3183728B2 JP 26070292 A JP26070292 A JP 26070292A JP 26070292 A JP26070292 A JP 26070292A JP 3183728 B2 JP3183728 B2 JP 3183728B2
Authority
JP
Japan
Prior art keywords
current
net
capacitance
circuit
determining
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
Application number
JP26070292A
Other languages
English (en)
Other versions
JPH05216955A (ja
Inventor
フィリップ・ジー・ヤストロウ
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.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies Inc
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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of JPH05216955A publication Critical patent/JPH05216955A/ja
Application granted granted Critical
Publication of JP3183728B2 publication Critical patent/JP3183728B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は一般に集積回路(IC)の分
野に関し、特にIC素子中での過度のエレクトロマイグレ
ーション(electromigration)を防止するための方法に関
する。
【0002】
【従来技術及びその問題点】集積回路素子中の電流密度
は素子が小型化するにつれて高くなる。高い電流密度に
よってエレクトロマイグレーションが発生することがあ
り、その結果、素子が故障する場合がある。エレクトロ
マイグレーションとは金属中の質量が電流の影響で移動
することである。これは電子から正の金属イオンへと運
動量が転移することによって起こる。高電流が例えばIC
内の金属導体を流れると、ある領域には金属イオンが累
積し、別の領域ではボイド(void)が形成さる。金属イオ
ンの累積によって隣接する導体への短絡が生じ、一方、
ボイドによって開路が生ずる場合がある。
【0003】例えばアルミニウムの薄膜導体のようなあ
る種の導体のエレクトロマイグレーション耐性は幾つか
の技術を用いて高めることができる。この技術には銅と
の合金、例えば0.5%の銅が含まれたアルミニウム
や、誘電体内に導体をカプセル化することや、フィルム
デポジション中に酸素を取り込むこと等がある。しか
し、これらの技術及びその他の技術は問題の原因を取り
除くこと、すなわち予期される素子の動作条件に従って
導体のサイズを最小限にすることにより、高い電流密度
を防止することと比較すると、いずれもコストが高くま
た信頼性に欠ける。ICの導体のサイズを最小限にするた
めに、多様な技術がエレクトロニクス産業で利用されて
いる。しかし、公知の技術はいずれも利用し易いもので
はない。事実、そのほとんどが冗長な手計算や、高度に
特殊化されたソフトウェアを必要とする。
【0004】
【目的】本発明の主要な目標は回路レイアウトがこのよ
うなエレクトロマイグレーションの仕様に従っているか
どうかを検証する自動的なまた信頼性のあるツールを提
供することである。本発明の別の目標は既存の回路解析
ソフトウェアを利用することによって、安価で確実な上
述のツールを得ることである。
【0005】
【概要】本発明は集積回路素子を製造、または設計する
ための方法を含んでいる。本発明の第1の実施例は次の
段階を設けている。すなわち、回路のネットのキャパシ
タンスを判定する段階と、前記ネットに関連する周波数
を判定する段階と、前記ネットに関連する電圧振幅(vol
tage swing)を判定する段階と、少なくとも前記キャパ
シタンスと周波数と電圧振幅に基づいて電流を計算する
段階と、少なくとも前記電流に基づいてネットの最小許
容幅を計算する段階と、ネットが前記の最小幅の条件を
満たしていないかどうかを表示する段階の各段階であ
る。
【0006】本発明の別の実施例は更に、ネットの枝(b
ranch)の数と、ネットに関連する静電流(static curren
t)がある場合にはそれを判定する段階と、前記電流を少
なくともキャパシタンスと、周波数と、電圧振幅と、枝
の数と、静電流の関数として計算する段階を設けてい
る。
【0007】本発明の別の実施例では、3層素子のノー
ドの最小幅の仕様は次の表に基づいて決定される。
【0008】 双方向電流 単方向電流 w1 = (i/3.0 + 0.3)μm w1 = (i/1.0 + 0.3)μm w2 = (i/3.0 + 0.3)μm w2 = (i/1.0 + 0.3)μm w3 = (i/5.5 + 0.6)μm w3 = (i/2.0 + 0.6)μm
【0009】ここでiは電流を表し、w1,w2及びw3は素子
のそれぞれの金属層の最小幅を表す。
【0010】本発明の更に別の実施例では、最小幅は次
のルールに従って決定される。
【0011】w = (i/7.5 + 0.4)μm
【0012】ここで、wは素子の層の最小幅である。
【0013】本発明の別の実施例は更に、電流が単一の
コンタクトで許容される電流よりも大きいかどうかを判
定し、そうである場合はその旨を表示する段階も含んで
いる。
【0014】本発明の更に別の実施例は更に、回路を表
すアートワーク上でノードの幅を増大するべき位置を図
形によって表示する段階も含んでいる。
【0015】本発明は更に回路のエレクトロマイグレー
ション特性を検証する方法も含んでいる。このような方
法は検証されるべき各ネットごとに実施されるべき次の
段階を特徴としている。すなわち、ネットを構成する金
属の形状に関するデータを判定する段階と、ネットの電
圧振幅に関するデータを判定する段階と、キャパシタン
スと平均周波数と電圧振幅に基づいてネットの充電及び
放電に必要な平均電流の絶対値を計算する段階と、前記
電流に基づいてネットに必要である金属の最小幅を計算
する段階と、ネットが最小必要幅を満たしていない場合
は回路のアートワーク上でそのネットの位置を図形的に
表示する段階である。
【0016】本発明は更に集積回路のエレクトロマイグ
レーション特性を検証するための装置も含んでいる。本
発明に基づく装置は回路のネットのキャパシタンスを判
定する装置と、前記ネットに関連する周波数を判定する
装置と、前記ネットに関連する電圧振幅を判定する装置
と、少なくとも前記キャパシタンスと周波数と電圧振幅
に基づいて電流を計算する装置と、少なくとも前記電流
に基づいてネットの最小許容幅を計算する装置と、ネッ
トが前記の最小幅の条件を満たしていないかどうかを表
示する装置とから構成されている。
【0017】本発明のその他の特徴と利点は好ましい実
施例の詳細な説明に関連して以下に記載する。
【0018】
【実施例】前述のように、エレクトロマイグレーション
とは金属導体内の電流密度に関連する現象である。本発
明はエレクトロマイグレーションの問題を以下の2つの
部分に分割するツールを考案した。すなわち、 1.回路内の任意のノード(すなわちネット)での平均
電流を計算すること、 2.各ノードが所定の電流を流すことができることを確
認するために、金属及びコンタクトの形状をチェックす
ること(コンタクトは代表的には別個の層を結合する金
属プラグである)。
【0019】このツールはHPUX(UNIX風のプログラミン
グ言語)のMAKE_ELECTROコマンドによって呼び出され
る。このコマンドは当該回路の主要周波数(major frequ
ency)を特定するために-Fオプションを利用している。
(MAKE_ELECTROプログラムのリスト、すなわちスクリプ
トと、MAKE_ELECTROによって呼び出されるサブルーチン
は下に記載されている。)個々のノードの動作周波数を
指定することも可能である。MAKE_ELECTROのスクリプト
は、デザインルールの点検(design rule check,DRC)及
びキャパシタンス抽出のプログラムを最初に実行するこ
とを必要としている。この例のDRC及びキャパシタンス
抽出プログラムはTRANTORと呼ばれており、これは本願
出願人によって開発されたプログラムである。TRANTOR
は基本的に図形データを処理し解析するプログラムであ
るので、ICのそれぞれのノードにおけるキャパシタンス
を計算するためのICアートワーク・データの解析に利用
することができる。しかし、本発明を実施するために特
定されたTRANTORプログラムを必ずしも必要としないこ
とに留意されたい。必要であるのは、点検される素子の
ノードに関するキャパシタンスのデータを作成できるプ
ログラムである。このようなプログラムは公知であるの
で、本明細書で詳細に説明する必要はない。従って、本
明細書で用いられるTRANTORという用語は回路の物理的
なレイアウトの記述から回路のキャパシタンス・データ
を抽出するための総称的なプログラムを意味するもので
ある。
【0020】以下の説明では、CMOS26及びCMOS34は本願
出願人が採用しているデザインルールもしくはプロセス
のことである。概略的に説明すると、CMOS26は超大規模
ICチップを製造するための高速度で高密度のCMOSプロセ
スである。これは回路内に3レベルまでのアルミニウム
相互接続を有する1μmのFETを製造する。CMOS34は1
または2レベルのアルミニウム金属化を行ったポリシリ
コン・ゲートCMOSの製造プロセスである。
【0021】MAKE_ELECTROは一般にcvf電流と呼ばれる
ノードでの平均電流を計算する。すなわち、この電流
は、以下に説明するように、キャパシタンスと電圧と周
波数の積に比例する。MAKE_ELECTROは更に、ユーザが指
定した任意の静電流も考慮する。駆動点(電流がノード
に入る点)から比較的離れたノード上の点は駆動点に比
較的近い点よりも電流が少ない。何故ならば、ネット上
の点での電流は、キャパシタンスが導体に沿って分布し
ている態様を図示した図1に示すように、下流側のキャ
パシタンスの関数であるからである。ツールMAKE_ELECT
ROはTRANTORによって抽出されてデータファイルに記憶
されたキャパシタンスを利用する。公知のキャパシタン
ス抽出プログラムには制約があるので、MAKE_ELECTROは
駆動点からの距離の関数としての増分キャパシタンスを
考慮するのではなく、キャパシタンスを一つの集中値と
してモデル化する。更に、TRANTORはノードにおける枝
の数を考慮しないことに留意されたい。
【0022】図2は、分岐したノードで電流が分割さ
れ、単一の枝しかない場合よりも少ない電流密度がノー
ドで生成される態様を示している。(図中、電流i0が電
流i1とi2 に分割される。)TRANTORによって作成される
データには、キャパシタンスがネットのいくつかの枝に
渡ってどの様に分配されるの情報はない。従って、駆動
点における電流に基づいて1つのノード全体を解析する
場合は、MAKE_ELECTROプログラムはそのノードを流れる
“最悪の場合”の平均電流を予測することになるであろ
う。しかし、MAKE_ELECTROを使えば、ユーザは各ノード
で(後述するように)枝の数を手動で指定することが可
能であり、それによって計算されたキャパシタンス・デ
ータを一つの集中値として持つという限界が緩和される
ことに留意されたい。
【0023】所与の任意のノードの駆動点における平均
電流iはMAKE_ELECTROによって次の方程式に従って計算
される。
【0024】 i=((bi_mult×c×vswing×周波数)+static)/枝
の数)
【0025】ここでvswingはこのノード上の電圧振幅を
表し、staticはこのノード上でユーザが指定した静電流
を表し、またbi_multは電流が単方向である場合は1で
あり、双方向である場合は2である。
【0026】ノードに関連する平均電流を計算するため
に用いられるパラメタを特定するには3つの方法があ
る。これらは優先順位が低い順から高い順に次の通りで
ある。 1.予期値、つまりデフォルト値 2.回路図(つまり回路図を表すデータファイル)中で
与えられる値 3.ファイルOVERRIDE_DEFAULTS中で与えられる値
【0027】一例として単一ノードのキャパシタンスを
考えてみることにしよう。デフォルト値はTRANTORが付
与する値である。ノードに余分のキャパシタンスを付加
するため、図3に示すように、属性E_capを、付加され
るべきキャパシタンス量と共に回路図に配することがで
きる。図3では、OUTとラベル付けされたノードに4e-12
(4ピコファラッド;なお、周知のようにe-12とは10
-12を表す)のキャパシタンスが付加されている。更
に、パラメータE_stat=1e-6はノードINにおける静電流
を示し、E_uni=1はノードNINにおける1ミリアンペアの
単方向電流を示し、E_branch=4はノードOUTが4個の枝
を有するものとして解析されなければならないことを示
している。キャパシタンスを修正する別の方法はファイ
ルOVERRIDE_DEFAULTSを編集することである。ファイルO
VERRIDE_DEFAULTSとはデフォルト値、例えばキャパシタ
ンス抽出プログラムによって生成された値、をオーバー
ライド、つまり別のもので置き換えるためにユーザによ
って作成されるデータファイルである。
【0028】110℃の温度でのCMOS26用のエレクトロ
マイグレーション仕様によって金属1、金属2及び金属
3のそれぞれの最小幅に関する以下の方程式が得られ
る。ここで、金属1、金属2及び金属3は回路のそれぞ
れの金属層を示す。(これらの方程式は勿論、最小のラ
イン幅をどのようにして指定できるかの例であるに過ぎ
ない。特定の事例に適切な特定の方程式は採用されるデ
ザインルールによって異なる。)
【0029】 双方向電流 単方向電流 w1 = (i/3.0 + 0.3)μm w1 = (i/1.0 + 0.3)μm w2 = (i/3.0 + 0.3)μm w2 = (i/1.0 + 0.3)μm w3 = (i/5.5 + 0.6)μm w3 = (i/2.0 + 0.6)μm CMOS26における金属1と金属2の双方のルールは次の通
りである。
【0030】w = (i/0.75 + 0.4)μm
【0031】前述した通り、CMOS26とCMOS34は本願出願
人が採用しているそれぞれ異なる製造プロセスとデザイ
ンルールのセットを示している。この仕様に関する限
り、これらのプロセスの意義は、CMOS26の素子が3層ま
での導体を有し、CMOS34が2層までの導体を有している
ことにある。
【0032】各ネットのレイアウトは計算された最小幅
よりも狭い箇所について(TRANTORを用いて)MAKE_ELEC
TROによって調べられる。予測電流を流すのに充分であ
るかどうかを確認するため、全てのコンタクトを囲む金
属も点検される。
【0033】ツールMAKE_ELECTROは更にネット内の電流
が、いずれかの種類の単一のコンタクトを流れることが
許容されている電流よりも大きいかどうかを判定する。
そうである場合は、ネット上の当該種類の全てのコンタ
クトにフラグが立てられ、この電流を流すためには複数
個のコンタクトが必要であることが示される。
【0034】エラーは全てデータベースへ出力され、従
来の図形エディタによって調べることができる(このよ
うなエディタはよく知られている)。次にエレクトロマ
イグレーションエラーはこの回路のためのアートワーク
の上に重ねられ、それによって最小幅の仕様に一致する
ために金属を追加しなければならない箇所を設計エンジ
ニアが判断し易くする。
【0035】図4(a)はファイルOVERRIDE_DEFAULTS
内で10pFのキャパシタンスを有するように指定されたネ
ットSIG1に関連する導体とコンタクト(コンタクトは×
印が入っている矩形で表す)を示している。図4(b)
は100MHzの周波数で点検した際に生じたエレクトロマイ
グレーションエラーを示している。図4(b)には2つ
の種類のエラーが示されている。点描で示す領域はコン
タクトを除外した金属幅に関するエラーを表し、斜線で
ハッチングされた領域はコンタクトに関連するエラーを
示している。コンタクト自体が点描領域にあるという事
実が示すように、ネット内には単一のコンタクト内で流
すことができるよりも大きな電流がある。
【0036】MAKE_ELECTROによって作成され、"electro
_$ICPROCESS/electro_log"(ここで"$"は変数名を表
す)と呼ばれるログファイル(プログラムの実行中にエ
ラー・メッセージまたはその他の種類のデータが書き込
まれるファイル)は、SIG1の点検に用いられるパラメタ
と、その結果生じたエラーの数と種類を示す以下の行を
含んでいる。
【0037】 SIG1 C=1.00078e-11 I=11.00858 w1=3.96952666666667 w2=3.9695266666667 w3=2.60156 branches=1 static=0 f=100000000.0 v=5.5 BIDIR metal1: 2 metal1 contact: 3 metal2 contact: 1
【0038】上記のリスト中、w1, w2, w3は金属1、金
属2及び金属3の仕様に必要なそれぞれの幅である。I=
11.00858ミリアンペアであり、電流は双方向電流である
ので、この例ではコンタクト当たり3ミリアンペアの制
限に違反し、全電流を流すには少なくとも4個のコンタ
クトが必要であろう。(コンタクト当たり3ミリアンペ
アの制限がCMOS26のデザインルールで規定されてい
る。)更に、このリストは2つの箇所で金属1(metal1)
の層の幅を増大しなければならないことと、金属1の3
個のコンタクトと金属2の1個のコンタクトにおいて最
大電流の仕様を越えていることを示している。
【0039】更に、平均電流は枝の数を変更することに
よって4分割することができる。このようにした場合に
はこの例ではこのセルは合格する。しかし、枝の値を変
更するとエラーを隠ぺいすることがあり、従ってbranch
es=1となっている場合のエラーは、枝の数を増加する前
に、常に考慮する必要があることに留意することが重要
である。
【0040】図5は本発明の一実施例に基づくエレクト
ロマイグレーション検証のアルゴリズムのフローチャー
トである。次にこのフローチャートを説明し、その後、
ソースコードを簡単に説明する。
【0041】ブロック10で、プログラムはまだ点検さ
れていないサブブロック(すなわち階層的設計における
もっと低位のブロック)があるかどうかを判定する。こ
のようなサブブロックがある場合は、プログラムはブロ
ック12に分岐し、残りの回路を点検する前にこのサブ
ブロックを点検する。
【0042】ブロック14で、プログラムはこの回路の
手元にあるキャパシタンス・データが最新のデータであ
るかどうかを判定する。これはキャパシタンス・データ
ファイルと回路モデル・データファイルのそれぞれの日
付コードを調べることによって行われる。
【0043】キャパシタンス・データが現在データでは
ない場合は、ブロック16でキャパシタンス抽出プログ
ラムが実行される。
【0044】ブロック18で、回路図もしくはファイル
OVERRIDE_DEFAULTSからの周波数、キャパシタンス、電
圧等のデータがコンパイルされる、つまりメモリ内に読
み込まれる。
【0045】ブロック20で特定のノードのそれぞれの
層の最小幅が判定され、回路のアートワークによって示
されるそれぞれの実際の幅と比較される。
【0046】ブロック22で、エラーがある場合にはそ
れをそこに金属を付加しなければならない形状として出
力する。
【0047】ブロック24で、プログラムは全てのノー
ドの点検が終了したかどうかを判定し、終了していない
場合はブロック20へ循環して、リスト中の次のノード
を点検する。
【0048】ブロック26で、導体の幅を増大しなけれ
ばならない部位を設計エンジニアが容易に判断できるよ
うに、全てのエラー形状がアートワークに重ね書きす
る。
【0049】本発明の一実施例に基づくエレクトロマイ
グレーション検証のためのシステムのソースコードを表
1ないし表67に示す。これらの表には以下のソースコ
ードが収められている。 表 1〜表12:make_electro 表13〜表55:art.cbm 表56〜表62:doWidth 表63〜表65:buildElectroScript 表66 :getSchProps 表67 :electroDefault 表68〜表69:migrate.batch 表70〜表73:electro.cbm
【0050】
【表1】
【0051】
【表2】
【0052】
【表3】
【0053】
【表4】
【0054】
【表5】
【0055】
【表6】
【0056】
【表7】
【0057】
【表8】
【0058】
【表9】
【0059】
【表10】
【0060】
【表11】
【0061】
【表12】
【0062】
【表13】
【0063】
【表14】
【0064】
【表15】
【0065】
【表16】
【0066】
【表17】
【0067】
【表18】
【0068】
【表19】
【0069】
【表20】
【0070】
【表21】
【0071】
【表22】
【0072】
【表23】
【0073】
【表24】
【0074】
【表25】
【0075】
【表26】
【0076】
【表27】
【0077】
【表28】
【0078】
【表29】
【0079】
【表30】
【0080】
【表31】
【0081】
【表32】
【0082】
【表33】
【0083】
【表34】
【0084】
【表35】
【0085】
【表36】
【0086】
【表37】
【0087】
【表38】
【0088】
【表39】
【0089】
【表40】
【0090】
【表41】
【0091】
【表42】
【0092】
【表43】
【0093】
【表44】
【0094】
【表45】
【0095】
【表46】
【0096】
【表47】
【0097】
【表48】
【0098】
【表49】
【0099】
【表50】
【0100】
【表51】
【0101】
【表52】
【0102】
【表53】
【0103】
【表54】
【0104】
【表55】
【0105】
【表56】
【0106】
【表57】
【0107】
【表58】
【0108】
【表59】
【0109】
【表60】
【0110】
【表61】
【0111】
【表62】
【0112】
【表63】
【0113】
【表64】
【0114】
【表65】
【0115】
【表66】
【0116】
【表67】
【0117】
【表68】
【0118】
【表69】
【0119】
【表70】
【0120】
【表71】
【0121】
【表72】
【0122】
【表73】
【0123】さて、ソースコードを参照すると、make_e
lectroのスクリプトは全てのユーザ・オプション及び変
数の処理を制御する。次にこのスクリプトは、プログラ
ムelectro_$ICPROCESS/electro_passed(make_electro
のスクリプトの216行(表7)、294行(表9)及
び297行(表10)を参照)をターゲットとしてcbma
ke(階層的なチップ設計用のUNIX MAKE相当のプログラ
ム;以下で使用されている用語及び動作説明はUNIX上で
広く使用され、当業者周知のMAKEシェルスクリプト、各
種の標準的ツールのスクリプトのそれを参考にされた
い)を呼び出す。それを以て適正な動作が行われている
かどうかを確認するための一連の従属性検査が開始され
る。)
【0124】基本cbmake制御ファイルはart.cbm(表1
3〜表55)であり、これは1384行でelectro.cbm
(表70〜表73)をインクルードする、つまり取り込
んでいる。ターゲットelectro_passedの定義はelectro.
cbmの82行に記載されている。この定義は点検中のブ
ロックにファイルtrantor.db(すなわちTRANTORデータ
ベース)が存在すれば、これが実行されると述べてい
る。trantor.dbが正当であらねばならないルールはelec
tro.cbmスクリプトの20行に記載されている。このル
ールはターゲットelectro_readyが正当でなければなら
ないと述べている。10行は依存連鎖中のターゲットel
ectro_readyを記述している。このターゲットには3つ
の依存項がある(このターゲットが図5のブロック10
を実行する)。第1に、11行は全てのサブブロックの
検証が終了していなければならないこと、すなわちそれ
らのターゲットelectro_passedが正当でなければならな
いと述べている。正当ではないサブブロックは全て82
行で開始される検証がなされる。更に、キャパシタンス
抽出ターゲット(cap_passed)は最新でなければならな
い。cap_passedが更新されていない場合は、art.cbmの
1323行で開始されるルールに従って伸張(expand)さ
れる。キャパシタンス抽出方法は公知であるので、これ
らのルールは本明細書には詳細には記載しない。electr
o_readyの最後の依存項は図5のブロック18に示した
動作から生ずるファイルmigrate.in(electro.cbmの1
2行)中にある。
【0125】migrate.inを構築するルールはelectro.cb
mの23行から開始される。最初に、周波数が変化して
いれば、回路自体が変化していなくても関数same_as_la
st_frequency(art.cbmの299行で定義されている)
によってmigrate.inが再構築される。このターゲットに
ついての別の依存項は、回路図内のユーザが指定した全
ての属性、つまり作成されるユーザ用のデフォルトのオ
ーバーライドファイル・テンプレート(ソースコード中
ではdefaultsと呼ばれる)と、capsum.maxと呼ばれるユ
ーザ読出し可能なファイルへコンパイルされるキャパシ
タンス抽出データ、がコンパイルされたかどうかを確認
するために点検される回路属性ターゲット(sch_prop
s)である。
【0126】sch_propsファイルはelectro.cbmの70行
に記載されているルールによって作成される。sch_prop
sファイルはTRANTORスクリプトのget_sch_propsで実行
される一連のTRANTORコマンドを含んでいる。このget_s
ch_propsは全ての回路図属性をリストアップし、全ての
回路図的エレクトロマイグレーション特性のプリフィッ
クスと定められている"E_"で始まる属性を抽出する。ユ
ーザが属性をテキストで定義するための場所であるdefa
ults(デフォルト)ファイルが先ずelectro_defaultsプ
ログラムによってテンプレートとして作成されるので、
ユーザは適当なシンタクスを覚えておく必要がない。
(ソースコードのdefaultsファイルは前述のファイルov
erride_defaultsと等価であることに留意されたい。)
【0127】migrate.inについての依存が正当であるこ
とが判明すると、このファイルが作成される。これはBu
ildElectroScriptによって行われる。このスクリプト
は、capsum.max、defaults及びsch_propsからの全ての
データをコンパイルして回路内の全てのノードの幅を点
検するために使用できる一連のコマンドにするためにun
ix awkプログラムを使用する。
【0128】この時点で、electro_ready目標プログラ
ムが正当にされ、TRANTORデータベース(trantor.db)
の作成に必要であるアクションによって実際のエレクト
ロマイグレーションの点検が開始される。このようなア
クションはelectro.cbmの22行で開始される。これら
のアクションのための制御ファイルは26行で呼び出さ
れるmigrate.batchである。このスクリプトはいくつか
の変数を初期化し、スクリプトmigrate.inを実行する。
【0129】migrate.inはプログラムdoWidthへの一連
の呼出しを含んでいる。図5のブロック20ないし24
に渡るループは、予め計算された値を用いて回路内の各
ノードについてdoWidthを呼び出すmigrate.inによって
実行される。doWidthは金属の形状を点検し、また必要
に応じて“バイオレーション(違反)層”へエラーを出
力する。エレクトロマイグレーションのバイオレーショ
ンにより金属を付加しなければならない箇所を示すため
に実際のアートワークに図形的に重ねられるのはこのバ
イオレーションである。
【0130】前述の解析は一般には電力を供給しないノ
ードについて正しい。その理由は、給電線を流れる電流
はその線上のキャパシタンスだけの関数ではないからで
ある。この電流は給電線が供給するブロックで消費さ
れ、放電される全電流の関数である。極端に最悪の場合
を調べる方法は、ブロックの内部の全てのキャパシタン
スを加算し、ブロック全体の最大周波数に基づいて可能
である電力供給の全電流容量を計算することである。も
っと良い方法は、ある予め規定された条件でブロック内
で消散すると予測される平均電力を計算することであ
る。そこでエレクトロマイグレーションの仕様と、ivも
しくはcv2f電力消散に寄与する平均電流に基づいて給電
部の寸法を定めることができる。
【0131】前述のシステムは本発明の一実施例の特定
の例である。この実施例の多くの変更が特許請求の範囲
に記載した本発明の真の範囲内に含まれる。例えは、前
述のシステムを次のように修正することができる。 (1)ノード上の電圧とキャパシタンスを駆動点からの距
離の関数として算出することができる。それが行われな
い場合は、ネット上の全ての点で、駆動点で必要な幅に
ついての点検が行われる。 (2)コンタクトの数は問題点があるかどうかを判定する
ことによって点検できる。前述の方法は、計算された平
均電流が単一のコンタクトが流すことができる電流量よ
りも大きいか否かについて、ノード上の全てのコンタク
トにフラグを立てる。必要なコンタクト数は、単一のコ
ンタクトが搬送可能である電流量をログファイルから判
定し、その数値で平均電流を割ることによって計算する
ことができる。 (3)前述のシステムは110℃の代わりに、または11
0℃に加えて85℃でのエラーの点検を行うようにも変
更することができる。
【0132】
【効果】以上詳細に説明したように、本発明によれば、
IC中でエレクトロマイグレーションが問題となる可能性
のある箇所を簡単に特定することができる。
【図面の簡単な説明】
【図1】ノードのキャパシタンスの分布を例示する回路
図。
【図2】1つの入力枝と2つの出力枝を持つノードを示
す図。
【図3】ICの例を示す回路図。
【図4】本発明の一実施例におけるエレクトロマイグレ
ーション仕様違反をICのアートワーク上に示す態様を例
示する図。
【図5】本発明の一実施例に基づくエレクトロマイグレ
ーション検証のアルゴリズムのフローチャート。
【符号の説明】
i0、i1、i2:電流 IN、NIN、OUT:ノード
フロントページの続き (73)特許権者 399117121 395 Page Mill Road Palo Alto,Californ ia U.S.A. (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 666 H01L 21/82

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】集積回路のエレクトロマイグレーション特
    性を検証する装置における集積回路解析方法であって、 (a)前記回路についてのアートワーク・データを解析
    して、前記回路のネットについてのキャパシタンスを求
    めるステップと、 (b)前記ネットについての周波数を求めるステップ
    と、 (c)前記ネットについての電圧の振幅を求めるステッ
    プと、 (d)少なくとも、前記キャパシタンス、周波数、及
    び、電圧の振幅に基づいて電流を計算するステップと、 (e)少なくとも前記電流に基づいて前記ネットについ
    ての最小許容幅を計算するステップと、 (f)前記ネットが前記最小幅を満たすことができない
    か否かを表示するステップとを含む集積回路解析方法。
  2. 【請求項2】前記ネットの枝の数、及び、もしあれば、
    前記ネットについての静電流を求めるステップと、 前記ステップdにおいて、前記電流を、少なくとも前記
    キャパシタンス、周波数、電圧の振幅、枝の数、及び、
    静電流の関数として計算するステップとを含むことを特
    徴とする請求項1に記載の方法。
  3. 【請求項3】集積回路のエレクトロマイグレーション特
    性を検証するための装置であって、 (a)前記回路のネットのキャパシタンスを求めるため
    の手段と、 (b)前記ネットについての周波数を求めるための手段
    と、 (c)前記ネットについての電圧の振幅を求めるための
    手段と、 (d)少なくとも、前記キャパシタンス、周波数、及
    び、電圧の振幅に基づいて電流を計算するための手段
    と、 (e)少なくとも前記電流に基づいて前記ネットについ
    ての最小許容幅を計算するための手段と、 (f)前記ネットが前記最小幅を満たすことができない
    か否かを表示するための手段とを有する装置。
  4. 【請求項4】前記ネットの枝の数、及び、前記ネットに
    ついての静電流を求めるための手段を含み、 前記電流計算手段は、 前記電流を、少なくとも前記キャ
    パシタンス、周波数、電圧の振幅、枝の数、及び、静電
    流の関数として計算することを特徴とする請求項3に記
    載の装置。
JP26070292A 1991-09-03 1992-09-03 集積回路解析方法および装置 Expired - Fee Related JP3183728B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US753,521 1991-09-03
US07/753,521 US5410490A (en) 1991-09-03 1991-09-03 Electromigration verification method and apparatus

Publications (2)

Publication Number Publication Date
JPH05216955A JPH05216955A (ja) 1993-08-27
JP3183728B2 true JP3183728B2 (ja) 2001-07-09

Family

ID=25030993

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26070292A Expired - Fee Related JP3183728B2 (ja) 1991-09-03 1992-09-03 集積回路解析方法および装置

Country Status (2)

Country Link
US (1) US5410490A (ja)
JP (1) JP3183728B2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5581475A (en) * 1993-08-13 1996-12-03 Harris Corporation Method for interactively tailoring topography of integrated circuit layout in accordance with electromigration model-based minimum width metal and contact/via rules
US5648920A (en) * 1994-11-22 1997-07-15 Texas Instruments Incorporated Method and apparatus for deriving total lateral diffusion in metal oxide semiconductor transistors
JPH09293765A (ja) * 1996-04-26 1997-11-11 Nec Corp 半導体集積回路のエレクトロマイグレーション信頼性検証方法及びその装置
US5831867A (en) * 1996-06-24 1998-11-03 Sun Microsystems, Inc. Method and system for automated electromigration verification in accordance with fabrication process rules
US6349401B2 (en) 1996-09-12 2002-02-19 Matsushita Electric Industrial Co., Ltd. Semiconductor integrated circuit, design method and computer-readable medium using a permissive current ratio
JP3019020B2 (ja) * 1997-03-28 2000-03-13 日本電気株式会社 回路設計方法およびシステム
US6072945A (en) * 1997-06-26 2000-06-06 Sun Microsystems Inc. System for automated electromigration verification
US5963729A (en) * 1997-06-26 1999-10-05 Sun Microsystems Inc. Method for automated electromigration verification
US6038383A (en) * 1997-10-13 2000-03-14 Texas Instruments Incorporated Method and apparatus for determining signal line interconnect widths to ensure electromigration reliability
US6675139B1 (en) * 1999-03-16 2004-01-06 Lsi Logic Corporation Floor plan-based power bus analysis and design tool for integrated circuits
US7016794B2 (en) 1999-03-16 2006-03-21 Lsi Logic Corporation Floor plan development electromigration and voltage drop analysis tool
US6308303B1 (en) * 1999-04-26 2001-10-23 Intel Corporation Wire tapering under reliability constraints
JP3160586B2 (ja) 1999-04-27 2001-04-25 松下電子工業株式会社 Cmosインバータ及びそれを用いたスタンダードセル
US6543041B1 (en) * 1999-06-15 2003-04-01 Cadence Design Systems, Inc. Method and apparatus for reducing signal integrity and reliability problems in ICS through netlist changes during placement
US6766506B1 (en) * 2000-11-07 2004-07-20 Silicon Metrics Corporation Interconnect model compiler
US6769103B2 (en) * 2002-07-19 2004-07-27 Micron Technology, Inc. Line width check in layout database
JP2004070721A (ja) * 2002-08-07 2004-03-04 Renesas Technology Corp 自動配置配線装置
US7089129B2 (en) * 2003-11-12 2006-08-08 International Business Machines Corporation Electromigration check of signal nets using net capacitance to evaluate thermal characteristics
JP2008134845A (ja) * 2006-11-28 2008-06-12 Toshiba Corp 半導体集積回路のレイアウトデータ作成装置及びレイアウトデータ作成方法、半導体装置の製造方法
US7752582B2 (en) * 2007-11-17 2010-07-06 Texas Instruments Incorporated Method and apparatus for determining electro-migration in integrated circuit designs
US8211776B2 (en) 2010-01-05 2012-07-03 International Business Machines Corporation Integrated circuit line with electromigration barriers
US9123726B2 (en) 2013-01-18 2015-09-01 International Business Machines Corporation Selective local metal cap layer formation for improved electromigration behavior
US9076847B2 (en) 2013-01-18 2015-07-07 International Business Machines Corporation Selective local metal cap layer formation for improved electromigration behavior
RU2567016C1 (ru) * 2014-06-19 2015-10-27 Открытое акционерное общество "Ангстрем-Т" Способ оценки электромиграционных параметров металлических проводников
US10157254B2 (en) 2015-12-29 2018-12-18 Taiwan Semiconductor Manufacturing Co., Ltd. Techniques based on electromigration characteristics of cell interconnect

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3683417A (en) * 1970-01-23 1972-08-08 Bell Telephone Labor Inc Apparatus and machine-implemented process for determining the terminal characteristics of a bipolar transistor
UST940015I4 (en) * 1974-10-03 1975-11-04 Transmission line analysis and design process
EP0077862B1 (fr) * 1981-10-28 1986-02-26 International Business Machines Corporation Procédé de caractérisation du comportement en fiabilité de dispositifs semi-conducteurs bipolaires
US5040134A (en) * 1989-05-26 1991-08-13 Intel Corporation Neural network employing leveled summing scheme with blocked array
US5049811A (en) * 1990-07-02 1991-09-17 Motorola, Inc. Measuring integrity of semiconductor multi-layer metal structures

Also Published As

Publication number Publication date
JPH05216955A (ja) 1993-08-27
US5410490A (en) 1995-04-25

Similar Documents

Publication Publication Date Title
JP3183728B2 (ja) 集積回路解析方法および装置
US5737580A (en) Wiring design tool improvement for avoiding electromigration by determining optimal wire widths
US6272668B1 (en) Method for cell swapping to improve pre-layout to post-layout timing
US5724250A (en) Method and apparatus for performing drive strength adjust optimization in a circuit design
KR100407187B1 (ko) 반도체집적회로,그설계방법및기록매체
US5726903A (en) Method and apparatus for resolving conflicts between cell substitution recommendations provided by a drive strength adjust tool
US20080115102A1 (en) System and method for automatic elimination of connectivity mismatches during construction of a mask layout block, maintaining process design rule correctness
US6684377B2 (en) Access cell design and a method for enabling automatic insertion of access cells into an integrated circuit design
US20060225017A1 (en) Integrated circuit layout design system, and method thereof, and program
US10192019B2 (en) Separation and minimum wire length constrained maze routing method and system
US6751744B1 (en) Method of integrated circuit design checking using progressive individual network analysis
KR100387756B1 (ko) 반도체 집적 회로의 신뢰성 검증 방법 및 셀 라이브러리데이터베이스
JP2002110797A (ja) クロック配線の設計方法
US6907587B2 (en) System and method for correcting connectivity errors in a mask layout file
US7051311B2 (en) Semiconductor circuit designing method, semiconductor circuit designing apparatus, program, and semiconductor device
EP1820130B1 (en) Method and system for improving the manufacturability of integrated circuits
US6971082B2 (en) Method and apparatus for revising wiring of a circuit to prevent electro-migration
US7185296B2 (en) Method of extraction of wire capacitances in LSI device having diagonal wires and extraction program for same
US7200829B2 (en) I/O circuit power routing system and method
US7003750B2 (en) Topology based wire shielding generation
US8429584B2 (en) Method, electronic design automation tool, computer program product, and data processing program for creating a layout for design representation of an electronic circuit and corresponding port for an electronic circuit
Venkataraman et al. Determination of yield bounds prior to routing
US20080147373A1 (en) Method for analyzing the design of an integrated circuit
CN112749526A (zh) 电源轨设计方法、装置及其非瞬时计算机可读介质
US20060225012A1 (en) Layout verification method and layout design unit

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees