SSブログ
English Version

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

 前回の記事でPICから選別したV20へ供給しているクロックをトランジスタでレベル変換してV20が16MHzで動いたことを書きました。
 しかし、信号の確認はロジアナを使っており、波形を確認できていませんでした。

 注文していた最大帯域250MHzのUSBオシロ(HANTEK6254BC)がやっと届いたので、今回は波形確認結果等を自分へのメモも兼ねて記載しておきます。

 記録として画面キャプチャを多く貼り付けていて記事内容としてはあまり面白くないと思いますので最初にお断りしておきます。

 前回の記事で書いたようにPICからのクロックを下図の回路でレベル変換してV20に供給するように改造しました。

レベル変換回路


 Pic24V20ボード上のPIC出力のクロックとV20に入力されるクロックの波形を確認した結果が下図になります。
 ch1(黄色)がPICからのクロック出力でch2(水色)がレベル変換後のV20へ供給されるクロック波形です(以降のシンクロ画面も全て同様)。

8MHzクロック波形 16MHzクロック波形


 折角レベル変換したのに最大電圧が4V程度になってしまっていますorz
 再度ブレッドボードで100KHzの信号を使って確かめてみるとトランジスタがoffするのに1.7us程度の時間がかかっている(この間、出力は3.3V)ことが判りました。

レベル変換入出力波形(100KHz) レベル変換入出力波形(8MHz)


 そこで常套手段としてベース抵抗にパラでスピードアップコンデンサを付けてみました。
 コンデンサの容量の目安としては
※参考 https://cc.cqpub.co.jp/system/contents/2430/

   τ = CR
 → C = τ / R
     = 1700n / 10K
     = 170 [pF]

となるので手持ちの部品の中からマージンを加味して220pFで実験しました。
 100KHzと800KHzの場合の波形が下図で100KHzでは想定通り立ち上がっているように見えますが、800KHzの方を見ると立上り時間が100ns弱掛かっています。

スピードアップコン追加後(100KHz) スピードアップコン追加後(800KHz)


 コレクタのプルアップ抵抗を1Kから330に変更した結果が下図です。
 8MHzの矩形波は私のシグナルジェネレーターの限界(矩形波の上限は6MHz)を超えているのでかなり鈍った波形になってしまっていますが変換後のクロックはかろうじて5Vまで達しています。

プルアップ抵抗1K⇒330(800KHz) プルアップ抵抗1K⇒330(8MHz)


 元々の改善目標であった16MHzでの波形が下図で左は試しにプルアップ抵抗を660にした場合で、右側は330の場合です。
 660の場合はV20へ供給するクロック(水色)の電圧がが3V程度までしか上がっていません。
 強引に釣り上げている感はありますが330では16MHzでも5V付近まで上がっています。

プルアップ抵抗660(16MHz) プルアップ抵抗330(16MHz)


 ブレッドボード上で試行錯誤するのも何なので文明の利器(シミュレータ)を使って確認してみましょう。
 左はスピードアップコンデンサ無しでの50Hz矩形波の場合でトランジスタのoff遅れが1.5ms程度発生していてブレッドボードでの実測(1.7us)と大きく異なる結果になりました・・
 右側はスピードアップコンデンサを入れた場合立上りが俊敏になっています。

スピードアップコン無し(50Hz) スピードアップコン有り(50Hz)


 クロック1MHzで確認して見ると左下図のように出力が立ち上がらないのでプルアップ抵抗を330にしたものが右下図です。

スピードアップコン有り(1MHz) プルアップ 1K⇒330Ω(1MHz)


 プルアップ330Ω側は出力が立ち上がりかけているので時間軸を長くして確認してみましたが出力が立ち上らない(左下)のでスピードアップコンデンサを10uFにしたものが右下です。

PullUp:330 SpeedUp:0.2uF(1MHz) PullUp:330 SpeedUp:10uF(1MHz)


 試しにプルアップ670(左下)と1K(右下)の場合も立上りに時間がかかりますが5Vまで立ち上がっていました。

PullUp:670 SpeedUp:10uF(1MHz) PullUp:1K SpeedUp:10uF(1MHz)


 立上り後の波形をズームしたものが下図で右側(プルアップ1K)の方は立上りが少し鈍っているのが判ります。

PullUp:670 ズーム(1MHz) PullUp:1K ズーム(1MHz)


 最終目的のクロック16MHzでプルアップ330の場合のシミュレートが下図です。右側のズーム波形からはプルアップが強すぎる感もありますが前述のブレッドボードでの実験からは330の方が望ましいという結果が得られています。

PullUp:330(16MHz) PullUp:330(16MHz)


 以上、ブレッドボードでの実験とシミュレータ(LTspice)での確認の結果について書きましたが、今回の作業で

  • シミュレータでの再現性
     今まで何度かシミュレータを使ったことがありますが、今回のように実験結果とかなり異なる結果が出たのは初めてです。
     扱う周波数が高いことが主な原因かと思いますが、ネットからダウンロードしたトランジスタ(SS8050)のパラメータがランク別になっておらず少し怪しげでもあります。
  • 実験環境
     今回は新調した最大1GサンプルのUSBオシロを使ってみましたが数十MHzオーダーの波形が目で見えるのは素晴らしい!
     シグナルジェネレーターの方は少し性能不足でしたが矩形波ならPICで出せよ(>自分)って感じですねw


 最後に実機(Pic24V20)に実装した結果についてですが、スピードアップコンデンサ220pFを付加した場合の波形が下図です。
 右側の16MHzの方はほとんどサイン波形になってしまっていますが、それよりも最大2V弱までしか上がっていません。
 5Vにレベルシフトするための追加ですが逆にレベルダウンしてしまっていますorz

Pic24V20 SpeedUp:220pF(8MHz) Pic24V20 SpeedUp:220pF(16MHz)


 スピードアップコンデンサを取り除き、コレクタのプルアップ抵抗を330Ωにした場合の波形が下図で右側の16MHzでも最高電圧が4Vを超えるようになりました(選別したV20でCP/M-86も動いています)

Pic24V20 PullUp:330(8MHz) Pic24V20 PullUp:330(16MHz)


 今回のPICからのクロック供給に関して、ゲートICを追加すればすごく簡単なのですが、ゲートICの内部回路ではアクティブ素子が複数使われていて、これを1個のトランジスタで代用しようとすることがそもそも無理があるのかもしれません(でもこういう無理に挑戦するのも面白い)

 また、FETを海外に手配中なので届いたら実験してみたいと思います。


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

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