(57)【要約】集積回路で使用される通信インタフェースは、クロック基準信号を受信し、クロックツリー信号を発生するよう構成したクロック根元（ルート）回路（１１０）を有する。第１レーン回路（２２０ｂ）をクロック根元回路に接続し、クロックツリー信号および第１インタフェース回路に対するクロック信号を選択するための選択信号を受信するよう構成する。第２レーン回路（２２０ａ）を第１レーン回路に接続し、クロックツリー信号および第２インタフェース回路に対するクロック信号を選択するための選択信号を受信するよう構成する。ある実施形態では、各レーン回路は、クロックツリー信号を受信するよう構成したバッファ（２２２）と、インタフェース回路にクロックツリー信号を選択的に配給するよう構成したマルチプレクサ（２２８）を有する。本発明の利点は、クロックのずれ（スキュー量）の小さいモジュール構造の通信インタフェースにある。
2009512052.tif 000002
【特許請求の範囲】
【請求項１】
集積回路に使用する通信インタフェースにおいて、クロック基準信号を受信しかつクロックツリー信号を発生するよう構成したクロック根元回路と、このクロック根元回路に接続し、かつクロックツリー信号およびインタフェース回路へのクロック信号を選択するための選択信号を受信するよう構成した第１レーン回路と、前記第１レーン回路に接続し、かつクロックツリー信号およびインタフェース回路へのクロック信号を選択するための選択信号を受信するよう構成した第２レーン回路と、を備えたことを特徴とする通信インタフェース。
【請求項２】
請求項１記載の通信インタフェースにおいて、前記第１レーン回路をクロック基礎回路に隣接させて接続し、前記第２レーン回路を前記第１レーン回路に隣接させて接続した通信インタフェース。
【請求項３】
請求項２記載の通信インタフェースにおいて、さらに、クロック根元回路に接続し、かつクロックツリー信号およびインタフェース回路へのクロック信号を選択するための選択信号を受信するよう構成した第３レーン回路と、この第３レーン回路に接続し、かつクロックツリー信号およびインタフェース回路へのクロック信号を選択するための選択信号を受信するよう構成した第４レーン回路とを備え、前記第１レーン回路を前記クロック根元回路に隣接させて接続し、また前記第２レーン回路を第１レーン回路に隣接させて接続した通信インタフェース。
【請求項４】
請求項１記載の通信インタフェースにおいて、前記第１レーン回路および第２レーン回路を同一構造にした通信インタフェース。
【請求項５】
請求項３記載の通信インタフェースにおいて、第１レーン回路および第２レーン回路を同一構造にし、第３レーン回路および第４レーン回路を同一構造にした通信インタフェース。
【請求項６】
請求項１記載の通信インタフェースにおいて、各レーン回路は、クロックツリー信号を受信するよう構成したバッファと、前記インタフェース回路にクロックツリー信号を選択的に送信するよう構成したマルチプレクサを有する構成とした通信インタフェース。
【請求項７】
請求項３記載の通信インタフェースにおいて、各レーン回路は、クロックツリー信号を受信するよう構成したバッファと、インタフェース回路にクロックツリー信号を選択的に送信するよう構成したマルチプレクサを含む。
【請求項８】
通信インタフェースに使用するレーン回路において、第１クロックツリー信号を受信するよう構成した第１クロックツリー端子と、第２クロックツリー信号を受信するよう構成した第２クロックツリー端子と、選択信号を受信するよう構成した選択端子と、前記第１クロックツリー端子、前記第２クロックツリー端子、および前記選択端子に接続し、これら第１クロックツリー端子、第２クロックツリー端子のうち一方から送られるクロックツリー信号を選択するよう前記選択信号に応答するマルチプレクサとを備えたことを特徴とするレーン回路。
【請求項９】
請求項８記載のレーン回路において、さらに、出力クロックツリー端子を備えたレーン回路。
【請求項１０】
請求項９記載のレーン回路において、さらに、前記第１クロックツリー端子と前記マルチプレクサとの間に配置した２個のバッファと、および前記第１クロックツリー端子と出力クロックツリー端子との間に配置した２個のバッファと、を備えたレーン回路。
【請求項１１】
請求項１０記載のレーン回路において、２個のバッファのうち１個を共通バッファとしたレーン回路。
【請求項１２】
請求項１０記載の回路において、前記第２クロックツリー端子と前記マルチプレクサとの間にはバッファは配置しない構成としたレーン回路。
【請求項１３】
通信インタフェースに使用するためのクロックツリーを発生させる方法において、クロック基準信号を受信するステップと、クロックツリー信号および第１選択信号を発生するステップと、第１レーンで前記クロックツリー信号およびインタフェース回路へのクロック信号を選択するための前記第１選択信号を受信するステップと、前記クロックツリー信号を第２レーンに送信し、また第２選択信号を発生するステップと、第２レーンで前記クロックツリー信号およびインタフェース回路へのクロック信号を選択するための前記第２選択信号を受信するステップとを有する方法。
【請求項１４】
請求項１３記載の方法において、さらに、前記第１レーンで前記第１選択信号に基づいて、前記クロックツリー信号を選択するステップと、前記第２レーンで前記第２選択信号に基づいて、前記クロックツリー信号を選択するステップとを有する方法。
【請求項１５】
請求項１３記載の方法において、第３レーンでクロックツリー信号、およびインタフェース回路へのクロック信号を選択するための第３選択信号を受信するステップと、前記クロックツリー信号を第４レーンへ送信して、第４選択信号を発生するステップと、第４レーンで前記クロックツリー信号およびインタフェース回路へのクロック信号を選択するための第４選択信号を受信するステップとを有する方法。
【請求項１６】
請求項１５記載の方法において、前記第１選択信号および第３選択信号を同一信号とした方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、集積回路におけるシリアル通信インタフェースの一般的分野に関するものである。集積回路に多重レーン（伝送路）のインタフェースを組み込むことは、これらレーン（伝送路）間で生じるクロックのスキュー（ずれ）を最小化する上で有用である。
【背景技術】
【０００２】
シリアル通信インタフェースは、集積回路設計の分野でよく知られている。シリアルインタフェースの物理層（ＰＨＹ）は、一般的に、（１個のレーンあたり）１個の位相ロックループ（ＰＬＬ）、および多くのシリアル化‐デシリアル化（ＳｅｒＤｅｓ）ブロックを有する。ＰＬＬはクリーンな基準体（例えば水晶）から、高周波のクロックを発生する。このクロックを各ＳｅｒＤｅｓブロックに分配し、このＳｅｒＤｅｓブロックはクロックを使用して、受信するデータを回収および復元（デシリアライズ）し、また送出するデータをシリアライズして送信する。クロックの周波数は通常極めて高く、しばしば１ＧＨｚ以上になる。例えば、高速ＰＣＩエキスプレス規格の通信インタフェースは、レーン（伝送路）あたり２．５Ｇｂ/ｓのデータストリームを送信するために、２．５ＧＨｚのクロックを必要とする。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ＰＨＹ設計における問題の一つは、どのようにＰＬＬからＳｅｒＤｅｓブロックにクロックを分配するかということである。クロックのルーティング（経路指定）によって付加されるジッタはＰＨＹのデータ出力で見ることができるが、ほとんどの通信プロトコル仕様では多くのジッタを許容していない。従って、ＰＨＹインタフェースのためのクロック分配ネットワークを注意深く設計し構築することが重要である。
【０００４】
単一レーン（伝送路）ＰＨＹ内におけるクロック分配は問題ない。ＰＬＬおよびＳｅｒＤｅｓは極めて近接させて配置することができる。２レーン構成であっても、ＰＬＬは２個のＳｅｒＤｅｓブロック間に構成することができるため、相当シンプルである。
【０００５】
クロック分配およびジッタの問題は、２個以上のレーン（伝送路）を設計するときに生じがちである。集積回路における通信ポートが多くなればなるほど、設計者は２個以上、時には４個以上のレーンで物理層を構築することが要求される。例えば、高速ＰＣＩエキスプレスの仕様は３２個のレーンまで許容し、各レーンを２．５Ｇｂ/ｓで動作させ、またレーン間のスキューをできるだけ低く維持しなければならない。レーンの数がより多くなることは、クロックスキューを最小にしながらクロックを全てのレーンに分配することの困難さが増大する。
【０００６】
図２は、クロックツリーとして設計された従来型のＰＨＹインタフェースを示し、この従来型ＰＨＹインタフェースはクロック信号をレーン１２０ａ〜１２０ｄに連続的に分配している。ＰＬＬ１１０にとっての最適位置は、両側の２個のレーンにおける真ん中の位置である。問題は、どのようにして最も効率的よくかつクロックスキューを最小にして４個のＳｅｒＤｅｓレーンにクロックを分配するかということである。図２は、ＳｅｒＤｅｓレーンの一部として遅延ラインを生じ、各レーンに順次にクロックを伝播する従来型の解決策を示す。
【０００７】
この設計における問題点は、異なるレーン間でクロックスキューを生じるということである。ＳｅｒＤｅｓブロック１２０ｂ，１２０ｃは早期にクロックを受け取り、ＳｅｒＤｅｓブロック１２０ａ，１２０ｄはブロック１２０ｂ，１２０ｃ内のバッファで遅延され遅れたクロックを受け取る。このバッファでの遅延が、多くのアプリケーションにとって許容範囲を超えたクロックスキューを生ぜしめる。
【０００８】
必要なことは、レーン間のクロックスキューを最小にしつつ多重ＳｅｒＤｅｓレーンにクロック信号を分配する改善した技術である。
【０００９】
本発明は、レーン間のクロックスキューを最小にしつつ、１個またはそれ以上のレーンにクロック信号を分配するためにモジュール構成の技術を用いる。各レーンのモジュールを他のモジュールに接続し、複数のＳｅｒＤｅｓレーンを構成する。いくつかの例示的実施形態によって、本発明を説明する。
【００１０】
例示的な実施形態として、集積回路で使用する通信インタフェースは、クロック基準信号を受信しかつクロックツリー信号を発生するよう構成したクロック根元回路を有する。第１レーン回路は、クロック根元回路に接続し、またクロックツリー信号、および第１インタフェース回路へのクロック信号を選択するための選択信号を受信するように構成する。第２レーン回路は、第１レーン回路に接続し、またクロックツリー信号、および第２インタフェースの回路へのクロック信号を選択するための選択信号を受信するよう構成する。
【００１１】
ある実施形態では、各レーン回路は、クロックツリー信号を受信するよう構成したバッファ、およびクロックツリー信号をインタフェースの回路に選択的に送信するように構成したマルチプレクサを有するものとする。
【００１２】
本発明の利点は、クロックスキューの小さいモジュール構成とした通信インタフェースが得られる点である。その他の利点としては、本発明のモジュール構成のアプローチによって、設計者はわずかな構築ブロックだけで任意の数のＳｅｒＤｅｓレーンを構築できるようになる点である。その結果、クロックはカスケード接続できるクロックツリーを経て、レーン間のクロックスキューもほとんど無く、自動的に分配される。
【００１３】
本発明を、以下に、図面につき説明する。
【発明を実施するための最良の形態】
【００１４】
本発明を、特別な装置および実施形態につき説明する。当業者には、以下の説明が例示的なものであり、本発明を実施する最良の形態であることが理解できるであろう。
【００１５】
本発明の例示的態様の一つは、シリアル化‐デシリアル化（ＳｅｒＤｅｓ）インタフェースの物理層（ＰＨＹ）を、モジュール構成コンポーネントから構築することができる。このことは有利なことであり、これはすなわち、集積回路におけるＰＨＹインタフェースを設計するとき、短時間で信頼性のある構造にすることができるからである。また、一つの態様としては、モジュールを、集積回路のインタフェースを設計する際に使われるマクロコンポーネントとし、これにより、設計者はコンピュータ支援設計ツールを使用して集積回路を構築することができる。モジュール構成コンポーネントと共に、クロック分配はＰＨＹ設計の一部であり、そしてマクロの一部ともなり得る。
【００１６】
図２は、本発明の実施形態によるシリアルインタフェース構築のためのモジュール構成コンポーネントである。クロック分配根元（ルート）回路２１０は、位相ロックループ２１２と、クロック信号をレーン（伝送路）に分配するバッファ回路２１４，２１６とを有する。例示的なレーン２２０は、入力バッファ回路２２２と、クロック信号を分配するバッファ回路２２４，２２６とを有する。入力バッファ回路２２２は、本発明を構築する最良の実施形態を示すため例示的実施例に設けたものであり、十分な信号をバッファ回路２２４および２２６に確実に送信するようクロックをバッファリングするのに有用であるからである。本発明の別の実施形態では、適所にワイヤを使用することによりバッファ２２２なしで構築することができる。バッファ回路２２４は、ＳｅｒＤｅｓ回路２３０にクロック信号を伝送するマルチプレクサ２２８に接続する。動作にあたり、マルチプレクサは接地電位に応答して０値（論理レベル０）に近接する信号を送り、論理レベル１の電力（パワー）に応答して１値（論理レベル１）に近接する信号を送る。このコンポーネントは、順次に配置することによる縦列（カスケード）接続するよう設計しているため、カスケード列の各段に相当する数の入力および出力が存在し、このことについては以下に述べる。これら信号は、各コンポーネントに伝送する信号および端子につき説明する。
【００１７】
cascade_in１(２４０)は、クロック根元回路のバッファ２１４に対するカスケード入力である。
【００１８】
mclk_out１（２４２）は、クロック根元回路の左側レーンに対するマスタクロック出力である。
【００１９】
sclk_out１（２４４）は、クロック根元回路の左側に隣接するレーンに対する選択クロック出力である。
【００２０】
muxsel_out１（２４６）は、クロック根元回路の左側に隣接するレーンに対するマルチプレクサ選択信号出力である。
【００２１】
cascade_in１（２５０）は、クロック根元回路バッファ２１６に対するカスケード入力である。
【００２２】
mclk_out２（２５２）は、クロック根元回路の右側のレーンに対するマスタクロック出力である。
【００２３】
sclk_out２（２５４）は、クロック根元回路の右側に隣接するレーンに対する選択クロック出力である。
【００２４】
muxsel_out２（２５２）は、クロック根元回路の右側に隣接するレーンに対するマルチプレクサ選択信号出力である。
【００２５】
ref_in（２５８）は、基準クロック、例えば水晶に対する入力である。
【００２６】
cascade_in（２６０）は、隣接するレーンからの電力（パワー）を受け取るための入力、またはアース接続により終端する。
【００２７】
mclk_out信号（２６２）は、アース接続した、隣接レーンへの出力である。
【００２８】
sclk_out（２６４）は、隣接レーンにクロック信号を送信するための出力である。
【００２９】
muxsel_out（２６６）は、この例示的なレーン回路の左側に隣接するレーンに対するマルチプレクサ選択信号出力である。
【００３０】
cascade_out（２７０）は、この例示的なレーン回路の右側に隣接するレーンに対する電力（パワー）信号である。
【００３１】
mclk_in（２７２）は、クロック分配根元回路からの入力クロック信号である。
【００３２】
sclk_in（２７４）は、この例示的なレーンの右側に隣接するレーンからの入力クロック信号である。
【００３３】
muxsel_in（２７６）は、この例示的なレーンの右側からの入力マルチプレクサ選択信号である。
【００３４】
通信インタフェース（２７８）はこのレーンのための物理層（ＰＨＹ）通信インタフェースである。
【００３５】
図３Ａ〜３Ｄは、本発明の実施例によるモジュール構成コンポーネントを用いたシリアルインタフェースである。これらの実施形態はクロック分配ネットワークを示し、これら実施例において、レーンに送られるクロックは同一深度を有する、すなわち、クロックはレーンと同数のバッファに通過するよう駆動されて、各ＳｅｒＤｅｓ回路に達する。これによって回路へ送られるクロック間のクロックスキューがほとんどなくなり、スキュー（ずれ）量の公差が極めて小さい通信プロトコルとの整合性が促進される。
【実施例１】
【００３６】
図３Ａは、本発明の実施例による単一レーンのＳｅｒＤｅｓ回路を示す。クロック分配根元回路１１０をレーン２２０ａに接続し、このレーン２２０ａにクロック信号（mclk）およびＳｅｒＤｅｓ回路２３０ａに適切なクロック信号を送るのに必要な他の信号を供給する。クロック分配根元回路は、０値に近接するクロック信号入力を選択するためにマルチプレクサ入力に接地（アース）信号を供給する。レーン２２０も、cascade_in（２６０）入力に対する終端信号の接地電位入力を受信する。レーンの適切な終端によって、回路の適正動作を確実にし、また誘導雑音も減少する。
【実施例２】
【００３７】
図３Ｂは、本発明の実施例による単一レーンのＳｅｒＤｅｓ回路を示す。レーン２２０ａおよび２２０を互いに鏡像対称に接続する。クロック分配根元回路１１０をレーン２２０ａおよび２２０ｂに接続し、これらレーンにクロック信号（mclk）およびＳｅｒＤｅｓ回路２３０ａ，２３０ｂにそれぞれ適切なクロック信号を送るのに必要な他の信号を供給する。クロック分配根元回路は、０値に近接するクロック信号入力を選択するためにマルチプレクサ入力に接地信号を供給する。レーン２２０ａ，２２０ｂも、cascade_in（２６０）の入力に対する終端信号の接地電位入力を受信する。これらレーンの適切な終端により、回路の適正動作を確実にし、ロードされないバッファおよび電源に対するスパイク（瞬時過渡現象）が生ずるのを防止する。
【実施例３】
【００３８】
図３Ｃは、本発明の実施例による単一レーンのＳｅｒＤｅｓ回路を示す。クロック分配根元回路１１０を回路２２０ａ，２２０ｂに接続し、これらレーンにクロック信号（mclk）およびＳｅｒＤｅｓ回路２３０ａ，２３０ｂにそれぞれ適切なクロック信号を送るのに必要な他の信号を供給する。クロック分配根元回路は、０値に近接するクロック信号入力を選択するためにマルチプレクサ入力に接地電位信号を供給する。追加レーン２２０ｃは、muxsel_in（２７６）を含むレーン２２０ｂから信号を受信し、この信号は、マルチプレクサに対して１値に近接する適切なクロック信号を選択させる。レーン２２０ａ，２２０ｃも、cascade_in（２６０）の入力に対する終端信号の接地電位入力を受信する。レーン２２０ｂは、レーン２２０ｃから信号を受信し、この信号によりバッファ２２６を動作させ、sclk_in（２７４）にレーン２２０ｃのためのsclk_out（２６４）の信号を発生させる。これらレーンの適切な終端によって、回路を適切に動作させ、またロードされないバッファおよびの電源におけるスパイク（瞬時過渡現象）が発生するのを防止する。
【実施例４】
【００３９】
図３Ｄは、本発明の実施例による単一レーンのＳｅｒＤｅｓ回路を示す。この実施例は図３Ｃに示されたものと類似し、１個の追加レーンを有し、したがって４個のレーンを示す。
【実施例５】
【００４０】
場合によっては、４個以上のＳｅｒＤｅｓ回路を設けることが望ましいことがある。図４は、本発明の実施例によるモジュール構成コンポーネントを用いたシリアルインタフェースを示す。この実施例では、各レーンにそれぞれＳｅｒＤｅｓ回路４３２を追加し、合計で８個のＳｅｒＤｅｓ回路が存在する。当然、この実施例も、図３Ａ〜３Ｄの実施例またはその変更例に示したのと同様に構成し、望ましい数のＳｅｒＤｅｓ回路を実現する。さらに、１６個、３２個、またはそれ以上の数のＳｅｒＤｅｓ回路を持つ物理層（ＰＨＹ）を構成するよう、セルをさらに分割することも考えられる。
【００４１】
以上、図面につき説明したことから分かるように、本明細書に記載したクロック分配ネットワークは、全てのＳｅｒＤｅｓ回路に均等に分配されるようクロック信号を供給する。例示的な実施例に示したバッファ回路は、全てのレーンに対して等しい遅延を有するクロックツリーを供給する。レーンクロック間での唯一のスキューは、バッファの不整合およびルーティング（経路指定）によるスキューだが、このスキューは通常極めて小さい。したがって、ＳｅｒＤｅｓ回路のレーンは、互いにクロックスキューがほとんどない。
【００４２】
本発明は任意のシリアルインタフェースに使用できる。インタフェースが１個のレーンしかない場合でも、本発明は、２個またはそれ以上のインタフェースでクロックを共有することができ、したがって電力および占有面積を節約できる。
【００４３】
本発明を適用できるシリアルインタフェースの例としては、以下の規格がある。    すなわち、ＰＣＩエキスプレス、シリアル−ＡＴＡ、ＭＩＰＩ、ＵＳＢ、ＩＥＥＥ１３９４、ＸＡＵＩ、Ｈｙｐｅｒ Ｔｒａｎｓｐｏｒｔ、Ｒａｐｉｄ ＩＯ、Ｓｏｎｅｔ、イーサネット等である。本発明は非標準のまたは非公開のシリアルインタフェースにも使用できる。
【００４４】
本発明には多くの利点がある。本発明は、複数のレーン（伝送路）間のクロックスキューを確実に小さくできるクロック分配ツリーを生ずる。これによって、プロトコル仕様に基づいて回路との信頼性ある通信を促進する。本発明は、モジュール構成であり、集積回路のインタフェースを設計するとき、効率的な配置とルーティング（経路指定）を促進する。この結果は、本発明を用いた集積回路の製造者およびユーザーの双方に有益である。
【００４５】
実施例や最良の実施形態について説明したが、これら説明した実施例に対して、特許請求の範囲に定義される本発明の主題および精神の範囲内で変更および改変を加えることができる。
【図面の簡単な説明】
【００４６】
【図１】従来型のシリアルインタフェースを示す。
【図２】本発明の一実施形態によるシリアルインタフェースを構築するモジュール構成のコンポーネントを示す。
【図３Ａ】本発明の実施例によるモジュール構成のコンポーネントを用いたシリアルインタフェースを示す。
【図３Ｂ】本発明の実施例によるモジュール構成のコンポーネントを用いた他のシリアルインタフェースを示す。
【図３Ｃ】本発明の実施例によるモジュール構成のコンポーネントを用いた別のシリアルインタフェースを示す。
【図３Ｄ】本発明の実施例によるモジュール構成のコンポーネントを用いたさらに他のシリアルインタフェースを示す。
【図４】本発明の実施例によるモジュール構成のコンポーネントを用いたさらに別のシリアルインタフェースを示す。
【図１】
2009512052.tif 000003
【図２】
2009512052.tif 000004
【図３Ａ】
2009512052.tif 000005
【図３Ｂ】
2009512052.tif 000006
【図３Ｃ】
2009512052.tif 000007
【図３Ｄ】
2009512052.tif 000008
【図４】
2009512052.tif 000009
【国際調査報告】
2009512052.tif 000010
2009512052.tif 000011
2009512052.tif 000012