JP2009223762A - Cooperation verification device - Google Patents
Cooperation verification device Download PDFInfo
- Publication number
- JP2009223762A JP2009223762A JP2008069433A JP2008069433A JP2009223762A JP 2009223762 A JP2009223762 A JP 2009223762A JP 2008069433 A JP2008069433 A JP 2008069433A JP 2008069433 A JP2008069433 A JP 2008069433A JP 2009223762 A JP2009223762 A JP 2009223762A
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- emulation
- circuit
- module
- emulator
- 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.)
- Withdrawn
Links
Images
Abstract
Description
本発明は、協調検証装置に関し、特に、システムLSIを検証するための協調検証装置に関する。 The present invention relates to a cooperative verification apparatus, and more particularly to a cooperative verification apparatus for verifying a system LSI.
一般的な検証装置として、RTL(Register Transfer Level)シミュレーションを行うRTLシミュレータと、FPGA(Field Programmable Gate Array)エミュレーションを行うFPGAエミュレータが知られている。 As a general verification device, an RTL simulator that performs RTL (Register Transfer Level) simulation and an FPGA emulator that performs Field Programmable Gate Array (FPGA) emulation are known.
近年では、RTLシミュレーションを行うシミュレータとFPGAエミュレーションを行うエミュレータとが協調的に動作する協調検証装置が知られている。 In recent years, a cooperative verification apparatus is known in which a simulator that performs RTL simulation and an emulator that performs FPGA emulation operate cooperatively.
従来の協調検証装置では、初めに、検証対象回路のモジュールがRTLシミュレーションの対象となるRTLモジュールとFPGAエミュレーションの対象となるFPGAモジュールに分割された後に協調検証処理が実行される。 In the conventional collaborative verification apparatus, first, after the module of the circuit to be verified is divided into the RTL module that is the target of RTL simulation and the FPGA module that is the target of FPGA emulation, the collaborative verification process is executed.
このような協調検証環境において、RTLシミュレータは、フリップフロップ(以下、「FF」という)や信号などの内部状態を自由に観測するようなシミュレーションを実行することができるが、FPGAエミュレータに比べて処理速度が遅く、RTLモジュールが多くなるほど協調検証装置の処理速度が低下する。 In such a collaborative verification environment, the RTL simulator can execute a simulation such as observing an internal state of a flip-flop (hereinafter referred to as “FF”) or a signal freely. The processing speed of the collaborative verification device decreases as the speed decreases and the number of RTL modules increases.
一方、FPGAエミュレータは、高速なエミュレーションを実行することができるが、FFや信号などの内部状態を観測することができないので、内部状態の観測が求められているモジュールはRTLモジュールとなるように分割される。しかし、従来の協調検証装置では、初めにモジュールが分割された後の協調検証動作の実行中にRTLモジュールとFPGAモジュールの構成を動的に変更することはできないので、ある検証処理において正常動作が確認されたRTLモジュールは、別のモジュールの検証処理においてもRTLモジュールとして検証される。その結果、正常なモジュールについてもRTLシミュレーションを行うことになるので、協調検証装置の処理速度が低下する。 On the other hand, the FPGA emulator can execute high-speed emulation, but cannot observe internal states such as FFs and signals. Therefore, the module that is required to observe the internal state is divided into RTL modules. Is done. However, in the conventional collaborative verification apparatus, the configuration of the RTL module and the FPGA module cannot be dynamically changed during the execution of the collaborative verification operation after the module is first divided. The confirmed RTL module is verified as an RTL module in the verification process of another module. As a result, RTL simulation is also performed for normal modules, so that the processing speed of the collaborative verification device decreases.
また、上記のような協調検証環境では、各モジュールの開発担当者毎に異なるモジュール構成の検証環境を提供することは困難である。 Further, in the cooperative verification environment as described above, it is difficult to provide a verification environment having a different module configuration for each person in charge of developing each module.
特許文献1は、ハードウェアシミュレータとソフトウェアシミュレータのモジュール構成を静的に変更し、サイクルレベルと動作レベルの切り替えを行う技術について開示している。
しかし、特許文献1の技術は、RTLシミュレータとFPGAエミュレータの間のモジュール構成を動的に変更することはできない。
However, the technique of
特許文献2は、エミュレータ上のCPUと命令セットシミュレータ(以下、「ISS」という)が設けられ、CPUの高速実行はエミュレータによって行われ、デバッグはISSのソフトウェアデバッガによって行われる技術について開示している。
しかし、特許文献2の技術は、CPUのみを切り替えるので、任意のモジュールを切り替えることはできない。また、その目的もソフトウェアデバッグの効率化に過ぎない。
本発明の目的は、協調検証装置の処理速度を向上させることである。 An object of the present invention is to improve the processing speed of the cooperative verification apparatus.
本発明の第1態様によれば、シミュレーションプログラム、検証対象回路であるシミュレーション回路、前記シミュレーション回路及び検証対象回路であるエミュレーション回路の変更条件が記述された条件ファイル並びに前記シミュレーション回路及び前記エミュレーション回路の変更内容が記述された設定ファイルを記憶する記憶部と、
前記シミュレーションプログラムを起動することによって、検証対象回路の全ての情報を有し、有効なモジュールのシミュレーションを行うシミュレータを実現するプロセッサと、
検証対象回路の全ての情報を有し、有効なモジュールのエミュレーションを行うエミュレータと、
前記シミュレータと前記エミュレータとの間でトランザクションを転送するトランザクタと、
前記条件ファイルの変更条件が成立した場合に、前記設定ファイルの設定内容に基づいて、前記シミュレータのシミュレーション結果を前記エミュレータへ転送し、前記エミュレータのエミュレーション結果を前記シミュレータへ転送する転送部と、を備え、
前記シミュレータは、前記条件ファイルの変更条件が成立した場合にシミュレーションを中断し、前記設定ファイルの設定内容に基づいて、前記シミュレーション回路の構成の変更を指示するシミュレーション制御部を更に有し、
前記エミュレータは、前記条件ファイルの変更条件が成立した場合にエミュレーションを中断し、前記設定ファイルの設定内容に基づいて、前記エミュレーション回路の構成の変更を指示するエミュレーション制御部を更に有することを特徴とする協調検証装置が提供される。
According to the first aspect of the present invention, a simulation program, a simulation circuit that is a circuit to be verified, a condition file that describes conditions for changing the simulation circuit and an emulation circuit that is a circuit to be verified, and the simulation circuit and the emulation circuit A storage unit for storing a setting file in which changes are described;
A processor for realizing a simulator for simulating an effective module having all information of the circuit to be verified by activating the simulation program;
An emulator that has all the information of the circuit to be verified and emulates a valid module;
A transactor for transferring transactions between the simulator and the emulator;
A transfer unit for transferring the simulation result of the simulator to the emulator and transferring the emulation result of the emulator to the simulator based on the setting contents of the setting file when a condition for changing the condition file is satisfied; Prepared,
The simulator further includes a simulation control unit that interrupts the simulation when a condition for changing the condition file is satisfied, and instructs the change of the configuration of the simulation circuit based on the setting content of the setting file,
The emulator further includes an emulation control unit that interrupts the emulation when the condition file change condition is satisfied, and instructs the change of the configuration of the emulation circuit based on the setting contents of the setting file. A collaborative verification device is provided.
本発明によれば、協調検証装置の処理速度を向上させることができる。 According to the present invention, the processing speed of the cooperative verification apparatus can be improved.
以下、本発明の実施例について図面を参照して説明する。なお、以下の実施例は、本発明の実施の一形態であって、本発明の範囲を限定するものではない。 Embodiments of the present invention will be described below with reference to the drawings. The following examples are one embodiment of the present invention and do not limit the scope of the present invention.
はじめに、本発明の実施例1について説明する。 First, Example 1 of the present invention will be described.
図1は、本発明の実施例1に係る協調検証装置100の構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of a
本発明の実施例1に係る協調検証装置100は、記憶部110、プロセッサ120、エミュレータ140、トランザクタ150及び転送部160を備えている。
The
記憶部110は、シミュレーションプログラム111、条件ファイル112、設定ファイル113及び検証対象回路データ114を記憶する。
The
シミュレーションプログラム111は、シミュレータ130を実現するためのアプリケーションプログラムである。
The simulation program 111 is an application program for realizing the
条件ファイル112は、後述のシミュレーション回路131及び後述のエミュレーション回路141のモジュールの有効/無効を切り替える条件(以下、「変更条件」という)が記述されたファイルである。
The
設定ファイル113は、後述のシミュレーション回路131及び後述のエミュレーション回路141のモジュールの有効/無効を切り替える内容(以下、「設定内容」という)が記述されたファイルである。
The
検証対象回路データ114は、シミュレータ130の検証対象回路であるシミュレーション回路131が記述されたデータである。例えば、検証対象回路データ114は、RTL記述のデータである。
The verification
プロセッサ120は、記憶部110に記憶されたシミュレーションプログラム111を起動することによって、シミュレータ130を実現する。
The
シミュレータ130は、後述のシミュレーション回路131の全ての情報を有し、有効なモジュールのシミュレーションを行う。例えば、シミュレータ130は、RTL(Register Transfer Level)シミュレータである。
The
エミュレータ140は、後述のエミュレーション回路141の全ての情報を有し、有効なモジュールのエミュレーションを行う。例えば、エミュレータ140は、FPGA(Field Programmable Gate Array)エミュレータである。
The
トランザクタ150は、シミュレータ130とエミュレータ140との間でトランザクションを生成し、転送する。トランザクションは、後述のシミュレーション回路131と後述のエミュレーション回路141の間で同期を取るための情報であり、バスアクセス情報を含んでも良い。
The
転送部160は、条件ファイル112の変更条件が成立した場合に、設定ファイル113の設定内容に基づいて、シミュレータ130のシミュレーション結果をエミュレータ140へ転送し、エミュレータ140のエミュレーション結果をシミュレータ130へ転送する。転送部160は、条件ファイル112の変更条件が成立し、後述のシミュレーション回路131及び後述のエミュレーション回路141のモジュールの有効/無効が切り替わるときに、シミュレータ130の無効となったモジュールのフリップフロップ(以下、「FF」という)、信号などの内部情報及び実行したクロック数などのシミュレーション結果をエミュレータ140に転送してエミュレーション回路141の当該モジュールを有効にし、エミュレータ140の無効となったモジュールのFF、信号などの内部情報及び実行したクロック数などのエミュレーション結果をシミュレータ130に転送してシミュレーション回路131の当該モジュールを有効にする。
The
なお、本発明の実施例1では、トランザクタ150及び転送部160は、シミュレータ130及びエミュレータ140に共有されるモジュールである。
In the first embodiment of the present invention, the
図2は、本発明の実施例1に係るシミュレータ130及びエミュレータ140の構成を示すブロック図である。
FIG. 2 is a block diagram illustrating configurations of the
シミュレータ130は、シミュレーション回路131、シミュレーション制御部132及びシミュレーションブリッジ133を備えている。例えば、シミュレータ130は、RTLシミュレータである。
The
シミュレーション回路131は、複数のシミュレーション対象モジュール(CPU、メモリ、メディアプロセッサM1,M2、ハードウェア(以下、「HW」という))から構成されるRTLモデルの検証対象回路である。
The
シミュレーション制御部132は、シミュレーション回路131について条件ファイル112の変更条件が成立するか否かを監視し、変更条件が成立した場合には、シミュレーションを中断し、設定ファイル113の設定内容に基づいてシミュレーション回路131の構成を変更するために、モジュールの有効/無効の切り替えを指示する。
The
シミュレーションブリッジ133は、シミュレーション回路131のモジュールの有効/無効を管理し、シミュレーション回路131の有効なモジュールから出力されたバスアクセスがシミュレータ130の内部のモジュールに対するものか又は外部のモジュールに対するもの(すなわち、エミュレータ140に対するアクセス)かを判断し、内部のものである場合には内部モジュールにアクセスし、外部のものである場合にはエミュレータ140へのトランザクションを転送するようにトランザクタ150に指示する。
The
エミュレータ140は、エミュレーション回路141、エミュレーション制御部142及びエミュレーションブリッジ143を備えている。例えば、エミュレータ140は、FPGAエミュレータである。
The
エミュレーション回路141は、シミュレーション回路131と同一の複数のエミュレーション対象モジュール(CPU、メモリ、メディアプロセッサM1,M2、HW)から構成されるFPGAデザインの検証対象回路である。
The
エミュレーション制御部142は、エミュレーション回路141について条件ファイル112の変更条件が成立するか否かを監視し、変更条件が成立した場合には、エミュレーションを中断し、設定ファイル113の設定内容に基づいてエミュレーション回路141の構成を変更するために、モジュールの有効/無効の切り替えを指示する。
The
エミュレーションブリッジ143は、エミュレーション回路141のモジュールの有効/無効を管理し、エミュレーション回路141の有効なモジュールから出力されたバスアクセスがエミュレータ140の内部のモジュールに対するものか又は外部のモジュールに対するもの(すなわち、シミュレータ130に対するアクセス)かを判断し、内部のものである場合には内部モジュールにアクセスし、外部のものである場合にはシミュレータ130へのトランザクションを転送するようにトランザクタ150に指示する。
The
図3は、条件ファイル112の変更条件の一例を示す概略図である。
FIG. 3 is a schematic diagram illustrating an example of a change condition of the
図3の条件ファイル112の変更条件は、時間1000ns経過したとき、信号Aが0になったとき及びCPUのプログラムカウンタの値PCが“0x80020000”になったときに、モジュールの有効/無効を切り替えることを示す。
The change condition of the
図4は、設定ファイル113の設定内容の一例を示す概略図である。
FIG. 4 is a schematic diagram illustrating an example of setting contents of the
図4の設定ファイル113の設定内容は、初期状態(0ns)において、シミュレーション回路131のモジュールの全てを無効とし、エミュレーション回路141のモジュールの全てを有効とし、シミュレーション実行後の状態(1000ns)において、シミュレーション回路131のCPU及びHWを有効とし、エミュレーション回路141のCPU及びHWを無効とすることを示す。また、図4の設定ファイル113の設定内容は、信号Aが0になったとき又はPCが“0x80020000”になったときのシミュレーション回路131及びエミュレーション回路141の有効/無効の設定がなされていることを示す。
The settings in the
図5は、本発明の実施例1に係る協調検証処理の処理手順を示すフローチャートである。 FIG. 5 is a flowchart illustrating the processing procedure of the cooperative verification processing according to the first embodiment of the present invention.
はじめに、シミュレーション制御部132によってシミュレーション回路131のシミュレーションの開始が指示され、エミュレーション制御部142によってエミュレーション回路141のエミュレーションの開始が指示されることによって、シミュレーション及びエミュレーションが始まる(S501)。このとき、シミュレーション制御部132は、シミュレーション回路131について、エミュレーション制御部142は、エミュレーション回路141について、それぞれ条件ファイル112の変更条件が成立するか否かを監視する。
First, the
条件ファイル112の変更条件が成立した場合には(S502−YES)、シミュレーション制御部132は、シミュレーションを中断し、エミュレーション制御部142は、エミュレーションを中断する(S503)。
When the condition for changing the
次に、転送部160は、設定ファイル113の設定内容に基づいて、S501のシミュレーション結果をエミュレータ140へ転送し、エミュレーション結果をシミュレータ130へ転送するモジュール実行状態転送を行う(S504)。例えば、転送されるシミュレーション結果やエミュレーション結果は、設定ファイル113の設定内容に示された有効なモジュール内の全てのFF、信号などの内部情報及び実行したクロック数である。
Next, based on the setting contents of the
モジュール実行状態転送が完了すると、設定ファイル113の設定内容に基づいてシミュレーション回路131の構成が変更され、エミュレーション回路141の構成が変更される(S505)。
When the module execution state transfer is completed, the configuration of the
その後、シミュレーション制御部132及びエミュレーション制御部142は、シミュレーション及びエミュレーションの実行を再開する(S506)。
Thereafter, the
S501〜S506は、協調検証処理が終了するまで繰り返される(S507−NO)。協調検証処理は、例えば、シミュレーションがある規定の時刻を経過したとき又は図示されないキーボード又はマウスなどの入力デバイスからユーザの終了指示が受け付けられたときに終了する。 S501 to S506 are repeated until the cooperative verification process is completed (S507-NO). The collaborative verification process ends, for example, when a predetermined time has passed or when a user's end instruction is received from an input device such as a keyboard or a mouse (not shown).
図6は、協調検証処理の概略を示すシーケンス図である。 FIG. 6 is a sequence diagram illustrating an outline of the cooperative verification process.
図6は、シミュレーション回路131のモジュールが全て無効であって、エミュレーション回路141のモジュールが全て有効であるような初期状態から協調検証が始まり、条件ファイル112の変更条件が時刻N(Nサイクル目)にモジュールの有効/無効を切り替える様子を示し、設定ファイル113の設定内容がシミュレーション回路131のCPU及びHWを有効とし、エミュレーション回路141のメモリ及びメディアプロセッサM1,M2を有効とすることを示す場合の例である。
FIG. 6 shows that collaborative verification starts from an initial state in which all modules of the
時刻0〜Nでは、図7に示されるように、シミュレーション回路131の全てのモジュールが無効であり、エミュレーション回路141の全てのモジュールが有効であるので、エミュレーション回路141の全てのモジュールについてエミュレーションが実行される。
At
時刻Nでは、エミュレーション制御部142によってエミュレーションが中断され、転送部160によってモジュール実行状態転送が行われる。
At time N, the
図9は、モジュール実行状態転送において転送されるデータのデータ構造の一例を示す概略図である。 FIG. 9 is a schematic diagram illustrating an example of a data structure of data transferred in the module execution state transfer.
モジュール実行状態転送において転送されるデータは、モジュール情報及びクロック数を含む。モジュール情報は、モジュール名、階層名、FF名、信号名及びその値を含む。 Data transferred in the module execution state transfer includes module information and the number of clocks. The module information includes a module name, a hierarchy name, an FF name, a signal name, and a value thereof.
モジュール実行状態転送が行われると、モジュールの有効/無効が切り替わり、図8に示されるように、エミュレーション回路141のCPU及びHWが無効となり、シミュレーション回路131のCPU及びHWが有効となる。
When the module execution state transfer is performed, the validity / invalidity of the module is switched, and as shown in FIG. 8, the CPU and HW of the
モジュール実行状態転送及びモジュールの有効/無効が切り替わった後は、協調動作が再開される。シミュレーション制御部132及びエミュレーション制御部142は、図10に示されたように、トランザクタ150によって転送されたトランザクションに基づいて同期を取りながら協調動作を行う。
After the module execution state transfer and the module validity / invalidity are switched, the cooperative operation is resumed . As shown in FIG. 10, the
時刻N以降の協調動作では、シミュレーション回路131の有効なモジュールについてシミュレーションが実行される。シミュレーションが完了した後は、シミュレーションブリッジ133−トランザクタ150−エミュレーションブリッジ143というルートでトランザクションが転送される。その後、エミュレーション回路141の有効なモジュールについてエミュレーションが実行される。エミュレーションが完了した後は、エミュレーションブリッジ143−トランザクタ150−シミュレーションブリッジ133というルートでトランザクションが転送される。その後、再び、シミュレーション回路131についてシミュレーションが実行されるという処理が繰り返される。
In the cooperative operation after time N, a simulation is executed for an effective module of the
なお、トランザクタ150の同期方法は、1クロックに1トランザクションを生成する方法であっても良いし、他の方法であっても良い。
Note that the synchronization method of the
時刻N以降の協調動作では、シミュレーション制御部132及びエミュレーション制御部142は、条件ファイル112の変更条件が成立するか否かを監視する。シミュレーション制御部132及びエミュレーション制御部142は、変更条件が成立した場合には協調動作を中断させ、設定ファイル113の設定内容に基づいてシミュレーション回路131及びエミュレーション回路141のモジュールの有効/無効を切り替える。その際、転送部160は、エミュレーション回路141に対してシミュレーション結果を転送し、シミュレーション回路131に対してエミュレーション結果を転送する。その後、シミュレーション制御部132及びエミュレーション制御部142は、協調動作を再開する。
In the cooperative operation after time N, the
図11に示されるように、シミュレーション回路131の有効なモジュールであるCPUからエミュレーション回路141の有効なモジュールであるメモリに対してバスアクセスがある場合には、シュミレーションブリッジ133は、エミュレーション回路141のメモリが有効であるので、エミュレータ140へのトランザクションを転送するようにトランザクタ150へ指示する。トランザクタ150は、バスアクセス情報を載せたトランザクションを作成し、エミュレータ140へ送信する。エミュレーションブリッジ143は、トランザクタ150によって転送されたトランザクションを受け取り、エミュレーション回路141にバスアクセス情報を送信し、メモリにアクセスする。
As shown in FIG. 11, when there is a bus access from a CPU that is a valid module of the
図12に示されるように、シミュレーション回路131の有効なモジュールであるCPUからHWに対してバスアクセスがある場合には、シュミレーションブリッジ133は、シミュレーション回路131のHWが有効であるので、シミュレーション回路131へバスアクセスの内容を送信し、HWにアクセスする。
As shown in FIG. 12, when there is a bus access from the CPU, which is an effective module of the
本発明の実施例1によれば、シミュレータ130とエミュレータ140が協調動作を行う場合に、シミュレーション回路131のモジュールとエミュレーション回路141のモジュールの有効/無効を動的に変更できるため、状況に応じた回路構成による協調検証が可能となり、協調検証装置の処理速度を向上させることができる。
According to the first embodiment of the present invention, when the
また、本発明の実施例1によれば、モジュールの有効/無効を協調検証動作の実行中に動的に変更するので、協調検証装置の処理速度を向上させ且つ様々なモジュールのデバッグ環境を容易に構築することができる。 Further, according to the first embodiment of the present invention, the validity / invalidity of the module is dynamically changed during the execution of the collaborative verification operation, so that the processing speed of the collaborative verification apparatus is improved and various modules can be debugged easily. Can be built.
100 協調検証装置
110 記憶部
120 プロセッサ
130 シミュレータ
131 シミュレーション回路
132 シミュレーション制御部
133 シミュレーションブリッジ
140 エミュレータ
141 エミュレーション回路
142 エミュレーション制御部
143 エミュレーションブリッジ
150 トランザクタ
160 転送部
DESCRIPTION OF
Claims (5)
前記シミュレーションプログラムを起動することによって、検証対象回路の全ての情報を有し、有効なモジュールのシミュレーションを行うシミュレータを実現するプロセッサと、
検証対象回路の全ての情報を有し、有効なモジュールのエミュレーションを行うエミュレータと、
前記シミュレータと前記エミュレータとの間でトランザクションを転送するトランザクタと、
前記条件ファイルの変更条件が成立した場合に、前記設定ファイルの設定内容に基づいて、前記シミュレータのシミュレーション結果を前記エミュレータへ転送し、前記エミュレータのエミュレーション結果を前記シミュレータへ転送する転送部と、を備え、
前記シミュレータは、前記条件ファイルの変更条件が成立した場合にシミュレーションを中断し、前記設定ファイルの設定内容に基づいて、前記シミュレーション回路の構成の変更を指示するシミュレーション制御部を更に有し、
前記エミュレータは、前記条件ファイルの変更条件が成立した場合にエミュレーションを中断し、前記設定ファイルの設定内容に基づいて、前記エミュレーション回路の構成の変更を指示するエミュレーション制御部を更に有することを特徴とする協調検証装置。 A simulation program, a simulation circuit that is a circuit to be verified, a condition file that describes conditions for changing the simulation circuit and an emulation circuit that is a circuit to be verified, and a setting file that describes changes to the simulation circuit and the emulation circuit A storage unit
A processor for realizing a simulator for simulating an effective module having all information of the circuit to be verified by activating the simulation program;
An emulator that has all the information of the circuit to be verified and emulates a valid module;
A transactor for transferring transactions between the simulator and the emulator;
A transfer unit for transferring the simulation result of the simulator to the emulator and transferring the emulation result of the emulator to the simulator based on the setting contents of the setting file when a condition for changing the condition file is satisfied; Prepared,
The simulator further includes a simulation control unit that interrupts the simulation when a condition for changing the condition file is satisfied, and instructs the change of the configuration of the simulation circuit based on the setting content of the setting file,
The emulator further includes an emulation control unit that interrupts emulation when a condition for changing the condition file is satisfied, and instructs the change of the configuration of the emulation circuit based on the setting contents of the setting file. A collaborative verification device.
前記エミュレーション制御部は、エミュレーションの実行の途中で、前記条件ファイルの変更条件が成立した場合にエミュレーションを中断し、前記設定ファイルの設定内容に基づいて、前記エミュレーション回路を構成する各モジュールを有効又は無効に設定する請求項1又は2に記載の協調検証装置。 The simulation control unit interrupts the simulation when the condition file change condition is satisfied during the execution of the simulation, and enables or disables each module constituting the simulation circuit based on the setting contents of the setting file. Set it to disabled,
The emulation control unit interrupts the emulation when the condition file change condition is satisfied during the execution of the emulation, and enables or disables each module constituting the emulation circuit based on the setting contents of the setting file. The cooperative verification apparatus according to claim 1, wherein the cooperation verification apparatus is set to be invalid.
前記エミュレータは、前記エミュレーション実行中において、前記エミュレーション制御部によって無効に設定されたエミュレーション回路のモジュールにアクセスする場合に、トランザクションを前記トランザクタに指示するエミュレーションブリッジを更に有し、
前記トランザクタは、前記シミュレーションブリッジによって指示されたトランザクションを前記エミュレータへ転送し、前記エミュレーションブリッジによって指示されたトランザクションを前記シミュレータへ転送することを特徴とする請求項3に記載の協調検証装置。 The simulator further includes a simulation bridge for instructing a transaction to the transactor when accessing a module of a simulation circuit invalidated by the simulation control unit during the simulation execution,
The emulator further includes an emulation bridge for instructing a transaction to the transactor when accessing a module of an emulation circuit invalidated by the emulation control unit during the execution of the emulation,
4. The cooperative verification apparatus according to claim 3, wherein the transactor transfers a transaction instructed by the simulation bridge to the emulator, and transfers a transaction instructed by the emulation bridge to the simulator.
前記エミュレーションブリッジは、前記エミュレーション制御部によって無効に設定されたエミュレーション回路のモジュールが前記シミュレーション制御部によって有効に設定されたモジュールに対応する場合に、前記トランザクションを転送するように前記トランザクタに指示する請求項4に記載の協調検証装置。 The simulation bridge instructs the transactor to transfer the transaction when the module of the simulation circuit set to be invalid by the simulation control unit corresponds to the module set to be valid by the emulation control unit,
The emulation bridge instructs the transactor to transfer the transaction when the module of the emulation circuit disabled by the emulation controller corresponds to the module enabled by the simulation controller. Item 5. The cooperative verification device according to Item 4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008069433A JP2009223762A (en) | 2008-03-18 | 2008-03-18 | Cooperation verification device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008069433A JP2009223762A (en) | 2008-03-18 | 2008-03-18 | Cooperation verification device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009223762A true JP2009223762A (en) | 2009-10-01 |
Family
ID=41240441
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008069433A Withdrawn JP2009223762A (en) | 2008-03-18 | 2008-03-18 | Cooperation verification device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009223762A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012048539A (en) * | 2010-08-27 | 2012-03-08 | Hitachi Information & Communication Engineering Ltd | Hardware/software collaborative verification system and method, and program |
WO2014038030A1 (en) * | 2012-09-06 | 2014-03-13 | 株式会社日立製作所 | Co-simulation computer system, verification system for embedded systems, and verification method for embedded systems |
-
2008
- 2008-03-18 JP JP2008069433A patent/JP2009223762A/en not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012048539A (en) * | 2010-08-27 | 2012-03-08 | Hitachi Information & Communication Engineering Ltd | Hardware/software collaborative verification system and method, and program |
WO2014038030A1 (en) * | 2012-09-06 | 2014-03-13 | 株式会社日立製作所 | Co-simulation computer system, verification system for embedded systems, and verification method for embedded systems |
JP5926807B2 (en) * | 2012-09-06 | 2016-05-25 | 株式会社日立製作所 | Computer system for co-simulation, verification system for embedded system, and verification method for embedded system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lustig et al. | Reducing GPU offload latency via fine-grained CPU-GPU synchronization | |
JP4975544B2 (en) | Simulation apparatus and program | |
US8725485B2 (en) | Simulation method and simulation apparatus | |
US8180620B2 (en) | Apparatus and method for performing hardware and software co-verification testing | |
US20060229861A1 (en) | Multi-core model simulator | |
EP3254199B1 (en) | System and method for generating cross-core breakpoints in a multi-core microcontroller | |
JP2007122602A (en) | Multi-core model simulation program, recording medium recording the program, multi-core model simulator, and multi-core model simulation method | |
US10528685B2 (en) | Efficient mechanism in hardware and software co-simulation system | |
JP2008140405A (en) | Co-validation method between electronic circuit and control program | |
JP2009223762A (en) | Cooperation verification device | |
Carta et al. | Multi-processor operating system emulation framework with thermal feedback for systems-on-chip | |
JP6249827B2 (en) | Simulation apparatus and simulation program | |
Murillo et al. | Synchronization for hybrid MPSoC full-system simulation | |
US20050071145A1 (en) | Simulation apparatus, simulation program, and recording medium | |
Ko et al. | Hardware-in-the-loop simulation for CPU/GPU heterogeneous platforms | |
JP5226848B2 (en) | Simulation apparatus and program | |
Ranga | ParrotPiton and ZynqParrot: FPGA Enablements for the BlackParrot RISC-V Processor | |
JP2006260014A (en) | Speed converter with load control function | |
US8914274B1 (en) | Method and system for instruction set simulation with concurrent attachment of multiple debuggers | |
JP5344371B2 (en) | Circuit verification apparatus, method and program | |
Ravichandran | Modeling Microarchitectural Side Channel Attacks for Fun & Profit | |
Isakovic et al. | A Survey of Hardware Technologies for Mixed-Critical Integration Explored in the Project | |
Pohl et al. | A Survey of Hardware Technologies for Mixed-Critical Integration Explored in the Project EMC2 | |
Khan et al. | SIMICS*-SYSTEMC* INTEGRATION. | |
Wilhelm | On the Road to Conviction: An Email Exchange with Edward Lee |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20110607 |