(57)【特許請求の範囲】
【請求項１】
第１クロックを第２クロックに同期させる同期動作を行うクロック同期回路において、複数段の前進遅延ユニットから構成され、前進パルスを用いて前記同期動作に必要な遅延時間をモニタする前進パルス用遅延線と、複数段の状態保持ユニットから構成され、前記遅延時間を前記複数段の状態保持ユニットのセット／リセット状態により保持する状態保持部と、複数段の後退遅延ユニットから構成され、後退パルスを用いて前記遅延時間をコピーする後退パルス用遅延線とを具備し、前記複数段の状態保持ユニットの各々は、リセット期間において後段の状態保持ユニットがリセット状態であることを条件にリセットされることを特徴とするクロック同期回路。
【請求項２】
前記複数段の状態保持ユニットの各々は、前記リセット期間において前々段の後退遅延ユニットに前記後退パルスが入力されていることを条件にリセットされることを特徴とする請求項１記載のクロック同期回路。
【請求項３】
前記リセット期間の長さは、前記前進パルスが伝搬する前記前進遅延ユニットの段数の変動量に基づいて決定されることを特徴とする請求項１記載のクロック同期回路。
【請求項４】
前記前進パルスが入力される前進遅延ユニットに対応する状態保持ユニットは、前記リセット期間前にセット状態となっていることを特徴とする請求項１記載のクロック同期回路。
【請求項５】
請求項１記載のクロック同期回路において、
周期τを有する前記第２クロックを受け、遅延時間Ｔｒｃを有するレシーバと、前記レシーバから出力されるクロックを受け、遅延時間Ｔｒｃ＋Ｔｄｒを有するディレイモニタと、前記第２クロックに基づいて前記リセット期間を決定する制御パルス生成回路と、前記後退パルス用遅延線から出力されるクロックを受け、遅延時間Ｔｄｒを有するドライバとを具備し、
前記遅延時間は、τ−（Ｔｒｃ＋Ｔｄｒ）であり、前記第１クロックは、前記ドライバから出力されることを特徴とするクロック同期回路。
【請求項６】
請求項１又は５記載のクロック同期回路を搭載したクロック同期型メモリ。
【請求項７】
請求項１又は５記載のクロック同期回路を搭載したメモリと、前記メモリに前記第２クロックを供給するＣＰＵと、前記メモリと前記ＣＰＵとを接続するバスとを具備することを特徴とするメモリシステム。
【請求項８】
前記メモリは、ダブルデータレートタイプＤＲＡＭ、シンクロナスＤＲＡＭ又はダブルデータレートファーストサイクルＲＡＭであることを特徴とする請求項７記載のメモリシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ダブルデータレート（DDR)タイプＤＲＡＭ、シンクロナスＤＲＡＭ（SDRAM）及びダブルデータレート  ファーストサイクルＲＡＭ（FCRAM）などのクロック同期型メモリのように高速クロックを用いて同期制御するものに好適なクロック同期回路に関する。
【０００２】
【従来の技術】
近年、コンピュータシステムにおいては、処理の高速化の要求からシンクロナスＤＲＡＭ等のクロック同期型メモリを採用することがある。このようなクロック同期型メモリは、メモリを制御するクロック（以下、“外部クロック”と称する）に対して同期したクロックをメモリ内部でも使用する。
【０００３】
しかし、レシーバ（入力バッファ）などの影響により、メモリ内部で使用するクロック（以下、“内部クロック”と称する）と外部クロックとの間にずれ（スキュ）が生じた場合、特に高速動作においては、そのずれが僅かであっても、メモリの内部回路は誤動作を起こし易くなる。また、外部クロックに対してずれを持つ内部クロックを用いてメモリから出力されたデータは、そのデータを使用するコントローラにとっても高速処理の妨げになる。
【０００４】
そこで、最近のメモリでは、内部クロックを外部クロックに高い精度で同期させるためのクロック同期回路がチップ内部に設けられる。
【０００５】
従来、クロック同期回路の構成については、周期型及び位相比較型の２種類が知られている。特に、周期型クロック同期回路としてのＳＴＢＤ（Ｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｃｅｄ  Ｂａｃｋｗａｒｄ  Ｄｅｌａｙ）は、位相比較型クロック同期回路に比べて、同期速度（パワーオンから外部クロックと内部クロックの同期が完了するまでの速度）が速いため、パワーダウンを度々行って、消費電力の削減を図ることができる。
【０００６】
図４３は、従来の周期型クロック同期回路のブロック構成を示している。
この回路は、特願平８−１００９７６号で提案されるＳＴＢＤに関する。
【０００７】
外部クロックＥＸＴＣＬＫは、遅延量Ｔｒｃを有するレシーバ（入力バッファ）１１に入力される。レシーバ１１は、外部クロックＥＸＴＣＬＫに対してＴｒｃのスキュを有するクロックＣＬＫＳＴＩＮを出力する。クロックＣＬＫＳＴＩＮは、遅延量Ｔｒｃ＋Ｔｄｒを有するディレイモニタ１２及び制御パルス生成回路１３に入力される。
【０００８】
ディレイモニタ１２は、クロックＣＬＫＳＴＩＮに基づいて、前進パルスＦＣＬＩＮを出力する。制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮに基づいて、制御パルスＰ，ｂＰを出力する。制御パルス生成回路１３は、例えば、図４８に示すような回路から構成される。
【０００９】
前進パルスＦＣＬＩＮは、前進パルス用遅延線１４に与えられる。前進パルス用遅延線１４は、直列接続されたＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎから構成される。但し、Ｎ及びｎは、共に正数で、かつ、ｎ＜Ｎとする。
【００１０】
Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作は、制御パルス（前進パルス伝達制御信号）Ｐ，ｂＰにより制御される。Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎが動作状態（前進パルスを伝達できる状態）にあるとき、各前進遅延ユニットは、前段の前進遅延ユニットから受けた前進パルスを、後段の前進遅延ユニットに伝達する。
【００１１】
前進遅延ユニット１４−ｎは、例えば、図４４に示すような回路から構成される。
【００１２】
状態保持部１５は、前進パルス遅延線１４に隣接して配置される。Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎに対応している。
【００１３】
前進パルスが入力された前進遅延ユニットは、これに対応する状態保持ユニットの状態（セット／リセット）を変える。具体的には、前進パルスＦＣＬＩＮが前進パルス用遅延線１４に入力される前には、全ての状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、リセット（Ｒ）状態となっており、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットは、リセット（Ｒ）状態からセット（Ｓ）状態に変化する。
【００１４】
状態保持ユニット１５−ｎは、例えば、図４５に示すような回路から構成される。
【００１５】
状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、制御パルス（状態保持部リセット信号）ｂＰにより、リセット状態に戻される。また、状態保持部初期化回路１７は、リセット信号ＲＥＳＥＴに基づいて、初期化信号ｂＲＳＩＮＩを出力し、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態を強制的にリセット状態に初期化する。
【００１６】
状態保持部初期化回路１７は、例えば、図４６に示すような回路から構成される。
【００１７】
なお、ディレイモニタ１２、制御パルス生成回路１３、前進パルス用遅延線１４、状態保持部１５及び状態保持部初期化回路１７は、外部クロックＥＸＴＣＬＫと内部クロックＩＮＴＣＬＫの同期をとるために必要な遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）をモニタすることを目的としており、ここでは、モニタ回路と呼ぶことにする。
【００１８】
遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）をモニタするモニタ回路に対して、後退パルス用遅延線１６は、モニタ回路によりモニタされた遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的としている。
【００１９】
後退パルス用遅延線１６は、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的としているため、前進パルス用遅延線１４を完全に模している。即ち、前進パルス用遅延線１４と後退パルス用遅延線１６は、状態保持部１５に対して対称的に配置され、かつ、両者の回路構成は、完全に同じにしてある。このようなことから、本例のＳＴＢＤは、ミラータイプＳＴＢＤと呼ばれる場合がある。
【００２０】
後退パルス用遅延線１６は、直列接続されたＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎから構成される。後退パルス用遅延線１６は、状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態及びクロックＣＬＫＳＴＩＮに基づいて、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーした後に、クロックＳＴＣＬＫを出力する。
【００２１】
後退遅延ユニット１６−ｎは、例えば、図４７に示すような回路から構成される。
【００２２】
クロックＳＴＣＬＫは、遅延量Ｔｄｒを有するドライバ１８を経由すると、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫとなる。
【００２３】
次に、ＳＴＢＤにおける同期動作原理について説明する。
【００２４】
ここでは、図４３に示すＳＴＢＤのように、ｎ段目の前進遅延ユニット１５−ｎは、ｎ段目の状態保持ユニット１５−ｎの状態を変え、ｎ段目の状態保持ユニット１５−ｎの状態に基づいて、ｎ−１段目の後退遅延ユニット１６−（ｎ−１）が動作するものとする。
【００２５】
図４９は、ＳＴＢＤの同期動作原理を説明するための波形図である。
【００２６】
同図（ａ）に示す周期τの外部クロックＥＸＴＣＬＫがレシーバ１１に入力される場合を考える。
【００２７】
外部クロックＥＸＴＣＬＫは、レシーバ１１により、波形整形、かつ、増幅され、クロックＣＬＫＳＴＩＮとして出力される。レシーバ１１が有する遅延時間をＴｒｃとすると、クロックＣＬＫＳＴＩＮは、外部クロックＥＸＴＣＬＫに対して、Ｔｒｃだけ遅延する（同図（ｂ））。
【００２８】
レシーバ１１から出力されるクロックＣＬＫＳＴＩＮは、ディレイモニタ（ミミックディレイ）１２、制御パルス生成回路１３、後退パルス用遅延線１６にそれぞれ入力する。
【００２９】
制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮをパルス化し、クロックＣＬＫＳＴＩＮに同期して立ち上がる制御パルスＰを生成する。例えば、制御パルスＰの周期は、τ、パルス幅は、Ｗｐに設定される（同図（ｃ））。なお、制御パルスｂＰは、制御パルスＰの反転信号である。
【００３０】
ディレイモニタ１２は、レシーバ１１が有する遅延時間Ｔｒｃとドライバ１４が有する遅延時間Ｔｄｒの合計に等しい遅延時間（Ｔｒｃ＋Ｔｄｒ）を有する。従って、ディレイモニタ１２から出力される前進パルスＦＣＬＩＮは、レシーバ１１から出力されるクロックＣＬＫＳＴＩＮに対して、（Ｔｒｃ＋Ｔｄｒ）だけ遅れて、前進パルス用遅延線１４に入力される（同図（ｄ））。
【００３１】
前進パルス用遅延線１４は、直列接続されたＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎから構成される。Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの各々は、制御パルスＰが“Ｌ（Ｌｏｗ）”レベルのとき、前段の前進遅延ユニットから出力される前進パルスを受け、後段の前進遅延ユニットにその前進パルスを伝搬する。また、Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの各々は、制御パルスＰが“Ｈ（Ｈｉｇｈ）”レベルのとき、前進パルス用遅延線１４における前進パルスの伝搬を止める。
【００３２】
即ち、前進パルスＦＣＬＩＮは、前進パルス用遅延線１４に入力されてから制御パルスＰが“Ｈ”レベルになるまでの期間｛τ−（Ｔｒｃ＋Ｔｄｒ）｝だけ、前進パルス用遅延線１４を伝搬する（同図（ｄ））。
【００３３】
状態保持部１５は、前進パルスの伝搬状態を記憶し、その情報をもとに、後退パルスの後退パルス用遅延線１６内での伝搬時間が、前進パルスの前進パルス用遅延線１４内での伝搬時間と同一になるように、後退パルス用遅延線１６内における各後退遅延ユニットの動作を制御する。
【００３４】
状態保持部１５は、セット（Ｓ）状態とリセット（Ｒ）状態の２種類の状態をとることができ、それぞれに応じた制御信号を後退遅延ユニットに出力する。
【００３５】
セット状態になった状態保持ユニットに制御される後退遅延ユニットは、その後段に配置される後退遅延ユニットの出力信号を、そのままその前段に配置される後退遅延ユニットに出力する。リセット状態に保たれた状態保持ユニットに制御される後退遅延ユニットは、レシーバ１１の出力信号を、その前段に配置される後退遅延ユニットに出力する。
【００３６】
初期状態の状態保持部１５では、状態保持部初期化回路１７により、全ての状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎがリセット状態となっており、前進パルスが入力されない前進遅延ユニットに対応する状態保持ユニットは、そのままリセット状態を保ち、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットは、セット状態になる。
【００３７】
制御パルスＰが“Ｈ”レベルになったときは、クロックＣＬＫＳＴＩＮも“Ｈ”レベルになっているので（同図（ｂ），（ｃ））、リセット状態の状態保持ユニットに制御される後退遅延ユニット（例えば、図１７のｎ段目以降の後退遅延ユニット）に“Ｈ”レベルの入力信号（ＣＬＫＳＴＩＮ）が入力される。
【００３８】
前進パルスが伝搬した前進遅延ユニットの段数をｎとすると、１〜ｎ段目の状態保持ユニット１５−１，１５−２，・・・１５−ｎがセット状態となっているので、リセット状態の（ｎ＋１）段目の状態保持ユニットに制御されるｎ段目の後退遅延ユニット１６−ｎにおいて後退パルスが生成され、後退パルスは、後退遅延ユニット１６−ｎからその前段の後退遅延ユニット１６−（ｎー１）に伝搬される。
【００３９】
このため、後退パルスが伝搬する後退遅延ユニットの段数は、前進パルスが伝搬した前進遅延ユニットの段数に等しくなる。
【００４０】
ここで、前進パルスの前進パルス用遅延線１４における伝搬時間（遅延時間）と後退パルスの後退パルス用遅延線１６における伝搬時間（遅延時間）とは、互いに等しくなるように設計されているため、前進パルスＦＣＬＩＮが前進パルス用遅延線１４に入力されてから後退パルス用遅延線１６から後退パルスＳＴＣＬＫが出力されるまでの時間は、｛τ−（Ｔｒｃ＋Ｔｄｒ）｝×２となる（同図（ｅ））。
【００４１】
そして、後退パルス遅延線１６から出力された後退パルス（クロック）ＳＴＣＬＫは、ドライバ１８に入力される。ドライバ１８は、遅延時間Ｔｄｒを有しているため、ドライバ１８の出力信号は、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫとなる（同図（ｆ））。
【００４２】
外部クロックＥＸＴＣＬＫがレシーバ１１に入力されてから内部クロックＩＮＴＣＬＫがドライバ１８から出力されるまでの遅延時間をΔｔｏｔａｌとして計算すると、
Δｔｏｔａｌ＝Δｍｓｒ＋Δｐｒｐ                ・・・（１）
が得られる。
【００４３】
ここで、Δｍｓｒは、前進パルスがディレイモニタ１２に入力されてから前進パルス用遅延線１４内で前進パルスの伝搬が遮断されるまでの時間であり、Δｐｒｐは、前進パルス用遅延線１４内で前進パルスの伝搬が遮断されてから後退パルス用遅延線１６内で生成された後退パルスがドライバ１８から出力されるまでの時間とレシーバ１１の遅延量の合計時間である。
【００４４】
また、ディレイモニタ１２は、遅延量（Ｔｒｃ＋Ｔｄｒ）を持ち、前進パルスが前進パルス用遅延線１４を伝搬する時間が、｛τ−（Ｔｒｃ＋Ｔｄｒ）｝であるとすると、Δｍｓｒは、以下の（２）式で表せる。
0004005779.tif 000002
また、レシーバ１１は、遅延量Ｔｒｃを持ち、ドライバ１８は、遅延量Ｔｄｒを持ち、後退パルスが後退パルス用遅延線１６を伝搬する時間が、｛τ−（Ｔｒｃ＋Ｔｄｒ）｝であるとすると、Δｐｒｐは、以下の（３）式で表せる。
0004005779.tif 000003
上記（３）式より、Δｐｒｐは、τとなるので、結果として、内部クロックＩＮＴＣＬＫが外部クロックＥＸＴＣＬＫに同期する。
【００４５】
なお、上記（１）〜（３）式によれば、外部クロックＥＸＴＣＬＫがチップ（具体的には、レシーバ１１）内に入力されてから、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫが生成されるまでに要する時間は、２τとなる。
【００４６】
このように、周期型クロック同期回路としてのＳＴＢＤでは、外部クロックＥＸＴＣＬＫがチップ内に入力されてから内部クロックＩＮＴＣＬＫが生成されるまでの時間が２τと短く、位相比較型クロック同期回路と比べて、同期速度（パワーオンから外部クロックと内部クロックの同期が完了するまでの速度）が速くなっている。このため、メモリを使用していない期間が度々あり、その期間が非常に短い場合であっても、その都度、パワーダウンを行って、消費電力の削減を図ることができる。
【００４７】
ところで、従来の周期型クロック同期回路では、メモリを連続して使用する場合には、外部クロックＥＸＴＣＬＫの数サイクルのうちに１回だけモニタ動作を行い、そのモニタ動作で得られた状態保持部１５の状態を、外部クロックＥＸＴＣＬＫの数サイクルの間、固定しておくことにより、さらに、消費電力の削減を図ることができる。
【００４８】
しかし、このような手法には、いくつかの問題がある。
【００４９】
即ち、実際に、メモリを動作させる際には、外部クロックＥＸＴＣＬＫに周期変動が生じたり、また、チップ周辺の温度が変化したりする。この場合、前進パルスが伝搬する前進遅延ユニットの段数は、一定でなく、外部クロックＥＸＴＣＬＫの周期変動やチップ周辺の温度などに応じて変化する。
【００５０】
従って、状態保持部１５の状態を、外部クロックＥＸＴＣＬＫの数サイクルの間、固定してしまうと、その数サイクルの間に、外部クロックＥＸＴＣＬＫと内部クロックＩＮＴＣＬＫとの間で同期ずれが生じ、高精度に、両クロックを同期させることができなくなる。
【００５１】
例えば、図５０に示すように、温度変動などの影響により、ｋサイクルでの前進パルスの伝搬段数に対して、ｋ＋１サイクルでの前進パルスの伝搬段数がδだけ増えた場合を考える。この場合、１サイクルごとに、外部クロックＥＸＴＣＬＫのモニタを行っていれば、常に、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫが得られ、問題はないが、１サイクルごとに外部クロックＥＸＴＣＬＫのモニタを行っていないときには、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫが得られなくなる。
【００５２】
また、図５１に示すように、温度変動などの影響により、ｋサイクルでの前進パルスの伝搬段数に対して、ｋ＋１サイクルでの前進パルスの伝搬段数がδだけ減った場合を考える。この場合も、１サイクルごとに、外部クロックＥＸＴＣＬＫのモニタを行っていれば、常に、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫが得られ、問題はないが、１サイクルごとに外部クロックＥＸＴＣＬＫのモニタを行っていないときには、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫが得られなくなる。
【００５３】
このように、１サイクルごとにモニタ動作を行えば、同期精度を向上できるが、消費電力は大きくなる。逆に、数サイクルごとにモニタ動作を行えば、消費電力は小さくなるが、同期精度が低くなる。
【００５４】
近年では、温度変動などの影響による前進パルスの伝搬段数の変化は、小さくなる傾向にあり、実際には、モニタ動作は、消費電力と同期精度を考慮して、定期的（１サイクルごと又は複数サイクルごと）に行っている。
【００５５】
なお、複数サイクルごとに、１回のモニタ動作を行って、低消費電力化を達成する技術としては、特許願２００１−４６７３７号に開示されるものがある。
【００５６】
また、図５１の場合においては、定期的、例えば、１サイクルごとに、外部クロックＥＸＴＣＬＫのモニタを行うに当たって、ｋ＋１サイクルでは、少なくともｎ段目及びｎ＋１段目の状態保持ユニットがリセット（Ｒ）状態になっていなければならない。
【００５７】
即ち、ｋサイクルでの前進パルスの伝搬段数に対して、ｋ＋１サイクルでの前進パルスの伝搬段数がδだけ減るのであるから、これに対応して、セット（Ｓ）状態の状態保持ユニットの数も減らさなければならない。従って、ｋ＋１サイクルが始まる前に、δに対応する状態保持ユニット（図５１では、破線で囲んである）又はそれを含む状態保持ユニット（ｎ−１段より前のユニット）を、セット状態からリセット状態に戻す必要がある（この動作を、以後、“リセット動作”と称する）。
【００５８】
周期型クロック同期回路（ＳＴＢＤ，ＳＭＤなど）のうち、ＳＴＢＤにおいては、状態保持部１５内の状態保持ユニット１５−１，１５−２，・・・，１５−ｎ，・・・１５−Ｎがラッチ回路を有している。
【００５９】
ラッチ回路としては、一定時間の間のみ、その状態を保持し得るダイナミック型ラッチ回路と、リセットなどが行われない限り、常に、その状態を保持しているスタティック型ラッチ回路とを採用できるが、いずれの場合においても、特に、図５１のケースを考慮し、モニタ動作を行った後には、次のモニタ動作に備えて、リセット動作を行い、状態保持部１５内の状態保持ユニット１５−１，１５−２，・・・，１５−ｎ，・・・１５−Ｎの状態をリセットする必要がある。
【００６０】
ところで、従来、定期的（１サイクルごと又は複数サイクルごと）に行うリセット動作に関しては、種々の方法が考え出されているが、低消費電力、高い同期精度、簡易なレイアウト、小さな回路サイズなどを同時に実現するものは、未だ、提案されていない。
【００６１】
【発明が解決しようとする課題】
このように、ラッチ回路を用いてモニタ結果を一定期間保持するクロック同期回路においては、定期的、即ち、外部クロックＥＸＴＣＬＫの１サイクル又は複数サイクルごとに、状態保持部内の状態保持ユニットのリセット動作及びクロックのモニタ動作を行わなければならない。しかし、低消費電力、高い同期精度、簡易なレイアウト、小さな回路サイズなどを同時に実現するクロック同期回路は、未だ、提案されていない。
【００６２】
本発明の目的は、低消費電力と高い同期精度を同時に実現できると共に、簡易なレイアウト、かつ、小さな回路サイズで形成できるクロック同期回路を提案することにある。
【００６３】
【課題を解決するための手段】
１．  本発明のクロック同期回路は、第１クロックを第２クロックに同期させる同期動作を行うものであり、複数段の前進遅延ユニットから構成され、前進パルスを用いて前記同期動作に必要な遅延時間をモニタする前進パルス用遅延線と、複数段の状態保持ユニットから構成され、前記遅延時間を前記複数段の状態保持ユニットのセット／リセット状態により保持する状態保持部と、複数段の後退遅延ユニットから構成され、後退パルスを用いて前記遅延時間をコピーする後退パルス用遅延線とを備え、前記複数段の状態保持ユニットの各々は、リセット期間において後段の状態保持ユニットがリセット状態であることを条件にリセットされる。
【００６４】
前記複数段の状態保持ユニットの各々は、さらに、前記リセット期間において前々段の後退遅延ユニットに前記後退パルスが入力されていることを条件にリセットされる。
【００６５】
前記リセット期間の長さは、前記前進パルスが伝搬する前記前進遅延ユニットの段数の変動量に基づいて決定される。前記リセット期間は、前記遅延時間のコピーが開始されてから一定期間が経過した後に設けられる。
【００６６】
前記前進パルスが入力される前進遅延ユニットに対応する状態保持ユニットは、前記リセット期間前にセット状態となっている。
【００６７】
前記複数段の前進遅延ユニットの各々は、後段の前進遅延ユニットに接続される出力端と同一段の状態保持ユニットに接続される出力端とを有している。
【００６８】
前記複数段の後退遅延ユニットの各々は、前段の後退遅延ユニットに接続される出力端を有し、前記複数段の状態保持ユニットのうちの１つに接続される出力端を有していない。
【００６９】
前記第１クロックは、前記クロック同期回路が形成されるチップの内部で使用される内部クロックであり、前記第２クロックは、前記チップの外部から内部へ供給される外部クロックである。
【００７０】
本発明のクロック同期回路は、さらに、周期τを有する前記第２クロックを受け、遅延時間Ｔｒｃを有するレシーバと、前記レシーバから出力されるクロックを受け、遅延時間Ｔｒｃ＋Ｔｄｒを有するディレイモニタと、前記第２クロックに基づいて前記リセット期間を決定する制御パルス生成回路と、前記後退パルス用遅延線から出力されるクロックを受け、遅延時間Ｔｄｒを有するドライバとを備える。
【００７１】
前記遅延時間は、τ−（Ｔｒｃ＋Ｔｄｒ）であり、前記第１クロックは、前記ドライバから出力される。
【００７２】
２．  本発明のクロック同期型メモリは、上述のクロック同期回路を搭載している。
【００７３】
本発明のメモリシステムは、上述のクロック同期回路を搭載したメモリと、前記メモリに前記第２クロックを供給するＣＰＵと、前記メモリと前記ＣＰＵとを接続するバスとを備える。
【００７４】
前記メモリは、ダブルデータレートタイプＤＲＡＭ、シンクロナスＤＲＡＭ又はダブルデータレートファーストサイクルＲＡＭである。
【００７５】
【発明の実施の形態】
以下、図面を参照しながら、本発明のクロック同期回路について詳細に説明する。
【００７６】
ＳＴＢＤなどの周期型クロック同期回路においては、定期的（１サイクル又は複数サイクルごと）に、モニタ動作を行う場合、モニタ動作を行う前に、状態保持部のリセット動作を行わなければならない。
【００７７】
本発明は、このリセット動作の方法又はこれを実行するための回路を提案するものである。
【００７８】
以下では、まず、リセット動作に関する参考例（特開平１１−２７２３５４号公報）を説明し、その後、本発明のクロック同期回路の実施の形態について説明する。
【００７９】
なお、参考例及び実施の形態の説明においては、前進遅延ユニット、状態保持ユニット及び後退遅延ユニットに関して、“前段”、“後段”なる文言を使用するが、簡単のため、これらを以下のように定義する。
【００８０】
前進遅延ユニット及び状態保持ユニットに関しては、前進パルスの進行方向に向かって段数が増えるものとし、所定のユニットに対して前進パルスの進行方向とは逆方向にあるユニットを“前段”のユニットとし、同一方向にあるユニットを“後段”のユニットとする。
【００８１】
後退遅延ユニットに関しても、上記の定義と同じとする。
【００８２】
即ち、後退遅延ユニットに関しては、前進パルスの進行方向（後退パルスの進行方向とは逆方向）に向かって段数が増えるものとし、所定のユニットに対して前進パルスの進行方向とは逆方向（後退パルスの進行方向）にあるユニットを“前段”のユニットとし、同一方向（後退パルスの進行方向とは逆方向）にあるユニットを“後段”のユニットとする。
【００８３】
［参考例］
図１は、本発明の参考例であるＳＴＢＤのブロック構成を示している。
【００８４】
外部クロックＥＸＴＣＬＫは、遅延量Ｔｒｃを有するレシーバ（入力バッファ）１１に入力される。レシーバ１１は、外部クロックＥＸＴＣＬＫに対してＴｒｃのスキュを有するクロックＣＬＫＳＴＩＮを出力する。
【００８５】
クロックＣＬＫＳＴＩＮは、遅延量（Ｔｒｃ＋Ｔｄｒ）を有するディレイモニタ１２、制御パルス生成回路１３及び後退パルス用遅延線１６を構成するＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎにそれぞれ入力される。
【００８６】
ディレイモニタ１２は、クロックＣＬＫＳＴＩＮに基づいて、前進パルスＦＣＬＩＮを出力する。制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮに基づいて、制御パルスＰ，ｂＰを出力する。
【００８７】
制御パルスＰ，ｂＰは、前進パルス用遅延線１４を構成するＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作を制御する。即ち、前進パルスＦＣＬＩＮを前進パルス用遅延線内で伝達させるか否か（外部クロックＥＸＴＣＬＫをモニタするか否か）は、制御パルスＰ，ｂＰにより決定される。
【００８８】
状態保持部制御回路１９は、制御パルスｂＰ及び後退パルス用遅延線１６から出力される後退パルスＳＴＣＬＫに基づいて、制御パルスＢＰＭを生成する。制御パルスＢＰＭは、状態保持部１５のリセットを行うタイミング（又はリセット期間）を決定する。
【００８９】
ここで、制御パルス生成回路１３及び状態保持部制御回路１９の具体例について簡単に説明する。
【００９０】
図６は、制御パルス生成回路１３の一例を示している。
【００９１】
制御パルス生成回路１３は、インバータ及びＮＡＮＤ回路から構成される周知のパルス生成回路から構成される。ＮＡＮＤ回路の出力信号は、制御パルスｂＰとなり、この制御パルスｂＰのレベルをインバータで反転させると、制御パルスＰが得られる。この制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮが“Ｌ”から“Ｈ”になると、その後、一定幅の制御パルスＰ，ｂＰを出力する。
【００９２】
図７は、状態保持部制御回路１９の一例を示している。
【００９３】
状態保持部制御回路１９は、制御パルスｂＰが“Ｌ”から“Ｈ”になる時点及びクロックＳＴＣＬＫが“Ｈ”から“Ｌ”になる時点（後退パルスのリアエッジが後退パルス用遅延線から出力される時点）をモニタするフリップフロップ回路と、インバータ及びＮＡＮＤ回路から構成される周知のパルス生成回路とから構成される。
【００９４】
状態保持部制御回路１９は、制御パルスｂＰが“Ｌ”から“Ｈ”になる時点とクロックＳＴＣＬＫが“Ｈ”から“Ｌ”になる時点のうちのいずれか遅い時点から一定の遅延時間を経た後、一定幅を有する制御パルスＢＰＭを出力する。
【００９５】
即ち、クロックＳＴＣＬＫが立ち下がる時点が制御パルスｂＰが立ち上がる時点よりも遅い場合、クロックＳＴＣＬＫが立ち下がってから一定の遅延時間が経過した後に、制御パルスＢＰＭが出力される。また、クロックＳＴＣＬＫが立ち下がる時点が制御パルスｂＰが“Ｌ”の期間内（ｂＰが立ち上がる前）にある場合、制御パルスｂＰが立ち上がってから一定の遅延時間が経過した後に、制御パルスＢＰＭが出力される。
【００９６】
なお、本参考例は、この状態保持部制御回路１９を有している点において、従来例（図４３）と相違している。
【００９７】
前進パルスＦＣＬＩＮは、前進パルス用遅延線１４に与えられる。前進パルス用遅延線１４は、直列接続されたＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎから構成される。但し、Ｎ及びｎは、共に正数で、かつ、ｎ＜Ｎとする。
【００９８】
Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作は、制御パルス（前進パルス伝達制御信号）Ｐ，ｂＰにより制御される。Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎが動作状態（前進パルスを伝達できる状態）にあるとき、各前進遅延ユニットは、前段の前進遅延ユニットから受けた前進パルスを、後段の前進遅延ユニットに伝達する。
【００９９】
ここで、前進パルス用遅延線１４内の前進遅延ユニット１４−ｎの具体例について説明する。
【０１００】
図２は、前進遅延ユニット１４−ｎの一例を示している。
【０１０１】
本例では、前進遅延ユニット１４−ｎは、３つのインバータＩ１，Ｉ２，Ｉ３と、２つのクロックドインバータＣＩ１，ＣＩ２とから構成される。クロックドインバータＣＩ１，ＣＩ２の動作は、制御パルスＰ，ｂＰにより制御される。
【０１０２】
制御パルスＰが“Ｌ”レベル、制御パルスｂＰが“Ｈ”レベルのときは、クロックドインバータＣＩ１が動作状態となり、クロックドインバータＣＩ２が非動作状態となる。このため、前進パルスＦＣＬｎ−１は、クロックドインバータＣＩ１及びインバータＩ２を経由して、後段の前進遅延ユニット１４−（ｎ＋１）に伝達される。インバータＩ３の出力信号ＦＦＣＬｎは、状態保持ユニット１５―ｎに与えられる。
【０１０３】
また、制御パルスＰが“Ｈ”レベル、制御パルスｂＰが“Ｌ”レベルのときは、クロックドインバータＣＩ１が非動作状態となり、クロックドインバータＣＩ２が動作状態となる。このため、全ての前進遅延ユニットにおいて、“Ｌ”レベルの電位ＶＳＳがクロックドインバータＣＩ２に入力され、ノードＡは、“Ｈ”レベルにリセットされる。
【０１０４】
なお、インバータＩ１は、後述する後退遅延ユニット１６−ｎ（図５参照）との対称性を考慮して設けられたものであり、その出力信号ｂＦＣＬｎは、使用されない。
【０１０５】
状態保持部１５は、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎから構成される。Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎに対応している。
【０１０６】
前進パルスが入力された前進遅延ユニットは、これに対応する状態保持ユニットの状態（セット／リセット）を変える。具体的には、前進パルスＦＣＬＩＮが前進パルス用遅延線１４に入力される前には、全ての状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、リセット（Ｒ）状態となっており、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットは、リセット（Ｒ）状態からセット（Ｓ）状態に変化する。
【０１０７】
なお、状態保持ユニット１５−ｎの状態を変える役割を果たすのが前進遅延ユニットの出力信号ＦＦＣＬｎである。
【０１０８】
状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、制御パルス（状態保持部リセット信号）ＢＰＭにより、リセット状態に戻される。また、状態保持部初期化回路１７は、リセット信号ＲＥＳＥＴに基づいて、初期化信号ｂＲＳＩＮＩを出力し、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態を強制的にリセット状態に初期化する。
【０１０９】
ここで、状態保持ユニット１５−ｎ及び状態保持部初期化回路１７について簡単に説明する。
【０１１０】
図３は、状態保持ユニット１５−ｎの一例を示している。
【０１１１】
状態保持ユニット１５−ｎは、電源端子ＶＤＤとノードＣの間に直列接続されるＰチャネルＭＯＳトランジスタＰ１，Ｐ２、接地端子ＶＳＳとノードＣの間に直列接続されるＮチャネルＭＯＳトランジスタＮ１，Ｎ２、電源端子ＶＤＤとノードＣの間に接続されるＰチャネルＭＯＳトランジスタＰ３及びノードＣ，Ｄの間に接続されるラッチ回路ＬＡＴＣＨから構成される。
【０１１２】
本例では、ラッチ回路ＬＡＴＣＨは、リセットされない限り、常に、同じ状態を保持するスタティック型ラッチ回路としている。リセット時には、ＢＰＭ及びｂＲＣＬｎ−２が共に“Ｌ”レベルとなり、ノードＣが“Ｈ”レベル、ノードＤが“Ｌ”レベルとなる。なお、ｂＲＣＬｎ−２は、後述する後退遅延ユニット１６−（ｎ−２）から出力される信号である。
【０１１３】
制御パルスＢＰＭが“Ｈ”レベルの時、前進遅延ユニット１４−ｎに前進パルスＦＣＬｎ−１が入力されると、前進遅延ユニット１４−ｎの出力信号ＦＦＣＬｎが“Ｈ”レベルとなるため、状態保持ユニット１５−ｎは、セット状態、即ち、ノードＣが“Ｌ”レベル、ノードＤが“Ｈ”レベルの状態に変化する。
【０１１４】
状態保持ユニット１５−ｎのノードＣの信号ｂＱｎ及びノードＤの信号Ｑｎは、それぞれ、後述する後退遅延ユニット１６−ｎに供給される。後退遅延ユニット１６−ｎの動作は、状態保持ユニット１５−ｎの出力信号Ｑｎ，ｂＱｎにより制御される。
【０１１５】
図４は、状態保持部初期化回路１７の一例を示している。
【０１１６】
状態保持部初期化回路１７は、例えば、直列接続された３つのインバータからなる遅延回路により構成される。リセット信号ＲＥＳＥＴが“Ｈ”レベルになると、制御信号ｂＲＳＩＮＩが“Ｌ”レベルとなるため、図３のＰチャネルＭＯＳトランジスタＰ３がオン状態となり、状態保持ユニット１５−ｎがリセット状態となる。
【０１１７】
なお、制御パルスＢＰＭによるリセット動作と制御信号ｂＲＳＩＮＩによるリセット動作とは、別個のものとして区別される。
【０１１８】
上述のディレイモニタ１２、制御パルス生成回路１３、前進パルス用遅延線１４、状態保持部１５及び状態保持部初期化回路１７は、外部クロックＥＸＴＣＬＫと内部クロックＩＮＴＣＬＫの同期をとるために必要な遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）をモニタすることを目的としている。
【０１１９】
これに対して、後退パルス用遅延線１６は、モニタ回路によりモニタされた遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的とする。後退パルス用遅延線１６は、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的としているため、前進パルス用遅延線１４を完全に模している。即ち、前進パルス用遅延線１４と後退パルス用遅延線１６は、状態保持部１５に対して対称的に配置され、かつ、両者の回路構成は、完全に同じである。
【０１２０】
後退パルス用遅延線１６は、直列接続されたＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎから構成される。後退パルス用遅延線１６は、状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態及びクロックＣＬＫＳＴＩＮに基づいて、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーした後に、クロックＳＴＣＬＫを出力する。
【０１２１】
ここで、後退パルス用遅延線１６内の後退遅延ユニット１６−（ｎ−１）の具体例について説明する。
【０１２２】
図５は、後退遅延ユニット１６−（ｎ−１）の一例を示している。
【０１２３】
本例では、後退遅延ユニット１６−（ｎ−１）は、３つのインバータＩ４，Ｉ５，Ｉ６と、２つのクロックドインバータＣＩ３，ＣＩ４とから構成される。クロックドインバータＣＩ３，ＣＩ４の動作は、状態保持ユニット１５−ｎから出力される制御信号Ｑｎ，ｂＱｎにより制御される。
【０１２４】
リセット状態の状態保持ユニット（所定段以降の状態保持ユニット）に対応する後退遅延ユニット、即ち、制御信号Ｑｎが“Ｌ”レベル、制御信号ｂＱｎが“Ｈ”レベルの後退遅延ユニットでは、クロックドインバータＣＩ４が動作状態となり、クロックドインバータＣＩ３が非動作状態となる。このため、クロックＲＣＬＩＮ（＝ＣＬＫＳＴＩＮ）がクロックドインバータＣＩ４に入力され、後退パルスが生成される。
【０１２５】
セット状態の状態保持ユニット（所定段より前の状態保持ユニット）に対応する後退遅延ユニット、即ち、制御信号Ｑｎが“Ｈ”レベル、制御信号ｂＱｎが“Ｌ”レベルの後退遅延ユニットでは、クロックドインバータＣＩ３が動作状態となり、クロックドインバータＣＩ４が非動作状態となる。このため、前段の後退遅延ユニットで生成された後退パルスＲＣＬｎ＋１が、クロックドインバータＣＩ３及びインバータＩ５を経由して、後段の後退遅延ユニットに、ＲＣＬｎとして伝達される。インバータＩ６の出力信号ｂＲＣＬｎは、状態保持ユニット１５―（ｎ＋２）に与えられる。
【０１２６】
なお、インバータＩ４は、前進遅延ユニット１４−ｎ（図２参照）との対称性を考慮して設けられたもので、その出力信号ＲＲＣＬｎは、使用されない。
【０１２７】
クロックＳＴＣＬＫは、遅延量Ｔｄｒを有するドライバ１８を経由すると、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫとなる。
【０１２８】
本参考例（図１）のクロック同期回路と従来例（図４３）のクロック同期回路を比較すると、前者は、制御パルスＢＰＭによりリセット動作を制御しているのに対し、後者は、制御パルスｂＰによりリセット動作を制御している。
【０１２９】
制御パルスｂＰによりリセット動作を制御する場合（図４３の場合）、リセット期間（ｂＰ＝“Ｌ”の期間）は、後退パルスとは関係なく、クロックＣＬＫＳＴＩＮの立ち上がりエッジのみによって決まる。そして、リセット期間では、後退パルスが入力される後退遅延ユニット、即ち、ＲＣＬｉ（ｉは段数）が“Ｈ”のユニットの２つ後段の状態保持ユニットの状態がリセットされる。
【０１３０】
例えば、図４３において、後退パルスのフロントエッジが後退遅延ユニット１６−（ｎ−２）に入力されている場合、その後退遅延ユニット１６−（ｎ−２）の２つ後段の状態保持ユニット１５−ｎ及びそれよりさらに後段の状態保持ユニット１５−（ｎ＋１），・・・がリセット状態となる。
【０１３１】
しかし、この場合、リセット期間においては、常に、後退パルスが入力される後退遅延ユニットの２つ後段の状態保持ユニットの状態がリセットされる。
【０１３２】
従って、例えば、図８に示すように、後退パルス用遅延線１６内に２つの後退パルスＢ１，Ｂ２が存在するタイミングでは、先の後退パルスＢ１が入力される後退遅延ユニット１６−１の２つ後段の状態保持ユニット(破線で示す）１５−３の状態がリセットされ、後退パルス用遅延線１６の一部、即ち、後退遅延ユニット１６−２において後退パルス用遅延線１６が電気的に切断される。
【０１３３】
その結果、後の後退パルスＢ２の伝達経路が途中で遮断されてしまうことになり、後退パルスの出力タイミングが狂い、正確な同期制御が行えなくなる。
【０１３４】
これに対し、制御パルスＢＰＭによりリセット動作を制御する場合（図１の場合）、リセット期間（ＢＰＭ＝“Ｌ”の期間）は、後退パルス用遅延線１６から出力される後退パルス（クロック）ＳＴＣＬＫの立ち下がりエッジ及びクロックＣＬＫＳＴＩＮの立ち上がりエッジ（又は制御パルスｂＰの立ち上がりエッジ）に基づいて決定される。
【０１３５】
即ち、図７の回路図から明らかなように、リセット期間は、後退パルス（クロック）ＳＴＣＬＫが立ち下がる時点及び制御パルスｂＰが立ち上がる時点のうちのいずれか遅い時点から一定の遅延時間が経過した後の一定期間（ＢＰＭ＝“Ｌ”の期間）となる。但し、後退パルス（クロック）ＳＴＣＬＫが立ち下がる時点は、常に、制御パルスｂＰが立ち下がる時点よりも遅いものとする。
【０１３６】
そして、リセット期間では、後退パルスが入力される後退遅延ユニット、即ち、ＲＣＬｉ（ｉは段数）が“Ｈ”のユニットの２つ後段の状態保持ユニットの状態がリセットされる。
【０１３７】
ここで、図１の場合には、後退パルス用遅延線１６内に２つの後退パルスＢ１，Ｂ２が存在するタイミングにおいても、常に、先の後退パルスＢ１（のリアエッジ）が後退パルス用遅延線１６から完全に出力された後に、状態保持ユニットのリセット動作が行われるため、後退パルス用遅延線１６の一部、即ち、後の後退パルスＢ２の伝達経路が途中で遮断されてしまうことがない。
【０１３８】
例えば、図９に示すように、先の後退パルスＢ１（のリアエッジ）が後退パルス用遅延線１６から出力された後にリセット動作が行われるため、リセット時には、後の後退パルスＢ２が入力される後退遅延ユニット１６−ｎの２つ後段の状態保持ユニット１５−（ｎ＋２）及びそれよりもさらに後段のユニット１５−（ｎ＋３），・・・の状態がリセット状態となる。
【０１３９】
従って、図１の場合には、後の後退パルスＢ２の伝達経路が途中で遮断されてしまうことがないため、後退パルスの出力タイミングの狂いがなく、正確な同期制御が行える。
【０１４０】
このように、本参考例では、後退パルス用遅延線１６内に２つの後退パルスが存在する場合を考慮し、新規に、状態保持部制御回路１９を設け、この状態保持部制御回路１９を用いて、常に、後退パルスが後退パルス用遅延線１６から出力された後に状態保持部１５のリセット動作が行われるようにしている。
【０１４１】
しかし、図１のクロック同期回路では、後退パルス用遅延線１６から後退パルス（のリアエッジ）が出力される時点に基づいてリセット期間を決定しているため、後退パルス用遅延線１６から後退パルス（のリアエッジ）が出力される時点の変化により、１サイクル内でのリセットの時点がサイクルごとに変化する、という現象が生じる。
【０１４２】
そして、リセットの時点がサイクルごとに変化すると、これに伴い、リセットされる状態保持ユニット数（リセット段数）及び１サイクル内で生成される後退パルスのパルス幅が変化する。
【０１４３】
このようなリセット段数の変化や後退パルスのパルス幅の変化は、不規則な動作による内部クロックＩＮＴＣＬＫのばらつきや、必要数以上のユニットをリセットすることによる消費電流の増大などを生じさせる。
【０１４４】
この問題について、具体的に説明する。
【０１４５】
図１０は、図１のクロック同期回路のリセット動作に関する波形を示している。図１１乃至図１８は、図１０の波形の各時点でのクロック同期回路の状態を示している。
【０１４６】
・  ＳＴＣＬＫの立ち下がり時点がｂＰの立ち上がり時点よりも遅い場合（サイクル２）
まず、サイクル２において、クロックＣＬＫＳＴＩＮが立ち上がると（“Ｌ”→“Ｈ”）、状態保持部１５の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態（セット／リセット）に基づいて、後退パルスＢ２のフロントエッジが形成される（時点▲１▼及び図１１）。
【０１４７】
即ち、本例では、クロックＣＬＫＳＴＩＮが立ち上がった時点で、ｎ段目の状態保持ユニット１５−ｎ及びそれより前段の状態保持ユニット１５−１，・・・１５−（ｎ−１）がセット状態（ｂＱｉ（ｉは段数）＝“Ｌ”）、ｎ＋１段目の状態保持ユニット１５−（ｎ＋１）及びそれより後段の状態保持ユニット１５−（ｎ＋２），・・・１５−Ｎがリセット状態（ｂＱｉ（ｉは段数）＝“Ｈ”）となっているため、ｂＱｎ＋１を受けるｎ段目の後退遅延ユニット１６−ｎにおいて、クロックＣＬＫＳＴＩＮに基づき、後退パルスＢ２のフロントエッジが形成される。
【０１４８】
この後、後退パルス（のフロントエッジ）Ｂ２は、後退遅延ユニット１６−１（後退パルス用遅延線の出力端）に向かって、後退遅延ユニット１６−（ｎ−１），１６−（ｎ−２），・・・を、順次、伝搬していく。
【０１４９】
一方、クロックＣＬＫＳＴＩＮが立ち上がると、この立ち上りに反応して、制御パルス生成回路１３により、制御パルスｂＰ（＝“Ｌ”）が生成される。
【０１５０】
ここで、本例では、制御パルスｂＰ（＝“Ｌ”）が出力されている間は、サイクル２の直前のサイクル１で生成された後退パルスＢ１（のリアエッジ）が後退パルス用遅延線１６から出力されていないため、状態保持部制御回路１９は、制御パルスＢＰＭを出力しない。
【０１５１】
この後、サイクル１で生成された後退パルスＢ１（のリアエッジ）が後退パルス用遅延線１６から出力され、ＳＴＣＬＫ（＝ＲＣＬ１）が“Ｈ”から“Ｌ”に変化すると、状態保持部制御回路１９は、その変化時から一定の遅延時間を経過した後に制御パルスＢＰＭ（＝“Ｌ”）を出力する（時点▲２▼及び図１２）。
【０１５２】
制御パルスＢＰＭが“Ｌ”になると、その時点で、後退パルスＢ２が存在する後退遅延ユニット（後退パルスＢ２のフロントエッジが存在する後退遅延ユニット及びそれよりも後段の後退遅延ユニット）、即ち、ＲＣＬｉ（ｉは段数）が“Ｈ”（ｂＲＣＬｉが“Ｌ”）になっている後退遅延ユニットの２つ後段の状態保持ユニットの状態がリセットされる。
【０１５３】
例えば、本例では、制御パルスＢＰＭが“Ｌ”になった時点で、ｎ−７段目及びそれ以降の後退遅延ユニット１６（ｎ−７），・・・１６−ｎ，・・・１６−Ｎの出力信号ＲＣＬｎ−７，・・・ＲＣＬｎ，・・・が“Ｈ”となっているため、ｎ−７段目の２つ後段のｎ−５段目からｎ段目までの状態保持ユニット１５−（ｎ−５），・・・１５−ｎが、同時に、リセット状態（ｂＱｎ−５，・・・ｂＱｎ＝“Ｈ”）になる。
【０１５４】
なお、ｎ＋１段目及びそれよりも後段の状態保持ユニット１５−（ｎ＋１），・・・は、常に、リセット状態となっている。
【０１５５】
ところで、制御パルスＢＰＭが“Ｌ”の期間（リセット期間）においても、後退パルスＢ２（のフロントエッジ）は、順次、後退パルス用遅延線１６をその出力端に向かって伝搬している。従って、制御パルスＢＰＭが“Ｌ”の期間では、後退パルスＢ２（のフロントエッジ）が入力された後退遅延ユニットの２つ後段の状態保持ユニットが順次リセットされる（期間▲３▼及び図１３）。
【０１５６】
例えば、本例では、制御パルスＢＰＭが“Ｌ”の期間において、後退パルスＢ２（のフロントエッジ）は、後退遅延ユニット１６−（ｎ−８），１６−（ｎ−９）に入力される。従って、後退遅延ユニット１６−（ｎ−８），１６−（ｎ−９）の出力信号ＲＣＬｎ−８，ＲＣＬｎ−９が順次“Ｈ”となり、ｎ−６段目及びｎ−７段目の状態保持ユニットの状態が順次リセットされる（ｂＱｎ−６，ｂＱｎ−７＝“Ｈ”）。
【０１５７】
このように、サイクル２では、ｎ段目からｎ−７段目までの８個の状態保持ユニット１５−ｎ，・・・１５−（ｎ−７）がセット状態からリセット状態に変化する。
【０１５８】
この後、クロックＣＬＫＳＴＩＮが立ち下がると（“Ｈ”→“Ｌ”）、状態保持部１５の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態（セット／リセット）に基づいて、後退パルスＢ２のリアエッジが形成される（時点▲４▼及び図１４）。
【０１５９】
即ち、本例では、クロックＣＬＫＳＴＩＮが立ち下がった時点で、ｎ−８段目の状態保持ユニット１５−（ｎ−８）及びそれより前段の状態保持ユニット１５−１，・・・１５−（ｎ−９）がセット状態（ｂＱｉ（ｉは段数）＝“Ｌ”）、ｎ−７段目の状態保持ユニット１５−（ｎ−７）及びそれより後段の状態保持ユニット１５−（ｎ−６），・・・１５−Ｎがリセット状態（ｂＱｉ（ｉは段数）＝“Ｈ”）となっているため、ｂＱｎ−７を受けるｎ−８段目の後退遅延ユニット１６−（ｎ−８）において、クロックＣＬＫＳＴＩＮに基づき、後退パルスＢ２のリアエッジが形成される。
【０１６０】
ここで、サイクル２では、後退パルス用遅延線１６の出力端に近いｎ−８段目の後退遅延ユニット１６−（ｎ−８）において後退パルスＢ２のリアエッジが形成される。従って、後退パルスＢ２のパルス幅は、狭くなる。
【０１６１】
この後、後退パルスＢ２（のリアエッジ）は、後退遅延ユニット１６−１（後退パルス用遅延線の出力端）に向かって、後退遅延ユニット１６−（ｎ−９），１６−（ｎ−１０），・・・を、順次、伝搬していく。
【０１６２】
このように、ＳＴＣＬＫの立ち下がり時点がｂＰの立ち上がり時点よりも遅い場合には、状態保持部制御回路１９により、リセットタイミングの遅延動作（後退パルスＢ１が後退パルス用遅延線１６から出力されるのを確認する動作）が行われるため、その分だけ、後退パルスＢ２が後退パルス用遅延線１６を伝搬する段数が増え、結果として、状態保持ユニットのリセット段数が増加し、後退パルスＢ２のパルス幅が狭まる。
【０１６３】
以上により、サイクル２による後退パルスＢ２の生成が終わるが、この後退パルスＢ２（のリアエッジ）が後退パルス用遅延線１６から出力される前に、サイクル２の直後のサイクル３において後退パルスＢ３の生成が開始される。
【０１６４】
・  ＳＴＣＬＫの立ち下がり時点がｂＰ＝“Ｌ”の期間にある場合（サイクル３）
まず、サイクル３において、クロックＣＬＫＳＴＩＮが立ち上がると（“Ｌ”→“Ｈ”）、状態保持部１５の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態（セット／リセット）に基づいて、後退パルスＢ２のフロントエッジが形成される（時点▲１▼’及び図１５）。
【０１６５】
即ち、本例では、クロックＣＬＫＳＴＩＮが立ち上がった時点で、ｎ段目の状態保持ユニット１５−ｎ及びそれより前段の状態保持ユニット１５−１，・・・１５−（ｎ−１）がセット状態（ｂＱｉ（ｉは段数）＝“Ｌ”）、ｎ＋１段目の状態保持ユニット１５−（ｎ＋１）及びそれより後段の状態保持ユニット１５−（ｎ＋２），・・・１５−Ｎがリセット状態（ｂＱｉ（ｉは段数）＝“Ｈ”）となっているため、ｂＱｎ＋１を受けるｎ段目の後退遅延ユニット１６−ｎにおいて、クロックＣＬＫＳＴＩＮに基づき、後退パルスＢ３のフロントエッジが形成される。
【０１６６】
この後、後退パルス（のフロントエッジ）Ｂ３は、後退遅延ユニット１６−１（後退パルス用遅延線の出力端）に向かって、後退遅延ユニット１６−（ｎ−１），１６−（ｎ−２），・・・を、順次、伝搬していく。
【０１６７】
一方、クロックＣＬＫＳＴＩＮが立ち上がると、この立ち上りに反応して、制御パルス生成回路１３により、制御パルスｂＰ（＝“Ｌ”）が生成される。
【０１６８】
ここで、本例では、制御パルスｂＰ（＝“Ｌ”）が出力されている間に、サイクル３の直前のサイクル２で生成された後退パルスＢ２（のリアエッジ）が後退パルス用遅延線１６から出力されるため（時点▲２▼’及び図１６）、状態保持部制御回路１９は、制御パルスｂＰが“Ｌ”から“Ｈ”に変化してから一定の遅延時間が経過した後に、制御パルスＢＰＭ（＝“Ｌ”）を出力する。
【０１６９】
制御パルスＢＰＭが“Ｌ”になると、その時点で、後退パルスＢ３が存在する後退遅延ユニット（後退パルスＢ３のフロントエッジが存在する後退遅延ユニット及びそれよりも後段の後退遅延ユニット）、即ち、ＲＣＬｉ（ｉは段数）が“Ｈ”（ｂＲＣＬｉが“Ｌ”）になっている後退遅延ユニットの２つ後段の状態保持ユニットの状態がリセットされる。
【０１７０】
例えば、本例では、制御パルスＢＰＭが“Ｌ”になった時点で、ｎ−１段目及びそれ以降の後退遅延ユニット１６（ｎ−１），１６−ｎ，・・・１６−Ｎの出力信号ＲＣＬｎ−１，ＲＣＬｎ，・・・が“Ｈ”となっているため、ｎ−１段目の２つ後段のｎ＋１段目からＮ段目までの状態保持ユニット１５−（ｎ＋１），・・・１５−Ｎがリセット状態（ｂＱｎ＋１，・・・ｂＱＮ＝“Ｈ”）になる。
【０１７１】
なお、本例では、ｎ＋１段目及びそれよりも後段の状態保持ユニット１５−（ｎ＋１），・・・は、常に、リセット状態となっている。
【０１７２】
ところで、制御パルスＢＰＭが“Ｌ”の期間（リセット期間）においても、後退パルスＢ３（のフロントエッジ）は、順次、後退パルス用遅延線１６をその出力端に向かって伝搬している。従って、制御パルスＢＰＭが“Ｌ”の期間では、後退パルスＢ３（のフロントエッジ）が入力された後退遅延ユニットの２つ後段の状態保持ユニットが順次リセットされる（期間▲３▼’及び図１７）。
【０１７３】
例えば、本例では、制御パルスＢＰＭが“Ｌ”の期間において、後退パルスＢ３（のフロントエッジ）は、後退遅延ユニット１６−（ｎ−２），１６−（ｎ−３）に入力される。従って、後退遅延ユニット１６−（ｎ−２），１６−（ｎ−３）の出力信号ＲＣＬｎ−２，ＲＣＬｎ−３が順次“Ｈ”となり、ｎ段目及びｎ−１段目の状態保持ユニットの状態が順次リセットされる（ｂＱｎ，ｂＱｎ−１＝“Ｈ”）。
【０１７４】
このように、サイクル３では、ｎ段目からｎ−１段目までの２個の状態保持ユニット１５−ｎ，１５−（ｎ−１）がセット状態からリセット状態に変化する。
【０１７５】
この後、クロックＣＬＫＳＴＩＮが立ち下がると（“Ｈ”→“Ｌ”）、状態保持部１５の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態（セット／リセット）に基づいて、後退パルスＢ３のリアエッジが形成される（時点▲４▼’及び図１８）。
【０１７６】
即ち、本例では、クロックＣＬＫＳＴＩＮが立ち下がった時点で、ｎ−２段目の状態保持ユニット１５−（ｎ−２）及びそれより前段の状態保持ユニット１５−１，・・・１５−（ｎ−３）がセット状態（ｂＱｉ（ｉは段数）＝“Ｌ”）、ｎ−１段目の状態保持ユニット１５−（ｎ−１）及びそれより後段の状態保持ユニット１５−ｎ，・・・１５−Ｎがリセット状態（ｂＱｉ（ｉは段数）＝“Ｈ”）となっているため、ｂＱｎ−１を受けるｎ段目の後退遅延ユニット１６−（ｎ−２）において、クロックＣＬＫＳＴＩＮに基づき、後退パルスＢ３のリアエッジが形成される。
【０１７７】
ここで、サイクル３では、後退パルス用遅延線１６の出力端から遠いｎ−２段目の後退遅延ユニット１６−（ｎ−２）において後退パルスＢ３のリアエッジが形成される。従って、後退パルスＢ３のパルス幅は、広くなる。
【０１７８】
この後、後退パルスＢ３（のリアエッジ）は、後退遅延ユニット１６−１（後退パルス用遅延線の出力端）に向かって、後退遅延ユニット１６−（ｎ−３），１６−（ｎ−４），・・・を、順次、伝搬していく。
【０１７９】
このように、ＳＴＣＬＫの立ち下がり時点がｂＰが“Ｌ”の期間内に存在する場合には、状態保持部制御回路１９により、リセットタイミングの遅延動作（後退パルスＢ２が後退パルス用遅延線１６から出力されるのを確認する動作）が行われない。従って、その分だけ、後退パルスＢ３が後退パルス用遅延線１６を伝搬する段数が減り、結果として、状態保持ユニットのリセット段数が減り、後退パルスＢ３のパルス幅が広くなる。
【０１８０】
以上により、サイクル３による後退パルスＢ３の生成が終わるが、この後退パルスＢ３（のリアエッジ）が後退パルス用遅延線１６から出力される前に、サイクル３の直後のサイクル４において後退パルスＢ４の生成が開始される。
【０１８１】
なお、サイクル４において後退パルスＢ４を生成する動作は、サイクル２において後退パルスＢ２を生成する動作と同じである。
【０１８２】
以上、図１のクロック同期回路のリセット動作について説明したが、このクロック同期回路では、ＳＴＣＬＫの立ち下がり時点がｂＰの立ち上がり時点よりも遅い場合（前の後退パルスのパルス幅が広い場合）には、リセットタイミングの遅延動作（後退パルスが後退パルス用遅延線から出力されるのを確認する動作）が行われるため、その分だけ、後退パルスが後退パルス用遅延線を伝搬する段数が増え、結果として、状態保持ユニットのリセット段数が増加し、後退パルスのパルス幅が狭まる。
【０１８３】
一方、ＳＴＣＬＫの立ち下がり時点がｂＰが“Ｌ”の期間内に存在する場合（前の後退パルスのパルス幅が狭い場合）には、リセットタイミングの遅延動作が行われないため、その分だけ、後退パルスＢ３が後退パルス用遅延線を伝搬する段数が減り、結果として、状態保持ユニットのリセット段数が減り、後退パルスのパルス幅が広くなる。
【０１８４】
このように、図１のクロック同期回路では、サイクルごとに、リセットされる状態保持ユニットの数（リセット段数）や、後退パルスのパルス幅が異なることになるため、不規則な動作により、内部クロックＩＮＴＣＬＫのばらつきや消費電流の増大という問題を発生させる。
【０１８５】
そこで、以下の実施の形態では、リセットされる状態保持ユニットの数（リセット段数）及び後退パルスのパルス幅が常に一定となるようなクロック同期回路について説明する。
【０１８６】
［第１実施の形態］
図１９は、本発明の第１実施の形態に関わるＳＴＢＤのブロック構成を示している。
【０１８７】
外部クロックＥＸＴＣＬＫは、遅延量Ｔｒｃを有するレシーバ（入力バッファ）１１に入力される。レシーバ１１は、外部クロックＥＸＴＣＬＫに対してＴｒｃのスキュを有するクロックＣＬＫＳＴＩＮを出力する。
【０１８８】
クロックＣＬＫＳＴＩＮは、遅延量（Ｔｒｃ＋Ｔｄｒ）を有するディレイモニタ１２、制御パルス生成回路１３及び後退パルス用遅延線１６を構成するＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎにそれぞれ入力される。
【０１８９】
ディレイモニタ１２は、クロックＣＬＫＳＴＩＮに基づいて、前進パルスＦＣＬＩＮを出力する。制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮに基づいて、制御パルスＰ，ｂＰ，ｂＰ２を出力する。
【０１９０】
制御パルスＰ，ｂＰは、前進パルス用遅延線１４を構成するＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作を制御する。即ち、前進パルスＦＣＬＩＮを前進パルス用遅延線１４内で伝達させるか否か（外部クロックＥＸＴＣＬＫをモニタするか否か）は、制御パルスＰ，ｂＰにより決定される。
【０１９１】
また、制御パルスｂＰ２は、状態保持部１５のリセットを行うタイミング（又はリセット期間）を決定する。
【０１９２】
ここで、制御パルス生成回路１３の具体例について簡単に説明する。
【０１９３】
図２４は、制御パルス生成回路１３の一例を示している。
【０１９４】
制御パルス生成回路１３は、インバータ及びＮＡＮＤ回路から構成される周知のパルス生成回路から構成される。ＮＡＮＤ回路の出力信号は、制御パルスｂＰとなり、この制御パルスｂＰのレベルをインバータで反転させると、制御パルスＰが得られる。また、制御パルスｂＰは、直列接続された偶数個のインバータ（遅延時間Ｘを有する遅延回路）を経由すると、制御パルスｂＰ２となる。
【０１９５】
この制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮが“Ｌ”から“Ｈ”になると、遅延時間Ｙで決まる一定幅（即ち、“Ｌ”の期間がＹ）の制御パルスｂＰ，ｂＰ２及び遅延時間Ｙで決まる一定幅（即ち、“Ｈ”の期間がＹ）の制御パルスＰをそれぞれ出力する。
【０１９６】
ところで、本実施の形態のＳＴＢＤは、上述の参考例とは異なり、状態保持部制御回路（図１参照）を有していない。即ち、現サイクルの１つ前のサイクルで生成された後退パルスのリアエッジが後退パルス用遅延線１６から出力されたか否かをモニタしていない。
【０１９７】
これは、本実施の形態のＳＲＢＤが、後退パルスに基づいて状態保持部１５のリセットを行っていないことに基づいている。即ち、仮に、後退パルス用遅延線１６内に２つの後退パルスが存在していても、リセットは、後退パルスに基づかずに、後段の状態保持ユニットの状態（セット／リセット）に基づいて行っているため（この点が重要である）、本実施の形態のＳＴＢＤでは、後退パルス遅延線１６が断線するという問題が生じない。
【０１９８】
従って、本実施の形態のＳＴＢＤは、後退パルス用遅延線１６の出力信号ＳＴＣＬＫをモニタする状態保持部制御回路を備える必要がなく（制御パルスｂＰ２により状態保持部１５のリセットが制御される。）、その分だけ、ＳＴＢＤの面積を縮小することができる。
【０１９９】
前進パルスＦＣＬＩＮは、前進パルス用遅延線１４に与えられる。前進パルス用遅延線１４は、直列接続されたＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎから構成される。但し、Ｎ及びｎは、共に正数で、かつ、ｎ＜Ｎとする。
【０２００】
Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作は、制御パルス（前進パルス伝達制御信号）Ｐ，ｂＰにより制御される。Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎが動作状態（前進パルスを伝達できる状態）にあるとき、各前進遅延ユニットは、前段の前進遅延ユニットから受けた前進パルスを、後段の前進遅延ユニットに伝達する。
【０２０１】
ここで、前進パルス用遅延線１４内の前進遅延ユニット１４−ｎの具体例について説明する。
【０２０２】
図２０は、前進遅延ユニット１４−ｎの一例を示している。
【０２０３】
本例では、前進遅延ユニット１４−ｎは、２つのインバータＩ２，Ｉ３と、２つのクロックドインバータＣＩ１，ＣＩ２とから構成される。クロックドインバータＣＩ１，ＣＩ２の動作は、制御パルスＰ，ｂＰにより制御される。
【０２０４】
制御パルスＰが“Ｌ”レベル、制御パルスｂＰが“Ｈ”レベルのときは、クロックドインバータＣＩ１が動作状態となり、クロックドインバータＣＩ２が非動作状態となる。このため、前進パルスＦＣＬｎ−１は、クロックドインバータＣＩ１及びインバータＩ２を経由して、後段の前進遅延ユニット１４−（ｎ＋１）に伝達される。インバータＩ３の出力信号ＦＦＣＬｎは、状態保持ユニット１５―ｎに与えられる。
【０２０５】
また、制御パルスＰが“Ｈ”レベル、制御パルスｂＰが“Ｌ”レベルのときは、クロックドインバータＣＩ１が非動作状態となり、クロックドインバータＣＩ２が動作状態となる。このため、全ての前進遅延ユニットにおいて、“Ｌ”レベルの電位ＶＳＳがクロックドインバータＣＩ２に入力され、ノードＡは、“Ｈ”レベルにリセットされる。
【０２０６】
ところで、本実施の形態に関わるＳＴＢＤの前進遅延ユニット１４−ｎは、上述の参考例とは異なり、インバータＩ１（図２参照）を有していない。これは、本実施の形態のＳＴＢＤが、後退パルスに基づいて状態保持部１５のリセットを行っていないことに基づいている。
【０２０７】
即ち、後退パルスに基づいて状態保持部１５のリセットを行わないため、本実施の形態のＳＴＢＤでは、後述する後退遅延ユニット（図２３参照）は、インバータＩ６（図５参照）を有していない。
【０２０８】
従って、前進遅延ユニットと後退遅延ユニットとの対称性から、前進遅延ユニット１４−ｎも、インバータＩ１（図２参照）を有していない。このため、本実施の形態のＳＴＢＤでは、前進遅延ユニット１４−ｎの面積が、インバータ１個分だけ、縮小される。
【０２０９】
状態保持部１５は、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎから構成される。Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎに対応している。
【０２１０】
前進パルスが入力された前進遅延ユニットは、これに対応する状態保持ユニットの状態（セット／リセット）を変える。具体的には、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットは、リセット（Ｒ）状態からセット（Ｓ）状態に変化する。
【０２１１】
但し、２サイクル目以降では、後述するように、状態保持部１５のリセットは、少なくとも前進パルスの伝搬段数の変動量δ分だけ行えば足りるため、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットのうち、リセット状態のものだけがセット状態に変化する。
【０２１２】
なお、状態保持ユニット１５−ｎの状態を変える役割を果たすのが前進遅延ユニットの出力信号ＦＦＣＬｎである。
【０２１３】
状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、制御パルス（状態保持部リセット信号）ｂＰ２及び後段の状態保持ユニットの出力信号に基づいて、リセット状態に戻される。
【０２１４】
即ち、まず、制御パルスｂＰ２によりリセット期間が定められる。状態保持部１５のリセットは、このリセット期間において行われる。リセット期間において、状態保持ユニット１５−ｎの後段の状態保持ユニット１５−（ｎ−１）の出力信号Ｑｎ＋１が“Ｌ”のとき、状態保持ユニット１５−ｎの状態がリセット状態に変化する。
【０２１５】
ＳＴＢＤでは、前進パルス用遅延線１４により遅延量τ−（Ｔｒｃ＋Ｔｄｒ）をモニタした後には、常に、状態保持部１５にセット状態とリセット状態の境界が存在し、その境界より前段側の状態保持ユニットは、全て、セット状態、後段側の状態保持ユニットは、全て、リセット状態となっている。
【０２１６】
そこで、本実施の形態では、リセット期間において、前段の状態保持ユニットがリセット状態であるセット状態の状態保持ユニットについては、その状態を、セット状態からリセット状態に変化させる。この場合、セット状態の状態保持ユニットは、最も境界寄りの状態保持ユニットから、順次、リセット状態に変化していく（リセットの伝搬）。
【０２１７】
リセットされる状態保持ユニットの数（リセット段数）は、制御パルスｂＰ２の幅（ｂＰ２＝“Ｌ”の期間）により決定される。また、リセット段数は、前進パルスの伝搬段数の変動量δ分以上であることが必要である。
【０２１８】
本実施の形態のＳＴＢＤでは、リセットの伝搬は、後退パルスの伝搬とは無関係に進行する。この場合、リセットの伝搬速度が後退パルスの伝搬速度よりも速くなると、後退パルス用遅延線１６により正確にτ−（Ｔｒｃ＋Ｔｄｒ）をコピーできなくなる。
【０２１９】
そこで、制御パルスｂＰを一定の遅延時間だけ遅らせ、制御パルスｂＰ２を生成し、この制御パルスｂＰ２により状態保持部１５のリセットを制御する。即ち、後退パルスのフロントエッジが形成される時期よりもリセットの時期を十分に遅らせ、常に、リセットの伝搬が後退パルスの伝搬を追い越さないようにしている。
【０２２０】
なお、状態保持部初期化回路１７は、リセット信号ＲＥＳＥＴに基づいて、初期化信号ｂＲＳＩＮＩを出力し、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態を強制的にリセット状態に初期化する。
【０２２１】
ここで、状態保持ユニット１５−ｎ及び状態保持部初期化回路１７について簡単に説明する。
【０２２２】
図２１は、状態保持ユニット１５−ｎの一例を示している。
【０２２３】
状態保持ユニット１５−ｎは、電源端子ＶＤＤとノードＣの間に直列接続されるＰチャネルＭＯＳトランジスタＰ１，Ｐ２、接地端子ＶＳＳとノードＣの間に直列接続されるＮチャネルＭＯＳトランジスタＮ１，Ｎ２、電源端子ＶＤＤとノードＣの間に接続されるＰチャネルＭＯＳトランジスタＰ３及びノードＣ，Ｄの間に接続されるラッチ回路ＬＡＴＣＨから構成される。
【０２２４】
本例では、ラッチ回路ＬＡＴＣＨは、リセットされない限り、常に、同じ状態を保持するスタティック型ラッチ回路としている。リセット時には、ｂＰ２及びＱｎ＋１が共に“Ｌ”レベルとなり、ノードＣが“Ｈ”レベル、ノードＤが“Ｌ”レベルとなる。
【０２２５】
なお、ｂＰ２は、制御パルス生成回路１３から出力される信号であり、Ｑｎ＋１は、後段の状態保持ユニット１５−（ｎ＋１）から出力される信号である。本実施の形態のＳＴＢＤは、後退遅延ユニット１６−（ｎ−２）から出力される信号ＲＣＬｎ−２に代えて、後段の状態保持ユニット１５−（ｎ＋１）から出力される信号Ｑｎ＋１によりリセットを制御するようにしたものである。
【０２２６】
制御パルスｂＰ２が“Ｈ”レベルの時、前進遅延ユニット１４−ｎに前進パルスＦＣＬｎ−１が入力されると、前進遅延ユニット１４−ｎの出力信号ＦＦＣＬｎが“Ｈ”レベルとなるため、状態保持ユニット１５−ｎは、セット状態、即ち、ノードＣが“Ｌ”レベル、ノードＤが“Ｈ”レベルの状態に変化する。
【０２２７】
状態保持ユニット１５−ｎのノードＣの信号ｂＱｎ及びノードＤの信号Ｑｎは、それぞれ、後述する後退遅延ユニット１６−ｎに供給される。後退遅延ユニット１６−ｎの動作は、状態保持ユニット１５−ｎの出力信号Ｑｎ，ｂＱｎにより制御される。
【０２２８】
制御パルスｂＰ２が“Ｌ”レベルの時、後段の状態保持ユニット１５−（ｎ＋１）がリセット状態（Ｑｎ＋１＝“Ｌ”）であると、状態保持ユニット１５−ｎは、リセット状態、即ち、ノードＣが“Ｈ”レベル、ノードＤが“Ｌ”レベルの状態に変化する。
【０２２９】
状態保持ユニット１５−ｎのノードＤの信号Ｑｎは、前段の状態保持ユニット１５−（ｎ−１）に供給される。前段の状態保持ユニット１５−（ｎ−１）は、Ｑｎ（＝“Ｌ”）を受けると、リセット期間（ｂＰ２＝“Ｌ”）であれば、その状態を、リセット状態に変化させる。
【０２３０】
図２２は、状態保持部初期化回路１７の一例を示している。
【０２３１】
状態保持部初期化回路１７は、例えば、直列接続された３つのインバータからなる遅延回路により構成される。リセット信号ＲＥＳＥＴが“Ｈ”レベルになると、制御信号ｂＲＳＩＮＩが“Ｌ”レベルとなるため、図２１のＰチャネルＭＯＳトランジスタＰ３がオン状態となり、状態保持ユニット１５−ｎがリセット状態となる。
【０２３２】
なお、制御パルスｂＰ２によるリセット動作と制御信号ｂＲＳＩＮＩによるリセット動作とは、別個のものとして区別される。
【０２３３】
上述のディレイモニタ１２、制御パルス生成回路１３、前進パルス用遅延線１４、状態保持部１５及び状態保持部初期化回路１７（これらをまとめて、モニタ回路と称する。）は、外部クロックＥＸＴＣＬＫと内部クロックＩＮＴＣＬＫの同期をとるために必要な遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）をモニタすることを目的としている。
【０２３４】
これに対して、後退パルス用遅延線１６は、モニタ回路によりモニタされた遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的とする。後退パルス用遅延線１６は、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的としているため、前進パルス用遅延線１４を完全に模している。即ち、前進パルス用遅延線１４と後退パルス用遅延線１６は、状態保持部１５に対して対称的に配置され、かつ、両者の回路構成は、完全に同じである。
【０２３５】
後退パルス用遅延線１６は、直列接続されたＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎから構成される。後退パルス用遅延線１６は、状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態及びクロックＣＬＫＳＴＩＮに基づいて、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーした後に、クロックＳＴＣＬＫを出力する。
【０２３６】
ここで、後退パルス用遅延線１６内の後退遅延ユニット１６−（ｎ−１）の具体例について説明する。
【０２３７】
図２３は、後退遅延ユニット１６−（ｎ−１）の一例を示している。
【０２３８】
本例では、後退遅延ユニット１６−（ｎ−１）は、２つのインバータＩ４，Ｉ５と、２つのクロックドインバータＣＩ３，ＣＩ４とから構成される。クロックドインバータＣＩ３，ＣＩ４の動作は、状態保持ユニット１５−ｎから出力される制御信号Ｑｎ，ｂＱｎにより制御される。
【０２３９】
リセット状態の状態保持ユニット（所定段以降の状態保持ユニット）に対応する後退遅延ユニット、即ち、制御信号Ｑｎが“Ｌ”レベル、制御信号ｂＱｎが“Ｈ”レベルの後退遅延ユニットでは、クロックドインバータＣＩ４が動作状態となり、クロックドインバータＣＩ３が非動作状態となる。このため、クロックＲＣＬＩＮ（＝ＣＬＫＳＴＩＮ）がクロックドインバータＣＩ４に入力され、後退パルスが生成される。
【０２４０】
セット状態の状態保持ユニット（所定段より前の状態保持ユニット）に対応する後退遅延ユニット、即ち、制御信号Ｑｎが“Ｈ”レベル、制御信号ｂＱｎが“Ｌ”レベルの後退遅延ユニットでは、クロックドインバータＣＩ３が動作状態となり、クロックドインバータＣＩ４が非動作状態となる。このため、前段の後退遅延ユニットで生成された後退パルスＲＣＬｎ＋１が、クロックドインバータＣＩ３及びインバータＩ５を経由して、後段の後退遅延ユニットに、ＲＣＬｎとして伝達される。
【０２４１】
ところで、本実施の形態に関わるＳＴＢＤの後退遅延ユニット１６−（ｎ−１）は、上述の参考例とは異なり、インバータＩ６（図５参照）を有していない。これは、本実施の形態のＳＲＢＤが、後退パルスに基づいて状態保持部１５のリセットを行っていないことに基づいている。
【０２４２】
従って、本実施の形態のＳＴＢＤでは、後退遅延ユニット１６−ｎの面積が、インバータ１個分だけ、縮小される。
【０２４３】
なお、インバータＩ４は、前進遅延ユニット１４−ｎ（図２０参照）との対称性を考慮して設けられたもので、その出力信号ＲＲＣＬｎ−１は、使用されない。
【０２４４】
クロックＳＴＣＬＫは、遅延量Ｔｄｒを有するドライバ１８を経由すると、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫとなる。
【０２４５】
本実施の形態に関わるクロック同期回路（図１９）と参考例に関わるクロック同期回路（図１）とを比較すると、状態保持ユニット１５−ｎのリセット動作に関して大きく異なる点は、前者は、制御パルスｂＰ２と後段の状態保持ユニット１５−（ｎ＋１）のセット／リセット状態Ｑｎ＋１に基づいてリセット動作を制御しているのに対し、後者は、制御パルスＢＰＭと２つ前段の後退遅延ユニット１６−（ｎー２）の出力信号ｂＲＣＬｎ−２に基づいてリセット動作を制御している点にある。
【０２４６】
従来例（図４３）では、制御パルスｂＰと２つ前段の後退遅延ユニット１６−（ｎー２）の出力信号ｂＲＣＬｎ−２に基づいてリセット動作を制御しており、この場合、後退パルス用遅延線１６内に２つの後退パルスＢ１，Ｂ２が存在するタイミング（図８）では、後退パルス用遅延線１６が電気的に切断される問題があった。
【０２４７】
参考例（図１）では、この問題を解決するため、従来例の制御パルスｂＰを、制御パルスＢＰＭに変更した。この場合、後退パルス用遅延線１６の断線という問題は解決できたが、それと同時に、新規に状態保持部制御回路を設けることに起因する面積の増大や、サイクルごとに、リセットされる状態保持ユニットの数（リセット段数）や後退パルスのパルス幅が異なることに起因する消費電流の増大などの問題を発生させた。
【０２４８】
本発明（図１９）では、後退パルス用遅延線１６の断線という問題はもちろんのこと、参考例で問題となった面積の増大や消費電流の増大も防止することができる。即ち、本発明では、状態保持部制御回路は不要であり、全てのサイクルにおいて、常に、リセットされる状態保持ユニットの数（リセット段数）と後退パルスのパルス幅は、同じとなる。
【０２４９】
また、本発明では、新たな原理（詳細な動作については後述する）によりリセット動作を行うため、リセットの伝搬が後退パルスの伝搬を追い越す恐れが発生する。この問題については、リセット期間を後退パルスのフロントエッジの形成時期から一定時間だけ遅らす、即ち、制御パルスｂＰを一定時間だけ送らせた制御パルスｂＰ２によりリセット動作を制御することで、容易に、解決できる。
【０２５０】
次に、図１９乃至図２４のクロック同期回路の動作について説明する。
【０２５１】
図２５は、図１９乃至図２４のクロック同期回路のリセット動作に関する波形を示している。また、図２６乃至図２８は、図２５の波形の各時点でのクロック同期回路の状態を示している。
【０２５２】
まず、サイクル２において、クロックＣＬＫＳＴＩＮが立ち上がると（“Ｌ”→“Ｈ”）、状態保持部１５の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態（セット／リセット）に基づいて、後退パルスＢ２のフロントエッジが形成される（時点▲１▼及び図２６）。
【０２５３】
即ち、本例では、クロックＣＬＫＳＴＩＮが立ち上がった時点で、ｎ段目の状態保持ユニット１５−ｎ及びそれより前段の状態保持ユニット１５−１，・・・１５−（ｎ−１）がセット状態（ｂＱｉ（ｉは段数）＝“Ｌ”）、ｎ＋１段目の状態保持ユニット１５−（ｎ＋１）及びそれより後段の状態保持ユニット１５−（ｎ＋２），・・・１５−Ｎがリセット状態（ｂＱｉ（ｉは段数）＝“Ｈ”）となっているため、ｂＱｎ＋１を受けるｎ段目の後退遅延ユニット１６−ｎにおいて、クロックＣＬＫＳＴＩＮに基づき、後退パルスＢ２のフロントエッジが形成される。
【０２５４】
この後、後退パルス（のフロントエッジ）Ｂ２は、後退遅延ユニット１６−１（後退パルス用遅延線の出力端）に向かって、後退遅延ユニット１６−（ｎ−１），１６−（ｎ−２），・・・を、順次、伝搬していく。
【０２５５】
一方、クロックＣＬＫＳＴＩＮが立ち上がると、この立ち上りに反応して、制御パルス生成回路１３により、制御パルスｂＰ（＝“Ｌ”）が生成される。
【０２５６】
ここで、本発明では、制御パルスｂＰのパルス幅（ｂＰ＝“Ｌ”の期間）は、重要である。
【０２５７】
即ち、後述するように、本発明では、制御パルスｂＰ（実際には、ｂＰ２）によりリセット期間が決定され、このリセット期間によりリセット段数が決定されるからである。従って、制御パルスｂＰのパルス幅は、少なくとも前進パルスの伝搬段数の変動量δ（図５０及び図５１参照）に相当する段数の状態保持ユニットをリセットできるだけの幅を有していなければならない。
【０２５８】
この変動量δについては、実験や経験則により予め認識しておく必要がある。そして、この変動量δに基づいて、例えば、図２４の遅延時間Ｙを形成するインバータの数を決定する。
【０２５９】
制御パルスｂＰが生成された後、一定の遅延時間Ｘ（図２４の遅延時間Ｘ）が経過すると、制御パルスｂＰ２が生成される。この制御パルスｂＰ２は、状態保持部１５に供給される（時点▲２▼及び図２７）。
【０２６０】
ここで、本発明では、遅延時間Ｘも、重要な要素となる。
【０２６１】
即ち、上述のように、クロックＣＬＫＳＴＩＮが立ち上がると、後退パルスＢ２のフロントエッジが形成される（時点▲１▼）。ここで、後退パルスＢ２のフロントエッジの形成と同時に、状態保持部１５のリセットを開始すると、リセットの伝搬速度が後退パルスの伝搬速度よりも速くなったときに、リセットの伝搬が後退パルスの伝搬を追い越してしまう。
【０２６２】
そこで、仮に、リセットの伝搬速度が後退パルスの伝搬速度よりも速くなったとしても、リセットの伝搬が後退パルスの伝搬を追い越さないように、後退パルスＢ２のフロントエッジの形成時（制御パルスｂＰの形成時）から一定の遅延時間Ｘを経過した後に、制御パルスｂＰ２を生成し、状態保持部１５のリセットを開始するようにする。
【０２６３】
制御パルスｂＰ２が“Ｌ”の期間（リセット期間）においては、状態保持部１５では、リセットの伝搬が、後退パルスの伝搬とは無関係に、進行する。
【０２６４】
即ち、リセット期間では、前段の状態保持ユニットがリセット状態であるセット状態の状態保持ユニットは、セット状態からリセット状態に変化する。
【０２６５】
例えば、本例では、制御パルスｂＰ２が“Ｌ”になった時点で、１段目からｎ段目までの状態保持ユニット１５−１，１５−２，・・・１５−ｎがセット状態、ｎ＋１段目からＮ段目までの状態保持ユニット１５−（ｎ＋１），・・・１５−Ｎがリセット状態となっている。
【０２６６】
このため、まず、ｂＰ２（＝“Ｌ”）及びリセット状態の後段の状態保持ユニット１５−（ｎ＋１）の出力信号Ｑｎ＋１（＝“Ｌ”）を受けるｎ段目の状態保持ユニット１５−ｎの状態が、セット状態（ｂＱｎ＝“Ｌ”）からリセット状態（ｂＱｎ＝“Ｈ”）に変化する。
【０２６７】
続けて、ｂＰ２（＝“Ｌ”）及びリセット状態の後段の状態保持ユニット１５−ｎの出力信号Ｑｎ（＝“Ｌ”）を受けるｎ−１段目の状態保持ユニット１５−（ｎ−１）の状態が、セット状態（ｂＱｎ−１＝“Ｌ”）からリセット状態（ｂＱｎ−１＝“Ｈ”）に変化する。
【０２６８】
本例では、この後、ｂＰ２が“Ｈ”となり、リセット期間が終了するため、状態保持ユニットのリセット段数は、２段（状態保持ユニット１５−（ｎ−１），１５−ｎ）となる。
【０２６９】
このように、本発明では、リセット段数は、リセット期間によって決定され、後退パルスのフロントエッジの位置に依存しないため、複数のサイクルにおいて、常に、リセット段数は、等しく（２段）なる。また、このリセット段数は、上述したように、少なくとも前進パルスの伝搬段数の変動量δ（図５０及び図５１参照）に相当する段数となっている。
【０２７０】
従って、本サイクルの１つ前のサイクル１で生成された後退パルスＢ１のリアエッジが後退パルス用遅延線１６から出力されたか否かを検出する必要がなく、状態保持部制御回路（図１参照）も不要となる。
【０２７１】
また、複数のサイクルにおいて、リセット段数が常に等しく、かつ、後退パルスのパルス幅も等しくなるため、画一的動作が可能となり、消費電流も、十分に小さくできる。
【０２７２】
この後、クロックＣＬＫＳＴＩＮが立ち下がると（“Ｈ”→“Ｌ”）、状態保持部１５の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態（セット／リセット）に基づいて、後退パルスＢ２のリアエッジが形成される（時点▲３▼及び図２８）。
【０２７３】
即ち、本例では、クロックＣＬＫＳＴＩＮが立ち下がった時点で、ｎ−２段目の状態保持ユニット１５−（ｎ−２）及びそれより前段の状態保持ユニット１５−３，・・・１５−（ｎ−９）がセット状態（ｂＱｉ（ｉは段数）＝“Ｌ”）、ｎ−１段目の状態保持ユニット１５−（ｎ−１）及びそれより後段の状態保持ユニット１５−ｎ，・・・１５−Ｎがリセット状態（ｂＱｉ（ｉは段数）＝“Ｈ”）となっているため、ｂＱｎ−１を受けるｎ−２段目の後退遅延ユニット１６−（ｎ−２）において、クロックＣＬＫＳＴＩＮに基づき、後退パルスＢ２のリアエッジが形成される（ＲＣＬｉ＝“Ｌ”となる。但し、ｉは、ｎ−２，ｎ−１，・・・Ｎである。）。
【０２７４】
この後、後退パルスＢ２（のリアエッジ）は、後退遅延ユニット１６−１（後退パルス用遅延線の出力端）に向かって、後退遅延ユニット１６−（ｎ−３），１６−（ｎ−１０），・・・を、順次、伝搬していく。
【０２７５】
なお、以上の動作により、サイクル２による後退パルスＢ２の生成が終わるが、この後退パルスＢ２（のリアエッジ）が後退パルス用遅延線１６から出力される前に、サイクル２の直後のサイクル３において後退パルスＢ３の生成が開始される。
【０２７６】
しかし、サイクル３においても、サイクル２と同様に、リセット段数は、リセット期間によって決定され、後退パルスＢ２，Ｂ３の位置に依存しないため、常に、リセット段数は、等しく（２段）なる。
【０２７７】
以上、説明したように、本発明のリセット動作では、リセット段数は、リセット期間によって決定され、後退パルスのフロントエッジの位置に依存しないため、複数のサイクルにおいて、常に、リセット段数は、等しくなる。また、このリセット段数は、少なくとも前進パルスの伝搬段数の変動量δに相当する段数となっている。
【０２７８】
従って、後退パルスのリアエッジが後退パルス用遅延線から出力されたか否かを検出する必要がなく、状態保持部制御回路（図１参照）が不要となり、ＳＴＢＤの面積を縮小できる。また、リセット段数を最小値、即ち、変動量δに相当する段数にすれば、不必要に多くの状態保持ユニットをリセットする必要がないため、消費電流も、十分に小さくできる。
【０２７９】
また、リセット動作に関し、リセット段数及びリセットを実施するタイミングが毎サイクル同じであるということは、消費電流の大きさ及び発生タイミングが毎サイクル同じであることを意味する。
【０２８０】
消費電流による電源ノイズの発生は、同期回路にとっては、多少なりとも同期ずれの原因となる。消費電流の大きさ及び発生タイミングが不規則であれば、同期ずれ量がまちまちとなり、同期ずれを補償することが難しくなる。これに対し、本発明のように、消費電流の大きさ及び発生タイミングが規則的であれば、同期ずれ量が一定となり、同期ずれを補償し易くなる。
【０２８１】
結果として、高精度のクロック同期回路を実現できる。
【０２８２】
なお、本発明では、状態保持ユニットのリセットは、後段の状態保持ユニットの状態に基づいて行われ、後退パルスの位置に基づいて行われない。従って、制御パルスｂＰ２が“Ｌ”の期間（リセット期間）においては、状態保持部におけるリセットの伝搬は、後退パルスの伝搬とは無関係に進行する。
【０２８３】
この場合、後退パルスのフロントエッジの形成と同時に、状態保持部のリセットを開始すると、リセットの伝搬速度が後退パルスの伝搬速度よりも速くなったときに、リセットの伝搬が後退パルスの伝搬を追い越してしまう。
【０２８４】
そこで、仮に、リセットの伝搬速度が後退パルスの伝搬速度よりも速くなったとしても、リセットの伝搬が後退パルスの伝搬を追い越さないように、後退パルスのフロントエッジの形成時（制御パルスｂＰの形成時）から一定の遅延時間Ｘを経過した後に、制御パルスｂＰ２を生成し、状態保持部のリセットの時期を遅らせる。
【０２８５】
［第２実施の形態］
第２実施の形態に関わるＳＴＢＤは、上述の第１実施の形態に関わるＳＴＢＤ（図１９）に、従来のＳＴＢＤ（図４３）の一部を組み合わせたものである。
【０２８６】
即ち、本発明では、制御パルスｂＰ２が“Ｌ”の期間（リセット期間）においては、状態保持部におけるリセットの伝搬は、後退パルスの伝搬とは無関係に進行する。上述の第１実施の形態に関わるＳＴＢＤでは、この点に関する問題を、リセット期間を遅延時間Ｘだけ遅らせることにより対応していた。
【０２８７】
本実施の形態では、後退パルスの位置に基づいてリセットする、という条件を、第１実施の形態に関わるＳＴＢＤに追加することにより、いかなる状況においても、リセットの伝搬が後退パルスの伝搬を追い越してしまうことがない、という効果を得る。
【０２８８】
ここで、リセットの条件として、例えば、後退パルス（のフロントエッジ）が前々段の後退遅延ユニットに存在する、という条件を追加しても、本発明では、リセットの他の条件として、後段の状態保持ユニットがリセット状態である、という条件が存在するため、従来のような問題（後退パルス用遅延線の断線）が発生することはない。
【０２８９】
図２９は、本発明の第２実施の形態に関わるＳＴＢＤのブロック構成を示している。
【０２９０】
外部クロックＥＸＴＣＬＫは、遅延量Ｔｒｃを有するレシーバ（入力バッファ）１１に入力される。レシーバ１１は、外部クロックＥＸＴＣＬＫに対してＴｒｃのスキュを有するクロックＣＬＫＳＴＩＮを出力する。
【０２９１】
クロックＣＬＫＳＴＩＮは、遅延量（Ｔｒｃ＋Ｔｄｒ）を有するディレイモニタ１２、制御パルス生成回路１３及び後退パルス用遅延線１６を構成するＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎにそれぞれ入力される。
【０２９２】
ディレイモニタ１２は、クロックＣＬＫＳＴＩＮに基づいて、前進パルスＦＣＬＩＮを出力する。制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮに基づいて、制御パルスＰ，ｂＰ，ｂＰ２を出力する。
【０２９３】
制御パルスＰ，ｂＰは、前進パルス用遅延線１４を構成するＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作を制御する。即ち、前進パルスＦＣＬＩＮを前進パルス用遅延線１４内で伝達させるか否か（外部クロックＥＸＴＣＬＫをモニタするか否か）は、制御パルスＰ，ｂＰにより決定される。
【０２９４】
また、制御パルスｂＰ２は、状態保持部１５のリセットを行うタイミング（又はリセット期間）を決定する。
【０２９５】
ここで、制御パルス生成回路１３の具体例について簡単に説明する。
【０２９６】
図３４は、制御パルス生成回路１３の一例を示している。
【０２９７】
制御パルス生成回路１３は、インバータ及びＮＡＮＤ回路から構成される周知のパルス生成回路から構成される。ＮＡＮＤ回路の出力信号は、制御パルスｂＰとなり、この制御パルスｂＰのレベルをインバータで反転させると、制御パルスＰが得られる。また、制御パルスｂＰは、直列接続された偶数個のインバータ（遅延時間Ｘを有する遅延回路）を経由すると、制御パルスｂＰ２となる。
【０２９８】
この制御パルス生成回路１３は、クロックＣＬＫＳＴＩＮが“Ｌ”から“Ｈ”になると、遅延時間Ｙで決まる一定幅（即ち、“Ｌ”の期間がＹ）の制御パルスｂＰ，ｂＰ２及び遅延時間Ｙで決まる一定幅（即ち、“Ｈ”の期間がＹ）の制御パルスＰをそれぞれ出力する。
【０２９９】
ところで、本実施の形態のＳＴＢＤは、上述の第１実施の形態のＳＴＢＤと同様に、状態保持部制御回路（図１参照）を有していない。即ち、現サイクルの１つ前のサイクルで生成された後退パルスのリアエッジが後退パルス用遅延線１６から出力されたか否かをモニタしていない。
【０３００】
これは、本実施の形態のＳＲＢＤが、後段の状態保持ユニット１５−（ｎ＋１）の状態（セット／リセット）に基づいて状態保持ユニット１５−ｎのリセットを行っていることに基づいている。即ち、仮に、後退パルス用遅延線１６内に２つの後退パルスが存在していても、リセットの条件として、後段の状態保持ユニットがリセット状態である、という条件が存在するため、本実施の形態のＳＴＢＤでは、後退パルス遅延線１６が断線するという問題が生じない。
【０３０１】
従って、本実施の形態のＳＴＢＤは、後退パルス用遅延線１６の出力信号ＳＴＣＬＫをモニタする状態保持部制御回路を備える必要がなく（制御パルスｂＰ２により状態保持部１５のリセットが制御される。）、その分だけ、ＳＴＢＤの面積を縮小することができる。
【０３０２】
前進パルスＦＣＬＩＮは、前進パルス用遅延線１４に与えられる。前進パルス用遅延線１４は、直列接続されたＮ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎから構成される。但し、Ｎ及びｎは、共に正数で、かつ、ｎ＜Ｎとする。
【０３０３】
Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎの動作は、制御パルス（前進パルス伝達制御信号）Ｐ，ｂＰにより制御される。Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎが動作状態（前進パルスを伝達できる状態）にあるとき、各前進遅延ユニットは、前段の前進遅延ユニットから受けた前進パルスを、後段の前進遅延ユニットに伝達する。
【０３０４】
ここで、前進パルス用遅延線１４内の前進遅延ユニット１４−ｎの具体例について説明する。
【０３０５】
図３０は、前進遅延ユニット１４−ｎの一例を示している。
【０３０６】
本例では、前進遅延ユニット１４−ｎは、３つのインバータＩ１，Ｉ２，Ｉ３と、２つのクロックドインバータＣＩ１，ＣＩ２とから構成される。クロックドインバータＣＩ１，ＣＩ２の動作は、制御パルスＰ，ｂＰにより制御される。
【０３０７】
制御パルスＰが“Ｌ”レベル、制御パルスｂＰが“Ｈ”レベルのときは、クロックドインバータＣＩ１が動作状態となり、クロックドインバータＣＩ２が非動作状態となる。このため、前進パルスＦＣＬｎ−１は、クロックドインバータＣＩ１及びインバータＩ２を経由して、後段の前進遅延ユニット１４−（ｎ＋１）に伝達される。インバータＩ３の出力信号ＦＦＣＬｎは、状態保持ユニット１５―ｎに与えられる。
【０３０８】
また、制御パルスＰが“Ｈ”レベル、制御パルスｂＰが“Ｌ”レベルのときは、クロックドインバータＣＩ１が非動作状態となり、クロックドインバータＣＩ２が動作状態となる。このため、全ての前進遅延ユニットにおいて、“Ｌ”レベルの電位ＶＳＳがクロックドインバータＣＩ２に入力され、ノードＡは、“Ｈ”レベルにリセットされる。
【０３０９】
ところで、本実施の形態に関わるＳＴＢＤの前進遅延ユニット１４−ｎは、上述の第１実施の形態に関わるＳＴＢＤとは異なり、インバータＩ１を有している。これは、本実施の形態のＳＲＢＤが、後退パルスに基づいて状態保持部１５のリセットを行っているためである。
【０３１０】
即ち、ｎ段目の状態保持ユニット１５−ｎのリセット条件は、▲１▼リセット期間であること、▲２▼後段の状態保持ユニット１５−（ｎ＋１）がリセット状態であること、▲３▼前々段の後退遅延ユニット１６−（ｎー２）に後退パルスが存在すること、の３つである。これらの条件うち、▲３▼の条件を満たすため、後退遅延ユニット（図３３参照）は、インバータＩ６を有する必要がある。
【０３１１】
従って、前進遅延ユニット１４−ｎにおいても、後退遅延ユニットとの対称性から、インバータＩ１を有する必要がある。
【０３１２】
状態保持部１５は、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎから構成される。Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、Ｎ個の前進遅延ユニット１４−１，１４−２，・・・１４−ｎ，・・・１４−Ｎに対応している。
【０３１３】
前進パルスが入力された前進遅延ユニットは、これに対応する状態保持ユニットの状態（セット／リセット）を変える。具体的には、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットは、リセット（Ｒ）状態からセット（Ｓ）状態に変化する。
【０３１４】
但し、２サイクル目以降では、後述するように、状態保持部１５のリセットは、少なくとも前進パルスの伝搬段数の変動量δ分だけ行えば足りるため、前進パルスが入力された前進遅延ユニットに対応する状態保持ユニットのうち、リセット状態のものだけがセット状態に変化する。
【０３１５】
なお、状態保持ユニット１５−ｎの状態を変える役割を果たすのが前進遅延ユニットの出力信号ＦＦＣＬｎである。
【０３１６】
状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎは、制御パルス（状態保持部リセット信号）ｂＰ２、後段の状態保持ユニットの出力信号及び前々段の後退遅延ユニットの出力信号に基づいて、リセット状態に戻される。
【０３１７】
即ち、まず、制御パルスｂＰ２によりリセット期間が定められる。状態保持部１５のリセットは、このリセット期間（ｂＰ２＝“Ｌ”）において行われる。
【０３１８】
リセット期間において、状態保持ユニット１５−ｎの後段の状態保持ユニット１５−（ｎ−１）の出力信号Ｑｎ＋１が“Ｌ”、かつ、前々段の後退遅延ユニット１６−（ｎー２）の出力信号ｂＲＣＬｎ−２が“Ｌ”のとき、状態保持ユニット１５−ｎの状態は、リセット状態に変化する。
【０３１９】
ＳＴＢＤでは、前進パルス用遅延線１４により遅延量τ−（Ｔｒｃ＋Ｔｄｒ）をモニタした後には、常に、状態保持部１５にセット状態とリセット状態の境界が存在し、その境界より前段側の状態保持ユニットは、全て、セット状態、後段側の状態保持ユニットは、全て、リセット状態となっている。
【０３２０】
そこで、本実施の形態では、リセット期間において、前段の状態保持ユニットがリセット状態であるセット状態の状態保持ユニットについては、その状態を、セット状態からリセット状態に変化させる。この場合、セット状態の状態保持ユニットは、最も境界寄りの状態保持ユニットから、順次、リセット状態に変化していく（リセットの伝搬）。
【０３２１】
リセットされる状態保持ユニットの数（リセット段数）は、制御パルスｂＰ２の幅（ｂＰ２＝“Ｌ”の期間）により決定される。また、リセット段数は、前進パルスの伝搬段数の変動量δ分以上であることが必要である。
【０３２２】
また、本実施の形態のＳＴＢＤでは、リセットの伝搬は、後退パルスの伝搬に対して、常に２段分遅れて進行する。従って、リセットの伝搬が後退パルスの伝搬を追い越してしまうことがなく、常に、後退パルス用遅延線１６により正確にτ−（Ｔｒｃ＋Ｔｄｒ）をコピーできる。
【０３２３】
なお、本実施の形態では、リセットの条件として、前々段の後退遅延ユニット１６−（ｎー２）の出力信号ｂＲＣＬｎ−２が“Ｌ”である、という条件が追加されているが、この場合でも、従来のような問題（後退パルス用遅延線１６の断線）は、生じることがない。
【０３２４】
即ち、仮に、後退パルス用遅延線１６内に２つの後退パルスが存在しても、後段の状態保持ユニットがリセット状態である、という条件が存在するため、現サイクルの１つ前のサイクルで生成された後退パルスにより、状態保持ユニットがリセットされるということはない。
【０３２５】
状態保持部初期化回路１７は、リセット信号ＲＥＳＥＴに基づいて、初期化信号ｂＲＳＩＮＩを出力し、Ｎ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態を強制的にリセット状態に初期化する。
【０３２６】
ここで、状態保持ユニット１５−ｎ及び状態保持部初期化回路１７について簡単に説明する。
【０３２７】
図３１は、状態保持ユニット１５−ｎの一例を示している。
【０３２８】
状態保持ユニット１５−ｎは、電源端子ＶＤＤとノードＣの間に直列接続されるＰチャネルＭＯＳトランジスタＰ１，Ｐ２，Ｐ４、接地端子ＶＳＳとノードＣの間に直列接続されるＮチャネルＭＯＳトランジスタＮ１，Ｎ２、電源端子ＶＤＤとノードＣの間に接続されるＰチャネルＭＯＳトランジスタＰ３及びノードＣ，Ｄの間に接続されるラッチ回路ＬＡＴＣＨから構成される。
【０３２９】
本例では、ラッチ回路ＬＡＴＣＨは、リセットされない限り、常に、同じ状態を保持するスタティック型ラッチ回路としている。リセット時には、ｂＰ２及びＱｎ＋１が共に“Ｌ”レベルとなり、ノードＣが“Ｈ”レベル、ノードＤが“Ｌ”レベルとなる。
【０３３０】
なお、ｂＰ２は、制御パルス生成回路１３から出力される信号であり、Ｑｎ＋１は、後段の状態保持ユニット１５−（ｎ＋１）から出力される信号である。本実施の形態のＳＴＢＤは、後退遅延ユニット１６−（ｎ−２）から出力される信号ＲＣＬｎ−２も、状態保持ユニット１５−ｎに入力される。
【０３３１】
制御パルスｂＰ２が“Ｈ”レベルの時、前進遅延ユニット１４−ｎに前進パルスＦＣＬｎ−１が入力されると、前進遅延ユニット１４−ｎの出力信号ＦＦＣＬｎが“Ｈ”レベルとなるため、状態保持ユニット１５−ｎは、セット状態、即ち、ノードＣが“Ｌ”レベル、ノードＤが“Ｈ”レベルの状態に変化する。
【０３３２】
状態保持ユニット１５−ｎのノードＣの信号ｂＱｎ及びノードＤの信号Ｑｎは、それぞれ、後述する後退遅延ユニット１６−ｎに供給される。後退遅延ユニット１６−ｎの動作は、状態保持ユニット１５−ｎの出力信号Ｑｎ，ｂＱｎにより制御される。
【０３３３】
制御パルスｂＰ２が“Ｌ”レベルの時、後段の状態保持ユニット１５−（ｎ＋１）がリセット状態であり（Ｑｎ＋１＝“Ｌ”）、かつ、前々段の後退遅延ユニット１６−（ｎ−２）内に後退パルスが存在すると（ｂＲＣＬｎ−２＝“Ｌ”）、状態保持ユニット１５−ｎは、セット状態から、リセット状態、即ち、ノードＣが“Ｈ”レベル、ノードＤが“Ｌ”レベルの状態に変化する。
【０３３４】
状態保持ユニット１５−ｎのノードＤの信号Ｑｎは、前段の状態保持ユニット１５−（ｎ−１）に供給される。前段の状態保持ユニット１５−（ｎ−１）は、Ｑｎ（＝“Ｌ”）を受け、かつ、ｂＲＣＬｎ−３（＝“Ｌ”）を受けると、リセット期間（ｂＰ２＝“Ｌ”）であれば、その状態を、セット状態からリセット状態に変化させる。
【０３３５】
図３２は、状態保持部初期化回路１７の一例を示している。
【０３３６】
状態保持部初期化回路１７は、例えば、直列接続された３つのインバータからなる遅延回路により構成される。リセット信号ＲＥＳＥＴが“Ｈ”レベルになると、制御信号ｂＲＳＩＮＩが“Ｌ”レベルとなるため、図３１のＰチャネルＭＯＳトランジスタＰ３がオン状態となり、状態保持ユニット１５−ｎがリセット状態となる。
【０３３７】
なお、制御パルスｂＰ２によるリセット動作と制御信号ｂＲＳＩＮＩによるリセット動作とは、別個のものとして区別される。
【０３３８】
上述のディレイモニタ１２、制御パルス生成回路１３、前進パルス用遅延線１４、状態保持部１５及び状態保持部初期化回路１７（これらをまとめて、モニタ回路と称する。）は、外部クロックＥＸＴＣＬＫと内部クロックＩＮＴＣＬＫの同期をとるために必要な遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）をモニタすることを目的としている。
【０３３９】
これに対して、後退パルス用遅延線１６は、モニタ回路によりモニタされた遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的とする。後退パルス用遅延線１６は、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーすることを目的としているため、前進パルス用遅延線１４を完全に模している。即ち、前進パルス用遅延線１４と後退パルス用遅延線１６は、状態保持部１５に対して対称的に配置され、かつ、両者の回路構成は、完全に同じである。
【０３４０】
後退パルス用遅延線１６は、直列接続されたＮ個の後退遅延ユニット１６−１，１６−２，・・・１６−ｎ，・・・１６−Ｎから構成される。後退パルス用遅延線１６は、状態保持部１５内のＮ個の状態保持ユニット１５−１，１５−２，・・・１５−ｎ，・・・１５−Ｎの状態及びクロックＣＬＫＳＴＩＮに基づいて、遅延時間τ−（Ｔｒｃ＋Ｔｄｒ）を正確にコピーした後に、クロックＳＴＣＬＫを出力する。
【０３４１】
ここで、後退パルス用遅延線１６内の後退遅延ユニット１６−（ｎ−１）の具体例について説明する。
【０３４２】
図３３は、後退遅延ユニット１６−（ｎ−１）の一例を示している。
【０３４３】
本例では、後退遅延ユニット１６−（ｎ−１）は、３つのインバータＩ４，Ｉ５，Ｉ６と、２つのクロックドインバータＣＩ３，ＣＩ４とから構成される。クロックドインバータＣＩ３，ＣＩ４の動作は、状態保持ユニット１５−ｎから出力される制御信号Ｑｎ，ｂＱｎにより制御される。
【０３４４】
リセット状態の状態保持ユニット（所定段以降の状態保持ユニット）に対応する後退遅延ユニット、即ち、制御信号Ｑｎが“Ｌ”レベル、制御信号ｂＱｎが“Ｈ”レベルの後退遅延ユニットでは、クロックドインバータＣＩ４が動作状態となり、クロックドインバータＣＩ３が非動作状態となる。このため、クロックＲＣＬＩＮ（＝ＣＬＫＳＴＩＮ）がクロックドインバータＣＩ４に入力され、後退パルスが生成される。
【０３４５】
セット状態の状態保持ユニット（所定段より前の状態保持ユニット）に対応する後退遅延ユニット、即ち、制御信号Ｑｎが“Ｈ”レベル、制御信号ｂＱｎが“Ｌ”レベルの後退遅延ユニットでは、クロックドインバータＣＩ３が動作状態となり、クロックドインバータＣＩ４が非動作状態となる。このため、前段の後退遅延ユニットで生成された後退パルスＲＣＬｎ＋１が、クロックドインバータＣＩ３及びインバータＩ５を経由して、後段の後退遅延ユニットに、ＲＣＬｎとして伝達される。
【０３４６】
ところで、本実施の形態に関わるＳＴＢＤの後退遅延ユニット１６−（ｎ−１）は、上述の第１実施の形態に関わるＳＴＢＤとは異なり、インバータＩ６を有している。これは、本実施の形態のＳＴＢＤが、後退パルスに基づいて状態保持部１５のリセットを行っていることに基づいている。
【０３４７】
なお、インバータＩ４は、前進遅延ユニット１４−ｎ（図３０参照）との対称性を考慮して設けられたもので、その出力信号ＲＲＣＬｎ−１は、使用されない。
【０３４８】
クロックＳＴＣＬＫは、遅延量Ｔｄｒを有するドライバ１８を経由すると、外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫとなる。
【０３４９】
このように、本実施の形態に関わるＳＴＢＤでは、ｎ段目の状態保持ユニット１５−ｎのリセット条件は、▲１▼リセット期間であること、▲２▼後段の状態保持ユニット１５−（ｎ＋１）がリセット状態であること、▲３▼前々段の後退遅延ユニット１６−（ｎー２）に後退パルスが存在すること、の３つとなっている。
【０３５０】
即ち、リセット条件として、▲３▼の条件を追加することにより、いかなる状況においても、リセットタイミングが早すぎることによる後退パルスの消去、という問題を回避することができる。
【０３５１】
また、本発明では、▲１▼及び▲２▼の条件を備えているため、後退パルス用遅延線の切断という問題を解決しつつ、ＳＴＢＤの面積縮小や消費電流の低減という効果も得ることができる。
【０３５２】
［システム］
次に、上述した本発明のクロック同期回路を使用したシステムの一例について説明する。
【０３５３】
図３５は、本発明のクロック同期回路を備える半導体メモリとＣＰＵとからなるシステムを示している。
【０３５４】
クロック同期型メモリ１とＣＰＵ２は、データバス８を介して互いに接続されている。ＣＰＵ２は、外部クロックＥＸＴＣＬＫを生成し、これをクロック同期型メモリ１に与える。外部クロックＥＸＴＣＬＫは、レシーバ（バッファ）１１を経由すると、内部クロックＣＬＫＳＴＩＮとなる。しかし、外部クロックＥＸＴＣＬＫと内部クロックＣＬＫＳＴＩＮの間には、レシーバ１１の遅延量分だけのずれ（スキュ）を有するため、これを、本発明のクロック同期回路３により取り除く。
【０３５５】
外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫは、クロック同期回路３から出力され、この内部クロックＩＮＴＣＬＫは、データ入力バッファ４及びデータ出力バッファ５に与えられる。即ち、書き込み・読み出し回路６を用いて、メモリセルアレイ１に対するデータの書き込み・読み出しを行う場合に、データが外部クロックＥＸＴＣＬＫに同期した内部クロックＩＮＴＣＬＫに同期して入出力されるため、誤動作が防止され、高速処理が可能になる。
【０３５６】
［レイアウト］
次に、上述した本発明のクロック同期回路を有する半導体メモリのレイアウトの一例について説明する。
【０３５７】
図３６及び図３７は、本発明のクロック同期回路を有する半導体メモリのレイアウトを示している。
【０３５８】
クロック同期型メモリ１は、例えば、４つのメモリセルアレイ７を有する。メモリセルアレイ７の間のスペースには、周辺回路、入力回路９Ａ、データ入出力回路９Ｂなどが配置される。入力回路９Ａ上には、入力パッドが配置され、データ入出力回路９Ｂ上には、入出力パッドが配置される。
【０３５９】
本発明のクロック同期回路３は、例えば、入力回路９Ａの近傍に配置される（図３６参照）。入力回路９Ａは、図３５のレシーバ（バッファ）１１を含んでいるため、入力回路９Ａの近傍に本発明のクロック同期回路３を配置することは、配線レイアウトを容易にするという観点から、非常に優れている。
【０３６０】
また、本発明のクロック同期回路３は、例えば、データ入出力回路９Ｂの近傍に配置される（図３７参照）。本発明のクロック同期回路３により生成されるクロックは、データ入出力回路９Ｂにおいて使用されるため、データ入出力回路９Ｂの近傍に本発明のクロック同期回路３を配置することは、配線レイアウトを容易にする、同期制御を正確に行うなど、という観点から、非常に優れている。
【０３６１】
図３８及び図３９は、上述の本発明のクロック同期回路を構成する要素のうち、前進遅延ユニット１４−１，１４−２，・・・１４−Ｎ、状態保持ユニット１５−１，１５−２，・・・１５−Ｎ及び後退遅延ユニット１６−１，１６−２，・・・１６−Ｎのレイアウトを示している。
【０３６２】
図３８のレイアウトは、従来例（図４３）及び参考例（図１）に対応する。また、図３９のレイアウトは、本発明の第１実施の形態（図１９）のレイアウトに対応する。
【０３６３】
本発明では、前進遅延ユニット１４−１，１４−２，・・・１４−Ｎ及び後退遅延ユニット１６−１，１６−２，・・・１６−Ｎの各々のサイズは、従来例及び参考例に比べて、インバータ１つ分だけ縮小することができる。即ち、図３９に示すように、前進遅延ユニット１４−１，１４−２，・・・１４−Ｎ及び後退遅延ユニット１６−１，１６−２，・・・１６−Ｎに関しては、領域Ｓだけ、サイズを縮めることができる。
【０３６４】
なお、クロック同期回路としては、従来例及び参考例に対して、２０％程度のサイズの縮小が可能である。
【０３６５】
図４０乃至図４２は、前進遅延ユニット１４−１，１４−２，・・・１４−Ｎ、状態保持ユニット１５−１，１５−２，・・・１５−Ｎ及び後退遅延ユニット１６−１，１６−２，・・・１６−Ｎを結ぶ配線のレイアウトを示している。
【０３６６】
図４０及び図４１のレイアウトは、従来例（図４３）及び参考例（図１）に対応する。また、図４２のレイアウトは、本発明の第１実施の形態（図１９）のレイアウトに対応する。
【０３６７】
まず、従来例及び参考例では、例えば、ｎ＋１段目の状態保持ユニットのリセットは、ｎ−１段目の後退遅延ユニットの出力信号ｂＲＣＬｎ−１に基づいて行われる。また、ｎ段目の後退遅延ユニットの状態（後段のユニットの出力信号ＲＣＬｎ＋１を受けるか、又は、ＲＣＬＩＮ（＝ＣＬＫＳＴＩＮ）を受けるか）は、ｎ＋１段目の状態保持ユニットの出力信号Ｑｎ＋１，ｂＱｎ＋１に基づいて行われる。
【０３６８】
従って、図４０に示すように、状態保持ユニット１５−１，１５−２，・・・１５−Ｎと後退遅延ユニット１６−１，１６−２，・・・１６−Ｎとの間のスペースに配置される配線のレイアウトは、複雑になる。
【０３６９】
従来例及び参考例では、この問題を解決するため、例えば、図４１に示すように、後退遅延ユニット１６−１，１６−２，・・・１６−Ｎの位置を、１段分だけ、後段側にずらす。この場合、状態保持ユニット１５−１，１５−２，・・・１５−Ｎと後退遅延ユニット１６−１，１６−２，・・・１６−Ｎとの間のスペースに配置される配線のレイアウトは、簡略化される。
【０３７０】
しかし、図４１のレイアウトの場合には、後退遅延ユニット１６−１，１６−２，・・・１６−Ｎをずらした分だけ、無駄なスペースＳ１，Ｓ２が発生し、これが、クロック同期回路の面積の縮小の障害となる。
【０３７１】
これに対し、本発明では、例えば、ｎ＋１段目の状態保持ユニットのリセットは、ｎ＋２段目の状態保持ユニットの出力信号Ｑｎ＋２に基づいて行われる。つまり、状態保持ユニット１５−１，１５−２，・・・１５−Ｎと後退遅延ユニット１６−１，１６−２，・・・１６−Ｎとの間のスペースには、ｎ＋１段目の状態保持ユニットの出力信号Ｑｎ＋１，ｂＱｎ＋１を、ｎ段目の後退遅延ユニットに供給するための配線のみが配置される。
【０３７２】
従って、図４２に示すように、後退遅延ユニット１６−１，１６−２，・・・１６−Ｎをずらすことなく、状態保持ユニット１５−１，１５−２，・・・１５−Ｎと後退遅延ユニット１６−１，１６−２，・・・１６−Ｎとの間のスペースに配置される配線のレイアウトを簡略化できる。
【０３７３】
【発明の効果】
以上、説明したように、本発明のクロック同期回路によれば、低消費電力と高い同期精度を同時に実現できると共に、簡易なレイアウト、かつ、小さな回路サイズのクロック同期回路を実現できる。
【図面の簡単な説明】
【図１】本発明の参考例に関わるＳＴＢＤを示す図。
【図２】図１の前進遅延ユニットを示す図。
【図３】図１の状態保持ユニットを示す図。
【図４】図１の状態保持部初期化回路を示す図。
【図５】図１の後退遅延ユニットを示す図。
【図６】図１の制御パルス生成回路を示す図。
【図７】図１の状態保持部制御回路を示す図。
【図８】従来のＳＴＢＤを示す図。
【図９】本発明の参考例に関わるＳＴＢＤを示す図。
【図１０】図１のＳＴＢＤの動作を示す波形図。
【図１１】図１０の波形内の時点▲１▼でのＳＴＢＤの状態を示す図。
【図１２】図１０の波形内の時点▲２▼でのＳＴＢＤの状態を示す図。
【図１３】図１０の波形内の時点▲３▼でのＳＴＢＤの状態を示す図。
【図１４】図１０の波形内の時点▲４▼でのＳＴＢＤの状態を示す図。
【図１５】図１０の波形内の時点▲１▼’でのＳＴＢＤの状態を示す図。
【図１６】図１０の波形内の時点▲２▼’でのＳＴＢＤの状態を示す図。
【図１７】図１０の波形内の時点▲３▼’でのＳＴＢＤの状態を示す図。
【図１８】図１０の波形内の時点▲４▼’でのＳＴＢＤの状態を示す図。
【図１９】本発明の第１実施の形態に関わるＳＴＢＤを示す図。
【図２０】図１９の前進遅延ユニットを示す図。
【図２１】図１９の状態保持ユニットを示す図。
【図２２】図１９の状態保持部初期化回路を示す図。
【図２３】図１９の後退遅延ユニットを示す図。
【図２４】図１９の制御パルス生成回路を示す図。
【図２５】図１９のＳＴＢＤの動作を示す波形図。
【図２６】図２５の波形内の時点▲１▼でのＳＴＢＤの状態を示す図。
【図２７】図２５の波形内の時点▲２▼でのＳＴＢＤの状態を示す図。
【図２８】図２５の波形内の時点▲３▼でのＳＴＢＤの状態を示す図。
【図２９】本発明の第２実施の形態に関わるＳＴＢＤを示す図。
【図３０】図２９の前進遅延ユニットを示す図。
【図３１】図２９の状態保持ユニットを示す図。
【図３２】図２９の状態保持部初期化回路を示す図。
【図３３】図２９の後退遅延ユニットを示す図。
【図３４】図２９の制御パルス生成回路を示す図。
【図３５】本発明のＳＴＢＤを搭載したメモリとＣＰＵからなるシステムを示す図。
【図３６】本発明のＳＴＢＤを搭載したメモリのレイアウトを示す図。
【図３７】本発明のＳＴＢＤを搭載したメモリのレイアウトを示す図。
【図３８】本発明のＳＴＢＤのレイアウトを示す図。
【図３９】本発明のＳＴＢＤのレイアウトを示す図。
【図４０】本発明のＳＴＢＤのレイアウトを示す図。
【図４１】本発明のＳＴＢＤのレイアウトを示す図。
【図４２】本発明のＳＴＢＤのレイアウトを示す図。
【図４３】従来のＳＴＢＤを示す図。
【図４４】図４３の前進遅延ユニットを示す図。
【図４５】図４３の状態保持ユニットを示す図。
【図４６】図４３の状態保持部初期化回路を示す図。
【図４７】図４３の後退遅延ユニットを示す図。
【図４８】図４３の制御パルス生成回路を示す図。
【図４９】図４３のＳＴＢＤの同期動作原理を示す波形図。
【図５０】図４３のＳＴＢＤの問題点を示す図。
【図５１】図４３のＳＴＢＤの問題点を示す図。
【符号の説明】
１１                          ：レシーバ（バッファ）、
１２                          ：ディレイモニタ（ミミックディレイ）、
１３                          ：制御パルス生成回路、
１４                          ：前進パルス用遅延線、
１４−１，１４−２，・・・１４−Ｎ  ：前進遅延ユニット、
１５                          ：状態保持部、
１５−１，１５−２，・・・１５−Ｎ  ：状態保持ユニット、
１６                          ：後退パルス用遅延線、
１６−１，１６−２，・・・１６−Ｎ  ：後退遅延ユニット、
１７                          ：状態保持部初期化回路、
１８                          ：ドライバ、
Ｉ１，Ｉ２，・・・Ｉ６        ：インバータ、
ＣＩ１，ＣＩ２，・・・ＣＩ４  ：クロックドインバータ、
Ｐ１，Ｐ２，Ｐ３，Ｐ４        ：ＰチャネルＭＯＳトランジスタ、
Ｎ１，Ｎ２                    ：ＮチャネルＭＯＳトランジスタ、
ＬＡＴＣＨ                    ：ラッチ回路。
【図１】
0004005779.tif 000004
【図２】
0004005779.tif 000005
【図３】
0004005779.tif 000006
【図４】
0004005779.tif 000007
【図５】
0004005779.tif 000008
【図６】
0004005779.tif 000009
【図７】
0004005779.tif 000010
【図８】
0004005779.tif 000011
【図９】
0004005779.tif 000012
【図１０】
0004005779.tif 000013
【図１１】
0004005779.tif 000014
【図１２】
0004005779.tif 000015
【図１３】
0004005779.tif 000016
【図１４】
0004005779.tif 000017
【図１５】
0004005779.tif 000018
【図１６】
0004005779.tif 000019
【図１７】
0004005779.tif 000020
【図１８】
0004005779.tif 000021
【図１９】
0004005779.tif 000022
【図２０】
0004005779.tif 000023
【図２１】
0004005779.tif 000024
【図２２】
0004005779.tif 000025
【図２３】
0004005779.tif 000026
【図２４】
0004005779.tif 000027
【図２５】
0004005779.tif 000028
【図２６】
0004005779.tif 000029
【図２７】
0004005779.tif 000030
【図２８】
0004005779.tif 000031
【図２９】
0004005779.tif 000032
【図３０】
0004005779.tif 000033
【図３１】
0004005779.tif 000034
【図３２】
0004005779.tif 000035
【図３３】
0004005779.tif 000036
【図３４】
0004005779.tif 000037
【図３５】
0004005779.tif 000038
【図３６】
0004005779.tif 000039
【図３７】
0004005779.tif 000040
【図３８】
0004005779.tif 000041
【図３９】
0004005779.tif 000042
【図４０】
0004005779.tif 000043
【図４１】
0004005779.tif 000044
【図４２】
0004005779.tif 000045
【図４３】
0004005779.tif 000046
【図４４】
0004005779.tif 000047
【図４５】
0004005779.tif 000048
【図４６】
0004005779.tif 000049
【図４７】
0004005779.tif 000050
【図４８】
0004005779.tif 000051
【図４９】
0004005779.tif 000052
【図５０】
0004005779.tif 000053
【図５１】
0004005779.tif 000054