Comments
Description
Transcript
集積回路の安全関連ソフトウェア・テスト・ライブラリ
集積回路の安全関連ソフトウェア・テスト・ライブ ラリ(STL)とホワイト・ボックス SIL2(3)-ASILB (D)ヨジテック社製 faultRobust STL に関する白書 White Paper n. 001/2014 Riccardo Mariani C.T.O. YOGITECH S.p.A. Page 0 of 10 1 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 目次 免責 ........................................................................................................................................................ 2 要約 ........................................................................................................................................................ 3 ソフトフェア・テスト・ライブラリ(STL)について ................................................................... 3 IEC 61508、ISO26262 に関する STL の安全要件仕様 ........................................................................ 3 ブラックボックスのソフトウェア・テスト・ライブラリについて:ARM Cortex-M3 の事例 .. 4 ヨジテック社 fRMethodology の仕様、実装、検証によるソフトウェア・テスト・ライブラリ の使用例 ................................................................................................................................................ 5 ヨジテック社製 faultRobust ソフトウェア・テスト・ライブラリ(fRSTL)の特長 ................... 6 ヨジテック社製 fRSTL のシングル、デュアル・マイクロコントローラユニットあるいはマル チ・コアへの使用例............................................................................................................................. 7 まとめ .................................................................................................................................................... 8 ヨジテック社の faultRobust STL 製品の有効性 ................................................................................. 8 参考文献 ................................................................................................................................................ 8 用語 ........................................................................................................................................................ 8 ヨジテック社について......................................................................................................................... 9 2 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 免責 本製品の情報は、開発・改良にともない予告なく変更されることがあります。 また本白書に掲載されている製品の詳細情報及び使用法は、ヨジテック社の faultRobust STL の採用 検討を行われているお客様に提供されています。 ヨジテック社は本書における不正確な記載、過失、情報の遺脱、お客様の製品の誤使用等によって生 じるいかなる損失・損害について、一切責任を負わないものとします。 この白書で記述されたトレードマークは所有者の排他的な所有物です。 3 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 要約 ソフトウェア・テスト・ライブラリ(以下 STL)として度々取り上げられる、ソフトウェアによるセ ルフ・テストは、安全に関連する集積回路の診断カバー率を測る一手法として、特に限定的な回路、 またはハードウェア診断機能のない回路に適応しています。本白書では、まず IEC 61508 や ISO26262 といった一般的な機能安全規格の準拠に必要な要件について言及し、こうした要件を実際に遵守し達 成するには、テスト対象となる集積回路の内部を詳細に分析し尚且つ実回路の診断カバー率を測定す るため、ゲートレベルに故障注入するホワイトボックスアプローチ手法で STL が実装されている場合 に限ることを立証しています。次に、ヨジテック社の faultRobust Methodology に基づく faultRobust STL が、いかに機能安全規格に準拠し、最小限のコードサイズ、短い実行時間、柔軟性、再利用性に おいて有利な点を説明しています。そして最終的に本白書では、ヨジテック社の STL はシングル並び にデュアル・マイクロコントローラ設計、またマルチ・コアに適応できることを説明しています。 ソフトフェア・テスト・ライブラリ(STL)について ソフトウェアによるセルフ・テストは、安全に関連する集積回路の診断カバー率を測る一手法です。 このソフトウェアは各々ソフトフェア・テスト・ライブラリ(以下 STL)、診断ソフトウェア・テス ト(以下 DST)、コア・セルフ・テスト(以下 CST)と呼ばれています。実質的に STL は、プロセッ シング・ユニット自身あるいは他の集積回路が動作する設計において、プロセッシング・ユニットを 定期的にテスト実行するソフトウェア・プログラムです。そのため STL は、限られた回路やハードウ ェア診断機能のない回路に適応しており、ハードウェアの安全を支援する集積回路におけるセーフテ ィ・メカニズムの補完にも対応が可能です。 IEC 61508 や ISO26262 のように一般的な機能安全規格に関する STL の安全要件仕様、設計、適合確認 については次章で言及します。 IEC 61508、ISO26262 に関する STL の安全要件仕様 IEC 61508 規格(IEC 61508-7 A.3.2 引用)に準拠する STL は、データ・レジスタ、アドレス・レジスタ、 命令デコーダといった構造をテストするデータ・パターンを使い、セルフ・テストを実行するソフト ウェア機能で構成されています。この規格(IEC 61508-2, Table A.4 引用)への準拠は、達成可能な最 大診断カバー率が中レベルで 90%です。 これに極めて似た安全要件は、自動車産業分野の機能安全規格 ISO 26262 にも存在します。たとえば ISO 26262-5 D.2.3.1 で STL は、プロセッシング・ユニットおよびレジスタのようなサブエレメントで 構成される物理記憶域、インストラクション・デコーダのような機能モジュール等の故障をソフトウ ェアにより出来得る限り速に検出するために使用されます。ISO 26262 規格(ISO 26262-5 Annex D Table D-4 引用)では、達成可能な診断カバー率は STL の品質に依存し、慣例的に中レベルで 90%に なっています。 さらに ISO 26262-5 Table D.1 で、「ゲートレベルのスタック・アット」が STL でカバーされる必要が あることを明示し、ISO 26262-5 D.2.3.1 では、テストされたゲートの実カバー率を決定するには、広 範囲の故障シミュレーションを要求すると述べています。 上記の両機能安全規格は、IEC 61508-3 や ISO 26262-6 のソフトウェアに関する章に記載されているよ うに、(STL の開発プロセスに関する事項に限定) STL の仕様、実装、適合必要条件を満たす点で 一致しています。それらの要件には、他の要素間で変数名を多重使用しないといった特定のソフトウ ェア構成概念を避けることと、MC/DC カバレッジのように構造的カバレッジメトリクスに至る詳細 な証拠を提供することが挙げられます。 次章では、STL が仮に、集積回路の詳細情報が無く、実診断カバー率を提供するはずの故障注入を行 わないようなブラックボックスアプローチで設計されていた場合に安全要件に到達できないことを証 明します。 4 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 ブラックボックスのソフトウェア・テスト・ライブラリについて: ARM Cortex-M3 の事例 STL がブラックボックス手法で設計されていた場合、前述の要件準拠を主張するのは不可能なことを 明示するために、私達は有能で機能安全規格について熟知しているソフトウェア・エンジニアに、 IEC 61508 第 2 版「セルフ・テスト・ソフトウェア」に基づいて、簡単で扱いやすい ARM Cortex-M3 をターゲットとしてプロセスユニットの STL 作成を依頼しました。 ソフトフェア・エンジニアは、IEC 61508 第 2 版の記述通りに C 言語を用いて STL を作成し、全ての ARM Cortex-M3 のレジスタをウォーキング・ビットで、また ARM Cortex-M3 命令デコーダとアドレス ロジックのテストを実行し、尚且つウォッチドックの追加設定にも対応しました。 ソフトウェアは最新で検証されたコンパイラを使用し設計され、STL のコードサイズは 7,696 ビット になりました。 次に、故障注入環境(ヨジテック社の Safety Verifiertool suite に基づく)は、STL で達成可能な診断カ バー率を測るようセットアップされました。この環境は、セルフ・テスト実行中にコードとデータを 格納するメモリモデルと ARM Cortex-M3 のゲートレベルのネットリストからなります。テスト結果と して 150,000 以上のスタック・アット故障(ARM Cortex-M3 で可能な全故障数に相当)がシミュレー ションされ、診断カバー率は 69.6%、レジスタのウォーキング・ビット・テストを取り除くと 59% になりました。違う組み合わせのテストも実行しましたが、ウォッチドック機能を含めても、測定さ れた診断カバー率はいづれも 55-70%の範囲でした。 一連の測定結果は、いかに優れたエンジニアと ARM Cortex-M3 の様な比較的簡素なプロセスユニット を組み合わせていても、ホワイト・ボックス方法論による安全指向の支援が無ければ、機能安全規格 が示す中レベルの診断カバー率を達成するのは到底不可能なことを表しています。特に故障注入ツー ルが無かった場合、ソフト・エンジニアは自身の努力結果を評価することはできませんし、安全指向 の設計に対する探求方法が無ければ、正しい方向へソフトエンジニアを導いていくこともできません。 これを ARM Cortex-R や ARM Cortex-A シリーズのようにより複雑な CPU コアに当てはめて考えてみれ ば、STL の診断カバー率に対する期待値、実際値の格差が劇的に増加することは容易に想定できます。 次章では、ヨジテック社の faultRobust Methodology が、ブラックボックスアプローチの限界を克服 することを可能にする、適切な安全指向のホワイト・ボックス方法論であることを解説します。 ヨジテック社の faultRobust Methodology (fRMethodology)について ヨジテック社の faultRobust Methodology(以下 fRMethodology)は、様々な機能安全規格への準拠を 検証/確認するために、機能安全の解析や安全指向での集積回路設計を実現するホワイト・ボックス アプローチであり、特許を取得しています。fRMethodology には、主に次の特長があります。 分析の完全性を保証するために、独自の自動分割ツール(ヨジテック社製の Elementary Part Extractor)を使用して、コンポーネントを基本パートに分割する。 独自の自動設計ツール(ヨジテック社製の Safety Designer)を使用して、各パートの故障モデル テスト、故障率・危険度に関する付加情報、設計されたハードウェアおよびソフトウェアの安全 機構の推定診断カバー率を通じて安全基準の数値計算を行う。 検証/妥当性を検査する自動ツール(ヨジテック社製 Safety Verifier)を使用して、広範囲の故障 注入によって、パーマネント故障、トランジェント故障、共通原因故障をシュミレーションし安 全メトリックを検証/確認する。 次章では、ヨジテック社の fRMethodology で仕様、実装、適合確認されている STL が、様々な機能安 全規格の要件をどのように満たしているか、具体的な診断カバー率を提示しながら解説します。 5 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 ヨジテック社 fRMethodology の仕様、実装、検証によるソフトウェア・ テスト・ライブラリの使用例 次の図 1 は、fRMethodology の仕様、実装、検証による STL 作成の流れを表しています。 図 1:fRSTL のための fRMethodology フロー このフローにより、集積回路データベースを各基本パートに分割する処理、各パートの故障分布を自 動計算するための量的な FMEDA の実施、 各パートの危険度の推定とソフトウェアの安全要件であ る STL 目標診断カバー率の定義、安全要件と照合したソフトウェアのコーディングと、付随する厳密 な開発フロー、そして STL で達成可能な診断カバー率と推定危険度を検出するため、広範囲の故障注 入を実施して安全検証を行います。 CPU を例にすると、ヨジテック社の fRMethodology と Safety Design ツールにより、安全設計管理エン ジニアは瞬時に、キーとなる基本パートのどのプロセス・ユニットに多くの故障が発生するか見極め ることができます(図 2 参照。CPU の構成に依拠)。したがって、非常に詳細なソフトウェアの安全 要求の提示ができ、ソフトウェア・エンジニアは効率的に対策を講じられ、これらの要件に応じた STL を作成できます。最終的にヨジテック社製の Safety Verifier ツールで、ソフトウェア・エンジニア はテストギャップの詳細情報を得て、セルフ・テストで達成可能な診断カバー率を実現するためゲー ト・レベルのネットリストへ故障注入と、各認証機関に提出できる客観的な証拠を生成します。この 手法で作成した STL は、コードサイズ 10KB 以下、CPU 動作周波数 100MHz での実行時間が 1ms 以下、 診断カバー率は 90.5%に達します。 次章では、ヨジテック社製 faultRobust ソフトウェア・テスト・ライブラリの主な特長について解説 します。. 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 Failure distribution vs CPU configuration 60% CFG_A 50% CFG_B CFG_C Failure distribution 6 40% 30% 20% 10% 0% Failure Failure Failure Failure Failure Failure Failure Failure Failure Failure Failure Failure Mode 1 Mode 2 Mode 3 Mode 4 Mode 5 Mode 6 Mode 7 Mode 8 Mode 9 Mode Mode 11 Mode 10 12 Failure Failure Failure Failure Failure Failure Failure Failure Failure Failure Mode Mode Mode Mode Mode Mode Mode Mode Mode Mode 13 14 15 16 17 18 19 20 21 22 CPU top-level failure modes 図 2:CPU の故障分布 ヨジテック社製 faultRobust ソフトウェア・テスト・ライブラリ (fRSTL)の特長 ヨジテック社製 faultRobust STL(以下 fRSTL)は、前章で言及した流れで行われる独自開発の STL で す。fRSTL のアーキテクチャの概念を図 3 に示します。 図 3:fRTSL アーキテクチュア 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 7 上記より fRSTL が機能安全規格の要件に完全に準拠し、尚且つ明白な証拠を証明する診断カバー率を 提供する事が示されており、次のような主な特長があります。 テスト・インターフェイスとテストセグメント(以下 TS)群により、モジュラリティを確保し ます。各 TS は特定機能、コンポーネントの機能グループを対象とし、正常/故障の情報とセル フ・チェック・シグネチャ(巡回冗長検査方式 CRC)の合否が提供され、アプリケーション・ソ フトウェアでいつでも割り込み可能。 全てあるいは部分的なテスト実行をユーザーが選択できるよう柔軟性を追及しています。 ほぼ全て C 言語で作成されています。 一部分において最適化されたアセンブラコーディング により適応範囲において必要なパフォーマンスを達成するために特定の命令が使われています。 fRMethodology フローで許されたランタイムとサイズは最適化されていて、アプリケーション・ ソフトウェアに対して最小限の影響ですみます。 次章ではヨジテック社製 fRSTL を、シングル、デュアル・マイクロコントローラ設計へどう利用でき るか説明します。 ヨジテック社製 fRSTL のシングル、デュアル・マイクロコントローラ ユニットあるいはマルチ・コアへの使用例 ヨジテック社製の fRTSL はシングル、デュアル・マイクロコントローラユニット(以下 MCU)あるい はマルチ・コアの設計に使用できます。シングル MCU に利用した場合は、fRTSL セフティ・マニュア ルの詳細な使用条件下で僅かなリソースを使用し IEC 61508 SIL2 や ISO 26262 ASILB の安全完全性レベ ルまで準拠したパーマネントフォールト検出と診断カバー率を提供します。テストは電源オン、定期 的あるいは重要な動作の前後でも実行できます。分割割り込み可能なテストセグメントで構成された 柔軟な構造と、短い実行時間により、fRTSL はどのようなアプリケーションにも適応し、プロセスセ ーフティ時間やフォルトトレラント時間において数ミリ秒から秒間隔で検出ができます。ヨジテック 社製 fRTSL は一般的に行われているデータの符号化や演算時間のような、ユーザーが追加でカバーす るトランジェント故障を組み合わせることができます。このようにヨジテック社製の fRTSL は、IEC 61508 SIL3 と ISO 26262 ASILD のシステム故障の回避要件に適合する高性能システムとして開発されて おり、各同種のハードウェア・エレメントの診断カバー率と同程度、あるいは 90%以上を保証しま す。またヨジテック社製の fRTSL は IEC 61508 SIL3 と ISO 26262 ASILD によるハードウェアのアキーテ クチャ基準をターゲットにした、デュアル MCU 設計にも使用できます。 MCU 1 MCU 2 CPU CPU alg alg bus peripheral peripheral bus channels cross-checking (cross monitoring) CRC+... data Safety Protocol CRC+... data Safety Protocol 図 4:デュアル MCU 設計の fRTSL 8 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 図 4 が示す通りヨジテック社製の fRTSL は、一般的なに2つの並列 MCU においても電源オン、定期 的あるいは重要な動作の前後でも実行できます。パーマネントおよびトランジェント故障の両方に対 してハイレベルの診断カバー率を保証するため、中間結果(各 TS における)は安全なプロトコルに より組み合わせられ、そして機能安全の中間結果と共に MCU 間で相互に比較されます。同概念はマ ルチ・コアにも適応できます。その場合、最高水準の共通原因故障の回避と特に共有ロジックを保証 するために、2 つの並列 CPU を動作させ専用の安全なプロトコルによりテスト結果を機能安全の中間 結果と相互比較できる独立した判定エレメントへ送られます。 ヨジテック社は安全に関連するシングル、デュアル MCU あるいはマルチ・コアにおいて多数の市場 経験を有し、お客様に対して、既存の安全に関するシステムとヨジテック社製の fRTSL を統合する技 術支援も提供しています。 まとめ 本白書では、ユーザーやマニュアルを参考にしてシンプルに設計され、ゲートレベルの故障の注入検 証を行っていない STL は、機能安全規格の要件を完全に満たすことは不可能なことを証明しています。 一方、ヨジテック社の fRMethodology は、安全指向の方法論であるホワイト・ボックス手法により、 fRSTL の最適化、柔軟性、再利用性を追及し、安全要件への適合を保証することを証明しています。 ヨジテック社の faultRobust STL 製品の有効性 ヨジテック社製 fRSTL ポートフォリオには、Cortex-M シリーズの fRSTL、STMicroelectronics 社の STM 32 MCU の fRSTL を含み、ロードマップには Cortex-A シリーズの fRSTL も企画しています。fRSTL はそ の他の CPU やマイクロコントローラにも対応可能です。さらなる情報は、ヨジテック社へお問い合 わせください。 参考文献 IEC 61508:2010 – Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems. ISO 26262:2011/2012 - Road vehicles — Functional safety. 用語 STL fRSTL MCU EP TS SW Test Library YOGITECH faultRobust STL Microcontroller Elementary Part Test Segment 9 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 ヨジテック社について ヨジテック社は 2000 年に設立され、シリコンベンダー等にシステム構築において機能安全 の要件を達成する支援サービスと解決法を提供しています。ヨジテック社の faultRobust technology は、fRMethodology、fRTools、fRTrainings、fRIPs、fRSTL の製品群を提供しており、 一貫して機能安全のために何でも揃う会社として任務を果たしています。主に自動車、工業 製品、医療、鉄道分野の半導体/情報通信企業の安全アプリケーション・ドメインで活躍し ています。ヨジテック社は ISO26262 ワーキング・グループに積極的に参加しており、 Part10 Annex A “ISO 26262 and microcontrollers”の筆頭著者です。また新たに編成された ISO 26262 半導体ワーキング・グループの主要メンバーでもあります。 YOGITECH S.p.A. Via Lenin 132/P - 56017 San Giuliano Terme Loc. San Martino Ulmiano (PI) ITALY TEL: +39 050 86351 FAX: + 39 050 861870 www.yogitech.com [email protected] 出版: 2014 年 10 月 10 集積回路の安全関連ソフトウェア・テスト・ライブラリ(STL)とホワイト・ボックス SIL2(3)-ASILB(D)ヨジテック社製 faultRobust STL に関する白書 Via Lenin 132/P - Loc. San Martino Ulmiano 56017 - San Giuliano Terme (PI) Italy Tel: +39 050.86351 - Fax: +39 050.861870 contactus@yogitech - www.yogitech.com