2015年11月23日月曜日

告知の結果と次のテーマ

FPGAボードプレゼントへの応募者はゼロでした。
このテーマはこれで一旦終了して、次は中途半端に中断していたZYBOでI2S IPを利用したスクラッチ音生成を再開しようと思う。


2015年11月7日土曜日

世界最小クラスかも知れないFPGAボード 15 (ブロック崩しゲームの実装 2)

現在実装中のブロック崩しゲームだがゲームとして遊べるレベルにはなった。

バーの操作はロータリーエンコーダで行うことにした。エンコーダの左側にある基板上の部品は押しボタンスイッチでゲーム開始の操作に使用する。

また、画像だけだとつまらないので音も発生するようにした。
このままだと操作しづらいので以下のように段ボール箱を筐体代わりにして組み上げた。

箱の内部はエンコーダのケーブルがとぐろを巻いているだけだ。


電源を入れると、以下の画面表示になる。

ここで押しボタンスイッチを押すとボールが下方に動き始めゲームが開始される。

プレイしている様子
プレイしてみて、自分の反射神経の衰えを実感してしまった。orz
が、中々楽しい。なんじゃこりゃーおもしろいぞー!ってな感じだ。


アーキテクチャと最上位のRTLは以下のようになっていて結構シンプルだ。


syncgenで同期信号と描画座標を生成してbreakoutモジュールに渡す。
breakoutモジュールは描画座標とボールや各ブロックの座標とを比較して衝突判定して処理をおこなっている。


回路規模はこんな感じ



タイミングもMetしている。


2015年11月1日日曜日

世界最小クラスかも知れないFPGAボード 14 (ブロック崩しゲームの実装 1)

ブロック崩しゲームを実装中だ。

ボールを打ち返す部分はまだ実装していない。
残りは、ボールの加速度を縦方向と横方向別個に設定できるようにするのと、ラケットの部分の実装だ。ラケットの操作はロータリーエンコーダにしようか押しボタンにしようか思案中だ。ボードの改造(ポートの追加)もしなければ。

リソースのusageはこんな感じで、前回のカラーバー+αの回路と大差ない。

今のところ、思ったよりも小規模で済んでいる。


自作CPUで遊ぶ 25

まだ制御ソフトが完成していないので今まではスピンドルを移動するために一々簡単なプログラムを書いて移動させていたのだが、非常に面倒なのでCNCペンダント的なものを作ることにした。 右側の縦に2つ並んでいるスイッチ...