JPH04242431A - 情報処理装置 - Google Patents
情報処理装置Info
- Publication number
- JPH04242431A JPH04242431A JP1579791A JP1579791A JPH04242431A JP H04242431 A JPH04242431 A JP H04242431A JP 1579791 A JP1579791 A JP 1579791A JP 1579791 A JP1579791 A JP 1579791A JP H04242431 A JPH04242431 A JP H04242431A
- Authority
- JP
- Japan
- Prior art keywords
- address
- branch
- circuit
- write
- update
- 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
Links
- 230000010365 information processing Effects 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【技術分野】本発明は情報処理装置に関し、特に分岐予
測を行う情報処理装置に関する。
測を行う情報処理装置に関する。
【0002】
【従来技術】従来、この種の分岐予測を行う情報処理装
置では、後続の命令を取出したときにキャッシュ回路の
ヒットコンパートメントによりリーストリセントリユー
ズド(以下LRU)メモリを更新していた。
置では、後続の命令を取出したときにキャッシュ回路の
ヒットコンパートメントによりリーストリセントリユー
ズド(以下LRU)メモリを更新していた。
【0003】このように分岐命令で予測した後続の命令
語を先行制御するため、LRUメモリ内に後続命令によ
り索引されたキャッシュ回路コンパートメントが一番最
初にアクセスされたという情報が書込まれる。そのため
に、予測に失敗して分岐命令の後続の命令語が予測した
命令語と異なる場合、予測した命令語の先行制御の結果
はキャンセルされる。しかし、予測した命令語をアクセ
スしたという履歴はLRUメモリに残るため、キャッシ
ュの使用効率が悪くなるという欠点がある。
語を先行制御するため、LRUメモリ内に後続命令によ
り索引されたキャッシュ回路コンパートメントが一番最
初にアクセスされたという情報が書込まれる。そのため
に、予測に失敗して分岐命令の後続の命令語が予測した
命令語と異なる場合、予測した命令語の先行制御の結果
はキャンセルされる。しかし、予測した命令語をアクセ
スしたという履歴はLRUメモリに残るため、キャッシ
ュの使用効率が悪くなるという欠点がある。
【0004】
【発明の目的】本発明の目的は、分岐予測失敗時におけ
るLRUメモリの効率的使用を図ることが可能な情報処
理装置を提供することである。
るLRUメモリの効率的使用を図ることが可能な情報処
理装置を提供することである。
【0005】
【発明の構成】本発明による情報処理装置は、2つ以上
のコンパートメントからなるキャッシュ記憶手段と、こ
のキャッシュ記憶手段への索引時内容を更新するリース
トリセントリユーズドメモリ手段と、分岐命令の分岐判
定結果を予測された前記分岐命令の後続命令の取出しの
際前記リーストリセントリユーズドメモリ手段の更新ア
ドレス及び更新以前の記憶内容を保持するバッファ手段
と、前記分岐命令の分岐判定結果の予測が失敗している
ことを示す信号により前記バッファ手段からの更新アド
レスで示される前記リーストリセントリユーズドメモリ
手段の記憶位置に前記更新以前の記憶内容を書戻す書戻
し制御手段とを含むことを特徴とする。
のコンパートメントからなるキャッシュ記憶手段と、こ
のキャッシュ記憶手段への索引時内容を更新するリース
トリセントリユーズドメモリ手段と、分岐命令の分岐判
定結果を予測された前記分岐命令の後続命令の取出しの
際前記リーストリセントリユーズドメモリ手段の更新ア
ドレス及び更新以前の記憶内容を保持するバッファ手段
と、前記分岐命令の分岐判定結果の予測が失敗している
ことを示す信号により前記バッファ手段からの更新アド
レスで示される前記リーストリセントリユーズドメモリ
手段の記憶位置に前記更新以前の記憶内容を書戻す書戻
し制御手段とを含むことを特徴とする。
【0006】
【実施例】次に、本発明の一実施例について図面を参照
して詳細に説明する。
して詳細に説明する。
【0007】図1を参照すると、本発明の一実施例にお
けるアドレスレジスタ1は、キャッシュ回路4に対する
読出アドレスを保持する。書戻し制御回路2はアドレス
バッファ12及びデータバッファ13に対する書戻しを
制御する。
けるアドレスレジスタ1は、キャッシュ回路4に対する
読出アドレスを保持する。書戻し制御回路2はアドレス
バッファ12及びデータバッファ13に対する書戻しを
制御する。
【0008】キャッシュ回路4は複数のコンパートメン
トを有する。デコーダ回路3はキャッシュ回路4でのヒ
ットコンパートメントによりLRU更新データを作成す
るものである。
トを有する。デコーダ回路3はキャッシュ回路4でのヒ
ットコンパートメントによりLRU更新データを作成す
るものである。
【0009】選択回路5は書戻し制御回路2からの選択
指示信号112 によりアドレスレジスタ1からのキャ
ッシュリードアドレス100 とアドレスバッファ12
からの書戻しアドレス114 とのどちらか一方を選択
する。選択回路6は、デコード回路3からのデコード出
力102 とデータバッファ13からの書戻しデー11
5 のどちらか一方を選択指示信号112により選択す
る。
指示信号112 によりアドレスレジスタ1からのキャ
ッシュリードアドレス100 とアドレスバッファ12
からの書戻しアドレス114 とのどちらか一方を選択
する。選択回路6は、デコード回路3からのデコード出
力102 とデータバッファ13からの書戻しデー11
5 のどちらか一方を選択指示信号112により選択す
る。
【0010】書込みアドレスレジスタ7は選択回路5で
選択された選択アドレス103 を格納する。書込みデ
ータアドレスレジスタ8は選択回路6で選択されたで選
択データ104 を格納する。LRUメモリ10は、書
込みアドレスレジスタ7からのLRU更新アドレス10
5 で示される記憶装置に、キャッシュ回路4のヒット
コンパートメントの履歴を示すLRU更新データ106
を記憶する。
選択された選択アドレス103 を格納する。書込みデ
ータアドレスレジスタ8は選択回路6で選択されたで選
択データ104 を格納する。LRUメモリ10は、書
込みアドレスレジスタ7からのLRU更新アドレス10
5 で示される記憶装置に、キャッシュ回路4のヒット
コンパートメントの履歴を示すLRU更新データ106
を記憶する。
【0011】アドレスバッファ12は、書込みアドレス
レジスタ7からのLRU更新アドレスを、書戻し制御回
路2からのバッファアドレス113 の示す位置に格納
する。データバッファ13は、LRUメモリ10からの
LRU更新前データ107 を、回路2からのバッファ
アドレス113 の示す位置に格納する。
レジスタ7からのLRU更新アドレスを、書戻し制御回
路2からのバッファアドレス113 の示す位置に格納
する。データバッファ13は、LRUメモリ10からの
LRU更新前データ107 を、回路2からのバッファ
アドレス113 の示す位置に格納する。
【0012】この他、本発明の一実施例は、命令の先行
制御を行う先行制御回路9、命令の演算処理を実行する
演算回路11、この演算回路11での演算結果により分
岐予測を行う分岐予測判定回路14、及び分岐判定を予
測する分岐予測回路15を含む。
制御を行う先行制御回路9、命令の演算処理を実行する
演算回路11、この演算回路11での演算結果により分
岐予測を行う分岐予測判定回路14、及び分岐判定を予
測する分岐予測回路15を含む。
【0013】次に本発明の一実施例の動作について図面
を参照して詳細に説明する。図1を参照すると、分岐命
令がキャッシュ回路4から取出され先行制御回路9で先
行制御が行われる。これとともにキャッシュ回路4から
のキャッシュリードデータ108 により、分岐予測回
路15は分岐を予測し、予測アドレス116 をアドレ
スレジスタ1に格納する。アドレスレジスタ1からのア
ドレス100 、すなわち分岐予測アドレスにより、予
測された後続の命令108 がキャッシュ回路4から取
出され、先行制御回路9に与えられる。
を参照して詳細に説明する。図1を参照すると、分岐命
令がキャッシュ回路4から取出され先行制御回路9で先
行制御が行われる。これとともにキャッシュ回路4から
のキャッシュリードデータ108 により、分岐予測回
路15は分岐を予測し、予測アドレス116 をアドレ
スレジスタ1に格納する。アドレスレジスタ1からのア
ドレス100 、すなわち分岐予測アドレスにより、予
測された後続の命令108 がキャッシュ回路4から取
出され、先行制御回路9に与えられる。
【0014】分岐予測での後続命令取出し動作に伴うL
RUメモリ更新時にLRUメモリ10の更新アドレス1
05 及び更新以前のLRUメモリ10のデータ107
がアドレスバッファ12及びデータバッファ13に書
込まれる。この分岐命令は先行制御回路9からの先行演
算結果109 で演算回路11において演算処理が実行
される。
RUメモリ更新時にLRUメモリ10の更新アドレス1
05 及び更新以前のLRUメモリ10のデータ107
がアドレスバッファ12及びデータバッファ13に書
込まれる。この分岐命令は先行制御回路9からの先行演
算結果109 で演算回路11において演算処理が実行
される。
【0015】分岐判定回路14は、演算結果110 に
基づいて予測した後続命令の予測が正しいか否かを判定
する。分岐判定回路14からの分岐判定結果111 が
分岐予測の失敗を示す場合、この分岐判定結果111
に応答して、書戻し制御回路2は、選択回路5で書戻し
アドレス114 を選択するとともに、選択回路6で書
戻しデータ115 を選択するよう選択指示信号112
を発生する。
基づいて予測した後続命令の予測が正しいか否かを判定
する。分岐判定回路14からの分岐判定結果111 が
分岐予測の失敗を示す場合、この分岐判定結果111
に応答して、書戻し制御回路2は、選択回路5で書戻し
アドレス114 を選択するとともに、選択回路6で書
戻しデータ115 を選択するよう選択指示信号112
を発生する。
【0016】この信号112 により選択回路5で選択
されたアドレスはLRUメモリ10に与えられる。この
アドレスで指示れたLRUメモリ10の格納位置に選択
回路6で選択された書戻しデータが格納される。
されたアドレスはLRUメモリ10に与えられる。この
アドレスで指示れたLRUメモリ10の格納位置に選択
回路6で選択された書戻しデータが格納される。
【0017】また、分岐判定回路14からの分岐判定結
果111 が分岐予測の成功を示す場合、書戻し制御回
路2はアドレスバッファ12及びデータバッファ13に
与えられるバッファアドレス113 をクリアする。
果111 が分岐予測の成功を示す場合、書戻し制御回
路2はアドレスバッファ12及びデータバッファ13に
与えられるバッファアドレス113 をクリアする。
【0018】
【発明の効果】以上説明したように本発明の情報処理装
置は、分岐予測失敗の結果でLRUメモリの内容を書戻
すことによりアクセス結果を無効にした次回のキャッシ
ュのブロック吐出し時のコンパートメント利用の効率化
が実現できる。
置は、分岐予測失敗の結果でLRUメモリの内容を書戻
すことによりアクセス結果を無効にした次回のキャッシ
ュのブロック吐出し時のコンパートメント利用の効率化
が実現できる。
【図1】本発明の一実施例の構成を示す図である。
1 アドレスレジスタ
2 書戻し制御回路
3 デコード回路
4 キャッシュ回路
5 アドレス選択回路
6 データ選択回路
7 更新アドレスレジスタ
8 更新データレジスタ
9 先行制御回路
10 LRUメモリ
11 演算回路
12 アドレスバッファ
13 データバッファ
14 分岐判定回路
15 分岐予測回路
Claims (1)
- 【請求項1】 2つ以上のコンパートメントからなる
キャッシュ記憶手段と、このキャッシュ記憶手段への索
引時内容を更新するリーストリセントリユーズドメモリ
手段と、分岐命令の分岐判定結果を予測された前記分岐
命令の後続命令の取出しの際前記リーストリセントリユ
ーズドメモリ手段の更新アドレス及び更新以前の記憶内
容を保持するバッファ手段と、前記分岐命令の分岐判定
結果の予測が失敗していることを示す信号により前記バ
ッファ手段からの更新アドレスで示される前記リースト
リセントリユーズドメモリ手段の記憶位置に前記更新以
前の記憶内容を書戻す書戻し制御手段とを含むことを特
徴とする情報処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1579791A JPH04242431A (ja) | 1991-01-16 | 1991-01-16 | 情報処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1579791A JPH04242431A (ja) | 1991-01-16 | 1991-01-16 | 情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04242431A true JPH04242431A (ja) | 1992-08-31 |
Family
ID=11898834
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1579791A Pending JPH04242431A (ja) | 1991-01-16 | 1991-01-16 | 情報処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04242431A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6938150B2 (en) | 2001-01-10 | 2005-08-30 | Nec Corporation | Processor for managing latest speculation states and efficiently reusing reorder buffer entries |
-
1991
- 1991-01-16 JP JP1579791A patent/JPH04242431A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6938150B2 (en) | 2001-01-10 | 2005-08-30 | Nec Corporation | Processor for managing latest speculation states and efficiently reusing reorder buffer entries |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6240488B1 (en) | Prefetching hints | |
US4980823A (en) | Sequential prefetching with deconfirmation | |
US5737750A (en) | Partitioned single array cache memory having first and second storage regions for storing non-branch and branch instructions | |
JP3587591B2 (ja) | キャッシュ・ミスを制御する方法およびその計算機システム | |
EP2275939B1 (en) | Processor and address translating method | |
US7278013B2 (en) | Apparatus having a cache and a loop buffer | |
JP3718302B2 (ja) | 命令取り出し方法および装置 | |
US6356990B1 (en) | Set-associative cache memory having a built-in set prediction array | |
KR100335672B1 (ko) | 메모리페이지크로싱예측주석을사용하는실제주소지정데이타기억구조로부터의빠른데이타검색 | |
US6321328B1 (en) | Processor having data buffer for speculative loads | |
JPH07295886A (ja) | 階層メモリ、階層メモリを有するコンピュータ・システムおよび階層メモリ管理方法 | |
JP2575598B2 (ja) | マルチプロセッサ・コンピュータ・システムのシステム・メモリの並行性を増大する方法およびシステム | |
US5893146A (en) | Cache structure having a reduced tag comparison to enable data transfer from said cache | |
JP2006018841A (ja) | さまざまなメモリラインサイズに適応的に対応可能なキャッシュメモリシステムおよび方法 | |
JP3988485B2 (ja) | キャッシュ回路、情報処理装置及び電子機器 | |
US6745313B2 (en) | Absolute address bits kept in branch history table | |
JPH04242431A (ja) | 情報処理装置 | |
JPH0477344B2 (ja) | ||
KR960015231A (ko) | 향상된 어드레스 지정 방법 및 시스템 | |
GB2037466A (en) | Computer with cache memory | |
JPH01177145A (ja) | 情報処理装置 | |
JP2864548B2 (ja) | 命令キャッシュ装置 | |
JP2001154845A (ja) | キャッシュミスした後のメモリバスアクセス制御方式 | |
JPH04239324A (ja) | 分岐先予測方式 | |
JPH05120139A (ja) | キヤツシユメモリ装置 |