(57)【要約】【課題】アクセス・インタフェースの信号品質を改善し、製造費を低減すること。【解決手段】記憶装置への単一のデータ・バスは、複数のデータ・バス部分に分割されることができ、その各々は、複数のコントローラ・チップの異なる各々のコントローラ・チップによって管理される。各々の記憶装置へのメモリ・アクセス中に、複数のコントローラ・チップの各々は、データ・バスの異なる対応する部分を制御し、その結果、アクセスが読取りまたは書込みであるか否かに依存して、記憶装置からデータを読み取るか、または、記憶装置にデータを格納する。データ・アクセスを行なうために、シンクロナイザ回路は、複数のメモリ・コントローラ・チップを同期させ、その結果、メモリ・コントローラ・チップのうちの１つが、記憶装置へのアドレス・バスおよび／または制御信号を駆動する。【選択図】      図１
2008171432.tif 000002
【特許請求の範囲】
【請求項１】
第１記憶装置への第１データ・バスを複数組のデータ・バス信号にパーズすることと、
複数のコントローラ・チップの各々に対して、各々のコントローラ・チップを割り当てることであって、それによって、前記各々のコントローラ・チップと前記第１記憶装置との間の前記第１データ・バスに関連する前記複数組のデータ・バス信号のうちの対応する組を制御することと、および
前記第１データ・バスを介して、前記複数のチップ・コントローラの各々が、前記第１記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にすることと
を含む方法。
【請求項２】
前記複数のチップ・コントローラの各々が、前記第１記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にすることは、
前記第１記憶装置に関連するアドレスおよび制御バスを制御するように、前記複数のコントローラ・チップのうちの与えられたコントローラ・チップを割り当てることを含んでいる、請求項１記載の方法。
【請求項３】
前記方法はさらに、
前記第１記憶装置への第１データ・バスと第２記憶装置への第２データ・バスとを備えた複数のデータ・バスを維持することと、
前記第２記憶装置への第２データ・バスを複数組のデータ・バス信号にパーズすることと、
前記複数のコントローラ・チップの各々について、前記第２データ・バスに関連する複数組のデータ・バス信号のうちの対応する組を制御するように、各々のコントローラ・チップを割り当てることと
をさらに含む、請求項１記載の方法。
【請求項４】
前記複数のチップ・コントローラの各々が、前記第２データ・バスを介して、前記第２記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にすることをさらに含む請求項３記載の方法。
【請求項５】
前記複数のチップ・コントローラの各々が、前記第２記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にすることは、
前記第１記憶装置に関連するアドレス・バスおよび制御バスを制御するように、前記複数のコントローラ・チップのうちの第１コントローラ・チップを割り当てることと、
前記第２記憶装置に関連するアドレス・バスおよび制御バスを制御するように、前記複数のコントローラ・チップのうちの第２コントローラ・チップを割り当てることと、
前記複数のコントローラ・チップの各々が、前記第１記憶装置からのデータの各部分に同時にアクセスすることを可能にする一方で、前記第１コントローラ・チップが、前記第１記憶装置に関連するアドレス・バスおよび制御バスを制御することと、および
前記複数のコントローラ・チップの各々が、前記第２記憶装置からのデータの各部分に同時にアクセスすることを可能にする一方で、前記第２コントローラ・チップが、前記第１記憶装置に関連するアドレス・バスと制御バスを制御することと
を含んでいる請求項３記載の方法。
【請求項６】
前記第１記憶装置から最終目的地に取り出されるデータの異なる各部分の同時パラレル転送をサポートするように前記コントローラ・チップを構成することをさらに含む請求項１記載の方法。
【請求項７】
前記第１記憶装置および前記第２記憶装置の長手方向軸に対して実質的に平行なレイアウト軸に沿って前記コントローラ・チップをレイアウトすることをさらに含む請求項３記載の方法。
【請求項８】
前記複数のチップ・コントローラの各々が、前記第１記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にすることは、
前記第１記憶装置の長手方向軸に対して実質的に平行なレイアウト軸に沿ってコントローラ・チップをレイアウトすることを含んでいる請求項１記載の方法。
【請求項９】
前記レイアウト軸に沿って前記コントローラ・チップをレイアウトすることは、
前記レイアウト軸の第１位置上に前記コントローラ・チップの第１コントローラ・チップを配置することと、
前記レイアウト軸の第２位置上に前記コントローラ・チップの第２コントローラ・チップを配置することと、
前記第１コントローラ・チップと前記第１記憶装置との間に第１組の導電性経路を実装することと、および
前記第２コントローラ・チップと前記第１記憶装置との間に第２組の導電性経路を実装することと
を含んでいる請求項８記載の方法。
【請求項１０】
前記第１組の導電性経路および前記第２組の導電性経路を実装することは、
前記第１コントローラ・チップと前記第１記憶装置との間の前記第１組の導電性経路に関連する対応した導電性経路長さを、前記第２コントローラ・チップと前記第１記憶装置との間の前記第２組の導電性経路に関連する対応した導電性経路長さと実質的に同様となるように構成することを含んでいる請求項９記載の方法。
【請求項１１】
複数組の第１データ・バス信号にパーズされた第１データ・バスと、
その各々が、第１記憶装置への前記複数組の第１データ・バス信号のうちの対応する組を制御するように割り当てられる複数のメモリ・コントローラ・チップと
を備えるシステムであって、
前記第１データ・バスは、前記複数のチップ・コントローラの各々が、前記第１記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にする、システム。
【請求項１２】
前記複数のメモリ・コントローラ・チップのうちの単一のメモリ・コントローラ・チップは、前記第１記憶装置に関連するアドレス・バスおよび制御バスを制御するように構成されている、請求項１１記載のシステム。
【請求項１３】
前記システムはさらに、複数組の第２データ・バス信号にパーズされた第２データ・バスを備え、
前記複数のメモリ・コントローラ・チップの各々は、第２記憶装置への前記複数組の第２データ・バス信号のうちの対応する組を制御するように割り当てられる、請求項１１記載のシステム。
【請求項１４】
前記システムはさらに、複数のメモリ・コントローラ・チップに関連する動作を調整する同期回路を備え、該同期回路に関連する信号伝達は、前記複数のチップ・コントローラが前記第２データ・バスを介して前記第２記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にする、請求項１３記載のシステム。
【請求項１５】
前記複数のコントローラ・チップのうちの第１コントローラ・チップは、前記第１記憶装置に関連する第１アドレス・バスと、対応する制御バスとを制御するように構成され、
前記複数のコントローラ・チップのうちの第２コントローラ・チップは、前記第２記憶装置に関連する第２アドレス・バスと、対応する制御バスとを制御するように構成されている、請求項１３記載のシステム。
【請求項１６】
前記複数のメモリ・コントローラ・チップは、前記第１記憶装置から最終目的地に取り出された前記データの異なる各部分の同時パラレル転送をサポートするように構成されている、請求項１１記載のシステム。
【請求項１７】
前記複数のメモリ・コントローラ・チップは、前記第１記憶装置および前記第２記憶装置の長手方向軸に対して実質的に平行なプリント回路基板のレイアウト軸に沿ってレイアウトされ、
前記第１記憶装置は、該第１記憶装置の対応する長手方向軸に沿って配置されたピンを備え、
前記第２記憶装置は、該第２記憶装置の対応する長手方向軸に沿って配置されたピンを備えている、請求項１３記載のシステム。
【請求項１８】
前記複数のメモリ・コントローラ・チップは、前記第１記憶装置の長手方向軸に対して実質的に平行な回路基板のレイアウト軸に沿って配置されている、請求項１１記載のシステム。
【請求項１９】
前記複数のコントローラ・チップの第１コントローラ・チップは、前記レイアウト軸の第１位置に存在し、
前記複数のコントローラ・チップの第２コントローラ・チップは、前記レイアウト軸の第２位置に存在し、
第１組の導電性経路は、前記第１記憶装置に前記第１コントローラ・チップを接続し、
第２組の導電性経路は、前記第１記憶装置に前記第２コントローラ・チップを接続する、請求項１８記載のシステム。
【請求項２０】
前記第１コントローラ・チップと前記第１記憶装置との間の前記第１組の導電性経路に関連する対応した導電性経路長さは、前記第２コントローラ・チップと前記第１記憶装置との間の前記第２組の導電性経路に関連する対応した導電性経路長さと実質的に同様となるように構成されている、請求項１９記載のシステム。
【請求項２１】
第１記憶装置への第１データ・バスを複数組のデータ・バス信号にパーズする手段と、
複数のコントローラ・チップの各々について、該各々のコントローラ・チップと前記第１記憶装置との間の前記第１データ・バスに関連する前記複数組のデータ・バス信号のうちの対応する組を制御するように各々のコントローラ・チップを割り当てる手段と
を備えるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ・アクセスおよびマルチチップ・コントローラに関する。
【背景技術】
【０００２】
コンピューティング・プラットフォームにおいて使用される従来のメモリ・アーキテクチャは、メモリ・コントローラと、該メモリ・コントローラによってアクセスされるデータを格納する一または複数のメモリ・モジュールとの２個の要素の使用に依存している。多くの従来の用途で、メモリ・モジュールは、典型的には、標準化団体であるＪＥＤＥＣ（電子素子技術連合評議会）によって定義された、電気的なインタフェース、プロトコル、および機械的な接続部および形態を有した業界基準メモリ・モジュールである。
【０００３】
メモリ性能が時間と共に改善してきたように、メモリ・コントローラと、対応するモジュールとの間の対応するインタフェース速度もまた、増大してきた。インタフェースの対応する信号伝達電圧は、時間と共に低減された。このように、各性能の向上は、プリント回路基板の設計（たとえば、各コンポーネントのトレース接続ピンのレイアウト）をより困難にする。つまり、トレースのレイアウトは、各メモリ速度の改善に対して、より困難になる傾向がある。
【０００４】
ＪＥＤＥＣ標準化委員会は、受入可能な最大の物理的なトレース長の短縮と、同一のアクセス・インタフェースに接続された、共生するメモリ・モジュールの数の低減を（メモリ標準に）組み込むことによって、この増大する困難を認めた。これらの変更は両方とも、各々のトレースに対する全体的な信号ローディングを低減し、その結果、高いアクセス速度が可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上で議論したように、従来のメモリ・アーキテクチャに関連する不備がある。たとえば、上記の動向（たとえば、より高いインタフェース速度およびより低い信号伝達電圧）は、不可能でなければ、従来のメモリ・コントローラの手法を使用して大規模なシステム・メモリの用途を実施することを困難且つ高価にする。すなわち、単一の大きいメモリ・コントローラ・チップが多数のメモリ・モジュールに接続するために使用される場合には、多数の独立したメモリ・インタフェース（たとえば、データ・バス、アドレス線、制御線など）は、典型的には、記憶装置に格納された情報にアクセスすることを必要とする。通常の状況下では、各々のインタフェースは、コントローラとメモリ・モジュールとの間のトレースに対するローディングの問題のために、１個だけ、または恐らく２個までのメモリ・モジュールからの情報にアクセスすることができる。
【０００６】
従来のアーキテクチャによれば、単一のコントローラ・チップから８個から１６個までの別個のメモリ・モジュール・チップにルーティングすることは、メモリ・コントローラ・チップと記憶装置との間に、複雑に絡み合った非常に長いトレース長（各々のプリント回路基板上の多数の層の）を必要とすることがある。これは、多くの場合には、長く絡み合うプリント回路基板のトレース長の実装が、対応する信号品質を下げることがあり、メモリ・コントローラによるアクセス失敗の可能性を増大させることがあるので、問題である。これは、基板のコストに、たとえば、開発費、製品コストを追加し、歩留りを低下させる。上述したように、これらは、トレースに関連する受入可能なロード値を定義する厳密な標準である。
【課題を解決するための手段】
【０００７】
ここで議論される技術は、先行技術において公知の付加的技術と同様に、上で議論したもののような従来の用途を逸脱している。たとえば、ここでの或る特定の実施形態は、前述の技術に関連する不備、および／または上に議論されない先行技術における他の不備の克服を意図している。
【０００８】
一般に、ここでの実施形態は、多重配位メモリ・コントローラ・チップ（たとえば、独立した集積回路）に亘って一または複数のメモリ・インタフェース（たとえば、一または複数のデータ・バス、アドレス・バス、制御信号など）を分割することによって、プリント回路基板上にトレースを配置する負担を低減する。たとえば、記憶装置への単一のデータ・バスは、多数のデータ・バス部分（たとえば、信号群）に分割することができ、その各々は、異なる各々のコントローラ・チップによって管理される。したがって、各々の記憶装置へのメモリ・アクセス中に、複数のコントローラ・チップの各々は、アクセスが読取りかまたは書込みか否かに依存してデータを取り出すかまたは格納するようにデータ・バスの異なる対応する部分を制御することができる。
【０００９】
１つの実施形態において、各々のデータ・アクセスを行なうために、（メモリ・コントローラ・チップに対して内部および／または外部の）シンクロナイザ回路は、複数のメモリ・コントローラ・チップを同期させることができ、その結果、一または複数のメモリ・コントローラ・チップのいずれかが、記憶装置へのアドレス・バスおよび／または制御信号を駆動する。適切なときに記憶装置にアドレスを設定した後で、メモリ・コントローラ・チップは、同時に、アドレスに基づいてデータを読み取るかまたは記憶装置に書込みデータを提供する（たとえば、ラッチ）。シンクロナイザ回路は、そのような動作を行なうために複数のチップ・コントローラ中のタイミングを調整する。
【００１０】
データ・バスを分割し、単一のデータ・バスの各部分を制御するようにメモリ・コントローラ・チップの各々を割り付けることに加えて、コントローラの各々は、異なる記憶装置への各々の複数のデータ・バスの部分を制御するように構成されることができる。換言すれば、第１記憶装置への第１データ・バスは、データ・バス部分に分割されることができ、その各々は、複数のコントローラ・チップの各々１つによって制御される。対応する第２記憶装置への第２データ・バスは、データ・バス部分の別の組に分割されることができ、その各々は、複数のコントローラ・チップの各々１つによって制御される。そのような実施形態において、メモリ・コントローラ・チップの各々は、各アドレス・バスおよび／または各記憶装置の対応する制御信号を駆動するように構成されることができる。このように、動作中に、メモリ・コントローラのうちの１つは、複数のメモリ・コントローラ・チップの各々が、アクセスされる記憶装置に格納されたデータの異なる部分にアクセスする間、アクセスされる各々の記憶装置にアドレスを駆動することができる。
【００１１】
上記の実施形態の促進では、１つの実施形態は、記憶装置の軸に対して平行な各々のレイアウト軸に沿った線形の方法で、メモリ・コントローラ・チップ（たとえば、メモリ・コントローラ装置）を物理的に配置することを含んでいる。そのような実施形態は、信号の物理的な位置（割り当てられたビット値などではない）に基づいた複数のコントローラに亘って平等に、分散された信号を分割することを含むことができる。換言すれば、メモリ・コントローラのリニア・アレイに亘るデータ・バスの部分の物理的分散は、対応するメモリ・モジュール（または、場合によっては、複数のメモリ・モジュール）の信号／ピンの割り当てに基づくことができる。そのように実施されるときには、複数のメモリ・コントローラ・チップの各々と記憶装置との間の「直線ショット」（たとえば、実質的に直角のトレース経路）の生成は、全体的なトレース長と、メモリ・コントローラ・チップと一または複数の記憶装置との間の適切な接続性を提供する法外な数のプリント回路基板層の必要性とを低減する。
【００１２】
ここでの実施形態は、従来の用途と対照をなしている。たとえば、ここでの技術は、１組のメモリ・コントローラ・チップと、対応する記憶装置との間の単純なルーティング・チャネルを提供する。これは、より少ない回路基板層が使用されることを可能にし、そして、より多い直接相互連結パスを可能にし、それらの両方は、アクセス・インタフェースの信号品質を改善し、製造費を低減する。さらに、従来の技術と異なり、ここでの実施形態は、メモリ・アレイに付加的なモジュールを含ませることを可能にし、それによって、標準のメモリ・システム・アーキテクチャが通常達成することができるものに対して、本システムの記憶容量を増大させる。（ここで議論されるようなマルチチップ・コントローラ技術の実装を介する）より単純なルーティングは、他の機能に対してプリント回路基板層資源を解放する。
【００１３】
上で議論したように、ここでの技術は、メモリ・システムでの使用に良く適している。しかしながら、ここでの実施形態が、そのような用途での使用に限定されるものではなく、ここで議論した技術が、他の用途にも同様に良く適していることを注記しておく。ここで議論した様々な特徴、技術、構成などの各々が、独立してまたは組み合わせて実行されることができることを注記しておく。
【００１４】
この概要が、すべての実施形態および／または本開示またはクレームされた発明の漸増的に新規の態様を指定するとは限らないことを注記しておく。これに代えて、この概要は、様々な実施形態の予備的な議論および従来の技術に対する新規性の対応する点を単に提供している。本発明の付加的な詳細および／または可能な展望（置換）については、読み手は、本開示の詳細な記述の項および対応する図に導かれる。
【００１５】
本願の先のおよび他の目的、特徴、および利点は、添付の図面に示されるような次の、好しい実施形態のより特定の記述から明白になり、そこでは、同様の参照符号は、様々な図全体に亘って同一部分を参照している。図面は、必ずしも実測するためのものではなく、代りに、実施形態の例、原理、および概念を例示するように重点が置かれている。
【発明を実施するための最良の形態】
【００１６】
１つの実施形態によれば、記憶装置へのデータ・バスは、多数のデータ・バス部分に分割することができ、その各々は、１組の複数の同期コントローラ・チップのうちの異なる各々のコントローラ・チップによって管理される。記憶装置へのメモリ・アクセス中に、複数のコントローラ・チップの各々は、データ・バスの異なる対応する部分を制御し、その結果、アクセスが読取りまたは書込みであるか否かに依存して、記憶装置からデータを取り出すか、または、記憶装置にデータを格納する。データ・アクセスを調整するために、（メモリ・コントローラ・チップに対して内部および／または外部の）シンクロナイザ回路は、複数のメモリ・コントローラ・チップを同期させ、その結果、メモリ・コントローラ・チップのうちの１つが、記憶装置へのアドレス・バスおよび／または制御信号を駆動する。記憶装置にアドレスを設定した後で、複数のメモリ・コントローラ・チップの各々は、記憶装置の各部分からの読取りデータをラッチするか、または、記憶装置の各部分に書込みデータを提供する。
【００１７】
図１は、ここでの実施形態にかかるメモリ・システム１００の図である。示されるように、メモリ・システム１００は、ホスト・システム１１０（たとえば、データ処理システム）と、メモリ・コントローラ１２０（たとえば、メモリ・コントローラ１２０−１，メモリ・コントローラ１２０−２，…，メモリ・コントローラ１２０Ｍ）と、同期回路１３０と、メモリ・アレイ１４０（たとえば、ダイナミック／ランダム・アクセス・メモリ・モジュール）とを備えている。ホスト・システム１１０は、信号１０４（たとえば、信号１０４−１，信号１０４−２，…，信号１０４Ｍ）を介してメモリ・コントローラ１２０に入力コマンドおよび／またはデータを供給することができる。ホスト・システム１１０は、信号１０６（たとえば、信号１０６−１，信号１０６−２，…，信号１０６Ｍ）を介してメモリ・コントローラからデータを受信することができる。
【００１８】
一般に、動作中に、ホスト・システム１１０は、メモリ・コントローラ１２０の組にコマンドを発行し、データをメモリ・コントローラ１２０の組と交換する。たとえば、信号１０４を介して、ホスト・システム１１０は、メモリ・アレイ１４０からデータを取り出す位置（たとえば、データのビット、語、および／または部分）を指定することができる。要求を発行するのに応じて、複数のメモリ・コントローラ１２０によるアクセスの後で、メモリ・システム１００は、信号１０６を介してメモリ・コントローラ１２０からデータを受信する。
【００１９】
メモリ・コントローラ１２０の各々は、データ・バスＡおよびデータ・バスＢのようなメモリ・アレイ１４０への複数の各々のインタフェース（たとえば、データ・バスおよび／または対応する制御線）を備えることができる。この明細書において後で議論するように、データ・バスＡは、メモリ・アレイ１４０における第１記憶装置へのアクセスを提供することができる一方で、データ・バスＢは、メモリ・アレイ１４０における第２記憶装置へのアクセスを提供することができる。データは、同時にまたは異なる時間に各々のデータ・バスの使用を介してアクセスされることができる。メモリ・コントローラ１２０とメモリ・アレイ１４０との間のデータ・バスＡおよびデータ・バスＢのような各々の相互接続は、対応する電子装置（たとえば、メモリ・コントローラ１２０およびメモリ・アレイ１４０）間の一または複数のプリント回路基板上のトレース（または他の媒体）を介して実装されることができる。
【００２０】
上述したように、各メモリ・コントローラ１２０は、メモリ・アレイ１４０からデータにアクセスする目的で、データ・バスＡおよびデータ・バスＢの各部分を制御する。メモリ・システム１００の同期回路１３０は、メモリ・コントローラ１２０の動作を調整し、その結果、メモリ・コントローラ１２０は、メモリ・アレイ１４０からのデータに同時にアクセスすることができる。換言すれば、同期回路１３０によって提供される同期を介して、一または複数のメモリ・コントローラ１２０は、メモリ・アレイ１４０への適切な制御線を設定する一方で、複数のメモリ・コントローラ１２０の各々は、データ・バスの各部分の使用を介してデータの部分にアクセスする。
【００２１】
同期回路１３０は、メモリ・コントローラ１２０への外部資源として図示されたが、これに代えて、メモリ・コントローラ１２０のうちの１つに存在することができる（たとえば、メモリ・コントローラ１２０−１のようなマスタ・メモリ・コントローラ）。このように、単一のメモリ・コントローラ１２０は、メモリ・アレイ１４０へのアクセスを制御するように、すべての他のメモリ・コントローラ１２０の動作を制御することができる。
【００２２】
他の実施形態において、同期回路１３０に関連する機能は、メモリ・コントローラ１２０の各々の全体に亘って分散されることができることを注記しておく。そのような実施形態において、メモリ・コントローラ１２０は、各々のデータ・バスを介したデータ・アクセスを調整するためにそれら自身の中で仲裁する。
【００２３】
上で簡潔に議論したように、メモリ・コントローラ１２０は、ホスト・システム１１０からコマンドを受信し、メモリ動作およびデータの交換を開始する。メモリ・アクセス動作中に、同期回路１３０は、いつデータにおけるクロックのような動作を行なうか、または、いつメモリ・アレイ１４０にデータを書き込むための各々の制御信号を開始するかを、メモリ・コントローラ１２０に示すためのタイミング信号を提供する。複数のメモリ・コントローラ１２０中の動作の適切なタイミングは、メモリ・コントローラ１２０中の干渉を防止し、メモリ・アレイ１４０からのデータの効率的なアクセスを促進する。メモリ・アレイは、ＪＥＤＥＣ標準化団体によって指定されたフォーム・ファクタに従うメモリ・モジュールを備えるように構成されることができることを注記しておく。
【００２４】
図２は、ここでの実施形態にかかるマルチ・ビット・バスの制御を分散するための一般的な技術を示すフローチャート２００である。次の議論が、先に議論したような資源を時折参照するであろうことを注記しておく。
【００２５】
ステップ２１０において、メモリ・システム１００を製造する実体（たとえば、回路基板レイアウト・ツール、メモリ・システム設計者、製造設備、プリント回路基板レイアウト技術者など）は、与えられた記憶装置への各々のデータ・バス（たとえば、データ・バスＡ）を複数組のデータ・バス信号にパーズ（parse）する。たとえば、データ・バスＡが６４ビット幅である場合には、実体は、データ・バスＡをＭ個の部分にパーズする（ここでは、Ｍは、整数値である）。その部分は、大きさが等しいこともあるが等しくないこともある。
【００２６】
ステップ２２０において、複数のコントローラ・チップ１２０の各々については、実体は、各々のコントローラ・チップ１２０とメモリ・アレイ１４０中の記憶装置との間のデータ・バスＡに関連する複数組のデータ・バス信号のうちの対応する組（たとえば、部分）を制御するように、各々のコントローラ・チップ１２０を割り当てる。例として、その部分は、大きさが等しく、また、Ｍ＝４であり、データ・バスＡは、６４ビットを含んでいると仮定する。この例の状況では、実体は、データ・バスＡのデータ・ビットＤ１〜Ｄ１６を制御するようにメモリ・コントローラ１２０−１を、データ・バスＡのデータ・ビットＤ１７〜Ｄ３２を制御するようにメモリ・コントローラ１２０−２を、…そして、データ・バスＡのデータ・ビットＤ４９〜Ｄ６４を制御するようにメモリ・コントローラ１２０Ｍを割り当てる。
【００２７】
ステップ２３０において、実体は、複数のチップ・コントローラ１２０の各々が、データ・バスＡの使用を介して第１記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にする。たとえば、メモリ・コントローラ１２０とメモリ・アレイ１４０の記憶装置との間の接続（たとえば、プリント回路基板トレース）を構成することに加えて、実体は、同時にメモリ・アレイ１４０からデータ・バスＡ上のデータの異なる部分の同時アクセスを可能にする目的で、複数のコントローラ・チップ１２０を同期させる同期回路１３０を提供する。先に議論したように、同期回路１３０は、メモリ・コントローラ１２０に対して外部に存在、または、一または複数のメモリ・コントローラ１２０内に存在することができる。全体として、メモリ・コントローラによってアクセスされるデータは、６４ビットの値であることが可能である。
【００２８】
図３は、ここでの実施形態にかかるメモリ・システム１００のより特定の詳細を示す図である。示されるように、メモリ・システム１００は、図１に関して上で議論したような資源を備えている。しかしながら、図３は、メモリ・アレイ１４０が、メモリ・モジュールのような記憶装置（たとえば、記憶装置２４０−１および記憶装置２４０−２）を備えていることをさらに示している。本例の状況では、同期回路１３０に関連する機能は、先に議論したような方法で記憶装置にアクセスするためにメモリ・コントローラ１２０中の動作を調整する目的で、同期回路３３０−１、同期回路３３０−２、…において実装されている。
【００２９】
１つの実施形態において、記憶装置２４０は、ＤＩＭＭ（デュアル・インライン・メモリ・モジュール）であり、各々が、一連のランダム・アクセス・メモリ集積回路を備えている。これらの集積回路は、典型的には、プリント回路基板に取り付けられ、パーソナル・コンピュータおよび他の種類の処理システムでの使用に対して設計されている。
【００３０】
物理的には、記憶装置２４０−１および記憶装置２４０−２上のピンは、記憶装置２４０の各々の長手方向軸２４２に沿って配置されている。換言すれば、記憶装置２４０−１は、物理的に、各々の長手方向軸２４２−１に沿って配置された多数の対応するピン（たとえば、データ・バス、アドレス・バスなど）を有した比較的狭い装置であることができる。同様に、記憶装置２４０−２もまた、各々の長手方向軸２４２−２に沿って配置された多くの対応するピン（たとえば、データ・バス、アドレス・バスなど）を有した比較的狭い装置であることが可能である。ここでの実施形態は、記憶装置２４０の長手方向軸２４２に対して実質的に平行なレイアウト軸１２２に沿ってメモリ・コントローラ１２０（たとえば、別個のコントローラ・チップ）をレイアウトすることを含んでいる。
【００３１】
図３に示されるように、レイアウト軸１２２に沿ってメモリ・コントローラ１２０をレイアウトすることは、メモリ・コントローラ１２０から記憶装置２４０の各々へのトレースの比較的単純なルーティングを可能にする。つまり、データ・バスＡに対するトレースのルーティングは簡単である。なぜならば、与えられたメモリ・コントローラ１２０上のノード（たとえば、ピン）と、各々の記憶装置２４０−１上の対応するノード（たとえば、ピン）とが、互いにかなり近接しているからである。メモリ・コントローラ１２０が従来の方法でされるような単一のコントローラ・チップとしてパッケージにされた場合には、トレースのルーティングは、そのような小さいプリント回路基板領域のトレースの密度のために、殆ど不可能ある。
【００３２】
１つの実施形態において、トレース・レイアウト技術者は、レイアウト軸１２２の第１位置上またはその近傍にメモリ・コントローラ１２０−１を配置する。トレース・レイアウト技術者は、レイアウト軸の第２位置上またはその近傍にメモリ・コントローラ１２０−２を配置する。レイアウト軸１２２の上のメモリ・コントローラ１２０の位置決めの後で、トレース・レイアウト技術者は、メモリ・コントローラ１２０−１と記憶装置２４０−１との間に第１組の導電性経路（たとえば、トレース群３５０−１）を実装する。さらに、トレース・レイアウト技術者は、メモリ・コントローラ１２０−２と記憶装置２４０−１との間に第２組の導電性経路（たとえば、トレース群３５０−２）を実装する。
【００３３】
上で議論したように、ここでの実施形態は、レイアウト軸１２２に沿って離隔された複数のコントローラ・チップ中の信号の制御を広げることを含んでいる。記憶装置２４０の長手方向軸２４２と平行なレイアウト軸１２２に沿ってメモリ・コントローラ１２０を位置決めすることは、メモリ・コントローラ１２０と記憶装置２４０との間のトレース群３５０および３５１を、ほぼ同じ長さまたは長さ範囲にすることを可能にする。たとえば、図３に示されるレイアウトの結果、メモリ・コントローラ１２０−１と記憶装置２４０−１との間のトレース群３５０−１（たとえば、データ・バスＡの部分）に関連する各々のトレース長は、メモリ・コントローラ１２０−２と記憶装置２４０−１との間のトレース群３５０−２（たとえば、データ・バスＡの部分）とほぼ同じ長さであることが可能である。同様に、メモリ・コントローラ１２０−１と記憶装置２４０−２との間のトレース群３５１−１（たとえば、データ・バスＢの部分）に関連する各々のトレース長は、メモリ・コントローラ１２０−２と記憶装置２４０−２との間のトレース群３５１−２（たとえば、データ・バスＢの部分）とほぼ同じ長さであることが可能である。このように、ここでの実施形態は、メモリ・コントローラ１２０と記憶装置２４０との間にトレースをレイアウトすることを含んでおり、その結果、対応するトレース群のトレース長は、実質的に同様または同一の長さである。
【００３４】
さらなる実施形態において、トレース・レイアウト技術者および／または回路基板設計者は、複数のチップ・コントローラの各々が、記憶装置２４０に格納されたデータの異なる各部分に同時にアクセスすることを可能にする一方で、メモリ・コントローラ１２０の単一のものが、各々の記憶装置２４０へのアドレスおよび制御信号を制御する。本例の状況では、メモリ・コントローラ１２０−１は、記憶装置２４０−１に関連する制御信号Ｘ（たとえば、アドレス・バス、ストローブ、イネーブル信号など）を駆動する。メモリ・コントローラ１２０の各々は、同時にデータ・バスＡにアクセスする。同期回路３３０−１（たとえば、マスタ・メモリ・コントローラ）は、データ・バスＡにアクセスするときに、他のメモリ・コントローラ１２０への通知を提供することができる。このように、ここでの１つの実施形態は、複数のコントローラ・チップの各々が、記憶装置２４０−１からのデータの各部分に同時にアクセスすることを可能にする一方で、メモリ・コントローラ１２０−１が、第１記憶装置に関連するアドレス・バスを制御することを含んでいる。
【００３５】
同様に、メモリ・コントローラ１２０−２は、記憶装置２４０−２に関連する信号Ｙ（たとえば、アドレス・バス、ストローブなど）を制御するように構成されることができる。同期回路３３０−１（たとえば、マスタ・メモリ・コントローラ）は、記憶装置２４０−２への信号Ｙをいつ、そして潜在的にはどのように制御するかを、メモリ・コントローラ１２０−２への通知を提供することができる。このように、ここでの１つの実施形態は、複数のコントローラ・チップの各々が、記憶装置２４０−２からのデータの各部分に同時にアクセスすることを可能にする同期回路を備えており、その一方で、メモリ・コントローラ１２０−２が、記憶装置２４０−２に関連するアドレス・バスを制御する。
【００３６】
図４は、ここでの実施形態にかかるメモリ・システム４００を示す図例である。示されるように、メモリ・システム４００は、複数のメモリ・コントローラ・チップ４２０（たとえば、メモリ・コントローラ・チップ４２０−１、メモリ・コントローラ・チップ４２０−２、メモリ・コントローラ・チップ４２０−３、およびメモリ・コントローラ・チップ４２０−４）と、対応するメモリ・モジュール群４４１、４４２、４４３、および４４４とを備えている。同期回路４３０（たとえば、同期回路４３０−１、同期回路４３０−２、同期回路４３０−３、および同期回路４３０−４）は、メモリ・コントローラ４２０中の動作を調整する。各メモリ・モジュールは、ＤＩＭＭ（デュアル・インライン・メモリ・モジュール）または格納されたデータにアクセスするためのマルチ・ビット・アドレスおよびデータ・バスを有した他の記憶装置であることが可能である。メモリ・モジュール群４４１は、メモリ・モジュール４４１−１、メモリ・モジュール４４１−２、メモリ・モジュール４４１−３、およびメモリ・モジュール４４１−４を備えている。メモリ・モジュール群４４２は、メモリ・モジュール４４２−１、メモリ・モジュール４４２−２、メモリ・モジュール４４２−３、およびメモリ・モジュール４４２−４を備えている。メモリ・モジュール群４４３は、メモリ・モジュール４４３−１、メモリ・モジュール４４３−２、メモリ・モジュール４４３−３、およびメモリ・モジュール４４３−４を備えている。メモリ・モジュール群４４４は、メモリ・モジュール４４４−１、メモリ・モジュール４４４−２、メモリ・モジュール４４４−３、およびメモリ・モジュール４４４−４を備えている。示されるように、チャネルＡは、データを格納するメモリ・モジュール群４４１および４４４を備えている。チャネルＢは、データを格納するメモリ・モジュール群４４２および４４３を備えている。
【００３７】
メモリ・システム４００は、データ・バスＥ、データ・バスＦ、データ・バスＧ、データ・バスＨ、データ・バスＪ、データ・バスＫ、データ・バスＬ、およびデータ・バスＭを含む複数のデータ・バスを備えている。データ・バスＥは、データ・バス部分Ｅ１、データ・バス部分Ｅ２、データ・バス部分Ｅ３、およびデータ・バス部分Ｅ４を備えることができる。データ・バスＦは、データ・バス部分Ｆ１、データ・バス部分Ｆ２、データ・バス部分Ｆ３、データ・バス部分Ｆ４を備えている。データ・バスＧは、データ・バス部分Ｇ１、データ・バス部分Ｇ２、データ・バス部分Ｇ３、データ・バス部分Ｇ４を備えている。データ・バスＨは、データ・バス部分Ｈ１、データ・バス部分Ｈ２、データ・バス部分Ｈ３、データ・バス部分Ｈ４を備えている。データ・バスＪは、データ・バス部分Ｊ１、データ・バス部分Ｊ２、データ・バス部分Ｊ３、データ・バス部分Ｊ４を備えている。データ・バスＫは、データ・バス部分Ｋ１、データ・バス部分Ｋ２、データ・バス部分Ｋ３、データ・バス部分Ｋ４を備えている。データ・バスＬは、データ・バス部分Ｌ１、データ・バス部分Ｌ２、データ・バス部分Ｌ３、データ・バス部分Ｌ４を備えている。データ・バスＭは、データ・バス部分Ｍ１、データ・バス部分Ｍ２、データ・バス部分Ｍ３、データ・バス部分Ｍ４を備えている。各データ・バス部分は、各々のメモリ・モジュール中のデータにアクセスするための一または複数のデータ信号を含むことができる。
【００３８】
さらに、メモリ・システム４００は、制御信号群４５１、制御信号群４５２、制御信号群４５３、制御信号群４５４、制御信号群４５５、制御信号群４５６、制御信号群４５７、および、制御信号群４５８のような制御信号群を含んでいる。各制御信号群は、データにアクセスする各々のメモリ・モジュールを制御することをサポートする適切な信号を含むことができる。たとえば、各制御信号群は、各々のメモリ・モジュールを制御する、リセット信号、クロック、データ・ストローブ、チップ・セレクト、コマンド入力、イネーブルなどの信号のうちの一または複数を含むことができる。
【００３９】
１つの実施形態において、メモリ・システム４００は、４個のメモリ・コントローラ４２０のクラスタと、１６個の標準の登録されたメモリ・モジュールとを備えている。メモリ・システム４００は、より大きい記憶容量を提供するために複製されることができることを注記しておく。たとえば、さらに大きいメモリ・システムは、図４に示されるような４個のメモリ・システムを備えることができる。
【００４０】
メモリ・コントローラ４２０のクラスタは、２個の別個のデータ・アクセス・インタフェースの組（１個はチャネルＡおよびチャネルＢ用）を実装している。各チャネルは、６４データ・ビットと、メモリ・コントローラ４２０のクラスタに亘って分割された８個のチェック・ビットとを有することができる。したがって、コンパニオン・データ・ストローブ信号は、同様に、メモリ・コントローラ４２０のクラスタに亘って分散されることができる。１つの実施形態において、アクセス・インタフェース用のプロトコルは、ＪＥＤＥＣ標準のＪＥＳＤ７９−２Ａによって定義されている。
【００４１】
タイミングおよび同期の必要条件を満たすために、データおよびチェック・ビットは、ニブルのコンパニオン・データ・ストローブ信号と共に、４個のメモリ・コントローラ４２０の群におけるクラスタに亘って分割されることができることを注記しておく。クラスタに亘ってチェック・ビットを分割することは、４による綺麗な割り算である必要がない。たとえば、或るメモリ・コントローラ４２０は、与えられたチャネル用の他のものよりも多いニブル／ストローブの組をサポートすることができる。さらに、メモリ・システム４００の実装は、１チャネル当たりの最大の記憶容量を達成するために４：１のデータ＝ストローブ比を固守する記憶装置を備えたモジュールをサポートするように特に設計されることができることを注記しておく。
【００４２】
アドレスおよび制御信号は、異なる方法で扱われることができる。たとえば、各メモリ・コントローラ４２０は、２個の個別のアドレスおよび制御インタフェースを実装することができる。たとえば、メモリ・コントローラ４２０−１は、各々の第１インタフェースに関連する制御信号群４５１と、各々の第２インタフェースに関連する制御信号群４５５とを含むことができる。示されるように、各インタフェースは、１６個のメモリ・モジュールのうちの２個に接続されることができる。そのようなインタフェースの一方は、チャネルＡ用であり、他方は、チャネルＢ用である。
【００４３】
単一のメモリ・アクセス（読取り、書込みなど）は、１６個のメモリ・モジュールのうちの４個にアクセスすることによって、チャネルＡまたはチャネルＢのいずれかになされることができる。たとえば、そのような実施形態において、ホスト・システムは、メモリ・コントローラ４２０のクラスタに、コマンドおよび対応するコンパニオン・データ（書込み用）を発行する。同期方法で、同期回路４３０の使用を介して、メモリ・コントローラ４２０の適切な１つが、対象のチャネル上のメモリ・モジュールにホストのコマンドを発行する。したがって、メモリ・コントローラ４２０によってアドレスされた４個のモジュールが応答する。メモリ・コントローラ４２０は、適切なメモリ・モジュールに対するデータの読取りまたは書込みの負担を共有する。アクセスが読取りである場合には、メモリ・コントローラ４２０は、それら自身の中で調整し、データのアクセスされた部分を、メモリからデータを要求するホスト・システムに転送し戻す。
【００４４】
メモリ・コントローラ４２０からホストへのデータの転送は、パラレルに達成されることができる。たとえば、与えられたデータ・アクセスについては、メモリ・コントローラ４２０の各々は、与えられたアドレスに対する対応したアクセスされたメモリ・モジュールからの２バイトのデータ（たとえば、１６ビット）を取り出すことができる。同期回路４３０を介して、メモリ・コントローラ４２０は、ホストへの与えられたアドレスに対する６４ビットの取り出された情報のパラレル転送をサポートすることができる。
【００４５】
［同期］
先に議論したように、同期回路４３０（メモリ・コントローラ４２０または全体に亘って分散された複数のメモリ・コントローラ４２０のいずれかの単一のもの）は、メモリ・コントローラ４２０からメモリ・モジュールへのデータ転送を調整する。たとえば、メモリ・コントローラ４２０−１（同期回路４３０−１を介して）のようなマスタ・メモリ・コントローラ中の同期回路４３０−１は、メモリ・モジュールに新しいコマンド・サイクルの開始を示すために、他の３個のメモリ・コントローラ（たとえば、メモリ・コントローラ４２０−２、メモリ・コントローラ４２０−３、およびメモリ・コントローラ４２０−４）にメッセージを送信する。３個の受信メモリ・コントローラ４２０は、エラーの発生を検出し、対応するメッセージをマスタ・メモリ・コントローラ４２０−１に送信し戻してエラーの発生を示すことができる。
【００４６】
１つの実施形態において、同期回路４３０−１は、１００メガヘルツで動作する２．５ボルト（たとえば、低電圧相補性金属酸化膜半導体）のインタフェースを備えている。
マスタ・メモリ・コントローラ４２０−１は、６個の出力信号および６個の入力信号を含むことができる。各スレーブ・メモリ・コントローラ（たとえば、メモリ・コントローラ４２０−２、４２０−３、および４２０−４）は、２個の出力信号および２個の入力信号を含むことができる。このように、ここでの１つの実施形態は、メモリ・コントローラ４２０−１とメモリ・コントローラ４２０−２、４２０−３、および４２０−４の各々との間に４個のトレース（たとえば、メモリ・コントローラ４２０−１からのデータの流れをサポートする２個のトレースまたは信号線、およびメモリ・コントローラ４２０−１へのデータの流れをサポートする２個のトレースまたは信号線）の接続を備えている。
【００４７】
１つの構成によれば、メモリ・コントローラ４２０の各々は、各々のデータ・アクセス（たとえば、ダイナミック・ランダム・アクセス・メモリ・アクセス）を行なうときに、４個のメモリ・モジュールに同時にアクセスすることができる。４個のメモリ・モジュールに同時にアクセスするときには、４個の各々のアドレス・バスを備えた４個の制御インタフェースが横並びに動作する。たとえば、４個のメモリ・モジュール（たとえば、４個のＤＩＭＭ）へのアクセスの同期を達成するために、３個のスレーブ・メモリ・コントローラ（たとえば、メモリ・コントローラ４２０−２、４２０−３、および４２０−４）が、同期回路４３０に関連するＳＹＮＣ＿ＩＮ信号を介したチャネルに対してコマンドを実行する準備ができるまで、マスタ・メモリ・コントローラ４２０−１が待機する。換言すれば、マスタ・メモリ・コントローラ４２０−１は、メモリ・コントローラ４２０−２、４２０−３、および４２０−４から受信した前述の信号を監視する。メモリ・コントローラ・スレーブの準備ができている場合には、マスタ・メモリ・コントローラ４２０−１は、スレーブ・メモリ・コントローラに信号を送り、同期回路４３０に関連するＳＹＮＣ＿ＯＵＴ信号を介したアクセス動作の実行を開始させる。換言すれば、メモリ・コントローラ４２０−１は、同時動作をサポートするために、前述のトレースを通じてメモリ・コントローラ４２０−２、４２０−３、および４２０−４に通信する。マスタ・メモリ・コントローラ４２０−１それ自体は、スレーブ・メモリ・コントローラに上記の信号伝達を提供した後の一定時間（たとえば、２サイクル）の待機後に、開始することができる。
【００４８】
上記の信号伝達は複写されることができ、その結果、チャネルＡおよびチャネルＢの各々が同様に動作する。たとえば、上で議論したように、同期回路４３０は、チャネル間の任意のクロック位相シフトを説明するために、ＤＲＡＭクロックの範囲内で動作するチャネルＡおよびＢの各々に対する同期信号の別個の組を含むことができる。
【００４９】
［物理的特性］
１つの構成によれば、メモリ・コントローラ４２０は、ＦＰＧＡ（フィールド・プログラマブル・ゲート・アレイ）装置中に実装される。メモリ・システム４００で使用されるそのような装置の選択は、次の要望に基づくことができる：（１）４個のメモリ・コントローラ４２０のリニア・アレイが標準のメモリ・モジュールの長さに近似するように、メモリ・コントローラ４２０の各々のパッケージ・サイズが十分に小さい、（２）各メモリ・コントローラ４２０のＩ／Ｏ容量が、２個のメモリ・データ・バスの各々のおよそ４分の１をサポートする、（３）各メモリ・コントローラに関連するＩ／Ｏ容量が、各々のメモリ・モジュールへの２個のアドレスおよび制御インタフェースを完全にサポートする、（４）各スレーブ・メモリ・コントローラが、同期目的で、それ自体とマスタ・メモリ・コントローラ４２０−１との間のＩ／Ｏ容量をサポートする、（５）各メモリ・コントローラが、ホスト装置へのシステム・インタフェースをサポートするＩ／Ｏ容量を備えている、（６）メモリ・システム４００が、この開示で議論したような他の機能的な態様をサポートするのに十分な論理的容量および特徴を備えている。
【００５０】
小さいフォーム・ファクタ（たとえば、小さいパッケージ・サイズ）を有したメモリ・コントローラ４２０を使用することは、各々のメモリ・コントローラとメモリ・モジュールとの間の直接接続を可能にする。したがって、データ・バスの各々のトレース長は、最小の長さに維持されることができる。加えて、より小さいフォーム・ファクタを有したメモリ・コントローラ４２０を使用することは、各々のプリント回路基板において要求される層の数を低減することができる。
【００５１】
１つの構成によれば、メモリ・チャネル信号をルーティングすること（たとえば、データ・バスＥ，Ｆ，Ｇ，…，Ｋ，Ｌ，Ｍを実装したトレース）は、所謂「ストリップライン技術」を使用してなされることができる。そのような構成では、信号は、各々の回路基板の２つの平面層の間に挟まれている）。
【００５２】
適用可能な場合には、ここで記述された或る技術（トレース・レイアウト、プリント回路基板設計などのような）は、この明細書で議論した実施形態を実施するためのプロセッサおよび対応するソフトウェア・コードを備えた各々のコンピュータ・システムのアプリケーションを介して実施されることができることを注記しておく。そのような実施形態の一例（たとえば、ソフトウェア・コードを実行するコンピュータ・システム）は、メモリ・システムとコンピュータ・システムのプロセッサとを結合する相互接続を含むことができる。メモリに格納されたコードの実行は、ここで記述されるような一または複数の技術をサポートすることができる。
【００５３】
図５および図６は、組み合わせて、ここでの実施形態にかかる、回路基板コンポーネントをレイアウトする技術と、対応するプリント回路基板トレースの使用とを示すフローチャート５００（たとえば、フローチャート５００−１およびフローチャート５００−２）を形成している。
【００５４】
図５のステップ５１０において、実体（たとえば、回路基板レイアウト・ツール、レイアウト技術者、プリント回路基板製造設備、メモリ・システム設計者など）は、メモリ・アレイ１４０中の第１記憶装置（第１ＤＩＭＭのような）にアクセスする第１データ・バス（たとえば、データ・バスＡ）と、メモリ・アレイ１４０中の第２記憶装置（第２ＤＩＭＭのような）にアクセスする第２データ・バス（たとえば、データ・バスＢ）を備えた複数のデータ・バスを割り付けるか、または、維持する。
【００５５】
ステップ５１５において、実体は、第１データ・バス（たとえば、データ・バスＡ）を複数組（たとえば、群）のデータ・バス信号にパーズする。たとえば、第１組の信号は、データ・バスＡのデータ・ビット１〜１６を含むことができ、第２組の信号は、データ・バスＡのデータ・ビット１７〜３２を含むことができ、第３組の信号は、データ・バスＡのデータ・ビット３３〜４８を含むことができ、そして、第４組の信号は、データ・バスＡのデータ・ビット４９〜６４を含むことができる。
【００５６】
ステップ５２０において、複数のコントローラ１２０の各々に対して、実体は、各コントローラ１２０と第１記憶装置（たとえば、第１ＤＩＭＭ）との間の第１データ・バス（たとえば、データ・バスＡ）に関連する複数組のデータ・バス信号のうちの対応する組を制御するように、各コントローラ１２０を割り当てる。
【００５７】
ステップ５２５において、実体は、第２データ・バス（たとえば、データ・バスＢ）を複数組（たとえば、群）のデータ・バス信号にパーズする。たとえば、第１組の信号は、データ・バスＢのデータ・ビット１〜１６を含むことができ、第２組の信号は、データ・バスＢのデータ・ビット１７〜３２を含むことができ、第３組の信号は、データ・バスＢのデータ・ビット３３〜４８を含むことができ、そして、第４組の信号は、データ・バスＢのデータ・ビット４９−６４を含むことができる。
【００５８】
ステップ５３０において、複数のコントローラ１２０の各々に対して、実体は、各コントローラ１２０と第２記憶装置（たとえば、第２ＤＩＭＭ）との間の第２データ・バス（たとえば、データ・バスＢ）に関連する複数組のデータ・バス信号のうちの対応する組を制御するように、各コントローラ１２０を割り当てる。
【００５９】
ステップ５３５において、実体は、同時に第１記憶装置からのデータの異なる部分の同時アクセスを可能にする目的で、複数のメモリ・コントローラ１２０を同期させる、複数のメモリ・コントローラ１２０に関連する同期回路１３０を設ける。同期回路１３０は、メモリ・コントローラ１２０に関連する動作を調整することもでき、その結果、メモリ・コントローラ１２０は、同時に第２記憶装置からのデータの異なる部分に同時にアクセスすることができる。
【００６０】
ステップ５４０において、実体は、第１記憶装置に関連するアドレス・バス（たとえば、制御信号Ｘ）を制御するように、複数のメモリ・コントローラ１２０のうちのメモリ・コントローラ１２０−１を割り当てる。
【００６１】
ステップ５４５において、実体は、第２記憶装置に関連するアドレス・バス（たとえば、制御信号Ｙ）を制御するように、複数のメモリ・コントローラ１２０のうちのメモリ・コントローラ１２０−２を割り当てる。
【００６２】
ステップ５５０において、実体は、第１記憶装置からホスト・システム１１０のような最終目的地に取り出されたデータの異なる各部分の同時パラレル転送をサポートするように、メモリ・コントローラ１２０を構成する。
【００６３】
議論したように、ここでの技術は、対応するピンが各々の装置の長さに沿って連続するように物理的に分散されたＤＩＭＭ（デュアル・インライン・メモリ・モジュール）のメモリ部品を利用するデータ処理システムのような用途での使用に良く適している。しかしながら、ここでの構成は、そのような用途での使用に限定されず、したがって、ここでの構成およびそれから逸れたものも同様に他の用途に良く適していることを注記しておく。
【００６４】
この発明がその好ましい実施形態への参照と共に特に示され且つ記述されているが、形態および詳細の様々な変更が、添付の請求の範囲によって定義されるような本発明の精神および範囲から逸脱せずにそこになされることが可能であることは当業者によって理解されるであろう。そのような変更は、この発明の範囲によって包含されるように意図されている。そのため、本発明の実施形態の先の記述は、限定するようには意図されてはいない。むしろ、本発明の実施形態への如何なる限定も次の請求の範囲に示されている。
【図面の簡単な説明】
【００６５】
【図１】ここでの実施形態にかかるメモリ・システムのブロック図である。
【図２】ここでの実施形態にかかる複数のメモリ・コントローラ・チップに、共通データ・バスの各部分の制御を割り付ける技術を示すフローチャートである。
【図３】ここでの実施形態にかかる複数の記憶装置を備えたメモリ・システムのブロック図である。
【図４】ここでの実施形態にかかる格納データにアクセスするメモリ・システムのブロック図である。
【図５】図６と組み合わせて、ここでの実施形態にかかる複数のメモリ・コントローラ・チップを備えたメモリ・システムを製造する技術を示すフローチャートである。
【図６】図５と組み合わせて、ここでの実施形態にかかる複数のメモリ・コントローラ・チップを備えたメモリ・システムを製造する技術を示すフローチャートである。
【符号の説明】
【００６６】
１００  メモリ・システム
１１０  ホスト・システム
１２０  メモリ・コントローラ・チップ（チップ・コントローラ）
１２２  レイアウト軸
１３０  同期回路
１４０  メモリ・アレイ
２４０  記憶装置
２４２  長手方向軸
３３０  同期回路
３５０，３５１  トレース群
４００  メモリ・システム
４２０  メモリ・コントローラ・チップ
４３０  同期回路
４４１，４４２，４４３，４４４  メモリ・モジュール群
４５１〜４５８  制御信号群
【図１】
2008171432.tif 000003
【図２】
2008171432.tif 000004
【図３】
2008171432.tif 000005
【図４】
2008171432.tif 000006
【図５】
2008171432.tif 000007
【図６】
2008171432.tif 000008
【外国語明細書】
2008171432.tif 000009
2008171432.tif 000010
2008171432.tif 000011
2008171432.tif 000012
2008171432.tif 000013
2008171432.tif 000014
2008171432.tif 000015
2008171432.tif 000016
2008171432.tif 000017
2008171432.tif 000018
2008171432.tif 000019
2008171432.tif 000020
2008171432.tif 000021
2008171432.tif 000022
2008171432.tif 000023
2008171432.tif 000024
2008171432.tif 000025
2008171432.tif 000026
2008171432.tif 000027
2008171432.tif 000028
2008171432.tif 000029
2008171432.tif 000030
2008171432.tif 000031
2008171432.tif 000032
2008171432.tif 000033
2008171432.tif 000034
2008171432.tif 000035
2008171432.tif 000036
2008171432.tif 000037
2008171432.tif 000038
2008171432.tif 000039