レベルシフト 第四回:反転型とオープンコレクタ

連載レベルシフタ第四回目の今回は、出力が反転するタイプの簡易レベルシフト回路とこの回路を内蔵しているオープンコレクタ出力タイプのICについてです。




反転型のレベルシフタの動作原理は、典型的なエミッタ接地回路です。






動作は入力論理を反転させるインバータとなります。
R2でプルアップする電圧を変更することで、出力電圧を変更できます。
下は、逆に5Vから3.3Vへレベルシフトした例です。






オープンコレクタ出力

さて、この出力段のエミッタ接地回路をデジタルICに内蔵した出力形式をオープンコレクタ出力といいます。




オープンコレクタ出力型ICの出力論理は"L"とハイインピーダンスである"Z"の2通りになります。したがって、"Z"のときの論理を確定するためにはプルアップが必要になります。

ちなみに、バイポーラトランジスタではなくFETで作られているICの場合はオープンコレクタではなくオープンドレインと呼ばれます。

プッシュプル(トーテムポール)出力

オープンコレクタ出力の対義語はプッシュプル出力、あるいはトーテムポール出力になります。いわゆる普通の出力のことです。




オープンコレクタ型ではシンク方向のみ出力インピーダンスが低くなりますが、プッシュプル型ではシンク・ソース両方向で出力インピーダンスが低くなります。

スリーステート(トライステート)

オープンコレクタとプッシュプルの両方を組み合わせたバッファとしてスリーステートバッファがあります。
代表的なスリーステートバッファは74HC125や74HC126です。




東芝セミコンダクターのデータシートから真理値表を抜粋




スリーステートバッファはレベルシフトよりもバスの切り替えに使われることが多いです。このために、74HC540/541といった専用のバスバッファも存在します。
スリーステートのことをトライステートとも呼びます。

オープンコレクタの耐圧

ただし、オープンコレクタ(オープンドレイン)型の出力ならいつでもレベルシフトに使えるとは限らないということには注意が必要です。実際のところ74HCシリーズでは、オープンドレイン出力であっても3.3V→5Vレベルシフトはできません。
これは、出力端子の定格電圧の問題です。

以下は、東芝セミコンダクタの74HC07のデータシートからの抜粋です。




出力電圧VOUTの項目を見ると、上限がVCC+0.5Vとなっていることがわかります。
この理由は、以前議論したレベルシフト 第三回:ダイオードクリップ型と5Vトレラントのエントリの中にある「5V入力トレラント機能」と似たような話になります。




上のシステム図も東芝セミコンダクタの74HC07のデータシートからの抜粋です。この図から読み取れるように出力のFETのドレインからVCCに向かってダイオードが挿入されています。このため、プルアップによってVCC以上の電圧を印加してもダイオードでクリップされてしまいます。

これに対して、スタンダードTTLである無印7407は低圧から高圧へのレベルシフトに使うことができます。(とはいっても、3.3Vではそもそも動作しませんが。)
以下が、テキサス・インスツルメンツの7407のデータシートからの抜粋です。







SN7407のOutput Voltage, Voの項目を見ると、VCCの値にかかわらず30Vまでとなっています。内部回路図のOutput Yのところを見てもダイオードが挿入されていないのがわかります。

目次


デジタル回路の簡易レベルシフト
レベルシフト 第一回:各パターン一覧
レベルシフト 第二回:分圧型と入力レベル
レベルシフト 第三回:ダイオードクリップ型と5Vトレラント
レベルシフト 第四回:反転型とオープンコレクタ
レベルシフト 第五回:非反転型とトランジスタの双方向性

tag: レベルシフト インターフェース 

レベルシフト 第三回:ダイオードクリップ型と5Vトレラント

デジタル回路の簡易レベルシフト第三回の今回は、広い電圧範囲を狭い電圧範囲へと変換する方法の二つ目であるダイオードによるクリップ回路です。

5V→3.3V

回路図とLTspiceによるシミュレーションは以下のようになります。






入力の5V系デジタル信号が緑のライン、レベル変換後の出力が青のラインです。

このグラフに対して、3.3V電源電圧を赤の補助線で書き込んだものが下のグラフになります。




この回路は、変換後の電圧が受信側のICの電源電圧(3.3V)よりも高くなってしまう欠点があります。
この"H"レベルのときの青のラインと赤のラインの差は、ダイオードD1の順方向電圧Vfの影響です。"H"レベルのときの等価回路が以下の回路図です。




この回路の動作原理は、3.3Vを超える電圧がoutにかかったときに3.3V電源へダイオードを通じて電流を流すというものです。このときにR1が電流の制限を行います。

±5V→3.3V

このダイオードクリップ型の利点としては、受信側の電源電圧範囲が送信側の出力電圧範囲の内側にあるならその値にかかわらずレベル変換できる点にあります。

次の例は、±5Vから3.3Vへのレベル変換回路です。GND側にもダイオードD2を入れることにより同じ方式でレベル変換が出来ます。






当然ながら、ダイオードのVfの影響が"L"レベル側にも見られます。

デジタルIC入力段の寄生ダイオード

74HCシリーズ等では、入力段の寄生ダイオードを積極的に利用することでクリップダイオードD1,D2を省略することが出来ます。

下の図は、74HCシリーズのゲートの内部回路のうち入力段を示したものです。




この回路から見て分かるとおり、受信側がこのようなICである場合は、わざわざ外部にダイオードをつけなくともよいことが分かります。




この方法でRS232Cレシーバを構成した例がELMRS-232C - TTLレベルの簡易変換方法でも紹介されています。

5V入力トレラント機能

一方で、入力段に寄生ダイオードを持たない入力トレラント機能を持ったロジックICも存在します。一例として4000シリーズ標準ロジックの4050を挙げます。
受信側にこのようなICを用いれば、電流制限抵抗さえ省略することが出来ます。

以下は、東芝セミコンダクターのTC4000BPのデータシートからの抜粋です。




入力電圧が0~18Vと電源電圧に依存していないことが分かります。
このため、3.3Vで動作させている4050に5V系の出力を直結しても4050は壊れることなく正常にレベルシフトを行います。
下図が、非トレラントICとトレラントICの入力段を比較したものです。




図のように、トレラントICは入力端子からVCCへの寄生ダイオードが入っていません。このため、高電圧を電流制限抵抗を介さず直結してもVCCへ過電流が流れ込むことが無いのです。

前半では、高電圧をかけるためにはダイオードによるクリップが必要であると書いておきながら、後半の入力トレラント機能を持つICではダイオードが入っていないから直接高電圧をかけることが出来るという主張をすることは、一見矛盾をはらんでいるように見えるかもしれません。
しかし、CMOSデジタルICの入力端子に高電圧をかける場合は、入力段のFETのゲート耐圧が問題の本質です。74HCシリーズ等の非トレラントICは、この耐圧が低いため寄生ダイオードが保護回路の役割を果たしています。一方で、4050の様なトレラントICはゲート耐圧が高く作られているので寄生ダイオードによる保護が必要ないというわけです。

tag: LTspice レベルシフト インターフェース 

レベルシフト 第二回:分圧型と入力レベル

前回、いろいろなパターンのレベルシフト回路を列挙しました。今回はその中で抵抗分圧を用いているタイプについて書きます。

5V出力→3.3V入力



出力電圧は以下の通り。



LTspiceでのシミュレーションは、以下の様になりました。






グラフ中の緑が入力信号の波形、青が出力信号の波形です。

出力電圧の式


において、R1=2.2k,R2=3.3k(誤差なし)とおきVinはLレベルとして0V、Hレベルとして5Vを入力という理想的な条件でシミュレーションしてあります。この条件では、分圧後の出力は3Vとなります。

±5V出力→5V入力



出力電圧は以下の通り。



LTspiceでのシミュレーションは、以下の様になりました。






グラフ中の緑が入力信号の波形、青が出力信号の波形です。

TTL互換バッファとCOMSバッファ

さて、この3Vという出力は、電源電圧の3.3Vより少し低い電圧ですが、きちんとHレベルと判断されるのでしょうか?
3.3V系の議論をする前に、5V系のデジタル回路の入力レベルの話をします。

理由は知りませんが、デジタル回路の動作電圧としては5Vが昔から一般的に利用されています。5V系の入力レベルとしてはTTL互換レベルとCMOSレベルが代表的です。(ただし例外もあります。)
TTL互換のことをTTLコンパチなどということもあります。

***

以下に示すのは、TTL互換入力レベルの代表例である74HCT04のデータシートからの抜粋です。




入力電圧"H"レベルVihの項を見ると、2.0Vが最小値であるとされています。74HCT04の入力端子に2.0V異常の電圧がかけられると、"H"レベルであると判断するということです。一方で入力"L"レベルVihの最大値は0.8Vとなっています。
ではこのICに0.8V~2.0Vの間の電圧、たとえば1.5Vの入力を与えたら"H"と"L"のどちらであると判断をされるのでしょうか。その答えは、「実際に電圧をかけてみるまで分からない」です。
74HCT04をはじめとするデジタルICは、入力電圧がある一定の電圧を上回ると"H"下回ると"L"と判断する基準を持っています。この基準値をしきい値とよびます。74HCT04のしきい値は0.8V~2.0Vの間のどこかにあります。しかしながら、具体的にどこにあるかは個体差や動作環境の違いにより変化します。
したがって、デジタルICに入力される電圧は確実に"H"または"L"と判断できる領域におさまっている必要があります。

***

以下に示すのは、COMS入力レベルの代表例である74HC04のデータシートからの抜粋です。




入力電圧"H"レベルVihの項を見ると、電源電圧Vccに依存していることが分かります。電源電圧Vccと入力"H"レベル電圧の最小値Vihの関係をプロットし、線形フィッティングしたのが以下のグラフです。
Vccが5VのときのVihは、約3.5Vと見積もることが出来ます。




Vccに対する"H"レベル入力電圧の最小値および、"L"レベル入力電圧の最大値をグラフにプロットし、線形フィッティングしたものが以下のグラフです。




74HC04のしきい値は、この2本の直線の間(のどこか)にあるということになります。

実際の設計(5V→3.3V)

実際の設計として、5V動作の74HC04から3.3V動作の74HC04へ信号を送るための分圧レベルシフト回路を考えます。
以下に示すのが、74HC04の電源電圧Vccと"H"レベル電圧の最小値Vinの関係のグラフです。Vcc=5Vのときの値に加えてVcc=3.3Vのときの値を示す破線を追加してあります。




5V出力3.3V入力のレベルシフタの実際の設計では、分圧後の"H"レベル出力電圧が誤差要因を含めて2.37V以上になればよいことが分かります。

***

誤差要因としては、出力電圧の降下と抵抗誤差を考えます。

まずは出力電圧の降下について。
"H"レベル出力電圧Vohは、電源電圧Vccと出力電流Iohに依存することが分かります。Vcc=4.5V,Ioh=-4mAやVcc=6.0V,Ioh=-5.2mAはGNDへの負荷抵抗Rlに換算すると約1kΩに相当します。この条件での電源電圧Vccと"H"レベル出力電圧Vohの関係を表したのが下のグラフになります。




グラフからVcc=5Vのときの出力電圧はVoh=4.68Vと読み取れます。

次に抵抗値の誤差を考えます。炭素皮膜抵抗の誤差は5%です。Voutが最小になるのは、R1が最大でR2が最小になるときです。




上の出力電圧の式にR1=2.2k*1.05、R2=3.3k*0.95を代入して




が得られます。これは2.37V以上という条件を満たします。

***

回路シミュレータLTspiceを使って視覚的に確認する方法もあります。以下はモンテカルロ解析を用いて抵抗の誤差が分圧後の出力にどの程度影響するのかをシミュレーションしたものです。






上のグラフから抵抗値のばらつきにより、分圧後の電圧がばらつくことが分かります。このばらつきがあったとしても、下のグラフのV(tx)とV(rx)をみると信号が正しく伝達していることが分かります。

手計算で最悪値を求めるにせよシミュレータで大雑把に見るにせよ、自分がどのようなモデルを考えていて他にどのような要因が考えられるかを把握しておくことが必要です。

tag: レベルシフト インターフェース LTspice 

レベルシフト 第一回:各パターン一覧

デジタル回路の異なる電圧レベル間のインターフェース用レベルシフトとして、さしあたって以下の4種類を考えます。

・Hレベルが高い側(5V)から低い側(3.3V)へのインターフェース (Lレベル共有)
・Hレベルが低い側(3.3V)から高い側(5V)へのインターフェース (Lレベル共有)
・Lレベルが低い側(-5V)から高い側(0V)へのインターフェース (Hレベル共有)
・Lレベルが高い側(0V)から低い側(-5V)へのインターフェース (Hレベル共有)

5V出力→3.3V入力

Hレベルが高い側(5V)から低い側(3.3V)へのインターフェース (Lレベル共有)

分圧型



出力電圧を分圧します。この回路の定数では、5V出力に対して3Vが得られます。

ダイオード・クリップ型



出力電圧をダイオードでクリップさせます。5V出力に対して3.3V+Vfが得られます。Vfはダイオードの順方向電圧です。
受信側IC内部の寄生ダイオードを利用すれば、D1を省略することができます。

3.3V出力→5V出力

Hレベルが低い側(3.3V)から高い側(5V)へのインターフェース (Lレベル共有)

反転型



NPNトランジスタを用いた基本的なエミッタ接地回路です。
出力論理が反転することに注意が必要です。

非反転型



NPNトランジスタを使ったレベルシフタですが、論理反転はしません。

±5V出力→5V入力

Lレベルが低い側(-5V)から高い側(0V)へのインターフェース (Hレベル共有)

分圧型



出力電圧を分圧します。この回路の定数では、0V出力に対して0Vが得られます。

ダイオード・クリップ型



出力電圧をダイオードでクリップさせます。0V出力に対して0V-Vfが得られます。Vfはダイオードの順方向電圧です。
受信側IC内部の寄生ダイオードを利用すれば、D1を省略することができます。

5V出力→±5V入力

Lレベルが高い側(0V)から低い側(-5V)へのインターフェース (Hレベル共有)

反転型



PNPトランジスタを使ったエミッタ接地回路です。
出力論理が反転します。

非反転型



PNPトランジスタを使ったレベルシフタですが、論理反転はしません。

その他

その他としては
・H/Lどちらも共有しないインターフェース
・絶縁インターフェース (GNDレベルが異なる)
・双方向インターフェース
等考えられますが、現時点では保留とします。

次回からは各型ごとに順に動作を見ていきます。

tag: レベルシフト インターフェース 

デジタル回路の簡易レベルシフト

昨今の電子回路では、消費電力を抑えるため電源電圧を低くすることがトレンドのようです。
そんなのアマチュアには関係ないといいたいところですが、そういうわけにも行かずSDカードなど5Vでは使えない(3.3Vとかで使う)部品が増え、一方で秋月のキャラクタLCD等5Vでしか使えないものもいまだに存在します。

最近・・・のものばかりではないですが、デジタル回路のレベルシフトに付いて、以下の様な記事を書いてきました。
異なる電圧レベル間でI2C
異なる電圧レベル間でI2C その2
3.3V系-5V系デジタル回路の簡易レベルシフト回路

折角なので、少しまとめてみようと思います。
扱う電圧レベルシフトは、「5V→3.3V」「3.3V→5V」「±5V→5V」「5V→±5V」の4種類としました。

tag: レベルシフト LTspice インターフェース 

FC2カウンター
カテゴリ
ユーザータグ

LTspiceAkaiKKRmachikaneyamaScilabKKRPSoCCPAOPアンプPIC強磁性常微分方程式モンテカルロ解析トランジスタode状態密度DOSインターフェースecaljスイッチング回路定電流PDS5022半導体シェルスクリプト乱数レベルシフトHP6632A温度解析可変抵抗I2Cブレッドボード分散関係トランジスタ技術R6452A数値積分反強磁性バンドギャップ確率論セミナー絶縁偏微分方程式非線形方程式ソルババンド構造熱設計カオスA/DコンバータISO-I2Cフォトカプラ三端子レギュレータシュミットトリガLEDGW近似LM358アナログスイッチ数値微分TL43174HC4053マフィンティン半径発振回路サーボ直流動作点解析カレントミラーPC817CUSB単振り子bzqlty開発環境BSch2ちゃんねる電子負荷イジング模型LDAチョッパアンプ量子力学補間アセンブラFFTブラべ格子標準ロジックパラメトリック解析基本並進ベクトルewidthキュリー温度QSGWGGA失敗談MaximaSMPTLP621スイッチト・キャパシタ熱伝導コバルト相対論スピン軌道相互作用六方最密充填構造繰り返しFETランダムウォークcygwingfortran不規則合金状態方程式ラプラス方程式抵抗スレーターポーリング曲線位相図格子比熱マントルデータロガー自動計測ダイヤモンドガイガー管QNAPUPS固有値問題条件分岐井戸型ポテンシャルシュレディンガー方程式詰め回路MCU第一原理計算起電力熱力学スーパーセルVCALM555仮想結晶近似awkTLP521NE555ubuntufsolveブラウン運動OpenMPVESTA最大値テスタ差し込みグラフFXA-7020ZRWriter509三角波TLP552平均場近似最適化最小値過渡解析LMC662トランスPIC16F785CapSenseMBEナイキスト線図CK1026フィルタP-10負帰還安定性EAGLEAACircuit2SC1815OPA2277PGAノコギリ波縮退非線型方程式ソルバL10構造fcc面心立方構造結晶磁気異方性TeX全エネルギー固定スピンモーメントFSMウィグナーザイツ胞interp1ヒストグラム確率論マテリアルデザインspecx.fジバニャン方程式等高線初期値フェルミ面正規分布c/agnuplotBaO岩塩構造ルチル構造ウルツ鉱構造ZnO重積分SIC二相共存スワップ領域リジッドバンド模型半金属合金multiplotハーフメタルデバイ模型edeltquantumESPRESSOフォノンifortUbuntuマンデルブロ集合キーボードRealforce関数フィッティングフラクタルクーロン散乱CIF化学反応三次元最小二乗法日本語直流解析PCトラックボールExcelTS-110パラメータ・モデル等価回路モデルTS-112疎行列文字列HiLAPW両対数グラフ片対数グラフ熱拡散方程式陰解法境界条件連立一次方程式Crank-Nicolson法グラフの分割軸ラベルヒストグラム不規則局所モーメント入出力円周率Gimp凡例線種シンボルMAS830L

最新コメント
リンク

にほんブログ村 その他趣味ブログ 電子工作へ