3V単一電源動作の VCF (7) - Minimoog 回路のシミュレーション (4)

今回は、トランジスタ・ラダー回路の「構成」だけを利用して、Q 可変の LPF に仕立てる原理としては Sallen-Key 型の方法を採用した回路について説明します。
いま、「Sallen-Key」といいましたが、各1次 RC フィルタの間にバッファが入る構成については、正確には「Bach 型」と呼ぶらしいことを hoshu さんのブログで知りました。
「Bach 型」のフィルタについてググってみると、単に「Bach」で検索した場合は、当然、「ヨハン・セバスチャン・バッハ」ばかりが引っかかり、シンセサイザらしく「VCF」などの検索ワードを追加すると、今度は、「スイッチト・オン・バッハ」ばかりが引っかかる結果となりました。
肝心の Bach 型フィルタについて言及している論文については、IEEE の論文検索サイトにあるものがいくつかヒットしましたが、どうも、お金を払わないと論文が読めないようであり、無料で利用可能な情報はほとんど得られませんでした。
それでも、検索結果から「Bach topology」という用語が使われていることは分かりました。 (当然、「Sallen-Key topology」もあります)
そういうわけで、「Bach 型」のフィルタについての正統的な説明方法は分かりませんが、私の理解している範囲で説明したいと思います。
まず、 RC 1次 LPF 回路について考えます。 (自明な回路なので図は省略します。)
抵抗とコンデンサの値をそれぞれ RC とすると、

  • カットオフ角周波数
    \omega_{\rm c} = \frac{1}{R \cdot C}

  • 伝達関数
    \displaystyle H(s) = \frac{\omega_{\rm c}}{s + \omega_{\rm c}}

  • カットオフ角周波数でゲイン -3 dB
  • 減衰域では 6 dB/oct のスロープで減衰
  • 位相遅れは 0°〜 90°
  • カットオフ角周波数で位相遅れ 45°

という性質があります。
2次 LPF を得るために RC 1次 LPF を2段縦続接続すると、カットオフ角周波数から十分高い角周波数の減衰域では、スロープの値は期待通りの 12 dB/oct となりますが、カットオフ角周波数付近 (「肩」) の特性は、段間にバッファを挟む Bach topology では1次フィルタの2倍の -6 dB となります。
バッファなしで直接に接続する場合にはそれ以上減衰します。
パッシブ回路のみでは、これ以上に改善することはできません。
求めているのは、「肩」がなるべく落ちない特性や、さらには、カットオフ角周波数付近にピークを持つ特性ですから、アクティブ回路を利用して「肩」を持ち上げることを考えます。
「肩」から離れた通過域や、減衰域での特性に影響を与えないように、肩付近の信号だけを取り出す、つまり、バンドパス・フィルタを作用させて入力側に「正帰還」して持ち上げるようにします。
フィルタ自体はローパスですから、出力にハイパスフィルタを掛けてから帰還してやれば、帰還される信号成分はバンドパス特性を持つことになります。
前回述べたように、(バッファ付き) RC 1次 LPF のコンデンサ側から入力してやれば、ハイパスフィルタ特性となります。
それを利用して正帰還をかけたのが次の図の回路です。

三角形の中に「+1」と書いてあるのがゲイン1のバッファで、出力はゲイン A のアンプから取り出すものとします。
その出力を \beta 倍して1段目の RC フィルタのコンデンサ側から戻して正帰還を掛けます。
RC 回路を低インピーダンスでドライブする必要があるので、入力側にもバッファを付けて、そのことを強調しています。 実際には、前の段の回路の出力が低インピーダンスであれば、このバッファを挿入する必要はありません。
1次フィルタの間にバッファがある構成が「Bach topology」で、バッファがない構成が「Sallen-Key topology」です。
これらの構成は正帰還で特性を作り出しているため、「正帰還型」あるいは「VCVS (Voltage Controlled Voltage Source 型」と呼ばれています。
Sallen-Key 型では、双方向性のパッシブ回路どうしが直接つながっていますから、1段目と2段目がお互いに影響を与えます。
したがって、回路の解析や、フィルタの設計方法については Bach 型よりも複雑になりますが、OP アンプが1個で済むので広く使われています。
Sallen-Key 回路の解析については、キルヒホッフの法則を基に、地道に回路電流と電圧の式を3個ほど立てて、連立方程式を解けば得られます。
Bach 型の回路では、バッファのおかげで1次フィルタ部分がお互いに影響し合わないので、解析は簡単にできます。
線形回路の「重ねの理」を使って、1段目の回路を2重化し、一方は入力信号専用、他方は正帰還信号専用とし、両者を加算して2段目に送るように回路を書き換えたのが下の図です。

1段目と2段目の RC フィルタの定数は同じ値としています。
この回路から、式をひとつ書き表して伝達関数を求めることができます。
入力信号のラプラス変換X(s)、出力信号のラプラス変換Y(s) とすると、
\qquad \qquad \begin{eqnarray} Y(s) &=& \left{ \frac{\omega_{\rm c}}{s+\omega_{\rm c}} X(s) + \beta \cdot\frac{s}{s+\omega_{\rm c}}  Y(s) \right} \cdot \frac{A \cdot \omega_{\rm c}}{s+\omega_{\rm c}} \\ &=& \beta \cdot A \cdot \frac{\omega_{\rm c} \cdot s}{(s+\omega_{\rm c})^2} Y(s) + A \cdot \frac{\omega^2_{\rm c}}{(s+\omega_{\rm c})^2} X(s)\end{eqnarray}
\qquad \qquad \left{ 1 - \beta \cdot A \cdot \frac{\omega_{\rm c} \cdot s}{(s+\omega_{\rm c})^2} \right} Y(s) = A \cdot \frac{\omega^2_{\rm c}}{(s+\omega_{\rm c})^2} X(s)
\qquad \qquad \left{ s^2 + \left( 2  - \beta \cdot A  \right) \omega_{\rm c} \cdot s + \omega^2_{\rm c}\right} Y(s) = A \cdot \omega^2_{\rm c} \cdot X(s)
\qquad \qquad H(s) = \frac{Y(s)}{X(s)} = \frac{A \cdot \omega^2_{\rm c}}{ s^2 + \left( 2 - \beta \cdot A \right) \omega_{\rm c} \cdot s + \omega^2_{\rm c}}
となります。
ここで、
\qquad \qquad Q = \frac{1}{2 - \beta \cdot A}
と置けば、一般の2次 LPF の式と一致することが分かります。
\beta \cdot A つまり、トータルでの正帰還量だけでピークの鋭さを表す Q を可変できることが分かります。
ちょうど \beta \cdot A = 2 なら Q が無限大となりますから、この条件を維持できれば振幅一定で発振することになります。
トランジスタ・ラダー回路の1段分は Bach トポロジーの1段分に相当しますから、Minimoogトランジスタ・ラダー回路の2段分だけを使って、Bach 型の2次 LPF を構成することができます。
VCF の歴史としては、Moog の特許のトランジスタ・ラダー回路を使わないですませるように工夫されてきた訳で、他の方法で容易に実現可能な2次 LPF 回路をトランジスタ・ラダー回路を使って作るというのは本末転倒な感じですが、アマチュアが趣味でやる分には、歴史に逆行しようが、牛刀だろうが、特許だろうが関係ないので、興味本位で進めていきます。
Minimoog の回路で、トランジスタ・ラダーを2段分取り去り、1段目のラダーに正帰還を加えた回路を下に示します。

この回路による LTSpice シミュレーションの結果を下に示します。

カットオフ周波数が低い設定でピークが低くなっているのは、差動増幅部の入力インピーダンスの影響です。
本来の Minimoog 回路では、特性が乱れるのは4つある1次フィルタの最終段だけでしたが、この回路では2つしかない1次フィルタの内のひとつが乱れるので、より大きな影響が現れています。