spice simulation tips-1 

一部Spice Simulation講座での内容をご紹介いたします。

注意:HPの内容をLocalに保存している方がいます。アクセスログを取ってますので何度も繰り返す場合は、会社名と名前(判明しています)を公開します。

1. Spice Simulationでの解法

HDLABの講座では、Spice SimulationのBeginner's/IntermediateそしてVerilog-AMSの

講座で以下の式が出て来ます。

写真

 

 

 

これはKirchhoff(キルヒホッフ)の電流電圧の保存則で第一法則/第二法則と呼ばれる物です。

よくSpice 関連の書物やマニュアルではKCL, KVLと略されていますがこれの事をさしています。

2. 収束判定:KCL/KVL

Berkeley Spiceをソースコードに持つSpiceは主に以下のKVLの判定式のみで収束判定を行います。(MNA:修正設定解析法により電圧項のみの式にまとめられる為です)

以下,2012年spice Simulation & modeling講座の資料より

SPECTRE*/NEXXIM等のBerkeley Spiceを起源に持たないSpiceでは、KCLを使用するこSpiceもあります。(以下HDLAB講座:2012年Spice Simulation & modeling講座より)

3. Linearize

Spices Simulationする場合、意外に知られてないのは、トランジスタ等の非線形デバイスは 、以下に示すように線形デバイスを用いた小信号モデルとして置き換えます。

(計算機では非線形のままでは計算出来ないのでこのように線形デバイスに置き換えてしまいます)

(以下HDLAB講座:2012年Spice Simulation & modeling講座より)

4. Time Step Algorithm &u Numerical Integration

Spice Simulatorにとって、Time Step Algorithmは、Spiceのモデルの次に重要な物です。各社いろいろと高速化で苦労してるのはこの部分になります。最近では、Multi-rate法やModel Reductionの新しい手法により高速化もありますが、1長1短です。

あまり書物で触れられてない内容、積分法について以下に記載しておきます。積分法は、Time Step Algorithmで決定された次のTime Step Pointと過去のTime Stepを基準として、収束判定を行う為に重要な部分です。古くから積分法は、電磁界の世界でも共通して使われており公知の技術ですが、2009年のHspiceではBDF(Backward Differeantial Formula)というを新しく追加したのは、最近の事です。

GEAR法はBDF2: 2nd order Backward Differential Formulaです。

電磁界では、陽解法、陰解法と呼ばれる物はSpiceではFE(Foward Eulrer) , BE(Backward Eulrer)と呼ばれる物と同意です。

数学の本では、高校で習った微積分の所の復習になると思うのですが、こんな用語は出て来ません。数値計算分野の用語ですので、恐らく大学で習ってるかも知れません。

以下はHDLABの今年2012年、5/31-6/1のSpice Simulation & modeling講座から抜粋して資料を掲載いたします。

time

inte1

trap

inte3

5. MNA ( modifided Nodal Analysis)とは?

よくSpiceで検索を書けますとMNAという言葉が出来て来ます。日本語訳は『修正接点解析法』と言います。訳してもさっぱりですね。それではそのMNAについて少しばかり解説を。

(以下HDLAB講座:2012年Spice Simulation & modeling講座より)

MNAを解く時に最初に『write KCL』を書き出します。続いて電流の項を電圧に書き換えます。すると上記のようにほぼ電圧式だけの行列で回路方程式が解けます。

ある回路を解いた例ですが、以下HDLAB講座:2012年Spice Simulation & modeling講座より

一部の制御電流源をのぞきほとんどが電圧項に書き換えられています。これで最終的に連立一次方程式を解いていき、…最後の収束判定でKVLを用いるのが良くわかるかと思います。

*iphone アプリ 開発
*ラティース ラティッセ