(57)【特許請求の範囲】
【請求項１】
Ｍビットバス上のＮ個のＭビットコマンドワードのコマンドパケットを受け取るメモリデバイス用コマンドバッファであって、該コマンドバッファは、
各々が入力端子、出力端子、およびクロック端子を有するＭ個のシフトレジスタであって、該Ｍ個のシフトレジスタの各々の入力端子は、該Ｍビットバスに結合されており、該Ｍ個のシフトレジスタの各々がＮ／Ｙ個のステージを有し、該Ｎ／Ｙ個のステージの各々が入力端子および出力端子を有し、該Ｍ個のシフトレジスタの各々において、該Ｍ個シフトレジスタのクロック端子に与えられた、複数のクロックサイクルを有するクロック信号に応答して、各ステージの入力端子に与えられた該Ｎ個のＭビットコマンドワードのうちの１ビットが各ステージの出力端子にシフトされ、該Ｍ個のシフトレジスタは、第１の所定の数のクロックサイクルが該Ｍ個のシフトレジスタに与えられたことに応答して、Ｎ／Ｙ個のコマンドワードをシフトする、Ｍ個のシフトレジスタと、
Ｙ個の格納レジスタであって、ここでＹは１より大きな整数であり、該Ｙ個の格納レジスタの各々が（Ｎ／Ｙ）*Ｍ個の記憶セルを有し、該（Ｎ／Ｙ）*Ｍ個の記憶セルの各々が出力端子有し、かつ、それぞれのシフトレジスタのステージの該出力端子に結合された入力端子をさらに有し、該（Ｎ／Ｙ）*Ｍ個の記憶セルの各々が、該記憶セルに与えられた負荷信号に応答してそれぞれのシフトレジスタのステージの該出力端子において信号を格納する、Ｙ個の格納レジスタと、
該クロック信号を受け取るクロック端子および少なくとも１つの出力端子を有する制御回路であって、該制御回路は、該第１の所定の数のクロックサイクルが該制御回路に与えられるたびに複数の負荷信号の各々を生成し、該第１の所定の数のクロックサイクルが該制御回路に与えられるたびに該Ｙ個の格納レジスタの各々がＮ／Ｙ個のコマンドワードのうちの対応する１つのコマンドワードを受け取るように、該複数の負荷信号が、連続するＹ個の格納レジスタに順次与えられる、制御回路と
を含む、コマンドバッファ。
【請求項２】
Ｎが４に等しく、かつ、Ｙが２に等しく、その結果、前記Ｍ個のシフトレジスタの各々が２つのステージを有し、それぞれが２*Ｍ個の記憶セルを有する２個の格納レジスタがある、請求項１に記載のコマンドバッファ。
【請求項３】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記コマンドバッファは、コマンドデコーダをさらに含み、該コマンドデコーダは、前記Ｙ個の格納レジスタのうちの第１の格納レジスタと該Ｙ個の格納レジスタのうちの第２の格納レジスタとに結合されており、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
該コマンドデコーダは、該第１の負荷信号に応答して、該第１の格納レジスタに格納された該コマンドワードをデコードする、請求項１に記載のコマンドバッファ。
【請求項４】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記コマンドバッファは、前記Ｙ個の格納レジスタに結合された比較回路をさらに含み、該Ｙ個の格納レジスタは、第１の格納レジスタと第２の格納レジスタとを含み、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
該比較回路は、
特定の値を有する比較ワードを格納するラッチと、
該第１の格納レジスタに結合された第１の入力および該ラッチに結合された第２の入力を有するコンパレータであって、該比較ワードと該第１の格納レジスタに格納された該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項１に記載のコマンドバッファ。
【請求項５】
前記制御回路からの前記第１の負荷信号に応答して、前記コンパレータが、前記比較ワードと前記コマンドワードの前記一部分とを比較する、請求項４に記載のコマンドバッファ。
【請求項６】
前記比較ワードは、複数のビットを含み、前記コマンドワードの前記一部分は、複数のビットを含み、該比較ワードと該コマンドワードの少なくとも一部分とを比較することは、該比較ワードの該複数のビットと該コマンドワードの該一部分の該複数のビットとを比較することを包含し、前記コンパレータは、
該コマンドワードの該一部分の各比較されたビットのための排他的ＯＲゲートを含み、各排他的ＯＲゲートが、該比較ワードの１ビットおよび該コマンドワードの該一部分の対応する１ビットを受け取る１対の入力端子を有し、該比較ワードの該比較されたビットの全てが該コマンドワードの該一部分の該ビットと一致した場合には、該排他的ＯＲゲートは、前記選択信号を生成する、請求項４に記載のコマンドバッファ。
【請求項７】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）を含み、
前記コマンドバッファは、前記コマンドバッファを含む集積回路上の機能をイネーブルする選択信号を生成するイネーブル回路をさらに含み、
該イネーブル回路は、
前記Ｙ個の格納レジスタのうちの１つの格納レジスタに結合された入力バスを有する第１のデコーダ回路であって、所定の値を有する前記コマンドワードの少なくとも一部分に応答して出力端子においてラッチ信号を生成する第１のデコーダ回路と、
該Ｙ個の格納レジスタのうちの１つの格納レジスタの出力端子に結合された入力バスを有するＩＤレジスタであって、該ラッチ信号に応答して該格納レジスタから受け取られたコマンドワードの少なくとも一部分を格納して、出力バス上に該コマンドワードの該少なくとも一部分に対応する比較ワードを生成するＩＤレジスタと、
該Ｙ個の格納レジスタのうちの第１の格納レジスタに結合された第１の入力バスを有するコンパレータであって、該第１の格納レジスタは、該制御回路からの該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該コンパレータは、該ＩＤレジスタの出力バスに結合された第２の入力バスをさらに有し、該コンパレータは、該比較ワードと該第１の格納レジスタから受け取られた該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項１に記載のコマンドバッファ。
【請求項８】
前記比較ワードは、複数のビットを含み、前記コマンドワードの前記一部分は、複数のビットを含み、該比較ワードと該コマンドワードの少なくとも一部分とを比較することは、該比較ワードの該複数のビットと該コマンドワードの該一部分の該複数のビットとを比較することを包含し、前記コンパレータは、
前記第１の格納レジスタから受け取られた該コマンドワードの該一部分の各比較されたビットのための排他的ＯＲゲートを含み、各排他的ＯＲゲートが、該比較ワードの１ビットおよび該コマンドワードの該一部分の対応する１ビットを受け取る１対の入力端子を有し、該比較ワードの該比較されたビットの全てが該コマンドワードの該一部分の該ビットと一致した場合には、該排他的ＯＲゲートは、前記選択信号を生成する、請求項７に記載のコマンドバッファ。
【請求項９】
前記Ｍ個のシフトレジスタのステージの各々は、
コマンドワードビットとして前記コマンドワードのＭビットのうちの１ビットを受け取り、かつ、前記クロック信号に応答して出力端子に該コマンドワードビットを転送する入力端子を有するトランスファーゲートと、
該トランスファーゲートの該出力端子に結合された第１の記憶デバイスであって、該トランスファーゲートの該出力端子からの該コマンドワードビットを格納して、該格納されたコマンドワードビットを該第１の記憶デバイスの出力端子に与える第１の記憶デバイスと、
該第１の記憶デバイスの該出力端子から該格納されたコマンドワードビットを受け取って、該クロック信号に応答して出力端子に該コマンドビットを転送する入力端子を有する第２のトランスファーゲートと、
該第２のトランスファーゲートの該出力端子に結合された第２の記憶デバイスであって、該第２のトランスファーゲートの該出力端子からの該コマンドワードビットを格納して、該格納されたコマンドワードビットを該第２の記憶デバイスの出力端子に与える第２の記憶デバイスとを含む、請求項１に記載のコマンドバッファ。
【請求項１０】
前記第２のトランスファーゲートは、第１および第２の基準電圧の間の第１、第２、第３、および第４のスイッチであって、互いに直列に接続された第１、第２、第３、および第４のスイッチを含み、該第１、第２、第３、および第４のスイッチの各々が制御端子を有し、該第２および第３のスイッチの該制御端子が該第１の記憶デバイスの該出力端子に結合されており、該第１の記憶デバイスから前記格納されたコマンドワードビットを受け取り、該第２のスイッチが、ある値のコマンドワードビットに応答して閉になり、該第３のスイッチが、別の値のコマンドワードビットに応答して閉になり、該第２および第３のスイッチの間のノードが第２の記憶デバイスに結合されており、該第１および第４のスイッチの該制御端子が前記クロック信号に結合されることにより、該クロック信号に応答して該第１および第２のスイッチを閉にする、請求項９に記載のコマンドバッファ。
【請求項１１】
前記制御回路は、ＦＬＡＧ信号を受け取るシフトレジスタを含み、該シフトレジスタがＮ個のステージを有し、該ＦＬＡＧ信号が前記第１ステージの入力端子に与えられ、かつ、クロック信号に応答して、あるステージから次のステージへとシフトされ、該ＦＬＡＧ信号に応答して生成される負荷信号が、該シフトレジスタの該Ｎ個のステージの該出力の少なくとも１つにシフトされる、請求項１に記載のコマンドバッファ。
【請求項１２】
前記制御回路は、前記ＦＬＡＧ信号を前記クロック信号と同期させるクロック同期回路をさらに含み、該クロック同期回路は、該クロック信号と前記Ｍ個のシフトレジスタのステージのうちの１つのステージの出力とを受け取る論理回路を含み、該論理回路は、それぞれのシフトレジスタのステージの外部にシフトされる該ＦＬＡＧ信号に応答して前記負荷信号を生成する、請求項１１に記載のコマンドバッファ。
【請求項１３】
前記Ｎ／Ｙ個のステージは、第１のステージおよび第２のステージを含み、該第１のステージおよび該第２のステージの各々が入力端子および出力端子を有し、該第１のステージの該出力端子が該第２のステージの該入力端子に結合されており、前記クロック信号の各周期毎に、シフトレジスタの入力端子に与えられたコマンドワードビットは、該第１のステージの該入力端子に与えられ、該第１のステージの該入力端子から該第１のステージの該出力端子にシフトされて、該第２のステージの該入力端子から該第２ステージの該出力端子にシフトされる、請求項１に記載のコマンドバッファ。
【請求項１４】
コマンドバッファであって、
４コマンドワードコマンドパケットを受け取る入力バスと、複数のクロックサイクルを有するクロック信号を受け取るクロック端子とを有するシフトレジスタであって、該シフトレジスタは、第１および第２のステージを有し、該第１および第２のステージのそれぞれは、入力バスと出力バスとを有し、該第１のステージの出力バスは、該第２のステージの入力バスに接続されており、複数のコマンドワードは、該複数のコマンドワードのうちの１つのコマンドワードが該第２のステージの出力バスにシフトされ、かつ、該複数のコマンドワードのうちの別のコマンドワードが該第１のステージの出力バスにシフトされるまで、該クロック信号に応答して、該第１のステージの入力バスに順次与えられ、かつ、該第１および第２のステージを介して順次シフトされ、
該複数のコマンドワードのうちの第１の２つのコマンドワードは、第１の所定の数のクロックサイクルが該シフトレジスタに与えられたことに応答して、該シフトレジスタにシフトされ、該複数のコマンドワードのうちの第２の２つのコマンドワードは、第２の所定の数のクロックサイクルが該シフトレジスタに与えられたことに応答して、該シフトレジスタにシフトされ、該第２の所定の数のクロックサイクルは、該第１の所定の数のクロックサイクルより大きい、シフトレジスタと、
該複数のコマンドワードのうちの２つのコマンドワードを格納するために十分な複数の記憶セルを有する第１の格納レジスタであって、該第１の格納レジスタは、該シフトレジスタの第１のステージの出力バスと該第１の格納レジスタ内の該複数の記憶セルのうちの半分とを接続する第１の入力バスと、該シフトレジスタの第２のステージの出力バスと該第１の格納レジスタ内の該複数の記憶セルのうちの残りの半分とを接続する第２の入力バスとを有し、該第１の格納レジスタに与えられた第１の負荷信号に応答して、該第１の格納レジスタ内の該複数の記憶セルのうちの半分は、該シフトレジスタの第１のステージの出力バスから受け取られたコマンドワードを格納し、該第１の格納レジスタ内の該複数の記憶セルの残りの半分は、該シフトレジスタの該第２のステージの出力バスから受け取られたコマンドを格納する、第１の格納レジスタと、
該複数のコマンドワードのうちの２つのコマンドワードを格納するために十分な複数の記憶セルを有する第２の格納レジスタであって、該第２の格納レジスタは、該シフトレジスタの第１のステージの出力バスと該第２の格納レジスタ内の該複数の記憶セルのうちの半分とを接続する第１の入力バスと、該シフトレジスタの第２のステージの出力バスと該第２の格納レジスタ内の該複数の記憶セルのうちの残りの半分とを接続する第２の入力バスとを有し、該第２の格納レジスタに与えられた第２の負荷信号に応答して、該第２の格納レジスタ内の該複数の記憶セルのうちの半分は、該シフトレジスタの第１のステージの出力バスから受け取られたコマンドワードを格納し、該第２の格納レジスタ内の該複数の記憶セルの残りの半分は、該シフトレジスタの該第２のステージの出力バスから受け取られたコマンドを格納する、第２の格納レジスタと、
クロック端子および少なくとも１つの出力端子を有する制御回路であって、該制御回路は、該第１の所定の数のクロックサイクルが該シフトレジスタに与えられたことに応答して、該第１の負荷信号を生成し、かつ、該第２の所定の数のクロックサイクルが該シフトレジスタに与えられたことに応答して、該第２の負荷信号を生成する、制御回路と
を含むコマンドバッファ。
【請求項１５】
前記第１の格納レジスタに結合されたコマンドデコーダをさらに含み、該コマンドデコーダは、該第１の負荷信号に応答して、該第１の格納レジスタに格納されたコマンドパケットの前記コマンドワードをデコードする、請求項１４に記載のコマンドバッファ。
【請求項１６】
第１の格納レジスタに結合された比較回路をさらに含み、該比較回路は、
特定の値を有する比較ワードを格納するラッチと、
該第１の格納レジスタに結合された第１の入力と該ラッチに結合された第２の入力とを有するコンパレータであって、該比較ワードと該第１の格納レジスタに格納された前記コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成するコンパレータとを含む、請求項１４に記載のコマンドバッファ。
【請求項１７】
前記第１の負荷信号に応答して、前記コンパレータが、前記比較ワードと前記コマンドワードの前記一部分とを比較する、請求項１６に記載のコマンドバッファ。
【請求項１８】
前記コマンドバッファを含む集積回路上の機能をイネーブルする選択信号を生成するイネーブル回路をさらに含み、該イネーブル回路は、
前記Ｙ個の格納レジスタのうちの１つの格納レジスタに結合された入力バスを有する第１のデコーダ回路であって、前記コマンドワードの少なくとも一部分が所定の値を有すると決定されたことに応答してラッチ信号を生成する第１のデコーダ回路と、
該Ｙ個の格納レジスタのうちの１つの格納レジスタの出力端子に結合された入力バスを有するＩＤレジスタであって、該ラッチ信号に応答して該格納レジスタから受け取られたコマンドワードの少なくとも一部分を格納して、出力バス上に該コマンドワードの少なくとも一部分に対応する比較ワードを生成するＩＤレジスタと、
第１の格納レジスタに結合された第１の入力バスと該ＩＤレジスタの該出力バスに結合された第２の入力バスとを有するコンパレータであって、該比較ワードと該第１の格納レジスタから受け取られた該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項１４に記載のコマンドバッファ。
【請求項１９】
前記第１の負荷信号に応答して、前記コンパレータは、前記比較ワードと前記コマンドワードの前記一部分の前記一部分とを比較する、請求項１８に記載のコマンドバッファ。
【請求項２０】
前記制御回路は、ＦＬＡＧ信号を受け取るシフトレジスタを含み、該シフトレジスタは、複数のレジスタを有し、該ＦＬＡＧ信号は、前記第１ステージの入力端子に与えられ、かつ、前記クロック信号に応答して、あるステージから次のステージへとシフトされ、該ＦＬＡＧ信号に応答して生成される第１の負荷信号が、第１のシフトレジスタの出力にシフトされ、該ＦＬＡＧ信号に応答して生成される第２の負荷信号が第３のシフトレジスタの出力にシフトされる、請求項１４に記載のコマンドバッファ。
【請求項２１】
前記制御回路は、前記ＦＬＡＧ信号を前記クロック信号と同期させるクロック同期回路をさらに含み、該クロック同期回路は、該クロック信号と前記Ｍ個のシフトレジスタステージのうちの１つのステージの出力とを受け取る論理回路を含み、それぞれのシフトレジスタステージの外にシフトされる該ＦＬＡＧ信号に応答して、該論理回路は、前記負荷信号を生成する、請求項２０に記載のコマンドバッファ。
【請求項２２】
前記２つのステージは、第１のステージおよび第２のステージを含み、該第１のステージおよび該第２のステージの各々が入力端子および出力端子を有し、該第１のステージの出力端子が該第２のステージの入力端子に結合されており、前記クロック信号の各サイクル毎に、コマンドワードビットは、該第１のステージの該入力端子に与えられ、該第１のステージの該入力端子から第該第１のステージの該出力端子にシフトして、該第２のステージの該入力端子から該第２のステージの該出力端子にシフトされる、請求項１４に記載のコマンドバッファ。
【請求項２３】
メモリデバイスであって、
コマンドワードに応答して、行アドレスおよび列アドレスによって決定される位置においてデータを格納する複数のメモリセルからなる少なくとも１つのアレイであって、該コマンドワードは、該データを格納するための位置を決定する該行アドレスおよび該列アドレスを示す、複数のメモリセルからなる少なくとも１つのアレイと、
該行アドレスを受け取ってデコードして、該コマンドワードに応答して、該行アドレスに対応する複数のメモリセルの行を選択する行アドレス回路と、
該コマンドワードに応答して、データを受け取るか、または該列アドレスに対応する該選択された行内の該複数のメモリセルのうちの１つのメモリセルにデータを与える列アドレス回路と、
Ｍビットバス上で受け取られたＮ個のＭビットコマンドワードを受け取るコマンドバッファと
を含み、該コマンドバッファは、
各々が入力端子、出力端子、およびクロック端子を有するＭ個のシフトレジスタであって、該Ｍ個のシフトレジスタの各々の入力端子は、該Ｍビットバスに結合されており、該Ｍ個のシフトレジスタの各々がＮ／Ｙ個のステージを有し、該Ｎ／Ｙ個のステージの各々が入力端子および出力端子を有し、該Ｍ個のシフトレジスタの各々において、該Ｍ個シフトレジスタのクロック端子に与えられた、複数のクロックサイクルを有するクロック信号に応答して、各ステージの入力端子に与えられた該Ｎ個のＭビットコマンドワードのうちの１ビットが各ステージの出力端子にシフトされ、該Ｍ個のシフトレジスタは、第１の所定の数のクロックサイクルが該Ｍ個のシフトレジスタに与えられたことに応答して、Ｎ／Ｙ個のコマンドワードをシフトする、Ｍ個のシフトレジスタと、
Ｙ個の格納レジスタであって、ここでＹは１より大きな整数であり、該Ｙ個の格納レジスタの各々が（Ｎ／Ｙ）*Ｍ個の記憶セルを有し、該（Ｎ／Ｙ）*Ｍ個の記憶セルの各々が出力端子有し、かつ、それぞれのシフトレジスタのステージの該出力端子に結合された入力端子をさらに有し、該（Ｎ／Ｙ）*Ｍ個の記憶セルの各々が、該記憶セルに与えられた負荷信号に応答してそれぞれのシフトレジスタのステージの該出力端子において信号を格納する、Ｙ個の格納レジスタと、
該クロック信号を受け取るクロック端子および少なくとも１つの出力端子を有する制御回路であって、該制御回路は、該第１の所定の数のクロックサイクルが該制御回路に与えられるたびに複数の負荷信号の各々を生成し、該第１の所定の数のクロックサイクルが該制御回路に与えられるたびに該Ｙ個の格納レジスタの各々がＮ／Ｙ個のコマンドワードのうちの対応する１つのコマンドワードを受け取るように、該複数の負荷信号が、連続するＹ個の格納レジスタに順次与えられる、制御回路と
を含む、メモリデバイス。
【請求項２４】
Ｎが４に等しく、かつ、Ｙが２に等しく、その結果、前記Ｍ個のシフトレジスタの各々が２つのステージを有し、それぞれが２*Ｍ個の記憶セルを有する２個の格納レジスタがある、請求項２３に記載のメモリデバイス。
【請求項２５】
Ｎが８に等しく、かつ、Ｙが２に等しく、その結果、前記Ｍ個のシフトレジスタの各々が４つのステージを有し、それぞれが４*Ｍ個の記憶セルを有する２個の格納レジスタがある、請求項２３に記載のメモリデバイス。
【請求項２６】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記メモリデバイスは、コマンドデコーダをさらに含み、該コマンドデコーダは、前記Ｙ個の格納レジスタのうちの第１の格納レジスタと該Ｙ個の格納レジスタのうちの第２の格納レジスタとに結合されており、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
該コマンドデコーダは、該第１の負荷信号に応答して、該第１の格納レジスタに格納された該コマンドワードをデコードする、請求項２３に記載のメモリデバイス。
【請求項２７】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記メモリデバイスは、該Ｙ個の格納レジスタに結合された比較回路をさらに含み、該Ｙ個の格納レジスタは、第１の格納レジスタと第２の格納レジスタとを含み、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
該比較回路は、
特定の値を有する比較ワードを格納するラッチと、
該第１の格納レジスタに結合された第１の入力および該ラッチに結合された第２の入力を有するコンパレータであって、該比較ワードと該第１の格納レジスタに格納された該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項２３に記載のメモリデバイス。
【請求項２８】
前記制御回路からの前記第１の負荷信号に応答して、前記コンパレータが、前記比較ワードと前記コマンドワードの前記一部分とを比較する、請求項２７に記載のメモリデバイス。
【請求項２９】
前記比較ワードは、複数のビットを含み、前記コマンドワードの前記一部分は、複数のビットを含み、該比較ワードと該コマンドワードの少なくとも一部分とを比較することは、該比較ワードの該複数のビットと該コマンドワードの該一部分の該複数のビットとを比較することを包含し、前記コンパレータは、
該コマンドワードの該一部分の各比較されたビットのための排他的ＯＲゲートを含み、各排他的ＯＲゲートが、該比較ワードの１ビットおよび該コマンドワードの該一部分の対応する１ビットを受け取る１対の入力端子を有し、該比較ワードの該比較されたビットの全てが該コマンドワードの該一部分の該ビットと一致した場合には、該排他的ＯＲゲートは、前記選択信号を生成する、請求項２７に記載のメモリデバイス。
【請求項３０】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）を含み、
前記メモリデバイスは、前記コマンドバッファを含む集積回路上の機能をイネーブルする選択信号を生成するイネーブル回路をさらに含み、
該イネーブル回路は、
前記Ｙ個の格納レジスタのうちの１つの格納レジスタに結合された入力バスを有する第１のデコーダ回路であって、所定の値を有する前記コマンドワードの少なくとも一部分に応答して出力端子においてラッチ信号を生成する第１のデコーダ回路と、
該Ｙ個の格納レジスタのうちの１つの格納レジスタの出力端子に結合された入力バスを有するＩＤレジスタであって、該ラッチ信号に応答して該格納レジスタから受け取られたコマンドワードの少なくとも一部分を格納して、出力バス上に該コマンドワードの該少なくとも一部分に対応する比較ワードを生成するＩＤレジスタと、
該Ｙ個の格納レジスタのうちの第１の格納レジスタに結合された第１の入力バスを有するコンパレータであって、該第１の格納レジスタは、該制御回路からの該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該コンパレータは、該ＩＤレジスタの出力バスに結合された第２の入力バスをさらに有し、該コンパレータは、該比較ワードと該第１の格納レジスタから受け取られた該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項２３に記載のメモリデバイス。
【請求項３１】
前記比較ワードは、複数のビットを含み、前記コマンドワードの前記一部分は、複数のビットを含み、該比較ワードと該コマンドワードの少なくとも一部分とを比較することは、該比較ワードの該複数のビットと該コマンドワードの該一部分の該複数のビットとを比較することを包含し、前記コンパレータは、
前記第１の格納レジスタから受け取られた該コマンドワードの該一部分の各比較されたビットのための排他的ＯＲゲートを含み、各排他的ＯＲゲートが、該比較ワードの１ビットおよび該コマンドワードの該一部分の対応する１ビットを受け取る１対の入力端子を有し、該比較ワードの該比較されたビットの全てが該コマンドワードの該一部分の該ビットと一致した場合には、該排他的ＯＲゲートは、前記選択信号を生成する、請求項３０に記載のメモリデバイス。
【請求項３２】
前記Ｍ個のシフトレジスタのステージの各々は、
コマンドワードビットとして前記コマンドワードのＭビットのうちの１ビットを受け取り、かつ、前記クロック信号に応答して出力端子に該コマンドワードビットを転送する入力端子を有するトランスファーゲートと、
該トランスファーゲートの該出力端子に結合された第１の記憶デバイスであって、該トランスファーゲートの該出力端子からの該コマンドワードビットを格納して、該格納されたコマンドワードビットを該第１の記憶デバイスの出力端子に与える第１の記憶デバイスと、
該第１の記憶デバイスの該出力端子から該格納されたコマンドワードビットを受け取って、該クロック信号に応答して出力端子に該コマンドビットを転送する入力端子を有する第２のトランスファーゲートと、
該第２のトランスファーゲートの該出力端子に結合された第２の記憶デバイスであって、該第２のトランスファーゲートの該出力端子からの該コマンドワードビットを格納して、該格納されたコマンドワードビットを該第２の記憶デバイスの出力端子に与える第２の記憶デバイスとを含む、請求項２３に記載のメモリデバイス。
【請求項３３】
前記第２のトランスファーゲートは、第１および第２の基準電圧の間の第１、第２、第３、および第４のスイッチであって、互いに直列に接続された第１、第２、第３、および第４のスイッチを含み、該第１、第２、第３、および第４のスイッチの各々が制御端子を有し、該第２および第３のスイッチの該制御端子が該第１の記憶デバイスの該出力端子に結合されており、該第１の記憶デバイスから前記格納されたコマンドワードビットを受け取り、該第２のスイッチが、ある値のコマンドワードビットに応答して閉になり、該第３のスイッチが、別の値のコマンドワードビットに応答して閉になり、該第２および第３のスイッチの間のノードが第２の記憶デバイスに結合されており、該第１および第４のスイッチの該制御端子が前記クロック信号に結合されることにより、該クロック信号に応答して該第１および第２のスイッチを閉にする、請求項３２に記載のメモリデバイス。
【請求項３４】
前記制御回路は、ＦＬＡＧ信号を受け取るシフトレジスタを含み、該シフトレジスタがＮ個のステージを有し、該ＦＬＡＧ信号が前記第１ステージの入力端子に与えられ、かつ、クロック信号に応答して、あるステージから次のステージへとシフトされ、該ＦＬＡＧ信号に応答して生成される負荷信号が、該シフトレジスタの該Ｎ個のステージの該出力の少なくとも１つにシフトされる、請求項２３に記載のメモリデバイス。
【請求項３５】
前記制御回路は、前記ＦＬＡＧ信号を前記クロック信号と同期させるクロック同期回路をさらに含み、該クロック同期回路は、該クロック信号と前記Ｍ個のシフトレジスタのステージのうちの１つのステージの出力とを受け取る論理回路を含み、該論理回路は、それぞれのシフトレジスタのステージの外部にシフトされる該ＦＬＡＧ信号に応答して前記負荷信号を生成する、請求項３４に記載のメモリデバイス。
【請求項３６】
前記Ｎ／Ｙ個のステージは、第１のステージおよび第２のステージを含み、該第１のステージおよび該第２のステージの各々が入力端子および出力端子を有し、該第１のステージの該出力端子が該第２のステージの該入力端子に結合されており、前記クロック信号の各周期毎に、シフトレジスタの入力端子に与えられたコマンドワードビットは、該第１のステージの該入力端子に与えられ、該第１のステージの該入力端子から該第１のステージの該出力端子にシフトされて、該第２のステージの該入力端子から該第２ステージの該出力端子にシフトされる、請求項２３に記載のメモリデバイス。
【請求項３７】
前記メモリデバイスは、ランダムアクセスメモリを含む、請求項２３に記載のメモリデバイス。
【請求項３８】
前記メモリデバイスは、ダイナミックランダムアクセスメモリを含む、請求項３７に記載のメモリデバイス。
【請求項３９】
前記メモリデバイスは、パケット化されたダイナミックランダムアクセスメモリを含む、請求項３８に記載のメモリデバイス。
【請求項４０】
コンピュータシステムであって、
プロセッサバスを有するプロセッサであって、データを格納するための位置を決定する行アドレスおよび列アドレスを示すコマンドワードを送信するプロセッサと、
該プロセッサバスを介して該プロセッサに結合された入力デバイスであって、データを該コンピュータシステムに入力できるようにする入力デバイスと、
該プロセッサバスを介して該プロセッサに結合された出力デバイスであって、データを該コンピュータシステムから出力できるようにする出力デバイスと、
該プロセッサバスを介して該プロセッサに結合されたメモリデバイスであって、該コマンドワードを受け取るメモリデバイスと
を含み、該メモリデバイスは、
該コマンドワードに応答して、該行アドレスおよび該列アドレスによって決定される位置においてデータを格納する複数のメモリセルからなる少なくとも１つのアレイと、
該行アドレスを受け取ってデコードして、該コマンドワードに応答して、該行アドレスに対応する複数のメモリセルの行を選択する行アドレス回路と、
該コマンドワードに応答して、データを受け取るか、または該列アドレスに対応する該選択された行内の該複数のメモリセルのうちの１つのメモリセルにデータを与える列アドレス回路と、
Ｍビットバス上で受け取られたＮ個のＭビットコマンドワードを受け取るコマンドバッファと
を含み、該コマンドバッファは、
各々が入力端子、出力端子、およびクロック端子を有するＭ個のシフトレジスタであって、該Ｍ個のシフトレジスタの各々の入力端子は、該Ｍビットバスに結合されており、該Ｍ個のシフトレジスタの各々がＮ／Ｙ個のステージを有し、該Ｎ／Ｙ個のステージの各々が入力端子および出力端子を有し、該Ｍ個のシフトレジスタの各々において、該Ｍ個シフトレジスタのクロック端子に与えられた、複数のクロックサイクルを有するクロック信号に応答して、各ステージの入力端子に与えられた該Ｎ個のＭビットコマンドワードのうちの１ビットが各ステージの出力端子にシフトされ、該Ｍ個のシフトレジスタは、第１の所定の数のクロックサイクルが該Ｍ個のシフトレジスタに与えられたことに応答して、Ｎ／Ｙ個のコマンドワードをシフトする、Ｍ個のシフトレジスタと、
Ｙ個の格納レジスタであって、ここでＹは１より大きな整数であり、該Ｙ個の格納レジスタの各々が（Ｎ／Ｙ）*Ｍ個の記憶セルを有し、該（Ｎ／Ｙ）*Ｍ個の記憶セルの各々が出力端子有し、かつ、それぞれのシフトレジスタのステージの該出力端子に結合された入力端子をさらに有し、該（Ｎ／Ｙ）*Ｍ個の記憶セルの各々が、該記憶セルに与えられた負荷信号に応答してそれぞれのシフトレジスタのステージの該出力端子において信号を格納する、Ｙ個の格納レジスタと、
該クロック信号を受け取るクロック端子および少なくとも１つの出力端子を有する制御回路であって、該制御回路は、該第１の所定の数のクロックサイクルが該制御回路に与えられるたびに複数の負荷信号の各々を生成し、該第１の所定の数のクロックサイクルが該制御回路に与えられるたびに該Ｙ個の格納レジスタの各々がＮ／Ｙ個のコマンドワードのうちの対応する１つのコマンドワードを受け取るように、該複数の負荷信号が、連続するＹ個の格納レジスタに順次与えられる、制御回路と
を含む、コンピュータシステム。
【請求項４１】
Ｎが４に等しく、かつ、Ｙが２に等しく、その結果、前記Ｍ個のシフトレジスタの各々が２つのステージを有し、それぞれが２*Ｍ個の記憶セルを有する２個の格納レジスタがある、請求項４０に記載のコンピュータシステム。
【請求項４２】
Ｎが８に等しく、かつ、Ｙが２に等しく、その結果、前記Ｍ個のシフトレジスタの各々が４つのステージを有し、それぞれが４*Ｍ個の記憶セルを有する２個の格納レジスタがある、請求項４０に記載のコンピュータシステム。
【請求項４３】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記コンピュータシステムは、コマンドデコーダをさらに含み、該コマンドデコーダは、前記Ｙ個の格納レジスタのうちの第１の格納レジスタと該Ｙ個の格納レジスタのうちの第２のレジスタとに結合されており、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
該コマンドデコーダは、該第１の負荷信号に応答して、該第１の格納レジスタに格納された該コマンドワードをデコードする、請求項４０に記載のコンピュータシステム。
【請求項４４】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記コンピュータシステムは、前記Ｙ個の格納レジスタに結合された比較回路をさらに含み、該Ｙ個の格納レジスタは、第１の格納レジスタと第２の格納レジスタとを含み、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
該比較回路は、
特定の値を有する比較ワードを格納するラッチと、
該第１の格納レジスタに結合された第１の入力および該ラッチに結合された第２の入力を有するコンパレータであって、該比較ワードと該第１の格納レジスタに格納された該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項４０に記載のコンピュータシステム。
【請求項４５】
前記制御回路からの前記第１の負荷信号に応答して、前記コンパレータが、前記比較ワードと前記コマンドワードの前記一部分とを比較する、請求項４４に記載のコンピュータシステム。
【請求項４６】
前記比較ワードは、複数のビットを含み、前記コマンドワードの前記一部分は、複数のビットを含み、該比較ワードと該コマンドワードの少なくとも一部分とを比較することは、該比較ワードの該複数のビットと該コマンドワードの該一部分の該複数のビットとを比較することを包含し、前記コンパレータは、
該コマンドワードの該一部分の各比較されたビットのための排他的ＯＲゲートを含み、各排他的ＯＲゲートが、該比較ワードの１ビットおよび該コマンドワード該一部分の対応する１ビットを受け取る１対の入力端子を有し、該比較ワードの該比較されたビットの全てが該コマンドワードの該一部分の該ビットと一致した場合には、該排他的ＯＲゲートは、前記選択信号を生成する、請求項４４に記載のコンピュータシステム。
【請求項４７】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）を含み、
前記コンピュータシステムは、前記コマンドバッファを含む集積回路上の機能をイネーブルする選択信号を生成するイネーブル回路をさらに含み、
該イネーブル回路は、
前記Ｙ個の格納レジスタのうちの１つの格納レジスタに結合された入力バスを有する第１のデコーダ回路であって、所定の値を有する前記コマンドワードの少なくとも一部分に応答して出力端子においてラッチ信号を生成する第１のデコーダ回路と、
該Ｙ個の格納レジスタのうちの１つの格納レジスタの出力端子に結合された入力バスを有するＩＤレジスタであって、該ラッチ信号に応答して該格納レジスタから受け取られたコマンドワードの少なくとも一部分を格納して、出力バス上に該コマンドワードの該少なくとも一部分に対応する比較ワードを生成するＩＤレジスタと、
該Ｙ個の格納レジスタのうちの第１の格納レジスタに結合された第１の入力バスを有するコンパレータであって、該第１の格納レジスタは、該制御回路からの該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該コンパレータは、該ＩＤレジスタの出力バスに結合された第２の入力バスをさらに有し、該コンパレータは、該比較ワードと該第１の格納レジスタから受け取られた該コマンドワードの少なくとも一部分とを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、選択信号を生成する、コンパレータとを含む、請求項４０に記載のコンピュータシステム。
【請求項４８】
前記比較ワードは、複数のビットを含み、前記コマンドワードの前記一部分は、複数のビットを含み、該比較ワードと該コマンドワードの少なくとも一部分とを比較することは、該比較ワードの該複数のビットと該コマンドワードの該一部分の該複数のビットとを比較することを包含し、前記コンパレータは、
前記第１の格納レジスタから受け取られた該コマンドワードの該一部分の各比較されたビットのための排他的ＯＲゲートを含み、各排他的ＯＲゲートが、該比較ワードの１ビットおよび該コマンドワードの該一部分の対応する１ビットを受け取る１対の入力端子を有し、該比較ワードの該比較されたビットの全てが該コマンドワードの該一部分の該ビットと一致した場合には、該排他的ＯＲゲートは、前記選択信号を生成する、請求項４７に記載のコンピュータシステム。
【請求項４９】
前記Ｍ個のシフトレジスタのステージの各々は、
コマンドワードビットとして前記コマンドワードのＭビットのうちの１ビットを受け取り、かつ、前記クロック信号に応答して出力端子に該コマンドワードビットを転送する入力端子を有するトランスファーゲートと、
該トランスファーゲートの該出力端子に結合された第１の記憶デバイスであって、該トランスファーゲートの該出力端子からの該コマンドワードビットを格納して、該格納されたコマンドワードビットを該第１の記憶デバイスの出力端子に与える第１の記憶デバイスと、
該第１の記憶デバイスの該出力端子から該格納されたコマンドワードビットを受け取りって、該クロック信号に応答して出力端子に該コマンドビットを転送する入力端子を有する第２のトランスファーゲートと、
該第２のトランスファーゲートの該出力端子に結合された第２の記憶デバイスであって、該第２のトランスファーゲートの該出力端子からの該コマンドワードビットを格納して、該格納されたコマンドワードビットを該第２の記憶デバイスの出力端子に与える第２の記憶デバイスとを含む、請求項４０に記載のコンピュータシステム。
【請求項５０】
前記第２のトランスファーゲートは、第１および第２の基準電圧の間の第１、第２、第３、および第４のスイッチであって、互いに直列に接続された第１、第２、第３、および第４のスイッチを含み、該第１、第２、第３、および第４のスイッチの各々が制御端子を有し、該第２および第３のスイッチの該制御端子が該第１の記憶デバイスの該出力端子に結合されており、該第１の記憶デバイスから前記格納されたコマンドワードビットを受け取り、該第２のスイッチが、ある値のコマンドワードビットに応答して閉になり、該第３のスイッチが、別の値のコマンドワードビットに応答して閉になり、該第２および第３のスイッチの間のノードが第２の記憶デバイスに結合されており、該第１および第４のスイッチの該制御端子が前記クロック信号に結合されることにより、該クロック信号に応答して該第１および第２のスイッチを閉にする、請求項４９に記載のコンピュータシステム。
【請求項５１】
前記制御回路は、ＦＬＡＧ信号を受け取るシフトレジスタを含み、該シフトレジスタがＮ個のステージを有し、該ＦＬＡＧ信号が前記第１ステージの入力端子に与えられ、かつ、クロック信号に応答して、あるステージから次のステージへとシフトされ、該ＦＬＡＧ信号に応答して生成される負荷信号が、該シフトレジスタの該Ｎ個のステージの該出力の少なくとも１つにシフトされる、請求項３９に記載のコンピュータシステム。
【請求項５２】
前記制御回路は、前記ＦＬＡＧ信号を前記クロック信号と同期させるクロック同期回路をさらに含み、該クロック同期回路は、該クロック信号と前記Ｍ個のシフトレジスタのステージのうちの１つのステージの出力とを受け取る論理回路を含み、該論理回路は、それぞれのシフトレジスタのステージの外部にシフトされる該ＦＬＡＧ信号に応答して前記負荷信号を生成する、請求項５１に記載のコンピュータシステム。
【請求項５３】
前記Ｎ／Ｙ個のステージは、第１のステージおよび第２のステージを含み、該第１のステージおよび該第２のステージの各々が入力端子および出力端子を有し、該第１のステージの該出力端子が該第２のステージの該入力端子に結合されており、前記クロック信号の各周期毎に、シフトレジスタの入力端子に与えられたコマンドワードビットは、該第１のステージの該入力端子に与えられ、該第１のステージの該入力端子から該第１のステージの該出力端子にシフトされて、該第２のステージの該入力端子から該第２ステージの該出力端子にシフトされる、請求項４０に記載のコンピュータシステム。
【請求項５４】
前記メモリデバイスは、ランダムアクセスメモリを含む、請求項４０に記載のコンピュータシステム。
【請求項５５】
前記メモリデバイスは、ダイナミックランダムアクセスメモリを含む、請求項５４に記載のコンピュータシステム。
【請求項５６】
前記メモリデバイスは、パケット化されたダイナミックランダムアクセスメモリを含む、請求項５５に記載のコンピュータシステム。
【請求項５７】
メモリデバイスによって使用されるＮ個のＭビットコマンドのコマンドパケットを処理する方法であって、該メモリデバイスは、Ｍ個のシフトレジスタ、およびＹ個の格納レジスタを含み、該Ｍ個のシフトレジスタの各々は、Ｎ／Ｙ個のステージを有し、各ステージは、入力端子および出力端子を有し、該方法は、
Ｎ／Ｙ個のＭビットコマンドワードが格納されるまで、該Ｍ個のシフトレジスタに与えられた、複数のクロックサイクルを有するクロック信号に応答して該Ｎ個のＭビットコマンドワードのビットを各ステージの入力端子に与えて、該Ｎ個のＭビットコマンドワードのビットを各ステージの出力端子にシフトすることにより、該Ｍ個のシフトレジスタ内に該Ｎ個のＭビットコマンドワードのうちのＮ／Ｙ個のＭビットコマンドワードを格納するステップと、
Ｎ／Ｙ個のＭビットコマンドワードが該Ｍ個のシフトレジスタに格納されるたびに、該Ｙ個の格納レジスタに与えられた複数の負荷信号のうちの１つの負荷信号に応答して、該コマンドワードの（Ｎ／Ｙ）*Ｍビットを該Ｍ個のシフトレジスタのステージの出力端子から該Ｙ個の格納レジスタのうちの少なくとも１つ格納レジスタに転送するステップであって、所定の数のクロックサイクルが該Ｍ個のシフトレジスタに与えられたことに応答して、該コマンドワードのＮ*Ｍビットが該Ｙ個の格納レジスタに転送される、ステップと、
該所定の数のクロックサイクルが該Ｍ個のシフトレジスタに与えられたことに応答して、該Ｙ個の格納レジスタの各々から該Ｎ／Ｙ個のＭビットコマンドワードを出力するステップと
を包含する、方法。
【請求項５８】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記Ｙ個の格納レジスタの各々から前記コマンドワードを出力するステップは、前記第１の負荷信号に応答して、第１の格納レジスタから該コマンドワードを出力するステップを包含する、請求項５７に記載の方法。
【請求項５９】
前記メモリデバイスは、コマンドデコーダをさらに含み、該コマンドデコーダは、前記第１の格納レジスタと第２の格納レジスタとに結合されており、該第１の格納レジスタは、前記第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、前記第２の負荷信号に応答して、コマンドワードを格納し、
前記方法は、該第１の負荷信号に応答して、該第１の格納レジスタに転送された該コマンドワードの少なくとも一部分をデコードするステップをさらに包含する、請求項５８に記載の方法。
【請求項６０】
Ｎが４に等しく、かつ、Ｙが２に等しい、請求項５７に記載の方法。
【請求項６１】
前記複数の負荷信号は、第１の負荷信号（Ｆ１）と第２の負荷信号（Ｆ３）とを含み、該第２の負荷信号（Ｆ３）は、該第１の負荷信号（Ｆ１）の後に与えられ、
前記メモリデバイスは、ラッチおよびコンパレータを有する比較回路をさらに含み、該比較回路は、前記Ｙ個の格納レジスタに結合されており、該Ｙ個の格納レジスタは、第１の格納レジスタと第２の格納レジスタとを含み、該第１の格納レジスタは、該第１の負荷信号に応答して、前記Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、
前記方法は、
前記ラッチ内の特定の値を有する比較ワードを提供するステップと、
該コンパレータを用いて前記第１の格納ステージ内に格納された該コマンドワードの少なくとも一部分と該比較ワードとを比較して、該比較ワードが該コマンドワードの該一部分と一致した場合には、該コンパレータを用いて選択信号を生成するステップと
をさらに包含する、請求項５７に記載の方法。
【請求項６２】
前記コマンドワードの前記一部分と前記比較ワードとを比較するステップは、前記第１の負荷信号に応答して、第１の格納レジスタに転送されたコマンドワードの一部分と該比較ワードとを比較するステップを包含する、請求項６１に記載の方法。
【請求項６３】
前記メモリデバイスは、前記Ｙ個の格納レジスタに結合された初期化デコーダをさらに含み、前記比較ワードを提供するステップは、
前記コマンドワードの少なくとも第１の部分が所定の値を有するかどうかを初期化デコーダが決定するステップと、
該コマンドワードの少なくとも第１の部分が該所定の値を有した場合には、該初期化デコーダにより、前記ラッチが該コマンドワードの少なくとも第２の部分を該比較ワードとして格納するステップとを包含する、請求項６１に記載の方法。
【請求項６４】
前記コマンドワードを用いる前記メモリデバイスは、ランダムアクセスメモリを含む、請求項５７に記載の方法。
【請求項６５】
前記コマンドワードを用いる前記メモリデバイスは、ダイナミックランダムアクセスメモリを含む、請求項６４に記載の方法。
【請求項６６】
前記コマンドワードを用いる前記メモリデバイスは、パケット化されたダイナミックランダムアクセスメモリを含む、請求項６５に記載の方法。
【請求項６７】
プロセッサバスを有するプロセッサであって、Ｎ個のＭビットコマンドワードを含むコマンドパケットを送信するプロセッサを有するコンピュータシステムにおいて、各コマンドワードは、データを格納するための位置を決定する行アドレスおよび列アドレスを示し、該コンピュータシステムは、入力装置、出力装置および複数のパケット化されたメモリデバイスをさらに有し、該入力装置、該出力装置および該複数のパケット化されたメモリデバイスは、該プロセッサバスを介して該プロセッサに結合されており、各パケット化されたメモリデバイスは、Ｍ個のシフトレジスタと、Ｙ個の格納レジスタと、ラッチおよびコンパレータをと有する比較回路とを含み、該Ｍ個のシフトレジスタの各々は、Ｎ／Ｙ個のステージを有し、各ステージは、入力端子および出力端子を有し、各コンパレータは、該Ｙ個の格納レジスタに結合されており、該Ｙ個の格納レジスタは、第１の格納レジスタと第２の格納レジスタとを含み、該第１の格納レジスタは、該第１の格納レジスタに与えられた第１の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の格納レジスタは、該第２の格納レジスタに与えられた第２の負荷信号に応答して、該Ｍ個のシフトレジスタから受け取られたコマンドワードを格納し、該第２の負荷信号は、該第１の負荷信号が該第１の格納レジスタに与えられた後に、該第２の格納レジスタに与えられ、該コマンドパケットを処理する方法であって、該方法は、
Ｎ／Ｙ個のＭビットコマンドワードが格納されるまで、該Ｍ個のシフトレジスタに与えられた、複数のクロックサイクルを有するクロック信号に応答して該Ｎ個のＭビットコマンドワードのビットを各ステージの入力端子に与えて、該Ｎ個のＭビットコマンドワードのビットを各ステージの出力端子にシフトすることにより、該複数のメモリデバイスの該Ｍ個のシフトレジスタ内に該Ｎ個のＭビットコマンドワードのうちのＮ／Ｙ個のビットコマンドワードを格納するステップと、
Ｎ／Ｙ個のＭビットコマンドワードが該Ｍ個のシフトレジスタに格納されるたびに、該Ｙ個の格納レジスタのうちの少なくとも１つの格納レジスタに与えられた、複数の負荷信号のうちの１つの負荷信号に応答して、該コマンドワードの（Ｎ／Ｙ）*Ｍビットを該Ｍ個のシフトレジスタのステージの出力端子から該Ｙ個の格納レジスタのうちの少なくとも１つ格納レジスタに転送するステップであって、所定の数のクロックサイクルに応答して、該コマンドワードのＮ*Ｍビットが該Ｙ個の格納レジスタに転送される、ステップと、
該所定の数のクロックサイクルが該Ｍ個のシフトレジスタに与えられたことに応答して、該Ｙ個の格納レジスタの各々から該Ｎ／Ｙ個のＭビットコマンドワードを出力するステップと、
該ラッチ内の特定の値を有する比較ワードを提供するステップと、
該コンパレータを用いて各メモリデバイスの該第１の格納レジスタに格納された該コマンドワードの少なくとも一部分とそれぞれのメモリデバイスに対する該比較ワードとを比較するステップと、
該比較ワードがメモリデバイス内の該コマンドワードの該一部分と一致した場合には、該メモリデバイスの該コンパレータを用いて選択信号を生成するステップと
を包含する、方法。
【請求項６８】
前記メモリデバイスは、前記Ｙ個の格納レジスタに結合された初期化デコーダをさらに含み、前記比較ワードを提供するステップは、
前記コマンドワードの少なくとも第１の部分が所定の値を有するかどうかを初期化デコーダが決定するステップと、
該コマンドワードの少なくとも第１の部分が該所定の値を有した場合には、該初期化デコーダにより、前記ラッチが該コマンドワードの少なくとも第２の部分を該比較ワードとして格納するステップとを包含する、請求項６７に記載の方法。
【請求項６９】
前記コマンドワードの前記一部分とそれぞれの比較ワードとを比較するステップは、前記第１の負荷信号に応答して、前記第１の格納レジスタに転送されたコマンドワードの一部分とそれぞれの比較ワードとを比較するステップを包含する、請求項６７に記載の方法。
【請求項７０】
Ｎが４に等しく、かつ、Ｙが２に等しい、請求項６７に記載の方法。
【請求項７１】
Ｎが８に等しく、かつ、Ｙが２に等しい、請求項６７に記載の方法。
【発明の詳細な説明】
技術分野
本発明は、コンピュータシステムに用いられるメモリデバイスに関し、より詳細には、メモリデバイスにおいて高速にコマンドを処理するために用いられる入力バッファに関する。
発明の背景
従来のコンピュータシステムは、伝統的にはプロセッサのための命令を格納するリードオンリーメモリ（「ＲＯＭ」）および、プロセッサがデータを書き込みあるいはデータを読み出し得るシステムメモリを含む、様々なメモリデバイスに結合されたプロセッサ（図示せず）を有する。プロセッサはまた、一般にはスタティックランダムアクセスメモリ（「ＳＲＡＭ」）である外部キャッシュメモリと、連絡し得る。プロセッサ１２はまた、入力デバイス、出力デバイス、およびデータ格納デバイスとも連絡する。
プロセッサは一般に比較的高速で動作する。Pentium▲Ｒ▼およびPentiumPro▲Ｒ▼マイクロプロセッサなどの、少なくとも２００ＭＨｚのクロック速度で動作するプロセッサが現在利用可能である。しかし、既存のコンピュータシステムの残りの要素は、ＳＲＡＭキャッシュを例外として、プロセッサの速度では動作し得ない。このため、システムメモリデバイスならびに入力デバイス、出力デバイス、およびデータ格納デバイスは、プロセッサバスには直接結合されない。むしろ、システムメモリデバイスは一般には、メモリコントローラ、バスブリッジまたは同様なデバイスを介してプロセッサバスに結合されており、入力デバイス、出力デバイスおよびデータ格納デバイスは、バスブリッジを介してプロセッサバスに結合される。メモリコントローラは、システムメモリデバイスが、プロセッサのクロック周波数よりも実質的に低い、低クロック周波数で動作することを可能にする。同様にバスブリッジは、入力デバイス、出力デバイス、およびデータ格納デバイスが実質的により低い周波数で動作することを可能にする。現在、例えば２００ＭＨｚのクロック周波数を有するプロセッサを、システムメモリデバイスおよび他の要素を制御するための６６ＭＨｚのクロック周波数を有するマザーボード上に実装し得る。
システムメモリへのアクセスは、プロセッサにとって頻繁に起こる動作である。例えば２００ＭＨｚで動作するプロセッサが、例えば６６ＭＨｚで動作するシステムメモリデバイスからデータを読み出したりこれにデータを書き込むために必要な時間は、プロセッサがその動作を達成することができる速度を大きく遅らせる。従って、システムメモリデバイスの動作速度の増大のために多くの努力が行われてきた。
システムメモリデバイスは一般に、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）である。初期においては、ＤＲＡＭは非同期型であったため、マザーボードのクロック速度でさえも動作しなかった。実際、非同期型ＤＲＡＭへのアクセスはしばしば、ＤＲＡＭがメモリ転送を完了するまでプロセッサを停止させるための待ち状態が発生されることを必要としていた。しかし、非同期型ＤＲＡＭの動作速度は、メモリアクセス毎にＤＲＡＭにアドレスが供給されることを必要とないバーストおよびページモードＤＲＡＭなどの革新により、増大に成功した。より最近では、マザーボードのクロック速度におけるデータのパイプライン転送を可能にする、同期型ダイナミックランダムアクセスメモリ（「ＳＤＲＡＭ」）が開発されている。しかし、ＳＤＲＡＭでさえも、現在利用可能なプロセッサのクロック速度で動作することは不可能である。従って、ＳＤＲＡＭをプロセッサバスに直接接続することはできず、代わりに、メモリコントローラ、バスブリッジ、または同様なデバイスを介してプロセッサバスにインタフェースされなければならない。プロセッサの動作速度とＳＤＲＡＭの動作速度との間の不均衡は、システムメモリへのアクセスを必要とする動作をプロセッサが完了し得る速度を制限し続けている。
この動作速度の不均衡に対する解決策が、「SyncLink」として知られるコンピュータアーキテクチャとして提案されている。SyncLinkアーキテクチャにおいて、システムメモリは、プロセッサバスを直接介してプロセッサに結合されている。システムメモリに別のアドレスおよび制御信号が供給されることを必要とすることなく、SyncLinkメモリデバイスは、制御情報およびアドレス情報の両方を含むコマンドパケットを受け取る。そしてSyncLinkメモリデバイスは、プロセッサバスのデータバス部分に直接結合されたデータバス上にデータを出力し、あるいはデータを受け取る。
SyncLinkパケット化ＤＲＡＭアーキテクチャを用いたコンピュータシステム１０の一例を、図１に示す。コンピュータシステム１０は、３つのパケット化ダイナミックランダムアクセスメモリあるいはSyncLinkＤＲＡＭ（「ＳＬＤＲＡＭ」）デバイス１６a〜cに結合された、プロセッサバス１４を有するプロセッサ１２を備えている。コンピュータシステム１０はまた、バスブリッジ２２および拡張バス２４（業界標準アーキテクチャ（「ＩＳＡ」）バスまたは周辺要素相互接続（「ＰＣＴ」）バスなど）を介してプロセッサ１２に結合された、キーパッドまたはマウスなどの１つ以上の入力デバイス２０を備えている。入力デバイス２０は、オペレータまたは電子デバイスがコンピュータシステム１０にデータを入力することを可能にする。プロセッサ１２によって生成されたデータの表示あるいはその他の出力を行うために、１つ以上の出力デバイス３０がプロセッサ１２に結合されている。出力デバイス３０は拡張バス２４、バスブリッジ２２およびプロセッサバス１４を介してプロセッサ１２に結合されている。出力デバイス２４の例としては、プリンタおよび画像表示ユニットが含まれる。格納媒体（図示せず）にデータを格納しあるいは格納媒体からデータを取り出すために、１つ以上のデータ格納デバイス３８が、プロセッサバス１４、バスブリッジ２２、および拡張バス２４を介して、プロセッサ１２に結合されている。格納デバイス３８および格納媒体の例としては、固定ディスクドライブ、フロッピーディクスドライブ、テープカセット、およびコンパクトディスクリードオンリーメモリデバイスが含まれる。
動作の際、プロセッサ１２は、制御情報およびアドレス情報の両方を含むコマンドパケットをメモリデバイス１６ａ〜ｃに送ることにより、プロセッサ１２バス１４を介してメモリデバイス１６ａ〜ｃと連絡する。データは、プロセッサバス１４のデータバス部分を介して、プロセッサ１２およびメモリデバイス１６ａ〜ｃ間で結合される。全てのメモリデバイス１６ａ〜ｃはプロセッサバス１４の同じ端子(conductor)に接続されているが、１つのメモリデバイス１６ａ〜ｃのみが同時にデータを読み出しあるいはデータを書き込むことによって、プロセッサバス１４上のバス競合を回避する。バス競合は、メモリデバイス１６ａ〜ｃの各々およびバスブリッジ２２がユニークな識別子を有することによって回避され、コマンドパケットは、これらの要素のうち１つのみを選択する識別コードを含んでいる。
SyncLinkパケット化されたＤＲＡＭのための典型的なコマンドパケットを図２に示す。コマンドパケットは、各々が１０ビットのデータを含む４つのコマンドワードからなる。第１のコマンドワードＷ1は、コマンドパケットを受け取ることを意図されたパケット化ＤＲＡＭ１６ａ〜ｃを識別する、７ビットのデータを含んでいる。以下に説明するように、パケットＤＲＡＭの各々には、第１のコマンドワードＷ1中の７個のＩＤビットと比較される、ユニークなＩＤコードが設けられている。このように、パケット化ＤＲＡＭ１６ａ〜ｃの全てがコマンドパケットを受け取るが、第１のコマンドワードＷ1の７個のＩＤビットとマッチするＩＤコードを有するパケット化ＤＲＡＭ１６ａ〜ｃのみが、コマンドパケットに応答する。
第１のコマンドワードＷ1の残りの３個のビットおよび第２のコマンドワードＷ2中の３個のビットは、６ビットのコマンドを構成する。典型的なコマンドは、様々なモードにおける読み出しおよび書き込みであり、例えばメモリセルのページまたはバンクへのアクセスである。第２のコマンドワードＷ2の残りの７個のビットならびに第３および第４のワードＷ3およびＷ4の一部は、バンク、メモリ転送の行および列アドレス、またはマルチビットメモリ転送の開始を指定する、２０ビットのアドレスを構成する。一実施形態において、２０ビットのアドレスは、３ビットのバンクアドレス、１０ビットの行アドレス、および７ビットの列アドレスに分割される。
図２に示すコマンドパケットは、各々が最大１０ビットを含む４つのコマンドワードからなっているが、コマンドパケットはより少ないあるいはより多くのコマンドワードを含み得、また各コマンドワードはより少ないあるいはより多くのビットを含み得ることが理解される。
コンピュータシステム１０はまた、図１中では簡潔さのために省略されているが、いくつかの他の要素および信号線を備えている。例えば、以下に説明するように、メモリデバイス１６ａ〜ｃはまた、内部タイミング信号を提供するためのマスタークロック信号、メモリデバイス１６へのデータの出し入れをクロックするデータクロック信号、およびコマンドパケットの開始を示すＦＬＡＧ信号を受け取る。
図３に、メモリデバイス１６をブロック図の形で示す。メモリデバイス１６の各々は、マスタークロック信号４２を受け取ってメモリデバイス１６中の様々な動作のタイミングを制御するための多数の他のクロックおよびタイミング信号を生成する、クロックデバイダーおよび遅延回路４０を有している。メモリデバイス１６はまた、内部クロックＣＬＫ信号、コマンドバス５０上のコマンドパケットＣＡ０〜ＣＡ９、および配線５２上のＦＬＡＧ信号を受け取る、コマンドバッファ４６およびアドレスキャプチャ回路４８を備えている。前述したように、コマンドパケットは各メモリ転送に対しての制御情報およびアドレス情報を含んでおり、ＦＬＡＧ信号はコマンドパケットの開始を識別する。コマンドバッファ４６はコマンドパケットをバス５０から受け取り、コマンドパケットの少なくとも一部を、ＩＤレジスタ５６からの識別データに対して比較することにより、コマンドパケットがメモリデバイス１６ａに向けられたものであるかそれとも他のメモリデバイス１６ｂ、ｃに向けられたものであるかを決定する。コマンドバッファ４６は、コマンドがメモリデバイス１６ａに向けられたものであることを決定すると、コマンドデコーダおよびシーケンサ６０にコマンドを供給する。コマンドデコーダおよびシーケンサ６０は、そのコマンドに対応するメモリ転送中のメモリデバイス１６ａの動作を制御するために、多数の内部制御信号を生成する。
アドレスキャプチャ回路４８はまた、コマンドバス５０からコマンドパケットを受け取り、コマンド中のアドレス情報に対応する２０ビットアドレスを出力する。アドレスはアドレスシーケンサ６４に供給され、アドレスシーケンサ６４は対応する３ビットのバンクアドレスをバス６６上に生成し、１１ビットの行アドレスをバス６８上に生成し、６ビットの列アドレスをバス７０上に生成する。
従来のＤＲＡＭの問題点の１つは、ＤＲＡＭアレイ中の回路をプリチャージして平衡化するために必要な時間のために、比較的低速であることである。図３に示すパケット化ＤＲＡＭ１６ａは主として、複数のメモリバンク８０（この場合８個のメモリバンク８０ａ〜ｈ）を用いることによってこの問題を解決している。１つのバンク８０ａからのメモリ読み出しの後、残りのバンク８０ｂ〜ｈがアクセスされている間にバンク８０ａがプリチャージされ得る。メモリバンク８０ａ〜ｈの各々は、各行ラッチ／デコーダ／ドライバ８２ａ〜ｈから行アドレスを受け取る。行ラッチ／デコーダ／ドライバ８２ａ〜ｈは全てプリデコーダ８４から同じ行アドレスを受け取る。プリデコーダ８４自身は、行アドレスレジスタ８６またはリフレッシュカウンタ８８のいずれか（マルチプレクサ９０によって決定される）から行アドレスを受け取る。しかし、任意の時刻において行ラッチ／デコーダ／ドライバ８２ａ〜ｈのうちの１つ（バンク制御ロジック９４によってバンクアドレスレジスタ９６からのバンクデータの関数として決定される）のみが、アクティブである。
バス７０上の列アドレスは、列ラッチ／デコーダ１００に印加され、列ラッチ／デコーダ１００は、Ｉ／Ｏゲート回路１０２にＩ／Ｏゲート信号を供給する。Ｉ／Ｏゲート回路１０２は、センスアンプ１０４を介してメモリバンク８０ａ〜ｈの列とインターフェースしている。センスアンプ１０４および、読み出しデータ路１１０および書き込みデータ路１１２を含むデータ路サブシステム１０８へのＩ／Ｏゲート回路１０２を介して、データはメモリバンク８０ａ〜ｈに対してあるいはメモリバンク８０ａ〜ｈから結合される。読み出しデータ路１１０は、Ｉ／Ｏゲート回路１０２からデータを受け取って格納する読み出しラッチ１２０を含む。図２に示すメモリデバイス１６ａにおいて、６４ビットのデータが読み出しラッチ１２０に印加されて格納される。そして読み出しラッチは４つの１６ビットデータワードをマルチプレクサ１２２に供給する。マルチプレクサ１２２は、１６ビットのデータワードの各々を順に読み出しＦＩＦＯバッファ１２４に印加する。連続的な１６ビットデータワードは、ＦＩＦＯバッファ１２４を介して、プログラマブル遅延回路１２６によって内部クロックから生成されるクロック信号によりクロックされる。ＦＩＦＯバッファ１２４は、これらの１６ビットワードおよび２つのクロック信号（クロック信号および直交位相クロック信号）をドライバ回路１２８に印加し、ドライバ回路１２８は、１６ビットデータワードをプロセッサバス１４の一部を構成するデータバス１３０に印加する。ドライバ回路１２８はまたクロックバス１３２にクロック信号を印加することにより、データバス１３０上のデータを読み出しているプロセッサ１２などのデバイスがデータと同期できるようにする。
書き込みデータ路１１２は、データバス１３０に結合された受信バッファ１４０を含む。受信バッファ１４０は、データバス１３０からの１６ビットワードを４つの入力レジスタ１４２に順に印加する。４つの入力レジスタ１４２の各々は、クロック発生器回路１４４からの信号によって選択的にイネーブルされる。このように、入力レジスタ１４２は４つの１６ビットデータワードを順に格納して、これらを組み合わせて書き込みＦＩＦＯバッファ１４８に印加される１つの６４ビットデータワードにする。書き込みＦＩＦＯバッファ１４８はクロック発生器１４４からの信号および内部書き込みクロックＷＣＬＫによってクロックされて、６４ビット書き込みデータを書き込みラッチおよびドライバ１５０に順に印加する。書き込みラッチおよびドライバ１５０は、Ｉ／Ｏゲート回路１０２およびセンスアンプ１０４を介して、６４ビット書き込みデータをメモリバンク８０ａ〜ｈのうちの１つに印加する。
上述のように、SyncLinkアーキテクチャの１つの重要な目標は、プロセッサとメモリデバイスとの間のデータ転送がずっと速い速度で起こることを可能にすることである。しかし、図３に示すパケット化ＤＲＡＭを含むパケット化ＤＲＡＭの動作速度は、メモリデバイス１６ａに印加されるコマンドパケットを受け取り処理するために必要な時間によって制限される。すなわち、コマンドパケットは受け取られて格納されなければならないだけではなく、デコードされて様々な信号を発生するために用いられなければならない。しかし、メモリデバイス１６ａが非常に高速に動作するためには、コマンドパケットはその分高速な速度でデバイス１６ａに印加しなければならない。メモリデバイス１６ａの動作速度が増大するにつれ、コマンドパケットは、コマンドバッファ４６がコマンドパケットを処理し得る速度を越え得る速度でメモリデバイス１６ａに供給されることになる。
パケット化ＤＲＡＭの動作速度を増大するための１つのアプローチが、Troy A.マニングの米国特許出願番号０８／８１３０４１に記載されている。マニングの出願に記載されたＤＲＡＭにおいては、コマンドパケット中の４つの１０ビットコマンドワードが、４ステージの１０ビットシフトレジスタ中を順にシフトされる。４つのコマンドワードはシフトレジスタ中にシフトされた後、格納レジスタに同時に転送されてコマンドデコーダおよびシーケンサ６０ならびにアドレスシーケンサ６４によって処理される。しかし、コマンドワードの処理は、コマンドパケット中の４つすべてのコマンドワードがシフトレジスタ中にシフトされ格納レジスタに転送されるまで開始しない。図３のパケット化ＤＲＡＭ１６ａでは、コマンドワードは、クロックの各エッジにおいてコマンドバッファ４６中にシフトされる（すなわち各クロック周期につき２つのコマンドワード）。このように、コマンドパケットの処理が開始され得るまでに、２クロック周期の遅延が存在する。この結果、マニングの出願に開示されたパケット化ＤＲＡＭは、最高速度よりも小さい速度しか提供しない。
上記の説明はパケット化ＤＲＡＭにおけるより高速なコマンドバッファの必要性に関するものであるが、同様な問題が、制御信号その他の信号を高速に処理しなければならない非同期型ＤＲＡＭおよび同期型ＤＲＡＭなどの他のメモリデバイスについても存在する。従って、上記に説明した理由のため、従来のコマンドバッファの制限された動作速度は、メモリデバイス、特にパケット化ＤＲＡＭの最大動作速度を厳しく制限する原因となっている。従って、コマンドパケットおよびその他のメモリ制御信号をより高速に受け取りかつ処理が可能なコマンドバッファが要求されている。
発明の要旨
パケット化ＤＲＡＭなどのメモリデバイス用のコマンドバッファが、Ｍビットバス上のＮ個のＭビットコマンドワードのコマンドパケットを受け取るように構成される。コマンドバッファは、それぞれＭビットバスの各ビットに結合された出力端子、クロック端子、および入力端子を有する、Ｍ個のシフトレジスタを備えている。各シフトレジスタはＮ／Ｙステージを有しており、各ステージの入力端子に印加された各コマンドワードビットは、クロック信号に応答して各ステージの出力端子にシフトされる。コマンドバッファはまたＹ個の格納レジスタを有している。ここでＹは１より大きい整数である。各格納レジスタは（Ｎ／Ｙ）＊Ｍ個の格納セルを有しており、各格納セルは、各シフトレジスタステージの出力端子に結合された入力端子および、ロード端子を有している。格納セルの各々は、格納セルのロード端子に印加されたロード信号に応答して、各シフトレジスタステージの出力端子における信号を格納する。制御回路は、コマンドワードのうちのＮ／Ｙ個がシフトレジスタ中にシフトされた後ごとに、ロード信号を生成する。ロード信号は、連続する格納レジスタのロード端子に順に印加され、このことにより、Ｎ個のコマンドワードがシフトレジスタ中にシフトされたときに、格納レジスタのそれぞれは各Ｎ／Ｙ個のコマンドワードを受け取る。動作に際して、格納レジスタのうちの１つに格納されたコマンドワードを、他のコマンドワードをシフトレジスタ中にシフトして別の格納レジスタに格納するよりも前に、デコードするか比較ワードに比較することなどにより処理し得る。
【図面の簡単な説明】
図１は、Synclinkアーキテクチャを用いたコンピュータシステムのブロック図である。
図２は、Synclinkパケット化されたＤＲＡＭ用の典型的なコマンドパケットを示す図である。
図３は、図１のコンピュータシステムにおいて用いられ得るパケット化されたＤＲＡＭのブロック図である。
図４は、図３のパケット化されたＤＲＡＭにおいて使用可能なコマンドバッファのブロック図である。
図５は、図３のパケット化されたＤＲＡＭにおいて使用可能なコマンドバッファの、より詳細なブロック図である。
図６は、図４および図５に示すコマンドバッファの制御回路の一部分において用いられるクロック信号を示すタイミング図である。
図７は、図４および図５に示すコマンドバッファにおいて用いられるシフトレジスタ回路のうちの１つの論理図である。
図８は、図７のシフトレジスタ回路において用いられるシフトレジスタステージの模式図および論理図である。
図９は、図８のシフトレジスタステージにおいて存在する様々な信号を示すタイミング図である。
図１０は、図４および図５に示すコマンドバッファにおいて用いられる格納レジスタおよびコンパレータの模式図および論理図である。
図１１は、図１０に示す格納レジスタにおいて用いられるレジスタ回路の論理図である。
図１２は、図４および図５に示すコマンドバッファにおいて用いられるデコーダの論理図である。
図１３は、各メモリデバイスに固有の識別データを格納するために、図４および図５に示すコマンドバッファにおいて用いられるＩＤレジスタの論理図である。
図１４は、図１３のＩＤレジスタ回路において用いられるラッチ回路の模式図である。
発明の詳細な説明
本発明によるコマンドバッファ２００の一実施形態を図４に示す。コマンドバッファ２００は、図３のコマンドバッファ４６の代わりに用いられ得、その結果得られるメモリデバイスは、図１に示すコンピュータシステムにおいて用いられ得る。図４を参照すると、複数のパケットワードからなるコマンドパケットが、コマンドデータバス２０４を介してシフトレジスタ２０２に入力される。バス２０４の幅Ｍは、シフトレジスタ２０２のサイズに対応し、コマンドパケット内のパケットワードの数Ｎは、シフトレジスタ２０２のステージの数の整数サブマルチプルに対応している。図４に示す実施形態において、シフトレジスタ２０２は、コマンドパケット内のステージの数の半分、すなわち２つのシフトステージを有する。なぜなら４つのコマンドワードがあるからである。このように、シフトレジスタ２０２は、クロック信号ＣＬＫに応答して、２つの１０ビットパケットワードの２つのグループを順に受け取る。４ワードコマンドパケットの開始と共に、ＦＬＡＧ信号が制御回路２０５に入力され、制御回路２０５は、シフトレジスタ２０２と共にＣＬＫ信号によってクロックされる。２つのコマンドワードがシフトレジスタ２０２にシフトされた後、制御回路２０５はＬＯＡＤ１信号を生成し、ＬＯＡＤ１信号は、第１の格納レジスタ２０６に入力される。第１の格納レジスタ２０６はその後、最初の２つのコマンドワードをシフトレジスタ２０２からロードする。さらに２つのコマンドワードがシフトレジスタ２０２にシフトされた後、制御回路２０５は、ＬＯＡＤ２信号を生成する。ＬＯＡＤ２信号は、第２の格納レジスタ２０８に入力される。第２の格納レジスタ２０８はその後、残りの２つのコマンドワードをシフトレジスタ２０２からロードする。第１および第２の格納レジスタ２０６、２０８は、その後、両方で４つの１０ビットコマンドワードを出力する。格納レジスタ２０８がロードされた後、クロックエッジ上の制御回路２０５によって生成されたＬＯＡＤ  ＤＥＣに応答して、コマンドデコーダが、格納レジスタ２０６、２０８からＮ個のＭビットコマンドワードをラッチする。コマンドデコーダ２１６がその後、コマンドバス２２０上に、デコードされたコマンドＣＯＭＭＡＮＤを出力し、コンパレータ２１４が、ライン２２２上にＣＨＰＳＥＬ信号を生成する。後述するように、ＣＨＰＳＥＬ信号は、アクティブハイのとき、コマンドバッファ２００を含むメモリデバイスに、コマンドバス２２０上の１以上のＣＯＭＭＡＮＤ信号に対応する機能を実行させる。
図４に示す実施形態においては、２つの１０ビットコマンドワードの２セットがシフトレジスタ２０２にシフトされる。この実施形態において、第１および第２の格納レジスタ２０６、２０８は、４０ビットのコマンドワードを受け取り格納する。しかし、より一般的な場合には、シフトレジスタ２０２がＮ／Ｙステージを有し、Ｎ／Ｙステージの各々は、Ｍビットの幅を有する。Ｙ格納レジスタ２０６、２０８は各々、Ｎ／Ｙ個のＭビットコマンドワードをロードする。Ｍが８である実施例において、ＹおよびＮは両方とも４であり、シフトレジスタ２０２は、８ビットの幅を有する単一のステージを有し、４つの格納レジスタが各々１つの８ビットコマンドワードをロードする。さらに、図４に示す実施形態において、コマンドワードの各々は、各ＣＬＫサイクル毎に、シフトレジスタ２０２の２つのステージを介してシフトされる。
第１の格納レジスタ２０６がロードされた後、第１の格納レジスタ２０６は、最初の２つのコマンドワードが、初期化デコーダ２１０、ＩＤレジスタ２１２、コンパレータ２１４、およびコマンドデコーダ２１６に出力され続ける。デコーダ２１０、ＩＤレジスタ２１２、およびコンパレータ２１４の機能は、最初のコマンドワードのＩＤ部分を調べて、コマンドワードがコマンドバッファ２００を含むメモリデバイスのためのものであるか否かを決定することである。より特定すると、コマンドバッファ２００は、初期化ルーチン中に初期化コマンドパケットに含まれる固有の識別コードでプログラムされる。格納レジスタ２０６から出力される初期化コマンドワードの一部分は、デコーダ２１０に入力され、別の部分はＩＤレジスタ２１２に入力される。初期化コマンドパケットの上記部分は、デコーダ２１０によって認識される。デコーダ２１０は、その後ラッチ信号を生成し、ラッチ信号は、ＩＤレジスタ２１２に、初期化コマンドワードの他の部分を格納させる。初期化コマンドワードの、ＩＤレジスタ２１２に格納される部分は、コマンドバッファ２００を含むメモリデバイスを独自に識別する。従って、コマンドワードの、デコーダ２１０によってデコードされる部分は、すべてのメモリデバイスについて同一であり、コマンドワードの、ＩＤレジスタ２１２に入力される部分は、各メモリデバイスについて異なる。（後述するように、初期化中、すべてのメモリデバイスが初期化コマンドパケットに同時に応答することを防止する手段が提供される。）従って、初期化後、ＩＤレジスタ２１２は、コマンドバッファ２００を含むメモリデバイスに固有の識別データを含む。
識別データがＩＤレジスタ２１２に格納された後、格納レジスタ２０６からのコマンドワードのＩＤ部分がコンパレータ２１４に入力される。その後コンパレータ２１４は、コマンドワードのＩＤ部分を、ＩＤレジスタ２１２に格納された識別データのＩＤ部分と比較する。マッチした場合、コンパレータ２１４は、アクティブなＣＨＰＳＥＬ信号を生成し、アクティブなＣＨＰＳＥＬ信号が、メモリデバイスに、コマンドバス２２０上のＣＯＭＭＡＮＤに対応する動作を実行させる。重要なことは、僅か２つのコマンドワードがシフトレジスタ２０２にシフトされた後に、コンパレータ２１４が、コマンドワードのＩＤ部分を、ＩＤレジスタ２１２に格納された識別データと比較することができるということである。これは、マニングの出願に記載されたコマンドバッファと対照的である。マニングの出願においては、コンパレータ２１４は、４つ全てのコマンドワードがシフトレジスタにシフトされてから１クロック期間経過するまで、コマンドパケットのＩＤ部分をＩＤレジスタに格納された識別データと比較することはできない。さらに、コマンドバッファ２００は、最初の２つのコマンドワードがシフトレジスタ２０２にシフトされた後、最初の３つのコマンドビットをデコードし始めることができる。対照的に、マニングの出願に記載されたコマンドバッファは、４つ全てのコマンドワードがシフトレジスタ２０２にシフトされるまで、いずれのコマンドビットをもデコードし始めることができない。コマンドパケット全体がコマンドバッファ２００によって受け取られる前にコマンドパケットの一部分を処理することにより、コマンドバッファは、コマンドパケットの処理をより迅速に完了することができる。
コマンドバッファ２００を図５のブロック図に、より詳細に示す。図５に示すように、制御回路２０６は、クロック信号ＣＬＫおよびその直交信号ＣＬＫ９０を、コマンドバッファ２００を含むメモリデバイス内の他の部分から受け取るクロック回路２３０を含む。図６のタイミング図に示すように、ＣＬＫおよびＣＬＫ９０信号は、ＮＯＲゲート２３２に入力され、ＮＯＲゲート２３２は、ＣＬＫとＣＬＫ９０との両方がローのときにはいつでもハイを出力する。ＮＯＲゲート２３２の出力は、第１のインバータ２３４を介して入力されてＣＬＫ１信号を生成し、その後、第２のインバータ２３６を介して入力されてＣＬＫ１＊信号を生成する（信号の名前の後の「＊」記号は、本明細書を通じて、信号の補数を示すために用いられる）。
これもまた図６に示すように、ＣＬＫ９０およびＣＬＫ信号はさらに、ＮＡＮＤゲート２４０に入力され、ＮＡＮＤゲート２４０は、ＣＬＫとＣＬＫ９０との両方がハイであるときにはいつでもローを出力する。ＮＡＮＤゲート２４０の出力は、インバータ２４２を介して連結されてＣＬＫ０信号を生成し、第２のインバータ２４４を介して連結されてＣＬＫ０＊信号を生成する。後に詳細に説明するように、これらの信号はコマンドバッファ２００を介して用いられる。
制御回路２０６はさらに、１対のシフトレジスタ２４６、２４８を含み、シフトレジスタ２４６、２４８は、互いに直列に接続されて、８ステージのシフトレジスタを形成する。シフトレジスタ２４６は、ＦＬＡＧ信号を受け取り、続いて、ＣＬＫ０、ＣＬＫ０＊、ＣＬＫ１、およびＣＬＫ１＊信号に応答して、ＦＬＡＧ信号を、シフトレジスタ回路２４６の４つのステージを介してシフトさせ、その後、シフトレジスタ回路２４８の４つのステージを介してシフトさせる。ＦＬＡＧ信号は、ＣＬＫ信号の各サイクル毎にシフトレジスタ回路２４６、２４８の２つのステージを介してシフトされる。従って、ＦＬＡＧがハイになると、シフトレジスタ回路２４６、２４８の２つの連続Ｆ＜０：７＞出力が、各クロックサイクル毎に、順にハイになる。
図５に示すシフトレジスタ２０２は、１０個の別々のシフトレジスタ回路２５０ａ〜ｊを有する。シフトレジスタ回路２５０ａ〜ｊの各々は、入ってくる１０ビットのパケットワードの応答ビットＣＡ０〜ＣＡ９を受け取る。さらに後述するように、シフトレジスタ回路２５０ａ〜ｊの各々は、２つのシフトレジスタステージを含む。従って、各クロックサイクル後、２つのコマンドビットＣＡが各シフトレジスタ回路２５０にシフトされ、これらのビットは、２ビットワードＢ＜０：１＞として使用可能である。従って、１０個のシフトレジスタ回路２５０ａ〜ｊは、計２０ビットのコマンドパケットを出力する。
コマンドバッファ２００の残りのコンポーネントは、図５に１つのブロックとして示す、デコーダ２１０、ＩＤレジスタ２１２、格納レジスタ２０８、およびコンパレータ２１４である。これらのコンポーネントは、上述したように動作する。しかし、図５のブロック図は、いくつかの追加の信号入力および出力、すなわち、ＳＩおよびＲＥＳＥＴ＊入力ならびにＳＯ出力を示す。これらの信号入力および出力のすべてが、初期化シーケンス中に用いられる。特に、初期化において、ＲＥＳＥＴ＊入力はアクティブローになって、所定の識別データ、すなわち、数「６３」をＩＤレジスタ２１２にロードする。後述するように、ＲＥＳＥＴ＊信号はさらに、各格納レジスタ２０６、２０８の２０ビットすべてをクリアすることにより、疑似（spurious）ＣＯＭＭＡＮＤ信号がコマンドバス２２０上に現れないようにする。ＩＤレジスタ２１２内の識別データを公知の値、すなわち、６３に設定することにより、プロセッサは続いて、コマンドバッファ２００を含むメモリデバイスに固有の識別データをＩＤレジスタ２１２にロードすることができる。上述したように、コンパレータ２１４は、メモリデバイスが様々な機能を実行することを可能にするためには、ＣＨＰＳＥＬ信号を生成しなければならない。これらの様々な機能には、デコーダ２１０が、コマンドワードの、ＬＯＡＤＩＤ信号を生成することを可能にする部分をデコードすることが含まれる。従って、プロセッサが、ＩＤレジスタ２１２内の識別データを含むコマンドパケットをコマンドバッファ２００に入力することができなかった場合、コンパレータ２１４はＣＨＰＳＥＬ出力を生成しない。ＣＨＰＳＥＬ出力がない場合、デコーダ２１０は、ＩＤレジスタ２１２に識別データをロードするためにＬＯＡＤＩＤ出力を生成することをしない。しかし、コマンドパケットは初期に、６３のバイナリ等価物を含み、６３のバイナリ等価物は、コンパレータ２１４によって、ＩＤレジスタ２１２内の「６３」の初期識別データと、好意的に比較される。従って、この初期化コマンドが出されると、コンパレータ２１４は、デコーダ２１０がＬＯＡＤＩＤ信号を生成することを可能にするＣＨＰＳＥＬ信号を生成する。ＬＯＡＤＩＤ信号は、コマンドワードの他の部分を、コマンドバッファ２００を含むメモリデバイス用の固有の識別データとしてＩＤレジスタ２１２にラッチする。
初期化ルーチン中、コンピュータシステム１０（図１）内のすべてのメモリデバイスは、同一のコマンドパケットを受け取り、従って、すべてのメモリデバイスが初期化コマンドパケットに同時に応答することを防止する何らかの手段がない場合、同一の識別データをそれぞれのＩＤレジスタ２１２にラッチする。ＳＩ入力およびＳＯ出力はこの目的のために設けられる。コンピュータシステム１０が３つのメモリデバイス１６を含むと仮定すると、第１のメモリデバイスのＳＩ入力は、ジャンパまたは類似の手段を介して永久にハイに保持される。ハイのＳＩ入力は、コマンドデコーダ２１０がＬＯＡＤＩＤ出力を生成して、コマンドパケットの一部分を固有の識別データとしてＩＤレジスタ２１２にロードすることを可能にする。第１のメモリデバイスのＳＯ出力は、第２のメモリデバイスのＳＩ入力に連結され、第２のメモリデバイスのＳＯ出力は第３のメモリデバイスのＳＩ入力に連結される。各々のメモリデバイスのＳＯ出力は初期にはローである。しかし、固有の識別データがＩＤレジスタ２１２にロードされると、ＩＤレジスタ２１２はハイのＳＯ出力を生成する。次のメモリデバイスのＳＩ入力に連結されたハイのＳＯ出力は、次のメモリデバイスが識別データでプログラムされることを可能にする。従って、識別データが第１のメモリデバイス用にＩＤレジスタ２１２にロードされた後、そのＳＯ出力はハイになり、従って、第２のメモリデバイスのＳＩ入力をハイに駆動する。その結果、初期化コマンドパケット内の識別データは、第２のメモリデバイスのＩＤレジスタ２１２にロードされ、第２のメモリデバイスのＩＤレジスタ２１２がその後、ハイのＳＯ出力を生成する。ハイのＳＯ出力は、第３のメモリデバイスのＳＩ入力をハイに駆動し、そのことが、第３のメモリデバイスのＩＤレジスタ２１２が第３の初期化コマンドパケット内の識別データを受け取り格納することを可能にする。一旦固有の識別データがＩＤレジスタ２１２に格納されると、メモリデバイスはもはや初期化コマンドパケットに応答しない。なぜなら、識別データは、もはや、初期化コマンドパケット内での識別データであった「６３」ではないからである。
図５を参照して上述したように、図３に示すシフトレジスタ２０２は、１０個の別々のシフトレジスタ回路２５０ａ〜ｊを含む。シフトレジスタ回路２５０ａ〜ｊの各々は、入ってくる１０ビットのパケットワードのそれぞれのビットＣＡ０〜ＣＡ９を受け取る。図６に示すように、シフトレジスタ２５０ａ〜ｊの各々は、２つのシフトレジスタステージ２５２ａ、ｂを含む。第１のステージ２５２ａは、パケットワードビットＣＡを受け取り、その出力は第２のステージ２５２ｂの入力に接続され、さらに外部出力Ｂ＜０＞に接続されている。第２のステージ２５２ｂの出力は、外部出力Ｂ＜１＞に接続されている。各ステージ２５２ａ、ｂの入力から出力への転送は、後により詳細に述べるように、４つのクロック信号ＣＬＫ０、ＣＬＫ０＊、ＣＬＫ１、ＣＬＫ１＊に応答している。２つのクロックサイクル後、２つのコマンドワードビットＣＡがシフトレジスタステージ２５２ａ、ｂにシフトされ、これらの両方が２ビットワードＢ＜０：１＞として使用可能である。従って、１０個のシフトレジスタ回路２５０ａ〜ｊは計２つの１０ビットコマンドワードを出力する。
シフトレジスタステージ２５２の各々を、図８により詳細に示す。シフトレジスタステージ２５２の各々は、第１の転送ゲート２６０、第２の転送ゲート２６４、および第２のラッチ２６６を含む。転送ゲート２６０は、ＣＬＫ０およびＣＬＫ０＊信号によって動作する第１の転送ゲート回路２７０、および第１の転送回路２７０と平行した、ＣＬＫ１およびＣＬＫ１＊信号によって動作する第２の転送回路２７２を含む。第１のラッチ２６２および第２のラッチ２６６はそれぞれ、入力から出力に接続された１対のインバータ２７６、２７８によって形成される。第２の転送回路２６４は、３つのＰＭＯＳトランジスタ２８０、２８２、２８４によって形成される。ＰＭＯＳトランジスタ２８０、２８２、２８４は、電源電圧と第２のラッチ２６６の入力との間に接続されている。第２の転送ゲート２６４はさらに、３つのＮＭＯＳトランジスタ２９０、２９２、２９４を含み、ＮＭＯＳトランジスタ２９０、２９２、２９４は、第２のラッチ２６６の入力とアースとの間に直列に接続されている。後述するように、第２の転送ゲート２６４は、信号を第１のラッチ２６２から反転する。そのため、コマンド信号ＣＡの正しい位相を回復するために、インバータ２９８が第２のラッチ２６６の出力に提供される。
転送ゲート回路２７０、２７２の各々は、互いに並列に接続されたＮＭＯＳトランジスタおよびＰＭＯＳトランジスタ（図示せず）によって形成される。その場合、ＮＭＯＳトランジスタのゲートが非反転入力に連結され、ＰＭＯＳトランジスタのゲートが反転入力に連結されている。
図８に示すシフトレジスタステージ２５２の動作は、図９のタイミング図を参照すると最も良く説明される。転送ゲート回路２７０は、ＣＬＫ０信号がハイでＣＬＫ０＊信号がローであるときにはいつでも導通している。従って、転送ゲート信号２７０は、図９の２７０「ＣＯＮＤ」という文字に隣接する線分によって示すように、各クロックサイクル毎に短期間導通する。同様に、転送ゲート２７２は、ＣＬＫ１信号がローでＣＬＫ１＊信号がハイであるときにはいつでも導通している。図８の線分によって示すように、転送ゲート回路２７２は、各クロックサイクル毎に短期間導通する。その場合、転送ゲート回路２７０の導通期間は転送ゲート回路２７２の導通期間から均等に間隔をあけられている。従って、第１の転送ゲート２６０は各クロックサイクル毎に２度導通する。各導通期間の次には、非導通期間が１度ずつある。転送ゲート２６０が導通する毎に、コマンドビットＣＡの反転がラッチ２６２から第２の転送ゲート２６４に出力される。
第２の転送ゲート２６４の機能は、第１のラッチ２６２の出力における値に依存して適切なときに、第２のラッチ２６６の入力をＶｃｃまたはアースに連結することである。ＰＭＯＳトランジスタ２８０、２８２は、ＣＬＫ０およびＣＬＫ１＊が両方ともローであるときにはいつでも導通している。これは、図９の「ＰＭＯＳ」という文字に隣接する線分によって指定されるときに起こる。ＮＭＯＳトランジスタ２９２、２９４は両方とも、ＣＬＫ１信号およびＣＬＫ０＊信号が両方ともハイであるときにはいつでも導通している。これは、図９の「ＮＭＯＳ」という文字に隣接する線分によって指定されるときに、各クロックサイクル毎に２度起こる。従って、ＰＭＯＳトランジスタ２８０、２８２およびＮＭＯＳトランジスタ２９２、２９４はすべて同時に導通し、これらの導通期間は、第１の転送ゲート２６０の導通期間と交互になる。第２のラッチ２６０の入力は、これらの導通期間中、第１のラッチ２６２の出力がＰＭＯＳトランジスタ２８４をＯＮにするかＮＭＯＳトランジスタ２９０をＯＮにするかに依存して、Ｖｃｃまたはアースと連結される。より特定すると、第１のラッチ２６２の出力がハイである場合、ＮＭＯＳトランジスタ２９０はＯＮになり、それによって、第２のラッチ２６６の入力にローを入力する。第１のラッチ２６２の出力がローである場合、ＰＭＯＳトランジスタ２８４はＯＮになり、それによって、第２のラッチ２６６の入力にハイを入力する。このようにして、第２の転送ゲート２６４は、第１のラッチ２６２の反転出力を第２のラッチ２６６の入力に結合させる。
第２の転送ゲート２６４が導電性である間に、第２のラッチ２６６は、第１のラッチ２６２の出力と同じ信号を出力する。第１のラッチ２６２の出力は、インバータ２９８を通過した後、到来するコマンドビットＣＡと同じ位相である。ラッチ回路２５０の動作を、コマンドビットＣＡを用いて示す。コマンドビットＣＡは最初はハイであるが、時刻ｔ0の直後にローになる。ｔ1における、第１の転送ゲート２６０の次の導電期間において、ハイのコマンドビットＣＡは、図９に示すように、反転位相で第１のラッチ２６２の出力に転送される。第２の転送ゲート２６４の次の導電期間において、ラッチ２６２のハイの出力は、ラッチ２６６の出力と結合され、これにより、時刻ｔ2における出力をローにする。その直後に、コマンドビットＣＡはハイになる。時刻ｔ3における、第１のラッチ２６０の次の導電期間では、このハイが、第１のラッチ２６０を介して結合され、これにより第２のラッチ２６２の出力がローになる。時刻ｔ4における、第２の転送ゲート２６４の次の導電期間では、第１のラッチ２６２のハイの出力が、第２のラッチ２６６の出力と結合され、これにより、出力がハイになる。従って、シフトレジスタステージ２５２に結合されたコマンドビットは、１クロックサイクル未満の後に、シフトレジスタステージ２５２の出力にシフトされる。次の半クロックサイクルでは、１クロックサイクルが経過するまで、コマンドビットが次のシフトレジスタステージの出力にシフトされる。この時点で、２つのコマンドビットは、各シフトレジスタ回路２５０にシフトされている。従って、２つのコマンドビットは、ＦＬＡＧ信号が、各クロックサイクルにおいて、シフトレジスタ回路２４６および２４８（図５）の２つのステージを通過することによりシフトされるのと同じ様態で、各クロックサイクルにおいて、各シフトレジスタ回路２５０を通過することによりシフトされる。
図７に示すシフトレジスタ回路２５０は、図８に示すシフトレジスタステージを含み、制御回路２０６（図５）におけるシフトレジスタ２４６および２４８としても使用される。
格納レジスタ２０６および２０８、ならびにコンパレータ２１４を図１０に示す。図１０では、格納レジスタ２０８に対する参照符号および信号名を括弧内に入れている。格納レジスタ２０６および２０８のそれぞれは制御回路３００を含み、ＨＯＬＤ信号を生成して、２つの１０ビットコマンドワードをシフトレジスタ２０２から２０ビットレジスタ３０２内にロードする。制御回路３００は、インバータ３１２を介してＣＬＫ９０信号を渡すことにより生成されたＣＬＫ９０＊信号を受け取るＮＯＲゲート３１０を含む。ＮＯＲゲート３１０は、遅延回路３１４の出力も受け取り、その後、ＣＬＫ信号を受け取るインバータ３１６の出力により駆動される。ＮＯＲゲート３１０の出力は、ＣＬＫ９０がハイであるとき、常にハイになり、遅延回路３１４による遅延が供給された後でＣＬＫがハイになるとき、常にハイになる。ＮＯＲゲート３１０の出力は、３入力ＮＡＮＤゲート３１８の入力の１つに印加される。また、ＮＡＮＤゲート３１０は、インバータ３１６からＣＬＫ＊信号を、制御回路２０６（図５）からＦ信号（格納レジスタ２０６の場合はＦ＜１＞、格納レジスタ２０８の場合はＦ＜３＞）を受け取る。ＮＡＮＤゲート３１８の出力は、すべての入力がハイのときにローである。従って、ＣＬＫ９０信号がハイであり、遅延されたＣＬＫがハイであり、ＣＬＫ信号がローであり、Ｆ信号（Ｆ＜１＞またはＦ＜３＞）がハイであるとき、ＮＡＮＤゲート３１８の出力はローである。図６のタイミング図において、これらの信号を調べることにより理解できるように、信号のこの組み合わせは、ＣＬＫ信号の立ち下がりエッジにおいてＦ信号がハイであるとき、常に存在する。
ＮＡＮＤゲート３１８の出力でのローは、ＮＡＮＤゲート３２２に印加され、次にＮＡＮＤゲート３２２がハイを出力し、このハイが２つのインバータ３２４および３２６を介して結合される。従って、ＣＬＫの立ち下がりエッジでは、Ｆ信号がハイになるとき、常にインバータ３２４の出力はアクティブローＨＯＬＤ＊を、インバータ３２６はアクティブハイＨＯＬＤ信号を生成する。
アクティブローＨＯＬＤ＊信号およびアクティブハイＨＯＬＤ信号は、ＮＡＮＤゲート３２２への他の入力がローになるときにも生成される。ＮＡＮＤゲート３２２への他の入力は、ＣＬＫ信号、Ｆ信号（レジスタ２０６に対してはＦ＜１＞、レジスタ２０８に対してはＦ＜３＞）、およびＮＯＲゲート３３２の出力を受け取るＮＡＮＤゲート３３０の出力によっても駆動される。一方のＮＯＲゲート３３２は、遅延回路３３４により遅延された後のＣＬＫ９０信号およびＣＬＫ信号を受け取る。従って、ＣＬＫ信号がハイで、ＣＬＫ９０信号がローで、遅延されたＣＬＫ信号がローで、Ｆ信号（レジスタ２０６に対してはＦ＜１＞、レジスタ２０８に対してはＦ＜３＞）がハイになるとき、ＮＡＮＤゲート３３０の出力はローになり、アクティブＨＯＬＤおよびＨＯＬＤ＊信号を生成する。図６のタイミング図においてこれらの信号を調べることにより、さらに理解できるように、この信号の組み合わせは、Ｆ信号がＣＬＫ信号の立ち上がりエッジでハイになるとき常に存在する。
要するに、Ｆ＜１＞信号が制御回路２０５（図５）により生成された後で、ＣＬＫ信号の立ち上がりエッジまたは立ち下がりエッジのいずれかにおいて、アクティブＨＯＬＤおよびＨＯＬＤ＊信号が生成され、格納レジスタ２０６のための２０ビットレジスタ３０２に印加される。制御回路２０５は、ＦＬＡＧ信号が制御回路２０５に印加されてから２クロックエッジ後で、Ｆ＜１＞信号を生成する。上記に説明したように、２つのクロックエッジ（即ち１クロックサイクル）の後には、１０ビットコマンドワードの最初の２つがシフトレジスタ２０２にシフトされており、ＨＯＬＤおよびＨＯＬＤ＊信号が、レジスタ３０２にこれらの２０ビット信号を転送するのは、この時点である。
同様に、制御回路２０５によってＦ＜３＞信号が生成された後で、アクティブＨＯＬＤおよびＨＯＬＤ＊信号が生成され、ＣＬＫ信号の立ち上がりエッジまたは立ち下がりエッジのいずれかにおいて、格納レジスタ２０８のための２０ビットレジスタ３０２に印加される。制御回路２０５は、ＦＬＡＧ信号が制御回路２０５に印加されてから４クロックエッジ後に、Ｆ＜３＞信号を生成する。上記に説明したように、４クロックエッジ（即ち、２クロックサイクル）の後、第２の２つの１０ビットコマンドワードがシフトレジスタ２０２にシフトされている。ＨＯＬＤおよびＨＯＬＤ＊信号が、格納レジスタ２０８のためのレジスタ３０２にこれらの２０ビットを転送するのは、この時点である。
レジスタ３０２は、２０個のレジスタセル３４０ａから３４０ｔを含み、それぞれのセルが、シフトレジスタ２０２から、アクティブローリセット信号Ｒ＊、ＨＯＬＤおよびＨＯＬＤ＊信号、ならびに２０ビットＣ＜０：１９＞の１つを受け取る。レジスタセルの１つ３４０ｂを図１１に詳細に示す。ここで、格納レジスタ２０８内のレジスタ３０２に対する信号を、再び括弧内に示す。レジスタセル３４０は、それぞれ、第１の転送ゲート３４４、第１のラッチ３４６、第２の転送ゲート、および第２のラッチ３５０を含む。第２のラッチ３５０への入力は、リセット信号Ｒ＊がローになるとき、ＰＭＯＳトランジスタ３５２によって選択的にハイに導かれ、出力Ｙをローにする。従って、リセットに際し、格納レジスタ２０６および２０８の出力Ｙのすべてがローに設定される。
第１の転送ゲート３４４は、ゲートをＨＯＬＤ入力に接続されたＮＭＯＳトランジスタ（図示せず）と、ゲートをＨＯＬＤ＊入力に接続されたＮＭＯＳトランジスタと並列接続されたＰＭＯＳトランジスタ（図示せず）とを含む。従って、ＨＯＬＤおよびＨＯＬＤ＊信号がアクティブなとき、転送ゲート３４４は閉じられる。第２の転送ゲート３４８も、ＰＭＯＳトランジスタ（図示せず）と並列のＮＭＯＳトランジスタ（図示せず）を使用するが、逆の極性であるときに、ゲートはＨＯＬＤおよびＨＯＬＤ＊信号に接続される。従って、ＨＯＬＤおよびＨＯＬＤ＊信号がアクティブなとき、シフトレジスタ２０２のからコマンドビットは、ラッチ３４６に転送される。その直後に、ＨＯＬＤおよびＨＯＬＤ＊信号がインアクティブになるとき、転送ゲート３４８は閉じ、第２のラッチ３５０にコマンドビットを転送する。シフトレジスタ２５２（図８）において使用されるラッチと同様、ラッチ３４６および３５０のそれぞれが、入力と出力とを接続されたインバータ対３６０および３６２によって形成されている。
図１０を再び参照して、コンパレータ２１４は、６ビットの識別データＩＤ＜０：５＞を格納レジスタ２０８からの６ビットコマンドと比較する論理回路の集合を含み、コマンドバッファ２００を含むメモリ素子による使用をコマンドが意図されるとき、アクティブハイチップ選択ＣＨＰＳＥＬを生成する。コンパレータ２１４の動作は、アクティブハイチップ選択ＣＨＰＳＥＬ出力から遡及して辿ることにより、最もよく理解できる。ＣＨＰＳＥＬ出力は、ＮＡＮＤゲート３７２の出力に結合されたインバータ３７０の出力において生成される。ＣＨＰＳＥＬは、ＮＡＮＤゲート３７２の出力がローになるとき常にアクティブハイになるが、これはＮＡＮＤゲート３７２への入力の両方ともがハイのとき常に起こる。ＮＡＮＤゲート３７２の入力は、ＮＯＲゲート３７４および３７６の出力において生成される。ＮＯＲゲート３７４および３７６の出力は、ＮＯＲゲート３７４および３７６の入力のすべてがローである場合、両方ともにハイになる。ＮＯＲゲート３７４への入力は、３つのＮＯＲゲート３８０、３８２、および３８４のいずれかの出力がハイの場合、すべてローになる。各ＮＯＲゲート３８０、３８２、および３８４は、２つの入力を有し、一方が排他的ＯＲ回路３９０の出力に接続され、他方がコマンドビットの１つＹに、直接かまたは追加の論理回路を介して結合される。
各排他的ＯＲ回路３９０は、インバータ３９６の出力におけるＩＤビットおよびその補数ＩＤ＊により交互にイネーブルされる。インバータ３９８から、転送ゲート３９２はコマンドビットＹを受け取るが、転送ゲート３９４は補数のコマンドビットＹ＊を受け取る。コマンドビットＹおよびＩＤビットの両方がローである場合、転送ゲート３９４がイネーブルされ、コマンドビットのハイの補数は、転送ゲート２９４を介してＮＯＲゲート３８０の入力に結合される。コマンドビットＹおよびＩＤビットの両方がハイである場合、転送ゲート３９２がイネーブルされ、ハイのコマンドビットは、ＮＯＲゲート３８０の入力に結合される。従って、排他的ＯＲ回路３９０の出力は、識別ビットＩＤにコマンドビットＹが一致するとき、ハイである。
コマンドビットＹがローで、識別ビットＩＤがハイである場合、転送ゲート３９２がイネーブルされ、ローのコマンドビットがＮＯＲゲート３８０の入力に転送される。最後に、コマンドビットＹがハイであるが、識別ビットＩＤがローである場合、転送ゲート３９４がイネーブルされ、コマンドビットＹのローの補数が、転送ゲート３９４を介してＮＯＲゲート３８０の入力に転送される。従って、排他的ＯＲ回路３９０の出力は、識別ビットＩＤにコマンドビットＹが一致しない場合、ローである。
従って、ＮＯＲゲート３８０の出力は、Ｙ＜０＞コマンドビットがＩＤ＜０＞識別ビットに一致するか、Ｙ＜６＞コマンドビットがハイである場合のいずれかにローである。同様に、ＮＯＲゲート３８２の出力は、Ｙ＜１＞コマンドビットがＩＤ＜１＞識別ビットに一致するか、インバータ４００の出力がハイである場合のいずれかにローである。これは、Ｙ＜６＞およびＹ＜０＞コマンドビットが両方ともハイであるときに、ＮＡＮＤゲート４０２の出力がローになる場合に起こる。同様に、Ｙ＜２＞コマンドビットがＩＤ＜２＞コマンドビットに一致するか、Ｙ＜０＞、Ｙ＜１＞、およびＹ＜６＞コマンドビットがＮＡＮＤゲート４０２およびインバータ４００を介して結合された後で、すべてハイである場合のいずれかにおいてローである。
ＮＯＲゲート３７６の入力は、３つのＮＯＲゲート４１０、４１２、および４１４それぞれへの入力のいずれかがハイのとき、すべてローである。従ってＮＯＲゲート３７６の入力は、Ｙ＜３＞コマンドビットがＩＤ３ビットと一致し、Ｙ＜４＞コマンドビットがＩＤ＜４＞ビットと一致し、Ｙ＜５＞コマンドビットがＩＤ＜５＞ビットと一致する場合、すべてローになる。ＮＯＲゲート３７６への３つの入力のすべては、Ｙ＜０＞、Ｙ＜１＞、Ｙ＜６＞、Ｙ＜２＞、Ｙ＜３＞、およびＹ＜４＞コマンドビットがすべてハイの場合にもローである。従って、ＣＨＰＳＥＬ信号は、Ｙ＜０：５＞コマンドビットがＩＤ＜０：５＞識別ビットに一致するか、またはＹ＜０：６＞コマンドビットがすべてハイの場合に生成される。Ｙ＜０：６＞コマンドビットは、Ｙ＜６＞コマンドビットがハイであり、Ｙ＜５＞コマンドビットがナンバー６３に対応するとき常に、すべてハイである。上述のように、パワーアップ（power-up）において、識別データＩＤ＜０：５＞は、「６３」（バイナリ「１１１１１１」）に設定される。従って、特定の識別データがＩＤレジスタ２１２（図３および４）に記憶されるべきときに、プロセッサはＹ＜０：６＞ビットがすべてハイであるコマンドパケットを生成する。結果として、比較回路２１４は、デコーダ２１０にＬＯＡＤＩＤ信号を出力させるＣＨＰＳＥＬ信号を生成する。特定のＹ＜０：５＞ビットがＩＤレジスタ２１２に格納された後で、これらはＹ＜０：５＞コマンドビットと比較され、一致がある場合、ＣＨＰＳＥＬ信号が生成されて、コマンドバッファ２００を含むメモリ素子がコマンドワードの他のビットに対応する機能を実行することを可能にする。
デコーダ２１０（図４および５）を図１１において詳細に示す。再び、デコーダ２１０の動作は、アクティブハイＬＯＡＤＩＤ出力から回路を遡及していくことにより、最もよく理解される。ＬＯＡＤＩＤ出力は、インバータ４２０の入力がローのとき、常にハイである。インバータ４２０の入力は、入力がすべてハイのとき常にローを生成するＮＡＮＤゲート４２２の出力に結合されている。ＮＡＮＤゲート４２２の入力はすべて、チップＣＨＰＳＥＬおよびＦ＜５＞入力がハイであり、Ｙ＜７：１９＞コマンドビットが所定のパターンを有するときハイである。より詳細には、制御回路２０５からのＦ＜５＞入力は、インバータ対４２４および４２６を介してＮＡＮＤゲート４２２の入力の一つに結合される。ＮＡＮＤゲート４２２への別の入力は、ＮＡＮＤゲート４２３の出力を受け取るインバータ４３０により生成される。ＮＡＮＤゲート４３２の出力はローになって、これにより、ＮＡＮＤゲート４３２の入力のすべてがハイであるときに、インバータ４３０はＮＡＮＤゲート４２２の入力にハイを印加する。インバータ４３２の入力は、ＳＩ入力がハイであり、２つのＮＯＲゲート４３６および４３８への入力がすべてローであるときに、すべてハイである。従って、ＮＡＮＤゲート４２２への第２の入力は、ＳＩ信号がハイであり、Ｙ＜１３：１９＞がすべてローであるときに、ハイである。ＮＡＮＤゲート４２２への第３の入力は、ＮＡＮＤゲート４４２によりインバータ４４０にローが印加されるとき常に、ハイである。ＮＡＮＤゲート４４２の出力は、入力がすべてハイのとき常にローである。ＮＡＮＤゲート４４２の第１への入力は、インバータ４４６へのＹ＜１２＞コマンドビットの補数と、Ｙ＜１０＞およびＹ＜１１＞コマンドビットとを受け取るＮＯＲゲート４４４の出力である。従って、ＮＯＲゲート４４４の出力は、Ｙ＜１０＞およびＹ＜１１＞がローであり、Ｙ＜１２＞がハイであるとき、ハイになる。ＮＡＮＤゲート４４２への第２の入力は、上述のように、コマンドバッファ２００を含むメモリ素子による実行をコマンドパケットが意図しているとき常にハイであるＣＨＰＳＥＬ信号である。ＮＡＮＤゲート４４２への第３の入力は、ＮＯＲゲート４５０へのすべての３つの入力がローであるとき、常にハイである。ＮＯＲゲート４５０は、Ｙ＜７＞およびＹ＜８＞コマンドビットと、インバータ４５２を介したＹ＜９＞信号の補数とを受け取る。従って、ＮＡＮＤゲート４４２の出力は、ＣＨＰＳＬＥと、Ｙ＜１２＞およびＹ＜９＞がハイであり、Ｙ＜７＞、Ｙ＜８＞、Ｙ＜９＞、Ｙ＜１０＞、およびＹ＜１１＞がローであるとき、常にローである。
要するに、ＬＯＡＤＩＤパルスは、ＳＩ信号がハイであって、Ｙ＜１９：７＞信号が「０００００００１００１００」と解読されるとき、常に生成され、制御回路２０５（図４および５）からＦ＜５＞パルス上のＩＤレジスタ２１２（図４および５）に、識別データをロードする。上記に説明したように、ＳＩ入力は、別のメモリ素子のＳＯ出力に結合され、これにより、１時点においては、１つのメモリ素子のみのコマンドバッファが、初期化コマンドパケットに応答するＬＯＡＤＩＤパルスを生成する。
ＩＤレジスタ２１２を、図１３において詳細に説明する。ＩＤレジスタ２１２は、６つのラッチ回路４６０ａから４６０ｆを含み、それぞれが格納レジスタ２０８（図４および５）からのそれぞれのコマンドビットＹ＜２４：Ｙ２５＞を受け取る。ラッチ回路４６８ａから４６８ｆは、インバータ４６２および４６４を介したアクティブローリセット信号ＲＥＳＥＴ＊を含む。上記に説明したように、初期化コマンドパケットを受け取るのに先立って、メモリ素子はリセットされる。アクティブローＲＥＳＥＴ＊は、すべてのラッチ回路４６０ａからｆにハイを出力させ、これにより、識別データＩＤ＜０：５＞からのビットのすべてがバイナリナンバー「６３」に応答し、比較回路２１４が図１２を参照して上記に説明した初期化に際し、ＣＨＰＳＥＬ信号を出力できる。この後、各メモリデバイスに特定の識別データが、Ｙ＜２４：２９＞コマンドビットを介してラッチ回路４６０ａからｆに印加され、次にＬＯＡＤＩＤパルスが上述のように生成される。ＬＯＡＤＩＤパルスは、インバータ４７０を介してラッチ回路４６０ａからｆのＳ＊入力に結合されるが、インバータ４７０の出力は、インバータ４７２を介してラッチ回路４６０ａからｆのＳ入力に結合される。アクティブハイＳおよびアクティブハイＳ＊信号によって、ラッチ回路４６０ａからｆは、Ｙ＜２４：２９＞コマンドビットを、コマンドバッファを含むメモリ素子のための特定の識別データＩＤ＜０：５＞として格納する。
ＩＤレジスタ２１２は、ラッチ回路４８０およびインバータ４８２をも含み、ＳＯ出力を生成する。ＲＥＳＥＴ＊信号がアクティブローに駆動されるとき、ラッチ４８０はリセットされ、インバータ４８２にローであるＳＯ信号を出力させる。しかしながら。ＬＯＡＤＩＤパルスがラッチ回路４８０の出力へと、ローにラッチされる、これによりインバータ４８２はＳＯをハイに駆動する。ハイであるＳＯ信号は、上述したように別のメモリ素子のデコーダ２１０のＳＩ入力に印加されるので、他方のメモリ素子が次の初期化コマンドパケットに応答する。
図１３のＩＤレジスタ２１２を、図１４により詳細に示す。ラッチ回路４６０は、図１１に示したラッチ回路３４０と同一であるが、単一のラッチ３４６のみしか含まず、ＰＭＯＳトランジスタ３５２を用いて第１のラッチ３４６の入力をハイに導き、第２の転送ゲート３４８と図１０のラッチ３４０におけるラッチ３５０の代わりにインバータ４９０を用いるという点で異なる。動作においては、アクティブローＲＥＳＥＴ＊信号が、トランジスタ３５２をオンにして、インバータ４９０の出力をハイに導く。アクティブハイＳおよびアクティブローＳ＊信号に応答して、転送ゲート３４４は閉じ、ラッチ３４６によって一度、インバータ４９０によって一度、二度の反転を受けた後のコマンドビットＹを出力ＩＤに結合する。
上述のように図４に示したコマンドバッファ２００は、図３に示したコマンドバッファ４６の代わりに使用され得る。製造されたメモリ素子は、図１に示すコンピュータシステムに、より優れた処理速度を提供するために使用し得る。例示的な実施形態により、本発明を本明細書にて説明してきたが、本発明の精神および範囲から逸脱するとなく様々な変更をなし得る。従って、本発明は、添付の請求の範囲以外により限定されるものではない。
【図１】
0003869021.tif 000002
【図２】
0003869021.tif 000003
【図３】
0003869021.tif 000004
【図４】
0003869021.tif 000005
【図５】
0003869021.tif 000006
【図６】
0003869021.tif 000007
【図７】
0003869021.tif 000008
【図８】
0003869021.tif 000009
【図９】
0003869021.tif 000010
【図１０】
0003869021.tif 000011
【図１１】
0003869021.tif 000012
【図１２】
0003869021.tif 000013
【図１３】
0003869021.tif 000014
【図１４】
0003869021.tif 000015