(57)【要約】【課題】  バス速度増倍器を実現するメモリ・システムを提供する。【解決手段】  このメモリ・システムはメモリ・モジュールのデータ転送速度で動作する少なくとも１つのメモリ・モジュールを備えている。このメモリ・システムはメモリ・コントローラおよび少なくとも１つのメモリ・バスも備えている。このメモリ・バスはメモリ・モジュールのデータ転送速度の４倍のデータ転送速度で動作する。メモリ・コントローラおよびメモリ・モジュールはメモリ・バスを介し、パケット型のマルチ転送インターフェースによって相互接続されている。【選択図】 図８
2006048690.tif 000002
【特許請求の範囲】
【請求項１】
バス速度を増倍するためのメモリ・システムであって、
所与のデータ転送速度で動作する少なくとも１つのメモリ・モジュールと、
メモリ・コントローラと、
メモリ・モジュールの前記データ転送速度の４倍のデータ転送速度で動作する少なくとも１つのメモリ・バスとを備え、
前記メモリ・コントローラおよび前記メモリ・モジュールが前記メモリ・バスを介し、パケット型のマルチ転送インターフェースによって相互接続されている、
メモリ・システム。
【請求項２】
前記パケット型のマルチ転送インターフェースはバス・レベルのエラー・コードの障害を検出・訂正する機能を備えている、
請求項１に記載のメモリ・システム。
【請求項３】
前記メモリ・バスは一方向性バスを含んでいる、
請求項１に記載のメモリ・システム。
【請求項４】
前記一方向性バスはアップストリーム・メモリ・バスおよびダウンストリーム・メモリ・バスを含んでいる、
請求項３に記載のメモリ・システム。
【請求項５】
前記アップストリーム・メモリ・バスは２３個の信号および１個のクロックを含んでいる、
請求項４に記載のメモリ・システム。
【請求項６】
前記２３個の信号は非平衡型であり、前記クロックは平衡型である、
請求項５に記載のメモリ・システム。
【請求項７】
前記ダウンストリーム・メモリ・バスは２２個の信号および１個のクロックを含んでいる、
請求項４に記載のメモリ・システム。
【請求項８】
前記２２個の信号は非平衡型であり、前記クロックは平衡型である、
請求項７に記載のメモリ・システム。
【請求項９】
前記アップストリーム・メモリ・バスおよび前記ダウンストリーム・メモリ・バスは少なくとも１つの予備のビット・レーンを備えている、
請求項４に記載のメモリ・システム。
【請求項１０】
前記予備のビット・レーンは予備のビット用だけに使用され、別の機能用に割り当てられない、
請求項９に記載のメモリ・システム。
【請求項１１】
前記メモリ・バスはアップストリーム・メモリ・バスおよびダウンストリーム・メモリ・バスを備えており、
前記アップストリーム・メモリ・バスおよび前記ダウンストリーム・メモリ・バスは合わせて４５個の非平衡型の高速信号および２個の平衡型クロックを含んでいる、
請求項１に記載のメモリ・システム。
【請求項１２】
前記メモリ・モジュールの各々はメモリ・バスとメモリ・モジュールとの間で信号を変換するバス・ツー・バス型コンバータを備えている、
請求項１に記載のメモリ・システム。
【請求項１３】
前記メモリ・モジュールは前記メモリ・コントローラに対してスレーブ装置として動作する、
請求項１に記載のメモリ・システム。
【請求項１４】
メモリ・モジュールが少なくとも２つ存在する場合、前記メモリ・モジュールの一方は前記メモリ・コントローラに直接に接続されており、前記メモリ・モジュールの他方は前記メモリ・コントローラにカスケード接続されている、
請求項１に記載のメモリ・システム。
【請求項１５】
前記メモリ・モジュールはバスを再駆動する機能を備えている、
請求項１に記載のメモリ・システム。
【請求項１６】
少なくとも１つのメモリ・モジュールと、
メモリ・コントローラと、
少なくとも１つのバスとを備え、
前記メモリ・コントローラと前記メモリ・モジュールとは前記バスを介しパケット型のマルチ転送インターフェースによって直接に相互接続されている、
メモリ・システム。
【請求項１７】
少なくとも１つのメモリ・モジュールと、
メモリ・コントローラと、
少なくとも１つのバスとを備え、
前記メモリ・コントローラと前記メモリ・モジュールとは前記バスを介しパケット型のマルチ転送非平衡信号伝送インターフェースによって直接に相互接続されている、
メモリ・システム。
【請求項１８】
バス速度を増倍するための方法であって、
所与のデータ転送速度の４倍のデータ転送速度で動作しているダウンストリーム・メモリ・バスから、ビット列から成るダウンストリーム・フレームを受信するのに応答して、
受信した、ビット列から成る前記ダウンストリーム・フレームを前記ダウンストリーム・メモリ・バス上の次のメモリ・モジュールへ転送するステップと、
受信した前記ダウンストリーム・フレームをメモリ・モジュールの前記データ転送速度に変換するステップと、
前記変換に応答して前記ダウンストリーム・フレームを処理するステップと、
前記アップストリーム・メモリ・バスからビット列から成るアップストリーム・フレームを受信するのに応答して、
受信した、ビット列から成る前記アップストリーム・フレームを前記アップストリーム・メモリ・バス上の先行するメモリ・モジュールまたはコントローラへ転送するステップと
を備えた
方法。
【請求項１９】
所与のデータ転送速度の４倍のデータ転送速度で動作しているダウンストリーム・メモリ・バスから、ビット列から成るダウンストリーム・フレームを受信するのに応答して、
受信した、ビット列から成る前記ダウンストリーム・フレームを前記ダウンストリーム・メモリ・バス上の次のメモリ・モジュールへ転送するステップと、
受信した前記ダウンストリーム・フレームをメモリ・モジュールの前記データ転送速度に変換するステップと、
前記変換に応答して前記ダウンストリーム・フレームを処理するステップと、
前記アップストリーム・メモリ・バスから、ビット列から成るアップストリーム・フレームを受信するのに応答して、
受信した、ビット列から成る前記アップストリーム・フレームを前記アップストリーム・メモリ・バス上の先行するメモリ・モジュールまたはコントローラへ転送するステップとをコンピュータに実行させる命令群を含んでいる、
プログラム。
【請求項２０】
前記アップストリーム・メモリ・バスおよび前記ダウンストリーム・メモリ・バスの一方または双方がエラー・コードを検出・訂正するビット列を含んでいる、
請求項１９に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はバス速度を増倍するためのメモリ・システムに関する。
【背景技術】
【０００２】
コンピュータのメモリ・システムは長年かけて進化してきたが、不変の属性を数多く保持し続けている。１９８０年代初頭のコンピュータ・メモリ・システム（たとえばルヴァリー（LeVallee）らの米国特許第４４７５１９４号に開示されたものなど）はメモリ・コントローラ、アレイ状のデバイス群を備えたメモリ・アセンブリ（当時、当該発明者らは基本記憶モジュール（basic storage module: ＢＳＭ）と呼んでいた）、バッファ、終端抵抗、および、補助的なタイミング制御機能、ならびに、各メモリ・アセンブリがそれ自身のポイント・ツー・ポイント型のアドレス・バスおよびデータ・バスを介してメモリ・コントローラと通信しうるようにするいくつかのポイント・ツー・ポイント型のバスを備えていた。図１は２つのＢＳＭ、メモリ・コントローラ、保守卓、ならびにＢＳＭとメモリ・コントローラを接続するポイント・ツー・ポイント型のアドレス・バスおよびデータ・バスを備えた１９８０年代初頭のコンピュータ・メモリ・システムの一例を示す図である。
【０００３】
図２はデル（Dell）らの米国特許第５５１３１３５号に由来するものであるが、初期の同期型メモリ・モジュールを示す図である。この同期型メモリ・モジュールは同期型の動的ランダム・アクセス・メモリ（ＤＲＡＭ:dynamicrandom access memory)８、バッファ１２、最適化したピンアウト（pinout）、相互接続、および、動作を容易にする容量性減結合手段を備えている。この特許には、位相ロック・ループ（ＰＬＬ:phaselock loop) などのデバイスを用いることにより、モジュール上でクロックの再駆動を使用することも記載されている。
【０００４】
図３はグルンドン（Grundon)らの米国特許第６５１０１００号に由来するものであるが、既存のマルチドロップ型スタブ・バス・チャネル上に最大４個の登録済みデュアル・インライン・メモリ・モジュールＤＩＭＭ（dualinline memory module)４０を備えうるメモリ・システム１０を単純化して説明する図である。このサブシステムはメモリ・コントローラ２０、外部クロック・バッファ３０、登録済みＤＩＭＭ４０、アドレス・バス５０、制御バス６０、およびデータ・バス７０を備えている。アドレス・バス５０およびデータ・バス７０には終端抵抗９５が設けられている。
【０００５】
図４は図１の構成から進化した１９９０年代のメモリ・システムを示す図である。このメモリ・システムはメモリ・コントローラ４０２と、少なくとも１つの高速ポイント・ツー・ポイント型チャネル４０４とを備えていた。チャネル４０４は各々、バス・ツー・バス型コンバータ・チップ４０６を備えていた。そして、コンバータ・チップ４０６は各々、少なくとも１つの登録済みＤＩＭＭ４１０への接続を可能にする同期型メモリ・インターフェース４０８を備えていた。この構成において、高速のポイント・ツー・ポイント型チャネル４０４はＤＲＡＭのデータ転送速度の２倍の速度で動作した。それにより、バス・ツー・バス型コンバータ・チップ４０６は１個または２個の登録済みＤＩＭＭメモリ・チャネルをＤＲＡＭの最大データ転送速度で動作させることができた。登録済みＤＩＭＭは各々、ＰＬＬ、レジスタ、ＤＲＡＭ、電気的消去可能プログラム可能読み取り専用メモリ（ＥＥＰＲＯＭ:electrically erasable programmable read-only memory) 、終端抵抗、および、他の受動素子を備えていた。
【０００６】
図５に示すように、メモリ・システムは単一のメモリ・モジュール、または「スタブ(stub)」バス上で相互接続した少なくとも２つのメモリ・モジュールを用いて構築することが多かった。図５は図３に示したものに類似したマルチドロップ型スタブ・バス・メモリ構成の単純化した一例である。この構成はコスト、性能、信頼性、およびアップグレード機能の間における妥当なトレードオフを提示するものであるが、スタブ・バスに取り付けうるモジュールの個数について固有の限界を有する。スタブ・バスに取り付けうるモジュールの個数に関する限界はこのバスを介して転送する情報のデータ転送速度に直接に関係する。データ転送速度を増大させるほど、頑健なメモリ動作を保証するために、スタブの本数と長さを低減させる必要がある。スタブ・バスの速度が増大すると一般に、当該バス上のモジュールの個数は減少する。その結果、最適な電気的なインターフェースは単一のモジュールが単一のコントローラに直接に接続されているもの、あるいは、（もしあるとして）少数のスタブに対するポイント・ツー・ポイント型のインターフェース、ということになるが、後者の場合には反射とインピーダンスの不連続とが生じる。大多数のメモリ・モジュールのデータ幅は６４ビットまたは７２ビットであるから、この構成ではアドレス、コマンド、およびデータを転送するのに多数のピンが必要になる。代表的なピンカウントである図５においては、１２０個のピンが特定されている。
【０００７】
図６はペティ（Petty)の米国特許第４７２３１２０号に由来するものであるが、マルチポイント型の通信構成にデイジー・チェーン構成を適用することに関する。この図６のデイジー・チェーン構成は、１次ステーション１に２次ステーション２Ａ、２Ｂ、２Ｃ、２Ｄ、２Ｅが順次接続され、更にモデムの対３Ａ、３Ｂを介して他の２次ステーション２Ｆに接続されている。デイジー・チェーン構成を適用しない場合、マルチポイント型の通信構成は装置群を分離するポイント・ツー・ポイント型のインターフェースを介して各々が接続される複数のポートが必要になる。デイジー・チェーン構成を採用すると、より少ない個数のポート（すなわちチャネル）を用いて制御ステーションを構成することができる。そして、チャネル上の各装置はデイジー・チェーン構成における自身の位置とは無関係に、標準のアップストリーム・プロトコルとダウンストリーム・プロトコルを利用することができる。
【０００８】
図７は米国特許第４７２３１２０号の教示に合わせて実装したデイジー・チェーン型のメモリ・バスを示す図である。メモリ・コントローラ１１１はメモリ・バス３１５に接続されている。そして、メモリ・バス３１５はモジュール３１０ａに接続されている。バス３１５上の情報はモジュール３１０ａ上のバッファ３２０ａにより次のモジュール３１０ｂへ再駆動される。そして、モジュール３１０ｂが、３１０ｎで示すモジュールの位置までバス３１５を再駆動する。各モジュール３１０ａ、３１０ｂ・・・３１０ｎはＤＲＡＭ３１１ａ、３１１ｂ・・・３１１ｎとバッファ３２０ａ、３２０ｂ・・・３２０ｎを備えている。バス３１５はデイジー・チェーン構成を有するように記載されており、各バスは本来的にポイント・ツー・ポイント型である。
【特許文献１】米国特許第４４７５１９４号
【特許文献２】米国特許第５５１３１３５号
【特許文献３】米国特許第６５１０１００号
【特許文献４】米国特許第４７２３１２０号
【発明の開示】
【発明が解決しようとする課題】
【０００９】
デイジー・チェーン型のバスを使用することに対する１つの欠点は、それにより、当該バスに沿って複数のメモリ・モジュールに影響を与える障害の発生確率が増大する、ということである。たとえば、第１のモジュールが機能不全に陥ると、当該バス上の第２のモジュールおよびそれ以降のモジュールも機能不全に陥ってしまう。
【課題を解決するための手段】
【００１０】
本発明の典型的な実例はバス速度増倍器を備えたメモリ・システムを含んでいる。このメモリ・システムはメモリ・モジュールのデータ転送速度で動作する少なくとも１つのメモリ・モジュールを備えている。このメモリ・システムはメモリ・コントローラおよび少なくとも１つのメモリ・バスも備えている。このメモリ・バスはメモリ・モジュールのデータ転送速度の４倍のデータ転送速度で動作する。上記メモリ・コントローラと上記メモリ・モジュールとは上記メモリ・バスを介しパケット型のマルチ転送通信インターフェースによって相互接続されている。
【００１１】
さらなる典型的な実例はバス速度増倍器を実現するメモリ・システムを含んでいる。このメモリ・システムは少なくとも１つのメモリ・モジュール、メモリ・コントローラ、および、少なくとも１つのバスを備えている。上記メモリ・コントローラと上記メモリ・モジュールとは上記バスを介しパケット型のマルチ転送非平衡（single ended: シングルエンド）伝送インターフェースによって相互接続されている。
【００１２】
さらなる典型的な実例はバス速度増倍器を実現する方法を含んでいる。この方法はダウンストリーム・メモリ・バスから、ビットから成るダウンストリーム・フレームを受信することに応答して、上記ダウンストリーム・メモリ・バス上の次のメモリ・モジュールに上記ダウンストリーム・フレームを転送すなわち再駆動するステップを備えている。上記ダウンストリーム・メモリ・バスはメモリ・モジュールのデータ転送速度の４倍のデータ転送速度で動作する。受信したダウンストリームのフレーム（すなわち「パケット」）はメモリ・モジュールのデータ転送速度に変換される。そして、このダウンストリーム・フレームはこの変換に応答して処理される。アップストリーム・メモリ・バスからビットから成るアップストリーム・フレームを受信することに応答して、ビットから成る上記アップストリーム・フレームを上記アップストリーム・メモリ・バス中の先行するメモリ・モジュールまたはメモリ・コントローラに転送する。
【００１３】
本発明のさらなる典型的な実例はバス速度増倍器を実現するマシン読み取り可能なコンピュータ・プログラムでエンコードされた記憶媒体であり、当該記憶媒体はコンピュータに方法を実行させる命令群を含んでいる。その方法はダウンストリーム・メモリ・バスからビットから成るダウンストリーム・フレームを受信することに応答して、上記ダウンストリーム・メモリ・バス上の次のメモリ・モジュールに上記ダウンストリーム・フレームを転送すなわち再駆動するステップを備えている。上記ダウンストリーム・メモリ・バスはメモリ・モジュールのデータ転送速度の４倍のデータ転送速度で動作する。受信したダウンストリームのフレーム（すなわち「パケット」）はメモリ・モジュールのデータ転送速度に変換される。そして、このダウンストリーム・フレームはこの変換に応答して処理される。アップストリーム・メモリ・バスから、ビットから成るアップストリーム・フレームを受信することに応答して、ビットから成る上記アップストリーム・フレームを上記アップストリーム・メモリ・バス中の先行するメモリ・モジュールまたはメモリ・コントローラに転送する。
【発明を実施するための最良の形態】
【００１４】
本発明の典型的な実施形態は任意の２つのサブシステム構成要素の間に非平衡のポイント・ツー・ポイント型相互接続手段を備えた高速かつ高信頼のメモリ・システムのアーキテクチャと相互接続構造を提供するものである。このメモリ・システムはさらにメモリ制御機能、少なくとも１つのメモリ・モジュール、ＤＲＡＭのデータ転送速度に比して４対１の速度比で動作する少なくとも１つの高速バス、および、少なくとも１つのカスケード型モジュールの各々の上にあって高速バス（群）を既存の２倍データ転送速度（ＤＤＲ:double data rate)型のメモリ・インターフェースに変換するバス・ツー・バス型のコンバータ・チップを備えている。このメモリ・モジュールはメモリ・コントローラに対するスレーブ装置として動作し、コマンドに対して確定的または非確定的な態様で応答するが、動作上のエラーを報告する場合以外に想定外のアクティビティを自発的に開始することはない。カスケード接続されたバスにはメモリ・モジュールを追加することができる。その場合、各モジュールにはカスケード接続された当該バス上にある各モジュールを一意に選択することを可能にするアドレスを割り当てる。本発明の典型的な実施形態はパケット型のマルチ転送インターフェースを備えている。このインターフェースはピンカウントが少ない場合であってもメモリ操作を行うことを可能にする革新的な通信プロトコルを利用している。これにより、カスケード接続されたバス上にある構成要素間においてアドレス、コマンド、およびデータを複数サイクルにわたって転送するとともに、それらを再構築している。そして、将来の受信者が使用する前にエラーを訂正している。
【００１５】
図８はバッファ付きメモリ・モジュール８０６（バッファ装置はたとえばメモリ・モジュール８０６内に備えられている）がメモリ・コントローラ８０２と通信する場合における、本発明の典型的な実施形態が使用するカスケード型のメモリ構成を示す図である。この場合、このメモリ構成には、高速のポイント・ツー・ポイント型のバス８０４を介して少なくとも１つのメモリ・モジュール８０６と通信するメモリ・コントローラ８０２が含まれている。図８に示す典型的な実施形態における各バス８０４は約５０本の高速ワイヤを備え、アドレス、コマンド、データ、およびクロックの転送の用に供している。上述した従来技術において説明したポイント・ツー・ポイント型のバスを使用すると、バスの構成を最適化して、きわめて大きなデータ転送速度を可能にするとともに、複数のサイクルにわたってデータを転送することによりバスのピンカウントを低減させることが可能になる。図４にはメモリ・コントローラをバス・コンバータに接続するバスのうちの任意の１つのもののデータ転送速度（たとえばピン当たり最大１０６６Ｍｂ／ｓ）と、バス・コンバータと少なくとも１つのメモリ・モジュールとの間にあるバスのうちの任意の１つのもののデータ転送速度（たとえばピン当たり最大５３３Ｍｂ／ｓ）との比が２対１であるメモリ・システムを示したが、図８に示す本発明の典型的な実施形態では４対１のバス速度比を実現してバスの効率を最大化するとともにピンカウントを最小化している。
【００１６】
ポイント・ツー・ポイント型の相互接続によってデータ転送速度をより大きくすることが可能になるが、メモリ・システムの全体的な高効率性を達成するにはメモリ・モジュール８０６の個数とチャネル当たりのメモリ装置の個数とを妥当な値に維持する必要がある（歴史的にはメモリ・モジュール当たり４〜３６個のチップを備えた４個のメモリ・モジュールであるが、チャネル当たり最大８個のメモリ・モジュールからチャネル当たり最小１個のメモリ・モジュールまでありうる）。ポイント・ツー・ポイント型のバスを使用すると、メモリ・モジュールをカスケード接続して各メモリ・モジュールをメモリ・コントローラ８０２のほかに他のメモリ・モジュールにも相互接続しうるようにするために、各メモリ・モジュールにはバスを再駆動する機能が必要になる。
【００１７】
図９はメモリ・モジュール８０６がすべてバッファ付きメモリ・モジュールである場合に本発明の典型的な実施形態が使用する、カスケード接続されたメモリ・モジュール群と一方向性のバス群とを備えたメモリ構成を示す図である。カスケード構成におけるメモリ・モジュール８０６が備えている機能の１つは、メモリ・バス上の信号を他のメモリ・モジュール８０６またはメモリ・コントローラ８０２に送付する再駆動機能である。図９にはメモリ・コントローラ８０２と４個のメモリ・モジュール８０６ａ、８０６ｂ、８０６ｃ、８０６ｄとが含まれている。これらのメモリ・モジュールは２つのメモリ・バス（ダウンストリーム・メモリ・バス９０４とアップストリーム・メモリ・バス９０２）の各々の上にあるとともに、直接的な態様またはカスケード型の態様でメモリ・コントローラ８０２に接続されている。メモリ・モジュール８０６ａは直接的な態様でメモリ・コントローラ８０２に接続されている。メモリ・モジュール８０６ｂ、８０６ｃ、８０６ｄはカスケード型の態様でメモリ・コントローラ８０２に接続されている。
【００１８】
本発明の典型的な実施形態はカスケード型のメモリ構成においてメモリ・コントローラ８０２とメモリ・モジュール８０６ａ（「ＤＩＭＭ＃１」）との間、ならびに、後続する各メモリ・モジュール８０６ｂ、８０６ｃ、８０６ｄ（「ＤＩＭＭ＃２」、「ＤＩＭＭ＃３」、および「ＤＩＭＭ＃４」）の間に２つの一方向性のバスを備えている。ダウンストリーム・メモリ・バス９０４は２２個の非平衡型の信号、および平衡型（differential: ディファレンシャル）のクロック対から成る。このダウンストリーム・メモリ・バス９０４を用いてアドレス、制御、および誤り訂正符号（ＥＣＣ)ビットのダウンストリームをメモリ・コントローラ８０２から、カスケード型メモリ・チャネルに実装された少なくとも１つのメモリ・モジュール８０６に数クロック・サイクルにわたって転送する。アップストリーム・メモリ・バス９０２は２３個の非平衡型の信号、および平衡型のクロック対から成る。このアップストリーム・メモリ・バス９０２を用いてバス・レベルのデータ・ビットおよびＥＣＣビットのアップストリームを転送元のメモリ・モジュール８０６からメモリ・コントローラ８０２に転送する。このメモリ構成、および、ＤＲＡＭのデータ転送速度（たとえばピン当たり４００〜８００Ｍｂ／ｓ）と一方向性のメモリ・バスのデータ転送速度（たとえばピン当たり１．６〜３．２Ｇｂ／ｓ）との間に４対１型のデータ転送速度増倍器を使用すると、メモリ・コントローラ８０２の、メモリ・チャネル当たりの信号ピンカウントを約１２０ピンから約５０ピンに減少させることができる。
【００１９】
図１０は本発明の典型的な実施形態が使用するバッファ付きメモリ・モジュール８０６の前面図１００６および背面図１００８である。本発明の典型的な実施形態において、各メモリ・モジュール８０６は長さが約１５．２４ｃｍ（約６インチ）で高さが約３．８１ｃｍ（約１．５インチ）であり、１８個のＤＲＡＭ配置場所、バッファ装置１００２、および、図示しないが当技術分野で既知の多数の小型素子（たとえばキャパシタ、抵抗器、ＥＥＰＲＯＭなど）を備えた空のカードを備えている。本発明の典型的な実施形態では、上記カードの寸法は長さが１５１．３５ｍｍで高さが３０．５ｍｍである。本発明の典型的な実施形態では、バッファ装置１００２は図１０の前面図に示すように、メモリ・モジュール８０６の表側の中央領域に設ける。同期型ＤＲＡＭ（ＳＤＲＡＭ）１００４はバッファ装置１００２の両側、および、図１０の背面図に示すように、メモリ・モジュール８０６の裏側に設ける。この構成を用いると、バッファ装置１００２への高速書き込み、および、バッファ装置からＳＤＲＡＭ１００４への信号の転送が容易になる。
【００２０】
図１１は本発明の典型的な実施形態が使用するバッファ付きモジュールの配線システムを示す図である。図１１は図１０に示したメモリ・モジュール８０６を模式的に示す図であり、陰影付き矢印は主要な信号の流れを表している。この信号の流れにはアップストリーム・メモリ・バス９０２、ダウンストリーム・メモリ・バス９０４、アドレス／コマンド・バス１１０２、１１０６、および、データ・バス１１０４、１１０８が含まれている。本発明の典型的な実施形態において、バッファ装置１００２（メモリ・インターフェース・チップとも呼ばれる）はアドレス信号およびコマンド信号の２つのコピーをＳＤＲＡＭ１００４に右側のアドレス／コマンド・バス１１０６および左側のアドレス／コマンド・バス１１０２を用いて供給する。その際、バッファ装置１００２の右側から出て、当該右側に位置するＳＤＲＡＭ１００４、およびバッファ装置１００２の背面右側に位置するＳＤＲＡＭ１００４に至る。また、バッファ装置１００２の左側から出て、当該左側に位置するＳＤＲＡＭ１００４、およびバッファ装置１００２の背面左側に位置するＳＤＲＡＭ１００４に接続する。同様に、バッファ装置１００２の右側のＳＤＲＡＭ１００４に宛てたデータ・ビットはバッファ装置１００２の右側から出て、右側のデータ・バス１１０８に乗る。バッファ装置１００２の左側のＳＤＲＡＭ１００４に宛てたデータ・ビットはバッファ装置１００２の左側から出て、左側のデータ・バス１１０４に乗る。高速のアップストリーム・メモリ・バス９０２およびダウンストリーム・メモリ・バス９０４はバッファ装置１００２の下部から出て、メモリ・コントローラ、または、このメモリ・モジュール８０６の上流（アップストリーム）または下流（ダウンストリーム）にある他のメモリ・モジュールに接続するが、それは用途によって決まる。バッファ装置１００２はデータ転送速度がメモリ・モジュールの４倍である信号を受信した後、それらをメモリ・モジュールのデータ転送速度の信号に変換する。この点については、図１２を参照して後述する。
【００２１】
図１２は本発明の典型的な実施形態が使用する４対１型のバス速度増倍器を示すバスおよびＳＤＲＡＭのタイミング図である。図１２は好適な実施形態において、１書き込みサイクルおけるバス・タイミングの関係を示す単純化した「書き込み」タイミング図である。他のサイクル（たとえば読み取りサイクル）についても、これと同じ方法をとることができる。高速のバス・クロック（ｈｓｂ＿ｃｌｋ）１３０２は高速のデータとともに伝播し、メモリ・コントローラ８０２から第１のメモリ・モジュール８０６（すなわちＤＩＭＭ）まで下る平衡型クロックの正側用の表記である。ｈｓｂ＿ｃｌｋ１３０２は非平衡型であるものとして示されているけれども、本発明の典型的な実施形態では、平衡型のクロックを用いて、クロックが外部の雑音と結合に対して影響を受ける度合いを低減させている。高速のデータ信号（ｈｓｂ＿ｄａｔａ）１２０４はダブル・データ・レート（２倍のデータ転送速度）（すなわちクロックの両端においてデータが有効になる）速度で動作する８連続バースト転送を示している。このバーストは、この例では、第１のメモリ・モジュール８０６の設置場所に宛てた、アドレス、コマンド、およびデータから成る単一のフレームを構成している。上述した２２ビットのダウンストリーム・バス幅、および、この８連続バーストによって、完全なフレームは最大１７６個の一意のビット列を構成しうるが、何ビットになるのかはこれらビット列の割り当て方法すなわち使用方法とバス上の実際のワイヤの状態とによって決まる。この幅は図５のメモリ・モジュールが必要とするものとして定義されている約１２０個のメモリ信号を供給するのに十分すぎるから、フレーム中に追加の情報を含め、システム全体の信頼性、障害耐性、もしくは性能またはこれらすべてをさらに向上させることができる。
【００２２】
また、図１２に示すように、上記８ビットは４個のｈｓｂ＿ｃｌｋサイクル時間にわたって処理される。この時点において、この例では、この高速バス上にさらなるアクティビティは示されていない。メモリ・モジュール８０６上のローカルのメモリ・クロック（ｍ＿ｃｌｋ）１２０８はｈｓｂ＿ｃｌｋ１２０２から抽出するものであるが、ｈｓｂ＿ｃｌｋ１２０２の４分の１の周波数で動作する非平衡型の信号ｍ＿ｃｌｋ（０：５）として示されている。非平衡型のクロックとして示されているけれども、本発明の典型的な実施形態では、ｍ＿ｃｌｋ１２０８は平衡型のクロックとしても動作しうる。ダブル・データ・レート（ＤＤＲ２）型のメモリ・デバイス（すなわちメモリ・モジュール８０６上のＳＤＲＡＭ１００４）に対する「書き込み」操作を指定するデコード済みのメモリ・コマンドが、ｍ＿ｃｍｄ１２０６と表示された信号の上に示されている。このコマンドは高速バスからデコードした後、バッファがＤＤＲ２  ＤＲＡＭ１００４に転送する。これにより、ＳＤＲＡＭ１００４におけるクロックの立ち上がり端より前にＳＤＲＡＭ１００４に到着することが保証される。ＤＤＲ２  ＤＲＡＭ１００４に書き込まれる７２ビットのデータがｍ＿ｄｑ（０：７１）として示されている。このデータは書き込みコマンドを（ｍ＿ｃｌｋ１２０８に関連するＤＤＲ信号として）デコードした後、完全な１メモリ・クロック後にＳＤＲＡＭ１００４に到着するように示されている。本発明の典型的な実施形態では、このデータすなわちｍ＿ｄｑ（０：７１）は非平衡型である。９個のＤＤＲ型データ・ストローブ（ｍ＿ｄｑｓ＿ｐ）１２１２も（非平衡型の信号として）示されているが、これらはＤＤＲ２  ＳＤＲＡＭ１００８に対して４分の１クロック・サイクルだけ先行してスイッチングしている。これにより、このストローブは有効な書き込みデータ・ビットの各々のほぼ中央部においてスイッチングすることが保証される。本発明の典型的な実施形態では、ｍ＿ｄｑｓ＿ｐ１２１２は平衡型である。この図にはＳＤＲＡＭ１００４への４連続バーストのデータ・ビット（ｗｄ０〜ｗｄ３）が示されている。このメモリ・デバイスにはメモリ・クロック・サイクルごとに７２ビットのメモリ・データが供給される。このように、より遅いメモリ・モジュール８０６のデータ転送速度が、当該メモリ・モジュールの４倍の速度で動作する高速のメモリ・バスに適合している。
【００２３】
図１３はメモリ・コントローラ８０２からメモリ・モジュール８０６へ流下する情報を転送するのに本発明の典型的な実施形態が使用するダウンストリーム・フレームのフォーマットを示す図である。本発明の典型的な実施形態では、ダウンストリーム・フレームは８個の転送から構成されている。各転送は２２個の信号と１個の平衡型クロック（合計２４本のワイヤ）を備えている。このフレームはさらに８本のコマンド・ワイヤ（ｃ０〜ｃ７）１３０８、９本のデータ・ワイヤ（ｄｉ０３〜ｄｉ８）１３０６、４本のバスＥＣＣ（Error Correcting Code:誤り訂正符号)ワイヤ（ｅｃｃ０〜ｅｃｃ３）１３０４、および１本の予備のワイヤ（spare)１３０２から成る。図１２のタイミング図で参照した７２個のデータ・ビットは図１３ではビットｄｉ０〜ｄｉ８として示されているが、９本のワイヤから成り、各フレームごとに各ワイヤ上には８個の転送が存在する。各データ・ビット（および他のビット）の番号付けは特定の転送に加え使用するワイヤに基づいている。Ｄ３４は（ビット０〜８のうちの）データ・ビット３と（転送０〜７のうちの）転送４とを指している。コマンド・ビット・フィールドはｃ０〜ｃ７として示されているが、８個の転送にわたってモジュールに供給される６４ビットの情報から成る。ＥＣＣビット・フィールド（ｅｃｃ０〜ｅｃｃ３）は８個の転送にわたる３２個のビット配置場所から成るが、実際には１６ビットから成るグループ群にフォーマットされている。１６ビットのパケットの各々は４本のワイヤの各々の上の４個の転送から成り、４個のバス転送から成る各グループにわたりバス・レベルの障害の検出と訂正が行われる。予備のビット配置場所はコマンド・フィールド、データ・フィールド、およびＥＣＣフィールド中のビット群を転送するのに使用する２１本のワイヤ（ビット・レーン（bitlane)とも定義される）のうちの任意のものを論理的に置換するのに使用する。ただし、これを行うのは、これらのビット・レーンのうちの１本で障害が発生し、それがシステムによって割り当て済みの障害閾値限界を超えるエラーを引き起こすものである場合である。本発明の典型的なこの実施形態を使用すると、１７６個のビット配置場所が利用可能である場合、１６８個はメモリ・モジュール８０６への情報の転送用に利用することができ、それら１６８個のビット配置場所のうち、３２個のビット配置場所はさらにバス転送自身に関するＥＣＣ保護を実現するのに割り当てる。これにより、合計１３６個のビット配置場所がメモリ・モジュール８０６への情報の転送用に使用しうるようになる。
【００２４】
本発明の典型的な実施形態によれば動作頻度を高めるのに使用しうるバス速度増倍器が実現するが、それはポイント・ツー・ポイント構成を採用することによって行い、しかもデイジー・チェーン構成によってシステムの密度を高めながら行う。
【００２５】
上述したように、本発明の実施形態はコンピュータによって実現されるプロセス、およびそれらのプロセスを実行する装置の形態で実現することができる。また、本発明の実施形態は有形の媒体（たとえばフロッピー（Ｒ）ディスケット、ＣＤ−ＲＯＭ、ハード・ディスク駆動装置、または、任意の他のコンピュータ読み取り可能な記憶媒体）中に記録した命令群を含むコンピュータ・プログラム・コードであって、当該コンピュータ・プログラム・コードをコンピュータにロードして実行すると、当該コンピュータは本発明を実施する装置になる、コンピュータ・プログラム・コードの形態でも実現することができる。さらに、本発明はコンピュータ・プログラム・コードの形態でも実現することができるが、その場合、たとえば記憶媒体中に格納するものであるか、あるいは、コンピュータにロードし、もしくは、コンピュータが実行し、または、双方を行うものであるか、あるいは、何らかの伝送媒体（たとえば電気的な配線またはケーブル、光ファイバ、電磁波など）中を伝送するものであるかとは無関係である。汎用マイクロプロセッサ上に実装すると、当該コンピュータ・プログラム・コードのセグメント群は特定の論理回路を形成するように当該マイクロプロセッサを構成する。
【００２６】
以上、典型的な実施形態を参照して本発明を記述したが、本発明の範囲を逸脱することなく、様々な変更をなしうるとともに、それらの構成要素を均等物で置換しうる、ということは当業者が理解しうる。また、本発明の本質的な範囲を逸脱することなく、特定の状況または材料を本発明の教示に適応させる多くの変更をなすことができる。したがって、本発明は本発明を実施するのに最良の形態であると考えられるものとして開示した特定の実施形態に限定されない。本発明は特許請求の範囲の内に含まれる実施形態をすべて含むことができる。さらに、用語「第１の」や「第２の」などを使用しているが、それらは順序を示すものでも重要性を示すものでもない。そうではなく、用語「第１の」や「第２の」などは１つの構成要素を他の構成要素から区別するために使用されている。
【図面の簡単な説明】
【００２７】
【図１】個別のポイント・ツー・ポイント型リンクを介して２個のバッファ付きメモリ・アセンブリに接続された従来技術に係るメモリ・コントローラを示す図である。
【図２】バッファ装置を備えた従来技術に係る同期型メモリ・モジュールを示す図である。
【図３】登録済みＤＩＭＭを使用する従来技術に係るメモリ・システムを示す図である。
【図４】ポイント・ツー・ポイント型チャネル、登録済みＤＩＭＭ、および２：１型バス速度増倍器を備えた従来技術に係るメモリ・システムを示す図である。
【図５】マルチドロップ型メモリ「スタブ」バスを使用する従来技術に係るメモリ構成を示す図である。
【図６】そうでない場合には複数のポートが必要になるマルチポイント型の通信構成における従来技術に係るデイジー・チェーン構成を示す図である。
【図７】メモリ・コントローラとメモリ・モジュールとの間における従来技術に係るデイジー・チェーン接続を示す図である。
【図８】本発明の典型的な実施形態が使用するカスケード型のメモリ構成を示す図てある。
【図９】本発明の典型的な実施形態が使用する、カスケード接続されたメモリ・モジュールと一方向性のバスとを備えたメモリ構成を示す図である。
【図１０】本発明の典型的な実施形態が使用するバッファ付きメモリ・モジュールを示す図である。
【図１１】本発明の典型的な実施形態が使用する、バッファ付きモジュールの配線システムを示す図である。
【図１２】本発明の典型的な実施形態が使用する４対１型バス速度増倍器を示す、バスとＤＲＡＭのタイミング図である。
【図１３】本発明の典型的な実施形態が使用するダウンストリーム・フレームのフォーマットを示す図である。
【符号の説明】
【００２８】
１    １次ステーション
２Ａ  ２次ステーション
２Ｂ  ２次ステーション
２Ｃ  ２次ステーション
２Ｄ  ２次ステーション
２Ｅ  ２次ステーション
２Ｆ  ２次ステーション
３Ａ  モデム
３Ｂ  モデム
１０  メモリ・システム
１２  バッファ
２０  メモリ・コントローラ
３０  クロック・バッファ
４０２  メモリ・コントローラ
４０６  バス・コンバータ
４０８  メモリ・バス
４１０  少なくとも１つの登録済みＤＩＭＭ
８０２  メモリ・コントローラ
８０４  約５０本のワイヤ
８０６  約５０本のワイヤ
９０２  アップストリーム・バス
９０４  ダウンストリーム・バス
１００２  バッファ
１００６  前面図
１００８  背面図
１３０２  予備ビット
１３０４  Ｅ：ＥＣＣチェック・ビット
１３０６  Ｄ：書き込みデータ・ビット
１３０８  Ｃ：コマンド・ビット
【図１】
2006048690.tif 000003
【図２】
2006048690.tif 000004
【図３】
2006048690.tif 000005
【図４】
2006048690.tif 000006
【図５】
2006048690.tif 000007
【図６】
2006048690.tif 000008
【図７】
2006048690.tif 000009
【図８】
2006048690.tif 000010
【図９】
2006048690.tif 000011
【図１０】
2006048690.tif 000012
【図１１】
2006048690.tif 000013
【図１２】
2006048690.tif 000014
【図１３】
2006048690.tif 000015