Weitere ähnliche Inhalte
Ähnlich wie 高位合成ツールVivado hlsのopen cv対応 (20)
高位合成ツールVivado hlsのopen cv対応
- 2. 2
自己紹介
●
●
● 11 年前から「 FPGA の部屋」のブログを書いています
– http://marsee101.blog19.fc2.com/
● FPGA やそのツール、日記も書いています
● 爺さんなので早起きです
– 午前 3 時か 4 時ころ起きてブログを書いています
- 3. 3
FPGA
● Field Programmable Gate Array の略
● ロジックを書き込むといろいろな機能が実現できる IC
● マイクロソフトはどうやってBingをFPGAで実装した
か
● AWS で FPGA 利用可能インスタンスが登場
● 機械学習/Deep Learningの仕事が増える201
7年、ソフトウェアエンジニアがFPGAを学ぶべき理由
- 4. 4
FPGA の設計方法
● 回路図
● HDL (ハードウェア記述言語)
– Verilog HDL
– VHDL
– SystemVerilog
● 高位合成ツール( HDL を生成する)
– C ( Vivado HLS )
– Java ( Synthesijer )
– Python ( PyCoRAM 、 Polyphony )
- 5. 5
Xilinx 社( FPGA のメーカー)の FPGA 用ツール
● Vivado , Vivado HLS
– Vivado
● HDL やブロックデザイン(図)を使って FPGA をデザイン
– Vivado HLS
●
C, C++, System C を使って IP を作る
●
SDx
– SDSoC
● ARM+FPGA ( Zynq )チップを使って C, C++ からハードウェアやアプリケー
ションを自動生成する
– SDAccel
●
OpenCL が使える。大規模システム
- 6. 6
Vivado HLS について
● C, C++ で書くと HDL に変換され IP 化(無料、ただしデバイス
限定)
● pragma で動作やインターフェースなどを指定する必要がある
● 今のところ、ハードウェアを知らないと性能が出ない
● 合成済みライブラリ
– hls_math ライブラリ( atan, sin, cos, log, log10, sqrt など)
– HLS ビデオライブラリ( OpenCV の一部をサポート)
– FFT や FIR 、線形代数ライブラリ( cholesky)
– HLS DSP ライブラリ( SDR アプリケーション)
- 7. 7
Vivado HLS の OpenCV 対応ライブラリ関数
AXIvideo2cvMat AXIvideo2CvMat AXIvideo2IplImage cvMat2AXIvideo CvMat2AXIvideo
cvMat2hlsMat CvMat2hlsMat CvMat2hlsWindow hlsMat2cvMat hlsMat2CvMat
hlsMat2IplImage hlsWindow2CvMat IplImage2AXIvideo IplImage2hlsMat
AXIvideo2Mat Mat2AXIvideo Array2Mat Array2Mat
ビデオプロセッシング
AbsDiff AddWeighted And Avg AvgSdv
Cmp CmpS CornerHarris CvtColor Dilate
Duplicate EqualizeHist Erode FASTX Filter2D
GaussianBlur Harris HoughLines2 Integral InitUndistortRectifyMap
Max MaxS Mean Merge Min
MinMaxLoc MinS Mul Not PaintMask
PyrDown PyrUp Range Remap Reduce
Resize Set Scale Sobel Split
SubRS SubS Sum Threshold Zero
OpenCVインタフェース
AXIインターフェース
「Vivado Design Suite ユーザー ガイド 高位合成 UG902 (v2016.4) 2016 年 11 月 30 日」参照
https://japan.xilinx.com/support/documentation/sw_manuals_j/xilinx2016_4/ug902-vivado-hig
h-level-synthesis.pdf
- 8. 8
OpenCV ライブラリ使用例
( FASTX コーナー検出)
● Vivado HLS で作成した FASTX コーナー検出 IP を使用
● カメラからの画像をリアルタイムに FASTX コーナー検
出
● カメラ・インターフェース IP からの AXI4-Stream
● FASTX コーナー検出 IP
● ビットマップ・ディスプレイ・コントローラ IP
- 13. 13
関連する「 FPGA の部屋」のブログ記事
● FASTX コーナー検出による物体の形状検出
2 ( Vivado HLS 2016.4 プロジェクト)
– http://marsee101.blog19.fc2.com/blog-entry-3710.html
● FASTX コーナー検出による物体の形状検出
1 ( Vivado 2016.4 プロジェクト)
– http://marsee101.blog19.fc2.com/blog-entry-3709.html
● OpenCV カテゴリ
– http://marsee101.blog19.fc2.com/blog-category-113.htm
l