JPH08272681A - 命令レベルで再構成可能なキャッシュを有するマイクロプロセッサー - Google Patents

命令レベルで再構成可能なキャッシュを有するマイクロプロセッサー

Info

Publication number
JPH08272681A
JPH08272681A JP8017299A JP1729996A JPH08272681A JP H08272681 A JPH08272681 A JP H08272681A JP 8017299 A JP8017299 A JP 8017299A JP 1729996 A JP1729996 A JP 1729996A JP H08272681 A JPH08272681 A JP H08272681A
Authority
JP
Japan
Prior art keywords
cache
data
instruction
microprocessor
operand
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
JP8017299A
Other languages
English (en)
Inventor
Vargade Argade Pramod
ヴァサント アーゲイド プラモッド
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.)
AT&T Corp
Original Assignee
AT&T 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 AT&T Corp filed Critical AT&T Corp
Publication of JPH08272681A publication Critical patent/JPH08272681A/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/3824Operand accessing
    • 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/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • 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/30098Register arrangements
    • 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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • 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/0893Caches characterised by their organisation or structure
    • G06F12/0895Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 命令レベルで再構成可能なキャッシュを有す
るマイクロプロセッサーを提供する。 【解決手段】 本発明のマイクロプロセッサーは、高速
信号処理演算を実行するための積和演算ユニット(MA
U)305を含む。積和演算(MAC)命令が実行され
るときには、第一及び第二のキャッシュ301、302
は、第一及び第二のオペランド(x,y)を、直接MA
Uに供給する。通常の命令が実行されるときには、前記
第一及び第二のキャッシュのいずれかからデータを選択
するマルチプレクサ310、311が含まれている。デ
ータのキャッシュへの書き込みを制御するための、付加
的な「再構成」ビット44及び「ウエイ」ビット43を
含む、ページテーブルエントリ(図4)を有する変換索
引バッファが含まれる。かくして、本発明のマイクロプ
ロセッサーは、複数のオペランドに同時にアクセスする
ように、従来のセットアソシエイティブ(セット連想付
け)キャッシュを用い得るのである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、増大したバンド幅
での演算に備える、セットアソシエイティブ(セット連
想付け)キャッシュを再構成する手段を有する、マイク
ロプロセッサーに関する。
【0002】
【従来の技術】多くの従来のマイクロプロセッサーは、
多重ポートを持つレジスタファイルを有しており、それ
故、各サイクル毎に、レジスタに含まれた2つのオペラ
ンドを実行ユニット(EU)に提供することが可能であ
る。レジスタファイルは、同じ集積回路上に、算術論理
(演算)ユニット(ALU)として含まれており、望み
のデータを提供する非常に速い手段である。例えば、図
1を参照するに、典型的な先行技術におけるマイクロプ
ロセッサー100は、第一のレジスタファイル102に
第一のアドレス(アドレス0)を、さらに、第二のレジ
スタファイル103に第二のアドレス(アドレス1)を
供給する命令レジスタ101を含んでいる。レジスタフ
ァイル102及び103は、例示的には、各32ビット
の32エントリを有している。第一のレジスタファイル
102は、第一のオペランドレジスタ104に第一のオ
ペランドを供給し、第二のレジスタファイル103は、
第二のオペランドレジスタ105に第二のオペランドを
供給している。レジスタ104及び105は、算術論理
(演算)ユニット(ALU)106に第一及び第二のオ
ペランドを供給しており、この算術論理(演算)ユニッ
ト(ALU)106は、例示的には、積和演算(MA
C)を含む様々な算術演算を実行しうる。その結果は、
結果レジスタ107に保存され、線108を経由して、
レジスタファイルに再び書き込まれうる。選択的な実施
例においては、2つのファイル102、103の代わり
に、単一のデュアル(二重)ポートレジスタファイル
(示されていない)が、用いられている。その場合に
は、2つの読み出しポートが、レジスタファイル内の、
いずれかの2つのエントリへの同時アクセスを許すこと
になる。
【0003】
【発明が解決しようとする課題】しかしながら、チップ
上のレジスタにないメモリに含まれている、2つのオペ
ランドを供給することが必要となる場合は、多くある。
その例としては、信号処理の基本的な原理の一つである
積和演算命令がある。2つのメモリオペランドは、利用
可能である場合には、典型的には、チップ上のデータキ
ャッシュに含まれているか、あるいは選択的には、マイ
クロプロセッサーチップへの外部キャッシュに含まれて
いる。いずれの場合においても、各サイクル毎に実行ユ
ニット(EU)へ2つのオペランドを供給するというこ
とは、データキャッシュをデュアル(二重)ポート化す
るということを意味しているのである。典型的な命令と
しては、MAC x,y,a0 というものがある。こ
こで、MACとは、積和演算という命令に対する簡略記
法であり、これにより特定される演算とは、a0=a0
+(x*y)となる。典型的には、xとyは、メモリ内
の特定のアレイに属しており、xは係数アレイに、yは
データアレイに位置し得よう。
【0004】図2を参照するに、チップ上のメモリの2
つのバンクを有しているマイクロプロセッサー200の
例が示されている。命令レジスタ201は、キャッシュ
のバンク0(202)及びバンク1(203)に第一及
び第二のアドレス(アドレス0、アドレス1)を供給し
ており、ここで、例示的には、各バンクは、大きさとし
ては、1キロバイトとなることが考えられる。データ
は、書き込み線213を経由して、キャッシュに書き込
まれる。第一のオペランドは、バンク0(202)から
読み出され、マルチプレクサ204により選択される読
み出し出力である。それから、第一のオペランドは、オ
ペランドレジスタ1(205)へラッチ(一時保持)さ
れる。同様に、第二のオペランドは、バンク1(20
3)から読み出され、マルチプレクサ206により選択
される読み出し出力である。それから、第二のオペラン
ドは、オペランドレジスタ2(207)へラッチ(一時
保持)される。選択的には、オペランドは、マルチプレ
クサ204及び206によって、外部メモリバス212
から選択されうる。さらに、オペランドは、オペランド
レジスタからALU/MACユニット208へ供給さ
れ、そこで、これらのオペランドは共に乗算がなされ、
経路214を経由してアキュムレータ(累算器)ファイ
ルからアクセスがなされた前の結果に加算される。その
結果は、結果レジスタ209へ供給され、アキュムレー
タ(累算器)ファイル210に保存される。このような
技術は、従来のマイクロプロセッサーアーキテクチャー
において、積和演算機能を備えるものであるが、そのよ
うなアプローチには不利な点が存在している。例えば、
チップ上のメモリは、キャッシュとしてよりも、むしろ
RAMとして構成されていることから、選択されたアプ
リケーションのみが、それを利用できるに過ぎない。メ
モリの全てのデータアドレスは、アプリケーションプロ
グラムが開発された際に、決定されなくてはならない。
このようなことから、従来のマイクロプロセッサーアプ
リケーションでは、ここでのメモリのフレキシブルな利
用ができない。さらに加えて、異なった販売者によるア
プリケーションを動作させることも困難である。
【0005】
【課題を解決するための手段】発明者は、nウエイ(形
式)の連想付けを持ったキャッシュを有するデータプロ
セッサー及びデータプロセッシングシステムを発明し
た。このキャッシュにおいて、第一のオペランド(x)
は、キャッシュの第一の部位に位置しており、第二のオ
ペランド(y)は、キャッシュの第二の部位に位置して
いる。キャッシュの第一及び第二の部位の出力(x,
y)は、例えば積和演算命令のような、所与の命令形式
が実行されるときには、例えば積和演算ユニットのよう
な、機能ユニットへ供給されている。マルチプレクサ
は、キャッシュの第一及び第二の部位の出力へと接続さ
れている。それ故に、当該キャッシュが、異なった形式
の命令を実行するために、従来のセットアソシエイティ
ブ(セット連想付け)キャッシュとしてアクセスされる
こととなるときは、いずれの部位からもオペランドを取
り出されることが可能である。キャッシュへの書き込み
を制御するために、変換索引バッファは、再構成領域を
有するページテーブルエントリを含みうるものであり、
選択的には、その他の制御方法が用いられ得る。
【0006】
【発明の実施の形態】本詳細な記述は、再構成されるこ
とが可能なセットアソシエイティブ(セット連想付け)
キャッシュを利用するマイクロプロセッサーに関するも
のである。高いデータバンド幅を必要とする命令が実行
されるときには、第一の配置においては、キャッシュは
一つのオペランドを、第二の配置においては、複数のオ
ペランド(x,y)を、同時に算術プロセッサーに供給
する。ここで用いられているように、「同時に」という
言葉は、(一つ以上の)クロックサイクルを含みうる、
同一のマシン上でのサイクルにおいて、ということを意
味するものである。そのような命令の例としては、積和
演算命令がある。このような手法で、高速な積和演算
が、例えば、汎用マイクロプロセッサーにおいて実施さ
れうる。キャッシュは、典型的には、nウエイ(形式)
のセットアソシエイティブ(セット連想付け)キャッシ
ュであり、本技術では、また、当該キャッシュが、複数
の直接マッピングがなされたキャッシュとして用いられ
ることを許すものである。nウエイ(形式)セットアソ
シエイティブ(セット連想付け)キャッシュから直接マ
ッピングがなされたキャッシュへの再構成及びその逆
は、各命令ベースで実行されうる。ここで用いられてい
るように、当該キャッシュ部位は、また、「キャッシュ
ウエイ0」、「キャッシュウエイ1」、あるいは、より
一般的には、nを正の整数として、「キャッシュウエイ
n」として呼称される。
【0007】図3を参照するに、本発明の例示的な実施
例が、キャッシュ部位301及び302を含んでいる、
2ウエイ(形式)セットアソシエイティブ(セット連想
付け)キャッシュについて示されている。キャッシュ部
位301及び302のデータ出力は、それぞれ、データ
線303及び304を経由して、積和演算ユニット(mul
tiply-accumulate unit,MAU)305に供給されている。
x及びyデータ入力に加えて、MAU305は、アキュ
ムレータ(累算器)ファイル312から線308を経由
する、アキュムレータ(累算器)入力を受け取る。MA
U305は、マルチプライヤ(乗算器)306及びアキ
ュムレータ(累算器)307を含んでおり、これらにつ
いては、本発明が関連する限りにおいて、当該技術にお
いて公知なものを含めて、様々な設計をもち得るもので
ある。動作中であり、積和演算命令が実行されていると
きには、マルチプレクサ310を経由してキャッシュ部
位301からアクセスがなされたオペランドx及び、マ
ルチプレクサ311を経由してキャッシュ部位302か
らアクセスがなされたオペランドyについて、積和演算
機能を実行するように、MAU305に命令が下され
る。しかしながら、当該キャッシュからの同時のオペラ
ンドを必要としない、もう一つの形の命令が実行されよ
うとしているときには、マルチプレクサ311は、望み
のデータを提供するため、キャッシュ部位301、キャ
ッシュ部位302、あるいは外部メモリバス312から
選択的に出力を選択する。
【0008】例示的な実施例は、2ウエイ(形式)セッ
トアソシエイティブ(セット連想付け)キャッシュにつ
いてのものであるということに留意すべきである。しか
しながら、本発明は、nをあらゆる正の整数であるとし
て、あらゆるnウエイ(形式)セットアソシエイティブ
(セット連想付け)キャッシュについて実施されうるも
のである。次の議論においては、Nとは例示的に偶数
(さらに、例としては、n=2となっている。)である
が、選択的には、nは奇数となり得る。一般的に、この
点は、n入力(各キャッシュ部位からのものである。)
を有するマルチプレクサを用いて実現されうる。nが2
よりも大きい際には、2つのオペランドにアクセスする
ためのn通りの配置法は、特定の実施例により決定さ
れ、それらのいずれについても、本発明において用いら
れ得るものである。さらに、キャッシュが、従来のnウ
エイ(形式)セットアソシエイティブ(セット連想付
け)キャッシュとして構成されているときには、当該キ
ャッシュへの置き換えアルゴリズムは、本発明が関連す
る限りにおいては、あらゆる技術を用いて、実現されう
る。
【0009】当該技術において知られているように、メ
モリ管理ページテーブルは、仮想アドレスを物理的アド
レスへ変換し、さらにまた、キャッシュ操作を制御する
ために用いられている。ページテーブルは、変換索引バ
ッファ(translationlookaside buffer,TLB)内に保存さ
れており、これが、仮想メモリアドレスを物理的メモリ
アドレスへと変換する。また、TLBは、メモリページ
について、及び、与えられたページがキャッシュ可能で
あるかについての制御情報を備えている。図4を参照す
ると、例示的なページテーブルエントリは、領域41に
(ビットでは、12から31まで)物理的アドレスの
「タグ」を含んでいる。タグは、アドレスの最上位ビッ
トを表示しており、望みのアドレスが当該キャッシュ内
に位置しているかについて判断し、そのような場合に
は、キャッシュの「ヒット」は、図3におけるLHIT
320あるいはRHIT321により示されている。ア
ドレスの「インデックス」部位(示されていない。)
は、最下位ビットを表示しており、ポインタ(322、
323)を、当該技術においてよく知られた手法で、所
与のキャッシュ部位(それぞれ、301、302)の望
みの位置に向けるために用いられる。領域42は、例え
ば、未使用ビットを含みうるものであり、領域45は、
メモリページ内のデータが、例えば、書き込み可能、有
効、キャッシュ可能、あるいは、利用者がアクセス可能
かどうかを制御する「許諾」ビットを、典型的には含ん
でいる。本発明が関連する限りにおいては、これらの領
域は、あらゆる順序となり得るものである。図5を参照
すると、TLBは、仮想タグ501に沿い、物理的タグ
502及び制御ビット503として、例示的なページテ
ーブルエントリを含んでいる。このような手法では、ま
た、当該技術において知られている原理に従って、仮想
アドレスが物理的アドレスへと変換される。
【0010】上で記述されたような、本発明の技術を実
施するために、(一つ以上の)付加的な制御ビットを、
メモリ管理ページテーブルに含ませ得る。例えば、領域
43は、さらに以下で記述されるように、データがキャ
ッシュ内にどのように書き込まれるべきかを示す、偶数
あるいは奇数の「ウエイ(way)」(形式)ビットを含み
うる。領域44は、「再構成」ビットを含み得る。再構
成ビットが0であるとき、当該キャッシュは、従来の2
ウエイ(形式)セットアソシエイティブ(セット連想付
け)キャッシュとして扱われることになる。すなわち、
データは、選ばれたキャッシュエントリ置き換えスキー
ムを用いることで、キャッシュウエイ301及びキャッ
シュウエイ302に書き込まれる。一方、再構成ビット
が1であるときには、2ウエイ(形式)セットアソシエ
イティブ(セット連想付け)キャッシュは、2つの直接
マッピングがなされたキャッシュとして扱われる。それ
から、領域43のウエイビットが0である場合には、デ
ータは、偶数ウエイ(形式)キャッシュ部位へ書き込ま
れるように向けられ、さらに選択的には、領域43のウ
エイビットが1である場合には、奇数ウエイ(形式)キ
ャッシュ部位へ書き込まれることとなる。MAUによ
り、積和演算あるいは、その他の特別な形式の命令を実
行するための、x及びyオペランドとして用いられるよ
うに、当該データは、このような手法で、適切なキャッ
シュ部位に配置される。オペレーティングシステム(O
S)の存在下では、ユーザープログラムが、特別なファ
ンクションコールを経由することで、当該OSに「再構
成ビット」及び「ウエイビット」を設定するように指示
しうるであろう。このような手法で、データプロセッサ
ー及びオペレーティングシステムを両方含むデータプロ
セッシングシステムは、本発明の技術を有効に利用しう
るのである。
【0011】慣例としては、左側のオペランド(すなわ
ち、上の例ではx)は、ウエイ0からフェッチされ(取
り出され)、右側のオペランド(すなわち、上の例で
は、y)は、奇数のウエイからフェッチされる(取り出
される)。しかしながら、その他の慣例も可能である。
さらに、本発明と共に用いられるため、キャッシュ部位
へのデータの書き込みを制御する、さらにその他の技術
も考えられる。例えば、キャッシュをロードする命令
は、キャッシュのどの部位にデータが書き込まれるべき
であるかを、明確に特定し得る。これを実現するため
に、(一つ以上の)ウエイビット(313)が、図3の
命令レジスタ内に含ませ得る。その場合、メモリ管理ユ
ニット及びTLBは必要とならないかもしれない。ま
た、x及びyデータの配置は、偶数及び奇数ウエイのキ
ャッシュに分けられる必要はないが、何らかの勝手のよ
い手法で、キャッシュ内で配置されうる。つまりは、当
該技術分野の当業者にとっては明白であるように、機能
ユニットにより実行される様々な演算のために、キャッ
シュから同時に複数のオペランドがフェッチされうる
(取り出されうる)ということについては、留意された
い。
【0012】本発明のデータプロセッサーは、典型的な
場合は、従来「マイクロプロセッサー」として呼ばれて
いる形式のものであるが、さらにその他の目的及び形式
も考えられ得るものであり、それらも、ここで含まれる
ものである。例えば、MAC以外の命令のための、増強
された機能性を有するデジタル信号プロセッサーも、本
技術を有効に使用しうるものである。
【0013】
【発明の効果】本発明によって、各命令ベースで、セッ
トアソシエイティブ(セット連想付け)キャッシュと直
接マッピングがなされたキャッシュ間での相互の再構成
がなされることが可能な、セットアソシエイティブ(セ
ット連想付け)キャッシュを利用するマイクロプロセッ
サーが実現された。これにより、マイクロプロセッサー
のアプリケーションにおいて、メモリのよりフレキシブ
ルな利用が可能となった。例えば、典型的な信号処理で
ある積和演算(MAC)について、高速な積和演算が、
例えば、汎用マイクロプロセッサーにおいて実施可能と
なる。
【図面の簡単な説明】
【図1】図1は、オペランドを保存する2つのレジスタ
ファイルを有する、先行技術におけるマイクロプロセッ
サーを示している。
【図2】図2は、オペランドを保存する複数のバンクを
含むチップ上のランダムアクセスメモリ(RAM)を有
する、先行技術におけるマイクロプロセッサーを示して
いる。
【図3】図3は、本発明に従った、マイクロプロセッサ
ーの例示的な実施例を示している。
【図4】図4は、本発明に従った、例示的なページテー
ブルエントリを示している。
【図5】図5は、本発明の実施に際して用いられ得る、
例示的な変換索引バッファを示している。
【符号の説明】 100 先行技術によるマイクロプロセッサー 101 命令レジスタ 102 第一のレジスタファイル 103 第二のレジスタファイル 104 第一のオペランドレジスタ 105 第二のオペランドレジスタ 106 算術論理(演算)ユニット(ALU) 107 結果レジスタ 108 線 200 先行技術によるマイクロプロセッサー 201 命令レジスタ 202 (RAM)バンク0 203 (RAM)バンク1 204 マルチプレクサ 205 オペランドレジスタ1 206 マルチプレクサ 207 オペランドレジスタ2 208 ALU/MAC(算術論理/積和演算)ユニッ
ト 209 結果レジスタ 210 アキュムレータ(累算器)ファイル 211 オペランドアクセス制御ロジック 212 外部メモリバス 213 書き込み線 301 キャッシュウエイ0 302 キャッシュウエイ1 303、304 データ線 305 積和演算ユニット(MAU) 306 マルチプライヤ(乗算器) 307 アキュムレータ(累算器) 308 線 310、311 マルチプレクサ 312 外部メモリバス 313 制御ビット(ウエイビット) 314 命令レジスタ 316 マルチプレクサ 317、318 変換索引バッファ 319 マルチプレクサ 320 LHIT 321 RHIT 322、323 ポインタ 324 アクセス制御 325 第一の信号経路 327 第二の信号経路 41 物理的タグ 42 未使用(領域) 43 ウエイ(形式)ビット 44 再構成ビット 45 許諾ビット 500 変換索引バッファ 501 仮想タグ 502 物理的タグ 503 制御ビット

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 命令レジスタ(314)と、 nを2以上の整数として、第一のキャッシュ部位(30
    1)及び第二のキャッシュ部位(302)を含む、nウ
    エイセットアソシエイティブ(セット連想付け)キャッ
    シュと、 命令が実行されるときに、第一及び第二のオペランド
    (x,y)について演算を行う機能ユニット(305)
    と、 前記第一のオペランド(x)を前記機能ユニットへ供給
    する、前記第一のキャッシュ部位からの第一の信号経路
    (325)と、 特別な形式の命令が実行されるとき、前記第一のオペラ
    ンドと同時に、前記第二のオペランド(y)を前記機能
    ユニットへ供給する、前記第二のキャッシュ部位からの
    第二の信号経路(327)と、 別の形式の命令が実行されるとき、前記第一及び前記第
    二のいずれかのキャッシュ部位からデータを選択する、
    マルチプレクサ(310、311)と、 を含むことを特徴とするデータプロセッサー。
  2. 【請求項2】 データがどのようにしてキャッシュに書
    き込まれるかについて制御する、再構成領域(44)を
    含むページテーブルエントリ(図4)を有する変換索引
    バッファ(500)、 を含むことを特徴とする請求項1のデータプロセッサ
    ー。
  3. 【請求項3】 前記ページテーブルエントリが、さら
    に、 第一のデータのセットが、偶数ウエイの直接マッピング
    がなされるキャッシュに書き込まれ、第二のデータのセ
    ットが、奇数ウエイの直接マッピングがなされるキャッ
    シュに書き込まれることを規定する、ウエイ領域(4
    3)、 を含むことを特徴とする請求項2のデータプロセッサ
    ー。
  4. 【請求項4】 前記命令レジスタが、前記キャッシュ部
    位へのデータ書き込みを制御する、制御ビット(31
    3)、 を含むことを特徴とする請求項1のデータプロセッサ
    ー。
  5. 【請求項5】 前記特別な形式の命令が、積和演算命令
    を含むことを特徴とする請求項1のデータプロセッサ
    ー。
  6. 【請求項6】 前記機能ユニットが、積和演算ユニット
    であることを特徴とする請求項1のデータプロセッサ
    ー。
JP8017299A 1995-02-03 1996-02-02 命令レベルで再構成可能なキャッシュを有するマイクロプロセッサー Pending JPH08272681A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US38303795A 1995-02-03 1995-02-03
US383037 1995-02-03

Publications (1)

Publication Number Publication Date
JPH08272681A true JPH08272681A (ja) 1996-10-18

Family

ID=23511440

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8017299A Pending JPH08272681A (ja) 1995-02-03 1996-02-02 命令レベルで再構成可能なキャッシュを有するマイクロプロセッサー

Country Status (3)

Country Link
JP (1) JPH08272681A (ja)
KR (1) KR960032182A (ja)
TW (1) TW297111B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002025447A3 (en) * 2000-09-22 2002-11-28 Intel Corp Cache dynamically configured for simultaneous accesses by multiple computing engines

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002025447A3 (en) * 2000-09-22 2002-11-28 Intel Corp Cache dynamically configured for simultaneous accesses by multiple computing engines
GB2383868A (en) * 2000-09-22 2003-07-09 Intel Corp Cache dynamically configured for simultaneous accesses by multiple computing engines
US6665775B1 (en) 2000-09-22 2003-12-16 Intel Corporation Cache dynamically configured for simultaneous accesses by multiple computing engines
GB2383868B (en) * 2000-09-22 2005-02-02 Intel Corp Cache dynamically configured for simultaneous accesses by multiple computing engines

Also Published As

Publication number Publication date
KR960032182A (ko) 1996-09-17
TW297111B (ja) 1997-02-01

Similar Documents

Publication Publication Date Title
EP0734553B1 (en) Split level cache
US6223255B1 (en) Microprocessor with an instruction level reconfigurable n-way cache
AU654204B2 (en) Translation buffer for virtual machines with address space match
US5471628A (en) Multi-function permutation switch for rotating and manipulating an order of bits of an input data byte in either cyclic or non-cyclic mode
US5854913A (en) Microprocessor with an architecture mode control capable of supporting extensions of two distinct instruction-set architectures
US5966734A (en) Resizable and relocatable memory scratch pad as a cache slice
US5781924A (en) Computer caching methods and apparatus
US5475827A (en) Dynamic look-aside table for multiple size pages
US5867724A (en) Integrated routing and shifting circuit and method of operation
US7203800B2 (en) Narrow/wide cache
JP3669555B2 (ja) 可変キャッシュ・サイズのための改良されたキャッシュ・ディレクトリ・アドレシング方法及び装置
US5937178A (en) Register file for registers with multiple addressable sizes using read-modify-write for register file update
US6446181B1 (en) System having a configurable cache/SRAM memory
US6351797B1 (en) Translation look-aside buffer for storing region configuration bits and method of operation
US6606684B1 (en) Multi-tiered memory bank having different data buffer sizes with a programmable bank select
US5946718A (en) Shadow translation look-aside buffer and method of operation
JPH06236353A (ja) マルチプロセッサ・コンピュータ・システムのシステム・メモリの並行性を増大する方法およびシステム
US5732405A (en) Method and apparatus for performing a cache operation in a data processing system
US6301647B1 (en) Real mode translation look-aside buffer and method of operation
Alsup Motorola's 88000 family architecture
JP3618868B2 (ja) 二重モード変換索引バッファを利用したデータ処理システムにおける効率的メモリ管理の方法およびシステム
Margulis i860 microprocessor internal architecture
KR20010049340A (ko) 변환 장치의 엔트리를 무효로 하는 시스템 및 방법
JPH08272681A (ja) 命令レベルで再構成可能なキャッシュを有するマイクロプロセッサー
Hunter Introduction to the Clipper architecture

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050511

A131 Notification of reasons for refusal

Effective date: 20050726

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050913

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060221

A521 Written amendment

Effective date: 20060419

Free format text: JAPANESE INTERMEDIATE CODE: A523

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Effective date: 20060424

Free format text: JAPANESE INTERMEDIATE CODE: A911

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20060915

A521 Written amendment

Effective date: 20080710

Free format text: JAPANESE INTERMEDIATE CODE: A523