安全クリティカルなマルチコア組み込みシステムにおける信頼性の高いタイミング保証
現代の車両と航空機は、もはや機械コンポーネントのみに依存していません。その安全性と性能は、フライトコントロールからパワーステアリングまで、マイクロ秒レベルのデッドラインで管理する複雑なヘテロジニアスマルチコアプロセッサ上で実行される組み込みソフトウェアにかかっています。
マルチコア環境では、タスクの実行時間は自分のコードだけでなく、同じハードウェアリソースを共有する他のタスクによっても影響を受けます。この干渉は、システムを安全マージンを超えて押し上げる可能性があります。
安全クリティカルな組み込みソフトウェアの開発には、数百万ユーロ、複数年の労力が必要です。最初期の設計段階から、安全性をアーキテクチャに組み込み、すべてのタスクのタイミング振る舞いを厳密に理解して、デッドラインが常に守られることを保証する必要があります。
マルチコアタイミング分析パズルの解決
マルチコアプロセッサは高性能を約束しますが、バス、メモリ、キャッシュ、アクセラレータなどの共有リソースの競合ももたらします。あるコアで実行中のタスクが、他のコアのタスクを遅くし、予測不可能なタイミング変動を生み出します。
重要な疑問が生じます:このような干渉の影響をどう定量化するか? マルチコアプラットフォーム上で安全クリティカルなソフトウェアが常にデッドライン内で完了することを、どう分析、テスト、文書化するか?
業界リーダーであるバルセロナスーパーコンピューティングセンター(BSC)、Rapita Systems Ltd(RPT)、Raytheon Technologies(RTRC)、Marelli Europe(MAR)が、これらの課題に数年かけて取り組んできました。BSCとRapitaは、間もなく航空宇宙と自動車セクターで採用されるソリューションセットを提供しています。成功の鍵は、専門ツール、自動化、安全指向の要件駆動型メソドロジーにあります。
この取り組みは、2019年12月に開始された欧州委員会資金援助の学際的R&Dイニシアチブ、MASTECSプロジェクトの基盤となっています。MASTECSは技術を成熟させ、RTRCとMARのケーススタディで実世界の影響を示しながら、アビオニクスと自動車システムの認証のための実証済みアプローチを提供します。
最先端ツール
商用ツールはシングルコア分析では優れていますが、マルチコア認証の複雑さには苦戦しています。限界には以下が含まれます:
- 静的タイミング分析ツール[1]は複雑さの壁にぶつかり、洗練されたハードウェアや極めて複雑なソフトウェアをモデル化できません。
- 測定ベースのソリューションは、シングルコアテストで普及しています(例:RapitaのRVSツールセット)が、適切なトレーサビリティを備えたマルチコアワークロードの信頼できるタイミング境界を生成するためのハードウェアエキスパートメソドロジーを欠いています。
現在のところ、MASTECS開発努力以外の商用ツールで、安全基準と新たな認証要件に準拠した包括的なマルチコアタイミング分析を提供するものはありません。
干渉分析と制御の実践
私たちのアプローチの基盤は、ハードウェアとソフトウェアの専門知識を融合し、マルチコアタイミング振る舞いのエビデンスを生成する構造化テストメソドロジーです。BSCのマルチコアマイクロベンチマーク技術(MμBT)、Rapitaによって商用化されたRapiDaemonsにより、設計者は特定の共有リソースにストレスを与える干渉シナリオを作成できます。
マイクロベンチマーク(微小なローレベルコードスニペット)は、ハードウェア・ソフトウェアインターフェースで動作し、ターゲットリソースに定量可能な圧力をかけます。これらは干渉チャネルの効果を明らかにし、競合の誘発、測定、検証に合わせて調整できます。主な属性は以下の通り:
- 共有リソースへの標的を絞った定量可能な圧力。
- イベントモニタを通じた検証可能な振る舞い。
- 緩和策の有効性テストなど、特定のタイミング要件との整合性。

図1: 干渉分析におけるマイクロベンチマークの使用 (出典: 著者ら)
望ましい干渉レベルに合わせ、リソース影響を最大化し、または感度の高い「被害者」テストとして機能する、多様なマイクロベンチマークライブラリが存在します。
干渉分析では、MμBTをタスク競合モデル(TCM)と組み合わせ、早期の競合遅延見積もりを提供します。RapitaのRapiTestとRapiTimeが、組み込みターゲットでのテスト作成と実行を自動化します。
設計メソドロジー
Vモデルソフトウェアライフサイクルに統合された7ステッププロセス(図2参照)に従うことで、エンジニアは干渉効果への深い洞察を得られます:
- ハードウェア設定と干渉チャネル特定。 ハードウェアエキスパートがクリティカルな設定、干渉経路、緩和オプションを特定し、検証用のイベントモニタを選択。
- タイミング要件の定義。 ユーザー固有のニーズ、リスク、安全制約を取り込み、ハードウェア分離戦略を評価。
- テストケース設計。 仮説を検証するテスト記述を作成し、分離およびストレス条件下での干渉分析に必要なマイクロベンチマークを指定。
- テスト手順の実装。 テストフレームワーク、マイクロベンチマーク、測定プローブを組み立て。現在は手動だが、MASTECS内で自動化予定。
- エビデンス収集。 ターゲットプラットフォームでテストを実行し、検証要件に直接結びつくデータを収集。
- 結果分析。 技術エキスパートが成果を要件と照らし合わせてレビュー。たとえば図3はRapiTimeの実行時間内訳を示す。
- 検証と文書化。 最終レビュー、レポート生成、認証提出用の資格アーティファクト作成。

図2: Vモデルソフトウェア開発プロセスにおけるMTAステップ (出典: 著者ら)
ハードウェア専門知識とタイミング分析プロセス
ハードウェア洞察は最初から不可欠です。初期段階での関与には以下が含まれます:
- 機能的およびタイミング振る舞いを形作るマルチコア設定の特定、競合を減らす分離メカニズムの決定。
- 複雑なプロセッサマニュアルをナビゲートし、ベンダーに不足詳細を相談することで干渉チャネルを特定。
- 干渉チャネル上のタスク活動を取得するイベントモニタの選択、専用マイクロベンチマークで検証[2]。
- タイミングアナリストと協力して要件を導出し、特定の干渉チャネルを負荷するテストを設計。
後期段階では、ハードウェアエキスパートがテスト結果を評価し、仮説を洗練し、必要に応じて追加テストを提案します。

図3: 結果分析 (RapiTime) (出典: 著者ら)
より大きな絵柄
7ステップ設計プロセスは、より広範なマルチコア検証メソドロジーの一部です(図2参照)。要件と設計にまで遡る完全なトレーサビリティ(エビデンスと結果から)を提供し、CAST-32AとISO 26262の両方をサポートします。CAST-32Aは、認証機関ソフトウェアチーム(CAST)が2016年に発表し、干渉境界設定を含む安全なマルチコア航空機の目標を概説しています。EASAとFAAは、今年後半に統合AMC/AC(AMC 20-193)の適応を発表予定です。
専門知識は自動化できない
干渉ダイナミクスは複雑で、自動化ツールは熟練エンジニアを補完するだけで、置き換えることはできません。マルチコアエキスパートはハードウェア設定と干渉チャネルの深い知識を持ち、ソフトウェアアナリストは要件を厳密なテストに変換します。仮定の検証、結果の解釈、設計の反復には人間の洞察が不可欠です。
参考文献
- Reinhard Wilhelm. Mixed Feelings about Mixed Criticality. Workshop on Worst‑Case Execution Time Analysis, 2018.
- Enrico Mezzetti, Leonidas Kosmidis, Jaume Abella, Francisco J. Cazorla. High‑Integrity Performance Monitoring Units in Automotive Chips for Reliable Timing V&V. IEEE Micro 38(1): 56‑65 (2018).
- EASA and FAA to issue further guidance on multicore certification this year.
埋め込み
- 組み込みシステムとシステム統合:モダンアーキテクチャと接続性
- AIが量子優位性を予測:ニューラルネットワークでシステム挙動を予見
- 組み込みシステムにおけるデバッグ:種類、技法、信頼性向上のためのツール
- 組み込みシステムが牽引する現代自動車のイノベーション
- 組み込みシステム:定義、アーキテクチャ、実世界での応用
- テキスト文字列:組み込みソフトウェアに潜む脆弱性
- SOAFEE:ソフトウェア定義自動車プラットフォームを強化するクラウドネイティブアーキテクチャ
- TRS-STAR EPS-KBLHE:サイレント産業オートメーション向け堅牢ファンレス組み込みPC
- アクシオムテック、ミッションクリティカル向け3.5インチ組み込みSBC「CAPA310」発表
- NicheStack TCP/IPスタックの14の重大脆弱性、OTデバイスをリモート攻撃に晒す
- DevOpsで組み込みソフトウェア開発の課題を克服する