FPGA エンコーダ回路 ISE14.7でZybo設定(XCZ010-1CLG400) でエンコーダを作る実験をして見ました。【パターン1】まず同時に1つしかビットが立たない前提で、よくある悪いか書き方でcase (data)8'b0000_0001: sel <=... 2016.12.24 FPGA
活動紹介 続・テクスチャキャッシュ 以前から作成中のテクスチャキャッシュの改善に取り組んでいます。 以前との大きな修正点として、L1とL2の間のリングバスの数をL2のユニット1つにつき、リング1つとして多重化しています。 L1の帯域に見合った幅を確保するのに、単純にバス幅を広... 2016.12.18 FPGA活動紹介
FPGA バイリニア補間するユニット バイリニア補間するユニットを作って、以前作成したテクスチャキャッシュと統合して2Dサンプラーユニットを作って見ました。 各バイリニアのユニットは、4サイクルかけて1ピクセル処理できるようにしており、それを8並列で結合して合成して見ました。 ... 2016.11.28 FPGA
FPGA 除算の検討(回復法と非回復法) 引き続きなぜか除算に迷走しています(苦笑)。除算にはいろいろなやり方がありますが、今回はシェーダーとかのプログラマブルロジックではなく、固定グラフィックスパイプライン内のパースペクティブ補正に組み込むことを前提にスループット1の整数除算器を... 2016.10.29 FPGA
FPGA XILINXのDSP推論 普段RTLで演算を書くときは、合成器の推論に任せっぱなしだったのですが、前回の延長で、4サイクルでバイリニアの積和を考えている途中で、ちょっと気になることがあって、少し実験をしてみました。 実際、多くのケースでDSP48E1をかなりうまく推... 2016.09.24 FPGA
FPGA テクスチャキャッシュを試作してみました 久しぶりに以前の続きです。下記のようなアーキテクチャでGPU用のテクスチャキャッシュを試作してみました。この上にバイリニア補間を行うSamplerが乗っかればそれっぽくなるはずです。軽量なリングバスを実験的に入れてみましたので各ユニットのサ... 2016.08.21 FPGA
FPGA Xilinxの分散メモリを見直してみた GPUを検討しつつ、本丸のシェーダーになかなか行かずにテクスチャキャッシュを検討中であったりします。キャッシュといえば、メインのキャッシュメモリとそれを管理するTAGメモリで構成されるわけですが、今回はTAGメモリのお話です。メインのキャッ... 2016.06.27 FPGA
FPGA バイリニア補間ユニットの並列数について考える 先日作った射影変換回路では、ニアレストネイバーでの処理でした。せっかく浮動小数点コアまで作って、座標は小数精度で計算しているのだから、バイリニア補間ぐらいやりたい、と思ってしまいます。ここで、1画素生成するのにテクスチャは4画素読み込む必要... 2016.06.26 FPGA
FPGA テクスチャキャッシュについて考えてみる 続、GPU考察です。テクスチャマッピングはまだ先と思っていましたが、先日射影変換回路を作ったので少し検討して見ます。 前回は射影変換の座標計算のみ作って、メモリアクセスについては力技前提でXILINXのIPコアのキャッシュを使いました。 よ... 2016.06.26 FPGA
計算機科学 アルゴリズムの計算オーダーと並列度の話 各種アルゴリズムの計算量はしばし重要な問題である。またリアルタイムシステムや並列系の計算機(FPGAも含む)を考える場合、ワーストケースの検討も重要である。例えばIn-placeアルゴリズムの中で最速に属するクイックソートのアルゴリズムは平... 2016.05.29 計算機科学