(57)【要約】【課題】ビット間スキューを補償するべく高性能ディジタルシステム内で高速並列相互接続を経由して自動スキュー除去同調および整列を実施するシステムに関し、より高い精度でより広い入力値範囲にわたり、かつ、より広い温度範囲にわたって動作可能な、より単純でより頑強なスキュー除去システムを実現する。【解決手段】自動スキュー除去同調および整列手順を実施するために、ＶＤＬを使用するのではなく、レジスタおよびマルチプレクサ等のディジタル素子を用いる。さらに、各相互接続上の信号の１〜４の展開を行う。このシステムは、スキュー除去制御機構（１３５）および複数のスキュー除去サブシステム（１９２，１９０）を含む。該スキュー除去制御機構は、各相互接続上のスキューを補正するのに必要とされる遅延の量を計算し、各相互接続の受信端にある各上記スキュー除去サブシステムに対して異なる（または適切な）遅延値を供給する。【選択図】図１
2006314117.tif 000002
【特許請求の範囲】
【請求項１】
ディジタルシステム用の高速並列相互接続の中で使用するための自動スキュー除去システムにおいて、各前記高速並列相互接続上でスキューを補正するための遅延制御信号を受信するべく適合された自動スキュー除去システムであって、
１ビット時間未満のスキューを補正するための複数のクロック再生サブシステムと、
各々対応する相互接続に結合され、１つのビット時間の整数倍のスキューをもつ該対応する相互接続上の信号が前記遅延制御信号に基づいて、その他の相互接続から受信されたその他のビットと整列させられるような形で、該対応する相互接続上の信号を展開し補正可能な、複数のリタイミング／スキュー除去サブシステムと、
を備える自動スキュー除去システム。
【請求項２】
各前記リタイミング／スキュー除去サブシステムが、
１ビット時間の整数倍だけ前記信号を遅延させ該信号を展開するためのリタイミングサブシステムと、
１ビット時間の２倍という整数倍だけ前記リタイミングサブシステムから受信した信号を遅延させ、該リタイミングサブシステムから受信した前記信号を展開するため、該リタイミングサブシステムに結合された２つの粗スキュー除去サブシステムと、
を備える請求項１に記載の自動スキュー除去システム。
【請求項３】
前記リタイミングサブシステムが
セレクタと、
最大２ビット時間の遅延を伴って、前記対応する相互接続上で前記信号の１〜２の展開を実施するために結合された複数のレジスタと、
前記レジスタに結合され、２つの展開された信号のうちの１つを選択可能なマルチプレクサであって、ここに、各展開された信号が、入力信号の２つの連続するビットを含み、２つの展開された信号の各々が、ゼロビット時間（０Ｔ）または１ビット時間（１Ｔ）離隔している、マルチプレクサと、
を備える請求項２に記載の自動スキュー除去システム。
【請求項４】
前記粗スキュー除去サブシステムが、
最大８ビット時間の遅延を伴って、前記リタイミングサブシステムから受信した前記信号の１〜２の展開を実施するべく結合された複数のレジスタと、
前記レジスタに結合され、４つの展開された信号のうちの１つを選択可能なマルチプレクサであって、ここに、各展開された信号が入力信号の４つの連続するビットを含み、４つの展開された信号の各々が、ゼロビット時間（０Ｔ）、２ビット時間（２Ｔ）、４ビット時間（４Ｔ）または６ビット時間（６Ｔ）離隔している、マルチプレクサと、
を備える請求項３に記載の自動スキュー除去システム。
【請求項５】
前記クロック再生サブシステムが、
第１のラッチまたは第２のラッチの中に前記対応する相互接続上の入力信号からの各入力ビットをラッチするためのインタリーブ回路と、
前記レジスタが入力信号から安定した入力値を捕捉するような形で、前記第１のラッチおよび前記第２のラッチ内にパルス信号を提供するための位相補間器と、
前記パルス信号を生成するためのクロックユニットと、
を備える請求項１に記載の自動スキュー除去システム。
【請求項６】
各並列相互接続の各々の上でスキューを補正するためにディジタルシステム用高速並列相互接続の中で使用するための自動スキュー除去システムであって、１ビット時間未満であるスキューについて補正された相互接続上の信号を受信するべく適合された自動スキュー除去システムにおいて、
各前記相互接続がその上の信号を整列させるのに必要とする遅延の量を計算するためのスキュー除去制御機構と、
各対応する相互接続に結合され、スキューを有する前記相互接続上の信号を、該信号がその他の相互接続から受信されたその他のビットと整列させられるような形で展開し補正可能な複数のスキュー除去サブシステムと、
を備えるシステム。
【請求項７】
各前記並列相互接続上のスキューを補正するためディジタルシステム用の高速並列相互接続内で使用するための自動スキュー除去システムにおいて、
各相互接続上の信号を整列させるのに各ラインが必要とする遅延の量を計算するためのスキュー除去制御機構と、
対応する相互接続上で１ビット時間未満のスキューを補正するための複数のクロック再生サブシステムと、
各々が、対応する相互接続上で前記スキュー除去制御機構および対応するクロック再生サブシステムに結合され、最大８ビット時間（８Ｔ）の１つのビット時間の整数倍のスキューをもつ該対応する相互接続上の信号が、その他の相互接続から受信されたその他のビットと整列させられるような形で、該対応する相互接続上の信号を展開し補正可能な複数のリタイミング／スキュー除去サブシステムと、
を備えるシステム。
【請求項８】
並列相互接続上で伝搬する信号上のスキューを自動補正するための方法であって１つの相互接続上の各信号が１ビット時間の整数倍のスキューを有する、方法において、
前記相互接続の各々についてスキューを補正するための遅延制御値を計算する段階と、
前記遅延制御値に基づいて前記信号の各々に対し１ビット時間の遅延の整数倍を提供する段階と、
前記信号の各々の速度を減少させるべく前記信号の各々を展開する段階と、
を含んでなるスキューの自動補正方法。
【請求項９】
並列相互接続上で伝搬する信号上のスキューを自動補正するための方法であって相互接続上の信号の各々が１つの遅延制御値を有する方法において、
各相互接続上で１ビット未満のスキューについて補正する段階、
前記遅延制御値に基づいて前記信号の各々に対し１ビット時間から８ビット時間（８Ｔ）までの遅延の整数倍を提供する段階と、
前記信号の各々の速度を減少させるべく前記信号の各々を展開する段階と、
を含んでなる方法。
【請求項１０】
並列相互接続上で伝搬する信号上のスキューを自動補正するための方法において、
各相互接続上で１ビット時間未満のスキューについて補正する段階、
前記相互接続の各々についてスキューを補正するための遅延制御値を計算する段階、
前記遅延制御値に基づいて前記信号の各々に対し１ビット時間から８ビット時間（８Ｔ）までの遅延の整数倍を提供する段階、および
前記信号の各々の速度を減少させるべく前記信号の各々を展開する段階と、
を備えるスキューの自動補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高性能マイクロプロセッサシステム、メモリシステムおよび入出力（「Ｉ／Ｏ」）システムを含む、ディジタルシステム用高速並列相互接続内で使用するための自動スキュー除去システムおよび方法に関する。
関連出願の相互参照
本出願の主題は「高速プレシオクロナス並列リンクを経由する自動初期化および同調」の名称で、１９９９年２月１２日に Richard L. Schober Jr. 等により出願された同時係属米国特許出願第０９／２４９，８２５号の内容に関連し、参考として、上記の出願の全てを本願発明の全体に亘って取り入れている。
【背景技術】
【０００２】
データ通信速度が高性能ディジタルシステムにおいて増大するにつれて、かつ、かかる高性能ディジタルシステムの構成要素を接続する例えば銅または光ケーブルまたはプリント回路板トレースといった信号ラインの長さが増大するにつれて、並列相互接続のため各信号ラインの受信端にデータが到着する時間のスキューは意義深いものとなる。各信号ライン上のスキューは、各ケーブル、コネクタまたはプリント回路板トレースの特性および長さの差の結果としてもたらされる。その上、スキューはデータ伝送速度が高くなるのにつれて一層ひどくなる。
【０００３】
高速並列相互接続上のビット間スキューの問題を解決するための従来のスキュー除去（ｄｅｓｋｅｗ）回路が存在している。しかしながら、従来のスキュー除去回路は、一般に、可変遅延ライン（「ＶＤＬ」）と呼ばれるアナログデバイスを使用する。ＶＤＬは、スキュー（ｓｋｅｗ）を有する１ビットデータ入力に対してある量の遅延を付加して、かかる１ビットデータ入力を並列信号ライン上の他のデータ入力ビットと整列させる。
なお本発明に関連する公知例としては下記のものがある。
【０００４】
【特許文献１】欧州特許出願公開第０８８４７３２号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のＶＤＬには数多くの問題点がある。まず第１に、広い入力範囲にわたり高い精度で動作できるＶＤＬを作ることは、困難でかつ費用が高くつくことである。動作範囲が広くなればなるほど、またＶＤＬの精度が良くなればなるほど、一般的にはバッファである遅延素子の所要数は大きくなる。これらのバッファは一定の空間を占有し、チップサイズ全体およびピン接続を増大させ、従って高価である。
【０００６】
第２に、線形に作動するＶＤＬを作り上げるのは困難である。ＶＤＬにおける線形性は望ましい特性である。例えばＶＤＬが１という入力値について２マイクロ秒の遅延を、また入力値を２として４マイクロ秒の遅延を生成するならば、そのＶＤＬは、入力値を３としたとき６マイクロ秒の遅延を生成するはずである。これに代わって、ＶＤＬが、３という入力値の場合に１０マイクロ秒の遅延を生成したならば、そのとき、スキューをもつ入力データラインに対し誤った量の遅延が付加され、並列入力データライン間の非整列が結果としてもたらされることになる。
【０００７】
第３に、ＶＤＬは温度安定性がない。例えば、低温条件下で動作するＶＤＬは、ある入力の場合に２マイクロ秒の遅延を出力し、高温条件下で動作している場合同じ入力で３マイクロ秒の遅延を出力する可能性がある。従って、ＶＤＬを含む従来のスキュー除去回路が温度の変動する環境内に設置された場合、ＶＤＬの性能は信頼性の低いものとなる。その結果、正しくない量の遅延がスキューをもつ１ビット入力に付加された状態となり、結果として、並列ライン上の信号の非整列がもたらされる。
【０００８】
並列データ入力ライン上のスキューを補正するべく遅延を付加することに加えて、従来のスキュー除去回路はまた「展開」（ｕｎｆｏｌｄｉｎｇ）という操作を実施することもできる。具体的に言うと、１〜４展開回路の場合、データ信号の４つの連続するビットが、１出力あたり１ビットの４ビット幅の出力信号に変換され、各出力ビットは入力速度の４分の１の速度をもつ。入力速度を低くし展開させることの目的は、ディジタルシステム内のコアロジック回路の設計をより容易にすることにある。一般に、このようなシステム内のコアロジック回路はきわめて複雑であることから、動作周波数を遅くすることで設計は容易になる。従来のスキュー除去回路は一般的に、順次遅延を付加し展開する操作を実行する。
【０００９】
以上のことから、（ｉ）高精度で広い入力範囲にわたって動作し、（ii）温度変動環境に適しており、かつ（iii)展開を行うような、ディジタルシステム用高速並列相互接続内で使用するための自動スキュー除去システムに対するニーズが存在する。
【課題を解決するための手段】
【００１０】
本発明は、ビット間スキューを補償するべく、高性能ディジタルシステム内で高速並列相互接続を経由して自動スキュー除去同調および整列を実施するシステムおよび方法を含んでいる。ＶＤＬを使用するのではなく、本発明はむしろレジスタおよびマルチプレクサといったようなディジタル素子を使用し、その結果、より高い精度でより広い入力値範囲にわたり、かつ、より広い温度範囲にわたって動作する能力をもつ、より単純でより頑強なスキュー除去システムが得られる。さらに、本発明は、各相互接続上の信号の１〜４回の展開を行う。
【００１１】
本発明によるシステムは、スキュー除去制御機構および複数のスキュー除去サブシステムを含むことが可能である。スキュー除去制御機構は、各相互接続上のスキューを補正するのに必要とされる遅延の量を計算し、各相互接続の受信端にある各スキュー除去サブシステムに対して異なる（または適切な）遅延値を供給する。
【００１２】
各スキュー除去サブシステムは、クロック再生サブシステム、リタイミングサブシステムおよび２つの粗スキュー除去サブシステムを含む。クロック再生サブシステムは、１つの相互接続上の１ビットの情報の伝送のための時間周期（「１ビット時間」または「Ｔ」）よりも小さいスキューを補正する。
リタイミングサブシステムおよび粗スキュー除去サブシステムは、０Ｔから７Ｔまでの１ビット時間Ｔの整数倍内で遅延を付加することによって、あらゆる残留スキューを集合的に補正する。リタイミングサブシステムおよび粗スキュー除去サブシステムは、集合的に、入力信号の１〜４展開を行う。
【００１３】
自動スキュー除去システムの最終出力は、各データ入力信号ラインの１〜４展開およびディジタルシステム内の並列相互接続上の全てのデータの整列である。
本明細書に記載されている特徴および利点はその全てを表しておらず、特に当業者ならば、図面、明細書およびクレームに鑑み数多くのさらなる特徴および利点が明らかになることだろう。その上、本明細書中で使用される用語は、主として判読性および説明を目的として選定されたものであり、進歩性のある内容を記載するためあるいは制限するために選択されたものでもない。
【発明の効果】
【００１４】
後の説明から明らかなように本発明によれば、（ｉ）高精度で広い入力範囲にわたって動作し、（ii）温度変動環境に適しており、かつ（iii)展開を行うような、ディジタルシステム用高速並列相互接続内で使用するための自動スキュー除去システムが実現される。
【発明を実施するための最良の形態】
【００１５】
本発明の好ましい実施形態について、各図を参照しながら述べるが、図中、同じ参照番号は同一のまたは機能的に類似した要素を表している。また図（図１〜図１０）中、各参照番号の左端の桁の数字は、その番号が最初に使用されている図の番号に対応している（ただし図１１以降は１ずつ減らした数字）。本発明は、ディジタルシステム用の高速並列相互接続内で使用するための自動スキュー除去のためのシステムおよび方法に関する。
【００１６】
図１は、本発明の１実施形態によるディジタルシステムのための高速並列相互接続において使用するための自動スキュー除去システム１００のブロック図である。ディジタルシステムとしては、例えば、高性能マイクロプロセッサ、メモリシステムまたはルータチップが考えられる。
自動スキュー除去システム１００には、複数のスキュー除去サブシステム１９２および１８０および、スキュー除去制御機構１３５が含まれている。１つのスキュー除去サブシステムが、各並列相互接続の受信端に存在している。本発明によると、自動スキュー除去システムは少なくとも２つのスキュー除去サブシステムを有するが、正確にはかかるスキュー除去サブシステムの数は、ディジタルシステム内の並列相互接続の数によって左右される。
【００１７】
スキュー除去サブシステムは、スキューを有する信号を受信する単一ビット入力端１４５ａと４つのビット出力端１６０ａ〜１６０ｄを有し、スキュー除去制御機構１３５に結合されている。入力端１４５ａ上の信号は、１ビット時間Ｔ毎に１ビットの情報を運ぶ。「１ビット時間」つまり「Ｔ」は、１秒間に相互接続上で伝送される情報ビット数をＮとして、１／Ｎ秒として定義づけられる。４ビット出力端１６０ａ〜１６０ｄ上の信号は、スキュー補正され展開される。換言すると、各出力は、他方の出力信号と適切に整列され、各出力の速度は、入力１４５ａとの関係において４分の１に減少されている。
【００１８】
図２は、スキュー除去サブシステムおよび自動スキュー除去システム全体の入力および出力値のタイミング図を例示している。入力ライン１４５ａ上に到達するデータについてのタイミング図は２００欄に示され、入力ライン１４５ｂに到着するデータについてのタイミング図は２１０欄に示されている。図２に示されているように、入力ライン１４５ｂに到達するデータ２１０は、入力ライン１４５ａに到達するデータ２００との関係においておよそ５Ｔだけ遅延されている。到着時間の差は、入力ライン１４５ａと１４５ｂとの間のスキューを表す。自動スキュー除去システム１００は、２０５ａ〜２０５ｄが２１５ａ〜２１５ｄと整列させられるようにスキューを補正し、それぞれ入力ライン１４５ａおよび１４５ｂ上の信号２００および２１０を展開し、かくして出力信号の速度は１／４に減速されることになる。
【００１９】
図１に例示されているように、スキュー除去サブシステム１９２は、クロック再生サブシステム１０５、およびリタイミング／スキュー除去サブシステム１１０を含む。同様に、スキュー除去サブシステム１８０は、クロック再生サブシステム１９０およびリタイミング／スキュー除去サブシステム１９１を含む。クロック再生サブシステムは、１ビット時間未満、例えば０．５Ｔであるスキューを補正する。クロック回路サブシステムはさらに、本特許出願と同じ譲受人に譲渡され本書に参考として取り入れている米国特許出願０９／０９３，０５６号の中で記述されている。
【００２０】
図３は、本発明によるリタイミング／スキュー除去サブシステムの一実施形態のブロック図を例示している。リタイミング／スキュー除去サブシステム１１０は、リタイミングサブシステム３０５と２つの粗スキュー除去サブシステム３１０および３１５を含んでいる。リタイミング／スキュー除去サブシステム１１０は、クロック再生サブシステム１０５およびスキュー除去制御機構１３５に結合されている。スキュー除去制御機構１３５によって計算された遅延制御値３２０，３２５および３３０に基づいて、リタイミング／スキュー除去サブシステムは、クロック回路サブシステム１０５および付随するスキュー除去サブシステム１１０が入力ライン１４５ａ上のあらゆるスキューを集合的に補正するように、最高７ビット時間遅延すなわち０Ｔ，１Ｔ，２Ｔ，３Ｔ，４Ｔ，５Ｔ，６Ｔまたは７Ｔまでの１ビット時間遅延の整数倍を入力信号３４５ａおよび３４５ｂに対して提供する。スキュー除去サブシステム１９２（図１）はまた、その出力端１６０ａ〜１６０ｄでかかる信号の１〜４展開をも実施する。
【００２１】
２０５ａ〜２０５ｄおよび２１５ａ〜２１５ｄに示されているタイミング図は、自動スキュー除去システムの出力を例示しており、これらの出力は、それぞれライン１４５ａおよび１４５ｂ上のスキューを補正したものである。
図３に例示されているように、リタイミングサブシステム３０５は、２つの入力端３４５ａおよび３４５ｂ、遅延制御値を受信するための遅延付加入力端３２０および２つの出力端３５０ａおよび３５０ｂを含んでなる。粗スキュー除去サブシステム３１０は、１つの入力端３５０ａ、遅延制御値（ビット）を受信するための２つの遅延制御入力端３２５および３３０、および２つの出力端３５５ａおよび３５５ｂを有する。リタイミングサブシステム３０５の各出力端は粗スキュー除去サブシステムの入力端に結合される。リタイミングサブシステム３０５は、遅延付加入力端３２０の値に応じて入力端３４５ａおよび３４５ｂ上の信号を０Ｔまたは１Ｔだけ遅延させ、入力端３４５ａおよび３４５ｂ上で信号の１〜２展開を実施する。
【００２２】
図４は、リタイミングサブシステム３０５の一実施形態を例示する。図４に示されているように、リタイミングサブシステム３０５は、レジスタ４１０，４１５，４２５および４３０、およびマルチプレクサ４２０を含む。レジスタは、かかるレジスタの出力が、０Ｔまたは１Ｔの遅延で２つの入力端３４５ａおよび３４５ｂの１〜２展開を実施するような形で結合されている。
【００２３】
図６は、リタイミングサブシステム３０５のためのタイミング図を例示している。入力信号６００は、１ビット時間Ｔ置きに１ビットの情報を伝送し、ここで入力信号６００はライン１４５ａ（図１）を介して受信される。レジスタ４１０，４１５および４３０の展開出力のタイミング図は、それぞれ６３５，６４５および６５０に示されている。６４５に示された信号は、６３５に示された信号との関係において２ビット時間２Ｔだけ遅延されている。
【００２４】
図４に示されたマルチプレクサ４２０は３つの入力端４５５，４６５および４７０，１ビット遅延付加制御を受けるための入力３２０および２つの出力端３５０ａおよび３５０ｂを有する。マルチプレクサ４２０はレジスタ４１０，４１５および４３０の出力端に結合される。図４および５に示されているように、スキュー除去制御機構１３５（図１）から受信しそれにより計算される遅延付加制御値３２０の値に基づき、マルチプレクサ４２０は、レジスタ４１０，４１５および４３０からの遅延され展開された出力の２つの連続したビットを選択する。マルチプレクサ４２０の考えられる２つの出力の間の唯一の差は、０Ｔまたは１Ｔの遅延である。手短かに言うと、リタイミングサブシステム３０５は、０Ｔまたは１Ｔだけ信号を遅延させ、入力信号の１〜２展開を実施する能力をもつ。
【００２５】
図７は、粗スキュー除去サブシステム３１０の一実施形態を例示している。粗スキュー除去サブシステム３１０は、レジスタ７０５，７１０，７１５，７２０，７２５および７３０とマルチプレクサ７３５を含んでいる。レジスタは、かかるレジスタの出力が、スキュー除去制御機構１３５からの遅延制御値３２５および３３０に応じて、０Ｔ，２Ｔ，４Ｔまたは６Ｔの遅延を伴って入力３５０ａの１〜２展開を実施するような形で結合される。
【００２６】
図９は、粗スキュー除去サブシステム３１０のためのタイミング図を例示している。入力信号９００は、２ビット時間２Ｔ毎に１つの情報ビットを送り出し、ここで入力信号９００はライン３５０ａを介して受信される。レジスタ７０５，７１５，７２０，７２５および７３０の展開された出力のタイミング図は、それぞれ９１５，９２５，９３０，９３５および９４０に示されている。９３５に示された信号は、信号９１５との関係において８ビット時間８Ｔだけ、また信号９２５との関係において４ビット時間４Ｔだけ遅延させられている。信号９４０は、信号９３０との関係において４ビット時間４Ｔだけ遅延させられている。
【００２７】
図７に示されているマルチプレクサ７３５は、５つの入力端７７０，７８０，７９０，７８５および７９５、２ビット遅延制御値３２５および３３０を受信するための入力端、および２つの出力端３５５ａおよび３５５ｂを有する。マルチプレクサ７３５は、レジスタ７０５，７１５，７２０，７２５および７３０の出力端に結合されている。図７および８に示されているように、スキュー除去制御機構１３５によって計算される遅延制御ビットの値３２５および３３０に基づいて、マルチプレクサ７３５は、展開された出力の２つの連続するビットを選定する。マルチプレクサ７３５の４つの可能な出力の間の唯一の差は、０Ｔ，２Ｔ，４Ｔまたは６Ｔの遅延である。
【００２８】
手短かに言うと、（リタイミングサブシステム３０５の出力端に結合された２つの粗スキュー除去サブシステム３１０および３１５を含む）リタイミング／スキュー除去サブシステム１１０は、入力信号を０Ｔ，１Ｔ，２Ｔ，３Ｔ，４Ｔ，５Ｔ，６Ｔまたは７Ｔだけ遅延させ、４つの出力ビット３５５ａ〜３５５ｂの各々が整列し入力信号１４５ａの速度の４分の１の伝送速度を有する状態で入力信号３４５ａおよび３４５ｂの１〜４展開を実施する能力をもつ。
【００２９】
各リタイミング／スキュー除去サブシステム１１０および１９１はスキュー除去制御機構１３５に結合されている。スキュー除去制御機構１３５は、各相互接続について３ビット遅延値を計算する。以下のチャート１に示す通り、スキュー除去制御機構からの最下位ビット（ＬＳＢ）は、リタイミング遅延付加ビット３２０としてリタイミングサブシステム３０５内に供給され、一方、最上位の２ビット（ＭＳＢ１およびＭＳＢ２）は、粗スキュー除去遅延付加ビット３２５および３３０として粗スキュー除去サブシステム３１０および３１５内に供給される。ビットＭＳＢ１，ＭＳＢ２およびＬＳＢの値に基づく付加された遅延の量は、以下のチャート１の第３欄に示されている。
【００３０】
【表１】
2006314117.tif 000003
【００３１】
これらの遅延値３２０，３２５および３３０は、各相互接続に一意的であり、リタイミング／スキュー除去サブシステム１１０が各並列相互接続上の異なるスキューを補償して各並列相互接続上の出力を整列させることを可能にする。
図１０は、スキュー除去制御機構１３５の機能的ブロック図を例示する。スキュー除去制御機構１３５は、セレクタ１０００、制御機構１０３５、４つの検出器１０１５，１０２０，１０２５および１０３０、および複数のレジスタ１０５０および１０５５を含み、レジスタの数は、並列相互接続の数によって左右される。
【００３２】
スキュー除去制御機構１３５は、任意の適切な制御ユニットからのイネーブル信号１０８５によりイネーブルされる。適切な１つの制御ユニットが、本特許出願と同じ譲受人に譲渡され本書に参考として取り入れている Richard L.Schober Jr.等により１９９９年２月１２日付で出願された「高速プレジオクロナス並列リンクを経由する自動初期化および同調」という名称の米国特許出願第０９／２４９，８２５号の中で開示されている。
【００３３】
セレクタ１０００は、ディジタルシステム内のスキュー除去サブシステム１９２および１８０の出力を受信する。図１０に例示されている通り、入力端１４５ａに結びつけられたスキュー除去サブシステム１９２の出力端１６０ａ〜１６０ｄおよび入力端１４５ｂと結びつけられたスキュー除去サブシステム１８０の出力端１６５ａ〜１６５ｄは、セレクタ１０００内に供給される。セレクタ１０００は、制御機構１０３５からの入力１０４０に基づいて１つのスキュー除去サブシステムの出力を選択する。
【００３４】
セレクタ１０００の出力１０７０ａ〜１０７０ｄは、全ての「１」値について検出する検出器１０１５および全ての「０」値について検出する検出器１０２０により受信される。
検出器１０１５および１０２０の出力１０７５ａおよび１０７５ｂはそれぞれ、制御機構が選択されたスキュー除去サブシステムに結びつけられた相互接続上の遅延を計算できるように、制御機構１０３５内に入力される。
【００３５】
検出器１０２５および１０３０は、ディジタルシステム内の各スキュー除去サブシステム、例えば１９２および１８０の出力端から直接入力を受信する。検出器１０２５は、全ての「１」値を検出し、検出器１０３０は全ての「０」値を検出する。検出器１０２５および１０３０の出力１０８０ａおよび１０８０ｂはそれぞれ、制御機構１０３５がディジタルシステム内の各並列入力相互接続１４５ａおよび１４５ｂ間の遅延を計算できるような形で、制御機構１０３５内に入力される。
【００３６】
制御機構１０３５は、それぞれ検出器１０１５，１０２０，１０２５および１０３０からの出力１０７５ａ，１０７５ｂ，１０８０ａおよび１０８０ｂに基づいて、スキューを補償し各並列相互接続上の出力を整列させるのに必要とされる各入力相互接続についての３ビット遅延値を決定する。制御機構１０３５により計算されたこれら３ビット遅延値は、レジスタ１０５０および１０５５内に供給され、レジスタ１０５０および１０５５はそれぞれスキュー除去サブシステム１９２および１８０に結合される。手短かに言うと、各レジスタについて３ビット遅延値、および各相互接続について１つのレジスタが存在する。
【００３７】
より具体的には、出力レジスタ１０５０の最下位ビット１０９０ｃは、入力１４５ａのためのリタイミングサブシステム３０５（図３）の遅延付加入力端３２０に結合され、一方、出力レジスタ１０５０のより高位の２つの有意ビット１０９０ａおよび１０９０ｂは、入力１４５ａのためのそれぞれ粗スキュー除去サブシステム３１０および３１５の遅延制御入力端３２５および３３０に結合される。同様にして、出力レジスタ１０５５の最下位ビット１０９５ｃは、入力１４５ｂのためのリタイミングサブシステム３０５（図３）の遅延付加入力端３２０に結合され、一方、出力レジスタ１０５５のより高位の２つの有意ビット１０９５ａおよび１０９５ｂは、入力１４５ｂのためのそれぞれ粗スキュー除去サブシステム３１０および３１５の遅延制御入力端３２５および３３０に結合される。
【００３８】
図１１は、図１０のスキュー除去制御機構１３５内の制御機構１０３５の機能的ブロック図である。制御機構１０３５は任意の適切な制御ユニットから受信した信号１０８５によりイネーブルとなる。上述のとおり、このような制御ユニットの１つが、本特許出願と同じ譲受人に譲渡され本書に参考として取り入れている「高速プレジオクロナス並列リンクを横断する自動初期化および同調」という名称の米国特許出願第０９／２４９，８２５号の中で開示されている。
【００３９】
フェーズ状態レジスタ１０８７は、任意の適切な制御ユニットからスキュー除去イネーブル信号１０８５を受信したことに応答して、フェーズ１同調１４１０（図１５）を開始するべく「フェーズ１開始」信号をトリガーする。フェーズ状態レジスタ１０８７はまた、選択段１０９１に対しフェーズ１同調１４１０またはフェーズ２同調１４１５手順を指示するため、制御信号１０８９を生成する。選択段１０９１は、次の目的のためセレクタ１０００（図１０）に対し制御信号１０４０を出力する。フェーズ１同調手順１４１０（図１６）においては、入力ラインはセレクタ１０００（図１０）を使用してフェーズ１ライン選択レジスタ１０９３ａ（図１１）により選択される。
【００４０】
フェーズ２同調手順１４１５（図１７）においては、入力ラインは、フェーズ２ライン選択レジスタ１０９３ｂによって選択される（図１１）。選択段１０９１は、フェーズ状態レジスタ１０８７からの信号１０８９に基づいてレジスタ１０９３ａまたは１０９３ｂからのセレクタ１０００（図１０）のための選択値の供給源を切換える。
【００４１】
フェーズ１状態レジスタ１０８８ａは、フェーズ１開始信号を受信し、フェーズ１ライン選択レジスタ１０９３ａ内への入力のための制御信号１０９２を生成する。フェーズ１ラインセレクタ１０９４ａは、フェーズ１ライン選択レジスタ１０９３ａ内に値が記憶されている１つの相互接続と、フェーズ１状態レジスタ１０８８ａからの遅延値を結びつける。好ましい実施形態においては、フェーズ１ラインセレクタ１０９４ａは、その制御値がフェーズ１ライン選択レジスタ１０９３ａの出力であるマルチプレクサである。
【００４２】
フェーズ１状態レジスタ１０８８ａはまた、遅延制御ビット３２０および３３０を提供するため、２つの最下位ビットの値を決定する（図３およびチャート１参照）。最下位ビットは、ビット３２０と対応し、次の最下位ビットはビット３３０と対応する。フェーズ１状態レジスタ１０８８ａは、それぞれ検出器１０１５および１０２０からの入力信号１０７５ａおよび１０７５ｂに基づいて上述の値の決定を行う（図１０参照）。
【００４３】
フェーズ１同調１４１０が完了したとき、フェーズ１状態レジスタは、フェーズ状態レジスタ１０８７内への入力のため「フェーズ１完了」信号を生成し、それに応答してフェーズ状態レジスタは、フェーズ２同調１４１５を開始するため「フェーズ２開始」信号を生成する。フェーズ２状態レジスタ１０８８ｂは、フェーズ２ライン選択レジスタ１０９３ｂ内への入力のため制御信号１０９８を生成する。フェーズ２ラインセレクタ１０９４ｂは、フェーズ２状態レジスタ１０８８ｂからの遅延値を、フェーズ２ライン選択レジスタ１０９３ｂ内に値が記憶されている１つの相互接続と結びつける。好ましい実施形態においては、フェーズ２ラインセレクタ１０９４ｂはマルチプレクサであり、その制御値はフェーズ２ライン選択レジスタ１０９３ｂの出力である。
【００４４】
フェーズ２ライン選択レジスタ１０９３ｂは、フェーズ２ラインセレクタ１０９４ｂがフェーズ２ライン選択レジスタ１０９３ｂからの「選択」信号に基づいてスキュー除去サブシステムの出力のうちの１つを選択することを可能にする。好ましい実施形態においては、フェーズ２ラインセレクタ１０９４ｂはマルチプレクサである。
【００４５】
フェーズ２状態レジスタ１０８８ｂはまた、遅延制御値３２５を提供するため最上位ビットの値も決定する（図３およびチャート１参照）。フェーズ２状態レジスタ１０８８ｂは、それぞれ検出器１０１５および１０２０からの入力信号１０７５ａおよび１０７５ｂに基づいて（図１０参照）およびそれぞれ検出器１０２５および１０３０からの入力信号１０８０ａおよび１０８０ｂ（図１０参照）から、上述の値の決定を行う。
【００４６】
フェーズ２同調１４１５が完了したとき、フェーズ２状態レジスタ１０８８ｂは、フェーズ状態レジスタ１０８７内への入力のため「フェーズ２完了」信号を生成し、それに応答してフェーズ状態レジスタは、本発明によるスキュー除去同調手順の完了を表示する「完了」信号を生成する。「完了」信号は、上述のとおり、任意の適切な制御ユニットに対して生成され得る。
【００４７】
図１２は、本発明による並列相互接続上を伝搬する信号上のスキューを自動的に補正するための方法の１実施形態のフローチャートを例示している。イネーブル信号１０８５を制御機構１０３５が受信したときに起こる動作の開始１１０５で、スキュー除去制御機構１３５はスキュー除去同調１１１５を開始する。
スキュー除去同調の間、スキュー除去制御機構１３５は、各並列相互接続上のスキューについて補正するべく各相互接続のための適切な遅延値を計算する。一旦図１５に飛ぶと、各相互接続のためのスキュー除去同調が、既知のスキュー除去初期化パターン１４０５を受信し、フェーズ１同調１４１０およびフェーズ２同調１４１５を実施するフェーズを含んでいることがわかる。１実施形態においては、スキュー除去初期化パターンは１１１１  １１１１  ００００である。
【００４８】
基本的に、フェーズ１同調１４１０には、個々の各相互接続上のスキューの量を決定し、スキュー除去サブシステムの４つの出力の各々を整列させることを含み、フェーズ２同調１４１５には、ディジタルシステム内の並列相互接続の間または中の異なるスキュー量を補正するべく各相互接続に付加すべき遅延量を決定することを含んでいる。フェーズ１同調およびフェーズ２同調を実施するために、検出器１０１５，１０２０，１０２５および１０３０は、既知のスキュー除去初期化パターンをサーチする。観察されたスキュー量に基づいて、自動スキュー除去システム１００は、全ての出力が整列状態になるよう、各相互接続上の情報ビットを組み立てる（すなわち、各相互接続上の信号に対して遅延を付加する）。
【００４９】
図１６は、フェーズ１同調１４１０のための方法の１実施形態のフローチャートを例示している。フェーズ１同調の間、セレクタ１０００は、ディジタルシステム内でそれぞれ相互接続１４５ａまたは１４５ｂのうちの１つのものの出力１６０ａ−１６０ｄまたは１６５ａ−１６５ｄを選択する（１５０５）。スキュー除去制御機構１３５は次に検出器１０１５を用いて、選択された入力ラインの出力１０７０ａ〜１０７０ｄが全て「１」の値を有するか否かを決定する（１５１０）。出力１０７０ａ〜１０７０ｄが全て「１」の値を有していない場合、制御機構１０３５は、検出器１０１５からの全ての「１」値を待ち続ける（１５１０）。しかしながら、選択されたラインの出力１０７０ａ〜１０７０ｂが全て「１」の値を有する場合には、スキュー除去制御機構１３５は、選択された相互接続上で伝送された次の情報ビットの出力１０７０ａ〜１０７０ｄが全て「１」の値を有するか否かを、検出器１０１５を用いて決定する（１５１５）。
【００５０】
出力１０７０ａ〜１０７０ｄがまさに全て「１」の値を有する場合、制御機構１０３５は、「全ての値が１ではない」条件を待ち続ける。換言すると、制御機構１０３５は、検出器１０１５からの出力信号が消えるまで待ち続ける。しかしながら、出力１０７０ａ〜１０７０ｄが全て「１」の値をもたない場合、スキュー除去制御機構１３５は、検出器１０２０を使用して、選択された相互接続上で伝送された次の情報ビットの出力１０７０ａ〜１０７０ｄが全て「０」値を有するか否かを決定する（１５２０）。
【００５１】
出力１０７０ａ〜１０７０ｄが全て「０」値を有しない場合、遅延制御値は１だけ増分された状態となる（１５２５）（すなわち、選択された相互接続上の現遅延値が０Ｔである場合、このとき現遅延値は１Ｔとなり、そうでなければ、現遅延値が１Ｔであるならば、このとき現遅延値は２Ｔとなる等々…）。このとき、スキュー除去制御機構１３５は、遅延させられた信号についてステップ１５１０，１５１５および１５２０を繰り返す。しかしながら、出力１０７０ａ〜１０７０ｄがまさに全て「０」値を有する場合、選択された相互接続のための同調は完了し、セレクタ１０００は、次の相互接続を選択し（１５３０）、ディジタルシステム内にもう相互接続が無くなるまで（１５３５）、１５１０，１５１５，１５２０，１５２５，１５３０および１５３５で手順を繰り返し、無くなった時点でフェーズ１同調は完了する（１５４０）。
【００５２】
図１７は、フェーズ２同調１４１５の１実施形態の流れ図を例示している。フェーズ２同調の開始時点１６００で、セレクタ１０００は、それぞれ相互接続１４５ａまたは１４５ｂの出力１６０ａ〜１６０ｄまたは１６５ａ〜１６５ｄを選択する（１６０２）。スキュー除去制御機構１３５は、ディジタルシステム内の各スキュー除去サブシステムの全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄが全て「１」値を有するか否かを決定する（１６０５）ため、検出器１０２５を用いる。全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄが全て「１」の値を有していない場合、制御機構１０３５は、（ステップ１６０５で示されているように）検出器１０２５から検出される全「１」を待ち続ける。しかしながら、各スキュー除去サブシステムの全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄが全て「１」の値を有する場合、スキュー除去制御機構１３５は、検出器１０２５を用いて、並列相互接続上で伝送される次の情報ビットの全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄが全て「１」の値を有するか否かを決定する。
【００５３】
全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄがまさに全て「１」の値を有する場合、制御機構１０３５は、「全ての値が１でない」条件を待ち続ける。換言すると、制御機構１０３５は、検出器１０２５からの出力信号が消えるまで待ち続ける。しかしながら、各スキュー除去サブシステムの全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄが全て「１」の値をもたない場合、スキュー除去制御機構１３５は次に、検出器１０３０を用いて、並列相互接続上で伝送される次の情報ビットの全ての出力１６０ａ〜１６０ｄおよび１６５ａ〜１６５ｄが全て「０」を有するか否かを決定する。
【００５４】
ステップ１６１５では、検出器１０３０が「全ゼロ」条件を検出しなかった場合、制御機構１０３５は次に検出器１０１５および１０２０の出力を見る（すなわちそれぞれ信号ライン１０７５ａおよび１０７５ｂ）。ステップ１６２０で、「００００」が検出器１０２０によって検出された場合には、遅延制御３ビットのうち最上位のビットは「１」にセットされ（１６２５）、このことはすなわち、４Ｔ遅延が相互接続に付加されることを意味している（例えば、０Ｔ遅延値は４Ｔ遅延値になり；１Ｔ遅延値は５Ｔ遅延値になり；２Ｔ遅延値は６Ｔ遅延値になり；３Ｔ遅延値は７Ｔ遅延値になる等々…）。
【００５５】
ステップ１６２０で、「１１１１」が検出器１０１５により検出された場合には、ステップ１６０２で選択された相互接続（ライン）はすでにその他の並列相互接続と整列状態にあることから、遅延制御は変更されない。このとき、セレクタ１０００は、次の相互接続を選択し（１６３０）、ステップ１６０５〜１６３０は、全ての他の並列相互接続と次の相互接続を整列させるべく反復される。
【００５６】
ステップ１６１５で、検出器１０３０が全ゼロ（「００００…０」）を検出した場合、フェーズ２同調は終了させられる（１６３５）。
図１２に戻ると、スキュー除去同調１１１５の完了後、自動スキュー除去システム１００が入力ライン１４５ａおよび１４５ｂ上で１ビット信号を受信する（１１２０）ことがわかる。クロック回復サブシステム１０５および１９０は、並列相互接続１４５ａおよび１４５ｂ上で１ビット時間Ｔよりも小さいすべてのスキューを補正する（１１２５）。
【００５７】
図１３にさらに詳しく示されているように、リタイミングサブシステム３０５は、（ｉ）スキュー除去制御機構１３５により計算された１ビット遅延付加３２０の値に基づき、０Ｔまたは１Ｔの信号に対し遅延を付加し（１２１０）、（ii) 信号の１〜２展開を実施し（１２１５）、(iii) 遅延され展開された信号の中から２つの連続するビットを選択する（１２２０）。
【００５８】
図１４に示されているように、粗スキュー除去サブシステム１１０および１９１はこのとき、スキュー除去制御機構１３５により計算された２ビット遅延制御３２５および３３０の値に基づき、０Ｔ，２Ｔ，４Ｔおよび６Ｔの量でリタイミングサブシステムから受信した信号３２０に対しさらなる遅延を付加する（１３１０）。さらに、粗スキュー除去制御機構１１０〜１９１は、受信信号の１〜２展開を実施し（１３１５）、遅延され展開された信号の中から２つの連続するビットを選択する（１３２０）。
【００５９】
かくして、自動スキュー除去システムによって実施される上述の方法の最終結果は、ディジタルシステム内の全ての並列相互接続上の全ての出力端が整列状態となり各出力端が対応する入力信号の伝送速度の４分の１の伝送速度をもつような形でスキュー補正された、各相互接続上の信号の４ビット展開である。
本発明は、好ましい一実施形態および複数の変形実施形態を基準にして特に示され記述されてきたが、当業者であれば、本発明の精神および範囲から逸脱することなく形態および細部のさまざまな変更を加えることが可能であることが理解できるだろう。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施形態による自動スキュー除去システムのブロック図である。
【図２】本発明による自動スキュー除去システムのためのタイミング図を例示している。
【図３】本発明によるタイミング変更／スキュー除去サブシステムのブロック図である。
【図４】本発明によるタイミング変更サブシステムの一実施形態の概略図である。
【図５】タイミング変更サブシステムの一実施形態に収納されたマルチプレクサのための入出力テーブルである。
【図６】タイミング変更サブシステムのためのタイミング図である。
【図７】本発明による粗スキュー除去サブシステムの一実施形態の概略図である。
【図８】粗スキュー除去サブシステムの一実施形態の中に収められたマルチプレクサのための入出力テーブルを例示する図である。
【図９】粗スキュー除去サブシステムのためのタイミング図を例示している。
【図１０】本発明の一実施形態によるスキュー除去制御機構のブロック図である。
【図１１】各並列入力相互接続の間または中の遅延を計算するための制御機構のブロック図である。
【図１２】単一のスキュー除去サブシステムのための本発明の１つの動作方法を例示するフローチャートである。
【図１３】リタイミングサブシステムの１つの動作方法を例示するフローチャートである。
【図１４】粗スキュー除去サブシステムの１つの動作方法を例示するフローチャートである。
【図１５】スキュー除去制御機構の１つの動作方法を例示するフローチャートである。
【図１６】スキュー除去制御機構のフェーズ１の１つの動作方法を例示するフローチャートである。
【図１７】スキュー除去制御機構のフェーズ２の１つの動作方法を例示するフローチャートである。
【符号の説明】
【００６１】
１００    自動スキュー除去システム
１０５，１９０    クロック再生サブシステム
１１０，１９１    リタイミング／スキュー除去サブシステム
１３５    スキュー除去制御機構
１４５ａ，１４５ｂ    入力ライン
１６０ａ〜１６０ｄ    出力ライン
１８０，１９２    スキュー除去サブシステム
３０５    リタイミングサブシステム
３１０，３１５    粗スキュー除去サブシステム
３４５ａ，３４５ｂ    入力信号
４１０，４１５，４２５，４３０    レジスタ
４２０    マルチプレクサ
７０５，７１０，７１５，７２０，７２５，７３０    レジスタ
７３５    マルチプレクサ
１０００    セレクタ
１０１５，１０２０，１０２５，１０３０    検出器
１０３５    制御機構
１０５０，１０５５    レジスタ
１０８７    フェーズ状態レジスタ
１０８８ａ    フェーズ１状態レジスタ
１０８８ｂ    フェーズ２状態レジスタ
１０９１    選択段
１０９３ａ，１０９３ｂ    ライン選択レジスタ
１０９４ｂ    ラインセレクタ
【図１】
2006314117.tif 000004
【図２】
2006314117.tif 000005
【図３】
2006314117.tif 000006
【図４】
2006314117.tif 000007
【図５】
2006314117.tif 000008
【図６】
2006314117.tif 000009
【図７】
2006314117.tif 000010
【図８】
2006314117.tif 000011
【図９】
2006314117.tif 000012
【図１０】
2006314117.tif 000013
【図１１】
2006314117.tif 000014
【図１２】
2006314117.tif 000015
【図１３】
2006314117.tif 000016
【図１４】
2006314117.tif 000017
【図１５】
2006314117.tif 000018
【図１６】
2006314117.tif 000019
【図１７】
2006314117.tif 000020
【手続補正書】
【提出日】平成18年7月28日(2006.7.28)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
並列相互接続上で伝搬する信号上のスキューを自動補正する方法であって、
前記並列相互接続の各々に生じるスキューを補正する遅延制御値を計算する段階と、
前記並列相互接続上で生じる１ビット時間未満のスキューを補正する段階と、
前記１ビット時間未満のスキューが補正された信号に残るスキューを補正するために、対応する遅延制御値に基づいて、各並列相互接続上の信号の各々に対し、１ビット時間の整数倍の遅延値を提供する段階と、
前記１ビット時間未満のスキューが補正された信号の速度を減少させるべく、前記信号を展開する段階と、を有し、
前記の遅延制御値を計算する段階が、さらに
遅延除去イネーブル信号を受信する段階と、
各並列相互接続上のスキューを補正するのに要する遅延量を決定すべく、スキュー除去初期化パターンを前記並列相互接続の各々に送出する段階と、
前記スキュー除去初期化パターンに応答してフェーズ１同調を実施する段階と、
前記並列相互接続間のスキューを補正するのに要する遅延量を決定すべく、フェーズ２同調を実施する段階と、
その結果として決定された遅延値を記憶する段階と、
同調完了信号を送出する段階と、を含む方法。
【請求項２】
前記のフェーズ１同調を実施する段階が、
（ａ）フェーズ１同調開始信号を受信する段階と、
（ｂ）スキュー除去初期化パターンを受信する段階と、
（ｃ）前記並列相互接続のうち１つの出力を選択する段階と、
（ｄ）前記の選択された並列相互接続の出力内における前記スキュー除去初期化パターンの出現をサーチする段階と、
（ｅ）前記選択された並列相互接続上の遅延量を測定する段階と、
（ｆ）前記遅延量を記録する段階と、
（ｇ）上記の段階（ｃ）〜（ｆ）を、残りの並列相互接続について繰り返す段階と、
（ｈ）フェーズ１同調終了信号を生成する段階と、からなる請求項１に記載の方法。
【請求項３】
前記のフェーズ２同調を実施する段階が、
（ａ）フェーズ２同調開始信号を受信する段階と、
（ｂ）スキュー除去初期化パターンを受信する段階と、
（ｃ）前記並列相互接続のうち１つの出力を選択する段階と、
（ｄ）前記選択された並列相互接続の出力内における前記スキュー除去初期化パターンの出現をサーチする段階と、
（ｅ）前記選択された並列相互接続の出力と、他の全並列相互接続の各出力との整列のために要する遅延量を測定する段階と、
（ｆ）前記遅延量を記録する段階と、
（ｇ）上記の段階（ｃ）〜（ｆ）を、残りの並列相互接続について繰り返す段階と、
（ｈ）フェーズ２同調終了信号を生成する段階と、からなる請求項１に記載の方法。
【請求項４】
前記１ビット時間の整数倍の遅延を提供する段階が、
前記信号に対し、０ビット時間または１ビット時間の遅延を付加する段階と、
前記遅延が付加された信号の中から２つの連続するビットを選択する段階と、
上記遅延が付加された信号に対し、更に０ビット時間、２ビット時間、４ビット時間および６ビット時間の遅延を付加する段階と、
前記さらなる遅延が付加された信号の中から２つの連続するビットを選択する段階と、からなる請求項１に記載の方法。