Z80 マイコンシステムを作ろう(その2)
前回は,Z80 とホスト PC をインターフェースするボードをプリント基板にしてみました。
今回は,お馴染みの Z80 を搭載した CPU ボードを作ります。
特に代わり映えしない Z80 ボード
基板業者に発注して,出来上がってきた基板です。
これに部品を実装します。
クロックオシレータ,CPU,バスバッファ,SRAM といくつかのロジック IC で構成されています。
左上のネジ穴位置,ミスってます(笑)。毎回何かしらミスをしているような…。
ROM と RAM 兼用メモリも搭載
このボードは CPU の他に,インターフェースボードとバスを排他制御するためのバスバッファを付けています。
また,ROM にも RAM にもなるバッテリバックアップされた 1Mbit の SRAM も載っけてます。
ですので,これだけでも,Z80 コードを動作させることは可能です。
1Mbit = 128KB ですが,当然,Z80 の 64KB のアドレス空間では,このメモリの全てにアクセスすることはできませんよね。
これは,いわゆるバンク切り替え的な手法で,メモリのアドレス空間を Z80 のアドレス空間に動的にマッピングするようにしています。
ただ,このマッピングするときのセレクト信号ですが,今回のボードでは生成できないので,バンク切り替えを制御する別のボードから与える予定です。
また,SRAM はバッテリバックアップできるようにしていますが,このバックアップは,電気二重層コンデンサ(スーパーキャパシタ)で行います。SRAM 近くにある青いコイン型のやつですね。
これは,要するに容量の大きなコンデンサですが,通電時に充電され,電源を切った後は,こんどは充電した電荷で,メモリをバックアップします。
一回フル充電するとそこそこ長持ちしますが,当然,長期間電源を入れていないと,いつかは放電して空になってしまいます。
でも,たまに電源を入れてあげれば,半永久的にバックアップしてくれるし,価格も安いので,結構便利です。
ボードを接続
インターフェースボードと接続してみました。なんかこの感じだと,また,縦に積まれていく予感がしますよね…(笑)。
動作確認
動作確認は,前回と同じような感じですが,今度は Z80 から,ディップスイッチ読み込みと,発光ダイオードのアクセスを行ってみました。
また,ホスト PCからも,Z80 の動作を確認できました。まぁ特にここまでは問題はないようです。
やはり,何かしら入力や出力がないとインパクトが無いですよね…。
次回は,メモリのバンク切り替え制御と,キーボードから入力できるようにしたいと思います。
何となくマイコンシステムっぽくなるかな…。