FC2カウンター FPGAの部屋 Vitis HLS 2020.1 で”(目標)Vivado HLSで1クロック毎に結果を出力できるNNを作る4(チューンナップ1)”をやってみる
FC2ブログ

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

FPGAの部屋

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

Vitis HLS 2020.1 で”(目標)Vivado HLSで1クロック毎に結果を出力できるNNを作る4(チューンナップ1)”をやってみる

Vivado HLS では悩まされた large runtime and excessive memory のエラーが Vitis HLS 2020.1 では改善されているか?を確認してみる。
(目標)Vivado HLSで1クロック毎に結果を出力できるNNを作る4(チューンナップ1)”を Vitis HLS 2020.1 でやってみることにした。結果はやはり、同様に large runtime and excessive memory のエラーがでる。

Vitis HLS 2020.1 で”(目標)Vivado HLSで1クロック毎に結果を出力できるNNを作る4(チューンナップ1)”と同様のプロジェクトを作ったが、ただし、Ultra96V2 用のFPGA として、動作周波数は 200 MHz とした。

それでは C コードの合成を行ったがやはりエラーだった。エラー内容を示す。

ERROR: [HLS 200-1471] Stop unrolling loop 'af1_dot1' (all_deploy_afnet4mnist2/mnist_nn.cpp:841) in function 'mnist_nn' because it may cause large runtime and excessive memory usage due to increase in code size. Please avoid unrolling the loop or form sub-functions for code in the loop body.\


やはり、Vivado HLS と同じで large runtime and excessive memory のエラーだった。
Vitis_HLS201_58_200629.png

なお、 C シミュレーションは通常通り成功している。
Vitis_HLS201_59_200629.png

#pragma HLS PIPELINE II=1

をコメントアウトして、

#pragma HLS DATAFLOW

を追加した。これで C コードの合成を行った。結果を示す。
Vitis_HLS201_61_200629.png

合成はできたがDSP と LUT の使用率が 100 % を超えてしまっている。結局、この FPGA には実装できない。
  1. 2020年06月29日 05:28 |
  2. Vitis HLS
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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