JPH07334551A - ハイブリッドモデル状態マシーンにおける到達可能状態を決定するための方法及び装置 - Google Patents

ハイブリッドモデル状態マシーンにおける到達可能状態を決定するための方法及び装置

Info

Publication number
JPH07334551A
JPH07334551A JP7138355A JP13835595A JPH07334551A JP H07334551 A JPH07334551 A JP H07334551A JP 7138355 A JP7138355 A JP 7138355A JP 13835595 A JP13835595 A JP 13835595A JP H07334551 A JPH07334551 A JP H07334551A
Authority
JP
Japan
Prior art keywords
efsm
sum
configurations
reachable
enable
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
JP7138355A
Other languages
English (en)
Inventor
Kwang-Ting Cheng
チェン クワン−ティン
Anjur S Krishnakumar
サンダレサン クリシュナクマー アンジュア
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.)
AT&T Corp
Original Assignee
American Telephone and Telegraph Co Inc
AT&T Corp
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 American Telephone and Telegraph Co Inc, AT&T Corp filed Critical American Telephone and Telegraph Co Inc
Publication of JPH07334551A publication Critical patent/JPH07334551A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 シーケンシャルデジタルシステムの高級仕
様、特にハイブリッドモデルにより表現される高級仕様
をより効率的に妥当化する方法と装置を提供する。 【構成】 システムの高級表現は、直接和EFSMに変
換される。操作者あるいはデータファイルが、状態と変
数値の初期構成、あるいは初期構成の集合を提供する。
この方法は、直接和EFSMのシンボル実行を通して、
初期構成から到達可能な構成の集合を決定する。マシー
ンの遷移関係をブール表現と算術表現のAND積として
表現することにより、表現の各クラスが別々に処理され
る。完了時に、シンボル実行は、到達可能な状態の集合
のカバーを作成する。その結果は、ある仕様が予期せぬ
あるいは互換性のない結果を生じたかどうかを判定する
ために見直される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、デジタル回路の設計仕
様の確認の分野に関し、特に、高級仕様のハイブリッド
モデルにおける到達可能な状態の組を決定する分野に関
する。
【0002】
【従来の技術】シーケンシャルなデジタル回路の設計者
は、複雑な設計を特定するために高級ソフトウェア言語
を採用するようになってきている。例えば、あるハード
ウェアモデルはVHDLあるいはBESTMAP−Cで
かかれた高級表現を持ち、それらはハードウェア記述言
語である。設計者は、ある高級な記述あるいは仕様から
適切な回路設計を行うためにソフトウェアツールを使用
することができる。
【0003】このプロセスで重要な動作は、高級仕様の
確認あるいは妥当化である。高級仕様が不正確さを含
み、つじつまが合わない結果となるならば、それから設
計された回路は欠陥を含むことになるであろう。従っ
て、仕様を妥当にするために、設計者はすべての可能な
入力構成の組が適当な応答を生ずることを確保しなけれ
ばならない。そのような妥当化のステップを達成する方
法の1つは、すべての可能な入力構成を高級仕様に適用
し、その結果を観察することである。大きな複雑さの設
計のため、そして特に異なる入力構成の組が大量である
ため、そのような方法は実際的ではない。
【0004】例えば、カウンター値である3つの負では
ない整数変数a、b、cの処理を含むある回路仕様を考
えてみよう。a<20、b<10で、cが制限されてい
ない場合に、ある初期開始点{a,b,c}を与える
と、回路設計者が可能な結果の範囲を知る必要があると
する。そのような状況で、a、b、cの可能な構成を実
行するには、cの可能な値の上限に依存して、最小で2
00通り、可能ならば著しく多い回数の実行が必要とな
る。
【0005】状態マシーンモデルのシンボル実行を採用
することを含む仕様を妥当化する他の方法が、クーダー
ト(Coudert)等による”シンボル実行に基づく
動機シーケンシャルマシーンの証明”(有限状態システ
ムのための自動証明方法、LNCS、No.407(ス
プリンガーバーラグ1990))とディル(Dill)
による”有限状態同時システムのタイミング仮定と証
明”(有限状態システムのための自動証明方法、LNC
S、No.407(スプリンガーバーラグ1990))
に述べられている。両方とも、引用にここに組み込まれ
る。クーダート等は、入力シーケンスの特定の集合から
到達可能な集合を提供するために高級記述がどのように
シンボリックに実行されるかを示している。この方法で
は、高級記述は、まず、状態マシーン表現に変換され
る。状態マシーンのシンボル実行は到達可能な値あるい
は構成を提供する。
【0006】シンボル実行方法は、個別の構成とは反対
に、構成の集合を用いて状態マシーンを実行することに
より特定のモデルを評価する。結果として、シンボル実
行の使用は仕様の妥当化のために要求される時間と努力
をを大いに減らす。
【0007】例えば、整数変数A、B、Cを含む上記シ
ステムを考えてみよう。シンボル実行では、状態マシー
ンモデルは{a,b,c}の構成の集合に対して一度実
行される。ここで、a<20、b<10、cは無制限で
ある。そのような集合は、しばしば領域と呼ばれる。用
語領域の使用は、線形関数あるいは線形不等式として与
えられる構成の集合がグラフィックで領域として表現で
きるという事実を反映している。
【0008】シンボル実行の結果は、到達可能な構成の
カバーすなわち潜在的冗長集合を生ずる。到達可能な構
成の集合は、禁止された構成がそのモデルの下で到達さ
れる可能性があるかどうかを回路設計者に明らかにす
る。例えば、カバーが点{25、28、40}を含み、
点{25、28、40}がシステムエラーを引き起こす
ことが知られていれば、設計者は、高級仕様での欠陥が
知らされる。比較として、初期領域内の{a,b,c}
の各個別の初期構成が別々に実行されるならば、何百と
いう開始点が可能であり、そのようなエラー点に到達す
る前にそのモデルを通して実行されなければならない。
【0009】シンボル実行方法は、上記のクーダート等
におけるブール変数とブール表現を用いてモデル化され
る回路仕様のために記述されている。これらの既知の方
法は、状態マシーンモデル上でのシンボル実行を達成す
るために、バイナリー判定図処理を利用する。加えて、
シンボル実行方法は、また、上記ディル等において算術
変数からなる回路仕様のために記述されている。算術変
数は、ブール変数とは反対に、シーケンシャル回路モデ
ルで非負整数を表す。しかしながら、ある場合には、高
級仕様あるいはモデルは、ブール変数と算術変数の両方
を含む。そのようなモデルはハイブリッドモデルとして
知られている。ハイブリッドモデルについてシンボル実
行方法を達成する現在の技術は算術変数と算術表現を等
価なブール表現に拡張することを必要としている。全て
の変数をブール変数として一様に表現することにより、
クーダート等により述べられたシンボル実行技術が実行
できる。算術変数のブール変数への変換は、しかしなが
ら、複雑なハイブリッドモデルに特に非効率を持ち込
む。算術変数のブール拡張における特定の問題の1つ
は、最大ワードサイズが拡張されるべき各算術変数に対
して定義されなければならないということである。例え
ば、算術変数”a”を拡張するには、設計者は、それを
置換するためにどのくらい多くのブール変数を生成しな
ければならないかを決定するために、”a”の最大値を
定義しなければならない。たとえば、”a”の値が常に
8より少なければ、3ビットあるいは3つの可変ブール
表現が適当である。しかしながら、”a”の最大値が1
00になると、少なくとも7ビットあるいは7つの可変
ブール表現が要求される。
【0010】
【発明の概要】本発明は、シーケンシャルデジタルシス
テムの高級仕様、特にハイブリッドモデルにより表現さ
れる高級仕様をより効率的に妥当化する方法と装置を提
供する。本発明によれば、システムの高級表現は、拡張
された有限の状態マシーンあるいはEFSMに変換され
る。このEFSMは、その後、直接和EFSMに変換さ
れる。前記直接和マシーンは、EFSMであり、ハイブ
リッド状態遷移のイネーブル関数と更新関数が直接和形
式で表現される。
【0011】操作者あるいはデータファイルが、状態と
変数値の初期構成、あるいは初期構成の集合を提供す
る。本発明の方法は、直接和EFSMのシンボル実行を
通して、初期構成から到達可能な構成の集合を決定す
る。マシーンの遷移関係を直接和形式で表現することに
より、強力なブール算術技術が、モデルのシンボル実行
の感に適用される。完了時に、シンボル実行は、到達可
能な状態の集合のカバーを作成する。カバーは、初期構
成から到達可能な値を表す。その結果は、ある仕様が予
期せぬあるいは互換性のない結果を生じたかどうかを判
定するために見直される。
【0012】本発明の上記の特徴、は他の特徴、長所と
併せて、添付図面と以下の詳細な説明を参照して明らか
になるであろう。
【0013】
【実施例】図1は、会話型コンピューターシステム10
0を示している。コンピューターシステム100は図
2、図4、図5及び図6と関連して以下に説明する機能
を実行するために採用されている。コンピューターシス
テム100は、グラフィック情報とテキスト情報とを表
示するための表示モニター101と、情報のテキストエ
ントリーのためのキーボード102とグラフィックデー
タのエントリーのためのマウス107とを含む会話手段
と、コンピュータープロセッサ105と、メモリ103
と外部格納装置106とを含むデータ格納手段と、及び
プリンター104とを具備する。コンピュータープロセ
ッサ105は、メモリ103、表示モニター101、キ
ーボード102、マウス107、プリンター104、及
び外部格納装置106に接続されている。汎用コンピュ
ーター100は、メインフレームコンピューター、ミニ
コンピューター、ワークステーション、あるいはパーソ
ナルコンピューターのような当業者によく知られた形式
のいずれかのものであることが適当である。本発明の一
実施例では、コンピュータープロセッサ105は本発明
を実現するために必要なプログラムコードを実行する。
プログラムコードは外部格納装置106に格納されてい
て、実行前にローカルメモリ103にロードされるのが
適当である。
【0014】図2は、本発明によるシーケンシャル回路
の仕様を妥当化するように達成される機能を示す概略ブ
ロックダイアグラムである。当業者は、コンピューター
100のようなコンピューターで使用されるプログラム
コードを作成して以下に説明する機能を達成することが
可能であろう。一般に、本発明の方法は、順番に、ステ
ップ210、220、230、240、250、260
を実行する。
【0015】ステップ210では、シーケンシャル回路
の仕様の高級記述が妥当化のために提供される。例え
ば、VHDLあるいはBESTMAP−Cの形式でハー
ドウェアモデルの高級表現を提供することは当業者には
よく知られている。例えば、J.−Y.Jou等によ
る”BESTMAP:Cからの振る舞い合成”(Pro
c.Intl.論理合成のワークショップ、1989年
5月)を参照。それはここに引用により取り込まれる。
高級仕様は、図1の外部格納装置106のような格納手
段から提供されるのが適当である。例えばカウンターを
含むシーケンシャル回路の仕様のBESTMAP−C表
現の例が表1に与えられている。
【0016】
【表1】
【0017】ステップ220では、正式な拡張された状
態有限マシーン(EFSM)が高級表現から生成され
る。以下で説明する5個の要素からなる形式のうちの1
つのような、あるEFSMの正式の記述を生成すること
ができるソフトウェアは、当業者にはよく知られてい
る。5個の要素からなるEFSMは、{S、I、O、
D、T}として定義され、ここで、 S=状態の有限集合 I=入力の集合 O=出力の集合 D=多次元線形空間 T=遷移関係の集合 である。
【0018】図3Aは上記表1のBESTMAP−Cで
表現されるハイブリッドモデルに対応するEFSMの正
式な記述を示している。EFSMは端部306、30
8、310により接続された状態S0(302)と状態
S1(304)とを具備する。状態302と304はS
の要素を具備する。端部306、308、310はTの
要素を具備する。端部306、308、310の各々
は、それとイネーブル関数Fn と更新関数un とを関連
づける。イネーブル関数は端部がトラバースされるため
に真でなければならない条件を記述し、更新関数はEF
SM変数が端部のトラバースによりどのように影響され
るかを記述する。図3のEFSMに対するイネーブル関
数fn と更新関数un を記述する関数が表2に示され
る。
【0019】
【表2】
【0020】各端部は、また、トラバースに対する先行
必要条件としてIの要素である入力im を必要とする。
こうして、いくつかの端部は2つの条件に合うときだけ
トラバースされる。すなわち、1)入力im が受信され
る、2)イネーブル条件が満足される。さらに、図を明
瞭にするため図3Aには示していないが、多くの状態マ
シーンが、集合Oからなる出力を作成する。ブール値で
ある状態変数xと算術値である状態変数yは線形空間D
を定義する。こうして、空間Dは(x、y)により記述
される点からなる2次元空間である。最後に、EFSM
の構成は{s,p}により与えられ、sは特定の状態で
あり、pは特定の点(x、y)である。
【0021】EFSMの実行あるいはトラバースはよく
知られており、以下の例により説明する。図3Aでグラ
フにより定義されるEFSMと表2でリストされた関数
では、端部308がイネーブル関数f2 :{(x+y)
>5}を持ち、入力i2 でトリガーされる。マシーンが
端部308上の状態s1(304)から次の状態s0
(302)にトラバースするためには、入力i2 が受信
されなければならず、f 2 は真でなければならない。換
言すれば、x+y>5でなければならない。そうなら
ば、端部308はトラバースされ、yは5だけインクリ
メントされ、xは更新関数u2 により示されるように反
転される。EFSMは状態s0(302)にあり、そこ
から他のトラバースは起きる。
【0022】図2を再び参照して、ステップ220のE
FSMの生成後、EFSMはステップ230で直接和E
FSMに変換される。直接和EFSMはすべてのハイブ
リッドのイネーブル関数と更新関数が直接和の形式で表
現されるEFSMを具備する。ハイブリッドのイネーブ
ル関数あるいは更新関数はg(Xa 、Xb )の形式の関
数であり、ここで、Xa は算術変数の集合であり、Xb
はブール変数の集合である。イネーブル関数は、それが
a (Xa )&gb (Xb )の形式であるとき直接和の
形式であり、すなわち、換言すれば、純粋の算術表現g
a と純粋ブール表現gb のAND積である。更新関数は
それがga (Xa )orgb (Xb )の形式であるとき
直接和の形式であり、すなわち、換言すれば、gはただ
1種類の変数の関数からなる。
【0023】
【外1】
【0024】ステップ230を参照して説明したように
ハイブリッド関数を直接和に変換するためのソフトウェ
アを通して実現される方法を図4を参照して以下に説明
する。イネーブル関数を直接和の形式で表現することに
より、モデルは容易にシンボル実行される。図3Aに示
される例の直接和形式を図3Bに示し、以下に詳細に説
明する。
【0025】ステップ240では、導かれたグラフは直
接和EFSMから生成される。導かれたグラフは、既知
のシンボル実行方法の応用を容易とするEFSMの他の
表現からなる。EFSMの導かれたグラフの表現では、
EFSMの集合Sの状態を置換する複数のノードが定義
される。導かれたグラフ中のノードは、EFSMの端部
と関連するイネーブル関数の集合から導かれる。導かれ
たグラフのノードは各々構成の集合を表す。導かれたグ
ラフのノードの集合は、2つの要求を満足しなければな
らない。すなわち1)それらは相互に直交関数の集合か
らなる、換言すればそれらは交わらない、2)それらは
EFSM中のイネーブル関数の集合に対するベースを形
成する。
【0026】図3Aと図3Bに示される例の導かれたグ
ラフが図3Cに示され、以下に説明する。本発明のこの
実現によるEFSMの導かれたグラフを生成するための
ソフトウェアを通して実現できる方法は、図5と関連し
て以下に説明する。ステップ250では、本発明の装置
は到達性を決定すべきEFSMに対する初期構成を引き
出しあるいは得る。換言すれば、初期開始状態が定義さ
れ、初期の値あるいは値の範囲がEFSM変数に対して
定義される。オペレーターは、図1のキーボード102
あるいはマウス107のような会話装置を用いてそのよ
うな情報を提供することができる。他に、初期構成の集
合が外部格納装置106内に格納されていてそれから引
き出されてもよい。
【0027】ステップ260では、到達性解析が、導か
れたグラフをシンボル的に実行することにより達成され
る。図6と関連して以下に説明するシンボル実行方法
は、カバーあるいは到達可能な集合のオーバーラップす
る集合を決定するために容易に使用できる。一般に、本
発明の方法は、シンボル実行を行うための一連の集合処
理演算すなわち集合処理演算シーケンスを採用する。例
えば集合の交わりと集合の減算のようなこれらの集合処
理演算は、EFSMのブール部に対する2値決定図とE
FSMの算術部に対する代数方法とを用いて容易に達成
される。そのような方法よく知られており、上記のCo
udert等と、Dill等の文献に記載されている。
本発明は、直接和形式でEFSMを表現することによ
り、強力なブール代数シンボル実行を同じモデルに適用
することを可能とする。
【0028】フロー図200の実行により一般的に示さ
れる方法は、到達可能構成の集合をカバーする。そのカ
バーは、冗長性を含む到達可能な集合の集まりからなる
ということに注目すべきである。さらに、既知の集合の
減少方法が到達可能な構成のカバーを非冗長副集合の集
まりにまで最小にするために適用できる。
【0029】プロセッサはその結果をオペレーターに連
絡するための手段にその結果を提供する。本発明の方法
が図1に示されるコンピューターシステムで実行される
ならば、その結果は表示装置101上にあるいはプリン
ター104からハードコピーの形で適切に提供される。
提供される情報は、あるハードウェアモデルの高級仕様
が妥当か否かを判定するために使用できる。この目的の
ため、設計者あるいはコンピューターソフトウェアルー
チンは、ステップ210で提供される元の高級仕様が妥
当かどうかを決定するために、そのカバーを予め決めら
れた結果基準の集合と比較する。
【0030】以下に説明する図4、図5、図6のフロー
図は、図2のフロー図200のステップ230、24
0、260を特定的な実行を示している。図4を参照し
て、機能フロー図400はハイブリッドイネーブル関数
からなるEFSMを直接和EFSMに変換するプロセス
を表している。フロー図400は、上記図2のステップ
230で上記関数を達成するサブルーチンを表してい
る。上記のように、EFSMの直接和表現では、各ハイ
ブリッドイネーブル関数はブール表現と算術表現のAN
D積として表現される。フロー図400の関数要素はコ
ンピューター内に容易にプログラムできる。
【0031】ステップ405で、プロセッサはdoルー
プを実行し、ここで、以下のステップでプロセスはEF
SMのS中の各状態に対して一度に1つづつ繰り返され
る。EFSMからプロセスへの特定の状態を選択後、プ
ロセッサはステップ410を実行する。
【0032】ステップ410では、プロセッサは、選択
された状態の出力端部に対して、変換を必要とする、換
言すれば、直接和の形式ではないいずれかのハイブリッ
ドイネーブル関数が存在するか否かを判定する。1以上
のイネーブル関数が変換を必要とすれば、ステップ42
0でプロセッサはそのようなイネーブル関数の1つを選
択する。しかしながら、変換を必要とするイネーブル関
数がなければ、プロセッサはステップ405に戻る。
【0033】ステップ420の実行後、選択されたイネ
ーブル関数は、ステップ425で始まる以下に説明する
方法により直接和形式に変換される。ステップ425で
は、関係解読(パースツリー)がそのイネーブル関数に
対して生成される。条件関数のパースツリーは当業界で
はよく知られている。
【0034】その後プロセッサは、ステップ430でパ
ースツリーのポストオーダートラバースを始める。ポス
トオーダートラバースとソフトウェアでそのようなトラ
バースを実行する方法は当業者にはよく知られている。
その後プロセッサはステップ435に進む。ステップ4
35では、プロセッサは、現在のトラバースにより定義
されている表現がハイブリッド表現を構成するか否かを
判定する。そうでなければ、プロセッサは、ポストオー
ダートラバースが完了したかどうかを決定するためにス
テップ440を実行する。トラバースが完了していなけ
れば、プロセッサはステップ430を実行するように戻
り、トラバースを継続する。
【0035】
【外2】
【0036】その後プロセッサはステップ450を実行
する。ステップ450では、プロセッサは、EFSM中
の元のイネーブル関数と関連する端部を置換する2つの
端部を定義する。各定義された端部は拡張されたイネー
ブル関数の1つと関連づけられる。その後、ステップ4
52で、更新関数が新しい端部に対して定義される。
【0037】
【外3】
【0038】
【外4】
【0039】図3Bは、図3AのEFSMから生成され
る直接和EFSMを示している。図3BのEFSMの2
つのイネーブル関数f2 とf3 は直接和形式への変換を
必要としたので、端部308は2つの端部308a と3
08b により置換され、端部310は2つの端部310
a と310b により置換されていることに注意すべきで
ある。新しいイネーブル関数と更新関数が表3にリスト
されている。
【0040】
【表3】
【0041】他に、図3Bの直接和EFSMは、図3A
のEFSMと同様にして関係づけられた同じ要素からな
る。
【0042】上記のように、クーデルト(Couder
t)の従来技術を使用するシンボル実行を用いて到達可
能性の決定を可能するためには、算術式がブール式に変
換されなければならない。こうして、例えば式x+y>
5はブール式の等価物に分解される。算術変数yを変換
するためには、まず有限のワードサイズが割り当てられ
なければならない。変数yが他のワードで5ビットy
1 、y2 、y3 、y4 、y5 が割り当てられているとす
る。そのような割り当てはyの値を0から31までに制
限し、5つのバイナリー変数を作り出し単一の変数yを
置換する。本発明は、以下に説明するように、ブールと
算術のシンボル実行技術がEFSMに同時に適用される
ことを可能とするようにイネーブル機能を再定義するこ
とによりこれらの決定を克服している。結果として、シ
ンボル実行は変数をバイナリー形式に変換することなく
実行され、その結果は妥当性を残して実現のために実際
に選ばれるワードサイズから独立である。
【0043】
【外5】
【0044】図5を参照して、フロー図500は図2と
関連して上で説明したようなステップ240の機能を達
成する一連の機能ステップを表す。フロー図500は直
接和EFSMを入力として受信し、導かれたグラフを生
成する。図3Bに示される直接和EFSMの例に対応す
る導かれたグラフは図3Cに示される。図3Cでは、導
かれたグラフは出力端部3161 から3164 と入力端
部3181 と3184 を通して頂点P11(314
1 )、頂点P12(3142)、頂点P13(314
3 )、頂点P14(3144 )接続された頂点P01
(312)を具備する。頂点P01は図3Aから状態S
0(302)に対する導かれたグラフの置換であり、頂
点P11からP14(3141 から3144 )は図3A
から状態S1(304)に対する導かれたグラフの置換
を具備する。図3Cは図5と図6の説明の間に繰り返し
参照される。
【0045】図5を参照して、ステップ505で、図1
のコンピュータープロセッサであることが適切であるプ
ロセッサは、doループを実行し、以下のステップでの
プロセスはEFSMのSで各状態に対して繰り返され
る。以下のステップは、導かれたグラフの頂点、あるい
は頂点の集合で選択されたEFSMの状態を置換する。
処理すべき他のEFSM状態がある限り、プロセッサは
ステップ510を実行する。
【0046】ステップ510では、プロセッサは状態の
出力端部と関連するすべてのイネーブル関数Fn の集合
としてFSETを定義する。その後、ステップ515
で、プロセッサはFSETに対する基礎を形成する相互
に直交する(交わらない)関数Pi の集合としてPSE
Tを定義する。換言すれば、PSETはすべてのイネー
ブル関数Fn が1以上のPi の和集合として表せるよう
に定義される。
【0047】再び例を参照して、表3に説明した状態S
1にたいする集合FSETは4つのイネーブル関数から
なる。表3のイネーブル関数は既に相互に直交してい
る、換言すれば、単一点(x、y)は1以上のイネーブ
ル関数を満足しないということに注意すべきである。こ
うして、この例では、FSETに対する基礎を形成する
相互に直交する関数PSETの集合はFSETで関数に
等価である。図3Bに示され、表3に述べられた直接和
EFSMの状態S1(304)に対するPSETの集合
が表4に示される。
【0048】
【表4】
【0049】ステップ515でのPSETの定義後、プ
ロセッサはステップ520を実行する。ステップ520
では、各Pi に対して1つの頂点で、頂点あるいはノー
ドの集合が直接和EFSMからの選択された状態に代え
て代入される。各頂点Pi は、表4でのPi の定義にか
ら分かるように、単一点に反対の点あるいは構成の集合
を表す。
【0050】元の状態の入力端部のいずれも各新しい頂
点Pi に拡張されると言うことに注意すべきである。例
えば、図3Cを参照。ここでは、図3Bからの状態S1
(304)は頂点P11からP14(3141 から31
4 )で置換されている。図3Bからの入力端部306
は4つの端部3161 から3164 で置換されている。
【0051】図5に戻って、プロセッサはステップ52
5を実行する。ステップ525では、プロセッサは新し
い頂点から一時的な出力端部を定義する。PSETがF
SETに対する基礎を提供するように定義されるので、
i の各店は少なくとも1つのイネーブル関数Fn を満
足する。頂点Pi により満足される各イネーブル関数F
n に対してPi からの対応する出力端部は一時的に定義
される。Pi からの一時的出力端部は、イネーブル関数
n と関連する元の端部と同じ宛先と更新関数Ui を有
する。
【0052】図3Cの頂点P11(3141 )を考えて
みよう。表4から頂点P11(3141 )は構成の集合
を表す。ここで、{x&(y>4)}は満足されてい
る。この構成の集合はf21を満足し、f21は図3BのE
FSMの端部308a と関連するので、頂点P11(3
141 )から延びる対応する端部3181 は一時的に定
義される。新しい端部のトラバースはイネーブル関数の
満足時に条件づけられていないが、入力の要求im は供
給できることに注意すべきである。
【0053】PSETとそれから延びる一時的な端部を
定義した後、プロセッサはステップ530を実行する。
ステップ530から555では、どの一時的端部が破棄
され、どれが残されるべきかが決定される。このステッ
プは、元のEFSMが多数の状態からなるとき特に要求
され、その状態の各々は多数の頂点P1 からPn に細分
化される。そのような場合、いくつかの端部は決してト
ラバースされない状態間で定義されてもよい。
【0054】このために、ステップ530では、宛先頂
点Pkにまで延びる一時的な出力端部を有する特定の頂
点Pi に対して、Ui 下のPi のイメージが頂点Pk
交わるかどうかが決定される。こうして、ステップ53
0では、Ui 下でのPi のイメージの計算IMAGE
(Pi 、Ui )がなされなければならない。換言すれ
ば、更新関数Ui はPi により定義される条件を満足す
る点の集合に適用されなければならない。
【0055】表2の頂点P11(3141 )のようなハ
イブリッドの表現により定義される頂点に対するイメー
ジ計算は、算術表現とブール表現とに対する既知のイメ
ージ計算方法を用いることにより達成される。本発明の
方法はそのようなハイブリッド頂点を直接和の形式で表
現される式、すなわちPi =Pa &Pb を定義するの
で、イメージ計算は、IMAGE(Pi 、Ui )=IM
AGE(Pa ,Ui )&IMAGE(Pb ,Ui )に拡
張される。結果として、既知の方法が、Pi のバイナリ
ー部と算術部に別々に適用可能である。
【0056】ステップ530で答えがYesならば、プ
ロセッサはステップ535を実行する。ステップ535
では、Pi からPk まで延びる一時的端部は、永久的端
部として保持され、プロセッサはステップ540を実行
する。しかしながら、ステップ530で、Ui 下のPi
のイメージが宛先Pk と交わらなければ、プロセッサは
直接ステップ540にスキップする。
【0057】ステップ540では、プロセッサは、ステ
ップ530の手順によりテストされなかったPi から延
びる他の一時的端部があるか否かを判定する。そうなら
ば、ステップ545が実行される。しかしながら、そう
でなければ、プロセッサはステップ550を実行する。
ステップ545では、プロセッサは、Pi から延びるテ
ストされていない一時的な端部の宛先を具備する新たな
頂点Pk を選択し、ステップ530に戻る。
【0058】ステップ530から545のプロセスは、
各領域Pi に対して繰り返される。このため、ステップ
550では、プロセッサは処理すべき他の頂点Piが存
在するか否かを決定する。そうならば、新たなPiがス
テップ555で定義され、プロセッサはステップ530
に戻る。そうでなければ、ルーチンは完了し、プロセッ
サはステップ505に戻り、直接和EFSMの他の状態
に対して全体のプロセスを繰り返す。
【0059】完了時に、フロー図500で示される方法
は、直接和EFSMの導かれたグラフを作成する。導か
れたグラフの表現は、図6と関連して以下に説明する到
達可能性のプロセスの実行を可能とする。
【0060】図6を参照して、フロー図600は、図2
と関連して説明されたステップ260の関数を実行する
一連の機能ステップを表す。フロー図600はその導か
れたグラフ表現を用いて直接和EFSMのシンボル実行
を行うための本発明による適当な方法を示している。導
かれたグラフは上記の図5と関連して説明したプロセス
を用いて作成されたものであることが望ましい。上記の
ように、導かれたグラフは、一連のノードあるいは頂点
からなり、それらはブール変数、算術変数、あるいは両
方の構成の集合を表している。頂点は端部により接続さ
れ、それらのトラバースは対応する更新関数の適用とな
る。
【0061】ステップ605では、集合REACHAB
LE(到達可能)が定義される。REACHABLEは
すべての到達可能な構成の集合を表し、ここで、構成は
値{S、N}であり、Sは元のEFSMからの状態から
なり、NはEFSMを定義する線形空間内の点を表す。
フロー図600により具現化される方法は、集合REA
CHABLEを更新しあるいは増大させるように動作す
る。ステップ605では、集合REACHABLEは初
期構成からなる。初期構成は、点あるいは点の集合から
なり、ハイブリッドマシーンでは、代数多面体領域とバ
イナリー構成からなる。
【0062】例えば、図3Aに示されるEFSMを考え
てみよう。それは、図3Cと関連して上で説明した導か
れたグラフEFSMに対応する。初期構成は、元の状態
S0と点(x=0、y=−)からなり、ここで、”−”
は関係ないことを意味する。こうして、この例では、集
合REACHABLEは既に構成[S0,(0,−)]
の集合からなる。
【0063】ステップ605の初期化手順の一部とし
て、プロセッサは導かれたグラフにおけるすべての頂点
に対するキューを定義する。換言すれば、PSETのす
べてに対して各Piは対応するQi を有する。ステップ
605の実行後、プロセッサはステップ610に進む。
ステップ610では、プロセッサは、適切な頂点のキュ
ー上に初期構成の部分をスケジュールする。
【0064】再び、例を参照して、5つのキューQ0
らQ5 は図3Cの導かれたグラフの5つの頂点312と
3141 から3144 に対してセットアップされる。上
記定義された初期条件によれば、点(0,−)の集合
は、キューQ0 上にスケジュールされ、そのキューは頂
点P01(312)に対応する。図6に戻って、プロセ
ッサは、ステップ615を実行して、カバーあるいは集
合REACHABLEを決定する繰り返し手順を開始す
る。ステップ615では、プロセッサは、キューQi
選び、いずれかの集合がそのキュー上でスケジュールさ
れているか否かを照会する。そうでなければ、Qi 上で
処理はなされず、プロセッサはステップ620に進む。
ステップ620では、プロセッサは、全てのキューが空
か否かを照会する。全てのキューが空ならば、繰り返し
手順は完了し、到達可能な構成の集合が決定される。他
に、空でないキューがあれば、プロセッサは、ステップ
630で新しい空でないキューQi を拾いステップ61
5に戻る。
【0065】しかしながら、ステップ615で、キュー
i 上にスケジュールされた集合が残っていれば、プロ
セッサはステップ635を実行する。ステップ635で
は、スケジュールされた集合SはキューQi から除かれ
る。プロセッサはその後ステップ650を実行する。ス
テップ650では、Pi から1以上の宛先頂点Pk にま
で延びる出力端部に対して、スケジュールされた集合S
のイメージがUi の下、取られる。イメージ計算は、R
S=IMAGE(S,Ui )として記述される。RS
は、Sの全ての点を端部にトラバースするときの結果と
しての集合を表す。
【0066】再び上記の例を考える。P01(S0)、
y=i1 に対する更新関数の下での初期構成[S0,
(0,−)]のイメージは、[S1,(0,i1 )]で
ある。入力i1 が初めにi1 <10と定義されれば、対
応するイメージ((0,−),y=i1 )は、[S1,
(0,<10)]である。
【0067】ステップ655では、プロセッサは、値N
EW_Sを以前には到達されなかったイメージRSの部
分として定義する。換言すれば、NEW_S=RS−
(REACHABLEΛRS)である。集合の減算と交
わりは、集合代数ではよく知られた演算である。ステッ
プ655を例に適用すると、RS=[S1,(0,<1
0)]とREACHABLE=[S0,(0,−)]で
あることに注意すべきである。従って、S1はS0とは
交わらないので、RSΛREACHABLE=[φ]であ
る。結果として、NEW_S=RSあるいは[S1,
(0,<10)]である。
【0068】ステップ655後に、プロセッサはステッ
プ660を実行する。ステップ660では、到達可能な
状態の集合は、新たに決定されたイメージRS、REA
CHABLE=REACHABLE∪RSを含むように
更新される。こうして、上記の例では、REACHAB
LE=[S0,(0,−)]∪[S1,(0,<1
0)]である。
【0069】一旦ステップ660でREACHABLE
が更新されると、新たに到達した集合NEW_Sはステ
ップ665でさらに繰り返しのためにスケジュールされ
なければならない。このため、ステップ665では、プ
ロセッサは、宛先頂点Pk を選択し、PkをNEW_S
と交わりさせる。それは、NEW_Sk=NEW_S∧
Pkとして表現される。頂点Pk はPi’ の出力端部の
うちの宛先頂点の1つから選択される。集合の交わりは
よく知られている。プロセッサは、その後、ステップ6
70を実行する。ここで、領域NEW_Sk はステップ
670でQk 上でスケジュールされる。
【0070】ステップ675では、プロセッサは、多数
の宛先頂点、換言すれば、他のPkが存在するか否かを
照会する。他のPk が存在すれば、新たなPk はステッ
プ680で選択され、プロセッサはステップ665に戻
る。ステップ675で答えがnoならば、プロセッサは
ステップ615に戻る。
【0071】本発明の他の実施例では、ここで説明した
方法が通信プロトコルの仕様を証明しあるいは妥当化す
るために適用される。この例では、図2のステップ21
0は通信プロトコルの高級記述が提供されるステップに
より置換される。そのような高級仕様は、例えばEST
ELLEのような通信プロトコル記述言語で提供され
る。例えば、ブドコウスキー等による”ESTELLE
への入門:分散システムのための仕様言語”(コンピュ
ーターネットワークとISDNシステム、25ー59、
(1987))を参照。ESTELLE言語で記述され
たもののような高級記述は当業者によりEFSMに容易
に変換される。
【0072】本発明の上記の例は単なる参考にすぎない
ことは理解されよう。本発明の原理を具現化するもので
あり、またその精神と範囲内にある他の実現方法が、当
業者には容易に考えられるであろう。
【図面の簡単な説明】
【図1】本発明によるシーケンシャル回路仕様の妥当化
を実行するのに適切である会話型コンピューターシステ
ムを示す図である。
【図2】本発明による妥当化技術の1つの概略機能フロ
ー図を示す図である。
【図3A】本発明の方法が適用されるハイブリッドモデ
ルの高級記述から生成されるEFSMを示す図である。
【図3B】図3Aに示されるEFSMの直接和バーショ
ンを示す図である。
【図3C】図3Bに示される直接和EFSMの導かれた
グラフ表現を示す図である。
【図4】ハイブリッドEFSM空直接和マシーンを生成
するプロセスを示す機能フロー図である。
【図5】シンボル実行プロセスで使用されるEFSMの
導かれたグラフを生成するためのプロセスの機能フロー
図である。
【図6】算術とブールの変数と表現に対する到達可能な
集合を決定するためのプロセスの機能フロー図である。
【符号の説明】
101 表示装置 102 キーボード 103 メモリ 104 プリンター 105 コンピュータープロセッサ 106 外部格納装置
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アンジュア サンダレサン クリシュナク マー アメリカ合衆国 08553 ニュージャーシ ィ,ロッキー ヒル,メリット レーン 11

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 シーケンシャル回路の設計の高級仕様を
    妥当化する方法であって、前記高級仕様は整数変数とブ
    ール変数の両方を含み、 a)前記高級仕様から拡張された有限の状態マシーンを
    生成することと、ここで、前記各緒された有限の状態マ
    シーンは1以上の出力端部に接続された少なくとも1つ
    の状態を具備し、前記各出力端部は前記少なくとも1つ
    の状態のうちの1つで終端し、 b)前記拡張された有限の状態マシーンを直接和マシー
    ンに変換することと、 c)前記直接和マシーンの導かれたグラフを生成するこ
    とと、ここで、前記導かれたグラフは少なくとも1つの
    端部により接続された複数の頂点を具備し、 d)初期構成を得ることと、 e)前記初期構成を用いて前記導かれた和マシーンのシ
    ンボル実行を行うことと、ここで、前記シンボル実行は
    前記初期構成から到達可能な構成の集合を提供し、及び f)到達可能な構成の集合を、前記到達可能な構成の集
    合を人間に通信するための手段に提供することと を具備する方法。
  2. 【請求項2】 g)前記到達可能な個性の集合に予め決
    められた基準の集合を適用することをさらに具備し、前
    記適用は前記高級仕様が妥当か否かを示す信号を作成す
    る請求項1記載の方法。
  3. 【請求項3】 前記拡張された有限の状態マシーン
    は、前記拡張された有限の状態マシーンの少なくとも1
    つの出力端部に対応する少なくとも1つの非直接和ハイ
    ブリッドイネーブル関数を具備し、前記ステップb)
    は、前記少なくとも1つのハイブリッドイネーブル関数
    を直接話形式に変換することをさらに具備する請求項1
    記載の方法。
  4. 【請求項4】 前記少なくとも1つのハイブリッドイネ
    ーブル関数を直接話形式に変換するステップは、前期非
    直接和ハイブリッドイネーブル関数を2つの直接和イネ
    ーブル関数に拡張することを具備する請求項3記載の方
    法。
  5. 【請求項5】 前記拡張された有限の状態マシーンの少
    なくとも1つの出力端部は、1以上のイネーブル関数と
    関連づけられ、少なくとも1つの出力端部は1以上の更
    新関数と関連づけられる請求項1記載の方法。
  6. 【請求項6】 前記導かれたグラフの前記複数の頂点
    は、前記拡張された有限の状態マシーンの前記少なくと
    も1つの出力端部と関連づけられる前記1以上のイネー
    ブル関数から導かれる相互に直交する関数の集合である
    請求項5記載の方法。
  7. 【請求項7】 前記導かれたグラフの前記シンボル実行
    は、処理演算集合を採用し、前記処理演算集合はブール
    集合処理演算と算術集合処理演算とを含んでいる請求項
    1記載の方法。
  8. 【請求項8】 前記導かれたグラフの前記シンボル実行
    は、処理演算集合を採用し、前記処理演算集合はバイナ
    リー決定図と代数多面体領域の処理とを含んでいる請求
    項1記載の方法。
  9. 【請求項9】 EFSMにおける到達可能な構成の集合
    を決定する方法であって、前記EFSMはイネーブル関
    数の集合により部分的に定義され、前記イネーブル関数
    の集合のうちの少なくとも1つは少なくとも1つのブー
    ル変数と少なくとも1つの算術変数とに依存する非直接
    和ハイブリッドイネーブル関数であり、 a)前記イネ
    ーブル関数の集合から非直接和イネーブル関数を選択す
    ることと、 b)前記非直接和ハイブリッドイネーブル
    関数をブール変数表現と算術変数表現とのAND積に変
    換することと、 c)前記イネーブル関数の集合中の全ての非直接和ハイ
    ブリッドイネーブル関数に対して前記ステップa)と
    b)を繰り返すことと、 d)初期構成の集合を得ることと、及び e)シンボル実行を採用して前記初期構成の集合から到
    達可能な構成の集合を決定することと を具備する方法。
  10. 【請求項10】 シンボル実行を採用して前記初期構成
    の集合から到達可能な構成の集合を決定することに先立
    ち、前記EFSMの導かれたグラフを生成することをさ
    らに具備する請求項9記載の方法。
  11. 【請求項11】 前記ステップb)は、前記非直接和ハ
    イブリッドイネーブル関数を2つの直接和イネーブル関
    数に拡張することをさらに具備する請求項9記載の方
    法。
  12. 【請求項12】 前記方法は、シーケンシャル回路の設
    計の高級仕様のEFSM表現に適用される請求項9記載
    の方法。
  13. 【請求項13】 前記方法は、通信プロトコル仕様の高
    級仕様のEFSM表現に適用される請求項9記載の方
    法。
  14. 【請求項14】 シーケンシャル回路の設計の高級仕様
    を妥当化するための装置であって、前記高級仕様は整数
    変数とブール変数の両方を含み、 a)シーケンシャル回路の設計の高級仕様を格納するた
    めの格納手段と、 b)人間から入力を受け付けるための会話手段と、 c)前記格納手段と前記会話手段とに接続されたコンピ
    ュータープロセッサであって、前記高級仕様から直接和
    EFSMを生成するように動作でき、前記直接和EFS
    Mをシンボリックに実行するよう動作できるコンピュー
    タープロセッサと、及び d)前記コンピュータープロセッサに接続され、前記直
    接和EFSMの前記シンボリックな実行の結果を人間に
    通信するための手段と を具備する装置。
  15. 【請求項15】 前記会話手段はキーボードを具備する
    請求項14記載の装置。
  16. 【請求項16】 前記結果通信手段は視覚表示装置を具
    備する請求項14記載の装置。
  17. 【請求項17】 前記結果通信手段は印刷装置を具備す
    る請求項14記載の装置。
  18. 【請求項18】 シーケンシャル回路の設計の高級仕様
    を妥当化するための装置であって、前記高級仕様は少な
    くとも1つの整数変数と少なくとも1つのブール変数を
    含み、 a)前記高級仕様の前記格納のための外部メモリ装置
    と、 b)人間から入力を受け付けるためのキーボードと、 c)前記外部メモリ装置と前記キーボードとに接続され
    たコンピュータープロセッサであって、前記高級仕様か
    ら直接和EFSMを生成するように動作でき、前記直接
    和EFSMをシンボリックに実行するよう動作できるコ
    ンピュータープロセッサと、及び d)前記直接和EFSMの前記シンボリックな実行の結
    果を人間に表示するためのビデオ表示装置と を具備する装置。
  19. 【請求項19】 通信プロトコル仕様の高級仕様を妥当
    化する方法であって、前記高級仕様は整数変数とブール
    変数の両方を含み、 a)前記高級仕様から拡張された有限の状態マシーンを
    生成することと、ここで、前記各緒された有限の状態マ
    シーンは、1以上の出力端部に接続された少なくとも1
    つの状態を具備し、前記各出力端部は前記少なくとも1
    つの状態のうちの1つで終端し、 b)前記拡張された有限の状態マシーンを直接和マシー
    ンに変換することと、 c)前記直接和マシーンの導かれたグラフを生成するこ
    とと、ここで、前記導かれたグラフは少なくとも1つの
    端部により接続された複数の頂点を具備し、 d)初期構成を得ることと、 e)前記初期構成を用いて前記導かれた和マシーンのシ
    ンボル実行を行うことと、ここで、前記シンボル実行は
    前記初期構成から到達可能な構成の集合を提供し、及び f)到達可能な構成の集合を、前記到達可能な構成の集
    合を人間に通信するための手段に提供することと を具備する方法。
  20. 【請求項20】 前記到達可能な構成の集合に基準の予
    め決められた集合を適用することをさらに具備し、前記
    適用は前記高級仕様が妥当か否かを示す信号を生成する
    請求項19記載の方法。
JP7138355A 1994-06-06 1995-06-06 ハイブリッドモデル状態マシーンにおける到達可能状態を決定するための方法及び装置 Withdrawn JPH07334551A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/254218 1994-06-06
US08/254,218 US5513122A (en) 1994-06-06 1994-06-06 Method and apparatus for determining the reachable states in a hybrid model state machine

Publications (1)

Publication Number Publication Date
JPH07334551A true JPH07334551A (ja) 1995-12-22

Family

ID=22963395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7138355A Withdrawn JPH07334551A (ja) 1994-06-06 1995-06-06 ハイブリッドモデル状態マシーンにおける到達可能状態を決定するための方法及び装置

Country Status (4)

Country Link
US (1) US5513122A (ja)
EP (1) EP0686925A3 (ja)
JP (1) JPH07334551A (ja)
CA (1) CA2147671A1 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185516B1 (en) * 1990-03-06 2001-02-06 Lucent Technologies Inc. Automata-theoretic verification of systems
US5870590A (en) * 1993-07-29 1999-02-09 Kita; Ronald Allen Method and apparatus for generating an extended finite state machine architecture for a software specification
JPH08101861A (ja) * 1994-09-30 1996-04-16 Toshiba Corp 論理回路合成装置
TW298687B (ja) * 1995-04-21 1997-02-21 Hitachi Ltd
US5918035A (en) * 1995-05-15 1999-06-29 Imec Vzw Method for processor modeling in code generation and instruction set simulation
US5774368A (en) * 1995-10-20 1998-06-30 Motorola, Inc. Controller structure template and method for designing a controller structure
US5768498A (en) * 1996-01-23 1998-06-16 Lucent Technologies Protocol verification using symbolic representations of queues
US5854929A (en) * 1996-03-08 1998-12-29 Interuniversitair Micro-Elektronica Centrum (Imec Vzw) Method of generating code for programmable processors, code generator and application thereof
US5764883A (en) * 1996-03-28 1998-06-09 Hewlett-Packard Co. System and method for checking for dynamic resource misuse in a computer program
US5918037A (en) * 1996-06-05 1999-06-29 Teradyne, Inc. Generating tests for an extended finite state machine using different coverage levels for different submodels
US6035109A (en) * 1997-04-22 2000-03-07 Nec Usa, Inc. Method for using complete-1-distinguishability for FSM equivalence checking
US6059837A (en) * 1997-12-30 2000-05-09 Synopsys, Inc. Method and system for automata-based approach to state reachability of interacting extended finite state machines
US6421815B1 (en) * 1998-01-09 2002-07-16 Synopsys, Inc. Method and apparatus for optimized partitioning of finite state machines synthesized from hierarchical high-level descriptions
US6339837B1 (en) 1998-02-25 2002-01-15 Zhe Li Hybrid method for design verification
US6324496B1 (en) * 1998-06-18 2001-11-27 Lucent Technologies Inc. Model checking of hierarchical state machines
US6311293B1 (en) * 1998-12-14 2001-10-30 Lucent Technologies Inc. Detecting of model errors through simplification of model via state reachability analysis
US6609230B1 (en) 1999-02-24 2003-08-19 Zhe Li Method for design verification using modular templates of test benches
US6493841B1 (en) 1999-03-31 2002-12-10 Synopsys, Inc. Method and apparatus for determining expected values during circuit design verification
US6499127B1 (en) 1999-04-22 2002-12-24 Synopsys, Inc. Method and apparatus for random stimulus generation
US6553531B1 (en) 1999-04-22 2003-04-22 Synopsys, Inc. Method and apparatus for random stimulus generation
US6449745B1 (en) 1999-04-22 2002-09-10 Synopsys, Inc. Method and apparatus for random stimulus generation
US6513144B1 (en) * 1999-04-22 2003-01-28 Synopsys, Inc. Method and apparatus for random stimulus generation
US6427223B1 (en) 1999-04-30 2002-07-30 Synopsys, Inc. Method and apparatus for adaptive verification of circuit designs
US6853963B1 (en) 1999-05-25 2005-02-08 Empirix Inc. Analyzing an extended finite state machine system model
US6694290B1 (en) 1999-05-25 2004-02-17 Empirix Inc. Analyzing an extended finite state machine system model
US6446241B1 (en) 1999-07-15 2002-09-03 Texas Instruments Incorporated Automated method for testing cache
US6745160B1 (en) * 1999-10-08 2004-06-01 Nec Corporation Verification of scheduling in the presence of loops using uninterpreted symbolic simulation
US6985840B1 (en) 2000-07-31 2006-01-10 Novas Software, Inc. Circuit property verification system
US6587998B2 (en) * 2001-01-16 2003-07-01 International Business Machines Corporation Searching for counter-examples intelligently
US20030115559A1 (en) * 2001-12-13 2003-06-19 International Business Machines Corporation Hardware validation through binary decision diagrams including functions and equalities
US6959314B1 (en) * 2002-05-13 2005-10-25 Eurica Califorrniaa Method of translating Boolean algebra into basic algebra
US7058910B2 (en) 2002-06-27 2006-06-06 The United States Of America As Represented By The Secretary Of The Navy Invariant checking method and apparatus using binary decision diagrams in combination with constraint solvers
WO2004046834A1 (en) * 2002-11-18 2004-06-03 International Remote Imaging Systems, Inc. A multi-level controller system
US8265920B1 (en) * 2004-07-30 2012-09-11 Synopsys, Inc. Determining large-scale finite state machines using constraint relaxation
US20110093099A1 (en) * 2009-10-16 2011-04-21 Newport Controls Controller system adapted for spa
US20110202150A1 (en) * 2009-10-16 2011-08-18 Newport Controls Controller system adapted for SPA
US9483380B2 (en) * 2014-04-15 2016-11-01 Fujitsu Limited Parameterized states in symbolic execution for software testing
CN109753713B (zh) * 2018-12-28 2023-06-02 中国人民解放军国防科技大学 基于内部实体状态转移的数字电路功能建模方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4694411A (en) * 1985-02-04 1987-09-15 Sanders Associates, Inc. Simulation apparatus and method
US5005136A (en) * 1988-02-16 1991-04-02 U.S. Philips Corporation Silicon-compiler method and arrangement
US5140538A (en) * 1988-12-27 1992-08-18 University Of Arkansas Hybrid digital-analog computer parallel processor
US5038307A (en) * 1989-10-30 1991-08-06 At&T Bell Laboratories Measurement of performance of an extended finite state machine
US5163016A (en) * 1990-03-06 1992-11-10 At&T Bell Laboratories Analytical development and verification of control-intensive systems
US5331568A (en) * 1991-06-18 1994-07-19 Microelectronics & Computer Technology Corporation Apparatus and method for determining sequential hardware equivalence
US5394347A (en) * 1993-07-29 1995-02-28 Digital Equipment Corporation Method and apparatus for generating tests for structures expressed as extended finite state machines

Also Published As

Publication number Publication date
EP0686925A2 (en) 1995-12-13
CA2147671A1 (en) 1995-12-07
US5513122A (en) 1996-04-30
EP0686925A3 (en) 1997-01-22

Similar Documents

Publication Publication Date Title
JPH07334551A (ja) ハイブリッドモデル状態マシーンにおける到達可能状態を決定するための方法及び装置
CN108958736B (zh) 页面生成方法、装置、电子设备及计算机可读介质
US6804634B1 (en) Automatic generation and regeneration of a covering test case set from a model
US5913023A (en) Method for automated generation of tests for software
US5016204A (en) Expert system for performing diagnostic and redesign operations incorporating multiple levels of simulation detail
EP0577298A2 (en) Verification of systems subject to delay constraints
US7882491B2 (en) Automatic generation of a graphical program with a structure node in response to receiving a diagram with states and state transitions
US5691911A (en) Method for pre-processing a hardware independent description of a logic circuit
US8346697B2 (en) Direct construction of finite state machines
US20030016234A1 (en) Implicit frame-based processing for block-diagram simulation
JP5009901B2 (ja) 3次元形状に関係づけられたパラメトリックモデルを生成する方法および装置
US7761397B2 (en) Rule processing method and apparatus providing automatic user input selections
JPH07141179A (ja) 宣言型言語のプログラムから手続き型言語の計算機コードを自動的に生成する方法、宣言型言語で定義されたユーザ・インタフェース及びビジネス論理を有する適用業務プログラム用のインタフェース・コードを自動的に生成する方法及び計算機システム
US7475371B2 (en) Method and system for case-splitting on nodes in a symbolic simulation framework
JP2000181939A (ja) 論理装置の検証方法、検証装置及び記録媒体
US7490312B1 (en) Partition-based incremental implementation flow for use with a programmable logic device
US6247163B1 (en) Method and system of latch mapping for combinational equivalence checking
JP4204039B2 (ja) 動作合成システム、動作合成方法、制御プログラム、可読記録媒体、論理回路の製造方法および論理回路
Gunter et al. Path exploration tool
US20040073413A1 (en) Truth tables
US5796621A (en) Circuit delay abstraction tool
JP2000057123A (ja) 順序回路の状態探索方法および装置並びに状態探索プログラムを記録した記録媒体
CN117032536A (zh) 一种快速构建otx诊断序列的方法及装置
JP2001052041A (ja) 多重制約を満たし多重目標機能を最適化する設計パラメータを取得する方法およびシステム
US6557146B1 (en) Method for the comparison of electrical circuits

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