JP3698413B2 - Digital circuit verification apparatus and verification method - Google Patents
Digital circuit verification apparatus and verification method Download PDFInfo
- Publication number
- JP3698413B2 JP3698413B2 JP2001035523A JP2001035523A JP3698413B2 JP 3698413 B2 JP3698413 B2 JP 3698413B2 JP 2001035523 A JP2001035523 A JP 2001035523A JP 2001035523 A JP2001035523 A JP 2001035523A JP 3698413 B2 JP3698413 B2 JP 3698413B2
- Authority
- JP
- Japan
- Prior art keywords
- circuit
- state
- digital circuit
- determination
- digital
- 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
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、クロック同期のデジタル回路を検証するためのデジタル回路検証装置及び検証方法に関する。
【0002】
【従来の技術】
現在、デジタル回路の設計において、ハードウェア記述言語(HDL)を用いたレジスタトランスレベル(RTL)設計が行われている。また、設計データを検証する際も、同様にHDLや専用言語などでシミュレーション用パターンを作成し検証を行っている。HDLや専用言語などでシミュレーション用パターンを作成し検証を行う場合の利点は、回路内部の信号をトレースできることにある。しかし、半導体集積回路の集積度の飛躍的な増加に伴い、回路が大規模化、複雑化し、検証を行う上で後述のような問題が発生している。
【0003】
すなわち、シミュレーション用パターンを作成するのが検証者であった場合、1.人が作成するため非常に時間がかかる、2.検証者が意図しない入力パターンが存在し検証項目漏れが発生する、3.実際のソフトウェアを作成するソフトウェア開発者と検証者が別であるためソフトウェアの設定順番と入力パターンの順番が異なり、検証もれ、さらには誤動作の原因となる場合がある、4.入力パターンのタイミングによって正常に動作できない場合がある、などの様々な課題がある。
【0004】
また、シミュレーション用パターンを作成を自動パターン生成ツールで行った場合、5.パターンをランダムに発生しても検証ができたことにならない、6.全ての組合せを行うことは非常に時間がかかり現実的ではない、などの課題がある。
【0005】
このように、検証者、自動パターン生成ツールのどちらでシミュレーションパターンを作成して検証したとしても、完全な検証というものは非常に難しい。しかし実際には、回路検証において全ての組合せを無限大に行う必要はなく、検証すべき部分は組合せ回路のごく一部分である。そのため、検証者がパターンを作成した方が、必要な機能検証のみを正確に行うことができる。また、検証者は設計された回路の外部仕様書の中でデジタル回路の設定順序となる入力パターンを明記することで、ソフトウェア設計者もシミュレーションパターンと同様なソフトウェアを作成することができ、検証者が意図しない入力パターンが発生することを避けることができる。
【0006】
【発明が解決しようとする課題】
上述のように自動パターン生成ツールを利用するよりも検証者がシミュレーションパターンを作成する方に利点がある。しかし、検証者がシミュレーションパターンを作成する場合には、先に述べたように、入力パターンのタイミングによってはいくら検証しても正常に動作できない場合がある。これは検証対象となるデジタル回路(以下、ターゲット回路と記す)の内部状態を検証者が意識せずに、ターゲット回路をブラックボックス化してパターンを作成するためである。
【0007】
そこで、本発明は検証者がシミュレーションパターンを作成する際に生じるタイミングに関する問題を解決し、ターゲット回路を確実に検証することができるデジタル回路検証装置及び検証方法を提供することを目的とする。
【0008】
【課題を解決するための手段】
本発明は、順序素子(フリップフロップ)及び組合せ回路部分を有するクロック同期のデジタル回路の入力状態及び前記順序素子の出力状態を保持し、それぞれについて現在の状態と比較し前記デジタル回路の内部状態を判定し、判定結果に応じて前記デジタル回路を検証するためのパターンを所定タイミングで前記デジタル回路に入力する。
【0009】
デジタル回路において、ターゲット回路の状態を考えた場合、ターゲット回路への入力信号とターゲット回路内部の順序回路によって1つの状態を表わすことができる。ターゲット回路の状態とは、ターゲット回路へクロック信号が入力され、他の入力信号が変化しない場合、ある一定時間が経過することで、状態が全く変化しない安定な状態(無変化安定状態)若しくはある周期的規則をもち、変化し続ける状態(周期的安定状態)である。
【0010】
例えば、ポート制御回路のように、CPUからターゲット回路内部のレジスタへ設定値を書き込むことでターゲット回路から設定値を出力する場合、レジスタへ設定した後、数クロック以内に状態が全く変化しない無変化安定状態となる。また、アップカウンタ回路のように、CPUからターゲット回路内部のレジスタへアップカウンタ動作許可を設定すると、カウンタが0からカウントアップを開始し、カウンタが最大値に達すると、また、0からカウントアップを行うため、周期的規則を持ち変化する周期的安定状態となる。
【0011】
無変化安定状態では、ターゲット回路への入力信号がどのタイミングで発生したとしても、ターゲット回路からの出力信号は入力信号のタイミングによって遅れて出力されるとしても、同じ結果を得ることができる。また、周期的安定状態では、ターゲット回路への入力信号が同じ周期に発生すれば、ターゲット回路からの出力信号は周期に合わせて遅く出力されるとしても、同じ結果を得ることができる。
【0012】
上記理由により、無変化安定状態、周期的安定状態を検証者が知ることができれば、無変化安定状態、周期的安定状態以降に入力信号を変化させるようなタイミングの検証パターンを作ることはなくなる。
【0013】
デジタル回路検証手法のモデル(以下、デジタル回路検証モデルと記す)として、以下の回路を必要とする。状態判定回路はターゲット回路の入力状態とターゲット回路内部の順序回路の状態を保持するために、クロック信号の立ち上がりエッジ毎に状態を保持できるフリップフロップ回路と、現在の状態と1クロック前の状態を比較するための比較回路及び入力状態とターゲット回路内部の順序回路の状態が現在の状態と1クロック前の状態に変化があるか否かを判定するための判定回路で構成され、判定回路からの出力を判定結果信号として検証のためのパターンを発生する入力信号発生回路に渡す。入力信号発生回路は実際にターゲット回路に接続されるデバイス(ホスト回路)のアクセスサイクル毎に発生できるようにパターンをタスク化し、タスクの実行条件の中に判定結果信号によってタスクの実行を許可/禁止する制御を行う。
【0014】
【発明の実施の形態】
(第1の実施形態)
以下、本発明の第1の実施形態について図面を参照しながら説明する。
図1はデジタル回路検証モデルを示す構成図である。図1に示されるように、デジタル回路検証モデルは、ターゲット回路110と、ターゲット回路に入力するシミュレーションパターンを発生する入力信号発生回路100と、ターゲット回路110の内部状態を判定する状態判定回路120とで構成される。
【0015】
ターゲット回路110は無変化安定状態となるデジタル回路のみとし、ターゲット回路110の内部は順序回路として1系統のクロック信号で動作するフリップフロップ回路113、114、115と、組合せ回路111、112とで構成される。
【0016】
入力信号発生回路100は、クロック発生回路103と実行順番毎に並べたタスク101と、タスク101の実行を許可/禁止制御するタスク実行許可禁止制御回路102とで構成される。
【0017】
図2はタスクの発生タイミングを示すもので、例えば、入力信号1、2、3を発生するタスクを仮定する。タスクはHDLでシミュレーションを行う際、入力信号のまとまり毎に作成することができる。タスクを作成する場合、まず、外部デバイスのアクセスサイクルに合った基本となる基本タスクを作成する。タスクを利用する場合、基本タスクを呼び出し、基本タスクの中の変化する入力信号値のみを与えることで、ターゲット回路100に対し外部デバイスと同様のタイミング入力を行うことができる。図示例のように、タスクが実行されない部分は入力信号1、2、3が全て“1”、タスクの実行期間中は入力信号1、2が“0”、入力信号3が“1”又は“0”となるような基本タスクを仮定する。
【0018】
タスク実行許可禁止制御回路102は、例えば、状態判定回路120からの判定結果信号が“1”であればタスクの実行を許可し、次のタスクを実行するものとする。また、判定結果信号が“0”であればタスクの実行を禁止し、次のタスクの実行を待つものとする。
【0019】
状態判定回路120には、入力信号発生回路100からターゲット回路110への入力信号及びデジタル回路内部のフリップフロップ回路113、114、115からの出力信号が入力される。状態判定回路120は、1クロック前の状態を保持するためのフリップフロップ回路121と、1クロック前の状態と現在の状態を比較するための比較回路122と、比較回路122からの出力結果を入力とする判定回路123とで構成される。比較回路122は例えば排他的論理積回路(以下、EX−NOR回路と記す)で構成することができる。EX−NOR回路で比較回路を構成した場合、1クロック前の状態と現在の状態が一致していれば“1”が出力され、一致していなければ“0”が出力される。判定回路123は例えば論理積回路(以下、AND回路と記す)で構成することができる。AND回路で判定回路を構成した場合、比較回路122からの出力結果が全て“1”であれば“1”が出力され、1つでも“0”があれば“0”が出力される。以後、比較回路にはEX−NOR回路を用い、比較回路にはAND回路を用いたものとして説明する。
【0020】
図3は上記構成のデジタル回路検証モデルの動作を説明するタイミング図である。シミュレーション開始時、必ずターゲット回路110への入力信号とターゲット回路内部のフリップフロップ回路113、114、115が確定した値となるように初期設定を行う。ターゲット回路内部のフリップフロップ113、114、115を初期化するには通常ターゲット回路110への入力信号としてリセット信号を用いることで初期化できる。この初期設定により、状態判定回路120の比較回路122は確定した値を比較することができる。
【0021】
ターゲット回路110が無変化安定状態の回路であれば、クロック信号のみ変化させ、ある一定時間が経過すれば、状態が全く変わらない安定状態となる。つまり、1クロック前の状態と現在の状態を比較すると全ての信号が一致し、全ての比較回路122からの比較結果が“1”となる。また判定回路123の判定結果も“1”となり、入力信号発生回路100のタスク実行許可禁止制御回路102はタスク実行を許可し、これによりタスク1が実行される。
【0022】
タスク1が実行されると、状態判定回路120の判定結果信号が“0”となり、タスク実行許可禁止制御回路102はタスク2の実行を待つ、つまりタスク実行を禁止する。タスク1が実行された後、ある一定時間が経過すれば、また無変化安定状態となり、状態判定回路120の判定結果信号も“1”となる。タスク実行許可禁止制御回路102はタスク実行を許可し、これによりタスク2が実行される。
【0023】
タスクが全て実行され、各タスクの実行時間を記録することによって、無変化安定状態になるまでの時間を検証者は知ることができる。タイミング的に問題となる部分は各タスクの無変化安定状態になるまでの期間であるから、無変化安定状態になるまでの期間以内に次のタスクを実行するシミュレーションパターンを作成することにより問題を解決することができる。
【0024】
(第2の実施形態)
以下、本発明の第2の実施形態について図面を参照しながら説明する。
図4はデジタル回路検証モデルを示す構成図である。図1に示されるように、デジタル回路検証モデルは、ターゲット回路410と、入力信号発生回路100と、状態判定回路420とで構成される。先の図1に示したデジタル回路検証モデルと異なる点は、ターゲット回路410が周期的安定動作を行う回路を有する場合に、状態判定回路420が、状態判定を一定期間内に終了させるためのタイムアウト時間が設定された判定期間タイムアウト回路424を備える点にある。
【0025】
第1の実施形態ではターゲット回路410に周期的安定状態となる回路が内蔵されている場合、ターゲット回路410が周期的安定状態に遷移すると、判定ターゲット回路410内部のフリップフロップ回路413、414、415のいずれか1個以上が1クロック前の状態と異なる。このため、判定結果信号が常に“0”となり、次のタスクを実行できない。
【0026】
判定期間タイムアウト回路424は、アップカウンタを内蔵し、タスク実行後、“0”からカウントアップする。アップカウンタが最大値となると、判定回路423の結果に関わらず、判定結果信号を“1”に設定し、タスク実行を許可する。アップカウンタの最大値は、ターゲット回路410のフリップフロップ回路の個数をNとすれば、2N で示すことができる。その理由は、入力信号が変化しない場合、ターゲット回路410の状態はターゲット回路内部のフリップフロップ回路の個数分の状態しか存在せず、また、フリップフロップ回路は“0”又は“1”の2つの状態しか存在しないため、ターゲット回路410は2N個の状態しか存在しないからである。アップカウンタが2N回数えている間に必ず同じ状態が発生し、周期的安定状態になる。
【0027】
図5は以上構成のデジタル回路検証モデルの動作を説明するためのタイミング図である。ターゲット回路410への入力信号とターゲット回路内部のフリップフロップ413、414、415が確定した値となるように初期設定を行った後、タスク1が実行され、これによりタスク実行信号がアクティブになる。タスク実行信号により、状態判定回路420内の判定期間タイムアウト回路423のカウンタがカウント動作を開始する。周期的安定回路であるターゲット回路410は、ターゲット回路内部のフリップフロップ回路413、414、415が常に変化するため、状態判定回路420内の比較回路422は必ず1つは不一致となる。判定期間タイムアウト回路424が最大値をカウントすると、1クロック分のタイムアウト信号がアクティブになる。これにより、判定結果信号は比較回路422からの信号に関わらず“1”となり、次のタスクを実行する。
【0028】
周期的安定状態が発生しなかった場合は、ある一定期間を経過すれば無変化安定状態となるため、比較回路422からの比較結果信号が全て“1”となり、判定回路423の判定結果信号が“1”となるため、次のタスクを実行することができる。
【0029】
タスクが全て実行され、各タスクの実行時間を記録することによって、無変化安定状態になるまでの時間を検証者は知ることができる。また、どのタスクにより、周期的安定状態になるか判断することができる。検証者は無変化安定状態又は周期的安定状態になるまでの期間以内に次のタスクを実行するシミュレーションパターンを作成することにより問題を解決することができる。
【0030】
(第3の実施形態)
以下、本発明の第3の実施形態について図面を参照しながら説明する。
図6はデジタル回路検証モデルを示す構成図である。図6に示されるように、デジタル回路検証モデルは、ターゲット回路610と、入力信号発生回路600と、状態判定回路620とで構成される。先の図4に示したデジタル回路検証モデルと同様に周期的安定動作を行う回路を有する場合を考慮するが、図4に示したデジタル回路検証モデルと異なる点は、ターゲット回路610が周期的安定動作を行う回路を複数有する場合に、状態判定回路620が、周期的安定動作を行う回路毎に判定状態を一定期間内に終了させるためのタイムアウト時間が設定された判定期間タイムアウト回路624を備える点にある。
【0031】
具体的には、ターゲット回路610において、周期的安定状態となるフリップフロップ回路を周期フリップフロップ回路群613、614に分類し、分類毎に周期的安定状態を示す周期発生トリガ信号を発生するフリップフロップ回路615、616も分類する。周期フリップフロップ回路群は一方の動作が他の周期フリップフロップ回路群に影響を及ぼすことはない。
【0032】
判定期間タイムアウト回路624には、予め周期フリップフロップ回路群毎に判定期間のタイムアウト時間が設定されており、周期発生トリガ信号により”0”からカウントアップする。アップカウンタが設定されたタイムアウト時間に達すると、判定回路623の結果に関わらず、判定結果信号を”1”に設定し、タスク実行を許可する。
【0033】
【発明の効果】
以上のように本発明によれば、順序回路(フリップフロップ)及び組合せ回路を有するクロック同期のデジタル回路の入力状態及び前記順序回路の出力状態を保持し、それぞれについて現在の状態と比較し前記デジタル回路の内部状態を判定し、判定結果に応じて前記デジタル回路を検証するためのパターンを所定タイミングで前記デジタル回路に入力するためのデジタル回路検証モデルを構築することで、検証者がシミュレーションパターンを作成する際に生じる問題となる安定状態を認識し、安定状態にあるタイミングを外してターゲット回路にパターンを入力することができるため、ターゲット回路を確実に検証することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態に係るデジタル回路検証モデルを示す構成図。
【図2】基本タスクとなる入力信号を示すタイミング図。
【図3】第1の実施形態に係るデジタル回路検証モデルの動作を示すタイミング図。
【図4】本発明の第2の実施形態に係るデジタル回路検証モデルを示す構成図。
【図5】第2の実施形態に係るデジタル回路検証モデルの動作を示すタイミング図。
【図6】本発明の第3の実施形態に係るデジタル回路検証モデルを示す構成図。
【符号の説明】
100,400,600 入力信号発生回路
101,401,601 タスク
102,402,602 タスク実行許可禁止制御回路
103,403,603 クロック発生回路
110,410,610 ターゲット回路
111,112,411,412,611,612 組合せ回路
113,114,115,413,414,415 フリップフロップ回路(内部)
120,420,620 状態判定回路
121,421,621 フリップフロップ回路(1クロック前の状態保持)
122,422,622 比較回路
123,423,623 判定回路
424,624 判定期間タイムアウト回路
613 周期Aフリップフロップ回路群
614 周期Bフリップフロップ回路群
615 周期A発生トリガフリップフロップ回路
616 周期B発生トリガフリップフロップ回路[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a digital circuit verification apparatus and verification method for verifying a clock-synchronized digital circuit.
[0002]
[Prior art]
Currently, register translevel (RTL) design using hardware description language (HDL) is performed in the design of digital circuits. Similarly, when verifying design data, a simulation pattern is created and verified using HDL, a dedicated language, or the like. An advantage of creating and verifying a simulation pattern in HDL or a dedicated language is that the signal inside the circuit can be traced. However, with the dramatic increase in the degree of integration of semiconductor integrated circuits, the circuit becomes larger and more complicated, and the following problems occur when performing verification.
[0003]
That is, when the verifier creates the simulation pattern: 1. It takes a very long time for human creation. 2. An input pattern that is not intended by the verifier exists and a verification item is missing. 3. Since the software developer and verifier who create the actual software are different, the software setting order and input pattern order are different, which may result in verification failure and even cause malfunction. There are various problems such as a case where the operation cannot be normally performed depending on the timing of the input pattern.
[0004]
In addition, when a pattern for simulation is created by an automatic pattern generation tool, 5. 5. Even if a pattern is generated randomly, it does not mean that the verification has been completed. All combinations are very time consuming and unrealistic.
[0005]
As described above, even if a verification pattern is created and verified by either a verifier or an automatic pattern generation tool, complete verification is very difficult. However, in practice, it is not necessary to perform all combinations infinitely in circuit verification, and the part to be verified is a very small part of the combinational circuit. Therefore, if the verifier creates a pattern, only necessary function verification can be accurately performed. In addition, by specifying the input pattern that is the setting sequence of the digital circuit in the external specification of the designed circuit, the verifier can also create software similar to the simulation pattern. Can prevent an unintended input pattern from occurring.
[0006]
[Problems to be solved by the invention]
As described above, there is an advantage in that the verifier creates a simulation pattern rather than using the automatic pattern generation tool. However, when the verifier creates a simulation pattern, as described above, depending on the timing of the input pattern, it may not be able to operate normally no matter how much it is verified. This is because the verifier does not consider the internal state of a digital circuit to be verified (hereinafter referred to as a target circuit) and creates a pattern by making the target circuit into a black box.
[0007]
Therefore, an object of the present invention is to provide a digital circuit verification apparatus and a verification method that can solve a problem relating to timing that occurs when a verifier creates a simulation pattern and can reliably verify a target circuit.
[0008]
[Means for Solving the Problems]
The present invention holds an input state of a clock-synchronized digital circuit having a sequential element (flip-flop) and a combinational circuit portion and an output state of the sequential element , and compares the internal state of the digital circuit with each of the current state and the current state. A pattern for verifying and verifying the digital circuit according to the determination result is input to the digital circuit at a predetermined timing.
[0009]
In the digital circuit, when the state of the target circuit is considered, one state can be represented by an input signal to the target circuit and a sequential circuit inside the target circuit. The state of the target circuit is a stable state (no change stable state) in which the state does not change at all after a certain time elapses when a clock signal is input to the target circuit and other input signals do not change. This is a state that has a periodic rule and keeps changing (periodic stable state).
[0010]
For example, when a setting value is output from the target circuit by writing the setting value from the CPU to a register inside the target circuit, such as a port control circuit, the state does not change at all within a few clocks after setting to the register. It becomes a stable state. Also, like the up counter circuit, when the up counter operation permission is set from the CPU to the register in the target circuit, the counter starts counting up from 0, and when the counter reaches the maximum value, the counting up from 0 is started. In order to do so, it becomes a periodically stable state that changes with periodic rules.
[0011]
In the unchanged stable state, the same result can be obtained even if the input signal to the target circuit is generated at any timing, even if the output signal from the target circuit is output delayed by the timing of the input signal. In the periodic stable state, if the input signal to the target circuit is generated in the same cycle, the same result can be obtained even if the output signal from the target circuit is output later in time with the cycle.
[0012]
For the above reason, if the verifier can know the unchanged stable state and the periodic stable state, a verification pattern of timing that changes the input signal after the unchanged stable state and the periodic stable state is not created.
[0013]
The following circuit is required as a digital circuit verification method model (hereinafter referred to as a digital circuit verification model). The state determination circuit holds the input state of the target circuit and the state of the sequential circuit inside the target circuit, a flip-flop circuit that can hold the state at every rising edge of the clock signal, and the current state and the state one clock before Comparing circuit for comparison and a determination circuit for determining whether the input state and the state of the sequential circuit in the target circuit are changed between the current state and the state one clock before, from the determination circuit The output is passed as a determination result signal to an input signal generation circuit that generates a pattern for verification. The input signal generation circuit makes a pattern a task so that it can be generated every access cycle of the device (host circuit) that is actually connected to the target circuit, and the execution of the task is permitted / prohibited by the judgment result signal in the task execution condition Control.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
(First embodiment)
Hereinafter, a first embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing a digital circuit verification model. As shown in FIG. 1, the digital circuit verification model includes a
[0015]
The
[0016]
The input
[0017]
FIG. 2 shows the task generation timing. For example, a task that generates input signals 1, 2, and 3 is assumed. Tasks can be created for each set of input signals when HDL simulation is performed. When creating a task, first, a basic task that is basic to the access cycle of the external device is created. When using a task, it is possible to perform the same timing input as that of an external device to the
[0018]
For example, if the determination result signal from the
[0019]
The
[0020]
FIG. 3 is a timing chart for explaining the operation of the digital circuit verification model configured as described above. At the start of the simulation, the initial setting is always performed so that the input signal to the
[0021]
If the
[0022]
When the
[0023]
By verifying the execution time of each task and recording the execution time of each task, the verifier can know the time until the unchanged stable state is reached. Since the part that is problematic in terms of time is the period until each task reaches the unchanged stable state, the problem can be solved by creating a simulation pattern that executes the next task within the period until it reaches the unchanged stable state. Can be solved.
[0024]
(Second Embodiment)
Hereinafter, a second embodiment of the present invention will be described with reference to the drawings.
FIG. 4 is a block diagram showing a digital circuit verification model. As shown in FIG. 1, the digital circuit verification model includes a
[0025]
In the first embodiment, when the
[0026]
The determination
[0027]
FIG. 5 is a timing diagram for explaining the operation of the digital circuit verification model configured as described above. After the initial setting is performed so that the input signal to the
[0028]
When the periodic stable state does not occur, the constant change stable state is reached after a certain period of time, so that the comparison result signals from the
[0029]
By verifying the execution time of each task and recording the execution time of each task, the verifier can know the time until the unchanged stable state is reached. In addition, it is possible to determine which task causes the periodic stable state. The verifier can solve the problem by creating a simulation pattern that performs the next task within the period until the unchanged stable state or the periodic stable state is reached.
[0030]
(Third embodiment)
Hereinafter, a third embodiment of the present invention will be described with reference to the drawings.
FIG. 6 is a block diagram showing a digital circuit verification model. As shown in FIG. 6, the digital circuit verification model includes a target circuit 610, an input signal generation circuit 600, and a state determination circuit 620. Considering the case of having a circuit that performs periodic stable operation similarly to the digital circuit verification model shown in FIG. 4, the difference from the digital circuit verification model shown in FIG. 4 is that the target circuit 610 is periodically stable. When there are a plurality of circuits that perform the operation, the state determination circuit 620 includes a determination period timeout circuit 624 in which a timeout period is set for ending the determination state within a certain period for each circuit that performs the periodically stable operation. It is in.
[0031]
Specifically, in the target circuit 610, flip-flop circuits that are in a periodically stable state are classified into periodic flip-flop circuit groups 613 and 614, and a flip-flop that generates a periodic generation trigger signal indicating the periodic stable state for each classification is generated. Circuits 615 and 616 are also classified. One operation of the periodic flip-flop circuit group does not affect the other periodic flip-flop circuit group.
[0032]
The determination period timeout circuit 624 is preset with a determination period timeout period for each periodic flip-flop circuit group, and counts up from “0” by a period generation trigger signal. When the up counter reaches the set time-out time, the determination result signal is set to “1” regardless of the result of the determination circuit 623, and task execution is permitted.
[0033]
【The invention's effect】
As described above, according to the present invention, the input state of the clock-synchronized digital circuit having the sequential circuit (flip-flop) and the combinational circuit and the output state of the sequential circuit are held, and the digital state is compared with the current state for each. By constructing a digital circuit verification model for determining the internal state of the circuit and inputting a pattern for verifying the digital circuit to the digital circuit at a predetermined timing according to the determination result, the verifier can set the simulation pattern. Since a stable state that becomes a problem that occurs during creation can be recognized, and the timing in the stable state can be removed and a pattern can be input to the target circuit, the target circuit can be reliably verified.
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing a digital circuit verification model according to a first embodiment of the present invention.
FIG. 2 is a timing chart showing input signals that are basic tasks.
FIG. 3 is a timing chart showing the operation of the digital circuit verification model according to the first embodiment.
FIG. 4 is a configuration diagram showing a digital circuit verification model according to a second embodiment of the present invention.
FIG. 5 is a timing chart showing the operation of the digital circuit verification model according to the second embodiment.
FIG. 6 is a configuration diagram showing a digital circuit verification model according to a third embodiment of the present invention.
[Explanation of symbols]
100, 400, 600 Input
120, 420, 620
122, 422, 622
Claims (3)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001035523A JP3698413B2 (en) | 2001-02-13 | 2001-02-13 | Digital circuit verification apparatus and verification method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001035523A JP3698413B2 (en) | 2001-02-13 | 2001-02-13 | Digital circuit verification apparatus and verification method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002236713A JP2002236713A (en) | 2002-08-23 |
| JP3698413B2 true JP3698413B2 (en) | 2005-09-21 |
Family
ID=18898955
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001035523A Expired - Fee Related JP3698413B2 (en) | 2001-02-13 | 2001-02-13 | Digital circuit verification apparatus and verification method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3698413B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP4631493B2 (en) * | 2005-03-25 | 2011-02-16 | ヤマハ株式会社 | Simulation device |
-
2001
- 2001-02-13 JP JP2001035523A patent/JP3698413B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002236713A (en) | 2002-08-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6077304A (en) | Verification system for simulator | |
| CN108780469B (en) | Dynamic parameter manipulation of FPGA | |
| US5579510A (en) | Method and structure for use in static timing verification of synchronous circuits | |
| WO1999059079A1 (en) | System and method for identifying finite state machines and verifying circuit designs | |
| US20150214933A1 (en) | Metastability glitch detection | |
| US9954534B2 (en) | Methods and circuits for preventing hold time violations | |
| CN112632882A (en) | Device and method for verifying arbiter based on formal verification | |
| US7840924B2 (en) | Apparatus, method, and program for verifying logic circuit operating with multiple clock signals | |
| JP3698413B2 (en) | Digital circuit verification apparatus and verification method | |
| US7139673B1 (en) | Method of and circuit for verifying a data transfer protocol | |
| US6598191B1 (en) | Verification of asynchronous boundary behavior | |
| Nacif et al. | The Chip is Ready. Am I done? On-chip Verification using Assertion Processors. | |
| GB2597475A (en) | Methods and systems for verifying a property of an integrated circuit hardware design using quiescent state | |
| US7533011B2 (en) | Simulating and verifying signal glitching | |
| JP4316158B2 (en) | Formal verification method | |
| US20070258300A1 (en) | Functional verification of synchronized signals using random delays | |
| Lu et al. | A semi-formal verification methodology | |
| US10230374B1 (en) | Methods and circuits for preventing hold violations | |
| Liu | Multi-clocked ASIC exploration of verification strategy | |
| JPH05181930A (en) | Determination of characteristic of sequential circuit | |
| JP3394888B2 (en) | Logic circuit verification device, logic circuit verification method, and computer-readable recording medium storing logic circuit verification program | |
| JP6949440B2 (en) | Vector generator and vector generator program | |
| JP3317231B2 (en) | Skew verification method | |
| Lundgren et al. | Converging SPI_S Designs: An Evaluation of Configurable IP Development | |
| CN120688411A (en) | Chip verification method, device, equipment and storage medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050330 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050406 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050516 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050629 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050704 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090715 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090715 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100715 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110715 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |