Advanced Driver Assistance Systems (ADAS)向け 次世代ソフトウェア

Advanced Driver Assistance Systems (ADAS) 向け
次世代ソフトウェアアーキテクチャ
Yagishita, Tomoaki Hoffmeister, Karsten
September 18th 2015
Delivering tomorrow’s Software Architectures for ADAS
Agenda
About Elektrobit
The road to advanced driver assistance systems
Challenges for ADAS
System architecture
ECU software architecture
© Elektrobit (EB) 2015
2
Delivering tomorrow’s Software Architectures for ADAS
Agenda
About Elektrobit
The road to advanced driver assistance systems
Challenges for ADAS
System architecture
ECU software architecture
© Elektrobit (EB) 2015
3
About Elektrobit (EB)
エレクトロビット(EB)について
1900
人以上の従業員
* e.solutionsの持ち分51%を含む
Elektrobit (EB) delivers software and engineering services
自動車業界におけるEBのソリューション
Delivering tomorrow’s Software Architectures for ADAS
Agenda
About Elektrobit
The road to advanced driver assistance systems
Challenges for ADAS
System architecture
ECU software architecture
© Elektrobit (EB) 2015
7
Delivering tomorrow’s Software Architectures for ADAS
History and roadmap for accident-free driving
Source: continental-corporation.com, Fact Book 2014
8
Delivering tomorrow’s Software Architectures for ADAS
Agenda
About Elektrobit
The road to advanced driver assistance systems
Challenges for ADAS: Complexity, Power, Safety, Security
System architecture
ECU software architecture
© Elektrobit (EB) 2015
9
Challenges for ADAS
• Complexity
• Computing Power
• Next level of Functional Safety
© Elektrobit (EB) 2015 | Confidential
• Security
10
Delivering tomorrow’s Software Architectures for ADAS
Complexity
~複雑性~
© Elektrobit (EB) 2015
11
Delivering tomorrow’s Software Architectures for ADAS
Complexity: call-graph of an integration platform
• SWC
150
• ASIL-B SWC
14
• SWC間接続
1000 以上
• 接続形態
m対n 複数
Source: Simon Fürst, BMW, EMCC 2015 Munich
13
Delivering tomorrow’s Software Architectures for ADAS
増加するOEM アプリケーションSWC @VW 社
複雑さだけではなく、
より多くのComputing Powerも
Source: T. Flämig, Volkswagen, EMCC 2015 Munich
-> 標準化されたアーキテクチャ
ファーストステップ:AUTOSAR
14
Delivering tomorrow’s Software Architectures for ADAS
Next level of
Functional Safety
~次レベルのFunctional Safety~
© Elektrobit (EB) 2015
19
Delivering tomorrow’s Software Architectures for ADAS
What is a safe system?
There is a very basic and helpful definition:
“You know what the system does”
システムが何をするかを
あなたがわかっている
© Elektrobit (EB) 2015
20
Delivering tomorrow’s Software Architectures for ADAS
現システム (Fail-safe)
故障が検知されたら?
• 機能停止 / 機能制限
 safe state への移行
• ドライバーへの通知
• 故障の記録
System
failure
通常の安全関連システムでは、機能停止させることが、safe
state
• Airbag, ESP, air conditioning, battery charging, …
• Driver assistant functions such as adaptive cruise control, lane assist, …
機能停止が、safe
stateにならないケースも
• Electronic Power Steering
• Braking
© Elektrobit (EB) 2015
21
Delivering tomorrow’s Software Architectures for ADAS
自動運転までのStep
© Elektrobit (EB) 2015
22
Delivering tomorrow’s Software Architectures for ADAS
safe state @ 自動運転
Driver
only
Assisted
Driving
Partial
automated
Fail safe
Conditional
automated
Highly
automated
Fully
automated
Fail operational
„safe state“の位置づけ
• ドライバーが “in the loop”になるまで継続して運転する
‒ “Conditional automated”ならば、おおよそ7~15秒程度、
‒ “Highly automated”, “Fully automated”ならば、数分
• 安全な場所まで移動し、自動で“safe-stop”(安全に停止)する
‒ 難しい点:ドライバーに状況を理解させること
‒ 状況によっては、数分自動で運転する必要がある
© Elektrobit (EB) 2015
23
Delivering tomorrow’s Software Architectures for ADAS
Security
~セキュリティ~
© Elektrobit (EB) 2015
24
Delivering tomorrow’s Software Architectures for ADAS
• Security: 外部からのアクセス
に対して防御 e.g. hacks
• Safety: 信頼できる実行環境
Security protects Safety
There is no safety without security
and vice versa
© Elektrobit (EB) 2015
Challenges for ADAS (再掲)
• Complexity
• Computing Power
• Next level of Functional Safety
© Elektrobit (EB) 2015 | Confidential
• Security
26
Delivering tomorrow’s Software Architectures for ADAS
Agenda
About Elektrobit
The road to advanced driver assistance systems
Challenges for ADAS
System architecture: 3 approaches
ECU software architecture
© Elektrobit (EB) 2015
27
Delivering tomorrow’s Software Architectures for ADAS
1st approach: 1oo2 (2 channels with comparison)
ECU 1
Input
Data
=
Output
Data
ECU 2
•
2つのECUが入力値に対して計算し、結果を比較する
•
この方法は、Fail-Safeとなりますが、一方が故障した時に、どちらのECUが故障したの
かが判りません。
•
Safe Stateは、機能を停止させる ことになります
© Elektrobit (EB) 2015
28
Delivering tomorrow’s Software Architectures for ADAS
1st approach: 1oo2 (2 channels with comparison)
ECU 1
Input
Data
≠
Output
Data
ECU 2
•
比較結果が異なることで、正しくないことを、見つけられます。
•
この方法は、Fail-Safeとなりますが、
一方が故障した時に、どちらのECUが故障したのかは判りません。
•
Safe Stateは、機能を停止することですが、自動運転では許容されません
© Elektrobit (EB) 2015
shutdown
29
Delivering tomorrow’s Software Architectures for ADAS
2nd approach: 2oo3 systems
ECU 1
Input
Data
ECU 2
V
O
T
E
R
Output
Data
ECU 3
•
すでに、利用されているパターンです
•
1つのECUが機能しなくなっても、残りの2つのECUにより機能は継続します
•
入力データの検証は、”Input-Voter“にて検証されます
© Elektrobit (EB) 2015
30
Delivering tomorrow’s Software Architectures for ADAS
2nd approach: 2oo3 systems
ECU 1
Input
Data
ECU 2
V
O
T
E
R
still..
Output
Data
ECU 3
•
すでに、利用されているパターンです
•
1つのECUが機能しなくなっても、残り2つのECUにより機能は継続します
•
入力データの検証は、”Input-Voter“にて検証されます
© Elektrobit (EB) 2015
31
Delivering tomorrow’s Software Architectures for ADAS
2oo3 を採用しますか?
2oo3 には
•
•
•
•
•
より多くのECU
より多くのハーネス
より多くの重量
より多くの電力消費
より多くの複雑さ
が必要となります。
ポイント: ユーザーにとって、上記は何を意味するのか?
2013年,2015年に欧州にて自動運転に対しての調査が行われています。
調査結果によると自動運転に対しては、
20万円~40万円の費用追加を許容するという結果があります。
→ 2oo3 のシステムは、コスト要因から採用が難しい
© Elektrobit (EB) 2015
32
Delivering tomorrow’s Software Architectures for ADAS
3rd approach: 1oo2D systems
Input
Input
Data
Diagnostics
Enable
Output
Diagnostics
Enable
Output
Input
•
•
ECU 1
Logic
Output
ECU 2
Output
Logic
Output
Data
高い故障検知率をベースとします
1つのECUが故障しても、故障側を判別できるため、機能停止しなくて良い
⇒1つのECUにて機能を継続することができます
© Elektrobit (EB) 2015
33
Delivering tomorrow’s Software Architectures for ADAS
3rd approach: 1oo2D systems
Input
Input
Data
Diagnostics
Enable
Output
Diagnostics
Enable
Output
Input
•
•
ECU 1
Logic
Output
ECU 2
Output
Logic
or…
Output
Data
高い故障検知率をベースとします
1つのECUが故障しても、故障側を判別できるため、機能停止しなくて良い
⇒1つのECUにて機能を継続することができます
もちろん、この方針(セーフティ・クリティカルな機能を1ECUで継続して動作する)
がベストではありません。ですが、一時的(ドライバーが制御を取って代わるまでの)
対応としては、有効な方法と考えます。
© Elektrobit (EB) 2015
34
Delivering tomorrow’s Software Architectures for ADAS
1oo2D - Normal operation
1oo2D system
ECU 1
ECU 2
Func1
Func2
Func1
Func2
Func3
Diagnostics
Func5
Func4
Func6
Func3
Func3
Diagnostics
ECU 3
Func1
Fault tolerant
Ethernet
Sensors
/Actuators
disabled
critical
noncritical
© Elektrobit (EB) 2015
Delivering tomorrow’s Software Architectures for ADAS
1oo2D – 1 channel
1oo2D system
ECU 1
ECU 2
Func1
Func2
Func1
Func2
Func3
Diagnostics
Func5
Func4
Func6
Func3
Func3
Diagnostics
ECU 3
Func1
Fault tolerant
Ethernet
Sensors
/Actuators
disabled
critical
noncritical
© Elektrobit (EB) 2015
Delivering tomorrow’s Software Architectures for ADAS
1oo2D*
1oo2D system
ECU 1
ECU 2
Func1
Func2
Func1
Func2
Func3
Diagnostics
Func5
前提条件
Func4
Func6
Func3
Func3
Diagnostics
ECU 3
Func1
Fault tolerant
Ethernet
Sensors
/Actuators
• Req. 1: 機能を動的に再配置できること
• Req. 2: センサ/アクチュエータが冗長的に存在する
or ネットワーク経由でアクセスできること
disabled
critical
noncritical
© Elektrobit (EB) 2015
Delivering tomorrow’s Software Architectures for ADAS
動的再構成
Req. 1:機能を動的に再配置できること
• AUTOSAR XML表記のアプリケーション情報は、
すでに使用されています
• AUTOSAR-RTE(Runtime Environment)は、
ソフトウェアコンポーネントの再設定をサポー
トしています
• EB tresos Safety OS (EB’s AUTOSAR-OS)は、スレッド
の開始/停止をサポートしています
OS_App1
Data
OS_App2
Data
Task1
Data
Task2
Data
Task3
Data
Stack
Stack
Stack
OS Data
ISR1
Data
Stack
Stack
• サービス指向コミュニケーション
Req. 2:センサ/アクチュエータが冗長的に存在する
or ネットワーク経由でアクセスできること
•
マルチキャスト・フォールトトレラントEthernet
© Elektrobit (EB) 2015
39
Delivering tomorrow’s Software Architectures for ADAS
Agenda
About Elektrobit
The road to advanced driver assistance systems
Challenges for ADAS
System architecture
ECU software architecture
© Elektrobit (EB) 2015
40
Delivering tomorrow’s Software Architectures for ADAS
Overview of different architecture approaches
?
Core
1
Core
2
ADAS
Core
3
Autosar
SW-C
RTE
Safety OS,BSW
Full AUTOSAR
© Elektrobit (EB) 2015
Micro1
Micro2
ADAS
Autosar
SW-C
Linux/QNX/
AUTOSAR…
RTE
Com Safety OS,BSW
Microcontroller
Partitioning
Core1
Core2
ADAS
Linux/QNX/
AUTOSAR…
Core3
Autosar
SW-C
RTE
Safety OS,BSW
COM
Core
Partitioning
Core1
Core2
Core3
Autosar
SW-C
ADAS
Linux/QNX/…
Hypervisor
RTE
BSW
Hypervisor
41
Delivering tomorrow’s Software Architectures for ADAS
Compare and contrast each architecture
Core
Core
Core
1
2
3
Applicatio
Autosar
n
SW-C
SW-C
RTE
Safety OS,BSW
Full AUTOSAR
for
Safety or
Performance
Micro1
Applicat
ion
Linux/QNX/
AUTOSAR…
Micro2
Core1
Core2
Autosar
SW-C
Application
RTE
Linux/QNX/
AUTOSAR…
Com Safety OS,BSW
Microcontroller
Partitioning
for
Safety and
Performance
Core3
Autosar
SW-C
RTE
COM Safety OS,BSW
Core
Partitioning
for
Safety and
Performance optimized
Core1
Core2
Application
Linux/QNX/…
Hypervisor
Core3
Autosar
SW-C
RTE
BSW
Hypervisor
for
Security
Architecture
EB tresos solution
for NVIDIA
Drive PX
•
•
ソフトウェアアーキテクチャが次世代マイコンアーキテクチャを定義
AUTOSARはスタンダードなアーキテクチャの一部となる
• BSW、セーフティ、セキュリティ
• OEM/Tier1 並行開発
© Elektrobit (EB) 2015
42
Delivering tomorrow’s Software Architectures for ADAS
© Elektrobit (EB) 2015 | Confidential
43
Delivering tomorrow’s Software Architectures for ADAS
Summary
• Fail-Operationalシステムは、
既存の Fail-Safe システムをベースにして構築
• Fail-operationalシステムのコンセプトは、既存
車載システム向けに再利用可能
• ソフトウェアアーキテクチャがキーポイント
次世代マイコンアーキテクチャを定義
Safety, Security, Performance を同時に達成
© Elektrobit (EB) 2015
44
Let‘s build the next generation
software systems for
autonomous driving!
automotive.elektrobit.com
[email protected]