FC2カウンター FPGAの部屋 Vivado HLS 2014.4 の高位合成テスト14(ラプラシアンフィルタ9、Clock Period の変更2)
FC2ブログ

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

FPGAの部屋

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

Vivado HLS 2014.4 の高位合成テスト14(ラプラシアンフィルタ9、Clock Period の変更2)

”Vivado HLS 2014.4 の高位合成テスト13(ラプラシアンフィルタ8、Clock Period の変更1)”の続き。

前回は、Clock Period = 5 ns の場合までラプラシアンフィルタを高位合成したので、今回は次のClock Period = 4 ns の場合から、最後、動作周波数が高すぎてEstimated の値がタイミングを満たせなくなるまでやってみる。

・Clock Period = 4 ns の場合
Clock Period = 5 ns の場合と同じだった。最初なので、高位合成レポートを貼っておく。
Vivado_HLS_Study_69_150120.png

・Clock Period = 3 ns の場合
Latency = 9 クロックとなった。そろそろ限界かな?
Vivado_HLS_Study_70_150120.png

Analysis 画面のハードウェアのスケジューリングを見てみよう(Resourceタブ)。
Vivado_HLS_Study_71_150120.png

ほとんど2項演算になってきた。

・Clock Period = 2 ns の場合
Latency = 31 クロックとなったが、Estimated は 2.40 ns で間に合わない。
Vivado_HLS_Study_72_150120.png

Analysis 画面のハードウェアのスケジューリングを見てみよう(Resourceタブ)。
Vivado_HLS_Study_73_150120.png

1つの演算を複数クロックで行うようにスケジューリングされている。

ZYBO に搭載されている xc7z0100clg400-1 では、Clock Period = 2.4 ns で限界のようだ。でも、Clock Period = 2.4 ns ということは、416 MHz で動作できるように合成できるということなので、凄いと思う。

次に今度はLatencyを100MHzの 2 から 1 に減らしてみよう。

・Clock Period = 20 ns の場合
Latency = 1 クロックになった。Estimated は 16.14 ns だった。約 17 ns で Latency = 1 クロックとなることがわかった。約 60 MHz 程度の動作周波数だ。
Vivado_HLS_Study_74_150120.png

もう一度、Analysis 画面のハードウェアのスケジューリングを見てみよう(Resourceタブ)。
Vivado_HLS_Study_75_150120.png

ラプラシアンフィルタのほとんどの演算は、1クロックで行われている。次のクロックでは、飽和演算が行われているようだ。

Solution Settings のSynthesis のプロパティの内のClock Period で Latency がいろいろと変わるということがわかった。うかつな話だが、今まで、何処でLatency の値を変えるのか疑問だった。
Vivado HLSは、Xilinxのツールなので、XilinxのFPGA 品種を指定する。その指定されたFPGA の品種でクロック周期を指定すれば、どのくらいのパイプライン・ステージで実行できるかは明確なので、クロック周期を指定するのだろう?と思う。
  1. 2015年01月20日 04:53 |
  2. Vivado HLS
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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