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

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

FPGAの部屋

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

Vivado HLS の Vitis Bottom Up Flow を使用する2

Vivado HLS の Vitis Bottom Up Flow を使用する1”の続き。

前回は、 2 個の出力バッファを使用している時に、ホスト・メモリにコピーできないのか?を確かめるために Vivado HLS プロジェクトの square_cubed プロジェクトを作成して確かめてみようということで、 Vivado HLS 2019.2 で square_cubed プロジェクトを作成した。(Vitis 2019.2 の RTL カーネルを作成するため)
今回は、Vitis 2019.2 のアクセラレーション・プロジェクト用のVivado HLS 2019.2 プロジェクトの square_cubed プロジェクトで xo ファイルを作成しよう。

最初に、C シミュレーションを行った。
square_cubed_5_200106.png

C コードの合成を行った。
square_cubed_6_200106.png

Initation Interval が 2 クロックになってしまっているが、とりあえずこのままとする。案外 DSP48E を使用している。やはり int32_t だからかな?

C コードの合成後に Solution Settings を見ると、

m_axi_addr64=ture

も入っていた。
square_cubed_7_200106.png

C/RTL 協調シミュレーションを行った。
square_cubed_8_200106.png

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

DMA Read はバーストだが、DMA Write はAXI4 インターフェースが 1 個なので、単発のトランザクションになってしまっているのが分かる。

square_cubed.cpp の

extern "C" { }

を元に戻した。
square_cubed_10_200106.png

再度C コードの合成を行ってから、Export RTL を行った。
square_cubed_11_200106.png

square_cubed.xo が生成された。
square_cubed_12_200107.png
  1. 2020年01月07日 04:28 |
  2. Vitis
  3. | トラックバック:0
  4. | コメント:0