CPU実験室

誰も見向きもしない古いCPUをいじって動かしてみようというプロジェクトです

デコード変更

ハードウェアでロジックを追加し、もうこれで大丈夫と思って電源を投入したら・・・
今度はモニタが起動しなくなりました。
 
考えれば理由は明らかです。
現状のNDPチップセレクトは単にアドレスバスのA3~A7をデコードしているだけなので、
これでデータバッファを閉じてしまうとメモリの**F8~**FFも読めなくなってしまいます。
もしプログラムコードをフェッチ中であればそこに到達したとたん暴走するわけです。
 
イメージ 1
 
 
というわけでCPLDのロジックを修正しNDPチップセレクトにI/Oへのリードライトである/IORDと/IOWT
を加えました。
これで本当にNDPをアクセスするときだけバッファが閉じることになります。
NDPには既に/IORDと/IOWTがつながっているので冗長なロジックですがまあ良しとします