JP2951355B2 - Logic simulation equipment - Google Patents
Logic simulation equipmentInfo
- Publication number
- JP2951355B2 JP2951355B2 JP2069437A JP6943790A JP2951355B2 JP 2951355 B2 JP2951355 B2 JP 2951355B2 JP 2069437 A JP2069437 A JP 2069437A JP 6943790 A JP6943790 A JP 6943790A JP 2951355 B2 JP2951355 B2 JP 2951355B2
- Authority
- JP
- Japan
- Prior art keywords
- event
- time
- chain
- memory
- logic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000004088 simulation Methods 0.000 title claims description 18
- 238000011156 evaluation Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 10
- 230000001934 delay Effects 0.000 description 5
- 238000000034 method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000005094 computer simulation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Description
【発明の詳細な説明】 〔概 要〕 論理回路の論理ゲート内や配線で生じる個々の信号伝
播遅延を考慮した詳細遅延を扱う論理シミュレーション
装置に関し, 論理シミュレーション装置におけるメモリの使用量を
最小限に押さえかつ,イベント処理に於けるオーバヘッ
ドを最小にして高速に処理することを目的とし, 評価パイプラインと,ファンアウト・パイプライン
と,イベント・スケジュール装置とをそなえ, イベント・スケジュール装置には、同一時刻のイベン
ト・データをチェインにリンクして格納するイベント・
リスト・メモリと、 時刻対応のアドレスを有して、それらのアドレスには
そのアドレス対応の時刻を指定された時刻とするイベン
ト・リスト・メモリ内のイベントのチェインの先頭およ
び最終のアドレスがポインタとして格納される時刻管理
メモリと、 イベント・リスト・メモリ内の空領域をチェインにし
て、その先頭および最終のアドレスをポインタとして空
領域を管理する空領域管理回路とを設け、 時刻管理メモリから現在時刻に対応するアドレスに格納
されている上記イベント・リスト・メモリ内のイベント
チェインの先頭および最終を示すポインタを読み出し
て、イベント・リスト・メモリから対応するチェインに
リンクされたイベント・データを順次読み出し、読み出
し終了後、該チェインの先頭および最終を示すポインタ
を空領域管理回路に通知し、空領域管理回路に空領域と
して登録させることを特徴とする。DETAILED DESCRIPTION OF THE INVENTION [Summary] The present invention relates to a logic simulation apparatus that handles detailed delays in consideration of individual signal propagation delays generated in logic gates and wiring of a logic circuit, and minimizes the amount of memory used in the logic simulation apparatus. The purpose is to reduce the overhead in event processing and minimize the overhead, and to perform high-speed processing. It has an evaluation pipeline, a fan-out pipeline, and an event scheduler. An event that stores time event data linked to a chain
It has a list memory and a time-corresponding address, and those addresses are used as pointers to the first and last addresses of the chain of events in the event list memory in which the time corresponding to the address is a designated time. A time management memory to be stored, and an empty area management circuit that manages the empty area using the empty area in the event list memory as a chain and using the first and last addresses as pointers are provided. Reading the pointers indicating the beginning and end of the event chain in the event list memory stored at the address corresponding to the above, sequentially reading the event data linked to the corresponding chain from the event list memory, After reading is completed, pointers indicating the beginning and end of the chain are cleared. Notify band management circuit, characterized in that to register as an empty area in the free area management circuit.
本発明は,論理回路の論理ゲート内や配線で生じる個
々の信号伝播遅延を考慮した詳細遅延を扱う論理シミュ
レーション装置に関し,特に評価を行った各論理ゲート
の出力値を後段の論理ゲートに所定の時刻に伝播させる
ためのイベントのスケジューリング機構に関するもので
ある。The present invention relates to a logic simulation apparatus that handles a detailed delay in consideration of individual signal propagation delays generated in a logic gate of a logic circuit and in wiring, and in particular, outputs an output value of each evaluated logic gate to a predetermined logic gate in a subsequent stage. The present invention relates to an event scheduling mechanism for propagating an event at a time.
設計した論理回路の詳細なタイミング検証を行うため
に,詳細遅延を扱うことのできるダイナミック・シュミ
レータの必要性が高まっている。In order to verify the timing of a designed logic circuit in detail, the need for a dynamic simulator capable of handling detailed delay is increasing.
一方,論理回路の大規模化に伴って,汎用計算機上に
構築されたソフトウェア・シミュレータでは膨大な処理
時間がかかるようになってきた。そこで論理シミュレー
ションを高速に実行する専用ハードウェアが開発され,
すでに実用化されている。On the other hand, with the increase in the scale of logic circuits, a software simulator built on a general-purpose computer has taken an enormous amount of processing time. Therefore, dedicated hardware has been developed to execute logic simulation at high speed.
It is already in practical use.
しかしこれらの多くは,全ゲートの遅延量を同一とみ
なす単一遅延や遅延量を無視する0遅延でシミュレーシ
ョンを行うもので,タイミング検証には使用できないも
のである。そして詳細遅延を扱うことのできる装置の場
合も,イベントを任意の時刻にスケジュールするための
イベント・スケジュール装置が複雑になり,メモリも大
量に必要になって,単一遅延を扱うものよりも処理速度
は大幅に低下している。However, most of them perform a simulation with a single delay that regards the delay amount of all gates as the same or a zero delay that ignores the delay amount, and cannot be used for timing verification. In the case of a device that can handle detailed delays, the event scheduler for scheduling events at arbitrary times becomes complicated, and a large amount of memory is required. Speed has dropped significantly.
本発明は特に,少ないメモリ容量で高速のイベント処
理を可能にするイベント・スケジューリング装置を提供
する。In particular, the present invention provides an event scheduling device that enables high-speed event processing with a small memory capacity.
第5図に,従来の論理シミュレーション装置の基本構
成を示す。図において,1はネット・ステータス・メモ
リ,2はニュー・イベント・バッファNEB,3はファンアウ
ト・パイプライン,4は評価ゲート・バッファEGB,5は評
価パイプライン,6はイベント・スケジュール装置であ
る。FIG. 5 shows a basic configuration of a conventional logic simulation apparatus. In the figure, 1 is a net status memory, 2 is a new event buffer NEB, 3 is a fan-out pipeline, 4 is an evaluation gate buffer EGB, 5 is an evaluation pipeline, and 6 is an event scheduler. .
ネット・ステータス・メモリ1は,第6図に例示する
ようなシミュレーション対象の論理回路を構成する各論
理単位(以下ゲートという)についての状態情報(値)
を保持し,シミュレーション実行にしたがって更新され
る。The net status memory 1 stores state information (value) for each logical unit (hereinafter referred to as a gate) constituting a simulation target logical circuit as illustrated in FIG.
And is updated according to the simulation execution.
評価ゲート・バッファEGB4には,入力値が変化したゲ
ートの情報(変化時刻,入力端子,変化値を含む)が格
納されている。The evaluation gate buffer EGB4 stores information (including a change time, an input terminal, and a change value) of a gate whose input value has changed.
評価パイプライン5は,各ゲートごとにそのファンイ
ン情報,詳細遅延量,ゲートの論理種別などの情報をも
ち,評価ゲート・バッファEGB4から時刻tに入力値が変
化したゲートの情報を取り出し,その論理状態を評価し
て,その結果出力値を変化させるゲートを検出し,さら
に詳細遅延を考慮して出力値の変化時刻t′を算出して
イベント・スケジュール装置6にそのゲートのイベント
・データをパケットで出力する。The evaluation pipeline 5 has, for each gate, information such as fan-in information, detailed delay amount, and logic type of the gate, and extracts information of the gate whose input value has changed at time t from the evaluation gate buffer EGB4. The logic state is evaluated, and as a result, a gate that changes the output value is detected. Further, a change time t 'of the output value is calculated in consideration of the detailed delay, and the event data of the gate is transmitted to the event scheduler 6. Output in packets.
イベント・スケジュール装置6は,評価パイプライン
5から出力されるバラバラの変化時刻t′をもった各ゲ
ートの出力値変化のイベントを時系列上で整列化して順
次ファンアウト先のゲートに伝播させるためのスケジュ
ーリングを行う。そのためのイベント・スケジュール装
置6は,変化時刻ごとに同一時刻に属する各イベント・
データをチェインにつないで,テーブルに格納し,時刻
順に容易に取り出しできるようにスケジュール管理す
る。これらのイベント・データは,ゲート名,変化値
(旧値,新値)からなる。The event schedule device 6 sorts the output value change events of the respective gates having the different change times t ′ output from the evaluation pipeline 5 in time series and sequentially propagates the events to the fan-out destination gate. Scheduling. For this purpose, the event schedule device 6 sets each event belonging to the same time for each change time.
Connect the data to a chain, store it in a table, and manage the schedule so that it can be easily retrieved in chronological order. These event data include a gate name and a change value (old value, new value).
このようにスケジューリングされたイベント・データ
をディスパッチ(発行)するときは,現在時刻ごとに,
現在時刻と一致する変化時刻をもつチェインの各イベン
ト・データを順に読み出し,ニュー・イベント・バッフ
ァNEB2をファン・アウト・パイプライン3へ送出する。When dispatching (issuing) event data that has been scheduled in this manner,
Each event data of the chain having the change time coincident with the current time is sequentially read, and the new event buffer NEB2 is sent to the fan-out pipeline 3.
ニュー・イベント・バッファNEB2に入力されたイベン
ト・データは一旦格納され,次に順次読み出されて,ネ
ット・ステータス・メモリ1の該当するゲートの論理状
態を更新する処理が行われる。The event data input to the new event buffer NEB2 is temporarily stored, then read out sequentially, and a process of updating the logic state of the corresponding gate in the net status memory 1 is performed.
ファンアウト・パイプライン3は,ネット・ステータ
ス・メモリ1に格納されている論理回路の範囲内でゲー
トの接続(ファンアウト)情報を保持しており,入力さ
れたイベント情報により,出力値を変化させたゲートの
出力につながる全てのゲートとを求めて,評価ゲート・
バッファEGB4に格納する。The fan-out pipeline 3 holds gate connection (fan-out) information within the range of the logic circuit stored in the net status memory 1, and changes the output value according to the input event information. Find all the gates that lead to the output of the gate
Store in buffer EGB4.
以上の動作を各変化時刻について順次連続的に実行
し,全てのゲートについて,評価を行ったとき終了す
る。The above operation is sequentially and continuously executed for each change time, and the process ends when the evaluation is performed for all the gates.
第7図は,従来のイベント・スケジュール装置におけ
るイベント・データの管理方法を示す。図において,7は
変化時刻ごとにイベント・データのチェインのポインタ
を登録する時刻管理メモリ,8はイベント・データのチェ
インを格納するイベント・リスト・メモリ,9は現在時刻
ポインタである。FIG. 7 shows a method of managing event data in a conventional event schedule device. In the figure, reference numeral 7 denotes a time management memory for registering a pointer of a chain of event data for each change time, 8 denotes an event list memory for storing a chain of event data, and 9 denotes a current time pointer.
第5図のイベント・スケジュール装置6は,評価パイ
プライン5からイベント・パケットが入力されると,そ
のイベント・データの変化時刻が時刻管理メモリ7に登
録されているかどうかを調べ,登録されていれば,その
変化時刻のエントリに格納されているポインタにより,
イベント・リスト・メモリ8内の該当するイベント・デ
ータのチェインの端を知り,そこに新しいイベント情報
をつないでスケジュールへの組み込みを行う。他方,時
刻管理メモリ7に,入力されたイベント・データの変化
時刻と一致する変化時刻を見出せなかった場合には,時
刻管理メモリ7に新しい変化時刻を追加し,またイベン
ト・リスト・メモリ8にイベント・データの新しいチェ
インを開設してポインタでリンクする。When an event packet is input from the evaluation pipeline 5, the event schedule device 6 shown in FIG. 5 checks whether or not the change time of the event data is registered in the time management memory 7, and if the change time is registered, it is determined. For example, by using the pointer stored in the entry of the change time,
The end of the chain of the corresponding event data in the event list memory 8 is known, and new event information is connected to the end to incorporate it into the schedule. On the other hand, if a change time that matches the change time of the input event data cannot be found in the time management memory 7, a new change time is added to the time management memory 7 and the event list memory 8 is added. Open a new chain of event data and link by pointer.
このようにして変化時刻ごとにスケジューリングされ
たイベント・データの読み出しを行う場合は,現在時刻
ポインタ9に現在の時刻データを設定し,逐次更新して
ゆくとともに,それぞれの現在時刻にスケジューリング
されているイベントのチェインを読み出す。このため,
現在時刻ポインタ9の各時刻ごとに時刻管理メモリ7内
で一致する変化時刻をもつエントリを検索し,有ればそ
のエントリに設定されているイベント・リスト・メモリ
8へのポインタを用いて,イベント・リスト・メモリ8
の該当するチェインをアクセスし,チェイン中の順次の
イベント・データを読み出して出力する。これにより,
各現在時刻ごとに同一時刻に出力値が変化する全てのゲ
ートの情報を,ニュー・イベント・バッファNEB2および
ファンアウト・パイプライン3に供給することができ
る。When reading the event data scheduled for each change time in this way, the current time data is set in the current time pointer 9 and updated sequentially, and the schedule is scheduled at each current time. Read the chain of events. For this reason,
An entry having a matching change time is searched in the time management memory 7 for each time of the current time pointer 9, and if there is, an event is set using the pointer to the event list memory 8 set in the entry.・ List memory 8
And reads and outputs sequential event data in the chain. This gives
Information on all gates whose output values change at the same time at each current time can be supplied to the new event buffer NEB2 and the fan-out pipeline 3.
従来のイベント・スケジュール装置では,イベント・
データのチェインが絶対的な変化時刻をキーにして管理
されている。そのためゲートの評価を行ってイベントを
生成した場合,そのイベントをスケジューリングする時
刻として絶対的な変化時刻で指定していた。In the conventional event scheduler, the event
The data chain is managed using the absolute change time as a key. Therefore, when an event is generated by evaluating a gate, an absolute change time is specified as a time at which the event is scheduled.
一方,ゲートの評価における出力値の変化時刻は遅延
時間を考慮して指定されるが,この遅延時間は入力値の
変化時刻(現在時刻に対応する)からの相対時間として
与えられている。On the other hand, the change time of the output value in the evaluation of the gate is specified in consideration of the delay time, and the delay time is given as a relative time from the change time of the input value (corresponding to the current time).
このため変化時刻を絶対的な時刻に変換するための計
算が必要になり,その処理が評価パイプラインのオーバ
ヘッドとなって処理を遅くしていた。For this reason, a calculation for converting the change time into an absolute time is required, and the processing becomes an overhead of the evaluation pipeline and slows down the processing.
またスケジュール中のイベントを処理した後,不要と
なったイベント・データの領域を再使用可能にすること
が望ましいが,従来の装置ではこの処理に時間がかかる
ため,大きな容量のメモリを用意する必要があった。It is also desirable to make the area of the event data that is no longer necessary after processing the events in the schedule reusable. However, this processing takes time in conventional devices, so it is necessary to prepare a large capacity memory. was there.
本発明は,論理シミュレーション装置におけるメモリ
の使用量を最小限に押さえかつ,イベント処理に於ける
オーバヘッドを最小にして高速に処理することを目的と
している。SUMMARY OF THE INVENTION It is an object of the present invention to perform processing at a high speed by minimizing the amount of memory used in a logic simulation apparatus and by minimizing the overhead in event processing.
本発明は,イベント・データをスケジュール管理する
ための時刻管理メモリのアドレスと時刻位置とを対応づ
け,現在時刻からの相対時間が判れば,簡単なアドレス
計算で対応する時刻のアドレスをアクセスできるように
する。According to the present invention, the address of the time management memory for managing the schedule of the event data is associated with the time position, and if the relative time from the current time is known, the address at the corresponding time can be accessed by simple address calculation. To
これにより評価パイプラインは,出力値を変化したゲ
ートについて,詳細遅延に基づく変化時刻を計算する必
要がなく,イベント時刻に遅延時間を指定すれば足り,
イベント・スケジュール装置は,イベント・データを受
け取ると現在時刻に遅延時間を加算して時刻管理メモリ
のアドレスを求め,対応する変化時刻にスケジューリン
グすることができる。As a result, the evaluation pipeline does not need to calculate the change time based on the detailed delay for the gate whose output value has changed, and it is sufficient to specify the delay time for the event time.
When receiving the event data, the event scheduler obtains the address of the time management memory by adding the delay time to the current time, and can schedule at the corresponding change time.
第1図は本発明の原理図であり,イベント・スケジュ
ーリング装置の基本構成を示す。FIG. 1 is a principle diagram of the present invention, and shows a basic configuration of an event scheduling apparatus.
第1図において,3はファンアウト・パイプライン,5は
評価パイプライン,6はイベント・スケジュール装置であ
る。In FIG. 1, 3 is a fan-out pipeline, 5 is an evaluation pipeline, and 6 is an event schedule device.
11は入力イベント・バッファであり,評価パイプライ
ン5から信号線aを経て,スケジュールすべきイベント
・パケットを受け取り蓄えておく。イベント・パケット
はイベントをスケジュールすべき時刻を現時刻から何ユ
ニット時間先にスケジュールするかを示す相対時刻TIME
と,どのゲートがどの信号値に変化するかというイベン
ト・データEVENTから構成される、 12はイベントをスケジュールすべき時刻を管理する時
刻管理メモリであり,信号線bからイベントを登録すべ
き時刻データを受け取る。An input event buffer 11 receives and stores event packets to be scheduled from the evaluation pipeline 5 via the signal line a. The event packet is a relative time TIME that indicates how many units of time the event should be scheduled before the current time.
And an event data EVENT indicating which gate changes to which signal value. Reference numeral 12 denotes a time management memory for managing a time at which the event should be scheduled, and a time data at which the event should be registered from the signal line b. Receive.
13は登録すべきイベントを蓄えるイベント・リスト・
メモリである。13 is an event list that stores events to be registered
Memory.
14はイベント・リスト・メモリ13内の空領域を管理す
る空領域管理回路である。イベント・リスト・メモリ13
が信号線cから登録すべきイベントを受け取ると,空領
域管理回路14から信号線gにより通知された空領域にイ
ベントを書き込むと同時に,そのアドレスをeを通して
時刻管理メモリ12に通知する。時刻管理メモリ12は入力
イベント・バッファ11からbを通して受け取った時刻の
イベントの最終リンクとしてこのアドレスを登録する。An empty area management circuit 14 manages an empty area in the event list memory 13. Event list memory 13
Receives the event to be registered from the signal line c, writes the event to the empty area notified by the signal line g from the empty area management circuit 14, and notifies the time management memory 12 of the address through e. The time management memory 12 registers this address as the last link of the event at the time received from the input event buffer 11 through b.
第1図に示された本発明構成の動作は次のように行わ
れる。The operation of the configuration of the present invention shown in FIG. 1 is performed as follows.
入力イベント・バッファ11に評価パイプライン5から
出力されたイベント・パケットが入力されたとき,詳細
遅延の遅延時間に相当する相対時刻TIMEがiであり,論
理シミュレーション装置における現在時刻がnであった
とすると,イベントEVENTをスケジュールすべき変化時
刻はn+iで与えられ,時刻管理メモリ12のアドレス
(n+i)がアクセスされる。アドレス(n+1)に
は,イベント・リスト・メモリ13へのポインタがあり,
このポインタ変化時刻n+iに出力値を変化させるイベ
ントのチェインの先頭と最後の2つのアドレスへのポイ
ンタAs,Aeを含む。When the event packet output from the evaluation pipeline 5 is input to the input event buffer 11, the relative time TIME corresponding to the delay time of the detailed delay is i, and the current time in the logic simulation device is n. Then, the change time at which the event EVENT should be scheduled is given by n + i, and the address (n + i) of the time management memory 12 is accessed. At address (n + 1), there is a pointer to the event list memory 13,
Includes pointers As and Ae to the first and last two addresses of the chain of the event whose output value changes at the pointer change time n + i.
一方,入力イベント・バッファ11のEVENTは,空領域
管理回路14により与えられるイベント・リスト・メモリ
13の空領域の1つに格納される。そこでこの格納アドレ
スにより時刻管理メモリ12内のポインタAeを更新し,ま
た空領域管理回路14が管理する空領域からこのアドレス
を削除する。On the other hand, EVENT of the input event buffer 11 is the event list memory given by the empty area management circuit 14.
Stored in one of the 13 empty areas. Therefore, the pointer Ae in the time management memory 12 is updated with this storage address, and this address is deleted from the empty area managed by the empty area management circuit 14.
変化時刻における該当するイベントの読み出しは,時
刻管理メモリ12を現在時刻のアドレスでアクセスし,得
られたポインタを用いてイベント・リスト・メモリ13を
アクセスし,イベントのチェインを順次辿って読み出す
ことによって行われる。読み出されたイベントは,出力
イベント・バッファ15を介してファンアウト・パイプラ
イン3へ出力される。The corresponding event at the change time is read by accessing the time management memory 12 at the address of the current time, accessing the event list memory 13 using the obtained pointer, and sequentially reading the chain of events. Done. The read event is output to the fan-out pipeline 3 via the output event buffer 15.
第2図ないし第4図を用いて本発明の実施例を説明す
る。An embodiment of the present invention will be described with reference to FIGS.
第2図は,論理シミュレーション装置の実施例構成を
示す。図示された構成は,第5図で説明した従来装置の
構成と基本的な部分は同じであり,そのため第2図では
構成要素を第5図と同じ参照番号を用いて示している。FIG. 2 shows an embodiment configuration of the logic simulation apparatus. The configuration shown is basically the same as the configuration of the conventional device described with reference to FIG. 5, so that the components in FIG. 2 are indicated by the same reference numerals as those in FIG.
第2図において,第5図の従来装置と異なっているの
は,第2図の評価パイプライン5が出力値を変化させた
ゲートを検出するとともにその変化時刻を現在の時刻と
の相対時刻TIMEで指定したイベント・パケット5aを作成
してイベント・スケジュール装置6へ送出することに,
イベント・スケジュール装置6が第1図で説明したよう
にな独特な構成をもつことである。2 is different from the conventional apparatus in FIG. 5 in that the evaluation pipeline 5 in FIG. 2 detects a gate whose output value has been changed and determines the change time relative to the current time. To create and send the event packet 5a specified in the above to the event schedule device 6.
The event scheduler 6 has a unique configuration as described with reference to FIG.
第3図および第4図によりイベント・スケジュール装
置6の実施例の細部を説明する。The details of the embodiment of the event schedule apparatus 6 will be described with reference to FIGS.
第3図は時刻管理メモリ12とイベント・リスト・メモ
リ13の説明図である。時刻管理メモリ12の中には,現在
時刻を示すポインタAと相対時刻を持つレジスタBがあ
る。時刻管理メモリ12は,各時刻に登録されたイベント
のイベント・リスト・メモリ13上の先頭アドレス(FIRS
T)と最終アドレス(LAST)から構成される。FIG. 3 is an explanatory diagram of the time management memory 12 and the event list memory 13. The time management memory 12 includes a pointer A indicating the current time and a register B having a relative time. The time management memory 12 stores the start address (FIRS) on the event list memory 13 of the event registered at each time.
T) and the last address (LAST).
現在時刻ポインタAが指すFIRSTの値は,信号線dを
通してイベント・リスト・メモリ13に送られる。The value of FIRST indicated by the current time pointer A is sent to the event list memory 13 through the signal line d.
イベント・リスト・メモリ13は,イベント・データを
蓄えるEVENTと,同一時刻のイベントをリンクする為のN
EXT LINKから構成される。現在時刻のイベントは,こ
のNEXT LINKをたどって次々と読み出され,hを通して第
1図の出力イベント・バッファ15に送られる。ここで読
み出された領域は再利用可能であるので,空領域として
登録するため,そのFIRST及びLASTの値を,fを通して空
領域管理回路14に通知する。The event list memory 13 has an N for linking the event storing the event data and the event at the same time.
It consists of EXT LINK. The event at the current time is read out one after another following this NEXT LINK, and sent to the output event buffer 15 in FIG. 1 through h. Since the area read out here is reusable, the values of FIRST and LAST are notified to the empty area management circuit 14 through f in order to register the area as an empty area.
第4図は空領域管理回路14の説明図である。空領域管
理回路14は,空領域先頭アドレスCと空領域最終アドレ
スDのポインタから構成される。FIG. 4 is an explanatory diagram of the empty area management circuit 14. The empty area management circuit 14 includes a pointer to an empty area start address C and an empty area end address D.
イベント・リスト・メモリ13の全ての空領域は,NEXT
LINKを利用して1つのチェインを構成している。な
お,初期状態では,すべてのイベント・リストが1つの
チェインとなっている。アドレスCはこのチェインの先
頭を指し,アドレスDは最後を指す。All empty areas in the event list memory 13 are NEXT
One chain is configured using LINK. In the initial state, all event lists are in one chain. Address C points to the beginning of this chain, and address D points to the end.
空き領域の更新は次の様にして行われる。Cの指すNE
XT LINKにFIRSTの値を書く。DにLASTの値を書く。こ
の2ステップで完了するが,これらは並列動作可能であ
るから,実際は1サイクルで完了する。The update of the free area is performed as follows. NE pointed to by C
Write FIRST value in XT LINK. Write the value of LAST in D. These steps are completed in two steps, but since they can be operated in parallel, they are actually completed in one cycle.
イベントの出力が完了すると,第3図の時刻管理メモ
リ12における現在時刻のFIRSTとLASTを0クリアする。When the output of the event is completed, FIRST and LAST of the current time in the time management memory 12 in FIG. 3 are cleared to zero.
入力イベントの登録は,以下の様にして行われる。ま
ず第1図の入力イベント・バッファ11から,bを通して登
録すべき相対時刻TIMEが第3図が時刻管理メモリ12に通
知されると,現在時刻+相対時間が指す時刻管理メモリ
12の内容FIRSTとLASTが読み出される。Registration of an input event is performed as follows. First, when the relative time TIME to be registered is notified from the input event buffer 11 of FIG. 1 through the b to the time management memory 12 of FIG. 3, the time management memory indicates the current time + the relative time.
12 contents FIRST and LAST are read.
登録すべきイベントは第1図のCを通してイベント・
リスト・メモリ13に伝わり,gを通して空領域管理回路14
から通知される空領域アドレスの指すイベント・リスト
・メモリ13(第3図)のEVENTに書き込まれる。このア
ドレスが指すNEXT LINKには0を書く。次の処理はFIRS
Tの値が0の時と0以外のときと異なる。FIRST=0(す
なわちその時刻のイベントは以前には登録されていな
い)の場合は2のA+Bが指すFIRSTとLAST両方に,イ
ベントを書いたアドレス(第1図のeを通してイベント
・リスト・メモリ13から通知される)を書く。The event to be registered is the event
It is transmitted to the list memory 13, and through g, the empty area management circuit 14
Is written to the EVENT of the event list memory 13 (FIG. 3) pointed to by the empty area address notified from. Write 0 to NEXT LINK indicated by this address. Next processing is FIRS
It is different when the value of T is 0 and other than 0. If FIRST = 0 (that is, the event at that time has not been registered before), the address at which the event was written (via the event list memory 13 through e in FIG. 1) is stored in both FIRST and LAST indicated by A + B of 2. To be notified).
FIRSTが0でない場合,まずLASTが指すNEXT LINKに
イベントを書いたアドレスを書く。次に時刻管理メモリ
12のA+Bが指すLASTに,同じくイベントを書いたアド
レスを書く。第4図の空領域管理回路のCには,元のC
が指していたイベント・リスト・メモリ13のNEXT LINK
の値が書き込まれ,空領域管理リンクが更新される。If FIRST is not 0, first write the address that wrote the event to the NEXT LINK pointed to by LAST. Next, time management memory
In the LAST pointed to by A + B, write the address where the event was written. The C of the empty area management circuit shown in FIG.
NEXT LINK of event list memory 13 pointed to by
Is written, and the empty area management link is updated.
本実施例装置は次の様に動作する。先ず論理シミュレ
ーション装置の時刻が更新されると,時刻管理メモリ12
の現在時刻PTR Aがカウントアップされ,その時刻に
スケジュールされたイベントがイベント・リスト・メモ
リ13から読み出され,iを通して出力される。その間入力
イベント・バッファ11には,aを通して,任意の相対時刻
にスケジュールすべきイベント・パケットが入力される
が,これらはバッファ11に蓄えられる。イベント・リス
ト・メモリ13内に現在時刻で出力すべきイベントがなく
なると,バッファ11から入力イベントが取り出され,登
録が行われる。The device of this embodiment operates as follows. First, when the time of the logic simulation device is updated, the time management memory 12
Is counted up, the event scheduled at that time is read from the event list memory 13, and output through i. During this time, event packets to be scheduled at an arbitrary relative time are input to the input event buffer 11 through a, and these are stored in the buffer 11. When there are no more events to be output at the current time in the event list memory 13, the input events are extracted from the buffer 11 and registered.
詳細遅延の値は量子化されてモデル化される。たとえ
ば,0,1nsecを最小単位として,最大100nsecまでの遅延
を扱えるようにする為には,0,1nsecを1ユニット時間と
定義し,最大1000ユニットの相対時間を扱う必要があ
る。The value of the detail delay is quantized and modeled. For example, in order to handle delays up to 100 nsec with 0, 1 nsec as the minimum unit, it is necessary to define 0, 1 nsec as 1 unit time, and handle a relative time of 1000 units at maximum.
時刻管理メモリ12のアドレスの深さは,この相対時間
の最大値の深さが必要である。またこの値は2のN乗
(Nは整数)に設定する。(たとえば1024)。現在時刻
ポインタのビット長はNであり,時刻が1ユニット時間
上がるとカウントアップされるが,MAXまでくると0にな
る(桁あふれは無視)ため,メモリをサイクリックに使
用できる。The depth of the address of the time management memory 12 needs to be the maximum value of the relative time. This value is set to 2 N (N is an integer). (For example, 1024). The bit length of the current time pointer is N. When the time increases by one unit time, it is counted up, but when it reaches MAX, it becomes 0 (ignoring overflow), so that the memory can be used cyclically.
本発明装置を用いることにより,詳細遅延を扱う論理
回路のダイナミックシミュレーションを少ないメモリ量
で高速に実行できる論理シミュレーション装置を構成す
ることができる。By using the device of the present invention, it is possible to configure a logic simulation device capable of executing a dynamic simulation of a logic circuit handling a detailed delay at a high speed with a small amount of memory.
第1図は本発明の原理図,第2図は本発明による論理シ
ミュレーション装置の実施例構成図,第3図は時刻管理
メモリとイベント・リスト・メモリの説明図,第4図は
空領域管理回路の説明図,第5図は従来の論理シミュレ
ーション装置の基本構成図,第6図は論理回路の例を示
す説明図,第7図は従来のイベント・スケジュール装置
におけるイベント・データの管理方法の説明図である。 第1図中 3:ファンアウト・パイプライン 5:評価パイプライン 6:イベント・スケジュール装置 11:入力イベント・バッファ 12:時刻管理メモリ 13:イベント・リスト・メモリ 14:空領域管理回路 15:出力イベント・バッファFIG. 1 is a diagram illustrating the principle of the present invention, FIG. 2 is a block diagram of an embodiment of a logic simulation apparatus according to the present invention, FIG. 3 is an explanatory diagram of a time management memory and an event list memory, and FIG. FIG. 5 is an explanatory diagram of a circuit, FIG. 5 is a basic configuration diagram of a conventional logic simulation device, FIG. 6 is an explanatory diagram showing an example of a logic circuit, and FIG. 7 is a diagram showing a method of managing event data in a conventional event schedule device. FIG. In Fig. 1: 3: Fan-out pipeline 5: Evaluation pipeline 6: Event scheduler 11: Input event buffer 12: Time management memory 13: Event list memory 14: Empty area management circuit 15: Output event ·buffer
Claims (1)
与えられた入力値の変化に対して出力値を変化させる論
理ゲートを検出してその出力値の変化をイベントとし、
またそのイベントを有効化する時刻を遅延時間に対応す
る相対時刻で指定する評価パイプラインと、 イベントが指定する出力値を変化させた論理ゲートごと
にそのファンアウト先の入力値を変化させる論理ゲート
を検出するファンアウト・パイプラインと、 各ゲートの出力ステート値を記憶するネット・ステータ
ス・メモリと、 評価パイプラインから出力されるイベントを指定された
時刻にスケジューリングし、指定された時刻が到来した
ときそのイベントをファンアウト・パイプラインに供給
するとともに、ネット・ステータス・メモリの値を更新
するイベント・スケジュール装置とを備えた論理シミュ
レーション装置において、 イベント・スケジュール装置には、同一時刻のイベント
・データをチェインにリンクして格納するイベント・リ
スト・メモリと、 時刻対応のアドレスを有して、それらのアドレスにはそ
のアドレス対応の時刻を指定された時刻とするイベント
・リスト・メモリ内のイベントのチェインの先頭および
最終のアドレスがポインタとして格納される時刻管理メ
モリと、 イベント・リスト・メモリ内の空領域をチェインにし
て、その先頭および最終のアドレスをポインタとして空
領域を管理する空領域管理回路とを設け、 時刻管理メモリから現在時刻に対応するアドレスに格納
されている上記イベント・リスト・メモリ内のイベント
チェインの先頭および最終を示すポインタを読み出し
て、イベント・リスト・メモリから対応するチェインに
リンクされたイベント・データを順次読み出し、読み出
し終了後、該チェインの先頭および最終を示すポインタ
を空領域管理回路に通知し、空領域管理回路に空領域と
して登録させることを特徴とする論理シミュレーション
装置。1. A logic gate for changing an output value in response to a change in a given input value among logic gates of a logic circuit to be evaluated, and a change in the output value is defined as an event,
In addition, an evaluation pipeline that specifies the time at which the event is enabled by a relative time corresponding to the delay time, and a logic gate that changes the input value of the fan-out destination for each logic gate that changes the output value specified by the event Pipeline, net status memory that stores the output state value of each gate, and events output from the evaluation pipeline are scheduled at a specified time, and the specified time has arrived When the event simulation unit supplies the event to the fan-out pipeline and updates the value of the net status memory, the event schedule unit stores the event data at the same time. Event that stores a link to a chain A list memory and a time-corresponding address, and the addresses point to the start and end addresses of the chain of events in the event list memory in which the time corresponding to the address is a designated time. And a free space management circuit that manages the free space by using the free space in the event list memory as a chain and using the first and last addresses as pointers. Reading the pointers indicating the beginning and end of the event chain in the event list memory stored at the address corresponding to the time, and sequentially reading the event data linked to the corresponding chain from the event list memory After reading, pointers indicating the beginning and end of the chain are Notify space management circuit, a logic simulation apparatus for causing registered as an empty area in the free area management circuit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2069437A JP2951355B2 (en) | 1990-03-19 | 1990-03-19 | Logic simulation equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2069437A JP2951355B2 (en) | 1990-03-19 | 1990-03-19 | Logic simulation equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03269674A JPH03269674A (en) | 1991-12-02 |
JP2951355B2 true JP2951355B2 (en) | 1999-09-20 |
Family
ID=13402615
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2069437A Expired - Fee Related JP2951355B2 (en) | 1990-03-19 | 1990-03-19 | Logic simulation equipment |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2951355B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0598149B1 (en) * | 1992-11-12 | 2000-01-19 | Fujitsu Limited | Hardware logic simulator |
JPH0764961A (en) * | 1993-08-23 | 1995-03-10 | Nec Corp | Discrete event-type simulator event controller |
JP2643848B2 (en) * | 1994-08-22 | 1997-08-20 | 日本電気株式会社 | Event scheduling method |
CN114841103B (en) * | 2022-07-01 | 2022-09-27 | 南昌大学 | Parallel simulation method, system, storage medium and device for gate-level circuit |
-
1990
- 1990-03-19 JP JP2069437A patent/JP2951355B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH03269674A (en) | 1991-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6961689B1 (en) | Scheduling non-integral simulation time for mixed-signal simulation | |
KR100237090B1 (en) | Control intensive system | |
US5157620A (en) | Method for simulating a logic system | |
US11055458B1 (en) | Functional coverage of designs using transition bins and cross coverage | |
JPS5975347A (en) | Simulation device of logical circuit | |
CN103870335B (en) | System and method for efficient resource management of signal flow programmed digital signal processor code | |
JPH07249063A (en) | Logical simulator using hierarchical-type checkpoint | |
JP2951355B2 (en) | Logic simulation equipment | |
JPS5814257A (en) | Data processing device for logic simulation | |
US6195628B1 (en) | Waveform manipulation in time warp simulation | |
EP0722592B1 (en) | A data processing apparatus comprising means to model production rule systems | |
WO2014063531A1 (en) | Modeling method for implementing hardware nonblocking assignment by high-level language | |
US20010010034A1 (en) | Simulation of data processing apparatus | |
EP1061463B1 (en) | Scheduling non-integral simulation time for mixed-signal simulation | |
JP2590179B2 (en) | Parallel logic simulation control method | |
JPS60173483A (en) | Logical circuit simulation system | |
JP2586155B2 (en) | Logic simulator | |
JP2706101B2 (en) | I / O delay processing unit for simulation equipment | |
JPH043229A (en) | Logic simulation device | |
JPH0458070B2 (en) | ||
JPH04239338A (en) | Measuring system for microprogram comprehension rate | |
JPH09153085A (en) | Flashback simulator | |
JP3032874B2 (en) | Equivalent circuit creation method and logic simulation method | |
JPH05189513A (en) | Delay-aware logic simulation method | |
Muller | Evaluation of a communication architecture by means of simulation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |