SDカードをFDD互換にするには、ソフトウェアでのエミュレーションもさることながら、ハードウェアの互換性も取る必要があります。
具体的には、ポート0xd0~0xd3をアクセス可能にします。 そのためには、現在の回路のアドレスデコードを変更する必要があります。 参考までに、以下が現在の回路図です。
現在のアドレスデコードはCPLDで行っていますが、拡張するにはピン数が厳しいです。 回路が上記のようになっているためです。
利用している入出力は以下のとおりです。
- アドレス(A15, A14, A7, A6, A5, A4)
- PCデータバス(D7~D0)
- AVRデータバス(D7~D0)
- PC制御信号(MREQ, IORQ, RD, WR, RESET)
- AVR制御信号(AVRWR, AVRRD, INT0, INT1)
- メモリ制御信号(ROMEN, RAMEN)
合計33ピン。 PLCCパッケージのCPLDでは入出力ピン数が34本までしか取れません。
上 記ポートをサポートするには、最低でもA1, A0を入力し、AVRに対して識別信号を出さなければいけないので、3本追加となり、2本ピン数オーバーです。 CPLDを一つ追加すれば余裕でサポートでき、244の機能も包含できますが、回路的には複雑になります。 逆に、基本ロジックでデコードの一部を出すことでCPLD1個での実現も不可能ではないですが、デコードそのものが結構複雑なため、ICが2個程度追加さ れることになり、あまりうまみがありません。
回路の複雑さは基板設計の複雑さに跳ね返るので、なかなか微妙なところです。
匿名
画面が真っ暗、でもカーソルは出てる状況。
探して、ここにたどり着きました。
パスワード入力で、復活!
修理に出す寸前でした。ホントにありがとう!