FC2カウンター FPGAの部屋 KV260 の PYNQ で自作のソーベル・フィルタを動作させる4
fc2ブログ

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

FPGAの部屋

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

KV260 の PYNQ で自作のソーベル・フィルタを動作させる4

KV260 の PYNQ で自作のソーベル・フィルタを動作させる3”の続き。

前回は、axi_dma_0 の Width of Buffer Length Register が 14 ビットで足りないのじゃないか?という ikwzm さんのツィートでのご指摘があったので、26 ビットに変更して、Vivado プロジェクトで論理合成、インプリメンテーション、ビットストリームの生成を行って、Jupyter Notebook にアップロードして確かめたが、今度は、DMA が終了しなかった。更に、sobel_axis_RGB24 IP の TKEEP, TSTRB をオール 1 にしていないバグも修正したが、やはり、DMA が終了しなかった。今回は、Vivado のブロック・デザインに System_ILA を実装して、ILA ダッシュボードで波形を確認してみよう。

img_filt ブロック・デザインの全ての AXI4 インターフェースと AXI4-Stream インターフェースに System_ILA を実装した。
sobel_axis_RGB24_30_220324.png

これで、論理合成、インプリメンテーション、ビットストリームの生成をやり直した。
Project Summary を示す。
sobel_axis_RGB24_31_220324.png

Jupyter Notebook に新しいビット・ファイルと hwh ファイルをアップロードし、ビット・ファイルのロードまで、Jupyter Notebook を実行して、axi_dma_0_M_AXI_MM2S の AWVALID の立ち上がりでトリガーを掛けた。
なお、axi_dma_0_M_AXI_S2MM の AWVALID の立ち上がりではトリガーは掛からなかった。
sobel_axis_RGB24_32_220324.png

AXI DMA MM2S のAXI4 インターフェースは動作しているようだ。

同じ時点の AXI4-Stream を見た。
sobel_axis_RGB24_33_220324.png

axi_dma_0_M_AXIS_MM2S にはデータが出力されているが、axis_dwidth_converter_0_M_AXIS には 1 個のデータの受け渡しがあっただけだ。これは、まだソーベル・フィルタ IP がスタートしないのが原因だと思われる。
波形を拡大してデータを確認した。
sobel_axis_RGB24_34_220324.png

ここまでやってみて、気がついたことがある。
ソーベル・フィルタ IP は、AXI VDMA の仕様で作ってあって、AXI DMA の仕様じゃなかった。。。
ソーベル・フィルタ IP は、AXI DMA の仕様にする必要があると思う。
TUSER は使わないでスタートして、データの一番最後だけ TLAST を 1 にする必要があるんじゃないだろうか?
  1. 2022年03月25日 05:05 |
  2. KRIA KV260 Vision AI Starter Kit
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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