(57)【特許請求の範囲】
【請求項１】
集積回路チップ（３００）の上に複数のタイミング発生器（１１６）を備えた自動テスト装置であって、
それぞれのタイミング発生器は、それぞれの周波数を有する複数のタイミング信号を生じ、
それぞれの周波数は、自動テスト装置のための制御プログラムによって変動させることができ、
それぞれのタイミング信号は、第１の回路（１１８）によって処理され、
それぞれのタイミング信号は、それぞれのタイミング信号の周波数に応答して前記第１の回路を通る遅延を補償するエッジ・レート補償器（３１０）の入力に接続されている、自動テスト装置において、
それぞれのタイミング信号を搬送する前記集積回路チップ上の信号経路と、
前記集積回路チップ上の電力経路と、を備えており、
前記エッジ・レート補償器は、
前記電力経路に接続された第１の接続点と第２の接続点とを有する抵抗要素（４１６）と、
前記エッジ・レート補償器の入力に接続された入力と、前記第２の接続点に接続された出力とを有し、前記入力における信号の周波数に反比例する量の電流をシンクする、スイッチング回路（４１０、４１２、４１４）と、
を備えていることを特徴とする自動テスト装置。
【請求項２】
前記スイッチング回路は、
入力と、前記抵抗要素の前記第２の接続点に接続された電流シンク出力とを有しており、前記入力における第１の論理レベルに応答して電流をシンクする論理ゲート（４１４）と、
前記スイッチング回路の入力に接続された入力と、前記論理ゲートの入力に接続された出力とを有しており、前記入力における信号の変化に続く所定の時間の間、前記第１の論理レベル信号を生じる、論理回路（４１０、４１２）と、
を備えている請求項１記載の自動テスト装置。
【請求項３】
前記論理回路は、
第１の入力と、第２の入力と、前記論理回路の出力に接続された出力とを有しており、前記第１の入力における信号と前記第２の入力における信号とが異なる論理値を有するときに、第１の論理レベルを生じる第２の論理回路（４１２）と、
前記論理回路の入力と前記第２の論理回路の第１の入力との間の接続と、
前記論理回路の入力と前記第２の論理回路の第２の入力との間に接続された遅延線（４１０）と、
を備えている請求項２記載の自動テスト装置。
【請求項４】
前記第２の論理回路は排他的ＯＲゲートを含む請求項３記載の自動テスト装置。
【請求項５】
前記抵抗要素は抵抗を含む請求項１記載の自動テスト装置。
【請求項６】
前記集積回路チップは複数のＩ／Ｏパッド（３１２、３１４）を有し、
前記抵抗要素は前記複数のＩ／Ｏパッドの１つの内部に回路を含む、
請求項１記載の自動テスト装置。
【請求項７】
前記集積回路チップはＩ／Ｏパッド（３１２、３１４）を有し、
前記複数のタイミング信号の１つは前記Ｉ／Ｏパッドに接続され、
前記抵抗要素は前記Ｉ／Ｏパッドから２００ミクロン以内にある、
請求項２記載の自動テスト装置。
【請求項８】
それぞれが前記複数のタイミング信号の１つを搬送する複数の信号経路と、
それぞれが前記信号経路の１つに接続された複数のエッジ・レート補償器と、を更に備えている請求項１記載の自動テスト装置。
【請求項９】
前記第１の回路に近接する前記集積回路チップ上の第２の回路（１１８）を更に備え、
前記エッジ・レート補償器は、それぞれのタイミング信号の周波数に応答して、前記第２の回路を通過する遅延を補償する手段を備えている、
請求項１記載の自動テスト装置。
【請求項１０】
前記エッジ・レート補償器は、それぞれのタイミング信号の周波数に反比例して熱を発生する手段を備えている、請求項１記載の自動テスト装置。
【請求項１１】
前記エッジ・レート補償器は、それぞれのタイミング信号の周波数に反比例して熱を発生する手段を備えている、請求項９記載の自動テスト装置。
【請求項１２】
前記集積回路チップはＣＭＯＳチップである請求項１１記載の自動テスト装置。
【請求項１３】
それぞれのタイミング発生器は、
出力と、基準クロックに接続された入力と、制御入力とを有しており、前記出力上に前記基準クロックの遅延されたものを生じ、前記遅延の量は前記制御入力によって制御されている、プログラマブルな遅延線（２１０、２２０、２２２（１）、２２２（２）、２２２（３）、２２２（４））と、
前記基準クロックの周波数で動作し、出力と、前記基準クロックに接続されたクロック入力と、制御入力とを有しており、前記制御入力によって特定された前記クロック入力の周期の数をカウントした後で前記出力において信号をアサートする、カウンタ（２２６）と、
出力と、前記プログラマブルな遅延線の出力に接続された第１の入力と、前記カウンタの出力に接続された第２の入力とを有し、前記第２の入力における信号がアサートされるときに、前記第１の入力における次のパルスを前記出力まで通過させるゲート回路（２３０）と、
を備えている請求項１記載の自動テスト装置。
【請求項１４】
テスト・パターンをバースト内で実行し、
それぞれのタイミング信号の周波数はバーストの間に変更され得る、
請求項１３記載の自動テスト装置。
【請求項１５】
それぞれのタイミング信号は独立にプログラムされた周波数で発生され得る、請求項１３記載の自動テスト装置。
【請求項１６】
前記プログラマブルな遅延線は、複数のタップを有する遅延線と、第１の組のタイミング制御ビットに応答して前記複数のタップの１つの出力を選択する手段と、を備えている請求項１３記載の自動テスト装置。
【請求項１７】
前記カウンタは前記基準クロックに直接に接続されている請求項１３記載の自動テスト装置。
【請求項１８】
前記カウンタのクロック入力は前記基準クロックの遅延されたものに接続されている請求項１３記載の自動テスト装置。
【請求項１９】
前記プログラマブルな遅延線は遅延ロック・ループ（２１０、２１４、２１６）を含む請求項１３記載の自動テスト装置。
【請求項２０】
前記プログラマブルな遅延線は複数段の差動回路を備えている請求項１３記載の自動テスト装置。
【請求項２１】
前記差動段は交差結合されたフィードバックを用いて構成されている請求項２０記載の自動テスト装置。
【請求項２２】
前記プログラマブルな遅延線の制御入力に結合されており、要求される周波数を特定する制御プログラムに応答して、前記プログラマブルな遅延線に制御入力を発生する制御回路を更に備えている、請求項１３記載の自動テスト装置。
【請求項２３】
入力と、出力と、制御入力とを有しており、前記カウンタと前記ゲート回路との間に接続された第２のプログラマブルな遅延線であって、この第２のプログラマブルな遅延線の前記入力は前記カウンタの出力に接続され、この第２のプログラマブルな遅延線の前記出力は前記ゲート回路の第２の入力に接続されている第２のプログラマブルな遅延線（２２８）を更に備えている、請求項１３記載の自動テスト装置。
【請求項２４】
入力と、出力と、制御入力とを有し、前記カウンタと前記ゲート回路との間に接続された第２のプログラマブルな遅延線であって、この第２のプログラマブルな遅延線の前記入力は前記カウンタの出力に接続され、この第２のプログラマブルな遅延線の前記出力は前記ゲート回路の第２の入力に接続され、前記制御入力はタイミング制御ビットの前記第１の組に接続されている第２のプログラマブルな遅延線（２２８）を更に備えている、請求項１６記載の自動テスト装置。
【請求項２５】
第１のクロック周波数で動作しプログラマブルな周波数でエッジ信号を発生するタイミング発生器（１１６）を有するプログラマブルなテスト装置の作動方法であって、
ａ）前記エッジ信号の周期を示すタイミング・データを提供するステップであって、前記タイミング・データは、前記第１のクロック周波数における周期の数とその分数部分とによって前記周期を特定する、ステップと、
ｂ）前記第１のクロック周波数における基準クロックを１周期の前記分数部分だけ遅延させるステップと、
ｃ）前記特定された整数個の周期をカウントするステップと、
ｄ）ステップ（ｃ）における前記カウントが完了した後に生じる遅延された基準クロックの第１のエッジと一致するタイミング・エッジを生成するステップと、
ｅ）前記タイミング・エッジを生成するステップを連続的に反復して、複数のタイミング・エッジを発生するステップと、
ｆ）前記タイミング・エッジの周波数に反比例する量の電流を抵抗要素に流すステップと、
を含む方法。
【請求項２６】
前記プログラマブルなテスト装置はテスト・パターン・バーストを実行し、
ステップ（ｂ）における前記遅延の付与が、デジタル回路（２１０、２２０、２２２（１）、２２２（２）、２２２（３）、２２２（４））において実行され、
前記デジタル回路は、前記バーストの全体の間、前記第１のクロック周波数でクロックされる、
請求項２５記載の方法。
【請求項２７】
前記デジタル回路は、前記テスト・パターン・バーストに先立つある時間の間、前記第１のクロック周波数でクロックされ、前記時間は、前記デジタル回路が熱平衡に到達することができるのに充分である、請求項２６記載の方法。
【請求項２８】
前記デジタル回路はＣＭＯＳ回路である請求項２６記載の方法。
【請求項２９】
ステップ（ｃ）における前記カウントは、
（ｃ１）前記基準クロックのパルスをカウントするステップと、
（ｃ２）ゲート信号を生成するステップと、
を含み、ステップ（ｄ）におけるタイミング・エッジの生成が、
（ｄ１）前記ゲート信号を、前記タイミング・データの前記分数的部分のビットの少なくとも一部に比例して遅延させるステップと、
（ｄ２）前記遅延されたゲート信号の後に生じる前記遅延された基準クロックの第１のエッジに同期したタイミング・エッジを生成するステップと、
を含む、請求項２５記載の方法。
【請求項３０】
前記複数のエッジ信号の少なくとも１つの発生の間のステップ（ａ）における前記提供は、先行するタイミング・エッジの発生の間に提供されるタイミング・データとは異なるタイミング・データを提供するステップを含む、請求項２９記載の方法。
【請求項３１】
プログラマブルなテスト装置を作動させる前記方法は、ＣＭＯＳ集積回路において実行される、請求項３０記載の方法。
【発明の詳細な説明】
この発明は、広くは、自動テスト装置に関し、更に詳しくは、半導体デバイスのための低コスト自動テスト装置に関する。
メモリ・チップやマイクロコントローラなどの半導体デバイスは、その製造の間に、少なくとも１回は、テストがなされるのが通常である。テストは、従来、「テスタ」と称される自動化された装置を用いて行われている。テスタは、多くの入力／出力点を有しコンピュータ制御されたデバイスである。入力／出力点のそれぞれは、プローバ（prober）又はハンドラ（handler）と称されるデバイスを介して、半導体デバイスの１つのリード線に接続されている。
１つのテスタを用いて多くの異なるタイプの半導体デバイスをテストできるようにするために、テスタは、複数の「パターン」を発生するようにプログラムすることができる。パターンは、どのような刺激がテスト対象のデバイスに与えられているかとその刺激への予想される応答とを定義する。欠陥のあるデバイスが検出されるのは、予想される応答を生じないためである。
最も有用なテスタを作るためには、テスタが、任意の時間にテストされているデバイスの任意のピンにおいて任意の値を与え又はそれをチェックできることが望まれる。典型的には、パターンは、ベクトルのストリング（string）から構成される。それぞれのベクトルは、テスタの１つの動作周期の間に、テスト対象のデバイスのそれぞれのピンに与えられ又はそこで検出されることが予想される値に関する情報を含む。この情報は、データ値、タイミング情報及びフォーマット情報を含む。
フォーマット情報は、少なくとも、データが、そのピンにおいて駆動されるべき値であるかどうか、又は、観察されることが予想される値であるかどうかを、示す。あるテスタでは、フォーマット情報は、また、有効な論理１又は０がとるべきフォーマットを示す。フォーマットの例には、リターン・ツー・ゼロ、ノンリターン・ツー・ゼロ、サラウンド・バイ・コンプルメント（surround by complement）がある。
ほとんどのテスタでは、周期の長さはプログラム可能である。周期は、一般に、テスタのすべてのピンに印加される信号に関して、同一である。タイミング情報は、周期の始点に対する遅延としてプログラムされる。
要求される融通性を提供するために、典型的なテスタは、何らかの集中化された制御、すなわち、「大域的」（global）な制御回路を伴うアーキテクチャを有している。更に、「チャネル・エレクトロニクス」、又は、単に「チャネル」と称される複数の同一の回路が存在する。それぞれのチャネルは、テスト対象のデバイスの１つのピンに、信号を提供する。
図１には、典型的な従来技術によるテスタ１００が示されている。テスト・パターンは、メモリ１２０に記憶される。テスタの動作のそれぞれのサイクルに対して、テスト・システム制御１１０は、メモリ１２０から１つのベクトルを読み出す。そして、データ、フォーマット及びタイミング情報が、複数のチャネル１１４に提供される。更に、テスト・システム制御１１０は、すべての遅延がこれに基づいて計算される規準時間を定義するタイミング信号をチャネルのそれぞれに提供する。これは、「周期の始点」信号又は「周期クロック」と称されることがある。
それぞれのチャネル１１４は、複数のタイミング発生器１１６を含む。それぞれのタイミング発生器は、時には「エッジ」と称され周期信号の始点からプログラムされた時間だけ後にあるタイミング信号を生じる。複数のタイミング発生器１１６が存在しているが、これは、それぞれが、専用として１つの特定の機能を実行するからである。例えば、あるタイミング発生器は、駆動電圧をオンさせる専用であり、また、あるタイミング発生器は、駆動電圧をオフさせる専用である。別のタイミング発生器は、比較動作を開始させる専用であり、また、あるタイミング発生器は、比較動作の停止専用である。
すべてのタイミング発生器１１６からのエッジは、フォーマッタ１１８に至る。フォーマッタ１１８は、実際にデータを提供する又は測定するドライバ及びコンパレータを含む。それぞれが動作する時間は、エッジ信号によって制御される。このようにして、信号は、テスト対象のデバイス（ＤＵＴ）１１２に与えられ、また、そこで測定される。
それほど複雑ではない部品しかテストできないテスタでも、５０より多くの、おそらくは１００より多くのチャネル１１４が存在する。このように、チャネル回路は、テスタ１００のコストの大部分を占めている。このコストが特に高くなり得るのは、ＣＭＯＳなどの低コストの技術が多くのテスタにおけるチャネル回路に適していないからである。むしろ、高いクロック速度での動作が可能であって非常に安定しているために、ＥＣＬ素子が広く用いられている。
広く普及している０．８ミクロン・プロセスを用いて作られるＣＭＯＳ回路は、最大の動作周波数が、約１００ＭＨｚである。最新技術による０．３ミクロン・プロセスによって作られる素子であれば、２００ＭＨｚ程度まで動作周波数を拡大させることができる。これは、クロックが僅かに１０ｎｓｅｃの分解能を有する、そして、最良の場合には、５ｎｓｅｃの分解能を有している可能性があることを意味している。ＣＭＯＳデジタル信号は、クロックに対して同期しているときには、僅かに、５から１０ｎｓｅｃの分解能を有する。多くの場合、２５０ｐｓｅｃよりも短い分解能がテスタには要求される。更に、プログラムされた値は、非常に正確でなければならない。
より精細な分解能を提供するために、遅延は、２つの部分に分割される。すなわち、整数個のクロック周期と、クロック信号のいくらかの分数部分と、である。カウンタは、要求される整数個のクロック周期の後に出力パルスを生じる。遅延の分数部分は、プログラマブルな遅延線か、タイミング「補間器」又は「バーニア」（vernier）と称されるアナログ回路かのどちらかにおいてこのパルスを遅延させることによって、提供される。このタイプのタイミング発生回路は、米国特許第4,231,104号（St. Clair）及び第5,274,796号（Conner）に記載されている。
このような構成にＣＭＯＳを用いることに伴う障害は、ＣＭＯＳ回路の遅延がそのデバイスの温度の関数として変動することである。ＣＭＯＳ回路の遅延は、約０．３％／℃から０．４％／℃程度変化する。温度の関数としてのこのような大きな変化は、チャネルにプログラムされた同じ遅延が、別の温度で動作されるときには異なる結果を生じることを意味する。更に、ＣＭＯＳ素子は、部品間の変動が大きい。同一に処理された部品を介しての遅延が、２０ないし３０％も変動することがあり得る。
１つの単純なアプローチは、動作温度が著しく変化する度に、テスタを較正することである。多くの較正技術が知られている。米国特許第4,724,378号（Murry他）には、テスタのメモリに記憶されているタイミング補正値を計算するのに用いられる外部の較正デバイスが記載されている。較正値を導くためにテスタに回路を付加することを含む、較正値を導くための他の技術も知られている。しかし、テスタを構成するプロセスには、非常に時間がかかることがあり得る。
ＣＭＯＳチップを均一な温度に維持するという機械的な対策も可能である。しかし、冷却素子を要求することは費用が必要であり、これでは、低コストのテスタを得るためにＣＭＯＳを用いるという目的に反する。また、部品間の変動によって生じる遅延の差を除去することにはならない。
遅延の差異を補償する別の方法は、ＣＭＯＳチップを加熱することである。米国特許第4,980,586号（Sullivan）では、所望の動作温度までＣＭＯＳチップを加熱するための回路を用いている。更に、この米国特許には、チップ上のリング発振器を回路の一部として用いて実際の遅延を測定するというフィードバック機構が記載されている。リング発振器における信号の周波数は、遅延に反比例する。制御信号がリング発振器における発振周波数から導かれ、加熱回路によって発生する熱の量を調整するのに用いられる。
このようなアプローチは部品間の変動だけでなく温度を補償することもできるが、ＣＭＯＳチップが上昇した温度で動作することが要求される。この条件での動作は、信頼性の問題を生じる可能性があり、また、より多くの電力消費が必要となる。
同様の解決策が、米国特許第4,902,986号及び第5,345,186号に記載されている。これらの米国特許では、それぞれにおいて、リング発振器が位相ロック・ループに組み入れられ、リング発振器によって生じた周波数が安定的な基準周波数と比較されて、フィードバック信号を生じるようになっている。フィードバック信号は、リング発振器における複数の素子の供給電圧を制御する。供給電圧が変動すると、ループを介する遅延が変化する。このようにして、リング発振器における信号の周波数は、安定的な基準周波数に同期する。結果として、遅延チェーンを介しての遅延が一定となる。同じ供給電圧を用いて、チップ上の時間決定的な経路における他のデバイスに電力が提供される。
この技術は、ＣＭＯＳ部品を上昇した温度で動作させるという短所を克服している。しかし、ＣＭＯＳチップの異なる部分を異なる供給電圧に接続させることが必要となるという新たな短所を有している。このような構成は、設計及び製造が困難であり得る。
非常に類似した補償技術が、米国特許第4,641,048号（Pollock）に記載されている。しかし、この米国特許は、特にＣＭＯＳ回路に限定されたものではない。従って、この米国特許は、供給電圧ではなく、制御信号が素子のバイアス入力に印加される様子を一般的に示している。
また、ＣＭＯＳ素子における遅延変動を補償する必要性は、以前から知られてきている。種々の技術の例が、米国特許第3,970,875号（Leehan）、第3,996,481号（Chu他）、第4,008,406号（Kawagoe）、第4,346,343号（Berndlmaier他）、第4,473,762号（Iwahahi他）、第4,494,021号（Bell他）及び第4,514,647号（Shoji）などに記載されている。
これらの技術のそれぞれが、精密で正確なＣＭＯＳテスタを作成する際に役立ち得る。しかし、これらの技術によっても、エッジをプログラムする際に所望の精度を下回る精度を有することが多いテスタが製造されることがあることを、我々は認識している。特に、これらの技術は、主に、周囲温度の変動を調整するのに有用であることを認識している。これらによる補償では十分ではないのは、ＣＭＯＳ素子の動作温度は動作周波数の関数として変化するという事実のためである。
我々は、動作周波数の変化に起因する温度変化が、ＣＭＯＳテスタのチャネル回路において特に問題となることを、見いだした。特に、テスタは、通常は、「バースト・モード」で動作するのが通常である。テストされるべきデバイスがテスタに最初に接続されるときには、チャネル回路は、信号を発生していない。それは、本質的に、ゼロの周波数で動作しており、ほとんど熱を発生しない。デバイスがテストされるときには、チャネル回路における信号は、典型的には、５０ＭＨｚから１００ＭＨｚの高周波で、発生されている。しかし、１つのデバイスのテストは、ほんの数秒しか継続しない。そのテスト又は「バースト」の間、テスタにおけるＣＭＯＳ部品は、加熱され、結果的には、タイミングの精度が変化する。バーストの後では、ＣＭＯＳ部品は、冷却を始める。バーストの全体の間で、テスタにおける部品の温度は、変化している。
バーストの間にＣＭＯＳ部品の温度が変化する別の理由は、テスト対象のデバイスを完全にテストするために、バーストの異なる部分において異なる周波数の信号が要求されるからである。これらのタイプのテストを可能にするために、市販のテスタでは、タイミング値が「オン・ザ・フライ」（“on the fly”）で変化させることが可能になっている。これは、バーストの間にタイミング値を変化させることを意味する。従って、同じタイミング発生器を、バーストの前半の間では５０ｎｓｅｃの周期を有するエッジを発生させ、バーストの別の部分では１００ｎｓｅｃの周期を有するエッジを発生するように変化させるようにプログラムすることが可能である。これらのエッジ・レートは、異なる周波数の信号を表しており、フォーマッタ１１８などの回路は、ＣＭＯＳで構成されている場合には、バーストの間に変動する周波数で動作し、従って、変動する遅延を有することになる。
伝統的な較正技術は、バーストの間に動作させることはできないので、バーストの間の温度変化の問題には対処できない。異なる遅延に応答して制御される抵抗性ヒータを用いることも、この問題への対処に関しては、十分に有効ではない。ＣＭＯＳ部品によって発生される熱が変化するときと抵抗性ヒータを変化させる効果が観察されるときとの間には、タイムラグが存在する。このタイムラグは、部分的には、ＣＭＯＳ回路において発生する熱がリング発振器の温度を変化させるのに要する時間によって生じる。このタイムラグは、また、部分的には、抵抗性ヒータによって発生した熱の変化がチャネル回路におけるＣＭＯＳ素子の温度に影響するのに要する時間によって生じる。
リング発振器における要素の供給電圧を制御することによって補償が提供されるときにも、タイムラグが存在する。遅延の変化はヒータを用いるときよりも速いが、ＣＭＯＳチャネル回路によって発生した熱がリング発振器における遅延に影響するのにはいくらかの時間が依然として必要である。
我々は、ＣＭＯＳテスタのタイミングの精度（正確性）を、チャネル回路における遅延を非常に高速の時定数を用いて動作周波数の変化に応答して制御することができれば、改善することができることを、見いだした。
発明の概要
上述した背景を念頭に置くと、本発明の目的は、タイミングの精度が改善されたＣＭＯＳテスタを提供することである。
チャネル回路における動作周波数に比例する温度補償を有するＣＭＯＳテスタを提供することもまた目的である。
チャネル回路における信号の周波数に応答するチャネル回路のそれぞれのタイミング回路における温度補償を有するＣＭＯＳテスタを提供することもまた目的である。
更に、テスタのチャネル回路において周波数が変動する信号の影響を受けるＣＭＯＳ部品の数を減少することもまた目的である。
上述の及びそれ以外の目的は、それぞれがいくつかのタイミング経路を有する複数のチャネル回路を有するＣＭＯＳテスタにおいて達成される。周波数制御された遅延補償装置が、タイミング経路の一部に含まれる。タイミング信号の周波数が変化し従ってタイミング経路の温度が変化すると、遅延補償装置が、経路における遅延を調整し、従って、温度に起因する遅延の変化を補償する。
好適実施例では、周波数制御された遅延補償装置は、オン及びオフを反復する抵抗性ヒータ（resistive heaters）である。オン・サイクルの時間、すなわち、発生する熱の量は、タイミング経路における信号の周波数と反比例して変動する。
ある実施例によれば、抵抗性ヒータは、出力パッドなどのチップ上の高電力消費領域に近接して選択的に配置される。
別の実施例では、抵抗性ヒータは、追加的に、又は、別の態様で選択的に、プログラマブルな周波数を有する信号を処理する回路に近接して配置される。
本発明の別の特徴によると、それぞれのタイミング経路において、プログラマブルな遅延が、プログラムされた遅延を整数個及び分数倍のクロック・パルスに分割することによって、発生される。それぞれのクロック・パルスは、分数的な量だけ遅延さえる。整数個のクロック・パルスは、別個にカウントされる。整数個のクロック・パルスをカウントすることにより、分数的な量だけ遅延された次のクロック・パルスを通過させる回路がイネーブルされる。このようにして、分数的な遅延を提供する回路における信号の周波数は、プログラムされたバーストの間、すべてのチャネルにおいて一様である。
【図面の簡単な説明】
本発明は、後に行う更に詳細な説明と次の添付の図面とを参照することによって、よりよく理解され得る。
図１は、従来技術によるテスタのブロック図である。
図２Ａは、図１のテスタの１つのタイミング発生器の回路図である。
図２Ｂは、図２Ａの１つの遅延段の回路図である。
図２Ｃは、図２Ａの位相検出器の回路図である。
図２Ｄは、図２Ａの１つの精細遅延段（fine delay stage）の回路図である。
図３は、チップ上のボンディング・パッドとの関係における、本発明の回路の配置を示す回路図である。
図４は、本発明によるエッジ・レート補償装置の好適実施例の回路図である。
好適実施例の説明
本発明によるテスタは、図１に示されたアーキテクチャの全体を用いることができる。しかし、本発明は、示されている特定のアーキテクチャに限定される必要はない。
テスト・システム・コントローラ１１０は、従来技術の場合のように、市販の素子を用いて、好ましくは低コストのＣＭＯＳ素子を用いて製造される。好適実施例では、テスト・システム・コントローラ１１０は、商業的に利用可能な汎用コンピュータの周囲に構築される。
従来技術において広く利用可能なテスタとは対照的に、それぞれのタイミング発生器１１６は、低コストＣＭＯＳ素子を用いて製造される。タイミングの正確さは、以下で詳細に述べる設計を用いて、達成される。
フォーマッタ１１８は、従来技術におけるフォーマッタの機能を実行する。フォーマッタ１１８は、プログラマブルな周期（すなわち、周波数）を有する信号を処理するために、その動作温度は、バーストの間、変動する可能性がある。しかし、このフォーマッタ１１８は、好ましくは、図４との関係で後に説明するエッジ・レート補償回路と共にＣＭＯＳ回路を用いて実現される。ただし、従来技術の場合と同様に、フォーマッタ１１８に対しては、バイポーラ、ＢｉＣＭＯＳ又はそれ以外の構成を、用いることもできる。
次に、図２Ａを参照すると、１つのタイミング発生器１１６のブロック図が示されている。ＣＭＯＳチップは、商業的に利用可能なプロセスを用いて製造される。好適実施例においては、複数のタイミング発生器が、０．８ミクロンのプロセスによって単一のチップの上に作成されるが、本発明に対しては、この特定のプロセスは、重要ではない。チップは、一般的に受け入れられている設計手順に従って作られる「セミ・カスタム」チップとして、設計される。
セミカスタム・チップは、コンピュータ支援（computer aided）ツールと「セル・ライブラリ」とを用いて設計される。セル・ライブラリは、それぞれが機能要素を表す多数のセルを含む。セル・ライブラリは、フリップフロップやカウンタなどの標準的なセルを含む。コンピュータ支援設計ツールによれば、トランジスタの所望の相互接続や、ある場合には、チップ上の構造のレイアウトまで特定することによって、カスタム・セルの作成が可能になる。設計者は、セルの所望の相互接続を特定し、コンピュータ支援ツールが、その情報を、チップが作られる工場（foundry）における処理装置によって用いられるフォーマットに、コンパイルする。それぞれの設計ツール及び方法は、この技術分野において周知であり、広く利用可能である。
タイミング発生器１１６は、タイミング・データ入力信号によって特定される時間に、パルス又はタイミング信号を発生する。タイミング・データは、時間遅延を特定するデジタル値である。タイミング発生器１１６は、いったんイネーブルされると、特定の遅延だけ遅延された出力信号を生じる。
図２Ａはイネーブル信号を明白には示していないことに注意すべきである。しかし、イネーブル信号を用いることは、この技術分野では、周知である。例えば、テスト・システム・コントローラ１１０は、テスタ１００の動作の新たなサイクルが開始していることを示すパルス信号を発生する。この信号は、タイミング発生器１１６によって提供される遅延間隔を開始させるイネーブル信号として、機能する。
タイミング・データ入力信号は、既知の態様で、テスト・システム・コントローラ１１０によって発生される。あるテスタでは、それぞれのタイミング発生器によって提供される遅延の値は、メモリ１２０に記憶されているテスト・パターンの一部によって特定される。そのようなテスタでは、タイミング発生器１１６のそれぞれに対するタイミング情報は、テスタ動作の１つのサイクルから次のサイクルへ、急激な変化（change “on the fly”）と称される態様で、変化する。別のテスタでは、それぞれのタイミング発生器によって提供された遅延は、テスト・パターンに先だって、レジスタに記憶される。テスタ動作の任意の１つのサイクルにおいて用いられるよりも、チャネル当たりでより多くのタイミング信号が存在し、それぞれが、異なる時間にタイミング信号を発生するようにプログラムされている。これらの信号は、「タイミング・パレット」として知られているものを構成する。信号は、テスタ動作の異なるサイクルの間のチャネルでの使用のためにタイミング信号の異なる１つを選択することによって、テスタ動作の異なるサイクルにおける異なる時間に生じる。
更に、注意すべきことであるが、多くのチャネルを有するテスタでは、チャネルのそれぞれを通過する信号の伝搬時間に差がある。それぞれのチャネルにおけるタイミング信号を同期させるために、「デスキュイング」（deskewing）と称されるプロセスが用いられることが多い。チャネルは、それぞれのチャネルに同じ伝搬遅延を提供する量だけそれぞれのチャネルにおける信号を遅延させることによって、デスキュされる。時には、デスキュイングは、タイミング・データの値を増加させることによって行われる。
本発明は、タイミング・データ値がどのように発生されるかとは関係なく、これらのタイプのシステムの任意のものと共に用いることができる。図２Ａに示されている実施例では、タイミング・データは、１６ビットを有するデジタル値である。これらのビットは、クロック・サイクルの数によって、要求される遅延を表す。タイミング・データは、整数部分と分数部分とを有する。図２Ａに示された実施例では、８から１５ビットが整数部分を表す。０から７ビットが分数部分を表す。
タイミング・エッジは、分数的に遅延されたクロック信号を最初に生じることによって、発生される。この分数的に遅延されたクロックは、基準クロックをタイミング・データの０から７ビットの値に比例する量だけ遅延させることによって導かれる。タイミング・データの整数部分は、ゲート信号（gating signal）を生じるのに用いられる。ゲート信号は、整数個のクロック周期が通過すると、発生される。次の分数的に遅延されたクロック信号は、ゲートされ（gated through）たタイミング・エッジ出力である。
この構成の重要な効果は、整数の遅延と分数の遅延とを提供する回路が、プログラムされた遅延間隔とは関係なく、常に、基準クロック周波数でクロックされることである。特に、１クロック周期よりも長い遅延間隔がテスタにプログラムされていることがしばしばあり、それによって、エッジが、基準クロック周波数よりも低いレートで発生される。図２Ａのタイミング発生器が基準クロックよりも低い周波数でタイミング信号を発生する場合でも、タイミング発生器１１６の回路は、基準クロック周波数で動作する。ＣＭＯＳ回路では、タイミングの正確さのために、単一のクロック周波数での動作が重要であるが、その理由は、電力消費は、従って、発生する熱は、周波数と共に増加するからである。発生する熱が増加するにつれて、遅延は、変化する。
クロック周波数の変化に起因する遅延の変化は、温度補償が用いられるときであっても、特に補償が困難である。温度補償回路は、必然的に、有限の応答時間を有する。従って、動作周波数が変化するときのように、発生する熱が急速に変化する場合には、その間にタイミングからの補償ラグ（遅れ）が変化するいくらかの間隔が存在し、従って、タイミングの不正確さが生じる。これらの不正確さは、本発明を用い、タイミング発生器を常に基準クロック周波数で動作させることによって、回避できる。
図２Ａは、タイミング発生器１１６を実現するのに用いられる主なセルを示している。タイミング発生器１１６は、個別の遅延段２１２（１）・・・２１２（１６）から構成される遅延線２１０を含むが、これらの遅延段については、図２Ｂとの関係で更に詳細に説明される。タイミング発生１１６は、また、位相検出器２１４を含み、これについては、後で、図２Ｃとの関係でより詳細に説明する。位相検出器２１４の出力は、チャージ・ポンプ（charge pump）２１６に与えられる。チャージ・ポンプ２１６の出力は、遅延段２１２（１）・・・２１２（１６）のそれぞれにフィードバックされ、それぞれの段の遅延を調整する。
遅延線２１０、位相検出器２１４及びチャージ・ポンプのこれらの構成要素は、「遅延ロック・ループ」と称されることもあるものを構成する。遅延ロック・ループへの入力は、テスト・システム・コントローラ１１０（図１）によって提供される基準クロックである。同じ基準クロックが、好ましくは、それぞれのタイミング発生器に提供され、それによって、様々なタイミング発生器を同期させることができる。クロックは、水晶発振器などを用いて、任意の既知の態様で発生される。好適実施例では、クロックは、２０から２００ＭＨＺの間の周波数を有し、より好ましくは、約１００ＭＨＺである。しかし、本発明は、基準クロックの周波数とは関係なく、有用である。
好適実施例では、基準クロックは、固定された周波数で動作する。しかし、本発明の回路は、基準クロックの周波数が可変である場合でも、動作する。遅延ロック・ループは、フィードバック制御されているので、クロック動作周波数に調整される。しかし、クロック動作周波数が変化したあとでは、遅延ロック・ループが新たなクロック周波数に調整されるには、若干の遅延が存在する。
図２Ａは、基準クロックは差動クロックであることを示している。それは、論理的に相補的であって１つの差動信号を形成するＣｌｏｃｋＰとＣｌｏｃｋＮとから構成される。遅延線２１０は、従って、差動遅延線である。差動信号と差動回路とを用いることによって、立ち上り及び立ち下がり信号の遅延を等しくする。
遅延線２１０は、基準クロック信号の１周期に等しい量だけクロック信号を遅延させるように設計されている。ここでは、遅延線２１０は、１６個の遅延段２１２を含む。従って、それぞれの遅延段は、クロックの周期の１６分の１の遅延を提供する。この技術分野で知られているように、ＣＭＯＳ回路の遅延は、信号経路のキャパシタンスを増加させることによって、増加させることができる。遅延の調整のためには、他の多くの設計技術が知られている。遅延線における遅延段の数は、本発明にとって重要ではないが、２の累乗であることが好ましい。
しかし、ＣＭＯＳチップの処理における可変性と温度のゆらぎによって生じる遅延の変動とのために、要求される遅延を常に提供する遅延段を作ることはできない。むしろ、それぞれの遅延段２１２は、制御入力ＶＣを含む。ＶＣ入力上の電圧を上昇させると、その遅延段を通過する際の遅延が増加する。図２Ａに示されているように、遅延段２１２（１）・・・２１２（１６）のＶＣ入力は、相互に接続されてフィードバック・ループの一部になっている。このように、遅延線２１０がクロック信号の１周期の遅延を提供することを保証するために、フィードバックが用いられる。
フィードバック信号ＶＣは、位相検出器２１４とチャージ・ポンプ２１６とによって生じる。位相検出器２１４は、基準クロック信号と、完全な１周期だけ遅延されているはずである遅延段２１２（１６）の出力とを、入力として受け取る。位相検出器２１４は、これらの２つの信号の位相を比較し、クロックが遅延されたクロックよりも進んでいるときには、そのｐｕｍｐｄｎ出力にパルスを生じる。この条件は、遅延線２１０が１クロック・サイクルよりも長い遅延を与えていることを示す。位相検出器２１４は、遅延されたクロックがクロックよりも進んでいるときには、そのｐｕｍｐｕｐｂ出力において負方向のパルスを生じる。この条件は、遅延線２１０が１クロック周期よりも短い遅延を提供していることを示す。
ｐｕｍｐｕｐｂ及びｐｕｍｐｄｎ信号は、チャージ・ポンプ２１６に提供される。チャージ・ポンプ２１６は、ｐｕｍｐｕｐｂ線の上にパルスが存在するときに、電流を供給する。ｐｕｍｐｄｎ線の上にパルスが存在するときには、電流をシンクする。チャージ・ポンプ２１６の出力は、ローパスフィルタ（図示せず）に接続されているが、これは、単に、コンデンサを用いて実現することができる。このコンデンサは、好ましくは、タイミング発生器１１６が実現されているチップの外部にあるが、それは、コンデンサがチップ上で必要とする空間のためである。
チャージ・ポンプ２１６は、単に、この技術分野で知られているように、スイッチとして機能するトランジスタを用いて実現される。チャージ・ポンプ２１６の出力は、遅延された信号の遅延が１クロック周期よりも短いときには増加し、遅延された信号の遅延が１クロック周期よりも長いときには減少する信号である。チャージ・ポンプ２１６の出力は、遅延線２１０が正確に１クロック周期の遅延を与えるときに、定常状態（steady state condition）となる。
上述のように、チャージ・ポンプ２１６の出力は、フィードバック信号として用いられ、遅延線２１０の遅延を調整する。この出力は、加算増幅器２１８を介してフィードバックされる。加算増幅器２１８はオプショナルであり、オフセットをフィードバック信号に加えるのに用いられる。結果として生じるフィードバック信号は、それぞれの遅延段２１２への入力として提供される。
分数的に遅延したクロック信号は、遅延線２１０と、マルチプレクサ２２０と、精細遅延段２２２（１）〜２２２（４）から構成される精細遅延線とによって、生じる。遅延線２１０のそれぞれの遅延段２１２は、出力ＤＯを含む。それぞれの遅延段はクロック信号を１クロック周期の１６分の１だけ遅延させるので、遅延段２１２（１）、２１２（２）、２１２（３）などの連続的な出力は、１クロック周期の１６分の１、１クロック周期の１６分の２、１クロック周期の１６分の３などによるクロック信号を表す。それぞれの遅延段のＤＯ出力は、入力としてマルチプレクサ２２０に与えられ、マルチプレクサ２２０は、遅延したクロック信号の中の１つを選択する。
マルチプレクサ２２０への制御入力は、タイミング・データのビット４から７である。これらは、遅延の分数部分の上位ビットである。これらのビットは、１クロック周期の１６分の１の単位の粗い（coarse）遅延を特定する。このように、これらを用いてマルチプレクサ２２０を制御することによって、これらのビットは、正確な粗い遅延を有する遅延したクロック信号を選択する。注意すべきは、マルチプレクサ２２０へのデータ入力は、１６分の１から開始し連続的に増加して１６分の１６すなわち完全な１クロック周期に至るまで、１クロック周期の１６分の１ずつ増加しながら連続的に遅延が与えられることである。他方で、タイミング・データの分数部分の上位側の４ビットは、０から開始し連続的に増加して１クロック周期の１６分の１５に至る。このように、マルチプレクサ２２０は、タイミング・データによって特定されるものを超えて、１クロック周期の１６分の１の追加的な遅延を導入する。しかし、上述したように、このテスタは、それぞれのチャネルにおいて、プログラムされた相対的な遅延を有するタイミング信号ように、設計されている。それぞれのタイミング発生器に同じ固定された遅延を加えることは、この相対的な遅延に影響せず、何らの不正確さも与えることはない。
選択された粗い遅延を有するクロック信号は、マルチプレクサ２２０から、精細（fine）遅延段２２２（１）・・・２２２（４）から構成される精細遅延線の入力に与えられる。それぞれの遅延段２２２（１）から２２２（２）は、そのビット制御入力がアサート（assert）されるときには、設定された量を増加する遅延を与える。それぞれの段における遅延の増加量は異なり、いわゆる、２進重み付きシーケンス（binary weighted sequence）となっている。
段２２２（４）は、その遅延を、１クロック周期の３２分の１（１／３２）だけ増加させる。段２２２（３）は、その遅延を、１クロック周期の６４分の１だけ増加させる。段２２２（２）は、その遅延を、１クロック周期の１２８分の１だけ増加させ、段２２２（１）は、その遅延を、１クロック周期の２５６分の１だけ増加させる。これらの段へのビット入力は、タイミング・データのビット３、２、１及び０にルーティングされる。精細遅延段２２２（１）・・・２２２（４）を介しての遅延の累積的な効果は、タイミング・データの分数的な部分の下位ビットによって特定される量だけの遅延の増加である。いくらかの固定されたオフセットが導入される。しかし、既に述べたように、固定された遅延は、精度に影響を与えることはない。それは、チャネルの間の相対的な遅延だけが重要であるからである。
精細遅延段２２２（４）の出力は、差動受信機２２４に与えられる。この技術分野で知られているように、差動信号は、差動受信機によって、シングルエンド信号（single ended signal）に変換される。差動信号は、粗い及び精細な遅延線の両方において用いられる。これらの回路は、交差結合されたフィードバックを用いて、シングルエンドＣＭＯＳ信号と共に生じる可能性のあるタイミングの不正確さを解消する。同じＣＭＯＳ要素の立ち上がり及び立ち下がり時間は、一般には異なる。差動遅延線を有することによって、それぞれの信号の変化（transition）は、常に、立ち上がり及び立ち下がりエッジの両方を生じさせる。従って、立ち上がりエッジと立ち下がりエッジとを与えることに全く遅延の相違はなく、より高い精度が達成される。差動素子を本発明のために用いる必要はないが、より高い精度を得ることができる。
交差結合されたフィードバックが、図２Ｂに示されている。それぞれのインバータは、伝統的に、供給電圧とグランドとの間にあるｐチャネル・トランジスタと直列のｎチャネル・トランジスタによって、構成される。２つのトランジスタのゲートは相互に接続され、インバータへの入力となる。出力は、２つのトランジスタの間の接続点から取られる。定常状態では、トランジスタの一方がオンになり、他方がオフになる。入力がハイであるときには、ｎチャネル・トランジスタはオンになり、出力を供給電圧に接続する。
入力がロー（LO）からハイ（HI）に又はハイからローに変化すると、出力において、相補的な変化が生じる。ｎチャネルのコンダクタンスは、ｐチャネル・トランジスタにおけるよりも大きいので、出力での変化は対称的ではない。出力は、ローからハイよりも、ハイからローへの方が速く変化する。
交差結合されたフィードバックは、ローからハイへの変化をスピードアップすることによって、これらの変化を等しくする。交差結合されたフィードバックを提供するために、追加的なｐチャネル・トランジスタが、第１のｐチャネル・トランジスタと並列に接続される。第２のｐチャネル・トランジスタの制御入力は、相補的なインバータの出力に接続される。例えば、インバータ２４０Ａの第２のｐチャネル・トランジスタは、インバータ２４０Ｂの出力に接続される。インバータ２４０Ａとインバータ２４０Ｂとは相補的であるから、インバータ２４０Ａの出力がローからハイに変化するときには常に、インバータ２４０Ｂの出力はハイからローに変化する。
上述したように、インバータ２４０Ｂのハイからローへの変化は、インバータ２４０Ａのローからハイへの変化よりも急速である傾向にある。しかし、インバータ２４０Ｂの出力がローに変化し始めると、インバータ２４０Ａにおける追加的なｐチャネル・トランジスタが、オンになる。従って、インバータ２４０Ａにおける並列の２つのｐチャネル・トランジスタを流れる合成された電流が増加して、インバータ２４０Ａのローからハイへの変化をスピードアップする。インバータ２４０Ｂにおける追加的なｐチャネル・トランジスタも同様にしてインバータ２４０Ｂのローからハイへの変化をスピードアップする。このようにして、変化の時間は、はるかに等しくなる。
差動受信機２２４の出力は、分数的に遅延したクロックを表すシングルエンド信号である。分数的に遅延したクロックは、フリップフロップ２３０をクロックするのに用いられる。フリップフロップ２３０は、Ｄ型のフリップフロップである。そのＤ入力とクロック入力とがハイであるときには、その出力は、ハイになる。このように、フリップフロップ２３０の出力は、分数的に遅延したクロックに同期する。フリップフロップ２３０によって選択された分数的に遅延したクロックの特定のパルスが、カウンタ２３６の出力とプログラムされた遅延２３８とによって決定される。これらの要素によって、フリップフロップ２３０によって選択された分数的に遅延したクロックのパルスが、要求される整数個のクロック周期が通過した後で生じる分数的に遅延したパルスであることが保証される。このように、選択されたパルスは、要求される整数個のクロック・パルスと１クロック周期の要求される分数部分とだけ、遅延される。
分数的に遅延したパルスの正確なパルスの選択を保証するために、カウンタ２２６には、タイミング・データのビット８から１５がロードされる。これらのビットは、要求される遅延の整数個のクロック周期を表す。好適実施例では、カウンタ２２６は、線形フィードバック・シフト・レジスタ型のカウンタとして、実現されている。このカウンタは、遅延のほとんどない高いクロック速度で動作することができる。しかし、適切な速度で動作する任意のカウンタを用いることができる。
カウンタ２２６は、基準クロック入力によって、クロックされる。ここでは、基準クロックは、シングルエンド信号として示されている。差動信号を受け取るカウンタを用いることができる。また、差動基準クロックを、上述した差動受信機を用いて、シングルエンド信号に変換することもできる。要求される数のクロック周期が通過したときには、出力パルスが生じる。
カウンタ２２６からの出力パルスは、プログラム遅延２２８に与えられる。プログラム遅延２２８は適切なセットアップを保証し、分数的に遅延したクロックのすべての遅延値に対して、フリップフロップ２３０のＤ入力にホールド時間が与えられる。
プログラムされた遅延２２８は、調節遅延である。図解されている実施例では、これは、遅延線２１０のような遅延線である。これは、タイミング値を発生するのに用いられるのではない。クロック入力がプログラムされた制御の下で変化する可能性がある場合でも、カウンタ２２６の出力が、フリップフロップ２３０へのクロック入力の前後の適切なセットアップ及びホールド時間を伴って、フリップフロップ２３０に与えられることを保証するためだけに用いられるのである。従って、プログラムされた遅延２２８は、分数的に遅延したクロックを発生するのに用いられる遅延ほどには、正確である必要はない。例えば、プログラム可能な遅延２２８は、温度及びプロセス変動を補正するＶＣ入力である必要はない（ただし、そのような入力が好適実施例では用いられ、それによって、プログラムされた遅延２２８は、遅延線２１０と同じになり得る）。また、プログラム可能な遅延２２８は、単純に、２進重み付けされた遅延線として実現することもできる。
タイミング・データが急激に変化する（change on the fly）ことのないテスタでは、プログラム可能な遅延２２８は、必要ではないこともある。しかし、タイミング・データが急激に変化する（途中で変化する）ときには、必要である。例えば、タイミング・データが変化するクロック周期の間には、２つの遅延したエッジがマルチプレクサ２２０によって選択され、一方が古いタイミング・データに対応し、他方が新しい値に対応するようにすることが可能である。カウンタ２２６は、これらのエッジによって直接にクロックされる場合には、不正確なカウントを生じる。また、図２Ａに示された構成でも、カウンタ２２６が２つのパルスがマルチプレクサ２２０によって生じるのと同じクロック周期でその出力を生じる場合であっても、不正確なエッジ信号が生じる可能性がある。
フリップフロップ２３０は、このように、要求された時間に、パルスを生じる。それは、特定の整数個のクロック周期と特定の分数分のクロック周期とだけ遅延される。図２Ａには、リセット回路が明確に示されていないが、好適実施例では、フリップフロップ２３０は、クロック周期の２分の１の後で、リセットされる。このように、フリップフロップ２３０の出力は、タイミング・パルスである。このパルスは、フォーマッタ１１８（図１）に送られ、従来技術におけるように、テスト信号の発生において用いられる。
次に、図２Ｂを参照すると、代表的な遅延段２１２が、より詳細に示されている。それぞれの遅延段２１２は、ｉｎ及びｉｎｂの入力線を有する。これらの線は、１つの差動入力を表す。それぞれの線は、それぞれが、インバータ２４０Ａ又は２４０Ｂによってバッファされている。インバータ２４０Ａ及び２４０Ｂを構成するのに用いられている素子は、温度のゆらぎやプロセス条件の変動を考慮して、その段で要求される遅延よりも若干小さな公称値を有する遅延を提供するような大きさになっている。そして、実際の遅延は、ＶＣ入力を用いて調整されるが、この入力は、遅延の実際の大きさを、好ましくは、少なくとも±３０％は変化させることができる。
インバータ２４０Ａ及び２４０Ｂは、示されているように、それぞれが、３つのトランジスタによって実現されている。トランジスタは、交差結合されたフィードバックを用いて構成され、エッジの対称性を改善している。
インバータ２４０Ａの出力は、ｏｕｔｂ、すなわち、反転された出力となる。出力線は、それに接続されたトランジスタ２４２Ａとコンデンサ２４４Ａとを有する。コンデンサ２４４Ａは、ソースとドレインとの両方がグランドに接続されコンデンサの第２の電極としてゲート入力を有するトランジスタを用いて形成することができる。ここで用いられている例示的な値としては、５７６ＦＦの値を有するコンデンサが用いられた。
トランジスタ２４２Ａのゲートすなわち制御入力は、ＶＣ制御入力に接続されている。これらの素子は、グランドに至る抵抗・コンデンサ（ＲＣ）経路を形成し、これは、遅延段２１２を通る伝搬時間を遅らせる。トランジスタ２４２Ａを通る抵抗値は、信号ＶＣの値に比例して変動する。
インバータ２４０Ｂの出力も、同様に、トランジスタ２４２Ｂとコンデンサ２４４Ｂとに接続されている。これらの素子は、ｉｎｂ信号に対して、同様な遅延を提供する。
図２Ｂは、また、マルチプレクサ２２０の構成を示している。マルチプレクサ２２０は、分散型のマルチプレクサである。それぞれの遅延段２１２は、１対の共通のｂｕｓ及びｂｕｓｂ線にそれぞれ接続されたトライステート（tri-state）バッファ２４６Ａ及び２４６Ｂを含む。イネーブルされると、トライステート・バッファ２６４Ａ及び２６４Ｂは、段２１２からの遅延された信号を、ｂｕｓ及びｂｕｓｂ線に送る。
トライステート・バッファ２４６Ａ及び２４６Ｂへのイネーブル入力は相互に接続され、デコーダ２４８の出力線の一方から得られる。トライステート・バッファ２４６Ａ及び２４７Ｂは、それぞれが、遅延段２１２（１）が００００出力に接続され、遅延段２１２（２）が０００１出力に接続され、遅延段２１２（３）が００１０出力に接続される等のように、デコーダ２４８の別個の線に接続される。
デコーダ２４８の入力は、タイミング・データのビット４〜７である。このようにして、ｂｕｓ及びｂｕｓｂ線の上の値は、タイミング・データのビット４〜７によって特定される大きさだけ遅延されるクロック入力信号を表す。ｂｕｓ及びｂｕｓｂ線は、マルチプレクサ２２０（図２Ａ）の出力である。
図２Ｃは、位相検出器２１４を実現するのに用いられる回路の概略を示している。位相検出器２１４は、差動受信機２５０Ａ及び２５０Ｂを含み、これらが、基準クロックと遅延されたクロックとをそれぞれ、位相検出器の入力であるシングルエンド信号に変換する。位相検出器２１４の出力は、信号ｐｕｍｐｕｐｂ及びｐｕｍｐｄｎである。ｐｕｍｐｕｐｂがローになると、チャージ・ポンプ２１６（図２Ｂ）の出力は増加する。ｐｕｍｐｄｎがハイになると、チャージ・ポンプ２１６の出力は減少する。
位相検出器２１４は、基準クロックによってクロックされているフリップフロップ２５２を含む。フリップフロップ２５２のＤ入力は、遅延線２１０の最後の遅延段の出力に接続されている。遅延線２１０が１クロック周期よりも長い遅延を提供するときには、基準クロック信号は、遅延されたクロック信号よりも前にハイになる。従って、フリップフロップ２５２がクロックされると、Ｄ入力は、ローになり、Ｑ＊出力は、ハイになる。ＡＮＤゲート２５６への他の入力がハイである限りは、ｐｕｍｐｄｎはハイである。
ＡＮＤゲート２５６への他の２つの入力は、基準クロックから直接に導かれ、反転遅延線２５８によって生じる基準クロックの遅延したものである。図２Ｃでは、反転遅延線は、５つの直列に接続されたＮＡＮＤゲートを用いて実現されている。
基準クロックがローからハイに変化すると、反転遅延線の出力は、ある遅延の後に、ハイからローに変化する。しかし、遅延の周期の間は、クロックと反転遅延線２５８を通過して遅延したクロックとの両方が、ハイである。
このように、ある時間周期の間は、ＡＮＤ２５６へのすべての入力がハイであり、ｐｕｍｐｄｎ出力はハイである。この出力は、しかし、ハイである基準クロック信号が反転遅延線２５８を通って伝搬しｐｕｍｐｄｎをローにすると、再びローになる。従って、基準クロックの位相が遅延したクロックよりも進んでいるときには、ｐｕｍｐｄｎ信号は、ハイにパルス化される。パルスの長さは、反転遅延線２５８における遅延の長さによって決定される。ここで与えられている例示的な値としては、パルスの長さは、２から３ｎｓｅｃの間である。
基準クロックの位相が遅延したクロック信号よりも遅れているときには常に、負の方向のパルスが、ｐｕｍｐｕｐｂ出力において同様に生じる。この場合には、フリップフロップ２５２のＱ出力がハイになり、ＮＡＮＤゲート２５４へのすべての入力は、一時的にハイになる。
このようにして、位相検出器２１４は、制御電圧ＶＣを調整して基準クロックと遅延段２１２（１６）からの遅延したクロック信号との位相を等しくするチャージ・ポンプ２１６に対して、制御信号を生じる。
図２Ｄは、精細遅延段２２２を示している。精細遅延段２２２は差動遅延段であり、従って、ｉｎからｏｕｔｂへの及びｉｎｂからｏｕｔへの２つの同じ信号経路を有する。ｉｎからｏｕｔｂへの経路だけを考慮すると、入力信号は、最初に、インバータ２６０Ａによってバッファされる。インバータ２６０Ａの出力は、ｏｕｔｂ信号である。
インバータ２６０Ａの出力は、転送（transfer）ゲート２６８Ａを介して、コンデンサ２６４Ａ及び２６６Ａに結合される。コンデンサ２６４Ａは、グランドに接続され、コンデンサ２６６Ａは、供給電圧に接続される。転送ゲート２６８Ａが、ＢＩＴｂ信号によって、オンになる、すなわち、開かれると、コンデンサ２６４Ａ及び２６６Ｂは、インバータ２６０Ａの出力をロードし、従って、遅延を増加させる。
ｉｎｂからｏｕｔへの信号経路は同一の要素を含んでおり、従って、ｉｎ及びｉｎｂ信号は、同じ量だけ遅延される。
ＢＩＴｂ線がローであるときに精細遅延段２２２における遅延が増加する量は、コンデンサ２６４Ａ、２６４Ｂ、２６６Ａ及び２６６Ｂの大きさに依存する。コンデンサ２６４及び２６６の大きさは、それぞれの段２２２（１）・・・２２２（４）において、異なる。コンデンサの大きさは、上述した遅延の２進重み付けを与えるように、選択される。図２Ａの例では、これらの遅延は、クロック周期の１／２５６、１／１２８、１／６４及び１／３２に対応する。従って、それぞれの精細遅延段２２２は、ＢＩＴ信号に応答して増加する遅延を提供するが、このＢＩＴ信号は、図２Ａに示されるように、タイミング・データから導かれる。
次に図３を参照すると、本発明の追加的な特徴が示されている。上述の補償回路は、平均温度の変化及びプロセスでの変動を補償するのに有用である。動作周波数の変化に基づき動作温度の変化を予測し調整することによって、より高い精度を得ることができる。
図３は、概略的なフォーマットで、複数のタイミング発生器１１６がその上に実装されているＣＭＯＳチップ３００を示している。それぞれのチップ３００の上のタイミング発生器の数は、設計選択事項であり、入力／出力ピンの数やそれ以外のファクタなどを考慮することによって決定する。
複数のエッジ・レート補償装置（補償器）３１０が用いられる。それぞれのエッジ・レート補償装置３１０は、その入力信号の周波数に応答して、熱発生回路要素を制御する。入力信号の周波数が上昇するにつれて、エッジ・レート補償装置によって発生される熱の量は減少する。従って、タイミング信号を処理する回路によって発生される熱が増加するにつれて、エッジ・レート補償装置によって発生される熱は減少する。このようにして、チップ３００の全体的な温度は、動作周波数の変化に応答して、一定に保たれる。
図３は、それぞれのタイミング発生器１１６の出力が出力パッド３１２に到達していることを示している。ＣＭＯＳチップの出力パッドは、比較的高い電力レベルで動作する。１ボルトの揺れ（swing）を有するような比較的低い電圧出力パッドが用いられる場合でも、周波数に伴う熱発生の全体的な変化の比較的高いパーセンテージが、出力パッド３１２によって発生する熱の変化に起因する。従って、図３は、エッジ・レート補償装置３１０が、出力パッド３１２に与えられる信号との関係においてのみ用いられることを示している。
それぞれのタイミング発生器１１６は、それに関連するエッジ・レート補償装置３１０を有する。タイミング発生器１１６からのタイミング信号又は「エッジ」もまた、エッジ・レート補償装置３１０への入力として与えられる。エッジ・レート補償装置３１０の出力は、ダミー（dummy）出力パッド３１４に接続されている。ダミー出力パッド３１４は、エッジを搬送するのに用いられる出力パッド３１２と同じであり得る。しかし、その唯一の目的は、量が変動する熱を発生することであり、ダミー出力パッド３１４上の信号は、それ以外には、テスタ１００（図１）において用いられない。
図３に示された構成は、標準的なＩ／Ｏセルを用いて実現される出力パッドの設計への変更を要求しないという長所を有する。しかし、これは、余分な出力パッドが用いられることを要求するという短所を有する。ある場合には、１つのチップの上に配置できる回路の量は、利用可能な出力パッドの数によって制限される。そのような状況では、別個の出力パッドを、単に熱を発生させるためのダミー出力パッドとして用いることは望ましくない。
その代わりとして、熱発生要素を、それぞれの出力パッド３１２の中に組み入れることが可能である。また、熱を発生する他の回路要素を、それぞれの出力パッド３１２の近くにおいてチップ３００に加えることもできる。熱を発生させる単純な方法は、比較的大きなドレイン抵抗を有する任意の論理ゲート又は複数のゲートを用いることである。ゲートがオンになると、ドレイン抵抗において発生するＩ2Ｒの熱が増加し、ゲートがオフになると、この発生した熱は減少する。
また、図３は、エッジ・レート補償装置３１０が出力パッド３１２の近くにだけ用いられていることを示していることにも注意すべきである。エッジ・レート補償装置は、かなりの量の熱を発生する任意の他の回路要素と共にでも用いることができる。他の回路要素と共に用いられるときには、別個の加熱要素が要求される。好ましくは、その加熱要素は、これらの回路要素から２００ミクロン以内に配置される。
エッジ・レート補償装置を、追加的に、又は、フォーマッタ１１８などの周波数が変動する信号を処理する回路要素と共にだけ用いることもできる。特に、エッジ・レート補償装置は、タイミング・データが急激に変化することを許容するテスタにおいて非常に有用であるが、これは、そのようなテスタには、必然的に、バーストの間に周波数が変化し得る信号を処理する回路が含まれるからである。
図４を参照すると、エッジ・レート補償装置３１０を実現するのに用いることができる回路の概略が示されている。エッジ入力信号が、排他的ＯＲゲート４１２の一方の入力に与えられる。エッジ信号は、また、反転遅延要素４１０を介して、排他的ＯＲゲートの第２の入力に与えられる。
定常状態では、排他的ＯＲゲート４１２の出力は、ハイである。しかし、エッジ信号が変化すると常に、排他的ＯＲゲートの出力は、反転遅延線４１０を通過する遅延に等しい長さの時間だけ、ローになる。
排他的ＯＲゲート４１２の出力は、ＮＯＲゲート４１４への入力である。図４の回路では、ＮＯＲゲート４１４は、加熱要素を表す。排他的ＯＲゲート４１２の出力がハイに留まる限りは、ＮＯＲゲート４１４によってシンクされる電流が存在し、抵抗４１６とＮＯＲゲート４１４とにおいて熱が発生する。しかし、排他的ＯＲゲート４１２の出力がローになると、ＮＯＲゲート４１４がシンクする電流は実質的に存在せず、従って、抵抗４１６によっては、熱は実質的に発生されない。
エッジ信号の周波数が上昇するにつれて、排他的ＯＲゲートの出力がローである時間の長さは、長くなる。従って、抵抗４１６において発生する熱の量は、エッジ信号の周波数に反比例して変動する。比例定数は、部分的には、反転遅延要素４１０によって与えられる遅延に依存する。遅延が長ければ、比例定数は大きくなる。
反転遅延要素４１０において要求される遅延の正確な値は、多くのファクタに依存し、最良には、経験的に決定され得る。図４の実施例では、遅延要素４１０の遅延は、３つの反転遅延段を通る遅延に等しい。
図４の実施例では、熱発生要素は、抵抗４１６及びＮＯＲゲート４１４として示されている。これらの熱発生要素は、エッジ・レート補償回路３１０の他の要素の近くに示されている。しかし、このような物理的な位置は、図解を容易にする目的のためだけに選択されている。熱を発生する要素は、この場合は抵抗４１６であるが、エッジ信号の周波数と正比例して熱を発生する回路要素と可能な限り近接して配置されることが好ましい。エッジ・レート補償回路の全体を他の要素に非常に近接させて配置することができない場合には、熱発生要素は、図４に示されている他の回路要素から分離することも可能である。
図４は、熱発生要素は抵抗４１６であることを示している。抵抗は、ＣＭＯＳチップにおいては、ゲートをドレインと接続したトランジスタによって、実現することができる。また、あらゆる回路は抵抗値を有しているから、抵抗４１６が別個に識別可能な要素であることが、すべての場合に必要なわけではない。ある別の回路要素の内在的な抵抗値が、同じ目的を果たすこともできる。例えば、図３では、ダミー・パッド３１４の内在的な抵抗値が、抵抗４１６によって表される抵抗値を提供する。
図４は、そのすべての入力が相互に接続されているＮＯＲゲート４１４を示している。ＮＯＲゲート４１４は、従って、単純なインバータとして機能している。図４は、複数入力のＮＯＲゲートが用いられている様子を示しているが、その理由は、そのような回路が単純な標準的なセル・インバータよりも多くの電流をシンクするからである。しかし、大きな電流シンク能力を有するインバータ又は制御入力に応答して電流をシンクするそれ以外の回路要素も、同様に用いることができる。
既に述べたことであるが、エッジ・レート補償装置３１０によって発生される熱の量は、エッジ信号の周波数に反比例する。比例定数は、遅延要素４１０によって与えられる遅延の長さに影響される。また、ＮＯＲゲート４１４によってシンクされる電流の量と、抵抗４１６の大きさとにも影響される。これらの値の任意のもの又はすべてが、周波数と反比例して変動し、周波数と比例して変動する熱を相殺（counter balance）する所望の熱を提供するように、調整することが可能である。
ある場合にはエッジ・レート補償装置３１０によって発生される熱を増加させることが望ましいが、電流のシンクは、任意に増加させることはできない。チップ３００の外部の抵抗を用いるか、又は、電流が制限された電流源を用いて、例えば２５ｍＡなどの受け入れられるレベルよりも下に、電流のシンクを維持することが必要となり得る。
１つの実施例について説明してきたが、多くの別の実施例又は変更が可能である。例えば、タイミング・データのビット数は、例示に過ぎない。任意のビット数を用いることができる。ビット数が変更されると、カウンタ２２６のレンジ、遅延線２１０の長さ及び精細遅延線の長さを、それに従って変更しなければならない。
説明した回路に変更を加えることもできる。例えば、図２Ａには、１つのタイミング発生器当たりただ１つのカウンタ２２６が示されている。複数のカウンタ２２６を用いて、１つのカウンタ２２６の中にプログラムされたクロック・サイクルの数よりも少ない間隔で複数のエッジ信号が発生され得るようにすることもできる。
また、加算増幅器２１８が、ＶＣ信号にオフセットを加えるものとしてオプションで示されている。しかし、ＶＣ信号がその中で発生される閉ループの態様とすれば、要求される値に結果的に到達させることが保証される。しかし、較正信号を追加することによって、チャージ・ポンプ２１６の出力のダイナミック・レンジを減少させることが可能である。
また、図２Ａが、分数的に遅延したクロックを生じる回路がタイミング・データの値とは無関係に常に基準クロックの周波数で動作することを示していることに注意すべきである。これは、カウンタ２２６の出力が分数的な量だけ遅延される従来の構成とは対照的である。このような構成は、カウンタ２２６にプログラムされた値が変化するときに動作周波数の変化によって生じ得る分数的な遅延回路を介しての伝搬遅延の変動を減少させる。しかし、分数的な遅延を生じさせる従来の方法を、本発明の他の要素と共に用いることは可能である。例えば、分数的な遅延回路がエッジ・レートに依存する場合には、図４に示されているエッジ・レート補償回路を、その分数的な遅延回路と共に用いることができる。
好適実施例では、基準クロックは、テスタ１００が動作している時間の全体の間に、図２Ａの分数的な遅延回路に与えられる。分数的に遅延したクロック信号は常に発生するが、カウンタ２２６がイネーブルされなければ、エッジ信号は発生されない。これによって、正確なタイミング信号を発生するのに用いられる回路は、パターン・バーストの開始時に熱的な平衡状態にあることが保証される。この構成はより高いタイミングの精度を与えるが、本発明の他の効果は、この特徴がなくとも、得られる。
上述の実施例では、交差結合されたフィードバックを有する差動回路要素を用いて分数的な遅延回路を実現することにより、より高いタイミングの精度が得られる。更なるタイミングの精度が要求されない場合には、代わりに、シングルエンド回路を用いることもできる。
また、図１に示されている従来技術によるテスタのアーキテクチャは、単なる例示であることに注意すべきである。本発明は、任意のアーキテクチャのテスタで低コストの回路を用いて、タイミング信号の正確な発生のために用いることができる。更に、同じ回路を、正確でプログラマブルなタイミング信号の低コストでの発生が要求されている他の応用例で用いることもできる。
他の変更の例として、図２Ａでは、カウンタ２２６は基準クロックによってクロックされ、次に、整合（alignment）遅延を用いて分数的に遅延したクロックによるサンプリングを行うカウンタ２２６の出力パルスの位置決めをすることが示されている。分数的に遅延したクロックは、カウンタ２２６へのクロック入力として用いることができる。その場合には、カウンタ２２６の出力パルスは、タイミング発生器１１６のエッジ出力信号である。しかし、特に、タイミング・データが急激に変化する場合には、エッジ信号のタイミングがより予測可能であるから、図２Ａの実施例が好ましい。
図２Ａは、また、プログラマブルな遅延２２８がマルチプレクサ２２０への入力と同じタイミング入力を有することを示している。このタイミング入力は、動作におけるより大きな融通性を許容するために、これらの回路のそれぞれに対して、別個に、発生させることができる。
また、エッジ・レート補償回路３１０は本質的には開ループの態様で動作すると説明した。補償回路において発生する熱は入力信号の周波数に比例し、比例定数は、用いられる回路要素によって固定される。比例定数は、フィードバックを用いて変動させることができ、周波数の変化に応答して閉ループ制御を与える。
変更の他の例としては、精細遅延段２２２はＶＣ信号に基づいて調整されないと示されている。しかし、そのような構成を、より高い精度のために行うことが可能である。
図４に関しては、発生した熱は信号の周波数の変化に応答して変化するとされている。エッジ・レート補償装置によって発生された熱の変化は、周波数が変動する信号を処理する回路要素に近接する回路における伝搬遅延の変化を回避するために、局所化されている。注意すべきは、温度を用いて制御遅延を間接的に制御している点である。遅延を制御する他の方法を、エッジ・レート補償装置において用いることもできる。例えば、エッジ・レート補償装置がＶＣ信号のような制御信号を生じ、この信号を制御入力として、又は、他の制御入力と組み合わせて、エッジ・レート補償装置の周囲に配置された回路に提供し、遅延を直接的に制御することもできる。
従って、本発明は、請求の範囲の精神及び範囲によってのみ限定されるべきである。
【図１】
0003808099.tif 000002
【図２Ａ】
0003808099.tif 000003
【図２Ｂ】
0003808099.tif 000004
【図２Ｃ】
0003808099.tif 000005
【図２Ｄ】
0003808099.tif 000006
【図３】
0003808099.tif 000007
【図４】
0003808099.tif 000008