SSブログ
English Version

レトロマイコン86ボードの構想(その24)16MHz動作実験4 [8086]

 PICからV20(クロックのhighレベルは規格上0.8xVdd=4V以上)へ供給するクロックの電圧レベル変換回路の検討中で、前回記事の「レトロマイコン86ボードの構想(その23)16MHz動作実験3」の末尾で書いたように手配していたFETが届いたので評価結果のダイジェストを書いてみます。

 始めにFETを使ったレベル変換に関しては下記のレベル変換ボードの説明にあるように双方をそれぞれの電源電圧で吊り、更にゲートを低い方の電圧で釣ることで双方向のレベル変換に対応できます(電圧の低い側をソースに接続)。
 ネット上でも「FETで異なる電圧のインターフェース」や「3.3V 5V レベル変換」に同様な回路が示されています(前者は方向固定の例で入力側のプルアップが省略されている)。

レベル変換ボード説明書(抜粋)


 海外に注文していたNMOS FETの2N7002が届いたので(実はかなり前に届いていた^^;)下図の回路で評価してみました。

レベル変換評価回路


 まずは 3.3V → 5V 変換からです。

 下図が10KHzと100KHzの矩形波入力時の波形で黄色(ch1)が入力で水色(ch2)がレベル変換後の信号です。
 左側の10KHzの方は問題ないように見えますが、右側の100KHzでは立上り時にFETのオフに遅延が発生して3.3V側に接続されている状態が発生しています。

3.3V -> 5V (10KHz) 3.3V -> 5V (100KHz)


 下図の500KHzではプラス側の末尾の1/3で5Vへ向かって推移していますが始めの2/3は3.3Vのままの状態です。
 上の100KHzの波形と合わせてみるとFETがONからOFFに推移し始めるのに1us弱の時間が掛かっているようです。

3.3V -> 5V (500KHz)


 V20のクロックとして使用する8MHzと16MHzではプラス側の全領域が3.3Vになってしまっていてレベル変換回路の効果がなくなっています。

3.3V -> 5V (8MHz) 3.3V -> 5V (16MHz)


 これらの現象は前回の記事で書いたトランジスタによるレベル変換回路で生じた現象と酷似しています。
 トランジスタ回路ではベース抵抗にスピードアップコンデンサを付けて改善できましたがゲート抵抗はないのでもっと高速なFETを使うのがいい?(入力信号はきっちり立ち上がっているのでドライブ不足ではないと思う)
 2N7002のデータシートを確認するとTurn-On Delay TimeとTurn-Off Delay TimeがどちらもMax 20nsになっているのでスペック的には問題なさそうなのですが・・


 5V → 3.3Vの変換方も同様の傾向が見られます。
 黄色(ch1)が入力側で水色(ch2)が3.3Vへの変換後の信号です。

5V -> 3.3V (10KHz) 5V -> 3.3V (100KHz)


5V -> 3.3V (500KHz)


 因みに下図のような単純なプルアップ回路では500MHz時点で完全にスイッチングが追い付かない状態になりました。

単純なプルアップ回路


単純プルアップ(100KHz) 単純プルアップ(500KHz)



 他のFETでも試した方がいいかもしれませんが、やはり前回記事で書いたトランジスタ方式の方がいいかなぁ~ という感じです(実際16MHzでV20が動いているし)。
 いっそトランジスタを2個使ってプッシュプルドライブ回路にでもしてみる?(でも部品が増えるのはちょっと)


 一点気になることは・・・今回使用した海外から調達した2N7002のマーキングが「7002」になっていることです。

 DIODESのデータシートでは下図のように書かれています(メーカーにより刻印文字は異なるのでしょうが)
 SOT-23の小さなパッケージをリマークするのは手間賃の方が費用が掛かりそうなので本物だとは思うのですが・・

 秋月さんのHPを見ると2N7002は2件ヒットし、2つとも”K72"と書いてあり下記のマーキング仕様に準拠してますね。

2N7002のマーキング仕様(データシートからの抜粋)



★追記 2020/11/03
 neko Javaさんからプルアップ抵抗を小さくしてみては?とのコメントを頂いたので 3.3V -> 5V変換時の5V側のプルアップ抵抗を10Kから1Kに変更して確認してみました。
 前回記事のトランジスタ回路ではプルアップ抵抗を色々変えて試していました(この時は解決策が1つも見つかっていなかったので)が今回は少し潔すぎたかもしれません^^;

 下図が500KHzと1MHzでの確認結果で、500KHzでは10Kプルアップ時と同様に立上り直後にFETのON状態が残留し出力が3.3Vで、プルアップ抵抗を小さくしたことで立下りがかなり鈍っています。
 1MHz側の立上りは最初から5Vに遷移する右上がりの状態になっていますが、これは入力がlowの時にFETが完全にONしきっていなかったためと思います。

3.3V->5V:Pull Up 1K (500KHz) 3.3V->5V:Pull Up 1K (1MHz)


 下図は8MHzと16MHzの場合で、High側はかろうじて4Vに達していますが、Low側がプルアップ抵抗に引っ張られて1V以上になっています。
 V20HLのクロックのlowレベルの規格は 0.15xVdd 以下なので今回の場合は0.75V以下にする必要があります。
 また、16MHzのケースでは振動現象が現れ、その2、その3の図に示したように出力が一定周期で2V程度の幅で上下しました。

3.3V->5V:Pull Up 1K (8MHz) 3.3V->5V:Pull Up 1K (16MHz)


3.3V->5V:Pull Up 1K (16MHz)その2 3.3V->5V:Pull Up 1K (16MHz)その3


 結果としてプルアップ抵抗を小さくすると立上り時の問題はほぼそのまま(5Vへの遷移開始タイミングは早くなった)でlowの時の電圧が上がってしまうということが判りました。

 MOS FETは一般的にオン抵抗が小さいという印象でデータシートにもVgs=5V、Id=0.05AではTypicalで3.2Ωと記載されています。

 データシートにあるオン領域特性グラフ(下図)からVgs=3.0Vの場合の線形領域を延長してFETの抵抗値を求めてみると20(=4/0.2)Ω程度になりますが、これはあくまでも静的特性であって、今回の様な過渡的な状態では当てはまらないということだと思います。

On-Region Characteristics (2N7002)



[TOP] [ 前へ ] 連載記事 [ 次へ ]

nice!(0)  コメント(5) 
共通テーマ:趣味・カルチャー

nice! 0

コメント 5

neko Java

二つの10KΩの抵抗値を小さくしてみてはどうかな?
5V側のだけでもいいかもしれない。
by neko Java (2020-11-03 01:41) 

skyriver

今日は文化の日^^
5V側のPullUp抵抗を1Kにした場合の試験結果を追記しました。
by skyriver (2020-11-03 15:07) 

neko Java

抵抗を小さくしてLOWが上がってしまうのは信号源のドライブ能力の問題。(「単純なプルアップ回路」の抵抗を1KΩにした場合はLOWはそんなに上がらないはず)

実験上の信号源に何使ってるか知らないが、PICならデータシートを見ればLOWレベル出力時の吸い込み可能電流を調べればわかる。

信号源のドライブ能力を上げるのは部品追加になるし、もっとf特のいいFET使うしかないですね。

普通の部品で16MHzのレベル変換はきつい。単方向ならただのアンプかコンパレータでいいんだが。
by neko Java (2020-11-04 02:10) 

skyriver

信号源はシグナルジェネレータ(MHS-5200A)で500KHzと1MHzでは入力波形がきっちりグランドまで落ちているので信号源側のドライブ不足ではないと判断しています(8MHz,16MHzではSGの矩形波出力周波数の上限(6MHz)以上なので波形が丸まっています)。
by skyriver (2020-11-04 07:18) 

neko Java

SG使ってるのね。

「単純なプルアップ回路」の抵抗を小さくしてもダメならそもそも無理なんだろうけど、波形がヘンテコなのが気になりますね。

VDD 3.3V(Gの電圧)が変動してないかな?
by neko Java (2020-11-05 02:56) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。