LTSpice に慣れようということで、いくつか代表的なヘッドフォンアンプの回路をシミュレーションし、全高調波歪率 (THD / Total Harmonic Distortion) を出してみた。

オペアンプには単体で70mAまで電流をとれる NJM4556A で全て統一し、増幅率もほぼ同じになるように組んだ。

回路

オペアンプ1回路・バッファなしシンプル

THD=0.000134%

部品点数が少ないし、普通に使うぶんには完全に十分そう…

オペアンプ2回路・出力増強

THD=0.000131%

オペアンプ1回路・ダイアモンドバッファ

THD=0.000150%

ヘッドフォンアンプだと良く使われるバッファ

オペアンプ2回路・ClassAA

THD=0.000055%

オペアンプ2つを使ったものだけど、パラにしているわけではなく、ホイートストンブリッジを使い電圧増幅するオペアンプと電流増幅するオペアンプとで役割をわけたもの。実際に作る場合、最初のオペアンプは殆ど負荷がかからないようになっているので、もっと低歪みのオペアンプを使う。

備考

電流に余裕があるオペアンプなためバッファなしで十分良いという感じになった。

LTSpice

.four コマンドは .tran 解析の後、指定した回路のポイントをFFTして高調波歪を求められる。出力はログ (Cmd+L) に出る。デフォルトでは第9高調波まで算出するが、十分っぽい。最後に THD が表示される。

.option plotwinsize=0 を指定しないと、ものすごい数字が出てしまい、ハマった。このオプションはLTSpiceに対し、解析結果のデータ圧縮を無効にする効果がある。LTWiki の FAQ にもなっていた。歪み率を算出したいのに、データ圧縮が効いているとどうしようもない。

このへんが参考になった

LTSpice でヘッドフォンアンプを解析する2 | tech - 氾濫原 に続く

  1. トップ
  2. tech
  3. LTSpice でヘッドフォンアンプを解析する

複数の解析コマンドを簡単に切替えたい

Comment と Directive が同じ画面で編集になっているという点に気付く。

つまり、解析コマンドのまとまりごとに別の Directive のまとまりを作り、必要ないものは Comment に切替えておくという手段をとるのが一番簡単。いちいち行頭にセミコロンを付けてまわるとかしなくて良い。

よく変更するパラメータに名前をつけたい

.param ディレクティブを使えば、任意の数値に名前をつけられる。参照するときは {name} とすれば良い。

  1. トップ
  2. tech
  3. LTSpice の小技

LTSpice でヘッドフォンアンプを解析する | tech - 氾濫原 の続き

NJM4556A は 70mA と余裕があるオペアンプだが、こんなに電流とれるオペアンプはそれほどないので、もう少し普通のオペアンプで試してみる。

OPA2134 (= OPA134) という低歪みなオペアンプで試す。これは出力電流が±35mAと、丁度 NJM4556A の半分となる。

回路

オペアンプ1回路・バッファなしシンプル

THD=19.97%

電流が足りず、クリッピングしてる。

オペアンプ2回路・出力増強

THD=0.000041%

オペアンプ1回路・ダイアモンドバッファ

THD=0.000116%

オペアンプ2回路・ClassAA

THD=0.000022%

片方は電流ソースになるので NJM4556A のままにしてある。THD はこれが最低。

  1. トップ
  2. tech
  3. LTSpice でヘッドフォンアンプを解析する2