JP5347482B2 - 性能評価装置、性能評価方法及びシミュレーションプログラム - Google Patents
性能評価装置、性能評価方法及びシミュレーションプログラム Download PDFInfo
- Publication number
- JP5347482B2 JP5347482B2 JP2008322807A JP2008322807A JP5347482B2 JP 5347482 B2 JP5347482 B2 JP 5347482B2 JP 2008322807 A JP2008322807 A JP 2008322807A JP 2008322807 A JP2008322807 A JP 2008322807A JP 5347482 B2 JP5347482 B2 JP 5347482B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- data
- model
- output
- input
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
まず、第1実施形態に係るシミュレーションモデルについて図1〜図3を参照して説明する。
まず、CPU1がバス11aを介してメモリ13aにデータを書き込む処理をシミュレートしたときのシミュレーションモデルの動作について図3及び図4を用いて説明する。図3において、実線矢印はデータ書き込み処理をシミュレートしたときのイベントの流れを示している。また、実線矢印の始点に付された英字は、データ書き込み処理をシミュレートしたときのイベントの符号を示し、当該英字の横の数字は、制御タイミング取り扱い部106及びデータタイミング取り扱い部107を介したイベントの入出力される順番を示している。
情報を示し、Δtw4〜Δtw7がデータ信号についての時間情報を示している。図6は
、データ書き込み処理が行われる場合におけるΔtw1〜Δtw7の時間を決める要素を
示す表である。以下で具体的に述べる。
3へ送信する。ここで、時間情報Δtw1は、ハードウェア10において、CPU1が要
求信号を送信するのを待つ待ち時間に対応する。具体的には、時間情報Δtw1は、CP
U1が調停回路11bに対し送信権限要求を送信してから当該調停回路11bより送信権限を得て要求信号を送信するまでの時間に対応する。従って、時間情報Δtw1は、バス
11aの競合の有無により変化する。第1実施形態では、バスに競合が発生していないと仮定しているので、時間情報Δtw1は実験などにより予め決められた固定値に設定され
る。なお、固定値は、シミュレータのメモリなどに予め記憶されている。
ル101より受信すると、バスモデル101に対し応答イベントACKを送信する。このとき、メモリモデル103は、応答イベントACKとともに、時間情報Δtw1に時間情
報Δtw2を加えた時間情報Δtw1_2をバスモデル101に送信する。ここで、時間
情報Δtw2は、ハードウェア10において、メモリコントローラ13bが要求信号を受
信してから応答信号を送信する準備を完了するまでの処理時間に対応する。時間情報Δt
w2は、実験などにより予め決められた固定値に設定される。
トCHを送信する。制御タイミング取り扱い部106は、調停部109より送信権限を許可する旨の通知イベントRAを受信すると、応答イベントACKとともに、時間情報Δt
w1_2に時間情報Δtw3を加えた時間情報Δtw1_3をCPUモデル102へ送信
する。ここで、時間情報Δtw3は、ハードウェア10において、メモリコントローラ1
3bが応答信号を送信するのを待つ待ち時間に対応する。具体的には、時間情報Δtw3
は、メモリコントローラ13bが調停回路11bに対し送信権限要求を行ってから当該調停回路11bより送信権限を得て応答イベントACKを送信するまでの時間に対応する。従って、時間情報Δtw3は、バス11aの競合の有無により変化する。第1実施形態で
は、バスに競合が発生していないと仮定しているので、時間情報Δtw3は、実験などに
より予め決められた固定値に設定される。
タ書き込み処理の際における制御信号の入出力にかかる時間情報となる。
01より受信すると、バスモデル101に対しデータサイズ情報イベントDataSを送信する。このとき、CPUモデル102は、データサイズ情報イベントDataSとともに、時間情報Δtw1_3に時間情報Δtw4を加えた時間情報Δtw1_4をバスモデ
ル101に送信する。ここで、時間情報Δtw4は、ハードウェア10において、CPU
1が応答信号を受信してからデータを含むデータ信号を送信するまでの処理時間に対応する。具体的には、時間情報Δtw4は、CPU1がデータを含むデータ信号を用意する時
間とCPU1がバス11aに当該データ信号を出力する時間とを足したものに対応する。時間情報Δtw4は、1データ当たりの処理時間にデータサイズ情報を掛けることによっ
て求められる。ここで、1データ当たりの処理時間は、実験などにより予め決められた固定値に設定される。
時間情報Δtw5を加えた時間情報Δtw1_5をメモリモデル103へ送信する。ここ
で、時間情報Δtw5は、ハードウェア10において、データ信号をバス11aで送信す
るのにかかる送信時間に対応する。時間情報Δtw5は、1データ当たりの送信時間にデ
ータサイズ情報を掛けることによって求められる。ここで、1データ当たりの送信時間は、実験などにより予め決められた固定値に設定される。
5をバスモデル101より受信すると、バスモデル101に対しEODイベントを送信する。このとき、メモリモデル103は、EODイベントとともに、時間情報Δtw1_5
に時間情報Δtw6を加えた時間情報Δtw1_6をバスモデル101に送信する。ここ
で、時間情報Δtw6は、ハードウェア10において、データがメモリ13aに書き込ま
れるのにかかる処理時間に対応する。具体的には、時間情報Δtw6は、1データ当たり
のメモリへの書き込み時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりのメモリへの書き込み時間は、実験などにより予め決められた固定値に設定される。
えた時間情報Δtw1_7を、イベント受信部104を介してCPUモデル102へ送信
する。ここで、時間情報Δtw7は、ハードウェア10において、処理終了信号をバス1
1aで送信するのにかかる送信時間に対応する。なお、時間情報Δtw7は、実験などに
より予め決められた固定値に設定される。
み処理にかかるトータルの時間(CPU1がデータ書き込み要求を出力してから処理終了信号を得るまでの時間)に対応する。つまり、CPUモデル102は、EODイベントを受信したときに、メモリへのデータ書き込み処理にかかるトータルの時間を時間情報Δt
w1_7として得ることができる。なお、このうち、時間情報Δtw4〜Δtw7までの
合計した時間情報は、データ書き込み処理の際におけるデータ信号の入出力にかかる時間に対応する。
Δtw3を算出し、メモリモデル103は時間情報Δtw2を算出する。データ書き込み
処理の場合において、ハードウェア10におけるCPU1−メモリコントローラ13b間における制御信号の転送期間は、例えば時間情報Δtw1、Δtw3に対応し、制御信号
の処理時間は、例えば時間情報Δtw2に対応する。従って、制御信号転送期間算出部は
、例えば制御タイミング取り扱い部106に対応し、制御信号処理時間算出部は、例えばメモリモデル103に対応する。また、データタイミングモデルでは、CPUモデル102、バスモデル101におけるデータタイミング取り扱い部107、メモリモデル103によりデータ信号の入出力にかかった時間が算出される。具体的には、データタイミング取り扱い部106は、時間情報Δtw5、Δtw7を算出し、CPUモデル102、メモ
リモデル103はそれぞれ、時間情報Δtw4、Δtw6を算出する。データ書き込み処
理の場合において、ハードウェア10におけるCPU1−メモリコントローラ13b間におけるデータ信号の転送期間は、例えば時間情報Δtw5、Δtw7に対応し、データ信
号の処理時間は、例えば時間情報Δtw4、Δtw6に対応する。従って、データ信号転
送期間算出部は、例えばデータタイミング取り扱い部106に対応し、データ信号処理時間算出部は、例えばCPUモデル102、メモリモデル103に対応する。
tw4、Δtw6を算出している。これにより、データ情報イベントの入出力を行う場合
と比較して、シミュレーション時間を短縮することが可能となる。
次に、CPU1がバス11aを介してメモリ13aからデータを読み込む処理をシミュレートしたときのシミュレーションモデルの動作について図7及び図8を用いて説明する。
号についての時間情報を示し、Δtr4〜Δtr7がデータ信号についての時間情報を示
している。図10は、データ読み出し処理が行われる場合におけるΔtr1〜Δtr7の
時間を決める要素を示す表である。以下で具体的に述べる。
r1をメモリモデル103へ送信する。ここで、時間情報Δtr1は、データ書き込み処
理の場合と同様、ハードウェア10において、CPU1が要求信号を送信するのを待つ待ち時間に対応する。具体的には、時間情報Δtr1は、CPU1が調停回路11bに対し
送信権限要求を行ってから当該調停回路11bより送信権限を得て要求イベントREQを送信するまでの時間に対応する。従って、時間情報Δtr1は、バス11aの競合の有無
により変化する。第1実施形態では、バスに競合が発生していないと仮定しているので、時間情報Δtr1は実験などにより予め決められた固定値に設定される。
ル101より受信すると、バスモデル101に対し応答イベントACKを送信する。このとき、メモリモデル103は、応答イベントACKとともに、時間情報Δtr1に時間情
報Δtr2を加えた時間情報Δtr1_2をバスモデル101に送信する。ここで、時間
情報Δtr2は、データ書き込み処理の場合と同様、ハードウェア10において、メモリ
コントローラ13bが読み出し要求信号を受信してから応答信号を送信する準備を完了するまでの処理時間に対応する。時間情報Δtr2は実験などにより予め決められた固定値
に設定される。
ントCHを送信する。制御タイミング取り扱い部106は、調停部109より送信権限を許可する旨の通知イベントRAを受信すると、応答イベントACKとともに、時間情報Δ
tr1_2に時間情報Δtr3を加えた時間情報Δtr1_3をCPUモデル102へ送
信する。ここで、時間情報Δtr3は、データ書き込み処理の場合と同様、ハードウェア
10において、メモリコントローラ13bが応答信号を送信するのを待つ待ち時間に対応する。具体的には、時間情報Δtr3は、メモリコントローラ13bが調停回路11bに
対し送信権限要求を行ってから当該調停回路11bより送信権限を得て応答イベントACKを送信するまでの時間に対応する。従って、時間情報Δtr3は、バス11aの競合の
有無により変化する。第1実施形態では、バスに競合が発生していないと仮定しているので、時間情報Δtr3は実験などにより予め決められた固定値に設定される。
タ読み出し処理の際における制御信号の入出力にかかる時間情報となる。上述したことから分かるように、データ読み出し処理をシミュレートした場合におけるΔtr1〜Δtr
3はそれぞれ、先に述べたデータ書き込み処理をシミュレートした場合におけるΔtw1
〜Δtw3を求めたときと同様の方法で求められる。
01より受信すると、バスモデル101に対しデータサイズ情報イベントDataSを送信する。このとき、CPUモデル102は、データサイズ情報イベントDataSとともに、時間情報Δtr1_3に時間情報Δtr4を加えた時間情報Δtr1_4をバスモデ
ル101に送信する。ここで、時間情報Δtr4は、ハードウェア10において、CPU
1が応答信号を受信してからデータアドレス及びデータサイズを含むデータ信号を送信する準備を完了するまでの処理時間に対応する。当該データ信号はデータを含まないので、時間情報Δtr4は実験などにより予め決められた固定値に設定される。
時間情報Δtr5を加えた時間情報Δtr1_5をメモリモデル103へ送信する。ここ
で、時間情報Δtr5は、ハードウェア10において、データアドレス及びデータサイズ
を含むデータ信号をバス11aで送信するのにかかる送信時間に対応する。当該データ信号はデータを含まないので、時間情報Δtr5は実験などにより予め決められた固定値に
設定される。
5をバスモデル101より受信すると、バスモデル101に対し、データ情報イベントDataS及びEODイベントを送信する。このとき、メモリモデル103は、データ情報イベントDataS及びEODイベントとともに、時間情報Δtr1_5に時間情報Δt
r6を加えた時間情報Δtr1_6をバスモデル101に送信する。ここで、時間情報Δ
tr6は、ハードウェア10において、メモリ13aよりデータが読み出されるのにかかる処理時間に対応する。具体的には、時間情報Δtr6は、1データ当たりのメモリから
の読み出し時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりのメモリからの読み出し時間は実験などにより予め決められた固定値に設定される。
r7を加えた時間情報Δtr1_7を、CPUモデル102へ送信する。ここで、時間情
報Δtr7は、ハードウェア10において、データを含むデータ信号をバス11aで送信
するのにかかる送信時間に対応する。具体的には、時間情報Δtr7は、1データ当たり
の送信時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりの送信時間は実験などにより予め決められた固定値に設定される。
し処理にかかるトータルの時間(CPU1がデータ読み出し要求を出力してから処理終了信号を得るまでの時間)に対応する。つまり、CPUモデル102は、EODイベントを受信したときに、データ読み出し処理にかかるトータルの時間を時間情報Δtr1_7と
して得ることができる。なお、このうち、時間情報Δtr4〜Δtr7までの合計した時
間情報は、データ読み出し処理の際におけるデータ信号の入出力にかかる時間に対応する。
、メモリモデル103は時間情報Δtr2を算出する。データ読み出し処理の場合におい
て、ハードウェア10におけるCPU1−メモリコントローラ13b間における制御信号の転送期間は、例えば時間情報Δtr1、Δtr3に対応し、制御信号の処理時間は、例
えば時間情報Δtr2に対応する。また、データタイミングモデルでは、CPUモデル1
02、バスモデル101におけるデータタイミング取り扱い部107、メモリモデル103によりデータ信号の入出力にかかった時間が算出される。具体的には、データタイミング取り扱い部106は、時間情報Δtr5、Δtr7を算出し、CPUモデル102、メ
モリモデル103はそれぞれ、時間情報Δtr4、Δtr6を算出する。データ読み出し
処理の場合において、ハードウェア10におけるCPU1−メモリコントローラ13b間におけるデータ信号の転送期間は、例えば時間情報Δtr5、Δtr7に対応し、データ
信号の処理時間は、例えば時間情報Δtr4、Δtr6に対応する。
次に、第2実施形態に係るシミュレーションモデルについて図11〜13を参照して説明する。第2実施形態に係るシミュレーションでは、バスに競合が発生していると仮定した場合のシミュレーションモデルの動作の例について説明する。
w7(C1)として示し、CPU2とメモリコントローラ13bとの間での入出力における時間情報Δtw1〜Δtw7をそれぞれ、時間情報Δtw1(C2)〜Δtw7(C2
)として示している。図15は、データ書き込み処理が行われる場合におけるΔtw1〜
Δtw7の時間を決める要素を示す表である。以下で具体的に述べる。
てメモリモデル103へ送信する。時間情報Δtw1(C2)は、ハードウェア20にお
いて、CPU2が要求信号を送信するのを待つ待ち時間に対応し、バスにおける競合の有無により変化する。しかしながら、このとき、バスには競合が発生していないとみなしてもよい。従って、時間情報Δtw1(C2)は、図5の時間情報Δtw1と同様、実験な
どにより予め決められた固定値に設定される。
デル101より受信すると、バスモデル101に対し応答イベントACK2を送信する。このとき、メモリモデル103は、応答イベントACK2とともに、時間情報Δtw1(
C2)に時間情報Δtw2(C2)を加えた時間情報ΔC2t1_2をバスモデル101
に送信する。ここで、時間情報Δtw2(C2)は、図5の時間情報Δtw2と同様、ハ
ードウェア20において、メモリコントローラ13bが要求信号を受信してから応答信号を送信する準備を完了するまでの処理時間に対応し、実験などにより予め決められた固定値に設定される。バスモデル101において、イベント発信部105は、応答イベントACK2及び時間情報ΔC2t1_2を制御タイミング取り扱い部106bへ送信する。
モリモデル103へ送信する。時間情報Δtw1(C1)は、ハードウェア20において
、CPU1が要求信号を送信するのを待つ待ち時間に対応し、バスにおける競合の有無により変化する。このとき、時間情報Δtw1は、時間情報Δtw2(C2)から時間情報
Δtw0(C1)を引いた値として求められる。ここで、時間情報Δtw0(C1)は、
CPU2が要求信号をメモリコントローラ11bに送信してからCPU1が調停回路11bに送信権限要求を示す信号を送信するまでの時間である。なお、時間情報Δtw0(C
1)は、優先度の高いREQ1がバスモデル101に渡されるタイミングに応じて変化してよい情報である。
デル101より受信すると、バスモデル101に対し応答イベントACK1を送信する。このとき、メモリモデル103は、応答イベントACK1とともに、時間情報Δtw1(
C1)に時間情報Δtw2(C1)を加えた時間情報ΔC1t1_2をバスモデル101
に送信する。ここで、時間情報Δtw2は、ハードウェア20において、メモリコントロ
ーラ13bが要求信号を受信してから応答信号を送信する準備を完了するまでの処理時間に対応し、実験などにより予め決められた固定値に設定される。
信して、送信権限許可を得る。制御タイミング取り扱い部106aは、調停部109より送信許可を得ると、応答イベントACK1とともに、時間情報ΔC1t1_2に時間情報
Δtw3(C1)を加えた時間情報ΔC1t1_3を、イベント発信部105を介して、
CPU1モデル102aへ送信する。ここで、時間情報Δtw3(C1)は、ハードウェ
ア20において、メモリコントローラ13bがCPU1に対し応答信号を送信するのを待つ待ち時間に対応し、バスにおける競合の有無により変化する。しかし、先にも述べたように、制御タイミング取り扱い部106aが受け渡すイベントは、制御タイミング取り扱い部106bが受け渡すイベントよりも優先度が高い。従って、時間情報Δtw3(C1
)は、図5の時間情報Δtw3と同様、実験などにより予め決められた固定値に設定され
る。
モデル101より受信すると、バスモデル101に対しデータサイズ情報DataS1を送信する。ここで、CPU1モデル102aは、データサイズ情報DataS1とともに、時間情報ΔC1t1_3に時間情報Δtw4(C1)を加えた時間情報ΔC1t1_4
をバスモデル101に送信する。ここで、時間情報Δtw4(C1)は、図5の時間情報
Δtw4と同様、ハードウェア20において、CPU1が応答信号を受信してからデータ
を含むデータ信号を送信するまでの処理時間に対応する。具体的には、時間情報Δtw4
(C1)は、CPU1が当該データ信号を用意する時間とCPU1がバス11aにデータを含むデータ信号を出力する時間とを足したものに対応する。時間情報Δtw4(C1)
は、1データ当たりの処理時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりの処理時間は、実験などにより予め決められた固定値に設定される。
ベント発信部105を介してメモリモデル103へ送信する。ここで、時間情報ΔC1t
1_5は、時間情報ΔC1t1_4に時間情報Δtw5(C1)を加えた時間情報である
。ここで、時間情報Δtw5(C1)は、図5の時間情報Δtw5と同様、ハードウェア
20において、データを含むデータ信号をバス11aで送信するのにかかる送信時間に対応する。時間情報Δtw5は、1データ当たりの送信時間にデータサイズ情報を掛けるこ
とによって求められる。ここで、1データ当たりの送信時間は、実験などにより予め決められた固定値に設定される。
1_5をバスモデル101より受信すると、バスモデル101に対しEOD1イベントを送信する。このとき、メモリモデル103は、EOD1イベントとともに、時間情報ΔC
1t1_5に時間情報Δtw6(C1)を加えた時間情報ΔC1t1_6をバスモデル1
01に送信する。ここで、時間情報Δtw6(C1)は、図5の時間情報Δtw6と同様
、ハードウェア20において、データがメモリ13aに書き込まれるのにかかる処理時間に対応する。具体的には、時間情報Δtw6(C1)は、メモリモデル103が1データ
当たりのメモリへの書き込み時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりのメモリへの書き込み時間は、実験などにより予め決められた固定値に設定される。
、送信権限を返還する旨の通知を行う。そして、データタイミング取り扱い部107は、EODイベントとともに、時間情報ΔC1t1_6に時間情報Δtw7(C1)を加えた
時間情報ΔC1t1_7を、イベント受信部104を介してCPUモデル102へ送信す
る。ここで、時間情報Δtw7(C1)は、図5の時間情報Δtw7と同様、ハードウェ
ア20において、処理終了信号をバス11aで送信するのにかかる送信時間に対応する。なお、時間情報Δtw7は、実験などにより予め決められた固定値に設定される。このよ
うにしこのようにして求められた時間情報ΔC1tw1_7が、CPU1がデータ書き込
み要求を出力してから処理終了信号を得るまでの時間に対応する。
間情報ΔC2t1_3を、イベント発信部105を介して、CPU2モデル102bへ送
信する。ここで、時間情報Δtw3(C2)は、ハードウェア20において、メモリコン
トローラ13bがCPU2に対し応答信号を送信するのを待つ待ち時間に対応し、バスにおける競合の有無により変化する。具体的には、時間情報Δtw3(C2)は、Δtw2
(C1)、Δtw3(C1)、Δtw4(C1)、Δtw5(C1)、Δtw6(C1)
、Δtw7(C1)の合計である。つまり、第2実施形態に係るシミュレーションモデル
では、優先度の低い方の制御信号の送信待ち時間は、当該優先度の低い方の制御信号が送信待ちをしている間にやりとりされた優先度の高い方の制御信号及びデータ信号の時間情報の合計として求められる。
モデル101より受信すると、バスモデル101に対しデータサイズ情報DataS2を送信する。ここで、CPU2モデル102bは、データサイズ情報DataS2とともに、時間情報ΔC2t1_3に時間情報Δtw4(C2)を加えた時間情報ΔC2t1_4
をバスモデル101に送信する。ここで、時間情報Δtw4(C2)は、図5の時間情報
Δtw4と同様、ハードウェア20において、CPU2が応答信号を受信してからデータ
を含むデータ信号を送信するまでの処理時間に対応する。具体的には、時間情報Δtw4
(C2)は、CPU2が当該データ信号を用意する時間とCPU2がバス11aに当該データ信号を出力する時間とを足したものに対応する。時間情報Δtw4(C2)は、1デ
ータ当たりの処理時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりの処理時間は、実験などにより予め決められた固定値に設定される。
情報Δtw5(C2)を加えた時間情報ΔC2t1_5を、イベント発信部105を介し
てメモリモデル103へ送信する。ここで、時間情報Δtw5(C2)は、図5の時間情
報Δtw5と同様、ハードウェア20において、データ信号をバス11aで送信するのに
かかる送信時間に対応する。時間情報Δtw5は、1データ当たりの送信時間にデータサ
イズ情報を掛けることによって求められる。ここで、1データ当たりの送信時間は、実験などにより予め決められた固定値に設定される。
バスモデル101より受信すると、バスモデル101に対しEOD2イベントを送信する。このとき、メモリモデル103は、EOD2イベントとともに、時間情報ΔC2t1_
5に時間情報Δtw6(C2)を加えた時間情報ΔC2t1_6をバスモデル101に送
信する。ここで、時間情報Δtw6(C2)は、図5の時間情報Δtw6と同様、ハード
ウェア20において、データがメモリ13aに書き込まれるのにかかる処理時間に対応する。具体的には、時間情報Δtw6(C2)は、メモリモデル103が1データ当たりの
メモリへの書き込み時間にデータサイズ情報を掛けることによって求められる。ここで、1データ当たりのメモリへの書き込み時間は、実験などにより予め決められた固定値に設定される。
送信権限を返還する旨の通知を行う。そして、データタイミング取り扱い部107は、EODイベントとともに、時間情報ΔC2t1_6に時間情報Δtw7(C2)を加えた時
間情報ΔC2t1_7を、イベント受信部104を介してCPUモデル102へ送信する
。ここで、時間情報Δtw7(C2)は、図5の時間情報Δtw7と同様、ハードウェア
20において、処理終了信号をバス11aで送信するのにかかる送信時間に対応する。なお、時間情報Δtw7は、実験などにより予め決められた固定値に設定される。このよう
にしこのようにして求められた時間情報ΔC2tw1_7が、CPU2がデータ書き込み
要求を出力してから処理終了信号を得るまでの時間に対応する。
C1tw1_7、ΔC2tw1_7を得ることができる。
上述の各実施形態では、CPUとメモリコントローラ間における制御信号及びデータ信号の入出力をシミュレートした例について述べたが、機能ブロックとしてはCPUとメモリコントローラに限られるものではないのは言うまでもない。例えば、DMAコントローラとメモリコントローラとの間における制御信号及びデータ信号の入出力をシミュレータした場合であっても、上述の各実施形態を適用可能である。即ち、CPUとメモリコントローラ以外のマスター及びスレーブのそれぞれとして機能する複数の機能ブロック間で入出力される制御信号及びデータ信号の入出力をシミュレートした場合にも、上述の各実施形態で述べた方法は適用可能である。
以上説明した実施形態に関して、更に以下の付記を開示する。
ハードウェアに対応するシミュレーションモデルに含まれる複数の機能ブロック間で入出力される制御信号の入力のタイミングを出力する制御タイミングモデル部と、
前記制御信号の入力のタイミングに応じて、前記複数の機能ブロック間における前記制御信号の転送期間を算出する制御信号転送期間算出部と、
前記制御信号に対応するデータ信号であって、前記複数の機能ブロック間で入出力されるデータ信号の入力のタイミングを出力するデータタイミングモデル部と、
前記データ信号の入力のタイミングに応じて、前記複数の機能ブロック間における前記データ信号の転送期間を算出するデータ信号転送期間算出部と
を備えることを特徴とする性能評価装置。
(付記2)
前記制御信号が入力された前記機能ブロックにおける前記制御信号の処理時間を示す時間情報を算出する制御信号処理時間算出部と、を有することを特徴とする付記1に記載の性能評価装置。
(付記3)
前記データ信号が入力された前記機能ブロックにおける前記データ信号の処理時間を示す時間情報を算出するデータ信号処理時間算出部と、を有することを特徴とする付記1又は2に記載の性能評価装置。
(付記4)
前記データタイミングモデル部は、前記複数の機能ブロックモデル間において、前記データイベントとしてデータサイズ情報を示すイベントであるデータサイズ情報イベントの入出力を行い、
前記データ信号転送期間算出部は、前記データサイズ情報に1データ当たりの送信時間を掛けることにより、前記データ信号の送信時間を示す時間情報を算出し、
前記データ信号処理時間算出部は、前記データサイズ情報に1データ当たりの処理時間を掛けることにより、前記データ信号の処理時間を示す時間情報を算出することを特徴とする付記3に記載の性能評価装置。
(付記5)
前記シミュレーションモデルは、前記複数の機能ブロックのうち、マスターとして動作する機能ブロックと、前記マスターとバスを介して接続され、スレーブとして動作する機能ブロックとを含むハードウェアをモデル化したものであり、
前記制御タイミングモデル部は、前記マスターとして動作する機能ブロックをモデル化したマスターモデル部と、前記スレーブとして動作する機能ブロックをモデル化したスレーブモデル部との間で、前記バスをモデル化したバスモデル部を介して前記制御イベントの入出力を行い、
前記データタイミングモデル部は、前記マスターモデル部と前記スレーブモデル部との間で前記バスモデル部を介して前記データイベントの入出力を行うモデルであることを特徴とする付記1乃至4のいずれか一項に記載の性能評価装置。
(付記6)
前記シミュレーションモデルは、前記バスに接続された前記マスターを複数有するハードウェアをモデル化したものであり、
前記バスモデル部は、前記複数のマスターのそれぞれと前記スレーブとの間で入出力される前記制御信号の前記バスにおける競合を調停する調停回路をモデル化した調停部を有し、
前記調停部は、前記バスモデル部が受信した前記制御イベントに対し、当該制御イベントよりも優先度の高い制御イベントの入出力が終了してから、送信先への送信を許可することを特徴とする付記5に記載の性能評価装置。
(付記7)
前記制御信号転送期間算出部は、前記制御信号の待ち時間を示す時間情報として、当該制御信号の送信待ちの間に入出力された制御信号及びデータ信号の時間情報の合計を算出することを特徴とする付記6に記載の性能評価装置。
(付記8)
前記制御タイミングモデル部及び前記データタイミングモデル部が並列に実行されることを特徴とする付記1乃至7のいずれか一項に記載の性能評価装置。
(付記9)
コンピュータが実行する、シミュレーションプログラムであって、
前記コンピュータを、ハードウェアに対応するシミュレーションモデルに含まれる複数の機能ブロック間で入出力される制御信号の入力のタイミングを出力する制御タイミングモデル部として機能させ、
前記制御信号の入力のタイミングに応じて、前記複数の機能ブロック間における前記制御信号の転送期間を算出する制御信号転送期間算出部として機能させ、
前記制御信号に対応するデータ信号であって、前記複数の機能ブロック間で入出力されるデータ信号の入力のタイミングを出力するデータタイミングモデル部として機能させ、
前記データ信号の入力のタイミングに応じて、前記複数の機能ブロック間における前記データ信号の転送期間を算出するデータ信号転送期間算出部として機能させる
ことを特徴とするシミュレーションプログラム。
(付記10)
ハードウェアに対応するシミュレーションモデルに含まれる複数の機能ブロック間で入出力される制御信号の入力のタイミングを出力し、
前記制御信号の入力のタイミングに応じて、前記複数の機能ブロック間における前記制御信号の転送期間を算出し、
前記制御信号に対応するデータ信号であって、前記複数の機能ブロック間で入出力されるデータ信号の入力のタイミングを出力し、
前記データ信号の入力のタイミングに応じて、前記複数の機能ブロック間における前記データ信号の転送期間を算出する
ことを特徴とする性能評価方法。
102 CPUモデル
103 メモリモデル
104 イベント受信部
105 イベント発信部
106 制御タイミング取り扱い部
107 データタイミング取り扱い部
108 機能取り扱い部
Claims (9)
- ハードウェアに対応するシミュレーションモデルを用いて前記ハードウェアの性能を評価する性能評価装置であって、コンピュータを備え、
前記シミュレーションモデルに含まれる複数の機能ブロック間で入出力される制御信号の入出力タイミングをモデル化した制御タイミングモデルであって、各機能ブロックにおける前記制御信号の出力に要する待ち時間を示す時間情報を含む制御タイミングモデルを用いて、前記複数の機能ブロック間の前記制御信号の入出力に係るイベントである第1のイベントの入出力を行い、
前記第1のイベントにおいて、前記機能ブロックに入力された第1の制御信号に応じて第2の制御信号を出力するときに前記第1の制御信号に伴い入力された時間情報の時間値に前記第2の制御信号に対応した時間情報の時間値を加算して当該機能ブロックから出力し、
前記複数の機能ブロック間で入出力されるデータの入出力タイミングをモデル化したデータタイミングモデルであって、前記データ自体は含まず前記データのデータサイズ情報を入出力するデータタイミングモデルを用いて、前記複数の機能ブロック間の前記データサイズ情報の入出力に係るイベントである第2のイベントの入出力を行い、
前記第2のイベントにおいて、前記機能ブロックに入出力される前記データサイズ情報に基づき当該機能ブロックにおける前記データの転送時間を算出し、前記第2のイベントに伴い入力された時間情報の時間値に前記転送時間の時間値を加算して当該機能ブロックから出力し、
前記第1及び第2のイベントで前記機能ブロックにおいて時間値が加算された時間情報に基づき前記ハードウェアの性能を評価する処理を前記コンピュータが実行することを特徴とする性能評価装置。 - 前記第2のイベントにおいて、前記データサイズ情報に基づき前記機能ブロックにおける前記データの処理時間を算出し、前記第2のイベントに伴い入力された時間情報の時間値に前記処理時間の時間値を加算して当該機能ブロックから出力する処理を前記コンピュータが実行することを特徴とする請求項1に記載の性能評価装置。
- 前記データの転送時間の算出において、前記データサイズ情報に1データ当たりの転送時間を掛けることにより、前記データの転送時間を示す時間情報を算出し、
前記データの処理時間の算出において、前記データサイズ情報に1データ当たりの処理時間を掛けることにより、前記データの処理時間を示す時間情報を算出する処理を前記コンピュータが実行することを特徴とする請求項2に記載の性能評価装置。 - 前記シミュレーションモデルは、前記複数の機能ブロックのうち、マスターとして動作する機能ブロックと、前記マスターとバスを介して接続され、スレーブとして動作する機能ブロックとを含むハードウェアをモデル化したものであり、
前記マスターとして動作する機能ブロックをモデル化したマスターモデルと、前記スレーブとして動作する機能ブロックをモデル化したスレーブモデルとの間で、前記バスをモデル化したバスモデルを介して前記第1のイベントの入出力を行い、
前記マスターモデルと前記スレーブモデルとの間で前記バスモデルを介して前記第2のイベントの入出力を行うモデルであることを特徴とする請求項1乃至3のいずれか一項に記載の性能評価装置。 - 前記シミュレーションモデルは、前記バスに接続された前記マスターを複数有するハードウェアをモデル化したものであり、
前記バスモデルは、前記複数のマスターのそれぞれと前記スレーブとの間で入出力される前記制御信号の前記バスにおける競合を調停する調停回路をモデル化した調停回路モデルを有し、
前記調停回路モデルは、前記バスモデルが受信した前記第1のイベントに対し、当該第1のイベントよりも優先度の高い第1のイベントの入出力が終了してから、送信先への送信を許可するモデルであることを特徴とする請求項4に記載の性能評価装置。 - 前記データの転送時間の算出において、前記制御信号の待ち時間を示す時間情報として、当該制御信号の送信待ちの間に入出力された制御信号及びデータの時間情報の合計を算出する処理を前記コンピュータが実行することを特徴とする請求項5に記載の性能評価装置。
- 前記第1のイベントの入出力及び前記第2のイベントの入出力が並列に実行されることを特徴とする請求項1乃至6のいずれか一項に記載の性能評価装置。
- ハードウェアに対応するシミュレーションモデルを用いた前記ハードウェアの性能評価をコンピュータに実行させるシミュレーションプログラムであって、
前記シミュレーションモデルに含まれる複数の機能ブロック間で入出力される制御信号の入出力タイミングをモデル化した制御タイミングモデルであって、各機能ブロックにおける前記制御信号の出力に要する待ち時間を示す時間情報を含む制御タイミングモデルを用いて、前記複数の機能ブロック間の前記制御信号の入出力に係るイベントである第1のイベントの入出力を行い、
前記第1のイベントにおいて、前記機能ブロックに入力された第1の制御信号に応じて第2の制御信号を出力するときに前記第1の制御信号に伴い入力された時間情報の時間値に前記第2の制御信号に対応した時間情報の時間値を加算して当該機能ブロックから出力し、
前記複数の機能ブロック間で入出力されるデータの入出力タイミングをモデル化したデータタイミングモデルであって、前記データ自体は含まず前記データのデータサイズ情報を入出力するデータタイミングモデルを用いて、前記複数の機能ブロック間の前記データサイズ情報の入出力に係るイベントである第2のイベントの入出力を行い、
前記第2のイベントにおいて、前記機能ブロックに入出力される前記データサイズ情報に基づき当該機能ブロックにおける前記データの転送時間を算出し、前記第2のイベントに伴い入力された時間情報の時間値に前記転送時間の時間値を加算して当該機能ブロックから出力し、
前記第1及び第2のイベントで前記機能ブロックにおいて時間値が加算された時間情報に基づき前記ハードウェアの性能を評価する処理を前記コンピュータに実行させることを特徴とするシミュレーションプログラム。 - ハードウェアに対応するシミュレーションモデルを用いた前記ハードウェアの性能評価を、演算部及び記憶部を有するコンピュータに実行させる性能評価方法であって、
前記記憶部に格納された、前記シミュレーションモデルに含まれる複数の機能ブロック間で入出力される制御信号の入出力タイミングをモデル化した制御タイミングモデルであって、各機能ブロックにおける前記制御信号の出力に要する待ち時間を示す時間情報を含む制御タイミングモデルを、前記演算部によって読み出し、
前記演算部は、前記制御タイミングモデルを用いて、前記複数の機能ブロック間の前記制御信号の入出力に係るイベントである第1のイベントの入出力を行い、前記第1のイベントにおいて、前記機能ブロックに入力された第1の制御信号に応じて第2の制御信号を出力するときに前記第1の制御信号に伴い入力された時間情報の時間値に前記第2の制御信号に対応した時間情報の時間値を加算して当該機能ブロックから出力し、
前記記憶部に格納された、前記複数の機能ブロック間で入出力されるデータの入出力タイミングをモデル化したデータタイミングモデルであって、前記データ自体は含まず前記データのデータサイズ情報を入出力するデータタイミングモデルを前記演算部によって読み出し、
前記演算部は、前記データタイミングモデルを用いて、前記複数の機能ブロック間の前記データサイズ情報の入出力に係るイベントである第2のイベントの入出力を行い、前記第2のイベントにおいて、前記機能ブロックに入出力される前記データサイズ情報に基づき当該機能ブロックにおける前記データの転送時間を算出し、前記第2のイベントに伴い入力された時間情報の時間値に前記転送時間の時間値を加算して当該機能ブロックから出力し、
前記第1及び第2のイベントで前記機能ブロックにおいて時間値が加算された時間情報に基づき前記ハードウェアの性能を評価することを特徴とする性能評価方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008322807A JP5347482B2 (ja) | 2008-12-18 | 2008-12-18 | 性能評価装置、性能評価方法及びシミュレーションプログラム |
US12/636,295 US8688428B2 (en) | 2008-12-18 | 2009-12-11 | Performance evaluation device, performance evaluation method and simulation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008322807A JP5347482B2 (ja) | 2008-12-18 | 2008-12-18 | 性能評価装置、性能評価方法及びシミュレーションプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010146292A JP2010146292A (ja) | 2010-07-01 |
JP5347482B2 true JP5347482B2 (ja) | 2013-11-20 |
Family
ID=42267344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008322807A Expired - Fee Related JP5347482B2 (ja) | 2008-12-18 | 2008-12-18 | 性能評価装置、性能評価方法及びシミュレーションプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8688428B2 (ja) |
JP (1) | JP5347482B2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5991211B2 (ja) * | 2012-05-25 | 2016-09-14 | 富士通株式会社 | シミュレーション方法、およびシミュレーションプログラム |
WO2014064788A1 (ja) * | 2012-10-24 | 2014-05-01 | 富士通株式会社 | シミュレーションプログラム、シミュレーション装置、シミュレーション方法、バスモデルおよびバス回路 |
JP5994661B2 (ja) * | 2013-01-31 | 2016-09-21 | 株式会社ソシオネクスト | 検証プログラム、検証方法及び検証装置 |
KR20180043626A (ko) | 2016-10-20 | 2018-04-30 | 삼성전자주식회사 | 버퍼를 포함하는 버스를 라우팅하기 위한 시스템 및 방법 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5881267A (en) * | 1996-03-22 | 1999-03-09 | Sun Microsystems, Inc. | Virtual bus for distributed hardware simulation |
US6078742A (en) * | 1996-12-19 | 2000-06-20 | Ati International | Hardware emulation |
US5960191A (en) * | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
US6154801A (en) * | 1997-07-31 | 2000-11-28 | Advanced Micro Devices, Inc. | Verification strategy using external behavior modeling |
JP2001076027A (ja) * | 1999-09-08 | 2001-03-23 | Nec Corp | システム設計段階におけるシミュレーション方法、その装置及びそのプログラムを記憶した記憶媒体 |
US7050958B1 (en) * | 2000-06-02 | 2006-05-23 | Arm Limited | Method and apparatus for accelerating hardware simulation |
US7548841B2 (en) * | 2001-11-16 | 2009-06-16 | Canon Kabushiki Kaisha | Method for logic checking to check operation of circuit to be connected to bus |
US20030110338A1 (en) * | 2001-12-06 | 2003-06-12 | Yuanlong Wang | Method and apparatus for emulating computer buses using point-to-point techniues |
US7856346B2 (en) * | 2002-05-10 | 2010-12-21 | Arm Limited | Emulating multiple bus used within a data processing system |
JP2004021907A (ja) * | 2002-06-20 | 2004-01-22 | Matsushita Electric Ind Co Ltd | 性能評価用シミュレーションシステム |
JP4020849B2 (ja) * | 2003-09-25 | 2007-12-12 | 松下電器産業株式会社 | シミュレーション装置、シミュレーションプログラム、記録媒体及びシミュレーション方法 |
JP2005258917A (ja) * | 2004-03-12 | 2005-09-22 | Ip Flex Kk | 集積回路の設計支援システムおよび設計支援プログラム |
US20050228627A1 (en) * | 2004-04-08 | 2005-10-13 | Matthew Bellantoni | System-level simulation of devices having diverse timing |
US7778815B2 (en) * | 2005-05-26 | 2010-08-17 | The Regents Of The University Of California | Method for the fast exploration of bus-based communication architectures at the cycle-count-accurate-at-transaction-boundaries (CCATB) abstraction |
-
2008
- 2008-12-18 JP JP2008322807A patent/JP5347482B2/ja not_active Expired - Fee Related
-
2009
- 2009-12-11 US US12/636,295 patent/US8688428B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8688428B2 (en) | 2014-04-01 |
US20100161305A1 (en) | 2010-06-24 |
JP2010146292A (ja) | 2010-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5347482B2 (ja) | 性能評価装置、性能評価方法及びシミュレーションプログラム | |
CN113947050B (zh) | 用于生成形式验证环境的方法、电子设备及存储介质 | |
US8489376B2 (en) | Controller and fabric performance testing | |
US20130054854A1 (en) | Full Bus Transaction Level Modeling Approach for Fast and Accurate Contention Analysis | |
JP2008282314A (ja) | シミュレータ、シミュレーション方法 | |
US20140325468A1 (en) | Storage medium, and generation apparatus for generating transactions for performance evaluation | |
CN1312583C (zh) | 仿真装置和仿真方法 | |
US7761280B2 (en) | Data processing apparatus simulation by generating anticipated timing information for bus data transfers | |
JP2012203451A (ja) | 半導体集積回路シミュレーション装置及び半導体集積回路のシミュレーション方法 | |
US11295052B1 (en) | Time correlation in hybrid emulation system | |
JP5994661B2 (ja) | 検証プログラム、検証方法及び検証装置 | |
JP2004021907A (ja) | 性能評価用シミュレーションシステム | |
JP3571177B2 (ja) | バス調停シミュレーション方法、最適バス調停方式決定方法、バス調停シミュレーションプログラムを記録したコンピュータ読み取り可能な記録媒体、及び最適バス調停方式決定プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
Choudhary et al. | Design and Performance Evaluation of PCle on Different FPGA | |
CN114429051B (zh) | 数据流芯片的建模方法、装置、设备及介质 | |
US11550981B2 (en) | Distributed application processing with synchronization protocol | |
JP2921087B2 (ja) | ハードウェアアクセラレータにおける実チップシミュレーション方式 | |
JP2006065457A (ja) | インタフェース回路生成装置およびインタフェース回路 | |
US20130317802A1 (en) | Method for simulating data transmission among a plurality of hardware elements | |
JP6119442B2 (ja) | シミュレーション装置、シミュレーション装置の動作方法およびシミュレーションプログラム | |
CN112596869A (zh) | 延时模型的构建方法及装置、电子设备及存储介质 | |
JP2006127380A (ja) | untimed記述で設計されたシステムLSIにおけるプログラム開発環境 | |
JP2016218677A (ja) | シミュレーション装置、シミュレーション方法およびシミュレーションプログラム | |
Mitby | A PCI/PCI-X test card for I/O system verification | |
Yu et al. | Estimation of Communication in SystemC Transaction Level Models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110831 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120806 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120828 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130507 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130705 |
|
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: 20130723 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130805 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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 |