その前に、Z80てなに?ロボット?って人に向けて簡単に解説。
(詳しくはググった方がいいかも…)
Z80は、今から30年以上前に開発された、8ビットのCPUです。
これは、Z80よりも先に開発されたIntelの8080の改良型であり、
・命令の追加
・電源の+5V単一化
・必要とするクロックの単相&TTLレベル化
などが組み込まれました。
クロックについては、8080には12Vのものが必要だったようで……相当苦労していた、という話を聞いたことがあります。
そして、このZ80の特筆すべき機能に、「モード2割り込み」というものがあります。
これは、周辺のICにZ80ファミリの石を使わなければなりませんが、その代わりにメモリのどの位置でも間接的にコールすることができるというものです。
モード0とモード1は、ジャンプ先アドレスが固定で変更できませんが、モード2を使えばエラーごとに違う処理をさせることができたりします。たぶん……
で、今はCP/MというOSが走るZ80マシンを組もうとせっせこ図面を引いてます。
CPU・DMA周り。
DRAMを使った場合のメインメモリ。
自分で設計したSRAMを使った場合のメインメモリ周り……なのですが。
この回路、よく見ると欠陥が……
はい、このままだとROMと下位側のRAMの信号が競合してしまうんです。
なので、下位側のRAMの/CSにROMEN信号も使って制御しないといけません。
よって、書き直し!なわけですが。
ま、ぼちぼちやってます。
如何せん、資料もほとんどないしICの中にももう生産されてないのがあったりするし……
この回路図の基となっているのは、「放課後の電子工作」様のデュアルZ80マシン、「Lynx」です。
管理人のちあきさん、回路図の提供ありがとうございます。
……さぁて、図面引こ。
0 件のコメント:
コメントを投稿