VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術...

13
分散制御用Dependable Responsive Multithreaded Processor (D-RMTP) 慶應義塾大学大学院 山﨑 信行 (Nobuyuki Yamasaki) 東京大学大学院 稲葉 雅幸 (Masayuki Inaba) NECアクセステクニカ 和田喜久男 (Kikuo Wada) 研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎 (東大) 超分散 100自由度、60コントローラ HRP3L-JSK (東大) 大出力脚 80V: cont.50[A], max.200[A]

Transcript of VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術...

Page 1: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

分散制御用Dependable Responsive Multithreaded Processor (D-RMTP)

慶應義塾大学大学院 山﨑 信行 (Nobuyuki Yamasaki)

東京大学大学院 稲葉 雅幸 (Masayuki Inaba)

NECアクセステクニカ 和田喜久男 (Kikuo Wada)

研究領域:ディペンダブルVLSIシステムの基盤技術

ターゲット:ヒューマノイドロボットの分散制御

小次郎 (東大)

超分散

100自由度、60コントローラ

HRP3L-JSK (東大)

大出力脚

80V: cont.50[A], max.200[A]

Page 2: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

ヒューマノイドロボットの要求仕様

SiPサイズHRP3L-JSK: 30mm角 → 小次郎: 20mm角

リアルタイム性ローカル:時間粒度10μsecネットワーク:時間粒度100μsec

耐ノイズ性: 80V 200Aのモータノイズ耐熱性: 周囲の温度80℃スケーラビリティ: 60nodes低消費電力:Max.1W/node, Typ.0.3W/node, Sleep:0.01W/node高演算性能: Haswell 3GHz

7軸分のモータ制御: 2kHzはギリギリ間に合う30関節ヒューマノイドだと複数コア必要

高ディペンダビリティ

Responsive Link

D-RMTPⅠDependable Responsive Multithreaded ProcessorⅠ

リアルタイムプロセシングユニット : RMT PU8-way優先度付Simultaneously Multi Threading32スレッド分のコンテキストキャッシュ

リアルタイム通信機構 : Responsive Link(ISO/IEC 24740)優先度制御によるパケット追い越し優先度付け替えによるパケットの加減速

コンピュータI/O ペリフェラルPCI-XIEEE-1394EthernetUARTEtc.

制御用I/ペリフェラルPWM generatorsPulse countersSPISpaceWireDigital portsEtc.

Page 3: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

リアルタイムスケジューリング

Time

Task 0Task 1Task 2Task 3

low

high

context switch

Task 4Task 5Task 6Task 7System

Release TimeDeadline

Time

Task 0Task 1Task 2Task 3

low

high

Task 4Task 5Task 6Task 7System

コンテキストスイッチ・オーバヘッドの除去

優先度既存のOSだと数千ク

ロックのコンテキストスイッチ・オーバヘッド(黄色部)Linuxの場合: 約8,000クロックサイクル

複数の優先度付きコンテキスト:OSのタスクキューに相当

優先度の高い順にハードウェアで実行

時間制約(デッドラインや周期)を優先度に変換して優先度の高い順にタスクを実行

EDF: デッドラインの近い順に高優先度

リアルタイム実行(RMT実行)

Time

Task 0Task 1Task 2Task 3

優先度低

優先度高

Task 4Task 5Task 6Task 7System

Release Time

Deadline

リアルタイム処理と高スループットの両立

複数の優先度付きコンテキスト

複数のパイプラインと演算器で優先度順に同時実行

Page 4: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

リアルタイム処理用プロセッサResponsive Multithreaded Processing Unit

リアルタイム処理RMT Architecture: 優先度付SMT (Simultaneous Multithreading)複数スレッド( 大8スレッド)を優先度順に同時実行

リソースの優先度制御(右図の黄色の機能ブロック)

コンテキストスイッチをRMT実行に変換

割り込みによるスレッド制御

コンテキストキャッシュ(32スレッド分)IPC制御機構(スレッドの実行速度を一定にPID制御)

2次元ベクトル演算機構リアルタイム動画像処理向け

RT-DVFS (リアルタイム動的電圧周波数制御)

IPC ControlUnit

IPC制御 (スレッドの速度制御)

0

0.1

0.2

0.3

0.4

0.5

0.6

0 10 20 30 40 50 60 70 80 90

Period(10k Clockcycle)

IPC

md5 gzip sort matrix

各ベンチマークを同時実行

優先度:

matrix > sort > gzip > md5目標IPC: シングルスレッド実行時の平均IPCの70%

IPC制御された実行時間を用いてスケジューリングすることによりリアルタイム性能(スケジューラビリティ)が向上

WCETを用いず、より現実的なリアルタイム処理を可能に

高いスケジューラビリティ

高いスループット

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0 10 20 30 40 50 60 70 80 90

Period(10k Clockcycle)

IPC

md5 gzip sort matrixIPC制御なし

IPC制御あり

スレッドの実行速度が時間と共に変化

スレッドの実行速度が一定

Page 5: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

RT-DVFS

リアルタイム性を保証した上で動的に供給電圧と動作周波数を制御

DDVf max

highf余裕時間

周波数

時間

highV電圧

lowf

電圧 lowV周波数

時間

電圧制御と周波数制御の関係

fVCP DDSW 2

消費電力の削減量DFS:小DVS:大

-75%

-52%-16%

IPC制御と併用することでリアルタイム性を正確に維持しつつ省電力を実現

Page 6: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

電圧制御と温度の関係

-9%

-6.5%

-2%

電圧周波数制御は

熱削減、および、安定動作に貢献

Temperature-awareRT-DVFS

リアルタイム通信機構Responsive Link

Responsive Linkの主な機能・特徴

追越機能付ネットワークスイッチ (高い優先度のパケットがノード毎に低い優先度のパケットを追越)(通信におけるプリエンプションを実現)

優先度の付け替え (パケットの優先度はノード毎に新優先度に付け替え可能)データとイベントの分離・独立したルーティング

同じネットワークアドレスを持つパケットの経路を優先度によって別々に設定及び変更可能(専用回線や迂回路の実現)前方エラー訂正(FEC)リンク速度可変: 800~12.5 [Mbps/link]トポロジーフリーなPoint-to-point通信標準化

国内:情報処理学会試行標準 ITSJ-TS 0006:2003国際:ISO/IEC 24740:2008

動的にラインコードとエラー訂正を選択{RS},{BCH, HAM},{BS, 8b10b, 4b10b}4b10b: エラー訂正・検出付ラインコード

IPSJ-TS, ISO/IEC標準に

Page 7: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

D-RMTPⅠSoCの実装

バックアップ電源領域

RTC, SRAM,PWM, etc.

RMTProcessing Unit

I-Cache

D-Cache

Responsive Link Ⅲ各種I/O

SpaceWire,Ether, UART,IEEE1394,SPI, I2C,

DMAC, etc.

10mm

10mm

D-RMTPⅠ レイアウト D-RMTPⅠ チップ写真

Flip chip実装

30mm角D-RMTP SiP

D-RMTP用温度センサ

DRAM

Flash D-RMTP

FPGA電源電圧監視用A/Dコンバータ

温度センサ用(D-RMTP)A/Dコンバータ

温度センサ用(DRAM)A/Dコンバータ

RT-DVFS用電源(DC/DC)

RT-DVFS用ポテンショメータ

DRAM用温度センサ

RT-DVFS機構

PCのほぼすべての機能+組込みマイコン+リアルタイム処理機能+リアルタイム通信機能を30mm角に集積

DRAMモジュール

Page 8: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

20mm角D-RMTP SiP

DRAM

D-RMTP

FlashD-RMTP用温度センサ

RT-DVFS用可変電圧電源(DC/DC)

RT-DVFS用ポテンショメータ

温度センサ用A/Dコンバータ

PCのほぼすべての機能+組込みマイコン+リアルタイム処理機能+リアルタイム通信機能を20mm角に集積

RT-DVFS機構

電源電圧監視用A/Dコンバータ

エントリー向け超小型分散制御用SiP

元々はD-RMTPⅡのI/O制御用SoCとして研究開発したI/O core SoCを応用した分散制御用SiP東大JSKの分散制御ロボットに組込んで運用・評価

ロボットの分散制御、センサーネットワーク、ユビキタス等の様々な用途への応用を可能にResponsive Linkの評価・運用超小型(26mm x 28mm)で評価用途のみならず実システムにそのまま組込んで運用可能スタッカブルに機能拡張

I/O core基板:マザーボード機能及びディジタル制御機能USB基板:USBでプログラムをダウンロードアナログ基板:ADC等のアナログ制御機能

Page 9: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

I/O core SoCの設計

5mm様々な制御用I/Oとコンピュータ用I/Oを搭載RMT PU(MIPS)互換Responsive LinkPCI (initiator/target), GPIO, SPI, I2C, UART, PWM in, PWM out, Encoder等バックアップ電源を供給(SRAM, Encoder, RTC等)TSMC 130nm 5mm角

マザーボード

アナログI/F基板(中段)

USB基板(上段)

SDRAM

I/O core SoC

FPGARLコネクタ RLコネクタ

RS232C I/F

RS485 I/F

A/D コンバータ

加速度センサ 温度センサ

アナログ入力コネクタ

I2CコネクタSPIコネクタ

FPGA

USBペリフェラルコネクタ USBホストコネクタ

Flash ROM

Flash ROM

USB I/F

シリアルI/Fコネクタ

超小型分散制御用SiPの各基板

USBホストコネクタ

JTAGコネクタ

I/O core基板(下段)

サイズ:26mm x 28mm

すべての基板スタッカブル

Page 10: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

I/O core SiPへの移行

HOS v4による 大6タスク実装サーボタスク

1ms(1kHz)位置、力、剛性のPID制御計算1~4軸の制御計算

モータ温度推定タスク10ms(100Hz)モータコア温度を推定

USB通信タスク16ms(62.5Hz)インタラプト転送往復で 低32ms

ADコンバータタスク16ms(62.5Hz)

シリアル通信タスク100ms< (コマンド依存)デバッグ用メッセージ

LED点滅タスク500ms(2Hz)モータ温度状態の指示

H8制御基板での機能

従来のタスクをFavor OS上に実装

Responsive Linkによるノード間通信

制御状態値のノード間共有

多軸制御タイミングの同期

センサノードとモータ駆動ノードの分離

通信経路の冗長化

D-RMTP搭載制御基板との連携

メモリ資源

ロボット形状モデルの導入

拡張性

分散ノード上の加速度センサによる姿勢推定

SPI,I2C,USBセンサの利用

D-RMTP/Responsive Link/ROS連携 (1/2)

ロボット用ミドルウェアROS (Willow Garage), OpenRTM (産総研)

ロボットに用いる通信/制御/センサドライバなどの連携が容易に可能

オープンな規格であることで多くのプログラムが公開(東大グループも多数公開)

導入が容易なシステム利用者が増えるためには容易に使える必要既存のロボットへの組み込みを可能に利用者が容易に構築/設定が変更できる仕組みがROS等にはあり、それらを利用

Page 11: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

D-RMTP/Responsive Link/ROS連携 (2/2)

非リアルタイムアプリケーションとリアルタイムネットワークの連携

ロボットは上位の非リアルタイムの計算機から指令を受け取る (ROS等は主にこのレイヤー)リアルタイムのプロセッサ群と上位を接続

組込み機器においてROSを用いるROS-Serialの仕組みを利用

リアルタイムプロセッサ/センサ群ではD-RMTPとResponsive Linkを利用

ROS等を用いることで既存のロボットへのリアルタイム制御/センサアレイの追加導入が容易に

既存ロボットシステムにセンサアレイを搭載しディペンダビリティの検証を行う

リアルタイムプロセッサ

通信(シリアル等)

IO Core

IO Core

IO CoreIO Core

IO Core

IO Core

IO CoreIO Core

既存システム(ROS等)

プログラミング環境

RMT Processor : MIPS命令上位互換:スレッド制御、ベクトル演算等の独自命令を拡張・追加

MIPS命令C, C++言語を利用可

RMT Processor独自命令(マルチスレッド制御、ベクトル演算など)

アセンブリ言語を利用可ライブラリによるサポート

OSRT-OS: FavorRMT-LinuxiTRON

命令レベルシミュレータ:RmtSim

Page 12: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

RmtSim: 命令レベルシミュレータ

RMTPの機能をPC上で高速にシミュレートRMTPのハードウェア論理を命令レベル実行

プログラムの実行・I/Oをシミュレート

利用可能OSRMT-Linux

iTRON

favor等全て可能

Responsive Link使用可能

PCのみで開発可能

Host OSLinux, Solaris

Cygwin, … RmtSim上でのRmt-Linuxの実行

分散制御コントローラ

30mm角D-RMTPⅠSiP搭載分散制御コントローラ

20mm角D-RMTPⅠSiP搭載分散制御コントローラ

I/O Core SiP搭載分散制御コントローラ

共通コネクタでドッキング・通信: Responsive Link・周辺(汎用IO・モータドライバ等)

大出力2軸駆動基板 分散制御小型基板 汎用モータドライバ基板 汎用センサIO基板

Page 13: VLSI - JST...研究領域:ディペンダブルVLSIシステムの基盤技術 ターゲット:ヒューマノイドロボットの分散制御 小次郎(東大) 超分散 100自由度、60コントローラ

【外部I/F】・IEEE1394・Ether・USB2.0 (Host & Peripheral)・Responsive Link・Space Wire・PWM・Encoder・Digital Port・RS232C・SPI・ADC・PIO・JTAG (RMTP & FPGA)

30mm角SiP基板

D-RMTPⅠを搭載した機能の評価ができる名刺サイズキットの開発D-RMTPⅠが搭載しているI/Fを可能な限り外部に出力USB 2.0(HostとPeripheral両方)によるクロス開発を実現USB電源か5V単一電源で動作

D-RMTP 評価キット

出口戦略にむけて

出口戦略:各種技術(IP、方式、SoC、SiP等)の提供

組込み用途のディペンダビリティの評価指標定量的な評価指標客観的な評価方法

D-RMTP SoCI/O Core SoCリアルタイム処理用プロセッサ

RMT PU IPIPC制御方式:スレッド(プログラム)の実行速度制御

D-RMTP SiP (20mm角, 30mm角)分散リアルタイム処理用通信リンク (ISO/IEC 24740)

Responsive Link IPResponsive Link 搭載チップ (D-RMTP, I/O Core)

RT-DVFS (リアルタイム動的電圧周波数制御)リアルタイムスケジューラNoCアーキテクチャ

NoCコンパイラRT-NoCアーキテクチャ

3次元実装方式分散制御用コントローラ

D-RMTP SoC

30mm角D-RMTP SiP

D-RMTP Controller20mm角D-RMTP SiP

I/O Core SiP