SlideShare a Scribd company logo
OpenCLのBSP改造
board.qsys
freeze_wrapper.v
top.v
I/OChannel
QSFP-1
QSFP-2
kernel_system
PR OpenCL Code
40G IP
40G IP
router
Original BSP
システム構造
• top.v
• top level module
• board.qsys
• 各種Peripheralのコント
ローラが含まれるQsysシス
テム (=BSP)
• kernel_system
• OpenCLコードから⽣成さ
れるモジュール
• Partial Reconfiguration
(PR)によって置換されるの
はここの部分
OpenCL BSP flow
• top (default)
• aocコマンドのデフォルトフロー
• base.qarファイルからBSPの合成済みネットリストを抽出し、OpenCL由来のコード
と合わせて合成する
• PartialReconfiguration (PR) 可能
• ユーザー向け
• flat
• BSP由来のHDLと、OpenCL由来のHDLを同時に合成する
• FPGA内部のパーティションを作成しない
• PR不可
• BSP開発者向け
• base
• base.qarを作成するためのフロー
• BSP開発者向け
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Top Flow
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Base Flow
User
OpenCL
User
HDL
BSP
HDL
Flat Flow
+
Mixed
HDL
Mixed
Netlist
FPGA Chip
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Top Flow
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Base Flow
User
OpenCL
User
HDL
BSP
HDL
Flat Flow
+
Mixed
HDL
Mixed
Netlist
FPGA Chip
+Net
+Net
+Net
+Net
+Net
+Net
+Net
+Net
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Top Flow
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Base Flow
User
OpenCL
User
HDL
BSP
HDL
Flat Flow
+
Mixed
HDL
Mixed
Netlist
FPGA Chip
+Net
+Net
+Net
+Net
+Net
+Net
+Net
+Net
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Top Flow
BSP
Netlist
User
OpenCL
User
HDL
User
Netlist
FPGA Chip
BSP
Archive
BSP
HDL
Base Flow
User
OpenCL
User
HDL
BSP
HDL
Flat Flow
+
Mixed
HDL
Mixed
Netlist
FPGA Chip
OpenCL BSP flow for dev.
• flat
• 合成にかかる時間が短い
• BSP部のタイミングが満たせるかどうか不安定
• OpenCLコードを少し変更するだけでMetしない可能性を含む
• base
• 2回 (base+top) の合成が必要
• 開発のイテレーションが⻑くなる
• topだけでも、flatよりも合成時間が⻑い
• Timingを⼀度満たせば、それを使い回せる
base.qar作成
• cd $bsp
• rm hardware/$board/base.qar
• cp
$INTELFPGAOCLSDKROOT/board/custom_platform_toolkit/tests/boa
rdtest/boardtest.cl .
• export AOCL_BOARD_PACKAGE_ROOT=$bsp
• aoc -bsp-flow=base -seed=$seed -board=$board -board-
package=$bsp -no-interleaving=default boardtest.cl
• cp boardtest/base.qar hardware/$board
boardtest.cl
• synthesisの最適化で信号が消失するとPRでも回復できない
• SDK付属のboardtest.clファイルを使ってbase.qarを作成する
• メモリバスとsnoopバスを使うようなコードが含まれている
• 改造で追加した信号に対しても、かならずその信号をdriveする
ようにOpenCLコードを追加する
• quartus_sh_compile.logに以下のような警告が出るので注意する
Warning (17912): Partition "freeze_wrapper_inst|kernel_system_inst"
contains an output port, "kernel_mem0_address[0]~OPORT",
that connects to partition and has no routing.
It is possible that the destination logic was swept away.
Consider modifying your design by inserting Wire LUTs
so that every partition output has a routed destination.

More Related Content

PDF
Website build exercise_opsguide_japanese
PDF
Railsの運用について
PPTX
Mod lua
PDF
New configurationoferogamescaperev3
PDF
New configurationoferogamescaperev2
PDF
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
PDF
セキュアVMの構築 (IntelとAMDの比較、あともうひとつ...) - AVTokyo 2009
PPTX
Ironic introduction
Website build exercise_opsguide_japanese
Railsの運用について
Mod lua
New configurationoferogamescaperev3
New configurationoferogamescaperev2
第2回 松本勉強会 2012 05 25 - apache2.4とmod_lua
セキュアVMの構築 (IntelとAMDの比較、あともうひとつ...) - AVTokyo 2009
Ironic introduction

What's hot (10)

KEY
MHA, Murakumo & Me
PPTX
PostgreSQL共有バッファと関連ツール
PDF
Bgworkerで簡易クラスタ管理
PPTX
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
PDF
これからはじめるCoda2とSublime Text 2
PPTX
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
ODP
Mysql(クライアント)の出力が変わるオプション達
PDF
zend-expressiveを触ってみよう
PPTX
Sql azure database copy
PDF
Yesod on Heroku
MHA, Murakumo & Me
PostgreSQL共有バッファと関連ツール
Bgworkerで簡易クラスタ管理
Webサーバ勉強会4 nginx で php-fpm を動かしてみた
これからはじめるCoda2とSublime Text 2
OrePAN と cpanm を使ったCPAN モジュールの部分ミラーの運用管理 :Yokohama.pm #8
Mysql(クライアント)の出力が変わるオプション達
zend-expressiveを触ってみよう
Sql azure database copy
Yesod on Heroku
Ad

Similar to BSP改造Tips (17)

PDF
PEZY-SC programming overview
PDF
OSvの概要と実装
PPTX
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
PDF
serverless
PDF
ポータブルコンポーネントマネージャの実装
PDF
PostgreSQL10徹底解説
PDF
Bloopのちょっぱやコンパイルで開発効率を上げたい
PDF
IT Pro のための PowerShell スクリプティング
PDF
How to use Ceph RBD as CloudStack Primary Storage
PPTX
OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?
PDF
Webフレームワークを作ってる話 #osakapy
PDF
OpenContrailのソースコードを探検しよう!
PDF
NDS#31
PDF
WalBの紹介
PDF
JBoss AS 7 / EAP 6 modules and class loading
PPTX
Klocwork C/C++解析チューニング 概要
PDF
OSC2012 Tokyo/Spring JOSUG
PEZY-SC programming overview
OSvの概要と実装
Seastar:高スループットなサーバアプリケーションの為の新しいフレームワーク
serverless
ポータブルコンポーネントマネージャの実装
PostgreSQL10徹底解説
Bloopのちょっぱやコンパイルで開発効率を上げたい
IT Pro のための PowerShell スクリプティング
How to use Ceph RBD as CloudStack Primary Storage
OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?
Webフレームワークを作ってる話 #osakapy
OpenContrailのソースコードを探検しよう!
NDS#31
WalBの紹介
JBoss AS 7 / EAP 6 modules and class loading
Klocwork C/C++解析チューニング 概要
OSC2012 Tokyo/Spring JOSUG
Ad

More from Ryohei Kobayashi (15)

PDF
SWoPP2020オンライン懇親会チュートリアル
PDF
OpenCL-ready High Speed FPGA Network for Reconfigurable High Performance Comp...
PDF
A survey of how to efficiently implement application-specific hardware on an ...
PDF
A High-speed Verilog HDL Simulation Method using a Lightweight Translator
PDF
FACE: Fast and Customizable Sorting Accelerator for Heterogeneous Many-core S...
PDF
FPGAを用いた世界最速のソーティングハードウェアの実現に向けた試み
PDF
FPGAベースのソーティングアクセラレータの設計と実装
PDF
3bOS: A flexible and lightweight embedded OS operated using only 3 buttons
PDF
多数の小容量FPGAを用いた スケーラブルなステンシル計算機の開発
PDF
Fully-Functional FPGA Prototype with Fine-Grain Programmable Body Biasing (FP...
PDF
hpc2013_20131223
PDF
LT_2nd -Devil May Cry-
PDF
IEICE technical report (RECONF), January 2013.
PDF
CMPP 2012 held in conjunction with ICNC’12
PDF
私が上智に通って唯一誇れること
SWoPP2020オンライン懇親会チュートリアル
OpenCL-ready High Speed FPGA Network for Reconfigurable High Performance Comp...
A survey of how to efficiently implement application-specific hardware on an ...
A High-speed Verilog HDL Simulation Method using a Lightweight Translator
FACE: Fast and Customizable Sorting Accelerator for Heterogeneous Many-core S...
FPGAを用いた世界最速のソーティングハードウェアの実現に向けた試み
FPGAベースのソーティングアクセラレータの設計と実装
3bOS: A flexible and lightweight embedded OS operated using only 3 buttons
多数の小容量FPGAを用いた スケーラブルなステンシル計算機の開発
Fully-Functional FPGA Prototype with Fine-Grain Programmable Body Biasing (FP...
hpc2013_20131223
LT_2nd -Devil May Cry-
IEICE technical report (RECONF), January 2013.
CMPP 2012 held in conjunction with ICNC’12
私が上智に通って唯一誇れること

BSP改造Tips