Tang Nano 9K top level module for vectrex
- Tang Nano 9K用のトップレベルモジュールと,周辺回路の回路図です.
- SourceForge DarFPGAにあったDE10-lite用のソースを改変して作りました.
- オリジナルのパッケージのREADME.TXTにあるように,下記のことを理解した上でご使用下さい.
- Educational use only
- Do not redistribute synthetized file with roms
- Do not redistribute roms whatever the form
- Use at your own risk
- SourceForge DarFPGAにある vhdl_vectrex_rev_0_2_2018_06_12.zip を展開する.
- 展開してできた下記フォルダを,vectrex_project/src/に中身ごとコピーする.
cp -a rtl_dar rtl_jkent rtl_mikej rtl_pace vectrex_project/src/
- ROMデータのvhdlファイルを用意して,romフォルダを作成してそこに置く.
mkdir vectrex_project/src/rom
cp vectrex_exec_prom.vhd vectrex_project/src/rom/ (必須)
cp vectrex_scramble_prom.vhd vectrex_project/src/rom/ (ゲームROMデータの例)
- Gowin EDAでプロジェクト vectrex_project.gprj を開いてビルドする. (ROMデータのファイルは,プロジェクトに適宜追加・削除して下さい.)
- 必要なROMデータは何らかの方法で入手して,オリジナルのパッケージに含まれるREADME.TXTに従ってvhdlファイルを作成して下さい.
- romの名前,サイズに応じて,rtl_dar/vectrex.vhdを適宜修正して下さい.(やり方はソースのコメントに書いてあります.)
- VGA出力,音声出力,キー入力は, hardware/tangnano9k-vectrex-peri-schematics.pdfの回路で動きました.
- たまたま手元にあった部品を使って作っただけなので,これが推奨回路というわけではありません.
- VGAの信号のバッファに74HC541を3.3Vで使ったけど,ちゃんと入力レベルと出力レベルを考慮した部品を使うべきかも.
- RGB信号に抵抗(150オームぐらい?)が必要かも.
- もしかしたらVGAをHDMI出力にして音声もそこから出せるような気がしますが,そのあたりの知見が無いので試せていません.
- 27MHzのクロックを25MHzとして使っています.Tang NanoのPLLで25MHzのクロックが作れるかもしれないのでその方がいいかも.(私はPLLの使い方を知らないのと,IPを使いたくなかったので27MHzのクロックのまま使っています.)
- このプロジェクトはあくまでFPGAを使う練習用の試みなので,バグ等があってもメンテナンスをする予定はありません.