JPH04211871A - 論理設計の検証支援システム - Google Patents
論理設計の検証支援システムInfo
- Publication number
- JPH04211871A JPH04211871A JP3015313A JP1531391A JPH04211871A JP H04211871 A JPH04211871 A JP H04211871A JP 3015313 A JP3015313 A JP 3015313A JP 1531391 A JP1531391 A JP 1531391A JP H04211871 A JPH04211871 A JP H04211871A
- Authority
- JP
- Japan
- Prior art keywords
- sentence
- test pattern
- correspondence table
- correspondence
- expresses
- 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.)
- Pending
Links
- 238000013461 design Methods 0.000 title abstract description 48
- 238000007689 inspection Methods 0.000 title 1
- 238000012360 testing method Methods 0.000 claims abstract description 86
- 238000004088 simulation Methods 0.000 claims abstract description 19
- 238000011156 evaluation Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 21
- 238000012942 design verification Methods 0.000 claims description 11
- 238000000605 extraction Methods 0.000 claims description 5
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000012546 transfer Methods 0.000 abstract description 15
- 238000000034 method Methods 0.000 description 44
- 238000010586 diagram Methods 0.000 description 20
- 230000007704 transition Effects 0.000 description 12
- 239000000284 extract Substances 0.000 description 6
- 101150099625 STT3 gene Proteins 0.000 description 4
- 101100510333 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) PKC1 gene Proteins 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000001072 colon Anatomy 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
- G01R31/318357—Simulation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318307—Generation of test inputs, e.g. test vectors, patterns or sequences computer-aided, e.g. automatic test program generator [ATPG], program translations, test program debugging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】[発明の目的]
【0002】
【産業上の利用分野】この発明は、論理回路を設計する
際に必要な、テストパターンの作成及び機能シミュレー
ションを自動で行う論理設計の検証支援システムに関す
る。
際に必要な、テストパターンの作成及び機能シミュレー
ションを自動で行う論理設計の検証支援システムに関す
る。
【0003】
【従来の技術】論理回路を設計する際、設計した論理回
路をシミュレーションなどによって評価するため、テス
トパターンの作成が必要である。また、論理回路を設計
する手段として、既存の論理ゲートを多数組み合わせる
ことによって論理回路を設計する手段がある。この手段
によって設計した論理回路のテストパターンの作成方法
には、組合せ回路で用いられる方法と順序回路で用いら
れる方法とがある。
路をシミュレーションなどによって評価するため、テス
トパターンの作成が必要である。また、論理回路を設計
する手段として、既存の論理ゲートを多数組み合わせる
ことによって論理回路を設計する手段がある。この手段
によって設計した論理回路のテストパターンの作成方法
には、組合せ回路で用いられる方法と順序回路で用いら
れる方法とがある。
【0004】組合せ回路で用いられるテスト入力作成方
法には、Dアルゴリズム、ENF法、Poageの方法
、ブール微分法、ランダムテスト作成方法、あるいはP
ODEM法などがある。また、順序回路で用いられるテ
スト作成方法には、Poageの方法、ランダムテスト
作成方法、あるいはコンパクトテスト法などがある。 このような、論理ゲートを対象にしたテストパターン作
成方法は、制御信号とデータの区別がつかず、あらゆる
情報に関するテストパターンを同時に作成してしまう。 これにより、実用される50Kゲート以上の大規模な論
理回路では、作成されるテストパターンが膨大な量にな
る。このため、上述した作成方法を使用できる論理回路
の規模が、10Kゲート以下に制限されてしなう。
法には、Dアルゴリズム、ENF法、Poageの方法
、ブール微分法、ランダムテスト作成方法、あるいはP
ODEM法などがある。また、順序回路で用いられるテ
スト作成方法には、Poageの方法、ランダムテスト
作成方法、あるいはコンパクトテスト法などがある。 このような、論理ゲートを対象にしたテストパターン作
成方法は、制御信号とデータの区別がつかず、あらゆる
情報に関するテストパターンを同時に作成してしまう。 これにより、実用される50Kゲート以上の大規模な論
理回路では、作成されるテストパターンが膨大な量にな
る。このため、上述した作成方法を使用できる論理回路
の規模が、10Kゲート以下に制限されてしなう。
【0005】以上の、既存の論理ゲートを多数組み合わ
せることによって論理回路を設計する手段と異なり、所
望する論理機能をレジスタトランスファレベルのハード
ウェア言語よって記述し、この記述文から論理ゲートを
合成して設計する手段が知られている。この手段によっ
て設計した論理回路のテストパターンは、記述文から構
成した機能設計データベースを基に作成している。これ
は、レジスタ間のデータ転送を中心においた設計レベル
で、テストパターンを作成する方法である。このテスト
パターン作成方法に関し、以下の文献がある。T.LI
N & S.Y.H.SU, The S−Algor
ithm:A Promising Solution
for Systematic Functiona
l Test Generation”,IEEE T
RANS.onCONPUTER−AIDED DES
IGN,VOL.CAD−4,No3,July198
5 機能設計データベースは、各記述文を表現する文対
応表、各記述文が表す機能を有する構成要素を表現する
回路構成要素表、あるいは記述文相互間の従属関係を表
現する従属関係表などから構成されている。従来の文対
応表には、記述文の種類を意味する属性が付加されてい
なかった。このため、テストパターンを作成する際、信
号の区別がつかずあらゆる情報に関するテストパターン
を同時に作成していた。
せることによって論理回路を設計する手段と異なり、所
望する論理機能をレジスタトランスファレベルのハード
ウェア言語よって記述し、この記述文から論理ゲートを
合成して設計する手段が知られている。この手段によっ
て設計した論理回路のテストパターンは、記述文から構
成した機能設計データベースを基に作成している。これ
は、レジスタ間のデータ転送を中心においた設計レベル
で、テストパターンを作成する方法である。このテスト
パターン作成方法に関し、以下の文献がある。T.LI
N & S.Y.H.SU, The S−Algor
ithm:A Promising Solution
for Systematic Functiona
l Test Generation”,IEEE T
RANS.onCONPUTER−AIDED DES
IGN,VOL.CAD−4,No3,July198
5 機能設計データベースは、各記述文を表現する文対
応表、各記述文が表す機能を有する構成要素を表現する
回路構成要素表、あるいは記述文相互間の従属関係を表
現する従属関係表などから構成されている。従来の文対
応表には、記述文の種類を意味する属性が付加されてい
なかった。このため、テストパターンを作成する際、信
号の区別がつかずあらゆる情報に関するテストパターン
を同時に作成していた。
【0006】一方、論理回路を設計する際には、テスト
パターン作成と同様に、このテストパターンを用いて行
う機能シミュレーションも重要である。従来から、論理
システムのシミュレーションとしてレベルソート法とイ
ベント・ドリブン法の2つの方法が知られている。
パターン作成と同様に、このテストパターンを用いて行
う機能シミュレーションも重要である。従来から、論理
システムのシミュレーションとしてレベルソート法とイ
ベント・ドリブン法の2つの方法が知られている。
【0007】レベルソート法は論理回路の構成要素に入
力端子からの段数によりレベル付けを行い、このレベル
番号を基にして全要素の評価(ANDゲートやORゲー
トなどの動作評価)順序を決定し、各入力ベクトル(1
時刻におけるテストパターン)毎に全要素を一回ずつ評
価してシミュレーションを実行する方法である。一般に
、コンパイル方式によって実現されることが多く、ハー
ドウェア記述を直接、または汎用のプログラミング言語
を介して、シーケンシャルなマシンコードに変換して実
行するため、イベント(信号値の変化)の管理を行う必
要がなく非常に効率よくシミュレーションを行う。しか
しながら、非同期回路の取扱いが困難であるため、その
適用範囲が簡単な組み合わせ回路と同期回路に制限され
てしまう。
力端子からの段数によりレベル付けを行い、このレベル
番号を基にして全要素の評価(ANDゲートやORゲー
トなどの動作評価)順序を決定し、各入力ベクトル(1
時刻におけるテストパターン)毎に全要素を一回ずつ評
価してシミュレーションを実行する方法である。一般に
、コンパイル方式によって実現されることが多く、ハー
ドウェア記述を直接、または汎用のプログラミング言語
を介して、シーケンシャルなマシンコードに変換して実
行するため、イベント(信号値の変化)の管理を行う必
要がなく非常に効率よくシミュレーションを行う。しか
しながら、非同期回路の取扱いが困難であるため、その
適用範囲が簡単な組み合わせ回路と同期回路に制限され
てしまう。
【0008】これに対し、イベント・ドリブン法は信号
値の変化を伝搬させながら入力に変化の生じた要素のみ
を評価してシミュレーションを実行する方法である。こ
の方法では、非同期回路も容易に取り扱うことが可能で
、さらにタイミング解析等の機能も容易に付加すること
が可能であることから広く用いらている。しかしながら
、一般にインタープリタ方式で実現されることが多く、
レベルソート法に比べて効率が悪いため評価時間が長く
なったり、イベント管理のためのオーバーヘッド、すな
わち回路動作の制御時間が必要以上にかかる。さらに、
多入力要素の各入力までの入力端子からの段数の違いに
より、無駄な評価が生じてしまう。
値の変化を伝搬させながら入力に変化の生じた要素のみ
を評価してシミュレーションを実行する方法である。こ
の方法では、非同期回路も容易に取り扱うことが可能で
、さらにタイミング解析等の機能も容易に付加すること
が可能であることから広く用いらている。しかしながら
、一般にインタープリタ方式で実現されることが多く、
レベルソート法に比べて効率が悪いため評価時間が長く
なったり、イベント管理のためのオーバーヘッド、すな
わち回路動作の制御時間が必要以上にかかる。さらに、
多入力要素の各入力までの入力端子からの段数の違いに
より、無駄な評価が生じてしまう。
【0009】図13乃至図15を用いて、従来のイベン
ト・ドリブン方式によるシミュレータを説明する。図1
3に示すシミュレータ130は、機能設計データベース
131,イベントバッファ132、イベント評価部13
3、イベント登録部134等から構成されている。図1
4は、ハードウェア記述の一例であり、記述140は、
入力端子A,B,C,D、出力端子Z、内部信号S1,
S2,S3、及び文141(S1=A&B),文142
(S2=S1&C),文143(S3=S2&D),文
144(Z=S3)からなっている。なお、この文には
、データ転送文や条件文などがある。
ト・ドリブン方式によるシミュレータを説明する。図1
3に示すシミュレータ130は、機能設計データベース
131,イベントバッファ132、イベント評価部13
3、イベント登録部134等から構成されている。図1
4は、ハードウェア記述の一例であり、記述140は、
入力端子A,B,C,D、出力端子Z、内部信号S1,
S2,S3、及び文141(S1=A&B),文142
(S2=S1&C),文143(S3=S2&D),文
144(Z=S3)からなっている。なお、この文には
、データ転送文や条件文などがある。
【0010】いま、図15に示すように、A,B,Dの
値が“1”でCの値が“0”の状態から、時刻T1に入
力端子Aに“0”、Cに“1”がテストパターン145
として入力されたとする。外部から入力されたこのテス
トパターン145によってA,Cのイベントが生成され
、イベント情報がイベントバッファ132に格納される
。イベント評価部133は、イベントバッファ132に
格納されているAとCのイベント情報を取り出し、文1
41と文142を評価する。その結果、内部信号S1と
S2にイベントが生じるため、イベント登録部134は
S1とS2のイベントをバッファ132に登録する。
値が“1”でCの値が“0”の状態から、時刻T1に入
力端子Aに“0”、Cに“1”がテストパターン145
として入力されたとする。外部から入力されたこのテス
トパターン145によってA,Cのイベントが生成され
、イベント情報がイベントバッファ132に格納される
。イベント評価部133は、イベントバッファ132に
格納されているAとCのイベント情報を取り出し、文1
41と文142を評価する。その結果、内部信号S1と
S2にイベントが生じるため、イベント登録部134は
S1とS2のイベントをバッファ132に登録する。
【0011】以下同様に、S1とS2のイベントにより
文142と文143を評価して内部信号S2とS3のイ
ベントを登録、S2とS3のイベントにより文143と
文144を評価して内部信号S3と出力端子Zのイベン
トを登録、最後に、S3のイベントにより文144を評
価して出力端子Zのイベントを登録する。Zのイベント
により評価される文はないので、これで時刻T1におけ
る1ベクトル分のシミュレーションが終了する。以上か
ら分かるように、このシミュレータ130では、文14
2〜文144を2回ずつ評価している。
文142と文143を評価して内部信号S2とS3のイ
ベントを登録、S2とS3のイベントにより文143と
文144を評価して内部信号S3と出力端子Zのイベン
トを登録、最後に、S3のイベントにより文144を評
価して出力端子Zのイベントを登録する。Zのイベント
により評価される文はないので、これで時刻T1におけ
る1ベクトル分のシミュレーションが終了する。以上か
ら分かるように、このシミュレータ130では、文14
2〜文144を2回ずつ評価している。
【0012】
【発明が解決しようとする課題】レジスタトランスファ
レベルでのテストパターン作成方法では、実用される複
雑な論理回路では作成されるデータパスが多数にのぼる
。このため、従来のテストパターン作成方法は、単純な
論理回路であれば使用可能であるが、近年の大規模な論
理回路に使用するのは不可能であった。また、従来のレ
ベルソート法によるシミュレータは、非同期回路の取扱
いが困難であり、イベント・ドリブン法は、無駄な評価
時間が生じてしまうという欠点があった。
レベルでのテストパターン作成方法では、実用される複
雑な論理回路では作成されるデータパスが多数にのぼる
。このため、従来のテストパターン作成方法は、単純な
論理回路であれば使用可能であるが、近年の大規模な論
理回路に使用するのは不可能であった。また、従来のレ
ベルソート法によるシミュレータは、非同期回路の取扱
いが困難であり、イベント・ドリブン法は、無駄な評価
時間が生じてしまうという欠点があった。
【0013】そこでこの発明は、このような従来の事情
に鑑みてなされたものであり、その目的とするところは
、大規模な論理回路であっても作成されるテストパター
ンをもれなくかつ高速に自動作成すると共に、無駄な評
価時間を無くして高速にシミュレーションを行うことに
より、論理回路の設計時間を短縮させることができる論
理設計の検証支援システムを提供することにある。
に鑑みてなされたものであり、その目的とするところは
、大規模な論理回路であっても作成されるテストパター
ンをもれなくかつ高速に自動作成すると共に、無駄な評
価時間を無くして高速にシミュレーションを行うことに
より、論理回路の設計時間を短縮させることができる論
理設計の検証支援システムを提供することにある。
【0014】[発明の構成]
【0015】
【課題を解決するための手段】上記目的を達成させるた
め、この発明は、所望する論理機能を表す記述文から、
各記述文を表現する文対応表と、各記述文が表す機能を
有する構成要素を表現する回路構成要素表と、記述文相
互間の従属関係を表現する従属関係表と、前記文対応表
と前記回路構成要素表との対応関係を表現する対応関係
表とを用いて、所望する論理機能を有する論理回路のテ
ストパターンを作成する際に、前記文対応表に、各記述
文の種類に応じた属性を付加し、記述文の右辺を表現す
る右辺表現表と、右辺が表す機能を有する回路構成要素
と前記文対応表との対応関係を表現する右辺対応関係表
と、左辺に記述されている回路構成要素と前記文対応表
との対応関係を表現する左辺対応関係表とを用いて、任
意の属性に関するテストパターンを作成するように構成
されている。
め、この発明は、所望する論理機能を表す記述文から、
各記述文を表現する文対応表と、各記述文が表す機能を
有する構成要素を表現する回路構成要素表と、記述文相
互間の従属関係を表現する従属関係表と、前記文対応表
と前記回路構成要素表との対応関係を表現する対応関係
表とを用いて、所望する論理機能を有する論理回路のテ
ストパターンを作成する際に、前記文対応表に、各記述
文の種類に応じた属性を付加し、記述文の右辺を表現す
る右辺表現表と、右辺が表す機能を有する回路構成要素
と前記文対応表との対応関係を表現する右辺対応関係表
と、左辺に記述されている回路構成要素と前記文対応表
との対応関係を表現する左辺対応関係表とを用いて、任
意の属性に関するテストパターンを作成するように構成
されている。
【0016】さらに、この発明は、ハードウェア記述言
語によってモデル化された論理システムの動作を模擬す
る機能シミュレーションを行う際に、ハードウェア記述
の各文に入力端子からの段数に応じたレベル番号を割り
付けるレベル番号割り付け手段と、前記入力端子に入力
されるテストパターンの変化によって実行すべき文を抽
出する文抽出手段と、抽出された文を保持する抽出文保
持手段と、この抽出文保持手段に保持されている文のう
ちレベル番号の最小の文を取り出して評価する文評価手
段と、この文評価手段による評価の結果、新たに発生し
たテストパターンの変化によって実行すべき文を前記抽
出文保持手段に追加する文追加手段とからなる機能シミ
ュレータを備えた構成となっている。
語によってモデル化された論理システムの動作を模擬す
る機能シミュレーションを行う際に、ハードウェア記述
の各文に入力端子からの段数に応じたレベル番号を割り
付けるレベル番号割り付け手段と、前記入力端子に入力
されるテストパターンの変化によって実行すべき文を抽
出する文抽出手段と、抽出された文を保持する抽出文保
持手段と、この抽出文保持手段に保持されている文のう
ちレベル番号の最小の文を取り出して評価する文評価手
段と、この文評価手段による評価の結果、新たに発生し
たテストパターンの変化によって実行すべき文を前記抽
出文保持手段に追加する文追加手段とからなる機能シミ
ュレータを備えた構成となっている。
【0017】
【作用】上記構成において、この発明におけるテストパ
ターンの作成方法は、まず、レジスタトランスファレベ
ルのハードウェア記述言語を用いて所望する論理機能を
表す。次に、この記述文から、機能設計データベースを
構成する。この機能設計データベースは、文対応表、回
路構成要素表、従属関係表、右辺表現表、右辺対応関係
表、および左辺対応関係表によるネット構造となってい
る。各記述文を表現する文対応表には、各記述文の種類
、例えば条件文、状態遷移文などに応じた属性を付加す
る。任意の属性と回路構成要素を指定することにより、
特定の情報に関するテストパターンのみを作成している
。
ターンの作成方法は、まず、レジスタトランスファレベ
ルのハードウェア記述言語を用いて所望する論理機能を
表す。次に、この記述文から、機能設計データベースを
構成する。この機能設計データベースは、文対応表、回
路構成要素表、従属関係表、右辺表現表、右辺対応関係
表、および左辺対応関係表によるネット構造となってい
る。各記述文を表現する文対応表には、各記述文の種類
、例えば条件文、状態遷移文などに応じた属性を付加す
る。任意の属性と回路構成要素を指定することにより、
特定の情報に関するテストパターンのみを作成している
。
【0018】また、この発明の機能シミュレータは、シ
ミュレーション実行前にハードウェア記述の解析を行い
、各文に入力端子からの段数に応じたレベル番号を割り
付け、シミュレータの内部データ構造に変換しておく。 シミュレーションの実行においては、まず外部から入力
されたテストパターンの1時刻分の変化により、直接パ
ターンが変化する文を全て拾い出してバッファに保持す
る。次に、バッファのなかでレベル番号の最小の文を全
て取り出して評価する。評価の結果、新たにパターンの
変化が発生した場合、このイベントによって直接パター
ンが変化する文を全て拾い出しバッファに追加する。追
加された文を含むバッファ中の文のうち、レベル番号の
最小の文の評価と新たに発生したイベントによって評価
すべき文の追加を繰り返す。全ての文の評価が終了して
バッファが空になったら、1時刻分のシミュレーション
を終了している。
ミュレーション実行前にハードウェア記述の解析を行い
、各文に入力端子からの段数に応じたレベル番号を割り
付け、シミュレータの内部データ構造に変換しておく。 シミュレーションの実行においては、まず外部から入力
されたテストパターンの1時刻分の変化により、直接パ
ターンが変化する文を全て拾い出してバッファに保持す
る。次に、バッファのなかでレベル番号の最小の文を全
て取り出して評価する。評価の結果、新たにパターンの
変化が発生した場合、このイベントによって直接パター
ンが変化する文を全て拾い出しバッファに追加する。追
加された文を含むバッファ中の文のうち、レベル番号の
最小の文の評価と新たに発生したイベントによって評価
すべき文の追加を繰り返す。全ての文の評価が終了して
バッファが空になったら、1時刻分のシミュレーション
を終了している。
【0019】
【実施例】以下、図面を用いてこの発明の実施例を説明
する。図1は、この発明の論理設計の検証支援システム
全体のブロック図である。同図において、記述格納部1
は、所望する論理機能を表すレジスタトランスファレベ
ルの記述文を格納するところである。コンパイラ3は、
記述格納部1に格納されている記述文を、機能設計デー
タベース5に変換するものである。機能設計データベー
ス5は、テストパターン作成の中心となるところであり
、詳細は後述するが、各記述文に基づいて作成される各
種表から構成されている。テストパターン作成システム
7は、機能設計データベース5を基にしてテストパター
ンを作成するところである。テストパターン格納部9は
、作成されたテストパターンを格納するものである。 シミュレータ8は、機能設計データベース5に格納され
ているデータと、テストパターン格納部9に格納されて
いるテストパターンとを用いてシミュレーションを行う
ものである。表示部11は、テストパターン作成中にお
いて、機能設計データベース5から抽出されたデータを
表示するところである。
する。図1は、この発明の論理設計の検証支援システム
全体のブロック図である。同図において、記述格納部1
は、所望する論理機能を表すレジスタトランスファレベ
ルの記述文を格納するところである。コンパイラ3は、
記述格納部1に格納されている記述文を、機能設計デー
タベース5に変換するものである。機能設計データベー
ス5は、テストパターン作成の中心となるところであり
、詳細は後述するが、各記述文に基づいて作成される各
種表から構成されている。テストパターン作成システム
7は、機能設計データベース5を基にしてテストパター
ンを作成するところである。テストパターン格納部9は
、作成されたテストパターンを格納するものである。 シミュレータ8は、機能設計データベース5に格納され
ているデータと、テストパターン格納部9に格納されて
いるテストパターンとを用いてシミュレーションを行う
ものである。表示部11は、テストパターン作成中にお
いて、機能設計データベース5から抽出されたデータを
表示するところである。
【0020】まず、このように構成された論理設計の検
証支援システムにけるテストパターンの作成方法を以下
に説明する。図2は、機能設計データベース5の詳細な
構成を示すブロック図である。同図に示す機能設計デー
タベース5は、文対応表51a〜51c、回路構成要素
表53、従属関係表55、右辺表現表57、右辺対応関
係表59a,59b、および左辺対応関係表59cから
構成されている。この機能設計データベース5は、各表
の接続状態からネット構造となっている。
証支援システムにけるテストパターンの作成方法を以下
に説明する。図2は、機能設計データベース5の詳細な
構成を示すブロック図である。同図に示す機能設計デー
タベース5は、文対応表51a〜51c、回路構成要素
表53、従属関係表55、右辺表現表57、右辺対応関
係表59a,59b、および左辺対応関係表59cから
構成されている。この機能設計データベース5は、各表
の接続状態からネット構造となっている。
【0021】文対応表51a〜51cは、レジスタトラ
ンスファレベルの各記述文を表現するものであり、各記
述文に1対1で対応している。さらに、文対応表51a
〜51cには、各記述文の種類に応じた属性が付加され
る。例えば、タイミング文を表現する文対応表51aに
はCLOCK属性が、データ転送文を表現する文対応表
51bにはDATA属性が付加されている。また、文対
応表51cはIF文などの条件文であり、COND属性
が付加されている。この他、図示していないが、状態遷
移文にはSTATE属性が付加される。
ンスファレベルの各記述文を表現するものであり、各記
述文に1対1で対応している。さらに、文対応表51a
〜51cには、各記述文の種類に応じた属性が付加され
る。例えば、タイミング文を表現する文対応表51aに
はCLOCK属性が、データ転送文を表現する文対応表
51bにはDATA属性が付加されている。また、文対
応表51cはIF文などの条件文であり、COND属性
が付加されている。この他、図示していないが、状態遷
移文にはSTATE属性が付加される。
【0022】回路構成要素表53は、記述文が表す機能
を有する構成要素を表現するものである。具体的には、
例えば外部端子、レジスタ、内部ターミナルなどを表現
する表である。従属関係表55は、条件付きのデータ転
送文、複合文、条件文の入れ子など、記述文相互間の従
属関係を表現する表である。右辺表現表57は、記述文
中の右辺を表現するところである。
を有する構成要素を表現するものである。具体的には、
例えば外部端子、レジスタ、内部ターミナルなどを表現
する表である。従属関係表55は、条件付きのデータ転
送文、複合文、条件文の入れ子など、記述文相互間の従
属関係を表現する表である。右辺表現表57は、記述文
中の右辺を表現するところである。
【0023】右辺対応関係表59a,59bは、右辺が
表す機能を有する回路構成要素と、文対応表51a〜5
1cとの対応関係を表現するものである。例えば、右辺
対応関係表59aは、文対応表51bが2つの回路構成
要素53に対応していることを示している。また、右辺
対応関係表59bは、文対応表51cが2つの回路構成
要素53に対応していることを示している。左辺対応関
係表59cは、右辺対応関係表59と同様に、左辺に記
述されている回路構成要素と文対応表51a〜51cと
の対応関係を表現するものである。このように、機能設
計データベース5は構成されており、次に、具体的なレ
ジスタトランスファレベルの記述文と、この記述文を基
に構成される機能設計データベース5について説明する
。図3(a)は記述文の一例であり、図3(b)はその
記述文の意味する回路図を示している。これらの図に示
す記述文は、制御信号Aが条件を満したとき、CLKの
入力に伴ってCをBに出力することを意味している。 記述中、IF A,B=C,あるいはAT CLK
が、それぞれ1つの記述文である。B=Cはデータ転送
文であり、等号(=)で明記されている。また、IF
Aは条件文であり、制御信号AがIF文で表されてい
る。
表す機能を有する回路構成要素と、文対応表51a〜5
1cとの対応関係を表現するものである。例えば、右辺
対応関係表59aは、文対応表51bが2つの回路構成
要素53に対応していることを示している。また、右辺
対応関係表59bは、文対応表51cが2つの回路構成
要素53に対応していることを示している。左辺対応関
係表59cは、右辺対応関係表59と同様に、左辺に記
述されている回路構成要素と文対応表51a〜51cと
の対応関係を表現するものである。このように、機能設
計データベース5は構成されており、次に、具体的なレ
ジスタトランスファレベルの記述文と、この記述文を基
に構成される機能設計データベース5について説明する
。図3(a)は記述文の一例であり、図3(b)はその
記述文の意味する回路図を示している。これらの図に示
す記述文は、制御信号Aが条件を満したとき、CLKの
入力に伴ってCをBに出力することを意味している。 記述中、IF A,B=C,あるいはAT CLK
が、それぞれ1つの記述文である。B=Cはデータ転送
文であり、等号(=)で明記されている。また、IF
Aは条件文であり、制御信号AがIF文で表されてい
る。
【0024】また、図4(a)は記述文の他の例であり
、図4(b)はその意味するところの図を示す。この記
述文は、状態遷移を表しており、初期状態はSTT1で
ある。制御信号Aが条件を満たした場合は状態がSTT
2に遷移し、満さない場合はSTT3に遷移する。さら
に、STT2に遷移した場合は次にSTT1に状態が移
り、STT3に遷移した場合はSTT2に移ることを意
味している。記述文中、NEXTSTT2(3あるいは
1)が1つの記述文であり、STT1〜3が右辺となる
。また、状態がコロン(:)で示され、NEXT文によ
って状態遷移が明記されている。このような記述文が記
述格納部1に格納されると、シンタックスチェックなど
の文法上の誤りチェックが行われた後、コンパイラ3に
よって機能設計データベース5に変換される。
、図4(b)はその意味するところの図を示す。この記
述文は、状態遷移を表しており、初期状態はSTT1で
ある。制御信号Aが条件を満たした場合は状態がSTT
2に遷移し、満さない場合はSTT3に遷移する。さら
に、STT2に遷移した場合は次にSTT1に状態が移
り、STT3に遷移した場合はSTT2に移ることを意
味している。記述文中、NEXTSTT2(3あるいは
1)が1つの記述文であり、STT1〜3が右辺となる
。また、状態がコロン(:)で示され、NEXT文によ
って状態遷移が明記されている。このような記述文が記
述格納部1に格納されると、シンタックスチェックなど
の文法上の誤りチェックが行われた後、コンパイラ3に
よって機能設計データベース5に変換される。
【0025】図5および図6は、図3(a)および図4
(a)に示した記述文からそれぞれ構成された機能設計
データベース5である。図5に示す機能設計データベー
ス5は、文対応表51a〜51cと、回路構成要素表5
3a〜53fから構成されている。文対応表51aには
CLOCK属性が、文対応表51bにはDATA属性が
付加されている。また、文対応表51cには、COND
属性が付加されている。回路構成要素表53a〜53d
は、回路構成要素としてレジスタ<REG>を示してい
る。回路構成要素表53eはAがTRUEのとき条件が
満されることを、回路構成要素表53fはCLKがUP
のタイミングで入力されることを、それぞれ意味してい
る。
(a)に示した記述文からそれぞれ構成された機能設計
データベース5である。図5に示す機能設計データベー
ス5は、文対応表51a〜51cと、回路構成要素表5
3a〜53fから構成されている。文対応表51aには
CLOCK属性が、文対応表51bにはDATA属性が
付加されている。また、文対応表51cには、COND
属性が付加されている。回路構成要素表53a〜53d
は、回路構成要素としてレジスタ<REG>を示してい
る。回路構成要素表53eはAがTRUEのとき条件が
満されることを、回路構成要素表53fはCLKがUP
のタイミングで入力されることを、それぞれ意味してい
る。
【0026】この機能設計データベース5において、回
路構成要素表53aの入力元は文対応表51cであり、
文対応表51cの入力元は回路構成要素表53bである
。また、回路構成要素表53aの出力先は文対応表51
cであり、文対応表51cの出力先は回路構成要素表5
3bである。文対応表51a、文対応表51bについて
も同様に、回路構成要素表53b,53c、53dと入
出力関係にある。文対応表51b,51cの条件として
回路構成要素表53eが対応し、文対応表51aの条件
として回路構成要素表53fが対応している。回路構成
要素表53eの条件が満たされると、文対応表51c中
の、次の入力元として文対応表51bが指定される。 すなわち、Aの条件が満たされることにより、Cのデー
タがBに転送される。
路構成要素表53aの入力元は文対応表51cであり、
文対応表51cの入力元は回路構成要素表53bである
。また、回路構成要素表53aの出力先は文対応表51
cであり、文対応表51cの出力先は回路構成要素表5
3bである。文対応表51a、文対応表51bについて
も同様に、回路構成要素表53b,53c、53dと入
出力関係にある。文対応表51b,51cの条件として
回路構成要素表53eが対応し、文対応表51aの条件
として回路構成要素表53fが対応している。回路構成
要素表53eの条件が満たされると、文対応表51c中
の、次の入力元として文対応表51bが指定される。 すなわち、Aの条件が満たされることにより、Cのデー
タがBに転送される。
【0027】図6に示す機能設計データベース5は、文
対応表61a〜61d、回路構成要素表63a〜63f
、および右辺対応関係表65a〜65dから構成されて
いる。文対応表61a〜61dにはSTATE属性が付
加されており、それぞれ図4(a)中の状態遷移文(N
EXT STT1〜3)を表現している。回路構成要
素表63a〜63cは、記述文の表す回路の状態を1つ
の回路構成要素として表している。回路構成要素表63
d,63eは状態が遷移する条件を示し、回路構成要素
表63fは状態が遷移するタイミングを示している。 また、右辺対応関係表65a〜65dは、文対応表61
a〜61dが接続する右辺の回路構成要素表63a〜6
3cの接続数と、その回路構成要素表名を表している。
対応表61a〜61d、回路構成要素表63a〜63f
、および右辺対応関係表65a〜65dから構成されて
いる。文対応表61a〜61dにはSTATE属性が付
加されており、それぞれ図4(a)中の状態遷移文(N
EXT STT1〜3)を表現している。回路構成要
素表63a〜63cは、記述文の表す回路の状態を1つ
の回路構成要素として表している。回路構成要素表63
d,63eは状態が遷移する条件を示し、回路構成要素
表63fは状態が遷移するタイミングを示している。 また、右辺対応関係表65a〜65dは、文対応表61
a〜61dが接続する右辺の回路構成要素表63a〜6
3cの接続数と、その回路構成要素表名を表している。
【0028】この機能設計データベース5の対応関係の
一部を説明すると、例えば、文対応表61aの前の状態
はSTT1であり、次の状態はSTT2である。STT
2の状態に遷移する条件としては、AがTRUEである
ことを意味している。また、文対応表61bが次の状態
STT3に遷移する条件としては、AがFALSEであ
ることを示している。右辺対応関係表65dは、文対応
表61dが接続する回路構成要素表の数が1であり、そ
れが回路構成要素表63cであることを表している。
一部を説明すると、例えば、文対応表61aの前の状態
はSTT1であり、次の状態はSTT2である。STT
2の状態に遷移する条件としては、AがTRUEである
ことを意味している。また、文対応表61bが次の状態
STT3に遷移する条件としては、AがFALSEであ
ることを示している。右辺対応関係表65dは、文対応
表61dが接続する回路構成要素表の数が1であり、そ
れが回路構成要素表63cであることを表している。
【0029】図5および図6から分かるように、機能設
計データベース5は、テストパターンを作成するための
データを取り出すため、両方向にたどれるようなデータ
構造となっている。このように、機能設計データベース
5が構成されると、この機能設計データベース5を基に
テストパターン作成システム7により、テストパターン
が作成される。
計データベース5は、テストパターンを作成するための
データを取り出すため、両方向にたどれるようなデータ
構造となっている。このように、機能設計データベース
5が構成されると、この機能設計データベース5を基に
テストパターン作成システム7により、テストパターン
が作成される。
【0030】図7は、テストパターン作成システム7の
処理の流れを説明するフローチャートである。まず、所
望する論理回路の大きなデータの流れとしてのデータパ
スを、表示部11に表示されるデータを参照しながら設
定する。表示部11には、機能設計データベース5から
抽出されたデータが表示される(ステップ101)。こ
れにより、設定されたデータパスを繋げるための制御条
件が探索され、設定される(ステップ103〜ステップ
105)。
処理の流れを説明するフローチャートである。まず、所
望する論理回路の大きなデータの流れとしてのデータパ
スを、表示部11に表示されるデータを参照しながら設
定する。表示部11には、機能設計データベース5から
抽出されたデータが表示される(ステップ101)。こ
れにより、設定されたデータパスを繋げるための制御条
件が探索され、設定される(ステップ103〜ステップ
105)。
【0031】このとき、設定した条件に矛盾が生じる場
合がある。例えば、ある箇所では制御信号Aが0のとき
データパスを繋げるように設定されていながら、別の箇
所では制御信号Aが1のとき繋げるように設定されてい
る可能性がある。このため、このような矛盾がないかど
うかの判定が行われる(ステップ107)。矛盾がない
と判定されると、テストパターンの作成が実行される(
ステップ109)。1本のデータパスに関するテストパ
ターンの作成が終了すると、別のデータパスを設定し、
同様の処理を繰り返す(ステップ101乃至ステップ1
11)。
合がある。例えば、ある箇所では制御信号Aが0のとき
データパスを繋げるように設定されていながら、別の箇
所では制御信号Aが1のとき繋げるように設定されてい
る可能性がある。このため、このような矛盾がないかど
うかの判定が行われる(ステップ107)。矛盾がない
と判定されると、テストパターンの作成が実行される(
ステップ109)。1本のデータパスに関するテストパ
ターンの作成が終了すると、別のデータパスを設定し、
同様の処理を繰り返す(ステップ101乃至ステップ1
11)。
【0032】一方、条件の設定に矛盾がある場合には、
設定した条件値を異なる値に再設定可能かどうかが調べ
られる(ステップ113)。この結果、再設定可能な場
合には、制御条件の設定が再び行われる(ステップ10
5)。しかしながら、再設定が不可能な場合には、テス
トパターンの作成が不可能であるとして処理を終了する
(ステップ115)。
設定した条件値を異なる値に再設定可能かどうかが調べ
られる(ステップ113)。この結果、再設定可能な場
合には、制御条件の設定が再び行われる(ステップ10
5)。しかしながら、再設定が不可能な場合には、テス
トパターンの作成が不可能であるとして処理を終了する
(ステップ115)。
【0033】データパスの設定時に表示されるデータの
例を、図8および図9に示す。図8に示すデータは、D
ATA属性の文対応表51bからデータ転送系のテスト
パターンを作成する場合のデータである。このデータを
基に設計者が、データパス上の注目したい箇所の回路構
成要素名、回路構成要素、状態名、および属性を指定す
る。具体的には、facil−4、<REG>、ST−
1、DATAが指定されている。これにより、機能設計
データベース5から、facil−4に対応する回路構
成要素表53が検索される。検索された回路構成要素表
53に繋がっている文対応表51a〜51cのうち、D
ATA属性のものだけが選出される。さらに、選出され
た文対応表51bから、facil−4の前後に接続さ
れる回路構成要素名が取り出される。同図で示すように
、facil−4の入力元としてfacil−1〜fa
cil−3が、出力先としてfacil−5〜faci
l−7が取り出され、表示されている。
例を、図8および図9に示す。図8に示すデータは、D
ATA属性の文対応表51bからデータ転送系のテスト
パターンを作成する場合のデータである。このデータを
基に設計者が、データパス上の注目したい箇所の回路構
成要素名、回路構成要素、状態名、および属性を指定す
る。具体的には、facil−4、<REG>、ST−
1、DATAが指定されている。これにより、機能設計
データベース5から、facil−4に対応する回路構
成要素表53が検索される。検索された回路構成要素表
53に繋がっている文対応表51a〜51cのうち、D
ATA属性のものだけが選出される。さらに、選出され
た文対応表51bから、facil−4の前後に接続さ
れる回路構成要素名が取り出される。同図で示すように
、facil−4の入力元としてfacil−1〜fa
cil−3が、出力先としてfacil−5〜faci
l−7が取り出され、表示されている。
【0034】次に、設計者が取り出された回路構成要素
名の1つを選択する。例えば、facil−1が選択さ
れると、facil−4とfacil−1との接続ノー
ドから、CONDITION(条件)とTIMINGが
取り出され、図中下部に示すように表示される。この表
示データは、A、Bの反転、およびIN1=A1との論
理積がTRUEとなったとき、条件が満たされることを
意味している。また、タイミングとしては、CLKの立
ち上がりでデータを転送することを示している。これら
の条件およびタイミングから、テストパターンが作成さ
れる。このような処理を、入力端子属性あるいは出力端
子属性をもつ回路構成要素表53までたどることにより
、データを入出力するテストパターンの作成ができる。 制御系、クロック系のテストパターン作成についても同
様に作成可能である。図9は、状態遷移系のテストパタ
ーン作成の際に、機能設計データベース5から取り出さ
れるデータの一例である。図8のときと同様に、まず、
設計者が注目したい状態名(ST−3)と、属性(ST
ATE)を指定する。これにより、機能設計データベー
ス5からST−3に対応する回路構成要素表53を検索
し、これに繋がるSTATE属性の文対応表が選出され
る。さらに、この文対応表からST−3の前後の状態名
が取り出される。同図では、ST−3の前の状態名とし
てST−1,ST−2が、後の状態名としてST−4〜
ST−6が表示されている。
名の1つを選択する。例えば、facil−1が選択さ
れると、facil−4とfacil−1との接続ノー
ドから、CONDITION(条件)とTIMINGが
取り出され、図中下部に示すように表示される。この表
示データは、A、Bの反転、およびIN1=A1との論
理積がTRUEとなったとき、条件が満たされることを
意味している。また、タイミングとしては、CLKの立
ち上がりでデータを転送することを示している。これら
の条件およびタイミングから、テストパターンが作成さ
れる。このような処理を、入力端子属性あるいは出力端
子属性をもつ回路構成要素表53までたどることにより
、データを入出力するテストパターンの作成ができる。 制御系、クロック系のテストパターン作成についても同
様に作成可能である。図9は、状態遷移系のテストパタ
ーン作成の際に、機能設計データベース5から取り出さ
れるデータの一例である。図8のときと同様に、まず、
設計者が注目したい状態名(ST−3)と、属性(ST
ATE)を指定する。これにより、機能設計データベー
ス5からST−3に対応する回路構成要素表53を検索
し、これに繋がるSTATE属性の文対応表が選出され
る。さらに、この文対応表からST−3の前後の状態名
が取り出される。同図では、ST−3の前の状態名とし
てST−1,ST−2が、後の状態名としてST−4〜
ST−6が表示されている。
【0035】次に、設計者が前の状態名の1つ(例えば
、ST−1)を選択する。この結果、ST−4とST−
1との間の接続ノードから、状態遷移のCONDITI
ONとTIMINGが取り出され、テストパターンが作
成される。この処理を、初期状態までたどることにより
、任意の状態に遷移させるテストパターンが作成できる
。
、ST−1)を選択する。この結果、ST−4とST−
1との間の接続ノードから、状態遷移のCONDITI
ONとTIMINGが取り出され、テストパターンが作
成される。この処理を、初期状態までたどることにより
、任意の状態に遷移させるテストパターンが作成できる
。
【0036】このようにしてテストパターン作成システ
ム7によって作成されテストパターンは、テストパター
ン格納部9に格納される。以上のようなテストパターン
作成方法により、状態遷移のフロー、データ転送系、制
御系、クロック信号系など、任意の属性に関するテスト
パターンのみを容易に作成することができる。
ム7によって作成されテストパターンは、テストパター
ン格納部9に格納される。以上のようなテストパターン
作成方法により、状態遷移のフロー、データ転送系、制
御系、クロック信号系など、任意の属性に関するテスト
パターンのみを容易に作成することができる。
【0037】次に、この発明の論理設計の検証支援シス
テムにおける機能シミュレータを以下に説明する。図1
0は、この発明の機能シミュレータの構成を示すブロッ
ク図である。同図に示す機能シミュレータは、図1で示
した記述格納部1、機能設計データベース5、テストパ
ターン格納部9、及び機能シミュレータの中心となるシ
ミュレータ8から構成されている。
テムにおける機能シミュレータを以下に説明する。図1
0は、この発明の機能シミュレータの構成を示すブロッ
ク図である。同図に示す機能シミュレータは、図1で示
した記述格納部1、機能設計データベース5、テストパ
ターン格納部9、及び機能シミュレータの中心となるシ
ミュレータ8から構成されている。
【0038】シミュレータ8には、レベル番号割り当て
部81、文抽出部83、バッファ85、文評価部87、
及び文追加部89が備えられている。レベル番号割り当
て部81は、機能設計データベース5から入力されるハ
ードウェア記述の各文に、入力端子からの段数に応じた
レベル番号を割り当てるところである。文抽出部83は
、テストパターン格納部9から入力されるテストベクト
ルのうち、イベントによって評価すべき文を抽出する機
能を有している。バッファ85は、文抽出部83によっ
て抽出された文を保持するものである。文評価部87は
、バッファ85に保持されている複数の文のうち、レベ
ル番号が最小の文を取り出して評価するところである。 文追加部89は、文評価部87による文の評価の結果、
新たに発生したイベントによって評価すべき文をバッフ
ァ85に追加する役割をしている。
部81、文抽出部83、バッファ85、文評価部87、
及び文追加部89が備えられている。レベル番号割り当
て部81は、機能設計データベース5から入力されるハ
ードウェア記述の各文に、入力端子からの段数に応じた
レベル番号を割り当てるところである。文抽出部83は
、テストパターン格納部9から入力されるテストベクト
ルのうち、イベントによって評価すべき文を抽出する機
能を有している。バッファ85は、文抽出部83によっ
て抽出された文を保持するものである。文評価部87は
、バッファ85に保持されている複数の文のうち、レベ
ル番号が最小の文を取り出して評価するところである。 文追加部89は、文評価部87による文の評価の結果、
新たに発生したイベントによって評価すべき文をバッフ
ァ85に追加する役割をしている。
【0039】図14に示したハードウェア記述140が
、機能設計データベース5から入力された場合のシミュ
レータ8の動作を説明する。レベル番号割り当て部81
は記述140を読み込み、図11のように各文にレベル
ル番号を割り当て、再び機能設計データベース5に格納
する。文141は、右辺が全て入力端子であるのでレベ
ル番号は“1”となる。文142は、Cが入力端子であ
るが、S1がレベル1の文で決定されるのでレベル番号
は“2”となる。同様に、文143のレベル番号は“3
”、文144のレベル番号は“4”となる。
、機能設計データベース5から入力された場合のシミュ
レータ8の動作を説明する。レベル番号割り当て部81
は記述140を読み込み、図11のように各文にレベル
ル番号を割り当て、再び機能設計データベース5に格納
する。文141は、右辺が全て入力端子であるのでレベ
ル番号は“1”となる。文142は、Cが入力端子であ
るが、S1がレベル1の文で決定されるのでレベル番号
は“2”となる。同様に、文143のレベル番号は“3
”、文144のレベル番号は“4”となる。
【0040】図15で示したように、時刻T1に入力端
子Aに“0”、Cに“1”がテストパターンとして入力
された場合、文抽出部83はA,Cの各イベントによっ
て評価すべき文として、文141、文142を抽出して
バッファ85に格納する(step1)。文評価部87
は、バッファ85に格納されている文141、文142
のうち、レベル番号が最小の文141を取り出して評価
する。この結果、内部信号S1にイベントが生じるため
文追加部89はS1のイベントにより評価すべき文とし
て文142を抽出してバッファ85に追加する(ste
p2)。但し、この場合はすでに文142はバッファ8
5に格納されているので追加は行われない。
子Aに“0”、Cに“1”がテストパターンとして入力
された場合、文抽出部83はA,Cの各イベントによっ
て評価すべき文として、文141、文142を抽出して
バッファ85に格納する(step1)。文評価部87
は、バッファ85に格納されている文141、文142
のうち、レベル番号が最小の文141を取り出して評価
する。この結果、内部信号S1にイベントが生じるため
文追加部89はS1のイベントにより評価すべき文とし
て文142を抽出してバッファ85に追加する(ste
p2)。但し、この場合はすでに文142はバッファ8
5に格納されているので追加は行われない。
【0041】次に、文142を評価した結果、内部信号
S2にイベントが生じるため、文追加部89はS2のイ
ベントにより評価すべき文として文143を抽出してバ
ッファ85に追加する(step3)。同様に、文14
3を評価し、内部信号S3のイベントにより評価すべき
文として文144がバッファ85に追加される(ste
p4)。最後に、文評価部87はバッファ85から文1
44を取り出し評価する。文144を評価した結果、出
力端子Zにイベントが生じるが、このイベントにより評
価すべき文がないので文の追加は行われない(step
5)。これで、バッファ85が空になったので、時刻T
1における1ベクトル分のシミュレーションが終了とな
る。
S2にイベントが生じるため、文追加部89はS2のイ
ベントにより評価すべき文として文143を抽出してバ
ッファ85に追加する(step3)。同様に、文14
3を評価し、内部信号S3のイベントにより評価すべき
文として文144がバッファ85に追加される(ste
p4)。最後に、文評価部87はバッファ85から文1
44を取り出し評価する。文144を評価した結果、出
力端子Zにイベントが生じるが、このイベントにより評
価すべき文がないので文の追加は行われない(step
5)。これで、バッファ85が空になったので、時刻T
1における1ベクトル分のシミュレーションが終了とな
る。
【0042】図12は、上述した各stepによるバッ
ファ85の変化の様子を示す図である。同図から分かる
ように、バッファ85には、評価すべき文の文番号14
1〜144、レベル番号1〜4、及びイベントが生じた
時刻T1が格納されている。このように、この発明のシ
ミュレータ8によれば、イベントが生じるごとに評価す
べき文を追加することにより、文の無駄な評価を防いで
いる。図16は、従来のシミュレータ130と本発明に
よるシミュレータ8との、文の評価状況を比較した表で
ある。同図に示すように、従来のシミュレータ130は
文142〜144を無駄に評価しているが、本発明によ
るシミュレータ8は1文につき1回評価するのみであり
、無駄無く評価している。
ファ85の変化の様子を示す図である。同図から分かる
ように、バッファ85には、評価すべき文の文番号14
1〜144、レベル番号1〜4、及びイベントが生じた
時刻T1が格納されている。このように、この発明のシ
ミュレータ8によれば、イベントが生じるごとに評価す
べき文を追加することにより、文の無駄な評価を防いで
いる。図16は、従来のシミュレータ130と本発明に
よるシミュレータ8との、文の評価状況を比較した表で
ある。同図に示すように、従来のシミュレータ130は
文142〜144を無駄に評価しているが、本発明によ
るシミュレータ8は1文につき1回評価するのみであり
、無駄無く評価している。
【0043】なお、バッファ85に格納する文の情報は
、文番号、レベル番号、イベントが生じた時刻に限らず
、これ以外の情報も格納可能である。但し、文のレベル
番号は必須である。また、イベントにより評価すべき文
を抽出してバッファ85に保持する際、レベル番号に基
づいて予めソートしておくことが可能である。さらに、
この発明の論理設計の検証支援システムは、テストパタ
ーンの作成及びシミュレーションのみならず、例えば記
述文から論理ゲートを合成する論理合成などを含む、機
能レベルの設計支援システム全体に対して応用可能であ
る。
、文番号、レベル番号、イベントが生じた時刻に限らず
、これ以外の情報も格納可能である。但し、文のレベル
番号は必須である。また、イベントにより評価すべき文
を抽出してバッファ85に保持する際、レベル番号に基
づいて予めソートしておくことが可能である。さらに、
この発明の論理設計の検証支援システムは、テストパタ
ーンの作成及びシミュレーションのみならず、例えば記
述文から論理ゲートを合成する論理合成などを含む、機
能レベルの設計支援システム全体に対して応用可能であ
る。
【0044】
【発明の効果】以上説明してきたように、この発明の論
理設計の検証支援システムによるテストパターン作成方
法は、文対応表に属性を付加することにより、任意の属
性に関するテストパターンのみを作成できる。また、デ
ータパスを繋げるための制御条件の探索範囲を縮小させ
ることができる。これにより、大規模な論理回路であっ
ても作成すべきテストパターン量を最小限にとどめ、も
れがなくかつ高速にテストパターンを自動作成すること
ができる。
理設計の検証支援システムによるテストパターン作成方
法は、文対応表に属性を付加することにより、任意の属
性に関するテストパターンのみを作成できる。また、デ
ータパスを繋げるための制御条件の探索範囲を縮小させ
ることができる。これにより、大規模な論理回路であっ
ても作成すべきテストパターン量を最小限にとどめ、も
れがなくかつ高速にテストパターンを自動作成すること
ができる。
【0045】また、この発明の論理設計の検証支援シス
テムによる機能シミュレータによれば、常に入力端子に
近い文から評価を行うことにより、前段の信号値が全て
安定してから次段の文の評価を行うようにした。このた
め、文の無駄な評価を防ぐことができ、シミュレーショ
ンを高速に実行することができる。これらのことから、
論理回路の設計時間を大幅に短縮させることが可能とな
る。
テムによる機能シミュレータによれば、常に入力端子に
近い文から評価を行うことにより、前段の信号値が全て
安定してから次段の文の評価を行うようにした。このた
め、文の無駄な評価を防ぐことができ、シミュレーショ
ンを高速に実行することができる。これらのことから、
論理回路の設計時間を大幅に短縮させることが可能とな
る。
【図1】この発明の論理設計の検証支援システム全体の
ブロック図である。
ブロック図である。
【図2】図1に示した機能設計データベースのブロック
図である。
図である。
【図3】レジスタトランスファレベルの記述文例及びそ
の機能を意味する回路図である。
の機能を意味する回路図である。
【図4】図3と異なる記述文例及びその機能を意味する
状態図である。
状態図である。
【図5】図3に示した記述文から構成された機能設計デ
ータベースのブロック図である。
ータベースのブロック図である。
【図6】図4に示した記述文から構成された機能設計デ
ータベースのブロック図である。
ータベースのブロック図である。
【図7】図1に示したテストパターン作成システムの処
理の流れを示すフローチャートである。
理の流れを示すフローチャートである。
【図8】機能設計データベースから抽出されたデータを
示す図である。
示す図である。
【図9】図8と同様に機能設計データベースから抽出さ
れたデータを示す図である。
れたデータを示す図である。
【図10】この発明による機能シミュレータの構成を示
すブロック図である。
すブロック図である。
【図11】図10に示したレベル番号割り当て部による
レベル番号割り当ての様子を示す図である。
レベル番号割り当ての様子を示す図である。
【図12】図10に示したバッファに保持される文の情
報が変化する様子を示す図である。
報が変化する様子を示す図である。
【図13】従来の機能シミュレータの構成を示すブロッ
ク図である。
ク図である。
【図14】ハードウェア記述の一例を示す図である。
【図15】イベントが生じたテストパターンの一例を示
すタイミング図である。
すタイミング図である。
【図16】この発明による機能シミュレータの効果を説
明するための表である。
明するための表である。
1 記述格納部
3 コンパイラ
5 機能設計データベース
7 テストパターン作成システム
8 シミュレータ
9 テストパターン格納部
11 表示部
51a〜51c、61a〜61d 文対応表53,5
3a〜53f,63a〜63f 回路構成要素表 55 従属関係表 57 右辺表現表 59a,b,65a〜65d 右辺対応関係表59c
左辺対応関係表 81 レベル番号割り当て部 83 文抽出部 85 バッファ 87 文評価部 89 文追加部 140 ハードウェア記述 141〜144 文
3a〜53f,63a〜63f 回路構成要素表 55 従属関係表 57 右辺表現表 59a,b,65a〜65d 右辺対応関係表59c
左辺対応関係表 81 レベル番号割り当て部 83 文抽出部 85 バッファ 87 文評価部 89 文追加部 140 ハードウェア記述 141〜144 文
Claims (2)
- 【請求項1】 所望する論理機能を表す記述文から、
各記述文を表現する文対応表と、各記述文が表す機能を
有する構成要素を表現する回路構成要素表と、記述文相
互間の従属関係を表現する従属関係表と、前記文対応表
と前記回路構成要素表との対応関係を表現する対応関係
表とを用いて、所望する論理機能を有する論理回路のテ
ストパターンを作成する際に、前記文対応表に、各記述
文の種類に応じた属性を付加し、記述文の右辺を表現す
る右辺表現表と、右辺が表す機能を有する回路構成要素
と前記文対応表との対応関係を表現する右辺対応関係表
と、左辺に記述されている回路構成要素と前記文対応表
との対応関係を表現する左辺対応関係表とを用いて、任
意の属性に関するテストパターンを作成することを特徴
とする論理設計の検証支援システム。 - 【請求項2】 ハードウェア記述言語によってモデル
化された論理システムの動作を模擬する機能シミュレー
ションを行う際に、ハードウェア記述の各文に入力端子
からの段数に応じたレベル番号を割り付けるレベル番号
割り付け手段と、前記入力端子に入力されるテストパタ
ーンの変化によって実行すべき文を抽出する文抽出手段
と、抽出された文を保持する抽出文保持手段と、この抽
出文保持手段に保持されている文のうちレベル番号の最
小の文を取り出して評価する文評価手段と、この文評価
手段による評価の結果、新たに発生したテストパターン
の変化によって実行すべき文を前記抽出文保持手段に追
加する文追加手段とからなる機能シミュレータを備えた
ことを特徴とする論理設計の検証支援システム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3015313A JPH04211871A (ja) | 1990-05-02 | 1991-02-06 | 論理設計の検証支援システム |
US07/694,136 US5282146A (en) | 1990-05-02 | 1991-05-01 | Test assistant system for logical design process |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2-115071 | 1990-05-02 | ||
JP11507190 | 1990-05-02 | ||
JP3015313A JPH04211871A (ja) | 1990-05-02 | 1991-02-06 | 論理設計の検証支援システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04211871A true JPH04211871A (ja) | 1992-08-03 |
Family
ID=26351430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3015313A Pending JPH04211871A (ja) | 1990-05-02 | 1991-02-06 | 論理設計の検証支援システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US5282146A (ja) |
JP (1) | JPH04211871A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107390110A (zh) * | 2017-06-20 | 2017-11-24 | 广东科学技术职业学院 | 一种对pcba进行自动测试的方法、装置及系统 |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5572708A (en) * | 1989-02-28 | 1996-11-05 | Nec Corporation | Hardware simulator capable of dealing with a description of a functional level |
US5615356A (en) * | 1992-04-21 | 1997-03-25 | Cpu Technology, Inc. | Method and apparatus for interactively displaying signal information during computer simulation of an electrical circuit |
JP2824361B2 (ja) * | 1992-06-09 | 1998-11-11 | 三菱電機株式会社 | クロストーク検証装置 |
US5566079A (en) * | 1992-11-12 | 1996-10-15 | Vlsi Technology, Inc. | Parameterized generic multiplier complier |
US5557532A (en) * | 1992-11-12 | 1996-09-17 | Vlsi Technology, Inc. | Parameterized generic compiler |
US5481471A (en) * | 1992-12-18 | 1996-01-02 | Hughes Aircraft Company | Mixed signal integrated circuit architecture and test methodology |
KR100317727B1 (ko) * | 1993-01-19 | 2002-04-06 | 이데이 노부유끼 | 디바이스의 자동 측정방법 및 측정장치 |
US5557774A (en) * | 1993-03-22 | 1996-09-17 | Hitachi, Ltd. | Method for making test environmental programs |
JP2815281B2 (ja) * | 1993-04-19 | 1998-10-27 | 株式会社ピーエフユー | デジタル回路設計支援システムおよびその方法 |
US5465216A (en) * | 1993-06-02 | 1995-11-07 | Intel Corporation | Automatic design verification |
JPH0765040A (ja) * | 1993-08-24 | 1995-03-10 | Matsushita Electric Ind Co Ltd | 機能データインターフェース方法および機能データインターフェース装置 |
US5428626A (en) * | 1993-10-18 | 1995-06-27 | Tektronix, Inc. | Timing analyzer for embedded testing |
JP2778443B2 (ja) * | 1993-12-28 | 1998-07-23 | 日本電気株式会社 | スキャンパステスト回路の最適化方法 |
FR2717902B1 (fr) * | 1994-03-25 | 1996-05-31 | Sextant Avionique | Procédé et dispositif d'élaboration de tests de cartes électroniques. |
US6132109A (en) * | 1994-04-12 | 2000-10-17 | Synopsys, Inc. | Architecture and methods for a hardware description language source level debugging system |
US5937190A (en) * | 1994-04-12 | 1999-08-10 | Synopsys, Inc. | Architecture and methods for a hardware description language source level analysis and debugging system |
WO1995034038A1 (en) * | 1994-06-03 | 1995-12-14 | Synopsys, Inc. | Method and apparatus for context sensitive text displays |
US5781718A (en) * | 1994-08-19 | 1998-07-14 | Texas Instruments Incorporated | Method for generating test pattern sets during a functional simulation and apparatus |
US5572712A (en) * | 1994-09-30 | 1996-11-05 | Vlsi Technology, Inc. | Method and apparatus for making integrated circuits with built-in self-test |
US7068270B1 (en) * | 1994-12-02 | 2006-06-27 | Texas Instruments Incorporated | Design of integrated circuit package using parametric solids modeller |
US5748487A (en) * | 1995-01-31 | 1998-05-05 | Imec | System and method for generating a hazard-free asynchronous circuit |
US5796990A (en) * | 1995-06-02 | 1998-08-18 | International Business Machines Corporation | Hierarchical fault modeling system and method |
US5650938A (en) * | 1995-12-13 | 1997-07-22 | Synopsys, Inc. | Method and apparatus for verifying asynchronous circuits using static timing analysis and dynamic functional simulation |
US6363509B1 (en) * | 1996-01-16 | 2002-03-26 | Apple Computer, Inc. | Method and apparatus for transforming system simulation tests to test patterns for IC testers |
US5867810A (en) * | 1996-05-31 | 1999-02-02 | Fujitsu Limited | Wiring device and wiring method |
JP3358444B2 (ja) * | 1996-06-14 | 2002-12-16 | 松下電器産業株式会社 | 半導体検査プログラム作成方法 |
US5920830A (en) * | 1997-07-09 | 1999-07-06 | General Electric Company | Methods and apparatus for generating test vectors and validating ASIC designs |
CA2321346A1 (en) * | 2000-09-28 | 2002-03-28 | Stephen K. Sunter | Method, system and program product for testing and/or diagnosing circuits using embedded test controller access data |
US8689155B1 (en) * | 2012-09-25 | 2014-04-01 | Infineon Technologies Ag | Method of proving formal test bench fault detection coverage |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4293950A (en) * | 1978-04-03 | 1981-10-06 | Nippon Telegraph And Telephone Public Corporation | Test pattern generating apparatus |
JPH0750159B2 (ja) * | 1985-10-11 | 1995-05-31 | 株式会社日立製作所 | テストパタ−ン発生装置 |
US4716564A (en) * | 1985-11-15 | 1987-12-29 | Tektronix, Inc. | Method for test generation |
US5097422A (en) * | 1986-10-10 | 1992-03-17 | Cascade Design Automation Corporation | Method and apparatus for designing integrated circuits |
JP2697861B2 (ja) * | 1988-06-28 | 1998-01-14 | 三菱電機株式会社 | 測定プログラム自動作成装置 |
US4901259A (en) * | 1988-08-15 | 1990-02-13 | Lsi Logic Corporation | Asic emulator |
JPH02189477A (ja) * | 1989-01-19 | 1990-07-25 | Mitsubishi Electric Corp | 電子回路の測定仕様作成方法 |
JPH02189476A (ja) * | 1989-01-19 | 1990-07-25 | Mitsubishi Electric Corp | 電子回路の測定方法 |
US4991176A (en) * | 1989-06-07 | 1991-02-05 | At&T Bell Laboratories | Optimal test generation for finite state machine models |
JPH0359476A (ja) * | 1989-07-28 | 1991-03-14 | Mitsubishi Electric Corp | 電子回路の測定方法 |
US5084824A (en) * | 1990-03-29 | 1992-01-28 | National Semiconductor Corporation | Simulation model generation from a physical data base of a combinatorial circuit |
-
1991
- 1991-02-06 JP JP3015313A patent/JPH04211871A/ja active Pending
- 1991-05-01 US US07/694,136 patent/US5282146A/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107390110A (zh) * | 2017-06-20 | 2017-11-24 | 广东科学技术职业学院 | 一种对pcba进行自动测试的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
US5282146A (en) | 1994-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH04211871A (ja) | 論理設計の検証支援システム | |
US6470478B1 (en) | Method and system for counting events within a simulation model | |
US6195627B1 (en) | Method and system for instrumenting simulation models | |
US6195629B1 (en) | Method and system for selectively disabling simulation model instrumentation | |
US20040117167A1 (en) | Simulation of software objects generated from a hardware description | |
US7143373B2 (en) | Method and apparatus for evaluating and debugging assertions | |
Salcic | VHDL and FPLDs in digital systems design, prototyping and customization | |
US6922665B1 (en) | Method and system for device-level simulation of a circuit design for a programmable logic device | |
US9665674B2 (en) | Automating a microarchitecture design exploration environment | |
US20080288234A1 (en) | Method, system and program product supporting user tracing in a simulator | |
JPH08503794A (ja) | 改善された精度を有する電子回路シミュレーションモデル発生システム及び方法 | |
US20020128809A1 (en) | Randomized simulation model instrumentation | |
CN107844678B (zh) | 包含IP/Memory时序路径的spice仿真方法 | |
US7536288B2 (en) | Method, system and program product supporting user tracing in a simulator | |
US5960171A (en) | Dynamic signal loop resolution in a compiled cycle based circuit simulator | |
US20030046649A1 (en) | Model-based logic design | |
US20030018462A1 (en) | Multi-clock system simulation | |
Buschke et al. | An approach to understanding evaluation of simulation results as an integrated task | |
JP2982418B2 (ja) | 機能シミュレーション装置 | |
JP2990882B2 (ja) | 機能シミュレーション装置 | |
US20030126570A1 (en) | Systems and methods for realizing integrated circuits | |
JPH09259172A (ja) | 論理シミュレーション用モデルの作成方法 | |
JP3751410B2 (ja) | 論理回路変換装置 | |
CN116911219A (zh) | 用于逻辑系统设计的仿真的方法、电子设备和存储介质 | |
Palagin et al. | Features of Digital Devices Design of Modern PLD of the Xilinx Incorporation |