挑戦!OpenCoresにIPコアを登録(その0)

OpenCores

3DグラフィクスのIPコアをOpenCores(http://opencores.org/)に登録してみようと思います。

Wire-Frame 3D Graphics Accelerator IP CoreとしてOpenCores.orgに登録しました

OpenCoresは、無償(フリー)ハードウェアIPコアのポータルサイトです。

OpenCoresとは
オープン・ソース・ハードウェアIPのNo.1コミュニティです。
OpenCoresは世界最大のオープン・ソースのハードウェアIPを開発するためのサイト/コミュニティです。OpenCores.orgは、様々なディジタルHWプロジェクト(IPコア、SoC、ボードなど)のソースコードを提供します。そして、様々なツールやプラットフォーム、フォーラムやその他の有益や情報を提供することでユーザーをサポートします。
是非私たちに参加してください!
OpenCores:http://opencores.org/ トップーページより

登録しようと思っているIPコア

概要

  • 3Dグラフィクス機能のIPコア
  • 表示はワイヤ・フレームのみ
  • ハードウェア・ジオメトリエンジンとラスタライザを内蔵
  • メモリアクセスバス幅は32bit

ジオメトリエンジンの機能

  • 頂点データDMA
  • マトリックス処理
  • クリッピング
  • 背面カリング

ラスタライザの機能

  • ワイヤ・フレーム表示のみサポート(*ポリゴンの塗りつぶしは非サポート)

IPコアを作った動機

安価なFPGAボードでリアルタイム3Dグラフィクスを表示するために作りました。作成時にターゲットとしたのはAltera DE0 Boardです。DE0で一応リアルタイム表示と呼べる性能を出しながら、かつ搭載されているFPGA Cyclone III 3C16に入るサイズのIPコアを目指した結果、現在の仕様になりました。

IPコアをOpenCoresに登録しようと思った動機

3DグラフィクスIPコアといってもワイヤーフレムしか表示しないので、正直な所あまり使い道がありません。また、最近ではRaspberry PIのような数千円で手に入る小型コンピュータでもGPUが搭載されていて、3Dグラフィクスのコモディティ化が進んでいます。このような状況で、このIPコアの活用方法として思いついたのがOpenCoresに代表されるIPコアのコミュニティサイトへの登録でした。

IPコアの開発ステータス

FPGAボードDE0で実際に動作しています。


デモ 0


デモ 1

指の関節に穴が空いているのは、Skinningを行っていないためです。

IPコアの登録のために必要な作業

現状、RTLと検証環境以外ありません。登録には、少なくとも次の項目を準備する必要がありそうです。

  • 仕様書
  • RTLへのコメント追加
  • 3Dデータコンバートツール

スケジュール

空いている時間に作業を行う予定なので具体的なスケジュールは決めていません。遅くても今年中。できれば半年以内。気持ちとしては5月いっぱい。

その1に続く。

タイトルとURLをコピーしました