1 ロボットへの FPGA 導入を 容易化する コンポーネント技術 宇都宮大学大学院工学研究科情報システム科学専攻助教大川猛
2 従来技術とその問題点 FPGA(Field Programmable Gate Array) は 任意のディジタル論理回路をプログラム可能な LSI ソフトウェアでは時間がかかる画像認識処理等を ハードウェア化して 高速化 低消費電力化可能 問題点 FPGA 上の回路設計が難しい ロボットソフトウェアシステムへの導入が困難
3 新技術の特徴 従来技術との比較 従来技術の問題点であった FPGA をロボットシステムへ導入する開発を容易化することに成功した 従来は FPGA を使用できるのはハードウェア ソフトウェア両方の知識を持つ技術者に限られていたが FPGA を ROS* ノードとして動作させイーサネット経由でアクセス可能としたため 容易にロボットシステムに導入することが可能となった *ROS: Robot Operating System ロボットソフトウェア開発基盤
4 ROS (Robot Operating System) ロボットソフトウェア開発用の共通基盤 対象 OS:Ubuntu Linux ノード間の通信モデル :Publish/Subscribe( 出版 - 購読 ) モデル 利点 : コンポーネントの追加 修正が容易 豊富なソフトウェアコンポーネントを利用可能 例 ) カメラ入力 モータ制御 画像処理 カメラ入力 画像認識処理 行動計画 腕モータ センサ入力 脚モータ
5 ROS 準拠 FPGA コンポーネント技術の概要 提供可能な実装 (Xilinx FPGA 向け ) 1.SoC 版 : Zynq-7020(ARM 搭載 ) 2.Hardware 版 : Spartan-6 PS(ARM) Publisher Subscriber Publisher Subscriber input Publisher input ROS-Compliant FPGA Component(SoC) interface for FPGA PL(FPGA) Application interface for FPGA Hardware ROS-Compliant FPGA Component Subscriber HW FPGA Application Publisher HW output ROS node ROS node Subscriber output ROS 準拠 FPGA コンポーネント自動生成環境 (crecomp) 入力 : FPGA アプリケーション回路 (Verilog) および設定ファイル出力 : ROS ノード (Python/C++ および FPGA 回路 ) コンポーネント事例画像処理 : ラベリング (ARM プロセッサ上ソフトの 26 倍高速 ) センサフュージョン : 9 軸センサの情報を統合した姿勢推定
6 FPGA コンポーネント事例画像処理ラベリング ROS 準拠 FPGA コンポーネント ターゲット :Xilinx 社 Zynq ARM プロセッサ +FPGA が 1 チップ化 画像ラベリング処理 FPGA 回路を ROS ノードとして実装 1 画素 1 クロック処理 ARM より約 26 倍高速 ラベリングの FPGA 処理 解像度 :1920x1080 ARM: Cortex-A9 666Mhz FPGA: Zynq-7020 PC: Core i7 870 2.93GHz
7 FPGA コンポーネント化の課題 全体性能 : 約 1.7 倍の高速化 (ARM と比較 ) にとどまる SW only(arm) input ROS-Compliant FPGA Component(SoC) PS(ARM) Publisher Subscriber Publisher Subscriber interface for FPGA interface for FPGA output FPGA+ARM PL(FPGA) Application ROS node 0 0.5 1 1.5 2 2.5 3 3.5 time(s) 通信遅延時間がボトルネック ハードウェア化
8 通信のハードウェア化の検討 ROS ノード間の通信パケット内容の分析 1advertise ( bar, foo:1234) master 2{foo:1234} 1subscribe ( bar ) XMLRPC TCPROS Publisher topic name: bar hostname: foo XMLRPC port number: 1234 TCPROS port number :2345 Subscriber subscribe to bar Publisher 5 6 3requestTopic( bar,tcp) 4 foo:2345 Subscriber connect(foo:2345) data transmission Pub/Sub 通信は 2 ステップ XMLRPC を使用した登録処理 TCPROS によるデータ通信
9 提案のソフト ハード構成 Publisher SW/HW 構成 1advertise ( bar, foo:1234) master 2{foo:1234} 1subscribe ( bar ) XMLRPC TCPROS Subscriber SW/HW 構成 1advertise ( bar, foo:1234) master 2{foo:1234} 1subscribe ( bar ) XMLRPC TCPROS Publisher Publisher SW on PC 3requestTopic( bar,tcp) 4 FPGA:3456 Subscriber Publisher 3requestTopic( bar,tcp) 4 foo:2345 Subscriber SW on PC Publisher HW on FPGA Subscriber HW on FPGA
10 通信のハードウェア化のまとめ 方針 :TCPROSプロトコルのデータ通信のみをハードウェアTCP/IP(SiTCP) を用いて高性能化利点 :1ポート 1セッションのTCP/IPスタックで ROSノードを実現可能 ( 省ハードウェアコスト )
11 想定される用途 本技術の特徴を生かすためには 知的な判断が必要なロボットに適用することで画像認識性能向上 低消費電力化のメリットが大きいと考えられる 上記以外に ロボットシステムへの FPGA 導入開発コスト削減の効果が得られることも期待される また 産業機械や自動運転といった分野や用途に展開することも可能と思われる
12 実用化に向けた課題 現在 FPGAのみでROSノードとしての画像処理動作が可能なところまで開発済み しかし 制御を含むロボットシステムとしての動作が未実証である 今後 画像処理に基づくロボットシステム制御実験データを取得していく 実用化に向けて FPGAアプリケーション回路を入力としてハードウェアROSノードを生成できるよう設計自動化技術を確立する必要もあり
13 企業への期待 未解決のハードウェア ROS ノード自動生成については 現在開発済みの Zynq 向けの自動生成ツールの追加開発により克服できると考えている 画像認識による短遅延時間 ( マイクロ秒 ~ ミリ秒 ) での制御を行う必要がある応用を持つ 企業との共同研究を希望 また ロボット 産業機械 自動運転技術を開発中の企業には 本技術の導入が有効と思われる
14 本技術に関する知的財産権 発明の名称 : ネットワーク接続ハードウェ ア処理装置 出願番号 : 特願 2017-178197 出願日 出願人 発明者 :2017 年 9 月 15 日 : 宇都宮大学 : 大川猛 菅田悠平 大津金光 横田隆史
産学連携の経歴 2009 年 -2011 年 NEDO 省エネルギー革新技術開発事業 省エネ情報機器のための超並列バスによるヘテロジニアス マルチチップ積層 Cool System の研究開発 研究分担 ( 株式会社トプスシステムズ ( 独 ) 産業技術総合研究所 ) 2009 年 -2011 年戦略的基盤技術高度化支援事業 ( サポイン ) Ultra- Android: マルチコア対応組込みソフトウェア プラットフォームの研究開発 研究代表 ( 株式会社トプスシステムズ ( 独 ) 産業技術総合研究所 ) 2014 年 -2015 年 A-STEP ハイリスク挑戦タイプ ( 復興促進型 ) 安全な航海の為のネットワーク接続カメラによる画像認識システムの研究開発 研究代表 ( 株式会社アイディアイ 宇都宮大学 東京海洋大学 ) 2015 年 -2018 年総務省 SCOPE 委託事業 ( 若手 ) 低消費電力ロボット応用の為の FPGA コンポーネント化技術の研究開発 研究代表 現在 共同研究パートナー募集中 15
16 お問い合わせ先 宇都宮大学産学イノベーション支援センター 産学連携 イノベーション 知財部門 濵地正成 TEL 028-689-6316 FAX 028-689-6320 e-mail chiiki@miya.jm.utsunomiya-u.ac.jp