JP2002196981A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JP2002196981A
JP2002196981A JP2000391369A JP2000391369A JP2002196981A JP 2002196981 A JP2002196981 A JP 2002196981A JP 2000391369 A JP2000391369 A JP 2000391369A JP 2000391369 A JP2000391369 A JP 2000391369A JP 2002196981 A JP2002196981 A JP 2002196981A
Authority
JP
Japan
Prior art keywords
cache
instruction
ram
address
read
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
JP2000391369A
Other languages
English (en)
Inventor
Yasuhiro Yamazaki
恭啓 山崎
Taizo Sato
泰造 佐藤
Sukeyuki Uchiumi
祐之 内海
Hitoshi Yoda
斉 依田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2000391369A priority Critical patent/JP2002196981A/ja
Priority to TW090131653A priority patent/TW581966B/zh
Priority to EP01310811A priority patent/EP1217502B1/en
Priority to DE60127520T priority patent/DE60127520T2/de
Priority to US10/023,905 priority patent/US6760810B2/en
Priority to CNB011457651A priority patent/CN1155893C/zh
Priority to KR1020010082560A priority patent/KR100758185B1/ko
Publication of JP2002196981A publication Critical patent/JP2002196981A/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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0882Page mode
    • 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/0864Addressing 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1028Power efficiency
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 無駄な電力消費を避け、低電力で動作可能な
命令キャッシュを有するデータ処理装置を提供する。 【解決手段】 複数のキャッシュメモリ(17、18)
を有し、要求された命令を格納するキャッシュメモリを
イネーブル(17)とし、それ以外のキャッシュメモリ
(18)をディスエーブルとする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はデータ処理装置に関
し、より特定すれば命令キャッシュを具備するマイクロ
プロセッサや画像処理プロセッサなどのデータ処理装置
に関する。
【0002】
【従来の技術】従来、各種プロセッサは外部メモリ(R
AM)から命令を取り込み、実行ユニットで命令を実行
する。
【0003】図1は、この種のマイクロプロセッサを示
すブロック図である。マイクロプロセッサ10は実行ユ
ニット11を有する。実行ユニット11は、次の手順で
外部メモリとして機能する外部RAM12に格納してあ
る命令を実行する。まず、実行ユニット11は命令アド
レスを外部RAM12に出力し(ステップ1)、対応す
る命令を受取る(ステップ2)。そして実行ユニット1
1は命令を解析/実行する(ステップ3)。その際、実行
ユニット11は、データを読出す又は書込むためにデー
タアドレスを外部RAM12に出力し(ステップ4)、
データを読み書きする(ステップ5)。なお、ステップ
4と5は、命令によっては不必要な動作である。
【0004】図1の構成では、命令を実行する毎に外部
RAM12にアクセスする必要があるため、命令の実行
に時間が掛かるという問題点を持つ。
【0005】この問題点を解決するために、図2に示す
ように、マイクロプロセッサ10A内に命令キャッシュ
13を設けることが行われている。命令キャッシュ13
に要求する命令が無い場合には、ステップ1、2の手順
で命令が外部RAM12から読み出されて実行ユニット
11に供給されると共に、命令キャッシュ13に格納さ
れる。実行ユニット11が同じ命令を要求した場合に
は、命令アドレスを受けた命令キャッシュ13から対応
する命令が読み出され、実行ユニット11に供給され
る。一般に、外部RAM12にアクセスする時間より
も、命令キャッシュ13にアクセスする時間の方が短い
ため、命令を読出して実行するまでの時間を短縮するこ
とができる。
【0006】図3は、図2に示す命令キャッシュ13の
構成を示すブロック図である。命令キャッシュ13は、
命令アドレスレジスタ14、2つのタグRAM15、1
6、2つのキャッシュRAM17、18、2つの比較器
19、20、ヒット/ミス判定論理回路21及びセレク
タ22を有する。タグRAM15とキャッシュRAM1
7とは連動し(#0系)、タグRAM16とキャッシュ
RAM18とは連動している(#1系)。
【0007】命令キャッシュ13は、図2に示す実行ユ
ニット11からの命令アドレスを受け、対応する命令を
セレクタ22から出力する。外部RAM12へは命令ア
ドレスを送り、外部RAMから該当するブロックを受取
る。ブロックとは、連続するアドレスで特定される複数
の命令の集まりである。
【0008】図4に、逐次的に実行される命令を示す。
図4において、分岐命令(branch)以外は連続す
る命令アドレスで特定される命令である。図4の右側の
矢印で示す順で命令が実行される。例えば、連続するア
ドレスで特定される4つの命令を1つのブロックとす
る。
【0009】図3の命令アドレスレジスタ14は、ブロ
ックオフセット、ラインアドレス及びタグアドレスの領
域に分割されている。2つのキャッシュRAM17、1
8は、ラインアドレスとブロックアドレスでアクセスさ
れ、指定された命令を出力する。ラインアドレスは外部
RAM12内の命令をキャッシュRAM17、18に格
納する領域を限定するために用いられる。例えば、外部
RAM12のアドレスxxxxやyyyyに格納されて
いる命令は、キャッシュRAM17、18のzzzに格
納されるようにする。キャッシュRAM17、18の任
意の記憶領域に格納可能としてしまうと、キャッシュR
AM17、18をアクセスするのに時間がかかってしま
う。
【0010】なお、外部RAM12から読出した命令
は、2つのキャッシュRAM17、18に格納可能であ
る。この場合、連想度が2であると言う。キャッシュR
AM17、18は個々のメモリチップで構成されていて
も良いし、1つのメモリチップの記憶領域を分割したも
のであっても良い。
【0011】ブロックオフセットは、ラインアドレスか
ら1ブロック分の命令を特定するものである。例えば、
図4の先頭にある加算命令“add”がラインアドレス
で特定され、ブロックオフセットが“00”から“0
1”、“10”、“11”と変化するすることで、命令
“add”、“subcc”、“or”、“set”が
特定される。
【0012】タグRAM15、16はラインアドレスを
受けて、タグアドレスを出力する。比較器19、20は
それぞれ、タグRAM15、16から読出されたタグア
ドレスを命令アドレスレジスタ14から読出されたタグ
アドレスと比較して、両者が一致するかどうかを判断す
る。ラインアドレスで特定される命令がキャッシュRA
M17に格納されている場合には、比較器19の比較結
果が一致する(キャッシュ・ヒット)。これに対し、ライ
ンアドレスで特定される命令がキャッシュRAM18に
格納されている場合には、比較器20の比較結果が一致
する(キャッシュ・ヒット)。
【0013】ヒット/ミス判定論理回路21は、比較器
19と20の出力信号に応じて、セレクタ22を制御す
る。比較器19が一致信号を出力すれば、セレクタ22
はキャッシュRAM17を選択し、比較器20が一致信
号を出力すれば、セレクタ22はキャッシュRAM18
を選択する。選択された命令は、実行ユニット11へ送
られる。
【0014】図5は、上述した場合、つまりタグRAM
15から読出されるタグアドレスと命令アドレスレジス
タ14から読出されるタグアドレスとが一致した場合を
示す。図中、太線は読出し動作で使用しているアドレ
ス、命令、信号などの流れを示す。
【0015】図6は、比較器19と20の比較結果がい
ずれも一致しなかった場合(キャッシュ・ミス)を示す。
図中、太線は書込み動作で使用しているアドレス、命
令、信号などの流れを示す。この場合には、外部RAM
12から命令を読出し、キャッシュRAM17かキャッ
シュRAM18に書込む。図6の場合はキャッシュRA
M17に読出した命令を書込む例である。また、ミスし
た命令アドレスのタグアドレスをキャッシュRAM17
に対応するタグRAM15に書込む。そして、キャッシ
ュRAM17から格納した命令を読出し、セレクタ22
を介して実行ユニット11に供給する。
【0016】
【発明が解決しようとする課題】しかしならが、上記従
来の命令キャッシュには次の問題点がある。
【0017】図7は、図3に示す構成の命令キャッシュ
13から命令を読出すシーケンスを示す図である。アド
レス等の流れを明確に図示するために、図3に示す構成
要素に付してある参照番号の一部のみ図示してある。ま
た、図7では、1つの命令は4バイト構成で、4つの命
令で1ブロックを構成する(つまり1ブロックは16バ
イト)。また、ライン数は128である。読出しシーケ
ンスは、ステップ(a)から(e)の順番である。
【0018】実行ユニット11から“0x000000
00”の命令アドレスが供給され、命令アドレスレジス
タ14に格納されたとする。この場合、ラインアドレス
は“0000000”で、ブロックオフセットは“0
0”である。ステップ(a)では、命令アドレスのタグ
アドレスは、タグRAM15内から読出されたタグアド
レスと一致すると仮定するものとする。従って、ヒット
/ミス判定論理回路21はセレクタ22を制御してキャ
ッシュRAM17を選択する。例えば、図4の加算命令
“add”がキャッシュRAM17から読出される。
【0019】次に、ステップ(b)で命令アドレス“0
x00000004”が命令アドレスレジスタ14に格
納される。この場合、ブロックオフセットは“00”か
ら1インクリメントし、“01”となる。ラインアドレ
スは変わらないので、引き続きキャッシュRAM17が
選択され、ブロックオフセット“01”に対応する命令
が選択される(図4の減算命令“subcc”)。
【0020】同様にして、命令アドレス“0x0000
008”、“0x0000000c”に対しブロックオ
フセットが“10”、“11”となり、それぞれOR命
令“or”、セット命令“set”がキャッシュRAM
17から読出される(ステップ(c)、(d))。この
間もラインアドレスは変わらない。
【0021】次に、ステップ(e)で命令アドレスが
“0x00000010”に変化すると、ラインアドレ
スは1インクリメントし、“0000001”となる。
ステップ(e)では、命令アドレスのタグアドレスは、
タグRAM16内から読出されたタグアドレスと一致す
ると仮定するものとする。従って、ヒット/ミス判定論
理回路21はセレクタ22を制御してキャッシュRAM
18を選択する。
【0022】命令が連続したアドレスで特定されるステ
ップ(a)から(e)では、選択されないキャッシュR
AM18も読出し動作を行っている。なお、図中の太線
の丸印は、キャッシュRAMがイネーブル状態(アクテ
ィブ状態や活性状態とも言う)にあることを示してい
る。従って、無駄な電力が消費されてしまうという問題
点があった。
【0023】従って、本発明は上記従来技術の問題点を
解決し、無駄な電力消費を避け、低電力で動作可能な命
令キャッシュを有するデータ処理装置を提供することを
目的とする。
【0024】
【課題を解決するための手段】上記課題は、命令キャッ
シュを有するデータ処理装置において、複数のキャッシ
ュメモリを有し、要求された命令を格納するキャッシュ
メモリをイネーブルとし、それ以外のキャッシュメモリ
をディスエーブル(インアクティブや非活性状態とも言
う)とするデータ処理装置で達成できる。要求された命
令を格納していないキャッシュメモリをディスエーブル
とするので、電力を消費しない。つまり、電力を消費す
るのは要求されたメモリを格納するキャッシュメモリの
みである。よって、無駄な電力消費を避け、低電力で動
作可能な命令キャッシュが実現できる。
【0025】
【発明の実施の形態】図8は、本発明の原理を説明する
ための図である。前述した図7に示す読出しシーケンス
との相違を明確にするために、図8では、図7の構成に
本発明を適用した場合の読出しシーケンスを図示してあ
る。従って、図8に示す命令キャッシュの構成そのもの
は、便宜上図3や図7に示す従来の命令キャッシュの構
成としてある。
【0026】本発明によれば、ステップ(b)、(c)
及び(d)で、要求された命令を格納していないキャッ
シュRAM18をディースエーブル状態とすることにあ
る(ディスエーブル状態にあるキャッシュRAM18
は、太線の丸印で囲んでいない)。換言すれば、ステッ
プ(b)、(c)及び(d)で、要求された命令を格納
するキャッシュRAM17のみをイネーブル状態として
いる(イネーブル状態にあるキャッシュRAM17を太
線の丸印で囲んである)。これにより、命令キャッシュ
で消費される電力を減らすことができる。
【0027】なお、キャッシュRAMをディスエーブル
状態にするには、これらに対するアドレス供給を停止す
ればよい。
【0028】このように、要求された命令を格納してい
ないキャッシュRAMをディスエーブル状態とすること
ができるのは、同一ブロック内の命令はラインアドレス
が同じなので、同一キャッシュRAM内に格納されてい
ることに着目したものである。ステップ(a)は同一ブ
ロックの最初の命令を読出す。この時はキャッシュRA
M17がヒットするのであるが、どちらがヒットするか
どうかを判断してミスするキャッシュRAM18をディ
スエーブルとするには相当の時間を要してしまう。従っ
て、原理的にはキャッシュRAM18をディスエーブル
状態に設定できるが、アクセス時間を犠牲にしてしまう
ので、ステップ(a)では両方のキャッシュRAMをイ
ネーブル状態に設定する。
【0029】ステップ(b)では、ラインアドレスに変
化はない。つまり、ステップ(b)では必ずステップ
(a)と同一のキャッシュRAM17がヒットする。従
って、ステップ(a)でキャッシュ・ミスしたキャッシ
ュRAM18をディスエーブル状態とする。ステップ
(c)もラインアドレスに変化はないので、キャッシュ
RAM18をディスエーブル状態とする。
【0030】そして、ラインアドレスが変化するステッ
プ(e)ではステップ(a)と同様に、両方のキャッシ
ュRAM17、18をイネーブル状態に設定する。
【0031】このように、同一ブロックの先頭にある命
令をのみ読出すときにすべてのキャッシュRAMをイネ
ーブル状態に設定し、同一ブロック内の残りの命令を読
出すときはキャッシュ・ミスしたキャッシュRAMをデ
ィスエーブル状態とすることにより、電力消費を削減す
ることが可能となる。
【0032】図9は、本発明の一実施の形態による命令
キャッシュの構成を示すブロック図である。図中、図3
に示す構成要素と同一のものには同一の参照番号を付し
てある。なお、図9の構成は、図2に示す命令キャッシ
ュ13を構成し、この命令キャッシュを有するマイクロ
プロセッサなどのデータ処理装置と外部RAM12とを
含んでシステムが構成される。
【0033】図9に示す命令キャッシュは、図3に示す
ヒット/ミス判定論理回路21に代えてヒット/ミス判
定論理回路21Aを用いる。ヒット/ミス判定論理回路
21Aは、セレクタ22の制御に加え、図8を参照して
説明した制御、つまりラインアドレスに変化があるかど
うかを判定し、変化がない場合には直前のステップでキ
ャッシュ・ミスしたキャッシュRAMをディスエーブル
状態に制御する制御を行うものである。そして、この制
御結果に応じたキャッシュRAM読出し有効信号23及
び24をそれぞれキャッシュRAM17、18に出力
し、これらをイネーブル状態かディスエーブル状態に設
定する。
【0034】キャッシュRAM読出し有効信号23、2
4は、論理ゲート17a、18aに供給され、キャッシ
ュRAM読出し有効信号23、24がイネーブル(O
N)の時、アドレスがキャッシュRAM17、18に与
えられ、ディスエーブル(OFF)の時、アドレスはキ
ャッシュRAM17、18に供給されない。また、キャ
ッシュRAM17、18が個別のチップで構成されてい
る場合には、各チップのチップ選択端子などにキャッシ
ュRAM読出し有効信号23、24を与える。
【0035】図10は、ヒット/ミス判定論理回路21
Aの一構成例を示す回路図である。ヒット/ミス判定論
理回路21Aは、ANDゲート25、26、フリップフ
ロップ27及びORゲート28、30及び31、NOR
ゲート29を有する。ヒット/ミス判定論理回路21A
の入力信号は、比較器19、20の比較結果と、タグR
AM15、16から読出されたアドレスに有効な命令が
格納されているかどうかを示すエントリ有効信号32、
33、同一ラインアドレス内のブロックの先頭であるこ
とを示す信号34、及びアドレスが分岐命令により新規
のものとなる事を示すブランチ検出信号35である。ま
た、ヒット/ミス判定論理回路21Aの出力信号は、キ
ャッシュ・ミス信号36、キャッシュRAM読出し有効
信号23、24及びセレクタ制御信号37である。
【0036】図10の判定論理を図8と図9を参照しな
がら説明する。
【0037】まず、命令アドレスがブロックの先頭であ
る場合、又は分岐命令によって新規のアドレスとなった
場合には、信号34又は信号35がON(ハイレベル)
となり、ORゲート28を介してORゲート30と31
に供給される。そして、ORゲート30と31はキャッ
シュRAM読出し有効信号23、24をON(ハイレベ
ル)とする。これにより、キャッシュRAM17と18
はイネーブル状態に設定される。この時、エントリ有効
信号32と33がオフの時(ローレベルの時)、AND
ゲート25、26の出力はローレベルであり、ORゲー
トを介してローレベルのキャッシュ・ミス信号36が出
力される。これが出力されると、図2に示す外部RAM
12にアクセスして命令の書込み動作が行われる(後述
する図12の動作)。
【0038】これに対し、比較器19又は20の出力が
タグアドレスの一致を示しており、対応するエントリ有
効信号32又は33が有効を示すハイレベル(ON)の
時、キャッシュ・ミス信号はハイレベルでキャッシュ・
ヒットを示す。例えば、比較器19の出力がタグアドレ
スの一致を示すと、ANDゲート25の出力はハイレベ
ルとなり、制御信号37としてセレクタ22に供給さ
れ、キャッシュRAM17を選択するとともに、フリッ
プフロップ27を1にセットする。これにより、キャッ
シュ・ヒットしたのは、#0系(キャッシュRAM1
7)であることがフリップフロップ27に記憶される。
他方、比較器20の出力がタグアドレスの一致を示す
と、ANDゲート26の出力はハイレベルとなる。この
時、制御信号37はローレベルのままであり、セレクタ
22はキャッシュRAM18を選択する。なお、フリッ
プフロップ27は0にリセットされたままである。つま
り、フリップフロック27は、どのキャッシュメモリが
ヒットしたかを示すデータを記憶する記憶手段として機
能する。以上の動作が、図8のステップ(a)で行われ
る。
【0039】次に、命令アドレスがブロックの先頭でな
い場合、又は分岐命令がない場合には、ORゲートの出
力はローレベルとなる。そして、フリップフロップ27
に格納された値を用いて、何れか一方のキャッシュRA
Mを有効にする。フリップフロップ27に1がセットさ
れていれば、ORゲート30の出力はハイレベル、OR
ゲート31の出力はローレベルとなり、キャッシュRA
M読出し有効信号23がON、キャッシュRAM読出し
有効信号24がOFFとなる。他方、フリップフロップ
27に0がセットされていれば、ORゲート30の出力
はローレベル、ORゲート31の出力はハイレベルとな
り、キャッシュRAM読出し有効信号23がOFF、キ
ャッシュRAM読出し有効信号24がONとなる。セレ
クタ22は、制御信号37に従って、いずれか一方のキ
ャッシュRAMを選択する。図8のステップ(b)〜
(d)では、同一ラインアドレス内の動作なのでAND
ゲート25の出力、つまり制御信号37はハイレベルで
ある。よって、セレクタ22はキャッシュRAM17を
選択する。また、ステップ(b)〜(d)では、フリッ
プフロップ27に1がセットされるので、キャッシュR
AM読出し信号23がONし続ける。
【0040】このように、ヒット/ミス判定論理回路2
1Aは、複数のキャッシュメモリを有する命令キャッシ
ュの制御方法であって、要求された命令を格納するキャ
ッシュメモリをイネーブルとし、それ以外のキャッシュ
メモリをディスエーブルとする制御方法を実現するもの
である。
【0041】図11は、上記判定論理に従い命令キャッ
シュから命令を読出す様子を示す図で、前述した図5に
相当するものである。また、図12は、上記判定論理に
従いキャッシュ・ミス信号36がONになった場合の動
作を示すもので、前述した図6に相当するものである。
図2に示す外部RAM12から命令が読出され、図6を
参照して説明した動作と同様に、どちらかのキャッシュ
RAM(図12の例では、キャッシュRAM17)に書
込まれる。
【0042】以上、本発明の実施の形態を説明した。本
発明は上記実施の形態に限定されるものではない。例え
ば、キャッシュRAMの数は3以上であっても良い。換
言すれば、連想度が3以上であっても良い。
【0043】
【発明の効果】以上説明したように、本発明によれば、
プロセッサの実行ユニットから要求された命令を格納し
ていないキャッシュメモリをディスエーブルとするの
で、無駄な電力消費を避け、低電力で動作可能な命令キ
ャッシュを有するデータ処理装置を提供することができ
る。
【図面の簡単な説明】
【図1】従来のマイクロプロセッサの構成を示す図であ
る。
【図2】従来のマイクロプロセッサの別の構成を示す図
である。
【図3】図2に示す命令キャッシュ13の構成を示すブ
ロック図である。
【図4】逐次的に実行される命令の一例を示す図であ
る。
【図5】図3に示す命令キャッシュの動作を示す図であ
る。
【図6】図3に示す命令キャッシュの別の動作を示す図
である。
【図7】図3に示す命令キャッシュの読出し動作を各ス
テップごとに分解して示す図である。
【図8】本発明の原理を、図7の読出し動作に対比させ
て示す図である。
【図9】本発明の一実施の形態による命令キャッシュの
構成を示す図である。
【図10】図9に示すヒット/ミス判定論理回路の一構
成例を示す回路図である。
【図11】図8に示す命令キャッシュの動作を示す図で
ある。
【図12】図8に示す命令キャッシュの別の動作を示す
図である。
【符号の説明】
10 マイクロプロセッサ 11 実行ユニット 12 外部RAM 13 命令キャッシュ 14 命令アドレスレジスタ 15、16 タグRAM 17、18 キャッシュRAM 19、20 比較器 21、21A ヒット/ミス判定論理回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 内海 祐之 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 (72)発明者 依田 斉 神奈川県川崎市中原区上小田中4丁目1番 1号 富士通株式会社内 Fターム(参考) 5B005 JJ00 KK00 LL01 MM01

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 命令キャッシュを有するデータ処理装置
    において、 複数のキャッシュメモリを有し、要求された命令を格納
    するキャッシュメモリをイネーブルとし、それ以外のキ
    ャッシュメモリをディスエーブルとするデータ処理装
    置。
  2. 【請求項2】 命令キャッシュを有するデータ処理装置
    において、 複数のキャッシュメモリと、 連続する命令のブロックの先頭にある命令を読出すとき
    に前記複数のキャッシュメモリをイネーブル状態とし、
    ブロック内のそれ以降の命令を読出すときは、先頭にあ
    る命令を読み出したキャッシュメモリのみイネーブル状
    態にし、他のキャッシュメモリはディスエーブル状態に
    制御する判定回路とを有するデータ処理装置。
  3. 【請求項3】 前記判定回路は、ブロックを指示するブ
    ロックアドレスを参照して前記複数のキャッシュメモリ
    のイネーブル状態及びディスエーブル状態を制御する請
    求項2記載のデータ処理装置。
  4. 【請求項4】 前記判定回路は、どのキャッシュメモリ
    がヒットしたかを示すデータを記憶する記憶手段を有
    し、この記憶手段のデータを用いて前記複数のキャッシ
    ュメモリのイネーブル状態及びディスエーブル状態を制
    御する請求項2記載のデータ処理装置。
  5. 【請求項5】 プロセッサとこれに接続される外部メモ
    リとを有し、 該プロセッサは命令キャッシュを具備し、該命令キャッ
    シュは複数のキャッシュメモリを有し、要求された命令
    を格納するキャッシュメモリをイネーブルとし、それ以
    外のキャッシュメモリをディスエーブルとするシステ
    ム。
  6. 【請求項6】 複数のキャッシュメモリを有する命令キ
    ャッシュの制御方法において、要求された命令を格納す
    るキャッシュメモリをイネーブルとし、それ以外のキャ
    ッシュメモリをディスエーブルとする制御方法。
JP2000391369A 2000-12-22 2000-12-22 データ処理装置 Pending JP2002196981A (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2000391369A JP2002196981A (ja) 2000-12-22 2000-12-22 データ処理装置
TW090131653A TW581966B (en) 2000-12-22 2001-12-20 Data processor
EP01310811A EP1217502B1 (en) 2000-12-22 2001-12-21 Data processor having instruction cache with low power consumption
DE60127520T DE60127520T2 (de) 2000-12-22 2001-12-21 Prozessor mit Befehlscache mit niedrigem Stromverbrauch
US10/023,905 US6760810B2 (en) 2000-12-22 2001-12-21 Data processor having instruction cache with low power consumption
CNB011457651A CN1155893C (zh) 2000-12-22 2001-12-21 具有低电耗指令高速缓冲存储器的数据处理器
KR1020010082560A KR100758185B1 (ko) 2000-12-22 2001-12-21 데이터 처리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000391369A JP2002196981A (ja) 2000-12-22 2000-12-22 データ処理装置

Publications (1)

Publication Number Publication Date
JP2002196981A true JP2002196981A (ja) 2002-07-12

Family

ID=18857521

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000391369A Pending JP2002196981A (ja) 2000-12-22 2000-12-22 データ処理装置

Country Status (7)

Country Link
US (1) US6760810B2 (ja)
EP (1) EP1217502B1 (ja)
JP (1) JP2002196981A (ja)
KR (1) KR100758185B1 (ja)
CN (1) CN1155893C (ja)
DE (1) DE60127520T2 (ja)
TW (1) TW581966B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008217353A (ja) * 2007-03-02 2008-09-18 Fujitsu Ltd データ処理装置、およびメモリのリードアクティブ制御方法。
US8161272B2 (en) 2008-07-03 2012-04-17 Renesas Electronics Corporation Memory control circuit and integrated circuit including branch instruction detection and operation mode control of a memory

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7330954B2 (en) * 2002-04-18 2008-02-12 Intel Corporation Storing information in one of at least two storage devices based on a storage parameter and an attribute of the storage devices
JP2004171177A (ja) * 2002-11-19 2004-06-17 Renesas Technology Corp キャッシュシステムおよびキャッシュメモリ制御装置
US7263621B2 (en) * 2004-11-15 2007-08-28 Via Technologies, Inc. System for reducing power consumption in a microprocessor having multiple instruction decoders that are coupled to selectors receiving their own output as feedback
TW200821831A (en) * 2005-12-21 2008-05-16 Nxp Bv Schedule based cache/memory power minimization technique
US8200999B2 (en) * 2008-08-11 2012-06-12 International Business Machines Corporation Selective power reduction of memory hardware
JP5793061B2 (ja) * 2011-11-02 2015-10-14 ルネサスエレクトロニクス株式会社 キャッシュメモリ装置、キャッシュ制御方法、およびマイクロプロセッサシステム
US8503264B1 (en) 2011-11-18 2013-08-06 Xilinx, Inc. Reducing power consumption in a segmented memory
US9396117B2 (en) * 2012-01-09 2016-07-19 Nvidia Corporation Instruction cache power reduction
US9547358B2 (en) 2012-04-27 2017-01-17 Nvidia Corporation Branch prediction power reduction
US9552032B2 (en) 2012-04-27 2017-01-24 Nvidia Corporation Branch prediction power reduction
US8743653B1 (en) 2012-06-20 2014-06-03 Xilinx, Inc. Reducing dynamic power consumption of a memory circuit
CN104050092B (zh) 2013-03-15 2018-05-01 上海芯豪微电子有限公司 一种数据缓存***及方法
WO2018100331A1 (en) * 2016-11-29 2018-06-07 Arm Limited Storage circuitry responsive to a tag-matching command
CN113138657A (zh) * 2020-01-17 2021-07-20 炬芯科技股份有限公司 一种降低cache访问功耗的方法和电路

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01154261A (ja) * 1987-12-11 1989-06-16 Toshiba Corp 情報処理装置
JPH0786847B2 (ja) * 1988-08-09 1995-09-20 松下電器産業株式会社 キャッシュメモリ
JPH04328656A (ja) * 1991-04-30 1992-11-17 Toshiba Corp キャッシュメモリ
US5913223A (en) * 1993-01-25 1999-06-15 Sheppard; Douglas Parks Low power set associative cache memory
JP3589485B2 (ja) 1994-06-07 2004-11-17 株式会社ルネサステクノロジ セットアソシアティブ方式のメモリ装置およびプロセッサ
JPH08263370A (ja) * 1995-03-27 1996-10-11 Toshiba Microelectron Corp キャッシュメモリシステム
US5724611A (en) * 1996-04-25 1998-03-03 Vlsi Technology, Inc. Automatic cache controller system and method therefor
US5911153A (en) * 1996-10-03 1999-06-08 International Business Machines Corporation Memory design which facilitates incremental fetch and store requests off applied base address requests
US5983310A (en) 1997-02-13 1999-11-09 Novell, Inc. Pin management of accelerator for interpretive environments
US5974505A (en) * 1997-09-02 1999-10-26 International Business Machines Corporation Method and system for reducing power consumption of a non-blocking cache within a data processing system
JPH11184752A (ja) 1997-12-19 1999-07-09 Hitachi Ltd データ処理装置及びデータ処理システム
US6138208A (en) * 1998-04-13 2000-10-24 International Business Machines Corporation Multiple level cache memory with overlapped L1 and L2 memory access
JP3439350B2 (ja) * 1998-10-02 2003-08-25 Necエレクトロニクス株式会社 キャッシュ・メモリ制御方法及びキャッシュ・メモリ制御装置
US6449694B1 (en) * 1999-07-27 2002-09-10 Intel Corporation Low power cache operation through the use of partial tag comparison
US6356990B1 (en) * 2000-02-02 2002-03-12 International Business Machines Corporation Set-associative cache memory having a built-in set prediction array
US6549986B1 (en) * 2000-06-20 2003-04-15 Conexant Systems, Inc. Low power instruction cache
US6535959B1 (en) * 2000-09-05 2003-03-18 Conexant Systems, Inc. Circuit and method for reducing power consumption in an instruction cache

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008217353A (ja) * 2007-03-02 2008-09-18 Fujitsu Ltd データ処理装置、およびメモリのリードアクティブ制御方法。
US8667259B2 (en) 2007-03-02 2014-03-04 Fujitsu Semiconductor Limited Data processor and memory read active control method
US8161272B2 (en) 2008-07-03 2012-04-17 Renesas Electronics Corporation Memory control circuit and integrated circuit including branch instruction detection and operation mode control of a memory
US8484445B2 (en) 2008-07-03 2013-07-09 Renesas Electronics Corporation Memory control circuit and integrated circuit including branch instruction and detection and operation mode control of a memory

Also Published As

Publication number Publication date
US20020080662A1 (en) 2002-06-27
KR100758185B1 (ko) 2007-09-13
CN1155893C (zh) 2004-06-30
DE60127520T2 (de) 2007-09-06
KR20020051874A (ko) 2002-06-29
US6760810B2 (en) 2004-07-06
EP1217502B1 (en) 2007-03-28
CN1367428A (zh) 2002-09-04
TW581966B (en) 2004-04-01
EP1217502A1 (en) 2002-06-26
DE60127520D1 (de) 2007-05-10

Similar Documents

Publication Publication Date Title
US5586283A (en) Method and apparatus for the reduction of tablewalk latencies in a translation look aside buffer
JP2002196981A (ja) データ処理装置
JPH11175391A (ja) フラッシュメモリにおける書込み/消去機能を拡張するための方法および装置
US6826670B2 (en) Accessing memory units in a data processing apparatus
JPH04242848A (ja) 走行モード別キャッシュメモリ制御方式
US7139919B2 (en) Information processing apparatus with central processing unit and main memory having power saving mode, and power saving controlling method
KR20010102441A (ko) 프로세서가 대기되는 동안 개시된 병렬 판독 및 직렬판독을 이용하는 세트 연관 캐시 관리 방법
US6748527B1 (en) Data processing system for performing software initialization
KR100298955B1 (ko) 데이타처리시스템
US5724548A (en) System including processor and cache memory and method of controlling the cache memory
JP2000207203A (ja) マイクロコントロ―ラ
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
JP2927160B2 (ja) レジスタ装置
JP2003058420A (ja) Nand型フラッシュメモリからのデータ読み出し方法
US6836828B2 (en) Instruction cache apparatus and method capable of increasing a instruction hit rate and improving instruction access efficiency
JPH06348592A (ja) ライトバッファ制御方式
JPH10247150A (ja) データ処理システム
JPH07152650A (ja) キャッシュ制御装置
JPH1049440A (ja) キャッシュメモリシステム
JPH1185613A (ja) キャッシュメモリ
JPH03175546A (ja) 命令キャッシュメモリ
JP2003271455A (ja) キャッシュメモリ制御装置およびキャッシュメモリシステム
JPH04304B2 (ja)
JPH1055308A (ja) キャッシュメモリ
JPH1055303A (ja) メモリシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050811

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080716

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080722

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20080728

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081118