LDO は電流を吸い込めない:ソースしかできないレギュレータと、保護ダイオードから流れ込む電流の行き先
レギュレータのデータシートにある「出力電流」は、入力から出力へ流し出す(ソース)電流です。出力から流れ込んでくる電流を GND へ逃がす(シンク)能力は、ふつうの LDO にはゼロです。だから、保護ダイオードや別の電源から 3.3V レールに電流が流れ込むと、LDO は「閉じる」ことしかできず、レールは負荷が吸える電流に釣り合うところまで上がります。
ソースとシンク:レギュレータは一方通行
LDO は、入力と出力のあいだに PNP か P チャネル MOSFET のパス素子を置き、誤差増幅器が出力電圧を見ながらどれだけ開くかを決めています。開き方を変えられるだけで、向きは入力→出力の一方向です。出力電圧が設定値より高くなったとき LDO にできるのは、パス素子を完全に閉じることまでで、出力から電流を引き抜いて電圧を下げる手段はありません。
データシートに「シンク電流」の欄がないのは、書くまでもなくゼロだからです。LDO の出力側にある GND への経路は、帰還用の分圧抵抗(数十 µA)と、品種によっては EN = L のときだけ入る放電用の FET だけです。
スイッチング電源も同じです。ダイオード整流(非同期)のバックコンバータでは、インダクタ電流が逆向きになろうとするとダイオードが止めるので、やはりソースしかできません。違うのは同期整流で、下側の MOSFET は両方向に電流を流せるため、インダクタ電流を負にして出力から入力へエネルギーを戻すことができます。ただし、これが成り立つのは「強制 PWM」で動いているときだけです(後述)。
つまり「シンクできるか」は、LDO か スイッチングか、という分類ではなく、出力から GND(または入力)へ電流を流す経路が回路の中にあるかで決まります。そして、その経路がないとき、流れ込んだ電流の行き先は負荷しかありません。
逃げ場のない電流はどこへ行くか:保護ダイオード
IC のピンには、ほぼ例外なく VDD と GND への保護(ESD)ダイオードが入っています。ピンの電圧が VDD + 0.6V を超えると上側のダイオードが順バイアスになり、ピンから VDD レールへ電流が流れ込みます。5V 系のロジックが 3.3V 系 IC の入力を直接叩いているとき、電源を切った基板にケーブル越しの UART や I2C がつながったままのとき、プルアップ抵抗が別の(高い、または先に立ち上がる)電源につながっているときが典型です。
流れ込んだ電流の行き先を追います。3.3V レールにつながっているのは LDO の出力、出力コンデンサ、負荷です。LDO は閉じるだけで吸い込めない。コンデンサは充電されるあいだだけ電流を受け取り、電圧が上がると止まる。残るのは負荷で、負荷が吸える電流と注入電流が釣り合う電圧まで、レールは上がります。
負荷が MCU 1 個でスリープ中(50µA)なら、釣り合う電圧はほぼ「駆動側の電圧 − ダイオードの順方向電圧」です。5V 駆動、VF = 0.6V(ESD ダイオードは面積が大きく、µA では 0.5〜0.6V)、ピンの直列抵抗 Rs = 220Ω なら、V = 5 − 0.6 − 220Ω × 50µA ≒ 4.4V。3.3V のレールが 4.4V になります。
定常で流れ込んでいる電流は 50µA しかないことに注意してください。問題は電流ではなく電圧です。信号が H になった瞬間だけは、出力コンデンサを 3.3V から 4.4V まで充電するぶん(10µF なら 11µC)が、(5 − 0.6 − 3.3) ÷ 220Ω = 5mA の勢いで流れ込みます。
4.4V になると何が起きるか
- レール上の全部品が絶対最大定格を超える。流れ込んだピンの IC だけでなく、同じ 3.3V につながる無線モジュールや FPGA、フラッシュもです。3.3V 系の絶対最大定格は 3.6V(無線モジュール、FPGA の I/O バンク)か 4.0V(多くの MCU)が多く、4.4V はどちらも超えます。すぐ壊れるとは限りませんが、ゲート酸化膜のストレスで寿命が縮み、保証の外に出ます。
- 注入されたピンのラッチアップ。ピンに流れ込む電流には別の絶対最大定格(±5〜20mA/ピンが多い)があり、超えると寄生サイリスタが点弧して VDD–GND 間が短絡します。レールが上がるかどうかとは別に、直列抵抗でピン電流そのものを制限しておく必要があります。
- 電源を切っても切れない(バックパワー)。基板の電源を切ったのに、つないだままの USB シリアル変換や隣の基板から RX ピン経由で 2〜4V が供給され続けると、MCU がリセットされない(ブラウンアウトの閾値を下回らない)、次の電源投入で変な状態から起動する、フラッシュ書き込み中に電圧が中途半端に残って化ける、電源 LED がうっすら光る、といった症状になります。コア電圧と I/O 電圧の順序(「VDDIO は VDDCORE + 0.3V 以下」など)を規定している IC では、これも定格違反です。
- LDO 自身への逆流。P チャネル MOSFET のパス素子には出力→入力向きのボディダイオードがあります。入力が切れていて出力が入力より 0.6V 以上高くなると、電流が LDO を逆向きに通って入力側のレールまで持ち上げます。データシートの「逆電流」の項に許容値があり、品種によっては壊れます。逆流保護付き(バックツーバックの FET)の LDO は LDO 自身を守りますが、出力電圧を押さえてくれるわけではありません。
- パワーグッドや監視 IC の誤判定。レールが「ある」ように見えるので、シーケンサが次の電源を立ち上げてしまう、リセット IC がリセットを解除してしまう、といった二次的な問題につながります。
| ピンの直列抵抗 Rs | 負荷 50µA(スリープ) | 負荷 1mA |
|---|---|---|
| 0Ω(直結) | 4.4V | 4.4V |
| 220Ω | 4.4V | 4.2V |
| 1kΩ | 4.3V | 3.4V |
| 10kΩ | 3.9V | 3.3V(収まる) |
| 22kΩ | 3.3V(ぎりぎり) | 3.3V(収まる) |
表のとおり、収まるかどうかは(Vdrive − VF − 3.3V) ÷ Rs が負荷の最小電流以下かで決まります。5V 駆動なら 1.1V ÷ Rs です。負荷の最小電流はスリープ時の消費電流で、電源を切った状態なら 0 です。0 に対しては、どんな Rs でも収まりません。
スイッチング電源なら吸い込めるか:同期整流と強制 PWM
同期整流のバックコンバータに同じ電流を流し込むと、様子が変わります。出力電圧が上がろうとすると制御ループがデューティを絞り、インダクタの平均電流は「負荷 − 注入」= 50µA − 5mA ≒ −5mA、つまり出力から入力へ向かう向きになります。下側の MOSFET はオフ期間中ずっと導通しているので、負の電流もそのまま流せます。上側がオンのあいだ、その電流はインダクタから SW ノード、上側 MOSFET を通って入力コンデンサへ流れ込む。コンバータは 3.3V から 5V へのブーストとして動き、出力は 3.3V に保たれます。戻る電力は 3.3V × 5mA ≒ 16mW です。
ただし、これには 3 つの条件があります。
① 強制 PWM(FPWM、FCCM)で動いていること。軽負荷で効率を上げる省電力モード(PFM、パルススキップ、自動モード)では、下側 MOSFET をインダクタ電流がゼロになった時点で切ります。負の電流を流さないようにする、まさにそのための機能です。この状態では下側は非同期のダイオードと同じで、LDO と同じことが起きます。そして、電流が流れ込んで困るのは負荷が軽いときで、そのとき自動モードの IC は省電力モードに入っています。MODE ピンで強制 PWM に固定できる品種を選ぶか、確かめてください。
② 戻った電流の行き先が入力側にあること。戻された電流は入力コンデンサに入ります。入力が大容量のコンデンサと他の負荷を持つバス(12V や 5V の主電源)なら吸収されます。入力が別の LDO や非同期コンバータの出力で、ほかに負荷がなければ、今度は入力電圧が上がります。問題が一段上流に移るだけです。
③ 負の電流制限の範囲内であること。強制 PWM の IC には、負方向にも電流制限があります(正方向より小さいことが多い)。それを超える注入があれば、やはり出力は上がります。
非同期(ダイオード整流)のバックと、ダイオード整流のブーストは吸い込めません。同期整流のブーストは、強制 PWM なら逆向きのバックとして動くので吸い込めます。負の電流を流し続けると軽負荷の導通損失は増えますが、電流制限内なら壊れはしません。
シンクできるようにする回路:トランジスタを付ければよいか
結論から言うと、トランジスタだけ付けても働きません。いつ、どれだけ電流を流すかを決める基準電圧と誤差増幅器が要ります。それを 1 個に入れたのが TL431 で、これが一番手軽な「シンクだけできるレギュレータ」です。以下、安いものから順に 3 つ挙げます。
① 逃げ場を作る、または流入を絞る。回路を足す前に、上の式で足りるかを見ます。ピンの直列抵抗 Rs を大きくして 1.1V ÷ Rs を負荷の最小電流以下にするか、レールにブリード抵抗を入れて最小負荷を注入電流より大きくします。Rs = 1kΩ なら 1.1mA 以上の負荷が要り、3kΩ のブリード抵抗で 3.6mW を常に捨てることになります。Rs = 22kΩ なら 50µA で足りますが、ピンの入力容量 5pF と組んで 110ns の RC になり、速い信号には使えません。ロジック IC には、電源が切れているときに入力からの流れ込みを止める Ioff(パーシャルパワーダウン)機能を持つ品種があり、境界にそれを挟むのが根本策です。「5V トレラント」のピンも VDD へのダイオードを持たないので流れ込みません。
② シャントレギュレータで上を押さえる(TL431)。TL431 のカソードをレール、アノードを GND につなぎ、REF を分圧で 3.3V より少し上に置きます。R1 = 3.9kΩ、R2 = 10kΩ で 2.5V × (1 + 3.9/10) = 3.48V。レールがそれ以下のときは 1µA 以下しか流れず、超えると超えたぶんだけ(100mA まで)吸い込みます。しきい値は LDO の設定値より 4〜5% 上に置きます。LDO の精度 ±2% と TL431 側の精度 ±2%(基準 ±1%、抵抗 1%)を足した幅より狭いと、個体によっては TL431 のしきい値が LDO の設定値を下回り、LDO の全電流を TL431 が常時吸い込んで発熱します。100mA を超える注入には、TL431 で PNP(エミッタをレール、コレクタを GND)を駆動し、熱を PNP に持たせます。出力コンデンサが 10µF 以上あれば安定ですが、TL431 にはカソード容量が数 nF〜1µF の範囲で発振する領域があるので、小さいコンデンサだけのレールでは注意してください。
③ 出力段をプッシュプルにする(ソース/シンク LDO)。誤差増幅器の出力で NPN と PNP を駆動し、NPN(コレクタ = 入力、エミッタ = 出力)がソース、PNP(エミッタ = 出力、コレクタ = GND)がシンクを受け持ちます。オペアンプの出力段そのものです。DDR の終端電圧 VTT(VDDQ/2 に対してデータのパターン次第で電流が両方向に流れる)用のレギュレータや、ADI の LT1118(ソース 800mA、シンク 400mA)はこの形です。単純に 2 つのベースを結ぶと切り替わりの ±0.6V が不感帯になりますが、ループの利得で乗り越えられるので、レギュレータ用途では問題になりません。
どの方法でも忘れてはいけないのは、吸い込んだ電流のエネルギーは熱になることです。②③ではレール電圧 × シンク電流がトランジスタで消費されます。3.3V で 100mA なら 0.33W です。同期整流のスイッチング電源だけが、熱にせず入力へ戻せます。
なお、LDO の「アクティブ放電」機能は、EN = L のときだけ出力を 100Ω 前後の FET で GND に落とすものです。電源を切ったあとに出力コンデンサの電荷を抜くための機能ですが、注入がある状態では 100Ω の負荷として働き、上の式でレールは 4.4 ÷ (1 + 220/100) ≒ 1.4V に落ち着きます。0V にはなりませんが、多くの MCU のブラウンアウト閾値は下回ります。
「トランジスタを付ければシンクできる」は半分正しい。付けるのはトランジスタと、それをいつ開くか決める基準と増幅器で、その最小構成が TL431。そして吸い込んだぶんは熱になる。
ふつうの LDO はなぜプッシュプルではないのか
ここで「オペアンプの出力段はプッシュプルなのに、LDO はなぜ違うのか」という疑問が出ます。ふつうの LDO の出力段はパス素子 1 個だけのシングルエンドです。電源の負荷は必ず GND へ電流を流すもので、レギュレータから見れば流し出すだけなので、下側のトランジスタを置く理由がありません。オペアンプは信号を中点の上下両方へ振る必要があるからプッシュプルになっているだけで、電源の負荷にはその要求がありません。
では、プッシュプルにしたときの代償は「流れ込んだときに熱が出る」だけでしょうか。通常動作の効率については、そのとおりです。ソースしているあいだ下側のトランジスタは切れているので、負荷電流は上側だけを通り、損失はふつうの LDO と同じ (Vin − Vout) × I です。効率が常時悪化するわけではありません。
代償はほかにあります。① 切り替わりの扱い。上下のベースを単に結ぶと ±0.6V の不感帯ができ(B 級)、負荷がソースからシンクへ移る瞬間に出力が一瞬揺れます。それを嫌ってバイアスをかける(AB 級)と、上下のトランジスタに常時アイドル電流が流れ、無負荷時の消費電流が増えます。② 熱設計。シンク側は Vout × Isink を全部熱にするので、シンク電流の定格ぶんのシリコンとパッケージの放熱を「ふつうは起きない事象」のために用意することになります。③ ドロップアウト。図3の③のようにエミッタフォロワで組むと、ドロップアウトが VBE + 駆動回路の余裕で 1V 以上になり、「低ドロップアウト」ではなくなります。低ドロップアウトのまま両方向にするには、上を PMOS、下を NMOS のソース接地で組んで別々に駆動することになり、ループの補償が両側で要ります。
そして設計上いちばん大きいのは、シンクできることが常に良いとは限らないことです。シンクできるレギュレータは、レールを押し上げようとする相手から、自分の電流制限までいくらでも吸い込みます。図1の状況でレギュレータがシンクできたとすると、レールは 3.3V に保たれる代わりに、5V 系の出力は (5 − 0.6 − 3.3) ÷ Rs の電流を流し続けます。Rs = 220Ω なら 5mA、直結なら駆動側の能力いっぱいです。過電圧の問題が、駆動側の過電流とレギュレータの発熱の問題に置き換わっただけです。ふつうの LDO が「閉じる」だけなのは、こういう場面で相手を壊さない、というおとなしさでもあります。
だからプッシュプル型の LDO は、負荷が本当に両方向に電流を流す用途——DDR の VTT 終端、バイポーラ負荷のバイアス、オペアンプ回路の中点電位——に限って作られていて(TPS51200、LT1118 など)、汎用 LDO の主流にはなっていません。事故で流れ込む電流は、レギュレータで吸うのではなく、流れ込む口(直列抵抗、Ioff、レベル変換)で止めるのが筋です。
シンクが本当に要る負荷:DDR の VTT 終端
シンクできるレギュレータの代表例が DDR の終端電圧 VTT です。「シンクもできる」ことは、この用途の IC ではデータシートの表題に書いてあります(TI TPS51200 は "Sink/Source DDR Termination Regulator"、ADI LTC3413 は "for DDR/QDR Memory Termination" で ±3A)。なぜ両方向が要るのかは、終端の仕組みを見ればわかります。
SSTL(DDR の信号規格)では、各データ線を終端抵抗 RT(50Ω 前後。DDR3 以降は DRAM 内蔵の ODT)で VTT = VDDQ ÷ 2 に引いています。DDR3 なら VDDQ = 1.5V、VTT = 0.75V。ドライバが H(1.5V)を出している線では、(1.5 − 0.75) ÷ 50Ω = 15mA が線から VTT へ流れ込みます。L(0V)を出している線では、同じ 15mA が VTT から線へ流れ出します。VTT レギュレータは、H の線に対してはシンク、L の線に対してはソースとして働かなければなりません。
データ 64 本にストローブとアドレスを足せば、全部 H なら 1A 以上の流れ込み、全部 L なら 1A 以上の流れ出しです。実際のデータはランダムに近いので平均はゼロに近く、瞬間的には両方向に振れます。ふつうの LDO を VTT に使うと、H の線が多い瞬間に VTT が上がり、0.75V ± 数十 mV の規定を外れてデータが化けます。
こういう「負荷が電流を返してくる」用途は、VTT のほかにも、オペアンプ回路の中点電位(仮想 GND)、バイポーラ負荷のバイアス、回生するモータ駆動などがあります。共通するのは、電流の向きが負荷の状態で決まり、設計者が片方向に決められないことです。
コンデンサは「一瞬だけ」シンクになる
「出力にコンデンサを足せば、少しはシンクになるのでは」という考えは、半分正しいです。コンデンサは I = C·dV/dt で電流を受け取るので、電圧が上がっているあいだだけ電流を吸い込みます。電圧が上がりきると止まります。つまり、パルスに対してはシンクで、直流に対してはシンクではありません。
図1の例で数字を置きます。出力コンデンサ 10µF、注入は 5V から 220Ω 経由。流れ込み始めの電流は (5 − 0.6 − 3.3) ÷ 220Ω = 5mA で、レールが 4.4V まで上がるのに吸える電荷は 10µF × 1.1V = 11µC。5mA なら 2ms です(正確には 220Ω × 10µF = 2.2ms の時定数で 4.4V に近づく)。コンデンサが稼げるのは数 msで、5V 系の出力が H のまま止まっている状況では何の助けにもなりません。1 秒持たせようとすれば 5mA × 1s ÷ 1.1V ≒ 4.5mF が要ります。
逆に、流れ込みが短いパルスなら、コンデンサだけで済みます。信号のオーバーシュートが保護ダイオードを一瞬導通させる程度なら、10µF が吸ってレールはほとんど動きません。VTT の場合も同じで、データのパターンで MHz 単位に変わる電流はコンデンサが受け持ち、レギュレータが受け持つのは、その平均と、コンデンサでは持たない低い周波数の成分だけです。VTT レギュレータの推奨回路に大きなコンデンサが並んでいるのはそのためで、それでも平均がゼロでない以上、レギュレータ自身に両方向の能力が要ります。
整理すると、コンデンサは「時間を稼ぐ」部品で、「電流の行き先」ではありません。直流の流れ込みに対しては、ブリード抵抗(行き先を作る)か直列抵抗(入口を絞る)か、シンクできるレギュレータ(行き先そのもの)が要ります。
実機で引っかかるところ
- デバッグ用の USB シリアル変換をつないだまま電源を切る。変換器の TX(3.3V か 5V)から MCU の RX の保護ダイオードを通して、MCU のレールが 2〜3V に残ります。MCU はリセットされず、電源を入れ直しても「再起動しない」ように見えます。変換器側の信号に 1kΩ 以上の直列抵抗を入れるか、Ioff 付きのバッファを挟むか、変換器の電源を基板側から取ります。
- 2 枚の基板をコネクタでつなぎ、片方だけ先に電源を入れる。先に入った側の出力が、まだ電源の入っていない側のレールをダイオード経由で持ち上げます。電源シーケンスの規定がある IC では定格違反になります。境界の信号にはバス スイッチかレベル変換 IC を置き、パワーダウン時の流れ込みを止めます。
- プルアップ抵抗を高いほうの電源につないだ I2C バス。5V にプルアップした SDA/SCL を 3.3V 系のデバイスにつなぐと、H のあいだずっと 3.3V レールへ電流が流れ込みます。4.7kΩ なら (5 − 0.6 − 3.3) ÷ 4.7kΩ ≒ 230µA/本で、スリープ中の負荷を上回ります。
- モータやソレノイドを H ブリッジで止める。回生ブレーキで電流がモータの電源へ戻ります。その電源が省電力モードのバックや LDO で、コンデンサも小さければ、電源電圧が跳ね上がります。バルクコンデンサ、ブレーキ抵抗、TVS で受けます。
- DDR の VTT。終端電流は両方向に流れるので、ふつうの LDO では作れません。VTT 専用のソース/シンク レギュレータか、強制 PWM の同期整流コンバータを使います。
- 設定値の違う 2 つのレギュレータを同じレールに並列にする。高いほうが全電流を受け持ち、低いほうは閉じたまま遊びます。壊れませんが、負荷分担は起きず、遊んでいるほうのパワーグッドは当てになりません。
- 確かめ方。基板の電源を切り、インターフェースだけつないだ状態でレールの電圧を測ります。0V でなければ、どこかから流れ込んでいます。動作中なら、負荷を最も軽い状態(スリープ)にして境界の信号を H に固定し、レールが上がらないかを見ます。
- データシートで見る項目。LDO なら「逆電流(reverse current)」「出力放電(active discharge)」。同期整流コンバータなら「強制 PWM/FCCM」「負電流制限(negative current limit)」「シンク能力(sink capability)」。VTT 用レギュレータなら「ソース/シンク電流」。
よくある質問
LDO の出力に電流が流れ込むと、LDO 自体は壊れますか。
同期整流のスイッチング電源なら安心ですか。
ツェナーダイオードで押さえてはだめですか。
「5V トレラント」のピンなら流れ込まないのですか。
TL431 のしきい値を LDO と同じ 3.3V にしてはいけない理由は。
プッシュプル出力にすると効率は下がりますか。
参考にした規格・資料
- TI, TL431 / TL432 データシート(SLVS543) — 基準電圧の精度、最小カソード電流、カソード容量に対する安定領域
- Analog Devices, LT1118 データシート — ソース/シンク両対応の LDO の例(ソース 800mA、シンク 400mA)
- TI, TPS51200 データシート — 表題が "Sink/Source DDR Termination Regulator"。VTT 用のソース/シンク レギュレータ
- JEDEC JESD8 シリーズ(SSTL) — DDR の終端方式:R_T で VTT = VDDQ/2 へ終端する
- 各 MCU のデータシート「絶対最大定格」 — VDD の上限、ピンあたりの注入電流の上限
- 74LVC / 74AVC 系ロジック IC のデータシート — I_off(パーシャルパワーダウン):電源オフ時に入力からの流れ込みを止める機能