11. ROS 2の新機能
• DDS (Data Distribution Service)
• Quality of service
• Lifecycle state machine
• Actions
• Intra-process communication
• ros1bridge
• colcon build tool
• Python launch system
• Multi platform support
11
https://www.slideshare.net/takasehideki/
robot-operating-system-236990359/22
https://shop.cqpub.co.jp/hanbai/books/MTR/MTR202009.html
20. データセンター
• Microsoft Catapult
20出典︓A. Putnam, et al., A Reconfigurable Fabric for Accelerating Large-Scale Datacenter Services, ISCA, 2014.
A. Putnam, Large-Scale Reconfigurable Computing in a Microsoft Datacenter, HotChips26, 2014.
21. 機械学習
• CNN/DNNのアクセラレータ
パイプラインをニューロン・シナプスの値が流れる
21出典︓K. Ovtcharov, et al. Toward Accelerating Deep Learning at Scale Using Specialized Hardware in the Datacenter, HotChips27, 2015.
C. Zhang, et al. Optimizing FPGA-based Accelerator Design for Deep Convolutional Neural Networks, FPGA 2014.
23. ⾼位合成 (HLS: High Level Synthesis)
• 抽象度の⾼い動作記述からRTLを⽣成する技術
汎⽤プログラミング⾔語によって振る舞いを定義
「なに」を⾏うかに重点を置いて設計する
ソフトウェア志向の協調設計との親和性が⾼い
23
プロセッサ
通信バス
FPGA
func2
main
func1
int_t main () {
a = func1(xxx);
b = a + func2(yyy);
}
int func1(int x) {
…
return val;
}
int func2(int x) {
int a[N];
int i;
for(i=0;i<N;i++){
a[i] = ・・・;
:
}
}
x
func
i
a
func2
25. ① HDLによるRTL設計
② ⾼位⾔語による設計
a.動作レベルの合成
b.HLS対応コードの⽣成
c.DSL for HLS
③ データフローによる設計
a.メタ⾔語からの合成
b.DFGからの(直接)合成
25
設計レベルでの分類
出典︓M. W. Numan, et al.: Towards Automatic High-Level Code Deployment on Reconfigurable Platforms:
A Survey of High-Level Synthesis Tools and Toolchains, IEEE Access, 2020.
26. ⾼位合成系 ⼤全
26出典︓R. Nane, et al.: A Survey and Evaluation of FPGA High-Level Synthesis Tools, IEEE T-CAD, 2015.
多くはC/C++と
その機能拡張
(#pragma, parallel lib.)
他にも,,,
• Scala (Chisel)
• Haskell (CλaSH)
• KARUTA (origin)
• Java (Synthesijier)
• Python (PyCoRAM)