K68-VDG ビデオボード REV1.1 (☆シルク印刷バグ付きw)

MC6847

以前MC6847の水平同期タイミング信号(HS#)を6303マイコンのI/Oで読み取って、ノイズ軽減したK68-VDG ジャンパ線版が動いたので、その機能の追加と REV1でのバグも直して REV1.1基板を作りました。いろいろとありましたが、トランジスタのシルク印刷バグが残っちゃいました。

K68-VDG ビデオボード REV1基板のバグ修正について

K68-VDG ビデオボード REV1基板ですが、以下のバグ(&直したいところ)がありました。

  • VRAMアドレス $A000、$C000切り替えが変
    • SRAMとかデータバスバッファ切り替え信号に$A000が直接接続されていた
    • $A000をVRAMアドレスとする分には支障なし
  • トランジスタのフットプリントが狭いタイプではんだ付けがしずらい
    • トランジスタのフットプリントの見直しをしてなかったため、足の間隔が狭く老眼にはつらいパターンとなってました

次のリビジョン基板では上記は直したいと思ってましたんで、REV1.1基板では修正しています。REV1.1基板はgithubの以下のリリースに入ってます。回路変更は一部だけでしたのでREV1.1としましたが、部品配置はだいぶ変更していまいました。
※後述しますが、REV1.1もシルク印刷にバグありとなってしまいました m(_ _)m

Release リリース1.1 (REV1バグ修正) · kuninet/K68-VDG
リリース1.1 REV1バグ修正版です アドレスラインに$A000が残ってたバグを修正 HS#、FS#信号線をSBC68系バスに出しました。(ソフトウェアでのタイミング用) ★既知のバグ ガーバーデータに誤りがあり、2SC1815と2SC1015のシルク印刷が逆転しています。Q1、Q2の部品番号シルクが正しいです...

MC6847 水平同期タイミング信号をSBC68系バス I/Oポートへ接続

MC6847 水平同期タイミング信号をSBC6303用バスのI/Oポートへ接続することで、プログラム中でVRAMアクセスする際にノイズが出ずらいタイミングを見計らって更新できるように改良しました。

接続したI/Oポートは、以前の記事でジャンパ線をつないで確認したときの仕様と合わせてP11、P13ポートにしました。この信号のH→Lの状態をソフトウェアで確認することで、VRAM更新した際の画面ノイズが軽減されるはず。

プリント基板製造はJLCPCB(ネコポス)で総額 3ドル

プリント基板ですが、久々にJLCPCBさんに依頼してみました。以前は輸送にDHLを指定していたんですが地方在住のため送料に追加チャージ($20以上)がかかるようになっちゃってて、しばらくは注文できていなかったんですが….
TwitterでOCS NEPというものを選ぶと国内はネコポス配送で、かつ$1送料というのを見まして頼んでみました。

PCB Prototype & PCB Fabrication Manufacturer - JLCPCB
Industry-leading PCB prototype manufacturer,offers 24 hours Quick Turn PCB prototype, PCB assembly and Reliable small-batch PCB production.

JLCPCBさんで上記のように配送方法で「OCS NEP」を選ぶと$1ぐらいの価格が出ます。(今年にはいってちょっと送料上がったかな?)
10cm x 10cmまでのガーバーデータだと、5枚で$2で製造していただけます。なんと$3で送料込みでプリント基板製造していただけるわけであります。破格です。

JLCPCBさんは製造も超早くて、11月にこの基板を頼んだ時はこんな感じのスピード感でした。速いです!

DHLだと配送に回ってから日本到着して通関通ったら翌日には届く感じですが、OCS NEP(ネコポス)経由だともうちょっと時間がかかります。でも以下のような感じで配送に回ってから1週間程度で届きますので、十分速いのであります。また国内配送がネコポスですからポストインしてしていただけるということで在宅の必要なし。素晴らしいです!!

プリント基板届いて組付け~動作確認~ノイズがー..

プリント基板が無事届きまして、部品組み付けをしていたところ2つ搭載しているトランジスタ(2SC1815、2SC1015)のシルク印刷した部品名が逆になっていることに気づきました。逆にトランジスタを装着するとビデオ信号が出ないはず。とほほ

わかりやすいようにとつけたシルク印刷の部品名が入れ替わっているという間抜けな間違いでありました。部品番号はQ1、Q2は回路図と合ってますので、そちらを信じて装着してください。

部品組み付け後、SBC6303とくみあわせて 以前も動かしたサンプルプログラムをいろいろと動かしてみて、イイ感じで動作することを確認しました。

電源ONでVRAMのランダムなデータを画面表示OK。ASCIIキャラクタ表示プログラムOK。

VRAM書き込みタイミングをとったライフゲームのプログラムも動いたのですが、以前のREV1基板の際出なかった謎な赤いキャラクタが2か所出現しました。全体的なノイズは出ないものの、書き込んでないはずのVRAMが変則的にデータ化けしている模様???? 謎。

原因究明のため…

原因究明のため、SBC6303のLILBUGモニターでVRAM領域を手動書き換えしてみたりしまして、やはり書き換えたVRAM位置より先のアドレスが勝手に書き換わって色がつく現象が再現するのであります。

VRAM用に搭載しているSRAMのアドレスバスとWR#(書き込み)信号をロジアナで観測してみたところ、上記のようにデジタル信号が一部ハネていました。原因は不明ですがノイズが乗ってます。このノイズのせいで変なアドレスに書き込みが起こってしまうと思われます。

事象は見えてきましたが原因がわかりません…

原因判明(ICの足が曲がってました)

ロジックICに74HCTシリーズ(CMOS型)をつかって稼働確認していたりしたのですが、いちど全部のロジックICを74LSシリーズへ取り替えてみようと ICを取り外していたところ、データバスのバッファにしていた74HCT245の足が曲がっていたことが判明しました!! これにより接触不良になって、動作が不安定になっていた模様!!
自分の部品実装ミスが原因でした。(T-T)>

ロジックICの足が曲がらないように注意してICソケットへ再装着しまして、ライフゲームプログラムを再実行してみたところ、以下のように無事 意図しないVRAMが書き換わることもなく、VRAM書き替えノイズも発生せず動作することが確認できました!!

K68-VDGビデオボードは、回路としては問題ないことが確認できましたので、トランジスタ名のシルク印刷を修正して、そのうちREV1.2をつくりたいと思います。ちょっと負けた気分ですが。^^)

コメント