JP2000057123A - 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体 - Google Patents

順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体

Info

Publication number
JP2000057123A
JP2000057123A JP22577098A JP22577098A JP2000057123A JP 2000057123 A JP2000057123 A JP 2000057123A JP 22577098 A JP22577098 A JP 22577098A JP 22577098 A JP22577098 A JP 22577098A JP 2000057123 A JP2000057123 A JP 2000057123A
Authority
JP
Japan
Prior art keywords
state
variable
bdd
next state
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
Application number
JP22577098A
Other languages
English (en)
Other versions
JP3741544B2 (ja
Inventor
Hiroyuki Higuchi
博之 樋口
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 JP22577098A priority Critical patent/JP3741544B2/ja
Publication of JP2000057123A publication Critical patent/JP2000057123A/ja
Application granted granted Critical
Publication of JP3741544B2 publication Critical patent/JP3741544B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

(57)【要約】 【課題】 BDDの変数順の変更によるBDDの簡単化
をより高速に行うとともに、スケジューリングを不要と
すること。 【解決手段】 次状態関数のBDDと初期状態を入力し
た後(ステップS1)、次状態の変数が導入されるとき
に、次状態の位置を決定し、指定位置に次状態を生成し
ながら像計算を行う(ステップS2)。次に既到達状態
集合のBDDと、次状態関数のBDDを次状態集合の変
数順に合わせ(ステップS3)、次状態集合を既到達状
態集合に追加する(ステップS4)。そして、既到達状
態集合が不変になるまで上記処理を繰り返し、既到達状
態集合が不変になったら処理を終了する。次状態の変数
の決定方法として、例えばk個の位置の候補をあげ、B
DDのサイズが一番小さくなる位置を選択したり、一番
根に近い変数に隣接したより根に近い位置選択する等の
方法を用いることができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、順序回路の合成、
設計検証およびテストパタン生成等において行われる状
態探索の計算を効率的に行うための状態探索方法および
装置並びに状態探索プログラムを記録した記録媒体装置
に関する。
【0002】
【従来の技術】順序回路およびその抽象モデルである有
限状態機械(Finite State Machine;FSM)の状態を
探索する技術は、各種の論理設計支援技術、例えば、設
計検証、論理合成、テストパタン生成などにおいて極め
て重要である。近年の集積回路技術の進歩に伴い、より
大規模なシステムが論理回路として実現されるようにな
り、大規模なFSMに付する状態探索の効率化が望まれ
ている。FSMの状態探索は、与えられたFSMの状態
遷移グラフ上で初期状態から深さ優先探索や幅優先探索
などの古典的なグラフ探求アルゴリズムを用いても行う
ことができる。しかし、例えば、フリップフロップ(以
下FFという)数が30個の順序回路は、とり得る状態
数が最大230(約109 )個あり、それらの状態を一つ
一つ明示的に扱う古典的な方法では、現実的な時間です
べての到達可能状態の探索を行うことは不可能であっ
た。
【0003】1989年、状態集合を論理関数で表現
し、さらにその論理関数を二分決定グラフ(Binary Dec
ision Diagram ;BDD)により非明示的に表すことに
より、BDDの処理によるFSMの状態探索を行う方法
が考案された([1] O.Coudertand J.C.Madre Verifica
tion of sequential machines using boolean function
al vectors.In Proc.IFIP International Workshop on
Appried Formal Methods for Correct VLSI Desgin,pag
es 111-128,November 1989.参照)。BDDは実用的な
論理関数をコンパクトに表現できるため、この非明示的
処理により扱えるFSMの大きさは飛躍的に増大した。
しかし、二分決定グラフは、表現する論理関数の変数に
順序づけをしておく必要があり、さらに、変数の順序づ
けによりグラフのサイズが大きく依存するという性質が
ある。そのため、よい変数順をいかにして得るかが大き
な問題となった。
【0004】まず、組合せ回路からその出力関数を表す
BDDを生成する場合に、良い変数順を回路の結線情報
などから計算する方法が提案された。これらの方法によ
り、多くの回路に付して、より小さなBDDが得られる
ようになった。しかし、やはり計算の途中でBDDが爆
発することも多かった。さらに、FSMの状態探索にお
いては、次状態関数だけでなく、各像計算で得られる次
状態集合および到達した全ての状態集合など特徴の異な
る論理関数をBDDで表す必要があり、それら全てによ
い変数順をあらかじめ求めることは難しかった。
【0005】そこで、1993年、あらかじめ決めた変
数順を最後まで固定にするのではなく、計算の途中でB
DDが爆発しかけると、その時点でのよい変数順を求め
直し、変数順を変えるという動的変数順序づけ法が提案
された([2] R.Rudell.Dynamic variable ordering for
ordered binary decision diagrams.In Proceedingsof
IEEE/ACM International Conference on CAD-93,pages
42-47,November 1993. 参照)。以降、BDDを計算す
る前に決める変数順序づけを静的変数順序づけと呼ぶ。
提案された動的変数順序づけは、実際に変数の順序を入
れ換えてみて、良い位置に変数を置くというもので、問
題に依存することなく、BDDを用いるどのような応用
に対しても適用することができる。
【0006】FSMの状態探索においても、静的変数順
序づけではBDDが爆発していた多くの問題に対して、
動的変数順序づけを用いることによりBDDのサイズを
処理可能な程度に削減することができた。しかし、動的
変数順序づけは、実際にBDD中で変数を移動させるこ
とにより、よい変数順を求めるため、たいへん多くの計
算時間を必要とした。また、移動途中でBDDが爆発し
てしまうこともあり、これらの点が問題とされた。さら
に、動的変数順序づけではある時点で変数順の入れ換え
を一度に行うため、いつの時点で入れ換えを行うかのス
ケジューリングが難しいという実用上の問題もあった。
【0007】以下二分決定グラフと二分決定グラフによ
る集合の表現、二分決定グラフを用いたFSMの状態探
索について説明する。 (1)二分決定グラフ 計算機での論理関数の表現法としては、真理値表、積和
形論理式、ファクタードフォーム、二分決定グラフ(B
DD)などがある。このうちBDDは、良い変数順を与
えることができれば、大きな論理関数を表現することが
できる。BDDは、図18(a)に示すような二分決定
木において場合分けする変数順を全てのパスで固定し、
さらに等価な部分グラフの共有と冗長なノードの削除を
行ったものである。この縮約により論理関数がコンパク
トに表現できるようになるとともに、正規形となる。す
なわち同一の論理関数は同一のBDDとなる。例えば、
図18(b)の関数に、x1 =1,x2 =0,x3 =0
を代入したときの値は、図のBDDの根(一番上の矢
印)から1,0,0の枝を順にたどると葉1に到達する
ので、値が1であることがわかる。
【0008】BDDを用いた論理関数の演算として、通
常用いられる論理和(+)、論理積(・;ただし、論理
積の・は省略する場合もある)、論理否定(上横バー、
本文では必要に応じて (’) で表現する)、排他的論理
和(丸の中に+:本文中では必要に応じて (EOR)で表現
する:x(EOR) y=x・y' +x' ・y)、等価演算
(≡;x≡y=x・y+x' ・y' )を用いる。なお、
以下の式ではベクトルを記号の上に(→)を付して示す
が、本文中では(ベクトル)と表記する。また、上記表
現の他に、smoothing 演算を用いる。論理関数:f:B
n →Bの入力変数のある部分集合がx(ベクトル)=
{x1,x2,…,xk }であるとき、Fのx(ベクト
ル)に関するsmoothing (existential quantificatio
n)∃x(ベクトル)を以下の(1)(2)式のように
定める。
【0009】
【数1】
【0010】BDDはその変数順によりグラフのサイ
ズ、すなわちノード数が大きく変化するという性質があ
る。例えば関数f=x1 ・x2 +x3 ・x4 を表すBD
Dについて、変数順が最適な場合と最悪な場合を示すと
図19のようになる。最適な変数順では同図(a)に示
すようにノード数が4なのに付して、最悪な変数順では
同図(b)に示すようにノード数が6になっている。た
だし、ここではノード数に葉のノード数は含めない。一
般に、最適変数順と最悪変数順のノード数の差は、表す
関数の変数の数が大きくなるほど大きくなる。上記の関
数fで変数が6つになった場合、すなわち、f=x1 ・
x2 +x3 ・x4 +x5 ・x6 の場合、最適変数順、最
悪変数順それぞれでのBDDのサイズは6および14と
なり倍以上の差となる。
【0011】(2)二分決定グラフによる集合の表現 n変数論理関数f:Bn →Bは、fを1にする入力ベク
トルの集合、すなわち最小項の集合と見ることができ
る。ある2値ベクトルの集合S⊆Bn に対して、次の
(3)式で表されるn変数論理関数χs を集合Sの特徴
関数とよぶ。
【0012】
【数2】
【0013】したがって、ある2値ベクトルの集合Sに
付し、Sの特徴関数をBDDで表現すれば、SがBDD
で表現できたことになる。この表現は集合のBDDによ
る非明示的表現とも呼ばれる。例えば、ある2値ベクト
ルの集合S={000,010,100,110,111 }に対する特徴関
数は、iビット目に変数xi を割り当てるとすると、χ
s =x1 ・x2 +x3'となる。すなわち、上記2値ベク
トルの集合Sの任意のベクルトに対し、そのベクトルで
の変数xi (i=1,2,3)の値を上記式に代入した
ときχs =1となり、このような関数χs を特徴関数と
いう。また、この特徴関数を表現するBDDは前記図1
8(b)に示したようになる。
【0014】(3)二分決定グラフを用いたFSMの状
態探索 FSMの状態探索とは、ある与えられた初期状態あるい
は初期状態の集合から、ある入力系列により到達するこ
とのできる状態を全て探索することをいう。状態探索
は、与えられたFSMの状態遷移グラフ上て初期状態か
ら可能な全ての遷移をたどっていく処理に基づいて行う
ことができる。FSMが大規模な場合、これらの遷移数
が膨大となるため、状態一つ一つの遷移を順に調べる方
法では現実的な時間で探索を完了することが不可能であ
る。そこで、二分決定グラフを用いた状態探索では、多
くの状態を一まとめにしてそれらの遷移を同時に調べ、
その次状態の集合を求める処理に基づいて行う。この処
理では、膨大な状態遷移グラフを直接作る必要はなく、
各状態変数に対する次状態関数、すなわち、各人力と現
状態に付してその状態変数が次状態でとるべき値を計算
する論理関数を表すBDDを作り、それらのBDDと次
状態を求めたい状態集合を表すBDDどうしの演算によ
って次状態の集合を表すBDDを求める。
【0015】BDDの演算は次のように行われる。例え
ば、2つの論理関数f=x1 x2 ,g=x1 +x2 がB
DDで表されているとき、その論理積のBDDは以下の
ように求まる。変数順がx1 ,x2 のとき、f,gを表
すBDDは図20(a)(b)に示すようになる。ここ
で、(f・g)=xi'・(fx1' ・gx1' )+xi ・
(fx1・gx1)が成り立つので、f・gのBDDは、同
図(c)に示すように、一番根に近い変数x1 の0枝が
指すBDDがfx1' ・gx1' 、1枝が指すBDDがfx1
・gx1となる。
【0016】したがって、fx1' ・gx1' 、fx1・gx1
のBDDを作ることができれば、f・gのBDDも作る
ことができる。この例では、fx1' =0であるので、f
x1'・gx1' が0であることがわかり、そのBDDは同
図(d)の通りである。また、gx1=1であるので、f
x1・gx1=fx1=x2 となり、そのBDDは同図(e)
の通りである。その結果、f・gのBDDは、同図
(f)のようになる。ここで、fx1,gx1とも定数でな
い場合には、変数x2 に対して、図19(c)と同様な
展開を行う。これを高々変数の数だけ繰り返せば必ず定
数ノードに至るので、積のBDDを生成することができ
る。
【0017】以下、例により二分決定グラフを用いた状
態探索を説明する。ここで、一例として、図21のよう
な状態遷移表をもつFSM Mについて考える。図21
において、現状態の前の”→”は初期状態を表す。この
状態遷移図を持つ順序回路Mは図22の通りである。図
22において、白丸はNOTゲート(否定演算)を表す
ものとする。なお、本計算では外部出力は考慮しないた
め、それに関する部分は図21、図22においては省略
している。
【0018】図22に示す順序回路Mにおいて、現状態
集合S={0010,0011 }の次状態集合は図21から明ら
かなように、{0110,1101,1110,1111 }である。状態集
合Sがその特徴関数により表現されているとき、次状態
関数ベクトルf(x,y)(f,x,yはベクトル)に
よる状態集合S(y)(yはベクトル)の像Img(f
(x,y),S(y))(f,x,yはベクトル)は以
下の(4)式のように関数処理により計算できる。ただ
し、x,y(x,yはベクトル)はそれぞれ入力変数お
よび現状態変数であるとする。また、FSM Mの次状
態関数は、(5)式〜(8)式である。
【0019】
【数3】
【0020】図21、図22に示したFSM Mの状態
集合Sの特徴関数はS=y1'y2'y3 であるので、Im
gの特徴関数は以下の(9)式のように計算できる。
【0021】
【数4】
【0022】現状態集合Sからの像計算ではSからの遷
移のみを考慮すればよいので、S以外からの遷移をドン
トケアとして関数fi を簡単化した関数fi |s をfi
の代わりに用いることもできる。すなわち、像計算に必
要な遷移のみを考慮して、像計算の間のみ一時的にフリ
ップフロップを削除して、簡単化した関数fi |s をf
i の代わりに用いる。なお、上記S以外からの遷移をド
ントケアとして関数fi を簡単化した関数fi |s を用
いる点については、本出願人が先に提案した特願平10
−60982号参照を参照されたい。
【0023】上記の計算を行う具体的な手続き、すなわ
ち現状態集合を表すBDD Sと次状態関数fi (i=
1,…,n)を表すBDDに対して像計算を行う手続き
を図23に示す。同図において、ステップS1におい
て、状態集合S〔例えば、前記(9)式においてはS=
y1'y2'y3 〕をToに入れる。次に、ステップS2に
おいて、未処理の次状態変数Yi を一つ選び、ステップ
S3において、Yiを表すBDDを生成する。ステップ
S4において、To(Yi ≡fi )を計算しToに入れ
る。例えば、前記(9)式の場合、一回目の計算におい
ては、y1'y2'y3 ・(Yi ≡fi )の計算を行う。こ
の計算は、y1'y2'y3 、Yi 、fi をそれぞれBDD
で表し、前記図20で説明したようにBDD同士の演算
により行われる。
【0024】次に、ステップS5において、まだ消去し
ていない入力変数および現状態変数で、未処理の次状態
関数のどれもが依存していない変数の集合v(vはベク
トル)を求める。すなわち、Toが依存する変数(To
の式中に現れる変数)の中でまだ選択されていない次状
態関数のどれにも現れない変数の集合v(vはベクト
ル)を求める。ステップS6において、∃v.To(v
はベクトル)を求めToに入れる。次いでステップS7
において、選ばれていないYi が存在するか否か調べ、
存在している場合にはステップS2に戻り上記処理を繰
り返す。また、選ばれていないYi が存在しない場合に
は処理を終了する。像計算は、幅優先探索の1ステップ
に対応するため、初期状態からはじめて、新しく到達し
た状態がなくなるまで像計算を繰り返すことによりすべ
ての到達可能状態が関数処理により求まる。
【0025】図24に基本的な状態探索の手続きを示
す。同図に示すように到達可能状態計算は次のように行
われる。まず、ステップS1において、次状態関数のB
DDと初期状態を入力する。ここで、次状態関数fi
(i=1,....,n)は、図22の例ではフリップフロッ
プはF1,F2,F3,F4の状態を表し、これに対応
する次状態関数はf1 ,f2 ,f3 ,f4 である。ま
た、状態遷移表は前記図21の通りである。また、初期
状態を(y1 y2 y3 y4 )={0000}であるとす
る。ステップS2において、From←{0000}、
Reached←{0000}に設定する。ここで、F
romは像計算の遷移元の状態の集合、Reached
は到達した状態の全ての集合を表す。ステップS3にお
いて、前記図23に示した処理手順で次状態関数fi
(i=1,....,n)によるFromの像To(1遷移で
到達可能な状態の集合)を計算する。
【0026】ステップS4において、上記像ToをRe
achedに加え、ステップS5において、Reach
edが不変であるかを調べる。Reachedが不変で
あれば、到達可能な全ての状態の集合が求まったので処
理を終了する。また、Reachedが一回前のRea
chedと異なる場合には、ステップS7において、前
記像ToをFromに入れて、ステップS3に戻り上記
処理を繰り返す。図23のステップS2で生成する次状
態変数の変数順に関しては、状態探索中どの像計算でも
固定された位置に置かれる。通常、一つの現状態と対応
する次状態を組にし、その現状態変数の直下に置かれる
ことが多い。これは、一般的に、現状態変数とそれに対
応する次状態変数には何らかの依存関係があることが多
いことと、図24のステップS6のように像計算のあ
と、次状態変数の関数Toを現状態変数の関数From
に置き扱える時、次状態が現状態の直下にある方が処理
が速いことによる。
【0027】
【発明が解決しようとする課題】前記したように、BD
Dは、表現する論理関数の変数に順序づけをしておく必
要があり、さらに、変数の順序づけによりグラフのサイ
ズが大きく依存するという性質がある。従来の状態探索
においては、上記したように通常、次状態変数の変数順
は状態探索中どの像計算でも固定された位置に置かれる
ことが多かった。また、前記したように、計算の途中で
BDDが爆発しかけると、変数順を変えるという動的変
数順序づけ法が提案されたが、動的変数順序づけは、実
際にBDD中で変数を移動させることにより、よい変数
順を求めるため、たいへん多くの計算時間を必要とし
た。また、いつの時点で入れ換えを行うかのスケジュー
リングが難しいという実用上の問題もあった。
【0028】本発明は上記した事情に鑑みなされたもの
であって、本発明の目的は、順序回路の状態探索におい
て、大規模、かつ複雑な有限状態機械の状態探索に不可
欠であるが多くの時間を必要としていたBDDの変数順
の変更によるBDDの簡単化をより高速に行うととも
に、従来の方法で実用上問題となっていたスケジューリ
ングを不要とすることである。
【0029】
【課題を解決するための手段】本発明では、状態探索の
計算において、次状態の変数が生成される時にその適切
な位置を計算し、その位置に変数を生成することによ
り、BDDの変数順の変更を行う。この方法により、像
計算の途中でBDDの変数入れ換えを行うことなく変数
順の変更が行えるため、変数順の変更に伴う計算時間の
オーバーヘッドが軽減される。さらに、次状態変数生成
のタイミングで変数入れ換えを行うことにより、変数順
変更のスケジューリングが不要となる。
【0030】図1は本発明のBDD簡単化方法を用いた
状態探索方法の原理説明図である。図1に示すように、
本発明においては次のようにして順序回路の状態探索を
行う。 (i) 次状態関数のBDDと初期状態を入力する(ステッ
プS1)。 (ii)次状態の変数が導入されるときに、BDD中での位
置を決定し、指定位置に次状態を生成しながら像計算を
行う(ステップS2)。 (iii) 既到達状態集合のBDDと、次状態関数のBDD
を次状態集合の変数順に合わせる(ステップS3)。 (iv)次状態集合を既到達状態集合に追加する(ステップ
S4)。 (v) 既到達状態集合が不変になるまで上記(ii)〜(iv)の
処理を繰り返し、既到達状態集合が不変になったら処理
を終了する(ステップS5からステップS2)。
【0031】上記(ii)において、次状態の変数の位置は
次のようにして決定することができる。 k個の位置の候補をあげ、それぞれの位置にしたと
きの二分決定グラフのサイズを計算し、そのサイズが一
番小さくなる位置を選択する。 二分決定グラフにおける次状態の変数の位置とし
て、その一番根に近い変数に隣接したより根に近い位
置、もしくは、一番葉に近い変数に隣接した、より葉に
近い位置を選択する。 次状態の変数の位置として、直前に導入した次状態
変数の位置に隣接した位置を選択する。 また、像計算を行うに際し、前記したように、現状態集
合以外からの遷移をドントケアとして簡単化した関数の
二分決定グラフを用いることができる。
【0032】図2は本発明の状態探索装置の原理説明図
である。本発明の状態探索装置は、図2に示すように、
次状態関数のBDDと初期状態を入力する入力手段1、
指定位置に次状態を生成しながら像計算を行う手段2、
次状態の位置計算手段3、既到達状態集合のBDDと次
状態関数のBDDを次状態集合の変数順に合わせる手段
4、次状態集合を既到達状態集合に加える手段5、出力
手段6を備えており、上記手段2〜5による処理を既到
達状態集合が不変になるまで繰り返し、到達可能状態情
報を得る。上記次状態の位置計算手段3は、上記〜
のようにして、次状態の変数の位置を決定する。また、
像計算を行うに際し、前記したように現状態集合以外か
らの遷移をドントケアとして簡単化した関数の二分決定
グラフを用いるようにすることができる。以上のように
本発明においては、次状態の変数が生成される時にその
適切な位置を計算し、その位置に変数を生成することに
より、BDDの変数順の変更を行っているので、BDD
の変数順の変更によるBDDの簡単化をより高速に行う
ことができるともに、変数順の入れ換えのスケジューリ
ングが不要となる。
【0033】
【発明の実施の形態】以下、図面を参照しながら、本発
明の実施の形態について詳細に説明する。図3は、本発
明の実施例のFSMの状態探索装置の構成図である。図
3に示す状態探索装置は、入出力装置11、演算処理装
置12、記憶装置13、およびこれらの各装置を接続す
るバス20を備える計算機システムで構成する。入出力
装置11は、例えばキーボードやマウスなどの入力装置
とディスプレイ装置からなる計算機端末であり、次状態
関数のBDDや初期状態の入力や計算された到達可能状
態の情報の出力などを行う。
【0034】演算処理装置12は、例えばCPU(中央
処理装置)であり、記憶装置13に記憶されたデータを
用いて、記憶装置13に格納された各種のプログラムを
実行し、演算などを行う。記憶装置13には、指定位置
に次状態を生成しながら像計算を行うルーチン14、次
状態の位置を決定する次状態位置計算ルーチン15、既
到達状態集合のBDDを次状態集合の変数順に合わせる
ルーチン16、次状態集合を既到達集合に追加するルー
チン17が格納され、これらのルーチンを実行し、状態
探索を行う。
【0035】次に、図4および図5を参照しながら、本
発明の実施例の計算処理について、前記図21、図22
に示したFSM Mを用いて具体的に説明する。図4
は、本実施例における像計算処理のフローチャート、図
5は本実施例における像計算を利用した状態探索処理の
フローチャートである。まず、図5のステップS1にお
いて、次の(10)〜(13)式に示す次状態関数のB
DDと初期状態を入力する。
【0036】
【数5】
【0037】この例では初期状態を(y1 y2 y3 y4
)=(0000)であるとする。また、BDDの初期
変数順は<x,y1 ,y2 ,y3 ,y4 >であるとす
る。図5のステップS2では、初期状態(0000)に
対応する特徴関数y1'y2'y3'y4'を表すBDDをFR
OM,REACHEDに設定する。なお、FROMは現
状態集合を表すBDD、REACHEDは今まで到達し
た状態すべての集合、すなわち既到達状態集合を表すB
DDである。ステップS3からステップS7までのルー
プにより到達可能状態の探索を行う。ループの1回分は
1回の像計算に対応し、新しい到達可能状態が見つから
なくなるまで(ステップS6の判定)この操作を繰り返
す。ステップS3では、本発明の手法による像計算を行
う。この計算は図4に従って計算される。
【0038】図4において、まず、SとしてFROM=
y1'y2'y3'y4'が与えられる。図4のステップS3.
1でTo=S=y1'y2'y3'y4'となる。ステップS
3.2では、FROM以外の状態からの遷移を前記した
ようにドントケア(値は何でもよい)として、f1 を簡
単化する。ドントケア値を" * ”としたときの状態遷移
図は図6となるので、f|FROM(fはベクトル)は以下
の(14)〜(17)式のように簡単化できる。
【0039】
【数6】
【0040】図4のステップS3.3では未処理の次状
態変数が一つ選択される。例えば、Y1 が選択されたと
する。ステップS3.4でY1 のBDDでの適切な位置
を決定する。位置の決定法としては、従来のyi の直下
に置く( これを位置Aとする)方法以外に、本発明で
は、f1 |FROMのBDDの変数の位置や直前に処理した
Yi+1 の位置情報を用いてYi の良い位置を推定する。
例えば、ここでは、「f1 |FROMのBDDの一番葉に近
い変数ノードの直下の位置(これを位置Bとする)に置
く」場合を考え、その場合のToのBDDが従来のyi
の直下に置く場合と比較して小さい場合には、Yi を位
置Bに置く方法を提案する。位置Bは、Yi ≡fi のB
DDが最も小さくなる位置であり、かつ依存変数の似た
関数、すなわち依存関係がある可能性がある関数を近く
に置くことができる。
【0041】例では、f1 |FROM=0のBDDで一番葉
に近い変数ノードの直下をY1 の位置とするが、この場
合、f1 |FROM=0のBDDは定数0のノードしかない
ので、他のどのノードよりも葉に近いところをY1 の位
置とする。再び図4に戻り、ステップS3.5で、その
位置のノードを生成する。現時点でのTo,f1 |s
Yi のBDDを図7(a)〜(c)に示す。ステップS
3.6の結果、To=Y1'y1'y2'y3'y4'となり、そ
のBDDは図7(d)のようになる。ステップS3.7
では、f2 |FROM、f3 |FROM、f4 |FROMはxにしか
依存していないので、v(ベクトル)=(y1 ,y2 ,
y3 ,y4 )となる。従って、ステップS3.8では、
Toは次の(18)式のようになる。また、結果のBD
Dは図7(e)のようになる。
【0042】
【数7】
【0043】一方、Y1 を位置AにしたときのToは図
7(f)の通りである。位置Aのときと位置Bのときと
で、BDDのサイズは変わらないので、Y1 に対しては
位置Aが選択される。同様にY2 ,Y3 ,Y4 について
も順に処理すると、それぞれにおいて、生成されるBD
Dは図8、図9、図10に示すようになる。なお、この
場合も、図8〜図10に示すように、ステップS3.8
後のToは位置Aでも位置Bでも同じである。したがっ
て、一回目の計算終了後、Toとして次の(19)式を
得る。これで、1回目の像計算が終了し、図5のステッ
プS4に移る。今の変数順は変わらないので、ステップ
S4では何もしない。ステップS5で、次状態集合を現
状態変数のBDDにしてから既状態集合に加える。すな
わち、Reachedは次の(20)式のようになる。
【0044】
【数8】
【0045】この場合はReachedが変化している
ので、ステップS7でToを現状態関数にしてから、F
rom=To=y1'y2'y3 として、2回目の像計算に
移る。2回目の像計算は、1回目の像計算と同様にし
て、今回は状態遷移関数のドントケアが図11のように
なるため、簡単化したfi は以下の(21)〜(24)
式のようになる。
【0046】
【数9】
【0047】2回目の像計算も、1回目の像計算と同様
に行う。Y1 ,Y2 ,Y3 ,Y4 が順に選ばれたときの
BDDの様子を図12〜図15に示す。図12(d)
(e)に示すように、状態Y1 に対しては、位置Bのと
きのToのBDDのサイズが4であり、位置Aのときの
サイズが5なので、この場合は位置Bが選ばれる。ま
た、図13(d)(e)に示すように、状態Y2 に対し
ては、位置BのときのBDDのサイズが5であり、位置
Aのときのサイズが6なので、位置Bが選ばれる。状態
Y3 に対しても、図14(d)に示すように、位置A,
BともBDDのサイズが同じなので、ここでは位置Aを
選択しておく。状態Y4 に対しても、図15(d)に示
すように位置A,Bとも同じサイズなので、ここでは位
置Aを選択しておく。
【0048】従って、像計算の結果、BDDの変数順は
<x,Y3 ,Y4 ,Y1 ,Y2 >となる。像計算の前の
変数順と変わっていることに注意されたい。従来の動的
変数順序づけを用いても変数順を変えることはできる
が、その場合、実際に各変数について位置を上から下ま
で移動したBDDを作っていき、一番良い位置を求める
必要があった。本実施例の方法では、像計算中はこのよ
うな移動を全く行わずに変数順を変えることができる。
以上の像計算の結果、次状態集合Toは次の(25)式
のようになる。
【0049】
【数10】
【0050】上記ToのBDDを図16(a)に示す。
また、比較のため、2回目の像計算の前での変数順<Y
1 ,Y2 ,Y3 ,Y4 > のままにしたときのToのB
DDを図16(b)に示す。このことから、本実施例の
BDDの最小化によりサイズが6から4に減っているこ
とがわかる。このように本発明の手法は像計算ごとにそ
の像計算に適した異なる変数順にするためBDDのサイ
ズをコンパクトに保つことができる。一方、従来の動的
変数順ではBDDがある程度大きくなってから変数順の
入れ扱えを一度に行うため、サイズの大きなBDDの演
算が必要になりさらに多くの時間を要する。
【0051】これで2回目の像計算が終了し、前記図5
のステップS4に移る。Reachedとf(ベクト
ル)のBDDの変数順をToに合わせて<x,y3 ,y
4 ,y1 ,y2 >としておく。ステップS5で、次状態
集合を現状態集合のBDDにしてから既到達状態集合に
加える。すなわち、Reachedは次の(26)式と
なる。
【0052】
【数11】
【0053】以下、同様にしてReachedが変わら
なくなるまで、本発明の像計算を繰り返し行うことによ
り、全ての到達可能状態をコンパクトなBDDのまま計
算することができる。上記実施例では、次状態変数を位
置Aにおいた場合と位置Bにおいた場合のBDDのサイ
ズを比較して、サイズの小さい方の位置を選ぶ場合につ
いて説明したが、さらに複数の位置の候補を考え、それ
ぞれの位置にしたときのToのうち、一番サイズが小さ
くなる位置を選択するようにしてもよい。
【0054】また、次状態変数の位置決定法は、上記し
た方法の外に次のような方法を用いることができる。 f1 |FROMのBDDの一番根に近い変数ノードの直
上の位置をYi の位置とする。ただし、他の次状態変数
がすでにその位置に置かれている場合には、その位置を
要求した変数の下に置く。この方法を採用した場合、例
えば、前記図12は、図17に示すようになる。同図に
示すように、f1 |s の一番根に近い変数はxであるの
で、その直上をY1 の位置とすると、図4のステップS
3.8後のToは同図(d)に示すようになる。 前記したように、f1 |FROMのBDDの一番葉に近
い変数ノードの直下の位置をYi の位置とする。ただ
し、他の次状態変数がすでにその位置に置かれている場
合には、その位置を要求した変数の中で一番下に置く。 直前に処理した次状態変数Yi-1 の直下におく。
【0055】
【発明の効果】以上説明したように、本発明において
は、次状態の変数が生成される時にその適切な位置を計
算し、その位置に変数を生成することによりBDDの変
数順の変更を行っているので、BDDの変数順の変更に
よるBDDの簡単化をより高速に行うことができる。ま
た、変数順の入れ換えのスケジューリングが不要とな
る。
【図面の簡単な説明】
【図1】本発明の状態探索方法の原理説明図である。
【図2】本発明の状態探索装置の原理説明図である。
【図3】本発明の実施例のFSMの状態探索装置の構成
図である。
【図4】本発明の実施例における像計算処理のフローチ
ャートである。
【図5】本発明の実施例における像計算を利用した状態
探索処理のフローチャートである。
【図6】1回目の像計算でのドントケア値を" * ”とし
たときの状態遷移図である。
【図7】1回目の像計算のY1 に関するBDDを示す図
である。
【図8】1回目の像計算のY2 に関するBDDを示す図
である。
【図9】1回目の像計算のY3 に関するBDDを示す図
である。
【図10】1回目の像計算のY4 に関するBDDを示す
図である。
【図11】2回目の像計算でのドントケア値を" * ”と
したときの状態遷移図である。
【図12】2回目の像計算のY1 に関するBDDを示す
図である。
【図13】2回目の像計算のY2 に関するBDDを示す
図である。
【図14】2回目の像計算のY3 に関するBDDを示す
図である。
【図15】2回目の像計算のY4 に関するBDDを示す
図である。
【図16】2回目の像計算の結果のBDDを示す図であ
る。
【図17】f1 |FROMの一番根に近い変数ノードの直上
の位置をYi の位置とした場合のBDDを示す図であ
る。
【図18】2分木決定グラフ(BDD)を説明する図で
ある。
【図19】変数順によるBDDのサイズの変化を説明す
る図である。
【図20】BDDでの論理演算を説明する図である。
【図21】FSM Mの状態遷移表を示す図である。
【図22】FSM Mに対応する順序回路を示す図であ
る。
【図23】Sと次状態関数fi を表すBDDに対して像
計算を行う従来の手続きを示す図である。
【図24】従来の非明示的な状態探索の手続きを示す図
である。
【符号の説明】
1 入力手段 2 像計算を行う手段 3 次状態の位置計算手段 4 変数順を合わせる手段 5 次状態集合を既到達状態集合に加える手段 6 出力手段 11 入出力装置 12 演算処理装置 13 記憶装置 20 バス 14 像計算を行うルーチン 15 次状態位置計算ルーチン 16 変数順を合わせるルーチン 17 次状態集合を既到達集合に追加するルーチン
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) H01L 21/82 C

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 順序回路およびその抽象モデルである有
    限状態機械の初期状態から像計算を繰り返すことにより
    到達可能状態をすべての求める状態探索方法てあって、 順序回路およびその抽象モデルである有限状態機械のあ
    る状態集合を表す二分決定グラフから、それらの状態の
    次状態全てからなる次状態集合を表す二分決定グラフを
    生成するための像計算を行うに際し、 次状態の変数が導入される時に、その二分決定グラフ中
    での位置を決定し、その位置に上記変数を置いていくこ
    とにより、像の二分決定グラフを生成している最中およ
    び生成後のグラフのサイズが小さくなるように変数順を
    決定することを特徴とする順序回路の状態探索方法。
  2. 【請求項2】 順序回路およびその抽象モデルである有
    限状態機械の初期状態から像計算を繰り返すことにより
    到達可能状態をすべての求めるに際し、像計算ごとに異
    なる変数順で二分決定グラフの計算を行うことを特徴と
    する請求項1の順序回路の状態探索方法。
  3. 【請求項3】 次状態の変数の決定法として、k個の位
    置の候補をあげ、それぞれの位置にしたときの二分決定
    グラフのサイズを計算し、そのサイズが一番小さくなる
    位置を選択することを特徴とする請求項1または請求項
    2の順序回路の状態探索方法。
  4. 【請求項4】 二分決定グラフにおける次状態の変数の
    位置として、その一番根に近い変数に隣接したより根に
    近い位置、もしくは、一番葉に近い変数に隣接した、よ
    り葉に近い位置を選択することを特徴とする請求項1ま
    たは請求項2の順序回路の状態探索方法。
  5. 【請求項5】 次状態の変数の位置として、直前に導入
    した次状態変数の位置に隣接した位置を選択することを
    特徴とする請求項1または請求項2の順序回路の状態探
    索方法。
  6. 【請求項6】 順序回路およびその抽象モデルである有
    限状態機械のある状態集合を表す二分決定グラフから、
    それらの状態の次状態全てからなる次状態集合を表す二
    分決定グラフを生成するための像計算を行うに際し、 現状態集合以外の部分を考慮しないようにして次状態関
    数の二分決定グラフを簡単化した関数の二分決定グラフ
    を用いることを特徴とする請求項1,2,3,4または
    請求項5の順序回路の状態探索方法。
  7. 【請求項7】 順序回路およびその抽象モデルである有
    限状態機械のある状態集合を表す二分決定グラフから、
    それらの状態の次状態全てからなる次状態集合を表す二
    分決定グラフを生成するための像計算を行い、順序回路
    の状態探索を行う状態探索装置であって、 次状態関数と、二分決定グラフの初期状態を入力する入
    力手段と、 次状態の変数の位置を決定する計算手段と、該計算手段
    により決定した次状態の位置に次状態を生成しながら像
    計算を行う手段と、 既到達状態集合の二分決定グラフと、次状態関数の二分
    決定グラフを次状態集合の変数順に合わせる手段と、 次状態集合を既到達状態集合に加える手段とを備えたこ
    とを特徴とする順序回路の状態探索装置。
  8. 【請求項8】 次状態の変数の位置を決定する計算手段
    は、像計算毎に異なる変数順を決定することを特徴とす
    る請求項7の順序回路の状態探索装置。
  9. 【請求項9】 次状態の変数の位置を決定する計算手段
    は、k個の位置の候補について、それぞれの位置にした
    ときの二分決定グラフのサイズを計算し、そのサイズが
    一番小さくなる位置を選択することを特徴とする請求項
    7または請求項8の順序回路の状態探索装置。
  10. 【請求項10】 次状態の変数の位置を決定する計算手
    段は、上記二分決定グラフにおける次状態の変数の位置
    として、その一番根に近い変数に隣接したより根に近い
    位置、もしくは、一番葉に近い変数に隣接した、より葉
    に近い位置を次状態の変数の位置とすることを特徴とす
    る請求項7または請求項8の順序回路の状態探索装置。
  11. 【請求項11】 次状態の変数の位置を決定する計算手
    段は、次状態の変数の位置として、直前に導入した次状
    態変数の位置に隣接した位置を、次状態の変数の位置と
    することを特徴とする請求項7または請求項8の順序回
    路の状態探索装置。
  12. 【請求項12】 像計算を行う手段は、現状態集合以外
    の部分を考慮しないようにすることにより次状態関数の
    二分決定グラフを簡単化した関数の二分決定グラフを用
    いて像計算を行うことを特徴とする請求項7,8,9,
    10または請求項11の順序回路の状態探索装置。
  13. 【請求項13】 順序回路およびその抽象モデルである
    有限状態機械の初期状態から像計算を繰り返すことによ
    り到達可能状態をすべての求めるための状態探索プログ
    ラムを記録した記録媒体であって、 上記状態探索プログラムは、順序回路およびその抽象モ
    デルである有限状態機械のある状態集合を表す二分決定
    グラフから、それらの状態の次状態全てからなる次状態
    集合を表す二分決定グラフを生成するための像計算を行
    うに際し、 次状態の変数が導入される時に、その二分決定グラフ中
    での位置を決定し、その位置に上記変数を置いていくこ
    とにより、像の二分決定グラフを生成している最中およ
    び生成後のグラフのサイズが小さくなるように変数順を
    決定することを特徴とする順序回路の状態探索プログラ
    ムを記録した記録媒体。
  14. 【請求項14】 順序回路およびその抽象モデルである
    有限状態機械の初期状態から像計算を繰り返すことによ
    り到達可能状態をすべての求めるに際し、像計算ごとに
    異なる変数順で二分決定グラフの計算を行うことを特徴
    とする請求項13の順序回路の状態探索プログラムを記
    録した記録媒体。
JP22577098A 1998-08-10 1998-08-10 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体 Expired - Fee Related JP3741544B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22577098A JP3741544B2 (ja) 1998-08-10 1998-08-10 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22577098A JP3741544B2 (ja) 1998-08-10 1998-08-10 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2000057123A true JP2000057123A (ja) 2000-02-25
JP3741544B2 JP3741544B2 (ja) 2006-02-01

Family

ID=16834533

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22577098A Expired - Fee Related JP3741544B2 (ja) 1998-08-10 1998-08-10 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3741544B2 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009505227A (ja) * 2005-08-09 2009-02-05 エヌイーシー ラボラトリーズ アメリカ インク 順序システムのための離接イメージ計算
CN102310901A (zh) * 2010-07-09 2012-01-11 鸿富锦精密工业(深圳)有限公司 刹车预警装置及方法
JP2012043427A (ja) * 2010-08-17 2012-03-01 Fujitsu Ltd センサー・データを表す二分決定図の注釈付け
JP2012043431A (ja) * 2010-08-17 2012-03-01 Fujitsu Ltd 特性関数によって表現されたデータ・サンプルの比較
CN102416988A (zh) * 2011-10-27 2012-04-18 上海市七宝中学 一种自行车行车安全报警系统及报警方法
CN102464071A (zh) * 2010-10-29 2012-05-23 本田技研工业株式会社 电动车辆
CN102530154A (zh) * 2010-12-22 2012-07-04 本田技研工业株式会社 电动车辆
CN102530137A (zh) * 2010-09-30 2012-07-04 本田技研工业株式会社 电动两轮车的车辆接近告知装置
CN102756786A (zh) * 2012-06-21 2012-10-31 南京工业职业技术学院 一种力矩传感助力车
CN102975796A (zh) * 2011-09-05 2013-03-20 光阳工业股份有限公司 车辆的车灯控制方法
CN102975792A (zh) * 2012-11-08 2013-03-20 哈尔滨维尔士科技发展有限公司 自行车防盗装置
CN103010390A (zh) * 2012-12-31 2013-04-03 李美珍 智能自行车调速装置及其工作方法
JPWO2013085025A1 (ja) * 2011-12-09 2015-04-27 日本電気株式会社 最小カットセット評価システム、最小カットセット算出方法及びプログラム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009505227A (ja) * 2005-08-09 2009-02-05 エヌイーシー ラボラトリーズ アメリカ インク 順序システムのための離接イメージ計算
CN102310901A (zh) * 2010-07-09 2012-01-11 鸿富锦精密工业(深圳)有限公司 刹车预警装置及方法
JP2012043427A (ja) * 2010-08-17 2012-03-01 Fujitsu Ltd センサー・データを表す二分決定図の注釈付け
JP2012043431A (ja) * 2010-08-17 2012-03-01 Fujitsu Ltd 特性関数によって表現されたデータ・サンプルの比較
CN102530137A (zh) * 2010-09-30 2012-07-04 本田技研工业株式会社 电动两轮车的车辆接近告知装置
CN102464071A (zh) * 2010-10-29 2012-05-23 本田技研工业株式会社 电动车辆
CN102530154A (zh) * 2010-12-22 2012-07-04 本田技研工业株式会社 电动车辆
CN102975796A (zh) * 2011-09-05 2013-03-20 光阳工业股份有限公司 车辆的车灯控制方法
CN102416988A (zh) * 2011-10-27 2012-04-18 上海市七宝中学 一种自行车行车安全报警系统及报警方法
JPWO2013085025A1 (ja) * 2011-12-09 2015-04-27 日本電気株式会社 最小カットセット評価システム、最小カットセット算出方法及びプログラム
CN102756786A (zh) * 2012-06-21 2012-10-31 南京工业职业技术学院 一种力矩传感助力车
CN102975792A (zh) * 2012-11-08 2013-03-20 哈尔滨维尔士科技发展有限公司 自行车防盗装置
CN103010390A (zh) * 2012-12-31 2013-04-03 李美珍 智能自行车调速装置及其工作方法

Also Published As

Publication number Publication date
JP3741544B2 (ja) 2006-02-01

Similar Documents

Publication Publication Date Title
JP4028107B2 (ja) 分解及び分割によるハードウェアの検証並びに表現方法
JP3663067B2 (ja) 論理装置の検証方法、検証装置及び記録媒体
CN109685204B (zh) 图像处理方法及装置、存储介质及电子设备
US20170212968A1 (en) Circuit Verification
JP2000057123A (ja) 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体
CN113994350A (zh) 为神经网络生成并行计算方案
US20100318476A1 (en) Rule processing method and apparatus providing automatic user input selection
JP6977886B2 (ja) 機械学習方法、機械学習装置、及び機械学習プログラム
CN113158685A (zh) 文本的语义预测方法、装置、计算机设备和存储介质
Mo et al. Performability analysis of k-to-l-out-of-n computing systems using binary decision diagrams
CN116151381B (zh) 量子电路处理方法、装置及电子设备
WO2020190745A1 (en) Budgeted neural network architecture search system and method
Audet et al. Efficient use of parallelism in algorithmic parameter optimization applications
JPH1063537A (ja) プロパティ検証方法および装置
Sahoo et al. A partitioning methodology for BDD-based verification
EP3292488A1 (en) System and method for identifying clones
JP2012043437A (ja) 画像処理方法及び画像処理装置
Mrena et al. Comparison of left fold and tree fold strategies in creation of binary decision diagrams
Huang et al. ABOUT THIS CHAPTER
WO2019198408A1 (ja) 学習装置、学習方法、及び学習プログラム
JP6898818B2 (ja) グラフ生成装置、グラフ生成方法、データ構造、及びプログラム
Nallaperuma et al. Parameterized complexity analysis and more effective construction methods for ACO algorithms and the euclidean traveling salesperson problem
CN115796228B (zh) 算子融合方法、装置、设备以及存储介质
Saifhashemi et al. Reconditioning: Automatic power optimization of QDI circuits
CN116611527B (zh) 量子电路处理方法、装置及电子设备

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050601

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050822

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20051004

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: 20051108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051108

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: 20081118

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20091118

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101118

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101118

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111118

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121118

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131118

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees