(57)【特許請求の範囲】
【請求項１】
複数のデータ線上で送信される信号からデータシンボルを復号するように適合される受信回路であって、少なくとも1つのデータシンボルが、前記複数のデータ線で送信される前記信号の状態遷移において符号化される、受信回路と、
前記複数のデータ線のうちの異なるデータ線におけるスキューを補償し、かつデータ状態遷移グリッチをマスクしながら、前記状態遷移に由来する状態遷移信号からクロック信号を取得するクロック抽出回路であって、前記クロック信号を取得するために第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)を使用する、クロック抽出回路と
を備える、クロック回復回路。
【請求項２】
前記複数のデータ線は、3本以上である、請求項1に記載のクロック回復回路。
【請求項３】
前記クロック抽出回路は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し、かつ比較信号(NE)を出力する比較器(804)と、
前記比較信号(NE)を前記比較器(804)から受信し、かつフィルタ処理済の比較信号(NEFLT)を出力するセットリセットラッチ(806)と、
前記フィルタ処理済の比較信号(NEFLT)を受信し、かつ前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)を出力するアナログ遅延デバイス(808)であって、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)は、前記クロック信号(DDRCLK)を取得するために使用される、アナログ遅延デバイスと
を備える、請求項1に記載のクロック回復回路。
【請求項４】
前記セットリセットラッチ(806)は、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)に基づいてリセットされる、請求項3に記載のクロック回復回路。
【請求項５】
前記クロック抽出回路は、
前記第1の状態遷移信号(SI)を受信し、かつ前記第1の状態遷移信号の前記レベルラッチインスタンス(S)を出力するレベルラッチ(810)をさらに含み、前記レベルラッチ(810)は、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)に基づいて起動される、請求項3に記載のクロック回復回路。
【請求項６】
前記クロック抽出回路は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し、かつ比較信号(NE)を出力する比較器(904)と、
前記比較信号(NE)を前記比較器(904)から受信し、かつフィルタ処理済の比較信号(NEFLT)を出力するセットリセットラッチ(906)と、
前記フィルタ処理済の比較信号(NEFLT)を受信し、かつ前記フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する第1のアナログ遅延デバイス(902)と、
前記フィルタ処理済の比較信号(NEFLT)と前記フィルタ処理済の比較信号の前記遅延インスタンス(NEDEL)とを受信し、かつ第2のフィルタ処理済の比較信号(NE1SHOT)を出力するワンショットロジック(902/903)と、
前記第2のフィルタ処理済の比較信号(NE1SHOT)を受信し、かつ前記第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)を出力する第2のアナログ遅延デバイス(908)であって、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)は、前記クロック信号(DDRCLK)を取得するために使用される、第2のアナログ遅延デバイスと
を備える、請求項1に記載のクロック回復回路。
【請求項７】
前記セットリセットラッチ(906)は、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)に基づいてリセットされる、請求項6に記載のクロック回復回路。
【請求項８】
前記クロック抽出回路は、
前記第1の状態遷移信号(SI)を受信し、かつ前記第1の状態遷移信号の前記レベルラッチインスタンス(S)を出力するレベルラッチ(910)をさらに含み、前記レベルラッチ(910)は、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)に基づいて起動される、請求項6に記載のクロック回復回路。
【請求項９】
前記クロック抽出回路は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し、かつ比較信号(NE)を出力する比較器(1204)と、
前記比較信号(NE)を前記比較器(1204)から受信し、かつフィルタ処理済の比較信号(NEFLT)を出力するセットリセットラッチ(1206)と、
前記フィルタ処理済の比較信号(NEFLT)を受信し、かつ前記フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する第1のアナログ遅延デバイス(1202)と、
前記フィルタ処理済の比較信号(NEFLT)と前記フィルタ処理済の比較信号の前記遅延インスタンス(NEDEL)とを受信し、かつ第2のフィルタ処理済の比較信号(NE1SHOT)を出力するワンショットロジック(1202/1203)と、
前記第2のフィルタ処理済の比較信号(NE1SHOT)を受信し、かつ前記第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を出力する第2のアナログ遅延デバイス(1208)であって、前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK0)は、前記クロック信号を取得するために使用される、第2のアナログ遅延デバイスと、
前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK0)を受信し、かつ前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)を出力する第3のアナログ遅延デバイス(1209)と
を備える、請求項1に記載のクロック回復回路。
【請求項１０】
前記セットリセットラッチ(1206)は、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)に基づいてリセットされる、請求項9に記載のクロック回復回路。
【請求項１１】
前記クロック抽出回路は、
前記第1の状態遷移信号(SI)を受信し、かつ前記第1の状態遷移信号の前記レベルラッチインスタンス(S)を出力するレベルラッチ(1210)をさらに含み、前記レベルラッチ(910)は、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)に基づいて起動される、請求項9に記載のクロック回復回路。
【請求項１２】
前記クロック抽出回路は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し、かつ比較信号(NE)を出力する比較器(1304)と、
前記比較信号(NE)を前記比較器(1204)から受信し、かつフィルタ処理済の比較信号(NEFLT)を出力するセットリセットラッチ(1306)と、
前記フィルタ処理済の比較信号(NEFLT)を受信し、かつ前記比較信号の前記フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する第1のアナログ遅延デバイス(1302)と、
前記フィルタ処理済の比較信号(NEFLT)と前記フィルタ処理済の比較信号の前記遅延インスタンス(NEDEL)とを受信し、かつ第2のフィルタ処理済の比較信号(NE1SHOT)を出力するワンショットロジック(1302/1303)と、
前記第2のフィルタ処理済の比較信号(NE1SHOT)を受信し、かつ前記第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を出力する第2のアナログ遅延デバイス(1308)であって、前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK1)は、前記クロック信号を取得するために使用される、第2のアナログ遅延デバイスと、
前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK1)を受信し、かつ前記第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)を出力する第3のアナログ遅延デバイス(1309)と、
前記第1の状態遷移信号(SI)を受信し、かつ前記第1の状態遷移信号のレベルラッチインスタンス(S)を出力するフリップフロップ(1310)であって、前記フリップフロップ(1310)は、前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK2)に基づいて起動される、フリップフロップ(1310)と
をさらに含む、請求項7に記載のクロック回復回路。
【請求項１３】
前記セットリセットラッチ(1306)は、前記第1の状態遷移信号の前記第2の遅延インスタンス(SDRCLK2)に基づいてリセットされる、請求項12に記載のクロック回復回路。
【請求項１４】
クロック信号を回復するための方法であって、
複数のデータ線上で送信される信号からデータシンボルを復号するステップであって、少なくとも1つのデータシンボルが、前記複数のデータ線で送信される前記信号の状態遷移においてで符号化される、ステップと、
前記複数のデータ線のうちの異なるデータ線におけるスキューを補償し、かつデータ状態遷移グリッチをマスクしながら、前記状態遷移に由来する状態遷移信号からクロック信号を取得するステップであって、前記クロック信号は、前記クロック信号を取得するために使用される第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)である、ステップと
を含む、方法。
【請求項１５】
前記データシンボルを復号するステップが、前記データシンボルからデータを抽出するステップをさらに含む、請求項14に記載の方法。
【請求項１６】
前記クロック信号は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のインスタンス(S)とを比較して、比較信号(NE)を提供するステップと、
前記比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)を遅延させて、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)を提供するステップであって、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)は、前記クロック信号(DDRCLK)を取得するために使用される、ステップと
によって取得される、請求項14に記載の方法。
【請求項１７】
前記クロック信号は、
前記第1の状態遷移信号の第1のインスタンス(SI)と、前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較して、比較信号(NE)を提供するステップと、
前記比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)を遅延させて、前記フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)と前記フィルタ処理済の比較信号の前記遅延インスタンス(NEDEL)とを論理的に結合して、第2のフィルタ処理済の比較信号(NE1SHOT)を取得するステップと、
前記第2のフィルタ処理済の比較信号(NE1SHOT)を遅延させて、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)を提供するステップであって、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)は、前記クロック信号(DDRCLK)を生成するために使用される、ステップと
によって取得される、請求項14に記載の方法。
【請求項１８】
前記クロック信号は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較して、比較信号(NE)を提供するステップと、
前記比較信号(NE)をフィルタ処理して、フィルタ処理済の前記比較信号(NEFLT)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)を遅延させて、前記フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)と前記フィルタ処理済の比較信号の前記遅延インスタンス(NEDEL)とを論理的に結合して、第2のフィルタ処理済の比較信号(NE1SHOT)を提供するステップと、
前記第2のフィルタ処理済の比較信号(NE1SHOT)を遅延させて、前記第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を提供するステップであって、前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK0)は、前記クロック信号を生成するために使用される、ステップと、
前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK0)を遅延させて、前記第1の状態遷移信号の前記フィードバック遅延インスタンス(SDRCLK)を提供するステップと
によって取得される、請求項14に記載の方法。
【請求項１９】
前記クロック信号は、
前記第1の状態遷移信号の第1のインスタンス(SI)と前記第1の状態遷移信号のレベルラッチインスタンス(S)とを比較して、比較信号(NE)を提供するステップと、
前記比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)を遅延させて、前記フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を提供するステップと、
前記フィルタ処理済の比較信号(NEFLT)と前記フィルタ処理済の比較信号の前記遅延インスタンス(NEDEL)とを論理的に結合して、第2のフィルタ処理済の比較信号(NE1SHOT)を提供するステップと、
前記第2のフィルタ処理済の比較信号(NE1SHOT)を遅延させて、前記第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を提供するステップであって、前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK1)は、前記クロック信号(DDRCLK)を生成するために使用される、ステップと、
前記第1の状態遷移信号の前記第1の遅延インスタンス(SDRCLK1)を遅延させて、前記第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)を提供するステップと
によって取得され、
前記第1の状態遷移信号の前記レベルラッチインスタンス(S)は、前記第1の状態遷移信号の前記第2の遅延インスタンス(SDRCLK2)に基づいて起動されるレベルラッチ(1210)から取得される、
請求項14に記載の方法。
【請求項２０】
複数のデータ線上で送信される信号からデータシンボルを復号するための手段であって、少なくとも1つのデータシンボルが、前記複数のデータ線で送信される前記信号の状態遷移において符号化される、手段と、
前記複数のデータ線のうちの異なるデータ線におけるスキューを補償し、かつデータ状態遷移グリッチをマスクしながら、前記状態遷移に由来する状態遷移信号からクロック信号を取得するための手段であって、前記クロック信号は、前記クロック信号を取得するために使用される第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)である、手段と
を備える、クロック回復回路。
【請求項２１】
前記データシンボルを前記復号するための手段が、前記データシンボルからデータを抽出するように構成される、請求項20に記載のクロック回復回路。
【請求項２２】
前記複数のデータ線上で送信される前記信号が、複数の差動符号化信号を含む、請求項20に記載のクロック回復回路。
【請求項２３】
前記複数のデータ線上で送信される前記信号が、複数の差動符号化信号を含む、請求項1に記載のクロック回復回路。
【請求項２４】
前記複数のデータ線上で送信される前記信号が、複数の差動符号化信号を含む、請求項14に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
米国特許法第１１９条に基づく優先権の主張
本特許出願は、以下の米国仮出願の優先権を主張するものである。
「Circuit To Recover A Clock Signal From Multiple Wire Data Signals That Changes State Every State Cycle And Is Immune To Data Inter-Lane Skew As Well As Data State Transition Glitches」という名称で2013年3月7日に出願した米国仮出願第61/774,247号、
「Transcoding Method For Multi-Wire Signaling That Embeds Clock Information In Transition Of Signal State」という名称で2013年3月7日に出願した米国仮出願第61/774,408号、および
「Transcoding Method For Multi-Wire Signaling That Embeds Clock Information In Transition Of Signal State」という名称で2013年3月13日に出願した米国仮出願第61/778,768号。これらの仮出願の全てが、本譲受人に譲渡されており、参照により本明細書に明示的に組み込まれる。
【０００２】
本開示は、多線データ信号転送の周期内でのクロック信号送信に関する。
【背景技術】
【０００３】
多信号データ転送、たとえば、3相またはN階乗低電圧差分信号方式(LVDS)などの多線差分信号方式では、個々のデータレーン(差分送信経路)にクロック情報を送信するのではなく、符号変換(たとえば、ある符号化方式から他の方式へのデジタルデジタルデータ変換)がなされて、シンボル周期ごとにシンボル遷移を発生させることにより、符号クロック情報の埋め込みがなされ得る。このような符号変換によりクロック情報を埋め込むことは、クロックとデータ信号との間のスキューを最小化するとともに、データ信号からクロック情報を回復するための位相同期ループ(PLL)の必要性を排除するのに効果的な方法である。
【０００４】
クロックデータ回復(CDR: clock and data recovery)回路は、複数のデータ信号を抽出するとともに、複数のデータ信号からクロック信号を抽出する復号回路である。しかしながら、状態遷移がクロックイベントを表している複数のデータ信号からクロックを回復すると、回復されたクロック信号において、データ移行時に中間または決定不可能のデータ信号状態であることにより、データ信号のレーン間スキューまたはグリッチ信号のため、意図せぬスパイクパルスが起きてしまうことが多い。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
したがって、アナログ遅延を最小化するとともに、導線数の異なる多信号系においてスケーラブルとなる、効率的なグリッチ除去回路が必要である。
【課題を解決するための手段】
【０００６】
受信回路とクロック抽出回路とを備える、クロック回復回路が提供される。受信回路は、異なる方式で符号化された複数のデータ線における信号を復号するようになっていてもよく、少なくとも1つのデータシンボルが、異なる方式で符号化された信号の状態遷移にて、異なる方式で符号化されている。一実施例において、複数のデータ線の本数は、3以上である。
【０００７】
クロック抽出回路は、異なるデータ線でのスキューを補償して、データ状態遷移グリッチをマスクしつつ、状態遷移に由来する状態遷移信号からクロック信号を取得し得る。クロック抽出回路は、クロック信号を取得するために用いられる第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)を含み得る。
【０００８】
第1の実施例では、クロック抽出回路は、比較器と、セットリセットラッチと、アナログ遅延デバイスとを含み得る。比較器は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチは、比較信号(NE)を比較器から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。アナログ遅延デバイスは、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、第1の状態遷移信号の遅延インスタンス(SDRCLK)を出力し、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を取得するために用いられる。セットリセットラッチは、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいてリセットされ得る。クロック抽出回路は、第1の状態遷移信号(SI)を受信し、第1の状態遷移信号のレベルラッチインスタンス(S)を出力するレベルラッチをさらに含み得るものであり、レベルラッチは、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいて起動される。
【０００９】
第2の実施例では、クロック抽出回路は、比較器と、セットリセットラッチと、第1のアナログ遅延デバイスと、ワンショットロジックと、第2のアナログ遅延デバイスとを含み得る。比較器は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチは、比較信号(NE)を比較器から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。第1のアナログ遅延デバイスは、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する。ワンショットロジックは、フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを受信し得るものであり、第2のフィルタ処理済の比較信号(NE1SHOT)を出力する。第2のアナログ遅延デバイスは、第2のフィルタ処理済の比較信号(NE1SHOT)を受信し得るものであり、第1の状態遷移信号の遅延インスタンス(SDRCLK)を出力し、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を取得するために用いられる。セットリセットラッチは、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいてリセットされ得る。クロック抽出回路は、第1の状態遷移信号(SI)を受信し、第1の状態遷移信号のレベルラッチインスタンス(S)を出力するレベルラッチをさらに含み得るものであり、レベルラッチは、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいて起動される。
【００１０】
第3の実施例では、クロック抽出回路は、比較器と、セットリセットラッチと、第1のアナログ遅延デバイスと、ワンショットロジックと、第2のアナログ遅延デバイスと、第3のアナログ遅延デバイスとを含み得る。比較器は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチは、比較信号(NE)を比較器から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。第1のアナログ遅延デバイスは、フィルタ処理済の比較信号(NEFLT)を受信し、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する。ワンショットロジックは、フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを受信し得るものであり、第2のフィルタ処理済の比較信号(NE1SHOT)を出力する。第2のアナログ遅延デバイスは、第2のフィルタ処理済の比較信号(NE1SHOT)を受信し得るものであり、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を出力し、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)は、クロック信号を取得するために用いられる。第3のアナログ遅延デバイスは、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を受信し得るものであり、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)を出力する。セットリセットラッチは、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)に基づいてリセットされ得る。クロック抽出回路は、第1の状態遷移信号(SI)を受信し、第1の状態遷移信号のレベルラッチインスタンス(S)を出力するレベルラッチをさらに含み得るものであり、レベルラッチは、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)に基づいて起動される。
【００１１】
第4の実施例では、クロック抽出回路は、比較器と、セットリセットラッチと、第1のアナログ遅延デバイスと、ワンショットロジックと、第2のアナログ遅延デバイスと、第3のアナログ遅延デバイスと、フリップフロップとを含み得る。比較器は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチは、比較信号(NE)を比較器(1304)から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。第1のアナログ遅延デバイスは、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する。ワンショットロジックは、フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを受信し得るものであり、第2のフィルタ処理済の比較信号(NE1SHOT)を出力する。第2のアナログ遅延デバイスは、第2のフィルタ処理済の比較信号(NE1SHOT)を受信し得るものであり、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を出力し、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)は、クロック信号を取得するために用いられる。第3のアナログ遅延デバイスは、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を受信し得るものであり、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)を出力する。フリップフロップは、第1の状態遷移信号(SI)を受信し得るものであり、第1の状態遷移信号のレベルラッチインスタンス(S)を出力し、レベルラッチは、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)に基づいて起動される。セットリセットラッチは、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)に基づいてリセットされ得る。
【００１２】
また、クロック信号を回復するための方法が提供される。複数のデータ線における、異なる方式で符号化された信号が復号され、少なくとも1つのデータシンボルが、異なる方式で符号化された信号の状態遷移にて、異なる方式で符号化されている。異なるデータ線でのスキューを補償して、データ状態遷移グリッチをマスクしつつ、状態遷移に由来する状態遷移信号から、クロック信号が取得される。異なる方式で符号化された復号済の信号から、データが抽出される。クロック信号は、クロック信号を取得するために用いられる第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)である。
【００１３】
第1の実施例では、クロック信号は、(a)第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のインスタンス(S)とを比較して、比較信号(NE)を提供し、(b)比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供し、および/または(c)フィルタ処理済の比較信号(NEFLT)を遅延して、第1の状態遷移信号の遅延インスタンス(SDRCLK)を提供することにより取得され得るものであり、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を取得するために用いられる。
【００１４】
第2の実施例では、クロック信号は、(a)第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較して、比較信号(NE)を提供し、(b)比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供し、(c)フィルタ処理済の比較信号(NEFLT)を遅延して、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を提供し、(d)フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを、論理的に結合して、第2のフィルタ処理済の比較信号(NE1SHOT)を取得し、および/または(e)第2のフィルタ処理済の比較信号(NE1SHOT)を遅延して、第1の状態遷移信号の遅延インスタンス(SDRCLK)を提供することにより取得され得るものであり、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を生成するために用いられる。
【００１５】
第3の実施例では、クロック信号は、(a)第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較して、比較信号(NE)を提供し、(b)比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供し、(c)フィルタ処理済の比較信号(NEFLT)を遅延して、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を提供し、(d)フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを、論理的に結合して、第2のフィルタ処理済の比較信号(NE1SHOT)を提供し、(e)第2のフィルタ処理済の比較信号(NE1SHOT)を遅延して、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を提供し、この第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)は、クロック信号を生成するために用いられ、および/または(f)第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を遅延して、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)を提供することにより取得される。
【００１６】
第4の実施例では、クロック信号は、(a)第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較して、比較信号(NE)を提供し、(b)比較信号(NE)をフィルタ処理して、フィルタ処理済の比較信号(NEFLT)を提供し、(c)フィルタ処理済の比較信号(NEFLT)を遅延して、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を提供し、(d)フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを、論理的に結合して、第2のフィルタ処理済の比較信号(NE1SHOT)を提供し、(e)第2のフィルタ処理済の比較信号(NE1SHOT)を遅延して、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を提供し、この第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)は、クロック信号を生成するために用いられ、および/または(f)第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を遅延して、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)を提供することにより取得される。第1の状態遷移信号のレベルラッチインスタンス(S)は、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)に基づいて起動されるレベルラッチから取得され得る。
【００１７】
以下に述べる発明の詳細な説明を、図面と組み合わせることにより、様々な特徴、性質および利点が明らかとなるであろう。図面において、同様の参照符号は、全体を通して同じものを示している。
【図面の簡単な説明】
【００１８】
【図１】循環状態図に基づく送信デバイスと受信デバイスとの間の3線差分信号方式を示す。
【図２】3線差分信号方式により送信されたデータを復号するために利用可能なクロック回復回路例(たとえば、復号器)を示す。
【図３】図2のクロック回復回路のタイミング図である。
【図４】クロック回復回路(復号器)に遅延が導入されて、回復されたクロックRXCLKにおけるグリッチを起こさぬように充分に、意図せぬ状態が遅延する、図3のレーン間スキューに対する解決策を示す。
【図５】遅延によりマスクされ得ないAB遷移にてグリッチが生じるタイミング図である。
【図６】データ受信回路の後にワンショット回路が用いられてレーン間スキューを除去する代替的なクロック回復回路である。
【図７】グリッチ遷移期間が、図6に示すクロック回復回路にて、不正確または異常なDDRCLKトグルを起こし得ることを示す。
【図８】クロック情報が埋め込まれた4線差分信号システムのクロックおよびデータ送信方式を示す。
【図９】クロック情報が埋め込まれた4線差分信号システムのクロックおよびデータ送信方式を示す。
【図１０】図9のCDR回路における信号のタイミング図である。
【図１１】図9のCDR回路の様々な回路要素の実装例を示す。
【図１２】クロック情報が埋め込まれた4線システムの別のデータ送信方式を示す。
【図１３】クロック情報が埋め込まれた4線システムのさらに別のデータ送信方式を示す。
【図１４】クロック信号を回復するデバイスで動作可能な方法である。
【図１５】クロック信号を抽出する第1の方法を示す。
【図１６】クロック信号を抽出する第2の方法を示す。
【図１７】クロック信号を抽出する第3の方法を示す。
【図１８】クロック信号を抽出する第4の方法を示す。
【発明を実施するための形態】
【００１９】
以下の説明において、実施形態の完全な理解を提供する具体的な詳細が与えられる。しかしながら、実施形態が、これらの具体的詳細なしで実施され得ることを、当業者は理解するであろう。たとえば、不必要な細部で実施形態が不明瞭となることがないように、回路はブロック図で示され得る。他の例では、実施形態が不明瞭となることがないように、周知の回路、構造および技術は、詳細には示されていないことがある。
概説
【００２０】
限られたアナログ遅延数でのグリッチ除去技術を実装した、様々なクロック回復回路が、本明細書で提供される。
【００２１】
一実施例では、受信回路が、異なる方式で符号化された複数のデータ線における信号を復号するようになっており、少なくとも1つのデータシンボルが、異なる方式で符号化された信号の状態遷移にて、異なる方式で符号化されている。クロック抽出回路は、異なるデータ線でのスキューを補償して、データ状態遷移グリッチをマスクしつつ、状態遷移に由来する状態遷移信号からクロック信号を取得する。
【００２２】
本明細書のある実施例では、特定の種類の多線送信について説明されていることがあるが、本明細書で説明するクロック回復回路に、様々な種類の多線送信システムが実装され得ることが、意図されている。
タイミング情報が埋め込まれた3線符号変換システムの例
【００２３】
図1に、導線A、BおよびC間の差分信号により規定された状態に基づく、送信デバイス100と受信デバイス101との間の3線差分信号方式を示す。送信デバイス100と受信デバイス101とは、多線バス108を介して通信し得る。本実施例では、3つの線A、BおよびCがバス108として用いられる。受信デバイス101は、受信デバイス101をバス108に連結する3ポート受信器110を含み得る。
【００２４】
一実施例では、差分信号符号化は、送信デバイス100からの信号を、受信デバイス101へ送信するために利用され得る。それにより、複数の受信器112の各々が、3線A、BおよびCのうちの2つをとり、差分信号を提供するように構成され得る。たとえば、第1の線Aと第2の線Bとは、第1の差分信号RX_AB 114を提供するようにはたらき得る。第2の線Bと第3の線Cとは、第2の差分信号RX_BC 116を提供するようにはたらき得る。第1の線Aと第3の線Cとは、第3の差分信号RX_CA 118 RXを提供するようにはたらき得る。これらの差分信号114、116および118は、復号回路120への入力となり得る。復号回路120は、3つの差分信号RX_AB 114、RX_BC 116およびRX_CA 118を復号し、6つの状態XM、YM、ZM、ZP、YPおよびXPを出力する。
【００２５】
状態図103は、3つの導線A、BおよびC 108により伝達される差分信号114、116および118により規定され得る6つの状態XM、YM、ZM、ZP、YPおよびXPを示す。観測可能となるように、3つの差分信号114、116および118間の電圧レベルは、1と0との様々な組み合わせへとマッピングされ得る。たとえば、差分信号電圧レベルは、状態XMについて、「011」と関連付けられ、状態YMについて「101」と関連付けられ、状態ZPについて「001」と関連付けられ、状態ZMについて「110」と関連付けられ、状態YPについて「010」と関連付けられ、状態XPについて「100」と関連付けられ得る。
【００２６】
これらの状態において符号化された情報(たとえば、状態ごとに3ビット)に加えて、状態間の遷移に基づくことによっても情報が符号化され得る。なお、任意の2つの状態(XM、YM、ZM、ZP、YPおよびXP)間での遷移は、中間状態を経ること無く、単一のステップ内で生じる。このように、状態図103に基づく差分データ送信方式につき、状態遷移符号化問題がなくなる。
【００２７】
バス108の各導線は、高もしくは低に駆動されるか、または非駆動となり、各周期において、1つの導線のみが非駆動となる。一実施形態では、3つの差分信号RX_AB 114、RX_BC 116およびRX_CA 118(たとえば、受信デバイス101内の復号器120により受信)は、導線Bに対する導線A、導線Cに対する導線B、導線Aに対する導線Cについてそれぞれ、正の差分電圧をロジック1とし、負の差分電圧をロジック0として規定されている。3つの差分信号114、116および118の波形例が、図104に示されている。
【００２８】
6つのとり得る状態(導線Bに対する導線A、導線Cに対する導線B、導線Aに対する導線Cについて差分電圧がゼロとなる状態を除外)は、信号RX_AB 114, RX_BC 116, and RX_CA 118の状態により、状態図103にしたがって、XM、YM、ZP、ZM、YP、XPおよびXMと定義される。
【００２９】
6つのとり得る状態XM、YM、ZP、ZM、YP、XPおよびXMに対応する状態信号は、受信デバイス101内で、復号ブロック120(DEC)により、差分信号RX_AB 114、RX_BC 116およびRX_CA 118から生成され、状態信号の波形例は、図105に示される。
【００３０】
一実施形態では、状態XM、YM、ZP、ZM、YP、XPまたはXMから他の状態への状態遷移は、状態遷移が、送信デバイス100から受信デバイス101へと送信されるべきデータを表現する方式で、各周期ごとに常に生じる。
【００３１】
図2は、3線差分信号方式により送信されたデータ信号からクロック信号を回復するために利用可能なクロック回復回路200の例(たとえば、復号器)を示す。また、他のクロック回復回路の実装も利用可能であり、それについては、本明細書での教示内容に基づいて当業者が理解することができる。クロック回復回路200は、入力信号XP 202、YP 204、ZP 206、XM 208、YM 210およびZM 212を、先行するアナログ回路(たとえば、図1の復号器120から)から受信する。あらゆる時点で、データ状態のどれが発生しているところなのかに応じて、信号XP 202、YP 204、ZP 206、XM 208、YM 210およびZM 212のうちの1つのみが、値1をとることができる(105に図示)。入力信号XP 202、YP 204、ZP 206、XM 208、YM 210およびZM 212は、それぞれ、Dフリップフロップ11〜16のクロック入力へと連結される。Dフリップフロップ11〜16の各々は、ロジック1と連結されたDデータ入力を有する。これにより、それぞれのクロック入力が立ち上がり端遷移に遭遇するたびに、そのQ出力が、値1をとることになる。たとえば、Dフリップフロップ11は、入力信号202が立ち上がり端遷移に遭遇するたび、すなわち、状態AからBが正になるたびに、Q出力が1になる。このように、Dフリップフロップ11〜16は、それらのQ出力によりそれぞれ示されるように、6つの状態のどれが生じたところかを捕捉する。どの時点においても1つの状態のみが発生するので、どの時点においても(Dフリップフロップ11〜16からの)Q出力のうちの1つのみが、1の値をとり続けることができる。さらに後述するように、新規の状態が生じるたびに、短い重複があり、現在の状態および新規の状態に対応するQ出力の双方が、フリップフロップをリセットするための遅延の期間中、1の値をとることになる。
【００３２】
状態のいずれかが、Dフリップフロップ11〜16のうちの1つに捕捉されると、他のフリップフロップはリセットされる。クロック回復回路200において、このことは、ORゲート1〜6を用いてなされる。ORゲート1〜6は、Dフリップフロップ11〜16それぞれのためのリセット信号を生成する。ORゲート1〜6の各々は、Dフリップフロップ11〜16のQ出力(自身のDフリップフロップのQ出力を除く)の立ち上がり端およびリセット信号214により発生するパルスを、入力として受信する。たとえば、ORゲート1は、Dフリップフロップ12〜16のQ出力224、226、228、230および232(ただし、自身のDフリップフロップ11のQ出力222を除く)の立ち上がり端およびリセット信号214により発生するパルスを受信する。これにより、ORゲート1の出力は、AからBが正以外のいずれかの状態が発生するたびに、またはリセット信号214がアサートされる場合に1となる。一方、状態AからBが正が発生するとともにリセット信号214がアサートされていないときには、ORゲート1はゼロの値を出力する。
【００３３】
一実施形態では、自身に対応していない状態が発生したときに、Dフリップフロップ11〜16が瞬間的にのみリセットされることを保障するために、Dフリップフロップ11〜16のQ出力は、回路を通じてORゲート1〜6に連結している。このことにより、ORゲート1〜6にはパルスのみが与えられ、値が1の連続信号は与えられないことが保障される。たとえば、Dフリップフロップ11のQ出力222は、ANDゲート71を通じてORゲート2〜6に連結している。ANDゲート71は、Q出力222と、Q出力222の遅延反転したものとを、入力として受信する。なお、Dフリップフロップ11が、AからBが正の状態の発生を捕捉する直前には、Q出力222がゼロである(Dフリップフロップ11はすでにリセットされている)ので、ANDゲート71の出力はゼロである。一方、Qの遅延反転したものの値は1である。AからBが正の入力が発生すると、Q出力222は1へと変化する。Qの遅延反転したものは、ゼロとされる前の遅延の期間(図示のように遅延要素により発生)、値1を保つ。したがって、遅延期間中、ANDゲート71は、1の値を出力し、フリップフロップ12〜16をリセットするパルスを生成する。
【００３４】
Dフリップフロップ21〜26は、ダブルデータレートクロック信号Rx_clk 216を生成するために用いられる。この信号は、新規の入力があるたびに遷移する。Dフリップフロップ21〜26は、それぞれ、入力信号202、204、206、208、210および212を、クロック入力として受信する。また、Dフリップフロップ21〜26は、リセット信号214を受信する。図2に示すように、Dフリップフロップ21〜26の各々は、そのQバー出力が、自身のDデータ入力にフィードバックされている。このように、Dフリップフロップ21〜26の各々は、それぞれの入力クロック信号に立ち上がり端遷移があるたびに、そのQバー出力が、1からゼロへまたはゼロから1へ切り換わる。Dフリップフロップ21〜26のQバー出力は、図2に示すように、XORゲート35および36を通じて、ともに入力される。そして、XORゲート35および36の出力は、XORゲート37を通じてともに入力される。XORゲート37は、Dフリップフロップ21〜26の奇数個のQバー出力が1の値であるときにはいつでも、1の値を出力する。一度にDフリップフロップ21〜26のQバー出力の1つのみが切り換わるとともにその他は同じ値を保つので、XOR 37の出力は、入力202、204、206、208、210および212が変化するたびに切り換わる。これにより、ダブルデータレートクロック信号Rx_Clk 216が発生する。一実施形態では、遅延要素62は、Rx_Clk信号が、クロック回復回路200により出力された他の信号と同期していることを保障するために用いられる。
【００３５】
図3は、図2のクロック回復回路200のタイミング図である。特に、このタイミング図は、レーン間スキュー300(たとえば、ABレーン301とBCレーン303とのタイミングの差)により、意図せぬ状態302が検知されることを示している。このことにより、RXCLK回復ダブルデータレートクロック308(RXCLK)において、さらに切り換わり304が生じる結果となり得る。これは、データ通信において致命的なものである。また、意図せぬ状態のない、意図した(正しい)タイミング信号のタイミング図310も、図示されている。
【００３６】
図4に、図3のレーン間スキューを除去するようにはたらき得る復号回路420を示す。一実施例では、復号回路420は、図1における復号回路120であってもよい。図3のレーン間スキューに対処するため、復号回路420(復号器)には遅延402、404、406、408、410、412が導入されて、回復クロックRXCLKにグリッチが発生しないよう充分に、意図せぬ状態414が遅延416するようになっている。図3のZM線312と比較すると、図4のZM線412にはグリッチがない。この解決策の問題は、より多くの導線が追加されると、遅延の追加が必要になるということである。たとえば、N階乗(N!)システムにおいて、4線システムには24の遅延が必要となり、5線システムには120の遅延が必要となる。さらに、このような遅延は、レーン間スキューにより生じるグリッチを除去するようにするために充分長くしなければならないが、これは不経済であるし、復号性能を劣化させることにもなり得る。
【００３７】
図5は、遅延402(図4)によりマスクされ得ないAB遷移にてグリッチ502が生じるタイミング図である。結果的に、復号器420に遅延402が用いられているにもかかわらず、このようなグリッチが伝播504する。
【００３８】
図6は、データ受信回路の後にワンショット回路602が用いられてレーン間スキューを除去する代替的なクロック回復回路である。このワンショット回路602(遅延604、606、608と、XORゲート610、612および614と、ORゲート616とを含む)は、SDRCLK線618の立ち下がり端をオフに切り換えて、DDRCLK 620を回復する。この回路602の1つの利点は、線数と同数の遅延のみが用いられるので(すなわち、3線A、B、Cには、3つの遅延604、606および608)、図4および図5の回路(同じ3線についてより多くの遅延が必要)よりも、スケール性が良好となることである。しかしながら、この回路は、図5に示す遷移期間中のレーン間スキューによるグリッチの問題に対処するものではない。
【００３９】
図7は、グリッチ702および704の遷移期間が、不正確または異常なDDRCLKトグル706および708を起こし得ることを示す。
スケーラブルクロック抽出回路および方法の例
【００４０】
一実施例によると、受信回路とクロック抽出回路とを備える、クロック回復回路が提供される。受信回路は、異なる方式で符号化された複数のデータ線における信号を復号するようになっていてもよく、少なくとも1つのデータシンボルが、異なる方式で符号化された信号の状態遷移にて、異なる方式で符号化されている。クロック抽出回路は、異なるデータ線でのスキューを補償して、データ状態遷移グリッチをマスクしつつ、状態遷移に由来する状態遷移信号からクロック信号を取得し得る。様々な実施例において、複数のデータ線の本数は、3以上であってもよい。クロック抽出回路は、クロック信号を取得するために用いられる第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)を含み得る。
【００４１】
図14は、クロック信号を回復するデバイスで動作可能な方法である。複数のデータ線における、異なる方式で符号化された信号が復号されてもよく、少なくとも1つのデータシンボルが、異なる方式で符号化された信号の状態遷移にて、異なる方式で符号化されている1402。異なるデータ線でのスキューを補償して、データ状態遷移グリッチをマスクしつつ、状態遷移に由来する状態遷移信号から、クロック信号を取得してもよい1404。さらに、異なる方式で符号化された復号済の信号から、データが抽出されてもよい1406。クロック信号は、クロック信号を取得するために用いられる第1の状態遷移信号のフィードバック遅延インスタンス(SDRCLK)であってもよい。
スケーラブルにクロックを抽出する多線送信システムの第1の実施例
【００４２】
図8は、クロック情報が埋め込まれた4線システム800のクロックおよびデータ送信方式を示す。ここで理解されるように、それぞれ異なる受信器からの未処理信号出力SIにつき、シンボルS0、S1、S2…間に設定時間がある。設定時間中は、その線の状態は不安定である。この4線システム800は、レベルラッチ810と、比較器804と、ラッチ806とを用いるとともに、アナログ遅延808を用いて、信号S自身をリセットするようにはたらく遅延のある信号Sを生成する。
【００４３】
このクロック抽出回路は、比較器804と、セットリセットラッチ806と、アナログ遅延デバイス808と、(バス付)レベルラッチ810とを含む。比較器804は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチ806は、比較信号(NE)を比較器804から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。アナログ遅延デバイス808は、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、第1の状態遷移信号の遅延インスタンス(SDRCLK)を出力する。ここで、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を生成するために用いられる。
【００４４】
レベルラッチ810は、第1の状態遷移信号(SI)を受信し得るものであり、第1の状態遷移信号のレベルラッチインスタンス(S)を出力する。ここで、レベルラッチ810は、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいて起動される。
【００４５】
一実施例では、比較器804は、SI信号と信号S(レベルラッチ810からの出力)とを比較し得るものであり、ラッチ806への入力となる不一致NE(Not Equal)信号を生成する。比較器804は、信号SIと信号Sとが等しくない場合(すなわち、異なるシンボルである場合)、高を出力し、信号SIと信号Sとが等しい場合(すなわち、同じシンボルである場合)、低を出力する。
【００４６】
タイミング図812から理解されるように、信号Sは、信号SIを遅延させてフィルタした信号であり、遅延808によりグリッチが除去されている。重要なことには、比較器804と信号Sの遅延とにより、信号NEにおける設定グリッチが、NEFLT信号においてマスクされる。その結果、本回路におけるフィードバックおよび遅延、SDRCLK 816ならびにDDRCLK 814は、ラインスキューおよびシンボル遷移におけるグリッチに耐性がある。
【００４７】
以下の定義は、タイミング図812の信号に用いられる。
tsym:1シンボル周期期間、
tSU:SDRCLK 816の立ち上がり(先)端を基準とした、レベルラッチ810についてのSIの設定時間、
tHD:SDRCLK 816の立ち下がり(後)端を基準とした、レベルラッチ810についてのSIの保持時間、
tdNE:比較器804の伝播遅延、
tdRST:SDRCLK 816の立ち上がり(先)端からのセットリセットラッチ806のリセット時間。
【００４８】
最初に、信号SIおよびSは、従前のシンボル値S0 822を保持している。信号NE、NEFLTおよびSDRCLKはゼロである。DDRCLK 814は、安定しているが、高または低のいずれかとなり得る。
【００４９】
新規のシンボル値S1 824が受信されると、信号SIは、その値の変更を開始する。たとえば、線間スキュー、オーバーシュート/アンダーシュート、クロストークなどにより発生し得る信号遷移(S0からS1へ)の中間または不確定状態826を受信する可能性により、SI値は、S1 824(有効データ)とは異なり得る。
【００５０】
比較器804が、信号SIと信号Sと間の異なる値を検出するとすぐに、NE信号は、高となる。そして、セットリセットラッチ806の出力、NEFLT信号を、tdNEの後に非同期的に高に設定し、この高状態を、SDRCLK 816の高状態によりリセットされるまで保ち、NEFLT信号の立ち上がり後の(アナログ遅延808により発生する)遅延期間にほぼ到達する。
【００５１】
SIでの中間状態(無効データ)は、比較器804の出力NE信号が、短期間(NE信号におけるスパイク828)低に戻るようにする、短期間のシンボル値S0 822を含み得る。NE信号の低状態は、セットリセットラッチ806の出力であるNEFLT信号に悪影響を与えない。これは、セットリセットラッチ806が、NEFLT信号を出力する前に、NE信号におけるスパイクをフィルタで効率的に除去するためである。
【００５２】
NEFLT信号の高状態は、アナログ遅延808により発生する遅延期間830の後に、SDRCLK信号816へと伝播する。
【００５３】
SDRCLK信号816の高状態は、tdRST後に、セットリセットラッチ806の出力であるNEFLT信号を、リセットして低にする。また、SDRCLK信号816の高状態は、SI信号値についてレベルラッチ810をS信号に出力することができるようにする。
【００５４】
比較器804は、S信号(シンボルS1 832)がSI信号のシンボルS1 824に一致することを検出し、その出力であるNE信号を低に切り換える。
【００５５】
NEFLT信号の低状態は、アナログ遅延808により発生する遅延期間834の後に、SDRCLK信号816へと伝播する。
【００５６】
SDRCLK信号816の立ち下がり(後)端836により、DDRCLK信号は、クロックツリーネットワークの伝播遅延後に切り換わる838。
【００５７】
新規のシンボル値S2が受信されていると、SI信号は、tHD後に、SDRCLK信号の最後の立ち下がり(後)端から、次のシンボルS2 840へと、その値を変化させる。
【００５８】
シンボル周期期間tSYMに対するタイミングの制約は、以下のようになり得る。
tdNE + 遅延×2 + tdRST + tHD < tSYM.
具体的には、シンボル周期時間tSYMは、2つの遅延期間、tHD、tdNEおよびtdRSTの合計よりも長くなる必要がある。これら4つの時間期間の合計がtSYM期間を超えると、SDRCLKの後端は、次のシンボル周期と重なり、NEFLT信号を、重複期間に設定されたものから、ディスエーブルにする。なお、重複量は、周期から周期へと重なり、最終的には、1つの符号全体を失う(スキップ)結果となる。
【００５９】
設定時間tSUに対するタイミングの制約は、以下のようになり得る。
tdNE + 遅延 > tSU.
具体的には、設定時間tSUは、1つの遅延期間とtdNEとの合計よりも長くなる必要がある。この条件を満たさないと、レベルラッチ810は、SI入力信号の無効な中間状態を、S信号へと伝播してしまう。
【００６０】
図15は、クロック信号を抽出する第1の方法を示す。一実施例では、この方法は、図8に示す回路により実装され得る。第1の状態遷移信号の第1のインスタンス(SI)は、第1の状態遷移信号のレベルラッチインスタンス(S)と比較されて、比較信号(NE)が得られる1502。比較信号(NE)は、フィルタ処理されて、フィルタ処理済の比較信号(NEFLT)が得られる1504。フィルタ処理済の比較信号(NEFLT)が遅延されて、第1の状態遷移信号の遅延インスタンス(SDRCLK)が得られる。ここで、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を得るために用いられる1506。第1の状態遷移信号の遅延インスタンス(SDRCLK)は、第1の状態遷移信号のレベルラッチインスタンス(S)をイネーブルにするレベルラッチを起動するようにはたらく1508。第1の状態遷移信号の遅延インスタンス(SDRCLK)は、フィルタ処理済の比較信号(NEFLT)を提供するセットリセットラッチをリセットするようにもはたらく1510。
スケーラブルにクロックを抽出する多線送信システムの第2の実施例
【００６１】
図9は、クロック情報が埋め込まれた4線システムのクロックおよびデータ送信方式を示す。このCDR回路は、図8のものと同様であるが、追加でアナログ遅延902が、ワンショットロジック902/903とともに導入されている。
【００６２】
このクロック抽出回路は、比較器904と、セットリセットラッチ906と、第1のアナログ遅延デバイス902と、ワンショットロジック902/903と、第2のアナログ遅延デバイス908と、レベルラッチ910とを含む。比較器904は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチ906は、比較信号(NE)を比較器904から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。第1のアナログ遅延デバイス902は、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する。ワンショットロジック902/903は、フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを受信し得るものであり、第2のフィルタ処理済の比較信号(NE1SHOT)を出力する。第2のアナログ遅延デバイス908は、第2のフィルタ処理済の比較信号(NE1SHOT)を受信し得るものであり、第1の状態遷移信号の遅延インスタンス(SDRCLK)を出力する。ここで、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を生成するために用いられる。セットリセットラッチ906は、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいてリセットされ得る。レベルラッチ910は、第1の状態遷移信号(SI)を受信し得るものであり、第1の状態遷移信号のレベルラッチインスタンス(S)を出力する。ここで、レベルラッチ910は、第1の状態遷移信号の遅延インスタンス(SDRCLK)に基づいて起動される。
【００６３】
タイミング図912から理解されるように、導入された小規模遅延P 902により、シンボル間の設定時間に、さらにマージンが取れるようになる。
【００６４】
以下の定義は、タイミング図912の信号に用いられる。
tsym:1シンボル周期期間、
tSU:SDRCLK 916の立ち上がり(先)端を基準とした、レベルラッチ910についてのSIの設定時間、
tHD:SDRCLK 916の立ち下がり(後)端を基準とした、レベルラッチ910についてのSIの保持時間、
tdNE:比較器904の伝播遅延、
tdRST:SDRCLK 916の立ち上がり(先)端からのセットリセットラッチ906のリセット時間、
td1S:ワンショットロジック903の伝播遅延。
【００６５】
最初に、信号SIおよびSは、従前のシンボル値Sym0 922を保持している。信号NE、NEFLTおよびSDRCLKはゼロである。DDRCLK 914は、安定しているが、高または低のいずれかとなり得る。
【００６６】
新規のシンボル値Sym1 924が受信されると、信号SIは、その値の変更を開始する。たとえば、線間スキュー、オーバーシュート/アンダーシュート、クロストークなどにより発生し得る信号遷移(Sym0からSym1へ)の中間または不確定状態926を受信する可能性により、SI値は、Sym1 924(有効データ)とは異なり得る。
【００６７】
比較器904が、信号SIと信号Sとの間の異なる値を検出するとすぐに、NE信号は高となる。そして、セットリセットラッチ906の出力であるNEFLT信号を、tdNEの後に非同期的に高に設定し、この高状態を、SDRCLK 916の高状態によりリセットされるまで保ち、NEFLT信号の立ち上がり後の(アナログ遅延908により発生する)遅延S期間にほぼ到達する。
【００６８】
SIでの中間状態(無効データ)は、比較器904の出力NE信号が、短期間(NE信号におけるスパイク928)低に戻るようにする、短期間のシンボル値Sym0 922を含み得る。NE信号の低状態は、セットリセットラッチ906の出力であるNEFLT信号に悪影響を与えない。これは、セットリセットラッチ906が、NEFLT信号を出力する前に、NE信号におけるスパイクをフィルタで効率的に除去するためである。
【００６９】
ワンショット回路(アナログ遅延P 902のある論理ゲート903)は、その出力であるNE1SHOT信号に、NEFLT信号の立ち上がり端からtd1S後に高状態を生成し、高状態のNE1SHOT信号を、低状態になる前の遅延P期間902保持する。
【００７０】
NE1SHOT信号の高状態は、アナログ遅延S 908により発生する遅延S期間930の後に、SDRCLK信号916へと伝播する。
【００７１】
SDRCLK信号916の高状態は、tdRST後に、セットリセットラッチ906の出力であるNEFLT信号を、リセットして低にする。また、SDRCLK信号916の高状態は、SI信号値についてレベルラッチ910をS信号に出力することができるようにする。
【００７２】
比較器904は、S信号(シンボルSym1 932)がSI信号のシンボルSym1 924にいつ一致するかを検出し、その出力であるNE信号を低に切り換える。
【００７３】
NE1SHOT信号の低状態は、アナログ遅延S 908により発生する遅延期間S 930の後に、SDRCLK信号916へと伝播する。
【００７４】
SDRCLK信号916の立ち下がり(後)端936により、DDRCLK信号は、クロックツリーネットワークの伝播遅延後に切り換わる938。
【００７５】
新規のシンボル値Sym2が受信されていると、SI信号は、tHD後に、SDRCLK信号の最後の立ち下がり(後)端936から、次のシンボルS2 940へと、その値を変化させる。
【００７６】
シンボル周期期間tSYMに対するタイミングの制約は、以下のようになり得る。
tdNE + td1S + 遅延S + 遅延P + tHD < tSYM。
具体的には、シンボル周期時間tSYMは、遅延期間S、遅延期間P、tHD、tdNE、td1SおよびtdRSTの合計よりも長くなる必要がある。これら6つの時間期間の合計がtSYM期間を超えると、SDRCLKの後端は、次のシンボル周期と重なり、NEFLT信号を、重複期間に設定されたものから、ディスエーブルにする。なお、重複期間の総計は、周期から周期へと重なり、最終的には、1つのシンボル周期における追加のSDRCLKパルスをもたらす。
【００７７】
設定時間tSUに対するタイミングの制約は、以下のようになり得る。
最大スキューspec + tSU < 遅延S.
具体的には、遅延期間Sは、設定時間tSUに最大スキューを加えたもの未満となる必要がある。
【００７８】
図10は、図9のCDR回路における信号のタイミング図である。回路が、予めラッチした受信データSからの受信データ信号SIの変化を信号値にかかわらず受信するとすぐに、信号NE、次いで信号NEFLTが設定されるので、あらゆる信号遷移の開始を検出することができる。不安定な受信データ状態SIは、アナログ遅延S 908期間中はマスクされて、NEFLT信号が、あらゆる中間状態遷移(シンボル遷移間)からのSI信号中のグリッチの影響を受けないようにする。このシステムは、SDRCLK(=遅延P)の高期間が充分に長ければ、短い時間期間で正確なデータをサンプリングすることができる。
【００７９】
図11は、図9のCDR回路の様々な回路要素の実装例を示す。
【００８０】
図16は、クロック信号を抽出する第2の方法を示す。一実施例では、この方法は、図9、図10および図11に示す回路により実装され得る。第1の状態遷移信号の第1のインスタンス(SI)は、第1の状態遷移信号のインスタンス(S)と比較されて、比較信号(NE)が得られる1602。比較信号(NE)は、フィルタ処理されて、フィルタ処理済の比較信号(NEFLT)が得られる1604。フィルタ処理済の比較信号(NEFLT)が遅延されて、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)が得られる1606。フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とが、論理的に結合されて、第2のフィルタ処理済の比較信号(NE1SHOT)が得られる1608。第2のフィルタ処理済の比較信号(NE1SHOT)が遅延されて、第1の状態遷移信号の遅延インスタンス(SDRCLK)が得られる。ここで、第1の状態遷移信号の遅延インスタンス(SDRCLK)は、クロック信号(DDRCLK)を生成するために用いられる1610。第1の状態遷移信号の遅延インスタンス(SDRCLK)は、第1の状態遷移信号のレベルラッチインスタンス(S)をイネーブルにするレベルラッチを起動するようにはたらく1612。第1の状態遷移信号の遅延インスタンス(SDRCLK)は、フィルタ処理済の比較信号(NEFLT)を提供するセットリセットラッチをリセットするようにもはたらく1614。
スケーラブルにクロックを抽出する多線送信システムの第3の実施例
【００８１】
図12は、クロック情報が埋め込まれた4線システムの別のデータ送信方式を示す。このクロック回復回路は、図9のものと同様であるが、追加でアナログ遅延1209が導入されている。
【００８２】
このクロック抽出回路は、比較器1204と、セットリセットラッチ1206と、第1のアナログ遅延デバイス1202と、ワンショットロジック1202/1203と、第2のアナログ遅延デバイス1208と、第3のアナログ遅延デバイス1209と、レベルラッチ1210とを含む。比較器1204は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のレベルラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチ1206は、比較信号(NE)を比較器から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。第1のアナログ遅延デバイス1202は、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する。ワンショットロジック1202/1203は、フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを受信し得るものであり、第2のフィルタ処理済の比較信号(NE1SHOT)を出力する。第2のアナログ遅延デバイス1208は、第2のフィルタ処理済の比較信号(NE1SHOT)を受信し得るものであり、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を出力する。ここで、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)は、クロック信号(DDRCLK)を生成するために用いられる。第3のアナログ遅延デバイスS1 1209は、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)を受信し得るものであり、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)を出力する。セットリセットラッチ1206は、第1の状態遷移信号の第2の遅延インスタンスに基づいてリセットされ得る。
【００８３】
レベルラッチ1210は、第1の状態遷移信号(SI)を受信し得るものであり、第1の状態遷移信号のレベルラッチインスタンス(S)を出力する。ここで、レベルラッチ1210は、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)に基づいて起動される。
【００８４】
タイミング図1212は、タイミング図912(図9)と非常に似ているものの、遅延S 1208が、2つの等価な遅延S0 1208およびS1 1209に置き換えられている。この手法により、図9よりも図12において、DDRCLKが早く切り換わるようになる。
【００８５】
シンボル周期期間tSYMに対するタイミングの制約は、以下のようになり得る。
tdNE + td1S + 遅延S0 + 遅延S1 + 遅延P +  tHD < tSYM.
具体的には、シンボル周期時間tSYMは、遅延期間S0、遅延期間S1、遅延期間P、tdNE、td1SおよびtHDの合計よりも長くなる必要がある。これら6つの時間期間の合計がtSYM期間を超えると、SDRCLKの後端は、次のシンボル周期と重なり、NEFLT信号を、重複期間に設定されたものから、ディスエーブルにする。なお、重複期間の総計は、周期から周期へと重なり、最終的には、1つのシンボル周期における追加のSDRCLKパルスをもたらす。
【００８６】
遅延Pに対するタイミングの制約は、以下のようになり得る。
最大スキューspec + tSU < 遅延S.
具体的には、遅延期間Sは、tSUおよび最大スキューの合計よりも長くなる必要がある。この条件を満たさないと、レベルラッチ810は、SI入力信号の無効な中間状態を、S信号へと伝播してしまう。
【００８７】
図17は、クロック信号を抽出する第3の方法を示す。一実施例では、この方法は、図12に示す回路により実装され得る。第1の状態遷移信号の第1のインスタンス(SI)は、第1の状態遷移信号のレベルラッチインスタンス(S)と比較されて、比較信号(NE)が得られる1702。比較信号(NE)は、フィルタ処理されて、フィルタ処理済の比較信号(NEFLT)が得られる1704。フィルタ処理済の比較信号(NEFLT)が遅延されて、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)が得られる1706。フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とが、論理的に結合されて、第2のフィルタ処理済の比較信号(NE1SHOT)が得られる1708。第2のフィルタ処理済の比較信号(NE1SHOT)が遅延されて、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)が得られる。ここで、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)は、クロック信号(DDRCLK)を生成するために用いられる1710。第1の状態遷移信号の第1の遅延インスタンス(SDRCLK0)は、さらに遅延されてもよく(図12の遅延S1 1209)、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)が取得される1712。第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)は、第1の状態遷移信号のレベルラッチインスタンス(S)をイネーブルにするレベルラッチを起動するようにはたらく1714。第1の状態遷移信号の第2の遅延インスタンス(SDRCLK)は、フィルタ処理済の比較信号(NEFLT)を提供するセットリセットラッチをリセットするようにもはたらく1716。
スケーラブルにクロックを抽出する多線送信システムの第4の実施例
【００８８】
図13は、クロック情報が埋め込まれた4線システムのさらに別のデータ送信方式を示す。クロック回復回路は、図12のものと同様であるが、レベルラッチ1210(図12)の代わりに、フリップフロップ1310になっている。このクロック抽出回路は、比較器1304と、セットリセットラッチ1306と、第1のアナログ遅延デバイス1302と、ワンショットロジック1302/1303と、第2のアナログ遅延デバイス1308と、第3のアナログ遅延デバイス1309と、フリップフロップ1310とを含む。比較器1304は、第1の状態遷移信号の第1のインスタンス(SI)と、第1の状態遷移信号のラッチインスタンス(S)とを比較し得るものであり、比較信号(NE)を出力する。セットリセットラッチ1306は、比較信号(NE)を比較器から受信し得るものであり、フィルタ処理済の比較信号(NEFLT)を出力する。第1のアナログ遅延デバイス1302は、フィルタ処理済の比較信号(NEFLT)を受信し得るものであり、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)を出力する。ワンショットロジック1302/1303は、フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とを受信し得るものであり、第2のフィルタ処理済の比較信号(NE1SHOT)を出力する。第2のアナログ遅延デバイスS1 1308は、第2のフィルタ処理済の比較信号(NE1SHOT)を受信し得るものであり、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を出力する。ここで、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)は、クロック信号(DDRCLK)を生成するために用いられる。第3のアナログ遅延デバイスS2 1309は、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)を受信し得るものであり、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)1315を出力する。セットリセットラッチ1306は、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)1315に基づいてリセットされ得る。
【００８９】
フリップフロップ1310は、第1の状態遷移信号(SI)を受信し得るものであり、第1の状態遷移信号のラッチインスタンス(S)を出力する。ここで、フリップフロップ1310は、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)1316に基づいて起動される。
【００９０】
タイミング図1312は、タイミング図1212(図12)と非常に似ている。
【００９１】
シンボル周期期間tSYMに対するタイミングの制約は、以下のようになり得る。
tdNE + td1S + 遅延S1 + 遅延P < tSYM.
具体的には、シンボル周期時間tSYMは、遅延期間S1、遅延期間P、tdNEおよびtd1Sの合計よりも長くなる必要がある。これら4つの時間期間の合計がtSYM期間を超えると、SDRCLK1の後端は、次のシンボル周期と重なり、NEFLT信号を、重複期間に設定されたものから、ディスエーブルにする。なお、重複期間の総計は、周期から周期へと重なり、最終的には、1つのシンボル周期における追加のSDRCLKパルスをもたらす。
【００９２】
遅延Pに対するタイミングの制約は、以下のようになり得る。
tdS + tdNE + thRREL < 遅延S2 < 遅延P.
具体的には、遅延期間Pは、遅延期間S2よりも長くなる必要があり、遅延期間S2は、tdS + tdNE + thRRELの合計よりも長くなる必要がある。
【００９３】
tHDに対するタイミングの制約は、以下のようになり得る。
遅延S2≦tHD.
【００９４】
遅延Pおよび遅延S1に対するタイミングの制約は、以下のようになり得る。
最大スキューspec + tSU < 遅延S1 + 遅延P.
【００９５】
図18は、クロック信号を抽出する第4の方法を示す。一実施例では、この方法は、図13に示す回路により実装され得る。第1の状態遷移信号の第1のインスタンス(SI)は、第1の状態遷移信号のレベルラッチインスタンス(S)と比較されて、比較信号(NE)が得られてもよい1802。比較信号(NE)は、フィルタ処理されて、フィルタ処理済の比較信号(NEFLT)が得られてもよい1804。フィルタ処理済の比較信号(NEFLT)が遅延されて、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)が得られてもよい1806。フィルタ処理済の比較信号(NEFLT)と、フィルタ処理済の比較信号の遅延インスタンス(NEDEL)とが、論理的に結合されて、第2のフィルタ処理済の比較信号(NE1SHOT)が得られてもよい1808。第2のフィルタ処理済の比較信号(NE1SHOT)が遅延されて、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)が得られてもよい。ここで、第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)は、クロック信号を生成するために用いられる1810。第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)が遅延されて、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)が得られてもよい。ここで、第1の状態遷移信号のレベルラッチインスタンス(S)は、第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)に基づいて起動されるレベルラッチ(1210)から得られる1812。第1の状態遷移信号の第1の遅延インスタンス(SDRCLK1)は、第1の状態遷移信号のレベルラッチインスタンス(S)をイネーブルにするフリップフロップを起動するようにはたらく1814。第1の状態遷移信号の第2の遅延インスタンス(SDRCLK2)は、フィルタ処理済の比較信号(NEFLT)を提供するセットリセットラッチをリセットするようにはたらく1816。
【００９６】
図面に示したコンポーネント、ステップ、特徴および/もしくは機能の1つまたは複数は、再配列および/もしくは組み合わされて単一のコンポーネント、ステップ、特徴もしくは機能とされてもよく、または、いくつかのコンポーネント、ステップもしくは機能として実装されてもよい。また、追加の要素、コンポーネント、ステップおよび/または機能が、本明細書に開示された新規の特徴から逸脱することなく、追加されてもよい。図面に示した装置、デバイスおよび/またはコンポーネントは、図面に示した方法、特徴またはステップの1つまたは複数を実行するように構成されてもよい。また、本明細書に説明した新規のアルゴリズムは、ソフトウェアに効率的に実装されてもよく、および/または、ハードウェアに組み込まれてもよい。
【００９７】
また、実施形態は、フローチャート、フロー図、構造図またはブロック図として図示された処理として説明され得ることに留意されたい。フローチャートが、動作を連続的処理として説明し得るものの、動作の多くは、並列的または同時に実行可能である。さらに、動作の順番は、再編成され得る。処理は、その動作が完了したときに終了する。処理は、方法、機能、手順、サブルーチン、サブプログラムなどに対応する。処理が関数に対応する場合、その終了は、関数が呼出元の関数またはメイン関数に戻ることに対応する。
【００９８】
さらに、記憶媒体は、読取専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク記憶媒体、光学記憶媒体、フラッシュメモリデバイス、および/または他の情報を格納するための機械可読媒体など、データを格納する1つまたは複数のデバイスを示し得る。「機械可読媒体」なる用語は、可搬式もしくは固定記憶デバイス、光学記憶デバイス、ワイヤレスチャネル、ならびに、命令および/またはデータを記憶、格納または担持可能な様々な他の媒体を含むが、それに限定されるものではない。
【００９９】
さらに、実施形態は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、またはそれらの任意の組み合わせとして実装され得る。ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコードとして実装された場合、必要なタスクを実行するプログラムコードまたはコードセグメントは、記憶媒体または他のストレージなどの機械可読媒体内に格納され得る。プロセッサは、必要なタスクを実行し得る。コードセグメントは、プロシージャ、関数、サブプログラム、プログラム、ルーチン、サブルーチン、モジュール、ソフトウェアパッケージ、クラス、または命令の任意の組み合わせ、データ構造、またはプログラム文を示し得る。コードセグメントは、情報、データ、引数、パラメータもしくはメモリ内容を送出および/または受信することにより、他のコードセグメントまたはハードウェア回路と結合され得る。情報、引数、パラメータ、データなどは、メモリ共用、メッセージ送出、トークン送出、ネットワーク送信などの任意の適切な手段を通じて、送出、転送、または送信され得る。
【０１００】
本明細書に開示した実施例に関連して説明され、様々に図示された、論理ブロック、モジュール、回路、要素および/またはコンポーネントは、汎用プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)もしくは他のプログラム可能論理コンポーネント、離散ゲートもしくはトランジスタロジック、離散ハードウェアコンポーネント、または本明細書に示した機能を実行するように設計されたこれらの任意の組み合わせにて、実装または実行され得る。汎用プロセッサは、マイクロプロセッサであってもよいが、それ以外にも、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラまたは状態機械であってもよい。また、プロセッサは、DSPとマイクロプロセッサ、多くのマイクロプロセッサ、DSPコアと結合された1つもしくは複数のマイクロプロセッサ、または他のこのような構成の組み合わせなど、コンピュータ処理コンポーネントの組み合わせとして実装され得る。
【０１０１】
本明細書に開示した実施例と組み合わせて説明された方法またはアルゴリズムは、処理ユニット、プログラム命令、または他の指令の形態で、直接的にハードウェアにて、プロセッサで実行可能なソフトウェアモジュールにて、または両者の組み合わせにて実装され得るものであり、単一のデバイスに含まれてもよく、複数のデバイスに分散されてもよい。ソフトウェアモジュールは、RAMメモリ、フラッシュメモリ、ROMメモリ、EPROMメモリ、EEPROMメモリ、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野において既知である任意の他の形態の記憶媒体内にあってもよい。記憶媒体は、プロセッサが記憶媒体に対して情報を読み書き可能となるように、プロセッサと連結され得る。あるいは、記憶媒体は、プロセッサと統合されていてもよい。
【０１０２】
さらに、当業者は、本明細書に開示された実施形態と関連して説明され、様々に図示された、論理ブロック、モジュール、回路およびアルゴリズムステップが、電子ハードウェア、コンピュータソフトウェア、または両者の組み合わせとして実装され得ることを理解するであろう。ハードウェアとソフトウェアとのこのような互換性を明瞭に示すために、様々に図示されたコンポーネント、ブロック、モジュール、回路およびステップが、一般的にそれらの機能性の観点で説明された。このような機能性がハードウェアとして実装されるかまたはソフトウェアとして実装されるかは、特定の用途およびシステム全体に課された設計上の制約に依存する。
【０１０３】
本明細書に説明した発明の様々な特徴は、発明から逸脱することなく、様々なシステムに実装可能である。なお、上述の実施形態は、例示に過ぎず、発明を限定するように解釈されるべきでないことを理解されたい。実施形態の説明は、例証のためであることが意図されており、特許請求の範囲を限定するものではない。このように、本教示は、他の種類の装置に容易に適用可能であり、多くの代替例、修正例、および変形例が、当業者には明らかである。
【符号の説明】
【０１０４】
1  ORゲート
2  ORゲート
3  ORゲート
4  ORゲート
5  ORゲート
6  ORゲート
11  Dフリップフロップ
12  Dフリップフロップ
13  Dフリップフロップ
14  Dフリップフロップ
15  Dフリップフロップ
16  Dフリップフロップ
21  Dフリップフロップ
22  Dフリップフロップ
23  Dフリップフロップ
24  Dフリップフロップ
25  Dフリップフロップ
26  Dフリップフロップ
37  XORゲート
62  遅延要素
71  ANDゲート
100  送信デバイス
101  受信デバイス
108  多線バス
114  第1の差分信号
116  第2の差分信号
118  第3の差分信号
120  復号器
200  クロック回復回路
202  入力信号
204  入力信号
206  入力信号
208  入力信号
210  入力信号
212  入力信号
214  リセット信号
216  ダブルデータレートクロック信号
222  Q出力
224  Q出力
226  Q出力
228  Q出力
230  Q出力
232  Q出力
300  レーン間スキュー
301  ABレーン
302  意図せぬ状態
303  BCレーン
308  RXCLK回復ダブルデータレートクロック
312  ZM線
402  遅延
404  遅延
406  遅延
408  遅延
410  遅延
412  遅延
420  復号回路
502  グリッチ
504  グリッチ
602  ワンショット回路
604  遅延
606  遅延
608  遅延
610  XORゲート
612  XORゲート
614  XORゲート
616  ORゲート
618  SDRCLK線
702  グリッチ
704  グリッチ
706  DDRCLKトグル
708  DDRCLKトグル
800  4線システム
804  比較器
806  セットリセットラッチ
808  アナログ遅延デバイス
810  レベルラッチ
816  SDRCLK信号
822  シンボル値S0
824  シンボル値S1
826  中間または不確定状態
828  スパイク
830  遅延期間
832  S信号
902  第1のアナログ遅延デバイス
902/903  ワンショットロジック
904  比較器
906  セットリセットラッチ
908  第2のアナログ遅延デバイス
910  レベルラッチ
916  SDRCLK信号
922  シンボル値Sym0
924  シンボル値Sym1
926  中間または不確定状態
936  立ち下がり(後)端
1202  第1のアナログ遅延デバイス
1202/1203  ワンショットロジック
1204  比較器
1206  セットリセットラッチ
1208  第2のアナログ遅延デバイス
1209  第3のアナログ遅延デバイス
1210  レベルラッチ
1302  第1のアナログ遅延デバイス
1302/1303  ワンショットロジック
1304  比較器
1306  セットリセットラッチ
1308  第2のアナログ遅延デバイス
1309  第3のアナログ遅延デバイス
1310  フリップフロップ
SDRCLK  第1の状態遷移信号の遅延インスタンス
SI  第1の状態遷移信号の第1のインスタンス
S  第1の状態遷移信号のレベルラッチインスタンス
NE  比較信号
NEFLT  フィルタ処理済の比較信号
DDRCLK  クロック信号
NE1SHOT  第2のフィルタ処理済の比較信号
NEDEL  フィルタ処理済の比較信号の遅延インスタンス
SDRCLK0  第1の状態遷移信号の第1の遅延インスタンス
SDRCLK1  第1の状態遷移信号の第1の遅延インスタンス
SDRCLK2  第1の状態遷移信号の第2の遅延インスタンス
【図１】
0006461018.tif 000002
【図２】
0006461018.tif 000003
【図３】
0006461018.tif 000004
【図４】
0006461018.tif 000005
【図５】
0006461018.tif 000006
【図６】
0006461018.tif 000007
【図７】
0006461018.tif 000008
【図８】
0006461018.tif 000009
【図９】
0006461018.tif 000010
【図１０】
0006461018.tif 000011
【図１１】
0006461018.tif 000012
【図１２】
0006461018.tif 000013
【図１３】
0006461018.tif 000014
【図１４】
0006461018.tif 000015
【図１５】
0006461018.tif 000016
【図１６】
0006461018.tif 000017
【図１７】
0006461018.tif 000018
【図１８】
0006461018.tif 000019