JPH07506921A - コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り - Google Patents

コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り

Info

Publication number
JPH07506921A
JPH07506921A JP5515806A JP51580693A JPH07506921A JP H07506921 A JPH07506921 A JP H07506921A JP 5515806 A JP5515806 A JP 5515806A JP 51580693 A JP51580693 A JP 51580693A JP H07506921 A JPH07506921 A JP H07506921A
Authority
JP
Japan
Prior art keywords
address
cache
data
data line
main
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
JP5515806A
Other languages
English (en)
Inventor
クリシュナモハン,カーナマダカラ
ファームウォルド,ポール・マイケル
ウエア,フレデリック・アボット
Original Assignee
ランバス・インコーポレーテッド
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 ランバス・インコーポレーテッド filed Critical ランバス・インコーポレーテッド
Publication of JPH07506921A publication Critical patent/JPH07506921A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3814Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
    • 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/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6022Using a prefetch buffer or dedicated prefetch cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6026Prefetching based on access pattern detection, e.g. stride based prefetch

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 コンピユー夕・/ステl・における主記憤,装置のアクセス時間とキヤ,/,・ メモリのサイズを 小限にするためのキヤツシユへの!取り及乳囚分野 本発明はコンビエータ・アーキテクチャの分野に関する。本発明は特にデータ・ アクセス時間を改良するためのキャッシュ・メモリ・システムに関1−る。
ユ班旦五塁 コンピュータ・システム用の高性能主記憶装置用にダイナLノクRAM ( r DRAMJ )を使用することは、スタティノク1ζ八M(rsR八Mへ)を使 用した場合よりもコストが低い場合が多い。しかしながら、DRAMは一般にS RAMよりもかなり低速である。
主プロセツサの性能に関して、DRAMのアクセス時間が遅いという影響を少な くする一般的な技術は、キヤ・ノシュ・メモリを使用することである。キャッシ ュ・メモリは限定されたサイズの高速記1J!装置であり、通常は主記憶装置の 選択された記憶域を反映する、データ・ラインとして知られているデータ・ブロ ノクを記憶するSRAMから成っている。キヤツシユ・メモリはそれが反映する 1記憶装置よりもサイズが小さい。すなわち、キヤツシユ・メモリは代表的には 完全にアドレス指定可能ではなく、各データ・ライン毎にタグ・フィールドを記 憶しなければならない。タグ・フィールドは特定のデータ・ラインに対応する主 記憶のアドレスを特定する。
主プロセツサが、読出し要求と、主記憶装置に記憶された所望のデータに対応す るアドレスを発すると、受理されたアドレスをキヤツシユ・メモリのタグ・フィ ールドと比較することによってキヤツシユ・メモリがチェツクされる。所望のデ ータがキヤノシj内に記憶されている場合は、[ヒツトJ状態が生じ、所望のデ ータを瞬時に主プロセッサ向1ノに活用できる。所望のデータがキャッシュ内に 記憶されていない場合は、[ミスJ状態が生じ、所望のデータをより低速の1記 憶装置から取出さなければならない。ヒツト率が低いと1プロセツサの動作が低 速になるので、キヤツシユ・メモリ設z1の代表的な目的はヒツト串を高めるこ とにある、、4ヤ、/ユ・メモリ・サブ/ステムでヒツト率を高めるための従来 技術の−・つば、−1−キやノノユと共に先取りバッファを使用Vることである 。先取りバッファは一!記+!?装置から先取りされたデータを記↑aするメモ リである。次の読出し要求のためのアドレスの予測に基づいて、データは次の読 出し要求の前に先取りバッファ内に理論的に先取りされる。主3己境装置が次の 読出し命令を発4″ると、予測が11−確+、(らば先取りバッファから所望の データを活用できる。代表的なしt来技術の/ステムでは、予測が正]7かった 場合、所望のデータが先取りバッファから主キ千ノ/ユに移動され、主プロセツ サに送られる。
しかI7ながら、主キャッシュ内に先取りデータを記f!!する従来の先取り機 構は、高いしノド・11を保持Vるために比較的大型の1キヤノンユ・メモリを 必Vとすることが多い。その理由は、主キヤノンユは一般に順アドレスである予 測可能なアドレスバス塞がれてしまうことが多いからである。残念lよことに、 キャソノユ・メモリが大型になる七コンピュータ・/ステムのコストが高くなり 、主プロセツサとオノヂノブの効率的なキャソンユを備えることができな(なる 場合が多い。
&唯然炙n互旦煎 本発明の目的の一つはコノピユータ・システムでのデータ・アクセス時間を最小 阻に短縮することにある。
本発明の別の目的は、比較的効率よく主記憶装置にキヤノンスをブリツノするこ とにある。
本発明の別の[1的はより大型のキャッシュ・メモリのヒツト率に匹敵する比較 的高いヒツト率の、比較的小型のキヤノンユ・メモリをコンビμ−タ・ンステ1 1に備えることにある。
本発明の更に別の目的は、マイクロプロセッサ・システムに配置するのに適した 効率が高いキ千)/ユ・メモリ・サブンテステムを提供することにある。
本発明の上記の、及びその他の目的は、コノピユータ・/ステムにおいて上記+ 8装置のアクセス時間を短縮する方法と装置によって達成される。本発明のキ十 ノ/、、I・メモリ・サブ/ステムでは、主記憶装置に記憶されたデータ・ライ ンにり1応するアドレスが続出し要求と共に主プロセツサから受理される。この アドレスは命令先取りバッファ、データ先取りバッファ及び主キ千ノ/」によっ て受理される。先取りバッフ1の一つでヒツトが生ずると、データ・ラインが先 IVリノくノファから読出され、主ブロセノ→ノに転送される。主キャノ/コの ヒ、1が生ずると、所望のデータが主記憶装置から先取りされ、主キヤノンユに 記憶され、主ブロセノ→Jに転送される。いずれの場合も(ヒツト又はミス)、 所望のデータが主プロ七ノ→Jに転送された後、予測アドレスが生成される。次 に、上記惧装置の予測アドレスに記憶された次のデータ・ラインがコニ記協装置 から先取りされ、適宜の先取りされたバッファに記憶される。その結果、予測で きないアドレスにあるデータだIJが主キヤ、ツユに記4Bされていることにな る。予測できるアドレスのデータは土手十ノ/ユを塞ぐことはなく、命令及びデ ータ先取りバッファ内に記憶される。
本発明のその池の目的、特徴及び利点は添(1図面及び下記の詳細な説明によっ て明らかにされる。
図面の筒中なス幻匹 本発明の一実施例を図示するが、本発明は添fJ図面に限定されるもので1iな く、又、同一の参照符号は同一の素子を示すものである。
図1は分離されたキャッシュ・サブ/ステム・を使用したコノピユータ・/ステ ムの構成図である。
図2はプロセッサ・チップ上のキヤノンユ・→Jブノステノ・を有するコンピュ ータ・/ステムである。
図3は一つのキヤノンユ・メモリ・サブ/ステム用のアドレスとデータty路を 示した機能構成図である。
図4はキャッシュ・メモリ・づブ/ステムによって利用される方法の論理流れ図 である。
図5は先取り補助装置を使用したキヤノンユ・メモリ・づブ/ステムの!・−ド ウエアの構成図である。
図6は先取り補助装置をイfするキャッシュ・メモリ・サブ/ステム・が利用V る方法の論理流れ図である。
図7はキャッシュ・サブ/ステムのストライド予測ハードウェアを示した[+  −Cある。
詳細な説明 図1はコノピユータ・システム5のアーキテクチャの構成図である。コンピュー タ・/ステム5はアドレス、データ及び制御ll tl’1報をバス15を経て キャノン、、l・づブ/ステム20へ又はキャッ/ユ・サブ/ステムから転送し 、転送されるプロセッサ10をず■する。キャッシュ・サブ/ステムは1^報を 高速バス30を介して主記憶装置40へ又は主記憶装rfI4Qから転送し、転 送される。図1に示した実施例では、キヤノンユ・サブ/ステムはプロセッサl Oの外部の回路から成っている。率ヤ、/ユ・サブ/ステム20はプロセッサ1 0に対して機1i12的に即応性がある。言い換えると、プロセッサlOは、ご れが主記憶装置40に直接接続されているかのように、バス15を杆で続出し要 求とアドレスを発する。
後にXr述するように、キヤノンコ・サブ/ステム20はキャッシュの記憶スペ ースを最小用に留めつつ、キャノンjのヒツト率を最大限高めることを援助する 。
図2は本発明の別の実施例を示し、フンピj−り・システム7のキャッシュ・サ ブ/ステム2Iがプロセッサ・デツプ11内に位置している。一方、キヤ、/ユ ・サブ/ステム21はバス31を経て主記憶装置41に結合されCいる。
図3(ま図1のキヤノンユ・サブ/ステム20を示している。キヤノンユ・サブ /ステム20はプロセッサ・インタフェース21O1命令先取りバッフ1220 (Iplb)、データ先取りバッファ230(DI)rb)、主キャノ/x 2 40、及びメモリ・インタフ1−ス250を備えている。プロセッサ・インタフ 、−ス210はバスI6を杆てプロセッサ10からアドレスを受理Vる。ブロセ ノ→J・イ/タフX−ス210はデータバス17を経てプロセッサ10に、又、 ブロセノ4310からデータを転送し、転送され、バス18を杆てプロセッサ1 0に、又、ブロセノづ10から制御ll情報を転送し、転送される。バス16. 17及び18は図1に示したバスの一部である。
I p l 11220はプロ七ノ”jIO用のA 合を先取りし、バッファす る。、1plb 220はrドレスIy路52を経てプロセッサ・イ/タフS− ス210から命令アドレスを受1ノるために結合され、データ経路5Gを経てプ ロセッサ・イノタフコース210に命令を転送する。Ipfb220はアドレス 経路62を経てメモリ・インタフゴース250に予測命令アドレスを転送し、デ ータ経路64を経て次の命令ラインを受けるように結合されている。
同様にして、Dp(b230はプロセッサ10川のデータを先取りし、バッファ する。I) p r I) 230はアドレスバス54を経てブロモ、4J・イ ノタフエース210からアドレスを受け、データ経路58を経てデータをブロモ 、4)・インタフブース210に転送する。I)pfb230はアドレス経路6 6を紅′(予測データ・アドレスをメモリ・インタフェース250に転送し、デ ータ経路68を打て次のデータ・ラインを受理する。
主キャッシュ240は1plb220によって先取りされない予測不11シな命 令と、I) p r +) 230によって先取りされない予測不能なデータと を保存する。土キャッシュ240はマルチブレク++260を打てプロセッサ・ イノタフコース21Oからから命令アドレス52又はデータ・ア1ルス54のい ずれかを受理する。
主キャ、ツユ240にミス法曹が生じた場合は、主キヤ、、/j240はメモリ ・インクフJ−ス250にアドレス74を転送し、データ76をメモリ・インタ フェース250に、又、メモリ・インタフェース250から転送し、転送される 。
図4はキャッシュ・サブ/ステム20が利用する方d、の流れ図である。ブrl  ツク100で、キヤノンユ・サブ/ステム20はプロセッサ10からの読出し 要求を受cノる。プロセッサ・インタフェース210はアドレスバス16を経て 所望のアドレスを受ζプ、制御バス18を紅て読出し要求信号を受ける。受理さ れたアlルスli(+)アドレス経路52を経てI p I l) 220に、 (2)アドレス経路54を経てI) p r +) 230に、又、(3)マル チブレク→ノ260を経てよキャッシュ240に送られる。制御バス18土の信 号は、読出し要求が命令の先取り川であるか、データの先取り用であるかを1行 水する。
制御信号18が命令の先取りを指示した場合は、所望の命令について先取りハ、 ファがチプノクされる。これが行われるのは、ブロセノづ・インタフェース21 0が命令ア1゛レス52をI p I b 220に転送する時である。一方、 制御信号I8がデータの先取りを指示した場合は、ブロモy@j210がデータ ・“rドレス54を+) p I b 230に転送した時に、データ先取りバ ッファがチェックされる。
判定ブロック主キャッシュ又は先取りバッファのしノドが生じない場合は、制− 1−,4ヤノ/ユ装置11540との間に転送される。
6はLRU法に基づいて置換えられる256のエントリを有する、4方向連せキ 盾の121−が検知されると、制御1iブロツク370に移行し、そこで制御装 置550はマルfブレクリ制御信り555を発し、それによってマルチプレクサ 560はf測アドレス521を取出しアト」ミス・レジスタ580に結合させる 。制御装置550は更にメモリ制御装置586に取出し周期を発信するために制 御CR号55Gを発する。取出しアドレス・レジスタ580は取出しアドレス1 9を転送し、メモリ制御586は高性能バス30を打て制御信号22を転送し、 それによって上記憶装置40の取出し周期が開始さAする。予測されたアドレス 521にり1g、・4−るラインは上記ta装百40から取出される。ライン2 0はデータ受理レジスタ582によって受理され、制御信号1日が命令手順又は データ読出し手順のいVれをli′IU、“ザるかに応じて、制御装置550か ら発された充填先取り信号552又は553の制御の下で、データバス17を杼 −C命令先取り装F1510又はデータ先取り装fi530のいずれかに転送さ れる。次に制御はブロック410に進み、そこで続出し要求手順が終rする。
ブロック360て、バス55!土で先取りhr1肋のしノドが制御装置550に よ7て検知されない場合は、制御はブロック380に進み、そこで増分レジスタ 570が次順ライ/・アドレス571を生成rる。制御装置550は次に、取出 しT I’ l/ス・17ノスタ580に次順ライン・アドレス571を結合r るマルチブレクづ制御(3″1J555を発する。制all装置550はメモリ ilJ制御装置586に取出し周期を発信する■制御f8号556も発する。取 出しアドレス・レジスタ580は取出しアドレス619を伝送し、メモリ制9+ 1586は高性能バス30を経て制御信号622を伝送し、それによって主記憶 装置40の取出し周期が開始される。その後、次順のラインが主記憶装置40か ら取出される。次順ライン20はデータ受理レジスタ582によって受理される 。次に制御信号18が命令又はデータ続出し1′−順のいずれを(h示するかに 応じて、次順ライン20がデータバス17を経C5命令先取り装置510又はデ ータ先取り装置530に転送される。これは制御装W 550によって発される バス552又は553土の充填先取り信号の制御の下で行われる。次に制御はブ ロック410に進み、そこで読出し要求手順は終了する。
判定ブロック310で、バス554上で指示された主キャッシュのし、トが受理 されると、制御はブロック340に進み、そこて所望のラインが−1,キヤ、ン ユ装置540から読出され、データ・ライン17を経てブUセッサ10に供給さ れる。次に制御はブロック360に進ろ、そこで上述のように先取りが行われる 。。
先取りバッファのし〕I・又は土士ヤノ/ユのしノドが判定ブロック310て1 1信されない場合は、制御はブa、yり350に移行腰そこで「ミス状態」のラ インが主キャ、ンユ装置540に取出される。これは、制御装置550が制御信 号555を発し、それによっ−(マルチブレク′11560が取出しアドレス・ 17ジスン58()を所望のアドレス51C+に結合せしめた時に実行さ4する 。制御装置550は更にメモリ制御装置586に取出し周期を発信する制御信号 556をも発4る。
取出しアドレス・レジスタ580は取出しアドレス619を伝送し、メモリ制御 586は高性能バス30を経て制御信号622を伝送腰それによって主記憶装置 40の取出し周191が開始される。ミス状1mのラインはバス620上に戻り 、データ受理レジスタ582に記tgされ、データバス17を経て主4−ヤ/ノ 81装置540に転送される。次に制御装置550はバス554上で充填上キヤ 、ンユ信りを発し、それによって主手中ツノ:L540は新たなエントリをイ1 成積る。
ブロック390ては、次順のラインが上記1f!装置40から適宜の先取りバッ ファ内に先取りされる。−に二連の場合と同様に、増分レジスタ570は次順ラ インのr1ルス571を生成する。次に制御装置550は次順ラインのアドレス 571を取出しアドレス・レジスタ580に結合するマルチプレクサ制御信号5 55を発する。取出しアlルス・レジスタ580は取出しアドレス619を伝送 し、メモリ制御586は高性能バス30を経て制御信V7+322を伝送し、そ れによって主記憶装置40の取出し周期が開始される。広開うイノは主記憶装置 40から取出される。次順ライン201↓データ受理レンスタ582によって受 理される。広開うイノ20は、制御装置550によって発されたバス552又は バス553 J−の充填先取り信号の制御の下で、命令先取り装置510又はデ ータ先取り装置530のいずれかに転送される。
ブロック400で、制御装置550がバス551 J:にl’ A C生成借り を発すると、新たなPACエノトリがl’l成される。先取りNli助装置52 0のCA R及びI〕ARは、先取り補助装置520のデータ・セクション内の 新たなl’ A Cエントリを作成4−るために、所望のアドレス51[iと関 連して使用される。PACエノ1−リは、制御信号18が命令手順又はデータ取 出し手順のいずれをtlt示するかに応じ−〔、最終命令′rアドレスΔR又は データ・アドレスD A RIこよって定義された迎えりタグ・フィールド(+ ’ RE V TへGS)と共に、予測アドレス(N E X ’ri’ A  G )として所望のアドレスを記憶することによってデータ・セクションで作を 戊される。次に制御は410に進み、そこで読出し要求手順は終了する。
図7は図2のキ十ノ/ス・サブンステム21によって供給されるストライド予測 バードウ、アの例を示している。ストライド予測器703は装填命令中にブロモ 、すIIから受理された最後のいくつかのプログラド・カウンタ(rl’cJ) と仮想アドレス(rVVA)との月を記憶し、装填命令に対応する1’ C4f iのT’J i1’a現をチョックする。ストライド予1flll器703によ ってPC値の再出現が検知された場合は、Dpfb220のようなデータ先取り バッファ内に先取りするための予測VA795を生成4−るために、対応するV A値(r V A maLch−)が利用される。
一実1!IP+で(ま、ストライド予測′?3703はプロセッサ・チップ11 上にある。
レジスタ701と702はプロセッサll内に組ろ入れられ、それぞれPC値と VA値を含んでいる。この例の場合は、最後の5対のPCとVAが記(Rされて いる。
ストライド予測器703は、装填命令、すなわち記憶装置からの装填又は記憶装 置の読出しを1:1示Vる信り780と共に、プロセッサIIからVA781と 1)C783を受理する。この例では、ストライド予測器703は段゛735か ら739で構成されている。段735の場合は、双方とも装填信号780の制御 の下で、レジスタ710がVA781を記憶し、レジスタ720がr’c783 を記f!!する。
段73Gの場合は、双方とも装填信号780の制御の下で、レノスタフ+1がレ ジスタ710から受理したVA790を記憶し、レジスタ721がレジスタ72 0から受理したPC792を記憶する。
1’J、’ 73 Gから739は段735ど同様に機11託する。装填(5号 )80が装填命令をlit示する毎に、VA781とl’ C783の値は伝搬 され、[先入れ先出し」方式によって段735から739までに記tI!される 。
比較器750から754は最新のPC783を各段735から739のそれぞれ のPC出力と比較する。例えば、段735では、比較′a750はレジスタ72 0の出カフ92を最新のl’c78.3と比較する。比較器750が双方の一致 を検知すると、使用可11シ信号791によって励振器740はレジスタ710 からの■へ790をV Amatch 782に結合せしめる。1iul様にし て、比較器751はレジスタ721の出力が最新のr’c783と一致−゛るか どうかを検査する。比較器751によって一致が検出されると、レジスタ711 の出力は励振器741によってVAmatch と結合される。
各々の段735から739は最新のr’ C783を、記憶されたl′C値と比 較[る。レジスタ720から724の出力のいVれかが最新のPC783と一致 する場合は、レジスタ710から714に記憶された対応する■八が■Amat ch 782I!:結合される。
数理論狸回路730が■へ++alcl+ 782及び最新の■へ781を受理 し、下記の方程式に基づいて予測■Δ795を算出する。
予測VA士最新VA+ (最新■八−V Amatch ) −2x最新VA− VAmatch例えば、vl、理論狸回路730 +;L−実施1911では、 一方の入力が論理的に左/フ1−された最新VA781(2x最新■八)であり 、別の入力がVA++atch 782の2の補数である簡単な加算器から成る ものでよい。VA795はDpfl+220のようなデータ先取りバッファ内に 先取りするために利用できる。
」二連の明細書において、本発明を特定の実施例について説明しCきた。しかし 、添(lの請求の範囲に記載した本発明の広義の趣旨と範囲から離れることなく 、種々の修正と変更が可能であることは明白である。従って、明細書と図面は限 定的なものではなく、例示的なものである。
−T−摩売 和r −1rE−書 ()j ”x’; )平成7年37.1 +  5 El 持、負11長官 殿 l、・I+ (’lの表示 ・IF成5年特許願 第515806号(111際出願番号)PCT/USO3 1018142、発明の名称 コンピュータ・ミステノ、における1、記憶装置のアクセス時間とキャノンニー メモリのサイズを最小限にするためのキャッシュへの先取り 3、補市をする者 ’IT (iとの関係 特許出願人 名 称 ランパス舎インコーボレーテノド4、代理人 戸: 所 〒100 東京都■−代[11区永III町2丁114番2号秀和溜 池ビル8階 山川111際特許事務所内 電話(3580)0961 (代表) 6、Mi+1の対象 (1)持詰法第184条の5第1項の規定による書面の特許出願人の欄(2)図 面の翻訳文 国際調査報告 1m、、+ie+alAeellc*lle+No PCT/US931018 】’フロントページの続き (81)指定回 EP(AT、BE、CH,DE。
DK、ES、FR,GB、GR,IE、IT、LU、MC,NL、PT、SE) 、0A(BF、BJ、CF、CG、CI、CM、GA、GN、ML、MR,SN 、TD。
TG)、AT、AU、BB、BG、BR,CA、CH。
CZ、DE、DK、ES、FI、GB、HU、JP、KP、KR,LK、LU、 MG、MN、MW、NL、N。
、 NZ、PL、 PT、 RO,RU、SD、SE、SK。
A (72)発明者 ウェア、フレデリック・アボットアメリカ合衆国 94022  カリフォルニア州・ロス アルトス・フレモレト パインズ・13961

Claims (16)

    【特許請求の範囲】
  1. 1.コンピュータ・システムで記憶装置のアクセス時間を最小限に短縮する方法 において、 (a)主記憶装置内に記憶されたデータ・ラインに対応するアドレスを受理し、 主プロセッサからの読出し要求を受理する段階と、(b)アドレスを先取りバッ ファと主キヤツシュに転送する段階と、(c)先取りバツフアからの先取りバツ フア・ヒット信号と、主キヤツシュからの主キヤツシュ・ヒット信号を検知する 段階であって、その際に、先取りバッファ・ヒット信号はアドレスに対応するデ ータ・ラインが先取りバッファ内に記憶されているか否かを指示し、主キヤツシ ュ・ヒット信号はアドレスに対応するデータ・ラインが主キヤツシュに記憶され ているか否かを指示する段階と、(d)先取りバッファ・ヒット信号が、データ ・ラインが先取りバッファ内に記憶されていることを指示した場合は、先取りバ ツフアからデータ・ラインを読出し、データ・ラインを主プロセツサに伝送し、 次に段階(h)に進む段階と、(e)主キヤツシュ・ヒツト信号が、データ・ラ インガ主キャッシュに記憶されていることを指示した場合は、主キヤツシュから データ・ラインを読出し、データ・ラインを主プロセッサに伝送し、次に段階( h)に進む段階と、(f)アドレスを主記憶装置に伝送する段階と、(g)主記 憶装置からデータ・ラインを受理し、データ・ラインを主プロセッサに伝送する 段階と、 (h)予測アドレスを生成し、予測アドレスに対応する次のデータ・ラインを主 記憶装置から取出し、次のデータ・ラインを先取りバツファ内に記憶する段階、 とから成ることを特徴とする方法。
  2. 2.段階(g)が更にデータ・ラインを主キヤツシュに記憶する段階を含んむこ とを特徴とする請求の範囲第1項記載の方法。
  3. 3.段階(h)で予測アドレスを生成する段階がアドレスを増分することから成 ることを特徴とする請求の範囲第1項記載の方法。
  4. 4.コンピュータ・システムにおいて記憶装置のアクセス時間を最小限に短縮す る方法において、 (a)主プロセッサからの読出し要求と、主記憶装置内に記憶されたデータ・ラ インに対応するアドレスを受理する段階と、(b)前記アドレスを先取りバツフ ァ、主キヤツシュ及び先取り補助キャッシュに転送する段階と、 (c)先取りバッファからの先取りバッファ・ヒット信号と、主キャッシュから の主キャッシュ・ヒット信号を検知する段階であって、その際に、先取りバッフ ァ・ヒット信号はアドレスに対応するデータ・ラインが先取りバッファ内に記憶 されているか否かを指示し、主キャッシュ・ヒット信号はアドレスに対応するデ ータ・ラインが主キヤツシュに記憶されているか否かを指示する段階と、(d) 先取りバツファ・ヒット信号が、データ・ラインが先取りバッファ内に記憶され ていることを指示した場合は、先取りバッファからデータ・ラインを読出し、デ ータ・ラインを主プロセッサに伝送し、次に段階(f)に進む段階と、(e)主 キヤツシユ・ヒット信号が、データ・ラインが主キヤツシュに記憶されているこ とを指示した場合は、主記憶装置データ・ラインを取出し、ヂータ・ラインを主 プロセッサに伝送し、先取り補助キヤツシュを更新する段階と、(f)先取り補 助キャッシュから先取り補助キヤツシュ・ヒット信号を検知する段階であって、 その際に、先取り補助キヤツシュ・−ツト信号がアドレスに対応する予測アドレ スが先取り補助キャッシュに記憶されているか否かを指示する段階と、 (g)先取り補助キヤツシュ・ヒット信号が、アドレスに対応する予測アドレス が先取り補助キャッシュに記憶されていないことを指示した場合は、主記憶装置 から次順のデータ・ラインを取出し、次順のデータ・ラインを先取りバツファ内 に記憶する段階と、 (h)先取り補助キヤツシユ・ヒット信号が、アドレスに対応する予測アドレス が先取り補助キャッシュに記憶されていることを指示した場合は、主記憶装置か ら予測アドレスに対応する次のデータ・ラインを取出し、次のデータ.ラインを 先取りバッファ内に記憶する段階、とから成ることを特徴とする方法。
  5. 5.段階(e)の、主記憶装置データ・ラインを取出し、先取り補助キヤツシュ を更新する段階が、 (a)アドレスを主記憶装置に伝送する段階と、(b)主記憶装置からデータ・ ラインを受理し、主キャッシュ内にデータ・ラインを記憶し、データ・ラインを 主プロセッサに伝送する段階と、(c)主プロセッサから受理された最終アドレ スによってアドレスが選択されるように、アドレスを先取り補助キヤツシュ内に 記憶する段階とから成ることを特徴とする請求の範囲第4項記載の方法。
  6. 6.更に、 (i)主プロセッサからプログラム・カウンタ・アドレスと、仮想アドレスと、 装填命令制御信号とを受理する段階と、(j)装填制御信号が主プロセッサから 受理されると、最後の「n」個のプログラム・カウンタ・アドレスと、仮想アド レスとが記憶されるように、プログラム・カウンタ・アドレスと、仮想アドレス とを記憶する段階と、(k)プログラム・カウンタ・アドレスと、最後の「n」 個のプログラム・カウンタ・アドレスのそれぞれと比較する段階と、(∫)プロ グラム・カウンタ・アドレスが最後の「n」個のプログラム・カウンタ・アドレ スの一つと等しい場合は、対応する記憶された仮想アドレスに2を掛け、仮想ア ドレスを加算することによって予測仮想アドレスを生成する段階と、(m)プロ グラム・カウンタ・アドレスが最後の「n」個のプログラム・カウンタ・アドレ スの一つと等しい場合は、予測仮想アドレスに対応する次のデータラインを主記 憶装置から取出し、次のデータ・ラインを予測バッファ内に記憶する段階とを含 むことを特徴とする請求の範囲第4項記載の方法。
  7. 7.コンビコーク・システムで記憶装置のアクセス時間を最小限に短縮する装置 において、 主記憶装置内に記憶されたデータ・ラインに対応するアドレスを受理し、主プロ セツサからの読出し要求を受理する装置と、アドレスを先取りバッファと主キヤ ツシュに転送する装置と、先取りバツファから、アドレスに対応するヂータ・ラ インが先取りバッファ内に記憶されているか否かを指示する先取りバッファ・ヒ ット信号を検知する装置と、 先取りバツファ・ヒット信号が、データ・ラインが先取りバツファ内に記憶され ていることを指示した場合は、先取りバッファからデータ・ラインを読出し、デ ータ・ラインを主プロセッサに伝送する装置と、主キャッシュから、アドレスに 対応するデータ・ラインが主キヤツシュ内に記憶されているか否かを指示する主 キャッシュ・ヒット信号を検知する装置と、主キャッシユ・ヒット信号が、デー タ・ラインが主キヤツシュ内に記憶されていないことを指示した場合は、主記憶 装置からデータ・ラインを取出す装置と主キヤツシュからデータ・ラインを読出 し、データ・ラインを主プロセッサに伝送する装置と、 次順のデータ・ラインを主記憶装置から取出し、次順のデータ・ラインを先取り バッファ内に記憶する装置と、 予測アドレスを生成し、予測アドレスに対応する次のデータ・ラインを主記憶装 置から取出し、次のデータ・ラインを先取りバッファ内に記憶する装置、とから 構成されたことを特徴とする装置。
  8. 8.アドレスを先取り補助装置に転送する装置と、先取り補助装置から、アドレ スに対応する予測アドレスが先取り補助キャッシュ内に記憶されているか否かを 指示する、先取り補助キヤツシュ・ヒット信号を検知する装置と、 先取り補助キャッシュ・ヒツト信号が、アドレスに対応する予測アドレスが先取 り補助キャッシュ内に記憶されていないことを指示した場合は、主記憶装置から 次順のデータ・ラインを取出し、次順のデータ・ラインを先取りバッファに記憶 する装置と、 先取り補助キャッシュ・ヒット信号が、アドレスに対応する予測アドレスが先取 りバツファ内に記憶されていることを指示した場合は、主記憶装置から予測アド レスに対応する次順のデータ・ラインを取出し、次順のデータ・ラインを先取り バッファに記憶する装置と、 主プロセッサから受理された最終アドレスによつてアドレスが選択されるように 、アドレスを先取り補助キャッシュ内に記憶する装置、とから成ることを特徴と する請求の範囲第7項記載の装置。
  9. 9.更に、 主プロセッサからプログラム・カウンタ・アドレスと、仮想アドレスと、装填命 令制御信号とを受理する装置と、 装填制御信号が主プロセッサから受理きれると、最後の「n」個のプログラムカ ウンタ・アドレスと、仮想アドレスとが記憶されるように、プログラム・カウン タ・アドレスと、仮想アドレスとを記憶する装置と、プログラム・カウンタ・ア ドレスと、最後の「n」個のプログラム・カウンタアドレスのそれぞれと比較す る装置と、プログラム・カウンタ・アドレスが最後の「n」個のプログラム・カ ウンタ・アドレスの一つと等しい場合は、対応する記憶された仮想アドレスに2 を掛け、仮想アドレスを加算することによって予測仮想アドレスを生成する装置 と、プログラム・カウンタ・アドレスが最後の「n」個のプログラム・カウンタ ・アドレスの一つと等しい場合は、予測仮想アドレスに対応する次のデータ・ラ インを主記憶装置から取出し、次のデータ・ラインを予測バツファ内に記憶する 装置とを含むことを特徴とする請求の範囲第7項記載の装置。
  10. 10.キヤツシュ・サプシステムにおいて、命令先取りヒット信号と、データ先 取りヒット信号と、主キャッシュヒット信号とを受信するように結合され、主プ ロセッサからのプロセッサ制御信号を受信するように結合され、充填命令信号と 、充填データ信号と、充填キヤツシュ信号と、次のアドレス選択信号とを生成す る制御装置と、アドレスと充填命令信号を受信するように結合され、それぞれが 対応するクグを有する複数の先取り命令ラインを記憶し、アドレスが先取りされ た命令ラインの一つのタグと対応する場合は、命令ヒット信号を生成し、データ バスを経て先取りされた命令を伝送し、且つ受理する命令先取り装置と、アドレ スと充填データ信号を受信するように結合され、それぞれが対応するタグを有す る複数の先取りデータ・ラインを記憶し、アドレスが先取りされたデータ・ライ ンの一つのクグと対応する場合は、データ・ヒット信号を生成し、データバスを 経て先取りされたデータを伝送し、且つ受理するデータ先取り装置と、アドレス と充填キヤツシュ信号を受信するように結合され、それぞれが対応するタグを有 する複数の予測されないラインを記憶し、アドレスが先取りされた予測されない ラインの一つのクグと対応する場合は、キヤツシュ・ヒット信号を生成し、デー タバスを経て予想されないラインを伝送し、且つ受理する主キヤツシュ装置と、 アドレスと次のアドレス選択信号を受信するように結合され、予測されたアドレ スを生成し、アドレスと予測されたアドレスを選択的に主記憶装置に伝送する予 測装置と、 主記憶装置と、主プロセツサ、命令先取り装置、データ先取り装置及び主キヤツ シュ装置との間で情報を転送するように結合されたメモリ・インタフエースとか ら構成されたことを特徴とするキヤツシュ・サプシステム。
  11. 11.命令先取り装置が複数のライン・エントリを有する完全連想バッファ装置 から成り、前記ライン・エントリが先取りされた命令ラインを記憶するためのデ ータ・フィールドと、先取りされた命令ラインを選択するためのタグ・フィール ドとを有することを特徴とする請求の範囲第10項記載のキヤツシュ・サプシス テム。
  12. 12.データ先取り装置が複数のライン・エントリを有する完全連想バツファ装 置から成り、前記ライン・エントリが先取りされたデータ・ラインを記憶するた めのデータ・フィールドと、先取りされたデータ・ラインを選択するためのタグ フィールドとを有することを特徴とする請求の範囲第10項記載のキヤツシュサ プシステム。
  13. 13.キヤツシュ装置が複数のライン・エントリを有する連想キヤツシュ装置の 集合から成り、前記ライン・エントリが予測されないラインを記憶するためのデ ータ・フィールドと、予測されないラインを選択するためのクグ・フィールドと を有することを特徴とする請求の範囲第10項記載のキヤツシュ,サプシステム 。
  14. 14.予測装置が、 アドレスを受理するように結合され、アドレスを増分することによって次順のア ドレスを生成する増分レジスタ装置と、アドレスと、次順アドレスと、次のアド レス選択信号とを受理するように結合され、アドレスと次順アドレスとを、次の アドレス選択信号の制御の下で主記憶装置に選択的に伝送するマルチプレクサ装 置、とから構成されたことを特徴とする請求の範囲第10項記載のキヤツシュ・ サプシステム。
  15. 15.予測装置が、 アドレスを受理するように結合され、アドレスを増分することによって次順のア ドレスを生成する増分レジスタ装置と、アドレスを受理するように結合され、制 御装置からPACエントリ作成信号を受理するように結合され、各々が対応する タグを有する複数の予測アドレスを記憶し、アドレスが予測アドレスの一つのタ グと対応する場合は、PACヒット信号を生成し、PACヒット信号が生成され ると、アドレスに対応する次の予測アドレスを伝送するように結合された予測補 助装置と、アドレスと、次順アドレスと、次の予測アドレスと、次のアドレス選 択信号とを受理するように結合され、アドレスと、次順アドレスと、次の予測ア ドレスとを次のアドレス選択信号の制御の下で主記憶装置に選択的に伝送するマ ルチプレクサとから構成されたこことを特徴とする請求の範囲第10項記載のキ ヤツシュサプシステム。
  16. 16.先取り補助装置が、 予測アドレスを記憶するためのデータ・フィールドと、予測アドレスを選択する ためのタグ・フィールドとを有する複数のライン・エントリを有する連想キャン シュ装置の集合と、 アドレスを受理し、プロセッサ制御信号が命令続出し周期を指示した場合は、ア ドレスを記憶するように結合された第1レジスタ装置と、アドレスを受理し、プ ロセッサ制御信号がデータ読出し周期を指示した場合は、アドレスを記憶するよ うに結合された第2レジスタ装置とから構成されたことを特徴とする請求の範囲 第15項記載のキヤツシュ・サプシステム。
JP5515806A 1992-03-06 1993-03-03 コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り Pending JPH07506921A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US84730092A 1992-03-06 1992-03-06
US847,300 1992-03-06
PCT/US1993/001814 WO1993018459A1 (en) 1992-03-06 1993-03-03 Prefetching into a cache to minimize main memory access time and cache size in a computer system

Publications (1)

Publication Number Publication Date
JPH07506921A true JPH07506921A (ja) 1995-07-27

Family

ID=25300300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5515806A Pending JPH07506921A (ja) 1992-03-06 1993-03-03 コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り

Country Status (4)

Country Link
US (1) US5499355A (ja)
JP (1) JPH07506921A (ja)
DE (1) DE4391002T1 (ja)
WO (1) WO1993018459A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173392B1 (en) 1997-04-12 2001-01-09 Nec Corporation Prefetch controller automatically updating history addresses

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5498990A (en) * 1991-11-05 1996-03-12 Monolithic System Technology, Inc. Reduced CMOS-swing clamping circuit for bus lines
US6453388B1 (en) 1992-06-17 2002-09-17 Intel Corporation Computer system having a bus interface unit for prefetching data from system memory
WO1994003901A1 (en) * 1992-08-10 1994-02-17 Monolithic System Technology, Inc. Fault-tolerant, high-speed bus system and bus interface for wafer-scale integration
JP2596712B2 (ja) * 1993-07-01 1997-04-02 インターナショナル・ビジネス・マシーンズ・コーポレイション 近接した分岐命令を含む命令の実行を管理するシステム及び方法
US5848432A (en) * 1993-08-05 1998-12-08 Hitachi, Ltd. Data processor with variable types of cache memories
US5652858A (en) * 1994-06-06 1997-07-29 Hitachi, Ltd. Method for prefetching pointer-type data structure and information processing apparatus therefor
US5649144A (en) * 1994-06-13 1997-07-15 Hewlett-Packard Co. Apparatus, systems and methods for improving data cache hit rates
US5655113A (en) * 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
US5802272A (en) * 1994-12-19 1998-09-01 Digital Equipment Corporation Method and apparatus for tracing unpredictable execution flows in a trace buffer of a high-speed computer system
US5526320A (en) 1994-12-23 1996-06-11 Micron Technology Inc. Burst EDO memory device
US6804760B2 (en) * 1994-12-23 2004-10-12 Micron Technology, Inc. Method for determining a type of memory present in a system
US5729503A (en) * 1994-12-23 1998-03-17 Micron Technology, Inc. Address transition detection on a synchronous design
US5610864A (en) 1994-12-23 1997-03-11 Micron Technology, Inc. Burst EDO memory device with maximized write cycle timing
US6525971B2 (en) 1995-06-30 2003-02-25 Micron Technology, Inc. Distributed write data drivers for burst access memories
JP3548616B2 (ja) * 1995-01-20 2004-07-28 株式会社日立製作所 情報処理装置
US5630094A (en) * 1995-01-20 1997-05-13 Intel Corporation Integrated bus bridge and memory controller that enables data streaming to a shared memory of a computer system using snoop ahead transactions
US5687350A (en) * 1995-02-10 1997-11-11 International Business Machines Corporation Protocol and system for performing line-fill address during copy-back operation
US5778436A (en) * 1995-03-06 1998-07-07 Duke University Predictive caching system and method based on memory access which previously followed a cache miss
US5732242A (en) 1995-03-24 1998-03-24 Silicon Graphics, Inc. Consistently specifying way destinations through prefetching hints
US6237074B1 (en) * 1995-05-26 2001-05-22 National Semiconductor Corp. Tagged prefetch and instruction decoder for variable length instruction set and method of operation
US5787267A (en) * 1995-06-07 1998-07-28 Monolithic System Technology, Inc. Caching method and circuit for a memory system with circuit module architecture
US5860150A (en) * 1995-10-06 1999-01-12 International Business Machines Corporation Instruction pre-fetching of a cache line within a processor
US6085291A (en) * 1995-11-06 2000-07-04 International Business Machines Corporation System and method for selectively controlling fetching and prefetching of data to a processor
US7681005B1 (en) 1996-01-11 2010-03-16 Micron Technology, Inc. Asynchronously-accessible memory device with mode selection circuitry for burst or pipelined operation
US5778422A (en) * 1996-04-04 1998-07-07 International Business Machines Corporation Data processing system memory controller that selectively caches data associated with write requests
US6981126B1 (en) * 1996-07-03 2005-12-27 Micron Technology, Inc. Continuous interleave burst access
US6401186B1 (en) * 1996-07-03 2002-06-04 Micron Technology, Inc. Continuous burst memory which anticipates a next requested start address
US6029226A (en) * 1996-09-30 2000-02-22 Lsi Logic Corporation Method and apparatus having automated write data transfer with optional skip by processing two write commands as a single write command
US6167486A (en) 1996-11-18 2000-12-26 Nec Electronics, Inc. Parallel access virtual channel memory system with cacheable channels
US5822790A (en) * 1997-02-07 1998-10-13 Sun Microsystems, Inc. Voting data prefetch engine
US7272703B2 (en) * 1997-08-01 2007-09-18 Micron Technology, Inc. Program controlled embedded-DRAM-DSP architecture and methods
US6035383A (en) * 1997-11-03 2000-03-07 Arm Limited Memory access request result prediction prior to confirm signal generation
US6134643A (en) * 1997-11-26 2000-10-17 Intel Corporation Method and apparatus for cache line prediction and prefetching using a prefetch controller and buffer and access history
US7089331B1 (en) * 1998-05-29 2006-08-08 Oracle International Corporation Method and mechanism for reducing client-side memory footprint of transmitted data
US6453377B1 (en) 1998-06-16 2002-09-17 Micron Technology, Inc. Computer including optical interconnect, memory unit, and method of assembling a computer
JP3803196B2 (ja) * 1998-07-03 2006-08-02 株式会社ソニー・コンピュータエンタテインメント 情報処理装置、情報処理方法および記録媒体
JP3439350B2 (ja) * 1998-10-02 2003-08-25 Necエレクトロニクス株式会社 キャッシュ・メモリ制御方法及びキャッシュ・メモリ制御装置
US6279082B1 (en) 1998-10-14 2001-08-21 Telefonaktiebolaget Lm Ericsson (Publ) System and method for efficient use of cache to improve access to memory of page type
WO2000031642A1 (de) * 1998-11-25 2000-06-02 Fujitsu Siemens Computers Gmbh Cache-speichereinrichtung
US6385703B1 (en) * 1998-12-03 2002-05-07 Intel Corporation Speculative request pointer advance for fast back-to-back reads
US6397296B1 (en) * 1999-02-19 2002-05-28 Hitachi Ltd. Two-level instruction cache for embedded processors
GB2348024B (en) * 1999-03-16 2003-06-25 Ibm Cache memory systems
US6449697B1 (en) 1999-04-23 2002-09-10 International Business Machines Corporation Prestaging data into cache in preparation for data transfer operations
US6223257B1 (en) 1999-05-12 2001-04-24 Rise Technology Company Instruction cache address generation technique having reduced delays in fetching missed data
US6754779B1 (en) * 1999-08-23 2004-06-22 Advanced Micro Devices SDRAM read prefetch from multiple master devices
JP2001060169A (ja) * 1999-08-24 2001-03-06 Hitachi Ltd キャッシュコントローラ及びコンピュータシステム
US6708254B2 (en) 1999-11-10 2004-03-16 Nec Electronics America, Inc. Parallel access virtual channel memory system
US7389284B1 (en) 2000-02-29 2008-06-17 Oracle International Corporation Method and mechanism for efficient processing of remote-mapped queries
US6453393B1 (en) 2000-09-18 2002-09-17 Intel Corporation Method and apparatus for interfacing to a computer memory
SE0102564D0 (sv) 2001-07-19 2001-07-19 Ericsson Telefon Ab L M Arrangement and method in computor system
US7103590B1 (en) 2001-08-24 2006-09-05 Oracle International Corporation Method and system for pipelined database table functions
EP1304619A1 (en) * 2001-10-22 2003-04-23 STMicroelectronics Limited Cache memory operation
US20030084433A1 (en) * 2001-10-31 2003-05-01 Chi-Keung Luk Profile-guided stride prefetching
US6973457B1 (en) 2002-05-10 2005-12-06 Oracle International Corporation Method and system for scrollable cursors
US7610351B1 (en) 2002-05-10 2009-10-27 Oracle International Corporation Method and mechanism for pipelined prefetching
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7167954B2 (en) * 2002-09-09 2007-01-23 Broadcom Corporation System and method for caching
TWI229290B (en) 2002-09-11 2005-03-11 Sunplus Technology Co Ltd Storage structure and the method capable of storing and forwarding instructions and data
US7055005B2 (en) * 2003-04-07 2006-05-30 Hewlett-Packard Development Company, L.P. Methods and apparatus used to retrieve data from memory into a RAM controller before such data is requested
US7051162B2 (en) * 2003-04-07 2006-05-23 Hewlett-Packard Development Company, L.P. Methods and apparatus used to retrieve data from memory before such data is requested
US20050010726A1 (en) * 2003-07-10 2005-01-13 Rai Barinder Singh Low overhead read buffer
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7927948B2 (en) 2005-07-20 2011-04-19 Micron Technology, Inc. Devices with nanocrystals and methods of formation
US7941604B2 (en) * 2006-02-01 2011-05-10 Infineon Technologies Ag Distributed memory usage for a system having multiple integrated circuits each including processors
US20090002863A1 (en) * 2007-06-29 2009-01-01 Seagate Technology, Llc System and method of monitoring data operations at a data storage device
US9710384B2 (en) * 2008-01-04 2017-07-18 Micron Technology, Inc. Microprocessor architecture having alternative memory access paths
US20100010965A1 (en) * 2008-07-08 2010-01-14 International Business Machines Corporation Query Management Systems
US8621153B2 (en) * 2009-12-26 2013-12-31 Intel Corporation Microcode refactoring and caching
US8914580B2 (en) 2010-08-23 2014-12-16 Apple Inc. Reducing cache power consumption for sequential accesses
US8977819B2 (en) * 2010-09-21 2015-03-10 Texas Instruments Incorporated Prefetch stream filter with FIFO allocation and stream direction prediction

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4247817A (en) * 1978-05-15 1981-01-27 Teradyne, Inc. Transmitting electrical signals with a transmission time independent of distance between transmitter and receiver
US4811202A (en) * 1981-10-01 1989-03-07 Texas Instruments Incorporated Quadruply extended time multiplexed information bus for reducing the `pin out` configuration of a semiconductor chip package
US4481625A (en) * 1981-10-21 1984-11-06 Elxsi High speed data bus system
US4519034A (en) * 1982-06-30 1985-05-21 Elxsi I/O Bus clock
US4719568A (en) * 1982-12-30 1988-01-12 International Business Machines Corporation Hierarchical memory system including separate cache memories for storing data and instructions
US4807110A (en) * 1984-04-06 1989-02-21 International Business Machines Corporation Prefetching system for a cache having a second directory for sequentially accessed blocks
JPS61175845A (ja) * 1985-01-31 1986-08-07 Toshiba Corp マイクロプロセツサシステム
JPH0731627B2 (ja) * 1985-08-10 1995-04-10 株式会社リコー メモリ−装置
US4785394A (en) * 1986-09-19 1988-11-15 Datapoint Corporation Fair arbitration technique for a split transaction bus in a multiprocessor computer system
US4980823A (en) * 1987-06-22 1990-12-25 International Business Machines Corporation Sequential prefetching with deconfirmation
US4942520A (en) * 1987-07-31 1990-07-17 Prime Computer, Inc. Method and apparatus for indexing, accessing and updating a memory
US4926323A (en) * 1988-03-03 1990-05-15 Advanced Micro Devices, Inc. Streamlined instruction processor
US5142634A (en) * 1989-02-03 1992-08-25 Digital Equipment Corporation Branch prediction
US5136697A (en) * 1989-06-06 1992-08-04 Advanced Micro Devices, Inc. System for reducing delay for execution subsequent to correctly predicted branch instruction using fetch information stored with each block of instructions in cache
EP0534963A1 (en) * 1989-08-24 1993-04-07 E.I. Du Pont De Nemours And Company Immunoassay to detect pseudocercosporella antigen in cereal plants
US5148538A (en) * 1989-10-20 1992-09-15 International Business Machines Corporation Translation look ahead based cache access
US5261066A (en) * 1990-03-27 1993-11-09 Digital Equipment Corporation Data processing system and method with small fully-associative cache and prefetch buffers
DE69132201T2 (de) * 1990-03-27 2000-12-28 Compaq Computer Corp., Houston Speicher-Anordnung und Verfahren mit Vorausholungspuffer
US5317718A (en) * 1990-03-27 1994-05-31 Digital Equipment Corporation Data processing system and method with prefetch buffers
EP0457403B1 (en) * 1990-05-18 1998-01-21 Koninklijke Philips Electronics N.V. Multilevel instruction cache and method for using said cache

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6173392B1 (en) 1997-04-12 2001-01-09 Nec Corporation Prefetch controller automatically updating history addresses

Also Published As

Publication number Publication date
DE4391002T1 (de) 1995-02-23
US5499355A (en) 1996-03-12
WO1993018459A1 (en) 1993-09-16

Similar Documents

Publication Publication Date Title
JPH07506921A (ja) コンピュータ・システムにおける主記憶装置のアクセス時間とキャッシュ・メモリのサイズを最小限にするためのキャッシュへの先取り
JP7553478B2 (ja) 書き込みミスエントリのドレインをサポートする犠牲キャッシュ
US5235697A (en) Set prediction cache memory system using bits of the main memory address
JP3800383B2 (ja) コンピュータのランダムアクセスメモリシステム
US5091851A (en) Fast multiple-word accesses from a multi-way set-associative cache memory
US5586294A (en) Method for increased performance from a memory stream buffer by eliminating read-modify-write streams from history buffer
US5353426A (en) Cache miss buffer adapted to satisfy read requests to portions of a cache fill in progress without waiting for the cache fill to complete
US5388247A (en) History buffer control to reduce unnecessary allocations in a memory stream buffer
US6317810B1 (en) Microprocessor having a prefetch cache
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
US7047362B2 (en) Cache system and method for controlling the cache system comprising direct-mapped cache and fully-associative buffer
JPH07253926A (ja) キャッシュ・ミスによる時間ペナルティ減少方法
US8621152B1 (en) Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access
US20080307169A1 (en) Method, Apparatus, System and Program Product Supporting Improved Access Latency for a Sectored Directory
JP3407808B2 (ja) コンピュータシステム
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
US8117400B2 (en) System and method for fetching an information unit
US6934810B1 (en) Delayed leaky write system and method for a cache memory
EP0488566A2 (en) Method and apparatus for fast page mode selection
US5838946A (en) Method and apparatus for accomplishing processor read of selected information through a cache memory
JP4796580B2 (ja) フェッチ・バーストを用いて情報をキャッシュ・モジュールに与える装置及び方法
US20240054072A1 (en) Metadata-caching integrated circuit device
JPH04505225A (ja) スカラー処理用に設計されたメモリシステムでメモリからベクトルデータをプリフェッチする方法
JPS5818710B2 (ja) 記憶システム
JP2001229074A (ja) メモリ制御装置と情報処理装置及びメモリ制御チップ