検証、妥当性確認、テストのための MATLAB および Simulink

モデルベースデザインによる組み込みシステムの検証と妥当性確認

エンジニアリング チームは、MATLAB® および Simulink® を使用したモデルベースデザインにより、複雑な組み込みシステムを設計して量産品質の C、C++、および HDL コードを生成しています。MathWorks のツールは、シミュレーション テストと形式手法に基づいた静的解析を使用して、厳密さと自動化によってモデルベースデザインを補完し、エラーを早期に発見して高品質を実現します。

MATLAB と Simulink を使用すれば、次のことが可能になります。

  • アーキテクチャ、設計、テスト、コードへの要件のトレース
  • 設計が要件を満たしており、重大なランタイムエラーがないことの証明
  • モデルやコードの準拠確認および品質測定
  • テストケースの自動的生成によるテストカバレッジの向上
  • レポートおよびアーティファクトの作成、DO-178ISO 26262 などの規格に準拠していることの証明

「当社が過去に行っていたハンドコーディングと比較すると、モデルベースデザインによって、人件費が 30%、検証コストが 20% 削減され、生産性は 30% 向上しました。社内ソフトウェア開発チームの立ち上げと同時に進めたにもかかわらず、ECU 開発をスケジュールよりも早く完了できました」

Daming Li, Weichai Power

検証と妥当性確認のための MATLAB および Simulink の使用

Panel Navigation

 

テーマ: モデルベースデザインと共同作業のワークフロー

要件の検証

ドキュメント、スプレッドシート、または IBM® Rational® DOORS® などの要件管理ツールに保存できる非公式のテキスト要件により、開発プロセスが開始されます。Simulink Requirements™ を使用すると、アーキテクチャや設計、生成されたコード、テスト アーティファクトとともに要件を表示、作成、管理できます。System Composer™、Simulink、Stateflow®、または Simulink Test™ の MATLAB テストでは、要件から設計までのデジタルスレッドを作成できます。このトレーサビリティにより、実装またはテストのギャップを特定し、変更が設計またはテストに及ぼす影響を迅速に把握することができます。開発プロセスで他のツールとのトレーサビリティを確立できるように、サードパーティツールの要件を表示、同期、管理することができます。

Simulink Test の時間的評価では、評価およびデバッグできる自然言語形式の正確なセマンティクスで評価を指定することにより、テキスト要件を検証できます。


認証標準への準拠

DO-178、ISO 26262、IEC 61508、IEC 62304、および MathWorks Advisory Board (MAB) スタイルガイドラインなどの標準に合わせて、モデルとコードの検証を自動化します。Simulink Check™ は、開発中に標準およびガイドライン違反を特定するための、業界認定のチェックやメトリクスを提供します。独自の標準やガイドラインに合わせてカスタムチェックを作成できます。IEC Certification Kit (ISO 26262 および IEC 61508 用) および DO Qualification Kit (DO-178 用) には、コード生成製品および検証製品の適格性を確認し、組み込みシステムの認定の合理化に役立つ、ツール検定アーティファクト、証明書、およびテストスイートが用意されています。


エラーがないことの証明および要件の形式検証

形式検証では、設計をシミュレーションすることなく、整数オーバーフロー、デッドロジック、配列アクセス違反、およびゼロ除算を引き起こす潜在的な設計エラーを検出します。Simulink Design Verifier™ では、設計にエラーやセキュリティの脆弱性がないことを形式検証できます。また、Simulink Design Verifier では、設計が重要な要件を満たしていることを証明できます。ツールが例外を検出すると、デバッグ用の反例を生成します。


テストの自動生成

テストのギャップ、意図しない機能、または要件エラーを特定することが重要です。Simulink Coverage™ は、テスト中に実行されるモデルまたは生成されたコードのカバレッジを測定します。条件、判定、改良条件判定カバレッジ (MCDC)、およびカスタムのカバレッジ オブジェクティブなどの業界標準メトリクスを適用します。Simulink Design Verifier では、テストケースを自動的に生成して不完全なカバレッジに対処し、構造的および機能的なカバレッジ オブジェクティブを達成できます。


静的コード解析

手書きのコードおよび生成されたコードの検証のために、Polyspace® 製品は形式手法を使用してバグを検出し、重大なランタイムエラーがないことを証明します。テストケースやコード実行は必要ありません。Polyspace Bug Finder™ は、MISRA®、ISO 26262、IEC 61508、DO-178、および FDA 規制などの標準への準拠を確認し、文書化します。ソフトウェアのセキュリティ脆弱性と CWE、CERT-C、ISO/IEC 17961 などの標準について確認できます。Polyspace Code Prover™ は、静的解析を実施して、C および C++ ソースコードのオーバーフロー、ゼロ除算、範囲外の配列アクセス、およびその他のランタイムエラーがないことを証明します。


対話型の例やチュートリアルを通して基本的なタスクからより高度な操作まで習得できます。