Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3472067B2 - Design support equipment - Google Patents
[go: Go Back, main page]

JP3472067B2 - Design support equipment - Google Patents

Design support equipment

Info

Publication number
JP3472067B2
JP3472067B2 JP06514397A JP6514397A JP3472067B2 JP 3472067 B2 JP3472067 B2 JP 3472067B2 JP 06514397 A JP06514397 A JP 06514397A JP 6514397 A JP6514397 A JP 6514397A JP 3472067 B2 JP3472067 B2 JP 3472067B2
Authority
JP
Japan
Prior art keywords
time
switching
model
hardware
simulator
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
JP06514397A
Other languages
Japanese (ja)
Other versions
JPH10261002A (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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP06514397A priority Critical patent/JP3472067B2/en
Publication of JPH10261002A publication Critical patent/JPH10261002A/en
Application granted granted Critical
Publication of JP3472067B2 publication Critical patent/JP3472067B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明はハードウェアの設計
を支援するCAD(計算機支援設計)システムに係わ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a CAD (Computer Aided Design) system for supporting hardware design.

【0002】[0002]

【従来の技術】近年、LSI等の設計対象ハードウェア
の大規模化に伴って、設計効率の向上を目的として機能
設計のような設計の上位工程から設計を支援するCAD
システムが開発されている。
2. Description of the Related Art In recent years, with the increase in the scale of hardware to be designed such as LSI, CAD for supporting the design from the upper step of design such as functional design for the purpose of improving the design efficiency.
The system is being developed.

【0003】ここで、シミュレータの入力データとして
は、図面による入力の他に、ソフトウェアのプログラム
言語に類似したハードウェア設計用のハードウェア記述
言語(以下HDLと表記する)が用いられ、設計者は図
面やあるいはHDL等をシミュレータに入力し、シミュ
レーションによって設計を検証する。
As input data of the simulator, a hardware description language (hereinafter referred to as HDL) for hardware design similar to the programming language of software is used in addition to the input by the drawing, and the designer Input drawings or HDL etc. into the simulator and verify the design by simulation.

【0004】HDLの中でも、VHDL、Verilo
g HDL等は、ミックスレベルシミュレーションをサ
ポートしている。すなわち、単一のHDLにより複数の
記述レベル、記述方式でモデル記述を行ない、それらを
結合して検証できるため、多くの設計で利用されつつあ
る。
Among HDL, VHDL and Verilo
g HDL and the like support mixed level simulation. In other words, since it is possible to perform model description with a plurality of description levels and description methods using a single HDL and combine them for verification, it is being used in many designs.

【0005】シミュレーションモデル中に記述された並
列に動作する単位をプロセスという。VHDL、Ver
ilog HDLで記述されたプロセスの一例をそれぞ
れ図2、3に示す。
A unit operating in parallel described in the simulation model is called a process. VHDL, Ver
An example of the process described in ilog HDL is shown in FIGS.

【0006】VHDL記述におけるプロセスは(図2参
照)、予約語「process」に続く括弧中に示され
る信号、すなわちこの例の場合、信号「in1」、「i
n2」の値が変化したとき実行される。同様にVeri
log HDLにおけるプロセスは(図3参照)、予約
語「always@」に続く括弧中に示される信号の値
が変化したときに実行される。
The process in the VHDL description (see FIG. 2) is the signal shown in parentheses following the reserved word "process", ie in this case the signals "in1", "i".
It is executed when the value of "n2" changes. Similarly Veri
The process in log HDL (see FIG. 3) is executed when the value of the signal shown in parentheses following the reserved word “always @” changes.

【0007】上記の括弧中に示される信号のリストをプ
ロセスのセンシティビティ・リストといい、その信号を
センシティビティ信号、駆動信号という。
The list of signals shown in parentheses above is called the process sensitivity list, and the signals are called sensitivity signals and drive signals.

【0008】上位工程からの設計を支援するために、シ
ミュレータには大規模な回路を高速にシミュレーション
できる能力が強く要求されている。
In order to support the design from the upper process, the simulator is strongly required to have the ability to simulate a large-scale circuit at high speed.

【0009】そのために、大規模な回路を、従来用いら
れていたイベントドリブン方式のシミュレータでシミュ
レーションするのではなく、サイクルベース方式という
高速化方式でシミュレーションする方法などが提案され
てきている。
For this reason, there has been proposed a method of simulating a large-scale circuit by a high-speed method called a cycle-based method instead of simulating it by an event-driven method simulator that has been used conventionally.

【0010】イベントドリブン法とは、ある時刻である
素子の入力に変化があれば、次の時刻でその素子の論理
演算を行い、変化がなければ何も行わない手法である。
The event-driven method is a method in which, if there is a change in the input of an element at a certain time, the logical operation of that element is performed at the next time, and if there is no change, nothing is done.

【0011】以下に、イベントドリブン方式を示す。The event driven method will be described below.

【0012】イベントドリブンシミュレーション ステップ0:(初期プロセス実行) 全てのプロセスを
動作させ、信号値更新要求について処理し信号代入予約
を登録し、ステップ1へ進む。
Event-Driven Simulation Step 0: (Initial Process Execution) All processes are operated, signal value update requests are processed, signal substitution reservations are registered, and step 1 is proceeded to.

【0013】ステップ1:(サイクル更新) シミュレ
ーションサイクルを1サイクル進める。現サイクルにお
けるタイムホイールに代入予約が登録されているならス
テップ3へ進む。登録されていないならステップ2へ進
む。
Step 1: (Cycle update) The simulation cycle is advanced by one cycle. If the substitution reservation is registered in the time wheel in the current cycle, the process proceeds to step 3. If not registered, proceed to step 2.

【0014】ステップ2:(時刻更新) 時刻を一時刻
進める。現時刻における信号値更新要求が存在するなら
ステップ4へ進む。存在しないなら、存在するところま
で時刻を進めてステップ3へ進む。
Step 2: (Time update) The time is advanced by one time. If there is a signal value update request at the current time, the process proceeds to step 4. If it does not exist, the time is advanced to the place where it exists and the process proceeds to step 3.

【0015】ステップ3:(信号代入) 現時刻におけ
る信号値更新を実行する。この時、値が更新される信号
が駆動するプロセスをタイムホイールへ登録する(以
下、プロセス実行予約と記す)。次にステップ4へ進
む。
Step 3: (Signal Substitution) The signal value update at the current time is executed. At this time, the process driven by the signal whose value is updated is registered in the time wheel (hereinafter referred to as process execution reservation). Then proceed to step 4.

【0016】ステップ4:(プロセス実行) ステップ
3でプロセス実行予約されたプロセスを動作させ、信号
値更新要求について処理し、ステップ1へ戻る。
Step 4: (Process execution) The process reserved for process execution in step 3 is operated, the signal value update request is processed, and the process returns to step 1.

【0017】このように、イベントドリブンシ方式のミ
ュレーションは、信号の値の変化(イベント)を検出し
て、順次信号値を伝搬させていき、全ての信号に変化が
なくなった時に初めて、時刻の更新を行なうようになっ
ている。
As described above, in the event-driven simulation, the change in the value of the signal (event) is detected and the signal values are sequentially propagated. Is designed to be updated.

【0018】一方、サイクルベース方式のシミュレーシ
ョンは、あらかじめシミュレーションモデルの処理の依
存関係を静的に解析し、イベントドリブン方式でシミュ
レーションした場合とクロックの区切りで結果が一致す
るようにプロセス等の実行順序を決定して、1クロック
毎に回路全体を決められた回数だけ評価する。
On the other hand, in the cycle-based simulation, the process dependence of the simulation model is statically analyzed in advance, and the execution order of the processes is adjusted so that the results match at the clock breaks when the simulation is performed by the event driven system. And evaluate the entire circuit for each clock a predetermined number of times.

【0019】サイクルベース方式のシミュレーションは
タイミングを検証するために用いられるのではなく、機
能の確認に目的を絞って高速に検証を行なうために用い
られる。そのため、クロック信号以外の信号の代入予約
記述に書かれた遅延を許さないか、無視されることが多
い。
The cycle-based method simulation is not used for verifying the timing, but is used for performing verification at high speed focusing on the confirmation of the function. Therefore, the delay described in the substitution reservation description of signals other than the clock signal is often not allowed or ignored.

【0020】イベントドリブン方式でシミュレーション
した時に、一クロック内に何度も値が変化していた信号
は、サイクルベース方式のシミュレーションにおいて
は、値の変化は1クロックに1回(場合によっては複数
回だが定数回である)だけになり、シミュレーションを
高速化することができる。
A signal whose value has changed many times within one clock when simulated by the event driven system shows that the value changes once per clock (or several times in some cases) in the cycle-based simulation. However, it is a constant number of times) and the simulation can be sped up.

【0021】しかし、サイクルベース方式を用いる場
合、シミュレーションモデルの処理の依存関係に基づい
て、プロセス等の実行順序をあらかじめ固定しているた
め、イベントの伝搬の様子等を詳細に観測することは困
難である。
However, when the cycle-based method is used, it is difficult to observe the event propagation state in detail because the execution order of the processes and the like is fixed in advance based on the processing dependency of the simulation model. Is.

【0022】サイクルベース方式の他に、シミュレーシ
ョン高速化の手段として、大規模な回路のうち、既にデ
バッグ済みのモジュールや、市販モジュール部分はハー
ドウェアの構成に基づいたレジスタ・トランスファ・レ
ベルのモデルではなく対象となるハードウェアモデルの
動作に基づいたビヘイビア・レベルのモデルを用いるこ
とによって回路全体のシミュレーション速度を向上させ
るという方法なども用いられている。
In addition to the cycle-based method, as a means for accelerating the simulation, in a large-scale circuit, the already-debugged module and the commercially available module part are not in the register transfer level model based on the hardware configuration. Another method is to improve the simulation speed of the entire circuit by using a behavior level model based on the behavior of the target hardware model.

【0023】この手法の場合、ある大規模回路をシミュ
レーション中に、ビヘイビア・レベルのモデルを用いて
いるモジュールのレジスタ・トランスファ・レベルでの
デバッグが必要になった場合、モデルをビヘイビアモデ
ルからレジスタ・トランスファ・レベルのモデルに変え
てシミュレーションを最初からやり直さなくてはならな
い。
In the case of this method, when it is necessary to debug the module using the behavior level model at the register transfer level while simulating a large scale circuit, the model is transferred from the behavior model to the register transfer level. You have to change to a transfer-level model and start the simulation over.

【0024】[0024]

【発明が解決しようとする課題】サイクルベース方式で
は、高速なシミュレーションが行えるが、イベントの伝
搬の様子等を詳細に観測することは困難であるという問
題があった。そのため、サイクルベース方式で検証を行
なって、詳細なシミュレーションが必要と判断された
時、改めて、イベントドリブン方式等の詳細であるが低
速なシミュレーションを最初から実行し直さなくてはな
らない。この場合、問題が発生する時刻までは信号を詳
細に観測する必要がないにも関わらず、低速なシミュレ
ーションを行なうため、検証期間を増大させる結果につ
ながるという問題があった。
In the cycle-based method, high-speed simulation can be performed, but there is a problem that it is difficult to observe the event propagation state in detail. Therefore, when it is determined that a detailed simulation is required by performing the verification by the cycle-based method, it is necessary to re-execute the detailed but slow simulation such as the event driven method from the beginning. In this case, although it is not necessary to observe the signal in detail until the time when the problem occurs, there is a problem that the verification period is increased because the slow simulation is performed.

【0025】また、大規模回路のうち、一部をビヘイビ
ア・レベルのモデルを用いることによって回路全体のシ
ミュレーション速度を向上させるという方法では、ある
大規模回路をシミュレーション中に、ビヘイビア・レベ
ルのモデルを用いているモジュールのレジスタ・トラン
スファ・レベルでのデバッグが必要になった場合、モデ
ルをビヘイアモデルからレジスタ・トランスファ・レベ
ルのモデルに変えてシミュレーションを最初からやり直
さなくてはならないという問題があった。
Further, in the method of improving the simulation speed of the whole circuit by using a part of the large scale circuit at the behavior level model, the behavior level model is changed during the simulation of a certain large scale circuit. If the module used is required to be debugged at the register transfer level, the model has to be changed from the behavior model to the register transfer level model and the simulation has to be restarted from the beginning.

【0026】そこで、本発明は、特に、簡略なシミュレ
ーションから詳細なシミュレーションに切り替えが円滑
に行え、検証のレベルにあったシミュレーションが容易
にしかも高速に行える設計支援方法およびそれを用いた
設計支援装置を提供することを目的とする。
In view of this, the present invention is particularly directed to a design support method and a design support apparatus using the same, which can smoothly switch from a simple simulation to a detailed simulation and can easily perform simulation at a verification level at high speed. The purpose is to provide.

【0027】[0027]

【課題を解決するための手段】本発明の設計支援方法
は、少なくとも2つのハードウエアのモデルのそれぞれ
の詳細度を獲得し、これらモデルの切替時刻が指定され
た場合に、この指定された切替時刻と前記詳細度とに基
づき決定された切替時刻で前記モデルを切替えて前記ハ
ードウエアの動作を検証することにより、特に、簡略な
シミュレーションから詳細なシミュレーションへの切り
替えが円滑に行え、検証のレベルにあったシミュレーシ
ョンが容易にしかも高速に行える。
The design support method of the present invention obtains the level of detail of each of at least two hardware models, and when the switching times of these models are designated, the designated switching is performed. By switching the model and verifying the operation of the hardware at the switching time determined based on the time and the level of detail, in particular, a simple simulation can be smoothly switched to a detailed simulation, and the level of verification can be improved. The simulation that suits you can be done easily and at high speed.

【0028】また、本発明の設計支援方法は、少なくと
も2つのハードウエアの動作を検証するシミュレータの
それぞれの詳細度を獲得し、これらシミュレータの切替
時刻が指定された場合に、この指定された切替時刻と前
記詳細度とに基づき決定された切替時刻で前記シミュレ
ータを切替えて前記ハードウエアの動作を検証すること
により、特に、簡略なシミュレーションから詳細なシミ
ュレーションへの切り替えが円滑に行え、検証のレベル
にあったシミュレーションが容易にしかも高速に行え
る。
Further, the design support method of the present invention acquires the level of detail of each simulator for verifying the operation of at least two hardware, and when the switching time of these simulators is designated, the designated switching is performed. By switching the simulator and verifying the operation of the hardware at the switching time determined based on the time and the level of detail, in particular, switching from a simple simulation to a detailed simulation can be smoothly performed, and the level of verification can be improved. The simulation that suits you can be done easily and at high speed.

【0029】また、本発明の設計支援方法は、少なくと
も2つのハードウエアのモデルのそれぞれの詳細度を獲
得し、これらモデルの第1の切替時刻が指定された場合
に、この第1の切替時刻から前記詳細度に基づき決定さ
れた時間だけ前倒しした第2の切替時刻まで、詳細度の
粗い方のモデルで前記ハードウエアの動作を検証し、前
記第2の切替時刻で詳細度の細かい方のモデルに切り替
えて前記ハードウエアの動作を検証することにより、特
に、簡略なシミュレーションから詳細なシミュレーショ
ンへの切り替えが円滑に行え、検証のレベルにあったシ
ミュレーションが容易にしかも高速に行える。
Further, the design support method of the present invention obtains the level of detail of each of at least two hardware models, and when the first switching time of these models is designated, this first switching time is set. To the second switching time advanced by the time determined based on the detail level, the operation of the hardware is verified by the model with the coarser level of detail, and the operation with the finer level of detail is performed at the second switch time. By switching to the model and verifying the operation of the hardware, in particular, the switching from the simple simulation to the detailed simulation can be smoothly performed, and the simulation suitable for the verification level can be performed easily and at high speed.

【0030】また、本発明の設計支援方法は、少なくと
も2つのハードウエアの動作を検証するシミュレータの
それそれの詳細度を獲得し、これらシミュレータの第1
の切替時刻が指定された場合に、この第1の切替時刻か
ら前記詳細度に基づき決定された時間だけ前倒しした第
2の切替時刻まで、詳細度の粗い方のシミュレータで前
記ハードウエアの動作を検証し、前記第2の切替時刻で
詳細度の細かい方のシミュレータに切り替えて前記ハー
ドウエアの動作を検証することにより、特に、簡略なシ
ミュレーションから詳細なシミュレーションへの切り替
えが円滑に行え、検証のレベルにあったシミュレーショ
ンが容易にしかも高速に行える。
Further, the design support method of the present invention acquires the level of detail of each of the simulators for verifying the operation of at least two hardware, and the first of these simulators is used.
When the switching time of is specified, the operation of the hardware is performed by the simulator with the coarser level of detail from the first switching time to the second switching time advanced by the time determined based on the level of detail. By verifying and switching to a simulator with a finer level of detail at the second switching time to verify the operation of the hardware, in particular, a smooth simulation can be smoothly switched to a detailed simulation, and the verification can be performed smoothly. Simulation suitable for the level can be performed easily and at high speed.

【0031】本発明の設計支援装置は、ハードウエアの
モデルを少なくとも2つ指定するモデル指定手段と、こ
のモデル指定手段で指定されたモデルの詳細度を獲得す
る詳細度獲得手段と、前記モデル指定手段で指定された
モデルの切替時刻を指定する時刻指定手段と、この時刻
指定手段で指定された切替時刻と前記詳細度獲得手段で
獲得された前記モデルの詳細度に基づき決定された切替
時刻で前記モデルを切替えて前記ハードウエアの動作を
検証する検証手段と、を具備したことにより、特に、簡
略なシミュレーションから詳細なシミュレーションへの
切り替えが円滑に行え、検証のレベルにあったシミュレ
ーションが容易にしかも高速に行える。
The design support apparatus of the present invention includes a model designating unit for designating at least two hardware models, a detail level acquiring unit for acquiring the level of detail of the model specified by the model designating unit, and the model designating unit. A time designation means for designating a switching time of the model designated by the means, and a switching time designated by the time designating means and a switching time determined based on the detail level of the model acquired by the detail level acquiring means. By including the verification means for switching the model and verifying the operation of the hardware, particularly, it is possible to smoothly switch from the simple simulation to the detailed simulation and facilitate the simulation suitable for the verification level. Moreover, it can be done at high speed.

【0032】また、本発明の設計支援装置は、ハードウ
エアの動作を検証するシミュレータを少なくとも2つ指
定するシミュレータ指定手段と、このシミュレータ指定
手段で指定されたシミュレータの詳細度を獲得する詳細
度獲得手段と、前記シミュレータ指定手段で指定された
シミュレータの切替時刻を指定する時刻指定手段と、こ
の時刻指定手段で指定された切替時刻と前記詳細度獲得
手段で獲得された前記シミュレータの詳細度とに基づき
決定された切替時刻で前記シミュレータを切替えて前記
ハードウエアの動作を検証する検証手段と、を具備した
ことにより、特に、簡略なシミュレーションから詳細な
シミュレーションへの切り替えが円滑に行え、検証のレ
ベルにあったシミュレーションが容易にしかも高速に行
える。
Further, the design support apparatus of the present invention acquires simulator detail means for designating at least two simulators for verifying the operation of the hardware and detail level for obtaining the detail level of the simulator designated by the simulator designating means. Means, a time designating means for designating a switching time of the simulator designated by the simulator designating means, a switching time designated by the time designating means, and the detail level of the simulator acquired by the detail level acquiring means. By providing the verification means for verifying the operation of the hardware by switching the simulator at the switching time determined based on the switching time, in particular, the switching from the simple simulation to the detailed simulation can be smoothly performed, and the verification level can be improved. The simulation that suits you can be done easily and at high speed.

【0033】また、本発明の設計支援装置は、ハードウ
エアのモデルを少なくとも2つ指定するモデル指定手段
と、このモデル指定手段で指定されたモデルのそれぞれ
の詳細度を獲得する詳細度獲得手段と、前記モデル指定
手段で指定されたモデルの第1の切替時刻を指定する時
刻指定手段と、この時刻指定手段で指定された第1の切
替時刻から前記詳細度獲得手段で獲得された詳細度に基
づき決定された時間だけ前倒しした第2の切替時刻ま
で、前記詳細度獲得手段で獲得された詳細度の粗い方の
モデルで前記ハードウエアの動作を検証し、前記第2の
切替時刻で前記詳細度の細かい方のモデルに切り替えて
前記ハードウエアの動作を検証する検証手段と、を具備
したことにより、特に、簡略なシミュレーションから詳
細なシミュレーションへの切り替えが円滑に行え、検証
のレベルにあったシミュレーションが容易にしかも高速
に行える。
The design support apparatus of the present invention further comprises a model designating means for designating at least two hardware models, and a detail level acquiring means for acquiring the level of detail of each model specified by the model designating means. A time designating means for designating a first switching time of the model designated by the model designating means, and a detail level acquired by the detail level acquiring means from the first switching time designated by the time designating means. Based on the model having a coarser degree of detail acquired by the detail degree acquiring means, the operation of the hardware is verified until the second switch time advanced by the time determined based on the detailed change at the second switch time. By providing a verification means for switching to a model with a finer degree and verifying the operation of the hardware, particularly from a simple simulation to a detailed simulation. Switching to be smoothly carried out, simulation for the level of verification can be performed to easily and fast.

【0034】また、本発明の設計支援装置は、ハードウ
エアの動作を検証する2つのシミュレータを指定するシ
ミュレータ指定手段と、このシミュレータ指定手段で指
定されたシミュレータの詳細度を獲得する詳細度獲得手
段と、前記シミュレータ指定手段で指定されたシミュレ
ータの第1の切替時刻を指定する時刻指定手段と、この
時刻指定手段で指定された第1の切替時刻から前記詳細
度獲得手段で獲得された詳細度に基づき決定された時間
だけ前倒しした第2の切替時刻まで、前記詳細度獲得手
段で獲得された詳細度の粗い方のシミュレータで前記ハ
ードウエアの動作を検証し、前記第2の切替時刻で前記
詳細度の細かい方のシミュレータに切り替えて前記ハー
ドウエアの動作を検証する検証手段と、を具備したこと
により、特に、簡略なシミュレーションから詳細なシミ
ュレーションへの切り替えが円滑に行え、検証のレベル
にあったシミュレーションが容易にしかも高速に行え
る。
Further, the design support apparatus of the present invention includes simulator designating means for designating two simulators for verifying the operation of the hardware, and detail level acquiring means for acquiring the level of detail of the simulators designated by the simulator designating means. And a time designating means for designating a first switching time of the simulator designated by the simulator designating means, and a detail level acquired by the detail level acquiring means from the first switching time designated by the time designating means. Until the second switch time advanced by a time determined based on the above, the operation of the hardware is verified by the simulator with the coarser detail acquired by the detail acquiring means, and at the second switch time, By providing a verification means for verifying the operation of the hardware by switching to a simulator with a finer degree of detail, it is particularly easy. Switching to a detailed simulation from the simulation is carried out smoothly such, simulation for the level of verification can be performed to easily and fast.

【0035】また、本発明の設計支援装置は、ハードウ
エアの簡略なモデルを用いて前記ハードウエアとそのハ
ードウエアを機能させるソフトウエアの動作を検証する
第1の検証手段と、ハードウエアの詳細なモデルを用い
て前記ハードウエアとそのハードウエアを機能させるソ
フトウエアの動作を検証する第2の検証手段と、前記第
1および第2の検証手段のいずれか一方に切替る切替手
段と、を具備したことにより、検証対象にあったシミュ
レーションが容易にしかも高速に行える。
Further, the design support apparatus of the present invention uses the simple model of hardware to verify the operation of the hardware and the software that causes the hardware to function, and a detailed verification of the hardware. A second verification means for verifying the operation of the hardware and the software that causes the hardware to function using a simple model, and a switching means for switching to either one of the first and second verification means. With the provision, the simulation suitable for the verification target can be performed easily and at high speed.

【0036】また、本発明の設計支援装置は、ハードウ
エアの動作を簡略に検証するシミュレータを用いて前記
ハードウエアとそのハードウエアを機能させるソフトウ
エアの動作を検証する第1の検証手段と、ハードウエア
の動作を詳細に検証するシミュレータを用いて前記ハー
ドウエアとそのハードウエアを機能させるソフトウエア
の動作を検証する第2の検証手段と、前記第1および第
2の検証手段のいずれか一方に切替る切替手段と、を具
備したことにより、検証対象にあったシミュレーション
が容易にしかも高速に行える。
The design support apparatus of the present invention further comprises first verification means for verifying the operation of the hardware and the software that causes the hardware to function by using a simulator for simply verifying the operation of the hardware. One of the first and second verifying means for verifying the operation of the hardware and the software for operating the hardware by using a simulator for verifying the operation of the hardware in detail. By including the switching means for switching to, the simulation suitable for the verification target can be performed easily and at high speed.

【0037】[0037]

【発明の実施の形態】以下、本発明の実施の形態につい
て図面を参照して説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below with reference to the drawings.

【0038】(第1の実施形態)まず、第1の実施形態
として、ハードウエアの動作検証を行う際、そのハード
ウエアの時刻精度(詳細度)の異なる複数(例えば2
つ)の検証モデル(ハードウエアモデル)を切り替えて
シミュレーションを行う場合について説明する。
(First Embodiment) First, as a first embodiment, when verifying the operation of hardware, a plurality of hardwares (for example, 2
The case where the verification model (hardware model) of (1) is switched to perform the simulation will be described.

【0039】(1.1) 構成と動作 図1は、第1の実施形態に係る設計支援装置の構成例を
概略的に示した図で、第1のハードウエアモデル指定部
1、第2のハードウエア指定部2、モデル切替時刻指定
部3、時刻精度獲得部4、ハードウエアモデル記憶部
5、切替時間決定部6、ハードウエアモデル切替部7、
シミュレーション実行部8から構成される。
(1.1) Configuration and Operation FIG. 1 is a diagram schematically showing an example of the configuration of the design support apparatus according to the first embodiment. The first hardware model designation unit 1 and the second hardware model designation unit 1 Hardware designation unit 2, model switching time designation unit 3, time accuracy acquisition unit 4, hardware model storage unit 5, switching time determination unit 6, hardware model switching unit 7,
It is composed of a simulation execution unit 8.

【0040】ハードウエアモデル記憶部5には、例え
ば、図7、図8に示すように記述されたハードウエアモ
デルが記憶されている。
The hardware model storage unit 5 stores a hardware model described as shown in FIGS. 7 and 8, for example.

【0041】図7に示すハードウエアモデルの記述内容
を行番号に沿って説明する。
Description contents of the hardware model shown in FIG. 7 will be described along line numbers.

【0042】行0〜行1: モジュールの名前が「mo
del0」であり、そのモジュールには入力、出力のい
ずれのポートもないことを示す。
Line 0-Line 1: The module name is "mo
“Del0”, indicating that the module has neither an input port nor an output port.

【0043】行2〜行31: モジュール「model
0」の内部の構成を示す。
Lines 2 to 31: Module "model"
The internal configuration of "0" is shown.

【0044】行3: モジュール「model0」内の
信号が「CLK」、「A」、「B」、「C」、「D」で
あることを示す。
Row 3: Indicates that the signals in module "model0" are "CLK", "A", "B", "C", "D".

【0045】行5〜行8: 信号「CLK」が10ns
毎に反転することを示す。
Row 5 to Row 8: Signal "CLK" is 10 ns
It indicates that it is inverted every time.

【0046】行9〜行16: 信号「CLK」にイベン
トが発生した時に起動されるプロセスである。信号「C
LK」が「1」である時には信号「C」の値を信号
「A」に代入予約し、信号「CLK」が「0」の時には
信号「A」の値を反転した値を信号「A」に代入予約す
る。
Lines 9-16: The process that is invoked when an event occurs on the signal "CLK". Signal "C
When LK is "1", the value of the signal "C" is assigned to the signal "A" and reserved, and when the signal "CLK" is "0", the value obtained by inverting the value of the signal "A" is signal "A". Reserve by assigning to.

【0047】行17〜行24: 信号「A」にイベント
が発生した時、起動される2つのプロセス「p2」、
「p3」の記述であり、プロセス「p2」は信号「A」
の値を反転して2ns後に信号「B」に転送し、プロセ
ス「p3」は信号「A」の値を1ns後に信号「D」に
転送する。
Lines 17-24: Two processes "p2" which are activated when an event occurs in the signal "A",
It is a description of "p3", and the process "p2" is a signal "A".
Value is inverted and transferred to signal "B" after 2 ns, and process "p3" transfers the value of signal "A" to signal "D" after 1 ns.

【0048】行25〜行30: 信号「B」、信号
「D」の少なくとも1つの信号にイベントが発生した
時、起動されるプロセス「p4」の記述であり、信号
「B」と信号「D」の排他的論理和を信号「C」に転送
する。その後、信号「C」に最後にトランザクション
(値が変化する場合をイベントと呼ぶのに対して、値の
変化の有無に関わらず、信号の代入が実行された場合、
これをトランザクションと呼ぶ)が発生してからの経過
時刻をファイル「outf」に出力する。
Lines 25 to 30: A description of the process "p4" which is started when an event occurs in at least one of the signals "B" and "D", and includes the signals "B" and "D". Is transferred to the signal "C". Then, at the end of the signal “C”, a transaction (a case where the value changes is called an event, whereas a signal substitution is executed regardless of the change of the value,
This is called a transaction) and the elapsed time since the occurrence of the transaction is output to the file "outf".

【0049】図8に示すハードウエアモデルの記述内容
を行番号に沿って説明する。
Description contents of the hardware model shown in FIG. 8 will be described along line numbers.

【0050】行0〜行1: モジュールの名前が「mo
del1」であり、そのモデルには入力、出力のいずれ
のポートもないことを示す。
Line 0 to Line 1: The module name is "mo
"del1", indicating that the model has neither input nor output ports.

【0051】行2〜行29: モジュール「model
1」の内部の構成を示す。
Lines 2 to 29: Module "model
1 ”shows the internal configuration.

【0052】行3: モジュール「model1」内の
信号が「CLK」、「C」であることを示す。
Line 3: Indicates that the signals in module "model1" are "CLK", "C".

【0053】行5〜行8: 信号「CLK」が10ns
毎に反転することを示す。
Row 5 to Row 8: Signal "CLK" is 10 ns
It indicates that it is inverted every time.

【0054】行9〜行24: 信号「CLK」にイベン
トが発生した時に起動されるプロセスの記述である。こ
のプロセス中の変数が「A」、「B」、「D」であるこ
とを示す。また、ファイル出力のための「F」、「L」
の定義をする。「−」以降の記述はコメントであり、1
4行の「−p1」は行13〜行17部分が図7のプロセ
スp1に相当する部分であることを示す。以下、行2
0、行22、行24も同様である。すなわち、信号「C
LK」が「1」である時には信号「C」の値を変数
「A」に代入し、信号「CLK」が「0」の時には変数
「A」の値を反転した値を代入する。次に、変数「A」
の値の反転を変数「B」に代入し、変数「A」の値を変
数「D」に代入する。その後、変数「B」と変数「D」
の排他的論理和を信号「C」に代入予約する。また、信
号「C」に最後に発生したトランザクションからの経過
時間をファイル「outf」に出力する。
Line 9 to Line 24: A description of the process started when an event occurs in the signal "CLK". Indicates that the variables in this process are "A", "B", "D". Also, "F" and "L" for file output
Is defined. The description after "-" is a comment, and 1
"-P1" on line 4 indicates that the parts of lines 13 to 17 correspond to the process p1 of FIG. Below, line 2
The same applies to 0, row 22, and row 24. That is, the signal "C
When LK is "1", the value of the signal "C" is assigned to the variable "A", and when the signal "CLK" is "0", the inverted value of the variable "A" is assigned. Next, the variable "A"
The inversion of the value of is assigned to the variable “B”, and the value of the variable “A” is assigned to the variable “D”. After that, variable “B” and variable “D”
The exclusive OR of is assigned to the signal "C" and reserved. Also, the elapsed time from the last transaction that occurred on the signal “C” is output to the file “outf”.

【0055】図7と図8の記述はそれぞれ、上記のよう
な動作をするが、クロックのエッジにおいて信号「CL
K」と信号「C」の値に注目すると、同じ結果が得られ
るモデルである。
The description of FIGS. 7 and 8 respectively operates as described above, but at the clock edge, the signal "CL
Focusing on the values of “K” and the signal “C”, the model gives the same result.

【0056】これらのモデルは、図1のハードウェアモ
デル記憶部4に記憶されている。なお、ここでは、2つ
のハードウェアモデルが記憶されているものとして説明
を行なうが、3つ以上のハードウェアモデルが記憶され
ている場合も同様に考えられる。
These models are stored in the hardware model storage unit 4 of FIG. It should be noted that the description will be made here assuming that two hardware models are stored, but the same can be considered when three or more hardware models are stored.

【0057】第1のハードウエアモデル指定部1、第2
のハードウエアモデル指定部2は、ハードウエアモデル
記憶部5に記憶されたハードウエアのいずれかを指定す
るもので、ここでは、例えば、第1のハードウェアモデ
ル指定部1で図8のvhdl記述モデルが指定され、第
2のハードウェアモデル指定部2で図7のvhdl記述
モデルが指定された場合を例にとって示す。なお、以下
の説明において、第1のハードウエアモデル指定部1で
指定されたハードウエアモデルを第1のモデル、第2の
ハードウエアモデル指定部2で指定されたハードウエア
モデルを第2のモデルと呼ぶことがある。すなわち、こ
こでは、図8のvhdl記述モデルが第1のモデルで、
図7のvhdl記述モデルが第2のモデルとなる。
First hardware model designation unit 1, second
The hardware model designation unit 2 of FIG. 8 designates any of the hardware stored in the hardware model storage unit 5, and here, for example, the first hardware model designation unit 1 uses the vhdl description of FIG. A case where a model is specified and the vhdl description model of FIG. 7 is specified by the second hardware model specification unit 2 will be described as an example. In the following description, the hardware model designated by the first hardware model designation unit 1 is the first model, and the hardware model designated by the second hardware model designation unit 2 is the second model. Sometimes called. That is, here, the vhdl description model of FIG. 8 is the first model,
The vhdl description model of FIG. 7 is the second model.

【0058】モデル切替時刻指定部3では、前記第1お
よび第2のハードウエアモデル1、2にて指定されたハ
ードウエアモデルを一方から他方に切り替える切替時刻
をユーザが指定するようになっている。ここでは、切替
時刻指定部3で、例えば、「50ns」という時刻が指
定されたものとする。
In the model switching time designation unit 3, the user designates the switching time at which the hardware models designated by the first and second hardware models 1 and 2 are switched from one to the other. . Here, it is assumed that the switching time designation unit 3 has designated a time of, for example, “50 ns”.

【0059】時刻精度獲得部4では、第1および第2の
ハードウエアモデル指定部1、2で指定されたハードウ
ェアモデルを解析して、あるいは、ハードウェアモデル
に付加されている情報によって、あるいは設計者による
入力によって各モデル時刻精度を獲得するようになって
いる。
The time accuracy acquisition unit 4 analyzes the hardware model specified by the first and second hardware model specification units 1 and 2, or by the information added to the hardware model, or The accuracy of each model is acquired by the input by the designer.

【0060】ハードウエアモデルを解析して各モデルの
時刻精度を獲得する場合を例にとり説明すると、例え
ば、図7の記述中で各プロセスのセンシティビティ信号
として使用されている信号「CLK」、「A」、
「B」、「D」への代入予約文は行7、行12、行1
4、行19、行23、行27であり、これらの代入文の
時刻部分は、デルタ遅延(0ns:0遅延とも呼ばれ
る)、1ns、2ns、10nsの遅延である。この遅
延は、例えば、回路素子の遅延時間に相当するもので
る。デルタ遅延は全ての遅延の約数となると仮定する
と、これらの遅延の最大公約数はデルタ遅延、すなわ
ち、0nsである。このように時刻精度を記述中の遅延
の最大公約数として定義すれば、図7の記述によるハー
ドウエアモデルの時刻精度はデルタ遅延(0ns)であ
る。
The case of analyzing the hardware model to obtain the time accuracy of each model will be described as an example. For example, the signals "CLK" and "CLK" used as the sensitivity signal of each process in the description of FIG. A ",
The reserved reserved statements for "B" and "D" are lines 7, 12, and 1
4, line 19, line 23, line 27, and the time portion of these assignment statements is a delay of delta delay (also called 0 ns: 0 delay), 1 ns, 2 ns, and 10 ns. This delay corresponds to the delay time of the circuit element, for example. Assuming the delta delay is a divisor of all delays, the greatest common divisor of these delays is the delta delay, i.e. 0 ns. If the time precision is defined as the greatest common divisor of the delay in the description, the time precision of the hardware model according to the description of FIG. 7 is delta delay (0 ns).

【0061】一方、図8の記述中でプロセスのセンシテ
ィビティ信号として使用されているのは信号「CLK」
のみである。この代入文の時刻部分は10ns(7行参
照)であるため、時刻精度は10nsとなる。
On the other hand, the signal "CLK" is used as the sensitivity signal of the process in the description of FIG.
Only. Since the time portion of this assignment statement is 10 ns (see line 7), the time accuracy is 10 ns.

【0062】ここでは、記述中の全てのプロセスに関し
て駆動信号の代入予約文を解析し、そこに現れる遅延の
最大公約数を時刻精度としたが、記述中で注目する信号
やプロセスに関して時刻精度を決定する場合もある。
Here, the drive signal substitution reservation statement is analyzed for all the processes in the description, and the greatest common divisor of the delay appearing therein is taken as the time accuracy. However, the time accuracy is considered for the signals and processes of interest in the description. It may be decided.

【0063】切替時間決定部6では、切替時刻指定部3
で指定された時刻と時刻精度獲得部4で獲得された2つ
のハードウエアモデルの時刻精度に基づき実際にシミュ
レーションモデルを切り替える時刻を決定する。
In the switching time determination unit 6, the switching time designation unit 3
The time at which the simulation model is actually switched is determined on the basis of the time specified by and the time accuracy of the two hardware models acquired by the time accuracy acquisition unit 4.

【0064】具体的には、簡略に記述された(時刻精度
が粗い)シミュレーションモデル(例えば図8のシミュ
レーションモデル)から詳細に記述された(時刻精度が
細かい)シミュレーションモデル(例えば、図7のシミ
ュレーションモデル)への切替時刻は、切替時刻指定部
3で指定された時刻から、時刻精度獲得部4で獲得され
た2つのハードウエアモデルの時刻精度のうち最も粗い
方(値の最も大きい方)の時刻精度分前倒しした値を実
際の切替時刻して決定する。
Specifically, a simulation model described in a simple manner (coarse time precision) (for example, simulation model in FIG. 8) to a detailed simulation model (fine time precision) (for example, simulation in FIG. 7). The switching time to the (model) is the coarsest (the one with the largest value) of the time accuracy of the two hardware models acquired by the time accuracy acquisition unit 4 from the time specified by the switching time specifying unit 3. The value that is advanced by the time accuracy is set as the actual switching time.

【0065】例えば、ここでは、切替時刻指定部3で指
定された時刻が50ns、第1のハードウエアモデル指
定部1で指定されたハードウエアモデル(図8参照)の
時刻精度が10ns、第2のハードウエアモデル指定部
2で指定されたハードウエアモデル(図7参照)の時刻
精度がデルタ遅延であるから、2つの時刻精度のうち最
大のもの、すなわち、10nsを指定された切替時刻5
0nsから引いて40nsを実際に切り替える時刻とし
て得るものとする(図4参照)。
For example, here, the time designated by the switching time designation unit 3 is 50 ns, the time precision of the hardware model designated by the first hardware model designation unit 1 (see FIG. 8) is 10 ns, and the second precision is 10 ns. Since the time accuracy of the hardware model (see FIG. 7) specified by the hardware model specifying unit 2 is the delta delay, the maximum one of the two time accuracy, that is, the switching time 5 that specifies 10 ns.
Subtract from 0 ns and obtain 40 ns as the actual switching time (see FIG. 4).

【0066】また、詳細に記述されたシミュレーション
モデル(例えば図7のシミュレーションモデル)から簡
略に記述されたシミュレーションモデル(例えば、図8
のシミュレーションモデル)への切替時刻は、切替時刻
指定部3で指定された時刻をそのまま実際の切替時刻と
して決定する。
Further, a simulation model described in detail (for example, FIG. 8) from a simulation model described in detail (for example, the simulation model in FIG. 7).
As for the switching time to the simulation model), the time specified by the switching time specifying unit 3 is determined as it is as the actual switching time.

【0067】ハードウェアモデル切替部7は、切替時間
決定部6で決定された切替時刻に基づき、2つのハード
ウエアを切り替えてシミュレーションを実行するよう、
シミュレーション実行部8を制御するものである。例え
ば、ここでは、切替時間決定部6で決定された切替時刻
が40nsであるから、40nsまで、第1のハードウ
エアモデル指定部1で指定されたハードウエアモデル
(図8参照)でシミュレーションを実行するようシミュ
レーション実行部8に対し制御を行い、40nsからは
第2のハードウエアモデル指定手段2で指定されたハー
ドウエアモデル(図7)でシミュレーションを実行する
ようシミュレーション実行部8に対し制御を行う(図4
参照)。
The hardware model switching unit 7 switches the two pieces of hardware based on the switching time determined by the switching time determining unit 6 to execute the simulation.
The simulation executing unit 8 is controlled. For example, here, since the switching time determined by the switching time determining unit 6 is 40 ns, the simulation is executed up to 40 ns using the hardware model (see FIG. 8) specified by the first hardware model specifying unit 1. The simulation execution unit 8 is controlled so that the simulation execution unit 8 is controlled from 40 ns so that the simulation is executed by the hardware model (FIG. 7) designated by the second hardware model designation unit 2. (Fig. 4
reference).

【0068】シミュレーション実行部8は、ハードウエ
アモデル切替部7の制御にて与えられたハードウエアモ
デルの動作検証を行うようになっている。
The simulation executing unit 8 is designed to verify the operation of the hardware model given under the control of the hardware model switching unit 7.

【0069】次に、ハードウェアモデル切替部7で第1
のモデル(図8参照)から第2のモデル(図7参照)へ
の切り替え方法について説明する。
Next, the hardware model switching unit 7
A method of switching from the model (see FIG. 8) to the second model (see FIG. 7) will be described.

【0070】モデルの切り替え方法としては、以下のよ
うな方法がある。
The following methods are available as model switching methods.

【0071】切替先の第2のモデルのデータ構造を解析
して、切り替え前モデル(第1のモデル)のシミュレー
ション実行のために割り当てられた所定の記憶領域に記
憶された信号、変数の値を全て第2のモデルのシミュレ
ーション実行のために割り当てられた別の記憶領域にコ
ピーする(図5参照)。図5では、第1のモデルの全体
をエラボレーション(記憶領域の設定)し直し、値のコ
ピーを行なったが、全く共通の部分(信号CLKや信号
C)はエラボレーションを行なわずに、第1のモデルの
データ構造部分を再利用する方法もある(図6参照)。
The data structure of the second model of the switching destination is analyzed, and the values of the signals and variables stored in the predetermined storage area allocated for executing the simulation of the pre-switching model (first model) are calculated. All are copied to another storage area allocated for the simulation execution of the second model (see FIG. 5). In FIG. 5, the entire first model is re-elaborated (setting of the storage area) and the values are copied, but the completely common parts (signal CLK and signal C) are not elaborated and There is also a method of reusing the data structure part of the No. 1 model (see FIG. 6).

【0072】以下の説明では、図5の場合について説明
を続けるが、図6の場合も全く同様である。
In the following description, the case of FIG. 5 is continued, but the case of FIG. 6 is exactly the same.

【0073】時刻40nsでハードウエアモデルが第1
のモデル(図8参照)から第2のモデル(図7参照)へ
切り替えられ、図7の記述にしたがってシミュレーショ
ン実行部7によって以下のように実行が続行される。
At time 40 ns, the hardware model becomes the first
The model (see FIG. 8) is switched to the second model (see FIG. 7), and the simulation execution unit 7 continues the execution as follows according to the description of FIG.

【0074】ステップS1: プロセス「p0」が起動
し、信号「CLK」の反転が代入予約され、1サイクル
更新される。
Step S1: The process "p0" is activated, the inversion of the signal "CLK" is substituted and reserved, and updated for one cycle.

【0075】ステップS2: ステップS1の代入が実
行され、信号「CLK」にイベントが発生したため、プ
ロセス「p1」が起動される。この時、信号「CLK」
の値は「1」であるため、信号「C」の値(この時
「1」)を信号「A」に代入予約し、1サイクル更新さ
れる。
Step S2: Since the substitution of Step S1 is executed and an event occurs in the signal "CLK", the process "p1" is started. At this time, the signal "CLK"
Since the value of "1" is "1", the value of the signal "C" (at this time "1") is assigned to the signal "A" and reserved, and one cycle is updated.

【0076】ステップS3: ステップS2の代入が実
行され、信号「A」にイベントが発生したため、プロセ
ス「p2」、「p3」が起動される。ここでは、1ns
後に信号「A」の値を信号「D」に転送し、2ns後に
信号「B」に信号「A」の反転を転送するという代入が
予約され、1サイクル更新される。ここで、1nsだけ
時刻が更新されて41nsとなる。
Step S3: Since the substitution in step S2 is executed and the event occurs in the signal "A", the processes "p2" and "p3" are activated. Here, 1 ns
The substitution of later transferring the value of signal "A" to signal "D" and transferring the inversion of signal "A" to signal "B" after 2 ns is reserved and updated one cycle. Here, the time is updated by 1 ns to be 41 ns.

【0077】ステップS4: ステップS3における行
23の代入予約が実行される。これにより信号「D」に
イベントが発生するため、プロセス「p4」が実行され
る。すなわち、プロセス「p4」は、1ns後に信号
「B」と「D」の排他的論理和を信号「C」に転送す
る。信号「B」、「D」がいずれも「1」であるため、
「0」が代入予約される。また、この時、信号「C」に
最後にトランザクションが発生した時刻からの経過時間
がファイルに出力されるが、第1のトランザクションが
最後に発生した時刻が30nsであるから、11nsと
いう時間が出力される。ここで1サイクル更新され、1
nsの時刻更新がなされ、42nsとなる。 ステップS5: ステップS4における信号「C」への
「0」の代入が実行される。これと同時にステップS3
における行19の代入予約が実行される。これにより信
号「B」にイベントが発生するため、プロセス「p4」
が起動される。信号「B」が「0」、信号「D」が
「1」であるため、1ns後に信号「C」への「1」の
代入が予約される。また、この時、信号「C」最後にト
ランザクションが発生した時刻(32ns)からの経過
時間、0nsがファイルに出力される。その後、1サイ
クル更新され、1nsの時刻更新がなされ、43nsと
なる。
Step S4: The substitution reservation of the line 23 in step S3 is executed. As a result, an event occurs in the signal “D”, so that the process “p4” is executed. That is, the process "p4" transfers the exclusive OR of the signals "B" and "D" to the signal "C" after 1 ns. Since the signals "B" and "D" are both "1",
"0" is reserved for substitution. At this time, the time elapsed from the time when the transaction last occurred on the signal “C” is output to the file, but since the time when the first transaction last occurred is 30 ns, the time 11 ns is output. To be done. 1 cycle is updated here, 1
The time of ns is updated to 42 ns. Step S5: Substitution of "0" into the signal "C" in step S4 is executed. At the same time, step S3
The substitution reservation of the line 19 is executed. This causes an event to occur in signal "B", so process "p4"
Is started. Since the signal “B” is “0” and the signal “D” is “1”, the substitution of “1” into the signal “C” is reserved after 1 ns. At this time, 0 ns, which is the elapsed time from the time (32 ns) when the transaction last occurred in the signal “C”, is output to the file. After that, one cycle is updated, the time is updated for 1 ns, and the time becomes 43 ns.

【0078】ステップS6: ステップS5で予約され
た代入が実行され、信号「C」が「1」になる。
Step S6: The substitution reserved in step S5 is executed, and the signal "C" becomes "1".

【0079】ここで、第1のモデル(図8参照)から第
2のモデル(図7参照)へ40nsで切り替えて0ns
から70nsまでシミュレーションした結果得られる出
力波形と出力ファイルをそれぞれ図15、図11に示
す。
Here, the first model (see FIG. 8) is switched to the second model (see FIG. 7) at 40 ns and 0 ns is switched.
15 and 11 show the output waveform and the output file obtained as a result of the simulation from 1 to 70 ns.

【0080】また、第2のモデル(図7参照)のシミュ
レーションモデルによって、0nsから70nsまでシ
ミュレーションした結果得られる出力波形と出力ファイ
ルを、図14、図10に示し、第1のモデル(図8参
照)のシミュレーションモデルによって、0nsから7
0nsまでシミュレーションした結果得られる出力波形
と出力ファイルを、図13、図9に示す。
Output waveforms and output files obtained as a result of simulating from 0 ns to 70 ns by the simulation model of the second model (see FIG. 7) are shown in FIGS. 14 and 10, and the first model (FIG. 8). 0 ns to 7 depending on the simulation model
Output waveforms and output files obtained as a result of simulation up to 0 ns are shown in FIGS. 13 and 9.

【0081】図14、図13の出力波形を比較すること
により図15の出力波形が、40nsまで、10nsの
時刻精度のハードウエアモデル、すなわち、第1のモデ
ル(図8参照)でシミュレーションが実行され、40n
sで、詳細なシミュレーションモデル、すなわち、第2
のモデル(図7参照)に切り替わっていることがわか
る。
By comparing the output waveforms of FIG. 14 and FIG. 13, the output waveform of FIG. 15 shows that the simulation is performed by the hardware model with the time accuracy of 10 ns up to 40 ns, that is, the first model (see FIG. 8). 40n
s, the detailed simulation model, that is, the second
It can be seen that the model is switched to the model (see FIG. 7).

【0082】図10、図9の出力ファイルを比較するこ
とによって、図11の出力ファイルも40nsまでと、
指定された切替時刻である50ns以前で切り替わって
いることがわかる。
By comparing the output files of FIG. 10 and FIG. 9, the output file of FIG.
It can be seen that the switching is performed before the designated switching time of 50 ns.

【0083】さらに、40nsでハードウエアモデルの
切り替えを行なう代わりに、指定された切替時刻50n
sでモデルの切り替えを行なった場合の出力波形と出力
ファイルをそれぞれ図16と図12に示す。
Further, instead of switching the hardware model at 40 ns, the designated switching time is 50 n.
Output waveforms and output files when the model is switched by s are shown in FIGS. 16 and 12, respectively.

【0084】この場合、図16と図15の出力波形の5
0ns以降のモデル中の信号値の変化を比較すると、両
者は一致しているが、図12と図11の出力ファイルの
内容を比較すると、51nsの時点では出力結果が異な
っている。これは、出力部分で用いられている情報であ
る、最後のトランザクションが切り替え前に発生してい
ることに原因がある。
In this case, 5 of the output waveforms in FIGS.
When the changes in the signal values in the model after 0 ns are compared, they are in agreement, but when the contents of the output files in FIG. 12 and FIG. 11 are compared, the output results differ at 51 ns. This is because the last transaction, which is the information used in the output part, occurs before the switch.

【0085】一方、図11においては、51nsで参照
されるトランザクションは40ns以降に発生したもの
であり、40nsでモデルを切り替えているために、図
12のような不一致は生じない。
On the other hand, in FIG. 11, the transaction referred to by 51 ns is generated after 40 ns, and since the model is switched at 40 ns, the mismatch as shown in FIG. 12 does not occur.

【0086】ここでは、第1のハードウェアモデル指定
部1と第2のハードウェアモデル指定部2でそれぞれ一
度指定された場合について説明したが、これらを繰り返
し用いて3つ以上のハードウェアモデルを順次切り替え
て使用することも可能である。例えばA、B、Cという
3つのハードウェアモデルに関して、まずAからBへの
モデル切り替えを行い、その後にBからCというモデル
の切り替えを行なうという使用方法も考えられる。
Here, the case where the first hardware model designating section 1 and the second hardware model designating section 2 are designated once has been described. However, these are repeatedly used to generate three or more hardware models. It is also possible to sequentially switch and use. For example, with respect to three hardware models A, B, and C, a model switching from A to B is first performed, and then a model switching from B to C is also possible.

【0087】また、この発明の拡張として、2つのハー
ドウェアモデルと、それらを切り替える時間を指定する
代わりに、3つ以上のハードウェアモデルとそれらを切
り替える時間を指定することによって、3つ以上のハー
ドウェアモデルを順次切り替えるという使用方法も考え
られる。
Further, as an extension of the present invention, instead of designating two hardware models and the time for switching them, three or more hardware models and the switching time for them are designated, so that three or more hardware models are selected. A usage method of sequentially switching hardware models is also conceivable.

【0088】また、ここではシミュレーション開始前に
シミュレーションモデルの切り替え時刻を指定する場合
を例にとって説明したが、指定する切替時刻が現時刻よ
り先であるならば、シミュレーションモデルの切替時刻
の指定と切替先である第2のシミュレーションモデルの
指定を、シミュレーション途中で指定して利用すること
もできる。
Although the case where the switching time of the simulation model is designated before the start of the simulation has been described as an example, if the designated switching time is earlier than the current time, designation and switching of the simulation model switching time are performed. The designation of the second simulation model, which is the destination, can be designated and used during the simulation.

【0089】(1.2) 効果 以上説明したように、上記第1の実施形態によれば、複
数の時刻精度の異なるハードウェアモデルを切り替えて
シミュレーションを行う際、まず、時刻精度獲得部4で
切り替えるハードウエアモデルの時刻精度を解析してお
く。そして、簡略に記述されたハードウエアモデルから
詳細に記述されたハードウエアモデルへ切り替える場合
は、切替時間決定部6で、ユーザにより指定された切替
時刻を複数(例えば2つ)のハードウエアモデルの時刻
精度のうち最大の時刻精度の値だけ前倒しした時刻を実
際のハードウエアモデルの切替時刻として決定する。一
方、詳細に記述されたハードウエアモデルから簡略に記
述されたハードウエアモデルへ切り替える場合は、ユー
ザにより指定された切替時刻をそのまま実際のハードウ
エアモデルの切替時刻として決定する。
(1.2) Effects As described above, according to the first embodiment, when a plurality of hardware models having different time precisions are switched to perform a simulation, first, the time precision acquisition unit 4 is used. Analyze the time accuracy of the hardware model to be switched. Then, when switching from the hardware model described in a simplified manner to the hardware model described in detail, the switching time determination unit 6 sets the switching time designated by the user to a plurality (for example, two) of the hardware models. Of the time accuracy, the time advanced by the maximum time accuracy value is determined as the actual hardware model switching time. On the other hand, when switching from the hardware model described in detail to the hardware model briefly described, the switching time designated by the user is directly determined as the switching time of the actual hardware model.

【0090】これにより、ユーザにより指定された切替
時刻以降での詳細シミュレーションにおいて、トランザ
クションの予約の様子などが正しく観測でき、詳細なデ
バッグ時に必要な情報を失うことなく切り替えが行え
る。
As a result, in the detailed simulation after the switching time designated by the user, the state of transaction reservation can be correctly observed, and switching can be performed without losing the information necessary for detailed debugging.

【0091】よって、複数の時刻精度の異なるハードウ
ェアモデルを切り替えながらハードウエアの検証のレベ
ル(詳細な検証あるいは簡略な検証)にあったシミュレ
ーションを自由に高速に行なえるようになる。
Therefore, it is possible to freely perform high-speed simulation suitable for the level of hardware verification (detailed verification or simple verification) while switching a plurality of hardware models having different time precisions.

【0092】長時間実行を行なった後に発生するバグの
調査を行なうために、長時間詳細なハードウエアモデル
でシミュレーションを実行するのではなく、最初は時刻
精度の低い高速なハードウエアモデルを用いてシミュレ
ーション時刻を進め、バグに近付いたところで詳細なハ
ードウエアモデルに切り替えてシミュレーションを実行
することにより、設計期間を短縮することができる。
In order to investigate a bug that occurs after long-time execution, the simulation is not executed with a detailed hardware model for a long time, but a high-speed hardware model with low time accuracy is first used. The design time can be shortened by advancing the simulation time, switching to a detailed hardware model when a bug approaches, and executing the simulation.

【0093】(第2の実施形態)次に、第2の実施形態
として、ハードウエアの動作検証を行う際、検証の詳細
度の異なる複数(例えば2つ)のシミュレータを切り替
えてシミュレーションを行う場合について説明する。
(Second Embodiment) Next, as a second embodiment, when the operation verification of the hardware is performed, a plurality of (for example, two) simulators having different verification details are switched to perform the simulation. Will be described.

【0094】(2.1) 構成と動作 シミュレータとして、仮にデルタ時刻までを詳細にシミ
ュレーションするイベントドリブンシミュレータと、ク
ロックの区切りでのみ結果を保証するサイクルベースシ
ミュレータが用意されていると仮定する。
(2.1) It is assumed that, as the configuration and operation simulator, provision is made of an event-driven simulator for simulating up to the delta time in detail and a cycle-based simulator for guaranteeing the result only at clock breaks.

【0095】ここでは、この2つのシミュレータを切り
替えてシミュレーションを行なう場合を例にとって説明
するが、この他にもシミュレータの実行単位時刻が定義
できるシミュレータであれば利用できる。また、ここで
は、デルタ時刻とクロックの区切りという固定の対応関
係にある2つのシミュレータを用いているが、切り替え
方式を利用する2つのシミュレータ間の時間的な時刻精
度が固定ではなく、式や、表の形式などが得られている
ならば、それらのシミュレータを利用することもでき
る。
Here, a case will be described as an example where the simulation is performed by switching between the two simulators, but other simulators that can define the execution unit time of the simulator can be used. Also, here, although two simulators that have a fixed correspondence relationship between the delta time and the clock delimiter are used, the time precision in time between the two simulators that use the switching method is not fixed, and an equation or If a table format is obtained, those simulators can also be used.

【0096】図17は、第2の実施形態に係る設計支援
装置の構成例を概略的に示した図で、第1のシミュレー
タ指定部101、第2のシミュレータ指定部102、切
替時刻指定部103、シミュレータ詳細度獲得部10
4、切替時間決定部105、シミュレータ切替部10
6、ハードウエアモデル記憶部107、第1のシミュレ
ーション実行部108、第2のシミュレーション実行部
109から構成される。
FIG. 17 is a diagram schematically showing a configuration example of the design support apparatus according to the second embodiment. The first simulator designating section 101, the second simulator designating section 102, and the switching time designating section 103. , Simulator detail level acquisition unit 10
4, switching time determination unit 105, simulator switching unit 10
6, a hardware model storage unit 107, a first simulation execution unit 108, and a second simulation execution unit 109.

【0097】ハードウエアモデル記憶部106には、例
えば、図7に示したように記述されたハードウエアモデ
ルが記憶されており、このハードウエアモデルに対して
第1および第2のシミュレーション実行部108、10
9にてシミュレーションが実行されるようになってい
る。
The hardware model storage unit 106 stores, for example, a hardware model described as shown in FIG. 7, and the first and second simulation execution units 108 are stored for this hardware model. 10,
The simulation is executed at 9.

【0098】第1のシミュレータ指定部101、第2の
シミュレータ指定部102では、それぞれ検証の詳細度
の異なる2つのシミュレータをそれぞれ指定するように
なっている。ここでは、例えば、第1のシミュレータ指
定部101でサイクルベースシミュレータが指定され、
第2のシミュレータ指定部102でイベントドリブンシ
ミュレータが指定された場合を例にとって示す。
The first simulator designating section 101 and the second simulator designating section 102 respectively designate two simulators having different verification details. Here, for example, the cycle-based simulator is specified by the first simulator specifying unit 101,
The case where the event driven simulator is designated by the second simulator designation unit 102 will be described as an example.

【0099】切替時刻指定部103では、第1および第
2のシミュレータ指定部101、102で指定されたシ
ミュレータを一方から他方に切り替える切替時刻をユー
ザが指定するようになっている。ここでは、例えば、切
替時刻指定部103で「50ns」という時刻が指定さ
れたものとする。
In the switching time designation unit 103, the user designates the switching time at which the simulator designated by the first and second simulator designation units 101 and 102 is switched from one to the other. Here, for example, it is assumed that the switching time designation unit 103 has designated a time of “50 ns”.

【0100】シミュレータ時刻精度獲得部104では、
第1および第2のシミュレータ指定部101、102で
指定されたシミュレータに付加されている情報によっ
て、あるいはシミュレータと記述の解析結果によって、
あるいは設計者による入力によって各シミュレータ時刻
情報を獲得するようになっている。
In the simulator time accuracy acquisition unit 104,
Depending on the information added to the simulator designated by the first and second simulator designating units 101 and 102, or by the analysis result of the simulator and the description,
Alternatively, the time information of each simulator is acquired by the input by the designer.

【0101】例えば、ここでは、イベントドリブンシミ
ュレータには時刻精度がデルタ遅延であるという情報が
付加されており、サイクルベースシミュレータの時刻精
度はシミュレーション対象となるハードウェア記述のク
ロック信号によって決まるという情報が付加されている
と仮定する。
For example, here, information that the time accuracy is delta delay is added to the event driven simulator, and that the time accuracy of the cycle-based simulator is determined by the clock signal of the hardware description to be simulated. It is assumed that it has been added.

【0102】図7の記述中でクロック信号として使われ
ている信号「CLK」の更新を行なう代入文の時刻部分
は10nsであるため、サイクルベースシミュレータの
時刻精度はこの場合10nsとなる。
Since the time portion of the assignment statement for updating the signal "CLK" used as the clock signal in the description of FIG. 7 is 10 ns, the time accuracy of the cycle-based simulator is 10 ns in this case.

【0103】ここでは、簡単のため、クロック信号が1
つである場合を示すが、クロック信号が複数ある場合、
位相がずれる場合にもサイクルベースシミュレータにお
けるクロック信号の扱いにならって時刻精度を決定す
る。例えば、それらの信号の周期等の最大公約数を用い
たり、サイクルベースシミュレータの時刻精度を式によ
って表現したりする方法が考えられる。
Here, for simplification, the clock signal is 1
If there are multiple clock signals,
Even when the phases are deviated, the time accuracy is determined by handling the clock signal in the cycle-based simulator. For example, a method of using the greatest common divisor such as the period of those signals or expressing the time accuracy of the cycle-based simulator by an equation can be considered.

【0104】切替時間決定部105では、第1の実施形
態における切替時間決定部6と同様にして、切替時刻指
定部103で指定された切替時刻、例えば50nsとシ
ミュレータ時刻精度獲得部104で獲得された2つのシ
ミュレータの時刻精度(0nsと10ns)のうち最大
のもの(ここでは、10ns)を基に、時刻精度の粗い
(すなわち、簡略な検証レベルの)シミュレータ(例え
ば、サイクルベースシミュレータ)から時刻精度の細か
い(すなわち、詳細な検証レベルの)シミュレータ(例
えば、イベントドリブンシミュレータ)への実際の切替
時刻を決定するようになっている。
In the switching time determining unit 105, similarly to the switching time determining unit 6 in the first embodiment, the switching time specified by the switching time specifying unit 103, for example, 50 ns, is acquired by the simulator time accuracy acquisition unit 104. Based on the maximum (here, 10 ns) of the time precision (0 ns and 10 ns) of the two simulators, the time from the simulator (for example, a cycle-based simulator) with rough time precision (that is, a simple verification level) is used. The actual switching time to a simulator (for example, an event driven simulator) having a fine accuracy (that is, a detailed verification level) is determined.

【0105】例えば、指定された切り替え時刻である5
0nsから10nsを引して40nsを実際に切り替え
る時刻として得るものとする(図18参照)。
For example, 5 which is the designated switching time.
It is assumed that 10 ns is subtracted from 0 ns to obtain 40 ns as the actual switching time (see FIG. 18).

【0106】また、時刻精度の細かいシミュレータから
時刻精度の粗いシミュレータへの切替時刻は、切替時刻
指定部3で指定された時刻をそのまま実際の切替時刻と
して決定する。
As for the switching time from the simulator with fine time accuracy to the simulator with coarse time accuracy, the time designated by the switching time designating section 3 is directly determined as the actual switching time.

【0107】シミュレータ切替部106は、切替時間決
定部105で決定された切替時刻に基づき、2つのシミ
ュレータを切り替えてシミュレーションを実行するよ
う、第1のシミュレーション実行部108、第2のシミ
ュレーション実行部109を制御するものである。
The simulator switching unit 106 switches the two simulators based on the switching time determined by the switching time determining unit 105 to execute the simulation, and the first simulation executing unit 108 and the second simulation executing unit 109. Is to control.

【0108】まず、第1のシミュレータ指定部101で
指定されたシミュレータ(以下、簡単に第1のシミュレ
ータと呼ぶことがある)、すなわち、サイクルベースシ
ミュレータによるシミュレーションが第1のシミュレー
ション実行部108で実行され 切替時間決定部105
で決定された切替時刻に、第2のシミュレータ指定部1
02で指定されたシミュレータ(以下、簡単に第2のシ
ミュレータと呼ぶことがある)、すなわち、イベントド
リブンシミュレータによるシミュレーションが第2のシ
ミュレーション実行部109で実行されるとする。
First, the simulator designated by the first simulator designating unit 101 (hereinafter sometimes simply referred to as the first simulator), that is, the simulation by the cycle-based simulator is executed by the first simulation executing unit 108. Switching time determination unit 105
At the switching time determined in step 2, the second simulator specifying unit 1
It is assumed that the simulator specified by 02 (hereinafter, may be simply referred to as a second simulator), that is, the simulation by the event driven simulator is executed by the second simulation execution unit 109.

【0109】まず、シミュレータとしてサイクルベース
シミュレータが実行される。サイクルベースシミュレー
タとしても実現方法がいくつか考えられるが、ここで
は、以下のようにサイクルベースシミュレータが動作す
ると仮定する。この動作はサイクルベースシミュレータ
として一般的である。
First, a cycle base simulator is executed as a simulator. There are some possible implementation methods for the cycle-based simulator, but here it is assumed that the cycle-based simulator operates as follows. This operation is common as a cycle-based simulator.

【0110】信号「CLK」が反転する10ns毎に以
下の処理が行なわれる。
The following process is performed every 10 ns when the signal "CLK" is inverted.

【0111】1)信号「CLK」が「1」である時には
信号「C」の値を信号「A」に代入し、信号「CLK」
が「0」の時には信号「A」の値を反転した値を信号
「A」に代入する。
1) When the signal "CLK" is "1", the value of the signal "C" is substituted for the signal "A" to obtain the signal "CLK".
Is 0, the inverted value of the signal “A” is substituted for the signal “A”.

【0112】2)信号「A」の値の反転を信号「B」に
代入し、信号「A」の値を信号「D」に代入する。
2) Substitute the inversion of the value of the signal "A" into the signal "B" and the value of the signal "A" into the signal "D".

【0113】3)信号「B」と「D」の排他的論理和を
信号「C」に代入予約する。
3) Reserve the exclusive OR of the signals "B" and "D" for the signal "C".

【0114】4)信号「C」に最後に発生したトランザ
クションからの経過時間をファイル「outf」に出力
する。
4) The elapsed time from the last transaction that occurred on the signal "C" is output to the file "outf".

【0115】切替時間決定部105で決定された切替時
刻40nsに達したら、シミュレータ切替部106が、
第1のシミュレータ(サイクルベースシミュレータ)か
ら第2のシミュレータ(イベントドリブンシミュレー
タ)への切り替えを行なう。
When the switching time 40 ns determined by the switching time determining unit 105 is reached, the simulator switching unit 106
Switching from the first simulator (cycle-based simulator) to the second simulator (event-driven simulator).

【0116】シミュレータ切り替え方法としては、以下
のような方法がある。
The following methods are available as simulator switching methods.

【0117】1つには共有メモリを利用して第2のシミ
ュレータが第1のシミュレータで生成したデータ構造を
参照する方法がある。切り替え前後のシミュレータで保
持するデータが異なるものについては追加でエラボレー
ションした後で、第1のシミュレータから値情報のコピ
ーを行なう。これ以外にも、切り替え後シミュレータの
全体をエラボレーションし直し、値のコピーを行うとい
う方法もある。
One method is to use a shared memory to refer to the data structure generated by the first simulator by the second simulator. If the data stored in the simulator before and after switching is different, elaboration is additionally performed, and then the value information is copied from the first simulator. Another method is to elaborate the entire simulator after switching and copy the values.

【0118】時刻40nsでシミュレータがサイクルベ
ースシミュレータからイベントドリブンシミュレータに
切り替えられ、図7にしたがって以下のように実行が続
行される。
At time 40 ns, the simulator is switched from the cycle-based simulator to the event driven simulator, and the execution is continued as follows according to FIG.

【0119】ステップT1: プロセス「p0」が起動
し、信号「CLK」の反転が代入予約され、1サイクル
更新する。
Step T1: The process "p0" is activated, the inversion of the signal "CLK" is reserved for substitution, and is updated for one cycle.

【0120】ステップT2: ステップT1の代入が実
行され、信号「CLK」にイベントが発生したため、プ
ロセス「p1」が起動される。この時信号「CLK」の
値は「1」であるため、信号「C」の値(この時
「1」)を信号「A」に代入予約し、1サイクル更新す
る。
Step T2: Since the substitution of Step T1 is executed and an event occurs in the signal "CLK", the process "p1" is started. At this time, since the value of the signal “CLK” is “1”, the value of the signal “C” (“1” at this time) is assigned to the signal “A” and reserved, and one cycle is updated.

【0121】ステップT3: ステップT2の代入が実
行され、信号「A」にイベントが発生したため、プロセ
ス「p2」、「p3」が起動される。ここでは、1ns
後に信号「A」の値を信号「D」に転送し、2ns後に
信号「B」に信号「A」の反転を転送するという代入が
予約される。そして、1サイクル更新し、1ns時刻を
更新して、41nsとする。
Step T3: Since the substitution of Step T2 is executed and the event occurs in the signal "A", the processes "p2" and "p3" are activated. Here, 1 ns
A substitution is reserved that later transfers the value of signal "A" to signal "D" and after 2ns transfers the inversion of signal "A" to signal "B". Then, one cycle is updated and 1 ns time is updated to 41 ns.

【0122】ステップT4: ステップT3における図
7の行23の代入予約が実行される。信号「D」にイベ
ントが発生するため、プロセス「p4」が実行される。
1ns後に信号「B」と「D」の排他的論理和を信号
「C」に転送する。信号「B」、「D」がいずれも
「1」であるため、「0」が代入予約される。また、こ
の時、「C」に最後にトランザクションが発生した時刻
からの経過時間がファイルに出力されるが、第1にトラ
ンザクションが最後に発生した時刻が30nsであるか
ら、11nsという時間が出力される。1サイクル更新
し、1ns時刻を更新し、42nsとする。
Step T4: The substitution reservation of line 23 of FIG. 7 in step T3 is executed. Since the event occurs at the signal “D”, the process “p4” is executed.
After 1 ns, the exclusive OR of the signals “B” and “D” is transferred to the signal “C”. Since the signals “B” and “D” are both “1”, “0” is reserved for substitution. At this time, the elapsed time from the time when the transaction last occurred in “C” is output to the file. First, since the time when the transaction last occurred is 30 ns, the time 11 ns is output. It One cycle is updated and 1 ns time is updated to 42 ns.

【0123】ステップT5: ステップT4における信
号「C」への「0」の代入が実行される。これと同時に
ステップT3における図7の行19の代入予約が実行さ
れる。信号「B」にイベントが発生するため、プロセス
「p4」が起動される。信号「B」が「0」、信号
「D」が「1」であるため、1ns後に信号「C」への
「1」の代入が予約される。また、この時、信号「C」
に最後にトランザクションが発生した時刻(32ns)
からの経過時間、0nsがファイルに出力される。1サ
イクル更新し、1ns時刻を更新して、43nsとす
る。
Step T5: Substitution of "0" into the signal "C" in step T4 is executed. At the same time, the substitution reservation of line 19 in FIG. 7 in step T3 is executed. Since the event occurs in the signal “B”, the process “p4” is activated. Since the signal “B” is “0” and the signal “D” is “1”, the substitution of “1” into the signal “C” is reserved after 1 ns. Also, at this time, the signal "C"
The last time a transaction occurred (32ns)
The elapsed time from 0 ns is output to the file. One cycle is updated and 1 ns time is updated to 43 ns.

【0124】ステップT6: ステップT5で予約され
た代入が実行され、信号「C」が「1」になる。
Step T6: The substitution reserved in step T5 is executed, and the signal "C" becomes "1".

【0125】ここで、サイクルベースシミュレータから
イベントドリブンシミュレータへ40nsで切り替えて
0nsから70nsまでシミュレーションした結果とし
て、出力波形と出力ファイルをそれぞれ図15と図11
を示す。
Here, as a result of simulating from 0 ns to 70 ns by switching from the cycle base simulator to the event driven simulator in 40 ns, the output waveform and the output file are shown in FIGS. 15 and 11, respectively.
Indicates.

【0126】また、イベントドリブンシミュレータによ
って、0nsから70nsまでシミュレーションした結
果得られる出力波形と出力ファイルを図14、図10に
示し、サイクルベースシミュレータによって、0nsか
ら70nsまでシミュレーションした結果得られる出力
波形と出力ファイルを図13と図9に示す。
Also, output waveforms and output files obtained as a result of simulation from 0 ns to 70 ns by the event driven simulator are shown in FIGS. 14 and 10, and output waveforms obtained as a result of simulation from 0 ns to 70 ns by the cycle-based simulator. The output files are shown in FIGS. 13 and 9.

【0127】図13、図14と比較することにより図1
5が、40nsまで、10nsの時刻精度でシミュレー
ションが実行され、40nsで、詳細なイベントドリブ
ンシミュレータに切り替わっていることがわかる。
By comparing with FIG. 13 and FIG.
It can be seen that in No. 5, the simulation is executed with time accuracy of 10 ns up to 40 ns, and the event is switched to the detailed event-driven simulator at 40 ns.

【0128】また、図10、図9の出力ファイルを比較
することによって、図11の出力ファイルも40nsま
でと、指定された切替指定である50ns以前で切り替
わっていることがわかる。
Further, by comparing the output files of FIGS. 10 and 9, it can be seen that the output file of FIG. 11 has also been switched up to 40 ns before the specified switching designation of 50 ns.

【0129】さらに、40nsでシミュレータの切り替
えを行なう代わりに、指定された切替時刻50nsでシ
ミュレータの切り替えを行なった場合の結果の出力波形
と出力ファイルをそれぞれ図16と図12に示す。
Furthermore, instead of switching the simulator at 40 ns, the output waveform and the output file obtained as a result of switching the simulator at the designated switching time 50 ns are shown in FIGS. 16 and 12, respectively.

【0130】この場合、図16と図15の出力波形の5
0ns以降のモデル中の信号値の変化を比較すると、両
者は一致しているが、図12と図11の出力ファイルの
内容をみると、51nsの時点では出力結果が異なって
いる。これは、出力部分で用いられている情報である、
最後のトランザクションが切り替え前に発生しているこ
とに原因がある。
In this case, 5 of the output waveforms in FIGS.
Comparing the changes in the signal values in the model after 0 ns, both are in agreement, but the contents of the output files in FIGS. 12 and 11 show that the output results are different at 51 ns. This is the information used in the output part,
The cause is that the last transaction occurred before switching.

【0131】一方、図11においては、51nsで参照
されるトランザクションは40ns以降に発生したもの
であり、40nsでシミュレータを切り替えているため
に、図12のような不一致は生じない。
On the other hand, in FIG. 11, the transaction referred to at 51 ns occurs after 40 ns, and since the simulator is switched at 40 ns, the mismatch as shown in FIG. 12 does not occur.

【0132】ここでは、第1のシミュレータ指定部10
1と第2のシミュレータ指定部102でそれぞれ一度指
定された場合について説明したが、これらを繰り返し用
いて3つ以上のシミュレータを順次切り替えて使用する
ことも可能である。例えば、A、B、Cという3つのシ
ミュレータに関して、まずAからBへのシミュレータの
切り替えを行い、その後にBからCというシミュレータ
の切り替えを行なうという使用方法も考えられる。
Here, the first simulator designating section 10
The case where the first and second simulator designating sections 102 are designated once has been described, but it is also possible to repeatedly use these to sequentially switch and use three or more simulators. For example, regarding three simulators A, B, and C, a method of switching the simulator from A to B first and then switching the simulator from B to C is also conceivable.

【0133】また、この発明の拡張として、2つのシミ
ュレータと、それらを切り替える時間を指定する代わり
に、3つ以上のシミュレータとそれらを切り替える時間
を指定することによって、3つ以上のシミュレータを順
次切り替えるという使用方法も考えられる。
Further, as an extension of the present invention, instead of designating two simulators and a time for switching them, three or more simulators and a time for switching them are designated to sequentially switch the three or more simulators. It can also be used.

【0134】また、ここではシミュレーション開始前に
実際にシミュレータの切り替え時刻を指定される場合を
例にとったが、指定する切替時刻が現時刻より先である
ならば、シミュレータの切り替え時刻の指定と切替先の
第2のシミュレータの指定を、シミュレーション途中で
指定して利用することもできる。
In addition, here, the case where the simulator switching time is actually specified before the start of the simulation is taken as an example, but if the switching time to be specified is earlier than the current time, the simulator switching time is specified. The designation of the second simulator of the switching destination can be designated and used during the simulation.

【0135】なお、前述の第1の実施形態では、シミュ
レーションモデルを切り替える方式、第2の実施形態で
はシミュレータを切り替える方式について説明したが、
これらを組み合わせて、シミュレーションモデルとシミ
ュレータを一諸に切り替えるという方式も容易に実現で
きる。
In the first embodiment described above, the method of switching the simulation model and the method of switching the simulator in the second embodiment have been described.
A method of switching the simulation model and the simulator to one by combining these can be easily realized.

【0136】(2.2) 効果 以上説明したように、上記第2の実施形態によれば、複
数の時刻精度の異なるシミュレータを切り替えてシミュ
レーションを行う際、まず、時刻精度獲得部104でシ
ミュレータの時刻精度を解析しておく。そして、時刻精
度の粗いシミュレータから時刻精度の細かいシミュレー
タへ切り替える場合は、切替時間決定部105で、ユー
ザにより指定された切替時刻を複数(例えば2つ)のシ
ミュレータの時刻精度のうち最大の時刻精度の値だけ前
倒しした時刻を実際のシミュレータの切替時刻として決
定する。一方、時刻精度の細かいシミュレータから時刻
精度の粗いシミュレータへ切り替える場合は、ユーザに
より指定された切替時刻をそのまま実際のシミュレータ
の切替時刻として決定する。
(2.2) Effects As described above, according to the second embodiment, when a plurality of simulators having different time precisions are switched to perform a simulation, first, the time precision acquisition unit 104 performs the simulation. Analyze the time accuracy. Then, when switching from a simulator with coarse time accuracy to a simulator with fine time accuracy, the switching time determination unit 105 sets the switching time specified by the user to the maximum time accuracy among the time accuracy of a plurality of (eg, two) simulators. The time advanced by the value of is determined as the actual simulator switching time. On the other hand, when switching from a simulator with fine time accuracy to a simulator with coarse time accuracy, the switching time specified by the user is directly determined as the actual switching time of the simulator.

【0137】これにより、ユーザにより指定された切替
時刻以降での詳細シミュレーションにおいて、トランザ
クションの予約の様子などが正しく観測でき、詳細なデ
バッグ時に必要な情報を失うことなく切り替えが行え
る。
As a result, in the detailed simulation after the switching time designated by the user, the state of transaction reservation can be correctly observed, and switching can be performed without losing the information necessary for detailed debugging.

【0138】よって、複数の時刻精度の異なるシミュレ
ータを切り替えながら検証のレベル(詳細な検証あるい
は簡略な検証)にあったシミュレーションを自由に高速
に行なえるようになる。
Therefore, it is possible to freely perform a simulation at a verification level (detailed verification or simple verification) at high speed by switching a plurality of simulators having different time precisions.

【0139】長時間実行を行なった後に発生するバグの
調査を行なうために、長時間詳細なシミュレータを実行
するのではなく、最初は時刻精度の低い高速なシミュレ
ータを用いてシミュレーション時刻を進め、バグに近付
いたところで詳細なシミュレーションに切り替えて実行
することにより、設計期間を短縮することができる。
In order to investigate a bug that occurs after long-time execution, a detailed simulator is not executed for a long time, but the simulation time is first advanced by using a high-speed simulator with low time accuracy. The design period can be shortened by switching to the detailed simulation and executing it when approaching.

【0140】(第3の実施形態) (3.1) 構成と動作 第1の実施形態に示したように抽象度の異なる2つのハ
ードウェアモデルを切り替えてシミュレーションを行な
う場合を考える。
(Third Embodiment) (3.1) Configuration and Operation Let us consider a case where two hardware models having different degrees of abstraction are switched to perform a simulation as shown in the first embodiment.

【0141】図19は、第3の実施形態に係る設計支援
装置の構成例を概略的に示した図で、図1と同一部分に
は同一符号を付し、異なる部分について説明する。すな
わち、シミュレーション実行部8においてシミュレーシ
ョンを実行した結果、ハードウェアモデル中の幾つかの
信号の値(例えば波形)が逐次波形表示部10に表示さ
れ、この表示内容に基づくユーザの指示が波形表示部へ
の入力部9を介して、第1のハードウエアモデル指定部
1、第2のハードウエアモデル指定部2、モデル切替時
刻指定部3に入力されるようになっている。
FIG. 19 is a diagram schematically showing a configuration example of the design support apparatus according to the third embodiment. The same parts as those in FIG. 1 are designated by the same reference numerals, and different parts will be described. That is, as a result of executing the simulation in the simulation executing unit 8, the values (for example, waveforms) of some signals in the hardware model are sequentially displayed on the waveform display unit 10, and the user's instruction based on the display contents is displayed on the waveform display unit. It is adapted to be input to the first hardware model designation unit 1, the second hardware model designation unit 2, and the model switching time designation unit 3 via the input unit 9 to the.

【0142】このような構成により、シミュレーション
実行時には、ハードウェアモデル中の幾つかの信号の値
を参照することによって、システムの動作の検証を行な
うわけであるが、この時、これらの信号の値は波形表示
部10へ表示されているとする。波形表示部10の波形
表示の一例を図20に示す。
With such a configuration, when the simulation is executed, the system operation is verified by referring to the values of some signals in the hardware model. At this time, the values of these signals are checked. Is displayed on the waveform display unit 10. FIG. 20 shows an example of the waveform display of the waveform display unit 10.

【0143】ユーザは、波形表示部10に表示された波
形を見て、詳細な信号の変化を調べる為に、図21のよ
うに拡大して表示するための入力を図19の波形表示部
への入力部9を介して行なうとする。
The user looks at the waveform displayed on the waveform display unit 10 and inputs an input for enlarged display as shown in FIG. 21 to the waveform display unit of FIG. 19 in order to check the detailed signal change. It is assumed that this is done through the input unit 9 of.

【0144】波形表示部への入力部9は、波形表示部1
0の制御のもとユーザ(例えば、設計者)が用いる端末
の画面上に表示された波形に対し、例えば、マウスある
いはキーボード等にて所望の範囲を指定するようになっ
ている。
The input unit 9 to the waveform display unit is the waveform display unit 1
Under the control of 0, a user (for example, a designer) specifies a desired range with respect to a waveform displayed on the screen of a terminal used by, for example, a mouse or a keyboard.

【0145】これによって、表示の時刻の最小単位が1
nsから0.1nsに変化するのと同時に、ハードウェ
アモデルの切り替え指定として、詳細なハードウェアモ
デルへの指定が行なわれ、第1の実施形態の場合と同様
の切り替え動作が行なわれる。
As a result, the minimum unit of display time is 1
Simultaneously with the change from ns to 0.1 ns, a detailed hardware model is designated as the hardware model switching designation, and the same switching operation as in the first embodiment is performed.

【0146】ここでは、簡略なハードウェアモデルか
ら、詳細なハードウェアモデルへ切り替えたが、波形表
示部10における表示の時刻スケールの値に応じて詳細
なハードウェアモデルから簡略なハードウェアモデルへ
切り替えるようにしてもよい。
Here, the simple hardware model is switched to the detailed hardware model, but the detailed hardware model is switched to the simple hardware model according to the value of the time scale displayed on the waveform display section 10. You may do it.

【0147】なお、上記第3の実施形態では、時間的な
抽象度の異なるハードウェアモデルの切り替えの例を示
したが、第2の実施形態と同様に時間的な抽象度の異な
るハードウェアシミュレータの切り替え指定を上記と同
様、波形表示部の入力部9への入力によって行なうこと
も容易に実現できる。
In the third embodiment described above, an example of switching hardware models having different temporal abstractions is shown. However, similar to the second embodiment, a hardware simulator having different temporal abstractions is used. Similarly to the above, it is possible to easily realize the switching designation by the input to the input unit 9 of the waveform display unit.

【0148】(3.2) 効果 以上説明したように、上記第3の実施形態によれば、切
替時に使用する複数の時刻精度の異なるシミュレータあ
るいは複数の時刻精度の異なるシミュレーションモデル
の指定を波形表示部10に表示されたシミュレーション
結果(例えばシミュレーションモデルの信号値)に基づ
き波形表示部への入力部9を介して指示することによ
り、ユーザである例えばハードウエアの設計者は、容易
に切替時刻の指定を行うことができる。
(3.2) Effects As described above, according to the third embodiment, designation of a plurality of simulators having different time precisions or a plurality of simulation models having different time precisions used at the time of switching is displayed as a waveform. By giving an instruction via the input unit 9 to the waveform display unit based on the simulation result (for example, the signal value of the simulation model) displayed on the unit 10, the user, for example, the hardware designer, can easily change the switching time. You can specify.

【0149】従って、必要に応じて頻繁に時刻精度の異
なる複数のシミュレーションモデルやシミュレータを切
り替えてデバッグを行え、ハードウエアの設計に限ら
ず、ハードウエアとソフトウエアの同時設計における設
計効率の向上が図れる。
Therefore, a plurality of simulation models or simulators having different time accuracies can be switched as needed for debugging to improve the design efficiency not only in hardware design but also in simultaneous design of hardware and software. Can be achieved.

【0150】(第4の実施形態) (4.1) 構成と動作 第1の実施形態に示したように抽象度の異なる2つのハ
ードウェアモデルを切り替えてシミュレーションを行な
う場合を考える。
(Fourth Embodiment) (4.1) Configuration and Operation Let us consider a case where two hardware models having different degrees of abstraction are switched to perform a simulation as shown in the first embodiment.

【0151】図22は、第4の実施形態に係る設計支援
装置の構成例を概略的に示した図で、図1と同一部分に
は同一符号を付し、異なる部分について説明する。すな
わち、図22では、シミュレーションを実行する際に、
詳細にデバッグを行ないたいモジュール、ブロック等を
指定して随時、検証を進めるために、それらを指定する
ためのデバッグ対象指定部12が具備されている。
FIG. 22 is a diagram schematically showing a configuration example of the design support apparatus according to the fourth embodiment. The same parts as those in FIG. 1 are designated by the same reference numerals, and different parts will be described. That is, in FIG. 22, when the simulation is executed,
A debug target designation unit 12 for designating a module, a block, or the like to be debugged in detail and advancing the verification at any time is provided.

【0152】デバッグ対象指定部12の制御のもと、図
23に示すような評価対象のブロック図がユーザ(例え
ば、設計者)が用いる端末の画面上に表示されており、
この表示に対するユーザの指示がデバッグ対象指定部へ
の入力部11を介して、第1のハードウエアモデル指定
部1、第2のハードウエアモデル指定部2、モデル切替
時刻指定部3に入力され、デバッグ対象を切り替えるよ
うになっている。
Under the control of the debug target designation section 12, a block diagram of the evaluation target as shown in FIG. 23 is displayed on the screen of the terminal used by the user (for example, the designer),
The user's instruction for this display is input to the first hardware model designation unit 1, the second hardware model designation unit 2, and the model switching time designation unit 3 via the input unit 11 to the debug target designation unit, It is designed to switch the debug target.

【0153】デバッグ対象指定部への入力部11は、デ
バッグ対象指定部12の制御もとユーザ(例えば、設計
者)が用いる端末の画面上に表示された図23に示すよ
うなブロック図に対し、例えば、マウスあるいはキーボ
ード等にて所望の部位を指定するようになっている。
The input unit 11 to the debug target designating unit is different from the block diagram shown in FIG. 23 displayed on the screen of the terminal used by the user (for example, the designer) under the control of the debug target designating unit 12. For example, a desired portion is designated with a mouse or a keyboard.

【0154】この指定で、図23のマイクロプロセッサ
ブロックMを指定した場合、そのときの評価対象のハー
ドウエアモデルが第1のハードウエアモデル指定部1で
指定された第1のモデルであり、それより簡略化された
ハードウェアモデルが第2のハードウエアモデル指定部
2で指定されているときは、第1のモデルから第2のモ
デルへ切り替えてソフトウェアのデバッグを行なう。
When the microprocessor block M of FIG. 23 is designated by this designation, the hardware model to be evaluated at that time is the first model designated by the first hardware model designation unit 1, and When the simplified hardware model is designated by the second hardware model designation unit 2, the first model is switched to the second model to debug the software.

【0155】一方、図23のハードウェアブロックAや
B等のASIC部品を指定した場合、そのときの評価対
象のハードウエアモデルが第1のハードウエアモデル指
定部1で指定された第1のモデルであり、それより詳細
なハードウェアモデルが第2のハードウエアモデル指定
部2で指定されているとき(第2のモデル)は、第1の
モデルから第2のモデルへ切り替えてハードウェアの詳
細なデバッグを行なう。
On the other hand, when ASIC components such as the hardware blocks A and B in FIG. 23 are designated, the hardware model to be evaluated at that time is the first model designated by the first hardware model designation unit 1. When a more detailed hardware model is designated by the second hardware model designating section 2 (second model), the details of the hardware are switched from the first model to the second model. Debugging.

【0156】第4の実施形態では、時間的な抽象度の異
なるハードウェアモデルの切り替えの例を示したが、第
2の実施形態と同様に時間的な抽象度の異なるハードウ
ェアシミュレータの切り替え指定を上記と同様、デバッ
グ対象指定部12への入力によって行なうという場合も
考えられる。
In the fourth embodiment, an example of switching of hardware models having different temporal abstractions is shown, but as in the second embodiment, switching designation of hardware simulators having different temporal abstractions is designated. In the same manner as described above, it may be possible to perform by inputting to the debug target designating unit 12.

【0157】また、デバッグ対象の指定としては、表示
されたブロック図上で指定を行なう場合を例にしたが、
シミュレータに対して、文字でモデル名やブロック名を
入力したり、表示されたモデル名やブロック名のボタン
を押す等の指定方法も考えられる。
As an example of the designation of the debug target, the designation is made on the displayed block diagram.
It is also conceivable to input a model name or block name in characters to the simulator, or to specify a model name or block name button displayed.

【0158】(4.2) 効果 以上説明したように、上記第4の実施形態によれば、複
数の時刻精度の異なるハードウェアモデルを切り替え
て、ハードウェアとソフトウェアを協調させてシミュレ
ーションを行なう場合に、切り替えるハードウェアモデ
ルの指定の方法として、ハードウェアデバッグ指定時に
はハードウェアのシミュレーションモデルとして、詳細
なシミュレーションモデルを用い、ソフトウェアのデバ
ッグ指定時にはハードウェアのシミュレーションモデル
として簡略なシミュレーションモデルを用いることによ
り、ユーザである設計者はデバッグ対象がソフトウエア
かハードウエアかを意識するだけで、シミュレーション
対象のモデルを容易に切り替えることができる。
(4.2) Effects As described above, according to the fourth embodiment, when a plurality of hardware models having different time precisions are switched and the simulation is performed by coordinating the hardware and software. As a method of specifying the hardware model to be switched, a detailed simulation model is used as a hardware simulation model when hardware debug is specified, and a simple simulation model is used as a hardware simulation model when software debug is specified. The designer who is the user can easily switch the model to be simulated only by recognizing whether the debug target is software or hardware.

【0159】これは、シミュレーションモデルの切り替
えだけでなく、複数の時刻精度の異なるシミュレータの
切り替えについても同様である。
This applies not only to switching of simulation models but also to switching of a plurality of simulators having different time precisions.

【0160】従って、必要に応じて頻繁に時刻精度の異
なる複数のシミュレーションモデルやシミュレータを切
り替えてデバッグを行なう事によって、ハードウェアの
設計やハードウェアとソフトウェアの同時設計における
設計効率を著しく向上させることが可能になる。
Therefore, it is possible to remarkably improve the design efficiency in hardware design or simultaneous design of hardware and software by frequently switching a plurality of simulation models or simulators having different time accuracies for debugging as needed. Will be possible.

【0161】なお、上記第1〜第4の実施形態において
説明した各部はコンピュータに実行させることのできる
プログラムとして、磁気ディスク(フロッピーディス
ク、ハードディスク等)、光ディスク(CD−ROM、
DVD等)、半導体メモリなどの記録媒体に格納して頒
布することもできる。
Each of the units described in the first to fourth embodiments is a program that can be executed by a computer, such as a magnetic disk (floppy disk, hard disk, etc.), optical disk (CD-ROM,
It can also be stored in a recording medium such as a DVD) or a semiconductor memory and distributed.

【0162】[0162]

【発明の効果】以上説明したように、本発明によれば、
シミュレーションの高速化を図るため、複数の時刻精度
の異なるハードウェアモデル(あるいはシミュレータ)
を用いて切り替えを行なってシミュレーションを行う
際、ユーザにより指定された時刻とモデル(シミュレー
タ)の時刻精度(検証の詳細度)に基づき実際の切替時
間を決定することにより、異なる時刻精度のハードウエ
アモデル(シミュレータ)の切替が円滑に行え、正確な
シミュレーションが可能となる。
As described above, according to the present invention,
Multiple hardware models (or simulators) with different time accuracy to speed up simulation
When switching and simulating with hardware, hardware with different time accuracy can be determined by determining the actual switching time based on the time specified by the user and the time accuracy (detailedness of verification) of the model (simulator). The model (simulator) can be switched smoothly, and accurate simulation can be performed.

【0163】これにより、検証のレベルにあったシミュ
レーションが容易にしかも高速に行なえる。
As a result, the simulation suitable for the verification level can be performed easily and at high speed.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の第1の実施形態に係る設計支援装置の
構成例を概略的に示した図。
FIG. 1 is a diagram schematically showing a configuration example of a design support device according to a first embodiment of the present invention.

【図2】シミュレーションモデルの記述例を示した図
で、VHDLにおけるプロセスの記述例である。
FIG. 2 is a diagram showing a description example of a simulation model, which is a description example of a process in VHDL.

【図3】シミュレーションモデルの記述例を示した図
で、Verilog HDLにおけるプロセスの記述例
である。
FIG. 3 is a diagram showing a description example of a simulation model, which is a description example of a process in Verilog HDL.

【図4】シミュレーションモデルの切替時刻について説
明するための図。
FIG. 4 is a diagram for explaining a switching time of a simulation model.

【図5】シミュレーションモデルを切り替える際の信号
あるいは変数の切替前と切替後の受渡し方法の一例につ
いて説明するための図。
FIG. 5 is a diagram for explaining an example of a delivery method before and after switching of signals or variables when switching simulation models.

【図6】シミュレーションモデルを切り替える際の信号
あるいは変数の切替前と切替後の受渡し方法の他の例に
ついて説明するための図。
FIG. 6 is a diagram for explaining another example of the delivery method before and after switching the signal or variable when switching the simulation model.

【図7】シミュレーションモデルのVHDL記述例(詳
細な記述例)を示した図。
FIG. 7 is a diagram showing a VHDL description example (detailed description example) of a simulation model.

【図8】シミュレーションモデルの他のVHDL記述例
(簡略な記述例)を示した図。
FIG. 8 is a diagram showing another VHDL description example (simple description example) of the simulation model.

【図9】簡略なシミュレーションモデル(シミュレー
タ)を用いてシミュレーションを実行した結果得られた
出力ファイルの一例を示した図。
FIG. 9 is a diagram showing an example of an output file obtained as a result of executing a simulation using a simple simulation model (simulator).

【図10】詳細なシミュレーションモデル(シミュレー
タ)を用いてシミュレーションを実行した結果得られた
出力ファイルの一例を示した図。
FIG. 10 is a diagram showing an example of an output file obtained as a result of executing a simulation using a detailed simulation model (simulator).

【図11】40nsで簡略なシミュレーションモデル
(シミュレータ)から詳細なシミュレーションモデル
(シミュレータ)に切り替えてシミュレーションを実行
した結果得られた出力ファイルの一例を示した図。
FIG. 11 is a diagram showing an example of an output file obtained as a result of executing a simulation by switching from a simple simulation model (simulator) to a detailed simulation model (simulator) at 40 ns.

【図12】指定された切替時刻50nsで簡略なシミュ
レーションモデル(シミュレータ)から詳細なシミュレ
ーションモデル(シミュレータ)に切り替えてシミュレ
ーションを実行した結果得られた出力ファイルの一例を
示した図。
FIG. 12 is a diagram showing an example of an output file obtained as a result of executing a simulation by switching from a simple simulation model (simulator) to a detailed simulation model (simulator) at a designated switching time of 50 ns.

【図13】簡略なシミュレーションモデル(シミュレー
タ)を用いてシミュレーションを実行した結果得られた
出力波形の一例を示した図。
FIG. 13 is a diagram showing an example of output waveforms obtained as a result of executing a simulation using a simple simulation model (simulator).

【図14】詳細なシミュレーションモデル(シミュレー
タ)を用いてシミュレーションを実行した結果得られた
出力波形の一例を示した図。
FIG. 14 is a diagram showing an example of output waveforms obtained as a result of performing a simulation using a detailed simulation model (simulator).

【図15】40nsで簡略なシミュレーションモデル
(シミュレータ)から詳細なシミュレーションモデル
(シミュレータ)に切り替えてシミュレーションを実行
した結果得られた出力波形の一例を示した図。
FIG. 15 is a diagram showing an example of output waveforms obtained as a result of executing a simulation by switching from a simple simulation model (simulator) to a detailed simulation model (simulator) at 40 ns.

【図16】500nsで簡略なシミュレーションモデル
(シミュレータ)から詳細なシミュレーションモデル
(シミュレータ)に切り替えてシミュレーションを実行
した結果得られた出力波形の一例を示した図。
FIG. 16 is a diagram showing an example of output waveforms obtained as a result of executing a simulation by switching from a simple simulation model (simulator) to a detailed simulation model (simulator) at 500 ns.

【図17】本発明の第2の実施形態に係る設計支援装置
の構成例を概略的に示した図。
FIG. 17 is a diagram schematically showing a configuration example of a design support device according to a second embodiment of the present invention.

【図18】シミュレーショタの切替時刻について説明す
るための図。
FIG. 18 is a diagram for explaining a switching time of the simulator.

【図19】本発明の第3の実施形態に係る設計支援装置
の構成例を概略的に示した図。
FIG. 19 is a diagram schematically showing a configuration example of a design support device according to a third embodiment of the present invention.

【図20】図19の波形表示部にて表示される波形表示
例を示した図。
20 is a diagram showing a waveform display example displayed on the waveform display unit of FIG.

【図21】図19の波形表示部にて表示される他の波形
表示例を示した図。
21 is a diagram showing another waveform display example displayed on the waveform display unit of FIG.

【図22】本発明の第4の実施形態に係る設計支援装置
の構成例を概略的に示した図。
FIG. 22 is a diagram schematically showing a configuration example of a design support device according to a fourth embodiment of the present invention.

【図23】図22のデバッグ対象指定部にてデバッグ対
象を指定するためのブロック図の表示例を示した図。
23 is a diagram showing a display example of a block diagram for designating a debug target in the debug target designating unit of FIG. 22.

【符号の説明】[Explanation of symbols]

1…第1のハードウエアモデル指定部 2…第2のハードウエアモデル指定部 3…モデル切替時刻指定部 4…時刻精度獲得部 5…ハードウエアモデル記憶部 6…切替時間決定部 7…ハードウエアモデル切替部 8…シミュレーション実行部 9…波形表示部への入力部 10…波形表示部 11…デバッグ対象指定部への入力部 12…デバッグ対象指定部 101…第1のシミュレータ指定部 102…第2のシミュレータ指定部 103…切替時刻指定部 104…シミュレータ詳細度獲得部 105…切替時刻決定部 106…シミュレータ切替部 107…ハードウエアモデル記憶部 108…第1のシミュレーション実行部 109…第2のシミュレーション実行部 1 ... First hardware model designation unit 2 ... Second hardware model specification section 3 ... Model switching time designation section 4 ... Time accuracy acquisition unit 5 ... Hardware model storage 6 ... Switching time determination unit 7 ... Hardware model switching unit 8 ... Simulation execution unit 9 ... Input section to waveform display section 10 ... Waveform display section 11 ... Input section to debug target specification section 12 ... Debug target specification section 101 ... First simulator designating section 102 ... second simulator designating section 103 ... Switching time designation unit 104 ... Simulator detail level acquisition unit 105 ... Switching time determination unit 106 ... Simulator switching unit 107 ... Hardware model storage unit 108 ... First simulation execution unit 109 ... Second simulation execution unit

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 異なる検証レベルでハードウエアの動作
検証を行うための設計支援装置であって、 前記ハードウエアの動作を検証するための検証対象とし
て、当該ハードウエアの異なる複数のモデルを指定する
モデル指定手段と、 前記検証レベルの違いを表す前記複数のモデルのそれぞ
れの詳細度として、当該モデルに含まれる回路素子の遅
延時間の最大公約数を求める手段と、 前記検証レベルを切り替える第1の切替時刻を指定する
時刻指定手段と、 前記第1の切替時刻と前記複数のモデルのそれぞれの前
記詳細度とに基づき決定された第2の切替時刻で、前記
検証対象のモデルを切替えて前記ハードウエアの動作を
検証する検証手段と、 を具備したことを特徴とする設計支援装置。
1. A design support device for verifying operation of hardware at different verification levels, wherein a plurality of models of different hardware are specified as verification targets for verifying operation of the hardware. A model designating unit, a unit for obtaining the greatest common divisor of delay times of circuit elements included in the model as the details of each of the plurality of models representing the difference in the verification level; and a first switching between the verification levels. A time designation unit that designates a switching time, and a second switching time determined based on the first switching time and the detail levels of each of the plurality of models, the model to be verified is switched, and the hardware is changed. A design support device comprising: a verification unit that verifies the operation of the wear.
【請求項2】 異なる検証レベルでハードウエアの動作
検証を行うための設計支援装置であって、 前記ハードウエアの動作を検証する複数のシミュレータ
を指定する指定手段と、 前記検証レベルの違いを表す前記複数のシミュレータの
それぞれの詳細度として、前記複数のシミュレータのう
ちのサイクルベースシミュレータには、前記ハードウエ
アのクロック信号の周期時間を当該シミュレータの前記
詳細度として決定し、前記複数のシミュレータのうちの
イベントドリブンシミュレータには、「0」を当該シミ
ュレータの前記詳細度として決定する手段と、 前記検証レベルを切り替える時刻である第1の切替時刻
を指定する時刻指定手段と、 前記第1の切替時刻と前記複数のシミュレータのそれぞ
れの前記詳細度とに基づき決定された第2の切替時刻
で、前記シミュレータを切り替えて前記ハードウエアの
動作を検証する検証手段と、 を具備したことを特徴とする設計支援装置。
2. A design support device for verifying operation of hardware at different verification levels, the specification means specifying a plurality of simulators for verifying the operation of the hardware, and the difference between the verification levels. As a level of detail of each of the plurality of simulators, a cycle-based simulator of the plurality of simulators determines the cycle time of the clock signal of the hardware as the level of detail of the simulator, and In the event driven simulator, the means for determining "0" as the detail level of the simulator, the time designating means for designating the first switching time which is the time when the verification level is switched, and the first switching time And the degree of detail of each of the plurality of simulators. In the switching time, the design support apparatus characterized by comprising a verification means for verifying the operation of the hardware by switching the simulator.
【請求項3】 前記検証手段は、前記詳細度の粗い第1
のモデルと前記詳細度の細かい第2のモデルを切り替え
るときには、前記第1の切替時刻から前記第1のモデル
の前記詳細度に基づき決定された時間だけ前倒しした前
記第2の切替時刻で、前記第1のモデルから前記第2の
モデルへ切り替えることを特徴とする請求項1記載の設
計支援装置。
3. The verification means includes a first unit having the coarse degree of detail.
When switching between the second model having a small degree of detail and the second model at the second switching time that is advanced from the first switching time by a time determined based on the degree of detail of the first model, The design support device according to claim 1, wherein the design support device is switched from a first model to the second model.
【請求項4】 前記検証手段は、前記詳細度の粗い第1
のシミュレータと前記詳細度の細かい第2のシミュレー
タを切り替えるときには、第1の切替時刻から前記第1
のシミュレータの前記詳細度に基づき決定された時間だ
け前倒しした前記第2の切替時刻で、前記第1のシミュ
レータから前記第2のシミュレータへ切り替えることを
特徴とする請求項2記載の設計支援装置。
4. The verification means includes the first coarse-grained first detail.
When switching between the first simulator and the second simulator having a finer degree of detail, the first switch is started from the first switching time.
The design support apparatus according to claim 2, wherein the first simulator is switched to the second simulator at the second switching time which is advanced by a time determined based on the detail level of the simulator.
【請求項5】 前記検証手段で検証された信号の波形を
表示するための表示手段と、 この表示手段で表示された信号の波形に基づき指定され
た時間内を、前記複数のモデルのうち前記詳細度の細か
い方のモデルに切り替えて前記ハードウエアの動作を検
証する第1の検証手段と、 前記表示手段で表示された信号の波形に基づき指定され
た時間内を、前記複数のモデルのうち詳細度の粗い方の
モデルに切り替えて前記ハードウエアの動作を検証する
第2の検証手段と、 を具備したことを特徴とする請求項1記載の設計支援装
置。
5. A display means for displaying the waveform of the signal verified by the verification means, and a time period designated based on the waveform of the signal displayed by the display means, among the plurality of models. Of the plurality of models, the first verification means for verifying the operation of the hardware by switching to the model with a smaller degree of detail and the time specified based on the waveform of the signal displayed by the display means The design support apparatus according to claim 1, further comprising a second verification unit that verifies an operation of the hardware by switching to a model with a coarser degree of detail.
【請求項6】 前記検証手段で検証された信号の波形を
表示するための表示手段と、 この表示手段で表示された信号の波形に基づき指定され
た時間内を、前記複数のシミュレータのうち詳細度の細
かい方のシミュレータに切り替えて前記ハードウエアの
動作を検証する第1の検証手段と、 前記表示手段で表示された信号の波形に基づき指定され
た時間内を、前記複数のシミュレータのうち詳細度の粗
い方のシミュレータに切り替えて前記ハードウエアの動
作を検証する第2の検証手段と、 を具備したことを特徴とする請求項2記載の設計支援装
置。
6. A display unit for displaying a waveform of a signal verified by the verification unit, and a detail of the plurality of simulators within a time designated based on the waveform of the signal displayed by the display unit. First verification means for verifying the operation of the hardware by switching to a simulator with a finer degree, and within the time specified based on the waveform of the signal displayed by the display means, details of the plurality of simulators The design support apparatus according to claim 2, further comprising: a second verification unit that verifies an operation of the hardware by switching to a simulator having a coarser degree.
JP06514397A 1997-03-18 1997-03-18 Design support equipment Expired - Fee Related JP3472067B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06514397A JP3472067B2 (en) 1997-03-18 1997-03-18 Design support equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06514397A JP3472067B2 (en) 1997-03-18 1997-03-18 Design support equipment

Publications (2)

Publication Number Publication Date
JPH10261002A JPH10261002A (en) 1998-09-29
JP3472067B2 true JP3472067B2 (en) 2003-12-02

Family

ID=13278376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06514397A Expired - Fee Related JP3472067B2 (en) 1997-03-18 1997-03-18 Design support equipment

Country Status (1)

Country Link
JP (1) JP3472067B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001109788A (en) 1999-10-12 2001-04-20 Nec Corp Simulation model, its generating method, simulation method and its recording medium
JP2002259888A (en) * 2000-12-25 2002-09-13 Toshiba Corp Simulation control program, method and apparatus
JP4644533B2 (en) * 2005-06-15 2011-03-02 株式会社日立メディコ Medical management simulation system
JP4885537B2 (en) * 2005-12-27 2012-02-29 富士通株式会社 Simulation apparatus, method, and program
JP4986508B2 (en) 2006-06-07 2012-07-25 キヤノン株式会社 Simulator apparatus and computer program
JP4852629B2 (en) 2009-06-02 2012-01-11 インターナショナル・ビジネス・マシーンズ・コーポレーション Simulation system, method and program
JP2025025320A (en) * 2023-08-09 2025-02-21 株式会社日立製作所 System and method for performing calculations regarding the behavior of an agent

Also Published As

Publication number Publication date
JPH10261002A (en) 1998-09-29

Similar Documents

Publication Publication Date Title
KR100921314B1 (en) High Performance Design Verification Apparatus Using Verification Results Re-use Technique and Its Rapid Verification Method Using the Same
JP3131177B2 (en) Method and apparatus for design verification using emulation and simulation
US8136065B2 (en) Integrated prototyping system for validating an electronic system design
KR20000029237A (en) Semiconductor integrated circuit evaluation system
Beer et al. RuleBase: Model checking at IBM
US20190018917A1 (en) Hybrid timing analysis method and associated system and non-transitory computer readable medium
US20240111660A1 (en) Managing high performance simulation representation of an emulation system
KR100794916B1 (en) Design Verification Device for Progressive Design Verification Using Emulation and Simulation and Design Verification Method Using the Same
JP3472067B2 (en) Design support equipment
US7051301B2 (en) System and method for building a test case including a summary of instructions
WO2001035283A2 (en) System for performing parallel circuit simulation in a high level description language
US7606694B1 (en) Framework for cycle accurate simulation
JP2003523001A (en) A method for manipulating a netlist describing an integrated circuit design, and a method for generating test vectors to reduce the number of errors in comparing measured test results of a prototype integrated circuit design with simulated performance
Gong et al. Modeling dynamically reconfigurable systems for simulation-based functional verification
KR101328263B1 (en) Verification Method from Electronic System Level to Gate Level Using Systematic Progressive Refinement
KR20060066634A (en) Verification apparatus using dynamic verification technique that improves verification performance and verification efficiency and verification methodology using the same
TWI595417B (en) X-propagation in emulation
US12321675B2 (en) Incremental compilation for FPGA-based systems
JP4985211B2 (en) Logic circuit simulation
US7634396B2 (en) Method and computer program product for generation of bus functional models
KR20050101105A (en) Simulation-based verification apparatus achieving high verification performance, and the simulation method using the same
JP2982418B2 (en) Functional simulation device
JP4183035B2 (en) Design support apparatus, source code coverage method, and program thereof
Siddiqui System-on-Chip (SoC) emulation
JP2729061B2 (en) Zero-delay operation processing method for simulation equipment

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070912

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080912

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080912

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090912

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees