JPH04253240A - コンピューターメモリシステムにおけるデータ統合方法 - Google Patents

コンピューターメモリシステムにおけるデータ統合方法

Info

Publication number
JPH04253240A
JPH04253240A JP3216625A JP21662591A JPH04253240A JP H04253240 A JPH04253240 A JP H04253240A JP 3216625 A JP3216625 A JP 3216625A JP 21662591 A JP21662591 A JP 21662591A JP H04253240 A JPH04253240 A JP H04253240A
Authority
JP
Japan
Prior art keywords
cache
data
memory
byte
dram
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.)
Pending
Application number
JP3216625A
Other languages
English (en)
Inventor
Edward C King
エドワード シー. キング
Forrest O Arnold
フォリスト オー. アーノルド
Jackson L Ellis
ジャクソン エル. エリス
Robert B Moussavi
ロバート  ビー. ムーサヴィ
Pirmin L Weisser
ピルミン エル. ヴァイサ
Fulps V Vermeer
フールプス ヴィ. ヴァーミア
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.)
NCR Voyix Corp
Original Assignee
NCR 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 NCR Corp filed Critical NCR Corp
Publication of JPH04253240A publication Critical patent/JPH04253240A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0884Parallel mode, e.g. in parallel with main memory or CPU

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピューターメモリシ
ステムに関し、特にコンピューターメモリシステムから
データを読み取る応答時間を改善する方法に関する。
【0002】
【従来の技術】コンピュータの性能はメモリの階層を使
用することによって強化できる。例えば、三段のメモリ
は低速、中速、および高速メモリで構成できる。低速メ
モリは廉価で多量のデータ格納のための磁気ディスクで
よい。中速メモリはコンピュータの主メモリとして使用
するDRAMで構成できる。高速メモリはプロセッサキ
ャッシュメモリとして使用できるSRAMが使用できる
。メモリの階層を利用するのは、最高速メモリ内でシス
テムプロセッサにより実行されるコード(命令)および
他のデータをグループ化するためである。そのような高
速メモリは通例、入手できる最も高価なメモリが使用さ
れるので、経済性を考慮して比較的小さい。DRAMか
ら構成される主メモリは、SRAMを用いたキャッシュ
メモリよりもより高密度かつより廉価であり、従ってキ
ャッシュメモリよりも著しく大きい。
【0003】作動期間中、システムプロセッサが現に実
行中の変数に迅速にアクセスできるようにするため、命
令その他のデータはシステムメモリからキャッシュメモ
リに転送される。キャッシュにない追加的データが必要
とされるときは、そのデータをメモリから転送し、これ
でキャッシュ内の選択したデータを置換する。いずれの
データを置換するかを決定するにはいろいろのアルゴリ
ズムが使用される。
【0004】定義により、高効率動作キャッシュのアー
キテクチャーは高い「ヒット(当たり)」率持つもので
ある。「ヒット」はキャッシュ内に要求されたデータが
あるときに起こる。ヒット率には多数の要因が影響する
。主な因子は実行されるコードの引合いの局所性である
。言い換えると、もしも当該コードがメモリ内で近接し
た物理的ロケーションにあると、メモリ内に広く当該コ
ードが分散しているときよりヒット率は高くなる。キャ
ッシュのヒット率に影響するもう一つの因子はそのメモ
リにアクセスするデバイスの数である。もしも唯一つの
バス主、例えばシステムプロセッサ、がメモリにアクセ
スするのであれば、ヒット率がかなり高くなるようにキ
ャッシュに格納されるデータを制御できる。しかしなが
ら、同一のキャッシュを通して当該メモリに一つ以上の
バス主がアクセスするときは、キャッシュはこれらバス
主からの要求の間を何度も往復することがありうる。 その結果ヒット率は大きく低下する。換言すると、キャ
ッシュは非差別的なものであって、システムプロセッサ
および他のバス主の要求がキャッシュに等しく影響する
。一つのオペレーションがキャッシュのデータ編成に著
しく影響を与えることがありうる。例えば、非ホストC
PUバス主からのメモリアクセス要求に応答してキャッ
シュに入れられたデータはホストプロセッサが必要とす
るデータを上書きしてしまう。
【0005】ヒット率に影響するもう一つの因子はコー
ドデータおよび非コードデータの両方がキャッシュ化さ
れるという事情に関係する。システムメモリ内のデータ
ブロックはキャッシュ内でいろいろの物理的ロケーショ
ンに転写(mappinng)される。もしもシステム
メモリ内の各データブロックが単一のロケーションに転
写されるのであれば、キャッシュは直接転写キャッシュ
(direct mapped cache)と言われ
る。これに対してセット関連転写キャッシュと呼ばれる
ものは各データブロックが複数のロケーションに転写さ
れるものである。例えば、もしも各データブロックが二
つのロケーションのいずれかに転写されるとき、これは
二通り−セット関連転写(two−way set a
ssociative mapping)と呼ばれてい
る。システムメモリブロックが利用できるロケーション
の数に関係なく、コードデータおよび非コードデータの
両方がキャッシュ化されるときはそれぞれの転写が重複
することになる。従って、コードデータおよび非コード
データの両方がキャッシュ化されるときは、メモリへの
アクセスに応答してデータが置換されるにともない著し
いスラッシング(thrashing、データ処理の低
下)が起こりえる。
【0006】キャッシュのヒットに関する問題点はキャ
ッシュ内のデータエレメントが有効かつ/または汚染し
ているか否かである。データエレメントは、これに対応
する新しいエレメントシステムメモリ内に全くない限り
、有効である。もしもキャッシュ内のデータエレメント
が多重データバイトを含むと、その有効性はバイトレベ
ルまで下げて拡張することができる。言い換えると、一
方でデータエレメントのある選択されたバイトが有効で
あり、他方で同一エレメント内の他のバイトが無効であ
ることが起こり得る。データエレメントは全体としてま
たは部分的に無効になり得る。これはもしもキャッシュ
内にそのデータエレメントがあるときに当該データバイ
トのすべてまたは一部がバス主からシステムメモリに書
き込まれるときに起こる。キャッシュ内のデータエレメ
ントは、もしもそれがシステムメモリ内の対応のエレメ
ントよりもより新しいと、汚染されている、と言う。 データエレメントはバス主がシステムメモリにではなく
キャッシュにエレメントを書き込みするときに汚染され
る。
【0007】キャッシュヒットがあったとき、もしもす
べてのデータエレメントのバイトが有効であると、キャ
ッシュは要求されたデータエレメントを与える。もしも
そのバイトのうちのいくつかが無効であると、システム
メモリはそのデータエレメントを求めてメモリ読み取り
に応答する。しかし、もしもデータバイトのすべてでは
なく、唯一つのみが有効かつ汚染されているなら、その
データエレメントをシステムメモリから読み取る前にそ
れらのバイトが最初にキャッシュからシステムメモリに
書き込まれる。この書き込み特性はシステム性能に悪影
響を与えるメモリシステム応答時間を改善する。
【0008】
【発明が解決しようとする課題】それゆえ本発明はコン
ピューターメモリシステムから多重バイトデータエレメ
ントを読み取る新規かつ改良された方法を与えることを
課題とする。
【0009】本発明の別の課題はキャッシュおよびシス
テムメモリの双方に存在する多重バイトデータエレメン
トを読み取る方法を与えることである。
【0010】本発明のさらに別の課題はコンピューター
メモリシステムの応答時間を改善する方法を与えること
である。
【0011】本発明のさらに別の課題はコンピューター
システムの性能を改善する方法を与えることである。
【0012】本発明のさらに別の課題はメモリシステム
内のデータ読み取りおよびデータのストリーミングを強
化する方法を与えることである。
【0013】本発明のさらに別の課題はキャッシュから
汚染された、かつ部分的に有効な多重バイトデータエレ
メントを読み取る前に、キャッシュからシステムメモリ
へのデータ書き込みを排除する方法を与えることである
【0014】
【課題を解決するための手段】上記課題達成のため、本
発明は第一および第二のメモリ双方に格納されている多
重バイトデータエレメントを読み取る方法を与える。該
第一メモリにある該データエレメントの選択されたバイ
トが無効化される。該データエレメントを求める第一の
読み取り要求に対し、該第一メモリから取り出した有効
バイトを該第二メモリから取り出した残りのバイトが結
合される。
【0015】本発明はキャッシュ内の有効かつ汚染され
たデータエレメントをシステムメモリから取り出したデ
ータエレメント残りのバイトに統合する、バイトレベル
のデータ統合を含む。また本発明は有効かつ汚染された
キャッシュバイトとシステムメモリから取り出した高速
データストリームを統合することを含む。
【0016】
【実施例】図1はコンピューターメモリシステム10の
ブロック線図を示す。メモリシステム10はシステムメ
モリ12を含む。メモリ12は好ましい実施例では動的
ランダムアクセスメモリ(DRAM)チップからなる。 メモリ12に格納されるデータは一般にコードデータ(
命令)と非コードデータとに分割することができる。 ここに使用する「データ」という用語は情報を指し、コ
ードデータ(命令)および非コードデータを含む。メモ
リ12はバス14でコンピューターシステム(図示して
なし)の他の部分に接続されている。メモリシステム1
0は二つ以上のバス主に使用できるように設計されてい
るが、単一のバス主に使うこともできる。特にメモリシ
ステム10は他のバス主またはメモリシステム10への
アクセスに関してホストプロセッサと競合する装置と組
み合わせたインテル社のホストプロセッサ386、38
6sx、486等に使用することができるように設計さ
れている。メモリ12へのアクセスはバス14内に設け
られたDRAM制御装置22で制御される。
【0017】システム10はまたバス14にそれぞれ接
続された内部キャッシュ16、プレフェッチキャッシュ
18、および書き込みバッファキャッシュ20を含む。 好ましい実施例では内部キャッシュ16は4Kバイトの
4通り−セット関連キャッシュで、プレフェッチキャッ
シュ18は128バイトの直接転写キャッシュで、書き
込みバッファキャッシュ20は128バイトの2通り−
セット関連キャッシュである。
【0018】本キャッシュの特徴は使用されるホストプ
ロセッサの形式(386、386sx、486)に応じ
てこれらキャッシュの機能が変更できることである。し
かし、キャッシュのいくつかの特徴は変更できない。例
えば内部キャッシュ16はホストプロセッサによるメモ
リアクセスに基づいてのみ選択できるデータを保持する
。言い換えると、内部キャッシュ16はホストプロセッ
サ専用であり、他のバス主によるメモリアクセスによっ
て影響されない。任意のバス主が各キャッシュを読み取
りできることを認識されたい。従って内部キャッシュ1
6はその中にシステムプロセッサ以外の他のプロセッサ
によるメモリアクセスに基づくデータ書き込みは許さな
いが、他のバス主も、要求しているデータがその中にあ
る限りデータの読み取りはできる。各キャッシュはスヌ
ープ(記録内容を検分すること)でヒットした記録内容
を無効にするため、当該キャッシュで意図されていない
データ書き込みもすべて検分し、これによって動作の一
貫性を確保することを認識されたい。
【0019】キャッシュに関し不変な特徴の一つは、プ
レフェッチキャッシュ18がDRAM12から取り寄せ
たコードデータのみを収容することである。さらに、プ
レフェッチキャッシュ18はホストプロセッサのメモリ
アクセスに基づくコードのみを取り寄せる。動作上、シ
ステムプロセッサがプレフェッチキャシュ内に用意され
ていないコードデータを要求するときは、次のコード要
求を予期して次順の128バイトコードがプレフェッチ
キャッシュ18内に予め取り寄せ(プレフェッチ)され
る。
【0020】書き込みバッファキャッシュ20はDRA
M12内に書き込まれるデータのバッファのみを行なう
。このキャッシュは単に書き込みバッファを行なうのみ
ならず、上述したように任意のバス主による読み取りも
許すキャッシュである。しかしこのバッファはDRAM
12からのデータのキャッシュはしない。
【0021】各キャッシュの機能が分離されていること
、およびプロセッサの形式に基づいてこれらの機能を選
択的に定義できることは本キャッシュの重要な特徴であ
る。この性能により、本システムはキャッシュを総和的
に使用するものよりも何倍も大きなキャッシュを使用す
るシステムの性能を達成し、またはこれをしのぐことが
できる。プロセッサの形式に基づいて選択的に機能を定
義する点に関していうと、486プロセッサを使用する
システムの場合、書き込みバッファキャッシュ20はシ
ステム以外のすべてのバス主が行なうデータ書き込みの
バッファを行なう。386、386sxシステムプロセ
ッサを使用するシステムの場合、内部キャッシュ16は
コードデータのみを保持し、システムプロセッサのため
の読み取り専用キャッシュであり、書き込みバッファキ
ャッシュ20はシステムプロセッサを含めた任意のバス
主によるデータ書き込みのバッファを行なう。これらキ
ャッシュの動作特性は、存在するホストプロセッサの形
式情報に基づいて、電力投入時の自己形成条件に従って
定義される。
【0022】DRAM制御装置22はDRAM12への
アクセスのための高速ページモードを支持する。高速ペ
ージモードはメモリページ内の行ラインをアクティブと
した後、列ラインを順次ストロボ作動させてデータをD
RAMの中にまたはDRAMの外に転送することにより
DRAMへのアクセスを高速化する良く知られた方法で
ある。DRAM12はコードデータか非コードデータの
いずれかを含むページに分割されている。DRAM12
に関連されたレジスタはDRAM12内またはDRAM
制御装置22内に配置され、最も最近にアクセスされた
ページのページアドレスを保持する。実際、本システム
は本システムに接続されたプロセッサの形式に応じてコ
ードページまたは非コードページに指向するバイアスを
与える。例えばもしもシステムプロセッサが486であ
ると、もっとも最近にアクセスされたコードアドレスペ
ージのアドレスはレジスタ内に保持される。動作上、D
RAM12内のコードデータページおよび非コードデー
タページは共にランダムアクセスができる。もしもコー
ドページがある一サイクルでアクセスされ、次のサイク
ルで非コードページがアクセスされると、非コードペー
ジがアクセスされる間、コードページのアドレスはレジ
スタ内に保持される。非コードページがアクセスされた
直後、再びコードページを開くのにレジスタ内のそのア
ドレスが使用される。これと対照的に、もしもシステム
プロセッサが386または386sxであると、最も最
近にアクセスされた非コードアドレスページのアドレス
がレジスタ内に保持される。オープンページバイアス、
高速ページモードアクセスおよび多重キャッシュを選択
的になしうるこの組み合わせがシステム性能を高める。
【0023】書き込みバッファキャッシュ20は2通り
−セット関連キャッシュである。メモリの非コードデー
タ領域は、リスト、ヒープ(heap)、およびスタッ
ク(stack)として知られる三つの領域に分割でき
る。メモリ内のデータブロックはリスト、ヒープ、およ
びスタックように準備され、それぞれ、各自の組織と目
的を有する。例えばスタックは一組のデータエレメント
で、その内の一エレメントのみが一度にアクセスできる
。リストデータは主として読み取り用であり、一般的に
書き込み用ではない。構造を有するプログラムではスタ
ックへの書き込みが高い頻度で起こり、次に頻度の高い
書き込みはヒープに対して起きる。DRAM内にヒープ
用のデータブロックとスタック用のデータブロックを適
切に指定し、かつこれらブロックを2通り−セット関連
キャッシュ内の対応セットに転写することにより、動作
効率を高めることができる。さらに非コードデータに対
するDRAM内のオープンページバイアスは実効上、リ
ストデータに対するオープンページバイアスとなる。こ
のようにして動作特性がさらに高められる。
【0024】図2はコンピューターメモリシステム10
のさらに詳細を示す。DRAM12および制御器22は
デバイス300を通してバス14に節属されている。バ
ス14はダブル語(0、1、2、3と記す)の4バイト
がパラレルに通信できるように4バイトの幅を有する。 DRAM12から送られたダブル語の各バイトは三状態
決定装置300を通過する。この三状態決定装置は制御
信号に基づいて前記選択されたバイトを阻止しまたは通
過させる。各デバイス300はキャッシュ16、20か
ら来る制御線302上の阻止信号を受信する。
【0025】キャッシュ16、20はそれぞれ三状態決
定装置304、306を介してバス14に接続される。 DRAM12と用いるキャッシュ16、20内のデータ
エレメントは4パラレルバイト(ダブル語)の形でアク
セスできる。それぞれのバイトは個別に、キャッシュ1
6、20から受信される制御信号にしたがって三状態決
定装置304、306内で阻止され、または通過できる
【0026】本発明の一態様では、DRAM12からの
データバイトを阻止する制御信号は、キャッシュ16ま
たはキャッシュ20の何れかの対応するデータバイトが
有効かつ汚染されているときにアクティブとなる。キャ
ッシュ16、20内の多重バイトデータエレメントのバ
イトは各々関連のビットまたはフラッグを有する。この
フラッグはデータエレメントがキャッシュに最初に書き
込まれるときは「有効」に設定される。ある動作条件の
下ではエレメントの一またはそれ以上のバイトを無効化
する必要がある。例えば、もしもバス主から直接にDR
AM12に高速転送が行なわれる(高速ページモード)
と、各キャッシュはバス14を監視または「検分」する
。もしもキャッシュ内のこれらに対応するデータエレメ
ントがDRAM12中にこの方法で書き込みがなされる
と、その有効フラッグは除去されてその対応するデータ
エレメントのそれぞれのバイトが「無効」に設定される
。さらに別の例を挙げると、データエレメントを一つの
キャッシュから別のキャッシュへ転送することがしばし
ば望ましい場合がある。その場合、転送されるバイトは
すべて、不明確性を回避するためにソースキャッシュ内
で無効に設定される。キャッシュ16、20内の各多重
バイトデータエレメントもまた、「汚染」ビットと呼ば
れるビットを帯有する。「汚染」ビットとは、書き込み
のなされたキャッシュが未だメモリに書き込まれていな
い情報を有していることを示すフラッグである。すなわ
ち、これは与えられたデータエレメントの最も最新の更
新値を表わすものである。この汚染ビットは一般的にデ
ータがバス主からキャッシュ中に書き込まれるときに設
定される。「汚染された」データはそのデータをシステ
ムメモリに書き込むことにより「清浄化」される。本発
明はバイトレベルで有効ビットを与えるととみにエレメ
ントレベルでお線ビットを与えるが、この粒度(gra
nularity)は変更することができる。
【0027】本発明はいくつかの動作モードを有する。 第一のモードでは各データエレメントはバス主の要求に
よる読み取りである。通常はキャッシュは検査され、も
しも当該データがその中にあれば非常に迅速にバス主に
返還される。もしも当該データエレメントが当該キャッ
シュ内にないと、制御器22およびDRAM12がアク
ティブにされ、当該データエレメントがDRAM12か
ら取り寄せられる(これは幾分データエレメントをキャ
ッシュから得るよりは長い時間のかかる手順である)。 もしもそのデータエレメントがキャッシュの一つ以上の
中にあり、またもしもそのデータバイトのすべてではな
くいくつかのデータバイトが有効かつ汚染されているの
であれば、DRAM制御器22およびDRAM12がア
クティブにされてそのバイトがデバイス300に与えら
れる。しかし、キャッシュの一つの中に汚染されたかつ
有効なバイトを持つ対応バイトがはデバイス300で阻
止される。同時に三状態決定装置304、306は有効
かつ汚染されたバイトのみを通過させる。このようにし
てバス主は完全なデータエレメントを読み取ることがで
きる。
【0028】さらに特定すると、データエレメントがキ
ャッシュおよびDRAM12の両方に格納されていると
きの本発明の方法に必要な条件は、キャッシュ内のデー
タエレメントの内の選択されたバイトを無効化すること
である。キャッシュ内に格納された各データエレメント
の各バイトには有効/無効フラッグが与えられる。デー
タエレメントが最初にキャッシュに書き込まれたときに
それぞれのバイトに有効フラッグが設定される。それゆ
え前述したような条件に対してはその後に無効フラッグ
が設定される。本発明の大抵の適用例ではさらに必要条
件として、選択されたバイトがDRAM12以外からも
キャッシュ中に書き込まれることができなければならず
、その場合はそのバイトには汚染フラッグが設定される
。バス主がデータエレメントを読み取ろうとするときは
、最初にキャッシュが検査を受ける。もしもそのデータ
エレメントがキャッシュ内に見つかっても、それがいく
つかの無効バイトを含んでいると、DRAM12をアク
ティブにする信号が与えられる。キャッシュからの有効
かつ汚染されたバイトのみがDRAM12からのバイト
と組み合わされる。汚染バイトに対する有効フラッグは
DRAM12からバス14への対応ラインを接続解除し
て当該対応データバイトがDRAM12から転送される
ことを阻止するために使われる。同様にして、汚染バイ
トの有効フラッグ(またはその反転されたもの)はキャ
ッシュからバス14へつながる対応バイトラインを接続
するのに使用される。
【0029】本方法はまた、問題にしているデータエレ
メントが複数のキャッシュに拡散している場合にも効果
的である。換言すると、データエレメントがDRAM1
2以外から第二のキャッシュに当てられており、従って
汚染されたものと記されている。このとき、さらに第二
キャッシュデータエレメント内の選択されたデータバイ
トが無効化されている。しかし、二つのキャッシュ内の
対応するバイトの少なくとも一つが、ふ明確さを防止す
るため無効となっている。バス主のデータ読み取りに呼
応して、各キャッシュは再びその特定のデータエレメン
トについてのチエックをうける。もしもそのデータエレ
メントが両方のキャッシュ内にあり、もしも二つのキャ
ッシュのいかなる当該対応データバイトの対も無効であ
ることが判明すると、DRAM12をアクティブにする
信号がおくされる。前と同様に、キャッシュから有効か
つ汚染されたバイトがキャッシュから与えられ、DRA
M12からの対応のバイトは阻止される。
【0030】第二の動作態様では、本発明はDRAM1
2からバス主への直接的多量のデータ転送に対応する。 例えば、本発明はIBMマイクロチャンネルアーキテク
チャに基づくものに見出される様な「ストリーミングモ
ード」を支持できる。このモードでは、DRAM12は
高速ページモードで動作し、DRAM12からデータエ
レメントを転送することにより読み取り要求に順次応答
する。キャッシュは各データエレメントについて検査さ
れる。ただし、上記第一モードで述べたように、これは
DRAM12がアクティブにされるのと同時であり、D
RAM12がアクティブにされてからではない。キャッ
シュの一つに汚染されたかつ有効なバイトが検出される
ときは常に、DRAM12からの対応データバイトライ
ンは停止され、当該汚染されたかつ有効データバイトが
統合される。
【0031】本発明の詳細な設計は高度ハードウェア記
述言語であるCDLで行なわれる。CDLはデジタル論
理システム用のハードウェアを曖昧さなしに定義するソ
フトウェアツールである。CDLリストは完全にシステ
ム10の好ましい実施例を確定する。このリストはこれ
をコンパイルすると「C」ソースコードを与え、このソ
ースコードは次いでCコンパイラでコンパイルされて標
準化されたCオブジェクトファイルフォーマット(CO
FF)を与える。次いでこのCオブジェクトファイルフ
ォーマットを論理合成プログラムに入力すると詳細な論
理構造体が得られる。この目的に使用される論理合成プ
ログラムはカルフォルニア州マウンテンビュー市のシノ
プシス社から販売されているSYNOPSYSである。
【0032】図3は本発明のモジュール間の関係を示す
【図面の簡単な説明】
【図1】図1は高性能コンピューターメモリシステムの
ブロック線図である。
【図2】図2は図1に示すコンピューターメモリシステ
ムの一層詳細な線図である。
【図3】図3は本メモリシステムのモジュール間の関係
を示すブロック線図である。
【符号の説明】
10  コンピューターシステムメモリ12  DRA
M 16、18、20  キャッシュ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】第一および第二のメモリ双方に格納されて
    いる多重バイトデータエレメントを読み取る方法であっ
    て、該第一メモリにおける該データエレメントのうちの
    選択されたバイトを無効化することと、該第一メモリか
    ら取り出した有効バイトを該第二メモリから取り出した
    残りのバイトに結合することにより該データエレメント
    を求める第一の読み取り要求に応答することとを含むデ
    ータエレメント読み取り方法。
JP3216625A 1990-08-06 1991-08-02 コンピューターメモリシステムにおけるデータ統合方法 Pending JPH04253240A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/563,219 US5420994A (en) 1990-08-06 1990-08-06 Method for reading a multiple byte data element in a memory system with at least one cache and a main memory
US563219 1995-11-27

Publications (1)

Publication Number Publication Date
JPH04253240A true JPH04253240A (ja) 1992-09-09

Family

ID=24249595

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3216625A Pending JPH04253240A (ja) 1990-08-06 1991-08-02 コンピューターメモリシステムにおけるデータ統合方法

Country Status (4)

Country Link
US (1) US5420994A (ja)
EP (1) EP0470739B1 (ja)
JP (1) JPH04253240A (ja)
DE (1) DE69130626T2 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5566324A (en) * 1992-12-24 1996-10-15 Ncr Corporation Computer apparatus including a main memory prefetch cache and method of operation thereof
US5623633A (en) * 1993-07-27 1997-04-22 Dell Usa, L.P. Cache-based computer system employing a snoop control circuit with write-back suppression
TW228580B (en) * 1993-10-01 1994-08-21 Ibm Information processing system and method of operation
EP0661638A1 (en) * 1993-12-28 1995-07-05 International Business Machines Corporation Method and apparatus for transferring data in a computer
US5553265A (en) * 1994-10-21 1996-09-03 International Business Machines Corporation Methods and system for merging data during cache checking and write-back cycles for memory reads and writes
JPH0916470A (ja) * 1995-07-03 1997-01-17 Mitsubishi Electric Corp 半導体記憶装置
US5712970A (en) * 1995-09-28 1998-01-27 Emc Corporation Method and apparatus for reliably storing data to be written to a peripheral device subsystem using plural controllers
US5781916A (en) * 1996-03-25 1998-07-14 Motorola, Inc. Cache control circuitry and method therefor
US5860113A (en) * 1996-06-03 1999-01-12 Opti Inc. System for using a dirty bit with a cache memory
US5900016A (en) * 1997-04-02 1999-05-04 Opti Inc. System for using a cache memory with a write-back architecture
US6895475B2 (en) * 2002-09-30 2005-05-17 Analog Devices, Inc. Prefetch buffer method and apparatus
US7822911B2 (en) * 2007-08-15 2010-10-26 Micron Technology, Inc. Memory device and method with on-board cache system for facilitating interface with multiple processors, and computer system using same
US8055852B2 (en) 2007-08-15 2011-11-08 Micron Technology, Inc. Memory device and method having on-board processing logic for facilitating interface with multiple processors, and computer system using same
US8291174B2 (en) * 2007-08-15 2012-10-16 Micron Technology, Inc. Memory device and method having on-board address protection system for facilitating interface with multiple processors, and computer system using same
US10026458B2 (en) 2010-10-21 2018-07-17 Micron Technology, Inc. Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4157586A (en) * 1977-05-05 1979-06-05 International Business Machines Corporation Technique for performing partial stores in store-thru memory configuration
US4323968A (en) * 1978-10-26 1982-04-06 International Business Machines Corporation Multilevel storage system having unitary control of data transfers
JPS58133696A (ja) * 1982-02-03 1983-08-09 Hitachi Ltd 記憶制御方式
US4680702A (en) * 1984-04-27 1987-07-14 Honeywell Information Systems Inc. Merge control apparatus for a store into cache of a data processing system
US5091846A (en) * 1986-10-03 1992-02-25 Intergraph Corporation Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
US5019971A (en) * 1987-04-13 1991-05-28 Prime Computer, Inc. High availability cache organization
US4926317A (en) * 1987-07-24 1990-05-15 Convex Computer Corporation Hierarchical memory system with logical cache, physical cache, and address translation unit for generating a sequence of physical addresses
EP0310446A3 (en) * 1987-10-02 1990-08-16 COMPUTER CONSOLES INCORPORATED (a Delaware corporation) Cache memory management method
JPH0254383A (ja) * 1988-08-18 1990-02-23 Mitsubishi Electric Corp アレイプロセッサ
US5185875A (en) * 1989-01-27 1993-02-09 Digital Equipment Corporation Method and apparatus for reducing memory read latency in a shared memory system with multiple processors
US5155824A (en) * 1989-05-15 1992-10-13 Motorola, Inc. System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address
US5091851A (en) * 1989-07-19 1992-02-25 Hewlett-Packard Company Fast multiple-word accesses from a multi-way set-associative cache memory
US5073851A (en) * 1990-02-21 1991-12-17 Apple Computer, Inc. Apparatus and method for improved caching in a computer system

Also Published As

Publication number Publication date
EP0470739B1 (en) 1998-12-16
DE69130626D1 (de) 1999-01-28
US5420994A (en) 1995-05-30
EP0470739A1 (en) 1992-02-12
DE69130626T2 (de) 2006-02-23

Similar Documents

Publication Publication Date Title
US5371870A (en) Stream buffer memory having a multiple-entry address history buffer for detecting sequential reads to initiate prefetching
US5659713A (en) Memory stream buffer with variable-size prefetch depending on memory interleaving configuration
US5751994A (en) System and method for enhancing computer operation by prefetching data elements on a common bus without delaying bus access by multiple bus masters
US5461718A (en) System for sequential read of memory stream buffer detecting page mode cycles availability fetching data into a selected FIFO, and sending data without aceessing memory
US5809562A (en) Cache array select logic allowing cache array size to differ from physical page size
JPH07129471A (ja) 主メモリ・プリフェッチ・キャッシュを含むコンピュータ装置とその作動方法
JPH04253240A (ja) コンピューターメモリシステムにおけるデータ統合方法
US5269009A (en) Processor system with improved memory transfer means
US5287512A (en) Computer memory system and method for cleaning data elements
US5161219A (en) Computer system with input/output cache
US5717894A (en) Method and apparatus for reducing write cycle wait states in a non-zero wait state cache system
US5367657A (en) Method and apparatus for efficient read prefetching of instruction code data in computer memory subsystems
US5452418A (en) Method of using stream buffer to perform operation under normal operation mode and selectively switching to test mode to check data integrity during system operation
KR100326989B1 (ko) 스누핑 포트를 사용하는 프리페치 캐시 질의 방법 및 시스템
US6134632A (en) Controller that supports data merging utilizing a slice addressable memory array
US5835945A (en) Memory system with write buffer, prefetch and internal caches
US5434990A (en) Method for serially or concurrently addressing n individually addressable memories each having an address latch and data latch
US5953740A (en) Computer memory system having programmable operational characteristics based on characteristics of a central processor
EP0471462B1 (en) Computer memory operating method and system
JPH04253238A (ja) コンピューターメモリシステムおよびキャッシュ・オーバーフローに関わる性能の強化法
US6766427B1 (en) Method and apparatus for loading data from memory to a cache
KR20040047398A (ko) 캐쉬 메모리를 이용한 데이터 억세스 방법
JPH02197940A (ja) データ及び命令を記憶するために別個のキヤツシユ記憶を含む階層記憶システム