JP2011502293A - メソシンクロナス・データ・バス装置及びデータ伝送方法 - Google Patents

メソシンクロナス・データ・バス装置及びデータ伝送方法 Download PDF

Info

Publication number
JP2011502293A
JP2011502293A JP2010528163A JP2010528163A JP2011502293A JP 2011502293 A JP2011502293 A JP 2011502293A JP 2010528163 A JP2010528163 A JP 2010528163A JP 2010528163 A JP2010528163 A JP 2010528163A JP 2011502293 A JP2011502293 A JP 2011502293A
Authority
JP
Japan
Prior art keywords
data
node
clock
string
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2010528163A
Other languages
English (en)
Inventor
ジェイムズ エイチ ジョーンズ
ケヴィン ディー ドラッカー
ジョン シー アール ベネット
Original Assignee
ヴァイオリン メモリー インコーポレイテッド
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 ヴァイオリン メモリー インコーポレイテッド filed Critical ヴァイオリン メモリー インコーポレイテッド
Publication of JP2011502293A publication Critical patent/JP2011502293A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

メモリ・システムにおける指定されたポイント間の全体の時間遅延が一定に維持されるように、メモリ・モジュール間のデータの伝送時間が管理される、メモリ・システムについて説明される。多数のレーンのバスの各レーンを別個に管理することができ、中間モジュールにおいてスキュー除去する必要なしに、宛先モジュールにおいてデータフレームを評価することができる。バス・シリアル・データ速度の1つ又それ以上の約数でモジュールを通してデータ経路を作動させ、受信されたデータのサンプリング・ポイントを選択し、温度変化又は時間経過に起因する時間遅延の変動を調整することによって、データを経路指定するためのスイッチを有するモジュールを通したデータの伝播における時間遅延が低減される。
【選択図】 図4

Description

本出願は、メモリ・システムにおける分散クロックの管理に関する。
コンピュータ・システムにおいては、中央演算装置(CPU)は、メモリ・システムに格納されたプログラム情報及びデータにアクセスする。コンピュータ・システムの設計者が設計段階の際に選択するサイズ、速度及び容量におけるメモリ・システムの階層があり、これは、例えば、キャッシュ・メモリ、メインメモリ、及び二次メモリを含むことができる。キャッシュ・メモリは、少ない待ち時間、高帯域幅、ビット当たりの高コストという特色を示し、CPUには不可欠なものである。キャッシュ・メモリは、半導体デバイスとすることができ、また、例えば、SRAM(スタティック・ランダム・アクセス・メモリ)とすることができる。同じく半導体技術であり、典型的にはDRAM(ダイナミック・ランダム・アクセス・メモリ)の形式であるメインメモリは、あまり頻繁にアクセスされないデータ及びプログラムのために用いられる。現在、パーソナルコンピュータは、約4GBまでのDRAMを有することができ、一方、ハイエンド・サーバは、約16GB又はそれ以上のDRAMを有することができる。複数のメモリ・コントローラ及びコンピュータコアを使用するといった戦略により、これらメモリに対してより大量のアクセスを提供することができるが、コンピュータ・バスシステムの多くは、伝播時間、バスの負荷、電力消費等が原因で、実際的な上限を有する。より大量のデータを大容量記憶装置上に格納することができ、例えば、単一のディスクがテラバイト(TB)のメモリを含むことができる磁気ディスク、FLASHメモリディスク(ソリッド・ステート・ドライブ(SSD)と呼ばれることもある)、及びディスクのクラスタを使用することができる。磁気ディスク上に格納されたデータに対するアクセス時間は、メインメモリに格納されたデータに対するものよりも相当長い。
大量のDRAM又はFLASHなどの他のメモリを、2006年4月17日に出願された米国特許出願第11/405,083号に記載されるようなメモリ・アプライアンス内に提供することができる。大容量のメモリアレイが従来のメインメモリのものに近い待ち時間を有するという点で、こうしたメモリアレイは、メインメモリに類似したものであると考えることができ、他の場合には回転式ディスク媒体等の大容量記憶装置に格納される大量のデータに対する迅速なアクセスを提供することができる。
データは、例えば、パラレル式、シリアル式、ポイント・ツー・ポイント、又はデイジーチェーン、又はマルチスタブを含む種々のアーキテクチャのものとすることができる、バスとして知られる経路上で、メモリと他の装置と中央演算装置との間を移動させられる
データの送受信のためのクロック周波数がシステムにおける全てのポイントにおいて同である場合、データ・バスを同期方式で動作させることができ、データが感知される(例えば受信される)各ポイントにおいてデータビット間に周知の位相関係が存在する。しかしながら、2つの隣接するノード間のパラレル・バスにおけるデータの伝送を考えると、異なるラインにおけるデータビットの位相関係は、時間遅延のスキュー(ずれ)に応じて変化する。低速のデータ伝送及び短いバス長においては、これを許容することができるが、高速データ伝送においては、データビットは、システム・クロックに対する様々な位相関係で受信され、1クロックより多い間隔で遅延が生じることがあるため、結果としてエラーがもたらされるか、又は、典型的には各メモリノードにおけるスキュー除去(de−skew)及び位相アラインメント(phase alignment)が必要になる。
この問題は、ラインの各々においてクロック及びデータを伝送し、ノードにおいてチャネル毎にクロックを回復することによって緩和することができる。このクロックは、ラインごとにシステム・クロックに関する時間遅延が異なる。また、クロックがデータと共に伝送された場合、ライン毎のクロックの同期を維持するために、データの伝送、又は少なくともアイドル状態のデータ・パターンが必要となることがある。
代替的に、ライン毎にデータをバッファに蓄積し、データ・スキューを補償するのに必要な時間遅延調整を判断し、データに作用する前に各ノードで受信されたデータを再構築することによって、各ノードにおいてデータを回復することができる(ワードデータは、読み取り、書き込み等のような帯域内コマンド、並びに、メモリとの間で読み書きされる命令を含むことができる情報を含むように理解されている場合)。スキュー補償調整を行うために、バッファに入れる必要があるデータの量は、バスに沿って蓄積することができるスキューのクロック周期数までとすることができる。バスの一端から他端へのデータを伝送する際の全体的な遅延は、データ経路に沿った個々のノード間のスキュー値の各々の最大スキューの合計である。このタイプのバスの一例は、JEDEC規格の対象であるFB−DIMM(完全バッファ付きDIMM)である。
バスは、データが送信側(メモリ・コントローラ等)から伝送され、例えばリニアバスに沿った第3のメモリ・モジュールなどのターゲット・メモリ・モジュールで受信される、マルチ・ドロップ・バスとして動作することもできる。モジュールは、当技術分野において周知のような、デュアル・インライン・メモリ・モジュール(DIMM)とすることができ、最大総スキューは、最長の伝送遅延を有する特定のバス・ラインのものと等しくすることができる。伝送遅延は、個々のデータラインのトレース長さの差から生じるものであり、トレース長さの差は、マザーボード上のトレース、及び、メモリ・モジュールを含む回路カード上のトレースを含むことができる。総スキューが、バスの長さ又は信号速度を制限する場合がある。
米国特許出願第11/405,083号に記載されるように、通信ノード間の各バス・ラインにおいて生じたスキュー(ずれ、skew)の量に応じて、特定のバス・ラインへのデータ・レーンの論理割り当てを適切に交換することによって、例えばシリアルのポイント・ツー・ポイント方式、又は分岐方式で動作しているバス・ライン間のスキューの影響を緩和することができ、その結果、バスの意図される受信側のノードにおいて、スキューが最小になり、知られ、又は制御される。このように、データに作用する受信ノードにおけるスキュー補償に必要な修正の量を低減させ、装置の複雑さ及び電力消費を低減させることができる。
第1のノードと、第1のノードと通信状態にある第2のノードとを含む相互接続システムが開示される。第1のクロックが第1のノード及び第2のノードに与えられ、第2のクロックは、第1のクロックを参照して生成され、第1のクロックに対して第1の整数関係(integral relationship)を有し、第1のノードからの出力と第2のノードからの出力との間のビットの送信時間が実質的に一定に維持されるように、第1のクロックに対する時間遅延オフセットが調整されている。
データ・バスによって接続可能な少なくとも2つのモジュールを含む、データ伝送システムが開示される。モジュールは、シリアル・データを送信するための送信機と、シリアル・データを受信するための受信機とを有する。モジュールには、共通のクロックから信号が与えられ、かつ、共通クロックから得られる各モジュール上の内部クロックを生成するクロック生成装置を有する。クロック・データ回復(recovery)回路は、シリアル・データ信号のビットとの同期を維持する受信されたデータ・クロックを生成し、アラインメント・バッファが、シリアル・データのビットと内部クロックとの間の同期を確立し、維持するように動作可能である。スイッチは、受信されたシリアル・データを外部ポート又は内部ポートの1つに経路指定するように動作可能である。モジュールは、複数の外部ポート及び内部ポートを有することができる。
別の態様において、メモリ・システムは、リンクにより接続された複数のモジュールを含み、少なくとも1つのモジュールはデータ・メモリを有する。システム・クロックは、少なくとも2つのモジュールに分散され、モジュール間で伝送されるデータのデータ・クロック速度は、システム・クロックと一体的に関連している。モジュール上のバッファは、受信されたデータ文字列のビット位置と以前に確立されたビット位置との間の同期を維持するように動作可能である。
さらに別の態様において、データ・インターフェースは、クロック・データ回復回路、クロック位相アラインメント・バッファ、及びデータ伝送回路を含む。クロック・データ回復回路は、データ伝送回路で用いられるクロックと同じ周波数を有するクロックを回復し、位相アラインメント回路は、データの到着時刻の変化を補償する。
さらに別の態様において、メモリ・モジュールは、データ受信機、クロック・データ回復回路、経路指定スイッチ、メモリ・インターフェース、及びデータ送信機を有する。クロック・データ回復回路は、データ伝送回路で用いられるクロックと同じ周波数を有するクロックを回復し、位相アラインメント・バッファ回路は、データの到着時刻を補償する。
さらに別の態様において、相互接続システムのノードは、データ受信回路と、データ伝送回路と、データ受信回路及びデータ伝送回路を接続するスイッチとを含む。回路は、複数のビットを有する受信された文字列の文字列の第1のビットに対して固定した関係でサンプリング時間を維持するように動作可能であり、入力データ・バッファは、再サンプリングされたビットと別のモジュールにより伝送された対応するビットとの間で測定される全体的な時間遅延が実質的に一定に維持されるように、第1のビットを再サンプリングするように構成される。
モジュール間でデータを伝送する方法が開示され、この方法は、少なくとも2つのモジュールを提供することを含み、モジュールは、受信機と、送信機と、クロック・データ回復回路と、位相アラインメント・バッファと、経路指定スイッチとを含む。モジュールは、ラインによって接続可能である。データの1つのフレームの1つの文字列が第1のラインに割り当てられる。文字列の第1のビットがサンプリングされ、伝送された文字列と文字列の受信との間の時間遅延が変化したとき、文字列の第1のビットのサンプリングのアラインメントを維持するように、受信側の第1のラインが初期化される。
さらに別の態様において、互いに通信状態にある複数のノードを含む相互接続システムを管理する方法が開示される。この方法は、複数のビットからなるデータの文字列を第1のノードから第2のノードに伝送すること、第2のノードにおいて文字列を受信すること、受信されたデータからクロックを回復し、文字列の第1のビットに対してサンプリング時間をアライメントすること、及びクロック周波数の約数でサンプリングされたデータを再サンプリングし、伝送されたデータと再サンプリングされたデータとの間の全体的な時間遅延が実質的に一定であるように、再サンプリング・クロックの位相又は時間遅延を調整することを含む。
メモリ・モジュールを有するコンピュータ・システムのブロック図である。 例の論理的側面についての命名規則を示す。 例の物理的側面についての命名規則を示す。 メモリ・モジュールの単純化されたブロック図である。 図3のメモリ・モジュールのより詳細なブロック図である。 デシリアライザ回路の入力及び出力におけるデータビットの論理的な配置の例を示す。 メモリ・モジュールのスイッチにおける機能性素子の配置を示す。 メソシンクロナス動作と関連したタイミング・レジームを示す。 メソシンクロナス動作と関連したタイミング・レジームを示す。
例示的実施形態は、図面を参照してより良く理解することができるが、これら例は、限定的性質であることが意図されていない。同じ又は異なる図面における同様の番号が付けられた要素は同等の機能を実行する。要素は番号が付けられるか又は略語により示されるかのいずれか、若しくはその両方であり、表示間の選択は単に明確にするために行なわれるにすぎないので、番号で示される要素、及び略語又はアルファベットの表示で示される同じ要素は、区別すべきではない。
当業者であれば、説明される方法及び図示される装置は、例えばソフトウェア、ハードウェア、又は両方の組み合わせにおいて等、マシン実行可能な命令において構成又は具体化できることが理解されるであろう。命令を用いて、命令によりプログラムされるデジタル・プロセッサ等に、説明された動作を実行させることが可能である。代替的に、動作は、説明された動作を実行するための配線論理又はファームウェア命令を含む特定のハードウェア・コンポーネントにより、又はアナログ回路を含むことができるプログラムされたコンピュータ・コンポーネント及びカスタム・ハードウェア・コンポーネントの任意の組み合わせにより、実行することができる。例として、マイクロプロセッサ、フィールド・プログラマブル・ゲート・アレイ(FPGA)、又は特定用途向け集積回路(ASIC)を使用することができる。かかる回路は、任意の必要な命令又はデータを格納するように、一体の又は関連したメモリを有することが命令できる。
この方法は、該方法を実行するためにコンピュータ(又は他の電子装置)をプログラムするのに用い得る命令が格納されたマシン可読媒体を含むことができるコンピュータ・プログラム製品として、少なくとも部分的に提供することができる。本明細書のために、「マシン可読媒体」という用語は、コンピュータ・マシン又は専用ハードウェアにより実行するための一連の命令又はデータを格納又はエンコードできるいずれかの媒体を含むものと解釈すべきである。従って、「マシン可読媒体」という用語は、これらに限定されるものではないが、ソリッド・ステート・メモリ、光ディスク及び磁気ディスク、磁気メモリ、光学メモリ、及び搬送波信号などを含むものと解釈すべきである。搬送波信号という用語は、こうした信号が伝えられるか又は放射されるかに関わらず、命令又データが与えられた電気信号を生成又は受信するのに必要な電子工学及び命令を含むように理解される。
例えば、限定としてではなく、マシン可読媒体は、読み取り専用メモリ(ROM)、全てのタイプのランダムアクセスメモリ(RAM)(例えば、SRAM,DRAM)、プログラマブル読み取り専用メモリ(PROM)、電気式書き換え可能読み取り専用メモリ(EPROM)、磁気ランダムアクセスメモリ、磁気ディスク記憶媒体、フラッシュメモリ、及び電気信号、光信号、音響信号、又は他の形式の信号を用いる伝送を含むことができる。
さらに、当技術分野においては、マシン可読媒体は、ある形式又は他の形式(例えば、プログラム、手順、プロセス、アプリケーション、モジュール、アルゴリズム、又は論理)において、アクションを起こす又は結果をもたらすソフトウェアのことを言うのが一般的である。かかる表現は、当業者には周知のように、コンピュータ又は同等の装置によるソフトウェアの実行によって、コンピュータ又は同等の装置にアクションを行なわせる又は結果を生成させることの便宜的な言い方に過ぎない。
特定の例を説明する場合、その例は、特定の特徴、構造又は特性を含むことができるが、あらゆる例が、必ずしも特定の特徴、構造、又は特性を含むとは限らない。このことは、2つ又はそれ以上の例の特徴、構造、又は特性の部分を、こうした組み合わせが明示的に除外されていない限り、組み合わせるべきではなく又は組み合わせることができないことを示唆又は暗示すると解釈すべきではない。特定の特徴、構造、又は特性を一つの例と関連して説明する場合、当業者であれば、明示的に説明されているか否かに関わらず、他の例との関連でかかる特徴、構造、又は特性を実行することができる。
明確にするために、本明細書に開示される実施の決まりきった特徴が説明されるわけではない。もちろん、こうした実際の実施のいずれにおける開発でも、実施ごとに異なる、システム関連及びビジネス関連の制約とのコンプライアンスといった、開発者の特定の目標を実現するために、多くの実施特有の決定をしなければならないことが理解されるであろう。さらに、こうした開発努力は複雑で、時間のかかるものであるが、それにもかかわらず、本開示の利点を得る当業者にとっては、エンジニアリングのルーチン業務であることが理解されるであろう。
メモリ・モジュール・コネクタ・インターフェース等の、本明細書に記載されるコネクタ又はコネクタ・インターフェースは、雄型コネクタ又はインターフェースが雌型コネクタ又はインターフェースに係合するといった、物理的に分離可能なインターフェースに限定されるものではない。コネクタ・インターフェースはまた、リード線、はんだボール、又はメモリ回路からの接続が別のメモリ回路又は回路基板に接続されるインターフェースのような、いずれかの形式の物理的インターフェース又は接続も含む。例えば、スタック・ダイ手法において、多数の集積回路ダイ(例えば、メモリ装置、バッファ装置等)を、基板と共に互いの上に積層し、ベース、及びボール・グリッド・アレイ又は他のタイプのコネクタ・インターフェースを通してメモリ・モジュール、メモリ・コントローラ、又はプロセッサへのインターフェースを形成することができる。別の例として、メモリ装置及びバッファ装置は、可撓性のテープ相互接続及びインターフェースを介して、ボール・グリッド・アレイ型のコネクタ・インターフェース又は物理的に分離可能なソケット型のコネクタ・インターフェースを通して、メモリ・コントローラに相互接続することができる。接続型には、集積回路チップ間のインターフェース、基板上の、基板間、又はプリント回路基板上の相互接続コンダクタ等を含むことができる。
コンピュータ・システムにおけるメモリ・モジュールに関して例が説明されるが、本明細書に記載するいずれも、本開示の範囲をかかる局所化されたシステムに限定することを意図するものではない。ここに記載された装置及び方法は、モジュールが物理的に分離され、かつ、無線技術等を用いるデータ伝送技術を全体的に又は部分的に使用することができる、データ通信システムに対して用いることができる。同様に、それらの間に相互接続部を含む複数のメモリ・モジュールを共通の基板上に製造又は組み立てることができる。物理的な実施形態の選択は、製品が設計される時点における工学的及び経済的考慮事項によって決まる。
図1及び図2は、記載される例に使用することができる記号及び用語の一部を識別するために提供される。これは、便宜のため、明確にするため、一貫性及び簡潔性を保つために行われるものであり、当業者であれば、種々の同等の用語を使用できることを理解するであろう。しかしながら、ここに提供される説明のために、具体的に述べられる場合を除いて、ここで述べられる用語が使用される。このことは、容認される同等の用語、又は将来同等の概念を記載するのに使用され得る用語を排除又は区別することを意味するものではない。
図1は、中央演算処理装置(CPU)、メモリ・コントローラ(MC)、及びメモリ・モジュール(MM)及びシステム・クロック(SYSC)を含むシステムの例を示す。外部インターフェース、大容量記憶装置、電源等のようなコンピュータの他の態様も提供できるが、図示されていない。図1に示されないキャッシュ・メモリ、ディスク・ストレージ・メモリ、テープ・メモリ及び他の形態のストレージに加えて、システムは、プログラム命令及びプログラムにより使用又は操作されるデータへの高速アクセスのために取り付けられた、RAM及びFLASH等の揮発性及び不揮発性メモリを有することができる。このメモリは、メモリ・コントローラMCによりCPUに接続することができ、複数のメモリ・モジュールMMを含むことができる。
メモリ・モジュールは、まとめてバス・ライン又はチャネルと呼ばれることが多い複数の電気的接続、プリント配線接続、又はラインによって互いに、及び、メモリ・コントローラに接続することができる。本例において、幾つかのメモリ・モジュールMMは、MM1からMM2へといったように、直列接続されるものとして示され、幾つかのMMは、MM2からMMMM3及びMM4へといったように、分岐構成で接続されるものとして示される。
メソシンクロナス(mesosynchronous)システムにおいて、システム・クロック(SYSC)は、ドメインにおいてモジュール(例えば、MM)に分散されるので、モジュールのグループの複数のモジュールは、共通の周波数のクロック・ソースにアクセスすることができる。SYSCクロック周波数の倍数又は約数であり得るSYSCから、種々のクロック周波数を得ることができる。このように、特定の倍数又は約数のSYSCクロック周波数のシステム全体にわたるクロックは、同じ周波数を有するが、その時間又は位相オフセットが互いに異なる場合がある。このオフセットは、クロック周期の何分の一かで、或いは位相オフセットとして説明することができ、0、90、180、270度の位相は、0.0、0.25、0.5、0.75のクロック周期に対応する。オフセットは、温度又は回路の経年変化(ageing)により、時間と共に非常にゆっくりと変わることがある。ゆっくりと、とは、補償又はアライメントの変更を必要とし得る十分なオフセットの変更が生じる前に、様々な文字を伝送できることを意味するように理解されるであろう。
データの全体的なクロック速度は、複数のモジュールにわたって同じであるか、又は同じクロックに関連しているため、異なるモジュール上のクロック間の差異を補償するために、充填文字(padding character)を必要とすることはない。同様に、フレーム毎に文字列の同期を使用するのを回避することができる。別の態様においては、複数のモジュールにおいてクロック速度が同じであることから、データ伝送におけるギャップ又はプリアンブルを回避することができる。
動作タイミングのために種々のクロックを用いて、データを操作し、計算を行なうことができ、例えば、クロック信号の立ち上がりエッジで又はクロック信号の立ち上がりエッジ及び立ち下がりエッジの両方で動作を行なうことができることが知られている。後者のタイプの動作は、通常ダブル・データ・レート(DDR)クロッキングと呼ばれる。提示を簡単にするために、本説明は、立ち上がりエッジ・クロック動作に関するものであるが、当業者であれば理解するように、ダブル・データ・レート・クロッキング等が行なわれるシステムへの適用も理解されるであろう。他のクロッキング・スキームも知られており、それらを用いることもできる。
図2は、例えば2つのメモリ・モジュールMMとすることができる2つの装置間の接続又はバスの説明に用いられる規則を定める働きをする。データは、上流方向又は下流方向に流れると言うことができ、上流とは、通常、メモリ・コントローラMC又はCPUのような管理インターフェースを有するチャネルの端部の方向として定められ、下流とは、その逆方向である。バスは、上流方向が下流方向になるように再構成することができる。北向き及び南向きのような他の用語を用いることもできる。
バス、リンク、又はチャネルは、高速のデータ、アドレス及びコマンド伝送のために2つの装置を接続する。多くのチャネル構成があるが、典型的には、チャネルは、ラインのグループであり、単極性、両極性、又は差動信号技術を使用することができる。ラインは、単一指向性又は両方向性とすることができる。本例においては、差動ラインが使用され、差動ラインは、当技術分野においては周知のように、差動信号電子回路内のメモリ・モジュールで終端する、マザーボード上の1対のトレースを含むことができる。(電気差動ラインは、図面では単線で示される)。現在のところ、このタイプの接続が、最新の製品設計における高速インターフェースのために用いられるが、光学技術又は無線技術等を含む、あらゆるタイプの接続を用いることができる。
1つの態様において、チャネルは、ラインの単指向性グループを有することができる。本例では、10本の単指向性ラインが提供され、このうち9本は、常時使用することができ、10番目のラインは予備とすることができる。他の数のライン及び予備を用いることもできる。予備のラインは必須ではない。データは、クロック周期における固定長とすることができる文字列の形で、チャネル上で伝送することができる、文字列のデータビットをクロック周期と関連付けることができる。本例では、20のクロック周期と関連付けられた、20のビット文字列の長さが使用される。複数のライン上の文字列を論理クラスタにグループ分けし、フレームと呼ぶことができる。つまり、図2aに示すように、アクティブなラインのそれぞれにおける文字列を、他の文字列と同時に伝送される別のライン上の文字列と関連付けることができる。しかしながら、別個のライン上の文字列は、遅れずに互いにビット同期させる必要はなく、1又はそれ以上のビット周期により、遅れずに互いからオフセットすることができ、クロック・オフセットは、分数のビット周期を含むことができる。
第1のモジュールと第2のモジュールとの間のデータの伝送は、伝送モジュールにおいて制御することができ、受信モジュールは、メソシンクロナス・クロック・データ速度でデータを受け入れることができる。
逆方向に類似のチャネルが存在する場合がある。この説明では、信号の伝播方向は、下流方向のものとして説明されるが、上流方向の信号伝播が類似した特性を有することが理解されるであろう。
MC又はMMのような上流装置からMMのような下流装置への文字列の通路は、ホップと呼ぶことができる。この説明では、明確にするために、データの伝送は、一般性を喪失することなく、2つのメモリ・モジュールMM間のものである。ラインという用語は、通常、ホップにおける2つのモジュール間の接続の物理的性質を説明するときに使用され、これらのラインは、例えば、プリント回路基板、コネクタ等の補助コンポーネント、及び送信側及び受信側インターフェース電子機器と関連付けることができる。レーン(lane)という用語は、通常、フレームにおける文字列のデータの論理割り当てを表すために用いられる。MC、MM等の動作により、レーンの各々をラインに割り当てる(又は、「バインドする(bind))ことができ、このバインディングは、ホップ毎に変わることも、時間と共に変わることもある。この説明では、システムが構成されると、バインディングは静的なものであると考えられるが、モジュールごとに異なることがある。つまり、各ホップにおけるレーンとラインの関連付けは、システムを構成する前に確立され、動作中又は再構成が行なわれるまで、割り当てられた状態のままである。レーンは、異なるホップの異なるラインにバインドし、宛先モジュールのフレームにおける文字列の到着時間の間のスキューを管理し、ことによると削減又は最小化することができる。
モジュールが起動され、訓練されたとき、及び、レーンがラインにバインドされ、フレーム・アラインメント・プロセスが完了した場合、2つのモジュール間のチャネル又はリンクが存在すると考えることができる。このプロセスを構成と呼ぶことができる。
ホップにより他のモジュールと接続する、モジュールから下流方向に出るラインのグループは、出力サブポートと呼ばれ、かかるラインが別のモジュールに入る際は、入力サブポートを通る。サブポートとして構成されたラインの別の類似のグループは、上流方向に存在することができ、2つのモジュール間のホップと関連付けられた出力及び入力サブポートの組み合わせをポートと呼ぶことができる。
データフレームにおける文字列は、ステアリング・データを含むことができ、これは、一般に、現在のフレームであっても、又は別のライン上の別のフレームであっても、或いは現在のライン上の後続フレームであってもよいフレーム内のデータを、宛先モジュールに経路指定するのに必要とされるアドレス指定情報を意味する。これは米国特許出願第11/405,083号に記載されるようなステアリング・データとすることができる。アドレス指定を提供する又はデータを経路指定する他の手段は、当業者には周知であり、使用することが可能である。同じレーン又は複数のレーンは、ステアリング・レーンを含まない場合があるが、コマンド、アドレス、又はデータについての文字列を含むことができる。
図2bは、メモリ・モジュールMMとすることができる2つのモジュール間の物理的インターフェースの1つの例である。マザーボード上の対のトレースは、マザーボード上のコネクタ間を接続することができる。単一の又は複数のコネクタを使用できるので、MMがマザーボード内に接続し、プリント回路配線に接続することができる。例えば、電源、電源管理、クロック及びテスト等の他の接続が存在する場合もあるが、図示されていない。
図3は、下流方向の経路のみを示す、メモリ・モジュールの単純化されたブロック図である。入力ポートP0は、この例では10個であるn個のデータラインを有する。バイナリツリーに組み込むためのモジュールの場合、各々が同じく10個のデータラインを有する2つの出力ポートP1及びP2があり得る。ポートP0における入力データは、ステアリング・データ内に与えられた情報に応じて、又は他の経路指定方法によって、MMのメモリの1つ又はポートP1若しくはP2へ経路指定される。
メモリをMMと関連付けることができ、メモリは、MMと一体であってもよく、又はMMと通信状態にあってもよく、また、これまでに述べたいずれのタイプのデータ・メモリとすることもできる。メモリは、他のコンピュータ又は通信装置、或いは他の外部装置へのインターフェースで置き換える又は補完することができるので、メモリアドレスにより、例えば、MMからディスプレイ、ネットワーク・インターフェース等へのデータの入出力をもたらすことができる。
経路指定及び他の関連した機能を実行する装置は、構成可能なスイッチング素子(CSE)と呼ぶことができる。図4は、CSEの部分を示す。本例においては、MM回路は、幾つかの異なるクロック速度で動作することができる。複数のクロック速度により、システムの電子的実現を容易にすることができるが、十分に高速の電子コンポーネントを取得できる場合、CSEの動作の全てを共通のクロック速度で実行することができ、そのクロック速度は、バスデータ速度の速度とすることができる。システム・クロックSYSCは共通クロック(SYSC)から、システム・クロックSYSCを使用するモジュールのそれぞれに分散することができる。システム・クロック(SYSC)速度は、ホップのライン上のシリアル・ビットデータのビットクロック速度とは異なるようにすることができ、当技術分野において周知のクロック速度乗算器又は分算器をモジュール或いは他の場所で使用し、ローカルクロックを得ることができる。シリアル・ビット速度クロックは、システム・クロックSYSCの倍数m、又は約数とすることができ、MMの部分は、例えばスイッチ・クロック速度(SWC)などの別のクロック速度で動作することができる。本例において、データ・クロック速度DCはSYSCの16倍であり、スイッチ・クロック速度(SWC)は、SYSCの4倍である。モジュールにおいて、他のクロック周波数を使用することができる。使用されるクロックの一部は、SYSCと一体的に関連付けられていないこともある。
モジュールMMを接続するラインの1つは、他のライン上で使用されるプロセスを表すように説明される。ポートP0における入力ラインは、インピーダンスの合致を与えることができるアナログ回路に受けられるか、又はこれに接続され、このアナログ回路は、明示的又は内因性帯域フィルタリングを含むことができ、かつライン上の差動信号を、さらなるデータ処理又は操作に適した電気信号に変換することができる。述べられたように、本説明は、モジュールが、クロックのアラインメント又はクロック位相オフセットの判断を含めて、システムの残りの部分に関して既に構成されていると推定され、従って、構成プロセス、エラー検出、エラー回復等については、それ以上詳細に説明しない。
図4に示すように、受信回路(RX)からの出力信号は、クロック・データ回復(CDR)回路により処理される。デシリアライザ(deserializer、DES)を用いて、データをシリアル形式から複数のデータストリームに変換することができるので、スイッチ回路(SC)においてデータを用いることができるようなより低いクロック速度SWCでデータをパラレル処理することができる。CDR回路は、DLL(遅延ロック・ループ)又はPLL(位相ロック・ループ)又は同様のものとして当技術分野において周知の多くの回路タイプのうちの1つとすることができ、これにより受信されるデータにおけるビット位置に対して固定した関係をもつ回復されたデータ・クロック(RDC)を確立することができる。データ信号が有効である場合、回復されたデータ・クロックRDCを使用して、ビットを受信した時点におけるライン上の信号をサンプリングすることができる。つまり、受信されたデータ信号のサンプリング時間は、ビット間の境界上でデータサンプルが取得されず、かつ、ホップ上の伝送において起こり得る歪みの影響が最小となるように、アライメントされる。初期化の時点でRDCを文字列境界とアライメントすることもできる。
共通のシステム・クロックから異なるモジュールまでクロック信号SYSCによりとられる異なる伝搬経路、モジュールにおける差動時間遅延に起因する位相オフセット(又は、少なくとも分数のビット時間)によって、及び、隣接するモジュール間の異なるラインの異なる信号伝搬遅延による異なる信号伝搬遅延によって、回復されたデータ速度クロック(RDC)は、局所的に生成されたデータ・クロック(DC)からオフセットすることができる。
モジュール間の伝播遅延時間の差異を、スキューと呼ぶことができ、スキューは、固定成分及び可変成分の両方を有することができる。モジュール上の各経路が経験する付加的な伝播時間の差動遅延も関連しており、スキューを説明する場合、他に具体的にと特徴付けられない限り、全体の差動時間遅延を意味する。例えば、モジュール間の伝播時間は、マザーボード上のトレースに沿った信号の伝播時間を含む場合があり、これは光速の約半分より大きい速度とすることができ、伝播は、前のモジュールの送信機TX及び現在のモジュールの受信機RXのフィルタ、並びに、デジタル・バッファ等において遅延する。実際のアナログ電子回路は、有限の帯域幅を有し、帯域幅付近で動作するこうした回路は、信号処理において付加的な伝搬遅延をもたらすことがある。
伝播遅延は、位相遅延又は時間遅延のいずれかであると考えることができる。アナログ回路は、クロック周期のオーダーの時間遅延を有することができ、遅延は、コンポーネント値の関数とすることができ、これは温度依存性とすることができる。幾らかの経年変化が生じることもあるが、これは一般に長い時間スケールにおけるものである。従って、入ってくる文字列の第1のビットと対応するモジュール・クロック・エッジとの間の位相又は時間関係を、先験的に知ることはできない。固定された回路構成におけるスキュー又は伝播の変動についての時間スケールを説明する場合、長時間とは、クロック速度における文字列の持続時間の小さい倍数よりも、変動の時間スケールが大きいことを意味するように理解される。
構成プロセス中に、クロック及びデータをアライメントすることができ、文字列の訓練を用いて、ラインごとに、文字列又はフレーム境界、信号有効ウィンドウ、及びRDVとの間の関係を確立することができる。一旦確立されると、その関係は、DLL又はPLLにより維持され、RDCを使用してデシリアライザ(DEC)をクロック制御することもできる。DLL又はPLLは、CDR回路を用いて更新することができるので、例えば環境要因(通常は温度)によりホップの伝搬時間遅延が変化するとしても、サンプリング・ポイントは、有効データウィンドウを有するように維持される。つまり、あるラインについてのあるモジュールにおける回復されたデータ・クロック(RDC)の特定のクロック・ビットと、文字列の0番目のビットとの間の関係は、ホップ上の時間遅延が変動しても変化しないままである。この変動は、フレーム又は文字列速度と比べて遅いため、DLL又はPLLは継続的に更新されないことがある。システム設計に応じて、データがホップのライン上で連続的に伝送されない場合、周期的な同期伝送を起動して、RDCを調整し、その関連を維持することができる。
ライン上の文字列のビットを表す変換を表すシリアル・データ・ストリームを、より低いデータ速度で局所的に処理することができる複数のパラレル・データ・ストリームに変換する例が、図5に示される。デシリアライザ(DES)によって、文字列(本例では20ビット)が、回復されたデータ・クロック速度(RDC)で処理され、ラインデータ速度の半分及び四分の一のクロック速度でモジュール内に経路指定される。個々のデータビット位置とスイッチ論理におけるプレーン(plane)との論理的関連が示され、ここで各プレーンは、スイッチ・クロック速度(SWC)で動作される。処理の低クロック速度部分に対するデータの他の論理割り当ても等しく可能である。この例では、文字列のデータは、完全にはデシリアライズされない。つまり、4つの内部データ経路(プレーンA−D)が使用され、データは、完全にはパラレル・データ文字列に変換されない。同様に、論理が十分高速である場合には、シリアライズ又はデシリアライズすることなく、文字列を完全なシリアル・データ文字列として処理することができる。
論理的表現ではなくビットの時間が示された場合、ハーフレート・ドメインにおけるデータの連続するビット間の時間又は間隔は、入ってくるデータのものの2倍となり、クオーターレート・ドメインにおけるデータビットの時間は、入ってくるデータのものの4倍となることが理解されるであろう。本例では、データは、入ってくる文字列の偶数ビット又は奇数ビットとして示されるが、この表記は、単に説明の便宜のためのものであり、データビットがモジュール内で経路指定される方法を制限することを意図するものではない。
位相アラインメント・バッファ(PAB)を用いて、デシリアライザ(DES)の出力を内部スイッチ・クロック(SWC)とアライメントする。スイッチ速度クロックは、SWC1及びSWC11のようなスイッチSWから分散されるものとして示され、スイッチの入力及び出力においてPABのために用いられるSWCが、どちらもSWCのものと同じ周波数であるクロック速度を有するが、各々が、スイッチ(SW)自体に用いられるSWCとは異なるが実質的に固定された位相又は時間オフセットを有し得ることを意味する。
1つの態様において、PABのビット長は、文字列より短くてもよく、米国特許出願第11/405,083号に記載された経路指定スキームが用いられる場合、経路指定情報は、受信モジュールにより完全な文字列が受信される前に取得することができる。PAB長は18ビット未満とすることができ、5ビットの長さとすることができる。
本例では、文字列は、5つのデータビットの4つのパケットにデシリアライズされ、クロック速度SWCは、DCの四分の一である。PABは、入力された文字列の0番目のビットがSWCの先端とアライメントされるように作用することができる。文字列(第1、第2、及び第3)のデシリアライズされたデータの後続ビットは、それぞれ、SWC(90°、180°、270°)の相対的な位相とアライメントすることができる。文字列の後続ビットは、遅れずに従い、同様に処理することができる。
パケットは、処理して、パケットをメモリに又は出力ポートP1、P2の一方に経路指定するために、スイッチ(SW)によりパケットを経路指定することができる。この経路指定は、受信されたステアリング・データ文字列に基づいて、動的なものにすることができる。さらに、スイッチ(SW)は、例えば、P0のライン1上の入力文字列をP1上の出力ライン3へ転送することによって、レーン交換を行なうことができる。論理的レーンと物理的ラインの関連は、本質的に静的なものとすることができ、プロセスは「バインディング」と呼ぶことができる。このように、入力文字列を経路に沿ってメモリ位置又は別のモジュールに経路指定することができ、ラインへのレーンの割り当てを用いて、例えば、宛先モジュールにおけるフレームの文字列間の差動スキューを管理することができる。予備ラインという用語は、現在のところレーンにバインドされていない、2つのポートを接続する任意のラインを指すために用いられる。
スイッチ(SW)とオンモジュール・メモリとの間のインターフェースは、モジュール間のインターフェースに類似する場合があり、ローカル・メモリとの間にあることが意図されるパケットにおける文字列を提供することができる。この受信は、フレーム内の文字列をスキュー除去すること及びフレームをメモリに転送することを含むことができる。こうした局所的なデータ回復は、米国特許出願第11/405,083号に説明されている。
データが出力ポート(例えば、P1又はP2)に経路指定される、スイッチ(SW)における処理の後、文字列のパケットは、入力として、出力位相アラインメント・バッファPABに出力される。出力PABは、構成プロセス中に確立された出力シリアライザSERにおいて、文字列の0番目のビットとデータ・クロックDCのクロック・エッジとのアライメントを維持する役割を果たす。スイッチ(SW)における処理は一般に同期プロセスであるため、スイッチ・クロック(SWC)とデータ・クロック(DC)の間のスキューは、一旦確立すると、相対的に静的なままである傾向がある。つまり、スイッチを通るビットの伝播遅延時間は実質的に一定である。しかしながら、スイッチ(SW)に入力されるデータの位相又は相対時間は、データ・クロック(DC)に関して、ライン毎に異なり得る。出力PABを用いて、ライン上の文字列のビットを、そのラインのデータ・クロック(DC)の適切なクロック周期とアライメントすることができる。このアライメントはライン毎に行なわれ、フレームの文字列は、別個に処理されるので、各ホップにおいて再同期させる必要はない。
次に、シリアライザが、文字列のパケットのビットを、ライン上で既に伝送された文字列と同じタイミングを有する文字列に併合する。つまり、n番目の後続文字列のビット0と、前の文字列の0番目のビットから20nクロック周期だけ遅延されたデータ・クロックDCのクロック・エッジとの関連が維持され、ここでnは正の整数である。従って、文字列のタイミングは、伝送される実際の文字列がない場合でも維持される。シリアライザ(SER)の出力は、次のホップでの伝送のために、TX回路における差動アナログ・データ信号に変換することができる。
フレーム内の他のライン上の他の文字列も同様に扱われる。しかしながら、ラインの各々は、別個のCDR回路を有し、ライン毎のRDCは、互いに対して及びSWCに対して、異なる位相を有することができる。各ライン上の位相の変動はまた、ライン長、増幅器、又はフィルタ特性等といった、回路の詳細に対応する時間又は温度への異なる依存性を有することもできる。
図6は、スイッチ(SW)の単純化された機能ブロック図を示す。スイッチは、レーン交換グリッド(LEG)及びポート交換グリッド(PEG)の2つのスイッチで形成することができる。示されるように、1つのLEGしかないが、特定の設計に応じて、スイッチ出力において1つ又はそれ以上のLEG素子を設けることもでき、或いは、入力又は出力におけるLEGを省略することができる。ここで、入力ライン(0−9)は、レーン(例えば、A−J)と関連付けられ、例えば、レーンAは入力においてライン0と関連付けられる。例えば、出力ポートP1への経路指定を行なうことができ、そこで、例えば、出力においてレーンAをライン3と関連付けることができる。バインディング、スイッチング、又は入力ラインから出力ライン及びポートへの文字列の経路指定は、それぞれLEG及びPEGによって行なうことができる。残りのラインB−Jの出力ライン1−9へのバインディングは、システムが構成されたときに決定することができ、その結果、入力フレームにおける各レーンが出力における特定の物理的ラインに経路指定される。レーンAは、別のラインにもバインドさせることができる。バインディングは、モジュール上のポート毎に異なることがあり、モジュール間で異なることもある。
このプロセスの結果は、ホップ上のデータの伝送が時間の経過と共に変化する場合でも、モジュールのいずれかにおいてデータ・クロックがデータ・クロックDCである場合に、メモリ・コントローラMCによって伝送された文字列のビット(例えば、0番目のビット)のデータ・クロックDCの同じクロック・エッジに対する関連を維持することとすることができる。
この概念を図7A−図7Bに示す。図7Aにおいて、伝播遅延時間D1は、モジュールMM1の出力とモジュールMM2の出力との間の伝播遅延時間を表す。データのレーン毎にこの時間を一定に維持することにより、ライン上で伝送された文字列の最初のビットとDCのクロック・エッジとの間の確立された対応関係が、構成プロセスの完了時に存在したものと同じに維持される。遅延D1は、遅延D2及びD3の和であると考えることができ、ここでD2は、スイッチとは関連付けられていない遅延とすることができ、D3はスイッチ(SW)と関連付けられた遅延である。遅延D2及びD3の各々は、時間と共に環境要因により変化することがあるが、遅延における変化の影響は、位相アラインメント・バッファ(PAB)によって補償され、これにより全体的な伝送時間の遅延は実質的に一定となる。これは、図7Bにより詳細に示される。実質的に一定であるとは、同期後に、文字列の第1のビットの全体的な伝送時間が、再同期化することなく、ビット時間より長く変化しないように回路が調整されることを意味することが理解される。
これまでの説明において、SYSCクロック・ソースにおけるクロック・エッジに関する、モジュールにおけるシステム・クロック(SYSC)の時間遅延は、モジュール上にないこともあるが、暗黙のうちに一定であると推定されてきた。この時間遅延はまた、環境要因又は経年変化に伴って変動することもあるが、各モジュール上の位相アラインメント・バッファ(PAB)がDCとSWCとRDCとの間の相対的時間遅延を補償するので、SYSCのクロック遅延の変動も補償することができる。
説明される配置の結果は、MMの入力PABにおいて、1つの完全な文字列又はそれ以上をバッファに入れる必要がなく、ホップの遅延における変化に対する調整を行なうことができるということである。PABの深さは、例えば、ホップのラインの全てにわたるスキューの全体の変動ではなく、ホップにおけるラインについての動作温度範囲にわたるスキューのおよその変動とすることができる。構成時点において、クロック速度ドメイン間の転送のために、バッファにおける適切な時点でデータを配置することができるので、転送期間中、データビット位置をバッファ内に維持することができる。
位相アラインメント・バッファにより、結果として、環境要因によるスキューにおける変化を考慮して、メモリ・モジュールを通した全体的な時間遅延を最適化することができる。データが複数のホップを有する経路にわたって伝播される場合、中間モジュールにおいてフレームのデータを回復し、データ経路に沿って遅延を付加することによりスキュー除去を行なう手法と比べると、MCと宛先モジュールとの間の全体的な時間遅延を低減させることができる。ソース又は宛先モジュールにおいて、遅延をラインの1つ又はそれ以上に付加して残りのスキューに対処することができ、或いは、構成中に遅延を付加して全体的なスキューを最適化することができる。
同期と呼ぶことができる、データ・クロックDCといずれかのラインのデータとの関連が、該関連が確立された後に維持され、かつ、モジュールの対において局所的に維持されるので、システムの帯域幅又は待ち時間の性能上の理由により必要な場合を除いて、各ライン上のデータ伝送が連続的である必要はない。ラインが必要とされない場合、送信機コンポーネント及び受信機コンポーネントから、並びに、おそらくCDRの部分及び他の回路から、電源を除去することができる。データは、典型的には、入力ポートから、ローカル・メモリ又は2つの出力ポートのうち1つに経路指定され、出力ポートの少なくとも1つは、必要とされない場合に遮断することができる。
残りのラインに警告するなど、以前にアクティブでなかったリンクにおけるデータフレーム、又は、リフレッシュのために送られるデータに信号を送るために、サブポートのラインのグループにおけるラインの1つをアクティブな状態に維持することができる。しかしながら、信号存在表示器(signal presence indicator)を用いることもでき、それにより、ライン上におけるデータの存在により受信機及び関連した回路が作動される。従って、定常状態の動作において、ラインはアクティブであっても又はアクティブでなくてもよく、データラインがアクティブであるとき、データ(データはステアリング・データとすることができる)、コマンド(アドレス指定を含む)、格納され又は読み込まれるデータ、或いはクロック保守用伝送が送信される。
本発明の例示的な実施形態のごく一部が上記に詳細に説明されたが、当業者であれば、本発明の新規な教示及び利点から著しく逸脱することなく、例示的な実施形態において多くの修正が可能であることを容易に理解するであろう。従って、全てのこうした修正は、本発明の範囲内に含められることが意図される。

Claims (22)

  1. 第1のノードと、
    前記第1のノードと通信状態にある第2のノードと、
    前記第1のノード及び前記第2のノードに与えられる第1のクロックと、
    前記第1のクロックに対して第1の整数関係を有し、かつ、前記第1のノードの出力と前記第2のノードの出力との間のビットの伝送時間が実質的に一定に維持されるように、前記第1のクロックに対する時間遅延を有する第2のクロックと、
    を含むことを特徴とする相互接続システム。
  2. 前記第1のノードは、バス上で前記第2のノードと通信することを特徴とする、請求項1に記載のシステム。
  3. ビットから構成される文字列が、前記第1のクロックに対して第2の整数関係を有するクロック速度で、前記第1のノードと前記第2のノードの間にシリアル方式で伝送されることを特徴とする、請求項2に記載のシステム。
  4. 前記第1及び第2の整数関係は、同じ整数関係であることを特徴とする、請求項3に記載のシステム。
  5. 受信された文字列は、前記第2のクロックのものより低いクロック速度で、シリアル・データ形式から複数のシリアル・データパケットに変換されることを特徴とする、請求項3に記載のシステム。
  6. 同じビットの後続文字列が同じビットの前記シリアル・データパケットに変換されるように、前記第2のクロックの時間遅延を調整することを特徴とする、請求項5に記載のシステム。
  7. 前記複数のシリアル・データパケットの各々は、メモリ又は別のノードの一方に経路指定されることを特徴とする、請求項5に記載のシステム。
  8. 前記経路指定は、受信された文字列によって決定されることを特徴とする、請求項7に記載のシステム。
  9. 前記文字列が別のノードに経路指定されるとき、前記第2のクロックを用いて、前記データが再シリアル化されることを特徴とする、請求項7に記載のシステム。
  10. 前記再シリアル化されたデータは、2つのノードを接続する複数のラインの1つにおいて伝送されることを特徴とする、請求項9に記載のシステム。
  11. 前記再シリアル化されたデータは、前記複数のラインの選択されたものにバインドされることを特徴とする、請求項10に記載のシステム。
  12. 前記第1のノードの前記出力と前記第2のノードの前記出力との間で測定された、前記レーンの全体の時間遅延が実質的に一定であるように、レーンの時間遅延を調整することを特徴とする、請求項1に記載のシステム。
  13. 前記複数のラインの1つにおける受信された文字列は、前記複数のラインの別のものにおける受信された文字列とは関係なく、シリアル・データ形式から複数のシリアル・データパケットに変換されることを特徴とする、請求項12に記載のシステム。
  14. 前記シリアル・データパケットの数は、前記文字列におけるビット数に等しいことを特徴とする、請求項13に記載のシステム。
  15. 相互接続システムのノードであって、
    データ受信回路と、
    データ送信回路と、
    前記データ受信回路及び前記データ送信回路を接続するスイッチと、
    複数のビットを有する受信された文字列の文字列の第1のビットに対して固定した関係でサンプリング時間を維持するように動作可能な回路と、
    前記第1のビットを再サンプリングして、別のモジュールにおける前記再サンプリングされたビットと対応する再サンプリングされたビットとの間で測定された全体の時間遅延が実質的に一定に維持されるように構成された入力データ・バッファと、
    を含むことを特徴とするノード。
  16. 前記回路は、データ・クロック回復回路であることを特徴とする、請求項15に記載のノード。
  17. 前記入力データ・バッファは、前記データ・クロック速度の整数分の一であるクロック周波数で動作することを特徴とする、請求項15に記載のノード。
  18. 前記スイッチは、前記受信され文字列を、別のノード又はメモリの少なくとも一方に経路指定することを特徴とする、請求項15に記載のノード。
  19. 前記スイッチ出力は、前記データ・クロック速度で伝送されることを特徴とする、請求項15に記載のノード。
  20. 前記入力データ・バッファは、前記受信された文字列を複数のデータパケットに非シリアル化するように動作可能であり、出力データ・バッファは、前記スイッチ出力データを文字列に再シリアル化するように動作可能であることを特徴とする、請求項15に記載のノード。
  21. 前記文字列は、第1のポートの複数のラインの第1のライン上に受信され、かつ、第2のポートの複数のラインの選択可能なライン上の別のノードに伝送されることを特徴とする、請求項15に記載のノード。
  22. 互いに通信状態にある複数のノードを含む相互接続システムを管理する方法であって、前記方法は、
    複数のビットを含むデータの文字列を第1のノードから第2のノードに伝送し、
    前記第2のノードにおいて前記文字列を受信し、
    前記受信されたデータからクロックを回復し、前記文字列に対してサンプリング時間をアライメントし、
    前記クロック周波数の約数で前記サンプリングされたデータを再サンプリングし、前記第1のノードからの前記伝送された文字列と前記第2のノードによって伝送された同じレーン上の文字列との間の全体的な時間遅延が実質的に一定であるように、前記再サンプリング・クロックの前記位相又は時間遅延を調整する、
    ステップを含むことを特徴とする方法。
JP2010528163A 2007-10-05 2008-10-03 メソシンクロナス・データ・バス装置及びデータ伝送方法 Pending JP2011502293A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US99789907P 2007-10-05 2007-10-05
PCT/US2008/078752 WO2009046300A2 (en) 2007-10-05 2008-10-03 Mesosynchronous data bus apparatus and method of data transmission

Publications (1)

Publication Number Publication Date
JP2011502293A true JP2011502293A (ja) 2011-01-20

Family

ID=40526961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010528163A Pending JP2011502293A (ja) 2007-10-05 2008-10-03 メソシンクロナス・データ・バス装置及びデータ伝送方法

Country Status (5)

Country Link
EP (1) EP2201463A4 (ja)
JP (1) JP2011502293A (ja)
KR (1) KR101132321B1 (ja)
CN (1) CN101836193B (ja)
WO (1) WO2009046300A2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101990089B (zh) * 2009-08-07 2013-01-02 宏碁股份有限公司 串流影音资料传输控制方法及其设备
CN103051441B (zh) * 2013-01-23 2015-03-18 和记奥普泰通信技术有限公司 基于fpga的时钟数据恢复处理方法
KR101579054B1 (ko) 2014-03-26 2015-12-21 한국원자력의학원 포도필로톡신 아세테이트를 유효 성분으로 포함하는 방사선치료 증진제
CN106033231B (zh) * 2015-03-16 2020-03-24 联想(北京)有限公司 一种信息处理方法、时钟分频装置及信息处理系统
CN108259134B (zh) * 2018-01-10 2021-04-13 上海灵动微电子股份有限公司 一种基于afp协议的数据传输方法
KR102090554B1 (ko) 2018-04-13 2020-03-18 한국원자력의학원 β-아포피크로포도필린을 유효 성분으로 포함하는 방사선 치료 증진제
CN114127767A (zh) * 2019-08-21 2022-03-01 华为技术有限公司 一种数据处理的设备以及系统
CN112463671A (zh) * 2020-12-04 2021-03-09 上海君协光电科技发展有限公司 一种数据延时系统、方法、装置、计算机设备及存储介质
CN113360130B (zh) * 2021-08-11 2021-10-29 新华三技术有限公司 一种数据传输方法、装置及系统
CN114495998B (zh) * 2021-12-15 2023-11-10 西安紫光国芯半导体有限公司 一种数据存储器以及电子装置
CN117574819A (zh) * 2023-11-14 2024-02-20 上海奎芯集成电路设计有限公司 一种接收数据偏差调整电路和接收数据偏差调整方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62266943A (ja) * 1986-05-14 1987-11-19 Mitsubishi Electric Corp デ−タ転送制御方式
WO2005050941A2 (en) * 2003-11-14 2005-06-02 Intel Corporation Data accumulation between data path and memory device
JP2006065697A (ja) * 2004-08-27 2006-03-09 Hitachi Ltd 記憶デバイス制御装置
JP2006072968A (ja) * 2004-08-31 2006-03-16 Samsung Electronics Co Ltd 非周期クロックを有するメモリモジュール、メモリユニット、ハブ及びこれらを用いた方法
WO2006115896A2 (en) * 2005-04-21 2006-11-02 Violin Memory, Inc. Interconnection system
JP2006528394A (ja) * 2003-05-13 2006-12-14 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2269158B1 (ja) * 1974-04-26 1976-10-15 Ibm France
EP0104294B1 (fr) * 1982-09-28 1987-03-18 International Business Machines Corporation Système de transmission de données
EP0245765B1 (en) * 1986-05-14 1993-09-22 Mitsubishi Denki Kabushiki Kaisha Data transfer control system
US5872959A (en) * 1996-09-10 1999-02-16 Lsi Logic Corporation Method and apparatus for parallel high speed data transfer
US6356610B1 (en) * 1998-06-23 2002-03-12 Vlsi Technology, Inc. System to avoid unstable data transfer between digital systems
US6445719B1 (en) * 1998-08-28 2002-09-03 Adtran Inc. Method, system and apparatus for reducing synchronization and resynchronization times for systems with pulse stuffing
US6889336B2 (en) * 2001-01-05 2005-05-03 Micron Technology, Inc. Apparatus for improving output skew for synchronous integrate circuits has delay circuit for generating unique clock signal by applying programmable delay to delayed clock signal
CN1161901C (zh) * 2001-05-14 2004-08-11 华为技术有限公司 光通信系统中上行高速数据的同步接收方法与电路
US7065101B2 (en) * 2001-11-15 2006-06-20 International Business Machines Corporation Modification of bus protocol packet for serial data synchronization
US20050259692A1 (en) * 2004-05-19 2005-11-24 Zerbe Jared L Crosstalk minimization in serial link systems
US7400862B2 (en) * 2004-10-25 2008-07-15 Skyworks Solutions, Inc. Transmit-receive switch architecture providing pre-transmit isolation
US7434192B2 (en) * 2004-12-13 2008-10-07 Altera Corporation Techniques for optimizing design of a hard intellectual property block for data transmission

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62266943A (ja) * 1986-05-14 1987-11-19 Mitsubishi Electric Corp デ−タ転送制御方式
JP2006528394A (ja) * 2003-05-13 2006-12-14 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド シリアルメモリインターコネクトを介して複数のメモリモジュールに接続されたホストを含むシステム
WO2005050941A2 (en) * 2003-11-14 2005-06-02 Intel Corporation Data accumulation between data path and memory device
JP2007511012A (ja) * 2003-11-14 2007-04-26 インテル コーポレイション データ経路とメモリ装置との間でのデータ蓄積
JP2006065697A (ja) * 2004-08-27 2006-03-09 Hitachi Ltd 記憶デバイス制御装置
JP2006072968A (ja) * 2004-08-31 2006-03-16 Samsung Electronics Co Ltd 非周期クロックを有するメモリモジュール、メモリユニット、ハブ及びこれらを用いた方法
WO2006115896A2 (en) * 2005-04-21 2006-11-02 Violin Memory, Inc. Interconnection system

Also Published As

Publication number Publication date
EP2201463A2 (en) 2010-06-30
EP2201463A4 (en) 2010-10-13
CN101836193A (zh) 2010-09-15
WO2009046300A2 (en) 2009-04-09
WO2009046300A3 (en) 2009-05-22
KR20100098596A (ko) 2010-09-08
KR101132321B1 (ko) 2012-04-05
CN101836193B (zh) 2012-10-03

Similar Documents

Publication Publication Date Title
US20210027825A1 (en) Memory controller
JP2011502293A (ja) メソシンクロナス・データ・バス装置及びデータ伝送方法
US8391039B2 (en) Memory module with termination component
US8112655B2 (en) Mesosynchronous data bus apparatus and method of data transmission

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20111003

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130605

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130905

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130912

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131007

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140310