JP5251586B2 - 検証支援プログラム、検証支援装置および検証支援方法 - Google Patents
検証支援プログラム、検証支援装置および検証支援方法 Download PDFInfo
- Publication number
- JP5251586B2 JP5251586B2 JP2009036363A JP2009036363A JP5251586B2 JP 5251586 B2 JP5251586 B2 JP 5251586B2 JP 2009036363 A JP2009036363 A JP 2009036363A JP 2009036363 A JP2009036363 A JP 2009036363A JP 5251586 B2 JP5251586 B2 JP 5251586B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- execution
- time
- cpu
- model
- 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.)
- Expired - Fee Related
Links
Images
Description
まず、本実施の形態にかかる検証支援処理の概要について説明する。図1は、本実施の形態にかかる検証支援処理の概要を示す説明図である。図1のように、検証支援装置100は、マルチCPUシミュレータ110によって検証対象ソフトウェア101のシミュレーションを実行してシミュレーション結果102を得ることができる。
まず、実施の形態1,2に共通して検証対象ソフトウェア101のシミュレーションをおこなうマルチCPUシミュレータ110の構成について説明する。図2は、本実施の形態にかかるマルチCPUシミュレータの構成を示す説明図である。図2のように、マルチCPUシミュレータ120は、マルチCPUスケジューラ200と、CPUモデル1,2を含んだマルチCPUモデル210とによって構成されている。また、各CPUモデル内には、CPUモデル内の動作タイミングを制御するCPU内スケジューラと、実際のCPU内部のハードウェアに対応したハードウェアモデルと、これらハードウェアに実行させるソフトウェアに対応したソフトウェアモデルとが用意されている。
つぎに、検証支援装置100の具体的なハードウェア構成について説明する。図3は、実施の形態にかかる検証支援装置のハードウェア構成を示すブロック図である。検証支援装置100の構成も実施の形態1,2に共通であり、図3に示したような汎用の情報処理装置に本実施の形態にかかる検証支援処理を実現させる検証支援プログラムを実行させることによって、検証支援装置100としての機能を実現することができる。
つぎに、本実施の形態にかかる検証支援装置100の機能的構成について説明する。図4は、検証支援装置の機能的構成を示すブロック図である。ここでは、検証支援装置100が、図1にて説明したようなマルチCPUスケジューラ200ならびにマルチCPUモデル210として動作を実現するための機能的構成について説明する。なお、マルチCPUモデル210の動作については、従来のマルチCPUモデルの機能を利用しているため、本実施の形態にかかる検証支援処理を実現する際の独自の構成のみ説明する。
図5は、実施の形態1における検証支援装置の動作を示す説明図である。実施の形態1では、検証対象ソフトウェア101の命令によって処理が予定されているタイミングにのみマルチCPUスケジューラ200からマルチCPUモデル210の中の該当するCPUモデル(CPUモデル1,2)への実行指示が送信される。
つぎに、図5,6によって説明した処理の際に扱われるデータについて、さらに詳細に説明する。検証支援装置100によって検証対象ソフトウェア101をシミュレートする際に使用するデータの構成について説明する。図7は、検証支援装置によるシミュレータによって用いるデータの構成を示す説明図である。図7のように、検証支援装置100では、実行パラメータA、返却値B、スケジューラ管理データCを表す3種類のデータ群710〜730が利用される。各データは、それぞれ下記のような構成となっている。
CPUモデルに実行指示を与える際に、CPUモデルに送信するデータ群であり、[実行時刻、受信データの長さ(受信データがない場合には“0”)、受信データ(ある場合のみ)]の3種類のデータによって構成されている。
CPUモデルによって命令が実行された後、マルチCPUスケジューラ200に返却されるデータ群であり、[実行予定時刻(実行予定有りの場合のみ)、実行予定の有無、送信データの長さリスト(送信データがない場合には“0”)、送信データのリスト、送信先CPU番号のリスト]の5種類のデータによって構成されている。
マルチCPUスケジューラ200において、各CPUモデルの実行順序を管理するために用いられるデータ群であり、[CPU番号(処理対象となるCPUの識別子)、実行予定時刻、受信データの長さ(受信データがない場合には“0”)、受信データ]の4種類のデータによって構成されている。
つぎに、上述した各データを用いて検証対象ソフトウェア101のシミュレーションをおこなう際の、マルチCPUスケジューラ200の処理手順について説明する。図8は、実施の形態1におけるマルチCPUスケジューラの処理手順を示すフローチャートである。図8のフローチャートにおいて、まず、各CPUモデルのスケジューラ管理データCを取得し、実行リストに格納する(ステップS801)。
・実行リストの先頭のスケジューラ管理データC
・実行リストの先頭のスケジューラ管理データCとCPU番号ならびに実行予定時刻が一致するスケジューラ管理データ
実行パラメータA
・実行時刻 ←スケジューラ管理データCの実行予定時刻
・受信データの長さ ←スケジューラ管理データCの受信データの長さ
・受信データ ←スケジューラ管理データCの受信データ
スケジューラ管理データC
・CPU番号 ←直前に処理を実行したCPUモデルのCPU番号
・実行予定時刻 ←返却値Bの次回実行予定時刻
・受信データの長さ ←なし
・受信データ ←なし
1.スケジューラ管理データCを作成
CPU番号:返却値Bの送信先CPU番号リストの先頭要素
実行予定時刻:直前に実行した実行時刻+返却値Bの送信データの長さ×遅延係数
受信データの長さ:返却値Bの送信データの長さの先頭要素
受信データ:返却値Bの送信データリストの先頭要素
2.1によって作成されたスケジューラ管理データCを実行リストに格納
3.格納後、返却値Bの送信先CPU番号のリスト、送信データの長さリスト、送信データのリストのそれぞれの先頭要素を取り除く
つぎに、マルチCPUモデル210の処理手順について説明する。図9は、実施の形態1におけるCPUモデルの処理手順を示すフローチャートである。なお、以下説明するマルチCPUモデル210の処理は、マルチCPUスケジューラ200から送信された実行指示の受信をトリガとする。図9のフローチャートにおいて、まず、マルチCPUモデル210内のシミュレータの時刻に実行パラメータAの実行時刻を設定する(ステップS901)。
図10は、実施の形態2における検証支援装置の動作を示す説明図である。実施の形態2は、単位時間ごとの基準時刻に実行させる命令がある場合にのみ、マルチCPUスケジューラ200から実行指示を送信して、マルチCPUモデル210によって対応する処理を実行させる。
つぎに、検証対象ソフトウェア101のシミュレーションをおこなう際の、マルチCPUスケジューラ200の処理手順について説明する。なお、実施の形態2の場合も、実施の形態1と同様に図7にて説明した各データを利用する。また、マルチCPUスケジューラ200の処理自体は、図8を用いて説明した実施の形態1の処理手順と同様である。この処理のうち、実行パラメータを送信する際には、実行時刻と基準時刻との差分情報を待機時間として提供する。マルチCPUモデル210では、この差分情報に基づいて処理を遅延させることができる。
つぎに、つぎに、マルチCPUモデル210の処理手順について説明する。図12は、実施の形態2におけるマルチCPUモデルの処理手順を示すフローチャートである。なお、以下説明するマルチCPUモデル210の処理は、マルチCPUスケジューラ200から送信された実行指示の受信をトリガとする。図12のフローチャートにおいて、まず、マルチCPUモデル210内のシミュレータの時刻に実行パラメータAの実行時刻を設定する(ステップS1201)。
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段、
前記ソート手段によってソートされた命令群のそれぞれ連続する命令同士の実行時刻を参照して命令群の実行間隔を算出する算出手段、
前記算出手段によって算出された実行間隔ごとに、該当する命令の実行指示を実行対象となるプロセッサモデルに与える制御手段、
として機能させることを特徴とする検証支援プログラム。
前記コンピュータによって実行された命令に次回実行予定があるか否かを判断する判断手段、として機能させ、
前記ソート手段は、前記判断手段によって次回実行予定があると判断された場合に、当該次回実行予定の命令を含んだ命令群を実行時刻順にソートすることを特徴とする付記1に記載の検証支援プログラム。
前記コンピュータによって実行された命令に他のプロセッサモデルへの任意のデータの送信要求が含まれていた場合、当該送信要求に対応した命令を前記ソート手段に通知する通知手段、として機能させ、
前記ソート手段は、前記通知手段によって通知された送信要求に対応した命令を含んだ命令群を実行時刻順にソートし、
前記制御手段は、前記実行間隔に該当する命令が前記送信要求に対応した命令の場合、当該命令の実行指示とともに前記任意のデータを前記他のプロセッサモデルへ与えることを特徴とする付記1または2に記載の検証支援プログラム。
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段、
任意の時刻から単位時間ごとの時刻を基準時刻として、当該各基準時刻から前記単位時間内に前記ソート手段によってソートされたいずれかの命令の実行時刻が含まれているような基準時刻を前記各基準時刻の中から抽出する抽出手段、
前記抽出手段によって抽出された基準時刻ごとに、該当する命令の実行指示と、当該実行指示の実行までの待機時間とを、前記実行対象となるプロセッサモデルに与える制御手段、
として機能させることを特徴とする検証支援プログラム。
前記コンピュータによって実行された命令の次回実行予定があるか否かを判断する判断手段、として機能させ、
前記ソート手段は、前記判断手段によって次回実行予定があると判断された場合に、当該次回実行予定の命令を含んだ命令群を実行時刻順にソートすることを特徴とする付記4に記載の検証支援プログラム。
前記コンピュータによって実行された命令に他のプロセッサモデルへの任意のデータの送信要求が含まれていた場合、当該送信要求に対応した命令を前記ソート手段に通知する通知手段、として機能させ、
前記ソート手段は、前記通知手段によって通知された送信要求に対応した命令を含んだ命令群を実行時刻順にソートし、
前記制御手段は、前記抽出手段によって抽出された基準時刻ごとに、該当する命令が前記送信命令に対応した命令の場合、当該命令の実行指示とともに前記任意のデータを前記他のプロセッサモデルへ与えることを特徴とする付記5に記載の検証支援プログラム。
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段と、
前記ソート手段によってソートされた命令群のそれぞれ連続する命令同士の実行時刻を参照して命令群の実行間隔を算出する算出手段と、
前記算出手段によって算出された実行間隔ごとに、該当する命令の実行指示を実行対象となるプロセッサモデルに与える制御手段と、
を備えることを特徴とする検証支援装置。
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段と、
任意の時刻から単位時間ごとの時刻を基準時刻として、当該各基準時刻から前記単位時間内に前記ソート手段によってソートされたいずれかの命令の実行時刻が含まれているような基準時刻を前記各基準時刻の中から抽出する抽出手段と、
前記抽出手段によって抽出された基準時刻ごとに、該当する命令の実行指示と、当該実行指示の実行までの待機時間とを、前記実行対象となるプロセッサモデルに与える制御手段と、
を備えることを特徴とする検証支援装置。
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート工程と、
前記ソート工程によってソートされた命令群のそれぞれ連続する命令同士の実行時刻を参照して命令群の実行間隔を算出する算出工程と、
前記算出工程によって算出された実行間隔ごとに、該当する命令の実行指示を実行対象となるプロセッサモデルに与える指示工程と、
を実行することを特徴とする検証支援方法。
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート工程と、
任意の時刻から単位時間ごとの時刻を基準時刻として、当該各基準時刻から前記単位時間内に前記ソート工程によってソートされたいずれかの命令の実行時刻が含まれているような基準時刻を前記各基準時刻の中から抽出する抽出工程と、
前記抽出工程によって抽出された基準時刻ごとに、該当する命令の実行指示と、当該実行指示の実行までの待機時間とを、前記実行対象となるプロセッサモデルに与える指示工程と、
を実行することを特徴とする検証支援方法。
101 検証対象ソフトウェア
102 シミュレーション結果
110 マルチCPUシミュレータ
200 マルチCPUスケジューラ
210 マルチCPUモデル
401 ソート部
402 算出部
403 制御部
404 判断部
405 通知部
406 抽出部
Claims (5)
- 複数のプロセッサをソフトウェアによって実現したマルチプロセッサモデルを用いて実行指示を受けた命令のシミュレーションをおこなうコンピュータを、
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段、
前記ソート手段によってソートされた命令群のそれぞれ連続する命令同士の実行時刻を参照して命令群の実行間隔を算出する算出手段、
前記算出手段によって算出された実行間隔ごとに、該当する命令の実行指示を実行対象となるプロセッサモデルに与える制御手段、
として機能させることを特徴とする検証支援プログラム。 - 複数のプロセッサをソフトウェアによって実現したマルチプロセッサモデルを用いて実行指示を受けた命令のシミュレーションをおこなうコンピュータを、
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段、
任意の時刻から単位時間ごとの時刻を基準時刻として、当該各基準時刻から前記単位時間内に前記ソート手段によってソートされたいずれかの命令の実行時刻が含まれているような基準時刻を前記各基準時刻の中から抽出する抽出手段、
前記抽出手段によって抽出された基準時刻ごとに、該当する命令の実行指示と、当該実行指示の実行までの待機時間とを、前記実行対象となるプロセッサモデルに与える制御手段、
として機能させることを特徴とする検証支援プログラム。 - 複数のプロセッサをソフトウェアによって実現したマルチプロセッサモデルを用いて実行指示を受けた命令のシミュレーションをおこなう検証支援装置であって、
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段と、
前記ソート手段によってソートされた命令群のそれぞれ連続する命令同士の実行時刻を参照して命令群の実行間隔を算出する算出手段と、
前記算出手段によって算出された実行間隔ごとに、該当する命令の実行指示を実行対象となるプロセッサモデルに与える制御手段と、
を備えることを特徴とする検証支援装置。 - 複数のプロセッサをソフトウェアによって実現したマルチプロセッサモデルを用いて実行指示を受けた命令のシミュレーションをおこなう検証支援装置であって、
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート手段と、
任意の時刻から単位時間ごとの時刻を基準時刻として、当該各基準時刻から前記単位時間内に前記ソート手段によってソートされたいずれかの命令の実行時刻が含まれているような基準時刻を前記各基準時刻の中から抽出する抽出手段と、
前記抽出手段によって抽出された基準時刻ごとに、該当する命令の実行指示と、当該実行指示の実行までの待機時間とを、前記実行対象となるプロセッサモデルに与える制御手段と、
を備えることを特徴とする検証支援装置。 - 複数のプロセッサをソフトウェアによって実現したマルチプロセッサモデルを用いて実行指示を受けた命令のシミュレーションをおこなうコンピュータが、
前記マルチプロセッサモデルの中の実行対象となるプロセッサモデルと実行時刻との情報を含んだ命令群を実行時刻順にソートするソート工程と、
前記ソート工程によってソートされた命令群のそれぞれ連続する命令同士の実行時刻を参照して命令群の実行間隔を算出する算出工程と、
前記算出工程によって算出された実行間隔ごとに、該当する命令の実行指示を実行対象となるプロセッサモデルに与える指示工程と、
を実行することを特徴とする検証支援方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009036363A JP5251586B2 (ja) | 2009-02-19 | 2009-02-19 | 検証支援プログラム、検証支援装置および検証支援方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009036363A JP5251586B2 (ja) | 2009-02-19 | 2009-02-19 | 検証支援プログラム、検証支援装置および検証支援方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010191758A JP2010191758A (ja) | 2010-09-02 |
JP5251586B2 true JP5251586B2 (ja) | 2013-07-31 |
Family
ID=42817726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009036363A Expired - Fee Related JP5251586B2 (ja) | 2009-02-19 | 2009-02-19 | 検証支援プログラム、検証支援装置および検証支援方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5251586B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6119442B2 (ja) * | 2013-06-11 | 2017-04-26 | 株式会社ソシオネクスト | シミュレーション装置、シミュレーション装置の動作方法およびシミュレーションプログラム |
JP6770935B2 (ja) * | 2017-07-03 | 2020-10-21 | 日立オートモティブシステムズ株式会社 | 車両制御装置用の検証装置 |
JP7017871B2 (ja) * | 2017-07-06 | 2022-02-09 | 日立Astemo株式会社 | 車両制御模擬装置 |
CN114924810B (zh) * | 2021-05-14 | 2024-02-23 | 武汉深之度科技有限公司 | 一种异构程序执行方法、装置、计算设备及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4901260A (en) * | 1987-10-28 | 1990-02-13 | American Telephone And Telegraph Company At&T Bell Laboratories | Bounded lag distributed discrete event simulation method and apparatus |
JPH03255565A (ja) * | 1990-03-06 | 1991-11-14 | Fujitsu Ltd | 並列計算機シミュレート方式 |
JPH0535690A (ja) * | 1991-07-29 | 1993-02-12 | Fujitsu Ltd | 並列計算機シミユレート方式及び方法 |
JP2002323978A (ja) * | 2001-04-25 | 2002-11-08 | Nec Corp | 試験設備システム及びそれに用いるアプリケーションソフトウェアの時刻同期方法並びにそのプログラム |
JP4681513B2 (ja) * | 2006-06-30 | 2011-05-11 | トヨタテクニカルディベロップメント株式会社 | リアルタイム並列分散シミュレーションシステム |
-
2009
- 2009-02-19 JP JP2009036363A patent/JP5251586B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010191758A (ja) | 2010-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zeng et al. | Stochastic analysis of can-based real-time automotive systems | |
Hrischuk et al. | Automatic generation of a software performance model using an object-oriented prototype | |
JP5350428B2 (ja) | 自動プログラム生成装置、方法及びコンピュータプログラム | |
JP4655240B2 (ja) | タイミング解析支援装置 | |
JP2008547128A5 (ja) | ||
JP2013175242A (ja) | 画像センサベースのヒューマンマシンインタフェースを提供する方法システムおよびソフトウェア | |
JP5251586B2 (ja) | 検証支援プログラム、検証支援装置および検証支援方法 | |
JP5034916B2 (ja) | 性能評価モデル生成方法、システム性能評価方法、及び性能評価モデル生成装置 | |
US8255846B2 (en) | Development tool for comparing netlists | |
CN107491311B (zh) | 生成页面文件的方法、***以及计算机设备 | |
US20090234620A1 (en) | Verification support apparatus, verification support method, and computer product | |
JP2012203451A (ja) | 半導体集積回路シミュレーション装置及び半導体集積回路のシミュレーション方法 | |
CN101211254A (zh) | 用于生成可变数据图像的可变数据图像生成设备、可变数据图像形成***及方法 | |
JP4716964B2 (ja) | タイミングダイアグラム編集プログラム、タイミングダイアグラム編集装置およびタイミングダイアグラム編集方法 | |
JP4406028B2 (ja) | データ提示装置,データ提示プログラム及びデータ提示方法 | |
CN105046017B (zh) | 一种机电抗震设计的快速布点方法和*** | |
Ladry et al. | Formal description techniques to support the design, construction and evaluation of fusion engines for sure (safe, usable, reliable and evolvable) multimodal interfaces | |
JP5163308B2 (ja) | Ipモデル生成装置、ipモデル生成方法、およびipモデル生成プログラム | |
JP4645843B2 (ja) | データ処理装置、データ処理方法およびプログラム | |
JP2013200851A (ja) | 設計支援プログラム、設計支援方法、および設計支援装置 | |
WO2021220424A1 (ja) | ダイヤグラム変更装置、ダイヤグラム変更方法およびダイヤグラム変更プログラム | |
JP2008217071A (ja) | 高位合成装置および高位合成方法 | |
JP4802130B2 (ja) | 図面作成プログラム、図面作成装置および図面作成方法 | |
JP6184217B2 (ja) | シミュレーション制御方法、シミュレーション制御プログラム、およびシミュレーション制御装置 | |
JP2006185316A (ja) | 業務分析支援プログラム、業務分析支援装置および業務分析支援方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20111128 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130305 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130319 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130401 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160426 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |