(57)【特許請求の範囲】
【請求項１】
ＵＳＢハブのリピータ回路における再クロッキングエラーに起因する、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減する方法であって、当該ＵＳＢハブに、当該ＵＳＢデバイスが接続されるものであり、当該方法が、
前記ＵＳＢハブを使用して、或るデータストリームビットレートを有するＵＳＢデータストリームを観測する(observing)ステップと、
前記ＵＳＢハブが前記ＵＳＢデータストリームの中の周期信号構造(periodic signal structure)を復号する(decoding)ステップと、
前記ＵＳＢハブが、前記周期信号構造を復号したことに応答してイベント信号を生成するステップと、
前記ＵＳＢハブが、前記ＵＳＢハブの前記ローカルクロックの周波数を前記周期イベント信号にロックするステップとを備え、
前記ＵＳＢハブの前記ローカルクロックは、前記ＵＳＢハブの前記リピータ回路のためのクロック制御源(clocking source)となるように適合され(adapted to)、前記ローカルクロックは、前記データストリームビットレートの周波数の実質的に整数倍(integer multiple)となるように制御される周波数を有し、又は、前記ローカルクロック周波数と前記データストリームビットレート周波数の間のビート周波数が、ローパスフィルタのカットオフ周波数より大きいようにされる、
方法。
【請求項２】
前記ＵＳＢハブの前記ローカルクロックの前記周波数は、前記ＵＳＢビットストリームデータレートの実質的に整数倍に同期され、前記ＵＳＢデータストリームと前記ＵＳＢハブの前記ローカルクロックの間に一定の位相関係が存在する請求項１に記載の方法。
【請求項３】
前記ＵＳＢハブの前記ローカルクロックの前記周波数は、前記ＵＳＢビットストリームデータレートの実質的に半整数倍(half integer multiple)に同期され、前記周期信号構造のそれぞれの後続の(subsequent)構造(structure)の受信時に、前記ＵＳＢデータストリームと前記ＵＳＢハブの前記ローカルクロックの間に急速に(rapidly)変化する位相関係が存在する請求項１に記載の方法。
【請求項４】
前記ＵＳＢハブの前記ローカルクロックが統計的技術(statistical techniques)または電気フィルタを使用して、前記ＵＳＢハブの前記ローカルクロックの前記ジッタを低減するステップを備える請求項１に記載の方法。
【請求項５】
請求項１に記載の方法であって、更に、
前記ＵＳＢネットワーク内の前記ＵＳＢハブの層を特定するステップと、
或る事前定義されたレベルの範囲内に、前記ＵＳＢハブにすぐ上流のＵＳＢデータストリームのデータビットレートの周波数を整合させることを回避するように、前記ＵＳＢネットワーク内の前記ＵＳＢハブの前記層(layer)に依存して、前記ＵＳＢハブのローカルクロックの前記周波数を設定するステップとを備える方法。
【請求項６】
前記事前定義されたレベルは、１ｋＨｚであるか、又は、１００ｋＨｚである、請求項５に記載の方法。
【請求項７】
前記ＵＳＢハブの前記層を前記特定するステップは、
ｉ）前記ＵＳＢハブのルーティング文字列アドレスのクエリ(querying)を行うステップと、
ｉｉ）前記ＵＳＢハブの物理接続層についての情報を求めて、前記ＵＳＢネットワークが接続されたＵＳＢホストコントローラのオペレーティングシステムにソフトウェアを使用してクエリを行うステップと、
ｉｉｉ）前記ＵＳＢハブの上流ポートで前記ＵＳＢデータストリームの周波数を測定するステップとを備える請求項５に記載の方法。
【請求項８】
ＵＳＢハブ回路内の再クロッキングエラーに起因する、同期されたＵＳＢアーキテクチャ内のＵＳＢデバイスのローカルクロックにおけるジッタを低減するための装置であって、
当該ＵＳＢハブ回路に、前記ＵＳＢデバイスが接続されるものであり、当該装置が、
ローカルクロックと、上流ポートと、複数の下流ポートと、前記上流ポート経由でホストコントローラに向けて通信するため、および前記複数の下流ポート経由で複数のＵＳＢデバイスに向けて通信するための回路とを有するＵＳＢハブ回路と、
或るビットレートを有するＵＳＢデータストリームを観測するように適合されたモニタと、
前記ＵＳＢデータストリームの中の周期データ構造を復号するように適合された復号器と、
前記周期データ構造を復号したことに応答してイベント信号を生成するように適合された信号ジェネレータと、
前記イベント信号の周波数に対して前記ＵＳＢハブ回路の前記ローカルクロックの周波数をロックするように適合された回路とを備え、
前記ＵＳＢハブ回路の前記ローカルクロックは、前記ＵＳＢハブ回路のためのクロック制御源となるように適合され、前記ローカルクロックが、前記ＵＳＢデータストリームビットレートの周波数の実質的に整数倍となるように制御される周波数を有し、
又は、前記ローカルクロック周波数と前記データストリームビットレート周波数の間のビート周波数が、ローパスフィルタのカットオフ周波数より大きいようにされる、
装置。
【請求項９】
前記ＵＳＢハブ回路の前記ローカルクロックの前記周波数は、前記ＵＳＢビットストリームデータレートの実質的に整数倍に同期され、前記ＵＳＢデータストリームと前記ＵＳＢハブ回路の前記ローカルクロックの間に一定の位相関係が存在する請求項８に記載の装置。
【請求項１０】
前記ＵＳＢハブ回路の前記ローカルクロックの前記周波数は、前記ＵＳＢビットストリームデータレートの実質的に半整数倍に同期され、前記周期信号構造のそれぞれの後続の構造の受信時に、前記ＵＳＢデータストリームと前記ＵＳＢハブ回路の前記ローカルクロックの間に急速に変化する位相関係が存在する請求項８に記載の装置。
【請求項１１】
ＵＳＢハブ又はＵＳＢハブ回路における再クロッキングエラーに起因する、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減するためのシステムであって、当該ＵＳＢハブ又はＵＳＢハブ回路に当該ＵＳＢデバイスが接続されるものであり、当該システムが、
或るビットレートを有するＵＳＢデータストリームを観測するように適合されたモニタと、
前記ＵＳＢデータストリームの中の周期データ構造を復号するように適合された復号器と、
前記周期データ構造を復号したことに応答してイベント信号を生成するように適合された信号ジェネレータと、
ローカルクロックを有するＵＳＢハブまたはＵＳＢハブ回路と、
前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックの周波数と、前記ＵＳＢデータストリームの周波数を比較して、その結果、前記ビットレートを算出する回路と、
前記イベント信号の周波数に対して前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックの周波数をロックするように適合された回路とを備え、
前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックは、前記ＵＳＢハブのためのクロック制御源(clocking source)となるように適合され、前記ローカルクロックは、前記ＵＳＢデータストリームの前記ビットレートの周波数の実質的に整数倍になるように制御される周波数を有し、又は、前記ローカルクロック周波数と前記データストリームビットレート周波数の間のビート周波数が、ローパスフィルタのカットオフ周波数より大きいようにされる、
システム。
【請求項１２】
前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックの前記周波数は、前記ビットレートの実質的に整数倍に同期され、前記ＵＳＢデータストリームと、前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックの間に一定の位相関係が存在する請求項１１に記載のシステム。
【請求項１３】
前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックの前記周波数は、前記ビットレートの実質的に半整数倍に同期され、前記周期信号構造のそれぞれの後続の(subsequent)構造の受信時に、前記ＵＳＢデータストリームと、前記ＵＳＢハブまたは前記ＵＳＢハブ回路の前記ローカルクロックの間に急速に(rapidly)変化する位相関係が存在する請求項１２に記載のシステム。
【請求項１４】
ＵＳＢハブのリピータ回路における再クロッキングエラーに起因する、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減する方法であって、当該ＵＳＢハブに、当該ＵＳＢデバイスが接続されるものであり、当該方法が，
前記ＵＳＢハブの上流に接続されたＵＳＢホストからのＵＳＢデータストリームのビットレートに関して前記ローカルクロックの位相をランダム化する制御信号を利用することによって、前記ＵＳＢハブの前記ローカルクロックの周波数を制御するステップを備え、
前記ローカルクロックは、前記ＵＳＢハブの前記リピータ回路のためのクロック制御源となるように適合される方法。
【請求項１５】
前記ＵＳＢハブの前記ローカルクロックの前記周波数を、前記上流ＵＳＢデータストリームビットレートの周波数である中心周波数の辺りに制御するステップを含む請求項１４に記載の方法。
【請求項１６】
前記ローカルクロックの前記周波数が、正弦波形、鋸歯状波形、または三角波形の制御信号を利用することによって制御される、請求項１４に記載の方法。
【請求項１７】
前記ローカルクロックの前記周波数が、雑音を制御信号として利用することによって制御される、請求項１４に記載の方法。
【請求項１８】
同期されたＵＳＢアーキテクチャにおいてクロック制御ジッタを低減するための装置であって、
ローカルクロックと、
クロックコントローラまたはクロックコントローラ回路とを備え、
前記クロックコントローラまたは前記クロックコントローラ回路は、上流ＵＳＢデータストリームのビットレートに関してローカルクロックの位相をランダム化する制御信号を利用することによって前記ローカルクロックを制御するように適合される装置。
【請求項１９】
前記クロックコントローラ、又は、クロックコントローラ回路が、
前記クロックの供給電圧を調整することによって、前記ローカルクロックを制御する、
請求項１８に記載の装置。
【請求項２０】
請求項１８に記載の装置であって、更に、
フィードバック制御によって前記ローカルクロックの前記周波数を安定させるように適合されたフィードバック安定器と、
を備え、
前記クロックコントローラまたは前記クロックコントローラ回路は、前記ローカルクロックの前記フィードバック安定器に外乱(perturbation)信号を導入することによって前記ローカルクロックを制御するように適合される装置。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、出願されたとおりの内容の全体が参照により本明細書に組み込まれている、２００９年５月２０日に出願した米国特許出願第６１／１７９９０４号に基づくとともに、第６１／１７９９０４号の出願日の利益を主張する。
【０００２】
本発明は、ローカル環境において、または分散スキームにおいて基本的に任意の度合いに同期される、試験−測定機器、計測インタフェース、およびプロセス制御機器のクロック、データ獲得、自動化、および制御を提供する際に特に使用されるが、そのような使用に専用ではない、ＵＳＢ（ユニバーサルシリアルバス）アーキテクチャの改訂版３（またはＵＳＢ３．０）に基づく接続性を、同期−タイミングシステムに提供するための方法および装置に関する。
【背景技術】
【０００３】
改訂版２．０までを含むＵＳＢ規格は、オープンアーキテクチャにおける様々なベンダからのデバイスの相互運用性を円滑にすることを目的としていた。ＵＳＢ２．０は、差分シグナリング（つまり、２つの線が情報を転送する）を、それらの２つの線の信号レベルの差の形態で使用して、符号化される。ＵＳＢ２．０規格は、ポータブル環境、デスクトップ環境、およびホーム環境にわたる、ＰＣアーキテクチャの拡張として意図されている。
【０００４】
しかし、ＵＳＢは、ユーザに焦点が合わされており、したがって、ＵＳＢ２．０規格は、任意の高い精度にデバイスを同期するための機構を欠いていた。いくつかの提案が、この欠点、およびその他の欠点に対処しようと試みた。例えば、米国特許第６，３４３，３６４号（Ｌｅｙｄｉｅｒｓ  ｅｔ  ａｌ．）が、スマートカード読取り装置に向けられた、ＵＳＢトラフィックに対する周波数ロッキングの例を開示する。この特許文献は、ＵＳＢ  ＳＹＮＣストリームおよびパケットＩＤストリームと比較されるローカルの自走クロックを教示する。その周期はこの周波数にマッチするように更新され、結果として、公称周波数１．５メガヘルツを有するローカルクロックがもたらされる。これは、スマートカード情報をホストＰＣに読み込むのに十分な度合いの同期をもたらすが、このアプローチは、スマートカード読取り装置に向けられ、デバイス間同期は、扱われない。
【０００５】
ＷＯ２００７／０９２９９７（Ｆｏｓｔｅｒ  ｅｔ  ａｌ．）が、ホストＰＣにおけるクロックの精度にかかわらず、ＵＳＢデバイス上で正確なクロック周波数の生成を許す、同期されたＵＳＢデバイスを開示する。ＵＳＢ  ＳＯＦパケットが、ＵＳＢデバイスによって復号され、クロック基準の役割をする代わりに、クロック搬送信号として扱われる。
【０００６】
搬送信号は、ＵＳＢトラフィックから復号されると、倍率と組み合わされて、同期情報を生成し、したがって、ローカルクロック信号を、クロック周波数の正確な制御と合成する。このようにして、ローカルクロック信号の周波数は、搬送信号の多少、曖昧な周波数より正確であり得る。
【０００７】
この構成は、数十メガヘルツのクロック周波数などの任意の高い周波数にローカルクロック信号を生成することができ、このため、所与のＵＳＢに接続された各デバイスのローカルクロックが周波数に関して同期されることを確実にすると言われる。また、米国特許出願第１０／６２０，７６９号も、ホストから各デバイスまでの信号伝搬時間の測定、およびＵＳＢデバイスの各デバイス上でクロック位相補償を設けることによって、複数のローカルクロックを位相に関してさらに同期する方法および装置も教示する。
【０００８】
米国特許出願第１２／２７９，３２８号（Ｆｏｓｔｅｒ  ｅｔ  ａｌ．）が、別のインタフェースから受信された時間基準に複数のＵＳＢデバイスのローカルクロックを同期することを教示する。一実施形態において、ＵＳＢデバイスが、ＩＥＥＥ−１５８８プロトコルを使用してイーサネットを介して外部から提供される時間シグネチャに同期されるローカルクロックを含む。さらに別の実施形態において、ＵＳＢデバイスのクロックが、ＧＰＳ（全地球測位システム）同期クロックから導き出された時間基準に同期される。
【０００９】
前述のシステムのすべては、従来のＵＳＢ２．０の範囲内で機能し、このため、いくつかの領域において限られている。ＵＳＢ２．０は、デバイス応答タイムアウトによって範囲が限られている。これは、ＵＳＢホストコントローラが、このＵＳＢホストコントローラからの要求に応答した所与のＵＳＢデバイスからの信号の受信に割り当てる時間の窓である。したがって、ＵＳＢ２．０の物理的到達距離は、約２５メートルである。
【００１０】
ＵＳＢ３．０規格が、２００８年１１月にリリースされ、やはり、消費者アプリケーションに焦点が合わされている。ＵＳＢ３．０規格は、ＵＳＢのアーキテクチャに相当な変更を行う。詳細には、前述した背景技術の同期スキームが、新たな毎秒５Ｇｂのプロトコル（「ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢ」と呼ばれる）では、このプロトコルが、ＳＯＦパケットに関するブロードキャスト機構をなくすため、機能しない。
【００１１】
ＵＳＢ３．０は、同一の接続ケーブル上で２つの並行の、独立したＵＳＢバスを定義する。第１に、ＵＳＢ２．０バスが、変更されないままであり（後方互換性のために）、低速度（毎秒１．５Ｍｂ）プロトコル、フル速度（毎秒１２Ｍｂ）プロトコル、および高速度（毎秒４８０Ｍｂ）プロトコルを提供する。毎秒５Ｇｂトラフィックのための第２のバスが、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢを提供する。これらのバスは、所与のＵＳＢデバイスに対する、これらのバスの動作が相互排他的であること以外は、独立して動作する。つまり、ＳｕｐｅｒＳｐｅｅｄ接続が可能である場合、ＵＳＢ２．０バスは、そのデバイスから接続を解除されている。
【００１２】
ＵＳＢ３．０のデュアルバスアーキテクチャが、図１に１０で概略で示される。ＵＳＢホストコントローラ１４を含むパーソナルコンピュータ１２が、第１のＵＳＢ３．０準拠のケーブル１８によってＵＳＢ３．０ハブ１６に接続され、ＵＳＢ３．０デバイス２０が、第２のＵＳＢ３．０準拠のケーブル２４によってＵＳＢ３．０ハブ１６の下流ポート２２に接続される。
【００１３】
ＵＳＢホストコントローラ１４は、ＵＳＢ２．０ホスト２６とＳｕｐｅｒＳｐｅｅｄホスト２８をともに含む。これら２つのホスト２６、２８は、互いに独立であり、各ホスト２６、２８は、１２７個までのデバイス（ハブを含む）に接続されることが可能である。ＵＳＢ３．０準拠のケーブルは、ＵＳＢ２．０準拠のケーブルと、ＳｕｐｅｒＳｐｅｅｄ信号を伝送することができる一連の遮蔽導線とを含む複合ケーブルである。このため、ＵＳＢ３．０準拠のケーブル１８は、ＵＳＢ２．０準拠のケーブル３０と、遮蔽導線３２とを備える。
【００１４】
ＵＳＢ３．０ハブ１６は、複合ケーブル１８によってそれぞれのホスト２６、２８にそれぞれ直接に接続された、ＵＳＢ２．０ハブ機能３４とＳｕｐｅｒＳｐｅｅｄハブ機能３６をともに含む。ＵＳＢ３．０デバイス２０は、複合ケーブル２４によってＵＳＢ３．０ハブ１６のそれぞれのハブ機能３４、３６にそれぞれ戻るように接続された、ＵＳＢ２．０デバイス機能３８とＳｕｐｅｒＳｐｅｅｄデバイス機能４０をともに含む。
【００１５】
ＵＳＢ３．０デバイス２０を列挙する時点で、ＳｕｐｅｒＳｐｅｅｄホスト２８は、ＳｕｐｅｒＳｐｅｅｄデバイス機能（４０）が存在するか確認する。ＳｕｐｅｒＳｐｅｅｄデバイスが見つかった場合、接続が確立される。ＳｕｐｅｒＳｐｅｅｄデバイスが見つからなかった場合（ＵＳＢ２．０デバイスだけしかポート２２に接続されていない場合のように）、ＵＳＢ２．０ホスト２６が、デバイス２０にＵＳＢ２．０デバイス機能（３８）が存在するか確認する。ホストコントローラ１４が、いずれのデバイス機能が接続されているかを特定すると、コントローラ１４は、ＵＳＢ２．０デバイス機能３８がアタッチされているか、ＳｕｐｅｒＳｐｅｅｄデバイス機能４０がアタッチされているかに対応する下流ポート２２に関する通信だけを使用可能にするようにＵＳＢ３．０ハブ１６に告げる。このことは、その２つの並行のバスの１つだけが、ＵＳＢ３．０デバイス２０などのエンドデバイスに対して、任意の一時点で動作していることを意味する。
【００１６】
さらに、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢは、ＵＳＢ２．０バスのアーキテクチャとは異なるアーキテクチャを有する。非常に高速の通信システムは、高いビットレートのために大量の電力を消費する。ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢの設計要件は、ユーザデバイスのバッテリ寿命を延ばすように、より低い電力消費であった。このことは、ＵＳＢ２．０の以前のブロードキャスト設計からの変化をもたらしており、すなわち、ＳｕｐｅｒＳｐｅｅｄは、ブロードキャストバスではなく、通信パケットをシステムにおける特定のノードに向け、アイドルリンク上の通信をシャットダウンする。
【００１７】
このことは、例えば、デバイスを同期するための方法および装置が、バス上で各デバイスに配信されるブロードキャストクロック搬送信号に基づき、このことがＳｕｐｅｒＳｐｅｅｄ  ＵＳＢにおいては不適当である、米国特許出願第１２／２７９，３２８号の同期スキームのいずれの拡張に相当に影響を及ぼす。
【００１８】
ＳｕｐｅｒＳｐｅｅｄハブ機能は、ホスト（または上流ポート）に対してデバイスの役割をし、デバイス（または下流ポート）に対してホストの役割をする。このことは、ＳｕｐｅｒＳｐｅｅｄハブ機能が、単に中継器の役割をするのではなく、ＳｕｐｅｒＳｐｅｅｄハブ機能の下流ポート上のトランザクションをバッファリングし、スケジュールする役割をすることを意味する。同様に、ＳｕｐｅｒＳｐｅｅｄハブ機能は、上流ポート上の伝送をスケジュールすることに関しても、そのようにする。したがって、重い負荷のかかったハブ機能は、システムを通るパケット伝送に相当な非決定論的な遅延を加える可能性がある。また、このことは、米国特許出願第１２／２７９，３２８号のスキームなどのＵＳＢ２．０同期スキームの使用がＳｕｐｅｒＳｐｅｅｄ  ＵＳＢ上で機能することを排除する。
【００１９】
ＵＳＢ２．０の粗雑なアイソクロナス同期は、ＵＳＢ３．０規格において相当に改良されている。ホストコントローラとＵＳＢデバイスの間でアイソクロナス通信パイプを開くことが、その通信パイプに関する各サービス間隔における固定の帯域幅割当てを保証する。ＵＳＢ３．０のアイソクロナスプロトコルは、各アイソクロナスエンドポイントにいくらか規則的な間隔で送られ、さらにホストコントローラの時間領域におけるＵＳＢホストＰｈｙ（物理層）によるＩＴＰ（アイソクロナスタイムスタンプパケット）伝送の開始のタイムスタンプを含む、いわゆるＩＴＰを含む。このアイソクロナスタイムスタンプパケットは、約２５ナノ秒まで正確である。ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢは、電力を節約するようにアイドルリンクをシャットダウンするが、リンクは、アイソクロナスタイムスタンプパケットを受信するために活性でなければならない。したがって、ホストコントローラは、アイソクロナスタイムスタンプパケットの伝送の前に、デバイスに対するすべてのリンクが完全な活性モード（電力状態Ｕ０と呼ばれる）になっていることを保証しなければならない。
【００２０】
残念ながら、アイソクロナスタイムスタンプパケットは、ＵＳＢネットワークを下る伝搬において遅延させられる可能性がある。また、ＵＳＢ３．０は、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢにおけるパケットの伝搬時間を測定する方法を提供せず、このため、異なるＵＳＢデバイス上の時間領域の間の位相関係を正確に知る方法が存在しない。数百ナノ秒の位相差が、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢに関する最良ケースのシナリオであるものと予期され、ＵＳＢ３．０を計測要件、または他の精密タイミング要件に関して実用的でないものとしている。
【００２１】
米国特許第５，５６６，１８０号（Ｅｉｄｓｏｎ  ｅｔ  ａｌ．）が、通信ネットワーク上の一連のデバイスが、デバイスのローカル時間を互いに送信し、ネットワーク伝搬時間が、メッセージの集合体によって測定される、クロックを同期する方法を開示する。Ｅｉｄｓｏｎによるさらなる開示（米国特許第６，２７８，７１０号、米国特許第６，６６５，３１６号、米国特許第６，７４１，９５２号、および米国特許第７，２５１，１９９号）が、この概念を拡張するが、分散計器ネットワークのノードのそれぞれの間で同期メッセージの一定のストリームがイーサネットを介して転送される同期スキームに向けて取り組んでいるに過ぎない。この絶え間ないメッセージングは、帯域幅を消費し、可能な同期の精度を、ポイントツーポイント構成において数百ナノ秒に制限し、さらに従来の交換サブネットにおいて、実質的に、より低い精度（通常、マイクロ秒）に制限する。
【００２２】
本開示における「クロック信号」および「同期」という用語は、クロック信号、トリガ信号、遅延補償情報、および伝搬時間測定メッセージを指すように使用されることを理解されたい。また、本開示における「時間の概念」は、基準時点または「リアルタイム」を表すのに使用され、さらにクロック信号と、関連する基準時点の組合せを指すのに使用されることも可能であることも理解されたい。
【発明の概要】
【発明が解決しようとする課題】
【００２３】
本発明の全般的な目的は、ＵＳＢ３規格に準拠して、事前定義された最大限度まで、複数のＵＳＢデバイスの精密同期を可能にすることである。
【課題を解決するための手段】
【００２４】
このため、第１の広い態様によれば、本発明は、ＵＳＢハブにアタッチされた、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減する方法であって、
そのＵＳＢハブを使用して、或るデータストリームビットレートを有するＵＳＢデータストリーム（ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリームであるか、非ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリームであるかにかかわらず）を観測すること、
そのＵＳＢハブがＵＳＢデータストリームの中の周期信号構造を復号すること、
そのＵＳＢハブが、周期信号構造を復号したことに応答してイベント信号を生成すること、および
そのＵＳＢハブが、そのＵＳＢハブのローカルクロックの周波数を周期イベント信号にロックすること（その結果、周期イベント信号が、ＵＳＢハブの位相ロックループローカルクロックが、クロックの周波数を同期する基準をもたらす）を備え、
ＵＳＢハブのクロックが、ビットレートの周波数の実質的に倍数でＵＳＢハブの回路のためのクロック制御源となるように適合される方法を提供する。
【００２５】
同期されたＵＳＢデバイスは、通常、ローカルクロックをデータストリーム内に含まれる周期データ構造にロックすることによって動作する。通常、ＵＳＢ  ＳＯＦ（フレーム開始）パケットが、周期データ構造として使用され、高速ＵＳＢの場合、１ｋＨまたは８ｋＨという周波数で出現する。この比較的低い周波数の信号は、ＵＳＢデバイスによって、ＰＬＬアーキテクチャを使用するアタッチされたＵＳＢデバイスのローカルクロックをロックするのに使用される。ローカルクロックの周波数は、通常、数十ＭＨｚの範囲内にある。
【００２６】
複数のＵＳＢデバイスの同期は、標準のＵＳＢハブが上流ポートから下流ポートに向かうデータを処理し、再送する仕方によって損なわれる可能性がある。同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減するための手段を提供することが、本発明の別の目的である。
【００２７】
ＵＳＢハブは、バスからのデータを復号し、その後、上流または下流の出力ポート上にデータを再クロック制御するのに使用されるＵＳＢハブ自らの自走クロックを含む。その結果、ＳＯＦ（フレーム開始）トークンなどの、ホストからすべてのデバイスに送信される周期クロック搬送信号は、通常、その信号がハブに着信した時点に有していたより、ハブを離れた時点で、より大きいタイミングジッタを有する。
【００２８】
毎秒４８０Ｍｂで動作するＵＳＢ高速ハブの場合、ローカルハブクロックとＳＯＦパケットの間のランダムな位相関係は、使用される再クロック制御スキームに依存して、１ビット時間、つまり、約４ナノ秒までの出力ＳＯＦジッタをもたらす可能性がある。基準クロック信号上のそのような大きい不定のジッタは、位相ロックループ制御システムには問題があり、最終的なクロック安定性を大幅に増大させる。カスケードされたハブが、この問題を悪化させて、各層につき４ナノ秒のジッタを追加する可能性がある。
【００２９】
さらに、ローカルハブクロックレートと、ＵＳＢデータストリームのビットレート（またはホストクロックのレート（またはＳＯＦレート））の間にうなり効果が存在する。この２つのクロックの周波数に大きい違いが存在する場合、ハブの出力ＳＯＦジッタは、多くのサイクルにわたって見られた場合、確率的な性質であり、この効果は、単純な電気フィルタまたは統計的技術を使用して除去され得る。ローカルハブクロックの周波数が、ホストクロックの周波数に近づくにつれ、または一方が、他方の整数倍に近づくにつれ、うなり効果が生じる。一方のクロックの周波数が、他方のクロックの周波数の倍数に非常に近くなると、ハブのクロックは、ＳＯＦトークンの立ち上り端と同相になったり、位相がずれたりするようにドリフトするように見える。その結果は、クロックが同相条件にある場合、最小の出力位相誤差しか存在しないが、信号の位相がほぼ完全にずれている場合、出力位相誤差は、最大化される。
【００３０】
したがって、異なるＵＳＢハブ上のＵＳＢデバイスの同期されたクロックは、ホストクロックとそれぞれのハブクロックの間の周期位相関係に起因して、相当なうなり効果を示す。この効果は、その２つのクロックのうなり周波数と合致したＵＳＢデバイス間ジッタの周期的増加として表れる。
【００３１】
クロックジッタが最小化される２つの事例が存在することに留意されたい。第１の事例では、２つのクロックは、完全に同期され、一緒にロックされている、つまり、クロック間に一定の位相関係（整数倍関係）が存在する。これらの条件下で、時間依存の再クロック制御誤差は全く存在しない。第２の事例では、２つのクロック間の関係は、整数倍から遠く離れている。これらの条件下で、再クロック制御誤差は、確率的な性質であるが、ローパス電気フィルタ、または統計的手段を使用して、容易に除去され得る。可能な最悪の事例は、２つのクロックが、或る整数倍にほとんど同調されている（ほとんど同一の周波数）である場合である。この事例が、うなりが生じるとともに、顕著にうなり周波数を有してジッタが変化する場合である。クロックレートに１／２ヘルツの差が存在する場合を考慮されたい。このことは、同相になったり、位相がずれたりするクロックの２秒のうなり効果をもたらし、クロックジッタの２秒の周期的増加をもたらす。
【００３２】
このため、方法は、同期されたＵＳＢアーキテクチャにおいてクロック制御ジッタが低減されることを許す。このシステムは、ローカル発振器がホストコントローラの時間基準に同期されるハブリピータデバイスを使用する。ハブのローカル発振器の同期が、ＵＳＢデータストリームと再クロック制御デバイスの間に一定の位相関係をもたらして、最小の再クロック制御位相誤差をもたらす。
【００３３】
この態様は、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリームに適用可能であるが、毎秒４８０Ｍｂで動作する高速ＵＳＢシステムに対して使用されることも可能である。
一実施形態において、ＵＳＢデータストリームは、ＵＳＢハブの上流ポートにおいて観測される。
【００３４】
或る実施形態において、信号構造は、ＵＳＢデータパケットの中の１つまたは複数のＯＵＴトークン、ＩＮトークン、ＡＣＫトークン、ＮＡＫトークン、ＳＴＡＬＬトークン、ＰＲＥトークン、ＳＯＦトークン、ＳＥＴＵＰトークン、ＤＡＴＡ０トークン、ＤＡＴＡ１トークン、あるいはプログラマブルシーケンスビットパターンを備える。
【００３５】
或る特定の実施形態において、周期信号構造は、１つまたは複数のフレーム開始パケットトークンを備える。
一実施形態において、周期信号構造は、１つまたは複数のＳｕｐｅｒＳｐｅｅｄ  ＵＳＢアイソクロナスタイムスタンプパケットを備える。
【００３６】
一実施形態において、方法は、ＵＳＢハブのローカルクロックが、統計的技術または電気フィルタを使用して、ＵＳＢハブのローカルクロックのジッタを低減することを備える。
【００３７】
或る特定の実施形態において、ＵＳＢハブのクロックの周波数は、ＵＳＢビットストリームデータレートの実質的に整数倍に同期される（ＵＳＢデータストリームのサンプリングおよび再送をクロックアップするため、およびビットレートを追跡するため）。このようにして、ＵＳＢデータストリームのビットレートと、ＵＳＢデータストリームを再送するのに使用されるクロックの間に、ＵＳＢハブによるＵＳＢデータストリームの再送におけるジッタを最小限に抑える一定の位相関係が存在する。このことは、ＵＳＢデバイスのローカルクロックをＵＳＢデータストリームの中の周期信号構造に同期するように適合された、同期されたＵＳＢデバイスが、ＵＳＢデバイスのローカルの同期されたクロックのジッタを低減することを許す。
【００３８】
或る実施形態において、ＵＳＢハブのクロックは、ビットレートの実質的に半整数倍（例えば、１．５倍、２．５倍、３．５倍など）である周波数を有するとともに、ビットレートを追跡するように同期される。したがって、平均して、ＵＳＢデータストリームのビットレートと、ＵＳＢデータストリームを再送するのに使用されるクロックの間にランダムな位相関係が存在する。このことは、場合により、ＵＳＢハブによるＵＳＢデータストリームの最大のサイクル間再送ジッタをもたらす。しかし、ＵＳＢデバイスのローカルクロックをＵＳＢデータストリームの中の周期信号構造に同期するように適合された、同期されたＵＳＢデバイスが、統計的技術（または単純な電気ローパスフィルタさえ）使用して、クロック制御ジッタを低減する場合、ＵＳＢハブ再送ジッタのランダム化は、ＵＳＢデバイスローカルクロックにおける最小のジッタをもたらす。
【００３９】
第２の広い態様において、したがって、本発明は、同期されたＵＳＢアーキテクチャにおいてクロック制御ジッタを低減するための装置を提供し、この装置は、
ローカルクロックと、上流ポートと、複数の下流ポートと、上流ポート経由でホストコントローラに向けて通信するため、および下流ポート経由でＵＳＢデバイスに向けて通信するための回路とを有するＵＳＢハブ回路と、
或るビットレートを有するＵＳＢデータストリーム（ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリームであるか、非ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリームであるかにかかわらず）を観測するように適合されたモニタ（監視回路の形態などの）と、
ＵＳＢデータストリームの中の周期データ構造を復号するように適合された復号器（復号回路の形態などの）と、
周期データ構造を復号したことに応答してイベント信号を生成するように適合された信号ジェネレータ（信号生成回路の形態などの）と、
イベント信号の周波数に対してＵＳＢハブ回路のクロックの周波数をロックするように適合された回路（位相ロック回路の形態などの）とを備え、
ＵＳＢハブ回路のクロックは、ＵＳＢデータストリームのビットレートの周波数の実質的に倍数でＵＳＢハブ回路のハブ回路のためのクロック制御源となるように適合される。
【００４０】
このため、本発明は、同期されたＵＳＢアーキテクチャにおいてクロック制御ジッタが低減されるようにするための装置も提供する。
一実施形態において、モニタは、上流ポートにおいてＵＳＢデータストリームを観測するように適合される。
【００４１】
或る実施形態において、周期信号構造は、ＵＳＢデータパケットの中の１つまたは複数のＯＵＴトークン、ＩＮトークン、ＡＣＫトークン、ＮＡＫトークン、ＳＴＡＬＬトークン、ＰＲＥトークン、ＳＯＦトークン、ＳＥＴＵＰトークン、ＤＡＴＡ０トークン、ＤＡＴＡ１トークン、またはプログラマブルシーケンスビットパターンを備える。
【００４２】
一実施形態において、ＵＳＢハブ回路のクロックは、ＵＳＢビットストリームビットレートの実質的に整数倍であるように、さらにビットレートを追跡するように同期される（ＵＳＢデータストリームのサンプリングおよび再送をクロックアップするために）。
【００４３】
或る実施形態において、ＵＳＢハブ回路のクロックは、ビットレートの実質的に半整数倍（例えば、１．５倍、２．５倍、３．５倍など）であるとともに、ＵＳＢビットストリームデータレートを追跡するように同期される。この実施形態によれば、ビットレートのほぼ半整数倍である自走発振器も適切なソリューションである。
【００４４】
第３の広い態様において、本発明は、ローカルクロックと、リピータ回路とを有するＵＳＢハブにアタッチされた、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減する方法であって、
そのＵＳＢハブのそのローカルクロックの周波数を制御することを備え、そのクロックは、ビットレートの周波数の実質的に倍数でＵＳＢハブのそのリピータ回路のためのクロック制御源となるように適合される方法。
【００４５】
方法は、そのＵＳＢハブのそのローカルクロックのその周波数を、ＵＳＢデータストリームビットレートの周波数である中心周波数の辺りに制御することを含むことが可能である。
【００４６】
一実施形態において、その周波数を制御することは、正弦波形、鋸歯状波形、または三角波形の制御信号を利用する。
別の実施形態において、その周波数を制御することは、雑音を制御信号として利用する。
【００４７】
第４の広い態様において、本発明は、同期されたＵＳＢアーキテクチャにおいてクロック制御ジッタを低減するための装置、この装置は、
クロックと、
クロックコントローラまたはクロックコントローラ回路とを備え、
そのクロックコントローラまたはクロックコントローラ回路は、そのクロックの供給電圧を調整することによって、そのクロックを制御するように適合される。
【００４８】
第５の広い態様において、本発明は、同期されたＵＳＢアーキテクチャにおいてクロック制御ジッタを低減するための装置を提供し、この装置は、
或る周波数を有するクロックと、
フィードバック制御によってそのクロックの周波数を安定させるように適合されたフィードバック安定器と、
クロックコントローラまたはクロックコントローラ回路とを備え、
そのクロックコントローラまたはクロックコントローラ回路は、そのクロックのフィードバック安定器に外乱信号を導入することによって、そのクロックを制御するように適合される。
【００４９】
第６の広い態様において、本発明は、ＵＳＢネットワークにおいてＵＳＢハブにアタッチされた、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減する方法を提供し、この方法は、
そのＵＳＢネットワーク内のそのＵＳＢハブの層を特定すること、
或る事前定義されたレベルの範囲内に、そのＵＳＢハブにすぐ上流のＵＳＢデータストリームのデータビットレートの周波数を整合させることを回避するように、そのＵＳＢネットワーク内のそのＵＳＢハブのその層に依存して、そのＵＳＢハブのクロックの周波数を設定することを備える。
【００５０】
一実施形態において、その事前定義されたレベルは、１ｋＨｚである。別の実施形態において、その事前定義されたレベルは、１００ｋＨｚである。
或る特定の実施形態において、そのＵＳＢハブのその層を特定することは、そのＵＳＢハブのルーティング文字列アドレスのクエリを行うことを備える。
【００５１】
別の実施形態において、そのＵＳＢハブのその層を特定することは、そのＵＳＢハブの物理接続層についての情報を求めて、そのＵＳＢネットワークが接続されたＵＳＢホストコントローラのオペレーティングシステムにソフトウェアを使用してクエリを行うことを備える。
【００５２】
或る特定の実施形態において、そのＵＳＢハブのその層を特定することは、そのＵＳＢハブの上流ポートでそのＵＳＢデータストリームの周波数を測定することを備える。
第７の広い態様において、本発明は、ＵＳＢハブの上流ポートで受信されるＵＳＢデータストリームのビットレートを算出するための装置を提供し、この装置は、
知られている、または算出可能な周波数のクロックと、
そのＵＳＢハブのその上流ポートからのそのＵＳＢデータストリームを観測する回路と、
そのクロックの周波数と、そのＵＳＢデータストリームの周波数を比較して、その結果、そのビットレートを算出する回路とを備える。
【００５３】
第８の広い態様において、本発明は、ＵＳＢハブにアタッチされた、同期されたＵＳＢデバイスのローカルクロックにおけるジッタを低減するためのシステムであって、
或るビットレートを有するＵＳＢデータストリームを観測するように適合されたモニタと、
そのＵＳＢデータストリームの中の周期データ構造を復号するように適合された復号器と、
その周期データ構造を復号したことに応答してイベント信号を生成するように適合された信号ジェネレータと、
クロックを有するＵＳＢハブまたはＵＳＢハブ回路と、
そのＵＳＢハブまたはＵＳＢハブ回路の周波数と、そのＵＳＢデータストリームの周波数を比較して、その結果、そのビットレートを算出する回路と、
そのイベント信号の周波数に対してそのＵＳＢハブまたはＵＳＢハブ回路のそのクロックの周波数をロックするように適合された回路とを備え、
そのＵＳＢハブまたはＵＳＢハブ回路のそのクロックは、そのクロック制御源とそのＵＳＢデータストリームの間の一定の位相関係が、そのＵＳＢデバイスのそのローカルクロックにおけるジッタを低減するように、そのＵＳＢデータストリームのそのビットレートの周波数の実質的に倍数で、そのＵＳＢハブのためのクロック制御源となるように適合されるシステムを提供する。
【００５４】
一実施形態において、そのＵＳＢハブまたはＵＳＢハブ回路の周波数は、そのビットレートの実質的に整数倍に同期され、そのＵＳＢデータストリームと、そのＵＳＢハブまたはＵＳＢハブ回路のそのクロックの間に一定の位相関係が存在する。
【００５５】
別の実施形態において、そのＵＳＢハブまたはＵＳＢハブ回路のそのクロックの周波数は、そのビットレートの実質的に半整数倍に同期され、その周期信号構造のそれぞれの後続の構造の受信時に、そのＵＳＢデータストリームと、そのＵＳＢハブまたはＵＳＢハブ回路のそのクロックの間に急速に変化する位相関係が存在する。
【００５６】
本発明の前述した態様の各態様のすべての様々な特徴は、適切なように、さらに所望に応じて、組み合わされることが可能であることに留意されたい。
さらに、本発明は、前述した本発明の方法のそれぞれを実行するように構成された装置およびシステムも提供することに留意されたい。
【００５７】
さらに、本発明による装置は、様々な仕方で実現されることが可能である。例えば、そのようなデバイスは、プリント回路上、もしくはプリント配線基板上、またはセラミック基板上の複数の構成要素の形態で、あるいは半導体レベルで、つまり、単一のシリコン（または他の半導体材料）チップとして構築されることも可能である。
【００５８】
本発明が、より明確に確認され得るように、次に、例として、添付の図面を参照して実施形態が説明される。
【図面の簡単な説明】
【００５９】
【図１】背景技術によるＵＳＢ３のデュアルバスアーキテクチャを示す概略図である。
【図２】背景技術による、様々なクロック不整合を有するＵＳＢハブによってＵＳＢデータストリームがクロック制御された場合のデバイス間ジッタ変動に関するうなり周波数を表すグラフである。
【図３】本発明の或る実施形態によるジッタを最小限に抑えるＵＳＢハブを示す概略図である。
【図４】ＵＳＢハブの再クロック制御周波数を制御するための回路を組み込んだ、本発明の或る実施形態によるＵＳＢハブを示す概略図である。
【図５】図４のＵＳＢハブのクロックに適用された制御信号を示す概略図である。
【図６】本発明の或る実施形態によるＵＳＢネットワークを示す概略図である。
【図７】図６における様々なハブ層の再クロック制御周波数を示す概略図である。
【発明を実施するための形態】
【００６０】
同期されたＵＳＢデバイスが、ＵＳＢデータストリーム内に見られる周期信号構造にローカルクロックをロックする。これらの周期信号構造のタイミングのジッタは、ＵＳＢデバイスのローカルクロック位相精度を低下させる。異なるＵＳＢハブ上のＵＳＢデバイスの同期されたクロックは、ホストクロックとそれぞれのハブクロックの間の周期的位相関係に起因して、相当なうなり効果を示す。この効果は、その２つのクロックのうなり周波数と合致したＵＳＢデバイス間ジッタの周期的変化として表れる。
【００６１】
図２を参照すると、グラフ５０が、同期されたＵＳＢデバイスにおいて観測されるクロックジッタに対するＵＳＢハブクロックレートの、この効果を示す。
グラフ５０は、ホストコントローラクロック（またはＵＳＢデータストリームのビット時間）とＵＳＢハブクロックの間のクロックの不整合（δ）に対してうなり周波数（ｆｂ）をプロットする。一方のクロックが、他方のクロック周波数の整数倍である場合（５２におけるように）、クロック間に一定の位相関係が存在し、うなり効果は全く観測されない。不整合が、整数倍から離れて増加するにつれ（すなわち、完全に整合した５２のいずれかの側に）、デバイス間ジッタの周期的増加は、非常に遅いうなり周波数を有して顕著になる。不整合がさらに増加するにつれ、うなり周波数は、レベル５４（または「フィルタレベル」）まで増加して、うなり周波数は、この実施形態により実行されるとおり、ローパスフィルタが周期的ジッタを除去するのに十分なだけ速いうなりを生じる。
【００６２】
図３は、本発明のさらなる実施形態によるＵＳＢハブ６０の概略図である。この実施形態によれば、データストリーム、特にＵＳＢデータストリームの中に含まれる周期信号にロックされたクロックのジッタは、パス全体において、より具体的には、データを下流ポートに再クロック制御するＵＳＢハブにおいて同期クロックを使用することによって、低減され得る。ＵＳＢハブ６０は、ホストコントローラ（図示せず）に向けて通信するための上流ポート６２と、下流のハブおよびデバイス（図示せず）に通信するための複数の下流ポート６４と、ＵＳＢハブチップ６６と、ローカルクロック７０を含む同期装置６８とを備える。
【００６３】
ＵＳＢハブチップ６６は、ＳｕｐｅｒＳｐｅｅｄハブ機能７２と、非ＳｕｐｅｒＳｐｅｅｄハブ機能７４とを有する（ただし、この実施形態のいくつかの変種では、ＵＳＢハブチップ６６は、非ＳｕｐｅｒＳｐｅｅｄハブ機能だけしか含まないことが可能である）。使用の際、ＳｕｐｅｒＳｐｅｅｄハブ機能７２は、上流ポート６２からＳｕｐｅｒＳｐｅｅｄ通信７６を受信して、それらの通信７６を下流ポート６４に送るとともに、下流ポート６４からＳｕｐｅｒＳｐｅｅｄ通信７６を受信して、それらの通信７６を上流ポート６２に送る。同様に、非ＳｕｐｅｒＳｐｅｅｄハブ機能７４は、上流ポート３３２から非ＳｕｐｅｒＳｐｅｅｄ通信７８を受信して、それらの通信７８を下流ポート３３４に送るとともに、下流ポート３３４から非ＳｕｐｅｒＳｐｅｅｄ通信７８を受信して、それらの通信７８を上流ポート３３２に送る。
【００６４】
同期装置６８は、検出ポイント８０で、ＳｕｐｅｒＳｐｅｅｄチャネル上のＳｕｐｅｒＳｐｅｅｄ通信７６、非ＳｕｐｅｒＳｐｅｅｄチャネル上の非ＳｕｐｅｒＳｐｅｅｄ通信７８、またはチャネル７６および７８上のＳｕｐｅｒＳｐｅｅｄ通信７６と非ＳｕｐｅｒＳｐｅｅｄ通信の両方を監視して、任意の適切な技術によって同期装置６８のローカルクロック７０をホストコントローラのクロックにロックする。同期装置６８のローカルクロック７０は、チャネル７６および７８上のＵＳＢデータストリームのデータレートに同調されたローカルクロック信号８２を供給し、このローカルクロック信号８２は、ＵＳＢハブチップ３３６によって、ＵＳＢデータストリームをクロック制御し、下流ポート６４に再送するのに使用される。
【００６５】
この実施形態において、ローカルクロック７０は、ＵＳＢ通信のビットレートに同調され、このことは、それらの通信信号と、ＵＳＢハブチップ６６のサンプリング機能および再送機能との間に一定の位相関係をもたらす。このことは、最小のパケット間再クロック制御ジッタをもたらし、そのことが、アタッチされた、同期されたデバイスのより正確な位相ロックを許す。
【００６６】
本発明の別の変種によれば、クロック信号８２が、８０で検出されたクロック搬送信号から小さい周波数オフセットを有するように調整されることが可能である。このようにして、ホストコントローラのクロックとローカルクロックの間の相対位相が時間的に変化する。したがって、ＵＳＢデータストリームを介するハブ再クロック制御に関連する位相誤差は、時間的に変化する。しかし、位相誤差の、この周期的変動の周波数は、ホストによって設定され得る（わずかな周波数オフセットを設定することによって）。次に、このポートの下流にアタッチされた、同期されたＵＳＢデバイスにおいてローパスフィルタが、フィルタのカットオフ周波数がクロック制御ジッタの時間変動を除去するように設定されて、使用されることが可能である（図２参照）。
【００６７】
図４は、本発明の或る実施形態によるジッタ低減装置１００の概略図である。装置１００は、上流ポート１０４と、複数の下流ポート１０６と、ＵＳＢハブチップ１０８（ＳｕｐｅｒＳｐｅｅｄハブ機能１１０および非ＳｕｐｅｒＳｐｅｅｄハブ機能１１２を含む）と、クロック１１４と、クロックコントローラ１１６とを有するＵＳＢハブ１０２を備える。
【００６８】
ＵＳＢハブチップ１０８は、上流ポート１０４から、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリーム１１８および非ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢデータストリーム１２０を受信し、ストリーム１１８および１２０は、ＳｕｐｅｒＳｐｅｅｄハブ機能１１０および非ＳｕｐｅｒＳｐｅｅｄハブ機能１１２によってそれぞれ、下流ポート１０６に再クロック制御される。クロック１１４が、ＵＳＢハブチップ１０８のクロック入力ピン１２２にクロック制御信号を供給する。
【００６９】
背景技術のＵＳＢの従来のクロックは、１２ＭＨｚまたは４８ＭＨｚで通常、動作する単純な水晶発振器回路を備える（クロックコントローラ（クロックコントローラ１６６参照を伴わない）。従来のクロックは、自走発振器であり、通常、５０ｐｐｍ（百万分率）から１００ｐｐｍまでのクロック周波数許容差を有する。
【００７０】
これに対して、装置１００は、クロック１１４が追従させられる制御信号１２４を生成するクロックコントローラ１１６を含み、したがって、クロック１１４の周波数および位相を制御するクロックコントローラ１１６のための機構を提供する。したがって、装置１００は、周波数および／または位相が制御され得る、わずかにより高度なクロック１１４を有する。
【００７１】
この実施形態において、制御信号８２４は、三角波関数、鋸歯状波関数、または正弦波関数などの（ただし、以上には限定されない）周期関数である。図５は、鋸歯状波関数１３２、三角波関数１３４、および正弦波関数１３６を含む、例示的な制御信号１２４の概略プロット１３０である。
【００７２】
図４の実施形態によれば、使用の際、制御信号１２４が、クロック１１４の周波数に「チャープ」、つまり、周期的変化を生じさせる。周波数の、これらの周期的変動は、十分に急速である場合、上流ポート１０４において見られるＵＳＢデータストリームに対するクロック１１４の相対位相をランダム化する効果を有する。
【００７３】
この実施形態の変種において、制御信号１２４は、この信号が時間的にランダムであるという意味で「雑音」信号（図５の例示的な雑音信号１３８参照）である。この電気的雑音は、クロック１１４に導入されると、上流ポート１０４において見られるＵＳＢデータストリームに対するクロック１１４の相対位相をランダム化する効果を有する周波数のランダムな変動を生じさせる。様々な形態の電気的雑音が存在し、最も一般的なのが、平坦な電力スペクトル密度を有する「ホワイトノイズ」である。異なるスペクトル密度を有する、「ピンクノイズ」、「ブラウニアンノイズ」などの雑音の他の多数の技術的定義が存在するが、一般に、任意の雑音信号がクロック１１４に導入されることが可能である。
【００７４】
電気発振器の周波数安定性は、一般に、供給電圧の変動の影響を受けやすい。この実施形態では、制御信号１２４が、クロック１１４の供給電圧回路を制御する。この実施形態の別の変種では、制御信号１２４は、クロック１１４の周波数制御回路に導入される。一般に、制御信号１２４は、制御信号１２４がクロック１１４の周波数に直接に影響を与えるように、クロック１１４の回路の任意の部分に導入されるように適合される。
【００７５】
この実施形態の別の変種において、クロック８１４が、固定の周波数で、ただし、毎秒４８０Ｍｂ（２４０ＭＨｚ）という定格の高速ＵＳＢレートから或る規定されたオフセットで制御される。オフセット周波数が十分に大きい場合、クロック１１４の周波数と、上流ポート１０４におけるＵＳＢデータストリームビットレートの時間につれて変化する差は、アタッチされ、同期されたＵＳＢデバイスのクロックから除去される（ろ波して除かれる）ことが可能な周波数にある。
【００７６】
このアプローチは、ＵＳＢホストコントローラにアタッチされた第１のＵＳＢハブに関して有効であるが、その後にアタッチされた下流のハブについては有効ではない。このことは、例として説明される場合、図を参照して理解され得る。図６の１４０に概略で示されるＵＳＢネットワークを考慮されたい。図６を参照すると、ＵＳＢネットワーク１４０は、ＵＳＢハブ１４４、１４４’、１４４”と、ＵＳＢデバイス１４６とを備える多層スターＵＳＢネットワークにアタッチされたＵＳＢホストコントローラ１４２を含む。
【００７７】
ＵＳＢホストコントローラ１４２は、毎秒４８０Ｍｂの定格の高速ＵＳＢビットレート、ＦＵＳＢ（または毎秒５ＧｂのＳｕｐｅｒＳｐｅｅｄビットレート）でデータ１４８を送信する。第１の層のアタッチされたＵＳＢハブ１４４は、ＵＳＢハブ１４４のクロック（図４のＵＳＢハブ１０２のクロック１４４を参照）を、定格ビットレートＦＵＳＢから、小さいが、一定のオフセット、ＦＯｆｆｓｅｔで動作させるように構成される。このポイント１５０におけるＵＳＢデータストリームのビットレートは、ＦＵＳＢ＋ＦＯｆｆｓｅｔである。この周波数オフセット、ＦＯｆｆｓｅｔは、このポイントにアタッチされたＵＳＢデバイス１４６の同調されたクロックから高周波数成分を除去することを許すのに十分なだけ大きい。
【００７８】
次のアタッチされた層において、ＵＳＢハブ１１４’が、第１の層のＵＳＢハブ１４４のポイント１５０におけるビットレート（すなわち、ＦＵＳＢ＋ＦＯｆｆｓｅｔ）から少なくともＦＯｆｆｓｅｔ離れた周波数でＵＳＢハブ１４４’のそれぞれのクロック（ＵＳＢハブ１０２のクロック１１４参照）を動作させる。したがって、この周波数は、例えば、ＦＵＳＢまたは（ＦＵＳＢ＋２×ＦＯｆｆｓｅｔ）であり得るが、実用的な理由で、ＵＳＢハブ１４４’を、この例において、ポイント１５２でそうであるように、（ＦＵＳＢ−ＦＯｆｆｓｅｔ）で動作させることが好ましい可能性がある。次のアタッチされた層において、ＵＳＢハブ１４４”が、便宜上、ＦＵＳＢ＋ＦＯｆｆｓｅｔで動作する。
【００７９】
このようにして、ＵＳＢハブは、定格のＵＳＢビットレートより高く、または低く、そのＵＳＢハブのクロックオフセットを設定するために、多層スタートポロジ内でそのＵＳＢハブの層を知っているだけでよい。このことは、周期的制御信号または雑音のある制御信号の複雑さなしに、各ＵＳＢハブがそのＵＳＢハブのそれぞれのクロックをわずかに速く、またはわずかに遅く設定する非常に単純な制御回路を許す。
【００８０】
図７は、図６のＵＳＢデータ送信の周波数空間１６０の概略図である。ＵＳＢホストコントローラ１４２が、毎秒４８０Ｍｂの定格ＵＳＢデータレート、ＦＵＳＢでデータ１６２を送信する。奇数番の層のハブ（すなわち、第１の層、第３の層、第５の層など）が、定格ＵＳＢデータレートから正のオフセット１６４、ＦＵＳＢ＋ＦＯｆｆｓｅｔで動作する。偶数番の層のハブ（すなわち、第２の層、第４の層など）が、定格ＵＳＢデータレートから負のオフセット１６６、ＦＵＳＢ−ＦＯｆｆｓｅｔで動作する。しかし、奇数番の層のハブに負のオフセットを使用し、偶数番の層のバスに正のオフセットを使用することも完全に容認可能であることが、当業者には直ちに明白であろう。
【００８１】
本発明の、この実施形態は、ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢの場合にさらに有利である。ＳｕｐｅｒＳｐｅｅｄハブに、各パケットのヘッダの中に含まれる「ルーティング文字列」によって擬似「アドレス」が割り当てられる。各ハブは、階層内のそのハブの位置を自動的に知り、したがって、そのハブの周波数オフセットを正となるように、または負となるように自動的に割り当てることができる。
【００８２】
非ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢハブの場合、ハブの位置は、ソフトウェア層によって識別されなければならず、さらに多層ネットワークにおける非ＳｕｐｅｒＳｐｅｅｄ  ＵＳＢハブの位置をそれらのハブに知らせるメッセージングをホストコントローラから受信する、さらなる回路が使用されなければならない。好ましい実施形態において、この回路は、完全にハブ内部に配置され、そのハブの下流ポートの１つに接続されたＵＳＢデバイスの形態をとることも可能である。その場合、クロックコントローラ（図４のクロックコントローラ１１６などの）が、そのような内部ＵＳＢデバイスに組み込まれることも可能である。
【００８３】
別の実施形態において、ＵＳＢハブ（図４のＵＳＢハブ１０２を参照）が、ＵＳＢハブのクロック１１４を使用して、ＵＳＢデータストリームビットレートの定格周波数に初期設定される。次に、クロックコントローラ１１６が、クロック１１４のレートをＵＳＢデータストリームのビットレートと比較する。オフセットが適切に（前述したとおり）選択された場合、ＵＳＢハブ１０２の上流ポート１０４におけるデータストリームが、定格ＵＳＢビットレートＦＵＳＢであるか（そのハブがレベル１にあることを暗示する）、あるいは、ＦＵＳＢ＋ＦＯｆｆｓｅｔまたはＦＵＳＢ−ＦＯｆｆｓｅｔであるか（選択されたスキームに応じて、そのハブが偶数ハブ層または奇数ハブ層であることを暗示する）を特定することが可能である。ハブ層１は、特別な事例である。上流ポート１０４において受信されるデータビットレートの、この簡単な試験で、クロックコントローラ１１６がクロック１１４の周波数をＦＵＳＢ−ＦＯｆｆｓｅｔに設定すべきか、ＦＵＳＢ＋ＦＯｆｆｓｅｔに設定すべきかを決定するのに十分である。
【００８４】
さらに別の実施形態において、ＵＳＢハブによって、上流ポートから下流ポートにデータを再クロック制御するのに適応型クロックが使用される。このアプローチでは、ＵＳＢハブ（図４のＵＳＢハブ１０２を参照）は、ＵＳＢデータストリームをオーバサンプリングするクロック１１４を有する。クロック１１４は、通常、パケットの開始時の同期フィールド内で、非常に迅速にＵＳＢデータストリームパケットの位相にロックされることが可能である。クロック１１４に対するパケットの位相が算出されると、この同期パターンと最もよく整合する位相が、その後、下流ポート１０６にパケットをクロック制御して通すのに使用される。
【００８５】
本発明の範囲内の変形が、当業者には容易に実行されることが可能である。したがって、本発明は、以上に例として説明される特定の実施形態に限定されないこと、および本明細書で説明される様々な実施形態の組合せが当業者には直ちに明白であることを理解されたい。
【００８６】
本発明の以上の説明、および添付の特許請求の範囲において、明示的な言葉、または必然的な暗示により、文脈がそうでないことを要求する場合を除き、「ホストコントローラ」という表現は、標準のＵＳＢホストコントローラ、ＵＳＢ  Ｏｎ−Ｔｈｅ−Ｇｏホストコントローラ、およびワイヤレスＵＳＢホストコントローラを含め、すべての形態のＵＳＢホストコントローラを包含する。
【００８７】
本発明の以上の説明、および添付の特許請求の範囲において、明示的な言葉、または必然的な暗示により、文脈がそうでないことを要求する場合を除き、「備える」という語、または「備える」または「備えた」などの変種は、包含的な意味で、つまり、述べられる特徴の存在を指定するが、本発明の様々な実施形態におけるさらなる特徴の存在または追加を排除しないように使用される。
【００８８】
さらに、本明細書における、背景技術へのいずれの言及も、そのような背景技術が、いずれの国においても共通の一般的な知識の一部を形成する、または形成していたことを暗示することは意図していない。
【図１】
0005575229.tif 000002
【図２】
0005575229.tif 000003
【図３】
0005575229.tif 000004
【図４】
0005575229.tif 000005
【図５】
0005575229.tif 000006
【図６】
0005575229.tif 000007
【図７】
0005575229.tif 000008