FPGA競技について
- ナンバープレースの問題を自動的に解くハードウェア(ソルバ)を設計して頂きます。
- FPGAに実装可能なハードウェアとなるよう、Verilog-HDL等で設計して下さい。
- ソルバの回路は参加者がご自分で用意された FPGA ボード上で動作させて頂くのが望ましいですが、CADツール上でのシミュレーションおよび合成のみでの応募も可とします。
入力
- ホストPCとFPGA間で通信を行い、9行9列のテキストファイルをFPGAに送り込む等の方法により、動作中のFPGAに問題を与えます。
- FPGA に送り込むことが難しい場合は、問題をFPGA内のROMにあらかじめ書き込んでおく(構成しておく)ことも可とします。
出力
- ホストPCとFPGA間で通信を行い、9行9列のテキストファイルをホストPCに送り出す等の方法により、実機上で解答の正誤の確認を行います。
- 実機上での確認が難しい場合は、解答をFPGA内のRAMに格納し、正誤はシミュレーションで確認をすることも可とします。
9x9のデータフォーマット
- 出題問題は0-9の数値が9x9の配列のテキストファイルで提示されます。
- 出題問題において、9x9の各セルに0-9の数値が代入されており、1-9の場合は固定数値、0はナンプレ問題の空欄を意味します。
- この値をどのようにハードウェア内部に格納するかは回答者が自由に設定できます
評価の方法
- 使用した回路リソース、動作周波数と所用サイクル数を報告して頂き、これと使用したFPGAの基本性能を勘案して、回路規模や性能を評価します。また、アルゴリズム的な工夫も勘案して、総合的に評価します。
- 事前に数問(5~10問)提供する予定です。
- 投稿の際に参加者自身で所要サイクル数の事前計測をお願いします。
- 入出力でホストPCと通信を行う際にかかるサイクル数は計測から除外します。
サンプル・テストベンチ
- model.tar.gzからダウンロードしてください。
- ナンプレを解くための Verilog プログラムとして作成したサンプル・テストベンチを提供します。ソルバは含めておりません。
- このテストベンチの使用は必須ではありません。ソルバ開発においてご使用いただいても構いません。
- サンプル・テストベンチは model.tar.gzからダウンロードしてください。
- ソースファイルについて
- TOP_MODEL.v: 最上位のwrapper
- test_top_model.v:TOP_MODELの実体。中でBOARD.vなどを呼び出す。
- BOARD.v:board構造体。内部に9x9(x4bit)の数値を格納した状態で開始する。
- GETEMPTY.v:参考構造体。BOARD上に空(value=0)の位置を探し、その座標を返す。
- BOARDCHECK.v:参考構造体。Board上に{val,raw,col}を代入した場合、ナンバープレースの条件を満たしているかを確認する。
- ソルバの実装方法
- 参加者が開発したソルバ・モジュールは test_top_model.v に加筆し、入出力を BOARD インスタンスと結線して下さい。
- サイクル数の計測方法
- 自分の良いタイミングで、BOARDにアクセス開始してください。
- アクセス開始時にP_CONFIG_ONGOINGを0→1にしてください。終了時に1→0に落としてください。
- 1になっている区間のサイクル数を計測します。
- 現在のBOARD構造体は1マスずつアクセスしております。このアクセス方法について改造はOKです。
- dataフォーマット
- NUM - 値、該当座標に登録されている数値を示す
0 : 未登録を示す。例えばリセット直後は明示的にこの値である。 (利用参照可能)
1-9 : その座標の値は該当数値に登録されている(利用参照可能)
10-15 : エラー。(利用不可、参照不可)
- ROW, COL - 座標を示す。
0 : 未登録を示す 。リセット直後の値であったり、座標回答Failを意味する(利用参照可能)
1-9 : その座標の値を示す(利用可能、参照可能)
10-15 : 利用不可能、エラー
提出方法
- コンテストに参加される方は「DAシンポジウム2024参加申込」と「ADC参加申し込み」を7/26(金)までに行って下さい。
- コンテスト参加者はDAシンポジウム当日にポスターセッションで発表頂くため、「DAシンポジウム2024参加申込」が必須です。
- 評価用の問題の配布やポスターセッションの詳細のご連絡などは、「ADC参加申し込み」をされた方にお送りいたします。
- 作品の提出方法は以下の通りです。
- 作品の提出は、das”at”sig-sldm.org 宛のメールでお願いします(”at”は@に変換してください)。
- メール本文には、「ADC参加申し込み」に記載いただいたお名前もしくはチーム名を明記してください。
- 作品の提出締切は 2024年8月21日(水) です。
- FPGA競技に関してご不明な点や各種ご相談を承ります(連絡先はコチラへ、nakmura”at”jp.fujitsu.com)