この世のCPUを食べ尽くすのだ! 第3章 第3節 第3項
~あんたCPUなんか創ってどうするのよ?! Vol.3~
2018/10/8
技術書典5 け39
第3章 第3節 第3項 RAMのデータ入出力端子
HM6148は4ビット幅のRAMなので、これがそのままデータバスに接続されます。他の出力回路、つまりCPUの出力ポートである74HC573や、I/Oポートにある他のデバイスと衝突しないように制御する必要があります。通常はハイインピーダンス状態なので衝突は起こりません。
IN命令実行時にはRAM内のデータがデータ入出力端子に出力されますが、その時はCPU側の出力ポートである74HC573をハイインピーダンスにする必要があります。これはRAMからのデータ出力をクロックが0の期間だけに制限することで実現します。具体的にはクロックが1の間はCS端子を1のままに保つことで、RAMからの不用意なデータ出力を防止し、同時に74HC573もクロックが1のうちにハイインピーダンス状態を確定させることで衝突を防ぎます。
OUT命令実行時のRAMへの書き込みには、前述のようにCS制御モードを使いますので、CS端子よりも先にWE端子を0にするように制御する必要があります。これは次項で説明します。