TOPPERSの現状と⽅向性

TOPPERSカンファレンス2019

予稿集版

TOPPERSプロジェクトの現状と⽅向性〜第3世代カーネル(ITRON系)の開発状況〜
2019年6⽉14⽇

⾼⽥ 広章
NPO法⼈ TOPPERSプロジェクト 会⻑
名古屋⼤学 未来社会創造機構 教授
名古屋⼤学 ⼤学院情報学研究科 教授
附属組込みシステム研究センター⻑
APTJ株式会社 代表取締役会⻑・CTO

Email: hiro@ertl.jp URL: http://www.ertl.jp/~hiro/
Hiroaki Takada

1TOPPERSの現状と⽅向性

AGENDATOPPERSプロジェクトの概要と活動指針（復習）▶ これまでの開発の流れと現状▶ 次の10年を見据えた活動指針（2011年度に策定）▶ 組込みソフトウェア開発効率化のためのTOPPERSTOPPERSプロジェクトの最新の成果▶ この1年にリリースした開発成果▶ TOPPERS BASE PLATFORM

TOPPERS第３世代カーネル（ITRON系）の開発状況▶ 第3世代カーネル（ITRON系）の必要性▶ TOPPERS/FMP3カーネル，TOPPERS/HRMP3カーネル＜残りは当日＞おわりに
Hiroaki Takada

2

TOPPERSの現状と⽅向性

TOPPERSプロジェクトの概要と活動指針 (復習)

Hiroaki Takada

3

TOPPERSの現状と⽅向性

TOPPERSプロジェクトとは?
TOPPERS = Toyohashi Open Platform for
Embedded and Real-Time Systems

プロジェクトの活動内容▶ ITRON仕様の技術開発成果を出発点として，組込みシステム構築の基盤となる各種の高品質なオープンソースソフトウェアを開発するとともに，その利用技術を提供
組込みシステム分野において，Linuxのように広く使われるオープンソースOSの構築を⽬指す!
プロジェクトの推進主体▶ 産学官の団体と個人が参加する産学官民連携プロジェクト▶ 2003年9月にNPO法人として組織化▶ それ以前は，名古屋大学（2002年度までは豊橋技術科学大学）高田研究室を中心とする任意団体として活動
Hiroaki Takada

4

TOPPERSの現状と⽅向性

TOPPERSプロジェクトの狙い
決定版のITRON仕様OSの開発 完了▶ ITRON仕様がかかえる過剰な重複投資と過剰な多様性の問題を解決（または軽減）
次世代のリアルタイムOS技術の開発▶ 組込みシステムの要求に合致し，ITRONの良さを継承す
る次世代のリアルタイムOS技術を開発
Linuxと類似のOSをもう１つ作っても意味がない!
▶ オープンソースソフトウェア化により産学官の力を結集
組込みシステム開発技術と開発支援ツールの開発▶ 高品質な組込みシステムの効率的な開発を支援
組込みシステム技術者の育成への貢献▶ オープンソースソフトウェアを用いた教育コースや教材を開発し，それを用いた教育の場を提供
Hiroaki Takada

5

TOPPERSの現状と⽅向性

主な開発成果物

⼀般公開しているもの

第１世代カーネル▶ TOPPERS/JSPカーネル，TOPPERS/FI4カーネル▶ TOPPERS/ATK1（Automotiveカーネル バージョン1）▶ TOPPERS/FDMPカーネル，TOPPERS/HRPカーネル
新世代（第２世代）カーネル▶ TOPPERS/ASPカーネル，TOPPERS/SSPカーネル▶ TOPPERS/FMPカーネル，TOPPERS/HRP2カーネル
第３世代カーネル（ITRON系）▶ TOPPERS/ASP3カーネル，TOPPERS/HRP3カーネル▶ TOPPERS/FMP3カーネル，TOPPERS/HRMP3カーネル
AUTOSAR関連▶ TOPPERS/ATK2（Automotiveカーネル バージョン2）▶ TOPPERS/A-COMSTACK，TOPPERS/A-WDGSTACK▶ TOPPERS/A-RTEGEN
Hiroaki Takada

6

TOPPERSの現状と⽅向性

ミドルウェア▶ TINET，FatFs for TOPPERS▶ TOPPERS/ECNL（ECHONET Lite通信ミドルウェア）▶ RLL（Remote Link Loader），DLM（Dynamic Loading Manager）
ツール，その他▶ TECS（TOPPERS組込みコンポーネントシステム）▶ TOPPERS BASE PLATFORM（ST，CV，RV）▶ SafeG（高信頼組込みシステム向けデュアルOSモニタ）▶ EV3RT（LEGO Mindstorms EV3向けSPF）▶ MDCOM（MultiDomain Communication Module）
教育コンテンツ▶ 初級・中級実装セミナー教材▶ 基礎1・基礎2・基礎3実装セミナー教材▶ 基礎ハードウェア設計セミナー教材▶ ETロボコン向けTOPPERS活用セミナー教材
Hiroaki Takada

7

TOPPERSの現状と⽅向性

開発成果物の主な利⽤事例

IPSiO GX e3300 (リコー)
スカイラインハイブリッド (日産)
エスクード (スズキ)

UA-101 (Roland)

H-IIB（JAXA)

Cell3iMager duos(SCREENホールディングス)Hiroaki Takada

OSP-P300(オークマ)SoftBank945SH（シャープ）

PM-A970(エプソン)
8

TOPPERSの現状と⽅向性

次の10年を⾒据えた活動指針 (2011年度に策定)
Smart Futureのための組込みシステム技術▶ 組込みシステム技術を，持続可能なスマート社会の実現（Smart Future）のための重要な要素技術の１つと位置づけ，その研究開発と普及に取り組む▶ それに向けての研究開発課題▶ Safety & Security▶ Ecology（高エネルギー効率）▶ Connectivity
コンソーシアムによるオープンソースソフトウェア開発▶ 同じ技術に関心を持つプロジェクトメンバによりコンソーシ
アムを結成し，複数組織の協力によりソフトウェアを開発▶ 開発したソフトウェアは，TOPPERSプロジェクトからオープンソースソフトウェアとして公開
Hiroaki Takada

9

TOPPERSの現状と⽅向性

重点的に取り組んでいるテーマ※ SPF：ソフトウェア

プラットフォーム

次世代のリアルタイムカーネル技術▶ TOPPERS第3世代カーネル（ITRON系）▶ 車載システム向けRTOS（AUTOSAR OS仕様ベース）
ソフトウェア部品化技術▶ TECS（TOPPERS組込みコンポーネントシステム）
組込みシステム向けSPFと開発支援ツール▶ 車載制御システム向けSPF，宇宙機向けSPF▶ TOPPERS BASE PLATFORM，ホームネットワーク▶ 開発支援ツール（シミュレーション環境，可視化ツール）▶ 仮想化技術（SafeG），ドメイン間通信（MDCOM）
技術者育成のための教材開発▶ プラットフォーム技術者の育成▶ ETロボコン向けSPFと教材の提供
Hiroaki Takada

10

TOPPERSの現状と⽅向性

TOPPERSカーネル開発ロードマップ
ATK3?

ATK2

ATK1

⾞載系

第3世代カーネル

第2世代カーネル

第1世代カーネル

AUTOSAR仕様

HRＭＰ3

OSEK/VDX仕様マルチコア＆保護機能

FDMP

ＦＭＰ

マルチコア対応

マルチコア拡張

ＦＭＰ3
マルチコア

HRP

ITRON系

HRP2

メモリ保護

FI4
μITRON4.0
フルセット

HRP3

メモリ保護

TECS
コンポーネント 動的オブジェ
システム対応
クト生成

JSP

ASP

μITRON4.0
スタンダードプロファイル新世代カーネル
スタンダードプロファイル

パーティショニング

動的オブジェ
クト生成

ASP3
SSP

TECS
コンポーネントシステム対応第3世代カーネル
スタンダード

SSP3
最小セット

最小セット

2000

2004

Hiroaki Takada

2007

2010

2013 2015

2018

2020
11

TOPPERSの現状と⽅向性

組込みソフトウェア開発効率化のためのTOPPERS
応用分野毎のプラットフォームの構築・活用と共通化▶ 組込みソフトウェアプラットフォーム構築のための，品質が高く使いやすい（… 使うことで開発の効率化ができる）部
品と構築技術を提供する▶ いくつかの分野向けに，プラットフォーム全体を提供する
設計資産の再利用を促進する仕組みの構築▶ ソフトウェアコンポーネント技術（TECS）▶ TOPPERSソフトウェア自身の再利用（業界レベルでの設計資産の蓄積）
人材育成▶ オープンな教材（セミナー資料とソフトウェア）▶ “お手本としてのTOPPERS”
Hiroaki Takada

12

TOPPERSの現状と⽅向性

TOPPERSプロジェクトの最新の成果

Hiroaki Takada

13

TOPPERSの現状と⽅向性

この1年にリリースした主な開発成果! 特定ターゲット向けの簡易パッケージは除く
2018年6月〜2019年2月 一般公開
6月3日 mruby on EV3RT+TECS beta 2.1.0
6月6日 TOPPERS BASE PLATFORM（最初の一般公開）▶ TOPPERS BASE PLATFORM（ST） V1.3.0… STM32マイクロコントローラ向け▶ TOPPERS BASE PLATFORM（CV）V1.0.0… Cyclone V SoC（高機能 SoC-FPGA）向け▶ USBホストデバイスミドルウェアなど，各種のデバイスドライバとミドルウェアを含むSPF
8月23日 TOPPERS/EV3RT Version Beta 7.2
1月11日 SafeG 1.2.5
2月1日 MDCOM Release 1.0.1
Hiroaki Takada

14

TOPPERSの現状と⽅向性

2019年3月〜2019年4月 一般公開
3月23日 TOPPERS/ASP3カーネル Release 3.4.0
同日
TOPPERS/HRP3カーネル Release 3.1.0
同日
TOPPERS第3世代カーネル統合仕様書 Release
3.3.0
3月25日 TOPPERS BASE PLATFORM 最新版
3月30日 TOPPERS/HRMP3カーネルRelease 3.0.0（最初の一般公開）
4月1日 TOPPERS/FMP3カーネル Release 3.0.0（最初の一般公開）
5月9日 TOPPERS/ASP（Release 1.9.3）iRISC-V/32 HIFIVE1アーキテクチャ・GCC依存部パッケージ
早期リリース
5月9日 TOPPERS BASE PLATFORM（RV）V0.1.0▶ iRISC-V/32向け
Hiroaki Takada

15

TOPPERSの現状と⽅向性

TOPPERS BASE PLATFORM▶ 教育WGにおいて，リファレンスシステムとなりうる２種類のソフトウェアプラットフォームを開発
TOPPERS BASE PLATFORM（ST）▶ 12種類のSTM32 nucleo/Discoveryボードに対応▶ ARM Cortex-M0/M3/M4/M7を搭載▶ 各種の周辺デバイスをサポート▶ 基礎教育用（基礎１，新基礎２，新基礎３セミナーで利用）

Hiroaki Takada

16

TOPPERSの現状と⽅向性

TOPPERS BASE PLATFORM（CV）▶ DE0-Nano-SoC開発キット（Intel社 Cyclone V SoC（ARM

Cortex-A9×2＋FPGA））に対応

DICアーキテクチャの採用▶ デバイスドライバ，ミドルウェア群を，DIC（Device Interface

Component）アーキテクチャに基づき，階層化して構築
USBホスト／デバイスミドルウェア▶ TOPPERS BASE PLATFORM向けに新規に開発
Hiroaki Takada

17

TOPPERSの現状と⽅向性

TOPPERS第３世代カーネル(ITRON系) の開発状況

Hiroaki Takada18

TOPPERSの現状と⽅向性

ITRON仕様〜TOPPERSカーネル：30年超の歴史▶ ４世代のITRON仕様▶ ３世代のTOPPERSカーネル
第１世代

ITRON1/PX
1.0
μITRON
3.0

第3世代カーネル
スタンダードプロファイル新世代カーネル
スタンダードプロファイルμITRON4.0
スタンダードプロファイルITRON2

ASP3

ASP

JSP

ITRON仕様

第３世代

第２世代

ネル
TOPPERSNカ系ー）（ITRO

μITRON
4.0

μITRON（ver. 2）
2000
1984 1987

２年 1989 ４年 1993

Hiroaki Takada

７年

2007

８年

2015

６年 1999 2002
19

TOPPERSの現状と⽅向性

第3世代カーネル (ITRON系) の必要性求められている/求められつつある技術・機能▶ 機能安全からの要求に応えられるパーティショニング Safety▶ ティックレスの高分解能時間管理と外部時刻同期 Connectivity▶ マルチコアにおける動的ロードバランシング Ecology▶ メニーコアプロセッサへの対応（… 今後の課題）

一方，廃止すべきと考えられる機能もある

High performance▶ タスク例外処理機能 … 複雑さと比べて使われていない▶ メールボックス … 安全性の高い機能で代替

TOPPERS第3世代カーネル（ITRON系）へ▶ 新しい世代のリアルタイムカーネルと位置付けた方が，大胆な仕様変更（特に，機能の削除）が可能
Hiroaki Takada

20

TOPPERSの現状と⽅向性

TOPPERSカーネル開発ロードマップ (再掲)
ATK3?

ATK2

ATK1

⾞載系

第3世代カーネル

第2世代カーネル

第1世代カーネル

AUTOSAR仕様

HRＭＰ3

OSEK/VDX仕様

マルチコア＆保護機能

FDMP

ＦＭＰ

マルチコア対応

マルチコア拡張

ＦＭＰ3
マルチコア

HRP

ITRON系

HRP2

メモリ保護

FI4
μITRON4.0
フルセット

HRP3

メモリ保護

TECS
コンポーネント 動的オブジェ
システム対応
クト生成

JSP

ASP

μITRON4.0
スタンダードプロファイル新世代カーネル
スタンダードプロファイル

動的オブジェ
クト生成

ASP3
SSP

TECSコンポーネントシステム対応

第3世代カーネル
スタンダード

SSP3
最小セット

最小セット

2000

2004

Hiroaki Takada

2007

2010

新たに開発

パーティショニング

2013 2015

2018

2020
21

TOPPERSの現状と⽅向性

TOPPERS/FMP3カーネル

今年4⽉に公開

位置づけ▶ ASP3カーネルをマルチプロセッサ向けに拡張したもの（ASP3カーネルの上位互換）▶ TOPPERS/FMPカーネルの改良・拡張版▶ ただし，メニーコアプロセッサはターゲットから外す（メニーコアプロセッサ向けは，別途開発したい）
開発の背景▶ ASP3カーネルの上位互換となるマルチプロセッサ向けカーネルの必要性▶ 動的ロードバランシングを実現するためにカーネルに必要な機能を追加適用対象となるターゲットハードウェア▶ プロセッサ数が4〜8個程度以下のホモジニアスなマルチプロセッサシステム
Hiroaki Takada

22

TOPPERSの現状と⽅向性

TOPPERS/HRMP3カーネル

今年3⽉に公開“High Reliable Multiprocessor Profile”
位置づけ▶ HRP3カーネルをマルチプロセッサ向けに拡張したもの（HRP3カーネルの上位互換）▶ FMP3カーネルに対して保護機能／パーティショニング機能を追加したもの（FMP3カーネルの上位互換）▶ 第2世代では，マルチプロセッサ対応と保護機能の両方を持つITRON系カーネルは開発しなかった
開発の背景▶ 近年，高い信頼性が求められる組込みシステムの分野においても，マルチプロセッサの適用が求められている▶ 高い信頼性が求められる組込みシステムを開発する産業分野からの要望を受けて開発適用対象となるターゲットハードウェア▶ プロセッサ数が4〜8個程度以下のホモジニアスなマルチプロセッサシステム
Hiroaki Takada

23

TOPPERSの現状と⽅向性

今後の開発計画
リリース済みのカーネルと統合仕様書▶ 対応ターゲットシステムを増やしていく▶ 設計書などのドキュメントの充実を継続的に実施
TOPPERS/FMP3カーネル，HRMP3カーネル▶ TECS対応を予定（TECS WGの活動）
開発中のカーネル▶ TOPPERS/SSP3カーネル
メニーコアプロセッサ向けのカーネル（名称未定）▶ FMPカーネルはメニーコアプロセッサにも有用なことが示せているが，FMP3カーネルでは対象から除外▶ 今後，開発したいと考えている▶ ターゲットシステムを何にするかが課題
Hiroaki Takada

24

TOPPERSの現状と⽅向性

おわりにHiroaki Takada

25

TOPPERSの現状と⽅向性

おわりに 〜 恒例のお願い
TOPPERSの活動へのご意見を募集中▶ IoT時代における組込みシステムに必要な技術は？

利用事例の報告に関するお願い▶ 利用事例を紹介することは，さらなる採用の促進やプロジェクトの発展につながる → ユーザにも利益に▶ TOPPERSのユーザには，利用報告をお願いしたい
会員増加への協力のお願い▶ TOPPERSプロジェクトの会員数が減少傾向．新しいユーザの勧誘が必要▶ TOPPERSのユーザやサポータには，プロジェクトへの入会をお願いしたい
Hiroaki Takada

26