FC2カウンター FPGAの部屋 画像フィルタを DFX する10(sobel_filter_axis IP 2)
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

画像フィルタを DFX する10(sobel_filter_axis IP 2)

画像フィルタを DFX する9(sobel_filter_axis IP 1)”の続き。

前回は、 DFX で切り替えるフィルタの第 2 段として AXI4-Stream インターフェースのソーベル・フィルタを作成するということで、ソースコードとテストベンチ・コードを貼って、 Vitis HLS 2021.1 の sobel_filter_axis3 プロジェクトを作成し、OpenCV を使用できるように設定を行った。今回は、 C シミュレーション、 C コードの合成、 C/RTL 協調シミュレーション、 Export RTL 、 Run Implementation を行う。

C シミュレーションを行った。結果を示す。
DFX2_60_210815.png

sobel_filter_axis3/solution1/csim/build ディレクトリに元画像の test2.jpg とソーベル・フィルタ結果の sobel.jpg が作成された。

元画像の test2.jpg を示す。
DFX2_70_210816.jpg

sobel.jpg を示す。
DFX2_63_210815.jpg

C コードの合成を行った。結果を示す。
DFX2_61_210815.png
DFX2_62_210815.png

Function Call Graph を示す。
DFX2_64_210815.png

C/RTL 協調シミュレーションを行った。
レイテンシは 480038 クロックなので、性能は問題無さそうだ。
DFX2_65_210815.png

Function Call Graph を示す。
DFX2_66_210815.png

C/RTL 協調シミュレーションの波形を示す。
DFX2_67_210815.png

TVALID と TREADY がほぼ 1 でスループットが取れていることが分かる。

Export RTL を行って IP を作成した。

Run Implementation で Vivado でインプリメンテーションした時の概算値を計測した。
DFX2_68_210815.png
DFX2_69_210815.png

CP achieved post-implementation が 9.211 ns なので、制約の 10 ns は満たしているが、ちょっと危ない気がする。
画像フィルタを DFX する2(DFX_filter_test プロジェクト1)”の AXI4 インターフェースの動作クロックを 100 MHz から 80 MHz に落としておこう。 100 MHz で問題なくインプリメンテーションできました。
  1. 2021年08月16日 03:49 |
  2. Dynamic Function eXchange
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/5326-f0b069cf
この記事にトラックバックする(FC2ブログユーザー)