JP2003513285A - Icチップを試験するための多段アルゴリズムパターン生成器 - Google Patents

Icチップを試験するための多段アルゴリズムパターン生成器

Info

Publication number
JP2003513285A
JP2003513285A JP2001535069A JP2001535069A JP2003513285A JP 2003513285 A JP2003513285 A JP 2003513285A JP 2001535069 A JP2001535069 A JP 2001535069A JP 2001535069 A JP2001535069 A JP 2001535069A JP 2003513285 A JP2003513285 A JP 2003513285A
Authority
JP
Japan
Prior art keywords
stage
register
address
output
addresses
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
JP2001535069A
Other languages
English (en)
Other versions
JP3591646B2 (ja
Inventor
ローズ,ジェイムス・バーノン
コンクリン,ロバート・デイビッド
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.)
Unisys Corp
Original Assignee
Unisys 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 Unisys Corp filed Critical Unisys Corp
Publication of JP2003513285A publication Critical patent/JP2003513285A/ja
Application granted granted Critical
Publication of JP3591646B2 publication Critical patent/JP3591646B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • G01R31/31917Stimuli generation or application of test patterns to the device under test [DUT]
    • G01R31/31926Routing signals to or from the device under test [DUT], e.g. switch matrix, pin multiplexing
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/31813Test pattern generators

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

(57)【要約】 ICチップを試験するためのビットストリームを生成する多段アルゴリズムパターン生成器は、3段パイプラインとしてともに結合される初期段、中間段、及び出力段からなる。初期段は、外部ソースからの一連の命令に応じて、仮想メモリの仮想アドレスの複数の集合を連続して生成する。中間段は、初期段から仮想アドレスの各集合を連続して記憶し、仮想アドレスの記憶されている集合を、試験されなければならない実際のメモリの物理アドレスの集合に変換する。出力段は、中間段から物理アドレスの各集合を連続して記憶し、物理アドレスの記憶されている集合からビットを選択することによって、メモリチップを試験するための出力信号を生成する。

Description

【発明の詳細な説明】
【0001】 (関連事例) 前記事件整理番号及び題名によって特定されるような発明は、4つのそれ以外の
発明に関係する。これらの発明のすべてに関する特許出願は、1999年11月
日に同時に提出され、それらは1つの共通した詳細説明を有する。これら4
つの関連発明は、以下のように特定される。 1.米国出願番号第 号を有する「記憶されているあるいは内部で
生成されるビットストリームを用いて選択的にICチップを試験するためのシス
テム(SYSTEM FOR TESTING IC CHIPS SELEC
TIVELY WITH STORED OR INTERNALLY GEN
ERATED BIT STREAMS)」と題される事件整理番号第550,
612号 2.米国出願番号第 号を有する「ICチップを試験するための多
段アルゴリズムパターン生成器(MULTI−STAGE ALGORITHM
IC PATTERN GENERATOR FOR TESTING IC
CHIPS)」と題される事件表第550,613号 3.米国出願番号第 号を有する「ICチップを試験するための多
段アルゴリズムパターン生成器の中間段(INTERMEDIATE STAG
E OF A MULTI−STAGE ALGORITHMIC PATTE
RN GENERATOR FOR TESTING IC CHIPS)」と
題される事件表第550,615号 4.米国出願番号第 号を有する「ICチップを試験するための多
段アルゴリズムパターン生成器の出力段(OUTPUT STAGE OF A
MULTI−STAGE ALGORITHMIC PATTERN GEN
ERATOR FOR TESTING IC CHIPS)」と題される事件
表第550,616号
【0002】 (発明の背景) 従来の技術において、チップを試験するための電子システムは、米国特許第5
,390,129号に開示されている。従来の技術によるシステムは、本発明の
譲受人でもあるユニシス・コーポレイション(Unisys Corporat
ion)に譲渡されている。 従来の技術によるチップ試験システムの簡略化されたブロック図は、特許第1
29号の図2に図示されている。そのシステムは、時分割されているバス52を
介して複数のドライバボード100に結合されるコンピュータ50を含み、各ド
ライバボード100は、試験されなければならない複数の集積回路チップを保持
するそれぞれのバーンインボード500に結合される。
【0003】 動作中、コンピュータ50は、各ドライバボード100に、チップを試験する
ために使用される試験データパターンの別個の集合を連続して送信する。これら
の試験データパターンは、参照番号107によって図3に示され、参照番号14
5によって図9にさらに詳細に示される大型SRAM内の各ドライバボード上に
記憶される。どの特定のドライバボードが任意の一時点で試験データパターンを
受信、記憶するのかは、ドライバボード上にあり、図2のブロック図に図示され
ているアドレス回路100Aによって決定される。
【0004】 試験データパターンがドライバボード100のすべてのSRAM145内に記
憶された後に、バーンインボード500のすべてでのチップが並列で試験できる
。それを行うために、試験パターンはSRAMのすべてから同時に読み出され、
図14に図示されるように、それぞれの出力ドライバモジュール164を通して
バーンインボード500のすべてのチップに送信される。
【0005】 特許第'129号のチップ試験システムのある特定の特徴とは、それぞれのバ
ーンインボードが、ボード上で試験されるチップの種別を特定するIDコードを
含むという点である。そのIDコードはドライバボード100によって感知され
、コンピュータ50に送信される。応じて、コンピュータ50がドライバボード
に送信する試験データパターンは、感知されるIDコードに合わせられる。
【0006】 しかしながら、特許第'129号のチップ試験システムは、図2のアーキテク
チャによって課されるいくつかの主要な制約も有する。例えば、コンピュータ5
0は、ドライバボード100のすべてについての試験データパターンの唯一のソ
ースである。その結果、チップ試験システムの動作速度は、コンピュータ50が
、バス52上で一度に単一ドライバボードに試験データパターンを送信すること
ができるために制限される。
【0007】 特許第'129号のチップ試験システムの別の制約とは、各ドライバボード1
00がつねにバーンインボード500上のチップのすべてを同時に試験するとい
う点である。ただし、それぞれのバーンインボードは本来ボード上のチップが消
散できる電力総量に限度を有している。このようにして、各バーンインボード5
00での総電力消散を一定の限度以下に保つためには、各バーンインボードでの
チップの総数が、チップあたりの最大電力消散が上昇するにつれて減少しなけれ
ばならない。
【0008】 特許第'129号のチップ試験システムの依然として別の制約とは、各ドライ
バボードの大型SRAM145に記憶されている試験データパターンがSRAM
メモリセルを非常に非効率的に利用するという点である。特許第'129号の図
9は、各SRAM145が19個のアドレスビットを受信し、8個のデータ出力
ビットを有することを示す。このようにして、各ドライバ回路上のSRAM14
5は、800万個のメモリセルを有する。しかし、一定の種類のチップは、時間
とともに数が変化する直列ビットストリームのシーケンスをそれらに送信するこ
とによって試験される。このようにして、SRAM145が一方の時間間隔の間
に4個のビットストリームを送信し、他方の時間間隔の間に2個のビットストリ
ームだけを送信する場合には、2個のビットストリームが送信されているときに
SRAMの半分が浪費される。
【0009】 特許第'129号のチップ試験システムで前記問題に対処するために、本発明
人は、以下のとおりに特定される1999年8月31日に3つの米国特許出願を
提出した。
【0010】 1.「チップドライバ回路の選択可能な集合に異なるビットストリームを同時
に一斉送信する選択可能な数のパターン生成器を有するチップを試験するための
電子システム(An Electronic System for Test
ing Chips Having A Selectable Number
of Pattern Generators That Concurre
ntly Broadcast Different Bit Streams
To Selectable Sets of Chip Driver C
ircuits)と題されるUSSN第09/386,946号。
【0011】 2.「ワード境界で終わり、任意の長さのチップ試験ビットストリームを生成
する未使用ビットによって間隔をあけて配置される命令を含むプログラム記憶装
置(A Program Storage Device Containin
g Instructions That Are Spaced Apart
By Unused Bits That End On Word Bou
ndaries And Which Generate Chip Test
ing Bit Streams of Any Length)」と題される
USSN第09/387,197号。
【0012】 3.「チップ電力消散を制限するためにプログラム制御下にある選択可能な部
分集合で同時にまたは連続して複数のチップの集合を試験するための電子システ
ム(An Electronic System For Testing A
Set Of Multiple Chips Concurrently
Or Sequentially In Selectable Subset
s Under Program Control To Limit Chi
p Power Dissipation)」と題されるUSSN第09/38
6,945号。
【0013】 前記特許出願のそれぞれは、図1から図12の同じセットを含み、それらはそ
れぞれ同じ詳細な説明を有する。また、前記特許出願のそれぞれは、開示されて
いるチップ試験システムのさまざまな態様をカバーする請求項の別個のセットを
有する。
【0014】 USSN第09/386,946号に請求されるような発明は、動作の速度に
関する特許第'129号の制約に取り組む。特に、それらのクレームは、そのそ
れぞれが、別個のバスを介して、選択可能な数のチップドライバ回路へ結合され
る選択可能な数のパターン生成器から構成される集積回路チップを試験するため
のシステムをカバーする。各パターン生成器は、そのそれぞれのメモリからワー
ド単位で異なるビットストリームを記憶するそれぞれのメモリにも結合される。
そして、それは、同時にその別個のバスに結合されるチップドライバ回路のすべ
てに、読み取られるワードを送信する。それが発生している間、各チップドライ
バは、それが送信されるワードを、並列で複数の集積回路チップを試験するビッ
ト直列試験信号に変換する。
【0015】 1つの別個のバスに結合されるすべてのチップドライバ回路は、1つのパター
ン生成器から同時にビットストリームのワードを受信するので、動作の速度は従
来の技術より加速される。また、パターン生成器のすべてが別個のバス上で同時
にさまざまなビットストリームを送信するので、動作の速度は従来の技術よりさ
らに加速される。
【0016】 USSN第09/387,197号では、請求されるような発明は、試験デー
タパターンを記憶するためのメモリの非効率的な使用に関する特許第'129号
の制約に取り組む。特に、これらの請求項は、チップを試験するためのビットス
トリームの集合を指定する可変長命令を記憶するメモリに結合されるパターン生
成器から構成される集積回路チップを試験するためのシステムをカバーする。各
可変長命令は、集合の中のビットストリームの数を示す符号を含む。集合の中の
各ビットストリームは、ワード境界で開始し、1ビットという増分で変化する選
択可能な数のビットから成り立つ。未使用のビットのそれぞれの行列は、各ビッ
トストリームの直後に開始し、ワード境界で終了する。
【0017】 符号が、集合内のビットストリームの数が1にすぎないことを示す場合、該1
つのビットストリームは、メモリの連続的なワードに記憶される。符号が、集合
のビットストリームの数が1より多いことを示す場合、それらの複数のビットス
トリームがメモリ内の連続ワードにインタリーブされた様式で記憶される。その
結果、浪費されるメモリセルだけが、各ビットストリームの後に未使用のビット
を記憶するセルである。しかし、それらの未使用のビットは、ビットストリーム
のそれぞれが長いときには、数の上で無意味である。
【0018】 USSN第09/386,945号では、請求されるような発明が、バーンイ
ンボードで試験されているチップによる総電力消散に関する特許第'129号の
制約に取り組む。特に、それらのクレームは、クロック信号を生成する信号生成
器、及びクロック信号を受信する第1入力、コマンドを受信するための第2入力
、及び複数の出力を有する制御回路から構成される集積回路チップを試験するた
めのシステムをカバーする。コマンドソースは、制御回路の第2入力にコマンド
のプログラム可能なシーケンスを送信し、制御回路内の手段はコマンドに応じて
特定の出力を選択し、第1入力から選択された出力だけにクロック信号を渡す。
【0019】 制御回路の出力のすべては、試験されなければならないさまざまなチップにそ
れぞれのクロック送信機を通して結合される。このようにして、プログラム可能
コマンドに応じて、クロック信号は、選択可能な部分集合で、試験されるチップ
に連続して送信することができる。このような順序付けによって、試験されるチ
ップの総電力消散は、チップが、それらがクロック信号を受信するときに大量の
電力を消散するが、それらがクロック信号を受信しないときには実質的にはより
少ない電力を消散する型であるときに調節することができる。このようなチップ
は、例えば、CMOSマイクロプロセッサチップ及びCMOSメモリチップを含
む。
【0020】 前記3つの特許出願(これ以降「ベースシステム」)に開示されるチップの特
徴のすべてにも関わらず、本発明人は、さらに、そのシステムに対する主要な改
善策を発見した。この改善されたシステムによって、チップ用の試験信号を定義
するために必要とされるメモリの量は、数桁削減される。
【0021】 改善されたシステムの好ましい実施態様はここに、及び1ページに特定される
4つの関連ケースのそれぞれで説明される。それぞれのケースでは、改善された
システムは、図及び同じ詳細な説明とともに説明される。また、それぞれのケー
スは、改善されたシステムの異なる態様をカバーするクレームの別個のセットを
有する。
【0022】 改善されたシステムの構造及び動作を完全に理解するために、まず、3つの参
照される特許出願第09/386,946号と第09/387,197号、及び
第09/386,945号に説明されるベースシステムの理解を有することが必
要である。結果的に、それらの詳細な説明だけではなく、それらの出願の図1か
ら図12もここで繰り返される。それから、改善されたシステムは、ここで図1
から図12のベースシステムに対する改良として、図13から図22とともに説
明される。
【0023】 (発明の簡略概要) 本発明は、請求されるように、メモリに記憶されている第1ビットストリーム
または内部で生成される第2ビットストリームで選択的にICチップを試験する
ためのシステムの1つの特定の部分をカバーする。システムの中で、内部で第2
ビットストリームを生成することにより達成される主要な利点とは、メモリ内に
必要とされる記憶の量が大幅に削減されるという点である。例えば、第2ビット
ストリームが、合計10億ビットを含む可能性がある。しかし、それは、メモリ
内の記憶の1000ビット未満を必要とする命令で生成することができる。
【0024】 本発明として請求されるシステムの特定の部分は、ICチップを試験するため
のビットストリームを生成する多段アルゴリズムパターン生成器である。この多
段アルゴリズムパターン生成器は、3段パイプラインとしてともに結合される、
初期段、中間段、及び出力段から構成される。好ましくは、初期段は、外部ソー
スからの一連の命令に応えて第1アドレスの複数の集合を連続して生成する。中
間段は、初期段からの第1アドレスの各集合を連続して記憶し、第1アドレスの
記憶されている集合をアドレスの第2集合に変換し、出力段は、中間段からアド
レスの各第2集合を連続して記憶し、アドレスの記憶されている第2集合からビ
ットを選択することによって、チップを試験するための出力信号を生成する。
【0025】 前記算法パターン生成器を用いて、初期段によって連続して生成される第1ア
ドレスは、仮想または仮説のメモリ内の仮想アドレスとなることがあり、それら
の仮想アドレスは、中間段によって試験されなければならない実際のメモリチッ
プの物理アドレスに変換することができる。この特徴は、複数の異なる種類のメ
モリチップが試験される必要がある場合、及びチップの種類ごとに、メモリセル
が、異なる非連続アドレスによってアドレス指定される行と列で配列される場合
に特に有効である。このようなチップを試験するために、仮想アドレスは、連続
アドレスの1つの固定シーケンスとして初期段によって生成することができ、物
理アドレスは、試験されなければならない特定の種類のメモリチップへのその仮
想アドレスから物理アドレスへの変換を調整することによって中間段で生成する
ことができる。
【0026】 (詳細説明) まず図1〜図12に関して、集積回路チップを試験するためのベースシステム
のある実施態様が説明されるだろう。それ以降、本発明を構成するベースシステ
ムに対する修正は、図13〜図22に関して説明されるだろう。図1が示すよう
に、ベースシステムは、5つの異なる種類のモジュール10〜14から構成され
、各モジュールの説明が、表1の中に以下に示される。
【0027】 表1モジュール 説明 10 各モジュール10は、それらが試験される間に複数の集積回路チップ10
aを保持するチップアセンブリである。図1のシステムでは、チップアセンブリ
10の総数が選択可能である。各チップアセンブリ10は、複数のソケット10
cがはんだつけされる1枚のプリント回路基板10bを含み、各ソケットは、チ
ップ10aの1つを保持する。コネクタ10dはプリント回路基板10bの端縁
に取り付けられ、プリント回路基板内の電気導体10eがコネクタ10dとチッ
プ10aの間で試験信号を搬送する。 11 各モジュール11は、チップドライバ回路である。図1のシステムでは、
別個のチップドライバ回路11がチップアセンブリ10ごとに提供される。各チ
ップドライバ回路11は、図6、図8、図9、及び図10に示される回路構成要
素のすべてを含む。その回路構成要素により、試験信号は、プログラム可能であ
る多様なビット直列シーケンスとして、チップ10aに送信され、チップ10a
から受信される。
【0028】 表1(続き) モジュール 説明 12 各モジュール12はパターン生成器である。図1のシステムでは、各パタ
ーン生成器12は、バス12aを介して、選択可能な数のチップドライバ回路に
結合される。図1は、チップドライバ回路11のすべてがサブグループに区分さ
れ、1つの別個のパターン生成器12が別個のバス12aを介して各サブグルー
プに結合される例を示す。代わりに、チップドライバ回路11のすべては、単一
バス12aによって単一パターン生成器に結合できる。あるいは、各チップドラ
イバ回路11は、別個のバス12aによって別個のパターン生成器に結合できる
。各パターン生成器12は、図5と図6に示される回路構成要素のすべてを含む
。その回路構成要素によって、各パターン生成器12は、チップ10cを試験す
るための特定のビット直列シーケンスを指定するプログラム可能な命令の別個の
シーケンスを実行する。命令を実行する際に、各パターン生成器12は、ビット
直列シーケンスをワードに区分し、該ワードを、そのバス12aに結合されるチ
ップドライバ回路11のすべてに一斉送信する。 13 各項目13は、ランダムアクセス読み書きメモリである。別個のメモリ1
3が、パターン生成器12ごとに提供される。各メモリ13は、対応するパター
ン生成器によって実行されるプログラム可能命令の別個のシーケンスを記憶する
。これらの命令は、アクセスポート13aを介してパターン生成器12によって
メモリ13から読み取られ、それらは別のアクセスポート13bを介してメモリ
の中に書き込まれる。両方のアクセスポートとも同時に動作する。したがって、
いくつかの命令をポート13aから読み取ることができるが、同時にその他の命
令をポート13bの中に書き込むことができる。 14 モジュール14は、図1のシステム全体の動作を命令する単一ホストコン
ピュータである。ホストコンピュータ14は、バス13cを介して、メモリ13
のすべてでポート13bに結合される。ホストコンピュータ14の中に含まれて
いるのは、ディスク14a、キーボード14b、及びモニタ14cである。ディ
スク14aに記憶されているのは、パターン生成器12用の複数のプログラムで
あり、それぞれのこのようなプログラムがチップ10cを試験するための信号の
特定のビット直列シーケンスを指定するプログラム可能命令の別のセットを含む
。プログラムの内の1つを選択し、特定のパターン生成機のメモリ13にそれを
送信するために、オペレータ(図示されていない)はキーボード14bを介して
ホストコンピュータ14に多様なコマンドを入力する。それ以降、選択されたプ
ログラムでチップを試験することから得られる結果は、メモリ13内のパターン
生成器によって記憶され、それらはホストコンピュータ14によってモニタ14
cの上で表示される。
【0029】 次に図2を参照すると、それは、モジュール10〜14のすべてが、どのよう
にして1つのシステムとしてともに物理的に実装されるのかを示す。図2のアイ
テム20は、スタック内で互いの上に配列される複数の水平スロット21−1、
21−2等を有する機械的なラックである。それぞれのスロットは、1チップア
センブリ10を加えた1つのドライバ回路11を保持するか、あるいはそれは1
つのメモリ13を加えた1つのパターン生成器12を保持する。
【0030】 図2は、ラック20内のスロットの総数が14である例を示す。一番上のスロ
ットは21−1であり、次のスロットは21−2である等。図2では、スロット
21−1〜21−14が以下のように占有される。
【0031】 スロット21−1〜21−7のそれぞれが、チップアセンブリ10を加えたド
ライバ回路11を保持し、次のスロット21−8は、そのメモリ13を加える1
つのパターン生成器12を保持する。スロット21−8内のパターン生成器12
は、バス12aによってスロット21−1〜21−7の7つのドライバ回路に結
合される。そのバス上では、スロット21−8内のパターン生成器が、スロット
21−1〜21−7内にあるチップドライバ回路のすべて7つにビット直列試験
信号を一斉送信する。
【0032】 スロット21−9は、チップアセンブリ10を加えるドライバ回路11を保持
し、スロット21−10は、そのメモリ13を加える1つのパターン生成器12
を保持する。スロット21−10内のパターン生成器は、バス12aによってス
ロット21−9内のドライバ回路に結合され、そのバス上で、スロット21−1
0内のパターン生成器が、スロット21−9内の1チップドライブ回路だけにビ
ット直列試験信号を送信する。
【0033】 スロット21−11〜21−13のそれぞれが、チップアセンブリ10を加え
たドライバ回路11を保持し、次のスロット21−14が、そのメモリ13を加
えた1つのパターン生成器12を保持する。スロット21−14内のパターン生
成器は、バス12aによってスロット21−11〜21−14内の3つのドライ
バ回路に結合され、そのバスの上でスロット21−14内のパターン生成器が、
スロット21−11〜21−13内にあるチップドライバ回路の3つすべてにビ
ット直列試験信号を一斉送信する。
【0034】 スロット21−8、21−10、及び21−14内のメモリ13のそれぞれが
、パターン生成器12によって一斉送信されるビット直列試験信号を定義する複
数の種類の命令の異なるシーケンスを記憶する。3つの異なる種類の命令が図3
に示される。命令31は、第1の種類であり、命令32は、第2の種類であり、
命令33は第3の種類である。
【0035】 第1種類の各命令31は、演算コードOP、ワードカウントWCNT、及びビ
ットカウントBNCTを含むワードW0を含む。演算コードがOP1というある
特定の値を有するとき、命令31は、ビットストリームTDIを、試験されるチ
ップ10aないにあるデータレジスタの中に書き込ませる。演算コードがOP2
という別の特定の値を有するとき、命令31は、チップ10a内にある命令レジ
スタの中にTDIビットストリームを書き込ませる。
【0036】 演算コードOP1とOP2の両方について、書き込まれるTDIビットストリ
ームは、図3に図示されるように命令31の中で指定される。このTDIビット
ストリームは、ワードW0の直後に開始し、それは1ビットの増分で変化する長
さを有する。TDIビットストリームのビット総数は(WCNT−1)(X)+
BCNTであり、この場合Xはワード当たりのビット数である。TDIビットス
トリームを指定しない最後のワードの中のすべてのビットが未使用である。
【0037】 第2種類の各命令32は、演算コード、ワードカウントWCNT、及びビット
カウントBCNTを含むワードW0を含む。演算コードがOP3というある特定
の値を有するとき、命令32が、チップ10a内のデータレジスタの内容を読み
取らせ、選択的に命令の中のデータストリームと比較させる。演算コードがOP
4という別の特定の値を有するとき、命令32は、チップ10a内の命令レジス
タの内容を読み取らせ、選択的に命令の中のデータストリームと比較させる。
【0038】 演算コードOP3とOP4の両方について、2つのビットストリームETD0
とMASKが、比較動作で使用するために命令32の中で指定される。それらの
2つのビットストリームはワードW0の直後に開始し、それらは図3に図示され
るようにワード単位でインタリーブされる。MASKビットストリーム内のi番
目のビットが「1」である場合には、チップから読み出されるi番目のビットは
比較動作に参加し、チップからのその特定のビットはETDOビットストリーム
内のI番目のビットに比較される。ビットストリームETDO及びMASKは長
さが可変であり、それらのビットストリームのそれぞれでのビット総数は(WC
NT−1)(X)+BCNTである。ETDOビットストリームとMASKビッ
トストリームを指定しない最後の2つのワード内のビットのすべては未使用であ
る。
【0039】 第3種類の各命令33は、演算コードOP、ワードカウントWCNT、及びビ
ットカウントBCNTを含むワードW0を含む。演算コードがOP5というある
特定の値を有するとき、命令33は、ビットストリームTDIをチップ10a内
のデータレジスタの中に書き込ませると同時に、命令33はチップ10a内のデ
ータレジスタの内容を読み取らせ、命令の中のデータストリームと選択的に比較
させる。演算コードがOP6という別の特定の値を有するときには、命令33は
、TDIビットストリームをチップ10aの中の命令レジスタの中に書き込ませ
ると同時に、命令33は、チップ10aの命令レジスタのコンテンツを読み取ら
せ、命令の中のデータストリームと選択的に比較させる。
【0040】 演算コードOP5とOP6の両方について、TDIビットストリームは、命令
33内で指定され、2つのそれ以外のビットストリームETD0とMASKも比
較動作で使用するために命令の中で指定される。これらの3つのビットストリー
ムはワードW0の直後に開始し、それらは図3に図示されるようにワード単位で
インタリーブされる。MASKビットストリームのi番目のビットが「1」であ
る場合には、チップから読み出されるI番目のビットが比較動作に参加し、チッ
プからのその特定のビットはETDOビットストリームのI番目のビットに比較
される。3つのビットストリームTDI、ETDO、及びMASKのそれぞれは
長さが可変である。それらのビットストリームのそれぞれでのビットの総数は(
WCNT−1)(X)+(BCNT)である。TDIビットストリーム、ETD
Oビットストリーム及びMASKビットストリームを指定しない最後の3つのワ
ード内のビットのすべてが未使用である。
【0041】 パターン生成器12が命令31、32、及び33のそれぞれを実行するとき、
それは、図3の命令の中で述べられない追加のビットストリームも生成する。そ
の追加のビットストリームは、チップ10aを、データレジスタを選択的に読み
取り、データレジスタを書き込み、命令レジスタを読み取るか、あるいは命令レ
ジスタを書き込む特定の状態にするTMSと呼ばれる制御信号として使用される
。各TMSビットストリームは、命令レジスタまたはデータレジスタのどちらか
が使用される必要があると指定する演算コードOP1〜OP6、及びTMS信号
内のビット数を決定するWCNTカウント及びBCNTカウントに応じて生成さ
れる。
【0042】 図4は、3種類の命令31、32及び33が、パターン生成器12用の各メモ
リ13内の異なるシーケンスにどのようにして記憶されるのかの例を示す。図4
の例では、命令のシーケンスはI(k)、I(k+1)...等である。命令I
(k+1)とI(k+3)は、第1種類31であり、命令I(k)とI(k+4
)は第2種類であり、命令I(k+2)とI(k+5)は第3種類33である。
【0043】 第1種類の各命令31は、OP1またはOP2という演算コードで特定され、
それは単一の可変長ビットストリームTDIを指定する。第2種類の各命令32
はOP3またはOP4という演算コードによって特定され、それは2つの可変長
ビットストリームETDOとMASKを指定する。第3種類の各命令33はOP
5またはOP6という演算コードによって特定され、それは3つの可変長ビット
ストリームTDI、ETDO及びMASKを指定する。使用されないビットのそ
れぞれの系列(NU)は、各直列ビットストリームの直後に開始し、ワード境界
で終了し、それがシーケンス内の次の命令をつねにワード境界で開始できるよう
にする。
【0044】 ここで図5を見ると、各パターン生成器12内にある回路構成要素の詳細が説
明されるだろう。その回路構成要素は、順次状態機械40、カウンタ41、7台
のレジスタ42−48のセット、マルチプレクサ49、及び発振器50を含む。
それらの構成部品40〜50のすべてが、図示されているように互いに相互接続
されている。
【0045】 レジスタ42〜48のそれぞれだけではなく、カウンタ41もデータ入力Dと
クロック入力Cのセットを有する。入力Dに関するデータをカウンタまたはある
特定のレジスタに記憶するために、状態機械40はクロックパルスをクロック入
力Cに送信する。カウンタ42は、カウントダウン入力CDも有し、該カウンタ
は、パルスがCD入力で受信されるとその記憶されているカウントを1減分する
【0046】 動作中、構成部品41〜48のそれぞれは、以下の情報を記憶するために状態
機械40によって使用される。レジスタ42は、図3の命令31、32、及び3
3の第1ワードW0で発生する演算コードOPを記憶する。カウンタ41は、ワ
ードカウントWCNTを記憶し、レジスタ43はビットカウントBCNTを記憶
し、それは図3の命令のそれぞれの第1ワードW0で発生する。
【0047】 レジスタ44は、図3の命令31と33で発生するビットストリームTDIの
1ワードを記憶する。レジスタ45は、図3の命令32と33で発生するビット
ストリームETDOの1つのワードを記憶する。そして、レジスタ46は、図3
の命令32と33で発生するビットストリームMASKの1つのワードを記憶す
る。
【0048】 レジスタ47は、図3の命令の実行中にパターン生成器12によって内部で生
成される追加のビットストリームTMSの1つのワードを記憶する。レジスタ4
8は、まもなく説明されるだろう方法でパターン生成器12とチップドライバ回
路11の両方によって内部で使用される多様な制御ビットを記憶する汎用目的レ
ジスタである。
【0049】 図3の命令の1つの実行の開始時に、パターン生成器12は、メモリ13から
命令の第1ワードW0を読み取る。その読み取り動作を実行するために、状態機
械40は、図1に示されるメモリ13のポート13aに移動するアドレス線路4
0aの集合でメモリアドレスMADDRを送信する。応じて、メモリ13のポー
ト13aは、データ線路40bの集合上でのめ森データMDATAとしてアドレ
ス指定されるワードを状態機械40に送信する。それから、状態機械40は、レ
ジスタ42にOP符号を記憶するため、カウンタ41にワードカウントWCNT
を記憶するため、及びレジスタ43にビットカウントBCNTを記憶するために
3つのクロック線路40c〜40eでクロックパルスを送信する。
【0050】 それ以降、状態機械40は、レジスタ42内にあるOP符号を調べる。レジス
タ42内のOP符号が、命令がTDIデータストリームを含む種類であることを
示す場合には、そのデータストリームの第1ワードはメモリ13から読み出され
、レジスタ44に記憶される。レジスタ42内のOP符号が、命令がETDOデ
ータストリームを含む型であることを示す場合、そのデータストリームの第1ワ
ードがメモリ13から読み出され、レジスタ45に記憶される。レジスタ42内
のOP符号が、MASKデータストリームを含む型であることを示す場合には、
MASKデータストリームの第1ワードはメモリ13から読み取られ、レジスタ
46に記憶される。
【0051】 前記データストリームワードは、アドレス線路40aでメモリアドレスを連続
して送信し、データ回線40bでメモリ13からアドレス指定されたワードを受
信することによって、パターン生成器状態機械40を介して一度に1つ得られる
。メモリ13からのそれぞれの受信されたワードは、クロック回線40f、40
gまたは40hの1つでクロックパルスを送信することによって、適切なレジス
タ44、45または46に記憶される。
【0052】 前記動作に続いて、状態機械40は、前述された追加のビットストリームTM
Sの1つのワードを内部で生成する。TMSビットストリームのその内部で生成
されたワードは、信号線路40iの集合で送信され、それはクロック線路40j
でクロックパルスによってTMSレジスタ47にロードされる。
【0053】 それ以降、状態機械40は、JDATAと呼ばれるデータ信号を搬送するデー
タ線路55の集合に、過去にロードされたレジスタ44〜47の出力を連続して
渡すためにマルチプレクサ49を使用する。マルチプレクサ49を通してある特
定のレジスタの出力を渡すために、状態機械40は、マルチプレクサ49につな
がる制御線路40kの集合で、SEL(i)と呼ばれる信号を生成し、制御する
【0054】 レジスタの出力がJDATA線路55で送信される間、状態機械40は、アド
レス線路56の集合でJADDRと呼ばれるアドレス信号も生成し、それらのア
ドレス信号がJDATA信号の目的地を決定する。JDATA信号及びJADD
R信号が送信されているときを示すために、状態機械40は、クロック線路57
上でJSTROSEと呼ばれるパルスを送信する。また、状態機械40は、クロ
ック線路58でBUSCKと呼ばれる自由に動作するクロックを送信する。線路
55〜58のすべてが、パターン生成器12を選択可能な数のチップドライバ回
路11に接続する図1と図2に示されているバス12aをともに構成する。
【0055】 次に、図6に関して、チップドライバ回路11のそれぞれの中にある回路構成
要素の詳細が説明されるだろう。その回路構成要素は、アドレスデコーダ60、
5台のレジスタ61〜65のセット、4つの並列から直列へのシフトレジスタ6
6−69、シフト制御回路70、及び可変遅延線路71を含む。構成部品60〜
71のすべては、図6に示されるように互いに相互接続される。
【0056】 レジスタ61〜65のそれぞれは、データ入力D、及びイネーブル入力E、及
びクロック入力Cの集合を有する。データ入力Dは図5のパターン生成器からデ
ータ信号JDATAを受信し、クロック入力Cはパターン生成器からJSTRO
BEクロックパルスを受信する。JDATA信号を特定のレジスタ61〜65の
中に記憶するために、別個のイネーブル信号E1〜E6がそのレジスタのイネー
ブル入力Eに送信される。
【0057】 レジスタ61〜65用のイネーブル信号のすべては、信号回線60a−60e
の集合でアドレス復号回路60によって生成される。イネーブル信号E1はレジ
スタ61に送信される。イネーブル信号E2はレジスタ62に送信される等であ
る。これらのイネーブル信号E1〜E5は、JADDRアドレス線路56の特定
のアドレスを復号することによってアドレスデコーダ60内に生成される。
【0058】 動作中、図5のパターン生成器状態機械40は、レジスタ62〜65が以下の
情報を記憶するように、JADDR信号、JDATA信号及びJSTROBE信
号を送信する。MASKビットストリームの1つのワードはレジスタ62に記憶
され、そのワードはマルチプレクサ50を通って図5のレジスタ47から送信さ
れる。TDIビットストリームの1つのワードはレジスタ63に記憶され、その
ワードはマルチプレクサ50を通って図5のレジスタ44から送信される。ET
DOビットストリームの1つのワードは、レジスタ64に記憶され、そのワード
はマルチプレクサ50を通って図5のレジスタ45から送信される。TMSビッ
トストリームの1つのワードはレジスタ65に記憶され、そのワードはマルチプ
レクサ50を通って図5のレジスタ47から送信される。
【0059】 レジスタ62〜65のそれぞれは、並列/直列シフトレジスタ66−69の1
つでデータ入力Dにそれぞれ結合される。それらの並列/直列シフトレジスタは
、LOAD入力L及びCLOCK入力Cも有する。クロック入力CがSERIA
LCKクロック信号の立ち上がり縁を受信するときに入力LでのLOAD信号が
「1」状態にある場合、データ入力信号のすべてが並列/直列シフトレジスタ6
6〜69に記憶される。それ以外の場合、SERIALCKクロック信号の立ち
上がり縁が発生するときにLOAD信号が「0」状態にある場合、レジスタ66
〜69のすべては、それらが記憶するデータの1ビットを外にシフトする(sh
ift out)。
【0060】 LOAD信号及びSERIALCK信号の両方とも、シフト制御回路70によ
って生成され、それはTMSビットストリームのワードをレジスタ65の中にロ
ードできるようにするイネーブル信号e5に応じて動作する。イネーブル信号E
5によってTMSレジスタがロードされた後、シフト制御回路70は線路70a
でSERIALCKクロック信号の生成を開始する。これは、クロック線路58
からクロック線路70aにバス黒く信号BUSCKの動作をゲート制御すること
によって行われる。
【0061】 SERIALCKクロック信号の第1サイクルの場合、シフト制御回路70は
、「1」としてのLOAD信号を直列/並列レジスタ66〜69のすべてに送信
し、それによりレジスタ66〜69は、レジスタ62〜65に保持されるビット
ストリームの1つのワードを記憶する。それから、シフト制御回路70はLOA
D信号を「0」として生成し、それにより並列/直列レジスタ66〜69のそれ
ぞれに、それらが記憶していたビットストリームのワードを外にシフトさせる。
【0062】 レジスタ66〜69からのそれぞれのビットはSERIALCKクロックと同
期してシフトされる。MASKビットストリームは信号線路66aにシフトされ
、TDIビットストリームは信号線路67aにシフトされ、ETDOビットスト
リームは信号線路68aにシフトされ、TMSビットストリームは信号線路69
aにシフトされる。このシフトは、シフトレジスタ66〜69のそれぞれが空に
されるまでLOAD信号の「0」状態に応じて続行する。
【0063】 ビットストリームMASK、TDI、ETDO及びTMSのどれか1つが第2
ワードの中に拡張すると、それらのワードは、前記シフトが発生している間に、
パターン生成器状態機械40によってメモリ13から読み取られ、レジスタ62
〜65の中にロードされる。そのケースでは、シフト制御回路70は、イネーブ
ル信号E5が再びTMSレジスタ65に2度目に送信されたことを思い出すだろ
う。
【0064】 後に、シフトレジスタ66〜69が空になると、シフト制御回路70は、第2
イネーブル信号E5が送信されたかどうかを確かめるためにチェックするだろう
。送信されていた場合、シフト制御回路70は、再び、直列/並列レジスタ66
〜69のすべてにLOAD信号を「1」として送信し、それによりレジスタ66
〜69は、レジスタ62〜65に保持されるビットストリームの第2ワードを記
憶するだろう。それから、シフト制御回路70は、並列/直列レジスタ66〜6
9が、それらが記憶しているビットストリームの第2のワードを外にシフトする
までLOAD信号を「0」として生成するだろう。
【0065】 前記ロード及びシフトは、メモリ13の中の命令について直列ビットストリー
ムの終わりに達するまで続行する。それから、ビットストリームの最後のビット
がレジスタ66〜69からシフトされると、シフト制御回路70はクロック線路
70aでクロック信号SERIALCKを生成するのを停止する。
【0066】 前述された動作のすべてに加えて、図6のチップドライバ回路は、クロック線
路71aでクロック信号TCKも生成する。このTCKクロック信号は、線路5
3上のBUSCK信号の遅延されたレプリカであり、それは可変遅延回路71に
よって生成される。可変遅延回路を通る遅延の量は、レジスタ61に記憶される
信号線路61aの制御信号によって選択される。
【0067】 次に図7を参照すると、それは図3の各命令が図5のパターン生成器及び図6
のチップドライバ回路によって実行される全体的なシーケンスを描く。当初、パ
ターン生成器状態機械40は、それがそのメモリ13から命令の第1ワードW0
を読み出す状態S1にある。それ以降、状態S2では、状態機械40が、それが
実行している命令の種類を決定するためにレジスタ42内の演算コードを調べる
【0068】 命令が第1種類31または第3種類33である場合、状態機械40はTDIビ
ットストリームの1つのワードを読み取り、これは状態S3で発生する。そのワ
ードは、状態機械40によってレジスタ44に記憶される。
【0069】 命令が第2種類32または第3種類33である場合、状態機械40はETDO
ビットストリームの1つのワードを読み取り、これは状態S4で発生する。ET
DOビットストリームのそのワードはレジスタ45に記憶される。
【0070】 また、命令が第2種類32または第3種類33である場合には、状態機械40
は、MASKビットストリームの1つのワードを読み取り、これは状態S5で発
生する。MASKビットストリームのそのワードは、状態機械40によってレジ
スタ46に記憶される。
【0071】 それ以降、状態機械40は、TMSビットストリームの1つのワードを内部で
生成し、これが状態S6で発生する。TMSビットストリームのそのワードは、
状態機械40によってレジスタ47に記憶される。
【0072】 次に状態S7では、状態機械40が、それが第1種類命令31または第3種類
命令33を実行している場合には、TDIビットストリームの1つのワードを一
斉送信する。TDIビットストリームのこのワードは、レジスタ44からマルチ
プレクサ49を通って、パターン生成器に接続される各チップドライバ回路のレ
ジスタ63の中に送信される。
【0073】 次に状態S8では、状態機械40が、それが第2種類命令32または第3種類
命令33を実行している場合には、ETDOビットストリームの1つのワードを
一斉送信する。ETDOビットストリームのこのワードは、レジスタ45からマ
ルチプレクサ49を通って、パターン生成器に接続される各チップドライバ回路
のレジスタ64の中に送信される。
【0074】 次に状態S9では、状態機械40は、それが第2種類命令32または第3種類
命令33を実行している場合には、MASKビットストリームの1つのワードを
一斉送信する。MASKビットストリームのこのワードは、マルチプレクサ49
を通ってレジスタ46から、パターン生成機に接続される各チップドライバ回路
のレジスタ62の中に送信される。
【0075】 次に状態S10では、状態機械40がTMSビットストリームの1つのワード
を一斉送信する。TMSビットストリームのこのワードはレジスタ47からマル
チプレクサ49を通って、パターン生成器に接続される各チップドライバ回路の
レジスタ65の中に送信される。
【0076】 それから状態S11では、状態機械40は、カウンタ41内のワードカウント
WCNTを1減ビンし、結果がゼロであるかどうかを確かめるためにチェックす
る。結果がゼロではない場合には、状態S3〜S10での動作のすべてが繰り返
される。それ以外の場合、結果がゼロである場合には、状態機械40は状態S1
になることによって次の命令の実行を開始する。
【0077】 状態機械40が状態S10のTMSビットストリームのワードを一斉送信する
たびに、そのイベントは、パターン生成器に接続される各チップドライバ回路内
のシフト制御回路70によって思い出される。それから並列/直列シフトレジス
タ66〜69が空である場合には、それらは保持レジスタ62〜65の内容をロ
ードされる。これは、チップドライバ回路が状態S21にあるときに発生する。
【0078】 それ以降、並列/直列シフトレジスタ66〜69のコンテンツが信号線路66
a〜69aにシフトされる。それは、チップドライバ回路が状態S22にあると
きに発生する。それから、シフトレジスタ66〜69の最後のビットが外にシフ
トされているときには、シフト制御回路70は、レジスタ65がTMSビットス
トリームの別のワードをロードされたかどうかを確かめるためにチェックする。
ロードされている場合、状態S21とS22のシフト動作が繰り返される。
【0079】 TDI、ETD0、MASK及びTMSのビットストリームの長さが数ワード
であるときには、チップドライバ回路11内の状態S21とS22がパターン生
成器12の状態S3〜S11と同時に発生する。その同時動作のために、チップ
ドライバ回路11及びパターン生成機12は、チップドライバ回路が、パターン
生成器がビットストリームの次のワードを読み取り、一斉送信する間にビットス
トリームの1つのワードからビットをシフトする多段パイプラインとしての役割
を果たす。
【0080】 また、パターン生成器状態機械40が次の命令の実行を開始するとき、チップ
ドライバ回路11は、状態S22で、並列/直列シフトレジスタ66〜69に残
るあらゆるビットをシフトするために状態S22で続行する。その同時動作のた
め、チップドライバ回路11およびパターン生成器12は、再び、チップドライ
バ回路が、パターン生成器が次の命令のワードW0を読み取り、復号している間
に、1つの命令のビットストリーム内でビットをシフトする多段パイプラインと
しての役割を果たす。
【0081】 ここで図8を見ると、それは、各チップドライバ回路が試験される集積回路チ
ップとどのようにして相互結合されるのかに関する追加の詳細を示す。図8では
、参照番号10は、図1と図2に示される同じチップアセンブリを特定し、参照
番号10aは、試験されなければならないアセンブリ10の中でチップを特定す
る。
【0082】 アセンブリ10の中で試験されなければならない各チップ10aについて、1
台の受信機85を加えた4台の送信機81〜84の別個の集合がチップドライバ
回路11で提供される。各送信機81は、線路71aから別個のチップ10aに
クロック信号TCKを送信する。各送信機82はビットストリームTDIを線路
67aから別個のチップ10aに送信する。各送信機83は、線路69aから別
個のチップ10aにビットストリームTMSを送信する。そして、各送信機84
は、図9と図10とともに後に後述されるだろうそれぞれの高周波クロックHF
CK(i)を、別個のチップ10aに送信する。
【0083】 送信機81〜84から受信される信号に応じて、アセンブリ10の中のそれぞ
れのチップ10aが、TDOと呼ばれる別個の出力ビットストリームを生成する
。そのTDOビットストリームは、各チップ10aから、チップドライバ回路上
の別個の受信機85に送信される。受信機85から、TD0ビットストリームの
すべてが、図8に図示されるチップドライバ回路の残りの構成部品90〜98に
よって並列で処理される。
【0084】 図8の構成部品90は、排他的論理和ゲートであり、構成部品91は論理積ゲ
ートであり、構成部品92はフリップフロップである。構成部品90〜92の別
個の集合が受信機85のそれぞれに提供される。図8の構成部品93はマルチプ
レクサであり、構成部品94はデコーダ回路であり、構成部品95は可変遅延回
路であり、構成部品96はレジスタであり、構成部品97はデコーダ回路であり
、構成部品98はレジスタであり、構成部品99はデコーダ回路である。
【0085】 動作中、ビットストリームETDO、MASKおよびTCKは可変遅延回路9
5を通って送信され、それによりそれぞれDETDO、DMASK、およびDT
CKと呼ばれる3つの対応する遅延されたビットストリームを生成する。可変遅
延回路95を通る遅延の量は、レジスタ96の出力によって選択され、その遅延
が、TDOビットストリームを生成する各チップ10a内で発生する遅延を補償
する。ある特定の遅延を選択するために、レジスタ96は、デコーダ回路97が
所定のJADRアドレスを検出するときにJDATA信号をロードされる。
【0086】 遅延回路95から、遅延ビットストリームDETDOは、それが受信機85の
すべてから生じるTDOビットストリームに比較される排他的論理和ゲート90
のすべてに送信される。DETDOビットストリーム内の任意のビットとTDO
(i)ビットストリーム内の対応するビットの間でmiscompareが発生
すると、miscompareが発生する排他的論理和ゲート90は「1」状態
で出力信号ERA(I)を生成するだろう。
【0087】 排他的論理和ゲート90からのエラー信号ERA(i)のそれぞれが、論理積
ゲート91の別個の1つに送信され、それらの論理積ゲートは、その他の入力信
号も受信する。一方のこのような入力信号は遅延されたビットストリームDMA
SKであり、他方の入力信号はレジスタ98からの別個のイネーブル信号EN(
I)である。エラー信号ERA(i)がTDO(i)ビットストリーム内のある
特定のビットについて「1」であり、DMASK信号の対応するビットも「1」
であり、イネーブル信号EN(i)も「1」である場合には、I番目の論理積ゲ
ートからの出力信号ERB(I)は「1」である。
【0088】 ビットストリームTDO(i)内の任意の1つの特定のビットでのmisco
mpareを無視するために、DMASビットストリームの対応するビットは「
0」に設定される。また、ビットストリームTDO(I)全体が、対応するイネ
ーブル信号EN(i)を「0」に設定することによって無視することができる。
【0089】 論理積ゲート91の任意の1つからのエラー信号ERB(i)が「1」になる
と、それにより、対応するフリップフロップ92が設定されることになる。設定
されるようになる各フリップフロップ92は、それ以降、それがパターン生成器
12によって読み取られ、リセットされるまで設定されたままとなるだろう。
【0090】 エラーフリップフロップ92を読み取るために、パターン生成器12はある特
定のJADRアドレスをデコーダ回路94に送信し、応じてデコーダ回路94が
、マルチプレクサ93を通してJDATA線路50上にフリップフロップ9のす
べてからのエラー信号を渡す出力94aで信号を生成する。それからパターン生
成器12は、デコーダ回路94に、フリップフロップ92のすべてをリセットす
る出力94bで信号を生成させる。
【0091】 次に図9に関して、チップドライバ回路のそれぞれの中に含まれる複数の追加
回路構成部品100〜109が説明されるだろう。これらの構成部品100〜1
09のすべては、試験されているチップ10aごとに別個の高周波クロック信号
HFCK(i)を生成するために相互作用する。
【0092】 図9では、構成部品100は自由継続高周波発振器である。構成部品101は
デコーダ回路である。構成部品102はレジスタであり、構成部品103は、選
択可能な整数Nで除算する割り算器回路である。構成部品104は順次状態機械
である。構成部品105は、状態機械104のためにカウントを保持するカウン
タ回路であり、構成部品106は、状態機械104について制御信号を保持する
メモリである。構成部品107はフリップフロップである。構成部品108は論
理和ゲートであり、構成部品109は送信機である。構成部品107〜109の
別個の集合110(i)は、生成される高周波クロック信号HFCK(i)ごと
に提供される。
【0093】 動作中、発振器100は、単一高周波で自由継続クロックFRCK1を生成す
る。そのクロック信号FRCK1は、それが選択可能な整数N分、周波数で削減
される割り算器回路103に送信される。それから、割り算器103からの出力
クロックFRCK2が、回路107〜109の各集合10(i)に送信される。
【0094】 回路110(i)の各集合は、自由継続クロックFRCK2の選択可能なサイ
クルを渡すことによって、高周波クロック信号HFCK(i)を生成する。渡さ
れるそれらのサイクルは、2つの制御信号START(i)とSTOP(i)に
よって選択され、それらは順次状態機械104によって生成される。
【0095】 信号STOP(i)が「1」として生成されるとき、フリップフロップ107
は自由継続クロック信号FRCk2と同期してセットする。フリップフロップ1
07のそのセット状態により、論理積ゲート108の出力は絶えず「1」を生成
する。そしてこのようにして、高周波クロック信号HFCK(i)が「1」の状
態で停止されるだろう。
【0096】 フリップフロップ107をリセットするために、状態機械104がSTOP(
i)信号を「0」として生成し、それはSTART(i)信号を「1」として生
成する。フリップフロップのそのリセット状態が、論理積ゲート108にクロッ
ク信号FRCK2を渡させ、論理積ゲート108の出力から、高周波クロックF
RCK2は、それがクロック信号HFCK(i)になる送信機109を通して渡
す。
【0097】 回路110(i)の集合ごとに制御信号STOP(i)とSTART(i)を
生成するために、状態機械104は、制御メモリ106に記憶される多様な制御
ビットを読み取る。それらの制御ビットの例は、図10の「1」と「0」に示さ
れる。制御ビットの1つの集合を読み取るために、状態機械104は、アドレス
線路104aのアドレスをメモリ106に送信し、応じてメモリが制御ビットの
アドレス指定された集合を、信号線路104b上の状態機械104に送り返す。
【0098】 図10は、制御ビットの各集合がビットB1〜B16として特定される16個
のビットから成り立つ例を示す。第1の14個のビットB1〜B14のそれぞれ
が、回路110(i)のある特定の回路の動作を制御する。ビットB1は回路1
10(1)を制御する。ビットB2は回路110(2)を制御する等である。残
りのビットB15とB16は、状態機械104をまたは自由継続モードのどちら
かで動作させるモード制御ビットである。
【0099】 状態機械104がJDATA線路上のある特定のメモリアドレスとともにデコ
ーダ101からSTARTコマンドを送信されると、それはそのアドレスにある
メモリ106から制御ビットの集合を読み取るだろう。状態機械104が、ビッ
トB15が「1」である制御ビットの集合を読み取る場合には、状態機械がシー
ケンスモードで動作する。そのモードでは、状態機械104は、それがメモリ1
06に送信するアドレスを連続して増分し、応答して状態機械が制御信号のアド
レス指定された集合を受信する。このシーケンス動作モードは、制御ビットの集
合が読み取られるまで続行し、そこではビットB16は「1」であり、それから
シーケンス動作モードが停止する。
【0100】 シーケンスモードで読み取られる制御信号の集合ごとに、状態機械104は、
制御ビットB1〜B14を調べる。「1」であるビットB1〜B14のそれぞれ
が状態機械104に、回路110(i)が、カウンタ105によって指定される
サイクルの数、クロックFRCK2を渡すように、STOP(i)信号およびS
TART(I)信号を生成させる。
【0101】 図10では、アドレス「A」によって読み取られる制御ビットの集合がビット
B1〜B4を「1」に設定させる。このようにして、制御ビットのその集合に応
じて、状態機械104は、回路110(1)〜110(4)のそれぞれに、カウ
ンタ105によって指定されるサイクルの数、クロック信号FRCK2を渡させ
る。
【0102】 次に、アドレス「A+1」によって読み取られる制御ビットの集合は、ビット
B5〜B7を「1」に設定させる。このようにして、制御ビットのその集合に応
じて、状態機械104は、回路105(5)〜110(7)のそれぞれに、カウ
ンタ105によって指定されるサイクルの数、クロック信号FRCK2を渡させ
る。
【0103】 次に、アドレス「A+2」によって読み取られる制御ビットの集合は、ビット
B8〜B11を「1」に設定させる。このようにして、制御ビットのその集合に
応じて、状態機械104は、回路110(8)〜110(1)のそれぞれに、カ
ウンタ105によって指定されるサイクルの数、クロック信号FRCK2を渡さ
せる。
【0104】 最後に、アドレス「A+3」によって読み取られる制御ビットの集合は、ビッ
トB12〜B14を「1」に設定させる。このようにして、制御ビットのその集
合に応じて、状態機械104は、回路110(12)〜110(4)のそれぞれ
に、カウンタ105によって指定されるサイクルの数、クロック信号FRCK2
を渡させる。
【0105】 比較によって、状態機械104がビットB15が「0」である制御ビットの集
合を読み取る場合には、状態機械は自由継続モードで動作する。そのモードでは
、状態機械104は、それがメモリ106に送信するアドレスを増分しないが、
代わりに、状態機械は、それが読み取った制御信号の1つの集合だけで連続して
動作する。
【0106】 制御信号のその単一の集合を使用して、状態機械104は、再び制御ビットB
1〜B14を調べる。「1」であるビットB1〜B14のそれぞれが、回路11
0(i)がクロックFRCK2を連続して渡すように、状態機械104にSTO
P(i)信号およびSTART(i)信号を生成させる。この運転の自由継続モ
ードを終了する場合には、状態機械104は、デコーダ101から停止コマンド
を送信される必要があり、そのコマンドは、デコーダ101がある特定のJAD
Rアドレスを受け取るときに送信される。
【0107】 図10では、アドレス「A+4」によって読み取られる制御ビットの集合はビ
ットB15を「0」に設定させ、それにより状態機械104が自由継続モードに
入る。また、アドレス「A+4」にある制御ビットの集合では、ビットB1〜B
14のすべてが「1」に設定されるため、応じて、状態機械104は、回路11
0(1)〜110(14)のそれぞれに、STOPコマンドが受け取られるまで
クロック信号FRCK2を連続して渡させる。
【0108】 図10においても同様に、アドレス「A+5」によって読み取られる制御ビッ
トの集合は、B15を「0」に設定させ、それにより状態機械104は自由継続
モードに入る。しかしながら、アドレス「A+5」での制御ビットの集合では、
ビットB2だけが「1」に設定されるため、応じて、状態機械104は回路11
0(2)だけにクロック信号FRCK2を渡させるだろう。
【0109】 図9および図10の回路構成要素で達成される1つの特定の特徴とは、それが
チップ汗名振10の中のチップ10aを1つの集合として同時に、あるいは選択
可能な部分集合で連続的に試験できるようにする点である。この特徴は、試験さ
れているチップ10aが、それらが高周波クロック信号HFCK(i)を受信す
るときに大量の電力を消散するが、それらが高周波クロック信号を受信しないと
きには実質的にはより少ない電力を消散する型であるときに望ましい。このよう
なチップは、例えばCMOSマイクロプロセッサチップおよびCMOSメモリチ
ップを含む。高周波クロック信号HFCK(i)を同時に受信するチップ10a
の数を制限することによって、チップ10aのすべてで消散される電力の総量は
、チップのすべてが高周波クロック信号を受信したならば、それ以外の場合に超
えられるだろう任意の所定の電力制限以下に保つことができる。
【0110】 図9と図10の回路構成要素で達成される別の特定の特徴とは、それがビット
の一意のストリームをチップ10aのそれぞれに別個に書き込むことができるよ
うにするという点である。それは、攻守はクロック信号HFCK(i)を、一度
に1つづつチップ10aのそれぞれに送信させるメモリ106内に制御ビットを
記憶することによって達成される。それから、ある特定的なチップが高周波クロ
ック信号HFCK(i)を受信しているときには、そのチップに書き込まれなけ
ればならないデータは、チップ10aのすべてに対するTDIビットストリーム
として送信される。この特徴は、シリアルナンバーなどの一定の一意の情報を、
試験されているそれぞれのチップ10aに買い込むことが必要なときに望ましい
【0111】 ここで図11を見ると、それは、図3の前述された命令31、32、33とと
もに、メモリ13内のチップ試験プログラムに含むことができる3つの追加の命
令34、35および36を示す。命令34は、演算コードOP7、JADRフィ
ールド34a、およびJDATAフィールド34bを含む単一ワードW0だけか
ら成り立つ内部制御命令である。命令34がパターン生成器12によって実行さ
れるとき、状態機械40は、JADR信号線路56の上にJADRフィールド3
4aを送信し、それはJDATA信号線路55の上にJDATAフィールド34
bを送信する。
【0112】 命令34は、図6のレジスタ61をロードするために、図10のレジスタ96
と98をロードするために、及び図9のレジスタ102をロードするために使用
できる。また、命令34は、図8のデコーダ94にアドレスを送信するため、図
9のカウンタにカウントを送信するため、制御ビットの各集合を106での制御
メモリに書き込むために使用できる。また、命令34は、デコーダ101から状
態機械104にSTARTコマンドとSTOPコマンドを送信するために使用す
ることもできる。
【0113】 命令35は、また単一のワードW0だけから成り立つ分岐命令である。命令3
5は、演算コードOP8、試験条件フィールド35a、及びジャンプアドレスフ
ィールド35bを含む。命令35がパターン生成器12によって実行されると、
状態機械40は、試験条件フィールド35aによって指定される条件を試験する
。その試験された条件が真である場合には、メモリ13から実行される次の命令
は、フィールド35bでジャンプアドレスを差し引いた分岐命令35のアドレス
で発生する。
【0114】 命令36は、やはり単一ワードW0から成り立つメモリ書き込み命令である。
命令36は、メモリ書き込み命令としてそれを特定する演算コードOP9を含み
、それはメモリアドレスフィールド36aを含む。命令36がパターン生成器1
2によって実行されると、エラー信号が図8のマルチプレクサ93から読み取ら
れ、メモリアドレスフィールド36aでメモリ13の中に書き込まれる。
【0115】 集積回路チップを試験するベースシステムの1つの好ましい実施態様がここで
詳細に説明された。ただし、さらに、多様な変更及び修正をこの実施態様の詳細
に加えることができる。
【0116】 例えば、図2は、チップ試験システムが、合計14のスロットを有するラック
20に収納される1つの例だけを示す。しかし、改良策として、ラック20は任
意の数のスロットを有することができ、複数のラックがある場合がある。また、
各ラックのスロットは、そのそれぞれのメモリ13とともに、チップアセンブリ
10、ドライバ回路11、及びパターン生成器12の任意の組み合わせで充填す
ることができる。
【0117】 同様に、図1は、各チップアセンブリ10が、試験されなければならない集積
回路チップ10aのうちの4つだけを保持する1つの例だけを示す。しかし、改
良策として、各チップアセンブリ10は、任意の所望される数の集積回路チップ
10aを保持することができる。
【0118】 また、別の改良策として、図1に示されるモジュール11、12、13、及び
14のそれぞれは、任意の種類の回路構成要素から構築できる。例えば、チップ
ドライバ回路11内の回路構成要素のすべて、及び(図5、図6、図8、図9、
及び図10に詳しく図示されるように)パターン生成器12内の回路構成要素の
すべては、TTL回路、ECL回路、MOS回路、及びCMOS回路から構築す
ることができる。同様に、図1の各メモリモジュール13は、フリップフロップ
に、またはコンデンサに、または磁気記憶媒体、または光学記憶媒体にデータビ
ットを記憶する、任意の種類のメモリセルから構築することができる。
【0119】 同様に、示されているチップ試験システム内にある順次制御回路のそれぞれは
、任意の種類の内部構造を有することができる。それらの順次制御回路は、図5
のパターン生成器状態機械40、図6のシフト制御回路70、及び図9のクロッ
クシーケンス状態機械104を含む。パターン生成器状態機械40の内部構造は
、それが図7の状態S1〜S11に従って動作する限り適切である。チップ制御
回路構成要素70の内部構造は、それが図7の状態S21〜S23に従って動作
する限り適切である。そして、図9のクロックシーケンス状態機械104の内部
構造は、それが、図10とともに示されるように、シーケンスモード及び自動継
続モードで動作するかぎり適切である。
【0120】 また、別の改良策として、各メモリモジュール13からワードとして読み取ら
れるビットの数は任意の所定の数である。図3は、メモリモジュール13内の各
ワードが「X」個のビットから成り立つことを示す。適切には、Xは、16ビッ
ト、32ビット、48ビット、64ビット等バイトの整数である。
【0121】 さらに、別の改良策として、試験されるチップ10aをある特定の状態にする
ために生成される各TMSビットストリームは、ビットの任意の事前に定義され
た系列である場合がある。各ビットストリームがどのようである必要があるのか
は、チップ10aの内部構造によって決定される。1つの特定的な例として、T
MSビットストリームは、表1Aに後述されるように事前に定義し、生成するこ
とができる。
【0122】 表1ATMSヘッダ ヘッダに応えたチップ10aの状態 010000 命令レジスタを読み取る。 011000 命令レジスタに書き込む。 011100 データレジスタを読み取る。 011110 データレジスタに書き込む。
【0123】 表1Aの各TMSヘッダの後には、命令レジスタ/データレジスタから読み取
られるTDOビットの数、またはそれらのレジスタに書き込まれるTDIビット
の数に等しい、「1」ビットの系列が続く。「1」ビットのその系列の後には、
次のTMSヘッダが開始するまで続行する「0」ビットの系列が後に続く。
【0124】 別の例として、各TMSビットストリームを、任意の所望される規格に従って
事前に定義し、生成することができる。このような規格は、参照してここに組み
込まれるIEEE 1149.1境界走査規格である。
【0125】 さらに、図12は、それによってビットストリームTDI、ETDO、MAS
K及びTMSの4つすべてがパターン生成器によって送信され、命令37内で明
示的に指定される依然として別の改良策を示す。この命令37は、第1ワードW
0のOP10という演算コードによって特定される。命令37は、送信されなけ
ればならないTMSビットストリームを指定する1つの新しいTMSフィールド
を含む。それ以外のフィールドBCNT、WCNT、TDI、ETDO及びMA
SKのすべては、図3の命令33について前述された対応するフィールドと同じ
である。
【0126】 命令37の中でTMSビットストリームを明示的に定義することができること
によって、単一パターン生成器12は、さまざまなTMSビットストリームが同
じ状態になることを必要とするさまざまな種類のチップを連続して試験すること
ができる。しかしながら、試験されているチップが、すべて同じTMS信号シー
ケンスを使用する場合には、命令33はメモリ空間を25%少なく占有するため
、命令33が命令37より好ましい。
【0127】 別の改良策として、ビットストリームTDI、ETDO、及びMASKの任意
の1つを、その命令から削除することができる。TDIビットストリームが削除
される場合には、結果は、TMSビットストリームを所望されるように指定でき
るという点を除き、前述された図3の命令32に類似する。ETDOビットスト
リーム及びMASKビットストリームが命令37から削除されると、結果は、T
MSビットストリームが再び所望されるように指定できるという点を除き、前述
された図3の命令31に類似する。
【0128】 ここでは本発明に従って、ここではアルゴリズムパターン生成器(APG)と
呼ばれる1つまたは複数の追加のモジュールが、図1の前述されたチップ試験シ
ステムに組み込まれる、修正されたシステムが説明されるだろう。この修正され
たシステムは図13に示される。そこで、図1のモジュール10、11及び14
が繰り返され、モジュール12と13がモジュール12'と13'に修正され、新
規に追加されたAPGモジュールが参照番号200によって特定される。
【0129】 図13は、別個のAPGモジュール200が、前述されたモジュール12'の
あらゆるモジュールに別個のインタフェース201を介して結合される。しかし
ながら、代わりに、別個のAPGモジュール200が、その別個のインタフェー
ス201を介して、モジュール12'の任意の部分集合に結合されてよい。例え
ば、モジュール12'のただ1つだけをAPGモジュール200に結合してよい
【0130】 動作中、各APGモジュール200は、チップアセンブリ10内にあるチップ
10aを試験する、TDI試験信号、ETDO試験信号、及びMASK試験信号
を内部で生成する。それらの試験信号を内部で生成するには、APGモジュール
200が、動作の複雑なシーケンスを実行し、それらの動作はメモリ13'のA
PG命令によって指定される。これらのAPG命令、及びAPGモジュール20
0内でそれらを実行する回路構成要素は、図13〜図22のすべてとともにここ
に詳細に説明されるだろう。
【0131】 TDI試験信号、ETDO試験信号及びMASK試験信号をAPGモジュール
200内で内部で生成することによって達成される1つの特定の恩恵とは、メモ
リ13'で必要とされる記憶の量が大幅に削減されるという点である。例えば、
TDI試験信号、ETDO試験信号、及びMASK試験信号が合計10億ビット
を含む場合に、APGモジュール200は、試験ビットのすべてを生成するため
のAPG命令を記憶するために、メモリ13'内で1000ビット未満の記憶を
必要とする可能性がある。比べると、試験ビットのすべてがメモリ13'で記憶
される場合には、10億ビットの記憶が必要とされるだろう。
【0132】 他方、TDI試験信号、ETDO試験信号及びMASK試験信号のビット総数
が減少するにつれ、図1〜図12の前述された回路構成要素は、それらの試験信
号をチップ10aに提示するためのさらに経済的な手段となる傾向がある。その
結果、図13の修正されたシステムは2つの運転モードを有する。第1モードで
は、モジュール12'が、図1〜図12に関連して前述されたように、試験信号
TDI、ETDO、及びMASKをメモリ13'から読み取り、それらを直列ビ
ットストリームでチップ10aに送信する。第2の運転モードでは、モジュール
12'は、メモリ13'からAPG命令を読み取り、それらを実行のためにAPG
モジュール200に渡す。それらのAPG命令の実行中、APGモジュール20
0は、TDIビットストリーム、ETDOビットストリーム及びMASKビット
ストリームのワードを連続して生成し、それはそれらをモジュール12'に送信
する。それから、モジュール12'の中で、試験信号のワードが、チップ10a
に送信される直列ビットストリームに変換される。
【0133】 ここで図14aを見ると、APGモジュール200の1つの好ましい内部構造
が説明されるだろう。この特定の構造によって、APGモジュール200は、3
段パイプラインから構成され、それらの段は参照番号210、220及び230
で特定される。第1段210は、算術論理段(ALS)である。第2段220は
スクランブラ段であり、第3段230がフォーマッタ段である。これらの3つの
段210、220及び230は、制御装置240の制御下で動作する。
【0134】 動作中、ALS段210及びスクランブラ段220及びフォーマッタ段230
は、同時に実行し、その同時動作中、パイプラインの各段は、データの異なる集
合でさまざまな動作を実行する。これらの同時動作が発生できるようにするため
に、パイプラインの各段には、入力レジスタの独自の集合及び出力レジスタの独
自の集合が提供される。
【0135】 ALU段の入力レジスタのすべては、参照番号210aによって特定される。
これらの入力レジスタ210aは3つの集合に区分され、それぞれの集合には4
台のレジスタがある。「X」集合は、レジスタXA、XB、XC、及びXDから
成り立つ。「Y」集合は、レジスタYA、YB、YC及びYDから成り立ち、「
Z」集合は、レジスタZA、ZB、ZC及びZDから成り立つ。
【0136】 その入力レジスタ210aのコンテンツで開始して、ALU段は、多様な算術
演算及び論理演算を実行し、その出力レジスタ210aでそれらの演算の結果を
記憶する。それらの出力レジスタは、それぞれ5台のレジスタから成る2つの集
合に区分される。第1集合は、レジスタX1A'、Y1A'、Z1A'、X1D'、
及びY1D'から成り立ち、第2集合はレジスタX2A'、Y2A'、Z2A'、X
2D'、及びY2D'から成り立つ。
【0137】 同様に、参照番号220aは、スクランブラ段200aの入力レジスタのすべ
てを特定する。ALU段の出力レジスタ210bごとのスクランブラ段では別個
の入力レジスタが提供される。例えば、入力レジスタX1Aは、出力レジスタX
1A’に対応し、入力レジスタY1Aは、出力レジスタY1A'に対応する等で
ある。
【0138】 APGパイプラインの動作中の一定のときに、ALU段210からの出力レジ
スタ210bのすべての内容が、スクランブラ段220の対応する入力レジスタ
220aに転送される。それから、スクランブラ段220は、その入力レジスタ
の内容に対し多様なスクランブル動作を実行し、それはその出力レジスタ220
bに結果を記憶する。それらの出力レジスタは、それぞれ3台のレジスタから成
る2つの集合に区分される。第1集合は、レジスタX1'、Y1'、及びD1'か
ら成り立ち、第2集合は、レジスタX2'、Y2'及びD2'から成り立つ。
【0139】 同様に、フォーマッタ段230の入力レジスタのすべては参照番号230aで
特定され、対応する入力レジスタが、スクランブラ段の各出力レジスタに提供さ
れる。例えば、入力レジスタX1は、出力レジスタX1'に対応する。入力レジ
スタY1は、出力レジスタY1'に対応する等である。
【0140】 一定のときに、スクランブラ段からの出力レジスタ220bの内容は、フォー
マッタ段の入力レジスタ230aに転送される。それが発生した後、フォーマッ
タ段は、その入力レジスタの内容に対して多様な動作を実行し、それが試験信号
TDI、ETDO、及びMASKのそれぞれの複数のワードを生成する。これら
の試験信号は、フォーマッタ出力レジスタ230bに、一度に1ワード記憶され
る。これらの出力レジスタ230bには、それらがAPGで内部で生成されるT
DI信号、ETDO信号及びMASK信号を保持することを示す目的で、ATD
I、AETDO、及びAMASKとラベルが付けられる。
【0141】 パイプライン段210、220及び230のそれぞれで実行される動作のすべ
ては、制御装置240から段のそれぞれに送信される制御信号のそれぞれの集合
によって制御される。算術論理段210に送信される制御信号は、導体211の
集合で発生する。スクランブラ段220に送信される制御信号は、導体221の
集合で発生し、フォーマッタ段230に送信される制御信号は、導体213の集
合で発生する。
【0142】 パイプライン段210、220、及び230のそれぞれは、制御装置240に
応答信号も送り返す。算術論理段210によって送信される応答信号は、導体2
12の集合で発生する。スクランブラ段220によって送信される応答信号は、
導体222の集合で発生し、フォーマッタ段230によって送信される応答信号
は、導体232の集合で発生する。
【0143】 また、制御装置240は、図13'のモジュール12'と対話するためにAPG
インタフェース201を活用し、インタフェース接続の詳細は、図14Aの一番
上の部分及び図14Bの下の左部分で図示される。図14Bは、前述された図5
に類似する。しかし、図14Bは、APGインタフェース201とともに動作す
る4つの追加構成部品250〜253も含み、それは追加される構成部品と対話
する修正された状態機械40'を含む。
【0144】 構成部品250は、図13のメモリからAPG命令を受信するレジスタであり
、それらの命令は、レジスタ250からAPG制御回路240に、導体201a
の集合で送信される。構成部品251は、導体201b、201c、201d、
及び40bの4つの集合から4つの異なる入力を受信する4x1のマルチプレク
サである。導体201bは、フォーマッタ出力レジスタATDIから発信するT
DI試験信号のワードを搬送する。導体201cは、フォーマッタ出力レジスタ
AETDOから発信するETDO試験信号のワードを搬送し、導体201dは、
フォーマッタ出力レジスタAMASKから発信するMASK信号のワードを搬送
する。構成部品252と253は、図21と図22に関連して後述されるそれぞ
れのカウンタである。
【0145】 APGがTDI試験信号、ETDO試験信号、MASK試験信号を生成してい
るとき、それらの信号は、マルチプレクサ251を通して渡され、レジスタ44
、45及び46の中にロードされる。逆に、TDI試験信号、ETDO試験信号
及びMASK試験信号がメモリ13'から読み出されているとき、それらの試験
信号は、(図5に関連して前述されたように)導体40bからマルチプレクサ2
51を通ってレジスタ44、45及び46の中に渡される。
【0146】 導体201eと201fの2つのその他の集合も、APGインタフェース20
1に含まれる。導体201eでは、田追うなタイミング信号及び制御信号が、図
14Bの状態機械40'から図14AのAPG制御回路240に送信される。例
えば、それらの制御信号は、いつAPG命令が導体201aに存在するのかを制
御回路240に告げる。
【0147】 導体201fでは、多様なタイミング信号及び制御信号が、図14AのAPG
制御回路240から図14bの状態機械40'に送信される。例えば、それらの
制御信号は、いつフォーマッタ段230が導体201b、201c、及び201
dで、TDI試験信号、ETDO試験信号及びMASK試験信号のワードを生成
したのかを状態機械40'に告げる。
【0148】 ここで図15A〜図15Bに関して、ALU段210の好ましい実施態様が説
明されるだろう。この特定の実施態様は、参照番号210a〜210pによって
図15A〜図15Bに特定される構成部品のすべてから構成され、それらの構成
部品のそれぞれが、表2に後述される。
【0149】 表2構成部品 説明 210a 図15Aの中の構成部品210aは、ALU段200用の入力レジスタのすべて
から成り立つ。それらは、「X」集合XA、XB、XC及びXDと「Y」集合Y
A、YB、YC及びYDと「Z」集合ZA、ZB、ZC及びZDに区分される。
これらの入力レジスタは、図14Aに図示されるのと同じ入力レジスタである。
それぞれのレジスタは、データ入力D及び出力Qを有する。
【0150】 210b 図15Bの中の構成部品210bは、ALU段200用の出力レジスタのすべて
から成り立つ。それらは、第1集合、X1A'、Y1A’、Z1A'、X1D'、
Y1D'、及び第2集合X2A'、Y2A'、Z2A'、X2D'、Y2D'に区分さ
れる。これらの出力レジスタは、図14Aに図示されるのと同じ出力レジスタで
ある。各レジスタは、入力D及び出力Qを有する。
【0151】 210c 図15Aの中の構成部品210cは、入力レジスタ用の読み書き制御回路である
。この制御回路により、入力レジスタ210aの内容は、Aバス、Bバス、Cバ
ス、及びDバスと呼ばれる4つのバスに選択的に読み取られる。また、この制御
回路によって、INバスと呼ばれるバス上のデータは選択的に入力レジスタ21
0aに書き込まれる。読み書きされる特定のレジスタは、集合211の中の導体
211aで発生する制御信号OP21、XYZ及びDESTによって、及び集合
211の中の導体211bで発生する制御信号OP22、XYZ及びABCDに
よって決定される。
【0152】 210d 図15Bの中の構成部品210dは、レジスタX1A'、X2A'、Y1A'、Y
2A'、Z1A'及びZ2A'から成り立つ出力レジスタ210bの部分集合用の
書き込み制御回路である。1つのレジスタが、集合211の中にある導体211
cのグループで発生する制御信号ADRに応じて選択され、書き込まれる。
【0153】 210e 図15Bの中の構成部品210eは、レジスタX1D’、X2D'、Y1D'、及
びY2D'から成り立つ出力レジスタ210bの部分集合書き込み制御回路であ
る。1つのレジスタが、集合211の中にある構成個211dのグループで発生
する制御信号DDRに応じて選択され、書き込まれる。
【0154】 210f 図15Aの中の構成部品210fは、6かける1のマルチプレクサである。この
マルチプレクサ210fに対する入力は、すべての0の集合とすべての1の集合
だけではなくAバス、Bバス、Cバス及びDバスの上に読み取られる入力レジス
タ210aの特定の集合の内容である。このマルチプレクサ210fは、j−バ
スと呼ばれているバスにその入力の1つを選択的に渡し、それらの信号は、集合
211の中にある導体211eのグループで発生する。
【0155】 210g 図15Aの中の構成部品210gは、6かける1のマルチプレクサである。この
マルチプレクサ210gに対する入力は、マルチプレクサ210fに対する入力
と同じである。このマルチプレクサ21fは、制御信号KSELに応じてKバス
と呼ばれているバスにその入力の1つを渡し、それらの信号は、集合211の中
にある導体211fのグループで発生する。
【0156】 210h 図15Aの中の構成部品210hは、以下の演算を選択的に実行する実用可能の
回路である。つまり、繰り上がった数を含む加算、繰り上がった数を含まない加
算、借りてくる数(borrow)を含む減算、借りてくる数を含まない減算、
増分、減分、排他的論理和、排他的否定和、及び論理和、否定、及び無操作命令
である。それらの演算は、Jバス及びKバスによって搬送される信号で実行され
る。構成部品210hによって実行されるそれぞれの特定の演算は、集合211
の中にある導体211gのグループで発生する制御信号ALOPによって選択さ
れる。
【0157】 210i 図15Aの中の構成部品210iは、2かける1のマルチプレクサである。マル
チプレクサ210iに対する入力の1つは、実用可能な回路210hから生じ、
マルチプレクサ210iに対する第2入力は境界チェック回路210kから生じ
る。どの特定の入力がマルチプレクサ出力に転送されるようになるのかは、境界
チェック回路210kで内部的に生成されるCROSSED_Bと呼ばれる制御
信号によって決定される。
【0158】 210j 図15Aの中の構成部品210jは、マルチプレクサ210iからの出力を選択
的に回転する回転体回路である。その選択的な回転の結果は、Rバスと呼ばれる
バスに送信される。回転体回路210jによって実行される回転の種類は、集合
211の中にある導体211hのグループで発生する制御信号ROTLによって
選択される。
【0159】 210k 図15Aの中の構成部品210kは、境界チェック回路である。この回路は、図
15Fに詳細に図示される内部構造を有し、境界チェック回路210kの構造と
動作はその図と関連してここに説明される。
【0160】 210L 図15Aの中の構成部品210Lは、2かける1のマルチプレクサである。マル
チプレクサ210lへの1つの入力がRバスであり、マルチプレクサ210Lに
対する第2入力が制御信号DIRECT_Dを搬送する導体211iのグループ
である。どの特定な入力がINバスにマルチプレクサ210Lを通して渡される
のかは、胴体211jのグループで発生するその他の制御信号OP22によって
決定される。導体211iと211jの両方のグループとも集合211の中にあ
る。
【0161】 210m 図15Bの中の構成部品210mは、7かける1のマルチプレクサである。この
マルチプレクサに対する入力はRバス、Aバス、Bバス、Cバス、Dバス、0の
集合及び1の集合である。これらの入力は、集合211の中にある導体211k
のグループで発生する制御信号OUTSELに応じて、マルチプレクサ210M
を通して選択的に渡される。
【0162】 210n 図15Bの中の構成部品210nは、インバータ回路である。この構成部品は、
マルチプレクサ210Mから生じる出力信号のすべてを反転する。
【0163】 210o 図15Bの中の構成部品210oは、2かける1 のマルチプレクサである。マ
ルチプレクサ210oに対する入力の一方はマルチプレクサ210mの出力であ
り、他方の入力はインバータ回路210nの出力である。マルチプレクサ210
oに対するこれら2つの入力は、集合211の中にある導体211Lのグループ
で発生する制御信号INVに応じてマルチプレクサを通して選択的に渡される。
【0164】 210p 図15Bの中の構成部品210bは、7かける1のマルチプレクサである。この
マルチプレクサに対する入力は、マルチプレクサ210mに対する入力と同じで
ある。どの特定の入力がマルチプレクサ210mを通過させられるのかは、集合
211の中にある導体211mのグループで発生する制御し号DGENSELに
よって決定される。
【0165】 図15Aと図15Bにおいて、多くの異なる制御信号が、導体211a〜21
1mのそれぞれのグループで発生するとして示される。それらの導体のすべては
、制御装置240から生じる集合211の中にある。これらの制御信号がどのよ
うにして生成されるのかは、ここで図15Cと図15Dと関連して説明されるだ
ろう。
【0166】 最初に図15Cを考えると、それは、図15Aと図15Bの回路構成要素のす
べてによって実行される1つの特定のAPG命令251を示す。この命令251
は、導体201aを介して図14AのAPG制御装置240で受信され、応じて
、APG制御装置240が、図15Aと図15Bの段210に、導体211での
多様な制御信号を送信する。
【0167】 APG命令251は、2つのワードW0とW1から成り立ち、この特定の命令
はワードW0で発生するOP21という操作符号で特定される。命令251のワ
ードW0は、図15Aの入力レジスタ210aから、レジスタのX集合またはレ
ジスタのy集合またはレジスタのZ集合のいずれかを選択するXYZフィールド
も含む。選択されるレジスタの特定の集合の内容は、Aバス、Bバス、Cバス及
びDバスに同時に読み取られる。
【0168】 命令251のワードW1は、以下の制御信号のすべてを指定する複数のフィー
ルドを含む。つまり、DGENSEL、OUTSEL、JSEL、KSEL、D
EST、ALOP、INV、ROTL、CC、DDR及びADRである。これら
の制御信号のそれぞれは、デジタルで符号化される複数の異なる値のいずれか1
つを有することがあり、各値が図15Cに示されるようにある特定の関数を指定
する。
【0169】 例えば、JSEL信号が「2」という値を有するとき、Cバス上にあるレジス
タの内容は、マルチプレクサ210fを通される。同様に、ALOPフィールド
が「5」という値を有するとき、実用可能な回路210hが、Jバス上にあるデ
ータを1増分し、結果をOバスに渡す。
【0170】 選択された入力レジスタの内容が構成部品210f〜210pのすべてによっ
て処理された後で、結果は選択的に入力レジスタ210a及び出力レジスタ21
0bの中に記憶される。どの特定の入力レジスタがマルチプレクサ210lから
の結果を記憶するのかは、DESTフィールドによって選択される。どの特定の
出力レジスタがマルチプレクサ210oからの結果を記憶するのかは、ADRフ
ィールドによって選択され、どの特定の出力レジスタがマルチプレクサ210p
からの結果を記憶するのかは、DDRフィールドによって選択される。
【0171】 ここで図15Dを見ると、それは、図15Aの回路構成要素により実行される
別のAPG命令252を示す。この特定の命令252は、2つのワードW0とW
1から成り立ち、それはワードW0内の演算コードOP22によって特定される
【0172】 命令252を使用することによって、入力レジスタ210aのいずれか1つが
、初期値をロードできる。ワードW0のフィールドXYZは、入力レジスタのX
集合、またはY集合またはZ集合のどれかを選択し、ワードW0の別のフィール
ドABCDが選択された集合の中の1つのレジスタを選択する。
【0173】 ワードW1は、選択されたレジスタに直接的に書き込まれるデータフィールド
DIRECT_Dを含む。そのデータは、命令252が実行されるときに、マル
チプレクサ210Lを選択されたレジスタの中に通過する。他のすべてのときに
は、マルチプレクサ210Lは、Rバス上にある信号を渡す。マルチプレクサ2
10bは、いつ命令51が実行されているのかを示す導体211f上の制御信号
OP22に応じて動作する。
【0174】 次に図15Eと図15Fを参照すると、境界チェック回路210kの内部構造
及び動作に関する詳細が説明されるだろう。最初に図15Eを考慮すると、それ
は、境界チェック回路210kと関連して実行されるAPG命令253を示す。
命令253は、2つのワードW0とW1から成り立ち、それはワードW0の演算
コードOP23によって特定される。
【0175】 命令253によって、入力レジスタ210aの集合ごとに、それぞれの最大限
度とそれぞれの最小限度が確立される。ワードW0内の1つのフィールドXYZ
は、入力レジスタのX集合または入力レジスタのY集合、または入力レジスタの
Z集合のどれかを選択する。その選択される集合について、ワードW1のフィー
ルドMAXLIMは最大限度を指定し、フィールドMINLIMは最小限度を指
定する。これらの限度は、境界チェック回路210k内に記憶される。
【0176】 限度の3つの集合が境界チェック回路210kに記憶された後、その回路は該
限度を各命令251の実行中にRバスで生成される信号に比較する。ある特定の
命令251がDESTフィー都度を介してレジスタのX集合を選択し、ALOP
フィールドによって指定される動作を介してその内容を増加する場合、Rバスの
結果は境界チェック回路210kによって、レジスタのX集合のために確立され
た最大限度に比較される。その最大限度がRバスの信号に等しい場合には、境界
チェック回路が、次の命令251が再びレジスタのX集合を選択するときにマル
チプレクサ210iを通してレジスタのX集合の最小限度を渡すだろう。
【0177】 逆に、1つの特定の命令251がDESTフィールドを介してレジスタのX集
合を選択し、ALOPフィールドで指定される動作を介してその内容を減少する
ときに、Rバスの結果は、レジスタのx集合のために確立された最小限度に比較
されある。その最小限度及びRバスの信号が等しいと、境界チェック回路210
kが、次の命令251が再びレジスタのX集合を選択すると、マルチプレクサ2
10iを通してレジスタのX集合の最大限度を渡すだろう。
【0178】 同様に、1つの特定の命令251がDESTフィールドを介してレジスタのY
集合(またはZ集合)を選択肢、ALOPフィールドを介してその内容を増加す
るときには、Rバスの結果がレジスタのX集合(またはZ集合)に確立された最
大限度に比較される。その最大限度がRバスの信号に等しい場合には、境界チェ
ック回路が、次の命令251が再びレジスタのY集合(またはZ集合)を選択す
ると、マルチプレクサ210iを通してレジスタのY集合(またはZ集合)に対
する最小限度を渡すだろう。
【0179】 逆に、ある特定の命令251が、DESTフィールドを介してレジスタのY集
合(またはZ集合)を選択し、ALOPフィールドを介してその内容を減少する
ときには、Rバス上の結果がレジスタのY集合(またはz集合)のために確立さ
れた最小限度に比較される。その最小限度及びRバス上の信号が等しい場合に、
境界チェック回路210kが、レジスタのY集合(またはz集合)の最大限度を
、次の命令251が再びレジスタのY集合(またはZ集合)を選択するときにマ
ルチプレクサ210iを通して渡すだろう。
【0180】 境界チェック回路210kの中で前述された動作を実行するために、その回路
は、図15Fに示される構成部品のすべてを含む。それらの構成部品は、参照番
号210q〜210wで特定され、それらの構成部品のそれぞれは表3に後述さ
れる。
【0181】 表3構成部品 説明 210q 図15Fの中の構成部品210qは、XMAXレジスタとXMINレジスタ、Y
MAXレジスタとYMINレジスタ、及びZMAXレジスタとZMINレジスタ
である3組のレジスタから成り立つ。各レジスタは、データ入力及び出力Qを有
する。命令253からのMAXLMフィールドは、XMAXレジスタまたはYM
AXレジスタまたはZMAXレジスタのどれかに選択的に記憶され、命令253
からのMINLIMフィールドはXMINレジスタまたはYMINレジスタまた
はZMINレジスタのどれかに選択的に記憶される。MAXLIMフィールドと
MINLIMフィールドは、集合211内にある導体211nのグループのレジ
スタqに送信される。
【0182】 210r 図15Fの中の構成部品は、レジスタ210qの読み取り/書き込み制御回路で
ある。書き込むためのレジスタの1つの特定の組を選択するために、回路210
rは、集合211の中にある導体2110oのグループで命令253からXYZ
フィールド及びOP23フィールドを受信する。読み取るためのレジスタの1つ
の特定の組を選択するために、回路211rは、集合211の中にある導体21
1pのグループの命令251からXYZフィールドを受信する。
【0183】 210s 図15Fの中の構成部品は、1組の入力I1とI2及び1組の出力O1とO2を
有する回路である。入力I1とI2はそれぞれ、レジスタ210qから読み取ら
れる最大限度と最小限度を受信する。命令251のALOPフィールドが追加ま
たは増分演算を指定する場合には、入力I1とI2に対する限度はそれぞれO1
出力及びO2出力に渡される。ALOPフィールドが減算または減分演算を指定
する場合、入力I1に対する限度が出力O2に渡され、入力I2に対する限度が
出力O1に渡される。ALOPフィールドは、集合211の中にある導体211
qのグループで回路210sに送信される。
【0184】 210t 図15Fの中の構成部品210tは、Rバス上にある信号を、構成部品210s
の02出力に渡される信号に比較する比較回路である。それらの比較された信号
が同じ場合には、回路210tは出力としてEQUAL信号を生成する。
【0185】 210u 図15Fの中の構成部品210uは、XEQ、YEQ及びZEQと呼ばれる3つ
のフリップフロップの集合である。各フリップフロップは、別の構成部品210
vによって読み書きされる。
【0186】 210v 図15Fの中の構成部品210vは、フリップフロップ210uの読み書き制御
回路である。XEQフリップフロップは、命令251のフィールドDESTがレ
ジスタのX集合を選択すると読み取られる。YEQフリップフロップは、DES
TフィールドがレジスタのY集合を選択するときに読み取られ、ZEQフリップ
フロップは、DESTフィールドがレジスタのz集合を選択するときに読み取ら
れる。読み取られるフリップフロップの出力は、制御信号CROSSED_Bに
なる。また、フリップフロップ210uの一方が命令251によって読み取られ
るたびに、その特定のフリップフロップは、命令の実行の終了時にセットまたは
リセットされるかのどちらかである。EQUAL信号が真である場合には、フリ
ップフロップがセットされる。それ以外の場合、それはリセットされる。DES
Tフィールドは、集合211内の導体211Rのグループで受け取られる。
【0187】 210w 図15Fの中の構成部品210wは、図15Aの実用可能な回路210hのため
の carry−in信号(CIN)を生成するフリップフロップである。この
フリップフロップは、命令251が実行されるたびにセットまたはリセットされ
る。フリップフロップ210wは、コンパレータ210tからのEQUAL信号
が命令251の実行の最後で真である場合にセットされる。それ以外の場合、フ
リップフロップ210wがリセットされる。
【0188】 ここでは、図15A〜図15Fの回路構成要素及び命令が、どのようにして、
集積回路チップを試験するTDI信号、ETDO信号及びMASK信号をともに
生成する3つの段の第1として使用できるのかを示す例を考える。この例では、
試験されるチップが、メモリセルの4つの矩形アレイを含むメモリチップである
と仮定し、さらにセルが各アレイ内で1024行と64列で配列されると仮定す
る。
【0189】 前記例の中のそれぞれのメモリセルが、「仮想」行番号及び「仮想」列番号に
よって指定される「仮想」アドレスを有する。これらの行番号及び列番号がなぜ
「仮想」番号であるのかが、まもなく説明されるだろう。
【0190】 第1アレイについて、仮想行番号はVR0〜VR1023であり、仮想列番号
はVC0〜VC63である。第2アレイについて、仮想行番号はVR0〜VR1
023であり、仮想列番号はV64〜VC127である。第3アレイについて、
仮想行番号はVR1024〜VR2047であり、仮想列番号はVC0〜V63
である。第4アレイについては、仮想行番号はVR1024〜VR2047であ
り、仮想列番号はVC64〜VC127である。
【0191】 4つのアレイのそれぞれにおいて、仮想b行番号は、アレイの上部からアレイ
の底部に連続して増加し、仮想列番号はアレイの左側からアレイの右側に連続し
て増加する。このようにして、例えば、第1アレイの左上角にあるメモリセルは
、仮想行VR0と仮想列VC0にあり、第1アレイの左下角にあるメモリセルは
仮想行VR1023及び仮想列VC63にある。同様に、第4アレイの左上角に
あるメモリセルは、仮想行VR1024及び仮想列VC64にあり、第4アレイ
の右下角にあるメモリセルは、仮想行VR2047と仮想列VC127内にある
【0192】 ここで、TDI試験信号、ETDO試験信号、及びMASK試験信号が、以下
の順序でメモリセルのそれぞれに生成されなければならないと仮定する。第1に
、試験信号は、行VR0内にあるメモリセルのそれぞれのセルに生成され、列V
C0での行VR0内のメモリセルで開始し、列VC63での行VR0にあるメモ
リセルで終了する。それから、このシーケンスは、第1アレイ内の残りの行R1
からVR1023のそれぞれに連続して繰り返されなければならない。それ以降
、前記シーケンスは、第2アレイのセルごとに繰り返されなければならず、それ
から前記シーケンスは第3アレイのセルごとに繰り返されなければならず、シー
ケンスは第4アレイのセルごとに繰り返されなければならない。
【0193】 図15A〜図15Fの回路構成要素及び命令を活用することにより、メモリセ
ルの仮想あどレスは、セルが試験されなければならない順序で連続して生成でき
る。例えば、レジスタのX集合は、試験されているセルの仮想行の番号を生成す
るために使用することができ、レジスタのY集合は、試験されているセルの仮想
列の番号を生成するために使用することができ、レジスタのZ集合は、試験され
ているアレイの数を生成するために使用することができる。
【0194】 適切な順序で前記アドレスを連続して生成するために、命令251のシーケン
スがプログラムループで実行できる。また、最初に前記アドレスの開始値を設定
するために、命令252が実行できる。さらに、ある行の最後から次の連続行の
始まりへ、及びある列の最後から次の連続列の始まりまで、プログラムループで
自動的に生成されるセルのアドレスを変更するために、命令253が使用できる
【0195】 仮想列アドレスと仮想行アドレスが生成されるたびに、それらのアドレスは出
力レジスタ210bに記憶される。例えば、仮想行アドレスは、レジスタX1A
'に記憶することができ、仮想列アドレスはレジスタY1A'に記憶することがで
きる。さらに、一定のデータが各仮想行アドレスと各仮想列アドレスととものい
使用される必要がある場合、そのデータは、命令251と252によってプログ
ラムループでも生成でき、そのデータは出力レジスタX1D'とY1D'に記憶で
きる。
【0196】 また、一定の種類のメモリ試験について、仮想アドレスとその対応するデータ
の2つの別個のシーケンスが同時に生成される必要がある可能性がある。例えば
、仮想アドレスの第1シーケンスは、前述された順序でセルからセルに移動でき
るだろう。一方仮想アドレスの第2シーケンスは反対の順序でセルからセルに移
動できるだろう。このようにして、第2シーケンスは、最高の番号の仮想行と仮
想列にあるセルで開始し、最小の番号の仮想行と仮想列にあるセルで終了するだ
ろう。
【0197】 仮想アドレスのこれらの2つの別個のシーケンスは、命令251、252、及
び253を使用する第1プログラムループと第2プログラムループによって同時
に生成できる。第1プログラムループが仮想アドレス及びその対応するデータを
生成するたびに、それらは出力レジスタX1A’、Y1A'、Z1A'、X1D'
、及びY1D'から成る第1集合に記憶され、第2プログラムループがその対応
するデータで仮想アドレスを生成するたびに、それらは出力レジスタX2A'、
Y2A'、Z2A'、X2D'及びY2D'から成る第2集合に記憶される。
【0198】 前記説明を通して、試験される実際の物理メモリチップ内では、メモリセルの
行及び列は連続して番号付けされなくてよいために、用語「仮想」行と「仮想」
列が使用された。例えば、実際のメモリチップ内で、アドレス10を有する行は
、アドレス20を有する行に隣接してよいことがある。同様に、実際のメモリチ
ップでは、アドレス100を有する列が、アドレス110を有する列に隣接して
よい。
【0199】 その結果、このような差異に対処するため、ALU段210は、好ましくは、
隣接する行と列が連続するアドレスを有する、仮想メモリ(つまり、仮説的なメ
モリ)の仮想アドレス及びデータを生成する。そして、スクランブラ段220は
、試験される実際の物理的なメモリチップのための物理的なアドレス及びデータ
に、仮想アドレスとデータを変換するために提供される。スクランブラ段220
によって実行される多様な動作を開始するために、図15Gに示される別のAP
G命令254が実行される。この命令254は、2つのワードW0とw1から成
り立ち、それはワードW0の演算コードOP24によって特定される。
【0200】 命令254の各実行は、第1段210の出力レジスタ内の仮想アドレス及び対
応するデータが、第2段220によって動作される準備ができていることを示す
。このようにして、それらの仮想アドレス及び対応するデータが、前述されたよ
うにプログラムループで生成されると、プログラムループの1つのサイクルが完
了されるたびに、APG命令254が実行される。命令254のワードW1 は
、図15Gに図示されるように、COUNTとPAGEと呼ばれる2つの追加フ
ィールドも含むが、それらのフィールドはAPGの第3段によって使用されるだ
けである。したがってCOUNTフィールドとPAGEフィールドは、第3段に
関連して後述される。
【0201】 第2段220の1つの好ましい実施態様は、図16A〜図16Cに詳細に図示
される。この特定の実施態様は、参照番号220a〜220zjによって図16
A〜図16Cに特定されるすべての構成部品から構成され、それらの構成部品の
それぞれが、表4に後述される。
【0202】 表4構成部品 説明 220a 構成部品220aは、部分的に図16Aに、部分的に図16Bに示され、それは
スクランブラ段220のための入力レジスタのすべてから成り立つ。これらの入
力レジスタは、レジスタX1A、Y1A、Z1A、X1D及びY1Dから成り立
つ第1集合、及びレジスタX2A、Y2A、Z2A、X2D及びY2Dから成り
立つ第2集合に区分される。これらの入力レジスタは、図14Aに図示されるの
と同じ入力レジスタである。それぞれのレジスタは、データ入力D及び出力Qを
有する。
【0203】 220b 図16Cの中の構成部品220bは、スクランブラ段220の出力レジスタのす
べてから成り立つ。それらの出力レジスタは、第1集合X1'、Y1'、及びD1
'、ならびに第2集合X2'、Y2’及びD2'に区分される。これらの出力レジ
スタは、図14Aに示されるのと同じ出力レジスタである。各レジスタは、デー
タ入力D及び出力Qを有する。
【0204】 220c 図16Aと図16bの構成部品220cは、入力レジスタ220aのすべてのた
めの書き込み制御回路である。この書き込み制御回路は、入力レジスタ220a
のすべてに、第1段210から対応する出力レジスタ210bの内容をロードす
る。この動作は、集合221の中にある導体221a上にある制御信号UPDA
TE_STAGE_2に応じて発生する。
【0205】 220d 図16Cの中の構成部品220dは、出力レジスタ220bのすべてのための書
き込み制御回路である。この書き込み制御回路によって、それぞれの出力レジス
タは、選択的に、そのデータ入力D上にある信号をロードされる。レジスタX1
'は、制御信号UPDATEX1'に応じてロードされる。レジスタX2'は、制
御信号UPDATEX2'等に応じてロードされる。これらの信号は、集合22
1の中にある導体221bのグループで発生する。
【0206】 220e 図16Aの中の構成部品220eは、2かける1のマルチプレクサである。マル
チプレクサ220eに対する入力の一方は、レジスタX1A内のアドレスであり
、他方の入力はレジスタX2A内のアドレスである。X1A入力は、制御信号S
EL1が真であるときにXAバスに渡される。それ以外の場合、X2A入力はX
2Aバスに渡される。制御信号SEL1は、集合221の中にある導体221c
で発生する。
【0207】 220f 図16Aの中の構成部品220fは、2かける1のマルチプレクサである。マル
チプレクサ220fに対する入力の一方は、レジスタY1A内のアドレスであり
、他方の入力はレジスタY2A内のアドレスである。Y1A入力は、制御信号S
EL1が真であるときにYAバスに渡される。それ以外の場合、Y2A入力がY
Aバスに渡される。
【0208】 220g 図16Aの中の構成部品220gは、2かける1のマルチプレクサである。マル
チプレクサ220gに対する入力の一方は、レジスタZ1A内のアドレスであり
、他方の入力はレジスタZ2A内のアドレスである。Z1A入力は、制御信号S
EL1が真であるときにZAバスに渡される。それ以外の場合、Z2A入力がZ
Aバスに渡される。
【0209】 220h 図16Aの中の構成部品220hは、16回繰り返される48かける1のマルチ
プレクサである。このマルチプレクサの各インスタンスは、メモリアドレスビッ
トA0〜A15のそれぞれ1つを生成する。簡略さのために、図16Aは、これ
らのマルチプレクサの最初のインスタンスと最後のインスタンスだけを示し、残
りのマルチプレクサは3つの点の集合で表される。それぞれのマルチプレクサ2
20hが、並列で、XAバス、YAバス及びZAバスにある入力アドレスビット
のすべてを受け取り、それぞれのマルチプレクサが、単一メモリアドレスビット
をそれによって生成するために入力アドレスビットのそれぞれ1つを選択的に渡
す。
【0210】 220i 図16Aの中の構成部品220iは、Xスクランブラ制御レジスタ、Yスクラン
ブラ制御レジスタ、及びZスクランブラ制御レジスタと呼ばれる制御レジスタの
3つの集合である。各集合は、16台のマルチプレクサ220hのそれぞれに1
台づつ、16台のレジスタを含む。レジスタの1つの集合の内容が選択され、導
体221dのマルチプレクサ220hに送信される。それらの信号は各マルチプ
レクサに、その出力にそれぞれの入力を渡すように命令する。
【0211】 220j 図16Aの中の構成部品220jは、XYZスクランブラ制御レジスタ220i
のための書き込み制御回路である。この回路によって、3つの集合の1つでの単
一制御レジスタが選択される。これは、制御信号OP33、XYZ、SA0かS
A15に応じて発生する。それから、選択されたレジスタは、SETTINGと
呼ばれるデータフィールドで書き込まれる。これらの信号のすべてが、集合22
1の中にある導体221eのグループで発生する。
【0212】 220k 図16Aの中の構成部品220kは、XYZスクランブラ制御レジスタ220i
のための読み取り制御回路である。導体221dの上に読み取られるレジスタの
特定の集合は、集合221の中にある導体221fのグループえ発生する3つの
制御信号SELX、SELY、及びSELZによって選択される。
【0213】 220L 図16Aの中の構成部品220Lは、64Kのワードを記憶するランダムアクセ
スメモリであり、各ワードは別個のアドレスを有する。1つの16ビットワード
は、アドレスA15〜A0に応じて読み取られ、そのワードはXMEMと呼ばれ
る出力で発生する。この出力XMEMは、図16Cで出力レジスタX1'とX2'
に移動する。
【0214】 220m 図16Aの中の構成部品220mは、64Kのワードを記憶するランダムアクセ
スメモリであり、各ワードは別個のアドレスを有する。1つの16ビットワード
が、アドレスA15〜A0に応じて読み取られ、そのワードはYMEMと呼ばれ
る出力で発生する。この出力YMEMは、図16Cの出力レジスタY1'とY2'
に移動する。
【0215】 220n 図16Aの中の構成部品220nは、64Kのビットを記憶するランダムアクセ
スメモリであり、各ビットは別個のアドレスを有する。1ビットワードがアドレ
スA15〜A0に応じて読み取られ、そのビットはZMEMと呼ばれる出力で発
生する。この出力ZMEMは、図16Cのマルチプレクサ220ziに移動する
【0216】 220o 図16Bの中の構成部品220oは、2かける1のマルチプレクサである。この
マルチプレクサに対する一方の入力は、レジスタX1Dのコンテンツであり、他
方入力はレジスタX2Dのコンテンツである。マルチプレクサ220は、制御信
号SEL1が真であるときに、X1D入力をXDバスに渡し、それ以外の場合、
それはXDバスにX2D入力を渡す。
【0217】 220p 図16Bの中の構成部品220pは、2かける1のマルチプレクサである。この
マルチプレクサに対する一方の入力はレジスタY1Dの内容であり、他方入力は
レジスタY2Dのコンテンツである。マルチプレクサ220は、制御信号SEL
1が真であるときに、Y1D入力をYDバスに渡す。
【0218】 220q 図16Bの中の構成部品220qは、16かける1のマルチプレクサである。こ
のマルチプレクサは、入力としてXDバスを受信し、それはそのバスの1ビット
をその出力に渡す。渡される特定のビットは、集合21の中にある導体221g
で発生する制御信号XSELによって選択される。
【0219】 220r 図16Bの中の構成部品220rは、16かける1のマルチプレクサである。こ
のマルチプレクサは、入力としてYDバスを受信し、それはそのバスの1ビット
をその出力に渡す。渡される特定のビットは、集合221の中にある導体221
hで発生する制御信号YSELによって選択される。
【0220】 220s 図16Bの中の構成部品220sは、インバータである。それはマルチプレクサ
220qの出力を受信し、その信号を出力として反転する。
【0221】 220t 図16Bの中の構成部品220tは、インバータである。それはマルチプレクサ
220rの出力を受信し、それはその信号を出力として反転する。
【0222】 220u 図16Bの中の構成部品220uは、4かける1のマルチプレクサである。この
マルチプレクサは、制御信号LFUNCに応じてその出力にその4つの入力の内
の1つを選択的に渡す。それらの制御信号は、集合221の中にある導体221
iで発生する。
【0223】 220v 図16bの中の構成部品220vは4かける1のマルチプレクサである。このマ
ルチプレクサは、制御信号MFUNCに応じて、選択的に、その4つの入力の内
の1つをその出力に渡す。それらの制御信号は、集合221の中にある導体22
1jで発生する。
【0224】 220w 図16Bの中の構成部品220wは、マルチプレクサ220uと220vから生
じる1組の入力で選択可能な演算を実行する算術回路である。構成部品220w
によって実行される特定の演算は、集合221の中にある導体221kで発生す
る制御信号DALUOPによって選択される。その動作の結果は、DALUバス
で発生する。
【0225】 220X 図16Bの中の構成部品220xは、データ入力D及び出力Qを有するMASK
レジスタである。このレジスタの中に選択的に書き込まれるデータは、MASK
DATAと呼ばれ、それは集合221の中にある導体220Lで発生する。
【0226】 220y 図16Bの中の構成部品220yは、MASKレジスタ220Xのための書き込
み制御回路である。この回路220yは、集合221の中にある導体221mの
上で制御信号OP32に応じてMASK_DATAをレジスタ220xの中に書
き込む。
【0227】 220z 図16Bの中の構成部品220zは、選択的な比較回路である。入力として、回
路220zは、XDバス、YDバス、上にある信号、及びMASKレジスタ22
0xに記憶される信号を受信する。それから、「0」であるMASKレジスタ内
のビットごとに、回路220zは、XDバス及びYDバス上にある対応するビッ
トを比較する。すべてんこのような比較が等しい場合、回路220zは出力信号
XD=YDを生成する。
【0228】 220za 図16Cの中の構成部品220zaは、インバータである。それは、DALUバ
スで信号を受信し、それはそれらの信号を出力として反転する。
【0229】 220zb 図16Cの中の構成部品220zbは、インバータである。それは信号XD=Y
Dを受信し、その信号を出力として反転する。
【0230】 220zc 図16Cの中の構成部品220zcは、6かける1のマルチプレクサである。こ
のマルチプレクサは、制御信号OUTSELに応じて、選択的に、その6つの入
力の1つをその出力に渡す。それらの制御信号は、集合221の中にある導体2
21nで発生する。
【0231】 220zd 図16Cの中の構成部品220zdは、データ入力Dおよび出力Qを有するレジ
スタである。VALUE−DATAと呼ばれる信号が、このレジスタの中に選択
的に書き込まれ、それらは、集合221の中にある導体221oで発生する。
【0232】 220ze 図16Cの中の構成部品220zeは、レジスタ220zdのための書き込み制
御回路である。この回路は、集合221の中の導体221pで発生する制御信号
OP34に応じてレジスタ220zdの中にVALUE−DATA信号を書き込
む。
【0233】 220zf 図16Cの中の構成部品220zfは、2かける1のマルチプレクサである。こ
のマルチプレクサに対する一方の入力は、6かける1のマルチプレクサzcから
の出力であり、他方の入力はレジスタ220zdの内容である。どの特定の入力
がマルチプレクサ220zfの出力に渡されるようになるのかは、集合221の
中の導体221qで発生する制御信号VALSELによって決定される。
【0234】 220zg 図16Cの中の構成部品は、マルチプレクサ220zfからの出力を選択的に転
する回転体回路である。回転体回路220zgによって実行される回転の種類は
、集合221の中の導体221rのグループで発生する制御信号ROTによって
選択される。
【0235】 220zh 図16Cの中の構成部品220zhは、インバータである。それは、回転体回路
220zgから出力信号を受信し、それはそれらの信号の逆数を生成する。
【0236】 220zi 図16Cn中の構成部品220ziは、2かける1のマルチプレクサである。こ
のマルチプレクサに対する一方の入力は回転体回路220zgの出力であり、他
方の入力は、インバータ220zhから生じる回転体回路の反転された出力であ
る。このマルチプレクサは、制御信号ZMEMが真であるときに反転された入力
を渡し、それ以外の場合、それは反転されていない入力を渡す。
【0237】 図16A、図16B、及び図16Cにおいては、多くのさまざまな制御信号が
、導体221a〜221mのそれぞれのグループで発生するとして示される。そ
れらの導体のすべては、制御装置240から生じる集合221の中にある。それ
らの制御信号がどのようにして生成されるのかは、図16D〜図16Gに関連し
てここに説明されるだろう。
【0238】 まず図16Dを参照すると、それは図16A〜図16Cの回路構成要素によっ
て実行される、ある特定のAPG命令261を示す。この命令261は、導体2
01aを介して図14AのAPG制御装置240で受け取られ、応じてAPG制
御装置240が、図16A〜図16Cの段220に導体221上の多様な制御信
号を送信する。
【0239】 命令261は、2つのワードW0とW1から成り立つ。ワードW0は、命令を
特定するOP31という演算コードを含む。ワードW1は複数のフィールドを含
み、それらは以下の制御信号のすべてを指定する。つまり、XSEL、YSEL
、LFUNC、MFUNC、DALUOP、OUTSEL、VALSEL及びR
OTである。これらの制御信号のそれぞれは、デジタルで符号化される複数の異
なる値のいずれか1つを有することがあり、それぞれの値が図16Dに示される
ようにある特定の関数を指定する。
【0240】 例えば、フィールドXSELが「0」という値を有するときに、マルチプレク
サ220qはXDバスのビット0での信号をその出力に渡す。フィールドXSE
Lが「1」という値を有するとき、マルチプレクサ220qはXDバスのビット
1での信号をその出力に渡す等である。別の例として、フィールドLFUNCが
「1」という値を有するとき、マルチプレクサ220uは、インバータ220s
からの信号をその出力に渡す。別の例として、フィールドDALUOPが「5」
という値を有するとき、回路220wは、その入力に対し排他的否定和を実行し
、DALUバスで結果を生成する。依然として別の例として、フィールドOUT
SELが「3」という値を有するときに、マルチプレクサ220zcは信号XD
=YDの逆数をその出力に渡す。
【0241】 ここで図16Eを参照すると、それは、図16Aの回路構成要素によって実行
される別のAPG命令272を示す。この特定の命令は、2つのワードW0とW
1から成り立ち、それはワードW0で発生するOP32という演算コードによっ
て特定される。そのワードは、図16Aの構成部品221内にある、スクランブ
ラ制御レジスタのX集合またはスクランブラ制御レジスタのY集合またはスクラ
ンブラ制御レジスタのz集合のいずれかを選択するXYZフィールドも含む。
【0242】 命令262のワードW1は、SETTINGとSA15〜SA0と呼ばれる2
つのフィールドを含む。フィールドSA15〜SA0は、XYZフィールドによ
って選択される集合の中の16台のレジスタの内の1つを選択する。その1つの
選択されたレジスタは、図16Aの書き込み制御回路220jによって作成され
る。このようにして命令262を活用することにより、XYZスクランブラ制御
レジスタのそれぞれ1つが任意の所望される設定値で作成できる。
【0243】 ここで図16Fを見ると、それは、図16Bの回路構成要素によって実行され
る依然として別のAPG命令を示す。この特定の命令は、2つのワードW0とW
1から成り立ち、それはワードW0で発生する演算コードOP33によって特定
される。命令263ののワードW1がMASK_DATAと呼ばれるフィールド
を含み、MASK_DATAフィールドは図16Bのレジスタ220xの中に書
き込まれる。その書き込みは、導体221jの上の制御信号OP33に応じて動
作する書き込み制御回路220yによって実行される。
【0244】 次に図16Gを参照すると、それは、図16Cの回路構成要素によって実行さ
れる別のAPG命令264を示す。このAPG命令は、2つのワードW01とW
1から成り立ち、それはワードW0で発生する演算コードOP34によって特定
される。ワードW1はVALUE_DATAと呼ばれるフィールドを含む。命令
264が実行されると、フィールドVALUE_DATAは図16Cのレジスタ
220zdに記憶される。その書き込みは、導体221mで発生する制御信号O
P34に応じて書き込み制御回路220zeによって実行される。
【0245】 ここで、図16A〜図16Gの回路構成要素及び命令が、集積回路チップを紙
面するTDI信号、ETDO信号、及びMASK信号を生成するために、どのよ
うにして3段パイプラインの第2段として使用できるのかを示す例を考える。こ
の例では、試験されるチップは、第1段210とともに前述されたのと同じメモ
リチップである。チップは、メモリセルの4つの矩形アレイを含み、それぞれの
アレイのセルは1,024行と64列で配列された。
【0246】 前記例では、第1段210が、仮想アドレス及び対応するデータの1つまたは
2つの別個のシーケンスを生成し、それらのアドレス及びデータは出力レジスタ
210bに連続して記憶された。ここで一定の時に、第1段の出力レジスタ21
0bの内容が、第2段の入力レジスタ220aに転送される。それから、第2段
入力レジスタ220aにある仮想アドレス及びデータは、図16A〜図16Cの
回路構成要素によって処理されるようになる。
【0247】 第2段の前記処理は、6つの連続時間間隔△t1〜△t6で発生する。最初に
、時間間隔△t1の間、3つの入力レジスタX1A、Y1A及びZ1Aは、図1
6Aの回路構成要素によって作用され、それがレジスタX1’に記憶される出力
を生成する。次に、時間間隔△t2の間、3台の入力レジスタX2A、Y2A、
及びZ2Aの内容は、図16Aの回路構成要素によって作用され、それが、レジ
スタX2'に記憶される出力を生成する。それから、時間間隔△t3の間、3台
のレジスタX1A、Y1A及びZ1Aは、図16A内の回路構成要素によって作
用され、それがレジスタY1'内で記憶される出力を生成する。それから、時間
間隔△t4の間、3台の入力レジスタX2A、Y2A、及びZ2Aが、図16A
の回路構成要素によって作用され、それがレジスタY2'に記憶される出力を生
成する。
【0248】 次に、時間間隔△t5の間、5台の入力レジスタX1A、Y1A、Z1A、X
1D、及びY1Dが、図16A〜図16Cの回路構成要素のすべてによって作用
され、それがレジスタD1'に記憶される出力を生成する。最後に、時間間隔△
t6の間に、5台の入力レジスタX2A、Y2A、Z2A、X2D、及びY2D
が、図16A〜図16Cの回路構成要素のすべてによって作用され、それが、レ
ジスタD2'に記憶される出力を生成する。
【0249】 時間間隔△t1、△t3、及び△t5の3つを通して、2かける1のマルチプ
レクサ220e、220f、220g、220o及び220pが、それぞれそれ
らの入力X1A、Y1A、Z1A、X1D及びY1Dを渡す。逆に、その他の3
つの時間間隔△t2、△t4、及び△t6を通して、それらのマルチプレクサが
、それぞれそれらの入力X2A、Y2A、Z2A、X2D及びY2Dを渡す。
【0250】 また、時間間隔△t1と△t2の2つを通して、読み取り制御回路220kが
、導体221d上のXスクランブラ制御レジスタの内容をマルチプレクサ220
hに送信する。時間間隔△t3と△t4の間、読み取り制御回路220kは、導
体220dでのYスクランブラ制御レジスタの内容をマルチプレクサ220hに
送信する。そして、時間間隔△t5と△t6の間、読み取り制御回路220kが
、導体221dでのZスクランブラ制御レジスタの内容をマルチプレクサ220
hに送信する。
【0251】 第2段220の中での前記処理のために、入力レジスタX1A、X2A、Y1
A及びY2Aの中にある仮想アドレスのすべてが、対応する物理アドレスに変換
されるようになる。例えば、レジスタX1Aの仮想アドレスを変換するために、
16台のマルチプレクサ220hは、それぞれXAバスまたはYAバスまたはZ
Aバスである特定のビットを選択する。それらの選択されたビットがXメモリ2
20Lの中のワードを読み取るアドレスを形成し、そのワードが物理アドレスと
してレジスタX1'に記憶されるようになる。同様にして、レジスタY1A内の
仮想アドレスを変換するために、16台のマルチプレクサ220hは、それぞれ
XAバスまたはYAバスまたはZAバスからビットを選択する。それらの選択さ
れたビットは、Yメモリ220M内のワードを読み取るアドレスを形成し、その
ワードは、物理アドレスとしてレジスタY1'に記憶されるようになる。
【0252】 やはり第2段220内での前記処理のために、入力レジスタX1DとY1Dか
らのデータが、出力レジスタD1内に記憶される異なるデータに変換されるよう
になる。同様に、入力レジスタX2DとY2Dからのデータは、それから出力レ
ジスタD2'に記憶される別のデータに変換されるようになる。このデータ変換
プロセスの間に、図16B及び図16Cでの回路は、制御信号XSEL、YSE
L、LFUNC、MFUNC、DALUOP、OUTSEL、VALSEL及び
ROTによって指定される多様な演算を実行する。それらの制御信号は、最後に
実行された図16Dの命令261によって設定され、それらは図14Aの制御装
置240の内側にあるレジスタ(図示されていない)に保持される。
【0253】 6つの連続時間間隔△t1〜△t6での処理のすべてが第2段220によって
完了された後に、第2段出力レジスタ220bが、第3段230の入力レジスタ
220aに転送される準備ができている(つまり、フォーマッタ段)。その転送
が発生すると、フォーマッタ段は、それにより集積回路チップを紙面する信号A
TDI、AETDO及びAMASKを生成するその入力レジスタの内容に対して
追加の処理を実行するだろう。
【0254】 フォーマッタ段230の1つの好ましい実施態様が、図17Aと図17Bに詳
細に示される。この特定の実施態様は、参照番号230a〜230qによって図
17Aと図17Bに特定される構成部品のすべてから構成され、それらの構成部
品のそれぞれが表5に後述される。
【0255】 表5構成部品 説明 230a 図17Aの中の構成部品230aは、フォーマッタ段230への入力レジスタの
すべてから成り立つ。これらの入力レジスタは、レジスタX1、Y1、及びD1
から成り立つ第1集合、及びレジスタX2、Y2及びD2から成り立つ第2集合
に区分される。これらの入力レジスタは、図14Aに示されるのと同じ入力レジ
スタである。それぞれのレジスタは、データ入力D及び出力Qを有する。
【0256】 230b 図17Aの中の構成部品230bは、フォーマッタ段230の中の出力レジスタ
のすべてから成り立つ。これらの出力レジスタは、ATDIレジスタ、AETD
Oレジスタ及びAMASKレジスタであり、それらは図14Aに示されるのと同
じ出力レジスタである。各出力レジスタは、データ入力D、クロック入力CK、
及び出力Qを有する。これらの出力レジスタは、それぞれ、導体201b、20
1c、及び201dでの出力信号ATDI、AETDO及びAMASKを送信し
、それらの導体は、図14Aと図14Bに図示されるのと同じ導体である。
【0257】 230c 図17Aの中の構成部品230cは、入力レジスタ230aのすべてのための書
き込み制御回路である。この書き込み制御回路は、同時に入力レジスタ230a
のすべてに、第2段220からの対応する出力レジスタをロードする。この動作
は、集合231の中にある導体230a上にある、制御信号UPDATE−ST
AGE−3に応じて発生する。
【0258】 230d 図17Aの中の構成部品230dは、138の入力と1つの出力を有するマルチ
プレクサである。各入力レジスタX1、X2、Y1及びY2は、マルチプレクサ
230dに16のビットアドレスを送信する。それぞれの入力レジスタD1とD
2は、マルチプレクサ230dに36のビットデータワードを送信し、残りの入
力は「0」と「1」である。どの特定的な入力が、マルチプレクサ230Dを通
して渡されるようになるのかは、図17Bによって示されるように、フォーマッ
タ段によって内部的に生成される制御信号CFMD1によって選択される。
【0259】 230e 図17Aの中の構成部品230eは74の入力と単一の出力を有するマルチプレ
クサである。各入力レジスタD1とD2は、マルチプレクサ230eに36ビッ
トのデータワードを送信し、残りの入力は「0」と「1」である。どの特定の入
力がマルチプレクサ230eを通って渡されるようになるのかは、図17Bに図
示されるように、フォーマッタ段によって内部に生成される制御信号CFMD2
によって選択される。
【0260】 230f 図17Aの中の構成部品230fは、直列入力D及び並列出力Qを有する直列/
並列シフトレジスタである。入力Dでの直列データは、マルチプレクサ230d
の出力から生じる。その直列データの1ビットは、BITCLKと呼ばれるクロ
ック信号のそれぞれの正の端縁によってレジスタ230fの中に時刻を記録され
る。BITCLK信号は、集合231の中にある導体231bで発生する。
【0261】 230g 図17Aの中の構成部品230gは、直列入力D及び並列出力Qを有する直列/
並列シフトレジスタである。入力Dでの直列データは、マルチプレクサ230e
の出力から生じる。その直列データの1ビットが、クロック信号BITCLKの
それぞれの正の端縁によってレジスタ230gの中に時刻を記録される。
【0262】 230h 図17Aの中の構成部品230hは、直列入力Dと並列出力Qを有する直列/並
列レジスタである。直列データ入力Dは、図17Bのレジスタ220qから信号
CFMD3を受信する。その直列データの1つのビットが、クロック信号BLT
CLKのそれぞれの正の端縁によってレジスタ230hの中に時刻を記録される
【0263】 230i 図17Aの中の構成部品230iは、1組の入力D1とD2、及び対応する組の
出力Q1とQ2を有する遅延バッファである。入力D1は、レジスタ230gか
ら並列出力信号を受信し、入力D2は、レジスタ230hから並列出力信号を受
信する。D1入力とD2入力での信号は、集合231の中にある導体231b上
で発生する、WDCLKと呼ばれるクロック信号のそれぞれの正の端縁に応じて
遅延バッファ230iに記憶される。それらの記憶されている信号は、それ以降
、クック信号WDCLKの所定数のサイクルの後に出力Q1とQ2で再生される
【0264】 230j 図17Bの中の構成部品230jは、データ入力Dと出力Qを有するレジスタで
ある。データ入力Dは、図15Gに図示されるように、命令254のワードW1
であるPAGEフィールドを受信する。PAGEフィールドは、集合231の中
にある導体231dで送信される。
【0265】 230k 図17Bの中の構成部品230kは、データ入力D及び出力Qを有するレジスタ
である。データ入力Dは、図15Gに示されるように、命令254のワードW1
内にあるCOUNTフィールドを受信する。COUNTフィールドは、集合23
1の中にある導体231eで送信される。
【0266】 230L 図17Bの構成部品230Lは、レジスタ230jと230kのための書き込み
制御回路である。この回路は、図15Gの命令254が実行中であることを示す
制御信号OP24に応じて、PAGEフィールドをレジスタ230jに書き込み
、COUNTフィールドをレジスタ230kに書き込む。信号OP24は、集合
231の中の導体231fで発生する。
【0267】 230m 図17bの中の構成部品230mは、データ入力D、出力Q、及びロード制御入
力Lを有するレジスタである。このレジスタは、フォーマッタ段の中でアクティ
ブに使用されているページ数を保持し、そのページ数はQ出力のACTIVE−
PG信号によって指定される。アクティブページ番号は、導体231aでのUP
DATE−STATE−3に応じて、レジスタ230jから受信される。
【0268】 230n 図17Bの中の構成部品230nは、データ入力D、出力Q、クロック入力CK
及びロード入力Lを有するカウンタである。このカウンタは、フォーマッタ段の
中でアクティブに使用されているカウントを保持し、そのカウントは、Q出力で
のACTIVE−CNT信号によって示される。初期カウントは、UPDATE
−STAGE−3制御信号に応じてレジスタ230kから受信される。カウンタ
230nは、それがクロック信号BITCLKの正の端縁を受信するたびに、そ
れが保持するカウントを1、減分する。
【0269】 230o 図17Bの中の構成部品230oは、カウンタ230n内でのアクティブなカウ
ントがいつゼロに減分されたのかを検出する回路である。それが発生すると、構
成部品230oは、制御モジュール240に移動する集合231導体232aで
ZERO−CNTと呼ばれる制御信号を生成する。
【0270】 230p 構成要素230pはCFMDと呼ばれる複数の制御ワードを記憶するメモリであ
る。これらの制御ワードは、メモリ内の「M」枚のページに区分され、各ページ
が「N」個の制御ワードを保持する。ある実施態様では、Mは1024であり、
Nは256である。メモリ230p内でのある特定のページは、レジスタ230
mからのACTIVE−PG信号によってアドレス指定され、アドレス指定され
るページの中の1つの特定の制御ワードは、カウンタ230nからACTIVE
−CNT信号によって選択される。
【0271】 230q 構成部品230qは、データ入力D、出力Q及びクロック入力CKを有するレジ
スタである。データ入力Dは、ACTIVE−PG信号及びACTIVE−CN
T信号によって制御メモリからそれぞれの特定の制御ワードCFMDを連続して
受信する。1つの制御ワードは、それがクロック信号BITCLKの正の端縁を
受信するたびにレジスタ220qに記憶される。
【0272】 ここで、図17Aと図17Bの構成部品のすべてがATDI試験信号、ATE
DO試験信号、及びAMASK試験信号を生成するために対話する方法が説明さ
れるだろう。当初、図15Gの命令254が、第1段の出力レジスタが、第2段
によって処理される準備ができている仮想アドレス及びデータワードを保持する
ことを示すために実行されるだろう。その命令254が実行されると、PAGE
フィールドとCOUNTフィールドが、図17Bのレジスタ230jと230k
の中に書き込まれるだろう。
【0273】 それ以降、第1段の出力レジスタの内容は、第2段の入力レジスタに転送され
るだろう。それから、第2段の入力レジスタの内容は、前述されたように6つの
連続する時間期間△T1〜△T6の間に処理されるだろう。それが発生した後、
第2段からの出力レジスタの内容が、第3段の入力レジスタに転送される準備が
できている。
【0274】 第3段入力レジスタへの実際の転送は、集合231の中の導体231aでのA
PG制御装置240からの制御信号UPDATE−STAGE−3に応じて発声
する。また、UPDATE−STAGE−3制御信号に応じて、レジスタ230
j内のPAGEは、アクティブページレジスタ230mに転送され、レジスタ2
30k内のCOUNTがカウンタ230nに転送される。
【0275】 カウンタ230nがロードされた後、それが含むカウントは、クロック信号B
ITCLKの各正の端縁に応じて1減分される。また、カウンタ230nによっ
て生成されるカウントごとに、1つの制御ワードがメモリ230pから読み出さ
れ、レジスタ230qに記憶される。
【0276】 レジスタ230qに記憶される各制御ワードは、それぞれマルチプレクサ23
0d、マルチプレクサ230e、及び直列/並列シフトレジスタ230hに送信
される制御信号CFMD1、CFMD2、及びCFMD3に区分される。CFM
D1信号は、マルチプレクサ220dにシフトレジスタ230fのために1ビッ
トを選択させ、CFMD2信号はマルチプレクサ230eにシフトレジスタ23
0gのために1つのビットを選択させ、CFMD3信号はシフトレジスタ230
hに直接的に送信される。
【0277】 ビットクロック信号のそれぞれの正の端縁が発生すると、シフトレジスタ23
0f、230g及び230hは、そのD入力に送信されるビットを記憶する。そ
れから、合計16個のビットがシフトレジスタ230f、230g、及び230
hのそれぞれに記憶された後で、それらの並列出力が使用される。具体的には、
シフトレジスタ230fの並列出力は、ATDI出力レジスタにロードされ、シ
フトレジスタ230gと230hの並列出力は、遅延バッファ230iのそれぞ
れDI入力とD2入力にロードされる。遅延バッファ230iにロードされるそ
れらの信号は、それ以降、クロック信号WDCKの所定数のサイクル後に、それ
以降、出力レジスタAETDOとAMASKに送信される。
【0278】 出力レジスタ230bから、導体201b、201c及び201dが、それぞ
れ信号ATDI、AETDO、及びAMASKを、図14Bの前述された回路に
搬送し、それらの回路が、試験されなければならない集積回路チップに信号を送
信する。試験プロセスの間、信号ATDIは、チップの中に直列に書き込まれ、
それが信号AETDOとAMASKと直列に比較される直列応答を生じさせる。
チップからのこの応答は、信号ATDIがチップの中に書き込まれる時間を基準
にして一定の遅延後に発生し、その遅延は、図17Aの遅延バッファ230iに
よって補償される。
【0279】 シフトレジスタ230f、230g、及び230jを直列にロードし、16ビ
ットのワードでのそれらの出力を出力レジスタ230gに送信する前述のプロセ
スは、カウンタ230ンがそのカウントをゼロに減分するまで繰り返す様式で進
行する。これが発生すると、ゼロ検出回路230oが、導体232aでのZER
O−CNT信号を図14AのAPG制御回路240に送信する。
【0280】 APG制御装置240内で、第2段220の状態は、出力レジスタ220bが
、第3段230の入力レジスタに転送する準備ができている新しいデータを含む
かどうかを判断するために試験される。このような状態が損座右する場合には、
APG制御装置240は、導体230aで制御信号UPDATE−STAGE−
3を生成する。応じて、第2段220の出力レジスタの内容は、第3段230の
入力レジスタに転送される。230jのレジスタ内の別のPAGEは、アクティ
ブなページレジスタ230mに転送され、レジスタ230k内の別のCOUNT
は、カウンタ230nに転送される。それから、プロセス全体が、前述されたよ
うに続行する。
【0281】 ここで図18を見ると、それは、3つの段が動作するシーケンスを描くタイミ
ング図を示す。図18では、第1段210が、時間間隔T1S2の間に仮想アド
レス及び対応するデータの第1集合を生成する。それ以降、時下ン間隔T1S2
の間、第2段220が、仮想アドレスと対応するデータの第1集合を、物理アド
レスと対応するデータの第1集合に変換する。それ以降、時間間隔T1S3の間
、第3段230は、物理アドレスと対応するデータの第1集合を使用して、集積
回路チップを試験する直列ビットストリームATDI、AETDO、及びAMA
SKを生成する。
【0282】 時間間隔TiS1で第1段によって生成される仮想アドレスの集合ごとに、第
2段及び第3段が、それぞれ時間間隔TiS2とTiS3デ対応するタスクを実
行する。ここえは「1」は任意の正の整数である。このようにして、例えば、仮
想ドレスの第3集合及び物理アドレスの第3集合及び出力信号の第3集合は、そ
れぞれ時間間隔T3S1、T3S2、及びT3S3中に生成される。このプロセ
スは、図18に示されるように、第1段が仮想アドレス及び対応するデータの新
しい集合を生成するのを停止するまで3つのドットの集合によって図18に示さ
れる。
【0283】 図18の検査は、一定のときに、段210、220、及び230の3つすべて
が、アドレスとデータの異なる集合で同時に動作することを示す。例えば、3つ
の時間間隔T3S1、T2S2、及びT1S3の部分が重複する。時間間隔T3
S1の間、第1段210は仮想アドレスと対応するデータの第3の集合を生成す
る。時間間隔T2S2の間、第2段220が、仮想アドレスと対応するデータの
第2集合を、物理アドレスと対応するデータの第2集合に変換しており、時間間
隔T1S3の間に、第3段230が、出力信号ATDI、AETDO及びAMA
SKの第1集合を生成している。
【0284】 図18の検査は、さらに、第3段時間間隔T1S3、T2S3、T3S3等の
間に隙間が発生しないことを示す。その結果として、第3段出力信号ATDI、
ETDO及びAMASKは、ある時間間隔から次の時間間隔へ連続的である直列
ビットストリームで発生する。この連続的な出力を達成するために、第1段の時
間間隔T1S1、T1S2等のそれぞれと、第2段の時間間隔S2T1、S2T
2等のそれぞれは、第1段の時間間隔のそれぞれより短くなくてはならない。
【0285】 前記制約のために、第1段時間間隔の間では隙間が発生し、第2段時間間隔の
間で隙間が発生する。第1段時間間隔間の隙間の間、第1段210は、それが、
仮想アドレスと対応するデータの別の集合を生成し続ける前に、一定のイベント
が発生するまで留まる待機状態にある。同様に、第2段時間間隔のそれぞれの間
の隙間の間、第2段220は、それが、仮想アドレスを物理アドレスに変換する
プロセスを進める前に、一定のイベントが発生するまで留まる待機状態にある。
【0286】 第1段210と第2段220が前記待機状態にどのようにして入り、終了する
のかが、ここで図19に関連して説明されるだろう。その図では、3つの段のそ
れぞれに別個の状態図が示されている。図19に描かれている状態のすべて、及
びある状態から別の状態への遷移は、図14Aの制御モジュール24Dによって
実現される。
【0287】 図19の状態図の多様な点で、図20に図示される2つの状態制御フリップフ
ロップが参照され、それらの2つのフリップフロップ241と242は、図14
Aの制御装置240内に含まれる。各フリップフロップは、設定された入力S及
びリセットされた入力R、及び出力Rを有する。フリップフロップ241は、第
1段出力レジスタ210bの内容が、第2段220によって処理される準備がで
きているときに設定され、フリップフロップ242は、第2段出力レジスタ22
0bの内容が、第3段230によって処理される準備ができているときに設定さ
れる。これは、それぞれ「STAGE−1 OR'S READY(段1論理和
準備完了)」及び「STAGE−2 OR'S READY(段2論理和準備完
了)」である2つのフリップフロップ241と242の出力信号によって示され
る。
【0288】 ここで図19の状態図を考えると、それは第1段210が実行するための命令
を待機する状態301を示す。それらの命令は、図15C、図15D、図15E
、及び図15Gに関連して前述された命令である。それらの命令の1つは制御装
置240によって受信され、その制御装置は、図15Gの命令254が受信され
たかどうかを判断するために、参照番号302によって示されるように、試験を
行う。命令254が受信されなかった場合には、制御装置240は、図15A〜
図15Fに関連して前述されたように、導体211a,211b等で第1段21
0に制御信号を送信し、応じて、第1段210は受信された命令を実行する。こ
れは、参照番号303によって示される。それから、第1段210が状態301
に再び入る。
【0289】 比較して、制御装置240が試験302によって、図15Gの命令が受信され
たと判断する場合には、制御装置240は、第1段出力レジスタの内容が、第2
段によって処理される準備ができていることを示すフリップフロップ241を設
定する。それから、第1段は、それがリセットされるためにフリップフロップ2
41を待機する状態305に入る。そのリセットが発生すると、第1段は状態3
01に再び入り、実行するための別の命令を待機する。
【0290】 次に、第2段220の図19の状態図を考えると、それは、第2段が、第1段
の出力レジスタの内容が第2段によって処理される準備ができるまで留まる状態
310を示す。そのイベントの発生は、設定されているフリップフロップ241
によって示される。このようにして、フリップフロップ241が設定されるよう
になると、第2段220は別の状態311に入る。
【0291】 第2段220は、それが、第3段に転送される必要がある専用の出力レジスタ
220bの中に物理アドレス及び対応するデータを有する場合に状態311に留
まる。第2段出力レジスタ220b内の物理アドレスとデータの存在は、設定さ
れているフリップフロップ242によって示される。このようにして、状態31
1は、フリップフロップ242がリセットされるようになるまで終了される。
【0292】 状態311が終了されると、制御装置240は、制御信号UPDATE_ST
AGE2を導体221a上の第2段に送信し、それはフリップフロップ241を
リセットする。これは、参照番号312で示される。それから、UPDATE_
STAGE2制御信号に応じて、第2段220は、連続的に物理アドレスと対応
するデータの集合を生成し、それはその出力レジスタ220bにそれらを記憶す
る。これは、参照番号313によって示される。それから、制御装置240は、
参照番号314によって示されるようにフリップフロップ242を設定し、それ
は第2段出力レジスタ220bが第3段230によって処理される準備ができて
いることを意味する。
【0293】 次に、第3段230について図19の状態図を考えると、それは、第3段が、
第2段出力レジスタ220bの内容が第3段によって処理される準備ができるま
で留まる状態320を示す。そのイベントの発生は、設定されているフリップフ
ロップ242によって示される。このようにして、状態320は、フリップフロ
ップ242が設定されるときに終了される。それから、参照番号321によって
示されるように、制御装置240は、制御信号UPDATE_STAGE3を導
体231a上の第3段に送信し、それはフリップフロップ242をリセットする
【0294】 UPDATE_STAGE3制御信号に応じて、第2段出力レジスタ220b
の内容が第3状態の入力レジスタ230aに転送される。また、新しいページは
、第3段のレジスタ230jからアクティブページレジスタ23mに転送され、
新しいカウントは第3段のレジスタ230kからアクティブカウンタ230nに
転送される。それ以降、第3状態230は、前述されたように、アクティブペー
ジとアクティブカウントを使用し、出力ビットストリームATDI、AETDO
、及びAMASKを連続して生成し、これが参照番号322と343によって示
される。そのプロセスは、アクティブカウントが、その時点で第3段が状態32
0に再び入る、ゼロというカウントに達するまで続行する。
【0295】 状態320に再び入るときにフリップフロップ242が設定される場合、状態
320は直ちに終了するだろう。それから、参照番号321、322、及び32
3によって示されるイベントのすべてが繰り返され、その結果として、第3段に
よって生成されるビットストリームATDI、AETDO、及びAMASKでは
隙間は発生しないだろう。状態320に再び入ると、フリップフロップ242が
、事実上設定されることを保証するために、図18の第1段時間間隔及び第2段
時間間隔は、第3段時間間隔より短くなる必要がある。
【0296】 ここで図21を見ると、それは、集積回路チップを試験する、出力ビットスト
リームATDI、ATEDO、及びAMASKを生成するために使用されるプロ
グラムを示す。このプログラムは、図13のメモリ13'に記憶され、それは、
図13及び以下の図と関連して、説明された回路構成要素のすべてによって実行
される。
【0297】 図21では、描かれているプログラムは、ステップS101〜S115として
特定されるステップのシーケンスとして実行される。第1の5つのステップS1
01〜S105によって、多様な初期値が確立される。それ以降、以下のステッ
プS106〜S115では、その間に出力信号ATDI、ATEDO及びAMA
SKが生成される2つのプログラムループが実行される。
【0298】 図21のプログラムによって生成される出力信号のすべては、メモリセルの物
理的なアレイのためであり、それぞれのメモリセルは物理的な行アドレスと物理
的な列アドレスを有する。しかし、図21のプログラムでは、物理的な行と列の
アドレスは、仮想行と仮想列のアドレスから生成される。
【0299】 ステップS101によって、開始仮想行アドレスは第1段210の入力レジス
タXAに送信され、開始仮想列アドレスは第1段の入力レジスタYAに送信され
る。その後、ステップS102では、仮想アドレス限度が第1段の境界チェック
回路210kに送信される。このステップによって、図15FのレジスタXMI
NとXMAXには、それぞれ、最小仮想行アドレスと最大仮想行アドレスがロー
ドされ、同様にして、レジスタYMINとYMAXにはそれぞれ最小仮想列アド
レスと最大仮想列アドレスがロードされる。
【0300】 次に、ステップS103では、第2段スクランブラ制御レジスタのすべてが初
期化される。それらのレジスタは、図16Aの参照番号220iで特定される。
このステップによって確立される設定値が、導体221b上でマルチプレクサ2
20hに送信される制御信号を決定する。
【0301】 次に、ステップS104では、複数の制御信号が、図16Bと図16Dに示さ
れる第2段のデータ処理部分で確立される。具体的には、このステップS104
は、図16Dに関連して残術された制御信号XSEL、YSEL、LFUNC、
MFUNC、DALUOP、OUTSEL、VALSEL、及びROTのすべて
を確立する。
【0302】 次に、ステップS105では、それぞれの初期値が図14Bの行カウンタ25
2と列カウンタ253に送信される。ここでは、行カウンタに送信される初期値
は、仮想メモリアレイ内の行数であり、列カウンタに送信される初期値は仮想メ
モリアレイ内にある列数である。
【0303】 次に、ステップS106では、第1段の入力レジスタXA内にある仮想行アド
レスが、第1段の出力レジスタX1A'とX1D’に送信される。それから、ス
テップS107で、第1段の入力レジスタYA内にある仮想列アドレスが、出力
レジスタY1A'とY1D’に送信される。やはりステップ107によって、レ
ジスタYA内にある仮想列アドレスは1増分される。これらの演算は、図15C
の命令251を実行することによって達成される。
【0304】 次に、ステップS108では、図15Gの命令254が実行され、その結果と
してフリップフロップ241が設定される。これは、第1段210の出力レジス
タの内容が第2段220によって処理される準備ができていることを示す。その
結果として、第2段220は、図19の段の2つの状態図に関連して前述された
ように、第1段出力レジスタの内容を記憶し、処理するために進むだろう。それ
以降、第2段220の出力レジスタの内容は第3段による処理のために準備がで
きるだろう。それが起こると、第3段230は、図19の第3段状態図に関連し
て前述されたように、第2段出力レジスタの内容を記憶し、処理するだろう。
【0305】 次に、列カウンタ253内のカウントが、図14Bの状態機械40によって1
減分されるステップS109が実行される。残りのステップS110〜S115
だけではなく、このステップS109も、ステップS108によって開始された
第2段220と第3段230のための多様なタスクと並列で実行される。
【0306】 次に、ステップS110では、図14Bの状態機械40'が、それがゼロとい
うカウントに達したかどうかを確かめるために列カウンタ242を試験する。カ
ウントがゼロではない場合には、ステップS111が実行される。そこで、図1
4Bの状態機械40'が、第1段出力レジスタの内容が、段S106とS107
によって確立されるように、第1段の入力レジスタに転送されたかどうかを判断
するために試験を行う。この試験は、図20のフリップフロップ241の出力信
号を調べることによって行われる。フリップフロップ241が設定される場合、
ステップS111は、フリップフロップ241がリセットされるまで繰り返され
る。それが発生すると、分岐はステップS106まで戻される。
【0307】 比較して、列カウンタ253のカウントがステップS110でゼロである場合
には、ステップS112に分岐される。そこで、第1段の入力レジスタXA内に
ある業アドレスが1増分される。それから、ステップS113では、行カウンタ
252のカウントが1減分される。
【0308】 次に、ステップS114では、図14Bの状態機械40'が、行カウンタ25
2内のカウントを試験する。そのカウントがゼロに等しくならない場合には、列
カウンタ253が、仮想メモリアレイ内にある列の数で再初期化されるステップ
S115が実行される。それから、ステップS111に分岐される。それ以外の
場合、行カウンタのカウントがステップS114でゼロに等しくなると、試験信
号は、アレイ内のあらゆるセルについて生成された。そしてこのようにして、試
験信号の生成は完了する。
【0309】 図21のプログラム内の各ステップは、図13のメモリ13内の1つまたは複
数の命令によって指定される。例えば、ステップS101でロードされる初期値
は、図15Dの命令252の2つによって指定される。同様に、ステップS10
2の最小と最大のアドレス限度は、図15Eの命令253の2つによって指定さ
れる。同様に、ステップS103のマルチプレクサ制御信号は、図16Eの命令
262の16によってXレジスタに指定され、Yレジスタ用のマルチプレクサ制
御信号はそれらの命令の16以上によって指定される。さらに、ステップS10
4で確立さえる制御信号は、図16Bの単一命令261によって定義される。
【0310】 ステップS110、S111、及びS114で発生する試験及び分岐を実行す
るために、図11の条件付きジャンプ命令32が実行される。それから、行カウ
ンタ252及び列カウンタ253のロード及び減分を実行するために、図22の
別の命令265が実行される。この命令265は、OP=35という演算コード
によって特定される。
【0311】 命令265は、COUNT、DECLD、及びROWCOLと呼ばれる3つの
フィールドを有する。ROWCOLフィールドは、行カウンタ252を選択する
「0」という値、及び列カウンタ253を選択する「1」という値を有する。D
ECLDフィールドは、減分演算を指定する「0」という値、及びロード演算を
指定する「1」という値を有する。ロード演算が指定される場合には、COUN
TフィールドがROWCOLフィールドによって特定されるカウンタにロードさ
れる。減分演算が指定される場合には、ROWCOLフィールドによって特定さ
れるカウンタが1減分される。
【0312】 図21の前述されたプログラムの1つの特定の特徴とは、それぞれが行と列の
異なる物理的なレイアウトを有する任意の数のメモリアレイについて同じプログ
ラムが使用できるという点である。この特徴は、任意の1つのアレイの特定の物
理的なレイアウトが、段2のマルチプレクサ制御レジスタが初期化されるステッ
プS103で対処されるために達成される。それらのレジスタを適切に初期化す
ることによって、各仮想アドレスは、図16Aのマルチプレクサ220h及びメ
モリ220Lと220mを介して、任意の所望される物理アドレスに変換される
【0313】 図21のプログラムの別の特徴は、それが、ステップS104を実現する命令
を単に変更することによって、多くの異なるデータパターンについて試験信号A
TDI、AETDO、及びAMASKを生成できるという点である。例えば、ス
テップS104がDALUバスにレジスタX1D内のビットゼロを送信する、図
16Dの1つの命令261で実現される場合、メモリアレイの中のそれぞれの偶
数番号の行が「0」で作成され、アレイの中でそれぞれの基数番号の行が「1」
で作成されるだろう。比較して、ステップS104が、レジスタY1D内のビッ
トゼロの逆数をDALUバスに送信する図16Dの1つの命令261によって実
現される場合には、アレイのそれぞれの基数番号の列が「0」で作成され、アレ
イのそれぞれの偶数番号の列が「1」で作成されるだろう。
【0314】 また、算術パターン生成器を介した試験信号ATDI、AETDO、及びAM
ASKの生成が、図13のシステムのただ1つの運転モードの間にだけ発生する
ことが強調されなければならない。別の運転モードでは、試験信号TDI、ET
DO、及びMASKはメモリ13'から読み取られ、試験されなければならない
チップに送信される。これらの2つの運転モードでは、図5、図6、図8、図9
、及び図10に図示される回路構成要素のすべては時分割される。このようにし
て、どちらかの運転モードでは、TMS信号が状態機械40'によって生成され
、レジスタ47に送信される。レジスタ44〜48のビットストリームのワード
は、チップドライバ回路11のすべてに導体12a上で一斉送信され、チップド
ライバ回路は、試験されるチップからの予想される応答を、それらのチップから
の実際の応答と比較する。
【0315】 本発明の1つの好ましい実施態様は、ここで詳細に説明されてきた。しかしな
がら、さらに、多様な変更及び修正が、発明の性質及び精神から逸脱することな
く、描かれた好ましい実施態様の詳細に加えることができる。
【0316】 例えば、図13〜図22に説明されるアルゴリズムパターン生成器を用いると
、ビットストリームATDI、AETDO及びAMASKのすべて3つが生成さ
れる。ただし、改良策として、それらのビットストリームの1つだけまたは2つ
が生成できる。この改良策を用いると、未使用のビットストリームを作成する回
路構成要素は排除することができる。このようにして、例えば、ATDIビット
ストリームだけが生成され、ATDOビットストリームおよびAMASKビット
ストリームを生成するために使用される回路構成要素は排除できるだろう。
【0317】 同様に、図14Aでは、アルゴリズムパターン生成器の好ましい実施態様が、
3つの段を含むと図示されている。しかしながら、改良策としては、それらの段
の数は、減少または増加できるだろう。例えば、なんらかの新しい演算を実行す
るための追加段は、第2段と第3段の間に挿入できるだろう。代わりに、第2段
及び第3段によって実行される関数は、単一の段の中に組み込むことができるだ
ろう。
【0318】 また、改良策として、アルゴリズムパターン生成器の3つの段の任意の1つは
、違うふうに構築される類似した段と置換できるだろう。このようにしてここに
開示されているAPGの各段は、別のアルゴリズムパターン生成器内で使用でき
る別個のモジュールである。
【0319】 また、別の改良策として、演算パターン生成器の各段によって実行される多様
な命令は変更することができる。例えば、図15Cでは、第1段によって実行さ
れる多様な関数を定義する、複数のフィールドが示され、それらのフィールドは
第1段が実行する特定の演算を変更するために修正できる。同様にして、図16
Dでは、第2段によって実行される関数を定義する複数のフィールドが示され、
それらのフィールドは、第2段が実行する関数を変更するために修正できる。
【0320】 その結果、発明が、示されている好ましい実施態様の詳細のすべてに制限され
るのではなく、添付請求項によって定義されることが理解されるべきである。
【図面の簡単な説明】
【図1】 集積回路チップを試験するためのベースシステムのブロック図を
示す。そして、そのベースシステムは、本発明に従って、図13〜図22でここ
に示されるように修正される。
【図2】 図1のチップ試験システムがどのようにして物理的に実装される
のかを示す。
【図3】 集積回路チップを試験するために、図1のシステムによって実行
される3つの異なる種類の可変長命令を示す。
【図4】 図3の命令が試験プログラムを形成するためにどのようにして順
番に配列されるのかの例を示す。
【図5】 図1のシステムで選択可能な量発生するパターン生成器の内部詳
細を示す。
【図6】 図1のシステムで選択可能な量で発生するチップドライバ回路の
内部詳細を示す。
【図7】 図5のパターン生成器及び図6のチップドライバ回路が図1のシ
ステムでどのように対話するのかを示す。
【図8】 試験されたチップ内のエラーが検出される図1の各チップドライ
バ回路上の追加回路構成要素を示す。
【図9】 複数のチップが、プログラム制御下の選択可能な部分集合の中で
同時にまたは連続して試験される、図1の各ドライバ回路の追加回路構成要素を
示す。
【図10】 図9の回路構成要素の一部である制御メモリの構造を示す。
【図11】 図1のチップ試験システムによって実行される3つの追加の種
類の命令を示す。
【図12】 図3に示されている3つの命令に対して加えることのできる修
正を示す。
【図13】 本発明に従って集積回路チップを試験する改良されたシステム
を示す。そしてこの改良されたシステムは、アルゴリズムパターン生成器(AP
G)を図1のベースシステムに組み込むことによって得られる。
【図14A】 図13のAPGのための好ましい内部構造を示す。
【図14B】 図14Aのアルゴリズムパターン生成器を図13のシステム
の残りに結合する、図13の中のモジュール12'の詳細を示す。
【図15A】 図14AのAPGの第1段のある部分の詳細な論理図である
【図15B】 図14AのAPGの第1段の別の部分の詳細な論理図である
【図15C】 図15Aと図15Bの第1段論理回路によって実行されるあ
る命令を示す。
【図15D】 図15Aと図15Bの第1段論理回路によって実行される別
の命令を示す。
【図15E】 図15Aと図15Bの第1段論理回路によって実行される第
3命令を示す。
【図15F】 図15Aの第1段論理回路内に含まれる境界チェック回路の
追加の詳細を示す。
【図15G】 図14AのAPG内の第1段によって部分的に、及び図14
AのAPGの第2段と第3段によっても部分的に実行される命令を示す。
【図16A】 図14AのAPG内の第2段のある部分の詳細な論理図であ
る。
【図16B】 図14AのAPG内の第2段の別の部分の詳細な論理図であ
る。
【図16C】 図14AのAPG内の第2段の依然として別の部分の詳細な
論理図である。
【図16D】 図16A〜図16Cの第2段論理回路によって実行される命
令を示す。
【図16E】 図16C〜図16Eの第2段論理回路によって実行される別
の命令を示す。
【図16F】 図16A〜図16Cの第2段論理回路によって実行される依
然として別の命令を示す。
【図16G】 図16A〜図16Cの第2段論理回路によって実行される依
然として別の命令を示す。
【図17A】 APGの第3段のある部分の詳細な論理図である。
【図17B】 図14aのAPGの第3段の別の部分の詳細な論理図である
【図18】 図14Aの第1段、第2段、及び第3段のための動作のシーケ
ンスを示すタイミング図である。
【図19】 図14のAPGの第1段、第2段及び第3段のためのそれぞれ
の状態図を示す。
【図20】 図19の状態図に参照される2状態制御フリップフロップを示
す。
【図21】 図13のシステムのメモリ内に記憶されるAPG用のプログラ
ムを示す。
【図22】 図21のプログラム内での図15C、図15D、図15E、図
15G、図16D、図16E、図16F及び図16Gの命令とともに使用される
別の命令を示す。
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成14年1月21日(2002.1.21)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0022
【補正方法】変更
【補正の内容】
【0022】 改善されたシステムの構造及び動作を完全に理解するために、まず、3つの参
照される特許出願第09/386,946号と第09/387,197号、及び
第09/386,945号に説明されるベースシステムの理解を有することが必
要である。結果的に、それらの詳細な説明だけではなく、それらの出願の図1か
ら図12もここで繰り返される。それから、改善されたシステムは、ここで図1
から図12のベースシステムに対する改良として、図13から図22とともに説
明される。 また、従来の技術において、集積回路チップを試験するための別のシステムが 、欧州特許出願EP第0 859 367 A2号(参考資料D1)に説明され ている。しかしながら、参考資料D1のシステムは、一般的な先端技術を定義し ているに過ぎず、ここに請求されているシステムと特に関連しているとは見なさ れない。本出願の請求項1は、唯一の独立クレームであり、それは明示的に参考 文献D1によって教示または示唆されていない複数の構造上の特徴を明示的に列 挙する。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 コンクリン,ロバート・デイビッド アメリカ合衆国、85249 アリゾナ州、チ ャンドラー、イー・フリントロック・プレ イス、2267 Fターム(参考) 2G132 AA08 AB01 AE08 AE11 AE18 AE22 AE23 AE24 AG01 AL26 5L106 DD23

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 外部ソースからの一連の命令に応じて、第1アドレスの複数
    の集合を連続して生成する初期段と、 前記初期段から第1アドレスの各集合を連続して記憶し、第1アドレスの記憶
    されている集合をアドレスの第2集合に変換する、前記初期段に結合された中間
    段と、 前記中間段からのアドレスの各第2集合を連続して記憶し、アドレスの記憶さ
    れた第2集合からビットを選択することによって、前記チップを試験するための
    出力信号を生成する、前記中間段に結合されと出力段とからなる、 集積回路チップを試験するための多段アルゴリズムパターン生成器。
  2. 【請求項2】 前記第1アドレスが仮説仮想メモリ内のアドレスであり、第
    2アドレスが、前記出力信号で試験される実際の物理メモリ内のアドレスである
    、請求項1に記載の集積回路チップを試験するための多段アルゴリズムパターン
    生成器。
  3. 【請求項3】 前記初期段、前記中間段及び前記出力段に、前記アドレスの
    異なる集合で同時に演算するように命令する、前記初期段と前記中間段と前記出
    力段とに結合される、制御モジュールをさらに含む、請求項1に記載の集積回路
    チップを試験するための多段アルゴリズムパターン生成器。
  4. 【請求項4】 前記初期段が、前記初期段が前記第1アドレスを生成するの
    を停止する、前記系列内のある特定の命令に応じて入る待機状態を有する、請求
    項1に記載の集積回路チップを試験するための多段アルゴリズムパターン生成器
  5. 【請求項5】 前記初期段が前記待機状態を終了し、前記初期段からの前記
    第1アドレスの集合を記憶する前記中間段に応じて前記第1アドレスを生成し続
    ける、請求項4に記載の集積回路チップを試験するための多段アルゴリズムパタ
    ーン生成器。
  6. 【請求項6】 前記中間段が、中間段が第1アドレスの記憶されている集合
    を第2アドレスの集合に変換するのを終了すると入る待機常態を有する、請求項
    1に記載の集積回路チップを試験するための多段アルゴリズムパターン生成器。
  7. 【請求項7】 前記中間段が、前記待機状態を終了し、前記中間段から変換
    されたアドレスの集合を記憶する前記出力段に応じて前記第1アドレスの変換を
    続行する、請求項6に記載の集積回路チップを試験するための多段アルゴリズム
    パターン生成器。
  8. 【請求項8】 前記出力段が、そのときに前記中間段が第2アドレスの別の
    集合を生成していない場合に、前記出力段が前記記憶されているアドレスの第2
    集合からある特定の数のビットを選択するのを終了したときに入る待機状態を有
    する、請求項1に記載の集積回路チップを試験するための多段アルゴリズムパタ
    ーン生成器。
  9. 【請求項9】 前記特定数がプログラム可能であり、前記命令によって第2
    アドレスの集合ごとに確立される、請求項8に記載の集積回路チップを試験する
    ための多段アルゴリズムパターン生成器。
  10. 【請求項10】 前記出力段が、特定の時間間隔内で第2アドレスの前記記
    憶されている集合から前記ビットを選択し、同時に前記初期段及び中間段が、そ
    れぞれ、第1アドレスのある集合及び第2アドレスの別の集合をさらに短い時間
    期間内であるが生成する、請求項1に記載の集積回路チップを試験するための多
    段アルゴリズムパターン生成器。
  11. 【請求項11】 前記第1アドレスの各集合が、前記命令によってプログラ
    ムされる可変数の前記第1アドレスを含む、請求項1に記載の集積回路チップを
    試験するための多段アルゴリズムパターン生成器。
  12. 【請求項12】 前記初期段が、前記第1アドレスとともに第1データワー
    ドを生成し、前記中間段及び前記出力段が、前記第2データワードと第2アドレ
    スの両方からビットを選択することによって前記出力信号を生成する、請求項1
    に記載の集積回路チップを試験するための多段アルゴリズムパターン生成器。
  13. 【請求項13】 外部ソースからの命令に応じて第1アドレスを生成する初
    期段と、 前記初期段からの前記第1アドレスを記憶し、記憶されている第1アドレスを第
    2アドレスに変換する、前記初期段に結合された中間段と、 前記中間段から前記第2アドレスを記憶し、記憶されている第2アドレスからビ
    ットを選択することによって、前記チップを試験するための出力信号を生成する
    、前記中間段に結合される出力段とからなる、集積回路チップを試験するための
    多段アルゴリズムパターン生成器。
JP2001535069A 1999-11-03 2000-10-24 Icチップを試験するための多段アルゴリズムパターン生成器 Expired - Fee Related JP3591646B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/432,965 US6415408B1 (en) 1999-11-03 1999-11-03 Multi-stage algorithmic pattern generator for testing IC chips
US09/432,965 1999-11-03
PCT/US2000/029301 WO2001033236A1 (en) 1999-11-03 2000-10-24 Multi-stage algorithmic pattern generator for testing ic chips

Publications (2)

Publication Number Publication Date
JP2003513285A true JP2003513285A (ja) 2003-04-08
JP3591646B2 JP3591646B2 (ja) 2004-11-24

Family

ID=23718291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001535069A Expired - Fee Related JP3591646B2 (ja) 1999-11-03 2000-10-24 Icチップを試験するための多段アルゴリズムパターン生成器

Country Status (5)

Country Link
US (1) US6415408B1 (ja)
EP (1) EP1226444B1 (ja)
JP (1) JP3591646B2 (ja)
DE (1) DE60006992D1 (ja)
WO (1) WO2001033236A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6934900B1 (en) * 2001-06-25 2005-08-23 Global Unichip Corporation Test pattern generator for SRAM and DRAM
KR100487535B1 (ko) * 2002-08-14 2005-05-03 삼성전자주식회사 다른 종류의 반도체 장치들을 동시에 테스트하는 시스템
DE10322541A1 (de) * 2003-05-19 2004-12-16 Infineon Technologies Ag Speicherbaustein mit integrierter Adressscramblereinheit und Verfahren zum Verscrambeln einer Adresse in einem integrierten Speicher
US7228478B2 (en) * 2004-08-11 2007-06-05 International Business Machines Corporation Built-in self-test (BIST) for high performance circuits
JP5843358B2 (ja) * 2010-01-15 2016-01-13 国立大学法人 奈良先端科学技術大学院大学 半導体集積回路のテストパターン生成方法、プログラム、およびコンピュータ読み取り可能な記録媒体
US9202592B2 (en) * 2013-12-30 2015-12-01 Unisys Corporation Systems and methods for memory management in a dynamic translation computer system
US9360523B2 (en) * 2014-04-18 2016-06-07 Breker Verification Systems Display in a graphical format of test results generated using scenario models

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359569A (en) * 1991-10-29 1994-10-25 Hitachi Ltd. Semiconductor memory
US5390129A (en) * 1992-07-06 1995-02-14 Motay Electronics, Inc. Universal burn-in driver system and method therefor
US5696929A (en) * 1995-10-03 1997-12-09 Intel Corporation Flash EEPROM main memory in a computer system
JPH09244961A (ja) * 1996-03-08 1997-09-19 Mitsubishi Electric Corp フラッシュata−pcカード
US5883905A (en) * 1997-02-18 1999-03-16 Schlumberger Technologies, Inc. Pattern generator with extended register programming
US5923675A (en) * 1997-02-20 1999-07-13 Teradyne, Inc. Semiconductor tester for testing devices with embedded memory

Also Published As

Publication number Publication date
EP1226444B1 (en) 2003-12-03
DE60006992D1 (de) 2004-01-15
JP3591646B2 (ja) 2004-11-24
US6415408B1 (en) 2002-07-02
EP1226444A1 (en) 2002-07-31
WO2001033236A1 (en) 2001-05-10

Similar Documents

Publication Publication Date Title
US7058865B2 (en) Apparatus for testing semiconductor integrated circuit
JP2003508758A (ja) 多数のチップを同時にテストするためのテスタ
JP3577332B2 (ja) 電子デバイスの試験装置
JP3591647B2 (ja) 記憶されているビットストリームまたは内部で生成されたビットストリームで選択的にicチップを試験するためのシステム
KR900004889B1 (ko) 테스트 패턴 제너레이터
JP3762701B2 (ja) Icチップを試験するためのアルゴリズム試験パターン生成器
US20060253266A1 (en) Integrated circuit test array including test module
JPH02245943A (ja) バス実行スキヤン・テスト方法及び装置
US5168177A (en) Programmable logic device with observability and preloadability for buried state registers
US9575122B2 (en) Interface with write strobe sequencer, first and second series registers
JP2856586B2 (ja) 埋め込みアレイを試験するためのテストパターンジェネレータ
JP3591646B2 (ja) Icチップを試験するための多段アルゴリズムパターン生成器
US4870346A (en) Distributed pseudo random sequence control with universal polynomial function generator for LSI/VLSI test systems
JP2003242799A (ja) 半導体集積回路
US5872797A (en) Burn-in signal pattern generator
US6477676B1 (en) Intermediate stage of a multi-stage algorithmic pattern generator for testing IC chips
US5894484A (en) Integrated circuit tester with distributed instruction processing
CN101009141A (zh) 半导体存储设备
US6480981B1 (en) Output stage of a multi-stage algorithmic pattern generator for testing IC chips
US6363504B1 (en) Electronic system for testing a set of multiple chips concurrently or sequentially in selectable subsets under program control to limit chip power dissipation
JP3581688B2 (ja) チップテスタシステムのための可変長パターン発生器
Van der Velde et al. Designing a memory module tester
KR960015560B1 (ko) 바운더리 스캔 구조의 2tdi(2테스트 데이터 입력)을 집적 회로에 입력하는 장치
JP2000347891A (ja) マイクロプロセッサ
JPH08240645A (ja) Icの内部状態を少数ピンで読み出しテストする回路

Legal Events

Date Code Title Description
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: 20040720

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040818

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

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees