JPH05120129A - 多重バンク大域メモリ・カード - Google Patents

多重バンク大域メモリ・カード

Info

Publication number
JPH05120129A
JPH05120129A JP4107781A JP10778192A JPH05120129A JP H05120129 A JPH05120129 A JP H05120129A JP 4107781 A JP4107781 A JP 4107781A JP 10778192 A JP10778192 A JP 10778192A JP H05120129 A JPH05120129 A JP H05120129A
Authority
JP
Japan
Prior art keywords
memory
bus
data
read
global bus
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.)
Granted
Application number
JP4107781A
Other languages
English (en)
Other versions
JP2518989B2 (ja
Inventor
Daniel P Dumarot
ダニエル・ピーター・ダマロツト
Armando Garcia
アルマンド・ガルシア
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05120129A publication Critical patent/JPH05120129A/ja
Application granted granted Critical
Publication of JP2518989B2 publication Critical patent/JP2518989B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing
    • 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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1647Handling requests for interconnection or transfer for access to memory bus based on arbitration with interleaved bank access

Abstract

(57)【要約】 【目的】 大域バスを有する多重プロセッサ・コンピュ
ータ・システムのための多重バンク大域メモリ・システ
ム(GMS)の提供。 【構成】 GMSは大域バスに接続される最大4個の大
域メモリ・カード(GMC)を含む。これらGMCは独
立にアクセスされる。各GMCはメモリ・アクセス及び
読出し応答データをバッファリングするための共通イン
タフェースを含む。各GMCはまた、4個のメモリ・バ
ンクを含む。共通インタフェース及びメモリ・バンクは
ローカル・バスを介して接続される。メモリ・バンクは
インタリーブされ、独立にスケジュール及びアクセスさ
れる。共通インタフェース及びメモリ・バンクは各々通
知される書込みサイクルを実行でき、また読出し要求に
続き独立に読出し応答データを供給できる。共通インタ
フェースは同時に、バンク当たり最大8ワードの書込
み、及び8ワードの読出し応答をもバッファリング可能
とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は一般に、コンピュータ・
システムのためのメモリ・サブシステムに関し、更に詳
しくは、多重プロセッサ・コンピュータ・システムのた
めの多重バンク大域(すなわち共用)メモリ・サブシス
テムに関する。
【0002】
【従来の技術と解決しようとする課題】多くの多重プロ
セッサ・コンピュータ・システムでは、プロセッサは主
メモリよりも高速に動作する。その結果、プロセッサは
メモリ要求を完了するために、主メモリを待機する間、
遊休状態となる。
【0003】更に、特定のサイクルの間、プロセッサは
しばしば主メモリに対し、同時メモリ・アクセス要求を
発する。その結果、両プロセッサで主メモリを争うこと
になる。結果的にプロセッサは、同時メモリ・アクセス
要求の間の争奪が解決するまで、遊休状態となる。
【0004】前述のプロセッサ遊休時間は、多重プロセ
ッサ・コンピュータ・システムにおいて高速計算の達成
を阻止する。
【0005】上述の問題に対する従来の解決策として、
インタリーブド・メモリ・システムの使用がある。イン
タリーブド・メモリ・システムは、大域バスに接続され
る複数のメモリ・バンクを含む。
【0006】従来の解決策によれば、主メモリはメモリ
・バンクの間で区分される。その結果、異なるプロセッ
サが異なるメモリ・バンクを参照する場合には、これら
のプロセッサは同時に主メモリをアクセスできる。従っ
て、従来の策はプロセッサの遊休時間を減少させる。従
来のインタリーブド・メモリ・システムの構成及び動作
はよく知られている。
【0007】主メモリに対する同時アクセスの量は、主
メモリの区分量と共に増加する。例えば、主メモリが4
つのメモリ・バンクに区分されると、主メモリへの4つ
の同時アクセスが可能となる。また、主メモリが8個の
メモリ・バンクに区分されると、主メモリへの8個の同
時アクセスが可能となる。換言すれば、プロセッサ遊休
時間は主メモリの区分が増加すると、逆に減少する。
【0008】従来は、各メモリ・バンクは固有のアドレ
ス回路を有した。このアドレス回路は多重プロセッサ・
コンピュータ・システムのコストを増加させる。
【0009】また、メモリ・バンクを含むコンピュータ
・ボードは、待ち時間及びアクセス時間を最小化するた
めに、小量のメモリを含まねばならない。従って、大き
な主メモリを実現するためには、非常に数多くのコンピ
ュータ・ボードが要求される。大域バス・スロットが制
限される多重プロセッサ・コンピュータ・システムで
は、これは現実的ではない。もし現実的であるとして
も、これは多重プロセッサ・コンピュータ・システムの
コストを増加させる。
【0010】従って、従来の解決策は欠点を有すること
になる。なぜなら、プロセッサの遊休時間の減少(それ
相応に計算速度が高まる)は、コスト的犠牲を伴うこと
によってのみ達成されるからである。
【0011】
【発明が解決しようとする課題】本発明は大域バスを有
する多重プロセッサ・コンピュータ・システムにおける
複数バンク大域メモリ・システム(GMS)の使用を目
的とする。
【0012】
【課題を解決するための手段】本発明のGMSは次の特
徴を含む。
【0013】第1に、GMSは1個或いは複数の大域メ
モリ・カード(GMC)を含む。GMCは別々のコンピ
ュータ・ボード上に配置される。各GMCは共通インタ
フェース及び4個の独立なメモリ・バンクを含む。共通
インタフェース及びメモリ・バンクはローカル・バスに
より接続される。各メモリ・バンク及び共通インタフェ
ースの動作は、ローカル・バス上へのアドレス及びデー
タ情報の転送を除けば、完全に独立である。
【0014】1つの共通インタフェースと共にコンピュ
ータ・ボード上に4個の独立なメモリ・バンクを配置す
るアプローチは、待ち時間及びアクセス時間に関する大
きな不利を伴わずに、コンピュータ・ボード上に大容量
のメモリを登載することを可能とする。
【0015】第2に、GMCに対するメモリ・アクセス
要求(すなわち読出し及び書込み要求)は、共通インタ
フェースにバッファされる。なぜなら、メモリ・アクセ
ス要求は共通インタフェースにバッファされ、(GMC
が接続される)大域バスに関連するサイクルは、メモリ
・バンクによりメモリ・サイクルのスケジューリングか
ら切り放される。読出し要求では、大域バス・サイクル
が、メモリ・バンクから共通インタフェースへの読出し
応答データの返却から切り放される。
【0016】第3に、本発明のGMSはダイナミック・
ランダム・アクセス・メモリ(DRAM)に関連するペ
ージ・モードを使用し、メモリ・アクセス時間を半分に
短縮する(本発明の実施例では、8サイクルから4サイ
クルに短縮する)。
【0017】本発明のGMSはページ・モードを2つの
方法で使用する。すなわち、ブロック・モード読出しモ
ード(DMA)及び近傍モード読出し及び書込みサイク
ルである。DMAモードでは、開始アドレス及び返却す
るワード数が特定される。メモリ・バンクはワードをフ
ェッチし、これらを共通インタフェースに送る。これら
のワードは、大域バス上に返却される以前に共通インタ
フェース内にバッファされる。
【0018】本発明の実施例では、DMAモードにおけ
る、各メモリ・バンクの最大読出し応答データ・バンド
幅は320メガバイト/秒である。従って、理論的な総
計最大読出し応答バンド幅は1280メガバイト/秒と
なる。しかしながら、実際の最大データ・バンド幅は、
ローカル・バスが640メガバイト/秒の読出し応答バ
ンド幅で飽和するため、理論値よりも小さなものとな
る。
【0019】メモリ・バンクは、特定のメモリ・アクセ
スに対し、次のDRAM行アドレスが現行のDRAM行
アドレスと同時には、近傍アドレス読出し及び書込みを
達成する。共通インタフェースは現行及び次のDRAM
行アドレス(バンク基本によるバンク上のアドレス)の
比較を行い、これらが同じ場合には制御信号をアサート
する。制御信号はページ・モードに留まるメモリ・バン
クを通知する。
【0020】本発明の実施例によれば、近傍アドレス・
モードにおいて、各メモリ・バンクの最大読出し応答及
び書込みデータ・バンド幅は320メガバイト/秒であ
り、理論的には総計最大データ・バンド幅は1280メ
ガバイト/秒となる。しかし、実際の最大データ・バン
ド幅は、読出し或いは書込みサイクルを426メガバイ
ト/秒よりも多少大きくスケジューリングするときにロ
ーカル・バスが飽和するため、理論値よりも小さな値と
なる。
【0021】第4に、本発明のGMSは自動的に4つの
インタリーブ・ファクタの内の何れか1つに構成され
る。インタリーブ・ファクタは2ワード、8ワード、3
2ワード、或いは128ワードの内から選択され、シス
テムのパワー・アップ時にセットされる。こうしてアド
レスのデコードは、選択されるインタリーブ・ファクタ
及びGMSにおけるメモリ量の関数となる。インタリー
ブ・ファクタは選択可能であるため、GMSはインスト
ールされるオペレーティング・システム及びアプリケー
ションによりローディングのために配置される、総合的
なメモリ・バンド幅を最適化するように調整される。
【0022】第5に、本発明のGMSは、メモリ・ロッ
キング(memorylocking)の2つの方法を支援する。メ
モリ・ロッキングを支援することにより、GMSは多重
プロセッサ環境における共用化メモリ・システムとして
使用するのに好適である。
【0023】第6に、GMSのGMCはエラー検出及び
訂正(EDC)を達成する。本発明の実施例では、GM
Cは単一或いはダブル・ビット・エラーを検出し、単一
ビット・エラーを訂正する。1バイトのエラー訂正コー
ド(ECC)が、EDCを達成するために、メモリの各
4バイトに付け加えられる。
【0024】第7に、本発明のGMSは、40ピンによ
る1メガバイト或いは40ピンによる2メガバイトのシ
ングル・イン・ライン・メモリ・モジュール(SIM
M)として使用されるように設計される。これによりコ
ンピュータ・ボードは128メガバイト或いは256メ
ガバイトのメモリを有することになる。
【0025】本発明の更に他の特徴及び利点は、本発明
の様々な実施例の構成及び動作と共に、後に図を参照し
ながら詳細に説明されている。図において、同じ参照番
号は同一或いは機能的に類似の要素を示す。
【0026】
【実施例】
1.構成的概要 図1は本発明の大域メモリ・システム(GMS)112
を含むシステム102を表す。システム102はコンピ
ュータ104A、104Bを含む。GMS112はコン
ピュータ104A、104Bのための共用メモリとして
機能する。コンピュータ104A、104Bの構成及び
動作は類似である。
【0027】コンピュータ104Aはプロセッサ・カー
ド108、入出力(I/O)プロセッサ・カード11
0、GMS112、バス間アダプタ114、及び大域調
停器168を含む。プロセッサ・カード108、入出力
(I/O)プロセッサ・カード110、GMS112、
バス拡張器114(これはシステム104Aがシステム
104Bのような最大3個までの他のシステム104A
と接続されることを可能とする)、及び大域調停器16
8は大域バス116に接続される。本発明の実施例で
は、大域バス116は、333本のデータ・ライン16
0、55本のアドレス・ライン162、及び7本の制御
ライン160を含む。データ・ライン160の1本であ
るDCYCLEは、有効データがデータ・ライン160
上に存在する時を特定する。アドレス・ライン162の
1本であるACYCLEは、有効アドレスが存在する時
を特定する。大域調停器168は大域バス116へのア
クセスを制御する。
【0028】データ・ライン160は32本のデータ・
パリティ・ラインを含む。アドレス・ライン162は4
本のアドレス・パリティ・ラインを含む。データ及びア
ドレス・パリティ・ラインは、データ・ライン160及
びアドレス・ライン162に含まれるデータ及びアドレ
スを保護するために使用される。
【0029】本発明のGMS112は大域メモリ・カー
ド(GMC)150を含む。GMC150は各々、共通
インタフェース124及びメモリ・バンク130を含
む。メモリ・バンク130は共通インタフェース124
に、ローカル・バス122を介して接続される。
【0030】ここでプロセッサ・カード108、入出力
(I/O)プロセッサ・カード110、及びバス間アダ
プタ114もまた、共通インタフェース124を含む。
これらの共通インタフェース124は類似ではあるが、
特定のカード108、110、112及び114によっ
て構成及び動作が変更される。
【0031】本発明の実施例において、4メガビットの
ダイナミック・ランダム・アクセス・メモリ(DRA
M)技術を使用するものと仮定すると、GMS112は
最大容量1ギガバイトのDRAM(以降では"メモリ"と
称する)が4個のGMC150上に分配される。各GM
C150は256メガバイト或いは128メガバイトの
メモリを有することが可能である。
【0032】GMS112は1個から4個までのGMC
150を含む。結果的には、GMS112は最小128
メガバイト、最大1ギガバイトのメモリを自己構成す
る。
【0033】GMS112は4本のGM_MCARD信
号270、及び2本のISEL信号222の対話により
自己構成される。各GMC150は大域バス116のど
の物理的スロットが登載されているかにより、GM_M
CARD信号270の内の1本をアサートする。物理的
スロット情報は、HWID272を介して大域バス11
6内の各スロットにハード的に結線される。このように
してGMS112内の全てのGMC150が、GMS1
12内に存在するGMCの数を知ることができる。2本
のISEL信号222は選択されるインターリブ・ファ
クタを定義する。(1)GMS112内に存在するGM
C150の数、(2)登載されているスロット、及び
(3)インタリーブ・ファクタを知ることにより、各G
MC150はメモリのサブセットが占める大域バス・ア
ドレスを得ることができる。換言すると、各GMC15
0は自己のアドレス空間を決定することができる。
【0034】2.メモリ・アドレッシング このセクションでは本発明のGMS112におけるアド
レス・デコーディングについて説明する。
【0035】GMS112のアドレス・デコーディング
は、大域バス116に接続されるGMC150の数に依
存する。上述したように、大域バス116に接続される
GMC150の数は、システム104のパワー・アップ
時に自動的に決定される。
【0036】GMC150に含まれるメモリ・バンク1
30は、インタリーブされる。前述したように、インタ
リーブ・ファクタは選択可能である。本出願において
は、256ビット(或いは32バイト)が1ワードを表
す。表1はGMS112におけるメモリのインタリーブ
を表し、ここでは4個のGMC150が大域バス116
に接続され、インタリーブ・ファクタは8である(8ワ
ード・インタリーブ)。
【0037】
【表1】
【0038】上述のように、GMC150は各々4個の
メモリ・バンク130を有する。表1に示すメモリ・イ
ンタリーブによれば、GMC1の第1のメモリ・バンク
130は、000から0FFまでの最下位バイト・アド
レスを含む。第2のメモリ・バンク130は、100か
ら1FFまでの最下位バイト・アドレスを含む。第3の
メモリ・バンク130は、200から2FFまでの最下
位バイト・アドレスを含む。そして第4のメモリ・バン
ク130は、300から3FFまでの最下位バイト・ア
ドレスを含む。
【0039】GMS112内に1個のGMC150が存
在すると、このGMS112には4個のメモリ・バンク
130が存在することになる。これらの4個のメモリ・
バンク130は、100ヘキサ・バイト・アドレスごと
にインタリーブされる。唯一のGMC150が、大域バ
ス16上の全アドレス(大域バス・アドレスとも称され
る)に応答する。
【0040】GMS112内の唯一のGMC150が1
28メガバイトのメモリを有す場合は、メモリはバイト
・アドレス8000000hexで始まり循環する。G
MC150が256メガバイトのメモリを有す場合は、
このメモリはバイト・アドレス10000000hex
で循環する。
【0041】GMS112に2個のGMC150が存在
する場合は、8個のメモリ・バンク130が存在するこ
とになる。8個のメモリ・バンク130は100hex
バイト・アドレスごとにインタリーブされる。2個のG
MC150は全ての大域バス・アドレスに応答する。
【0042】GMS112内の2個のGMCが各々25
6メガバイトのメモリを有すると、メモリはバイト・ア
ドレス20000000hexで循環する。
【0043】GMS112内の2個のGMCが各々12
8メガバイトのメモリを有すると、メモリはバイト・ア
ドレス10000000hexで循環する。
【0044】2個のGMC150の一方が256メガバ
イトを有し(特にこのGMC150は最も低い大域バス
・アドレスに応答する)、他方のGMC150が128
メガバイトを有すると、128メガバイトを有するGM
C150は256メガバイトを有するGMC150より
も早く循環し始める。これにより128メガバイトを有
するGMC150が循環を開始するポイントで始まるメ
モリ空間内に、"ホール"(hole)が生成される。
【0045】この場合は、400000hexよりも大
きく、1000000hexよりも小さな大域バス・ア
ドレスに対し、最下位アドレス・ビットが20から3F
の大域バス・アドレスは、128メガバイトを有するG
MC150の別称となる。
【0046】本発明の実施例では、上述のメモリ・サイ
ズの使用を想定する。異なるメモリ・サイズを有するメ
モリ・カードが本発明の別の実施例において使用され
る。
【0047】3.大域メモリ・カード(GMC) GMC150は大域バス116上のアドレスをデコード
し、自身のアドレス空間にアドレスされる要求(メモリ
読出し及び書込みなど)に応じる責務を負う。GMC1
50がそのアドレス空間を決定する方法については既述
した。アドレスされるGMC150が現大域バス・サイ
クルに応じることができる場合は、これはACKを生成
し応答する。アドレスされるGMC150が応答できな
い場合は(飽和状態かロック状態の際)、NACKによ
り応答する。GMC150は大域バス116に直接接続
される。GMC150は4つの方法で大域バス116と
対話する。
【0048】第1に、GMC150はメモリ書込みのた
めのアドレス及びデータを受諾する。上述のように、1
ワードは256ビットに相当する。メモリ書込みに対
し、メモリ内のワードは8個の32ビット・データ・ス
ライスに区分される。メモリ書込み(書込みサイクルと
も称される)では、ワード内の1個或いはそれ以上のデ
ータ・スライスにデータを書き込む。
【0049】スライス内の特定のバイトはメモリ書込み
の間に書き込まれる。しかし、GMC150はこうした
メモリ書込みを、読出し変更書込みサイクルとして達成
する。すなわち、GMC150は適切なメモリ・バンク
130からフル(full)・ワードを読み出す。次
に、GMC150は適切なバイトを変更し、そのワード
をメモリに書き戻す。読出し変更書込みサイクルに関連
するオペレーションは不可分である。
【0050】各メモリ書込みにおいて、GMC150は
エラー訂正コード(ECC)を計算し、メモリに記憶す
る。
【0051】第2に、GMC150はメモリ読出しのた
めのアドレスを受諾する。メモリ読出しは常に大域バス
116にフル・ワードを返却する。
【0052】大域バス116からメモリ読出しを受諾
後、適切なGMC150が適切なメモリ・バンク130
からアドレスされたデータを読み出す。次に、GMC1
50は大域バス116を要求する。大域バス116を受
け取ると、GMC150は大域バス116を使用してデ
ータを返送する。
【0053】通常の読出し(すなわち1ワードの返却を
要求するメモリ読出し)の他に、GMC150は2、4
及び8順次ワードのブロック読出しも実行する。ブロッ
ク読出しでは、メモリ要求はブロック読出しの開始アド
レス及び読み出しワード数を含む。適切なGMC150
が、ブロック読出しにより要求されるワードを、これら
が使用可能状態になると返却する。
【0054】アドレス制限がブロック読出しに適用され
る。これらのアドレス制限については後述する。
【0055】GMC150は各読出しにおいてECCを
チェックする。GMC150はデータ・エラー・ステー
タスを大域バス116に各メモリ読出し応答と共に返却
する。これは適切であれば、既に訂正済みである。
【0056】第3に、GMC150はメモリ・ロック
(memory lock) (メモリ・ロック・サイクルとも称さ
れる)を達成する。メモリ・ロックを支援するために、
メモリ読出し及び書込みは大域アドレス・バスの一部と
して、ロック・ビットを含む。
【0057】メモリ・ロックには2つのモードがある。
ロック・モードはパワー・アップ時に構成され、コンピ
ュータ104をリセットすることによってのみ変更可能
である。
【0058】ロック・モード1は以下のように動作す
る。メモリ・ロケーションをロックするために、リクエ
スタ(プロセッサ120など)はロック・ビットのセッ
トと共にメモリ・ロケーションを読み出す。このメモリ
・ロケーションは、メモリ・ロケーションをロックした
リクエスタ(ロッキング・リクエスタとも称される)を
除く全てのリクエスタにとって、使用不可である。特
に、GMC150は、ロック・メモリ・ロケーションへ
のメモリ・アクセスがロッキング・リクエスタからのも
のでない場合には、これら全てをNACK(すなわち否
定応答)する。それに対し、GMC150は、ロッキン
グ・リクエスタからのロック・メモリ・ロケーションへ
の全てのメモリ・アクセスをACK(すなわち肯定応
答)する。引き続きロッキング・リクエスタはメモリ・
ロケーションにロック・ビットのセットを書き込むこと
により、そのメモリ・ロケーションをロック解除する。
ここでアドレスされるGMC150は、新たなアクセス
を受諾できるときのみACKで応答するが、この発行は
ロック・オペレーションとは独立である。特に、GMS
112は、ロッキング・リクエスタが各々のロック・メ
モリ・ロケーションをアクセスする際、常にACKを受
信することを保証する。
【0059】各ロック・ロケーションに対してタイム・
アウトが維持される。タイム・アウトにより決定される
所定の時間後、ロック・ロケーションは自動的にロック
解除される。
【0060】ロック・モード2は以下のように動作す
る。メモリ・ロケーションをロックするために、リクエ
スタはロック・ビットのセットと共にメモリ・ロケーシ
ョンを読み出す。適切なGMC150がメモリ・ロケー
ションに存在するデータを読出しリクエスタに返却し、
次にメモリ・ロケーションのデータを全て1にセットす
ることにより、不可分のテスト及びセット・オペレーシ
ョンを達成する。このメモリ・ロケーションはその直後
に、全てにとって使用可能となる。
【0061】第4に、GMC150は自身固有のメモリ
をリフレッシュする。メモリ・リフレッシュ・パルス
(すなわちデータの保全性を維持するためのDRAMリ
フレッシュ・サイクル)は大域バス116上には生成さ
れない。
【0062】図2はGMC150を更に詳細に表す。理
解を容易にするため、図2では1個のGMC150だけ
を示してある。
【0063】上述のように、GMC150は各々、共通
インタフェース124、4個の同一であるが独立のメモ
リ・バンク130、及び共通インタフェース124及び
メモリ・バンク130に接続されるローカル・バス12
2を含む。
【0064】ローカル・バス122は、ローカル・デー
タ・バス122A及びローカル・アドレス・バス122
Bを含む。ローカル・データ・バス122Aは256本
のデータ・ライン224、64本のECCライン22
6、及び8本のWRENライン228を含む。ローカル
・アドレス・バス122Bは、24本のアドレス・ライ
ン230、R/Wライン232、4本のBLENライン
234、8本のPIDライン236、2本のPTAGラ
イン238、8本のMIDライン240、及び2本のM
TAGライン242を含む(MID240及びMTAG
242は読出し応答と共に返却される)。ローカル・バ
ス122の上記ラインに関する一般的定義及び動作はよ
く知られている。従って、本発明の構成及び動作を説明
するのに必要となる範囲において、ローカル・バス12
2の上記ラインについて簡単に述べることにする。
【0065】共通インタフェース124及びメモリ・バ
ンク130については、次のセクションで説明する。
【0066】3.1 共通インタフェース 図2に示すように、共通インタフェース124はローカ
ル・バス122上において、メモリ・バンク130と対
話する。また、共通インタフェース124は制御ライン
201上においても、メモリ・バンク130と対話す
る。
【0067】制御ライン201は4本のGM_LDMA
Rライン202、4本のGM_GRANTライン20
4、4本のGM_REFRESHライン206、4本の
GM_ECLCLKライン208、4本のGM_NEA
Rライン210、4本のGM_READYライン21
2、4本のGM_REQライン214、4本のGM_C
LRREFライン216、及び4本のGM_RESET
ライン218を含む。制御ライン201は対称的にメモ
リ・バンク130に接続される。例えば、GM_LDM
ARライン202はGM_LDMAR0、GM_LDM
AR1、GM_LDMAR2、GM_LDMAR3を含
み、これらはそれぞれのメモリ・バンク0、メモリ・バ
ンク1、メモリ・バンク2、及びメモリ・バンク3に接
続される。
【0068】制御ライン201の一般的な定義及び作用
はよく知られている。従って、ここでは制御ライン20
1の詳細に関しては、本発明の構成及び動作を述べる上
で必要な範囲にとどめる。
【0069】共通インタフェース124は以下の機能を
達成する。
【0070】第1に、共通インタフェース124は大域
バス116上のアドレスをデコードする。大域バス11
6上のアドレスが共通インタフェース124にアドレス
され(すなわち共通インタフェース124のGMC15
0が、大域バス116上のアドレスに応答する)、且つ
共通インタフェース124がメモリ・アクセスを処理す
る準備が整っている場合に、共通インタフェース124
は大域バス116上にACK信号を生成する。共通イン
タフェース124が準備されていないか、或いは大域バ
ス116上のアドレスがロック・メモリ・ロケーション
に属する場合は、共通インタフェース124はNACK
信号を大域バス116上に生成する。
【0071】大域バス116上のアドレスが共通インタ
フェース124にアドレスされない場合は、共通インタ
フェース124は作用しない。
【0072】大域バス116上のACYCLEライン1
64は、1クロック・サイクルの間にアサートされ、大
域バス116上のアドレス・サイクルを特定する。同一
のクロック・サイクルにおいて、GMC150は大域バ
ス116のアドレス・ライン162からアドレス情報を
ラッチする。
【0073】アドレス情報は、プロセッサIDフィール
ド(PID)236、プロセッサ・タグ・フィールド
(PTAG)238、ブロック長フィールド(BLE
N)234、読出し変更書込みフィールド(RMW)、
読出し/書込み(R/W)フィールド、アドレス・パリ
ティ(上述)及びロック・フィールドを含む。
【0074】RMWはGMC150が読出し変更書込み
オペレーションを実行しなければならないか、すなわち
フル・データ・スライスより少ない領域に書き込むかど
うかを特定する。ここで1ワードは256ビットで構成
され、32ビット・スライスに区分されることを再度述
べておく。
【0075】アドレス・サイクルがメモリ読出しに関す
る場合、GMC150は返却データを識別するために、
返却データと共にPID236及びPTAG238を、
メモリ識別(MID)240及びメモリ・タグ(MTA
G)242の形式で返却する。
【0076】BLEN234はブロック読出しの間に読
み出すワード数を特定する。読み出すワード数は2のn
乗に等しく、ここでBLEN234がnを特定する。n
がゼロの場合、メモリ読出しはランダム読出しと称され
る。nがゼロでない場合は、メモリ読出しはブロック読
出しである。
【0077】アドレス・サイクルがメモリ書込みに関す
る場合、PID236、PTAG238、及びBLEN
234は続く処理において無視される。GMC150は
アドレス・サイクルに続くサイクルの間に、大域バス1
16のデータ・ライン160上のデータ情報をラッチす
る(すなわちACYCLE164後の2サイクルがアサ
ートされる)。
【0078】データ情報はデータ・ワード(32バイ
ト)、データ・パリティ(上述)、及び32ビットのバ
イト使用可能フィールド(BEN)を含む。BEN内の
ビットとデータ・ワード内のバイトとの間には、1対1
の対応が存在する。BENはデータ・ワード内の何れの
バイトをメモリに書き込むかを示す。
【0079】第2に、共通インタフェース124は、大
域バス116からのメモリ・アクセス(すなわちメモリ
読出し及び書込み)をバッファする(すなわち記憶す
る)。本発明の実施例では、共通インタフェース124
は、最大8ワードとこれらをメモリ・バンク130に書
き込むためのバンク当たりのアドレス、及び最大8ワー
ドとメモリ読出しに応答するためのメモリ・バンク13
0当たりの適切なMID及びMTAGSをバッファす
る。
【0080】第3に、共通インタフェース124は読出
し応答のために、大域バス116を要求及び使用する。
特に、共通インタフェース124は返却するデータを読
み出すと、GM_REQ214をアサートして大域バス
116を要求する。
【0081】共通インタフェース124は次に、大域バ
ス168がGM_GRANT204をアサートするのを
待つ。GM_GRANT204がアサートされると、共
通インタフェース124は大域バス116に1クロック
・サイクルの間、データ224、データ・パリティ、M
ID240、及びMTAG242を駆動する。この間、
共通インタフェース124は大域バス116上にDCY
CLE164をアサートする。リクエスタはDCYCL
E164がアサートされる間、データ224、データ・
パリティ、MID240、及びMTAG242を受諾す
る。
【0082】第4に、共通インタフェース124はメモ
リ・バンク130へのメモリ・アクセスをスケジュール
する。図2に示すように、共通インタフェース124に
よるメモリ・バンク130へのアクセスは、GM_RE
ADY212、GM_LDMAR202、GM_REQ
214及びびGM_GRANT204を介して制御され
る。
【0083】4個のメモリ・バンク130の内の1個に
対しメモリ・アクセスをスケジュールするために、共通
インタフェース124はラッチされる大域バス・アドレ
スをデコードし、メモリ・アクセスを実施するメモリ・
バンクを決定する。説明のために、メモリ・アクセスは
メモリ・バンク130Aに対し実施されるものとする。
【0084】メモリ・バンク130AはGM_READ
Y0をアサートし、次に共通インタフェース124がG
M_LDMAR0を1クロック・サイクルの間アサート
する。アドレス情報230、232、234、236、
238、240、242はGM_LDMAR0に続くク
ロック・サイクルの間、ローカル・アドレス・バス12
2B上において有効であり、書込み情報224、22
6、228はGM_LDMAR0に続く第2番目のクロ
ック・サイクルの間有効となる。
【0085】GM_LDMAR0に続く第2のクロック
サイクルの間に、共通インタフェース124は32ビッ
ト・スライスに対応し、大域バス116からのBENを
論理的にANDすることにより、WREN228を生成
する。WREN228はメモリ・バンク130Aがメモ
リ書込みを実行するとき、メモリのその32ビット・ス
ライスへの書込みを許可或いは禁止する。
【0086】大域バス116上のRMWがアサートされ
ると、共通インタフェース124は読出し変更書込みサ
イクルを実行する。読出し変更書込みサイクルの間、共
通インタフェース124は適切なバイトに組合せ、その
結果のデータが書込みサイクルにおいてメモリ・バンク
130Aに書き戻される。
【0087】読出しサイクルの場合は、LDMAR0に
関連するデータ・サイクルは存在しない。
【0088】メモリ・バンク130AはそのGM_RE
ADY0をデアサート(deassert)し、メモリ・アクセ
スを達成するための時間を提供する。メモリ・バンク1
30Aはそれ自身新たなアドレス・サイクルを受諾可能
なときに、そのGM_READY0をアサートする。本
発明の実施例では、メモリ・バンク130は各々8クロ
ック・サイクルごとに持続するメモリ・アクセスを受諾
できる。このように、40MHzでは、メモリ・バンク
130当たりの最大データ・バンド幅は160メガバイ
ト/秒となる。4個のメモリ・バンクが動作している場
合、40MHz時の各GMC150の総計最大バンド幅
は640メガバイト/秒である(持続的非ページ・モー
ドの書込み及び書込みに対し)。理論的には、これはロ
ーカル・バス122のバンド幅の半分である。しかしな
がら、現実的な制限により、426メガバイト/秒より
も多少大きな読出し或いは書込みサイクルをスケジュー
ルすると、ローカル・バス122は飽和する。
【0089】メモリ・アクセスが読出しの場合、メモリ
・バンク130Aは自身のGM_REQ0をアサートす
ることにより、ローカル・バス122を要求する。ロー
カル・バス122上の通信量は、共通インタフェース1
24上に配置されるローカル・バス調停器(図2では図
示されていない)により制御される。共通インタフェー
ス124はGM_GRANT0をアサートし、メモリ・
バンク130Aにローカル・バス122を提供する。
【0090】メモリ・バンク130AはGM_GRAN
T0がアサートされる間、有効データ224、226を
ローカル・バス122上に駆動する。
【0091】第5に、共通インタフェース124はメモ
リ・バンク130に対し、リフレッシュ・サイクルをス
ケジュールする。メモリ・バンク130はリフレッシュ
・サイクルとメモリ・サイクルの間で潜在的な衝突が存
在するとき、これを調停する。
【0092】共通インタフェース124に含まれるリフ
レッシュ・スケジューラ(図2では図示されていない)
は、各メモリ・バンク130に対するリフレッシュ・サ
イクルをスケジュールするために使用される。リフレッ
シュ・スケジューラは、メモリ・バンク130がリフレ
ッシュ・サイクルを実行する時間を有するまで、メモリ
・バンク130に対するGM_REFRESH206を
ロウ・レベルに保持する。メモリ・バンク130がリフ
レッシュ・サイクルを完了すると、メモリ・バンク13
0はそのGM_CLRREF0(すなわちクリア・リフ
レッシュ)をアサートする。
【0093】第6に、共通インタフェース124は、メ
モリ・バンク130への書込みを実行するとき、ECC
226を計算する。
【0094】第7に、共通インタフェース124は、メ
モリ・バンク130からの読出し応答を受諾するとき、
ECC226をチェックする。共通インタフェース12
4は大域バス116にデータを返却する前に、単一ビッ
ト・エラーを訂正する。共通インタフェース124は大
域バス116に、未変更のダブル・ビット・エラーを返
却する。
【0095】第8に、共通インタフェース124は大域
バス116に対し、GMC150を物理的に相互接続す
る。共通インタフェース124はまた、必要なレベルの
変換及びクロックのデスキュー(deskew)を実行
する。
【0096】3.2 メモリ・バンク GMC150は各々4個の独立なメモリ・バンク130
を含む。メモリ・バンク130はローカル・バス122
から入力を受信する。メモリ・バンク130はまた、ロ
ーカル・バス122に出力を提供する。表2はこれらの
入力のリスト、表3はこれらの出力のリストである。特
定の周波数、時間(単位:ナノ秒)、及び電圧値(ボル
ト)が説明のために提供されている。Vil及びVol
は最大値、Vih及びVohは最小値である。
【0097】
【表2】
【0098】
【表3】
【0099】メモリ・バンク130は上述のように、メ
モリ・アクセス・サイクル及びメモリ・リフレッシュ・
サイクルのために独立にスケジュールされる。メモリ・
バンク130は相互にまた共通インタフェース124
と、ローカル・バス122の取得を争う。
【0100】図3及び図4はメモリ・バンク130のブ
ロック図である。理解を容易にするため、メモリ・バン
ク制御ユニット378及びRAS/CASアドレス・マ
ルチプレクサ376は、図3及び図4の両方に示されて
いる。但し、図3及び図4は1つのメモリ・バンク13
0だけを示すものである。
【0101】メモリ・バンク130は各々、レジスタ部
360、制御部362、及びDRAM部364を含む。
【0102】レジスタ部360はレジスタ366、36
8、370、372、376、394を含み、これらは
メモリ・バンクとローカル・バス122との間のインタ
フェースを行う。レジスタ366、368、370、3
72、376、394はデータ及びローカル・バス12
2からのアドレスをラッチし、ローカル・バス122に
データを駆動する。
【0103】制御部362はメモリ・バンク制御ユニッ
ト(CU)378を含む。CUは状態マシン379、及
びレジスタ部360及びDRAM部364を制御する再
ドライバを含む。
【0104】DRAM部364はダイナミック・ランダ
ム・アクセス・メモリ380を含む。
【0105】図3及び図4に示すように、数多くの信号
がローカル・バス122、レジスタ部360、制御部3
62、及びDRAM部364との間に存在する。これら
の信号の一般的な定義及び動作に関してはよく知られて
いる。従って、簡約化のため、これらの信号については
本発明の構成及び動作を説明する上で必要な範囲で述べ
ることにする。
【0106】メモリ・バンク130の動作は次の様であ
る。
【0107】CU378はメモリ・バンク130がメモ
リ・サイクルを受諾可能なとき、GM_READY21
2をアサートする。これはGM_RESET218のア
サートに続き最初に発生する。CU378は共通インタ
フェース124がGM_LDMAR202を1サイクル
の間アサートする際、GM_READY212をデアサ
ートする。GM_LDMAR202はアドレス・サイク
ルを示す。アドレス・サイクルの間、アドレス・レジス
タ366はローカル・アドレス・バス122B上のアド
レス230をラッチする。CU378はアドレス・レジ
スタ366内のアドレス230が、DRAM380をア
クセスするために、もはや必要がなくなるとGM_RE
ADY212を再アサートする(すなわち関連するメモ
リ・アクセスの完了後)。
【0108】GM_LDMAR202がアサートされて
から1クロック後に、CU378はLOCMAR302
をアサートする(従ってLOCMAR302はGM_L
DMAR202の1クロック遅延である)。LOCMA
R302はCU378がDRAM380のメモリ・サイ
クルをスケジュールするために使用される。LOCMA
R302はアドレス・レジスタ366のためのクロック
・イネーブルとしても使用される。
【0109】メモリ書込みのために、LOCMAR30
2がアサートされてから1クロック後に、書込み情報
(すなわちデータ224、ECC226、及びWREN
228)がデータ・レジスタ370へラッチされる。デ
ータ・レジスタ370は両方向レジスタ化トランシーバ
であり、メモリ・バンク130からの読出し応答が読出
し応答データに影響を及ぼすこと無く保留状態である場
合に、書込みサイクルの発生が可能となる。
【0110】読出し応答サイクルの保留が存在しない場
合、CU378はMOVID304をアサートし、PI
D236及びPTAG238をPID/PTAGレジス
タ372からMID/MTAGレジスタ374に転送す
る(PID236及びPTAG238はローカル・アド
レス・バス122Bから先にPID/PTAGレジスタ
372へラッチされる)。MID/MTAGレジスタ3
74内に存在する間に、PID236及びPTAG23
8はそれぞれMID240及びMTAG242へ呼び出
される。
【0111】読出しサイクルでは、MID240及びM
TAG242は保持され、引き続きデータ244及びE
CC226と共に返却される。書込みサイクルでは、M
ID240及びMTAG242は次のメモリ・サイクル
によってオーバライトされる。
【0112】読出し応答サイクルが保留状態の場合、C
U378はMOVID304をアサートしない。従っ
て、PID236及びPTAG238は読出し応答サイ
クルまで、PID/PTAGレジスタ372内に維持さ
れる。読出し応答サイクルの間に、PID236及びP
TAG238はMID/MTAGレジスタ374に転送
される。ここで読出し応答が保留状態の間に、何れの書
込みサイクルも発生しない点に注意する必要がある。も
し読出し応答が保留状態の際に新たなメモリ読出しがス
ケジュールされると、CU378は保留中の読出し応答
の読出しサイクルが発生するまで、GM_READY2
12をアサートしない。読出しサイクルはMID/MT
AGレジスタ374及びデータ・レジスタ370を次回
の読出しのために空の状態にする。
【0113】CU378はGM_REQ214をアサー
トして、読出し応答のためにローカル・バス122を要
求する。特に、GM_REQ214は新たなデータ32
4がデータ・レジスタ370にラッチされる1クロック
前にアサートされる。なぜなら、この時間は、共通イン
タフェース124がGM_GRANT204をCU37
8に対しアサートする以前に経過する最小時間であるか
らである。
【0114】共通インタフェース124はGM_GRA
NT204を2クロック・サイクルの間、ロウに保持す
る。CU378はGM_GRANT204がアクティブ
になると、即座にGM_REQ214をデアサートす
る。
【0115】メモリ・バンク130はGM_GRANT
204がロウとなった直後から次のクロック・サイクル
の間、データ・レジスタ370からローカル・バス12
2に有効読出し応答データ(すなわちデータ224、E
CC226、MID240、及びMTAG242)を駆
動するために要求される。これは共通インタフェース1
24へのデータのセット・アップ時間が最小の1クロッ
ク・サイクルを要するからである。
【0116】次に、メモリ・バンク130がGM_GR
ANT204の第2クロックのエッジの直後に、そのデ
ータ・レジスタ370をトライステートするために要求
される。これはGM_GRANT204がまだバンク1
30によりアクティブと見なされても実行される。これ
によりローカル・バス122がトライステートに戻るの
に要する1クロックを待つことなく、異なるメモリ・バ
ンク130に対する新たな読出し応答サイクルがスケジ
ュールされる。
【0117】ローカル・バス122上の信号の伝搬遅延
はおおよそクロック・サイクルの半分であり、データ・
レジスタ370は読出し応答オペレーションの間に非同
期にGM_GRANT204をサンプリングした後、1
クロック・サイクルの間ターン・オンしなければならな
い。そして次に、GM_GRANT204の続くクロッ
ク・エッジ後に同期式にターン・オフする。
【0118】更に、データ・レジスタ370は40個の
レジスタ(各々は8ビットを有する)を含み、これらは
GMC150を含む基板上には集中化されない。従っ
て、データ・レジスタ出力イネーブル396は、GM_
GRANT204に大きな負担を負わせることなく、4
0個のレジスタを即座に駆動しなければならない。GM
_GRANT204(或いは他のローカル・バス信号)
に大きな負担が掛かると、GM_GRANT204はシ
ステム・クロック(すなわちSYSCLK)に対して大
きくスキューされる。更に、データ・レジスタ370は
速いターン・オン及びターン・オフ時間を必要とする。
【0119】本発明の実施例では、GMC150は上述
の要求を満たすために次に示すように実現される。
【0120】GM_REQ214は非反転大電流ドライ
バ(74FCT244Aなど)に供給される。非反転大
電流ドライバの出力はBREQ414と称され、メモリ
・バンク130にとってローカルである。
【0121】BREQ414は8出力及び出力イネーブ
ルを有する8ビット・レジスタ(74F374など)の
入力に供給される。8ビット・レジスタの8出力は、デ
ータ・レジスタ370に含まれる40個のレジスタに対
する出力イネーブルを表す。8出力イネーブルの各々は
8個から10個の分散される負荷を有し、グランドとの
間でおおよそ100オーム時に3ボルトのバイアス電圧
で終端される。
【0122】GM_GRANT204は8ビット・レジ
スタの出力イネーブルに供給される。CU378がGM
_REQ214をアサートし、ローカル・バス122を
要求する際、8ビット・レジスタへの入力(すなわちB
REQ414)はロウとなるが、8ビット・レジスタは
トライステート状態を維持する。なぜなら、出力イネー
ブル(すなわちGM_GRANT204)がハイだから
である。終端器は8ビット・レジスタの出力をハイ論理
レベルに維持する。こうしてデータ・レジスタ370は
トライステートされる。
【0123】共通インタフェース124がGM_GRA
NT204をロウにすると、8ビット・レジスタはター
ン・オンし、データ・レジスタ370が使用可能とな
り、ローカル・バス122を駆動する(8ビット・レジ
スタのターン・オン時間+基板の伝搬遅延+データ・レ
ジスタ370のターン・オン時間の後)。
【0124】8ビット・レジスタからの出力イネーブル
信号の保全性は、100オームの終端器により維持され
る。これはプリント基板(PCB)のインピーダンスに
非常に近い値である。
【0125】GM_REQ214はGH_GRANT2
04に続くクロックでハイとなり、これによりBREQ
414がハイとなる。続くクロックで出力イネーブルが
8ビット・レジスタによりハイとなる。出力イネーブル
はGM_GRANT204が再びハイとなるとき常にト
ライステートとなり、3ボルトに安定する。これにより
データがローカル・バス122上にトライステートされ
る。これは8ビット・レジスタの伝搬遅延と、基板伝搬
遅延と、立ち上がりエッジ後のデータ・レジスタ370
のターン・オフ時間との和だけ遅延される。データのタ
ーン・オン時間及びターン・オフ時間は、GM_REQ
214信号及びGM_GRANT204信号の負荷を最
小化することにより最小化される。
【0126】メモリ・バンク・オペレーション 上述のように、CU362は状態マシン379を含み、
これはレジスタ部360及びDRAM部364を制御す
る。
【0127】メモリ・バンク130のオペレーションは
更に図5から図10を参照しながら、このセクションで
説明される。これらの図は状態マシン379のオペレー
ションについて表している。状態マシン379のオペレ
ーションに関し、全てがこのセクションで述べられては
いないが、当業者にはここで述べられている説明を基に
本発明の全ての状態マシン379を実施することが可能
であろう。
【0128】図5から図10において、"!"は論理NO
Tを、"&"は論理ANDを、また"#"は論理ORを表
す。
【0129】CU362がGM_READY212及び
GM_REQ214を生成する様子を、図5及び図7を
それぞれ参照して説明する。
【0130】図5は状態マシン379のGM_READ
Y状態図402を表す。GM_READY状態図402
によれば、CU378はGM_RESET218が共通
インタフェース124によりアサートされる時、RDY
0状態404に入る。RDY0状態404の間、CU3
78はGM_READY212をアサートする。CU3
78はGM_LDMAR202がアサートされない限
り、RDY0状態404にとめる。
【0131】共通インタフェース124がGM_LDM
AR202をアサートすると、CU378はRDY1状
態406に入る。RDY1状態406の間は、CU37
8はGM_READY212をデアサートする。
【0132】CU378は(1)WRREQ408(す
なわち書込み要求)が状態S8W或いはS12Wにおい
てアサートされるか、(2)BLKRD410(すなわ
ちブロック読出し)が状態S1の間にアサートされてい
ないか、(3)BLKRD410がアサートされず、R
DREQ412(すなわち読出し要求)が状態S8R或
いはS12Rの間にアサートされず、BREQ414が
アサートされていないかGM_GRANT204がアサ
ートされるかするまでRDY1状態406にとめる。
【0133】図7は状態マシン379のGM_REQ状
態図550を表す。GM_REQ状態図550によれ
ば、CU378はGM_RESET218が共通インタ
フェース124によりアサートされると、REQ0状態
552に入る。REQ0状態552の間、CU378は
GM_REQ214をデアサートする。
【0134】WRITE599(これはLOCMAR3
02がアクティブの際にGM_WRITE232がラッ
チされた信号)が状態S4或いはS9Rにおいてアサー
トされないとき、CU378はREQ1状態554に入
る。REQ1状態554の間、CU378はGM_RE
Q214をアサートする。CU378は共通インタフェ
ース124がGM_GRANT204をアサートするま
で、REQ1状態554に留まる。GM_GRANT2
04のアサートにより、CU378はREQ0状態55
2に復帰する。
【0135】上述の説明から明白なように、CU378
は本発明の状態マシン379により唯一使用される特定
の信号を生成する。すなわち、これらの信号はCU37
8の外部へは伝搬されない。WRREQ48及びRDR
EQ412はこれらの信号の内の2つを表す。CU37
8がWRREQ408及びRDREQ412を生成する
様子は、図6を参照して後に説明する。
【0136】図6は状態マシン379のローカル要求状
態図502を表す。ローカル要求状態図502によれ
ば、CU378は共通インタフェース124がGM_R
ESET218をアサートすると、LREQ0状態50
4に入る。CU378はLOCMAR302がアサート
されない間は、LREQ0状態に留まる。
【0137】LOCMAR302及びGM_WRITE
232(R/W232とも称される)がアサートされる
と、CU378はLREQ1状態504に入る。LRE
Q1状態506の間に、CU378はWRREQ408
を生成する。
【0138】LOCMAR302がアサートされ、GM
_WRITE232(R/W232とも称される)がア
サートされないか、或いはINCADD510(すなわ
ちCU378がブロック読出しオペレーションをスケジ
ュール及び処理するために使用するインクリメント・ア
ドレス信号)がアサートされると、CU378はLRE
Q2状態508に入る。LREQ2状態の間に、CU3
78はRDREQ412を生成する。
【0139】図8、図9及び図10はCU378がメモ
リ読出し、書込み、及びリフレッシュ・オペレーション
を実行する様子を表す。特に図8は状態マシン379の
ランダム・アクセス状態図(ランダム・アクセス或いは
メモリ・アクセス・サイクルとも称される)602及び
リフレッシュ状態図(リフレッシュ・サイクルとも称さ
れる)604を表す。図9は状態マシン379のページ
・モード読出し状態図(ページ・モード読出しサイクル
とも称される)702を表す。図10は状態マシン37
9のページ・モード書込み状態図(ページ・モード書込
みサイクルとも称される)802を表す。
【0140】本発明の実施例では、メモリ・サイクルに
おけるRAS(行アドレス信号)プリチャージ時間の影
響を最小化するために、DRAM380の高速アクセス
・ページ・モードが使用される。ページ・モードは3つ
の方法により使用される。すなわち、ブロック・サイク
ル、近傍(near)読出しサイクル、及び近傍書込み
サイクルである。GMC150はCAS(列アドレス信
号)ビッフォアRASリフレッシュを使用する。従って
リフレッシュ・アドレス・カウンタの必要はない。
【0141】最初に図8を参照すると、CU378は共
通インタフェース124がGM_RESET218をア
サートすると、S0 606に入る。S0606の間、
リフレッシュ・サイクル604はメモリ・アクセス・サ
イクル602よりも高い優先度を取る。
【0142】CU378はLOCMAR302がアサー
トされるか、書込み要求または読出し要求が保留の際
(すなわちWRREQ408またはRDREQ412が
アサートされる)、S0 606からS1 608(メモ
リ・アクセス・サイクルはS1608から開始する)に
移行する。LOCMAR302 がアサートされると、
CU378はGM_WRITE232をチェックするこ
とにより、オペレーションがメモリ読出しか或いは書込
みかを決定する。GM_WRITE232はバッファさ
れないローカル・バスR/W信号232を表す。
【0143】メモリ読出しが実行される場合は(すなわ
ちLOCMAR302がアサートされ、且つGM_WR
ITE232がアサートされないか、或いはRDREQ
412がアサートされる)、CU 378はS1 608
に移行する。但し、これは読出し応答サイクルが保留状
態でないときに限る。CU378は読出し応答サイクル
が保留かどうかを、BGNT650(すなわちCU37
8がローカル・バス122の制御を受け取る際にCU3
78がアサートするバス・グラント信号)により判断す
る。BGNT650がアサートされる場合は、読出し応
答サイクルは保留状態でない。BGNT650がアサー
トされることは、CU378がGM_GRANT204
がアサートされるのを待機していないことを示す。CU
378はCU378がGM_REQ214をアサートす
るのと同じサイクルにおいて、BGNT650をデアサ
ートする。BGNT650はGM_GRANT204が
読出し応答サイクルの間にアサートされるまで、アサー
トされない。
【0144】メモリ書込みが実行される場合は(すなわ
ちLOCMAR302及びGM_WRITE 232が
アサートされる)、CU378はS1 608に無条件
に移行する。
【0145】メモリ書込みが実行される場合は、S1
608 に続きDRAM380へデータを駆動するため
にデータ・レジスタ370が使用可能となる。また、R
AM_WRITE388も続くサイクルにおいてDRA
M380へアサートされる。ここで書込みデータは、G
M_WRITE232のアサートによりメモリ書込みオ
ペレーションが指定される場合に、LOCMAR302
(すなわちLOCMAR302のアサート)に続くサイ
クルにおいて、データ・レジスタ370へラッチされる
点に注意を要する。
【0146】本発明の実施例では、DRAM380は1
或いは2メガバイトを有するシングル・イン・ラインの
メモリ・モジュール(SIMM)上に構成される。各S
IMMは256ビットのデータ・ワードのスライスであ
り、各スライスは32データ・ビット及び8ECCビッ
トを含む。上述のように、1ワードは32バイト(或い
は8スライス)を含む。メモリ書込みの間に、32ビッ
トのBENが書き込まれるワードと関連され、BEN内
のビットとワード内のバイトとの間には1対1の対応が
存在する。特に、BEN内のビットはワード内の対応す
るバイトがDRAM380に書き込まれる予定の場合
は、イネーブルとなる。
【0147】GMB_WREN228は8ビットの書込
みイネーブルを含む。特定のワードを含む書込みオペレ
ーションに対し、書込みイネーブルはワード内のスライ
スに対応する。スライスに対応する書込みイネーブル
は、そのスライス内のバイトに対応するBEN内の4ビ
ットを論理的にANDすることにより生成される。共通
インタフェース124がこれを実施する。すなわち、メ
モリ・バンク130は単にGMB_WREN228を認
識するに過ぎない。WREN328はGMB_WREN
228がラッチされたものである。
【0148】メモリ書込みは1スライスの単位で行われ
る。メモリ書込みの間、スライスはWREN328内の
対応する書込みイネーブルがアサートされていればDR
AM380に書き込まれる。RAM_WRITE388
は、書込みサイクルの適切な時点において、DRAM3
80に対しアサートされる。読出し変更書込みオペレー
ションは、前述のように個々のバイトを書き込むために
実行される。
【0149】メモリ読出しが実行される場合、WREN
328は無視され、CU378はS3 612に続くサ
イクルにおいて、RAM_READ 392をアサート
する。S1 608、S2 610、S3 612の間、
データ・レジスタ 370が使用可能となり、RAS3
82A、382B、及びRASEN698(すなわち行
アドレスをDRAM380に送るために、アドレス・マ
ルチプレクサ376に対しアサートされる行アドレス信
号イネーブル)がアサートされる。DRAM380読出
し或いは書込み信号(それぞれRAM_READ392
或いはRAM_WRITE388)もまた、WRITE
599及びWREN228の状態に基づきアサートされ
る。
【0150】CU378はS4 614及びS5 616
の間に、DRAM380に対しCAS386をアサート
する。前述のように、DRAM380はSIMM上に、
1メガバイト或いは2メガバイトの深さで構成される。
各メガバイトは"サイド"と称される。ローカル・アドレ
ス・バス122B上のアドレス230のビット20は、
アクセスすべきサイドを特定する。
【0151】特に、S1 608ではCU378はDR
AS 382をアサートする。CU378はクロック・
イネーブルを有する2個のレジスタ(74FTC377
など)を含む。これらのレジスタはDRAS382を入
力として受け取る。レジスタの1方の出力はRAS1
382Aと称する。他方のレジスタの出力はRAS2
382Bと称する。レジスタに対するクロック・イネー
ブルはアドレス230のビット20から得られる。RA
S1 382AはSIMMのサイド 1を駆動し、RAS
2 382Bはサイド2を駆動する。
【0152】S2 610の間、RAS1 382A或い
はRAS2382B の一方がSIMMに駆動される。
リフレッシュ・サイクル 604が実行されると、RA
S1382A及びRAS2 382Bの両方が駆動され
て、SIMM の両サイドが一緒にリフレッシュされ
る。
【0153】ブロック読出しサイクルが実行されていな
い場合は、S2 610 においてCU378はGM_R
EADY212をアサートし、共通インタフェースにG
MC150が新たなアドレスを受信可能であることを通
知する。。
【0154】S3 612でCU 378はRASEN6
98をディスエーブルすることにより列アドレスを選択
する。メモリ読出しが実行されると、GM_REQ21
4がS4 614でアサートされる(またBGNT65
0 がデアサートされる)。GM_REQ214及びB
GNT650は、GM_GRANT204が共通インタ
フェース124によりアサートされるまで(読出し応答
サイクルを実行するため)、これらの状態を維持する。
【0155】S4 614でCU378 はページ・モー
ドに入るかどうかを決定する。GM_NEAR210或
いはBLKRD410のどちらかがアサートされていな
いと、CU378はページ・モードに入らない。現サイ
クルが書込みの場合、CU378はS5 616、S6
618及びS7 620 に移行することにより、ランダ
ム・アクセス・サイクル602を完了する。S5 61
6、S6 618及びS7 620において、CU378
はDRAS382、及びRAS1 382A或いはRA
S2382B の一方(書き込まれるSIMMサイドに
対応する方)をデアサートする。また、CU378はア
ドレス・マルチプレクサ376に対しRASEN698
をアサートし、次のメモリ・サイクルに備える。
【0156】現サイクルが読出しの場合、CU378は
S5 616、S6 618及びS7620に移行するこ
とにより、ランダム・アクセス・サイクル602 を完
了する。S5 616 においてCU378は、データ・
レジスタ370へデータをラッチする。
【0157】CU378はBLEN234がゼロよりも
大きいか、或いはGM_NEAR210がアサートされ
WRITE599がアサートされていないと、ページ・
モード読出しを実行する。こうした条件は現サイクルが
メモリ読出しであり、共通インタフェース124が次の
メモリ・アクセスが先のメモリ・アクセスと同じ行アド
レスを有することを検出したことを示す。
【0158】図9を参照すると、CU378はS7R7
04に入ることによりページ・モード読出しを処理す
る。CU378はS8R706に移行し、ここでCAS
386がデアサートされデータがデータ・レジスタ37
0にラッチされる。S12R708においてCU378
は、RDREQ412、WRREQ408或いはREF
RESH206(GM_REFRESH206とも称さ
れる)を待機する。
【0159】RDREQ412がS12R708でアサ
ートされると、CU378はS9R710に移行する
が、これは前回の読出し応答が共通インタフェース12
4により既に読み出されている場合に限る。読み出され
ていない場合は、CU378は共通インタフェース12
4がGM_GRANT204或いはREFRESH20
6をアサートするまで、S12R708に留まる。
【0160】共通インタフェース124は同時にGM_
GRANT204及びREFRESH206をアサート
し、CU378は次の読み出しサイクルが完了するまで
DRAM378をリフレッシュしない。
【0161】共通インタフェース124はREFRES
H206だけをアサートし、次にCU378はS12R
708からS13R630、S6A 632、S6 61
8、S7 620、及びS0 606に移行する。リフレ
ッシュは保留状態であるので、CU 378はS8 62
2に移行することにより、即座にリフレッシュ・サイク
ルを開始する。
【0162】CU378がS12R708に入る時にW
RREQ408がアサートされると(書込みサイクルが
保留状態であることを示す)、CU378は図10のS
8W806においてページ・モード書込みサイクルに入
る以前に、S11R714に移行する。この経路はCU
378が近傍書込みサイクル(CAS386がアサート
される)を開始する以前に3サイクルを要する。この3
サイクルは書込みデータをラッチし、データ・レジスタ
370を使用可能にし、RAM_WRITE388をD
RAM380に駆動するために必要となる。
【0163】S12R708において、RDREQ41
2がアサートされ、保留中の読出し応答サイクルが存在
しない場合、CU378はページ・モードによる次のメ
モリ読出しを実行する。ページ・モードのループはS9
R710、S10R712、S8R706、及びS12
R708を含む。CU378はS9R710及びS10
R712において、CAS386をアサートする。CU
378はS10R712においてデータをラッチする。
【0164】S10RにおいてCU378ページ・モー
ド・ループから抜け、リフレッシュが保留中か、或いは
GM_NEAR210もBLKRD410もアサートさ
れていない場合は、S13R630へ移行する。S12
R708でCU378はページ・モード・ループを抜
け、RDREQ412がアサートされていないかCU3
78がGM_GRANT204を待機中の場合は、S1
3Rへ移行する。
【0165】S10R712ではCU378はGM_N
EAR210及びBLKRD410をサンプルし、ペー
ジ・モード・ループを継続するかを決定する。GM_N
EAR210は共通インタフェース124により駆動さ
れ、ページ・モード・ループを継続するためにはS10
R712でアサートされねばならない。BLKRD41
0はCU378により生成され、ブロック読出しサイク
ルを開始するためにS4 614でアサートされ、ブロ
ック読出しサイクルを終了するために S10R712
でデアサートされる必要がある。
【0166】共通インタフェース124は0よりも大き
なBLEN234によりメモリ読出しをスケジュールす
ることにより、ブロック読出しサイクルを開始する。C
U378はBLEN234を2のn乗の数に変換する。
ここでnはBLEN234に等しい。その結果は各読出
しの後にデクリメントされる減算カウンタに記憶され
る。
【0167】BLKRD410は減算カウンタがゼロに
デクリメントされ、ページ・モード読出しが達成される
までアサート状態を維持する(ここでリフレッシュはペ
ージ・モード読出しを打ち切らないものとする)。減算
カウンタはS7R704或いはS10R712の間にデ
クリメントされる。列アドレス(CAS386に対応す
る)は続くサイクルにおいてインクリメントされ、RD
REQ412がそれに続く次のサイクルにおいてアサー
トされる。ここでS10R712においてREFRES
H206がアサートされると、CASアドレスがS13
R630においてインクリメントされ、またRDREQ
412がS6A632においてアサートされる。
【0168】図10を参照すると、CU378はGM_
NEAR210及びWRITE599がS4でアサート
されると、ページ・モード書込みを実行する。CU37
8はS7W804に入ることにより、ページ・モード書
込みを処理する。
【0169】S7W804からCU378はS8W80
6に移行し、ここでCAS386がデアサートされる。
S12W808でCU378はRDREQ412、WR
REQ408或いはREFRESH206を待機する。
S12W808においてWRREQ408がアサートさ
れると、CU378は無条件にS9W810に移行す
る。
【0170】REFRESH206がアサートされ、W
RREQ408がアサートされていない場合、CU37
8はS13R630、S6A632、S6 618、S
7 620及びS0 606と移行する。リフレッシュが
保留状態なので、CU 378はS8 622に移行する
ことによりリフレッシュ・サイクル604を開始する。
【0171】S12W808においてRDREQ412
がアサートされると(すなわち読出しサイクルが保留状
態)、CU378はS12R708でページ・モード読
出しサイクルのループに入る前にS11W814に移行
する。この経路は近傍読出しサイクル(CAS386が
アサートされる)を開始する以前に2サイクルを要す
る。2サイクルはデータ・レジスタ370を使用禁止と
し、またRAM_READ392(すなわちRAM出力
イネーブル)をDRAM380に対し駆動するために必
要となる。
【0172】S12W808においてWRREQ408
がアサートされると、CU378はページ・モードによ
る次の書込みを実行する。ページ・モード書込みループ
はS9W810、S10W812、S8W806及びS
12W808を含む。CU378はS9W810及びS
10W812においてCAS386をアサートする。
【0173】S10W812において、リフレッシュが
保留状態か或いはGM_NEAR210がアサートされ
ていない場合、CU378はページ・モード書込みルー
プを脱出し、S13R630へ移行する。CU378は
S10W及びWRREQ408がアサートされていない
場合は、S12Wにおいてページ・モード書込みループ
をブレークする。
【0174】CU378はS10W812においてGM
_NEAR210をサンプルし、ページ・モード書込み
ループを継続する。共通インタフェース124がGM_
NEAR210及びGM_LDMAR202を可能な限
り速く駆動すると、近傍書込みオペレーションが毎4ク
ロック・サイクルごとに発生する。
【0175】CU378はWRREQ408がS12W
808或いはS8W806においてアサートされると、
GM_READY212をアサートする。LOCMAR
302がS8W806においてアサートされると、S8
W806は1サイクルの間、繰り返される。LOCMA
R302がS12W808においてアサートされると、
CU378は継続する以前に1サイクルの間S8Wに移
行する。これは新たなWREN328がRAM_WRI
TE388としてDRAM380へ伝搬するための時間
を確保する。
【0176】
【発明の効果】以上説明したように、本発明によれば、
コスト的な犠牲を最小限に維持し、プロセッサの遊休時
間及びアクセス時間を最小化する、大域バスを有する多
重プロセッサ・コンピュータ・システムにおける複数バ
ンク大域メモリ・システム(GMS)が提供できる。
【図面の簡単な説明】
【図1】本発明の大域メモリ・システム(GMS)11
2を含むシステム102を表す図である。
【図2】大域メモリ・カード150のブロック図であ
る。
【図3】メモリ・バンク130のブロック図である。
【図4】メモリ・バンク130のブロック図である。
【図5】状態マシン379のGM_READY状態図4
02を示す図である。
【図6】状態マシン379のローカル要求状態図502
を示す図である。
【図7】状態マシン379のGM_REQ状態図550
を示す図である。
【図8】状態マシン379のランダム・アクセス状態図
602及びリフレッシュ状態図604を示す図である。
【図9】状態マシン379のページ・モード読出し状態
図702を示す図である。
【図10】状態マシン379のページ・モード書込み状
態図802を示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アルマンド・ガルシア アメリカ合衆国ニユーヨーク州、ヨークタ ウン・ハイツ、ラークスパー・ストリート 2821番地

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】大域バスを有する多重プロセッサ・コンピ
    ュータ・システムにおける共用メモリ・サブシステムと
    して使用するためのメモリ・システムにおいて、該メモ
    リ・システムは大域バスに結合される1個或いは複数の
    メモリ・カードを含み、該メモリ・カードは独立にアク
    セスされ、該メモリ・カードの各々は、 (1)大域バスに結合され、メモリ・アクセス及び読出
    し応答データをバッファリングするための手段を含むイ
    ンタフェース手段と、 (2)該インタフェース手段に結合されるローカル・バ
    スと、 (3)該ローカル・バスに結合される複数のインタリー
    ブド・メモリ・バンクとを含み、該メモリ・バンクは独
    立にスケジュール及びアクセスされ、前記メモリ・バン
    クの各々は、 (a)データを記憶するためのメモリ手段と、 (b)前記ローカル・バス及びメモリ手段に結合される
    レジスタ手段と、 (c)前記メモリ手段及びレジスタ手段を制御するため
    の制御手段とを含み、該制御手段は、 前記バッファされるメモリ・アクセスを大域バスを使用
    することなくスケジューリングするための手段を含み、
    該スケジューリングは他の前記メモリ・カードとは独立
    に実行され、 前記バッファされるメモリ・アクセスを前記ローカル・
    バスを介し、前記インタフェース手段から前記レジスタ
    手段に転送する手段と、 前記メモリ手段を前記転送されるメモリ・アクセスに応
    じてアクセスする手段と、 前記読出し応答データを前記メモリ手段から前記インタ
    フェース手段に前記ローカル・バスを介して転送する手
    段と、 前記メモリ手段をリフレッシュするための手段とを含む
    ことを特徴とするメモリ・システム。
  2. 【請求項2】前記インタフェース手段は、 大域バスを使用せずに前記メモリ・バンクのリフレッシ
    ュ・サイクルをスケジューリングする手段と、 大域バスを要求する手段と、 大域バスが譲渡されると、前記読出し応答データを大域
    バスを介し返却する手段と、 エラー検出及び訂正を実行する手段と、 メモリをロックする手段とを含むことを特徴とする請求
    項1記載のメモリ・システム。
  3. 【請求項3】前記レジスタ手段は、 前記ローカル・バスからのデータ及びアドレスをラッチ
    するための手段と、 前記ローカル・バスにデータを駆動するための手段とを
    含むことを特徴とする請求項1記載のメモリ・システ
    ム。
  4. 【請求項4】前記メモリ手段は、ページ・アクセス・モ
    ードを有するダイナミック・ランダム・アクセス・メモ
    リを含むことを特徴とする請求項1記載のメモリ・シス
    テム。
  5. 【請求項5】前記転送されるメモリ・アクセスに応じ前
    記メモリ手段をアクセスする前記手段は、 連続的なメモリ・アクセスが異なる行アドレスを有する
    時、ランダム・アクセス・モードを使用して前記メモリ
    手段をアクセスする手段と、 前記連続的なメモリ・アクセスが共通の行アドレスを有
    する時、ページ・モードを使用して前記メモリ手段をア
    クセスする手段とを含むことを特徴とする請求項1記載
    のメモリ・システム。
  6. 【請求項6】前記読出し応答データを前記メモリ手段か
    ら前記インタフェース手段に転送する手段は、 前記ローカル・バスを要求する手段と、 該ローカル・バスが譲渡されると、該ローカル・バスを
    介し前記メモリ手段から前記インタフェース手段に前記
    読出し応答データを転送する手段とを含むことを特徴と
    する請求項1記載のメモリ・システム。
  7. 【請求項7】前記メモリ・システムを自動的に構成する
    自己構成手段を含み、該自己構成手段は、 1.前記メモリ・システムのインタリーブ・ファクタを
    決定するための手段と、 2.前記メモリ・システムのメモリ容量を決定するため
    の手段と、 3.前記メモリ・カードの各々に対するアドレス空間を
    決定するための手段とを含むことを特徴とする請求項1
    記載のメモリ・システム。
  8. 【請求項8】コンピュータ・システムにおいて、 (1)大域バスと、 (2)該大域バスに結合される複数のプロセッサ手段
    と、 (3)前記大域バスに結合される1個或いは複数の入出
    力手段と、 (4)共用メモリ・サブシステムとを含み、前記共用メ
    モリ・サブシステムは前記大域バスに結合される1個或
    いは複数のメモリ・カードを含み、該メモリ・カードは
    独立にアクセスされ、該メモリ・カードの各々は、 (a)大域バスに結合され、メモリ・アクセス及び読出
    し応答データをバッファリングするための手段を含むイ
    ンタフェース手段と、 (b)該インタフェース手段に結合されるローカル・バ
    スと、 (c)該ローカル・バスに結合される複数のインタリー
    ブド・メモリ・バンクとを含み、該メモリ・バンクは独
    立にスケジュール及びアクセスされ、前記メモリ・バン
    クの各々は、 データを記憶するためのメモリ手段と、 前記ローカル・バス及びメモリ手段に結合されるレジス
    タ手段と、 前記メモリ手段及びレジスタ手段を制御するための制御
    手段とを含むことを特徴とするコンピュータ・システ
    ム。
  9. 【請求項9】前記制御手段は、 前記バッファされるメモリ・アクセスを前記大域バスを
    使用することなくスケジューリングするための手段を含
    み、該スケジューリングは他の前記メモリ・カードとは
    独立に実行され、 前記バッファされるメモリ・アクセスを前記ローカル・
    バスを介し、前記インタフェース手段から前記レジスタ
    手段に転送する手段と、 前記メモリ手段を前記転送されるメモリ・アクセスに応
    じてアクセスする手段と、 前記読出し応答データを前記メモリ手段から前記インタ
    フェース手段に前記ローカル・バスを介して転送する手
    段と、 前記メモリ手段をリフレッシュするための手段とを含む
    ことを特徴とする請求項8記載のコンピュータ・システ
    ム。
  10. 【請求項10】前記共用メモリ・サブシステムは、前記
    共用メモリ・サブシステムを自動的に構成する自己構成
    手段を含み、該自己構成手段は、 前記共用メモリ・サブシステムのインタリーブ・ファク
    タを決定するための手段と、 前記共用メモリ・サブシステムのメモリ容量を決定する
    ための手段と、 前記メモリ・カードの各々に対するアドレス空間を決定
    するための手段とを含むことを特徴とする請求項8記載
    のコンピュータ・システム。
JP4107781A 1991-05-15 1992-04-27 メモリ・システム Expired - Lifetime JP2518989B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US700679 1991-05-15
US70067991A 1991-05-28 1991-05-28

Publications (2)

Publication Number Publication Date
JPH05120129A true JPH05120129A (ja) 1993-05-18
JP2518989B2 JP2518989B2 (ja) 1996-07-31

Family

ID=24814471

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4107781A Expired - Lifetime JP2518989B2 (ja) 1991-05-15 1992-04-27 メモリ・システム

Country Status (3)

Country Link
US (1) US5463755A (ja)
EP (1) EP0513519A1 (ja)
JP (1) JP2518989B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086849A (ja) * 1994-06-16 1996-01-12 Kofu Nippon Denki Kk 半導体記憶装置
JPH08263456A (ja) * 1995-03-22 1996-10-11 Kofu Nippon Denki Kk 診断制御装置
KR100524575B1 (ko) * 1996-11-15 2006-01-27 매그나칩 반도체 유한회사 데이타 처리시스템에서 복수개의 메모리 억세스 리퀘스트신호를리오더링하는 방법

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07122864B2 (ja) * 1991-07-22 1995-12-25 インターナショナル・ビジネス・マシーンズ・コーポレイション データ処理システム、データ処理システムに使用するインターフエース回路及びデータ・プロセツサ間の通信方法
US5668971A (en) * 1992-12-01 1997-09-16 Compaq Computer Corporation Posted disk read operations performed by signalling a disk read complete to the system prior to completion of data transfer
US5845329A (en) * 1993-01-29 1998-12-01 Sanyo Electric Co., Ltd. Parallel computer
CA2118662C (en) * 1993-03-22 1999-07-13 Paul A. Santeler Memory controller having all dram address and control signals provided synchronously from a single device
DE69434976T2 (de) * 1993-11-29 2008-01-17 Koninklijke Philips Electronics N.V. Rangadressenzuweiseung in einem modulsystem
US5586253A (en) * 1994-12-15 1996-12-17 Stratus Computer Method and apparatus for validating I/O addresses in a fault-tolerant computer system
US5761455A (en) * 1995-02-06 1998-06-02 Cpu Technology, Inc. Dynamic bus reconfiguration logic
DE19541946A1 (de) * 1995-11-10 1997-05-15 Daimler Benz Aerospace Ag Verfahren zur Speicher-Zugriffssteuerung für 32-Bit-Hochleistungs-Mikroprozessoren der 3. Generation
US5819304A (en) * 1996-01-29 1998-10-06 Iowa State University Research Foundation, Inc. Random access memory assembly
US5946710A (en) * 1996-11-14 1999-08-31 Unisys Corporation Selectable two-way, four-way double cache interleave scheme
US5996042A (en) * 1996-12-16 1999-11-30 Intel Corporation Scalable, high bandwidth multicard memory system utilizing a single memory controller
US6202110B1 (en) * 1997-03-31 2001-03-13 International Business Machines Corporation Memory cards with symmetrical pinout for back-to-back mounting in computer system
US6026464A (en) * 1997-06-24 2000-02-15 Cisco Technology, Inc. Memory control system and method utilizing distributed memory controllers for multibank memory
US6965974B1 (en) * 1997-11-14 2005-11-15 Agere Systems Inc. Dynamic partitioning of memory banks among multiple agents
US6523066B1 (en) * 1999-08-23 2003-02-18 Harris-Exigent, Inc. Dynamic distributed memory locking in a computer network
US6711170B1 (en) * 1999-08-31 2004-03-23 Mosaid Technologies, Inc. Method and apparatus for an interleaved non-blocking packet buffer
US6735715B1 (en) 2000-04-13 2004-05-11 Stratus Technologies Bermuda Ltd. System and method for operating a SCSI bus with redundant SCSI adaptors
US6820213B1 (en) 2000-04-13 2004-11-16 Stratus Technologies Bermuda, Ltd. Fault-tolerant computer system with voter delay buffer
US6633996B1 (en) 2000-04-13 2003-10-14 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus architecture
US6708283B1 (en) 2000-04-13 2004-03-16 Stratus Technologies, Bermuda Ltd. System and method for operating a system with redundant peripheral bus controllers
US6687851B1 (en) 2000-04-13 2004-02-03 Stratus Technologies Bermuda Ltd. Method and system for upgrading fault-tolerant systems
US6691257B1 (en) 2000-04-13 2004-02-10 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus protocol and method for using the same
US6802022B1 (en) 2000-04-14 2004-10-05 Stratus Technologies Bermuda Ltd. Maintenance of consistent, redundant mass storage images
US6862689B2 (en) 2001-04-12 2005-03-01 Stratus Technologies Bermuda Ltd. Method and apparatus for managing session information
US6901481B2 (en) 2000-04-14 2005-05-31 Stratus Technologies Bermuda Ltd. Method and apparatus for storing transactional information in persistent memory
US6715104B2 (en) * 2000-07-25 2004-03-30 International Business Machines Corporation Memory access system
US6948010B2 (en) * 2000-12-20 2005-09-20 Stratus Technologies Bermuda Ltd. Method and apparatus for efficiently moving portions of a memory block
US6886171B2 (en) * 2001-02-20 2005-04-26 Stratus Technologies Bermuda Ltd. Caching for I/O virtual address translation and validation using device drivers
US6766479B2 (en) 2001-02-28 2004-07-20 Stratus Technologies Bermuda, Ltd. Apparatus and methods for identifying bus protocol violations
US6766413B2 (en) 2001-03-01 2004-07-20 Stratus Technologies Bermuda Ltd. Systems and methods for caching with file-level granularity
US6874102B2 (en) 2001-03-05 2005-03-29 Stratus Technologies Bermuda Ltd. Coordinated recalibration of high bandwidth memories in a multiprocessor computer
EP1407362A4 (en) * 2001-07-17 2007-01-24 Alcatel Internetworking Inc SWITCHING MATRIX WITH DUAL PORT MEMORY EMULATION DEVICE
US20050071574A1 (en) * 2001-11-06 2005-03-31 Rudi Frenzel Architecture with shared memory
US6925551B2 (en) 2002-10-10 2005-08-02 International Business Machines Corporation Method, apparatus and system for accessing a global promotion facility through execution of a branch-type instruction
US6829698B2 (en) * 2002-10-10 2004-12-07 International Business Machines Corporation Method, apparatus and system for acquiring a global promotion facility utilizing a data-less transaction
US7213248B2 (en) * 2002-10-10 2007-05-01 International Business Machines Corporation High speed promotion mechanism suitable for lock acquisition in a multiprocessor data processing system
US6920514B2 (en) * 2002-10-10 2005-07-19 International Business Machines Corporation Method, apparatus and system that cache promotion information within a processor separate from instructions and data
US7017031B2 (en) * 2002-10-10 2006-03-21 International Business Machines Corporation Method, apparatus and system for managing released promotion bits
US20060222126A1 (en) * 2005-03-31 2006-10-05 Stratus Technologies Bermuda Ltd. Systems and methods for maintaining synchronicity during signal transmission
US20060222125A1 (en) * 2005-03-31 2006-10-05 Edwards John W Jr Systems and methods for maintaining synchronicity during signal transmission
US9293187B2 (en) * 2011-09-26 2016-03-22 Cisco Technology, Inc. Methods and apparatus for refreshing digital memory circuits
US8863141B2 (en) 2011-12-14 2014-10-14 International Business Machines Corporation Estimating migration costs for migrating logical partitions within a virtualized computing environment based on a migration cost history
US8694995B2 (en) 2011-12-14 2014-04-08 International Business Machines Corporation Application initiated negotiations for resources meeting a performance parameter in a virtualized computing environment
US11150839B2 (en) 2019-12-19 2021-10-19 Western Digital Technologies, Inc. Host and method for interleaving data in a storage system for enhanced quality of service
US11221950B2 (en) * 2019-12-19 2022-01-11 Western Digital Technologies, Inc. Storage system and method for interleaving data for enhanced quality of service

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5979481A (ja) * 1982-10-29 1984-05-08 Toshiba Corp メモリインタリ−ブ制御方式
JPS6014377A (ja) * 1983-07-05 1985-01-24 Hitachi Medical Corp 画像処理用メモリ制御回路
JPS61210469A (ja) * 1985-03-15 1986-09-18 Nec Corp 共通メモリ制御方式
JPH01181137A (ja) * 1988-01-14 1989-07-19 Nec Corp 記憶装置

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3820079A (en) * 1971-11-01 1974-06-25 Hewlett Packard Co Bus oriented,modular,multiprocessing computer
US3916383A (en) * 1973-02-20 1975-10-28 Memorex Corp Multi-processor data processing system
US3905023A (en) * 1973-08-15 1975-09-09 Burroughs Corp Large scale multi-level information processing system employing improved failsaft techniques
GB1472303A (en) * 1973-09-21 1977-05-04 Siemens Ag Electronic data storage systems
DE2537787A1 (de) * 1975-08-25 1977-03-03 Computer Ges Konstanz Modularer arbeitsspeicher fuer eine datenverarbeitungsanlage und verfahren zum durchfuehren von speicherzugriffen an diesem speicher
US4253144A (en) * 1978-12-21 1981-02-24 Burroughs Corporation Multi-processor communication network
US4562535A (en) * 1982-04-05 1985-12-31 Texas Instruments Incorporated Self-configuring digital processor system with global system
US4891749A (en) * 1983-03-28 1990-01-02 International Business Machines Corporation Multiprocessor storage serialization apparatus
US4589067A (en) * 1983-05-27 1986-05-13 Analogic Corporation Full floating point vector processor with dynamically configurable multifunction pipelined ALU
JPS6086647A (ja) * 1983-10-19 1985-05-16 Nec Corp システム制御装置
JPS6142793A (ja) * 1984-08-02 1986-03-01 Seiko Instr & Electronics Ltd 高速メモリシステム
JPS61177559A (ja) * 1985-02-04 1986-08-09 Hitachi Ltd 記憶デ−タの誤り制御方式
US4794521A (en) * 1985-07-22 1988-12-27 Alliant Computer Systems Corporation Digital computer with cache capable of concurrently handling multiple accesses from parallel processors
US4783736A (en) * 1985-07-22 1988-11-08 Alliant Computer Systems Corporation Digital computer with multisection cache
US4797815A (en) * 1985-11-22 1989-01-10 Paradyne Corporation Interleaved synchronous bus access protocol for a shared memory multi-processor system
US4933846A (en) * 1987-04-24 1990-06-12 Network Systems Corporation Network communications adapter with dual interleaved memory banks servicing multiple processors
US4980850A (en) * 1987-05-14 1990-12-25 Digital Equipment Corporation Automatic sizing memory system with multiplexed configuration signals at memory modules
US4918645A (en) * 1987-09-17 1990-04-17 Wang Laboratories, Inc. Computer bus having page mode memory access
US4796232A (en) * 1987-10-20 1989-01-03 Contel Corporation Dual port memory controller
US5136717A (en) * 1988-11-23 1992-08-04 Flavors Technology Inc. Realtime systolic, multiple-instruction, single-data parallel computer system
JP2830116B2 (ja) * 1989-07-27 1998-12-02 日本電気株式会社 マルチプロセッサシステムにおけるロック制御機構
US5335234A (en) * 1990-06-19 1994-08-02 Dell Usa, L.P. Error correction code pipeline for interleaved memory system
US5210723A (en) * 1990-10-31 1993-05-11 International Business Machines Corporation Memory with page mode
US5283870A (en) * 1991-10-04 1994-02-01 Bull Hn Information Systems Inc. Method and apparatus for avoiding processor deadly embrace in a multiprocessor system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5979481A (ja) * 1982-10-29 1984-05-08 Toshiba Corp メモリインタリ−ブ制御方式
JPS6014377A (ja) * 1983-07-05 1985-01-24 Hitachi Medical Corp 画像処理用メモリ制御回路
JPS61210469A (ja) * 1985-03-15 1986-09-18 Nec Corp 共通メモリ制御方式
JPH01181137A (ja) * 1988-01-14 1989-07-19 Nec Corp 記憶装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086849A (ja) * 1994-06-16 1996-01-12 Kofu Nippon Denki Kk 半導体記憶装置
JPH08263456A (ja) * 1995-03-22 1996-10-11 Kofu Nippon Denki Kk 診断制御装置
KR100524575B1 (ko) * 1996-11-15 2006-01-27 매그나칩 반도체 유한회사 데이타 처리시스템에서 복수개의 메모리 억세스 리퀘스트신호를리오더링하는 방법

Also Published As

Publication number Publication date
JP2518989B2 (ja) 1996-07-31
EP0513519A1 (en) 1992-11-19
US5463755A (en) 1995-10-31

Similar Documents

Publication Publication Date Title
JP2518989B2 (ja) メモリ・システム
US6026464A (en) Memory control system and method utilizing distributed memory controllers for multibank memory
US6330645B1 (en) Multi-stream coherent memory controller apparatus and method
US5327570A (en) Multiprocessor system having local write cache within each data processor node
US6405271B1 (en) Data flow control mechanism for a bus supporting two-and three-agent transactions
US5870572A (en) Universal buffered interface for coupling multiple processors, memory units, and I/O interfaces to a common high-speed interconnect
US5276886A (en) Hardware semaphores in a multi-processor environment
US4843542A (en) Virtual memory cache for use in multi-processing systems
US6504785B1 (en) Multiprocessor system with integrated memory
US5060145A (en) Memory access system for pipelined data paths to and from storage
US6275885B1 (en) System and method for maintaining ownership of a processor bus while sending a programmed number of snoop cycles to the processor cache
US6209067B1 (en) Computer system controller and method with processor write posting hold off on PCI master memory request
US6076139A (en) Multimedia computer architecture with multi-channel concurrent memory access
JP2574967B2 (ja) マルチプロセッサシステム用アービトレーション装置および同方法
US5398211A (en) Structure and method for providing prioritized arbitration in a dual port memory
WO1997050042A1 (en) A method and apparatus for providing concurrent access by a plur ality of agents to a shared memory
KR20050005481A (ko) 아웃 오브 오더 dram 시퀀서
JPS6113618B2 (ja)
US5513331A (en) Method and apparatus for automatically configuring system memory address space of a computer system having a memory subsystem with indeterministic number of memory units of indeterministic sizes during system reset
US5313591A (en) Computer bus arbitration for N processors requiring only N unidirectional signal leads
US5640517A (en) Method and apparatus for masters to command a slave whether to transfer data in a sequential or non-sequential burst order
US5249297A (en) Methods and apparatus for carrying out transactions in a computer system
US5455957A (en) Method and apparatus for conducting bus transactions between two clock independent bus agents of a computer system using a transaction by transaction deterministic request/response protocol
US5265053A (en) Main memory DRAM interface
US6249847B1 (en) Computer system with synchronous memory arbiter that permits asynchronous memory requests