JP2017021743A - シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム - Google Patents

シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム Download PDF

Info

Publication number
JP2017021743A
JP2017021743A JP2015141119A JP2015141119A JP2017021743A JP 2017021743 A JP2017021743 A JP 2017021743A JP 2015141119 A JP2015141119 A JP 2015141119A JP 2015141119 A JP2015141119 A JP 2015141119A JP 2017021743 A JP2017021743 A JP 2017021743A
Authority
JP
Japan
Prior art keywords
simulation
condition
asynchronous
synchronous
satisfied
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.)
Granted
Application number
JP2015141119A
Other languages
English (en)
Other versions
JP6664158B2 (ja
Inventor
宙祥 平松
Michiyasu Hiramatsu
宙祥 平松
浩一 宗像
Koichi Munakata
浩一 宗像
紀之 尾崎
Noriyuki Ozaki
紀之 尾崎
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2015141119A priority Critical patent/JP6664158B2/ja
Publication of JP2017021743A publication Critical patent/JP2017021743A/ja
Application granted granted Critical
Publication of JP6664158B2 publication Critical patent/JP6664158B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

【課題】シミュレーション実施者に負担をかけずに、シミュレーションを高速化できるシミュレーション装置を提供する。【解決手段】シミュレーション装置1は、記憶部16と、条件判定部14と、シミュレーション実行部12等を有する。記憶部は、実時間に同期させた同期シミュレーションを行うための同期シミュレーション条件と、実時間と非同期の非同期シミュレーションを行うための非同期シミュレーション条件とが定義されるシミュレーション条件情報を記憶する。条件判定部は、シミュレーション条件情報を参照して、同期シミュレーション条件及び非同期シミュレーション条件のいずれが成立しているかを判定する。シミュレーション実行部は、条件判定部により同期シミュレーション条件が成立していると判定された場合に、同期シミュレーションを行い、非同期シミュレーション条件が成立していると判定された場合に、非同期シミュレーションを行う。【選択図】図2

Description

本発明は、シミュレーション装置に関する。
近年の電子機器は多機能化に伴い、複雑な制御をすることを求められる。
そのため、従来は電子回路や物理的機構等のハードウェアによって行われていた制御は、マイクロコンピュータを搭載することによってソフトウェアで実現されている。
このように、電子機器など特定の目的に用いられるシステムを、パーソナルコンピュータ(以下、PCという)のような汎用的なシステムと対比して組込みシステムと呼ぶ。
組込みシステムにおける製品開発では、ハードウェアとソフトウェアが並行して開発されることがある。
そのため、組込みシステムの製品開発段階では、PC等でマイクロコンピュータの動作を模擬するシミュレーション装置が頻繁に用いられる。
シミュレーション装置を用いることで、ハードウェアが完成していなくても開発したソフトウェアが正しく動作しているかどうかを検証することができる。
また、組込みシステムではハードウェアを制御することが多いため、リアルタイム性も求められる。
特に昨今では、複数の機器が連動して付加価値の高い機能を実現することも増えてきており、マイクロコンピュータ同士の通信や同期は重要度を増している。
シミュレーション装置は、既存の機器と開発中の機器および開発中の機器同士の接続動作の検証にも有効である。
組み込みシステムで使用されるマイクロコンピュータに比べ、PCは高い計算能力を持つ場合が多く、シミュレーション装置は実際にはより高速に計算可能であるが、実機(マイクロコンピュータ)と連動するために速度を落として実行される場合がある。
また、マイクロコンピュータにおいて、実際にシミュレーション装置と通信可能になるまでに初期処理を実施するための待ち時間が発生する場合もある。
特許文献1では、実機の処理速度と同じ速度で処理が行われるシミュレーション装置において、試験情報に変速情報を付加することでシミュレーションの実行速度を変化させている。
変速情報を付加することにより、実時間で再現する必要の無い部分は高速で処理を行い、本当に模擬したい部分だけを実機と同速度で再現することが可能になり、短時間でのシミュレーションを実現している。
特開2013−206106号公報
しかしながら、特許文献1の技術では、予め設定された試験情報を基に定めた部分の高速化しかできず、試験情報に合わせて予め人手で高速化する部位を設定する必要がある。
すなわち、特許文献1の技術では、シミュレーション実施者が、シミュレーションを高速化する部位を試験情報から個別に抽出し、抽出した各部位をシミュレーション装置に設定する必要があり、シミュレーション実施者の負担が大きいという課題がある。
本発明は、上記のような課題を解決することを主な目的の一つとしており、シミュレーション実施者に負担をかけずに、シミュレーションを高速化できる構成を得ることを主な目的とする。
本発明に係るシミュレーション装置は、
実時間に同期させたシミュレーションである同期シミュレーションを行うための条件である同期シミュレーション条件と、実時間と非同期のシミュレーションである非同期シミュレーションを行うための条件である非同期シミュレーション条件とが定義されるシミュレーション条件情報を記憶する記憶部と、
前記シミュレーション条件情報を参照して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する条件判定部と、
前記条件判定部により前記同期シミュレーション条件が成立していると判定された場合に、前記同期シミュレーションを行い、前記条件判定部により前記非同期シミュレーション条件が成立していると判定された場合に、前記非同期シミュレーションを行うシミュレーション実行部とを有する。
本発明では、同期シミュレーション条件及び非同期シミュレーション条件の成否を判定し、非同期シミュレーション条件が成立している場合は、実時間と非同期のシミュレーションである非同期シミュレーションを行う。
このため、本発明によれば、システム設計者は、同期シミュレーション条件及び非同期シミュレーション条件を設定するのみでよく、シミュレーションを高速化する部位を試験情報から個別に抽出し、抽出した各部位をシミュレーション装置に設定する必要がない。
従って、シミュレーション実施者に負担をかけずに、シミュレーションを高速化することができる。
実施の形態1に係るシミュレーション装置の利用環境の例を示す図。 実施の形態1に係るシミュレーション装置の機能構成例を示す図。 実施の形態1に係るシミュレーション装置と実機の動作時間の差の例を示す図。 実施の形態1に係るシミュレーション装置の動作例を示すフローチャート図。 実施の形態1に係るシミュレーション装置のハードウェア構成例を示す図。
以下に、本発明に係るシミュレーション装置の実施の形態を図面に基づいて詳細に説明する。
なお、この実施の形態によりこの発明が限定されるものではない。
***構成の説明***
図1は、本実施の形態に係るシミュレーション装置1の利用環境の例を示す。
シミュレーション装置1は、接点や通信などのインタフェースを介して実機2及び他のシミュレーション装置3と接続される。
実機2は、シミュレーション装置1が模擬する装置である被模擬装置と通信を行う機器である。
実機2は、例えば、マイクロコンピュータである。
シミュレーション装置3は、シミュレーション装置1と同種のシミュレーション装置でもよいし、シミュレーション装置1と異なる種類のシミュレーション装置のいずれでもよい。
また、シミュレーション装置1は、ユーザ4とのユーザインタフェースを持つ。
シミュレーション装置1に接続される実機2の台数及び他のシミュレーション装置3の台数はそれぞれ1台でもよいし、それぞれ複数台でもよい。
また、シミュレーション装置1に実機2のみが接続され、シミュレーション装置3は接続されない構成でもよい。
また、ユーザ4が存在しなくてもよい。
シミュレーション装置1が、実機2、シミュレーション装置3、ユーザ4のいずれとも接続しない場合、すなわち、シミュレーション装置1が単独で動作することで所定の動作を実施する場合、本質的にシミュレーション装置1はその処理内容と時刻を外部と同期する必要はない。
たとえば、シミュレーション装置1がある熱源に対する室温の変化を模擬する場合、計算開始から実際の経過時間に合わせた形で計算した温度変化の情報を出力する必要はなく、目的とする時刻までの変化を可能な限り高速に計算し、出力することができる。
次に、シミュレーション装置1が実機2と接続される場合のシミュレーション装置1の動作を説明する。
シミュレーション装置1が実機2と通信する場合、通信が発生する期間はシミュレーション装置1と実機2との間で相互作用が生じるため、シミュレーション装置1の実行は実機2の状態に影響を受ける。
シミュレーション装置1が、現実の時間である実時間より高速に模擬動作を実施可能な演算処理能力を有する場合、相互作用を正しく模擬するためには、シミュレーション装置1は、何も処理しない時間であるアイドル時間を設けて実時間に同期する必要がある。
シミュレーション装置1をユーザ4が操作し、対話的に処理を進めるような場合にも、シミュレーション装置1が高速に動作するとユーザ4が正しく操作を行えない、表示内容を読み取れない、といった問題が発生する。
このため、シミュレーション装置1は、実時間に同期させるか、ユーザが操作可能な状態まで実行速度を遅くする必要がある。
従来のシミュレーション装置では、上記のような実時間との同期機能を持つ場合、シミュレーション装置の起動から実際に通信が開始され相互作用が発生するまでの期間においても、実時間に同期して計算が行われる。
シミュレーション装置と外部(実機2又はユーザ4に相当)との間の相互作用がない期間では実時間に同期する必要がないが、従来のシミュレーション装置では相互作用がない期間でも不必要に実時間と同期してシミュレーションを行う。
もしくは、このような相互作用がない期間におけるシミュレーションを高速化するためには、シミュレーション実施者が相互作用がない期間を個々に抽出し、当該期間においてシミュレーションを高速化させる設定を行う必要がある。
本実施の形態に係るシミュレーション装置1では、シミュレーション装置1内部の状態または実機2又はユーザ4というシミュレーション装置1の外部の状態を参照して相互作用の有無を判断する。
そして、本実施の形態に係るシミュレーション装置1は、相互作用がない状態と判断できる場合には無駄な待ち時間をなくして高速に動作する。
本実施の形態に係るシミュレーション装置1の機能構成例を図2に示す。
図2において、入出力制御部13は、実機2と通信を行う等により実機2の現在の状態を検出する。
また、入出力制御部13は、シミュレーション実行部12のシミュレーション結果を実機2に出力する。
内部状態特定部17は、シミュレーション装置1の内部状態を特定する。
例えば、内部状態特定部17は、シミュレーション装置1のCPU(Central Processing Unit)の使用状況、メモリの割当て状況、I/O(Input/Output)デバイスの稼動状況、変数の値、ポインタの参照先、プログラムカウンタの値、フラグの値、タイマの値、分岐命令の分岐先、OS(Operating System)の状態等の情報を収集して、シミュレーション装置1の内部状態を特定する。
記憶部16は、シミュレーション条件情報を記憶する。
シミュレーション条件情報には、同期シミュレーション条件と非同期シミュレーション条件とが定義されている。
同期シミュレーション条件は、実時間に同期させたシミュレーションである同期シミュレーションを行うための条件である。
同期シミュレーション条件には、相互作用がある状態が記述される。
非同期シミュレーション条件は、実時間と非同期のシミュレーションである非同期シミュレーションを行うための条件である。
非同期シミュレーション条件には、相互作用がない状態が記述される。
シミュレーション条件情報では、同期シミュレーション条件と非同期シミュレーション条件とが、シミュレーション装置1の内部状態、シミュレーション結果を利用する外部装置の状態、シミュレーション装置1のユーザインタフェースの状態の少なくともずれかに関連づけて定義されている。
シミュレーション装置1の内部状態及びユーザインタフェースの状態は、内部状態特定部17により特定され、外部装置の状態は入出力制御部13により特定される。
非同期シミュレーション条件としては、例えば、外部装置が初期化中であり、外部装置がシミュレーション装置1と通信を行うことができないない状態であるという条件が想定される。
また、入出力制御部13が管理している通信ポート15に外部装置が接続されていない状態であるという条件が想定される。
更に、ユーザインタフェースが非表示や無効状態になっているという条件、シミュレーション装置1の内部の時計が特定の時刻であるという条件、通信ポート15に外部装置が接続されているが、外部装置からデータを受信していないという条件等が想定される。
また、同期シミュレーション条件としては、非同期シミュレーション条件に記述される状態になっていないという条件が想定される。
なお、シミュレーション条件情報には、同期シミュレーション条件及び非同期シミュレーション条件のいずれか一方のみが記述されるようにしてもよい。
シミュレーション条件情報に同期シミュレーション条件のみが記述されている場合は、同期シミュレーション条件に該当しない状態が非同期シミュレーション条件にあたる。
一方、シミュレーション条件情報に非同期シミュレーション条件のみが記述されている場合は、非同期シミュレーション条件に該当しない状態が同期シミュレーション条件にあたる。
このように、シミュレーション条件情報では、同期シミュレーション条件のみが記述されている場合でも非同期シミュレーション条件が定義されていることになる。
同様に、非同期シミュレーション条件のみが記述されている場合でも同期シミュレーション条件が定義されていることになる。
条件判定部14は、シミュレーション条件情報を参照して、同期シミュレーション条件及び非同期シミュレーション条件のいずれが成立しているかを判定する。
より具体的には、同期シミュレーション条件と非同期シミュレーション条件とがシミュレーション装置1の内部状態に関連づけて定義されている場合に、条件判定部14は、シミュレーション装置1の現在の内部状態を解析して、同期シミュレーション条件及び非同期シミュレーション条件のいずれが成立しているかを判定する。
また、同期シミュレーション条件と非同期シミュレーション条件とが、外部装置の状態に関連づけて定義されている場合は、条件判定部14は、外部装置である実機2の現在の状態を解析して、同期シミュレーション条件及び非同期シミュレーション条件のいずれが成立しているかを判定する。
また、同期シミュレーション条件と非同期シミュレーション条件とが、シミュレーション装置1のユーザインタフェースの状態に関連づけて定義されている場合は、条件判定部14は、ユーザインタフェースの現在の状態を解析して、同期シミュレーション条件及び非同期シミュレーション条件のいずれが成立しているかを判定する。
なお、条件判定部14により行われる処理は条件判定ステップに相当する。
シミュレーション実行部12は、条件判定部14により同期シミュレーション条件が成立していると判定された場合に、同期シミュレーションを行う。
一方、条件判定部14により非同期シミュレーション条件が成立していると判定された場合に、シミュレーション実行部12は、非同期シミュレーションを行う。
シミュレーション実行部12は、後述の調速部11の制御に基づき、計算時間を短縮させる計算方法を用いて、非同期シミュレーションを行うことができる。
また、シミュレーション実行部12は、調速部11の制御に基づき、計算量を減少させる計算方法を用いて、非同期シミュレーションを行うことができる。
なお、シミュレーション実行部12により行われる処理はシミュレーション実行ステップに相当する。
調速部11は、実時間に同期するための方法を制御する。
つまり、調速部11は、シミュレーション装置1の内部時間と実時間をどのように同期させるかを管理している。
前述したように、調速部11は、計算時間を短縮させる計算方法を指定し、シミュレーション実行部12に、指定した計算方法での非同期シミュレーションを行わせることができる。
また、調速部11は、計算量を減少させる計算方法を指定し、シミュレーション実行部12に、指定した計算方法での非同期シミュレーションを行わせることができる。
調速部11は、具体的には、以下に示す(1)〜(3)の方法のいずれか又は(1)〜(3)の方法を組み合わせて、非同期シミュレーションの計算時間の短縮又は計算量の減少を図る。
(1)時刻を同期するためにシミュレーション実行部12に設定されている待ち時間を減らす。
(2)計算精度が低くなる代わりに計算量が減るアルゴリズムや計算条件を採用してシミュレーション実行部12の計算量を減らす。
例えば、実数演算の精度を落とす、1/1000秒単位で実施していた計算を1秒単位で行う、予め計算しておいた「相互作用を開始する直前の状態」を適用する、といった方法を採用する。
(3)ハードウェア資源を一時的に増加して処理能力を向上する。
例えば、CPUのオーバークロックや、OSによるタスク処理割り当て時間を増加(模擬演算処理の優先度を上げる)させることで単位時間あたりの計算量を増やす方法がある。
***動作の説明***
次に、図4を参照して、本実施の形態に係るシミュレーション装置1の動作例を説明する。
なお、図4に示す処理手順は、シミュレーション方法及びシミュレーションプログラムの例に相当する。
まず、条件判定部14が現在の状態を取得する(S401)。
具体的には、条件判定部14は、シミュレーション装置1の内部の状態及びユーザインタフェースの状態を内部状態特定部17から取得し、外部装置の状態を入出力制御部13から取得する。
次に、条件判定部14は、シミュレーション条件情報の同期シミュレーション条件及び非同期シミュレーション条件と、S401で取得した現在の状態とを照合する(S402)。
そして、条件判定部14は、同期シミュレーション条件及び非同期シミュレーション条件のいずれが成立しているかを判定する(S403)。
そして、同期シミュレーション条件が成立している場合は、シミュレーション実行部12が同期シミュレーションを行う(S404)。
一方、非同期シミュレーション条件が成立している場合は、シミュレーション実行部12は、非同期シミュレーションを行う(S405)。
より具体的には、条件判定部14がS403の判定結果を調速部11に出力する。
条件判定部14により同期シミュレーション条件が成立していると判定された場合は、調速部11は、実機2と同期をとるための待ち時間を指定して、シミュレーション実行部12にシミュレーションの実行を指示する。
この結果、シミュレーション実行部12では、同期シミュレーションが行われる。
一方、条件判定部14により非同期シミュレーション条件が成立していると判定された場合は、調速部11は、計算時間を短縮させる計算方法や計算量を減少させる計算方法(上記の(1)〜(3)等の方法)を指定して、シミュレーション実行部12にシミュレーションの実行を指示する。
この結果、シミュレーション実行部12では、非同期シミュレーションが行われる。
シミュレーション装置1では、以上のS401〜S405の処理が繰り返される。
本実施の形態に係るシミュレーション装置1では、図3に示すように非同期シミュレーションが行われることによりシミュレーションが高速化される。
図3では、シミュレーション装置1が動作を模擬する被模擬装置では初期化処理に時間Tを要する。
初期化期間では、被模装置と実機2との間では通信が行われず相互作用が発生しない。
シミュレーション装置1では、初期化処理を非同期シミュレーションにより時間Tで完了させることができる。
このため、シミュレーション装置1は、初期化処理を(T−T)の時間分短縮することができる。
なお、本実施の形態に係るシミュレーション装置1に、同種のシミュレーション装置(以下、シミュレーション装置1Aという)が接続されている場合は、シミュレーション装置1及びシミュレーション装置1Aは相互に非同期シミュレーションによりシミュレーションを高速化することができる。
しかしながら、シミュレーション装置1が、外部装置がシミュレーション装置1Aであることを判別できないと、シミュレーション装置1Aの状態が同期シミュレーション条件に合致する場合には、「相互作用必要」と判断され、同期シミュレーションが実行されてしまう。
このため、条件判定部14に、接続されている外部装置が、シミュレーション装置1と同種のシミュレーション装置1Aであるかを判定する機能を設けるようにしてもよい。
例えば、条件判定部14は、入出力制御部13を介して外部装置との間で特定のメッセージが送受信できた場合には、外部装置がシミュレーション装置1Aであると判定する。
そして、外部装置がシミュレーション装置1Aであると判定できた場合には、シミュレーション実行部12は、シミュレーション装置1Aとの間で実時間から独立して高速にシミュレーションを行う(非同期シミュレーションを行う)。
この場合にも、シミュレーション実行部12は、計算時間を短縮させる計算方法や計算量を減少させる計算方法(上記の(1)〜(3)等の方法)にて、非同期シミュレーションを行うことができる。
シミュレーション装置1にシミュレーション装置1Aが接続されている場合にも、シミュレーション装置1とのシミュレーション装置1Aとの間で同期をとる必要がある場合がある。
このような場合には、シミュレーション装置1の調速部11とシミュレーション装置1Aの調速部11とが連携して時刻同期を行いながら、シミュレーション装置1のシミュレーション実行部12とシミュレーション装置1Aのシミュレーション実行部12が非同期シミュレーションを行う。
なお、シミュレーション装置1の調速部11とシミュレーション装置1Aの調速部11とで同期をとる時刻は、実時間上の時刻ではなくシミュレーション計算上の時刻である。
このようにすることで、シミュレーション装置1にシミュレーション装置1Aを接続した場合でも、最適な実行時間で模擬処理を完了することができる。
***実施の形態の効果***
以上のように、本実施の形態では、シミュレーション装置1は条件判定部14と調速部11の働きによりシミュレーション実行部12の実行時間を短縮し、シミュレーション装置1の初期化時間の短縮によって動作完了までの待ち時間を削減することができる。
また、シミュレーション装置1がPC上のプログラムとして存在する場合、シミュレーション装置1が使用するハードウェアリソース(CPU計算量)を削減することで、同一PC上で実行される他のプログラムを優先的に動作させることも可能である。
この目的で前記(2)の方式を用いて実時間との同期を維持したまま計算量を減らすことも可能である。
以上のように、本実施の形態に係るシミュレーション装置1は、制御ソフトウェア等の開発における接続試験に有用であり、特に模擬対象の装置やシステムが初期化等で長大な待ち時間を要する場合に効果を奏する。
***ハードウェア構成の説明***
最後に、シミュレーション装置1のハードウェア構成例を図5を参照して説明する。
シミュレーション装置1はコンピュータである。
シミュレーション装置1は、プロセッサ901、補助記憶装置902、メモリ903、通信装置904、入力インタフェース905、ディスプレイインタフェース906といったハードウェアを備える。
プロセッサ901は、信号線910を介して他のハードウェアと接続され、これら他のハードウェアを制御する。
入力インタフェース905は、入力装置907に接続されている。
ディスプレイインタフェース906は、ディスプレイ908に接続されている。
プロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ901は、例えば、CPU、DSP(Digital Signal Processor)である。
補助記憶装置902は、例えば、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)である。
メモリ903は、例えば、RAM(Random Access Memory)である。
記憶部16は、補助記憶装置902又はメモリ903により実現される。
通信装置904は、データを受信するレシーバー9041及びデータを送信するトランスミッター9042を含む。
通信装置904は、例えば、通信チップ又はNIC(Network Interface Card)である。
通信装置904に通信ポート15が含まれる。
入力インタフェース905は、入力装置907のケーブル911が接続されるポートである。
ディスプレイインタフェース906は、ディスプレイ908のケーブル912が接続されるポートである。
入力装置907は、例えば、マウス、キーボード又はタッチパネルである。
ディスプレイ908は、例えば、LCD(Liquid Crystal Display)である。
補助記憶装置902には、図2に示す調速部11、シミュレーション実行部12、入出力制御部13、条件判定部14及び内部状態特定部17(以下、調速部11、シミュレーション実行部12、入出力制御部13、条件判定部14及び内部状態特定部17をまとめて「部」と表記する)の機能を実現するプログラムが記憶されている。
このプログラムは、メモリ903にロードされ、プロセッサ901に読み込まれ、プロセッサ901によって実行される。
更に、補助記憶装置902には、OSも記憶されている。
そして、OSの少なくとも一部がメモリ903にロードされ、プロセッサ901はOSを実行しながら、「部」の機能を実現するプログラムを実行する。
図5では、1つのプロセッサ901が図示されているが、シミュレーション装置1が複数のプロセッサ901を備えていてもよい。
そして、複数のプロセッサ901が「部」の機能を実現するプログラムを連携して実行してもよい。
また、「部」の処理の結果を示す情報やデータや信号値や変数値が、メモリ903、補助記憶装置902、又は、プロセッサ901内のレジスタ又はキャッシュメモリに記憶される。
また、「部」を「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
「回路」は、プロセッサ901だけでなく、ロジックIC又はGA(Gate Array)又はASIC(Application Specific Integrated Circuit)又はFPGA(Field−Programmable Gate Array)といった他の種類の処理回路をも包含する概念である。
1 シミュレーション装置、2 実機、3 シミュレーション装置、4 ユーザ、11 調速部、12 シミュレーション実行部、13 入出力制御部、14 条件判定部、15 通信ポート、16 記憶部、17 内部状態特定部。

Claims (10)

  1. 実時間に同期させたシミュレーションである同期シミュレーションを行うための条件である同期シミュレーション条件と、実時間と非同期のシミュレーションである非同期シミュレーションを行うための条件である非同期シミュレーション条件とが定義されるシミュレーション条件情報を記憶する記憶部と、
    前記シミュレーション条件情報を参照して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する条件判定部と、
    前記条件判定部により前記同期シミュレーション条件が成立していると判定された場合に、前記同期シミュレーションを行い、前記条件判定部により前記非同期シミュレーション条件が成立していると判定された場合に、前記非同期シミュレーションを行うシミュレーション実行部とを有するシミュレーション装置。
  2. 前記記憶部は、
    前記同期シミュレーション条件と前記非同期シミュレーション条件とが、前記シミュレーション装置の内部状態に関連づけて定義されているシミュレーション条件情報を記憶し、
    前記条件判定部は、
    前記シミュレーション装置の現在の内部状態を解析して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する請求項1に記載のシミュレーション装置。
  3. 前記記憶部は、
    前記同期シミュレーション条件と前記非同期シミュレーション条件とが、前記シミュレーション実行部のシミュレーション結果を利用する外部装置の状態に関連づけて定義されているシミュレーション条件情報を記憶し、
    前記条件判定部は、
    前記外部装置の現在の状態を解析して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する請求項1に記載のシミュレーション装置。
  4. 前記記憶部は、
    前記同期シミュレーション条件と前記非同期シミュレーション条件とが、前記シミュレーション装置のユーザインタフェースの状態に関連づけて定義されているシミュレーション条件情報を記憶し、
    前記条件判定部は、
    前記ユーザインタフェースの現在の状態を解析して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する請求項1に記載のシミュレーション装置。
  5. 前記シミュレーション実行部は、
    計算時間を短縮させる計算方法を用いて、前記非同期シミュレーションを行う請求項1に記載のシミュレーション装置。
  6. 前記シミュレーション実行部は、
    計算量を減少させる計算方法を用いて、前記非同期シミュレーションを行う請求項1に記載のシミュレーション装置。
  7. 前記シミュレーション実行部は、
    外部のシミュレーション装置と同期しながら前記非同期シミュレーションを行う請求項1に記載のシミュレーション装置。
  8. 前記シミュレーション実行部は、
    計算時間を短縮させる計算方法及び計算量を減少させる計算方法の少なくともいずれかを用いて、前記外部のシミュレーション装置と同期しながら前記非同期シミュレーションを行う請求項7に記載のシミュレーション装置。
  9. 実時間に同期させたシミュレーションである同期シミュレーションを行うための条件である同期シミュレーション条件と、実時間と非同期のシミュレーションである非同期シミュレーションを行うための条件である非同期シミュレーション条件とが定義されるシミュレーション条件情報を記憶するコンピュータが、前記シミュレーション条件情報を参照して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する条件判定ステップと、
    前記コンピュータが、前記条件判定ステップにより前記同期シミュレーション条件が成立していると判定された場合に、前記同期シミュレーションを行い、前記条件判定ステップにより前記非同期シミュレーション条件が成立していると判定された場合に、前記非同期シミュレーションを行うシミュレーション実行ステップとを有するシミュレーション方法。
  10. 実時間に同期させたシミュレーションである同期シミュレーションを行うための条件である同期シミュレーション条件と、実時間と非同期のシミュレーションである非同期シミュレーションを行うための条件である非同期シミュレーション条件とが定義されるシミュレーション条件情報を記憶するコンピュータに、
    前記シミュレーション条件情報を参照して、前記同期シミュレーション条件及び前記非同期シミュレーション条件のいずれが成立しているかを判定する条件判定ステップと、
    前記条件判定ステップにより前記同期シミュレーション条件が成立していると判定された場合に、前記同期シミュレーションを行い、前記条件判定ステップにより前記非同期シミュレーション条件が成立していると判定された場合に、前記非同期シミュレーションを行うシミュレーション実行ステップとを実行させるシミュレーションプログラム。
JP2015141119A 2015-07-15 2015-07-15 シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム Active JP6664158B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015141119A JP6664158B2 (ja) 2015-07-15 2015-07-15 シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015141119A JP6664158B2 (ja) 2015-07-15 2015-07-15 シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム

Publications (2)

Publication Number Publication Date
JP2017021743A true JP2017021743A (ja) 2017-01-26
JP6664158B2 JP6664158B2 (ja) 2020-03-13

Family

ID=57890121

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015141119A Active JP6664158B2 (ja) 2015-07-15 2015-07-15 シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム

Country Status (1)

Country Link
JP (1) JP6664158B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328905A (ja) * 1995-06-06 1996-12-13 Nec Corp シミュレーション方法および装置
JP2001501343A (ja) * 1996-10-01 2001-01-30 ハネウエル・インコーポレーテッド 実時間プロセス制御システムの論理ブロック・パターンを通る信号フローをシミュレートするためのシステムおよび方法
JP2007328548A (ja) * 2006-06-07 2007-12-20 Canon Inc シミュレータ装置、シミュレーション方法およびコンピュータプログラム
JP2008065640A (ja) * 2006-09-07 2008-03-21 Toshiba Corp シミュレーション装置およびそのシミュレーション制御方法
JP2010097406A (ja) * 2008-10-16 2010-04-30 Fujitsu Ten Ltd シミュレーションシステム
JP2013196245A (ja) * 2012-03-19 2013-09-30 Renesas Electronics Corp シミュレーション方法、シミュレーション装置及びシミュレーションプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08328905A (ja) * 1995-06-06 1996-12-13 Nec Corp シミュレーション方法および装置
JP2001501343A (ja) * 1996-10-01 2001-01-30 ハネウエル・インコーポレーテッド 実時間プロセス制御システムの論理ブロック・パターンを通る信号フローをシミュレートするためのシステムおよび方法
JP2007328548A (ja) * 2006-06-07 2007-12-20 Canon Inc シミュレータ装置、シミュレーション方法およびコンピュータプログラム
JP2008065640A (ja) * 2006-09-07 2008-03-21 Toshiba Corp シミュレーション装置およびそのシミュレーション制御方法
JP2010097406A (ja) * 2008-10-16 2010-04-30 Fujitsu Ten Ltd シミュレーションシステム
JP2013196245A (ja) * 2012-03-19 2013-09-30 Renesas Electronics Corp シミュレーション方法、シミュレーション装置及びシミュレーションプログラム

Also Published As

Publication number Publication date
JP6664158B2 (ja) 2020-03-13

Similar Documents

Publication Publication Date Title
US10360322B2 (en) Simulation of virtual processors
CN109324962B (zh) 一种基于云物联技术的应用程序的测试方法及设备
CN103853516B (zh) 一种电子设备及切换方法
JP2011134275A (ja) スケジューラプログラム、分散シミュレーションシステム及びスケジューラ装置
JP2017084082A (ja) シミュレーション装置、試験シナリオファイル作成方法、及び試験シナリオファイルを用いた試験方法
JP2009003683A (ja) ソフトウェア実行装置および協調動作方法
US20130257479A1 (en) Preventing a-b-a race in a latch-based device
US20180143890A1 (en) Simulation apparatus, simulation method, and computer readable medium
US10929584B1 (en) Environmental modification testing for design correctness with formal verification
US11106478B2 (en) Simulation device, simulation method, and computer readable medium
US11054915B2 (en) Locally implemented terminal latency mitigation
JP6664158B2 (ja) シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム
JP2004070457A (ja) シミュレーション用カバレッジ算出装置及びシミュレーション用カバレッジ算出方法
US20190005167A1 (en) Method for Synchronizing a Plurality of Simulations
JP2019179284A (ja) シミュレーションシステム、及びシミュレーションプログラム
JP6223637B2 (ja) シミュレーション装置及びシミュレーション方法及びシミュレーションプログラム
WO2020138386A1 (ja) 以前のトレースデータを使用する協調シミュレーションリピータ
US10684862B2 (en) Processor synthesis device, processor synthesis method, and computer readable medium
JP4205525B2 (ja) 並列シミュレーション装置および並列シミュレーション方法
JP5709913B2 (ja) 時空管理装置及び時空管理プログラム
EP3961389A1 (en) Virtual machine for developing and testing target code for hardware designs
JP6949440B2 (ja) ベクタ生成装置及びベクタ生成用プログラム
US10503503B2 (en) Generating design structure for microprocessor with arithmetic logic units and an efficiency logic unit
CN109522057A (zh) 一种设备启动方法及设备
US9208282B1 (en) Enabling IP execution on a simulation execution platform

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190604

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191001

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: 20200121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200218

R150 Certificate of patent or registration of utility model

Ref document number: 6664158

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250