4. アナログ回路の基本要素

アナログ回路設計講座

定電流源

理想定電流源とは

定電流源とはその名前の通り、所定の電流を流す素子です。
理想的には端子の電圧に関わらず一定の電流を流すことになり、小信号的には出力抵抗が∞となります

MOS トランジスタによる電流源

MOS トランジスタが 3極管領域で動作しているときには IdsI_{ds}VdsV_{ds} に依存して変化するため定電流とみなすことはできませんが、5極管領域で動作している場合には基本的に VdsV_{ds} を変えても Ids は変わらないため、定電流源として扱うことができます。
ここで、基本的にと言ったのは、小さいながらも gdsg_{ds} は傾きを持っため、その逆数である rdsr_{ds} が無限大にはならないためです。
MOS トランジスタを定電流源として使用する場合には、理想定電流源に近づくように rdsr_{ds} を極力大きくする必要があります。

以上から、MOS トランジスタを定電流源として使うためには、
 ① 5極管で使う
 ② rdsr_{ds}は大きくする
ことが必要となります。

なお、VeffV_{eff} を大きくすると小さなサイズで電流は流せますが、
VdsatV_{dsat} も大きくなるため定電流とみなせる範囲が狭くなります。

また、トランジスタの L を小さくすると電流は流せますが、rdsr_{ds} は小さくなってしまいます。

一般的に、MOS トランジスタを定電流源とした使う場合は、Veff は浅めに設定して定電流とみなせる範囲を広くとり、L は長めに設定して rdsr_{ds} を大きくします。 電流を大きくする時は W を広くして対応することが多いです。

ひとこと

MOS トランジスタは基本的に Source, Drain, Gate, Body の、4端子デバイスですが、Body はほとんどの場合 NMOS はグラウンドで、PMOS は電源電圧になるため、図のように Body を省略して 3端子デバイスで書くことが多いです。
Body にグラウンドまたは電源電圧以外の電圧を接続する時のみ 4端子で書き、Bodyの接続先を明示します。

カレントミラー

ダイオード接続

MOS トランジスタの Source を接地し、Drain と Gate を接続したものを ダイオード接続と呼びます。

このダイオード接続の Drain (= Gate) に IdsI_{ds} なる電流を流し込んだときの VdsV_{ds} (=VgsV_{gs}) を調べてみます。
電流を無理やり流そうとすると、その電流を流すようにトランジスタが自動的にバイアスされます。 つまり、その電流が流れるための Gate 電圧が一意に決まります。

また、Vdsat=VgsVthV_{dsat}=V_{gs}-V_{th}Vgs=VdsV_{gs}=V_{ds} なので Vdsat=VdsVthV_{dsat}=V_{ds}-V_{th} となり、Vth>0V_{th} > 0 であれば確実に Vdsat<VdsV_{dsat} < V_{ds} となって、5極管条件を満たすことが分かります。

5極管条件の式は、

なので、IdsI_{ds} を与えたときの VgsVthV_{gs}-V_{th} は以下の式で与えられます。

カレントミラー

前節のダイオード接続トランジスタに、サイズの等しいもう一つのトランジスタを追加し、Gate 同士を互いに接続した場合を考えます。

ダイオード接続トランジスタの Gate-Source 電圧を Vgs1V_{gs1}、とすると Drain-Source 電流は以下で表されます。

追加したトランジスタの Gate-Source 電圧を Vgs2V_{gs2} 、Drain-Source 電流を Ids2I_{ds2} とし、このトランジスタを 5極管条件で使うとすると、電流は以下で表されます。

Vgs1V_{gs1}Vgs2V_{gs2} は等しいので、Ids1I_{ds1}Ids2I_{ds2} は等しく、追加したトランジスタは、ダイオード接続に流した電流と同じ電流を流すことができる定電流源として使えることが分かります。

ダイオード接続トランジスタをソース側、追加たトランジスタをレプリカ側と呼ぶと、ソース側に流した電流と同じ電流をレプリカ側で複製できるということになります。
これをカレントミラーと呼びます。

以上、ソース側とレプリカ側とのサイズが同じ場合は単純な複製ですが、例えばレプリカ側のトランジスタの W をソース側の W の 2倍にすると、レプリカ側はソース側の 2倍の電流を流す電流源になります。
また、ソース側で発生させた VgsV_{gs}を複数のトランジスタに供給して、複数のレプリカを作ることも可能です。

このようにカレントミラーは、種となる電流源があれば、それを任意の倍率でいくつでも複製できるので非常に重宝で、アナログ回路には欠かせない重要な回路要素です。

ひとこと

ソース側のバイアス電流を係数倍してレプリカ側に流す場合は、W や L を変えても理屈の上では OK なのですがあまり好ましくはなく、トランジスタの数を変えるのが一般的です。 例えばソース側を 2個のトランジスタで構成し、レプリカ側を 1個のトランジスタにすればソース側の 1/2の電流が、レプリカ側を 4個のトランジスタにすればソース側の2倍の電流が得られます。
また、上の説明ではソース側とレプリカ側で Source 電位はともにグラウンドとして共通としてますが、実際の集積回路ではグラウンドのメタル配線は有限の抵抗を持ち、そこに電流が流れると電位降下が発生しますので、グラウンド電圧が場所によって異なることが多いです。 その場合には Gate 電位が等しくても Source 電位が異なるので両者の VgsV_{gs} にズレが生じます。 そうなると正しく電流複製ができなくなるので注意が必要です。

インバータ (ソース接地)

MOS トランジスタの Source を接地し、Gateを入力、Drain に負荷を接続した回路をインバータと呼び、ソース接地接続とも呼びます。
ここで接地と言っているのは DC的にグラウンドに接続しているということではなく、AC的に電圧が変わらない、小信号接地を意味します。

以下、負荷として ①抵抗、②定電流源 の 2つのパターンについて説明します。

抵抗負荷

負荷として抵抗を用いた場合、トランジスタを流れる IdsI_{ds} が抵抗にも流れるため、電位降下効果により VoutV_{out} の電圧は VddV_{dd} から RIdsR・I_{ds} だけ下がった電圧になります。 よってVoutV_{out}Vout=VddRIdsV_{out}=V_{dd}-R・I_{ds} と表されます。

ここで、Vout=VdsV_{out}=V_{ds} でもあるので Vds=VddRIdsV_{ds}=V_{dd}-R・I_{ds} となり、トランジスタの VdsIdsV_{ds}-I_{ds} 特性のグラフに書き込むと赤の直線になります。 これを負荷直線と呼びます。

Gate 電圧、すなわちインバータの入力電圧 VinV_{in} を 0 から上げていく場合を考えます。
Vin<VthV_{in}<V_{th} の範囲ではトランジスタは遮断状態のため Ids=0I_{ds}=0 で、負荷抵抗には電位降下は発生せず、Vout=VddV_{out}=V_{dd} となります。

そこから VinV_{in} を上げ、VinVthV_{in}\ge V_{th} になるとトランジスタは 5極管領域で動作を始めて、 gmg_m によって Vin(=Vgs)V_{in}(=V_{gs}) とともに IdsI_{ds} が増加するため、負荷抵抗における電位降下は大きくなり、 Vout(=Vds)V_{out}(=V_{ds}) は下がり始めます。

さらに VinV_{in} を上げるとトランジスタは 3極管領域に入り、gmg_m が下がり始めるため、IdsI_{ds} の増え方はどんどん小さくなります。 すなわち VinV_{in} に対する VoutV_{out} の変化率が下がります。

VinV_{in} に対する VoutV_{out} の変化率を入出力ゲインと呼び、アナログ回路で使用するインバータはゲインの高い 5極管領域で使うことが一般的です。

次にインバータのゲインを小信号等価回路で求めてみます。
トランジスタは vgsv_{gs} に応じて流れる電流が変化する電流源と、vdsv_{ds} に応じて流れる電流が変化する抵抗として表すことができます。(図上)
次に、vddsv_{dds} は小信号的には変化しないので接地と等価になり、図下のように書くことができます。
ここで、
 i1=gmvii_{1}=g_{m}v_{i}
 i2=vorrsi_{2}=\frac{v_{o}}{r_{rs}}
 i3=voRi_{3}=\frac{v_{o}}{R}

であり、キルヒホッフの法則から、i1+i2+i3=0i_1+i_2+i_3=0 だから
 gmvi+vords+voR=0g_{m}v_{i}+\frac{v_{o}}{r_{ds}}+\frac{v_{o}}{R}=0

これを変形すると
 vovi=gm(1rds+1R)=gm(rdsR)\frac{v_{o}}{v_{i}}=\frac{g_{m}}{\left(\frac{1}{r_{ds}}+\frac{1}{R}\right)}=g_{m}\left(r_{ds}\parallel R\right)

が、得られます。
rdsr_{ds} は数100kΩ〜数MΩのオーダーで、R を数 kΩ 程度とすると、通常は rds>>Rr_{ds}>>R なので、ゲインは G=vovigmRG=\frac{v_{o}}{v_{i}}\doteqdot-\mathrm{g}_{m}R となります。gmg_{m} を 数mMho 程度に取ると、ゲインは概ね 10〜20dB 程度になります。

ひとこと

小信号解析の場合には、信号は小文字で書き表わすのが慣習です。

電流源負荷

ここでは電流源としては理想定電流源ではなく、MOSトランジスタを用いた場合について説明します。

PMOS カレントミラーを構成して、所定の電流を流しますが、Drain 電圧は VddV_{dd} 電圧から VdsatV_{dsat} までは 3極管で動作し、Drain 電圧がVddVdsatV_{dd}-V_{dsat} より下がったら 5極管領域に入り、定電流源として働きます。

なので、トランジスタの VdsV_{ds}IdsI_{ds} 特性に PMOS特性を書き込むと赤の負荷曲線になります。 

次に VgsV_{gs} すなわちインバータの入力電圧 VinV_{in}を 0 から上げていく場合を考えます。

Vin<VthV_{in}<V_{th} の領域ではトランジスタは遮断状態のため Ids=0I_{ds}=0 で、PMOS電流源にも電流は流れないため、Vout=VddV_{out}=V_{dd} となります。

そこから VinV_{in} を上げ、VinVthV_{in}\ge V_{th} になるとトランジスタは 5極管領域で動作を始めますが、電流源 PMOS がまだ 3極管領域にいるので VdsatV_{dsat} は緩やかにしか下がって行きません。

電流源 PMOS が5極管に入るとトランジスタの負荷は定電流源になり、ここでは Vin(=Vgs)V_{in}(=V_{gs})が僅かに変化しただけで VoutV_{out} は一気に下がります。 すなわちに VinV_{in} に対する VoutV_{out} 変化が大きい、すなわち高ゲインが得られます。

このあとは VinV_{in} を上げるとトランジスタは 3極管領域に入り、gmg_m が下がり始めるためゲインは落ちてきます。

ひとこと

ゲインが高いということは使える VinV_{in} 範囲が非常に狭いということを意味します。 その場合には高ゲインの美味しいところで使うのが難しいと感じるかもしれませんが、フィードバックをかけて使用することlで解決します。 
詳細は「フィードバック」の章で解説します。

次にインバータのゲインを小信号等価回路で求めてみます。
前節で述べたように トランジスタは vgsv_{gs} に応じて流れる電流が変化する電流源と、vdsv_{ds} に応じて流れる電流が変化する抵抗として表すことができ、vddv_{dd} は小信号的には変化しないので接地と等価になります。(図上)
このとき、定電流源は出力抵抗は∞となるので図下のように書くことができます。

ここで、
 i1=gmvii_{1}=g_{m}v_{i}
 i2=vorrsi_{2}=\frac{v_{o}}{r_{rs}}

キルヒホッフの法則から、i1+i2=0i_1+i_2=0 だから
 gmvi+vords=0g_{m}v_{i}+\frac{v_{o}}{r_{ds}}=0

これを変形すると、
 vovi=gmrds\frac{v_{o}}{v_{i}}=-g_{m}r_{ds}

rdsr_{ds} は数100kΩ〜数MΩ、gmg_m は数mMho なので、ゲインは 30〜40dB と非常に大きいゲインが得られます。

なお、小信号等価から明らかなように、このインバータの出力抵抗は rdsr_{ds} となり、ゲインが高い分だけ出力抵抗は高くなってしまうともいえます

ミラー効果

インバータを使用する際に気をつけなければならないこととして、ミラー容量があります。

「デバイスの基礎」で説明したように、トランジクタの Gate と Drain の間には Cgd0C_{gd0} と呼ばれる容量が存在します。 
インバータを構成すると、この容量は入力端子と出力端子の間に存在することになります。

このように、入力端子と出力端子の間に CpC_{p} という寄生容量があるインバータに、電圧 vinv_{in} で出力抵抗 ror_{o} の電圧源から入力を与えたときの出力を求めてみます。
ここではインバータのゲインを -A (負号は反転を意味) とします。

ここでインバータの入出力の関係から
 vo=Aviv_{o}=-Av_{i}

抵抗を流れる電流から
 ires=vivaroi_{res}=\frac{v_{i}-v_{a}}{r_{o}}

容量を流れる電流から
 icap=(vavo)1sCp=(vavo)sCpi_{cap}=\frac{(v_a-v_o)}{\frac{1}{sC_p}}=(v_aーv_o)・sC_p

キルヒホッフの法則から、ires=icapi_{res}=i_{cap} だから
 vivaR=(vavo)sCp\frac{v_{i}-v_a}{R}=(v_a-v_o)sC_p

以上から
 vovi=A1+sCp(1+A)R\frac{v_o}{v_i} =\frac{-A}{1+sC_p(1+A)R}

ここで τ=(1+A)CpRτ=(1+A)C_pRとおくと
 vovi=A1+sτ\frac{v_o}{v_i}=\frac{-A}{1+sτ}

このことから、実質的に CpC_p が ゲイン倍されて効くことになり、インバータの応答時定数がゲイン倍され、インバータの動作帯域を大きく悪化させることがわかります。

ミラー容量は右図に示したような、固い地面に置いたバケツに水を入れる場合と、底なし沼に置いたバケツに水を入れる場合のアナロジーで考えると理解しやすいかもしれません

固い地面に置いたバケツでは入れた水の分だけ水位が上がりますが、底なし沼の場合は重さでバケツが沈み込むので、同じ量の水を入れても水位がなかなか上がりません。
つまり必要な水位まで入れるためには大量の水(電荷)が必要ということです。

ひとこと

ゲインを落とさずにミラー容量による遅延を低減するためには、信号源の出力抵抗を下げるか、後述するカスコードを利用します。

ひとこと

普段は嫌われもののミラー容量ですが、小さな面積で大きな容量が必要な場合に、積極的に使う場合があります。

ソースフォロワ (ドレイン接地)

MOS トランジスタの Drain を電源電圧に接続し、Gateを入力、Source に負荷を接続した回路をソースフォロワと呼び、ドレイン接地接続とも呼びます。
ここで接地と言っているのは AC的に電圧が変わらない、小信号接地を意味します。

以下、負荷として ①定電流源、②抵抗の 2つのパターンについて説明します。

定電流源負荷

負荷として定電流源を与えた場合は、MOSトランジスタにその電流を流そうとします。

このトランジスタを 5極管条件で使うとすると、電流の式は以下で与えられます。
 Ibias=12μCoxWL(VgsVth)2I_{bias}=\frac{1}{2}\mu C_{ox}\frac{W}{L}\left(V_{gs}-V_{th}\right)^{2}

式を変形すると
 Vgs=2IbiasμCoxWLVth=Veff+VthV_{gs}=\sqrt{\frac{2I_{bias}}{\mu C_{ox}\frac{W}{L}}}-V_{th}=V_{eff}+V_{th}

左辺は Gate 電圧と Source 電圧の差、すなわち VinV_{in}VoutV_{out} 電圧の差で、右辺は定数項になります。すなわち、VoutV_{out}VinV_{in} 電圧を一定の電圧だけレベルシフトした形として表されます。

すなわち
 Vgs=VinVout=Vth+VeffV_{gs}=V_{in}-V_{out}=V_{th}+V_{eff}
Vout=Vin(Veff+Vth)V_{out}=V_{in}-(V_{eff}+V_{th})

次にソースフォロワのゲインを小信号等価回路で求めてみます。
前節で述べたように トランジスタは vgsv_{gs} に応じて流れる電流が変化する電流源と、vdsv_{ds} に応じて流れる電流が変化する抵抗として表すことができ、VddV_{dd} は小信号的には変化しないので接地と等価になます。 (図上)

ここで、定電流源は出力抵抗は∞となるので図下のように書くことができます。

ここで
 i=gmvgs+vdsrdsi=g_mv_{gs}+\frac{v_{ds}}{r_{ds}}
 =gmvgs(vinvout)vdsrds=g_mv_{gs}(v_{in}-v_{out})-\frac{v_{ds}}{r_{ds}}

定電流源は小信号電流は流れないから、 i=0i=0 なので
 0=gmvgs+vdsrds0=g_mv_{gs}+\frac{v_{ds}}{r_{ds}}

これを変形すると
 voutvin=gmrds1+gmrds\frac{v_{out}}{v_{in}}=\frac{g_{m}r_{ds}}{1+g_{m}r_{ds}}
 =11+1gmrds=\frac{1}{1+\frac{1}{g_{m}r_{ds}}} 

gmrdsg_mr_{ds} は一般に 100〜1000 などの非常に大きい値を取るので、分母の 1gmrds\frac{1}{g_mr_{ds}} は殆どゼロとなって、ゲインはほぼ 1 になることがわかります。

次にソースフォロワの出力抵抗を考えます。 いま voutv_{out} を強制的に接地した場合、出力短絡電流は
 ishort=gm(vin0)=gmvini_{short}=g_m(v_{in}-0)=g_mv_{in}
となります。
一方出力開放電圧 vopenv_{open}voutv_{out} で、voutvinv_{out}\doteqdot v_{in} なので、
 ro=vopenIshortvingmvin=1gmr_o=\frac{v_{open}}{I_{short}}\doteqdot \frac{v_{in}}{g_mv_{in}}=\frac{1}{g_m}

すなわちソースフォロワの出力抵抗は 1gm\frac{1}{g_m} とトランジスタの相互コンダクタンスの逆数で与えられます。
gmg_m は 数100Ω〜数mΩ 程度になるので、ソースフォロワの出力抵抗は 1kΩ〜数kΩ程度の比較的小さな値を取ります。

ひとこと

ソースフォロワは、入力信号を増幅する作用はありませんが、出力抵抗が小さいという特徴があります。
出力抵抗の高い回路の後段において前段の信号振幅はそのままに、出力抵抗を下げるという、いわゆるインピーダンス変換に用いられます。

抵抗負荷

負荷として抵抗をつけた場合の小信号解析を行います。

各小信号電流は
 i=gm(vinvout)i=g_m(v_{in}-v_{out})
 i1=voutrrsi_1=\frac{v_{out}}{r_{rs}}
 i2=voutRi_2=\frac{v_{out}}{R}

i=i1+i2i=i_1+i_2 だから
 gm(vinvout)=voutrds+voutRg_m(v_{in}-v_{out})=\frac{v_{out}}{r_{ds}}+\frac{v_{out}}{R}
 gmvingmvout=voutrds+voutRg_mv_{in}-g_mv_{out}=\frac{v_{out}}{r_{ds}}+\frac{v_{out}}{R}
 gmvout+voutrds+voutR=gmving_mv_{out}+\frac{v_{out}}{r_{ds}}+\frac{v_{out}}{R}=g_mv_{in}
 (gmvout+1rds+1R)vout=gmvin(g_mv_{out}+\frac{1}{r_{ds}}+\frac{1}{R})v_{out}=g_mv_{in}

以上からゲインを求めると
 voutvin=gmgmvout+1rds+1R=11+1gmrds+1gmR\frac{v_{out}}{v_{in}} =\frac{g_m}{g_mv_{out}+\frac{1}{r_{ds}}+\frac{1}{R}}=\frac{1}{1+\frac{1}{g_mr_{ds}}+\frac{1}{g_mR}}

gmrds1g_mr_{ds}\gg 1 だから
 voutvin11+1gmR\frac{v_{out}}{v_{in}}\doteqdot \frac{1}{1+\frac{1}{g_mR}}

分母が 1より大きくなるのでゲインは 1 より小さくなることがわかります。

バックゲート効果の影響

これまでの説明ではトランジスタは Body 端子を外した 3端子シンボルで説明してきましたが、実際には NMOS トランジスタの Body は共通の P-Sub に接続され、電位はグラウンドになります。
したがって Source を基準にするとボディには VbsV_{bs} の負電圧がかかることになり、バックゲート効果で VthV_{th} が高くなります。 この変化量を ΔVΔV とすると
 Vout=Vin(Vth+ΔV+Veff)V_{out}=V_{in}-(V_{th}+ΔV+V_{eff})
と書けます。

また、小信号的に言えば、voutv_{out} すなわち vsv_{s} が変化すると vbsv_{bs} も変化するため、VthV_{th} も変化して流れる電流 ii も変化することになります。
vbsv_{bs} に対する ii の変化率を gmbg_{mb} と表すと、小信号におけるゲインの式は以下のようにかけます。
 voutvin=11+gmbgm+1gmrds\frac{v_{out}}{v_{in}}=\frac{1}{1+\frac{g_{mb}}{g_m}+\frac{1}{g_mr_{ds}}}

gmbgm\frac{g_{mb}}{g_m} は 0.1〜0.2 程度の大きさですが、それでも分母にこの項が加わるため、ゲインは 0.7〜0.8 程度と下がることになり、不利な方向に働きます。

なお、PMOS 使ったソースフォロワの場合には、P-sub 上に形成された NWL は、トランジスタごとに異なる電圧にすることが可能なため、 Body を Source に接続することができ、バックゲート効果なしで使うことが可能です。

このように Body を Source に接続すると、ウェル電位が動くことになるので、これを「ホットウェル」と呼ぶこともあります。

ひとこと

近年のプロセスではトリプルウェル構造もあり、この場合には NMOS でもホットウェルで使用することが可能です。
また、fin FET プロセスでは、そもそもバックゲート効果がほとんどないため、ソースフォロワでゲインが低下する問題は起きません。

カスコード (ゲート接地)

MOS トランジスタの Gate を接地し、Source を入力、Drain を出力とした回路をカスコードと呼び、ゲート接地接続と呼びます。
ここで接地と言っているのは DC的にグラウンドに接続しているということではなく、AC的に電圧が変わらない、小信号接地を意味します。

以下、使い方として ①出力抵抗改善、②ミラー容量低減の 2つのパターンについて説明します。

rds の改善

先に述べたように、電流源はトランジスタを使って実現します。
本来必要なのは理想定電流源ですが、トランジスタを使った場合には rdsr_{ds} によって理想からのズレを生じます。

理想電流源は端子の電圧が変わっても電流は変わりません。
しかし rdsr_{ds} があると、端子の電圧が変わるとそこに電流が流れるため、その分だけ理想電流源からズレることになります。

右図のように、電流源トランジスタの上にもう一つのトランジスタ (カスコードトランジスタ) を追加してみます。

電流源トランジスタの Gate には Vcur=Veff+VthV_{cur}=V_{eff}+V_{th} の電圧を与え、Drain 電圧は電流源トランジスタが 5極管動作するために必要な VdsatV_{dsat} 電圧以上の VaV_a を与えるようにカスコードトランジスタの Gate 電位を決めます。

つまり、VgVs=Vcas=Va=Vth+VeffV_g-V_s=V_{cas}=V_a=V_{th}+V_{eff} となるように VcasV_{cas} を与えます。

このバイアス条件で小信号解析を行います。

M1 は Gate 電圧も Source 電圧も AC的には接地なので gmg_m に起因する電流はゼロで、rdsr_{ds} に起因する小信号電流のみが流れ、それを ii とすると、
 i=vards1i=\frac{v_a}{r_{ds1}}

M2 は Gate 電圧は AC的に接地されているが、Source 電圧は変化するため、gmg_m 起因と rdsr_{ds} 起因の小信号電流が流れ、これは M1 に流れる小信号電流 ii と等しいので、
 i=gm(0va)+(voutva)rds2i=g_m(0-v_a)+\frac{(v_{out}-v_a)}{r_{ds2}}
 vards1=gmva+voutrds2va\frac{v_a}{r_{ds1}}=-g_mv_a+\frac{v_{out}}{r_{ds2}}-v_a
 (gm+1rds1+1rds1)va=voutrds2(g_m+\frac{1}{r_{ds1}}+\frac{1}{r_{ds1}})v_a=\frac{v_{out}}{r_{ds2}}

gmrds1,rds2g_m\gg r_{ds1}, r_{ds2} として左辺括弧内の rds1,rds2r_{ds1},r_{ds2} を無視すると va=voutgmrds2v_a=\frac{v_{out}}{g_mr_{ds2}} になるので、
 i=voutgmrds2rds1i=\frac{v_{out}}{g_mr_{ds2}r_{ds1}}

出力抵抗は ro=voutir_o=\frac{v_{out}}{i} だから
 ro=rds1gmrds2r_o=r_{ds1}g_mr_{ds2}

カスコードトランジスタがない場合の出力抵抗は rds1r_{ds1}で、カスコードトランジスタをいれるとその出力抵抗が gmrds2g_mr_{ds2} 倍に “増幅” されることと等価になります。
rds1r_{ds1} が数100kΩ程度だったとして、gmrds2g_mr_{ds2} が 30dB あれば、数10MΩの非常に高い出力抵抗が得られることになり、理想電流源に近づけることが可能になります。

ひとこと

ここでは理想電流源に近づけることの意義については触れてきませんでしたが、オペアンプなどで非常に高いゲインを得るために、rdsr_{ds} をカスコード接続で “増幅” する場面が出てきます。

ミラー容量低減

先に述べたように、インバータはミラー容量を持つために高帯域化が難しいですが、カスコードを用いることで大幅に改善することが可能です。

ミラー容量は入力端子(Gate) と出力端子 (Drain) の間に Cgd0C_{gd0} があることで発生します。
このため、出力端子と Drain の間にカスコードトランジスターを挿入して、出力端子と Drain を切り離すと、Cgd0C_{gd0} がミラー容量に寄与しないようにでき、高帯域で動作させることが可能となります。

まず、DC 的には電流源トランジスタの Gate には Vcur=Vth+VeffV_{cur}=V_{th}+V_{eff} の電圧を与え、Drain 電圧は電流源トランジスタが 5極管動作するために必要な VdsatV_{dsat} 電圧以上の VaV_a を与えるようにカスコードトランジスタの Gate 電位を決めます。
つまり、 VgVs=VcasVa=Veff+VthV_g-V_s=V_{cas}-V_a=V_{eff}+V_{th} となるように VcasV_{cas} を与えます。

このバイアス条件で小信号解析を行います。
ここでは計算を簡単にするため、M1, M2 ともに rdsr_{ds} 起因の小信号電流を無視します。
M1vinv_{in} が変化するので gmg_m に起因する小信号電流が流れます。
 i=gm1vini=g_{m1}v_{in} 

M2 は Gate 電圧は AC的に接地されているが、Source 電圧は変化するため、gmg_m に起因する小信号電流が流れ、これは M1 に流れる小信号電流 ii と等しいので、
 i=gm2(0va)=gm2vai=g_{m2}(0-v_a)=-g_{m2}v_a
 gm1vin=gm2vag_{m1}v_{in}=-g_{m2}v_a
 vavin=gm1gm2\frac{v_a}{v_{in}}=-\frac{g_{m1}}{g_{m2}}

gm1gm2g_{m1}\doteqdot g_{m2} とすると、vinv_{in} に対する vav_a のゲインは -1 程度となり、ここでのミラー容量は (1+1)cgd0=2Cgd0(1+1)c_{gd0}=2C_{gd0} と、カスコードトランジスタを入れない場合に対して大幅に改善することが可能になります。

カスコードのデメリット

カスコードは非常に大きなメリットがありますが、デメリットもあります。

2つのトランジスタをそれぞれ 5極管領域で動作させないとカスコードの効果が得られません。
アクティブトランジスタの 5極管動作を保証するためには Va>Vdsat1V_a>V_{dsat1} が条件となります。
いま Vdsat1V_{dsat1} を 0.2Vに設定したとして、マージンを 0.1V 程度みると vAv_A 電圧は 0.3V 程度になります。

次にカスコードトランジスタの 5極管動作を保証するためには Vout=Va>Vdsat2V_{out}=V_a>V_{dsat2} が条件となります。
Vdsat2V_{dsat2} を 0.2V にしたとすれば、VaV_a 電圧を0.3V とすれば VoutV_{out} 電圧の下限は 0.5Vとなり、出力ダイナミックレンジを大きく損ねることになります。
特に、電源電圧が低い微細化プロセスだとカスコード接続が使えないケースも出てきます。

ひとこと

プレーナプロセスでは rdsr_{ds} を大きくすることは難しかったため、カスコードは非常に強力なツールでしたが、微細化が進み電源電圧が下がるにつれてだんだん使いにくくなってしまいました。
しかし、fin FET 時代に入ると、もともとの rdsr_{ds} がプレーナトランジスタよりはるかに改善されたことから、無理にカスコードにしなくても何とかなる場合が増えたのは救いです。

差動対

差動対とは

Source を共通にした 2つのトランジスタを差動対と呼びます。
さらにその共通の Source とグラウンドの間に定電流源を挿入した形の回路を、電流源 Tail の差動対と呼びます。

定電流源の代わりに抵抗を入れたものを抵抗 Tail の差動対と呼びます。
また、共通の Source を直接グラウンドに接続したものを Non-Tailと呼ぶこともあります。
一般には電流源 Tail の差動対が使われます。

動作としては、POS 側トランジスタに流れる電流 IposI_{pos} と、NEG 側トランジスタに流れる電流 InegI_{neg} の和が電流源 IbiasI_{bias} に流れるため、POS 側と NEG 側で電流の取り合いをすることになります。

2つのトランジスタの Source が共通なので、Vpos>VnegV_{pos}>V_{neg} であれば POS 側の VgsV_{gs} が NEG 側の VgsV_{gs}より高くなるため、Ipos>InegI_{pos}>I_{neg} となり、Vpos<VnegV_{pos}<V_{neg} であれば Ipos<InegI_{pos}<I_{neg} となります。

つまり差動対は VposV_{pos}VnegV_{neg}の電圧差を IposI_{pos}InegI_{neg} の電流差に変換する回路であると言えます。 

抵抗負荷の差動インバータ

続いて、差動対に負荷として抵抗を接続した場合を考えます。

POS 側のトランジスタの Gate, Drain 端子入力をそれぞれ
Vin_p,Vout_pV_{in\_p},V_{out\_p} とし、流れる電流を IposI_{pos} とします。
同様に、NEG 側について、それぞれ Vin_n,Vout_n,InegV_{in\_n},V_{out\_n},I_{neg} を定義します。

ここで、Vinp=VinnV_{in_p}=V_{in_n} の場合には Ipos=Ineg=Ibias2I_{pos}=I_{neg}=\frac{I_{bias}}{2} となって、
 Vout_p=Vout_n=VddRIbias2V_{out\_p}=V_{out\_n}=V_{dd}-\frac{R・I_{bias}}{2}
となります。

次に Vin_p>Vin_nV_{in\_p}>V_{in\_n} の場合には、先に述べたように Ipos>InegI_{pos}>I_{neg} となり、POS 側の方がより電位降下が大きくなるため Vout_p<Vout_nV_{out\_p}<V_{out\_n} となります。

これまでは POS 側、NEG 側の入出力電圧を個別に書いてきましたが、差動対を扱う場合には以下のように「差動電圧」と 「同相電圧」で表すのが一般的です。
 Vdif=VposVnegV_{dif}=V_{pos}-V_{neg}
 Vcom=Vpos+Vneg2V_{com}=\frac{V_{pos}+V_{neg}}{2}

差動電圧 VdifV_{dif} は POS側とNEG側の差電圧で、同相電圧 VcomV_{com} は POS側とNEG側の中点電圧になります。
同相電圧は動作点電圧とも呼ばれます。

これらの式を変形すると
 Vpos=Vcom+Vdif2V_{pos}=V_{com}+\frac{V_{dif}}{2}
 Vneg=VcomVdif2V_{neg}=V_{com}-\frac{V_{dif}}{2}

VposV_{pos}VnegV_{neg} はそれぞれ動作点 VcomV_{com}を基準として ±Vdif2±\frac{V_{dif}}{2} づつ上下に振れると見ることもできます。

アナロジーとしてはシーソーのように考えるとわかりやすいかと思います。
つまり支点(動作点) を真ん中にして、一方が上がれば同じ分だけ反対側が下がるというイメージになります。

右図上の抵抗負荷の差動対を小信号等価回路で書くと右図下のように書けます。
(小信号なので記号は全て小文字で書いています)

まず、電源電圧は動かないので接地になります。また、定電流源も変化はないので小信号電流はゼロです。
トランジスタは本来 rdsr_{ds} がありますが、gmg_m に比べて電流に対する寄与が圧倒的に小さいため無視します。

POS 側、NEG 側のトランジスタについて小信号電流はそれぞれ
 ipos=gm(vin_pvc)i_{pos}=g_m(v_{in\_p}-v_c)
 ineg=gm(vin_nvc)i_{neg}=g_m(v_{in\_n}-v_c)

ここで、2式の差を取ると
 iposineg=gm(vin_pvin_n)i_{pos}-i_{neg}=g_m(v_{in\_p}-v_{in\_n})
で、 vin_pvin_n=vin_difv_{in\_p}-v_{in\_n}=v_{in\_dif} とすると
 iposineg=gmvindifi_{pos}-i_{neg}=g_mv_{in_dif}

ここで i=ipos+ineg=0i=i_{pos}+i_{neg}=0 なので ineg=iposi_{neg}=-i_{pos} から、
 iposineg=2ipos=gmvin_comi_{pos}-i_{neg}=2i_{pos}=g_mv_{in\_com}
 ipos=gmvin_dif2i_{pos}=\frac{g_mv_{in\_dif}}{2}

この ipos,inegi_{pos},i_{neg} は負荷抵抗に流れてそれぞれ電位降下を起こし
 vout_p=Ripos=gmRvin_dif2v_{out\_p}=-R・i_{pos}=\frac{g_m・R・v_{in\_dif}}{2}
 vout_n=Rineg=gmRvin_dif2v_{out\_n}=-R・i_{neg}=\frac{g_m・R・v_{in\_dif}}{2}

両式の各辺同士の差を取ると
 vout_pvout_p=gmRvin_difv_{out\_p}-v_{out\_p}=-g_m・R・v_{in\_dif}

結局
 vout_difvin_dif=gmR\frac{v_{out\_dif}}{v_{in\_dif}}=-g_mR

となって通常のインバータと同じゲインの差動インバータができることになります。

ひとこと

差動インバータの利点の1つに、電源ノイズ耐性が優れていることがあげられます。 シングルエンドの場合は、VddV_{dd} に電源ノイズが重畳されると、その影響が出力に及びます。 しかし差動にした場合には POS 側と NEG 側を個別にみると確かに電源ノイズの影響は受けますが、両方に等しくノイズが乗るために、差を取るとそのノイズがお互いにキャンセルして、差動出力としてはノイズは乗りません。 なので、特に微小電圧を扱う回路では差動で回路を構成することがよくあります。

同相特性と CMRR

これまでは差動入力に対する特性をみてきましたが、今度は同相入力に対する特性を考えます。

同相特性というのは、Vin_pV_{in\_p}Vin_nV_{in\_n} を同相で動かしたときの特性で、Vin_p=Vin_p=Vin_comV_{in\_p}=V_{in\_p}=V_{in\_com} として、Vin_comV_{in\_com} を変化させたときの Vout_comV_{out\_com} の応答になります。

このときの動作は、POS 側と NEG 側を重ねたものに等しくなり、右図の回路図ように、ソースフォロワーの Drain と VddV_{dd} の間に抵抗を挿入したような回路になります。
入力の Gate 電圧を変化させると Source 電圧もそれに連動して変化しますが、電流源が理想定電流源なら Vc 電圧が変わっても抵抗に流れる電流は変わらないため、Vout_comV_{out\_com} の電圧は変わりません。
すなわち、同相入力に対する同相出力はゲインを持ちません。
ところが、電流源はトランジスタで作るため、理想定電流源にはなりません。 具体的にはトランジスタの rdsr_{ds} がみえてくることになります。

こらを小信号等価回路で考えます。
電源電圧は変化しないため接地となり、電流源のトランジスタは Gate 電圧固定で使うため、gmg_m による電流変化はなく、値が rdsr_{ds} となる抵抗としてのみ働きます。
トランジスタの方は rdsr_{ds} の効果を無視すると gmg_m だけが電流変化に寄与し、vgsv_{gs} すなわち Vin_comV_{in\_com}vcv_cvc の電位差に応じて電流が変わります。

すなわち、トランジスタを流れる小信号電流は
 i=gm(vin_comvc)i=g_m(v_{in\_com}-v_c)

この電流が電流源にそのまま流れるので、 i=vcrdsi=\frac{v_c}{r_{ds}}

したがって
 gm(vin_comvc)=vcrdsg_m(v_{in\_com}-v_c)=\frac{v_c}{r_{ds}}
 gmrds(vin_comvc)=vcg_mr_{ds}(v_{in\_com}-v_c)=v_{c}
 gmrdsvin_com=(1+gmrds)vcg_mr_{ds}v_{in\_com}=(1+g_mr_{ds})v_{c}
 vc=gmrdsvin_com1+gmrdsv_{c}=\frac{g_mr_{ds}v_{in\_com}}{1+g_mr_{ds}}

gmrds1g_mr_{ds}\gg1 とすると vc=gmrdsvin_comgmrdsvin_comv_{c}=\frac{g_mr_{ds}v_{in\_com}}{g_mr_{ds}}\doteqdot v_{in\_com}

小信号電流は
 i=vcrds=vin_comrdsi=\frac{v_c}{r_{ds}}=\frac{v_{in\_com}}{r_{ds}}

この小信号電流が負荷抵抗に流れるため
 vout_com=Rvin_com2rdsv_{out\_com}=\frac{Rv_{in\_com}}{2r_{ds}}

したがって
 vout_comvin_com=R2rds\frac{v_{out\_com}}{v_{in\_com}}=\frac{R}{2r_{ds}}

rdsr_{ds} を数100kΩ、RR を数kΩ程度とするとこの同相ゲインは 1/100 程度と、差動ゲインよりも非常に小さい値を取ります。

差動ゲインと同相ゲインの比を CMRR (common Mode Reduction Ratio) と呼び、差動インバータの特性指標として用いられます。
この値は大きい方が、すなわち
差動ゲイン \gg 同相ゲイン となった方が良いとされています。

シングルエンド出力

これまでは入力も出力も差動の、差動入力インバータについて見てきましたが、入力は差動でも出力はシングルエンドのいわゆる差動アンプについて説明します。

代表的な回路図を下図に示しますが、これまで抵抗負荷だった個所が PMOS カレントミラーに置き換わったような形になります。

まず、VposV_{pos} 電圧だけが高くなった場合を考えます。
VposV_{pos} 電圧が高くなると POS 側の NMOSトランジスタに流れる電流が増えます。 その電流は PMOS トランジスタにもそのまま流れ、それがカレントミラーで NEG 側の PMOS に折り返され、VoutV_{out} ノードは流れ込む電流により電位が上がることになります。 この電流は VoutV_{out} から見える大きな出力抵抗によって電圧に変換されるため、VposV_{pos}正相で増幅することになります。

次に、VnegV_{neg} 電圧だけが高くなった場合を考えます。
VnegV_{neg} 電圧が高くなると NEG 側の NMOSトランジスタに流れる電流が増えます。 その電流は、VoutV_{out} ノードから流出するため VoutV_{out} 電位は下がることになります。
この電流は VoutV_{out} から見える大きな出力抵抗によって電圧に変換されるため、VnegV_{neg}逆相で増幅されることになります。

続いて、小信号解析を行ってゲインを定量的に求めます。

M1, M2 のトランジスタについて
 ipos=gmvposi_{pos}=g_mv_{pos}
 ineg=gmvnegi_{neg}=g_mv_{neg}

両辺をそれぞれ引くと、vposvneg=vdifv_{pos}-v_{neg}=v_{dif} として
 iposineg=gmvdifi_{pos}-i_{neg}=g_mv_{dif}

また定電流源の rdsr_{ds} を無視するとineg=iposi_{neg}=-i_{pos} iとなるから
 2ipos=gmvfif2i_{pos}=g_mv_{fif}
 ipos=gmvfif2i_{pos}=\frac{g_mv_{fif}}{2}
 ineg=gmvfif2i_{neg}=-\frac{g_mv_{fif}}{2}

M3 のトランジスタについては M1 と同じ小信号電流が流れるから
 ipos=gmvavards_pi_{pos}=-g_mv_{a}-\frac{v_a}{r_{ds\_p}}

ここで負号がついているのは M3 が PMOS のため極性が逆になるためです。

これを vav_a について解くと
 ipos=(gm_p+1rds)vai_{pos}=-(g_{m\_p}+\frac{1}{r_{ds}})v_a
 va=iposgm+1rds_pv_a=\frac{i_{pos}}{g_m+\frac{1}{r_{ds\_p}}}

M4 のトランジスタについて流れる電流はM2 と等しいので
 ineg=gmvavoutrds_pi_{neg}=-g_mv_a-\frac{v_{out}}{r_{ds\_p}}
  =gmiposgm+1rds_pvoutrds_p=-g_m\frac{i_{pos}}{g_m+\frac{1}{r_{ds\_p}}}-\frac{v_{out}}{r_{ds\_p}}

gm1rds_pg_m\gg \frac{1}{r_{ds\_p}} なので 1rds_p\frac{1}{r_{ds\_p}} を無視すると
 ineg=iposvoutrds_pi_{neg}=-i_{pos}-\frac{v_{out}}{r_{ds\_p}}
だから
 gm_nvdif2=gm_nvdif2voutrrs_p-\frac{g_{m\_n}v_{dif}}{2}=\frac{g_{m\_n}v_{dif}}{2}-\frac{v_{out}}{r_{rs\_p}}
 voutrrs_p=gm_nvdif\frac{v_{out}}{r_{rs\_p}}=g_{m\_n}v_{dif}

以上から
 voutvdiff=gm_nrds_p\frac{v_{out}}{v_{diff}}=g_{m\_n}r_{ds\_p}

となり、ここでも gmg_mrdsr_{ds} の積が入出力ゲインになることがわかります。
なお、M1, M2rdsr_{ds} を無視せずに rds_nr_{ds\_n} としたときには
 voutvdiff=gm_nrds_prds_n)\frac{v_{out}}{v_{diff}}=g_{m\_n}(r_{ds\_p}\parallel r_{ds\_n})

となります。
rdsr_{ds}は数100kΩ〜数MΩで、gmg_m は数mMho なので、ゲインは 20〜30dB と抵抗負荷の差動対に比べるとはるかに大きいゲインが得らることがわかります。

ひとこと

これだけでもちょっとしたオペアンプとして使えそうですが、まだゲインが足りません。 本格的なオペアンプを作る場合は、後段にインバータを追加するなどして、最終的に 40dB〜60dB という高いゲインを稼ぐ必要があります。
詳細はオペアンプの章で解説します。

まとめ

以上、アナログ回路でよく用いる基本的なパーツの説明をしてきました。 一見して複雑に見える回路でも、機能ごとに腑分けしていくと多くの場合はこれまで説明してきた回路要素に帰着させることができます。 この腑分けができるようになると、他人が書いた回路図でもその中身が容易に把握できるようになりますし、自分で回路を設計する場合にも論理的に回路を組み立てることが可能になると思います。

コメント