JP2008123333A - 半導体集積回路装置 - Google Patents
半導体集積回路装置 Download PDFInfo
- Publication number
- JP2008123333A JP2008123333A JP2006307700A JP2006307700A JP2008123333A JP 2008123333 A JP2008123333 A JP 2008123333A JP 2006307700 A JP2006307700 A JP 2006307700A JP 2006307700 A JP2006307700 A JP 2006307700A JP 2008123333 A JP2008123333 A JP 2008123333A
- Authority
- JP
- Japan
- Prior art keywords
- cache
- snoop
- integrated circuit
- controller
- semiconductor integrated
- 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
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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
- G06F12/0833—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
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
【解決手段】メモリ割り付けキャッシュアクセスは、CPU2aからアクセス要求をキャッシュコントローラが受理した後、アドレスデコーダADで検知される。制御部2d1 は、アクセス要求に従ってキャッシュをアクセスする。読み出されたキャッシュステータスと更新データとを比較し、有効ビットが有効から無効に変化した場合は登録内容をクリアしたと判断し、「複製アドレスアレイ内容をクリア」するスヌープバス要求を発行する。その後、スヌープコントローラ3は、複製タグを引き、スヌープバス要求に従って複製タグを更新する。更新が完了した後、レスポンスを返し、アドレスアレイの更新を行う。これにより、キャッシュと複製アドレスアレイ(複製タグ)の登録内容が同期化される。
【選択図】図5
Description
図1は、本発明の実施の形態1による半導体集積回路装置のブロック図、図2は、図1の半導体集積回路装置で用いられるオペランドキャッシュの構成例を示す説明図、図3は、図1の半導体集積回路装置で用いられる複製アドレスアレイの構成例を示す説明図、図4は、図1の半導体集積回路装置による通常のスヌープ処理の一例を示す説明図、図5は、図1の半導体集積回路装置によるスヌープ処理において、メモリ割り付けキャッシュアクセス結果と複製アドレスアレイの同期を行う際の一例を示す説明図、図6は、図1の半導体集積回路装置に用いられるオペランドキャッシュ/アドレスアレイの構成を示す説明図である。
図7は、本発明の実施の形態2によるコヒーレンシ有効/無効選択情報が追加されたアドレス変換テーブルの構成例を示す説明図である。
図9は、本発明の実施の形態3による制御レジスタにおけるコヒーレンシプロトコル混在ビットの説明図である。
図10は、本発明の実施の形態4によるプロセスマイグレーションを考慮したキャッシュ操作命令の処理例を示す説明図である。
図11は、本発明の実施の形態5によるメモリ割り付けアクセスを検知する複製アドレスアレイの構成例を示す説明図である。
2 CPUコア
2a CPU
2b 命令キャッシュ
2c データキャッシュ
2d キャッシュコントローラ
2e バスインタフェースコントローラ
3 スヌープコントローラ
40 〜4n ハードウェアIP
5 DMAコントローラ
6 チップ外部高速転送インタフェース
7 外部メモリインタフェース
8 周辺モジュールバスコントローラ
9 タイマ
10 割り込みコントローラ
11 クロックパルス生成器
12 汎用I/Oポート
B1 スヌープバス
B2 オンチップシステムバス
B3 周辺モジュールバス
CCR 制御レジスタ
AD アドレスデコーダ
Claims (10)
- アクセス要求を受け取り、所望のデータをアクセスするバスインタフェースコントローラと、
中央処理装置と、前記中央処理装置からの命令、データアクセス要求を受け取り、所望のデータをアクセスするためにキャッシュ操作や前記バスインタフェースコントローラにアクセス要求を行うキャッシュコントローラとを備えた複数のCPUコアと、
キャッシュミスが発生した際に前記キャッシュコントローラから発行されるスヌープ要求を受け取り、コヒーレンシ制御を行うスヌープコントローラとを有した半導体集積回路装置であって、
前記キャッシュコントローラは、
前記中央処理装置が、メモリ割り付けキャッシュアクセスによって登録内容をクリアした際に、各中央処理装置のキャッシュ登録情報を格納する複製アドレスアレイの内容をクリアする要求を発行し、
前記スヌープコントローラは、
前記キャッシュコントローラから発行されたスヌープバス要求を受理すると、複製タグを参照し、スヌープバス要求に従って複製タグを更新した後、複製アドレスアレイを更新することを特徴とする半導体集積回路装置。 - 請求項1記載の半導体集積回路装置において、
前記スヌープコントローラは、
キャッシュクリアを行うキャッシュ操作命令の実行時に複製アドレスアレイをクリアすることを特徴とする半導体集積回路装置。 - 請求項1または2記載の半導体集積回路装置において、
前記キャッシュコントローラは、
仮想アドレスを物理アドレスに変換するアドレス変換テーブルを備え、
前記アドレス変換テーブルは、
コヒーレンシが有効か無効かを示す選択情報を有し、
前記キャッシュコントローラは、
前記アドレス変換テーブルの選択情報を参照し、コヒーレンシ有効となっている際に前記スヌープコントローラにスヌープバス処理を発生させ、コヒーレンシ制御を行うことを特徴とする半導体集積回路装置。 - 請求項1または2記載の半導体集積回路装置において、
前記キャッシュコントローラは、
コヒーレンシが有効か無効かを示す選択情報を格納するレジスタを有し、
アドレスデコード時に前記レジスタの選択情報を参照し、コヒーレンシ有効となっている際に前記スヌープコントローラにスヌープバス処理を発生させ、コヒーレンシ制御を行うことを特徴とする半導体集積回路装置。 - 請求項1〜4のいずれか1項に記載の半導体集積回路装置において、
前記キャッシュコントローラは、
ライトスルーとコピーバックとを混在して使用するか否かを設定する設定レジスタを備え、
スヌープバス要求が必要な際に、前記設定レジスタを参照してバスコマンドを発行することを特徴とする半導体集積回路装置。 - 請求項5記載の半導体集積回路装置において、
前記キャッシュコントローラは、
ライトスルー設定時にキャッシュライトミスを起こした際に前記設定レジスタが混在に設定されている場合、前記中央処理装置にダーティデータが存在することを考慮したスヌープ処理とライト処理を行うコマンドを発行し、
ライトスルー設定時にキャッシュライトミスを起こした際に前記設定レジスタが非混在に設定されている場合、前記中央処理装置がダーティデータを所持していないことを考慮したスヌープ処理とライト処理を行うコマンドを発行することを特徴とする半導体集積回路装置。 - 請求項5または6記載の半導体集積回路装置において、
前記キャッシュコントローラは、
ライトスルー設定時にキャッシュリードミスを起こした際に前記設定レジスタが混在に設定されている場合、前記中央処理装置にダーティデータが存在することを考慮したコマンドを発行し、前記中央処理装置のスヌープ要求完了まで待機し、
ライトスルー設定時にキャッシュリードミスを起こした際に前記設定レジスタが非混在に設定されている場合、前記中央処理装置にダーティデータが存在しないことを考慮したコマンドを発行し、要求が受け付けられたと同時にフィル要求を出力することを発行することを特徴とする半導体集積回路装置。 - 請求項1〜7のいずれか1項に記載の半導体集積回路装置において、
前記キャッシュコントローラは、
前記中央処理装置からキャッシュ操作命令を実行する要求を受け取ると、任意のアドレスのデータを有する中央処理装置にキャッシュ操作を行うことを要求するスヌープバス要求を発生させることを特徴とする半導体集積回路装置。 - 請求項1〜7のいずれか1項に記載の半導体集積回路装置において、
前記キャッシュコントローラは、
前記中央処理装置からキャッシュ操作命令を実行する要求を受け取ると、任意のアドレス範囲のデータを有する中央処理装置にキャッシュ操作を行うことを要求するスヌープバス要求を発生させることを特徴とする半導体集積回路装置。 - 請求項1〜9のいずれか1項に記載の半導体集積回路装置において、
前記スヌープコントローラは、
任意の1つの前記中央処理装置から、すべての前記中央処理装置の複製アドレスアレイを参照するアドレスマップ、および1つの前記中央処理装置の複製アドレスアレイを参照するアドレスマップを有し、
前記キャッシュコントローラは、
前記アドレスマップを参照可能であり、
前記スヌープコントローラは、
アクセス要求が発生した際にアドレスデコードによってすべての前記中央処理装置の複製アドレスアレイを参照するアドレスマップであるか、または1つの前記中央処理装置の複製アドレスアレイを参照するアドレスマップであるかを判断することを特徴とする半導体集積回路装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006307700A JP4965974B2 (ja) | 2006-11-14 | 2006-11-14 | 半導体集積回路装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006307700A JP4965974B2 (ja) | 2006-11-14 | 2006-11-14 | 半導体集積回路装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008123333A true JP2008123333A (ja) | 2008-05-29 |
JP2008123333A5 JP2008123333A5 (ja) | 2009-12-24 |
JP4965974B2 JP4965974B2 (ja) | 2012-07-04 |
Family
ID=39508013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006307700A Active JP4965974B2 (ja) | 2006-11-14 | 2006-11-14 | 半導体集積回路装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4965974B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011148482A1 (ja) | 2010-05-27 | 2011-12-01 | 富士通株式会社 | 情報処理システム及びシステムコントローラ |
JP5360299B2 (ja) * | 2010-06-14 | 2013-12-04 | 富士通株式会社 | マルチコアプロセッサシステム、キャッシュコヒーレンシ制御方法、およびキャッシュコヒーレンシ制御プログラム |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04123151A (ja) * | 1990-09-13 | 1992-04-23 | Fujitsu Ltd | システムバス |
JPH10254774A (ja) * | 1997-03-11 | 1998-09-25 | Hitachi Ltd | マルチプロセッサシステムおよび複製タグの制御方法 |
JP2001184263A (ja) * | 1999-12-17 | 2001-07-06 | Hewlett Packard Co <Hp> | 旧キャッシュラインを無効化および除去する装置 |
JP2006072509A (ja) * | 2004-08-31 | 2006-03-16 | Fujitsu Ltd | 情報処理装置及びローカルスヌープ制御方法 |
JP2006185284A (ja) * | 2004-12-28 | 2006-07-13 | Renesas Technology Corp | データ処理装置 |
JP2007183702A (ja) * | 2006-01-04 | 2007-07-19 | Hitachi Ltd | キャッシュ一貫性制御方法およびチップセットおよびマルチプロセッサシステム |
WO2007094046A1 (ja) * | 2006-02-14 | 2007-08-23 | Fujitsu Limited | コヒーレンシ維持装置およびコヒーレンシ維持方法 |
-
2006
- 2006-11-14 JP JP2006307700A patent/JP4965974B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04123151A (ja) * | 1990-09-13 | 1992-04-23 | Fujitsu Ltd | システムバス |
JPH10254774A (ja) * | 1997-03-11 | 1998-09-25 | Hitachi Ltd | マルチプロセッサシステムおよび複製タグの制御方法 |
JP2001184263A (ja) * | 1999-12-17 | 2001-07-06 | Hewlett Packard Co <Hp> | 旧キャッシュラインを無効化および除去する装置 |
JP2006072509A (ja) * | 2004-08-31 | 2006-03-16 | Fujitsu Ltd | 情報処理装置及びローカルスヌープ制御方法 |
JP2006185284A (ja) * | 2004-12-28 | 2006-07-13 | Renesas Technology Corp | データ処理装置 |
JP2007183702A (ja) * | 2006-01-04 | 2007-07-19 | Hitachi Ltd | キャッシュ一貫性制御方法およびチップセットおよびマルチプロセッサシステム |
WO2007094046A1 (ja) * | 2006-02-14 | 2007-08-23 | Fujitsu Limited | コヒーレンシ維持装置およびコヒーレンシ維持方法 |
Non-Patent Citations (1)
Title |
---|
ルネサス32ビットRISCマイクロコンピュータハードウェアマニュアルSH7706, vol. Rev.5.00, JPN6012010943, 24 May 2006 (2006-05-24), JP, pages 9 - 5, ISSN: 0002162384 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011148482A1 (ja) | 2010-05-27 | 2011-12-01 | 富士通株式会社 | 情報処理システム及びシステムコントローラ |
CN102906713A (zh) * | 2010-05-27 | 2013-01-30 | 富士通株式会社 | 信息处理系统以及系统控制器 |
JP5348320B2 (ja) * | 2010-05-27 | 2013-11-20 | 富士通株式会社 | 情報処理システム及びシステムコントローラ |
US8856457B2 (en) | 2010-05-27 | 2014-10-07 | Fujitsu Limited | Information processing system and a system controller |
JP5360299B2 (ja) * | 2010-06-14 | 2013-12-04 | 富士通株式会社 | マルチコアプロセッサシステム、キャッシュコヒーレンシ制御方法、およびキャッシュコヒーレンシ制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP4965974B2 (ja) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10437739B2 (en) | Low-latency accelerator | |
US8250254B2 (en) | Offloading input/output (I/O) virtualization operations to a processor | |
TWI470435B (zh) | 為本地與遠端實體記憶體間之共用虛擬記憶體提供硬體支援 | |
US7680987B1 (en) | Sub-page-granular cache coherency using shared virtual memory mechanism | |
US8171230B2 (en) | PCI express address translation services invalidation synchronization with TCE invalidation | |
TWI414943B (zh) | 拖延dma操作以利用轉換控制項機制之遷移進展位元進行記憶體遷移 | |
CN100555257C (zh) | 处理页面复制期间的dma操作的存储控制器和方法 | |
US7523260B2 (en) | Propagating data using mirrored lock caches | |
US7721023B2 (en) | I/O address translation method for specifying a relaxed ordering for I/O accesses | |
US20040093455A1 (en) | System and method for providing forward progress and avoiding starvation and livelock in a multiprocessor computer system | |
US7581054B2 (en) | Data processing system | |
TWI654560B (zh) | 多核心共享頁遺失處置器 | |
US6996693B2 (en) | High speed memory cloning facility via a source/destination switching mechanism | |
US7069394B2 (en) | Dynamic data routing mechanism for a high speed memory cloner | |
JPH1185618A (ja) | 仮想メモリ変換を制御する方法 | |
US6892283B2 (en) | High speed memory cloner with extended cache coherency protocols and responses | |
US6898677B2 (en) | Dynamic software accessibility to a microprocessor system with a high speed memory cloner | |
JP4965974B2 (ja) | 半導体集積回路装置 | |
US6986013B2 (en) | Imprecise cache line protection mechanism during a memory clone operation | |
US7502917B2 (en) | High speed memory cloning facility via a lockless multiprocessor mechanism | |
JP2008123333A5 (ja) | ||
US6915390B2 (en) | High speed memory cloning facility via a coherently done mechanism | |
US6986011B2 (en) | High speed memory cloner within a data processing system | |
US6928524B2 (en) | Data processing system with naked cache line write operations | |
JP2785738B2 (ja) | 分散メモリ型マルチプロセッサ情報処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091110 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091110 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100528 |
|
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: 20120306 |
|
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: 20120330 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4965974 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: 20150406 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |