(57)【要約】【課題】  大容量化された半導体メモリの電源電圧変動を計算する場合には、膨大なデータ量となり、ＣＰＵ時間、メモリ容量、ディスク容量等の計算機資源が膨大になるという問題がある。【解決手段】  本発明のレイアウト検証方法では、メモリアレイを選択された行デコーダ、列デコーダ、マットのみの簡略モデルとする。簡略モデルから縮小ネットリストを作成し、電流波形を算出し電源電圧変動をシミュレーションする。メモリアレイを簡略モデル化することで、ＣＰＵ時間、メモリ容量、ディスク容量等の計算機資源が大幅に削減できる。【選択図】      図１
2008033404.tif 000002
【特許請求の範囲】
【請求項１】
複数のバンクを有する半導体メモリのレイアウト検証方法において、半導体チップのネットリストを周辺回路ネットリストとメモリアレイネットリストに分け、前記メモリアレイネットリストは簡略化モデルから作成され、前記周辺回路ネットリスト及びメモリアレイネットリストを回路シミュレーションすることで電流波形を算出することを特徴とするレイアウト検証方法。
【請求項２】
前記メモリアレイネットリストは、１バンク分作成され、バンク内の選択されたマット、行デコーダ、列デコーダを構成するトランジスタを含む簡略化モデルから作成されることを特徴とする請求項１に記載のレイアウト検証方法。
【請求項３】
選択されたマットのネットリストは、メモリセル行を選択する下位行デコーダと、選択されたメモリセル行に接続されたセンス増幅回路と、前記センス増幅回路を選択する下位列デコーダから構成されることを特徴とする請求項２に記載のレイアウト検証方法。
【請求項４】
前記選択されたマットのネットリストにより算出されたそれぞれの電流波形は加算され、１マットに対して１つの電流波形として纏められることを特徴とする請求項３に記載のレイアウト検証方法。
【請求項５】
行デコーダのネットリストは、選択された行デコーダのトランジスタを含み、非選択の行デコーダのトランジスタは省略されることを特徴とする請求項２に記載のレイアウト検証方法。
【請求項６】
列デコーダのネットリストは、選択された列デコーダのトランジスタを含み、非選択の列デコーダのトランジスタは省略されることを特徴とする請求項２に記載のレイアウト検証方法。
【請求項７】
さらに前記電流波形を電源ネットリストの節点に配置し、電源電圧変動を算出することを特徴とする請求項１に記載のレイアウト検証方法。
【請求項８】
請求項１乃至７のいずれかに記載のレイアウト検証方法を実施する手段を備えたことを特徴とするレイアウト検証装置。
【請求項９】
ネットリスト抽出手段、電流波形データ計算手段、電流源付加手段、電圧変動計算手段、電圧変動画像表示手段を備えたことを特徴とする請求項８に記載のレイアウト検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のバンクを備えた大容量の半導体メモリにおける電源配線のレイアウト検証方法及びレイアウト検証装置に関する。
【背景技術】
【０００２】
半導体メモリの大容量化は、１〜２年毎に２倍のペースで進展している。この大容量化を達成するためにパターンの微細化も進められている。例えばダイナミック型ランダムアクセスメモリ（以後、ＤＲＡＭと略す）は１ギガビットクラスの大容量製品が量産され、その設計パターンとしては微細化された０．０９μｍプロセスの採用されている。このような大容量化された半導体メモリにおいては、チップ内の電源配線における電圧変動とかエレクトロマイグレーションが問題になる。この問題を検証する分野はパワーインテグリティとも呼ばれ、いくつかのソフトウェア業者から検証ツールが市販されている。
【０００３】
電圧変動の検証方法は、静的検証（スタティック方式とも言う）と過渡解析検証（ダイナミック方式とも言う）に大別される。静的検証は、統計的手法や論理解析を用いてチップ動作状態における平均条件や最悪条件を推定し、時間変化によらないチップ内部での電源電圧変動値を計算するものである。他方の過渡解析検証は、チップ動作状態でのチップ内部での電源電圧変動の時間変化を計算するものである。ＤＲＡＭ等の半導体メモリでは、動作時におけるダイナミックな電流変化が大きいため静的検証では不充分であり、過渡解析検証が必要となる。従って本明細書では、過渡解析検証を中心にして説明する。なお、エレクトロマイグレーションにおける平均配線寿命は、各配線の電圧変動を算出し、この電圧変動による平均電流密度から算出される。従ってエレクトロマイグレーションは電圧変動の範疇に含まれるものであり、以下においてはこれらを纏めて電源電圧変動として説明する。
【０００４】
最初に本明細書にて使用される主要な用語、事項に関して説明する。
【０００５】
（１）電源
明示的に記述しない限り、電源とはチップ外から供給される定電圧源（外部電源）の他、接地電源（アース又はグラウンド）、及びチップ内部で外部電源を降圧又は昇圧して発生される定電圧源（内部電源）を総称するものとする。また同様に、これらの電源に関する配線パターン、レイアウトパターン、あるいは記号も総称して電源配線、電源パターン、ＶＤＤとする。
【０００６】
（２）電圧変動
電圧変動とは電圧降下、グラウンドバウンス（接地電源線の浮き沈み）及び電源ノイズなど、チップ内動作電流による電源電圧変動を総称するものとする。
【０００７】
（３）ネットリスト
ネットリストとは回路接続情報を記述したデータである。素子の接続情報を記述した素子記述文水準のネットリストでは回路シミュレーションプログラム「ＳＰＩＣＥ」の入力データ（ＳＰＩＣＥネットリストと言う）が業界標準となっている。後述のリニアソルバ入力データや抽出ネットリストは、必ずしもＳＰＩＣＥネットリストではないが回路接続部分の概念は大差無い。ＳＰＩＣＥネットリストはレイアウト検証のＬＶＳ（後述）の参考回路入力データとしても多用されている。
【０００８】
このネットリストは素子と部分回路からなる。部分回路は素子と下位部分回路の参照を記述したものである。この記述には参照名（以後、インスタンス名と言う）も指定される。従って特定の１つの部分回路に着目すると、その部分回路を定義する部分と、上位部分回路において下位部分回路として参照される部分とがある。この下位部分回路参照あるいは素子参照を、部分回路、あるいは素子インスタンスとも言う。部分回路は、部分回路ヘッダ「．ＳＵＢＣＫＴ」から、部分回路最終行「．ＥＮＤＳ」までの行を含んで構成される。部分回路ヘッダには、部分回路定義名の他、部分回路端子となる節点名が仮引数の形式で表わされている。
【０００９】
ネットリストと対応する回路図の例を図８に示す。図８（Ａ）はネットリスト、（Ｂ）ブロック図、（Ｃ）回路図を示す。ここではインバータ回路を２段接続した例である。上位部分回路ＳＵＢＢは、インバータ回路である下位部分回路ＳＵＢＡを２段備えている。上位部分回路ＳＵＢＢは、電源端子Ｖ１、Ｇ１、入力端子Ｎ０、出力端子Ｎ１の端子を備えている。上位部分回路ＳＵＢＢを構成する前段の下位部分回路ＳＵＢＡはインスタンス名ＸＡ０であり、電源端子Ｖ１、Ｇ１、入力端子Ｎ０、出力端子ＮＸである。後段の下位部分回路ＳＵＢＡはインスタンス名ＸＡ１であり、電源Ｖ１、Ｇ１、入力ＮＸ、出力Ｎ１である。
【００１０】
下位部分回路ＳＵＢＡは電源「Ｖ」、「Ｇ」、入力Ａ、出力Ｂの端子を備えている。下位部分回路ＳＵＢＡを構成するＰＭＯＳトランジスタＭＰＯのドレイン、ゲート、ソース及び基板は、それぞれ出力Ｂ、入力Ａ，電源Ｖ、電源Ｖに接続される。トランジスタサイズはＷ＝１．０μｍ、Ｌ＝０．１１μｍである。さらにＮＭＯＳトランジスタＭＮＯのドレイン、ゲート、ソース及び基板は、それぞれ出力Ｂ、入力Ａ，電源Ｇ、電源Ｇに接続される。トランジスタサイズはＷ＝０．５μｍ、Ｌ＝０．１０μｍである。通常、電源も端子から供給されるものとし、「Ｖ」、「Ｇ」として表す。ＳＰＩＣＥネットリストのインスタンス名の先頭文字はインスタンスの種類で決まっている。例えばＭＯＳトランジスタは「Ｍ」、部分回路は「Ｘ」、抵抗素子は「Ｒ」、キャパシタは「Ｃ」等を先頭文字とする。
【００１１】
このように部分回路は階層構造となっている。下位部分回路の内容を上位部分回路内で参照されている箇所に実際に記述することを、階層を展開すると言う。階層を全て展開した状態では、最上位部分回路は素子のみで記述されることになる。このような状態を非階層構造あるいはフラット構造と言う。絶対的な最上位部分回路は部分回路ヘッダと部分回路最終行が存在しないが本明細書においては最上位部分回路と呼ぶことにする。
【００１２】
（４）レイアウトデータ
レイアウトデータでは、ＣＡＬＭＡ社のレイアウト編集装置である「ＧＤＳ−２」のインタフェースファイルであるストリームファイルが業界標準である。レイアウトデータはセル（ストリームファイルではストラクチャと言う）と基本図形（矩形、多角形、巾付き線など）からなる。
【００１３】
セルは基本図形と下位セルを配置したものである。従ってレイアウトデータにおいても特定の１つのセルに着目するとセルを定義する部分と上位セル中に、そのセルを配置している部分がある。このセルの配置をセルの参照または（セル）インスタンスと言う。なおレイアウトデータではインスタンス名は存在しない。レイアウトデータも階層構造をなす。下位セルの内容を上位セル内に配置された座標と方向に従って、実際に配置することを階層展開すると言う。階層を全て展開した状態では、最上位セルは基本図形のみにより構成される。この状態のレイアウトデータを非階層構造あるいはフラット構造と言う。
【００１４】
（５）テキスト
テキストは基本図形の一種である。これは、文字列、文字列の高さ、原点座標（テキスト座標と略）、角度、層、字体等を含む。本発明では、文字列とテキスト座標を使用する。例を図９に示す。このテキストと似たものにプロパティがある。これは、セルインスタンスや基本図形に付属する文字情報と理解しておけばよい。
【００１５】
（６）ＬＰＥ（抽出プログラム）
レイアウトデータを図形処理し、配線の寄生素子を含めてネットリストを作成する方法及びそのプログラムをＬＰＥ（Ｌａｙｏｕｔ  Ｐａｒａｍｅｒ  Ｅｘｔｒａｃｔｉｏｎ）と言う。このようにレイアウトデータからネットリストを作成することを、ネットリストを抽出すると言う。以後、単に抽出プログラムまたはＬＰＥと略す。ここで寄生素子は、主として寄生抵抗、寄生容量であり、稀にインダクタンスを含むことがある。市販の抽出プログラムとしてはＳＹＮＯＰＳＹＳ社の「ＳＴＡＲ−ＲＣ」がある。なお、ＬＰＥと次のＬＶＳは代表的なレイアウト検証装置であるＣＡＤＥＮＣＥ社の「ＤＲＡＣＵＬＡ」における機能またはサブシステムの名称である。
【００１６】
（７）ＬＶＳ
レイアウト検証のうち回路接続の正当性検証は、ＬＰＥにより作成したネットリストと、回路ネットリストとを比較照合することにより行われる。この方法及びプログラムをＬＶＳ（Ｌａｙｏｕｔ  Ｖｅｒｓｕｓ  Ｓｃｈｅｍａｔｉｃ）と言う。近年レイアウトデータと、階層状態のネットリストとを検証する階層型ＬＶＳが主流になっている。階層型ＬＶＳではレイアウトデータとネットリストの階層構造を対応させる必要がある。
【００１７】
（８）過渡解析検証とリニアソルバ
回路シミュレーションには、直流解析検証、交流解析検証、過渡解析検証がある。本発明の範囲では、過渡解析検証が該当する。過渡解析検証ではネットリストと外部信号波形を入力し内部節点や出力端子における電位、電流の時間変化を計算し表示する。リニアソルバとは線形回路網専用の回路シミュレーションプログラムのことで線形回路シミュレータとも言う。通常の回路シミュレーションプログラム（非線形回路シミュレータとも言う）に比べて、使用メモリ量は１／２以下、計算速度は１０〜１００倍高速である。なお、リニアソルバでは業界標準は存在しない。
【００１８】
次に従来の過渡解析による電源電圧検証方法において使用されるデータについて、下記の（ａ）〜（ｃ）で定義し説明する。なお、ここで説明するのはデータ内容の概念であって、厳密にこの書式であるとは限らないし、これ以外の情報を含むこともある。さらに、これら複数のデータが一つのファイルにまとまっている場合もある。後述の節点座標データ、電流源座標データについても同様である。
【００１９】
（ａ）抽出ネットリスト
ＬＰＥによりレイアウトデータから抽出、作成したネットリストである。業界では、いくつかの書式があるが、代表は「ＤＳＰＦ」である。「ＤＳＰＦ」は、ＳＰＩＣＥネットリストにレイアウト関連情報等を付加した形となっている。この抽出ネットリストから電源接続部分と、これ以外の通常の回路素子接続部分、その他、付加情報を容易に分離可能である。抽出ネットリストでは通常、レイアウトの各配線パターンを台形または矩形分割した際の分割線がネットリストの節点に該当する。従って、この座標が節点座標となり付加情報として格納されている。
【００２０】
この分離された電源接続部分を電源ネットリスト、回路素子接続部分を回路ネットリストと呼称する。回路ネットリストでは、その電源は理想化され、寄生素子を取り除き所定の電源に直接接続されている。電源ネットリストは大半が寄生抵抗から構成され、これに寄生容量が加わった状態であるので線形回路網となる。
【００２１】
（ｂ）電流波形データ
回路ネットリストをシミュレーションし、得られた電源ネットリストの節点に接続するＭＯＳトランジスタのソース電流波形データである。電流波形データはリニアソルバにも入力され、この場合には書式変換することもある。電流波形データとしては、電流源名とその電流源の電流波形を表している。電流値は電源に接続しているＭＯＳトランジスタのソース電流あるいは、これらを加算したものである。なお、ＭＯＳトランジスタはソースとドレインが対称であるので、電源に接続する側をソースとして扱うことにする。例を図１０の（Ａ）に示す。データとしては電流源名ＩＭＡと、時刻とその時刻における電流値をテーブル形式として表す。この符号及び電流源ＩＭＡの電流変化を右側に示している。
【００２２】
（ｃ）電流源付加データ
電源ネットリストに電流源を付加する場合、電流源を接続する節点名と電流源名の対応を示すデータである。例を図１０の（Ｂ）に示す。電流源は電源ネットリスト中の節点と、該当する電源間に挿入し、方向は接地電源では節点へ流入する方向を正とし、非接地電源（外部電源、内部電源）では節点から流出する方向を正とする。なお、電流源の一方の端子は固定電圧源であればよい。
【００２３】
次に図１１のフローと図１２の回路図を参照して、従来の電圧変動の検証手順を説明する。図１１においてファイル入出力は主要な箇所のみ記している。ここで、実行フロー（Ａ）と（Ｂ）の２段階に分けて説明する。
【００２４】
（１）ネットリスト抽出１０２
レイアウトデータ１０１に基づいてＬＰＥを実行し、ネットリストを抽出する。図１２（Ａ）に抽出されたネットリストから作成した回路図を示す。ここで、ＭＡ、ＭＢ、ＭＣ、ＭＤはＭＯＳトランジスタのインスタンス名、ＣＡはキャパシタのインスタンス名、Ｒ１〜Ｒ６は電源ネットリストにおける（寄生）抵抗のインスタンス名、Ｎ１〜Ｎ４は電源ネットリストにおける節点名である。（１０，２０）等は電源ネットリストにおける各節点の座標値である。
【００２５】
（２）ネットリスト分離１０３
抽出ネットリストから回路ネットリストと電源ネットリストを分離し、電源ネットリスト１０４を作成する。
【００２６】
（３）電流計算１０５
回路ネットリストを入力し回路シミュレーションにより電流計算を実行する。各ＭＯＳトランジスタのソース電流を計算し、この電流波形を時間変化する電流源として電流波形データ１０６を作成する。図１２（Ｂ）に回路シミュレーション用の回路図として示す。図１２（Ｂ）の電圧源ＶＭＡ、ＶＭＢ、ＶＭＣ、ＶＭＤは電流測定のためのダミー電源であり、電圧０ボルトである。回路シミュレーションにおいては電流測定のための素子が必要であることからダミーとして挿入するものである。電流測定のために微小抵抗を挿入する方法もある。ここではダミー電圧源ＶＭＡ、ＶＭＢ、ＶＭＣ、ＶＭＤを挿入し、電流を計算させるものとする。
【００２７】
（４）電流源付加１０７
抽出ネットリストから分離した電源ネットリスト１０４の節点に電流波形データ１０６の電流源を付加し、電流源付加データ１０８を作成する。ネットリスト抽出１０２において、電源ネットリストの各節点に接続するＭＯＳトランジスタは判明している。さらに電流計算１０５で各ＭＯＳトランジスタに流れる電流値が計算され、電流波形データ１０６が得られている。この両者は１対１に対応しているので、節点に電流波形データ１０６を付加すれば電流源付加データ１０８が作成できる。図１２（Ｃ）に電源ネットリストに電流源を付加した回路図として示す。この他にも電源ネットリストを書き換えて電流源を素子（インスタンス）として追加記述する方法もある。
【００２８】
（５）電圧変動算出１０９
図１１（Ａ）のフローで作成した電源ネットリスト１０４、電流波形データ１０６、電流源付加データ１０８を入力してリニアソルバにより電源各節点の電圧変動波形を得る。
【００２９】
（６）電圧変動画像表示１１０
得られた電源ネットリスト各節点の電圧変動状態をモニタに画像表示する。
【００３０】
以上が従来の過渡解析検証であるが４個のＭＯＳトランジスタで構成されたインバータ回路においても４個の電流波形データ１０６が必要となる。そのため大容量化された半導体メモリにおいては膨大な電流波形データ１０６が必要となる。そのためのデータ量、計算時間が膨大になるという問題があり、現状では全体処理することが難しいという問題がある。
【００３１】
これらの電源解析方法に関する先行文献として、下記特許文献がある。特許文献１（特開平１１−０５３４１２号公報）では電源パッドからの抵抗値を求め、枝抵抗を省略、簡略化して要素抵抗のみを計算することで、電源解析を行っている。特許文献２（特開２００４−１５７５８４号公報）では、半導体チップをパワーユニットＰＵに分割し、電源配線をＰＵの中心線に位置する線分とすることで簡略化し、方程式の解を求めている。しかしこれらの文献の方法では大容量化された半導体メモリの電源解析には精度面で不十分であり、かつデータ量、計算時間が膨大になるという問題がある。
【００３２】
【特許文献１】特開平１１−０５３４１２号公報
【特許文献２】特開２００４−１５７５８４号公報
【発明の開示】
【発明が解決しようとする課題】
【００３３】
上記したように大容量化された半導体メモリの電圧変動解析は、データ量、計算時間が膨大になるという問題がある。本発明は半導体メモリでの各要素回路の繰り返しに注目することで、本願発明を行ったものである。以下半導体メモリとして代表的なＤＲＡＭを例として図１３〜１５を参照して説明する。図１３にＤＲＡＭチップの概略構成、図１４にメモリセルとその関連回路、図１５にデータ階層構成を示す。
【００３４】
図１３（Ａ）はＤＲＡＭチップ、（Ｂ）はバンク、（Ｃ）はメモリマット（以下マットと略記する）の概略レイアウト図である。ＤＲＡＭチップは、チップ中央部にデータ書込み、読出し制御を行う周辺回路が配置されている。周辺回路の上下には独立に動作可能な複数のバンクが配置されている。各バンクは図１３（Ｂ）に示されるように、行デコーダ、列デコーダ、複数のマット等からなる。マットは、図１３（Ｃ）で示されるように下位行デコーダ、下位列デコーダ、センス増幅回路と、メモリセルがマトリックス状に配置されたセルマトリックスからなる。行（列）デコーダ、下位行（列）デコーダ、センス増幅回路は、個々の基本回路が繰り返し配置されている。基本回路とその繰り返し配置されたものを、特に区別しないで行（列）デコーダ、下位行（列）デコーダ、センス増幅回路と記載するものとする。
【００３５】
図１４にメモリセルとその関連部分を回路図として示す。メモリセルの行選択は外部アドレス信号により行デコーダＲと下位行デコーダＸの２段デコーダにより行われる。同様に外部アドレス信号により列選択も列デコーダと下位列デコーダの２段デコーダにより行われる。行デコーダＲにより選択された上位ワード線ＵＷが活性化し、さらに下位行デコーダＸによりワードＷが活性化する。なおリフレッシュ時には、バンク内の行（列）デコーダは複数本選択される場合もあるが、１つのマット内のワード線は複数本選択されることは無い。以下、説明を簡単にするためバンク、マットとも１本のワード線が活性化されるとして説明する。
【００３６】
活性化されたワード線によりメモリセルのビット線Ｂ＋，Ｂ−はセンス増幅回路Ｓで増幅される。さらに下位列デコーダにより選択されたビット線信号は、ＩＯバスＩＯ＋、ＩＯ―に接続される。ＩＯバスを経由して入出力回路により外部回路とデータ転送を行う。１つのマットは、セルマトリックスの周辺にこれらのセンス増幅回路Ｓ、下位行デコーダＸ、下位列デコーダとスイッチング回路Ｙから構成されている。
【００３７】
図１５にＤＲＡＭチップのデータ階層構造を示す。ＤＲＡＭチップは周辺回路と、メモリアレイとから構成される。メモリアレイは複数のバンクから構成され（図１５においては１バンクのみを示している）、各バンクはさらにマット、行デコーダ、列デコーダを備えている。さらにマットはセルマトリックス、下位行デコーダ、下位列デコーダとスイッチング回路、センス増幅回路を備えている。このようにＤＲＡＭチップは階層構造であり、下位階層は同じ回路が繰り返す配置された構造である。そのために、ネットリスト、レイアウトデータにおいても同じ階層構造となる。以下においては、マット内のメモリセルのみが配置された領域はセルマトリックスと記し、全バンクが配置された領域はメモリアレイと記す。
【００３８】
一般に、半導体メモリの瞬間最大電流の大部分はメモリアレイで発生する。選択されたメモリアレイにおける各バンクの電流の大きさはほぼ同一となる。また、バンク内での瞬間最大電流は、ワード線により選択されたメモリセルデータがビット線へ読み出され、そのデータがセンス増幅回路により充放電されるときに発生するときがメーンである。列やメモリセルの選択に関係無く、選択されたマットの行に沿って発生すると考えてよい。
【００３９】
５１２メガビットＤＲＡＭを用いて回路規模の１例を挙げてみる。バンク数が８個、１バンク中のマット数が２５６個、１マットは２５６キロビット程度のメモリセルを含んで構成される。フラット構造ネットリストを想定すれば、メモリセル以外のＭＯＳトランジスタ数は、１マットあたり７０００個、１バンクあたり１８０万個、セルアレイ全体では１４５０万個程度となる。他方、周辺回路全体では高々、５０万個程度である。ここで、メモリセルそのものは、電流発生は無視できる程度なので計数していない。
【００４０】
このような大規模ＤＲＡＭチップに対して従来の処理を行う場合、計算機資源で特に問題となるのは、ネットリスト抽出のＣＰＵ時間、回路シミュレーションのＣＰＵ時間、電流波形データのファイル（ディスク）容量である。最新のワークステーションを使用した場合でも、このようなＤＲＡＭの規模では、ネットリスト抽出のＣＰＵ時間は２日、回路シミュレーションのＣＰＵ時間は４日、電流波形データは１０ギガバイトが必要となる。従って、これら計算機資源消費量を削減する必要がある。これらの理由としては、下記が考えられる。（１）全回路分のネットリストを抽出している。（２）全回路分のネットリストで回路シミュレーションを実行している。（３）ＭＯＳトランジスタごとに電流源を作成している。
【００４１】
なお、大規模ＤＲＡＭの電源電圧変動検証では、計算機資源消費の問題を解決するため、前述の文献以外にも多くの手法が考案されている。例えば電源ネットリストを簡単な等価回路に変換し、回路シミュレーションの代わりに電流波形を矩形波や三角波で近似し、抽出ネットリストを階層処理する等の方法である。これらの手法は計算機資源削減では効果があるものの計算精度の低下や処理の煩雑さなどの問題点があり、ＤＲＡＭ等大規模な半導体メモリには、そのまま適用できないという問題がある。
【００４２】
本発明の目的は、これらの問題に鑑み、半導体メモリのデータ階層構造のマット単位の動作モードに注目した簡略化手法を用いることで、計算機資源消費量の削減、ＣＰＵ時間の短縮できるレイアウト検証方法及びレイアウト検証装置を提供することにある。
【課題を解決するための手段】
【００４３】
本願は上記した課題を解決するため、基本的には下記に記載される技術を採用するものである。またその技術趣旨を逸脱しない範囲で種々変更できる応用技術も、本願に含まれることは言うまでもない。
【００４４】
本発明のレイアウト検証方法は、複数のバンクを有する半導体メモリにおいて、半導体チップのネットリストを周辺回路ネットリストとメモリアレイネットリストに分け、前記メモリアレイネットリストは簡略化モデルから作成され、前記周辺回路ネットリスト及びメモリアレイネットリストを回路シミュレーションすることで電流波形を算出することを特徴とする。
【００４５】
本発明のレイアウト検証方法においては、前記メモリアレイネットリストは１バンク分作成され、バンク内の選択されたマット、行デコーダ、列デコーダを構成するトランジスタを含む簡略化モデルから作成されることを特徴とする。
【００４６】
本発明のレイアウト検証方法においては、選択されたマットのネットリストは、メモリセル行を選択する下位行デコーダと、選択されたメモリセル行に接続されたセンス増幅回路と、前記センス増幅回路を選択する下位列デコーダから構成されることを特徴とする。
【００４７】
本発明のレイアウト検証方法においては、前記選択されたマットのネットリストにより算出されたそれぞれの電流波形は加算され、１マットに対して１つの電流波形として纏められることを特徴とする。
【００４８】
本発明のレイアウト検証方法においては、行デコーダのネットリストは、選択された行デコーダのトランジスタを含み、非選択の行デコーダのトランジスタは省略されることを特徴とする。
【００４９】
本発明のレイアウト検証方法においては、列デコーダのネットリストは、選択された列デコーダのトランジスタを含み、非選択の列デコーダのトランジスタは省略されることを特徴とする。
【００５０】
本発明のレイアウト検証方法においては、さらに前記電流波形を電源ネットリストの節点に配置し、電源電圧変動を算出することを特徴とする。
【００５１】
本発明のレイアウト検証装置は、上記したいずれかに記載のレイアウト検証方法を実施する手段を備えたことを特徴とする。
【００５２】
本発明のレイアウト検証装置においては、ネットリスト抽出手段、電流波形データ計算手段、電流源付加手段、電圧変動計算手段、電圧変動画像表示手段を備えたことを特徴とする。
【発明の効果】
【００５３】
本発明のレイアウト検証方法は、半導体メモリを周辺回路とメモリアレイとに分割し、メモリアレイ領域を簡略化した縮小ネットリストにより回路シミュレーションを実施する。メモリアレイは複数のバンク、マット、メモリセルが繰り返し配置されている。それぞれのバンクは同時動作可能であるが、バンク内は活性化されたワード線により選択され、動作するものである。そのためメモリアレイとしてはバンク単位とし、バンク内で選択活性化されたマット、行デコーダ、列デコーダを処理対象とした簡略モデルとする。選択されていない回路を構成するトランジスタは処理対象から除外する。
【００５４】
メモリアレイを選択活性化された回路のみに簡略化することでトランジスタの数が大幅に減少する。そのためにメモリアレイにおけるネットリストの抽出時間、電流計算時間が大幅に短縮される。さらにマット内を１つの電流波形とすることでファイル容量も小さく、電圧変動算出時間も短縮できる。メモリアレイを簡略化し、縮小したネットリストとすることで少ない計算機資源で、短時間で電圧変動計算が可能となるレイアウト検証方法及びレイアウト検証装置が得られる。
【発明を実施するための最良の形態】
【００５５】
本発明のレイアウト検証方法及びレイアウト検証装置について、図を参照して説明する。
【実施例１】
【００５６】
第１の実施例として、半導体メモリの過渡解析を検証するレイアウト検証方法を図１〜６を参照して説明する。図１（Ａ）は前処理及び周辺回路用のフロー、図１（Ｂ）はメモリアレイ用のフロー、図１（Ｃ）は最後に実行する最終フローである。ただし図１においては、いずれもファイル入出力は主要な部分のみを記述している。前処理及び周辺回路用フロー、メモリアレイ用フロー、最終フローの順に実行する。図２（Ａ）はバンク内のテキスト配置を示すレイアウト図で、（Ｂ）はマット内のレイアウトを示すマット４個分のレイアウト図、（Ｃ）はマットである部分回路の電流測定の概念を示す説明図である。図３は電源ネットリスト節点座標と電流源座標の対応データの示す（Ａ）データ構造、（Ｂ）回路図を示す。図４にネットリストデータ構成で、（Ａ）は半導体メモリ全体、（Ｂ）はメモリアレイを示す。図５に部分回路の説明図で、（Ａ）は回路図、（Ｂ）はブロック図を示す。図６（Ａ）に節点座標データ、（Ｂ）に電流源座標データを示す。
【００５７】
本発明の検証方法における半導体チップのネットリストのデータ構成を図４に示す。チップ全体のネットリストＡを周辺回路ネットリストＢと、メモリアレイネットリストＣとに分割する。一般的には周辺回路は領域単位、あるいは部分回路（図では例として、Ａ，Ｂ，・・Ｘとして示す）単位に分割される。ネットリストＢには周辺回路の全てのトランジスタが含まれる。メモリアレイネットリストＣは、メモリアレイの構成を簡略化し、縮小したネットリストとする。縮小されたネットリストＣは１バンク分作成される。その１バンク分を図４（Ｂ）に示す。複数のバンクが動作する場合には、１バンク分のネットリストＣを繰り返し配置すればよい。
【００５８】
メモリアレイの簡略化としては、バンク内の選択状態にある行デコーダ、列デコーダ、マットのみを対象とする。従って図４（Ｂ）に示すネットリストＣは、バンク構成要素である行デコーダＲＤ、列デコーダＣＤ、マットＭＴ等の部分回路から構成される。さらに図示していないが、マット内では下位行デコーダ、下位列デコーダで選択されたメモリセル、センス増幅回路を構成対象とする。このように簡略化されたメモリアレイは、高々選択され状態が変化する部分回路のみで構成されることで大幅に簡略化される。
【００５９】
前処理及び周辺回路用フローを図１（Ａ）により説明する。前処理フローとしてのネットリスト抽出１２、抽出ネットリスト分離１３についてはメモリアレイについても同時に実施されるものである。
【００６０】
（１）ネットリスト抽出１２
レイアウトデータ１１に基づいて、ＬＰＥによりネットリスト抽出１２を実行する。ここでは、周辺回路では全ネットリストを抽出する。メモリアレイ部では、最低限、電源ネットリストを抽出する必要がある。なお、縮小したネットリスト（つまり、ネットリストＣ）作成方法としては、これらの部分回路は小さくネットリスト行数としては多くないことから直接作成することも可能である。しかし本発明においては、レイアウトデータから抽出する方法により作成するものとする。この場合、メモリアレイ部ではネットリストＣ作成用の選択されたセルインスタンスでは全層、非選択の部分では電源配線を形成する層が必要となる。例えば、メモリアレイ部ではネットリストＣを作成する該当部分に矩形パターンを配置し、図形処理を実行し、非該当部分以外のＭＯＳトランジスタを形成する層を除外することで得られる。
【００６１】
（２）ネットリスト分離１３
抽出したネットリストを分離し、回路ネットリスト、電源ネットリスト１４、節点座標データ１５を取り出す。ここで、回路ネットリストとしては周辺回路のネットリストＢ、メモリアレイは選択された部分回路のみの簡略、縮小したネットリストＣとなる。図４に示すようにチップ全体の回路ネットリストＡは、周辺回路のネットリストＢ、メモリアレイ部を簡略化したネットリストＣから構成される。電源ネットリスト１４、節点座標データ１５は周辺回路用とメモリアレイ用とが一体化されて出力される。以下の説明においては周辺回路用には（Ｐ）、メモリアレイ用には（Ｍ）のサフィックスにより区別する。
【００６２】
（３）周辺回路電流計算（回路シミュレーション）１６
周辺回路のネットリストＢを入力し、周辺回路の回路シミュレーションを実行する。電源に接続されたＭＯＳトランジスタのソース電流波形を算出し、電流波形データ（Ｐ）１７として出力する。ここでは複数のＭＯＳトランジスタのソース電流波形を加算して周辺回路の部分回路単位としてもよい。
【００６３】
（４）周辺回路電流源付加１８
周辺回路の電源ネットリストに電流源を付加する。具体的には、抽出ネットリストから得られた節点座標データ１５に、電流波形データ（Ｐ）１７を付加し、電流源付加データ（Ｐ）１９を作成する。
【００６４】
上記したように前処理及び周辺回路用フローでは、抽出ネットリストから分離した周辺回路の回路ネットリストを用いる。回路シミュレーションによりＭＯＳトランジスタのソース電流波形を算出し、電源ネットリストの節点に電流源を付加する。
【００６５】
次に、図１（Ｂ）のメモリアレイ用フローについて説明する。
【００６６】
（１）メモリアレイ電流計算２２
メモリアレイを簡略化したネットリストＣを入力して回路シミュレーションを実行する。電源に接続されたＭＯＳトランジスタのソース電流を計算する。この電流はバンク構成要素である部分回路ごとにまとめて、電流波形データ（Ｍ）２３として出力する。バンクを構成するマット、行デコーダ、列デコーダごとの電流波形データとする。そのためマットにおいては、セルマトリックス、センス増幅回路、下位行デコーダ、下位列デコーダの電流波形を加算して１つの電流波形データとする。
【００６７】
加算方法としては、ネットリストを階層展開してフラット構造にし、ソース電流をＭＯＳトランジスタ個別に算出し、セル領域内のＭＯＳトランジスタのソース電流波形を加算する加算することも可能であるが、多くの場合には主要部分回路と主要セルが対応しており、その部分回路端子に電源がある。そのため、部分回路ごとにまとめ、その電源端子に電流測定用のダミー電圧源（電圧０ボルト）を挿入することでも算出できる。この例を図５に示す。図５（Ａ）にネットリスト中の部分回路を示す回路図、（Ｂ）には回路シミュレーション用にダミー電源を挿入したブロック図を示す。ここでは、部分回路Ｓ１のインスタンスであるＸ１の電源端子に、電流測定用ダミー電圧源ＶＸ１Ｖ、ＶＸ１Ｇを挿入し、部分回路Ｓ１の電流波形を算出する。
【００６８】
（２）メモリアレイテキスト付加２４
レイアウトデータ１１に基づいて、バンク内に電流波形データ（Ｍ）２３に対応したテキストを図２に示すように配置する。この場合、テキストをバンク構成要素であるセル上（インスタンス上配置）、又はバンク構成要素であるセル内（定義内配置）に配置する。バンクはマット、行デコーダ、列デコーダから構成されている。マットは、行デコーダによりその一行が選択され、動作するマットと、選択されないで動作しないマットがある。そのためマットに配置されるテキストはセル上配置とする。セル上配置とすることで動作するマットは自由に選択指定することができる。図２（Ａ）には、電源変動が最も厳しいと考えられる端部のマットが選択動作するとした配置例を示している。
【００６９】
また行及び列デコーダは複数の基本デコーダ回路から構成される。しかし全てのデコーダを１つとした場合には、必ずいずれかが選択されることから、セル内にテキストを配置する（定義内配置）。行デコーダのテキスト＠ＩＲＤは、行デコーダであるセル内、右辺中央に、列デコーダの電流源テキスト＠ＩＣＤは列デコーダであるセル内、下辺中央に配置している。ここで、第１文字目の＠は電流源テキストであることを表すためのもので、読み出す時に除かれるものとする。図２においては、説明を簡単にするために接地電源のみを示しているが、電源側にも配置されるものである。
【００７０】
さらに、マット内の電源パターンに対応する電源ネットリストの４マット分を図２（Ｂ）、マットの電流測定の概念を示す説明図を図２（Ｃ）示している。マットはセル名ＭＴ、対応する部分回路定義名はＳＭＴ、インスタンス名はＸＭＴ、得られた電流源をＩＭＴとする。電源ネットリストがフラット構造になった場合、電源ネットリストの節点名は異なる。ＮＣ１、ＮＣ２、…は電源ネットリストの節点であり、フラット構造になった状態で記している。このようにバンク内のマットがワード線に沿って複数選択される場合には、電流源ＩＭＴを、ＮＣ１、ＮＣ２、…に反復して付加すればよい。従って複数のマットが選択された場合にも、電源ネットリストは１マット分作成し、繰り返し配置すればよい。
【００７１】
（３）レイアウトデータ階層展開２５
レイアウトデータを階層展開しフラット構造とする。
【００７２】
（４）テキスト抽出２６
フラット構造に階層展開されたレイアウトデータのテキスト文字列と座標より電流源座標データ２７を作成する。この状態でバンク内のテキストは最上位セル直下に、バンクセル分だけ反復して配置されるので、各テキスト座標と文字列を得て（先頭文字を変更するなど）書式変換すれば電流源座標データが得られる。電流源座標データ２７は、電流源名とその座標を記したデータである。図６（Ｂ）に例を示す。以上の処理により、セルに電流源名を示すテキストを配置し、この文字列と座標から電流源座標データを作成したことになる。つまりテキスト文字列は電流源名、テキスト座標が電流源配置位置を示す。
【００７３】
（５）メモアレイ電流源付加２８
前処理及び周辺回路用フローで出力した節点座標データ１５と、電流源座標データ２７を入力し、電流源付加データ（Ｍ）２９として出力する。図３（Ａ）に節点と電流源の対応データ、図３（Ｂ）に回路図を示す。節点座標データと、電流源座標データを図６（Ａ）、（Ｂ）に示す。電流源座標データ中の座標と節点座標データの座標を照合し電流源近傍の節点を検出する。電流源を近傍の電源ネットリストの節点へ付加し、電流源付加データを作成する。
【００７４】
電流源座標データと節点座標データの座標検索は一例として以下のようにして可能である。電流源座標データと節点座標データを計算機の主記憶上に読み出す。電流源ごとに、その座標を中心とする一定巾の矩形領域を設定する（バケットと言う）。節点座標データの各節点をその座標を基にこの領域に振り分ける。これは一種の座標を鍵とするバケットソートである。電流源ごとに、そのバケット内の節点で最短の（つまりバケットの中心に最も近い）ものを選ぶ。
【００７５】
最後に、上記した前処理及び周辺回路用フローとメモリアレイフローにより算出されたデータにより、電源電圧変動を算出する。電源電圧変動の算出は、図１（Ｃ）の最終フローに従って実施する。
【００７６】
（１）  電圧変動算出３０
いままでのフローで作成した電源ネットリスト１４、電流波形データ（Ｐ）１７、電流源付加データ（Ｐ）１９、電流波形データ（Ｍ）２３、電流源付加データ（Ｍ）２９を入力してリニアソルバを実行し、電源ネットリストの各節点の電圧変動を算出する。
【００７７】
（２）  電圧変動表示３１
電圧変動波形を表示する。ここではモニタに画像表示してもよく、プリントとして印刷出力することもできる。電源電圧の変動量により、色別に表示させ変動量が大きい箇所や、エレクトロマイグレーションに問題箇所を区別することができる。
【００７８】
本発明のレイアウト検証方法は、電流波形データと電流源付加データがそれぞれ周辺回路とメモリアレイの２組入力することである。周辺回路部は回路ネットリストから電流波形を算出し、部分回路単位あるいは領域単位に電流波形を纏める。さらに電源ネットリストの節点に纏めた電流波形を電流源として付加することで電源電圧変動が算出する。
【００７９】
メモリアレイは、電源ネットリストを抽出する。一方メモリアレイの回路構成として、バンクに対し選択された行デコーダ、列デコーダ、マットのみの簡略モデルを作成する。この簡略モデルからメモリアレイの縮小したネットリストを作成し、電流波形を算出する。バンクを構成するセル（行デコーダ、列デコーダ、マット）ごとに電流波形を纏める。レイアウトデータに基づいて、バンク内に電流波形データに対応した電流源テキストを配置する。電流源座標データと節点座標データから近くの節点に電流源を配置する。このように電源ネットリストの節点に電流源を配置し、電圧変動をシミュレーションにより求めることができる。本発明においては、メモリアレイを簡略モデル化し、縮小ネットリストにより電源変動が簡単にシミュレーションできる。
【実施例２】
【００８０】
実施例２として、本発明のレイアウト検証方法を実行するためのレイアウト検証装置を、図７を参照して説明する。図７にはレイアウト検証装置のブロック図を示す。
【００８１】
検証装置は、レイアウトデータ４１を入力とし、電圧変動をモニタ及び印刷装置５２に出力する。メーンシステムとしてネットリスト抽出手段４３、電流波形データ計算手段４４、電流源付加手段４５、電圧変動計算手段４６、電圧変動画像表示手段４７を備えている。これら各手段を実行するための中央処理装置（ＣＰＵ）４８、データを格納するための主記憶装置４９と外部記憶装置５０、装置を操作するためのキーボード及びマウス５１、結果を出力するためのモニタ及び印刷装置５２を有している。
【００８２】
ネットリスト抽出手段４３は、レイアウトデータを図形処理し、配線の寄生素子を含めてネットリストを作成する手段である。電流波形データ計算手段４４は、回路ネットリストから電流波形を計算する手段である。電流源付加手段４５は、電源ネットリストの節点に電流波形（電流源）を付加する手段である。電圧変動計算手段４６は、電流源が付加された電源ネットリストを用いて、電源変動を計算する手段である。電圧変動画像表示手段４７は、計算された電源変動値の出力画像を設定するための手段である。これらは実施例１のフローにおける工程名と同じ名称であり、その内容は実施例１から理解できることからその詳細説明は省略する。本実施例においては、メモリアレイを簡略モデル化し、縮小ネットリストから簡単に電源変動が算出できる検証装置が得られる。
【００８３】
本発明のレイアウト検証方法は、電流波形データと電流源付加データがそれぞれ、周辺回路とメモリアレイの２組入力することである。メモリアレイは、選択された行デコーダ、列デコーダ、マットのみの簡略モデルから縮小ネットリストを作成し、電流波形を算出する。レイアウトデータに基づいて、バンク内に電流波形に対応した電流源テキストを配置する。電流源座標データと節点座標データから近くの節点に電流源を配置する。このように電源ネットリストの節点に電流源を配置し、電圧変動をシミュレーションにより求めることができる。メモリアレイを簡略モデル化することで素子数が大幅に削減できる。そのためＣＰＵ時間、メモリ容量、ディスク容量等の計算機資源が大幅に削減できる。本発明によればメモリアレイを簡略モデル化し、縮小ネットリストにより電圧変動が簡単にシミュレーションできるレイアウト検証方法及び検証装置が得られる。
【００８４】
以上、実施形態に基づき本発明を具体的に説明したが、本発明は上述の実施形態に制限されるものではなく、その要旨を逸脱しない範囲で種々の変更を施すことができ、これらの変更例も本願に含まれることはいうまでもない。
【図面の簡単な説明】
【００８５】
【図１】本発明の検証方法における実行手順のフローチャートで、（Ａ）前処理及び周辺回路、（Ｂ）メモリアレイ、（Ｃ）最終フローチャートである。
【図２】図１において、（Ａ）バンク内にテキストを配置したレイアウト図、（Ｂ）マット内のレイアウトを示すマット４個分のレイアウト図、（Ｃ）マットである部分回路の電流測定の概念を示す説明図である。
【図３】図１において、節点座標と電流源座標の対応を示す（Ａ）データ構造、（Ｂ）回路図である。
【図４】ネットリストのデータ構成を示す（Ａ）チップ、（Ｂ）メモリアレイのブロック図である。
【図５】部分回路インスタンスの電源電流測定を示す（Ａ）回路図、（Ｂ）ブロック図である。
【図６】（Ａ）節点座標データ、（Ｂ）電流源座標データを示す説明図である。
【図７】本発明におけるレイアウト検証装置のブロック図である。
【図８】ＳＰＩＣＥネットリストの説明図で（Ａ）ネットリスト、（Ｂ）ブロック図、（Ｃ）回路図である。
【図９】レイアウトデータにおけるテキストの説明図である。
【図１０】従来例における（Ａ）電流波形データ、（Ｂ）電流源付加データである。
【図１１】従来の検証方法における実行手順のフローチャートである。
【図１２】従来の検証方法における（Ａ）抽出ネットリスト、（Ｂ）ソース電流測定のためのダミー電源を付加した回路ネットリスト、（Ｃ）電源ネットリストに電流源を付加した状態を回路図様式での説明図である。
【図１３】ＤＲＡＭ構成例を示す（Ａ）チップ、（Ｂ）バンク、（Ｃ）マットのレイアウト図である。
【図１４】ＤＲＡＭメモリセル関連の回路図である。
【図１５】ＤＲＡＭデータ階層を示すブロック図である。
【符号の説明】
【００８６】
１１、１０１    レイアウトデータ
１２、１０２    ネットリスト抽出（ＬＰＥ）
１３、１０３    ネットリスト分離
１４、１０４    電源ネットリスト
１５    節点座標データ
１６    周辺回路電流計算
１７、２３、１０６    電流波形データ
１８    周辺回路電流源付加
１９、２９、１０８    電流源付加データ
２１    ネットリストＣ
２２    メモリアレイ電流計算
２４    メモリアレイテキスト付加
２５    レイアウトデータ階層展開
２６    テキスト抽出
２７    電流源座標データ
２８    メモリアレイ電流源付加
３０、１０９    電圧変動算出
３１、１１０    電圧変動表示
１０５    電流計算
１０７    電流源付加
ＩＭＴ    電流源
Ｎ１０１、Ｎ１０２、Ｎ１０３    節点
ＩＸ２、ＩＸ３、ＩＸ５、ＩＭＡ、ＩＭＢ、ＩＭＣ、ＩＶＭＡ、ＩＶＭＢ、ＩＶＭＣ、ＩＶＭＤ    電流源
ＸＡ０、ＸＡ１    部分回路インスタンス名
ＭＰ０、ＭＮ０    ＭＯＳトランジスタ
Ｎ１、Ｎ２、Ｎ３、Ｎ４    節点
ＭＡ、ＭＢ、ＭＣ、ＭＤ    ＭＯＳトランジスタ
ＣＡ    キャパシタ
Ｒ１、Ｒ２、Ｒ３、Ｒ４、Ｒ５、Ｒ６    抵抗
ＶＭＡ、ＶＭＢ、ＶＭＣ、ＶＭＤ    電流測定用のダミー電圧源
Ｓ    センス増幅回路
Ｒ    行デコーダ
Ｘ    下位行デコーダ
Ｙ    スイッチング回路と下位列デコーダ
Ｂ＋、Ｂ−    ビット線
ＵＷ    上位ワード線
Ｗ    ワード線
【図１】
2008033404.tif 000003
【図２】
2008033404.tif 000004
【図３】
2008033404.tif 000005
【図４】
2008033404.tif 000006
【図５】
2008033404.tif 000007
【図６】
2008033404.tif 000008
【図７】
2008033404.tif 000009
【図８】
2008033404.tif 000010
【図９】
2008033404.tif 000011
【図１０】
2008033404.tif 000012
【図１１】
2008033404.tif 000013
【図１２】
2008033404.tif 000014
【図１３】
2008033404.tif 000015
【図１４】
2008033404.tif 000016
【図１５】
2008033404.tif 000017