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

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

FPGAの部屋

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

FPGAマガジンNo.9 に記事を書きました

FPGAマガジンNo.9 に、”【365日間の評価ライセンスが取得できる!】 C言語からFPGAを開発できる高位合成ツールが無償で使える! Vivado WebPACK EditionとVivado HLS評価版のインストール手順”という記事を書きました。
これを見ると、Vivado WebPACKと Vivado HLS 評価版が同時にインストールできます。Vivado HLS 評価版は、評価期間が365日つまり1年なので、相当使えますよ。どちらも登録は必要ですが、無料で使えます。
Vivado HLS はC、C++、System C を高位合成で Verilog HDL や VHDL で構成されたIP にすることができます。
今、私がやっているVivado HLS 2014.4のプロジェクトもプロジェクトを作って、ブログに貼ってあるC や C++ ソースコードを貼り付けてファイルを作れば、そっくりそのまま試してみることができます。
Vivado WebPACKはVivado Simulator Logic Analyzer が使えないのが残念ですが、その他のVivado の Design Editionの機能は動作します(一部制限あり)。

Vivado Simulator を使う方法の中で、一番廉価なのは、Digilent 社のWebショップで、ZYBOと一緒に ZYBO Accessory Kit ($20) を購入する方法です。Zynq-7000 XC7Z010 のみのサポートですが、”Voucher for Xilinx Vivado® Design Suite: Design Edition”がついてきて、これを登録すると、Vivado Simulator Logic Analyzer が使えます。
日本では、ストロベリー・リナックスさんの”ZYBO Zynq-7000 Development Board+アクセサリキット”は ZYBO Accessory Kit が付いていると書いてあります。
  1. 2015年04月25日 13:09 |
  2. Vivado HLS
  3. | トラックバック:0
  4. | コメント:7

Vivado HLS 2014.4 で AXI4-Stream をテストする3(1次元のフィルタのテスト2、C++シミュレーション、高位合成)

Vivado HLS 2014.4 で AXI4-Stream をテストする2(1次元のフィルタのテスト1、C++ソースコードの公開)”の続き。

前回は、C++ ソースコードを貼ったので、今回はそれをVivado HLS 2014.4 でC++ シミュレーションを行うことにした。

Run C Simulation アイコンをクリックして、C Simulation を実行した後のVivado HLS 2014.4 の画面を下に示す。
lap_filter_AXIS_2_150425.png

出力結果を下に示す。

Compiling ../../../fil_axis_sample_tb.cpp in debug mode
Generating csim.exe
in_data
0
0
0
0
0
3e8
3e8
3e8
3e8
3e8
0
0
0
0
0
3e8
3e8
3e8
3e8
3e8
0
0
0
0
0
3e8
3e8
3e8
3e8
3e8
0
0
0
0
0
3e8
3e8
3e8
3e8
3e8
0
0
0
0
0
3e8
3e8
3e8
3e8
3e8

out_data
0x0
0x0
0x0
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
0x0
0x0
0x3e8
0x0
0x0
0x0
@I [SIM-1] CSim done with 0 errors.


C Synthesis アイコンをクリックして、高位合成を行った。
lap_filter_AXIS_3_150425.png

Latency が 58、Interval が 59 だった。
Utilization Estimates を示す。BRAM_18K とDSP48E は使用していない。
lap_filter_AXIS_4_150425.png

Analyze 画面を示す。
lap_filter_AXIS_17_150425.png

C1の phi_max, +, icmp は

int sreg[3] = {};

の処理で使用されていた。
C3の select, shl, icmp はmy_filter() の処理で使用されていた。
  1. 2015年04月25日 05:35 |
  2. Vivado HLS
  3. | トラックバック:0
  4. | コメント:0