FC2カウンター FPGAの部屋 AXI4-Stream インターフェースのMax Pooling 2(Cシミュレーションと合成)
FC2ブログ

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

FPGAの部屋

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

AXI4-Stream インターフェースのMax Pooling 2(Cシミュレーションと合成)

AXI4-Stream インターフェースのMax Pooling 1(ソースコード)”の続き。

(2018/04/21 :修正、バグフィックス)
(2018/04/25 : 修正、バグフィックス)

前回は、AXI4-Stream インターフェースの Max Pooling のソースコードを貼った。今回はVivado HLS 2017.4 で max_pooling プロジェクトを作成して、C シミュレーションと C コードの合成を行う。

まずは、Vivado HLS 2017.4 で max_pooling プロジェクトを作成した。

次に、C シミュレーションを行った。結果を示す。
Max_Pooling_1_180225.png

Max Pooling の出力を C のヘッダにまとめた max_pooling_output.h を出力している。その一部を示す。
const float mp_fout[78][2]
Max_Pooling_9_180225.png

const ap_fixed<16, 6, AP_TRN, AP_WRAP> mp_out[78][2]
Max_Pooling_10_180225.png

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

Estmated は 6.31 ns で十分だ。Latency は 317 クロックだった。データは 312 個なので、十分な性能と言えよう。
FF は 678 個、LUT は 1042 個を使用している。BRAM_18K は使用されていない。

合成結果のAXI4 Lite Slave インターフェースのアドレスマップを示す。

//------------------------Address Info-------------------
// 0x00 : Control signals
//        bit 0  - ap_start (Read/Write/COH)
//        bit 1  - ap_done (Read/COR)
//        bit 2  - ap_idle (Read)
//        bit 3  - ap_ready (Read)
//        bit 7  - auto_restart (Read/Write)
//        others - reserved
// 0x04 : Global Interrupt Enable Register
//        bit 0  - Global Interrupt Enable (Read/Write)
//        others - reserved
// 0x08 : IP Interrupt Enable Register (Read/Write)
//        bit 0  - Channel 0 (ap_done)
//        bit 1  - Channel 1 (ap_ready)
//        others - reserved
// 0x0c : IP Interrupt Status Register (Read/TOW)
//        bit 0  - Channel 0 (ap_done)
//        bit 1  - Channel 1 (ap_ready)
//        others - reserved
// 0x10 : Data signal of ap_return
//        bit 31~0 - ap_return[31:0] (Read)
// (SC = Self Clear, COR = Clear on Read, TOW = Toggle on Write, COH = Clear on Handshake)



Analysis 画面を示す。
Max_Pooling_3_180225.png

C 4 ステートまである。

Max_Pooling_4_180225.png
  1. 2018年02月25日 03:59 |
  2. DNN
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


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

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