F8 I/Oボード(その4: 8251の搭載)
汎用ロジックによるI/Oポートが動いたので、次は本命の8251を接続してみます。
回路はシンプルです。
SN74LS138NはAB2~AB7をデコードして8251のCSを作成しています。
マイクロプロセッサ・マイクロコントローラ等です。
汎用ロジックによるI/Oポートが動いたので、次は本命の8251を接続してみます。
回路はシンプルです。
SN74LS138NはAB2~AB7をデコードして8251のCSを作成しています。
8251の前にまずは単純なポートを試してみることにします。
テスト用のボード、ブレッドボードで十分な気がしますがどうも好きになれないので作ってしまいました。
機能は単純です。
IORに対しては下部ジャンパで設定した値をSN74HC541N経由でデータバスに送り込みます。アドレスをデコードしていないのでアドレスは任意です。
IOWに対してはアドレスの下位4ビットとデータの上位4ビットをSN74ALS574NでラッチしてLEDを点灯します。当初データのみの予定でしたがアドレスも見られたほうが便利だろうと変更しました。
これでIN
/OUT
命令実行時の動作と波形を見てみます。ロジックプローブの信号の対応は以下のとおりです。
前回メモリアクセスについて書いたので今回は本題のI/Oアクセスについてです。
最初はIN
命令です。
これまで不明だったリセット解除直後のX'0000'番地からのI/Oリード、X'0000'以外の値を返したら何が起きるか?ということでその3で予告したIORサイクルでデータバスに値を送り込む回路を追加しました。
空だったソケットにはSN74LS541Nを載せました。
下に並ぶショートピンの群れは値の設定用、8ビットのところで区切りがわかるように空けておきます。写真の状態でX'F010'を設定しています。
右上端のショートピンは74LS139でデコードしたIORを74LS541に供給するためのもの、抜けば"H"に固定されるので以前と同じ動作になります。
電脳伝説@vintagechipsさんの最新作SBCV20ルーズキット、発売と同時に注文したところ翌日に到着したので早速組んでみました。
今回は事前に必要な部品は確保していたので素直に組めました。とはいっても新規に調達が必要だったのは19.6608MHzのクリスタルのみです。
組み方としてはV20用のほか8088用にもできますが、8088は8088ボードで動かせているので今回はV20用で組むことにします。
2021年、今年もどうぞ宜しくお願いいたします。
さて昨年末に組み立てたまま動かずに悩んでいたSBCZ8002ですが、動作するようになりましたのでその顛末を書いておきます。
まずはすぐに使える周波数カウンタとテスタで見られるところから見ていきました。
A0はリセット直後は変化ありますがその後は"L"のままです。
A1~A11は次のような周期で変化し続けています。
愛用しているアセンブラAS、最近Z8000に対応しました。そういえばZ8002のボードSBCZ8002を買ったままになっていたのを思い出し、組み立ててみました。
いつもの 電脳伝説@vintagechips さん作のボードです。
先日のSBCF8ではいくつか手持ちのない部品があって代用しましたが、今回は必要な部品はすべて手持ちがあったので買出しなど不要でいきなり組み立てに入れました。