JP2005174112A - Test data generating device and simulation model device - Google Patents

Test data generating device and simulation model device Download PDF

Info

Publication number
JP2005174112A
JP2005174112A JP2003415286A JP2003415286A JP2005174112A JP 2005174112 A JP2005174112 A JP 2005174112A JP 2003415286 A JP2003415286 A JP 2003415286A JP 2003415286 A JP2003415286 A JP 2003415286A JP 2005174112 A JP2005174112 A JP 2005174112A
Authority
JP
Japan
Prior art keywords
test data
script
data
cpu
command
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003415286A
Other languages
Japanese (ja)
Other versions
JP4340139B2 (en
Inventor
Yoichi Takahashi
洋一 高橋
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003415286A priority Critical patent/JP4340139B2/en
Publication of JP2005174112A publication Critical patent/JP2005174112A/en
Application granted granted Critical
Publication of JP4340139B2 publication Critical patent/JP4340139B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To improve the diversity of data and to reduce labor for creating test data in the verification method of a system LSI, related to a test data creating device that is characterized by having a description method for information held by a conversion tool for creating the test data and a script converted by the conversion tool. <P>SOLUTION: A conversion tool 2 inputs a script 1 corresponding to different CPUs, and converts the inputted script 1 into test data 3 synchronizing with the clock of the bus of the CPU capable of verifying logics of blocks 4d-1 and 4d-2 connected to the bus of the CPU. The test data 3 adopt a describing method such as the modification of a command or an address related with a signal unique to the LSI. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、システムLSIの検証方法において、試験データを作成するための変換ツールの保持する情報、及び変換ツールにて変換するスクリプトの記述方法に関するものである。   The present invention relates to information held by a conversion tool for creating test data and a method for describing a script to be converted by the conversion tool in a system LSI verification method.

システムLSIの検証に用いる試験データは、設計したシステムLSIの検証する部位に合わせて作成され、試験対象のシステムLSIのCPUに対応するものである。この試験データには、設計したシステムLSI固有の信号が入っていることがある。   The test data used for verification of the system LSI is created in accordance with a part to be verified of the designed system LSI, and corresponds to the CPU of the system LSI to be tested. This test data may contain a signal specific to the designed system LSI.

設計したシステムLSIの検証は、個別に試験データを作成して行われていたため、検証に使用するシミュレーション・モデルにおいても、テスト対象部位とのインタフェースが統一されず、個々に作成する箇所が多かった。   Since the verification of the designed system LSI was performed by creating test data individually, even in the simulation model used for verification, the interface with the test target part was not unified, and there were many parts to be created individually .

また、システムLSIの設計は、新規機能のみで構成されることは稀で、殆どの場合、従来の機能に対して新規機能を追加するものである。
特開平1−250874号公報 特開平2−287837号公報 特開平5−172903号公報
In addition, the design of a system LSI is rarely composed of only new functions, and in most cases, new functions are added to conventional functions.
JP-A-1-250874 JP-A-2-287837 JP-A-5-172903

本発明の目的とするところは、従来の試験データを流用できるようにし、設計したシステムLSIの検証に使用する試験データの作成を省力化することである。   An object of the present invention is to make it possible to divert conventional test data, and to save labor in creating test data used for verification of a designed system LSI.

また、従来試験データに設計したLSI固有信号が含まれていたり、テスト対象部位とのインターフェースが決まっていないため、そのまま流用するのが難しいという課題を解決する。   Further, since the LSI inherent signal designed in the conventional test data is included or the interface with the test target part is not determined, the problem that it is difficult to divert as it is is solved.

つまり、この発明は、試験データの流用を容易にし、論理検証用試験データの作成を効率良く行うことを目的とする。   That is, an object of the present invention is to facilitate the diversion of test data and to efficiently create test data for logic verification.

本発明に係る試験データ作成装置は、
CPU(セントラル・プロセッシング・ユニット)を内蔵するシステムLSI(大規模集積回路)の動作を検証する論理検証用の試験データを作成する試験データ作成装置であって、
異なったCPUに対応したスクリプトを入力し、入力したスクリプトを、CPUのバスに接続するブロックのロジックを検証可能な、当該バスのクロックに同期する試験データに変換する変換ツールを有することを特徴とする。
The test data creation device according to the present invention is:
A test data creation device for creating test data for logic verification to verify the operation of a system LSI (large scale integrated circuit) incorporating a CPU (central processing unit),
It has a conversion tool for inputting a script corresponding to a different CPU and converting the input script into test data synchronized with the clock of the bus, which can verify the logic of a block connected to the CPU bus. To do.

試験データ作成装置は、異なったCPUに対応したスクリプトを入力し、入力したスクリプトを、CPUのバスに接続するブロックのロジックを検証可能な、当該バスのクロックに同期する試験データに変換する変換ツールを有するので、データの流用性が向上するとともに、試験データ作成の労力が削減できる。   Test data creation device is a conversion tool for inputting a script corresponding to a different CPU and converting the input script into test data synchronized with the clock of the bus capable of verifying the logic of the block connected to the CPU bus. Therefore, the diversion of data can be improved and the labor for creating test data can be reduced.

実施の形態1.
以下本発明を図面に示す実施例に基づいて説明する。図1は、実施の形態1におけるシステム構成例を示す図である。図において、1は異なったCPUに対応したスクリプト、2は異なったCPUに対応したスクリプトを試験データに変換する変換ツール、3は試験データ、3aはテスト対象を検証する試験データのテストパターン部分、3bはテスト対象を制御するテストベンチ部分の制御データ、4はシステムLSIのシミュレーション・モデルの構成、4aはシミュレーション・モデルに使用するテストベンチ部分、4bはシミュレーション・モデルに使用するCPU用擬似的なバス・ドライバ、4cはCPU用擬似的なバス・ドライバとテスト対象がつながるシステムLSIの内部バス、4dはシミュレーション・モデルにおけるテスト対象、4d−1から4d−2は、テスト対象の各ブロック部分、4eはテストパターンや制御データで制御するテスト対象の制御信号群を示す。
Embodiment 1 FIG.
Hereinafter, the present invention will be described based on embodiments shown in the drawings. FIG. 1 is a diagram illustrating a system configuration example according to the first embodiment. In the figure, 1 is a script corresponding to a different CPU, 2 is a conversion tool for converting a script corresponding to a different CPU into test data, 3 is test data, 3a is a test pattern portion of test data for verifying a test object, 3b is the control data of the test bench part that controls the test object, 4 is the configuration of the simulation model of the system LSI, 4a is the test bench part used for the simulation model, and 4b is a simulated CPU for the simulation model A bus driver, 4c is an internal bus of a system LSI in which a pseudo bus driver for CPU and a test target are connected, 4d is a test target in the simulation model, 4d-1 to 4d-2 are block parts to be tested, 4e is a test controlled by test patterns and control data. Shows a control signal group bets subject.

図2は、テストパターン3aの例を示す図である。図において、3a−1は内部バス4cが同期するクロック、3a−2は内部バス4cに出力されているアドレス値、3a−3は内部バス4cに出力されているデータ値、3a−4は内部バス4cの制御信号を示す。   FIG. 2 is a diagram illustrating an example of the test pattern 3a. In the figure, 3a-1 is a clock synchronized with the internal bus 4c, 3a-2 is an address value output to the internal bus 4c, 3a-3 is a data value output to the internal bus 4c, and 3a-4 is an internal value. The control signal of the bus 4c is shown.

次に動作について説明する。スクリプト1に、アドレス0x8000番地へデータ0x04030201の4byteデータを書き込む記述があった場合、変換ツールで試験データ3のテストパターン3aと制御データ3bを作成する。   Next, the operation will be described. If script 1 has a description of writing 4 bytes of data 0x04030201 at address 0x8000, test pattern 3a and control data 3b of test data 3 are created using a conversion tool.

変換ツール2は、クロック3a−1に対して、システムLSIのCPUがアドレス3a−2を3クロック出力し、データ3a−3をアドレス3a−2の開始から1クロック遅れて2クロック出力し、R/W3a−4をアドレス3a−2と同じタイミングで3クロック出力し、連続動作時にはReadに戻さないことを示すタイミング情報と、リトルエンディアンで動作する情報を保持している。   In the conversion tool 2, the CPU of the system LSI outputs 3 clocks of the address 3a-2 with respect to the clock 3a-1, outputs 2 clocks of the data 3a-3 with a delay of 1 clock from the start of the address 3a-2, and R / W3a-4 outputs 3 clocks at the same timing as address 3a-2, and holds timing information indicating that it does not return to Read during continuous operation and information operating in little endian.

作成した試験データ3は、システムLSIのシミュレーション・モデル4のテストベンチ4aにより、CPU用擬似的なバス・ドライバ4bから出力される。すなわち、テストデータ3aは内部バス4cに出力されるデータとなる。   The created test data 3 is output from the pseudo bus driver 4b for the CPU by the test bench 4a of the simulation model 4 of the system LSI. That is, the test data 3a is data output to the internal bus 4c.

そして、スクリプト1に記述されたテスト対象のスクリプト内容に従い、ブロック1(4d−1)やブロック2(4d−2)の検証を行う。   Then, according to the contents of the script to be tested described in script 1, verification of block 1 (4d-1) and block 2 (4d-2) is performed.

以上のように、本発明では、試験データを内部バスのクロックに対する各信号の変化と定義し、スクリプトには大まかな動作を記述し、変換ツールにより内部バスのクロックに対する各信号に変換する。これにより、設計したシステムLSIの検証に使用する試験データの作成を省力化できる。   As described above, in the present invention, test data is defined as a change in each signal with respect to the clock of the internal bus, a rough operation is described in the script, and converted into each signal with respect to the clock of the internal bus by the conversion tool. Thereby, it is possible to save labor for creating test data used for verification of the designed system LSI.

また、スクリプトには、大まかな動作のみを記述しているため、変換ツールを変えることで、異なるCPUを内蔵したシステムLSIの同様な機能についても、同じスクリプトを使用して検証できる。   Further, since only a rough operation is described in the script, the same function of a system LSI having a different CPU can be verified using the same script by changing the conversion tool.

また、1つのスクリプトにテストパターンの情報と制御データの情報を必ず記述してある必要は無く、2つ以上のスクリプトを組み合わせて、試験データを作成しても良い。また、テストパターンのみ流用したい場合は、制御データ部分を別途作成しても良い。   Further, it is not always necessary to describe the test pattern information and the control data information in one script, and the test data may be created by combining two or more scripts. If only the test pattern is to be used, the control data portion may be created separately.

試験データのR/Wがreadである時のデータバスの内容は、テストベンチに通知される。そして、試験データに数値が記述されている場合は、テストベンチにてチェックを行う。尚、チェックする機能は、テストベンチでなく、CPU用擬似的なバス・ドライバ部分に持たせても良い。   The content of the data bus when the R / W of the test data is read is notified to the test bench. And when the numerical value is described in the test data, it is checked on the test bench. The checking function may be provided not in the test bench but in the CPU pseudo bus driver.

実施の形態2.
本実施の形態では、実施の形態1の構成をベースに、アーキテクチャ対応表を保持する変換ツールを使用する例を説明する。
Embodiment 2. FIG.
In the present embodiment, an example in which a conversion tool that holds an architecture correspondence table is used will be described based on the configuration of the first embodiment.

図3は、実施の形態2におけるシステム構成例を示す図である。本形態では、異なるCPU用のアーキテクチャ対応表を保持する変換ツールにて、試験データを作成する。これにより、実施の形態1で示したスクリプトを、バス幅の異なるCPUを内蔵したシステムLSIの機能検証に使用することができる。   FIG. 3 is a diagram illustrating a system configuration example according to the second embodiment. In this embodiment, test data is created by a conversion tool that holds architecture correspondence tables for different CPUs. As a result, the script shown in the first embodiment can be used for function verification of a system LSI incorporating a CPU having a different bus width.

図において、1は異なったCPUに対応したスクリプト、102は異なるCPUに対応したスクリプトを試験データに変換する変換ツール、102aは異なるCPUに対応するためのアーキテクチャ対応表、103は試験データ、103aはテスト対象を検証する試験データのテストパターン部分、103bはテスト対象を制御するテストベンチ部分の制御データ、104はシステムLSIのシミュレーション・モデルの構成、104aはシミュレーション・モデルに使用するテストベンチ部分、104bはシミュレーション・モデルに使用するCPU用擬似的なバス・ドライバ、104cはCPU用擬似的なバス・ドライバとテスト対象がつながるシステムLSIの内部バス、104dはシミュレーション・モデルにおけるテスト対象、104d−1から104d−2は、テスト対象の各ブロック部分、104eはテストパターンや制御データで制御するテスト対象の制御信号群を示す。   In the figure, 1 is a script corresponding to a different CPU, 102 is a conversion tool for converting a script corresponding to a different CPU into test data, 102a is an architecture correspondence table for corresponding to a different CPU, 103 is test data, and 103a is The test pattern portion of the test data for verifying the test target, 103b is the control data of the test bench portion for controlling the test target, 104 is the configuration of the simulation model of the system LSI, 104a is the test bench portion used for the simulation model, 104b Is a pseudo bus driver for the CPU used for the simulation model, 104c is an internal bus of the system LSI connecting the pseudo bus driver for the CPU and the test object, 104d is the test object in the simulation model, 1 104d-2 from 4d-1, each block portion being tested, 104e denotes a control signal group to be tested to control the test pattern and control data.

尚、CPUの試験データ103、及びCPUのシステムLSIのシミュレーション・モデル104の構成は、実施の形態1における試験データ3、及びのシミュレーション・モデル4の構成と同様である。   The configuration of the test data 103 of the CPU and the simulation model 104 of the system LSI of the CPU is the same as the configuration of the test data 3 and the simulation model 4 in the first embodiment.

図4は、アーキテクチャ対応表102aの例を示す図である。アーキテクチャ対応表102aは、大きくCPU部対応表102a−1とブロック部対応表102a−2に分かれている。また、ブロック部対応表102a−2は、システムLSIのテスト対象104dの各ブロックに対応するため、更に細かく分かれている。ブロック1部対応表102a−2_1はテスト対象104のブロック1(104d−1)に対応し、ブロック2部対応表102a−2_2はテスト対象104のブロック2(104d−2)に対応している。各対応表に記載される設定内容については、図中に例を示す。   FIG. 4 is a diagram illustrating an example of the architecture correspondence table 102a. The architecture correspondence table 102a is roughly divided into a CPU part correspondence table 102a-1 and a block part correspondence table 102a-2. Further, the block part correspondence table 102a-2 is further divided in detail to correspond to each block of the test target 104d of the system LSI. The block 1 part correspondence table 102a-2_1 corresponds to block 1 (104d-1) of the test object 104, and the block 2 part correspondence table 102a-2_2 corresponds to block 2 (104d-2) of the test object 104. An example of the setting contents described in each correspondence table is shown in the figure.

図5は、実施の形態2におけるテストパターン103aの例を示す図である。
図において、103a−1は内部バス104cが同期するクロック、103a−2は内部バス104cに出力されているアドレス値、103a−3は内部バス104cに出力されているデータ値、103a−4は内部バス104cの制御信号を示す。
FIG. 5 is a diagram illustrating an example of the test pattern 103a according to the second embodiment.
In the figure, 103a-1 is a clock synchronized with the internal bus 104c, 103a-2 is an address value output to the internal bus 104c, 103a-3 is a data value output to the internal bus 104c, and 103a-4 is an internal value. The control signal of the bus 104c is shown.

次に動作について説明する。スクリプト1に、アドレス0x8000番地へデータ0x04030201の4byteデータを書き込む記述があった場合には、変換ツール102で試験データ103のテストパターン103aと制御データ103bを作成する。   Next, the operation will be described. If script 1 has a description of writing 4 bytes of data 0x04030201 at address 0x8000, test tool 103a and control data 103b of test data 103 are created by conversion tool 102.

アーキテクチャ対応表102aは、クロック103a−1に対して、システムLSIのCPUがアドレス103a−2を2クロック出力し、データ103a−3をアドレス103a−2と同じタイミングで2クロック出力し、R/W103a−4もアドレス3a−2と同じタイミングで2クロック出力することを示すタイミング情報と、リトルエンディアンで動作する情報等を保持している。そして、変換ツール102は、このアーキテクチャ対応表102aの内容に従い、試験データ103を作成する。   In the architecture correspondence table 102a, the CPU of the system LSI outputs two clocks of the address 103a-2 with respect to the clock 103a-1, outputs two clocks of the data 103a-3 at the same timing as the address 103a-2, and the R / W 103a. -4 also holds timing information indicating that two clocks are output at the same timing as that of the address 3a-2, information operating in little endian, and the like. Then, the conversion tool 102 creates test data 103 according to the contents of this architecture correspondence table 102a.

作成した試験データ103は、システムLSIのシミュレーション・モデル104のテストベンチ104aにより、CPU用擬似的なバス・ドライバ104bから出力される。すなわち、テストデータ103aは内部バス104cに出力されるデータとなる。   The created test data 103 is output from the CPU pseudo bus driver 104b by the test bench 104a of the simulation model 104 of the system LSI. That is, the test data 103a is data output to the internal bus 104c.

そして、スクリプト1に記述されたテスト対象のスクリプト内容に従い、ブロック1(104d−1)やブロック2(104d−2)の検証を行う。   Then, verification of block 1 (104d-1) and block 2 (104d-2) is performed in accordance with the content of the test target script described in script 1.

以上のように、スクリプトに記述した大まかな動作を、内部バスのクロックに対する各信号の変化の試験データに変換する場合に、異なるCPUに対応したシステムLSIのアーキテクチャ対応表を変換ツールに用意することで、変換が容易になり、スクリプトの流用による検証ができる。   As described above, when converting the rough operation described in the script into the test data of the change of each signal with respect to the clock of the internal bus, prepare the conversion table of the system LSI architecture correspondence table corresponding to different CPUs. Thus, conversion becomes easy and verification by diversion of the script can be performed.

実施の形態3.
本実施の形態では、実施の形態2に示した異なるCPUに対応したスクリプトに用いるコマンドの記述方法について説明する。
Embodiment 3 FIG.
In this embodiment, a description method of commands used for scripts corresponding to different CPUs shown in the second embodiment will be described.

図6は、スクリプトに用いるコマンドの一覧を示す図である。この例では、コマンドの文字列と引数内容の例を示しているが、この例以外の構成であってもかまわない。   FIG. 6 is a diagram showing a list of commands used for the script. In this example, an example of a command character string and argument contents is shown, but a configuration other than this example may be used.

スクリプトのコマンドのcheckの引数には、アーキテクチャ対応表102aで指定したシーケンスと信号レベルを示す確認機能名称と、その確認機能名称に対応した論理レベルの状態(真/偽)を記述できる。   In the check argument of the script command, a confirmation function name indicating the sequence and signal level specified in the architecture correspondence table 102a, and a logical level state (true / false) corresponding to the confirmation function name can be described.

スクリプトのコマンドのwaitの引数には、アーキテクチャ対応表102aで指定したシーケンスと信号レベルを示す確認機能名称と、その確認機能名称の示す状態になるまで待つことのできる待ち時間を記述できる。   In the wait argument of the script command, the confirmation function name indicating the sequence and signal level specified in the architecture correspondence table 102a and the waiting time that can be waited until the state indicated by the confirmation function name can be described.

スクリプトのコマンドのdriveの引数には、アーキテクチャ対応表102aで指定したシーケンスと信号レベルを示す制御機能名称と、その制御機能名称に対応した論理レベルの制御状態(真/偽)を記述できる。   In the drive argument of the script command, the control function name indicating the sequence and signal level specified in the architecture correspondence table 102a and the control state (true / false) of the logic level corresponding to the control function name can be described.

スクリプトのコマンドのdelayの引数には、アーキテクチャ対応表102aで指定したシーケンスと信号レベルを示す制御機能名称と、その制御機能名称に対応した内部バスに同期したクロックに対する遅延時間を記述できる。   The argument of the script command delay can describe a control function name indicating the sequence and signal level specified in the architecture correspondence table 102a, and a delay time with respect to a clock synchronized with the internal bus corresponding to the control function name.

スクリプトのコマンドのcopyの引数には、アーキテクチャ対応表102aで指定した複写元の名称と複写先の名称、複写のbyte数を記述できる。また、複写元の名称には、ファイル名や直接数値の指定もできる。複写先の名称には、ファイル名も指定できる。   In the copy argument of the script command, the name of the copy source and the name of the copy destination specified in the architecture correspondence table 102a and the number of copy bytes can be described. In addition, a file name or a direct numerical value can be designated as the copy source name. A file name can also be specified as the copy destination name.

スクリプトのコマンドのadd_sigの引数には、アーキテクチャ対応表102aで指定した監視条件と監視回数、指定動作を記述できる。   In the add_sig argument of the script command, the monitoring condition, the number of times of monitoring, and the specified operation specified in the architecture correspondence table 102a can be described.

スクリプトのコマンドのext_sig_chkの引数には、アーキテクチャ対応表102aで指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている確認信号と、確認信号のbit位置に対応したLSI固有の信号名の判定時の信号の論理(真/偽)を記述できる。   The ext_sig_chk argument of the script command corresponds to the confirmation signal in which an LSI-specific signal name is assigned to each bit in the binary display specified in the architecture correspondence table 102a and the bit position of the confirmation signal. It is possible to describe the logic (true / false) of a signal when determining a signal name unique to an LSI.

スクリプトのコマンドのext_sig_dlyの引数には、アーキテクチャ対応表102aで指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている制御信号と、指定した数値分の内部バスに同期したクロック分あるいはアーキテクチャ対応表102に記載した文字列の指定による内部バスに同期したクロック分の遅延を指定する遅延時間の指定を記述できる。   The ext_sig_dly argument of the script command includes a control signal in which an LSI-specific signal name is assigned to each bit specified in the binary table specified in the architecture correspondence table 102a, and an internal bus for the specified numerical value. It is possible to describe the specification of the delay time for designating the delay of the clock synchronized with the internal bus by the designation of the synchronized clock or the character string described in the architecture correspondence table 102.

スクリプトのコマンドのext_sig_drvの引数には、アーキテクチャ対応表102aで指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている制御信号と、制御信号を駆動時の信号の論理(真/偽)を記述できる。   The ext_sig_drv argument of the script command includes a control signal in which an LSI-specific signal name is assigned to each bit in binary display specified in the architecture correspondence table 102a, and a signal for driving the control signal. Logic (true / false) can be described.

スクリプトのコマンドのext_sig_addの引数には、アーキテクチャ対応表102aで指定した文字列で指定される監視条件と、指定した数値分かアーキテクチャ対応表102に記載した文字列の指定による回数分の監視を指定する監視回数、アーキテクチャ対応表102aで指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている制御信号と、制御信号を駆動時の信号の論理(真/偽)、指定した数値あるいはアーキテクチャ対応表102に記載した文字列の指定による内部バスに同期したクロック数分の挿入クロック数を記述できる。   The ext_sig_add argument of the script command specifies the monitoring condition specified by the character string specified in the architecture correspondence table 102a and the monitoring for the specified numerical value or the number of times specified by the character string described in the architecture correspondence table 102 Number of monitoring to be performed, a control signal in which a signal name unique to the LSI is assigned to each bit in the binary display specified in the architecture correspondence table 102a, and logic (true / false) of the signal when driving the control signal The number of inserted clocks corresponding to the number of clocks synchronized with the internal bus can be described by the designated numerical value or the character string described in the architecture correspondence table 102.

次に動作について説明する。変換ツールは、スクリプトに記述するコマンドから、試験データ(3,103)のテストパターン(3a,103a)と制御データ(3b,103b)を生成する。   Next, the operation will be described. The conversion tool generates test patterns (3a, 103a) and control data (3b, 103b) of the test data (3, 103) from the commands described in the script.

checkは、制御データに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表から、本コマンドにて指定された確認機能名称に対応した信号のシーケンスと信号レベルをテストベンチ(4a,104a)で確認するための試験データを作成する。本コマンドにて示す状態に対する処理は、アーキテクチャ対応表に記述した内容となる。   check is a script command for generating test data belonging to the control data. From the architecture correspondence table, the conversion tool creates test data for confirming the signal sequence and signal level corresponding to the confirmation function name specified by this command on the test bench (4a, 104a). The processing for the state indicated by this command is the content described in the architecture correspondence table.

waitは、制御データに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表から、本コマンドにて指定された確認機能名称に対応した信号のシーケンスと信号レベルになるまで、テストベンチで待つことのできる時間を指定する試験データを作成する。本コマンドにて示す待ち時間と待ち時間経過後の処理は、アーキテクチャ対応表に記述した内容となる。   “wait” is a script command for generating test data belonging to the control data. The conversion tool creates test data for designating the time that can be waited on the test bench from the architecture correspondence table until the signal sequence and signal level corresponding to the confirmation function name designated by this command are reached. The waiting time indicated by this command and the processing after the waiting time have elapsed are the contents described in the architecture correspondence table.

driveは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表から、本コマンドにて指定された制御機能名称と制御状態に対応した信号のシーケンスと信号レベルの試験データを作成する。   “drive” is a script command for generating test data belonging to the test pattern. The conversion tool creates a signal sequence and signal level test data corresponding to the control function name and control state specified by this command from the architecture correspondence table.

delayは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表から、本コマンドにて指定された制御機能名称と遅延時間を用いて、アーキテクチャに従った試験データを作成する。   “delay” is a script command for generating test data belonging to the test pattern. The conversion tool creates test data according to the architecture using the control function name and delay time specified by this command from the architecture correspondence table.

copyは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表から、本コマンドにて指定された複写元の名称と複写先の名称、複写のbyte数を用いて、アーキテクチャに従った試験データを作成する。本コマンドが展開された試験データは、アーキテクチャ対応表のデータ・バス幅やエンディアン、使用するアドレス空間等の指定が反映された内容となる。例えば、図2と図5に示すように、同じ機能を検証するために同じスクリプトを使用できる場合において、バス幅やCPUの書込みシーケンスが異なると、試験データは異なるものとなる。これを、スクリプトのCopyで記述し共通化し、変換ツールで異なるCPUの部分を吸収することで、スクリプトの流用が可能となる。また、複写元のデータを別ファイルにて記述することにより、同一機能を複数のデータの組合せにて検証することを容易にする。   copy is a script command for generating test data belonging to a test pattern. The conversion tool creates test data according to the architecture from the architecture correspondence table, using the copy source name and copy destination name specified by this command, and the number of copy bytes. The test data in which this command is expanded will reflect the data bus width, endian, and address space used in the architecture correspondence table. For example, as shown in FIGS. 2 and 5, when the same script can be used to verify the same function, the test data will be different if the bus width and CPU write sequence are different. This can be diverted by describing and sharing the script with a copy of the script, and absorbing different CPU portions with the conversion tool. Also, by describing the copy source data in a separate file, it is easy to verify the same function with a combination of a plurality of data.

add_sigは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、copyコマンドの前に記述されたadd_sigを見つけると、アーキテクチャ対応表から、本コマンドにて指定された監視条件と、監視回数、指定動作を用い、監視条件の監視回数出現毎に、指定動作を挿入した試験データを作成する。   add_sig is a script command for generating test data belonging to the test pattern. When the conversion tool finds add_sig described before the copy command, it uses the monitoring condition specified by this command, the number of monitoring times, and the specified operation from the architecture correspondence table. Create test data with specified actions inserted.

Ext_sig_chkは、制御データに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表で示す2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている確認信号と、確認信号のbit位置に対応したLSI固有の信号名の判定時の信号の論理(真/偽)を、テストベンチで確認するための試験データを作成する。本コマンドにて示す状態に対する処理は、アーキテクチャ対応表に記述した内容となる。   Ext_sig_chk is a script command for generating test data belonging to the control data. When the conversion tool determines a confirmation signal in which an LSI-specific signal name is assigned to each bit in the binary display shown in the architecture correspondence table, and an LSI-specific signal name corresponding to the bit position of the confirmation signal Test data for confirming the logic (true / false) of the signal on the test bench is created. The processing for the state indicated by this command is the content described in the architecture correspondence table.

Ext_sig_dlyは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表で指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている制御信号に対し、指定した数値分かアーキテクチャ対応表に記載した文字列の指定による内部バスに同期したクロック分の遅延時間分を遅らせた試験データを作成する。アーキテクチャ対応表には、各bitに対応した信号名が存在しない信号の場合の処理について、変換ツール時にエラーとするか無視して続行するか等の指定を記述してある。   Ext_sig_dly is a script command for generating test data belonging to a test pattern. The conversion tool uses the specified numerical value or the character string described in the architecture correspondence table for the control signal in which the LSI specific signal name is assigned to each bit in the binary display designated in the architecture correspondence table. Create test data by delaying the delay time of the clock synchronized with the specified internal bus. In the architecture correspondence table, the designation of whether or not to continue processing with an error at the time of the conversion tool or disregarding the processing for the signal having no signal name corresponding to each bit is described.

Ext_sig_drvは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、アーキテクチャ対応表で指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている制御信号に対し、指定されている制御信号の駆動時の信号の論理(真/偽)で駆動する試験データを作成する。アーキテクチャ対応表には、各bitに対応した信号名が存在しない信号の場合、変換ツールの処理をエラーとするか無視して続行するか等の指定を記述してある。   Ext_sig_drv is a script command for generating test data belonging to the test pattern. The conversion tool uses the logic of the signal at the time of driving the designated control signal for the control signal in which the signal name unique to the LSI is assigned to each bit in the binary display designated in the architecture correspondence table. Test data to be driven by (true / false) is created. In the architecture correspondence table, in the case of a signal for which there is no signal name corresponding to each bit, designation is made as to whether or not the conversion tool process is continued as an error or ignored.

Ext_sig_addは、テストパターンに属する試験データを生成するためのスクリプトのコマンドである。変換ツールは、copy等繰り返し動作が行われる処理の前に記述されたExt_sig_addを見つけると、アーキテクチャ対応表で指定した文字列で指定される監視条件と、指定した数値分かアーキテクチャ対応表に記載した文字列の指定による回数分の監視を指定する監視回数を確認し、アーキテクチャ対応表で指定した2進表示した場合の各bitに対してLSI固有の信号名が割り付けられている制御信号を、指定した制御信号を駆動時の信号の論理(真/偽)で、指定した数値かアーキテクチャ対応表に記載した文字列の指定による内部バスに同期したクロック数分の挿入クロック数の信号を繰り返し動作の間に挿入した試験データを作成する。アーキテクチャ対応表には、各bitに対応した信号名が存在しない信号の場合、変換ツールの処理をエラーとするか無視して続行するか等の指定を記述してある。   Ext_sig_add is a script command for generating test data belonging to the test pattern. When the conversion tool finds Ext_sig_add described before the process in which a repetitive operation such as copy is performed, the monitoring condition specified by the character string specified in the architecture correspondence table and the specified numerical value are described in the architecture correspondence table. Check the number of times of monitoring that specifies the number of times of monitoring by specifying the character string, and specify the control signal to which an LSI-specific signal name is assigned to each bit in the binary display specified in the architecture correspondence table The number of inserted clocks corresponding to the number of clocks synchronized with the internal bus specified by the specified numerical value or the character string described in the architecture correspondence table is repeated according to the logic (true / false) of the driving control signal. Create test data inserted between them. In the architecture correspondence table, in the case of a signal for which there is no signal name corresponding to each bit, designation is made as to whether or not the conversion tool process is continued as an error or ignored.

以上のように、スクリプトのコマンドを定義することで、異なるCPUのシステムLSIにおけるLSI固有の信号を含めて、スクリプトで記述できるようになる。変換ツールは、内部バスのクロックに対する各信号の変化の試験データに変換する場合、異なるCPUに対応したシステムLSIのアーキテクチャ対応表を参照することで、異なるCPUのシステムLSI固有の処理への変換が容易になる。結果とし、スクリプトの流用が容易にできる。   As described above, by defining a script command, it is possible to describe the script including LSI-specific signals in the system LSIs of different CPUs. When the conversion tool converts the test data of the change of each signal with respect to the clock of the internal bus, the conversion to the processing specific to the system LSI of the different CPU can be performed by referring to the architecture correspondence table of the system LSI corresponding to the different CPU. It becomes easy. As a result, the script can be easily used.

実施の形態4.
本実施の形態では、実施の形態3で示した異なるCPUに対応したスクリプトのコマンドの記述例について説明する。
Embodiment 4 FIG.
In the present embodiment, description examples of script commands corresponding to different CPUs shown in the third embodiment will be described.

図7は、本発明のコマンドを用いて記述したスクリプトの例を示す図である。この例では、コマンドの文字列と引数内容の例を示しているが、この例以外であってもかまわない。   FIG. 7 is a diagram showing an example of a script described using the command of the present invention. In this example, an example of a command character string and argument contents is shown, but other examples may be used.

スクリプトのコマンドのdriveの引数には、アーキテクチャ対応表102aで指定したシーケンスと信号レベルを示す制御機能名称“BLK1_en”と、その制御機能名称に対応した制御状態“enable”を記述している。スクリプトのコマンドのadd_sigの引数には、アーキテクチャ対応表102aで指定したシーケンスと発生回数を示す監視条件“4B_cyc_set”と、その監視条件の発生を監視する監視回数“1time”、監視条件と回数を満たした時の指定動作“BLK1_buf_en”を記述している。スクリプトのコマンドのcopyの引数には、ファイルを示す$マークの後にデータファイルのファイル名“BLK1_data_1”と、アーキテクチャ対応表102aで示す複写先の名称のアドレスであることを示す&マークの後に“function1”、複写のbyte数“8byte”を記述している。   In the drive argument of the script command, a control function name “BLK1_en” indicating the sequence and signal level specified in the architecture correspondence table 102a and a control state “enable” corresponding to the control function name are described. The add_sig argument of the script command satisfies the monitoring condition “4B_cyc_set” indicating the sequence and the number of occurrences specified in the architecture correspondence table 102a, the monitoring number “1time” for monitoring the occurrence of the monitoring conditions, and the monitoring condition and the number of times. The designated operation “BLK1_buf_en” is described. The copy argument of the script command includes a file name “BLK1_data_1” after the $ mark indicating the file and an address of the copy destination name indicated in the architecture correspondence table 102a, followed by “function1”. ", The number of copied bytes" 8 bytes "is described.

図8は、スクリプトのコマンドのcopyで指定したデータファイルの内容を示す図である。この例では、32bitのデータが2つあり、一つ目が“0x01020304”であり、二つ目が“0x05060708”であることが記述されている。   FIG. 8 is a diagram showing the contents of the data file specified by the copy of the script command. In this example, it is described that there are two pieces of 32-bit data, the first is “0x01020304”, and the second is “0x05060708”.

図9は、実施の形態4における試験データの例を示す図である。この試験データは、図7のスクリプトと図8のデータファイルを、アーキテクチャ対応表を持つ変換ツールを使用して作成したものである。使用したアーキテクチャ対応表には、データバス幅が8bit、エンディアンがリトルエンディアン、write動作は4クロック使用し、アドレスは先頭のクロックから1クロック遅れて出力され、データは先頭のクロックから2クロック遅れて出力され、write動作時のR/W信号は先頭のクロックから1クロック遅れて出力される設定が記述されている。また、連続したwrite動作の場合、R/W信号の先頭のクロック部分は前の動作に影響を受け、write動作の間のR/W信号はwriteから変換させない設定も記述されている。   FIG. 9 is a diagram showing an example of test data in the fourth embodiment. This test data is created by using the conversion tool having the architecture correspondence table for the script of FIG. 7 and the data file of FIG. In the architecture correspondence table used, the data bus width is 8 bits, the endian is little endian, the write operation uses 4 clocks, the address is output with a delay of 1 clock from the top clock, and the data is delayed by 2 clocks from the top clock. A setting is described in which the output R / W signal during the write operation is output with a delay of one clock from the leading clock. In addition, in the case of continuous write operations, a setting is described in which the leading clock portion of the R / W signal is affected by the previous operation, and the R / W signal during the write operation is not converted from write.

BLK1_en信号は、クロックに依存せずドライブされる。BLK1_Buf信号は、enable動作が3クロックで完了する信号であり、先頭のクロックから1クロック遅れてイネーブルに1クロック分のみなる信号である。   The BLK1_en signal is driven without depending on the clock. The BLK1_Buf signal is a signal that completes the enable operation in 3 clocks, and is a signal that is enabled only for 1 clock with a delay of 1 clock from the leading clock.

図10は、試験データの別の記述例を示す図である。この試験データも、図7のスクリプトと図8のデータファイルを、アーキテクチャ対応表を持つ変換ツールを使用して作成したものである。   FIG. 10 is a diagram showing another description example of test data. This test data is also created by using the conversion tool having the architecture correspondence table for the script of FIG. 7 and the data file of FIG.

データは、大きく4つの部位から構成され、先頭にクロックを示し、次にアドレス、次にデータ、最後に制御データを示す。制御データは、各bitが信号に対応している。図では、制御信号を32bitで示し、最下位の0bit目(LSB)にBLK1_en信号を割り当て、4bit目にBLK1_Buf信号を割り当て、16bit目(LSB)にR/W信号を割り当てている。   The data is mainly composed of four parts, the clock is shown at the head, the address is followed by the data, and the control data is shown at the end. In the control data, each bit corresponds to a signal. In the figure, the control signal is represented by 32 bits, the BLK1_en signal is assigned to the lowest 0th bit (LSB), the BLK1_Buf signal is assigned to the 4th bit, and the R / W signal is assigned to the 16th bit (LSB).

次に動作について説明する。図7で示すスクリプトの動作は、初めに“BLK1_en”信号をenableにした後、function1のアドレスに32bitのデータを2回書き込むものである。そして、書き込み時に、4byte書き込む毎に“BLK1_Buf”信号を有効にする動作を行う検証を示す。このスクリプトを変換ツールで変換することで、図9や図10のデータが作成できる。   Next, the operation will be described. The operation of the script shown in FIG. 7 is to first write “BLK1_en” signal to enable and then write 32-bit data to the address of function1 twice. Then, verification is shown in which the operation of enabling the “BLK1_Buf” signal is performed every time 4 bytes are written. By converting this script with a conversion tool, the data of FIGS. 9 and 10 can be created.

図9と図10の内容は、実質的に同一である。図は、バスのクロックに対する各信号の変化を示し、データが32bitであり、バスが8bitのリトルエンディアンであることから、下位アドレスに下位データが格納されるシーケンスに展開される。そして、4Byteの処理毎にBLK1_Buf信号を有効にしている。   The contents of FIGS. 9 and 10 are substantially the same. The figure shows the change of each signal with respect to the bus clock. Since the data is 32 bits and the bus is 8-bit little endian, it is developed into a sequence in which lower data is stored at lower addresses. The BLK1_Buf signal is validated every 4 bytes of processing.

以上のように、定義したスクリプトのコマンドを用いることで、異なるCPUのシステムLSIにおけるLSI固有の信号を含め、スクリプトに記述できるようになる。変換ツールは、内部バスのクロックに対する各信号の変化の試験データに変換する場合、異なるCPUに対応したシステムLSIのアーキテクチャ対応表に従い変換することで、試験データの記述が容易になる。また、クロックに対応した信号の変換は、データ量が多く単調であるため、人手にて作成していると間違いが発生しやすく、人為的ミスの防止にも役立つ。結果として、品質の良い、スクリプトが容易に作成できる。   As described above, by using the command of the defined script, it becomes possible to describe the script including the LSI-specific signal in the system LSI of a different CPU. When the conversion tool converts the test data of the change of each signal with respect to the clock of the internal bus, the test data can be easily described by converting according to the architecture correspondence table of the system LSI corresponding to the different CPU. In addition, since the signal conversion corresponding to the clock has a large amount of data and is monotonous, mistakes are likely to occur if created manually, which also helps to prevent human error. As a result, good quality scripts can be easily created.

尚、図10の試験データのデータ構成は、4つの塊である必要はなく、この例は一つ以上のデータで構成されていることを示している。また、クロックは、必ず必要なデータでなく、1行を1クロックと定義し、記述を省いてもよい。   Note that the data structure of the test data in FIG. 10 does not have to be four blocks, and this example shows that it is composed of one or more data. In addition, the clock is not necessarily required data, and one line may be defined as one clock, and the description may be omitted.

実施の形態5.
本実施の形態では、実施の形態3で示した異なるCPUに対応したスクリプトのコマンドのcopyの記述にてアドレス修飾する例について説明する。
Embodiment 5 FIG.
In the present embodiment, an example will be described in which the address is modified by the description of the copy of the script command corresponding to the different CPU shown in the third embodiment.

図11は、コマンドのcopyを用いてアドレス修飾の記述したスクリプトの例を示す図である。この例では、コマンドの文字列と引数内容を示しているが、この例以外であってもかまわない。   FIG. 11 is a diagram illustrating an example of a script in which address modification is described using a command copy. In this example, the character string of the command and the argument contents are shown, but other examples are possible.

スクリプトのコマンドのcopyの引数には、括弧にて囲まれた中にアーキテクチャ対応表102aで示す複写元の名称のアドレスであることを示す&マークの後に“buf_add1”と、アーキテクチャ対応表102aで示す複写先の名称のアドレスであることを示す&マークの後に“function1”、複写のbyte数“2byte”を記述している。   The copy argument of the script command indicates that the address is the name of the copy source indicated by the architecture correspondence table 102a in parentheses, and “buf_add1” after the & mark is indicated by the architecture correspondence table 102a. "Function1" and the number of copied bytes "2 bytes" are described after the & mark indicating the address of the copy destination name.

図12は、実施の形態5における試験データの例を示す図である。この試験データは、図11のスクリプトを、アーキテクチャ対応表を持つ変換ツールを使用して作成したものである。使用したアーキテクチャ対応表には、データバス幅が8bit、エンディアンがリトルエンディアン、read/write動作ともに4クロック使用し、アドレスは先頭のクロックから1クロック遅れて出力され、データは先頭のクロックから2クロック遅れて出力され、R/W信号は先頭のクロックから1クロック遅れて出力される設定が記述されている。アーキテクチャ対応表102aで“buf_add1”は、0x4000のアドレスであることを示し、更に、 “function1”は、0x2000のアドレスであることを示している。   FIG. 12 is a diagram illustrating an example of test data in the fifth embodiment. This test data is created from the script of FIG. 11 using a conversion tool having an architecture correspondence table. In the architecture correspondence table used, the data bus width is 8 bits, the endian is little endian, and 4 clocks are used for both read / write operations. The address is output with a delay of 1 clock from the top clock, and the data is 2 clocks from the top clock. A setting is described in which the output is delayed and the R / W signal is output with a delay of one clock from the leading clock. In the architecture correspondence table 102a, “buf_add1” indicates an address of 0x4000, and “function1” indicates an address of 0x2000.

BLK1_en信号は、クロックに依存せずドライブされる。Buf_en信号は、enable動作が3クロックで完了する信号であり、先頭のクロックから1クロック遅れてイネーブルに1クロック分のみなる信号である。   The BLK1_en signal is driven without depending on the clock. The Buf_en signal is a signal that completes the enable operation in 3 clocks, and is a signal that is enabled for only 1 clock with a delay of 1 clock from the top clock.

CPU用擬似的なバス・ドライバ104bに内蔵するアドレス用レジスタ“r_ad”は32bitで構成され、8bit単位時は下位から順に“r_ad(LL)”,“r_ad(LH)”,“r_ad(HL)”,“r_ad(HH)”と表示し、16bit単位時は下位から順に、“r_ad(L)”,“r_ad(H)”と表示し、32bit単位時は“r_ad”と表示している。CPU用擬似的なバス・ドライバ104eに内蔵するバスのデータを一時保持するレジスタは“reg_data”と表示している。   The address register “r_ad” built in the CPU pseudo bus driver 104b is composed of 32 bits, and in the case of 8-bit units, “r_ad (LL)”, “r_ad (LH)”, “r_ad (HL) in order from the lower order. "R_ad (HH)", in the 16-bit unit, "r_ad (L)" and "r_ad (H)" are displayed in order from the lower order, and in the 32-bit unit, "r_ad" is displayed. A register that temporarily holds bus data built in the pseudo bus driver 104e for CPU is indicated as "reg_data".

図13は、実施の形態5における試験データの別の記述例を示す図である。図11のスクリプトを、アーキテクチャ対応表を持つ変換ツールを使用して作成した試験データの別の記述方法を示す。   FIG. 13 is a diagram illustrating another description example of test data according to the fifth embodiment. FIG. 12 shows another description method of test data created by using the conversion tool having the architecture correspondence table for the script of FIG.

データは、大きく4つの部位から構成され、先頭にクロックを示し、次にアドレス、次にデータ、最後に制御データを示す。制御データは、各bitが信号に対応している。この例では、制御信号を32bitで示し、最下位の0bit目(LSB)にBLK1_en信号を割り当て、4bit目にBLK1_buf信号を割り当て、16bit目(LSB)にR/W信号を割り当てている。   The data is mainly composed of four parts, the clock is shown at the head, the address is followed by the data, and the control data is shown at the end. In the control data, each bit corresponds to a signal. In this example, the control signal is indicated by 32 bits, the BLK1_en signal is assigned to the lowest 0th bit (LSB), the BLK1_buf signal is assigned to the 4th bit, and the R / W signal is assigned to the 16th bit (LSB).

アーキテクチャ対応表102aで“buf_add1”は、0x4000のアドレスであることを示し、更に“function1”は、0x2000のアドレスであることを示している。CPU用擬似的なバス・ドライバ104bに内蔵するアドレス用レジスタ“r_ad”は32bitで構成され、8bit単位時は下位から順に“r_ad(LL)”,“r_ad(LH)”,“r_ad(HL)”,“r_ad(HH)”と表示し、16bit単位時は下位から順に、“r_ad(L)”,“r_ad(H)”と表示し、32bit単位時は“r_ad”と表示している。CPU用擬似的なバス・ドライバ104bに内蔵するバスのデータを一時保持するレジスタは“reg_data”と表示している。   In the architecture correspondence table 102a, “buf_add1” indicates an address of 0x4000, and “function1” indicates an address of 0x2000. The address register “r_ad” built in the CPU pseudo bus driver 104b is composed of 32 bits, and in the case of 8-bit units, “r_ad (LL)”, “r_ad (LH)”, “r_ad (HL) in order from the lower order. "R_ad (HH)", in the 16-bit unit, "r_ad (L)" and "r_ad (H)" are displayed in order from the lower order, and in the 32-bit unit, "r_ad" is displayed. A register that temporarily holds bus data built in the pseudo bus driver 104b for CPU is indicated as "reg_data".

次に動作について説明する。図11で示すスクリプトは、動作として、初めにアドレス修飾の記述部分であるbuf_add1のアドレス値を読み込み、読み込んだアドレス値のデータを2byte読み込み、function1のアドレスに書き込むことを示している。   Next, the operation will be described. The script shown in FIG. 11 indicates that, as an operation, the address value of buf_add1, which is a description part of address modification, is first read, and the read address value data is read by 2 bytes and written to the address of function1.

図11を変換ツールで変換した図12の試験データは、初めにアドレス修飾の記述部分であるbuf_add1のアドレス値の0x4000からアドレス用データ32bit分を8bit単位で4回読み込み、CPU用擬似的なバス・ドライバのアドレス用レジスタに格納する。次に、CPU用擬似的なバス・ドライバのアドレス用レジスタに格納したアドレスから8bitデータを読み込みCPU用擬似的なバス・ドライバのデータ用レジスタに格納する。そして、複写先であるfunction1のアドレス値の0x2000に書き込む。copyコマンドの複写byte数が2byteのため、さらに、CPU用擬似的なバス・ドライバのアドレス用レジスタに格納したアドレスに+1加算したアドレス値から8bitデータを読み込みCPU用擬似的なバス・ドライバのデータ用レジスタに格納する。そして、複写先であるfunction1のアドレス値に+1加算した0x2001に書き込む。   The test data of FIG. 12 converted from FIG. 11 by the conversion tool is first read 32 bits of address data 4 times in units of 8 bits from 0x4000 of the address value of buf_add1, which is a description part of address modification. • Store in the driver address register. Next, 8-bit data is read from the address stored in the CPU pseudo bus driver address register and stored in the CPU pseudo bus driver data register. Then, it is written in the address value 0x2000 of function1 that is the copy destination. Since the number of copy bytes of the copy command is 2 bytes, 8-bit data is read from the address value added by +1 to the address stored in the address register of the CPU pseudo bus driver, and the CPU bus driver data is read. Store in register. Then, it is written in 0x2001 by adding +1 to the address value of function1 which is a copy destination.

図13は、図12と違う形式に変換した試験データであり、図12と図13の内容は実質的に同一である。   FIG. 13 shows test data converted into a format different from that in FIG. 12, and the contents of FIG. 12 and FIG. 13 are substantially the same.

以上のように、CPU用擬似的なバス・ドライバに、アドレス用レジスタとデータ用レジスタを内蔵させることで、テスト対象のブロック間のデータ転送やCPU用擬似的なバス・ドライバに内蔵させたメモリ空間のデータを使用した検証が可能となる。   As described above, by incorporating the address register and data register in the CPU pseudo bus driver, data transfer between blocks to be tested and the memory built in the CPU pseudo bus driver Verification using spatial data becomes possible.

図11のスクリプトは、図で示す表示方法以外の記述でも問題ない。また、ここでは、CPU用擬似的なバス・ドライバに、アドレス用レジスタとデータ用レジスタを内蔵させているが、データ保持用のアドレス空間を用意し、レジスタの代わりにデータ保持用として使用してもよい。データ保持用のレジスタは、一つである必要は無く、複数個用意してもよい。   The script in FIG. 11 can be described in any way other than the display method shown in the figure. In this example, the CPU pseudo bus driver has built-in address registers and data registers. However, an address space for data retention is prepared and used for data retention instead of registers. Also good. The number of data holding registers is not necessarily one, and a plurality of registers may be prepared.

図13で示すクロック、アドレス、データ、制御データのbyte数は、記述されているbyte数以外でも問題ない。また、byteの単位に囚われずbit単位で記述しても問題ない。   There are no problems with the number of bytes of the clock, address, data, and control data shown in FIG. 13 other than the number of bytes described. Moreover, there is no problem even if it is described in bit units without being bound by the unit of bytes.

実施の形態6.
本実施の形態では、実施の形態4のスクリプトに使用するアーキテクチャ対応表の記述例について説明する。
Embodiment 6 FIG.
In the present embodiment, a description example of the architecture correspondence table used for the script according to the fourth embodiment will be described.

図14は、アーキテクチャ対応表のCPU部対応表の例を示す図である。この表は、図7のスクリプトを図10の試験データに変換するために用いられる。また、図15に、ブロック部対応表の例を示す。この図では、1つのファイルに記述した例を示しているが、複数のファイルに分割したり、この例以外であってもかまわない。   FIG. 14 is a diagram illustrating an example of the CPU part correspondence table of the architecture correspondence table. This table is used to convert the script of FIG. 7 into the test data of FIG. FIG. 15 shows an example of a block part correspondence table. In this figure, an example described in one file is shown, but it may be divided into a plurality of files or other than this example.

図14の先頭には、記述した部位を示す“parts=CPU”、バス幅を示す“system_bus=8bit”の表示、エンディアンを示す“Endian=little”、アドレスのbit幅である“Adress=32bit” を記述する。そして、バスの動作を示す部分として、“Bus_sig”で囲んだ動作シーケンス部分を記述する。   At the top of FIG. 14, “parts = CPU” indicating the described part, “system_bus = 8 bit” indicating the bus width, “Endian = little” indicating endian, and “Address = 32 bit” indicating the bit width of the address. Is described. Then, an operation sequence portion surrounded by “Bus_sig” is described as a portion indicating the bus operation.

“Bus_sig”で囲んだ中には、単一書込み時のシーケンスを示す“mono−write”、連続書込み時のシーケンスを示す“burst−write”、単一読み込み時のシーケンスを示す“mono−read”、単一読み込み時のシーケンスを示す“burst−read”等を記述する。単一書込みシーケンス“mono−write”の詳細は、“mono−write”直後の数値“4”がシーケンスのクロック数を示し、更に アドレス信号の動作シーケンスの“add”、データ信号の動作シーケンスの“data”、R/W信号の動作シーケンスの“rw”が制御されることを示している。それぞれの信号は、入出力と動作シーケンスの情報を持つ。   Inside “Bus_sig”, “mono-write” indicating a sequence at the time of single writing, “burst-write” indicating a sequence at the time of continuous writing, and “mono-read” indicating a sequence at the time of single reading “Burst-read” indicating a sequence at the time of single reading is described. For details of the single write sequence “mono-write”, the numerical value “4” immediately after “mono-write” indicates the number of clocks of the sequence, and “add” in the address signal operation sequence and “ It shows that “rw” in the operation sequence of “data” and R / W signals is controlled. Each signal has input / output and operation sequence information.

単一書込みシーケンス“mono−write”の“add”では、バスへの出力信号であることを示す“o”の後に、4クロックの動作シーケンスが無効−>有効−>有効−>有効と変化することを示す“0111”を記述する。この時、前の動作により、バスの出力が変わる場合、連続書込み時のシーケンスを示す“burst−write”のR/W信号の動作シーケンスの“rw”の4クロックの動作シーケンスに示す様に、“x”を記述する。   In “add” of the single write sequence “mono-write”, the operation sequence of 4 clocks changes from invalid to valid to valid to valid after “o” indicating an output signal to the bus. “0111” indicating this is described. At this time, when the output of the bus changes due to the previous operation, as shown in the operation sequence of 4 clocks of “rw” of the operation sequence of the R / W signal of “burst-write” indicating the sequence at the time of continuous writing, Write “x”.

制御信号部分は、“Ctrl_sig”で囲み、信号名“BLK1_en”、入出力が出力“o”、動作クロック数で“0”の場合はセット後リセットまで保持の意味に使用し、有効時の信号の論理レベル“en”、無効時の信号の論理レベル“dis”を設定する。
メモリ空間のアドレスを示す“Address”には、名称“buf_add1”の開始アドレス“0x4000”と連続領域“32byte”を記述する。
The control signal part is enclosed in “Ctrl_sig”, the signal name is “BLK1_en”, the input / output is “o”, and the number of operation clocks is “0”. The logic level “en” and the signal logic level “dis” when invalid are set.
In “Address” indicating the address of the memory space, the start address “0x4000” of the name “buf_add1” and the continuous area “32 bytes” are described.

図15の先頭には、記述した部位を示す“parts=Block1”を記述し、割り込み動作シーケンスと状態を示す“int_condition”には、割り込み発生要因の設定条件“set”、割り込み発生条件“condition”、割り込み解除の条件“reset”を記述している。   At the top of FIG. 15, “parts = Block1” indicating the described part is described, and “int_condition” indicating the interrupt operation sequence and state is an interrupt generation factor setting condition “set” and an interrupt generation condition “condition” , An interrupt release condition “reset” is described.

図14のアーキテクチャ対応表のCPU部対応表の例で記述したアドレス“address”は、図15では開始アドレス“0x2000”と占有領域“8kbyte”を示している。   The address “address” described in the example of the CPU correspondence table of the architecture correspondence table of FIG. 14 indicates the start address “0x2000” and the occupied area “8 kbytes” in FIG.

ブロック1のメモリマップ情報として、レジスタとしての使用アドレス“func_reg”には先頭のアドレス“0x2100”と連続するアドレス空間“16byte”、バッファとしての使用アドレス“func_buf”には先頭のアドレス“0x2000”と連続するアドレス空間“32byte”、ブロック内部のバスの仕様“func_bus”にはバス幅“8bit”とエンディアン“little”を記述している。   As the memory map information of the block 1, the used address “func_reg” as a register has an address space “16 bytes” continuous with the leading address “0x2100”, and the used address “func_buf” as a buffer has a leading address “0x2000”. The continuous address space “32 bytes” and the bus specification “func_bus” in the block describe a bus width “8 bits” and an endian “liter”.

バスの動作を示す部分として、“Bus_sig”で囲んだ動作シーケンス部分を記述する。記述内容は図14と同様だが、ブロックはバスに対し主にスレーブとなるので、入出力の記述が図14と逆になる。   An operation sequence part enclosed by “Bus_sig” is described as a part indicating the operation of the bus. The description is the same as in FIG. 14, but the block is mainly a slave to the bus, so the input / output description is the reverse of FIG.

制御信号部分は、“Ctrl_sig”で囲み、図14と同様の記述方法で記述するが、入出力部分のみ、入力かあるいはブロック自身が出力するかで表記が異なる。   The control signal part is enclosed in “Ctrl_sig” and described in the same description method as in FIG. 14, but the notation differs depending on whether only the input / output part is input or the block itself outputs.

図16は、バス幅や動作シーケンスが異なるアーキテクチャ対応表のCPU部対応表の例を示す図である。記述方法は、図14と同様である。   FIG. 16 is a diagram showing an example of the CPU part correspondence table of the architecture correspondence table having different bus widths and operation sequences. The description method is the same as in FIG.

図17は、バス幅や動作シーケンスが異なるアーキテクチャ対応表のCPU部対応表(図16)に接続されたブロック部対応表の例である。記述方法は、図15と同様である。   FIG. 17 is an example of the block part correspondence table connected to the CPU part correspondence table (FIG. 16) of the architecture correspondence table having different bus widths and operation sequences. The description method is the same as in FIG.

次に動作について説明する。図7で示すスクリプトを、図14と図15の内容のアーキテクチャ対応表を使用した変換ツールにて、試験データに変換すると図9や図10になる。   Next, the operation will be described. When the script shown in FIG. 7 is converted into test data by using a conversion tool using the architecture correspondence table having the contents shown in FIGS. 14 and 15, FIG. 9 and FIG. 10 are obtained.

図7で示すスクリプトの動作は、“BLK1_en”を駆動した後、32byteのデータを2回、function1で示すアドレスに書き込み、4byte書き込む毎に“BLK1_buf”を出力するものである。   The operation of the script shown in FIG. 7 is to drive “BLK1_en”, write 32 bytes of data twice to the address indicated by function1, and output “BLK1_buf” every time 4 bytes are written.

このため、図14と図15の記述に従い変換した場合、データバスが8bitであり、書込み動作シーケンスが4クロック、“BLK1_buf”の動作シーケンスが3クロックであるため、変換した試験データは図9や図10になる。   Therefore, when converted according to the description of FIGS. 14 and 15, the data bus is 8 bits, the write operation sequence is 4 clocks, and the operation sequence of “BLK1_buf” is 3 clocks. It becomes FIG.

これに対し、図7で示すスクリプトを、図16と図17の内容のアーキテクチャ対応表を使用した変換ツールにて、試験データに変換すると図18や図19になる。   On the other hand, when the script shown in FIG. 7 is converted into test data using a conversion tool using the architecture correspondence tables shown in FIGS. 16 and 17, the results shown in FIGS. 18 and 19 are obtained.

これは、図16と図17の記述に従い変換した場合、データバスが16bitであり、書込み動作シーケンスが3クロック、“BLK1_buf”の動作シーケンスが3クロックであるため、異なった試験データが生成できる。   This is because, when converted according to the description of FIG. 16 and FIG. 17, the data bus is 16 bits, the write operation sequence is 3 clocks, and the operation sequence of “BLK1_buf” is 3 clocks, so that different test data can be generated.

これらの機能は、実質的に同一であるため、同一機能を検証するための試験データとしては有効な試験データとなる。   Since these functions are substantially the same, they are effective test data as test data for verifying the same function.

以上のように、アーキテクチャ対応表に構成情報であるメモリマップの機能や、バス幅、エンディアン、波形情報としての各信号のクロックに対する動作シーケンスを持たせることにより、従来使用していた試験データを、新規開発のLSIに流用する際に、CPUの変更やアドレス空間の配置変更にも対応できるようになる。   As described above, by providing the architecture mapping table with the function of the memory map, which is configuration information, and the operation sequence for the clock of each signal as the bus width, endian, and waveform information, When diverting to a newly developed LSI, it becomes possible to cope with a change in CPU and an arrangement change in address space.

図14から図17のアーキテクチャ対応表は、図で示す表記方法以外の記述でも、試験データ作成時の情報を保持できる内容であれば問題ない。また、ここでは、文字列を使用しているが、行に対応して数値のみの記述や、相対アドレスに対応したバイナリデータとしても問題ない。   The architecture correspondence tables in FIG. 14 to FIG. 17 have no problem as long as they can hold information at the time of creating test data, even if the description is not in the notation shown in the figure. Further, although a character string is used here, there is no problem even if it is a description of only a numerical value corresponding to a line or binary data corresponding to a relative address.

実施の形態7.
本実施の形態では、実施の形態3で示した異なるCPUに対応したスクリプトのコマンドを用いたLSI固有信号に対する記述例について説明する。
Embodiment 7 FIG.
In the present embodiment, a description example for an LSI specific signal using a script command corresponding to a different CPU shown in the third embodiment will be described.

図20は、LSI固有の信号を確認するためのコマンドの記述例を示す図である。図は、コマンドの一つ目の引数が16bitで各bitに信号が割り付けられ、ニつ目の引数も16bitで各bitに信号の確認時の論理条件が割り付けられている。
各bitの意味付けを、図20の「LSI固有信号の対応表」に示す。
FIG. 20 is a diagram illustrating a description example of a command for confirming an LSI-specific signal. In the figure, the first argument of the command is 16 bits and a signal is assigned to each bit, and the second argument is also 16 bits and the logical condition for signal confirmation is assigned to each bit.
The meaning of each bit is shown in the “LSI specific signal correspondence table” in FIG.

次に動作について説明する。図20の一つ目の引数は、16bitで示され各bitに信号が割り当てられ、“1”にすることで、その信号の確認を行うことを示す。そして、一つ目の引数と二つ目の引数を示すbit数は同じであり、同じ位置のbitに対し、確認時の論理の条件を示す。図の引数は、16bitになっているが、16bit固定の必要は無く、使用する信号数に合わせて拡張することが可能である。また、ここでは、一度に複数の信号と信号の論理条件を指定できるようにしているため、LSI固有信号部分と信号の条件部分が同一のbit数になっているが、論理条件を単一にしたり、組合せを決め数値や文字列で指定しても問題ない。   Next, the operation will be described. The first argument in FIG. 20 is indicated by 16 bits, and a signal is assigned to each bit. When the signal is set to “1”, the signal is confirmed. The number of bits indicating the first argument and the second argument is the same, and the logical condition at the time of confirmation is indicated for the bits at the same position. The argument in the figure is 16 bits, but it is not necessary to fix 16 bits, and it can be expanded according to the number of signals used. In addition, since a plurality of signals and signal logical conditions can be specified at one time here, the LSI inherent signal portion and the signal condition portion have the same number of bits. There is no problem even if the combination is determined and specified by a numerical value or a character string.

以上のように、スクリプトのコマンドで指定するLSI固有の信号を、bitに割り付けることにより、従来使用していた試験データを、新規開発のLSIに対し、CPUの変更や、アドレス空間の配置変更にも対応して流用可能となる。   As described above, by assigning LSI-specific signals specified by script commands to bits, test data that has been used in the past can be used to change the CPU and address space layout for newly developed LSIs. Can also be diverted correspondingly.

また、変換ツールに、対応しない固有信号が発生した場合にエラーを表示させる機能を追加することで、流用時のアーキテクチャ対応表の記載情報漏れを確認することができる。   In addition, by adding a function to display an error when an incompatible specific signal is generated in the conversion tool, it is possible to check the leakage of information written in the architecture correspondence table at the time of diversion.

従来使用していたLSI固有信号を使用しなくなった場合は、無視する様に、アーキテクチャ対応表に記載することで、確認をせず検証を継続する試験データの作成を可能とし、試験データの流用性が向上する。   If you no longer use the LSI-specific signal that was used in the past, you can create test data to continue verification without confirmation by disposing it in the architecture correspondence table so that it is ignored. Improves.

実施の形態8.
実施の形態2で示した異なるCPUに対応したスクリプトを使用するシステムLSIのシミュレーション・モデルにおいて、テストベンチの機能を包含したCPU用擬似的なバス・ドライバのみにした場合について説明する。
Embodiment 8 FIG.
In the simulation model of the system LSI that uses scripts corresponding to different CPUs shown in the second embodiment, only a pseudo bus driver for CPU including the function of the test bench will be described.

図21は、実施の形態8におけるシステム構成例を示す図である。図において、1は異なったCPUに対応したスクリプト、102は異なるCPUに対応したスクリプトを試験データに変換する変換ツール、102aは異なるCPUに対応するためのアーキテクチャ対応表、103は試験データ、103aはテスト対象を検証する試験データのテストパターン部分、103bはテスト対象を制御するテストベンチ部分の制御データ、204はシステムLSIのシミュレーション・モデルの構成、204cはCPU用擬似的なバス・ドライバとテスト対象がつながるシステムLSIの内部バス、204dはシミュレーション・モデルにおけるテスト対象、204d−1から204d−2は、テスト対象の各ブロック部分、204eはテストパターンや制御データで制御するテスト対象の制御信号群、204fはシミュレーション・モデルに使用するテストベンチ機能を含んだシミュレーション・モデルに使用するCPU用擬似的なバス・ドライバを示す。   FIG. 21 is a diagram illustrating a system configuration example according to the eighth embodiment. In the figure, 1 is a script corresponding to a different CPU, 102 is a conversion tool for converting a script corresponding to a different CPU into test data, 102a is an architecture correspondence table for corresponding to a different CPU, 103 is test data, and 103a is Test pattern portion of test data for verifying the test target, 103b is control data of the test bench portion for controlling the test target, 204 is a system LSI simulation model configuration, 204c is a CPU pseudo bus driver and test target 204d is a test target in the simulation model, 204d-1 to 204d-2 are block parts to be tested, 204e is a control signal group to be tested controlled by a test pattern or control data, 204f Shows a pseudo-bus driver for the CPU to be used in the simulation model that includes a test bench function to be used in the simulation model.

次に動作について説明する。実施の形態2と同様に作成された試験データは、テストベンチの機能を持ったCPU用擬似的なバス・ドライバ204fに与えられる。テストベンチの機能を持ったCPU用擬似的なバス・ドライバは、試験データを読み込み、システムLSIの内部バスに出力するデータか、あるいはシステムLSIの内部バスのデータやテスト対象の制御信号群に対するデータかを判断する。システムLSIの内部バスに出力するデータと判断した場合は、システムLSIの内部バスに出力する。テストベンチとして機能であるデータの確認や制御信号の出力、信号の変化待ち等のデータの場合は、コマンドに従いシステムバスの動作を行う。例えば、信号を駆動しない単純な待ちの場合は、クロックのみ動作させる。   Next, the operation will be described. The test data created in the same manner as in the second embodiment is given to the CPU pseudo bus driver 204f having a test bench function. The CPU pseudo bus driver with the test bench function reads the test data and outputs it to the internal bus of the system LSI, or the data on the internal bus of the system LSI and the control signal group to be tested Determine whether. If it is determined that the data is to be output to the internal bus of the system LSI, the data is output to the internal bus of the system LSI. In the case of data such as data confirmation, control signal output, and signal change waiting, which are functions as a test bench, the system bus is operated according to the command. For example, in the case of a simple wait without driving a signal, only the clock is operated.

以上のように、CPU用擬似的なバス・ドライバに、テストベンチ機能を内蔵することで、バスの読み込み動作時のデータを、テストベンチに渡す機能等を特別に作成する必要が無くなる。   As described above, by incorporating the test bench function in the pseudo bus driver for CPU, it is not necessary to specially create a function for passing data at the time of the bus reading operation to the test bench.

この例では、テストベンチの機能を、CPU用擬似的なバス・ドライバに内蔵させたが、逆に、テストベンチに、CPU用擬似的なバス・ドライバの機能を内蔵させても問題ない。   In this example, the function of the test bench is built in the pseudo bus driver for CPU. Conversely, there is no problem if the function of the pseudo bus driver for CPU is built in the test bench.

このように、テストベンチの機能を持ったCPU用擬似的なバス・ドライバにすることで、テストベンチとCPU用擬似的なバス・ドライバを別々に作成するよりも、容易に同様の機能を実現できる。また、様々なテスト対象の組合せをひとつのテストベンチの機能を持ったCPU用擬似的なバス・ドライバにて検証を行うことで、検証環境作成の手間が簡略化できる。   In this way, by using a pseudo bus driver for the CPU with the test bench function, the same function can be realized more easily than when the test bench and the pseudo bus driver for the CPU are created separately. it can. Also, by verifying various combinations of test targets with a CPU pseudo bus driver having the function of a single test bench, the labor for creating a verification environment can be simplified.

実施の形態9.
実施の形態8で示した異なるCPUに対応したスクリプトを使用するシステムLSIのシミュレーション・モデルにおいて、変換ツールを用いて作成した試験データの制御データの記述方法について説明する。
Embodiment 9 FIG.
In the system LSI simulation model using scripts corresponding to different CPUs shown in the eighth embodiment, a description will be given of a method for describing control data of test data created using a conversion tool.

図22は、実施の形態9におけるスクリプトの例を示す図である。実施の形態3で示した異なったCPUに対応したスクリプトを用いて記述している。スクリプトのコマンドのdriveの引数には、アーキテクチャ対応表102aで指定したシーケンスと信号レベルを示す制御機能名称“BLK1_en”と、その制御機能名称に対応した制御状態“enable”を記述し、スクリプトのコマンドのadd_sigの引数には、アーキテクチャ対応表102aで指定したシーケンスと発生回数を示す監視条件“4B_cyc_set”と、その監視条件の発生を監視する監視回数“1time”、監視条件と回数を満たした時の指定動作“BLK1_buf_en”を記述し、スクリプトのコマンドのcopyの引数には、ファイルを示す$マークの後にデータファイルのファイル名“BLK1_data_2”と、アーキテクチャ対応表102aで示す複写先の名称のアドレスであることを示す&マークの後に“function1”、複写のbyte数“8byte”を記述している。   FIG. 22 is a diagram illustrating an example of a script according to the ninth embodiment. The script is described using scripts corresponding to different CPUs shown in the third embodiment. In the drive argument of the script command, the control function name “BLK1_en” indicating the sequence and signal level specified in the architecture correspondence table 102a and the control state “enable” corresponding to the control function name are described. The add_sig argument includes the monitoring condition “4B_cyc_set” indicating the sequence and the number of occurrences specified in the architecture correspondence table 102a, the monitoring number “1time” for monitoring the occurrence of the monitoring condition, and the monitoring condition and the number of times The designated operation “BLK1_buf_en” is described, and the copy argument of the script command includes the $ mark indicating the file followed by the file name “BLK1_data_2” of the data file and the address of the copy destination name indicated in the architecture correspondence table 102a. "Function1" after the show and mark, describes the byte number of "8byte" of the copy.

図23は、スクリプトのコマンドのcopyで指定したデータファイルの内容を示す。データは、32bitのデータが2つあり、一つ目が“0x01020304”であり、二つ目が“0x05060708”であることが記述されている。   FIG. 23 shows the contents of the data file specified by the copy of the script command. The data describes that there are two 32-bit data, the first is “0x01020304”, and the second is “0x05060708”.

図24は、試験データの制御データ部分の例を示す図である。この例は、図22のスクリプトと図23のデータファイルを、アーキテクチャ対応表を持つ変換ツールを使用して作成したものである。“exec #0000,#0038”は変換したテストパターンの内で内部バスに出力するテストパターンのクロックの範囲を示し、“wait 0x0001 0x0001”はテストパターン出力後のテストベンチとしての動作を示す。   FIG. 24 is a diagram illustrating an example of a control data portion of test data. In this example, the script of FIG. 22 and the data file of FIG. 23 are created using a conversion tool having an architecture correspondence table. “Exec # 0000, # 0038” indicates the clock range of the test pattern output to the internal bus in the converted test pattern, and “wait 0x0001 0x0001” indicates the operation as the test bench after the test pattern is output.

次に動作について説明する。システムLSIのシミュレーション・モデルにて検証を行う場合、スクリプトを変換ツールにより変換し、試験データのテストパターンと制御データを作成する。そして、検証を行うため、テストベンチの機能を持ったCPU用擬似的なバス・ドライバに制御データを入力する。テストベンチ機能部は、制御データを解析し、テストパターンのクロック#0000から#0038までを実行し、その後、確認機能名称のbit位置で示される機能が有効になることを15クロック待つ動作をする。   Next, the operation will be described. When verification is performed using a simulation model of a system LSI, a script is converted by a conversion tool, and a test pattern of test data and control data are created. In order to perform verification, control data is input to a pseudo bus driver for CPU having a test bench function. The test bench function unit analyzes the control data, executes clocks # 0000 to # 0038 of the test pattern, and then waits 15 clocks for the function indicated by the bit position of the confirmation function name to become effective. .

以上のように、異なったCPUに対応するスクリプトを使用し、変換ツールで試験データをテストパターン部と制御データ部に分けることで、連続したテストパターンの途中で、信号の変化の確認を行うことができる。   As described above, by using scripts corresponding to different CPUs, the test data is divided into the test pattern part and the control data part with the conversion tool, and the change of the signal is confirmed in the middle of the continuous test pattern. Can do.

尚、試験データは、必ず二つである必要は無く、1つのみや3つ以上で構成してもよい。   Note that the test data does not necessarily have to be two, and may be composed of only one or three or more.

実施の形態10.
実施の形態8で示した異なるCPUに対応したスクリプトを使用するシステムLSIのシミュレーション・モデルにおいて、変換ツールを用いて作成した試験データについて、テストパターンと制御データを混在して記述する方法について説明する。
Embodiment 10 FIG.
A method for describing test data created using a conversion tool in a mixed manner with test patterns and control data in a simulation model of a system LSI that uses a script corresponding to a different CPU shown in the eighth embodiment will be described. .

図25は、図22の異なったCPUに対応したスクリプトと図23のデータから作成した試験データである。上部の点線で囲った部分がテストパターン部分で、下部の点線で囲った部分が制御データ部分を示す。   FIG. 25 shows test data created from the scripts corresponding to the different CPUs of FIG. 22 and the data of FIG. The portion surrounded by the upper dotted line is the test pattern portion, and the portion surrounded by the lower dotted line is the control data portion.

次に動作について説明する。システムLSIのシミュレーション・モデルにて検証を行う場合、スクリプトを変換ツールを用いて、試験データを作成する。そして、検証を行うため、テストベンチの機能を持ったCPU用擬似的なバス・ドライバに試験データを入力する。テストベンチ機能部は、試験データを解析し、テストパターン部分を示す“#”のクロック#0000から#0038までを実行し、その後、確認機能名称のbit位置で示される機能が有効になることを15クロック待つ動作をする。   Next, the operation will be described. When verification is performed using a system LSI simulation model, test data is created using a script conversion tool. In order to perform verification, test data is input to a pseudo bus driver for CPU having a test bench function. The test bench function unit analyzes the test data and executes clocks # 0000 to # 0038 of “#” indicating the test pattern portion, and then confirms that the function indicated by the bit position of the confirmation function name is valid. Wait for 15 clocks.

以上のように、ひとつのファイルの情報で、実施の形態9と同じ動作を行うことができる。このため、論理検証時の試験データの管理が容易になる。   As described above, the same operation as in the ninth embodiment can be performed with the information of one file. This facilitates management of test data during logic verification.

また、ひとつのファイルにすることにより、クロック表記を省くこともできるため、試験データのパターンの増大や試験データ事態の増大時に、試験データのファイル容量を従来より小さくできる。   In addition, since the clock notation can be omitted by using one file, the file size of the test data can be made smaller than before when the test data pattern increases or the test data situation increases.

スクリプト記憶部、変換ツール、試験データ記憶部を含む試験データ作成装置は、コンピュータとしてプログラムにより処理を実行することができる。また、プログラムを記憶媒体に記憶させ、記憶媒体からコンピュータに読み取られるようにすることができる。   A test data creation apparatus including a script storage unit, a conversion tool, and a test data storage unit can execute processing by a program as a computer. Further, the program can be stored in a storage medium so that the computer can read the program from the storage medium.

変換ツールにより、特定のCPUに対応した試験データを異なったCPUに対するスクリプトに変換することも考えられる。   It is also conceivable to convert test data corresponding to a specific CPU into a script for a different CPU using a conversion tool.

実施の形態1におけるシステム構成例を示す図である。1 is a diagram illustrating an example of a system configuration in a first embodiment. テストパターン3aの例を示す図である。It is a figure which shows the example of the test pattern 3a. 実施の形態2におけるシステム構成例を示す図である。6 is a diagram illustrating a system configuration example in a second embodiment. FIG. アーキテクチャ対応表102aの例を示す図である。It is a figure which shows the example of the architecture correspondence table 102a. 実施の形態2におけるテストパターン103aの例を示す図である。6 is a diagram illustrating an example of a test pattern 103a in Embodiment 2. FIG. スクリプトに用いるコマンドの一覧を示す図である。It is a figure which shows the list of the commands used for a script. 実施の形態4におけるスクリプトの例を示す図である。FIG. 20 is a diagram illustrating an example of a script in the fourth embodiment. スクリプトのコマンドのcopyで指定したデータファイルの内容を示す図である。It is a figure which shows the content of the data file designated by copy of the command of the script. 実施の形態4における試験データの例を示す図である。FIG. 10 is a diagram showing an example of test data in the fourth embodiment. 実施の形態4における試験データの別の記述例を示す図である。FIG. 20 is a diagram illustrating another description example of test data in the fourth embodiment. コマンドのcopyを用いてアドレス修飾の記述したスクリプトの例を示す図である。It is a figure which shows the example of the script which described address modification using copy of command. 実施の形態5における試験データの例を示す図である。FIG. 16 is a diagram showing an example of test data in the fifth embodiment. 実施の形態5における試験データの別の記述例を示す図である。FIG. 20 is a diagram illustrating another description example of test data in the fifth embodiment. アーキテクチャ対応表のCPU部対応表の例を示す図である。It is a figure which shows the example of the CPU part correspondence table of an architecture correspondence table. ブロック部対応表の例を示す図である。It is a figure which shows the example of a block part corresponding table. バス幅や動作シーケンスが異なるアーキテクチャ対応表のCPU部対応表の例を示す図である。It is a figure which shows the example of the CPU part corresponding | compatible table of the architecture corresponding | compatible table from which a bus width and an operation sequence differ. CPU部対応表(図16)に接続されたブロック部対応表の例を示す図である。It is a figure which shows the example of the block part correspondence table connected to CPU part correspondence table (FIG. 16). 実施の形態6における試験データの例を示す図である。FIG. 20 is a diagram showing an example of test data in the sixth embodiment. 実施の形態6における試験データの別の記述例を示す図である。FIG. 20 is a diagram illustrating another description example of test data in the sixth embodiment. LSI固有の信号を確認するためのコマンドの記述例を示す図である。It is a figure which shows the example of a description of the command for confirming the signal intrinsic | native to LSI. 実施の形態8におけるシステム構成例を示す図である。FIG. 20 is a diagram illustrating a system configuration example according to an eighth embodiment. 実施の形態9におけるスクリプトの例を示す図である。209 is a diagram illustrating an example of a script in Embodiment 9. [FIG. copyで指定したデータファイルの例を示す図である。It is a figure which shows the example of the data file designated by copy. 試験データの制御データ部分の例を示す図である。It is a figure which shows the example of the control data part of test data. 実施の形態10における試験データの例を示す図である。FIG. 38 is a diagram showing an example of test data in the tenth embodiment.

符号の説明Explanation of symbols

1 スクリプト、2 変換ツール、3 試験データ、3a テストパターン部分、3b 制御データ、4 シミュレーション・モデル、4a テストベンチ部分、4b CPU用擬似的なバス・ドライバ、4c 内部バス、4d テスト対象、4d−1 ブロック1、4d−2 ブロック2、4e 制御信号群、102 変換ツール、102a アーキテクチャ対応表、103 試験データ、103a テストパターン部分、103b 制御データ、104 シミュレーション・モデル、104a テストベンチ部分、104b CPU用擬似的なバス・ドライバ、104c 内部バス、104d テスト対象、104d−1 ブロック1、104d−2 ブロック2、104e 制御信号群、204 シミュレーション・モデル、204c 内部バス、204d テスト対象、204d−1 ブロック1、204d−2 ブロック2、204e 制御信号群、204f CPU用擬似的なバス・ドライバ。   1 Script 2 Conversion tool 3 Test data 3a Test pattern part 3b Control data 4 Simulation model 4a Test bench part 4b CPU pseudo bus driver 4c Internal bus 4d Test target 4d- 1 block 1, 4d-2 block 2, 4e control signal group, 102 conversion tool, 102a architecture correspondence table, 103 test data, 103a test pattern part, 103b control data, 104 simulation model, 104a test bench part, 104b for CPU Pseudo bus driver, 104c internal bus, 104d test target, 104d-1 block 1, 104d-2 block 2, 104e control signal group, 204 simulation model, 204c internal bus, 204 Tested, 204d-1 block 1,204d-2 block 2,204e control signal group, pseudo bus driver 204f CPU.

Claims (11)

CPU(セントラル・プロセッシング・ユニット)を内蔵するシステムLSI(大規模集積回路)の動作を検証する論理検証用の試験データを作成する試験データ作成装置であって、
異なったCPUに対応したスクリプトを入力し、入力したスクリプトを、CPUのバスに接続するブロックのロジックを検証可能な、当該バスのクロックに同期する試験データに変換する変換ツールを有することを特徴とする試験データ作成装置。
A test data creation device for creating test data for logic verification to verify the operation of a system LSI (large scale integrated circuit) incorporating a CPU (central processing unit),
It has a conversion tool for inputting a script corresponding to a different CPU and converting the input script into test data synchronized with a clock of the bus that can verify the logic of a block connected to the CPU bus. To create test data.
変換ツールは、CPUの仕様を記憶するアーキテクチャ対応表を有し、当該アーキテクチャ対応表に従って、前記スクリプトを当該CPUに対応する試験データに変換することを特徴とする請求項1記載の試験データ作成装置。   2. The test data creation apparatus according to claim 1, wherein the conversion tool has an architecture correspondence table for storing CPU specifications, and converts the script into test data corresponding to the CPU according to the architecture correspondence table. . 前記スクリプトは、LSI固有の信号に関するコマンドを含み、変換ツールは、当該コマンドをLSI固有の信号を検証する試験データに変換することを特徴とする請求項1記載の試験データ作成装置。   The test data creation apparatus according to claim 1, wherein the script includes a command related to an LSI-specific signal, and the conversion tool converts the command into test data for verifying the LSI-specific signal. 前記コマンドは、前記LSI固有の信号に対し、バスのクロックに同期した遅延の設定可能であり、変換ツールは、遅延が設定されたコマンドを、当該設定された遅延によるLSI固有の信号を検証する試験データに変換することを特徴とする請求項3記載の試験データ作成装置。   The command can set a delay synchronized with the bus clock with respect to the LSI-specific signal, and the conversion tool verifies the command with the delay set and the LSI-specific signal with the set delay. 4. The test data creation apparatus according to claim 3, wherein the test data creation apparatus converts the test data into test data. 前記コマンドは、前記LSI固有の信号に対する駆動条件が設定可能であり、変換ツールは、駆動条件が設定されたコマンドを、当該設定された駆動条件によるLSI固有の信号を検証する試験データに変換することを特徴とする請求項3記載の試験データ作成装置。   The command can set a drive condition for the LSI-specific signal, and the conversion tool converts the command for which the drive condition is set into test data for verifying an LSI-specific signal according to the set drive condition. The test data creation apparatus according to claim 3. 前記コマンドは、指定条件ごとにLSI固有の信号に対する駆動方法を設定可能であり、変換ツールは、指定条件ごとに前記駆動方法が設定されたコマンドを、指定条件ごとに当該設定された駆動方法によるLSI固有の信号を検証する試験データに変換することを特徴とする請求項3記載の試験データ作成装置。   The command can set a driving method for an LSI-specific signal for each specified condition, and the conversion tool uses a command for which the driving method is set for each specified condition according to the set driving method for each specified condition. 4. The test data creating apparatus according to claim 3, wherein the test data is converted into test data for verifying a signal unique to the LSI. 前記スクリプトは、データを格納するアドレスをアドレス修飾として設定するコマンドを含み、変換ツールは、アドレスが設定されたコマンドを、当該アドレスに格納しているデータを更にアドレスとして使用してデータを読み込む試験データに変換することを特徴とする請求項1記載の試験データ作成装置。   The script includes a command for setting an address for storing data as an address modifier, and the conversion tool is a test for reading data by using the data stored at the address as a command for which the address is set. The test data creating apparatus according to claim 1, wherein the test data creating apparatus converts the data into data. 前記スクリプトは、LSI固有の信号名による記述が可能でり、変換ツールは、当該LSI固有の信号名による記述を、予め定義されているビット値に変換することを特徴とする請求項3記載の試験データ作成装置。   4. The script according to claim 3, wherein the script can be described by an LSI-specific signal name, and the conversion tool converts the description by the LSI-specific signal name into a predefined bit value. Test data creation device. 変換ツールは、更に、特定のCPUに対応した試験データを、前記異なったCPUに対応したスクリプトに変換することを特徴とする請求項1記載の試験データ作成装置。   The test data creation apparatus according to claim 1, wherein the conversion tool further converts test data corresponding to a specific CPU into a script corresponding to the different CPU. 特定のCPUに対応した擬似的なバス・ドライバを使用することを特徴とするシミュレーション・モデル装置。   A simulation model device using a pseudo bus driver corresponding to a specific CPU. 前記バス・ドライバは、レジスタを内蔵し、当該レジスタをシミュレーションに用いることを特徴とする請求項10記載のシミュレーション・モデル装置。   11. The simulation model apparatus according to claim 10, wherein the bus driver includes a register and uses the register for simulation.
JP2003415286A 2003-12-12 2003-12-12 Test data creation device Expired - Fee Related JP4340139B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003415286A JP4340139B2 (en) 2003-12-12 2003-12-12 Test data creation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003415286A JP4340139B2 (en) 2003-12-12 2003-12-12 Test data creation device

Publications (2)

Publication Number Publication Date
JP2005174112A true JP2005174112A (en) 2005-06-30
JP4340139B2 JP4340139B2 (en) 2009-10-07

Family

ID=34734833

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003415286A Expired - Fee Related JP4340139B2 (en) 2003-12-12 2003-12-12 Test data creation device

Country Status (1)

Country Link
JP (1) JP4340139B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156728A (en) * 2005-12-02 2007-06-21 Hitachi Information & Communication Engineering Ltd Logic verification method and logic verification system
US8332715B2 (en) 2008-01-10 2012-12-11 Fujitsu Limited Test pattern generating method, device, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156728A (en) * 2005-12-02 2007-06-21 Hitachi Information & Communication Engineering Ltd Logic verification method and logic verification system
US8332715B2 (en) 2008-01-10 2012-12-11 Fujitsu Limited Test pattern generating method, device, and program

Also Published As

Publication number Publication date
JP4340139B2 (en) 2009-10-07

Similar Documents

Publication Publication Date Title
US5859993A (en) Dual ROM microprogrammable microprocessor and universal serial bus microcontroller development system
US5812858A (en) Method and apparatus for providing register and interrupt compatibility between non-identical integrated circuits
JP2003529848A (en) Automatic design of digital signal processing integrated circuits
US20050039174A1 (en) Apparatus and method for co-simulating processors and DUT modules
JP2002259157A (en) In-circuit emulation device, its chip designing method and in-circuit emulation system
WO1997046959A1 (en) Hardware and software development in computer systems having multiple discrete components
WO2008013968A2 (en) Virtual processor generation model for co-simulation
JPH0359749A (en) Bus controller
JP5146451B2 (en) Method and apparatus for synchronizing processors of a hardware emulation system
JP2006313561A (en) Data processor
JP2002163127A (en) Trace control circuit
US20050144436A1 (en) Multitasking system level platform for HW/SW co-verification
JP4340139B2 (en) Test data creation device
Ranga ParrotPiton and ZynqParrot: FPGA Enablements for the BlackParrot RISC-V Processor
JP2001184212A (en) Trace control circuit
KR20040076708A (en) The extensible verification board of system-on-chip with ARM core using field programmable gate arrays
JP4631493B2 (en) Simulation device
US20030225567A1 (en) System and method for emulating an embedded non-volatile memory
US7539953B1 (en) Method and apparatus for interfacing instruction processors and logic in an electronic circuit modeling system
Dice Quick boot: a guide for embedded firmware developers
JP3839835B2 (en) Data processing apparatus and microcomputer
JPH05210625A (en) Method and device for unwinding waiting state at time of address assignment arithmetic operation
JP2004021907A (en) Simulation system for performance evaluation
JP2003280998A (en) Device and method for testing internal bus
JP2007156728A (en) Logic verification method and logic verification system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060928

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081119

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090317

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090511

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090703

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120710

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130710

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees