JP2006085363A - Test bench system, program and storage medium - Google Patents
Test bench system, program and storage medium Download PDFInfo
- Publication number
- JP2006085363A JP2006085363A JP2004268549A JP2004268549A JP2006085363A JP 2006085363 A JP2006085363 A JP 2006085363A JP 2004268549 A JP2004268549 A JP 2004268549A JP 2004268549 A JP2004268549 A JP 2004268549A JP 2006085363 A JP2006085363 A JP 2006085363A
- Authority
- JP
- Japan
- Prior art keywords
- test
- bus
- circuit
- scenarios
- bench system
- 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
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Description
本発明は、回路の動作を検証するテストベンチシステム、このテストベンチシステムを実現するプログラム、及びこのプログラムを記憶している記憶媒体に関する。 The present invention relates to a test bench system that verifies the operation of a circuit, a program that realizes the test bench system, and a storage medium that stores the program.
ASIC(Application Specified IC)を構成するLSI(大規模集積回路)などの回路を検証するテストベンチシステムについては、例えば、特許文献1に開示の技術が知られている。
For a test bench system for verifying a circuit such as an LSI (Large Scale Integrated Circuit) constituting an ASIC (Application Specified IC), for example, a technique disclosed in
近年、LSIは、動作速度は高速化し、微細加工技術の向上により、多くの機能が1つのLSIに集積される方向にある。そのため、このようなLSIを構成するASICを検証するテストベンチの技術向上、精度向上、生産性向上などは重要な課題になっている。 In recent years, the operation speed of LSIs has been increased, and many functions are integrated in one LSI due to improvements in microfabrication technology. Therefore, technical improvement, accuracy improvement, productivity improvement, etc. of the test bench for verifying the ASIC constituting such an LSI are important issues.
このようなテストベンチの技術向上、精度向上、生産性向上のため、まず、ASICにバス接続されるバスモデルと各種設定を行うテストシナリオを別々に取り扱うことで、テストベンチの生産性や再利用性を向上させるとともに、複数のデータパスの存在するASICにおける同時動作の検証を行えるようにすることが考えられる。 In order to improve the test bench technology, accuracy, and productivity, first, the test model that performs bus settings connected to the ASIC and the test scenarios that perform various settings are handled separately, so that the test bench productivity and reuse can be improved. It may be possible to improve the performance and to verify the simultaneous operation in the ASIC in which a plurality of data paths exist.
しかしながら、このようなテストベンチシステムにおいて、複数のテストシナリオを並列動作させる場合、各テストシナリオ内に複数存在するテストは、順次(シリアル)に動作する。 However, in such a test bench system, when a plurality of test scenarios are operated in parallel, a plurality of tests in each test scenario operate sequentially (serially).
そのため、近年の大規模、高機能のLSIにおいては、思わぬコーナーケースのタイミング組み合わせで不具合が発生する場合があるという課題が存在する。 Therefore, in a large-scale, high-function LSI in recent years, there is a problem that a failure may occur due to an unexpected combination of corner case timings.
本発明の目的は、複数のテストシナリオを同時並行的に動作させる際に、同時並行的に実行されている各テストシナリオに含まれるテストをランダムに変更できるようにして、回路の検証の精度を向上させることである。 It is an object of the present invention to improve the accuracy of circuit verification by allowing a test included in each test scenario executed in parallel to be changed at random when a plurality of test scenarios are operated in parallel. It is to improve.
本発明は、検証対象の回路にバス接続されるバスモデルと、このバスモデルを用いた前記回路の動作の検証に用いる複数のテストシナリオを同時並行的に動作させ、この同時並行的に動作する前記各テストシナリオ中のテストをランダムに選択する手段と、を備えているテストベンチシステムである。 The present invention operates a bus model connected to a circuit to be verified and a plurality of test scenarios used for verifying the operation of the circuit using the bus model in parallel, and operates in parallel. Means for randomly selecting a test in each of the test scenarios.
別の面から見た本発明は、検証対象の回路にバス接続されるバスモデルと、このバスモデルを用いた前記回路の動作の検証に用いる複数のテストシナリオを同時並行的に動作させ、この同時並行的に動作する前記各テストシナリオ中のテストをランダムに選択する手段と、をコンピュータに実行させるコンピュータに読取可能なプログラムである。 From another aspect, the present invention operates a bus model connected to a circuit to be verified by bus and a plurality of test scenarios used for verifying the operation of the circuit using the bus model in parallel. A computer-readable program for causing a computer to execute means for randomly selecting a test in each of the test scenarios operating in parallel.
本発明によれば、複数のテストシナリオを同時並行的に動作させる際に、同時並行的に実行されている各テストシナリオに含まれるテストをランダムに変更できるので、回路の検証の精度を向上させることができる。 According to the present invention, when a plurality of test scenarios are operated simultaneously in parallel, the test included in each test scenario being executed in parallel can be randomly changed, so that the accuracy of circuit verification is improved. be able to.
本発明を実施するための最良の一形態について説明する。 The best mode for carrying out the present invention will be described.
図1は、本実施の形態のテストベンチシステム1の機能ブロック図である。テストベンチシステム1は、検証対象である回路2の動作を検証する装置である。回路2は、この例ではASICである。テストベンチシステム1は、回路2にバス接続されるバスモデル、すなわち、回路2のCPUインタフェースに対応したバスファンクションモデルであるCPUバスモデル3と、回路2のインタフェースにそれぞれ対応したバスファンクションモデルであるインタフェース(I/F)バスモデル4,5と、を備えている。この例では、I/Fバスモデル4,5は、回路のデータ入力インタフェースや、回路のデータ出力インタフェースに対応したバスファンクションモデルとして機能することができる。
FIG. 1 is a functional block diagram of a
テストシナリオG1,G2は、それぞれI/Fバスモデル4,5に対応したテストシナリオである。テストシナリオG1,G2は、CPUバスモデル3にそれぞれ起動をかけ、回路2の設定や、動作起動を行う。また、各I/Fバスモデル4,5の動作起動を各対応するテストシナリオG1,G2が行う。各I/Fバスモデル4,5の動作起動が設定されると、各I/Fバスモデル4,5がそれぞれ回路2に対して動作を開始する。なお、本実施の形態では、I/Fバスモデル、テストシナリオを各2つ用意した例を示しているが、本発明はこれらの数を限定するものではない。
Test scenarios G1 and G2 are test scenarios corresponding to the I /
エラー制御部6は、テストシナリオG1,G2、I/Fバスモデル4,5からのシミュレーション実行により何らかのエラーが発生すると起動され、シミュレーションを中断し、あるいは終了する制御を実行する。
The error control unit 6 is activated when an error occurs due to simulation execution from the test scenarios G1 and G2 and the I /
ランダム指定部7は、シミュレーション開始時に各テストシナリオG1,G2にランダム指定情報を個別に与える(後述)。 The random designation unit 7 individually gives random designation information to each of the test scenarios G1 and G2 at the start of simulation (described later).
図2は、テストシナリオG1,G2のそれぞれの構成を示す機能ブロック図である。なお、テストシナリオG1とG2は同一の構成、動作であるため、その共通の構成、動作を、図2を参照して説明する。各テストシナリオG1,G2の起動順選択部11は、ランダム指定部7が出力するランダム指定情報が入力され、このランダム指定情報に対応して各テストシナリオG1,G2内に複数含まれているテスト群12(テスト1〜テストN)の起動順を決定し、このテスト群12(テスト1〜テストN)の起動順を確定する。この決定、確定は、ランダム指定情報によりランダムに行なわれる。テスト群12内のテスト1〜テストNは、この設定された順番で順次起動され、シミュレーションが実施されていく。また、このテストシナリオG1とG2とは同時並行的に動作して、シミュレーションを実行することができる。
FIG. 2 is a functional block diagram showing the configuration of each of the test scenarios G1 and G2. Since the test scenarios G1 and G2 have the same configuration and operation, the common configuration and operation will be described with reference to FIG. The activation order selection unit 11 of each test scenario G1, G2 receives random designation information output from the random designation unit 7, and a plurality of tests are included in each test scenario G1, G2 corresponding to this random designation information. The starting order of the group 12 (
これにより、各テストシナリオG1,G2のテスト群12の起動が変動するようになり、テストシナリオG1,G2の同時並行的な動作の際には、テストシナリオG1のテスト1〜テストNと、テストシナリオG2のテスト1〜テストNとの組み合わせについて複数の動作組み合わせが実現できるようになり、各I/Fバスモデル4,5の動作状態の組み合わせで発生する動作タイミングを多く検証できるようになり、回路2の検証精度を向上させることができる。
As a result, the activation of the
また、起動順選択部11は、テストシナリオG1,G2のテスト群12の起動順が確定した時点で、その起動順の情報である起動順情報を外部に出力して、ログ表示させる。
In addition, when the activation order of the
これにより、現在シミュレーション実施中のテスト予定が判り、また、不具合発生時に解析する情報として貴重な情報を提示でき、解析効率を向上させることができる。また、正常にテストベンチが終了した場合も、テストベンチの機能カバレッジとして機能し、どのような組み合わせでシミュレーションが実施されたかを知ることができる。 As a result, it is possible to know the test schedule that is currently being simulated, to present valuable information as information to be analyzed when a failure occurs, and to improve analysis efficiency. In addition, even when the test bench is completed normally, it functions as the test bench functional coverage, and it is possible to know in what combination the simulation was performed.
すなわち、前述の場合においては、各テストシナリオG1,G2内に複数存在するテストがランダムに起動されるため、不具合を発見し、解析する場合に、担当者(シナリオ設計者、回路設計者など)は、どの順番でテストが実行されているかは認識できないため、条件の絞り込みに時間が掛かる可能性がでてくる。特にテストシナリオG1,G2の同時並行的な動作で初めて認識する不具合は、複数の要因の組み合わせで起きている可能性が高く、その要因の解析は困難になる。 That is, in the above-described case, since a plurality of tests in each test scenario G1, G2 are activated at random, a person in charge (scenario designer, circuit designer, etc.) is required when a failure is discovered and analyzed. Since it is not possible to recognize in which order the tests are executed, it may take time to narrow down the conditions. In particular, a failure recognized for the first time by simultaneous operation of the test scenarios G1 and G2 is likely to be caused by a combination of a plurality of factors, and analysis of the factors becomes difficult.
そこで、シミュレーションが実行され各テストシナリオG1,G2のテスト起動順が確定した時点で、ログに各テストシナリオG1,G2のテスト起動順を表示することにより、現在の条件を明示化し、解析効率を向上させることができる。またテストベンチがどのような組み合わせで検証されたかを確認する機能カバレッジとしても機能することになる。 Therefore, when the simulation is executed and the test startup order of each test scenario G1, G2 is determined, the test startup order of each test scenario G1, G2 is displayed in the log, thereby clarifying the current conditions and improving the analysis efficiency. Can be improved. It also functions as a function coverage for confirming in what combination the test bench is verified.
テスト進行確認部13は、テスト1〜テストNの中で、現在、どのテストを実施しているかを認識し、シミュレーションの実施がされるテストが変更されるごとに、現在、どのテストを実施しているかの情報であるテスト情報を更新する。このテスト情報は、エラー制御部6に出力される。エラー制御部6は、前述のエラー発生時に起動し、テストシナリオから与えられたテスト情報に基づき、エラーを発見した際に実行中のテストがテスト1〜テストNのいずれであるかを判断し、いずれのテストの実行中にエラーが発生したかを示す情報であるエラー情報を外部に出力する。
The test
これにより、テストシナリオG1,G2の同時並行的な動作時の各I/Fバスモデル4,5の動作状況が明確になり、不具合解析の効率を向上させることができる。
Thereby, the operation status of each I /
すなわち、前述の場合において、エラー制御部6はエラーを発見すると各テストシナリオG1,G2内に含まれているテストに固有のエラーメッセージを表示することができるが、そのエラーは結果として現れるだけで、そのエラーが発生する要因がエラーメッセージを表示したテストシナリオG1又はG2に対応するI/Fバスモデル4又は5にあるとは限らない。他のI/Fバスモデル5又は4が自己には影響しないが、他のI/Fバスモデル4又は5に影響を与える振る舞いをしている場合もある。そこで、エラーメセージをあるテストシナリオG1又はG2のテストについて表示した後に、他のテストシナリオG2又はG1内のその時点で動作しているテストを示すエラー情報を表示することにより、テストシナリオG1,G2の同時並行的な動作での特定要因を明確にすることが可能になり、解析効率を向上させることができる。
That is, in the above case, when the error control unit 6 finds an error, it can display an error message specific to the test included in each test scenario G1, G2, but the error only appears as a result. The cause of the error is not necessarily in the I /
次に、前述のテストベンチシステム1の具体的なハードウェア構成例について説明する。図3は、テストベンチシステム1の電気的な接続のブロック図である。図3に示すように、テストベンチシステム1は、ワークステーションなどのコンピュータにより実現され、このコンピュータは、各種演算を行ない、各部を集中的に制御するCPU211と、各種のROM、RAMからなるメモリ212とが、バス213で接続されている。
Next, a specific hardware configuration example of the
バス213には、所定のインタフェースを介して、ハードディスクなどの磁気記憶装置214と、キーボード、マウスなどの入力装置215と、表示装置216とが接続され、また、ネットワーク201と通信を行なう所定の通信インタフェース219が接続されている。なお、記憶媒体217としては、CD,DVDなどの光ディスク、光磁気ディスク、フレキシブルディスクなどの各種メディアを用いることができる。また、記憶媒体読取装置218は、具体的には記憶媒体217の種類に応じて光ディスク装置、光磁気ディスク装置、フレキシブルディスク装置などが用いられる。
The bus 213 is connected to a
テストベンチシステム1は、この発明の記憶媒体を実施する記憶媒体217から、この発明のプログラムを実施するプログラム220を読み取って、磁気記憶装置214にインストールすることにより、動作可能な状態となる。これらのプログラム20はインターネットなどのネットワーク201等を介してダウンロードしてインストールするようにしてもよい。なお、プログラム220は、所定のOS上で動作するものであってもよい。
The
バス213には、所定のインタフェース221を介して、回路2と接続される。そして、プログラム220に基づいてCPU211が実行する処理により、CPUバスモデル3、I/Fバスモデル4,5、エラー制御部6、ランダム指定部7、起動順選択部11、テスト進行確認部13を構築し、テストシナリオG1,G2のテスト群12を用いて、回路2の動作が正常に行なわれるか否かの検査処理を実行する。なお、前述のログの表示は、表示装置216で行なう。
The bus 213 is connected to the
1 テストベンチシステム
2 回路
3,4,5 バスモデル
12 テスト群
217 記憶媒体
220 プログラム
G1,G2 テストシナリオ
1
Claims (7)
このバスモデルを用いた前記回路の動作の検証に用いる複数のテストシナリオを同時並行的に動作させ、この同時並行的に動作する前記各テストシナリオ中のテストをランダムに選択する手段と、
を備えているテストベンチシステム。 A bus model that is bus-connected to the circuit to be verified;
Means for simultaneously operating a plurality of test scenarios used for verifying the operation of the circuit using the bus model, and randomly selecting a test in each of the test scenarios operating in parallel;
Equipped with a test bench system.
このバスモデルを用いた前記回路の動作の検証に用いる複数のテストシナリオを同時並行的に動作させ、この同時並行的に動作する前記各テストシナリオ中のテストをランダムに選択する手段と、
をコンピュータに実行させるコンピュータに読取可能なプログラム。 A bus model that is bus-connected to the circuit to be verified; and
Means for simultaneously operating a plurality of test scenarios used for verifying the operation of the circuit using the bus model, and randomly selecting a test in each of the test scenarios operating in parallel;
A computer-readable program that causes a computer to execute.
A storage medium storing the program according to any one of claims 4 to 6.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004268549A JP2006085363A (en) | 2004-09-15 | 2004-09-15 | Test bench system, program and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004268549A JP2006085363A (en) | 2004-09-15 | 2004-09-15 | Test bench system, program and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006085363A true JP2006085363A (en) | 2006-03-30 |
Family
ID=36163835
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004268549A Pending JP2006085363A (en) | 2004-09-15 | 2004-09-15 | Test bench system, program and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006085363A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014099611A (en) * | 2012-11-14 | 2014-05-29 | Power Integrations Inc | Integrated circuit package |
CN110569158A (en) * | 2019-08-30 | 2019-12-13 | 东莞记忆存储科技有限公司 | method and device for testing abnormal power failure in SSD random scene and computer equipment |
-
2004
- 2004-09-15 JP JP2004268549A patent/JP2006085363A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014099611A (en) * | 2012-11-14 | 2014-05-29 | Power Integrations Inc | Integrated circuit package |
CN110569158A (en) * | 2019-08-30 | 2019-12-13 | 东莞记忆存储科技有限公司 | method and device for testing abnormal power failure in SSD random scene and computer equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4251964B2 (en) | Verification device, verification method, and program | |
JP2009294846A (en) | Test case generator, and test case generation program and method | |
JP2006085363A (en) | Test bench system, program and storage medium | |
JP4580722B2 (en) | Test simulator and test simulation program | |
CN115562931A (en) | Processor debugging module verification method and device, electronic equipment and storage medium | |
JP5811859B2 (en) | Source code static analysis device, system, method, and program therefor | |
JP2005108007A (en) | Lsi design verification apparatus and lsi design verification method | |
JP6366811B2 (en) | Inspection device, inspection method, and program | |
JP2010249662A (en) | Delay fault diagnosis program | |
JP2007226567A (en) | Circuit simulator and circuit simulation program | |
WO2012049816A1 (en) | Model checking device, method, and program | |
KR20070058941A (en) | Method and apparatus for automatically generating test case for device driver test | |
JP6318976B2 (en) | DEBUG CIRCUIT, DEBUGGER DEVICE, SEMICONDUCTOR DEVICE, AND DEBUG METHOD | |
US6965852B2 (en) | Pseudo random test pattern generation using Markov chains | |
JP2010079516A (en) | Simulation method and program | |
JP5387521B2 (en) | Logic verification scenario generation device and logic verification scenario generation program | |
JP2009217720A (en) | Program generating device and program generating method | |
JP2010009279A (en) | Debugging method and debugging program | |
US7904289B2 (en) | Method and system for testing functionality of a chip checker | |
JP4893028B2 (en) | Chipset emulation apparatus and method | |
US7526703B2 (en) | Method of test pattern generation in IC design simulation system | |
JP2005031860A (en) | Test case creation device | |
JP2005316595A (en) | Method for verifying equivalence between circuit description and program for verifying equivalence between circuit description | |
JP4351961B2 (en) | Simulator program and storage medium | |
JP2006018429A (en) | Functional verification system, test bench, simulator program and storage medium |