Last Updated on 2017年9月27日 by kabekin
ちょっと脱線して8インチFDDI/Fカードの空きスペースに実装したいDI/DOを考えてみました^^
6821(PIA)を使った汎用I/Oです。
IC数の削減を目指してS1/L3の拡張I/O空き領域$FF7C~$FF7Fに割り当てます。
#EXIO信号を使って全IC数は5個+PIAでした
バスバッファが無ければIC3個^^
34ピンのリボンケーブルコネクタを付けても空きスペースはありそう^^
いろいろ考えていると6821の使い方はS1でも勉強できるので8255(PPI)のI/Oの方がいいかも・・・
と、いうわけで同じく$FF7C~$FF7Fで8255を割り当ててみました。
8255使用時も全IC数は5個+PPIでした・・^^
6809に80系を接続する方法はマイコンピュータ誌のNo.2 P.36を参考
これで8255A-5を使って2MHzまでOKだそうです。
但し、注意点としてSTXやLDXなど16ビットでのレジスタのやり取りは1MHz環境でも無理のようです。
その他、6522(VIA)やZ80-PIO等もありますがよく知らないので8255がいいかも・・・
8255が自由に扱えるようになればL3やS1に日電のインテリジェントドライブを接続できるかも^^
6821か8255かどちらにしよう(^^)
配線開始までは数ヶ月かかると思われるので、
使い方間違ってるよぉ~などお気付きの点などありました突っ込んで下さい^^
9/28追記
回路が思いっきり間違えていたので手直し・・・
6821版
8255版
真夜中の寝ぼけた頭で考えたものは、明るい時間に見直さないといけませんね^^;;;
とりあえず気づいた点を:
74LS30はNANDゲートです。
8255使用時のEX I/Oが正論理になっています。
指摘頂きありがとうございます
確かにLS30はNANDですね。
私の間違えた工作ノートを元に考えていたので危ないところでした・・・
と言っても#EX I/Oを反転せずにデコードしようとしているので、どちらにせよ間違ってますね
お恥ずかしい
ネットで調べればすぐに探せる時代ではありますがIC規格表を手元に持ってきたいと思います。
回路は手直ししました^^;;
私はロジックICの型番と機能の対応をなかなか覚えられないので、専ら回路図エディタに頼っていますが、それでも正論理、負論理はよく間違えます。
話は変わりますが、今月のトラ技(2017年10月号)は、プリント基板特集でKiCadの使い方などが載っているようです。
回路図エディタは便利ですね。
前回、トラ技にKiCadの特集があったときは時間があったのでかなり練習しました。
DesignSparkは挫折しましたがKiCadは情報が多めですね。
講習会などあれば参加してみたいのですが広島では無理そうです・・・^^;;
HWには疎いのでなんとなく理解のレベルです・・・
~EXIOというのは物理アドレスで$EFFxxを示す信号と理解しましたが、合っていますかね?
6809とPPI(8255)を接続するときは6809のEとQのどちらかがHIのときに読み書きできるという意味でしょうか?
6809でPPIに対して16ビット単位でアクセスできないというのは
おそらくタイミングが合わないからなんでしょうね。PIAだと大丈夫なのか気になります (^^;
S1やL3の#EX-IOや#EX-IO2はアドレスでコードを楽できるIO範囲の信号です
この信号を使うと#EX-IOで$FF00~FF7F、#EX-IO2は$FF80~FFBHのデコードを省略できて配線が楽できます
現在出張中で参考にした本が手元に無いので正確には分かりませんが6809に80系のチップを接続するときは、この回路が鉄板とのことでした・・・
8255を6809に接続する場合上記の回路で#RDや#WRを作っているので1命令で16ビットのデータを扱うには間に合わないそうです。
68ファミリのPIAでは全く問題無いようです^^