機能安全に対応する組込みシステム開発では開発ツールの適格性証明が必要

IARシステムズは、IEC 61508、ISO 26262、EN 50128、IEC 62304等 に準拠したセーフティクリティカルなアプリケーションの開発に対応するため、Arm、RISC-V、STM8、Renesas RX、RL78、RH850用の組込み開発環境IAR Embedded Workbenchのビルドチェーンについて認証済みバージョンを提供しています。本稿では、この認証の持つ意味と、開発環境( 開発ツール)の認証を自身のプロジェクトで活用する方法について説明します。ここで紹介する機能安全サービスは、アプリケーションが正式に認証を受けるか否かに関わらず、実際に有用な機能としてお使いいただけます。

組込みシステムに関する機能安全規格

機能安全認証に関しては何年も前から正式な規格が存在しますが、ここ数年、組込み分野では、このような規格への関心が高まり、製品の認証が急速に普及しています。この要因の1つとして、法的要求によるものがありますが、同時にメーカにとって機能安全認証のお墨付きを得ることが競争を勝ち抜く1つの要素となっていることも事実です。

EC 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による認証レポート。認証が有効となる条件が記載されています。
  • セーフティガイド。ツールチェーンを機能安全関連の開発に適用する方法について、各種機能安全規格の用語で記載したマニュアルです。このガイドは、ツールチェーンをインストールする際の考慮事項から言語の拡張、コンパイラプラグマの処理方法まで、あらゆる内容を網羅しています。
  • 機能安全の保守契約。認証済みバージョンに対するサポートと事前に検証されたバグ修正が含まれており、お客様との契約が続く限り有効です。
  • 通常の更新。ツールチェーンで新たに報告された問題に対する更新です。

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

 

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

申し訳ございませんが、弊社サイトではInternet Explorerをサポートしていません。サイトをより快適にご利用いただくために、Chrome、Edge、Firefoxなどの最新ブラウザをお使いいただきますようお願いいたします。