JP2003030270A - 同期式順序回路のプロパティ検証方法および装置 - Google Patents
同期式順序回路のプロパティ検証方法および装置Info
- Publication number
- JP2003030270A JP2003030270A JP2001219343A JP2001219343A JP2003030270A JP 2003030270 A JP2003030270 A JP 2003030270A JP 2001219343 A JP2001219343 A JP 2001219343A JP 2001219343 A JP2001219343 A JP 2001219343A JP 2003030270 A JP2003030270 A JP 2003030270A
- Authority
- JP
- Japan
- Prior art keywords
- property
- symbol model
- model checking
- verification
- sequential circuit
- 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.)
- Granted
Links
Abstract
ないという問題と処理メモリ及び処理CPU時間に制限
がある場合、所定規模以上の論理回路の検証ができない
という問題があった。 【解決手段】 同期式順序回路が機能仕様を満たすか否
かを検証するプロパティ検証方法において、前記同期式
順序回路の動作を定義した記述及び前記同期式順序回路
の機能仕様を入力するステップと、記号モデル検査法に
より前記プロパティ検証を実行するステップと、前記記
号モデル検査法による前記プロパティ検証が制限時間又
は制限メモリ量内で実行不可能な場合に、前記記号モデ
ル検査法の結果を活用した情報を利用してテストベンチ
を生成するステップと、前記テストベンチを使用し、前
記記号モデル検査法の結果を補完する為の論理シミュレ
ーションを実行するステップと、を備えるプロパティ検
証方法を提供する。
Description
機能仕様を満たしているか否かを検証するプロパティ検
証装置に関し、特に機能仕様記述言語として時相論理の
一種である計算木論理(Computation Tree Logic: CTL)
を用いた記号モデル検査法による形式検証装置に関す
る。
記述言語として時相論理の一種である計算木論理(Compu
tation Tree Logic: CTL)を用いた記号モデル検査法に
よるものが一般的であった。(注記;参考文献:情報処
理 35(8) 「論理関数処理に基づく形式的検証方法」
平石裕実、浜口清治著)以下に、従来の記号モデル検査
法によるプロパティ検証装置について説明する。
詳細は上記注記の文献「論理関数処理に基づく形式的検
証方法」を参照されたい。
向グラフ上で、CTL(Computation Tree Logic)と呼ばれ
る時相論理の真偽を判定するものである。
遷移関係(有向枝)を表すRと、各節点における原始命題
の真偽を表すIと、初期節点を表すV0とを用いて、式(1)
のように定義される。 K=(V, R, I, V0) …(1) 同期式順序回路は、次のようにしてKripke構造にモデル
化される。同期式順序回路は、図3に示すように、入力
信号(x1,...,xn)、出力信号(z1,...,zl)、FF信号
(y1,...,ym)、およびFF信号の次クロックの値を決
定する組合せ回路から構成される。
せを一つの節点で表し、入力信号およびFF信号の各々を
原始命題としてその真偽を信号値で表し、初期節点をリ
セット状態の信号値に対応する節点とすることで、同期
式順序回路をKripke構造にモデル化できる。
いて、ある信号値から次クロックで遷移可能な信号値の
組合せを表すことに相当し、FF信号の次クロックの値を
決定する組合せ回路の論理から求めることが可能であ
る。
記述できる時相論理であり、論理和や論理積や論理否定
などの通常の論理演算子に加えて、「全ての遷移系列に
おいて」を表す演算子A、「ある遷移系列において」を
表す演算子E、「将来いつか」を表す時相演算子F、「将
来常に」を表す時相演算子G、「次の時刻で」を表す時
相演算子X、「〜まで常に」を表す時相演算子Uを用いて
記述される。
移系列において、将来いつかpが真である」という命題
を表している。
あるか否かを求めるには、EFpが真である節点を全て求
め、その中に初期節点が含まれるか否かを判定すればよ
い。
ずpが真である節点の集合を求め、次にその節点への遷
移を持つ(すなわち有向枝を持つ)節点を次々と求め加え
てゆけば良い。
作業を続ければ、EFpが真である節点を全て求められた
ことになる。
真である節点はq8とq9であるとすると、まず、節点集合
[q8,q9]をT0とし、T0への遷移を持つ節点の集合を求め
る。T0への遷移を持つ節点はq6とq7である。次に、q6と
q7を T0に追加した節点集合[q8,q9,q6,q7]をT1とすると
T1への遷移を持つ節点q3,q4,q5,q6,q7,q8,q9を求め、T1
に追加した節点集合をT2=[ q8,q9,q6,q7,q3,q4,q5]とす
る。
9,q6,q7,q3,q4,q5,q1,q2]を求め、4ステップ目ではT4=
[ q8,q9,q6,q7,q3,q4,q5,q1,q2,q0]を求める。5ステッ
プ目で、T4への遷移を持つ節点を求めるとq0,q1,q2,q3,
q4,q5,q6,q7,q8,q9となるが、これらは全てT4に含まれ
ており最早新しい節点が加えられることは無いのでこの
ステップで作業は停止する。
が真である全ての節点である。T4に初期節点q0が含まれ
ているため、初期節点でEFpが真であることが検証でき
る。
きる節点の集合[r]を求める作業を「像計算」と言い、
次のように表される。 Img([q]) = [r] …(2) 逆に、ある節点の集合[r]に1回の遷移で到達できる節点
の集合[q]を求める作業を「逆像計算」と言い、次のよ
うに表す。 Img-1([r]) = [q] …(3) 上記の、EFpが真である節点を求める作業は、pが真であ
る節点集合から開始して、逆像計算を繰り返し適用する
ことで達せられる。
計算を論理関数処理で行うものである。このために、Kr
ipke構造の各節点をそれぞれユニークな二進数で表し、
これを表現するための論理変数ベクトルv=[v0,v1,..,
vn]を用意する。節点の集合Sは、vを用いて次のような
論理関数FS(v)で表される。 FS(v)= 1 iff v∈q …(4) 例えば、節点q0,q1,q2,q3がそれぞれ、000, 001, 010,
011 という二進数で表されるとき、節点集合S1=[q1,q2]
は、次のような論理関数FS1で表される。 FS1 = !v0 * !v1 * v2 + !v0 * v1 * !v2 …(5) ここで、!は論理否定、*は論理積、+は論理和を表す。
する。遷移枝の始点を論理変数ベクトルv=[v0,v1,..,
vn]で表し、終点を論理変数ベクトルv=[v0,v1,..,vn]で
表すことにすると、節点間の遷移関係は、次のような論
理関数R(v,v)で表される。 R(v,v)=1 iff (v,v)が遷移枝 …(6) これらの論理関数表現を用いると、上記の像計算、逆像
計算を論理関数処理で行うことが可能となる。
て説明する。節点集合[r]を表す論理関数をFr(v)とし、
節点集合[q]を表す論理関数をFq(v)とする。[r]の逆像
[q]は、次のような論理関数処理で求められる。 Fq(v) = ∃v.( R(v,v) * Fr(v) ) …(7) ここで、∃v. はスムージング演算子と呼ばれるもの
で、次のように定義される。 ∃vi.f(v) = fvi=1(v) + fvi=0(v) …(8) ∃v.f(v) = ∃v0.f(v) * ∃v1.f(v) * ... * ∃vn.f(v) …(9) 式(8)において、fvi=1(v)はvi=1を代入したf(v)を表
し、fvi=0(v)はvi=0を代入したf(v)を表す。
デル検査について説明する。図3に示すような同期式順
序回路を考える。
号[x1,...,xn]とm個のフリップフロップ[y1,...,ym]、
そして次クロックのフリップフロップの値を決定する組
合せ回路からなる。
ためには、[x1,...,xn]と[y1,...,y m]を連結したベクト
ルを上記論理変数ベクトルvに対応付ける。
の値の組合せのひとつひとつをKripke構造の節点に対応
させることを意味する。
フリップフロップの値をそれぞれ[x 1,...,xn]、
[y1,...,ym]で表し、連結したベクトルをvに対応付け
る。
を生成する。
ップフロップの値を決定する組合せ回路から、次のよう
な計算により求める。
定する組合せ回路が、論理関数 Ni(v)で表されるとす
る。 R(v,v) = Π1≦i≦m ( y≡ Ni(v) ) …(10) 以上により、同期式順序回路をKripke構造にモデル化す
ることができ、記号モデル検査による検証が可能とな
る。
は、二分決定グラフ(Binary DecisionDiagrams:BDD)を
用いて実行されるのが一般的である。
理装置の検証方法等に関して論理装置の検証方法に記号
モデル検査法を用いる場合、状態集合を分割して大規模
な論理回路の検査を行う方法について述べられている。
モデル検査法においてメモリ規模の縮小と処理時間の短
縮のため、検証対象のプロパティに分岐の無い状態集合
と無限ループが連結した構成の状態集合を示す単一パス
表現をオートマトンにおける像計算処理だけで実行可能
な手続き群に変換する事により、実行させる方法につい
て述べられている。
技術においては、処理時間を限定して検証を行う事がで
きないという第1の問題があった。
ある場合、所定規模以上の論理回路の検証ができないと
いう第2の問題があった。本発明は、これらの問題点に
鑑みなされたものであり、その目的は処理時間、処理メ
モリに制限がある場合においても規模の大小に関わらず
検査ができる方法を提供することである。
れば、同期式順序回路が機能仕様を表すプロパティを満
たすか否かを検証するプロパティ検証方法において、検
証対象の前記同期式順序回路の動作を定義した記述およ
び検証対象のプロパティとして目的の回路内部状態への
到達可能性を表すCTLを入力するステップと、前記CTL式
の真偽を判定する記号モデル検査法を実行するステップ
と、前記記号モデル検査法が制限時間又は制限メモリ量
内で実行不可能な場合に、前記CTL式の真偽を判定する
テストベンチを自動生成するステップと、前記テストベ
ンチを使用し、前記記号モデル検査法の結果を補完する
為の論理シミュレーションを実行するステップと、を備
えることを特徴とするプロパティ検証方法が提供され
る。
ンチにおいて、前記記号モデル検査法の中間結果を活用
して得られる情報を利用して、前記目的の回路内部状態
に到達可能な状態集合群に到達したことを検出するステ
ップと、を更に備えることを特徴とするプロパティ検証
方法であってもよい。
明の処理手順を示した図1のフローチャート図と従来に
おける記号モデル検査法の処理手順の例を示した概念図
である図2を用いて、詳細に説明する。
式順序回路が、図2に示すようなKrike構造にモデル化さ
れたとする。また、S102で入力された機能仕様が、EFp
というCTLであったとし、図2の節点のうちpが真となる
節点はq8とq9であったとする。この機能仕様を対象とす
るプロパティ検証は、検証対象の同期式順序回路での内
部状態のうち、q8とq9に相当する内部状態に到達可能で
あることを確認することを目的とした検証である。
うに、節点集合T0から開始してT0に到達可能な節点集合
を繰り返し処理により求める。
メモリ量内で処理が完了した場合、すなわち節点集合T4
を求めることができた場合は、プロパティ検証は終了で
ある。すなわち、検証対象の同期式順序回路での内部状
態のうち、q8とq9に相当する内部状態に初期状態から到
達可能であることを確認できたことになる。
と制限メモリ量内で処理が完了しなかった場合を考え
る。例として、記号モデル検査が図2における節点集合T
2を求めた時点で制限時間か制限メモリ量のいずれかを
超えたと仮定する。
検証対象の同期式順序回路での内部状態のうち、q8とq9
に相当する内部状態に初期状態から到達可能であること
は確認できない。
から節点集合T2=[ q8,q9,q6,q7,q3,q4,q5]の情報を受け
取り、「検証対象の同期式順序回路がq8,q9,q6,q7,q3,q
4,q5に相当する内部状態に到達した」ことを検出するよ
うなテストベンチを生成する。
チを使用し、外部入力信号に与える入力ベクタとしてラ
ンダムパタンあるいは設計者が与えたパタンを使用し、
論理シミュレーションを実行する。論理シミュレーショ
ンの実行中、テストベンチは適当なタイミングでシミュ
レーション対象の同期式順序回路の内部状態がq8,q
9,q6,q7,q3,q4,q5に相当する内部状態のいずれかに達し
たか否かを検査する。かかる内部状態に達したことが検
出されれば、検証対象の同期式順序回路での内部状態の
うち、q8とq9に相当する内部状態に初期状態から到達可
能であることを確認できたことになる。
て、従来の記号モデル検査法の処理手順を示した概念図
である図2の例を用いて、本発明での論理シミュレーシ
ョンについて説明する。
においては、q8とq9に相当する内部状態に初期状態から
到達可能であることを確認するためには、最低4ステッ
プのシミュレーションが必要である。
当する内部状態のいずれかに初期状態から到達可能であ
ることの確認は、最低2ステップのシミュレーションで
可能である。
は、ランダムパタンあるいは設計者が作成する入力パタ
ンでは到達が困難である場合が多いが、短いステップで
到達可能な状態には、高い確率で到達可能である。
は、従来の記号モデル検査法によるプロパティ検証方法
が処理時間や使用メモリ量の制限のため検証不可能であ
るような場合に対し、短い時間あるいは高い確率でプロ
パティ検証を可能とすることができる。
ル検査法によるプロパティ検証方法が処理時間や使用メ
モリ量の制限のため検証不可能であるような場合であっ
ても検証ができることである。
ョンにより検証対象の順序回路が機能仕様を満たすか否
かを証明する内部状態に初期状態から到達可能であるこ
とを短時間で確認できる事である。
を示したフローチャート図である。
を示した概念図である。
Claims (4)
- 【請求項1】 同期式順序回路が機能仕様を表すプロパ
ティを満たすか否かを検証するプロパティ検証方法にお
いて、 検証対象の前記同期式順序回路の動作を定義した記述お
よび検証対象のプロパティとして目的の回路内部状態へ
の到達可能性を表すCTL式を入力するステップと、 前記CTL式の真偽を判定する記号モデル検査法を実行す
るステップと、 前記記号モデル検査法が制限時間又は制限メモリ量内で
実行不可能な場合に、前記CTL式の真偽を判定するテス
トベンチを自動生成するステップと、 前記テストベンチを使用し、前記記号モデル検査法の結
果を補完する為の論理シミュレーションを実行するステ
ップと、 を備えることを特徴とするプロパティ検証方法。 - 【請求項2】 請求項1に記載のプロパティ検証方法で
の前記テストベンチにおいて、 前記記号モデル検査法の中間結果を活用して得られる情
報を利用して、前記目的の回路内部状態に到達可能な状
態集合群に到達したことを検出するステップと、 を更に備えることを特徴とするプロパティ検証方法。 - 【請求項3】 同期式順序回路が機能仕様を表すプロパ
ティを満たすか否かを検証するプロパティ検証装置にお
いて、 検証対象の前記同期式順序回路の動作を定義した記述お
よび検証対象のプロパティとして目的の回路内部状態へ
の到達可能性を表すCTL式を入力する手段と、 前記CTL式の真偽を判定する記号モデル検査法を実行す
る手段と、 前記記号モデル検査法が制限時間又は制限メモリ量内で
実行不可能な場合に、前記CTL式の真偽を判定するテス
トベンチを自動生成する手段と、 前記テストベンチを使用し、前記記号モデル検査法の結
果を補完する為の論理シミュレーションを実行する手段
と、 を備えることを特徴とするプロパティ検証装置。 - 【請求項4】 請求項3に記載のプロパティ検証装置で
の前記テストベンチにおいて、 前記記号モデル検査法の中間結果を活用して得られる情
報を利用して、前記目的の回路内部状態に到達可能な状
態集合群に到達したことを検出する手段と、 を更に備えることを特徴とするプロパティ検証装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001219343A JP4577475B2 (ja) | 2001-07-19 | 2001-07-19 | 同期式順序回路のプロパティ検証方法および装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001219343A JP4577475B2 (ja) | 2001-07-19 | 2001-07-19 | 同期式順序回路のプロパティ検証方法および装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003030270A true JP2003030270A (ja) | 2003-01-31 |
JP4577475B2 JP4577475B2 (ja) | 2010-11-10 |
Family
ID=19053361
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001219343A Expired - Lifetime JP4577475B2 (ja) | 2001-07-19 | 2001-07-19 | 同期式順序回路のプロパティ検証方法および装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4577475B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100456308C (zh) * | 2004-09-30 | 2009-01-28 | 株式会社理光 | 断言产生系统、电路验证系统以及断言产生方法 |
JP2009116643A (ja) * | 2007-11-07 | 2009-05-28 | Nec Corp | 検査時間制御装置、方法、およびプログラム |
US7676777B2 (en) | 2006-03-28 | 2010-03-09 | Fujitsu Microelectronics Limited | Method and apparatus for supporting verification, and computer product |
US7823101B2 (en) | 2007-02-23 | 2010-10-26 | Fujitsu Limited | Device, method, and storage for verification scenario generation, and verification device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06208601A (ja) * | 1993-01-11 | 1994-07-26 | Hokuriku Nippon Denki Software Kk | 論理検証方式 |
JP2000181939A (ja) * | 1998-12-17 | 2000-06-30 | Fujitsu Ltd | 論理装置の検証方法、検証装置及び記録媒体 |
JP2000305977A (ja) * | 1999-04-26 | 2000-11-02 | Hitachi Ltd | 論理データの検証方法、該論理検証方法を実行する論理検証システム及び前記論理検証方法を実行するプログラムを記憶した記録媒体 |
JP2002099584A (ja) * | 2000-09-25 | 2002-04-05 | Toshiba Corp | 設計検証システム、設計検証方法および設計検証プログラムを格納したコンピュータ読取り可能な記録媒体 |
-
2001
- 2001-07-19 JP JP2001219343A patent/JP4577475B2/ja not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06208601A (ja) * | 1993-01-11 | 1994-07-26 | Hokuriku Nippon Denki Software Kk | 論理検証方式 |
JP2000181939A (ja) * | 1998-12-17 | 2000-06-30 | Fujitsu Ltd | 論理装置の検証方法、検証装置及び記録媒体 |
JP2000305977A (ja) * | 1999-04-26 | 2000-11-02 | Hitachi Ltd | 論理データの検証方法、該論理検証方法を実行する論理検証システム及び前記論理検証方法を実行するプログラムを記憶した記録媒体 |
JP2002099584A (ja) * | 2000-09-25 | 2002-04-05 | Toshiba Corp | 設計検証システム、設計検証方法および設計検証プログラムを格納したコンピュータ読取り可能な記録媒体 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100456308C (zh) * | 2004-09-30 | 2009-01-28 | 株式会社理光 | 断言产生系统、电路验证系统以及断言产生方法 |
US7676777B2 (en) | 2006-03-28 | 2010-03-09 | Fujitsu Microelectronics Limited | Method and apparatus for supporting verification, and computer product |
US7823101B2 (en) | 2007-02-23 | 2010-10-26 | Fujitsu Limited | Device, method, and storage for verification scenario generation, and verification device |
JP2009116643A (ja) * | 2007-11-07 | 2009-05-28 | Nec Corp | 検査時間制御装置、方法、およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP4577475B2 (ja) | 2010-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Pastor et al. | Petri net analysis using boolean manipulation | |
JP4028107B2 (ja) | 分解及び分割によるハードウェアの検証並びに表現方法 | |
US5331568A (en) | Apparatus and method for determining sequential hardware equivalence | |
US7302417B2 (en) | Method and apparatus for improving efficiency of constraint solving | |
US6567959B2 (en) | Method and device for verification of VLSI designs | |
US7222317B1 (en) | Circuit comparison by information loss matching | |
JPH0760324B2 (ja) | シーケンシャル回路及びその生成方法、及びコントローラ及び有限状態マシン | |
US5491639A (en) | Procedure for verifying data-processing systems | |
JP2000181939A (ja) | 論理装置の検証方法、検証装置及び記録媒体 | |
US20030115559A1 (en) | Hardware validation through binary decision diagrams including functions and equalities | |
US8219376B2 (en) | Verification using directives having local variables | |
JPH09190464A (ja) | 集積回路の電力評価方法 | |
US20020123867A1 (en) | Sharing information between instances of a propositional satisfiability (SAT) problem | |
Plaza et al. | Node mergers in the presence of don't cares | |
Di Guglielmo et al. | Semi-formal functional verification by EFSM traversing via NuSMV | |
JP2000207440A (ja) | 半導体集積回路の設計検証装置、方法及び記憶媒体 | |
US8881075B2 (en) | Method for measuring assertion density in a system of verifying integrated circuit design | |
Van Eijk et al. | Detection of equivalent state variables in finite state machine verification | |
US20020055829A1 (en) | High level verification of software and hardware description and sharing resources among concurrent processes | |
JP2003030270A (ja) | 同期式順序回路のプロパティ検証方法および装置 | |
CN111797588A (zh) | 一种形式验证比较点匹配方法、系统、处理器及存储器 | |
Moondanos et al. | CLEVER: Divide and conquer combinational logic equivalence verification with false negative elimination | |
Brayton et al. | A toolbox for counter-example analysis and optimization | |
US8352234B2 (en) | Model generation based on a constraint and an initial model | |
CN109933948B (zh) | 一种形式验证方法、装置、形式验证平台及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20040421 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080417 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080611 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100308 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100310 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100507 |
|
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: 20100728 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100810 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130903 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4577475 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
EXPY | Cancellation because of completion of term |