FC2カウンター FPGAの部屋 HLSストリーム・インターフェースの畳み込み層3(Windows 10 のVivado HLS 使用)
FC2ブログ

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

FPGAの部屋

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

HLSストリーム・インターフェースの畳み込み層3(Windows 10 のVivado HLS 使用)

HLSストリーム・インターフェースの畳み込み層2(C シミュレーション、C/RTL 協調シミュレーション)”の続き。

Linux 版の Vivado HLS 2017.4 では(正確にいうと SDx 2017.4 のVivado HLS )では、HLSストレーム・インターフェース版畳み込み層のC/RTL 協調シミュレーションがエラーになってしまった。そこで、Windows 10 のVivado HLS 2017.4 (こちらも SDx がインストールしたVivado HLS)で試してみようと思う。なお、ソースコードは同一のコードを使用している。

一通りやることにして、最初は C シミュレーションからやってみよう。
hlsw_conv_layer_5_180418.png

C シミュレーションはLinux との違いは無いようだ。

次に、C コードの合成を行った。結果を示す。
hlsw_conv_layer_1_180418.png

Latency もリソース使用量もLinux と同一だった。

次に問題のC/RTL 協調シミュレーションを行った。成功した。Windows 10 だとうまく行くようだ。
hlsw_conv_layer_2_180418.png

Latency は 581 クロックだった。
C/RTL 協調シミュレーションの波形を示す。
hlsw_conv_layer_3_180418.png

ins_TRADY と ins_TVALID がほとんど 1 でスループットが最大になっているのが分かる。
outs_V_write を見ると、後ろの方に 6 個の 1 の部分があって、その 1 の部分が平らになっている。
問題無いようだ。

最後に、Vivado synthesis, place and route にチェックを入れて Export RTL を行った。結果を示す。なお、左が Windows 10 で右hがLinux の Export RTL の結果だ。
hlsw_conv_layer_4_180418.pnghls_conv_layer_4_180413.png

Resource Usage の SLICE がWindows 10 版と Linux 版で違っているのが分かる。Windows 10 版が 284 個で Linux 版が 268 個だった。その他の Resource Usage の値は一緒だった。
タイミングでも、CP achieved post-synthesis の値は一緒だったが、CP achieved post-implementation の値が違っている。Windows 10 版は 9.173 ns で Linux 版は 8.703 ns だった。

C/RTL 協調シミュレーションが Linux ではうまく行かないので、Windows 10 で開発を進めていこう。
  1. 2018年04月18日 05:08 |
  2. DNN
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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