JP2845978B2 - Logic circuit simulation method - Google Patents

Logic circuit simulation method

Info

Publication number
JP2845978B2
JP2845978B2 JP1235668A JP23566889A JP2845978B2 JP 2845978 B2 JP2845978 B2 JP 2845978B2 JP 1235668 A JP1235668 A JP 1235668A JP 23566889 A JP23566889 A JP 23566889A JP 2845978 B2 JP2845978 B2 JP 2845978B2
Authority
JP
Japan
Prior art keywords
delay
signal
flip
simulation
list
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
JP1235668A
Other languages
Japanese (ja)
Other versions
JPH0399372A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP1235668A priority Critical patent/JP2845978B2/en
Publication of JPH0399372A publication Critical patent/JPH0399372A/en
Application granted granted Critical
Publication of JP2845978B2 publication Critical patent/JP2845978B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、処理装置の論理検証に用いる論理シミュレ
ーションに係り、特に、素子ディレイをゼロとしての高
速のシミュレーションを行うクロック同期方式の論理シ
ミュレーションにおける素子の遅延時間の取扱い方法に
関するものである。
Description: BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a logic simulation used for logic verification of a processing device, and particularly to a logic simulation of a clock synchronous system for performing a high-speed simulation with an element delay being zero. The present invention relates to a method for handling a delay time of an element.

〔従来の技術〕[Conventional technology]

従来、半導体集積回路の設計技術等において、その論
理回路の質したを確認する論理検証が重要なものとなっ
ており、特に、集積度の増加に伴い、コンピュータを利
用した検証方法が取り入れられている。このような、コ
ンピュータを利用した論理回路の検証方法で、最も良く
用いられる論理検証用CAD(Computer Aided Design)は
論理シミュレーションである。
2. Description of the Related Art Conventionally, in a semiconductor integrated circuit design technique, logic verification for confirming the quality of a logic circuit has been important. In particular, with the increase in the degree of integration, a verification method using a computer has been adopted. I have. In such a logic circuit verification method using a computer, a logic verification CAD (Computer Aided Design) that is most often used is a logic simulation.

論理シミュレーションの入力は、設計対象である集積
回路の設計言語による記述と、シミュレーション実行制
御データであり、その結果として、動作を示すタイムチ
ャートを出力する。
The inputs of the logic simulation are a description of an integrated circuit to be designed in a design language and simulation execution control data, and as a result, a time chart showing the operation is output.

そして、このタイムチャートの内容を確認することに
より、論理回路の論理検証が行われる。
Then, the logic of the logic circuit is verified by checking the contents of the time chart.

最も良く利用される論理シミュレーションは、ゲート
レベル論理シミュレーションであり、AND,ORなどのゲー
ト素子、フリップフロップ,ROM,RAMなどのメモリ素子を
構成要素とする接続リストが入力となる。
The most frequently used logic simulation is a gate-level logic simulation, in which a connection list including gate elements such as AND, OR, and memory elements such as flip-flops, ROM, and RAM as inputs is input.

その他、スイッチレベルシミュレーションがMOS回路
設計において、また、機能レベルシミュレーションがFD
L等の上位の設計言語を用いる場合に、さらに、混合シ
ミュレーションが超LSI化の進行に伴う階層設計の有効
な検証手段として、それぞれ用いられている。
In addition, switch level simulation is used for MOS circuit design, and function level simulation is used for FD.
When a higher-level design language such as L is used, mixed simulation is further used as an effective verification means of a hierarchical design accompanying the progress of VLSI.

これら論理検証においては、単なる論理動作の確認だ
けでは不十分でり、タイミングの問題の確認も重要とな
る。タイミングの問題とは、論理集積回路の構成要素の
動作遅延により生ずる論理的誤動作や設計制約違反など
を指す。この検証のためには、遅延の正確な定義が前提
となる。一般的には、構成要素ごとに、その出力に信号
の立上がりと立ち下がりに対して、最大、最小、あるい
は平均の遅延時間を定義し、かつ、入力側に配線遅延を
定義する。検証の手段としては、遅延を考慮した論理シ
ミュレーションが良く用いられるが、論理集積回路内の
論理パスとその遅延を求め、クロックおよび制御パスの
遅延とデータパス系の遅延を比較することにより検証す
るパス解析法もある。このパス解析法は、論理シミュレ
ーションによる方法に比較し、検証漏れが少ない利点が
あるが、擬似エラーを多く出力する欠点がある。
In these logic verifications, mere confirmation of a logical operation is not sufficient, and confirmation of a timing problem is also important. The timing problem refers to a logical malfunction or a design constraint violation caused by an operation delay of a component of the logic integrated circuit. For this verification, an accurate definition of delay is assumed. In general, for each component, a maximum, minimum, or average delay time is defined for the rise and fall of the signal at the output, and a wiring delay is defined at the input side. As a means of verification, a logic simulation considering delay is often used. However, a logic path in a logic integrated circuit and its delay are obtained, and verification is performed by comparing a delay of a clock and control path with a delay of a data path system. There is also a path analysis method. This path analysis method has an advantage of less omission in verification as compared with a method based on logic simulation, but has a disadvantage of outputting many pseudo errors.

以上の論理シミュレーションに関する説明は「電子情
報通信ハンドブック」第10編2部門23に記載の2・3・
2論理検証用CADに基づくものである。
The explanation of the above logic simulation is described in 2.3.
2 Based on CAD for logic verification.

さらに、回路規模の増大に伴うTAT(ターンアラウン
ドタイム)の増大に対処するため、より高速な論理シミ
ュレーション実行を実現する方法として、素子ディレイ
をゼロとして取り扱う方法がある。
Furthermore, in order to cope with an increase in TAT (turn around time) accompanying an increase in circuit scale, there is a method of realizing a higher-speed logic simulation execution, in which element delay is treated as zero.

この種の論理シミュレーションでは、複数段の共通な
素子のシミュレーションにおいて、複数段の共通的な素
子のディレイ値を取りまとめて後段の素子に付加するこ
とにより、前段素子のディレイ値をゼロにする手段が行
われていた。
In this kind of logic simulation, in a simulation of a common element of a plurality of stages, a means for collecting delay values of a common element of a plurality of stages and adding the delay value to an element of a subsequent stage to make the delay value of a preceding element zero. It was done.

この方法は、アイ・イー・イー・イー、デザイン ア
ンド テスト、4月(1987年)pp.46〜54(IEEE,DESIGN
&TEST,April,1987 pp.46−54)において論じられてい
る。
This method is described in IEE, Design and Test, April (1987) pp. 46-54 (IEEE, DESIGN
& TEST, April, 1987, pp. 46-54).

また、素子のディレイ値をゼロとしてシミュレーショ
ンを実現する手段としては、第25回エーシーエム/アイ
・イー・イー・イー,デザイン オートメーション カ
ンファレンス pp.218〜224(25th.,ACM/IEEE,DESIGN
AUTOMATION CONFERENCE pp.218〜224)において、論
じられている。
Means for realizing the simulation with the delay value of the element set to zero include the 25th ACM / IEE, Design Automation Conference pp.218-224 (25th., ACM / IEEE, DESIGN
AUTOMATION CONFERENCE pp.218-224).

〔発明が解決しようとする課題〕[Problems to be solved by the invention]

論理回路の論理検証を行う論理シミュレーションは、
珪酸機処理速度向上のため、素子ディレイをゼロとして
扱うクロック同期方式のシミュレーションが主流となっ
てきた。
Logic simulation for verifying the logic of a logic circuit
In order to improve the processing speed of the silicic acid machine, the simulation of the clock synchronous method which treats the element delay as zero has become mainstream.

しかし、従来の、素子ディレイをゼロとして取り扱う
論理シミュレーションでは、プリント基板間を物理的に
接続するケーブル(配線)による信号遅延が考慮されて
おらず、また、フリップフロップ間に存在する基本素子
(AND,OR,Exclusive OR)のゲート遅延時間が、信号送
出元のフリップフロップと、信号受取り先のフリップフ
ロップの動作時刻、すなわち、各フリップフロップを動
作させるためのクロック信号の間隔幅より大きい時の考
慮がなされていなかった。
However, in the conventional logic simulation that treats element delay as zero, signal delay due to a cable (wiring) that physically connects printed circuit boards is not taken into consideration, and a basic element (AND) existing between flip-flops is not considered. , OR, Exclusive OR) consideration when the gate delay time of the signal transmission source flip-flop and the signal reception destination flip-flop is larger than the operation time of the flip-flop, that is, the interval width of the clock signal for operating each flip-flop. Was not done.

そのため、ケーブル(配線)による信号伝搬遅延や、
基本素子の組み合わせ論理による信号伝搬遅延時間が、
フリップフロップのクロック信号間隔幅より大きいと
き、各フリップフロップの動作において、実際の物理的
な基本上での論理動作は、論理シミュレーションにおけ
る論理動作と異なり、矛盾が発生し、動作確認が非常に
行われない状況であった。
Therefore, signal propagation delay due to cable (wiring),
The signal propagation delay time by the combination logic of the basic elements is
If the clock signal interval width of the flip-flop is larger than the actual logical basic operation in the operation of each flip-flop, different from the logical operation in the logical simulation, inconsistency occurs, and the operation check is extremely performed. It was a situation that could not be done.

本発明の目的は、これら従来技術の課題を解決し、各
フリップフロップ間の信号伝搬時刻が、クロック信号の
間隔より大きいときでも、各フリップフロップの論理動
作に矛盾を来さないクロック同期式のゼロディレイシミ
ュレーションを実現し、論理シミュレーションの処理効
率を向上させる論理回路シミュレーション方法を提供す
ることにある。
SUMMARY OF THE INVENTION An object of the present invention is to solve these problems of the prior art, and to realize a clock synchronous type which does not contradict the logic operation of each flip-flop even when the signal propagation time between the flip-flops is larger than the clock signal interval. An object of the present invention is to provide a logic circuit simulation method for realizing a zero delay simulation and improving the processing efficiency of the logic simulation.

〔課題を解決するための手段〕[Means for solving the problem]

上記目的を達成するため、本発明の論理回路シミュレ
ーション方法は、素子ディレイをゼロとし、論理回路モ
デルのフリップフロップ入力端子のクロック信号に同期
して論理シミュレーションを行うゼロディレイクロック
同期シミュレーションにおいて、フリップフロップ間に
構成されている組み合わせ論理回路の各素子の遅延時間
および各素子間の配線による遅延時間を順次加算し、こ
の遅延時間の合計がフリップフロップ間のクロック間隔
より大きいときに、組み合わせ論理回路の素子の出力端
子につながる信号線に仮想遅延素子を挿入し、組み合わ
せ論理回路の素子および配線による遅延時間に対応する
クロック数だけ信号伝搬を送らせてシュミレートを行う
ことを特徴とする。
In order to achieve the above object, a logic circuit simulation method according to the present invention provides a flip-flop in a zero-delay clock synchronization simulation in which a logic simulation is performed in synchronization with a clock signal of a flip-flop input terminal of a logic circuit model by setting an element delay to zero. The delay time of each element of the combinational logic circuit between them and the delay time due to the wiring between the elements are sequentially added, and when the sum of the delay times is larger than the clock interval between flip-flops, A virtual delay element is inserted into a signal line connected to an output terminal of the element, and signal propagation is transmitted by the number of clocks corresponding to the delay time of the element and wiring of the combinational logic circuit to perform simulation.

〔作用〕[Action]

本発明において、ゼロディレイクロック同期シミュレ
ーションは、まず、各フリップフロップを動作させるた
めのクロック信号に同期して、フリップフロップの入力
端子の信号値から出力信号値を算出する。そして、その
出力端子に接続する組み合わせ論理(AND,OR,Exclusive
OR)の各素子について、次段のフリップフロップ入力
端子に至るまでの出力信号値を、時刻を進めることなく
順次算出する。
In the present invention, in the zero-delay clock synchronization simulation, first, an output signal value is calculated from a signal value of an input terminal of the flip-flop in synchronization with a clock signal for operating each flip-flop. Then, the combinational logic (AND, OR, Exclusive) connected to the output terminal
For each element of (OR), the output signal value up to the flip-flop input terminal of the next stage is sequentially calculated without advancing the time.

次に、フリップフロップの動作クロック間隔を越える
ディレイ値を持つ信号選 には、信号伝搬処理を遅らせる特定の素子(以下仮想遅
延素子(SDLY))と記載)を設け、この新設した仮想遅
延素子(SDLY)の入力端子に信号値が伝搬したとき、そ
の信号値を一時記憶しておく。そして、信号値の変化が
発生した時刻から、仮想遅延素子(SDLY)の持つクロッ
ク数だけ遅れた時刻に一時記憶した信号値を後段に伝搬
し、その時刻に出力値の計算を必要とする素子が無くな
った時点で時刻を1クロックだけ進めて、次のクロック
信号を起動する。
Next, for a signal selection having a delay value exceeding the operation clock interval of the flip-flop, a specific element for delaying signal propagation processing (hereinafter referred to as a virtual delay element (SDLY)) is provided, and the newly provided virtual delay element (SDLY) is provided. When a signal value propagates to the input terminal of SDLY), the signal value is temporarily stored. The signal value temporarily stored at a time delayed by the number of clocks of the virtual delay element (SDLY) from the time at which the signal value change occurs is propagated to the subsequent stage, and the element that needs to calculate the output value at that time When the time has disappeared, the time is advanced by one clock, and the next clock signal is started.

これによりSDLYを挿入した信号線の信号変化をそのデ
ィレイ値だけ遅らせたクロック起動時に後段のフリップ
フロップの入力端子に伝搬することができ、論理シミュ
レーションによるフリップフロップの動作と矛盾を防止
できる。
This allows the signal change of the signal line in which the SDLY is inserted to be propagated to the input terminal of the flip-flop at the subsequent stage when the clock is started with the delay value delayed by the delay value, thereby preventing inconsistency with the operation of the flip-flop by logic simulation.

〔実施例〕〔Example〕

以下本発明の実施例を、図面により詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

第1図は、本発明を施した論理シミュレーションの対
象となる論理回路を示す回路図である。
FIG. 1 is a circuit diagram showing a logic circuit to be subjected to a logic simulation according to the present invention.

5つのフリップフロップ101,102,105,106,107と2つ
のAND回路103,104から構成され、AND104の出力線上には
仮想遅延素子(SDLY)108が設けられている。
It comprises five flip-flops 101, 102, 105, 106, 107 and two AND circuits 103, 104, and a virtual delay element (SDLY) 108 is provided on the output line of the AND 104.

フリップフロップ101とフリップフロップ102は、クロ
ック(C0)で作動し、フリップフロップ105とフリップ
フロップ106、および、フリップフロップ107は、クロッ
ク(C1)で作動する。
The flip-flop 101 and the flip-flop 102 operate with a clock (C0), and the flip-flop 105, the flip-flop 106, and the flip-flop 107 operate with a clock (C1).

フリップフロップ101は、入力(I1)に基づきF1を出
力する。AND回路103は、F1を入力としてF1Dをフリップ
フロップ105に出力しフリップフロップ105は、F1Dを入
力としてO1を出力する。また、AND回路103の出力F1D
は、AND回路104にも入力される。
The flip-flop 101 outputs F1 based on the input (I1). The AND circuit 103 receives F1 as input and outputs F1D to the flip-flop 105, and the flip-flop 105 receives F1D as input and outputs O1. Also, the output F1D of the AND circuit 103
Is also input to the AND circuit 104.

フリップフロップ102は、入力(I2)に基づきF2を出
力する。この出力F2は、フリップフロップ107に送られ
出力O3となると共に、一方では、AND回路103の出力F1D
と共にAND回路104に入力され、AND回路104はF12を出力
する。出力F12は、仮想遅延素子(SDLY)108により、必
要サイクル遅延されてから、フリップフロップ106に入
力される。そして、フリップフロップ106は、信号O2を
出力する。
The flip-flop 102 outputs F2 based on the input (I2). The output F2 is sent to the flip-flop 107 and becomes the output O3, while the output F1D of the AND circuit 103 is output.
Is input to the AND circuit 104, and the AND circuit 104 outputs F12. The output F12 is input to the flip-flop 106 after a necessary cycle delay by the virtual delay element (SDLY) 108. Then, flip-flop 106 outputs signal O2.

第2図は、第1図の論理回路における各信号の物理的
な実際の動作タイミングを示すタイミングチャートであ
り、フリップフロップ間の素子AND回路103とAND回路104
のディレイ値を、それぞれ、10、20とした場合のもので
ある。また、この時のクロック(C0)とクロック(C1)
の間隔は20である。
FIG. 2 is a timing chart showing the actual physical operation timing of each signal in the logic circuit shown in FIG. 1, and shows an element AND circuit 103 and an AND circuit 104 between flip-flops.
Are assumed to be 10, 20 respectively. The clock (C0) and clock (C1) at this time
Is 20.

さて、フリップフロップ101の信号変化(I1からF
へ)は、AND回路103のディレイ値(10)とAND回路104の
ディレイ値(20)により、30後にF12に伝搬される。そ
のため、クロック(C2)の20後のクロック(C1)の立上
り()では、フリップフロップ106に取り込むことが
できず、1サイクルずれてしまう。すなわち、クロック
(C1)の2度目の立上り()でフリップフロップ106
に取り込まれ、フリップフロップ106は、O2を出力す
る。
Now, the signal change of the flip-flop 101 (from I1 to F
Is transmitted to F12 after 30 due to the delay value (10) of the AND circuit 103 and the delay value (20) of the AND circuit 104. Therefore, at the rising edge () of the clock (C1) 20 after the clock (C2), the clock (C1) cannot be taken into the flip-flop 106 and is shifted by one cycle. That is, at the second rising edge () of the clock (C1), the flip-flop 106
And the flip-flop 106 outputs O2.

ところが、AND回路103、104のディレイ値を0(ゼ
ロ)とみなして計算を高速に行うゼロディレイ同期シミ
ュレーションでは、信号F1の値は即ちF12に伝搬される
ため、最初のクロック(C1)の起動()で取り込まれ
てしまう。
However, in a zero-delay synchronization simulation in which the calculation is performed at high speed by regarding the delay values of the AND circuits 103 and 104 as 0 (zero), the value of the signal F1 is propagated to F12, and thus the first clock (C1) is started. () Will be captured.

しかし、第1図においては、信号(F12)の信号線上
に仮想遅延素子(SDLY)を挿入するため、上記矛盾が発
生しなくなる。
However, in FIG. 1, since the virtual delay element (SDLY) is inserted on the signal line of the signal (F12), the above contradiction does not occur.

すなわち、素子ディレイをゼロとして論理シミュレー
ションを行うゼロディレイクロック同期シミュレーショ
ンにおいて、クロック間隔を越えるディレイ値を持つ信
号線に対して信号伝搬素子を遅らせる仮想遅延素子(SD
LY)を挿入し、シミュレーション実行時には、仮想遅延
素子(SDLY)の入力端子の信号値が変化したとき、ディ
レイ値に対応するクロック数だけ遅らせて出力端子に信
号伝搬を行うようにしたものである。さらに基板間を接
続するケーブルに発生する信号遅延時間は、各素子間の
接続を示すネットリスト上にその遅延時間を設け、該当
遅延時間が、クロック間隔より大きいとき、同様に信号
線に対して仮想遅延素子(SDLY)を挿入し、遅延時間に
対応するクロック数だけ信号伝搬を遅らせることによ
り、論理シミュレーションによるフリップフロップの動
作と、物理的なフリップフロップ動作に矛盾が発生しな
くなる。
That is, in a zero-delay clock synchronization simulation in which a logic simulation is performed with the element delay set to zero, a virtual delay element (SD) that delays a signal propagation element with respect to a signal line having a delay value exceeding a clock interval.
LY) is inserted, and when the signal value of the input terminal of the virtual delay element (SDLY) changes during simulation execution, the signal is propagated to the output terminal by delaying by the number of clocks corresponding to the delay value. . Further, for the signal delay time generated in the cable connecting the boards, the delay time is provided on a netlist indicating the connection between the elements, and when the corresponding delay time is larger than the clock interval, the signal delay By inserting a virtual delay element (SDLY) and delaying signal propagation by the number of clocks corresponding to the delay time, inconsistency does not occur between the flip-flop operation by the logic simulation and the physical flip-flop operation.

第3図は、第1図の論理回路における各素子間の接続
を表すネットリストの展開図である。
FIG. 3 is a developed view of a net list representing connections between elements in the logic circuit of FIG.

リスト301は、入力信号I1のリストであり、シグナル
ポインタ(SP)フリップフロップ101のリスト3101に対
応づけられる。入力信号I1に信号変化が生じたとき、シ
グナルポインタ(SP)で示されるリスト3101に起動を掛
け、リスト3101処理時には、入力信号となるリストのフ
ァインポインタ(FIO)で示されるリストの信号値を読
み込み、素子機能を元に出力値を計算する。
The list 301 is a list of the input signals I1 and is associated with the list 3101 of the signal pointer (SP) flip-flop 101. When a signal change occurs in the input signal I1, the list 3101 indicated by the signal pointer (SP) is activated. At the time of processing the list 3101, the signal value of the list indicated by the fine pointer (FIO) of the list to be the input signal is changed. Read and calculate output value based on element function.

リスト302は、クロック信号の一覧を示し、クロック
には2種類のクロックがあり、その1つのクロック信号
C0は、もう1つのクロック信号C1と20の間隔があり、各
クロック信号のシグナルポインタ(SP)により、接続先
のフリップフロップ101のリスト3101とフリップフロッ
プ106のリスト3106と対応づけられる。
A list 302 shows a list of clock signals. There are two types of clocks, one of which is a clock signal.
C0 has an interval of another clock signal C1 and 20, and is associated with the list 3101 of the flip-flop 101 and the list 3106 of the flip-flop 106 by the signal pointer (SP) of each clock signal.

リスト303は、信号F1のリストであり、そのシグナル
ポインタ(SP)は、フリップフロップ3101のファンアウ
ト部(FOP)の位置を示し、リスト3101の信号値が変化
したとき、その信号値を読み取るためのキーとして用い
る。
The list 303 is a list of the signal F1, and its signal pointer (SP) indicates the position of the fan-out section (FOP) of the flip-flop 3101. When the signal value of the list 3101 changes, the signal value is read. Used as a key for

リスト3101は、フリップフロップ101のリストであ
り、素子の機能と値を持つ。ファンインポインタ(FI
P)の示すエリアのリストから入力となる信号I1の値と
クロック端子C0の値から素子の機能に従って値を算出
し、値を求めた後、ファンアウトポインタ(FOP)で示
されるリスト3103は、AND回路103のリストであり、リス
ト3010と同様に素子の機能と値を持ち、かつディレイ値
10を持つ。リスト3101からのイベントに基づき値を算出
し、ファンアウトポインタ(FOP)で示されるリスト310
4およびフリップフロップ105のリスト3105へイベントを
発生する。
A list 3101 is a list of the flip-flops 101 and has a function and a value of an element. Fan-in pointer (FI
From the list of areas indicated by P), a value is calculated from the value of the input signal I1 and the value of the clock terminal C0 according to the function of the element, and after calculating the value, the list 3103 indicated by the fan-out pointer (FOP) is: This is a list of the AND circuit 103, which has the function and value of the element as well as the list 3010, and the delay value.
Have ten. A value is calculated based on the event from Listing 3101, and a list 310 indicated by a fan-out pointer (FOP)
4 and an event is generated to the list 3105 of the flip-flop 105.

リスト3104は、AND回路104のリストで、リスト3103と
同様であり、ディレイ値20を持つ。リスト3103からのイ
ベントと、図示されないフリップフロップ102のリスト3
102からのイベントに基づき値を算出し、ファンアウト
ポインタ(FOP)で示されるフリッフフロップ106のリス
ト3106へイベントを発生する。
The list 3104 is a list of the AND circuits 104, and is similar to the list 3103, and has a delay value of 20. Events from Listing 3103 and Listing 3 of flip-flops 102 not shown
A value is calculated based on the event from 102, and an event is generated in the list 3106 of the flip-flop 106 indicated by the fan-out pointer (FOP).

リスト3106は、フリップフロップ106のリストであ
り、リスト3104からのイベントと、リスト302のクロッ
ク端子C0の値から素子の機能に従って値を算出し、値を
求めた後、ファンアウトポインタ(FOP)で示されるリ
スト304へ渡す。
A list 3106 is a list of the flip-flops 106. A value is calculated from the event from the list 3104 and the value of the clock terminal C0 of the list 302 in accordance with the function of the element. Pass to the list 304 shown.

リスト304は、信号O2のリストであり、そのシグナル
ポインタ(SP)は、フリップフロップ106のリスト3106
のファンアウト部(FOP)の位置を示し、リスト3106の
信号値が変化したとき、その信号値を読み取るためのキ
ーとして用いる。
The list 304 is a list of the signal O2, and the signal pointer (SP) is the list 3106 of the flip-flop 106.
Indicates the position of the fan-out section (FOP), and is used as a key for reading the signal value when the signal value in the list 3106 changes.

第4図は、第3図のネットリスクに、仮想遅延素子
(SDLY)108のリスト401を付加したことを示すネットリ
ストである。リスト3104とリスト3106の間に仮想遅延素
子(SDLY)108のリスト401を付加したことを示してい
る。すなわち、従来AND回路104から、直接ゼロディレイ
のタイミングでフリップフロップ106へ送られていた信
号F12が、ここでは、仮想遅延素子(SDLY)108を介して
送られることを示している。
FIG. 4 is a netlist showing that a list 401 of virtual delay elements (SDLY) 108 has been added to the net risk of FIG. This shows that the list 401 of the virtual delay element (SDLY) 108 is added between the list 3104 and the list 3106. That is, the signal F12, which has been sent from the AND circuit 104 to the flip-flop 106 directly at the timing of zero delay, is now sent via the virtual delay element (SDLY) 108.

第5図は、遅延テーブルを示し、仮想遅延素子(SDL
Y)を処理するためのテーブルである。リスト501のNO.
は、第4図における仮想遅延素子(SDLY)のNO.と対応
し、入力となった信号値をリスト502に転送する。遅延
テーブルのリスト501は、NO.とポインタが繰り返され
る。同一仮想遅延素子(SDLY)に対して発生した信号変
化は、リスト502からネクストポインタ(NP)にり連結
されて登録され、遅延時刻に達した時点で連結を外し、
ネットリスト上の同一NO.を持つ仮想遅延素子(SDLY)
のファンアウトポインタ(FOP)に接続されるリストす
なわちリスト3106に対しイベントを発生する。
FIG. 5 shows a delay table, in which a virtual delay element (SDL
Y) is a table for processing. List 501 NO.
Corresponds to the number of the virtual delay element (SDLY) in FIG. 4, and transfers the input signal value to the list 502. In the list 501 of the delay table, NO. And the pointer are repeated. The signal change generated for the same virtual delay element (SDLY) is linked and registered from the list 502 by the next pointer (NP), and is disconnected when the delay time is reached,
Virtual delay element (SDLY) with the same number on the netlist
An event is generated for the list connected to the fan-out pointer (FOP), that is, the list 3106.

第6図は、仮想遅延素子(SDLY)を持ち、信号伝搬時
刻がクロック間隔以上の素子のイベントテーブルであ
る。
FIG. 6 is an event table of an element having a virtual delay element (SDLY) and having a signal propagation time equal to or longer than a clock interval.

接続先と信号伝搬遅延時刻および信号値が登録され、
このテーブルに基づき、適正に遅延された動作タイミン
グが得られる。
The connection destination, signal propagation delay time and signal value are registered,
Based on this table, an appropriately delayed operation timing is obtained.

第7図は、本発明を施した論理シミュレーションの実
行動作を示すフローチャートである。
FIG. 7 is a flowchart showing the execution operation of the logic simulation according to the present invention.

第1図に示す論理回路を、物理的なフリップフロップ
の動作との矛盾を発生すること無く、シュミレートする
ものである。
The logic circuit shown in FIG. 1 is simulated without causing inconsistency with the operation of a physical flip-flop.

まず、第1図に示す論理回路の接続情報を読み込み、
各論理素子の機能をブール代数として処理可能なように
展開し、第3図に示すネットリストを作成する(ステッ
プ701)。
First, the connection information of the logic circuit shown in FIG.
The function of each logic element is developed so that it can be processed as a Boolean algebra, and a netlist shown in FIG. 3 is created (step 701).

次に、あらかじめ、シミュレーションするための入力
信号値を入力データとしてパラメータ等により指定した
内容からクロック信号の一覧を第3図の302のように作
成し、シミュレーションの時刻を初期セット、例えば0
に設定する(ステップ702)。
Next, a list of clock signals is created in advance as shown in 302 in FIG. 3 from the contents designated by parameters or the like as input data for simulation as input data, and the simulation time is set to an initial set, for example, 0.
Is set (step 702).

その後、各フリップフロップの間に存在するAND,OR等
の素子の組み合わせ論理回路のそれぞれの素子出力信号
線での遅延時間最大値を算出し、遅延時間がパラメータ
などにより指定したクロック間隔より大きい時、そのネ
ットリストの接続部分ひ仮想遅延素子(SDLY)を挿入す
る(ステップ703)。仮想遅延素子(SDLY)を挿入した
例として、第4図にネットリストの状況を示す。このよ
うに作成したネットリストを元に、シミュレーションを
実行する。
After that, the maximum delay time of each element output signal line of the combinational logic circuit of elements such as AND and OR existing between each flip-flop is calculated, and when the delay time is longer than the clock interval specified by a parameter or the like. Then, a virtual delay element (SDLY) is inserted into the connection part of the netlist (step 703). FIG. 4 shows the state of a netlist as an example of inserting a virtual delay element (SDLY). A simulation is executed based on the netlist created in this way.

シミュレーションの実行処理は、まず、あらかじめパ
ラメータ等により指定した信号変化の情報のうち、時刻
が一致するもの、もしくは、シミュレーション時刻より
信号変化情報の時刻が小さく、未だ信号入力処理を行っ
ていないものについて、指定内容と対応するネットリス
トに対して信号値を設定する(ステップ704)。この時
の信号伝搬時刻は0とする。
The execution process of the simulation is, first, of the signal change information specified in advance by a parameter or the like, for a signal whose time matches, or a signal change information whose time is smaller than the simulation time and the signal input process has not been performed yet. Then, a signal value is set for the netlist corresponding to the specified content (step 704). The signal propagation time at this time is set to 0.

シミュレーション時刻以下の全ての入力信号値を設定
した後、信号値が変化したネットリストに対し、仮想遅
延素子(SDLY)が接続されているとき、そのネットに対
する信号伝搬時刻が、クロック間隔以上であれば、第5
図における遅延テーブルの該当するSDLY番号(NO.)に
対して、信号値と遅延時刻を登録しておく(ステップ70
5、706、708)。
After setting all input signal values below the simulation time, if a virtual delay element (SDLY) is connected to the netlist whose signal value has changed, if the signal propagation time for that net is greater than or equal to the clock interval If the fifth
The signal value and the delay time are registered for the corresponding SDLY number (NO.) In the delay table in FIG.
5, 706, 708).

仮想遅延素子(SDLY)が接続されていないとき、およ
び、接続されていても信号伝搬時刻がクロック間隔より
小さいときは、ネットリストに接続される素子の出力値
を、各素子の入力信号線の信号値から計算し、その出力
値が変化したときには、素子の遅延時間を各入力信号線
の遅延時刻に加えて、後段の素子ヘイベントとして伝搬
する(ステップ707)。
When the virtual delay element (SDLY) is not connected, and when the signal propagation time is smaller than the clock interval even if it is connected, the output value of the element connected to the netlist is changed to the input signal line of each element. Calculated from the signal value, and when the output value changes, the delay time of the element is added to the delay time of each input signal line and propagated to the subsequent element as an event (step 707).

信号線の伝搬は、第6図に示すイベントテーブルに、
出力値が変化した素子の接続先と信号伝搬遅延時刻およ
び信号値をイベント(1)601または、イベント(2)6
02に登録し、ステップ709で、このイベントテーブルの
いずれかに未処理のイベントが存在するとき、出力イベ
ントテーブルと入力イベントテーブルの切り換を行い、
ステップ704で入力イベントテーブルに登録されている
素子のFOPで示されるアドレスの素子に対し、その信号
値を与えて出力値計算を行い、出力値が変化したとき、
その出力値を伝搬すべき素子のアドレスFOPと信号値、
および、入力イベントテーブルの遅延時刻に、計算を行
った素子の遅延時刻を組をえて出力イベントテーブルに
登録する。
The propagation of the signal line is shown in the event table shown in FIG.
Event (1) 601 or event (2) 6
02, and in step 709, when an unprocessed event exists in any of the event tables, the output event table and the input event table are switched.
For the element of the address indicated by the FOP of the element registered in the input event table in step 704, the output value is calculated by giving the signal value, and when the output value changes,
The address FOP of the element to which the output value should propagate and the signal value,
Further, a set of the delay time of the calculated element is registered in the output event table with the delay time of the input event table.

このステップ704からステップ709の繰返しにより、同
一シミュレーション時刻内の信号変化を全て計算した
後、シミュレーション時刻と一致するクロック信号を起
動し(ステップ710)、起動したクロックに接続される
フリップフロップの出力値を計算する(ステップ71
1)。
After calculating all signal changes within the same simulation time by repeating steps 704 to 709, a clock signal that matches the simulation time is activated (step 710), and the output value of the flip-flop connected to the activated clock (Step 71
1).

クロックに接続される全てのフリップフロップの出力
計算を終えた後、第5図に示す遅延テーブルに登録して
ある各SDLYの遅延時刻を取りだし、シミュレーション時
刻以下のものについて、その信号値を対応するSDLYの出
力値伝搬先へ伝搬する(ステップ712)。
After the output calculations of all flip-flops connected to the clock are completed, the delay time of each SDLY registered in the delay table shown in FIG. 5 is extracted, and the signal values corresponding to those below the simulation time are corresponded. The output value of the SDLY is propagated to the destination (step 712).

全てのSDLYについて信号出似搬を行った後、シミュレ
ーション時刻にクロック間隔を加えた時刻を新たなシミ
ュレーション時刻として登録を行い(ステップ713)、
その時刻があらかじめパラメータ等で与えられたスミレ
ーション終了時刻に達するまで、ステップ704からの処
理を繰り返す(ステップ714)。シミュレーション終了
時刻となったとき、そのシミュレーション結果をリスト
等に出力し、シミュレーションを終える(ステップ71
5)。
After carrying out signal transfer for all SDLYs, the time obtained by adding the clock interval to the simulation time is registered as a new simulation time (step 713),
The processing from step 704 is repeated until the time reaches the simulation end time given in advance by parameters or the like (step 714). When the simulation end time comes, the simulation result is output to a list or the like, and the simulation ends (step 71).
Five).

このように、本実施例によれば、第1図における信号
F12の信号線上に遅延素子を挿入するため、上記矛盾が
発生しなくなる。
Thus, according to the present embodiment, the signal in FIG.
Since the delay element is inserted on the signal line of F12, the above contradiction does not occur.

また、基板間に存在するケーブル等に関しても、その
ケーブルに長に従った遅延時刻をネットリスト上に挿入
することにより、物理的な動作をシミュレーションで実
現する。
Also, regarding a cable or the like existing between boards, a physical operation is realized by simulation by inserting a delay time according to the length of the cable into the netlist.

このように、本実施例によれば、各フリップフロップ
間の信号伝搬時刻がクロック信号の間隔より大きいとき
でも、各フリップフロップの論理動作に矛盾を帰さない
素子ディレイをゼロとした論理シミュレーションを行う
ことができ、組み合わせ論理の信号伝搬遅延をクロック
同期式のゼロディレイシミュレーションで取り扱うこと
が可能となる。
As described above, according to the present embodiment, even when the signal propagation time between the flip-flops is greater than the clock signal interval, a logic simulation is performed with zero element delay that does not contradict the logic operation of each flip-flop. Thus, the signal propagation delay of the combinational logic can be handled by a clock-synchronized zero-delay simulation.

そして、クロック間隔以上の遅延時間を持つ回路にお
いて、各論理素子の遅延時間ぽクロックと同期させてシ
ミュレーションを行うことができるので、ゲート遅延時
間の最小単位、例えば、1nsごとに発生する信号変化を
算出する場合、1ns単位でシミュレーション時刻を更新
する必要があるときの処理ステップ数が、同一クロック
内の信号変化の計算を行うだけで済み、処理時間が大幅
に削減できる。また、ゼロディレイクロック同期シミュ
レーションで配線ディレイ、ケーブルディレイ等も容易
に扱うことができる。
Then, in a circuit having a delay time equal to or longer than the clock interval, simulation can be performed in synchronization with the delay time of each logic element divided by the clock, so that a signal change that occurs every minimum unit of the gate delay time, for example, every 1 ns, When calculating, the number of processing steps when it is necessary to update the simulation time in 1 ns unit only needs to calculate the signal change within the same clock, and the processing time can be greatly reduced. In addition, wiring delays, cable delays, and the like can be easily handled in the zero delay clock synchronization simulation.

〔発明の効果〕〔The invention's effect〕

本発明によれば、各フリップフロップ間の信号伝搬時
刻が、クロック信号の間隔より大きいときでも、各フリ
ップフロップの論理動作に矛盾を来さないクロック同期
式のゼロディレイシミュレーションが実現でき、論理シ
ミュレーションの処理効率を向上させることができる。
According to the present invention, even when the signal propagation time between the flip-flops is larger than the clock signal interval, a clock-synchronous zero-delay simulation that does not contradict the logic operation of each flip-flop can be realized. Processing efficiency can be improved.

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

図面は本発明の実施例を示し、第1図は本発明を施した
論理シミュレーションの対象となる論理回路を示す回路
図、第2図は第1図における論理回路の各信号の実際の
動作タイミングを示すタイミングチャート、第3図は第
1図における論理回路の各素子間の接続を表すネットリ
ストの展開図、第4図は第3図におけるネットリストに
仮想遅延素子(SDLY)を付加したことを示すネットリス
トの展開図、第5図は第1図における仮想遅延素子(SD
LY)を処理するための遅延テーブルを示す展開図、第6
図は仮想遅延素子(SDLY)を持ち信号伝搬時刻がクロッ
ク間隔以上の素子のイベントテーブルを示す展開図、第
7図は本発明を施した論理シミュレーションの動作を示
すフローチャートである。 101,102:フリップフロップ,103,104:AND回路,105〜107:
フリップフロップ,108:仮想遅延素子(SDLY),301:入力
信号I1のリスト,302:クロック信号の一覧リスト,303:信
号F1のリスト,304:信号O2のリスト,401:仮想遅延素子
(SDLY)のリスト,501〜503:遅延テーブルのリスト,60
1:イベントテーブル(1),602:イベントテーブル
(2),3101:フリップフロップ(101)のリスト,3103:A
ND回路(103)のリスト,3104:AND回路(104)のリスト,
3105:フリップフロップ(105)のリスト,3106:フリップ
フロップ(106)のリスト。
1 shows an embodiment of the present invention, FIG. 1 is a circuit diagram showing a logic circuit to be subjected to a logic simulation according to the present invention, and FIG. 2 is an actual operation timing of each signal of the logic circuit in FIG. FIG. 3 is a development view of a net list showing connections between respective elements of the logic circuit in FIG. 1, and FIG. 4 shows that a virtual delay element (SDLY) is added to the net list in FIG. FIG. 5 is a virtual delay element (SD) shown in FIG.
LY), a development view showing a delay table for processing
FIG. 7 is a development view showing an event table of an element having a virtual delay element (SDLY) and having a signal propagation time equal to or longer than a clock interval. FIG. 7 is a flowchart showing an operation of a logic simulation according to the present invention. 101, 102: flip-flop, 103, 104: AND circuit, 105-107:
Flip-flop, 108: virtual delay element (SDLY), 301: list of input signals I1, 302: list of clock signals, 303: list of signal F1, 304: list of signal O2, 401: virtual delay element (SDLY) List, 501-503: delay table list, 60
1: Event table (1), 602: Event table (2), 3101: Flip-flop (101) list, 3103: A
List of ND circuits (103), 3104: List of AND circuits (104),
3105: list of flip-flops (105), 3106: list of flip-flops (106).

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】素子ディレイをゼロとし、論理回路モデル
のフリップフロップ入力端子のクロック信号に同期して
論理シミュレーションを行うゼロディレイクロック同期
シミュレーションにおいて、上記フリップフロップ間に
構成されている組み合わせ論理回路の各素子の遅延時間
および各素子間の配線による遅延時間を順次加算し、該
遅延時間の合計が上記フリップフロップ間のクロック間
隔より大きいときに、上記組み合わせ論理回路の素子の
出力端子につながる信号線に仮想遅延素子を挿入し、上
記組み合わせ論理回路の素子および配線による遅延時間
に対応するクロック数だけ信号伝搬を遅らせてシュミレ
ートを行うことを特徴とする論理回路シミュレーション
方法。
In a zero-delay clock synchronization simulation for performing a logic simulation in synchronism with a clock signal at a flip-flop input terminal of a logic circuit model, an element delay is set to zero. A signal line connected to an output terminal of an element of the combinational logic circuit when the delay time of each element and the delay time due to wiring between the elements are sequentially added, and when the total of the delay times is larger than the clock interval between the flip-flops. A logic circuit simulation method, wherein a virtual delay element is inserted into the logic circuit and the simulation is performed by delaying signal propagation by the number of clocks corresponding to the delay time due to the element and wiring of the combinational logic circuit.
JP1235668A 1989-09-13 1989-09-13 Logic circuit simulation method Expired - Fee Related JP2845978B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1235668A JP2845978B2 (en) 1989-09-13 1989-09-13 Logic circuit simulation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1235668A JP2845978B2 (en) 1989-09-13 1989-09-13 Logic circuit simulation method

Publications (2)

Publication Number Publication Date
JPH0399372A JPH0399372A (en) 1991-04-24
JP2845978B2 true JP2845978B2 (en) 1999-01-13

Family

ID=16989432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1235668A Expired - Fee Related JP2845978B2 (en) 1989-09-13 1989-09-13 Logic circuit simulation method

Country Status (1)

Country Link
JP (1) JP2845978B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5751998B2 (en) 2010-09-29 2015-07-22 ユニ・チャーム株式会社 State quantity distribution measuring apparatus and method for measuring state quantity distribution of sample

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
特開 昭60−173484JP,A)

Also Published As

Publication number Publication date
JPH0399372A (en) 1991-04-24

Similar Documents

Publication Publication Date Title
US8122404B2 (en) Performing a statistical timing abstraction for a hierarchical timing analysis of VLSI circuits
US6353906B1 (en) Testing synchronization circuitry using digital simulation
US6622290B1 (en) Timing verification method employing dynamic abstraction in core/shell partitioning
JP3851357B2 (en) Timing characteristic extraction method for transistor circuit, storage medium storing timing characteristic library, LSI design method, and gate extraction method
JP2993239B2 (en) Delay distribution method between layers
US7254793B2 (en) Latch modeling technique for formal verification
US5903577A (en) Method and apparatus for analyzing digital circuits
Osler Placement driven synthesis case studies on two sets of two chips: hierarchical and flat
JP2845978B2 (en) Logic circuit simulation method
US20040015789A1 (en) Delay optimization designing system and delay optimization designing method for a logic circuit and control program
US7159199B2 (en) Method for verifying adequate synchronization of signals that cross clock environments and system
US6701498B2 (en) Black box timing model for latch-based systems
US20080069277A1 (en) Method and apparatus for modeling signal delays in a metastability protection circuit
US6170072B1 (en) Logic circuit verification apparatus and method for semiconductor integrated circuit
JPH04227576A (en) Method for providing synchronous operation of sequence logic circuit and digital logic circuit
US8438518B2 (en) Apparatus for designing semiconductor integrated circuit, method of designing semiconductor integrated circuit, and program for designing semiconductor integrated circuit
JP2937139B2 (en) Logic circuit delay verification method
JP3340283B2 (en) Hazard simulation device for logic circuits
JP2845154B2 (en) How to create a logic simulation model
JP2953384B2 (en) Clock tree forming method for semiconductor integrated circuit
Cerny et al. Gate-level timing verification using waveform narrowing
JP3123982B2 (en) Logic simulation method
JP4209010B2 (en) Clock optimization device
JP3237991B2 (en) Path constraint generation method
JP2002083007A (en) Device and method for verifying logic of event-driven simulator

Legal Events

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

Free format text: PAYMENT UNTIL: 20071030

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081030

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees