JP4857291B2 - データアクセス方法およびマルチチップコントローラを備えるメモリシステム - Google Patents

データアクセス方法およびマルチチップコントローラを備えるメモリシステム Download PDF

Info

Publication number
JP4857291B2
JP4857291B2 JP2008005305A JP2008005305A JP4857291B2 JP 4857291 B2 JP4857291 B2 JP 4857291B2 JP 2008005305 A JP2008005305 A JP 2008005305A JP 2008005305 A JP2008005305 A JP 2008005305A JP 4857291 B2 JP4857291 B2 JP 4857291B2
Authority
JP
Japan
Prior art keywords
storage device
data
memory
data bus
controller chip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2008005305A
Other languages
English (en)
Other versions
JP2008171432A (ja
Inventor
ジー.サージェント マシュー
エイ.カーン マイケル
ジェイ.スティフター ジュニア フランシス
ピー.コランジェロ ジェイソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Arris Technology Inc
Original Assignee
Broadbus Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Broadbus Technologies Inc filed Critical Broadbus Technologies Inc
Publication of JP2008171432A publication Critical patent/JP2008171432A/ja
Application granted granted Critical
Publication of JP4857291B2 publication Critical patent/JP4857291B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • AHUMAN NECESSITIES
    • A62LIFE-SAVING; FIRE-FIGHTING
    • A62BDEVICES, APPARATUS OR METHODS FOR LIFE-SAVING
    • A62B1/00Devices for lowering persons from buildings or the like
    • A62B1/06Devices for lowering persons from buildings or the like by making use of rope-lowering devices
    • A62B1/18Other single parts for rope lowering-devices, e.g. take-up rollers for ropes, devices for shooting ropes
    • AHUMAN NECESSITIES
    • A62LIFE-SAVING; FIRE-FIGHTING
    • A62BDEVICES, APPARATUS OR METHODS FOR LIFE-SAVING
    • A62B1/00Devices for lowering persons from buildings or the like
    • A62B1/06Devices for lowering persons from buildings or the like by making use of rope-lowering devices
    • A62B1/16Life-saving ropes or belts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Memory System (AREA)

Description

本発明は、データ・アクセスおよびマルチチップ・コントローラに関する。
コンピューティング・プラットフォームにおいて使用される従来のメモリ・アーキテクチャは、メモリ・コントローラと、該メモリ・コントローラによってアクセスされるデータを格納する一または複数のメモリ・モジュールとの2個の要素の使用に依存している。多くの従来の用途で、メモリ・モジュールは、典型的には、標準化団体であるJEDEC(電子素子技術連合評議会)によって定義された、電気的なインタフェース、プロトコル、および機械的な接続部および形態を有した業界基準メモリ・モジュールである。
メモリ性能が時間と共に改善してきたように、メモリ・コントローラと、対応するモジュールとの間の対応するインタフェース速度もまた、増大してきた。インタフェースの対応する信号伝達電圧は、時間と共に低減された。このように、各性能の向上は、プリント回路基板の設計(たとえば、各コンポーネントのトレース接続ピンのレイアウト)をより困難にする。つまり、トレースのレイアウトは、各メモリ速度の改善に対して、より困難になる傾向がある。
JEDEC標準化委員会は、受入可能な最大の物理的なトレース長の短縮と、同一のアクセス・インタフェースに接続された、共生するメモリ・モジュールの数の低減を(メモリ標準に)組み込むことによって、この増大する困難を認めた。これらの変更は両方とも、各々のトレースに対する全体的な信号ローディングを低減し、その結果、高いアクセス速度が可能である。
上で議論したように、従来のメモリ・アーキテクチャに関連する不備がある。たとえば、上記の動向(たとえば、より高いインタフェース速度およびより低い信号伝達電圧)は、不可能でなければ、従来のメモリ・コントローラの手法を使用して大規模なシステム・メモリの用途を実施することを困難且つ高価にする。すなわち、単一の大きいメモリ・コントローラ・チップが多数のメモリ・モジュールに接続するために使用される場合には、多数の独立したメモリ・インタフェース(たとえば、データ・バス、アドレス線、制御線など)は、典型的には、記憶装置に格納された情報にアクセスすることを必要とする。通常の状況下では、各々のインタフェースは、コントローラとメモリ・モジュールとの間のトレースに対するローディングの問題のために、1個だけ、または恐らく2個までのメモリ・モジュールからの情報にアクセスすることができる。
従来のアーキテクチャによれば、単一のコントローラ・チップから8個から16個までの別個のメモリ・モジュール・チップにルーティングすることは、メモリ・コントローラ・チップと記憶装置との間に、複雑に絡み合った非常に長いトレース長(各々のプリント回路基板上の多数の層の)を必要とすることがある。これは、多くの場合には、長く絡み合うプリント回路基板のトレース長の実装が、対応する信号品質を下げることがあり、メモリ・コントローラによるアクセス失敗の可能性を増大させることがあるので、問題である。これは、基板のコストに、たとえば、開発費、製品コストを追加し、歩留りを低下させる。上述したように、これらは、トレースに関連する受入可能なロード値を定義する厳密な標準である。
ここで議論される技術は、先行技術において公知の付加的技術と同様に、上で議論したもののような従来の用途を逸脱している。たとえば、ここでの或る特定の実施形態は、前述の技術に関連する不備、および/または上に議論されない先行技術における他の不備の克服を意図している。
一般に、ここでの実施形態は、多重配位メモリ・コントローラ・チップ(たとえば、独立した集積回路)に亘って一または複数のメモリ・インタフェース(たとえば、一または複数のデータ・バス、アドレス・バス、制御信号など)を分割することによって、プリント回路基板上にトレースを配置する負担を低減する。たとえば、記憶装置への単一のデータ・バスは、多数のデータ・バス部分(たとえば、信号群)に分割することができ、その各々は、異なる各々のコントローラ・チップによって管理される。したがって、各々の記憶装置へのメモリ・アクセス中に、複数のコントローラ・チップの各々は、アクセスが読取りかまたは書込みか否かに依存してデータを取り出すかまたは格納するようにデータ・バスの異なる対応する部分を制御することができる。
1つの実施形態において、各々のデータ・アクセスを行なうために、(メモリ・コントローラ・チップに対して内部および/または外部の)シンクロナイザ回路は、複数のメモリ・コントローラ・チップを同期させることができ、その結果、一または複数のメモリ・コントローラ・チップのいずれかが、記憶装置へのアドレス・バスおよび/または制御信号を駆動する。適切なときに記憶装置にアドレスを設定した後で、メモリ・コントローラ・チップは、同時に、アドレスに基づいてデータを読み取るかまたは記憶装置に書込みデータを提供する(たとえば、ラッチ)。シンクロナイザ回路は、そのような動作を行なうために複数のチップ・コントローラ中のタイミングを調整する。
データ・バスを分割し、単一のデータ・バスの各部分を制御するようにメモリ・コントローラ・チップの各々を割り付けることに加えて、コントローラの各々は、異なる記憶装置への各々の複数のデータ・バスの部分を制御するように構成されることができる。換言すれば、第1記憶装置への第1データ・バスは、データ・バス部分に分割されることができ、その各々は、複数のコントローラ・チップの各々1つによって制御される。対応する第2記憶装置への第2データ・バスは、データ・バス部分の別の組に分割されることができ、その各々は、複数のコントローラ・チップの各々1つによって制御される。そのような実施形態において、メモリ・コントローラ・チップの各々は、各アドレス・バスおよび/または各記憶装置の対応する制御信号を駆動するように構成されることができる。このように、動作中に、メモリ・コントローラのうちの1つは、複数のメモリ・コントローラ・チップの各々が、アクセスされる記憶装置に格納されたデータの異なる部分にアクセスする間、アクセスされる各々の記憶装置にアドレスを駆動することができる。
上記の実施形態の促進では、1つの実施形態は、記憶装置の軸に対して平行な各々のレイアウト軸に沿った線形の方法で、メモリ・コントローラ・チップ(たとえば、メモリ・コントローラ装置)を物理的に配置することを含んでいる。そのような実施形態は、信号の物理的な位置(割り当てられたビット値などではない)に基づいた複数のコントローラに亘って平等に、分散された信号を分割することを含むことができる。換言すれば、メモリ・コントローラのリニア・アレイに亘るデータ・バスの部分の物理的分散は、対応するメモリ・モジュール(または、場合によっては、複数のメモリ・モジュール)の信号/ピンの割り当てに基づくことができる。そのように実施されるときには、複数のメモリ・コントローラ・チップの各々と記憶装置との間の「直線ショット」(たとえば、実質的に直角のトレース経路)の生成は、全体的なトレース長と、メモリ・コントローラ・チップと一または複数の記憶装置との間の適切な接続性を提供する法外な数のプリント回路基板層の必要性とを低減する。
ここでの実施形態は、従来の用途と対照をなしている。たとえば、ここでの技術は、1組のメモリ・コントローラ・チップと、対応する記憶装置との間の単純なルーティング・チャネルを提供する。これは、より少ない回路基板層が使用されることを可能にし、そして、より多い直接相互連結パスを可能にし、それらの両方は、アクセス・インタフェースの信号品質を改善し、製造費を低減する。さらに、従来の技術と異なり、ここでの実施形態は、メモリ・アレイに付加的なモジュールを含ませることを可能にし、それによって、標準のメモリ・システム・アーキテクチャが通常達成することができるものに対して、本システムの記憶容量を増大させる。(ここで議論されるようなマルチチップ・コントローラ技術の実装を介する)より単純なルーティングは、他の機能に対してプリント回路基板層資源を解放する。
上で議論したように、ここでの技術は、メモリ・システムでの使用に良く適している。しかしながら、ここでの実施形態が、そのような用途での使用に限定されるものではなく、ここで議論した技術が、他の用途にも同様に良く適していることを注記しておく。ここで議論した様々な特徴、技術、構成などの各々が、独立してまたは組み合わせて実行されることができることを注記しておく。
この概要が、すべての実施形態および/または本開示またはクレームされた発明の漸増的に新規の態様を指定するとは限らないことを注記しておく。これに代えて、この概要は、様々な実施形態の予備的な議論および従来の技術に対する新規性の対応する点を単に提供している。本発明の付加的な詳細および/または可能な展望(置換)については、読み手は、本開示の詳細な記述の項および対応する図に導かれる。
本願の先のおよび他の目的、特徴、および利点は、添付の図面に示されるような次の、好しい実施形態のより特定の記述から明白になり、そこでは、同様の参照符号は、様々な図全体に亘って同一部分を参照している。図面は、必ずしも実測するためのものではなく、代りに、実施形態の例、原理、および概念を例示するように重点が置かれている。
1つの実施形態によれば、記憶装置へのデータ・バスは、多数のデータ・バス部分に分割することができ、その各々は、1組の複数の同期コントローラ・チップのうちの異なる各々のコントローラ・チップによって管理される。記憶装置へのメモリ・アクセス中に、複数のコントローラ・チップの各々は、データ・バスの異なる対応する部分を制御し、その結果、アクセスが読取りまたは書込みであるか否かに依存して、記憶装置からデータを取り出すか、または、記憶装置にデータを格納する。データ・アクセスを調整するために、(メモリ・コントローラ・チップに対して内部および/または外部の)シンクロナイザ回路は、複数のメモリ・コントローラ・チップを同期させ、その結果、メモリ・コントローラ・チップのうちの1つが、記憶装置へのアドレス・バスおよび/または制御信号を駆動する。記憶装置にアドレスを設定した後で、複数のメモリ・コントローラ・チップの各々は、記憶装置の各部分からの読取りデータをラッチするか、または、記憶装置の各部分に書込みデータを提供する。
図1は、ここでの実施形態にかかるメモリ・システム100の図である。示されるように、メモリ・システム100は、ホスト・システム110(たとえば、データ処理システム)と、メモリ・コントローラ120(たとえば、メモリ・コントローラ120−1,メモリ・コントローラ120−2,…,メモリ・コントローラ120M)と、同期回路130と、メモリ・アレイ140(たとえば、ダイナミック/ランダム・アクセス・メモリ・モジュール)とを備えている。ホスト・システム110は、信号104(たとえば、信号104−1,信号104−2,…,信号104M)を介してメモリ・コントローラ120に入力コマンドおよび/またはデータを供給することができる。ホスト・システム110は、信号106(たとえば、信号106−1,信号106−2,…,信号106M)を介してメモリ・コントローラからデータを受信することができる。
一般に、動作中に、ホスト・システム110は、メモリ・コントローラ120の組にコマンドを発行し、データをメモリ・コントローラ120の組と交換する。たとえば、信号104を介して、ホスト・システム110は、メモリ・アレイ140からデータを取り出す位置(たとえば、データのビット、語、および/または部分)を指定することができる。要求を発行するのに応じて、複数のメモリ・コントローラ120によるアクセスの後で、メモリ・システム100は、信号106を介してメモリ・コントローラ120からデータを受信する。
メモリ・コントローラ120の各々は、データ・バスAおよびデータ・バスBのようなメモリ・アレイ140への複数の各々のインタフェース(たとえば、データ・バスおよび/または対応する制御線)を備えることができる。この明細書において後で議論するように、データ・バスAは、メモリ・アレイ140における第1記憶装置へのアクセスを提供することができる一方で、データ・バスBは、メモリ・アレイ140における第2記憶装置へのアクセスを提供することができる。データは、同時にまたは異なる時間に各々のデータ・バスの使用を介してアクセスされることができる。メモリ・コントローラ120とメモリ・アレイ140との間のデータ・バスAおよびデータ・バスBのような各々の相互接続は、対応する電子装置(たとえば、メモリ・コントローラ120およびメモリ・アレイ140)間の一または複数のプリント回路基板上のトレース(または他の媒体)を介して実装されることができる。
上述したように、各メモリ・コントローラ120は、メモリ・アレイ140からデータにアクセスする目的で、データ・バスAおよびデータ・バスBの各部分を制御する。メモリ・システム100の同期回路130は、メモリ・コントローラ120の動作を調整し、その結果、メモリ・コントローラ120は、メモリ・アレイ140からのデータに同時にアクセスすることができる。換言すれば、同期回路130によって提供される同期を介して、一または複数のメモリ・コントローラ120は、メモリ・アレイ140への適切な制御線を設定する一方で、複数のメモリ・コントローラ120の各々は、データ・バスの各部分の使用を介してデータの部分にアクセスする。
同期回路130は、メモリ・コントローラ120への外部資源として図示されたが、これに代えて、メモリ・コントローラ120のうちの1つに存在することができる(たとえば、メモリ・コントローラ120−1のようなマスタ・メモリ・コントローラ)。このように、単一のメモリ・コントローラ120は、メモリ・アレイ140へのアクセスを制御するように、すべての他のメモリ・コントローラ120の動作を制御することができる。
他の実施形態において、同期回路130に関連する機能は、メモリ・コントローラ120の各々の全体に亘って分散されることができることを注記しておく。そのような実施形態において、メモリ・コントローラ120は、各々のデータ・バスを介したデータ・アクセスを調整するためにそれら自身の中で仲裁する。
上で簡潔に議論したように、メモリ・コントローラ120は、ホスト・システム110からコマンドを受信し、メモリ動作およびデータの交換を開始する。メモリ・アクセス動作中に、同期回路130は、いつデータにおけるクロックのような動作を行なうか、または、いつメモリ・アレイ140にデータを書き込むための各々の制御信号を開始するかを、メモリ・コントローラ120に示すためのタイミング信号を提供する。複数のメモリ・コントローラ120中の動作の適切なタイミングは、メモリ・コントローラ120中の干渉を防止し、メモリ・アレイ140からのデータの効率的なアクセスを促進する。メモリ・アレイは、JEDEC標準化団体によって指定されたフォーム・ファクタに従うメモリ・モジュールを備えるように構成されることができることを注記しておく。
図2は、ここでの実施形態にかかるマルチ・ビット・バスの制御を分散するための一般的な技術を示すフローチャート200である。次の議論が、先に議論したような資源を時折参照するであろうことを注記しておく。
ステップ210において、メモリ・システム100を製造する実体(たとえば、回路基板レイアウト・ツール、メモリ・システム設計者、製造設備、プリント回路基板レイアウト技術者など)は、与えられた記憶装置への各々のデータ・バス(たとえば、データ・バスA)を複数組のデータ・バス信号にパーズ(parse)する。たとえば、データ・バスAが64ビット幅である場合には、実体は、データ・バスAをM個の部分にパーズする(ここでは、Mは、整数値である)。その部分は、大きさが等しいこともあるが等しくないこともある。
ステップ220において、複数のコントローラ・チップ120の各々については、実体は、各々のコントローラ・チップ120とメモリ・アレイ140中の記憶装置との間のデータ・バスAに関連する複数組のデータ・バス信号のうちの対応する組(たとえば、部分)を制御するように、各々のコントローラ・チップ120を割り当てる。例として、その部分は、大きさが等しく、また、M=4であり、データ・バスAは、64ビットを含んでいると仮定する。この例の状況では、実体は、データ・バスAのデータ・ビットD1〜D16を制御するようにメモリ・コントローラ120−1を、データ・バスAのデータ・ビットD17〜D32を制御するようにメモリ・コントローラ120−2を、…そして、データ・バスAのデータ・ビットD49〜D64を制御するようにメモリ・コントローラ120Mを割り当てる。
ステップ230において、実体は、複数のチップ・コントローラ120の各々が、データ・バスAの使用を介して第1記憶装置に格納されたデータの異なる各部分に同時にアクセスすることを可能にする。たとえば、メモリ・コントローラ120とメモリ・アレイ140の記憶装置との間の接続(たとえば、プリント回路基板トレース)を構成することに加えて、実体は、同時にメモリ・アレイ140からデータ・バスA上のデータの異なる部分の同時アクセスを可能にする目的で、複数のコントローラ・チップ120を同期させる同期回路130を提供する。先に議論したように、同期回路130は、メモリ・コントローラ120に対して外部に存在、または、一または複数のメモリ・コントローラ120内に存在することができる。全体として、メモリ・コントローラによってアクセスされるデータは、64ビットの値であることが可能である。
図3は、ここでの実施形態にかかるメモリ・システム100のより特定の詳細を示す図である。示されるように、メモリ・システム100は、図1に関して上で議論したような資源を備えている。しかしながら、図3は、メモリ・アレイ140が、メモリ・モジュールのような記憶装置(たとえば、記憶装置240−1および記憶装置240−2)を備えていることをさらに示している。本例の状況では、同期回路130に関連する機能は、先に議論したような方法で記憶装置にアクセスするためにメモリ・コントローラ120中の動作を調整する目的で、同期回路330−1、同期回路330−2、…において実装されている。
1つの実施形態において、記憶装置240は、DIMM(デュアル・インライン・メモリ・モジュール)であり、各々が、一連のランダム・アクセス・メモリ集積回路を備えている。これらの集積回路は、典型的には、プリント回路基板に取り付けられ、パーソナル・コンピュータおよび他の種類の処理システムでの使用に対して設計されている。
物理的には、記憶装置240−1および記憶装置240−2上のピンは、記憶装置240の各々の長手方向軸242に沿って配置されている。換言すれば、記憶装置240−1は、物理的に、各々の長手方向軸242−1に沿って配置された多数の対応するピン(たとえば、データ・バス、アドレス・バスなど)を有した比較的狭い装置であることができる。同様に、記憶装置240−2もまた、各々の長手方向軸242−2に沿って配置された多くの対応するピン(たとえば、データ・バス、アドレス・バスなど)を有した比較的狭い装置であることが可能である。ここでの実施形態は、記憶装置240の長手方向軸242に対して実質的に平行なレイアウト軸122に沿ってメモリ・コントローラ120(たとえば、別個のコントローラ・チップ)をレイアウトすることを含んでいる。
図3に示されるように、レイアウト軸122に沿ってメモリ・コントローラ120をレイアウトすることは、メモリ・コントローラ120から記憶装置240の各々へのトレースの比較的単純なルーティングを可能にする。つまり、データ・バスAに対するトレースのルーティングは簡単である。なぜならば、与えられたメモリ・コントローラ120上のノード(たとえば、ピン)と、各々の記憶装置240−1上の対応するノード(たとえば、ピン)とが、互いにかなり近接しているからである。メモリ・コントローラ120が従来の方法でされるような単一のコントローラ・チップとしてパッケージにされた場合には、トレースのルーティングは、そのような小さいプリント回路基板領域のトレースの密度のために、殆ど不可能ある。
1つの実施形態において、トレース・レイアウト技術者は、レイアウト軸122の第1位置上またはその近傍にメモリ・コントローラ120−1を配置する。トレース・レイアウト技術者は、レイアウト軸の第2位置上またはその近傍にメモリ・コントローラ120−2を配置する。レイアウト軸122の上のメモリ・コントローラ120の位置決めの後で、トレース・レイアウト技術者は、メモリ・コントローラ120−1と記憶装置240−1との間に第1組の導電性経路(たとえば、トレース群350−1)を実装する。さらに、トレース・レイアウト技術者は、メモリ・コントローラ120−2と記憶装置240−1との間に第2組の導電性経路(たとえば、トレース群350−2)を実装する。
上で議論したように、ここでの実施形態は、レイアウト軸122に沿って離隔された複数のコントローラ・チップ中の信号の制御を広げることを含んでいる。記憶装置240の長手方向軸242と平行なレイアウト軸122に沿ってメモリ・コントローラ120を位置決めすることは、メモリ・コントローラ120と記憶装置240との間のトレース群350および351を、ほぼ同じ長さまたは長さ範囲にすることを可能にする。たとえば、図3に示されるレイアウトの結果、メモリ・コントローラ120−1と記憶装置240−1との間のトレース群350−1(たとえば、データ・バスAの部分)に関連する各々のトレース長は、メモリ・コントローラ120−2と記憶装置240−1との間のトレース群350−2(たとえば、データ・バスAの部分)とほぼ同じ長さであることが可能である。同様に、メモリ・コントローラ120−1と記憶装置240−2との間のトレース群351−1(たとえば、データ・バスBの部分)に関連する各々のトレース長は、メモリ・コントローラ120−2と記憶装置240−2との間のトレース群351−2(たとえば、データ・バスBの部分)とほぼ同じ長さであることが可能である。このように、ここでの実施形態は、メモリ・コントローラ120と記憶装置240との間にトレースをレイアウトすることを含んでおり、その結果、対応するトレース群のトレース長は、実質的に同様または同一の長さである。
さらなる実施形態において、トレース・レイアウト技術者および/または回路基板設計者は、複数のチップ・コントローラの各々が、記憶装置240に格納されたデータの異なる各部分に同時にアクセスすることを可能にする一方で、メモリ・コントローラ120の単一のものが、各々の記憶装置240へのアドレスおよび制御信号を制御する。本例の状況では、メモリ・コントローラ120−1は、記憶装置240−1に関連する制御信号X(たとえば、アドレス・バス、ストローブ、イネーブル信号など)を駆動する。メモリ・コントローラ120の各々は、同時にデータ・バスAにアクセスする。同期回路330−1(たとえば、マスタ・メモリ・コントローラ)は、データ・バスAにアクセスするときに、他のメモリ・コントローラ120への通知を提供することができる。このように、ここでの1つの実施形態は、複数のコントローラ・チップの各々が、記憶装置240−1からのデータの各部分に同時にアクセスすることを可能にする一方で、メモリ・コントローラ120−1が、第1記憶装置に関連するアドレス・バスを制御することを含んでいる。
同様に、メモリ・コントローラ120−2は、記憶装置240−2に関連する信号Y(たとえば、アドレス・バス、ストローブなど)を制御するように構成されることができる。同期回路330−1(たとえば、マスタ・メモリ・コントローラ)は、記憶装置240−2への信号Yをいつ、そして潜在的にはどのように制御するかを、メモリ・コントローラ120−2への通知を提供することができる。このように、ここでの1つの実施形態は、複数のコントローラ・チップの各々が、記憶装置240−2からのデータの各部分に同時にアクセスすることを可能にする同期回路を備えており、その一方で、メモリ・コントローラ120−2が、記憶装置240−2に関連するアドレス・バスを制御する。
図4は、ここでの実施形態にかかるメモリ・システム400を示す図例である。示されるように、メモリ・システム400は、複数のメモリ・コントローラ・チップ420(たとえば、メモリ・コントローラ・チップ420−1、メモリ・コントローラ・チップ420−2、メモリ・コントローラ・チップ420−3、およびメモリ・コントローラ・チップ420−4)と、対応するメモリ・モジュール群441、442、443、および444とを備えている。同期回路430(たとえば、同期回路430−1、同期回路430−2、同期回路430−3、および同期回路430−4)は、メモリ・コントローラ420中の動作を調整する。各メモリ・モジュールは、DIMM(デュアル・インライン・メモリ・モジュール)または格納されたデータにアクセスするためのマルチ・ビット・アドレスおよびデータ・バスを有した他の記憶装置であることが可能である。メモリ・モジュール群441は、メモリ・モジュール441−1、メモリ・モジュール441−2、メモリ・モジュール441−3、およびメモリ・モジュール441−4を備えている。メモリ・モジュール群442は、メモリ・モジュール442−1、メモリ・モジュール442−2、メモリ・モジュール442−3、およびメモリ・モジュール442−4を備えている。メモリ・モジュール群443は、メモリ・モジュール443−1、メモリ・モジュール443−2、メモリ・モジュール443−3、およびメモリ・モジュール443−4を備えている。メモリ・モジュール群444は、メモリ・モジュール444−1、メモリ・モジュール444−2、メモリ・モジュール444−3、およびメモリ・モジュール444−4を備えている。示されるように、チャネルAは、データを格納するメモリ・モジュール群441および444を備えている。チャネルBは、データを格納するメモリ・モジュール群442および443を備えている。
メモリ・システム400は、データ・バスE、データ・バスF、データ・バスG、データ・バスH、データ・バスJ、データ・バスK、データ・バスL、およびデータ・バスMを含む複数のデータ・バスを備えている。データ・バスEは、データ・バス部分E1、データ・バス部分E2、データ・バス部分E3、およびデータ・バス部分E4を備えることができる。データ・バスFは、データ・バス部分F1、データ・バス部分F2、データ・バス部分F3、データ・バス部分F4を備えている。データ・バスGは、データ・バス部分G1、データ・バス部分G2、データ・バス部分G3、データ・バス部分G4を備えている。データ・バスHは、データ・バス部分H1、データ・バス部分H2、データ・バス部分H3、データ・バス部分H4を備えている。データ・バスJは、データ・バス部分J1、データ・バス部分J2、データ・バス部分J3、データ・バス部分J4を備えている。データ・バスKは、データ・バス部分K1、データ・バス部分K2、データ・バス部分K3、データ・バス部分K4を備えている。データ・バスLは、データ・バス部分L1、データ・バス部分L2、データ・バス部分L3、データ・バス部分L4を備えている。データ・バスMは、データ・バス部分M1、データ・バス部分M2、データ・バス部分M3、データ・バス部分M4を備えている。各データ・バス部分は、各々のメモリ・モジュール中のデータにアクセスするための一または複数のデータ信号を含むことができる。
さらに、メモリ・システム400は、制御信号群451、制御信号群452、制御信号群453、制御信号群454、制御信号群455、制御信号群456、制御信号群457、および、制御信号群458のような制御信号群を含んでいる。各制御信号群は、データにアクセスする各々のメモリ・モジュールを制御することをサポートする適切な信号を含むことができる。たとえば、各制御信号群は、各々のメモリ・モジュールを制御する、リセット信号、クロック、データ・ストローブ、チップ・セレクト、コマンド入力、イネーブルなどの信号のうちの一または複数を含むことができる。
1つの実施形態において、メモリ・システム400は、4個のメモリ・コントローラ420のクラスタと、16個の標準の登録されたメモリ・モジュールとを備えている。メモリ・システム400は、より大きい記憶容量を提供するために複製されることができることを注記しておく。たとえば、さらに大きいメモリ・システムは、図4に示されるような4個のメモリ・システムを備えることができる。
メモリ・コントローラ420のクラスタは、2個の別個のデータ・アクセス・インタフェースの組(1個はチャネルAおよびチャネルB用)を実装している。各チャネルは、64データ・ビットと、メモリ・コントローラ420のクラスタに亘って分割された8個のチェック・ビットとを有することができる。したがって、コンパニオン・データ・ストローブ信号は、同様に、メモリ・コントローラ420のクラスタに亘って分散されることができる。1つの実施形態において、アクセス・インタフェース用のプロトコルは、JEDEC標準のJESD79−2Aによって定義されている。
タイミングおよび同期の必要条件を満たすために、データおよびチェック・ビットは、ニブルのコンパニオン・データ・ストローブ信号と共に、4個のメモリ・コントローラ420の群におけるクラスタに亘って分割されることができることを注記しておく。クラスタに亘ってチェック・ビットを分割することは、4による綺麗な割り算である必要がない。たとえば、或るメモリ・コントローラ420は、与えられたチャネル用の他のものよりも多いニブル/ストローブの組をサポートすることができる。さらに、メモリ・システム400の実装は、1チャネル当たりの最大の記憶容量を達成するために4:1のデータ=ストローブ比を固守する記憶装置を備えたモジュールをサポートするように特に設計されることができることを注記しておく。
アドレスおよび制御信号は、異なる方法で扱われることができる。たとえば、各メモリ・コントローラ420は、2個の個別のアドレスおよび制御インタフェースを実装することができる。たとえば、メモリ・コントローラ420−1は、各々の第1インタフェースに関連する制御信号群451と、各々の第2インタフェースに関連する制御信号群455とを含むことができる。示されるように、各インタフェースは、16個のメモリ・モジュールのうちの2個に接続されることができる。そのようなインタフェースの一方は、チャネルA用であり、他方は、チャネルB用である。
単一のメモリ・アクセス(読取り、書込みなど)は、16個のメモリ・モジュールのうちの4個にアクセスすることによって、チャネルAまたはチャネルBのいずれかになされることができる。たとえば、そのような実施形態において、ホスト・システムは、メモリ・コントローラ420のクラスタに、コマンドおよび対応するコンパニオン・データ(書込み用)を発行する。同期方法で、同期回路430の使用を介して、メモリ・コントローラ420の適切な1つが、対象のチャネル上のメモリ・モジュールにホストのコマンドを発行する。したがって、メモリ・コントローラ420によってアドレスされた4個のモジュールが応答する。メモリ・コントローラ420は、適切なメモリ・モジュールに対するデータの読取りまたは書込みの負担を共有する。アクセスが読取りである場合には、メモリ・コントローラ420は、それら自身の中で調整し、データのアクセスされた部分を、メモリからデータを要求するホスト・システムに転送し戻す。
メモリ・コントローラ420からホストへのデータの転送は、パラレルに達成されることができる。たとえば、与えられたデータ・アクセスについては、メモリ・コントローラ420の各々は、与えられたアドレスに対する対応したアクセスされたメモリ・モジュールからの2バイトのデータ(たとえば、16ビット)を取り出すことができる。同期回路430を介して、メモリ・コントローラ420は、ホストへの与えられたアドレスに対する64ビットの取り出された情報のパラレル転送をサポートすることができる。
[同期]
先に議論したように、同期回路430(メモリ・コントローラ420または全体に亘って分散された複数のメモリ・コントローラ420のいずれかの単一のもの)は、メモリ・コントローラ420からメモリ・モジュールへのデータ転送を調整する。たとえば、メモリ・コントローラ420−1(同期回路430−1を介して)のようなマスタ・メモリ・コントローラ中の同期回路430−1は、メモリ・モジュールに新しいコマンド・サイクルの開始を示すために、他の3個のメモリ・コントローラ(たとえば、メモリ・コントローラ420−2、メモリ・コントローラ420−3、およびメモリ・コントローラ420−4)にメッセージを送信する。3個の受信メモリ・コントローラ420は、エラーの発生を検出し、対応するメッセージをマスタ・メモリ・コントローラ420−1に送信し戻してエラーの発生を示すことができる。
1つの実施形態において、同期回路430−1は、100メガヘルツで動作する2.5ボルト(たとえば、低電圧相補性金属酸化膜半導体)のインタフェースを備えている。
マスタ・メモリ・コントローラ420−1は、6個の出力信号および6個の入力信号を含むことができる。各スレーブ・メモリ・コントローラ(たとえば、メモリ・コントローラ420−2、420−3、および420−4)は、2個の出力信号および2個の入力信号を含むことができる。このように、ここでの1つの実施形態は、メモリ・コントローラ420−1とメモリ・コントローラ420−2、420−3、および420−4の各々との間に4個のトレース(たとえば、メモリ・コントローラ420−1からのデータの流れをサポートする2個のトレースまたは信号線、およびメモリ・コントローラ420−1へのデータの流れをサポートする2個のトレースまたは信号線)の接続を備えている。
1つの構成によれば、メモリ・コントローラ420の各々は、各々のデータ・アクセス(たとえば、ダイナミック・ランダム・アクセス・メモリ・アクセス)を行なうときに、4個のメモリ・モジュールに同時にアクセスすることができる。4個のメモリ・モジュールに同時にアクセスするときには、4個の各々のアドレス・バスを備えた4個の制御インタフェースが横並びに動作する。たとえば、4個のメモリ・モジュール(たとえば、4個のDIMM)へのアクセスの同期を達成するために、3個のスレーブ・メモリ・コントローラ(たとえば、メモリ・コントローラ420−2、420−3、および420−4)が、同期回路430に関連するSYNC_IN信号を介したチャネルに対してコマンドを実行する準備ができるまで、マスタ・メモリ・コントローラ420−1が待機する。換言すれば、マスタ・メモリ・コントローラ420−1は、メモリ・コントローラ420−2、420−3、および420−4から受信した前述の信号を監視する。メモリ・コントローラ・スレーブの準備ができている場合には、マスタ・メモリ・コントローラ420−1は、スレーブ・メモリ・コントローラに信号を送り、同期回路430に関連するSYNC_OUT信号を介したアクセス動作の実行を開始させる。換言すれば、メモリ・コントローラ420−1は、同時動作をサポートするために、前述のトレースを通じてメモリ・コントローラ420−2、420−3、および420−4に通信する。マスタ・メモリ・コントローラ420−1それ自体は、スレーブ・メモリ・コントローラに上記の信号伝達を提供した後の一定時間(たとえば、2サイクル)の待機後に、開始することができる。
上記の信号伝達は複写されることができ、その結果、チャネルAおよびチャネルBの各々が同様に動作する。たとえば、上で議論したように、同期回路430は、チャネル間の任意のクロック位相シフトを説明するために、DRAMクロックの範囲内で動作するチャネルAおよびBの各々に対する同期信号の別個の組を含むことができる。
[物理的特性]
1つの構成によれば、メモリ・コントローラ420は、FPGA(フィールド・プログラマブル・ゲート・アレイ)装置中に実装される。メモリ・システム400で使用されるそのような装置の選択は、次の要望に基づくことができる:(1)4個のメモリ・コントローラ420のリニア・アレイが標準のメモリ・モジュールの長さに近似するように、メモリ・コントローラ420の各々のパッケージ・サイズが十分に小さい、(2)各メモリ・コントローラ420のI/O容量が、2個のメモリ・データ・バスの各々のおよそ4分の1をサポートする、(3)各メモリ・コントローラに関連するI/O容量が、各々のメモリ・モジュールへの2個のアドレスおよび制御インタフェースを完全にサポートする、(4)各スレーブ・メモリ・コントローラが、同期目的で、それ自体とマスタ・メモリ・コントローラ420−1との間のI/O容量をサポートする、(5)各メモリ・コントローラが、ホスト装置へのシステム・インタフェースをサポートするI/O容量を備えている、(6)メモリ・システム400が、この開示で議論したような他の機能的な態様をサポートするのに十分な論理的容量および特徴を備えている。
小さいフォーム・ファクタ(たとえば、小さいパッケージ・サイズ)を有したメモリ・コントローラ420を使用することは、各々のメモリ・コントローラとメモリ・モジュールとの間の直接接続を可能にする。したがって、データ・バスの各々のトレース長は、最小の長さに維持されることができる。加えて、より小さいフォーム・ファクタを有したメモリ・コントローラ420を使用することは、各々のプリント回路基板において要求される層の数を低減することができる。
1つの構成によれば、メモリ・チャネル信号をルーティングすること(たとえば、データ・バスE,F,G,…,K,L,Mを実装したトレース)は、所謂「ストリップライン技術」を使用してなされることができる。そのような構成では、信号は、各々の回路基板の2つの平面層の間に挟まれている)。
適用可能な場合には、ここで記述された或る技術(トレース・レイアウト、プリント回路基板設計などのような)は、この明細書で議論した実施形態を実施するためのプロセッサおよび対応するソフトウェア・コードを備えた各々のコンピュータ・システムのアプリケーションを介して実施されることができることを注記しておく。そのような実施形態の一例(たとえば、ソフトウェア・コードを実行するコンピュータ・システム)は、メモリ・システムとコンピュータ・システムのプロセッサとを結合する相互接続を含むことができる。メモリに格納されたコードの実行は、ここで記述されるような一または複数の技術をサポートすることができる。
図5および図6は、組み合わせて、ここでの実施形態にかかる、回路基板コンポーネントをレイアウトする技術と、対応するプリント回路基板トレースの使用とを示すフローチャート500(たとえば、フローチャート500−1およびフローチャート500−2)を形成している。
図5のステップ510において、実体(たとえば、回路基板レイアウト・ツール、レイアウト技術者、プリント回路基板製造設備、メモリ・システム設計者など)は、メモリ・アレイ140中の第1記憶装置(第1DIMMのような)にアクセスする第1データ・バス(たとえば、データ・バスA)と、メモリ・アレイ140中の第2記憶装置(第2DIMMのような)にアクセスする第2データ・バス(たとえば、データ・バスB)を備えた複数のデータ・バスを割り付けるか、または、維持する。
ステップ515において、実体は、第1データ・バス(たとえば、データ・バスA)を複数組(たとえば、群)のデータ・バス信号にパーズする。たとえば、第1組の信号は、データ・バスAのデータ・ビット1〜16を含むことができ、第2組の信号は、データ・バスAのデータ・ビット17〜32を含むことができ、第3組の信号は、データ・バスAのデータ・ビット33〜48を含むことができ、そして、第4組の信号は、データ・バスAのデータ・ビット49〜64を含むことができる。
ステップ520において、複数のコントローラ120の各々に対して、実体は、各コントローラ120と第1記憶装置(たとえば、第1DIMM)との間の第1データ・バス(たとえば、データ・バスA)に関連する複数組のデータ・バス信号のうちの対応する組を制御するように、各コントローラ120を割り当てる。
ステップ525において、実体は、第2データ・バス(たとえば、データ・バスB)を複数組(たとえば、群)のデータ・バス信号にパーズする。たとえば、第1組の信号は、データ・バスBのデータ・ビット1〜16を含むことができ、第2組の信号は、データ・バスBのデータ・ビット17〜32を含むことができ、第3組の信号は、データ・バスBのデータ・ビット33〜48を含むことができ、そして、第4組の信号は、データ・バスBのデータ・ビット49−64を含むことができる。
ステップ530において、複数のコントローラ120の各々に対して、実体は、各コントローラ120と第2記憶装置(たとえば、第2DIMM)との間の第2データ・バス(たとえば、データ・バスB)に関連する複数組のデータ・バス信号のうちの対応する組を制御するように、各コントローラ120を割り当てる。
ステップ535において、実体は、同時に第1記憶装置からのデータの異なる部分の同時アクセスを可能にする目的で、複数のメモリ・コントローラ120を同期させる、複数のメモリ・コントローラ120に関連する同期回路130を設ける。同期回路130は、メモリ・コントローラ120に関連する動作を調整することもでき、その結果、メモリ・コントローラ120は、同時に第2記憶装置からのデータの異なる部分に同時にアクセスすることができる。
ステップ540において、実体は、第1記憶装置に関連するアドレス・バス(たとえば、制御信号X)を制御するように、複数のメモリ・コントローラ120のうちのメモリ・コントローラ120−1を割り当てる。
ステップ545において、実体は、第2記憶装置に関連するアドレス・バス(たとえば、制御信号Y)を制御するように、複数のメモリ・コントローラ120のうちのメモリ・コントローラ120−2を割り当てる。
ステップ550において、実体は、第1記憶装置からホスト・システム110のような最終目的地に取り出されたデータの異なる各部分の同時パラレル転送をサポートするように、メモリ・コントローラ120を構成する。
議論したように、ここでの技術は、対応するピンが各々の装置の長さに沿って連続するように物理的に分散されたDIMM(デュアル・インライン・メモリ・モジュール)のメモリ部品を利用するデータ処理システムのような用途での使用に良く適している。しかしながら、ここでの構成は、そのような用途での使用に限定されず、したがって、ここでの構成およびそれから逸れたものも同様に他の用途に良く適していることを注記しておく。
この発明がその好ましい実施形態への参照と共に特に示され且つ記述されているが、形態および詳細の様々な変更が、添付の請求の範囲によって定義されるような本発明の精神および範囲から逸脱せずにそこになされることが可能であることは当業者によって理解されるであろう。そのような変更は、この発明の範囲によって包含されるように意図されている。そのため、本発明の実施形態の先の記述は、限定するようには意図されてはいない。むしろ、本発明の実施形態への如何なる限定も次の請求の範囲に示されている。
ここでの実施形態にかかるメモリ・システムのブロック図である。 ここでの実施形態にかかる複数のメモリ・コントローラ・チップに、共通データ・バスの各部分の制御を割り付ける技術を示すフローチャートである。 ここでの実施形態にかかる複数の記憶装置を備えたメモリ・システムのブロック図である。 ここでの実施形態にかかる格納データにアクセスするメモリ・システムのブロック図である。 図6と組み合わせて、ここでの実施形態にかかる複数のメモリ・コントローラ・チップを備えたメモリ・システムを製造する技術を示すフローチャートである。 図5と組み合わせて、ここでの実施形態にかかる複数のメモリ・コントローラ・チップを備えたメモリ・システムを製造する技術を示すフローチャートである。
符号の説明
100 メモリ・システム
110 ホスト・システム
120 メモリ・コントローラ・チップ(チップ・コントローラ)
122 レイアウト軸
130 同期回路
140 メモリ・アレイ
240 記憶装置
242 長手方向軸
330 同期回路
350,351 トレース群
400 メモリ・システム
420 メモリ・コントローラ・チップ
430 同期回路
441,442,443,444 メモリ・モジュール群
451〜458 制御信号群

Claims (12)

  1. 第1記憶装置への第1データバスと、第2記憶装置への第2データバスとを備えた複数のデータバスを維持することと;
    前記第1データバスを、複数組の第1データバス信号に分割することと;
    複数のコントローラチップのそれぞれに対して、前記それぞれコントローラチップと前記第1記憶装置との間の前記第1データバスに関連する前記複数組の第1データバス信号のうちの対応する組を制御すべく、それぞれコントローラチップを割当てることと;
    前記第2データバスを、複数組の第2データバス信号に分割することと;
    複数のコントローラチップのそれぞれに対して、前記それぞれコントローラチップと前記第2記憶装置との間の前記第2データバスに関連する前記複数組の第2データバス信号のうちの対応する組を制御すべく、それぞれコントローラチップを割当てることと;
    前記第1データバスを介して、それぞれ前記コントローラチップが、前記第1記憶装置に格納されたデータの互いに異なる部分に同時にアクセスすることを可能にする第1同時アクセス段階と
    前記第2データバスを介して、それぞれ前記チップコントローラが、前記第2記憶装置に格納されたデータの互いに異なる部分に同時にアクセスすることを可能にする第2アクセス段階と;
    前記第1同時アクセス段階と前記第2同時アクセス段階とを可能にする目的で、それぞれ前記コントローラチップを同期することと;
    を含むデータアクセス方法において、
    前記第1同時アクセス段階は、
    前記第1記憶装置に関連するアドレスバスと制御バスを制御するように、前記複数のコントローラチップのうちの第1コントローラチップを割当てることを含み、
    前記第2同時アクセス段階は、
    前記第2記憶装置に関連するアドレスバスと制御バスを制御するように、前記複数のコントローラチップのうちの第2コントローラチップを割当てることを含み、
    前記第1同時アクセス段階は、
    前記第1コントローラチップと前記第2コントローラチップが前記第1記憶装置からのデータの各部分に同時にアクセスすることを可能にする一方で、前記第1コントローラチップが、前記第1記憶装置に関連するアドレスバスと制御バスを制御することを含み、
    前記第2同時アクセス段階は、
    前記第1コントローラチップと前記第2コントローラチップが前記第2記憶装置からのデータの各部分に同時にアクセスすることを可能にする一方で、前記第2コントローラチップが、前記第2記憶装置に関連するアドレスバスと制御バスを制御することを含む
    ことを特徴とする、データアクセス方法。
  2. 前記データアクセス方法はさらに、
    前記第1記憶装置から最終目的地に取出されるデータの互いに異なる部分の同時パラレル転送をサポートするように、前記コントローラチップを構成することを含む、
    請求項記載のデータアクセス方法。
  3. 前記データアクセス方法はさらに、
    前記第1記憶装置の長手方向軸である第1長手方向軸前記第2記憶装置の長手方向軸である第2長手方向軸との両方に平行なレイアウト軸に沿って、前記第1コントローラチップと前記第2コントローラチップとをレイアウトするレイアウト段階を含む、
    請求項記載のデータアクセス方法。
  4. 前記データアクセス方法はさらに、
    前記第1記憶装置の長手方向軸に平行なレイアウト軸に沿って、前記第1コントローラチップと前記第2コントローラチップとをレイアウトするレイアウト段階を含む、
    請求項記載のデータアクセス方法。
  5. 前記レイアウト段階は、
    前記レイアウト軸の第1位置上に、前記第1コントローラチップを配置することと;
    前記レイアウト軸の第2位置上に、前記第2コントローラチップを配置することと;
    前記第1コントローラチップと前記第1記憶装置との間に、第1組の導電性経路を実装することと;および
    前記第2コントローラチップと前記第1記憶装置との間に、第2組の導電性経路を実装することと
    を含む、
    請求項記載のデータアクセス方法。
  6. 前記第1組の導電性経路と前記第2組の導電性経路とを実装することは、
    前記第1コントローラチップと前記第1記憶装置との間の前記第1組の導電性経路導電性経路長さを、
    前記第2コントローラチップと前記第1記憶装置との間の前記第2組の導電性経路導電性経路長さと同になるように構成することを含む、
    請求項記載のデータアクセス方法。
  7. 複数組の第1データバス信号に分割された第1データバスと;
    複数組の第2データバス信号に分割された第2データバスと;
    そのそれぞれが、第1記憶装置への前記複数組の第1データバス信号のうちの対応する組を制御するように割当てられ、かつ第2記憶装置への前記複数組の第2データバス信号のうちの対応する組を制御するように割当てられる複数のメモリコントローラチップと
    複数のメモリコントローラチップに関連する動作を調整する同期回路と
    を備えるメモリシステムであって、
    前記同期回路に関連する信号伝達によって前記第1データバスは、それぞれ前記チップコントローラが、前記第1記憶装置に格納されたデータの互いに異なる部分に同時にアクセスすることを可能にし、
    前記同期回路に関連する信号伝達によって前記第2データバスは、それぞれ前記チップコントローラが、前記第2記憶装置に格納されたデータの互いに異なる部分に同時にアクセスすることを可能にし、
    前記複数のコントローラチップのうちの第1コントローラチップは、前記第1記憶装置に関連する第1アドレスバスと、対応する制御バスとを制御するように構成され、
    前記複数のコントローラチップのうちの第2コントローラチップは、前記第2記憶装置に関連する第2アドレスバスと、対応する制御バスとを制御するように構成される
    ことを特徴とする、メモリシステム。
  8. 前記複数のメモリコントローラチップは、前記第1記憶装置から最終目的地に取出された前記データの互いに異なる部分の同時パラレル転送をサポートするように構成されている、
    請求項記載のメモリシステム。
  9. 前記第1メモリコントローラチップと前記第2コントローラチップとは、前記第1記憶装置の長手方向軸である第1長手方向軸前記第2記憶装置の長手方向軸である第2長手方向軸との両方に平行なプリント回路基板のレイアウト軸に沿ってレイアウトされ、
    前記第1記憶装置は、前記第1長手方向軸に沿って配置されたピンを備え、
    前記第2記憶装置は、前記第2長手方向軸に沿って配置されたピンを備えている、
    請求項記載のメモリシステム。
  10. 前記複数のメモリコントローラチップは、前記第1記憶装置の長手方向軸である第1長手方向軸に対して平行な回路基板のレイアウト軸に沿って配置されている、
    請求項記載のメモリシステム。
  11. 記第1コントローラチップは、前記レイアウト軸の第1位置に存在し、
    記第2コントローラチップは、前記レイアウト軸の第2位置に存在し、
    第1組の導電性経路は、前記第1記憶装置に前記第1コントローラチップを接続し、
    第2組の導電性経路は、前記第記憶装置に前記第2コントローラチップを接続する、
    請求項1記載のメモリシステム。
  12. 前記第1コントローラチップと前記第1記憶装置との間の前記第1組の導電性経路導電性経路長さは、
    前記第2コントローラチップと前記第記憶装置との間の前記第2組の導電性経路導電性経路長さと同になるように構成されている、
    請求項1記載のメモリシステム。
JP2008005305A 2007-01-12 2008-01-15 データアクセス方法およびマルチチップコントローラを備えるメモリシステム Expired - Fee Related JP4857291B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/652,931 2007-01-12
US11/652,931 US8145869B2 (en) 2007-01-12 2007-01-12 Data access and multi-chip controller

Publications (2)

Publication Number Publication Date
JP2008171432A JP2008171432A (ja) 2008-07-24
JP4857291B2 true JP4857291B2 (ja) 2012-01-18

Family

ID=39308029

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008005305A Expired - Fee Related JP4857291B2 (ja) 2007-01-12 2008-01-15 データアクセス方法およびマルチチップコントローラを備えるメモリシステム

Country Status (5)

Country Link
US (1) US8145869B2 (ja)
EP (1) EP1944697B1 (ja)
JP (1) JP4857291B2 (ja)
KR (1) KR101081197B1 (ja)
CN (1) CN101231879B (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8656082B2 (en) * 2008-08-05 2014-02-18 Micron Technology, Inc. Flexible and expandable memory architectures
US20100058016A1 (en) * 2008-08-26 2010-03-04 Jari Nikara Method, apparatus and software product for multi-channel memory sandbox
CN102216993A (zh) * 2008-09-09 2011-10-12 维尔基逻辑公司 存储器控制器
US8914589B2 (en) 2008-09-22 2014-12-16 Infineon Technologies Ag Multi-port DRAM architecture for accessing different memory partitions
US8495310B2 (en) * 2008-09-22 2013-07-23 Qimonda Ag Method and system including plural memory controllers and a memory access control bus for accessing a memory device
KR101035732B1 (ko) * 2008-10-07 2011-05-19 주식회사 칩스앤미디어 메모리 액세스 인터페이스의 변환 방법 및 장치
CN102543159B (zh) * 2010-12-29 2014-06-25 炬才微电子(深圳)有限公司 一种ddr控制器及其实现方法和芯片
DE102011011958A1 (de) * 2011-02-22 2012-08-23 Atlas Elektronik Gmbh Speicherverwaltungseinheit und Verfahren zum Verwalten von Speicherzugriffen sowie System mit einer Speicherverwaltungseinheit
CN102880567B (zh) * 2011-07-11 2016-02-10 澜起科技(上海)有限公司 数据读写系统
CN102881324B (zh) 2011-07-11 2015-07-08 澜起科技(上海)有限公司 写入电路、读取电路、内存缓冲器及内存条
CN103828184B (zh) 2011-08-05 2016-08-17 力博特公司 在没有任何辅助信号的情况下进行的多个不间断电源总线之间的基于电力线的协调信号的智能仲裁
EP2761620B1 (en) 2011-09-30 2020-04-29 Intel Corporation Dynamic operations for 3d stacked memory using thermal data
JP6030951B2 (ja) 2012-12-28 2016-11-24 ルネサスエレクトロニクス株式会社 半導体装置及び電子装置
KR102133573B1 (ko) * 2013-02-26 2020-07-21 삼성전자주식회사 반도체 메모리 및 반도체 메모리를 포함하는 메모리 시스템
WO2015164049A1 (en) * 2014-04-25 2015-10-29 Rambus, Inc. Memory mirroring
US9804931B2 (en) 2014-04-25 2017-10-31 Rambus Inc. Memory mirroring utilizing single write operations
WO2016068893A1 (en) * 2014-10-29 2016-05-06 Hewlett-Packard Development Company, L.P. Communicating over portions of a communication medium
CN104657296B (zh) * 2015-01-30 2017-12-26 西安紫光国芯半导体有限公司 多数据接口兼容的芯片架构
WO2016126474A1 (en) * 2015-02-06 2016-08-11 Micron Technology, Inc. Apparatuses and methods for parallel writing to multiple memory device locations
US9785570B2 (en) * 2015-03-09 2017-10-10 Samsung Electronics Co., Ltd. Memory devices and modules
CN104834484B (zh) * 2015-05-11 2018-10-23 上海新储集成电路有限公司 基于嵌入式可编程逻辑阵列的数据处理系统及处理方法
CN106506625A (zh) * 2016-11-02 2017-03-15 郑州云海信息技术有限公司 四控服务器及四控服务器通信方法
US11487445B2 (en) * 2016-11-22 2022-11-01 Intel Corporation Programmable integrated circuit with stacked memory die for storing configuration data
TWM542163U (zh) * 2017-01-16 2017-05-21 Evga Corp 電腦控制晶片之模擬切換裝置
US11610862B2 (en) * 2018-09-28 2023-03-21 Intel Corporation Semiconductor packages with chiplets coupled to a memory device
GB2578600B (en) * 2018-10-31 2021-10-13 Advanced Risc Mach Ltd Memory transaction request management
US10901734B2 (en) 2019-03-01 2021-01-26 Micron Technology, Inc. Memory mapping using commands to transfer data and/or perform logic operations

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4979104A (en) 1987-03-31 1990-12-18 Bull Hn Information Systems Inc. Dual microprocessor control system
US6968419B1 (en) * 1998-02-13 2005-11-22 Intel Corporation Memory module having a memory module controller controlling memory transactions for a plurality of memory devices
US6854043B2 (en) * 2002-07-05 2005-02-08 Hewlett-Packard Development Company, L.P. System and method for multi-modal memory controller system operation
US7231484B2 (en) 2002-09-30 2007-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Method and memory controller for scalable multi-channel memory access
EP1403772A1 (en) 2002-09-30 2004-03-31 Telefonaktiebolaget L M Ericsson (Publ) Method and memory controller for scalable multi-channel memory access
US7043611B2 (en) * 2002-12-11 2006-05-09 Lsi Logic Corporation Reconfigurable memory controller
US7480781B2 (en) 2004-12-30 2009-01-20 Intel Corporation Apparatus and method to merge and align data from distributed memory controllers
US7373471B2 (en) * 2005-02-09 2008-05-13 International Business Machines Corporation Executing background writes to idle DIMMs
TWI259941B (en) * 2005-04-29 2006-08-11 Via Tech Inc Motherboard and bridge module therefor
US8253751B2 (en) 2005-06-30 2012-08-28 Intel Corporation Memory controller interface for micro-tiled memory access

Also Published As

Publication number Publication date
CN101231879A (zh) 2008-07-30
KR20080066626A (ko) 2008-07-16
KR101081197B1 (ko) 2011-11-07
US8145869B2 (en) 2012-03-27
CN101231879B (zh) 2015-06-24
US20120005396A1 (en) 2012-01-05
EP1944697B1 (en) 2013-06-05
JP2008171432A (ja) 2008-07-24
EP1944697A1 (en) 2008-07-16

Similar Documents

Publication Publication Date Title
JP4857291B2 (ja) データアクセス方法およびマルチチップコントローラを備えるメモリシステム
EP3436963B1 (en) Memory subsystem with narrow bandwidth repeater channel
US9887008B2 (en) DDR4-SSD dual-port DIMM device
US9293170B2 (en) Configurable bandwidth memory devices and methods
EP2389674B1 (en) Memory devices and methods for managing error regions
US10339072B2 (en) Read delivery for memory subsystem with narrow bandwidth repeater channel
US8767430B2 (en) Configurable module and memory subsystem
US11188264B2 (en) Configurable write command delay in nonvolatile memory
GB2420200A (en) Memory System having unidirectional interconnections between modules.
US20170289850A1 (en) Write delivery for memory subsystem with narrow bandwidth repeater channel
US20230393740A1 (en) Four way pseudo split die dynamic random access memory (dram) architecture
EP4312104A1 (en) Memory module adapter card with multiplexer circuitry
US20230215493A1 (en) Cross dram dimm sub-channel pairing
US20230044892A1 (en) Multi-channel memory module
US20230333928A1 (en) Storage and access of metadata within selective dynamic random access memory (dram) devices
KR20230071015A (ko) 시스템 온 칩 및 이의 동작 방법

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110516

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110519

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110810

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111004

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111031

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141104

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4857291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees