JP5476391B2 - データ処理システム - Google Patents
データ処理システム Download PDFInfo
- Publication number
- JP5476391B2 JP5476391B2 JP2011536378A JP2011536378A JP5476391B2 JP 5476391 B2 JP5476391 B2 JP 5476391B2 JP 2011536378 A JP2011536378 A JP 2011536378A JP 2011536378 A JP2011536378 A JP 2011536378A JP 5476391 B2 JP5476391 B2 JP 5476391B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- error
- value
- cache line
- control
- 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.)
- Active
Links
- 238000012545 processing Methods 0.000 title claims description 120
- 238000000034 method Methods 0.000 claims description 59
- 238000001514 detection method Methods 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 38
- 238000012937 correction Methods 0.000 claims description 33
- 239000004020 conductor Substances 0.000 description 25
- 230000006870 function Effects 0.000 description 18
- 230000002093 peripheral effect Effects 0.000 description 10
- 230000002457 bidirectional effect Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 230000005055 memory storage Effects 0.000 description 5
- 230000010365 information processing Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 208000011580 syndromic disease Diseases 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 230000005865 ionizing radiation Effects 0.000 description 1
- 230000005291 magnetic effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000007616 round robin method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Description
プロセッサと、
前記プロセッサに結合されたキャッシュと、
前記キャッシュに結合されたキャッシュ制御回路と
を有するデータ処理システムであって、前記キャッシュ制御回路は誤り検出を実行し、前記キャッシュ制御回路は、キャッシュエラーが検出された場合に行われる複数のエラー処理の内の1つを選択するための制御値が格納されているユーザによりプログラム可能なエラー処理制御レジスタを更に有し、ユーザにより選択される前記制御値の第1の値は、前記キャッシュエラーを含むキャッシュラインを、該キャッシュラインがダーティであるか又はクリーンであるかによらず例外処理を行うことなく自動的に無効化するのに使用され、ユーザにより選択される前記制御値の第2の値は、前記キャッシュエラーを含むキャッシュラインを、該キャッシュラインがダーティであるか又はクリーンであるかによらず例外処理と共に自動的に無効化するのに使用され、行われるエラー処理が透明な処理であるか又は透明でない処理であるかを決める前記制御値は、前記ユーザにより動的にプログラムされる、データ処理システムである。
プロセッサをキャッシュに結合し、
前記キャッシュ内の情報の誤り検出を実行するためにキャッシュ制御回路を前記キャッシュに結合し、
ユーザプログラム可能なエラー処理制御レジスタを前記キャッシュ制御回路に結合するステップを有する方法であって、
前記ユーザプログラム可能なエラー処理制御レジスタは、キャッシュエラーが検出された場合に行われる複数のエラー処理の内の1つを選択する制御値を格納し、ユーザにより選択される前記制御値の第1の値は、前記キャッシュエラーを含むキャッシュラインを例外処理を行うことなく自動的に無効化するのに使用され、ユーザにより選択される前記制御値の第2の値は、前記キャッシュエラーを含むキャッシュラインを例外処理と共に自動的に無効化するのに使用され、前記ユーザは、行われる処理が透明な処理であるか又は透明でない処理であるかを決める前記制御値を動的にプログラムするものである。
前記制御値を前記第2の値に設定するステップであって、時間インターバルの第2部分の間にアプリケーションの第2部分が実行される際に前記プロセッサにとってキャッシュエラーが可視的である、ステップと
を更に有するものである。
プロセッサと、
前記プロセッサに結合されたキャッシュと、
前記キャッシュに結合されたキャッシュ制御回路と
を有するデータ処理システムであって、前記キャッシュ制御回路は誤り検出を実行し、前記キャッシュ制御回路は、キャッシュエラーが検出された場合に行われるエラー処理のタイプを選択する制御値が格納されているユーザプログラム可能なエラー処理制御レジスタを更に有するものである。
Claims (5)
- プロセッサと、
前記プロセッサに結合されたキャッシュと、
前記キャッシュに結合されたキャッシュ制御回路と
を有するデータ処理システムであって、前記キャッシュ制御回路は誤り検出を実行し、前記キャッシュ制御回路は、キャッシュエラーが検出された場合に行われる複数のエラー処理の内の1つを選択するための制御値が格納されているユーザによりプログラム可能なエラー処理制御レジスタを更に有し、ユーザにより選択される前記制御値の第1の値は、前記キャッシュエラーを含むキャッシュラインを、該キャッシュラインがダーティであるか又はクリーンであるかによらず例外処理を行うことなく自動的に無効化するのに使用され、ユーザにより選択される前記制御値の第2の値は、前記キャッシュエラーを含むキャッシュラインを、該キャッシュラインがダーティであるか又はクリーンであるかによらず例外処理と共に自動的に無効化するのに使用され、行われるエラー処理が透明な処理であるか又は透明でない処理であるかを決める前記制御値は、前記ユーザにより動的にプログラムされる、データ処理システム。 - 前記ユーザによりプログラム可能なエラー処理制御レジスタにおける前記制御値の第3の値は、検出したエラーに関する情報を無効化することなくかつ例外を生成することなく、前記検出したエラーの訂正を自動的に行うのに使用される、請求項1記載のデータ処理システム。
- 前記ユーザによりプログラム可能なエラー処理制御レジスタにおける前記制御値の第3の値は、検出したエラーを自動的に訂正しかつ例外を生成するのに使用され、キャッシュエラーを含むキャッシュラインについて該キャッシュエラーを訂正するためにエラー訂正コード(ECC)処理を実行し、訂正されたキャッシュラインをキャッシュから出力する、請求項1記載のデータ処理システム。
- 前記制御値が前記第1の値に設定されていた場合、時間インターバルの第1部分の間にアプリケーションの第1部分が実行される際に前記プロセッサにとってキャッシュエラーが透明であり、前記制御値が前記第2の値に設定されていた場合、時間インターバルの第2部分の間にアプリケーションの第2部分が実行される際に前記プロセッサにとってキャッシュエラーが可視的である、請求項1記載のデータ処理システム。
- 前記キャッシュラインがクリーンキャッシュラインであった場合、前記ユーザによりプログラム可能なエラー処理制御レジスタにおける前記制御値の第3の値は、前記キャッシュエラーを含む前記キャッシュラインの自動的な無効化を行うのに使用され、前記キャッシュラインがダーティキャッシュラインであった場合、例外が生成され、該キャッシュラインが無効化されないように前記キャッシュラインが不変のまま残される、請求項1記載のデータ処理システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/273,155 US8095831B2 (en) | 2008-11-18 | 2008-11-18 | Programmable error actions for a cache in a data processing system |
US12/273,155 | 2008-11-18 | ||
PCT/US2009/062470 WO2010059354A2 (en) | 2008-11-18 | 2009-10-29 | Programmable error actions for a cache in a data processing system |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2012509525A JP2012509525A (ja) | 2012-04-19 |
JP2012509525A5 JP2012509525A5 (ja) | 2012-12-13 |
JP5476391B2 true JP5476391B2 (ja) | 2014-04-23 |
Family
ID=42172909
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011536378A Active JP5476391B2 (ja) | 2008-11-18 | 2009-10-29 | データ処理システム |
Country Status (5)
Country | Link |
---|---|
US (1) | US8095831B2 (ja) |
JP (1) | JP5476391B2 (ja) |
CN (1) | CN102216904B (ja) |
TW (1) | TWI486779B (ja) |
WO (1) | WO2010059354A2 (ja) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8522076B2 (en) * | 2010-06-23 | 2013-08-27 | International Business Machines Corporation | Error detection and recovery in a shared pipeline |
US9104583B2 (en) | 2010-06-24 | 2015-08-11 | International Business Machines Corporation | On demand allocation of cache buffer slots |
US20110320863A1 (en) * | 2010-06-24 | 2011-12-29 | International Business Machines Corporation | Dynamic re-allocation of cache buffer slots |
US8850260B1 (en) * | 2010-09-22 | 2014-09-30 | Western Digital Technologies, Inc. | Programmable error handling |
US8924817B2 (en) * | 2010-09-29 | 2014-12-30 | Advanced Micro Devices, Inc. | Method and apparatus for calculating error correction codes for selective data updates |
TWI463313B (zh) * | 2012-04-17 | 2014-12-01 | Phison Electronics Corp | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 |
CN102662868B (zh) * | 2012-05-02 | 2015-08-19 | 中国科学院计算技术研究所 | 用于处理器的动态组相联高速缓存装置及其访问方法 |
US20150248316A1 (en) * | 2012-09-28 | 2015-09-03 | Hewlett-Packard Development Company, L.P. | System and method for dynamically selecting between memory error detection and error correction |
US9021426B2 (en) | 2012-12-04 | 2015-04-28 | International Business Machines Corporation | Streamlining hardware initialization code |
US9230037B2 (en) | 2013-01-16 | 2016-01-05 | Sap Se | Identifying and resolving cache poisoning |
US9250998B2 (en) * | 2013-11-26 | 2016-02-02 | Qualcomm Incorporated | Cache structure with parity-protected clean data and ECC-protected dirty data |
US10379944B2 (en) * | 2017-04-17 | 2019-08-13 | Advanced Micro Devices, Inc. | Bit error protection in cache memories |
CN111221775B (zh) * | 2018-11-23 | 2023-06-20 | 阿里巴巴集团控股有限公司 | 处理器、缓存处理方法及电子设备 |
US11816339B2 (en) * | 2020-09-07 | 2023-11-14 | Micron Technology, Inc. | Selectable error control for memory device |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4873629A (en) * | 1984-06-20 | 1989-10-10 | Convex Computer Corporation | Instruction processing unit for computer |
US5410668A (en) * | 1992-09-23 | 1995-04-25 | Amdahl Corporation | Reconfigurable cache memory which can selectively inhibit access to damaged segments in the cache memory |
JPH09511088A (ja) * | 1995-04-18 | 1997-11-04 | インターナショナル・ビジネス・マシーンズ・コーポレーション | マルチプロセッサ・システムのための高可用性のエラー自己回復共用キャッシュ |
US6332181B1 (en) * | 1998-05-04 | 2001-12-18 | International Business Machines Corporation | Recovery mechanism for L1 data cache parity errors |
US6901540B1 (en) * | 1999-11-08 | 2005-05-31 | International Business Machines Corporation | TLB parity error recovery |
US6622260B1 (en) * | 1999-12-30 | 2003-09-16 | Suresh Marisetty | System abstraction layer, processor abstraction layer, and operating system error handling |
US6950978B2 (en) * | 2001-03-29 | 2005-09-27 | International Business Machines Corporation | Method and apparatus for parity error recovery |
US6725337B1 (en) * | 2001-05-16 | 2004-04-20 | Advanced Micro Devices, Inc. | Method and system for speculatively invalidating lines in a cache |
US7032123B2 (en) * | 2001-10-19 | 2006-04-18 | Sun Microsystems, Inc. | Error recovery |
US6901532B2 (en) * | 2002-03-28 | 2005-05-31 | Honeywell International Inc. | System and method for recovering from radiation induced memory errors |
US7634638B1 (en) * | 2002-10-22 | 2009-12-15 | Mips Technologies, Inc. | Instruction encoding for system register bit set and clear |
US7240277B2 (en) * | 2003-09-26 | 2007-07-03 | Texas Instruments Incorporated | Memory error detection reporting |
US7290179B2 (en) * | 2003-12-01 | 2007-10-30 | Intel Corporation | System and method for soft error handling |
GB2409301B (en) * | 2003-12-18 | 2006-12-06 | Advanced Risc Mach Ltd | Error correction within a cache memory |
US7334107B2 (en) * | 2004-09-30 | 2008-02-19 | Intel Corporation | Caching support for direct memory access address translation |
US7366953B2 (en) * | 2004-12-09 | 2008-04-29 | International Business Machines Corporation | Self test method and apparatus for identifying partially defective memory |
US7917804B2 (en) * | 2005-02-18 | 2011-03-29 | Hewlett-Packard Development Company, L.P. | Systems and methods for CPU repair |
US7761774B2 (en) * | 2005-10-28 | 2010-07-20 | Qualcomm Incorporated | High speed CAM lookup using stored encoded key |
-
2008
- 2008-11-18 US US12/273,155 patent/US8095831B2/en active Active
-
2009
- 2009-10-29 JP JP2011536378A patent/JP5476391B2/ja active Active
- 2009-10-29 CN CN200980146148.3A patent/CN102216904B/zh active Active
- 2009-10-29 WO PCT/US2009/062470 patent/WO2010059354A2/en active Application Filing
- 2009-11-16 TW TW098138874A patent/TWI486779B/zh active
Also Published As
Publication number | Publication date |
---|---|
US20100125750A1 (en) | 2010-05-20 |
TWI486779B (zh) | 2015-06-01 |
TW201025019A (en) | 2010-07-01 |
WO2010059354A2 (en) | 2010-05-27 |
CN102216904B (zh) | 2014-08-27 |
CN102216904A (zh) | 2011-10-12 |
JP2012509525A (ja) | 2012-04-19 |
WO2010059354A3 (en) | 2010-08-19 |
US8095831B2 (en) | 2012-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5476391B2 (ja) | データ処理システム | |
US8145985B2 (en) | Error detection schemes for a unified cache in a data processing system | |
US8266498B2 (en) | Implementation of multiple error detection schemes for a cache | |
US9158725B2 (en) | Flexible control mechanism for store gathering in a write buffer | |
US8131951B2 (en) | Utilization of a store buffer for error recovery on a store allocation cache miss | |
US8291305B2 (en) | Error detection schemes for a cache in a data processing system | |
CN103729306B (zh) | 高速缓存块无效的方法和数据处理设备 | |
KR102645481B1 (ko) | 상위 계층 캐시의 항목을 기반으로 하위 계층 캐시로의 유입을 로깅함으로써 트레이스 기록 | |
JP4395425B2 (ja) | 破損データ値を処理するためのデータ処理装置と方法 | |
US7987322B2 (en) | Snoop request management in a data processing system | |
US8291259B2 (en) | Delete of cache line with correctable error | |
KR20040041550A (ko) | 타입 비트들을 이용한, 레벨 2 캐시에서의 ecc 및프리디코드 비트들의 저장 추적 | |
US9009411B2 (en) | Flexible control mechanism for store gathering in a write buffer | |
US20070288694A1 (en) | Data processing system, processor and method of data processing having controllable store gather windows | |
EP3752922B1 (en) | Trace recording by logging influxes to an upper-layer shared cache, plus cache coherence protocol transitions among lower-layer caches | |
JP2012238306A (ja) | ルーティングのための方法及び装置 | |
US8775863B2 (en) | Cache locking control | |
US6701484B1 (en) | Register file with delayed parity check | |
WO2010120449A2 (en) | Memory testing with snoop capabilities in a data processing system | |
US9003158B2 (en) | Flexible control mechanism for store gathering in a write buffer | |
JP2021515308A (ja) | デバイスをデバッグするときにメタデータにアクセスするための装置及び方法 | |
JP2004062377A (ja) | 共有キャッシュメモリ障害処理方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121024 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20121024 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131225 |
|
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: 20140128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5476391 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |