JPH07334423A - セットアソシアティブ方式のメモリ装置 - Google Patents
セットアソシアティブ方式のメモリ装置Info
- Publication number
- JPH07334423A JPH07334423A JP6125380A JP12538094A JPH07334423A JP H07334423 A JPH07334423 A JP H07334423A JP 6125380 A JP6125380 A JP 6125380A JP 12538094 A JP12538094 A JP 12538094A JP H07334423 A JPH07334423 A JP H07334423A
- Authority
- JP
- Japan
- Prior art keywords
- way
- tlb
- prediction
- cache
- memory device
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1028—Power efficiency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/608—Details relating to cache mapping
- G06F2212/6082—Way prediction in set-associative cache
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
時のタイムラグを低減させることが可能なセットアソシ
アティブ方式のメモリ装置を提供すること。 【構成】 タグを格納するタグ格納部と、データを格納
するデータ格納部と、ウェイがヒットしたかを示すウェ
イ判定信号を出力するウェイ判定器と、ウェイ判定信号
に基づきそのウェイのデータを選択するデータ選択器と
を具備するセットアソシアティブ方式のメモリ装置にお
いて、ウェイ判定信号の予測値を発生するウェイ予測部
と、ウェイ予測部からの予測値に基づき予測されたウェ
イのデータ格納部だけを活性化する手段と、ウェイ判定
器からのウェイ判定信号と前記予測値を比較し、不一致
の場合にウェイ予測判定信号を出力するウェイ予測判定
部と、ウェイ予測判定部からのウェイ予測判定信号に基
づきウェイ予測部の予測値をヒットしたウェイを示すウ
ェイ判定信号に変更する手段とを具備する。
Description
方式のメモリ装置に係わり、特に、消費電力を低減さ
せ、かつ、データ読み出し時のタイムラグを低減させた
セットアソシアティブ方式のメモリ装置に関する。
リは、「並列計算機構成論」(富田眞治著、昭晃堂、
2.3.2記憶制御装置、(1)記憶階層方式及び
(2)キャッシュメモリ)に記載されている。
る、従来のセットアソシアティブ方式のメモリの概略構
成を示すブロック図であり、2セットアソシアティブの
アドレス変換バッファ(以下、TLBと称す)691と
2セットアソシアティブのキャッシュ692から構成さ
れる、TLB・キャッシュ装置である。
TLB691により物理アドレスに変換されてキャッシ
ュ692に入力される。
とページ内オフセット601により構成される。
より物理ページ番号625に変換されキャッシュ692
に入力される。
にそのままキャッシュ692に入力される。
ページ内オフセット601により構成される。
置の動作を説明する。
は、TLBタグ格納部(610,611)に入力され、
TLBタグ(612,613)が出力される。
器614に入力される。
を、611はTLBのウェイ1のタグをそれぞれ格納す
るメモリである。
理ページ番号604の上位ビット603と各ウェイのT
LBタグが比較され、どのウェイのTLBタグと一致し
たかを表すTLBウェイ判定信号615が出力される。
602はTLBのTLBデータ格納部(620,62
1)に入力され、物理ページ番号(622,623)が
出力される。
号選択器624に入力される。
号を、621はウェイ1の物理ページ番号をそれぞれ格
納するメモリである。
ウェイ判定信号615に基づいて、ウェイ0の物理ペー
ジ番号622またはウェイ1の物理ページ番号623の
どちらかを選択し物理ページ番号625を出力する。
タグ格納部(630,631)に入力され、キャッシュ
タグ(632,633)が出力される。
3)は、キャッシュウェイ判定器634に入力される。
タグを、631はキャッシュのウェイ1のタグをそれぞ
れ格納するメモリである。
は、物理ページ番号625と各ウェイのキャッシュタグ
(632,633)が比較され、どのウェイのキャッシ
ュタグと一致したかを表すキャッシュウェイ判定信号6
35が出力される。
ッシュデータ格納部(640,641)に入力され、デ
ータ(642,643)が出力される。
ータ選択器644に入力される。
41はウェイ1のデータをそれぞれ格納するメモリであ
る。
イ判定信号635に基づいて、データ642またはデー
タ643を選択しデータ645を出力する。
0のキャッシュタグ632が一致していればウェイ0の
データ642、物理ページ番号625とウェイ1のキャ
ッシュタグ633が一致していればウェイ1のデータ6
43の値がデータ645の値となる。
格納されたあと、次のサイクルにおいてデータ647と
して出力される。
TLBタグ格納部(610,611)、TLBデータ格
納部(620,621)、キャッシュタグ格納部(63
0,631)、キャッシュデータ格納部(640,64
1)の8つのメモリは、同時に並列的に動作することが
可能である。
点で、これら8つのメモリは動作を開始できる。
1)、TLBウェイ判定器614、物理ページ番号選択
器624、キャッシュウェイ判定器634は、同時に実
行することはできず、この順番で順々に実行しなければ
ならない。
4の出力であるキャッシュウェイ判定信号635の値を
生成するのには時間がかかる。
シアティブ方式のキャッシュでは、キャッシュウェイ判
定信号635の値が判明する前に、あらかじめキャッシ
ュデータ格納部のウェイ0の部分640とウェイ1の部
分641の両方を動作させ、ウェイ0のデータ642と
ウェイ1のデータ643を出力しておき、これをキャッ
シュウェイ判定信号635で選択する方式がとられてい
た。
(640,641)のウェイ0の部分640とウェイ1
の部分641の両方を同時に動作させるために、キャッ
シュを動作させるための電力が大きくなるという問題点
があった。
1)、TLBウェイ判定器614、物理ページ番号選択
器624、キャッシュウェイ判定器634、及び、デー
タ選択器644は順番に実行しなければならず、TLB
・キャッシュ装置に論理アドレス600が入力されてか
らデータ645が出力されるまでのタイムラグ(遅延時
間)が大きくなるという問題点があった。
シアティブ方式のキャッシュメモリにおいて、データの
読み出し時のセンスアンプの活性化を、タグからのヒッ
ト信号によって行い、ヒットした時点でセンスアンプを
活性化して、データ読み出し時の消費電力を低減するこ
とが、特開平4−328656号公報に記載されてい
る。
トアソシアティブ方式のキャッシュメモリにおいて、外
部から入力されるアドレスとタグ部から読み出されたタ
グとを比較するアドレス比較部からのヒット信号が出力
される前に、直前にアクセスしたデータ部を示すフラグ
情報を記憶部に記憶しておき、該フラグ情報を用いるこ
とにより、アドレス比較器からのヒット信号が出力され
る前に、キャッシュメモリのデータ部からデータをデー
タバスに出力することが、特開平4−252343号公
報に記載されている。
656号公報に記載されたセットアソシアティブ方式の
キャッシュメモリでは、データ読み出し時の消費電力を
低減することが可能であるが、データ読み出しのタイム
ラグを低減することについて考慮されていないという問
題点があった。
に記載されたセットアソシアティブ方式のキャッシュメ
モリでは、データ読み出しのタイムラグを低減すること
が可能であるが、複数の連続した領域を交互にアクセス
する場合にウェイを正しく予測する機構を具備しておら
ず、また、アドレス変換バッファを具備する、セットア
ソシアティブ方式のキャッシュメモリのデータ読み出し
時のタイムラグについて考慮されていないという問題点
があった。
るためになされたものであり、本発明の目的は、セット
アソシアティブ方式のメモリ装置において、消費電力を
低減させ、かつ、データ読み出し時のタイムラグを低減
させることが可能な技術を提供することにある。
バッファを具備する、セットアソシアティブ方式のメモ
リ装置において、消費電力を低減させ、かつ、データ読
み出し時のタイムラグを低減させることが可能な技術を
提供することにある。
バッファを具備する、セットアソシアティブ方式のメモ
リ装置において、いくつかの連続した領域を交互にアク
セスする場合に、データ読み出しのタイムラグを低減さ
せることが可能な技術を提供することにある。
新規な特徴は、本明細書の記載及び添付図面によって明
らかにする。
発明のうち、代表的なものの概要を簡単に説明すれば、
下記の通りである。
タを格納するデータ格納部と、アクセスアドレスの一部
とタグ格納部に格納されているタグとを比較しどのウェ
イがヒットしたかを示すウェイ判定信号を出力するウェ
イ判定器と、ウェイ選択信号に基づきその選択されたウ
ェイのデータ格納部のデータを選択するデータ選択器と
を具備するセットアソシアティブ方式のメモリ装置にお
いて、ウェイ判定信号の予測値を発生するウェイ予測部
と、ウェイ予測部からの予測値に基づき予測されたウェ
イのデータ格納部だけを活性化する手段と、前記予測値
をウェイ選択信号としてデータ選択器に入力する手段
と、ウェイ判定器からのウェイ判定信号と前記予測値を
比較し、不一致の場合にウェイ予測判定信号を出力する
ウェイ予測判定部と、ウェイ予測判定部からのウェイ予
測判定信号に基づきウェイ予測部の予測値をヒットした
ウェイを示すウェイ判定信号に変更する手段とを具備す
ることを特徴とする。
予測部からの予測値に基づき予測されたウェイのタグ格
納部だけを活性化する手段を、さらに具備することを特
徴とする。
いて、ウェイ予測部が、ウェイの番号値を記憶する複数
の予測ウェイラッチを有し、複数の連続した領域をアク
セスする場合に、対応する複数の予測ウェイラッチに記
憶されたウェイの番号値をウェイ判定信号の予測値とし
て出力することを特徴とする。
いて、メモリ装置が、さらに、セットアソシアティブ方
式のアドレス変換バッファを具備し、前記メモリ装置の
ウェイ判定器が、アドレス変換バッファからのTLBデ
ータとタグ格納部に格納されているタグとを比較しどの
ウェイがヒットしたかを示すウェイ判定信号を出力し、
前記アドレス変換バッファが、TLBタグを格納するT
LBタグ格納部と、TLBデータを格納するTLBデー
タ格納部と、アクセスアドレスの一部とTLBタグ格納
部に格納されているTLBタグとを比較しどのウェイが
ヒットしたかを示すTLBウェイ判定信号を出力するT
LBウェイ判定器と、TLBウェイ判定信号の予測値を
発生するTLBウェイ予測部と、前記TLBウェイ予測
部からの予測値に基づき予測されたTLBウェイのTL
Bデータ格納部だけを活性化する手段と、前記TLBウ
ェイ予測部からの予測値がウェイ選択信号として入力さ
れ、予測されたウェイのTLBデータ格納部のTLBデ
ータを選択するTLBデータ選択器と、TLBウェイ判
定器からのTLBウェイ判定信号と前記予測値を比較
し、不一致の場合にTLBウェイ予測判定信号を出力す
るTLBウェイ予測判定部と、TLBウェイ予測判定部
からのTLBウェイ予測判定信号に基づきTLBウェイ
予測部の予測値をヒットしたウェイを示すTLBウェイ
判定信号に変更する手段とを具備することを特徴とす
る。
ウェイ予測部からの予測値に基づき予測されたウェイの
TLBタグ格納部だけを活性化する手段を、さらに具備
することを特徴とする。
いて、前記TLBウェイ予測部が、ウェイの番号値を記
憶する複数のTLB予測ウェイラッチを有し、複数の連
続した領域をアクセスする場合に、対応する複数のTL
B予測ウェイラッチに記憶されたTLBウェイの番号値
をTLBウェイ判定信号の予測値として出力することを
特徴とする。
タを格納するデータ格納部と、アクセスアドレスの一部
とタグ格納部に格納されているタグとを比較しどのウェ
イがヒットしたかを示すウェイ判定信号を出力するウェ
イ判定器と、ウェイ選択信号に基づき選択されたウェイ
のデータ格納部のデータを選択するデータ選択器とを具
備するセットアソシアティブ方式のメモリ装置におい
て、ウェイの番号値を記憶する複数の予測ウェイラッチ
を有し、複数の連続した領域をアクセスする場合に、対
応する複数の予測ウェイラッチに記憶されたウェイの番
号値をウェイ判定信号の予測値として出力するウェイ予
測部と、前記予測値をウェイ選択信号としてデータ選択
器に入力する手段と、ウェイ判定器からのウェイ判定信
号と前記予測値を比較し、不一致の場合にウェイ予測判
定信号を出力するウェイ予測判定部と、ウェイ予測判定
部からのウェイ予測判定信号に基づきウェイ予測部の予
測値をヒットしたウェイを示すウェイ判定信号に変更す
る手段とを具備することを特徴とする。
モリ装置が、さらに、セットアソシアティブ方式のアド
レス変換バッファを具備し、前記メモリ装置のウェイ判
定器が、アドレス変換バッファからのTLBデータとタ
グ格納部に格納されているタグとを比較しどのウェイが
ヒットしたかを示すウェイ判定信号を出力し、前記アド
レス変換バッファが、TLBタグを格納するTLBタグ
格納部と、TLBデータを格納するTLBデータ格納部
と、アクセスアドレスの一部とTLBタグ格納部に格納
されているTLBタグとを比較しどのウェイがヒットし
たかを示すTLBウェイ判定信号を出力するTLBウェ
イ判定器と、ウェイの番号値を記憶する複数のTLB予
測ウェイラッチを有し、複数の連続した領域をアクセス
する場合に、対応する複数のTLB予測ウェイラッチに
記憶されたTLBウェイの番号値をTLBウェイ判定信
号の予測値として出力するTLBウェイ予測部と、TL
Bウェイ予測部からの予測値が選択信号として入力さ
れ、予測されたウェイのTLBデータ格納部のTLBデ
ータを選択するTLBデータ選択器と、TLBウェイ判
定器からのTLBウェイ判定信号と前記予測値を比較
し、不一致の場合にTLBウェイ予測判定信号を出力す
るTLBウェイ予測判定部と、TLBウェイ予測判定部
からのTLBウェイ予測判定信号に基づきTLBウェイ
予測部の予測値をヒットしたウェイを示すTLBウェイ
判定信号に変更する手段とを具備することを特徴とす
る。
よれば、セットアソシアティブ方式のメモリ装置におい
て、ウェイ予測部によってどのウェイがヒットするかを
予測し、予測されたウェイのデータ格納部、あるいは、
予測されたタグ格納部およびデータ格納部のみを動作さ
せるようにしたので、メモリ装置を動作させるための消
費電力を低減させ、かつ、データ読み出しのタイムラグ
を低減させることが可能となる。
れば、ウェイ予測部によってどのウェイがヒットするか
を予測し、予測された予測されたウェイのデータ格納
部、あるいは、予測されたタグ格納部およびデータ格納
部のみを動作させるようにしたセットアソシアティブ方
式のメモリ装置において、複数の連続した領域をアクセ
スする場合に、ウェイ予測部の複数の予測ウェイラッチ
に記憶されたウェイの番号値をウェイ判定信号の予測値
として用いるようにしたので、いくつかの連続した領域
を交互にアクセスする場合に、メモリ装置を動作させる
ための消費電力を低減させ、かつ、データ読み出しのタ
イムラグを低減させることが可能となる。
れた手段によれば、アドレス変換バッファを具備するセ
ットアソシアティブ方式のメモリ装置において、アドレ
ス変換バッファのTLBウェイ予測部によってアドレス
変換バッファのどのウェイがヒットするかを予測し、予
測されたウェイのTLBデータ格納部、あるいは、予測
されたTLBタグ格納部およびTLBデータ格納部のみ
を動作させるようにするとともに、メモリ装置のウェイ
予測部によってメモリ装置のどのウェイがヒットするか
を予測し、予測されたウェイのデータ格納部、あるい
は、予測されたタグ格納部およびデータ格納部のみを動
作させるようにしたので、アドレス変換バッファを具備
するメモリ装置を動作させるための消費電力を低減さ
せ、かつ、データ読み出しのタイムラグを低減させるこ
とが可能となる。
れば、アドレス変換バッファのTLBウェイ予測部によ
ってアドレス変換バッファのどのウェイがヒットするか
を予測し、予測されたウェイのTLBデータ格納部、あ
るいは、予測されたTLBタグ格納部およびTLBデー
タ格納部のみを動作させるようにするとともに、メモリ
装置のウェイ予測部によってメモリ装置のどのウェイが
ヒットするかを予測し、予測された予測されたウェイの
データ格納部、あるいは、予測されたタグ格納部および
データ格納部のみを動作させるようにした、アドレス変
換バッファを具備するセットアソシアティブ方式のメモ
リ装置において、複数の連続した領域をアクセスする場
合に、アドレス変換バッファのTLBウェイ予測部およ
びメモリ装置のウェイ予測部の複数の予測ウェイラッチ
に記憶されたウェイの番号値を、アドレス変換バッファ
のTLBウェイ判定信号およびメモリ装置のウェイ判定
信号の予測値として用いるようにしたので、いくつかの
連続した領域を交互にアクセスする場合に、メモリ装置
を動作させるための消費電力を低減させ、かつ、データ
読み出しのタイムラグを低減させることが可能となる。
れば、セットアソシアティブ方式のメモリ装置におい
て、ウェイの番号値を記憶する複数の予測ウェイラッチ
を有するウェイ予測部により、複数の連続した領域をア
クセスする場合に、どのウェイがヒットするかを予測す
るようにしたので、いくつかの連続した領域を交互にア
クセスする場合に、データ読み出しのタイムラグを低減
させることが可能となる。
れば、アドレス変換バッファを具備するセットアソシア
ティブ方式のメモリ装置において、複数の連続した領域
をアクセスする場合に、ウェイの番号値を記憶する複数
のTLB予測ウェイラッチを有するTLBウェイ予測部
により、アドレス変換バッファのどのウェイがヒットす
るかを予測するとともに、ウェイの番号値を記憶する複
数の予測ウェイラッチを有するウェイ予測部により、メ
モリ装置のどのウェイがヒットするかを予測するように
したので、データ読み出しのタイムラグを低減させるこ
とが可能となる。
に説明する。
て、同一機能を有するものは同一符号を付け、その繰り
返しの説明は省略する。
(実施例1)であるキャッシュの概略構成を示すブロッ
ク図であり、本実施例1のキャッシュをプロセッサに適
用した例を示す図である。
本体182、アドレス変換バッファ(以下、TLBと称
す)191、キャッシュ192、キャッシュウェイ予測
部193、及び、キャッシュウェイ予測判定部194か
ら構成される。
190とデータ処理部195を含んでいる。
方式のメモリであり、また、キャッシュ192は2セッ
トアソシアティブ方式のメモリであり、ウェイの予測を
行なっている。
キャッシュウェイ予測部193、及び、キャッシュウェ
イ予測判定部194のより詳細な構成を拡大して示すブ
ロック図であり、図3は、図1に示すTLB191のよ
り詳細な構成を拡大して示すブロック図である。
ャートを示す図である。
れ、予測がヒットした場合のタイムチャートを示す図で
ある。
ロセッサの動作の概要を説明する。
御で処理される。
表し、1と番号の書かれた領域は、命令1を処理してい
ることを示す。
シュ192、キャッシュウェイ予測部193、及び、キ
ャッシュウェイ予測判定器194から構成される部分
は、動作するタイミングの違いによりメモリ部180と
ウェイ判定部181に分けられる。
スを生成し、次の時刻に前記アドレスをアドレス100
として出力する。
00を入力して1サイクル後にデータ147をデータ処
理部195に出力する。
の出力信号であるキャッシュ予測ウェイ信号151はウ
ェイ0を示しており、メモリ部180のキャッシュデー
タ格納部140、141に関しては、予測されたウェ
イ、すなわち、ウェイ0のキャッシュデータ格納部14
0のみが動作する。
0から読み出されたデータがデータ147として出力さ
れる。
147を入力して処理する。
よって、メモリ部180から読み出されたデータ147
が正しいウェイのデータであるか確認するための判定が
行われる。
はパイプライン方式で処理を行うことができる。
判定部181で処理されているときは、命令2がメモリ
部180で処理される。
1によって、正しいウェイのデータであると判定される
と(すなわち、ウェイ予測がヒットすると)、図4のよ
うなタイムチャートとデータが処理される。
ロセッサの動作の詳細を説明する。
動作ついて説明する。
は、ラッチ105に格納される。
は、TLBタグ格納部(110,111)と、TLBの
TLBデータ格納部(120,121)にそれぞれ入力
される。
1)とTLBのTLBデータ格納部(120,121)
が動作し、それぞれの出力がラッチ116、117、1
26および127にそれぞれ格納される。
1は、キャッシュタグ格納部(130,131)と、キ
ャッシュデータ格納部(140,141)に入力され
る。
0,131)が動作して、それぞれキャッシュタグ(1
32,133)にタグの値を出力し、前記値はそれぞれ
ラッチ(136,137)に格納される。
キャッシュ予測ウェイ信号151が出力される。
すなわち、ウェイ0を示す。
でデコードされて、キャッシュデータ格納部(140,
141)に入力される。
すので、ウェイデコーダ160からウェイ0のデータ格
納部140を動作させるための信号161が出力され
る。
0が動作し、データ142を出力する。この場合、デー
タ格納部141は動作しない。
イのデータ142とキャッシュ予測ウェイ信号151が
入力される。
ウェイ信号151により示されたウェイ、すなわち、ウ
ェイ0のデータ142が選択されてデータ145に出力
される。
ラッチ152に格納される。
す図である。
ットの信号であり、ウェイ0が予測されたことを表す信
号とウェイ1が予測されたことを表す信号により構成さ
れる。
号を1ビットづつに分解してウェイ0が予測されたこと
を表す信号をキャッシュウェイ0イネーブル信号161
として、ウェイ1が予測されたことを表す信号をキャッ
シュウェイ1イネーブル信号162としてそれぞれ出力
する。
について説明する。
上位ビットと、ラッチ(116,117)に格納された
TLBタグと、ラッチ(126,127)に格納された
物理ページ番号とに基づき、TLBウェイ判定器114
と物理ページ番号選択器124によって、物理ページ番
号125の値が生成される。
されたキャッシュタグと物理ページ番号125とに基づ
き、キャッシュウェイ判定器134によってキャッシュ
ウェイ判定信号135に値が出力される。
トの信号であり、物理ページ番号125とウェイ0のキ
ャッシュタグ138が一致したかどうかを示す1ビット
信号と物理ページ番号125とウェイ1のキャッシュタ
グ139が一致したかを示す1ビット信号により構成さ
れる。
ラッチ152に格納されたキャッシュ予測ウェイ信号1
51の値とキャッシュウェイ判定信号135とに基づい
てキャッシュ192のウェイ予測がミスしたかどうかを
判定する。
判定器154を含むキャッシュウェイ予測判定部194
のより詳細な構成を示ブロック図である。
す信号153は2ビットの信号であり、ウェイ0が予測
されたことを示す信号710とウェイ1が予測されたこ
とを示す信号711により構成される。
2ビットの信号であり、ウェイ0がヒットしたことを示
す信号712とウェイ1がヒットしたことを示す信号7
13により構成される。
れ、かつ、ウェイ0がヒットしたときに1を出力する。
予測され、かつ、ウェイ1がヒットしたときに1を出力
する。
は、キャッシュウェイ予測判定を行なわないときに1を
出力する信号であり、時刻3では0を出力している。
かつウェイ0がヒットしたか、または、ウェイ1が予測
されかつウェイ1がヒットしたとき1を出力する。
ュのウェイ予測がヒットした場合に1を出力する。
イ予測がミスした場合にキャッシュウェイ予測判定信号
155に1の値を出力する。
シュウェイ予測判定器154で行なわれ、ウェイ0が予
測されてウェイ0がヒットしているのでAND演算器7
00の出力信号702の値が1となる。
55の値は0となり、キャッシュウェイ予測判定信号1
55ウェイ予測がヒットしたことを示す。
うに命令1と命令2はパイプラインで実行することがで
きる。
いてウェイ0を予測したにもかかわらず、キャッシュ1
92のウェイ1がヒットした場合について述べる。
になる。
と、キャッシュウェイ判定信号135の値はウェイ1を
示し、図6に示す信号712の値が0に、信号713の
値が1となる。
号710の値は1、信号711の値は0であるから、A
ND演算器700及び701の出力はともに0となり、
信号706の値は0に、キャッシュウェイ予測判定信号
155の値は1になる。
155はウェイ予測ミスを示す。
が1となると例外的な処理が実行される。
示す図である。
ェイ予測がミスし、命令2以降でウェイ1が予測されて
ウェイ予測がヒットした場合のタイムチャートである。
判定信号155がウェイ予測のミスを示した場合、パイ
プライン制御信号156が出力されて、時刻3に行なわ
れようとしているプロセッサ本体182、TLB19
1、キャッシュ192の動作を抑止する。
命令2の処理を開始しているが、途中で抑止される。
判定信号155によって、キャッシュウェイ判定信号1
35がラッチ150に格納される。
51の値が置き変わる。
ウェイ信号151の値は、時刻3でキャッシュがヒット
したウェイであるウェイ1を示す。
測ウェイ信号151が出力され、ウェイ1のキャッシュ
データ格納部141を動作させる。
るウェイ1のデータ143は、キャッシュ予測ウェイ信
号151によりデータ選択器144で選択されてラッチ
146に格納される。
ェイ1のデータがキャッシュ192から出力され、デー
タ処理部195で処理される。
ェイ予測部193からの出力信号であるキャッシュ予測
ウェイ信号151により、予測されたウェイのデータ格
納部(140,141)だけでなく、予測されたウェイ
のタグ格納部(130,131)だけを活性化すること
も可能である。
(実施例2)であるアドレス変換バッファ(TLB)
と、キャッシュの概略構成を示すブロック図であり、本
実施例2のアドレス変換バッファ(TLB)991と、
キャッシュ992をプロセッサに適用した例を示す図で
ある。
セッサにおいて、TLBウェイ予測部996とTLBウ
ェイ予測判定部997を付加し、TLBについてもウェ
イの予測を行なうようにしたものである。
および、TLBウェイ予測判定部997の構成は、前記
実施例1のキャッシュウェイ予測部193、キャッシュ
ウェイ予測判定部194と同じである。
シュ992、キャッシュウェイ予測部993、キャッシ
ュウェイ予測判定部994は、それぞれ、図1に示すプ
ロセッサ本体182、キャッシュ192、キャッシュウ
ェイ予測部193、キャッシュウェイ予測判定部194
に対応している。
ャートを示す図である。
について、TLBのウェイ0が予測され、予測がヒット
した場合のタイムチャートを示す図である。
サの動作の概要を説明する。
御で処理される。
を表し、1と番号の書かれた領域は、命令1を処理して
いることを示す。
シュ992、TLBウェイ予測部996、及び、TLB
ウェイ予測判定部997、キャッシュウェイ予測部99
3、及び、キャッシュウェイ予測判定部994から構成
される部分は、動作するタイミングの違いによりメモリ
部980とウェイ判定部981に分けられる。
スを生成し、次の時刻にアドレス900を出力する。
00を入力して1サイクル後にデータ947をデータ処
理部995に出力する。
関しては、TLBウェイ予測部996で予測されたウェ
イのTLBデータ格納部920だけが動作する。
ェイ0が予測されているので、前記TLBウェイ予測部
996の出力であるTLB予測ウェイ信号961はウェ
イ0を示す。
がTLB991に入力されて、TLBデータ格納部92
0が動作する。
941)に関しては、キャッシュウェイ予測部993で
予測されたウェイのキャッシュデータ格納部940だけ
が動作し、キャッシュデータ格納部940から読み出さ
れたデータがデータ947として出力される。
10,911)と、キャッシュタグ格納部(930,9
31)が動作する。
がデータ947を入力して処理する。
904の上位ビットと前時刻にTLBタグ格納部(91
0,911)から読みだされたTLBタグが比較され、
TLBウェイ判定信号960を出力する。
ウェイ予測部996で予測されたウェイ、すなわち、ウ
ェイ0のTLBデータ格納部920から読みだされた物
理ページ番号925が出力され、キャッシュ992に送
られる。
25と前時刻にキャッシュタグ格納部(930,93
1)から読みだされたキャッシュタグが比較され、キャ
ッシュウェイ判定信号935を出力する。
部997において、TLBウェイ判定信号960の値と
前時刻に出力されたTLB予測ウェイ信号961の値を
もとにTLBのウェイ予測がミスしていたかどうか判定
する。
測判定部994により、時刻2におけるキャッシュウェ
イ予測がミスしていたかどうかを判定する。
イ予測がともにヒットしていれば、第10図のようなタ
イムチャートとなる。
かわらず、TLBのウェイ1がヒットした場合について
説明する。
0の値がウェイ1を示し、TLBウェイ予測判定部99
7はTLBウェイ予測がミスしたものと判定する。
を示す図である。
962に値1が出力され、この値1は、TLBウェイ予
測ミスを示している。
によって、TLBウェイ判定信号960の値がTLBウ
ェイ予測部996に格納される。
ウェイ判定信号960の値、すなわち、ウェイ1を示す
値が、時刻4からはTLB予測ウェイ信号961に出力
される。
信号963が出力されて、時刻3に行なわれようとして
いるプロセッサ本体982、TLB991、キャッシュ
992の動作を抑止する。
命令、すなわち、命令2の処理を開始しているが、途中
で抑止される。
信号961が出力される。
ェイ1を示しており、ウェイ1のTLBデータ格納部9
21を動作させる。
作せずに内部状態を保持する。
出力が物理ページ番号925に出力される。
ウェイ判定信号935が出力されてキャッシュウェイ予
測判定部994に送られ、キャッシュウェイ予測判定部
994でキャッシュのウェイ予測がミスしていないかど
うかの判定が行なわれる。
予測部996からの出力信号であるTLB予測ウェイ信
号961により、予測されたウェイのTLBデータ格納
部(920,921)だけでなく、予測されたウェイの
TLBタグ格納部(910,911)だけを活性化する
ことも可能である。
例(実施例3)であるキャッシュの概略構成を示すブロ
ック図であり、本実施例3のキャッシュをプロセッサに
適用した例を示す図である。
ス生成部190をアドレス生成部1290に、キャッシ
ュウェイ予測部193をキャッシュウェイ予測部129
3にそれぞれ変更し、さらに、アドレス制御部1296
を付加したものである。
LB1291、キャッシュ1292、キャッシュウェイ
予測部1293、キャッシュウェイ予測判定部1294
は、それぞれ、図1に示すプロセッサ本体182、TL
B191、キャッシュ192、キャッシュウェイ予測器
193、キャッシュウェイ予測判定部194に対応して
いる。
スラッチ1220〜1223を持っている。
ドレスラッチ1220〜1223に対応するキャッシュ
予測ウェイラッチ1230〜1233をキャッシュウェ
イ予測部1293が持っていることが特徴である。
223の4つのアドレスラッチを持ち、前記ラッチの出
力のうちのいずれかひとつをアドレス選択器1224に
よって選択し、アドレス加算器1226とラッチ122
8を経て1サイクル後にアドレス1200に出力する。
は、アドレスラッチ1220〜1223に対応する4つ
のキャッシュ予測ウェイラッチ1230〜1233を持
ち、アドレス選択器1224において、その出力が選択
されたアドレスラッチに対応するキャッシュ予測ウェイ
ラッチの出力をキャッシュ予測ウェイ選択器1234に
よって選択してキャッシュ予測ウェイ信号1212とし
て出力する。
アドレス制御部1296から出力されるアドレスラッチ
読みだし選択信号1205が、キャッシュ予測ウェイ選
択器1234には、アドレスラッチ読みだし選択信号1
205の1サイクル遅れの信号であるキャッシュ予測ウ
ェイラッチ読みだし選択信号1208がそれぞれ入力さ
れる。
アドレス選択器1224において選択された場合には、
キャッシュ予測ウェイラッチ1230の出力がキャッシ
ュ予測ウェイ選択器1234において選択される。
1、1222、1223の出力がアドレス選択器122
4において選択された場合には、それぞれキャッシュ予
測ウェイラッチ1231、1232、1233の出力が
キャッシュ予測ウェイ選択器1234において選択され
る。
スラッチを用いて連続するアドレス領域を次々にアクセ
スする場合に、アドレスラッチの値にある値を加えると
きに使用する。
予測ウェイ信号1212に値を出力するために使用され
たキャッシュ予測ウェイラッチにキャッシュウェイ判定
信号1211の値が書き込まれる。
チ1240及びデコーダ1242である。
選択器1234に入力されたキャッシュ予測ウェイラッ
チ読みだし選択信号1208の値を格納し記憶する。
ウェイ予測判定信号の値が1となる。
シュウェイ予測判定信号1214の値が1となると、デ
コーダ1242はラッチ1240に格納された値をデコ
ードしてラッチセット信号1243〜1246のいずれ
かひとつの値を1にする。
の回路構成を示す図である。
信号1400に、図11に示す信号1243〜1246
はデコード出力信号1430〜1433に、図11に示
す信号1214はデコードイネーブル信号1410に対
応している。
2進数により構成され、第0ビット目の信号1402と
第1ビット目の信号1403に分解することができる。
により、デコード出力信号1430〜1433のうちの
いずれかひとつを1にする。
の値が0のときは、デコード出力信号1430〜143
3の値はすべて0となる。
46が1のとき、それぞれキャッシュ予測ウェイラッチ
1230〜1233にキャッシュウェイ判定信号121
1の値が書き込まれる。
納部に格納されたデータの一例を示す図である。
ャッシュデータ格納部を、1701はウェイ1のキャッ
シュデータ格納部をそれぞれ表す。
であり、本例では1ラインに4つのデータが格納され
る。
れたデータである。
補助的に示したものである。
はラインごとに管理され、同一ラインのデータは同一の
ウェイに格納される。
アドレス203までが同一のラインに対応しており、デ
ータB[0]からデータB[3]までが同一ウェイに格
納されている。
[3]までが同一ウェイに格納される。
[0]は1番目の文字データを、データA[1]は2番
目の文字データを、データA[2]は3番目の文字デー
タを、データA[3]は4番目の文字データを意味して
いる。
る。
Bとを比較するためにキャッシュ1292から順次文字
データを読み出す処理の例を示す。
文字データB[0]と、文字データA[1]が文字デー
タB[1]と、以下同様に、文字データA[3]が文字
データB[3]とそれぞれ比較される。
ータB[0]、文字データA[1]、文字データB
[1]、以下同様に、文字データA[3]、文字データ
B[3]の順番でキャッシュ1292から文字データが
読み出される。
図11に示すプロセッサの動作を説明する。
ッシュの出力信号の値、もしくは、信号の値を示す。
ドレス100がアドレスラッチ1220に、文字列デー
タBの先頭アドレス200がアドレスラッチ1221に
それぞれ格納されているものとする。
タAの各文字データを読み出すのにアドレスラッチ12
20を使用し、文字データA
アドレス加算器1226において値0を、文字データA
〔1〕を読み出すときにはアドレス加算器1226にお
いて値1を、以下同様に、文字データA〔3〕を読み出
すときにはアドレス加算器1226において値3をそれ
ぞれアドレスラッチ1220の値に加えている。
読み出すのにアドレスラッチ1221を使用している。
ウェイラッチ1230、1231ともに値が0であるも
のとする。
レスラッチ1221に対応する予測ウェイはともに0で
ある。
読み出し処理を開始している。
字データA
択信号1205の値が0となりアドレスラッチ1220
の値100が選択されてアドレスラッチ選択出力信号1
225に出力される。
ドレス1227に出力される。
ずアドレス1227の値は100のままである。
5の値の1サイクル遅れの信号であるキャッシュ予測ウ
ェイラッチ読み出し選択信号1208の値0によって、
アドレスラッチ1220に対応するキャッシュ予測ウェ
イラッチ1230の値0がキャッシュ予測ウェイ信号1
212が読み出される。
部ウェイ0(1700)が動作する。
211が出力されるが、図13に示すとおりアドレス1
00にあるデータA
在するのでキャッシュウェイ判定信号1211の値は1
となる。
は、このキャッシュウェイ判定信号1211の値1と時
刻2で出力されたキャッシュ予測ウェイ信号1212の
値0とを比較するが、不一致なのでウェイ予測ミスとな
る。
発行するとともに、キャッシュウェイ予測判定信号12
14の値を1にする。
ェイラッチ読み出し選択信号1208の1サイクル遅れ
の信号であるデコーダ入力信号1241が入力され、時
刻2で読み出しを行ったキャッシュ予測ウェイラッチ1
230にラッチセット信号1243が入力される。
信号1211の値1がキャッシュ予測ウェイラッチ12
30に書き込まれる。
チ1220に対応する予測ウェイは1に変更される。
1230の値が1となり、キャッシュ予測ウェイ信号1
212には正しいウェイ予測値である1が出力され、キ
ャッシュデータ格納部ウェイ1(1701)から文字デ
ータA
1215にA
文字データB
選択信号1205の値が1となりアドレスラッチ122
1の値200が選択されてアドレスラッチ選択出力信号
1225に出力される。
ドレス1227に出力される。
れずアドレス1227の値は200のままである。
8からアドレス1200から出力される。
値1がラッチ1209からキャッシュ予測ウェイラッチ
読み出し選択信号1208に出力される。
めに、一旦、アドレスラッチ選択信号1205の値とキ
ャッシュ予測ウェイラッチ読み出し選択信号1208の
値は、文字データA
てしまうが、時刻5では、再び時刻3と同じ値を取り戻
す。
は値回復機能付きラッチであり、その回路構成を図15
に示す。
00がラッチ1209またはラッチ1228に、入力信
号1801が信号1205または信号1227に、出力
信号1802が信号1208または1200にそれぞれ
対応している。
ラッチ1810を用いて入力信号1801を出力信号1
802に出力する単なるラッチとして機能するが、1サ
イクル前の値をラッチ1811に記憶している。
のウェイ予測のミスが判定された時刻3では、既に、次
の文字データB
ウェイラッチ読み出し選択信号(以下、文字データB
チ1800から出力されているが、文字データA
読み出しパラメータはラッチ1811に記憶されてい
る。
号1213をもとに、時刻4では、ラッチ1811に格
納された文字データA
出してウェイ予測ミスをした文字データA
出し処理を再実行し、時刻5では文字データB
み出しパラメータをラッチ1810から読み出して通常
の処理に戻る。
イラッチ読み出し選択信号1208の値1によってキャ
ッシュ予測ウェイラッチが選択されキャッシュ予測ウェ
イ信号1212に値0が出力される。
部ウェイ0(1700)が動作して文字データB
を読み出す。
ようにウェイ0に格納されているのでウェイ予測はヒッ
トとなる。
ャッシュの出力データ信号1215に出力される。
アドレスラッチ1220に対応するキャッシュ予測ウェ
イラッチ1230の値が1に、アドレスラッチ1221
に対応するキャッシュ予測ウェイラッチ1231の値が
0となっている。
〔1〕、B〔1〕、A〔2〕、B〔2〕、A〔3〕、B
〔3〕を読み出すときに、それぞれ、アドレスラッチ1
220、1221、1220、1221、1220、1
221を使用するので、キャッシュ予測ウェイの値はす
べて正しいものとなり、ウェイ予測はヒットする。
かの連続した領域を交互にアクセスする場合にもウェイ
予測がヒットする可能性が高くなる。
4)であるキャッシュの概略構成を示すブロック図であ
り、本実施例4のキャッシュをプロセッサに適用した例
を示す図である。
用されるアドレス生成部、キャッシュウェイ予測部、及
び、アドレス制御部だけを示している。
290、キャッシュウェイ予測部1293およびアドレ
ス制御部1296を、アドレス生成部1390、キャッ
シュウェイ予測部1393およびアドレス制御部139
6に置き換えて、プロセッサを構築したものである。
アドレスラッチからアドレスラッチへのアドレスの転送
が可能であり、アドレスラッチ1320〜1323のう
ちのあるアドレスラッチの出力の値を、アドレス選択器
1324及びアドレス加算器1326を経由してアドレ
スラッチ1320〜1323のうちの任意のアドレスラ
ッチに書き込むことができる。
アドレスラッチ1320〜1323にアドレス1300
の値をセットするための信号で、それぞれラッチセット
信号1351〜1354の値が1のときにそれぞれアド
レスラッチ1320〜1323にアドレス1300の値
がセットされる。
は、アドレスラッチ書き込みイネーブル信号1307と
アドレスラッチ書き込み選択信号1306とに基づき、
デコーダ1350で生成される。
307は、アドレスラッチ1320〜1323へのアド
レスの転送が行なわれるときに1となる信号である。
書き込み選択信号1306がデコーダ1350において
デコードされて、ラッチセット信号1351〜1354
が出力される。
同じであり、図16に示す信号1306はデコード入力
信号1400に、図16に示す信号1351〜1354
はデコード出力信号1430〜1433に、図16に示
す信号1307はデコードイネーブル信号1410に対
応している。
ッシュ予測ウェイラッチ1330〜1333を持ち、キ
ャッシュウェイ判定信号1311をキャッシュ予測ウェ
イラッチ1330〜1333に書き込むことができる。
は、さらに、キャッシュ予測ウェイラッチからキャッシ
ュ予測ウェイラッチへのキャッシュ予測ウェイの値の転
送が可能であり、キャッシュ予測ウェイラッチ1330
〜1333のうちのあるキャッシュ予測ウェイラッチの
出力の値をキャッシュ予測ウェイ選択器1334を経由
してキャッシュ予測ウェイラッチ1330〜1333の
うちの任意のキャッシュ予測ウェイラッチに書き込むこ
とができる。
レスの前記転送が行なわれたときに行なわれる。
ドレスラッチ書き込みイネーブル信号1307の値が1
になることにより、キャッシュ予測ウェイラッチ書き込
み選択信号選択器1360では、アドレスラッチ書き込
み選択信号1306の値がキャッシュ予測ウェイラッチ
書き込み選択信号1361に出力され、キャッシュ予測
ウェイラッチ書き込みデータ選択器1362ではキャッ
シュ予測ウェイ信号1312の値がキャッシュ予測ウェ
イラッチ書き込みデータ1363に出力され、そして、
キャッシュ予測ウェイラッチ書き込みイネーブル信号選
択器1364ではアドレスラッチ書き込みイネーブル信
号1307の値、すなわち値1がキャッシュ予測ウェイ
ラッチ書き込みイネーブル信号1365に出力される。
ェイラッチ書き込み選択信号1361の値がデコードさ
れてラッチセット信号1343〜1346が出力され
る。
同じであり、図16に示す信号1361はデコード入力
信号1400に、図16に示す信号1343〜1346
はデコード出力信号1430〜1433に、図16に示
す信号1365はデコードイネーブル信号1410に対
応している。
キャッシュ予測ウェイラッチ1330〜1333にキャ
ッシュ予測ウェイラッチ書き込みデータ1363の値を
セットするための信号で、それぞれラッチセット信号1
343〜1346の値が1のときにそれぞれキャッシュ
予測ウェイラッチ1330〜1333にキャッシュ予測
ウェイラッチ書き込みデータ1363の値がセットされ
る。
307の値が0のときのキャッシュウェイ予測部139
3の動作は、前記図11に示すキャッシュウェイ予測部
1293の動作と同じである。
て、アドレス変換バッファ(TLB)においてウェイを
予測するようにすることも可能であり、その際、キャッ
シュウェイ予測部(1293,1393)に示すように
TLBウェイ予測部の予測ウェイラッチを複数個設ける
ことも可能である。
測値に基づいて予測されたウェイのデータ格納部、ある
いは、TLBのTLBデータ格納部の活性化を行わな
い、従来のキャッシュにも適用できることはいうまでも
ない。
明したが、本発明は、前記実施例に限定されるものでは
なく、その要旨を逸脱しない範囲で種々変更し得ること
は言うまでもない。
ものによって得られる効果を簡単に説明すれば、下記の
通りである。
装置において、ウェイ予測部によってどのウェイがヒッ
トするかを予測し、予測されたウェイのデータ格納部、
あるいは、予測されたタグ格納部およびデータ格納部の
みを動作させるようにしたので、メモリ装置を動作させ
るための消費電力を低減させ、かつ、データ読み出しの
タイムラグを低減させることが可能となる。
ヒットするかを予測するようにしたセットアソシアティ
ブ方式のメモリ装置において、複数の連続した領域をア
クセスする場合に、ウェイ予測部の複数の予測ウェイラ
ッチに記憶されたウェイの番号値をウェイ判定信号の予
測値として用いるようにしたので、いくつかの連続した
領域を交互にアクセスする場合に、データ読み出しのタ
イムラグを低減させることが可能となる。
ットアソシアティブ方式のメモリ装置において、アドレ
ス変換バッファのTLBウェイ予測部によってアドレス
変換バッファのどのウェイがヒットするかを予測し、予
測されたウェイのTLBデータ格納部、あるいは、予測
されたTLBタグ格納部およびTLBデータ格納部のみ
を動作させるようにするとともに、メモリ装置のウェイ
予測部によってメモリ装置のどのウェイがヒットするか
を予測し、予測されたウェイのデータ格納部、あるい
は、予測されたタグ格納部およびデータ格納部のみを動
作させるようにしたので、アドレス変換バッファを具備
するメモリ装置を動作させるための消費電力を低減さ
せ、かつ、データ読み出しのタイムラグを低減させるこ
とが可能となる。
イ予測部によってアドレス変換バッファのどのウェイが
ヒットするかを予測し、予測されたウェイのTLBデー
タ格納部、あるいは、予測されたTLBタグ格納部およ
びTLBデータ格納部のみを動作させるようにするとと
もに、メモリ装置のウェイ予測部によってメモリ装置の
どのウェイがヒットするかを予測し、予測された予測さ
れたウェイのデータ格納部、あるいは、予測されたタグ
格納部およびデータ格納部のみを動作させるようにし
た、アドレス変換バッファを具備するセットアソシアテ
ィブ方式のメモリ装置において、複数の連続した領域を
アクセスする場合に、アドレス変換バッファのTLBウ
ェイ予測部およびメモリ装置のウェイ予測部の複数の予
測ウェイラッチに記憶されたウェイの番号値を、アドレ
ス変換バッファのTLBウェイ判定信号およびメモリ装
置のウェイ判定信号の予測値として用いるようにしたの
で、いくつかの連続した領域を交互にアクセスする場合
に、メモリ装置を動作させるための消費電力を低減さ
せ、かつ、データ読み出しのタイムラグを低減させるこ
とが可能となる。
装置において、ウェイの番号値を記憶する複数の予測ウ
ェイラッチを有するウェイ予測部により、複数の連続し
た領域をアクセスする場合に、どのウェイがヒットする
かを予測するようにしたので、いくつかの連続した領域
を交互にアクセスする場合に、データ読み出しのタイム
ラグを低減させることが可能となる。
ットアソシアティブ方式のメモリ装置において、複数の
連続した領域をアクセスする場合に、ウェイの番号値を
記憶する複数のTLB予測ウェイラッチを有するTLB
ウェイ予測部により、アドレス変換バッファのどのウェ
イがヒットするかを予測するとともに、ウェイの番号値
を記憶する複数の予測ウェイラッチを有するウェイ予測
部により、メモリ装置のどのウェイがヒットするかを予
測するようにしたので、データ読み出しのタイムラグを
低減させることが可能となる。
サのキャッシュメモリに使用することにより、キャッシ
ュメモリの消費電力を低減させるとともに、キャッシュ
メモリの動作を高速に行なうことができ、これにより、
消費電力が少なくマシンサイクルの短いプロセッサを実
現することが可能になる。
あるキャッシュの概略構成を示すブロック図であり、本
実施例1のキャッシュをプロセッサに適用した例を示す
図である。
測部、及び、キャッシュウェイ予測判定部のより詳細な
構成を拡大して示すブロック図である。
B)のより詳細な構成を拡大して示すブロック図であ
る。
ウェイ予測がヒットしたときのタイムチャートを示す図
である。
ウェイ予測がミスしたときのタイムチャートを示す図で
ある。
詳細な構成を示すブロック図である。
る。
であるアドレス変換バッファ(TLB)と、キャッシュ
の概略構成を示すブロック図であり、本実施例2のアド
レス変換バッファ(TLB)と、キャッシュをプロセッ
サに適用した例を示す図である。
バッファ(TLB)のウェイ予測がヒットしたときのタ
イムチャートを示す図である。
換バッファ(TLB)のウェイ予測がミスしたときのヒ
ットしたときのタイムチャートを示す図である。
3)であるキャッシュの概略構成を示すブロック図であ
り、本実施例3のキャッシュをプロセッサに適用した例
を示す図である。
ある。
納されたデータの一例を示す図である。
示す図である。
成を示す図である。
4)であるキャッシュの概略構成を示すブロック図であ
り、本実施例4のキャッシュをプロセッサに適用した例
を示す図である。
概略構成を示すブロック図である。
0…アドレス、101,601,901,1201…ペ
ージ内オフセット、102,602…論理ページ番号下
位ビット、103,603…論理ページ番号上位ビッ
ト、104,604,904,1204…論理ページ番
号、110,111,610,611,910,911
…TLBタグ格納部、112,113,612,613
…TLBタグ、114,614…TLBウェイ判定器、
105,116,117,126,127,136,1
37,146,152,646,1240,1340,
1810,1811…ラッチ、120,121,62
0,621,920,921…TLBデータ格納部、1
22,123,622,623,625,925,12
10…物理ページ番号、124,624…物理ページ番
号選択器、130,131,630,631,930,
931…キャッシュタグ格納部、132,133,63
2,633…キャッシュタグ、134,634…キャッ
シュウェイ判定器、140,141,640,641,
940,941,1700,1701…キャッシュデー
タ格納部、144,644…データ選択器、150,1
230,1231,1232,1233,1330,1
331,1332,1333…キャッシュ予測ウェイラ
ッチ、154…キャッシュウェイ予測判定器、160…
ウェイデコーダ、180,980…メモリ部、181,
981…ウェイ判定部、182,982,1282…プ
ロセッサ本体、190,990,1290,1390…
アドレス生成部、191,691,991,1291…
TLB、192,692,992,1292…キャッシ
ュ、193,993,1293,1393…キャッシュ
ウェイ予測部、194,994,1294…キャッシュ
ウェイ予測判定部、195,995,1295…データ
処理部、401,1001…命令の番号、700,70
1,1420〜1423…AND演算器、705…OR
演算器、707,1404,1405…NOT演算器、
790…キャッシュウェイ予測判定制御論理、996…
TLBウェイ予測部、997…TLBウェイ予測判定
部,1209,1228,1800…値回復機能付きラ
ッチ、1220,1221,1222,1223,13
20,1321,1322,1323…アドレスラッ
チ、1224,1324…アドレス選択器、1226,
1326…アドレス加算器、1234,1334…キャ
ッシュ予測ウェイ選択器、1242,1342,135
0,1490…デコーダ、1296,1396…アドレ
ス制御部、1360…書き込み選択信号選択器、136
2…書き込みデータ選択器、1364…書き込みイネー
ブル信号選択器、1710…キャッシュのライン、17
11…データ、1712…データのアドレス。
Claims (16)
- 【請求項1】 タグを格納するタグ格納部と、データを
格納するデータ格納部と、アクセスアドレスの一部とタ
グ格納部に格納されているタグとを比較しどのウェイが
ヒットしたかを示すウェイ判定信号を出力するウェイ判
定器と、ウェイ選択信号に基づきその選択されたウェイ
のデータ格納部のデータを選択するデータ選択器とを具
備するセットアソシアティブ方式のメモリ装置におい
て、 ウェイ判定信号の予測値を発生するウェイ予測部と、ウ
ェイ予測部からの予測値に基づき予測されたウェイのデ
ータ格納部だけを活性化する手段と、前記予測値をウェ
イ選択信号としてデータ選択器に入力する手段と、ウェ
イ判定器からのウェイ判定信号と前記予測値を比較し、
不一致の場合にウェイ予測判定信号を出力するウェイ予
測判定部と、ウェイ予測判定部からのウェイ予測判定信
号に基づきウェイ予測部の予測値をヒットしたウェイを
示すウェイ判定信号に変更する手段とを具備することを
特徴とするセットアソシアティブ方式のメモリ装置。 - 【請求項2】 請求項1に記載されたセットアソシアテ
ィブ方式のメモリ装置において、 ウェイ予測部からの予測値に基づき予測されたウェイの
タグ格納部だけを活性化する手段を、さらに具備するこ
とを特徴とするセットアソシアティブ方式のメモリ装
置。 - 【請求項3】 請求項1または請求項2に記載されたセ
ットアソシアティブ方式のメモリ装置において、 前記ウェイ予測部が、ウェイの番号値を記憶する予測ウ
ェイラッチを有し、前記予測ウェイラッチに記憶された
ウェイの番号値をウェイ判定信号の予測値として出力す
ることを特徴とするセットアソシアティブ方式のメモリ
装置。 - 【請求項4】 請求項3に記載されたセットアソシアテ
ィブ方式のメモリ装置において、 予測ウェイラッチに、前回ヒットしたウェイの番号値を
記憶させることを特徴とするセットアソシアティブ方式
のメモリ装置。 - 【請求項5】 請求項1または請求項2に記載されたセ
ットアソシアティブ方式のメモリ装置において、 前記ウェイ予測部が、ウェイの番号値を記憶する複数の
予測ウェイラッチを有し、複数の連続した領域をアクセ
スする場合に、対応する複数の予測ウェイラッチに記憶
されたウェイの番号値をウェイ判定信号の予測値として
出力することを特徴とするセットアソシアティブ方式の
メモリ装置。 - 【請求項6】 請求項5に記載されたセットアソシアテ
ィブ方式のメモリ装置において、 前記ウェイ予測部が、任意の予測ウェイラッチに記憶さ
れたウェイの番号値を他の予測ウェイラッチに転送する
手段を、さらに具備することを特徴とするセットアソシ
アティブ方式のメモリ装置。 - 【請求項7】 請求項1ないし請求項6のいずれか1項
に記載されたセットアソシアティブ方式のメモリ装置に
おいて、 前記メモリ装置が、さらに、セットアソシアティブ方式
のアドレス変換バッファを具備し、 前記メモリ装置のウェイ判定器が、アドレス変換バッフ
ァからのTLBデータとタグ格納部に格納されているタ
グとを比較しどのウェイがヒットしたかを示すウェイ判
定信号を出力し、 前記アドレス変換バッファが、TLBタグを格納するT
LBタグ格納部と、TLBデータを格納するTLBデー
タ格納部と、アクセスアドレスの一部とTLBタグ格納
部に格納されているTLBタグとを比較しどのウェイが
ヒットしたかを示すTLBウェイ判定信号を出力するT
LBウェイ判定器と、TLBウェイ判定信号の予測値を
発生するTLBウェイ予測部と、前記TLBウェイ予測
部からの予測値に基づき予測されたTLBウェイのTL
Bデータ格納部だけを活性化する手段と、前記TLBウ
ェイ予測部からの予測値がウェイ選択信号として入力さ
れ、予測されたウェイのTLBデータ格納部のTLBデ
ータを選択するTLBデータ選択器と、TLBウェイ判
定器からのTLBウェイ判定信号と前記予測値を比較
し、不一致の場合にTLBウェイ予測判定信号を出力す
るTLBウェイ予測判定部と、TLBウェイ予測判定部
からのTLBウェイ予測判定信号に基づきTLBウェイ
予測部の予測値をヒットしたウェイを示すTLBウェイ
判定信号に変更する手段とを具備することを特徴とする
セットアソシアティブ方式のメモリ装置。 - 【請求項8】 請求項7に記載されたセットアソシアテ
ィブ方式のメモリ装置において、 TLBウェイ予測部からの予測値に基づき予測されたウ
ェイのTLBタグ格納部だけを活性化する手段を、さら
に具備することを特徴とするセットアソシアティブ方式
のメモリ装置。 - 【請求項9】 請求項7または請求項8に記載されたセ
ットアソシアティブ方式のメモリ装置において、 前記TLBウェイ予測部が、ウェイの番号値を記憶する
TLB予測ウェイラッチを有し、前記TLB予測ウェイ
ラッチに記憶されたTLBウェイの番号値をTLBウェ
イ判定信号の予測値として出力することを特徴とするセ
ットアソシアティブ方式のメモリ装置。 - 【請求項10】 請求項9に記載されたセットアソシア
ティブ方式のメモリ装置において、 TLB予測ウェイラッチに、前回ヒットしたウェイの番
号値を記憶させることを特徴とするセットアソシアティ
ブ方式のメモリ装置。 - 【請求項11】 請求項9または請求項10に記載され
たセットアソシアティブ方式のメモリ装置において、 前記TLBウェイ予測部が、ウェイの番号値を記憶する
複数のTLB予測ウェイラッチを有し、複数の連続した
領域をアクセスする場合に、対応する複数のTLB予測
ウェイラッチに記憶されたTLBウェイの番号値をTL
Bウェイ判定信号の予測値として出力することを特徴と
するセットアソシアティブ方式のメモリ装置。 - 【請求項12】 請求項11に記載されたセットアソシ
アティブ方式のメモリ装置において、 前記TLBウェイ予測部が、任意のTLB予測ウェイラ
ッチに記憶された番号値を他のTLB予測ウェイラッチ
に転送する手段を、さらに具備することを特徴とするセ
ットアソシアティブ方式のメモリ装置。 - 【請求項13】 タグを格納するタグ格納部と、データ
を格納するデータ格納部と、アクセスアドレスの一部と
タグ格納部に格納されているタグとを比較しどのウェイ
がヒットしたかを示すウェイ判定信号を出力するウェイ
判定器と、ウェイ選択信号に基づきその選択されたウェ
イのデータ格納部のデータを選択するデータ選択器とを
具備するセットアソシアティブ方式のメモリ装置におい
て、 ウェイの番号値を記憶する複数の予測ウェイラッチを有
し、複数の連続した領域をアクセスする場合に、対応す
る複数の予測ウェイラッチに記憶されたウェイの番号値
をウェイ判定信号の予測値として出力するウェイ予測部
と、前記予測値をウェイ選択信号としてデータ選択器に
入力する手段と、ウェイ判定器からのウェイ判定信号と
前記予測値を比較し、不一致の場合にウェイ予測判定信
号を出力するウェイ予測判定部と、ウェイ予測判定部か
らのウェイ予測判定信号に基づきウェイ予測部の予測値
をヒットしたウェイを示すウェイ判定信号に変更する手
段とを具備することを特徴とするセットアソシアティブ
方式のメモリ装置。 - 【請求項14】 請求項13に記載されたセットアソシ
アティブ方式のメモリ装置において、 前記ウェイ予測部が、任意の予測ウェイラッチに記憶さ
れたウェイの番号値を他の予測ウェイラッチに転送する
手段を、さらに具備することを特徴とするセットアソシ
アティブ方式のメモリ装置。 - 【請求項15】 請求項13または請求項14に記載さ
れたセットアソシアティブ方式のメモリ装置において、 前記メモリ装置が、さらに、セットアソシアティブ方式
のアドレス変換バッファを具備し、 前記メモリ装置のウェイ判定器が、アドレス変換バッフ
ァからのTLBデータとタグ格納部に格納されているタ
グとを比較しどのウェイがヒットしたかを示すウェイ判
定信号を出力し、 前記アドレス変換バッファが、TLBタグを格納するT
LBタグ格納部と、TLBデータを格納するTLBデー
タ格納部と、アクセスアドレスの一部とTLBタグ格納
部に格納されているTLBタグとを比較しどのウェイが
ヒットしたかを示すTLBウェイ判定信号を出力するT
LBウェイ判定器と、ウェイの番号値を記憶する複数の
TLB予測ウェイラッチを有し、複数の連続した領域を
アクセスする場合に、対応する複数のTLB予測ウェイ
ラッチに記憶されたTLBウェイの番号値をTLBウェ
イ判定信号の予測値として出力するTLBウェイ予測部
と、TLBウェイ予測部からの予測値が選択信号として
入力され、予測されたウェイのTLBデータ格納部のT
LBデータを選択するTLBデータ選択器と、TLBウ
ェイ判定器からのTLBウェイ判定信号と前記予測値を
比較し、不一致の場合にTLBウェイ予測判定信号を出
力するTLBウェイ予測判定部と、TLBウェイ予測判
定部からのTLBウェイ予測判定信号に基づきTLBウ
ェイ予測部の予測値をヒットしたウェイを示すTLBウ
ェイ判定信号に変更する手段とを具備することを特徴と
するセットアソシアティブ方式のメモリ装置。 - 【請求項16】 請求項15に記載されたセットアソシ
アティブ方式のメモリ装置において、 前記TLBウェイ予測部が、任意のTLB予測ウェイラ
ッチに記憶された番号値を他のTLB予測ウェイラッチ
に転送する手段を、さらに具備することを特徴とするセ
ットアソシアティブ方式のメモリ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12538094A JP3589485B2 (ja) | 1994-06-07 | 1994-06-07 | セットアソシアティブ方式のメモリ装置およびプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12538094A JP3589485B2 (ja) | 1994-06-07 | 1994-06-07 | セットアソシアティブ方式のメモリ装置およびプロセッサ |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004110649A Division JP3593123B2 (ja) | 2004-04-05 | 2004-04-05 | セットアソシアティブ方式のメモリ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07334423A true JPH07334423A (ja) | 1995-12-22 |
JP3589485B2 JP3589485B2 (ja) | 2004-11-17 |
Family
ID=14908709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12538094A Expired - Fee Related JP3589485B2 (ja) | 1994-06-07 | 1994-06-07 | セットアソシアティブ方式のメモリ装置およびプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3589485B2 (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001050272A1 (en) * | 2000-01-03 | 2001-07-12 | Advanced Micro Devices, Inc. | Cache which provides partial tags from non-predicted ways to direct search if way prediction misses |
US6718439B1 (en) * | 2001-06-01 | 2004-04-06 | Advanced Micro Devices, Inc. | Cache memory and method of operation |
US6760810B2 (en) | 2000-12-22 | 2004-07-06 | Fujitsu Limited | Data processor having instruction cache with low power consumption |
WO2004104841A1 (ja) * | 2003-05-21 | 2004-12-02 | Fujitsu Limited | アドレス変換バッファの電力制御方法及びその装置 |
US6898671B2 (en) | 2001-04-27 | 2005-05-24 | Renesas Technology Corporation | Data processor for reducing set-associative cache energy via selective way prediction |
WO2006038258A1 (ja) * | 2004-09-30 | 2006-04-13 | Renesas Technology Corp. | データプロセッサ |
JP2009505306A (ja) * | 2005-08-22 | 2009-02-05 | インテル・コーポレーション | 電力削減のための動的メモリサイジング |
WO2011151944A1 (ja) * | 2010-06-04 | 2011-12-08 | パナソニック株式会社 | キャッシュメモリ装置、プログラム変換装置、キャッシュメモリ制御方法及びプログラム変換方法 |
US8822033B2 (en) | 2009-03-31 | 2014-09-02 | Schott Ag | Transparent glass or glass ceramic pane with a layer that reflects infrared radiation |
JP2016505971A (ja) * | 2012-12-20 | 2016-02-25 | クアルコム,インコーポレイテッド | マルチビットウェイ予測マスクを有する命令キャッシュ |
-
1994
- 1994-06-07 JP JP12538094A patent/JP3589485B2/ja not_active Expired - Fee Related
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003519835A (ja) * | 2000-01-03 | 2003-06-24 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | ウェイ予測がミスした時にサーチを方向付けるための、予測されないウェイからの部分的なタグを提供するキャッシュ |
WO2001050272A1 (en) * | 2000-01-03 | 2001-07-12 | Advanced Micro Devices, Inc. | Cache which provides partial tags from non-predicted ways to direct search if way prediction misses |
KR100747127B1 (ko) * | 2000-01-03 | 2007-08-09 | 어드밴스드 마이크로 디바이시즈, 인코포레이티드 | 경로 예측 실패시 조회를 지시하도록 비예측 경로들로부터부분적인 태그들을 제공하는 캐쉬 |
US6760810B2 (en) | 2000-12-22 | 2004-07-06 | Fujitsu Limited | Data processor having instruction cache with low power consumption |
US6898671B2 (en) | 2001-04-27 | 2005-05-24 | Renesas Technology Corporation | Data processor for reducing set-associative cache energy via selective way prediction |
US6718439B1 (en) * | 2001-06-01 | 2004-04-06 | Advanced Micro Devices, Inc. | Cache memory and method of operation |
US7418553B2 (en) | 2003-05-21 | 2008-08-26 | Fujitsu Limited | Method and apparatus of controlling electric power for translation lookaside buffer |
WO2004104841A1 (ja) * | 2003-05-21 | 2004-12-02 | Fujitsu Limited | アドレス変換バッファの電力制御方法及びその装置 |
WO2006038258A1 (ja) * | 2004-09-30 | 2006-04-13 | Renesas Technology Corp. | データプロセッサ |
JP2009505306A (ja) * | 2005-08-22 | 2009-02-05 | インテル・コーポレーション | 電力削減のための動的メモリサイジング |
US8822033B2 (en) | 2009-03-31 | 2014-09-02 | Schott Ag | Transparent glass or glass ceramic pane with a layer that reflects infrared radiation |
WO2011151944A1 (ja) * | 2010-06-04 | 2011-12-08 | パナソニック株式会社 | キャッシュメモリ装置、プログラム変換装置、キャッシュメモリ制御方法及びプログラム変換方法 |
JP2016505971A (ja) * | 2012-12-20 | 2016-02-25 | クアルコム,インコーポレイテッド | マルチビットウェイ予測マスクを有する命令キャッシュ |
Also Published As
Publication number | Publication date |
---|---|
JP3589485B2 (ja) | 2004-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7594131B2 (en) | Processing apparatus | |
US6356990B1 (en) | Set-associative cache memory having a built-in set prediction array | |
JP3593346B2 (ja) | マルチポートメモリ及びそれをアクセスするデータ処理装置 | |
JP2004157593A (ja) | 多ポート統合キャッシュ | |
US6963962B2 (en) | Memory system for supporting multiple parallel accesses at very high frequencies | |
JPH10105459A (ja) | 複数ポート・インターリーブ・キャッシュ | |
JPH0559455B2 (ja) | ||
JPH07253927A (ja) | 物理的にアドレス指定されたデータ記憶構造からの迅速なデータリトリーブ方法及び装置 | |
US6898671B2 (en) | Data processor for reducing set-associative cache energy via selective way prediction | |
JPH07334423A (ja) | セットアソシアティブ方式のメモリ装置 | |
US5452427A (en) | Data processing device for variable word length instruction system having short instruction execution time and small occupancy area | |
JP2014085890A (ja) | メモリ装置、演算処理装置、及びキャッシュメモリ制御方法 | |
US7346737B2 (en) | Cache system having branch target address cache | |
US5854943A (en) | Speed efficient cache output selector circuitry based on tag compare and data organization | |
JP7070384B2 (ja) | 演算処理装置、メモリ装置、及び演算処理装置の制御方法 | |
JP3593123B2 (ja) | セットアソシアティブ方式のメモリ装置 | |
JP3997404B2 (ja) | キャッシュメモリ及びその制御方法 | |
JPH10111832A (ja) | メモリシステム | |
JP4068828B2 (ja) | 統合型分離型切替えキャッシュメモリ及び該キャッシュメモリを備えたプロセッサシステム | |
JPH06309227A (ja) | キャッシュメモリ装置 | |
US20210200538A1 (en) | Dual write micro-op queue | |
JPH05120139A (ja) | キヤツシユメモリ装置 | |
JP2818562B2 (ja) | アドレス変換回路 | |
JPH06348592A (ja) | ライトバッファ制御方式 | |
JPS61264455A (ja) | 主記憶一致制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040203 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040525 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040722 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040810 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040817 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080827 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090827 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100827 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110827 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110827 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110827 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120827 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |