(57)【要約】  可変遅延回路４２は、ストローブ信号Ｓ５に調節可能な遅延を与える。入力ラッチ回路１４は、可変遅延回路４２により遅延されたストローブ信号Ｓ６により、内部シリアルデータＳ２に含まれる各ビットデータをラッチする。遅延設定部４０は、可変遅延回路４２によりストローブ信号Ｓ５に与える遅延量τ１を調節する。遅延設定部４０は、シリアルデータとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、入力ラッチ回路１４の出力ラッチデータＳ３を統計的に取得し、１と０の出現確率が所定の割合となるように、遅延量τ１を調節する。
2008114508.tif 000002
【特許請求の範囲】
【請求項１】
ストローブ信号を利用してビットストリーム伝送されるデータを受信するデータ受信回路であって、
ストローブ信号に遅延を与える可変遅延回路と、
前記可変遅延回路により遅延された前記ストローブ信号により、前記データに含まれる各ビットデータをラッチするラッチ回路と、
前記可変遅延回路により前記ストローブ信号に与える遅延量を調節する遅延制御部であって、前記データとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、前記ラッチ回路の出力ラッチデータを統計的に取得し、１と０の一方の出現確率が所定値に近づくように、前記遅延量を調節する遅延制御部と、
を備えることを特徴とするデータ受信回路。
【請求項２】
前記可変遅延回路は、前記データに含まれる各ビットデータのポジティブエッジまたはネガティブエッジのいずれかの遷移期間中のタイミングにて、遅延された前記ストローブ信号によって前記データをラッチさせ、１と０の一方の出現確率が５０％を中心とした所定の範囲に含まれるように、前記遅延量を調節することを特徴とする請求項１に記載のデータ受信回路。
【請求項３】
前記キャリブレーションパターンは、１と０を交互に繰り返すパターンであり、
前記ストローブ信号の周波数は、前記データのビットレートの偶数分の１に設定されることを特徴とする請求項２に記載のデータ受信回路。
【請求項４】
前記遅延制御部は、前記ラッチ回路の出力ラッチデータに応じてカウントアップ、またはカウントダウンするカウンタを含み、前記カウンタのカウント値によって、１と０の出現確率を取得することを特徴とする請求項２または３に記載のデータ受信回路。
【請求項５】
前記カウンタには、動作クロックとして疑似ランダムパルス列が入力されており、当該疑似ランダムパルス列のエッジのタイミングにおける前記出力ラッチデータに応じて、カウント動作を実行することを特徴とする請求項４に記載のデータ受信回路。
【請求項６】
前記遅延制御部は、
キャパシタと、
前記ラッチ回路の出力ラッチデータに応じて、前記キャパシタを充電または放電する充放電回路と、
を含み、前記キャパシタに現れる電圧にもとづき、１と０の出現確率を取得することを特徴とする請求項２または３に記載のデータ受信回路。
【請求項７】
前記可変遅延回路は、データを受信するとき、前記遅延制御部によって得られた遅延量に、前記データのユニットインターバルに応じて設定されるオフセット遅延量を合成した遅延を前記ストローブ信号に付加することを特徴とする請求項２または３に記載のデータ受信回路。
【請求項８】
被試験デバイスから出力される複数のデータを試験する試験装置であって、
前記複数のデータごとに設けられる請求項１から７のいずれかに記載の複数のデータ受信回路を備え、前記複数のデータ受信回路は、独立して前記ストローブ信号に付加する遅延量を調節することを特徴とする試験装置。
【請求項９】
ビットストリーム伝送されるデータをラッチするラッチ回路に供給されるストローブ信号のタイミングの調節回路であって、
ストローブ信号に調節可能な遅延を与える可変遅延回路と、
前記データとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、前記可変遅延回路により遅延された前記ストローブ信号によってラッチされた前記ラッチ回路の出力ラッチデータを継続的に監視し、１または０の値に応じて、レベルが増減する検出値を生成する検出値生成部と、
前記検出値が所定値に近づくように、前記可変遅延回路により前記ストローブ信号に与える遅延量を調節する遅延制御部と、
を備えることを特徴とする調節回路。
【請求項１０】
ビットストリーム伝送されるデータをラッチするストローブ信号のタイミング調節方法であって、
前記ストローブ信号に調節可能な遅延を与えるステップと、
遅延された前記ストローブ信号により、前記データに含まれる各ビットデータをラッチするステップと、
前記ストローブ信号に与える遅延量を調節するステップであって、前記データとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、ラッチされた出力ラッチデータを統計的に取得し、１と０の一方の出現確率が所定値に近づくように、前記遅延量を調節するステップと、
を備えることを特徴とするタイミング調節方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビットストリームとして入力されるデータに含まれるビットデータを、ストローブ信号を利用して受信するデータ受信技術に関し、特にストローブ信号のタイミング調節技術に関する。
【背景技術】
【０００２】
少ないデータ伝送線路を介して半導体集積回路間でデータを送受信するために、シリアルデータ伝送が利用される。シリアルデータの受信は、シリアルデータに含まれるビットデータと同期したストローブ信号によって、各ビットデータをラッチすることにより実行される。【０００３】
シリアルデータを出力する半導体回路を被試験デバイス（Device Under Test：ＤＵＴ）として試験する半導体試験装置（単に試験装置ともいう）について考える。この場合、ＤＵＴと試験装置の配線長のばらつきや寄生容量の影響によって、シリアルデータやクロックに、予期せぬ遅延が発生する。かかる状況において、シリアルデータを正確に受信するためには、ストローブ信号のエッジのタイミングを、ラッチ回路のセットアップタイムとホールドタイムの条件を満たすように調節する必要がある。特許文献１、２には関連技術が開示される。
【特許文献１】特開平２−６２９８３号公報
【特許文献２】特開２００７−１７２５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
試験装置に複数チャンネルのシリアルデータが入力される場合、各チャンネルに入力されるシリアルデータには、均一でないタイミングずれ（以下、スキューという）が発生する。この場合、各チャンネルごとのビットデータのラッチに、同一タイミングのストローブ信号を利用すると、あるチャンネルではセットアップタイム、ホールドタイムの条件が満足されるが、別のチャンネルでは、タイミング違反が発生するおそれがある。【０００５】
シリアルデータ伝送のビットレートが高い場合、セットアップタイム、ホールドタイムの条件が厳しくなるため、すべてのチャンネルを正確に受信するためには、すべてのチャンネルについて独立にストローブ信号のタイミングをキャリブレーションする必要がある。ここで、１チャンネルの調節に必要なキャリブレーション時間が長ければ、試験時間が長くなってしまい、生産性が低下する。また、単一チャンネルのシリアルデータを受信する場合であっても、キャリブレーションに要する時間は短い方がよい。かかる課題は、シリアルデータに限らず、ビットストリーム伝送されるさまざまなデータに共通の問題である。【０００６】
本発明はかかる状況に鑑みてなされたものであり、その包括的な目的は、ストローブ信号のキャリブレーションに要する時間の短縮にある。
【課題を解決するための手段】
【０００７】
本発明のある態様は、ストローブ信号を利用してデータを受信するデータ受信回路に関する。このデータ受信回路は、ストローブ信号に調節可能な遅延を与える可変遅延回路と、可変遅延回路により遅延されたストローブ信号により、データに含まれる各ビットデータをラッチするラッチ回路と、可変遅延回路によりストローブ信号に与える遅延量を調節する遅延制御部であって、データとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、ラッチ回路の出力ラッチデータを統計的に取得し、１と０の一方の出現確率が所定値に近づくように、遅延量を調節する遅延制御部と、を備える。【０００８】
あるキャリブレーションパターンのデータを、あるタイミングのストローブ信号でラッチすると、ストローブ信号とデータの位相差によって、ラッチされたデータの１と０の出現頻度（すなわち出現確率）が変化する。この態様のデータ受信回路によれば、１と０の出現確率が所定値に近づくように遅延量を調節することにより、ストローブ信号のタイミングを最適化することができる。さらに、この態様では、ラッチしたデータを期待値と比較するなどの処理が不要となるため、短時間でのキャリブレーションが実行できる。【０００９】
遅延制御部は、遅延量を所定幅づつシフトさせていき、１と０のいずれか一方の出現確率が所定範囲に含まれたときの遅延量を保持し、この遅延量に応じた遅延を可変遅延回路に設定してもよい。【００１０】
可変遅延回路は、データに含まれる各ビットデータのポジティブエッジまたはネガティブエッジのいずれかの遷移期間中のタイミングにて、遅延されたストローブ信号によってデータをラッチさせ、１と０の一方の出現確率が５０％を中心とした所定の範囲に含まれるように、遅延量を調節してもよい。
この態様によれば、ストローブ信号のエッジが、データのポジティブエッジ（またはネガティブエッジ）の中央付近となるとき、１と０の出現確率が５０％付近となり、時間的に前後にシフトすると、出現確率が５０％から離れていく。したがって、５０％となるように遅延量を調節すれば、データに含まれるビットデータのエッジのタイミングを検出することができ、このタイミングに応じて、ストローブ信号のタイミングを決定することができる。【００１１】
キャリブレーションパターンは、１と０を交互に繰り返すパターンであり、ストローブ信号の周波数は、データのビットレートの偶数分の１に設定されてもよい。
この場合、ポジティブエッジまたはネガティブエッジのみを選択的に抽出して、ストローブ信号によってラッチすることができる。【００１２】
遅延制御部は、ラッチ回路の出力ラッチデータに応じてカウントアップ、またはカウントダウンするカウンタを含み、カウンタのカウント値によって、１と０の出現確率を取得してもよい。【００１３】
カウンタには、動作クロックとして疑似ランダムパルス列が入力されてもよい。カウンタは、疑似ランダムパルス列のエッジのタイミングにおける出力ラッチデータに応じて、カウント動作を実行してもよい。
この場合、カウンタの動作クロックと、出力ラッチデータの周波数の関係が時間的に変動することになるため、エイリアシングやデッドバンドの発生を抑制できる。【００１４】
遅延制御部は、キャパシタと、ラッチ回路の出力ラッチデータに応じて、キャパシタを充電または放電する充放電回路と、を含み、キャパシタに現れる電圧にもとづき、１と０の出現確率を取得してもよい。【００１５】
可変遅延回路は、データを受信するとき、遅延制御部によって得られた遅延量に、データのユニットインターバルに応じて設定されるオフセット遅延量を合成した遅延をストローブ信号に付加してもよい。【００１６】
本発明の別の態様は、試験デバイスから出力される複数のデータを試験する試験装置に関する。この試験装置は、複数のデータごとに設けられる複数の上述のいずれかのデータ受信回路を備える。複数のデータ受信回路は、独立してストローブ信号に付加する遅延量を調節する。【００１７】
この態様によると、各チャンネルごとに独立してストローブ信号のタイミングをキャリブレーションすることができ、またキャリブレーションに要する時間も短縮できる。【００１８】
本発明のさらに別の態様は、ビットストリーム伝送されるデータをラッチするストローブ信号のタイミングの調節回路に関する。この調節回路は、ストローブ信号に調節可能な遅延を与える可変遅延回路と、データとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、可変遅延回路により遅延されたストローブ信号によってラッチされたラッチ回路の出力ラッチデータを継続的に監視し、１または０の値に応じて、レベルが増減する検出値を生成する検出値生成部と、検出値が所定値に近づくように、可変遅延回路によりストローブ信号に与える遅延量を調節する遅延制御部と、を備える。【００１９】
本発明のさらに別の態様は、ビットストリーム伝送されるデータをラッチするストローブ信号のタイミング調節方法に関する。この方法は、ストローブ信号に調節可能な遅延を与えるステップと、遅延されたストローブ信号により、データに含まれる各ビットデータをラッチするステップと、ストローブ信号に与える遅延量を調節するステップであって、データとして既知のキャリブレーションパターンを入力するキャリブレーション動作時に、ラッチされた出力ラッチデータの１と０の出現確率を統計処理し、１と０の出現確率が所定値に近づくように、遅延量を調節するステップと、を備える。【００２０】
なお、以上の構成要素の任意の組合せ、本発明の表現を、方法、装置などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００２１】
本発明によれば、ストローブ信号のキャリブレーションに要する時間を短縮できる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態に係るデータ受信回路を備えた試験装置の構成を示すブロック図である。
【図２】内部シリアルデータとストローブ信号のタイミングの関係を示すタイムチャートである。
【図３】図３（ａ）〜（ｃ）は、内部シリアルデータが有するジッタと、１と０の出現確率（１の割合）を示す図である。
【図４】図１のデータ受信回路の動作を示すフローチャートである。
【図５】変形例に係るデータ受信回路の構成の一部を示すブロック図である。
【図６】ＣＤＲ回路を備える試験装置の構成を示すブロック図である。
【図７】図１のデータ受信回路の変形例を示すブロック図である。
【符号の説明】
【００２３】
１０  データ受信回路、  １２  コンパレータ、  １４  入力ラッチ回路、  ２０  タイミング調節回路、  ２２  遅延制御部、  ３０  タイミング判定部、  ３２  第１カウンタ、  ３４  変化点判定部、  ３６  第１分周器、  ３８  ＰＮパターン発生器、  ４０  遅延設定部、  ４２  可変遅延回路、  ４４  オフセット遅延設定部、  ４６  第３分周器、  ５０  タイマ回路、  ５２  第２カウンタ、  ５４  第２分周器、  ６０  基準信号生成部、  ６２  判定部、  ７０  電圧変換部、  ７２  バッファ、  Ｃ１  キャパシタ、  ８０  変化点判定部、  ８２  コンパレータ、  ８４  コンパレータ、  ８６  論理判定部、  １００  試験装置、  １０２  入力端子、  １１０  ＤＵＴ、  １１２  伝送路、  Ｓ１  シリアルデータ、  Ｓ２  内部シリアルデータ、  Ｓ３  出力ラッチデータ、  Ｓ４  基準信号、  Ｓ５  ストローブ信号、  Ｓ６  ストローブ信号。
【発明を実施するための最良の形態】
【００２４】
以下、本発明を好適な実施の形態をもとに図面を参照しながら説明する。各図面に示される同一または同等の構成要素、部材、処理には、同一の符号を付するものとし、適宜重複した説明は省略する。また、実施の形態は、発明を限定するものではなく例示であって、実施の形態に記述されるすべての特徴やその組み合わせは、必ずしも発明の本質的なものであるとは限らない。【００２５】
図１は、本発明の実施の形態に係るデータ受信回路１０を備えた試験装置１００の構成を示すブロック図である。試験装置１００は、伝送路１１２ａ〜１１２ｃを介して接続されたＤＵＴ１１０から出力される複数のシリアルデータＳ１ａ〜Ｓ１ｃを受け、それぞれの期待値データＳ１３と比較することによりＤＵＴ１１０を検査する。なお、入力されるシリアルデータＳ１の個数ｎは任意であり、図示のｎ＝３の場合に限定されるものではない。【００２６】
まず、試験装置１００の全体構成の概略を説明する。試験装置１００の入力端子１０２ａ〜１０２ｃ（単に入力端子１０２と総称する）には、シリアルデータＳ１ａ〜Ｓ１ｃ（単にシリアルデータＳ１と総称する）が入力される。試験装置１００は、入力端子１０２ごと、つまりシリアルデータＳ１ごとに設けられた複数のデータ受信回路１０ａ〜１０ｃ（単にデータ受信回路１０と総称する）を備える。【００２７】
データ受信回路１０は、シリアルデータＳ１のビットレートと同じ周波数を有するストローブ信号Ｓ６のポジティブエッジまたはネガティブエッジを利用して、シリアルデータＳ１に含まれるビットデータをラッチする。【００２８】
データ受信回路１０は、コンパレータ１２、入力ラッチ回路１４、タイミング調節回路２０を含む。【００２９】
コンパレータ１２は、シリアルデータＳ１の電圧レベルを所定のスライスレベルと比較し、ハイレベル（１）またはローレベル（０）をとるデータ（以下、内部シリアルデータＳ２という）を生成する。入力ラッチ回路１４は、たとえばフリップフロップやラッチ回路で構成される。入力ラッチ回路１４は、後述のタイミング調節回路２０によってタイミングが調節されたストローブ信号Ｓ６を利用して、内部シリアルデータＳ２をラッチし、試験装置１００の内部クロックと同期させる。【００３０】
判定部６２は、入力ラッチ回路１４によりラッチされた出力ラッチデータＳ３と、期待値データＳ１３を比較し、エラーレートなどを測定したり、あるいはＤＵＴ１１０の良否判定を行う。図１では、判定部６２をＸＯＲ(eXclusive OR)ゲートとして示すが、ビット比較が可能なその他の回路素子で構成することができる。【００３１】
以上が試験装置１００全体の構成の概略である。試験装置１００は、以下のように使用される。まず、ＤＵＴ１１０は、ソケット等にマウントされ、試験装置１００と接続される。ＤＵＴ１１０からシリアル形式のキャリブレーションパターン（トレーニングシーケンスパターン）を生成させる。このキャリブレーションパターンは、期待値データＳ１３と一致すべきデータである。試験装置１００のデータ受信回路１０は、ＤＵＴ１１０から出力されるシリアルデータを受け、ストローブ信号Ｓ６によってラッチし、各ビットデータを期待値データと比較して、ＤＵＴ１１０の良否判定を行う。【００３２】
この試験装置１００において、ビットデータを正確にラッチするためには、ストローブ信号Ｓ６のタイミングが、入力ラッチ回路１４に規定されるセットアップタイム、ホールドタイムの要求を満たす必要がある。ところが、ＤＵＴ１１０から出力されるシリアルデータＳ１は、ジッタを有しており、あるいは伝送路１１２によって予期しない遅延を受けて伝送される。したがって、シリアルデータＳ１を正確に受信するためには、シリアルデータＳ１に応じてストローブ信号Ｓ６のタイミングを最適化する必要がある。そこで、データ受信回路１０は、シリアルデータＳ１の受信に先立ち、ストローブ信号Ｓ６のタイミングを調節するキャリブレーション動作を実行する。【００３３】
以下、このキャリブレーションを実行するデータ受信回路１０のタイミング調節回路２０の構成について詳細に説明する。【００３４】
タイミング調節回路２０は、遅延制御部２２、可変遅延回路４２、第３分周器４６を備える。【００３５】
基準信号生成部６０は、基準信号Ｓ４を生成する。第３分周器４６は、基準信号Ｓ４を受け、これを任意の分周比で分周し、ストローブ信号Ｓ５を生成する。ストローブ信号Ｓ５の周波数は、通常動作時において、シリアルデータＳ１のビットレートと同一に設定される。また、キャリブレーション動作中のストローブ信号Ｓ５の周波数は、シリアルデータＳ１のビットレートの１／ｍ（ｍは整数）に設定される。ストローブ信号Ｓ５の周波数については後述する。【００３６】
可変遅延回路４２は、ストローブ信号Ｓ５に調節可能な遅延を与える。たとえば可変遅延回路４２は、多段接続された複数の単位遅延素子、たとえば複数のインバータと、各遅延素子をバイパスするスイッチとを含むバッファチェーン回路で構成してもよい。この場合、バイパススイッチのオン、オフに応じてストローブ信号Ｓ５が経由するインバータの個数が制御され、遅延量が調節される。可変遅延回路４２の遅延調節幅の単位をΔｔとする。【００３７】
可変遅延回路４２により遅延されたストローブ信号Ｓ５は、入力ラッチ回路１４のクロック端子に出力される。入力ラッチ回路１４は、遅延されたストローブ信号Ｓ６を利用して、内部シリアルデータＳ２に含まれる各ビットデータをラッチする。【００３８】
遅延制御部２２は、可変遅延回路４２によりストローブ信号Ｓ５に与える遅延量を調節する。本実施の形態に係るタイミング調節回路２０によるキャリブレーション処理の概要を説明する。【００３９】
ストローブ信号Ｓ５のキャリブレーションを実行する際、ＤＵＴ１１０に所定のキャリブレーションパターンを出力させる。このキャリブレーションパターンは、試験装置１００側において既知である。遅延制御部２２は、キャリブレーション時に、入力ラッチ回路１４の出力ラッチデータＳ３を統計的に取得する。そして、出力ラッチデータＳ３の１と０の出現確率が所定の割合となるように、可変遅延回路４２により与える遅延量τ１を調節する。【００４０】
可変遅延回路４２は、内部シリアルデータＳ２に含まれる各ビットデータのポジティブエッジのタイミングでシリアルデータをラッチさせ、１と０の出現確率が、たとえば５０％を中心とした所定の目標範囲に含まれるように、遅延量τ１を調節する。より具体的には、目標範囲は４５％〜５５％であってもよい。【００４１】
図２は、内部シリアルデータＳ２とストローブ信号Ｓ５のタイミングの関係を示すタイムチャートである。図２は、上から順に、内部シリアルデータＳ２、キャリブレーション中のストローブ信号Ｓ６ａ、キャリブレーション後のストローブ信号Ｓ６ｂを示す。【００４２】
ストローブ信号Ｓ５のタイミングに対するストローブ信号Ｓ６ａのタイミングは、遅延量τ１に応じて変化する。たとえば、内部シリアルデータＳ２をタイミングｔ１のストローブ信号Ｓ６ａでラッチすれば、０（ローレベル）と判定される確率が高くなるため、１と０の出現確率を統計的に取得すれば、０の出現確率が高くなる。逆に、タイミングｔ３のストローブ信号Ｓ６ａでラッチした場合、１（ハイレベル）と判定される確率が高くなるため、１の出現確率が高くなる。タイミングｔ２のストローブ信号Ｓ６ａでラッチした場合、１と判定される確率と０と判定される確率はそれぞれ５０％となるため、１と０の出現確率は５０％に近づく。【００４３】
本実施の形態に係るタイミング調節回路２０は、１と０の出現確率が５０％に近づくように、ストローブ信号Ｓ５に与える遅延量τ１を調節する。調節後のストローブ信号Ｓ６ａのタイミングは、内部シリアルデータＳ２のポジティブエッジのほぼ中央となる。【００４４】
その後、キャリブレーションが完了して通常の試験時に内部シリアルデータＳ２をラッチする場合、セットアップタイムＴｓとホールドタイムＴｈの要求を満たすため、ストローブ信号Ｓ６ｂのタイミングを時刻ｔ４とｔ５の間に設定する必要がある。そこで、上述のキャリブレーション処理によって決定した内部シリアルデータＳ２のエッジのタイミングｔ２に対してオフセット遅延量τ２を付加することにより、ストローブ信号Ｓ６ｂのタイミングを設定することができる。【００４５】
図３（ａ）〜（ｃ）は、内部シリアルデータＳ２が有するジッタと、１と０の出現確率（１の割合）を示す図である。図３（ａ）〜（ｃ）はそれぞれ、異なるジッタヒストグラムを示している。１の出現確率が５０％となるタイミングは、ヒストグラムの積分を等分する位置となる。図３（ａ）のように、ガウシアン分布の場合や、同図（ｂ）のように正弦波ジッタの場合、ピーク−ピークのセンター値のタイミングが、１（または０）の出現確率に５０％を与える。また、図３（ｃ）のように、ジッタヒストグラムの中心が、ピーク−ピークの中心から乖離している場合、１の出現確率が５０％を与えるタイミングはシフトする。
内部シリアルデータＳ２が有するジッタの性質に応じて、キャリブレーション時に使用される１と０の出現確率の目標値を設定することにより、より好ましい調節が可能となる。【００４６】
以上のキャリブレーション処理によれば、キャリブレーションパターンをラッチした結果得られるデータの１と０の出現確率を統計処理すれば十分であり、キャリブレーションパターンと期待値の比較処理を行う必要がないため、キャリブレーション処理を簡略化でき、高速化できる。
なお、ポジティブエッジに代えて、ネガティブエッジで同様の処理を行ってもよい。【００４７】
以上の説明から、当業者であればその思想を実現するための回路構成にさまざまな構成があることは理解でき、これらの構成例も本発明の範囲に含まれることは理解される。以下、図１に戻り、構成の具体例について説明する。【００４８】
以下、キャリブレーションパターンが１と０を交互に繰り返す場合について説明する。この場合、ポジティブエッジとネガティブエッジが交互に出現することになる。したがって、ひとつおきに、キャリブレーション中に、すべての出力ラッチデータＳ３を統計処理すると、１と０の出現確率は、遅延量τ１に関わらず５０％となってしまう。そこで、ポジティブエッジまたはネガティブエッジのみに対して、キャリブレーションを実行する。【００４９】
このために、キャリブレーション動作中のストローブ信号Ｓ５の周波数は、シリアルデータＳ１のビットレートの１／ｍ（ｍは偶数であり、たとえば２である）に設定される。その結果、ストローブ信号Ｓ６のエッジを、内部シリアルデータＳ２のポジティブエッジまたはネガティブエッジのタイミングのみで発生させることができる。【００５０】
遅延制御部２２は、タイミング判定部３０、遅延設定部４０、オフセット遅延設定部４４、タイマ回路５０を含む。
タイミング判定部３０は、出力ラッチデータＳ３を統計的に取得し、１と０の出現確率を判定して、内部シリアルデータＳ２のポジティブエッジのタイミング、つまり変化点を検出する。この機能を実現するために、図１のタイミング判定部３０は、第１カウンタ３２、変化点判定部３４、第１分周器３６を含む。【００５１】
第１分周器３６はシステムクロックＣＫｓｙｓを所定の分周比で分周し、クロックＣＫ１を生成する。第１カウンタ３２は、出力ラッチデータＳ３の値に応じて、カウントアップまたはカウントダウンするアップダウンカウンタである。第１カウンタ３２には、動作クロックとしてクロックＣＫ１が入力される。第１カウンタ３２は、クロックＣＫ１のポジティブエッジごとに、出力ラッチデータＳ３が１であればカウントアップ、出力ラッチデータＳ３が０であればカウントダウンする。なお、第１カウンタ３２の動作クロック（ＣＫ１）は、基準信号Ｓ４を起源とする出力ラッチデータＳ３の周波数と無関係に設定して構わない。【００５２】
シリアルデータＳ１としてキャリブレーションパターンを入力し、第１カウンタ３２によるカウント動作をある程度の長い時間（以下、データ取得時間という）に渡って実行すれば、第１カウンタ３２によるカウント値は、１と０の出現確率を示すデータとなる。たとえば、統計に先立ち、第１カウンタ３２のカウント値を半値に設定する。たとえば１０ビットカウンタであれば、［１０００００００００］＝５１２に設定する。その後、カウント動作を開始すれば、１と０の出現確率に応じてカウント値が遷移する。１と０の出現確率が５０％であれば、５１２に近い値を保持し、１の確率が高ければカウント値は上昇し、０の確率が高ければカウント値は低下する。【００５３】
変化点判定部３４は、第１カウンタ３２のカウント値Ｓ７に応じて、１と０の出現確率が５０％を中心とする所定範囲に含まれるかどうかを判定する。このために、変化点判定部３４はカウント値Ｓ７をしきい値と比較してもよい。
あるいは、変化点判定部３４は、第１カウンタ３２のキャリーまたはボローの発生を監視してもよい。たとえば、１の頻度が高ければ、キャリーが発生し、０の頻度が高ければボローが発生する。十分に長い時間、カウント処理を行った結果、キャリーまたはボローが発生していなければ、１と０の出現確率が５０％付近であると判定することができる。この場合、変化点判定部３４は、第１カウンタ３２のカウント値Ｓ７の全ビットの論理和を生成するＯＲゲートで構成することができる。【００５４】
変化点判定部３４は、統計処理の結果、１と０の出現確率が所定の目標範囲に含まれるか否かを示すフラグＳ８を生成する。たとえば、１と０の出現確率が目標範囲に含まれる場合、フラグＳ８を１に設定し、キャリブレーションを完了する。遅延制御部２２は、フラグＳ８が０である間、所定のデータ取得時間の経過ごとに、ストローブ信号Ｓ５に与える遅延量τ１を変化させていく。【００５５】
別の観点から見れば、第１カウンタ３２は、入力ラッチ回路１４の出力ラッチデータＳ３を継続的に監視し、１または０の値に応じて、レベルが増減する検出値、つまりカウント値Ｓ７を生成する検出値生成部として把握できる。また、変化点判定部３４および遅延設定部４０は、検出値であるカウント値Ｓ７が所定値に近づくように、可変遅延回路４２によりストローブ信号Ｓ５に与える遅延量τ２を調節する遅延制御部として把握できる。【００５６】
タイマ回路５０は、１と０のデータ取得時間を設定する。タイマ回路５０は、第２カウンタ５２、第２分周器５４を含む。第２分周器５４はシステムクロックＣＫｓｙｓを分周しクロックＣＫ２を生成する。第２カウンタ５２は、クロックＣＫ２をカウントするダウンカウンタで構成できる。第２カウンタ５２のカウント値が、たとえば最大値からカウントダウンし、ボローが発生した時点で、データ取得時間の経過が判定される。データ取得時間の経過は、データＳ９によって遅延設定部４０に通知される。【００５７】
遅延設定部４０は、フラグＳ８が０である場合、データＳ９によってデータ取得時間の経過が通知されるたびに、遅延量τ１を単位遅延Δｔずつ変化させていく。その結果、ある遅延量τ１を与えた段階で、フラグＳ８が１となり、内部シリアルデータＳ２の変化点が検出される。【００５８】
上述のように、通常の試験時において設定すべきストローブ信号Ｓ６ｂのタイミングは、遅延量τ１に、オフセット遅延量τ２を付加して得ることができる。オフセット遅延設定部４４は、シリアルデータのビットデータのユニットインターバル（周期）に応じて設定されるデータＳ１０にもとづいてオフセット遅延量τ２を設定し、遅延設定部４０に指示する。遅延設定部４０は、オフセット遅延量τ２と、キャリブレーションの結果得られた遅延量τ１を合成し、ストローブ信号Ｓ５を遅延させる。【００５９】
以上のように構成されたデータ受信回路１０の動作を説明する。図４は、図１のデータ受信回路１０の動作を示すフローチャートである。
試験装置１００にＤＵＴ１１０が接続され、キャリブレーションが開始される。まず、試験装置１００はキャリブレーションに必要な初期化が実行される（Ｓ１００）。このとき、遅延量τ１が初期値に設定され、第１カウンタ３２が半値に、第２カウンタ５２が最大値に初期化される。続いて、ＤＵＴ１１０からのシリアルデータＳ１としてキャリブレーションパターンが設定される。（Ｓ１０２）。【００６０】
続いて、第１カウンタ３２、第２カウンタ５２によるカウント動作が開始する（Ｓ１０４）。第２カウンタ５２によりデータ取得時間の経過が判定されると（Ｓ１０６）、変化点判定部３４による変化点の判定処理が実行される。その結果、フラグＳ８が１であれば（Ｓ１０８のＹ）、そのときの可変遅延回路４２に設定された遅延量τ１が保持される（Ｓ１１０）。
通常の試験動作のために、遅延量τ１と、所定のオフセット遅延量τ２を合成した遅延をストローブ信号Ｓ５に付加し、キャリブレーションが完了する。【００６１】
もし、ステップＳ１０８において、フラグＳ８が０であれば（Ｓ１０８のＮ）、遅延設定部４０は遅延量τ１を単位遅延Δｔだけシフトさせる（Ｓ１２０）。さらに、第１カウンタ３２を半値に、第２カウンタ５２を最大値にリセットし（Ｓ１２２）、ステップＳ１０４に戻る。
データ受信回路１０は、フラグＳ８が１となるまで、ステップＳ１０４、Ｓ１０６、Ｓ１０８、Ｓ１２０、Ｓ１２２の処理を繰り返す。【００６２】
以上がデータ受信回路１０の動作である。本実施の形態に係るデータ受信回路１０によれば、上述のように、１と０を統計的に取得し、その出現確率にもとづいて遅延量τ１を調節することにより、ストローブ信号Ｓ６のタイミングを最適化することができる。この際、入力ラッチ回路１４の出力ラッチデータＳ３と、期待値の比較処理を行う必要がないため、ソフトウェア的あるいはハードウェア的な複雑な処理が不要となり、短時間でのキャリブレーションが可能となる。【００６３】
また、図１の構成によれば、データ取得時間の管理や、出力ラッチデータＳ３の統計処理をカウンタを用いて実行できるため、ハードウェアのみでキャリブレーション機構が構成できるという利点もある。さらに、図１の試験装置１００は、シリアルデータＳ１のチャンネルごとにデータ受信回路１０を備えるため、各チャンネル間のスキューを自動的に最適化することができる。【００６４】
上記実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。以下、こうした変形例について説明する。【００６５】
図５は、変形例に係るデータ受信回路１０ｆの構成の一部を示すブロック図である。図５において、図１と同一または同等の構成要素は省略する。図１のデータ受信回路１０では、入力ラッチ回路１４の出力ラッチデータＳ３の１と０の出現確率を、デジタル処理によって判定した。これに対して図５のデータ受信回路１０ｆは、アナログ処理によって判定するものである。電圧変換部７０は、１と０の出現確率をアナログ電圧Ｖｘに変換する。たとえば、電圧変換部７０はアナログフィルタや、チャージポンプ回路で構成することができる。図５において、電圧変換部７０はバッファ７２、キャパシタＣ１を含む。バッファ７２の出力は、出力ラッチデータＳ３に応じてハイレベルまたはローレベルのいずれかを取り、キャパシタＣ１の電荷を充電または放電する。バッファ７２の出力はキャパシタＣ１によって平滑化され、出力ラッチデータＳ３の１と０の出現確率に応じたアナログ電圧Ｖｘが生成される。【００６６】
変化点判定部８０は、アナログ電圧Ｖｘをしきい値電圧ＶＨ、ＶＬと比較する。すなわち、１と０の出現確率が、目標範囲に含まれるかどうかを判定する。変化点判定部８０は、コンパレータ８２、コンパレータ８４、論理判定部８６を含む。コンパレータ８２は、アナログ電圧Ｖｘを上側しきい値電圧ＶＨと比較し、コンパレータ８４は、アナログ電圧Ｖｘを下側しきい値電圧ＶＬと比較する。論理判定部８６は、コンパレータ８２、コンパレータ８４の出力信号を監視し、ＶＬ＜Ｖｘ＜ＶＨとなる状態を検出すると、フラグＳ８を１に設定する。
図５の変形例によっても、出力ラッチデータＳ３の１と０の出現確率が目標範囲に含まれているかを判定することができる。【００６７】
実施の形態では、内部シリアルデータＳ２のポジティブエッジのみを検出するために、キャリブレーション中にストローブ信号Ｓ５を分周する場合を説明した。このほか、以下の処理を行ってもよい。
ストローブ信号Ｓ５の周波数を、シリアルデータＳ１のビットレートと同一に設定して固定する。キャリブレーションパターンが１と０を繰り返す場合、入力ラッチ回路１４の出力ラッチデータは、ひとつおきにポジティブエッジをラッチしたデータとなる。そこで、タイミング判定部３０は、入力ラッチ回路１４の出力ラッチデータをひとつおきに取得して統計処理に反映させてもよい。【００６８】
この処理はたとえば、第１カウンタ３２の動作クロックＣＫ１の周波数をシリアルデータＳ１のビットレートの偶数分の１に設定することにより実現可能である。システムクロックＣＫｓｙｓの周波数が、シリアルデータＳ１のビットレートと同一、整数倍もしくは整数分の１の関係にあれば、第１分周器３６の分周比を適切に設定することにより簡易に実現できる。【００６９】
さらに、別の回路を説明する。図６は、ＣＤＲ回路（クロックデータリカバリ回路）を備える試験装置１００ｂの構成を示すブロック図である。図６の試験装置１００ｂによる試験対象となるＤＵＴ１１０は、通常の動作時において、ＣＤＲに対応したシリアルデータＳ１を生成するものではないとする。すなわち、通常動作時におけるシリアルデータＳ１にはクロックは埋め込まれていない。図６の試験装置１００ｂは、このようなＤＵＴ１１０を試験対象とする。【００７０】
試験時において、ＤＵＴ１１０のシリアルデータＳ１を所定のキャリブレーションパターンに設定する。キャリブレーションパターンには８Ｂ１０Ｂ符号化などによって、クロックを埋め込んでおく。【００７１】
試験装置１００ｂは、クロックリカバリ回路９０、位相比較部９２、ループフィルタ９４、遅延設定部４０、可変遅延回路４２、オフセット遅延設定部４４、を備え、いわゆるＤＬＬ（Delay Locked Loop）回路を構成する。【００７２】
クロックリカバリ回路９０は、内部シリアルデータＳ２に埋め込まれたクロックを抽出して、再生クロックＣＫｒを生成する。クロックリカバリ回路９０は公知の技術を利用すればよいため、詳細な説明は省略する。基準信号生成部６０は、所定の周波数を有するストローブ信号Ｓ５を生成する。ストローブ信号Ｓ５の周波数は、シリアルデータＳ１のビットレートと一致するように設定される。【００７３】
位相比較部９２は、再生クロックＣＫｒと、ストローブ信号Ｓ６の位相差に応じた位相差データを生成する。ループフィルタ９４は、位相差データをフィルタリングし、遅延設定部４０へと出力する。遅延設定部４０には、ループフィルタ９４により生成される遅延制御信号Ｓ１２と、オフセット遅延設定部４４から出力されるオフセット遅延設定信号Ｓ１１が入力され、可変遅延回路４２は、２つの信号に応じた遅延をストローブ信号Ｓ５に与える。キャリブレーション中は、オフセット遅延量は０に設定しておく。【００７４】
図６の試験装置１００ｂの動作を説明する。ＤＵＴ１１０の試験が開始すると、ＤＵＴ１１０にクロックが埋め込まれたキャリブレーションパターンを生成させる。試験装置１００ｂはキャリブレーションパターンから抽出した再生クロックＣＫｒと位相同期するように、ストローブ信号Ｓ５の遅延量τ１を調節する。ＤＬＬがロックすると、トラッキング動作を終了し、その時点の遅延量τ１に、オフセット遅延量τ２を合成する。【００７５】
試験装置１００ｂが多チャンネルのシリアルデータを受信して試験する場合、このＤＬＬ回路を複数個、シリアルデータごとに設けることにより、短時間でスキューを解消することができる。なお、試験装置１００ｂは、ＤＬＬ回路に代えてＰＬＬ回路を利用して構成してもよい。【００７６】
さらに、別の変形例について説明する。図１のデータ受信回路１０において、第１カウンタ３２は、第１分周器３６により生成されるクロックＣＫ１にもとづいて、カウント動作を行った。この場合、クロックＣＫ１の周波数と、出力ラッチデータＳ３のビットレートの関係は一定となっている。一般に、被サンプリングデータ（Ｓ３）と、サンプリング信号（ＲＥ）の周波数が同一、もしくは整数倍または整数分の１の関係にあると、エイリアシングやデッドバンドが発生する場合がある。【００７７】
この問題を回避するために、以下の変形処理を行ってもよい。図７は、図１のデータ受信回路１０の変形例を示すブロック図である。図７のデータ受信回路１０ｄにおいて、タイミング判定部３０ａは、第１分周器３６の後段に、疑似ランダム（ＰＮ：Pseudo Random Noise）パターン発生器３８を備える。ＰＮパターン発生器３８は、第１分周器３６により生成されたクロックＣＫ１を受け、これを利用して疑似ランダムパルス列（以下、パルス列のポジティブエッジをランダムエッジＲＥと称す）を生成する。ランダムエッジＲＥが現れる周波数は一定ではなく、疑似ランダムパルス列のパターンに応じて時々刻々と変化する。【００７８】
図７の変形例によれば、第１カウンタ３２は、ランダムなタイミングで発生するエッジ、つまり周波数が一定でないエッジにもとづいて、出力ラッチデータＳ３の１と０を判定することになるため、出力ラッチデータＳ３とランダムエッジＲＥの周波数に上述の関係が生じにくくなる。その結果、エイリアシングやデッドバンドの発生を抑制できる。【００７９】
実施の形態では、データ受信回路１０への入力がシリアルデータである場合について説明したが、本発明はこれに限定されず、ビットストリームとして入力されるさまざまなデータに適用可能である。【００８０】
実施の形態にもとづき、本発明を説明したが、実施の形態は、本発明の原理、応用を示しているにすぎず、実施の形態には、請求の範囲に規定された本発明の思想を離脱しない範囲において、多くの変形例や配置の変更が可能である。
【産業上の利用可能性】
【００８１】
本発明は試験装置に利用できる。
【図１】
2008114508.tif 000003
【図２】
2008114508.tif 000004
【図３】
2008114508.tif 000005
【図４】
2008114508.tif 000006
【図５】
2008114508.tif 000007
【図６】
2008114508.tif 000008
【図７】
2008114508.tif 000009
【国際調査報告】
2008114508.tif 000010
2008114508.tif 000011
2008114508.tif 000012
2008114508.tif 000013