JP2004234659A - ユニバーサルシリアルバスダウンストリーム受信信号を使用してクロック合成を行うための方法及び装置 - Google Patents

ユニバーサルシリアルバスダウンストリーム受信信号を使用してクロック合成を行うための方法及び装置 Download PDF

Info

Publication number
JP2004234659A
JP2004234659A JP2004019256A JP2004019256A JP2004234659A JP 2004234659 A JP2004234659 A JP 2004234659A JP 2004019256 A JP2004019256 A JP 2004019256A JP 2004019256 A JP2004019256 A JP 2004019256A JP 2004234659 A JP2004234659 A JP 2004234659A
Authority
JP
Japan
Prior art keywords
signal
oscillator
bit
period
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004019256A
Other languages
English (en)
Inventor
Robert Antoine Leydier
アントワーヌ レイディエ ロベール
Christophe Alain Pomet
アレン ポメ クリストフ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ST MICROELECTRONICS Inc
STMicroelectronics lnc USA
Axalto Inc
Original Assignee
ST MICROELECTRONICS Inc
STMicroelectronics lnc USA
Schlumberger Malco Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ST MICROELECTRONICS Inc, STMicroelectronics lnc USA, Schlumberger Malco Inc filed Critical ST MICROELECTRONICS Inc
Publication of JP2004234659A publication Critical patent/JP2004234659A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom

Abstract

【課題】 ホスト又はハブにより送信されたダウンストリーム受信USB信号を利用して基準クロックを発生する。
【解決手段】自走オッシレータを有するUSB装置は、ユニバーサルシリアルバス(USB)上の信号に応答してローカルクロック信号を発生する。該オシレータは、実質的に安定であるが初期的には実質的な不正確性で知られている周波数において稼動している。USBホスト又はハブにより送信された受信信号からシングルエンドビットシリアル信号が抽出され且つタイミング信号がそれに応答して活性化される。シングルエンドビットシリアル信号内においてビットパターンが検知され且つインターバルが計測され、その期間中に、タイミング信号が活性化される。ローカルクロック信号の周期Pが計測されたインターバルのうちの1つに応答して調節される。
【選択図】図3

Description

本発明はユニバーサルシリアルバス(USB)装置用の内部基準クロックに関するものであって、更に詳細には、USBホスト又はハブにより送られたダウンストリーム受信USB信号D+及びD−によって計測される集積化された自走オシレータを使用して基準クロックを発生する技術に関するものである。
USB装置は以下に説明する理由により正確なクロックを必要とする。ホスト又はハブがUSB装置へダウンストリームデータを送信する場合に、該データの論理状態、即ち「1」及び「0」を認識するためにこのデータストリームを装置端部においてサンプルすることが必要である。適切なペースで周期的にサンプルが発生するためには、サンプリングクロックはホスト又はハブにおけるダウンストリームトラフィックのタイミングをとる周波数と同様の周波数を有するものでなければならない。
同様に、該装置がバス上をアップストリームデータを送信する場合に、ホスト又はハブ端部において「1」及び「0」を認識するためにこのデータストリームをサンプルすることが必要である。適切なペースでサンプリングが周期的に発生するためには、サンプリングクロックは該装置におけるアップストリームトラフィックのタイミングをとる周波数と同様の周波数を有するものでなければならない。
従来技術においては、ホスト又はハブ及び装置クロック周波数は類似している。何故ならば、該装置及び該ホスト又はハブの両方がクォーツクリスタル又はピエゾ共振器に基づくクロックを有しているからである。
上述したクロックの類似性に加えて、受信ビットセルの中間においてサンプリングが発生する必要性がある。差動受信器出力のサンプリングは、差動受信器出力が安定な状態を与えるビットセルの中間において発生することが必要である。この最後の条件を満足させるために、上述した2つのクロックはフェーズロックされることが必要である。アップストリーム及びダウンストリームの両方の方向における各メッセージのヘッダーにおける同期パターンは、装置クロックのホスト又はハブのクロックに対する及びその逆の場合のフェーズロックを可能とさせる。同期パターン(SP)ヘッダーを補足して、ノンリターンツーゼロ(NRZI)エンコーディングと結合されたビットスタッフィング技術は、受信クロックを同期させるために使用されるデータストリーム内のある遷移を保証する。即ち、少なくとも、受信端部において7ビット毎に1つの遷移が発生することが保証される。
要約すると、フルスピード(FS)即ち全速装置クロックは、ホスト又はハブクロックに同期した状態で毎秒12Mbit±0.25%の平均速度で受信データをサンプルするか又は送信データを駆動することが必要であり、且つその逆も又真である。
アップストリームの状態においては、装置がホスト又はハブへデータを送る場合であり、平均速度が正確なものでなければならないばかりでなく、相次ぐ遷移に対するデータストリームのジッター特性が±3.5nsより良好なものでなければならず、且つ対構成とされた遷移の場合には±4nsよりも良好なものでなければならない。
クォーツクリスタル又はピエゾ共振器に基づいたクロック発生器は、従来、高いレベルの精度の平均速度及び小さなジッターの両方を提供するために使用されていた。
USB装置は「USB」バス、即ちVBUS、GND、D+、D−を包含するオンザゴー補足(OTG)がある場合又はない場合のUSB2.0仕様の条件を満足するバス上でデータを受信及び送信する。USB装置は、典型的に、PCB上の1つ又はそれ以上のその他のコンポーネントへ接続されているピンを具備する少なくとも1個の集積回路(IC)を具備する少なくとも1個のプリント回路基板(PCB)を有している。このような態様の形態とされたUSB装置は、例えば、あるものはフラッシュメモリ技術を使用し且つ他のものはコンパクトディスク技術を使用する大量記憶装置、プリンタ装置又はカメラ装置を包含している。
これらのUSB装置においては、ICの少なくとも1個のピンは、ICに対して外部的にPCB上に位置されているクォーツクリスタル又はピエゾ共振器と接続するために使用される。多くのこのような装置において、クォーツクリスタル又はピエゾ共振器をICへ接続するために専用のエキストラなピンはICの全体的なピンの比較的小さな割合であり、且つクォーツクリスタル又はピエゾ共振器は全体的なPCB面積の比較的小さな部分を占有する。従って、これらの装置においては、クォーツクリスタル又はピエゾ共振器はそれらの全体的なアーキテクチャと適合性がある。
図1を参照すると、クォーツクリスタル又はピエゾ共振器150により駆動される基準クロック発生器130を使用した従来の構成の側面が例示されている。この構成によれば、USB装置110はUSBのD+及びD−ライン上でダウンストリーム信号を受取り且つアップストリーム信号を送信するため及びファンクション即ち機能部140への及びそれからのデータリンクを管理するためのシリアルエンジン、トランシーバ及びデータストリームマネジャ用の集積回路を具備する少なくとも1個のシリコンブロック120を包含している。
USB装置110は前述した大量記憶装置、プリンタ装置又はカメラ装置等のファンクション140をユーザにもたらす。装置110はバスによって電力が供給される場合にはVBUSにより、又は自己電力供給型である場合には外部電源により電力が供給される。図1は何等特定のファンクション140を示すことなしに一般化した態様においてバスで電力が供給される装置110を表わしている。
装置110がメモリ、計算資源、暗号又はファイル管理等のIC技術と適合性のあるファンクションをもたらすために、ファンクション140は単一のシリコンブロック内に合体させることが可能である。基準クロック発生器130がシリコンブロック120へクロックを送給する。基準クロック発生器130はシリコンブロック120クロックが必要とするに役立つ電気信号を発生するためにクォーツクリスタル又はピエゾ共振器と関連する少なくとも1個のICを包含している。シリコンブロック120と基準クロック発生器130との間に基準クロック発生器を開始させるか又は停止させるために使用するためにイネーブル信号線が存在している。これは、必要とされる場合にクロックを開始させ且つ特に全体的な電力消費を減少させるために必要とされない場合にそれを停止させるためにシリコンブロック120をイネーブルさせる。
図2はクォーツクリスタル又はピエゾ共振器250がシリコンブロック220へ接続されている場合の装置210に対する別の従来技術の構成の側面を表わしている。図1におけるように、図2のシリコンブロック220はダウンストリーム信号を受信し且つUSBのD+及びD−ライン上にアップストリーム信号を送信するのみならずファンクション240から及びそれへのデータストリームを管理する。然しながら、図2の装置210においては、クロック発生器は単一のシリコンブロック220上のシリアルエンジン、トランシーバ、データストリームマネージャ集積回路に包含されている。ファンクション240も、同様に、シリコンブロック220上に合体させることが可能である。
電力消費、寸法、パッケージングに関する制限を包含する多数の論点のために、図1及び2の従来技術のUSB装置110及び120はある適用例にとって問題である。これらの適用例は、新たなファミリィのUSB装置、直接的にパソコン(PC)USBポートへ接続されているリムーバブルセキュアコンテント(RSC)装置、又は多分デカップリングコンデンサ及び突入電流制限用直列抵抗と共にコネクタを介して単純なパスを介し例えばOTGデュアルロール装置又はセットトップボックス等の任意のイネーブルされたUSBホストを包含している。
これらのRSC装置は例えばユーザ認証、プラットフォームログオン、パブリックキーインフラストラクチャ、及びボイス・オーバー・ザ・インターネット・プロトコル(VOIP)用のデジタル電源管理、ケーブルTV、デジタル加入者線(DSL)等の新しい範囲の適用例を可能なものとし、その場合に、暗号解読しながらのデータストリーム操作、又は医学的及び例えば銀行口座等のその他の個人的情報に対するデータ格納に対する必要性が存在している。これらの装置はトークンの形態のファクタ又は、好適には、スマートカードの形態のファクタ、フォームファクタ等を有しており、それらは公知である。
このような1つのRSC装置はUSB集積化チップカード(USB−ICC)としても知られているUSBスマートカードであり、それの機械的仕様はISO7816−2仕様において記述されており、それを引用によって本明細書に取込む。設計上、USB−ICCは、単一のICのピンを相互接続させるために8個の外部コンタクトを有しているに過ぎない。USB−ICC外部コンタクトのうちの4個、即ちC1,C4,C5,C8は、夫々、VBUS、D+、GND、D−を接続するために使用される。クォーツクリスタル又はピエゾ共振器は、850μm未満の所要のカード厚さ内でUSB−ICCのICへ接続させることは不可能である。
更に、USB−ICC及びその他のUSBRSC装置は、電力消費を考慮したものでなければならない。何故ならば、それらは例えばラップトップコンピュータ、モーバイル電話及びパーソナルデジタルアシスタント等のバッテリ駆動型USBホストへ接続することが可能だからである。後者の2つの装置はバス駆動型装置に対して電流の使用可能性が制限されたデュアルロール(dual−role)OTG装置とすることが可能である。例えば、これらの適用例においては、サスペンド状態にある間の動作に対して数百マイクロアンペア未満の電力消費に制限される。
RSC装置は、好適には、スマートカード又は加入者識別モジュール(SIM)内に埋設すべき単一チップを利用して実現され、そのことは大量の普及を可能とさせる。全てのプラスチッククレジットカード及びデジタル権限管理(DRM)カードは将来このようなチップを装備することが可能である。
WiFi又は802.11の文脈において、1つの適用例は、SIMとして作用するばかりでなくトランズアクション即ち取引の安全確保を行うためにリムーバブルセキュアコンテント即ち着脱自在なコンテント安全装置に対するものとすることが可能である。モーバイルプラットフォーム上で使用される場合には、電力消費性能が最も重要である。
図1及び2の従来のUSB装置110及び120の制限のうちの幾つかに対処する公知の設計が存在している。2002年1月29日に発行された発明者Leydier et al.の米国特許第6,343,346号「ユニバーサルシリアルバスダウンストリーム受信信号DP及びDMを使用してローカルクロックを発生する方法及び装置(Method and device for local clock generation using universal serial bus downstream received signals DP and DM)」(「Leydier, et al」)は、このような1つの設計を開示しており且つそれを引用によって本明細書に取込む。
Leydier, et al.はクォーツクリスタル又はピエゾ共振器なしでデータを受信及び送信するために使用される単一IC上のクロックを発生するためにD+及びD−上のUSBダウンストリーム信号を使用することを開示しており、且つLeydier, et al.は、更に、USB低速(LS)装置の文脈におけるホスト又はハブにより送信された信号D+及びD−からクロックを回復するための方法及び装置を開示している。そこに開示された方法及び装置は、USB−ICC又はLSにおいて動作するRSC装置においてクロックを発生するためにIC内において実現される。
Leydier, et al.は、又、FS USB−ICC又はこのようなRSC装置に対する適用例も示している。然しながら、LS動作と比較して、USB仕様及びOTG補足はUSB FSモードで動作する装置に対して平均データレート及びジッター特性の増加された精度条件を課すものである。そのために、且つLS及びFSモードに対して特定される通信パターンにおける差に起因して、ホスト又はハブにより送信されたD+及びD−上の信号に関してクロック回復における更なる改良に対する必要性が存在している。
Bruhnkeの国際公開番号WO02/17047A2、国際特許出願番号PCT/DE01/03187「特にUSB装置用のクロック発生器(Clock generator, in particular, for USB devices)」、公開日:2002年2月28日(「Bruhnke」)は、ホスト又はハブから受信した信号からクロックを回復するためにクォーツクリスタルなしでUSB装置に対する別の態様を開示している。
Bruhnkeにより開示された方法は、パルスの安定化したストリームを発生させるためにローカルクロックからエキストラなパルスを除去する。特に、Bruhnkeの6頁15行から始まる部分において、各34個のパルスがクロック12から除去されることが記載されている。その結果得られる数のパルスはこのms当たりの平均データレートにおいてミリ秒(ms)当たりの理論的なパルス数と一致するが、安定化されたパルスストリームにおける殆ど全てのパルスに対して、パルスからパルスへのペースは±0.25%の許容可能なエラーを超えて所要の平均データレートよりも一層速いものである。従って、選択的にエキストラなクロックパルスを除去することのBruhnkeによって開示されている技術はジッター性能に関して問題である。
米国特許第6,343,364号 国際公開番号WO02/17047A2
上述した如く、ホスト又はハブにより送信されたダウンストリーム受信USB信号により計測される集積化した位相オシレータを利用する基準クロックの発生において更なる改善を行うことの必要性が存在している。本発明は、以上の点に鑑みなされたものであって、上述した如き従来技術の欠点を解消し、ユニバーサルシリアルバス(USB)を装置に対して内部基準クロックを発生する改良した技術を提供することを目的とする。
本発明はユニバーサルシリアルバス(USB)装置用の内部基準クロックを発生する技術に関するものであり、更に詳細には、USBホスト又はハブにより送信されたダウンストリーム受信USB信号D+及びD−により計測される集積化した自走オシレータを利用して基準クロックを発生する技術を提供する。従来技術におけるようにクォーツクリスタル又はピエゾ共振器を利用することのない自走オシレータは安定であり且つ初期的には不正確である。自走オシレータの初期的不正確性、熱的ドリフト及び経年変化は、ダウンストリーム受信USB信号D+及びD−からの進行中のキャリブレーションにより補償され、その結果、フルスピード(FS)装置に対して特定された供給源平均ビットレート精度及び供給源ジッターの両方と適合性のある性能で基準クロックを発生させる。該基準クロックはダウンストリームトラフィックをサンプルし且つアップストリームトラフィックをパルス動作させる。
図3は本発明の好適実施例において何等のクォーツクリスタル又は共振器を利用することなしにそのクロックを統合するシリコンブロック370を表わしている。図3を参照すると、本発明の1実施例に基づくUSB装置390の概略図が示されている。USB装置390のクロック395は、クォーツクリスタル又はピエゾ共振器を利用することなしに完全にシリコンブロック370上に統合されている。USB装置390のファンクション即ち機能部398は同一のシリコンブロック370上に統合させることが可能である。このことは、好適には、ファンクション398がメモリ393を提供するか又は中央処理装置(CPU)394により行われる暗号化又はその他の計算を実施する場合である。そうである場合には、VBUS、GND、D+376、D−375への接続を包含し、且つフロントエンド396、SUBエンジン397、クロック395用の回路を包含して、全てが完全にシリコンブロック370上に統合される。CPU394及びメモリ393はインターフェース392を介してクロック395とインターフェースを行う。クロック395は発生器395A、メーター395B、メモリ395C、シンセサイザー395D、検知器395Eを包含している。ユーザにもたらされるファンクション398もUSBシリアルエンジン397へ接続されている。
検知器395EはNRZIDDW804を介してシリアルエンジン397により受信されるビットパターンを追跡する。
次に、図4を参照すると、ホスト又はハブ300と共に、ダウンストリームトラフィック状態において図3のUSB装置390をより詳細に示してある。クォーツクリスタル又はピエゾ共振器350により駆動されるホスト又はハブ300がダウンストリームトラフィックをUSB装置390へ送信する。
ハブ又はホスト300は、入力TXDPH及び入力TXENHに応答してD+376ラインを駆動するドライバ315を包含している。ホスト又はハブ300は、又、入力TXDMH及び入力TXENHに応答してD−375ラインを駆動するドライバ320を包含している。TXENHは両方の送信器315及び320をイネーブル即ち動作可能とさせる。ホスト又はハブ300において、ケーブル365のD+376及びD−375ラインは夫々の負荷抵抗330及び325において終端している。DATAHEW305上のデータがクォーツクリスタル又はピエゾ共振器350を利用するクロックによりバス上でパルス動作される。
USB装置390はコネクタ360及びケーブル365を介して通過すべく着脱自在に結合されているシリコンブロック370を具備している。説明の便宜上、バス駆動型装置390に近いVBUSとGNDとの間のデカップリングコンデンサ及びVBUSと直列している突入電流制限用抵抗は図示していない。前述した如く、図示したUSB装置390の唯一のアクティブな部品であるシリコンブロック370はクォーツクリスタル又はピエゾ共振器を利用するものではない。クロックCLK1X803が図3に示した本発明の1実施例に基づくシリコンブロック370において構築される。クロック395、フロントエンド396(差動増幅器377、スイッチ372,373から374、プルアップ抵抗371、VTERMを包含する)USBエンジン397、関連するファンクション即ち機能は全てシリコンブロック370上に包含されている。
フロントエンド396において、シリコンブロック370上の集積化した即ち統合したプルアップ抵抗371の一方の端部が集積化した基準電圧VTERMへ接続しており、他方の端部は、以下の如くに、D+376、D−375へ接続されるか又は開放のままとされる。スイッチ374は、装置390がUSBへ取付けられていない場合にオンであり、その場合には、ホスト又はハブ300はそれを検知することは不可能である。装置390がUSBへ取付けられており且つFS装置として実施する場合には、スイッチ373がオンであり、それにより基準電圧VTERMをD+376へ導電的に結合させる。スイッチ390がUSBへ取付けられており且つLS装置として実施する場合には、スイッチ372はオンであり、それにより基準電圧VTERMをD−375へ導電的に結合させる。図示例によれば、スイッチ374,737又は372のうちの1つのみが与えられた時間においてオンである。
又、フロントエンド396において、差動受信器377がD+376及びD−375ライン上のホスト又はハブ300からの信号を受信し且つそれに応答してシングルエンド信号をRXDDW802を発生する。D+376がD−375より大きい場合には、受信器377はRXDDW802を高へ駆動する。D+376がD−375未満である場合には、受信器377はRXDDW802を低へ駆動する。
以下に更に詳細に説明するように、クォーツクリスタル又はピエゾ共振器350へ駆動回路によりクロック動作されるホスト又はハブ300により既知のビットパターンが装置390へダウンストリーム方向に送信される。該実施例によれば、これらの受信パターンに応答して、クロック395(図3)がダウンストリームトラフィックを受信するためのローカルクロック信号CLK1X803を合成する。
速度信号100がスイッチ373及び372に応答してフロントエンド396により発生される。
次に、図5を参照すると、USB装置390が再度示されており、この場合には、ホスト又はハブ300へのアップストリームトラフィックの文脈において示されている。この構成においては、USB装置390のフロントエンド396は集積化したドライバ382及び383を包含している。ドライバ382は入力TXDPD及び入力TXENDに応答してD+376ラインを駆動する。ドライバ383は入力TXDMD及び入力TXENDに応答してD−375ラインを駆動する。TXENDは両方の送信器382及び383をイネーブルさせる。クロック395からのCLK1X803(図3)によって、NRZIUP385データはD+376上でパルス動作され且つ反転されたNRZIUP385はD−375上でパルス動作される。
ホスト又はハブ300において、差動受信器340がD+376及びD−375ライン上の装置390からの信号を受信し且つそれに応答してシングルエンド信号RXDHUP355を発生する。D+がD−より大きい場合には、受信器340はRXDHUP355を高へ駆動する。D+がD−未満である場合には、受信器377はRXDHUP355を低へ駆動する。クォーツクリスタル又はピエゾ共振器350を利用するクロックでRXDHUP355をサンプリングする回路310によりNRZIUP345データストリームが検知される。
クォーツクリスタル又はピエゾ共振器350駆動型回路によりクロック動作されるホスト又はハブ300により装置390へダウンストリーム方向に送信される既知のビットパターンは以下に更に詳細に説明するように受信されていた(図4)。該実施例によれば、クロック395(図3)がアップストリームトラフィックをパルス動作させるためにローカルクロック信号CLK1X803を合成する。
図6を参照すると、本発明の論理的側面が1実施例に基づくフローチャート600に示されている。
ステップ260において、D+及びD−受信ダウンストリームUSBトークンフレーム開始(SOF)が同期パターン(SP)で開始する。クロック395(図3及び更に以下に詳細に説明する)がSP及びSOFのその他の部分においてビットの既知のパターンを検知する。既知のパターンを検知することに応答して、クロック395(図3)が発生器395Aを計測し且つより正確であるが未だに比較的粗いUSB装置クロック信号CLK1X803を発生させるために発生器395A出力信号のその選択を調節する。
ステップ265において、ステップ260において定義された粗いクロックを使用して未知のパターンをスキャンし且つ12Mbit/秒の理論的平均速度でホスト又はハブ300(図4)により送信された12,000に等しい理論的ビット数Sを区画する連続するSOFの時間マークを検知する。SOFは1ミリ秒±0.05%毎にFS装置へブロードキャストされる。
ステップ270において、クロック395はステップ265からの結果を使用し、即ち、1ミリ秒±0.05%で発生する12,000理論的ビットに等しいSの期間を発生器395A周期で計測する。その計測結果により、クロック395は、再度、精密なローカルクロック信号CLK1X803、即ち±0.25%より良い精度の信号を発生するために発生器395A出力信号のその選択を調節する。この精密なクロック信号CLK1X803は正確な平均データレート及び制御されたジッターでアップストリームトラフィックをパルス動作させる。有益的なことであるが、このクロックCLK1X803はダウンストリームの受信にも貢献する。
ループバック275はプロセスの進行中の側面を表わしており、それによれば、連続する受信SOFに応答してCLK1X803の反復的調節が行われ、従って発生器395Aの期間即ち周期の初期的不正確性、熱的ドリフト及び経年変化に対する補償を行う。
図7を参照すると、LS又はFSモードでUSB装置390へホスト又はハブ300(図4)により送信された場合のSETUPトークン400が例示されている。SETUPトークン400は有意性のあるものであり、従って、ホスト又はハブに面するLS装置により受信される最初のパケットである可能性があるのでここで説明する。このようなトークン400は図示した如く4バイトを包含しており、即ちSP(又は、単に「Sync」)バイト410、パケット識別子PIDバイト415、SETUPトークン400が送信されるターゲットUSB装置390のアドレスに対する7ビットアドレスADDR416、このターゲットUSB装置390の終了点番号に対する6ビット終了点番号ENDP0 417である。最後に、5ビット循環性冗長性チェック(CRC)CRC5 418がある。ADDR、ENDP0、CRCビットは2バイト内に完全に包含されている。
図8を参照すると、図7のSETUPトークン400のSP410バイト及びPID415バイトの詳細が示されている。USBがアイドルである場合に、LS装置は、D−375がD+上の電圧よりも大きな電圧にあるという事実により特性づけられる。このようなLS装置上において、スイッチ372はオンである。LS装置上において、スイッチ372(図4)はオンである。ホスト又はハブ300(図4)はLS装置を認識し且つLSパケットをLS装置に対してのみブロードキャストする。LSモードにおいて、平均データ処理能力はアップストリームトラフィックに対して1.5Mbit/秒±1.5%である。上述した如く、LS装置はSOFを受信することはない。DATAHDW305はホスト又はハブ300により送信されたダウンストリームデータトラフィックである。NRZIHDW360はドライバ315及び320(図4)を介してバスラインD+376及びD−375を駆動するノンリターンツーゼロプロトコルでコード化されたデータトラフィックDATAHDW305である。この場合において、受信装置390(図4)のフロントエンド396(図4)はRXDDW802を発生する。前述した如く、SETUPトークン400はこのようなLS装置390による第一受信パケットである可能性があるので、ブロック395(図3)における発生器395A信号は±1.5%における精度でLS装置390用のローカルクロック信号CLK1X803(図4)を合成するために±0.25%の精度、例えば8ビット周期303で送信されるこの既知の受信データパターンで計測することが可能である。
次に、図9を参照すると、本実施例に関連性を有するUSB FS通信のある側面が例示されている。USB FS通信の場合には、データをブロードキャストすることに加えて、ホスト又はハブ300(図4)は前に説明したSOFトークン700を周期的にブロードキャストし、そのうちの2つが示されている。これらのSOFトークン700はFSモードで動作しているUSB装置390を受信することにより応答され、スイッチ373がオン(図4)であるが、LSモードで動作している装置390によるのではなく、スイッチ372はオン(図4)である。
トークン700は図示した如く4個のバイトを包含している。最初の2つのバイトはSYNCバイト710及びPIDバイト715である。フレーム番号(「FRAME」)720及びCRC5 725は完全に更に2つのバイト内に包含されている。各々について図11、図14、図15に関連して更に説明する。
SOFトークン700はフレームインターバルタイミングを表わし、それは、前述したように、ホストによって1ミリ秒±0.05%毎にブロードキャストされ且つハブによって繰返される。1ミリ秒±0.05%のフレームインターバルは1つのフレームにおけるSOFトークン内の任意の点から相次ぐフレームのSOFトークン内の同一の点まで測定される。理論的データレートは12Mbit/秒であり、1フレームインターバル期間中にS=12,000個の理論的ビットが存在している。平均データビットレートのハブの正確性は±0.25%より良好なものでなければならないが、それらは2つの相次ぐSOF間のタイミングを可及的に1ミリ秒近くに維持することが必要とされる。ハブにおけるフレームタイミング調節はそれら自身の周波数の不正確性を補償し、例えば、−0.2%クロックを具備するハブはそれがホストから繰返す2つの相次ぐSOFの間のそれ自身のクロックの理論的11,976を計時する。FS USB装置は2つの相次ぐSOF700の間のこれらの既知の受信ダウンストリーム理論的S=12,000個のビットを利用して発生器395Aを計測し且つダウンストリームトラフィックを受信し且つアップストリームトラフィックをパルス動作するために信頼性のある±0.25%の精度で局所的クロック信号CLK1X803(図4)を合成することが可能である。
Leydier, et al.は安定であり且つ初期的に不正確な自走オシレータ周期を計測する既知の受信ダウンストリーム信号D+及びD−を利用する装置及び方法を開示しており、その結果はローカルクロックを合成するために使用される。特にSOFを受信することのないLS装置に対して、装置及び方法についての更なる詳細がそこに開示されている。例えば、既知の受信ダウンストリーム信号が例えばSETUP、IN又はOUT等のトークン内に包含されている。注意すべきことであるが、ホスト又はハブによりLS装置上で周期的にブロードキャストされるキープアライブ(keep−alive)信号はUSB装置上のオシレータを較正するために合理的に使用することは不可能である。何故ならば、キープアライブ信号のブロードキャストはSOFトークン700のブロードキャスト程精密にタイミングがとられていないからである。即ち、USB仕様2.0によれば、LS装置は、SOFが発生する全てのフレームにおいて少なくとも1個のキープアライブを見ることになる。従って、キープアライブ信号間の期間即ち周期はメータリング即ち計測において使用するのに有用なものではない。
上述したことに対比して、FSにおいて動作するUSB装置390は12Mbit/秒±0.25%の平均データレートでアップストリーム通信を発生することが要求される。例えばSETUP400(図7)のようなトークンもFS装置へブロードキャストされ、ホスト又はハブ300(図4)の精度で送信される。USB装置390は±0.05%のホストへの接続に対するより高い精度の代わりに単に±0.25%の平均データレート精度でハブへ接続させることが可能である。この±0.25%のハブからの受信精度の場合には、例えばSETUP等のトークンにおける既知のビットパターンはアップストリームトラフィックをパルス動作させるために必要な精度で発生器395A期間即ち周期を計測することは不可能である。従って、USBプロトコルに従ってクロックを発生するために本明細書において開示する好適実施例はFS通信のために以下の初期的な一連のイベントを提供する。
FS USB装置390(図4)がホスト又はハブのUSBポートへプラグインされると、ホスト又はハブ300はプルアップ抵抗371(図4及び図5)によりプルアップされたD+376上の電圧を検知する。それに応答して、ホスト又はハブは、シングルエンドゼロ(SE0)2230(図22)状態において10ミリ秒の間D+及びD−の両方をプルダウンすることによりUSB装置390が接続されているUSBポートを「リセット」させる。SE0 2230(図22)の信号処理は新たに接続された装置390ポートに対してのみ経路付けされ且つ該装置の390USB検知器30(図18)をリセットする。装置390はデフォルトアドレス0を有しており且つホスト又はハブ300によって全ての装置へブロードキャストされたD+376及びD−375上のトラフィックを受信する。即ち、例えば装置390等のFS装置はFSトラフィックを受信する。このようなトラフィックは連続するSOF700により区画されるフレームの一部である。SOF700はいずれか特定の装置390への何か特定のコマンドを担持するものではない。従って、全てのFS装置390はSOF700情報を使用することが可能である。更に、データはホスト上で稼動しているアプリケーションと装置390によってもたらされたファンクション即ち機能との間で流れる。このような各装置390は排他的アドレスを有している。SOF700を使用、即ち応答することに加えて、各装置390は、又、それに対してのみアドレスされたトラフィックに対して応答する。更に、初期的にアドレスゼロに応答するこのような各装置390はSOF700以外のその他のFSトラフィックを見る場合がある。
開示した実施例の方法及び装置は、基準クロックを合成するために、その期間中にアドレスゼロにおいて応答する装置に対する特定のコマンドが存在しないSOFにより区画即ち区切られたこれら最初のフレームを利用する。本明細書に記載したプロセスは、数ミリ秒かかる。ホスト又はハブ300が、アドレスゼロに応答して、装置390に最初のコマンドを送信すると、装置390のクロックCLK1X803は充分に正確なものでなければならず且つエラーなしで受信されるべきコマンドに対するホスト又はハブ自身の基準クロックと位相が成功裡にロックされるものでなければならない。更に、該コマンドを完了するために、装置390は12Mbit/秒±0.25%の特定した平均レートで「アクノレッジ」トークンを返さねばならない。
図9の説明に関連して前述した如く、初期化期間中に、ホスト又はハブ300はミリ秒毎にUSB装置390へSOFトークン700を送給する。装置390は全てのSFトラフィックを受信し且つSOFトークン700のPIDを認識することにより2個の相次ぐSOFトークン700を認識する。バス上にSOFトークン700以外の何かが存在する場合には、CSOF信号70(図17)が最初の認識されたSOFトークン700において開始し且つ2番目の相次ぐ認識されたSOFトークン700において停止し、その他のトラフィックを無視する。
USB装置390クロック信号CLK1X803が初期的に所要の±0.25%精度内のものでない場合には、クロック395は、クロック信号CLK1X803をアップストリーム通信のために充分に正確なものであるように調節するために装置記述子要求コマンドを発行する前に受信したSOFトークン700を利用することが可能である。より一般的に説明すると、SOFトークン700は非同期的なパケットの分配を許容するためにホスト300(及びハブにより繰返される)により精密なインターバルで例えば装置390等の全てのFS装置へブロードキャストされ、一方、同時に、例えばオーディオ装置において、FS USB装置による精密な時間スケジュールでパケットの再組立及び送給をイネーブルさせる。
本実施例の1つの側面によれば、精密にタイミングがとられたSOF700(図9)を使用してUSB装置390(図4)のクロック信号CLK1X803(図4等)を発生する。従って、どのようにしてSOF700を検知するかについての問題が発生し、SOF700を使用するためには、USB装置390によって受信された信号はデコードされねばならないが、そのデコード処理は、少なくとも、部分的に、デコード処理に応答してより微細に調節されるべき正にそのUSB装置クロック信号CLK1X803に依存する。SOF700がどのようにしてデコードされるかを理解するために、USB装置390のオンボードクロック395(図3)に対する発生器395Aの実施例について最初に説明する。
次に、図10を参照すると、USB装置390(図4)のオンボードクロック395(図3)に対して前述した発生器395Aの側面が1実施例に基づいてより詳細に例示されている。発生器395Aは高速オシレータ(HSO)900を包含している。HSO900は極性を反転させてリング状に接続された3個の差動増幅器905,910,915を有している。4番目の差動増幅器920は増幅器915と増幅器905との間の非反転バッファとして該リング内に接続されている。HSO900は、図示した如く、周期926の周期性で動作するためにイネーブル信号920によってイネーブルされる。増幅器905,910等の出力の極性は、該リングがスイッチ902へ印加されるイネーブル信号により閉じられる場合に、カスケード接続された増幅器905,910等が振動するように反転されている。差動出力増幅器925及び930,935及び940、945及び950、955及び960の夫々の対は増幅器905乃至920の各々の出力において接続されている。各出力増幅器対、例えば925/930において、これら2つの増幅器は反対の極性で接続されており、従ってそれらの出力は互いに180度位相がずれている。従って、増幅器925乃至960の出力は、波形926,936,946,956,931,941,951,961の組に示した如く、周期926の8分の1だけ段階的に遅れている。
図示した実施例に基づいて、HSO900の典型的な特性を以下にリストする。勿論、これらの特性はその他の実施例において異なる場合がある。
典型的な自走周期: 10ns
初期精度: ±30%
粒度(8位相): 1.25ns
ジッター: 50ps
周期の熱的ドリフト[−10℃乃至+80℃]: ±2%
電力消費: 0.01ワット
±30%の初期精度は、バックエンド調節のないHSO900のネイティブCMOSリングオシレータ実現例の場合に妥当性がある。ジッターは補償することが不可能であるので重要なパラメータである。選択したCMOS設計はこのジッターを最小のものとさせる。1/12MHz(83.333ns)の理論的ビット長は少なくとも8個のHSO900周期を必要とするので、8×50ps、即ち0.4nsの本来的なジッターが存在している。この0.4nsは粒度の半分(0.625ns)に加えられて、このHSO900を使用して発生される(図3、図4)クロックCLK1X803の最初の理論的ジッター、即ち約1nsとなる。HSO900のネイティブな不正確性、熱的ドリフト及び経年変化ドリフト(上にはリストしていない)はクロック395(図3)において補償される。
次に、図11を参照すると、本発明の1実施例に基づいて、例えば図9に示したようなSOFトークン700をデコーディングすることに関する側面が例示されている。図示したRXDDW802信号は差動受信器377(図4)の出力である。タイマー10がRXDDW802に応答して信号RXDD4 801を発生する。エッジ807及び808により画定されるSP710の最初のビットは使用されない。何故ならば、それは、主にUSBポートがSP710を送信するためにホスト又はハブ上で活性化された直後であるということに起因して周期精度を欠如しているからである。
特に、4ビットタイマー10は、RXDDW802のエッジ808、即ちSP710の2番目のビットb2の開始でSOFトークン700(図9)の2番目のエッジを検知することに応答して出力信号RXDD4 801を活性化させ、且つRXDDW802のエッジ812、即ちSP710の6番目のビットb6の開始でSOFトークン700の6番目のエッジを検知することに応答して出力RXDD4 801を不活性化させる。従って、活性化されたRXDD4 801の期間はRXDDW802の4個の受信ダウンストリームビットの周期であり、RXDDW802はクォーツクリスタル又はピエゾ共振器350(図4)により駆動されるホスト又はハブ300(図4)により発生される。
タイマー15はRXDDW802に応答して信号RXDD8 800を発生する。特に、8ビットタイマー15はRXDDW802のエッジ808を検知することに応答して出力信号RXDD8 800を活性化させ、且つRXDDW802のエッジ814、即ちSOFのPID715の2番目のビットb10の始め、即ちトークン700の8番目のエッジを検知することに応答して出力信号RXDD8 800を不活性化させる。従って、活性化されたRXDD8 800の期間はクォーツクリスタル又はピエゾ共振器350により駆動されるホスト又はハブ300により発生された8個の受信ダウンストリームビットの期間である。対となった遷移は受信ジッターを最小とさせるので、4ビット周期及び8ビット周期が選択されている。
次に図12を参照すると、インターバル1210に関連してHSO周期を計測することと均等なHSO900周期の8分の1に関連してRXDD4 801が活性化される時間インターバル1210の期間を計測する側面について例示してある。即ち、ホスト又はハブ300により送信されるビットにたいする平均ビット期間即ち周期は±0.25%以内であることが知られており、且つRXDD4 801はこのような4個のホスト又はハブ300が送信したビットに対応する時間インターバル1210に対して活性化されるので、±0.25%に近づく精度でHSO900の動作周波数を決定するためにHSO900(図10)の出力926,936,946等と時間インターバル1210の4ビットカウンタ20による比較が行われる。特に、RXDD4 801の活性化に応答して、カウンタ20はHSO出力926,936,946等の下降エッジのカウントを開始し、そのうちで、8個の8分の1HSO周期を区切る各HSO900動作周期に対して9個が存在している(勿論、上昇エッジを下降エッジの代わりにカウントすることが可能である)。例示した例においては、出力信号946のエッジ91がRXDD4 801が活性化された後の最初の下降エッジであり、且つ出力信号931のエッジ92はRXDD4 801が不活性化される前の最後の下降エッジである。エッジ91乃至エッジ92でカウントされる下降エッジの数は値M21としてカウンタ20により出力される。従って、M21の値はホスト又はハブ300の4ビット周期におけるHSO900の8分の1周期の数を表しており、HSO900周期の8分の1に対し系統誤差が±1であり、約±1/266であって、それに対し±0.25%が加算されねばならない。その他の全ての測定誤差は説明の便宜上議論しない。
次に図13を参照すると、インターバル1310に関連してHSO900周期を計測することと均等な8分の1HSO900周期に関連してRXDD8 800が活性化される時間インターバル1310の期間を計測する側面が例示されている。即ち、ホスト又はハブ300により送信される4ビットに対する平均ビット期間は±0.25%以内であることが知られており且つRXDD8 800はこのような8個のホスト又はハブ300が送信したビットに対応する時間インターバル1310に対して活性化されるので、ほぼ±0.25%に近づく精度でHSO900の動作周波数を決定するためにHSO900(図10)の出力926,936,946等と時間インターバル1310の比較が8ビット計測回路25により行われる。特に、RXDD8 800の活性化に応答して、カウンタ25がHSO出力926,936,946等の下降エッジのカウントを開始し、それらのうちで、8個の8分の1HSO期間即ち周期を区切る各HSO900動作期間に対して9個存在している(勿論、下降エッジの代わりに上昇エッジをカウントすることが可能である)。例示した例においては、出力信号946のエッジ101は、RXDD8 800が活性化された後の最初の下降エッジであり、且つ出力信号956のエッジ102は、RXDD8 800が不活性化される前の最後の下降エッジである。エッジ101からエッジ102へカウントされた下降エッジの数は値N26としてカウンタ25により出力される。従って、N26の値は、ホスト又はハブ300の8ビット周期においてHSO900の8分の1周期の数を表わしており、HSO900周期の8分の1に対する系統誤差は±1であり、約±1/533であって、それに対して±0.25%が加算されねばならない。その他の全ての測定誤差については説明の便宜上議論しない。
公知の4ビット受信期間1210におけるものと比較して、公知の8ビット受信期間1310におけるHSO900の8分1を約2回カウントすることは、1ダウンストリームビット期間を基準にして約2だけHSO900周期の8分の1の計測精度を増加させる。何故ならば、HSO900周期の±1 8分の1の測定誤差はHSO900周期の8分1に2回適用されるからである。
代替例として、図12及び図13において、HSO900周期の8分の1の代わりにHSO900周期でインターバル1210及び1310を計測することが可能である。誤差は夫々±1/33及び±1/66であり、それに対して±0.25%が加算される。
次に、図14を参照すると、USB装置クロックCLK1X803を合成する側面がダウンストリームシーケンスに対して示されている。L27はシリコンブロックの製造時に非揮発性メモリ395C(図3)内に格納されており且つ初期化及び後のアップデートのために使用される数値である。スタートアップフェーズ期間中(図22に示されており且つ以下に説明する)、L27はHSO周期の8分の1の数として表わされた1つの理論的FSビットの期間である。図示した実施例を説明するために、HSO周期が10nsであると仮定する。1個のFSビットの理論的期間は83.33nsであり、従ってL27は初期値66.667が与えられる。何故ならば、83.33nsは10ns周期の66.667個の8分の1だからである。L27のこの値は、究極的に、相次ぐSOF(図9)によるHSO周期の計測毎にアップデートされ、そのうちの第一及び第二の部分710及び715が図14に示されている。
スタートアップフェーズの動作フェーズ1 501期間中に、バスはアイドルであり且つダウンストリームトラフィックは存在しない。JからKへの遷移807は動作フェーズ2 502の始めを表わし、それに応答して、位相選択器30が以下の如くにしてCLK1X803を不活性化させる。位相選択器30は、出力CLK1X803として、遷移807後の次の下降エッジを有するHSO900信号926,936,946等のうちの1つを選択する。次いで、位相選択器30はL/2をカウントし、尚Lは816においてCLK1X803を再度活性化させる前にHSO周期T1の8分の1の数である。816においてのCLK1X信号803の上昇エッジに応答して、即ちビットセル期間中であるがアナログ受信器377(図4)によるリップルの外側において、NRZIDDW804信号発生器論理35がRXDDW802のビットb1をサンプルし、且つそれに応答してNRZIDDW信号804下降エッジを発生し、USBシリアルエンジン397(図3)に対して、SP710の最初のビットb1が検知されたことを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。
次のSP710エッジ808は、以下のタイミングに従って、位相選択器30をしてCLK1X803を不活性化させる。エッジ808に応答して、位相選択器30はHSO900信号926,936,946等の中から出力CLK1X803に対する信号、即ち次の下降エッジを有する信号926等のうちの1つを選択する。次いで、位相選択器30はL/2をカウントし、尚Lは817においてCLK1X803を再度活性化させる前のHSO周期T1の8分の1の数である。817におけるCLK1X信号803の上昇エッジに応答して、即ち、ビットセルの期間中であるがアナログ受信器377(図4)によるリップルの外部において、信号発生器論理35がRXDDW802のビットb2をサンプルし、且つそれに応答して、NRZIDDW804のリーディングエッジを発生し、それは、USBシリアルエンジン397(図3)に対して、SP710の2番目のビットb2が検知されたことを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。検知器395E(図18)の観点から、b1及びb2はSP710の初期の段階と一貫性がある。
次のSP710エッジ809は、選択器30をして同様な態様でCLK1X803を不活性化させる。即ち、エッジ809に応答して、位相選択器30はHSO900信号926,936,946等の中から、次に発生する下降エッジを有するものを選択する。次いで、位相選択器30は818におけるCLK1Xの再活性化の前にL/2をカウントする。CLK1X信号803の818における上昇エッジに応答して、論理35はRXDDW802のビットb3をサンプルし且つそれに応答してNRZIDDW信号804の下降エッジを発生し、それは、USBシリアルエンジン370F(図3)に対して、SP710の3番目のビットb3が検知されたことを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。検知器395E(図18)の観点から、b1,b2,b3はSP710の初期の段階と一貫性がある。
次のSP710エッジ810は、再度、選択器30をして同様の態様でCLK1X803を不活性化させ、次いで、同様に819におけるCLK1Xの再活性化の前にT1待機する。819におけるCLK1X信号803の上昇エッジに応答して、論理35はRXDDW802のビットb4をサンプルし、且つ、それに応答して、NRZIDDW信号804のリーディングエッジを発生し、それは、USBシリアルエンジン397(図3)に対して、ST710の4番目のビットb4が検知されたことを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。検知器395E(図18)の観点から、b1,b2,b3,b4はSP710の初期の段階と一貫性がある。
次のSP710エッジ811は、再度、位相選択器30をして同様の態様でCLK1X803を不活性化させ、且つ820におけるCLK1X803の再活性化の前に待機する。820におけるCLK1X信号803の上昇エッジに応答して、論理35はビットb5をサンプルし且つそれに応答してNRZIDDW信号804の下降エッジを発生し、それは、USBシリアルエンジン397(図3)に対して、SP710の5番目のビットb5が検知されたことを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。検知器395E(図18)の観点から、b1,b2,b3,b4,b5はSP710の初期の段階と一貫性がある。フェーズ2 502期間中に、ダウンストリームRXDDW802の全てのビットセルはロックオンするためにCLK1X803に対する遷移を獲得している。好適実施例において上述した如く、±30%において既知の実際的なHSO周期は未だにダウンストリームトラフィックをサンプリングすることを可能とさせる。又、フェーズ2 502期間中に、カウンタ20は4個のダウンストリームビットRXDD4期間中にHSO周期のM個の8分の1をカウントしており且つそれをフェーズ3 503に対して使用可能とさせている。
遷移812は動作フェーズ3 503の始めを表わしており、それに応答して、位相選択器30は、再度、同様の態様でCLK1X803を不活性化させ、HSO信号926,936,946等の中から選択する。次いで、821においてCLK1Xを再度活性化させる前に、位相選択器30は、フェーズ2 502の終りに決定されたHSO900周期のM/8個の8分の1をカウントする。値M/4は時間インターバルT2における8分の1HSO周期の数であり、フェーズ2 502の終りにおいて評価されたダウンストリームビット期間と等価である。CLK1X803の821における上昇エッジに応答して、ビットb6がサンプルされ、且つNRZIDDW信号804のリーディングエッジが発生され、それは、USBシリアルエンジン397(図3)に対して、SP710の6番目のビットb6が検知されたことを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。検知器395E(図18)の観点から、b1,b2,b3,b4,b5,b6はSP710の初期の段階と一貫性がある。
この時点において、未だにフェーズ3 503にあり、SOFのPIDの始めの次のSP710の終わりはRXDDW802において何等遷移を発生するものではなく、従って位相選択器30はM/4の累積的カウントの結果に応答して継続してCLK1X803を規制する。CLK1Xエッジ822,823,824は、夫々、エッジ813からT2/2、T2/2+T2、T2/2+2T2において位置されている。
同様に、ビットb7、ビットb8、ビットb9は、夫々、CLK1X信号803エッジ822,823,824,に応答して論理35によりサンプルされる。検知器30(図18)の観点から、ビットb1乃至b8はSP710と一貫性があり且つビットb9はSOFのPID715と一貫性がある。基準クロックCLK1X803はエッジ812及び813によりRXDDW802と同相にロックされる。
フェーズ3 503期間中に、ダウンストリームRXDDW802の全てのビットセルがロックオンすべくCLK1X803に対する遷移を獲得するものではない。フェーズ2 502からのM21の知識がビットb8及びビットb9をサンプルするために必要である。又、フェーズ2 502及びフェーズ3 503期間中に、カウンタ25は8個のダウンストリームビットRXDD8期間中の8分1HSO周期の数であるNをカウントしており且つそれをフェーズ4 504に対して使用可能とさせている。遷移814はフェーズ4 504に対する動作の開始を表わし、それに応答して、位相選択器30は、再度、上述したのと同様の態様でCLK1X803を不活性化させ、即ちHSO900信号926,936,946等から選択する。次いで、825において、CLK1Xを再度活性化させる前に、位相選択器30はN/16をカウントし、それはフェーズ3 503の終りに決定されている。値N/8はフェーズ3 503の終りにおいて評価されたダウンストリームビット期間と等価である時間インターバルT3における8分の1HSO周期の数である。CLK1X803の825における上昇エッジに応答して、ビットb10がサンプルされ且つNRZIDDW信号804のリーディングエッジが発生され、それは、USBシリアルエンジン397(図3)に対して、10番目のビットb10がSOF PID715と一貫性があることを表わす。基準クロックCLK1X803はRXDDW802と同相にロックされる。この時点において、未だフェーズ4 504にあり、位相選択器30は、N/8の累積的カウントの結果に応答して継続してCLK1X803を規制する。CLK1Xのエッジ826は814からT3/2+T3に位置している。次に、RXDDW802における何等かの遷移はCLK1X803を不活性化させ且つ新たなT3/2周期を開始させ、尚CLK1X803はダウンストリーム信号RXDDW802をサンプルするために再活性化される。
同様に、ビットb11からSOFのビットb32(不図示)に至るまで、CLK1X803信号に応答して論理35によりサンプルされる。検知器395E(図18)の観点から、ビットb1乃至b32はSOFトークンパターン(PID、数、CRC)に対してチェックされる。
フェーズ4 504期間中に、ダウンストリームRXDDW802の全てのビットセルがロックオンすべくCLK1X803に対する遷移を獲得するものではない。フェーズ2 502及びフェーズ3 503からのM26の知識がSOFのパターンにおける残りの未知のビットをサンプルするために必要である。又、フェーズ4 504期間中に、SOFのPIDが検知された場合には、信号CSOF70が活性化され、それはエッジ81図15である。
1実施例において、L,M,N,Rは整数として表わされる。
上述したことを要約すると、スタートアップモードにおいて、動作フェーズ2 502期間中に、所定の格納された値L27に基づいて且つ同期パターン(SP)エッジに対して同期されたHSO900出力を利用して、ダウンストリーム信号RXDDW802が合成されたCLK1X信号803でサンプルされる。SPは、常に、何よりも前に送信される。
動作フェーズ3 503及び動作フェーズ4 504期間中に、ダウンストリーム信号RXDDW802はHSO900周期、夫々、M21及びN26を計測し且つ合成されたCLK1X信号803をHSO900出力と同期させるために使用される。
動作フェーズ2 502、動作フェーズ3 503及び動作フェーズ4 504期間中に、CLK1X803はダウンストリーム信号RXDDW802をサンプルして検知器395E(図18)に対するデータNRZIDDW804を発生してSOFとして既知のビットパターンを検知する。SOFが検知されると、CSOF信号70が活性化される。
更なる例示を行うために、以下の如くに特定のタイミングを有する実施例について検討する。HSO900の実際の周期が予測されたもの、即ち12nsよりも20%より大きいものであり且つHSO900は10nsで稼動するものと仮定されていたのでL27は値66.667が与えられたものと仮定する(勿論、その他の実施例において、HSO周期は異なる場合がある)。エッジ807が検知されると、信号926乃至961のうちの1つが選択され、例えば、信号926が選択される。次いで、HSO900の8分の1周期の33の後に、RXDDW信号802がサンプルされる。従って、この実施例に基づくサンプリングはエッジ807+49.5ns±1.5nsにおいて発生し、一方それは、より理想的には、83.33ns/2、即ち41.66nsにおいて発生するものである。
次に、ビットb2が遷移808によりリセットされた位相選択器論理30でサンプルされ、以下同様である。ビットb2乃至b5が検知されると、4個のビット内に例えば信号926等のHSO900信号の幾つのサイクルが存在しているかが分かり、それに対応して、M21に対する値(図12参照)を決定することが可能である。この時点から、HSO900の実際の周期と±0.25%の精度でホスト又はハブ300により送信されたRXDDW802信号のビットの期間との間に既知の関係が存在している。
4ビットダウンストリーム期間1210:
(1/12MHz±0.25%)×4=333.33ns±0.25%
1210におけるHSO900のM21 8分の1周期:
333.33ns/1.5ns=222±1
HSO900周期と関連するM21はホスト又はハブ300により送信されたビット周期の±1%に近い周期を発生する。従って、この時点から、安定し且つ不正確なHSO900は較正されており且つ現在その周期は±1%で既知である。
この改善された精度は、特に、有益的である。何故ならば、ビットb7の後に、SOFトークン700(図9)に対するビットパターンは静かなゾーンに入り、その期間中に、ビット状態を検知するために改善された精度が存在せねばならないからである。検知したビットb6乃至b9の状態が一貫性があり且つそれによりPID SOF715を表わす場合には、検知されたビットb6乃至b9はクロック395(図4)タイミングの改善された知識を提供する。受信した8個のビットb2乃至b9に関連して、
8ビットダウンストリーム期間1310:
(1/12MHz±0.25%)×8=666.66ns±0.25%
1310におけるHSO900のN26 8分の1周期:
666.66ns/1.5ns=444±1
HSO900周期と関連するN26はホスト又はハブ300により送信されたビット周期の±1%内の周期を発生する。この時点から、有効なSOFトークン700が受信されたことを完全に確認するために更に23個のビットを検知し、サンプルし、且つデコードせねばならない。
上述したことから理解されるように、上述した方法及び構成に従って±1%内における精度で且つダウンストリーム信号を受信するのに充分であるが±0.25%内のリズム精度でアップストリームトラフィックをパルス動作させることのない精度でクロック信号CLK1X803を発生するのに単に単一のSOFトークン700を検知することで充分である。この精度は相次ぐSOFトークン700を検知することにより可能である。
次に図15を参照すると、上述した如くL27、M21、N26パラメータを使用して相次ぐSOFを検知する側面が示されている。図9に示したように、SOFトークン700はトークンSOF700をブロードキャストするホスト内の高度に正確なクロックにより決定されるように、1ミリ秒±0.05%だけ時間において分離されている。図9に関連して説明したように、1ミリ秒の精度はハブにより顕著に変更されることはない。図9及び15に示したように、最初のSOFトークン700はSPバイト710、PID及びPID補元(PIDB)バイト715、フレーム番号720及びCRC5 725を有しており、且つ2番目のSOFトークン700はSPバイト730、PID及びPID補元(PIDB)バイト735、フレーム番号740、CRC5 745を有している。
USB上での送信のために、DATAHDW305信号がノンリターンツーゼロ反転(NRZI)フォーマットでエンコードされ、それに従って、NRZIHDW306信号は論理「0」状態を有する各データ信号ビットに対して状態を変化させる。差動NRZIHDW306信号がUSB装置390(図4)差動受信器377(図4)による受信のためにUSBのD+376及びD−375ライン上のホストTXDM送信器315及び320(図4)により駆動され、それは、応答してRXDDW820信号を発生する。
両方のトークンに対する同期バイト710及び730のためのDATAHDW信号305は図示した如く「00000001」であり、それは図示した如く対応するNRZIHDW360信号「01010100」となる。両方のトークンに対するパケット識別子部分PID及びPIDBSOF715及び735に対するDATAHDW信号305は「10100101」であり、それは、図示した如く、対応するNRZIHDW信号306「01101100」となる。
図15に示した最初の例のSOFトークンの場合、該トークンは十進数で表わしたフレーム番号1650に対するものである。従って、最初のトークンに対するフレーム番号部分720に対するDATAHDW信号305は十進数1650の二進等価物、即ち図示した如く、「01001110011」であり、それは、図示した如く、対応するNRZIHDW306信号「11011110111」となる。図15に示した2番目のSOFトークンの場合には、該トークンはフレーム番号1651に対するものであり、従って2番目のトークンに対するフレーム番号部分740に対するDATAHDW信号305は「11001110011」であり最小桁ビットは左側で(即ち最初にブロードキャストされる)、それは、図示した如く、対応するNRZIHDW306信号「00100001000」となる。
循環冗長性チェック部分725及び745は夫々の先行するフレーム部分720及び740に対するDATAHDW信号305に依存する。フレーム720及び740は相次ぐSOFを特性づける。
フェーズ4 504(図14)期間中、SOF700が検知され且つCSOF信号70が81において活性化され、SOFのPID715が検知されると、相次ぐSOFが検知される場合に、CSOF信号70が82において不活性化される。
図16を参照すると、タイマー40が示されている。タイマー40はRXDDW信号802を受信し且つそれに応答してCSOF信号70を発生する。再度図15を参照すると、CSOF信号70に対するタイミングの詳細が示されている。この実施例によれば、タイマー40は最初のSOF700バイト715のSOFPID部分の2番目のビットの下降エッジに応答して時間t0においてCSOF信号70を活性化させる(これは任意的な選択である。信号70は1つのSOF700から次のものへ一貫性が維持される限り、SOF700における任意の点に応答して活性化させることが可能である)。1ミリ秒の後に、時間t0+1ミリ秒±500nsにおいて、タイマー40(図16)は2番目のSOF700バイト735のSOFPID部分の2番目のビットの下降エッジを検知し且つそれに応答してCSOF信号70を82において不活性化させる。
次に、図17を参照すると、相次ぐSOFトークン700(図9)の間の信号926(図10)のようなHSO900信号の周期の数をカウントすることに関する側面が例示されている。上述したように、CSOF信号70はn番目のSOFトークン700におけるある所定の点において81において活性化され且つ次に続くトークン700、即ちn+1番目のトークン700における同一の点において即ち82において不活性化される。このCSOF信号70が活性化されるフェーズがインターバル1510として図17に示されている。カウンタ45がこのCSOF信号70及びHSO900(図10)信号のうちの1つ、即ち信号926を受信し且つインターバル1510期間中において信号926の周期の数をカウントする。この実施例においては、カウンタ45は信号CSOF70の活性化81に続く信号926の最初の上昇エッジ83において周期のカウントを開始し且つインターバル1510期間中、即ちCSOF70の不活性化82前の信号926において発生する最後の上昇エッジ84において停止する。その結果は出力され且つ値R46としてカウンタ45により格納される。
HSO900の公称周期が10nsである前述したタイミングの例から、R46の値は±0.001%の精度と均等な約100,000の程度であると予測され、従って8分の1HSO900周期によるカウントは必要ではない。
図9に関連して前述したように、ホスト300は全てのFSUSB装置に対して各ミリ秒毎にSOFトークン700をブロードキャストする。USB装置390はトークン700のPID及びフレーム番号を認識することによって2つの相次ぐSOFトークン700を認識する。然しながら、バス上にSOFトークン700以外の何か他のものが存在する場合には、CSOF信号70は最初に認識されたSOFトークン700においてタイマー40(図16)により活性化され且つ2番目の相次ぐ認識されたSOFトークン700において不活性化され、3番目に認識されたSOFトークン700において活性化され、以下同様であり、その他のトラフィックを無視する。理解すべきことであるが、カウンタ45は繰返し信号926周期をカウントし且つCSOF信号70のフェーズ即ち位相に応答してパラメータR46を更新し、即ち両方共例えばインターバル1510のようなCSOF信号70が活性化されるインターバル及びCSOF信号70が不活性化されるインターバルに応答する。この実施例においては、値R46は2ns毎にリフレッシュされる。本発明はL26、M21、N26、R46と関連するHSO900周期を使用してCLK1X803周期を決定する場合の初期的な不正確性を補償するものであることが知見された。この実施例において説明したように、R46をリフレッシュする2nsの周期性は、更に、温度及び経年変化に起因するドリフトも補償する。
図18を参照すると、1実施例に基づくクロック395の側面を例示したブロック図が示されている。クロック395は、発生器395A、タイマー10,15,40、カウンタ20,25,45及び図3及び図10乃至17に示した位相選択器30を包含している。クロック395はCPU394からの信号391によりモニタされる。シリアルエンジン397からの信号105が検知器395Eへ供給される。
クロック395は、又、スタートアップフェーズ期間中に位相選択器30へ供給するパラメータL27に対する値を具備する非揮発性メモリ395Cと関連するメモリ制御器50を包含している。パラメータR46が論理45によって上述した如くに決定された後に、制御器50は非揮発性メモリ内のL27に対する値をT=8R/12,000であるR46から派生された値で置換し、その後に、TはパラメータL27に対し更により正確な値を供給する。前述したように、クロック信号CLK1X803はUSBバスラインD+376及びD−375(図4)上の受信ダウンストリーム信号から派生される信号RXDDW802及びL27、M21、N26に基づくエッジ等のHSO900信号926を選択することにより位相選択器30により合成される。
図19を参照すると、本発明の1実施例に基づくより詳細な処理の流れが例示されている。以下において、図14及び18に示した要素も参照する。
ステップ280において、バス(図4)のD+ライン376及びD−ライン375上においてJからKへの遷移が検知される。このJからKへの遷移はRXDDW信号802における遷移807に対応しており、且つフェーズ1 501において発生する。
次にステップ281において、パラメータL27が位相選択器30によって使用されてクロック信号CLK1X803を合成し且つ検知器395EがSP710の最初の5個のビットをデコードする。この合成処理はHSO900出力と共に行われ且つデコード処理はRXDDW信号802から行われる。受信したビットの2番目乃至5番目がカウンタ20によって使用されてM21を決定する。これはフェーズ2 502において発生する(注意すべきことであるが、メモリ制御器50(図18)はパラメータM21に応答してL27を置換する。即ち、L27はRXDDW802の4個の受信ビットにおいてオシレータ信号926等(図10)のうちの1つのM個の8分の1の周期が存在しているという知識に基づいて再スケールされる。この値M21は4ビットインターバルに対してのものであるので、それはビット期間内にオシレータ信号926等のうちの1つの幾つの周期が存在するかのより正確な分量を与える)。
次に、ステップ282において、パラメータM21が位相選択器30によって使用されてクロック信号CLK1X803を合成し且つ検知器395EがSP710の次の4個のビットをデコードする。この合成処理はHSO900出力と共に行われ且つ該デコード処理はRXDDW信号802から行われる。8個の受信ビットb2乃至b9がカウンタ25によって使用されてN26を決定する。これはフェーズ3 503において発生する(注意すべきことであるが、メモリ制御器50(図18)がパラメータN26に応答してL27を置換させる。即ち、L27は、RXDDW802の8個の受信ビットにおけるオシレータ信号926等(図10)のうちの1つのN26個の8分の1周期が存在しているという知識に基づいて再スケールされる。この値N26は8ビットインターバルに対してのものであるので、それはビット期間内にオシレータ信号926等のうちの1つの幾つの周期が存在するかのより正確な分量を与える)。
次に、ステップ283において、パラメータN26が位相選択器30によって使用されてクロック信号CLK1X803を合成し且つ検知器395Eが最初のSOFの次のビットをデコードする。この合成処理はHSO900出力と共に行われ且つ該デコード処理はRXDDW信号802から行われる。これはフェーズ4 504において発生する。
次に、ステップ284において、パラメータN26は、未だに、位相選択器30によって使用されてクロック信号CLK1X803を合成し且つ検知器395Eは次のSOFをデコードする。この合成処理はHSO900出力と共に行われ且つ該デコード処理はRXDDW信号802から行われる。カウンタ45がホスト又はハブ300(図4)により送信されたSOFの間のHSO900周期の数R46をアップデートする。上述した実施例のタイミングにおいて、SOF間のインターバル内に理論的には12,000個のデータビットが存在している。ここで、SOF間のインターバルにおけるデータビットの数は「S」と呼称する。これはフェーズ5 505において発生する。
次に、ステップ285において、新たなパラメータR46を使用して、1ビットにおけるHSO900周期の8分の1の数であるT=8R/Sに基づいてアップストリームトラフィックのパルス動作のタイミングをとるために使用される。これはフェーズ5 505において発生する。非揮発性メモリ395Cが、メモリ制御器50によって制御されてTでアップデートされる。即ち、TがL27を置換する。
ループバック286は熱的ドリフト及び経年変化を補償するプロセスの進行中の側面を表わしている。即ち、各新たな対の相次ぐSOFの場合に、R46に対して新たな値が決定され且つCLK1X信号803がそれに従って調節される。
次に、ステップ287において、装置がパワーオフされ且つステップ280において新たなパワーオンシーケンスの準備がなされ、ステップ281に続き、そこでL27は、今や、古いTである。例えば製造現場において本装置をテストしている間に実施されるアップデートは上述した理論器66.667よりもより適切な値でHSO900周期を予めスケールする。
別の実施例においては、ループ286が完了すると、分岐289によって示したようにステップ281及び282をバイパスすることが可能である。
図20は合成したクロックCLK1X803でUSBデータラインD+376及びD−375上のデータをパルス動作させる側面を例示している。DATAUP384がアップストリームデータを記述する。これは、ST750及びDAT0 755用のPIDを有するフレームの開始である。NRZIDUP385はNRZIでエンコードされたDATADUPである。
T=8R/12,000であると仮定する。
t0はHSO900出力信号のうちの1つからの時間基準である。
t1=t0+T(HSO900周期の8分の1)。
t2=t0+2T(HSO900周期の8分の1)
t3=t0+3T(HSO900周期の8分の1)
・・・・・
tn=t0+nT(HSO900周期の8分の1)
この実施例は±0.25%よりも良好な非常に高い精度を使用するものであり、その場合に、1つの理論的ビットにおける8分の1HSO900周期の数Tが計算され且つ累積的な態様で同一のHSO900から時間における点を選択してCLK1X803を合成し、このパラメータTはUSBに対してt0,t1,t2,...,tnにおいてデータをパルス動作させる。
数値例はこのことを明瞭にさせる。
HSO900の実際の周期は12nsである。
タイミング粒度=HSO周期900の1/8=1.5ns
S=1msにおける理論的ビット数=12,000
R=1msにおけるHSO周期の数=83,333
T=1個の理論的ビットにおけるHSO周期の8分の1の数=8R/S=55.555
t1=t0+55(1.5ns)
t2=t0+111(1.5ns)
t3=t0+166(1.5ns)
・・・・・
tn=t0+整数[n(55.555)](1.5ns)
自走オシレータであるために同一のタイミング原点を維持し且つ8分の1周期だけ位相偏移されたHSO900の8個の信号から最も適切なエッジを選択することにより平均データビットレートが保証される。平均データビットレートの精度は±0.25%より良好である。何故ならば、Tは理論的に±0.05%にあるものと知られているからである。T=55.555がL27内に格納される(前にL27は66.667の値を有していた)。従って、HSOの初期的に不正確な周期は補償される。それ以後、本装置がパワーアップされる度に、CLK1X803周波数は、例えダウンストリームトラフィックを受信する前であっても、その所望の12MHzの値に非常に近い。この実施例は、例えハブ又はホスト供給信号が、例えば、テストにおいて装置がUSBインプリメンターフォーラムによって認証されるべく合格せねばならないように仕様の周辺にある場合であっても、本装置を予定した通りに機能することがより可能であるようにさせる。ジッターは図21のように解析される。
上の例は、又、クロック信号CLK1X803を供給するためにオシレータ900出力信号を次々に逐次的に選択することによりローカルクロック信号CLK1X803の周期Pをシンセサイザー395Dがどのようにして調節するかを例示するのに有用である。即ち、クロック信号CLK1X803のエッジ位置が選択されて周期Pを調節し、且つタイミングはLに応答する。例えば図12を参照すると良い。想起されるように、図12はタイミング信号RXDD4 801のインターバル1210に対して断片的周期、即ちオシレータ900の8分の1の周期の数Mをカウントするために信号926等の1をどのように選択するかを例示している。その選択は信号926等のエッジ、例えばタイミング信号RXDD4 801に関する信号946のエッジ91等の発生に応答する。Mに対する断片的周期をカウントすることはローカルクロック信号CLK1X803の周期Pを調節することとは異なっているが、例えば、図12の側面は周期Tの調節を例示するのに有用である。特に、信号926がクロック信号CLK1X803を供給するために選択された第一オシレータ900信号であり且つ信号926の上昇エッジが上述した数値例における時間t0として発生する場合について検討する。思い出されるように、Lはより正確な値T(それはRの関数)によって置換されている。クロック信号CLK1X803の下降エッジは上昇エッジの後オシレータ900の55.55 8分の1周期において発生すべきである。55.55は6個の完全な周期と0.944の8分の1周期である。従って、信号926を供給する6個のサイクルの後、位相選択器30(図18)が信号926等のうちの別の1つを選択してクロック信号CLK1X803を供給する。又、0.944は7.55に8分の1であるので、信号961は次の信号として選択される。何故ならば、信号961は信号926の後の7番目の即ち整数(7.552)である8分の1周期信号だからである。即ち、信号961は信号926に関して7/8位相偏移されている。
図21は連続する遷移456TDJ1 450、7ns及び対となった遷移457TDJ2 455、8nsにおいて遭遇するジッター仕様を例示している。全てのジッターがCLK1X803クロック合成から来ており且つそのクロック合成がHSO900周期の8分の1のみに依存するものであった場合には、HSO900周期の8分の1はTDJ1 450、7ns未満であるべきである。然しながら、トランシーバ382及び383(図5)はジッターに対して約2ns寄与し且つHSO900はそれ自身のジッターを有しており、それは約0.4ns(50ps×8)寄与する。従って、HSO900周期の8分の1は4.6ns未満であるべきである。
該実施例においては、HSO周期の8分の1が2ns未満に選択されており、それは、勿論、4.6ns未満であり、従って、ジッター仕様は満足される。
ローカルクロック信号CLK1X803の周期Pは位相選択器30によって選択されるHSO926のうちの2つによって区切られ、従ってチップ370上で発生される周期Pは理論的ビット期間に近いものである。
図22は、本発明の実施例に基づいてバス上のUSBFS装置390へ接続2210した後の最初のミリ秒を例示している。以下において図4も参照する。時間基準2210において装置390を接続した後に、装置390は、パワーが印加されることを検知する。セトリング周期の後、装置390はスイッチ373を使用してプルアップ抵抗371をD+へ接続することによりそれ自身をUSBへ取付け2220、それにより、ホスト又はハブ300はFS装置390を認識する。装置390は時間基準2250においてHSO900を開始させる。
装置390の取付けに応答してホスト300はシングルエンドゼロ(SE0)を強制させ2230、次いでホスト又はハブ300がSOF700のブロードキャストを開始させるまでバスをアイドル状態とさせる2240。SOF700の初期的なブロードキャストが行われると、スタートアップフェーズが存在し、それは図14に示したフェーズ1 501乃至フェーズ4 504を包含しており、R46の永久的なアップデートが続き、次いでフェーズ5 505の場合におけるL27が続く。パワーが装置390から除去されると、パラメータR46(図18)が決定され且つ制御器50(図18)と関連する非揮発性メモリ395Cがアップデートされる。この動的な値は、最初のスタートアップに対して元々供給されたL27の初期的な値の代わりに次のスタートアップフェーズ期間中にL27に対して使用される。1つの変形実施例は前のパワーアップ/パワーダウンシーケンスにおいてアップデートが行われたことを検知する付加的な回路を提供し、従って図19の分岐289におけるようにスタートアップフェーズをバイパスする。
以上、本発明の具体的実施の態様について詳細に説明したが、本発明は、これら具体例にのみ制限されるべきものではなく、本発明の技術的範囲を逸脱することなしに種々の変形が可能であることは勿論である。例えば、理解すべきことであるが、本明細書に記載した方法及び構成は、例えばリムーバブルセキュアコンテント装置等のUSB集積化チップカード(USB−ICC)の特定のニーズに答えるべく構成されたものであっても、一般的に多用なUSB装置に対して適用可能なものである。又、特許請求の範囲においては例えばL,M,N,R等の変数について言及しており且つこれらの変数は本明細書において特定の数のビット及びオシレータ周期(期間)又はその一部において説明しているが、これらの変数の名称及び特定のビット数及び周期等は単に例示的なものであってこれらの特定的なものに制限されるべきものではないことを理解すべきである。
第一の従来技術のUSB装置を示した概略図。 第二の従来技術のUSB装置を示した概略図。 本発明の1実施例に基づくUSB装置を示した概略図。 本発明の1実施例に基づいてダウンストリームトラフィック状態においてより詳細に図3のUSB装置を示した概略図。 本発明の1実施例に基づいてアップストリームトラフィック状態においてより詳細に図3のUSB装置を示した概略図。 本発明の1実施例に基づくフローチャート。 USB2.0によるSETUPトークンパケットの概略図。 図7のSETUPトークンパケットのタイミング線図。 USB2.0による連続するフレーム開始(SOF)トークンの概略図。 本発明の1実施例に基づく高速オシレータ(HSO)の概略図。 図9のSOFトークンのうちの1つの一部のタイミング線図及び本発明の1実施例に基づいてトークンの受信したRXDDWから二次的信号RXDD4及びRXDD8を発生する状態を示した概略図。 本発明の1実施例に基づいてHSOの8分の1周期の数Mを発生するために図9のHSOの出力を使用して図11のRXDD4信号の期間を計測する状態を示した概略図。 本発明の1実施例に基づいてHSOの8分の1周期の数Nを発生するために図9のHSOの出力を使用して図11のRXDD8信号の期間を計測する状態を示した概略図。 図9のSOFトークンのうちの1つの一部のタイミング線図及びNRZIDDWを発生するためにダウンストリーム信号RXDDWをデコードする状態を示した概略図。 本発明の1実施例に関しての優位性の観点において2つの連続するSOFトークン及び関連する信号連続するフレーム開始(CSOF)のある詳細を示したタイミング線図。 本発明の1実施例に基づいて受信したRXDDW信号から二次的信号CSOFを発生する副論理ブロックを示した概略図。 図9のHSOの出力を使用してCSOF信号期間を計測する状態を示した概略図。 本発明の1実施例に基づくクロック回路用の論理を示した概略図。 本発明の1実施例に基づくより詳細な処理の流れを示したフローチャート。 本発明の1実施例に基づいてD+及びD−上にアップストリームFSトラフィックを発生する状態を示した概略図。 本発明の1実施例に関しての優位性の観点においてUSB仕様ジッター条件の側面を示した概略図。 本発明の1実施例に基づいてUSBFS装置がパワーを受取った後の数ミリ秒を示した概略図。
符号の説明
370 シリコンブロック
390 USB装置
392 インターフェース
393 メモリ
394 中央処理装置(CPU)
395 クロック
395A 発生器
395B メーター
395C メモリ
395D シンセサイザー
395E 検知器
396 フロントエンド
397 USBエンジン
398 ファンクション(機能部)

Claims (75)

  1. ユニバーサルシリアルバス(USB)上の信号を受信することに応答してローカルクロック信号を発生する方法において、
    a)USBへ結合されている装置の集積回路チップ上の自走オシレータを使用して周波数を担持するローカルクロック信号を発生し、尚前記オシレータは実質的な安定な周波数で稼動するが初期的動作に対しては前記オシレータは実質的に不正確で知られている期間を有しており、
    b)USBホスト又はハブにより送られた受信信号からシングルエンドビットシリアル信号を抽出し、
    c)前記シングルエンドビットシリアル信号に応答してタイミング信号を活性化し、
    d)前記シングルエンドビットシリアル信号においてビットパターンを検知し、
    e)前記タイミング信号が活性化される期間中のインターバルを測定し、
    f)前記測定したインターバルのうちの1つに応答してローカルクロック信号の期間Pを調節する、
    上記各ステップを有していることを特徴とする方法。
  2. 請求項1において、ステップd)が、前記ビットシリアル信号におけるある数のビットxに対するビットのパターンを検知し、前記検知が前記x個のビットの状態をサンプリングすることを包含しており、前記x個のビットがx個のビットエッジを包含しており、且つ前記x個のビットをサンプリングすることが前記ビットエッジに対して同期させ次いで第一のある遅延に続いてビット状態をサンプリングすることを包含しており、前記オシレータは少なくとも1個のオシレータ信号を発生し、前記遅延は前記少なくとも1個のオシレータ信号のある数Lの断片的期間に応答してカウントすることにより計測され、Lはメモリから読取られ且つ初期的にはビット期間内に前記少なくとも1個のオシレータ信号の断片的期間が幾つ存在するかの推定に対応していることを特徴とする方法。
  3. 請求項2において、前記タイミング信号のうちの最初の信号は前記x個のビットに対応する第一インターバルに対して活性化され、且つステップe)は前記第一インターバルに対して前記少なくとも1個のオシレータ信号の断片的期間のある数Mをカウントすることを包含していることを特徴とする方法。
  4. 請求項3において、本方法がLをMに応答して新たな値で置換させることを包含しており、Lの新たな値はビット期間内に前記少なくとも1個のオシレータ信号の断片的期間が幾つ存在するかのより正確な推定であることを特徴とする方法。
  5. 請求項4において、ステップd)は前記ビットパターンにおけるある数のビットyに対するビットのパターンを検知することを包含しており、前記検知は前記y個のビットの状態をサンプリングすることを包含しており、前記y個のビットは前記x個のビット及びその後のy−x個のビットを包含しており、前記y個のビットはy未満のビットエッジを包含しており、且つ前記y−x個のビットのサンプリングは前記y−x個のビットエッジのうちのあるものに対して同期させ且つ前記少なくとも1個のオシレータ信号のL個の断片的期間に応答してカウントすることにより計測されるビット状態をサンプリングすることを包含していることを特徴とする方法。
  6. 請求項5において、前記タイミング信号のうちの第二のものが前記y個のビットに対応する第二インターバルに対して活性化され、且つステップe)が前記第二インターバルに対して前記少なくとも1個のオシレータ信号のある数Nの断片的期間をカウントすることを包含していることを特徴とする方法。
  7. 請求項6において、本方法がNに応答してLを新たな値と置換させることを包含しており、Lの新たな値は前記少なくとも1個のオシレータ信号の断片的期間がビット期間内に幾つ存在するかの更により正確な推定であることを特徴とする方法。
  8. 請求項7において、前記少なくとも1個のオシレータ出力信号が多数の信号を包含していることを特徴とする方法。
  9. 請求項8において、前記オシレータ出力信号がオシレータ期間の一部だけ位相偏移されていることを特徴とする方法。
  10. 請求項9において、ステップa)が前記オシレータ出力信号のうちの1つをローカルクロック信号として供給することを包含していることを特徴とする方法。
  11. 請求項10において、ステップf)が前記オシレータ出力信号のうちの1つを次に前記ローカルクロック信号を供給するために選択することを包含していることを特徴とする方法。
  12. 請求項11において、前記オシレータ出力信号のうちの1つを選択することが、期間Pを調節するために前記ローカルクロック信号のエッジ位置の選択のタイミングをとることを包含しており、前記タイミングはLに応答することを特徴とする方法。
  13. 請求項12において、前記ローカルクロック信号がUSB上に供給されるアップストリームデータをパルス動作させることを特徴とする方法。
  14. 請求項11において、ステップd)が前記検知されたビットパターンが既知のビットパターンであることを決定することを包含していることを特徴とする方法。
  15. 請求項14において、このような1つの既知のビットパターンがUSBフレーム開始トークンであることを特徴とする方法。
  16. 請求項14において、ステップd)が前記既知のビットパターンの相次ぐものを検知することを包含していることを特徴とする方法。
  17. 請求項16において、前記タイミング信号のうちの第三のものが、前記相次ぐビットパターンのうちの1つにおけるある点から前記相次ぐビットパターンのうちの次のものにおける前記ある点への第三インターバルに対して活性化され、且つステップe)が前記第三インターバルに対して前記少なくとも1個のオシレータ信号のある数Rの期間をカウントすることを包含していることを特徴とする方法。
  18. 請求項17において、本方法が値R及び値Sに応答してLを次の値と置換させることを包含しており、尚Sは前記第三インターバルに対して仮定された数のビットであり、Lの前記次の値は前記少なくとも1個のオシレータ信号の断片的期間がビット期間内に幾つ存在するかの更により正確な推定であることを特徴とする方法。
  19. 請求項18において、前記オシレータ出力信号のうちの1つを選択することが、期間Pを調節するために前記ローカルクロック信号のエッジ位置の選択のタイミングをとることを包含しており、前記タイミングがLに応答することを特徴とする方法。
  20. 請求項19において、前記ローカルクロック信号がUSB上に供給されるアップストリームデータをパルス動作させることを特徴とする方法。
  21. 請求項9において、前記オシレータ期間の前記部分がUSB上にデータを供給するために必要とされるある最大のジッター未満であることを特徴とする方法。
  22. 請求項1において、前記オシレータを選択的にターンオン及びターンオフさせることを包含していることを特徴とする方法。
  23. 請求項1において、前記オシレータが前記チップ上の回路のみによって構成されていることを特徴とする方法。
  24. 請求項1において、前記オシレータがクリスタル又はピエゾ共振器へ結合されていないことを特徴とする方法。
  25. 請求項1において、ステップf)は低速又はフルスピードモードで動作するための期間Pを調節することを包含していることを特徴とする方法。
  26. ユニバーサルシリアルバス(USB)上で信号を受信することに応答してローカルクロック信号を発生する装置において、
    周波数を担持するローカルクロック信号を発生する発生器であって、USBへ結合されている装置の集積回路チップ上に自走オシレータを具備しており、前記オシレータが実質的に安定な周波数で稼動するが初期的動作に対しては前記オシレータは実質的に不正確で知られている期間を具備している発生器、
    USBホスト又はハブにより送られた受信信号からシングルエンドビットシリアル信号を抽出するフロントエンド、
    前記シングルエンドビットシリアル信号に応答してタイミング信号を活性化させ且つ前記タイミング信号が活性化される期間のインターバルを測定するメーター、
    前記シングルルエンドビットシリアル信号におけるビットパターンを検知する検知器、
    前記測定したインターバルのうちの1つに応答して前記ローカルクロック信号の期間Pを調節するシンセサイザー、
    を有していることを特徴とする装置。
  27. 請求項26において、前記検知器が前記ビットシリアル信号におけるある数のビットxに対するビットのパターンを検知し、前記x個のビットはx個のビットエッジを包含しており、前記検知することが前記ビットエッジへ同期させ次いで第一のある遅延に続いてビット状態をサンプリングすることを包含しており、前記オシレータは少なくとも1個の出力信号を有しており、前記遅延は前記少なくとも1個のオシレータ信号のある数Lの断片的期間に応答してカウントすることにより計測され、Lはメモリから読取られ且つ初期的にビット期間内に前記少なくとも1個のオシレータ信号の断片的期間が幾つ存在するかの初期的推定に対応していることを特徴とする装置。
  28. 請求項27において、前記メーターが、
    前記x個のビットに対応する第一インターバルに対して前記タイミング信号のうちの第一のものを活性化させるための第一タイマー、
    前記第一インターバルに対して前記少なくとも1個のオシレータ信号の期間Mをカウントする第一カウンター、
    を有していることを特徴とする装置。
  29. 請求項28において、前記メモリがMに応答してLを新たな値と置換させるメモリ制御器を有しており、Lの前記新たな値がビット期間内に前記少なくとも1個のオシレータ信号の期間が幾つ存在しているかのより正確な推定であることを特徴とする装置。
  30. 請求項29において、前記検知器が前記ビットパターンにおけるある数のビットyに対するビットのパターンを検知し、前記y個のビットは前記x個のビット及びその後のy−x個のビットを包含しており、前記y個のビットがy未満のビットエッジを包含しており、前記検知を行う場合に前記y個のビットの状態をサンプリングすることを包含しており、前記y−x個のビットのサンプリングが前記y−x個のビットエッジのうちのあるものに対して同期させ且つ前記少なくとも1個のオシレータ信号の前記L個の断片的期間に応答してカウントすることにより計測されるビット状態をサンプリングすることを包含していることを特徴とする装置。
  31. 請求項30において、前記メーターが、
    前記y個のビットに対応する第二インターバルに対して前記タイミング信号のうちの第二のものを活性化させるための第二タイマー、
    前記第二インターバルに対して前記少なくとも1個のオシレータ信号の期間Nをカウントする第二カウンター、
    を有していることを特徴とする装置。
  32. 請求項31において、メモリ制御器がNに応答してLを次の値と置換させ、Lの前記次の値がビット期間中に前記少なくとも1個のオシレータ出力信号の期間が幾つ存在するかの更により正確な推定であることを特徴とする装置。
  33. 請求項26において、前記少なくとも1個のオシレータ出力信号が多数の信号を包含していることを特徴とする装置。
  34. 請求項33において、前記オシレータ出力信号が前記オシレータ期間の一部だけ位相偏移されていることを特徴とする装置。
  35. 請求項34において、発生器が前記オシレータ出力信号のうちの1つを前記ローカルクロック信号として供給することを特徴とする装置。
  36. 請求項35において、前記ローカルクロック信号を次に供給するために前記シンセサイザーが前記オシレータ出力信号のうちの1つを選択することを特徴とする装置。
  37. 請求項36において、前記オシレータ出力信号のうちの1つを選択することが、Pを調節するために前記ローカルクロック信号のエッジ位置の選択のタイミングをとることを包含しており、前記タイミングがLに応答することを特徴とする装置。
  38. 請求項37において、前記ローカルクロック信号がUSB上に供給されるアップストリームデータをパルス動作させることを特徴とする装置。
  39. 請求項36において、前記検知器が、前記検知されたビットパターンが既知のビットパターンであることを決定することを特徴とする装置。
  40. 請求項39において、1つのこのような既知のビットパターンがUSBフレーム開始トークンであることを特徴とする装置。
  41. 請求項39において、検知器が前記既知のビットパターンの相次ぐものを検知することを特徴とする装置。
  42. 請求項41において、前記メーターが、
    前記相次ぐビットパターンのうちの1つにおけるある点から前記相次ぐビットパターンのうちの次のものにおける前記ある点への第三インターバルを活性化させる第三タイマー、
    前記第三インターバルに対して前記少なくとも1個のオシレータ信号の期間をカウントする第二カウンタ、
    を有していることを特徴とする装置。
  43. 請求項42において、本メモリ制御器が値R及び値Sに応答してLを次の値と置換させ、Sは前記第三インターバルに対しての仮定されたある数のビットであり、Lの前記次の値はビット期間中において前記少なくとも1個のオシレータ信号の断片的期間が幾つ存在するかの更により正確な推定であることを特徴とする装置。
  44. 請求項43において、前記オシレータ出力信号のうちの1つを選択することが、Pを調節するために前記ローカルクロック信号のエッジ位置の選択のタイミングをとることを包含しており、前記タイミングがLに応答することを特徴とする装置。
  45. 請求項44において、前記ローカルクロック信号がUSB上に供給されるアップストリームデータをパルス動作させることを特徴とする装置。
  46. 請求項34において、前記オシレータ期間の前記一部がUSB上にデータを供給するのに必要とされるある最大ジッター未満であることを特徴とする装置。
  47. 請求項26において、前記オシレータを選択的にターンオン及びターンオフされるべく動作可能であることを特徴とする装置。
  48. 請求項26において、前記オシレータがチップ上の回路のみから構成されていることを特徴とする装置。
  49. 請求項26において、前記オシレータがクリスタル又はピエゾ共振器へ結合されていないことを特徴とする装置。
  50. 請求項26において、前記シンセサイザーが低速又はフルスピードモードにおける本装置の動作に対する期間Pを調節すべく動作可能であることを特徴とする装置。
  51. ユニバーサルシリアルバス(USB)上の信号を受取ることに応答してローカルクロック信号を発生する装置において、
    周波数を担持するローカルクロック信号を発生する発生手段であって、USBへ結合されている装置の集積回路チップ上に自走オシレータ手段を具備しており、前記オシレータ手段が実質的に安定な周波数において稼動するが初期的に実質的に不正確な状態で知られている期間を具備している発生手段、
    USBホスト又はハブにより送信された受信信号からシングルエンドビットシリアル信号を抽出する抽出手段、
    前記シングルエンドビットシリアル信号に応答してタイミング信号を活性化させ且つ前記タイミング信号が活性化される期間中のインターバルを測定する計測手段、
    前記シングルルエンドビットシリアル信号におけるビットパターンを検知する検知手段、
    前記測定したインターバルのうちの1つに応答して前記ローカルクロック信号の期間Pを調節する合成手段、
    を有していることを特徴とする装置。
  52. 請求項51において、前記検知手段が前記ビットシリアル信号におけるある数のビットxに対するビットのパターンを検知し、前記x個のビットがx個のビットエッジを包含しており、前記検知することが前記ビットエッジへ同期させ次いで第一のある遅延に続いてビット状態をサンプリングすることを包含しており、前記オシレータ手段が少なくとも1個のオシレータ信号を発生し、前記遅延は前記少なくとも1個のオシレータ信号の第一のある数Lの断片的期間に応答してカウントすることにより計測され、Lはメモリから読取られ且つ初期的に前記少なくとも1個のオシレータ信号の断片的期間がビット期間内に幾つ存在するかの初期的推定に対応していることを特徴とする装置。
  53. 請求項52において、前記計測手段が、
    前記x個のビットに対応する第一インターバルに対するタイミング信号のうちの第一のものを活性化させる第一タイミング手段、
    前記第一インターバルに対する前記少なくとも1個のオシレータ信号の期間Mをカウントする第一カウント手段、
    を有していることを特徴とする装置。
  54. 請求項53において、前記メモリがMに応答してLを新たな値で置換させるメモリ制御手段を有しており、Lの前記新たな値は前記少なくとも1個のオシレータ信号の期間がビット期間内に幾つ存在するかのより正確な推定であることを特徴とする装置。
  55. 請求項54において、前記検知手段が前記ビットパターンにおけるある数のビットyに対するビットのパターンを検知し、前記y個のビットが前記x個のビットとその後のy−x個のビットとを包含しており、前記y個のビットがy未満のビットエッジを包含しており、前記検知することが前記y個のビットの状態をサンプリングすることを包含しており、前記y−x個のビットをサンプリングすることが前記y−x個のビットエッジのあるものに対して同期させ且つ前記少なくとも1個のオシレータ信号のL個の断片的期間に応答してカウントすることにより計測されたビット状態をサンプリングすることを包含していることを特徴とする装置。
  56. 請求項55において、前記計測手段が、
    前記y個のビットに対応する第二インターバルに対して前記タイミング信号のうちの第二のものを活性化させる第二タイミング手段、
    前記第二インターバルに対して前記少なくとも1個のオシレータ信号の期間Nをカウントする第二カウント手段、
    を有していることを特徴とする装置。
  57. 請求項56において、前記メモリ制御手段がNに応答してLを次の値で置換させ、Lの前記次の値は前記少なくとも1個のオシレータ出力信号の期間がビット期間内に幾つ存在するかの更により正確な推定であることを特徴とする装置。
  58. 請求項51において、前記少なくとも1個のオシレータ出力信号が多数の信号を包含していることを特徴とする装置。
  59. 請求項58において、前記オシレータ出力信号が前記オシレータ期間の一部だけ位相偏移されていることを特徴とする装置。
  60. 請求項59において、前記発生手段が前記オシレータ出力信号のうちの1つを前記ローカルクロック信号として供給することを特徴とする装置。
  61. 請求項60において、前記合成手段が次に前記ローカルクロック信号を供給するために前記オシレータ出力信号のうちの1つを選択することを特徴とする装置。
  62. 請求項61において、前記オシレータ出力信号のうちの1つを選択することが、Pを調節するために前記ローカルクロック信号のエッジ位置の選択のタイミングをとることを包含しており、前記タイミングがLに応答することを特徴とする装置。
  63. 請求項62において、前記ローカルクロック信号がUSB上に供給されたアップストリームデータをパルス動作させることを特徴とする装置。
  64. 請求項63において、前記検知器が、前記検知されたビットパターンが既知のビットパターンであるか否かを決定することを特徴とする装置。
  65. 請求項57において、前記既知のビットパターンがUSBフレーム開始トークンであることを特徴とする装置。
  66. 請求項57において、前記検知手段が前記既知のビットパターンの相次ぐものを検知することを特徴とする装置。
  67. 請求項64において、前記計測手段が、
    前記相次ぐビットパターンのうちの1つにおけるある点から前記相次ぐビットパターンのうちの次のものにおける前記ある点への第三インターバルを活性化させる第三タイミング手段、
    前記第三インターバルに対して前記少なくとも1個のオシレータ信号の期間をカウントする第二カウント手段、
    を有していることを特徴とする装置。
  68. 請求項67において、前記メモリ制御器が値R及び値Sに応答してLを次の値で置換させ、Sは前記第三インターバルに対する仮定されたある数のビットであり、Lの前記次の値は前記少なくとも1個のオシレータ信号の断片的期間がビット期間中に幾つ存在するかの更により正確な推定であることを特徴とする装置。
  69. 請求項68において、前記オシレータ出力信号のうちの1つを選択することが、Pを調節するために前記ローカルクロック信号のエッジ位置の選択のタイミングをとることを包含しており、前記タイミングがLに応答することを特徴とする装置。
  70. 請求項69において、前記ローカルクロック信号がUSB上に供給されるアップストリームデータをパルス動作させることを特徴とする装置。
  71. 請求項70において、前記オシレータ手段期間の前記一部がUSB上にデータを供給するのに必要とされるある最大ジッター未満であることを特徴とする装置。
  72. 請求項71において、前記オシレータ手段が選択的にターンオン及びターンオフされるべく動作可能であることを特徴とする装置。
  73. 請求項51において、前記オシレータ手段がチップ上の回路のみから構成されていることを特徴とする装置。
  74. 請求項51において、前記オシレータ手段がクリスタル又はピエゾ共振器へ結合されていないことを特徴とする装置。
  75. 請求項51において、前記合成手段が、低速又はフルスピードモードにおける本装置の動作のために期間Pを調節すべく動作可能であることを特徴とする装置。
JP2004019256A 2003-01-28 2004-01-28 ユニバーサルシリアルバスダウンストリーム受信信号を使用してクロック合成を行うための方法及び装置 Pending JP2004234659A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/352,749 US7120813B2 (en) 2003-01-28 2003-01-28 Method and apparatus for clock synthesis using universal serial bus downstream received signals

Publications (1)

Publication Number Publication Date
JP2004234659A true JP2004234659A (ja) 2004-08-19

Family

ID=32655512

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004019256A Pending JP2004234659A (ja) 2003-01-28 2004-01-28 ユニバーサルシリアルバスダウンストリーム受信信号を使用してクロック合成を行うための方法及び装置

Country Status (4)

Country Link
US (1) US7120813B2 (ja)
EP (1) EP1445681B1 (ja)
JP (1) JP2004234659A (ja)
AT (1) ATE535854T1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094931A (ja) * 2005-09-30 2007-04-12 Nec Electronics Corp 補正クロック発生回路及びそれを備えるusbデバイス
JP2009512050A (ja) * 2005-10-10 2009-03-19 アクサルト・エス・アー ローカルクロック生成のための方法および回路、ならびに同クロックを上に含むスマートカード
US8145935B2 (en) 2007-08-14 2012-03-27 Samsung Electronics Co., Ltd. Clock signal generator for generating stable clock signal, semiconductor memory device including the same, and methods of operating
JP2012527659A (ja) * 2009-05-20 2012-11-08 クロノロジック プロプライエタリー リミテッド 分散型の同期されたクロックアーキテクチャのためのジッタ低減方法およびジッタ低減装置
JP2013242912A (ja) * 2007-05-15 2013-12-05 Chronologic Pty Ltd Usbベースの同期およびタイミングシステム

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004029814A2 (en) * 2002-09-24 2004-04-08 Koninklijke Philips Electronics N.V. Interface integrated circuit device for a usb connection
US7152190B2 (en) * 2004-02-03 2006-12-19 Motorola Inc. USB OTG intelligent hub/router for debugging USB OTG devices
WO2006063485A1 (en) * 2004-12-13 2006-06-22 Apexone Microelectronics Ltd. System and method for clock signal synchronization
DE602005005002T2 (de) * 2005-01-05 2008-08-28 Axalto Sa Vorrichtung zur Datenkommunikation
US7436919B2 (en) * 2005-04-01 2008-10-14 Freescale Semiconductor, Inc. Methods and apparatus for bit synchronizing data transferred across a multi-pin asynchronous serial interface
US7936793B2 (en) * 2005-04-01 2011-05-03 Freescale Semiconductor, Inc. Methods and apparatus for synchronizing data transferred across a multi-pin asynchronous serial interface
CN1955949B (zh) * 2005-10-24 2010-05-26 瑞昱半导体股份有限公司 通用串行总线装置
TWI302784B (en) * 2005-10-25 2008-11-01 Holtek Semiconductor Inc Auto-adjusting high accuracy oscillator
KR100741470B1 (ko) * 2006-09-26 2007-07-20 삼성전자주식회사 유에스비 장치를 위한 클럭 발생기
US20080162974A1 (en) * 2006-12-29 2008-07-03 Keys John S Universal serial bus host controller
US7818603B2 (en) 2007-03-28 2010-10-19 Microsoft Corporation Deriving accurate media position information
US8036613B2 (en) * 2007-05-07 2011-10-11 Infineon Technologies Ag Communication system and method for operating a communication system
US8218734B2 (en) * 2007-06-12 2012-07-10 Microsoft Corporation Messaging with a locked communication device
CN101339543B (zh) * 2007-07-06 2010-07-28 李世聪 通用串行总线全速/低速单端信号0的传输方法和装置
US8065451B2 (en) * 2007-07-12 2011-11-22 Lantiq Deutschland Gmbh Device for tapping USB power
TW200947184A (en) * 2008-05-14 2009-11-16 Pixart Imaging Inc Method for automatically adjusting clock frequency and clock frequency adjustment circuit
JP2012500430A (ja) * 2008-08-21 2012-01-05 クロノロジック ピーティーワイ リミテッド 同期及びタイミング方法及び装置
CN102103880B (zh) * 2009-12-22 2014-02-19 鸿富锦精密工业(深圳)有限公司 U盘及其存储容量显示方法
TW201217977A (en) * 2010-10-27 2012-05-01 Sonix Technology Co Ltd Method for locking frequency of USB device and USB frequency locking device
US9255859B2 (en) 2010-11-15 2016-02-09 Advanced Mechanical Technology, Inc. Force platform system
US9087158B2 (en) 2012-06-30 2015-07-21 Intel Corporation Explicit control message signaling
US9336074B2 (en) * 2013-07-26 2016-05-10 Honeywell International Inc. Apparatus and method for detecting a fault with a clock source
TWI545419B (zh) * 2015-05-08 2016-08-11 偉詮電子股份有限公司 自動校正非晶體振盪器之時脈之裝置及其方法
FR3067557B1 (fr) * 2017-06-13 2020-10-09 Schneider Electric Ind Sas Procede de communication radio dans un systeme comportant une pluralite de modules communicants
CN109687867B (zh) * 2018-11-30 2023-04-07 珠海慧联科技有限公司 一种无晶振usb设备时钟校准方法及校准电路

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778218A (en) * 1996-12-19 1998-07-07 Advanced Micro Devices, Inc. Method and apparatus for clock synchronization across an isochronous bus by adjustment of frame clock rates
US6219736B1 (en) * 1997-04-24 2001-04-17 Edwin E. Klingman Universal serial bus (USB) RAM architecture for use with microcomputers via an interface optimized for integrated services device network (ISDN)
US5910742A (en) * 1997-06-16 1999-06-08 Cypress Semiconductor Corp. Circuit and method for data recovery
US5958027A (en) * 1997-08-05 1999-09-28 Advanced Micro Devices, Inc. Method and system for optimizing the flow of isochronous data and clock rate information
US6118344A (en) * 1997-09-30 2000-09-12 Yamaha Corporation Frequency control apparatus and method and storage medium storing a program for carrying out the method
US5903777A (en) * 1997-10-02 1999-05-11 National Semiconductor Corp. Increasing the availability of the universal serial bus interconnects
JP4101361B2 (ja) 1998-06-30 2008-06-18 ローランド株式会社 音声データ送受信装置および音声データ送受信システム
FR2783336B1 (fr) * 1998-09-11 2001-10-12 Schlumberger Ind Sa Procede de transmission de donnees et carte pour une telle transmission
US6421785B1 (en) * 1998-11-03 2002-07-16 Intel Corporation Clock selection for processing audio data
FR2803925B1 (fr) * 2000-01-18 2002-03-15 St Microelectronics Sa Dispositif de regeneration d'une horloge a partir d'au moins deux bits de synchronisation
FR2804521B1 (fr) * 2000-01-27 2002-04-05 St Microelectronics Sa Dispositif de regeneration d'une horloge
JP2001230837A (ja) 2000-02-17 2001-08-24 Nec Eng Ltd 電話端末装置
US6343364B1 (en) * 2000-07-13 2002-01-29 Schlumberger Malco Inc. Method and device for local clock generation using universal serial bus downstream received signals DP and DM
DE10041772C2 (de) 2000-08-25 2002-07-11 Infineon Technologies Ag Taktgenerator, insbesondere für USB-Geräte
DE10056592A1 (de) * 2000-11-15 2002-05-23 Philips Corp Intellectual Pty Anordnung mit einem Mikroprozessor
KR20020057697A (ko) * 2001-01-05 2002-07-12 윤종용 범용 직렬 버스용 클록 복원 회로
US6810484B2 (en) * 2001-03-01 2004-10-26 Synopsys, Inc. Device and method for clock synchronization through extraction of data at frequency distinct from data rate of USB interface
US6901471B2 (en) * 2001-03-01 2005-05-31 Synopsys, Inc. Transceiver macrocell architecture allowing upstream and downstream operation
JP3946050B2 (ja) * 2002-01-28 2007-07-18 株式会社ルネサステクノロジ データ・クロック・リカバリ回路
US6809564B2 (en) * 2002-07-17 2004-10-26 Stmicroelectronics, Inc. Clock generator for an integrated circuit with a high-speed serial interface
US6664859B1 (en) * 2002-09-13 2003-12-16 Faaday Technology Crop. State machine based phase-lock-loop for USB clock recovery
US6917658B2 (en) * 2002-09-16 2005-07-12 Silicon Labs Cp, Inc. Clock recovery method for bursty communications
FR2849945B1 (fr) * 2003-01-10 2005-03-11 Atmel Corp Moyens pour la communication des cartes a puces usb utilisant des transferts a vitesse maximale ou elevee

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007094931A (ja) * 2005-09-30 2007-04-12 Nec Electronics Corp 補正クロック発生回路及びそれを備えるusbデバイス
JP2009512050A (ja) * 2005-10-10 2009-03-19 アクサルト・エス・アー ローカルクロック生成のための方法および回路、ならびに同クロックを上に含むスマートカード
KR101310724B1 (ko) 2005-10-10 2013-10-14 에스티마이크로일렉트로닉스 에스.에이. 로컬 클록 발생 방법과 회로 및 그를 포함하는 스마트카드
JP2013242912A (ja) * 2007-05-15 2013-12-05 Chronologic Pty Ltd Usbベースの同期およびタイミングシステム
US8145935B2 (en) 2007-08-14 2012-03-27 Samsung Electronics Co., Ltd. Clock signal generator for generating stable clock signal, semiconductor memory device including the same, and methods of operating
JP2012527659A (ja) * 2009-05-20 2012-11-08 クロノロジック プロプライエタリー リミテッド 分散型の同期されたクロックアーキテクチャのためのジッタ低減方法およびジッタ低減装置
JP2014197421A (ja) * 2009-05-20 2014-10-16 クロノロジック プロプライエタリー リミテッドChronologic Pty Ltd 分散型の同期されたクロックアーキテクチャのためのジッタ低減方法およびジッタ低減装置
US8984321B2 (en) 2009-05-20 2015-03-17 Chronologic Pty, Ltd. Jitter reduction method and apparatus for synchronised USB devices

Also Published As

Publication number Publication date
EP1445681B1 (en) 2011-11-30
EP1445681A3 (en) 2008-05-07
US7120813B2 (en) 2006-10-10
US20040148539A1 (en) 2004-07-29
EP1445681A2 (en) 2004-08-11
ATE535854T1 (de) 2011-12-15

Similar Documents

Publication Publication Date Title
JP2004234659A (ja) ユニバーサルシリアルバスダウンストリーム受信信号を使用してクロック合成を行うための方法及び装置
TW523990B (en) Clock-pulse generator unit, especially used for USB-device
US6343364B1 (en) Method and device for local clock generation using universal serial bus downstream received signals DP and DM
KR100741470B1 (ko) 유에스비 장치를 위한 클럭 발생기
US8984321B2 (en) Jitter reduction method and apparatus for synchronised USB devices
EP2028660B1 (en) Clock signal generator for generating stable clock signals, semiconductor memory device including the same, and methods of operating
JP5642852B2 (ja) Usbデバイス
US8412975B2 (en) USB based synchronization and timing system
US10101764B2 (en) Automatic clock configuration system
JP2002141911A (ja) データ転送制御装置及び電子機器
CN110622099B (zh) 设备上参考时钟的恢复
US7443213B2 (en) Staged locking of two phase locked loops
TWI231096B (en) A method to adjust oscillator automatically
EP1540863B1 (en) Staged locking of phase locked loops
AU2013200979B2 (en) Usb based synchronization and timing system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090630

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090930

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20091005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091029

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091124