早期の車載ECUタイミング検証の実現
車載ECUの制御では、特定の時間内に処理を終えないといけないといったタイミングの要求があります。
例えば、自動ブレーキシステムでは、安全性を確保するために「レーダーが障害物を検出してから300ms以内に必ずブレーキを作動させる」といったタイミングの要求があります。
このようなタイミング要求は、車載制御ECU、特に自動運転制御などでは数百の要求項目があります。開発の最終段階でこの要求を満足していないことが判明した場合、修正は容易ではありません。
修正するには、その原因を知る必要があります。ハードウェアの変更は困難なため、一般的にはソフトウェアによる対策を行います。ここでは、時間がかかっている関数のリストアップや、タスクの最適化についての検討が必要となります。
実行時間短縮の目途が付けば、関数・タスクを再設計し、再実装・再テストを行うこととなりますが、開発終了までの時間の無い中でこのような作業を行うのは非常に困難です。
そこで、より早い段階でのタイミング検証が求められます。
chronSUITEは、早期検証を実現するシミュレーションツール、最悪実行時間算出ツールなどで構成される、ドイツINCHRON社のタイミング検証支援ツールです。
chronSUITEのchronSIMを使えば、設計時にタスク設計を最適化することが可能です。タスク設計情報、タイミング要求をchronSIMに入力すれば、シミュレーションにより、タイミング要求を満たしているか、何がオーバーヘッドとなっているかの解析、タイミング不具合の解析を行うことができ、タイミング設計変更⇒シミュレーションを繰り返すことで素早いフィードバックによる早期の適切なタスク設計が可能となります。
自動運転などではマルチコア、VMが使用されますが、それらも考慮した解析や、複数ECU間の通信を含めたシミュレーションも可能です。
chronSIM によるタスクシミュレーション
実装やハードウェアの完成後には、chronSUITEのchronVIEWを使うことで、ソフト実装、ハードウェアを含めたタイミング検証を行うことができます。タスクの起動、休止、終了などの状態を、トレースするツールからのトレースデータを使用してタイミング解析を行います。
chronVIEWによる実機のタイミング検証
このように、chronSIMを使えば早期のタイミング検証はタスク設計情報のみであれば可能ですが、実装を含むとなるとハードウェアの完成を待つ必要がありました。ECUアプリケーションのロジックの確認であれば、MILS、SILSで可能ですが、タイミングとなると、CPUの処理速度、タスクの実行動作がリアルのECUと異なるため、従来のMILS、SILSでの早期の検証は難しいものでした。
ユビキタスAIと株式会社 エー・アンド・デイで共同開発、販売している「GSIL」は、ハードウェアの完成前にPC上で車載制御ECUのロジックの確認、デバッグが容易に可能となるツールです。このGSILには、MILSや従来のSILSでは困難な、早期の段階で実装を含めたタイミング要求を検証できる機能があります。
まず、CPUの処理速度の違いによる実機との実行速度の違いですが、インストラクションセット、メモリアクセスなどの違いがあるため実機と完全に同じ条件とはならないものの、実機とPCでベンチマークを取り、おおよその倍率を算出して実行速度を把握することができます。タイミングの保証まではできませんが、開発早期での時間のボトルネックの把握が可能となります。「GSIL」では、トレースデータを設定した倍率を考慮してエクスポートする機能があり、これらを簡単に実現可能です。
次にタスクの実行動作ですが、一般的にSILSではその実行時に並列処理を行うことはできません。したがって、上記の手法を使っても処理時間は実ECUとは大きく異なってしまいます。これはGSILでも同様です。
GSILの実際のタスク実行動作
しかし、GSILでは、タスクの処理のトレースに工夫することで、あたかも並列処理をしたかのような動作をシミュレーションできます。
並列処理を考慮したトレースデータのインポート
これにより、より正確なタイミング要求時間の解析が可能になりました。また、ユビキタスAIが取り扱っているドイツVerifysoft社のカバレッジ測定ツールTestwell CTC++を使用することで、関数毎に関数の開始から終了までの処理速度の計測が可能です。各タスクから呼ばれる関数のどの関数でどれだけの時間がかかっているかを把握し、その関数のCコードを変更することで、効率的にトータルの実行速度の短縮が可能となります。
これらのツールを利用することで、開発のそれぞれの段階においてタイミング検証を実施することが可能になります。
V字開発プロセスでのタイミング検証
このコラムの著者
株式会社ユビキタスAI
エンベデッド第3事業部 担当部長
植田 宏​(うえだ ひろし)
大学卒業後Tier1メーカーへ入社、ECUソフトウェア開発を行う。その後海外で組込みソフトウェア開発エンジニアの経験を経て、帰国。1998年より車載系ソフトウェアの技術営業に従事。自身の経験を活かし、課題解決に役立つ海外のソフトウェア商材を取扱い、国内のエンジニアへ届けている。
より詳しく技術や関連製品について知りたい方へ
本コラムに関係する技術や関連する製品について知りたい方は、お気軽にご相談ください。
ソフトウェアアプリケーションの実行速度高速化技術
2024.09.04
組込み制御ソフトウェアでのCIの課題と実現方法
2024.09.02
イベントチェーンを応用した車載ECUのタイミング検証
2024.08.30
車載制御ECUソフトウェア教育向けパッケージGTrainerとは
2024.08.08
システムテストのカバレッジ測定
2024.06.13
組込み制御ソフト開発へのシミュレーション応用による開発効率向上
2024.06.04
CANを使用したSILSテスト ―車両全体シミュレーション、テストケース再利用―
2024.05.27
GSILのMILS開発への適用
2023.12.20
GSILのCI(Continuous Integration)適用
2023.09.22
GSILの網羅的自動テストケース生成機能を使ったECUの信頼性向上
2023.09.13
OEM⇔サプライヤでのECU制御ソフトウェア環境共有による手戻り工数削減方法
2023.07.25
SILSを使用した車載制御ECUソフトウェア開発競争力強化
2023.07.20
車載ECUシミュレーションでテスト資産を活かすための技術とは?
2022.05.16