PSpiceによるシミュレーションとは

                              (06.10.28〜)

 PSpice、これは回路設計エンジニアの助けになる、大変便利なツールです。設計者の理解を助けるのに、ものすごく役に立ちます。

 反面、信じすぎると痛い目にあいます。以前、あるひとから「シミュレーション結果がどう音質につながるのか」という質問をいただいたことがありますが、音質はシミュレーションできません。音質どころか、厳密な動作まではきちんとシミュレーションできないのです。歪率とあまり関係がない音質をどうやってもシミュレーションはできないのです。こういう回路を作りたい、という前提があって、きちんと動作しているかチェックする、という使い方しか、私は本HPでしていません。

 たとえば、PSpiceでは、高周波(超100MHz)はよほど注意しないとうまくシミュレーションできません。モデルのほとんどが低周波から100MHz以下を想定していますし、PSpice自体も、低周波からスタートしていて、高周波に必要な要素がいくつか抜け落ちているのです。抵抗は理想抵抗で並列に介在する容量成分は故意に追加してやらねばなりません。

 そのため、高周波には高周波用の別のシミュレータがあり、そちらを利用すべきでしょう。しかし、逆にそういったシミュレータでは、トランジスタなどのモデルも高周波用であり、低周波シミュレーションは出来ないのが現状です。

 PSpiceで低周波であっても、微妙なとこはまったく合ってきません。モデルの限界、回路図には出てこない実装上の特性をシミュレーションに入れ込んでいない、PSpice自体の不具合など、いろいろ原因があります。

 モデルの不具合例をご紹介しますと、NE5534のモデルが2種類出回っているようです。2行目のC2の記述があるものとないものです。TIからダウンロードできるものは、C2の記述がありません。この、C2がないのはスーパーモデルです。「スーパーオペアンプ」と化します(笑)。I/V変換を作ると、立ち上がり1nsの高速電流パルスがほぼそのまま遅延もなく通って出てきます(@@!。C2があるほうも、少しおかしいです。こんな結果、信じてはいけません。

(C2が加わったモデル:

http://users.skynet.be/hugocoolens/spice/opamps/5534_2.htm

 シミュレータばかりに頼っている人はひょっとするとこの不具合に気が付かない場合があるのではないでしょうか。

 ある程度いろいろな回路のいろいろな特性を見てくると、シミュレータの結果がおかしいことに気が付きます。経験とセンスでしょうか。

 ボブ・ピーズさんという、ナショセミの著名な設計者は、以前Electronic Design誌(「日経エレクトロニクス」誌'91.10.14、No.538に訳文が記載)に書かれていましたが、SPiceはブレッドボードの代用にはならない、うそをつく、と評されていました。

 ですが、私の友人は某有名半導体メーカーで、高速LSIのロジック回路のシミュレーションをSPiceベースでやっていて、ほぼきちんとシミュレーションできているようですので、特徴をつかんで使いこなせば、ある程度ブレッドボードの代わりにはなりえるとは思います。ボブ・ピーズの文章を読んでアンチ・シミュレーション信者になってしまうかたもいるようですが、

 ようは、「ばかとSPiceはつかいよう」

 ですね。

 SPiceはモデルや条件設定等で、あちこちに落とし穴が開いています。落とし穴を予見するのは困難(だってSPice自体に問題がある場合がほとんど)なのですが、落ちたときに「落ちた」と認識して這い上がらねばなりません。落ちた地底の世界を信じてはいけない。

 では、シミュレーション結果がおかしかった場合、なにを考える必要があるかというと

 1.まず自分で入力した回路を疑え

 2.シミュレーション上の各設定を疑え

 3.モデルを疑え

 4.SPice自体を疑え

 3.は、モデルを変更してみるとよくわかります。よくあるのですね、足の配置が違っていたとか(基板CADじゃないんだから)。

 4.であるかどうかを検証するには、ちょっとだけ条件を変えてみるといいです。ちょっと条件を変えるだけで正常な結果なら、原因は4.です。

 また、AC解析でスルーレートに引っかかったことによる帯域制限は出てきません。バイアス電圧付近での微小振幅でのシミュレーション結果なのです。これを知らないと、またびっくりします。(ではAC解析で何で振幅を指定するのか?という疑問も出てきますが・・・・微小信号での解析結果を振幅で”ノーマライズ”して表示する、ようは「帳尻あわせ」のためです。)

 SPiceにはこのような特徴もありますので注意が必要です。

 ボブ・ピーズさんの記事からすでに16年経っていますから、最近のSPiceはかなり精度がよくなりつつあり、なかなかいい結果が出るオペアンプのモデルも散見されます。

 Spiceについての私の見方は

 1.動作確認、性能予測・・・・基本動作はそれなりにあっています。ただ、発振条件などはかなり狂うことがあります。性能(周波数、ゲイン、ノイズなどなど・・)は、オーダー的にはまぁまぁ信用できるかな、ということろです。

 位相補償量など、通常、かなりずれます。Spiceの結果は当てにしないことです。ただ、傾向(Cを増やすどどういうふうに変わるかなど・・・)とか、大まかな様子を知るには、信じるに足るもの、と思ってよいでしょう。

 2.回路の理解を深める・・・・初心者はこの用途でSpiceを使うのでしょうが、私の考えでは、初心者こそ半田ごてを握ってちゃんと回路を組んでみるべき、と思います。その意味で、まったくの初心者向けではないと思います。火花を散らせたり、NOxみたいな臭いがしたり、感電したりすることで、「危険」な状態を”体感”するのは大切なことです。もっとも、最近、オプションで「スモーク解析」というものがあり、「このままいくとトランジスタが熱で壊れるぞ」というところまでシミュレーションしてくれるようですが。

 シミュレーションと実際の回路とを精度よくあわせるには、実際に作ってみたときの体験が必要なのです。その上でSpiceをつかうと、より深く回路を理解できるのだと思います。

 3.実測困難な特性の予測、動作確認・・・・これは、便利です。超ハイインピーダンスで入力インピーダンス100MΩ//0.1pFのプローブをつけただけでも波形がおかしくなっちゃう場所の観測とか、どうやっても電流計を入れられない箇所の電流波形の観測とか、回路動作のイメージがつかめます。ただし、これもまた、結果は間違っているかもしれないという観点で見る必要があります。

 PSpiceは便利なツールなので、その特質を掴んで、大いに利用しましょう。