JP4653869B2 - Delay clock generation apparatus and semiconductor test apparatus - Google Patents

Delay clock generation apparatus and semiconductor test apparatus Download PDF

Info

Publication number
JP4653869B2
JP4653869B2 JP2000141282A JP2000141282A JP4653869B2 JP 4653869 B2 JP4653869 B2 JP 4653869B2 JP 2000141282 A JP2000141282 A JP 2000141282A JP 2000141282 A JP2000141282 A JP 2000141282A JP 4653869 B2 JP4653869 B2 JP 4653869B2
Authority
JP
Japan
Prior art keywords
delay
unit
pulse
delay amount
clock
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.)
Expired - Fee Related
Application number
JP2000141282A
Other languages
Japanese (ja)
Other versions
JP2001033529A (en
Inventor
昌克 須田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advantest Corp
Original Assignee
Advantest Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advantest Corp filed Critical Advantest Corp
Priority to JP2000141282A priority Critical patent/JP4653869B2/en
Publication of JP2001033529A publication Critical patent/JP2001033529A/en
Application granted granted Critical
Publication of JP4653869B2 publication Critical patent/JP4653869B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Pulse Circuits (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、所定の遅延量を有する遅延クロックを生成する遅延クロック生成装置に関し、特に本発明は、生成する遅延量に応じて基準クロックの前縁または後縁を立ち上がりタイミングとするパルスを生成する遅延クロック生成装置に関する。また、該遅延クロック生成装置を備える半導体試験装置に関する。
【0002】
【従来の技術】
図1は、従来のタイミング発生器28を示す。タイミング発生器28は、遅延クロック生成装置10及び基準クロック発生部22を備える。遅延クロック生成装置10は、周期遅延部12、AND回路14、高分解能遅延部16、タイミングメモリ18及びリニアライズメモリ20を有する。高分解能遅延部16は、例えば、複数の遅延素子の組み合わせで複数の遅延量を生成する可変遅延回路であってもよい。
【0003】
タイミングメモリ18は、遅延クロック生成装置10により生成される遅延クロックが有する所定の遅延量のデータを、基準クロックの周期の整数倍の遅延量と、基準クロックの周期未満の遅延量に分けて格納している。タイミングメモリ18は、タイミングメモリ18に格納された所定の遅延量を周期遅延部12及びリニアライズメモリ20に設定することを指定するタイミングセット信号を入力すると、整数倍の遅延量のデータを周期遅延部12に出力し、周期未満の遅延量のデータをリニアライズメモリ20に出力する。
【0004】
リニアライズメモリ20は、周期未満の遅延量を生成する遅延素子の組み合わせを設定する遅延経路データを高分解能遅延部16に出力する。
【0005】
周期遅延部12は、所定の遅延量を有する遅延クロックを生成することを指定する遅延クロック生成開始信号を入力すると、基準クロック発生部22から供給される基準クロックのパルス数をカウントする。周期遅延部12がカウントした基準クロックのパルス数と、整数倍の遅延量のデータが一致した場合、AND回路14は基準クロックに同期した1つのパルスを生成する。
【0006】
高分解能遅延部16は、AND回路14から供給されるパルスをリニアライズメモリ20から供給される遅延経路データにより設定される遅延素子の組み合わせで更に遅延して、所定の遅延量を有する遅延クロックを生成する。
【0007】
図2は、図1を用いて説明した従来のタイミング発生器28のタイミングチャートを示す。遅延クロック生成開始信号に同期してタイミングセット信号が供給される。例えば、13ns及び11nsの遅延量を有する遅延クロックを生成する場合、タイミングセット信号TS1は、13nsの遅延量を有する遅延クロックを生成することを指定し、タイミングセット信号TS2は、11nsの遅延量を有する遅延クロックを生成することを指定する。図2のタイミングチャートの例において、基準クロックの周期は、4nsである。
【0008】
タイミングセット信号TS1が供給されている場合、周期遅延部12は、基準クロックを3回カウントした後、イネーブル信号(論理値“1”)をAND回路14に出力する(A点)。AND回路14は、周期遅延部12からのイネーブル信号と基準クロックに基づいて、12nsの遅延量を有するパルスを出力する(B点)。高分解能遅延部16は、AND回路14から供給されるパルスを更に1ns遅延して出力する。
【0009】
また、タイミングセット信号TS2が供給されている場合、周期遅延部12は、基準クロックを2回カウントした後、イネーブル信号(論理値“1”)を出力する。AND回路14は、周期遅延部12からのイネーブル信号と基準クロックに基づいて、8nsの遅延量を有するパルスを出力する(B点)。高分解能遅延部16は、AND回路14から供給されるパルスを更に3ns遅延して出力する。
【0010】
【発明が解決しようとする課題】
図1に示される従来のタイミング発生器は、基準クロックの周期未満の遅延量を高分解能遅延部16により生成していた。複数の遅延素子の組み合わせで遅延量を生成する高分解能遅延部16は、生成する遅延量に応じて発熱する。発熱量は、生成する遅延量に比例して大きくなる。高分解能遅延部16は、発熱の影響で、生成する遅延量に誤差を生じる。また、電源ノイズによる影響も、遅延量に比例するので、大きな遅延量を生成するにつれて遅延量の誤差が大きくなる。更に、遅延量が大きくなると、高分解能遅延部16が発生する電源ノイズも大きくなる。
【0011】
そこで本発明は、上記の課題を解決することのできる遅延クロック生成装置を提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【0012】
【課題を解決するための手段】
上記課題を解決するために、本発明の第1の形態は、所定の遅延量を有する遅延クロックを生成する遅延クロック生成装置であって、所定の遅延量より短い基準クロックの周期の整数倍の遅延量を生成する周期遅延部と、基準クロックの半周期の遅延量を生成する半周期遅延部と、周期遅延部及び半周期遅延部が生成した遅延量の和と所定の遅延量との差分の遅延量を、周期遅延部及び半周期遅延部が生成した遅延量に加える高分解能遅延部とを備えることを特徴とする遅延クロック生成装置を提供する。
【0013】
第1の形態の一つの態様においては、半周期遅延部は、周期遅延部が生成した遅延量を有する信号を入力し、基準クロックの前縁または後縁のいずれかのタイミングにより入力した信号を高分解能遅延部に供給してもよい。
【0014】
第1の形態の別の態様においては、周期遅延部が、基準クロックの前縁または後縁のいずれか一方を基準として整数倍の遅延量を生成する場合、半周期遅延部は、基準クロックの前縁または後縁の他方を立ち上がりタイミングとするパルスを生成してもよい。また、半周期遅延部は、基準クロックの後縁を立ち上がりタイミングとするパルスを生成する論理ゲートを有してもよい。また、周期遅延部が生成した遅延量を有するパルスを基準クロックに基づいて生成する論理ゲートを更に備え、半周期遅延部は、論理ゲートにより生成されたパルスのパルス幅を所定のパルス幅に調整するパルス幅調整部とを有してもよい。
【0015】
また、パルス幅調整部は、所定のパルス幅分の遅延量を生成する遅延素子を有してもよい。また、整数倍の遅延量を周期遅延部に設定するデータを格納する第1記憶部と、基準クロックの半周期の遅延量を半周期遅延部に設定するデータを格納する第2記憶部と、所定の遅延量から第1記憶部に格納されたデータにより設定される遅延量及び第2記憶部に格納されたデータにより設定される遅延量を除いて得られる遅延量を高分解能遅延部に設定するデータを格納する第3記憶部とを更に備えてもよい。また、周期遅延部は、基準クロックのパルス数を計数するカウンタと、パルス数が第1記憶部に格納されているデータと等しいか否かを判定する論理ゲートとを有してもよい。
【0016】
また、第3記憶部に格納されたデータにより設定される遅延量を生成する高分解能遅延部における遅延経路を格納するリニアライズメモリと、リニアライズメモリに遅延経路を格納させるリニアライズメモリ格納制御部とを更に備え、リニアライズメモリ格納制御部は、所定のパルス幅を有する測定用パルスを生成する測定用パルス生成部と、測定用パルスを入力するパルス入力部と、パルス入力部から供給される測定用パルスを反転して周期遅延部及び半周器遅延部の少なくとも一方に供給するパルス成形部と、パルス成形部が周期遅延部及び半周期遅延部の少なくとも一方に、所定の時間間隔に渡り供給した測定用パルスの個数を計数するカウンタ部と、カウンタ部が計数した測定用パルスの個数に基づいて、遅延経路の遅延量を測定して、測定した遅延量と遅延経路とを対応付けてリニアライズメモリに格納させる遅延量測定部とを有してもよい。
【0017】
また、半周期の遅延量を生成するか否かに基づいて、パルス生成部に測定用パルスを反転するか否かを指定する半周期遅延検出部を更に備えてもよい。また、基準クロックの前縁のタイミングで生成される遅延量を測定する場合に、半周期遅延検出部は、パルス生成部に測定用パルスを反転することを指定してもよい。また、パルス成形部は、測定用パルスを反転する論理ゲートを有してもよい。また、遅延量測定部は、測定用パルスを反転することにより生じる位相と、測定用パルスを反転しないことにより生じる位相とのずれ量を、遅延経路の遅延量に加えてリニアライズメモリに格納させてもよい。
【0018】
本発明の第2の形態は、半導体デバイスを試験する半導体試験装置において、所定の遅延量より短い基準クロックの周期の整数倍の遅延量を生成する周期遅延部と、基準クロックの半周期の遅延量を生成する半周期遅延部と、周期遅延部及び半周期遅延部が生成した遅延量の和と所定の遅延量との差分の遅延量を、周期遅延部及び半周期遅延部が生成した遅延量に加える高分解能遅延部とを有し、所定の遅延量を有する遅延クロックを生成するタイミング発生器と、半導体デバイスへ入力する試験パターンを発生するパターン発生器と、遅延クロックと試験パターンとに基づいて、半導体デバイスに適用するように試験パターンを整形した整形試験パターンを出力する波形整形器と、半導体デバイスに整形試験パターンを入力するデバイス接触部と、整形試験パターンを入力した半導体デバイスから出力される出力信号と、パターン発生器から出力される半導体デバイスから出力されるべき期待値とを比較して半導体デバイスの良否を判定する比較器とを備えることを特徴とする半導体試験装置を提供する。
【0019】
なお上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションも又発明となりうる。
【0020】
【発明の実施の形態】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態はクレームにかかる発明を限定するものではなく、又実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0021】
図3は、半導体試験装置の1つの実施形態を示すブロック図である。この半導体試験装置は、パターン発生器24、遅延信号生成装置30、デバイス接触部32及び比較器34を備える。遅延信号生成装置30は、波形整形器26及びタイミング発生器28を有する。
【0022】
被試験デバイス36が、デバイス接触部32に電気的に接触するように取り付けられる。パターン発生器24は、被試験デバイス36に入力する試験パターンであるパターンデータ及び、パターンデータを入力した被試験デバイス36から出力されるべき期待値データを生成する。パターン発生器24は、パターンデータを波形整形器26に出力し、期待値データを比較器34に出力する。また、パターン発生器24は、被試験デバイス36の動作特性に応じた所定の遅延量を有する遅延クロックの生成に必要なデータを、周期遅延部12(図示しない)及びリニアライズメモリ20(図示しない)に設定することを指定するタイミングセット信号をタイミング発生器28に出力する。
【0023】
タイミング発生器28は、タイミングセット信号で指定される遅延量を有する遅延クロックを生成して波形整形器26に出力する。
【0024】
波形整形器26は、タイミング発生器28から供給される遅延クロックに基づいて、パターンデータを整形し、被試験デバイス36の動作特性に応じた整形パターンデータをデバイス接触部32に出力する。被試験デバイス36は、整形パターンデータに対する出力値をデバイス接触部32を介して比較器34に出力する。比較器34は、出力値とパターン発生器24から供給される期待値データを比較して被試験デバイス36の良否を判定する。
【0025】
図4は、タイミング発生器28の1つの実施形態を示すブロック図である。タイミング発生器28は、基準クロック発生部22及び遅延クロック生成装置10を備える。遅延クロック生成装置10は、周期遅延部12、半周期遅延部40、高分解能遅延部16、タイミングメモリ18及びリニアライズメモリ20を有する。タイミングメモリ18は、第1記憶部18a、第2記憶部18b及び第3記憶部18cを有する。高分解能遅延部16は、例えば複数の遅延素子を有し遅延素子の組み合わせで複数の遅延量を生成する可変遅延回路であってもよい。
【0026】
タイミングメモリ18は、遅延クロック生成装置10により生成される所定の遅延量のデータを、第1記憶部18a、第2記憶部18b及び第3記憶部18cに格納する。第1記憶部18aは、所定の遅延量より短い基準クロックの周期の整数倍の遅延量を周期遅延部12に設定するデータを格納している。第2記憶部18bは、基準クロックの半周期の遅延量を半周期遅延部40に設定するデータを格納している。第3記憶部18cは、所定の遅延量から第1記憶部に格納されたデータにより設定される遅延量及び第2記憶部に格納されたデータにより設定される遅延量を除いて得られる遅延量を高分解能遅延部16に設定するデータを格納している。
【0027】
タイミングメモリ18は、タイミングセット信号を入力すると、第1記憶部18a、第2記憶部18b及び第3記憶部18cに格納されたデータをそれぞれ周期遅延部12、半周期遅延部40及びリニアライズメモリ20に出力する。
【0028】
周期遅延部12は、遅延クロック生成開始信号を入力すると、基準クロック発生部22から供給される基準クロックのパルス数をカウントする。周期遅延部12は、基準クロックのカウント値と、第1記憶部18aにより設定されたデータが一致した場合に、一致を示す一致信号を半周期遅延部40に出力する。半周期遅延部40は、周期遅延部12から一致信号が供給されると、第2記憶部18bに格納されたデータに基づいて周期遅延部12が生成した遅延量に基準クロックの半周期の遅延量を加えるか否かの設定をする。例えば、半周期遅延部40は、基準クロックの前縁または後縁のいずれかのタイミングによりパルスを生成してもよい。第2記憶部18bに格納されたデータが基準クロックの半周期の遅延量を加えることを指定するデータであり、周期遅延部12が基準クロックの前縁または後縁のいずれか一方を基準として基準クロックの周期の整数倍の遅延量を生成する場合、半周期遅延部40は、基準クロックの前縁または後縁の他方のエッジを立ち上がりタイミングとするパルスを生成してもよい。
【0029】
高分解能遅延部16は、半周期遅延部40から供給されるパルスを、リニアライズメモリ20から供給される遅延経路データにより設定される遅延素子の組み合わせで更に遅延して所定の遅延量を有する遅延クロックを生成する。
【0030】
図5は、図4を用いて説明したタイミング発生器28の詳細な構成を示すブロック図である。図5において図4と同一の符号を付した構成は、図4の対応する構成と同一または同様の機能及び動作を行う。タイミング発生器28は、基準クロック発生部22及び遅延クロック生成装置10を備える。遅延クロック生成装置10は、周期遅延部12、半周期遅延部40、高分解能遅延部16、第1記憶部18a、第2記憶部18b、第3記憶部18c及びリニアライズメモリ20を有する。周期遅延部12は、カウンタ62、ENOR回路(54a、54b・・・54i)及びAND回路56aを有する。半周期遅延部40は、AND回路(56b、56c、56d及び56e)、フリップフロップ58a及び58b、並びにOR回路60を有する。
【0031】
図5に示される基準クロック発生部22は、4nsの周期の基準クロックを発生する。例えば、11nsの遅延量を有する遅延クロックを生成する場合、第1記憶部18aは、8nsの遅延量を周期遅延部12に設定するデータ(000000010)を9ビットのデータとして格納している。第2記憶部18bは、基準クロックの半周期(2ns)の遅延量を半周期遅延部40に設定するデータ(論理値「1」)を1ビットのデータとして格納している。第3記憶部18cは、11nsの遅延量から8ns及び2nsの遅延量を除いた1nsの遅延量を高分解能遅延部16に設定するデータ(1000000)を7ビットのデータとして格納している。
【0032】
カウンタ62は、遅延クロック生成開始信号を入力すると基準クロックのカウントを開始する。カウンタ62は、基準クロックをパルスの立ち上がりでカウントし、9ビットのデータとして出力する。また、他の実施形態において、カウンタ62は、基準クロックをパルスの立ち下がりでカウントしてもよい。ENOR回路54aは、カウンタ62から出力されるカウント値の最下位ビットと、第1記憶部18aに格納されているデータの最下位ビットが同一の論理値のときに論理値“1”を出力する。ENOR回路54b〜54iは、ENOR回路54aと同様に、それぞれ対応するビットが同一のときに論理値“1”を出力する。AND回路56aは、ENOR回路(54a〜54i)の出力値が全て論理値“1”の場合に論理値“1”を出力する。従って、第1記憶部18aに格納されているデータが000000010(8nsの遅延量を設定するデータ)の場合、周期遅延部12は、カウント値が000000010(基準クロックのパルスを2回カウントしたことを示す)になると論理値“1”を半周期遅延部40に出力する。
【0033】
第1記憶部18aに格納されているデータとカウント値が等しくなった場合に、第2記憶部18bに格納されているデータが論理値“0”ならば、AND回路56bから論理値“1”が出力される。フリップフロップ58aは、AND回路56bからの出力値(論理値“1”)を基準クロックの立ち下がりのタイミングで保持する。AND回路56dは、基準クロックの前縁を立ち上がりタイミングとするパルスを生成し、OR回路60を介して高分解能遅延部16に出力する。
【0034】
第1記憶部18aに格納されているデータとカウント値が等しくなった場合に、第2記憶部18bに格納されているデータが論理値“1”ならば、AND回路56cから論理値“1”が出力される。フリップフロップ58bは、AND回路56cからの出力値(論理値“1”)を基準クロックの立ち上がりのタイミングで保持する。AND回路56eは、基準クロックの後縁を立ち上がりタイミングとするパルスを生成し、OR回路60を介して高分解能遅延部16に出力する。
【0035】
他の実施形態において、カウンタ62が、パルス数をパルスの立ち下がりでカウントする場合に、基準クロックの半周期の遅延量を加えるならば、半周期遅延部40は、基準クロックの前縁を立ち上がりタイミングとするパルスを生成してもよい。また、基準クロックの半周期の遅延量を加えないならば、半周期遅延部40は、基準クロックの後縁を立ち上がりタイミングとするパルスを生成してもよい。
【0036】
高分解能遅延部16は、半周期遅延部40から供給されるパルスを、リニアライズメモリ20から供給される遅延経路データにより設定される遅延素子の組み合わせで更に遅延して、所定の遅延量を有する遅延クロックを生成する。
【0037】
図23は、図5を用いて説明したタイミング発生器28の他の実施形態の機能ブロック図である。図23において、図5と同一の符号を付した構成は、図5の対応する構成と同一または同様の機能及び構成を行うので説明を省略する。図23において、リニアライズメモリ20は基準クロックの半周期の遅延量を半周期遅延部40に設定するデータを格納する。
【0038】
リニアライズメモリ20は、基準クロックの半周期の遅延量を生成することを指定する信号を半周期遅延部40に出力する。例えば、リニアライズメモリ20は、最上位ビットに基準クロックの半周期の遅延量を設定するデータ(論理値「1」)を格納する。リニアライズメモリ20は基準クロックの半周期の遅延量を設定するデータを格納するので、基準クロックの半周期の遅延量を生成することを指定できる。
【0039】
図6は、図5を用いて説明したタイミング発生器28のタイミングチャートを示す。遅延クロック生成信号に同期してタイミングセット信号が供給される。例えば、13ns及び11nsの遅延量を有する遅延クロックを生成する場合、タイミングセット信号TS1は、13nsの遅延量を有する遅延クロックを生成することを指定し、タイミングセット信号TS2は、11nsの遅延量を有する遅延クロックを生成することを指定する。
【0040】
タイミングセット信号TS1が供給される場合、周期遅延部12が、基準クロックを3回カウントした後、図5のA1点がイネーブル(論理値“1”)になる。AND回路56dは、基準クロックの前縁を立ち上がりタイミングとする12nsの遅延量を有するパルスを生成する(B1点)。高分解能遅延部16は、OR回路60から供給されるパルスを更に1ns遅延して13nsの遅延量を有する遅延クロックを生成する。
【0041】
タイミングセット信号TS2が供給される場合、周期遅延部12が、基準クロックを3回カウントした後、図5のA2点がイネーブル(論理値“1”)になる。AND回路56eは、基準クロックの後縁を立ち上がりタイミングとする10nsの遅延量を有するパルスを生成する(B2点)。高分解能遅延部16は、OR回路60から供給されるパルスを更に1ns遅延して11nsの遅延量を有する遅延クロックを生成する。従って、本実施形態において、高分解能遅延部16は、基準クロックの半周期未満の遅延量を生成すればよい。
【0042】
しかしながら、現実には、高分解能遅延部16に含まれる遅延素子の品質のばらつきや、遅延素子を使用する際の温度条件や電圧条件等によって、遅延素子により実際に生成される遅延量と設計した遅延量との間に誤差が生じる場合がある。このため、高分解能遅延部16は、遅延素子の品質のばらつきを考慮した上で、基準クロックの周期から、基準クロックのパルス幅を減じた時間より大きい遅延量を生成できることが好ましい。例えば、基準クロックの周期が4000psで、基準クロックのパルス幅が2000psの場合、高分解能遅延部16は、0ps〜2500ps程度の遅延量を生成することが好ましい。
【0043】
基準クロックの半周期が2000ps、高分解能遅延部16が0ps〜2500psの遅延量を生成できる場合に、遅延クロック生成装置10は、高分解能遅延部16により0〜2500psの遅延量を生成できる。また、遅延クロック生成装置10は、基準クロックの後縁のタイミングで生成したパルスを高分解能遅延部16により遅延することにより2000ps〜4500psの遅延量を生成できる。
【0044】
遅延クロック生成装置10は、2000ps〜2500psの遅延量を、高分解能遅延部16により生成する第1生成方法と、基準クロックの後縁のタイミングで生成したパルスを高分解能遅延部16により遅延して生成する第2生成方法の2つの方法で生成することができる。
【0045】
例えば、2010psの遅延量を生成する場合に、遅延クロック生成装置10は、高分解能遅延部16により2010psの遅延量を生成する第1生成方法と、基準クロックの後縁のタイミングで生成したパルスを高分解能遅延部16により10ps遅延して2010psの遅延量を生成する第2生成方法のいずれかの方法で生成できる。
【0046】
図7は、2000ps〜2500psの遅延量を、基準クロックの第1サイクルにおいて、第2生成方法で生成し、基準クロックの第2サイクルにおいて、第1生成方法で生成するときのタイミングチャートを示す。第1サイクルにおいて、2000ps〜2500psの遅延量を第2生成方法で生成する場合、基準クロックの後縁のタイミングでパルスが生成される(図5のB2点)。第2サイクルにおいて、2000ps〜2500psの遅延量を第1生成方法で生成する場合、基準クロックの前縁のタイミングでパルスが生成される(図5のB1点)。従って、図5のB3点でパルスが重なってしまう。B3点でパルスが重ならないように、遅延量の生成方法を設定する必要がある。
【0047】
図8は、図7を用いて説明した第1生成方法及び第2生成方法により遅延量を設定するデータと遅延量の関係を示す図である。遅延クロック生成装置10は、第1生成方法で0ps〜2000psの遅延量を生成でき、第2生成方法で2000psから4500psの遅延量を生成できる。図8において、2000ps〜2500psの遅延量は、第1生成方法及び第2生成方法のいずれかの方法で生成できる。図7を用いて説明したB3点でパルスが重ならないように、重複部分の遅延量の生成方法を設定する必要がある。本実施形態においては、パルスが重ならないように重複部分の遅延量は、第1生成方法により生成する。従って、重複部分においては、第2記憶部18bには、論理値“0”が格納され、第3記憶部18cに基準クロックの周期未満のデータが格納される。また、他の実施形態においては、重複部分の遅延量を第2生成方法により生成してもよい。
【0048】
図9は、タイミング発生器28の他の実施形態を示すブロック図である。このタイミング発生器28は、基準クロック発生部22及び遅延クロック生成装置10を備える。遅延クロック生成装置10は、周期遅延部12、AND回路42、半周期遅延部40、高分解能遅延部16、タイミングメモリ18及びリニアライズメモリ20を有する。半周期遅延部40は、パルス幅調整部44を有する。タイミングメモリ18は、第1記憶部18a、第2記憶部18b及び第3記憶部18cを有する。図9において図4と同一の符号を付した構成は、図4の対応する構成と同一または同様の機能及び動作を行う。
【0049】
タイミングメモリ18は、タイミングセット信号を入力すると、第1記憶部18a、第2記憶部18b及び第3記憶部18cに格納されたデータをそれぞれ周期遅延部12、半周期遅延部40及びリニアライズメモリ20に出力する。例えば、基準クロックの周期が4nsで、11nsの遅延量を有する遅延クロックを生成する場合、第1記憶部18aは、8nsの遅延量を周期遅延部12に設定するデータを格納している。第2記憶部18bは、基準クロックの半周期(2ns)の遅延量を半周期遅延部40に設定するデータを格納している。第3記憶部18cは、11nsの遅延量から8ns及び2nsの遅延量を除いた1nsの遅延量を高分解能遅延部16に設定するデータを格納している。
【0050】
周期遅延部12は、遅延クロック生成開始信号を入力すると、基準クロック発生部22から供給される基準クロックのパルス数をカウントする。周期遅延部12がカウントした基準クロックのパルス数と、第1記憶部18aにより設定されたデータが一致した場合、AND回路42は、基準クロックに基づいて1つのパルスを生成する。例えば、基準クロックの周期が4nsで、第1記憶部18aが8nsの遅延量を周期遅延部12に設定するデータを格納している場合、周期遅延部12が基準クロックのパルスを2回カウントするとAND回路42が1つのパルスを生成する。
【0051】
半周期遅延部40が有するパルス幅調整部44は、半周期遅延部40が生成するパルスのパルス幅を所定のパルス幅に設定するために設けられる。半周期遅延部40は、第2記憶部18bに格納されたデータに基づいてAND回路42から供給されるパルスの前縁または後縁のタイミングを立ち上がりタイミングとする所定のパルス幅を有するパルスを生成する。例えば、第2記憶部18bが基準クロックの半周期の遅延量を半周期遅延部40に設定するデータを格納している場合、AND回路42から供給されるパルスの後縁を立ち上がりタイミングとするパルスを生成する。
【0052】
高分解能遅延部16は、半周期遅延部40から供給されるパルスを、リニアライズメモリ20から供給される遅延経路データにより設定される遅延素子の組み合わせで更に遅延して所定の遅延量を有する遅延クロックを生成する。
【0053】
図10は、半周期遅延部40の詳細な構成を示すブロック図である。第2記憶部18bに格納されているデータが論理値“1”の場合、AND回路48が有効になる。パルス幅調整部44は、AND回路42から供給されるパルスを所定のパルス幅pwdだけ遅延する。例えば、パルス幅調整部44は、所定のパルス幅pwdだけ入力信号を遅延する遅延素子であってよい。AND回路48は、AND回路42から供給されるパルス及びパルス幅調整部44により遅延されたパルスの論理積をとり、AND回路42から供給されるパルスの後縁を立ち上がりタイミングとする所定のパルス幅pwdを有するパルスを生成する。
【0054】
第2記憶部18に格納されているデータが論理値"0"の場合、AND回路50が有効になる。パルス幅調整部44は、AND回路42から供給されるパルスを所定のパルス幅pwdだけ遅延する。AND回路50は、AND回路42から供給されるパルス及びパルス幅調整部44により遅延されたパルスの論理積をとり、AND回路42から供給されるパルスの前縁を立ち上がりタイミングとする所定のパルス幅pwdを有するパルスを生成する。OR回路52は、AND回路48またはAND回路50のいずれかにより生成されたパルスを高分解能遅延部16に出力する。
【0055】
図11は、図10を用いて説明した半周期遅延部40のタイミングチャートを示す。第2記憶部18bに格納されているデータが論理値“0”の場合、半周期遅延部40は、AND回路42から供給されるパルスの前縁を立ち上がりタイミングとする所定のパルス幅pwdを有するパルスを生成する。
【0056】
第2記憶部18bに格納されているデータが論理値“1”の場合、半周期遅延部40は、AND回路42から供給されるパルスの後縁を立ち上がりタイミングとする所定のパルス幅pwdを有するパルスを生成する。
【0057】
図12は、図10を用いて説明したタイミング発生器28のタイミングチャートを示す。遅延クロック生成信号に同期してタイミングセット信号が供給される。例えば、13ns及び11nsの遅延量を有する遅延クロックを生成する場合、タイミングセット信号TS1は、13nsの遅延量を有する遅延クロックを生成することを指定し、タイミングセット信号TS2は、11nsの遅延量を有する遅延クロックを生成することを指定する。
【0058】
タイミングセット信号TS1が供給される場合、周期遅延部12が、基準クロックを4回カウントした後、図10のD点がイネーブル(論理値“1”)になる。AND回路42は、12nsの遅延量を有するパルスを生成する(E点)。半周期遅延部40は、AND回路42から供給されるパルスの前縁を立ち上がりタイミングとし、所定のパルス幅pwdを有するパルスを高分解能遅延部16に出力する(F点)。高分解能遅延部16は、半周期遅延部40から供給されるパルスを更に1ns遅延して13nsの遅延量を有する遅延クロックを生成する。
【0059】
タイミングセット信号TS2が供給される場合、周期遅延部12が、基準クロックを3回カウントした後、図10のD点がイネーブル(論理値“1”)になる。AND回路42は、8nsの遅延量を有するパルスを生成する(E点)。半周期遅延部40は、AND回路42から供給されるパルスの後縁を立ち上がりタイミングとし、所定のパルス幅pwdを有するパルスを高分解能遅延部16に出力する(F点)。高分解能遅延部16は、半周期遅延部40から供給されるパルスを更に1ns遅延して11nsの遅延量を有する遅延クロックを生成する。
【0060】
遅延クロック生成装置10により遅延クロックを生成する場合、予め遅延経路データをリニアライズメモリ20に格納する必要がある。遅延クロック生成装置10は、ループ測定により各遅延素子の組み合わせで生成される遅延量を測定し、所望の遅延量を生成する遅延経路を特定する遅延経路データをリニアライズメモリ20に格納する。リニアライズメモリ20に遅延経路データを格納した後、遅延クロック生成装置10は、波形整形器26に供給する遅延クロックを生成する実動作をする。
【0061】
図13は、ループ測定時及び実動作時における、遅延クロック生成装置10が生成する遅延量を示す。直線Aは、ループ測定時での遅延量を示す。直線Bは、実動作時での遅延量を示す。高分解能遅延部16のみで遅延量を生成する第1生成方法により、遅延量を生成する場合は、ループ測定時と実動作時とで誤差は生じない。しかしながら、周期遅延部12と半周期遅延部40と高分解能遅延部16とで遅延量を生成する第2生成方法により、遅延量を生成する場合は、ループ測定時と実動作時とで誤差が生じる。
【0062】
図14は、リニアライズメモリ20に遅延経路データを格納させるリニアライズメモリ格納制御部100と、図4を用いて説明した遅延クロック生成装置10を複数備えるタイミング発生器28の機能ブロック図である。リニアライズメモリ格納制御部100は、OR回路102、第1パルス成形部104、バッファ105、半周期遅延検出部106、AND回路108、OR回路110、測定パルス生成部111、第2パルス成形部112、AND回路114、カウンタ部116、遅延量測定部118を備える。OR回路110は、請求項9に記載したパルス入力部に該当する。ループ測定をする場合に、リニアライズメモリ格納制御部100は、AND回路108、OR回路110、第2パルス成形部112、AND回路114、OR回路102、第1パルス成形部104及び遅延クロック生成装置10を含む閉回路を動作可能にする。閉回路を動作可能にする場合に、リニアライズメモリ格納制御部100は、AND回路108及びAND回路114の、Loop Enable端子に論理値「1」が印加する。従って、リニアライズメモリ格納制御部100は、閉回路を動作可能にすることができる。
【0063】
測定パルス生成部111は遅延量の測定に用いる測定パルスを生成する。例えば、測定パルス生成部111は、1つのパルスを測定パルスとして生成する。測定パルス生成部111は生成した測定パルスをOR回路110を介して閉回路に出力する。測定パルスは、遅延クロック生成装置10を含む閉回路を周回する。
測定パルスのパルス幅は、周回中に測定パルスが通過する半導体ゲートの、立ち上がり時間と、立ち下がり時間の違いにより減少または拡大してしまう。第1パルス成形部104及び第2パルス成形部112は、測定パルスのパルス幅を補正する。バッファ105は、第1パルス成形部104から供給される測定パルスを遅延クロック生成装置(10a、10b・・・)に出力する。
【0064】
カウンタ部116は、一定期間における測定パルスの周回数を測定し、最小の遅延量を有する最小遅延経路が選択されたときの周波数と、他の遅延経路が選択されたときの周波数との差を遅延量測定部118に出力する。遅延量測定部118は、最小遅延経路が選択されたときの周波数と、他の遅延経路が選択されたときの周波数との差に基づいて、所定の遅延時間に最も近い遅延量を有する遅延経路を選択する。遅延量測定部118は、選択した遅延経路を特定する遅延経路データをリニアライズメモリ20に格納させる。
【0065】
ここで、図13を用いて説明した誤差が生じる理由について、図15(a)を用いて説明する。図15(a)は、第2パルス成形部112から出力されるパルスと、第1パルス成形部104から出力されるパルスとを示す。第1パルス成形部104から出力されるパルスの前縁及び後縁は静定(settling)していない。例えば、バッファ105の駆動能力を高くすることで、第1パルス成形部104から出力されるパルスを静定することはできる。また、例えば、バッファ105の段数を増やすことで、第1パルス成形部104から出力されるパルスを静定することはできる。しかしながら、バッファ105の駆動能力を高めることや、バッファ105の段数を増やすことにより、消費電力の増大、電源ノイズの増大、伝搬遅延時間の増大などの問題が生じてしまう。消費電力の増大により、LSIの高密度化が困難になってくる。また、電源ノイズの増大や、伝搬遅延時間の増大は、精度劣化につながる。
【0066】
バッファ105の駆動能力を低くし、バッファ105の段数を減らすことで、消費電力を低減し、電源ノイズを減少させ、伝搬遅延時間を減少することができる。しかしながら、図15(a)に示すパルスの様にパルスの前縁及び後縁が静定(settling)しなくなってしまう。パルスの前縁及び後縁が静定しないので、パルスの波高値まで電圧が達しなくなり位相ずれを生じてしまう。この位相ずれは、パルス同士の干渉により起こり、これを符号間干渉と定義する。この位相ずれが、図13を用いて説明したループ測定時における遅延量と実動作時における遅延量との誤差になる。
【0067】
図15(a)において、ループ測定時の測定パルスの前縁の位相から、実動作時の基準クロックの前縁の位相を減じた値をa、ループ測定時の測定パルスの後縁の位相から、実動作時の基準クロックの後縁の位相を減じた値をbとする場合に、リニアリティ誤差は、b−aとなる。ループ測定時と、実動作時とでは、前パルスから受ける干渉の受け方が異なってくるので、図13を用いて説明したループ測定時における遅延量と実動作時における遅延量との誤差になる。また、実動作時において前パルスから受ける干渉は、パルスの後縁が前パルスから受ける干渉の実動作時とループ測定時との差分より、パルスの前縁が前パルスから受ける干渉の方が大きくなる。
【0068】
図16(a)は、符号間干渉をシミュレーションした結果である。図16(b)は、図16(a)と同一のシミュレーション結果であって、10ns付近を拡大表示した図である。図16(b)より、実動作時の第1パルス成形部104の出力を示す曲線「実動作」と、ループ測定時の第1パルス成形部104の出力を示す曲線「true」との位相のずれが分かる。図16(b)より、符号間干渉による位相のずれは、前縁の方が大きいことがわかる(a>b)。また、後縁部の符号間干渉による位相のずれは小さいことがわかる。発明者は、このシミュレーション結果に基づき、ループ測定時には、後縁部のタイミングで遅延量を生成させることで符号間干渉による位相のずれを抑制することを考えた。
【0069】
図15(b)は、第2パルス成形部112から出力されるパルスと、第1パルス成形部104から出力される第2パルス成形部112から供給されるパルスを反転したパルスとを示す。図15(b)において、ループ測定時の測定パルスの前縁の位相から、実動作時の基準クロックの前縁の位相を減じた値をc、ループ測定時の測定パルスの後縁の位相から、実動作時の基準クロックの後縁の位相を減じた値をbとする場合に、リニアリティ誤差は、b−cとなる。反転した測定パルスの後縁のタイミングで、遅延量を生成させることにより、ループ測定時の遅延量と、実動作時の遅延量との誤差を抑制することができる。図16(b)により、ループ測定時の第2パルス成形部112の出力を反転することで生成される出力を示す曲線「nega」と、曲線「実動作」との位相のずれは小さいことがわかる。従って、遅延クロック生成装置10が基準クロックの前縁のタイミングに基づいて生成する遅延量をループ測定する場合に、測定パルスを反転して遅延クロック生成装置10に供給することで、符号間干渉の影響を抑制することができる。
【0070】
図14を用いて説明した半周期遅延検出部106は、基準クロックの半周期の遅延量を生成するか否かを検出して、検出した結果に基づいて第1パルス成形部104に遅延クロック生成装置10に供給する測定パルスを成形させる。例えば、半周期遅延検出部106は、ループ測定する遅延量が、基準クロックの前縁のタイミングに基づいて生成される遅延量か否かを判定する。前縁のタイミングに基づいて生成する遅延量と判定した場合に、半周期遅延検出部106は、測定パルスを反転してバッファ105に出力することを第1パルス成形部104に指示する。例えば、半周期遅延検出部106は、ループ測定する遅延量が、基準クロックの後縁のタイミングに基づいて生成する遅延量か否かを判定する。後縁のタイミングに基づいて生成する遅延量と判定した場合に、半周期遅延検出部106は、測定パルスを反転せずにバッファ105に出力することを第1パルス成形部104に指示する。従って、リニアライズメモリ格納制御部100は、基準クロックの半周期の遅延量を生成するか否かに基づいて第1パルス成形部104に遅延クロック生成装置10に供給する測定パルスを成形させることができる。
【0071】
また、半周期遅延検出部106は、基準クロックの前縁のタイミングに基づいて生成する遅延量と判定した場合に、ループ測定により得られた遅延量を補正することを遅延量測定部118に要求する。遅延量測定部118は、カウンタ部116から供給される値を補正する処理をする。補正については後述する。従って、半周期遅延検出部106は、測定パルスを成形させることができるので、符号間干渉の影響を抑制することができる。符号間干渉の影響を抑制することができるので、ループ測定時に測定される遅延量と実動作時に生成される遅延量との誤差を抑制することができる。
【0072】
図17は、第1パルス成形部104の詳細な機能ブロック図である。第1パルス成形部104は、NAND回路120、NAND回路122、インバータ124、可変遅延回路126、AND回路128、AND回路130、AND回路132、可変遅延回路134及びOR回路136を有する。NAND回路120は、一端に基準クロックまたは測定パルスを入力し、他端に設定値sel1を入力する。NAND回路120は、入力端子に与えられた論理値に基づく出力値をAND回路128の一端に出力する。
【0073】
インバータ124は、基準クロックまたは測定パルスを入力して、反転した信号をNAND回路122の一端に出力する。NAND回路122は、インバータ124から供給される信号を一端に入力する。NAND回路122は他端に設定値sel2を入力する。NAND回路122は、入力端子に与えられた論理値に基づく出力値を可変遅延回路126に出力する。可変遅延回路126は、NAND回路122から供給される出力値を遅延してAND回路128の一端に出力する。例えば、可変遅延回路126は、NAND回路122から供給される出力値をΔt1遅延してAND回路128の一端に出力する。
【0074】
AND回路128は、NAND回路120及び可変遅延回路126から供給される出力値の論理積をAND回路130及びAND回路132のそれぞれ一端に出力する。AND回路130は、AND回路128から供給される論理積値を一端に入力し、他端に設定値sel3を入力する。AND回路130は、入力端子に与えられた論理値の論理積値をOR回路136に出力する。AND回路132は、AND回路128から供給される論理積値を一端に入力し、他端に設定値sel4を入力する。AND回路132は、入力端子に与えられた論理値の論理積値を可変遅延回路134に出力する。可変遅延回路134は、AND回路132から供給される出力値を遅延してOR回路136の一端に出力する。例えば、可変遅延回路134は、AND回路132から供給される出力値をΔt2遅延してOR回路136の一端に出力する。OR回路136は、入力端子に与えられた論理積値の論理和を出力する。
【0075】
図18は、図17を用いて説明した設定値sel1、sel2、sel3及びsel4に与える設定値と第1パルス成形部104の各機能ブロックからの出力波形を示す。図18(a)は、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」を設定した場合のタイミングチャートである。この設定により、入力したパルスの後縁のタイミングを前縁とする、パルス幅が可変遅延回路126の遅延量Δt1と可変遅延回路134の遅延量Δt2との和のパルスを出力することができる。つまり、入力したパルスのパルス幅ぶん、位相をずらしたパルスを生成することができる。
【0076】
図18(b)は、設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」を設定した場合の出力波形を示す。設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」を設定することにより、第1パルス成形部104は、入力した測定パルスを反転して出力することができる。図14において説明した第2パルス成形部112は、図17を用いて説明した第1パルス成形部104の詳細な機能ブロックと同一の構成なので説明を省略する。図14を用いて説明した半周期遅延検出部106は、基準クロックの前縁のタイミングで生成する遅延量をループ測定する場合に、設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」を第1パルス成形部104に設定する。
【0077】
図19(a)は、基準クロックの前縁のタイミングで遅延量を生成する場合の、第1パルス成形部104及び第2パルス成形部112に設定される設定値を示す。第1パルス成形部104には、設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」が設定される。従って、第1パルス成形部104は、測定パルスを反転して出力することができる。第2パルス成形部112には、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」が設定される。従って、第2パルス成形部112は、入力したパルスのほぼパルス幅ぶん、位相をずらしたパルスを出力することができる。
【0078】
図19(b)は、基準クロックの後縁のタイミングで遅延量を生成する場合の、第1パルス成形部104及び第2パルス成形部112に設定される設定値を示す。第1パルス成形部104には、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」が設定される。従って、第1パルス成形部104は、入力したパルスのほぼパルス幅ぶん、位相をずらしたパルスを出力することができる。第2パルス成形部112には、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」が設定される。従って、第2パルス成形部112は、入力したパルスのほぼパルス幅ぶん、位相をずらしたパルスを出力することができる。従って、第1パルス成形部104は、測定する遅延量に応じて、測定パルスを成形することができるので、ループ測定時の遅延量と、実動作時の遅延量との誤差を抑制することができる。
【0079】
図20(a)は、後縁のタイミングで遅延量を生成する場合におけるループ測定時の閉回路の状態を示す。第2パルス成形部112のNAND回路120、インバータ124、NAND回路122、可変遅延回路126及びAND回路128に該当する部分の遅延量をP1とする。第2パルス成形部112のAND回路130、AND回路132、可変遅延回路134及びOR回路136に該当する部分の遅延量をP2とする。第1パルス成形部104のNAND回路120、インバータ124、NAND回路122、可変遅延回路126及びAND回路128に該当する部分の遅延量をP3とする。第1パルス成形部104のAND回路130、AND回路132、可変遅延回路134及びOR回路136に該当する部分の遅延量をP4とする。高分解能遅延部16に該当する部分の遅延量をVDとする。図示しないパルス幅を調整する機能ブロックによる遅延量をP5及びP6とする。
【0080】
第1パルス成形部104には、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」が設定される。第2パルス成形部112には、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」が設定される。
【0081】
図20(b)は、図20(a)の状態における各部のタイミングチャートである。図20(a)の状態における閉回路により生じる遅延量は、P1+P2+P3+P4+P5+P6+VDとなる。
【0082】
図21(a)は、前縁のタイミングで遅延量を生成する場合におけるループ測定時の閉回路の状態を示す。第2パルス成形部112のNAND回路120、インバータ124、NAND回路122、可変遅延回路126及びAND回路128に該当する部分の遅延量をP1とする。第2パルス成形部112のAND回路130、AND回路132、可変遅延回路134及びOR回路136に該当する部分の遅延量をP2とする。第1パルス成形部104のNAND回路120、インバータ124、NAND回路122、可変遅延回路126及びAND回路128に該当する部分の遅延量をP3とする。第1パルス成形部104のAND回路130、AND回路132、可変遅延回路134及びOR回路136に該当する部分の遅延量をP4とする。高分解能遅延部16に該当する部分の遅延量をVDとする。図示しないパルス幅を調整する機能ブロックによる遅延量をP5及びP6とする。
【0083】
第1パルス成形部104には、設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」が設定される。第2パルス成形部112には、設定値sel1に「1」、設定値sel2に「1」、設定値sel3に「1」、設定値sel4に「1」が設定される。
【0084】
図21(b)は、図21(a)の状態における各部のタイミングチャートである。第1パルス成形部104に、設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」が設定することにより、第1パルス成形部104は、遅延することなしに入力したパルスを生成するので、遅延量P3および遅延量P4は無い。従って、図21(a)の状態における閉回路により生じる遅延量は、P1+P2+P5+P6+VDとなる。従って、実動作時にはP3+P4を加えた遅延量が生成されるので、ループ測定して得られる遅延量を補正する。例えば、実動作時において、第1パルス成形部104と第2パルス成形部112のアジャスト値がデューティ比50%(P1+P2= P3+P4=基準クロックの半周期)の場合、ループ測定して得られる遅延量に、遅延量測定部118は、P3+P4を加えた遅延量をリニアライズメモリ20に格納する。例えば、実動作時において基準クロックの周期がTの場合に、遅延量測定部118は、周期Tからループ測定して得られる遅延量(P3+P4)を減じた値を実動作時における遅延量としてリニアライズメモリ20に格納する。
【0085】
図22は、リニアライズメモリ格納制御部100のフローチャートである。半周期遅延検出部106は、測定する遅延量を基準クロックの前縁のタイミングで遅延量を生成するか否かを検出する(ステップS10)。基準クロックの前縁のタイミングで遅延量を生成することを検出した場合に、半周期遅延検出部106は、第1パルス成形部104における設定値の設定をする(ステップS12)。例えば、半周期遅延検出部106は、第1パルス成形部104に、設定値sel1に「1」、設定値sel2に「0」、設定値sel3に「1」、設定値sel4に「0」を設定する。遅延クロック生成装置10は、遅延クロック生成部の設定をする(ステップS14)。例えば、遅延クロック生成装置10は、測定する遅延量のタイミングセット信号を供給する。
【0086】
ステップS10において、基準クロックの前縁のタイミングで遅延量を生成しないことを検出した場合に、遅延クロック生成装置10は、ステップS14に移行する。遅延クロック生成部の設定が終了すると、リニアライズメモリ格納制御部100は、閉回路を動作可能にして、測定パルス生成部111から測定パルスを入力しループ測定を開始する(ステップS16)。
【0087】
遅延量測定部118は、カウンタ部116から供給される値に基づいて遅延量を算出する(ステップS18)。遅延量測定部118は遅延量を算出すると、算出した遅延量をリニアライズメモリ20に格納する(ステップS20)。遅延量測定部118は、ループ測定を終了してよいか否かを判定する(ステップS22)。ループ測定を終了してよいと判定した場合に、ループ測定を終了する。ループ測定を終了しないと判定した場合、ステップS10に移行する。これにより、ループ測定時の遅延量と実動作時の遅延量との誤差を抑制することができる。
【0088】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更又は改良を加えることができることが当業者に明らかである。その様な変更又は改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0089】
【発明の効果】
上記説明から明らかなように、本発明によれば高分解能遅延部16により生成する遅延量を小さくすることができる。
【図面の簡単な説明】
【図1】従来のタイミング発生器28を示すブロック図である。
【図2】従来のタイミング発生器28のタイミングチャートを示す。
【図3】半導体試験装置を示す。
【図4】タイミング発生器28の1つの実施形態を示すブロック図である。
【図5】タイミング発生器28の1つの実施形態の詳細を示すブロック図である。
【図6】図5に示されるタイミング発生器28のタイミングチャートを示す。
【図7】基準クロックの第1サイクルにおいて、第2生成方法で生成し、基準クロックの第2サイクルにおいて、第1生成方法で生成するときのタイミングチャートを示す。
【図8】第1生成方法及び第2生成方法により遅延量を設定するデータと遅延量の関係を示す図である。
【図9】タイミング発生器28の他の実施形態を示すブロック図である。
【図10】図9に示されるタイミング発生器28が有する半周期遅延部40の詳細な構成を示すブロック図である。
【図11】図10に示される半周期遅延部40のタイミングチャートを示す。
【図12】図9に示されるタイミング発生器28のタイミングチャートを示す。
【図13】ループ測定時及び実動作時における、遅延クロック生成装置10が生成する遅延量を示す。
【図14】リニアライズメモリ格納制御部100の詳細な機能ブロック図である。
【図15】符号間誤差を示す。
【図16】符号間誤差のシミュレーション結果を示す。
【図17】第1パルス成形部104の詳細な機能ブロック図である。
【図18】第1パルス成形部104におけるタイミングチャートの一例である。
【図19】第1パルス成形部104及び第2パルス成形部112に設定される設定値の一例である。
【図20】リニアライズメモリ格納制御部100におけるタイミングチャートの一例である。
【図21】リニアライズメモリ格納制御部100におけるタイミングチャートの一例である。
【図22】リニアライズメモリ格納制御部100のフローチャートである。
【図23】タイミング発生器28の1つの実施形態における機能ブロック図である。
【符号の説明】
10・・・遅延クロック生成装置、12・・・周期遅延部、14・・・AND回路、16・・・高分解能遅延部、18・・・タイミングメモリ、20・・・リニアライズメモリ、22・・・基準クロック発生部、
24・・・パターン発生器、26・・・波形整形器、28・・・タイミング発生器、30・・・遅延信号生成装置、32・・・デバイス差込部、34・・・比較器、36・・・被試験デバイス、40・・・半周期遅延部、42・・・AND回路、44・・・パルス幅調整部、48・・・AND回路48、50・・・AND回路、52・・・OR回路、54・・・ENOR回路、56・・・AND回路、58・・・フリップフロップ、60・・・OR回路、62・・・カウンタ、100・・・リニアライズメモリ格納制御部、102・・・OR回路、104・・・第1パルス成形部、106・・・半周期遅延検出部、108・・・AND回路、110・・・OR回路、111・・・測定パルス生成部、112・・・第2パルス成形部、114・・・AND回路、116・・・カウンタ部、118・・・遅延量測定部、120・・・NAND回路、122・・・NAND回路、124・・・インバータ、126・・・可変遅延回路、128・・・AND回路、130・・・AND回路、132・・・AND回路、134・・・可変遅延回路、136・・・OR回路
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a delay clock generation apparatus that generates a delay clock having a predetermined delay amount, and in particular, the present invention generates a pulse having a leading edge or a trailing edge of a reference clock as a rising timing in accordance with the delay amount to be generated. The present invention relates to a delay clock generator. The present invention also relates to a semiconductor test apparatus including the delay clock generation apparatus.
[0002]
[Prior art]
FIG. 1 shows a conventional timing generator 28. The timing generator 28 includes the delayed clock generator 10 and the reference clock generator 22. The delay clock generation device 10 includes a period delay unit 12, an AND circuit 14, a high resolution delay unit 16, a timing memory 18, and a linearization memory 20. The high resolution delay unit 16 may be, for example, a variable delay circuit that generates a plurality of delay amounts by a combination of a plurality of delay elements.
[0003]
The timing memory 18 stores data of a predetermined delay amount included in the delay clock generated by the delay clock generation device 10 by dividing the data into a delay amount that is an integral multiple of the reference clock period and a delay amount that is less than the reference clock period. is doing. When the timing memory 18 inputs a timing set signal designating that a predetermined delay amount stored in the timing memory 18 is set in the periodic delay unit 12 and the linearize memory 20, the timing memory 18 periodically delays the data having an integral multiple of the delay amount. The data is output to the unit 12, and data with a delay amount less than the period is output to the linearize memory 20.
[0004]
The linearize memory 20 outputs delay path data for setting a combination of delay elements that generate a delay amount less than a period to the high resolution delay unit 16.
[0005]
The period delay unit 12 counts the number of pulses of the reference clock supplied from the reference clock generation unit 22 when receiving a delay clock generation start signal designating generation of a delay clock having a predetermined delay amount. When the number of pulses of the reference clock counted by the period delay unit 12 and the data of the integral multiple of the delay amount match, the AND circuit 14 generates one pulse synchronized with the reference clock.
[0006]
The high resolution delay unit 16 further delays the pulse supplied from the AND circuit 14 by a combination of delay elements set by the delay path data supplied from the linearize memory 20 to generate a delay clock having a predetermined delay amount. Generate.
[0007]
FIG. 2 is a timing chart of the conventional timing generator 28 described with reference to FIG. A timing set signal is supplied in synchronization with the delayed clock generation start signal. For example, when generating a delay clock having a delay amount of 13 ns and 11 ns, the timing set signal TS1 specifies that a delay clock having a delay amount of 13 ns is generated, and the timing set signal TS2 indicates a delay amount of 11 ns. Specifies to generate a delay clock having. In the example of the timing chart of FIG. 2, the period of the reference clock is 4 ns.
[0008]
When the timing set signal TS1 is supplied, the period delay unit 12 counts the reference clock three times, and then outputs an enable signal (logical value “1”) to the AND circuit 14 (point A). The AND circuit 14 outputs a pulse having a delay amount of 12 ns based on the enable signal from the period delay unit 12 and the reference clock (point B). The high resolution delay unit 16 further delays the pulse supplied from the AND circuit 14 by 1 ns and outputs it.
[0009]
When the timing set signal TS2 is supplied, the period delay unit 12 counts the reference clock twice and then outputs an enable signal (logical value “1”). The AND circuit 14 outputs a pulse having a delay amount of 8 ns based on the enable signal from the period delay unit 12 and the reference clock (point B). The high resolution delay unit 16 outputs the pulse supplied from the AND circuit 14 with a delay of 3 ns.
[0010]
[Problems to be solved by the invention]
The conventional timing generator shown in FIG. 1 generates a delay amount less than the period of the reference clock by the high resolution delay unit 16. The high resolution delay unit 16 that generates a delay amount by a combination of a plurality of delay elements generates heat according to the generated delay amount. The amount of heat generation increases in proportion to the amount of delay generated. The high resolution delay unit 16 generates an error in the generated delay amount due to the influence of heat generation. Further, since the influence of power supply noise is also proportional to the delay amount, the error in the delay amount increases as a large delay amount is generated. Furthermore, as the delay amount increases, the power supply noise generated by the high resolution delay unit 16 also increases.
[0011]
Therefore, an object of the present invention is to provide a delay clock generation device that can solve the above-described problems. This object is achieved by a combination of features described in the independent claims. The dependent claims define further advantageous specific examples of the present invention.
[0012]
[Means for Solving the Problems]
In order to solve the above-described problem, a first aspect of the present invention is a delay clock generation device that generates a delay clock having a predetermined delay amount, which is an integral multiple of a reference clock cycle shorter than the predetermined delay amount. A difference between a cyclic delay unit that generates a delay amount, a half-cycle delay unit that generates a half-cycle delay amount of a reference clock, a sum of delay amounts generated by the cyclic delay unit and the half-cycle delay unit, and a predetermined delay amount And a high-resolution delay unit that adds the delay amount to the delay amount generated by the period delay unit and the half-cycle delay unit.
[0013]
In one aspect of the first form, the half-cycle delay unit inputs a signal having a delay amount generated by the cycle delay unit, and receives a signal input at the timing of either the leading edge or the trailing edge of the reference clock. You may supply to a high-resolution delay part.
[0014]
In another aspect of the first aspect, when the period delay unit generates an integer multiple of the delay amount with reference to either the leading edge or the trailing edge of the reference clock, the half period delay unit A pulse having the other leading edge or trailing edge as a rising timing may be generated. The half-cycle delay unit may include a logic gate that generates a pulse whose rising timing is the trailing edge of the reference clock. In addition, it further includes a logic gate that generates a pulse having a delay amount generated by the period delay unit based on the reference clock, and the half cycle delay unit adjusts the pulse width of the pulse generated by the logic gate to a predetermined pulse width. And a pulse width adjusting unit that performs the same.
[0015]
Further, the pulse width adjustment unit may include a delay element that generates a delay amount corresponding to a predetermined pulse width. A first storage unit that stores data for setting an integral multiple delay amount in the period delay unit; a second storage unit that stores data for setting a half cycle delay amount of the reference clock in the half cycle delay unit; The delay amount obtained by excluding the delay amount set by the data stored in the first storage unit from the predetermined delay amount and the delay amount set by the data stored in the second storage unit is set in the high resolution delay unit. And a third storage unit for storing data to be stored. The period delay unit may include a counter that counts the number of pulses of the reference clock and a logic gate that determines whether or not the number of pulses is equal to data stored in the first storage unit.
[0016]
Also, a linearized memory that stores a delay path in a high-resolution delay unit that generates a delay amount set by data stored in the third storage unit, and a linearized memory storage control unit that stores the delay path in the linearized memory The linearized memory storage control unit is supplied from the measurement pulse generation unit that generates the measurement pulse having a predetermined pulse width, the pulse input unit that inputs the measurement pulse, and the pulse input unit. A pulse shaping unit that inverts the measurement pulse and supplies it to at least one of the period delay unit and the half-cycle delay unit, and the pulse shaping unit supplies at least one of the period delay unit and the half-cycle delay unit for a predetermined time interval Based on the counter unit that counts the number of measured pulses and the number of measurement pulses counted by the counter unit, the delay amount of the delay path is measured. It may have a delay amount measuring section for storing in association with each delay path and the measured delay in the linearization memory.
[0017]
In addition, a half-cycle delay detection unit that specifies whether to invert the measurement pulse may be further provided in the pulse generation unit based on whether or not a half-cycle delay amount is generated. Further, when measuring the delay amount generated at the timing of the leading edge of the reference clock, the half-cycle delay detection unit may instruct the pulse generation unit to invert the measurement pulse. The pulse shaping unit may have a logic gate for inverting the measurement pulse. The delay amount measurement unit stores the amount of deviation between the phase generated by inverting the measurement pulse and the phase generated by not inverting the measurement pulse in the linearize memory in addition to the delay amount of the delay path. May be.
[0018]
According to a second aspect of the present invention, in a semiconductor test apparatus for testing a semiconductor device, a period delay unit that generates a delay amount that is an integer multiple of a reference clock period shorter than a predetermined delay amount, and a half-cycle delay of the reference clock A delay generated by the period delay unit and the half cycle delay unit, and a delay amount of a difference between the sum of the delay amounts generated by the period delay unit and the half cycle delay unit and a predetermined delay amount. A timing generator that generates a delay clock having a predetermined delay amount, a pattern generator that generates a test pattern to be input to a semiconductor device, a delay clock and a test pattern Based on the waveform shaper that outputs a shaped test pattern that is shaped to be applied to a semiconductor device, and the device connection that inputs the shaped test pattern to the semiconductor device. A comparator for determining the quality of the semiconductor device by comparing the output signal output from the semiconductor device to which the shaping test pattern is input and the expected value to be output from the semiconductor device output from the pattern generator; A semiconductor test apparatus is provided.
[0019]
The above summary of the invention does not enumerate all the necessary features of the present invention, and sub-combinations of these feature groups can also be the invention.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described through embodiments of the invention. However, the following embodiments do not limit the claimed invention, and all combinations of features described in the embodiments are the solution of the invention. It is not always essential to the means.
[0021]
FIG. 3 is a block diagram illustrating one embodiment of a semiconductor test apparatus. The semiconductor test apparatus includes a pattern generator 24, a delay signal generation apparatus 30, a device contact portion 32, and a comparator 34. The delay signal generation device 30 includes a waveform shaper 26 and a timing generator 28.
[0022]
The device under test 36 is attached so as to be in electrical contact with the device contact portion 32. The pattern generator 24 generates pattern data that is a test pattern to be input to the device under test 36 and expected value data to be output from the device under test 36 that has received the pattern data. The pattern generator 24 outputs the pattern data to the waveform shaper 26 and outputs the expected value data to the comparator 34. In addition, the pattern generator 24 generates data necessary for generating a delay clock having a predetermined delay amount according to the operation characteristics of the device under test 36, and the period delay unit 12 (not shown) and the linearized memory 20 (not shown). ) Is output to the timing generator 28.
[0023]
The timing generator 28 generates a delay clock having a delay amount specified by the timing set signal and outputs it to the waveform shaper 26.
[0024]
The waveform shaper 26 shapes the pattern data based on the delay clock supplied from the timing generator 28, and outputs the shaped pattern data corresponding to the operating characteristics of the device under test 36 to the device contact unit 32. The device under test 36 outputs an output value for the shaping pattern data to the comparator 34 via the device contact portion 32. The comparator 34 compares the output value with the expected value data supplied from the pattern generator 24 to determine pass / fail of the device under test 36.
[0025]
FIG. 4 is a block diagram illustrating one embodiment of the timing generator 28. The timing generator 28 includes a reference clock generator 22 and a delay clock generator 10. The delay clock generation device 10 includes a cycle delay unit 12, a half cycle delay unit 40, a high resolution delay unit 16, a timing memory 18, and a linearize memory 20. The timing memory 18 includes a first storage unit 18a, a second storage unit 18b, and a third storage unit 18c. The high resolution delay unit 16 may be, for example, a variable delay circuit that includes a plurality of delay elements and generates a plurality of delay amounts by a combination of delay elements.
[0026]
The timing memory 18 stores data of a predetermined delay amount generated by the delay clock generation device 10 in the first storage unit 18a, the second storage unit 18b, and the third storage unit 18c. The first storage unit 18a stores data for setting a delay amount, which is an integral multiple of the reference clock cycle shorter than a predetermined delay amount, in the period delay unit 12. The second storage unit 18b stores data for setting the half cycle delay amount of the reference clock in the half cycle delay unit 40. The third storage unit 18c is obtained by excluding a delay amount set by data stored in the first storage unit and a delay amount set by data stored in the second storage unit from a predetermined delay amount. Is stored in the high resolution delay unit 16.
[0027]
When the timing memory 18 receives the timing set signal, the timing memory 18 converts the data stored in the first storage unit 18a, the second storage unit 18b, and the third storage unit 18c to the period delay unit 12, the half cycle delay unit 40, and the linearized memory, respectively. 20 is output.
[0028]
When the delay clock generation start signal is input, the period delay unit 12 counts the number of reference clock pulses supplied from the reference clock generation unit 22. The cycle delay unit 12 outputs a match signal indicating a match to the half cycle delay unit 40 when the count value of the reference clock matches the data set by the first storage unit 18a. When the coincidence signal is supplied from the cycle delay unit 12, the half cycle delay unit 40 delays the half cycle of the reference clock to the delay amount generated by the cycle delay unit 12 based on the data stored in the second storage unit 18b. Set whether to add quantity. For example, the half-cycle delay unit 40 may generate a pulse at the timing of either the leading edge or the trailing edge of the reference clock. The data stored in the second storage unit 18b is data specifying that a delay amount of a half cycle of the reference clock is added, and the cycle delay unit 12 is based on either the leading edge or the trailing edge of the reference clock. When generating a delay amount that is an integral multiple of the clock period, the half-cycle delay unit 40 may generate a pulse having the other edge of the leading edge or the trailing edge of the reference clock as a rising timing.
[0029]
The high resolution delay unit 16 further delays the pulse supplied from the half-cycle delay unit 40 by a combination of delay elements set by the delay path data supplied from the linearize memory 20 and has a predetermined delay amount. Generate a clock.
[0030]
FIG. 5 is a block diagram showing a detailed configuration of the timing generator 28 described with reference to FIG. 5 with the same reference numerals as those in FIG. 4 perform the same or similar functions and operations as the corresponding components in FIG. The timing generator 28 includes a reference clock generator 22 and a delay clock generator 10. The delay clock generation device 10 includes a cycle delay unit 12, a half cycle delay unit 40, a high resolution delay unit 16, a first storage unit 18a, a second storage unit 18b, a third storage unit 18c, and a linearized memory 20. The period delay unit 12 includes a counter 62, an ENOR circuit (54a, 54b... 54i), and an AND circuit 56a. The half-cycle delay unit 40 includes AND circuits (56b, 56c, 56d, and 56e), flip-flops 58a and 58b, and an OR circuit 60.
[0031]
The reference clock generator 22 shown in FIG. 5 generates a reference clock having a period of 4 ns. For example, when generating a delay clock having a delay amount of 11 ns, the first storage unit 18a stores data (000000010) for setting the delay amount of 8 ns in the periodic delay unit 12 as 9-bit data. The second storage unit 18b stores data (logical value “1”) for setting a half cycle (2 ns) delay amount of the reference clock in the half cycle delay unit 40 as 1-bit data. The third storage unit 18c stores, as 7-bit data, data (1000000) for setting the 1 ns delay amount obtained by removing the 8 ns and 2 ns delay amounts from the 11 ns delay amount in the high resolution delay unit 16.
[0032]
When the counter 62 receives the delayed clock generation start signal, the counter 62 starts counting the reference clock. The counter 62 counts the reference clock at the rising edge of the pulse and outputs it as 9-bit data. In another embodiment, the counter 62 may count the reference clock at the falling edge of the pulse. The ENOR circuit 54a outputs a logical value “1” when the least significant bit of the count value output from the counter 62 and the least significant bit of the data stored in the first storage unit 18a have the same logical value. . Similarly to the ENOR circuit 54a, the ENOR circuits 54b to 54i output a logical value “1” when the corresponding bits are the same. The AND circuit 56a outputs a logical value “1” when all the output values of the ENOR circuits (54a to 54i) are the logical value “1”. Therefore, when the data stored in the first storage unit 18a is 000000010 (data for setting a delay amount of 8 ns), the cycle delay unit 12 indicates that the count value is 000000010 (counting the reference clock pulse twice). The logic value “1” is output to the half-cycle delay unit 40.
[0033]
If the count value is equal to the data stored in the first storage unit 18a, if the data stored in the second storage unit 18b is the logical value “0”, the logical value “1” is output from the AND circuit 56b. Is output. The flip-flop 58a holds the output value (logical value “1”) from the AND circuit 56b at the falling timing of the reference clock. The AND circuit 56 d generates a pulse having the leading edge of the reference clock as a rising timing, and outputs the pulse to the high resolution delay unit 16 via the OR circuit 60.
[0034]
If the count value is equal to the data stored in the first storage unit 18a, if the data stored in the second storage unit 18b is the logical value “1”, the logical value “1” is output from the AND circuit 56c. Is output. The flip-flop 58b holds the output value (logical value “1”) from the AND circuit 56c at the rising timing of the reference clock. The AND circuit 56e generates a pulse having the rising edge as the trailing edge of the reference clock, and outputs the pulse to the high resolution delay unit 16 via the OR circuit 60.
[0035]
In another embodiment, if the counter 62 counts the number of pulses at the falling edge of the pulse and adds a half-cycle delay amount of the reference clock, the half-cycle delay unit 40 rises the leading edge of the reference clock. A pulse with timing may be generated. If the delay amount of the half cycle of the reference clock is not added, the half cycle delay unit 40 may generate a pulse having the rising edge as the trailing edge of the reference clock.
[0036]
The high resolution delay unit 16 further delays the pulse supplied from the half-cycle delay unit 40 by a combination of delay elements set by the delay path data supplied from the linearize memory 20 and has a predetermined delay amount. Generate a delayed clock.
[0037]
FIG. 23 is a functional block diagram of another embodiment of the timing generator 28 described with reference to FIG. 23, the same reference numerals as those in FIG. 5 denote the same or similar functions and configurations as the corresponding configurations in FIG. In FIG. 23, the linearize memory 20 stores data for setting a half-cycle delay amount of the reference clock in the half-cycle delay unit 40.
[0038]
The linearize memory 20 outputs to the half cycle delay unit 40 a signal designating generation of a delay amount of a half cycle of the reference clock. For example, the linearized memory 20 stores data (logical value “1”) for setting a half-cycle delay amount of the reference clock in the most significant bit. Since the linearize memory 20 stores data for setting the delay amount of the half cycle of the reference clock, it can be specified that the delay amount of the half cycle of the reference clock is generated.
[0039]
FIG. 6 shows a timing chart of the timing generator 28 described with reference to FIG. A timing set signal is supplied in synchronization with the delayed clock generation signal. For example, when generating a delay clock having a delay amount of 13 ns and 11 ns, the timing set signal TS1 specifies that a delay clock having a delay amount of 13 ns is generated, and the timing set signal TS2 indicates a delay amount of 11 ns. Specifies to generate a delay clock having.
[0040]
When the timing set signal TS1 is supplied, after the period delay unit 12 counts the reference clock three times, the point A1 in FIG. 5 is enabled (logical value “1”). The AND circuit 56d generates a pulse having a delay amount of 12 ns with the leading edge of the reference clock as a rising timing (point B1). The high resolution delay unit 16 further delays the pulse supplied from the OR circuit 60 by 1 ns to generate a delay clock having a delay amount of 13 ns.
[0041]
When the timing set signal TS2 is supplied, after the period delay unit 12 counts the reference clock three times, the point A2 in FIG. 5 is enabled (logical value “1”). The AND circuit 56e generates a pulse having a delay amount of 10 ns with the trailing edge of the reference clock as the rising timing (point B2). The high resolution delay unit 16 further delays the pulse supplied from the OR circuit 60 by 1 ns to generate a delay clock having a delay amount of 11 ns. Therefore, in the present embodiment, the high resolution delay unit 16 may generate a delay amount less than a half cycle of the reference clock.
[0042]
However, in reality, the delay amount actually generated by the delay element is designed according to variations in the quality of the delay element included in the high-resolution delay unit 16, temperature conditions, voltage conditions, and the like when the delay element is used. There may be an error between the delay amount. Therefore, it is preferable that the high resolution delay unit 16 can generate a delay amount larger than the time obtained by subtracting the pulse width of the reference clock from the cycle of the reference clock in consideration of the variation in the quality of the delay elements. For example, when the period of the reference clock is 4000 ps and the pulse width of the reference clock is 2000 ps, the high resolution delay unit 16 preferably generates a delay amount of about 0 ps to 2500 ps.
[0043]
When the half cycle of the reference clock is 2000 ps and the high resolution delay unit 16 can generate a delay amount of 0 ps to 2500 ps, the delay clock generator 10 can generate a delay amount of 0 to 2500 ps by the high resolution delay unit 16. Further, the delay clock generation device 10 can generate a delay amount of 2000 ps to 4500 ps by delaying the pulse generated at the timing of the trailing edge of the reference clock by the high resolution delay unit 16.
[0044]
The delay clock generation device 10 delays a pulse generated at the timing of the trailing edge of the reference clock by the high resolution delay unit 16 using the first generation method of generating a delay amount of 2000 ps to 2500 ps by the high resolution delay unit 16. It can produce | generate by two methods of the 2nd production | generation method to produce | generate.
[0045]
For example, when generating a delay amount of 2010 ps, the delay clock generator 10 generates a pulse generated at the timing of the trailing edge of the reference clock and the first generation method of generating a delay amount of 2010 ps by the high resolution delay unit 16. It can be generated by any one of the second generation methods that generate a delay amount of 2010 ps with a delay of 10 ps by the high resolution delay unit 16.
[0046]
FIG. 7 shows a timing chart when a delay amount of 2000 ps to 2500 ps is generated by the second generation method in the first cycle of the reference clock and is generated by the first generation method in the second cycle of the reference clock. In the first cycle, when a delay amount of 2000 ps to 2500 ps is generated by the second generation method, a pulse is generated at the timing of the trailing edge of the reference clock (point B2 in FIG. 5). In the second cycle, when a delay amount of 2000 ps to 2500 ps is generated by the first generation method, a pulse is generated at the timing of the leading edge of the reference clock (point B1 in FIG. 5). Therefore, the pulses overlap at point B3 in FIG. It is necessary to set a delay generation method so that pulses do not overlap at point B3.
[0047]
FIG. 8 is a diagram illustrating the relationship between the delay amount and the data for setting the delay amount by the first generation method and the second generation method described with reference to FIG. The delay clock generation device 10 can generate a delay amount of 0 ps to 2000 ps by the first generation method, and can generate a delay amount of 2000 ps to 4500 ps by the second generation method. In FIG. 8, the delay amount of 2000 ps to 2500 ps can be generated by any one of the first generation method and the second generation method. It is necessary to set a method for generating the delay amount of the overlapping portion so that the pulses do not overlap at the point B3 described with reference to FIG. In the present embodiment, the delay amount of the overlapping portion is generated by the first generation method so that the pulses do not overlap. Therefore, in the overlapping portion, the logical value “0” is stored in the second storage unit 18b, and data less than the cycle of the reference clock is stored in the third storage unit 18c. In another embodiment, the delay amount of the overlapping portion may be generated by the second generation method.
[0048]
FIG. 9 is a block diagram illustrating another embodiment of the timing generator 28. The timing generator 28 includes a reference clock generator 22 and a delay clock generator 10. The delay clock generation device 10 includes a cycle delay unit 12, an AND circuit 42, a half cycle delay unit 40, a high resolution delay unit 16, a timing memory 18, and a linearization memory 20. The half cycle delay unit 40 includes a pulse width adjustment unit 44. The timing memory 18 includes a first storage unit 18a, a second storage unit 18b, and a third storage unit 18c. 9, the same reference numerals as those in FIG. 4 denote the same or similar functions and operations as the corresponding structures in FIG.
[0049]
When the timing memory 18 receives the timing set signal, the timing memory 18 converts the data stored in the first storage unit 18a, the second storage unit 18b, and the third storage unit 18c to the period delay unit 12, the half cycle delay unit 40, and the linearized memory, respectively. 20 is output. For example, when a delay clock having a reference clock period of 4 ns and a delay amount of 11 ns is generated, the first storage unit 18 a stores data for setting a delay amount of 8 ns in the period delay unit 12. The second storage unit 18b stores data for setting the delay amount of the half cycle (2 ns) of the reference clock in the half cycle delay unit 40. The third storage unit 18c stores data for setting the 1 ns delay amount obtained by removing the 8 ns and 2 ns delay amounts from the 11 ns delay amount in the high resolution delay unit 16.
[0050]
When the delay clock generation start signal is input, the period delay unit 12 counts the number of reference clock pulses supplied from the reference clock generation unit 22. When the number of pulses of the reference clock counted by the period delay unit 12 matches the data set by the first storage unit 18a, the AND circuit 42 generates one pulse based on the reference clock. For example, if the cycle of the reference clock is 4 ns and the first storage unit 18a stores data for setting the delay amount of 8 ns in the cycle delay unit 12, the cycle delay unit 12 counts the reference clock pulse twice. The AND circuit 42 generates one pulse.
[0051]
The pulse width adjusting unit 44 included in the half cycle delay unit 40 is provided to set the pulse width of the pulse generated by the half cycle delay unit 40 to a predetermined pulse width. The half-cycle delay unit 40 generates a pulse having a predetermined pulse width based on the data stored in the second storage unit 18b, with the timing of the leading edge or trailing edge of the pulse supplied from the AND circuit 42 as the rising timing. To do. For example, when the second storage unit 18b stores data for setting the half-cycle delay amount of the reference clock in the half-cycle delay unit 40, a pulse whose rising edge is the trailing edge of the pulse supplied from the AND circuit 42 Is generated.
[0052]
The high resolution delay unit 16 further delays the pulse supplied from the half-cycle delay unit 40 by a combination of delay elements set by the delay path data supplied from the linearize memory 20 and has a predetermined delay amount. Generate a clock.
[0053]
FIG. 10 is a block diagram showing a detailed configuration of the half-cycle delay unit 40. When the data stored in the second storage unit 18b is a logical value “1”, the AND circuit 48 is enabled. The pulse width adjustment unit 44 delays the pulse supplied from the AND circuit 42 by a predetermined pulse width pwd. For example, the pulse width adjustment unit 44 may be a delay element that delays the input signal by a predetermined pulse width pwd. The AND circuit 48 calculates the logical product of the pulse supplied from the AND circuit 42 and the pulse delayed by the pulse width adjustment unit 44, and has a predetermined pulse width with the trailing edge of the pulse supplied from the AND circuit 42 as the rising timing. Generate a pulse with pwd.
[0054]
Second storage unit 18 b When the data stored in is a logical value “0”, the AND circuit 50 is enabled. The pulse width adjustment unit 44 delays the pulse supplied from the AND circuit 42 by a predetermined pulse width pwd. The AND circuit 50 calculates a logical product of the pulse supplied from the AND circuit 42 and the pulse delayed by the pulse width adjustment unit 44, and has a predetermined pulse width with the leading edge of the pulse supplied from the AND circuit 42 as a rising timing. Generate a pulse with pwd. The OR circuit 52 outputs the pulse generated by either the AND circuit 48 or the AND circuit 50 to the high resolution delay unit 16.
[0055]
FIG. 11 is a timing chart of the half-cycle delay unit 40 described with reference to FIG. When the data stored in the second storage unit 18b is a logical value “0”, the half-cycle delay unit 40 has a predetermined pulse width pwd whose rising timing is the leading edge of the pulse supplied from the AND circuit 42. Generate a pulse.
[0056]
When the data stored in the second storage unit 18 b is a logical value “1”, the half-cycle delay unit 40 has a predetermined pulse width pwd whose rising timing is the trailing edge of the pulse supplied from the AND circuit 42. Generate a pulse.
[0057]
FIG. 12 shows a timing chart of the timing generator 28 described with reference to FIG. A timing set signal is supplied in synchronization with the delayed clock generation signal. For example, when generating a delay clock having a delay amount of 13 ns and 11 ns, the timing set signal TS1 specifies that a delay clock having a delay amount of 13 ns is generated, and the timing set signal TS2 indicates a delay amount of 11 ns. Specifies to generate a delay clock having.
[0058]
When the timing set signal TS1 is supplied, after the period delay unit 12 counts the reference clock four times, the point D in FIG. 10 is enabled (logical value “1”). The AND circuit 42 generates a pulse having a delay amount of 12 ns (point E). The half-cycle delay unit 40 uses the leading edge of the pulse supplied from the AND circuit 42 as the rising timing, and outputs a pulse having a predetermined pulse width pwd to the high resolution delay unit 16 (point F). The high resolution delay unit 16 further delays the pulse supplied from the half-cycle delay unit 40 by 1 ns to generate a delay clock having a delay amount of 13 ns.
[0059]
When the timing set signal TS2 is supplied, after the period delay unit 12 counts the reference clock three times, the point D in FIG. 10 is enabled (logical value “1”). The AND circuit 42 generates a pulse having a delay amount of 8 ns (point E). The half-cycle delay unit 40 uses the trailing edge of the pulse supplied from the AND circuit 42 as the rising timing, and outputs a pulse having a predetermined pulse width pwd to the high resolution delay unit 16 (point F). The high resolution delay unit 16 further delays the pulse supplied from the half-cycle delay unit 40 by 1 ns to generate a delay clock having a delay amount of 11 ns.
[0060]
When the delay clock is generated by the delay clock generator 10, it is necessary to store the delay path data in the linearization memory 20 in advance. The delay clock generation apparatus 10 measures the delay amount generated by the combination of each delay element by loop measurement, and stores delay path data for specifying a delay path for generating a desired delay amount in the linearization memory 20. After storing the delay path data in the linearized memory 20, the delay clock generation device 10 performs an actual operation of generating a delay clock to be supplied to the waveform shaper 26.
[0061]
FIG. 13 shows a delay amount generated by the delay clock generation device 10 during loop measurement and actual operation. A straight line A indicates a delay amount at the time of loop measurement. A straight line B indicates a delay amount in actual operation. When the delay amount is generated by the first generation method in which the delay amount is generated only by the high resolution delay unit 16, no error occurs between the loop measurement and the actual operation. However, when the delay amount is generated by the second generation method of generating the delay amount by the period delay unit 12, the half-cycle delay unit 40, and the high resolution delay unit 16, there is an error between the loop measurement and the actual operation. Arise.
[0062]
FIG. 14 is a functional block diagram of the timing generator 28 including a linearized memory storage control unit 100 that stores delay path data in the linearized memory 20 and a plurality of the delayed clock generators 10 described with reference to FIG. The linearized memory storage control unit 100 includes an OR circuit 102, a first pulse shaping unit 104, a buffer 105, a half-cycle delay detection unit 106, an AND circuit 108, an OR circuit 110, a measurement pulse generation unit 111, and a second pulse shaping unit 112. An AND circuit 114, a counter unit 116, and a delay amount measuring unit 118. The OR circuit 110 corresponds to the pulse input unit described in claim 9. When performing loop measurement, the linearized memory storage control unit 100 includes an AND circuit 108, an OR circuit 110, a second pulse shaping unit 112, an AND circuit 114, an OR circuit 102, a first pulse shaping unit 104, and a delay clock generation device. The closed circuit including 10 is enabled. When enabling the closed circuit, the linearized memory storage control unit 100 applies the logical value “1” to the Loop Enable terminals of the AND circuit 108 and the AND circuit 114. Therefore, the linearized memory storage control unit 100 can enable the closed circuit.
[0063]
The measurement pulse generator 111 generates a measurement pulse used for measuring the delay amount. For example, the measurement pulse generator 111 generates one pulse as a measurement pulse. The measurement pulse generator 111 outputs the generated measurement pulse to the closed circuit via the OR circuit 110. The measurement pulse circulates in a closed circuit including the delay clock generator 10.
The pulse width of the measurement pulse decreases or expands due to the difference between the rise time and the fall time of the semiconductor gate through which the measurement pulse passes during circulation. The first pulse shaping unit 104 and the second pulse shaping unit 112 correct the pulse width of the measurement pulse. The buffer 105 outputs the measurement pulse supplied from the first pulse shaping unit 104 to the delay clock generation devices (10a, 10b...).
[0064]
The counter unit 116 measures the number of times the measurement pulse is circulated in a certain period, and calculates the difference between the frequency when the minimum delay path having the minimum delay amount is selected and the frequency when another delay path is selected. Output to the delay amount measuring unit 118. The delay amount measuring unit 118 has a delay amount closest to a predetermined delay time based on the difference between the frequency when the minimum delay route is selected and the frequency when another delay route is selected. Select. The delay amount measuring unit 118 stores delay path data for specifying the selected delay path in the linearized memory 20.
[0065]
Here, the reason why the error described with reference to FIG. 13 occurs will be described with reference to FIG. FIG. 15A shows a pulse output from the second pulse shaping unit 112 and a pulse output from the first pulse shaping unit 104. The leading edge and trailing edge of the pulse output from the first pulse shaping unit 104 are not settling. For example, the pulse output from the first pulse shaping unit 104 can be stabilized by increasing the driving capability of the buffer 105. Further, for example, by increasing the number of stages of the buffer 105, the pulse output from the first pulse shaping unit 104 can be settled. However, increasing the drive capability of the buffer 105 or increasing the number of stages of the buffer 105 causes problems such as increased power consumption, increased power supply noise, and increased propagation delay time. Increased power consumption makes it difficult to increase the density of LSIs. Further, an increase in power supply noise and an increase in propagation delay time lead to deterioration in accuracy.
[0066]
By reducing the drive capability of the buffer 105 and reducing the number of stages of the buffer 105, power consumption can be reduced, power supply noise can be reduced, and propagation delay time can be reduced. However, like the pulse shown in FIG. 15A, the leading and trailing edges of the pulse are not settling. Since the leading edge and trailing edge of the pulse are not settled, the voltage does not reach the peak value of the pulse, causing a phase shift. This phase shift occurs due to interference between pulses, which is defined as intersymbol interference. This phase shift becomes an error between the delay amount at the time of the loop measurement described with reference to FIG. 13 and the delay amount at the actual operation.
[0067]
In FIG. 15A, a value obtained by subtracting the phase of the leading edge of the reference clock during actual operation from the phase of the leading edge of the measuring pulse during loop measurement is a, and the phase of the trailing edge of the measurement pulse during loop measurement. When the value obtained by subtracting the phase of the trailing edge of the reference clock during actual operation is b, the linearity error is b−a. Since the way of receiving interference from the previous pulse differs between the loop measurement and the actual operation, there is an error between the delay amount during the loop measurement described with reference to FIG. 13 and the delay amount during the actual operation. Also, the interference received from the previous pulse during the actual operation is greater when the leading edge of the pulse receives from the previous pulse than the difference between the actual operation of the interference received from the previous pulse at the trailing edge of the pulse and the loop measurement. Become.
[0068]
FIG. 16A shows the result of simulating intersymbol interference. FIG. 16B is an enlarged view of the vicinity of 10 ns, which is the same simulation result as FIG. From FIG. 16 (b), the phase of the curve “actual operation” indicating the output of the first pulse shaping unit 104 during actual operation and the curve “true” indicating the output of the first pulse shaping unit 104 during loop measurement are obtained. I can see the gap. FIG. 16B shows that the phase shift due to intersymbol interference is larger at the leading edge (a> b). It can also be seen that the phase shift due to intersymbol interference at the trailing edge is small. Based on this simulation result, the inventor considered that a phase shift due to intersymbol interference is suppressed by generating a delay amount at the timing of the trailing edge during loop measurement.
[0069]
FIG. 15B shows a pulse output from the second pulse shaping unit 112 and a pulse obtained by inverting the pulse supplied from the second pulse shaping unit 112 output from the first pulse shaping unit 104. In FIG. 15B, the value obtained by subtracting the phase of the leading edge of the reference clock during actual operation from the phase of the leading edge of the measuring pulse during loop measurement is c, and the phase of the trailing edge of the measurement pulse during loop measurement. When the value obtained by subtracting the phase of the trailing edge of the reference clock during actual operation is b, the linearity error is bc It becomes. By generating the delay amount at the timing of the trailing edge of the inverted measurement pulse, an error between the delay amount during loop measurement and the delay amount during actual operation can be suppressed. According to FIG. 16B, the phase shift between the curve “negative” indicating the output generated by inverting the output of the second pulse shaping unit 112 at the time of loop measurement and the curve “actual operation” is small. Recognize. Therefore, when the delay amount generated by the delay clock generation device 10 based on the timing of the leading edge of the reference clock is measured in a loop, the measurement pulse is inverted and supplied to the delay clock generation device 10 so that the intersymbol interference can be reduced. The influence can be suppressed.
[0070]
The half cycle delay detection unit 106 described with reference to FIG. 14 detects whether or not to generate a delay amount of a half cycle of the reference clock, and generates a delay clock in the first pulse shaping unit 104 based on the detected result. The measurement pulse supplied to the apparatus 10 is shaped. For example, the half-cycle delay detection unit 106 determines whether or not the delay amount for loop measurement is a delay amount generated based on the timing of the leading edge of the reference clock. When it is determined that the delay amount is generated based on the timing of the leading edge, the half cycle delay detection unit 106 instructs the first pulse shaping unit 104 to invert the measurement pulse and output it to the buffer 105. For example, the half-cycle delay detection unit 106 determines whether or not the delay amount for loop measurement is a delay amount generated based on the timing of the trailing edge of the reference clock. When it is determined that the delay amount is generated based on the timing of the trailing edge, the half-cycle delay detection unit 106 instructs the first pulse shaping unit 104 to output the measurement pulse to the buffer 105 without inversion. Therefore, the linearized memory storage control unit 100 can cause the first pulse shaping unit 104 to shape the measurement pulse to be supplied to the delay clock generation device 10 based on whether or not to generate a delay amount of a half cycle of the reference clock. it can.
[0071]
The half-cycle delay detection unit 106 requests the delay amount measurement unit 118 to correct the delay amount obtained by the loop measurement when it is determined that the delay amount is generated based on the timing of the leading edge of the reference clock. To do. The delay amount measuring unit 118 performs a process of correcting the value supplied from the counter unit 116. The correction will be described later. Therefore, since the half-cycle delay detection unit 106 can shape the measurement pulse, the influence of intersymbol interference can be suppressed. Since the influence of intersymbol interference can be suppressed, an error between the delay amount measured during loop measurement and the delay amount generated during actual operation can be suppressed.
[0072]
FIG. 17 is a detailed functional block diagram of the first pulse shaping unit 104. The first pulse shaping unit 104 includes a NAND circuit 120, a NAND circuit 122, an inverter 124, a variable delay circuit 126, an AND circuit 128, an AND circuit 130, an AND circuit 132, a variable delay circuit 134, and an OR circuit 136. The NAND circuit 120 receives a reference clock or a measurement pulse at one end and a set value sel1 at the other end. The NAND circuit 120 outputs an output value based on the logical value given to the input terminal to one end of the AND circuit 128.
[0073]
The inverter 124 inputs a reference clock or a measurement pulse and outputs an inverted signal to one end of the NAND circuit 122. The NAND circuit 122 inputs the signal supplied from the inverter 124 to one end. The NAND circuit 122 inputs the set value sel2 to the other end. The NAND circuit 122 outputs an output value based on the logical value given to the input terminal to the variable delay circuit 126. The variable delay circuit 126 delays the output value supplied from the NAND circuit 122 and outputs it to one end of the AND circuit 128. For example, the variable delay circuit 126 delays the output value supplied from the NAND circuit 122 by Δt1 and outputs it to one end of the AND circuit 128.
[0074]
The AND circuit 128 outputs a logical product of the output values supplied from the NAND circuit 120 and the variable delay circuit 126 to one end of each of the AND circuit 130 and the AND circuit 132. The AND circuit 130 inputs the logical product value supplied from the AND circuit 128 to one end, and inputs the set value sel3 to the other end. The AND circuit 130 outputs a logical product value of logical values given to the input terminals to the OR circuit 136. The AND circuit 132 inputs the logical product value supplied from the AND circuit 128 to one end, and inputs the set value sel4 to the other end. The AND circuit 132 outputs a logical product value of logical values given to the input terminals to the variable delay circuit 134. The variable delay circuit 134 delays the output value supplied from the AND circuit 132 and outputs the delayed output value to one end of the OR circuit 136. For example, the variable delay circuit 134 delays the output value supplied from the AND circuit 132 by Δt2 and outputs it to one end of the OR circuit 136. The OR circuit 136 outputs a logical sum of logical product values given to the input terminals.
[0075]
FIG. 18 shows the setting values given to the setting values sel1, sel2, sel3, and sel4 described with reference to FIG. 17 and the output waveforms from the respective functional blocks of the first pulse shaping unit 104. FIG. 18A is a timing chart when the setting value sel1 is set to “1”, the setting value sel2 is set to “1”, the setting value sel3 is set to “1”, and the setting value sel4 is set to “1”. With this setting, it is possible to output a pulse having the sum of the delay amount Δt1 of the variable delay circuit 126 and the delay amount Δt2 of the variable delay circuit 134 with the timing of the trailing edge of the input pulse as the leading edge. That is, a pulse whose phase is shifted by the pulse width of the input pulse can be generated.
[0076]
FIG. 18B shows an output waveform when the set value sel1 is set to “1”, the set value sel2 is set to “0”, the set value sel3 is set to “1”, and the set value sel4 is set to “0”. By setting the setting value sel1 to “1”, the setting value sel2 to “0”, the setting value sel3 to “1”, and the setting value sel4 to “0”, the first pulse shaping unit 104 receives the input measurement pulse. It can be inverted and output. The second pulse shaping unit 112 described in FIG. 14 has the same configuration as the detailed functional block of the first pulse shaping unit 104 described with reference to FIG. The half-cycle delay detection unit 106 described with reference to FIG. 14 sets the set value sel1 to “1”, the set value sel2 to “0”, when performing loop measurement of the delay amount generated at the timing of the leading edge of the reference clock. The first pulse shaping unit 104 is set to “1” as the set value sel3 and “0” as the set value sel4.
[0077]
FIG. 19A shows setting values set in the first pulse shaping unit 104 and the second pulse shaping unit 112 when the delay amount is generated at the timing of the leading edge of the reference clock. In the first pulse shaping unit 104, “1” is set as the set value sel1, “0” is set as the set value sel2, “1” is set as the set value sel3, and “0” is set as the set value sel4. Therefore, the first pulse shaping unit 104 can invert the measurement pulse and output it. In the second pulse shaping unit 112, “1” is set as the set value sel1, “1” is set as the set value sel2, “1” is set as the set value sel3, and “1” is set as the set value sel4. Therefore, the second pulse shaping unit 112 can output a pulse whose phase is shifted by approximately the pulse width of the input pulse.
[0078]
FIG. 19B shows setting values set in the first pulse shaping unit 104 and the second pulse shaping unit 112 when the delay amount is generated at the timing of the trailing edge of the reference clock. In the first pulse shaping unit 104, “1” is set as the set value sel1, “1” is set as the set value sel2, “1” is set as the set value sel3, and “1” is set as the set value sel4. Therefore, the first pulse shaping unit 104 can output a pulse whose phase is shifted by approximately the pulse width of the input pulse. In the second pulse shaping unit 112, “1” is set as the set value sel1, “1” is set as the set value sel2, “1” is set as the set value sel3, and “1” is set as the set value sel4. Therefore, the second pulse shaping unit 112 can output a pulse whose phase is shifted by approximately the pulse width of the input pulse. Therefore, since the first pulse shaping unit 104 can shape the measurement pulse according to the delay amount to be measured, it is possible to suppress an error between the delay amount during loop measurement and the delay amount during actual operation. it can.
[0079]
FIG. 20A shows the state of the closed circuit at the time of loop measurement when the delay amount is generated at the trailing edge timing. A delay amount corresponding to the NAND circuit 120, the inverter 124, the NAND circuit 122, the variable delay circuit 126, and the AND circuit 128 of the second pulse shaping unit 112 is P1. A delay amount of a portion corresponding to the AND circuit 130, the AND circuit 132, the variable delay circuit 134, and the OR circuit 136 of the second pulse shaping unit 112 is P2. Let P3 be the delay amount of the portion corresponding to the NAND circuit 120, inverter 124, NAND circuit 122, variable delay circuit 126, and AND circuit 128 of the first pulse shaping unit 104. A delay amount corresponding to the AND circuit 130, the AND circuit 132, the variable delay circuit 134, and the OR circuit 136 of the first pulse shaping unit 104 is set to P4. A delay amount corresponding to the high resolution delay unit 16 is assumed to be VD. Let P5 and P6 be delay amounts due to a functional block for adjusting a pulse width (not shown).
[0080]
In the first pulse shaping unit 104, “1” is set as the set value sel1, “1” is set as the set value sel2, “1” is set as the set value sel3, and “1” is set as the set value sel4. In the second pulse shaping unit 112, “1” is set as the set value sel1, “1” is set as the set value sel2, “1” is set as the set value sel3, and “1” is set as the set value sel4.
[0081]
FIG. 20B is a timing chart of each part in the state of FIG. The amount of delay caused by the closed circuit in the state of FIG. 20A is P1 + P2 + P3 + P4 + P5 + P6 + VD.
[0082]
FIG. 21A shows the state of the closed circuit at the time of loop measurement when the delay amount is generated at the timing of the leading edge. A delay amount corresponding to the NAND circuit 120, the inverter 124, the NAND circuit 122, the variable delay circuit 126, and the AND circuit 128 of the second pulse shaping unit 112 is P1. A delay amount of a portion corresponding to the AND circuit 130, the AND circuit 132, the variable delay circuit 134, and the OR circuit 136 of the second pulse shaping unit 112 is P2. Let P3 be the delay amount of the portion corresponding to the NAND circuit 120, inverter 124, NAND circuit 122, variable delay circuit 126, and AND circuit 128 of the first pulse shaping unit 104. A delay amount corresponding to the AND circuit 130, the AND circuit 132, the variable delay circuit 134, and the OR circuit 136 of the first pulse shaping unit 104 is set to P4. A delay amount corresponding to the high resolution delay unit 16 is assumed to be VD. Let P5 and P6 be delay amounts due to a functional block for adjusting a pulse width (not shown).
[0083]
In the first pulse shaping unit 104, “1” is set as the set value sel1, “0” is set as the set value sel2, “1” is set as the set value sel3, and “0” is set as the set value sel4. In the second pulse shaping unit 112, “1” is set as the set value sel1, “1” is set as the set value sel2, “1” is set as the set value sel3, and “1” is set as the set value sel4.
[0084]
FIG. 21B is a timing chart of each part in the state of FIG. The first pulse shaping unit 104 is set to “1” as the set value sel1, “0” as the set value sel2, “1” as the set value sel3, and “0” as the set value sel4. Since 104 generates the input pulse without delay, there is no delay amount P3 and no delay amount P4. Accordingly, the delay amount generated by the closed circuit in the state of FIG. 21A is P1 + P2 + P5 + P6 + VD. Therefore, since a delay amount obtained by adding P3 + P4 is generated in actual operation, the delay amount obtained by loop measurement is corrected. For example, in the actual operation, when the adjustment values of the first pulse shaping unit 104 and the second pulse shaping unit 112 have a duty ratio of 50% (P1 + P2 = P3 + P4 = half cycle of the reference clock), the delay amount obtained by loop measurement In addition, the delay amount measuring unit 118 stores the delay amount obtained by adding P3 + P4 in the linearized memory 20. For example, when the period of the reference clock is T in actual operation, the delay amount measurement unit 118 linearly sets a value obtained by subtracting the delay amount (P3 + P4) obtained by loop measurement from the period T as a delay amount in actual operation. Store in the rise memory 20.
[0085]
FIG. 22 is a flowchart of the linearized memory storage control unit 100. The half-cycle delay detection unit 106 detects whether or not the delay amount to be measured is generated at the timing of the leading edge of the reference clock (step S10). When it is detected that the delay amount is generated at the timing of the leading edge of the reference clock, the half-cycle delay detection unit 106 sets a setting value in the first pulse shaping unit 104 (step S12). For example, the half cycle delay detection unit 106 sets the first pulse shaping unit 104 to “1” for the set value sel1, “0” for the set value sel2, “1” for the set value sel3, and “0” for the set value sel4. Set. The delay clock generation device 10 sets the delay clock generation unit (step S14). For example, the delay clock generation device 10 supplies a timing set signal having a delay amount to be measured.
[0086]
In step S10, when it is detected that no delay amount is generated at the timing of the leading edge of the reference clock, the delay clock generation device 10 proceeds to step S14. When the setting of the delay clock generation unit is completed, the linearized memory storage control unit 100 enables the closed circuit, inputs a measurement pulse from the measurement pulse generation unit 111, and starts loop measurement (step S16).
[0087]
The delay amount measuring unit 118 calculates the delay amount based on the value supplied from the counter unit 116 (step S18). When calculating the delay amount, the delay amount measuring unit 118 stores the calculated delay amount in the linearized memory 20 (step S20). The delay amount measuring unit 118 determines whether or not the loop measurement may be terminated (step S22). When it is determined that the loop measurement can be terminated, the loop measurement is terminated. When it is determined not to end the loop measurement, the process proceeds to step S10. Thereby, an error between the delay amount during loop measurement and the delay amount during actual operation can be suppressed.
[0088]
As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be added to the above-described embodiment. It is apparent from the description of the scope of claims that embodiments with such changes or improvements can be included in the technical scope of the present invention.
[0089]
【The invention's effect】
As is apparent from the above description, according to the present invention, the amount of delay generated by the high resolution delay unit 16 can be reduced.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a conventional timing generator 28. FIG.
FIG. 2 shows a timing chart of a conventional timing generator 28;
FIG. 3 shows a semiconductor test apparatus.
FIG. 4 is a block diagram illustrating one embodiment of timing generator 28. FIG.
5 is a block diagram illustrating details of one embodiment of timing generator 28. FIG.
6 shows a timing chart of the timing generator 28 shown in FIG.
FIG. 7 is a timing chart when the second generation method generates the reference clock in the first cycle and the first generation method generates the reference clock in the second cycle.
FIG. 8 is a diagram illustrating a relationship between a delay amount and data for setting a delay amount by the first generation method and the second generation method;
FIG. 9 is a block diagram showing another embodiment of the timing generator.
10 is a block diagram showing a detailed configuration of a half-cycle delay unit 40 included in the timing generator 28 shown in FIG. 9. FIG.
11 shows a timing chart of the half-cycle delay unit 40 shown in FIG.
12 shows a timing chart of the timing generator 28 shown in FIG.
FIG. 13 shows a delay amount generated by the delay clock generator 10 during loop measurement and actual operation.
14 is a detailed functional block diagram of the linearized memory storage control unit 100. FIG.
FIG. 15 shows an intersymbol error.
FIG. 16 shows a simulation result of an intersymbol error.
17 is a detailed functional block diagram of the first pulse shaping unit 104. FIG.
18 is an example of a timing chart in the first pulse shaping unit 104. FIG.
19 is an example of setting values set in the first pulse shaping unit 104 and the second pulse shaping unit 112. FIG.
20 is an example of a timing chart in the linearized memory storage control unit 100. FIG.
21 is an example of a timing chart in the linearized memory storage control unit 100. FIG.
22 is a flowchart of the linearized memory storage control unit 100. FIG.
23 is a functional block diagram of one embodiment of timing generator 28. FIG.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 ... Delay clock generator, 12 ... Period delay part, 14 ... AND circuit, 16 ... High-resolution delay part, 18 ... Timing memory, 20 ... Linearize memory, 22. ..Reference clock generator,
24 ... Pattern generator, 26 ... Waveform shaper, 28 ... Timing generator, 30 ... Delay signal generator, 32 ... Device insertion part, 34 ... Comparator, 36 ... Device under test, 40 ... Half-cycle delay unit, 42 ... AND circuit, 44 ... Pulse width adjustment unit, 48 ... AND circuit 48, 50 ... AND circuit, 52 ... OR circuit, 54... ENOR circuit, 56... AND circuit, 58... Flip-flop, 60... OR circuit, 62. , OR circuit, 104, first pulse shaping unit, 106, half-cycle delay detection unit, 108, AND circuit, 110, OR circuit, 111, measurement pulse generation unit, 112 ... Second pulse shaping unit, 114 AND circuit 116... Counter unit 118 118 delay amount measuring unit 120 NAND circuit 122 NAND circuit 124 inverter 126 variable delay circuit 128 ..AND circuit 130 ... AND circuit 132 ... AND circuit 134 ... variable delay circuit 136 ... OR circuit

Claims (11)

所定の遅延量を有する遅延クロックを生成する遅延クロック生成装置であって、
前記所定の遅延量より短い基準クロックの周期の整数倍の遅延量を生成する周期遅延部と、
前記基準クロックの半周期の遅延量を生成する半周期遅延部と、
前記周期遅延部及び前記半周期遅延部が生成した遅延量の和と前記所定の遅延量との差分の遅延量を、前記周期遅延部及び前記半周期遅延部が生成した遅延量に加える高分解能遅延部と、
前記整数倍の遅延量を前記周期遅延部に設定するデータを格納する第1記憶部と、
前記基準クロックの半周期の遅延量を前記半周期遅延部に設定するデータを格納する第2記憶部と、
前記所定の遅延量から前記第1記憶部に格納されたデータにより設定される遅延量及び前記第2記憶部に格納されたデータにより設定される遅延量を除いて得られる遅延量を前記高分解能遅延部に設定するデータを格納する第3記憶部と、
前記第3記憶部に格納されたデータにより設定される遅延量を生成する前記高分解能遅延部における遅延経路を格納するリニアライズメモリと、
前記リニアライズメモリに前記遅延経路を格納させるリニアライズメモリ格納制御部とを備え、
前記リニアライズメモリ格納制御部は、
所定のパルス幅を有する測定用パルスを生成する測定用パルス生成部と、
前記測定用パルスを入力するパルス入力部と、
前記パルス入力部から供給される前記測定用パルスを反転させるパルス成形部と、
前記パルス成形部が所定の時間間隔に渡り供給した前記測定用パルスの個数を計数するカウンタ部と、
前記カウンタ部が計数した前記測定用パルスの個数に基づいて、前記遅延経路の遅延量を測定して、測定した前記遅延量と前記遅延経路とを対応付けて前記リニアライズメモリに格納させる遅延量測定部と、
を有し、
前記半周期遅延部は、前記周期遅延部が生成した遅延量を有する信号を入力し、入力した前記信号を前記基準クロックの前縁または後縁のいずれかのタイミングにより前記高分解能遅延部に供給することを特徴とする遅延クロック生成装置。
A delay clock generation device that generates a delay clock having a predetermined delay amount,
A cycle delay unit that generates a delay amount that is an integral multiple of the cycle of the reference clock shorter than the predetermined delay amount;
A half-cycle delay unit for generating a half-cycle delay amount of the reference clock;
High resolution for adding the delay amount of the difference between the sum of the delay amounts generated by the period delay unit and the half cycle delay unit and the predetermined delay amount to the delay amount generated by the period delay unit and the half cycle delay unit A delay unit;
A first storage unit storing data for setting the integral multiple delay amount in the periodic delay unit;
A second storage unit for storing data for setting a half-cycle delay amount of the reference clock in the half-cycle delay unit;
The delay amount obtained by excluding the delay amount set by the data stored in the first storage unit and the delay amount set by the data stored in the second storage unit from the predetermined delay amount is obtained as the high resolution. A third storage unit for storing data to be set in the delay unit;
A linearized memory that stores a delay path in the high-resolution delay unit that generates a delay amount set by data stored in the third storage unit;
A linearized memory storage control unit for storing the delay path in the linearized memory;
The linearized memory storage controller
A pulse generator for measurement that generates a pulse for measurement having a predetermined pulse width;
A pulse input unit for inputting the measurement pulse;
A pulse shaping section for inverting the measurement pulse supplied from the pulse input section;
A counter unit for counting the number of pulses for measurement supplied by the pulse shaping unit over a predetermined time interval;
Based on the number of measurement pulses counted by the counter unit, the delay amount of the delay path is measured, and the measured delay amount and the delay path are associated with each other and stored in the linearized memory. A measuring section;
I have a,
The half cycle delay unit inputs a signal having a delay amount generated by the cycle delay unit, and supplies the input signal to the high resolution delay unit at a timing of either a leading edge or a trailing edge of the reference clock. A delay clock generation device characterized by:
前記周期遅延部が、前記基準クロックの前縁または後縁のいずれか一方を基準として前記整数倍の遅延量を生成する場合、前記半周期遅延部は、前記基準クロックの前縁または後縁の他方を立ち上がりタイミングとするパルスを生成することを特徴とする請求項に記載の遅延クロック生成装置。When the period delay unit generates the integer multiple of the delay amount with reference to either the leading edge or the trailing edge of the reference clock, the half period delay unit includes the leading edge or the trailing edge of the reference clock. The delay clock generation device according to claim 1 , wherein a pulse having the other rise timing is generated. 前記半周期遅延部は、前記基準クロックの後縁を立ち上がりタイミングとするパルスを生成する論理ゲートを有することを特徴とする請求項に記載の遅延クロック生成装置。The delay clock generation apparatus according to claim 2 , wherein the half-cycle delay unit includes a logic gate that generates a pulse whose rising timing is a trailing edge of the reference clock. 前記周期遅延部が生成した遅延量を有するパルスを前記基準クロックに基づいて生成する論理ゲートを更に備え、
前記半周期遅延部は、前記論理ゲートにより生成されたパルスのパルス幅を所定のパルス幅に調整するパルス幅調整部とを有することを特徴とする請求項1からのいずれかに記載の遅延クロック生成装置。
A logic gate for generating a pulse having a delay amount generated by the period delay unit based on the reference clock;
The delay according to any one of claims 1 to 3 , wherein the half-cycle delay unit includes a pulse width adjustment unit that adjusts a pulse width of the pulse generated by the logic gate to a predetermined pulse width. Clock generator.
前記パルス幅調整部は、前記所定のパルス幅分の遅延量を生成する遅延素子を有することを特徴とする請求項に記載の遅延クロック生成装置。The delay clock generation apparatus according to claim 4 , wherein the pulse width adjustment unit includes a delay element that generates a delay amount corresponding to the predetermined pulse width. 前記周期遅延部は、前記基準クロックのパルス数を計数するカウンタと、
前記パルス数が前記第1記憶部に格納されているデータと等しいか否かを判定する論理ゲートとを有することを特徴とする請求項1からのいずれかに記載の遅延クロック生成装置。
The period delay unit includes a counter that counts the number of pulses of the reference clock;
Delay clock generator according to any one of claims 1-5, characterized in that it comprises a logic gate is determined whether equal to the data number the pulse is stored in the first storage unit.
前記半周期の遅延量を生成するか否かに基づいて、前記パルス成形部に前記測定用パルスを反転するか否かを指定する半周期遅延検出部を更に備えることを特徴とする請求項1からのいずれかに記載の遅延クロック生成装置。The half-cycle delay detection unit that specifies whether to invert the measurement pulse in the pulse shaping unit based on whether or not the half-cycle delay amount is generated. The delay clock generation device according to any one of 1 to 6 . 前記基準クロックの前縁のタイミングで生成される遅延量を測定する場合に、前記半周期遅延検出部は、前記パルス成形部に前記測定用パルスを反転することを指定することを特徴とする請求項に記載の遅延クロック生成装置。The half-cycle delay detection unit instructs the pulse shaping unit to invert the measurement pulse when measuring the delay amount generated at the timing of the leading edge of the reference clock. Item 8. The delay clock generation device according to Item 7 . 前記パルス成形部は、前記測定用パルスを反転する論理ゲートを有することを特徴とする請求項またはに記載の遅延クロック生成装置。The pulse shaping unit, a delay clock generating apparatus according to claim 7 or 8, wherein a logic gate for inverting said measurement pulse. 前記遅延量測定部は、前記測定用パルスを反転することにより生じる位相と、前記測定用パルスを反転しないことにより生じる位相とのずれ量を、前記遅延経路の遅延量に加えて前記リニアライズメモリに格納させることを特徴とする請求項1からのいずれかに記載の遅延クロック生成装置。The delay amount measurement unit adds a shift amount between a phase generated by inverting the measurement pulse and a phase generated by not inverting the measurement pulse to the delay amount of the delay path, and delay clock generating apparatus according to claim 1, wherein 9 to be stored in. 半導体デバイスを試験する半導体試験装置において、
所定の遅延量を有する遅延クロックを生成する請求項1から1のいずれかに記載の遅延クロック生成装置と、
前記半導体デバイスへ入力する試験パターンを発生するパターン発生器と、
前記遅延クロックと前記試験パターンとに基づいて、前記半導体デバイスに適用するように前記試験パターンを整形した整形試験パターンを出力する波形整形器と、
前記半導体デバイスに前記整形試験パターンを入力するデバイス接触部と、
前記整形試験パターンを入力した前記半導体デバイスから出力される出力信号と、前記パターン発生器から出力される前記半導体デバイスから出力されるべき期待値とを比較して前記半導体デバイスの良否を判定する比較器とを備えることを特徴とする半導体試験装置。
In a semiconductor test apparatus for testing a semiconductor device,
A delay clock generating apparatus according to claim 1 1 0 that generates a delayed clock having a predetermined delay amount,
A pattern generator for generating a test pattern to be input to the semiconductor device;
A waveform shaper that outputs a shaped test pattern obtained by shaping the test pattern to be applied to the semiconductor device based on the delay clock and the test pattern;
A device contact portion for inputting the shaping test pattern to the semiconductor device;
A comparison for determining the quality of the semiconductor device by comparing an output signal output from the semiconductor device to which the shaping test pattern is input and an expected value to be output from the semiconductor device output from the pattern generator A semiconductor test apparatus.
JP2000141282A 1999-05-17 2000-05-15 Delay clock generation apparatus and semiconductor test apparatus Expired - Fee Related JP4653869B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000141282A JP4653869B2 (en) 1999-05-17 2000-05-15 Delay clock generation apparatus and semiconductor test apparatus

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP13628799 1999-05-17
JP11-136287 1999-05-17
JP2000141282A JP4653869B2 (en) 1999-05-17 2000-05-15 Delay clock generation apparatus and semiconductor test apparatus

Publications (2)

Publication Number Publication Date
JP2001033529A JP2001033529A (en) 2001-02-09
JP4653869B2 true JP4653869B2 (en) 2011-03-16

Family

ID=26469927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000141282A Expired - Fee Related JP4653869B2 (en) 1999-05-17 2000-05-15 Delay clock generation apparatus and semiconductor test apparatus

Country Status (1)

Country Link
JP (1) JP4653869B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4063830B2 (en) 2005-03-25 2008-03-19 エルピーダメモリ株式会社 Semiconductor memory device
JP4746451B2 (en) * 2006-03-13 2011-08-10 財団法人高輝度光科学研究センター High precision clock trigger continuous delay device
JP5617449B2 (en) * 2010-08-31 2014-11-05 ブラザー工業株式会社 Image reading device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2539600B2 (en) * 1985-07-10 1996-10-02 株式会社アドバンテスト Timing generator
JP2601497B2 (en) * 1988-01-30 1997-04-16 アンリツ株式会社 Data generator
JPH0341526A (en) * 1989-07-10 1991-02-22 Advantest Corp Waveform generator
JPH03163908A (en) * 1989-11-22 1991-07-15 Hitachi Ltd Clock signal delay circuit
JPH04157379A (en) * 1990-10-20 1992-05-29 Fujitsu Ltd Adjusting system of clock
JPH04371016A (en) * 1991-06-20 1992-12-24 Fujitsu Ltd Pulse width correcting circuit
JPH08195657A (en) * 1995-01-19 1996-07-30 Hitachi Ltd Pulse delay circuit
JPH10126233A (en) * 1996-10-16 1998-05-15 Sony Corp Clock-generating circuit
JPH10242841A (en) * 1997-02-25 1998-09-11 Hitachi Ltd Logic integrated circuit
JP3483437B2 (en) * 1997-08-29 2004-01-06 富士通株式会社 Semiconductor device and test method therefor
JP3588235B2 (en) * 1997-09-24 2004-11-10 株式会社アドバンテスト Semiconductor test equipment

Also Published As

Publication number Publication date
JP2001033529A (en) 2001-02-09

Similar Documents

Publication Publication Date Title
US7382146B2 (en) Semiconductor testing apparatus
JP4286375B2 (en) Delay clock generating device and delay time measuring device
US20180277194A1 (en) Timing control for input receiver
JPWO2006038468A1 (en) Phase difference measurement circuit
JPWO2005109019A1 (en) Timing generator and semiconductor test apparatus
JP4653869B2 (en) Delay clock generation apparatus and semiconductor test apparatus
US6574579B1 (en) Waveform generating device
JP2011017604A (en) Testing device and testing method
JP4394788B2 (en) Delay time judgment device
JPH04103240A (en) Pattern synchronizing circuit
JP4651804B2 (en) Semiconductor test equipment
US11533045B1 (en) Dynamic aging monitor and correction for critical path duty cycle and delay degradation
CN116131821A (en) High-precision delay clock calibration circuit and chip
JP2952131B2 (en) Test equipment for semiconductor integrated circuits
JPH0755856A (en) Cycle measuring apparatus
JP5225299B2 (en) Spread spectrum clock generator
JP3588235B2 (en) Semiconductor test equipment
JP4630359B2 (en) Delay clock generating device and delay time measuring device
JP4416446B2 (en) Shift clock generator, timing generator, and test apparatus
JP3116600B2 (en) Timing generator
EP4160231A1 (en) Timing unit establishing time measuring method and measuring circuit
TW201505376A (en) Clock edge detection device and method
JP4412775B2 (en) Delay signal generating apparatus and method for adjusting delay amount thereof
US7152176B2 (en) Dynamic resynchronization of clocked interfaces
JPH10197611A (en) Ic tester and signal generator

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070307

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091013

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100729

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20131224

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees