JP4205525B2 - Parallel simulation apparatus and parallel simulation method - Google Patents

Parallel simulation apparatus and parallel simulation method Download PDF

Info

Publication number
JP4205525B2
JP4205525B2 JP2003289892A JP2003289892A JP4205525B2 JP 4205525 B2 JP4205525 B2 JP 4205525B2 JP 2003289892 A JP2003289892 A JP 2003289892A JP 2003289892 A JP2003289892 A JP 2003289892A JP 4205525 B2 JP4205525 B2 JP 4205525B2
Authority
JP
Japan
Prior art keywords
simulation
parallel
data synchronization
computer
function
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
Application number
JP2003289892A
Other languages
Japanese (ja)
Other versions
JP2005063002A (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2003289892A priority Critical patent/JP4205525B2/en
Publication of JP2005063002A publication Critical patent/JP2005063002A/en
Application granted granted Critical
Publication of JP4205525B2 publication Critical patent/JP4205525B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明はLSIの並列シミュレーション技術に関し、特に複数周波数のクロックを有するLSI機能を並列シミュレーションするための並列シミュレーション装置および並列シミュレーション方法に関する。   The present invention relates to an LSI parallel simulation technique, and more particularly to a parallel simulation apparatus and a parallel simulation method for parallel simulation of an LSI function having a clock having a plurality of frequencies.

近年、LSI回路の大規模化が進み、開発期間の長期化が避けられなくなっている。それに伴い、LSI上で動作するソフトウェアについても大規模化が進んでおり、ソフトウェアの早期開発着手が望まれている。   In recent years, the scale of LSI circuits has been increasing, and it has become unavoidable to extend the development period. Accordingly, the scale of software operating on LSIs is increasing, and early development of software is desired.

LSI上で動作させるソフトウェアを開発するには、そのLSIを使用する必要があるが、LSIの開発完了を待っていては、そのLSIを使用する製品の適切な販売時期を逃してしまう恐れがある。   In order to develop software that operates on an LSI, it is necessary to use the LSI. However, if the development of the LSI is awaited, there is a risk that the appropriate sales time of a product that uses the LSI will be missed. .

そのため、LSIに代わるものとして、LSIの機能をソフトウェアでシミュレーションするソフトウェアシミュレータ、FPGAなどのハードウェアを用いてLSIの機能に相当するものを実装したエミュレータ、およびそれらを組み合わせたものが提供されている。これらを用いることにより、LSIの開発完了を待たずに、LSI上で動作するソフトウェアの開発やシステム評価などに早期に着手することができる。   Therefore, as an alternative to LSI, a software simulator for simulating LSI functions with software, an emulator that implements the LSI functions using hardware such as FPGA, and combinations thereof are provided. . By using these, development of software that operates on the LSI and system evaluation can be started at an early stage without waiting for completion of the development of the LSI.

LSIのシミュレータにとって、LSI回路規模の増大は機能シミュレーション速度の低下という影響をもたらす。その対策として、LSI回路内の各機能を複数のコンピュータで並列にシミュレーションさせる手法が従来採用されている。   For an LSI simulator, an increase in the LSI circuit scale has the effect of reducing the function simulation speed. As a countermeasure, a method of simulating each function in an LSI circuit in parallel with a plurality of computers has been conventionally employed.

機能シミュレーションにおける並列化の手法としては、従来2つの手法がある。1つ目は、ある信号の値が変化したときのみ動作させるイベントドリブン法であり、2つ目は、ある時刻に同期して与えられた入力に従って動作させ、信号の値が変化しなくなるまで動作を繰り返す反復法である(例えば、特許文献1参照)。   Conventionally, there are two methods for parallelization in function simulation. The first is an event-driven method that operates only when the value of a certain signal changes. The second method operates according to a given input in synchronization with a certain time and operates until the signal value does not change. (For example, see Patent Document 1).

反復法においては、さらに細かく以下の2つの形式に分類可能である。
(1)同期型:並列シミュレーションを行う際、最も細かい時刻管理単位でコンピュータ間のデータ同期処理を実行するシミュレーション方法。
(2)非同期型:並列シミュレーションを行う際、コンピュータが独自に時刻管理を行い、適当な時刻に他のコンピュータとデータ同期処理を実行するシュレーション方法。
The iterative method can be further classified into the following two forms.
(1) Synchronous type: A simulation method that executes data synchronization processing between computers in the finest time management unit when performing parallel simulation.
(2) Asynchronous type: A shredding method in which, when performing parallel simulation, a computer independently manages time and executes data synchronization processing with another computer at an appropriate time.

以下、従来法として反復法非同期型並列シミュレーションを取り上げ、その実施形態を図面を用いて説明する。ここで、LSI内の機能が複数クロックで動作するものをシミュレーションすると想定する。   Hereinafter, an iterative asynchronous parallel simulation will be taken as a conventional method, and an embodiment thereof will be described with reference to the drawings. Here, it is assumed that the function in the LSI operates with a plurality of clocks.

図1は従来法による並列シミュレーション装置の実施形態を示すブロック図である。図1において、並列シミュレーション装置100は、LSIの内部機能のシミュレーションを分担するコンピュータ110およびコンピュータ120と、それらを接続するネットワーク130とで構成されている。   FIG. 1 is a block diagram showing an embodiment of a parallel simulation apparatus according to a conventional method. In FIG. 1, a parallel simulation apparatus 100 includes a computer 110 and a computer 120 that share the simulation of the internal functions of an LSI, and a network 130 that connects them.

上記構成での従来法によるLSI機能のシミュレーションでは、コンピュータ110において、高速クロックで動作する高速機能のシミュレーション111と、低速クロックで動作する低速機能のシミュレーション112を実行する。   In the conventional LSI function simulation with the above configuration, the computer 110 executes a high-speed function simulation 111 that operates with a high-speed clock and a low-speed function simulation 112 that operates with a low-speed clock.

同様に、コンピュータ120においても、高速クロックで動作する高速機能のシミュレーション121と低速クロックで動作する低速機能のシミュレーション122を実行する。そして、コンピュータ110とコンピュータ120はネットワーク130を経由して情報を交換し、LSI機能の並列シミュレーションを実現している。   Similarly, the computer 120 also executes a high-speed function simulation 121 that operates with a high-speed clock and a low-speed function simulation 122 that operates with a low-speed clock. The computer 110 and the computer 120 exchange information via the network 130 to realize parallel simulation of LSI functions.

図3は、上記従来法によるLSI機能の並列シミュレーションのフローチャートである。図3のフローチャートにおいて、図1に示した各シミュレーションについては同一符号を付し、その処理内容が同一のものであることを示す。また、コンピュータ110とコンピュータ120について、シミュレーション内容は異なるものの処理の流れは同一であるので、以下、コンピュータ110におけるフローチャートについて説明する。   FIG. 3 is a flowchart of parallel simulation of LSI functions according to the conventional method. In the flowchart of FIG. 3, the same reference numerals are assigned to the simulations shown in FIG. 1 to indicate that the processing contents are the same. The computer 110 and the computer 120 have the same flow of processing although the simulation contents are different, so the flowchart in the computer 110 will be described below.

コンピュータ110において、LSIの機能をシミュレーションするために、高速クロックに相当するクロックカウンタ変数と、低速機能のシミュレーションを実現するための分周カウンタ変数を用意する。   In the computer 110, in order to simulate the function of the LSI, a clock counter variable corresponding to a high-speed clock and a frequency division counter variable for realizing a simulation of the low-speed function are prepared.

図3において、まず、高速機能のシミュレーション111を実行し、ステップ301で分周カウンタ変数が低速機能のシミュレーション112を処理するための分周周期に達したかどうかの判定を行う。判定結果が真(分周周期に達した)の場合は低速機能のシミュレーション112を実行し、条件が偽の場合は低速機能のシミュレーション112を処理しない。   In FIG. 3, first, a high-speed function simulation 111 is executed, and it is determined in step 301 whether or not the frequency division counter variable has reached a frequency division period for processing the low-speed function simulation 112. When the determination result is true (having reached the frequency dividing period), the low speed function simulation 112 is executed, and when the condition is false, the low speed function simulation 112 is not processed.

次に、ステップ303でデータ同期条件かどうかの判定を行う。判定結果が真の場合はステップ304でコンピュータ120とのデータ同期処理を行い、判定結果が偽の場合はデータ同期処理を行わない。   Next, in step 303, it is determined whether the data synchronization condition is satisfied. If the determination result is true, data synchronization processing with the computer 120 is performed in step 304, and if the determination result is false, data synchronization processing is not performed.

次に、ステップ306、ステップ302で、分周カウンタ変数、クロックカウンタ変数をそれぞれインクリメントした後、ステップ305で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ111に戻る。コンピュータ120においても同様の処理を実行することで、LSI機能の並列シミュレーションが行われる。
特開平10−91667号公報
Next, after incrementing the frequency division counter variable and the clock counter variable in steps 306 and 302, it is determined in step 305 whether or not an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 111. The computer 120 executes similar processing to perform parallel simulation of LSI functions.
JP-A-10-91667

一般的にLSI機能を並列シミュレーションする際の課題は、並列化の方法がシミュレーション速度に影響を及ぼすことである。上記従来法では、低速処理のシミュレーションのために分周条件の判定や分周カウンタ変数のインクリメントを行わなくてはならず、LSIで使用している複数クロック間の周波数比が大きい場合は、LSI機能の並列シミュレーションの速度向上効果が分周処理のシミュレーション分だけ減少してしまうという課題があった。   In general, a problem in parallel simulation of LSI functions is that the parallelization method affects the simulation speed. In the above-described conventional method, it is necessary to determine the division condition and increment the division counter variable for low-speed processing simulation. If the frequency ratio between multiple clocks used in the LSI is large, the LSI There is a problem that the speed improvement effect of the parallel simulation of the function is reduced by the simulation of the frequency division process.

本発明は上記従来の課題を解決するもので、複数周波数のクロックを有するLSI機能を並列シミュレーションする際に、複数クロック間の周波数差を吸収するための処理に起因するシミュレーション速度の低下を回避することができる並列シミュレーション装置および並列シミュレーション方法を提供することを目的とする。   The present invention solves the above-described conventional problem, and avoids a decrease in simulation speed due to processing for absorbing a frequency difference between a plurality of clocks when performing parallel simulation of an LSI function having a clock having a plurality of frequencies. An object of the present invention is to provide a parallel simulation apparatus and a parallel simulation method.

本発明の並列シミュレーション装置は、複数周波数のクロックを有するLSI機能を並列シミュレーションする非同期反復型の並列シミュレーション装置であって、前記クロックの周波数毎に分割したLSI機能を並列にシミュレーションするシミュレーション手段と、並列動作するシミュレーション間のデータ同期処理を実行するデータ同期処理手段とを備える。   The parallel simulation apparatus of the present invention is an asynchronous repetitive parallel simulation apparatus that performs parallel simulation of an LSI function having a clock having a plurality of frequencies, and a simulation unit that simulates in parallel the LSI function divided for each frequency of the clock; Data synchronization processing means for executing data synchronization processing between simulations operating in parallel.

上記構成によれば、それぞれのクロック周波数毎にLSI機能を分割して並列にシミュレーションを行うことにより、クロック周波数の違い吸収するための分周周期に係る処理が不要になり、その処理に起因するシミュレーション速度の低下を招くことが無く、全体のシミュレーション速度を向上させることができる。   According to the above configuration, by dividing the LSI function for each clock frequency and performing the simulation in parallel, the processing related to the frequency dividing period for absorbing the difference in the clock frequency becomes unnecessary, resulting in the processing. The entire simulation speed can be improved without causing a decrease in the simulation speed.

前記データ同期処理手段は、データ同期条件として特定のシミュレーション対象信号の変化を判定する。   The data synchronization processing means determines a change in a specific simulation target signal as a data synchronization condition.

上記構成によれば、特定のシミュレーション対象信号の変化を検知してデータ同期処理を行うため、LSI機能のシミュレーションに適したデータ同期条件が容易になる。   According to the above configuration, since a data synchronization process is performed by detecting a change in a specific simulation target signal, a data synchronization condition suitable for LSI function simulation is facilitated.

前記データ同期処理手段は、データ同期条件として特定の外部入力信号の変化を判定する。   The data synchronization processing means determines a change in a specific external input signal as a data synchronization condition.

上記構成によれば、外部から並列シミュレーションのデータ同期を制御することができるため、多様な並列シミュレーションの実行が可能となる。   According to the above configuration, since data synchronization of parallel simulation can be controlled from the outside, various parallel simulations can be executed.

前記データ同期処理手段は、データ同期時に一度にすべてのデータの同期処理を行う。   The data synchronization processing means synchronizes all data at once during data synchronization.

上記構成によれば、データ同期時に一度にすべてのデータの同期処理を行うことができるため、例えば、データ同期条件の抽出が困難な場合に、それを考慮せずに機能ブロックの並列配置することが可能となり、並列シミュレーションの適応性を増すことができる。   According to the above configuration, all data can be synchronized at the same time during data synchronization. For example, when it is difficult to extract data synchronization conditions, functional blocks are arranged in parallel without considering it. And the adaptability of parallel simulation can be increased.

前記データ同期処理手段は、データ同期時に、同期が必要なデータのみについて同期処理を行うものである。   The data synchronization processing means performs synchronization processing only for data that needs to be synchronized during data synchronization.

上記構成によれば、データ同期時に同期が必要なデータのみについて同期処理を行うことができるため、データ同期時の転送データ量を最小限に減らすことが可能となり、並列シミュレーションの速度向上を図ることができる。   According to the above configuration, since only the data that needs to be synchronized at the time of data synchronization can be synchronized, the amount of transferred data at the time of data synchronization can be reduced to the minimum, and the speed of parallel simulation can be improved. Can do.

前記データ同期処理手段は、ファイル入力等により予め指定されたデータ同期条件により同期処理を行う。   The data synchronization processing means performs synchronization processing according to data synchronization conditions specified in advance by file input or the like.

上記構成によれば、データ同期条件をファイル入力等により予め指定することができるため、データ同期条件とそれに伴う処理を最適に設定することが可能となり、並列シミュレーションの速度向上を図ることができる。   According to the above configuration, since the data synchronization condition can be designated in advance by file input or the like, it is possible to optimally set the data synchronization condition and the process associated therewith, and the parallel simulation speed can be improved.

前記データ同期処理手段は、並列にシミュレーションを実行する手段の間に張られたネットワークを介して前記データ同期処理を実行する。   The data synchronization processing means executes the data synchronization processing via a network stretched between means for executing simulation in parallel.

上記構成によれば、並列にシミュレーションを実行する手段であるコンピュータやハードウェアエミュレータ等がネットワークを介して接続されているため、より柔軟なシステム構成をとることができる。   According to the above configuration, since a computer, a hardware emulator, and the like, which are means for executing simulation in parallel, are connected via a network, a more flexible system configuration can be taken.

前記データ同期処理手段は、並列にシミュレーションを実行する手段の間を接続するバスを介して前記データ同期処理を実行する。   The data synchronization processing means executes the data synchronization processing via a bus connecting between means for executing simulations in parallel.

上記構成によれば、ネットワーク接続で構成された並列シミュレーション装置に比べて、複数CPUがバス接続された1台のコンピュータで並列シミュレーション方法を実行することができるため、より高速に動作する並列シミュレーション装置を実現することができる。   According to the above configuration, since the parallel simulation method can be executed by a single computer having a plurality of CPUs connected by a bus as compared with a parallel simulation device configured by network connection, the parallel simulation device that operates at higher speed. Can be realized.

さらに、この並列シミュレーション装置をネットワーク接続される並列シミュレーションシステムに組み込むことにより、より多様な並列シミュレーションの構成が可能となり、並列度を増した高速シミュレーションが可能な並列シミュレーション装置を実現することができる。   Furthermore, by incorporating this parallel simulation device into a network-connected parallel simulation system, it becomes possible to configure a wider variety of parallel simulations, and to realize a parallel simulation device capable of high-speed simulation with increased parallelism.

本発明の並列シミュレーション方法は、複数周波数のクロックを有するLSI機能を並列シミュレーションする非同期反復型の並列シミュレーション方法であって、前記クロックの周波数毎に前記LSI機能を分割し、分割されたLSI機能を並列にシミュレーションし、並列動作するシミュレーション間のデータ同期処理を実行する。   The parallel simulation method of the present invention is an asynchronous iterative parallel simulation method for parallel-simulating LSI functions having clocks having a plurality of frequencies, wherein the LSI functions are divided for each frequency of the clock, and the divided LSI functions are The simulation is performed in parallel, and data synchronization processing between the simulations operating in parallel is executed.

上記構成によれば、それぞれのクロック毎にLSI機能を分割して並列にシミュレーションを行うことにより、クロック周波数の違い吸収するための分周周期に係る処理が不要になり、その処理に起因するシミュレーション速度の低下を招くことが無く、全体のシミュレーション速度を向上させることができる。   According to the above configuration, by dividing the LSI function for each clock and performing the simulation in parallel, the processing related to the frequency dividing period for absorbing the difference in the clock frequency becomes unnecessary, and the simulation resulting from the processing The overall simulation speed can be improved without causing a decrease in speed.

前記データ同期処理を、データ同期条件として特定のシミュレーション対象信号の変化の判定により実行する。   The data synchronization process is executed by determining a change in a specific simulation target signal as a data synchronization condition.

上記構成によれば、特定のシミュレーション対象信号の変化を検知してデータ同期処理を行うため、具体的なLSI機能のシミュレーションに適したデータ同期条件が容易になる。   According to the above configuration, since the data synchronization process is performed by detecting a change in a specific simulation target signal, a data synchronization condition suitable for a specific LSI function simulation is facilitated.

前記データ同期処理を、データ同期条件として特定の外部入力信号の変化の判定により実行する。   The data synchronization process is executed by determining a change in a specific external input signal as a data synchronization condition.

上記構成によれば、外部から並列シミュレーションのデータ同期を制御することができるため、多様な並列シミュレーションの実行が可能となる。   According to the above configuration, since data synchronization of parallel simulation can be controlled from the outside, various parallel simulations can be executed.

前記データ同期処理を、データ同期時に一度にすべてのデータに対して行う。   The data synchronization process is performed on all data at once during data synchronization.

上記構成によれば、データ同期時に一度にすべてのデータの同期処理を行うことができるため、例えば、データ同期条件の抽出が困難な場合に、それを考慮せずに機能ブロックの並列配置することが可能となり、並列シミュレーションの適応性を増すことができる。   According to the above configuration, all data can be synchronized at the same time during data synchronization. For example, when it is difficult to extract data synchronization conditions, functional blocks are arranged in parallel without considering it. And the adaptability of parallel simulation can be increased.

前記データ同期処理を、データ同期時に、同期が必要なデータのみについて行う。   The data synchronization process is performed only for data that needs to be synchronized during data synchronization.

上記構成によれば、データ同期時に同期が必要なデータのみについて同期処理を行うことができるため、データ同期時の転送データ量を最小限に減らすことが可能となり、並列シミュレーションの速度向上を図ることができる。   According to the above configuration, since only the data that needs to be synchronized at the time of data synchronization can be synchronized, the amount of transferred data at the time of data synchronization can be reduced to the minimum, and the speed of parallel simulation can be improved. Can do.

前記データ同期処理を、ファイル入力等により予め指定されたデータ同期条件により行う。   The data synchronization processing is performed under data synchronization conditions designated in advance by file input or the like.

上記構成によれば、データ同期条件をファイル入力等により予め指定することができるため、データ同期条件とそれに伴う処理を最適に設定することが可能となり、並列シミュレーションの速度向上を図ることができる。   According to the above configuration, since the data synchronization condition can be designated in advance by file input or the like, it is possible to optimally set the data synchronization condition and the process associated therewith, and the parallel simulation speed can be improved.

本発明によれば、複数クロックを有するLSI機能の並列シミュレーションにおいて、それぞれのクロック毎にLSI機能を分割して並列にシミュレーションを行うことにより、クロック周波数の違い吸収するための分周周期に係る処理が不要になるため、その処理に起因するシミュレーション速度の低下を招くことが無くなる。複数クロック周波数同士の比が大きいほどその効果は大きく、シミュレーション速度を向上させることができるという優れた効果が得られる。   According to the present invention, in a parallel simulation of an LSI function having a plurality of clocks, the LSI function is divided for each clock and the simulation is performed in parallel, whereby the processing related to the frequency dividing period for absorbing the difference in clock frequency. Therefore, the simulation speed is not reduced due to the processing. The greater the ratio between the multiple clock frequencies, the greater the effect, and the excellent effect that the simulation speed can be improved.

以下、本発明の実施の形態について図面を参照しながら説明する。なお、以下の図面の記載において、同一または類似の部分には同一または類似の符号を付し、同一部分については重複した説明を一部省略する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals, and a part of the description of the same parts is partially omitted.

(実施の形態1)
本発明の第1の態様は、複数周波数のクロックを有するLSI機能をシミュレーションする非同期反復型並列シミュレーションにおいて、それぞれのクロック周波数毎にシミュレーションを行うものである。
(Embodiment 1)
The first aspect of the present invention is to perform a simulation for each clock frequency in an asynchronous repetitive parallel simulation for simulating an LSI function having a clock having a plurality of frequencies.

図2は本発明の実施の形態1に係る並列シミュレーション装置の構成を示すブロック図である。図2において、並列シミュレーション装置200は、LSIの内部機能のシミュレーションを分担するコンピュータ110およびコンピュータ120と、それらを接続するネットワーク130とで構成されている。   FIG. 2 is a block diagram showing the configuration of the parallel simulation apparatus according to Embodiment 1 of the present invention. In FIG. 2, the parallel simulation apparatus 200 includes a computer 110 and a computer 120 that share the simulation of internal functions of the LSI, and a network 130 that connects them.

コンピュータ110では、高速クロックで動作する高速機能のシミュレーション111と、やはり高速クロックで動作する高速機能のシミュレーション121を実行する。他方、コンピュータ120では、低速クロックで動作する低速機能のシミュレーション112と、やはり低速クロックで動作する低速機能のシミュレーション122を実行する。   The computer 110 executes a high-speed function simulation 111 that operates with a high-speed clock and a high-speed function simulation 121 that also operates with a high-speed clock. On the other hand, the computer 120 executes a low-speed function simulation 112 that operates with a low-speed clock and a low-speed function simulation 122 that also operates with a low-speed clock.

そして、コンピュータ110とコンピュータ120はネットワーク130を経由して情報を交換し、LSI機能の並列シミュレーションを実現している。ここで、従来法の図1と同じ構成要素については同一符号を付している。   The computer 110 and the computer 120 exchange information via the network 130 to realize parallel simulation of LSI functions. Here, the same components as those in FIG. 1 of the conventional method are denoted by the same reference numerals.

図4は、本実施の形態によるLSI機能の並列シミュレーション方法のフローチャートである。図4のフローチャートにおいて、図2に示した各シミュレーションについては同一符号を付し、その処理内容が同一のものであることを示す。   FIG. 4 is a flowchart of the LSI function parallel simulation method according to this embodiment. In the flowchart of FIG. 4, the simulations shown in FIG. 2 are assigned the same reference numerals to indicate that the processing contents are the same.

コンピュータ110とコンピュータ120のそれぞれに、LSIの機能をシミュレーションするために、クロックに相当するクロックカウンタ変数を用意する。   A clock counter variable corresponding to a clock is prepared for each of the computer 110 and the computer 120 in order to simulate the function of the LSI.

最初に、コンピュータ110で処理されるシミュレーションの流れを説明する。まず、高速機能のシミュレーション111と高速機能のシミュレーション121を実行する。   First, the flow of simulation processed by the computer 110 will be described. First, a high-speed function simulation 111 and a high-speed function simulation 121 are executed.

ステップ402でクロックカウンタ変数をインクリメントした後、ステップ403でデータ同期条件かどうかの判定を行う。判定結果が真の場合はステップ404でコンピュータ120とのデータ同期処理を行い、判定結果が偽の場合はデータ同期処理を行わない。   After incrementing the clock counter variable in step 402, it is determined in step 403 whether the data synchronization condition is satisfied. If the determination result is true, the data synchronization process with the computer 120 is performed in step 404, and if the determination result is false, the data synchronization process is not performed.

次に、ステップ405で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ111に戻る。   Next, in step 405, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 111.

次に、コンピュータ120で処理されるシミュレーションの流れを説明する。まず、低速機能のシミュレーション112と低速機能のシミュレーション122を実行する。   Next, the flow of simulation processed by the computer 120 will be described. First, a low speed function simulation 112 and a low speed function simulation 122 are executed.

ステップ412でクロックカウンタ変数をインクリメントした後、ステップ413でデータ同期条件かどうかの判定を行う。判定結果が真の場合はステップ414でコンピュータ120とのデータ同期処理を行い、判定結果が偽の場合はデータ同期処理を行わない。   After incrementing the clock counter variable in step 412, it is determined in step 413 whether the data synchronization condition is satisfied. If the determination result is true, data synchronization processing with the computer 120 is performed in step 414, and if the determination result is false, data synchronization processing is not performed.

次に、ステップ415で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ112に戻る。   Next, in step 415, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 112.

さらに、具体的なクロック周波数を示して上記説明を補足する。図5および図6はそれぞれ図1および図2に対応し、従来法および本実施の形態による並列シミュレーション装置の構成を示すブロック図である。LSIは10MHzおよび10kHzの2つのクロックで動作し、それぞれのクロック周波数で動作する機能ブロックが2つずつあることを想定する。   Further, the above description is supplemented by showing a specific clock frequency. FIG. 5 and FIG. 6 correspond to FIG. 1 and FIG. 2, respectively, and are block diagrams showing the configuration of the parallel simulation apparatus according to the conventional method and this embodiment. It is assumed that the LSI operates with two clocks of 10 MHz and 10 kHz, and there are two functional blocks that operate at the respective clock frequencies.

図5において、従来法の並列シミュレーション装置500では、10MHzで動作する機能のシミュレーション511と10kHzで動作する機能のシミュレーション512をコンピュータ110が実行し、10MHzで動作する機能のシミュレーション521と10kHzで動作する機能のシミュレーション522をコンピュータ120が実行している。   In FIG. 5, in the parallel simulation apparatus 500 of the conventional method, a computer 110 executes a function simulation 511 operating at 10 MHz and a function simulation 512 operating at 10 kHz, and operates at a function simulation 521 and 10 kHz operating at 10 MHz. The computer 120 executes a function simulation 522.

これに対して、図6において、本実施の形態の並列シミュレーション装置600では、10MHzで動作する機能のシミュレーション511および10MHzで動作する機能のシミュレーション521をコンピュータ110で実行し、10kHzで動作する機能のシミュレーション512および10kHzで動作する機能のシミュレーション522をコンピュータ120で実行する。   On the other hand, in FIG. 6, in the parallel simulation apparatus 600 of the present embodiment, a function simulation 511 that operates at 10 MHz and a function simulation 521 that operates at 10 MHz are executed by the computer 110, and the function that operates at 10 kHz. A simulation 512 and a simulation 522 of a function operating at 10 kHz are executed on the computer 120.

このように、複数周波数のクロックを有するLSI機能を、それぞれのクロック周波数毎にシミュレーションを行うことにより、これらのシミュレーションを並列に実行した場合に、クロック周波数の違い吸収するための分周周期に係る処理が不要になり、その処理に起因するシミュレーション速度の低下を招くことが無く、並列シミュレーションの速度向上効果を十分に得ることができる。   As described above, the LSI function having clocks of a plurality of frequencies is simulated at each clock frequency, and when these simulations are executed in parallel, the frequency division period for absorbing the difference in the clock frequency is affected. No processing is required, and the simulation speed is not lowered due to the processing, and the speed improvement effect of the parallel simulation can be sufficiently obtained.

(実施の形態2)
本発明の第2の態様は、実施の形態1の並列シミュレーション方法において、データ同期条件として特定のシミュレーション対象信号の変化を判定するものである。シミュレーション実行時には、シミュレーションによって特定の信号が変化したときに並列動作しているシミュレーション間のデータ同期処理を実行する。
(Embodiment 2)
The second aspect of the present invention is to determine a change in a specific simulation target signal as a data synchronization condition in the parallel simulation method of the first embodiment. At the time of simulation execution, data synchronization processing between simulations operating in parallel when a specific signal is changed by the simulation is executed.

図13は本発明の実施の形態2に係る並列シミュレーション方法のフローチャートである。本実施の形態の並列シミュレーション装置は図2あるいは図6の構成をとり、ここでは図6を用いて説明する。   FIG. 13 is a flowchart of the parallel simulation method according to the second embodiment of the present invention. The parallel simulation apparatus according to the present embodiment has the configuration shown in FIG. 2 or FIG. 6, and will be described with reference to FIG.

コンピュータ110とコンピュータ120のそれぞれに、LSIの機能をシミュレーションするために、クロックに相当するクロックカウンタ変数を用意する。   A clock counter variable corresponding to a clock is prepared for each of the computer 110 and the computer 120 in order to simulate the function of the LSI.

コンピュータ110においては、まず、10MHzで動作する高速機能のシミュレーション511と高速機能のシミュレーション521を実行する。ステップ402でクロックカウンタ変数をインクリメントした後、ステップ1303でデータ同期条件かどうかの判定を行う。   The computer 110 first executes a high-speed function simulation 511 and a high-speed function simulation 521 that operate at 10 MHz. After incrementing the clock counter variable in step 402, it is determined in step 1303 whether the data synchronization condition is satisfied.

ここで、データ同期条件はシミュレーションによる特定の信号の変化である。ステップ1303で特定の信号がシミュレーションにより変化したか否かを判定し、判定結果が真の場合はステップ404でコンピュータ120とのデータ同期処理を行い、判定結果が偽の場合はデータ同期処理を行わない。   Here, the data synchronization condition is a change in a specific signal by simulation. In step 1303, it is determined whether or not a specific signal has been changed by simulation. If the determination result is true, data synchronization processing with the computer 120 is performed in step 404, and if the determination result is false, data synchronization processing is performed. Absent.

次に、ステップ405で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ511に戻る。   Next, in step 405, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 511.

コンピュータ120においては、10MHzで動作する高速機能のシミュレーションの代わりに、10kHzで動作する低速機能のシミュレーション512と低速機能のシミュレーション522を実行する点以外は、コンピュータ110における処理と同様である。   The computer 120 is the same as the processing in the computer 110 except that a low-speed function simulation 512 and a low-speed function simulation 522 that operate at 10 kHz are executed instead of a high-speed function simulation that operates at 10 MHz.

このように、特定の信号の変化を判定してデータ同期条件とすることにより、具体的なLSI機能のシミュレーションに適したデータ同期条件が容易になり、並列シミュレーションの速度向上効果を得ることができる。   In this way, by determining a change in a specific signal and setting it as a data synchronization condition, a data synchronization condition suitable for a specific LSI function simulation is facilitated, and an effect of improving the speed of parallel simulation can be obtained. .

(実施の形態3)
本発明の第3の態様は、実施の形態1の並列シミュレーション方法において、データ同期条件として特定の外部入力信号の変化を判定するものである。シミュレーション実行時には、特定の外部入力信号が変化したときに並列動作しているシミュレーション間のデータ同期処理を実行する。
(Embodiment 3)
A third aspect of the present invention is to determine a change in a specific external input signal as a data synchronization condition in the parallel simulation method of the first embodiment. During simulation execution, data synchronization processing between simulations operating in parallel when a specific external input signal changes is executed.

図9は本発明の実施の形態3に係る並列シミュレーション装置の構成を示すブロック図である。図9において、並列シミュレーション装置900は、LSIの内部機能のシミュレーションを分担するコンピュータ110およびコンピュータ120と、外部同期処理部930と、外部同期処理部930とコンピュータ110、120の間をそれぞれ接続するネットワーク910、920とで構成されている。   FIG. 9 is a block diagram showing a configuration of a parallel simulation apparatus according to Embodiment 3 of the present invention. In FIG. 9, the parallel simulation apparatus 900 includes a computer 110 and a computer 120 that share the simulation of the internal functions of the LSI, a network that connects the external synchronization processing unit 930, and the external synchronization processing unit 930 and the computers 110 and 120. 910 and 920.

コンピュータ110では、10MHzで動作する高速機能のシミュレーション511と、やはり10MHzで動作する高速機能のシミュレーション521を実行する。他方、コンピュータ120では、10kHzで動作する低速機能のシミュレーション512と、やはり10kHzで動作する低速機能のシミュレーション522を実行する。   The computer 110 executes a high-speed function simulation 511 that operates at 10 MHz and a high-speed function simulation 521 that also operates at 10 MHz. On the other hand, the computer 120 executes a low-speed function simulation 512 that operates at 10 kHz and a low-speed function simulation 522 that also operates at 10 kHz.

外部同期処理部930は、特定の外部入力信号を監視するとともに、ネットワーク910とネットワーク920を通してコンピュータ110とコンピュータ120の処理を監視し、同期信号およびデータの交換を制御する。   The external synchronization processing unit 930 monitors specific external input signals and also monitors the processing of the computer 110 and the computer 120 through the network 910 and the network 920, and controls the exchange of synchronization signals and data.

図14は本発明の実施の形態3に係る並列シミュレーション方法のフローチャートである。コンピュータ110とコンピュータ120のそれぞれに、LSIの機能をシミュレーションするために、クロックに相当するクロックカウンタ変数を用意する。   FIG. 14 is a flowchart of the parallel simulation method according to the third embodiment of the present invention. A clock counter variable corresponding to a clock is prepared for each of the computer 110 and the computer 120 in order to simulate the function of the LSI.

コンピュータ110においては、まず、10MHzで動作する高速機能のシミュレーション511と高速機能のシミュレーション521を実行する。ステップ402でクロックカウンタ変数をインクリメントした後、ステップ1403でデータ同期条件かどうかの判定を行う。   The computer 110 first executes a high-speed function simulation 511 and a high-speed function simulation 521 that operate at 10 MHz. After incrementing the clock counter variable in step 402, it is determined in step 1403 whether the data synchronization condition is satisfied.

ここで、データ同期条件は特定の外部入力信号の変化である。ステップ1403で特定の外部入力信号が変化したか否かを判定し、判定結果が真の場合はステップ404でコンピュータ120とのデータ同期処理を行い、判定結果が偽の場合はデータ同期処理を行わない。   Here, the data synchronization condition is a change in a specific external input signal. In step 1403, it is determined whether or not a specific external input signal has changed. If the determination result is true, data synchronization processing with the computer 120 is performed in step 404, and if the determination result is false, data synchronization processing is performed. Absent.

次に、ステップ405で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ511に戻る。   Next, in step 405, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 511.

コンピュータ120においては、10MHzで動作する高速機能のシミュレーションの代わりに、10kHzで動作する低速機能のシミュレーション512と低速機能のシミュレーション522を実行する点以外は、コンピュータ110における処理と同様である。   The computer 120 is the same as the processing in the computer 110 except that a low-speed function simulation 512 and a low-speed function simulation 522 that operate at 10 kHz are executed instead of a high-speed function simulation that operates at 10 MHz.

このように、特定の外部入力信号の変化を判定してデータ同期条件とすることにより、外部から並列シミュレーションのデータ同期を制御することができるため、多様な並列シミュレーションの実行が可能となる。   As described above, by determining a change in a specific external input signal and setting it as a data synchronization condition, it is possible to control the data synchronization of the parallel simulation from the outside, so that various parallel simulations can be executed.

(実施の形態4)
本発明の第4の態様は、前記実施の形態1〜4の並列シミュレーション方法において、データ同期時に一度にすべてのデータの同期処理を行うものである。
(Embodiment 4)
According to a fourth aspect of the present invention, in the parallel simulation methods of the first to fourth embodiments, all data is synchronized at a time during data synchronization.

図15は本発明の実施の形態4に係る並列シミュレーション方法のフローチャートである。本実施の形態の並列シミュレーション装置は図2あるいは図6の構成をとり、ここでは図6を用いて説明する。   FIG. 15 is a flowchart of the parallel simulation method according to the fourth embodiment of the present invention. The parallel simulation apparatus according to the present embodiment has the configuration shown in FIG. 2 or FIG. 6, and will be described with reference to FIG.

コンピュータ110とコンピュータ120のそれぞれに、LSIの機能をシミュレーションするために、クロックに相当するクロックカウンタ変数を用意する。   A clock counter variable corresponding to a clock is prepared for each of the computer 110 and the computer 120 in order to simulate the function of the LSI.

コンピュータ110においては、まず、10MHzで動作する高速機能のシミュレーション511と高速機能のシミュレーション521を実行する。   The computer 110 first executes a high-speed function simulation 511 and a high-speed function simulation 521 that operate at 10 MHz.

ステップ402でクロックカウンタ変数をインクリメントした後、ステップ403でデータ同期条件かどうかの判定を行う。判定結果が真の場合はステップ1504でコンピュータ120とのデータ同期処理を行う。その際、一度に全てのデータの同期処理を行う。判定結果が偽の場合はデータ同期処理を行わない。   After incrementing the clock counter variable in step 402, it is determined in step 403 whether the data synchronization condition is satisfied. If the determination result is true, data synchronization processing with the computer 120 is performed in step 1504. At that time, all data is synchronized at once. If the determination result is false, data synchronization processing is not performed.

次に、ステップ405で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ511に戻る。   Next, in step 405, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 511.

コンピュータ120においては、10MHzで動作する高速機能のシミュレーションの代わりに、10kHzで動作する低速機能のシミュレーション512と低速機能のシミュレーション522を実行する点以外は、コンピュータ110における処理と同様である。   The computer 120 is the same as the processing in the computer 110 except that a low-speed function simulation 512 and a low-speed function simulation 522 that operate at 10 kHz are executed instead of a high-speed function simulation that operates at 10 MHz.

このように、データ同期時に一度にすべてのデータの同期処理を行うことにより、例えば、データ同期条件の抽出が困難な場合に、それを考慮せずに機能ブロックの並列配置することが可能となり、並列シミュレーションの適応性を増すことができる。   In this way, by performing synchronization processing of all data at the time of data synchronization, for example, when extraction of data synchronization conditions is difficult, it becomes possible to arrange functional blocks in parallel without considering it, The adaptability of parallel simulation can be increased.

(実施の形態5)
本発明の第5の態様は、前記実施の形態1〜4の並列シミュレーション方法において、データ同期時に、同期が必要なデータのみについて同期処理を行うものである。
(Embodiment 5)
According to a fifth aspect of the present invention, in the parallel simulation methods of the first to fourth embodiments, synchronization processing is performed only for data that needs to be synchronized during data synchronization.

図16は本発明の実施の形態5に係る並列シミュレーション方法のフローチャートである。本実施の形態の並列シミュレーション装置は図2あるいは図6の構成をとり、ここでは図6を用いて説明する。   FIG. 16 is a flowchart of the parallel simulation method according to the fifth embodiment of the present invention. The parallel simulation apparatus according to the present embodiment has the configuration shown in FIG. 2 or FIG. 6, and will be described with reference to FIG.

コンピュータ110とコンピュータ120のそれぞれに、LSIの機能をシミュレーションするために、クロックに相当するクロックカウンタ変数を用意する。   A clock counter variable corresponding to a clock is prepared for each of the computer 110 and the computer 120 in order to simulate the function of the LSI.

コンピュータ110においては、まず、10MHzで動作する高速機能のシミュレーション511と高速機能のシミュレーション521を実行する。   The computer 110 first executes a high-speed function simulation 511 and a high-speed function simulation 521 that operate at 10 MHz.

ステップ402でクロックカウンタ変数をインクリメントした後、ステップ403でデータ同期条件かどうかの判定を行う。判定結果が真の場合はステップ1604でコンピュータ120とのデータ同期処理を行う。その際、同期が必要なデータのみについて同期処理を行う。判定結果が偽の場合はデータ同期処理を行わない。   After incrementing the clock counter variable in step 402, it is determined in step 403 whether the data synchronization condition is satisfied. If the determination result is true, in step 1604, data synchronization processing with the computer 120 is performed. At that time, synchronization processing is performed only for data that needs to be synchronized. If the determination result is false, data synchronization processing is not performed.

次に、ステップ405で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ511に戻る。   Next, in step 405, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 511.

コンピュータ120においては、10MHzで動作する高速機能のシミュレーションの代わりに、10kHzで動作する低速機能のシミュレーション512と低速機能のシミュレーション522を実行する点以外は、コンピュータ110における処理と同様である。   The computer 120 is the same as the processing in the computer 110 except that a low-speed function simulation 512 and a low-speed function simulation 522 that operate at 10 kHz are executed instead of a high-speed function simulation that operates at 10 MHz.

このように、データ同期時に同期が必要なデータのみについて同期処理を行うことにより、データ同期時の転送データ量を最小限に減らすことが可能となり、並列シミュレーションの速度向上効果を得ることができる。なお、同期が必要なデータの選択については、予め指定する方法や、実行時に動的に決定される方法などがある。   In this way, by performing synchronization processing only on data that needs to be synchronized during data synchronization, the amount of transferred data during data synchronization can be reduced to a minimum, and an effect of improving the speed of parallel simulation can be obtained. Note that selection of data that needs to be synchronized includes a method that is designated in advance and a method that is dynamically determined at the time of execution.

(実施の形態6)
本発明の第6の態様は、前記実施の形態1〜4の並列シミュレーション方法において、データ同期条件をファイル入力等により予め指定するものである。
(Embodiment 6)
According to a sixth aspect of the present invention, in the parallel simulation methods of the first to fourth embodiments, the data synchronization condition is designated in advance by file input or the like.

図10は本発明の実施の形態6に係る並列シミュレーション方法のフローチャートである。本実施の形態の並列シミュレーション装置は図2あるいは図6の構成をとり、ここでは図2を用いて説明する。   FIG. 10 is a flowchart of the parallel simulation method according to the sixth embodiment of the present invention. The parallel simulation apparatus according to the present embodiment has the configuration shown in FIG. 2 or 6 and will be described with reference to FIG.

コンピュータ110とコンピュータ120のそれぞれに、LSIの機能をシミュレーションするために、クロックに相当するクロックカウンタ変数を用意する。   A clock counter variable corresponding to a clock is prepared for each of the computer 110 and the computer 120 in order to simulate the function of the LSI.

コンピュータ110においては、まず、ステップ1001でデータ同期条件を指定するファイルを読み込む。図11はデータ同期条件を指定するファイルの構成例を示す図である。この実施例では、シミュレーションする各機能1101について、同期条件1102と同期処理を行うデータ1103が指定される。   In the computer 110, first, in step 1001, a file for designating data synchronization conditions is read. FIG. 11 is a diagram illustrating a configuration example of a file for designating data synchronization conditions. In this embodiment, for each function 1101 to be simulated, a synchronization condition 1102 and data 1103 for performing synchronization processing are designated.

次に、コンピュータ110では、高速機能のシミュレーション111と高速機能のシミュレーション121を実行する。   Next, the computer 110 executes a high-speed function simulation 111 and a high-speed function simulation 121.

ステップ402でクロックカウンタ変数をインクリメントした後、ステップ403で、ステップ1001で読み込んだデータ同期条件により条件判定を行う。判定結果が真の場合はステップ404でコンピュータ120とのデータ同期処理を行い、判定結果が偽の場合はデータ同期処理を行わない。   After incrementing the clock counter variable in step 402, in step 403, a condition is determined based on the data synchronization condition read in step 1001. If the determination result is true, the data synchronization process with the computer 120 is performed in step 404, and if the determination result is false, the data synchronization process is not performed.

次に、ステップ405で終了条件に達したかどうかを判定する。判定結果が真の場合はシミュレーションを終了し、判定結果が偽の場合はステップ111に戻る。   Next, in step 405, it is determined whether an end condition has been reached. If the determination result is true, the simulation is terminated. If the determination result is false, the process returns to step 111.

コンピュータ120においては、最初にステップ1011でデータ同期条件を指定するファイルを読み込む点と、高速クロックで動作する高速機能のシミュレーションの代わりに、低速クロックで動作する低速機能のシミュレーション112と低速機能のシミュレーション122を実行する点以外は、コンピュータ110における処理と同様である。   In the computer 120, a file for designating data synchronization conditions is first read in step 1011. A low-speed function simulation 112 and a low-speed function simulation that operate with a low-speed clock are used instead of a high-speed function simulation that operates with a high-speed clock. The processing is the same as the processing in the computer 110 except that 122 is executed.

このように、データ同期条件をファイル入力等により予め指定することにより、データ同期条件とそれに伴う処理を最適に設定することが可能となり、並列シミュレーションの速度向上効果を得ることができる。   As described above, by designating the data synchronization condition in advance by file input or the like, it is possible to optimally set the data synchronization condition and the processing associated therewith, and an effect of improving the speed of parallel simulation can be obtained.

(実施の形態7)
図7は本発明の実施の形態7に係る並列シミュレーション装置の構成を示すブロック図である。図7において、並列シミュレーション装置700は1台のコンピュータ701で構成され、そのコンピュータ701が、LSIの内部機能のシミュレーション分担するCPU710およびCPU720と、それらを接続するバス730とで構成されている。
(Embodiment 7)
FIG. 7 is a block diagram showing a configuration of a parallel simulation apparatus according to Embodiment 7 of the present invention. In FIG. 7, the parallel simulation apparatus 700 includes a single computer 701, and the computer 701 includes a CPU 710 and a CPU 720 that share the simulation of the internal functions of the LSI, and a bus 730 that connects them.

CPU710は高速クロックで動作する機能のシミュレーション511とシミュレーション521を実行し、CPU720は低速クロックで動作する機能のシミュレーション512とシミュレーション522を実行する。   The CPU 710 executes a simulation 511 and a simulation 521 of a function operating with a high-speed clock, and the CPU 720 executes a simulation 512 and a simulation 522 of a function operating with a low-speed clock.

図7を図6に対比させると、CPU710がコンピュータ110に対応し、CPU720がコンピュータ120に対応し、バス730がネットワーク130に対応している。   7 is compared with FIG. 6, the CPU 710 corresponds to the computer 110, the CPU 720 corresponds to the computer 120, and the bus 730 corresponds to the network 130.

このように並列シミュレーション装置を構成することにより、ネットワークで接続された2台のコンピュータで構成された並列シミュレーション装置に比べて、バス接続された2つのCPUを含む1台のコンピュータで前記各実施の形態の並列シミュレーション方法を実行することができるため、高速に動作する並列シミュレーション装置を実現することができる。   By configuring the parallel simulation apparatus in this way, each of the above-described embodiments can be performed by one computer including two CPUs connected by a bus compared to a parallel simulation apparatus configured by two computers connected by a network. Therefore, a parallel simulation apparatus that operates at high speed can be realized.

(実施の形態8)
図8は本発明の実施の形態8に係る並列シミュレーション装置の構成を示すブロック図である。図8において、並列シミュレーション装置800は、LSIの内部機能のシミュレーションを分担するハードウェアエミュレータ810およびコンピュータ120と、それらを接続するネットワーク130とで構成されている。
(Embodiment 8)
FIG. 8 is a block diagram showing a configuration of a parallel simulation apparatus according to Embodiment 8 of the present invention. In FIG. 8, a parallel simulation apparatus 800 includes a hardware emulator 810 and a computer 120 that share the simulation of the internal functions of the LSI, and a network 130 that connects them.

ハードウェアエミュレータ810は10MHzで動作する機能のシミュレーション511とシミュレーション521を実行し、さらに100MHzで動作する機能のシミュレーション811を実行する。コンピュータ120は10kHzで動作する機能のシミュレーション512とシミュレーション522を実行する。   The hardware emulator 810 executes a simulation 511 and a simulation 521 of a function operating at 10 MHz, and further executes a simulation 811 of a function operating at 100 MHz. The computer 120 executes a simulation 512 and a simulation 522 of a function operating at 10 kHz.

図7を図6に対比させると、コンピュータ110に代えてハードウェアエミュレータ810を採用したことにより、コンピュータ110が分担していた10MHzで動作する機能のシミュレーション511とシミュレーション521に加えて、100MHzで動作する機能のシミュレーション811を処理できるようになっている。   When FIG. 7 is compared with FIG. 6, since the hardware emulator 810 is employed instead of the computer 110, the computer 110 operates at 100 MHz in addition to the simulation 511 and the simulation 521 of the function that operates at 10 MHz. The function simulation 811 can be processed.

このように、ハードウェアエミュレータを採用して並列シミュレーション装置を構成することにより、同一のコンピュータで構成された並列シミュレーション装置に比べて、より高速なシミュレーションの実行が可能な並列シミュレーション装置を実現することができる。   In this way, by configuring a parallel simulation device using a hardware emulator, a parallel simulation device capable of executing a simulation at a higher speed than a parallel simulation device configured with the same computer is realized. Can do.

(実施の形態9)
図12は本発明の実施の形態9に係る並列シミュレーション装置の構成を示すブロック図である。図9において、並列シミュレーション装置1200は、実施の形態7における並列シミュレーション装置のコンピュータ701と、コンピュータ1210、1220と、それらを接続するネットワーク130とで構成されている。
(Embodiment 9)
FIG. 12 is a block diagram showing a configuration of a parallel simulation apparatus according to Embodiment 9 of the present invention. In FIG. 9, the parallel simulation apparatus 1200 includes a computer 701 of the parallel simulation apparatus according to the seventh embodiment, computers 1210 and 1220, and a network 130 that connects them.

コンピュータ701は、10MHzで動作する機能のシミュレーション511とシミュレーション521、および10kHzで動作する機能のシミュレーション512とシミュレーション522を実行する。   The computer 701 executes a simulation 511 and a simulation 521 of a function operating at 10 MHz, and a simulation 512 and a simulation 522 of a function operating at 10 kHz.

コンピュータ1210は高速な100MHzで動作する機能のシミュレーション1211を実行し、コンピュータ1220は低速の32kHzで動作する機能のシミュレーション1221とシミュレーション1222を実行する。   The computer 1210 executes a simulation 1211 of a function operating at a high speed of 100 MHz, and the computer 1220 executes a simulation 1221 and a simulation 1222 of a function operating at a low speed of 32 kHz.

このように、複合型の並列シミュレーション装置を構成することにより、同一のコンピュータで構成された並列シミュレーション装置に比べて、より多様な並列シミュレーションの構成が可能となり、並列度を増した高速シミュレーションが可能な並列シミュレーション装置を実現することができる。   In this way, by configuring a complex parallel simulation device, it is possible to configure a wider variety of parallel simulations compared to a parallel simulation device configured with the same computer, enabling high-speed simulation with increased parallelism. A parallel simulation apparatus can be realized.

本発明の並列シミュレーション装置および並列シミュレーション方法は、複数クロックを有するLSI機能の並列シミュレーションにおいて、それぞれのクロック周波数毎にLSI機能を分割して並列にシミュレーションを行うことにより、クロック周波数の違い吸収するための分周周期に係る処理が不要になるため、その処理に起因するシミュレーション速度の低下を招くことが無くなるという効果を有し、複数周波数のクロックを有するLSI機能を並列シミュレーションするための並列シミュレーション装置および並列シミュレーション方法等として有用である。   The parallel simulation apparatus and parallel simulation method of the present invention absorbs differences in clock frequencies by performing parallel simulation by dividing LSI functions for each clock frequency in parallel simulation of LSI functions having a plurality of clocks. The parallel simulation apparatus for performing parallel simulation of LSI functions having clocks of a plurality of frequencies has the effect of eliminating a decrease in the simulation speed due to the processing because the processing related to the frequency division cycle is unnecessary It is also useful as a parallel simulation method.

従来法による並列シミュレーション装置の実施形態を示すブロック図。The block diagram which shows embodiment of the parallel simulation apparatus by a conventional method. 本発明の実施の形態1に係る並列シミュレーション装置の構成を示すブロック図。The block diagram which shows the structure of the parallel simulation apparatus which concerns on Embodiment 1 of this invention. 従来法による並列シミュレーションのフローチャート。The flowchart of the parallel simulation by a conventional method. 本発明の実施の形態1に係る並列シミュレーション方法を示すフローチャート。The flowchart which shows the parallel simulation method which concerns on Embodiment 1 of this invention. 従来法による並列シミュレーション装置の実施形態を示すブロック図。The block diagram which shows embodiment of the parallel simulation apparatus by a conventional method. 本発明の実施の形態1に係る並列シミュレーション装置の構成を示すブロック図。The block diagram which shows the structure of the parallel simulation apparatus which concerns on Embodiment 1 of this invention. 本発明の実施の形態7に係る並列シミュレーション装置の構成を示すブロック図。The block diagram which shows the structure of the parallel simulation apparatus which concerns on Embodiment 7 of this invention. 本発明の実施の形態8に係る並列シミュレーション装置の構成を示すブロック図。The block diagram which shows the structure of the parallel simulation apparatus which concerns on Embodiment 8 of this invention. 本発明の実施の形態3に係る並列シミュレーション装置の構成を示すブロック図。The block diagram which shows the structure of the parallel simulation apparatus which concerns on Embodiment 3 of this invention. 本発明の実施の形態6に係る並列シミュレーション方法を示すフローチャート。The flowchart which shows the parallel simulation method which concerns on Embodiment 6 of this invention. データ同期条件を指定するファイルの構成例を示す図。The figure which shows the structural example of the file which designates a data synchronization condition. 本発明の実施の形態9に係る並列シミュレーション装置の構成を示すブロック図。The block diagram which shows the structure of the parallel simulation apparatus which concerns on Embodiment 9 of this invention. 本発明の実施の形態2に係る並列シミュレーション方法を示すフローチャート。The flowchart which shows the parallel simulation method which concerns on Embodiment 2 of this invention. 本発明の実施の形態3に係る並列シミュレーション方法を示すフローチャート。The flowchart which shows the parallel simulation method which concerns on Embodiment 3 of this invention. 本発明の実施の形態4に係る並列シミュレーション方法を示すフローチャート。The flowchart which shows the parallel simulation method which concerns on Embodiment 4 of this invention. 本発明の実施の形態5に係る並列シミュレーション方法を示すフローチャート。The flowchart which shows the parallel simulation method which concerns on Embodiment 5 of this invention.

符号の説明Explanation of symbols

100、200、500、600、700、800、900、1200 並列シミュレーション装置
110、120、701、1210、1220 コンピュータ
111、121 高速機能のシミュレーション
112、122 低速機能のシミュレーション
130、910、920 ネットワーク
301〜306、311〜316、402〜405、412〜415、1001、1011、1303、1313、1403、1413、1504、1514、1604、1614 ステップ
511、521 10MHzで動作する機能のシミュレーション
512、522 10kHzで動作する機能のシミュレーション
710、720 CPU
730 バス
810 ハードウェアエミュレータ
811、1211 100MHzで動作する機能のシミュレーション
930 外部同期処理部
ステップ
1101 シミュレーションする機能
1102 同期条件
1103 同期処理を行うデータ
1221、1222 32kHzで動作する機能のシミュレーション
100, 200, 500, 600, 700, 800, 900, 1200 Parallel simulation apparatus 110, 120, 701, 1210, 1220 Computer 111, 121 High-speed function simulation 112, 122 Low-speed function simulation 130, 910, 920 Network 301- 306, 311 to 316, 402 to 405, 412 to 415, 1001, 1011, 1303, 1313, 1403, 1413, 1504, 1514, 1604, 1614 Step 511, 521 Simulation of function operating at 10 MHz 512, 522 Operating at 10 kHz Of function to perform 710, 720 CPU
730 Bus 810 Hardware emulator 811, 1211 Simulation of function operating at 100 MHz 930 External synchronization processing unit Step 1101 Function to simulate 1102 Synchronization condition 1103 Data to perform synchronization processing 1221, 1222 Simulation of function operating at 32 kHz

Claims (2)

複数周波数のクロックを有するLSI機能を並列シミュレーションする非同期反復型の並列シミュレーション装置であって、
前記クロックの周波数毎に分割したLSI機能を並列にシミュレーションするシミュレーション手段と、
並列動作するシミュレーション間のデータ同期処理を実行するデータ同期処理手段とを備え
前記データ同期処理手段は、データ同期条件として特定の外部入力信号の変化を判定する並列シミュレーション装置。
An asynchronous repetitive parallel simulation device for parallel simulation of LSI functions having clocks of multiple frequencies,
Simulation means for simulating in parallel LSI functions divided for each frequency of the clock;
Data synchronization processing means for executing data synchronization processing between simulations operating in parallel ,
The data synchronization processing means, parallel simulation device you determine a change in the specific external input signals as data synchronization condition.
複数周波数のクロックを有するLSI機能を並列シミュレーションする非同期反復型の並列シミュレーション方法であって、
前記クロックの周波数毎に前記LSI機能を分割し、分割されたLSI機能を並列にシミュレーションし、
データ同期条件として特定の外部入力信号の変化の判定により、並列動作するシミュレーション間のデータ同期処理を実行する並列シミュレーション方法。
An asynchronous iterative parallel simulation method for parallel simulation of LSI functions having clocks of multiple frequencies,
Dividing the LSI function for each clock frequency, simulating the divided LSI functions in parallel,
A parallel simulation method for performing data synchronization processing between simulations operating in parallel by determining a change in a specific external input signal as a data synchronization condition .
JP2003289892A 2003-08-08 2003-08-08 Parallel simulation apparatus and parallel simulation method Expired - Fee Related JP4205525B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003289892A JP4205525B2 (en) 2003-08-08 2003-08-08 Parallel simulation apparatus and parallel simulation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003289892A JP4205525B2 (en) 2003-08-08 2003-08-08 Parallel simulation apparatus and parallel simulation method

Publications (2)

Publication Number Publication Date
JP2005063002A JP2005063002A (en) 2005-03-10
JP4205525B2 true JP4205525B2 (en) 2009-01-07

Family

ID=34368077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003289892A Expired - Fee Related JP4205525B2 (en) 2003-08-08 2003-08-08 Parallel simulation apparatus and parallel simulation method

Country Status (1)

Country Link
JP (1) JP4205525B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4743427B2 (en) * 2006-06-08 2011-08-10 日本電気株式会社 Circuit operation verification method
JPWO2008126196A1 (en) * 2007-03-19 2010-07-22 富士通株式会社 Simulation control program, recording medium, simulation apparatus, and simulation control method

Also Published As

Publication number Publication date
JP2005063002A (en) 2005-03-10

Similar Documents

Publication Publication Date Title
JP2001060219A (en) Design verification method and device using emulation and simulation
US8316341B2 (en) Hardware description language (HDL) generation systems and methods for custom circuit boards
JP2007508638A (en) Method and apparatus for speeding up design verification of application specific integrated circuit design
JP4599266B2 (en) Simulation apparatus and simulation method
US20080208557A1 (en) Simulation method and simulation system
US7822909B2 (en) Cross-bar switching in an emulation environment
JP2003173270A (en) Software debugging device
US8074192B2 (en) Verification support apparatus, verification support method, and computer product
US7228513B2 (en) Circuit operation verification device and method
US20040230934A1 (en) System and method for emulating systems with multiple field programmable gate arrays
JP4205525B2 (en) Parallel simulation apparatus and parallel simulation method
JP3651588B2 (en) Data processing system with adjustable clock for a segmented synchronization interface
JP5621792B2 (en) Semiconductor circuit design support apparatus and method, and semiconductor circuit design support program
JP6223637B2 (en) Simulation apparatus, simulation method, and simulation program
JP6664158B2 (en) Simulation apparatus, simulation method, and simulation program
JP2011258124A (en) Debug circuit and debug system
JP4764687B2 (en) Design support system and information processing method
JP2007122158A (en) Simulation method and device
JP2954019B2 (en) Logic simulation method
JP4645843B2 (en) Data processing apparatus, data processing method and program
JP2982418B2 (en) Functional simulation device
JP2000348076A (en) Method and device for simulation and recording medium
JP2990882B2 (en) Functional simulation device
JP2007026030A (en) Logic synthesis method and apparatus
JPH05266124A (en) Method for preparing circuit element library for logic circuit simulation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060126

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060325

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071114

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071121

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071128

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071205

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080625

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080819

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081016

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

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

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees