FPGA

FPGA

ZeroPath-GPUのシャドウマッピングを考えてみる

ZeroPath-GPUのFPGA実装の方はコツコツと検討中です。実装はまだ掛かりそうなので机上の空論を少し書いてみたいと思います。目論見どおりいけば最大ポリゴン数Nを増やすと O(N・log N) のオーダーで回路消費が増えるというレベル...
FPGA

ZeroPath-GPUのC++モデルを書いてみた

以前Zyboにも収まるテクスチャキャッシュができたので、Zybo向けにテクスチャマッピングのできるフレームメモリレスの1パスGPU自作を検討中ですが、先立ってC++で簡単に実験してみました。 思惑としてはピクセル走査順にピクセル値を計算して...
FPGA

ポリゴン描画実験

正月休みにいろいろやろうと思いきや、体調を崩してしまいほとんど何もしないまま終わってしまいました。とりあえずまだC++でのシミュレーションの段階ですが、なんとなくポリゴン描画のアルゴリズム的なところは見えてきました。やはり複数ポリゴン描画し...
FPGA

FPGAでラスタライザ再考察

仕事が忙しく、ずいぶん間が空いてしまいましたが、再びGPU考察です。ポリゴンのお絵かきにラスタライザは必須です。以前、ソフトやシミュレーションレベルでは軽く実験しましたが、その際にお世話になったのが下記のページ。で、FPGA化踏まえて再考察...
FPGA

FPGAでの倍速ALUの考察

今回は前々から考えていたFPGAでの倍速ALUの考察です。倍速ALUというとIntelのCPUを思い浮かべてしまうわけですが、16bitALUで32bit演算をしようとうのではなく、リソースとしての見かけ上のDSPの数を倍にできないかという...
Deep Learning

Deep Learning と演算器の考察

Windows機にCaffeをインストールしてみました。使いこなそうとすると、Linux + CUDA なのだと思いますが、普段Linux必要なときはVirtualBoxで済ませている向きとしては、その為にもう一台PCを用意するとかはハード...
FPGA

LLVM

今更ですが LLVM を調べ中です。以前、自作のシェーダー作りたいなぁ、的なことを書きましたが、コンパイラどうしようかというのが一番の悩みでした。なんとなくな勉強はしつつもコンパイラは、作業量自体が多そうで手を出すのに二の足を踏んでいました...
FPGA

エンコーダ回路

ISE14.7でZybo設定(XCZ010-1CLG400) でエンコーダを作る実験をして見ました。【パターン1】まず同時に1つしかビットが立たない前提で、よくある悪いか書き方でcase (data)8'b0000_0001: sel <=...
活動紹介

続・テクスチャキャッシュ

以前から作成中のテクスチャキャッシュの改善に取り組んでいます。 以前との大きな修正点として、L1とL2の間のリングバスの数をL2のユニット1つにつき、リング1つとして多重化しています。 L1の帯域に見合った幅を確保するのに、単純にバス幅を広...
FPGA

バイリニア補間するユニット

バイリニア補間するユニットを作って、以前作成したテクスチャキャッシュと統合して2Dサンプラーユニットを作って見ました。 各バイリニアのユニットは、4サイクルかけて1ピクセル処理できるようにしており、それを8並列で結合して合成して見ました。 ...