CPU実験室

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

デコーダ設計

アドレスデコーダの仮設計をしておきます。CPUから出力されるアドレスバス、制御信号はとりあえず以下のように2個のGAL22V10に引き込んでおきました。

 

f:id:O3I:20201026184504j:plain

まず上側のGALでざっくりROM、RAM、I/Oのアドレス空間を決めてしまいます。

32ビットアドレスのうち上位11ビットしか引き込んでないのでフルデコードしても1ブロック2Mbyteとなります。ROMはアドレス前半、RAMは後半、I/Oは真ん中ぐらいに置きました。

f:id:O3I:20201026184517j:plain

 

I/Oブロックは広すぎでイメージだらけになるので2個目のGALでさらに下位アドレスをデコードします。

f:id:O3I:20201026184529j:plain

 

WinCUPLで初めて実用的なロジックを書いてみましたがわりとすんなりコンパイルも通りJEDファイルができあがりました