JP2013182564A - シミュレーション装置、シミュレーション方法及びプログラム - Google Patents

シミュレーション装置、シミュレーション方法及びプログラム Download PDF

Info

Publication number
JP2013182564A
JP2013182564A JP2012047885A JP2012047885A JP2013182564A JP 2013182564 A JP2013182564 A JP 2013182564A JP 2012047885 A JP2012047885 A JP 2012047885A JP 2012047885 A JP2012047885 A JP 2012047885A JP 2013182564 A JP2013182564 A JP 2013182564A
Authority
JP
Japan
Prior art keywords
average value
simulation
value
standard deviation
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012047885A
Other languages
English (en)
Inventor
Takeshi Oda
剛 黄田
Yasumasa Tsukamoto
康正 塚本
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2012047885A priority Critical patent/JP2013182564A/ja
Publication of JP2013182564A publication Critical patent/JP2013182564A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】半導体集積回路の製造におけるMPFP(Most Probable Failure Point)を高速かつ高精度に決定できるシミュレーション装置、シミュレーション方法及びプログラムを提供する。
【解決手段】シミュレーション装置100は、拡大した分布によりサンプリングを行う1次シミュレーション手段110、不良サンプルの中の最小ノルムベクトルを探索し、その位置ベクトルに平均値を移動してサンプリングを行う2次シミュレーション手段120、不良サンプルの中の最小ノルムベクトルを探索し、その位置ベクトルに平均値を移動し、縮小した分布によりサンプリングを行う3次シミュレーション手段130、及び演算用メモリとしての記憶手段140を有する。
【選択図】図1

Description

本発明は、シミュレーション装置、シミュレーション方法及びプログラムに関し、例えば半導体集積回路の製造におけるMPFP(Most Probable Failure Point)を高速かつ高精度に決定する技術に関する。
半導体プロセスの微細化により、集積回路、例えばSRAMの動作速度が向上してきた一方で、回路の構成要素である半導体素子の製造時に生じる特性のばらつきが回路の歩留まりに与える影響が無視できなくなっている。高い歩留まりの集積回路を製造するためには、ばらつきを考慮した回路設計が必要である。
モンテカルロ法(MC:Monte Calro)は、SRAMの歩留まり推定に広く利用されているシミュレーション手法である。MC法では、上記ばらつきに基づく乱数で上記特性を決定し、所定の評価式により回路の良不良を判定する。かかる判定を十分な回数行うことにより、正確な歩留まり推定が可能である。しかしながら、今日のSRAMの不良率は非常に小さいため、MC法による歩留まり推定には膨大な時間が必要となる。そこで、歩留まり推定を効率化するための様々な手法が提案されている。
特許文献1は、適否判定境界の学習機能を有するフィルタを備えることにより、歩留まり推定のための計算を効率化する構成を開示している。
また、単純なMC法に代わる歩留まり推定手法として、特にSRAMの不良率が高い領域を重点的にサンプリングする手法(IS:Importance Sampling)が提案されている。ISでは、正規分布だけでなく様々な分布が利用される。
非特許文献1及び2は、ISの一手法として、分布の平均値を移動ベクトルsだけ移動させる手法を開示している。
非特許文献1は、拡大超球サンプリング(IHS)と縮小超球サンプリング(DHS)により、sを効率的に探索する手法を開示している。当該手法では、sを探索後にsを平均値移動ベクトルとして正規分布を適用したサンプリングを行う。
非特許文献2は、元の正規分布p(x)の平均値を移動した正規分布p(x−s)、及び均一分布U(x)からなる混合分布をISに適用することで、不良領域をもれなくサンプリングする手法を開示している。
特開2010−160787号公報
Takanori Date 外3名,Robust Importance Sampling for Efficient SRAM Yield Analysis,ISQED2010,2010年3月22日
Rouwaida Kanj 外2名,Mixture Importance Sampling and Its Application to the Analysis of SRAM Designs in the Presence of Rare Failure Events,DAC'06,2006年7月24日
しかしながら、非特許文献1の手法は、明確かつ汎用的な平均値の移動法ではあるものの、IHS及びDHSの探索に均一分布を適用しており、探索領域を適切な領域に限定できていないため、非効率であり精度が維持できない。
また、非特許文献2の手法も、元の正規分布と均一分布を適用しているため、平均値付近を数多くサンプリングすることとなり、効率的でない。また、均一分布の範囲と正規分布の比の決定方法が明らかでない。
このように、ISを適用した既存の歩留まり推定法は、ある程度高速ではあるものの、精度良くサンプリングができないという問題があった。
その他の課題と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
本発明にかかるシミュレーション装置は、回路を構成する複数の素子の特性を示すパラメータを少なくとも入力とし、前記回路の良又は不良を実行結果として出力する評価関数を用いて、前記回路のMPFP(Most Probable Failure Point)を求める装置であって、前記素子それぞれについて、平均値及び標準偏差として初期値を設定する第1の平均値設定処理と、前記平均値及び前記標準偏差に基づいて乱数を発生し、これらの前記乱数を前記パラメータそれぞれの値として前記評価関数に入力し、前記評価関数の実行結果を前記パラメータの値とともに記憶手段に格納する処理を、複数回にわたり実行するシミュレーション処理と、前記シミュレーション処理の実行結果において、不良の割合が所定の閾値未満である場合、前記標準偏差を拡大するとともに、前記シミュレーション処理を再度実行する第1の制御処理とを実行する1次シミュレーション手段と、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を所定の値に設定する第2の平均値設定処理と、前記シミュレーション処理とを実行する2次シミュレーション手段と、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を縮小する第3の平均値移動処理と、前記シミュレーション処理と、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、新たな前記平均値が所定の終了条件を満たさない場合、前記標準偏差をさらに縮小して前記シミュレーションを再度実行し、新たな前記平均値が所定の終了条件を満たす場合、新たな前記平均値を前記回路のMPFPとする第3の制御処理とを実行する3次シミュレーション手段とを有するものである。
本発明にかかるシミュレーション方法は、回路を構成する複数の素子の特性を示すパラメータを少なくとも入力とし、前記回路の良又は不良を実行結果として出力する評価関数を用いて、前記回路のMPFP(Most Probable Failure Point)を求める方法であって、前記素子それぞれについて、平均値及び標準偏差として初期値を設定する第1の平均値設定処理と、前記平均値及び前記標準偏差に基づいて乱数を発生し、これらの前記乱数を前記パラメータそれぞれの値として前記評価関数に入力し、前記評価関数の実行結果を前記パラメータの値とともに記憶手段に格納する処理を、複数回にわたり実行するシミュレーション処理と、前記シミュレーション処理の実行結果において、不良の割合が所定の閾値未満である場合、前記標準偏差を拡大するとともに、前記シミュレーション処理を再度実行する第1の制御処理とを実行する1次シミュレーションステップと、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を所定の値に設定する第2の平均値設定処理と、前記シミュレーション処理とを実行する2次シミュレーションステップと、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を縮小する第3の平均値移動処理と、前記シミュレーション処理と、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、新たな前記平均値が所定の終了条件を満たさない場合、前記標準偏差をさらに縮小して前記シミュレーションを再度実行し、新たな前記平均値が所定の終了条件を満たす場合、新たな前記平均値を前記回路のMPFPとする第3の制御処理とを実行する3次シミュレーションステップとを有するものである。
本発明にかかるプログラムは、コンピュータに、回路を構成する複数の素子の特性を示すパラメータを少なくとも入力とし、前記回路の良又は不良を実行結果として出力する評価関数を用いて、前記回路のMPFP(Most Probable Failure Point)を求める処理を実行させるプログラムであって、前記プログラムは、前記素子それぞれについて、平均値及び標準偏差として初期値を設定する第1の平均値設定処理と、前記平均値及び前記標準偏差に基づいて乱数を発生し、これらの前記乱数を前記パラメータそれぞれの値として前記評価関数に入力し、前記評価関数の実行結果を前記パラメータの値とともに記憶手段に格納する処理を、複数回にわたり実行するシミュレーション処理と、前記シミュレーション処理の実行結果において、不良の割合が所定の閾値未満である場合、前記標準偏差を拡大するとともに、前記シミュレーション処理を再度実行する第1の制御処理とを実行する1次シミュレーションステップと、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を所定の値に設定する第2の平均値設定処理と、前記シミュレーション処理とを実行する2次シミュレーションステップと、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を縮小する第3の平均値移動処理と、前記シミュレーション処理と、前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、新たな前記平均値が所定の終了条件を満たさない場合、前記標準偏差をさらに縮小して前記シミュレーションを再度実行し、新たな前記平均値が所定の終了条件を満たす場合、新たな前記平均値を前記回路のMPFPとする第3の制御処理とを実行する3次シミュレーションステップとを含むものである。
前記一実施の形態によれば、半導体集積回路の製造におけるMPFP(Most Probable Failure Point)を高速かつ高精度に決定できるシミュレーション装置、シミュレーション方法及びプログラムを提供することができる。
実施の形態1にかかるシミュレーション装置100の構成を示す図である。 実施の形態1にかかるシミュレーション装置100の処理を示す図である。 実施の形態1にかかるシミュレーション装置100の処理を示す図である。 実施の形態1にかかるシミュレーション装置100の処理を示す図である。 実施の形態1にかかるシミュレーション装置100の処理を示す図である。 実施の形態1にかかるシミュレーション装置100の処理に使用される数値を示した図である。 実施の形態1にかかるシミュレーション装置100を従来の手法と比較した図である。 実施の形態1にかかるシミュレーション装置100を従来の手法と比較した図である。 実施の形態1にかかるシミュレーション装置100を従来の手法と比較した図である。 実施の形態2にかかるシミュレーション装置100の構成を示す図である。
はじめに、本発明の実施の形態の説明の前提として、モンテカルロ(MC)法及び重点サンプリング(IS)について説明する。
<モンテカルロ(MC)法>
モンテカルロ(MC)法は、解析的な計算が困難な問題に対して期待値を推定する手法の1つである。MC法では、各変数の確率分布に従う乱数を適用した計算を繰り返すことで、近似解を求める。
例として、関数fが臨界値f以下となる確率PをMC法で計算する手順を説明する。M次元の確率変数x=(x,・・xのf(x)について、評価関数I(x)を定義する(数1)。
Figure 2013182564
このとき、MC法による確率Pの推定値PMCは数2となる。
Figure 2013182564
ここでNは試行回数である。推定値PMCの分散Var(PMC)は数3で表わされる。
Figure 2013182564
数2及び数3によれば、精度の高い推定をするにはVar(PMC)を小さくする必要があり、その試行回数Nを増やせば良いことがわかる。
精度は精度指標をαとすれば、信頼区間は(1−α)*100(%)となり、必要な試行回数Nは数4で求められる。
Figure 2013182564
図6に示すように、95%信頼区間(α=0.05)はZα/2=1.96と等価である。例えば、6σレベル
Figure 2013182564
を95%の信頼区間で得たいならば、1*1012以上のサンプルが必要となる。
<重点サンプリング(IS)>
MC法の計算時間を短縮する手法として重点サンプリング(IS)がある。ISは推定値の分散Var(P)を低減する方法のひとつである。ISでは、計算に使用する乱数の確率密度関数として、元の確率密度関数とは異なる関数g(x)を適用する。稀な事象を多くサンプリングできる確率密度関数を適用すれば、精度を保ちながら計算時間を短縮することができる。
確率密度関数p(x)の代わりに代替分布g(x)を適用して確率Pを推定する場合、ISによる推定値PISは、重み関数をw(x)=p(x)/g(x)として数5で求められる。
Figure 2013182564
このときPISの分散は、数3及び数5より、数6となる。
Figure 2013182564
本実施の形態では、g(x)として複数の平均値を移動した正規分布からなる混合正規分布を適用する。
<実施の形態1>
つづいて、本発明の実施の形態について、図面を参照しながら詳細に説明する。
実施の形態1にかかるシミュレーション装置は、シミュレーション手法としてISを採用し、確率密度関数g(x)の平均値及び標準偏差を順を追って変化させることにより、稀な事象が最も典型的に発生する点であるMPFP(Most Probable Failure Point)を決定するものである。
ここで、MPFPとは、平均値(設計値)及び平均値からの偏差が予め与えられているトランジスタの特性値、例えば閾値電圧Vthをパラメータとした時に、SRAMの評価関数fの実行の結果が不良となり、かつ平均値からの距離(ノルム)が最も近いVthのことをいう(図4(a))。例えば、1つのメモリセルが6つのトランジスタで構成される一般的なSRAMであれば、MPFPは6次元空間内の一点である。評価関数fとしては、例えばStatic Noise Margin(SNM)やDynamic Write Margin(DWM)等がある。
<実施の形態1の構成>
図1に、実施の形態1にかかるシミュレーション装置100の構成を示す。
シミュレーション装置100は、1次シミュレーション手段110、2次シミュレーション手段120、3次シミュレーション手段130及び記憶手段140を有する。
1次シミュレーション手段110、2次シミュレーション手段120及び3次シミュレーション手段130は、いずれも後述のメモリ等に格納されたプログラムに基づいて各種制御を実行する機能を有する。典型的には中央演算処理装置(CPU)、読出専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、入出力ポート(I/O)等により実現される。
1次シミュレーション手段110、2次シミュレーション手段120及び3次シミュレーション手段130は、後述の処理を順に実行する。すなわち、1次シミュレーション手段110の処理が終了したならば2次シミュレーション手段120が、2次シミュレーション手段120の処理が終了したならば3次シミュレーション手段130が、それぞれ処理を開始する。
記憶手段140は、1次シミュレーション手段110、2次シミュレーション手段120及び3次シミュレーション手段130による計算結果等を格納する機能を有する。典型的にはランダムアクセスメモリ(RAM)等により実現される。
シミュレーション装置100は、これらの他に、計算に必要なパラメータ等を外部から入力するための入力部、計算結果を外部に出力するための出力部を有していても良い。
<実施の形態1の処理>
<シミュレーション処理>
1次シミュレーション手段110、2次シミュレーション手段120及び3次シミュレーション手段130は、いずれも、実行すべき処理の一部として、モンテカルロシミュレーションを用いてSRAMを評価する、シミュレーション処理を実施する。そこで、まずこのシミュレーション処理の内容について説明する。
SRAMの評価は、SRAM評価関数f(例えばSNM:Static Noise Margin、DWM:Dynamic Write Margin等)に必要なパラメータを投入して評価結果を得、当該評価結果を評価関数Iに投入してPass又はFailを判定することにより行う。
SRAM評価関数fに投入すべきパラメータに、SRAMを構成するトランジスタの特性値、例えば閾値電圧Vthがある。閾値電圧Vthとは、トランジスタ素子がONになるゲート電圧を示す値である。閾値電圧Vthは、トランジスタ素子固有の、平均値(設計値)からの標準偏差に基づいて推定することができる。すなわち、上記平均値を中心として、上記標準偏差の範囲内で乱数を発生させることにより、トランジスタ素子の閾値電圧Vthのサンプルが得られる。なお、上記標準偏差は、製造工程において実測により求めることが可能である。あるいは、経験値を用いることも可能である。
SRAMは、通常、複数個のメモリセルにより構成され、各メモリセルは複数個(例えば6個)のトランジスタにより構成される。よって、SRAM評価関数fのパラメータVthとは、これら複数のトランジスタの閾値電圧{Vth1,Vth2,・・Vth6}からなる6次元のパラメータである。
なお、SRAM評価関数fに投入すべき他のパラメータとしては、SPICEネットリスト(回路の設計情報)、SPICEパラメータ(回路のシミュレーションパラメータ。典型的にはP(プロセス:製造工程上のばらつき)、V(電圧)、T(温度)、L(ゲート長)、W(ゲート幅)等)、LPEルール(配線の抵抗R及び容量C)等がある。ここで、SPICEパラメータは、製造工程において実測した値を用いても良く、あるいは任意の値を用いても良い。
<MPFP算出処理>
つづいて、1次シミュレーション手段110、2次シミュレーション手段120及び3次シミュレーション手段130が、MPFPを算出するために実施する処理の全体像について説明する。
シミュレーション装置100は、大きく3つの処理を順に実行する。すなわち、第1段階として、1次シミュレーション手段110が、拡大超球正規分布サンプリング(Sampling from extended HS)を実行する。つぎに第2段階として、2次シミュレーション手段120が、移動した平均値を中心とした超球正規分布サンプリング(Sampling from mean−shifted HS)を実行する。最後に第3段階として、3次シミュレーション手段130が、移動した平均値を中心とした縮小超球正規分布サンプリング(Sampling from consecutively mean−shifted HS)を実行する。これらの第1段階乃至第3段階のそれぞれにおいて、上述のシミュレーション処理が繰り返し実施される。
つぎに、図2及び図3のフローチャートと、図4乃至図5とを用いて、上記第1段階乃至第3段階にかかる処理の内容について、詳細に説明する。
<第1段階:拡大超球正規分布サンプリング>
MC法では、通常、トランジスタのVthは正規分布をしているとする。これは、正規分布の平均近傍に多くのサンプルが存在することを意味する。しかしながら、SRAMの評価関数f(例えばStatic Noise Margin, Dynamic Write Margin等)においては、平均から大きく外れたサンプルが不良を引き起こす。よって、正規分布の裾にあるサンプルを評価することが重要になる。
この問題を解決するため、本実施の形態では、1次シミュレーション手段110が、標準偏差を拡大した正規分布を利用してMCを実施する。すなわち、十分な数の不良が発生し得る領域にまでサンプルの発生領域を拡大する。その手順は以下のとおりである。
S201:1次シミュレーション手段110が処理を開始する。1次シミュレーション手段110は、SRAM評価関数fの実行に必要な上述のパラメータ又はパラメータ生成に必要なデータを、所定の記憶手段又は入力手段から取得する。すなわち、1次シミュレーション手段110は、SPICEネットリスト、SPICEパラメータ、LPEルール等を入力するとともに、トランジスタの特性値Vthのサンプル生成に必要な平均値及び標準偏差を入力する。
S202:1次シミュレーション手段110は、1回目のシミュレーション処理を開始する。
S203:1次シミュレーション手段110は、シミュレーション処理を実行する。まず、モンテカルロシミュレーションを実行し、トランジスタの特性値Vthのサンプル群を生成する。このとき、乱数生成に用いる平均値μ及び標準偏差σは、S201において入力した値である。つづいて、生成したサンプル群を他のパラメータとともにSRAM評価関数fに投入して実行結果fを得、fを評価関数Iで評価して、Pass又はFailを判断する。ここで、1次シミュレーション手段110は、Vthのサンプル値と評価関数Iの実行結果(Pass又はFail)を組にして、記憶手段140に格納する。
S204〜S205:1次シミュレーション手段110は、記憶手段140を参照し、S203においてFailと判定されたサンプル数が、全サンプル数に占める割合を算出する。ここで、前記割合が所定の閾値(例えば0.1(図3))に満たない場合は、標準偏差σに対し1以上の所定の係数を乗じ、すなわち標準偏差を拡大したうえで、再度シミュレーション処理(S203)を行う。1次シミュレーション手段110は、Failと判定されたサンプル数が全サンプル数に占める割合が前記閾値に達するまで、標準偏差を拡大させつつ、モンテカルロシミュレーション(S203)を繰り返す。
S206:1次シミュレーション手段110は、Failと判定されたサンプル数が、全サンプル数に対して所定の割合に達したならば、Failと判定されたサンプルの中で最も小さいノルム|μ−μ(1)|を持つベクトルμ(1)を導出する(図4(b))。すなわち、記憶手段140に格納されている、Failと判定されたサンプルのなかから、平均値μに最も近い距離に位置するサンプルを選択し、当該サンプルの位置ベクトルを計算する。
<第2段階:超球正規分布サンプリング>
この段階では、平均値μを、S206で求めた位置ベクトルに移動し、移動した平均値を中心とし、所定の標準偏差を用いて、シミュレーション処理を行い、Pass又はFailureを判定する。
S207:2次シミュレーション手段120は、平均値を前述のμ(1)に移動する。すなわち、μ(1)を新たな平均値として採用する。また、新たに設定する標準偏差σをα*σとする。ここで、αは好ましくは2>α≧1(例えばα=1(図3))である。α=1とは、拡大も縮小もしない正規分布を示す。
S208:2次シミュレーション手段120は、これらの新たな平均値及び標準偏差を用いて、2回目のシミュレーション処理を実行する。2次シミュレーション手段120は、シミュレーション処理の結果Failと判定されたサンプルの中で最も小さいノルム|μ−μ(2)|を持つベクトルμ(2)を導出する(図5(a))。すなわち、Failと判定されたサンプルから、平均値μに最も近いサンプルを選択し、当該サンプルの位置ベクトルを計算する。
<第3段階:縮小超球正規分布サンプリング>
この段階では、平均値μを、S208で求めた位置ベクトルに移動し、移動した平均値を中心とし、縮小した標準偏差を用いて、シミュレーション処理を行い、Pass又はFailを判定する。次に不良サンプルの中から最小のノルムを探索し、そのベクトルの位置ベクトルに平均値を移動する。以後、同様に、平均値の移動、MC法、最小ノルムの探索をくり返す。最小ノルムが終了条件を満たすまで試行を繰り返し、終了条件を満たした際に得られた位置ベクトルをMPFPとする。
S209:3次シミュレーション手段130は、平均値を前述のμ(2)に移動し、新たに設定する標準偏差σをβ*σとする。ここで、βは1>β>0とする(例えばβ=1/3(図3))。すなわち、標準偏差を縮小する。
S210:3次シミュレーション手段130は、これらの新たな平均値及び標準偏差を用いて、3回目のシミュレーション処理を実行する。3次シミュレーション手段130は、シミュレーション処理の結果Failと判定されたサンプルの中で最も小さいノルム|μ−μ(3)|を持つベクトルμ(3)を導出する(図5(b))。すなわち、Failと判定されたサンプルから、平均値μに最も近いサンプルを選択し、当該サンプルの位置ベクトルを計算する。
S211〜S212:3次シミュレーション手段130は、S209〜S210の処理を繰り返す。すなわち、前回にあたる(N−1)回目のシミュレーション処理で導出された最小ノルム|μ−μ(N−1)|を持つベクトルμ(N−1)に平均値を移動し、標準偏差σをβ*σとして、N回目のシミュレーション処理を実行する。また、シミュレーション処理の結果Failと判定されたサンプルの中で最も小さいノルム|μ−μ(N)|を持つベクトルμ(N)を導出する(図5(c))。
S213:3次シミュレーション手段130は、S212において算出した位置ベクトルが、所定の終了条件を満たしているか否かを判定する。典型的には、(N−1)回目で得られたベクトルμ(N−1)のノルムとN回目で得られたベクトルμ(N)のノルムの大きさを比較し、差分が所定の閾値以上であれば、例えば|μ−μ(N−1)|−|μ−μ(N)|≧0.01であれば、終了条件を満たしたものと判定することができる。
S214:S213において終了条件が満たされなかった場合、3次シミュレーション手段130は、NをインクリメントすなわちN=N+1として、S211〜S214の処理を繰り返す。
S215:S213において終了条件が満たされた場合、3次シミュレーション手段130は、|μ(N)|を最終的なMPFPと決定する。
<実施の形態1にかかる手法の評価>
発明者は、6トランジスタSRAMの歩留まり推定に、本実施の形態にかかる手法(以下、Proposed法)と非特許文献1記載の手法(以下、Conv.法)を適用し、両手法の精度と、必要とされたMC試行回数とを評価した。以下に評価結果を示す。
評価の条件として、トランジスタのしきい値ばらつきを想定し、その平均値からの変動量ΔVth=(ΔVth1,・・ΔVth6)を6次元の確率変数xとする。
Conv.法の評価については、IHSとDHSのサンプル数を非特許文献の記載通りの回数(Conv.(1x))及びその4倍の回数(Conv.(4x))とした。これは、後述するが、これらの段階のサンプル数が明らかに論文記述通りの回数では少ないと考えられるからである。また、Proposed法との直接的な比較を行うために、終了条件を変更した。Conv.法では最終段階のISのMC法回数は、ある不良率レベルに達するまでの不定回数であるが、これを特定の回数に変更した。この特定回数は、十分でかつ最小であるように、数段階で評価し、MPFPのノルムがMC法回数に対して、飽和するに必要な最小の回数とした。図7に、評価に用いたサンプル数を示す。これらのサンプル数において、10種類乱数セットを適用し、Static Noise Margin(SNM)とDynamic Write Margin(DWM)とについてProposed法とConv.法との性能評価を行った。
図8に、Static Noise Margin(SNM)の評価結果を示す。Static Noise Margin(SNM)とは、SRAMの静的なデータ読み出し時における安定性に関する評価式fである。
図8の表は、Proposed法とConv.法とを電源電圧(Vdd)800mVの場合について比較した結果を示している。図8のグラフは、乱数セット毎の不良率にProposed法は、10種類の乱数セットでの試行において、MC法回数がほぼ同等である(Conv.(4x))に比較して、平均で0.029σ小さいMPFPを導出し、導出されたMPFPのばらつきも3.6〜5.8倍小さい。
図9に、Dynamic Write Margin(DWM)の評価結果を示す。Dynamic Write Margin(DWM)とは、SRAMの動的なデータ書き込み時における安定性に関する評価式fである。
図9の表は、Proposed法とConv.法とを電源電圧(Vdd)800mVの場合について比較した結果を示している。図9のグラフは、乱数セット毎の不良率について示している。Proposed法は、10種類の乱数セットでの試行において、MC法回数がほぼ同等である(Conv.(4x))に比較して、平均で0.045σ小さいMPFPを導出し、導出されたMPFPのばらつきも4.2〜6.2倍小さい。また、ISを使用しない単純なMC法に比較して、信頼性90%において、平均で0.111σ小さいMPFPを導出し、導出されたMPFPのばらつきも9.5倍小さい。
このように、本実施例にかかる手法(Proposed法)が従来の手法(Conv.法)に対して優位な正確性、高速性を有する理由について、以下に説明する。
本実施の形態では、生起確率が高く不良率への寄与が大きいサンプルである、原点から最も近いPass/Fail境界近傍のサンプルを、平均値移動ベクトルとしている。特に、第1段階にて1次シミュレーション手段110が拡大超球正規分布サンプリングを実施することで、原点から遠く離れた(例えば6σ以上の)不良サンプルを、精度を維持したまま捕捉できる。また、第2段階以降では、2次シミュレーション手段120及び3次シミュレーション手段130が、6次元超球表面のPass/Fail境界を沿って、その平均値移動ベクトルをその都度変更する。そのため、第2段階以降のサンプル不良率は約50%である。さらに、第3段階以降では、3次シミュレーション手段130が超球正規分布の分散を縮小してサンプリングを行うので、効率的でかつ高精度である。このように、各段階で実施するシミュレーション処理におけるサンプリングの精度は常に高いまま維持され、結果として、より真のMPFPに近いMPFPを得ることができる。
すなわち、本実施の形態によれば、従来の手法よりも小さいノルムのMPFPを、高速に導出することができる。これにより、設計者はSRAMのマージン設計を正確に行うことが可能となり、結果としてSRAMの信頼性が向上できる。
<実施の形態2>
本実施の形態では、実施の形態1として説明したシミュレーション装置100を用いて、SRAMの最低動作電圧(Minimun Operation Voltage)Vminを算出し、算出したVminを実際のウェハ等から抽出したVmin (R)と比較し、当該比較の結果に基づいて、実施の形態1において計算したMPFPの正確性を検証する、コリレーション処理について説明する。
<実施の形態2の構成>
図10に、本実施の形態にかかるシミュレーション装置100の構成を示す。
本実施の形態にかかるシミュレーション装置100は、数値出力手段210、数値入力手段220及びコリレーション判断手段230を有する点に特徴を有する。その余の構成要素は、実施の形態1と同様である。
数値出力手段210は、3次シミュレーション手段130が算出するMPFPを取得するとともに、MPFPを用いてVminを算出する処理を行う。
ここで、VminとはSRAMの最低動作電圧(Minimun Operation Voltage)であり、例えば1M(1,000,000)個のメモリセルを有するSRAMであれば、不良ビット数が1/1M、すなわち不良率が10−6となるV(電圧)を示す。Vminは、例えばパラメータVを変えつつMPFPを複数回計算することによりVmin−不良率(MPFPのノルムを不良率換算する)曲線を求め、当該曲線に基づき不良率が10−6の際のVを特定することで、推定することができる。
数値入力手段220は、実際のウェハを測定することで得られた最低動作電圧Vmin (R)を、測定器又はキーボード等の入力デバイス等から入力する手段である。なお、Vmin (R)は、必ずしも実測値である必要はなく、Vminの検証の用に供し得るものであれば良い。
コリレーション判断部230は、数値出力手段210及び数値入力手段220から、Vmin及びVmin (R)を取得し、両者を比較する処理を行う。
<実施の形態2の処理>
本実施の形態にかかるシミュレーション装置100の処理について説明する。
はじめに、シミュレーション装置100は、実施の形態1のS201乃至S215の処理を行い、MPFPを計算する。3次シミュレーション手段130は、計算したMPFPを数値出力手段210に出力する。
数値出力手段210は、取得したMPFPに基づき、上述の方法によりVminを推定し、コリレーション判断手段230に対し出力する。
また、数値入力手段220は、ウェハの実測値Vmin (R)を取得し、コリレーション判断手段230に対し出力する。
コリレーション判断手段230は、取得したVminとVmin (R)とを比較する。ここで、両者の差分ΔVminがある閾値V未満であれば、コリレーション判断手段230は、コリレーションが取れているものと判断する。すなわち、シミュレーション装置100が算出したMPFPは実際の設計用のデータとして使用し得るものと判定される。一方、ΔVminがV以上であれば、コリレーション判断手段230は、コリレーションが取れていないものと判断する。この場合、シミュレーション装置100は、SPICEパラメータ、LPEルール等を修正し、再度MPFP及びVminの計算を試行することとなる。
本実施の形態によれば、コリレーション判断手段230は、シミュレーション装置100が計算したMPFPから求められるVminと、実測値Vmin (R)とを比較することにより、MPFPの正確性を検証する。これにより、シミュレーション装置100は、真のMPFPに近いMPFPを導出できる。また、最低動作電圧Vminを正確に予測できる。そのため、設計者はSRAMの仕様を高精度に決定できる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述の実施の形態において、ハードウェアにより実施されるものとして説明した任意の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。この場合、コンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non−transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
100 シミュレーション装置
110 1次シミュレーション手段
120 2次シミュレーション手段
130 3次シミュレーション手段
140 記憶手段
210 数値出力手段
220 数値入力手段
230 コリレーション判断手段

Claims (15)

  1. 回路を構成する複数の素子の特性を示すパラメータを少なくとも入力とし、前記回路の良又は不良を実行結果として出力する評価関数を用いて、前記回路のMPFP(Most Probable Failure Point)を求める装置であって、
    前記素子それぞれについて、平均値及び標準偏差として初期値を設定する第1の平均値設定処理と、
    前記平均値及び前記標準偏差に基づいて乱数を発生し、これらの前記乱数を前記パラメータそれぞれの値として前記評価関数に入力し、前記評価関数の実行結果を前記パラメータの値とともに記憶手段に格納する処理を、複数回にわたり実行するシミュレーション処理と、
    前記シミュレーション処理の実行結果において、不良の割合が所定の閾値未満である場合、前記標準偏差を拡大するとともに、前記シミュレーション処理を再度実行する第1の制御処理とを実行する
    1次シミュレーション手段と、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を所定の値に設定する第2の平均値設定処理と、
    前記シミュレーション処理とを実行する
    2次シミュレーション手段と、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を縮小する第3の平均値移動処理と、
    前記シミュレーション処理と、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、新たな前記平均値が所定の終了条件を満たさない場合、前記標準偏差をさらに縮小して前記シミュレーションを再度実行し、新たな前記平均値が所定の終了条件を満たす場合、新たな前記平均値を前記回路のMPFPとする第3の制御処理とを実行する
    3次シミュレーション手段とを有する
    シミュレーション装置。
  2. 前記第1の平均値設定処理において、前記平均値及び前記標準偏差の初期値は、前記回路の製造工程から取得された値である
    請求項1記載のシミュレーション装置。
  3. 前記第3の制御処理において、前記終了条件は、新たな前記平均値の前記ノルムと直前の前記平均値の前記ノルムとの差が所定の閾値以下であることである
    請求項1又は2記載のシミュレーション装置。
  4. 数値出力手段、数値入力手段及びコリレーション判断手段をさらに有し、
    前記数値出力手段は、前記3次シミュレーション手段が計算したMPFPに基づいて前記回路の第1の最小動作電圧を算出するとともに、前記最小動作電圧を前記コリレーション手段に出力し、
    前記数値入力手段は、第2の最小動作電圧を入力するとともに、前記コリレーション手段に出力し、
    前記コリレーション判断手段は、前記第1の最小動作電圧及び前記第2の最小動作電圧が所定の閾値以下である場合、コリレーションが取れている旨の判定を行う
    請求項1乃至3いずれか1項記載のシミュレーション装置。
  5. 前記第2の最小動作電圧は、前記回路の製造工程から取得された値である
    請求項4記載のシミュレーション装置。
  6. 回路を構成する複数の素子の特性を示すパラメータを少なくとも入力とし、前記回路の良又は不良を実行結果として出力する評価関数を用いて、前記回路のMPFP(Most Probable Failure Point)を求める方法であって、
    前記素子それぞれについて、平均値及び標準偏差として初期値を設定する第1の平均値設定処理と、
    前記平均値及び前記標準偏差に基づいて乱数を発生し、これらの前記乱数を前記パラメータそれぞれの値として前記評価関数に入力し、前記評価関数の実行結果を前記パラメータの値とともに記憶手段に格納する処理を、複数回にわたり実行するシミュレーション処理と、
    前記シミュレーション処理の実行結果において、不良の割合が所定の閾値未満である場合、前記標準偏差を拡大するとともに、前記シミュレーション処理を再度実行する第1の制御処理とを実行する
    1次シミュレーションステップと、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を所定の値に設定する第2の平均値設定処理と、
    前記シミュレーション処理とを実行する
    2次シミュレーションステップと、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を縮小する第3の平均値移動処理と、
    前記シミュレーション処理と、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、新たな前記平均値が所定の終了条件を満たさない場合、前記標準偏差をさらに縮小して前記シミュレーションを再度実行し、新たな前記平均値が所定の終了条件を満たす場合、新たな前記平均値を前記回路のMPFPとする第3の制御処理とを実行する
    3次シミュレーションステップとを有する
    シミュレーション方法。
  7. 前記第1の平均値設定処理において、前記平均値及び前記標準偏差の初期値は、前記回路の製造工程から取得された値である
    請求項6記載のシミュレーション方法。
  8. 前記第3の制御処理において、前記終了条件は、新たな前記平均値の前記ノルムと直前の前記平均値の前記ノルムとの差が所定の閾値以下であることである
    請求項6又は7記載のシミュレーション方法。
  9. 前記3次シミュレーションステップが計算したMPFPに基づいて前記回路の第1の最小動作電圧を算出するステップと、
    第2の最小動作電圧を入力するステップと、
    前記第1の最小動作電圧及び前記第2の最小動作電圧が所定の閾値以下である場合、コリレーションが取れている旨の判定を行うステップとをさらに有する
    請求項6乃至8いずれか1項記載のシミュレーション方法。
  10. 前記第2の最小動作電圧は、前記回路の製造工程から取得された値である
    請求項9記載のシミュレーション方法。
  11. コンピュータに、
    回路を構成する複数の素子の特性を示すパラメータを少なくとも入力とし、前記回路の良又は不良を実行結果として出力する評価関数を用いて、前記回路のMPFP(Most Probable Failure Point)を求める処理を実行させるプログラムであって、
    前記プログラムは、
    前記素子それぞれについて、平均値及び標準偏差として初期値を設定する第1の平均値設定処理と、
    前記平均値及び前記標準偏差に基づいて乱数を発生し、これらの前記乱数を前記パラメータそれぞれの値として前記評価関数に入力し、前記評価関数の実行結果を前記パラメータの値とともに記憶手段に格納する処理を、複数回にわたり実行するシミュレーション処理と、
    前記シミュレーション処理の実行結果において、不良の割合が所定の閾値未満である場合、前記標準偏差を拡大するとともに、前記シミュレーション処理を再度実行する第1の制御処理とを実行する
    1次シミュレーションステップと、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を所定の値に設定する第2の平均値設定処理と、
    前記シミュレーション処理とを実行する
    2次シミュレーションステップと、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、前記標準偏差を縮小する第3の平均値移動処理と、
    前記シミュレーション処理と、
    前記記憶手段から、不良とされた実行結果にかかり、かつ前記平均値の初期値に対し最小ノルムとなる前記パラメータの値を選択して新たな前記平均値とするとともに、新たな前記平均値が所定の終了条件を満たさない場合、前記標準偏差をさらに縮小して前記シミュレーションを再度実行し、新たな前記平均値が所定の終了条件を満たす場合、新たな前記平均値を前記回路のMPFPとする第3の制御処理とを実行する
    3次シミュレーションステップとを含む
    プログラム。
  12. 前記第1の平均値設定処理において、前記平均値及び前記標準偏差の初期値は、前記回路の製造工程から取得された値である
    請求項11記載のプログラム。
  13. 前記第3の制御処理において、前記終了条件は、新たな前記平均値の前記ノルムと直前の前記平均値の前記ノルムとの差が所定の閾値以下であることである
    請求項11又は12記載のプログラム。
  14. 前記3次シミュレーションステップが計算したMPFPに基づいて前記回路の第1の最小動作電圧を算出するステップと、
    第2の最小動作電圧を入力するステップと、
    前記第1の最小動作電圧及び前記第2の最小動作電圧が所定の閾値以下である場合、コリレーションが取れている旨の判定を行うステップとをさらに含む
    請求項11乃至13いずれか1項記載のプログラム。
  15. 前記第2の最小動作電圧は、前記回路の製造工程から取得された値である
    請求項14記載のプログラム。
JP2012047885A 2012-03-05 2012-03-05 シミュレーション装置、シミュレーション方法及びプログラム Pending JP2013182564A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012047885A JP2013182564A (ja) 2012-03-05 2012-03-05 シミュレーション装置、シミュレーション方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012047885A JP2013182564A (ja) 2012-03-05 2012-03-05 シミュレーション装置、シミュレーション方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2013182564A true JP2013182564A (ja) 2013-09-12

Family

ID=49273145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012047885A Pending JP2013182564A (ja) 2012-03-05 2012-03-05 シミュレーション装置、シミュレーション方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2013182564A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113449422A (zh) * 2021-06-29 2021-09-28 深圳天狼芯半导体有限公司 处理测试数据的方法、装置、设备及存储介质
WO2023007945A1 (ja) * 2021-07-27 2023-02-02 株式会社日本製鋼所 データセット作成方法、学習モデル生成方法、コンピュータプログラム及びデータセット作成装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113449422A (zh) * 2021-06-29 2021-09-28 深圳天狼芯半导体有限公司 处理测试数据的方法、装置、设备及存储介质
CN113449422B (zh) * 2021-06-29 2023-03-03 深圳天狼芯半导体有限公司 处理测试数据的方法、装置、设备及存储介质
WO2023007945A1 (ja) * 2021-07-27 2023-02-02 株式会社日本製鋼所 データセット作成方法、学習モデル生成方法、コンピュータプログラム及びデータセット作成装置

Similar Documents

Publication Publication Date Title
KR101904518B1 (ko) 희귀 불량 현상을 식별하기 위한 방법 및 시스템
US11762013B2 (en) Integrated circuit profiling and anomaly detection
Pandya et al. C5. 0 algorithm to improved decision tree with feature selection and reduced error pruning
US8195427B2 (en) Methods and systems for high sigma yield estimation using reduced dimensionality
US8555236B2 (en) Non-invasive leakage power device characterization of integrated circuits using device grouping and compressive sensing
US8219355B2 (en) Methods and systems for high sigma yield estimation
JP2010160787A (ja) パラメータ情報作成システム、歩留まり算出システム、プログラム及び記録媒体
US10713405B2 (en) Parameter generation for semiconductor device trapped-charge modeling
KR20180115208A (ko) 회로 수율 분석 방법 및 회로 수율 분석을 위한 시스템
US8813009B1 (en) Computing device mismatch variation contributions
Weller et al. Fast and efficient high-sigma yield analysis and optimization using kernel density estimation on a Bayesian optimized failure rate model
Yu et al. Remembrance of transistors past: Compact model parameter extraction using Bayesian inference and incomplete new measurements
JP2013182564A (ja) シミュレーション装置、シミュレーション方法及びプログラム
Xu et al. A Bayesian method for planning accelerated life testing
CN113111620A (zh) 一种半导体电路良率预测方法及装置
Kabaoğlu et al. Variability-aware cryogenic models of mosfets: validation and circuit design
CN114239465A (zh) 一种基于缩放方差采样的近阈值电路延时估计方法
Larson Visualizing climate variability with time-dependent probability density functions, detecting it using information theory
JP2014186702A (ja) 物理故障解析プログラム、物理故障解析方法および物理故障解析装置
Shoniker Accelerated verification of integrated circuits against the effects of process, voltage and temperature variations
KR20210117550A (ko) 3차원 형상의 임계 차원을 측정하기 위한 방법 및 이를 위한 장치
Tyagi et al. Speeding up rare event simulations using Kriging models
US11669667B2 (en) Automatic test pattern generation (ATPG) for parametric faults
Alwan et al. Improved statistical models for limited datasets in uncertainty quantification using stochastic collocation
Awano et al. Efficient circuit failure probability calculation along product lifetime considering device aging