JP6598969B2 - 位相補間器ベースの送受信機システムにおけるクロックデータリカバリ(cdr)の位相ウォーク方式 - Google Patents

位相補間器ベースの送受信機システムにおけるクロックデータリカバリ(cdr)の位相ウォーク方式 Download PDF

Info

Publication number
JP6598969B2
JP6598969B2 JP2018500367A JP2018500367A JP6598969B2 JP 6598969 B2 JP6598969 B2 JP 6598969B2 JP 2018500367 A JP2018500367 A JP 2018500367A JP 2018500367 A JP2018500367 A JP 2018500367A JP 6598969 B2 JP6598969 B2 JP 6598969B2
Authority
JP
Japan
Prior art keywords
code
data
cross
clock
value
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.)
Active
Application number
JP2018500367A
Other languages
English (en)
Other versions
JP2018521586A (ja
Inventor
ユイ シュイ,
チョン−シアン シェイ,
ヨハン フラン,
クン−ユン チャン,
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.)
Xilinx Inc
Original Assignee
Xilinx 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 Xilinx Inc filed Critical Xilinx Inc
Publication of JP2018521586A publication Critical patent/JP2018521586A/ja
Application granted granted Critical
Publication of JP6598969B2 publication Critical patent/JP6598969B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0016Arrangements for synchronising receiver with transmitter correction of synchronization errors
    • H04L7/002Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
    • H04L7/0025Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of clock signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0079Receiver details
    • H04L7/0087Preprocessing of received signal for synchronisation, e.g. by code conversion, pulse generation or edge detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/033Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
    • H04L7/0337Selecting between two or more discretely delayed clocks or selecting between two or more discretely delayed received code signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本開示の実施例は、一般に、電子回路に関し、より詳細には、クロックデータリカバリの技法に関する。
集積回路(IC)は、指定された機能を実行するように実装することができる。ICの1つのタイプは、フィールドプログラマブルゲートアレイ(FPGA)などのプログラマブルICである。FPGAは通常、一連のプログラマブルタイルを含む。これらのプログラマブルタイルは、たとえば、入力/出力ブロック(IOB)、構成可能な論理ブロック(CLB)、専用ランダムアクセスメモリブロック(BRAM)、乗算器、デジタル信号処理ブロック(DSP)、プロセッサ、クロックマネージャ、遅延ロックループ(DLL)などを含んでもよい。別のタイプのプログラマブルICは、複合プログラマブル論理デバイス、すなわちCPLDである。CPLDは、相互接続スイッチマトリクスによってともに入力/出力(I/O)リソースに接続された、2つ以上の「機能ブロック」を含む。CPLDの各機能ブロックは、プログラマブル論理アレイ(PLA)およびプログラマブルアレイ論理(PAL)デバイスで使用される構造と同様の2レベルAND/OR構造を含む。他のプログラマブルICは、金属層などの処理層を加えることによってプログラムされ、この金属層は、デバイス上の様々な素子をプログラム可能に相互接続する。これらのプログラマブルICは、マスクプログラマブルデバイスとして知られている。「プログラマブルIC」という語句は、特定用途向け集積回路(ASIC)など、部分的にのみプログラムできるデバイスをも包含することができる。
上記その他のタイプのプログラマブルICは、クロック信号を必要とせずに伝送線路を介して高速デジタルデータ信号を受信機に送信できてもよい。受信機でのクロックデータリカバリ(CDR)回路は、通常、近似的な周波数基準信号から1つまたは複数のクロック信号を生成し、次いで、このクロック信号を、受信済みデータ信号内での遷移、または受信済みデータ信号の別の部分に位相調整する。受信機は、クロック信号を使用して、受信済みデータ信号内のデータビットをサンプリングする。
本開示の一例は、クロックデータリカバリを実行する方法である。この方法は一般に、条件が満たされたことを判定することと、この判定に基づいて、クロックデータリカバリ(CDR)回路において、クロックの各サイクルごとにデータ位相補間器(PI)コードまたは交差PIコードのうちの少なくとも一方をステップ処理することと、データPIコードおよび交差PIコードの所定の状態を生成するために、1つまたは複数の判定基準に基づいてこのステップ処理を停止することであって、この所定の状態が、データPIコードと交差PIコードの間のオフセットを含む、停止することと、データストリームを受信することと、データPIコードと交差PIコードの間のオフセットに基づいて、このデータストリームに対してクロックデータリカバリを実行することとを含む。
場合によっては、ステップ処理することは、クロックの各サイクルごとにデータPIコードまたは交差PIコードのうちの少なくとも一方を単一コード値分だけ増分することを含んでもよい。
場合によっては、この条件は、リセットモードからCDR回路が初めて抜け出ることを含んでもよい。
場合によっては、ステップ処理することは、データPIコードを0のコード値に保持することと、このデータPIコードが保持されている間に、交差PIコードをステップ処理することとを含んでもよい。
場合によっては、この方法はさらに、データPIコードおよび交差PIコードを、ステップ処理の前に0のコード値になるように設定することを含んでもよい。
場合によっては、1つまたは複数の判定基準は、交差PIコードが、所定の状態での事前設定値に等しいコード値に到達することを含んでもよい。
場合によっては、ステップ処理することは、いずれの方向が事前設定値により速く到達するかに応じて、交差PIコードを増分または減分することを含んでもよい。
場合によっては、条件は、非同期リセット動作を含んでもよい。
場合によっては、ステップ処理することは、データPIコードと交差PIコードを、データPIコードと交差PIコードの間に維持されたオフセットとともにステップ処理することを含んでもよい。
場合によっては、1つまたは複数の判定基準は、データPIコードが0のコード値に到達することを含んでもよい。
場合によっては、実行することは、データストリームに基づいた所定の状態から、データPIコードと交差PIコードの間のオフセットを調整することと、データPIコードと交差PIコードの間の調整済みオフセットを使用して、このデータストリームに対してクロックデータリカバリを実行することとを含んでもよい。
場合によっては、所定の状態は、データPIコードが0のコード値を有しており、交差PIコードが、このオフセットでの事前設定値に等しいコード値を有していることを含んでもよい。
本開示の別の例は、クロックデータリカバリシステムである。クロックデータリカバリシステムは一般に、少なくとも1つの位相補間器(PI)と、この少なくとも1つのPIに接続されたクロックデータリカバリ(CDR)回路とを備え、このCDR回路は、1つまたは複数の位相検出器を備える。このCDR回路は通常、条件が満たされたことを判定することと、この判定に基づいて、システムクロックの各サイクルについてデータPIコードまたは交差PIコードのうちの少なくとも一方をステップ処理することと、データPIコードおよび交差PIコードの所定の状態を生成するために、1つまたは複数の判定基準に基づいてこのステップ処理を停止することであって、この所定の状態が、データPIコードと交差PIコードの間のオフセットを含む、停止することと、データPIコードおよび交差PIコードを少なくとも1つのPIに出力することとを行うように構成される。
場合によっては、CDR回路は、システムクロックの各サイクルごとにデータPIコードまたは交差PIコードのうちの少なくとも一方を単一コード値分だけ増分することによって、このデータPIコードまたは交差PIコードのうちの少なくとも一方をステップ処理するように構成してもよい。
場合によっては、この条件は、リセットモードからCDR回路が初めて抜け出ることを含んでもよい。
場合によっては、CDR回路は、データPIコードを0のコード値に保持しながら交差PIコードをステップ処理することによって、このデータPIコードまたは交差PIコードのうちの少なくとも一方をステップ処理するように構成してもよい。
場合によっては、CDR回路はさらに、交差PIコードがステップ処理される前に、データPIコードおよび交差PIコードを、0のコード値を有するように設定するように構成してもよい。
場合によっては、1つまたは複数の判定基準は、交差PIコードが、所定の状態での事前設定値に等しいコード値に到達することを含んでもよい。
場合によっては、条件は、非同期リセット動作を含んでもよい。
場合によっては、CDR回路は、データPIコードと交差PIコードを、データPIコードと交差PIコードの間に維持されたオフセットとともにステップ処理することによって、データPIコードまたは交差PIコードのうちの少なくとも一方をステップ処理するように構成してもよい。1つまたは複数の判定基準は、データPIコードが0のコード値に到達することを含んでもよい。
本開示のさらに別の例は、クロックデータリカバリを実行する装置である。この装置は一般に、条件が満たされたことを判定する手段と、この判定に基づいて、クロックの各サイクルごとにデータ位相補間器(PI)コードまたは交差PIコードのうちの少なくとも一方をステップ処理する手段と、データPIコードおよび交差PIコードの所定の状態を生成するために、1つまたは複数の判定基準に基づいてこのステップ処理を停止する手段であって、この所定の状態が、データPIコードと交差PIコードの間のオフセットを含む、手段と、データストリームを受信する手段と、データPIコードと交差PIコードの間のオフセットに基づいて、このデータストリームに対してクロックデータリカバリを実行する手段とを含む。
以下の詳細な説明を参照して、上記その他の態様を理解することができる。
本開示の上記特徴を詳細に理解できるように、諸例を参照することによって、上で簡潔に概要説明された本開示のより具体的な説明を加えてもよく、この諸例のうちのいくつかが添付図面に示してある。しかし、本開示は他の等しく有効な例を認め得るものであるため、この添付図面は本開示の典型的な例を示すものに過ぎず、したがって、本開示の範囲を限定するものとみなすべきではないことに留意されたい。
本開示の一例による、プログラマブルデバイス向けの例示的なアーキテクチャを示すブロック図である。 本開示の一例による、位相補間器ベースの送受信機システムの例示的な受信機部分のブロック図である。 本開示の一例に従って、「初期ウォーク」において、データPIコードを一定に保持しながら、交差位相補間器(PI)コードを増分する様子を示す、例示的なタイミング図である。 本開示の一例に従って、「リセットウォーク」において、データPIコードと交差PIコードの両方をともに増分する様子を示す、例示的なタイミング図である。 本開示の一例による、クロックデータリカバリ用の例示的な動作の流れ図である。
本開示の実施例は、1つまたは複数の事前設定された判定基準が満たされるまで、クロックデータリカバリ(CDR)回路において、データ位相補間器(PI)コードまたは交差PIコードのうちの少なくとも一方を同期的にステップ処理するための技法および装置を提供する。このようなステップ処理は、CDR回路がリセットモードを抜け出た後、またはミッションモードでの非同期リセット手順の後など、特定の条件が満たされた後に実行することができる。データPIコードおよび/または交差PIコードを同期的にステップ処理することによって、PIベースの送受信機システムの受信機部分でのクロック分周器のタイミング違反を回避することができる。
例示的なプログラマブルデバイスアーキテクチャ
図1は、本開示の一例による、プログラマブルデバイス向けの例示的なアーキテクチャ100を示すブロック図である。このアーキテクチャ100は、たとえばフィールドプログラマブルゲートアレイ(FPGA)内に実装してもよい。図に示すように、アーキテクチャ100は、たとえば論理ブロックなど、いくつかの異なるタイプのプログラマブル回路を備える。たとえば、アーキテクチャ100は、マルチギガビット送受信機(MGT)101、構成可能な論理ブロック(CLB)102、ランダムアクセスメモリブロック(BRAM)103、入力/出力ブロック(IOB)104、構成およびクロック論理(CONFIG/CLOCKS)105、デジタル信号処理(DSP)ブロック106、専用のI/Oブロック107(たとえば、構成ポートおよびクロックポート)、ならびに、デジタルクロックマネージャ、アナログデジタル変換器(ADC)、システム監視論理など他のプログラマブル論理108を含む、多数の異なるプログラマブルタイルを含んでもよい。
FPGAによっては、各プログラマブルタイルは、プログラマブル相互接続要素(INT)111を含み、これは、それぞれの隣接タイルでの対応するINT111との間で、標準化された接続を有する。したがって、INT111をまとめて、例示したFPGAにおいてプログラマブル相互接続構造を実装する。各INT111はまた、図1の右端に含まれる例によって示すように、同じタイル内のプログラマブル論理素子との間での接続を含む。
たとえば、CLB102は、ユーザ論理に加えて単一のINT111を実装するようにプログラムできる、構成可能な論理素子(CLE)112を含んでもよい。BRAM103は、1つまたは複数のINT111に加えて、BRAM論理素子(BRL)113を含んでもよい。通常、タイル内に含まれるINT111の数は、タイルの幅に依存する。図示した例では。BRAMタイルは、幅が5つのCLBと同じであるが、他の数(たとえば4)を使用することもできる。DSPブロック106は、適切な数のINT111に加えて、DSP論理素子(DSPL)114を含んでもよい。IOB104は、たとえば、INT111の1つのインスタンスに加えて、I/O論理素子(IOL)115の2つのインスタンスを含んでもよい。当業者には明らかになるように、たとえば、IOL115に接続された実際のI/Oパッドは、通常、IOL115の領域に限定されない。
図1に示した例示的なアーキテクチャ100では、(図1に斜線で示した)ダイの中心付近の水平領域が、構成、クロック、および他の制御論理(CONFIG/CLOCKS105)用に使用される。この中心領域から延在する他の垂直領域109が、FPGAの幅全体にわたってクロックおよび構成信号を分配するのに使用されてもよい。
図1に示したアーキテクチャ100を利用するFPGAによっては、FPGAの大部分を構築する規則正しい横列構造を途中で変更する追加の論理ブロックを含む。この追加の論理ブロックは、プログラマブルブロックおよび/または専用回路でもよい。たとえば、PROC110として示したプロセッサブロックは、CLB102およびBRAM103のいくつかの横列にまたがっている。
PROC110は、FPGAのプログラマブル回路を実装するダイの一部分として製造される、ハードワイヤードプロセッサとして実装してもよい。PROC110は、複雑さにおいて個々のプロセッサ(たとえば、プログラムコードを実行できる単一コア)から、1つまたは複数のコア、モジュール、コプロセッサ、インターフェースなどを有する処理システム全体にまで及ぶ、様々な異なるプロセッサタイプおよび/またはシステムのいずれを表してもよい。
より複雑な構成では、たとえば、PROC110は、1つまたは複数のコア(たとえば、中央処理装置)、キャッシュメモリ、メモリコントローラ、ICのI/Oピン(たとえば、I/Oパッド)に直接結合するように、かつ/またはFPGAのプログラマブル回路に結合するように構成可能な、1方向および/または双方向のインターフェースを備えてもよい。「プログラマブル回路」という語句は、IC内のプログラマブル回路素子(たとえば、本明細書に記載の様々なプログラム可能または構成可能な回路ブロックまたはタイル)、ならびに、FPGAにロードされる構成データに従って様々な回路ブロック、タイル、および/または素子を選択的に結合する相互接続回路を指すことができる。たとえば、PROC110の外部にある、図1に示した各部分は、FPGAのプログラマブル回路の一部、またはプログラマブル回路そのものとみなしてもよい。
図1は、プログラマブル回路(たとえば、プログラマブルファブリック)を備えるFPGA、および処理システムを実装するのに使用できる、例示的なアーキテクチャ100を示すものである。たとえば、横列内の論理ブロックの数、横列の相対的な幅、横列の数および順序、各横列に含まれる論理ブロックのタイプ、論理ブロックの相対的なサイズ、ならびに図1の右側に含まれる相互接続/論理の実装形態は、例示的なものである。たとえば、実際のFPGAでは、CLB102が表示される場所には、通常、このCLBの隣接する横列が2つ以上含まれていて、ユーザ回路設計物の効率的な実装を容易にしようとする。しかし、隣接するCLBの横列の数は、FPGAの全体のサイズで変化することがある。さらに、FPGA内でのPROC110のサイズおよび/または位置は、例示するためのものに過ぎず、本開示の1つまたは複数の例を限定するものではない。
以下に述べるように、図1のプログラマブルデバイスでの1つまたは複数のMGT101は、高速デジタルデータストリームへのクロックデータリカバリ、ならびに位相ウォーキングを実行してもよい。
例示的なCDR位相ウォーキング
図2は、本開示の一例による、位相補間器ベースの送受信機システム用の受信機200のブロック図である。受信機200の閉ループ部分201は、1組の取込みフリップフロップ202、直並列変換器204、デジタルクロックデータリカバリ(CDR)回路206、1組の位相補間器(PI)208、および1組のクロック分周器210を備えてもよい。受信機200はまた、連続時間線形等化器(CTLE)212、加算器214、および適応回路216を備えてもよい。
高速デジタルデータストリーム218は、CTLE212が受信してもよく、このCTLEは、適応回路216からの入力220を使用して、データストリーム218に線形等化を実行する。等化済みデータ222は、適応回路216からの入力制御信号224で調整してもよく、加算器214が出力するデータ226は、受信機200の閉ループ部分201に入力してもよい。
1組の取込みフリップフロップ202を、1組のクロック分周器210(周波数分割器としても知られている)が生成するクロック228を取り込むことによってクロック制御して、加算器214が出力するデータ226を取り込んでもよい。1組の取込みフリップフロップ202によって出力される、取込み済みデータおよび交差、ならびに(1つまたは複数の)取込みクロック230を、直並列変換器204によって直並列変換してもよい。直並列変換器204は、直並列変換済みのデータおよび交差、ならびにクロック信号232、234を、適応回路216およびデジタルCDR回路206に出力してもよい。
CDR回路206は、直並列変換されたデータおよびクロック信号234での検出済みデータ遷移との位相関係を示すための、複数のバングバング位相検出器を備えてもよい。一例として本明細書においてデータ交差が使用されるが、エッジ検出、ゼロ交差など、他のタイプのデータ遷移を使用してもよいことを理解されたい。CDR回路206の出力は、1組のPI208において、2進化出力または他の符号化出力などの符号化出力236でもよい。符号化出力236は、データについてのデータPIコード、および交差についての交差PIコードを含んでもよい、いくつかの例では、各PIコードは、ラップアラウンドコードにおいて0〜127の範囲の7ビット値を有してもよい。この場合、各PIコードは、0〜360°の範囲の位相においてとり得る128の値のうちの1つを表す。
1組のPI208は、CDR回路206からの符号化出力236、およびフェーズロックループ(PLL)(図示せず)などのクロックモジュールからの複数の位相シフト済みクロック238を受信してもよい。1組のPI208は、符号化出力236およびクロック238に基づいて、データストリーム用の位相関係を選択してもよい。選択済みの位相240は、1組のPI208によって、1組のクロック分周器210に出力される電圧(差)によって表してもよい。
デジタルCDR回路206内のバングバング位相検出器は、各データビット(高速デジタルデータのアイダイアグラムでのそれぞれの「アイ」)について、データと交差情報の両方を使用する。バングバング位相検出方式を満足させるため、直並列変換器204から交差データがもたらされ、この交差データがCDR回路206で使用される。交差位相は、静的な合計オフセット(TO)をデータ位相に加えた位相である。この合計オフセットは、3つの部分から構成されてもよい。すなわち、(1)IO−フル/サブレートのクロック方式に応じて、ハーフUI(単位間隔)またはゼロUIになるよう定義された理想的オフセット。(2)DXD−「アイ」の不規則性に起因するデータと交差の間の調整。(3)CKOK−CDRの外部でのクロック信号較正からの調整。したがって、
TO=IO+DXD+CKOK
この合計オフセットは、リセットから抜け出した後に、CDR回路206に組み込んでもよい。TOは、CDR回路206がリセットモードを抜け出す前に初期化されるので、静的値として扱ってもよく、また「ロード」動作を介して全て同時にロードしてもよい。合計オフセットはまた、ミッションモードにおいて非同期リセット手順を介して強制排除してもよい。従来の非同期リセットによって、データPIコードと交差PIコードの両方を、強制的にゼロまでジャンプさせてもよい。両方の方法(「ロード」および「強制排除」)は、場合によっては、かなり大きなコード変化および交差PI位相シフトを引き起こすことがあり、それによって、1組のクロック分周器210における重大な経路タイミング違反を引き起こす可能性があり、これによって、PIベースの送受信機システムの障害につながる。
本開示の実施例は、所望のデータおよび交差のPIコード値まで急にジャンプするのではなく、このようなシナリオでデータPIコードと交差PIコードの間のオフセットを変更するための同期位相ウォークを使用する。前者のシナリオ(すなわち、リセットモードから抜け出る)での同期位相ウォークは、本明細書において「初期ウォーク」と呼ばれるが、後者のシナリオ(すなわち、ミッションモードでの非同期リセット手順)での位相ウォークは、本明細書において「リセットウォーク」と呼ばれる。いずれかのタイプの同期位相ウォークを用いる場合、単一クロックサイクルでの変化は、UIサイズの一部分(たとえば、1/16、1/32、1/64)に限定してもよく、位相は、事前設定された判定基準が満たされるまで、クロックサイクルごとにステップ処理してもよい。
図3は、本開示の一例による、例示的な初期ウォークを示すタイミング図300である。初期ウォークでは、データPIコード306と交差PIコード308の両方が、初期PIコード値(たとえば、0に等しいコード値)を有してもよい。310の時点で、(「Reset_b」とラベル付けされた)リセット信号304が有効になると(たとえば、論理ローから論理ハイに遷移すると)、CDR回路206は、データPIコード306が一定に保持されている間、受信機200用の基準クロック302(「Clk」とラベル付けされている)のサイクルごとに、交差PIコード308をステップ処理してもよい。事前設定されたTOに到達するまで、交差PIコード308をクロックサイクルごとにステップ処理してもよい。図3の例では、IO=32、DXD=1、およびCKOK=0であり、TO=33になる。従来のCDR回路と同様に事前設定されたTOまで直接ジャンプするのではなく、クロック302と同期して交差PIコード308をステップ処理することによって、312の時点で、事前設定されたTOに交差PIコード308が構築される。他の例では、交差PIコード308を一定に保持しながら、データPIコード306を同期的にステップ処理してもよい。交差PIコード308(またはデータPIコード306)は、クロックサイクルごとに1つのPIコード値分だけステップ処理されるが、CDR回路206は、いくつかの例では、交差PIコード(またはデータPIコード)を、2つ以上のPIコード値分だけステップ処理してもよい。PIコード306と308の間の合計オフセットが構築された後、CDR回路206は、後に314のある時点で、(たとえば、バングバング位相検出に基づいてPIコードを調整することによって)その適応を開始してもよい。
いくつかの例では、初期ウォークは、1組のPI208の連続性に起因して、事前設定されたTOに、より迅速に到達するどんな方向に進んでもよい(すなわち、より早く準備するためにより短い経路をとってもよい)。図3の例では、CDR回路206は、基準クロック302のサイクルごとに、交差PIコード308を増分している。他の例では、代わりに、交差PIコード308(またはデータPIコード306)を減分してもよい。この場合、リセットが解除されると、交差PIコード308は0から始まり、第1のサイクルで127に進み、次いで第2のサイクルで126に進むなど、交差PIコードが所定のTOに到達するまでこのプロセスを続ける。このウォーキング方式の間ずっと、データPIコード306は0にとどまる。
図4は、本開示の一例による、例示的なリセットウォークを示す例示的なタイミング図400である。リセットウォークでは、データPIコード306と交差PIコード308の両方が、開始PIコード値(たとえば、それぞれ82および115)を有してもよく、その間に、動作中のCDR回路206によって決定される特定のオフセットが存在する。(たとえば、非同期リセットに起因して)410の時点で、(「Walk_En」とラベル付けされた)イネーブル信号がトリガされると、CDR回路206は、基準クロック302のサイクルごとに、データPIコード306と交差PIコード308をともにステップ処理し、その結果、TOが変化しないままになる。いくつかの例では、412の時点において、データPIコード306が、事前設定されたコード値(たとえば、0のコード値)に到達するまで、PIコード306、308をクロックサイクルごとにステップ処理してもよい。同期ステップ処理によって特定のPIコードの事前設定されたコード値に到達した後、CDR回路206は、CDR回路206がその標準の適応の実行に戻る前にリセットが解除されるまで変化しないままでもよい。
ミッションモードでのリセット動作は時間の影響を受けないので、リセットウォークは、双方向で動作できる必要はない。すなわち、リセットウォークは、減分(または増分)が、特定のPIコードの事前設定されたコード値に、より速く到達することになるかどうかにかかわらず、所定の方向に従って、PIコード306と308を両方とも増分(または減分)させることを含んでもよい。
いくつかの例によれば、リセットウォークを使用する必要はない。むしろ、初期ウォークは、以下の両方のシナリオ、すなわち(1)CDR回路206がリセットを抜け出る第1の時点、および(2)非同期リセットの後で実行してもよい。
前述の通り同期位相ウォーキングを実行することにより、PIコードが突然著しく変化することは回避される。したがって、1組のPI208によって出力された選択済みの位相240は、突然シフトしてはならず、場合によっては、1組のクロック分周器210においてタイミング違反を引き起こしてはならない。
クロックデータリカバリを実行するための例示的な動作
図5は、本開示の一例による、クロックデータリカバリを実行するための例示的な動作500の流れ図である。動作500は、たとえば、高速デジタルデータ信号のクロックデータリカバリ用のCDR回路を有する装置(たとえば、図2の受信機200)によって実行してもよい。1つの例示的な装置は、1つまたは複数のMGT101を有する、図1のアーキテクチャ100を実装するFPGAなど、PIベースの送受信機システムを有するプログラマブルICである。
動作500は、ブロック502で開始してもよく、条件を満たしたことをこの装置が判定する。ブロック502での判定に基づいて、ブロック504において、装置(たとえば、装置のCDR回路)は、クロックの各サイクルごとに、データPIコードまたは交差PIコードのうちの少なくとも一方をステップ処理してもよい。ブロック506において、装置は、データPIコードおよび交差PIコードの所定の状態を生成するために、1つまたは複数の判定基準に基づいてステップ処理を停止してもよい。この所定の状態は、データPIコードと交差PIコードの間のオフセットを含んでもよい。たとえば、所定の状態は、データPIコードが0のコード値を有しており、交差PIコードが、このオフセット(たとえば、公称オフセット)での事前設定値に等しいコード値を有していることを含んでもよい。
いくつかの例では、装置(たとえば、CDR回路)は、所定の状態から開始して、データPIコードと交差PIコードの間のオフセットを調整してもよい。ブロック508において、装置は、データストリーム(たとえば、高速デジタルデータストリーム)を受信してもよい。ブロック510において、装置は、データPIコードと交差PIコードの間の(調整済み)オフセットに基づいて、このデータストリームに対してクロックデータリカバリを実行してもよい。
いくつかの例によれば、ブロック504でのステップ処理は、クロックの各サイクルごとにデータPIコードまたは交差PIコードのうちの少なくとも一方を単一コード値分だけ増分すること(または減分すること)を含む。
いくつかの例によれば、この条件は、リセットモードからCDR回路が初めて抜け出ることを含む。この場合、ブロック504でのステップ処理は、データPIコードを一定に(たとえば、0のコード値に)保持することと、このデータPIコードが保持されている間に、交差PIコードをステップ処理することとを伴ってもよい。いくつかの例では、動作500はさらに、データPIコードおよび交差PIコードを、ステップ処理の前に0のコード値になるよう設定することを含む。いくつかの例では、1つまたは複数の判定基準は、交差PIコードが、所定の状態での事前設定値に等しいコード値に到達することを含む。いくつかの例では、ブロック504でのステップ処理は、いずれの方向が事前設定値に、より速く到達するかに応じて、交差PIコードを増分または減分することを含む。
いくつかの例によれば、この条件は、非同期リセット動作を含む。いくつかの例では、ブロック504でのステップ処理は、データPIコードと交差PIコードを、データPIコードと交差PIコードの間に維持されたオフセットとともにステップ処理することを含んでもよい。この場合、1つまたは複数の判定基準は、データPIコードが特定のコード値(たとえば、0のコード値)に到達することを含んでもよい。
いくつかの例によれば、ブロック504でのステップ処理は、ブロック510で実行する前に(または、CDR回路でオフセットを調整する前に)、クロックの単一サイクルにおいて、データPIコードまたは交差PIコードのうちの少なくとも一方が、データPIコードおよび交差PIコードの所定の状態にジャンプするのを防止してもよい。
いくつかの例によれば、この装置は、データストリームに基づいて(所定の状態から開始して)、データPIコードと交差PIコードの間のオフセットを調整することと、データPIコードと交差PIコードの間の調整済みオフセットを使用して、このデータストリームに対してクロックデータリカバリを実行することとによって、ブロック510においてクロックデータリカバリを実行してもよい。
本明細書では(添付の特許請求の範囲を含め)、「少なくとも1つの」項目リストを指す語句は、単一の部材を含め、こうした項目の任意の組合せを指す。一例として、「少なくとも1つのx、y、およびz」は、x、y、z、x−y、x−z、y−z、x−y−z、ならびにその任意の組合せ(たとえば、x−y−yおよびx−x−y−z)を対象として含む。
これまで述べてきたことは、本開示の例を対象としているが、本開示のさらなる他の例を、本開示の基本的な範囲から逸脱することなく考案してもよく、本開示の範囲は添付の特許請求の範囲によって決定される。

Claims (15)

  1. 受信機においてクロックデータリカバリを実行する方法であって、
    リセット条件の発生を検出することと、
    前記リセット条件の発生に応答して、クロックデータリカバリ(CDR)回路において、クロックの各サイクルについてデータ位相補間器(PI)コードまたは交差PIコードのうちの少なくとも一方を増分または減分することによるステップ処理することであって、前記データPIコードは前記受信機における取込みフリップフロップによるデータサンプリングに対応し、前記交差PIコードは前記取込みフリップフロップによる交差サンプリングに対応する、ステップ処理することと、
    前記データPIコードおよび前記交差PIコードの所定の状態を生成するために、前記データPIコードまたは前記交差PIコードの1つまたは複数の判定基準に基づいて前記ステップ処理を停止することであって、前記所定の状態が、前記データPIコードと前記交差PIコードの間のオフセットを含む、停止することと、
    データストリームを受信することと、
    前記データPIコードと前記交差PIコードの間の前記オフセットに基づいて、前記データストリームに対して前記クロックデータリカバリを実行することと
    を含む、方法。
  2. 前記ステップ処理することが、前記クロックの各サイクルごとに前記データPIコードまたは前記交差PIコードのうちの少なくとも一方を単一コード値分だけ増分することを含む、請求項1に記載の方法。
  3. 前記リセット条件が、リセットモードから前記CDR回路が初めて抜け出ることを含み、前記ステップ処理することが、
    前記データPIコードを0のコード値に保持することと、
    前記データPIコードが保持されている間に、前記交差PIコードをステップ処理することと
    を含む、請求項1に記載の方法。
  4. 前記データPIコードおよび前記交差PIコードを、前記ステップ処理することの前に、前記0のコード値になるよう設定することをさらに含む、請求項3に記載の方法。
  5. 前記1つまたは複数の判定基準は、前記交差PIコードが、前記所定の状態での事前設定値に等しいコード値に到達することを含む、請求項3に記載の方法。
  6. 前記ステップ処理することが、いずれの方向が前記事前設定値に、より速く到達するかに応じて、前記交差PIコードを増分または減分することを含む、請求項5に記載の方法。
  7. 前記リセット条件が、非同期リセット動作を含み、前記ステップ処理することが、前記データPIコードと前記交差PIコードを、前記データPIコードと前記交差PIコードの間に維持された前記オフセットとともにステップ処理することを含む、請求項1に記載の方法。
  8. 前記1つまたは複数の判定基準は、前記データPIコードが、0のコード値に到達することを含む、請求項7に記載の方法。
  9. 前記実行することが、
    前記データストリームに基づい前記所定の状態から、前記データPIコードと前記交差PIコードの間の前記オフセットを調整することと、
    前記データPIコードと前記交差PIコードの間の調整済み前記オフセットを使用して、前記データストリームに対して前記クロックデータリカバリを実行することと
    を含む、請求項1に記載の方法。
  10. 前記所定の状態は、前記データPIコードが0のコード値を有しており、前記交差PIコードが、前記オフセットでの事前設定値に等しいコード値を有していることを含む、請求項1に記載の方法。
  11. 少なくとも1つの位相補間器(PI)と、
    前記少なくとも1つのPIに接続されたクロックデータリカバリ(CDR)回路とを備える、受信機のためのクロックデータリカバリシステムであって、前記CDR回路が、1つまたは複数の位相検出器を備え、
    リセット条件の発生を検出することと、
    前記リセット条件の発生に応答して、システムクロックの各サイクルについてデータPIコードまたは交差PIコードのうちの少なくとも一方を増分または減分することによるステップ処理することであって、前記データPIコードは前記受信機における取込みフリップフロップによるデータサンプリングに対応し、前記交差PIコードは前記取込みフリップフロップによる交差サンプリングに対応する、ステップ処理することと、
    前記データPIコードおよび前記交差PIコードの所定の状態を生成するために、前記データPIコードまたは前記交差PIコードの1つまたは複数の判定基準に基づいて前記ステップ処理を停止することであって、前記所定の状態が、前記データPIコードと前記交差PIコードの間のオフセットを含む、停止することと、
    前記データPIコードおよび前記交差PIコードを前記少なくとも1つのPIに出力することと
    を行うように構成される、クロックデータリカバリシステム。
  12. 前記CDR回路が、前記システムクロックの各サイクルごとに前記データPIコードまたは前記交差PIコードのうちの前記少なくとも一方を単一コード値分だけ増分することによって、前記データPIコードまたは前記交差PIコードのうちの前記少なくとも一方をステップ処理するように構成される、請求項11に記載のシステム。
  13. 前記リセット条件が、リセットモードから前記CDR回路が初めて抜け出ることを含み、前記CDR回路が、前記データPIコードを0のコード値に保持しながら前記交差PIコードをステップ処理することによって、前記データPIコードまたは前記交差PIコードのうちの少なくとも一方をステップ処理するように構成される、請求項11に記載のシステム。
  14. 前記CDR回路はさらに、前記交差PIコードがステップ処理される前に、前記データPIコードおよび前記交差PIコードを、前記0のコード値を有するように設定するように構成される、請求項13に記載のシステム。
  15. 前記リセット条件が、非同期リセット動作を含み、
    前記CDR回路が、前記データPIコードと前記交差PIコードを、前記データPIコードと前記交差PIコードの間に維持された前記オフセットとともにステップ処理することによって、前記データPIコードまたは前記交差PIコードのうちの少なくとも一方をステップ処理するように構成され、
    前記1つまたは複数の判定基準は、前記データPIコードが0のコード値に到達することを含む、請求項11に記載のシステム。
JP2018500367A 2015-07-09 2016-04-08 位相補間器ベースの送受信機システムにおけるクロックデータリカバリ(cdr)の位相ウォーク方式 Active JP6598969B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/795,169 US9356775B1 (en) 2015-07-09 2015-07-09 Clock data recovery (CDR) phase walk scheme in a phase-interpolater-based transceiver system
US14/795,169 2015-07-09
PCT/US2016/026681 WO2017007522A1 (en) 2015-07-09 2016-04-08 Clock data recovery (cdr) phase walk scheme in a phase-interpolater-based transceiver system

Publications (2)

Publication Number Publication Date
JP2018521586A JP2018521586A (ja) 2018-08-02
JP6598969B2 true JP6598969B2 (ja) 2019-10-30

Family

ID=55809219

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018500367A Active JP6598969B2 (ja) 2015-07-09 2016-04-08 位相補間器ベースの送受信機システムにおけるクロックデータリカバリ(cdr)の位相ウォーク方式

Country Status (6)

Country Link
US (1) US9356775B1 (ja)
EP (1) EP3320644B1 (ja)
JP (1) JP6598969B2 (ja)
KR (1) KR102410488B1 (ja)
CN (1) CN107925560B (ja)
WO (1) WO2017007522A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10419203B1 (en) 2017-02-27 2019-09-17 Xilinx, Inc. Self-measurement of phase interpolator non-linearity in a transceiver
US10038545B1 (en) 2017-07-26 2018-07-31 Xilinx, Inc. Systems and methods for clock and data recovery
US10256968B1 (en) 2017-07-26 2019-04-09 Xilinx, Inc. Systems and methods for clock and data recovery
US10404445B1 (en) 2018-07-03 2019-09-03 Xilinx, Inc. Data receiver circuit and method of receiving data
US10498523B1 (en) * 2018-10-25 2019-12-03 Diodes Incorporated Multipath clock and data recovery
CN112241384B (zh) * 2019-07-19 2022-07-01 上海复旦微电子集团股份有限公司 一种通用的高速串行差分信号分路电路及方法
US10791009B1 (en) 2019-11-13 2020-09-29 Xilinx, Inc. Continuous time linear equalization (CTLE) adaptation algorithm enabling baud-rate clock data recovery(CDR) locked to center of eye
US11245554B1 (en) 2020-06-17 2022-02-08 Xilinx, Inc. Frequency detector for clock data recovery
US10985764B1 (en) 2020-07-01 2021-04-20 Xilinx, Inc. Phase detector offset to resolve CDR false lock

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3636657B2 (ja) * 2000-12-21 2005-04-06 Necエレクトロニクス株式会社 クロックアンドデータリカバリ回路とそのクロック制御方法
CN1272907C (zh) * 2001-07-27 2006-08-30 国际商业机器公司 具有外部早/晚输入的时钟数据恢复系统
US7602869B2 (en) * 2005-07-29 2009-10-13 International Business Machines Corporation Methods and apparatus for clock synchronization and data recovery in a receiver
KR100795724B1 (ko) * 2005-08-24 2008-01-17 삼성전자주식회사 아이 사이즈 측정 회로, 데이터 통신 시스템의 수신기 및아이 사이즈 측정 방법
KR101300659B1 (ko) * 2007-01-19 2013-08-30 삼성전자주식회사 등화기를 갖는 수신기 및 그것의 등화방법
DE102009004565B4 (de) * 2009-01-14 2015-04-02 Texas Instruments Deutschland Gmbh Vorrichtung und Verfahren zum Zwischenspeichern von Daten zwischen Speichercontroller und DRAM
US8058916B2 (en) * 2010-04-15 2011-11-15 Xilinx, Inc. Lockstep synchronization and maintenance
US8253451B1 (en) 2010-06-16 2012-08-28 Xilinx, Inc. Clock data recovery using phase accumulation over a time period defined by a number of cycles of a clock signal
US8184029B1 (en) 2010-06-16 2012-05-22 Xilinx, Inc. Phase interpolator
US8666013B1 (en) 2011-03-22 2014-03-04 Altera Corporation Techniques for clock data recovery
CN103828287B (zh) * 2011-07-25 2016-08-17 西姆特科加拿大有限公司 用于中继器电路的低时延数字抖动终止
US20130216003A1 (en) * 2012-02-16 2013-08-22 Qualcomm Incorporated RESETTABLE VOLTAGE CONTROLLED OSCILLATORS (VCOs) FOR CLOCK AND DATA RECOVERY (CDR) CIRCUITS, AND RELATED SYSTEMS AND METHODS
US9077349B2 (en) 2012-02-21 2015-07-07 Qualcomm Incorporated Automatic detection and compensation of frequency offset in point-to-point communication
US8824616B1 (en) 2012-03-30 2014-09-02 Inphi Corporation CMOS interpolator for a serializer/deserializer communication application
US8923464B2 (en) * 2012-11-16 2014-12-30 Qualcomm Incorporated Methods and apparatus for enabling distributed frequency synchronization
US9137763B2 (en) * 2012-11-16 2015-09-15 Qualcomm Incorporated Methods and apparatus for enabling distributed frequency synchronization
US9444442B2 (en) * 2013-03-06 2016-09-13 Rambus Inc. Open-loop correction of duty-cycle error and quadrature phase error
US8860467B2 (en) * 2013-03-15 2014-10-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Biased bang-bang phase detector for clock and data recovery
US20140334584A1 (en) * 2013-05-13 2014-11-13 Ismail Lakkis Systems and methods for tracking a received data signal in a clock and data recovery circuit
US9762381B2 (en) * 2013-07-03 2017-09-12 Nvidia Corporation Adaptation of crossing DFE tap weight
US8923463B1 (en) 2013-08-29 2014-12-30 Xilinx, Inc. Offset calibration and adaptive channel data sample positioning
US8934594B1 (en) * 2013-10-14 2015-01-13 Xilinx, Inc. Sampling position tuning

Also Published As

Publication number Publication date
KR20180028990A (ko) 2018-03-19
EP3320644B1 (en) 2019-08-07
US9356775B1 (en) 2016-05-31
CN107925560B (zh) 2021-01-26
JP2018521586A (ja) 2018-08-02
WO2017007522A1 (en) 2017-01-12
CN107925560A (zh) 2018-04-17
EP3320644A1 (en) 2018-05-16
KR102410488B1 (ko) 2022-06-16

Similar Documents

Publication Publication Date Title
JP6598969B2 (ja) 位相補間器ベースの送受信機システムにおけるクロックデータリカバリ(cdr)の位相ウォーク方式
EP3221995B1 (en) Fast locking cdr for burst mode
KR102371549B1 (ko) 송신기들을 위한 레인-레인-디-스큐
JP6561195B2 (ja) クロック回復回路
KR102002462B1 (ko) 지연 고정 루프 회로 및 그 지연 고정 방법
JP6250188B2 (ja) Serdes受信機オーバーサンプリングレート
US20130271193A1 (en) Circuits and methods to guarantee lock in delay locked loops and avoid harmonic locking
US8654823B1 (en) Low latency transmitter path data link interface
KR101994243B1 (ko) 클럭 생성 회로 및 이를 포함하는 반도체 장치
CN110247656B (zh) 用于锁相环的损坏的时钟检测电路
US9564907B2 (en) Multi-channel delay locked loop
TWI605685B (zh) 延遲控制電路與包括該延遲控制電路之時脈產生電路
US8120407B1 (en) Techniques for varying phase shifts in periodic signals
CN208353312U (zh) 时钟同步电路和异步数据同步电路
US8860475B1 (en) Techniques for adjusting phases of clock signals
US6933758B2 (en) Synchronous mirror delay circuit with adjustable locking range
US8513994B2 (en) State machine for deskew delay locked loop
US7092471B2 (en) Digital phase synchronization circuit
US11545987B1 (en) Traversing a variable delay line in a deterministic number of clock cycles
US9379720B1 (en) Clock recovery circuit
US9762248B1 (en) Pre-synchronizer
KR102516881B1 (ko) 클럭 위상 정렬을 위한 방법 및 장치
KR20110078703A (ko) 지연 동기 루프 회로

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A529

Effective date: 20180301

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190404

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190404

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190422

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190903

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190917

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191001

R150 Certificate of patent or registration of utility model

Ref document number: 6598969

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250