(57)【要約】  特に電子装置内の2つのデバイス間のデータの送信を容易にするシステム、方法、および装置について説明する。データ通信リンクのデータレーン上で搬送されるかまたはデータ通信リンクのタイミングレーン上で搬送される信号における第1の遷移が検出されてもよく、第1の遷移に基づいてレシーバクロック信号上にエッジが生成されてよい。レシーバクロック信号を使用してデータレーンからデータがキャプチャされてよい。タイミングレーンは、クロック信号、ストローブ信号、またはタイミング情報を供給する別の信号を搬送してよい。ストローブ信号は、連続するデータ周期同士の間の境界において複数のデータレーンのいずれにおいても状態遷移が生じないときにシグナリング状態間で遷移してよい。
2016538747.tif 000002
【特許請求の範囲】
【請求項１】
データ通信の方法であって、
データ通信リンクのデータレーン上で搬送されるかまたは前記データ通信リンクのタイミングレーン上で搬送される信号における第1の遷移を検出するステップであって、前記遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じるステップと、
前記第1の遷移に基づいてレシーバクロック信号上にエッジを生成するステップと、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータをキャプチャするステップとを含む方法。
【請求項２】
前記レシーバクロック信号を使用して1つまたは複数のデータレーンから受信されるデータを非直列化するステップをさらに含む、請求項1に記載の方法。
【請求項３】
前記タイミングレーンは、ダブルデータレートクロック信号を搬送する、請求項1に記載の方法。
【請求項４】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項3に記載の方法。
【請求項５】
前記第1のデータ周期の間の前記タイミングレーンおよび前記データレーンを含む複数のレーンのシグナリング状態を表す第1のシンボルを、前記第2のデータ周期の間の前記複数のレーンのシグナリング状態を表す第2のシンボルと比較するステップをさらに含み、
前記タイミングレーンは、前記第1のデータ周期と前記第2のデータ周期との間の前記データレーンのシグナリング状態において遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送する、請求項1に記載の方法。
【請求項６】
前記ストローブ信号は、前記第1のデータ周期と前記第2のデータ周期との間の複数のデータレーンの前記シグナリング状態において状態遷移が生じないときにシグナリング状態間で遷移する、請求項5に記載の方法。
【請求項７】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項1に記載の方法。
【請求項８】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項7に記載の方法。
【請求項９】
前記第1の遷移を検出するステップは、
複数のデータレーンおよび前記タイミングレーン上で搬送される信号を監視するステップであって、前記第1の遷移は、前記複数のデータレーンまたは前記タイミングレーン上で搬送される前記信号のいずれかにおいて最初に生じる遷移である、請求項1に記載の方法。
【請求項１０】
データ通信リンクのデータレーンと前記データ通信リンクのタイミングレーンとの一方において第1の遷移を検出するための手段であって、前記遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じる手段と、
前記第1の遷移に基づいてレシーバクロック信号のエッジを生成するための手段と、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータを復号するための手段とを備える装置。
【請求項１１】
前記データレーンから受信される前記データを復号するための前記手段は、1つまたは複数のデータレーンから受信されるデータを非直列化するように構成される、請求項10に記載の装置。
【請求項１２】
前記タイミングレーンは、ダブルデータレートクロック信号を搬送する、請求項10に記載の装置。
【請求項１３】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項12に記載の装置。
【請求項１４】
前記第1の遷移を検出するための前記手段は、
前記第1のデータ周期の間の前記タイミングレーンおよび前記データレーンを含む複数のレーンのシグナリング状態を表す第1のシンボルを、前記第2のデータ周期の間の前記複数のレーンのシグナリング状態を表す第2のシンボルと比較するように構成され、
前記タイミングレーンは、前記第1のデータ周期と前記第2のデータ周期との間の前記データレーンのシグナリング状態において遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送する、請求項10に記載の装置。
【請求項１５】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項10に記載の装置。
【請求項１６】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項15に記載の装置。
【請求項１７】
処理回路を備え、前記処理回路は、
データ通信リンクのデータレーンと前記データ通信リンクのタイミングレーンとの一方において第1の遷移を検出することであって、前記遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じることと、
前記第1の遷移に基づいてレシーバクロック信号上にエッジを生成することと、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータをキャプチャすることとを行うように構成される、装置。
【請求項１８】
前記処理回路は、前記レシーバクロック信号を使用して1つまたは複数のデータレーンから受信されるデータを非直列化するように構成される、請求項17に記載の装置。
【請求項１９】
前記タイミングレーンは、ダブルデータレートクロック信号を搬送する、請求項17に記載の装置。
【請求項２０】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項19に記載の装置。
【請求項２１】
前記タイミングレーンは、ストローブ信号を搬送し、前記ストローブ信号は、第3のデータ周期と第4のデータ周期との間の境界において前記データレーンから受信されるデータにおいて遷移が生じないときにシグナリング状態間で遷移する、請求項17に記載の装置。
【請求項２２】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項17に記載の装置。
【請求項２３】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項22に記載の装置。
【請求項２４】
1つまたは複数の命令を有するプロセッサ可読記憶媒体であって、前記1つまたは複数の命令は、少なくとも1つの処理回路によって実行されたときに、前記少なくとも1つの処理回路に、
データ通信リンクのデータレーンと前記データ通信リンクのタイミングレーンとの一方において第1の遷移を検出することであって、前記遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じることと、
前記第1の遷移に基づいてレシーバクロック信号上にエッジを生成することと、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータをキャプチャすることとを行わせる、プロセッサ可読記憶媒体。
【請求項２５】
前記レシーバクロック信号は、1つまたは複数のデータレーンから受信されるデータを非直列化するのに使用される、請求項24に記載のプロセッサ可読記憶媒体。
【請求項２６】
前記タイミングレーンは、ダブルデータレートクロック信号を搬送する、請求項24に記載のプロセッサ可読記憶媒体。
【請求項２７】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項26に記載のプロセッサ可読記憶媒体。
【請求項２８】
前記タイミングレーンは、ストローブ信号を搬送し、前記ストローブ信号は、第3のデータ周期と第4のデータ周期との間の境界において前記データレーンから受信されるデータにおいて遷移が生じないときにシグナリング状態間で遷移する、請求項24に記載のプロセッサ可読記憶媒体。
【請求項２９】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項24に記載のプロセッサ可読記憶媒体。
【請求項３０】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項29に記載のプロセッサ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、その内容全体が参照により本明細書に組み込まれる、2013年10月3日に出願された米国仮特許出願第61/886,556号、および2014年9月19日に出願された米国非仮特許出願第14/491,884号の優先権および利益を主張する。
【０００２】
本開示は、一般に高速データ通信インターフェースに関し、より詳細には、マルチレーン差動データ通信リンクにおけるクロックおよびデータ復元に関する。
【背景技術】
【０００３】
セルラー電話など、モバイルデバイスの製造業者は、モバイルデバイスのコンポーネントを、異なる製造業者を含む様々なソースから取得し得る。たとえば、セルラー電話におけるアプリケーションプロセッサが第1の製造業者から取得され、一方、セルラー電話のディスプレイが第2の製造業者から取得されることがある。アプリケーションプロセッサおよびディスプレイならびに/あるいは他のデバイスは、複数のデータレーンおよびクロックレーンを含み得る規格ベースの物理インターフェースまたは専用の物理インターフェースを使用して相互接続され得る。データレートの向上を求める要求が引き続き増大しており、通信リンクを介してデータを送受信するのに使用されるクロック周波数を高くすることが望ましい場合がある。しかし、信号遷移時間およびクロック信号の送信によって通信リンクの最高データレートが制限される可能性がある。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、マルチ信号通信リンク上でより高いデータ転送レートを実現するには改良されたクロック生成技法ならびにデータサンプリング技法およびデータキャプチャ技法が必要である。
【課題を解決するための手段】
【０００５】
本明細書において開示される実施形態は、マルチレーンデータ通信リンク上で送信される信号からデータおよびクロックを抽出するためのシステム、方法、および装置を提供する。本開示のいくつかの態様は、高速データ通信リンクにおけるクロック管理に関する。
【０００６】
本開示の一態様では、データ通信の方法は、データ通信リンクのデータレーン上で搬送されるかまたはデータ通信リンクのタイミングレーン上で搬送される信号の第1の遷移を検出することと、第1の遷移に基づいてレシーバクロック信号上にエッジを生成することと、レシーバクロック信号を使用してデータレーンから受信されるデータをキャプチャすることとを含む。遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じ得る。タイミングレーンは、クロック信号、ストローブ信号、またはタイミング情報を供給する別の信号を搬送してよい。
【０００７】
一態様では、タイミングレーンは、ダブルデータレートクロック信号を搬送する。ダブルデータレートクロック信号の遷移は、データレーンから受信されるデータの遷移と揃えられてよい。
【０００８】
一態様では、タイミングレーンは、第1のデータ周期と第2のデータ周期との間のデータレーンのシグナリング状態において遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送してよい。ストローブ信号は、第1のデータ周期と第2のデータ周期との間の複数のデータレーンのシグナリング状態において状態遷移が生じないときにシグナリング状態間で遷移してよい。
【０００９】
一態様では、第1のデータ周期の間のタイミングレーンおよびデータレーンを含む複数のレーンのシグナリング状態を表す第1のシンボルが、第2のデータ周期の間の複数のレーンのシグナリング状態を表す第2のシンボルと比較される。
【００１０】
一態様では、1つまたは複数のデータレーンから受信されるデータは、レシーバクロック信号を使用して非直列化されてよい。レシーバクロック信号は、第1のデータ周期と第2のデータ周期との間の境界に対して生じる1つまたは複数の追加の遷移が、エッジが生成された後に生じるときには、この1つまたは複数の追加の遷移による影響を受けないことが可能である。たとえば、追加の遷移は、レシーバクロック信号上の、データ周期間の各境界において単一のエッジが提供されるように無視されてよい。
【００１１】
一態様では、第1のデータ周期は第2のデータ周期よりも前に生じる。エッジは、第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用されてよい。
【００１２】
一態様では、第1の遷移は、複数のデータレーンおよびタイミングレーンを監視することによって検出される。第1の遷移は、複数のデータレーンまたはタイミングレーン上で送信される信号において最初に生じる遷移であってよい。
【００１３】
本開示の一態様では、装置は、データ通信リンクのデータレーンとデータ通信リンクのタイミングレーンとの一方において第1の遷移を検出するための手段と、第1の遷移に基づいてレシーバクロック信号のエッジを生成するための手段と、レシーバクロック信号を使用してデータレーンから受信されるデータを復号するための手段とを含む。遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じてよい。
【００１４】
本開示の一態様では、装置は、データ通信リンクのデータレーンとデータ通信リンクのタイミングレーンとの一方において第1の遷移を検出し、第1の遷移に基づいてレシーバクロック信号上にエッジを生成し、レシーバクロック信号を使用してデータレーンから受信されるデータをキャプチャするように構成された処理回路を含む。遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じてよい。
【００１５】
本開示の一態様では、プロセッサ読取り可能記憶媒体は、少なくとも1つの処理回路によって実行され得る1つまたは複数の命令を維持または記憶する。これらの命令は、少なくとも1つの処理回路に、データ通信リンクのデータレーンとデータ通信リンクのタイミングレーンとの一方において第1の遷移を検出させ、第1の遷移に基づいてレシーバクロック信号上にエッジを生成させ、レシーバクロック信号を使用してデータレーンから受信されるデータをキャプチャさせてよい。遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じてよい。
【図面の簡単な説明】
【００１６】
【図１】複数の利用可能な規格のうちの1つに従って選択的に動作するICデバイス間のデータリンクを使用する装置を示す図である。
【図２】本明細書において開示される特定の態様に従って適合されてよいICデバイス間のデータリンクを使用する装置のためのシステムアーキテクチャを示す図である。
【図３】差動符号化された通信リンク用のクロックおよびデータ送信方式を示す図である。
【図４】本明細書において開示されるいくつかの態様に従って適合されたデータ通信インターフェースに関する信号タイミングを示す図である。
【図５】本明細書において開示されるいくつかの態様によるデータ通信インターフェースのデータレーン上でのデータ送信に関連するタイミングのいくつかの態様を示す図である。
【図６】マルチワイヤインターフェースからのクロックおよびデータ復元のいくつかの態様を示す、クロックおよびデータ復元回路の一例を示すブロック図である。
【図７】一般的な動作条件の下での図6に示すクロックおよびデータ復元回路の動作を示すタイミング図である。
【図８】本明細書において開示されるいくつかの態様に従って適合されたクロックおよびデータ復元回路を使用する通信リンクの第1の例を示す図である。
【図９】図8に示す通信リンクに関連するいくつかの信号のタイミングを示す図である。
【図１０】本明細書において開示されるいくつかの態様に従って適合されたクロックおよびデータ復元回路を使用する通信リンクの第2の例を示す図である。
【図１１】図10に示す通信リンクに関連するいくつかの信号のタイミングを示す図である。
【図１２】本明細書において開示される1つまたは複数の機能を実行するように適合されるかまたは構成されてよい処理回路を使用する装置のためのハードウェア実施態様の簡略化された例を示す図である。
【図１３】マルチレーン差動通信リンク上のデータレートを向上させることのできる方法のフローチャートである。
【図１４】本明細書において開示される1つまたは複数の機能を実行するように適合されるかまたは構成された装置のためのハードウェア実施態様の一例を示す図である。
【発明を実施するための形態】
【００１７】
様々な態様が、ここで、図面を参照して説明される。以下の説明において、説明の目的のため、多数の特定の詳細が、1つまたは複数の態様の完全な理解を提供するために記載されている。しかしながら、そのような態様は、これらの具体的な詳細なしで実践され得ることが明らかであり得る。
【００１８】
本出願で使用する「構成要素」、「モジュール」、「システム」などの用語は、限定はしないが、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアなどのコンピュータ関連エンティティを含むものとする。たとえば、構成要素は、これらに限定はしないが、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラム、および/またはコンピュータであってよい。一例として、コンピューティングデバイス上で動作するアプリケーションとコンピューティングデバイスの両方が構成要素であってよい。1つまたは複数の構成要素は、プロセスおよび/または実行スレッド内に存在することができ、構成要素は、1つのコンピューティングデバイス上に位置し、かつ/または、2つ以上のコンピューティングデバイス間に分散され得る。加えて、これらの構成要素は、様々なデータ構造を記憶した様々なコンピュータ可読媒体から実行することができる。構成要素は、ローカルシステム内、分散システム内、および/または、インターネットなどのネットワークにわたる別の構成要素と対話する1つの構成要素からのデータなどの、1つまたは複数のデータパケットを有する信号などに従うローカルプロセスおよび/またはリモートプロセスにより、信号によって他のシステムと通信してよい。
【００１９】
さらに、「または」という用語は、排他的な「または」ではなく、むしろ包括的な「または」を意味することを意図している。すなわち、別段の規定がない限り、または文脈から明白でない限り、「XはAまたはBを使用する」という言い回しは、自然な包括的並べ替えのいずれかを意味することを意図している。すなわち、「XはAまたはBを使用する」という語句は、以下の場合、すなわち、XはAを用いる。XはBを用いる。またはXはAとBの両方を用いる。さらに、本出願および添付の特許請求の範囲で使用する冠詞「a」および「an」は、別段の規定がない限り、または単数形を示すことが文脈から明白でない限り、概して「1つもしくは複数」を意味するものと解釈すべきである。
【００２０】
本発明のいくつかの態様は、電話、モバイルコンピューティングデバイス、電気製品、自動車用電子機器、アビオニクスシステムなどの、デバイスの副構成要素を含む、電子構成要素間に配備される通信リンクに適用可能であり得る。図1は、ICデバイス間のデータリンクを使用する装置100の一例を描写し、データリンクは、複数の利用可能な規格のうちの1つに従って選択的に動作してよい。装置100は、無線アクセスネットワーク(RAN)、コアアクセスネットワーク、インターネット、および/または別のネットワークとワイヤレスに通信するワイヤレス通信デバイスを含んでよい。装置100は、処理回路102に動作可能に結合された通信トランシーバ106を含んでもよい。処理回路102は、特定用途向けIC(ASIC)108などの1つまたは複数のICデバイスを含んでよい。ASIC 108は、1つまたは複数の処理デバイス、シーケンサ、ステートマシン、ロジック回路などを含んでよい。処理回路102は、処理回路102によって実行可能な命令およびデータを維持可能なメモリ112などのプロセッサ可読ストレージを含み、かつ/またはそれに結合されてよい。処理回路102は、オペレーティングシステム、およびメモリデバイス112内に存在するソフトウェアモジュールの実行をサポートし可能にするアプリケーションプログラミングインターフェース(API)110レイヤのうちの1つまたは複数によって制御され得る。メモリデバイス112は、読取り専用メモリ(ROM)および/もしくはランダムアクセスメモリ(RAM)、電気的消去可能プログラマブル読取り専用メモリ(EEPROM)、フラッシュメモリデバイス、または処理システム内およびコンピューティングプラットフォーム内で使用され得る任意のメモリデバイスを含み得る。処理回路102は、装置100を構成し動作させるために使用される動作パラメータおよび他の情報を保持することができるローカルデータベース114を含み、かつ/またはそれにアクセスすることができる。ローカルデータベース114は、データベースモジュールまたはサーバ、フラッシュメモリ、磁気媒体、EEPROM、光媒体、テープ、ソフトディスクまたはハードディスクなどのうちの1つまたは複数を使用して実装することができる。処理回路はまた、他の構成要素の中でも、アンテナ122、
ディスプレイ124などの外部デバイス、ボタン128およびキーパッド126などのオペレータ制御に動作可能に結合されてよい。
【００２１】
図2は、ワイヤレスモバイルデバイス、モバイル電話、モバイルコンピューティングシステム、ワイヤレス電話、ノートブックコンピュータ、タブレットコンピューティングデバイス、メディアプレーヤ、ウェアラブルコンピューティングデバイス、ゲーミングデバイスなどの、装置200のいくつかの態様を示すブロック概略図である。装置200は、通信リンク220を介してデータおよび制御情報を交換する複数のICデバイス202および230を含み得る。通信リンク220は、互いに極近傍に配置されるか、または装置200の異なる部分に物理的に配置され得るICデバイス202および230を相互接続するために使用され得る。一例では、通信リンク220は、ICデバイス202および230を担持するチップキャリア、基板、または回路板に設けられ得る。別の例では、第1のICデバイス202は、フリップフォンのキーパッドセクション内に配置されてよく、第2のICデバイス230は、フリップフォンのディスプレイセクション内に配置されてよい。別の例では、通信リンク220の一部分は、ケーブル接続または光接続を含み得る。
【００２２】
通信リンク220は、複数のチャネル222、224、および226を含み得る。1つまたは複数のチャネル226は双方向であり得るし、半二重モードおよび/または全二重モードで動作することができる。1つまたは複数のチャネル222および224は単方向であり得る。通信リンク220は、一方向においてより高い帯域幅を提供する非対称であり得る。本明細書に記載された一例では、第1の通信チャネル222は順方向リンク222と呼ばれてよく、第2の通信チャネル224は逆方向リンク224と呼ばれてよい。ICデバイス202と230の両方が通信リンク222上で送受信するように構成される場合でも、第1のICデバイス202はホストシステムまたは送信機として指定されてよく、第2のICデバイス230はクライアントシステムまたは受信機として指定されてよい。一例では、順方向リンク222は、第1のICデバイス202から第2のICデバイス230にデータを通信するときにより高いデータレートで動作することができ、逆方向リンク224は、第2のICデバイス230から第1のICデバイス202にデータを通信するときにより低いデータレートで動作することができる。
【００２３】
ICデバイス202および230は、各々、プロセッサ、あるいは他の処理回路もしくは処理デバイスおよび/またはコンピューティング回路もしくはコンピューティングデバイス206、236を含み得る。一例では、第1のICデバイス202は、ワイヤレストランシーバ204およびアンテナ214を介するワイヤレス通信を維持することを含む、装置200のコア機能を実行することができ、第2のICデバイス230は、ユーザインターフェースをサポートし、ディスプレイコントローラ232を管理するかもしくは動作させ、かつ/またはカメラコントローラ234を使用してカメラまたはビデオの入力デバイスの動作を制御することができる。ICデバイス202および230のうちの1つまたは複数によってサポートされる他の特徴には、キーボード、音声認識構成要素、および他の入力デバイスまたは出力デバイスが含まれ得る。ディスプレイコントローラ232は、液晶ディスプレイ(LCD)パネル、タッチスクリーンディスプレイ、インジケータなどの、ディスプレイをサポートする回路およびソフトウェアドライバを含み得る。記憶媒体208および238は、それぞれのプロセッサ206および236、ならびに/またはICデバイス202および230の他の構成要素によって使用される命令およびデータを保持するように適合された、一時的ストレージデバイスおよび/または非一時的ストレージデバイスを含み得る。各プロセッサ206、236およびその対応する記憶媒体208および238、ならびに他のモジュールおよび回路の間の通信は、それぞれ、1つまたは複数のバス212および242によって容易にされ得る。
【００２４】
逆方向リンク224は、順方向リンク222と同じ方式で動作してよく、順方向リンク222および逆方向リンク224は、同等の速度または異なる速度で送信することが可能であってよく、速度はデータ転送レートおよび/またはクロッキングレートとして表されてよい。順方向および逆方向のデータレートは、アプリケーションに応じて桁数が実質的に同じであるか、または異なってよい。いくつかのアプリケーションでは、双方向リンク226は、第1のICデバイス202と第2のICデバイス230との間の通信をサポートすることができる。順方向リンク222および/または逆方向リンク224は、たとえば、順方向リンク222および逆方向リンク224が同じ物理接続を共有し、半二重様式で動作するとき、双方向モードで動作するように構成可能であってよい。
【００２５】
図2の通信リンク220は、高速デジタルインターフェースにおいて符号化データを搬送するように構成され得る複数の信号レーンを含むワイヤードバスとして実装されてよい。物理レイヤドライバ210および240は、通信リンク220上で送信できる符号化データを生成するように構成されるかまたは適合されてよい。符号化方式は、業界規格に従って選択されてもよく、高速データ転送を実現しかつ電力消費量を最低限に抑えるような方式が選択されてよい。
【００２６】
一例では、順方向リンクならびに逆方向リンク222および224は、ディスプレイリフレッシュのために810Mbpsでピクセルデータを配信する、フレームバッファなしで毎秒80フレームのLCDドライバICの、ワイドビデオグラフィックスアレイ(WVGA)をサポートするように構成されるかまたは適合されてよい。
【００２７】
別の例では、順方向リンクならびに逆方向リンク222および224は、ダブルデータレート(DDR)同期ダイナミックランダムアクセスメモリ(SDRAM)などのダイナミックランダムアクセスメモリ(DRAM)間の通信を可能にするように構成されるかまたは適合されてよい。符号化デバイスは、クロック遷移ごとに複数のビットを符号化するように構成されるかまたは適合されてもよく、制御信号、アドレス信号などを含むSDRAMから得たデータを送受信するためにワイヤの複数のセットを使用することができる。符号化デバイスは、物理レイヤドライバ210および/または240内に設けられてもよく、あるいはICデバイス202および230の他の構成要素内に設けられてよい。
【００２８】
順方向リンクならびに逆方向リンク222および224は、特定用途向け業界規格に準拠してもよく、あるいは適合可能であってよい。一例では、Mobile Industry Processor Interfaceアライアンス(MIPI)規格は、アプリケーションプロセッサICデバイス202と、モバイル通信デバイス内のカメラまたはディスプレイをサポートするICデバイス230との間の同期インターフェース仕様(D-PHYまたはM-PHY)を含む物理レイヤインターフェースを定義する。D-PHY仕様は、モバイルデバイス向けのMIPI仕様に準拠する製品の動作特性を支配する。D-PHYインターフェースは、モバイル通信デバイス内でコンポーネント202と230との間を相互接続する柔軟で、低コストで、高速のシリアルインターフェースを使用してデータ転送をサポートし得る。これらのインターフェースは、電磁干渉(EMI)問題を回避するためにスローエッジを有する比較的低いビットレートをもたらす相補型金属酸化物半導体(CMOS)パラレルバスを含んでよい。
【００２９】
一例では、MIPI D-PHYは、高速クロックレーンおよび1つまたは複数のデータレーンを使用して高速差動シグナリングをサポートすることができ、その場合、各レーンは差動的に駆動される一対のワイヤ上で搬送される。MIPI D-PHY最高リンクレートは、レーン当たり毎秒1.0ギガビット(Gbps)からレーン当たり1.5Gbpsの範囲であり得る。一方で、いくつかのアプリケーションにはより一層のデータレートが必要となり得る。このいくつかのアプリケーションは、高いフレームレートを有する大型ピクセル画像センサを使用するカメラアプリケーションを含む。いくつかのM-PHY次世代インターフェースは、より高いデータレートを求める要求を満たすためにより大きいリンク帯域幅を指定している。
【００３０】
本開示のいくつかの態様は、MIPI D-PHYに準拠するかまたは適合可能であるように実装される通信リンクに適用可能であり、かつ帯域幅、スループットなどに関する変化する要求を満たすためにD-PHY規格によって定義されたデータ通信リンクとM-PHY規格によって定義されたデータ通信リンクとの機能ギャップを埋めるように開発されたリンクを含む、これらの規格の機能を拡張する通信リンクに適用可能である。たとえば、クロック管理を向上させることによって最高リンクデータレートを高くすることができる。
【００３１】
図3は、MIPI D-PHY仕様に従って動作させることができるデータ通信インターフェース300の一例を示す図であり、図4は、そのようなデータ通信インターフェース300に関する信号タイミングのいくつかの態様を示す。この例では、シリアライザ(SER)304が、データワード、バイト、または他のサイズのデータ要素を、送信回路310内の複数の差動ラインドライバ308の各々に供給される信号中のデータのシリアルストリームに変換する。差動ラインドライバ308の各々は、1つまたは複数のデータレーン324を介して差動信号中のデータを送信するように構成されるかまたは適合される。図示の例では、データ通信インターフェース300において少なくとも2つのデータレーン324aおよび324bが実装される。受信回路312において、差動レシーバ330は、データレーン324から差動信号を受信し、受信されたシリアルデータストリームをデシリアライザ(DES)314に供給するように構成されるかまたは適合される。DES 314は次いで、シリアルデータストリームをワード、バイト、または他のサイズのデータ要素に変換してよい。
【００３２】
データレーン324aおよび324bは、送信クロック信号320の周波数によって決定されるレートでデータを搬送するように動作してよい。送信クロック信号320は、シングルデータレート(SDR)クロック信号であってもよく、それによって、データは送信クロック信号320の立ち下がりエッジ406上または立ち上がりエッジ408上のいずれかで送信される。送信クロック信号320は、クロックレーン326上で送信されるクロック信号322を生成する場合もある送信(Tx)クロックタイミング回路306によって生成されてよい。一例では、クロック信号322は、SER 304によって使用されるSDR送信クロック信号320の周期404の2倍の持続時間を有する周期416を有するデュアルデータレート(DDR)クロックであってよい。DDR Txクロック信号322は、SER 304によって使用されるSDR送信クロック信号320から導かれてもよく、ならびに/あるいはこのSDR送信クロック信号320との同期がとられてよい。受信回路312では、クロックレーン326から復元されたDDR受信クロック(Rxクロック)信号328の立ち下がりエッジ410と立ち上がりエッジ412の両方を使用してサンプリングされてよい。いくつかの例では、DDR Txクロック信号322は、データレーン324上の信号が安定化されたときに生じるサンプリングエッジ410、412を供給するようにSDR送信クロック信号320に対して位相シフトされてよい。一例では、位相シフトは90度であってよい。別の例では、位相シフトは45度であってよい。他の例では他の位相シフトが使用されてもよく、使用される位相シフトとして選択される位相シフトは、使用される通信インターフェースの種類、送信レートなどに関連する因子によって決定されてよい。
【００３３】
クロックレーン326上でより低い周波数DDR Txクロック322を使用すると、データ通信インターフェース300による電力消費量が低減し得る。さらに、データレーン324から受信されるデータおよび/またはクロックレーン326から復元されるRxクロック信号328は、クロックレーン326上でDDR Txクロック信号322が送信されるときにエラー、位相シフト、および/またはジッタが生じにくくなり得る。
【００３４】
クロックレーン326から復元された受信(Rx)クロック信号328は、受信回路312のDES 314によってデータレーン324からデータをキャプチャするのに使用することのできる基準エッジ410、412を提供することができる。図4に示すように、Rxクロック信号328の各立ち下がりエッジ410および立ち上がりエッジ412は、データレーン324上で受信される信号402をサンプリングするのに使用されてよい。クロックレーン326からRxクロック信号328を受信するために差動レシーバ318が設けられてよい。一例では、差動レシーバ318は、Rxクロック信号328をDES 314に直接供給する。別の例では、Rxクロック信号328は、DES 314に供給される前に遅延を施されてもよい。たとえば、Rxクロック信号328は、データレーン324から受信される信号上の遷移間にデータサンプリングエッジを提供するように位相遅延を施されてよい。DES 326は、Rxクロック信号328の各遷移時にまたは各遷移後にデータをキャプチャするようにRxクロック信号328の非反転バージョンおよび反転バージョンを使用してよい。Rxクロック信号328は、DES 314とSER 304を同期させるのに使用され得る。
【００３５】
最高リンクレートは、クロックレーン326に関連するスキュー、ジッタ、および/または遷移(立ち上がりまたは立ち下がり)時間ならびに/あるいはデータレーン324上のスキュー、ジッタ、および/または遷移時間によって制限され得る。DDR Txクロック信号322および/またはRxクロック信号328は、データレーン324からデータを確実にキャプチャするために位相シフトを施されてよい。一例では、位相シフトによって、Rxクロック信号328中のエッジ410、412が各データ送信周期414の中間時点において生じるかまたは中間時点の近くにおいて生じてよい。別の例では、位相シフトによって、Rxクロック信号328中のエッジ410、412は、エッジ410、412後の指定された遷移時間後および/または指定された準備時間に相当し得るあらかじめ定義された周期だけ遅延されることがある。別の例では、位相シフトによって、Rxクロック信号328中のエッジ410、412が各データ送信周期414の終了時点の近くで生じてよい。
【００３６】
本明細書において開示されるいくつかの態様によれば、DDR Txクロック信号322は、SER 304に供給されるSDRクロック信号320の周波数の2分の1の周波数でD-PHY物理リンクを介して送信されてよい。一例では、DDR Txクロック信号322は、SER 304が1GHz SDR送信クロック信号320によってクロッキングされるときに、データレーン324用の1Gbpsデータレートをサポートする500MHz信号であってよい。いくつかの例では、SDR送信クロック信号320は、SER 304および/またはTxタイミング回路306によってデータ信号遷移間においてCLKエッジを生成するのに使用されてよい。
【００３７】
図5は、図3に示すデータ通信インターフェース300のデータレーン324上でのデータ送信に関連するタイミングのいくつかの態様を示すタイミング図500、520を含む。第1のタイミング図500は、第2のタイミング図520に示すデータ送信に使用されるレートの約2分の1である送信クロックレートを使用するデータ送信のタイミングを示す。第1および第2の例500、520は、SDR送信クロック信号320とRxクロック信号328とデータレーン324から受信されるデータとの間の関係に対するクロッキング周波数の増大に関連する効果を示す。第1の例では、送信クロックアイパターン502は、クロックレーン326上においてDDR Txクロック信号322のエッジが生じると予期される遷移領域510を含む。遷移領域510は一般に、エッジの考えられる最も早い発生とエッジの考えられる最も遅い発生との間の時間にわたる。遷移領域510は、少なくともいくつかの例ではラインドライバ316と、レシーバ318と、DES 314とを含む、DDR Txクロック信号322の通信に関連する回路のタイミング公差に相当してよい。タイミング公差および/または遷移領域510は、準備時間、伝搬遅延、立ち上がり時間および/または立ち下がり時間などに関係する。タイミング公差および/または遷移領域510は、たとえば、プロセス、電圧、および温度(PVT)の変動の影響を受ける金属抵抗キャパシタンス(RC)の変動性に対処することが可能である。
【００３８】
DDR Txクロック信号322に対応する遷移領域510は、データレーン324上で送信される信号が安定すると予期される周期を決定し得る。いくつかの例では、データレーン324上で送信される信号は、クロックレーン326から受信される信号から導かれ得るDDR受信クロック信号328のクロックエッジに基づいてサンプリングされてよい。たとえば、第1のタイミング図500を参照するとわかるように、DDR受信クロック信号328のエッジ518は、DDR Txクロック信号322の遷移領域510の終了時点で提供されるかまたは終了時点の近くで提供されてよい。少なくともいくつかの例では、受信クロック信号328のエッジ518は、DDR Txクロック信号322の立ち上がりエッジ516の実際の発生に対して位相シフトを施されるか、遅延されるか、または進ませられてよい。一例では、DDR受信クロック信号328のエッジ518とDDR Txクロック信号322のエッジとの間のタイミングのある程度の差は、少なくとも部分的に、準備時間、伝搬遅延、立ち上がり時間などの変動性に起因し得る。別の例では、DDR受信クロック信号328のエッジ518とDDR送信クロック信号322のエッジ516との間のタイミングのある程度の差は、少なくとも部分的に、遅延要素および他のロジックに起因し得る。
【００３９】
データレーンアイダイアグラム504は、データレーン324に関連する遷移領域516および得られた安定性周期(アイ領域)512を示す。遷移領域516は、ラインドライバ308と、レシーバ330と、SER 304と、クロック生成回路306と、クロック信号レシーバ318と、たとえばクロック復元回路を含むDES 314とを含むデータレーン324を介した送信に関連する回路に関連するタイミング公差に相当し得る。データレーン324からデータを確実に受信するために、データレーン324のシグナリング状態が安定すると予期されるアイ領域512内に受信クロック信号328のエッジ518が設けられてよい。データレーンアイダイアグラム504において、アイ領域512は、データレーン324上の連続する遷移領域516間の周期を表す。データレーン324の組合せに関するアイ領域512は、持続時間が、個々のデータレーン324a、324bに関して算出されるかまたは測定される、たとえば、データレーン324a、324b上の信号間にタイミングスキューが存在するアイ領域よりも短くてよい。
【００４０】
いくつかの態様によれば、遷移信号の影響を回避するためにDDR送信クロック信号322の遷移領域510よりも前または後にデータサンプリングが実行される。たとえば、DDR受信クロック信号328は、DDR送信クロック信号322の遷移領域510内で生じるサンプリングエッジ518を提供してよい。この例では、データレーン324に関するアイ領域512の持続時間がDDR送信クロック信号322の遷移領域510よりも長いときに、データレーン324からデータを確実にキャプチャすることができる。有効データレーンアイダイアグラム506は、データレーン324上の信号が安定状態であると予期される対応するアイ領域512の間にデータレーンからデータがキャプチャされ得るアイ領域514aおよび514bを示す。遷移領域510および516によって占有されるデータ送信間隔508の比率は、DDR送信クロック信号322のすべての考えられる遷移516がデータアイ領域512内で生じるサンプリング窓が利用可能になるほど十分小さい。
【００４１】
アイ領域514aおよび514bの持続時間は、クロック復元回路の設計を制限することがあるタイミングマージンに相当し得る。DDR送信クロック信号322の周波数を高くするとこれらのタイミングマージンをかなり圧縮することができる。第2のタイミング図520は、DDR送信クロック信号322の周波数が第1のタイミング図500に示す例に対して約2倍にされる例を示す。第2のタイミング図520では、DDR送信クロックアイパターン522およびデータレーンアイパターン524のアイ領域530および532ならびに遷移領域538および540は、第1のタイミング図500における対応するアイ領域512および遷移領域510、516よりもかなり短い持続時間を有する。
【００４２】
図示の例では、DDR送信クロック信号322は、第1のタイミング図500における遷移領域510と実質的に同じ持続時間を有する遷移領域538を有してよい。データレーン324上で送信される信号は、第1のタイミング図500における遷移領域516と実質的に同じ持続時間を有する組合せ遷移領域540を有してよい。遷移領域510および518は、第1の例のデータ送信間隔508よりも持続時間が短いデータ周期528のより大きい部分を占める。DDR送信クロックアイダイアグラム522およびデータレーンアイダイアグラム524のオーバレイとして説明することができる有効アイパターン526は、持続時間が比較的短い有効アイ534、536を有する。クロック遷移が、データ遷移と重なり合うかまたはデータ遷移に時間的に近接しているときに、1つの有効アイ534または536が閉じるとデータサンプリングが失敗することがある。受信されるDDR送信クロック信号322における位相シフトがデータキャプチャの信頼性を低下させることがある。たとえば、受信されるDDR送信クロック信号322における位相シフトが45度である場合、基本的に、有効アイ534、536の持続時間が2分の1になり、DES 314がデータレーン324からデータを確実にキャプチャする能力が低下する。したがって、転送レートが高くなると、データレーン324からデータを確実にキャプチャすることがより困難になる。
【００４３】
本明細書において開示されるいくつかの態様によれば、高速データリンクのクロッキングの改善は、クロックレーン326上で送信されるクロック信号、データレーン324上で送信されるデータ信号、および/または他のクロック関連信号の何らかの組合せからクロック情報を抽出することによって実現されてよい。
【００４４】
図6は、複数のレシーバ606と、本明細書において開示されるいくつかの態様によるマルチワイヤ通信インターフェースにおいて使用できるように構成されてよいクロックおよびデータ復元(CDR)回路608の一例とを含むレシーバ回路600を示すブロック図である。図7は、CDR回路608の動作のいくつかの態様を示すタイミング図700である。CDR回路608は、差動マルチワイヤ通信リンクまたはシングルエンドマルチワイヤ通信リンク602を使用するインターフェースを含む、N!符号化、N位相符号化、およびシンボル遷移クロッキングを使用する他の符号化方式を使用するインターフェースを含む様々な種類のマルチワイヤインターフェースに使用されてよい。通信リンク602のワイヤは、各レーンが通信リンク602の1本または複数のワイヤを含む複数のレーン604a、604b、...604mとして構成されてよい。
【００４５】
図示の例では、差動レシーバ606が、通信リンク602のワイヤのペアを使用して実装される差動符号化レーン604a、604b、...604mからデータ信号およびクロック信号を受信するのに使用される。別の例では、レシーバ606は、マルチレーンシングルエンド通信リンクにおいて使用されるシングルエンドラインレシーバを含んでよい。別の例では、複数の差動レシーバ606の各々が、各ワイヤを複数のレシーバ606に結合することができるように通信リンク602のワイヤ602のそれぞれに異なるペアに結合されてよい。
【００４６】
レシーバ606は、通信リンク602のシグナリング状態を表すnビット信号630を生成するように構成されてよい。CDR回路608は、通信リンク602の1つまたは複数のレーン604a、604b、...604mからレシーバ606によって受信されるクロック情報を抽出するのに使用されてよい。一例では、レーン604a、604b、...604mは、図3の例に示すクロックレーン326および/またはデータレーン324のうちの1つまたは複数を含んでよい。レシーバ606の各々は、それに対応するレーン604a、604b、...604mのシグナリング状態を表す出力を提供してよい。レシーバ606の出力は、受信クロックが抽出され得る入力状態遷移信号(SI)630に寄与する。1つまたは複数のレンズ604a、604b、...604mの組み合わされたシグナリング状態は、データ送信間隔508または528(図5参照)において送信されるシンボルを表してよい。
【００４７】
一例では、クロック情報は、通信リンク602の複数のワイヤまたは導体のシグナリング状態における遷移に対応し得る遷移信号630におけるシンボル遷移に埋め込まれる。CDR回路608は、遷移信号630からクロックシンボルおよびデータシンボルを抽出するように構成されてよい。一例では、CDR回路608は、クロック抽出回路624と、nビット入出力を取り扱うように構成されたフリップフロップデバイス626と、nビット入出力を取り扱うように構成されたレベルラッチ628とを含む。クロック抽出回路624は、比較器610と、セットリセットラッチ614と、第1の遅延デバイス(遅延S)618とを含んでよい。クロック抽出回路624は、遷移信号630からデータをキャプチャするのに使用することのできる1つまたは複数のクロック信号を生成するように適合されてよい。CDR回路608は、ジッタ補償を提供してもよく、それによって、1つまたは複数のクロッキング信号がレシーバ606から受信される遷移信号630におけるシグナリング状態遷移からシンボルをサンプリングするのを可能にする。
【００４８】
動作時に、比較器610は、遷移信号630を遷移信号の遅延インスタンス(SD信号632)と比較してよい。比較器610は、セットリセットラッチ614の「Set」入力に比較(NE)信号612を提供し、セットリセットラッチ614は、比較信号612のフィルタリングバージョンである出力(NEFLT)信号616を生成する。遅延デバイス618は、NEFLT信号616を受信し、NEFLT信号616の遅延インスタンスをNEFLTD信号620として出力する。遅延デバイス618は、アナログ遅延回路および/またはデジタル遅延回路を含んでよい。NEFLTD信号620は、セットリセットラッチ614の出力が遅延デバイス618により提供される遅延周期の後リセットされるようにセットリセットラッチ614への「Reset」入力として働く。一例では、NEFLT信号616は、シンボルをサンプリングするフリップフロップデバイス626をクロッキングするのに使用されてよい。NEFLT信号616は、SD信号632を供給するレベルラッチ628を制御する信号636を生成するのに使用されてもよい。
【００４９】
一例では、遷移信号630は、連続するシンボル間で遷移するクロック信号を搬送してよい。いくつかの例では、遷移信号630は、連続するシンボルの各ペア間のシグナリング状態遷移を確保するシンボルを搬送してよい。すなわち、少なくとも1つのレーン604a、604b、...および/または604mのシグナリング状態が連続するシンボル間の各遷移時に変化するようにシンボルにおいて符号化されてよい。
【００５０】
レベルラッチ628は、遷移信号630を受信し、SD信号632を出力として供給する。レベルラッチ628は、NEFLT信号616とNEFLTD信号620を組み合わせるORゲート622などの組合せ論理によって出力されるNEFLT_COMP信号636によってトリガされる。フリップフロップデバイス626は、SD信号632を受信し、遷移信号630からキャプチャされたシンボルのシーケンスを含む出力信号(S)634を生成してもよい。一例では、フリップフロップデバイス626は、NEFLT信号616によってトリガされてよい。フリップフロップデバイス626は、NEFLT信号616上の立ち上がりエッジによってトリガされてよい。したがって、レベルラッチ628は、遷移信号630の遅延バージョンを提供し、比較器610が連続するシンボル間の遷移を識別するのを可能にする。たとえば、NE信号612は、比較器610への入力が異なるときには論理ハイ状態であってよい。NE信号612は、フリップフロップデバイス626のラッチングクロックとして働くNEFLT信号616を生成する働きをする。
【００５１】
動作時に、現在のシンボル(S0)704と次のシンボル(S1)706との間で遷移が生じたときにSI信号630の状態が変化し始める。NE信号612は、比較器610がまず、SI信号630とSD信号632との間の差を検出するときにハイに遷移し、それによってセットリセットラッチ614が非同期的にセットされる。したがって、NEFLT信号616がハイに遷移し、このハイ状態は、NEFLTD信号620がハイになったときにセットリセットラッチ614がリセットされるまで維持される。NEFLT信号616は、NE信号612の立ち上がりエッジに応答してハイ状態に遷移し、NEFLT信号616は、第1のアナログ遅延デバイス(遅延S)618に起因する遅延の後のNEFLTD信号620の立ち上がりエッジに応答してロー状態に遷移する。
【００５２】
シンボル702、704、706、708、および710間の遷移が生じたときに、ワイヤ間スキュー、信号オーバーシュート、信号アンダーシュート、クロストークなどに起因してSI信号630上において1つまたは複数の中間状態または不定状態720、724、726、728が生じる場合がある。SI信号630上の中間状態は、無効データと見なされてよく、比較器610の出力が短周期の間ロー状態に向かって戻るときに、これらの中間状態がNE信号612においてスパイク744、746、748、および750を生じさせ得る。スパイク744、746、748、および750は、セットリセットラッチ614によって出力されるNEFLT信号616に影響を及ぼさない。セットリセットラッチ614は、NE信号612上のスパイク744、746、748、および750をNEFLT信号616から効果的にブロックしならびに/あるいはフィルタリングする。
【００５３】
フリップフロップデバイス626は、SI信号630における入力シンボル702、704、706、708、および710が、フリップフロップデバイス626によってラッチされるかまたはキャプチャされる前に変化することが可能であるので負保持時間(-ht)を有してよい。たとえば、SD信号632における各シンボル702'、704'、706'、および708'は、SI信号630において入力シンボル702、704、706、708、および710が変化した後に生じるNEFLT信号616の立ち上がりクロックエッジにおいてフリップフロップデバイス626によってセットまたはキャプチャされる。
【００５４】
CDR回路608は、他のデバイスおよび/または回路によってS信号634におけるシンボルを抽出するのに使用すべき1つまたは複数のクロック信号を提供してよい。一例では、CDR回路608は、NEFLT信号616またはNEFLTD信号620を分割することによってDDR受信クロック(DDR RXCLK)信号640を提供してよい。図示の例では、DDR RXCLKクロック信号640は、NEFLT信号616の各立ち下がりエッジにおいてトグルされるフリップフロップ638によって出力される。
【００５５】
図6に示すCDR回路608は、通信インターフェースからクロック信号を復元し、ならびに/あるいは通信インターフェースからデータをキャプチャするのに使用される回路の一例として設けられる。CDR回路608は、様々なデータ送信レートにおいて性能を最適化するように、および他の理由で様々な種類のインターフェースに関する設計上の目標に対処するように適合されるかまたは構成されてよい。
【００５６】
図8は、信頼できるDDR受信クロック(DDR RXCLK)信号830を生成するためにCDR回路812を使用する通信リンクの第1の例800を示す。CDR回路812は、クロックレーン822から受信されるクロック信号826および1つまたは複数のデータレーン824から受信される信号828のうちのいずれかにおいて最初に生じた遷移を検出することによってDDR RXCLK信号830を生成してよい。たとえば、DDR RXCLK信号830におけるエッジは、最初に検出される遷移がクロックレーン822の状態の変化であるかそれとも監視されるデータレーン824の状態の変化であるかにかかわらず、最初に検出された遷移を使用して送信間隔914(図9参照)間の各遷移時に生成されてよい。
【００５７】
図示の例では、クロックレーン822上で送信されるクロック信号814は、2つのデータレーン824上で送信されるデータ信号816を生成するのに使用されるトランスミッタクロック(DDR TXCLK)信号820から直接導かれてよい。クロック信号814および/または820のシグナリング状態における遷移は、データレーン824上で送信されるべきデータ信号816の遷移と揃えられてよい。したがって、クロックレーン822から受信されるクロック信号826の遷移は、データレーン824から受信されるデータ信号828上の対応する遷移と実質的に揃えられてよい。データレーン824および/またはクロックレーン822から受信されるデータ信号828の遷移は、クロックレーン822および/またはデータレーン824に含まれる送信経路の電気的特性および物理的特性の差に起因して完全には揃わない場合がある。CDR回路812は、データレーン824および/またはクロックレーン822のうちの異なるレーンを介して送信される信号間のタイミング差を含む遷移領域を考慮するように構成されてよい。本明細書において開示されるいくつかの態様によれば、CDR回路812は、クロックレーン822またはデータレーン824のうちのいずれかから受信される信号826、828上で検出される最初の遷移に基づいてDDR RXCLK信号830上にエッジを生成してよい。クロックレーン822またはデータレーン824のうちのいずれかから受信される信号826、828上のその後の遷移は、たとえば、それぞれの遷移領域の持続時間に基づいて算出される周期内に生じる場合には無視されてよい。
【００５８】
図示の例に示すように、SER 802は、より低速のDDR送信クロック信号822を使用するように構成されてよい。いくつかの例では、SER 802は、より高周波数のSDRクロック信号を使用してクロッキングされてよい。
【００５９】
図9は、図8に示すインターフェースに関連する信号のタイミングの例を示すタイミングブロック図900である。いくつかの態様によれば、送信されるクロック信号814は、DDRトランスミッタクロック信号820の反転バージョンであってもあるいは非反転バージョンであってもよく、データ信号816は、DDRトランスミッタクロック信号820のエッジに基づいて生成されてよい。したがって、送信されるクロック信号814、データ信号816、およびDDRトランスミッタクロック信号820のエッジは実質的に揃えられてよい。クロックレーン822およびデータレーン824の各々は、同様の電気的特性および物理的特性を有してもよく、レーン822、824上の差動ドライバ806および差動レシーバ808は、クロックレーン822およびデータレーン824が同様の持続時間を有する遷移領域および/またはアイ領域を個々に有することができるように同様のタイミング公差を有してよい。マルチレーンインターフェースにおいて、組合せデータアイダイアグラム904内のアイ領域912は、複数のデータレーン824を表し、クロックアイダイアグラム902内のアイ領域910よりも小さくてよい。アイ領域910および912のサイズの差は、データレーン824同士の間および/またはクロックレーン822とデータレーン824との間のジッタの差に起因し得る。いくつかの例では、データレーン824におけるジッタには、データパターンに基づくパターンジッタであって、クロックレーン822に存在するジッタに影響を与えないパターンジッタを含めてよい。いくつかの例では、データレーン824におけるジッタには、SER回路802のタイミングを制御するクロック生成回路804であって、クロックレーン822上で送信されるクロック信号を生成するクロック生成回路804からのジッタに加えて、SER 802および/またはデータレーン824を駆動するドライバ回路806によって発生するジッタが含まれる。
【００６０】
CDR回路812は、連続する送信間隔914間の最初に検出される遷移に基づいてDDR RXCLK信号830を生成するように構成されるかまたは適合されてよい。一例では、DDR RXCLK信号830における遷移は、アイ領域910、912の中心の近くまたはアイ領域910、912の終了位置の近くで生じてよい。別の例では、DDR RXCLK信号830における遷移は、遷移領域906および/または908のうちの1つまたは複数が開始してからあらかじめ定義された時間間隔または遅延の後に生じてよい。別の例では、DDR RXCLK信号830における遷移は、遷移領域906および/または908のうちの1つまたは複数の終了の、あらかじめ定義された時間間隔または遅延前に生じてよい。
【００６１】
DDR RXCLK信号830のエッジは、遷移領域906または908内の所与の点において生じると想定される最初に検出される遷移に対してずらされてよい。したがって、DDR RXCLK信号830のエッジは、データ信号324の遷移間で生成されてよい。CDR回路812は、受信されるデータ信号828のアイ領域912内で確実にかつ常に生じるDDR RXCLK信号830におけるエッジを生成するように、本明細書において開示されるいくつかの態様に従って構成されるかまたは適合されてよい。インターフェースは、CDR回路812が本明細書において開示されるいくつかの態様に従って構成されるかまたは適合されるときにはより高いデータ送信レートを使用してよい。
【００６２】
図10は、本明細書において開示される1つまたは複数の態様に従ってCDR回路1012を使用するインターフェースの第2の例を示す。この例では、クロック信号の代わりに送信されるストローブ信号1014が生成されてよい。ストローブ信号1014は、タイミングレーン1022を介して送信されてよい。いくつかの例では、インターフェースは、タイミングレーン1022上でストローブ信号1014またはクロック信号814(図8参照)を供給するように構成可能であってよい。
【００６３】
ストローブ信号1014は、データ信号1016のうちの1つまたは複数の状態の遷移が送信間隔1110、1112、1114(図11参照)間の境界において生じているかまたは生じると予期されるかどうかを示すSER 1002から受信される情報1032に基づき、送信クロック回路1004によって生成されてよい。1つまたは複数のデータ信号1024は、受信クロック信号1030上にエッジを生成することを目的として、CDR回路1012によって監視されるデータレーン1024に関連付けられてよい。一例では、送信タイミング回路1004は、CDR回路1012によって監視されるデータレーン1024に対応するデータ信号1016のうちのどのデータ信号1016においても遷移が生じていないかまたは遷移が生じないと予想されるときにはストローブ信号1014上にエッジを生成する。
【００６４】
別の例では、送信タイミング回路1004は、CDR回路1012によって監視されるデータレーン1024上で送信されるデータ信号1016のうちのどのデータ信号1016においても遷移が生じていないかまたは遷移が生じないと予想されるときにはストローブ信号1014上にエッジを生成する。一例では、SER 1002は、第1のデータレーン1024aのみにおいて、遷移の有無を報告する。SER 1002によって報告されるデータ信号の数は、データ信号1016内のデータを符号化するのに使用される符号化技術、ハードウェアの複雑さに対して設定された制限、パワーバジェット、および/または他の因子に基づいて定められてよい。一例では、64レーンインターフェースの各々において遷移を判定する複雑さは、64個のデータレーンのうちの少ない割合から信頼できるレシーバクロック1030を生成できるときには不当であり得る。別の例では、SER 1002は、ストローブ信号1014上で生じるエッジの数を増大させるために制限された数のデータ信号に関する報告を行ってよい。
【００６５】
CDR回路1012は、受信されるデータ信号1028のうちの少なくとも1つまたは受信されるストローブ信号1026におけるデータ送信間隔1110、1112、1114(図11参照)間の境界1102、1104、1106において少なくとも1つの信号遷移が確実に生じるときにはレシーバクロック1030上で遷移を確実に発生させることができる。ストローブ信号1014は、クロック信号の代わりに差動データ通信リンクのクロックレーンを介して送信されてよい。ストローブ信号1014は一般に、自走するDDRクロック信号よりも低い頻度でトグルするのでリンクの電力消費量が低減し得る。
【００６６】
図11は、図10に関して説明したようにストローブ信号1014を使用する送信方式の例を示すタイミング図1100、1120を含む。第1のタイミング図1100は、第1のデータレーン1024aがDDR送信クロック信号1020上のエッジの発生の近くで状態を変化させないときにはストローブ信号1014上にエッジ1116、1118が生成される送信方式に関する。DDR送信クロック信号1020上のエッジは、連続するデータ送信間隔間の境界を示す。たとえば、k番目のデータ送信間隔1110は第1の時点1102から始まってもよく、(k+1)番目のデータ送信間隔1112は第2の時点1104から始まってよい。第1のデータレーン1024aのシグナリング状態がk番目のデータ送信間隔1110および(k+1)番目のデータ送信間隔1112を通じて一定である場合、次いで、ストローブ信号1014上でエッジ1116が生成されてよい。
【００６７】
図示の例では、第1のデータレーン1024aのシグナリング状態は、k番目のデータ送信間隔1110、(k+1)番目のデータ送信間隔1112、および第3の時点1106から開始する(k+2)番目のデータ送信間隔1114の間一定である。いくつかの態様によれば、エッジ1116、1118が、k番目のデータ送信間隔1110と(k+1)番目のデータ送信間隔1112との間の境界および(k+1)番目のデータ送信間隔1112と(k+2)番目のデータ送信間隔1114との間の境界においてストローブ信号1014に対して導入されてよい。ストローブ信号上のこれらのエッジ1116、1118はそれぞれ、第2の時点1104および第3の時点1106において生じるかまたはそれらの時点の近くにおいて生じる。第1のデータレーン1024aのシグナリング状態は第4の時点1108で変化し、ストローブ信号1014はその時点1108において変化しなくてよい。
【００６８】
第1のタイミング図1100によって示される例では、第1のデータレーン1024aは、ストローブ信号1014を生成する回路によって監視される。この例は、ストローブ信号1014を生成することを目的として一部を除くすべてのデータレーン1024が監視される他の例を表し得る。データレーンは、図示の2つのデータレーン824a、824bよりも多くのデータレーンを含んでよい。
【００６９】
いくつかの例では、複数のタイミングレーン1022が使用されてよい。DDR受信クロック1030は、データレーン824のうちの1つまたは複数上で検出される遷移および/またはタイミングレーン1022上のストローブ信号に基づいて生成されてよい。図示のように、DDR受信クロック1030は、各データ送信間隔1110、1112、1114の終了時点に近いサンプリングエッジを生成するように構成される。
【００７０】
第2のタイミング図1120は、どのデータレーン1024もDDR送信クロック信号1020上のエッジの発生の近くで状態を変化させないときにはストローブ信号1014上にエッジ1130、1132が生成される送信方式に関する。上記で指摘したように、DDR送信クロック信号1020上のエッジは、連続するデータ送信間隔間の境界を示す。
【００７１】
図示の例では、データレーンのシグナリング状態は、第1の時点1122、第2の時点1124、および第3の時点1126から開始する3つのデータ送信間隔の間一定である(1134)。データレーン1024のうちの少なくとも1つにおいて第4の時点1128および第5の時点1130で遷移が生じるかまたはそれらの時点の近くで生じる。いくつかの態様によれば、データレーン1024のシグナリング状態が連続するデータ送信間隔間で変化しないときには、ストローブ信号1014にエッジ1130、1132が導入されてよい。
【００７２】
第2のタイミング図1120によって示される例では、2つのデータレーン1024は、ストローブ信号1014を生成する回路によって監視される。この例は、ストローブ信号1014を生成することを目的として複数のデータレーン1024が監視される他の例を表し得る。データレーン1024は、図示の2つのデータレーン1024a、1024bよりも多くのデータレーンを含んでよい。
【００７３】
長い周期の間アイドル状態であるデータレーン1024は、望ましくないいくつかのシグナリング効果の影響を受ける場合がある。たとえば、データレーン1024の状態がいくつかの順次シンボル間隔または順次データ間隔の間同じ大きい値または小さい値に維持されると、信号線上の直流(DC)電圧がレール電圧またはバイアス電圧に向かってドリフトすることがある。そのようなドリフトは、以後の遷移のタイミングに影響を与え、追加のスキューまたはジッタを導入する可能性があるシグナリング慣性をもたらす可能性がある。符号化方式によっては、データレーン1024において遷移を生じなかった所定数の連続する間隔の間信号線の状態を監視し、得られる望ましくない効果を抑制するために遷移を導入するように構成されてよい。一例では、データレーンにおいて遷移を生じなかったいくつかの連続する間隔の後でエンコーダが2つのデータシンボルを付加してよい。付加された2つのシンボルは、連続する間隔の数だけ変化しなかった状態から遷移させ、次いでその状態に戻す。一例では、8つのデータ間隔の間信号が同じ状態であった後に2つのデータシンボルが導入されてよい。レシーバにおいて、付加された2つのシンボルは破棄される。この方式では、ストローブ信号1014、1026の動作はデータシンボルの付加による影響を受けない。
【００７４】
受信されるストローブ信号1026は、それ自体がDCドリフトの影響を受ける場合があり、ストローブ信号1014を搬送するタイミングレーン1022上において遷移が生じない長い周期に起因する作用を受ける場合がある。ストローブ信号1014は、長い一連のデータ間隔の間1つまたは複数のデータレーン1024において遷移が生じる場合、固定段階および/または連続段階にあってよい。この作用は、複数のデータレーン1024における遷移の有無に基づいてストローブ1014が生成されるときにはより顕著である。いくつかの例では、ストローブ信号1014の状態が所定数のデータ間隔の間変化しなかった後にストローブ信号1014に追加の遷移が導入されてよい。ストローブ信号1014上の追加の遷移は、順次データ送信間隔1110、1112、1114の間の境界に実質的に揃えられてよい。追加の遷移は、遷移が最初にデータレーン1024上で検出される場合にはCDR 1012によって無視されてよい。
【００７５】
図12は、本明細書において開示された1つまたは複数の機能を実行するように構成されてよい処理回路1202を使用する装置のためのハードウェア実施態様の簡略化された例を示す概念図1200である。たとえば、処理回路は、図1の処理回路102、図2のデバイス202またはデバイス230の少なくとも一部分などとして、配備され得る。本開示の様々な態様によれば、本明細書において開示された要素、または要素の任意の部分、または要素の任意の組合せは、処理回路1202を使用して実装することができる。処理回路1202は、ハードウェアモジュールとソフトウェアモジュールの何らかの組合せによって制御される1つまたは複数のプロセッサ1204を含み得る。プロセッサ1204の例には、マイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理デバイス(PLD)、ステートマシン、シーケンサ、ゲート論理、個別ハードウェア回路、および本開示全体にわたって記載された様々な機能を実行するように構成された他の適切なハードウェアが含まれる。1つまたは複数のプロセッサ1204は、特定の機能を実行し、ソフトウェアモジュール1216のうちの1つによって構成されるか、増強されるか、または制御され得る専用プロセッサを含んでよい。1つまたは複数のプロセッサ1204は、初期化中にロードされたソフトウェアモジュール1216の組合せを介して構成され、動作中に1つまたは複数のソフトウェアモジュール1216のローディングまたはアンローディングによってさらに構成され得る。
【００７６】
図示された例では、処理回路1202は、バス1210によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス1210は、処理回路1202の具体的な適用例および全体的な設計制約に応じて、任意の数の相互接続するバスおよびブリッジを含み得る。バス1210は、1つまたは複数のプロセッサ1204およびストレージ1206を含む様々な回路を互いにリンクさせる。ストレージ1206は、メモリデバイスおよび大容量ストレージデバイスを含むことができ、本明細書ではコンピュータ可読媒体および/またはプロセッサ可読媒体と呼ばれ得る。バス1210は、タイミングソース、タイマ、周辺機器、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせてもよい。バスインターフェース1208は、バス1210と1つまたは複数のトランシーバ1212との間のインターフェースを提供してよい。トランシーバ1212は、処理回路によってサポートされるネットワーキング技法ごとに提供され得る。場合によっては、複数のネットワーキング技法は、トランシーバ1212内で見出される回路または処理モジュールの一部または全部を共有してよい。各トランシーバ1212は、送信媒体を介して様々な他の装置と通信するための手段を提供する。装置の性質に応じて、ユーザインターフェース1218(たとえば、キーパッド、ディスプレイ、スピーカ、マイクロフォン、ジョイスティック)が設けられる場合もあり、直接またはバスインターフェース1208を介して、バス1210に通信可能に結合され得る。
【００７７】
プロセッサ1204は、バス1210の管理、およびストレージ1206を含み得るコンピュータ可読媒体に記憶されたソフトウェアの実行を含み得る全体的な処理に関与してよい。この点において、プロセッサ1204を含む処理回路1202は、本明細書において開示された方法、機能、および技法のいずれも実施するために使用され得る。ストレージ1206は、ソフトウェアを実行するとき、プロセッサ1204によって操作されるデータを記憶するために使用されてよく、ソフトウェアは、本明細書において開示された方法のうちの任意の1つを実施するように構成され得る。
【００７８】
処理回路1202内の1つまたは複数のプロセッサ1204はソフトウェアを実行してよい。ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、または他の名称で呼ばれるかどうかにかかわらず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行ファイル、実行スレッド、プロシージャ、関数、アルゴリズムなどを意味するように広く解釈されるべきである。ソフトウェアは、コンピュータ可読形態で、ストレージ1206または外部コンピュータ可読媒体に存在し得る。外部コンピュータ可読媒体および/またはストレージ1206は、非一時的コンピュータ可読媒体を含み得る。非一時的コンピュータ可読媒体には、例として、磁気ストレージデバイス(たとえば、ハードディスク、フロッピー(登録商標)ディスク、磁気ストリップ)、光ディスク(たとえば、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD))、スマートカード、フラッシュメモリデバイス(たとえば、「フラッシュドライブ」、カード、スティック、またはキードライブ)、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、レジスタ、リムーバブルディスク、およびコンピュータがアクセスし読み取ることができるソフトウェアおよび/または命令を記憶するための任意の他の適切な媒体が含まれる。コンピュータ可読媒体および/またはストレージ1206には、例として、搬送波、搬送路、および、コンピュータがアクセスし読み取ることができるソフトウェアおよび/または命令を送信するための任意の他の適切な媒体を含めてもよい。コンピュータ可読媒体および/またはストレージ1206は、処理回路1202の中に、プロセッサ1204の中に、処理回路1202の外部に存在するか、または処理回路1202を含む複数のエンティティにわたって分散され得る。コンピュータ可読媒体および/またはストレージ1206は、コンピュータプログラム製品内で具現化され得る。例として、コンピュータプロ
グラム製品には、パッケージング材料内のコンピュータ可読媒体を含めてよい。当業者は、具体的な適用例およびシステム全体に課された全体的な設計制約に応じて、本開示全体にわたって提示された記載機能を最も良く実装する方法を認識されよう。
【００７９】
ストレージ1206は、本明細書ではソフトウェアモジュール1216と呼ばれ得る、ロード可能なコードセグメント、モジュール、アプリケーション、プログラムなどの中に維持および/または構成されるソフトウェアを維持してよい。ソフトウェアモジュール1216の各々は、処理回路1202にインストールまたはロードされ、1つまたは複数のプロセッサ1204によって実行されると1つまたは複数のプロセッサ1204の動作を制御する、実行時イメージ1214に寄与する命令およびデータを含み得る。いくつかの命令は、実行されたときに、本明細書に記載されたいくつかの方法、アルゴリズム、およびプロセスに従って機能を実行することを、処理回路1202に行わせてよい。
【００８０】
ソフトウェアモジュール1216のうちのいくつかは、処理回路1202の初期化中にロードされてよく、これらのソフトウェアモジュール1216は、本明細書において開示された様々な機能の実行を可能にするように、処理回路1202を構成してよい。たとえば、いくつかのソフトウェアモジュール1216は、プロセッサ1204の内部デバイスおよび/またはロジック回路1222を構成してもよく、トランシーバ1212、バスインターフェース1208、ユーザインターフェース1218、タイマ、数学的コプロセッサなどの外部デバイスへのアクセスを管理してよい。ソフトウェアモジュール1216は、割込みハンドラおよびデバイスドライバと対話し、処理回路1202によって提供される様々なリソースへのアクセスを制御する、制御プログラムおよび/またはオペレーティングシステムを含み得る。リソースには、メモリ、処理時間、トランシーバ1212へのアクセス、ユーザインターフェース1218などを含めてよい。
【００８１】
処理回路1202の1つまたは複数のプロセッサ1204は多機能であってもよく、それにより、ソフトウェアモジュール1216のうちのいくつかは、ロードされ、異なる機能、または同じ機能の異なるインスタンスを実行するように構成される。1つまたは複数のプロセッサ1204は、さらに、たとえば、ユーザインターフェース1218、トランシーバ1212、およびデバイスドライバからの入力に応答して開始されるバックグラウンドタスクを管理するように適合され得る。複数の機能の実行をサポートするために、1つまたは複数のプロセッサ1204は、マルチタスク環境を実現するように構成されされてよく、それにより、複数の機能の各々が、必要または要望に応じて、1つまたは複数のプロセッサ1204によってサービスされる1組のタスクとして実施される。一例では、マルチタスク環境は、異なるタスク間でプロセッサ1204の制御を渡す時分割プログラム1220を使用して実装されてよく、それにより、各タスクは、任意の未処理動作の完了後、および/または割込みなどの入力に応答して、時分割プログラム1220に1つまたは複数のプロセッサ1204の制御を戻す。タスクが1つまたは複数のプロセッサ1204の制御を有するとき、処理回路は、事実上、制御するタスクに関連付けられた機能によって対処される目的に特化される。時分割プログラム1220は、オペレーティングシステム、ラウンドロビンベースで制御を伝達するメインループ、機能の優先順位に従って1つまたは複数のプロセッサ1204の制御を割り振る機能、および/または、1つまたは複数のプロセッサ1204の制御を処理機能に提供することによって外部イベントに応答する割込み駆動のメインループを含み得る。
【００８２】
図13は、マルチレーン差動通信リンク220上のデータ通信のための方法を示すフローチャートである。通信リンク220は、マルチレーン差動符号化などの適切な符号化方式を使用して符号化されたシンボルを搬送する複数のコネクタを含み得る。コネクタは、導電性ワイヤ、光信号導体、半導体相互接続などを含み得る。この方法は、デコーダの1つまたは複数のプロセッサおよび/またはデコーダと相互作用するかまたはデコーダを収容するデバイスによって実行されてよい。
【００８３】
ステップ1302において、データ通信リンクのデータレーン上で搬送されるかまたはデータ通信リンクのタイミングレーン上で搬送される信号における第1の遷移が検出される。遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じてよい。タイミングレーンは、DDRクロック信号を搬送してよい。DDRクロック信号の遷移は、データレーンから受信されるデータの遷移と揃えられてよい。タイミングレーンは、第3のデータ周期と第4のデータ周期との間の境界において前記データレーンから受信されるデータにおいて遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送してよい。タイミングレーンは、第3のデータ周期と第4のデータ周期との間の境界の近くにおいて複数のデータレーンのいずれにおいても遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送してよい。
【００８４】
ステップ1304において、第1の遷移に基づいてレシーバクロック信号上にエッジが生成される。レシーバクロック信号は、第1のデータ周期と第2のデータ周期との間の境界に対して生じる1つまたは複数の追加の遷移が、エッジが生成された後に生じるときには、この1つまたは複数の追加の遷移による影響を受けないことが可能である。第1のデータ周期は第2のデータ周期よりも前に生じてよい。エッジは、第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用されてよい。
【００８５】
ステップ1306において、データレーンから受信されるデータは、レシーバクロック信号を使用してキャプチャされる。レシーバクロック信号は、1つまたは複数のデータレーンから受信されるデータを非直列化するのに使用されてよい。
【００８６】
一例では、第1の遷移は、複数のデータレーンならびにタイミングレーンを監視することによって検出され得る。第1の遷移は、最初に生じる遷移である複数のデータレーンおよびタイミングレーンのうちのいずれかにおける遷移であってよい。複数のデータレーンおよびタイミングレーンのうちのいずれかにおける以後の遷移は、これらの以後の遷移があらかじめ定義された時間間隔内に生じるときには無視されてよい。あらかじめ定義された時間間隔は、複数のデータレーンおよびタイミングレーンに関連する遷移領域の持続時間によって決定されてよい。
【００８７】
データレーンおよび/またはタイミングレーンは差動符号化信号を搬送してよい。タイミングレーンは、クロック信号またはストローブ信号の一方を搬送するように構成されてもまたは適合されてよい。クロック信号は、たとえばDDR信号であってよい。
【００８８】
別の例では、第1のデータ周期の間のタイミングレーンおよびデータレーンを含む複数のレーンのシグナリング状態を表す第1のシンボルが、第2のデータ周期の間の複数のレーンのシグナリング状態を表す第2のシンボルと比較される。タイミングレーンは、第1のデータ周期と第2のデータ周期との間のデータレーンのシグナリング状態において遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送してよい。ストローブ信号は、第1のデータ周期と第2のデータ周期との間の複数のデータレーンのシグナリング状態において状態遷移が生じないときにシグナリング状態間で遷移してよい。
【００８９】
図14は、処理回路1402を使用する装置1400のためのハードウェア実施態様の一例を示す概念図である。この例では、処理回路1402は、バス1416によって概略的に表されるバスアーキテクチャを用いて実装され得る。バス1416は、処理回路1402の具体的な用途および全体的な設計制約に応じて、任意の数の相互接続するバスならびにブリッジを含んでよい。バス1416は、プロセッサ1412によって概略的に表される1つまたは複数のプロセッサと、コネクタまたはワイヤ1424を介して通信するように構成可能なラインインターフェース回路1420と、一般にプロセッサ可読記憶媒体1414を代表とするコンピュータ可読媒体とを含む様々な回路を互いにリンクさせる。バス1416は、タイミングソース、タイマ、周辺機器、電圧調整器、および電力管理回路などの様々な他の回路をリンクさせてもよい。バスインターフェース1418は、バス1416とラインインターフェース回路1420との間のインターフェースを実現する。装置の性質に応じて、ユーザインターフェース1422(たとえば、キーパッド、ディスプレイ、スピーカ、マイクロフォン、ジョイスティック)が設けられる場合もある。1つまたは複数のクロック発生回路またはモジュール1424は、処理回路1402内に設けられるか、あるいは処理回路1402および/または1つもしくは複数のプロセッサ1412によって制御され得る。一例では、クロック発生回路またはモジュール1424は、1つもしくは複数の水晶発振器、1つもしくは複数の位相ロックループデバイス、および/または、1つもしくは複数の構成可能なクロックツリーを含み得る。
【００９０】
プロセッサ1412は、バス1416の管理、およびプロセッサ可読記憶媒体1414に記憶されたソフトウェアの実行を含む全体的な処理に関与する。ソフトウェアは、プロセッサ1412によって実行されたときに、任意の特定の装置のための上記に記載された様々な機能を処理回路1402に実行させる。一例では、ソフトウェアは、処理回路1402の様々な機能、回路、およびモジュールを構成し、起動し、制御し、ならびに/あるいはその他の方法によって管理するために設けられる。プロセッサ可読記憶媒体1414は、データレーンおよびクロックレーンとして構成されてよいコネクタまたはワイヤ1424上で受信される信号から復号されるデータを含む、コネクタまたはワイヤ1424を介して送信されるシンボルから復号されるデータを含む、ソフトウェアを実行する際にプロセッサ1412によって処理されるデータを記憶するのに使用されてよい。
【００９１】
一構成では、処理回路1402は、CDRならびに他のロジックおよび回路を含み得る、クロック生成用のモジュールおよび/または回路1410を含んでよい。処理回路1402は、データ通信リンクのデータレーンとデータ通信リンクのタイミングレーンとの一方において第1の遷移を検出するための遷移検出モジュールおよび/または回路1404と、第1の遷移に基づいてレシーバクロック信号のエッジを生成するためのエッジ生成モジュールおよび/または回路1406と、レシーバクロック信号を使用してデータレーンから受信されるデータを復号するためのデータ復号モジュールおよび/または回路1408とを含む。
【００９２】
開示されたプロセスにおけるステップの特定の順序または階層は、例示的な手法の説明であることを理解されたい。設計上の選好に基づいて、プロセスにおけるステップの特定の順序または階層が並べ替えられてよいことを理解されたい。添付の方法クレームは、様々なステップの要素を例示的な順序で提示したものであり、提示された特定の順序または階層に限定されることを意味するものではない。
【００９３】
前述の説明は、当業者が本明細書において説明した様々な態様を実施できるようにするために与えられる。これらの態様の種々の変更形態は、当業者に容易に明らかになり、本明細書に定められた一般的な原理は、他の態様にも適用されてよい。したがって、特許請求の範囲は本明細書に示された態様に限定されるものではなく、文言通りの特許請求の範囲に整合するすべての範囲を与えられるべきであり、単数形の要素への言及は、そのように明記されていない限り、「唯一無二の」を意味するものではなく、「1つまたは複数の」を意味するものである。特に別段の定めがない限り、「いくつか(some)」という用語は、1つまたは複数を指す。当業者により知られているか、または後に当業者に知られることになる、本開示全体を通じて説明された様々な態様の要素に対するすべての構造的および機能的均等物は、参照により明確に本明細書に組み込まれ、特許請求の範囲によって包含されることを意図している。さらに、本明細書において開示されたものは、そのような開示が特許請求の範囲において明示的に列挙されているか否かにかかわらず、公共用に提供されることは意図していない。いかなるクレーム要素も、要素が「ための手段」という語句を使用して明確に列挙されていない限り、ミーンズプラスファンクションとして解釈されるべきではない。
【符号の説明】
【００９４】
100  装置
102  処理回路
106  通信トランシーバ
108  特定用途向けIC(ASIC)
112  メモリデバイス
114  ローカルデータベース
122  アンテナ
124  ディスプレイ
126  キーパッド
128  ボタン
200  装置
202  ICデバイス
204  ワイヤレストランシーバ
206  プロセッサ
206  コンピューティングデバイス
208  記憶媒体
210  物理レイヤドライバ
214  アンテナ
220  通信リンク
222  順方向リンク
224  逆方向リンク
226  双方向リンク
230  ICデバイス
232  ディスプレイコントローラ
234  カメラコントローラ
300  データ通信インターフェース
304  シリアライザ(SER)
306  送信(Tx)クロックタイミング回路
308  差動ラインドライバ
310  送信回路
312  受信回路
314  デシリアライザ(DES)
316  ラインドライバ
318  レシーバ
320  送信クロック信号
322  DDR送信クロック信号
324  データ信号
324a  データレーン
326  クロックレーン
328  DDR受信クロック信号
328  Rxクロック信号
330  レシーバ
402  信号
404  周期
406  立ち下がりエッジ
408  立ち上がりエッジ
410  立ち下がりエッジ
412  立ち上がりエッジ
414  データ送信周期
416  周期
500  第1のタイミング図
502  送信クロックアイパターン
504  データレーンアイダイアグラム
506  有効データレーンアイダイアグラム
508  データ送信間隔
510  遷移領域
512  アイ領域
514a  アイ領域
516  立ち上がりエッジ
516  遷移領域
518  サンプリングエッジ
518  遷移領域
520  第2のタイミング図
522  DDR送信クロックアイパターン
524  データレーンアイパターン
526  有効アイパターン
528  データ周期
530  アイ領域
534  有効アイ
538  遷移領域
540  組合せ遷移領域
600  レシーバ回路
602  通信リンク
604a  差動符号化レーン
606  差動レシーバ
608  CDR回路
610  比較器
612  NE信号
614  セットリセットラッチ
616  NEFLT信号
618  遅延デバイス
620  NEFLTD信号
622  ORゲート
624  クロック抽出回路
626  フリップフロップデバイス
628  レベルラッチ
630  入力状態遷移信号(SI)
632  SD信号
634  S信号
636  NEFLT_COMP信号
638  フリップフロップ
640  DDR RXCLKクロック信号
700  タイミング図
702  入力シンボル
744  スパイク
802  SER
804  クロック生成回路
806  差動ドライバ
812  CDR回路
814  クロック信号
816  データ信号
820  DDRトランスミッタクロック信号
822  クロックレーン
824  データレーン
824a  データレーン
826  クロック信号
828  データ信号
830  DDR RXCLK信号
900  タイミングブロック図
902  クロックアイダイアグラム
904  組合せデータアイダイアグラム
906  遷移領域
910  アイ領域
912  アイ領域
914  送信間隔
1002  SER
1004  送信タイミング回路
1012  CDR回路
1014  ストローブ信号
1016  データ信号
1022  タイミングレーン
1024  データレーン
1024a  データレーン
1026  受信されるストローブ信号
1028  受信されるデータ信号
1030  レシーバクロック
1100  第1のタイミング図
1102  境界
1110  データ送信間隔
1116  エッジ
1120  第2のタイミング図
1130  エッジ
1200  概念図
1202  処理回路
1204  プロセッサ
1206  コンピュータ可読媒体および/またはストレージ
1208  バスインターフェース
1210  バス
1212  トランシーバ
1214  実行時イメージ
1216  ソフトウェアモジュール
1218  ユーザインターフェース
1220  時分割プログラム
1400  装置
1402  処理回路
1412  プロセッサ
1414  プロセッサ可読記憶媒体
1416  バス
1418  バスインターフェース
1420  ラインインターフェース回路
1422  ユーザインターフェース
1424  クロック発生回路またはモジュール
1424  コネクタまたはワイヤ
【図１】
2016538747.tif 000003
【図２】
2016538747.tif 000004
【図３】
2016538747.tif 000005
【図４】
2016538747.tif 000006
【図６】
2016538747.tif 000007
【図８】
2016538747.tif 000008
【図１０】
2016538747.tif 000009
【図１１】
2016538747.tif 000010
【図１２】
2016538747.tif 000011
【図１３】
2016538747.tif 000012
【図１４】
2016538747.tif 000013
【図５】
2016538747.tif 000014
【図７】
2016538747.tif 000015
【図９】
2016538747.tif 000016
【手続補正書】
【提出日】平成28年4月5日(2016.4.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
データ通信の方法であって、
データ通信リンクの複数のデータレーン上および前記データ通信リンクのタイミングレーン上で搬送される信号を監視するステップと、
データレーン上で搬送されるデータ信号または前記タイミングレーン上で搬送されるタイミング信号のいずれかにおいて生じる第1の遷移の最も早い発生を検出するステップであって、前記第1の遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じるステップと、
前記第1の遷移に基づいてレシーバクロック信号上にエッジを生成するステップと、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータをキャプチャするステップとを含む方法。
【請求項２】
前記レシーバクロック信号を使用して1つまたは複数のデータレーンから受信されるデータを非直列化するステップをさらに含む、請求項1に記載の方法。
【請求項３】
前記タイミングレーン上で搬送される前記タイミング信号は、ダブルデータレートクロック信号である、請求項1に記載の方法。
【請求項４】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項3に記載の方法。
【請求項５】
前記第1のデータ周期の間の前記タイミングレーンおよび前記データレーンを含む複数のレーンのシグナリング状態を表す第1のシンボルを、前記第2のデータ周期の間の前記複数のレーンの前記シグナリング状態を表す第2のシンボルと比較するステップをさらに含み、
前記タイミングレーンは、前記第1のデータ周期と前記第2のデータ周期との間の前記データレーンの前記シグナリング状態において遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送する、請求項1に記載の方法。
【請求項６】
前記ストローブ信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記複数のデータレーンの前記シグナリング状態において状態遷移が生じないときにシグナリング状態間で遷移する、請求項5に記載の方法。
【請求項７】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項1に記載の方法。
【請求項８】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項7に記載の方法。
【請求項９】
前記第1の遷移は、前記複数のデータレーンまたは前記タイミングレーン上で搬送される前記信号のいずれかにおいて最初に生じる遷移である、請求項1に記載の方法。
【請求項１０】
データ通信リンクのデータレーン上で搬送されるデータ信号または前記データ通信リンクのタイミングレーン上で搬送されるタイミング信号のいずれかにおいて生じる第1の遷移の最も早い発生を検出するための手段であって、前記第1の遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じ、検出のための前記手段は、複数のデータレーン上および前記タイミングレーン上で搬送される信号を監視するように構成される手段と、
前記第1の遷移に基づいてレシーバクロック信号のエッジを生成するための手段と、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータを復号するための手段とを備える装置。
【請求項１１】
前記データレーンから受信される前記データを復号するための前記手段は、1つまたは複数のデータレーンから受信されるデータを非直列化するように構成される、請求項10に記載の装置。
【請求項１２】
前記タイミングレーン上で搬送される前記タイミング信号は、ダブルデータレートクロック信号である、請求項10に記載の装置。
【請求項１３】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項12に記載の装置。
【請求項１４】
前記第1の遷移を検出するための前記手段は、
前記第1のデータ周期の間の前記タイミングレーンおよび前記データレーンを含む複数のレーンのシグナリング状態を表す第1のシンボルを、前記第2のデータ周期の間の前記複数のレーンの前記シグナリング状態を表す第2のシンボルと比較するように構成され、
前記タイミングレーンは、前記第1のデータ周期と前記第2のデータ周期との間の前記データレーンの前記シグナリング状態において遷移が生じないときにシグナリング状態間で遷移するストローブ信号を搬送する、請求項10に記載の装置。
【請求項１５】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項10に記載の装置。
【請求項１６】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項15に記載の装置。
【請求項１７】
処理回路を備え、前記処理回路は、
データ通信リンクの複数のデータレーン上および前記データ通信リンクのタイミングレーン上で搬送される信号を監視することと、
データレーン上で搬送されるデータ信号または前記タイミングレーン上で搬送されるタイミング信号のいずれかにおいて生じる第1の遷移の最も早い発生を検出することであって、前記第1の遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じることと、
前記第1の遷移に基づいてレシーバクロック信号上にエッジを生成することと、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータをキャプチャすることとを行うように構成される、装置。
【請求項１８】
前記処理回路は、前記レシーバクロック信号を使用して1つまたは複数のデータレーンから受信されるデータを非直列化するように構成される、請求項17に記載の装置。
【請求項１９】
前記タイミングレーン上で搬送される前記タイミング信号は、ダブルデータレートクロック信号である、請求項17に記載の装置。
【請求項２０】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項19に記載の装置。
【請求項２１】
前記タイミングレーンは、ストローブ信号を搬送し、前記ストローブ信号は、第3のデータ周期と第4のデータ周期との間の境界において前記データレーンから受信されるデータにおいて遷移が生じないときにシグナリング状態間で遷移する、請求項17に記載の装置。
【請求項２２】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項17に記載の装置。
【請求項２３】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項22に記載の装置。
【請求項２４】
1つまたは複数の命令を有するプロセッサ可読記憶媒体であって、前記1つまたは複数の命令は、少なくとも1つの処理回路によって実行されたときに、前記少なくとも1つの処理回路に、
データ通信リンクの複数のデータレーン上および前記データ通信リンクのタイミングレーン上で搬送される信号を監視することと、
データレーン上で搬送されるデータ信号または前記タイミングレーン上で搬送されるタイミング信号のいずれかにおいて生じる第1の遷移の最も早い発生を検出することであって、前記第1の遷移は、第1のデータ周期と第2のデータ周期との間の境界において生じることと、
前記第1の遷移に基づいてレシーバクロック信号上にエッジを生成することと、
前記レシーバクロック信号を使用して前記データレーンから受信されるデータをキャプチャすることとを行わせる、プロセッサ可読記憶媒体。
【請求項２５】
前記レシーバクロック信号は、1つまたは複数のデータレーンから受信されるデータを非直列化するのに使用される、請求項24に記載のプロセッサ可読記憶媒体。
【請求項２６】
前記タイミングレーン上で搬送される前記タイミング信号は、ダブルデータレートクロック信号である、請求項24に記載のプロセッサ可読記憶媒体。
【請求項２７】
前記ダブルデータレートクロック信号の遷移は、前記データレーンから受信される前記データの遷移と揃えられる、請求項26に記載のプロセッサ可読記憶媒体。
【請求項２８】
前記タイミングレーンは、ストローブ信号を搬送し、前記ストローブ信号は、第3のデータ周期と第4のデータ周期との間の境界において前記データレーンから受信されるデータにおいて遷移が生じないときにシグナリング状態間で遷移する、請求項24に記載のプロセッサ可読記憶媒体。
【請求項２９】
前記レシーバクロック信号は、前記第1のデータ周期と前記第2のデータ周期との間の前記境界に対して生じる1つまたは複数の追加の遷移が、前記エッジが生成された後に生じるときには、前記1つまたは複数の追加の遷移による影響を受けない、請求項24に記載のプロセッサ可読記憶媒体。
【請求項３０】
前記第1のデータ周期は前記第2のデータ周期よりも前に生じ、前記エッジは、前記第1のデータ周期において送信されるデータの遅延バージョンをキャプチャするのに使用される、請求項29に記載のプロセッサ可読記憶媒体。
【国際調査報告】
2016538747.tif 000017
2016538747.tif 000018
2016538747.tif 000019