なにをするのか?
チップ内部に自由な回路をプログラム可能なFPGA,ここではXilinxのSpartanIIに往年のアーケードゲームPACMANの回路を丸々入れてしまおうという計画です。
FPGAの勉強とZ80-IPの評価が主な目的ですが、もちろんゲームとしてプレイ可能にします。
すでにFREE WINGさんがギャラクシアンを動作させ、可否については答えが出ていますが、こちらが回路図入力とZ80 CPUを外付けで実現されています。
ここでは、回路図の動作を把握した上で、HDL(Verilog)を使用して動作させます。
なぜPACMANでHDL(Verilog)か?
1.ポピュラーなアーケードゲーム回路の典型だからです。
PACMANが動けば多少の修正でPENGOなど別のゲームも動くようです。
画面描画の基本構造はあまりかわらないので、HDLで記述しておけば、より複雑なビデオ回路へ発展させていけます。
サウンド回路も他によく使われているもので、他に転用できます。
2.CPUがZ80である。
今回、FPGAインフォメーションバサロさんの有料Z80IPの評価を目的の1つとしています。
バグ修正されないため評価中断、オープンソースのT80に切り替えました。
CPUもSpartanIIに内蔵するので、FPGAの他に必要な部品は、データ用ROM、ビデオ用の抵抗とコネクタ、サウンド用のプリアンプとコネクタ、コントローラ用のコネクタです。
(この他に電源回路やコンフィグ回路などは当然ながら必要です。)