JP2005164265A - Method for testing integrated circuit - Google Patents

Method for testing integrated circuit Download PDF

Info

Publication number
JP2005164265A
JP2005164265A JP2003399878A JP2003399878A JP2005164265A JP 2005164265 A JP2005164265 A JP 2005164265A JP 2003399878 A JP2003399878 A JP 2003399878A JP 2003399878 A JP2003399878 A JP 2003399878A JP 2005164265 A JP2005164265 A JP 2005164265A
Authority
JP
Japan
Prior art keywords
test
asic
ram
program
mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2003399878A
Other languages
Japanese (ja)
Inventor
Hideki Nakanishi
英城 中西
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003399878A priority Critical patent/JP2005164265A/en
Publication of JP2005164265A publication Critical patent/JP2005164265A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To perform the test of an ASIC, without requiring a complicated circuit or an unnecessary external pin, and to perform the test of the ASIC without troublesome procedure or useless use of a program area. <P>SOLUTION: In the method for testing the integrated circuit, the operation of the integrated circuit having a microprocessor and a storage means is tested. The method includes a storage step for storing a program in the storage means and a control step for performing the control according to the program, wherein, in the control step, the test of the operation of the integrated circuit is performed. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、例えば、記録ヘッドを用いて記録を行うプリンタのような電子機器を制御する集積回路(ASIC)の動作を検証する方法に関するものである。   The present invention relates to a method for verifying the operation of an integrated circuit (ASIC) that controls an electronic device such as a printer that performs recording using a recording head.

ASIC(集積回路)の製造技術が進歩するにつれ、単一のASICに、より多くの論理機能が収容されるようになっている。現代のASICには、1つのシリコン・チップ上に多数のゲートが配置され、このようなゲートを相互接続することによって、例えば、プリンタ画像処理のような複雑な機能を実現可能となっている。そうした大規模ASICの製造には、その内部にミスがないことが要求されるため、チップの製造後に各種電気的テストを行う必要性が生じている。   As ASIC (integrated circuit) manufacturing technology advances, more and more logic functions are accommodated in a single ASIC. In modern ASICs, a large number of gates are arranged on one silicon chip, and by interconnecting such gates, complicated functions such as printer image processing can be realized. The manufacture of such a large-scale ASIC requires that there be no mistakes in the inside thereof, and thus it is necessary to perform various electrical tests after the manufacture of the chip.

しかしながら、機能がより複雑になるにつれ、回路内の各装置の検証や電気的テストにかかるコストならびに困難さも増している。電気的テストの観点から言えば、ASICの各ゲートが正しく機能していることを全体的に検証するためには、原則的に、(ディジタル的に、各ゲートがスタックオープンにもスタッククローズにもなっていないと判断し、)ゲートの各々を個別的に実行できるだけでなく、回路内の他のゲートと関連性を保ちながら、想定可能なあらゆる演算の組み合わせによって実行できなければならない。   However, as functions become more complex, the cost and difficulty of verifying and electrical testing each device in the circuit has increased. From an electrical test standpoint, in order to verify that each ASIC gate is functioning properly, in principle (digitally, each gate is either open or closed). Not only can each of the gates be executed individually), it must be able to be executed by any conceivable combination of operations while remaining relevant to the other gates in the circuit.

従来、このようなチップ・テストは、テスト・ベクタを用いて所望のテストを実行する自動検査装置(ATE)によって行われていた。ここで、テスト・ベクタとは、一定時間中のすべてのパッケージ・ピンに対する所望のテスト入力(または信号)、関連する1クロックパルス(または複数パルス)、予想されるテスト出力(または信号)のことを言い、また、ある特定のマクロの検査を試みる場合に用いられることも多い。複雑な機能を有するASICでは、膨大なテスト・ベクタを有することになり、従って、テスト時間が長くなることも多かった。   Conventionally, such a chip test is performed by an automatic inspection device (ATE) that performs a desired test using a test vector. Here, the test vector is the desired test input (or signal) for all package pins during a given time, the associated one clock pulse (or multiple pulses), and the expected test output (or signal). It is also often used when trying to check a particular macro. An ASIC having a complicated function has a large number of test vectors, and therefore the test time is often long.

また、このような膨大なテスト・ベクタを設計者が自ら作成することは、現状、かなり高速になった事象駆動型シミュレータが使用できるようになり、かなりの改善がなされたものの、未だ、工数上、大変な負担を強いられるものである。   In addition, the creation of such a large number of test vectors by the designer himself has made it possible to use an event-driven simulator that has become considerably faster at the present time. , You are forced to bear a heavy burden.

このような問題より、近年では、テスト容易化設計(DFT)が推進されている。DFTの目的は、外部入力・出力からASICの内部を観察する能力を高めることにある。すなわち、本来、ASICに期待される機能(例:プリンタ画像処理、など)の他に、その機能をASICの特定のピンを通して透過させることが可能なモヂュールをも予め内蔵させ、簡単なテスト・ベクタ入出力にてチップ・テストを行うことを可能とする。   Due to such problems, design for testability (DFT) has been promoted in recent years. The purpose of DFT is to increase the ability to observe the inside of the ASIC from external inputs and outputs. In other words, in addition to the functions originally expected from the ASIC (eg, printer image processing, etc.), a module capable of transmitting the functions through specific pins of the ASIC is built in in advance, and a simple test vector Enables chip test by input / output.

DFTで良く使用される例の1つに、スキャン・パスが挙げられる。スキャン・パスは、一連の同期クロック式マスタ・スレーブラッチ、または、レジスタによって構成され、各ラッチは、論理回路の特定ノードにそれぞれ接続されている。このようなラッチは、論理回路ノードを既定の状態に予め設定し、直列データストリーム(スキャンイン)によってロードすることができる。したがって、通常の方法で、論理回路のエクササイズを行うことができるうえ、(スキャンラッチを備えた各ノードの)演算結果は、各ラッチに記憶される。ラッチの内容を直列にアンロード(スキャンアウト)することによって、関連ノードの特定のテスト演算結果を読み出して、誤ったノード演算の分析を行うことができる。   One example often used in DFT is the scan path. The scan path is composed of a series of synchronous clocked master / slave latches or registers, and each latch is connected to a specific node of the logic circuit. Such a latch can be loaded with a serial data stream (scan-in) with the logic circuit nodes preset to a predetermined state. Therefore, the logic circuit can be exercised by a normal method, and the operation result (at each node having the scan latch) is stored in each latch. By unloading (scanning out) the contents of the latch in series, it is possible to read out the result of a specific test operation at the relevant node and analyze the incorrect node operation.

また、この時必要とされるテスト・ベクタは、通常、検査パターン自動生成ツール(ATPG)を使用することで、最も、合理的、かつ、縮小されたベクタが作成することが可能となっている。が、現状、このスキャン・パスによるASICテスト手法で、全てのASIC検査を行うことが可能かというと、そうではない。即ち、前述したように、スキャン・パスによるASICテスト手法は、一連の同期クロック式マスタ・スレーブラッチ、または、レジスタによって、テストされるべきモヂュール(DUT)が観察可能となっていることが大前提である。   In addition, the test vector required at this time is normally the most rational and reduced vector can be created by using an inspection pattern automatic generation tool (ATPG). . However, at present, it is not true that all ASIC inspections can be performed by the ASIC test method using this scan path. That is, as described above, the ASIC test method based on the scan path is based on the premise that the module (DUT) to be tested can be observed by a series of synchronous clock type master / slave latches or registers. It is.

よって、(1)ASIC内に一連の同期クロックと非同期で動作するラッチが存在する場合、(2)(動作条件が同期式・非同期式に関わらず)非同期リセット有するラッチ場合、そして、(3)フロアプラン実施後、ECOにより新たな同期式ラッチを追加した場合、など、スキャン・パスから外れる論理コーンが存在する確率は、十分に無視できるほど低くは無いのである。   Therefore, (1) if there is a latch that operates asynchronously with a series of synchronous clocks in the ASIC, (2) if the latch has an asynchronous reset (regardless of whether the operating condition is synchronous or asynchronous), and (3) The probability that there is a logic cone out of the scan path, such as when a new synchronous latch is added by ECO after the floorplan is implemented, is not low enough to be ignored.

例えば、ASICの検査にて、スキャン・テストによりチップの約90%部分のテストを行い、残りの10%部分(=スキャン・パスより外れたモヂュール)を設計者が作成したテスト・ベクタにて検査していく場合が多い。
特開平6−148281号公報。
For example, in the ASIC inspection, about 90% of the chip is tested by scan test, and the remaining 10% (= module out of scan path) is inspected by the test vector created by the designer. There are many cases to do.
JP-A-6-148281.

しかしながら、上述するASIC検査(テスト)方法には以下のような欠点が存在した。即ち、最近の技術トレンドとして、1つのチップ内に、MPU、ユーザ・ロジック(UDL)、ROM・RAM等の各種メモリなどが含まれたシステム・オン・チップ(SOC)と呼ばれるタイプのASICで、チップ内システム制御用のデータ・バスやアドレス・バスが内部で閉じている(パッケージの外部に開放されていない)場合、チップ内部のシステムバスの必要な部分を外部に出し、そこからベクタを与えて行きながらチップ・テストを行うのが通常である。   However, the ASIC inspection (test) method described above has the following drawbacks. That is, as a recent technological trend, an ASIC of a type called system-on-chip (SOC) in which various memories such as MPU, user logic (UDL), ROM and RAM are included in one chip, If the data bus or address bus for system control inside the chip is closed internally (not open outside the package), the necessary part of the system bus inside the chip is brought out and a vector is given from there. It is normal to perform a chip test while going.

例えば、ASICのパッケージに、予め、そのバス信号を外部ピンにアサインして、いつでも操作可能な状態にしておく手法がある。この手段によると、ASIC通常の動作時に関係が無く、チップ・テストの時にのみ使用されるピンが、少なくともシステムバス制御信号分、ASICの外部ピンに存在することになる。   For example, there is a method of assigning the bus signal to an external pin in advance in an ASIC package so that it can be operated at any time. According to this means, there is no relation at the time of normal operation of the ASIC, and pins used only at the time of the chip test are present in the external pins of the ASIC at least for the system bus control signal.

ASICの部品単価はパッケージサイズに大きく依存するので、外部ピンを増やし、大きな外装のパッケージ仕様で設計をするということは、簡単にコスト増に結びつくため、行うことはまれである。   Since the unit price of an ASIC greatly depends on the package size, it is rare to increase the number of external pins and design with a large exterior package specification because it easily increases the cost.

従って、現在採用されている手法としては、チップ内部のシステムバスを、ある外部ピン(即ち、それは、通常動作モード時には、モータ制御などの他の機能がアサインさせている外部ピン)にアサインし直せるようなテストモードを作成し、チップ・テスト時にはそのテストモードに入り、アサインし直された外部ピンよりテスト・ベクタを与えて行う方法がある。   Therefore, the currently adopted method is to reassign the system bus inside the chip to some external pin (ie, it is an external pin assigned by other functions such as motor control in the normal operation mode). There is a method of creating a test mode like this, entering the test mode at the time of chip test, and giving a test vector from the reassigned external pin.

しかし、チップ内部のシステムバスを全て外部にアサインし直すとなると、その本数はアドレス・バス、データ・バス、制御用バスと、総計で60本以上となる。従って、あるテストモードでシステムバスを全て外部にアサインし直すと言うことは、同数のピンの機能が変わりに使用できなくなる。そのために、その部分の機能テストは行えなくなる。例えば、テスト時にのみ、モータ制御ピンにシステムバスをアサインした場合、そのモータのテストは行えない。   However, if all the system buses inside the chip are reassigned to the outside, the total number of address buses, data buses, and control buses will be 60 or more. Therefore, reassigning all the system buses in a certain test mode makes the functions of the same number of pins unusable. As a result, the function test of that part cannot be performed. For example, if the system bus is assigned to the motor control pin only during the test, the motor cannot be tested.

このような場合、テストモードを何種類にも分類し、「テストモード1では、機能Aのピンにシステムバスをアサイン、機能Bは使用可能としてその機能テストを行う」、「テストモード2では、機能Bのピンにシステムバスをアサイン、機能Aは使用可能としてその機能テストを行う」と、モード毎に行うべき機能テストを決めて行う方法もある。しかし、必ず全ての機能ピンがテストできるように細かくテストをプラニングする場合など、各ピンが使えるモードが必ず1モードは存在するように設定される必要があるので、システムバスのアサインの方法が増加してしまう(例えば20種類近く)。このような場合、各テストモードに応じてシステムバスの外部ピンのアサインをし直す機構などは、単なるセレクタであるので、単純な機構に見えるが、60本以上あるシステムバスの信号線を、モードで選択できるようにすると、チップ上での回路規模が大きなものになる。この外部ピンの周辺部では、ASICを作成する上で、特に、内部の信号のタイミング調整が困難な所であり、この部分に大規模回路が存在すると、タイミング調整をさらに難しくなる。   In such a case, the test mode is classified into several types, “in test mode 1, the system bus is assigned to the pin of function A, and function B is usable and the function test is performed”, “in test mode 2, There is also a method of deciding a function test to be performed for each mode, such as assigning a system bus to the pin of function B, and performing a function test with function A being usable. However, the system bus assignment method is increased because there is a need to set the mode in which each pin can be used, so that there is always one mode, such as when planning detailed tests so that all function pins can be tested. (For example, nearly 20 types). In such a case, the mechanism for reassigning the external pin of the system bus according to each test mode is a simple selector, so it looks like a simple mechanism. However, the signal lines of 60 or more system buses are connected to the mode. If it is possible to select with this, the circuit scale on the chip becomes large. In the peripheral portion of the external pin, it is particularly difficult to adjust the timing of the internal signal in creating the ASIC. If a large-scale circuit exists in this portion, the timing adjustment becomes more difficult.

最近では、例えば、ARM社のTIC(test interface controller)のように独自のテスト機構を持つプラットホームなどがあり、より少ない外部ピンで(=即ち、外部ピンへのテストバスアサインが楽になり、テスト機構回路も小さくなる)、内部の大きなシステムバスをマニピュレートできるような仕組みも存在する。   Recently, for example, there is a platform having an original test mechanism such as ARM's TIC (test interface controller), etc., and the number of external pins (ie, test bus assignment to the external pins becomes easier, and the test mechanism) There is also a mechanism that can manipulate a large internal system bus.

しかし、このテスト機構自体が、半導体ベンダのチップテストポリシに整合しておらずテストに使用できないと言う場合もある(テスト時のシステムバスのリードサイクルが他社(半導体ベンダ)の装置にマッチングしない理由のため)。もちろん、同様の仕組みをベンダの装置に整合するよう、自ら設計し直すという方法もあるが、バス集中が起こらないようなテスト機構を設計し、それがASICシステム内部のバスマスタとして機能するような調停回路まで組み込むとなると、大きな作業負荷になるのである。   However, there are cases where this test mechanism itself does not match the chip test policy of the semiconductor vendor and cannot be used for testing (the reason why the system bus read cycle at the time of testing does not match the equipment of other companies (semiconductor vendors). for). Of course, there is a method of redesigning itself to match the same mechanism with the vendor's equipment, but a test mechanism that does not cause bus concentration is designed and arbitration is performed so that it functions as a bus master inside the ASIC system. When even a circuit is incorporated, it becomes a heavy work load.

さらに、もう1つ挙げられるテスト・ベクタによるテスト機構として、ROM化オブジェクトとMPUによるテストある。即ち、MPUがROMから機械コードをフェッチして、デコードし、動作を行う。この動作の中で、UDL必要な部分をスティムレートしていくというものである。この手法の拙いところは、ROMフェッチバスがASICの外部ピンに出ていなければ、テストの実施が困難になることである。   Another test mechanism using a test vector is a test using a ROMized object and an MPU. That is, the MPU fetches the machine code from the ROM, decodes it, and performs an operation. In this operation, the UDL necessary part is stimulated. The disadvantage of this approach is that it is difficult to perform the test unless the ROM fetch bus is on an external pin of the ASIC.

仮に、ROMフェッチバスがASICの外部ピンに出ていれば、ASICより出力されるリクエスト信号に応じて、PCに対応した機械コードをASICの外部ピンに与えて行くことでテストが行える。が、外部ピンが出ていない場合、ROM化オブジェクトにテスト・ベクタを、予め実装しておく必要がある。これは、ROM内のプログラムエリアが、チップ・テストのために使用され、少なくなる。そのコードを入れ替えて使用するには、向かない。   If the ROM fetch bus is output to an external pin of the ASIC, a test can be performed by applying a machine code corresponding to the PC to the external pin of the ASIC in response to a request signal output from the ASIC. However, if no external pin is available, it is necessary to mount a test vector in advance in the ROMized object. This reduces the program area in ROM, which is used for chip testing. It is not suitable to use the code by replacing it.

上述したように、本件は、複雑な回路や無用な外部ピンを必要とせずにASICのテストを行う。また、煩雑な手続きやプログラムエリアの無駄な使用をせずにASICのテストを行うことを目的とする。   As described above, the present case tests the ASIC without the need for complex circuitry or useless external pins. It is another object of the present invention to perform an ASIC test without complicated procedures and unnecessary use of program areas.

上述の課題を解決し、目的を達成するために、本発明はマイクロプロセッサと記憶手段を有する集積回路の動作を試験する集積回路の試験方法であって、前記記憶手段にプログラムを格納する格納工程と前記プログラムに従って制御を行う制御工程と有し、前記制御工程は、前記集積回路の動作テストを行うの具備する。   In order to solve the above-mentioned problems and achieve the object, the present invention is an integrated circuit test method for testing the operation of an integrated circuit having a microprocessor and storage means, and a storing step of storing a program in the storage means And a control step of performing control according to the program. The control step comprises performing an operation test of the integrated circuit.

以上説明したように、本発明によれば、ASICに元々備えている機能を有効に使うことで、ASICテストのための複雑な回路や、無用な外部ピンの増加を抑制し、煩雑な手続きやプログラムエリアの増加を抑制することができ、簡単な構成でチップ・テストを可能とする。   As described above, according to the present invention, by effectively using the functions originally provided in the ASIC, a complicated circuit for an ASIC test and an increase in unnecessary external pins are suppressed, and complicated procedures and An increase in the program area can be suppressed, and chip testing can be performed with a simple configuration.

以下に、本発明に係る実施の形態について添付図面を参照して詳細に説明する。いかに述べる実施形態では、プリンタを制御する集積回路(ASIC)を例にとって説明する。このASICには、MPU、UDL、及び、各種メモリ(RAM、MUP用のROM、等)が含まれているものとして説明を行う。   Embodiments according to the present invention will be described below in detail with reference to the accompanying drawings. In the embodiment described below, an integrated circuit (ASIC) for controlling a printer will be described as an example. The ASIC will be described as including an MPU, UDL, and various memories (RAM, MUP ROM, etc.).

[第1実施形態]
図1は、本実施の代表的な構成を示したものである。テストされるべきASIC1−1があり、これは、自動検査装置(ATE)1−2に、ASIC1−1の外部ピン1−3で接続され、テストが行われる。この外部ピンには、ASIC1−1の動作に必要なCLKピンやRESETピンなどが、含まれている。
[First Embodiment]
FIG. 1 shows a typical configuration of the present embodiment. There is an ASIC 1-1 to be tested, which is connected to an automatic inspection device (ATE) 1-2 via external pins 1-3 of the ASIC 1-1 for testing. The external pins include a CLK pin and a RESET pin necessary for the operation of the ASIC 1-1.

次に、ASIC1−1の内部であるが、これも上記で想定した通り、プリンタ全体のシステムを管理するMPU1−11、ユーザにより設計された回路ブロックUDL1−12、RAM1−13、そして、MPU1−11用のROM1−14を含んでいるものとする。ここで、RAM1−13は、D−RAM、S−RAMのどちらでも構わなく、また、場合によっては、複数のD−RAM、S−RAMモヂュールが幾つか組み合わさったものであっても構わない。   Next, inside the ASIC 1-1, as also assumed above, the MPU 1-11 that manages the entire system of the printer, the circuit block UDL1-12 designed by the user, the RAM 1-13, and the MPU1- 11 ROM 1-14 is included. Here, the RAM 1-13 may be either a D-RAM or an S-RAM. In some cases, the RAM 1-13 may be a combination of several D-RAM and S-RAM modules. .

MPU1−11と各種モヂュールとの接続は、基本的に、アドレス・バス1−15とデータ・バス1−16でモヂュール間のデータ通信が行われるものとする。特に、アドレス・バス1−15は、一旦、アドレスデコーダ1−17に入力され、各モヂュールに対するチップセレクト信号群1−18を生成し、それを各モヂュールにアドレス・バスとバンドルして配信することでデータ通信制御が行われているものとする。   As for the connection between the MPU 1-11 and various modules, data communication between the modules is basically performed by the address bus 1-15 and the data bus 1-16. In particular, the address bus 1-15 is once inputted to the address decoder 1-17, generates a chip select signal group 1-18 for each module, and distributes it to each module in a bundle with the address bus. It is assumed that data communication control is being performed.

例えば、MPUがUDL1−12にアクセスする場合、チップセレクト信号群1−18の中のCS1−180がアクティブになり、MPUがRAM1−13にアクセスする場合、チップセレクト信号群1−18の中のCS1−181がアクティブになり、MPUがROM1−14にアクセスする場合、チップセレクト信号群1−18の中のCS1−182がアクティブになる。ここでは、便宜上、3つのCSを用いて説明するが、通常、アクセスに不可欠な本数分のCSがチップセレクト信号群1−18には含まれている。   For example, when the MPU accesses the UDL 1-12, the CS 1-180 in the chip select signal group 1-18 becomes active, and when the MPU accesses the RAM 1-13, the CS select 180 in the chip select signal group 1-18. When CS1-181 becomes active and the MPU accesses the ROM 1-14, CS1-182 in the chip select signal group 1-18 becomes active. Here, for the sake of convenience, description will be made using three CSs. Usually, the number of CSs essential for access is included in the chip select signal group 1-18.

次に、テスト回路機構について説明する。まず、ASIC1−1にRAM1−13やROM1−14が内蔵される場合は、必ず、RAM1−13とROM1−14内の各セルが正常に製造されたかを確認するためのテスト機構(テストブロック)が実装される。   Next, the test circuit mechanism will be described. First, when the RAM 1-13 or the ROM 1-14 is built in the ASIC 1-1, a test mechanism (test block) for confirming whether each cell in the RAM 1-13 and the ROM 1-14 has been normally manufactured. Is implemented.

ここでは、メモリテスト手段(メモリテスト回路)1−19と呼ぶことにする。また、テスト時は、外部ピンのアサインが通常動作時と異なるので、外部ピンの状態を決定するテスト用バスセレクタ1−20が設けられる。さらに、ASIC1−1の外部ピン1−3の中には、規定のテストモードに入ったことをASICシステムに知らせるためのテスト制御ピン1−31も設けられる。このテスト制御ピン1−31は、テストモードの切り分けを行う数に応じて設けられる。   Here, it will be referred to as memory test means (memory test circuit) 1-19. At the time of testing, the assignment of external pins is different from that during normal operation, so a test bus selector 1-20 for determining the state of external pins is provided. Furthermore, a test control pin 1-31 for notifying the ASIC system that the specified test mode has been entered is also provided in the external pin 1-3 of the ASIC 1-1. The test control pins 1-31 are provided according to the number of test mode separations.

この実施形態では、必要なモードの数、即ち、3つのモードが切り分け可能であれば十分なので、例えば、図−3のように、テスト制御ピン1−31を2本と決めて、(pin0,pin1)=(0,0):通常動作モード、(pin0,pin1)=(1,0):RAMテストモード、(pin0,pin1)=(0,1):シナリオテストモードと、ピン(pin0,pin1)の状態に応じて、モードの定義をすることにする。   In this embodiment, it is sufficient if the number of necessary modes, that is, three modes can be separated. For example, as shown in FIG. 3, the number of test control pins 1-31 is determined as two and (pin0, pin1) = (0, 0): normal operation mode, (pin0, pin1) = (1, 0): RAM test mode, (pin0, pin1) = (0, 1): scenario test mode, pin (pin0, The mode is defined according to the state of pin1).

<メモリテスト手段についての説明>
次に、メモリテスト手段1−19の動作について、若干の説明をする。例えば、メモリBIST(built−in self−test)等が、メモリテスト手段の典型で、一般的な構成としては、図2のような構成となる。
<Explanation about memory test means>
Next, the operation of the memory test means 1-19 will be described briefly. For example, a memory BIST (built-in self-test) or the like is a typical memory test means, and a general configuration is as shown in FIG.

以下、公知の技術内容となるが、動作の概略を説明する。まず、テスト制御ピン1−31の入力により、RAM1−13の分離テスト可能なモードにASIC1−1のシステムを入らせる(本実施形態では、(pin0,pin1)=(1,0):RAMテストモードと言うことになる)。   Hereinafter, although it is a known technical content, an outline of the operation will be described. First, by inputting the test control pin 1-31, the system of the ASIC 1-1 is put into a mode in which the RAM 1-13 can be separated (in this embodiment, (pin0, pin1) = (1, 0): RAM test) Mode).

ここで、メモリテストに必要とされる信号線は、テスト用バスセレクタ1−20を通って、ASIC1−1の外部ピン1−3からアクセス可能な状態になる。以上の動作によって、ASIC1−1のシステムはRAM1−13のテストが可能な状態となる。   Here, the signal line required for the memory test becomes accessible from the external pin 1-3 of the ASIC 1-1 through the test bus selector 1-20. With the above operation, the system of the ASIC 1-1 is ready to test the RAM 1-13.

次に、ASIC1−1の外部ピン1−3にアサインされたメモリテスト外ピンからテスト設定2−1を行う。ここで言うテスト設定とは、例えば、検査アドレス:0x−−−−、確認に使用するデータ:0x−−−−、検証開始:on、等の設定である(これらは抽象度の高いレベルでの設定である)。これらのテスト設定2−1を受けたメモリBIST(メモリテスト手段)1−19は、それをRAM1−13に合わせた形での具体的なトランザクションで検証を行う。   Next, test setting 2-1 is performed from a memory test external pin assigned to the external pin 1-3 of the ASIC 1-1. The test settings referred to here are, for example, settings such as inspection address: 0x ----, data used for confirmation: 0x ----, verification start: on, etc. (these are at a high level of abstraction). Setting). Receiving these test settings 2-1, the memory BIST (memory test means) 1-19 performs verification with a specific transaction in a form matching the RAM 1-13.

即ち、まず、メモリBIST1−19は、テスト設定2−1にて指定されたアドレスに指定されたデータをRAM1−13に書き込みを行う。この時、RAM1−13メカニズムに合わせた形で書き込みを行う。例えば、RAM1−13がS−RAMであればS−RAM用のタイミングで、SD−RAMであればSD−RAM用のタイミングを発生させ、メモリBIST(メモリテスト手段)1−19はRAM1−13への書き込みを行う(ここでは、それを(メモリに対する)トランザクションを含めたテスト信号入力2−2と呼ぶことにする)。   That is, first, the memory BIST 1-19 writes the data designated at the address designated in the test setting 2-1 to the RAM 1-13. At this time, writing is performed in accordance with the RAM 1-13 mechanism. For example, if the RAM 1-13 is S-RAM, the timing for S-RAM is generated, and if it is SD-RAM, the timing for SD-RAM is generated, and the memory BIST (memory test means) 1-19 is RAM 1-13. (Here, it is referred to as a test signal input 2-2 including a transaction (to a memory)).

さらに、メモリBIST1−19は、この書き込みを行ったアドレスから、データのリードバックを行う。この時、RAM1−13メカニズムに合わせた形でデータの読み出しをする(ここでは、それを(メモリに対する)トランザクションを含めたテスト信号出力2−3と呼ぶことにする)。   Further, the memory BIST 1-19 performs data read-back from the address where the writing is performed. At this time, data is read in a form that matches the RAM 1-13 mechanism (here, it is referred to as a test signal output 2-3 including a transaction (to the memory)).

次に、メモリBIST(メモリテスト手段)1−19は、書き込みを行ったデータ値と(これはRAM1−13に書き込む前に、メモリBIST(メモリテスト手段)1−19の中のレジスタに保持されている必要がある)、読み出したデータ値を比較し、両者が同じ値の場合は、検査アドレス:0x−−−−のセルは正常と判断する。両者が異なる場合は、検査アドレス:0x−−−−のセルは異常と判断する。その結果を、ASIC1−1の外部ピンを通して伝えるのである(通常、これは1bitの信号の“H”か”L”か、で簡単に判断可能である)。   Next, the memory BIST (memory test means) 1-19 holds the written data value (this is stored in a register in the memory BIST (memory test means) 1-19 before being written to the RAM 1-13). The read data values are compared, and if both are the same value, it is determined that the cell at the test address: 0x ---- is normal. If the two are different, it is determined that the cell at the test address: 0x ---- is abnormal. The result is transmitted through the external pin of the ASIC 1-1 (usually, this can be easily determined by whether the signal is “H” or “L”).

以上の動作を、RAM1−13の全てのセル(がアサインされたアドレス)に繰り返すことで、RAM1−13のテストを行う。   The RAM 1-13 is tested by repeating the above operation for all the cells (address to which the RAM 1-13 is assigned).

前述したように、この技術は公知であり、以下の様な長所を有していると言われている。即ち、(1)メモリアクセスの部分をBIST(=メモリテスト手段)が有しているために、ASICの外部ピンに、メモリアクセスに必要な信号を全て出す必要が無い(即ち、テスト用バスセレクタが簡素化可能である)、(2)テストがメモリのみにフォーカスされているためASICの外部ピンの実用途を考慮せず、テスト用のピンを外部にアサインすることが可能(即ち、メモリと共にモータのテストを行うわけではないので、モータのピンにテスト制御ピンをアサインできる)、等、である。   As described above, this technique is known and is said to have the following advantages. (1) Since the BIST (= memory test means) has a memory access part, it is not necessary to output all signals necessary for memory access to the external pins of the ASIC (that is, a test bus selector). (2) Since the test is focused only on the memory, it is possible to assign the test pin to the outside without considering the actual use of the external pin of the ASIC (that is, together with the memory) Since the motor is not tested, a test control pin can be assigned to the motor pin).

<動作についての説明>
図5は、本実施形態の動作の示したフローである。まず、テスト開始直後(S−100)、ASIC1−1のシステムは、RAM1−13の分離テスト可能なモードに入る(P−101)。即ち、テスト制御ピン1−31のピン(pin0,pin1)=(1,0):RAMテストモードとして、RAM1−13の分離テスト可能なモードに入る。この時、ASIC1−1のシステムによっては、外部リセット信号を入れないと規定のモードに入れない場合もあるので、そのような場合は、ASIC1−1のシステムの制約に従う。
<Description of operation>
FIG. 5 is a flowchart showing the operation of this embodiment. First, immediately after the test is started (S-100), the system of the ASIC 1-1 enters a mode in which the RAM 1-13 can be separated and tested (P-101). That is, the test control pin 1-31 pin (pin0, pin1) = (1, 0): the RAM test mode is entered, and the RAM 1-13 can be separated and tested. At this time, depending on the system of the ASIC 1-1, there is a case where the specified mode cannot be entered unless an external reset signal is input.

次に、RAMテストモードの動作を用いて、RAM1−13にプログラムデータを書き込んでいく(P−102)。このプログラムは、MPU1−11で実行可能なものであり、その実行内容は、MPU1−11でASIC1−1をテスト可能な物である必要がある。例えば、それは、UDL1−12の中でスキャン・パスから抜けた部分でも良いし、各種分離テストにて抜けが合ったパスでも良いし、ASIC1−1の外部ピン1−3のDCテストでも良い。要は、ATPGや分離テストから抜けてしまったテスト項目で、工場出荷時に検証しておきたいシナリオを、MPU1−11で実行可能なプログラムにすれば良いのである。   Next, program data is written into the RAM 1-13 using the operation in the RAM test mode (P-102). This program can be executed by the MPU 1-11, and the execution content of the program needs to be a thing that can test the ASIC 1-1 by the MPU 1-11. For example, it may be a part of the UDL 1-12 that is missing from the scan path, may be a path that is missing in various separation tests, or may be a DC test of the external pins 1-3 of the ASIC 1-1. In short, it is only necessary to make a program that can be executed by the MPU 1-11 into a test item that has been omitted from the ATPG or separation test and is to be verified at the time of shipment from the factory.

必要なプログラムをRAM1−13に書き込み終了した後、一旦、RAM1−13の分離テスト可能なモードから抜け(P−103)、異なるテストモードに入る。この時、ASIC1−1のシステムによっては、外部リセット信号を入れ直さないとモード変更が出来ない場合もあるので、そのような場合は、ASIC1−1のシステムの制約に従う。   After the necessary program has been written to the RAM 1-13, the RAM 1-13 is temporarily removed from the separation testable mode (P-103) and enters a different test mode. At this time, depending on the system of the ASIC 1-1, the mode cannot be changed unless the external reset signal is input again. In such a case, the restrictions of the system of the ASIC 1-1 are followed.

この時、次に入るべきモードは、ASIC1−1の外部ピン1−3のピン(pin0,pin1)=(0,1):シナリオテストモードである(P−104)。このモードは、上記でRAM1−13に書き込んだプログラムを、実際に、MPU1−11で実行するモードである。この時、当然、何のメカニズムも無しで、MPU1−11を走らせると、PC(program counter)は間違いなくリセットベクタに進むので(飛んでしまうので)、RAM1−13上のテストシナリオは実行されなくなってしまう。   At this time, the mode to be entered next is the pin (pin0, pin1) = (0, 1) of the external pin 1-3 of the ASIC 1-1: scenario test mode (P-104). This mode is a mode in which the MPU 1-11 actually executes the program written in the RAM 1-13. At this time, naturally, if MPU 1-11 is run without any mechanism, the PC (program counter) will definitely go to the reset vector (because it will fly), so the test scenario on RAM 1-13 will be executed. It will disappear.

従って、本実施形態では、ASIC1−1の外部ピン1−3のピン(pin0,pin1)=(0,1):シナリオテストモードに入った際、アドレスデコーダ1−17と連動し、ROM1−14のシステム上のアドレスと、RAM1−13のシステム上のアドレスとを入れ替えてしまう機構(構成)とする。   Accordingly, in the present embodiment, the pins (pin0, pin1) of the external pins 1-3 of the ASIC 1-1 = (0, 1): When entering the scenario test mode, the ROM 1-14 operates in conjunction with the address decoder 1-17. The mechanism (configuration) in which the system address of the RAM 1-13 and the system address of the RAM 1-13 are interchanged.

即ち、このアドレスの入れ替えがあった後、MPU1−11が、ROM1−14上のプログラムにアクセスしようとすると、そこのアドレスは、既にRAM1−13が存在するので、上の工程で書き込まれたRAM1−13のオブジェクトにアクセスすることになるのである。これは、即ち、MPU1−11が、自らASIC1−1の検査をすることに他ならない。   That is, when the MPU 1-11 tries to access the program on the ROM 1-14 after this address exchange, the RAM 1-13 already exists in the RAM 1-13. It will access the -13 object. That is, the MPU 1-11 is nothing but the inspection of the ASIC 1-1 by itself.

このようにして、MPU1−11を用い、RAM1−13内にある実行可能なプログラム=検証シナリオを基に、ASIC1−1の各所のテストを行っていく(P−105)。そして、必要なテスト項目の実施が終了した後、テストを終了する(E−106)。   In this way, the MPU 1-11 is used to test each part of the ASIC 1-1 based on the executable program in the RAM 1-13 = validation scenario (P-105). Then, after the execution of necessary test items is completed, the test is terminated (E-106).

終了の方法は、ASIC1−1のシステムやMPU1−11は、ASIC1−1の外部ピン1−3から与えられるクロックを基準に動作していくので、検証シナリオを最後まで行うのに必要なクロック数を予め数えておいて、その数の(+α)のクロックを与えたのを確認後、テストを終了すれば良いのである。   The termination method is that the ASIC 1-1 system and the MPU 1-11 operate on the basis of the clock given from the external pin 1-3 of the ASIC 1-1, so that the number of clocks necessary to perform the verification scenario to the end. It is sufficient to finish the test after confirming that the number of clocks (+ α) has been given.

検証シナリオを最後まで行うのに必要なクロック数は、実際のASIC1−1をテスタに書ける前に、事象駆動型シミュレータでパターン確認を行う際に、カウントすることができる。また、テスト終了時に、実行可能なプログラム=検証シナリオが暴走するのが心配な場合は、図7に示すプログラム(C言語での記述例)のように、ダイナミックストップルーチン(=無限ループ)を使うことで、MPU1−11のPCは適当な位置にステイし続けるようになる。   The number of clocks required to complete the verification scenario can be counted when the pattern confirmation is performed by the event-driven simulator before the actual ASIC 1-1 can be written to the tester. In addition, when the test is finished, if an executable program = verification scenario is worried about runaway, a dynamic stop routine (= infinite loop) is used as in the program shown in FIG. 7 (C language description example). As a result, the PC of the MPU 1-11 continues to stay at an appropriate position.

まず、本例では、メモリテスト手段1−19をBISTであるかのように仮定して、説明を行っていたが、これは必ずしもBISTである必要は無い。例えば、メモリテスト手段1−19が検証すべき対象がS−RAM等の場合、あまりにもメモリのインターフェイスが単純なため、BISTを解さず、S−RAMのバスを全てASIC1−1の外部ピン1−3にアサインしてしまって、直接、メモリテストを行う場合も多々ある。   First, in this example, the description has been made assuming that the memory test means 1-19 is a BIST, but this need not necessarily be a BIST. For example, when the object to be verified by the memory test means 1-19 is an S-RAM or the like, the memory interface is so simple that the BIST is not solved and all the S-RAM buses are connected to the external pins 1 of the ASIC 1-1. In many cases, the memory test is performed directly after assigning to -3.

また、S−RAMにテストシナリオを書き込むことが可能なので、本実施形態の特徴的な動作、即ち、フローチャート−1を実施することが可能である。逆に、BISTを使う場合、アドレスやデータも内部で自動生成してしまうタイプのBISTを設計してしまうと、本件には使用できなくなる。アドレスについては問題ないものの、データについては自由に設計者の意思通りのコードが書けなければ、テストシナリオは実現できない。   Further, since the test scenario can be written in the S-RAM, the characteristic operation of the present embodiment, that is, the flowchart-1 can be performed. Conversely, when using BIST, if a BIST of a type that automatically generates addresses and data internally is designed, it cannot be used in this case. Although there is no problem with the address, the test scenario cannot be realized unless the data can be written freely according to the designer's intention.

さらに、ASICのチップ・テストの結果を、外部ピンに反映させられるような仕組みを作る。即ち、シナリオテストモードでは、テスト用のバス等を、一切、ASIC1−1の外部ピン1−3にアサインしていない。モータの様にテスト(=操作)の結果がASIC1−1の外部ピン1−3のどれかのピンに反映される場合は、全く問題ないのだが、DMAの様な機能をチップ・テストで検証したい場合など、ASIC1−1の内部で完全に処理が閉じている場合は以下のように行う。
(1)ディスティネーションにあるDMAの結果を順次読み出し、汎用ポートに小出しにしていく。(2)予めDMAの結果の期待値をもテストシナリオ内にデータテーブル化し、それも含めてRAM1−13にダウンロードしておく。そして、期待値比較も行えるようなシナリオ構成にし、不一致が出た場合はモータを左回転させ、正しい場合は、モータを停止させつづけるような信号をASIC1−1の外部ピン1−3に出力させつづける、等が挙げられる。
Furthermore, a mechanism is created to reflect the results of the ASIC chip test on external pins. That is, in the scenario test mode, no test bus or the like is assigned to the external pin 1-3 of the ASIC 1-1. If the result of the test (= operation) is reflected on any of the external pins 1-3 of the ASIC 1-1 like a motor, there is no problem at all, but the function like DMA is verified by a chip test. When the processing is completely closed inside the ASIC 1-1, such as when it is desired, the following is performed.
(1) The DMA results in the destination are sequentially read and dispensed to the general-purpose port. (2) The expected value of the DMA result is also converted into a data table in the test scenario and downloaded to the RAM 1-13 together with the data table. Then, the scenario is configured so that the expected value can be compared. If there is a mismatch, the motor is rotated counterclockwise. Continue.

以上のように、本実施形態では、ASICシステムに付属している機能(ここではMPU、RAM、RAMテスト機構、等)を利用して、ベクタ入力テストを行うことを可能としている。ここで、新たに付加された構成としてはテスト用の外部ピン2本程度とそのデコード回路程度であり、非常に単純な構成である。   As described above, in the present embodiment, it is possible to perform a vector input test using the functions (here, MPU, RAM, RAM test mechanism, etc.) attached to the ASIC system. Here, the newly added configuration is about two external pins for testing and its decoding circuit, which is a very simple configuration.

また、ASICのスティムレートはMPUが行っているが、プログラムはRAMに書き込んでいるため、通常モードで使用すべきROMエリアを無駄にしていないことも、特徴の一つである。   Another feature of the MPU is that the MPU performs the ASIC stimulus rate, but since the program is written in the RAM, the ROM area to be used in the normal mode is not wasted.

[第2の実施形態]
次に、第2の実施形態について説明する。上記の例では、ASICチップ・テストを行うモードとして、シナリオテストモードと言うものを設けた。この方法が適さない場合がある。即ち、第1に、このように新たにテストモードを設けると、それを他のモードと切り分ける必要が出てくるので(今回の場合は、通常モードとRAMテストモードの2つと違うシステムモードと言う扱いになっている)、それを行う手段が必要となる。上記実施形態では、それをASIC1−1の外部ピン1−3の一部であるテスト制御ピン1−31の状態で判断している。ASICにおいてピンの数を増やすことは、コストアップの原因である。そこで、本実施形態では、上記の実施例と同等の機能を、通常モード(=ASICの実使用モード)にて実現する手段を説明する。
[Second Embodiment]
Next, a second embodiment will be described. In the above example, the scenario test mode is provided as the mode for performing the ASIC chip test. This method may not be suitable. That is, first, since a new test mode is provided in this way, it is necessary to separate it from other modes (in this case, it is called a system mode different from the normal mode and the RAM test mode). Need a way to do that). In the above-described embodiment, this is determined by the state of the test control pin 1-31 that is a part of the external pin 1-3 of the ASIC 1-1. Increasing the number of pins in the ASIC causes a cost increase. Therefore, in the present embodiment, means for realizing the function equivalent to the above-described example in the normal mode (= actual use mode of ASIC) will be described.

<構成についての説明>
基本的な構成は、概略的には図1に等しい。ただ、第1の実施形態と違い、シナリオテストモードがなくなったので、図3のように、幾つかあるシステムモードの中で、切り分けるべきモードが1つ減ることになる(ただし、RAMテストモードは必要)。これにより、図1において、制御信号1−21(点線で示した)は必要が無くなる。即ち、ASIC1−1の外部ピン1−3の一部であるテスト制御ピン1−31にアサインすべき機能が1つ減り(=テストピンを1本減らすことが出来る可能性を示唆)、モードを1つデコードする必要が無くなり、内分の信号線も減ることで、実施例−1より、構成が簡素化していることが分かる。
<Description of configuration>
The basic configuration is roughly equivalent to FIG. However, unlike the first embodiment, since the scenario test mode is eliminated, the mode to be separated is reduced by one among several system modes as shown in FIG. 3 (however, the RAM test mode is necessary). This eliminates the need for the control signal 1-21 (shown in dotted lines) in FIG. That is, the function to be assigned to the test control pin 1-31 that is a part of the external pin 1-3 of the ASIC 1-1 is reduced by one (= suggesting that one test pin can be reduced), and the mode is changed. It can be seen that the configuration is simplified from the first embodiment by eliminating the need to decode one and reducing the number of signal lines.

<動作についての説明>
図6は、第2の実施形態の動作フローを示したものである。
<Description of operation>
FIG. 6 shows an operation flow of the second embodiment.

基本的に(S−200)−(P−203)の間は、図5と全く同じ動作を行う。まず、テスト開始直後(S−200)、ASIC1−1のシステムは、テスト制御ピン1−31の情報にてRAM1−13の分離テスト可能なモードに入り(P−201)、RAM1−13にテストプログラムデータを書き込んでいく(P−202)。必要なテストシナリオをRAM1−13に書き込み終了した後、一旦、RAM1−13の分離テスト可能なモードから抜ける(P−203)。   Basically, the same operation as in FIG. 5 is performed during (S-200)-(P-203). First, immediately after the test is started (S-200), the system of the ASIC 1-1 enters a mode in which the RAM 1-13 can be separated by the information on the test control pin 1-31 (P-201), and the RAM 1-13 is tested. Program data is written (P-202). After the necessary test scenario has been written to the RAM 1-13, the RAM 1-13 is temporarily removed from the mode in which the separation test is possible (P-203).

この時、ASIC1−1のシステムによっては、外部リセット信号を入れ直さないとモード変更が出来ない場合もあるので、そのような場合は、ASIC1−1のシステムの制約に従う。(P−201)と(P−203)の時点で、ASIC1−1が、外部ピン1−3からのリセットを要求する場合はそれに従うと言う制約も、図5と同じである。   At this time, depending on the system of the ASIC 1-1, the mode cannot be changed unless the external reset signal is input again. In such a case, the restrictions of the system of the ASIC 1-1 are followed. When the ASIC 1-1 requests reset from the external pin 1-3 at the time of (P-201) and (P-203), the restriction that the ASIC 1-1 follows that is also the same as in FIG.

次に、図5のフローとは異なり、シナリオテストモードではなく、通常モードに入る(P−204)。このまま、何もせずにプログラムを走らせると、ASIC1−1の通常の動作に入ってしまうので、テストを行うための新たなる仕掛けが必要である。そしてそれは、まず、ROM1−14の中のコード内に作る。   Next, unlike the flow of FIG. 5, the scenario mode is entered instead of the normal mode (P-204). If the program is run without doing anything, the normal operation of the ASIC 1-1 is entered, so a new device for testing is required. And it is first made in the code in ROM1-14.

通常モードに入った後、ASIC1−1のシステムは、PCを規定のアドレスに設定し、ROM1−14中のスタートアップルーチンプログラムの実行を行う。ここで行われる内容は、システムの初期化、スタックの設定、バスアクセスサイクル数の設定等様々で、ASIC1−1のシステムに依存する。このスタートアップ終了後、ASIC1−1のシステムは、通常動作時のプログラムの実行に(MPU1−11対応のbranch命令で)分岐する。そこで、このスタートアップルーチンプログラムの中で以下のような非常に簡単な作業を行う。   After entering the normal mode, the ASIC 1-1 system sets the PC to a specified address and executes the startup routine program in the ROM 1-14. The contents performed here are various, such as system initialization, stack setting, and bus access cycle number setting, and depend on the system of the ASIC 1-1. After the start-up is completed, the system of the ASIC 1-1 branches to the execution of the program at the normal operation (with a branch instruction corresponding to the MPU 1-11). Therefore, the following very simple work is performed in this startup routine program.

即ち、ASIC1−1のシステムが、次に、通常動作を行うのかテストシナリオを実行するのかを切り分けるのだが、それを次のような手法で行う。通常、ASICの外部ピンには直接その論理的数値を(即ち、電圧値ではなく、”1”、”0”のディジタル値で)読み取ることのできるポートが幾つかある。例えば、ASICが搭載される機器のスウィッチのON/OFFを読み取るものだったり、各種センサの値を読み取るものであったりして、そのポートの用途は様々である。要は、そのポートの入力値をもってして、状態の切り分けを行う。例えば、ASIC1−1の外部ピン1−3には2つの入力ポートがあり、それらは、共に、ある種類のスウィッチのON/OFF読み取りに使用されているものとする(概略的には、図4のようになる)。そして、図−4中にある入力ポート0と入力ポート1が、通常動作中、決して、同時に(入力ポート0,入力ポート)=(1,1)と言う状態にならないのであれば、それは、通常動作とテストシナリオ動作を分離する。   That is, the system of the ASIC 1-1 next determines whether to perform a normal operation or to execute a test scenario, and this is performed by the following method. Typically, there are several ports on the ASIC external pins that can read their logical values directly (ie, with a digital value of “1”, “0”, not a voltage value). For example, the port can be used for various purposes, such as reading on / off of a switch of a device on which an ASIC is mounted, or reading values of various sensors. In short, the state is divided by using the input value of the port. For example, the external pin 1-3 of the ASIC 1-1 has two input ports, both of which are used for ON / OFF reading of a certain type of switch (schematically, FIG. 4). become that way). And, if the input port 0 and the input port 1 in Fig. 4 are never in the state of (input port 0, input port) = (1, 1) at the same time during normal operation, Separate behavior and test scenario behavior.

これは、必ずしも、(入力ポート0,入力ポート)=(1,1)に限定する必要は無く、(0,0)、(1,0)、(0,1)等のいずれの状態でも構わない。また、2本の入力ポートで切り分けが不可能であれば、3本以上の入力ポートを用いて同じ機構を実現すればよい。逆に、1本の入力ポートで切り分けが可能であれば、1本の入力ポートを用いて同じ機構を実現すればよい。   This is not necessarily limited to (input port 0, input port) = (1, 1), and any state such as (0, 0), (1, 0), (0, 1) may be used. Absent. In addition, if it is impossible to distinguish between two input ports, the same mechanism may be realized using three or more input ports. On the contrary, if the separation can be performed by one input port, the same mechanism may be realized by using one input port.

さらに、この切り分けを行う場所が、スタートアップルーチン内であることも重要な意味をもっており、即ち、PCがスタートアップルーチンを通過するのは、ハードリセット解除後の1度だけであるため、このタイミングに同期して、予め決められた(通常ありえない)入力パターンの組み合わせを考えればよい。   Furthermore, it is also important that the location where this separation is performed is in the startup routine, that is, since the PC passes through the startup routine only once after the hard reset is released, it is synchronized with this timing. Then, a combination of input patterns determined in advance (which is usually impossible) may be considered.

例えば、上記の例で言うと、(入力ポート0,入力ポート)=(1,1)と言うものが、ASIC1−1のシステムの典型的な通常動作中にはあるものの、ハードリセット解除直後には、そのような入力はありえないのであれば、(入力ポート0,入力ポート)=(1,1)は、十分、通常動作とテストシナリオ動作の分離パターンとして用いることが可能である。   For example, in the above example, (input port 0, input port) = (1, 1) is in the normal normal operation of the ASIC 1-1 system, but immediately after the hard reset is released. If such an input is not possible, (input port 0, input port) = (1, 1) can be sufficiently used as a separation pattern of normal operation and test scenario operation.

以上のような流れを、再度、フローチャート−2に戻り、説明を行うと、即ち、ROM1−14中のスタートアップルーチンプログラム内に、PCがそこに入った直後、(入力ポート0,入力ポート)の論理的値をポーリングする小さなプログラムを実装しておくのである(P−205)。   Returning to the flowchart 2 again, the flow as described above will be described. That is, immediately after the PC enters the startup routine program in the ROM 1-14 (input port 0, input port). A small program for polling logical values is installed (P-205).

そして、(入力ポート0,入力ポート)=(1,1)であれば、RAM1−13に書き込まれているテストシナリオルーチンに分岐し(P−206)、即ち、PCをRAM1−13に書き込まれているテストシナリオルーチンの先頭アドレスをポインティングする。   If (input port 0, input port) = (1, 1), the process branches to the test scenario routine written in the RAM 1-13 (P-206), that is, the PC is written into the RAM 1-13. Point the start address of the test scenario routine.

逆に、(入力ポート0,入力ポート)=(1,1)以外の値ならば、通常動作ルーチンへと分岐する(E−208)ように、ROM1−14にプログラムを実装する。   Conversely, if the value is other than (input port 0, input port) = (1, 1), the program is mounted in the ROM 1-14 so as to branch to the normal operation routine (E-208).

この処理のプログラムとしては、入力ポート値のロード−>パターン比較−>フラグジャンプ、と言った処理が実行されるので、最悪でも、3word程度の機械コードで実行可能である。つまり、ROM1−14内のプログラムエリアの一部をチップ・テスト用に用いるが、そのプログラムのサイズは無視できる。   As a program for this processing, processing such as load of input port value-> pattern comparison-> flag jump is executed, so that it can be executed with a machine code of about 3 words at the worst. That is, a part of the program area in the ROM 1-14 is used for chip test, but the size of the program can be ignored.

以上で、本実施例の特徴的な部分の説明は終了であるが、幾つかの点について、補足説明を付加する。   This is the end of the description of the characteristic part of the present embodiment, but a supplementary explanation is added for some points.

上述した、スタートアップルーチンの、テストシナリオと通常動作の切り分けプログラムは、スタートアップルーチン内に入った後、なるべく早い段階で行われることが好ましい。理由は、テストシナリオに入るまでの時間が長いと、チップ・テストの時間が延びるからである。   It is preferable that the test program for separating the test scenario and the normal operation in the startup routine described above is performed as early as possible after entering the startup routine. The reason is that if the time to enter the test scenario is long, the time for chip test is extended.

スタートアップルーチンプログラムは、ASIC1−1システムの初期化を行うが、それは通常動作を想定しての初期化である。しかしながら、テストシナリオに必要なシステムの初期化は、それと異なるのが普通で、例えば、スタックやヒープやグローバル変数の初期化といったものは、テストシナリオがそれを用いない場合、何の意味もなさない。また、バスサイクルの決定も、通常動作では用いるもののテストシナリオで使用しない部所に関して行う必要はなかろう。要は、必要な初期化と、そうでないものを厳密に考慮して切り分けプログラムを作成しないと、無駄の多いチップ・テストになってしまうのである。これは留意すべき重要な点である。   The startup routine program initializes the ASIC 1-1 system, which is initialized assuming normal operation. However, the system initialization required for a test scenario is usually different, for example, stack, heap or global variable initialization has no meaning if the test scenario does not use it. . In addition, the bus cycle may not be determined for a part that is used in normal operation but is not used in a test scenario. The point is that if you do not create a separation program that strictly considers the necessary initialization and what is not, it will be a wasteful chip test. This is an important point to keep in mind.

以上のように、第2の実施形態は、第1の実施形態よりも簡単なテスト構成を実現できる。   As described above, the second embodiment can realize a simpler test configuration than the first embodiment.

なお、上述したASICのテスト機構(構成)の概要を以下に述べる。   The outline of the ASIC test mechanism (configuration) described above will be described below.

テストされるべきASICの内部に、マイクロ・プログラムを解析し、また、その上記マイクロ・プログラムの内容に従い制御動作を行うことが可能な手段を有し、上記マイクロ・プログラムを解析し、また、その上記マイクロ・プログラムの内容に従い制御動作を行うことが可能な手段のためのプログラムを格納するための書き込み・読み出し可能な記憶装置を有し、上記マイクロ・プログラムの内容に従い制御動作を行うことが可能な手段が、上記書き込み・読み出し可能な記憶装置内にあるマイクロ・プログラムの内容に従って、上記テストされるべきASICに対しチップテストを自ら行うことを特徴とする。   The ASIC to be tested has means capable of analyzing the micro program and performing control operations according to the contents of the micro program, analyzing the micro program, and It has a readable / writable storage device for storing programs for means capable of performing control operations according to the contents of the micro program, and can perform control operations according to the contents of the micro program. This means performs a chip test on the ASIC to be tested by itself according to the contents of the micro program in the writable / readable storage device.

また、上記マイクロ・プログラムの内容に従い制御動作を行うことが可能な手段を有し、上記マイクロ・プログラムの内容に従い制御動作を行うことが可能な手段とは、MPUであることを特徴とする。   Further, it has means capable of performing a control operation according to the contents of the micro program, and the means capable of performing the control operation according to the contents of the micro program is an MPU.

また、テストされるべきASICの内部に、マイクロ・プログラムを解析し、また、その上記マイクロ・プログラムの内容に従い制御動作を行うことが可能なMPUを有し、上記MPUのプログラムを格納するための書き込み・読み出し可能な記憶装置を有し、基本的にチップの検証は既知の技術であるバウンダリ・スキャンを用いて行う仕組みを有しながらも、そのスキャン・パスから外され、かつ、検証が必要とされる上記ASIC内部のロジック・モヂュールに対し、上記MPUが、上記書き込み・読み出し可能な記憶装置内にあるマイクロ・プログラムの内容に従って、上記スキャン・パスから外され、かつ、検証が必要とされる上記ASIC内部のロジック・モヂュールのテストを自ら行うことを特徴とする。   Further, the ASIC to be tested has an MPU capable of analyzing a micro program and performing a control operation according to the contents of the micro program, and for storing the MPU program. It has a readable / writable storage device and basically has a mechanism to perform chip verification using boundary scan, which is a well-known technology, but it is excluded from the scan path and verification is required. For the logic module in the ASIC, the MPU is removed from the scan path according to the contents of the microprogram in the writable / readable storage device, and verification is required. The logic module in the ASIC is tested by itself.

また、書き込み・読み出し可能な記憶装置に対する内部のロジック・モヂュールのテストテストプログラムの書き込みは、上記請求項−3の提案するASICのテスト機構とは別に設けられている、上記書き込み・読み出し可能な記憶装置専用のテスト機構を用いて行われることを特徴とする。   Further, the writing of the internal logic module test test program to the writable / readable storage device is provided separately from the ASIC test mechanism proposed in claim 3 above, and the writable / readable memory is provided. It is performed using a test mechanism dedicated to the apparatus.

また、テストされるべきASICの内部に、マイクロ・プログラムを解析し、また、その上記マイクロ・プログラムの内容に従い制御動作を行うことが可能なMPUを有し、上記MPUのプログラムを格納するための書き込み・読み出し可能な記憶装置を有し、上記書き込み・読み出し可能な記憶装置を、本提案が意図するテスト機構とは別の仕組みでテストすることが可能な記憶装置テスト装置を有し、基本的にチップの検証は既知の技術であるバウンダリ・スキャンを用いて行う仕組みを有しながらも、そのスキャン・パスから外され、かつ、検証が必要とされる上記ASIC内部のロジック・モヂュールに対し、上記記憶装置テスト装置を用い上記検証が必要とされる上記ASIC内部のロジック・モヂュールをテストするためのプログラムを上記書き込み・読み出し可能な記憶装置に書き込み、上記MPUが、上記書き込み・読み出し可能な記憶装置内にある上記書き込み済みのテストプログラムの内容に従って、上記スキャン・パスから外され、かつ、検証が必要とされる上記ASIC内部のロジック・モヂュールのテストを自ら行うことを特徴とする。   Further, the ASIC to be tested has an MPU capable of analyzing a micro program and performing a control operation according to the contents of the micro program, and for storing the MPU program. A storage device test device having a storage device that can be written and read, and capable of testing the storage device that can be written and read by a mechanism different from the test mechanism intended by the present proposal, In addition, while having a mechanism for performing chip verification using boundary scan, which is a known technology, the logic module inside the ASIC that is excluded from the scan path and requires verification, A program for testing the logic module in the ASIC that requires the verification using the storage device test device. RAM is written to the writable / readable storage device, and the MPU is removed from the scan path and verified according to the contents of the written test program in the writable / readable storage device. It is characterized in that the necessary logic module inside the ASIC is tested by itself.

本発明に係る第1の実施形態のASICテスト機構の説明図。Explanatory drawing of the ASIC test mechanism of 1st Embodiment which concerns on this invention. 第1の実施形態のメモリテスト手段の説明図Explanatory drawing of the memory test means of 1st Embodiment 第1の実施形態のテストピン機能の説明図。Explanatory drawing of the test pin function of 1st Embodiment. 第2の実施形態の入出力ピン機能の説明図。Explanatory drawing of the input / output pin function of 2nd Embodiment. 第1の実施形態の動作フロー。The operation | movement flow of 1st Embodiment. 第2の実施形態の動作フロー。The operation | movement flow of 2nd Embodiment. プログラム例Example program

符号の説明Explanation of symbols

ASIC1−1 ASIC
ATE1−2 ATE
1−3 ASICの外部ピン
1−11 MPU
1−12 UDL
1−13 RAM
1−14 ROM
1−15 アドレス・バス
1−16 データ・バス
1−17 アドレスデコーダ
1−18 チップセレクト信号群
1−19 メモリテスト手段
1−20 テストバスセレクタ
ASIC1-1 ASIC
ATE1-2 ATE
1-3 ASIC external pins 1-11 MPU
1-12 UDL
1-13 RAM
1-14 ROM
1-15 Address Bus 1-16 Data Bus 1-17 Address Decoder 1-18 Chip Select Signal Group 1-19 Memory Test Means 1-20 Test Bus Selector

Claims (3)

マイクロプロセッサと記憶手段を有する集積回路の動作を試験する集積回路の試験方法であって、
前記記憶手段にプログラムを格納する格納工程と
前記プログラムに従って制御を行う制御工程と有し、
前記制御工程は、前記集積回路の動作テストを行うことを特徴とする集積回路の試験方法。
An integrated circuit test method for testing an operation of an integrated circuit having a microprocessor and a storage means, comprising:
A storage step of storing a program in the storage means, and a control step of performing control according to the program,
The method of testing an integrated circuit, wherein the control step performs an operation test of the integrated circuit.
前記制御工程は、前記マイクロプロセッサにより行われることを特徴とする請求項1に記載の集積回路の試験方法。   2. The integrated circuit testing method according to claim 1, wherein the control step is performed by the microprocessor. 前記動作テストは、バウンダリ・スキャンを用いて行うことを特徴とする集積回路の試験方法。   A test method for an integrated circuit, wherein the operation test is performed using a boundary scan.
JP2003399878A 2003-11-28 2003-11-28 Method for testing integrated circuit Withdrawn JP2005164265A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003399878A JP2005164265A (en) 2003-11-28 2003-11-28 Method for testing integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003399878A JP2005164265A (en) 2003-11-28 2003-11-28 Method for testing integrated circuit

Publications (1)

Publication Number Publication Date
JP2005164265A true JP2005164265A (en) 2005-06-23

Family

ID=34724305

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003399878A Withdrawn JP2005164265A (en) 2003-11-28 2003-11-28 Method for testing integrated circuit

Country Status (1)

Country Link
JP (1) JP2005164265A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11309048B2 (en) 2020-02-11 2022-04-19 Samsung Electronics Co., Ltd. Memory test apparatus and testing method thereof including built-in self test (BIST)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11309048B2 (en) 2020-02-11 2022-04-19 Samsung Electronics Co., Ltd. Memory test apparatus and testing method thereof including built-in self test (BIST)

Similar Documents

Publication Publication Date Title
US8170828B2 (en) Test method using memory programmed with tests and protocol to communicate between device under test and tester
JP4515545B2 (en) Memory interface device and method for supporting debugging
US6101457A (en) Test access port
US6415403B1 (en) Programmable built in self test for embedded DRAM
US20080109594A1 (en) Non-volatile memory device controlled by a micro-controller
US7340658B2 (en) Technique for combining scan test and memory built-in self test
US20040006729A1 (en) Hierarchical test methodology for multi-core chips
US10496506B2 (en) Self-test capable integrated circuit apparatus and method of self-testing an integrated circuit
JP2002358249A (en) Bus protocol compliance test method for device, and system
US7308623B2 (en) Integrated circuit and method for testing memory on the integrated circuit
JPH10134597A (en) Sdram circuit test method by jtag and device therefor
US7360134B1 (en) Centralized BIST engine for testing on-chip memory structures
EP1632952A2 (en) A non-volatile memory device controlled by a micro-controller
US9086451B2 (en) Semiconductor integrated circuit and method for designing the same
Cheng et al. BRAINS: A BIST compiler for embedded memories
US7870453B2 (en) Circuit arrangement and method of testing an application circuit provided in said circuit arrangement
US6978406B2 (en) System and method for testing memory arrays
CN110415751B (en) Memory built-in self-test circuit capable of being configured in parameterization mode
US7313745B1 (en) Decoder for pin-based scan test
US9672094B1 (en) Interconnect circuitry fault detection
JP2005164265A (en) Method for testing integrated circuit
Zarrineh et al. Self test architecture for testing complex memory structures
Wu et al. Soc Testing and Design for Testability
US20040254755A1 (en) Method and apparatus for automatically configuring and/or inserting chip resources for manufacturing tests
KR100683436B1 (en) Generator of memory BIST circuit

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070206