ライブラリにせずにお手軽に使うには、SPICEディレクティブを以下のように書く。
.model modelname VDMOS(model parameters)
ライブラリにあるものは本体を右クリックして「Pick New MOSFET」を選ぶところだが、「NMOS」と書いてあるところを右クリックして、直接モデル名を打ち込む。
電圧依存の電流源(G)を使ってグラフ上に表示しておくと便利。
適当に代表点を選んで、値(デフォルトでは「G」と書いてあるところ)に、table=(x1 y1, x2 y2, x3 y3, ...)
と書く。たとえば、Vg-Id特性が
Vg[V] | Id[A] |
---|---|
1.2 | 2.4 |
1.5 | 5.1 |
1.8 | 6.5 |
2.5 | 8.4 |
4.0 | 10.1 |
だったら、以下のように書く。
table=(1.2 2.4, 1.5 5.1, 1.8 6.5, 2.5 8.4, 4.0 10.1)
波形ビュワーに直接折れ線を書くこともできるが、単位が付かないのでスケーリングが別々になってちょっと不便。
部品の値などを { } で囲むと数式が書ける。 一部、BVなど { } がいらないものもある。 書ける数式に関してはヘルプの.paramあたりを参照。 数式の中ではユーザー定義のパラメータが使える。 ユーザー定義のパラメータは.paramsで定義する。
.model SSM3K123TU VDMOS(Rs={rs} Rd={rds-rs}) .params rds=2 rs=0.5
.params側でも数式を使える。
.stepを使う。
.stepの説明には.step VDMOS model ...
という書き方ができるように書いてあるが、ペタっと貼り付けたモデルには使えないらしい。
そこで、ユーザー定義パラメータで指定しておいて、それを.stepで振る。
.model SSM3K123TU VDMOS(Kp={kp}) .step param kp list 1 3 10
.stepで指定したパラメータは.paramsはなくてもよい(あってもよい。.stepが優先)。
.stepは一度に二つ以上のパラメータを振ることもできる。
.model SSM3K123TU VDMOS(Vto={vto} Kp={kp}) .step param kp list 1 3 10 param vto list 0 1 2
SPICEディレクティブは複数行をまとめて書ける。 [Ctrl]+[Enter]を押せばよい。 行頭が+の場合は行継続。 行頭が*はコメント。
nchanを指定するとNチャンネル、pchanを指定するとPチャンネルになる。 フラグになっていて、数値を指定する必要はない。 デフォルトではnchanが指定された状態になっている。
スレッショルド電圧。この電圧からドレイン電流が立ち上がる。 エンハンスメント型MOSFET(つまり一般的なMOSFET)の場合、Nチャンネルでは正、Pチャンネルでは負の値を設定する。 デフォルトは0。
Vg対Id 緑: Vto=0 / 青: Vto=1 / 赤: Vto=2
Vgに対してIdが変化する割合。 Id=0.5Kp(Vg-Vto)2 という変化をする。 Idの傾きがKpVdに達すると直線的に増加するようになる。 mtriodeの項も参照のこと。 デフォルトは1。
Vg対Id 緑: Kp=1 / 青: Kp=2 / 赤: Kp=5
主にVtoよりも小さい部分のIdを決める。 VtoとKpで決まるIdの傾きが、subthresに達する位置よりも小さい側の電流が、指数カーブで減少するようになる。 Idを対数軸にするとよく分かる。
Vg対Id(対数軸) 緑: subthres=0 / 青: subthres=0.005 / 赤: subthres=0.01、ともにVto=1
かなり小さい値を設定する。 直感的にどういう曲線ができるか分かりにくいが、値を大きくするとVg=0のときの電流が増える方向になる。 デフォルトは0なので、Vtoですっぱり電流が0になってしまう。
箱の内部に「理想のデバイス」があるとすれば、箱のドレイン端子と理想デバイスのドレイン端子の間に入るのがRd、箱のソース端子と理想デバイスのソース間に入るのがRs。 Rd+RsとVdでIdの最大値が決まる。
Vg対Id 緑: Rd=0 / 青: Rd=1 / 赤: Rd=2 / 水色 Rd=5、ともにVd=5 / Rs=0
Vgが上がっていくとまず下に凸の放物線カーブで電流が増加していくが、Vd/Rdよりも電流は大きくならない。 例えば、Vdが5[V]でRdが1[Ω]なら5[A]以上にはならない。 この値を漸近線として電流が落ち着く。
RdとRsの違いは、Rdが理想デバイスのVgsに影響を与えないのに対し、Rsは理想デバイスのソース電圧を押し上げてしまうので、Idが増えるとRsIdだけ理想デバイスのVgsが小さくなる。 したがって、Vg-Id曲線を見ると、同じIdになるVgが、RsIdだけ大きい方に移動した状態になる。
Vg対Id 緑: Rs=0 / 青: Rs=1 / 赤: Rs=2 / 水色 Rs=5、ともにVd=5 / Rd+Rs=5
この図はまずrdsを5[Ω]と設定して、rsを振り、Rdには{rds-rs}
を設定して、Rd+Rsが常に5[Ω]になるようにしてある。
Rs+Rdが常に5[Ω]なので、Idの最大値はVd/(Rd+Rs)=1[A]で同じ。
Idが0.5[A]になるVgを見ると、Rsが0のときに比べ、Rsが1[Ω]のときはId×Rsに相当する0.5[V]だけ到達が遅れ、Rsが2[Ω]では1[V]遅れ、Rsが5[Ω]では2.5[V]遅れることが分かる。
デフォルトはどちらも0。 まずRs=0としてRdで最大電流を決め、Rd+Rsを一定としてRsを大きくしていき、Vgが大きい方向にグラフを引き伸ばして合わせていくとよい。 なお、この他にVd-Idカーブを決めるパラメータとしてmtriodeというのがある。
Vd-Id特性の線形領域(三極管領域: Vdが増加するとIdも増加する部分)で使う係数。 Vd=(Vg-Vto)/mtriodeの位置で線形領域から飽和領域に切り替わる。 大きくするとIdの立ち上がりが大きくなり、飽和領域に早く切り替わるようになる。 デフォルトは1。
Vd対Id 緑: mtriode=0.1 / 青: mtriode=0.2 / 赤: mtriode=0.5 / 水色: mtriode=1
Vg-Idで見た場合、途中まで放物線に乗って電流が増えていき、ある点で接線に沿って増えていくようになる。 放物線に乗っている間はVdに依存しないので、飽和領域ということになる。 接線に乗った部分が線形領域である。 したがって、その境目がVd=(Vg-Vto)/mtriodeである。
Vg対Id 緑: mtriode=0.1 / 青: mtriode=0.2 / 赤: mtriode=0.5 / 水色: mtriode=1 / 紫: mtriode=1000、ともにVd=1
紫の線は参考のために示したもので、いわゆるVg-Idの放物線カーブである。
これにRdが入ると理想デバイスのVdがIdRdだけ下がることになる。 この分だけ線形領域と飽和領域の境目がVdの高い方へずれる。
Vd対Id 緑: Rd=0 / 青: Rd=1 / 赤: Rd=2 / 水色: Rd=5 / 紫: Rd=10、いずれもVg=1 / mtriode=1
Vgが1[V]、mtriodeが1なので、Rdが0[Ω]ならばVdが1[V]の位置に境界が来る。 この位置でのIdは500[mA]。 Rdが1[Ω]になると理想デバイスのVdが0.5[V]下がることになるので、境界が0.5[V]遅くなり、1.5[V]の位置になることが分かる。 つまり、Rdに応じて横方向に引き伸ばされたグラフになる。 Vg-Id曲線のRsによる効果と似ている。
Vg-Id曲線ではIdが増えるにしたがって理想デバイスのVdsが小さくなっていくため、境界がVgのより小さい方へ移動する。 それと同時に最大電流がRdで制限されることになる。 これはRdの項で見たとおり。
Rsが入るとVgsにも影響を与えるため、さらにややこしくなる。
主に飽和領域の傾きを決める。 Idが (1+Lamba・Vd) 倍になる。
Vd対Id 緑: Lambda=0 / 青: Lambda=0.1 / 赤: Lambda=0.2 / 水色: Lambda=0.3
Lambda=0.1・Vd=1のときの電流を見ると550mAとなっており、Lambda=0の500mAのちょうど1.1倍になっていることが分かる。 デフォルトは0。
ゲート容量の充電にかかる時間が変わる。 スイッチング時間に影響がある。
T対Vd 緑: Vd、左からRg=1 / Rg=2 / Rg=5 / 赤: Vg×4
例は入力立ち上がりのみ。 メーカーによって測定条件が違うかもしれないが、例えば入力が10%立ち上がったところから、出力が90%変化したところまで、のように規定されている。 この例ではゲート入力は振幅2.5Vだが、分かりやすいように縦軸を10Vフルスケールにあわせている。
ターンオンするまでにチャージしなければならない容量。 Qg-Vg曲線が平らになるまでの傾きを決める。
Qg対Vg(横軸1nC/div) 緑: Cgs=100p / 青: Cgs=200p / 赤: Cgs=500p
最近のパワーMOSFETの特性図を見るとこういう図が載っていることが多い。 横軸はゲート電荷なのだが、電荷量は電流×時間で決まるので、一定の電流をゲートに流すと、時間がゲート電荷を示すことになる。 ゲート電荷はnC(ナノクーロン)の単位のことが多い。 1nAを充電するようにすれば、1秒が1nCに相当する。
この特性図を書かせるにはいくつかコツがあって、うまくやらないと思った特性にならなかったり、シミュレーションがうまく終わらなかったりする。
まず、ドレインに接続する電流源は「Advanced」を押して「This is an active load」にチェックを入れておく。
さらに直列に電圧源を入れてドレインの最大電圧を決める。
また、ゲートとドレインは絶縁状態にあるため、初期値を指定しておかないと思った電圧にならないことがある。
.IC V(Vd)=10 V(Vg)=0
がそれ。
この指定を行うためにはネット上にノード名をつけておく必要がある。
多少配色をいじっているのだが、線のそばに青地でVd・Vgと書いてあるのがノード名。
Cgsのデフォルトは0である。 これを0以外の値に設定しておく必要がある。 なにも指定せずに電流源を接続するとエラーになってしまう。 また、Vto以下でも電流が流れるようにsubthresを指定しておかないと、Vto以下でドレイン電圧が上昇する動きをしてしまう。
MOSFETのドレイン-ソース間のコンダクタンスはゲートに突っ込んだ電荷量によって決まる。 ゲートに少しずつ電荷を入れていくと、ゲート電圧も少しずつ上がる。 ゲート電圧がVtoに達するとターンオン。 ドレイン電位を一定に保っているとだんだん電流が増えていく。 ここまではゲート電位も少しずつ上がっていく。
電流がある値になったところで、電流を一定に保とうとすると、ドレイン電位が下がっていく。 そうすると、ゲート・ドレイン間容量の影響でゲート電位も下がる。 そこに電荷が入ってくるので、ゲート電位が元に戻るが、ドレイン-ソース間抵抗は減少するため、ドレイン電位がさらに下がる。 ドレイン電位が下がりきるまではゲート電位が一定になる。 見かけ上ゲート容量が次第に増加していると言うこともでき、増幅回路で言うところのミラー効果を見ていると言ってもよい。
ドレイン電位がある程度まで下がると再びゲート電位は上昇する。 この区間の傾きはCgdも関係してくる。
ターンオンしてからチャージしなければならない容量。 Qg-Vg曲線が平らになった後、再び上昇していく位置はおおむねCgdminによって、傾きはおおむねCgdmaxによって決まる。 デフォルトはどちらも0。
Qg対Vg(横軸1nC/div)
緑: Cgdmax=500p Cgdmin=100p /
青: 同 Cgdmin=200p /
赤: 同 Cgdmin=300p /
水色: Cgdmax=1n Cgdmin=100p /
紫: 同 Cgdmin=200p /
灰: 同 Cgdmin=300p
AはVgd-Cgd曲線の傾きを決めている。 ヘルプを読むと、Aを大きくするほどVgdが低い電圧でCgdmaxに達する、ように見えるのだが、どうも挙動が違うように思う。 デフォルトは1。
Qg対Vg(横軸1nC/div)
緑: a=0.01 /
青: a=0.1
赤: a=1、
いずれも
Cgs=100p /
Cgdmin=100p /
Cgdmax=500p
ダイオードは、理想デバイスに並列に入るのではなく、箱に並列に入る。 ダイオードの特性はRb(ダイオードの抵抗値)とIs(飽和電流)でほぼ決まってしまう。 逆方向特性(つまり、FETのドレイン-ソースを順方向でつないだ場合の特性)にはブレークダウン電圧と、ブレークダウン時点での電流値があるが、ブレークダウンさせるような使い方をしない限りは不要だろう。
動特性に関係するものにCjo(ダイオードの接合容量)、tt(いわゆるリカバリータイム)がある。 ルネサス(旧NEC)のカタログには書いてあることが多いんだけど、東芝のFETのカタログにはあんまり書いてないんだよな。 「パワーMOSFET電気的特性」というドキュメント見ると、trrはFRDに匹敵するって書いてあるけど。
理想デバイスのVg・VdとIdの関係は、
Vd < (Vg - Vto) / M の範囲では、 Id = [ - b { M Vd - ( Vg - Vto ) }2 + K ( Vg - Vto )2 ] ( 1 + L Vd )
Vd > (Vg - Vto) / M の範囲では、 Id = K ( Vg - Vto )2 ( 1 + L Vd )
ここで K は Kp/2、M は mtriode、L は Lambda。 前者が線形領域、後者が飽和領域。
Vd = (Vg - Vto) / M のときはどちらの式も Id = K ( Vg - Vto )2 ( 1 + L Vd ) になる。 これはVd < (Vg - Vto) / M の範囲の式の [ ] の中の放物線の頂点(b > 0 ならば上に凸)に一致している。 Lによる効果を考えなければ、頂点で水平になるところで水平な直線につながる。 つまり、1次微係数も一致しており、Id曲線はなめらかにつながる。
Vd が 0 のとき Id も 0 になるので、
0 = [ - b { 0 - ( Vg - Vto ) }2 + K ( Vg - Vto )2 ] ( 1 + L 0 )
0 = - b ( Vg - Vto )2 + K ( Vg - Vto )2
b ( Vg - Vto )2 = K ( Vg - Vto )2
b = K
だと分かる。
Vd < (Vg - Vto) / M を Vg の立場で考えると、
M Vd < (Vg - Vto)
Vg > M Vd + Vto
この範囲、つまりVgが大きい部分が線形領域であり、これより小さい部分が飽和領域である。
L の効果を無視して線形領域のドレイン電流を、Vgの昇べき順になるように計算してみると、
Id = - K { M Vd - ( Vg - Vto ) }2 + K ( Vg - Vto )2
Id = - K { M2 Vd2 + ( Vg - Vto )2 - 2 Vd M ( Vg - Vto ) } + K ( Vg - Vto )2
Id = - K M2 Vd2 - K ( Vg - Vto )2 + 2 K Vd M ( Vg - Vto ) + K ( Vg - Vto )2
Id = - K M2 Vd2 + 2 K Vd M ( Vg - Vto )
となり、この領域では傾き 2 K Vd M の右上がりの直線になることが分かる。
一方、飽和領域 Id = K ( Vg - Vto )2 ( 1 + L Vd ) を L の効果を無視した上で Vg について微分すると、
dId/dVg = 2 K ( Vg - Vto )
Vg = M Vd + Vto における極限は、
2 K ( M Vd + Vto - Vto )
= 2 K M Vd
となる。 つまり、 Vg = M Vd + Vto においてふたつの領域のIdの傾きが一致するので、Vg-IdでもId曲線はなめらかにつながる。 これより前では下に凸の放物線、後ろでは放物線のこの点での接線になる。 K = Kp/2 なので、2K = Kp である。 つまり、Kpは線形領域でのVg-Idカーブの傾きを指定していると言える。
Copyright (C) 2014 You SUZUKI
$id: subckt.htm,v 1.1 2011/04/09 15:50:13 you exp $