(57)【要約】  メモリシステム（１０）および方法は、書き込みデータを、メモリコントローラ（１４）から数個のメモリデバイス（２０、２６）に結びつける単方向下流バス（３０）と、読み出しデータを、メモリデバイス（２０、２６）からメモリコントローラ（１４）に結びつける単方向上流バスとを含む。メモリデバイスの各々は、書き込みバッファを含み、書き込みバッファは、各メモリデバイスが読み出しメモリ要求を処理するのにビジーでなくなるまで、書き込みデータを記憶している。下流バス（３０）は、メモリコマンドと、行アドレスおよび列アドレスとのうちの少なくとも一方を、メモリコントローラ（１４）からメモリデバイス（２０、２６）に結びつけるために使用することもできる。
2008511904.tif 000002
【特許請求の範囲】
【請求項１】
複数の出力端子および複数のデータ入力端子を有するメモリコントローラと、
複数のデータ出力端子および複数の入力端子を有する少なくとも１つのメモリデバイスと、
前記メモリコントローラの前記出力端子を前記メモリデバイスの前記入力端子に結合する下流バスであって、前記メモリコントローラの前記データ入力端子および前記メモリデバイスの前記データ出力端子から隔離される下流バスと、
前記メモリデバイスの前記データ出力端子を前記メモリコントローラの前記データ入力端子に結合する上流バスであって、前記メモリコントローラの前記出力端子および前記メモリデバイスの前記入力端子から隔離される上流バスと
を備えたことを特徴とするメモリシステム。
【請求項２】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合された書き込みバッファをさらに含み、前記書き込みバッファは、前記メモリデバイスが読み出し要求を処理していないときに、少なくとも１つの書き込み要求からの書き込みデータを記憶し、前記メモリデバイス内に記憶するために前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項１に記載のメモリシステム。
【請求項３】
前記メモリコントローラは、前記メモリデバイスが読み出し要求を処理していないときに、予め定められたメモリコマンドを出力するよう動作可能であり、前記予め定められたメモリコマンドは、前記下流バスを介して前記メモリデバイスの前記入力端子に結びつけられ、前記メモリデバイスは、前記予め定められたメモリコマンドに応答して、前記メモリデバイス内に記憶するために、前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項２に記載のメモリシステム。
【請求項４】
前記予め定められたコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項３に記載のメモリシステム。
【請求項５】
前記メモリコントローラは、メモリコマンドと、行アドレスおよび列アドレスとを、前記メモリコントローラの前記出力端子に結びつけるようさらに動作可能であり、前記メモリコマンドと、前記行アドレスおよび前記列アドレスとは、前記下流バスを介して前記メモリデバイスに結びつけられることを特徴とする請求項１に記載のメモリシステム。
【請求項６】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合されたコマンド／アドレスレジスタをさらに含み、前記コマンド／アドレスレジスタは、前記下流バスを介して、前記メモリデバイスに結びつけられた前記メモリコマンドと、前記行アドレスおよび前記列アドレスとを記憶するよう動作可能であることを特徴とする請求項５に記載のメモリシステム。
【請求項７】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項１に記載のメモリシステム。
【請求項８】
前記メモリコントローラは、クロック信号を出力するようさらに動作可能であり、前記メモリデバイスは、ＳＤＲＡＭデバイスと、クロック入力端子とを含み、前記メモリシステムは、前記クロック信号を、前記メモリコントローラから前記メモリデバイスの前記クロック入力端子に結びつけるクロック信号線をさらに含むことを特徴とする請求項７に記載のメモリシステム。
【請求項９】
書き込みコマンドに応答して書き込みデータを記憶し、読み出しコマンドに応答して読み出しデータを出力するよう動作可能なメモリセルの少なくとも１つのバンクと、
前記メモリセルの少なくとも１つのバンクに結合された複数のデータ入力端子であって、前記書き込みデータは、前記データ入力端子から前記メモリセルの少なくとも１つのバンクに結びつけられる、複数のデータ入力端子と、
前記メモリセルの少なくとも１つのバンクに結合された複数のデータ出力端子であって、前記読み出しデータは、前記メモリセルの少なくとも１つのバンクから前記データ出力端子に結びつけられ、前記データ出力端子は、前記データ入力端子から隔離される、複数のデータ出力端子と
を備えたことを特徴とするメモリデバイス。
【請求項１０】
前記データ入力端子に結合された書き込みバッファをさらに備え、前記読み出しデータが前記メモリセルの少なくとも１つのバンクから結びつけられていないときに、前記書き込みバッファは、少なくとも１つの書き込み要求からの前記書き込みデータを記憶し、前記書き込みデータを、前記書き込みバッファから前記メモリセルの少なくとも１つのバンクに結びつけるよう動作可能であることを特徴とする請求項９に記載のメモリデバイス。
【請求項１１】
前記メモリデバイスは、予め定められたメモリコマンドの受信に応答して、前記書き込みデータを、前記書き込みバッファから前記メモリセルの少なくとも１つのバンクに結びつけるよう動作可能であることを特徴とする請求項１０に記載のメモリデバイス。
【請求項１２】
前記予め定められたコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項１１に記載のメモリデバイス。
【請求項１３】
前記メモリデバイスは、第１の組の入力端子に結合されたコマンド／アドレスレジスタをさらに含み、前記コマンド／アドレスレジスタは、前記メモリデバイスの前記第１の組の入力端子に結びつけられたメモリコマンドと、行アドレスおよび列アドレスとを記憶するよう動作可能であることを特徴とする請求項９に記載のメモリデバイス。
【請求項１４】
前記第１の組の入力端子は、前記データ入力端子を含むことを特徴とする請求項１３に記載のメモリデバイス。
【請求項１５】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項９に記載のメモリデバイス。
【請求項１６】
前記メモリデバイスは、ＳＤＲＡＭデバイスと、クロック入力端子とを含むことを特徴とする請求項１５に記載のメモリデバイス。
【請求項１７】
プロセッサバスを有するプロセッサと、
前記プロセッサバスを介して前記プロセッサに結合され、コンピュータシステムに対してデータの入力を可能にする入力デバイスと、
前記プロセッサバスを介して前記プロセッサに結合され、前記コンピュータシステムからデータの出力を可能にする出力デバイスと、
前記プロセッサバスを介して前記プロセッサに結合された大量データ記憶デバイスであって、前記大量データ記憶デバイスからデータの読み出しを可能にする、大量データ記憶デバイスと、
前記プロセッサバスを介して前記プロセッサに結合されたメモリコントローラであって、複数のメモリデバイス出力端子および複数のメモリデバイスデータ入力端子を有するメモリコントローラと、
複数のデータ出力端子および複数の入力端子を有する少なくとも１つのメモリデバイスと、
前記メモリコントローラの前記メモリデバイス出力端子を前記メモリデバイスの前記入力端子に結合する下流バスであって、前記下流バスは、前記メモリコントローラの前記メモリデバイスデータ入力端子および前記メモリデバイスの前記データ出力端子から隔離される、下流バスと、
前記メモリデバイスの前記データ出力端子を前記メモリコントローラの前記メモリデバイスデータ入力端子に結合する上流バスであって、前記上流バスは、前記メモリコントローラの前記メモリデバイス出力端子および前記メモリデバイスの前記入力端子から隔離される、上流バスと
を備えたことを特徴とするコンピュータシステム。
【請求項１８】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合された書き込みバッファをさらに含み、前記書き込みバッファは、前記メモリデバイスが読み出し要求を処理していないときに、少なくとも１つの書き込み要求からの書き込みデータを記憶し、前記メモリデバイス内に記憶するために前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項１７に記載のコンピュータシステム。
【請求項１９】
前記メモリコントローラは、前記メモリデバイスが読み出し要求を処理していないときに、予め定められたメモリコマンドを出力するよう動作可能であり、前記予め定められたメモリコマンドは、前記下流バスを介して前記メモリデバイスの前記入力端子に結びつけられ、前記メモリデバイスは、前記予め定められたメモリコマンドに応答して前記メモリデバイス内に記憶するために、前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項１８に記載のコンピュータシステム。
【請求項２０】
前記予め定められたコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項１９に記載のコンピュータシステム。
【請求項２１】
前記メモリコントローラは、メモリコマンドと、行アドレスおよび列アドレスとを、前記メモリコントローラの前記出力端子に結びつけるようさらに動作可能であり、前記メモリコマンドと、前記行アドレスおよび前記列アドレスとは、前記下流バスを介して前記メモリデバイスに結びつけられることを特徴とする請求項１７に記載のコンピュータシステム。
【請求項２２】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合されたコマンド／アドレスレジスタをさらに含み、前記コマンド／アドレスレジスタは、前記下流バスを介して前記メモリデバイスに結びつけられた前記メモリコマンドと、前記行アドレスおよび前記列アドレスとを記憶するよう動作可能であることを特徴とする請求項２１に記載のコンピュータシステム。
【請求項２３】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項１７に記載のコンピュータシステム。
【請求項２４】
前記メモリコントローラは、クロック信号を出力するようさらに動作可能であり、前記メモリデバイスは、ＳＤＲＡＭデバイスと、クロック入力端子とを含み、前記メモリシステムは、前記クロック信号を、前記メモリコントローラから前記メモリデバイスの前記クロック入力端子に結びつけるクロック信号線をさらに含むことを特徴とする請求項２３に記載のコンピュータシステム。
【請求項２５】
メモリコントローラとメモリデバイスとの間でデータを結びつける方法であって、
書き込みデータを、前記メモリコントローラから第１の単方向データバスを介して前記メモリデバイスに結びつけることと、
読み出しデータを、前記メモリデバイスから第２の単方向データバスを介して前記メモリコントローラに結びつけることと
を備えることを特徴とする方法。
【請求項２６】
複数の書き込み要求に対する前記書き込みデータをメモリセル配列に結びつけることなく、前記書き込みデータを前記メモリデバイス内に保持することと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなるまで待つことと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなったときに、前記保持された書き込みデータを前記メモリセル配列に結びつけることと
をさらに備えることを特徴とする請求項２５に記載の方法。
【請求項２７】
前記保持された書き込みデータを前記メモリセル配列に前記結びつける動作は、前記メモリデバイスが受信した予め定められたメモリコマンドに応答して、前記保持された書き込みデータを前記メモリセル配列に結びつけることを含むことを特徴とする請求項２６に記載の方法。
【請求項２８】
前記予め定められたメモリコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項２７に記載の方法。
【請求項２９】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項２５に記載の方法。
【請求項３０】
メモリコマンドを、前記メモリコントローラから前記第１の単方向データバスを介して前記メモリデバイスに結びつけること
をさらに備えることを特徴とする請求項２５に記載の方法。
【請求項３１】
複数のメモリ要求に対する前記メモリコマンドを処理することなく、前記メモリコマンドを前記メモリデバイス内に保持することと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなるまで待つことと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなったときに、前記保持されたメモリコマンドを処理することと
をさらに備えることを特徴とする請求項３０に記載の方法。
【請求項３２】
前記メモリコマンドに対する応答を、前記メモリデバイスから前記第２の単方向データバスを介して前記メモリコントローラに結びつけること
をさらに備えることを特徴とする請求項３０に記載の方法。
【請求項３３】
前記メモリコマンドに対する前記応答は、読み出しコマンドに対する読み出し応答と、書き込みコマンドに対する書き込み応答とを含み、前記読み出し応答は、前記読み出しデータを含むことを特徴とする請求項３２に記載の方法。
【請求項３４】
メモリアドレスを、前記メモリコントローラから前記第１の単方向データバスを介して前記メモリデバイスに結びつけること
をさらに備えることを特徴とする請求項２５に記載の方法。
【請求項３５】
前記メモリデバイスは、複数のメモリバンクを含み、前記方法は、書き込みデータを、前記第１の単方向データバスから前記メモリバンクのうちの１つに結びつけるのと同時に、読み出しデータを、前記メモリバンクのうちの別の１つから前記第２の単方向データバスに結びつけることをさらに備えることを特徴とする請求項２５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本出願は、２００４年８月２７日に出願した「単方向データバスを有するメモリシステムおよび方法」という名称の米国特許出願番号１０／９２８４１１号が有する出願日の利益を主張する。米国特許出願番号１０／９２８４１１号は、参照することにより本明細書に組み込まれる。
【０００２】
本発明は、メモリシステムに関し、より詳細には、メモリコントローラと、１つまたは複数のメモリデバイスとの間で、コマンド、アドレスおよびデータ信号を結びつける（couple）システムおよび方法に関する。
【背景技術】
【０００３】
コンピュータシステムは、「ＤＲＡＭ（Dynamic Random Access Memory）」デバイスなどのメモリデバイスを使用して、プロセッサによりアクセスされるデータを記憶する。こうしたＤＲＡＭデバイスは通常、コンピュータシステム内のシステムメモリとして使用される。一般的なコンピュータシステムでは、プロセッサは、プロセッサバスおよびメモリコントローラを介して、システムメモリと通信する。システムメモリは一般的に、メモリモジュール内に配置され、各メモリモジュールは、複数のメモリデバイスを有し、メモリモジュールは、メモリバスを介してメモリコントローラに結合される。プロセッサは、メモリ要求を発行する。メモリ要求には、読み出しコマンドなどのメモリコマンド、および位置を指定するアドレスが含まれ、そのアドレスからデータもしくは命令が読み出されるか、または、そのアドレスに対してデータもしくは命令が書き込まれる。メモリコントローラは、コマンドおよびアドレスを使用して、適切なコマンド信号と、行アドレスおよび列アドレスとを生成する。これらは、メモリバスを介してシステムメモリに適用される。コマンドおよびアドレスに応答して、データは、システムメモリとプロセッサとの間で転送される。メモリコントローラは、システムコントローラの一部であることが多く、ＰＣＩバスなどの拡張バスにプロセッサバスを結合するバスブリッジ回路も含む。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
メモリシステムは、高いデータバンド幅を有することが望ましい。一般的に、バンド幅の限界は、メモリコントローラとは関連しないが、これは、メモリコントローラが、メモリデバイスが許容する速度で、システムメモリへ行き来するデータを順序付けするからである。バンド幅を増加させる手法の１つは、メモリコントローラをメモリデバイスに結合するメモリデータバスの速度を増加させることである。しかしながら、メモリデバイスは、メモリコントローラおよびメモリデータバスのデータバンド幅の増加に対応することができていない。特に、メモリコントローラは、メモリデバイスがコマンドに応答できるように、メモリデバイスに対する全てのメモリコマンドをスケジュールしなければならない。このようなハードウェアの限界は、メモリデバイスの設計によってある程度低減できるが、ハードウェアの限界を低減することで、一般的にメモリデバイスのコスト、電力、および／またはサイズが増大し、これら全ては、代替手段として望ましくないので、妥協が必要となる。メモリデバイスは、例えば、メモリデバイスの同じページに対する後続トラフィックなどの「正常な（well-behaved）」アクセスを、増加し続ける速度で迅速に処理できる一方、メモリデバイスが、メモリデバイスの異なるページまたはバンクに対するアクセスなどの「異常な（badly-behaved）トラフィック」を除去することは非常に困難である。結果として、メモリデータバスのバンド幅を増加させても、それに対応して、メモリシステムのバンド幅が増加することにはならない。
【０００５】
メモリデバイスのバンド幅の限界に加えて、コンピュータシステムの性能も待ち時間問題により制限される。この待ち時間問題は、メモリデバイスからデータを読み出すのに必要な時間を増加させる。より詳細には、メモリデバイスの読み出しコマンドが、「ＳＤＲＡＭ（Synchronous DRAM）」などのシステムメモリデバイスに結びつけられるとき、数クロック期間の遅延が経過した後でないと、読み出しデータはＳＤＲＡＭデバイスから出力できない。ＳＤＲＡＭデバイスは、バーストデータを高いデータ速度で同期的に出力できるが、初期にデータを与える際の遅延により、前述のＳＤＲＡＭデバイスを使用するコンピュータシステムの動作速度が大幅に遅くなる可能性がある。この待ち時間問題は一般的に、単にメモリデータバスのバンド幅を増加させることだけでは、大幅に軽減することはできない。
【０００６】
メモリ待ち時間問題は、「読み出し／書き込み転換（turnaround）」としてよく知られた状態である、書き込みアクセスと交互に発生する読み出しアクセスにより、非常に悪化される。メモリコントローラが読み出しコマンドをメモリデバイスに発行するとき、メモリデバイスは、読み出しデータを、メモリ配列から、メモリデバイスの外部データバス端子に結びつけなければならない。次いで、読み出しデータは、メモリデバイスからメモリバスのデータバス部を介してメモリコントローラに結びつけられなければならない。その後にのみ、メモリコントローラは、データバスを介して書き込みデータをメモリデバイスに結びつけ、書き込みメモリアクセスを開始できる。
【０００７】
待ち時間問題は、メモリデバイス内のメモリセルの異なるページに対する順次読み出しコマンドにも存在する。第２の読み出しが異なるページに対して行われる場合、読み出すページは、「オープンな」ページ、すなわち、以前のメモリアクセス中にデータが読み出されたメモリセルの行ではない。読み出しアクセスが行われる行が既にオープンでない場合、ページがオープンになるまで、メモリ配列からメモリデバイスのデータバス端子にデータを結びつけることはできない。ページをオープンにするには、メモリコントローラからのメモリコマンドと、行アドレスおよび列アドレスとを、メモリデバイスに結びつけることが必要である。読み出しアドレスに応答して、メモリデバイスは、対応する行を平衡化して（equilibrate）、その行に対するアクセストランジスタを作動させ、各列に対するセンスアンプが、各メモリセルがセンスアンプに結合させる電圧を検出できるようにしなければならない。この全ては、かなりの時間を要する可能性がある。このため、クローズしたページからの読み出し動作と、読み出し／書き込み転換とにより、メモリデバイスは、高速メモリコントローラおよびメモリバスで可能なデータバンド幅を実現することはできない。
【０００８】
従って、特に読み出しアクセスおよび書き込みアクセスが交互に発生する場合には、より高いデータバンド幅を実現することができるメモリデバイスおよびメモリシステムが必要である。
【課題を解決するための手段】
【０００９】
メモリシステムは、メモリコントローラを１つまたは複数のメモリデバイスに結合する２つの別個のデータバスを使用することにより、高いバンド幅と短い待ち時間とを実現することができる。下流バス（downstream bus）は、メモリコントローラから書き込みデータを各メモリデバイスに結びつけ、上流バス（upstream bus）は、各メモリデバイスから読み出しデータをメモリコントローラに結びつける。結果として、書き込みデータをメモリコントローラから各メモリデバイスに結びつけることができるのと同時に、読み出しデータを各メモリデバイスからメモリコントローラに結びつけることができる。単一の下流メモリバスを使用して、書き込みデータと共に、メモリコマンドおよびメモリアドレスを各メモリデバイスに結びつけることができる。各メモリデバイスは、書き込みバッファを含むことができる。書き込みバッファにより、読み出し要求が処理される間に、数回の書き込みアクセスに対するメモリコマンドと、メモリアドレスと、書き込みデータとを蓄積することができる。多数の書き込みアクセスが蓄積された後、読み出しアクセスに介入されることなく、それらを一気に処理することができる。
【発明を実施するための最良の形態】
【００１０】
図１は、本発明の一実施態様によるメモリシステム１０を示している。メモリシステム１０は、４つの「ＤＲＡＭ」デバイス２０、２２、２４、２６に結合されたメモリコントローラ１４を備える。メモリコントローラ１４は、８ビットの書き込みデータバス３０および８ビットの読み出しデータバス３２を介して、ＤＲＡＭデバイス２０〜２６の各々に結合される。メモリコントローラ１４は、メモリコマンドおよびメモリアドレスを、書き込みデータバス３０、別個のコマンド／アドレスバス（図示せず）、または、別個のコマンドバスおよびアドレスバス（図示せず）のいずれかを介して、ＤＲＡＭデバイス２０〜２６に「下流に」結びつける。メモリコマンドおよびメモリアドレスが下流バスを介して結びつけられる場合、コマンドおよびアドレスは、パケットの形態であってもよく、このパケットには、書き込みコマンドに対しては、書き込みデータを含めることもできる。
【００１１】
動作において、メモリコントローラ１４は、書き込みデータバス３０を介して、書き込みデータをＤＲＡＭデバイス２０〜２６に「下流に」結びつけ、ＤＲＡＭデバイス２０〜２６は、読み出しデータバス３２を介して、読み出しデータをメモリコントローラ１４に「上流に」結びつける。書き込みデータバス３０のバンド幅は、読み出しデータバス３２のバンド幅と同じであってもよい。または、書き込みデータバス３０および読み出しデータバス３２は、異なるバンド幅を有して、バス３０、バス３２を介した異なるデータ速度に適応してもよい。ＤＲＡＭデバイス２０〜２６が「ＳＤＲＡＭ」デバイスである場合には、メモリコントローラ１４は、クロック信号もＤＲＡＭデバイス２０〜２６の各々に結びつける。別個の書き込みデータバス３０および読み出しデータバス３２をそれぞれ使用することにより、メモリデバイス２０〜２６が読み出しデータをメモリコントローラ１４に結びつけるのと同時に、メモリコントローラ１４は、書き込みデータをＤＲＡＭデバイス２０〜２６に結びつけることができる。
【００１２】
図２は、ＤＲＡＭデバイス２０〜２６をより詳細に示している。ＤＲＡＭデバイス２０〜２６の各々は、８つのメモリバンク４０ａ〜４０ｈを含み、各メモリバンクは、共通の書き込みデータバス４２および共通の読み出しデータバス４４に結合される。書き込みデータバス４２は、書き込みバッファ４６から書き込みデータを受信し、読み出しデータバス４４は、読み出しデータを読み出しラッチ５０に結びつける。書き込みデータは、書き込みデータバス５２を介して書き込みバッファ４６に結びつけられ、線５４を介して結びつけられたクロック信号によりバッファ４６にラッチされる。メモリコマンドおよびメモリアドレスも書き込みデータバス５２を介して結びつけられ、コマンド／アドレスレジスタ５８に記憶される。
【００１３】
読み出しラッチ５０は、８ビットの読み出しデータバス６０を介した読み出しデータを、線６２を介して読み出しラッチ５０からも結びつけられるクロック信号と同期させて出力する。メモリデバイス２０〜２６は、多数の他の従来のメモリデバイスコンポーネントを含むが、簡潔かつ明瞭にするため、図２では省略している。
【００１４】
動作において、書き込みコマンドおよび読み出しコマンドなどのメモリコマンドとメモリアドレスとは、書き込みデータバス５２を介して結びつけられる。メモリコマンドおよびメモリアドレスは、コマンド／アドレスレジスタ５８に記憶される。書き込みデータもまた、書き込みデータバス５２を介して結びつけられ、書き込みバッファ４６に記憶される。コマンド／アドレスレジスタ５８に結びつけられた読み出しコマンドに応答して、メモリデバイス２０〜２６は、読み出しデータを出力し、読み出しデータは、読み出しラッチ５０に結びつけられる。読み出しラッチ５０は、読み出しデータバス６０およびメモリコントローラ１４（図１）が読み出しデータを受信することができるまで、読み出しデータを記憶している。その後、読み出しデータは、読み出しデータバス６０を介して読み出しラッチ５０からクロックされる。読み出しメモリアクセスは、書き込みメモリアクセスより優先されるのが好ましく、その結果、書き込みデータが書き込みバッファ４６に蓄積される間に、多数の書き込みコマンドおよび関連付けられたアドレスが、コマンド／アドレスレジスタ５８に記憶される。十分な数の書き込みアクセスが蓄積されると、それらは、読み出しアクセスに介入されることなく、順次処理される。結果として、読み出し／書き込み転換に内在する待ち時間ペナルティが回避される。書き込みデータが、バンク４０ａ〜４０ｈのうちの１つに結びつけられると同時に、読み出しデータが、同じバンクから結びつけられることは不可能であるが、書き込みデータが、バンク４０ａ〜４０ｈのうちの１つに結びつけられると同時に、読み出しデータが、別のバンク４０ａ〜４０ｈから結びつけられることは可能である。従って、別個の書き込みデータバス３０および読み出しデータバス３２をそれぞれ使用することにより、メモリデバイス２０〜２６の各々が、読み出しデータをメモリコントローラ１４に結びつけるのと同時に、メモリコントローラ１４は、書き込みデータをＤＲＡＭデバイス２０〜２６の各々に結びつけることができる。書き込みデータバス５２を介して読み出しコマンドを結びつけること、および、読み出しコマンドをコマンド／アドレスレジスタ５８に記憶することを可能にすることにより、書き込み動作中または読み出し動作中に、読み出しコマンドをメモリデバイス２０〜２６に結びつけることができる。結果として、読み出し動作に対する待ち時間が最小限に抑えられる。そうでない場合は、読み出しコマンドが送信される前に、書き込み動作が完了するまで待つ必要がある。
【００１５】
本発明の一実施形態において、メモリコントローラ１４（図１）は、読み出しメモリコマンドおよび書き込みメモリコマンドと、メモリアドレスとをメモリデバイス２０〜２６に単に発行するだけである。メモリコマンドは、メモリデバイス２０〜２６がそれらを処理できるまで、コマンド／アドレスレジスタ５８に記憶されている。その後、コマンドは、メモリデバイス２０〜２６の各々により処理される。この処理は、読み出しデータバス６０を介して、読み出し応答または書き込み応答をコントローラに結びつけることを含む。読み出し応答および書き込み応答は、メモリコントローラ１４に対して、対応するメモリ要求の処理が完了したことを通知する。応答は、その応答に対応するメモリ要求を一意に識別し、その結果、メモリコントローラ１４がメモリ要求を追跡する必要はなく、メモリ要求は、順序を変えて（out-of-order）処理することができる。読み出し応答の場合、読み出し応答は、対応する読み出し要求から生じる読み出しデータを含むこともできる。
【００１６】
図３は、図１のメモリシステム１０を使用するコンピュータシステム１００を示している。コンピュータシステム１００はプロセッサ１０２を含む。プロセッサ１０２は、様々な計算機能を行い、例えば、特定の計算またはタスクを行う特定のソフトウェアを実行する。プロセッサ１０２はプロセッサバス１０４を含み、プロセッサバス１０４は通常、アドレスバス、制御バス、およびデータバスを含む。プロセッサバスは、システムコントローラ１１０を介して、周辺コンポーネント相互接続（ＰＣＩ）バスなどの拡張バス１０８に結合される。コンピュータシステム１００は、拡張バス１０８を介してプロセッサ１０２に結合されたキーボードまたはマウスなどの１つまたは複数の入力デバイス１１４、システムコントローラ１１０、およびプロセッサバス１０４を含み、オペレータがコンピュータシステム１００と対話する（interface）ことを可能にする。一般的に、コンピュータシステム１００は、拡張バス１０８に結合された１つまたは複数の出力デバイス１１６も含み、そのような出力デバイスは通常、プリンタまたはビデオ端末である。一般的に、１つまたは複数の大量データ記憶デバイス１１８も拡張バス１０８に結合され、外部記憶媒体（図示せず）にデータを記憶するか、またはその外部記憶媒体からデータを取り出す。一般的な大量データ記憶デバイス１１８の例として、ハードディスク、フロッピー（登録商標）ディスク、テープカセット、および、ＣＤ−ＲＯＭがある。プロセッサ１０２は一般的に、キャッシュメモリ１２６にも結合される。キャッシュメモリ１２６は通常、「ＳＲＡＭ（Static Random Access Memory）」である。上述したように、コンピュータシステム１００は、図１のメモリシステム１０も含む。詳細には、システムコントローラ１１０はメモリコントローラ１４を含み、図１を参照して上述したように、メモリコントローラ１４は、数個のＤＲＡＭデバイス２０〜２６に結合される。メモリコントローラ１４は、書き込みデータバス３０、読み出しデータバス３２、およびコマンドバス１３０、ならびにアドレスバス１３４を介して、ＤＲＡＭデバイス２０〜２６の各々に結合される。
【００１７】
開示した実施形態と関連させて本発明について説明したが、当業者であれば、本発明の趣旨および範囲を逸脱することなく、形式および詳細を変更できることが理解されよう。そのような変更は、当業者が有する技術をもってすれば十分に可能である。従って、本発明は、添付の特許請求の範囲によって定まるものであって、それ以外のものによっては限定されない。
【図面の簡単な説明】
【００１８】
【図１】本発明の一実施態様によるメモリシステムを示すブロック図である。
【図２】図１のメモリシステムにおいて使用されるＤＲＡＭデバイスを示すブロック図である。
【図３】図１のメモリシステムを使用するコンピュータシステムを示すブロック図である。
【図１】
2008511904.tif 000003
【図２】
2008511904.tif 000004
【図３】
2008511904.tif 000005
【手続補正書】
【提出日】平成19年2月27日(2007.2.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の出力端子および複数のデータ入力端子を有するメモリコントローラと、
複数のデータ出力端子および複数の入力端子を有する少なくとも１つのメモリデバイスと、
前記メモリコントローラの前記出力端子を前記メモリデバイスの前記入力端子に結合する下流バスであって、前記メモリコントローラの前記データ入力端子および前記メモリデバイスの前記データ出力端子から隔離される下流バスと、
前記メモリデバイスの前記データ出力端子を前記メモリコントローラの前記データ入力端子に結合する上流バスであって、前記メモリコントローラの前記出力端子および前記メモリデバイスの前記入力端子から隔離される上流バスと
を備えたことを特徴とするメモリシステム。
【請求項２】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合された書き込みバッファをさらに含み、前記書き込みバッファは、前記メモリデバイスが読み出し要求を処理していないときに、少なくとも１つの書き込み要求からの書き込みデータを記憶し、前記メモリデバイス内に記憶するために前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項１に記載のメモリシステム。
【請求項３】
前記メモリコントローラは、前記メモリデバイスが読み出し要求を処理していないときに、予め定められたメモリコマンドを出力するよう動作可能であり、前記予め定められたメモリコマンドは、前記下流バスを介して前記メモリデバイスの前記入力端子に結びつけられ、前記メモリデバイスは、前記予め定められたメモリコマンドに応答して、前記メモリデバイス内に記憶するために、前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項２に記載のメモリシステム。
【請求項４】
前記予め定められたコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項３に記載のメモリシステム。
【請求項５】
前記メモリコントローラは、メモリコマンドと、行アドレスおよび列アドレスとを、前記メモリコントローラの前記出力端子に結びつけるようさらに動作可能であり、前記メモリコマンドと、前記行アドレスおよび前記列アドレスとは、前記下流バスを介して前記メモリデバイスに結びつけられることを特徴とする請求項１に記載のメモリシステム。
【請求項６】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合されたコマンド／アドレスレジスタをさらに含み、前記コマンド／アドレスレジスタは、前記下流バスを介して、前記メモリデバイスに結びつけられた前記メモリコマンドと、前記行アドレスおよび前記列アドレスとを記憶するよう動作可能であることを特徴とする請求項５に記載のメモリシステム。
【請求項７】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項１に記載のメモリシステム。
【請求項８】
前記メモリコントローラは、クロック信号を出力するようさらに動作可能であり、前記メモリデバイスは、ＳＤＲＡＭデバイスと、クロック入力端子とを含み、前記メモリシステムは、前記クロック信号を、前記メモリコントローラから前記メモリデバイスの前記クロック入力端子に結びつけるクロック信号線をさらに含むことを特徴とする請求項７に記載のメモリシステム。
【請求項９】
プロセッサバスを有するプロセッサと、
前記プロセッサバスを介して前記プロセッサに結合され、コンピュータシステムに対してデータの入力を可能にする入力デバイスと、
前記プロセッサバスを介して前記プロセッサに結合され、前記コンピュータシステムからデータの出力を可能にする出力デバイスと、
前記プロセッサバスを介して前記プロセッサに結合された大量データ記憶デバイスであって、前記大量データ記憶デバイスからデータの読み出しを可能にする、大量データ記憶デバイスと、
前記プロセッサバスを介して前記プロセッサに結合されたメモリコントローラであって、複数のメモリデバイス出力端子および複数のメモリデバイスデータ入力端子を有するメモリコントローラと、
複数のデータ出力端子および複数の入力端子を有する少なくとも１つのメモリデバイスと、
前記メモリコントローラの前記メモリデバイス出力端子を前記メモリデバイスの前記入力端子に結合する下流バスであって、前記下流バスは、前記メモリコントローラの前記メモリデバイスデータ入力端子および前記メモリデバイスの前記データ出力端子から分離される、下流バスと、
前記メモリデバイスの前記データ出力端子を前記メモリコントローラの前記メモリデバイスデータ入力端子に結合する上流バスであって、前記上流バスは、前記メモリコントローラの前記メモリデバイス出力端子および前記メモリデバイスの前記入力端子から分離される、上流バスと
を備えたことを特徴とするコンピュータシステム。
【請求項１０】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合された書き込みバッファをさらに含み、前記書き込みバッファは、前記メモリデバイスが読み出し要求を処理していないときに、少なくとも１つの書き込み要求からの書き込みデータを記憶し、前記メモリデバイス内に記憶するために前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項９に記載のコンピュータシステム。
【請求項１１】
前記メモリコントローラは、前記メモリデバイスが読み出し要求を処理していないときに、予め定められたメモリコマンドを出力するよう動作可能であり、前記予め定められたメモリコマンドは、前記下流バスを介して前記メモリデバイスの前記入力端子に結びつけられ、前記メモリデバイスは、前記予め定められたメモリコマンドに応答して前記メモリデバイス内に記憶するために、前記書き込みバッファからの前記書き込みデータを結びつけるよう動作可能であることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１２】
前記予め定められたコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１３】
前記メモリコントローラは、メモリコマンドと、行アドレスおよび列アドレスとを、前記メモリコントローラの前記出力端子に結びつけるようさらに動作可能であり、前記メモリコマンドと、前記行アドレスおよび前記列アドレスとは、前記下流バスを介して前記メモリデバイスに結びつけられることを特徴とする請求項９に記載のコンピュータシステム。
【請求項１４】
前記メモリデバイスは、前記メモリデバイスの前記入力端子に結合されたコマンド／アドレスレジスタをさらに含み、前記コマンド／アドレスレジスタは、前記下流バスを介して前記メモリデバイスに結びつけられた前記メモリコマンドと、前記行アドレスおよび前記列アドレスとを記憶するよう動作可能であることを特徴とする請求項１３に記載のコンピュータシステム。
【請求項１５】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項９に記載のコンピュータシステム。
【請求項１６】
前記メモリコントローラは、クロック信号を出力するようさらに動作可能であり、前記メモリデバイスは、ＳＤＲＡＭデバイスと、クロック入力端子とを含み、前記メモリシステムは、前記クロック信号を、前記メモリコントローラから前記メモリデバイスの前記クロック入力端子に結びつけるクロック信号線をさらに含むことを特徴とする請求項１５に記載のコンピュータシステム。
【請求項１７】
メモリコントローラとメモリデバイスとの間でデータを結びつける方法であって、
書き込みデータを、前記メモリコントローラから第１の単方向データバスを介して前記メモリデバイスに結びつけることと、
読み出しデータを、前記メモリデバイスから第２の単方向データバスを介して前記メモリコントローラに結びつけることと
を備えることを特徴とする方法。
【請求項１８】
複数の書き込み要求に対する前記書き込みデータをメモリセル配列に結びつけることなく、前記書き込みデータを前記メモリデバイス内に保持することと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなるまで待つことと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなったときに、前記保持された書き込みデータを前記メモリセル配列に結びつけることと
をさらに備えることを特徴とする請求項１７に記載の方法。
【請求項１９】
前記保持された書き込みデータを前記メモリセル配列に前記結びつける動作は、前記メモリデバイスが受信した予め定められたメモリコマンドに応答して、前記保持された書き込みデータを前記メモリセル配列に結びつけることを含むことを特徴とする請求項１８に記載の方法。
【請求項２０】
前記予め定められたメモリコマンドは、列アドレスストローブコマンドを含むことを特徴とする請求項１９に記載の方法。
【請求項２１】
前記メモリデバイスは、ＤＲＡＭデバイスを含むことを特徴とする請求項１７に記載の方法。
【請求項２２】
メモリコマンドを、前記メモリコントローラから前記第１の単方向データバスを介して前記メモリデバイスに結びつけること
をさらに備えることを特徴とする請求項１７に記載の方法。
【請求項２３】
複数のメモリ要求に対する前記メモリコマンドを処理することなく、前記メモリコマンドを前記メモリデバイス内に保持することと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなるまで待つことと、
前記メモリデバイスが前記メモリセル配列からの読み出しデータを結びつけなくなったときに、前記保持されたメモリコマンドを処理することと
をさらに備えることを特徴とする請求項２２に記載の方法。
【請求項２４】
前記メモリコマンドに対する応答を、前記メモリデバイスから前記第２の単方向データバスを介して前記メモリコントローラに結びつけること
をさらに備えることを特徴とする請求項２２に記載の方法。
【請求項２５】
前記メモリコマンドに対する前記応答は、読み出しコマンドに対する読み出し応答と、書き込みコマンドに対する書き込み応答とを含み、前記読み出し応答は、前記読み出しデータを含むことを特徴とする請求項２４に記載の方法。
【請求項２６】
メモリアドレスを、前記メモリコントローラから前記第１の単方向データバスを介して前記メモリデバイスに結びつけること
をさらに備えることを特徴とする請求項１７に記載の方法。
【請求項２７】
前記メモリデバイスは、複数のメモリバンクを含み、前記方法は、書き込みデータを、前記第１の単方向データバスから前記メモリバンクのうちの１つに結びつけるのと同時に、読み出しデータを、前記メモリバンクのうちの別の１つから前記第２の単方向データバスに結びつけることをさらに備えることを特徴とする請求項１７に記載の方法。
【国際調査報告】
2008511904.tif 000006