(57)【特許請求の範囲】
【請求項１】
複数のメモリバンクであって、各メモリバンクが少なくとも１つのメモリバンク入力と少なくとも１つのメモリバンク出力とをそれぞれ具備している複数のメモリバンクと、
複数の入力で受け取られた信号を前記複数のメモリバンクのメモリバンク入力へ選択的に渡すように構成された第１の選択部と、
メモリバンク出力から受け取られた信号を複数の出力へ選択的に渡すように構成された第２の選択部と、
複数の入力で受け取られた信号をメモリバンク入力へ選択的に渡す制御と、メモリバンク出力から受け取られた信号を複数の出力へ選択的に渡す制御とをするように構成された制御部と、を含み、
前記制御部は、
第１のリンク制御部と、
第２のリンク制御部と、
メモリバンクごとに個々のスイッチ制御部と、を含み、
各スイッチ制御部は、同じリンク制御部が複数のメモリバンクに同時に、または重複してアクセスする場合に、および、複数のリンク制御部が同じメモリバンクに同時に、または重複してアクセスする場合に、前の制御出力を保つように構成された保持部と、を含む、
メモリシステム。
【請求項２】
前記第１の選択部は、
メモリバンクごとに、前記複数の入力の１つで受信され選択された信号を前記メモリバンクへ渡すための出力を具備する個々のスイッチング素子を含む、請求項１に記載のメモリシステム。
【請求項３】
前記第２の選択部は、
出力ごとに、前記複数のメモリバンクの１つから選択され受信され信号を前記出力へ渡すための個々のスイッチング素子を含む、請求項１に記載のメモリシステム。
【請求項４】
前記複数のメモリバンクは、２つのメモリバンクを含む、請求項１に記載のメモリシステム。
【請求項５】
前記スイッチ制御部が実質的に同一の回路実装を有し、
前記スイッチ制御部のそれぞれは、前記スイッチ制御部の複数の可能な状態のうちの選択された状態に応じて、前記該スイッチ制御部が動作することになる命令を受け取るように構成された受信部を含む、請求項１に記載のメモリシステム。
【請求項６】
前記複数のメモリバンクは、第１のメモリバンクと第２のメモリバンクとを含み、
前記メモリシステムにおける前記スイッチ制御部それぞれの取り得る複数の状態は、
前記スイッチ制御部が前記第１のバンクのために前記第１の選択部を制御するとともに、前記第１のリンク制御部のために前記第２の選択部を制御する、前記複数のスイッチ制御部それぞれについての第１の状態と、
前記スイッチ制御部が前記第２のバンクのために前記第１の選択部を制御するとともに、前記第２のリンク制御部のために前記第２の選択部を制御する、前記複数のスイッチ制御部それぞれについての第２の状態と
を含む、請求項５に記載のメモリシステム。
【請求項７】
シングルリンク動作を選択するように構成された入力をさらに含み、
前記入力によるシングルリンク動作のアサート時に、前記メモリシステムはリンク制御部があたかも１つしかないように動作する、請求項５に記載のメモリシステム。
【請求項８】
前記リンク制御部のそれぞれからバンク選択出力を受け取るように構成されているとともに、同じリンク制御部による複数のバンクへの同時の、または重複するアクセスがあるかどうかを判定し、ある場合は無効信号を生成するように構成された受信部をさらに含む、請求項５に記載のメモリシステム。
【請求項９】
各スイッチ制御部は、
前記バンクに伝えられるいずれかのリンク出力を選択するためのリンク選択信号と、
前記リンク制御部に伝えられるいずれかのバンク出力を選択するためのバンク選択信号と、
を含む出力を生成するように動作可能である、請求項５に記載のメモリシステム。
【請求項１０】
前記リンク制御部のそれぞれは、
前記リンク制御部の少なくとも１つの入力を介して入力コマンドおよび入力データを受け取るように構成された入力バッファと、
入力コマンドおよび入力データをパラレル形式に変換するように構成された変換部と、
入力コマンドを解釈するように構成されたコマンドインタプリタと
を含む、請求項５に記載のメモリシステム。
【請求項１１】
前記リンク制御部のそれぞれは、前記制御部のためにバンク選択信号を出力するように動作可能である、請求項５に記載のメモリシステム。
【請求項１２】
複数の入力で受け取った信号を複数のメモリバンクのメモリバンク入力に選択的に渡すステップと、
メモリバンク出力から受け取った信号を複数の出力選択的に渡すステップと、
前記複数の入力で受け取った信号をメモリバンク入力に選択的に渡す前記ステップおよびメモリバンク出力から受け取った信号を前記複数の出力に選択的に渡す前記ステップを制御するステップと、を含み、
前記制御するステップは、複数の入力から同じメモリバンクへの同時の、もしくは重複するアクセスまたは前記複数のメモリバンクから同じ出力への同時の、もしくは重複する出力のいずれか一方の無効なアクセスの試みが発生する際に、前のアクセス状態を保持するステップを含む、
方法。
【請求項１３】
前記複数の入力で受け取った信号を複数のメモリバンクのメモリバンク入力に選択的に渡す前記ステップは、
前記複数の入力のうちの所与の入力から前記複数のメモリバンクのうちの所与のメモリバンクへの所与のアクセスについて、前記所与の入力から信号を受け取るために前記所与のメモリバンクを接続するステップを含む、請求項１２に記載の方法。
【請求項１４】
メモリバンク出力から受け取った信号を前記複数の出力に選択的に渡す前記ステップは、
所与のメモリバンクと所与の出力とについて、前記所与の出力に対して信号を送るために、所与のメモリバンクの前記出力を接続するステップを含む、請求項１３に記載の方法。
【請求項１５】
前記制御するステップは、複数の同一のスイッチ制御部によって行われ、前記方法は、
前記複数の同一のスイッチ制御部のそれぞれを、全メモリシステム内でのそれらの位置に特有の態様で動作するように構成するステップをさらに含む、請求項１４に記載の方法。
【請求項１６】
前記複数の入力それぞれの一部を形成するバンク選択信号を調べることにより無効なアクセスの試みを検出するステップをさらに含み、
前記複数の入力および前記複数の出力は、複数のリンク制御部ごとの少なくとも1つの個々の入力と少なくとも1つの個々の出力とを含む、請求項１３に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、2005年9月30日に出願された米国仮出願第60/722,368号の利益を主張する、2005年12月30日に出願され、「Multiple Independent Link Serial Memory」と題された米国特許出願第11/324,023号の一部継続出願である、2006年12月22日に出願された米国出願第11/643,850号の利益を主張するものであり、その両方の内容の全体が参照により本明細書に組み込まれる。
【０００２】
本発明は、複数のリンクおよび複数のメモリバンクを有するメモリシステムに関するものである。
【背景技術】
【０００３】
現在の家庭用電子機器は、メモリ装置を使用する。例えば、デジタルカメラ、携帯情報端末、携帯オーディオ/ビデオプレイヤ、携帯端末などの携帯電子機器は、好ましくはかつてないほど増大した容量および速度性能を有する不揮発性メモリである、大容量記憶メモリを引き続き必要とする。不揮発性メモリおよびハードディスクドライブが好ましく、それは電力がなくてもデータが保持され、そのため電池寿命を延ばすからである。
【０００４】
既存のメモリ装置が現在の多くの家庭用電子機器にとって十分な速度で動作するとはいえ、そのようなメモリ装置は、将来の電子装置や高いデータ転送率が望まれる他の装置での使用には適していない可能性がある。例えば、高解像度の動画を記録する携帯マルチメディア機器は、現在のメモリ技術でのメモリモジュールよりも高いプログラミングスループットを有するメモリモジュールを必要とする可能性が高い。都合の悪いことに、そのような高い周波数では信号品質に関連する問題があり、その問題がメモリの動作周波数に対して実際的制限を加える。メモリは、その数が実装形態に特有であるパラレル入出力(I/O)ピンのセットを使用して他の構成要素と通信する。これらのI/Oピンは、コマンド命令および入力データを受け取り、出力データを提供する。これは、パラレルインタフェースとして一般に知られる。高速動作は、例えば漏話、信号スキュー、信号減衰など、通信の質を劣化させる効果をもたらす可能性があり、信号品質を劣化させる。
【０００５】
システムボード上でより高密度かつより高速の動作を取り入れるために、次の2つの設計技法がある。それは、シリアル相互接続構成と、マルチドロップなどのパラレル相互接続構成とである。これらの設計技法は、ハードディスクとメモリシステムとの間でのメモリスワッピングの費用効率および動作効率を決定する、密度の問題を克服するために使用することができる。しかし、マルチドロップ構成は、シリアル相互接続構成と比べて短所がある。例えば、マルチドロップメモリシステムでのドロップ数が増えると、各ピンのローディング効果の結果、遅延時間も増大し、そのためそのマルチドロップメモリシステムの全体性能が低下する。これは、そのメモリ装置の配線抵抗容量ローディングおよびピンのキャパシタンスのためである。メモリ装置などの装置内のシリアルリンクは、アドレス、コマンドおよびデータの全てをシリアルに受け取る単一のピン入力を利用することができる。このシリアルリンクは、シリアル相互接続構成を提供して、この構成を介してコマンドビット、アドレスビットおよびデータビットを効果的に制御することができる。この構成での装置は、例えばDRAM(ダイナミックRAM)、SRAM(スタティックRAM)、フラッシュメモリなどのメモリ装置とすることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】米国仮出願第60/722,368号明細書
【特許文献２】米国特許出願第11/324,023号明細書
【特許文献３】米国出願第11/643,850号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００７】
複数のメモリバンクおよび複数のリンクを有するメモリシステムで使用する方法およびシステムを提供する。このシステムは、任意のリンクから任意のバンクへの読み書きアクセスを可能にするが、無効なアクセスの試みを防ぐための回路が設けられる。複数のリンクから同じバンクに同時の、または重複する読出しまたは書込みアクセスがある場合に、無効なアクセスの試みが生じる。同じリンクから複数のバンクに同時の、または重複する読出しまたは書込みアクセスがある場合に、無効なアクセスの試みが生じる。一部の実装形態は、リンクごとのスイッチングを行うために使用する共通回路を特徴とし、それにより製造を単純化する。そのような実装形態では、スイッチング回路の各インスタンスは、全システム内でのそのインスタンスの位置を反映する特定の態様で機能するように構成される。
【課題を解決するための手段】
【０００８】
1つの広い態様によれば、本発明は、複数のメモリバンクと、それぞれが制御およびデータを受け取るための少なくとも1つの入力を有し、そのデータを出力するための少なくとも1つの出力を有する複数のリンク制御部と、メモリバンクごとに、リンク制御部ごとの少なくとも1つの出力を受け取り、それらのリンク制御部のうちの1つだけの少なくとも1つの出力をメモリバンクに伝えるための第1のスイッチングロジックと、リンク制御部ごとに、各メモリバンクの出力を受け取り、それらのメモリバンクのうちの1つだけの出力をリンク制御部に伝えるための第2のスイッチングロジックと、複数のリンク制御部による同じメモリバンクへの同時の、または重複するアクセスを防ぎ、かつ同じリンク制御部による複数のバンクへの同時の、または重複するアクセスを防ぐために、第1のスイッチングロジックおよび第2のスイッチングロジックの両方の動作を制御するためのスイッチ制御部ロジックと、を含むメモリシステムを提供する。
【０００９】
一部の実施形態では、前述の第1のスイッチングロジックは、リンク制御部それぞれの複数の出力に対応する複数のスイッチング素子を含む。
【００１０】
一部の実施形態では、前述の第2のスイッチングロジックは、メモリバンクのそれぞれからシリアル出力を受け取るための単一のスイッチング素子を含む。
【００１１】
一部の実施形態では、前述の複数のメモリバンクは2つのメモリバンクからなり、前述の複数のリンク制御部は2つのリンク制御部からなる。
【００１２】
一部の実施形態では、前述のスイッチ制御部ロジックは、メモリバンクごとに個々のスイッチ制御部を含む。
【００１３】
一部の実施形態では、前述のスイッチ制御部は実質的に同一の回路実装を有し、各スイッチ制御部は、システム内でのそのスイッチ制御部の複数の可能な位置のうちの選択された位置に応じて、そのスイッチ制御部が動作することになる命令を受け取るためのリンク認識ロジックを含む。
【００１４】
一部の実施形態では、前述の複数のメモリバンクは第1のメモリバンクおよび第2のメモリバンクからなり、前述のスイッチ制御部ロジックは第1のリンク制御部および第2のリンク制御部からなり、前述のシステム内でのスイッチ制御部の複数の可能な位置は、スイッチ制御部が第1のバンク用の第1のスイッチングロジックを制御し、第1のリンク制御部用の第2のスイッチングロジックを制御する第1の位置と、スイッチ制御部が第2のバンク用の第1のスイッチングロジックを制御し、第2のリンク制御部用の第2のスイッチングロジックを制御する第2の位置と、を含む。
【００１５】
一部の実施形態では、前述のメモリシステムは、シングルリンク動作を選択するための入力をさらに含み、前述の入力によるシングルリンク動作のアサート時に、そのメモリシステムはリンク制御部があたかも1つしかないように動作する。
【００１６】
一部の実施形態では、前述のメモリシステムは、リンク制御部のそれぞれからバンク選択出力を受け取り、同じリンク制御部による複数のバンクへの同時の、または重複するアクセスがあるかどうかを判定し、ある場合は無効信号を生成するための無効検査ロジックをさらに含む。
【００１７】
一部の実施形態では、各スイッチ制御部は、同じリンク制御部が複数のバンクに同時に、または重複してアクセスする場合に、および複数のリンクが同じバンクに同時に、または重複してアクセスする場合に、前の制御出力を保持するための保持回路をさらに含む。
【００１８】
一部の実施形態では、各スイッチ制御部は、どのリンク出力をバンクに伝えるべきかを選択するためのリンク選択信号と、どのバンク出力をリンク制御部に伝えるべきかを選択するためのバンク選択信号と、を含む出力を生成するように動作可能である。
【００１９】
一部の実施形態では、各リンク制御部は、入力コマンドおよび入力データを受け取るための入力バッファと、入力コマンドおよび入力データをパラレル形式に変換するためのシリアル/パラレルレジスタと、入力コマンドを解釈するためのコマンドインタプリタ制御ロジックと、を含む。
【００２０】
一部の実施形態では、各リンク制御部は、スイッチ制御部ロジック用のバンク選択信号を出力するように動作可能である。
【００２１】
別の広い態様によれば、本発明は、複数の入力を受け取るステップと、複数の出力を出力するステップと、前述の複数の入力で受け取った信号を複数のメモリバンクのメモリバンク入力に選択的に渡すステップと、メモリバンク出力から受け取った信号を前述の複数の出力に選択的に渡すステップと、複数の入力から同じメモリバンクへの同時の、または重複するアクセスを防ぎ、かつ複数のバンクから同じ出力への同時の、または重複する出力を防ぐために、前述の複数の入力で受け取った信号をメモリバンク入力に選択的に渡すステップおよび前述のメモリバンク出力から受け取った信号を複数の出力に選択的に渡すステップを制御するステップと、を含む方法を提供する。
【００２２】
一部の実施形態では、前述の複数の入力で受け取った信号を複数のメモリバンクのメモリバンク入力に選択的に渡すステップは、前述の複数の入力のうちの所与の入力から前述の複数のメモリバンクのうちの所与のメモリバンクへの所与のアクセスについて、前述の所与の入力から信号を受け取るために前述の所与のメモリバンクを接続するステップを含む。
【００２３】
一部の実施形態では、前述のメモリバンク出力から受け取った信号を複数の出力に選択的に渡すステップは、所与のメモリバンクと所与の出力とについて、前述の所与の出力に対して信号を送るために、所与のメモリバンクの出力を接続するステップを含む。
【００２４】
一部の実施形態では、前述の制御するステップは複数の同一のスイッチ制御部によって行われ、この方法は、前述の複数の同一のスイッチ制御部のそれぞれを、全メモリシステム内でのそれらの位置に特有の態様で動作するように構成するステップをさらに含む。
【００２５】
一部の実施形態では、この方法は、複数の入力から同じメモリバンクへの同時の、もしくは重複するアクセスまたは複数のバンクから同じ出力への同時の、もしくは重複する出力のいずれか一方の無効なアクセスの試みが発生する際に、前のアクセス状態を保持するステップをさらに含む。
【００２６】
一部の実施形態では、この方法は、前述の複数の入力それぞれの一部を形成するバンク選択信号を調べることにより無効なアクセスの試みを検出するステップをさらに含む。
【００２７】
一部の実施形態では、前述の複数の入力および複数の出力は、複数のリンク制御部ごとの少なくとも1つの個々の入力と少なくとも1つの個々の出力とを含む。
【００２８】
次に、本発明の実施形態を添付の図面を参照して、例としてのみ説明する。
【図面の簡単な説明】
【００２９】
【図１】複数独立シリアルリンクメモリシステムのブロック図である。
【図２】複数独立シリアルリンクメモリシステムの制御およびデータ信号伝達を示す詳細なブロック図である。
【図３】図2のシステムの様々な有効なメモリアクセス構成を示す図である。
【図４】図2のシステムの様々な有効なメモリアクセス構成を示す図である。
【図５】図2のシステムの様々な有効なメモリアクセス構成を示す図である。
【図６】図2のシステムの様々な有効なメモリアクセス構成を示す図である。
【図７】図2のリンク制御部の詳細を示すブロック図である。
【図８】異なるバンクとの有効な同時リンクアクセスのセットを示す図である。
【図９】リンクされた無効なバンクアクセスの2つの例を示す図である。
【図１０】制御およびデータならびにデータ読出しのためのスイッチング素子を示す図である。
【図１１Ａ】スイッチ制御部を構成するためのlink_IDの使用を示すブロック図である。
【図１１Ｂ】リンク制御部とスイッチ制御部との間のバンク選択信号の相互接続を示すブロック図である。
【図１２】スイッチ制御部の詳細なブロック図である。
【図１３】2リンクモードで動作する間の図12のロジックの一部の真理値表である。
【図１４】シングルリンクモードで動作する間の図12のロジックの一部の真理値表である。
【発明を実施するための形態】
【００３０】
MISL(複数独立シリアルリンク)メモリシステムは、リンクのセットとメモリバンクのセットとを有し、任意のリンクポートから任意のバンクにアクセスできるようにする機能を有する。図1を参照すると、2つのMISLメモリシステムの概念ブロック図が示されている。第1の例を30で全体的に示し、デュアルポート構成を示す。リンク0 10およびリンク1 12の2つのリンクと、バンク0 18およびバンク1 20の2つのバンクがある。リンク10、12とバンク18、20とを相互接続するスイッチングロジック16がある。制御ロジックを14で示す。24に示すように、スイッチングロジック16は、リンク0 10をバンク0 18またはバンク1 20のいずれか一方に相互接続できる。同様に、26に示すように、スイッチングロジック16は、リンク1 12をバンク0 18またはバンク1 20のいずれか一方に相互接続できる。シングルポート構成を32で示す。シングルポート構成は、第2のリンクであるリンク1 12を使用しない点を除いて、概してデュアルポート構成30と同じである。
【００３１】
上述のMISLのデュアルリンク構成の事例に対応するため、両方のリンクからの1つのバンクへの同時アクセスなどの無効なアクセス状態を防ぐように、2つのリンクポートが読み書き操作のために2つのバンクにアクセスできることを確実にする回路を提供する。制御信号およびデータは、バンクアドレスおよびアクセスされたバンクに対するアクセスされたリンクポートによって特定される経路を使用する。
【００３２】
図示の例では、2つのリンク10、12と、2つのバンク18、20とがある。後続の例でも2つのバンクと2つのリンクとがあると想定する。しかし、より広くは任意の複数のリンクと任意の複数のバンクとがあってよい。本明細書で開示する特徴の改変および修正を、任意の適切な数のリンクおよび任意の適切な数のバンクを使用する実装形態について考慮できることが理解される。
【００３３】
以下に説明する本発明の実施形態は、次の機能を支援する。
1. 複数のリンクポートからの同じバンクへの同時アクセスの防止。
2. オプション機能としてのシングルリンクアクセス。
3. リンク制御ブロックからバンク制御ブロックへの短いスイッチ経路。
4. リンク制御ブロックごとに同じであるロジック実装。
5. 同じバンクが後に別のリンクポートからアクセスされる場合に、前のバンクアクセスが保持される。
6. リンクからバンクへのアクセス(書込みおよび制御信号)と、バンクからリンクへのアクセス(データ読出し)とのための別々のロジック。
ただし、一部の実装形態は、これらの機能の一部しか提供しない場合があることが理解される。より広くは、各実装形態はこれらの機能のうちの任意の数を提供してよい。
【００３４】
図2は、図1の2リンク、2バンクの例に対応する、いくつかのスイッチを有する各リンクと各バンクとの間の接続例を示す。この例では、2つのバンク18、20が、スイッチ制御部48、50の制御下にあるスイッチ40、42、44、46を介して、2つの独立したリンクであるリンク0 10およびリンク1 12に接続される。
【００３５】
図2に示す接続は、制御のために次のものを含む。
バンク選択制御として機能するためにリンク0 10からスイッチ制御部48、50への入力として接続される制御入力Bnk0<1:0> 49。
リンク0からの制御、アドレスおよびデータをバンク0に与えることを可能にする、スイッチ制御部48からスイッチ40へのLnk_is_Bnk0_ctrl_enable 53。
リンク1からの制御、アドレスおよびデータをバンク0に与えることを可能にする、スイッチ制御部48からスイッチ40へのLnk_os_Bnk0_ctrl_enable 60。
ページバッファから、リンク0に関するリンクロジックブロックに対して読出し関連操作が実行される場合にバンクを選択するために使用される、スイッチ制御部48からスイッチ42へのLnk0_Bnk_slct<1:0>出力64。
バンク選択制御として機能するためにリンク1 12からスイッチ制御部48、50への入力として接続される制御入力Bnk1<1:0> 51。
リンク1からの制御、アドレスおよびデータをバンク1に与えることを可能にする、スイッチ制御部50からスイッチ44へのLnk_is_Bnk1_ctrl_enable 63。
リンク0からの制御、アドレスおよびデータをバンク1に与えることを可能にする、スイッチ制御部50からスイッチ44へのLnk_os_Bnk1_ctrl_enable 65。
ページバッファから、リンク1に関するリンクロジックブロックに対して読出し関連操作が実行される場合にバンクを選択するために使用される、スイッチ制御部50からスイッチ46へのLnk1_Bnk_slct<1:0>出力66。
【００３６】
この説明では、各バンクは「内部」リンクおよび「外部」リンクを有する。この実装形態では、所与のバンクの内部リンクは、そのバンクに対して対応する位置を有するリンクであり、外部リンクは残りのリンクである。したがって、バンク0の内部リンクはリンク0であり、バンク0の外部リンクはリンク1である。バンク1の内部リンクはリンク1であり、バンク1の外部リンクはリンク0である。上記の表示方式では、「Lnk_is」はいわゆる「内部リンク」を示し、「Lnk_os」はいわゆる「外部リンク」を示す。
【００３７】
スイッチ制御部48、50は制御入力49、51を受け取り、制御出力Lnk_is_Bnk0_ctrl_enable 53、Lnk_os_Bnk0_ctrl_enable 60、Lnk0_Bnk_slct<1:0> 64、Lnk_is_Bnk1_ctrl_enable 63、Lnk_os_Bnk1_ctrl_enable 65、Lnk1_Bnk_slct<1:0> 66を、リンク/バンクアクセスの禁止された組み合わせを防ぐ方法で作り出す。具体的には、2つのリンクは重複する時間間隔の間、同じバンクにアクセスすることを許可されておらず、スイッチ制御部48、50がこれを防ぐように動作する。
【００３８】
図2に示すデータ接続は、読出し操作のための次のデータ経路を含む。
スイッチ42、46のそれぞれに接続されて示されたバンク0出力60。この出力は、個々の設計に応じて例えば4ビット、8ビットまたは16ビットのパラレル出力とすることができ、リンクブロック内でパラレル/シリアル変換が行われる。あるいは、バンク0内に読出しアクセス用の組込パラレル/シリアル変換器がある場合、この出力はシリアル出力とすることができる。この説明の残りの部分では、この出力を8ビットのパラレル出力と想定する。
スイッチ42、46のそれぞれに接続されて示されたバンク1出力62。出力60に関して上記に説明したのと同様の解説がこの出力についても当てはまる。
スイッチ42とリンク0 10とを相互接続する接続67。
スイッチ46とリンク1 12とを相互接続する接続68。
【００３９】
図2に示す接続は、制御および書込み操作のための次のものを含む。
スイッチ40の個々のスイッチング素子およびスイッチ44の個々のスイッチング素子にそれぞれ接続される、リンク0 10からの複数の出力70。
スイッチ40の個々のスイッチング素子およびスイッチ44の個々のスイッチング素子にそれぞれ接続される、リンク1 12からの複数の出力72。
バンク0 18に接続されるスイッチ40の各スイッチング素子からの個々の出力であり、74で集合的に示す出力。
バンク1 20に接続されるスイッチ44の各スイッチング素子からの個々の出力であり、76で集合的に示す出力。
【００４０】
動作中、リンク0 10およびリンク1 12でコマンドが受け取られ、各コマンドがバンクの1つに関連付けられる。リンク0 10については、選択されたバンクがBnk0<1:0> 49で示され、このBnk0<1:0> 49がスイッチ制御部48、50に伝搬されるのに対し、リンク1 12については、選択されたバンクがBnk1<1:0> 51で示され、このBnk1<1:0> 51もスイッチ制御部48、50に伝搬される。スイッチ制御部48、50は、複数のリンクによる同じバンクへの競合を防ぐように動作する。複数のリンクによる同じバンクへの競合をもたらさないアクセスの試みを、有効なアクセスの試みと呼ぶ。無効な試みを防ぐための詳しい回路を以下にさらに説明する。
【００４１】
一部の実施形態では、追加のロジック経路が原因で性能を低下させることなく2つのリンクを2つのバンク間で効果的に切り替えるには、各リンク10、12内の指定されたレジスタを介して出力のセット70、72を作り出すためにシリアルデータのパラレル変換が行われた後に、データ転送が行われる。このシリアル/パラレル変換を示す詳細な実装形態の例は、後ほど図7を参照して説明する。
【００４２】
図2を参照して、次に様々なアクセスシナリオを説明する。以下に説明するアクセスシナリオは、リンク0からバンク0へのアクセス、リンク0からバンク1へのアクセス、リンク1からバンク1へのアクセス、リンク1からバンク0へのアクセスを含む。
【００４３】
リンク0 10による有効なアクセスの試みの間、バンク0 18が選択された場合、スイッチ制御部48はリンク0の出力70がバンク0 18に伝搬されるようにスイッチ40を制御し、それにより書込みデータ経路と制御経路とを確立する。スイッチ制御部48は、バンク0 18からの出力60が出力67とともにリンク0 10に伝搬されるようにスイッチ42を制御し、それにより読出しデータ経路を確立する。
【００４４】
リンク0 10による有効なアクセスの試みの間、バンク1 20が選択された場合、スイッチ制御部50はリンク0 10の出力70がバンク1に伝搬されるようにスイッチ44を制御し、それにより書込みデータ経路と制御経路とを確立する。スイッチ制御部48は、バンク1 20からの出力62が出力67とともにリンク0 10に伝搬されるようにスイッチ42を制御し、それにより読出しデータ経路を確立する。
【００４５】
リンク1 12による有効なアクセスの試みの間、バンク1 20が選択された場合、スイッチ制御部50はリンク1 12の出力72がバンク1 20に伝搬されるようにスイッチ44を制御し、それにより書込みデータ経路と制御経路とを確立する。スイッチ制御部50は、バンク1 20からの出力62が出力68とともにリンク1 12に伝搬されるようにスイッチ46を制御し、それにより読出しデータ経路を確立する。
【００４６】
リンク1 12による有効なアクセスの試みの間、バンク0 18が選択された場合、スイッチ制御部48はリンク1 12の出力72がバンク0に伝搬されるようにスイッチ40を制御し、それにより書込みデータ経路と制御経路とを確立する。スイッチ制御部50は、バンク0 18からの出力60が出力68とともにリンク1 12に伝搬されるようにスイッチ46を制御し、それにより読出しデータ経路を確立する。
【００４７】
上述の様々なアクセスシナリオは、図2に示す実装形態に特有のものである。追加のバンクおよび/またはリンクがある場合は、追加のアクセスシナリオが可能であり得ることに留意されたい。アクセスシナリオは、様々な実装形態で異なり得る。図3から図6を、代替実装形態に関する様々なアクセスシナリオを説明するために使用する。各図面では、前に論じた制御信号が示されており、それらはすなわち、
リンク0用のLnk0_Bank_slct<0>、
各リンク0用のLnk0_Bank_slct<1>、
リンク1用のLnk1_Bank_slct<0>、
各リンク1用のLnk1_Bank_slct<1>、
Lnk_is_Bnk0_ctrl_enable、
Lnk_os_Bnk0_ctrl_enable、
Lnk_is_Bnk1_ctrl_enable、および
Lnk_os_Bnk1_ctrl_enableである。
以下に説明する様々なアクセスシナリオは、リンク0からバンク0へのアクセス、リンク0からバンク1へのアクセス、リンク1からバンク1へのアクセス、およびリンク1からバンク0へのアクセスを含む。
【００４８】
図3を参照すると、リンク0からバンク0へのアクセスの別の例が示されている。リンク0の制御信号のみが、リンク0とバンク0との間のスイッチングマルチプレクサに関係する。この例では、リンク0からバンク0へのアクセスは、外部からの任意の信号を必要としない内部操作である。リンク選択Lnk_is_Bnk0_ctrl_enableが有効にされてリンク0からのデータおよび制御入力がバンク0に伝えられることを可能にし、Lnk0_Bnk_slct<0>がハイ状態に遷移し、これにより、新しいコマンドがアサートされるまで、バンク0を読出し操作のために選択する。
【００４９】
図4を参照すると、バンク1の接続がリンク1からリンク0に切り替えられており、そのため、Lnk_os_Bnk1_ctrl_enableのハイへの遷移は、SIP0(リンク0のポート)からバンク情報を得た後に生じる。リンク1接続の代わりに、リンク0の制御信号が、バンク1とリンク1との間に配置されたスイッチを介してバンク1に転送される。Lnk_os_Bnk1_ctrl_enableがハイに遷移して、リンク0からのデータおよび制御入力がバンク1に渡されることを可能にし、Lnk0_Bnk_slct<1>がハイに遷移して、バンク1を読出しアクセスのために選択する。
【００５０】
図5を参照すると、リンク1からバンク1へのアクセスの別の例が示されている。リンク1/バンク1の事例は、図3を参照して説明したリンク0/バンク0の例と類似する。リンク0(またはリンク1)とバンク1(またはバンク0)との間で制御経路およびデータ経路を切り替えることなく、バンク1とリンク1との中間に配置された全てのスイッチがデータを通過させ、それらをバンク1に制御する。Lnk_is_Bnk1_ctrl_enableがハイに遷移して、リンク1からのデータおよび制御入力がバンク1に渡されることを可能にし、Lnk1_Bnk_slct<1>がハイに遷移して、バンク1を読出しアクセスのために選択する。
【００５１】
図6を参照すると、リンク1からバンク0へのアクセスの別の例が示されている。この例では、バンク0の接続がリンク0からリンク1に切り替えられており、そのため、Lnk_os_Bnk0_ctrl_enableのハイへの遷移は、SIP0(リンク0のポート)からバンク情報を得た後に生じる。リンク0接続の代わりに、リンク1の制御信号が、バンク0とリンク0との間に配置されたスイッチを介してバンク0に転送される。Lnk_os_Bnk0_ctrl_enableがハイに遷移して、リンク1からのデータおよび制御入力がバンク0に渡されることを可能にし、Lnk1_Bnk_slct<0>がハイに遷移して、バンク0を読出しアクセスのために選択する。
【００５２】
読出し操作の出力結果について、データをページバッファからリンク1に送るために、グローバルデータ線<7:0>を使用する。Lnk_os_Bnk0_ctrl_enableがハイに遷移して、リンク1からのデータおよび制御入力がバンク0に渡されることを可能にし、Lnk1_Bnk_slct<0>がハイに遷移して、バンク0を読出しアクセスのために選択する。
【００５３】
次に図7を参照すると、図2の機能のいくつかについての詳細な実装形態の例が示されている。ここでもリンク0 10、リンク1 12、バンク0 18およびバンク1 20を示す。スイッチ40、44(個々のスイッチング素子は図2に示す)は、リンク10、12をバンク18、20に相互接続し、スイッチ制御部48、50によって制御される。リンク0 10の出力70はスイッチ40、44の両方に接続され、リンク1の出力72もスイッチ40、44の両方に接続される。図7の例では、リンク0 10からの制御出力92がスイッチ制御部48に入力され、リンク1 12からの制御出力94がスイッチ制御部50に入力される。リンク0 10は、入力バッファ80と、シリアル/パラレル変換を可能にするシリアルデータ収集レジスタ82と、コマンドインタプリタ制御ロジック84とを有する。同様に、リンク1 12は、入力バッファ86と、シリアルデータ収集レジスタ88と、コマンドインタプリタ制御ロジック90とを有する。
【００５４】
SIP(シリアル入力ポート)(不図示)からバンクアドレスを得て、上述のスイッチ制御信号を生成するために、コマンドのアサートの前に、どの装置かを選択するためにDN(装置番号:device number)とともにバンクアドレスがまず入力される(シリアル相互接続メモリシステムを想定する)。そのバンクアドレスに基づいて、各リンクが、選択されたバンクアドレスビットにデータビットを転送する。2バンク2リンクのシステムでは、スイッチのロジック遅延を無視することはできない。しかし、レジスタ82でのシリアル/パラレル変換の間のタイミングマージンのため、入力データが連続してラッチされながらその遅延は隠される。コマンドインタプリタ制御ロジック84内でのコマンドの復号化は、スイッチ制御信号とスイッチの入力データとの間の任意のタイミング競合問題が発生しないように、バンクアドレスをラッチし、スイッチロジックの関連する制御信号を作成した後に行われる。このスイッチロジックは、ロジック実装に応じて異なるものとすることができる。本明細書で説明する特定の回路では、多重化機能を実行するために2入力NANDを使用する。
【００５５】
2つのリンクが時間差なく使用される場合、それぞれの異なるリンクは異なる有効なバンクアクセスを有するべきである。これを例として図8に示す。図8では、2つのバンクへのアクセス間に時間差がない。第1の例を800で全体的に示す。この例では、リンク0によるバンク0への、およびリンク1によるバンク1への有効な同時アクセスと、その後に続くリンク1によるバンク0への、およびリンク0によるバンク1への有効な同時アクセスがある。第2の例を802で全体的に示す。この例では、リンク1によるバンク0への、およびリンク0によるバンク1への有効な同時アクセスと、その後に続くリンク1によるバンク1への、およびリンク0によるバンク0への有効な同時アクセスがある。2つのリンクから同じバンクへの同時アクセスがある場合に、新たな無効アクセス状態が発生する。図9にそのような無効アクセスの例を示す。900で全体的に示す例では、両方のリンクが同時にバンク0にアクセスしようとしている。901で全体的に示す例では、両方のリンクが同時にバンク1にアクセスしようとしている。
【００５６】
バンクは、ワード線およびビット線経路をアクティブにする専用のロジックブロックで物理的に分けられる。独立した操作は、柔軟なリンク/バンク接続で実現される。有効および無効の判定は、図9に示すように2つのリンクでの時間差に応じて行われる。同じバンクに対するリンク操作の時期にいくらかの差がある(すなわち図8の例にあったような同時ではない)場合、最初のアクセスが許可され、後続のアクセスは無効であり無視される。この時間差は、PVT(プロセス/電圧/温度)によって異なり得る。一部の実装形態では、任意のリンク入力ポートからの最初の入力ストリームの有効な操作を保証するために、少なくとも2サイクルの時間差を使用する。この時間差は実装形態に特有のものである。
【００５７】
要約すれば、2つのリンクから同じバンクに順次アクセスがある場合、最初のアクセスが有効であり、2番目は無効である。図9は、この例を902で全体的に示す。リンク1からバンク0への最初の有効なアクセスと、それに続くリンク0からバンク0への後の無効なアクセスがある。
【００５８】
図10では、101で、スイッチ40またはスイッチ44内の単一のスイッチング素子の例を全体的に示す。スイッチング素子101は、入力In_Aを受け取り、さらにリンク選択信号lnk_is_Bnki_ctrl_enable(スイッチ制御部48が制御するスイッチではi=0、スイッチ制御部50が制御するスイッチング素子ではi=1)も受け取る第1のNANDゲート100を有する。スイッチング素子101は、リンク1から入力In_Bを受け取り、さらにリンク選択信号Lnk_os_Bnki_ctrl_enable(スイッチ制御部48が制御するスイッチではi=0、スイッチ制御部50が制御するスイッチング素子ではi=1)も受け取る第2のNANDゲート102を有する。スイッチ制御部48が制御するスイッチング素子では、i=0であり、したがってIn_Aはリンク0からの入力であり、In_Bはリンク1からの入力である。スイッチ制御部50が制御するスイッチング素子では、i=1であり、したがってIn_Aはリンク1からの入力であり、In_Bはリンク0からの入力である。この2つのNANDゲート100、102の出力は、これらの出力を組み合わせてスイッチ出力out0 105を作り出す第3のNANDゲート104に入力される。スイッチ48が制御するスイッチング素子では、out0 105はバンク0への入力として接続される。スイッチ50が制御するスイッチング素子では、out0 105はバンク1への入力として接続される。
【００５９】
図10では、103で、スイッチ42またはスイッチ46内の単一のスイッチング素子の例を全体的に示す。スイッチング素子103は、バンク0から入力Bank0_inを受け取り、さらにバンク選択信号Lnk_Bnk_slct<0>も受け取る第1のNANDゲート110を有する。スイッチング素子103は、バンク1からBank1_inを受け取り、さらにバンク選択信号Lnk_Bnk_slct<1>も受け取る第2のNANDゲート112を有する。スイッチ制御部48が制御するスイッチング素子では、Lnk0_Bnk_slct<1:0>は、リンク0に関する。スイッチ制御部50が制御するスイッチング素子では、Lnk1_Bnk_slct<1:0>は、リンク1に関する。この2つのNANDゲート110、112の出力は、これらの出力を組み合わせてスイッチ出力out1 115を作り出す第3のNANDゲート114に入力される。スイッチ48では、out1 115はリンク0への入力として接続される。スイッチ50では、out1 115はリンク1への入力として接続される。
【００６０】
スイッチング素子101、103は、特定のロジック構成要素とともに示されている。他の実装形態では、スイッチング素子101、103は、共同して同様の機能を実現する代替ロジック構成要素を有する。スイッチング素子101、103は任意のNANDゲートを有する必要はなく、他の実装形態も可能である。
【００６１】
一部の実施形態では、このシステムは、全てのリンクに対するスイッチ制御ロジックに対して同一のスイッチ制御部回路を実装できるようにする、例えば追加の入力ピンなどの追加入力を有する。そのような入力は、スイッチ制御ロジックが機能している対象のリンクを識別するために使用することができる。
【００６２】
link_idの機能を説明するためのロジックの概要を、図11Aの400で示す。ここでもリンク0 10、リンク1 12、バンク0 18、バンク1 20、およびスイッチ40、42、44、46を示す。スイッチ制御部48は、VSSに接続されたlink_idとともにあり、したがってリンク0 10用のスイッチ制御部として機能することを選択している。スイッチ制御部48はLnk0_Bnk_slct<1:0>を作り出し、Lnk_is_Bnk0_ctrl_enableおよびLnk_os_Bnk0_ctrl_enableを作り出す。スイッチ制御部50はVDDに接続されたlink_idとともにあり、したがって、リンク1 12用のスイッチ制御部として機能することを選択している。スイッチ制御部50はLnk1_Bnk_slct<1:0>を作り出し、Lnk_os_Bnk1_ctrl_enableおよびLnk_is_Bnk1_ctrl_enableを作り出す。
【００６３】
一部の実施形態では、このシステムは、シングルリンク構成とマルチリンク構成との間の選択を可能にする、例えば追加の入力ピンなどの追加入力を有する。添付の図12に含まれる特定の例では、Single_link入力が実装されている。シングルリンク構成を使用する場合、このピンはハイである。マルチリンク構成(説明した例でのデュアルリンク)では、このピンはローに設定される。
【００６４】
バンク選択相互接続を説明するためのロジックの例を、図11Bの401で示す。ここでもリンク0 10、リンク1 12、バンク0 18、バンク1 20、およびスイッチ40、42、44、46を示す。前述のように、リンク0がバンク選択信号Bk0<1:0> 49を出力するのに対し、リンク1はバンク選択信号Bk1<1:0> 51を出力する。スイッチ制御部48、50のそれぞれは、Bkb<1:0>およびBka<1:0>を受け取るための入力を有する。「Bka<1:0>」および「Bkb<1:0>」の接尾辞「a」と「b」は、2つの異なるリンクの意味を持ち、<1:0>は、<0>がバンク0、<1>がバンク1のバンク番号である。これらの入力の、リンク0、リンク1のバンク選択出力への接続は、そのロジックシステムの場所に従って行われる。具体的には、スイッチ制御部48(リンク0側)では、Bka<1:0>= Bk0<1:0>であり、Bkb<1:0>=Bk1<1:0>である。スイッチ制御部50(リンク1側)では、接続は反転され、Bka<1:0>= Bk1<1:0>であり、Bkb<1:0>=Bk0<1:0>である。
【００６５】
図12にスイッチ制御部の実装形態の例の詳細図を示す。この実装形態は、例示目的のみの極めて特定的なものであることが理解される。図示したこの特定の例は、複数のバンクのうちの任意のバンクに、または任意のバンクから接続されるスイッチ用のスイッチ制御部として機能できるように設計されている。300で全体的に示す回路は、リンクをバンクに接続するスイッチを開閉するために使用される4つの制御信号lnk_is、lnk_os、bk_slct0およびbk_slct1を生成する。これらのスイッチは、例えば図10に示すような2入力のNANDゲートを有する回路など、任意の適切なロジック回路を使用して実装することができる。
【００６６】
リンク認識ロジック305が、link_id入力を受け取る。例えば、このロジックシステムがリンク0ブロックに含まれる場合、link_idは「0」であり、その他の場合はlink_idは「1」である。このロジックは、スイッチ制御動作が開始する際に、回路300が、どのリンク制御ブロックに自らが含まれるのかを認識できるようにする。このリンク認識ロジックは、link_id入力を受け取るために接続されたインバータ402を有する。インバータ402の出力は、3入力のNANDゲート400の1つの入力に入力される。NANDゲート400の残りの入力は、シングルリンク出力slink_bおよびBkb<0>を取り込む。
【００６７】
動作中、回路300が図2のスイッチ制御部48として動作するように構成される場合(link_id=0)、出力信号lnk_isおよびlnk_osが、スイッチ制御部48のためのLnk_is_Bnk0_ctrl_enableおよびlnk_os_Bnk0_ctrl_enableとして機能し、残りの2つの出力bk_slct0およびbk_slct1が、スイッチ制御部48のLnk0_Bnk_slct<1:0>信号となる。回路300が図2のスイッチ制御部50として動作するように構成される場合(link_id=1)、2つの出力信号lnk_isおよびlnk_osが、スイッチ制御部50のためのLnk_is_Bnk1_ctrl_enableおよびLnk_os_Bnk1_ctrl_enableとして機能し、残りの2つの出力bk_slct0およびbk_slct1が、スイッチ制御部50のLnk1_Bnk_slct<1:0>信号となる。
【００６８】
この回路は、第1の無効検査ロジック301を含む。このロジックは、1つのリンクによる2つのバンクへの同時アクセスを防ぐために提供する。この回路は、入力Bka<0>およびBka<1>を有する第1のNANDゲート370と、入力Bkb<0>およびBkb<1>を有する第2のNANDゲート372とを備える。この2つのNANDゲート370、372の出力が、第3のNANDゲート374に入力され、第3のNANDゲート374の出力がインバータで反転されてinvalid_b出力を作り出す。
【００６９】
動作中、無効検査ロジック301は、両方のバンクが1つのリンクによって選択されている場合にハイになるInvalid_b出力を作り出す。具体的には、Bka<0>およびBka<1>が両方ともハイの場合、両方のバンクが同じリンクによって選択されたことを意味し、Invalid_b出力がハイになり、無効な状態を示す。Bkb<0>およびBkb<1>が両方ともハイの場合、両方のバンクが同じリンクによって選択されたことを意味し、Invalid_b出力がハイになり、無効な状態を示す。
【００７０】
2つの入力(Bka<0>およびBka<1>)または(Bkb<0>およびBkb<1>)がゼロ状態を有する場合、所与のリンクについてバンクの選択がないため、無動作を意味する。
【００７１】
シングルリンク構成回路302を、前に論じたシングルリンク動作の選択を可能にするために提供する。2バンクのメモリシステムではリンクが2つあるとより効率的ではあるが、説明する回路により、シングルリンクもこのメモリシステムの利用可能な構成としてサポートされている。シングルリンク構成が使用される場合、「single_link」信号がハイになり、「slink_b」はロー状態を有することになる。「slink_b」がロー状態を有する場合、「lnk_os」がローになり、「lnk_is」のみがバンクアドレスに照らして有効な状態を有する。2リンク構成では、「single_link」がロー状態を有し、そのため両方の出力「lnk_is」および「lnk_os」が有効になる。図示の例では、シングルリンク構成回路302は、単にインバータ403である。
【００７２】
回路300は、303Aおよび303Bで示す機能を含む第2の無効検査ロジックを備える。回路303Aは、Bka<0>およびBkb<0>を受け取るNANDゲート350を備える。NANDゲート350の出力は、先に言及したInvalid_bも受け取る別のNANDゲート352の入力に接続される。NANDゲート352の出力hld0は、インバータ354によって反転されて出力hld0_bを作り出す。回路303Bは、Bka<1>およびBkb<1>を受け取るNANDゲート356を備える。NANDゲート356の出力は、先に言及したInvalid_bも受け取る別のNANDゲート358の入力に接続される。NANDゲート358の出力hld1は、インバータ360によって反転されて出力hld1_bを作り出す。
【００７３】
動作中、これらの回路303A、303Bは、2つのリンクが誤って同じバンクに同時にアクセスする場合に、および(Invalid_bによって信号伝達されるように)1つのリンクが両方のバンクに同時にアクセスしようとする場合に、lnk_isおよびlnk_osそれぞれの前の状態を保つためのデータ保持機能を提供する。回路303Aでは、入力Bka<0>およびBkb<0>の両方が「ゼロ」状態を有するか、入力の一方が「ゼロ」状態を有する場合、出力hld0およびhld0_bは、ハイ状態とロー状態とをそれぞれ有する。入力Bka<0>およびBkb<0>の両方が「1」状態を有する場合、出力hld0およびhld0_bは、ロー状態とハイ状態とをそれぞれ有する。これは、両方のリンクがバンク0にアクセスしようとしている場合に生じる。これは、Invalid_b入力によって示されるような、同じリンクが両方のバンクにアクセスしようとしている場合にも発生する保持状態である。以下にさらに詳しく説明するように、このhld0およびhld0_b出力は、lnk_isを前の値に保つために保持ロジック306Aによって使用される。
【００７４】
回路303Bでは、Bka<1>およびBkb<1>の両方が「ゼロ」状態を有するか、入力の一方が「ゼロ」状態を有する場合、出力hld1およびhld1_bは、ハイ状態とロー状態とをそれぞれ有する。同様に、Bka<1>およびBkb<1>の両方が「1」状態を有する場合、出力hld1およびhld1_bは、ロー状態とハイ状態とをそれぞれ有する。これは、両方のリンクがバンク1にアクセスしようとしている場合に生じる。これは、Invalid_b入力によって示されるような、同じリンクが両方のバンクにアクセスしようとしている場合にも発生する保持状態である。以下にさらに詳しく説明するように、このhld1およびhld1_b出力は、lnk_osを前の値に保つために保持ロジック306Bによって使用される。
【００７５】
スイッチロジック304A、304Bは、link_idに応じてこのロジックを制御するように機能する。リンク0の場合、link_idはゼロであり、そのためインバータ402の出力はハイであり、NANDゲート380を有効にする。この場合、Bka<0>、実際にはBk0<0>がlnk_isの入力ソースになる。その一方で、リンク1の場合、link_idはハイであり、これはNANDゲート388を有効にし、そのためBka<1>、実際にはBk1<1>がlnk_isの入力ソースになる。スイッチングロジック304A、304Bの動作は、次のように要約することができる。
・  リンク0の位置(link_id=0)→NAND380の出力が「lnk_is」の結果に影響し、NAND388はロジック的にどんな影響も与えない。その結果はリンク0からのバンク0アクセス→内部にリンク(304A)。
・  リンク1の位置(link_id=1)→NAND388の出力が「lnk_is」の結果に影響し、NAND380はロジック的にどんな影響も与えない。その結果はリンク1からのバンク1アクセス→内部にリンク(304A)。
・  リンク0の位置(link_id=0)→NAND400の出力が「lnk_os」の結果に影響する。→Bk1<0>が入力の1つとしてNAND392にロジック的に接続される。その結果はリンク1からのバンク0アクセス→外部にリンク(304B)。
・  リンク1の位置(link_id=1)→NAND390の出力が「lnk_os」の結果に影響する。→Bk0<1>が入力の1つとしてNAND392にロジック的に接続される。その結果はリンク0からのバンク1アクセス→外部にリンク(304B)。
【００７６】
スイッチロジック304Aは、Bka<0>および反転されたlink_idを受け取る第1のNANDゲート380を備える。NANDゲート380の出力は、NANDゲート382への入力として接続される。NANDゲート382の第2の入力は、以下に説明するスイッチロジック304Bの一部を形成するNANDゲート388の出力から来る。スイッチロジック304Aの全体的な出力をaa0と表記する。
【００７７】
スイッチロジック304Bは、Bka<1>およびlink_idを受け取る第1のNANDゲート388を備える。NANDゲート388の出力は、上述のスイッチロジック304Aの一部を形成するNANDゲート382への入力として接続される。ロジック304Bは、3つの入力Bkb<1>、slink_bおよびlink_idを有する第2のNANDゲート390も備える。NANDゲート390の出力は、リンク認識ロジック305の一部を形成するNANDゲート400の出力から受け取る第2の入力を有する第3のNANDゲート392に入力される。スイッチロジック304Bの全体的な出力をaa1と表記する。
【００７８】
スイッチロジック304A、304Bは、図13の2リンク動作用の真理値表に従って、および図14のシングルリンク動作用の真理値表に従って機能する。図13では、表の上半分1300がLink_id=0での動作を表すのに対し、表の下半分1302はLink_id=1での動作を表す。ロジック304Aの出力をaa0として示すのに対し、ロジック304Bの出力をaa1として示す。出力は、非選択を意味する「0」、選択を意味する「1」、または前の出力を保つことを意味する「保持」のいずれかである。図13に示されていないロジックの組み合わせは、無効検査ロジックによって阻止される無効な事例に関係することに留意されたい。
【００７９】
保持回路306Aは、スイッチロジック304Aの出力aa0を受け取り、これを、lnk_isが前の状態を保持するhld0がローかつhld0_bがハイである場合を除いて、出力lnk_isに伝えるように機能する。同様に、保持回路306Bは、スイッチロジック304Bの出力aa1を受け取り、これを、lnk_osが前の状態を保持するhld0がローかつhld0_bがハイである場合を除いて、出力lnk_osに伝えるように機能する。
【００８０】
最後に、読出しデータ経路に関するバンク選択ロジック307A、307Bがある。このロジックは、アクセスされたリンク制御ブロックにどのバンクが現在接続されているのかを選択するために使用される。ロジック307Aは、入力としてBka<0>およびInvalid_bを受け取るNANDゲート404を備える。NANDゲート404の出力は、インバータ406によって反転されてbk_slct0を作り出す。ロジック307Bは、入力としてBka<1>およびInvalid_bを受け取るNANDゲート408を備える。NANDゲート408の出力は、インバータ410によって反転されてbk_slct1を作り出す。
【００８１】
動作中、無効検査ロジック301によって信号伝達された無効状態がある場合を除き、Bka<0>およびBka<1>のロジック値がこの回路によって「bk_slct0」および「bk_slct1」出力ポートに渡される。出力bk_slct0およびbk_slct1は、スイッチ制御部48、50のうちの一方のLnk_Bnk_slct<1:0>信号である。
【００８２】
上述の実施形態では、簡単にするために各装置要素および各回路を図面に示すように互いに接続する。本発明の実際の適用では、各要素、各回路、等を互いに直接的に接続することができる。同様に、各要素、各回路、等を装置および機器の動作に必要な他の要素、回路、等を介して互いに間接的に接続することもできる。したがって、実際の構成では、各回路要素および回路は、直接的にまたは間接的に互いに結合され、または接続される。
【００８３】
本発明の上述の実施形態は、単に例であることのみを意図する。本明細書に添付した特許請求の範囲によってのみ定義される本発明の範囲から逸脱することなく、当業者は特定の実施形態に代替、修正および改変を行うことができる。
【符号の説明】
【００８４】
10  リンク0
12  リンク1
14  制御ロジック
16  スイッチングロジック
18  バンク0
20  バンク1
30  デュアルポート構成
32  シングルポート構成
40  スイッチ
42  スイッチ
44  スイッチ
46  スイッチ
48  スイッチ制御部
48  スイッチ
49  Bnk0<1:0>
49  制御入力
50  スイッチ制御部
50  スイッチ
51  Bnk1<1:0>
51  制御入力
53  Lnk_is_Bnk0_ctrl_enable
60  Lnk_os_Bnk0_ctrl_enable
60  バンク0出力
62  バンク1出力
63  Lnk_is_Bnk1_ctrl_enable
65  Lnk_os_Bnk1_ctrl_enable
64  Lnk0_Bnk_slct<1:0>
66  Lnk1_Bnk_slct<1:0>
67  出力
67  接続
68  出力
68  接続
70  出力
72  出力
74  出力
76  出力
80  入力バッファ
82  シリアルデータ収集レジスタ
84  コマンドインタプリタ制御ロジック
86  入力バッファ
88  シリアルデータ収集レジスタ
90  コマンドインタプリタ制御ロジック
92  制御出力
94  制御出力
100  第1のNANDゲート
101  スイッチング素子
102  第2のNANDゲート
103  スイッチング素子
104  第3のNANDゲート
105  out0
110  第1のNANDゲート
112  第2のNANDゲート
114  第3のNANDゲート
115  out1
300  回路
301  無効検査ロジック
302  シングルリンク構成回路
303A  回路
303B  回路
304A  スイッチロジック
304B  スイッチロジック
305  リンク認識ロジック
306A  保持ロジック
306A  保持回路
306B  保持ロジック
306B  保持回路
307A  バンク選択ロジック
307B  バンク選択ロジック
350  NANDゲート
352  NANDゲート
354  インバータ
356  NANDゲート
358  NANDゲート
360  インバータ
370  第1のNANDゲート
372  第2のNANDゲート
374  第3のNANDゲート
380  第1のNANDゲート
380  NANDゲート
380  NAND
382  NANDゲート
388  第1のNANDゲート
388  NANDゲート
388  NAND
390  第2のNANDゲート
390  NANDゲート
390  NAND
392  第3のNANDゲート
392  NAND
400  NANDゲート
400  NAND
402  インバータ
403  インバータ
404  NANDゲート
406  インバータ
408  NANDゲート
410  インバータ
【図１】
0005591284.tif 000002
【図２】
0005591284.tif 000003
【図３】
0005591284.tif 000004
【図４】
0005591284.tif 000005
【図５】
0005591284.tif 000006
【図６】
0005591284.tif 000007
【図７】
0005591284.tif 000008
【図８】
0005591284.tif 000009
【図９】
0005591284.tif 000010
【図１０】
0005591284.tif 000011
【図１１Ａ】
0005591284.tif 000012
【図１１Ｂ】
0005591284.tif 000013
【図１２】
0005591284.tif 000014
【図１３】
0005591284.tif 000015
【図１４】
0005591284.tif 000016