SimSchedで自動車ソフトウェアシミュレーションを進化させる
SimSchedは自動車ソフトウェアシミュレーションを正確なタイミングで強化するよ。
― 1 分で読む
AUTOSAR、つまりAutomotive Open System Architectureは、自動車業界で使われる標準なんだ。これによって、車のソフトウェアが整理された形式にまとめられるんだ。このアーキテクチャは、アプリケーション用、ランタイム用、基本ソフトウェア用の3つのレイヤーから成り立ってる。アプリケーションレイヤーでは、ソフトウェア機能がソフトウェアコンポーネント(SW-Cs)を使って作られるんだ。それぞれのコンポーネントには、ソフトウェアが何をしてるのか、どう動くのかを説明する実行可能なエンティティがあるんだ。
車のソフトウェアを作るとき、エンジニアはSimulinkみたいなツールを使って、これらのコンポーネントの動作を表現するんだけど、Simulinkはその環境で行われるアクションが瞬時に起こるって想定してるんだ。でも現実では、これらのアクションには時間がかかるんだ。この違いが原因で、シミュレーション中に予期しない動作が見えない問題が起こることがあるんだ。だから、時間がソフトウェアの動作に与える影響をモデル化するより良い方法が必要なんだ。
SimSchedはSimulinkの拡張で、ソフトウェアが現実の条件下でどう動くかをシミュレーションできるんだ。これによって、エンジニアはタスクのタイミングをより正確にモデル化できる。つまり、ソフトウェアコンポーネントの動作をシミュレートする際、実際にどのくらい時間がかかるかを考慮できるんだ。このツールは、実際の運用時にソフトウェアがどう動くかのより正確なイメージを作るのに役立つんだ。
シミュレーションの重要性
今の自動車は複雑なソフトウェアシステムに支えられてる。例えば、安全機能を管理したり、自動運転をサポートしたりするシステムはソフトウェアに依存してるんだ。最近の車は、これらのシステムが正しく機能するために何百万行ものコードを持ってる。これだけリスクがあるから、エンジニアは実際の車にこんなソフトウェアを搭載する前に、正確に開発・テストすることが必要なんだ。
シミュレーションはシステムをテストするのに欠かせない。設計がどう機能するかを見たり、最終製品が作られる前に潜在的な問題を見つけたりするのに役立つ。でも、Simulinkの従来のシミュレーション手法は、各アクションにどれくらい時間がかかるかを考慮してないんだ。すべてが瞬時に起こるって仮定しちゃってる。
SimSchedの役割
SimSchedは、時間をシミュレーションの中心に置くことで、これらの問題を解決しようとしてる。Simulinkのモデルにタイミングの詳細を追加することで、エンジニアはタスクが実際にどれくらいかかるかを見ることができるんだ。これは重要で、タイミングの問題を見つけて設計段階で修正できるようになるからなんだ。
SimSchedは、タスクが実際にどのように優先され、リアルタイムで実行されるかを反映するアルゴリズムを使ってる。多くの車は、タスクがリソースを共有するのを管理するための優先度天井スケジューリングって呼ばれるシステムを使ってる。このシステムでは、タスクがその重要性に基づいてお互いを中断できるんだ。SimSchedはこの動作をモデル化して、エンジニアがさまざまな条件下でソフトウェアがどのように動作するかを確認できるようにしてる。
以前の成果を基に
SimSchedは、以前の会議で提示された成果を改良したものなんだ。グラフィカルユーザーインターフェース(GUI)を導入して、モデル化プロセスを簡素化してる。新しいインターフェースでは、エンジニアがコンポーネントを簡単に管理したり、シミュレーション準備の一部を自動化したりできるんだ。このツールは、広範なコーディングスキルを必要としないから、もっと使いやすいんだ。
正確なタイミングの必要性
自動車業界では、ソフトウェアが厳しいタイミング要件に従って正しく動作することが重要なんだ。レスポンスタイムに遅れが出ると、大きな安全リスクにつながるから、エンジニアはシンプルにタイミングをモデル化できる方法が必要なんだ。SimSchedは、ユーザーがSimulinkモデル内でタスクのタイミングを定義できるようにして、このニーズに応えてる。
AUTOSARはタイミング要件を正式に定めていて、SimSchedはこれらの基準に合わせてる。これによって、エンジニアはさまざまな抽象レベルでタイミングのニーズを定義できるようになるんだ。これを通じて、彼らは自分たちの設計が実際の条件下で特定のタイミング要件を満たすかどうかを確認できるんだ。
SimSchedの動作
SimSchedは、既存のSimulinkワークフローに統合できるように設計されてるから、すでにその環境に慣れてるエンジニアにとって導入しやすいんだ。SimSchedを使うと、エンジニアはタスクの完了にかかる時間や実行順序など、さまざまなパラメータを指定できるんだ。
シミュレーション中、SimSchedはこれらのパラメータに基づいてスケジュールを維持するんだ。スケジューラーは、どのタスクがいつ実行されるかを把握して、テスト中に正確なタイミングを可能にするんだ。
他のツールに対する利点
SimSchedはいくつかの既存のツールと比較されて、使いやすいことがわかってるんだ。入力が簡単で、追加のコーディングの必要が少ないなど、かなりの利点があるんだ。他のツールはもっと複雑で、プログラミングの広範な知識や内部の仕組みを詳細に理解してることが必要な場合があるんだ。
SimSchedの未来
SimSchedの開発は始まりに過ぎなくて、将来的には、厳密なスケジュールに従わないタスクのような、もっと複雑な状況に対応できる能力を拡張する可能性があるんだ。これには、さまざまなスケジューリングアルゴリズムへのサポートを追加することで、異なる状況でのタスクの相互作用をより現実的にモデル化できるようにするかもしれない。
さまざまなイベントや条件をシミュレーションできることで、エンジニアは自分たちの設計をよりコントロールできる。長い目で見れば、これが自動車ソフトウェアの安全性や性能をさらに向上させるのに役立つかもしれない。
結論
SimSchedは、自動車ソフトウェアのシミュレーションにおいて大きな進展をもたらすんだ。エンジニアが設計においてタイミングを考慮できるようにすることで、自動車業界では安全性と性能を妥協できないから、これが重要なんだ。シミュレーションが現実の動作をより正確に捉えるよう改善することで、SimSchedは車が道を走る前に予期しない問題が発生するリスクを減少させることを目指してる。
進行中の改善と柔軟性を通じて、SimSchedは自動車ソフトウェア開発プロセスの標準ツールになる可能性を秘めてて、エンジニアがより安全で信頼性のある車両を作る手助けをするんだ。
タイトル: SimSched: A tool for Simulating Autosar Implementaion in Simulink
概要: AUTOSAR (AUTomotive Open System ARchitecture) is an open industry standard for the automotive sector. It defines the three-layered automotive software architecture. One of these layers is the application layer, where functional behaviors are encapsulated in Software Components (SW-Cs). Inside SW-Cs, a set of runnable entities represents the internal behavior and is realized as a set of tasks. To address AUTOSAR's lack of support for modeling behaviors of runnables, languages such as Simulink are employed. Simulink simulations assume Simulink block behaviors are completed in zero execution time, while real execution requires a finite execution time. This timing mismatch can result in failures to detect unexpected runtime behaviors during the simulation phase. This paper extends the Simulink environment to model the timing properties of tasks. We present a Simulink block that can schedule tasks with non-zero simulation times. It enables a more realistic analysis during model development.
著者: Jian Chen, Manar H. Alalfi, Thomas R. Dean, Ramesh S
最終更新: 2023-08-28 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2308.14974
ソースPDF: https://arxiv.org/pdf/2308.14974
ライセンス: https://creativecommons.org/licenses/by-nc-sa/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。