(57)【要約】【課題】Ｎ相クロックの相間スキューの検出を行なうための基準クロックを半導体集積回路内で生成する。【解決手段】分周回路１４は、Ｎ相（４相）クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４をＮ＋１個（６個）の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）に分周し、位相比較対象クロック生成回路１２は、分周クロックＡ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）から位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４を生成する。位相比較基準クロック生成回路１３は、分周クロックＡ４（−１）／Ａ１（０）／・・・／Ａ１（＋１）から所定の組み合わせと演算規則に従いＮ個（４個）の基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成する。そして、位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４と基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４のそれぞれの位相差を検出する。【選択図】図２
2011138342.tif 000002
【特許請求の範囲】
【請求項１】
被測定対象となるＮ相クロックを所定のタイミングでＮ＋２個の分周クロックに分周する分周回路と、
所定のＮ個の分周クロックからＮ個の位相比較対象クロックを生成する位相比較対象クロック生成回路と、
前記Ｎ＋２個の分周クロックから所定の組み合わせと演算規則に従いＮ個の位相比較基準クロックを生成する位相比較基準クロック生成回路と、
前記Ｎ個の位相比較対象クロックと前記Ｎ個の基準クロックのそれぞれの位相差を検出する位相比較回路と、
を備えることを特徴とする相間スキュー検出回路。
【請求項２】
前記分周回路は、４相（ｎ＝１，２，３，４）クロックを入力とし、該４相クロックの４相目、１相目、２相目、３相目、４相目、１相目の各クロックに同期して順次に生成される６個の分周クロックであって、前記４相クロックの各クロックの２倍の周期に分周される６個（１，２，３，４，５，６番目）の分周クロックを生成し、
前記位相比較対象クロック生成回路は、前記６個の分周クロックの内の２番目の分周クロックから５番目の分周クロックまでを、それぞれ所定の遅延量で遅延させることにより、４個（１，２，３，４番目）の位相比較対象クロックを生成し、
前記位相比較基準クロック生成回路は、前記６個の分周クロックを基に、１番目の分周クロックと３番目の分周クロック、２番目の分周クロックと４番目の分周クロック、３番目の分周クロックと５番目の分周クロック、４番目の分周クロックと６番目の分周クロックの各組内において、それぞれのクロックの位相を２分した位相でＮ個（１，２，３，４番目）の位相比較基準クロックを生成し、
前記位相比較回路は、前記４個の位相比較対象クロックと、前記４個の位相比較基準クロックについて、それぞれの順番に対応する位相比較対象クロックと位相比較基準クロックごとに位相差を検出する
ことを特徴とする請求項１に記載の相間スキュー検出回路。
【請求項３】
前記分周回路は、ｎ相（ｎ＝１，２，３，・・・，Ｎ）のクロックを入力とし、Ｎ相目、１相目、２相目、・・・、Ｎ−１相目、Ｎ相目、１相目の各クロックに同期して順次に生成されるＮ＋２個の分周クロックであって、前記Ｎ相クロックの各クロックの２倍の周期に分周されるＮ＋２個（１，２，３，・・・，Ｎ＋２番目）の分周クロックを生成し、
前記位相比較対象クロック生成回路は、２番目の分周クロックからＮ＋１番目の分周クロックまでを、それぞれ所定の遅延量で遅延させることにより、Ｎ個（１，２，３，・・・，Ｎ番目）の位相比較対象クロックを生成し、
前記位相比較基準クロック生成回路は、前記Ｎ＋２個の分周クロックを基に、１番目の分周クロックと３番目の分周クロック、２番目の分周クロックと４番目の分周クロック、・・・、Ｎ−１番目の分周クロックとＮ＋１番目の分周クロック、Ｎ番目の分周クロックとＮ＋２番目の分周クロックの各組内において、それぞれのクロックの位相を２分した位相でＮ個（１，２，３，・・・，Ｎ番目）の位相比較基準クロックを生成し、
前記位相比較回路は、前記Ｎ個の位相比較対象クロックと、前記Ｎ個の位相比較基準クロックについて、それぞれの順番に対応する位相比較対象クロックと位相比較基準クロックごとに位相差を検出する、
ことを特徴とする請求項１に記載の相間スキュー検出回路。
【請求項４】
前記位相比較基準クロック生成回路では、２つの分周クロックの位相を２分した位相で位相比較基準クロックを生成する際に、フェイズ・インターポレータを使用し、
前記位相比較対象クロック生成回路では、前記フェイズ・インターポレータにおいて生じる出力信号の遅延時間に相当する遅延量により、入力される分周クロックを遅延させる
ことを特徴とする請求項２または３に記載の相間スキュー検出回路。
【請求項５】
前記請求項１から４のいずれかに記載の相間スキュー検出回路を備え、
前記相間スキュー検出回路内の位相比較回路における位相比較結果を基に、前記分周回路に入力されるＮ相クロックのそれぞれの位相を調整するための位相調整用遅延回路を備えることを特徴とする相間スキュー調整回路。
【請求項６】
請求項５に記載の相間スキュー調整回路を備えることを特徴とする半導体集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、多相クロックの位相ずれ（スキュー）を検出する相間スキュー検出回路と、該相間スキュー検出回路を用いた相間スキュー調整回路と、この相間スキュー調整回路を備える半導体集積回路（ＬＳＩ）に関する。
【背景技術】
【０００２】
２相クロックや４相クロックといった多相クロックは半導体集積回路（単に「ＬＳＩ」とも呼ぶ）で用いられている。ここで、クロックツリーの分配遅延差や、クロック分配ドライバの製造ばらつきによって生じる遅延誤差等により、ＬＳＩ内にクロックを分配した後には、相間位相の理想値からのずれ（スキュー）が生じるため、遅延マージンが縮小することによって誤動作を起こす要因となりうる。そこで、特許文献１に開示されているように、１つのクロック信号から多相クロックを生成する際に、相間の位相差を均一化するような機能が考案されている（図１，段落００３５）。しかしながら、特許文献１においては、本願発明のように、クロック分配後の相間スキューの検出機能は見られず、多相クロックのスキュー検出を行なうための基準クロックを半導体集積回路内で生成しようとするものではない。
【０００３】
また、関連する高速回路のデータエッジ−クロックエッジ位相検出器がある（特許文献２を参照）。この特許文献２では、データ信号と基準クロック信号との間のスキューを検出してデータ信号と基準クロック信号とを同期させる新規の方法およびシステムが開示されている（図１、段落００１２，００１３）。しかしながら、本願発明のように、多相クロックのスキュー検出を行なうための基準クロックを半導体集積回路内で生成するものではない。
【０００４】
また、関連するクロック・スキュー測定装置がある（特許文献３を参照）。このクロック・スキュー測定装置は、オンチップ・クロック信号間のスキューを効率的に測定することを目的としている（明細書Ｐ２Ｌ４〜Ｌ１９）。しかしながら、本願発明のように、多相クロックのスキュー検出を行なうための基準クロックを半導体集積回路内で生成するものではない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１６３０３４号公報
【特許文献２】特表２００８−５４１６５７号公報
【特許文献３】国際公開第０３／０３６３１３号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【０００６】
多相クロックにおいては、Ｎ相の各クロックはそれぞれ（３６０／Ｎ）度ずつ位相差があるのが理想状態であり、この（３６０／Ｎ）度からのずれを検出するためには、（３６０／Ｎ）度の位相差を持つ基準クロックが必要となる。しかしながら、クロック分配系末端において、この基準クロックを高精度で実現する手段がなかった。
【０００７】
本発明の主たる課題は、多相クロックの相間スキュー検出を行なうための基準クロックを半導体集積回路内で生成できるようにし、外部から多相の基準クロックを半導体集積回路内に入力する必要をなくすことにある。
【課題を解決するための手段】
【０００８】
本発明の相間スキュー検出回路は、被測定対象となるＮ相クロックを所定のタイミングでＮ＋２個の分周クロックに分周する分周回路と、所定のＮ個の分周クロックからＮ個の位相比較対象クロックを生成する位相比較対象クロック生成回路と、前記Ｎ＋２個の分周クロックから所定の組み合わせと演算規則に従いＮ個の位相比較基準クロックを生成する位相比較基準クロック生成回路と、前記Ｎ個の位相比較対象クロックと前記Ｎ個の基準クロックのそれぞれの位相差を検出する位相比較回路と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明の相間スキュー検出回路においては、半導体集積回路（ＬＳＩ）の外部から基準クロックを入力するのではなく、ＬＳＩ内部のクロック分配系末端において、多相クロック自身から相間スキュー検出用の基準クロックを生成し、位相比較対象クロックと位相比較を行なう機能を有する。具体的には、被測定Ｎ相クロックを所定のタイミングで分周する分周回路と、分周されたクロックから位相比較対象クロックを生成する遅延回路と、分周されたクロックから位相比較基準クロックを生成する基準生成回路と、比較対象クロックと基準クロックとの位相差を検出する位相比較回路と、を有する。そして、位相比較基準クロックは、（３６０／Ｎ）度という位相差の絶対値を実現するのではなく、Ｎ相中の第Ｋクロックに対する基準クロックの場合、第Ｋ−１クロックと第Ｋ＋１クロックの位相差を等しく２分する位相となるようにする。
【００１０】
これにより、多相クロックの相間スキュー検出を行なうための基準クロックを半導体集積回路（ＬＳＩ）内で生成できる。このために、外部から多相の基準クロックをＬＳＩに入力する必要がなくなり、ＬＳＩの外部ピン数を増加させずに、内部クロック信号となる多相クロックの相間スキューを抑制できる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係わる相間スキュー調整回路の構成を示すブロック図である。
【図２】相間スキュー検出回路の構成を示すブロック図である
【図３】分周回路の構成を示す図である。
【図４】相間スキュー検出回路の動作を表すタイミングチャートである。
【図５】フェイズ・インターポレータの動作説明図である。
【図６】相間スキュー検出回路および相間スキュー調整回路おけるスキュー調整手順の説明図である。
【発明を実施するための形態】
【００１２】
本発明の実施の形態について、図面を参照して説明する。
図１は、本発明の実施の形態に係わる相間スキュー調整回路の構成を示すブロック図である。図１に示す例は、Ｎ相クロックが「Ｎ＝４」である４相クロックの場合の例であり、位相調整用遅延回路２と、遅延量制御回路３と、相間スキュー検出回路１１とを含む半導体集積回路内のクロック分配系を示している。図１に示す相間スキュー調整回路１では、４相の外部入力クロックＣＫＩＮ１／ＣＫＩＮ２／ＣＫＩＮ３／ＣＫＩＮ４のそれぞれの位相を位相調整用遅延回路２により調整し、位相調整された内部クロックとなる４相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４を生成して、半導体集積回路内の論理回路２１に供給する。
【００１３】
位相調整用遅延回路２は、多相の外部入力クロックＣＫＩＮ１，ＣＫＩＮ２，ＣＫＩＮ３，ＣＫＩＮ４のそれぞれを、遅延量可変の遅延素子（Ｄｅｌａｙ）２ａ，２ｂ，２ｃ，２ｄを用いて遅延調整し、半導体集積回路内の内部クロック信号となる４相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４を生成する。この遅延素子２ａ，２ｂ，２ｃ，２ｄにおける遅延量は、遅延量制御回路３から出力される遅延量設定信号Ｓｅｔ１，Ｓｅｔ２，Ｓｅｔ３，Ｓｅｔ４に基づき設定される。
【００１４】
遅延量制御回路３は、後述の相間スキュー検出回路１１から出力される位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４の信号を入力とし、遅延量設定信号Ｓｅｔ１，Ｓｅｔ２，Ｓｅｔ３，Ｓｅｔ４により位相調整用遅延回路２の各遅延値を調整していく。例えば、後述するようにクロックＣＬＫ１とＣＬＫ３の位相差を１８０度とするために、相間スキュー検出回路１１における位相比較結果が「ＤＴ１＝ＤＴ３」となるよう位相調整用遅延回路２における遅延量（クロック信号ＣＬＫ１，ＣＬＫ２に対する遅延量）を調整する。
【００１５】
図２は、相間スキュー検出回路１１の構成を示すブロック図である。また、図３は、分周回路１４の回路構成例を示している。
図２に示す相間スキュー検出回路１１では、被測定対象となる４相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４を分周回路１４に入力し、６個々の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）を生成する。この場合、分周クロックＡ４（−１）等の周期が、４相クロックＣＬＫ１等の２倍の周期となるように分周される。
【００１６】
図３に示すように、分周回路１４は、Ｎ＋２個のＦ／Ｆ（Ｄ−フリップフロップ）により構成される。４相クロックの場合は、６個のＦ／Ｆ１４１，１４２，１４３，１４４，１４５，１４６で構成される。第１のＦ／Ｆ１４１は、イネーブル信号ＥＮを入力すると分周動作を開始し、クロックＣＬＫ４の立上りエッジに同期して分周クロックＡ４（−１）を出力する。第２のＦ／Ｆ１４２は分周クロックＡ４（−１）を入力とし、クロックＣＬＫ１の立上りエッジに同期して分周クロックＡ１（０）を出力する。
【００１７】
第３のＦ／Ｆ１４３は分周クロックＡ１（０）を入力とし、クロックＣＬＫ２の立上りエッジに同期して分周クロックＡ２（０）を出力する。第４のＦ／Ｆ１４４は分周クロックＡ２（０）を入力とし、クロックＣＬＫ３の立上りエッジに同期して分周クロックＡ３（０）を出力する。第５のＦ／Ｆ１４５は分周クロックＡ３（０）を入力とし、クロックＣＬＫ４の立上りエッジに同期して分周クロックＡ４（０）を出力する。第６のＦ／Ｆ１４６は分周クロックＡ４（０）を入力とし、クロックＣＬＫ１の立上りエッジに同期して分周クロックＡ１（＋１）を出力する。
【００１８】
図４のタイミングチャートに、クロックＣＬＫ１，ＣＬＫ２，ＣＬＫ３，ＣＬＫ４と、分周回路１４により生成される分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）の波形の例を示している。
図４に示すように、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）は、クロックＣＬＫ４の２クロックサイクルの期間に生成される。そして、クロックＣＬＫ４の立ち上がりエッジに同期して、分周クロックＡ４（−１）が“０（Ｌｏｗ）”から“１（Ｈｉｇｈ）”に立ち上がる（矢付線ｋ４（−１）を参照）。
【００１９】
また、クロックＣＬＫ１の立ち上がりエッジに同期して、分周クロックＡ１（０）が“０”から“１”に立ち上がる（矢付線ｋ１を参照）。クロックＣＬＫ２の立ち上がりエッジに同期して、分周クロックＡ２（０）が“０”から“１”に立ち上がる（矢付線ｋ２を参照）。クロックＣＬＫ３の立ち上がりエッジに同期して、分周クロックＡ３（０）が“０”から“１”に立ち上がる（矢付線ｋ３を参照）。クロックＣＬＫ４の立ち上がりエッジに同期して、分周クロックＡ４（０）が“０”から“１”に立ち上がる（矢付線ｋ４を参照）。また、クロックＣＬＫ１の立ち上がりエッジに同期して、分周クロックＡ１（＋１）が“０”から“１”に立ち上がる（矢付線ｋ１（＋１）を参照）。
【００２０】
また、図２に示す位相比較対象クロック生成回路１２では、分周クロックＡ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）を入力とし、位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４を生成する。位相比較対象クロック生成回路１２はＮ個のフェイズ・インターポレータ（単に「ＰＩ」とも呼ぶ）から構成され、４相クロックの場合には４個のＰＩとなる。第１のＰＩ１２１には分周クロックＡ１（０）を入力し、位相比較対象クロックＢ１を出力とする。第２のＰＩ１２２には分周クロックＡ２（０）を入力し、位相比較対象クロックＢ２を出力とする。第３のＰＩ１２３には分周クロックＡ３（０）を入力し、位相比較対象クロックＢ３を出力とする。第４のＰＩ１２４には分周クロックＡ４（０）を入力し、位相比較対象クロックＢ４を出力とする。
【００２１】
図５は、フェイズ・インターポレータ（ＰＩ）に対する入力信号の位相と出力信号の位相関係を表す図である。ＰＩの２入力信号Ａ，Ｂが同相の信号である場合、回路遅延分Δｔだけの遅延がついて信号Ｙが出力される。また、ＰＩの２入力信号Ａ，Ｂが異なる位相の信号である場合、信号ＡとＢの中間位相の信号Ｙが回路遅延分Δｔだけの遅延がついて出力される。なお、位相比較対象クロック生成回路１２を使用するのは、分周クロックＡ１（０）等を位相比較対象クロックＢ１等として遅延させることにより、位相比較基準クロック生成回路（単に「基準クロック生成回路」とも呼ぶ）１３に入力される分周クロックＡ４（−１）等に対する位相比較基準クロック（単に「基準クロック」とも呼ぶ）Ｃ１等の遅延時間をキャンセルするためである。すなわち、基準クロック生成回路１３では、２つの分周クロックの位相を２分する位相を求めるために使用されるのであるが、信号を出力するまでに時間を要し、出力信号に基本的な遅延Δｔが生じるので、この遅延を位相比較対象クロック生成回路１２を用いてキャンセルしている。なお、図２に示すように、複数ビットの制御信号ＣＮＴ［ｎ：０］をＰＩに入力し、この信号を切替えることにより、入力信号ＡとＢの合成比を調整することができ、出力信号Ｙの位相を任意に設定することが可能となっている。
【００２２】
図４のタイミングチャートに、分周クロックＡ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）と、位相比較対象クロック生成回路１２により生成される位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４の波形の例を示している。図４に示すように、分周クロックＡ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）の立ち上がりエッジに同期して、前述の遅延時間Δｔの後に位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４が“０”から“１”に立ち上がる（矢付線ａ１，ａ２，ａ３，ａ４を参照）。
【００２３】
基準クロック生成回路１３では、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）を入力し、基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成する。基準クロック生成回路１３はＮ個のＰＩから構成され、４相クロックの場合には４個のＰＩとなる。第１のＰＩ１３１には分周クロックＡ４（−１）とＡ２（０）を入力し、基準クロックＣ１を出力する。基準クロックＣ１は、分周クロックＡ４（−１）とＡ２（０）のそれぞれの位相を２分したクロック信号となる。すなわち、それぞれの位相について「Ｃ１＝（Ａ４（−１）＋Ａ２（０））／２」となる。第２のＰＩ１３２には分周クロックＡ１（０）とＡ３（０）を入力し、基準クロックＣ２を出力とする。すなわち、基準クロックＣ２は、分周クロックＡ１（０）とＡ３（０）のそれぞれの位相を２分したクロック信号となる。
【００２４】
第３のＰＩ１３３には分周クロックＡ２（０）とＡ４（０）を入力し、基準クロックＣ３を出力とする。すなわち、基準クロックＣ３は、分周クロックＡ２（０）とＡ４（０）のそれぞれの位相を２分したクロック信号となる。第４のＰＩ１３４には分周クロックＡ３（０）とＡ１（＋１）を入力し、基準クロックＣ４を出力とする。すなわち、基準クロックＣ４は、分周クロックＡ３（０）とＡ１（＋１）のそれぞれの位相を２分したクロック信号となる。
【００２５】
図４のタイミングチャートに分周クロックＡ４（−１）等と、基準クロック生成回路１３により生成される基準クロックＣ１等の波形の例を示している。図に示すように、基準クロック生成回路１３では、分周クロックＡ４（−１）とＡ２（０）とを基に、位相が２分された基準クロックＣ１を生成する（矢付線ａ４（−１）とａ２を参照）。分周クロックＡ１（０）とＡ３（０）とを基に、位相が２分された基準クロックＣ２を生成する（矢付線ａ１とａ３を参照）。分周クロックＡ２（０）とＡ４（０）とを基に、位相が２分された基準クロックＣ３を生成する（矢付線ａ２とａ４を参照）。分周クロックＡ３（０）とＡ１（＋１）とを基に、位相が２分された基準クロックＣ４を生成する（矢付線ａ３とａ１（＋１）を参照）。
【００２６】
そして、相間スキュー検出回路１１では、位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４と、基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４とを位相比較回路１５へ入力し、それぞれのクロック間の位相差を検出する。位相比較回路１５はＮ個のＦ／Ｆ（図示せず）から構成され、４相クロックの場合には４個のＦ／Ｆとなる。第１のＦ／ＦはクロックＢ１を入力とし、基準クロックＣ１に同期して位相比較結果ＤＴ１を出力する。第２のＦ／ＦはクロックＢ２を入力とし、基準クロックＣ２に同期して位相比較結果ＤＴ２を出力する。第３のＦ／ＦはクロックＢ３を入力とし、基準クロックＣ３に同期して位相比較結果ＤＴ３を出力する。第４のＦ／ＦはクロックＢ４を入力とし、基準クロックＣ４に同期して位相比較結果ＤＴ４を出力する。
【００２７】
次に、図２に示す相間スキュー検出回路１１の全体の動作について、図４のタイミングチャートを参照しながら説明する。図４に示すタイミングチャートは、前述のように４相クロックの場合のタイミングチャートであり、横方向に時間をとり、縦方向にＮ相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４と、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）と、位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４と、基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４とを並べて示したものである。
【００２８】
４相クロックＣＬＫ１、ＣＬＫ２、ＣＬＫ３、ＣＬＫ４が分配されている状態で、分周回路１４にイネーブル信号ＥＮが入力されると、分周回路１４の第１のＦ／Ｆ１４１がＣＬＫ４に同期してトグル動作による分周を開始する。その後は、Ｆ／Ｆ１４１，１４２，１４３，１４４，１４５，１４６が、クロックＣＬＫ１、ＣＬＫ２、ＣＬＫ３、ＣＬＫ４と順次同期した信号を出力し、最後にクロックＣＬＫ１で６（Ｎ＋２）発目の信号を出力する。これにより、クロックＣＬＫ４の２クロックサイクルの間に、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）が出力される。
【００２９】
基準クロック生成回路１３では、分周された分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）から、位相比較を行なうための基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成する。第１の基準クロックＣ１は、Ａ４（−１）とＡ２（０）とを合成し、両信号の位相を２分する位相で出力される。この時、Ａ４（−１）とＡ２（０）はそれぞれ任意の位相であるため、基準クロックＣ１との位相差は「３６０／Ｎ）度＝９０度」であることは全く保障されない。同様に、第２の基準クロックＣ２は、Ａ１（０）とＡ３（０）とを合成し、両信号の位相を２分する位相で出力される。第３の基準クロックＣ３は、Ａ２（０）とＡ４（０）とを合成し、両信号の位相を２分する位相で出力される。第４の基準クロックＣ４は、Ａ３（０）とＡ１（＋１）とを合成し、両信号の位相を２分する位相で出力される。
【００３０】
そして、位相比較回路１５により、基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４と、位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４とのそれぞれのクロック間で位相差検出を行い、位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４が出力される（図示せず、図１を参照）。この位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４は、生成された基準クロック（例えば、基準クロックＣ１）に対して、位相比較対象クロック（例えば、位相比較対象クロックＢ１）の位相が早ければ出力信号は“１”となり、位相が遅ければ出力信号は“０”となる。
【００３１】
次に、この相間スキュー検出回路１１を使用して、位相調整を行なう手順を示す。具体的な説明を行なうために、４相クロックを例に挙げ、０度／９０度／１８０度／２７０度の４信号という定義で説明する。
【００３２】
図６は、位相調整手順を模式的に表した図である。図６では、横方向に位相を取り、縦方向に、遷移する各状態１，２、３，４ごとに、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）と、基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４と、位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４とを並べて示している。また、分周クロックＡ４（−１）等と、基準クロックＣ１等では、各クロックの立上りエッジを上向き矢印で示している。また、位相比較結果ＤＴを位相差で示している。位相差は、クロックＣＬＫ１のタイミングを０とし、クロックＣＬＫ１の１周期を１００で表しているため、調整後の位相としては、ＣＬＫ２が２５、ＣＬＫ３が５０、ＣＬＫ４が７５で表される。
【００３３】
図６を参照して、まず、調整前（状態１）の位相は、分周クロック「Ａ４（−１）＝−３５」、「Ａ１（０）＝０」、「Ａ２（０）＝２０」、「Ａ３（０）＝４０」、「Ａ４（０）＝６５」、「Ａ１（＋１）＝１００」であるとする。
従って、各基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４の位相は、以下のようになる。
基準クロックＣ１＝（Ａ４（−１）＋Ａ２（０））／２＝−７．５、
基準クロックＣ２＝（Ａ１（０）＋Ａ３（０））／２＝２０、
基準クロックＣ３＝（Ａ２（０）＋Ａ４（０））／２＝４２．５、
基準クロックＣ４＝（Ａ３（０）＋Ａ１（＋１）／２＝７０、
また、位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４は、
位相比較結果ＤＴ１＝Ａ１（０）−Ｃ１＝＋７．５、
位相比較結果ＤＴ２＝Ａ２（０）−Ｃ２＝±０、
位相比較結果ＤＴ３＝Ａ３（０）−Ｃ３＝−２．５、
位相比較結果ＤＴ１＝Ａ４（０）−Ｃ４＝−５．０、となる。
【００３４】
この状態において、手順１を実行する。この手順１では、図１に示す位相調整用遅延回路２により位相が調整される外部入力クロック信号ＣＫＩＮ３に対応する、位相が１８０度のクロックＣＬＫ３の位相を調整する。調整量としては、位相比較結果ＤＴ３がＤＴ１と等しくなるまで調整を行なう。ここでは、ＤＴ３を調整して、「ＤＴ３＝ＤＴ１＝＋７．５」になるように調整する。これにより、スキュー検出結果のＤＴ２やＤＴ４の値に関わらず、分周クロックＡ１（０）に対して分周クロックＡ０（３）は１８０度を実現することになる（矢付線Ｓ１を参照）。何故なら、基準クロックＣ１と基準クロックＣ３の位相差は１８０度であるからである。この時、ＤＴ１もＤＴ３も位相差＝０にはなっていなくても良い。これにより、クロックＣＬＫ１とクロックＣＬＫ３が１８０度の位相差となる。
【００３５】
この手順１の調整により、状態２となり、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）の位相は、「Ａ４（−１）＝−３５」、「Ａ１（０）＝０」、「Ａ２（０）＝２０」、「Ａ３（０）＝５０」、「Ａ４（０）＝６５」、「Ａ１（＋１）＝１００」となる。
従って、各基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４の位相は、「Ｃ１＝−７．５」、「Ｃ２＝２５」、「Ｃ３＝４２．５」、「Ｃ４＝６５」となる。また、位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４は、「ＤＴ１＝＋７．５」、「ＤＴ２＝−５．０」、「ＤＴ３＝＋７．５」、「ＤＴ４＝−１０」、となる。
【００３６】
続いて、手順２により、位相が９０度のクロック（ＣＬＫ２）を調整する。ＣＬＫ１に対してＣＬＫ３の位相が１８０度になっているため、クロックＣＬＫ２の基準クロックＣ２は９０度の位相となっている（Ａ１（０）〜Ａ３（０）が１８０度であるため、これを２分した基準クロックＣ２は、Ａ１（０）に対して９０度になる）。そこで、「ＤＴ２＝０（位相差＝０）」になるように、位相調整用遅延回路２により、クロックＣＬＫ２の位相を調整することで、９０度の位相を実現する（矢付線Ｓ２を参照）。
この手順２の調整により、状態３になり、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）の位相は、「Ａ４（−１）＝−３５」、「Ａ１（０）＝０」、「Ａ２（０）＝２５」、「Ａ３（０）＝５０」、「Ａ４（０）＝６５」、「Ａ１（＋１）＝１００」となる。
従って、各基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４の位相は、「Ｃ１＝−５．０」、「Ｃ２＝２５」、「Ｃ３＝４５」、「Ｃ４＝７５」となる。また、位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４は、「ＤＴ１＝＋５．０」、「ＤＴ２＝±０」、「ＤＴ３＝＋５．０」、「ＤＴ４＝−１０」、となる。
【００３７】
そして、手順３により、位相が２７０度のクロック（ＣＬＫ４）を調整する。手順２と同様、ＣＬＫ４の基準クロックＣ４は２７０度の位相となっているので、ＤＴ４が位相差＝０になるように、位相調整用遅延回路２により、クロックＣＬＫ４の位相を調整することで、２７０度の位相を実現する（矢付線Ｓ３を参照）。
この手順３の調整により、状態４となり、分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）の位相は、「Ａ４（−１）＝−２５」、「Ａ１（０）＝０」、「Ａ２（０）＝２５」、「Ａ３（０）＝５０」、「Ａ４（０）＝７５」、「Ａ１（＋１）＝１００」となる。
従って、各基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４の位相は、「Ｃ１＝±０」、「Ｃ２＝２５」、「Ｃ３＝５０」、「Ｃ４＝７５」となる。また、位相比較結果ＤＴ１／ＤＴ２／ＤＴ３／ＤＴ４は、「ＤＴ１＝±０」、「ＤＴ２＝±０」、「ＤＴ３＝±０」、「ＤＴ４＝±０」、となる。
【００３８】
以上説明した上記手順１、手順２および手順３を実行することにより、調整後の位相としては、クロックＣＬＫ１が０、クロックＣＬＫ２が２５、クロックＣＬＫ３が５０、クロックＣＬＫ４が７５となり、各クロック信号間のスキューが均等になるように調整される。
【００３９】
このように、本発明においては、ＬＳＩの外部から基準クロックを入力するのではなく、ＬＳＩ内部のクロック分配系末端において、多相クロック自身から相間スキュー検出用の基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成し、比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４と位相比較を行なうとともに、位相調整用遅延回路２により多相クロックの相間のスキューが均等になるように調整することができる。
【００４０】
以上説明したように、本発明の相間スキュー検出回路は、半導体集積回路（ＬＳＩ）の外部から基準クロックを入力するのではなく、ＬＳＩ内部のクロック分配系末端において、多相クロック自身から相間スキュー検出用の基準クロックを生成し、比較対象クロックと位相比較を行なうことができる。また、相間スキュー検出回路１１への入力となる被測定Ｎ相クロックは、各相の位相を制御する位相調整用遅延回路を有する。そして、本発明の相間スキュー検出回路で生成する位相比較基準クロックは、（３６０／Ｎ）度という位相差の絶対値を実現するのではなく、Ｎ相クロック中の第Ｋクロックに対する基準クロックの場合、第Ｋ−１クロックと第Ｋ＋１クロックの位相差を等しく２分する位相とする。この場合に、位相比較回路から出力される位相比較結果の信号を用いて位相調整用遅延回路によりＮ相クロックの相間スキュー調整を行なう場合に、第Ｋクロックの位相を調整すると、第Ｋ−１クロックに対する基準クロックの位相と、第Ｋ＋１クロックに対する基準クロックの位相が同時にずれることになる。この特性を巧みに利用して、好適なスキュー調整手順を実現するものである。
【００４１】
以上、本発明の実施の形態について説明したが、本発明の相間スキュー調整回路は、多相クロックが差動信号（differential clock）の場合にも適用できるものである（例えば、ＤＤＲ−ＳＤＲＡＭにおける差動クロック信号ＣＫ／ＣＫ＃信号の場合等）。この場合の回路の構成としては、図１および図２に示す回路構成と同じであるが、位相調整機能において、１８０度のクロックは０度のクロックの逆相となるため、１８０度のクロックの位相を調整する場合は、０度のクロックのデューティを調整することになる。同様に、２７０度のクロックは９０度のクロックの逆相となるため、２７０度のクロックの位相を調整する場合は、９０度のクロックのデューティを調整することになる。
【００４２】
なお、ここで上述した実施形態と本発明との対応関係について補足して説明しておく。本発明における被測定対象となるＮ相クロックはクロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４が対応し、Ｎ＋２個の分周クロックは分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）が対応し、位相比較対象クロックは位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４が対応する。また、位相比較基準クロックは位相比較基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４が対応し、位相調整用遅延回路に入力される外部入力クロックは外部入力クロックＣＫＩＮ１／ＣＫＩＮ２／ＣＫＩＮ３／ＣＫＩＮ４が対応する。また、本発明における相間スキュー調整回路は相間スキュー調整回路１が対応し、相間スキュー検出回路は相間スキュー検出回路１１が対応し、分周回路は分周回路１４が対応し、位相比較対象クロック生成回路は位相比較対象クロック生成回路１２が対応し、位相比較基準クロック生成回路は位相比較基準クロック生成回路１３が対応し、位相比較回路は位相比較回路１５が対応し、位相調整用遅延回路は位相調整用遅延回路２が対応する。
【００４３】
そして、上記実施形態おいて、相間スキュー検出回路１１は、被測定対象となるＮ相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４を所定のタイミングでＮ＋２個の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）に分周する分周回路１４と、所定のＮ個の分周クロックＡ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）からＮ個の位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４を生成する位相比較対象クロック生成回路１２と、Ｎ＋２個の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）から所定の組み合わせと演算規則に従いＮ個の基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成する位相比較基準クロック生成回路１３と、Ｎ個の位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４とＮ個の基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４のそれぞれの位相差を検出する位相比較回路１５と、を有して構成される。
このように、本発明の相間スキュー検出回路では、被測定対象となるＮ相クロックから生成されるＮ＋２個の分周クロックにおいて、所定の組み合わせ（例えば、１つの分周クロックを間において隣接する分周クロックの組み合わせ）と所定の演算規則（例えば、組となる２つの分周クロックの位相を２分した位相を算出する）に従いＮ個の基準クロックを生成する。これにより、多相クロックの相間スキュー検出を行なうための基準クロックを半導体集積回路（ＬＳＩ）内部で生成することができる。
【００４４】
また、上記実施形態において、分周回路１４は、４相（ｎ＝1，２，３，４）クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４を入力とし、４相目のクロックＣＬＫ４、１相目のクロックＣＬＫ１、２相目のクロックＣＬＫ２、３相目のクロックＣＬＫ３、４相目のクロックＣＬＫ４、１相目の各クロックＣＬＫ１に同期して順次に生成される６個の分周クロックであって、４相クロックの各クロックの２倍の周期に分周される６個（１，２，３，４，５，６番目）の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）を生成し、位相比較対象クロック生成回路１２は、６個の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）の内の２番目の分周クロックＡ１（０）から５番目の分周クロックＡ４（０）までを、それぞれ所定の遅延量で遅延させることにより、４個（１，２，３，４番目）の位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４を生成し、位相比較基準クロック生成回路１３は、６個の分周クロックＡ４（−１）／Ａ１（０）／Ａ２（０）／Ａ３（０）／Ａ４（０）／Ａ１（＋１）を基に、１番目の分周クロックＡ４（−１）と３番目の分周クロックＡ２（０）、２番目の分周クロックＡ１（０）と４番目の分周クロックＡ３（０）、３番目の分周クロックＡ２（０）と５番目の分周クロックＡ４（０）、４番目の分周クロックＡ３（０）と６番目の分周クロックＡ１（＋１）の各組内において、それぞれのクロックの位相を２分した位相で４個（１，２，３，４番目）の位相比較基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成し、位相比較回路は、４個の位相比較対象クロックＢ１／Ｂ２／Ｂ３／Ｂ４と、４個の位相比較基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４について、それぞれの順番に対応する位相比較対象クロックと位相比較基準クロックごとに位相差を検出する。
このように、４相クロックの場合は、１つの分周クロックを間において隣接する分周クロックの組み合わせ「分周クロックＡ４（−１）とＡ２（０）、分周クロックＡ１（０）／Ａ３（０）、分周クロックＡ２（０）とＡ４（０）、分周クロックＡ３（０）とＡ１（＋１）」により基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を生成する。これにより、多相クロックの相間スキュー検出を行なうための基準クロックを半導体集積回路（ＬＳＩ）内部で生成することができる。
【００４５】
また、上記実施形態において、相間スキュー調整回路１は、相間スキュー検出回路１１を備え、相間スキュー検出回路１１内の位相比較回路１５における位相比較結果を基に、分周回路１４に入力されるＮ相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４のそれぞれの位相を調整するための位相調整用遅延回路２を備える。
このように、Ｎ相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４の位相を調整する位相調整用遅延回路２を有する。
これにより、多相クロックの相間スキュー検出を行なうための基準クロックＣ１／Ｃ２／Ｃ３／Ｃ４を半導体集積回路（ＬＳＩ）内部で生成して、Ｎ相クロックＣＬＫ１／ＣＬＫ２／ＣＬＫ３／ＣＬＫ４の相間スキューの調整を行うことができる。このために、外部から多相の基準クロックをＬＳＩに入力する必要がなくなり、ＬＳＩの外部ピン数を増加させず、基準クロック自身のＬＳＩ内部における分配スキューを抑制できる。
【００４６】
以上、本発明の実施の形態について説明したが、本発明の相間スキュー検出回路、および相間スキュー調整回路は、上述の図示例にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【符号の説明】
【００４７】
１・・・相間スキュー調整回路、２・・・位相調整用遅延回路、２ａ，２ｂ，２ｃ，２ｄ・・・遅延素子、３・・・遅延量制御回路、１１・・・相間スキュー検出回路、１２・・・位相比較対象クロック生成回路、１３・・・位相比較基準クロック生成回路、１４・・・分周回路、１５・・・位相比較回路、２１・・・論理回路、Ａ４（−１），Ａ１（０），Ａ２（０），Ａ３（０），Ａ４（０），Ａ１（＋１）・・・分周クロック、Ｂ１，Ｂ２，Ｂ３，Ｂ４・・・位相比較対象クロック、Ｃ１，Ｃ２，Ｃ３，Ｃ４・・・位相比較基準クロック、ＣＫＩＮ１，ＣＫＩＮ２，ＣＫＩＮ３，ＣＫＩＮ４・・・外部入力クロック、ＣＬＫ１，ＣＬＫ２，ＣＬＫ３，ＣＬＫ４・・・Ｎ相クロック、ＤＴ１，ＤＴ２，ＤＴ３，ＤＴ４・・・位相比較結果
【図１】
2011138342.tif 000003
【図２】
2011138342.tif 000004
【図３】
2011138342.tif 000005
【図４】
2011138342.tif 000006
【図５】
2011138342.tif 000007
【図６】
2011138342.tif 000008