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

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

FPGAの部屋

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

Vivado HLS 2014.4 の高位合成テスト1(Vivado HLSで高位合成)

Vivado HLS 2014.4 の勉強1(高位合成の理解)”の続き。

前回、引用した最初の関数 foo() を実際にVivado HLS 2014.4 で高位合成を行った。

・Vivado HLS 2014.4 を立ち上げる。

・Create New Project をクリックした。
Vivado_HLS_Study_2_150107.png

・New Vivado HLS Project ダイアログが開いた。Project name に foo1 を入力し、Location を指定して、Next > ボタンをクリックした。
Vivado_HLS_Study_3_150107.png

・Add/remove C-based source files ではデフォルトのまま、Next > ボタンをクリックした。
Vivado_HLS_Study_4_150107.png

・Add/remove C-based testbench files でもデフォルトのまま、Next > ボタンをクリックした。
Vivado_HLS_Study_5_150107.png

・Solution Configuration の画面で、Part Selection の右側の ... ボタンをクリックした。
Vivado_HLS_Study_6_150107.png

・FPGAを選択する。

・Filter で図のように選択して、xc7z010clg400-1 を選択して、OKボタンをクリックした。
Vivado_HLS_Study_7_150107.png

・Solution Configuration の画面に、xc7z010clg400-1 が表示された。
Vivado_HLS_Study_8_150107.png

・Vivado HLS 2014.4 が立ち上がった。

・foo1 -> Source を右クリックして、右クリックメニューから New File... を選択した。
Vivado_HLS_Study_9_150107.png

・ファイル名に foo1.c と入力した。
Vivado_HLS_Study_10_150107.png

・空の foo1.c が表示されたので、”Vivado HLS 2014.4 の勉強1(高位合成の理解)”の最初の foo() をコピー&ペーストして、セーブした。
Vivado_HLS_Study_11_150107.png

次に 高位合成される Top Function を設定しよう。

・Project メニューから Project Setting.. を選択する。
Vivado_HLS_Study_12_150107.png

・Top Function の右の Browse... ボタンをクリックする。
Vivado_HLS_Study_13_150107.png

・Select Top Function ダイアログで、foo (foo1.c) を選択して、OKボタンをクリックする。
Vivado_HLS_Study_14_150107.png

・Top Function に foo が入ったのを確認して、OKボタンをクリックする。
Vivado_HLS_Study_15_150107.png

・Run C Synthesis ボタンをクリックし、高位合成を行う。
Vivado_HLS_Study_16_150107.png

・高位合成が完了して、Synthesis Report for 'foo' が表示された。

・右のウインドウを見ると、SystemC, Verilog HDL, VHDL のファイルが生成されているのがわかる。
Vivado_HLS_Study_17_150107.png

・Synthesis Report for 'foo' の続き(2/3)。

・レイテンシは0で、インターバルは1だった。レイテンシは0なので、FFが入っていないということだろう?

・リソースはDSP48Eを1個と、LUTを8個使用している。
Vivado_HLS_Study_18_150107.png

・Synthesis Report for 'foo' の続き(3/3)。

・ap_ctrl_hs インターフェースを1個使用している。x, a, b, c は ap_none だ。
Vivado_HLS_Study_19_150107.png

ap_ctrl_hs インターフェースについては、”Vivado HLSのaxi_stream_no_side_channel_dataを試す1”を参照下さい。

(2015/01/09:追加)
Analysis を書くのを忘れていたので追記。

・右上のAnalysis ボタンをクリックして、Analysis 画面を表示された。

・Performance を見ると全部の項目が C0 の1クロックに収まっている。
Vivado_HLS_Study_27_150108.png
  1. 2015年01月07日 05:27 |
  2. Vivado HLS
  3. | トラックバック:0
  4. | コメント:0