JP2003050269A - アルゴリズム的にプログラム可能なメモリテスタにおけるトリガ信号生成方法 - Google Patents

アルゴリズム的にプログラム可能なメモリテスタにおけるトリガ信号生成方法

Info

Publication number
JP2003050269A
JP2003050269A JP2002117030A JP2002117030A JP2003050269A JP 2003050269 A JP2003050269 A JP 2003050269A JP 2002117030 A JP2002117030 A JP 2002117030A JP 2002117030 A JP2002117030 A JP 2002117030A JP 2003050269 A JP2003050269 A JP 2003050269A
Authority
JP
Japan
Prior art keywords
test
trigger
memory
bit
dut
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
JP2002117030A
Other languages
English (en)
Other versions
JP2003050269A5 (ja
JP4298960B2 (ja
Inventor
Jr Alan S Krech
アラン・エス・クレッチ・ジュニア
Brad D Reak
ブラッド・ディ・リーク
Randy L Bailey
ランディ・エル・ベイリー
John M Freeseman
ジョン・エム・フリースマン
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.)
Agilent Technologies Inc
Original Assignee
Agilent Technologies 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 Agilent Technologies Inc filed Critical Agilent Technologies Inc
Publication of JP2003050269A publication Critical patent/JP2003050269A/ja
Publication of JP2003050269A5 publication Critical patent/JP2003050269A5/ja
Application granted granted Critical
Publication of JP4298960B2 publication Critical patent/JP4298960B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/56External testing equipment for static stores, e.g. automatic test equipment [ATE]; Interfaces therefor

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 アルゴリズム的性質を持つテストプログラム
を実行するメモリテスタのスコープモードにおいて、ト
リガ信号を生成するための方法を提供する。 【解決手段】 DUT14を動作させるための既存ハー
ドウエアおよびテストプログラムのどの部分が実行され
ているかに基づいてトリガ仕様が定義される。電圧閾値
及びサンプルタイミングオフセットの掃引で安定した波
形を得るため、メモリテスタは、トリガ発生後のテスト
プログラムの最初のパス間に発信された所定数の送信ベ
クトルのターゲットシーケンスを記憶する。次に、テス
トプログラムを再開し、トリガが発生すると、さらなる
送信ベクトルが、記憶されたターゲットシーケンスから
発信され、閾電圧値およびサンプルタイミングオフセッ
トの組み合わせが切り換わる。ターゲットシーケンスに
対する受信ベクトルを記憶し、記憶されたデータに基づ
いて所望の波形が生成される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】(関連出願の参照)本開示
は、「Error Catch RAM for Me
mory Tester Has SDRAM Mem
ory Sets Configurable for
Size and Speed」と題する米国特許出
願第09/665,892号(2000年9月20日の
出願であり、参照により本明細書に組み込まれる)に記
載された情報に関連したものである。本願が対象とする
主題は、半導体メモリを試験するための比較的大型で複
雑なシステムの動作の一部に関わるものである。記載し
たメモリテスタはそれ自体の中に、試験を実施可能とす
る全体的な枠組みの一構成要素として、拡張メモリサブ
システムを含む。このメモリサブシステムの特定の機能
が本願の対象とするところであり、それらは開示した新
規な主題の一部に関して好ましい基盤として作用する。
製品の経済面からの理由、そしてテスタ中により多くの
メモリ容量を設けたいという要求から、ランダムアドレ
ス指定方式においても高速ではあるが高価なSRAMに
代え、安価なメモリ(ランダムアクセスにおいては処理
速度が遅いDRAM)を使用し得る方法が開発された。
この結果、様々な他のメモリサブシステム構成と組み合
わせた場合にメモリグループ内での多重化やメモリバン
ク間でのインターリーブ処理と同時にこれらを可変長語
として実現することも含む極めて複雑なものとなってし
まった。一方で、本開示に求める特定の要件は、SRA
Mのみを使用したシステムにおいてその複雑性を大幅に
緩和して実現することが出来る。しかしながら、その経
済面での犠牲は著しく、その完成品は技術者の興味対象
にこそなれ商業的には立ち行き得ない程高価になってし
まう可能性が高い。本開示は、完全にSRAMのみでシ
ステムを構成することも勿論可能ではあるが、必ずしも
そうすることを前提にしないという、中間的なスタンス
を取るものである。その成り行き上、DRAM技術を含
むこととなったが、本願の基本原理を簡潔に説明するた
めに、DRAM技術の内部処理に関する複雑な詳細説明
の多くを差し控えた。本開示内容に簡単に目を通しただ
けでも、多くの関心事(様々なインターリーブ方式やア
ドレス指定方式及びこれらがどのように異なる処理モー
ドと関係するのか等)が省略されていることに気づくか
も知れない。しかしながら、本明細書に開示することを
意図した技術及び要件は、一部の場合においては記載を
省略した事項から若干の影響を受けるものもあるが、基
本的にこれらとは関連性が薄いことがわかってもらえる
ものと思われる。従って、対象とする主な問題の周囲に
ある要素の中には、一部詳細説明を省いたものもある。
上述した特許出願に開示された内容は、DRAM技術に
関する詳細を補足するものである。本明細書の開示内容
によりメモリのサブシステムに関して更なる問題が提起
されていると感じた場合、上記出願の開示内容を見れば
答えを見つけることが出来るかと思われる。上記出願を
参照により本明細書に組み込むことにより、その存在を
明らかにした理由はそこにある。
【0002】これを踏まえた上で、これら2つの開示の
教示内容を組み合わせようと望んでもそれは出来ない。
上記出願では、対象となるメモリの全体がエラー捕捉R
AM(ECR)と呼ばれ、これが複数のメモリセットに
分割されるという考え方に基づいている。上記出願にお
いては、他の同様の機能も予想はされるものの、ECR
がほぼ唯一の対象メモリ機能であるため、この考え方は
容易に適合する。しかしながら、本願を準備する過程で
熟慮した結果、対象メモリ全体を説明する上で、「内部
テストメモリ」という語を使用した方が都合が良いこと
がわかった。これは、4個の別個のそして独立したメモ
リセットであり、その内部において適当な構成で様々な
機能メモリ機構(ECRを含む)を定義することが出来
るというものである。従って、上記出願においては、E
CR中にメモリセットが含まれているかのように開示さ
れているが、本願においては逆となっている。しかしな
がら、いずれの記載においても、全体的に見れば同じシ
ステムに見られる主題が説明されているのである。それ
らの相違点は用語の用法の違いに負うところが大きく、
2つの出願の記載内容の間に矛盾があるかのように見え
ても、記載されているメモリサブシステム処理におけ
る、より下位レベルの詳細では、そのような矛盾は解消
される。上記出願について触れたのは、これに記載され
た詳細を提供するためである。
【0003】本願の主題は更に、「Memory Te
ster with Enhanced Post D
ecode」と題する米国特許出願第09/702,6
31号(2000年9月31日出願)にも関連してい
る。本願は、この出願の開示内容から、その図5に関連
するかなりの部分を借り、部分的変更及び追加を加えた
後に本願の図5として使用している。この出願と共通の
内容が本願の文脈から外れたように見えてしまう可能性
を考慮すると同時に本願の開示内容の簡潔性を考え、上
述の「Memory Tester with Enh
anced Post Decode」も参照により本
明細書に組み込むことにする。
【0004】
【従来の技術】電子装置やその機能の日常生活における
浸透は極めて著しい。人々の多くは多岐にわたる雑多な
目的で家庭用パーソナルコンピュータ等と共に複数の生
産的ツールを所有している。多くの個人向けの生産的電
子装置は何らかの形態で不揮発性メモリを含んでいる。
携帯電話は電源を切ってもユーザーがプログラムした電
話番号や設定を保持出来るように不揮発性メモリを用い
ている。PCMCIAカードの場合、コンピュータのス
ロットから取り外された状態でも情報を維持することが
出来るように不揮発性メモリを使う。他の多くの一般的
な電子装置も同様に、電源が供給されないアセンブリ内
の不揮発性メモリの長期保存能力を利用しているのであ
る。
【0005】電子装置メーカーに不揮発性メモリを販売
する不揮発性メモリの製造者は、自社で製造したメモリ
が適正な動作を行うかを、テスタを用いて確認しなけれ
ばならない。不揮発性メモリは大量に一貫して低コスト
で製造、販売されるため、個々の製品の試験に要する時
間は可能な限り短くすることが非常に重要である。不揮
発性メモリの購入者は、購入したメモリ素子をより高額
なアセンブリに組み込む際、コストを節約するために最
小限度の試験のみ、或いは無試験で済むように望むこと
から、メモリ製造者は高い出荷歩留まりを要求される。
従ってメモリの試験手順は、不適合品の大部分、望まし
くは全ての不適合品を1回の試験工程において識別し得
るように、充分に高い効率を提供するものでなくてはな
らないのである。
【0006】不揮発性メモリの大型化、高密度化及び複
雑化が進むに伴い、テスタはこれらの寸法及び複雑性へ
の対応を、試験時間を大幅に増大させることなく行うこ
とを要求される。メモリテスタは連続的に稼動させる場
合も多く、その試験時間は最終部品のコストにおいて大
きい部分を占めるものと考えられている。また、テスタ
はメモリ素子の進化及び改良に伴ってメモリ素子に加え
られたこれらの変化に容易に適合出来なければならな
い。不揮発性メモリ試験において特徴的な他の問題は、
メモリのセルへの書き込みが何度も繰り返されると、そ
の製品の全体的な寿命性能が劣化する可能性があるとい
う点である。不揮発性メモリの製造者は、特別な試験モ
ードをメモリ素子中に組み込むことにより試験に関わる
多くの問題に対処している。これらの試験モードはメモ
リの購入者によって使用されるものではなく、製造者が
アクセスすることでメモリの全て、又は大部分を可能な
限り短時間で効率良く試験することが出来るものであ
る。不揮発性メモリの中には試験工程中に修復可能なも
のもある。従ってテスタは、修復の必要性、修復箇所、
必要な修復の種類を識別するものでなくてはならず、ま
た更に適切な修復を実施出来なければならない。このよ
うな修復工程には、メモリ中の特定の不適合部分を検
出、分離することが出来るテスタが必要である。修復機
能と共にこの特別な試験モードの利点を有効に活用する
ためには、素子から期待される応答に基づいた条件分岐
をサポートするテストプログラムを実行することが出来
るテスタの使用が有益である。
【0007】メモリを試験するプロセスは、概念的観点
から見るとアルゴリズム的プロセスである。例えば、一
般的な試験にはメモリセルに0又は1を書き込みながら
メモリアドレスを順次増分又は減分して行くものが含ま
れる。1メモリサイクル中に書き込まれる、又は読み出
される1及び0の集合を、一般的に「ベクトル」と呼
び、ベクトルのシーケンスを「パターン」と呼ぶ。試験
はチェッカーボード、ウォーキング(walking)1、お
よびバタフライパターンのようなパターンをメモリ空間
に書き込むことを含むのが一般的である。試験開発者は
アルゴリズム的構造の助けを借りることにより、より容
易かつ効率的にテストパターンを作成するためのプログ
ラムを生成することが出来る。アルゴリズム的に一貫し
たテストパターンはデバッグが容易であり、期待通りに
動かないパターン部分を分離するための論理的方法の使
用を容易にする。プログラムループ中で繰り返す命令及
びコマンドを使用してアルゴリズム的に作成されたテス
トパターンは、使用するテスタのメモリ空間が小さい。
従って、メモリテスタはアルゴリズム的テストパターン
作成能力を持つものが望ましい。
【0008】信号エッジの正確な配置及び検出もまた、
不揮発性メモリのテスタの効率に関連して考慮されるも
のである。指定マージンにおいては不適合でありつつも
中心においてはほぼ適合した部品を捕捉するには、不揮
発性メモリテスタは各信号エッジを他の信号エッジに対
して時間的に正確に配置出来なければならない。更に、
どの時点において信号エッジが受信されたかを正確に測
定する能力も重要である。従って不揮発性メモリテスタ
は充分な柔軟性と、刺激及び被試験デバイス(DUT)
であるメモリからの応答のタイミングと配置に対する充
分な制御性を持っていなければならないのである。
【0009】メモリテスタは、DUTに印加(刺激)す
る送信ベクトルを生成し、期待される返信(応答)とし
てのベクトルを受信するものであると言われている。こ
れらのベクトルを生成するアルゴリズム的論理素子は、
一般的にこれらの生成をベクトル中の特定のビットがど
のようにDUT中の特定の信号パッドへ、または、特定
の信号パッドから送られるかを考慮することなく行うこ
とが出来る。これはメモリテスタが信号を端子へ、また
は、端子からルーティングするためのマッピング機構を
含むためである。
【0010】メモリテスタは試験処理を容易にするため
に用いられる内部テストメモリを有する。この内部テス
トメモリは、リアルタイム生成しない場合の送信ベクト
ルの事前記憶や受信ベクトルの記憶、そして試験中に得
たDUT挙動に係わるエラー表示情報及びその他の情報
の記憶を含む幾つかの用途に用いられる。(SRAMを
用いたメモリテスタ内部のハウスキーピング処理も「内
部メモリ」と呼ばれるメモリの処理範囲に入るものと思
われるが、これらはテスタの内部処理専用のものであっ
てアルゴリズムレベルではわかりにくい傾向にあり、内
部制御レジスタに相当するものである。このようなメモ
リは、本明細書において「内部制御メモリ」と呼び、D
UTへの刺激及びDUTからの応答に直接的に係わるビ
ットパターンの記憶に用いるメモリを指す語である「内
部テストメモリ」からは除外する。)当然のことなが
ら、この内部テストメモリは実施される試験と少なくと
も同じ速度で動作することが出来なければならない。ご
く一般的な方式は、内部テストメモリ(又はその一部)
を、DUTに印加されるアドレスと同じ(又はそれから
派生したもの)アドレスで指定するものである。この場
合に内部テストメモリ中のアドレス指定された場所に記
憶される情報は、試験が実施される間にDUTの同じア
ドレスにおいて生じた挙動を何らかの形で表すものであ
る。テストプログラム中のアルゴリズム的配慮により連
続する送信ベクトルに関わるアドレスのシーケンスが任
意である場合もある。従って内部メモリは、高速性及び
ランダムアドレス指定能力という2つの性質を持ってい
なければならない。高速かつ制御も容易で、完全なラン
ダムアドレス指定が可能であるメモリとしてすぐに思い
浮かべられるのはSRAMである。実際、従来のメモリ
テスタもSRAMを内部テストメモリとして採用してい
る。
【0011】残念ながら、SRAMはかなり高価なもの
であり、それにより、メモリテスタが使用出来る内部テ
ストメモリの容量が制限されている。この結果、メモリ
テスタの機能性にはメモリ不足による限界がある。DR
AMはこれよりも大幅に安価ではあるものの、高速処理
においてはランダムアドレス指定が出来ない。
【0012】メモリテスタの内部メモリとしてSRAM
に代えてDRAMを使用することが出来る。以下の概要
説明でも簡単に触れるが、内部テストメモリとして使用
するためにDRAMの処理速度をいかに上げることが出
来るかという問題は、使用するDRAMの速度を上げる
かわりにその容量を大きくすることにより解消すること
が出来る。これには、DRAMの同種の複数のバンクを
グループとして取り扱う。1グループ中の異なるメモリ
バンクへの信号をインターリーブする処理と、このよう
なバンクグループ間で多重化する処理とを組み合わせる
ことにより、各バンクにおけるメモリトラフィックをそ
のバンクが処理し得る速度にまで落とすのである。(読
者の便宜をはかるためにこの技術の概要を簡単に説明す
る。この技術の構造的側面及びこれに関連する用語が、
以下に開示する発明的主題を説明する上で有用であるた
めである。)
【0013】各々が4つのバンクから成る3つのグルー
プ間において3路(three-way)多重化し、これに1グ
ループへの信号トラフィックに対する柔軟な4倍インタ
ーリービング方式を組み合わせることにより、要するメ
モリバスは3本のみでありながら処理速度を12倍近く
向上させることが出来る。マルチプレクサへの次のグル
ープの選択を行うためのラウンドロビン方式は単純であ
り、各グループに対するインターリーブ機構が最後に割
り当てられたタスクを完了するために必要な時間が各機
構に確実に与えられるようになっている。1グループに
おける全てのインターリーブアクセスは、これも単純な
ラウンドロビン選択方式で選択される次のバンク(その
グループ中の)に実施される。この構成においては、1
2バンクの各々が使用可能アドレス空間全体を表すもの
であり、いずれの書き込みサイクルも、これら12バン
クのいずれか1つをアクセスすることになる。これは、
いずれの対象アドレス或いは対象アドレス集合も12バ
ンク全体に広がって位置しているためにそのDUTの試
験中に生じた不具合を知るためには試験終了時に12バ
ンク全てを調べなければならないことを意味している。
従って特定のチャネルは12ビットで表される(各バン
クから1ビットで、そのバンクに関する、ワード中のそ
のビットの位置はチャネルにより決定する)。
【0014】しかしながら、不具合情報を得るために1
2バンクの全てを個々に(手動で)照会しなければなら
ないとなれば厄介である。従ってあるアドレスにおける
読み出しサイクル中に12バンク全ての結果を自動的に
「合成」(合併)して統合化された結果を得るユティリ
ティ機構が設けられている。これにより、統合化された
データを後に最高速度で読み出すことが可能となる。一
実施例においては、ランダムアドレス指定されたメモリ
トランザクションについての最高速度が100MHzで
ある。
【0015】33MHzでも充分であるとされる場合、
ランダムアクセスは多重化をしなくてもインターリーブ
処理のみで対応することが可能であり、このような場
合、統合化機構及びメモリアドレス指定方式は適宜調整
される。アドレス指定方式は変化し、メモリの深さを1
00MHzランダム動作の場合の3倍にすることが出来
る追加グループ選択ビットを含むことになる。これらの
2つの処理モードを、それぞれR100及びR33と呼
ぶ。更に単一のバンクに対する100MHz処理を行う
L100モードも存在するが、これはDRAMに送られ
る良好なアドレス(行アドレスの変化が絶対最小)に拠
るものである。
【0016】内部テストメモリ構造の最上位レベルに
は、4つのメモリセットがあり、メモリセットの各々は
独自の独立したアドレス空間を持ち、要求されたメモリ
トランザクションを実行している。2つは上述したDR
AMであり、残り2つはSRAMである。各メモリセッ
トは専用のコントローラを持ち、これに向けてメモリト
ランザクションが送られて来る。表面上の処理能力に関
しては、4つのメモリセットは全て基本的に同じに見え
る。これらの違いは、メモリ空間のサイズと、これが内
部的にどのように実現されているかだけである。SRA
Mメモリセットはもともと充分な高速性を持っているた
め、多重化及びインターリーブ処理は採用していない。
これらは独立したものではあるが、同じ種類(SRAM
又はDRAM)のメモリセットを「積み重ねる」、即
ち、1つのより大きなアドレス空間として取り扱うこと
が出来る。これはメモリセット自体ではなく、その上位
の制御レベルにおいて、アドレスをアルゴリズム的に生
成すること、そして実際にメモリトランザクションを送
るべきメモリセットを決定することにより実施される。
これは、R100及びR33モード間においてメモリセ
ット及びそれらのコントローラがグループを統合してア
ドレス空間を3倍にするといった自動的な処理ではな
い。各メモリセットのコントローラは、他のメモリセッ
トや他のコントローラの存在自体さえ認識していないの
である。
【0017】よって、テスタの内部テストメモリは2つ
が「内部」SRAM、他の2つが「外部」DRAMであ
る4つのメモリセットに区分化されている。誤解の無い
ように触れておくが、これらのメモリは全て物理的には
メモリテスタ内部にある。「内部」及び「外部」という
語は、集積レベルに関するものである。SRAMはテス
タの機能回路に関わるVLSI(超大規模集積回路)上
に集積されている部品であり、DRAMは別個にパッケ
ージングされ、VLSIに隣接して実装されている部品
である。SRAMの容量はかなり小さい(例えば1メモ
リセットあたり1メガビット程度)が、DRAMの容量
はかなり大きく、選択可能(例えば1メモリセットあた
り128〜1024メガビット)である。SRAMメモ
リセットは常に存在し、例えばROMであるDUTに期
待される内容を記憶する等、それらに好適な目的に使用
することが出来る。DRAMメモリセットは実際には随
意選択であり、一般に修復を行うための後の解析用に記
録を作成しておくために使用されるが、用途は他にもあ
る。テスタはどちらのメモリをどの用途に利用するかに
ついて、SRAMとDRAMメモリセットとの間で強制
的に区別するようなことはしない。用途の判別は主にそ
のサイズにより決まる。SRAMメモリセットは小さい
が、DRAMメモリセットは潜在的に大きい。各種メモ
リセットをどのように利用するかについて決定するの
は、テストプログラムを作成する技術者である。
【0018】先にも述べたように、メモリテスタで実行
するテストプログラムの開発及び保全においては、アル
ゴリズム的処理能力が使用出来ることが望ましい。その
プログラマビリティにより得られる複雑性(ループ中に
ネストするループ、試験結果に応じた分岐)に加え、こ
れには様々な特別な処理能力が作り込まれることによ
り、特定の特殊な特性を持つ不揮発性メモリの自動試験
だけではなく、一般的な不揮発性メモリの自動試験をも
容易にするすることが出来る。最も重要なのは、その複
雑性に応じた複雑性がテストプログラムの開発及び保全
作業に課せられるという点である。要するに、テストプ
ログラムはそれ自体が複雑なメカニズムを持っているこ
とが普通なのである。
【0019】ここでテストプログラムを開発する技術者
の立場から考える。最初のバージョンが期待通りのパフ
ォーマンスを見せないことは珍しいことではない。行う
べきではない処理を実行したり、行うべき処理を実行し
なかったりすることはままあることである。コードを調
べてもわからない場合(現在の理解が許す範囲において
は適正に見えている等)があるが、この場合に何が起こ
っているかを調べるための最も適正なツールとして電圧
波形のオシログラフィックトレースがあげられる。即
ち、何が生じているのかを理解する過程、或いは学説を
立証する等の過程において更なるデータソースが必要と
なるのである。残念ながら、テストヘッドに対し、所望
のオシロスコープに続く1、2本のプローブを単純に繋
ぐといったようなことを実際に実施することは出来な
い。プローブを取り付ける実際の物理的な位置を特定出
来たとしても(可能ではあるが実際上は困難)、一般的
にそれを行うための充分なスペースはなく、その物理的
構造にもプローブ及びケーブルを支持し得る充分な強度
が無い場合が多い。更に、所望の測定を妨害する電気的
負荷や他の障害の問題もある。これらの問題が全て解消
出来たとしても、オシロスコープをどのようにトリガし
て対象とする問題に係わるデータが取り込まれるように
するかという問題が残っている。
【0020】オシロスコープのプローブを接続する場合
の困難に関しては、上記に述べたとおりであるが、オシ
ロスコープで取り込むデータの問題については、適正に
理解する上で更なる背景事情を理解しなければならな
い。この説明にあたり、アジレントテクノロジー社の8
3000VLSIテストシリーズに用いられる「ベクト
ルマシン」と呼ばれるタイプのメモリテスタを説明す
る。
【0021】ベクトルを使用するテスタは、DUTに順
番通りに印加する刺激ベクトルの明示リストを持ってい
る。テスタは単純にこれらを印加し、どのような受信ベ
クトルが生じたかを記録する。これは信号を「入れる/
出す」といった処理を行う即時刺激/即時応答型のシス
テムである。ベクトルマシン及びDUTの性質として、
リストの実行は何時でも停止することが出来、また、送
信ベクトルリスト中で事前に選択した適当な位置からの
再開も可能である。以下に説明するアルゴリズム的パタ
ーンを使用したメモリテスタと同様に、ベクトルテスタ
は(受信ベクトルの作成に関して)可変サンプリング閾
値と、クロック信号に対する可変サンプルタイミングオ
フセット値とを有している。ここに無いものとは、対象
チャネルのアナログ電圧波形をデジタル化するA/D変
換器である。しかしながら、手許にあるリソースを使用
して選択されたベクトルが実行されている間に対象チャ
ネル上の電圧波形を復元することは出来る。これは面倒
な処理ではあるが、出来ないことはない(そしてこれに
代わる実用可能な方法も無い)。以下にこれをどのよう
に行うかを説明する。
【0022】通常の処理モード(非スコープモード)に
おいては、一対の特定の閾値及び1つのサンプルタイミ
ングオフセット値が選択され、そのシーケンスについて
データが記録される。これらの閾値とは、VOH(出力
電圧ハイ)及びVOL(出力電圧ロー)であり、10ミ
リボルトずつ段階的に調整することが出来る。そのチャ
ネルのサンプルタイミングオフセット値により指定され
る時点においてチャネル電圧がVOHを超えている場合
にVOH閾値が満たされたものとみなされ、チャネル電
圧がVOLよりも低い場合にはVOL閾値が満たされた
ものとみなされる。これらの状態を表す信号を、それぞ
れにYVOH及びYVOLと呼ぶものとする。その対象
チャネルについて受信ベクトル中に記録される内容と
は、サンプルタイミングオフセット値が指示する時点に
おいて、チャネル電圧がこれらの閾値の各々を満たした
か否かである。
【0023】スコープモードの基本的な発想は、波形に
沿った好適な間隔を持つ時点について、これらの時点に
おける波形のどちら側にどんな閾値があるかを調べると
いうものである。これを実施するためには、対象事象を
含むベクトルシーケンスを繰り返し実行しなければなら
ない。このように繰り返して実行する間、VOH電圧閾
値を反復サイクル間でわずかずつ変化させ、このシーケ
ンスを連続的に繰り返すことにより、より多くのデータ
を記録する。これはVOH閾値が両限界にわたって使用
されつくすまで続けることが出来る。シーケンス中の各
ベクトルについて記録された受信結果を解釈することに
より、オシログラフィックトレースに寄与する内容が作
成される。[連続するYVOHのインスタンス(instan
ce)が同じ値(真[TRUE])であり、ある特定のインス
タンスにおいてYVOHの値が新たな値(偽[FALS
E])に変化し、その後連続する値が再度同じ値(いず
れも偽)となったが、先には同じであったものが逆の値
となり、逆転したまま維持された場合を想定する。これ
は、値が真から偽に変化した時点(VOH値のその更新
処理中に使用された(無変化の)サンプルタイミングオ
フセット値により決まる)におけるチャネル電圧値が安
定していたことを示す。安定した電圧値は、YVOHの
値が変化した、これらの連続するVOHインスタンス間
のどこかの値である。この周知の従来技術においてはこ
れ以外のケースもあるが、本明細書ではこれ以上の説明
は省略する。]各ベクトルに対応する上述の寄与内容
は、そのサンプルタイミングオフセット値に対してのみ
のものである。
【0024】VOHを一方の限界値からもう一方の限界
値まで単に増分させるという手法は、互いに適当な近接
性があり且つそれらのYVOHが逆の値を持つ一対のV
OH値を発見するための唯一の方法ではない。例えば、
5ボルトの範囲を3ボルト区分で掃引してもあまり意味
が無い。更に、ある開始点が与えられている場合、遷移
が見つかった時点で増分を止めることも可能である。ノ
イズの多い信号については、その時点から何回かにわた
って追加増分を実施することにより、遷移が事実その付
近で生じたことを確認することも出来る。(ノイズでわ
かりにくい遷移をまたいだサンプリングについては、平
均化が有効である。)最後に、2等分探索または予測法
を含む他の探索方式を使用することにより、YVOHの
所望の遷移に関わるVOHの値を発見するために必要な
反復回数を減らそうと試みることも可能である。このよ
うな方式は、求める波形の生成に要する時間を大幅に削
減するものであり、ユーザーにとっては大きな感心事で
ある。そうであっても全体の処理を終わらせるには、ま
だ時間がかかるかもしれない。
【0025】次の段階においては、違うサンプルタイミ
ングオフセットを使って同じ処理を繰り返す。結果的
に、対象ベクトル実行中のチャネルの電圧挙動を完全に
説明するものが作られることになり、デジタルオシロス
コープと同じようにこれを電圧波形として表示すること
が出来る。縦(電圧軸)の分解能はVOHを変化させる
段階の大きさであり、横(時間軸)の分解能はサンプル
タイミングオフセットを変化させる段階の大きさ(最小
20ピコ秒まで可能)である。これはベクトルマシンタ
イプのテスタにおいて用いられてきた従来技術である。
これをアルゴリズム的に制御される本パターンマシンに
おいて使用したいが、しかしこれを困難にする大きな問
題が幾つか存在する。
【0026】
【発明が解決しようとする課題】ベクトルマシンは、単
純に明示リスト中のベクトルの1つを識別することでト
リガ機能を容易に実行することが出来るが、アルゴリズ
ム制御マシンにおいては、「オシロスコープをトリガす
ること」(そのデータを記憶すべき特定の受信ベクトル
を識別すること)は容易ではない。デジタル環境におい
ては一般的に言えることであるが、スロープを持つ単純
なアナログトリガレベルはほとんど意味を持たない。
(同時に発生した)信号値の特定の組み合わせ(パラレ
ルワード)を検出することは、それ自体だけでは不適切
である場合が多い。更にテストアルゴリズムを実施する
ために実行中のコードを作業者が操作し、「ここでこの
命令語を実行する時にトリガをかける」と指示をするこ
とも通常は出来ない。これが有効な場合もあり得るが、
コードの中に不良と一義的に結びついて実行される命令
がなければならないため、多くの場合は有効ではない。
アルゴリズム的可能性はしばしば複雑過ぎ、1ループ中
に“at fault”命令が何度も現れて、エラーが
生じる前に数十万回或いは数百万回にもわたり、完璧に
実行される場合もあるのである。
【0027】更に覚えておかねばならないのは、オシロ
グラフィックトレースとして波形を復元するに充分なデ
ータを取り込む迄には、全く同じ一連の事象が多くの回
数(恐らくはVOH値の数とタイミングオフセット値の
数との積)にわたって生じなければならないという点で
ある。ここでテストプログラムがエラーフラグ(DUT
の応答が期待値と一致しなかったことを意味する)での
分岐を含んでいる場合を想定する。エラーフラグはテス
トプログラムフローを変えるものである。しかしなが
ら、スコープモードでの反復処理の間、エラーフラグは
他よりも、そしてトレースに寄与する各ベクトルにおい
て、より頻繁に生じることになる。何故か。その理由
は、サンプルタイミングオフセット及び閾値の掃引にあ
る。この掃引は、DUTが動作不良を生じていない場合
でも、エラーフラグを設定しプログラムフローを変える
ことになる「誤った回答」を作成するように結び付けら
れる。変えられたプログラムフローが波形に何らかの形
で対応した変化を生じることはほぼ確実である。しか
し、繰り返し実施される同一の波形挙動インスタンスか
らトレースを復元するために必要な処理が、(プログラ
ムフローを変化させた結果)その波形を変えてしまうと
すれば、安定した波形は得られず、解釈し得るトレース
の復元も出来ない。しかしながら、テストプログラム中
においてエラーフラグでの分岐は有用な手段であり、そ
の利用を諦めることは考えられない。即ち、テストプロ
グラムをスコープモードで使えるようにするためにこれ
を必ず何らかの制約された方法で書かなければならない
という状況は、あるべきではないのである。加えて望ま
れるのは、あらゆる既存のテストプログラムに対して
も、安定した反復を発生させるための変更をこれらに加
えることなくメモリテスタのユーザーがスコープモード
を適用出来るようにすることである。テストプログラム
がトリガ命令を促すことになるように、或いはトリガ命
令を含むことになるように、テストプログラムのソース
コード変更を行うことも避けたい。かわりに、閾値とサ
ンプルタイミングオフセットを掃引する間に取り込んだ
データからトレースを復元させることに加え、メモリテ
スタ自体にこれらの面倒な問題を処理させることが望ま
しいのである。
【0028】更にトリガ仕様メカニズムが提供された場
合に望まれるのは、この結果得られたトリガを利用して
内部テストプログラム分岐をエラーフラグに基づいて強
制し、エラーフラグに関わる実際の値とは関係なく、特
定の経路を辿らせることである。例えば、テストプログ
ラムはDUT中の特定種類の不具合に対応した多くの分
岐を含む場合がある。プログラマは、これらの様々な分
岐がすべてアクセス可能であるかどうか、そしてこれら
が意図した通りのパフォーマンスを見せるかどうかを検
証したいと望むものである。問題は、コードを編集する
ことなく、そして更に特定の動作不良を持つことが明ら
かな特殊DUTの集合(テストプログラムに意図した処
理を確実に実行させる)を必要とすることなく、これら
の様々な分岐をいかに生じさせるか、という点である。
どうするべきか。
【0029】
【課題を解決するための手段】実質的なアルゴリズム的
内容を含んだテストプログラムを実行するために用いら
れるアルゴリズムパターン発生器を有するメモリテスタ
のスコープモードにおいて、如何にトリガ信号を提供す
るか、という問題を解消するために、メモリテスタが有
するアルゴリズムパターン発生器にトリガ仕様の発生を
検出するハードウエアが設けられる。トリガ仕様は、D
UTを動作させるために用いる既存ハードウエアの量
(アドレスやデータ等)にアルゴリズム的挙動を助ける
ために設けられた特定の既存補助レジスタの内容が組み
込まれたものとして表現されている。これがテストプロ
グラムのどの部分が実行されているかに基づいて更に修
飾される(qualified)ことになる生のハードウエア
(ブレークポイント)トリガを形成する。(テストプロ
グラムの作成に現在使用されている言語では、上述した
レジスタの1つではない任意のメモリ位置における値と
してのみ存在する抽象変数を作成することが出来ない。
よってアルゴリズムパターン発生器中の特定のハードウ
エアレジスタに実施されるハードウエアマスキング及び
AND演算がトリガ生成の開始点として妥当である。)
修飾されたブレークポイントトリガは、スコープモード
をトリガし、エラーフラグを選択値にする(強制する)
ために(テストプログラムが強制的に特定の経路を辿る
ように)用いることが出来るシステムトリガ信号となる
前に、0回以上のDUTサイクルにより遅延させること
が出来る。
【0030】テストプログラム自体は疑似コードに似た
言語で書かれているが、上述したように強制された変数
群が用いられている。コンパイラはこのソースコードを
処理し、アルゴリズムパターン発生器中の他のハードウ
エア中の状態を制御しそれに応答する実行可能な命令語
を生成する。スコープモード処理におけるユーザーイン
ターフェースは出来れば別の環境において実行されるも
のとし、ユーザーがその処理との対話を行うことでトリ
ガ仕様を定義することが望ましい。スコープモード処理
は、ハードウエアレジスタ値レベルでの生のトリガ仕様
を認識するマスク及び比較機構を設定する。更に、生の
トリガ仕様を実行可能にするテストプログラム部分とし
て、どの部分を考慮するかをコンパイラに対して通知す
る。これはコンパイルコードにおいて、アルゴリズムプ
ログラム発生器に対する実行可能命令語中に「トリガ機
能を現在にイネーブルした」ことを意味する1ビットを
設けることにより実行される。試験ハードウエアとはあ
まり関連性の無い抽象変数値のモニタ機能及びロジック
アナライザ形式の順次トリガをいずれかの位置に設ける
ことが望ましいが、必須ではない。
【0031】電圧閾値及びサンプルタイミングオフセッ
トの掃引で安定した波形を提供するという課題は、メモ
リテスタに、トリガ発生後のテストプログラムの最初の
パスの間に発信された送信ベクトルの適当数(例えば1
28)のシーケンスを覚えさせておく(記憶させてお
く)ことにより解決される。このシーケンスを「ターゲ
ットシーケンス」と呼ぶものとする。ターゲットシーケ
ンスがメモリに記憶されると、スコープモードはテスト
プログラム全体を再実行し(初期条件の一部を確立する
必要があるため)、これをトリガ発生まで以前と全く同
じように起動させることにより、所望の情報を抽出する
ことが出来るようになる。しかしここでは、トリガが生
じた場合、生のアルゴリズムからではなく、記憶された
ターゲットシーケンスから更なる送信ベクトルが発信さ
れ、VOH値及びサンプルタイミングオフセット値の組
み合わせが切り換わる。この組み合わせは、それらの値
の取得掃引中の1段階を構成し、記憶されたターゲット
シーケンスの終わりに至るまで維持される。(「取得掃
引」をオシログラフィック表現の「水平掃引」と取り違
えてはならない。)受信ベクトルの対応シーケンスは受
信と同時に自動的に記憶される。ターゲットシーケンス
の終端において、テストプログラムが再度再開される
(しかしこれには通常の閾値及びサンプルタイミングオ
フセットが用いられる)。処理が進むと、いずれ次のト
リガが生じ、これにより、記憶されたターゲットシーケ
ンスが再度生のアルゴリズムに変わって用いられる一方
で、取得掃引中のその段階における次の値の組み合わせ
がターゲットシーケンスの終端に至るまで維持される。
先程と同様に、取得掃引におけるその段階に関わる受信
ベクトルが自動的に記憶される。この処理は取得掃引全
体が実行されるまで続き、実行が終了すると、自動的に
記憶された対応受信ベクトルの集合を調べることにより
ターゲットシーケンス中の対象信号の波形を作成するこ
とが可能となる。
【0032】上述した技術は、メモリテスタにおいてタ
ーゲットシーケンスの記憶にFIFO構造(又は他のメ
モリ構造)を使用すること、そしてターゲットシーケン
スの記憶処理及びその後のトリガ発生後の記憶ターゲッ
トシーケンス実行時の切り換え処理を監督する制御機構
を設けることで、より容易に実行出来る。実行可能プロ
グラム語は、プログラム中にインデックスをつけるため
に要するアドレスよりも大幅に長い(208ビット長)
ため、FIFOに記憶されるのはターゲットシーケンス
中の命令語のアドレスシーケンスであって、命令語その
ものではない。ターゲットシーケンスのアドレスがFI
FOに記憶された後、取得掃引が開始される前にこれら
のアドレスは対応する実際の命令語シーケンスをフェッ
チして記憶するために使用される。コピーされたターゲ
ットシーケンス中にあるいずれの分岐構造も、シーケン
ス中の次の語(この語はターゲットシーケンスの最初の
取り込み処理中にいずれにしても生じたものである)を
指示するように変更される。この実行可能なターゲット
シーケンスは、コンパイルされたテストプログラムであ
る命令語を格納するプログラムSRAMの予約領域に記
憶される。後のシステムトリガが生じると、テストプロ
グラムは一時的に停止し、取得掃引の次の段階のVOH
値及びサンプルタイミングオフセット値が設定される。
そしてプログラムSRAMをアドレス指定するプログラ
ムカウンタが予約領域の開始点に設定される。このよう
に取得掃引の次の段階が設定されると、テストプログラ
ムの実行が、始めに取り込まれたターゲットシーケンス
の繰り返しと共に再開される。取得掃引の各段階におけ
る結果(受信ベクトル)はECR(エラー捕捉RAM)
に一時的に記憶(キャッシュ)される。このような受信
ベクトルのECRへの記憶は通常の処理であるが、しか
し一般的にはこれは特定の対象エラーに対して条件付け
られているものである。ここでは、エラーの有無に関係
なく記憶しておくことが望まれており、これを実現する
ために設けられている機構は単純なものである。
【0033】更に、トリガ仕様の充足が検出された場合
に、閾値及びサンプルタイミングを「通常値」から「掃
引値」に高速で変化させる処理を特殊レジスタが助けて
いる。この技術は、テストプログラムの実行を監視する
(そしてスコープモードを管理する)OSが、ターゲッ
トシーケンス全体にわたる取得掃引の各段階において自
動的に記憶されたキャッシュされた受信ベクトルをEC
Rからアンロードするために使う専用の隠しメモリを持
つように構成することによっても更に容易となる。この
隠しメモリは、スコープモードにおいて対象信号の波形
情報を蓄積し、最終的にその波形を作成・表示するため
に使用される。
【0034】テストプログラムの検証処理における課題
は、選択したエラーフラグの選択値をテストプログラム
実行環境中に強制するためにスコープモードトリガを使
用すること(しかし恐らくはスコープモード処理抜き
で)で、その解決が助けられる。これは対応する種類の
エラーの出現を、そのエラーが生じていない場合でも強
制するものである。誤解の無いように述べるが、同じエ
ラーフラグであっても、テストプログラムの違う場所に
おいては違うことを意味する場合が多い。プログラムの
特定の部分に至るまでエラーフラグの発生を遅延させる
ことは、どのようにトリガを使用するかということであ
る。トリガがどのエラーフラグを「合成」するかは、設
定可能である。このように、プログラムを通してトリガ
を辿ることにより、使用中のDUTが完全無欠であった
としても、複雑なプログラムの様々なエラー関連分岐を
生じさせることが出来るのである。
【0035】
【発明の実施の形態】まず、図1を参照するが、ここに
は本発明の原理に基づいて構築された不揮発性メモリテ
ストシステムの概略ブロック図1が描かれている。特に
図示のシステムは、一度に最高36個の個別のDUTを
各々最高64のテストポイントにおいて同時に試験する
ことが出来るものであり、64箇所よりも多いテストポ
イントを持つDUTを試験するために試験リソース集合
の構成要素を結合することが出来るように再設定機能を
備えている。これらのテストポイントは、未だ分割・パ
ッケージングされていない集積回路ウエハの一部分上の
位置であっても、或いはパッケージングされた部品の端
子であっても良い。「テストポイント」という語は、信
号を印加すること(例えば電源供給、クロック、データ
入力)が出来る、又は信号を測定すること(例えばデー
タ出力)が出来る電気的部位を指す。本願においては、
当該産業分野における習慣に従い、テストポイントを
「チャネル」と呼ぶものとする。先に述べた、「結合さ
せる試験リソースの集合」という語は、最高36個まで
のテストサイトを指し、各テストサイトはテストサイト
コントローラ4、(64チャネル)DUTテスタ6、そ
してDUT14への実際の電気接続を成す(64チャネ
ル)ピンエレクトロニクスの集合9を含む。あるDUT
の試験において64本以下のチャネルを要するのであれ
ば、このDUTの試験には単一のテストサイトで充分で
あり、この場合を、例えば「テストサイト#1(図1に
図示)が『単一サイトテストステーション』を形成す
る、或いは『単一サイトテストステーション』として動
作する」と表現する。一方、上述した再設定が何らかの
形で行われる場合、2つ(以上)のテストサイトが「結
合」して128チャネルを有する、より大型の同等のテ
ストサイトとして動作する。従ってこの場合を、ここで
も図1を例にあげると、例えば「テストサイト#35及
び#36が『2サイトテストステーション』を形成す
る」と表現する。
【0036】次に逆の場合を簡単に考察してみるが、留
意すべきは1つのテストサイト全体で1つのDUTを試
験しなければならない、或いは1つのテストサイトが1
つのDUTしか試験できないということではない点であ
る。ウエハが2個、3個又は4個のダイ(恐らくは隣接
しているものであるが、必ずしもそうでなくとも良い)
を含み、その試験チャネル条件の和が64本以下である
と仮定する。すると、これらのDUT(15a−d)を
単一のテストサイト(例えば図1のテストサイト#2)
で試験することが出来る。これが可能なのは、後述する
特定のハードウエアの説明で補足するが、各テストサイ
トが汎用プログラマビリティを持つためである。そのテ
ストサイトが実行するテストプログラムを、そのテスト
サイトのリソースの一部が一つのDUTの試験に使用さ
れることになるように、そして他の部分が他の1つのD
UTの試験に使用されることになるように書くことが出
来る。要するに、先に述べた最初の2つのDUTの論理
結合である第三のDUTがあると仮定して、この第三の
DUTを単一のテストサイトで試験することが出来れ
ば、その「構成要素であるDUT」をそのまま同様に試
験することが出来るはずであるということである。勿
論、大きな違いは、第三のDUTに対する統合的な回答
が出るのではなく、2つの「構成要素DUT」のうち、
どちらが合格したか不合格となったかの記録が取られ
る。即ち、第三のDUTのどの部分が不合格となったか
が問題となるのである。更に、不良DUTへの駆動信号
を除外する又は制限する問題や、いずれのDUTが不具
合を示しているかに基づいてテストプログラムを分岐さ
せると同時にテストプログラムの過剰なマルチスレッド
化を防ぐ問題を含む他の問題も存在する。この単一テス
トサイトでのマルチDUTテストステーション機能は特
定の側面においてはかなり単純であり、他の側面におい
ては複雑である。このマルチDUT試験を2つ以上のテ
ストサイトを結合する概念と混同してはならない。
【0037】このテストサイト再設定の概念を抜けば、
テストサイトとテストステーションの間には何等の相違
も無いことになり、いずれか一方の語を使用すれば良い
ことになる。しかしながら明らかなように、この概念に
よればテストステーションの数は必ずしもテストサイト
の数と同じとはならない。過去においても、単純なマル
チDUT試験では、1つのテストサイトを分割してより
多数のテストステーションを作成すること(DUTが1
つのテストサイトを使い切るほど複雑ではない場合等)
で双方の数が違う場合があった。しかしながら、ここで
の数の違いは、複数のテストサイトが1つに結合してマ
ルチサイトテストステーション(DUTが単一のテスト
サイトで試験するには複雑過ぎる場合)を形成すること
にもよる。
【0038】説明を先へ進めると、テストシステムコン
トローラ2は、システムバス3を介して最高36個のテ
ストサイトコントローラ(#1〜#36)4a〜4z
(符号後部のa〜zは1〜26文字迄であり、36個に
対応しないが、数字符号の後に付ける接尾記号として
は、まぎらわしい数字を使用するより好ましいと考え
た)に接続している。テストシステムコントローラ2
は、不揮発性メモリの試験タスクに関わる好適なテスト
システム制御プログラムを実行するコンピュータ(例え
ばNTを起動するPC)である。テストシステム制御プ
ログラムは、所望の試験を行うための仕事の階層(及び
複雑性)において最高レベルにある抽象概念を表すもの
である。テストシステムコントローラは異なるテストサ
イトでどのプログラムが起動しているかを決定すると同
時に必要に応じてテストプローブ及びDUTを動かすロ
ボットシステム(図示せず)を監督するものである。テ
ストシステムコントローラ2は、「テストサイトの一部
が単一サイトテストステーションとして動作するよう
に、他の一部がマルチDUTテストステーションとして
動作するように、そして他のテストサイトが結合してマ
ルチサイトテストステーションを形成するようにプログ
ラムされる」という概念を支持する形で機能することが
出来る。このような状況においては、異なる部品が試験
されていることは明らかであるが、最も好ましくは、異
なる部品に異なる試験が用いられることである。同様
に、全ての単一サイトテストステーションが部品の同じ
様式を試験しなければならないという条件は無く、マル
チサイトテストステーションにもそのような条件は無
い。従って、テストシステムコントローラ2は、必要と
されるテストサイト結合を実施するコマンドを発し、そ
の後、使用される様々なテストステーションに適正なテ
ストプログラムを実行させるようにプログラムされてい
るのである。テストシステムコントローラ2は更に、試
験により得られた結果に関する情報も受信するため、不
良品を破棄するための適正な行動を取ることが出来、そ
して例えば工場設備設定における製造工程制御等に利用
出来る様々な解析結果のログを管理することが出来る。
【0039】テストシステム自体は相応に大型の複雑な
システムである。一般的にロボットサブシステムを含
み、これによりウエハをステージ上に搭載し、続いてピ
ンエレクトロニクス9と接続するプローブ下の試験位置
に試験対象である1つ以上の未来のダイ(この時点では
ウエハはダイシングされていない)を配置するようにな
っている。テストシステムはまた、好適なキャリア上に
搭載されたパッケージ済み部品の試験にも使用すること
が出来る。以下に説明するように、1テストステーショ
ンの形成にいくつのテストサイトが用いられているか、
或いは1テストサイトにいくつのテストステーションが
形成されるかにかかわらず、使用されるテストステーシ
ョンの各々には少なくとも1つの対応するテストサイト
コントローラ(後に説明する)が存在する。テストサイ
トコントローラは、例えば36〜64MBのプログラム
及びデータメモリの組み合わせを含み、VOS(Ver
saTest O/S;これはアジレント社のV130
0又はV3300等の不揮発性メモリを試験するための
初期の製品にも使用されている)と呼ばれる自社開発O
Sを起動するインテル社のi960プロセッサ等の埋め
込み型装置である。ここではしばらくの間、単一サイト
テストステーションについてのみ考える。具体的な事例
として、テストサイト#1がテストステーション#1と
してWHIZCO部品番号0013を試験するように動
作しているものとする。試験方式には100種類程度の
異なるタイプの試験(電圧レベル、パルス幅、エッジ位
置、遅延を変化させ監視すること、及び大量の選択パタ
ーン情報の単純な記憶と取得)の実施が含まれ、各タイ
プの試験ではDUTに対して何百万回ものメモリサイク
ルが含まれる。最上位レベルにおいて、テストシステム
のオペレータがテストシステムコントローラ2に対して
テストステーション#1を使ってWHIZCO0013
の試験を開始するように命令する。テストシステムコン
トローラ2は、その処理の過程でテストサイトコントロ
ーラ#1(4a)[埋め込み(コンピュータ)システ
ム]に対して関連のテストプログラム(例えばTEST
_WHIZ_13)を起動するように指示する。このプ
ログラムがテストサイトコントローラ#1の環境中に既
にある場合、単純にこのプログラムが実行される。なか
った場合、プログラムはテ ストシステムコント
ローラ2から供給されることになる。
【0040】ここで基本的には、プログラムTEST_
WHIZ_13は完全に独立したものであっても良い。
しかしその場合、ほぼ間違いなくそのプログラムは大き
く、テストサイトコントローラ4aの埋め込み型システ
ムのプロセッサがこれを充分に高速で起動し、試験結果
を所望の速度で生成すること、或いはDUTメモリサイ
クル毎に均一な速度で生成することでさえ難しくなる。
従って、書き込むべき、或いは読み出し処理で期待され
るアドレス及び関連データのシーケンスを生成する下位
レベルのサブルーチンタイプの動作は、必要に応じてD
UTテスタ6中にあるプログラム可能なアルゴリズム的
機構により実行されるが、これはテストサイトコントロ
ーラ4中の埋め込みシステムが実行するプログラムと同
期して動作するものである。この処理を、低レベルサブ
ルーチン様の動作とDUTメモリサイクルを起動するタ
スクとをDUT14のハードウエア環境により近い機構
(DUTテスタ)にエクスポートすることであると考え
る。すると、一般的に言って、テストシステムコントロ
ーラ2がテストサイトコントローラにテストプログラム
を供給する度に、テストサイトコントローラに対するプ
ログラミングにより記述される、又は要求される、全体
的な動作の実行に要する適正な低レベル実行ルーチン
(恐らくは試験するメモリに特定的である)が対応する
DUTテスタに供給されることにもなる。低レベル実行
ルーチンは「パターン」と呼ばれ、高レベルのプログラ
ミング言語における機能や変数に名前があるのと同様
に、これらにも一般名称が付けられている。
【0041】各テストサイトコントローラ#n(4)は
サイトテストバス#n(5)により対応するDUTテス
タ#n(6)に結合している。テストサイトコントロー
ラは、サイトテストバス5を使用してDUTテスタの動
作を制御し、そしてそこから試験結果を得る。DUTテ
スタ6は試験方式に関わる様々なDUTメモリサイクル
を高速で生成することが出来、また、読み出しメモリサ
イクルの結果が期待通りのものであったかどうかを判定
する。基本的に、これは対応する有用な読み出し及び書
き込みDUTメモリサイクルのシーケンスを起動するこ
とによりテストサイトコントローラから送られるコマン
ド又は処理コード(「名前の付けられたパターン」)に
応答するものである(例えば対応するパターンを実行す
る等)。概念的にDUTテスタ6はDUTに印加される
べき刺激情報を出力し、また、そこから返される応答情
報を受信する。この刺激/応答情報7aはDUTテスタ
6aとピンエレクトロニクス#1のアセンブリ9aとの
間で交わされる。ピンエレクトロニクスアセンブリ9a
は最高64本までのプローブをDUT14に接続するこ
とが出来るように支援する。
【0042】上述した刺激情報は、DUTテスタ中に使
用されているいずれかの論理素子系列の電圧レベルに基
づいて表現された、並列ビットパターンシーケンス(例
えば「送信ベクトル」及び期待される「受信ベクトル」
のシーケンス)でしかない。刺激/応答中のビット位置
とダイ上のプローブとの間には設定可能なマッピングが
存在し、このマッピングはDUTテスタ6が把握してい
る。個々のビットはそれらのタイミング及びエッジ配置
において適正なものであるが、マッピングに加え、これ
らをDUTに印加する前に電圧レベルシフトが必要な場
合もある。同様に、刺激に続いてDUTから出力される
応答も、DUTテスタに送り返せるような状態にする前
にバッファリング及び(逆)レベルシフトが必要な場合
もある。これらのレベルシフトタスクはピンエレクトロ
ニクス9aの範疇にある。WHIZCO‐0013の試
験に要したピンエレクトロニクスの設定は、ACME社
の部品や、そして恐らくはWHIZ社のものであっても
他の部品に転用出来る可能性は低い。従って言うまでも
無くピンエレクトロニクスアセンブリ構成もまた設定可
能でなければならず、このような設定能力の提供はPE
設定線8aの機能である。
【0043】以上、1つのDUTを試験するために1テ
ストサイトがどのように構築されるかの構造的概要を述
べた。次に、多数のテストサイトを作動させる場合に生
じる問題について触れる。前提としてまず複数のテスト
サイトを有するテストシステムを構築するための推奨さ
れる実施例を説明する。これからここに記載する情報は
多くの意味において顧客嗜好の市場調査結果及び費用利
益分析結果に基づく選択の問題である。従ってこれらの
事項のいずれか1つを構築するには、明確な選択をしな
ければならず、一度この選択を行うと、システム全体を
通じて特定の結果が明らかとなる。ここではテストシス
テムのハードウエア特性のより広範囲な概要を少なくと
も一般的な形で記載することが有用であると思われる。
これらの特性は条件次第で変化するものではあるが、そ
れでもそれらを知っておくことは本発明を説明する場合
に提示する様々な例を理解する上での一助となる。
【0044】まず始めに、4個の比較的大型のカードケ
ージを想定する。各カードケージは、電源及び水冷機構
(クリーンルーム環境下においてファンは汚染源となる
可能性があり、水冷は完全に実装されたシステムからの
数十kWもの放熱を除去する場合、空冷方式よりも安価
である)の他に、マザーボード、前面及び後面を有す
る。各カードケージには最高9個のアセンブリを挿入す
ることが出来る。各アセンブリはテストサイトコントロ
ーラ、DUTテスタ及びピンエレクトロニクスを含む。
テストサイトコントローラがどのように結合するかにつ
いての一般的な概略を説明するが、これには幾つかのバ
スを使ってデイジーチェーン接続を作ることが含まれ
る。
【0045】本題から若干それるが、最初にこの「デイ
ジーチェーン接続」について簡単に触れる。システム構
成要素A、B、C及びDがあるものとする。これらがこ
の順番でデイジーチェーン接続により連結したと想定す
る。すると、そこにはAを出てBに達する情報又は制御
経路があり、BはBを出てCに達するトラフィックを選
択的に送出することが出来、CはDに達するトラフィッ
クを選択的に送出することが出来る。同様の構成が他方
向のトラフィックにも存在し得る。デイジーチェーン接
続は優先順位機構を作るために良く採用されているもの
で、ここでは様々なテストサイトコントローラ間にマス
タ・スレーブ関係を作るために用いる。デイジーチェー
ン方式による通信構成を示す記号の後には「BUS」で
はなく、「DSY」を付した。従って、例えば「コマン
ド/データ BUS」ではなく、「コマンド/データ
DSY」としている。次に、情報が「Bに入り、選択的
に送出される」という概念は、そのトラフィックが送出
される前に、別の導体セット上に複製されることを示唆
している場合もある。そうすることも出来るが、性能上
の理由から、これはどちらかと言えばアドレス可能なエ
ンティティを有する通常のバスである。プログラム可能
なアドレスマッピング構成及び下流のテストサイトコン
トローラの一部分を「スリープ」状態にする能力によ
り、1つのバスを論理的には複数のデイジーチェーンで
あるかのように見せる(機能させる)ことが出来る。最
後に、デイジーチェーンはコマンド及び制御情報の経路
として高い性能を持つものであることは言うまでもな
く、もし、そうでなかったらマスタ・スレーブの組み合
わせ(マルチサイトテストステーション)が1テストサ
イトと同じ速度で処理を行うことは望めない。デイジー
チェーン性能を損なわないために各種DSYはそれぞれ
のカードケージの外に出ないようにする。これを実施す
るために、どの(従って幾つの)テストサイトを結合す
るかについて幾つかの制限が設けられる。基本的には制
限を設ける根本的な必要も、技術的実用性の決定的な欠
如があるわけでもない(即ち実施可能である)。これは
単純に、既に9個のテストサイトがカードケージにある
のだから、DSYを延長することは多大なコストを払っ
てわずかな追加利益を得ることにしかならないとの考え
からである。
【0046】図1の説明に戻り、テストサイトコントロ
ーラ4a〜4zを考察するが、これらはそれぞれに9個
ずつ、合計4個のカードケージ中に分散収容されてい
る。これらを4a〜4f、4g〜4m、4n〜4t、4
u〜4zとする(先にも述べたように、アルファベット
は本来26文字しかないが、もう10文字がその中のど
こかに存在するものと想定する)。CMD/DAT D
SY17a(コマンド/データデイジーチェーン)は1
つのカードケージ中にあるテストサイトコントローラ4
a〜4fを相互接続し、別のCMD/DAT DSY1
7bは他のカードケージ中にあるテストサイトコントロ
ーラ4g〜4mを相互接続する。残りのカードケージに
おいてもテストサイトコントローラ4n〜4t及び4u
〜4zに同様の構成がそれぞれ存在する。先にも述べた
ように「DSYがカードケージを出ない」と言った場
合、そのDSYを実際に構成するバスの最終端がそのカ
ードケージを出ずに、他のカードケージにおける次の区
分の頭になっている、ということである。かわりに、テ
ストシステムコントローラ2からのシステムバス3が全
てのテストサイトコントローラに達しており、テストサ
イトコントローラの各々が対応する「カードケージを出
ないDSY区分」の頭においてマスタとして作動するこ
とが出来るのである。
【0047】ここまで説明して来たCMD/DAT D
SY17a〜17dはそれぞれのテストサイトコントロ
ーラ4a〜4zの間に存在する。SYNC/ERR D
SY18a〜18d及びDUTテスタ6a〜6zも同様
の構成である。SYNC/ERR DSY18によって
運ばれる同期・エラー情報により、DUTテスタは調和
して機能することが出来る。これら2種類のデイジーチ
ェーン(17及び18)は若干異なる種類の情報を搬送
するものではあるが、しかし各々は1つ以上のテストサ
イトを結合してテストステーションを構成するための同
じ全体機構の一部として存在している。
【0048】次に図2の説明に進むが、図1のDUTテ
スタ6の概略を示す拡大ブロック図が描かれている。こ
れは最高で36個設けられるものであるが、ここではそ
のうちの1つを説明する。図2を一目見れば明らかなよ
うに、概略ブロック図にしては相当な数の構成要素が描
かれている。DUTテスタ6に含まれるもので、このブ
ロック図に描かれた要素の中には、機能的に非常に複雑
であり、市販品として容易に入手できないものもある。
ここで2つの点について明記しておく。第一に、図2の
主要目的は、不揮発性メモリテストシステム1全体の重
要な動作環境の基本特性を説明することである。図3以
降の図に関連して詳細に説明する本発明は、図2に基づ
いて以下に説明する機構の延長線上にあるものか、或い
はその存在根拠を図2に見出すことが出来る新たな機構
である。いずれにしても、この説明を書いている段階で
は読者がこれらの機構のどれに直面することになるかは
明確にはわからない。現時点での目標は、様々な実施例
の多数の異なる詳細説明の開始点として簡潔でありなが
ら充分な情報を提供することにより機構の各々を簡明か
つ適正に説明することである(異なる発明の各々につい
て全てを開示する冗長な明細説明を避けるため)。第二
に、拡大又は拡張した実施例の中には、図2に示した一
般的な規則には準じてはいるものの、この単純な事例と
は整合しない情報を含むものもある。しかしこれは誤り
や決定的な矛盾ではなく、全体像を完全な縮小版で表す
ように物事を簡略化して示すことが時に困難、或いは不
可能な場合があるからである。この状況は道路地図と似
ている。例えばコロラド州の標準サイズの地図では、州
間高速自動車道I‐70に乗って東へ向かえば、デンバ
ーでI‐25に入って北へ向かうことが出来ることがわ
かる。これは左折のように見える。実際、昔は左折であ
ったが、現在は違う。このインターを詳しく記した地図
を見ると、一連の部分的進路変更と割り込み車線が示さ
れている。しかしながら標準サイズの道路地図が間違っ
ていると言う者はいない。このレベルの抽象性において
は正しいからである。同様に、図2は相当詳しく描かれ
ているようではあるが、実際は中程度の抽象性で描かれ
た簡略図であり、一見「左折」に見える部分でも、実際
は単純な「左折」とは言えない場合もある。
【0049】図1に示したように、DUTテスタ6への
主な入力は、このDUTテスタ6に結合するテストサイ
トコントローラ4を起点としたテストサイトバス5であ
る。テストサイトバス5は、テストサイトバス上のトラ
フィックをリングバス85又はVTバス89のトラフィ
ックに転換するマルチバスコントローラ88に結合して
いる。また、リングバスのトラフィックをVTバストラ
フィックに転換することも、逆にVTバスのトラフィッ
クをリングバスのトラフィックに転換することも出来
る。図2に示したほぼ全ての要素は大規模集積回路の一
部である。後に説明するタイミング/フォーマッティン
グ&比較回路52は、8個のこのようなICから成るも
のであるが、わかり易くするために1つのまとまりとし
て図示している。各種の外部DRAM(このうちの幾つ
かは内部テストメモリ87の一部でもある;図2参照)
を除き、図2に示した他の要素は、APG(自動パター
ン発生器)と呼ばれるもう1つの大規模ICに属してい
る。リングバス85は、DUTテスタ6のAPG部分に
属する主な要素の設定や動作モードの設定等を行うため
の汎用の機構間通信経路である。更にAPG中の各種要
素間には、様々な広帯域・高速経路が専用に設けられて
いる。VTバス89は、このDUTテスタ内部でIC間
を結ぶためのバスである。
【0050】リングバス85は、テストサイトコントロ
ーラがDUTテスタ6のAPG部分と通信を行うための
機構である。リングバス85はマイクロコントローラシ
ーケンサ19に結合しており、マイクロコントローラシ
ーケンサは特殊用途マイクロプロセッサとリンクしてい
る場合もある。次アドレス計算器102により生成され
たアドレスを用い、マイクロコントローラシーケンサ1
9の内部プログラムSRAM(PGM SRAM)20
又は外部DRAM21にあるプログラムメモリ中に記憶
されたプログラムから命令がフェッチされる。これら2
つのメモリは、プログラムカウンタ(又は命令フェッチ
アドレス)として機能する、本質的、論理的に共通のア
ドレス63によりアドレス指定されているかのように見
え、また、いずれも実行すべきプログラムの供給源と成
り得るが、留意すべきは:(1)どの期間においてもい
ずれか一方のメモリが命令フェッチメモリサイクルを実
行し;(2)実際、これらは電気的に異なる信号によっ
てアドレス指定されている;という点である。SRAM
は高速であり、真のランダムアクセスが可能であるが、
マイクロシーケンスコントローラ19(大規模APG集
積回路の一部)中の貴重な空間を使用するため、そのサ
イズは限られている。外部DRAMはかなりの容量まで
柔軟に設定することが出来るが、直線的実行により分岐
無しで連続領域をアクセスしない限り高速動作出来な
い。SRAM20におけるプログラミングはアルゴリズ
ム性の高いものが多いが、外部DRAM21は初期化ル
ーチンやランダムデータ、即ち不規則データのような、
アルゴリズム処理では容易に生成出来ないものに適して
いる。
【0051】次アドレス計算器102は、無条件又は条
件ジャンプ命令、或いはプログラム制御フラグ25、そ
の他のフラグ55及びマルチDUT試験処理用の他の特
定の信号103及び104(わかり易くするために別々
に図示したDFE0:3、及びDPE0:3)で条件付
けられる条件サブルーチン命令に呼応して、実行中のテ
ストプログラムに分岐を生じさせることが出来る。
【0052】マイクロコントローラシーケンサ19がフ
ェッチし、実行する命令語は208ビットと、かなり長
い。これは13個の16ビットフィールドから構成され
る。これらのフィールドはマイクロコントローラシーケ
ンサ19の外部機構のためにフェッチした命令情報を表
すことが多い。このようなフィールドは、それらに対応
付けられた機構専用のものである。1セットのALU命
令22が8個の16ビットALU24の集合に印加さ
れ、その他はDUTテスタ内に分散する他の様々な機構
に配信される。後者の状況は、各種制御値および命令4
2と表示した線で表した。
【0053】8個の16ビットALU24は、それぞれ
関連する16ビット結果レジスタ(各ALUは他のレジ
スタも幾つか含んでいる)の周囲に構築された算術命令
の周知のレパートリーを有する。結果レジスタの内3つ
と、それらに関連するALUは、X、Y及びZのアドレ
ス構成要素27を生成するためのものであり、アドレス
構成要素は様々に組み合わせられてDUTに供給される
完全なアドレスとなる。8個のALU/レジスタのう
ち、更に2つ(DHおよびDL)は、32ビットデータ
パターン28をアルゴリズム的に作成するのを助けるも
のであり、32ビットデータパターン28は最上位部
(DH)と最下位部(DL)との間で分割される。最後
の3つのALU/レジスタ(A、B、C)はカウンタと
して使用され、様々なプログラム制御フラグ25の生成
に寄与する。これらのプログラム制御フラグは、プログ
ラムで指定された繰り返し回数又は他の数的条件が完了
した時点で実施されるプログラム制御及び分岐を補助す
るものである。これらのプログラム制御フラグ25はマ
イクロコントローラシーケンサ19に返送され、ここで
マイクロプログラムされた実行機構を熟知する者には周
知の方法で命令フェッチアドレスの値(次アドレス計算
器102が生成する)に作用を及ぼすことになる。更に
各種の「その他のフラグ」55も存在し、これらもプロ
グラム分岐を生じるために用いることが出来る。これら
はフェッチした命令語に含まれる他のフィールドによっ
て制御されるDUTテスタ6中の他の機構のそれぞれを
起点としている。このようなフラグの具体例として、P
D_ERR90を別途に明示的に示した。これはポスト
デコード機構60からPGM SRAMに供給されるも
ので、ポストデコード機構60がエラーを見つけたこと
を表示すものである。他の更なるフラグとしては、VE
C_FIFO_FULL26があげられる。より簡略化
した他の図においては、これもその他のフラグ55に包
含されている。これをここで個別に示したのは、マイク
ロコントローラシーケンサ19処理の一側面の説明を助
けるためである。
【0054】VEC_FIFO_FULLの機能は、マ
イクロコントローラシーケンサ19によるプログラムの
更なる実行を(一時的に)停止させることである。マイ
クロコントローラシーケンサ19がフェッチした命令
と、DUTに印加すべきテストベクトルを最終的に送出
する機構との間には多段のパイプラインが存在する。更
に、DUTへの印加に向けて搬送される過程でベクトル
が付加されるデータの塊りは、最終的なベクトル印加速
度、或いは各ベクトルの持続時間に関する情報をその一
部に含んでいる。従って、DUTへのベクトル印加速度
は一定である必要は無く、具体的には、あるベクトル群
の印加時間がその生成にかかった時間よりも長くても良
い。マイクロコントローラシーケンサは、単純にプログ
ラムをその最高速度で実行する。しかしながら、「ベク
トル消費」速度が「ベクトル生成」速度と平均で等しく
なければ、パイプラインにはほぼ無限大の柔軟性を持た
せなくてはならなくなることは明白である。以下に説明
するアドレスマッパ29の出力にはベクトルFIFO4
5があり、これがパイプライン中の柔軟な容量として機
能する。信号VEC_FIFO_FULLは、パイプラ
インの先頭における新たなベクトルの生成が一時的に中
断されるように作用することでパイプライン中の限界段
数を超過しないようにするものである。
【0055】更に説明を続けると、(3×16=48ビ
ットの)X、Y及びZアドレス構成要素27がアドレス
マッパ29に印加される。アドレスマッパ29の出力
は、ほぼ任意に事前選択された構成で順序付けられた4
8ビットアドレス空間中のアドレス値へと並べ替えられ
たものである。この理解を助けるために本題から離れる
が、このアドレスマッパ29を48ビットアドレス空間
が完全に埋まったメモリとし、各アドレスには48ビッ
ト値が保持されていると想定する(このようなメモリを
現在実現しようとすれば大型冷蔵庫大となるであろう
が、このことは一時的に無視して考える)。このような
メモリがあればどのようなアドレスが与えられても、他
の任意に選択された、後に置き換えアドレスとして使用
できる48ビット値にマッピングすることが出来るルッ
クアップテーブルが実現する。このようなアドレスマッ
ピングが望まれる理由は、X、Y及びZアドレス構成要
素が一般的に、特定のDUT内部構造のコンテキストに
おいて1つの大型リニアデコーダでは実現されにくい有
用な意味を持つためである。行、列、層、ブロック或い
はページといった概念はテストエンジニアにとっては非
常に便利なものであり、物理的に近い位置で生じた不具
合は、これらのX、Y及びZアドレスにおいてもこれに
対応する近接性を持っている。試験結果におけるこのよ
うなパターンは、何が悪いのかを評価し、これを欠陥部
分による処理が予備部分による処理へと分岐されるよう
に設計レベル、又は製造レベルで再プログラミングする
等して修復する上で非常に貴重なものである。このよう
な考え方からは、2つの問題が生じる。第一の問題は、
48ビットをペアリング(paring)してDUTに印加す
べき実際のビット数(例えば32又は16)へと減じる
点である。このペアリングがどのように行われるかを簡
単に説明すれば、これはXから何個かのビットを得、Y
から何個かのビットを得、そしてZから残りのビットを
得るということである。しかし全部ではない。そして、
特定のアドレスは、回路の他の部分の左右(又は左右及
び上下)鏡像である回路中に位置する可能性があるた
め、これが第二の問題となる。この場合、連続アドレス
値が回路中の物理順序で並んでいる限り、ビットの意味
が変化することになる。このチップレイアウト特性は何
回も生じ得るもので、ある1群のビット(例えばY)が
何を意味するかは、それに付随する他のビット群(例え
ばZ)の値に依存する場合がある。アドレスマッパ29
はX、Y及びZの生アドレスを「再パッケージング」す
ることでこの種の状況を反映させることを可能としたも
ので、このような内部構造構成を有するメモリを試験す
る人々の便宜をはかるものである。実際にこれがどのよ
うに行われるかを説明する。アドレスマッパ29は、相
互接続された相当数のマルチプレクサから構成される。
これは、先に一時的仮定例として説明の便宜上触れた、
完全に埋められたメモリ復号化方式における完璧な任意
ルックアップテーブル機能を実現することは出来ない。
しかしながら、特に48ビットから実際に必要な数へと
ペアリングにより減ずることが出来る他の機構があるた
め、X、Y及びZアドレス構成要素のサブフィールドを
必要に応じて並べ替えることが出来る。アドレスマッパ
29は3個の16ビット(アドレス)ルックアップテー
ブルを更に有し、これらによって限定された任意マッピ
ングを局所範囲において実施することが出来るのであ
る。
【0056】アドレスマッパ29のマッピング後アドレ
ス出力30は、様々なバッファメモリ及び(又は)Ta
gRAM31A、31B、そしてエラー捕捉RAM1、
2(32A、32B)にアドレスとして印加される。こ
れらのメモリは、異なる機能を持ってはいるが、集合的
に内部テストメモリ87を構成する4つのメモリセット
内において、選択可能なパーティションとして実現する
ことが出来る。マッピング後アドレス出力30は更に1
入力としてアドレスビット選択回路37(その多重化機
能は後述する)にも印加される。内部テストメモリは、
異なる機能用途に使用するための、RAMをベースとし
た様々なメモリ構造を含むように設定することが出来
る。その設定は、異なるメモリセットの特定部分をそれ
らの対応用途に使用することを宣言することにより行わ
れる。図2に示されるのは、そのような構成の一例であ
る。この構成は試験の進展に伴い再構成することが出
来、メモリセットの使用に関わる処理は非常に動的な性
質を持つものと考えられる。内部テストメモリ中に存在
するもの(例えばエラー捕捉RAM32A、32B)の
中には恒久的なハードウエアとしての固定要素は一切無
い。不変的に存在するのは4つのメモリセットだけであ
る。しかしながら、いずれの時点においても、(もし実
際に定義されるとすれば)どのメモリセットのどの部分
がエラー捕捉RAMであるかに関しては、現在確立され
ている設定に依存するのである。
【0057】バッファメモリ31A及び31Bについて
説明する。これらの機能は、DUTに印加することが可
能なデータパターン33及びアドレス34を保持するこ
とである。これらは実際には対応するバッファメモリの
別個の出力であるが、バッファメモリは「デュアルポー
トメモリ」ではなく、2つの異なるメモリセットの部分
から構成されたものであることが望ましい。そうした場
合、記憶されたデータ33が一方のメモリセット中に保
持され、記憶されたアドレス34が他方のメモリセット
中に保持されていることが望ましい。また、バッファメ
モリに書き込みを行うための明確な機構を図示していな
いが、これを行うための方法の1つとしては、実行中の
プログラムの命令でテストサイトコントローラ4が起動
するアドレス指定されたバスの処理により実施する方法
がある。「リングバス85」と呼ばれる「床下」の「ユ
ティリティサービス」バスがあり、これが図2に示した
要素のほぼ全てに通じている(図が非常に見にくくなる
ため、これが各箇所に接続している状態は図示していな
い)。メモリセットに情報を書き込むための他のより高
速な方法は、図3に関する説明で触れる。
【0058】エラー補足RAM32A及び32Bはバッ
ファメモリに印加されたものと同じアドレスで指定され
る。これらのエラー捕捉RAMは、エラーに関する情報
を記憶及び取得するもので、その処理は後に説明するポ
ストデコード回路と連係して実施される。バッファメモ
リ31A、31Bからの経路33、34と同様に、エラ
ー補足RAM1(32A)からの経路62A〜62Dも
また、リングバス(図示せず)により配信された設定情
報に基づき、エラー捕捉RAMとして設定されたメモリ
セット部分から出力される多重化出力であることが望ま
しい。
【0059】留意すべきは、データマルチプレクサ35
はその入力として、ALU集合24中のレジスタDH及
びDLからのデータ28と共にバッファメモリ31Aか
ら出力される記憶データ33も受けるという点である。
データマルチプレクサ35はこれらの入力(28、3
3)のうち、どちらをその出力38として提供するかを
PGM SRAM20に記憶された値36に基づいて選
択する。その出力38は、次に説明するように変更され
ることが無い限り、2つのベクトル構成要素のいずれか
一方として(もう一方の構成要素はアドレスビット選択
回路37の出力39)送信ベクトルマッパ/シリアライ
ザ/受信ベクトル比較データ回路40に印加される。
【0060】回路40は3つのベクトル機能を実行する
ことが出来るもので、その機能とは、ベクトル構成要素
(38、39)を組み合わせることによりDUTに印加
(伝送)し得るベクトル全体を順序付けられた論理表現
において作成すること、送信ベクトルの論理表現の順序
ビットと、DUTに信号(ベクトル中のそのビット)を
届けるために接触するピンエレクトロニクスの実際の物
理チャネル番号(例えばプローブ先端を特定する番号)
との間に動的な任意の対応付け(マッピング)を実施す
ること、そしてそれを受けるDUTに対し、別個に、順
序通りに(シリアル化して)印加されるように全体の論
理ベクトルを分割する際にコンパイラと連係して作用す
ることである。これらの機能のうち、どれが実行される
かは、SRAM41からの制御信号により決定するが、
このSRAMもまた、マイクロコントローラシーケンサ
19によりフェッチされた208ビット命令中の1フィ
ールドに基づいてアドレス指定されるものである。
【0061】回路40には、DUTディスエーブル論理
部90が含まれている。この目的は、一部は静的であ
り、一部は試験結果に応じて変化する、全てがプログラ
ム的に定義された様々な条件に呼応し、4個のDUTの
うち、どの1つ(又は複数)をディスエーブルとするか
を表示することである。これらの表示は、4つの信号4
4b(DD0:3)(DUT0へのディスエーブル信
号、DUT1へのディスエーブル信号・・・等)により搬
送される。これは単一テストサイトにおけるマルチDU
T試験を支援するものである。回路40の出力は最高6
4ビットまでのベクトル44aであり、これがDUTデ
ィスエーブル信号44bと共にベクトルFIFO45に
印加される。FIFO45は、完全に埋まると信号VE
C_FIFO_FULL26を生成するが、この信号の
意味及び目的は先に説明した。後に説明する期間発生器
49からの信号VEC_FIFO_UNLOAD47を
受け、ベクトルFIFO45の最上部にあるベクトルが
そこから取り出される。取り出されたベクトル46は、
対応するピンエレクトロニクス9を介してDUTへと接
続するタイミング/フォーマッティングおよび比較回路
52に印加される。即ち、(多数存在するテストサイト
の1つにおける)各ピンエレクトロニクス9が、送信・
受信ベクトル7及びピンエレクトロニクス設定情報8
を、それぞれに対応するタイミング/フォーマッティン
グおよび比較回路52から受信するのである。
【0062】タイミング/フォーマッティングおよび比
較回路52は、設定情報及び制御情報を受けるためにV
Tバス89に結合している。タイミング/フォーマッテ
ィングおよび比較回路52は単一の要素として取り扱っ
てはいるが、これらが本来は8個のICであることは先
にも説明した。
【0063】タイミング/フォーマッティングおよび比
較回路52は、マイクロコントローラシーケンサ19の
プログラムSRAM20と同じ命令アドレス(丸で囲ま
れたA)によりアドレス指定される内部SRAM54を
有する(外部DRAM53を内部SRAM54の代わり
に使用しても良いが、これは図示していない増分カウン
タによりアドレス指定される)。内部SRAM54(又
は外部DRAM53)は、ドライブサイクル及び比較サ
イクルの生成を助けるものであり、これらのサイクルは
関連したフォーマットを持っている。ドライブサイクル
は、RAM54又は53により供給される事前に選択さ
れたフォーマットを用いて送信ベクトルをDUTに印加
するものである。比較サイクルはDUTから供給される
ベクトルを受信し、これをRAMから供給された事前選
択フォーマットに基づいて調べ、それが先に得られた比
較データと一致するかを決定するものである。ドライブ
サイクル及び比較サイクルはいずれもその持続時間に関
して設定することが出来、更に負荷を印加するかどう
か、何時印加するのか、何時データをラッチ又はストロ
ーブするのか、信号がリターン・トゥ・ゼロ(Return-T
o-Zero)信号であるかどうか、送る信号を補完情報で囲
むのかどうか等(これらのオプションが上述した各種フ
ォーマットである)についても適正な範囲で設定可能で
ある。
【0064】タイミング/フォーマッティングおよび比
較回路52により生成される比較結果は、論理値の誤り
(機能エラー)及び(又は)許容範囲を外れた電気特性
(パラメータエラー)によりそのチャネルが不具合を呈
したかどうかについて、チャネル毎の情報を含んでい
る。更に、マルチDUT試験が実施された場合、どのチ
ャネルがどのDUTに通じているかは既知である。これ
により、4つの機能エラー信号DFE0:3(DUT#
機能エラー)103及び4つのパラメータエラー信号D
PE0:3(DUT#パラメータエラー)104の生成
が可能である。
【0065】タイミング/フォーマッティングおよび比
較回路52により実施される比較処理においては、回路
40の論理的反転であると言える機能を持つ受信ベクト
ル逆マッパ/デシリアライザ57に印加される64ビッ
ト値56が更に生成される(回路57の処理はSRAM
58により制御されているが、これは回路40のSRA
M41による制御に対応する)。そして回路57の出力
59はポストデコード回路60に、そして更にエラー捕
捉RAM1(32A)に印加される。ここではあまり詳
細にわたって説明しないが、ポストデコード回路60は
入力されるエラー情報59と以前にエラー捕捉RAM1
(32A)中に記憶されたエラー情報の両方をプログラ
ム基準に基づいて検分し、凝縮した、より容易に解釈出
来るエラー情報を生成することが出来る。生成されたエ
ラー情報は経路61を介して他方のエラー捕捉RAM2
(32B)に戻し、記憶しておくことが出来る。一例と
して、特定のアドレス範囲でエラーが生じた回数の計数
値を作成すること等があげられるが、このような情報は
いつ代替回路を起動することによりオンチップ修復を試
みるかを決定する上で有用である。
【0066】次に期間発生器49及びこれに対応するタ
イミングSRAM51について説明する。これらは8ビ
ット信号T_SEL43に応答して、マイクロコントロ
ーラシーケンサ19によりフェッチされた208ビット
命令の各々に関連するタイミング/フォーマッティング
および比較回路52の処理の継続時間を決定するもので
ある。T_SEL43は、フェッチされた命令中の異な
るフィールドによってそれぞれに表される各種制御値お
よび命令42の一部である。この信号は、8ビット値と
して256の異なる「事柄」を表す、即ち符号化するこ
とが出来る。この場合の「事柄」とは、タイミングSR
AM51に記憶され、T_SELによりアドレス指定さ
れる28ビット値である。アドレス指定された28ビッ
ト値23の各々は19.5ピコ秒の分解能で所望の継続
時間を指定するものである。アクセスされた28ビット
継続時間値23のシーケンスは期間FIFO50中に記
憶され、ここからそのシーケンスの個々の要素が取得さ
れ、その後、ベクトルFIFO45が記憶するそれらに
意図した対応ベクトルの取得に同期して印加されるよう
になっている。
【0067】FIFO50の最も古いエントリ中にある
粗タイミング値フィールドは5ナノ秒の分解能で継続時
間情報を含んでおり、この情報から、次の送信ベクトル
をベクトルFIFO45からタイミング/フォーマッテ
ィングおよび比較回路52に送る信号VEC_FIFO
_UNLOAD47が生成される。随伴信号TIMIN
G REMAINDER48もまた、回路52に印加さ
れる。この時点で19.5ピコ秒という最終分解能に達
するのである。
【0068】上述はメモリテスタの総合的性質を紹介し
たものである。これを開始点とし、以下おいてはスコー
プモード及びその関連事項を説明する。
【0069】ここで図3を参照するが、これはスコープ
モードでの動作中に実行される主な処理の概要をフロー
チャート形式で説明するものである。図3のフローチャ
ート64は、大別すると部分65及び66に分かれる。
第一の部分65では初期スコープモード処理が実施さ
れ、第二の部分66では取得掃引処理が実施される。ま
ず最初に部分65において実施される初期処理について
説明する。その目的は、トリガ仕様を設定し、ターゲッ
トシーケンスを取得し、繰り返し実行することが可能な
ターゲットシーケンスを作成することである。
【0070】開始位置67は他の処理からフローチャー
ト64の処理に入る入口であり、ステップ68はトリガ
仕様の設定と、これに続くテストプログラムの起動を実
施するステップである。本実施例においては、トリガ仕
様にはレジスタX、Y、Z、DH、DL、A,B及びC
の内容に対するAND条件であるALU成分が含まれ
る。これらのレジスタのいずれのサブセット(全て及び
0個のレジスタから成るサブセットも含む)も、トリガ
仕様のALU成分中に含まれ得る。各レジスタについて
は、そのビットの任意のサブセット(全ビット及び0個
のビットから成るサブセットも含む)が指定可能であ
る。トリガ仕様のALU成分は、選択された全てのレジ
スタの全ての指定ビットが指定通りであれば満たされ
る。トリガ仕様は更に、プログラム成分も含み、満たす
べきトリガをイネーブルにするプログラムの一部又は全
ての部分を指定することが出来る。トリガ仕様は更に、
実際にトリガ仕様が充足した時点と、トリガ処理を開始
させるトリガ信号の発信時点との間に間隔をあけるため
の遅延(出来ればDUTサイクルとして表されたものが
好ましいが、時間間隔の絶対値であっても良い)を含む
こともできる。
【0071】ユーザーインターフェースのレベルで認識
出来るトリガ仕様の設定方法は様々存在する。推奨され
る方法においては、OS(テストシステムコントローラ
2上で起動するもの)がスコープモード制御処理を起動
するためのウィンドウを提供しており、ユーザーはどの
チャネルの波形を表示させるのかを指定出来るだけでは
なく、テストサイトコントローラ、DUT、そしてトリ
ガ仕様のプログラム成分及びALU成分をも指定するこ
とが出来る。これが完了すると、テストプログラムが開
始される。
【0072】ステップ69においては、テストプログラ
ムの処理によりトリガ仕様が満たされるまで(かつ指定
遅延が充足されるまで)の間に待ち経路70があり、ト
リガ仕様が満たされるとステップ71に進む。この時点
では、閾値VOHはそのまま維持されており、プログラ
ムは128DUTサイクルの間、通常の流れに従って処
理を続けることが出来る。この128DUTサイクルと
は、波形を作成するターゲットシーケンスである。ター
ゲットシーケンスの最初の実行中、プログラムSRAM
20からフェッチされる命令語の次の128アドレスが
スコープモードFIFO130(図4を参照しつつ後述
する)にログされる。この時点では、この128の命令
語が何であるかについての制約はなく、これらの中に分
岐命令が含まれていてもかまわない。
【0073】ターゲットシーケンスの実行が終了すると
テストプログラムの実行が中断され、スコープモードの
管理環境がフローチャート64のステップ72に示され
る処理を実施する。この処理は、スコープモードFIF
O130中に記憶されたアドレスをリングバス85を介
して読み出し、これらのアドレスを用いてプログラムS
RAM20から対応する命令語を抽出し、これらの命令
語中の分岐フィールドがターゲットシーケンス中の次の
語を指示することになるように設定し(これは必須であ
る;ターゲットシーケンスに独自の条件分岐を続けさせ
ることは、波形が不安定になるために出来ない)、そし
てこれらを順次、プログラムSRAM20の予約領域に
格納する。
【0074】その後に実行されるテストプログラムによ
ってもトリガ仕様が充足されることになるが、その時点
において、テストプログラムは中断し、VOH値及びサ
ンプルタイミングオフセット値が通常値から取得掃引の
次段階の値に変更される。これを実施するには2つの方
法がある。第一の方法においては、スコープモードの管
理プログラムがスコープモードでの動作中にPGM_Q
UITが発生したことを検出し、VOH値及びサンプル
タイミングオフセット値を変更(スコープモードVOH
レジスタ166及びスコープモードサンプルタイミング
レジスタ168への書き込みによる;これらのレジスタ
については図5を参照しつつ説明する)することが出
来、そしてこれに続いて次アドレス計算器102(図
2)中の内部プログラムカウンタレジスタ(図示せず)
がリングバスを介して変更され、これによりプログラム
カウンタが予約領域の開始アドレスに移動することにな
る。これも次アドレス計算器102をリングバスに接続
させる理由の1つである。第二の方法においても上記と
同様に実現されるが、次アドレス計算器に予約領域の開
始アドレスを格納する更なる内部レジスタ(図示せず)
を設け、この内部レジスタをトリガインスタンス発生後
の遅延(取得掃引値が所定位置に格納されるために好適
な遅延)の後に自動的にジャンプ出来るように構成する
ことで、スコープモードの管理プログラムに課せられた
負荷の一部を取り除くことが出来る。
【0075】フローチャート64の取得掃引処理部分6
6の目的は、プログラムSRAM20の予約領域部分に
記憶された実行可能なターゲットシーケンスを繰り返し
実行することである。ステップ73においては、テスト
プログラムが最初から再開される(テストプログラム中
のアルゴリズムにとって重要な初期化が行われるように
するため)。この再起動はVOH及びサンプルタイミン
グオフセットの通常値で行われるが、これはテストプロ
グラムが以前と全く同じ方法で実行されること、そして
いずれトリガ仕様が最初の実行時と全く同じように充足
されることが期待されるためである。
【0076】テストプログラムの実行中、ステップ74
において、ループ経路75を経由しつつトリガ仕様の充
足を待つ。充足した場合、ステップ76においてテスト
プログラムは中断され、VOHの値が続いて生じる一連
の取得掃引段階の最初の(次の)値に設定される。(こ
こで使用した用語は、1回の取得掃引が多数の取得掃引
段階により構成されていることを前提としたものであ
る。)同様のことがサンプルタイミングオフセット値に
も実施される。これに続き、ステップ77においては、
テストプログラムは継続すること(ターゲットシーケン
スにジャンプする)が許され、そして受信ベクトルをE
CR2(32b)に強制的に記憶する機構が起動する。
ステップ78においては、ループ経路79を経由しつつ
ターゲットシーケンスの完了が待たれる。図4に示した
信号PGM_QUIT157は、これを助けるものであ
る。この値は、マイクロコントローラシーケンサ19が
実行を停止する度に真値となる。これは変更したターゲ
ットシーケンスの129番目の命令語を停止命令とする
ことにより実現することが出来る。
【0077】ターゲットシーケンスの実行が終わると、
ステップ80においてECR2(32b)の内容がスコ
ープモードの管理処理(出来ればテストシステムコント
ローラ2のOS下で起動するプログラムであることが望
ましい)に使用されるメモリに移される。この時点にな
ると、スコープモード用ソフトウエアはこれまでに取得
した結果の一部を形成し、表示することが出来るように
なる。
【0078】次のステップ81では、取得掃引が終端に
至ったかどうかが決定される。まだ終端に来ていない場
合、経路82を辿ってステップ73に戻り、取得掃引は
継続し、次の段階に進む。このフローチャート64は概
略的なものである。それは、VOH値の掃引が、異なる
サンプルタイミングオフセット値の各設定におけるVO
H値群全体にわたり、最も高速で実施される(即ち、V
OHの変更は最速で行われ、その変更シーケンスが繰り
返される一方で、サンプルタイミングオフセットは最も
ゆっくりと変更され、1回の変更シーケンスしか実施さ
れない)という概念を扱うための、外部ループ中にある
内部ループを図示していないという点にある。更にこの
フローチャートはVOH値の変更を実施するための方式
(先頭から末端までの線形実行、2等分探索、或いは予
測探索等)も示していない。また更にこのフローチャー
トにおいては、所定のサンプルタイミングオフセット値
に対するVOH値変更の終了方式(全てを実施する、或
いは正しい回答を検出したことが確実になった場合は終
了する等)も指定されていない。
【0079】取得掃引が終了すると、ステップ81から
の“YES”経路を介して処理はスコープモードの管理
機構に移行し、これにより完成した波形の表示や記憶、
プリントアウト等が可能となる。
【0080】次に図4を参照するが、これは図3の処理
がどのように実現されるのかをハードウエアの側面から
説明する概略ブロック図であり、トリガ仕様の充足に基
いてエラーフラグの挿入を実施するために必要なハード
ウエアを含んでいる。図4は、図2のブロック図に示し
た要素に関連して3つの部分(84、86、91)に分
けられる。即ち、部分84は図2のマイクロコントロー
ラシーケンサ19の一部を延長したものであり、部分8
6は図2の8個の16ビットALU24の一部を延長し
たものであり、そして部分91は図2の内部テストメモ
リ87中に設定される要素を延長したものである。従っ
て図4は図2の限られた一部の拡張例を示したものであ
り、図2の多くの要素はここでの説明に直接関連しない
ため、図4では省略されている。
【0081】始めに、ALU_TRIGGER96と呼
ばれる信号を生成する働きを持つ部分86について説明
する。部分86及び信号ALU_TRIGGERは、ト
リガ仕様におけるALU成分を表すものである。ここで
はXレジスタに関して何が行われるのかを説明するが、
他の7つのレジスタ(Y〜C)についても同じ処理が実
施される。更に、これらのレジスタを組み合わせて信号
ALU_TRIGGER96を生成するためにどのよう
な処理が、どのように実施されるのかについても説明す
る。よって、まず最初にXレジスタ要素についての説明
から始める。
【0082】ここに、リングバス85と通じる16ビッ
トX_ALUレジスタ97がある。これは図2に示した
Xアドレスレジスタそのものであり、そのビットが48
アドレスビット27の3分の1に寄与している。図4に
おいては、X_ALUレジスタ97は、リングバス85
及び16ビット2入力ANDゲート100にしか接続し
ていないかのように描かれているが、X_ALUレジス
タ97は勿論、その内容の演算処理を可能とする他の全
ての要素にも接続している。ここでは図をわかり易くす
るためにそれらの要素は省略した。更に、ANDゲート
100の出力は16ビットである(図示を容易にするた
めの単純化)。ANDゲート100に印加されるもう一
方の16ビットは16ビットX_MASKレジスタ99
から供給される。X_MASKレジスタ99中の「1」
のパターンは、X_ALUレジスタ97からのビットの
うち、どれがトリガ仕様の対象となるかを選択するもの
である。ここには更に16ビットX_TRIGGERレ
ジスタ98もある。これはトリガ仕様におけるXレジス
タ成分を格納しており、その目的上、リングバス85に
接続している。これは更にもう1つの16ビット2入力
ANDゲート101へも結合しているが、このANDゲ
ート101へのもう一方の入力はX_MASKレジスタ
99から供給されている。明らかなように、トリガ仕様
におけるXレジスタ成分は、ANDゲート100の16
ビット出力がANDゲート101の16ビット出力と等
しい(ビット毎に一致している)場合に充足される。
「=?」回路103はこの状況の決定を行うことを目的
としたもので、ANDゲート100及び101からの2
つの16ビット出力を入力として受け、出力として一致
状態表示信号104を生成するものである。
【0083】部分86のYレジスタ回路も全く同じであ
るが、これに接続する=?回路106及びその出力10
5以外についての要素は図を見易くするために省略して
ある。また、この図においては1つ(110)しか図示
していないが、実際にはこれに加えて更に6個の一致状
態表示出力(残りのALUレジスタに各々1つずつ)が
存在していることは言うまでもない。信号ALU_TR
IGGER96は、マスクにより排除されなかった全て
のALUレジスタビットがそれぞれに対応する‘_TR
IGGERレジスタに一致した場合に生成される。従っ
て、8個の=?回路からの出力の集合104・・・11
0がANDゲート111によりAND演算されることに
よりALU_TRIGGER96が生成されるのであ
る。
【0084】次にマイクロコントローラシーケンサ部分
84の説明に移るが、信号ALU_TRIGGER96
は充足したトリガ仕様を構成する一つの要素である。更
に満たさなければならないプログラム成分が残ってい
る。プログラム成分は信号TRIGGER_ENABL
E93により表される。ここではTRIGGER_EN
ABLE93が既に存在すること(その出処は後述す
る)を前提に説明するが、ANDゲート95によりTR
IGGER_ENABLE93とALU_TRIGGE
R96が組み合わせられ、これにより信号ARM_SY
STEM_TRIGGER113が生成される。この信
号113が真の場合、基本的トリガ仕様が満たされた状
況にあること、そして実際のトリガが許可される前に遅
延時間を経過しなければならないことを意味する。
【0085】この概念の説明を進めるが、信号ARM_
SYSTEM_TRIGGER113は遅延回路114
の開始入力に印加されていることがわかる。この遅延回
路の遅延量はリングバス85との接続を介して指定され
る。遅延量は時間間隔の絶対値或いはDUTサイクル数
で表されるが、0の場合もある。このような回路は従来
から周知であると考えられるため、その詳細説明は省略
する。遅延回路114としては、事前設定可能なカウン
タ、タイマ及び電圧ランプ/閾値機構を含むがこれらに
限られない様々な種類の好適な遅延機構のうち、どれを
採用しても良い。いずれの場合においても、ARM_S
YSTEM_TRIGGER113に続く遅延時間が経
過した場合、信号SYSTEM_TRIGGER115
が出力される。これはセット/リセットフリップフロッ
プ116のセット入力に供給される。SYSTEM_T
RIGGER115によりフリップフロップ116のQ
出力が真となる。このQ出力は、信号TRIGGERE
D122である。これはターゲットシーケンスが終わる
まで持続する信号であり、図4の他の様々な箇所におい
て利用される。信号TRIGGERED122は、取得
掃引の次段階の開始時点において発生する信号STAR
T131により偽となる。この信号START131
は、リングバス85に結合するワンショット回路132
から発信され、取得掃引における次段階部分としてのテ
ストプログラムの再起動を監督するソフトウエアにより
活性化される信号である。
【0086】ここで信号TRIGGER_ENABLE
93がどのように生成されるのかを説明する。簡単に述
べれば、これはマイクロコントローラシーケンサ19が
利用する208ビット長の命令語の1ビットである。こ
のビットが設定されることになる状況としては、ユーザ
ーがスコープモードの管理機構に対して、ソースコード
中のこれこれの行が、その機械命令がトリガをイネーブ
ルにするということを指定した場合である(この場合で
ある可能性が一番高い)。また、より希な状況として、
コンパイラがプログラマにより明確にその場所に挿入さ
れたソースコード「ここでトリガをイネーブルする」と
いう命令に行き当たった場合があげられる。前者はスコ
ープモードの管理機構が機械命令自体を変更する場合
(コンパイラの応諾を要する場合も要さない場合もあり
得る)であり、後者はユーザーがテストプログラム自体
のソースコードを変更して再度コンパイリングを行った
場合である。TRIGGER_ENABLEビットを設
定した命令語は1つだけの場合もあれば、そのような語
の連続するストリングがある場合も、或いはテストプロ
グラムの実行に伴ってビットが設定されたり設定されな
かったりする場合はその中間的なものである場合もあ
る。
【0087】説明を続けるが、208ビット命令語は、
次アドレス計算器102が生成したアドレス63により
指定されるプログラムSRAM20からフェッチされ
る。次アドレス計算器102は幾つかの更なる関連処理
を実施する。第一に、次アドレス計算器102はプログ
ラムを実行している間は必ず信号BUSY156を生成
する。これは、マイクロコントローラシーケンサ19に
よるパターン実行処理の制御において、様々な管理機構
を助けるものである。次アドレス計算器は更に、プログ
ラムの実行を中断する状況が生じたことを意味する信号
PGM_QUIT157も生成する。このような状況の
1つとして、信号TRIGGERED122及び信号
‘SCOPE MODE138のAND演算があげられ
る。これを実行するための論理は次のアドレス計算器1
02にとって内部的であるので、明確にされていない。
次アドレス計算器102はまた更に、新たな有効アドレ
スが次アドレス計算器102の出力63に存在すること
を意味する信号PGM_STEP145も生成する。P
GM_STEP145は、パターン(テストプログラ
ム)中の次の段階がこれから実行されることを他の機構
に通知する目的にも利用することが出来る。
【0088】図4のこの部分をよく見ると、信号PGM
_QUIT157及びTRIGGERED122が、リ
ングバスにより読み出し可能な状態レジスタの関連ビッ
ト(それぞれ、158a及び158b)に結合している
ことがわかる。これもまた、通常動作及びトリガ動作の
両方を監督する様々な管理ソフトウエア機構を助けるも
のである。
【0089】ここでスコープモードFIFO130に目
を向けるが、これはその内容がバスに読み出せるような
形(データ出力として)でリングバス85に接続してい
る。これは更に、次アドレス計算器102の出力(生成
されたアドレス)に接続している。これらの接続は、タ
ーゲットシーケンスのアドレスの取得処理と、後の変
更、及びプログラムSRAM20(これもリングバス8
5に接続する)の予約領域に記憶するための再取得処理
を支援するものである。スコープモードFIFOは、L
OAD端子への信号印加に伴って自動的に増分する内部
アドレス指定機構を有する。ターゲットシーケンスの記
憶又は読み出しの開始時にこの内部アドレスをゼロに戻
すために、RESET端子にSTART信号131が供
給される。LOAD端子は、TRIGGERED122
及びFIFO130のFULL端子から出る反転信号
(インバータ134により反転したもの)を入力として
受けるANDゲート135の出力によって駆動する。こ
の構成により、TRIGGERED信号が真になった
後、FIFOが一杯になるまで、ターゲットシーケンス
が発生するに伴ってこれらを連続的に記憶することが可
能となるのである。この処理が発生すると、スコープモ
ードの管理ソフトウエアはFIFOの内容を読み出し、
プログラムSRAM20から対応命令語をフェッチし、
全ての分岐が次の命令を指示することになるように調整
するためにこれらの命令を変更し、そして変更した命令
をプログラムSRAM20の予約領域に記憶することが
出来るようになる。
【0090】次にリングバス85に接続する単一ビット
スコープモードレジスタ137について説明する。これ
はトリガ仕様が有効状態にあることを示すために管理ソ
フトウエアが設定するものである。スコープモードレジ
スタ137の出力は信号‘SCOPE_MODE138
であり、これは、エラーフラグ挿入機構及び部分91
(内部テストメモリ87の拡張例)の2箇所において使
用される。エラーフラグ挿入処理の説明に移る前に、ス
コープモード処理を支援するために必要とされる、図4
の最後の要素である部分91を説明する。
【0091】部分91の目的は、ターゲットシーケンス
に属する受信ベクトルをECR2(32b)に記憶する
ことである。これらのベクトルは一回につき取得掃引の
一段開ずつここにキャッシュされ、波形構築の際にスコ
ープモードを制御するソフトウエアにアンロードされ
る。記憶される内容は、比較データ146(図5に拡大
して示したようにタイミング/フォーマッティングおよ
び比較回路52を介してピンエレクトロニクス9に至る
ことになる)である。このような比較データ146がE
CR2のデータ入力に供給された場合、次の関心事はこ
れをどのように記憶するかである。記憶処理は、エラー
がECR中に記憶されているかどうかを決定する通常機
構の有無に応じた方法で行われなければならない。その
具体例がECR_LOG_ENABLE94である。こ
れは208ビット命令語の1ビットであり、これが設定
されるか否かはプログラマがテストプログラム中のその
部分についてエラーデータの記録を取ることを望んでい
るかいないかによる。ここで必要なことは、ターゲット
シーケンスの実行中は必ずECR2(32b)のWRI
TE−ENABLE端子を強制的に真とすることであ
る。この役割を果たすのがMUX141であり、これが
ECR2のWRITE ENABLEを、信号‘SCO
PE_MODEが偽(通常処理)の場合はECR_LO
G_ENABLEで駆動し、真の場合はTRIGGER
EDで駆動する。もう1つのMUX142も‘SCOP
E_MODEを利用してECR2に適用するアドレスの
変更を行う。通常モード処理においては、アドレスは単
純にアドレスマッパ29から供給される通常アドレスで
ある。スコープモードにおいては、このアドレスは増分
可能レジスタ144から供給される異なるアドレスであ
る。増分可能レジスタ144の値は信号START13
1によってゼロにリセットされ、信号PGM_STEP
145によって増分される。即ち、この値はターゲット
シーケンスの実行に同期して増分するのである。この構
成によれば、ターゲットシーケンスの実行に伴って比較
データ(VOH閾値が一致か不一致か)が記憶される。
プログラマがテストプログラムのエラーデータの通常ロ
グにECR2を使用することはないと思われる。
【0092】最後に、リングバス85に接続する4ビッ
トレジスタ147a〜dについて説明する。これは4個
の1ビット区分を含み、その中の3つは通常のエラーフ
ラグに替えて挿入すべき値を示すものである。従って、
FERR_JAM147aはFERR154を、PER
R_JAM147bはPERR153を、そしてECR
_FLG_JAM147cはECR_FLG152を置
き換えることが出来る。これらの置換は‘SCOPE_
MODE138が真(トリガ仕様が充足した結果スコー
プモードレジスタ137が設定されたことを表す)であ
り、かつ4番目のビットTRIGGER_JAM_EN
ABLE147dも設定されている場合に実施される。
ANDゲート148がこの状況を検出し、その出力がM
UX149、150及び151を切り換えるために使用
される。これらのMUXの切り換えにより挿入処理が生
じるのである。MUXの結合出力155は次アドレス計
算器102に供給され、テストプログラム中の分岐に影
響を与える修飾入力として用いられるのである。
【0093】次に図5を参照するが、これは取得掃引の
各段階においてECR2(32b)に記憶されることに
なる比較データを供給する下位レベルの回路(これらの
多くはチャネル毎に存在する)を示す概略ブロック図で
ある。この図の左側は本願の参考文献である「MEMO
RY TESTER WITH ENHANCEDPO
ST DECODE(ポストデコード処理を改善したメ
モリテスタ)」の図5の一部である。従って、これにつ
いての詳細にわたる説明は避け、簡単に概略について触
れる。
【0094】まず、DUTのパッド又は端子109につ
いて説明する。これは、内部SRAM54(図2にも回
路52の一部として図示)からFORMAT140及び
データ139を取得するドライブフォーマット発生器1
07によって起動するレベルシフタ108により駆動す
ることが出来る。実施されている処理が何であれ端子1
09の電圧が指定範囲に収まっている場合、普通はその
端子がテスタによって駆動されているかどうかを知りた
いと望むものである。このために2つの比較器117及
び118が存在し、これらが端子109と信号CH V
OH172(チャネル毎のVOH)及びCH VOL1
71(チャネル毎のVOL)にそれぞれ接続している。
信号CH VOH及びCH VOLは、これらの比較器
が比較基準として用いる設定可能な比較電圧である。比
較器の出力は受信ラッチ119a及び119bにそれぞ
れにラッチされ、これらのラッチの出力がそれぞれに論
理信号YVOH及びYVOLを生成する。ラッチ処理
は、ストローブ発生器170が、表示されたサンプルタ
イミングオフセットに基づいて決定したDUTサイクル
中のある時点において実施されるが、これについての更
なる説明は後に行う。
【0095】YVOH及びYVOLは、FORMAT信
号140、(期待)データ139及びIVTバス(これ
はVTバス89のチップ間延長部と言える;回路52は
APGが集積されたシリコンチップとは別の、マイクロ
コントローラシーケンサ19が集積されているチップに
集積されているため)に応答するF/Pエラー選択レジ
スタ123中の情報に基づいて測定値入力が正しいかど
うかを評価するフォーマットされたレシーバ124に供
給される。いずれの場合においても、フォーマットされ
たレシーバ(チャネル毎に存在する)は信号FUNCT
IONAL_ERROR126、PARAMETRIC
_ERROR127及びCOMPARE_ERROR1
25を発信する。信号FUNCTIONAL_ERRO
R126及びPARAMETRIC_ERROR127
はラッチ128及び129にそれぞれラッチされ、ラッ
チ128及び129は、図2の回路52の入力に現れた
信号DFE0:3(103)及びDPE0:3(10
4)に応じて更なる処理の対象になり得る信号176及
び177を生成する。これらが何を意味するかは開示し
た本発明の範囲外のことであり、これらはマルチDUT
処理に関連したものである。ここで留意しておくべきこ
とは、信号COMPARE_ERROR125は通常、
実際のエラーデータとして恐らくはECR(エラー捕捉
RAM)中に記憶されるもの、或いは先ず種類(データ
分類又はポストデコード処理)により特性付けされた後
に適正な種類の標識子がECRに記憶される類のもので
あるという点である。いずれにしても通常処理において
は、COMPARE_ERROR125はフォーマット
化されたレシーバ124に印加されるFORMAT信号
140に基づいて生成されるに従い、送信されなければ
ならない。この情報は「生の」YVOH及びYVOLと
異なる場合もある。更に留意すべきは、取得掃引の1段
階においては、この信号はまさに「生の」YVOHその
ものであり、システムの他の部分に配信されなければな
らないという点である。これらの異なる目的を達成する
役割を果たすのは(チャネル毎の)MUX173であ
る。MUX173はチャネル毎のCOMPARE_ER
ROR125及び(チャネル毎の)YVOH175を受
け、これらのうち、信号PIPED_TRIGGER1
80に基づいて適正な1つのみを送出する。即ち、PI
PED_TRIGGER180が偽の場合、信号COM
PARE_ERROR125が選択され、真の場合は実
際の(翻訳処理されていない)YVOH175が選択さ
れるということである。
【0096】妥当な説明順序として、次に信号PIPE
D_TRIGGER180について触れる。これは、マ
イクロコントローラシーケンサ19から始まって、AL
U24、アドレスマッパ29、内部テストメモリ87及
び(又は)データMUX35、アドレスビット選択回路
37、回路40、ベクトルFIFO45、そして最後に
タイミング/フォーマッティングおよび比較回路52
(図5を含む回路)を通る信号搬送パイプラインにより
もたらされる遅延を持っていること以外は、論理的に信
号TRIGGERED122(図4)に等しい。このパ
イプラインの存在及びそれによる遅延のため、信号TR
IGGERED122(これはパイプラインの先頭段に
ある)は、これに関連する送信ベクトルが実際にDUT
に印加出来るようになる前に発生する。図5にはPIP
ED_TRIGGER180により制御される3つのM
UX164、169及び173がある。パイプラインの
遅延作用を無視した場合(例えばTRIGGEREDを
PIPED_TRIGGERに代えて使用した場合)、
これらのMUXは早過ぎる段階で変化してしまい、実際
上(論理的意味で)トリガの発生前にスコープモード処
理が開始されてしまうことになる。これでは様々な支障
が出てしまう。従って、信号TRIGGERED122
は遅延機構181により遅延させられ、PIPED_T
RIGGER180になるのである。遅延機構181は
図示したように実際の別個の回路としても、或いはパイ
プライン自体の中にTRIGGERED用に設けられた
専用経路としても良い。
【0097】最後に電圧閾値VOL及びVOHはどのよ
うに生成されるのか、そしてどのようにサンプルタイミ
ングオフセットが得られるのかについての説明を行う。
これらはプログラムにより決定された通常値と段階的な
取得掃引を実施するために必要な変化値との間で高速で
切り換えることが出来なければならない。
【0098】VOLはそれ自体が本願の対象とする処理
を構成するものではないが、単純かつ同様の開始点を持
つため、まずこのVOLについて説明する。VOLの起
点はVOLレジスタ161である。VOLレジスタ16
1はリングバス85に接続し、このバス上で送られるm
ビットのデジタル値を受信する。これらのmビットはV
OL D/A変換器162に印加され、アナログ閾電圧
CH VOL171が生成される。アナログ閾電圧CH
VOL171は比較器118に送られる。
【0099】CH VOH172の生成も同様である
が、相違点は、VOH D/A変換器165がMUX1
64のmビット出力により駆動されているという点であ
る。MUX164はリングバス85により設定可能な2
つのmビットレジスタのいずれかを選択するものである
が、これらのレジスタとは、通常モードVOHレジスタ
163及びスコープモードレジスタ166である。MU
X164はMUX173と同様に信号PIPED_TR
IGGER180の値に基づいてこの選択を行う。即
ち、MUX164は、PIPED_TRIGGERが真
の場合にはスコープモードレジスタ166のmビット値
を選択するが、真ではない場合にはレジスタ163から
の通常値を選択するのである。スコープモードレジスタ
166の値は、スコープモードの管理ソフトウエアによ
り取得掃引の一段階における所望のVOH変更方式と矛
盾しない値に事前に設定することが出来る。従ってCH
VOH電圧172の値は、信号PIPED_TRIG
GER180が発生した時点で極めて迅速に通常値から
変化させることが出来、そしてPIPED_TRIGG
ER180が消えると同様の速さで通常値に戻すことが
出来るのである。
【0100】最後に、サンプルタイミングオフセットを
通常値と取得掃引値との間で同様に切り換えるという問
題に触れなければならない。この処理は、PIPED_
TRIGGER180に制御されるMUX169がリン
グバス85に接続するスコープモードサンプルタイミン
グレジスタ168の出力又は通常モード用の「何等かの
機構」167(後述)の出力を選択するという点におい
て概ね同様の方法で行われる。選択される2つの出力
は、各々にnビット長を持ち、受信ラッチ119a、1
19bのストローブ処理を何らかの基準信号に対して遅
延させる時間量を記述するものである。その基準信号を
SYSTEM_DUT_CYCLE178と呼ぶものと
するが、これはストローブ発生器170に送られる。M
UX169が選択した遅延値(スコープモードにおいて
はレジスタ168から、通常モードにおいては「何等か
の機構」167から得られた値)もまた、ストローブ発
生器170に送られる。ストローブ発生器(基本的には
デジタル制御された遅延発生器)からの遅延出力179
は受信ラッチ119a、119bに印加される。その出
力は、本願の目的に照らし、MUX169からのnビッ
ト値分遅延したSYSTEM_DUT_CYCLE17
8の発生と考えることが出来る。このnビット値は、例
えば19.5ピコ秒の倍数として、遅延値を表すもので
ある。
【0101】先に述べた「何等かの機構」167とは何
か。その説明の開始点として、最も単純な実施例におい
て言えば、これはスコープモードサンプルタイミングレ
ジスタ168と同様の、リングバス85に結合する単な
るnビットレジスタである。この場合、通常モードサン
プルタイミングレジスタと呼ぶことが出来る。問題は、
これが有効ではないということではなく(即ち、有効で
はあるが)、テストプログラムにたった1つのサンプル
タイミングオフセットリソースしか提供しないため、サ
ンプルタイミングオフセット値を変化させなければなら
ない場合は常にプログラマが大変な作業をしなければな
らないという点にある。これは面倒な仕事である。かわ
りに、事前にプログラムしておくことが出来、テストプ
ログラムの実行中に容易に選択することが出来る「時間
セット」があれば望ましい。これらの時間セットは通常
モードサンプルタイミングルックアップテーブル167
中に、例えば16セットある。これらは更に、単なるサ
ンプルタイミングオフセット情報以上の内容を含むもの
であっても良い。本願の目的との関連性は薄いため、こ
れらに関連してこれ以上の説明は省くものとする。従っ
て、本願における通常モードサンプルタイミングルック
アップテーブル167の説明としては、これがアドレス
可能な16セットの要素を格納した機構であり、そのア
ドレス指定可能な場所の各々は幾つかの数値フィールド
を格納することが出来、そのフィールドの1つがnビッ
ト値であり、アドレス指定されると、最も最近にアドレ
ス指定された場所に現在記憶されているnビット値が他
の情報と共にその出力に提供されるものである、と述べ
るに留める。上述したように、時間セットという概念
は、従来からあるものと考えられ、必要とされる通常モ
ードサンプルタイミングルックアップテーブル167は
周知の方法で標準的なICライブラリ部品を用いて構成
することが出来る。
【図面の簡単な説明】
【図1】本発明に基づいて構築された、大幅な再設定が
可能で、アルゴリズムにより駆動する不揮発性メモリテ
スタの概略ブロック図である。
【図2】図1のDUTテスタ6を拡大して示した概略ブ
ロック図である。
【図3】スコープモード処理の概要を示すフローチャー
トである。
【図4】図2のブロック図に描かれている要素のうち、
トリガ処理とターゲットシーケンスの捕捉及び実行処理
に係わる部分をより詳細に描いた図である。
【図5】図2のブロック図に描かれている要素のうち、
取得掃引の実行中にVOH値及びサンプルタイミングオ
フセット値を段階的に変化させて行く処理に係わる部分
をより詳細に描いた図である。
【符号の説明】
14:被試験デバイス(DUT) 24:ALU 97:ALUレジスタ 98:トリガ値レジスタ 99:マスクレジスタ 100、101:AND回路 103:比較回路
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11C 29/00 651 G01R 31/28 B (72)発明者 アラン・エス・クレッチ・ジュニア アメリカ合衆国コロラド州80525,フォー ト・コリンズ,レッドベリー・コート 1518 (72)発明者 ブラッド・ディ・リーク アメリカ合衆国コロラド州80538,ラブラ ンド,ファイアソーン・ドライブ 8529 (72)発明者 ランディ・エル・ベイリー アメリカ合衆国コロラド州80526,フォー ト・コリンズ,チッペンデール・ドライブ 4616 (72)発明者 ジョン・エム・フリースマン アメリカ合衆国コロラド州80526,フォー ト・コリンズ,グレイ・フォックス・ロー ド 4507 Fターム(参考) 2G132 AA08 AB01 AE00 AE18 AE19 AE23 AE24 AF18 AG01 AG11 AL26 5B048 AA19 AA20 DD01 DD03 5L106 AA09 DD21 DD26 GG07

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 テスタ中の複数のALUハードウエアレ
    ジスタの内容を処理するアルゴリズム的性質を持つテス
    トプログラムを実行する前記テスタにおいてトリガ信号
    を生成するための方法であって、前記複数のALUハー
    ドウエアレジスタの内容が前記テスタと被試験デバイス
    (DUT)との間の関連信号トラフィックを表すもので
    あり、(a)前記複数のALUハードウエアレジスタの
    各々について、前記トリガ信号の生成に寄与すべき、い
    ずれのビット位置も含まない組み合わせも含む、任意の
    ビット位置の組み合わせを選択するステップと、(b)
    前記ALUハードウエアレジスタの各々に別個のトリガ
    値レジスタを関連付けるステップと、(c)前記ステッ
    プ(a)において選択された少なくとも1つのビット位
    置を有するALUハードウエアレジスタに関連するトリ
    ガ値レジスタの各々について、前記選択されたビット位
    置と同じビット位置に、トリガ信号を発生させるために
    前記関連するALUハードウエアレジスタが保持するビ
    ット値に対するビットをロードするステップと、(d)
    前記トリガ値レジスタの各々について、その対応するA
    LUハードウエアレジスタにおいて前記ステップ(a)
    で選択されたビット位置の組み合わせと同じビット位置
    の組み合わせを選択するステップと、(e)ALUハー
    ドウエアレジスタ及び関連するトリガ値レジスタの各対
    について、前記ALUハードウエアレジスタの選択され
    たビットの組み合わせが、関連するトリガ値レジスタの
    選択されたビットの組み合わせと一致するかを、ビット
    毎に比較するステップと、(f)前記ステップ(e)に
    おいて一致したことが決定された場合、トリガ信号を生
    成するステップと、を含む方法。
  2. 【請求項2】 (i)前記ステップ(a)が、前記AL
    Uハードウエアレジスタの各々に異なるマスクレジスタ
    を関連付けるステップと、前記マスクレジスタの各々
    に、前記対応するALUハードウエアレジスタにおいて
    選択されるべきビット位置における値である1をロード
    するステップと、各ALUハードウエアレジスタとそれ
    に関連するマスクレジスタとの間で、ビット毎にAND
    演算を実施するステップと、をさらに含み、前記ビット
    毎のAND演算の結果がそれぞれに対応するALUハー
    ドウエアレジスタについて選択されたビット位置の組み
    合わせの内容を表すものであり、(ii)前記ステップ
    (c)が、異なるマスクレジスタを前記トリガ値レジス
    タの各々に関連付けるステップと、別個のマスクレジス
    タの各々に、前記対応するトリガ値レジスタにおいて選
    択されるべきビット位置における値である1をロードす
    るステップと、各トリガ値レジスタとそれに関連するマ
    スクレジスタとの間で、ビット毎にAND演算を実施す
    るステップと、をさらに含み、前記ビット毎のAND演
    算の結果がそれぞれに対応するトリガ値レジスタについ
    て選択されたビット位置の組み合わせの内容を表すもの
    である、請求項1に記載の方法。
  3. 【請求項3】 前記テストプログラムの実行可能命令語
    のうち、前記トリガ信号の生成を可能とすることを意図
    したテストプログラム部分に対応する実行可能命令語の
    中にトリガイネーブルビットを含ませるステップをさら
    に含み、前記ステップ(f)においては、前記トリガイ
    ネーブルビットの存在が前記トリガ信号が生成されるた
    めのさらなる条件であることを特徴とする、請求項1に
    記載の方法。
  4. 【請求項4】 (g)前記テストプログラムの分岐に影
    響を与えるエラーフラグに対して選択した代替値を定義
    するステップと、(h)前記ステップ(f)における前
    記トリガ信号の生成の後に、前記エラーフラグの実際の
    値をそれらに対応する前記代替値に置き換えるステップ
    と、をさらに含む、請求項1に記載の方法。
  5. 【請求項5】 (g)前記ステップ(f)における前記
    トリガ信号の生成の後に、前記テストプログラムにより
    実行される、選択された数の連続命令語であるターゲッ
    トシーケンスを捕捉するステップと、(h)前記ステッ
    プ(g)の後、前記テストプログラムを繰り返し再起動
    し、前記トリガ信号の発生時に分岐をさせて前記捕捉し
    たターゲットシーケンスの実行を継続するステップと、
    (i)前記ステップ(h)において前記捕捉されたター
    ゲットシーケンスを繰り返し実行する間、前記DUTの
    選択されたチャネルの閾電圧値とサンプルタイミングオ
    フセット値を変化させて行くステップと、(j)前記ス
    テップ(i)から得られた閾値比較データを記憶するス
    テップと、(k)前記ステップ(j)において記憶され
    た前記閾値比較データから、前記選択されたチャネルの
    電圧波形を生成し、前記捕捉されたターゲットシーケン
    スの前記トリガ信号後の実行に対応する時間を表示する
    ステップと、をさらに含む、請求項1に記載の方法。
  6. 【請求項6】 前記生成されたトリガ信号の発生を選択
    された時間分遅延させるステップをさらに含む、請求項
    1に記載の方法。
  7. 【請求項7】 前記テスタがメモリテスタであり、前記
    DUTがメモリであることを特徴とする、請求項1に記
    載の方法。
  8. 【請求項8】 テストプログラムにより提供される刺激
    に対する被試験デバイス(DUT)の応答に基づいて分
    岐を発生させるアルゴリズム的性質を持つ前記テストプ
    ログラムを実行するテスタによって動作する前記DUT
    の選択されたチャネルの電圧波形を生成する方法であっ
    て、(a)前記テスタのハードウエア内において、前記
    テストプログラムの選択部分の実行を含む選択条件が同
    時に発生したことを示すトリガ信号を生成するステップ
    と、(b)前記ステップ(a)による最初のトリガ信号
    が生成された後、前記トリガ信号の生成後に前記テスト
    プログラムが実行した選択された数の連続命令である命
    令のターゲットシーケンスに対応するターゲットシーケ
    ンスのアドレスを捕捉するステップと、(c)前記ステ
    ップ(b)の後、前記捕捉されたターゲットシーケンス
    のアドレスにより識別される前記命令のターゲットシー
    ケンスをフェッチするステップと、(d)前記ステップ
    (c)の後、前記フェッチした命令のターゲットシーケ
    ンスを変更することにより、その中に生じる分岐がシー
    ケンス中の次の命令の位置を指示することになるように
    調整するステップと、(e)前記ステップ(d)の後、
    前記変更した命令のターゲットシーケンスを、実行され
    るテストプログラムが格納されるプログラムメモリの予
    約領域に記憶するステップと、(f)前記選択されたチ
    ャネルについて、(f1)テストプログラムを再起動す
    るステップと、(f2)その後のトリガ信号のインスタ
    ンスを生成するステップと、(f3)前記テストプログ
    ラムの実行を中断するステップと、(f4)前記選択さ
    れたチャネルに対し、比較閾電圧及びサンプルタイミン
    グオフセットの選択値を有効化するステップと、(f
    5)前記変更され、記憶された命令のターゲットシーケ
    ンスの開始において前記テストプログラムの実行を再開
    するステップと、(f6)前記選択されたチャネルにつ
    いての比較結果を記憶するステップと、を、前記ステッ
    プ(f6)により電圧波形を生成するのに充分な量の比
    較結果が記憶されるまで繰り返し上記順番で実行するス
    テップと、(g)前記記憶された比較結果から、前記選
    択されたチャネルの電圧波形を生成するステップと、を
    含む方法。
  9. 【請求項9】 前記ステップ(a)及び(f2)が、前
    記トリガ信号の発生を選択された時間分遅延させるもの
    であることを特徴とする、請求項8に記載の方法。
  10. 【請求項10】 前記テスタがメモリテスタであり、前
    記DUTがメモリであることを特徴とする、請求項8に
    記載の方法。
JP2002117030A 2001-04-19 2002-04-19 アルゴリズム的にプログラム可能なメモリテスタにおけるトリガ信号生成方法 Expired - Fee Related JP4298960B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/838,766 US6834364B2 (en) 2001-04-19 2001-04-19 Algorithmically programmable memory tester with breakpoint trigger, error jamming and 'scope mode that memorizes target sequences
US09/838766 2001-04-19

Publications (3)

Publication Number Publication Date
JP2003050269A true JP2003050269A (ja) 2003-02-21
JP2003050269A5 JP2003050269A5 (ja) 2005-09-22
JP4298960B2 JP4298960B2 (ja) 2009-07-22

Family

ID=25277994

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002117030A Expired - Fee Related JP4298960B2 (ja) 2001-04-19 2002-04-19 アルゴリズム的にプログラム可能なメモリテスタにおけるトリガ信号生成方法

Country Status (4)

Country Link
US (1) US6834364B2 (ja)
JP (1) JP4298960B2 (ja)
KR (1) KR100881843B1 (ja)
DE (1) DE10217303A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009047693A (ja) * 2007-08-15 2009-03-05 Keithley Instruments Inc 試験機器ネットワーク
JP2009300248A (ja) * 2008-06-13 2009-12-24 Mitsubishi Electric Corp 並列試験装置

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763490B1 (en) * 2000-09-25 2004-07-13 Agilent Technologies, Inc. Method and apparatus for coordinating program execution in a site controller with pattern execution in a tester
US20020199179A1 (en) * 2001-06-21 2002-12-26 Lavery Daniel M. Method and apparatus for compiler-generated triggering of auxiliary codes
WO2003085838A1 (fr) * 2002-04-05 2003-10-16 Sony Corporation Dispositif et procede d'entrelacement, dispositif et procede de desentrelacement
US7178135B2 (en) * 2002-05-16 2007-02-13 International Business Machines Corporation Scope-based breakpoint selection and operation
US20040019828A1 (en) * 2002-07-25 2004-01-29 Gergen Joseph P. Method and apparatus for debugging a data processing system
US20040025083A1 (en) * 2002-07-31 2004-02-05 Murthi Nanja Generating test code for software
US7509533B1 (en) * 2003-06-30 2009-03-24 Sun Microsystems, Inc. Methods and apparatus for testing functionality of processing devices by isolation and testing
JP4737929B2 (ja) * 2003-12-12 2011-08-03 株式会社東芝 半導体記憶装置
US7426556B2 (en) * 2004-03-30 2008-09-16 At&T Intellectual Property I, L.P. Methods, systems, and products for verifying integrity of web-server served content
US7216256B2 (en) * 2004-03-30 2007-05-08 Bellsouth Intellectual Property Corporation Methods, systems, and products for verifying integrity of web-server served content
US7363364B2 (en) * 2004-03-30 2008-04-22 At&T Delaware Intellectual Property, Inc. Methods, systems, and products for verifying integrity of web-server served content
US7353437B2 (en) * 2004-10-29 2008-04-01 Micron Technology, Inc. System and method for testing a memory for a memory failure exhibited by a failing memory
JPWO2007043144A1 (ja) * 2005-10-05 2009-04-16 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 負荷試験装置およびその方法
DE102005048872A1 (de) * 2005-10-12 2007-04-26 Mühlbauer Ag Testkopfeinrichtung
US7650555B2 (en) * 2006-07-27 2010-01-19 International Business Machines Corporation Method and apparatus for characterizing components of a device under test using on-chip trace logic analyzer
KR100764052B1 (ko) * 2006-08-03 2007-10-08 삼성전자주식회사 유동적 어드레스 바운더리를 갖는 플래시 메모리 장치 및그것의 프로그램 방법
KR20100103212A (ko) * 2009-03-13 2010-09-27 삼성전자주식회사 복수개의 테스트 모듈을 구비하는 테스트 보드 및 이를 구비하는 테스트 시스템
US8683456B2 (en) * 2009-07-13 2014-03-25 Apple Inc. Test partitioning for a non-volatile memory
US8650446B2 (en) * 2010-03-24 2014-02-11 Apple Inc. Management of a non-volatile memory based on test quality
US8645776B2 (en) * 2010-03-24 2014-02-04 Apple Inc. Run-time testing of memory locations in a non-volatile memory
US8751903B2 (en) 2010-07-26 2014-06-10 Apple Inc. Methods and systems for monitoring write operations of non-volatile memory
US9397500B2 (en) * 2013-06-28 2016-07-19 Solantro Semiconductor Corp. Inverter with extended endurance memory
CN110502439B (zh) * 2019-08-07 2024-01-12 Oppo广东移动通信有限公司 调试方法、装置、电子设备以及存储介质
CN114546822A (zh) * 2021-12-27 2022-05-27 芯华章科技股份有限公司 测试设计的方法、电子设备及存储介质
US11914500B2 (en) * 2022-02-03 2024-02-27 Apple Inc. Debugging of accelerator circuit for mathematical operations using packet limit breakpoint

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2577120Y2 (ja) * 1993-04-15 1998-07-23 株式会社アドバンテスト 過剰パルス印加の禁止回路
JP3237473B2 (ja) * 1995-06-29 2001-12-10 安藤電気株式会社 マスク制御装置
EP0762280B1 (en) * 1995-08-30 2001-11-14 Motorola, Inc. Data processor with built-in emulation circuit
US5771240A (en) * 1996-11-14 1998-06-23 Hewlett-Packard Company Test systems for obtaining a sample-on-the-fly event trace for an integrated circuit with an integrated debug trigger apparatus and an external pulse pin
US6360340B1 (en) * 1996-11-19 2002-03-19 Teradyne, Inc. Memory tester with data compression
US6253338B1 (en) * 1998-12-21 2001-06-26 International Business Machines Corporation System for tracing hardware counters utilizing programmed performance monitor to generate trace interrupt after each branch instruction or at the end of each code basic block
US6327544B1 (en) * 1999-03-01 2001-12-04 Agilent Technologies, Inc. Automatic storage of a trigger definition in a signal measurement system
DE69940061D1 (de) * 1999-09-30 2009-01-22 St Microelectronics Srl Speicherprüfverfahren und nicht-fluchtiger Speicher mit niedriger Fehlerverdeckungswahrscheinlichkeit
US6615369B1 (en) * 2000-01-31 2003-09-02 Agilent Technologies, Inc. Logic analyzer with trigger specification defined by waveform exemplar

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009047693A (ja) * 2007-08-15 2009-03-05 Keithley Instruments Inc 試験機器ネットワーク
JP2009300248A (ja) * 2008-06-13 2009-12-24 Mitsubishi Electric Corp 並列試験装置

Also Published As

Publication number Publication date
DE10217303A1 (de) 2002-10-31
KR100881843B1 (ko) 2009-02-03
KR20020081673A (ko) 2002-10-30
US6834364B2 (en) 2004-12-21
US20020157042A1 (en) 2002-10-24
JP4298960B2 (ja) 2009-07-22

Similar Documents

Publication Publication Date Title
JP4298960B2 (ja) アルゴリズム的にプログラム可能なメモリテスタにおけるトリガ信号生成方法
JP4194799B2 (ja) 被試験デバイスの試験中にエラーが生じた場合にテストプログラムのアルゴリズム制御のその時点の状態を回復する方法
US5925142A (en) Self-test RAM using external synchronous clock
US6957371B2 (en) Method and apparatus for embedded built-in self-test (BIST) of electronic circuits and systems
US6493839B1 (en) Apparatus and method for testing memory in a microprocessor
US6347056B1 (en) Recording of result information in a built-in self-test circuit and method therefor
KR100786418B1 (ko) Dram에서의 메모리 동작 수행 방법
EP0472818A2 (en) Built-in self test for integrated circuits
KR100896585B1 (ko) 메모리 테스트 방법
JP2008310955A (ja) 不良な列にあるアドレスでプログラミングするのに時間を消費することを回避する方法
US6598112B1 (en) Method and apparatus for executing a program using primary, secondary and tertiary memories
US6591385B1 (en) Method and apparatus for inserting programmable latency between address and data information in a memory tester
US6862704B1 (en) Apparatus and method for testing memory in a microprocessor
JP4317338B2 (ja) 高機能化された後デコードを有するメモリテスタ
US6763490B1 (en) Method and apparatus for coordinating program execution in a site controller with pattern execution in a tester
US6687855B1 (en) Apparatus and method for storing information during a test program
EP1411434A2 (en) A software programmable verification tool having a single built-in self-test (bist) module for testing and debugging multiple memory modules in a device under test (dut)
US6968545B1 (en) Method and apparatus for no-latency conditional branching
KR100786414B1 (ko) Dut 테스터 데이터 채널 반전 특성 관리 장치
EP1193502A2 (en) Apparatus and method for performing conditional calculations
EP1411433A2 (en) A software programmable verification tool having multiple built-in self-test (bist) modules for testing and debugging multiple devices under test (dut)
KR20020020862A (ko) 메모리 테스터 어드레스 채널 관리 장치
JPH07280886A (ja) 半導体集積回路の評価装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050418

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050418

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20071025

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080620

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20080918

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20080924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081222

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090416

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120424

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140424

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees