機能安全認証済みの組込み開発ツールを使っていますか?

IARシステムズは、IEC 61508、ISO 26262、EN 50128、IEC 62304等 に準拠したセーフティクリティカルなアプリケーションの開発に対応するため、国内で広く用いられる主要なアーキテクチャ向けの組込み統合開発環境IAR Embedded Workbench(コンパイラ/デバッガ)について機能安全認証済みのバージョンを提供しています。これにより、Arm、RISC V、STM8、RL78、RX、RH850などに対応したツール認定済みのビルドチェーンが利用可能です。本稿では、この認証の背景と、開発環境(開発ツール)の認証をお客様のプロジェクトで活用する方法をご紹介します。

組込みの各分野に広がる機能安全規格

機能安全認証は以前から複数の規格が存在します。ここ数年、組込み分野では、各種規格への関心が高まり、製品の認証が急速に普及しています。要因のひとつとして、法的要求がありますが、一方でメーカにとって機能安全認証のお墨付きを得ることが競争力の源泉となっているという事実があります。

IEC 61508は、機能安全に関する多くの規格を含む包括的な国際規格です。2010年の第2版で大幅に改定がされた後、現在、その派生規格とともに装置産業、鉄道、ビルディングオートメーションなど、信頼性と安全性が求められるあらゆる業種で使用されています。ISO 26262は車載システムに適用される規格で、EN 50128は鉄道アプリケーションでの機能安全関連ソフトウェアを対象とした欧州規格で、これもIEC 61508から派生したものです。国際規格IEC 62304は、医療用ソフトウェアおよび医療機器に実装されるソフトウェアの開発においてライフサイクル要件を規定する規格です。

使用する開発ツールの検証と適格性の証明ができますか?

機能安全要件をともなう組込みシステムの開発にこれから着手するのであれば、使用する開発ツールについて、機能安全の実装に使用可能という何らかの適格性が必要であると耳にされた方もいるでしょう。開発環境の適格性を証明するための詳細要件は、対象規格や製品の故障の重大性によって違いがあり、ツールの性質によっても異なります。たとえば、製品に組込まれるコードを生成するコンパイラは、ソースコードのメトリクスツールと比較して、適格性の証明が困難です。一方、ソースコードのメトリクスツールは、バージョン管理システムや要件管理システムと比較すると適格性の証明が困難です。

製品に課せられる重大性レベルなどの安全度水準に関しては、規格ごとに定義が異なります。ツールの分類についても、規格間で同じなわけではありません。たとえば、IEC 61508では、コンパイラなどのツールは認証を受けることが望ましいとされており、認証について正式な定義はありません。ツールがその仕様や文書に準じていることをテストする必要があるとされています。つまり、ツールのテスト仕様に対する適切なエビデンスがなければ、最悪の場合、ユーザは自分のプロジェクトで使用するツールをすべてテストする必要があります。かつ、そのツールの信頼性レベルを定める評価も必要です。

これらに加え、忘れてはならないのが、ツールプロバイダが、開発する製品のできれば全ライフサイクルにわたり、そのツールをサポートできるか否かという点です。

まとめると、開発者の担う作業は膨大な量で、その作業は1つのツール、1つのプロジェクトにしか適用できません。これが、私たちのツールチェーンが認証を取得した背景です。

認証済みかつ検証済みの開発ツールを使用する意義

セーフティクリティカルな開発に使用されるIARのツールチェーンが認証済みであることは、実際どのような意味があるのか?それは、そのツールの使用を正当化するのに必要な作業を大幅に減らせるということです。これは、独立した第三者機関、ここではTÜV SÜDによって、IARシステムズの開発作業、問題処理手順、テストおよび検証作業が評価され、IARのツールがIEC 61508、ISO 26262、EN 50128の要件を満たすものであり、さらにArm、RX、RL78向け製品ではIEC 62304に適合していることが認証されているためです。このことから、CまたはC++をプログラミング言語に選択した場合、IARのツールチェーンが最良の選択であることも意味します。

製品ライフサイクルにわたり固定バージョンで開発ツールがサポートされることで製品寿命が延びる

では、認証されたツールを選択すれば、すべてが解決されるのでしょうか? まず考慮すべき点は、そのツールチェーンに対して必要とされるサポートレベルと得られるサポートレベルです。ここでのサポートとはプロジェクトの期間だけでなく、製品の全ライフサイクルにわたるサポートを意味します。ツールが古くなり新しいバージョンに代わった場合、将来にわたってツールサプライヤによるサポートを受けられる保証はありません。

過去に適格性を認定されたツールに対して、バグの修正を受け取っても役に立ちません。その更新に機能上の更新が含まれていたとしても同様です。更新によって必然的にツールの適格性の再評価や、変更に伴う影響の詳細な分析が必要となる上に、テストの労力もかかるためです。

IARシステムズは、可用性に対して高度な要求を持つ機能安全関連のソフトウェアやサービスを開発するお客様との長年にわたる協業において固定バージョンのサポートが重要であることを認識しています。ここでの固定バージョンとは、バグ修正のみが行われ、新規機能が追加されないツールバージョンを意味します。このようなバージョンは、必要な限り長く有効であり、サポートを受け続けることができます。以前は、特定の固定バージョンと関連サポートを必要とするお客様とは特別な保守契約を結んでいました。しかし、今回の認証済みバージョンでは、IAR Embedded Workbenchの機能安全版を使用するすべてのお客様に対して、固定バージョンのサポートを提供できるようになりました。製品は、即購入できるパッケージで提供されます。

まとめ

最後に、機能安全関連製品でIARシステムズが提供しているものについて以下のとおり整理します。

  • IAR Embedded Workbench機能安全版の特別パッケージ。認証後、固定となった特別バージョンのツールが含まれています。Arm、RISC-V、STM8、RL78、RX、RH850用製品で提供しています。
  • TÜV SÜDによる認証レポート。認証が有効となる条件が記載されています。
  • セーフティガイド。ツールチェーンを機能安全関連の開発に適用する方法について、各種機能安全規格の用語で記載したマニュアルです。このガイドは、インストールの考慮事項から言語の拡張、コンパイラプラグマの処理方法まで、あらゆる内容を網羅しています。
  • 機能安全の保守契約。認証済みバージョンに対するサポートと事前に検証されたバグ修正が含まれており、お客様との契約が続く限り有効です。
  • 通常の更新。ツールチェーンで新たに報告された問題に対する更新です。

まとめると、認証済みビルドツールチェーンを選択することで、すべての機能安全関連プロジェクトにおいて煩雑さを最小に抑えて各ツールの使用が可能になります。またツールとともに適切なサポートが提供されることで、お客様のツール選択と、ツールに対する投資が保護されます。さらに、機能安全サポートは、お客様の製品が機能安全要件を直接満たす必要がない場合でも、その製品が様々な高信頼性要件や高可用性要件の対象であれば、有用なものです。

 ※最新の規格・コアの対応状況はIARシステムズの各種機能安全対応製品のページを参照ください。

作成:IARシステムズ株式会社