JP3917342B2 - Test program generator for logic verification - Google Patents
Test program generator for logic verification Download PDFInfo
- Publication number
- JP3917342B2 JP3917342B2 JP2000012498A JP2000012498A JP3917342B2 JP 3917342 B2 JP3917342 B2 JP 3917342B2 JP 2000012498 A JP2000012498 A JP 2000012498A JP 2000012498 A JP2000012498 A JP 2000012498A JP 3917342 B2 JP3917342 B2 JP 3917342B2
- Authority
- JP
- Japan
- Prior art keywords
- module
- test program
- sequence
- verification
- generating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【0001】
【発明の属する技術分野】
本発明はハードウェア設計における論理検証用テストプログラム生成装置に関する。
【0002】
情報処理システムを構成する複数のモジュールで構成するLSIのハードウェアとして競争力の高いものを市場に提供するには,信頼性が高く,コスト/パフォーマンスを低く,早期に要求されたものを設計する等の要求を満たす必要がある。そのため,設計規模の大規模化,設計期間の短縮化が要求されている。
【0003】
これを実現するため,信頼性の高い論理検証を短期間で行なう必要があり,現在ハードウェア設計の論理検証手法として論理シミュレーションが一般的に用いられている。
【0004】
従って,ハードウェア設計において信頼性の高い論理検証用テストプログラムを短期間で作成することが望まれている。
【0005】
【従来の技術】
図14は従来技術の説明図である。
【0006】
サーバ系マシーン等のような複数のCPUと,メモリ,データ転送のコントローラ,外部との高速のインタフェース等を含む大規模のLSIチップを作成する場合,先ずLSIの設計者81は,仕様書80に規定されたLSIに対する要求機能や性能を満たすように,LSIの論理設計を行なう。この場合の要求機能としては,例えば,メッセージを入力してこれに応答してどのような出力メッセージを発生させたいか,というものが含まれる。大規模または複雑な機能が要求されるLSIの場合,複数の設計者がそれぞれが担当する範囲を決めて個別に設計を行うのが一般的である。複数の設計者により設計されたLSIの設計回路を集めて設計データ82が得られると,検証者83に渡される。
【0007】
検証者83は設計データ82が仕様書により要求された機能や性能を満たすか否かを検証するための複数の検証項目830を作成する。次に各検証項目830に対応する回路機能を模擬するシミュレータ831を作成し,更にシミュレータ831により実行されるテストプログラム832を作成する。この時,シミュレータ831でのテストプログラム832によるテストの結果得られる期待値833を作成する。このようにして作成された,シミュレータにより,設計されたLSIの回路について,テストプログラム832を用いたシミュレータ831によるテストを行って,得られた結果が期待値833と一致するか比較して,一致すれば正しいものと判定され,一致しないと設計した回路に論理的な誤りがあると判定する。このシミュレータ831による判定の動作により,どの部分に誤りがあるかを検出することも可能であり,誤りの判定が発生しない場合には設計が正しいことが確認できる。なお,設計者による設計作業と検証者による検証は,実際には並行して行うことが多い。
【0008】
このように,従来の技術では,仕様書にはシステム全体の仕様は記述されていても,モジュール間のインタフェース仕様が不明瞭な場合がある。従って,インタフェース仕様を十分に意識したテストプログラムを作成するには,仕様書からインタフェースを推測し,また設計者にインタフェース仕様をインタビューにより問いただして明確にする作業が必要であった。
【0009】
また,検証者は過去のノウハウに基づいて,仕様書から設計誤りが起こりそうな部分(検証項目)を抽出して,テストプログラムを人手で作成しており,テストプログラムを作成する系統的な手順が確立されていない。
【0010】
【発明が解決しようとする課題】
上記したように従来の技術ではモジュール間のインタフェース仕様が不明確な仕様書では,インタフェース仕様を十分に意識したテストプログラムを作成することが困難である。
【0011】
また,システムの大規模化に伴い,システム検証用テストプログラムの生成工数が,システム設計工数全体に対して占める割り合いが大きくなりつつあるという問題があった。
【0012】
更に,最近システム全体で満たすべき仕様をモジュール毎に分割したモジュール検証が提案されているが,その際にもインタフェース仕様が不明確な仕様書ではモジュール検証を行なうための高品質なテストプログラムを作成することが困難である。
【0013】
本発明はインタフェース仕様を明確にしてモジュール検証を行うためのテストプログラムを系統的に生成することができる論理検証用テストプログラム生成装置を提供することを目的とする。
【0014】
【課題を解決するための手段】
図1は本発明の原理構成を示す。図中,10は設計されるLSIチップのシステムを構成する各モジュールの記述作成手段,11はブロック図作成手段,12はシーケンス図作成手段,13はシーケンス図重ね合わせ検証手段,14はテストプログラム生成手段,20〜23は記憶部であり,20はモジュールの記述を格納する記憶部,21はブロック図を格納する記憶部,22は各シーケンス図を格納する記憶部,23はテストプログラムを格納する記憶部である。
【0015】
本発明はLSIチップのシステム全体で発生する複数のシーケンスをフォーマル(図解を用いた表現形式)に記述して,設計者以外の人が見てもその意味を直ちに理解できるように記述し,検証対象であるモジュールの入出力を系統的に抽出して,LSIチップを検証するテストパターンの作成を可能とするものである。
【0016】
各モジュールの記述作成手段10では,従来は自然言語で記述されていた各モジュールの内部動作やモジュールの入出力の記述を,ハードウェア記述言語を用いたモジュールの記述が作成されて記憶部20に格納される。このモジュールの記述について次にブロック図作成手段11によりシステム全体とモジュールとモジュール間の連結状況を定義したブロック図が作成されて記憶部21に格納される。続いて,シーケンス図作成手段12によりブロック図で示すハードウェア内部の各モジュール間で受渡しする一連のメッセージ(シーケンス)を表現するシーケンス図を各モジュール間について複数個作成して記憶部22に格納する。こうして得られた複数のモジュール間の各シーケンス図についてシーケンス図重ね合わせ検証手段13の動作により重ね合わせる処理を行う。この重ね合わせにおいて矛盾が生じると,シーケンスが間違っていることが分かり,設計誤りを発見することができる。このシーケンス図重ね合わせ検証手段13によるチェックと修正を経て,テストプログラム生成手段14により注目するモジュールについてテストプログラムを生成して記憶部23に格納する。このようにして,テストプログラムを生成する工数を削減し,検証したいモジュールに注目した検証が可能となる。
【0017】
図2は本発明の第2の原理構成を示す。図中,10〜14は上記図1と同じものであり,説明を省略する。図1と異なる点はモジュール分割手段15と,分割されたサブモジュールを格納する記憶部24を設けた点である。
【0018】
図2において,10〜13までの動作は上記図1と同じであり,複数のモジュール間の各シーケンス図についてシーケンス図重ね合わせ検証手段13の動作により重ね合わせる処理が行われるが,この第2の原理によるモジュール分割手段15によりシーケンスの中で特に検証したいモジュールをサブモジュールに分割して記憶部24に格納する。次いでこの分割されたサブモジュールへの入出力を抽出し,テストプログラム生成手段14により分割したサブモジュール検証用のテストプログラム生成して記憶部23に格納する。
【0019】
この第2の原理構成により分割した検証したいモジュールに注目したテストプログラムを系統的に生成することができる。
【0020】
【発明の実施の形態】
本発明は情報処理装置のソフトウェアにより実現することができ,図3は実施例1の処理フローである。
【0021】
最初に,設計の対象となるLSIの設計仕様に基づいて,ハードウェア記述言語(HDL:Hardware Discription Language)を用いて各モジュールの内部動作や各モジュールの入出力を記述した入力を行う(図3のS1)。次に前記の記述からシステム全体とシステム内部のモジュール間の連結状況を表すブロック図の作成を行う(図3のS2)。
【0022】
次に図3の処理では,モジュール間で受渡しするメッセージを用いてシステム全体で流れるシーケンスを作成する(図3のS3)。この処理の詳細は,次の3つのステップS30〜S32により構成される。すなわち,シーケンス長さは乱数で指定し(図3のS30),シーケンスが始まるモジュールは乱数で指定し(同S31),出力メッセージとモジュールの次状態は入力メッセージとモジュールの現状態で一意に決まる(同S32)。
【0023】
この後,シーケンス図の重ね合わせを行う(図3のS4)。この処理の詳細は3つのステップS40〜S42により構成される。すなわち,あるシーケンスにおいて,入力メッセージに依存しないでモジュール状態が変化する部分に注目する(図3のS40)。続いて,他のシーケンスにおいて前記の注目した状態変化が起こるシーケンスを見つけ(同S41),先の2つのシーケンスを連結して,複数のシーケンスが並行して流れる新しいシーケンスを生成する(同S42)。
【0024】
次いで,シーケンスを重ね合わせた場合における検証したいモジュールに注目したテストプログラムを生成する(図3のS5)。
【0025】
図4は実施例1による対象となるLSIのブロック図の例を示す。このブロック図は上記図3のS2により作成され,この例では,モジュールA,モジュールB,モジュールC及びモジュールDとで構成され,各モジュールの入出力の関係がモジュール相互間を結ぶ矢印を付した線により表されており,モジュールの内部動作については省略されている。
【0026】
図5はモジュール間で受渡しする一連のメッセージ(シーケンス)を表現した例であり,上記図4のブロック図の例について,上記図3のS3(S30〜S32)により生成される。まず,シーケンスの長さは8(乱数で指定),シーケンスで始まるモジュールはモジュールBとし(乱数で指定),出力メッセージとモジュールの次状態は,入力メッセージとモジュールの現状態に応じて一意に決まる。例えば,モジュールBにおいて,入力メッセージq1とモジュールの現状態s1によって,出力メッセージq2とモジュールの次状態s1が一意に決まる。
【0027】
図6乃至図8は注目する部分が状態変化する他のシーケンス図(その1)〜(その3)であり,図9乃至図11は重ね合わせたシーケンス図(その1)〜(その3)である。
【0028】
図5乃至図11を用いてシーケンス図の重ね合わせ(図3のS4に対応)の例を説明する。上記図5に示すシーケンス図において,入力メッセージによらずに状態が変化している部分に注目する(図3のS40に対応)。この図5の例では,A1,B1,C1として表す部分を注目する。
【0029】
A1:モジュールBの状態がs0からs1に変化する部分
B1:モジュールBの状態がs1からs2に変化する部分
C1:モジュールCの状態がs2からS0に変化する部分
次にA1,B1,C1における状態遷移が記載されているシーケンス図を見つける(図3のS41に対応)と,この例では,次のように図6〜図8を見つけることができる。
【0030】
A1:図6のA2,図7のA3でs0からs1への状態遷移が記載されている。
【0031】
B1:図6のB2,図7のB3,図8のB4でs0からs2への状態遷移が記載されている。
【0032】
C1:図8のC4でs2からs0への状態遷移が記載されている。
【0033】
上記複数のシーケンス図(図6〜図8)を重ね合わせて新たなシーケンス図を作成する(図3のS42に対応)。すなわち,
注目点A1とA2,B1とB2を対応付けて,図5と図6を重ね合わせることにより,図9のシーケンス図が得られる。
【0034】
注目点A1とA3,B1とB3を対応付けて,図5と図7を重ね合わせることにより,図10のシーケンス図が得られる。
【0035】
注目点B1とB4,C1とC4を対応付けて,図5と図8を重ね合わせることにより,図11のシーケンス図が得られる。但し,図8では点線で囲まれた部分しか重ねることができない。
【0036】
次に図12は実施例2の処理フローである。
【0037】
この実施例2の処理フローは,上記実施例1の処理フローのステップS1〜S4までは同じ処理であり,説明を省略する。シーケンス図の重ね合わせの処理(図12のS4)に続いて,検証したいサブモジュールに注目して,このサブモジュールの入出力のみを抽出する(図12のS5)。この後,抽出したサブモジュール検証用のテストプログラムを生成する(図12のS6)。
【0038】
図13は実施例2によるシーケンス図の例である。
【0039】
上記図13のS4までの処理により実施例1と同様に上記図9乃至図11に例として示すような複数のシーケンス図を重ねたシーケンス図が生成される。この中の図9に示すシーケンス図において,検証したいモジュールがモジュールBである場合,モジュールBにおける入出力のみを抽出し,その他のモジュールに入出力するシーケンスを除くと図13のシーケンス図が得られる。このモジュールBに注目したテストプログラムを作成することになる。
【0040】
【発明の効果】
本発明によれば,システム構成をブロック図で,システム内部に発生するシーケンスをシーケンス図で表現して,複数のシーケンスを系統的に重ね合わせることで,これを検証するテストプログラムを生成することができる。また,検証したいモジュールに注目した論理シミュレーション用テストプログラムを系統的に生成することができる。
【0041】
更に,論理シミュレーション用テストプログラムの生成コストが削減でき,設計誤りを早期に発見することができる。
【図面の簡単な説明】
【図1】本発明の第1の原理構成を示す図である。
【図2】本発明の第2の原理構成を示す図である。
【図3】実施例1の処理フローを示す図である。
【図4】実施例1による対象となるLSIのブロック図の例を示す図である。
【図5】モジュール間で受渡しする一連のメッセージを表現した例を示す図である。
【図6】注目する部分が状態変化する他のシーケンス図(その1)である。
【図7】注目する部分が状態変化する他のシーケンス図(その2)である。
【図8】注目する部分が状態変化する他のシーケンス図(その3)である。
【図9】重ね合わせたシーケンス図(その1)である。
【図10】重ね合わせたシーケンス図(その2)である。
【図11】重ね合わせたシーケンス図(その3)である。
【図12】実施例2の処理フローを示す図である。
【図13】実施例2によるシーケンス図の例を示す図である。
【図14】従来技術の説明図である。
【符号の説明】
10 各モジュールの記述作成手段
11 ブロック図作成手段
12 シーケンス図作成手段
13 シーケンス図重ね合わせ検証手段
14 テストプログラム生成手段
20 モジュールの記述を格納する記憶部
21 ブロック図を格納する記憶部
22 各シーケンス図を格納する記憶部
23 テストプログラムを格納する記憶部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a test program generation apparatus for logic verification in hardware design.
[0002]
In order to provide highly competitive LSI hardware consisting of multiple modules that make up an information processing system to the market, design highly reliable, low cost / performance, early requested ones It is necessary to satisfy the demands such as. Therefore, it is required to increase the design scale and shorten the design period.
[0003]
To achieve this, it is necessary to perform highly reliable logic verification in a short period of time, and logic simulation is generally used as a logic verification method for hardware design.
[0004]
Accordingly, it is desired to create a highly reliable logic verification test program in hardware design in a short period of time.
[0005]
[Prior art]
FIG. 14 is an explanatory diagram of the prior art.
[0006]
When creating a large-scale LSI chip including a plurality of CPUs such as a server system, a memory, a data transfer controller, and a high-speed interface with the outside, the LSI
[0007]
The
[0008]
As described above, in the conventional technology, the specification of the entire system is described in the specification, but the interface specification between modules may be unclear. Therefore, in order to create a test program that is fully aware of the interface specifications, it was necessary to guess the interface from the specifications and to clarify the interface specifications by asking the designer through an interview.
[0009]
In addition, the verifier extracts a part (verification item) that is likely to cause a design error from the specification based on past know-how and manually creates a test program, and a systematic procedure for creating the test program. Is not established.
[0010]
[Problems to be solved by the invention]
As described above, in the conventional technology, it is difficult to create a test program that is fully aware of the interface specifications if the interface specifications between modules are unclear.
[0011]
In addition, as the scale of the system increases, there is a problem that the proportion of the man-hours for generating the system verification test program is increasing with respect to the total system design man-hours.
[0012]
Recently, module verification has been proposed in which the specifications to be satisfied by the entire system are divided for each module. At that time, a high-quality test program for module verification is created for specifications with unclear interface specifications. Difficult to do.
[0013]
An object of the present invention is to provide a logic verification test program generation apparatus capable of systematically generating a test program for performing module verification by clarifying interface specifications.
[0014]
[Means for Solving the Problems]
FIG. 1 shows the principle configuration of the present invention. In the figure, 10 is a description creation means for each module constituting the LSI chip system to be designed, 11 is a block diagram creation means, 12 is a sequence diagram creation means, 13 is a sequence diagram overlay verification means, and 14 is a test program generation. Means, 20 to 23 are storage units, 20 is a storage unit for storing module descriptions, 21 is a storage unit for storing block diagrams, 22 is a storage unit for storing sequence diagrams, and 23 is for storing test programs. It is a storage unit.
[0015]
In the present invention, a plurality of sequences generated in the entire LSI chip system is described in a formal form (an expression format using an illustration) so that the meaning can be immediately understood even by a person other than the designer and verified. Systematic extraction of the input / output of the target module enables the creation of a test pattern for verifying the LSI chip.
[0016]
The module
[0017]
FIG. 2 shows a second principle configuration of the present invention. In the figure, 10 to 14 are the same as those in FIG. The difference from FIG. 1 is that a module dividing means 15 and a
[0018]
In FIG. 2, the operations from 10 to 13 are the same as those in FIG. 1 described above, and each sequence diagram between a plurality of modules is superposed by the operation of the sequence diagram superposition verification means 13. The module to be verified in the sequence is divided into sub-modules by the module dividing means 15 according to the principle and stored in the
[0019]
A test program focusing on the module to be verified divided according to the second principle configuration can be systematically generated.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
The present invention can be realized by software of the information processing apparatus, and FIG. 3 is a processing flow of the first embodiment.
[0021]
First, based on the design specifications of the LSI to be designed, an input describing the internal operation of each module and the input / output of each module is performed using a hardware description language (HDL) (FIG. 3). S1). Next, a block diagram showing the connection status between the entire system and the modules in the system is created from the above description (S2 in FIG. 3).
[0022]
Next, in the processing of FIG. 3, a sequence that flows through the entire system is created using a message delivered between modules (S3 in FIG. 3). The details of this process are composed of the following three steps S30 to S32. That is, the sequence length is specified by a random number (S30 in FIG. 3), the module where the sequence starts is specified by a random number (S31), and the output message and the next state of the module are uniquely determined by the input message and the current state of the module. (S32).
[0023]
Thereafter, the sequence diagrams are superimposed (S4 in FIG. 3). The details of this process are composed of three steps S40 to S42. That is, attention is paid to a part where the module state changes without depending on the input message in a certain sequence (S40 in FIG. 3). Subsequently, a sequence in which the noted state change occurs in another sequence is found (S41), and the previous two sequences are connected to generate a new sequence in which a plurality of sequences flow in parallel (S42). .
[0024]
Next, a test program focusing on the module to be verified when the sequences are overlaid is generated (S5 in FIG. 3).
[0025]
FIG. 4 shows an example of a block diagram of a target LSI according to the first embodiment. This block diagram is created by S2 in FIG. 3, and in this example, it is composed of module A, module B, module C, and module D, and the input / output relationship of each module is accompanied by an arrow connecting the modules. The internal operation of the module is omitted.
[0026]
FIG. 5 shows an example of a series of messages (sequence) exchanged between modules. The example of the block diagram of FIG. 4 is generated by S3 (S30 to S32) of FIG. First, the sequence length is 8 (specified by a random number), the module starting with the sequence is module B (specified by a random number), and the output message and the next state of the module are uniquely determined according to the input message and the current state of the module. . For example, in the module B, the output message q2 and the next state s1 of the module are uniquely determined by the input message q1 and the current state s1 of the module.
[0027]
6 to 8 are other sequence diagrams (No. 1) to (No. 3) in which the state of interest changes state, and FIGS. 9 to 11 are superimposed sequence diagrams (No. 1) to (No. 3). is there.
[0028]
An example of superposition of sequence diagrams (corresponding to S4 in FIG. 3) will be described with reference to FIGS. In the sequence diagram shown in FIG. 5, attention is paid to a portion where the state is changed irrespective of the input message (corresponding to S40 in FIG. 3). In the example of FIG. 5, attention is given to the portions represented as A1, B1, and C1.
[0029]
A1: A part where the state of module B changes from s0 to s1 B1: A part where the state of module B changes from s1 to s2 C1: A part where the state of module C changes from s2 to S0 Next, in A1, B1 and C1 When a sequence diagram in which state transitions are described is found (corresponding to S41 in FIG. 3), in this example, FIGS. 6 to 8 can be found as follows.
[0030]
A1: State transition from s0 to s1 is described in A2 in FIG. 6 and A3 in FIG.
[0031]
B1: State transition from s0 to s2 is described in B2 in FIG. 6, B3 in FIG. 7, and B4 in FIG.
[0032]
C1: State transition from s2 to s0 is described in C4 of FIG.
[0033]
A plurality of sequence diagrams (FIGS. 6 to 8) are overlapped to create a new sequence diagram (corresponding to S42 in FIG. 3). That is,
The sequence diagram of FIG. 9 is obtained by associating the attention points A1 and A2, B1 and B2, and superimposing FIGS.
[0034]
The sequence diagram of FIG. 10 is obtained by associating the attention points A1 and A3, B1 and B3, and superimposing FIGS.
[0035]
The sequence diagram of FIG. 11 is obtained by associating the points of interest B1 and B4, C1 and C4, and superimposing FIGS. However, in FIG. 8, only the part surrounded by the dotted line can be overlapped.
[0036]
Next, FIG. 12 is a processing flow of the second embodiment.
[0037]
The processing flow of the second embodiment is the same processing from steps S1 to S4 of the processing flow of the first embodiment, and a description thereof will be omitted. Subsequent to the process of superimposing sequence diagrams (S4 in FIG. 12), paying attention to the submodule to be verified, only the input / output of this submodule is extracted (S5 in FIG. 12). Thereafter, the extracted test program for submodule verification is generated (S6 in FIG. 12).
[0038]
FIG. 13 is an example of a sequence diagram according to the second embodiment.
[0039]
Through the processing up to S4 in FIG. 13, a sequence diagram in which a plurality of sequence diagrams as shown in the examples in FIGS. 9 to 11 are overlapped as in the first embodiment is generated. In the sequence diagram shown in FIG. 9, when the module to be verified is the module B, only the input / output in the module B is extracted, and the sequence diagram shown in FIG. . A test program focusing on this module B is created.
[0040]
【The invention's effect】
According to the present invention, it is possible to generate a test program for verifying a system configuration by representing a system configuration in a block diagram, a sequence generated in the system in a sequence diagram, and systematically superimposing a plurality of sequences. it can. In addition, it is possible to systematically generate a test program for logic simulation focusing on the module to be verified.
[0041]
Furthermore, the generation cost of the logic simulation test program can be reduced, and design errors can be detected early.
[Brief description of the drawings]
FIG. 1 is a diagram showing a first principle configuration of the present invention.
FIG. 2 is a diagram showing a second principle configuration of the present invention.
FIG. 3 is a diagram illustrating a processing flow according to the first embodiment.
FIG. 4 is a diagram illustrating an example of a block diagram of a target LSI according to the first embodiment;
FIG. 5 is a diagram illustrating an example of a series of messages exchanged between modules.
FIG. 6 is another sequence diagram (part 1) in which a state of interest changes state.
FIG. 7 is another sequence diagram (part 2) in which a state of interest changes state.
FIG. 8 is another sequence diagram (part 3) in which a state of interest changes state.
FIG. 9 is a sequence diagram (No. 1) superimposed.
FIG. 10 is a sequence diagram (No. 2) superimposed.
FIG. 11 is a sequence diagram (No. 3) superimposed.
FIG. 12 is a diagram illustrating a processing flow according to the second embodiment.
FIG. 13 is a diagram illustrating an example of a sequence diagram according to the second embodiment.
FIG. 14 is an explanatory diagram of the prior art.
[Explanation of symbols]
DESCRIPTION OF
Claims (2)
設計の対象となるLSIのシステムを構成する各モジュールの内部動作及び入出力をハードウェア記述言語で表した記述に基づいてシステム全体とモジュール間の連結状況を定義したブロック図を作成するブロック図作成手段と,
前記ブロック図作成手段で作成されたブロック図に示す各モジュール間についてそれぞれで受渡しする一連のメッセージを表現するシーケンス図を作成するシーケンス図作成手段と,
前記シーケンス図作成手段で作成された各モジュール間に対応する複数のシーケンス図を重ね合わせて複数のシーケンスを連結した新たなシーケンスを生成して検証を行うシーケンス図重ね合わせ検証手段と,
前記シーケンス図重ね合わせ検証手段により検証したモジュールを対象にしたテストプログラムを生成するテストプログラム生成手段と,
を備えることを特徴とする論理検証用テストプログラム生成装置。In a test program generation device for LSI logic verification,
Create a block diagram that defines the connection between the entire system and the module based on the description of the internal operation and input / output of each module that constitutes the LSI system to be designed in the hardware description language Means,
A sequence diagram generating means for generating a sequence diagram representing a series of messages to pass each for between the modules shown in block diagram created by the block diagram preparation means,
A sequence diagram overlay verification means for generating a new sequence in which a plurality of sequences are connected by overlapping a plurality of sequence diagrams corresponding to each module created by the sequence diagram creation means, and performing verification;
Test program generation means for generating a test program for the module verified by the sequence diagram overlay verification means ;
A test program generating device for logic verification, comprising:
前記シーケンス図重ね合わせ検証手段による前記シーケンス図を重ね合わせたシーケンスについて,検証したいモジュールを入出力に対応して分割してサブモジュールを生成するモジュール分割手段を設け,
前記テストプログラム生成手段は前記モジュール分割手段により分割した各モジュールを対象としてテストプログラムを生成することを特徴とする論理検証用テストプログラム生成装置。 In claim 1,
A module dividing means for generating a sub-module by dividing a module to be verified corresponding to an input / output with respect to a sequence obtained by superimposing the sequence diagrams by the sequence diagram overlay verification means;
The test program generating apparatus for logic verification, wherein the test program generating means generates a test program for each module divided by the module dividing means .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000012498A JP3917342B2 (en) | 2000-01-21 | 2000-01-21 | Test program generator for logic verification |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000012498A JP3917342B2 (en) | 2000-01-21 | 2000-01-21 | Test program generator for logic verification |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001202263A JP2001202263A (en) | 2001-07-27 |
JP3917342B2 true JP3917342B2 (en) | 2007-05-23 |
Family
ID=18540205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000012498A Expired - Fee Related JP3917342B2 (en) | 2000-01-21 | 2000-01-21 | Test program generator for logic verification |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3917342B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4747034B2 (en) * | 2006-05-29 | 2011-08-10 | 富士通株式会社 | Verification scenario creation program, recording medium, verification scenario creation device, and verification scenario creation method |
JP2010015240A (en) * | 2008-07-01 | 2010-01-21 | Denso Corp | Verification system and verification device |
-
2000
- 2000-01-21 JP JP2000012498A patent/JP3917342B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001202263A (en) | 2001-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1093619A1 (en) | System and method for identifying finite state machines and verifying circuit designs | |
JP2009238209A (en) | Circuit verification apparatus, circuit verification program and method of circuit verification | |
CN113434355A (en) | Module verification method, UVM verification platform, electronic device and storage medium | |
JP2003233639A (en) | Failure verification device, failure verification method and failure analysis method | |
US7003743B2 (en) | Method and system of data processor design by sensitizing logical difference | |
TWI322365B (en) | Design verification system for integrated circuit design and computer program product thereof | |
JP3917342B2 (en) | Test program generator for logic verification | |
US20080189095A1 (en) | Method and tool for generating simulation case for ic device | |
US6625789B2 (en) | Computer-readable medium for recording interface specifications | |
JP3941336B2 (en) | Logic circuit verification device | |
JPH09153073A (en) | Device and method for simulation | |
JPH07121576A (en) | Failure simulation device | |
JP2003233636A (en) | Circuit verification device | |
JP3161314B2 (en) | Logic simulation apparatus and logic simulation method | |
JP2004145712A (en) | Equivalence verification method of motion description in semiconductor design | |
JP4484048B2 (en) | Hardware / software co-verification system | |
JP6949440B2 (en) | Vector generator and vector generator program | |
JP2863779B2 (en) | Timing verification method, verification device, and test pattern generation method | |
JPH08202743A (en) | Switch level simulation system | |
JPH11175580A (en) | Integrated circuit designing device | |
JP2979798B2 (en) | Test pattern guarantee method | |
JP3072985B2 (en) | Logic simulation method | |
JP2937136B2 (en) | Semiconductor integrated circuit noise reliability verification method and verification system | |
JP2539049B2 (en) | Satomi simulation device | |
JPH0926986A (en) | Test pattern generation method and delay verification method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040324 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051220 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060217 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060725 |
|
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: 20070206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070208 |
|
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: 20110216 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110216 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120216 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130216 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130216 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140216 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |