TOPPERSプロジェクトの最新状況

TOPPERSプロジェクト
プレス発表会

TOPPERSプロジェクトの最新状況と本⽇の発表内容について
2019年11⽉20⽇

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

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

1TOPPERSプロジェクトの最新状況

TOPPERSプロジェクトの概要と最新状況

Hiroaki Takada

2

TOPPERSプロジェクトの最新状況

TOPPERSプロジェクトとは?
▶ ITRON仕様の技術開発成果を出発点として，組込みシステム構築の基盤となる各種の高品質なオープンソースソフトウェアを開発するとともに，その利用技術を提供
組込みシステム分野において，Linuxのように広く使われるオープンソースOSの構築を⽬指す!
プロジェクトの狙い▶ 決定版のITRON仕様OSの開発 ← 完了
▶ 次世代のリアルタイムOS技術の開発▶ 組込みシステム開発技術と開発支援ツールの開発▶ 組込みシステム技術者の育成への貢献
プロジェクトの推進主体▶ 産学官の団体と個人が参加する産学官民連携プロジェクト▶ 2003年9月にNPO法人として組織化
Hiroaki Takada

3

TOPPERSプロジェクトの最新状況

TOPPERSプロジェクトの組織と会員
会長，副会長，理事

理事会

総会
監事

運営委員（23名）

運営委員会

事務局
事務局長

▶ 団体正会員：８１（企業：８０，その他：１）▶ 個人正会員：８▶ 準会員（個人）：５３▶ 特別会員：３５（団体：１９，個人：１６）

合計会員数：１７７（２０１９年１１月１日時点）

カンファレンス実行委員会
展示会運営委員会
開発者会議実行委員会
広報戦略タスクフォース

教育WG
TECS WG
ホームネットワークWG
箱庭 WG
海外展開WG
必要なWGを機動的に設置

Hiroaki Takada

4

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

5

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

6

TOPPERSプロジェクトの最新状況

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

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

UA-101 (Roland)

H-IIB（JAXA)

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

OSP-P300(オークマ)

SoftBank945SH（シャープ）

PM-A970(エプソン)
7

TOPPERSプロジェクトの最新状況

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

8

TOPPERSプロジェクトの最新状況

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

プラットフォーム

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

9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
10

TOPPERSプロジェクトの最新状況

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

ATK2

ATK1

⾞載系

AUTOSAR仕様

HRＭＰ3

OSEK/VDX仕様

マルチコア＆保護機能

FDMP

ＦＭＰ

マルチコア対応

マルチコア拡張

ＦＭＰ3
マルチコア

HRP

ITRON系

HRP2メモリ保護

FI4
μITRON4.0
フルセット

HRP3

メモリ保護

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

JSP

ASP

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

パーティショニング

動的オブジェ
クト生成

ASP3
SSP

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

Hiroaki Takada

2007

2010

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

SSP3
最小セット

最小セット

2000

第3世代カーネル

第2世代カーネル

第1世代カーネル

2013 2015

2018

2020
11

TOPPERSプロジェクトの最新状況

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

一方，廃止すべきと考えられる機能もある▶ タスク例外処理機能 … 複雑さと比べて使われていない▶ メールボックス … 安全性の高い機能で代替TOPPERS第3世代カーネル（ITRON系）へ▶ 新しい世代のリアルタイムカーネルと位置付けた方が，大胆な仕様変更（特に，機能の削除）が可能
Hiroaki Takada

12

TOPPERSプロジェクトの最新状況

TOPPERSの組込みソフトウェアプラット
フォームが64ビットRISC-Vに対応

Hiroaki Takada

13

TOPPERSプロジェクトの最新状況

本年5⽉9⽇付けの発表内容▶ SiFive社が開発したRISC-Vプロセッサを搭載したHiFive1

ボードに対して，TOPPERS/ASPカーネルのポーティングを行い，オープンソースソフトウェアとして一般公開▶ それを核とした組込みソフトウェアプラットフォーム
TOPPERS BASE PLATFORM（RV）V0.1.0を開発し，TOPPERSプロジェクトの会員向けに配布を開始

本⽇の発表内容▶ 64ビットRISC-Vプロセッサを搭載したSipeed社のMaixduinoボードに，TOPPERS/ASPカーネルのポーティングを行い，オープンソースソフトウェアとして一般公開▶ Maixduinoボード向けのTOPPERS BASE
PLATFORM（RV）も開発中
Hiroaki Takada

14

TOPPERSプロジェクトの最新状況

RISC-Vプロセッサ，SoC，ボード
RISC-Vプロセッサとは？
▶ オープンソースの命令セットアーキテクチャ▶ 近年注目を集めており，組込みシステムに採用したいという声も高まっている
対応したプロセッサ，SoC，ボード▶ HiFive1（ボード名） … SiFive社▶ FE310-G000（SoC名） … SiFive社▶ E31 Standard Core（コアのIP名） … SiFive社• 32 ビットのRISC-Vプロセッサ（RV32IMAC）▶ Maixduino（ボード名） … Sipeed社▶ K210（SoC名） … Kendryte社• 64ビットRISC-Vプロセッサ（RV64IMAFDC）2個搭載• Neural Network Processorも搭載
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プロジェクトの最新状況

DICアーキテクチャの採用▶ デバイスドライバ，ミドルウェア群を，DIC（Device InterfaceComponent）アーキテクチャに基づき，階層化して構築
USBホスト／デバイスミドルウェア▶ TOPPERS BASE PLATFORM向けに新規に開発

TOPPERS BASE PLATFORM（CV）▶ DE0-Nano-SoC開発キット（Intel社 Cyclone V SoC（ARMCortex-A9×2＋FPGA））に対応

Hiroaki Takada

17

TOPPERS/ASP éęāĔĚRelease 1.9.3ěß RISC-V ćĖõúðÎĊęüâėìÂÜ
ËË×Î°W>§ÀÅ TOPPERS BASE PLATFORMĚST/CVěÏöąýäåáĎó
ĐęĔßkuÀÉ°HiFive1 ĉęþÎÕöąýäåáćĒúýąçęčßbÀÔ
TOPPERSプロジェクトの最新状況
ÀÅ±½ÝÚßuµÜ½ËÊ°RISC-V ćĖõúðßuµÉÎÕáćēíęòđ
TOPPERS BASE PLATFORM（RV）
ėß§xÂÜ½Ë¹ÊºÔÂ±TOPPERSBASE PLATFORMĚRVěV0.1.0 ÏbDÐ▶ HiFive1ボードとMaixduinoボードに対応ÏÛÊÂ±&&#")"%$
   '"*!'   '"*!'
 )$ '  '"*!'

 !#!(!   

(" '"*!'
"*!

(1)▶Basedriver
現時点では，会員向けに早期リリース（ASPカーネルは，一般公開）
GPIO/WDOG/RTC(2)Standard driver
課題ÐöąýäåáþĒãăÊÏÕ"ě▶SPI/I2CĚI2C
K210の詳細なドキュメントが公開されていない(3) GDIC▶ 開発したデバイスドライバの品質面での評価ができない
aqm1248_st7565
AQM1248 128x48 ĎĂëĖ LCD þĒãă▶ デュアルコアにも対応できていない
adafruit_st7735

Adafruit 1.8”éĒęLCD þĒãăHiroakiadafruit_ILI9341
TakadaAdafruit 2.8”éĒęLCD þĒãă18

TOPPERSプロジェクトの最新状況

TOPPERS/HRMP3カーネルがJAXAの次世代宇宙機向けマイクロプロセッサに採⽤Hiroaki Takada

19

TOPPERSプロジェクトの最新状況

本⽇の発表内容▶ TOPPERS/HRMP3カーネルが，JAXAが三菱重工に委託して開発を進めている次世代宇宙機向けマイクロプロセッ
サ用のRTOSに採用されることに▶ 次世代宇宙機向けマイクロプロセッサの概要▶ シリコンオンインシュレータ（SOI）技術を用いて耐放射線特性を持たせたSoC▶ ルネサスエレクトロニクス設計のRXv2 CPUコア（倍精度FPU付き）を2つ搭載▶ 2021年度に開発を完了する計画で，開発が進行中▶ HRMP3カーネルのポーティングと品質確保は，JAXAの信頼性基準に則って，三菱重工が名古屋大学の協力を得て実施する計画
Hiroaki Takada

20

TOPPERSプロジェクトの最新状況

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

ATK2

ATK1

⾞載系

AUTOSAR仕様

HRＭＰ3

OSEK/VDX仕様

マルチコア＆保護機能

FDMP

ＦＭＰ

マルチコア対応

マルチコア拡張

マルチコア

HRP2

メモリ保護

FI4
μITRON4.0
フルセット

HRP3

メモリ保護

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

JSP

ASP

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

パーティショニング

動的オブジェ
クト生成

ASP3
SSP

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

2007

2010

TECS
コンポーネントシステム対応SSP3
最小セット最小セット

2004

今回採⽤

ＦＭＰ3

HRP

ITRON系

2000

第3世代カーネル

第2世代カーネル

第1世代カーネル

2013 2015

2018

2020
21

TOPPERSプロジェクトの最新状況

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

22

TOPPERSプロジェクトの最新状況

時間パーティショニング下のスケジューリング（HRP3カーネル）▶ カーネルドメインに属する処理単位（割込みサービスルーチンなど）は，常に実行できる▶ ユーザドメインに属する処理単位は，割り当てられたタイムウィンドウ内でのみ実行できる▶ タイムウィンドウを割り当てられていないユーザドメイン（アイドルドメイン）は，余った時間（アイドルウィンドウを含む）でのみ実行できるt
タイム
ウィンドウ1

カーネル
ドメイン
Hiroaki Takada

タイム
ウィンドウ2

タイムウィンドウ1の終了時刻が遅くなる

タイム
ウィンドウ3

カーネルドメイン

アイドルウィンドウ

アイドルウィンドウが短くなる
23

TOPPERSプロジェクトの最新状況

マルチプロセッサ＋時間パーティショニング（HRMP3カーネル）▶ （基本的には）プロセッサ毎に，時間パーティショニング下のスケジューリングを行う▶ 同じタイムウィンドウを，複数のプロセッサに確保することも可能
両プロセッサに確保された
タイムウィンドウ

片方のプロセッサのみに確保されたタイムウィンドウ
タイム
ウィンドウ2

アイドル
ウィンドウ

タイム
ウィンドウ3プロセッサ1
タイム
ウィンドウ1プロセッサ2カーネル
ドメイン
Hiroaki Takadat
タイム
ウィンドウ4

タイム
ウィンドウ5

アイドル
ウィンドウ
24

TOPPERSプロジェクトの最新状況

各カーネルにおけるタスクスケジューリング（イメージ図）

タスク1

基本パーティショニング

ASP3

HRP3

タスク2

時間保護
ドメイン1

タスク3
タスク1

タスク2

プロセッサ

ドメイン2
タスク3 タスク4

メモリ・アクセス保護

アイドル

タスク5 タスク6

タスク7

プロセッサ

パーティショニング＋マルチコア
マルチコア

HRPM3

FMP3
タスク1

タスク2

ドメイン1

タスク5

タスク2

マイグレートプロセッサ1
タスク4

タスク1

タスク3

ドメイン2
タスク3 タスク4

アイドル

タスク5 タスク6

タスク7

プロセッサ1
ドメイン3

タスク2
タスク8

タスク9

タスク2 タスク10 タスク11 タスク12 タスク13プロセッサ2プロセッサ2

Hiroaki Takada

25

TOPPERSプロジェクトの最新状況

⻑期サポートバージョン (LTS) の設定
LTS設定の理由▶ 組込みシステムの中には，高い信頼性に加えて，長期間に渡ってメンテナンスすることが求められる分野が多くある▶ 信頼性の低下につながる可能性のある機能の拡張や変更を行わず，信頼性向上に必要な変更のみを行うことが求めらる
HRMP3バージョン3.1をLTSに設定▶ HRMP3カーネルのバージョン3.1をLTSと位置付けた▶ 「TOPPERS第3世代カーネル（ITRON系）統合仕様書」のバージョン3.4についても，LTSとするバージョン番号の付与▶ HRMP3カーネル Release 3.1.0 を，LTSの出発点に▶ 信頼性向上のための修正は，Release 3.1.1，3.1.2，…
▶ 機能の拡張や変更を行ったものは，Release 3.2.0，…
Hiroaki Takada

26

TOPPERSプロジェクトの最新状況

今後のカーネル開発計画
開発済みのカーネルの改良・適用対象の拡大▶ TOPPERS/ASP3，HRP3，FMP3，HRMP3の改良（品質向上，設計書などのドキュメントの充実，拡張パッケージの整備）を継続▶ TOPPERS/ASP3，HRP3，FMP3，HRMP3を各種のターゲットプロセッサ（RISC-Vなど）へポーティング
第３世代カーネルの拡充▶ TOPPERS/SSP3カーネル … 最小セットカーネル▶ TOPPERSプロジェクトの会員向けに，α版をリリース済

み▶ メニーコアプロセッサ向けのカーネル（名称未定）▶ ターゲットSoCを何にするかが課題
Hiroaki Takada

27

TOPPERSプロジェクトの最新状況

より詳しく知りたい⽅のために
ET2019カンファレンス TOPPERSセッション▶ 日時：11月21日（木）14:00〜17:00▶ 場所：会議センター 211+212▶ プログラム▶ IoT/自動運転時代の仮想シミュレーション環境（コンセプト）のご紹介▶ TOPPERSで繋げるAzure IoT Hub接続サンプルアプリの紹介▶ 組込みシステムに適したコンポーネントシステムTECSの最新状況▶ TOPPERS第3世代カーネルの新しい機能と使い方▶ RISC/VをTOPPERSカーネルに対応させる 〜SiFive社
Hi-Five1/Kendryte社K210（MAixDUiNO）のリアルタイ
ムカーネル実装をアーキテクチャを中心に解説〜
Hiroaki Takada

28