FC2カウンター FPGAの部屋 2020年04月28日
FC2ブログ

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

FPGAの部屋

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

Ultra96-V2 のカメラ入力、ディスプレイ出力付き Vitis アクセラレーション・プラットフォームの作成4(Vitis アプリケーション・プロジェクト作成編)

Ultra96-V2 のカメラ入力、ディスプレイ出力付き Vitis アクセラレーション・プラットフォームの作成3(Vitis アクセラレーション・プラットフォーム作成編)”の続き。

前回は、Vitis アクセラレーション・プラットフォームを作成した。今回は、lap_filter_axis_dma を使用して Vitis アプリケーション・プロジェクトを作成していこう。

Vitis アプリケーション・プロジェクトの作り方は、”Ultra96-V2 の Vitis アクセラレーション・プラットフォームの作り方4(Vitis アプリケーション・プロジェクトの作成)”を参考にしている。

Vitis 2019.2 のGUI で、New -> Application Project... を選択する。

New Application Project ダイアログの Create a New Application Project 画面で、Project Name に lap_axis_dma_cam_dp と入力した。
ultra96v2_cam_dp_66_200427.png

Platform では、今回作成したプラットフォームの ultra96v2_cam_dp を選択した。
ultra96v2_cam_dp_67_200427.png

Domain 画面はディフォルトのままとした。
ultra96v2_cam_dp_68_200427.png

Template 画面は Empty Application を選択した。
ultra96v2_cam_dp_69_200427.png

lap_axis_dma_cam_dp アプリケーション・プロジェクトが作成された。
ultra96v2_cam_dp_70_200427.png

lap_filter_axis_dma のソースコードを src ディレクトリにインポートする。
Explorer の lap_axis_dma_cam_dp_system -> lap_axis_dma_cam_dp -> src を右クリックして右クリックメニューから Import Sources... を選択した。
ultra96v2_cam_dp_71_200427.png

Import Sources ダイアログが開く。
Browse... ボタンをクリックする。
ultra96v2_cam_dp_72_200427.png

別のワークスペースの lap_filter_axis_dma の src ディレクトリを選択して、ソースコードのファイルをインポートした。
ultra96v2_cam_dp_73_200427.png

Add Hardware Function... ボタンをクリックして、lap_filter_axis_dma を Hardware Functions に加えた。
xclbin ファイルの名前は lap_axis_dma_cam_dp に変更した。
ultra96v2_cam_dp_74_200427.png

Assistant ウインドウの lap_axis_dma_cam_dp_system -> Hardware を右クリックして右クリックメニューから Build を選択して、ビルドを行って成功した。
ultra96v2_cam_dp_75_200427.png

ultra96v2_cam_dp/images/linux/pkg/pfm/wksp1/lap_axis_dma_cam_dp/Hardware/lap_axis_dma_cam_dp.build/lap_filter_axis_dma/lap_filter_axis_dma/lap_filter_axis_dma/ ディレクトリに Vivado HLS のプロジェクトがあるので開いた。
C コードの合成結果を見てみよう。
ultra96v2_cam_dp_76_200427.png

次に、 ultra96v2_cam_dp/images/linux/pkg/pfm/wksp1/lap_axis_dma_cam_dp/Hardware/lap_axis_dma_cam_dp.build/link/vivado/vpl/prj に Vivado のプロジェクトがあるので、Vivado で開いた。
ブロックデザインの一部分を示す。
ultra96v2_cam_dp_77_200427.png

Zynq UltraSCALE+ の M_AXI_HPM1_FPD から lap_filter_axis_dma_1 の s_axi_control ポートに配線が行っているのが分かる。
M_AXI_HPM1_FPD が使われているので、アドレスは 0xB000_0000 が使用されている。
Address Editor を見てみよう。
ultra96v2_cam_dp_78_200427.png

lap_filter_axis_dma_1 は 0x00_B000_0000 にマップされている。

現在の回路の使用リソースは、Vivado プロジェクトの Flow Navigator の IMPLEMENTATION -> Open Implemented Design -> Report Utilization で見てみよう。
ultra96v2_cam_dp_80_200428.png
  1. 2020年04月28日 04:50 |
  2. Vitis
  3. | トラックバック:0
  4. | コメント:0