SPICEの差別化

SPICE の差別化
Mike Engelhardt
LTspice をダウンロードするには、www.linear-tech.co.jp/ltspice にアクセス
アナログ設計技術者は、回路性能の予測をシミュレーションに大きく依存しています。シミュレータの価
値は、シミュレータが物理的な現実をどの程度適切に予測できるか、またどの程度素早く結果を出力で
きるかによって決まります。シミュレーションによる性能と実際の性能との間に差異があると、製品になっ
てから、費用のかかるデバッグ・サイクルの繰り返しに落ち込むことがあります。
SPICE がアナログ回路シミュレーションに使用
の正しい解になります。1 ニュートン反復法の
疎行列法
されるのは、 SPICE が任意の回路の最大限の
収束が成功すると、作成した回路の正しい解
大信号動作を計算できるからです。SPICE で
が見つかったという数値的証拠を見つけること
テイラー級数は多次元です。回路内の未知の
使用されている 3 つの数値解析法は、SPICE
ができます。
がアナログ回路シミュレーションで成功してい
る理由になっています。具体的には、以下のと
おりです。
• 非線形素子を持つ回路の解を見つける
ニュートン反復法
• 大規模な行列を 実用的なコンピュータの
アドレス空間に格納する疎行列法
• 回路のリアクタンスから生じる微分方程式を
積分する陰積分法
ニュートン反復法の堅牢性は、
(1)回路素子の
すべての I-V 曲線の値と傾斜が連続している
ことと、
(2)すべての非線形素子が容量でバイ
パスされ、以前の時間ステップ解が現時点で
のニュートン反復の妥当な出発点になること
に依存します。条件(1)と(2)はどの物理回路
でも満たすことができますが、SPICE プログラ
ムでは、通常そうすることができません。これ
は、Berkeley SPICE の半導体のデバイスには
不連続点があり、これらの実装誤差が SPICE
SPICE シミュレータが正しい結果を確実に生
シミュレータにも引き継がれてしまっているか
成する能力は、これらの方法がどの程度うま
らです。LTspice では、これらの不連続性は発
く実装されるかに依存します。この記事では、
生しません。一例を説明するため、PSpice2 と
LTspice が正しい結果を出すという点で他の
LTspice でのダイオードの I-V 曲線を図 1 に示
SPICE シミュレータより優れている理由につい
します。各事例で使用したネットリストは次の
て概説します。
とおりです。
ニュートン反復法
ニュートン反復法では、各非線形回路デバイ
スの I-V 曲線をテイラー級数として展開するこ
とが必要ですが、最初の 2 項だけ残して、得ら
* I-V discontinuity in PSpice diode
V1 N001 0 0
D1 N001 0 D
.dc V1 -.3 -.2 2u
.probe
.model D D(Is=10n)
.end
れた 1 組の連立一次方程式を解きます。線形
PSpice のダイオード I-V 曲線は、値と傾斜の両
システムの解が、確かにテイラー級数が展開
方で連続していません。PSpice のほとんどの
された真の点である場合、テイラー近似解は
半導体デバイスにはこのような不連続箇所が
ちょうどその点にあり、その近くで正確なので、
存在しますが、LTspice の半導体デバイスには
この線形システムの解は実は元の非線形回路
まったく存在しません。
10 | 2015年1月: LT Journal of Analog Innovation
電圧ノードごとに 1 次元となります。アナログ
IC の場合、これは 100,000 の異なる電圧ノー
ドになり、倍精度の行列係数では 100,000×
100,000 の導電率行列、つまり 800 億バイト
になることがあります。今日の 64 ビット・プロ
セッサであっても、それほどまでに多くのメモリ
へのアクセスに十分なアドレス線を持つことは
ありません。幸いにも、ほとんどすべての係数
が 0 なので、全てのデータを保存する必要はあ
りません。疎行列法は、0 以外の要素だけを扱
います。これにより、大規模な行列を比較的小
規模のアドレス空間で解くことができます。
行列の疎密度は、実際の回路の物理的な性質
に起因します。ほとんどのノードは他の数ノー
ドに接続されるだけです。例えば、網目状の抵
抗のように見える回路の導電率行列を作成し
た場合でも、各ノードの抵抗性接続先は隣接
ノードに限定されるので、行列はほぼ対角成
分になります。実際の回路は、網の目ほど密度
が高くありません。大規模なアナログ回路の疎
密度は ppm レンジ内です。この疎密度こそが、
現代のコンピュータで行列を解くことを可能に
しています。アナログ回路のニュートン反復は、
疎行列法なしでは不可能です。
設計特集
LTspice では、行列のメモリが割り当てられ、malloc() から返されるアドレスが分かってから、自己オー
サリング・アセンブリ言語のソースを実行時に書き込んで、データを FPU に取り込むときのオーバー
ヘッドを省きます。この遅延オーサリング・コードは、具体的な行列要素のアドレスをコードに合わせ
て解決できるので、データを効率よく読み込んで、FPU はパイプラインが満杯の状態で動作できます。
図 1.PSpice(左)でのダイオード I-V 曲線の不連続性と LTspice(右)での連続したダイオード I-V 曲線。不連続性は、非線形回路を解決するシミュレータの能力に悪影響を及ぼします。
全ての SPICE シミュレータは、これらの疎行列
FPU パイプラインは、通常、空の状態で動作
れることになります。シミュレータのコンパイル
法を採用する点で共通しています。すべての
します。突き詰めると、これは、すべてのオペ
時に行列要素を示すために分かっているのは、
SPICE プログラムは、LU 因数分解を使用しま
レーティング・システムが動的メモリ割り当て
ベースアドレスからどれだけ離れているかとい
す。ほとんどの SPICE シミュレータでは、学術
を使用するという事実によるものです。シミュ
うインデックスの値だけです。実行時にこのア
的な Berkeley SPICE コードで配布されたコー
レータが作成されてコンパイルされる時点で
ドレスを解決し、このアドレスが示すデータを
ドをもとにした疎行列ライブラリを使用します
は、行列データを格納する記憶領域は決まっ
FPU に取り込むには、FLOP 自体を実行するよ
が、その一部は、通常、高速 SPICEとして販売
ていません。実行時に、シミュレータは関数呼
りも長い時間がかかります。4 データを効率的
されており、SuperLU などの拡張疎行列ライ
出し malloc() を使用してメモリを要求します。
に取り込めて、 FPU が取り込みを待つ必要が
ブラリを使用することによって、性能を改善し
これにより、シミュレータが行列データを安全
ないように、計算に必要なデータのアドレスは、
ています。3
に格納することができるアドレスが返されます。
計算時より前に判明することが理想です。
より優れた方法は、土台となるハードウェアが
持つ理論上の FLOP(浮動小数点演算)限度
で、プロセッサにそのまま数値演算を実行させ
ることです。問題は、 FPU が FLOP を実際に
実行する時間より、数値データが FPU に届け
られるまでの時間の方が長いことです。
各行列要素に専用の名前を付けることは人間
にはできないので、配列が使用されます。これ
により、シミュレータが必要とするメモリアドレ
ス範囲は、数は少ないものの 1 つ 1 つが大き
くなり、個々の係数は、malloc() によって返さ
れるベースアドレスからのインデックスで表さ
LTspice では、行列のメモリが割り当てられ、
malloc() から返されるアドレスが分かった時点
で、自己オーサリング・アセンブリ言語のソー
スを実行時に書き込んで、データを FPU に取
り込むときのオーバーヘッドを省きます。この
遅延オーサリング・コードは、具体的な行列要
2015年1月: LT Journal of Analog Innovation | 11
PSpice の Gear 積分法は、失敗することがよくあります。Gear 積分法は数値的なリンギングを減衰す
るだけではなく、すべてのリンギングを(物理的なリンギングであっても)減衰します。このため、実
際には発振が原因で誤動作する回路が、シミュレーション上では完全に安定していて機能するという
結果になる可能性があります。なぜなら、不安定性が減衰して数値上は存在しなくなったからです。
素のアドレスをコードに合わせて解決できるの
原理上は、 IC 設計者に小幅な最大時間ステッ
で、 LTspice の内蔵アセンブラとリンカによっ
プを規定させることにより、Gear 積分法の誤
てコードがアセンブルされリンクされると、デー
差を低減することができます。ただし、これは
タを効率よく読み込んで、FPU はパイプライ
現実的な解決策ではありません。理由は、
(1)
ンが満たされた状態で動作できます。LTspice
時間ステップが小幅だとシミュレーション速度
は、自己オーサリング、自己アセンブリング、お
がかなり低速化し、
(2)時間ステップを十分に
よび自己リンキングの疎行列ソルバを実装し
小さくする確実な方法がいずれにせよ存在し
ているという点でユニークです。この方法は他
ないからです。
の方法より著しく性能が優れています。
PSpice の資料には、PSpice が修正 Gear 法を
使用しており、Berkeley SPICE での Gear 積分
陰積分法
法実装製品より誤差を低減する上で十分に小
アナログ回路シミュレーションでは、容量とイ
ンダクタンスの挙動を追跡するために、微分方
程式の数値積分が必要です。あるSPICEシミュ
さな時間ステップを選択した場合には、実際に
改善されたように見えると記述されています。
図 2.解が検査で分かっている単純な回路
レータと別の SPICE シミュレータで最も大きな
しかし、 PSpice の方法は失敗することがよくあ
違いがあるのは、微分方程式の積分に使用で
きる手法の違いです。
ります。ごく単純な回路を作り、 PSpice の数値
台形リンギングはアナログ回路設計者にとって
数値積分には誤差を伴います。アナログ回路シ
ミュレーションでは、多くの時定数の挙動を積
分することが必要です。exp(-const*time) のよ
うな解を持つ微分方程式を積分する処理の性
質上、陰積分法と呼ばれる数値計算方法を使
用しないと、実際に誤差が無限大まで増え続
5
けます。 陰積分法なしでは、 SPICE でトラン
ジェント解析を実行することはできなかったで
しょう。
7
まったく許容できないことだったので、 台形
積分法は商用の SPICE シミュレータ(PSpice)
単です。図 2 について考えます。これは、並列
には使われておらず、低速で精度の低い Gear
のタンク回路に区分線形電流源を並列接続し
積分法が使用可能な唯一の選択肢として残り
た回路を示しています。この電流源は、電流の
ました。
スパイクを最初の 0.2ms の間アサートし、その
しかし、 Gear 積分法は数値的なリンギングを
の共振を電流のスパイクによって励起し、その
減衰するだけではなく、すべてのリンギングを
(物理的なリンギングであっても)減衰します。
このため、実際には発振が原因で誤動作する
SPICE では、2 階積分を使用します。大半の
SPICEシミュレータはBerkeley SPICEに従い、
6
Gear 法と台形(Trap)法 の 2 つの形式の 2
階陰積分を備えています。台形積分法は Gear
積分法より高速で正確です。ただし、台形積分
法では、離散時間ステップの積分解が、真の
連続時間動作を中心に時間ステップと時間ス
テップの間で発振する数値的な誤差が生じる
ことがあります。このため、各台形に含まれる
積分面積が正しい場合でも、ユーザーはシミュ
レータが正確かどうかを疑うかもしれません。
12 | 2015年1月: LT Journal of Analog Innovation
積分結果が本来の解から著しくずれていること
を確認するのは、検査によって見つけるより簡
回路が、シミュレーション上では完全に安定し
ていて機能するという結果になる可能性があり
ます。なぜなら、不安定性が減衰して数値上は
存在しなくなったからです。このことは、IC の
後はゼロになります。この解では、タンク回路
後、一定の振幅でリンギングするようにします。
この回路のネットリストは次式で与えられます。
* Gear (PSpice) integration error
L1 N001 0 50m
I1 0 N001 PWL(0 0 .1m .1 .2m 0)
C1 N001 0 .1u
.tran 1 1 0 50u
.probe
.end
設計を PSpice でシミュレートし、レイアウトし
PSpice の修正 Gear 積分法ではリンギングを
て製造すると、その回路は PSpice の Gear 積
人工的に減衰しているのに対して、LTspice で
分法で見逃された不安定性が原因で機能しな
は正しい解が直ちに得られる様子を図 3 に示
いことが後から判明するという悲しい状況につ
します。PSpice での誤差は、最大時間ステップ
ながっていました。不安定性を取り除いて当初
(.tran 文の 4 番目の数)をより小さく規定すれ
の機能を実現しようとするには、マスク修正サ
ば低減できます。これは計算対象の PSpice の
イクルが必要であり、これにはかなりの時間と
修正 Gear 積分法にとって単純な回路です。し
費用がかかります。
かし、人間が一段と小幅な最大時間ステップ
設計特集
LTspice では、台形法の速度と精度を備えているが、人為的なリンギングの影響がない積分法(修正台
形法)を使用します。修正台形法は、数年前に私が考案した方法で、最初に LTspice で広く使用できる
ようになりました。私の知っている限りでは、これがアナログ回路の微分方程式を積分する最善の方法
であり、他のSPICEプログラムでは再現されません。
これは回路設計用に私が推奨する唯一の方法です。
図 3.PSpice(左)は、修正 Gear 数値積分法を使用するので、図 2 の回路でのリンギングを誤って人工的に減衰します。 LTspice(右)は正しい結果を出力します。
を規定するので、その「解」がどのように収束
LTspice では正しい結果が得られます。各事例
するかを技術者が手作業で調べない限り、多
で使用したネットリストは次のとおりです。
くの異なる時定数を持つ回路を PSpice が確実
に解くことは基本的に不可能です。
図 3 は、PSpice の Gear 積分法では、ノードが
わずか 1 つの単純な回路の 2 つのリアクタン
スを明らかに正しく積分できないことを示して
います。Gear 積分法の誤差の性質から、回路
が実際に示す安定性よりも、シミュレーション
の方が安定しているように見えます。この誤差
の影響を実用例の観点で見積もるため、補償
コンデンサ C2 が小さすぎるために安定しない
オーディオ・パワーアンプを図 4 に示します。
PSpice では、この 回 路 が 安 定しているとい
う誤ったシミュレーション結果となりますが、
* Unstable Power Amplifier
Q5 N001 N006 N007 0 Q3904
Q7 N001 N007 OUT 0 Q2219A
Q8 OUT N013 N014 0 Q2219A
Q6 N013 N012 OUT 0 Q3906
V1 N001 0 10
V2 N014 0 -10
R11 N012 N014 5K
R14 OUT 0 8
R9 N006 N008 2K
R10 N008 N012 1K
Q4 N006 N008 N012 0 Q3904
Q1 N005 N009 N011 0 Q3904
Q2 N002 N010 N011 0 Q3904
R3 N011 N014 1K
Q3 N006 N004 N003 0 Q3906
R6 N010 0 20K
R7 OUT N010 200K
V3 IN 0 pulse(0 .1 0
+ 5u 5u 50u 100u)
R8 N001 N003 100
R4 N004 N005 10K
C2 N006 N004 10p
R13 N013 N014 1K
R12 N007 OUT 1K
C3 N006 N012 .001u
Q9 N005 N002 N001 0 Q3906
Q10 N002 N002 N001 0 Q3906
R2 IN N009 9.09K
.tran 100u 100u
.model Q3904 NPN(Is=1E-14 Vaf=100
+ Bf=300 Ikf=0.4 Xtb=1.5
+ Br=4 Cjc=4p Cje=8p Rb=20 Rc=0.1
+ Re=0.1 Tr=250n Tf=.35n
+ Itf=1 Vtf=2 Xtf=3)
.model Q3906 PNP(Is=1E-14 Vaf=100
+ Bf=200 Ikf=0.4 Xtb=1.5
+ Br=4 Cjc=4.5p Cje=10p Rb=20
+ Rc=0.1 Re=0.1 Tr=250n
+ Tf=.35n Itf=1 Vtf=2 Xtf=3)
.model Q2219A NPN(Is=14.34f
+ Xti=3 Eg=1.11 Vaf=74.03
+ Bf=255.9 Ne=1.307 Ise=14.34f
+ Ikf=.2847 Xtb=1.5
+ Br=6.092 Nc=2 Isc=0 Ikr=0
+ Rc=1 Cjc=7.306p Mjc=.3416
+ Vjc=.75 Fc=.5 Cje=22.01p
+ Mje=.377 Vje=.75 Tr=46.91n
+ Tf=411.1p Itf=.6 Vtf=1.7
+ Xtf=3 Rb=10)
.probe
.end
図 5 では、PSpice の安定している誤った結果
(左)と、 LTspice(右)の発振している正しい
2015年1月: LT Journal of Analog Innovation | 13
結果と比較します。このシミュレーションは、ス
テップ応答の大信号トランジェント解析です。
十 分 に小 幅 な 時 間ステップを PSpice シミュ
レーションで規定した場合は、正しい解に強制
的に近づけることで、 PSpice がトランジスタの
デバイス方程式を正確に解釈していると示すこ
とができますが、 PSpice での微分方程式の積
分は、決して正確とは言えません。
ここで必要なのは、台形法の速度と精度を備
えつつもリンギングによる誤差がない方法で
す。これを追 求 するに当たり、 PSpice では、
Gear 積分法を使用するが適度な時間ステップ
を選択しようとすることで台形リンギングを取
り除いたのに対して、別の方法では、台形積分
法のデ・チューン・バージョンを使用し、それ
図 4.不安定なパワーアンプ
によって台形リンギングを減衰しますが、実際
には正しい回路動作時の誤差が、うまくいけば
許容できる程度に小さくなるだけです。SPICE
のオプションを使用するのは推奨しません。こ
LTspice で広く使用できるようになりました。
のオプションを使用すると実際の回路動作が
私の知っている限りでは、これがアナログ回路
減衰しますし、LTspice では必要ないからです。
の微分方程式を積分する最善の方法であり、
を回路図に追加することにより、 trapdamp と
LTspice では、台形リンギングを取り除くより
他の SPICE プログラムでは再現されません。
呼ばれる非公開オプションを使用して LTspice
優れた方法を採用しています。
これは回路設計用に私が推奨する唯一の方法
指令
.options trapdamp=.01
の台形積分をデ・チューンすることは、実際に
可能ではありますが推奨しません。HSPICE
8
の積分動作を再現する trapdamp の値を見つ
けることができる場合があります。とは言え、こ
LTspice では、台形法の速度と精度を備えて
いるが、人為的なリンギングの影響がない積
分法(修正台形法)を使用します。修正台形
法は、数年前に私が考案した方法で、最初に
です。LTspice は、他の既知の方法(台形法
や Gear 法)もサポートしますが、その目的は、
ユーザーが他の SPICEシミュレータによる誤っ
た結果を再現して、モデルは同じと解釈され、
図 5.大信号トランジェントの状況での不安定なパワーアンプからのシミュレーション出力。PSpice(左)は回路が安定していると誤った結果を示すのに対して、LTspice(右)は不安定性を正しく
示しています。
14 | 2015年1月: LT Journal of Analog Innovation
設計特集
積分法だけが異なることを確認できるようにす
るためだけです。
修正台形法が LTspice によって使用されるの
は、 図 3 を作成するためです。数千サイクル
のリンギング発生後であっても、リンギングの
振幅に変化がないことに注意してください。こ
れ は、 LTspice の 修 正 台 形 法では、 人 工 的
な数値減衰が生じていないことを実証してい
ます。修正台形法は、図 5 を生成する目的で
も LTspice によって使用されており、ここでは
LTspice がアンプの不安定性を正しく示してい
ます。
図 6.台形リンギングが発生しやすい回路
LTspice 修正台形法で台形リンギングを取り除
く能力を実証するには、台形リンギングが発生
しやすい回路が必要です。台形リンギングが
始まるのは、離散時間ステップの2階積分では、
連続時間回路動作を正確に表現する上で問題
がある場合です。リンギングは、時間ステップ
と積分階数制御を適切に使用すれば低減する
ンバータのゲートの容量が非常に非線形なこ
このシミュレーションのネットリストは次のとお
とが原因で台形リンギングが発生する回路を
りです。
図 6 に示します。台形リンギングは、ゲート電
流駆動時 I(V1) に見えるようになります。
か取り除くことができます。
図 7 では、台形積分法と LTspice 修正台形法
LTspice は、過去 10 年間で最も普及している
ングを明瞭に示すため、下側プロットの領域
SPICE プログラムなので、9 数多くの回路に使
用された実績があり、台形リンギングを防止す
るためソルバにライブラリ化された知見が多数
存在します。このため、反例を探すのは、なか
なか大変でしょう。寸法が異常な MOSFET イ
を比較しています。上側のプロットは、リンギ
の一部を拡大して示しています。この結果を
「Control Panel」
LTspice で再現する場合は、
の「SPICE」ペインに移動して、デフォルトの修
正台形法の代わりに台形積分法を選択します。
* Trap Ringing Example
V2 N001 0 3.3
V1 N002 0 PULSE(0 3.3 1n 1u)
M1 OUT N002 N001 N001 P
M2 OUT N002 0 0 N
.tran 0 1.2u 0 .1n
.model N NMOS(Tox=20n Vto=.5
+ Gamma=.5 UO=650 Rs=10)
.model P PMOS(Tox=20n
+ Vto=-.5 Gamma=.5 UO=650
+ Rs=10)
.probe
.end
大 半 の SPICE プ ロ グ ラ ム は こ の 種 の
MOSFET に対して Meyer 容量モデルを使用
図 7.図 6 の回路に適用された、台形法と LTspice 修正台形積分法。従来の台形積分法(左)は台形リンギングを示すのに対して、LTspice 修正台形積分法(右)ではリンギングが取り除かれて
います。
2015年1月: LT Journal of Analog Innovation | 15
図 8.PSpice(左)で動作させた図 6 の台形リンギング例の回路は、台形リンギングを示しませんが、他の誤差が発生しており、その原因として可能性が高いのは、Yang-Chatterjee 電荷モデル
の実装回路での誤差です。LTspice(右)は正しい結果を出力します。
するので、大半の SPICE プログラムでは、この
デッキが狙いどおりに動作しないことに注意し
てください。Meyer 容量モデルは電荷を保存
せず、短チャネルでは不正確なので、1990 年
代以降は使用されなくなりました。
LTspice と PSpice は、どちらも Meyer 容量モ
デルを Yang-Chatterjee 電荷モデルに置き換
えました。どちらのシミュレータも同じ最新の
電荷蓄積式を使用するので、同じ結果が得ら
れるはずです。しかし、PSpice のシミュレーショ
ンを LTspice と比較すると、図 8 に示すように
PSpice は著しく誤った結果を示します。ただし、
PSpice シミュレーションで現れる発振は台形
リンギングではありません。なぜなら、発振は
時間ステップと時間ステップの間には発生して
おらず、PSpice は台形法を使用しないからで
す。この人為的影響の原因の大半は、PSpice
まとめ
LTspice は、最初の SPICE シミュレータでは
ニュートン反復法、疎行列法、および陰積分法
算、および乗算が必要です。これらの命令に必要なのは、
(3 サイク
わずか 3 つの潜在クロック・サイクルだけです。
ルを超えるクロックが必要な除算もいくつかありますが、取
り除く対象の不明要素 1 つにつき除算は 1 つだけです。)
指標の基になったベースアドレスによってのみ認識できる
データの取り込みには、3 クロック・サイクルよりはるかに
長い時間がかかります。
は SPICE の中核となる数値計算方法です。シ
5 これに関する文献は、十分に小さな時間ステップが保証さ
も優良で最も普及している SPICE シミュレータ
です。
れる場合、数値解が特異解ではないと指摘していますが、
実際には、数値積分を無限の精度で行うことができない限
り、陽積分と限られた時間ステップ幅による方法はうまく
いきません。誤差を合計した結果が無限大になる理由は、
丸め誤差の存在ではなく、サンプリングされた有限の差分
で導関数が近似されることです。陽積分を使用した一般的
なアナログ回路シミュレータで、成功した例は一つもあり
ません。
ミュレータの堅牢性、速度、および完全性は、
これらの方法がどの程度適切に実装されるか
によって決まります。
結局、 SPICE シミュレータは、そのシミュレー
タが回路の動作を正確に解明できるという設
6
計者の信頼を得る必要があります。中核となる
場合、これは不可能です。LTspice はこれらの
方法を正しく実行し、しかも他の SPICE 実装
Yang-Chatterjee 電荷方程式を容量について
注記
1 そうでない場合は、線形システムの解が反復ステップとし
て使用されます。元の非線形回路は、この解に関する新し
いテイラー級数として再展開され、最初の 2 項だけを再度
維持し、その後、得られた 1 組の連立一次方程式を解きま
す。この処理は、正しい解が見つかったことが立証される
まで繰り返されます。
でしょう。
2
PSpice は Cadence 社の商標です。スクリーン・ショットに
はバージョン 9.2 が使用されています。
3 行列が疎であるほど、行列を対角行列(つまり解かれた行
列)に近い行列として記述できます。アナログ回路の行列
SPICE は 1 階積分まで低下することがあります。例えば、
独立した電圧源または電流源の区分的線形関数またはパ
ルス関数の 2 つの直線線分間での遷移時など、既知の不
連続な 1 階時間導関数を伴う事象が発生した場合、ほとん
どの SPICE 実装回路は、遷移時にその回路のリアクタンス
の 1 階積分まで低下します。Gear 法と台形法の 1 階バージョ
ンは、どちらも後退オイラー法です。
数値計算方法をソルバが正しく実行できない
の Yang-Chatterjee 電 荷 モデ ル 実 装 回 路で
16 | 2015年1月: LT Journal of Analog Innovation
4 行列の不明要素をなくすには、ほとんどの場合、加算、減
なく、唯一の無償 SPICE でもありませんが、最
製品より性能が優れています。n
微分したときの誤差であると言ってかまわない
は非常に疎であるので、SuperLU を使用して LU 因数分解
を改善しても、期待するほど速度面で優位にはなりません。
7 一部のユーザーは、SPICE シミュレーションの価値を過小
評価する有名な文献のために、SPICE を最初から疑う考
えをもたせられます。
8
HSPICE は Synopsis 社の商標です。
9
LTspice は毎分 4 回ダウンロードされており、すべてのシ
ミュレータの中で最大のユーザー・グループの話題になっ
ています。他の SPICE プログラムを販売する各社の担当者
との私信に基づいて他の SPICE 実装製品の配布数と使用
数を使うと、LTspice の配布数と使用数は、他の SPICE プ
ログラムより3 桁を超えて多いことが分かります。