今回は番外編として、「回路シミュレータ」について紹介します。これまでの本連載では、設計した増幅回路が設計通りに動作しているかどうかを確認するために、回路シミュレータを活用してきました。
今回は「差動対」について説明する予定でしたが、前回でちょうど10回目となりましたので予定を変更し、番外編として「回路シミュレータ」について紹介します。これまでの本連載では、設計した増幅回路が設計通りに動作しているかどうかを確認するために、回路シミュレータを活用してきました。
電子回路だけではなく、建築物を建てるときや新しい薬を開発するときなど、あらゆる開発にはシミュレータと呼ぶ開発ツールが使われているのを皆さんもご存知だと思います。
アナログ回路の設計も同じです。開発した回路の機能や性能が目標(仕様)通りであるかどうかをあらかじめ確認したり、うまく特性が出なかったときの原因分析にシミュレータを使ったりします。回路設計者にとって回路シミュレータは、大工さんののこぎりやかんなと同じように無くてはならないものです。しかし、使い方次第では誤った答えを出すので注意が必要です。
シミュレータには数多くの種類がありますが、アナログ回路のシミュレータの種類は多くありません。実に30年近くも前に開発された「SPICE(Simulation Program with Integrated Circuit Emphasis)」と呼ぶシミュレータが今でも広く使われています。これは、米University of California,Berkeleyで1970年代に開発されたものです。この基本的なプログラムに、さまざまなベンダーが手を加えて、「HSPICE」や「Spectre」、「ELDO」といった名称のシミュレータを販売しています。ですが、基本的なアルゴリズムは変わっていないようです*1)。
回路シミュレータの基本的な機能は、以下の3種類です。
(1)直流(DC)解析:横軸は電圧/電流:回路に供給した電圧や電流を変化させたときに、各部の電圧や電流がどのように変化するかを調べます。
(2)交流(AC)解析:横軸は周波数:回路に入力した信号源の周波数を変化させて、各部の電圧や電流の振幅および位相を調べます。
(3)過渡(Transient)解析:横軸は時間:回路に加えた信号源の波形を、時間とともに変化させたときの、各部の電圧と電流を調べます。
この3つのほかに、感度解析や雑音解析、フーリエ解析などがあります。ですがこれらは、以上の3つの計算結果を加工したり、計算条件を変えたりして求めています。
回路解析に進む前に回路図(図1)を入力します(当たり前ですが…)。回路図には部品と部品がどのように接続されているかの情報だけではなく、さまざまな情報が含まれています。例えば、回路図には基本的なルールが2つあります。1つは「信号の流れは左から右に」、もう1つは「電圧の高い線は上に、低い線は下に」というものです。このルールから、回路図の左側の端子が入力で、右側の端子が出力であることは暗黙の了解として読み取れるし、図面の上側の配線の電圧は下側よりも高い電圧であることも説明が無くても分かります(余談ですが、配線の仕方で設計者の性格まで分かってしまうこともあります)。
回路図を入力した後に、シミュレーションを実行するわけですが、シミュレータは回路図を理解できませんので、回路図から「ネットリスト」と呼ぶファイルを作成します。この作業はツールが自動的に行いますので、ユーザーが意識しなくても済む場合がほとんどです。
例えば、図1(a)に示した増幅回路のネットリストは、図1(b)のようになります。図1(a)の回路の線(ノード)にはすべて名前が付けられていて、「デバイス番号 ノード1 ノード2・・・デバイス特性」というように、回路の接続情報と、デバイスの特性を並べて書きます。この内容を説明し始めるときりがないので、ここでは省略します。
Copyright © ITmedia, Inc. All Rights Reserved.