JP5040121B2 - 情報処理装置、キャッシュ制御方法及びプログラム - Google Patents
情報処理装置、キャッシュ制御方法及びプログラム Download PDFInfo
- Publication number
- JP5040121B2 JP5040121B2 JP2006048564A JP2006048564A JP5040121B2 JP 5040121 B2 JP5040121 B2 JP 5040121B2 JP 2006048564 A JP2006048564 A JP 2006048564A JP 2006048564 A JP2006048564 A JP 2006048564A JP 5040121 B2 JP5040121 B2 JP 5040121B2
- Authority
- JP
- Japan
- Prior art keywords
- reply
- load instruction
- refill
- data
- cache
- 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.)
- Expired - Fee Related
Links
Images
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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0855—Overlapped cache accessing, e.g. pipeline
- G06F12/0859—Overlapped cache accessing, e.g. pipeline with reload from main memory
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)
Description
図1を参照すると、第1の実施形態における情報処理装置1は、キャッシュ制御部10、キャッシュ部20、リプライ部30、メインメモリ40及び命令受信部50を含む。
ヒット判定部100、ミス判定部102及びリフィル判定部104は、それぞれ信号線1001を介して、ロード命令が要求するデータのアドレスを、命令受信部50から受け取る。その上で、ヒット判定部100、ミス判定部102及びリフィル判定部104は、複数のエントリ21のうち、アドレス格納部203にロード命令が要求するデータのアドレスと同一のアドレスを格納しているエントリ21の有無を判断する。
リフィルカウンタ202が保持する値が0(ゼロ)である場合、リプライ多重化部302は、信号線1015を介して、メインメモリ40からのリプライデータに付加されているエントリ番号のエントリ21にアクセスし、メインメモリ40から取得したリプライデータを、データ格納部204へ書き込む。データ格納部204へリプライデータを書き込み中は、命令受信部50は、当該エントリ21への後続ロード命令のアクセスを待機させる。また、リプライ多重化部302は、有効フラグ200をONにし、リフィルフラグ201をOFFにする。その後、リプライ多重化部302は、信号線1006を介してメインメモリ40から受け取ったリプライデータを、リプライ格納部300へ送信する。なお、リプライ多重化部302は、メインメモリ40から受け取ったリプライデータを送信する際、かかるデータに付加されているエントリ番号を取り除く。
ヒットリプライ格納部3001は、信号線1009を介して受信した、キャッシュヒットの場合のリプライデータを格納する。
また、ミス制御部103は、当該エントリ21のリフィルフラグ201をONにする(S6)。
リフィル制御部105は、リフィル実行中のエントリ21にアクセスし、有効フラグ200をOFFにする(S23)。
このように本発明は、先行のロード命令のリプライデータを受信したときに、当該先行ロード命令と同一アドレスに対する後続のロード命令に対して、先行ロード命令に対するリプライデータを多重化して返還する構成となっている。このような構成を採用することにより、後続のロード命令のレイテンシを短縮することができるという効果が得られる。また、後続ロード命令において、メインメモリ40に対してリプライデータの要求を出さないので、メモリインターフェースの占有率を低減できるという効果も得られる。
次に図6を参照して、本発明の第2の実施形態について説明する。
本実施形態の構成を採用することにより、第1の実施形態におけるリフィルカウンタ202を、エントリ21に設ける必要がなくなり、かつ、リプライ多重化部302によるリプライデータの多重化が可能となる。よって、キャッシュ部20のHW量を削減しつつ、後続のロード命令レイテンシを低減することができるという効果が得られる。
10 キャッシュ制御部
20 キャッシュ部
21 エントリ
30 リプライ部
40 メインメモリ
50 命令受信部
100 ヒット判定部
101 ヒット制御部
102 ミス判定部
103 ミス制御部
104 リフィル判定部
105 リフィル制御部
200 有効フラグ
201 リフィルフラグ
202 リフィルカウンタ
203 アドレス格納部
204 データ格納部
2041 リフィルカウンタ領域
2042 リプライ識別情報領域
300 リプライ格納部
301 リプライ制御部
302 リプライ多重化部
3001 ヒットリプライ格納部
3002 多重化リプライ格納部
3003 メモリリプライ格納部
3010 リプライ情報管理部
3011 リプライ発行部
3012 リプライ種別判断部
3013 リプライ種別
3014 リプライ識別情報
Claims (16)
- メインメモリが保持するデータを記憶する1以上のキャッシュエントリと、
前記キャッシュエントリがリフィル実行中か否かを判定するキャッシュ制御部と、
先行ロード命令と同一アドレスのリプライデータを要求する後続ロード命令がアクセスした前記キャッシュエントリが、前記キャッシュ制御部によりリフィル実行中と判定された場合の、前記後続ロード命令を識別するためのリプライ識別情報を前記キャッシュエントリ毎に保持する手段と、
前記先行ロード命令に対するリプライデータを前記保持されたリプライ識別情報で識別される前記後続ロード命令に対しても返還するリプライ部と、を有し、
前記キャッシュエントリは、前記メインメモリが保持するデータの一部を格納するデータ格納部を有し、
前記キャッシュ制御部は、前記キャッシュエントリがリフィル実行中の場合、当該キャッシュエントリにアクセスした前記後続ロード命令を識別するための前記リプライ識別情報を前記データ格納部に書き込む
ことを特徴とする情報処理装置。 - 前記キャッシュエントリは、当該キャッシュエントリがリフィルを実行中であることを示すリフィルフラグを有し、 前記キャッシュ制御部は、当該リフィルフラグに基づいて前記キャッシュエントリがリフィル実行中であることを判定することを特徴とする請求項1記載の情報処理装置。
- 前記キャッシュ制御部は、前記先行ロード命令がキャッシュミスし、前記キャッシュエントリのリフィルを実行したときに、前記リフィルフラグをオンにすることを特徴とする請求項2記載の情報処理装置。
- 前記リプライ部は、前記先行ロード命令に対するリプライデータを多重化し、前記後続ロード命令に対して多重化したリプライデータを返還するリプライ多重化部を有することを特徴とする請求項1乃至3のいずれか1項記載の情報処理装置。
- 前記キャッシュエントリは、リフィル実行中の当該キャッシュエントリにアクセスした前
記後続ロード命令の数をカウントするリフィルカウンタを更に有し、 前記リプライ多重
化部は、前記リフィルカウンタが保持する数だけ、前記先行ロード命令に対するリプライ
データを多重化することを特徴とする請求項4記載の情報処理装置。 - 前記リプライ多重化部は、前記先行ロード命令に対するリプライデータを受信したときに、前記保持されたリプライ識別情報を取得し、多重化したリプライデータに当該リプライ識別情報を付加することを特徴とする請求項4又は5記載の情報処理装置。
- ロード命令がアクセスする1以上のキャッシュエントリについて、当該キャッシュエントリがリフィル実行中であることを判定するリフィル判定ステップと、
先行ロード命令と同一アドレスのリプライデータを要求する後続ロード命令がアクセスした前記キャッシュエントリが、リフィル実行中と判定された場合の、前記後続ロード命令を識別するためのリプライ識別情報を前記キャッシュエントリ毎に保持するステップと、
前記先行ロード命令に対するリプライデータを前記保持されたリプライ識別情報で識別される前記後続ロード命令に対しても返還するリプライステップと、を有し、
前記リフィル判定ステップは、前記キャッシュエントリがリフィル実行中と判定された場合、メインメモリが保持するデータを記憶する前記キャッシュエントリのデータ格納部に、当該キャッシュエントリにアクセスした前記後続ロード命令を識別するための前記リプライ識別情報を書込むステップを含む
ことを特徴とするキャッシュ制御方法。 - 前記リフィル判定ステップは、 前記キャッシュエントリが有するキャッシュエントリがリフィル実行中であることを示すリフィルフラグに基づいて、リフィル実行中であることを判定するステップであることを特徴とする請求項7記載のキャッシュ制御方法。
- 前記リプライステップは、 前記先行ロード命令に対するリプライデータを多重化し、前記ロード命令に対して多重化したリプライを返すステップであることを特徴とする請求項7又は8記載のキャッシュ制御方法。
- 前記リプライステップは、 リフィル実行中のキャッシュエントリにアクセスしたロード命令の数をカウントするリフィルカウンタが保持する数だけ、前記先行ロード命令に対するリプライデータを多重化するステップを含むことを特徴とする請求項9記載のキャッシュ制御方法。
- 前記リプライステップは、前記先行ロード命令に対するリプライデータを受信したときに、前記保持されたリプライ識別情報を取得し、多重化したリプライデータに当該リプライ識別情報を付加するステップを含むことを特徴とする請求項9又は10記載のキャッシュ制御方法。
- コンピュータに、
ロード命令がアクセスする1以上のキャッシュエントリについて、当該キャッシュエントリがリフィル実行中であることを判定するリフィル判定処理と、
先行ロード命令と同一アドレスのリプライデータを要求する後続ロード命令がアクセスした前記キャッシュエントリが、リフィル実行中と判定された場合の、前記後続ロード命令を識別するためのリプライ識別情報を前記キャッシュエントリ毎に保持する処理と、
前記先行ロード命令に対するリプライデータを前記保持されたリプライ識別情報で識別される前記後続ロード命令に対しても返還するリプライ処理と、を実行させ、
前記リフィル判定処理は、前記キャッシュエントリがリフィル実行中と判定された場合、メインメモリが保持するデータを記憶する前記キャッシュエントリのデータ格納部に、当該キャッシュエントリにアクセスした前記後続ロード命令を識別するための前記リプライ識別情報を書込む処理を含む
ことを特徴とするプログラム。 - 前記リフィル判定処理は、前記キャッシュエントリが有するキャッシュエントリがリフィル実行中であることを示すリフィルフラグに基づいて、リフィル実行中であることを判定する処理であることを特徴とする請求項12 記載のプログラム。
- 前記リプライ処理は、前記先行ロード命令に対するリプライデータを多重化し、前記ロード命令に対して多重化したリプライを返す処理であることを特徴とする請求項12又は13記載のプログラム。
- 前記リプライ処理は、リフィル実行中のキャッシュエントリにアクセスした前記先行ロード命令に後続するロード命令の数をカウントするリフィルカウンタが保持する数だけ、前記先行ロード命令に対するリプライデータを多重化する処理を含むことを特徴とする請求項14記載のプログラム。
- 前記リプライ処理は、前記先行ロード命令に対するリプライデータを受信したときに、前記保持されたリプライ識別情報を取得し、多重化したリプライデータに当該リプライ識別情報を付加する処理を含むことを特徴とする請求項14又は15記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006048564A JP5040121B2 (ja) | 2006-02-24 | 2006-02-24 | 情報処理装置、キャッシュ制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006048564A JP5040121B2 (ja) | 2006-02-24 | 2006-02-24 | 情報処理装置、キャッシュ制御方法及びプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007226641A JP2007226641A (ja) | 2007-09-06 |
JP2007226641A5 JP2007226641A5 (ja) | 2007-10-18 |
JP5040121B2 true JP5040121B2 (ja) | 2012-10-03 |
Family
ID=38548391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006048564A Expired - Fee Related JP5040121B2 (ja) | 2006-02-24 | 2006-02-24 | 情報処理装置、キャッシュ制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5040121B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4867451B2 (ja) * | 2006-04-19 | 2012-02-01 | 日本電気株式会社 | キャッシュメモリ装置及びそれに用いるキャッシュメモリ制御方法並びにそのプログラム |
JP5317006B2 (ja) * | 2008-03-05 | 2013-10-16 | 日本電気株式会社 | キャッシュ制御装置及びキャッシュ制御方法 |
JP2010033480A (ja) * | 2008-07-31 | 2010-02-12 | Sony Corp | キャッシュメモリおよびキャッシュメモリ制御装置 |
JP5593647B2 (ja) * | 2009-07-30 | 2014-09-24 | 日本電気株式会社 | 情報処理装置、ロード命令の遅延判定方法、ロード命令の遅延判定プログラム |
JP5609092B2 (ja) * | 2009-12-09 | 2014-10-22 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
JP5691448B2 (ja) * | 2010-11-30 | 2015-04-01 | 富士ゼロックス株式会社 | 印刷文書処理システム、キャッシュ装置、データ処理装置及びプログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54151331A (en) * | 1978-05-19 | 1979-11-28 | Nec Corp | Data processor |
JPH0775007B2 (ja) * | 1988-06-07 | 1995-08-09 | 富士通株式会社 | データアクセス装置 |
JPH09218823A (ja) * | 1996-02-08 | 1997-08-19 | Hitachi Ltd | キャッシュメモリ制御装置 |
US6021467A (en) * | 1996-09-12 | 2000-02-01 | International Business Machines Corporation | Apparatus and method for processing multiple cache misses to a single cache line |
JP3799451B2 (ja) * | 1997-03-05 | 2006-07-19 | 学校法人東海大学 | 電子計算機システム |
JPH11249959A (ja) * | 1998-03-02 | 1999-09-17 | Matsushita Electric Ind Co Ltd | キャッシュメモリ制御方法および装置 |
US6336168B1 (en) * | 1999-02-26 | 2002-01-01 | International Business Machines Corporation | System and method for merging multiple outstanding load miss instructions |
JP2001051899A (ja) * | 1999-08-12 | 2001-02-23 | Hitachi Ltd | キャッシュメモリ装置 |
JP3770091B2 (ja) * | 2001-02-09 | 2006-04-26 | 日本電気株式会社 | キャッシュ制御方法及びキャッシュ制御回路 |
-
2006
- 2006-02-24 JP JP2006048564A patent/JP5040121B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007226641A (ja) | 2007-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105159844B (zh) | 数据处理装置中的动态缓存分配策略调适 | |
US8145844B2 (en) | Memory controller with write data cache and read data cache | |
JP4687729B2 (ja) | キャッシュメモリ及びベクトル処理装置並びにベクトルデータ整列方法 | |
KR100524575B1 (ko) | 데이타 처리시스템에서 복수개의 메모리 억세스 리퀘스트신호를리오더링하는 방법 | |
US8745334B2 (en) | Sectored cache replacement algorithm for reducing memory writebacks | |
KR100496116B1 (ko) | 멀티프로세서 장치 | |
US20110173400A1 (en) | Buffer memory device, memory system, and data transfer method | |
JP5040121B2 (ja) | 情報処理装置、キャッシュ制御方法及びプログラム | |
JP5063104B2 (ja) | エントリの時間経過によるキャッシュ・エントリの所有権喪失 | |
US10079916B2 (en) | Register files for I/O packet compression | |
EP2530598B1 (en) | Data supply device, cache device, data supply method, and cache method | |
US8924652B2 (en) | Simultaneous eviction and cleaning operations in a cache | |
US20110167223A1 (en) | Buffer memory device, memory system, and data reading method | |
US10042773B2 (en) | Advance cache allocator | |
US20110238925A1 (en) | Cache controller and method of operation | |
JP2010146084A (ja) | キャッシュメモリ制御部を備えるデータ処理装置 | |
US20090262739A1 (en) | Network device of processing packets efficiently and method thereof | |
JP2015191604A (ja) | 制御装置、制御プログラム、および制御方法 | |
JP6319473B1 (ja) | 情報処理装置 | |
JP4924970B2 (ja) | データ処理システム | |
US9116814B1 (en) | Use of cache to reduce memory bandwidth pressure with processing pipeline | |
JP2004326175A (ja) | プロセッサ、キャッシュシステム及びキャッシュメモリ | |
KR100900012B1 (ko) | 정보 처리 시스템, 정보 처리 기판, 및 캐시 태그 및스누프 태그의 갱신 방법 | |
EP3332329B1 (en) | Device and method for prefetching content to a cache memory | |
JP4030951B2 (ja) | データ二重化装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070816 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20080613 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090116 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20090512 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20110705 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111031 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111213 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120206 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120313 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120508 |
|
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: 20120612 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120625 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5040121 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150720 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |