JP2007510992A - 制御システムをシミュレーションおよび検証するためのシミュレーションシステムおよびコンピュータにより実施される方法 - Google Patents

制御システムをシミュレーションおよび検証するためのシミュレーションシステムおよびコンピュータにより実施される方法 Download PDF

Info

Publication number
JP2007510992A
JP2007510992A JP2006538785A JP2006538785A JP2007510992A JP 2007510992 A JP2007510992 A JP 2007510992A JP 2006538785 A JP2006538785 A JP 2006538785A JP 2006538785 A JP2006538785 A JP 2006538785A JP 2007510992 A JP2007510992 A JP 2007510992A
Authority
JP
Japan
Prior art keywords
simulation
target
host
control system
simulation system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006538785A
Other languages
English (en)
Inventor
ストレーレ カルステン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of JP2007510992A publication Critical patent/JP2007510992A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/15Vehicle, aircraft or watercraft design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2117/00Details relating to the type or aim of the circuit design
    • G06F2117/08HW-SW co-design, e.g. HW-SW partitioning

Abstract

開発中の制御システムをコンピュータによりシミュレーションおよび検証するためのシミュレーションシステムであって,シミュレーションシステムがホスト−ターゲットアーキテクチャを備え,制御システムの少なくとも一部を表すターゲットのオペレーティングシステムが,ターゲットのオペレーティングシステムに専用のアプリケーションプログラミングインターフェースを介して,ホストにより再設定されるシミュレーションシステム。
【選択図】図10

Description

本発明は,開発中の制御システムをコンピュータによりシミュレーションおよび検証するためのシミュレーションシステム,ならびに開発中の制御システムをシミュレーションおよび検証するためのコンピュータにより実施される方法に関する。より詳細には,本発明は,車両,航空機,船舶等,およびそれらの一部のような動的システムに用いられる制御システムのいわゆる高速プロトタイピングに関する。さらに,本発明は,コンピュータ読取り可態な媒体と,コンピュータ読取り可態な媒体に記録され,コンピュータ上で実行される場合にかかるプロセスを実施するに適したプログラムコーディング手段を伴うコンピュータプログラムとを備えたコンピュータプログラム製品に関する。
制御システムの高速プロトタイピングは,開発中の制御システムの正確な機能およびリアルタイム挙動に関する初期検証のために,自動車業界,航空機業界等で一般に用いられている。このように,車両またはその一部のような動的システムに用いられる制御方法およびアルゴリズムは,制御ループの最終的な実装の有無にかかわらず,実世界(real world)の条件下でテストされる。
高速プロトタイピングシステムは,通常,一般に次の主要コンポーネントからなるハードウェア/ソフトウェア融合システムとして特徴付けられる。
・開発中の制御システムのモデルの一部を基本的に個々に実行し,対応するメモリモジュールを有する,1または複数のシミュレーションプロセッサからなるシミュレーションターゲット
・プラント(制御されている外界)より与えられている信号からなる入力インターフェース
・プラントに与える信号からなる出力インターフェース
・ホスト(多くの場合,パーソナルコンピュータ)からシミュレーションターゲットにモジュールをダウンロードし,シミュレーション実験(開始および停止指令等)を制御し,モジュール信号およびパラメータをそれぞれに測定およびキャリブレーションするための通信インターフェース。
図1は,従来技術から既知の従来のシミュレーションシステム10をモデル水準で示す。技術的に既知のシミュレーションシステム10は,開発中の制御システムのモデルの一部12a,12b,12c(または,いわゆるサブモデル)が実行される,対応するメモリモジュールを有する,1または複数のシミュレーションプロセッサを備える。シミュレーションシステム10は,さらに,いわゆる外界と信号を交換するための入力インターフェース13aおよび出力インターフェース13bを備える。最終的に,シミュレーションシステム10は,ホストからシミュレーションターゲットにモジュールをダウンロードし,シミュレーション実験を制御し,モジュール信号およびパラメータをそれぞれに測定およびキャリブレーションするための通信インターフェースを備える。図1は,モデル水準であり,技術水準ではない。刺激(stimuli)信号と称される14は,物理的な入力信号が利用できない場合に用いられる。これ以外に,通信インターフェースについては,図3で後述される。本発明の通信インターフェースは,必要に応じて図1の構造に付加されうる。
入力および出力インターフェースの信号は,アナログ(例えば,温度または圧力センサ)またはデジタル(例えば,CANのような通信プロトコル)でありうる。シミュレーション実験内では,高速プロトタイピングシステムは,コントローラ(電子制御ユニット)の最終的な状態と同様に,制御ループの不可欠な部分として用いられる。
高速プロトタイピング実験の準備は,一般に次のステップからなる。
1 例えば,挙動モデリングツール(MATLAB(登録商標)/Simulink(登録商標)またはASCET-SDのような)の利用または手動による,制御システムの数学モデルの生成
2 何らかの高水準プログラム言語(例えば,C)のプログラムコードへのモデルの手動変換(手動コーディング)または自動変換(コード生成)
3 実行ファイルへのプログラムコードのコンパイルおよびリンク
4 ホストからホスト−ターゲット通信インターフェースを介してシミュレーションターゲットへの実行ファイルのダウンロード
5 通信インターフェースを介したホストからの実験のセットアップおよび実施
しばしば,1または複数のソース(例えば,挙動モデリングツール,手書きCコード)からの複数のモデル部分(以下,モジュールと称す)は,制御システムのモデルの全体をなすために,互いに統合される。モジュール12a,12b,12c間,およびモジュールと入力または出力インターフェース13a,13bとの間(以下でモジュールとして考慮されるのと同様に)の通信は,図1に円で示される入力および出力ポートを接続する信号を介して行われる。
従来,この通信は,互いに接続されているポートのために全く同一のメモリ域(同一の高水準言語変数)を共有し,あるモジュールが所定のメモリ域に信号の現在値を書込み,他のモジュールがそこから読取ることにより実現される。
これを実現するために,実行コードへのモデルの変換は,例えば,モジュールAの出力ポートaがモジュールBの入力ポートbに接続されることを意味する,実際の相互接続スキームに応じた方法で行われる必要がある。この例では,ポートaおよびbの両方は,モジュール間通信を可能にするために,シミュレーションターゲット上の全く同一のメモリ域上に静的にマッピングされる必要がある。
かかる従来の静的相互接続アプローチにより,信号は,ポートを分離不可能な方法で互いに接続する。信号間で1または複数の接続が確立,修正または切断される場合は常に,モデルからコードへの変換,コンパイルおよびリンク,実行ファイルのダウンロード,実験のセットアップおよび実施の全体のプロセスが行われる必要がある。実世界モデルの用途で,このプロセスは,非常に時間を要し,数10分またはそれ以上の時間を要する場合がある。特に,不注意になされた誤った接続を訂正するとき,現在のターンアラウンドタイムは非常に長い。さらに,実験がダウンロ−ドされて開始された直後では,接続は,もはや変更,追加,または削除されえない。
先述のように,制御システムの高速プロトタイピングは,開発中の制御システムの正確な機能およびリアルタイム挙動に関する初期検証のために,自動車業界,航空機業界等で一般に用いられている。このように,車両またはその一部のような動的システムに用いられる制御方法およびアルゴリズムは,制御ループの最終的な実装の有無にかかわらず,実世界の条件下でテストされる。
高速プロトタイピングに続いて,制御システムの最終ソフトウェアが開発されている。結果は,ターゲットとされている電子制御ユニット用として実行可能な高品質ソフトウェアとなる。特に,この段階は,所定の要求に従って挙動を調整するために,ソフトウェアのコーディング,実世界の条件下でのテストおよび観察,およびそのパラメータのキャリブレーションを含む。後の2つのステップは,計測およびキャリブレーション(M&C)技術に基づく。
M&C技術は,以下の場合にホスト−ターゲットアーキテクチャとともに用いられうる。
・ホストは,一般にM&Cツールを実行するパーソナルコンピュータである。
・ターゲットは,主にコントローラを作動させる,例えば,高速プロトタイピング用の実験ハードウェア専用,またはソフトウェア開発用の電子制御ユニット(ECU)のような埋込み式コンピュータ等である。
・ホストおよびターゲットは,専用のM&C通信インターフェースを介して互いに接続される。
ホストおよびターゲットからなる複数のインスタンス(instance)は,分散型のM&Cシステムに含まれてもよい。
M&Cツールは,通常,以下のようなタスクを行う。
・制御システムのソフトウェア内の変数値の測定,スコープ,ダイアル,ゲージ,または数字表示のようなグラフィック装置の形式でのそれら変数値の表示,それら変数値のディスクへの書込み
・スライダー,ボタン,ノブ,カーブおよび3次元マップ,または数字表示のようなグラフィック入力機器の形式での表示による,スカラ,アレイ,または補間マップ(interpolated map)等のパラメータ値のキャリブレーション,ならびにユーザによりなされた現在値の変更の制御システムのソフトウェアへの伝送
M&Cツールは,特に自動車業界では,真のまたは事実上の業界標準のいずれかである,多数の標準M&Cインターフェースに依存する。高速プロトタイピング用またはソフトウェア開発用の両方の自動車用ハードウェア,特にAステップおよびBステップECU(A-step and B-step ECUs)では,これらインターフェースの利用可能性が前提とされる。これに関連して,高速プロトタイピング用として用いられる実験環境は,限定されたまたは部分的に異なる機能性にもかかわらず,M&Cツールと同じにみなされる。
M&Cインターフェースは,ホストおよびターゲット上で,ソフトウェアおよびハードウェアの両方にサポートされる必要がある。両者は,何らかの通信プロトコルを作動する何らかの物理的な相互接続を介して互いに接続される。ホスト上のM&Cツールは,一般にこれを目的とするソフトウェアドライバを用いる一方,ターゲットハードウェアは,専用のプロトコルハンドラを実行する。M&Cプロトコルの例は,CCP,XCP,KWP2000,またはINCA,ASAP1b/L11,およびDistabプロトコルである。物理的な相互接続は,例えば,CAN,ETK,Ethernet(登録商標),FlexRay,USB,K-Line,WLAN(IEEE802.11),またはBluetoothである。
埋込み制御システムの開発の用途で,しばしば,ASCET,MATLAB(登録商標)/Simulink(登録商標),StatemateMAGNUM(登録商標),およびUMLまたはSDLツールのような挙動モデリングツールが用いられる。これらのツールは,一般に,制御システムの構造および挙動を記述するために,ブロック図,状態機械,シーケンス図,フロー図等を用いた,何らかのグラフィカルユーザーインターフェースを備える。このように,制御システムの数学モデルが生成されうる。
ひとたびモデルが利用可能になれば,何らかの高水準プログラム言語(例えば,C)のプログラムコードへのモデルの自動変換(コード生成),および最終的に実行可能プログラムへの自動変換は,高速プロトタイピング用または高品質ECUソフトウェア用として行われうる。
制御システムのソフトウェアまたはモデル自体をテストおよびデバッグする便利な方法として,多くのモデリングツールは,シミュレーション中または実行中のモデルの挙動を,以下のように視覚化すること等により,アニメーション化する方法を備える。
・信号線上に現在の信号値を表示する
・グラフィック装置に現在の信号値を表示する
・アクティブ状態および以前にアクティブ状態であったマシンの状態をモデリング環境内で直接的に強調表示する
このように,別個の実験環境は必要とされない。さらに,いくつかのツールは,モデリングツールの通常のユーザインターフェースを用いることで,モデリング環境を介してパラメータ値を直接的にキャリブレーションする可能性を備える。
今日では,このモデルアニメーションおよびモデル内キャリブレーションの従来的なアプローチは,例えば,モデリングツールおよび実験の両方を同時に実行するコンピュータ(オフラインシミュレーション)上,または専用の高速プロトタイピングハードウェア(オンラインシミュレーション)とともに,実験ハードウェア上でのみ利用可能である。さらに,例えば,外部モードプロトコルであるMATLAB(登録商標)/Simulink(登録商標)またはASCETのL1プロトコル等の独自仕様の通信プロトコルが用いられる。
上述されるこの従来的なアプローチは,図6に示される。
高速プロトタイピングシステムは,通常,以下の主要コンポーネントからなるハードウェア/ソフトウェア融合システムをなすものとして特徴付けられる。
・開発中の制御システムのモデルまたはプログラムコードの一部を基本的に個別に実行し,対応するメモリモジュールを有する,1または複数のシミュレーションプロセッサからなるシミュレーションターゲット
・プラント(制御されている外界)より与えられている信号からなる入力インターフェース
・プラントに与える信号からなる出力インターフェース
・ホスト(多くの場合,パーソナルコンピュータ)からシミュレーションターゲットに制御プログラムをダウンロードし,シミュレーション実験(開始および停止指令等)を制御し,モジュール信号およびパラメータをそれぞれに測定およびキャリブレーションするための通信インターフェース。
入力および出力インターフェースの信号は,アナログ(例えば,温度または圧力センサ)またはデジタル(例えば,CANのような通信プロトコル)でありうる。シミュレーション実験内では,高速プロトタイピングシステムは,コントローラ(電子制御ユニット)の最終的な状態と同様に,制御ループの不可決な部分として用いられる。
シミュレーションターゲット上の制御システムのコードは,通常,オペレーティングシステムOS(Operating System),特にリアルタイムOS(RT−OS),上で作動し,アプリケーションのリアルタイム挙動を規定および制御する。このため,他のプラットホームソフトウェアと連携して,RT−OSは,一般にスケジューリング,リソース管理,I/O管理,または通信およびネットワーク管理のようなタスクを行う。自動車業界では,主にERCOSEKのようなOSEK/VDX準拠のOSが用いられる。
かかるシステムは,図8に示される。例として,マイクロコントローラハードウェア83と,フラッシュローダ84a,診断84b,通信およびネットワーク管理84c,スケジューラ84dおよびハードウェア抽象化層84eを伴うRT−OS84を含むプラットフォームソフトウェアとが記述されている。RT−OS84とマイクロコントローラハードウェア83との間のインターフェース85が示される。インターフェース86により,モジュール87a,87bおよび87cを含むアプリケーションソフトウェアは,RT−OS84と接続される。
アプリケーションは,通常,個別にプライオリティ,スケジューリングモード,実行期間およびオフセット,割込みソース,完了期限等を関連付けて有する,多数のタスク(OSEK/VDXのように),スレッド,またはプロセスに分割される。これらのデータにより,RT−OSのスケジューラは,要求されるリアルタイム挙動を準備するために,タスクを発送,実施,および制御する。
埋込み制御用の多くのOS,特にOSEK/VDX準拠のシステムは,静的に設定されている。これは,OSの設定が何らかのOS設定ユーティリティにより生成されているCコードを用いて行われることを意味する。このOS設定は,何らかの所定のOS仕様(例えば,OSEK/VDXの場合のOIL10記述)を,例えば,スケジューラ,割込みマスクおよび割込みハンドラ,プライオリティスキームおよびタスクFIFO11キュー,タイマまたはスタックにより呼出される機能ポインタを含む,タスクコンテナおよびタスクテーブル等,OSの内部データ構造および機能性を表すCコードに変換する。
動的に設定可能なOSと異なり,静的に設定可能なOSは,一般に,演算処理速度およびメモリ消費の観点からより高いランタイム性能のために,全ての設定がコンパイル時の静的メモリ配置および初期化によりなされることを必要とする。一方,静的OS設定の修正は,動的に設定可能なOSとは対照的に,ランタイム時に行われえない。それにもかかわらず,動的に設定可能なOSは,ランタイム時に再設定されるよりはむしろ,システム起動時にアプリケーション自体によって通常1度だけ設定される。この通常の場合,OS設定は,OS仕様から手動コーディングまたはコード生成のいずれかによってなされる。
高速プロトタイピング実験の準備は,一般に以下のステップからなる。
1 何らかの高水準プログラム言語(例えば,C)の制御システムのプログラムコードへの手動実装(手動コーディング)または自動コード生成(何らかの数学モデルから)
2 手動,または何らかのテキストもしくはグラフィックユーティリティのサポートによるOS仕様の生成
3 コード生成を用いたリアルタイムOSの設定
4 RT−OSおよび設定を伴うプログラムコードの実行ファイルへのコンパイルおよびリンク
5 ホストからホスト−ターゲット通信インターフェースを介してシミュレーションターゲットへの実行ファイルのダウンロード
6 通信インターフェースを介したホストからの実験のセットアップおよび実施
上述のように,この従来的なOS設定アプローチでは,1度実行ファイルが生成されると,リアルタイム挙動は,もはや変更できない。プログラムコードおよびRT−OSは,分離不可能な方法で互いに関連付けられる。制御システムの1または2以上のリアルタイム特性が修正される場合,常に,OS仕様の全プロセス,コード生成を介した設定,コンパイルおよびリンク,実行ファイルのダウンロード,実験のセットアップおよび実施が行われる必要がある。実世界制御システムの用途で,このプロセスは,非常に時間を要し,数10分またはそれ以上の時間を要する場合がある。特に,不注意になされた誤った接続を訂正するとき,現在のターンアラウンドタイムは非常に長い。さらに,実験がダウンロ−ドされて開始された直後では,接続は,もはや変更,追加,または削除されえない。
現在までの従来的なアプローチは,ETAS GmbH(ASCET-SD製品群),The Mathworks,Inc.(MATLAB(登録商標)/Simulink(登録商標),Real-TimeWorkshop(登録商標),xPC Target)およびおそらく他のような,高速プロトタイピングシステムにより用いられることが知られている。
従来技術として既知のかかる静的相互接続は,図2aに視覚化される。図2aは,静的メモリ域81に記録される変数を共有している,第1モジュール12dおよび第2モジュール12eを示す。
よって,発明の目的は,実行中のシミュレーションが容易に訂正,阻止または修正されうるように,これまでの静的接続より柔軟性の高い相互接続を提供することにある。本発明のさらなる目的は,車両の制御システムの高速プロトタイピングを提供するために,シミュレーションシステムの単体コンポーネント間の通信,およびシミュレーションモデルの単体モジュール間の通信を改良することにある。
これらの目的は,個々の独立請求項の特徴を有する,制御システムをシミュレーションおよび検証するためのシミュレーションシステムおよびコンピュータにより実施される方法を提案することにより実現される。
発明の利点
上述された従来技術に基づくアプローチとは対照的に,本発明の動的相互接続アプローチは,相互接続スキームに固有のモデル−コード変換に依存しない。代わりに,この変換は,使用されている実際のモジュール相互接続から完全に独立する。むしろ,モジュール間通信は,共有されるメモリ域ではなく別個のメモリ域を用いて,必要に応じてあるメモリ域から他のメモリ域に信号値をコピーまたは複製(replicating)することによる,系統だった方法により行われる。
有利に,開発中の制御システムをコンピュータによりシミュレーションおよび検証するためのシミュレーションシステム,すなわち,少なくとも制御システムの一部を表すターゲットのOSがターゲットのOSに専用のAPI(Application Programming Interface)を介してホストにより再設定される,ホスト−ターゲットアーキテクチャからなるシミュレーションシステムが提示される。開発中の制御システムをシミュレーションおよび検証するために,かかるシミュレーションシステムを用いてコンピュータにより実施される方法と,コンピュータ上で実行される場合にかかる方法を実施するに適したプログラムコーディング手段を伴うコンピュータプログラムと,RAM,DVD,CD-ROM,ROM,EPROM,EEPROM,Flash等のようなコンピュータ読取り可態な媒体およびコンピュータ読取り可態な媒体に記録された各コンピュータプログラムを伴うコンピュータプログラム製品も,また本発明の一部である。
このシミュレーションシステムでは,OSは,リアルタイムOSであり,ターゲットのソフトウェアのリアルタイム挙動が定義または変更されるように,ターゲット上に実行可能ソフトウェアをダウンロードした後に再設定される。
有利に,OSのAPIが用いられ,または,OSのAPIの代わりに第2の再設定可能なAPIが用いられる。
かかるシミュレーションシステムでは,ホストは,少なくとも1つのモデリングツールを含み,制御システムのターゲットソフトウェア上で実行され,ターゲットサーバは,ターゲットとの通信に用いられる通信プロトコルのプロトコルドライバを含み,モデリングツールをターゲットに接続するために用いられる。
請求項4に係るシミュレーションシステムでは,少なくともいくつかのモジュールが別個のメモリ域を介する通信のために動的に再設定可能である。
他の実施形態では,シミュレーションシステムは,対応するメモリおよびインターフェースモジュールを伴う複数のシミュレーションプロセスを備えて示される。かかるシミュレーションシステムでは,モジュールがモジュール間通信用の別個のメモリ域を備え,シミュレーションが制御システムのシミュレーションモデルを実行することにより行われ,シミュレーションモデルが複数モジュールのうちの1モジュール上でそれぞれに実行されている多数のサブモジュールを備え,少なくともいくつかのモジュールが別個のメモリ域を介する通信のために動的に再設定可能である。
また,発明の一部は,開発中の制御システムをコンピュータによりシミュレーションおよび検証するためのシミュレーションシステムのホストであり,ホスト−ターゲットアーキテクチャを備え,少なくとも制御システムの一部を表すターゲットのOSがターゲットのOSに専用のAPIを介してホストにより再設定される,シミュレーションシステムである。
相互接続スキームは,単にシミュレーション実行ファイルに反映させるものではなく,シミュレーションターゲット上にそれぞれ渡される必要がある。これは,実行ファイルがダウンロードされた後,実験セットアップ中に,ホスト−ターゲット通信インターフェースを介して実際のモジュール相互接続が動的にセットアップされることにより実現される。
信号値の交換は,個別の相互接続スキームに基づいて行われる。暗示的な命名仕様(naming conventions),または静的メモリ共有アプローチに伴うような同様なものは,必要とされない。むしろ,所定の信号の現在値は,出力ポートに関連付けられるメモリ域から明示的に読取り,個別の入力ポートに対応するメモリ域に複製することにより,出力ポートから接続されたいかなる入力ポートにも分配される。
このアプローチの主な利点(説明中で詳細に示される)は,以下のようになる。
・コード生成,コンパイルおよびリンク,および実行ファイルのダウンロードを介するOS設定の時間を要するプロセスが繰返されないため,OS仕様の変更後のターンアラウンドタイムが著しく低減される。これは,高速プロトタイピングの実際のアプリケーションを強力にサポートする。
・タスク,プロセス,アプリケーションモード,アラーム,イベント,またはメッセージのようなOSオブジェクトは,かなりの遅れを伴うことなく,実行中の実験中でさえ,確立,修正,または削除されうる。これは,以下のような新たな利用ケースを完全に可能にする(プロセッサ負荷,タスクのジッタ,グロスおよびネットのランタイム,期限違反等を測定する,または,例えばガントチャートの形式等でグラフィックトレース情報を表示する,何らかのOSモニタリングユーティリティにより最適にサポートされる)。
・実験を中断することなく,オンザフライで誤った設定を訂正する。
・制御システム全体の一部を徐々に実行することにより実験を徐々にセットアップし,一方で最終的なリアルタイム挙動を継続的に確立する。
・制御システムの要求に応じて,タスク期間,オフセット,および期限を繰返し調整する。
・タスクを待機フェーズにシフトすることによりプロセッサ負荷を平準化する。
・“トライアル&エラー”再設定により,安定かつ機能的に的確な挙動のための許容値の範囲を特定する。
・集中的なアプリケーションの演算処理に際して,現時点で重要でない機能性を“オフ”することにより,負荷を平衡化する。
・オンザフライでタスクを生成および起動することにより,制御システムの一部を自発的にトリガする。
・対応するタスクまたはプロセスをマスクまたは抑制することにより,制御システムの一部を停止する。
・プロセスを内部実装からクランク軸同期信号のような実世界入力割込みに,または反対に切替える。
・対応する制御システムの一部を択一的に実行可能および実行不能にすることにより,並列に実行されている同一モジュールの多数の実装バリエーションを比較する。
・モデル−コード変換,コンパイルおよびリンク,および実行ファイルのダウンロードの時間を要するプロセスが繰返されないため,相互接続スキームの変更後のターンアラウンドタイムは著しく低減される。これは,高速プロトタイピングの実際のアプリケーションを強力にサポートする。
・ポートを接続する信号は,かなりの遅れを伴うことなく,実行中の実験中でさえ,確立,修正,または削除されうる。これは,以下のような利用の新たな可能性を完全に可能にする。
・実験を中断することなく,オンザフライで誤った設定を訂正する。
・制御システム全体の一部を徐々に実行することにより実験を徐々にセットアップし,一方で最終的な相互接続スキームを継続的に確立する。
・入力ポートとの接続を確立することにより,自発的にモデルを活性化(stimulate)させる
・入力ポートを所定の活性化モジュールから実世界入力信号に切替える。
・それらの出力をプラントに択一的に切替えることにより,並列に実行されている同一モジュールの多数の実装バリエーションを比較する。
・高速プロトタイピングシステムへの入力または出力を,物理的なケーブル接続での引抜きおよび差込みに代わって実質的なツールレベルで交換する。
よって,本発明によれば,シミュレーションモデルは,シミュレーションシステムの同一または異なるノード(プロセッサ)上で実行される多数のサブモデルからなり,開発中の制御システムをシミュレーションおよび検証するために実行される。モジュールが互いに動的に接続され,シミュレーションモデルおよびシミュレーションシステムの個別モジュール間の通信が個別および分離されたメモリ域を介して行われる。
本発明の望ましい一実施形態では,データおよび/または信号がクロスバースイッチによって整合性を保ちつつ複製される。望ましくは,この複製がリアルタイム条件下で行われる。
本発明の他の実施形態では,モジュールが相互接続ノードを介して自動的に相互接続し,データを複製する。
リアルタイム状況または条件下でのデータの整合性を保った複製は,通信変数を介してなされうる。上述のクロスバースイッチは,整合性を保てる状態に達した後に,出力信号の値を通信変数に整合性を保ちつつコピーする手段を備える。さらに,クロスバースイッチは,個別のモジュールが演算処理を継続する前に,これらの値を接続された入力信号に整合性を保ちつつ渡す手段を備える。
シミュレーションシステムの個別のリアルタイムアーキテクチャ,および/またはリアルタイムOSのセットアップに応じて,整合性を保ったコピーの機構は,アトミックコピープロセス,ブロッキングインタラプト,または同様な方法により実現されうる。個別のリアルタイム環境設定により定められている特定の状況下では,信号変数または通信変数が利用されず,より高いパフォーマンスを得るために切離して最適化される場合がある。
本発明の代替手段の実施形態によれば,モジュール相互接続の動的再設定のために,上述の集中型アプローチの代わりに分散型アプローチが用いられうる。この代替手段の実施形態では,ポートは,個別の相手方に自らを接続し,信号値の複製を担いうる。
本発明は,また,コンピュータ上で実行される場合,上述のような本発明によるプロセスを実施するに適したプログラムコーディング手段を伴うコンピュータプログラムを含む。コンピュータプログラム自体,およびコンピュータ読取り可態な媒体上に記録されたコンピュータプログラムが請求される。
さらに,本発明の特徴および実施形態は,添付図面および実施形態の説明によって明らかにされる。
上述および後述の特徴は,本発明の範囲内において,指定される組合せのみならず他の組合せまたはそれら自体でも用いられうるものと理解される。
本発明は,一例として一実施形態を用いて概略的に図面に示され,以下で図面を参照して詳細に説明される。説明は,本発明の範囲を限定するものではなく,単に本発明の望ましい一実施形態を示すものであると理解される。
実施形態
図2aを参照して上述された従来技術から既知の静的接続とは対照的に,本発明によれば,別個のメモリ域を介する動的相互接続アプローチが提供される。本発明に基づく動的相互接続の原理は,図2bに視覚化されるように,第1モジュール2dのデータ81aが動的複製20により第2モジュール2eの別個のメモリ域にデータ81a’としてコピーまたは複製される。
動的再設定アプローチを構成する複数のアーキテクチャが考えられうる。図3を参照すれば,本発明に基づくシミュレーションシステム30の第1の例は,いわゆる集中型アプローチとして以下に説明される。
集中型アプローチのシミュレーションシステム30の主要コンポーネントは,相互接続スキーム11を伴ういわゆるクロスバースイッチ10である。シミュレーションシステム30は,さらに複数のモジュール2a,2b,2c,入力インターフェース3a,出力インターフェース3b,刺激生成モジュール4およびリアルタイムOS7を備える。
図3で両矢印により視覚化されるように,シミュレーションシステム30の全コンポーネントは,クロスバースイッチ,すなわち,シミュレーションターゲット上のモジュールの出力および入力ポートの互いの接続を定義する相互接続スキーム11を介して,互いに相互接続される。相互接続スキームは,ブロック図中の接続の全体に対応し,各ブロックがシミュレーションターゲット30上で統合されているモジュールの1つに対応する。
相互接続スキーム11は,両方の次元がモジュールのポートを意味し,マトリクス値が個別ポートの互いの接続(さらに可能であれば,信号フローの方向)を定義する,二次元交換マトリクスとして考えられうる。
シミュレーションホスト5は,ホスト−ターゲット通信インターフェース6を介してクロスバースイッチ10と接続され,高速プロトタイピングシステムに対するヒューマン・マシン・インターフェースを構成する。
ホスト5は,望ましくは何らかのグラフィックユーザインターフェースによりサポートされて,相互接続スキームの設定および再設定を可能にする。
ホスト−ターゲット通信インターフェース6は,シミュレーションホスト5をシミュレーションターゲット30に接続する。一般に,これは,有線または無線の接続(シリアルインターフェース,Ethernet(登録商標),Bluetooth等)に基づいており,規格化されたまたは独自仕様の通信プロトコル(例えば,ASAP1b,L1)である。これは,少なくとも以下の機能性を備える。
・ホスト5からシミュレーションターゲット30へのシミュレーション実行ファイルのダウンロード
・相互接続スキーム11を定義する設定データのダウンロード
さらに,これは,以下の用途の機能性を備えうる。
・例えば,シミュレーションを開始および停止するために,実験を制御する
・モデル信号,相互接続信号,および入力または出力信号の値を測定する
・モデルパラメータをキャリブレーションする等
クロスバースイッチ10は,シミュレーションターゲット上で作動し,以下に接続される。
・ホスト−ターゲット通信インターフェース6を介してシミュレーションホスト5
・開発中の制御システムのモデル部分またはサブモデルを表すモジュール2a,2b,2c
・制御システムのプラントとの入力および出力インターフェースを表すモジュール3a,3b
・モデルに対する刺激生成器として機能するモジュール4
・望ましくは,シミュレーション実験を構成するリアルタイムOS7
シミュレーション実験を開始する前,初期の相互接続スキーム11は,ホスト5からホスト−ターゲット通信インターフェース6を介してクロスバースイッチ10にダウンロードされる。
実験の実施中,クロスバースイッチ10は,出力ポートから入力ポートに信号値をコピーすることによってモジュールおよびコンポーネント間で実際の通信を行う。この複製プロセスが行われる方法は,相互接続スキーム11によって定義される。
相互接続スキーム11は,割込み後または実行中のシミュレーションでさえ再設定されうる。よって,モジュール相互接続は,かなりの遅れを伴うことなく,オンザフライで変更されうる。
図4を参照すれば,本発明に基づく信号および/またはデータの伝達の望ましい代替手段が示されている。動的複製40により,第1モジュール2fの信号および/またはデータ値82a,82eは,通信変数82b,82fとしてそれぞれに個別のメモリ域にバッファリングされうる。さらなる動的複製40により,第2および第3モジュール2g,2hは,個別の信号および/またはデータ値82c,82gおよび82d,82hをそれぞれに受取る。
よって,リアルタイム環境内でのデータの整合性が確保される。各モジュール2f,2g,2hは,例えば,異なる速度でまたは割込みトリガに応じて演算処理でき,データ複製40は,現在の信号値をバッファリングする通信変数82b,82fを用いて行われる。よって,全体として有効状態を構成する複数の出力信号の値は,これらの出力信号が入力されているモジュールが自らを有効状態に依存できるように,整合性を保った方法によってコピーされることを保証される。
すでに上述したように,クロスバースイッチ10は,以下の手段を備える。
・整合性を保てる状態に至った後に,出力信号の値を通信変数に整合性を保ちつつコピーする
・個別のモジュールが演算処理を継続する前に,これらの値を接続された入力信号に整合性を保ちつつ渡す
上述の整合性を保ったコピー機構は,リアルタイムアーキテクチャおよびOSの構成に応じて,アトミックコピープロセス,ブロッキング割込み等により実現されうる。
個別のリアルタイム環境設定により定められている特定の状況下では,信号変数または通信変数が利用されず,より高いパフォーマンスを得るために切離して最適化される場合がある。
上述の動的再設定アプローチは,信号調整設備によって拡張されうる。これを実現するため,各信号値は,元の値をソースメモリ域から読取った後にターゲットメモリ域に書込む前に,所定方法によるモジュール間通信中に操作されうる。
可能な信号調整オペレーションは,以下のようである。
・実装方式の適応(例えば,スケールまたはオフセット修正,サチュレーション)
・基本数理オペレーション(例えば,信号の和,差,積,参照テーブルまたは補間特性によるマッピング,定数)
適用されているオペレーションの種類および個別のパラメータは,相互接続スキームの一部をなしているものとして考慮される。これらの各々は,モジュール相互接続として,動的方法で設定および再設定されうる。この拡張は,動的再設定アプローチの実用性を著しく拡大する。
図5を参照すれば,ターゲット上で個別のクロスバースイッチコンポーネントを用いる集中型アプローチの代わりに用いられうる,モジュール相互接続の動的再設定のための分散型アプローチが説明される。ポートは,中央コンポーネントのコピー信号値を有するよりむしろ,個別の相手方に自らを接続し,信号値の複製を担いうる。
例えば,これは,モジュール2jおよび2kの入力ポート92a,92bおよび93b自体を,所定の出力ポートをそれぞれに表す,接続されているモジュール2iの出力ポートサーバ91a,91bに登録させることによって実現されうる。通信は,プルアプローチ(入力ポートクエリー信号値)またはプッシュアプローチ(出力ポートにより実施される信号値のマルチキャスト)のいずれかに従って行われうる。よって,値複製用の情報は,中央クロスバースイッチコンポーネントに集中される代わりに,システムのコンポーネントに分配される。
(高速プロトタイピングおよびソフトウェア開発のための包括的なモデルアニメーションおよびモデル内キャリブレーションインターフェース;図7)
高速プロトタイピングおよびソフトウェア開発のための包括的なモデルアニメーションおよびモデル内キャリブレーションインターフェースは,ホスト−ターゲットアーキテクチャを伴った測定およびキャリブレーション技術,および個別のシミュレーションシステムおよび方法を用いる。
(基本概念)
従来技術で説明されたアプローチと対照的に,本発明の包括的なモデルアニメーションおよびモデル内キャリブレーションアプローチは,専用のシミュレーションまたは高速プロトタイピングハードウェアまたは独自仕様の通信プロトコルのいずれにも依存しない。代わりに,標準M&C技術が用いられる。
先述のように,このアプローチの主な利点は,以下のようである。
・アプローチが標準化された解法に基づくため,関連するハードウェアおよびソフトウェアにおいてM&C技術の形式で必要とされるインターフェースの利用可能性が前提とされうる。
・ターゲットハードウェアおよび物理的な相互接続の各組合せにソフトウェアをポーティングする必要がない(さもなければかなりの労力となる)。
・オフラインおよびオンラインの実験中,およびECU作動中のモデルアニメーションおよびモデル内キャリブレーションのために,同一のモデリングツールインターフェースが用いられうる。
・付加的な独自仕様のプロトコルハンドラが必要とされないため,ターゲットハードウェア上にはメモリもランタイムオーバヘッドも存在しない。
・付加的な独自仕様のプロトコルが作動しないため,物理的な相互接続上に帯域幅オーバヘッドが存在しない。
・通信用にバックグラウンドタスクまたは同様なものが必要とされないため,ターゲットハードウェア上でのモデルのランタイム挙動が左右されない。
・よって,特にECU(一般にメモリおよびランタイムリソースが非常に少なく,本質的に多数のハードウェアおよびインターフェースバリエーション上でM&C技術をサポートする)が理想的にサポートされる。
・ログ&リプレイのオフラインデバッギング機能性がサポートされる。
・包括的なモデルアニメーションの用途で,制御システムのソフトウェア,またはそのモデルのアニメーション化,またはその挙動の視覚化のために,これらの標準インターフェースが用いられる。
・モデル内キャリブレーションの用途で,制御システムのソフトウェアのパラメータをそのモデル内からキャリブレーションするために,これらの標準インターフェースが用いられる。
・ログ&リプレイの用途で,測定データをホスト上にログし,後でアニメーション化および視覚化用のモデリングツール上で透過的にリプレイするために,これらの標準インターフェースが用いられる。
・標準インターフェースの利用は,関連するハードウェアシステムの大半(ターゲット,ホスト,および両者間の相互接続の組合せ)で可能であり,よって,ソフトウェア適応またはポーティングのための付加的な労力を要しない。
・ホストまたは高速プロトタイピングターゲット上のシミュレーション,およびECU動作の用途で,同一の標準インターフェースが用いられうる。
・利用可能な標準インターフェースを用いるため,メモリ,ランタイム,および帯域幅オーバヘッドが免れる。
オフラインデバッギングは,例えば,オンライン実験中,まず,測定データがホストのメモリまたはハードディスク上にログされることを意味する。その後,データは,以前に接続された高速プロトタイピングハードウェアまたは作動中のECUを模倣して,オフラインモードでモデリングツールに対してリプレイされる。これは,モデリングツールに対して完全に透過的に行われうる。さらに,このアプローチによって可能となる共通のデバッグ機能は,モデリングツールによるサポートが想定される,シングルステップ実行およびモデルブレイクポイントである。
図7では,モデリングツール70aおよび70b,および選択的にM&Cツール71が示される。これらのモデリングツール70aおよび70b,選択的にM&Cツール71と,ターゲット80との間には,モデルアニメーションインターフェース72が配される。プロトコルドライバ74(例えば,CCP 74a,XCP 74b,KWP2000 74c,INCA 74d,ASAP 74e,Distab 74f等)を伴うターゲットサーバ73または同様なものが,物理的な相互接続75に接続される。ターゲット80内の標準M&Cインターフェース76は,この物理的な相互接続75をモデル77aおよび77bに接続する。ターゲットまたはターゲットプロセッサ上では,開発中の制御システムの少なくとも一部として,アプリケーションソフトウェアが実行される。このアーキテクチャは,本発明のシミュレーションシステムの一例である。包括的なモデルアニメーションおよびモデル内キャリブレーションアプローチを構成する複数のアーキテクチャが考えられうる。一例として,ターゲットサーバに基づくこのアプローチが以下で説明される。この主要コンポーネントは,ホストコンピュータ上で作動し,ホストおよびターゲットハードウェア上のモデリングツール間でブリッジを形成するターゲットサーバである。
1つの物理的な相互接続に接続される単体のターゲットの代わりに,分散型システムを構成し,多様な通信チャネルを介して接続される複数の異なるハードウェアターゲットが考えられる。さらに,各モデリングツールは,ターゲット上の複数のモデルのアニメーションおよびキャリブレーションのために同時に用いられうる。
(機能)
(ターゲットサーバ)
ターゲットサーバは,包括的なモデルアニメーションおよびモデル内キャリブレーションアプローチの中央コンポーネントである。この役割は,ターゲットハードウェアおよび通信抽象化の役割である。ターゲットサーバの主要タスクは,モデリングツールをターゲットハードウェアのM&Cインターフェースに透過的な方法で接続することである。
このように,モデリングツールは,ターゲットとして用いられる個別のハードウェア,またはホスト−ターゲットインターフェースとして用いられている,通信プロトコルもしくは物理的な相互接続を認識する必要がない。この目的のために,ターゲットサーバは,モデルアニメーション関連の通信からM&C固有のプロトコルへの転換を行うために,サポートされる各通信プロトコルのための専用プロトコルドライバまたは同様なものを含みうる。
ターゲットサーバの他のタスクは,後でオフラインデバッギングリプレイに用いるために,測定データをホストのメモリまたはハードディスク上にログすることである。
(モデリングツール)
モデリングツールは,そのモデルアニメーションインターフェースを介してターゲットサーバにアクセスする。このように,モデルのアニメーション化に要するデータは,ターゲットからモデリングツールに渡される。さらに,キャリブレーションデータは,反対方向,モデリングツールからターゲットハードウェアに渡される。
基本的なモデルアニメーションおよびモデル内キャリブレーションは,ターゲットアクセスのために,独自仕様の通信プロトコルの代わりにターゲットサーバを用いると直ぐに,モデリングツール内で利用可能となる。シングルステップデバッギングおよびモデルブレークポイントのような高度なログ&リプレイ機能の用途で,モデリングツールは,付加的な機能性を備えることが前提とされる。
(M&Cツール)
M&Cツールは,全く同一のM&Cインターフェースおよび通信チャネルを用いてモデリングツールと並列して作動しうる。しかし,これは,包括的なモデルアニメーションおよびモデル内キャリブレーションのための前提条件ではないが,従来的なM&Cアプローチを実行するために描かれる。
複合(モデリングまたはM&C)ツールが同時に1つかつ同一セットのパラメータのキャリブレーションを試みる場合,安全およびデータの整合性のために排他制御(arbitrage)スキームが用いられる必要がある。この排他制御スキームは,以下の技術の1つまたは2つ以上を用いうる。例えば,
・例えば,読取り専用パラメータを用いて,所定のパラメータセット(マスタ/スレーブ法則)のキャリブレーション用のツール以外の全てをロックする。
・所定セットのパラメータのキャリブレーション後,他の全てのツールに通知する。
・所定のパラメータセットの定期的な測定を介して操作される全てのツールによってパラメータをリフレッシュする(ポーリング)。
(アプリケーションソフトウェア)
ターゲット上で作動するアプリケーションソフトウェアは,主にモデルのコード,リアルタイムOS,またはモデルコードを実施するスケジューラ,モデル入力および出力を可能にするハードウェアおよび通信ドライバ等からなる。
シミュレーションされているモデルから生成されるコードは,モデル固有の挙動に基づいて演算処理を行う。コード内のデータ構造は,従来的な測定およびキャリブレーション,またはモデルアニメーションおよびモデル内キャリブレーションをそれぞれに行うために,標準M&Cインターフェースによってアクセス(読取りおよび書込み)される。
(標準M&Cインターフェース)
ターゲット上の標準M&Cインターフェースは,アプリケーションソフトウェアとターゲットサーバとの間のリンクを構成する。これは,測定およびキャリブレーションのためにモデルデータにアクセスし,物理的な相互接続を介してホストに接続される。
・測定の用途で,M&Cインターフェースは,データをアプリケーションソフトウェアから読取り,M&Cプロトコルを介してターゲットサーバに渡す。ここで,ターゲットサーバがデータをモデリングツールおよびM&Cツール(適用可能であれば)に送る。
・キャリブレーションの用途で,モデリングツールまたはM&Cツールは,ターゲットサーバおよびM&Cプロトコルを介してM&Cインターフェースに新たなパラメータ値を送信する。ここで,M&Cインターフェースがターゲット上のアプリケーションソフトウェア内で新たなパラメータ値を更新する。
標準M&Cインターフェースとしては,物理的な相互接続としての,例えば,CAN,Ethernet(登録商標),FlexRay,USB,またはK-Lineに基づいて,例えば,CCP,XCP,KWP2000,INCA,またはASAP1bプロトコルが用いられうる。
(代替手段)
(分散型アプローチ)
中央ターゲットサーバコンポーネントを用いる代わりに,各モデリングおよびM&Cツールは,ホスト側のM&Cインターフェース適応を自らに内蔵しうる。このように,ターゲットハードウェアからの抽象化が未だ維持されうる一方で,通信チャネルからの抽象化が関連するツールに転送される。
この理由から,ターゲットアクセスの透過性が低下し,サポートされているM&Cインターフェースの数が少なくなりうる。さらに,ログ&リプレイオフラインデバッギングのサポートがより高価なものとなる。一方で,さもなければ,全てのモデリングおよびM&Cツールがターゲットサーバコンポーネントの1つかつ同一のインターフェースに従うことを必要とするものではない。
(M&Cツールインターフェースアプローチ)
モデリングツールをターゲットサーバに直接的にアクセスさせる代わりに,M&Cツールが中継として用いられうる。このため,モデルアニメーションインターフェースは,ターゲットサーバに内蔵されず,例えば,高速プロトタイピング用の実験環境等のM&Cツールに内蔵される。そして,モデリングツールがこのインターフェースに接続する。
このアプローチは,以下の理由から,キャリブレーションの排他制御のためのサポートをより容易に提供しうる。
・一般に,同一セットのパラメータのキャリブレーションでは,M&Cツールおよび単体モデリングツールのみが競合する。
・M&Cツールは,キャリブレーション指令をモデリングツールから受取り,自らの目的(表示値のリフレッシュ,データ記録等)のために解釈し,実際のキャリブレーションプロセスのためにターゲットサーバに渡す。
(高速プロトタイピングシステム上でのリアルタイムOSの動的最設定;図9,図10)
(基本概念)
上述のアプローチと対照的に,本発明の動的再設定アプローチは,コード生成または手動コーディングによるOS設定に依存しない。代わりに,設定および統合プロセスは,用いられている実際のOS仕様から完全に独立している。むしろ,図9に示すように,RT−OSとアプリケーションとの関連付けは,ダウンロードおよびアプリケーションとのアセンブルの後,ランタイム直前またはランタイム時におけるOSの設定によりなされる。このアプローチが静的および動的に設定可能なRT−OSにアドレス指定する点に留意する。
OS仕様は,単にシミュレーション実行ファイルにより反映されるものではなく,別途にシミュレーションターゲット上に渡される必要がある。これは,実行ファイルがダウンロードされた後,実際のOS,特にRT−OSの設定が実験セットアップ中にホスト−ターゲット通信インターフェースを介して動的および外部的にセットアップされることにより実現される。構成するOSの性能に応じて,動的OS再設定は,実験のランタイム中でさえ行われうる。図9aおよび図9bでは,これが,タスクTbg,T1,T2およびT3で,それらのプログラムP1,P2,P3,P4,P5およびP6を伴って時間t(0〜100時間単位)上に示される。図9aおよび図9bでプログラムおよびそれらの配置および割込み挙動を対比すれば,この例の再設定プロセスが明らかになる。
動的に設定可能なOSの用途で,これは,既存のOSAPIを介してなされる。おそらく,修正は必要とされない。静的に設定可能なOSは,一般に,少なくともOS初期化またはOS始動の間,およびそのシャットダウン後にアクセス可能である,OS再設定APIとともに拡張される必要がある。これは,おそらく,OS内部データ構造の配置および初期化を静的なものから動的なものに変更することを意味する。
以下では,簡略化のためにERCOSEKOSが典型的な方法(ただし,本発明の他のRT−OSへの適用可能性を制限することを意味しない)で用いられている。
ERCOSEKは,スケジューラエンティティとしてプロセス(無効/C無効機能)を含むタスク,およびコオペラティブおよびプリエンプティブなスケジューリングを同時にサポートする。
特に,以下のOSオブジェクト形式でのリアルタイム特性は,動的再設定の対象になることが前提とされる(ただし,以下は,限定列挙するものではない)。
・タスクの種類(定期,ISR,ソフトウェアによって,またはアプリケーションモード初期化に応じて実施されるタスク)
・タスクプライオリティおよびスケジューリングモード(コオペラティブ,プリエンプティブ,またはノンプリエンプティブ)
・タスク期間およびオフセット
・タスク期限および最大起動数
・タスク内容:タスク内のプロセスおよびプロセス順序
・OSのアプリケーションモード
・リソース,アラーム,およびカウンタ
・I/O設定(ドライバ,ハードウェア抽象化層,等)およびネットワーク管理
・通信用のイベントおよびメッセージ
・それらの関連付け
このアプローチの主な利点は:
・コード生成,コンパイルおよびリンク,および実行ファイルのダウンロードを介するOS設定の時間を要するプロセスが繰返されないため,OS仕様の変更後のターンアラウンドタイムが著しく低減される。これは,高速プロトタイピングの実際のアプリケーションを強力にサポートする。
・タスク,プロセス,アプリケーションモード,アラーム,イベント,またはメッセージのようなOSオブジェクトは,かなりの遅れを伴うことなく,実行中の実験中でさえ,確立,修正,または削除されうる。これは,以下のような新たな利用ケースを完全に可能にする(プロセッサ負荷,タスクのジッタ,グロスおよびネットのランタイム,期限違反等を測定する,または,例えばガントチャートの形式等でグラフィックトレース情報を表示する何らかのOSモニタリングユーティリティにより最適にサポートされる):
・実験を中断することなく,オンザフライで誤った設定を訂正する。
・制御システム全体の一部を徐々に実行することにより実験を徐々にセットアップし,一方で最終的なリアルタイム挙動を継続的に確立する。
・制御システムの要求に応じて,タスク期間,オフセット,および期限を繰返し調整する。
・タスクを待機フェーズにシフトすることによりプロセッサ負荷を平準化する。
・“トライアル&エラー”再設定により,安定かつ機能的に的確な挙動のための許容値の範囲を特定する。
・集中的なアプリケーションの演算処理に際して,現時点で重要でない機能性を“オフ”することにより,負荷を平衡化する。
・オンザフライでタスクを生成および起動することにより,制御システムの一部を自発的にトリガする。
・対応するタスクまたはプロセスをマスクまたは抑制することにより,制御システムの一部を停止する。
・プロセスを内部実装からクランク軸同期信号のような実世界入力割込みに,または反対に切替える。
・対応する制御システムの一部を択一的に実行可能および実行不能にすることにより,並列に作動する同一モジュールの多数の実装バリエーションを比較する。
(アーキテクチャ)
動的再設定アプローチを構成する複数のアーキテクチャが考えられうる。一例として,静的に設定可能なOSEK/VDX準拠のリアルタイムOSに基づくアプローチが以下に説明される。この主要コンポーネントは,再設定APIにより補完され,シミュレーションターゲット上で作動するRT−OSである。
かかるシステムが図10に示される。図10では,マイクロコントローラハードウェア93と,例えば,フラッシュローダ94a,診断94b,通信およびネットワーク管理94c,スケジューラ94dおよびハードウェア抽象化層94eを含むプラットホームソフトウェアを伴うRT−OS94とが一例として示される。RT−OS94とマイクロコントローラハードウェア93との間には,インターフェース95が示される。モジュール97a,97bおよび97cを含むアプリケーションソフトウェア99は,インターフェース96によりRT−OS94に接続される。通信インターフェース100を介して,例えば図7のように,ホスト101は,API102を用いてターゲット,特にRT−OSに接続される。これは,RT−OSのAPIまたは代わりの再設定APIとなりうる。
(機能)
(リアルタイムOS)
リアルタイムOSは,シミュレーションターゲットのリソースを管理し,アプリケーションのリアルタイムスケジューリングを行う。この設定は,制御システムの実行ファイルをシミュレーションターゲットにダウンロードした後に変更されうる。よって,内部OSデータ構造は,ランタイム時に拡張または修正するために,動的に配置され初期化されると想定される。データ構造の実際の実装は,個別のRT−OSに大きく依存する。
RT−OSは,以下に接続される。
・ハードウェアサービスおよびリソースを用いてシミュレーションターゲットのハードウェア
・複数モジュールからなる制御システムのプログラムコードを構成するアプリケーションソフトウェア,および
・再設定API
(シミュレーションホスト)
シミュレーションホストは,高速プロトタイピングシステムに対するヒューマン・マシン・インターフェースを構成する。これは,ホスト−ターゲット通信インターフェースを介してシミュレーションターゲットに接続される。
ホストは,おそらくは,何らかのグラフィックユーザインターフェースによりサポートされて,リアルタイムOSの設定および再設定を可能にする。
(ホスト−ターゲット通信インターフェース)
ホスト−ターゲット通信インターフェースは,シミュレーションホストをシミュレーションターゲットに接続する。一般に,これは,有線または無線の接続(シリアルインターフェース,Ethernet(登録商標),Bluetooth等)に基づいており,規格化されたまたは独自仕様の通信プロトコル(例えば,ASAP1b12,L113)である。これは,少なくとも以下の機能性を備える。
・ホストからシミュレーションターゲットへのシミュレーション実行ファイルのダウンロード
・リアルタイムOSの挙動を定義する設定データのダウンロード
さらに,これは,以下の用途の機能性を備えうる。
・例えば,シミュレーションを開始および停止するために,実験を制御する
・RT−OSの挙動および内部状態をモニタリングおよびトレースする
・信号を測定し,制御システムのパラメータをキャリブレーションする,等
(OS再設定API)
OS再設定APIは,シミュレーションターゲット上で作動し,シミュレーション実行ファイル外部からのアクセスを可能にする再設定機能性によってRT−OSを拡張する。再設定APIは,RT−OSをホスト−ターゲット通信インターフェースを介してシミュレーションホストに接続する。
・シミュレーション実験を開始する前,初期のOS設定は,ホストからホスト−ターゲット通信インターフェースおよび再設定APIを介してRT−OSにダウンロードされる。
・実験の実行中,RT−OSは,通常のようにスケジューリングおよびリソース管理を行う。これがなされる方法は,OS設定によって定義される。
・RT−OSは,割込み後または実行中のシミュレーション中でさえ再設定されうる。このように,OS設定は,かなりの遅れを伴うことなく,オンザフライで変更されうる。
本発明の利点および最も重要な特徴は,
1 リアルタイムOSの動的再設定は,その実行ファイルを生成しターゲット上にダウンロードした後に,制御システムのソフトウェアのリアルタイム挙動を定義および変更することを可能にする。
2 リアルタイム挙動は,制御システムのソフトウェアのランタイム直前またはランタイム時でさえ再設定されうる。
3 動的再設定は,ターゲットの外部から行われ,ホスト−ターゲット間の何らかの相互接続を介してなされる。
4 OS設定時の柔軟性が大幅に増加する。
5 OS仕様の変更後のターンアラウンドタイムが顕著に低減される。
(代替手段)
(動的に設定可能なOSの再設定)
動的に設定可能なRT−OSの用途で,その機能性が既存のRT−OSAPIの一部であると想定されるために,おそらくは再設定APIが不要となる。この場合,元のRT−OSAPIは,シミュレーションホストがRT−OSAPIにアクセス可能なように,単にホスト−ターゲット通信インターフェースに接続されるために必要とされる。
従来技術および本発明のシミュレーションシステムのモデル水準での概略ブロック図を示す。 従来技術の静的相互接続の概略図を示す。 本発明に基づく動的相互接続の望ましい実施形態を示す。 図2bの動的相互接続を用いた本発明に基づくシミュレーションシステムの望ましい実施形態を示す。 本発明に基づく通信変数を介したリアルタイム状況下での整合性を保った複製の一例を示す。 本発明に基づく相互接続スキームの代替手段の実施形態を示す。 モデルアニメーションおよびモデル内キャリブレーションのアーキテクチャを示す。 ターゲットサーバを伴う本発明のモデルアニメーションおよびモデル内キャリブレーションアプローチの一例を示す。 アプリケーションおよびプラットホームソフトウェアを伴うリアルタイムOSの相互作用を記す。 RT−OS再設定の前のタスクスケジューリングガントチャートを記す。 RT−OS再設定の後のタスクスケジューリングガントチャートを記す。 RT−OS再設定用のアーキテクチャを示す。
注釈
1 INCA,L1,およびDistabは,ETASGmbH(Robert Bosch GmbHの関連子会社)独自仕様の通信プロトコルである。
2 ASAP1b通信プロトコルは,ASAM協会により標準化されている。
3 ETKは,ETAS独自仕様の物理的な相互接続である。
4 ASCETは,ETAS
GmbHの製品群である。
5 MATLAB(登録商標),Simulink(登録商標),およびReal-TimeWorkshop(登録商標)は,The Mathworks,Incの登録商標である。
6 StatemateMAGUNUMTMは,I-Logix,Incの登録商標である。
7 OS:OperatingSystem
8 OSEK/VDX:リアルタイムOS用の車両規格
9 ERCOSEKは,ETASGmbH(Robert Bosch GmbHの関連子会社)の製品である。
10 OIL:OSEK/VDX実行言語
11 FIFO:firstin, first out
12 ASAP1b通信プロトコルは,ASAM協会により標準化されている。
13 L1通信プロトコルは,ETASGmbHの独自仕様である。

Claims (15)

  1. 開発中の制御システムをコンピュータによりシミュレーションおよび検証するためのシミュレーションシステムであって,
    前記シミュレーションシステムがホスト−ターゲットアーキテクチャを備え,
    前記制御システムの少なくとも一部を表す前記ターゲットのオペレーティングシステムが,前記ターゲットの前記オペレーティングシステムに専用のアプリケーションプログラミングインターフェースを介して,前記ホストにより再設定されることを特徴とする,シミュレーションシステム。
  2. 前記オペレーティングシステムがリアルタイムオペレーティングシステムであることを特徴とする,請求項1に記載のシミュレーションシステム。
  3. 前記オペレーティングシステムは,前記ターゲットのソフトウェアの前記リアルタイム挙動が定義または変更されるように,前記ターゲット上に実行可能ソフトウェアをダウンロードした後に再設定されることを特徴とする,請求項2に記載のシミュレーションシステム。
  4. 前記オペレーティングシステムの前記アプリケーションプログラミングインターフェースが用いられることを特徴とする,請求項1に記載のシミュレーションシステム。
  5. 前記オペレーティングシステムのアプリケーションプログラミングインターフェースの代わりに,第2の再設定可能なアプリケーションプログラミングインターフェースが用いられることを特徴とする,請求項1に記載のシミュレーションシステム。
  6. 前記ホストは,少なくとも1つのモデリングツールを含み,前記制御システムの前記ターゲットソフトウェア上で実行されることを特徴とする,請求項1に記載のシミュレーションシステム。
  7. 前記モデリングツールを前記ターゲットに接続するターゲットサーバを備えることを特徴とする,請求項6に記載のシミュレーションシステム。
  8. 前記ターゲットサーバは,前記ターゲットとの通信に用いられる通信プロトコルのプロトコルドライバを含むことを特徴とする,請求項7に記載のシミュレーションシステム。
  9. 対応するメモリおよびインターフェースモジュールを伴う複数のシミュレーションプロセスを備え,モジュールがモジュール間通信のために個別のメモリ域を備えることを特徴とする,請求項1に記載のシミュレーションシステム。
  10. 制御システムのシミュレーションモデルを実行することによりシミュレーションが行われ,前記シミュレーションモデルは,前記複数モジュールのうちの1つでそれぞれに実行されている多数のサブモデルを備えることを特徴とする,請求項9に記載のシミュレーションシステム。
  11. 少なくとも1または2以上の前記モジュールが個別のメモリ域を介した通信のために動的に再設定可能であることを特徴とする,請求項9に記載のシミュレーションシステム。
  12. 開発中の制御システムをコンピュータによりシミュレーションおよび検証するためのシミュレーションシステムのホストであって,
    前記シミュレーションシステムがホスト−ターゲットアーキテクチャを備え,
    前記制御システムの少なくとも一部を表す前記ターゲットのオペレーティングシステムが,前記ターゲットの前記オペレーティングシステムに専用のアプリケーションプログラミングインターフェースを介して,前記ホストにより再設定されることを特徴とする,シミュレーションシステムのホスト。
  13. 請求項1に記載のシミュレーションシステムを用いて,開発中の制御システムをシミュレーションおよび検証するためにコンピュータにより実施される方法。
  14. コンピュータ上で実行される場合に,請求項13に記載の方法を実施するに適したプログラムコーディング手段を伴うコンピュータプログラム。
  15. コンピュータ読取り可能な媒体と,前記コンピュータ読取り可能な媒体に記録された請求項13に記載のコンピュータプログラムとを伴うコンピュータプログラム製品。
JP2006538785A 2003-11-10 2004-11-10 制御システムをシミュレーションおよび検証するためのシミュレーションシステムおよびコンピュータにより実施される方法 Pending JP2007510992A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03025833A EP1530137A1 (en) 2003-11-10 2003-11-10 Simulation system and computer-implemented method for simulation and verifying a control system
PCT/EP2004/012736 WO2005045710A2 (en) 2003-11-10 2004-11-10 Simulation system and computer-implemented method for simulation and verifying a control system

Publications (1)

Publication Number Publication Date
JP2007510992A true JP2007510992A (ja) 2007-04-26

Family

ID=34429322

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006538785A Pending JP2007510992A (ja) 2003-11-10 2004-11-10 制御システムをシミュレーションおよび検証するためのシミュレーションシステムおよびコンピュータにより実施される方法

Country Status (6)

Country Link
US (1) US20080077382A1 (ja)
EP (2) EP1530137A1 (ja)
JP (1) JP2007510992A (ja)
KR (1) KR20060120079A (ja)
CN (1) CN100573535C (ja)
WO (1) WO2005045710A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7182744B1 (ja) * 2021-07-29 2022-12-02 アペックス.エーアイ,インコーポレイテッド ソフトウェア実体間のイベントの決定的再現

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4577090B2 (ja) * 2005-05-25 2010-11-10 日産自動車株式会社 車載電装品試験システム及び試験方法
DE102005048585A1 (de) * 2005-10-06 2007-04-12 Robert Bosch Gmbh Teilnehmer und Kommunikationscontroller eines Kommunikationssystems und Verfahren zur Realisierung einer Gateway-Funktionalität in einem Teilnehmer eines Kommunikationssystems
US20070294337A1 (en) * 2006-03-31 2007-12-20 Maria Gaos Client-side information processing system, apparatus and methods
DE102006032217A1 (de) * 2006-07-12 2008-01-24 Robert Bosch Gmbh Verfahren zum Betreiben eines LIN-Busses
US8102552B2 (en) 2008-04-03 2012-01-24 Sharp Laboratories Of America, Inc. Performance monitoring and control of a multifunction printer
US8392924B2 (en) 2008-04-03 2013-03-05 Sharp Laboratories Of America, Inc. Custom scheduling and control of a multifunction printer
EP2172857A1 (en) * 2008-09-26 2010-04-07 Robert Bosch Gmbh Rapid prototyping system using multi core host computer system
US9304831B2 (en) * 2008-09-29 2016-04-05 Microsoft Technology Licensing, Llc Scheduling execution contexts with critical regions
CN101464922B (zh) * 2009-01-22 2010-08-18 中国人民解放军国防科学技术大学 基于集群系统的计算机体系结构方案并行模拟优选方法
JP2011118837A (ja) * 2009-12-07 2011-06-16 Sony Corp 情報処理装置、情報処理方法およびプログラム
KR101295673B1 (ko) * 2009-12-23 2013-08-20 인크론 지엠비에이치 임베디드 시스템을 시뮬레이션하는 방법 및 데이터 처리시스템
KR101647817B1 (ko) 2010-03-31 2016-08-24 삼성전자주식회사 재구성 가능한 프로세서의 시뮬레이션 장치 및 방법
US9760073B2 (en) * 2010-05-21 2017-09-12 Honeywell International Inc. Technique and tool for efficient testing of controllers in development
WO2012044262A1 (en) * 2010-09-30 2012-04-05 The Thailand Research Fund Embedded system design, programming, and simulation architecture
CN102761473B (zh) * 2011-04-29 2015-01-14 无锡江南计算技术研究所 部件模型间通信的模拟及路由方法、并行事务级模拟系统
CN102200913B (zh) * 2011-06-20 2014-05-07 奇瑞汽车股份有限公司 一种基于模型的自动变速箱软件开发平台的分层设计方法
US9170572B2 (en) * 2011-07-06 2015-10-27 Honeywell International Inc. Dynamic model generation for implementing hybrid linear/non-linear controller
KR101894752B1 (ko) 2011-10-27 2018-09-05 삼성전자주식회사 가상 아키텍쳐 생성 장치, 런타임 시스템, 멀티 코어 시스템 및 그 동작 방법
US9727044B2 (en) * 2012-06-15 2017-08-08 Dspace Digital Signal Processing And Control Engineering Gmbh Method and configuration environment for supporting the configuration of an interface between simulation hardware and an external device
DE102012217328A1 (de) * 2012-09-25 2014-03-27 Robert Bosch Gmbh Verfahren zum Simulieren eines Steuergeräts
CN103853146B (zh) * 2012-12-03 2017-06-27 联创汽车电子有限公司 发动机电子控制单元的软件负荷测试系统及方法
US9172604B1 (en) 2013-02-25 2015-10-27 Google Inc. Target mapping and implementation of abstract device model
US9166912B2 (en) 2013-02-25 2015-10-20 Google Inc. Translating network forwarding plane models into target implementation using sub models and hints
US8929362B1 (en) * 2013-02-25 2015-01-06 Google Inc. Capability negotiation for abstract candidate device model
BR112016023105A2 (pt) * 2014-04-04 2018-05-22 Jonathon Joseph Mccormack Mark escalonamento de processos e métodos
US10268625B2 (en) * 2016-01-15 2019-04-23 Dspace Digital Signal Processing And Control Engineering Gmbh Signal path verification device
US10082593B2 (en) * 2016-03-01 2018-09-25 Gowell International, Llc Method and apparatus for synthetic magnetic sensor aperture using eddy current time transient measurement for downhole applications
US11853690B1 (en) * 2016-05-31 2023-12-26 The Mathworks, Inc. Systems and methods for highlighting graphical models
CN107483305B (zh) * 2016-08-29 2021-01-12 宝沃汽车(中国)有限公司 整车控制器、车辆及整车控制器的控制方法
US10592212B2 (en) 2016-10-21 2020-03-17 Samsung Electronics Co., Ltd. System and method for software development based on procedures
EP3571557A1 (en) * 2017-02-20 2019-11-27 Siemens Aktiengesellschaft Programming in simulation for process industry
CN107644563A (zh) * 2017-04-28 2018-01-30 天津职业技术师范大学 基于图形化编程的汽车电子综合训练平台
CN107766679B (zh) * 2017-11-15 2021-03-02 厦门理工学院 一种基于接口数字化表达的客车底架模块的再设计方法
EP3540539A1 (de) * 2018-03-15 2019-09-18 Siemens Aktiengesellschaft Verfahren zur rechnergestützten simulation des betriebs einer automatisiert arbeitenden maschine
CN109492301B (zh) * 2018-11-08 2020-05-22 北京世冠金洋科技发展有限公司 软硬件切换方法和系统
CN112183735A (zh) * 2019-07-03 2021-01-05 安徽寒武纪信息科技有限公司 操作数据的生成方法、装置及相关产品
CN110457120B (zh) * 2019-07-22 2021-10-29 浙江大学 基于osek嵌入式实时操作系统的非周期定时器驻留机制
TWI774266B (zh) * 2021-03-12 2022-08-11 葛美迪影像科技股份有限公司 顯示器參數校正程式之驗證方法及具有驗證參數校正程式之顯示系統

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535534A (ja) * 1991-07-31 1993-02-12 Mitsubishi Electric Corp シミユレーシヨンシステム
JPH07160530A (ja) * 1993-12-03 1995-06-23 Nec Corp デバッグ方式
JPH10326203A (ja) * 1996-06-19 1998-12-08 Matsushita Electric Ind Co Ltd 複数のハードウェア環境上においてプログラムを別々に動作させつつも、ハードウェア環境間で動作状態を継承し合うことができるデバッグ装置
JPH11203168A (ja) * 1998-01-13 1999-07-30 Mitsubishi Electric Corp ハードウェア併用制御仕様検証装置
JP2000020291A (ja) * 1998-07-06 2000-01-21 Toyota Motor Corp 車両用プログラム開発支援方法および装置
JP2000066907A (ja) * 1998-08-21 2000-03-03 Matsushita Electric Ind Co Ltd ワーストケース試験機能付きリアルタイムos
JP2001051871A (ja) * 1999-08-09 2001-02-23 Ricoh Co Ltd リモートデバッグ装置
JP2001147830A (ja) * 1999-11-19 2001-05-29 Nec Microcomputer Technology Ltd リアルタイムosの状態変更方法
JP2002140208A (ja) * 2000-10-31 2002-05-17 Toshiba Corp 性能シミュレーション装置および性能シミュレーション方法および性能シミュレーションプログラムを記録した記録媒体
JP2002259162A (ja) * 2001-03-02 2002-09-13 Canon Inc 機器制御ソフトウェア開発支援システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW421761B (en) * 1994-04-12 2001-02-11 Yokogawa Electric Corp Verification support system
US6594752B1 (en) * 1995-04-17 2003-07-15 Ricoh Company, Ltd. Meta-address architecture for parallel, dynamically reconfigurable computing
WO2001044942A1 (en) * 1999-12-15 2001-06-21 Sun Microsystems, Inc. Open debugging environment

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0535534A (ja) * 1991-07-31 1993-02-12 Mitsubishi Electric Corp シミユレーシヨンシステム
JPH07160530A (ja) * 1993-12-03 1995-06-23 Nec Corp デバッグ方式
JPH10326203A (ja) * 1996-06-19 1998-12-08 Matsushita Electric Ind Co Ltd 複数のハードウェア環境上においてプログラムを別々に動作させつつも、ハードウェア環境間で動作状態を継承し合うことができるデバッグ装置
JPH11203168A (ja) * 1998-01-13 1999-07-30 Mitsubishi Electric Corp ハードウェア併用制御仕様検証装置
JP2000020291A (ja) * 1998-07-06 2000-01-21 Toyota Motor Corp 車両用プログラム開発支援方法および装置
JP2000066907A (ja) * 1998-08-21 2000-03-03 Matsushita Electric Ind Co Ltd ワーストケース試験機能付きリアルタイムos
JP2001051871A (ja) * 1999-08-09 2001-02-23 Ricoh Co Ltd リモートデバッグ装置
JP2001147830A (ja) * 1999-11-19 2001-05-29 Nec Microcomputer Technology Ltd リアルタイムosの状態変更方法
JP2002140208A (ja) * 2000-10-31 2002-05-17 Toshiba Corp 性能シミュレーション装置および性能シミュレーション方法および性能シミュレーションプログラムを記録した記録媒体
JP2002259162A (ja) * 2001-03-02 2002-09-13 Canon Inc 機器制御ソフトウェア開発支援システム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
松尾治幸: "共有メモリ型マルチプロセッサの分散シミュレータShamanの実装と評価", 並列処理シンポジウム JSPP2002, vol. 第2002巻、第8号, JPN6009039978, 29 May 2002 (2002-05-29), JP, pages 111 - 118, ISSN: 0001388637 *
横山太一郎: "自走ロボットを利用したリアルタイムシステムの学習支援環境の開発", 情報処理学会研究報告, vol. 第2001巻、第21号, JPN6010022785, 6 March 2001 (2001-03-06), JP, pages 59 - 65, ISSN: 0001604831 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7182744B1 (ja) * 2021-07-29 2022-12-02 アペックス.エーアイ,インコーポレイテッド ソフトウェア実体間のイベントの決定的再現

Also Published As

Publication number Publication date
CN1879110A (zh) 2006-12-13
EP1685508A2 (en) 2006-08-02
US20080077382A1 (en) 2008-03-27
KR20060120079A (ko) 2006-11-24
WO2005045710A2 (en) 2005-05-19
EP1530137A1 (en) 2005-05-11
WO2005045710A3 (en) 2005-11-03
CN100573535C (zh) 2009-12-23

Similar Documents

Publication Publication Date Title
JP2007510992A (ja) 制御システムをシミュレーションおよび検証するためのシミュレーションシステムおよびコンピュータにより実施される方法
US11314907B2 (en) Simulation including multiple simulators
US9201764B2 (en) Method and device for creating and testing a control unit program
US8473269B1 (en) System-level hardware and software development and co-simulation system
US20170185708A1 (en) Controlling real time during embedded system development
WO2002061576A2 (en) System, method and article of manufacture for interface constructs in a programming language capable of programming hardware architectures
JP5882052B2 (ja) 協調シミュレーション用計算機システム、組込みシステムの検証方法及びプログラム
Haberl et al. Model-level debugging of embedded real-time systems
US20070255546A1 (en) Simulation System and Computer-Implemented Method for Simulation and Verifying a Control System
Lampke et al. Resource-aware control-model-based co-engineering of control algorithms and real-time systems
Chaves et al. KhronoSim: A platform for complex systems simulation and testing
US10318687B2 (en) Implementing a constant in FPGA code
US20080162069A1 (en) Method And Device For the Dynamic Treatment of Objects
US20060265205A1 (en) Simulation system and computer-implemented method for simulation and verifying a control system
Zeller et al. Co-simulation of self-adaptive automotive embedded systems
Stroop et al. Prototyping of automotive control systems in a time-triggered environment using flexray
Mitts et al. Using a co-simulation framework to enable software-in-the-loop powertrain system development
Haberl Code generation and system integration of distributed automotive applications
Seyyedi Globally Accurate Locally Inaccurate (GALI): On the Combination of Time-Triggered Architectures with Instruction Accurate Simulators for the Analysis of System Behavior
Ishikawa et al. Cpu model-based mechatronics/hardware/software co-design technology for real-time embedded control systems
Pletzer et al. Impact of Platform Abstractions on the Development Workflow
AN-IND Using MATLAB with CANoe
CN114816653A (zh) 电子控制单元定时仿真
Eilers et al. Mixed virtual/real prototypes for incremental system design–a proof of concept
Zubac Analysis and Evaluation of Inter-Core Communication Based on a Multi-Core Automotive Software and Hardware

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090811

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20091111

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20091118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100427

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100727

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100803

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100827

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100906

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101207