JP2019519029A - 非同期フィードバックトレーニング - Google Patents

非同期フィードバックトレーニング Download PDF

Info

Publication number
JP2019519029A
JP2019519029A JP2018556344A JP2018556344A JP2019519029A JP 2019519029 A JP2019519029 A JP 2019519029A JP 2018556344 A JP2018556344 A JP 2018556344A JP 2018556344 A JP2018556344 A JP 2018556344A JP 2019519029 A JP2019519029 A JP 2019519029A
Authority
JP
Japan
Prior art keywords
lane
training sequence
transmitter
test pattern
receiver
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.)
Granted
Application number
JP2018556344A
Other languages
English (en)
Other versions
JP6725692B2 (ja
JP2019519029A5 (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.)
ATI Technologies ULC
Advanced Micro Devices Inc
Original Assignee
ATI Technologies ULC
Advanced Micro Devices 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 ATI Technologies ULC, Advanced Micro Devices Inc filed Critical ATI Technologies ULC
Publication of JP2019519029A publication Critical patent/JP2019519029A/ja
Publication of JP2019519029A5 publication Critical patent/JP2019519029A5/ja
Application granted granted Critical
Publication of JP6725692B2 publication Critical patent/JP6725692B2/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
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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/10Arrangements for initial synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0072Error control for data other than payload data, e.g. control data
    • H04L1/0073Special arrangements for feedback channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/24Testing correct operation
    • H04L1/242Testing correct operation by comparing a transmitted test signal with a locally generated replica
    • H04L1/244Testing correct operation by comparing a transmitted test signal with a locally generated replica test sequence generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/14Channel dividing arrangements, i.e. in which a single bit stream is divided between several baseband channels and reassembled at the receiver
    • 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/0033Correction by delay
    • H04L7/0037Delay of clock signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5681Buffer or queue management
    • 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
    • H04L7/043Pseudo-noise [PN] codes variable during transmission

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Quality & Reliability (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Communication Control (AREA)
  • Memory System (AREA)

Abstract

非同期フィードバックトレーニングシーケンスを実行するための、システム、装置及び方法が説明される。送信機は、複数のデータ回線を含む通信チャネルを介して、トレーニングシーケンス指示を受信機に送信する。トレーニングシーケンス指示は、トレーニングシーケンスの開始を示すビットシーケンスを含む。トレーニングシーケンス指示は、長さが「N」クロックサイクルのスーパーサイクルの中間点で0から1、その後に所定数の1が続く遷移を含む。トレーニングシーケンス指示の後にテストパターンが続く。テストパターンの開始はスーパーサイクルの終わりに生じる。受信機は、受信したテストパターンにおいてエラーがあるかどうかを判別した後に、エラーが検出されたかどうかを示すフィードバックを送信機に送信する。送信機は、フィードバックを受信したことに応じて、1つ以上のデータ回線の遅延設定を変更する。【選択図】図6

Description

本明細書に記載される実施形態は、データ通信に関し、より詳細には、ビットシリアルデータリンクのトレーニングを実行することに関する。
集積回路のデータスループットは、アプリケーション需要及びデータ消費が増加するにつれて増加し続けている。例えば、マイクロプロセッサ速度の改善率は、メモリ速度の改善率を超え続けている。データの送信レートが増加することで、データを送受信するために使用される回路のタイミング要求が増加する。コンピューティングデバイス及びコンピューティングシステムにおいて利用される多くの回路では、これらの回路内でグローバルクロックを使用してデータが転送される。例えば、クロックの立ち上がりエッジは、フリップフロップに入るデータをロードし、その後、データを、フリップフロップを通過させるか又はフリップフロップから処理することができる。いくつかのシナリオでは、単一のクロックを使用して、複数のデータレーンのデータバスをラッチすることができる。しかしながら、これは、クロックの遷移をデータバス全体に使用する必要があるのでデータバスの速度が制限されるが、一部のデータビットは、他のデータビットと比較してバスを通るのに時間がかかる場合がある。データレーン間のばらつきが大きすぎる場合、データバス全体において正確にクロックするためにクロックエッジを配置する場所が存在しない場合がある。
ビットシリアルデータリンクのトレーニングを実行するためのシステム、装置及び方法について検討する。
一実施形態では、送信機と受信機との間の遅延設定をテストするために、非同期フィードバックトレーニング(AFT)シーケンスが実行される。送信機は、1つ以上のデータレーンの通信チャネルを介して受信機に接続されている。送信機及び受信機の各々は、スーパーサイクルをカウントするためのカウンタを含み、単一のスーパーサイクルは、より高い周波数のシステムクロックの「N」クロックサイクルに対応するものとして定義され、「N」は1より大きい正の整数である。一実施形態では、スーパーサイクルの長さは、8システムクロックサイクルである。他の実施形態では、スーパーサイクルは、他の数の長さのクロックサイクルである。
AFTシーケンスを行うために、送信機は、チャネルの1つ以上のレーンで、トレーニングシーケンス指示の開始(又は、「トレーニングシーケンス指示」)を受信機に送信するように構成されている。様々な実施形態では、トレーニングシーケンス指示は、第1値を有するビットから、第1値とは異なる第2値を有するビットに続いて、第2値を有する所定数のビットが続くビット遷移で構成されている。例えば、一実施形態では、トレーニングシーケンス指示は、所定の長さを有しており、一連の0から始まり、後に一連の1が続く。一実施形態では、一連の0から一連の1への遷移は、スーパーサイクルの中間点で生じる。
送信機がトレーニングシーケンス指示を受信機に送った後、送信機は、テストパターンを受信機に送る。トレーニングシーケンス指示からテストパターンへの遷移は、スーパーサイクル境界で生じる。一実施形態では、テストパターンは、疑似ランダムバイナリシーケンス(PRBS)である。受信機は、各スーパーサイクルの終わりにチャネルの1つ以上のデータレーンの状態をサンプリングするように構成されている。受信機は、連続するスーパーサイクルの終わりに、2つのテスト間において各レーンで遷移が生じるかどうかを判別する。2つの連続するテスト間において所定のレーンで遷移が生じたと受信機が判別した場合、受信機は、遷移が検出された後に、所定数のスーパーサイクルをテストパターンとしてキャプチャする。次に、受信機は、受信したテストパターンにおいてエラーが検出されたかどうかを判別する。
送信機が所定のデータレーンで受信機にテストパターンを送った後、送信機は、所定のデータレーンに接続された出力バッファを無効にする。次に、送信機は、送信したテストパターンに関する受信機からのフィードバックを待機する。受信機は、テストパターンにおいてエラーが検出されたかどうかを判別した後、キャプチャされたテストパターンにおいてエラーが検出されたかどうかを示すフィードバックを送信機に送る。一の実施形態では、受信機は、エラー無しにデータを受信した場合、第1極性(例えば、高電圧)で回線を駆動し、1つ以上のエラーと共にデータを受信した場合、第2極性(例えば、低電圧)で回線を駆動する。次に、送信機は、テストパターンの送信を終了した後で所定のデータレーンの状態をキャプチャする前に、所定数のクロックサイクルを待機する。次いで、送信機は、キャプチャされた所定のデータレーンの状態を利用して、所定のデータレーンの遅延設定をどのように調整するかを決定する。
一実施形態では、送信機は、チャネルの各データレーンに対して異なる遅延設定で複数のAFTシーケンスを実行する。これらのAFTシーケンスに対する受信機からのフィードバックは、データ有効期間(又は、「データアイ」)の位置を判別するために送信機によって使用される。一連のAFTシーケンスを実行している間、送信機は、受信機によって示される、エラー結果からエラーのない結果への遷移を識別して、所定のデータレーンのデータアイの開始を判別する。次に、送信機は、エラーのない結果からエラー結果への遷移を識別して、データアイの終了を判別する。次いで、送信機は、識別されたデータアイの開始及び終了の平均を取得し、データアイの中央のサンプリングポイントを決定する。次に、送信機は、所定のデータレーンの遅延設定を、決定したサンプリングポイントに調整する。
これらの特徴及び利点と、他の特徴及び利点とは、本明細書に提示される以下の詳細な説明を考慮して、当業者に明らかとなるであろう。
方法及びメカニズムの上記の利点と、さらなる利点とは、添付の図面と併せて以下の説明を参照することによって、より良く理解することができる。
コンピューティングシステムの送信機及び受信機の一実施形態のブロック図である。 非同期フィードバックトレーニングシーケンスの一実施形態のタイミング図である。 非同期フィードバックトレーニングスーパーサイクルカウンタの一実施形態のタイミング図である。 通信チャネル及び送信機の一実施形態のブロック図である。 データアイの一実施形態を示す図である。 チャネルの第1データレーンに対して非同期テストシーケンスを実行する方法の一実施形態を示す一般化されたフロー図である。 チャネルの第1データレーンに対して非同期テストシーケンスを実行する方法の他の実施形態を示す一般化されたフロー図である。
下記の説明では、本明細書に提示される方法及びメカニズムを十分に理解してもらうために、多数の具体的な詳細が示されている。しかしながら、当業者であれば、これらの具体的な詳細無しに様々な実施形態を実施可能であることを認識すべきである。いくつかの例では、周知の構造、コンポーネント、信号、コンピュータプログラム命令及び技術は、本明細書で説明するアプローチを不明瞭にするのを避けるために詳細に示されていない。説明を簡単且つ明瞭にするために、図面に示される要素が必ずしも一定の縮尺で描かれていないことを理解されたい。例えば、いくつかの要素の寸法は、他の要素に対して誇張されている。
図1を参照すると、コンピューティングシステム100の送信機105及び受信機110の一実施形態を示すブロック図が示されている。送信機105は、チャネル155を介して受信機110に接続されている。チャネル155は、実施形態に応じて、任意の数のデータレーンを含む。また、チャネル155は、クロックレーン及び/又は1つ以上の他のレーンを含む。コンピューティングシステム100は、クロック145と、クロック150と、図面を不明瞭にするのを避けるために示されていない1つ以上の他のコンポーネントと、を含む。例えば、コンピューティングシステム100は、1つ以上の処理ユニット(例えば、プロセッサ、プロセッサコア、プログラマブルロジックデバイス、特定用途向け集積回路等)、1つ以上のメモリデバイス、及び/又は、他のコンポーネントを含む。1つ以上の処理ユニットは、実施形態に応じて、命令を実行し、及び/又は、1つ以上のタイプの計算(例えば、浮動小数点、整数、メモリ、I/O)を実行するように構成されている。様々な実施形態では、コンピューティングシステム100のコンポーネントは、1つ以上の通信バスによって相互接続されている。一実施形態では、送信機105及び受信機110は、プロセッサのメモリパスに存在する。様々な実施形態において、プロセッサに接続されたメモリは、ダブルデータレート同期ダイナミックランダムアクセスメモリ(DDR SDRAM)である。他の実施形態では、メモリは、他のタイプのメモリデバイスを使用して実装される。
送信機105は、チャネル155に接続されたバッファ115を含む。一実施形態では、バッファ115は、非同期フィードバックトレーニングシーケンスの状態に関して、送信機105が受信機110からのフィードバックを受信するのを待機している場合に、チャネル155の出力を駆動するか、高インピーダンス状態を生成するためのトライステートバッファである。また、送信機105は、非同期フィードバックトレーニングシーケンスを生成し、チャネル155のレーンの遅延設定を制御し、及び/又は、他の機能を実行する制御ロジック135も含む。さらに、送信機105は、スーパーサイクルをカウントするためのカウンタ125を含む。様々な実施形態では、スーパーサイクルは、長さが「N」クロックサイクルであり、「N」は正の整数である。例えば、一実施形態では、スーパーサイクルは8クロックサイクルの長さであり、他の実施形態では、スーパーサイクルは数クロックサイクルである。一実施形態では、クロック145は、カウンタ125をクロックするためのクロック信号を提供する。
受信機110は、チャネル155に接続するためのバッファ120を含む。一実施形態では、バッファ120は、フィードバック結果をチャネル155に運ぶ、又は、受信機110が送信機105からデータを受信している場合に高インピーダンス状態を生成するためのトライステートバッファである。また、受信機110は、チャネル155上のトレーニングシーケンス指示を検出し、受信したテストパターンを期待値と比較し、及び/又は、他の機能を実行する制御ロジック140も含む。さらに、受信機110は、スーパーサイクルをカウントするためのカウンタ130を含む。一実施形態では、クロック150は、カウンタ130をクロックするためのクロック信号を提供する。他の実施形態では、受信機110は、カウンタ130をクロックするためのクロック信号として、チャネル155で受信したクロック信号を使用する。
図示された実施形態では、送信機105は、チャネル155の1つ以上のデータレーンに亘って非同期フィードバックトレーニングシーケンスを開始するように構成されている。送信機105は、非同期フィードバックトレーニングシーケンスを開始するために、テストされる各レーンでトレーニングシーケンス指示を送信する。トレーニングシーケンス指示は、第1マルチビットシーケンスと、後に続く第2マルチビットシーケンスと、を含み、第1マルチビットシーケンスは、第2マルチビットシーケンスとは反対の極性を有する。例えば、一実施形態では、第1マルチビットシーケンスは0のシーケンスであり、第2マルチビットシーケンスは1のシーケンスである。第1マルチビットシーケンスから第2マルチビットシーケンスへの遷移は、スーパーサイクルの中間点で生じる。
受信機110は、スーパーサイクル境界上で各データレーンの状態をテストするように構成されている。受信機110は、連続するテストでの電圧遷移を検出することによって、及び、第2マルチビットシーケンスが規定のビット数の間続くことを検出することによって、トレーニングシーケンス指示を検出する。送信機105は、トレーニングシーケンス指示後にテストパターンを送信し、テストパターンは、スーパーサイクル境界で開始する。受信機110は、トレーニングシーケンス指示を検出した後に、送信機105によって送信されたテストパターンをキャプチャする。次に、受信機110は、キャプチャされたテストパターンにエラーがあるかチェックする。
送信機105は、テストパターンを送信した後にバッファ115を無効にし、キャプチャされたテストパターンに関するフィードバックを受信機110が送信するのを待機する。受信機110は、バッファ120を有効にし、キャプチャされたテストパターンにおいてエラーが検出されたかどうかを判別した後に、「エラー表示」と呼ばれる場合があるフィードバックを送信機105に送信する。一実施形態では、フィードバックは、エラーが検出されたかどうかを示す単一のビットである。受信機110は、チャネル155の所定のデータレーンでフィードバックを送信機105に送る。送信機105は、フィードバックをキャプチャし、そのフィードバックを(他の遅延設定を用いた他のテストからのフィードバックと共に)使用して、所定のデータレーンのデータアイを決定する。送信機105は、フィードバックをキャプチャした後に、別のテストを実行するかどうか、又は、通常のデータ演算に戻るかどうかを決定する。様々な実施形態及びシナリオでは、複数の非同期フィードバックトレーニングシーケンスが、チャネル155の複数のデータレーンで同時に実行される。
システム100は、送信機105及び受信機110を含む任意のタイプのコンピューティングシステム又はコンピューティングデバイスを表す。例えば、様々な実施形態では、システム100は、コンピュータ、サーバ、計算ノード、プロセッサ、処理デバイス、プログラマブル論理デバイス、メモリデバイス、プロセッシングインメモリ(PIM)ノード、モバイルデバイス、テレビ、娯楽システム若しくはデバイス、及び/又は、他のタイプのシステム若しくはデバイスを含むことができる。また、システム100は、送信機105及び受信機110に加えて、任意の数の他の送信機及び受信機を含む。
次に、図2を参照すると、非同期フィードバックトレーニングシーケンスの一実施形態のタイミング図200が示されている。図示された実施形態では、非同期フィードバックトレーニングシーケンスは、送信機(例えば、図1の送信機105)と受信機(例えば、図1の受信機110)との間で実行される。送信機は、スーパーサイクルをカウントするためのカウンタ202(TxSuperCycleCnt)を含み、受信機は、スーパーサイクルをカウントするためのカウンタ210(RxSuperCycleCnt)を含む。一実施形態では、スーパーサイクルは、8クロックサイクルの長さであり、カウンタは、モジュロ8カウンタである。他の実施形態では、スーパーサイクルは、8以外の数の長さのクロックサイクルである。図示された例では、送信機状態204(TxAFTState)は、スーパーサイクルの中間点で信号開始状態(信号開始)に遷移する。送信機は、送信機が信号開始状態に入ると、スーパーサイクルの中間点において開始する送信データレーン206(Txdata)でトレーニングシーケンス指示(インジケータ)を送信する。一実施形態では、トレーニングシーケンス指示は、2進数0から2進数1、その後に所定数の1が続く遷移である。
図示された例では、受信機は、インジケータ(「インジケータ?」と示されている)を検出するのを待機している受信機状態212(RxAFTState)で開始する。受信機は、インジケータを検出すると、待機パターン状態(WaitPattern)に遷移する。様々な実施形態では、受信機は、データレーン208(Rxdata)での0から1への遷移を検出し、後に所定数の1が続く遷移を検出することによって、インジケータを検出する。例えば、一実施形態では、受信機は、各スーパーサイクルの終了時に受信データレーン208の状態をチェックする。受信機が2つの連続するスーパーサイクルにおいて「0」から「1」へのデータレーン208での変化を検出した場合、受信機は、スーパーサイクル毎に受信したデータをモニタリングし続け、所定数の1を受信したかどうかを判別する間に、待機パターン状態に遷移する。図200に示すように、受信機は、スーパーサイクルカウント「i+3」の開始時に待機パターン状態に遷移する。
トレーニングシーケンス指示は、実施形態に応じて任意の長さを有しており、その長さは受信機に知られている。トレーニングシーケンス指示が送信機から受信機に送られた後、送信機は、テストパターンを受信機に送信する。一実施形態では、テストパターンは、疑似ランダムバイナリシーケンス(PRBS)である。一般的に言えば、PRBSは、ランダムバイナリシーケンスと同様の挙動を示す決定性(deterministic)バイナリシーケンスである。受信機は、テストパターンを受信し、受信したデータを期待値と比較することによって、受信したテストパターンにエラーがあるかどうかをチェックする。
送信機は、テストパターンを送信後、出力バッファを無効にする。一実施形態では、出力バッファは、送信機がテストパターンを受信機に送信した後に送信機によって高インピーダンス状態に切り替えられるトライステートバッファである。受信機は、フィードバックを準備する期間の後に、出力バッファをアクティブにし、フィードバックを送信機に送信する。一実施形態では、フィードバックは、受信したテストパターンにエラーがあるかどうかを示す。一実施形態では、フィードバックは、単一のビットである。他の実施形態では、フィードバックは、エラーの数を示す複数のビットを利用する。次に、送信機は、フィードバックを受信し、フィードバックを利用して、現在の遅延設定がデータアイの内側か外側かを判別する。送信機がフィードバックを受信した後に、送信機は、1つ以上の遅延設定を変更し、トレーニングが不完全であるとみなされる場合(例えば、エラーが示されている場合)、別のテストが実行される。或いは、トレーニングは、(例えば、エラーが示されていない場合に)完了したとみなされ、送信機は、通常のデータオペレーションモードに移行する。
次に、図3を参照すると、非同期フィードバックトレーニングに対応するタイミング図300の一実施形態が示されている。上述した、非同期フィードバックトレーニングは、送信機と受信機との間の通信を容易にするために、トレーニングシーケンスインジケータを使用することができる。一実施形態では、受信機は、テストパターンのチェックを開始するタイミングを決定するように構成されている。送信クロック302が開始すると、送信機及び受信機の両方は、「N」の整数倍のクロック境界を追跡する。ここで、「N」はプログラム可能レジスタに記憶され、「N」はスーパーサイクルにおけるクロックサイクル数を表す。送信機は、スーパーサイクル境界をカウントし、N/2のスーパーサイクル境界も追跡する。様々な実施形態では、受信機は、スーパーサイクル境界を単に追跡する。一実施形態では、送信機は、トレーニングシーケンス指示を送信する場合に、半分(N/2)のスーパーサイクル境界(すなわち、スーパーサイクルの中間点)から始まる1のストリングを送信する。スーパーサイクルの途中でこの指示を送信することによって、トレーニングシーケンス指示遷移が受信機でのスーパーサイクル境界内に完全に位置し、境界自体ではなくなることを確実にする。この想定により、受信機は、テストパターンのチェックを開始するタイミングを決定するために、トレーニングシーケンス指示を受信したときからプログラマブルな(M)個のスーパーサイクルをカウントすることができる。例えば、送信機は、M番目のスーパーサイクルの境界上でテストパターンを送信し始めるようにプログラミングされている。ここで、Mは、いくつかの実施形態においてもプログラム可能な整数である。他の実施形態では、Mは、プログラム可能ではない(例えば、Mはハードウェアに固定されている)。受信機は、同様に、トレーニングシーケンス指示の検出後にテストパターンがM個のスーパーサイクルを開始するのを知るように構成されている。
タイミング図300は、通信チャネル上の状態変化後にスーパーサイクルカウンタがどのように初期化されるかの一実施形態を示している。上述したように、送信機は、スーパーサイクルをカウントするためのスーパーサイクルカウンタ304を有する。送信クロック302のサイクルは、送信スーパーサイクルカウンタ304の上の行に示されている。一実施形態では、1つのスーパーサイクルは、送信クロック302の8クロックサイクルに対応する。このような実施形態では、カウンタは、モジュロ8カウンタである。他の実施形態では、スーパーサイクルは、異なる数の送信クロックサイクルに対応する。受信機は、スーパーサイクルをカウントするスーパーサイクルカウンタ308も含み、スーパーサイクルカウンタ308は、受信クロック306のサイクルの下に示されている。
送信機は、非同期フィードバックトレーニングテストを開始するために、トレーニングシーケンスインジケータ(インジケータ)を受信機に送信する。一実施形態では、トレーニングシーケンスインジケータは、0から1の後に所定数の1が続く遷移である。1のシーケンスの長さは、実施形態に従って変動してもよく、受信機は、トレーニングシーケンスインジケータを検出するために、シーケンスの長さを知っている。一実施形態では、0のシーケンスから1のシーケンスへの遷移は、送信機のスーパーサイクルカウンタ304によって決定されるスーパーサイクルの中間点で生じる。受信機は、各のスーパーサイクル境界上のチャネルの状態をチェック後に、この遷移を検出する。例えば、受信機は、所定のスーパーサイクル境界でチャネル上の低電圧を検出し、その後、後続のスーパーサイクル境界でチャネル上の高電圧を検出する。受信機は、連続するスーパーサイクル境界でチャネルの変化を検出したことに応じて、トレーニングパターンシーケンスを受信したかどうか判別するために、チャネル上の後続の高電圧状態の数をカウントする。次に、規定数のスーパーサイクル及び1が受信された後に、テストパターンが(トレーニングシーケンス指示が検出されたと想定して)開始される。図示するように、テストパターンは、タイミング図300のスーパーサイクル境界で開始される。受信機は、テストパターンを受信して、テストパターンにエラーがあるかチェックする。受信機は、テストパターンの精度をチェックした後に、エラーの有無に関するフィードバックを送信機に返す。
次に、図4を参照すると、通信チャネル405及び送信機425の一実施形態のブロック図が示されている。通信チャネル405は、送信機425及び受信機(図示省略)を接続する任意のタイプの通信チャネルを表す。通信チャネル405は、実施形態に応じて任意の数のデータレーン415A〜415Lを有してもよい。各データレーン415A〜415Lは、シリアルビットストリームを伝送するように構成されている。通信チャネル405は、クロックレーン(図示省略)及び/又は1つ以上の他のレーンを含む。
一実施形態では、通信チャネル405のデータレーン415A〜415Lは、データレーンのグループ420A〜420Nに編成される。データレーンの各グループ420A〜420Nのレイアウトは、所定のグループの各データレーンの長さを一致させて、当該グループの信号スキューを最小化するように最適化される。次に、データレーンの各グループは、対応するグループの全てのデータレーンに対して単一の遅延設定を選択するように構成された、対応する遅延ユニット435A〜435Nに接続されている。遅延ユニット435A〜435Nの各々は、他の遅延ユニット435A〜435Nによって選択された遅延設定とは無関係に、データレーンのグループの遅延設定を設定するように構成されている。例えば、1つのシナリオでは、遅延ユニット435Aは、レーン440A〜440Cの各々に対して単一の遅延設定を選択し、遅延ユニット435Bは、レーン440F〜440Hに対して異なる単一の遅延設定を選択する。様々な実施形態では、遅延ユニット435A〜435Nは、位相補間及び/又は他の回路構成を備え、他のグループに対して設定された遅延とは異なる可能性のある各グループの遅延を設定するように構成されている。したがって、遅延ユニット435Aは、データグループ420Aの全てのデータ回線415A〜415Cに単一の遅延(すなわち、同じ遅延)を適用し、遅延ユニット435Bは、データグループ420Bの全てのデータ回線415F〜415Hに単一の遅延を適用し、遅延ユニット435Nは、データグループ420Nの全てのデータ回線415J〜415Lに単一の遅延を適用する。さらに、各データレーン415A〜415Lは、個別に制御される遅延要素440A〜440Lを使用して、さらなる遅延によって最適化される。一実施形態では、遅延要素440A〜440Lによって適用されるさらなるレベルの遅延は、本明細書で説明するように、非同期フィードバックトレーニングシーケンスを実行した後に個別にプログラミングされる。
グループ420A〜420N及び遅延ユニット435A〜435Nの各々は、所定の通信チャネル405に対して実装される任意の数のグループ及び遅延ユニット回路構成を表わしていることに留意されたい。一実施形態では、各グループ420A〜420Nは、同じ数のデータレーンを有する。他の実施形態では、グループ420A〜420Nの一部は、グループ420A〜420Nの他のグループと異なる数のデータレーンを有する。
次に、図5を参照すると、データアイ500の一実施形態の図が示されている。データアイ500は、チャネル(例えば、図4の通信チャネル405)のデータレーンでのビット遷移をキャプチャすることによってモニタリングされるデータ有効期間の一例である。一実施形態では、送信機(例えば、図4の送信機425)は、データアイ500の境界を検出するために、異なる遅延設定で複数の非同期フィードバックトレーニングシーケンスを実行するように構成されている。送信機は、各テストの結果に関するフィードバックを受信機(例えば、図1の受信機110)から受信するように構成されている。受信機は、所定のテストについて検出されたエラーがなかったかどうか、又は、所定のテストについて1つ以上のエラーが検出されたかどうかを示すために、所定のデータレーンでフィードバックを運ぶ。
様々な実施形態では、送信機は、複数の遅延設定で複数のテストを実行し、フィードバックが不良(すなわち、1つ以上のエラーがある)から良好(すなわち、エラーがない)になると、その特定の遅延設定がデータアイ500の開始510と一致すると認識する。送信機は、僅かな増分で遅延を追加し、追加のテストを実行し、フィードバックが良好から不良になると、これをデータアイ500の終了520と識別する。送信機は、データアイ500の中央530を算出するために、開始510及び終了520の平均をもとめる。データアイ500の中央530に対応する遅延設定は、チャネルの所定のデータレーンに対する遅延設定とみなされる。送信機は、チャネルの各データレーンに対してこれらのテストを実行する。
次に、図6を参照すると、チャネルの第1データレーンに対して非同期トレーニングシーケンスを実行する方法600の一実施形態が示されている。説明目的で、本実施形態におけるステップは、順番に示されている。後述する方法の様々な実施形態において、説明する要素のうち1つ以上が同時に行われてもよいし、図示した順序とは異なる順序で行われてもよいし、完全に省略されてもよいことに留意されたい。必要に応じて、他の追加の要素を実行してもよい。同様の代替の実施形態は、図7に示す方法ステップに適用される。本明細書において説明する様々なシステム又は装置の何れかは、方法600を実行するように構成されている。
送信機は、スーパーサイクルをカウントするためのカウンタを利用する(ブロック605)。様々な実施形態では、スーパーサイクルは「N」クロックサイクルであり、「N」は正の整数である。例えば、一実施形態では、スーパーサイクルは、別のより高い周波数のシステムクロックの8サイクルに対応し、他の実施形態では、スーパーサイクルは、異なる数のクロックサイクルに対応する。送信機は、送信機を受信機に接続するチャネルの第1データレーンに対して第1遅延設定をプログラミングする(或いは、初期遅延設定を既に有している)(ブロック610)。
次に、送信機は、テストパターンが後に続くトレーニングシーケンス指示を受信機に送信する(ブロック615)。一実施形態では、トレーニングシーケンス指示は、第1の2進値から、第1の2進値とは異なる第2の2進値(例えば、0から1、又は、その逆)、その後に第2の2進値のビットシーケンスが続くビット遷移を含む。例えば、一実施形態では、トレーニングシーケンス指示は、0から1への遷移から始まり、後に一連の1が続く。一連の1は、所定数のビットを含む。一実施形態では、0から1への遷移は、スーパーサイクルの中間点で生じ、トレーニングシーケンス指示からテストパターンへの遷移は、スーパーサイクルの終わりに生じる。
送信機は、テストパターンを受信機に送信後、チャネルの第1レーンに接続された出力バッファを無効にし、チャネルの同じ第1レーンで受信機からのフィードバックを待機する(ブロック620)。様々な実施形態において、フィードバックは、送信されたテストパターンにおいて受信機がエラーを検出したかどうかに関する指標を含む。一実施形態では、送信機は、テストパターンを送信し終えた後、所定数のクロックサイクルを待機する。次に、送信機は、所定数のクロックサイクルを待機した後に第1レーンの状態をキャプチャする(ブロック625)。場合によっては、所定数のサイクルは、スーパーサイクルにおいて特定される。
次に、送信機は、第1レーンに対して別のテストを実行するかどうかを判別する(条件ブロック630)。一実施形態では、送信機は、第1レーンのデータアイを識別するために、異なる遅延設定でいくつかのテストを実行する。送信機が第1レーンに対して別のテストを実行すると判別した場合(条件ブロック630:「はい」)、送信機は、第1レーンの遅延設定を調整し(ブロック635)、方法600は、その後ブロック615に戻る。送信機が第1レーンに対して別のテストを実行しないと判別した場合(条件ブロック630:「いいえ」)、送信機は、テストからのフィードバックを利用して、第1レーンの遅延設定を決定する(ブロック640)。ブロック640の後、方法600は終了する。送信機が、通信チャネルの複数のデータレーンに対して並列に方法600の複数のインスタンスを実行することができることに留意されたい。
次に、図7を参照すると、チャネルの第1データレーンに対して非同期テストシーケンスを実行する方法700の一実施形態が示されている。様々な実施形態では、受信機は、スーパーサイクルをカウントする(ブロック705)ように構成されている。一実施形態では、単一のスーパーサイクルは、より高いクロック周波数を有するシステムクロックの「N」クロックサイクルに対応し、「N」は正の整数である。例えば、一実施形態では、スーパーサイクルは、長さが8(システム)クロックサイクルであり、他の実施形態では、スーパーサイクルは、異なる数のクロックサイクルに対応する。
ブロック710では、受信機は、各スーパーサイクルの終わり(又は、境界)において第1データレーンの状態をサンプリングする。第1データレーンは、受信機を送信機に接続するチャネルの1つのレーンである。受信機は、2つの連続するテストの間に第1レーンで(例えば、ビット遷移を表す)電圧遷移が検出されたかどうかを判別する(条件ブロック715)。2つの連続するサンプルについて第1レーンで遷移が検出された場合(条件ブロック715:「はい」)、受信機は、トレーニングシーケンス指示が第1レーンで受信されたかどうかを判別するために、第1データレーンをサンプリングし続ける(条件ブロック720)。一実施形態では、受信機は、第1レーンで検出された値が所定数のクロックサイクルの予想されるトレーニングシーケンス指示と一致する場合、トレーニングシーケンス指示が第1レーンで受信されていると判別する。例えば、トレーニングシーケンス指示が、所定の長さの1のシーケンスが後に続く遷移である場合の実施形態において、受信機は、第1レーンをモニタリングして、受信機が条件ブロック715において遷移を検出した後に、1のシーケンスが所定の長さで継続するかどうかを判別する。
受信機が第1レーンでトレーニングシーケンス指示を検出した場合(条件ブロック720:「はい」)、受信機は、トレーニングシーケンス指示が終了した後に第1データレーンでデータのキャプチャを開始する(ブロック725)。様々な実施形態では、テストパターンは所定の長さを有しており、所定の長さのデータが受信機によってキャプチャされる。一実施形態では、トレーニングシーケンス指示は、スーパーサイクル境界において終了し、テストパターンは、スーパーサイクル境界において開始する。トレーニングシーケンス指示及びテストパターンの正確な長さは、受信機に知られている。受信機が第1レーンでトレーニングシーケンス指示を検出しない場合(条件ブロック720:「いいえ」)、方法700はブロック710に戻り、受信機は第1レーンをモニタリングし続ける。
ブロック725の後、受信機は、キャプチャされたテストパターンのエラーに関してテストする(ブロック730)。一実施形態では、テストパターンは、既知のビットパターンを有する所定の長さの疑似ランダムバイナリシーケンスである。次に、受信機は、第1レーン上の送信機に対して、キャプチャされたテストパターンでエラーが検出されたかどうかを示すフィードバックを送信する(ブロック735)。ブロック735の後、方法700はブロック710に戻り、受信機は第1レーンをモニタリングし続ける。受信機が、受信機と送信機との間に接続された複数のデータレーンに対して方法700の複数のインスタンスを同時に実行してもよいことに留意されたい。
様々な実施形態では、ソフトウェアアプリケーションのプログラム命令は、上述した方法及び/又はメカニズムを実施するために使用される。プログラム命令には、C等の高水準プログラミング言語でハードウェアの動作が記述されている。或いは、Verilog等のハードウェア設計言語(HDL)が使用される。プログラム命令は、非一時的なコンピュータ可読記憶媒体に記憶される。多数のタイプの記憶媒体が利用可能である。記憶媒体は、プログラム実行のためにプログラム命令及び付随データをコンピューティングシステムに提供するために、使用中にコンピューティングシステムによってアクセス可能である。コンピューティングシステムは、少なくとも1つ以上のメモリと、プログラム命令を実行するように構成された1つ以上のプロセッサと、を含む。
上述した実施形態は、実装の非限定的な例に過ぎないことが強調されるべきである。上記の開示を十分に理解することで、多数の変形及び修正が当業者に明らかになるであろう。以下の特許請求の範囲は、このような変形及び修正の全てを包含すると解釈されることが意図される。

Claims (20)

  1. 送信機と、
    1つ以上のデータレーンを含む通信チャネルを介して前記送信機に接続された受信機と、
    を備えるシステムであって、
    前記送信機は、前記チャネルの第1レーンで、テストパターンが後に続くトレーニングシーケンス指示を送信するように構成されており、
    前記受信機は、前記トレーニングシーケンス指示及び前記テストパターンを受信し、前記テストパターンにおいてエラーが検出されたかどうかを示すエラー表示を前記第1レーンを介して前記送信機に伝えるように構成されている、
    システム。
  2. 前記送信機は、前記エラー表示を受信したことに応じて、エラーが検出されたことを前記エラー表示が示す場合に、前記第1レーンの遅延設定を変更するように構成されている、
    請求項1のシステム。
  3. 前記受信機は、前記トレーニングシーケンス指示を検出したことに応じて、前記テストパターンをキャプチャするように構成されている、
    請求項1のシステム。
  4. 前記送信機は、スーパーサイクル中に前記トレーニングシーケンス指示を複数のビットとして送信するように構成されており、
    前記トレーニングシーケンス指示は、第1マルチビットシーケンスと、後に続く第2マルチビットシーケンスと、を含み、前記第1マルチビットシーケンス及び前記第2マルチビットシーケンスは互いに異なる極性を有しており、前記第1マルチビットシーケンスから前記第2マルチビットシーケンスへの遷移は、前記スーパーサイクルの中間点で生じる、
    請求項3のシステム。
  5. 前記テストパターンは、前記スーパーサイクルの終わりに開始し、
    前記受信機は、前記スーパーサイクルを識別するために、前記トレーニングシーケンス指示を使用することによって、前記テストパターンシーケンスをキャプチャするタイミングを決定するように構成されている、
    請求項4のシステム。
  6. 前記受信機は、前記トレーニングシーケンス指示を検出するために、
    各スーパーサイクルの終わりに前記第1レーンの状態をサンプリングし、
    2つの連続するテストの間に前記第1レーンで遷移が生じていると判別したことに応じて、各スーパーサイクルの終わりに前記第1レーンの状態をサンプリングし、前記第1レーンの状態が所定数のサンプルに対して変化していない場合に前記トレーニングシーケンス指示が検出されていると判別し、前記第1レーンの状態が前記所定数のサンプルの間に変化している場合に前記トレーニングシーケンス指示が検出されていないと判別する、ように構成されている、
    請求項4のシステム。
  7. 前記エラー表示は単一のビットである、
    請求項1のシステム。
  8. 送信機と、
    受信機と、
    複数のデータレーンを含む通信チャネルと、を備える装置であって、
    前記送信機は、前記複数のレーンの各レーンでテストパターンを送信するように構成されており、
    前記受信機は、前記複数のレーンの各々で前記テストパターンを受信し、対応するレーンで前記テストパターンにおいてエラーが検出されたかどうかを示すエラー表示を前記複数のレーンの各々で前記送信機に伝えるように構成されている、
    装置。
  9. 前記送信機は、
    前記複数のレーンの各々に対する個別の遅延ユニットと、
    前記複数のレーンのレーンのグループに単一の遅延設定を適用するように構成された単一の遅延ユニットと、を備える、
    請求項8の装置。
  10. 前記送信機は、前記複数のレーンの各々のレーンで、トレーニングシーケンス指示及びその後に続く前記テストパターンを送信するように構成されており、
    前記受信機は、前記トレーニングシーケンス指示を検出したことに応じて、前記テストパターンをキャプチャするように構成されている、
    請求項8の装置。
  11. 前記送信機は、スーパーサイクル中に前記トレーニングシーケンス指示を複数のビットとして送信するように構成されており、
    前記トレーニングシーケンス指示は、第1マルチビットシーケンスと、後に続く第2マルチビットシーケンスと、を含み、前記第1マルチビットシーケンス及び前記第2マルチビットシーケンスは互いに異なる極性を有しており、前記第1マルチビットシーケンスから前記第2マルチビットシーケンスへの遷移は、前記スーパーサイクルの中間点で生じる、
    請求項10の装置。
  12. 前記テストパターンは、前記スーパーサイクルの終わりに開始し、
    前記受信機は、前記スーパーサイクルを識別するために、前記トレーニングシーケンス指示を使用することによって、前記テストパターンシーケンスをキャプチャするタイミングを決定するように構成されている、
    請求項11の装置。
  13. 前記受信機は、前記トレーニングシーケンス指示を検出するために、
    各スーパーサイクルの終わりに第1レーンの状態をサンプリングし、
    2つの連続するテストの間に前記第1レーンで遷移が生じていると判別したことに応じて、各スーパーサイクルの終わりに前記第1レーンの状態をサンプリングし、前記第1レーンの状態が所定数のサンプルに対して変化していない場合に前記トレーニングシーケンス指示が検出されていると判別し、前記第1レーンの状態が前記所定数のサンプルの間に変化している場合に前記トレーニングシーケンス指示が検出されていないと判別する、ように構成されている、
    請求項11の装置。
  14. 前記エラー表示は単一ビットである、
    請求項8の装置。
  15. 送信機によって、チャネルの第1レーンで、トレーニングシーケンス指示及びその後に続くテストパターンを受信機に送信することと、
    前記受信機によって、前記トレーニングシーケンス指示及び前記テストパターンを受信することと、
    前記テストパターンにおいてエラーが検出されたかどうかを示すエラー表示を前記第1レーンを介して前記送信機に伝えることと、を含む、
    方法。
  16. 前記エラー表示を受信したことに応じて、エラーが検出されたことを前記エラー表示が示す場合に、前記第1レーンの遅延設定を変更することを含む、
    請求項15の方法。
  17. 前記トレーニングシーケンス指示を検出したことに応じて、前記テストパターンをキャプチャすることを含む、
    請求項16の方法。
  18. スーパーサイクル中に前記トレーニングシーケンス指示を複数のビットとして送信することを含み、
    前記トレーニングシーケンス指示は、第1マルチビットシーケンスと、後に続く第2マルチビットシーケンスと、を含み、前記第1マルチビットシーケンス及び前記第2マルチビットシーケンスは互いに異なる極性を有しており、前記第1マルチビットシーケンスから前記第2マルチビットシーケンスへの遷移は、前記スーパーサイクルの中間点で生じる、
    請求項17の方法。
  19. 前記テストパターンは、前記スーパーサイクルの終わりに開始し、
    前記スーパーサイクルを識別するために、前記トレーニングシーケンス指示を使用することによって、前記テストパターンシーケンスをキャプチャするタイミングを決定することを含む、
    請求項18の方法。
  20. 前記トレーニングシーケンス指示を検出するために、
    各スーパーサイクルの終わりに前記第1レーンの状態をサンプリングすることと、
    2つの連続するテストの間に前記第1レーンで遷移が生じていると判別したことに応じて、各スーパーサイクルの終わりに前記第1レーンの状態をサンプリングし、前記第1レーンの状態が所定数のサンプルに対して変化していない場合に前記トレーニングシーケンス指示が検出されていると判別し、前記第1レーンの状態が前記所定数のサンプルの間に変化している場合に前記トレーニングシーケンス指示が検出されていないと判別することと、を含む、
    請求項18の方法。
JP2018556344A 2016-06-23 2016-09-08 非同期フィードバックトレーニング Active JP6725692B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/191,322 2016-06-23
US15/191,322 US10103837B2 (en) 2016-06-23 2016-06-23 Asynchronous feedback training
PCT/US2016/050591 WO2017222576A1 (en) 2016-06-23 2016-09-08 Asynchronous feedback training

Publications (3)

Publication Number Publication Date
JP2019519029A true JP2019519029A (ja) 2019-07-04
JP2019519029A5 JP2019519029A5 (ja) 2019-10-17
JP6725692B2 JP6725692B2 (ja) 2020-07-22

Family

ID=60678079

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018556344A Active JP6725692B2 (ja) 2016-06-23 2016-09-08 非同期フィードバックトレーニング

Country Status (5)

Country Link
US (1) US10103837B2 (ja)
JP (1) JP6725692B2 (ja)
KR (1) KR102429405B1 (ja)
CN (1) CN109313616B (ja)
WO (1) WO2017222576A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10541841B1 (en) * 2018-09-13 2020-01-21 Advanced Micro Devices, Inc. Hardware transmit equalization for high speed

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141765A (en) * 1997-05-19 2000-10-31 Gigabus, Inc. Low power, high speed communications bus
US6292911B1 (en) * 1998-12-17 2001-09-18 Cirrus Logic, Inc. Error detection scheme for a high-speed data channel
US7519874B2 (en) * 2002-09-30 2009-04-14 Lecroy Corporation Method and apparatus for bit error rate analysis
CA2432751A1 (en) * 2003-06-20 2004-12-20 Emanoil Maciu Enhanced method and apparatus for integrated alarm monitoring system based on sound related events
KR100543925B1 (ko) * 2003-06-27 2006-01-23 주식회사 하이닉스반도체 지연 고정 루프 및 지연 고정 루프에서의 클럭 지연 고정방법
US7072355B2 (en) 2003-08-21 2006-07-04 Rambus, Inc. Periodic interface calibration for high speed communication
US7444558B2 (en) * 2003-12-31 2008-10-28 Intel Corporation Programmable measurement mode for a serial point to point link
US7404115B2 (en) * 2004-02-12 2008-07-22 International Business Machines Corporation Self-synchronising bit error analyser and circuit
US7836386B2 (en) * 2006-09-27 2010-11-16 Qimonda Ag Phase shift adjusting method and circuit
US7802153B1 (en) 2006-12-07 2010-09-21 3Par, Inc. Trainable link
US8065597B1 (en) * 2007-07-06 2011-11-22 Oracle America, Inc. Self test of plesiochronous interconnect
US8233551B2 (en) * 2008-07-07 2012-07-31 Intel Corporation Adjustable transmitter power for high speed links with constant bit error rate
US20110040902A1 (en) 2009-08-13 2011-02-17 Housty Oswin E Compensation engine for training double data rate delays
EP2491663B1 (en) * 2009-10-23 2015-07-29 Marvell World Trade Ltd. Training sequence indication for WLAN
US8681839B2 (en) * 2010-10-27 2014-03-25 International Business Machines Corporation Calibration of multiple parallel data communications lines for high skew conditions
JP2013034133A (ja) * 2011-08-02 2013-02-14 Fujitsu Ltd 送信装置、送受信システムおよび制御方法
US8760946B2 (en) 2012-05-22 2014-06-24 Advanced Micro Devices Method and apparatus for memory access delay training
WO2014065873A1 (en) * 2012-10-22 2014-05-01 Jeff Willey Control messaging in multislot link layer flit
US9544128B2 (en) * 2013-02-21 2017-01-10 Qualcomm Incorporated Method and apparatus for data aided timing recovery in 10GBASE-T system
US9413497B2 (en) * 2013-03-07 2016-08-09 Viavi Solutions Deutschland Gmbh Bit error pattern analyzer and method
US9218575B2 (en) * 2013-09-04 2015-12-22 Intel Corporation Periodic training for unmatched signal receiver
GB2542148B (en) * 2015-09-09 2019-12-04 Imagination Tech Ltd Synchronising devices
US9710329B2 (en) * 2015-09-30 2017-07-18 Sandisk Technologies Llc Error correction based on historical bit error data
CN105677572B (zh) * 2016-02-04 2018-09-04 华中科技大学 基于自组织映射模型云软件性能异常错误诊断方法与系统

Also Published As

Publication number Publication date
CN109313616B (zh) 2024-03-29
KR20190012158A (ko) 2019-02-08
KR102429405B1 (ko) 2022-08-05
WO2017222576A1 (en) 2017-12-28
JP6725692B2 (ja) 2020-07-22
CN109313616A (zh) 2019-02-05
US10103837B2 (en) 2018-10-16
US20170373788A1 (en) 2017-12-28

Similar Documents

Publication Publication Date Title
US9832006B1 (en) Method, apparatus and system for deskewing parallel interface links
US8051346B2 (en) Fault injection
US10313068B1 (en) Signal monitoring and measurement for a multi-wire, multi-phase interface
CN113168393B (zh) 高速的硬件传输均衡
US20140269769A1 (en) Timestamp correction in a multi-lane communication link with skew
US8378699B2 (en) Self-test method for interface circuit
US11360874B2 (en) Registering clock driver controlled decision feedback equalizer training process
US11805026B2 (en) Channel training using a replica lane
WO2019045784A1 (en) SYSTEMS AND METHODS OF MEMORY LOCKING
WO2021080866A1 (en) Performing scan data transfer inside multi-die package with serdes functionality
JP6725692B2 (ja) 非同期フィードバックトレーニング
KR102471531B1 (ko) 저속 동작 환경에서 고속 테스트를 수행할 수 있는 반도체 장치 및 시스템
EP3260984B1 (en) Asynchronous feedback training
US11990904B1 (en) Field Programmable Gate Array system
US10938507B2 (en) Communication apparatus
US10467171B2 (en) Detecting the drift of the data valid window in a transaction
EP3260983A1 (en) Channel training using a replica lane

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190903

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190903

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190903

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20191122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200415

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: 20200526

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200625

R150 Certificate of patent or registration of utility model

Ref document number: 6725692

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250