電源設計の技術情報サイト

技術資料ダウンロード

シミュレーション

電子回路シミュレーションの基礎

SPICEシミュレーションの種類:モンテカルロ

前回は、SPICEシミュレーションの種類と、標準的に搭載されている4種類の解析機能の中からDC解析、AC解析、過渡解析について説明しました。今回は残りのモンテカルロについて説明します。

SPICEシミュレーション:モンテカルロ

モンテカルロとは、シミュレーションや数値計算を乱数を用いて行う手法の総称です。実際に回路を構成する抵抗、コンデンサ、インダクタ、ダイオード、トランジスタ、ICなど、ほとんどの部品は特性のばらつきを持っています。例えば抵抗器には許容差があり、±5%精度の100Ω抵抗器の抵抗値は95Ω~105Ωの間にあります。ばらつきはそれぞれの部品に存在し、それぞれの部品のばらつきの合計が構成した回路の特性のばらつきになります。

モンテカルロシミュレーションでは、それぞれの回路要素のばらつきを反映させた多数回のシミュレーションを実行し、全体特性のばらつきを評価することが可能です。これは、回路全体の特性が複数の回路要素の影響を受ける場合に有効です。方法としてはいろいろありますが、基本的には全体特性に大きな影響を与える回路要素を中心にばらつきを与える方法を採ります。

モンテカルロの例

シミュレータの種類によってばらつきの設定方法は異なります。モンテカルロの設定方法も、抵抗などのシンボルに直接ばらつきを記述できる場合とできない場合があります。それぞれの例を示します。

・シンボルに直接ばらつきを記述できる場合

この例は、100Ωの抵抗に電圧を印加し、抵抗値(電圧/電流)をシミュレーションしたものです。抵抗値は{100*(1+tol)}という記述になっています。これは、抵抗値を設定する際に抵抗値の欄に直接書き込みます。このtolに乱数を用いることでばらつきを発生させて、300回のシミュレーションを実行する例です。

例では2種類の乱数を使い、それぞれの分布を示しています。①では、tol=flat(0.05)と定義されており、これは、ばらつき範囲が±5%の一様乱数を示しています。②では、tol=gauss(0.05)と定義されており、これは、標準偏差σ=5%のガウス乱数を示しています。シミュレーション結果は、一様乱数を用いたものは一様分布、ガウス乱数を用いたものは正規分布になります。

SPICEベースシミュレータのモンテカルロ設定方法。シンボルに直接ばらつきを記述できる場合。

・シンボルに直接ばらつきを記述できない場合

SPICEモデルによっては、上記の抵抗のようにシンボルに直接ばらつきを記述できない場合があります。以下は、NPNバイポーラトランジスタのhFE-IC特性のシミュレーション例ですが、バイポーラトランジスタのシンボルに直接ばらつきを記述できないため、SPICEモデルにばらつきの記述を追加する方法を採ります。

SPICEベースシミュレータのモンテカルロ設定方法。シンボルに直接ばらつきを記述できない場合。

どのように記述するかの説明が目的はないので記述内容の詳細は割愛しますが、このシミュレータの場合、回路図内にバイポーラトランジスタのパラメータにhFE=400±50のばらつきの記述を追加したモデルを貼り付けます。図の緑の線で囲った部分がそれで、ばらつかせるパラメータ以外も全て記述します。2SC4081は元々モデルlibにばらつきを含まないモデルが登録されていますが、回路図に貼り付けたモデルの方が優先的に使用されるので、記述したばらつきが反映されます。

ここでは、モンテカルロの設定方法として抵抗などのシンボルに直接ばらつきを記述できる場合と、できない場合にはSPICEモデルに直接ばらつき記述をする方法があることを理解してください。

Key Points:

・SPICEベースのシミュレータはDC解析、AC解析、過渡解析、モンテカルロ、Sパラメータ、フーリエ解析、ノイズ解析などの機能を備えている。

・モンテカルロは、シミュレーションや数値計算を乱数を用いて行う手法の総称で、部品のばらつきを考慮する。

・モンテカルロの設定はシミュレータによって異なる。


SPICEモデルのダウンロードはこちら