Handel-Cを用いた パックマンの設計

Slides:



Advertisements
Similar presentations
DATE : 11. メモリ 五島 正裕 今日の内容 メモリ  SRAM  DRAM  Flash Memory.
Advertisements

FPGA 株式会社アプライド・マーケティング 大越 章司
Chapter11-4(前半) 加藤健.
第12回 順序回路の解析方法 瀬戸 順序回路から,以下を導き、解析を行えるようにする タイムチャート 状態遷移関数・出力関数 状態遷移表
ハードウェア記述言語による 論理回路設計とFPGAへの実装 1
LZ圧縮回路の設計とハード・ソフト 最適分割の検討 電子情報デザイン学科 高性能計算研究室 4回生 中山 和也 2009/2/27.
SOIピクセル検出器用 Digital Libraryの開発
ブロック運びゲーム.
計算機システムⅡ 主記憶装置とALU,レジスタの制御
計算機アーキテクチャ特論Chapter.6.6~6.9
班紹介 描画班一同.
POWERSHOW Limited DVR-POS システム 小売業者のための理想的な損失防止DVRシステム.
Handel-C基礎 および 7セグとマウスのハンドリング
Verilog HDL 12月21日(月).
テープ(メモリ)と状態で何をするか決める
Handel-Cによる       エアホッケー.
オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道
クロスワードゲームの 作り方を学ぼう/やってみよう ‐ボードゲームの動作機構‐
情報科学1(G1) 2016年度.
首都大学東京 都市教養学部数理科学コース 関谷博之
第7回 卒研進行状況 04A2029           古賀慎也.
CSP記述によるモデル設計と ツールによる検証
画像処理ボード上での 高速テンプレートマッチングの 実装と検証
デジタル回路(続き) コンピュータ(ハードウェアを中心に)
高山建志 五十嵐健夫 テクスチャ合成の新たな応用と展開 k 情報処理 vol.53 No.6 June 2012 pp
2016年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
基本情報技術概論(第3回) 埼玉大学 理工学研究科 堀山 貴史
パソコンの歴史 ~1970年 1970年代 1980年代 1990年~ ▲1946 ENIAC(世界最初の計算機、1,900加算/秒, 18,000素子) ▲1947 UNIVACⅠ(最初の商用計算機) ▲1964 IBM System/360(5.1MHz, 1MB, 2億円) ▲1974 インテル8080(8.
カラーバー 時計(カウンタ) ゲーム GPSクロック
Handel-Cを用いた ちょっとレトロ な 「よけゲー」 の設計
コンピュータの原理 1E17M053-9 奈良 皐佑 1E17M070-7 師尾 直希        1E17M078-6 渡邊 惇.
Occam言語による マルチプリエンプティブシステムの 実装と検証
オペレーティングシステム 第3回( ) デッドロックと排他制御.
6. 順序回路の基礎 五島 正裕.
第6回 よく使われる組合せ回路 瀬戸 重要な組合せ回路を理解し、設計できるようにする 7セグディスプレイ用デコーダ 加算回路・減算回路
OpenMPハードウェア動作合成システムの検証(Ⅰ)
C言語を用いたシューティング ゲームの作成
高速剰余算アルゴリズムとそのハードウェア実装についての研究
1.コンピュータと情報処理 p.18 第1章第1節 2.コンピュータの動作のしくみ CPUと論理回路
OpenGLライブラリを用いた3次元フラクタルの描画
コンピュータに計算させる命令を確かめよう!
巡回冗長検査CRC32の ハード/ソフト最適分割の検討
第7回 授業計画の修正 中間テストの解説・復習 前回の補足(クロックアルゴリズム・PFF) 仮想記憶方式のまとめ 特別課題について
迷子問題を考慮した 地図閲覧システムの構築
FPGA 株式会社アプライド・マーケティング 大越 章司
並行プログラミング concurrent programming
ディジタル回路の設計と CADによるシステム設計
プログラミング基礎a 第7回 C言語によるプログラミング入門 ファイル入出力
プログラミング基礎a 第12回 Java言語による図形処理入門(3) アニメーション入門
プログラミング基礎a 第11回 Java言語による図形処理入門(3) アニメーション入門
3. 論理ゲート の 実現 五島 正裕.
コンピュータアーキテクチャ 第 7 回.
コンピュータアーキテクチャ 第 7 回.
第11回 よく使われる順序回路 複数のFFを接続した回路を解析する際の考え方を学ぶ カウンタ回路の仕組みを理解し,設計できるようにする 瀬戸.
基本情報技術概論(第2回) 埼玉大学 理工学研究科 堀山 貴史
Ibaraki Univ. Dept of Electrical & Electronic Eng.
コンピュータアーキテクチャ 第 9 回.
B03 量子論理回路の 最適化に関する研究 西野哲朗,垂井淳,太田和夫,國廣昇 電気通信大学 情報通信工学科.
2017年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
コンピュータアーキテクチャ 第 5 回.
FPGA 株式会社アプライド・マーケティング 大越 章司
Ibaraki Univ. Dept of Electrical & Electronic Eng.
プロセッサ設計支援ツールを用いた 独自プロセッサの設計
コンピュータアーキテクチャ 第 9 回.
データ構造とアルゴリズム論 第9章 連結リスト
プログラミング基礎a 第7回 C言語によるプログラミング入門 ファイル入出力
2014年度 プログラミングⅠ ~ 内部構造と動作の仕組み(1) ~.
Javaを用いたシューティングゲーム作成
Javaとは Javaとはオブジェクト指向言語でJava VM(Java仮想マシン)と呼ばれるプログラム上で動作します。
Presentation transcript:

Handel-Cを用いた パックマンの設計 XXXXXXXX XX XX 2019/5/6

発表項目 1.目的 2.FPGAとHandel-Cの説明 3.仕様 4.アルゴリズム 5.問題と解決法 6.考察 7.デモ 2019/5/6

目的 高位システム記述言語Handel‐CとFPGA開発ボードを用いたハードウェアの設計方法を学ぶ 2019/5/6

FPGAとHandel-Cの説明 FPGA(Field Programmable Gate Array) ・・・ハードウェアを設計データによって、    動的に作り変えることができるゲート・    アレイ Handel-C ・・・ハードウェアをC言語ベースで設計    することのできるプログラミング言語。    並列処理、ビット幅などの概念がC言語   に加わっている 2019/5/6

パックマンの仕様 エサを一つ取るごとに1ポイント加算 パックマンがパワーエサを取ると、逆襲モードに入り、敵とパックマンの関係が逆転する パックマンの行動はマウスによって制御し、操作性を高めるために、予約入力を受け付ける 1面クリアするごとに逆襲モードの時間が短縮 敵とパックマンはアニメーションする 2019/5/6

敵の動きアルゴリズム (追跡モード、巡回モード、逆襲モード) 追跡モード・・・   1.敵を3方向(Uターン禁止)に1歩ずつ進めて、 その時のパックマンとの距離を計算   2.1で計算した距離が最小になる方向に進む 巡回モード・・・ある4点との距離が最小に           なる方向に進む 逆襲モード・・・追跡モードと逆の方向へ進む 2019/5/6

問題点とその解決法1 (問題点)FPGAのハードウェアリソースが限られている (解決法) パックマンの画像は1枚を回転させることによって、4方向分表示 乗算・除算をビット操作によって行う 各変数のビット幅を使用する最小の幅にする 2019/5/6

問題点とその解決法2 (問題点)並列プロセスはRAMに同時アクセスできない (解決法)   画像表示プロセスとゲーム管理プロセスが並列実行されているが、画像表示の走査線がBlank期間に入っている間にゲーム管理プロセスがRAMにアクセスを行うことによって、同時にはアクセスしないようにした。 2019/5/6

考察 FPGAの設計においては、よりコンパクトな設計を求められるため、データの効率的利用、乗算・除算の排除、ビット幅の最小化などの手段が有効 並列プロセスを同期させることにより、同時にメモリアクセスしないようすることが可能である 2019/5/6

それではデモをご覧ください 2019/5/6

以下は質問用 2019/5/6

パックマン動作アルゴリズムは? (予約入力) 1.入力された方向を予約方向として記憶 (入力されない場合は前回の予約方向 を維持) 2.予約方向が壁でなければ進む 3.2で進めなかった場合は1フレーム前と同じ方向が壁でなければ進む 4.3で進めなかった場合は停止 2019/5/6

課題は? パックマンに類似したゲームを設計 Handel-CとFPGA開発ボードを用いて、ハードウェアを設計すること 設計条件は、ディスプレイに出力すること、マウスを使用すること、自分で設計したプロセッサをシステムに導入すること     パックマンに類似したゲームを設計 2019/5/6

パックマンの仕様は?1 10×10マスのマップを使用 エサを一つ取るごとに1ポイント加算 パックマンがパワーエサを取ると、逆襲モードに入り、敵とパックマンの関係が逆転する 逆襲モードで敵を食べると20点追加 敵は1匹とし、追跡モード、巡回モード、逆襲モードの3種類の動作をする。(動作選択に設計したプロセッサを使用) 2019/5/6

パックマンの仕様は?2 パックマンの行動はマウスによって制御し、操作性を高めるために、予約入力を受け付ける 1面クリアするごとに逆襲モードの時間が短縮 敵とパックマンはアニメーションする パックマンと敵が衝突した場合に特殊アニメが動作 2019/5/6

ゲートアレイとは? 論理ゲート(基本セル)が格子(アレイ)状に配列されており, 実現すべき回路が決まったあとに,相互に配線されておらず電気的に独立している基本セルを組み合わせて,希望のディジタル回路を実現します。 長所:設計が簡単 短所:設計自由度の制限 2019/5/6

今回使用したFPGAは? RC100・・・ Celoxica社が開発したスタンドアロンのFPGAボード。 ゲート数は20万ゲート。  ゲート数は20万ゲート。  LUTは約4500個。  80MHzクリスタルからクロックを生成。 2019/5/6

Demo画像 2019/5/6

PACMAN[Y座標@X座標]でアクセス 画像の表示は? 32×32配列 PACMAN[Y座標@X座標]でアクセス 2019/5/6