Functional Safety – ISO 26262

ETASのツールとサービスが電子システムの機能安全を支えます

WEKA FACHMEDIENのVIPステージでインタビューに答えるETASのNigel Tracey(embedded world 2020にて)

自動車が道路を走行するには、科学的にも技術的にもステートオブアート(state of the art)に達していなければなりません。製品の製造物責任を果たすには、少なくとも適切な工業規格を遵守する必要があります。現在市場に導入されている製品は、どれもそのような規格に従って開発されているはずです。

基本的に、ソフトウェアツールの認定(qualification)は、安全目標の違反を招いたり製品の中にまで入り込んだりしてしまう可能性のある不具合を防ぐことを目的として行われています。安全関連ソフトウェアのコードとその開発のための基本的な要求は、ISO 25119やISO 26262などといった業界固有のソフトウェア規格で定義されています。

安全を実現できるかどうかは以下の要因にかかっています。

  • 適切なシステム設計: 診断機能、冗長性など
  • ハードウェアの信頼性: 故障モードおよび故障率の分析
  • ソフトウェア:最先端のアプローチによるソフトウェア開発
  • 統制のとれた品質管理への取組み: 分析、テスト、およびレビュー
  • すべての安全目標が達成されていることの立証能力: 製品、プロセスおよびドキュメンテーションを通じて証明

弊社はこれらを成し遂げるために、認定ツールやトレーニング、エンジニアリングサービス、さらには専門家によるコンサルティングなど、ソフトウェア開発の機能安全をサポートする広範な製品およびサービスを提供しています。

課題:
ISO 26262は、自動車分野での安全におけるステートオブアートを提供するものであり、他のISO 25119やEN ISO 13849などといった特殊車両の仕様と同様に、電子システムの機能安全に関する包括的な規格であるIEC 61508から派生したものです。新規のすべての電気・電子(以下、E/E)システムは適切な安全規格に適合していなければなりません。開発のためのプロセス、メソッドおよびツールチェーンは、どれもみな規格適合のために重要な役割を果たします。したがって、将来のE/Eシステムを開発するためのツールもISO 26262に適合することが求められるようになります。

解決策:
以下に、弊社の製品およびサービスをご紹介します。これらには弊社のメソッド、プロセスとツール、組込みソフトウェアに関する高水準の技術とセーフティクリティカルなシステムの開発に関する実用的な経験が結集されていて、ASIL Dまでの機能安全のあらゆる側面でお客様をサポートします。

  • 開発ツール
    セーフティクリティカルな自動車システムの開発およびテストをISO 26262などの規格に従って行うためのETASソフトウェア開発ツールソリューションをご提供します(ASCETEHOOKSINCAINTECRIO、ISOLAR-EVE、RTA、SCODEなどの製品群)。弊社のツールを使用すると、AUTOSAR 4.xの安全概念をオペレーティングシステムおよび基本ソフトウェアのレベルで完全に、しかも柔軟に実装することができます。弊社の認証されたコードジェネレータが、生成するソフトウェアのインテグリティを保証します。
    弊社のソフトウェア開発ツールはエンジン制御、ABS、ESPプロジェクト等に採用されて効果を発揮しています。
  • エンジニアリングサービス
    弊社のエンジニアリングサービスでは、お客様のあらゆる開発ニーズに合わせてお手伝いすることができます。ETASの製品はいずれも共通してアーキテクチャがオープンでモジュール構造になっており、また、工業・自動車関連の規格をサポートしているので、さまざまな開発要求および既存のインフラストラクチャに柔軟に適応することが可能です。
  • RTA コンサルティングサービス
    弊社はRTAコンサルティングサービスを通じて、量産開発、およびプロセスの機能安全に関わるお客様をサポートすることができます。さらに、ETASセーフティマニュアルを応用することにより、お客様のツールチェーンをISO 26262に基づく適格なものにすることが可能です。

弊社のコンサルティングチームは、量産開発・研究プロジェクトの機能安全領域において長年の経験を積んだコンサルタントの世界的なネットワークで構成されています。

IEC 61508とは?
IEC 61508は、電気・電子・プログラマブル電子(以下、E/E/PE)安全関連システムの機能安全に関する国際規格です。この規格ではシステムを、センサ類とその他の入力デバイス、プログラマブルな電子装置そのもの、およびすべてのアクチュエータやその他の出力デバイスを含むものとして定義しています。

ISO 26262とは?
ISO 26262はIEC 61508に基づいて作成された自動車産業固有の規格です。この規格は、ソフトウェアとハードウェアの両方で構成され、乗用車、トラック、バスおよび二輪車(e-bike、モペッド、電動車いすなどの特殊車両を除く)に搭載される電子・電気安全関連システムに適用されます。

この規格は全10章からなり、機能安全管理から概念、設計と開発、さらに生産と運用に至る、E/E/PE安全関連システムのライフサイクル全体をカバーしています。したがって、ISO 26262は製造物責任に関するステートオブアートの規格といえます。

ISO 26262に準拠すると、以下のようにソフトウェア開発工程にさまざまな影響を及ぼします。

  • アーキテクチャの設計:
    • 疎結合、高凝集
    • セミフォーマル記法
  • 設計および実装:
    • MISRA-C:2004などのガイドライン
    • メモリやタイミング面の非干渉
  • ソフトウェアテスト:
    • 系統的アプローチによるテスト
    • 高いレベルのカバレッジ
  • システムテスト:
    • 故障注入・ロバスト性テスト
    • ターゲット環境でのソフトウェアテスト

IEC 61508およびISO 26262では、認証されたツールの使用が要求されているのでしょうか?
そうではありません。IEC 61508およびISO 26262は、開発ツールがこれらの安全規格により認証されていることを要求していません。ただし、どちらの規格も、開発時に使用されるすべてのツールがシステムの安全要求に全く違反しないということを、要求されるシステム安全度水準(必要に応じてSILまたはASIL)をサポートするために必要な範囲でシステム開発者が立証できなければならないと定めています。

安全なエンジニアリングという観点から言うと、システム開発者はツールチェーンの安全性が妥当である事を適切な証拠で裏付ける必要があります。 ツールチェーンの安全性が担保されていれば、ツールの単一故障が未検出の致命的な欠陥をシステムに残さないことを立証できるはずです。

セーフティクリティカルアプリケーション用の開発ツール

ASCET: シミュレーション、ラピッドプロトタイピングおよびターゲット実行
ASCETは以下のような標準搭載機能によりISO 26262準拠のソフトウェア開発を積極的にサポートしているので、安全関連ソフトウェアのエンジニアリングに適したツールと言えます。

  • モジュール性、抽象化およびカプセル化のサポート: ASCETにはオブジェクトベースのプログラミングモデルがあり、生成されるコードも同一のモジュール構造になります。モデルは明確な2層の抽象化レイヤに一意に分けられるので、高次システムの設計をカプセル化し、低レベルの設計検討によって生じる変更から隔離することができます。
  • 明確な定義: グラフィカルなモデリング技法ではデータおよび制御の流れが暗黙的に想定されてしまいがちですが、ASCETではデザイン内で連続番号を使用して明示的な順序付けを行うため、そのような曖昧さは排除されます。ASCETのグラフィカルモデルは、どのように作成されたかに関わらず、必ず同じ挙動を示します。
  • リアルタイム性のサポート: ASCETのステートベースのメッセージ通信スキームにより、スレッドセーフ通信をRTA-OSEKのようなリアルタイムオペレーティングシステムにシンプルに統合します。
  • ランタイムエラーの防止: ASCETは防衛的プログラミングのチェックを自動的に追加でき、ゼロ除算、アンダーフロー、オーバーフローなどのような、よく見られる数値エラーを防ぎます。
  • ソフトウェア実装要求への適合: MISRA-C:2004に最大で100%準拠したソースコードを生成しており、データや制御のフローがコントロール不能になったり、動的なデータ構造が生成されたり、初期化前のデータが使用されたりということを防止します。

IEC 61508およびISO 26262によるASCETの認証

ASCET-MD V6.1 および ASCET-SE V6.1 は、IEC 61508:2010およびISO/DIS 26262:2009に基づいて安全関連システムを開発するためのツールとして、TÜV SÜDから「fit for purpose(用途適合)」の認証を受けています。この認証は、安全度水準がIEC 61508規格のSIL 3およびISO/DIS 26262規格のASIL Dまでのシステムのために現在サポートされているすべてのマイクロコントローラターゲットに向けたコード生成を対象としています。

EHOOKS: セーフティクリティカルなECUのテストを実行
ECUソフトウェアをISO 26262に基づいて検証するためには、ソフトウェアの高い制御性と可観測性を維持しながらターゲット環境でテストを実施する必要があります。ETASは高度のコンフィギュレーション、ビルドおよびパッチングメカニズムを持つEHOOKSというツールを提供しています。

EHOOKSを使用して行える、セーフティクリティカルなECUソフトウェアのテストの特徴:

  • テストはターゲットECU上で量産ソフトウェアを使用して実施され、ECUへのアクセスはETAS ETKインターフェースを使用して行われます。
  • データ変数およびファンクションを直接操作できるので、クリティカルな機能に対象を絞ってテストを行うことができます。
  • 故障注入は、変数を操作する、不適切に実装された関数をバイパスする、あるいは不適切なセンサデータをシミュレートすることにより効率良く実行できます。
  • INCA環境にシームレスに統合できるので、制御および観測を効率的に行う事ができます。

EHOOKSを使用して作成されるプロトタイプは、最終的なECUに非常に近いものになるので、ISO 26262で要求されている評価および検証に非常に役立ちます。

INTECRIO: バーチャルプロトタイピング用の統合・ビルドツール
INTECRIOはCコードレベルで統合を行うので、お客様はコードのトレースなどCコードのデバッガおよび開発環境を使用してコードまたはデシジョンカバレッジなどのメトリックを容易に計測することができます。これは、機能モデルからCコードへの変換を行うためにテストケースの追加が必要かどうかを判断するのに役立ちます。このように、INTECRIOを使用すれば、ISO 26262で推奨されているソフトウェアの開発・テスト手法を実行することができます。

ISOLAR-EVE: クリティカルエラーを早期に発見してフィードバックのループを短縮
ISO 26262規格は、ソフトウェアの統合テストをターゲット環境で行うことを要求しています。ECUハードウェアを仮想化すると、ターゲットECUの基本ソフトウェアを使用して、早い段階でソフトウェアの統合テストを行えるようになります。ISOLAR-EVEは、ECUと同一のソースコードを仮想環境で実行して評価を早期に行うことができます。

RTA-OSRTA-RTERTA-BSW: AUTOSAR に準拠したセーフティコンセプトを実装
AUTOSARは、ECUソフトウェアの機能安全を保証するために、オペレーティングシステムレベルのたくさんの概念を定義しています。弊社のOS、RTE、BSWはAUTOSARに準拠して実装されています。

これら3つのツールは

  • MISRA準拠のソースコードを生成します。
  • セーフティクリティカルなソフトウェアと、そうでないソフトウェアのパーティショニングに対応できるマルチコアの概念およびOSアプリケーションをサポートしています。
  • タイミングおよびメモリパーティショニングのためのAUTOSARのアプローチをサポートしています。
  • TÜV SÜDからISO 26262の認証を受けています。

SCODE Workbench – 制御システムのモデリング、解析、検証と組み込み

SCODE(System CO-DEsign)Workbenchは、エンジニア、制御システム技術者、ソフトウェア開発者が、関係者と一緒に、構造化されていてわかりやすいECUソフトウェア向けのモデルベースソリューションを作成することができ、(完全性等が)作成過程において自動的に検証されるソフトウェアツールです。

適用分野

  • 機能の関係性を記述および自動検証
  • 自動テスト

機能

  • 機能ロジックを100%網羅
  • モデルとECU上の実行可能コード間での機能的な同一性を明示

SCODE-ANALYZER はソフトウェアアーキテクチャ設計や単体設計で求められる安全性分析に必要となる、制御フロー分析手法を提供します。ツールはセミフォーマル記法、セミフォーマル検証、システムレベルでの簡素化、ソフトウェアサイズの制限といったISO 26262 要件を満たしています。

SCODE-CONGRA はソフトウェアアーキテクチャ設計や単体設計で求められる安全性分析に必要となる、データフロー分析手法を提供します。