JPH0581367A - Logic simulator - Google Patents

Logic simulator

Info

Publication number
JPH0581367A
JPH0581367A JP3242981A JP24298191A JPH0581367A JP H0581367 A JPH0581367 A JP H0581367A JP 3242981 A JP3242981 A JP 3242981A JP 24298191 A JP24298191 A JP 24298191A JP H0581367 A JPH0581367 A JP H0581367A
Authority
JP
Japan
Prior art keywords
logic
simulation
gate
stored
unit delay
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP3242981A
Other languages
Japanese (ja)
Inventor
Yoshihiro Kimura
義弘 木村
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3242981A priority Critical patent/JPH0581367A/en
Publication of JPH0581367A publication Critical patent/JPH0581367A/en
Withdrawn legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE:To detect an error of a logic circuit by giving a uniform unit delay to a logical gate, inputting a clock and executing a simulation for a period of a prescribed number of unit delays, and thereafter, checking each logical value. CONSTITUTION:A logical value of each logical gate after executing a simulation for a period of N unit delays is stored in a first memory means (6). Subsequently, a logical value of each logical gate after executing a simulation for a period of N+M unit delays is stored in a second memory means (8). Next, by comparing each contents stored in a first and a second memory means by a comparing means (9), equality or inequality of each logical value after executing the simulation for a periods of N and N+M unit delays is checked. As a result, if there is a logical gate in which two logical values after the N and N+M unit delay periods, its logical gate is considered to be oscillated, and the simulation is stopped (10).

Description

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

【0001】[0001]

【産業上の利用分野】本発明は各種の論理回路の設計品
質を向上するために使用される論理シミュレータに関
し、特に、シミュレーションの対象となる論理ゲートの
論理値が安定しない場合の検出方式および、論理シミュ
レーションのテストカバレージに関する情報の収集方式
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a logic simulator used to improve the design quality of various logic circuits, and more particularly to a detection method when the logic value of a logic gate to be simulated is not stable, and The present invention relates to a method of collecting information about test coverage of logic simulation.

【0002】論理シミュレーションは、論理回路の各ゲ
ートの入力および出力データを所定時間経過毎に収集す
ることにより、各時点での入力と出力の静的関係および
時間軸上における入出力関係の動的変化の両方に関する
情報を取得し、それによって論理回路の設計の正しさを
検証すると共に、不具合な点を抽出するものである。
The logic simulation collects the input and output data of each gate of the logic circuit at a predetermined time interval so that the static relationship between the input and output at each time and the dynamic relationship between the input and output on the time axis. Information on both of the changes is acquired, and the correctness of the design of the logic circuit is verified and the defective point is extracted.

【0003】論理シミュレータによるシミュレーション
は、シミュレーションの対象となる論理回路を論理的に
等価に記述したシミュレーションモデルを用いて行われ
る。シミュレーションはシミュレーションモデルに外部
入力等の初期条件を与えることによって開始し、所定の
シミュレーション環境の下で所定の時間毎の各論理ゲー
トの入出力の論理値を論理シミュレータから出力(表
示、印刷等)させることによって行われる。
The simulation by the logic simulator is performed by using a simulation model in which a logic circuit to be simulated is described logically equivalently. The simulation starts by giving initial conditions such as external inputs to the simulation model, and outputs the logical value of the input and output of each logic gate at a predetermined time interval from the logic simulator (display, print, etc.) under a predetermined simulation environment. It is done by letting.

【0004】各時刻毎の論理シミュレータからの出力情
報によって設計ミスが検出された場合にはその時点で論
理シミュレーションは停止される。
When a design error is detected by the output information from the logic simulator at each time, the logic simulation is stopped at that time.

【0005】近年その使用目的によって少しずつ機能が
違う論理シミュレータが開発されてきている。例えば各
論理ゲートにユニットディレイを均一に与えて論理シミ
ュレーションを実行する論理シミュレータ等がある。こ
のような論理シミュレータはシミュレーションの実行中
論理値が安定しないゲートがあっても一定時間経った時
点(クロック周期の時間)の論理値によって設計ミスが
検出されなければ論理シミュレーションを続行する。
In recent years, logic simulators having different functions little by little depending on the purpose of use have been developed. For example, there is a logic simulator or the like that executes a logic simulation by uniformly giving a unit delay to each logic gate. Such a logic simulator continues the logic simulation even if there is a gate whose logic value is not stable during the execution of the simulation unless a design error is detected by the logic value at a time point (clock cycle time) after a certain period of time.

【0006】このような論理シミュレータはシミュレー
ション対象となる論理ゲートがユニットディレイで表現
できる場合には問題はないが、各論理ゲートがユニット
ディレイで表わせないような論理回路をシミュレーショ
ンするような場合は論理値が安定しないまま論理シミュ
レーションを続行しても、実際の回路とはかなり違った
動作となってしまうので、それ以降のシミュレーション
結果は全く意味のないものになってしまう。
Such a logic simulator has no problem if the logic gate to be simulated can be represented by a unit delay, but if the logic gate simulates a logic circuit in which each logic gate cannot be represented by a unit delay. Even if the logic simulation is continued while the values are not stable, the operation will be quite different from the actual circuit, and the subsequent simulation results will be meaningless at all.

【0007】また、近年の半導体技術の進歩により、1
チップのICに数万−数十万ゲートもの回路が集積され
るようになり、その中に含まれる回路も複雑になってき
た。そのため、論理回路の全ての素子のあらゆる時点に
おける動作をシミュレーションすることは困難となり、
そのため、シミュレーション項目を限定してシミュレー
ションを行わざる得なくなってきた。
Due to the recent progress in semiconductor technology,
Circuits with tens of thousands to hundreds of thousands of gates have been integrated in chip ICs, and the circuits included therein have become complicated. Therefore, it becomes difficult to simulate the operation of all the elements of the logic circuit at any time,
For this reason, it has become unavoidable to limit the simulation items to perform the simulation.

【0008】その際シミュレーションによって把握可能
な範囲、即ちテストカバレージを知る必要があるが、論
理シミュレーション項目も以前とは比較にならない程多
くなり、設計者がそのシミュレーション項目の全てを管
理できなくなり、従ってテストカバレージの正確な把握
も難しくなって来ている。
At this time, it is necessary to know the range that can be grasped by the simulation, that is, the test coverage, but the number of logical simulation items is so large that it cannot be compared with the previous one, and the designer cannot manage all the simulation items. Accurate understanding of test coverage is becoming difficult.

【0009】[0009]

【従来の技術】論理値が安定しない論理ゲートの検出に
関して、従来は、上記のような、各論理ゲートにユニッ
トディレイを均一に与える論理シミュレータを使用して
シミュレーションする場合と特別に論理シミュレータを
開発あるいは購入して使用する場合とがあった。
2. Description of the Related Art Regarding the detection of a logic gate whose logic value is not stable, conventionally, a logic simulator is specially developed and a case where a logic simulator which uniformly gives a unit delay to each logic gate is used for simulation. Or there was a case where it was purchased and used.

【0010】上記のような論理シミュレータを使用して
シミュレーションを実行した場合、論理回路が発振する
と、論理値が安定しない。従来はこの安定していない論
理値を次のシミュレーションの入力データとして使用
し、シミュレーションを続行していたので、シミュレー
ションの結果が論理回路の誤りを検出していても、その
原因が発振であることまで追及することは大変困難であ
り、最悪の場合は、発振しているにもかかわらず、論理
回路の誤りを検出できないという問題があった。
When a simulation is executed using the above logic simulator, the logic value oscillates and the logic value is not stable. In the past, this unstable logic value was used as the input data for the next simulation, and the simulation was continued. Therefore, even if the simulation result detects an error in the logic circuit, the cause should be oscillation. It is very difficult to pursue up to, and in the worst case, there is a problem that an error in the logic circuit cannot be detected despite the oscillation.

【0011】一方、シミュレーションの対象となる回路
毎にシミュレータを購入あるいは開発していたのでは費
用が増加し、シミュレーションによる効果が少なくなっ
てしまう。従って、特殊な機能を持つ論理シミュレータ
であっても、汎用性のある論理シミュレータとしての機
能も要求されている。
On the other hand, if a simulator is purchased or developed for each circuit to be simulated, the cost will increase and the effect of the simulation will decrease. Therefore, even a logic simulator having a special function is required to have a function as a versatile logic simulator.

【0012】テストカバレージについては、従来、論理
シミュレーションを行う場合、設計者が必要な論理シミ
ュレーション項目を挙げ、それに従って論理シミュレー
ションが行われていた。論理シミュレーションのテスト
カバレージに関する情報は特に収集せず、論理シミュレ
ーションの項目からテストカバレージを推測、判断して
いた。従って、論理シミュレーションを行ったつもりで
も、実際は行われていなかったり、論理シミュレーショ
ンの項目が抜けていたりして、設計品質が向上しないと
いう問題を有していた。
Regarding the test coverage, conventionally, when performing a logic simulation, the designer listed up the necessary logic simulation items, and the logic simulation was performed according to the items. Information about the test coverage of the logic simulation was not collected, but the test coverage was estimated and judged from the items of the logic simulation. Therefore, there is a problem in that the design quality cannot be improved because the logic simulation is not actually performed even if the logic simulation is intended, or the items of the logic simulation are omitted.

【0013】[0013]

【発明が解決しようとする課題】第1に、従来の、論理
回路の各ゲートに均一にユニットディレイを与えてシミ
ュレーションを行う論理シミュレータにおいて、各シミ
ュレーション実行時点での各ゲートの論理値のみによっ
て判断が行われていたので、発振している論理回路を検
出することが困難であった。
First, in a conventional logic simulator for performing simulation by uniformly giving a unit delay to each gate of a logic circuit, judgment is made only by the logic value of each gate at the time of executing each simulation. However, it was difficult to detect the oscillating logic circuit.

【0014】第2に、従来の論理シミュレーションにお
いては、論理シミュレーションのテストカバレージに関
する情報を収集せずテストカバレージを推測して論理シ
ミュレーションを行っていたため、論理シミュレーショ
ン項目に抜けが起こる等設計品質を低下させる一因とな
っていた。
Second, in the conventional logic simulation, since the logic simulation is performed by estimating the test coverage without collecting the information about the test coverage of the logic simulation, the design quality is deteriorated due to omission of logic simulation items. It was one of the causes.

【0015】本発明は、上記従来の技術の欠点を除去
し、発振する論理回路を容易に検出することができると
共に、容易にテストカバレージを把握することができる
論理シミュレータを提供することを目的とする。
It is an object of the present invention to eliminate the above-mentioned drawbacks of the prior art, and to provide a logic simulator capable of easily detecting an oscillating logic circuit and easily grasping test coverage. To do.

【0016】[0016]

【課題を解決するための手段】本発明による論理シミュ
レータは、シミュレーション対象となる論理ゲートに均
一なユニットディレイを与え、シミュレーションの実行
によってクロック信号の入力とクロック信号の入力によ
って起こる論理ゲートの論理値の更新を所定数のユニッ
トディレイの期間だけ行うような論理シミュレータであ
って、N(Nは自然数)ユニットディレイの期間シミュ
レーションを実行した後、各論理ゲートの論理値を記憶
する第一のメモリ手段と、N+M(Mは自然数)ユニッ
トディレイの期間シミュレーションを実行した後、各論
理ゲートの論理値を記憶する第二のメモリ手段と、第一
および第二のメモリ手段によって記憶された各論理ゲー
トの論理値を比較する手段と、Nユニットディレイの期
間シミュレーションを実行し、その結果を第一のメモリ
手段に格納し、つぎにN+Mユニットディレイの期間シ
ミュレーションを実行し、その結果を第二のメモリ手段
に格納し、第一および第二のメモリ手段に格納された各
論理ゲートの論理値を比較手段によって比較し、その結
果、少なくとも1カ所以上の論理ゲートにおいて論理値
の不一致を検出したならば、論理シミュレータの実行を
停止するように制御する手段を備えて構成される。
A logic simulator according to the present invention gives a uniform unit delay to a logic gate to be simulated and executes a simulation to input a clock signal and a logic value of the logic gate caused by the input of the clock signal. Is a logic simulator for performing the update for a period of a predetermined number of unit delays, and a first memory means for storing the logic value of each logic gate after executing the simulation for the period of N (N is a natural number) unit delays. And a second memory means for storing the logic value of each logic gate after performing a simulation of N + M (M is a natural number) unit delay, and each logic gate stored by the first and second memory means. Means for comparing logical values and N unit delay period simulation And store the result in the first memory means, then execute the simulation for the period of N + M unit delays, store the result in the second memory means, and store in the first and second memory means. The comparison means compares the logic values of the respective logic gates, and as a result, if at least one logic gate detects a mismatch of the logic values, it comprises means for controlling to stop the execution of the logic simulator. Consists of

【0017】更に、本発明による論理シミュレータは、
入力データに従って論理回路の故障シミュレーションを
実行し論理回路の仮定故障を検出する第一の手段と、前
記論理回路の全ての仮定故障を検出し、蓄積する第二の
手段と、第一の手段により検出された仮定故障を蓄積す
る第三の手段と、第二および第三の手段によって蓄積さ
れた情報を比較する手段と、第二の手段に蓄積された全
ての仮定故障と、論理回路を第一の手段によって入力デ
ータに基づき論理シミュレーションした結果検出された
仮定故障とを比較手段によって比較した結果により、論
理シミュレーションのテストカバレージに関する情報を
収集する手段とを備えて構成される。
Further, the logic simulator according to the present invention is
The first means for executing a failure simulation of a logic circuit according to input data to detect a hypothetical failure of the logic circuit, a second means for detecting and accumulating all the hypothetical failures of the logic circuit, and a first means. A third means for accumulating the detected contingencies, a means for comparing the information accumulated by the second and the third means, all contingencies accumulated in the second means, and a logic circuit And a means for collecting information on the test coverage of the logic simulation based on the result of comparison by the comparing means with the assumed fault detected as a result of the logic simulation based on the input data by the one means.

【0018】[0018]

【作用】上記構成による論理シミュレータは、シミュレ
ーションの対象となる論理ゲートに均一なユニットディ
レイを与え、クロックを入力して、所定数のユニットデ
ィレイの期間シミュレーションを実行した後各論理ゲー
トの論理値を調べる。
In the logic simulator having the above-described configuration, a uniform unit delay is given to the logic gate to be simulated, a clock is input, the simulation is executed for a predetermined number of unit delays, and then the logic value of each logic gate is calculated. Find out.

【0019】まずNユニットディレイの期間シミュレー
ションを実行した後における各論理ゲートの論理値を第
一のメモリ手段に格納する。つぎにN+Mユニットディ
レイの期間シミュレーションを実行した後における各論
理ゲートの論理値を第二のメモリ手段に格納する。
First, the logic value of each logic gate after the N unit delay period simulation is executed is stored in the first memory means. Next, the logic value of each logic gate after the simulation of N + M unit delay period is executed is stored in the second memory means.

【0020】第一および第二のメモリ手段に格納された
各内容を比較手段で比較することにより、各論理ゲート
毎にNおよびN+Mユニットディレイの期間シミュレー
ション実行後の各論理値の一致不一致を調べる。
By comparing the respective contents stored in the first and second memory means with the comparing means, it is checked for each logic gate whether or not the respective logic values coincide with each other after the N and N + M unit delay period simulation is executed. ..

【0021】その結果、NおよびN+Mユニットディレ
イ期間後の二つの論理値が異なる論理ゲートがあれば、
その論理ゲートは発振していると見なされ、それ以上シ
ミュレーションを続行しても無駄であるのでシミュレー
ションを停止する。
As a result, if there are two logic gates having different logic values after the N and N + M unit delay periods,
The logic gate is considered to be oscillating, and further simulation is useless, so the simulation is stopped.

【0022】また、上記構成による論理シミュレータ
は、第一の手段により入力データに基づき論理回路の故
障シミュレーションを実行して仮定故障を検出し、第三
の手段に格納する。一方、第二の手段によって、全仮定
故障を検出してそれを格納する。
In the logic simulator having the above-mentioned structure, the first means executes the failure simulation of the logic circuit based on the input data to detect the hypothetical failure, and stores it in the third means. On the other hand, the second means detects all contingencies and stores them.

【0023】第三の手段に格納された実際に得られた仮
定故障と、第二の手段に格納された全仮定故障とを比較
することにより、論理シミュレーションによって検出さ
れる故障の範囲が得られる。この範囲とはすなわち論理
シミュレーションのテストカバレージである。
By comparing the actually obtained contingencies stored in the third means with the total contingencies stored in the second means, the range of the faults detected by the logic simulation is obtained. .. This range is the test coverage of the logic simulation.

【0024】[0024]

【実施例】本発明の実施例について詳細に説明する。図
1は本発明による論理シミュレータの一実施例の動作を
示すフローチャート、図2はこの論理シミュレータのメ
モリ50のメモリマップである。
EXAMPLES Examples of the present invention will be described in detail. FIG. 1 is a flow chart showing the operation of an embodiment of a logic simulator according to the present invention, and FIG. 2 is a memory map of a memory 50 of this logic simulator.

【0025】論理シミュレーションの実行順序を図1の
フローチャートに沿って説明する。 (1)シミュレーションモデルをメモリ領域(以後#で
示す)1に格納する。 (2)各論理ゲートに対応したシミュレーションモデル
の論理値を記憶する#2,#3,#4を確保する。
The execution sequence of the logic simulation will be described with reference to the flowchart of FIG. (1) The simulation model is stored in the memory area (hereinafter indicated by #) 1. (2) Reserve # 2, # 3, and # 4 for storing the logic values of the simulation model corresponding to each logic gate.

【0026】(3)シミュレーション実行時の環境を#
0に格納する、ここでいうシミュレーション環境とはク
ロック信号の波形やシミュレーション実行時間、シミュ
レーション最大クロック数等である、ここでは図4の
(a)および(b)のようなクロック信号を入力する。
またシミュレーション実行時間はユニットディレイ単位
で示す。 (4)シミュレーション実行に先立ち、外部入力、内部
メモリ等に、論理値を設定する。これらの設定は#2の
中の対応する外部入力、内部メモリ等の各メモリ位置に
論理値を書き込むことによって行われる。
(3) Set the environment for executing the simulation #
The simulation environment referred to here, which is stored in 0, is the waveform of the clock signal, the simulation execution time, the maximum number of simulation clocks, and the like. Here, the clock signals as shown in FIGS. 4A and 4B are input.
The simulation execution time is shown in unit delay units. (4) Prior to executing the simulation, a logical value is set in an external input, an internal memory or the like. These settings are made by writing a logical value to each memory location, such as the corresponding external input, internal memory in # 2.

【0027】(5)#2の論理値と#1のシミュレーシ
ョンモデルと#0のクロック信号とによってシミュレー
ションを実行する。クロック信号の入力とともにNユニ
ットディレイまで各論理ゲートの論理値を更新する。 (6)Nユニットディレイだけ各論理ゲートの論理値を
更新したならば、その時の論理値を#3に格納する。
(5) The simulation is executed with the logical value of # 2, the simulation model of # 1 and the clock signal of # 0. The logic value of each logic gate is updated up to N unit delays with the input of the clock signal. (6) If the logical value of each logical gate is updated by N unit delays, the logical value at that time is stored in # 3.

【0028】(7)#2の論理値と#1のシミュレーシ
ョンモデルと#0のクロック信号からシミュレーション
の実行を行う。クロック信号の入力とともにN+Mユニ
ットディレイまで各論理ゲートの論理値を更新する。 (8)N+Mユニットディレイだけ各論理ゲートの論理
値を更新したならば、その時の論理値を#4に格納す
る。
(7) The simulation is executed from the logical value of # 2, the simulation model of # 1, and the clock signal of # 0. The logic value of each logic gate is updated up to N + M unit delays with the input of the clock signal. (8) If the logical value of each logical gate is updated by N + M unit delays, the logical value at that time is stored in # 4.

【0029】(9)各論理ゲートの論理値をメモリ#
3,#4から読み出して、それぞれの値を比較する。 (10)比較した結果、一つでも論理値の違う論理ゲー
トが存在したら、その論理ゲートが安定していないと判
断し、シミュレーションの実行を停止する。
(9) The logic value of each logic gate is stored in the memory #
Read from 3 and # 4, and compare the respective values. (10) As a result of the comparison, if there is at least one logic gate having a different logic value, it is determined that the logic gate is not stable, and the execution of the simulation is stopped.

【0030】(11)すべての論理ゲートにおいて論理
値が一致したならば、論理ゲートが安定していると判断
し、#3の論理値を#2へ移動し、再びシミュレーショ
ンの実行を行う。 (12)最大クロック数まで上記(5)〜(11)を繰
返す。
(11) If the logic values of all the logic gates match, it is judged that the logic gates are stable, the logic value of # 3 is moved to # 2, and the simulation is executed again. (12) The above (5) to (11) are repeated up to the maximum number of clocks.

【0031】図3はシミュレーションの対象となる論理
回路の一例を示す。図3において、51,52、および
53はインバータである。インバータ51,52,53
は縦続接続されており、インバータ51の入力端子とイ
ンバータ53の出力端子とは接続されている。
FIG. 3 shows an example of a logic circuit to be simulated. In FIG. 3, 51, 52, and 53 are inverters. Inverters 51, 52, 53
Are connected in cascade, and the input terminal of the inverter 51 and the output terminal of the inverter 53 are connected.

【0032】図4は#0に格納されるクロック信号波形
を示す。点線は各論理ゲートの論理値を更新する時点を
示す。隣接する時点間は1ユニットディレイである。
FIG. 4 shows the clock signal waveform stored in # 0. The dotted line indicates the time when the logic value of each logic gate is updated. There is one unit delay between adjacent time points.

【0033】図5は図3の回路に対して値の変化がない
信号Xを入力し、各インバータ51,52,53にそれ
ぞれ1ユニットディレイの遅れを与えた場合のインバー
タ51,52および53の各出力信号波形P,Qおよび
Rを示す。
FIG. 5 shows the inverters 51, 52 and 53 when a signal X having no change in value is input to the circuit of FIG. 3 and each inverter 51, 52, 53 is delayed by one unit delay. Each output signal waveform P, Q and R is shown.

【0034】図4の回路に関する論理シミュレーション
について、前述のフローチャートに沿って説明する。 (1)#1に格納するシミュレーションモデルは図3の
論理回路の各点における信号X,P,Q,R,およびY
の論理表現であり、例えば、PはXの反転、QはPの反
転、RはQの反転、YはRの反転であってかつXと同一
である。等を記載したものである。
The logic simulation of the circuit of FIG. 4 will be described with reference to the above-mentioned flowchart. (1) The simulation model stored in # 1 is the signals X, P, Q, R, and Y at each point of the logic circuit of FIG.
And P is an inversion of X, Q is an inversion of P, R is an inversion of Q, Y is an inversion of R, and is the same as X. Etc. are described.

【0035】(2)信号値X,P,Q,R,Yのそれぞ
れの、現在、Nユニットディレイ経過後、およびN+M
ユニットディレイ経過後の論理値を格納するためのメモ
リスペースを#2,#3および#4に定義する。
(2) For each of the signal values X, P, Q, R, Y, at present, after N unit delay has elapsed, and N + M
Memory spaces for storing logical values after the unit delay has elapsed are defined as # 2, # 3 and # 4.

【0036】(3)シミュレーション環境を#0に定義
する。クロック信号として図4の信号(a)および
(b)のような波形を、シミュレーション実行時間とし
て45および46ユニットディレイ(N=45、M=
1)を設定する。
(3) The simulation environment is defined as # 0. Waveforms such as the signals (a) and (b) in FIG. 4 are used as clock signals, and 45 and 46 unit delays (N = 45, M =
Set 1).

【0037】(4)外部入力X=1を#2のX欄に記載
する。 (5)上記シミュレーションモデルと、クロック信号
と、外部入力Xとによってシミュレーションを実行し、
P,Q,R,Yの論理値を45ユニットディレイまで更
新する。 (6)45ユニットディレイまで各論理値を更新した
ら、その時点での各論理値を#3に格納する。
(4) Describe the external input X = 1 in the X column of # 2. (5) The simulation is executed by the simulation model, the clock signal, and the external input X,
The logical values of P, Q, R and Y are updated up to 45 unit delay. (6) After updating each logical value up to 45 unit delay, each logical value at that time is stored in # 3.

【0038】(7)上記シミュレーションモデルと、ク
ロック信号と、外部入力Xとによってシミュレーション
を実行し、P,Q,Rの論理値を46ユニットディレイ
まで更新する。 (8)46ユニットディレイまで各論理値を更新した
ら、その時点での各論理値を#4に格納する。
(7) The simulation is executed with the simulation model, the clock signal, and the external input X, and the logical values of P, Q, and R are updated to 46 unit delays. (8) After updating each logical value up to 46 unit delay, each logical value at that time is stored in # 4.

【0039】(9)#3および#4に格納されたP,
Q,Rの各論理値を読み出し、各論理値について45ユ
ニットディレイ経過時と46ユニットディレイ経過時の
値を比較する。 (10)図5に示す信号P,Q,Rの波形のようにいず
れも発振しており、かつ、1ユニットディレイづつ遅れ
ている場合には45ユニットディレイ経過時および46
ユニットディレイ経過時の各論理値に違いが生じてく
る。
(9) P stored in # 3 and # 4,
Each logical value of Q and R is read out, and for each logical value, the values after the elapse of 45 unit delay and 46 unit delay are compared. (10) When all are oscillating like the waveforms of the signals P, Q, and R shown in FIG.
There will be a difference in each logical value when the unit delay elapses.

【0040】図5において、AおよびBをそれぞれ45
および46ユニットディレイ経過時点とすれば、信号
P,Q,RのAおよびB点での論理値は1,1,0およ
び1,0,0であり、両時点での論理値が異なるゲート
を含んでいる。従って、この場合は、シミュレーション
を終了する。
In FIG. 5, A and B are 45
And 46 unit delay has elapsed, the logic values at points A and B of the signals P, Q, and R are 1, 1, 0 and 1, 0, 0, and gates having different logic values at both time points are used. Contains. Therefore, in this case, the simulation ends.

【0041】図3のような簡単な論理回路を例に取って
説明したが、同様にして膨大な数の論理ゲートからなる
論理回路の論理シミュレーションにおいても発振して論
理値の定まらない論理回路を容易に検出することができ
る。
Although a simple logic circuit as shown in FIG. 3 has been described as an example, a logic circuit which oscillates and a logic value is not determined in a logic simulation of a logic circuit composed of an enormous number of logic gates is similarly used. It can be easily detected.

【0042】図6は、本発明による論理シミュレータの
テストカバレージ情報を検出する方式の構成を示すフロ
ーチャートである。テストカバレージ検出の処理手順を
図6に沿って説明する。
FIG. 6 is a flow chart showing the structure of the method for detecting the test coverage information of the logic simulator according to the present invention. The processing procedure of test coverage detection will be described with reference to FIG.

【0043】(1)シミュレーション入力データをファ
イル21に格納する。 (2)回路情報をファイル22に格納する。 (3)ファイル21のシミュレーション入力データとフ
ァイル22の回路情報に基づき論理シミュレーション2
3を実行する。論理シミュレーションの結果の確認24
を行う。 (4)ファイル22の回路情報から仮定故障の検出25
を行う。
(1) The simulation input data is stored in the file 21. (2) Store the circuit information in the file 22. (3) Logic simulation 2 based on the simulation input data of the file 21 and the circuit information of the file 22
Execute 3. Confirming the result of logic simulation 24
I do. (4) Detection of hypothetical failure from circuit information in file 22 25
I do.

【0044】(5)検出された仮定故障をすべて全故障
ファイル26へ蓄積する。 (6)論理シミュレーション23が終了したら、ファイ
ル21のシミュレーション入力データとファイル22の
回路情報を用いて故障シミュレーション27を実行す
る。 (7)故障シミュレーション27を実行した結果、検出
可能な故障箇所の抽出28を行う。 (8)故障シミュレーションを実行して検出できた故障
を故障検出ファイル29に蓄積する。
(5) All detected hypothetical faults are stored in the total fault file 26. (6) When the logic simulation 23 is completed, the failure simulation 27 is executed using the simulation input data of the file 21 and the circuit information of the file 22. (7) As a result of executing the failure simulation 27, a detectable failure point is extracted 28. (8) The failure detected by executing the failure simulation is accumulated in the failure detection file 29.

【0045】(9)すべてのシミュレーション入力デー
タについて故障シミュレーションが完了したら、全故障
ファイル26と故障検出ファイル29に蓄積されている
各故障箇所の比較30を行う。 (10)比較することによって未検出の故障の抽出31
を行う。
(9) When the failure simulation is completed with respect to all the simulation input data, the comparison 30 of each failure location accumulated in the all failure file 26 and the failure detection file 29 is performed. (10) Extraction of undetected failure by comparison 31
I do.

【0046】図7は、本発明の論理シミュレータによる
テストカバレージ検出の実施例における対象論理回路を
示す。図7の論理回路の入力端子はA,BおよびC、出
力端子はXである。入力端子AおよびBはORゲート4
0に接続され、入力端子Cはインバータ41に接続され
る。
FIG. 7 shows a target logic circuit in the embodiment of the test coverage detection by the logic simulator of the present invention. The logic circuit of FIG. 7 has input terminals A, B and C and output terminals X. Input terminals A and B are OR gates 4
0, and the input terminal C is connected to the inverter 41.

【0047】インバータ41の出力端子はフリップフロ
ップ(FFという)42のD端子と接続される。FF4
2のQ端子及びORゲート40の出力端子はANDゲー
ト43に接続される。ANDゲート43の出力端子はF
F44のD端子に接続され、FF44のQ端子は論理回
路の出力端子Xに接続される。
The output terminal of the inverter 41 is connected to the D terminal of a flip-flop (referred to as FF) 42. FF4
The Q terminal of 2 and the output terminal of the OR gate 40 are connected to the AND gate 43. The output terminal of the AND gate 43 is F
It is connected to the D terminal of F44 and the Q terminal of FF44 is connected to the output terminal X of the logic circuit.

【0048】図8は、図7の論理回路の入力端子A,B
およびCからの各入力信号、FF42の出力信号Z,F
F44の出力信号Y、ならびに、出力端子Xにおける信
号(Yと同じ)の一例を示す。以下、図7についての論
理シミュレーションについて、上記フローチャートに従
って説明する。
FIG. 8 shows input terminals A and B of the logic circuit of FIG.
And input signals from C and output signals Z and F of FF42
An example of the output signal Y of F44 and the signal at the output terminal X (same as Y) is shown. The logic simulation of FIG. 7 will be described below with reference to the above flowchart.

【0049】(1)図8に示す入力データA,B,Cを
ファイル21に格納する。 (2)論理回路に関する上述したような回路情報をファ
イル22に格納する。 (3)ファイル21および22に格納されているデータ
に基づいて論理シミュレーションを実行し、その結果を
確認する。
(1) The input data A, B and C shown in FIG. 8 are stored in the file 21. (2) The circuit information as described above regarding the logic circuit is stored in the file 22. (3) The logic simulation is executed based on the data stored in the files 21 and 22, and the result is confirmed.

【0050】(4)ファイル22の回路情報に基づき故
障シミュレータにより全仮定故障を検出しファイル26
に格納する。全仮定故障は、論理回路に含まれる全ての
ゲートの入力および出力に起こり得る全ての故障を列挙
したものである。表1はファイル26に格納される全仮
定故障表を示す。
(4) The fault simulator detects all assumed faults based on the circuit information in the file 22, and the file 26
To store. The total contingencies are a list of all possible faults at the inputs and outputs of all gates included in the logic circuit. Table 1 shows a full contingency table stored in file 26.

【表1】 [Table 1]

【0051】表1において、0スタック故障および1ス
タック故障とは、それぞれ、信号が論理0および論理1
に膠着状態になることをいう。すなわち、各入力および
出力はいずれも0スタック故障と1スタック故障の2つ
の故障状態を有する。
In Table 1, the 0 stack fault and the 1 stack fault mean that signals are logic 0 and logic 1 respectively.
It means getting stuck in. That is, each input and output has two failure states, a 0 stack failure and a 1 stack failure.

【0052】(5)論理シミュレーションが終了した
ら、故障シミュレーションを実行する。 (6)表2、表3、表4はそれぞれ図8に示す時点t
2,t3,t6において検出可能なスタック故障を列挙
したものであり、これがファイル29に格納される。
(5) When the logic simulation is completed, the failure simulation is executed. (6) Tables 2, 3, and 4 are time points t shown in FIG.
The stack faults that can be detected at 2, t3, and t6 are listed and stored in the file 29.

【表2】 [Table 2]

【表3】 [Table 3]

【表4】 [Table 4]

【0053】(7)ファイル26の内容(表1)とファ
イル29の内容(表2、3、4)とを比較し故障シミュ
レーションデータ検出できなかったスタック故障を抽出
する。 以上述べたように、未検出のスタック故障の全仮定故障
に対する割合によって論理シミュレータのテストカバレ
ージが量的に把握できる。
(7) The contents of the file 26 (Table 1) are compared with the contents of the file 29 (Tables 2, 3, and 4) to extract stack faults for which fault simulation data cannot be detected. As described above, the test coverage of the logic simulator can be quantitatively grasped by the ratio of undetected stack faults to all hypothetical faults.

【0054】[0054]

【発明の効果】本発明によれば、論理ゲートにユニット
ディレイを適用する論理シミュレータを使って、各論理
ゲートがユニットディレイで表わせない論理回路をシミ
ュレーションしても、論理回路が発振したことを確実に
検出できる。従って発振が原因による論理回路の誤りは
すぐに検出できる。また論理シミュレーションだけを実
行するシミュレータを開発或いは購入しなくてもよいの
で、開発コストを削減できる。
According to the present invention, even if a logic simulator that applies a unit delay to a logic gate is used to simulate a logic circuit in which each logic gate cannot be represented by a unit delay, it is possible to ensure that the logic circuit oscillates. Can be detected. Therefore, an error in the logic circuit due to the oscillation can be detected immediately. In addition, since it is not necessary to develop or purchase a simulator that executes only logical simulation, development costs can be reduced.

【0055】また、本発明によるテストカバレージ情報
の収集は実際に行われた論理シミュレーションのデータ
をもとにしてテストカバレージを割り出すので、論理シ
ミュレーションを行ったつもりでも実際行っていなかっ
たとか項目抜けがあった等のミスを確実に防止すること
ができる。またテストカバレージを自動的に割り出すの
で、設計者によるシミュレーション項目の管理のための
労力および費用を低減することができる。
Further, since the test coverage is collected based on the data of the logic simulation actually performed in the collection of the test coverage information according to the present invention, even if the logic simulation is intended, it may be omitted. It is possible to reliably prevent mistakes such as having occurred. Moreover, since the test coverage is automatically determined, the labor and cost for the designer to manage the simulation items can be reduced.

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

【図1】本発明による論理シミュレータの発振回路検出
方式を示すフローチャートである。
FIG. 1 is a flowchart showing an oscillator circuit detection method of a logic simulator according to the present invention.

【図2】メモリ領域を示す図である。FIG. 2 is a diagram showing a memory area.

【図3】発振論理回路の検出の実施例を示す図(その
1)である。
FIG. 3 is a diagram (No. 1) showing an example of detection of an oscillation logic circuit.

【図4】発振論理回路の検出の実施例を示す図(その
2)である。
FIG. 4 is a diagram (No. 2) showing an example of detection of an oscillation logic circuit.

【図5】発振論理回路の検出の実施例を示す図(その
3)である。
FIG. 5 is a diagram (No. 3) showing an example of detection of an oscillation logic circuit.

【図6】テストカバレージ情報収集方式を示すフローチ
ャートである。
FIG. 6 is a flowchart showing a test coverage information collecting method.

【図7】テストカバレージ情報収集の実施例を示す図
(その1)である。
FIG. 7 is a diagram (No. 1) illustrating an example of collecting test coverage information.

【図8】テストカバレージ情報収集の実施例を示す図
(その2)である。
FIG. 8 is a diagram (part 2) illustrating an example of collecting test coverage information.

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

1〜12 フローチャートの処理ステップ 21〜31 フローチャートの処理ステップ 40 ORゲート 41 インバータ 42,44 フリップフロップ 43 ANDゲート 50 メモリ 51,52,53 インバータ 1-12 Flowchart processing steps 21-31 Flowchart processing steps 40 OR gate 41 Inverter 42,44 Flip-flop 43 AND gate 50 Memory 51,52,53 Inverter

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 シミュレーション対象となる論理ゲート
に均一なユニットディレイを与え、シミュレーションの
実行によってクロック信号の入力とクロック信号の入力
によって起こる論理ゲートの論理値の更新を所定数のユ
ニットディレイの期間だけ行うような論理シミュレータ
であって、 N(Nは自然数)ユニットディレイの期間シミュレーシ
ョンを実行した後、各論理ゲートの論理値を記憶する第
一のメモリ手段と、 N+M(Mは自然数)ユニットディレイの期間シミュレ
ーションを実行した後、各論理ゲートの論理値を記憶す
る第二のメモリ手段と、 第一および第二のメモリ手段によって記憶された各論理
ゲートの論理値を比較する手段と、 Nユニットディレイの期間シミュレーションを実行し、
その結果を第一のメモリ手段に格納し、つぎにN+Mユ
ニットディレイの期間シミュレーションを実行し、その
結果を第二のメモリ手段に格納し、第一および第二のメ
モリ手段に格納された各論理ゲートの論理値を比較手段
によって比較し、その結果、少なくとも1カ所以上の論
理ゲートにおいて論理値の不一致を検出したならば、論
理シミュレータの実行を停止するように制御する手段と
を備えることを特徴とする論理シミュレータ。
1. A uniform unit delay is given to a logic gate to be simulated, and a simulation signal is executed to input a clock signal and update the logic value of the logic gate caused by the input of the clock signal only during a predetermined number of unit delays. And a first memory means for storing the logic value of each logic gate after performing a simulation for a period of N (N is a natural number) unit delay, and N + M (M is a natural number) unit delay. A second memory means for storing the logic value of each logic gate after performing the period simulation; a means for comparing the logic value of each logic gate stored by the first and second memory means; and an N unit delay. Run a period simulation of
The result is stored in the first memory means, then the simulation is executed for the period of N + M unit delays, the result is stored in the second memory means, and the logics stored in the first and second memory means are stored. And comparing the logic values of the gates by the comparing means, and as a result, if at least one logic gate detects a mismatch of the logic values, it controls to stop the execution of the logic simulator. And a logic simulator.
【請求項2】 入力データに従って論理回路の故障シミ
ュレーションを実行し論理回路の仮定故障を検出する第
一の手段と、 前記論理回路の全ての仮定故障を検出し、蓄積する第二
の手段と、 第一の手段により検出された仮定故障を蓄積する第三の
手段と、 第二および第三の手段によって蓄積された情報を比較す
る手段と、 第二の手段に蓄積された全ての仮定故障と、前記論理回
路を第一の手段によって入力データに基づき論理シミュ
レーションした結果検出された仮定故障とを前記比較手
段によって比較した結果により、論理シミュレーション
のテストカバレージに関する情報を収集する手段とを備
えることを特徴とする論理シミュレータ。
2. A first means for executing a failure simulation of a logic circuit according to input data to detect a hypothetical failure of the logic circuit, and a second means for detecting and accumulating all the hypothetical failures of the logic circuit. A third means of accumulating the contingencies detected by the first means, a means of comparing the information accumulated by the second and the third means, and all contingencies accumulated by the second means And a means for collecting information on a test coverage of the logic simulation by a result of comparing the assumed failure detected as a result of the logic simulation of the logic circuit based on the input data by the first means by the comparison means. A characteristic logic simulator.
JP3242981A 1991-09-24 1991-09-24 Logic simulator Withdrawn JPH0581367A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3242981A JPH0581367A (en) 1991-09-24 1991-09-24 Logic simulator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3242981A JPH0581367A (en) 1991-09-24 1991-09-24 Logic simulator

Publications (1)

Publication Number Publication Date
JPH0581367A true JPH0581367A (en) 1993-04-02

Family

ID=17097123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3242981A Withdrawn JPH0581367A (en) 1991-09-24 1991-09-24 Logic simulator

Country Status (1)

Country Link
JP (1) JPH0581367A (en)

Similar Documents

Publication Publication Date Title
JP2522541B2 (en) Simulation device and simulation method
US6487704B1 (en) System and method for identifying finite state machines and verifying circuit designs
KR100337696B1 (en) Method for automatically generating behavioral environment for model checking
Wang et al. Delay-fault diagnosis using timing information
US6457161B1 (en) Method and program product for modeling circuits with latch based design
US6941497B2 (en) N-squared algorithm for optimizing correlated events
US6851098B2 (en) Static timing analysis and performance diagnostic display tool
JP2755237B2 (en) Simulation apparatus and method
JPH0561931A (en) Simulation device
JPH0581367A (en) Logic simulator
US11443092B2 (en) Defect weight formulas for analog defect simulation
Pomeranz et al. Location of stuck-at faults and bridging faults based on circuit partitioning
JPH03120485A (en) Fault location estimating system for semiconductor integrated circuit
US20050024074A1 (en) Method and apparatus for characterizing an electronic circuit
JP4921751B2 (en) Fault detection simulation system, fault detection simulation method and program
JPH1139181A (en) Method for testing computer
JP2001255357A (en) Method and apparatus for verification of validity of test pattern
JP2990813B2 (en) Failure simulation method
JPH0676016A (en) Logical simulation method
JP2624135B2 (en) Timing analysis method
JPH1183945A (en) Failure diagnostic system for logic circuit
JP2001076024A (en) Logic circuit simulation method
JP2830579B2 (en) Logic simulation equipment
JPH04161872A (en) Testing method for logic integrated circuit
JPH06215062A (en) Alignment device for simulation data

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19981203