JP6634083B2 - データ処理装置におけるシステムエラー処理 - Google Patents
データ処理装置におけるシステムエラー処理 Download PDFInfo
- Publication number
- JP6634083B2 JP6634083B2 JP2017527230A JP2017527230A JP6634083B2 JP 6634083 B2 JP6634083 B2 JP 6634083B2 JP 2017527230 A JP2017527230 A JP 2017527230A JP 2017527230 A JP2017527230 A JP 2017527230A JP 6634083 B2 JP6634083 B2 JP 6634083B2
- Authority
- JP
- Japan
- Prior art keywords
- error
- exception
- condition
- data processing
- processing circuit
- 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 229
- 238000000034 method Methods 0.000 claims description 76
- 230000004888 barrier function Effects 0.000 claims description 75
- 230000004044 response Effects 0.000 claims description 66
- 230000003111 delayed effect Effects 0.000 claims description 15
- 230000001419 dependent effect Effects 0.000 claims description 3
- 238000003672 processing method Methods 0.000 claims description 3
- 230000008439 repair process Effects 0.000 claims description 3
- 208000011580 syndromic disease Diseases 0.000 description 11
- 230000000694 effects Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000000246 remedial effect Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 206010000210 abortion Diseases 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3865—Recovery, e.g. branch miss-prediction, exception handling using deferred exception handling, e.g. exception flags
-
- 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/0721—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 within a central processing unit [CPU]
-
- 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
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/522—Barrier synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Advance Control (AREA)
- Debugging And Monitoring (AREA)
Description
HaveEL(exception level)−この例外レベルが存在する場合は真を返す。
SCR_EL3.EA−例外レベルEL3になるようにシステムエラー(非同期アボート)の目標を定義するように設定される。
IsSecure()−現在、(例えば、ARM Limited Cambridge,UK提供のTrustZoneテクノロジによって提供される)安全状態で動作している場合、真を返す。
PSTATE.EL−現在の例外レベルを定義する。
HCR_EL2.TGE−(EL1とは対照的に)すべての例外がEL2で処理されることを定義するように設定される。
HCR_EL2.AMO−実行レベルEL2に対して定義された上述のAMO値。
DISR_EL1.A−遅延エラー例外条件を例外レベルEL1で記録する。
ISR_EL1.A−エラー例外条件を記録する。
HCR_EL2.VSE−例外レベルEL2で設定された上述のVSE値。
VDISR EL2.A−上述のVDISR値。
Claims (20)
- データ処理装置であって、
データ処理命令に応答してデータ処理動作を実行し、エラーメモリバリア条件が存在するか否かを判定し、かつ、前記エラーメモリバリア条件が存在するか否かに依存してエラーメモリバリア手順を実行するための処理回路を備え、
前記処理回路は、データ処理動作が成功しなかったことの検出時に、エラー例外条件を設定することが可能であり、
前記エラーメモリバリア手順は、前記エラー例外条件が設定されている場合、かつ、エラーマスク条件が設定されている場合、
遅延エラー例外条件を設定すること、および
前記エラー例外条件をクリアすることを含む、データ処理装置。 - 前記処理回路は、前記エラー例外条件が設定されており、かつ、前記エラーマスク条件が設定されていない場合、例外処理手順を実行することが可能である、請求項1に記載の装置。
- 前記データ処理動作は、メモリアクセスを含み、
前記処理回路は、メモリアクセスのためのエラー応答を受信することが可能であり、前記エラー応答が、前記メモリアクセスが成功しなかったことを示す場合に、前記エラー例外条件を設定することが可能である、請求項1または請求項2に記載の装置。 - 前記処理回路は、前記データ処理命令内のエラーメモリバリア命令に応答して、前記エラーメモリバリア条件が存在することを判定することが可能である、請求項1〜3のいずれか1つに記載の装置。
- 前記処理回路は、例外処理手順の一部として、かつ、前記遅延エラー例外条件が設定されている場合に、少なくとも1つのデータ処理命令に関して修復応答を開始することが可能であり、前記少なくとも1つのデータ処理命令は、前記エラーメモリバリア条件が存在すると判定する前に実行されたデータ処理命令を含む、請求項2〜4のいずれか1つに記載の装置。
- エラーメモリバリアモード値記憶装置をさらに備え、前記処理回路が例外処理手順の実行を開始するとき、前記処理回路は、前記エラーメモリバリアモード値記憶装置に記憶されたエラーメモリバリアモード値に依存して、前記エラーメモリバリア条件が存在することを判定することが可能である、請求項2〜5のいずれか1つに記載の装置。
- 前記処理回路は、前記エラーメモリバリア手順を実行するとき、かつ、前記エラーメモリバリア条件が存在する場合、さらなるデータ処理命令を実行する前にまだ完了していない各メモリアクセスのエラー応答を待つことが可能である、請求項3〜6のいずれか1つに記載の装置。
- エラーマスク値記憶装置をさらに備え、前記処理回路は、前記エラーマスク条件が、前記エラーマスク値記憶装置に記憶されたエラーマスク値に依存して設定されるか否かを判定することが可能である、請求項1〜7のいずれか1つに記載の装置。
- 前記処理回路は、例外処理手順を開始するときに、エラーマスク値を設定することが可能である、請求項2〜8のいずれか1つに記載の装置。
- 前記処理回路は、前記遅延エラー例外条件が設定されていない場合、例外処理手順の一部として、エラーマスク値をクリアすることが可能である、請求項2〜9のいずれか1つに記載の装置。
- 前記処理回路は、前記遅延エラー例外条件が設定されていない場合、既定の組のデータ処理命令が完了した後に、エラーマスク値を設定し、かつ、前記エラーマスク値をクリアすることが可能である、請求項1〜10のいずれか1つに記載の装置。
- 前記処理回路は、複数の例外レベルから選択された現在の例外レベルで例外処理手順を実行することが可能であり、前記複数の例外レベルは、複数のソフトウェア実行特権レベルに対応する、請求項2〜11のいずれか1つに記載の装置。
- 前記処理回路は、前記例外処理手順が、さらなるエラー例外条件に応答するさらなる例外処理手順が実行されるべきである前記例外レベル以上である例外レベルで、前記処理回路によって実行されるべきである場合に、前記例外処理手順を開始するとき、前記エラーマスク条件を設定することが可能である、請求項12に記載の装置。
- 前記処理回路は、前記例外処理手順が、さらなるエラー例外条件に応答するさらなる例外処理手順が実行されるべきである前記例外レベル未満である例外レベルで、前記処理回路によって実行されるべきである場合に、前記例外処理手順を開始するとき、前記エラーマスク条件を設定しないことが可能である、請求項12または請求項13に記載の装置。
- 少なくとも1つの仮想マシンが動作する仮想化された動作環境を提供することができ、前記仮想マシンが、前記処理回路との相互作用により、前記データ処理命令に応答して前記データ処理動作を実行することが可能である、請求項1〜14のいずれか1つに記載の装置。
- 請求項2に従属する場合、前記装置は、仮想エラー例外条件を設定することが可能であり、前記処理回路は、前記仮想エラー例外条件が設定されており、かつ、仮想エラーマスク条件が設定されていない場合、前記例外処理手順を実行することが可能である、請求項15に記載の装置。
- 仮想エラー例外条件が設定されている場合、かつ、仮想エラーマスク条件が設定されている場合、前記エラーメモリバリア手順は、
仮想遅延エラー例外条件を設定すること、および
前記仮想エラー例外条件をクリアすることをさらに含む、請求項15または請求項16に記載の装置。 - 前記装置は、前記処理回路が、前記遅延エラー例外条件が設定されているか否を判定しようとしているとき、前記遅延エラー例外条件の値の代わりに、前記仮想遅延エラー例外条件の値を提供することが可能である、請求項17に記載の装置。
- データ処理方法であって、
データ処理命令に応答してデータ処理動作を実行するステップと、
データ処理動作が成功しなかったことの検出時にエラー例外条件を設定するステップと、
エラーメモリバリア条件が存在するか否かを判定するステップと、
前記エラーメモリバリア条件が存在するか否かに依存して、エラーメモリバリア手順を実行するステップと、を含み、
前記エラーメモリバリア手順は、前記エラー例外条件が設定されている場合、かつ、エラーマスク条件が設定されている場合、
遅延エラー例外条件を設定すること、および
前記エラー例外条件をクリアすることを含む、方法。 - データ処理装置であって、
データ処理命令に応答してデータ処理動作を実行するための手段と、
データ処理動作が成功しなかったことの検出時に、エラー例外条件を設定するための手段と、
エラーメモリバリア条件が存在するか否かを判定するための手段と、
前記エラーメモリバリア条件が存在するか否かに依存して、エラーメモリバリア手順を実行するための手段と、を備え、
前記エラーメモリバリア手順は、前記エラー例外条件が設定されている場合、かつ、エラーマスク条件が設定されている場合、
遅延エラー例外条件を設定すること、および
前記エラー例外条件をクリアすることを含む、装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1421134.6 | 2014-11-28 | ||
GB1421134.6A GB2532777B (en) | 2014-11-28 | 2014-11-28 | System error handling in a data processing apparatus |
PCT/GB2015/053135 WO2016083773A1 (en) | 2014-11-28 | 2015-10-21 | System error handling in a data processing apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017538214A JP2017538214A (ja) | 2017-12-21 |
JP6634083B2 true JP6634083B2 (ja) | 2020-01-22 |
Family
ID=52349593
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017527230A Active JP6634083B2 (ja) | 2014-11-28 | 2015-10-21 | データ処理装置におけるシステムエラー処理 |
Country Status (9)
Country | Link |
---|---|
US (1) | US11461104B2 (ja) |
EP (1) | EP3224718A1 (ja) |
JP (1) | JP6634083B2 (ja) |
KR (1) | KR102427949B1 (ja) |
CN (1) | CN107111525B (ja) |
GB (1) | GB2532777B (ja) |
IL (1) | IL252145B (ja) |
TW (1) | TWI748934B (ja) |
WO (1) | WO2016083773A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2017204139A1 (ja) * | 2016-05-23 | 2019-03-22 | 日本電気株式会社 | データ処理装置、データ処理方法、およびプログラム記録媒体 |
US10795800B2 (en) * | 2018-09-10 | 2020-10-06 | International Business Machines Corporation | Programming language runtime deferred exception handling |
US11328241B2 (en) * | 2020-07-02 | 2022-05-10 | Content Square SAS | Identifying script errors in an online retail platform and quantifying such errors |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2045789A1 (en) * | 1990-06-29 | 1991-12-30 | Richard Lee Sites | Granularity hint for translation buffer in high performance processor |
US5438677A (en) * | 1992-08-17 | 1995-08-01 | Intel Corporation | Mutual exclusion for computer system |
AUPM348794A0 (en) * | 1994-01-20 | 1994-02-17 | Alcatel Australia Limited | Microprocessor fault log |
US5887175A (en) * | 1997-02-14 | 1999-03-23 | Integrated Device Technology, Inc. | Apparatus and method for managing interrupt delay on floating point error |
US6173248B1 (en) * | 1998-02-09 | 2001-01-09 | Hewlett-Packard Company | Method and apparatus for handling masked exceptions in an instruction interpreter |
CN1242546A (zh) * | 1998-03-31 | 2000-01-26 | 英特尔公司 | 用于处理不精确异常的一种方法和装置 |
US7043582B2 (en) * | 2002-09-06 | 2006-05-09 | Intel Corporation | Self-nesting interrupts |
GB0623276D0 (en) | 2006-11-22 | 2007-01-03 | Transitive Ltd | Memory consistency protection in a multiprocessor computing system |
GB2478733B (en) * | 2010-03-15 | 2013-08-14 | Advanced Risc Mach Ltd | Apparatus and method for handling exception events |
GB2478731B (en) * | 2010-03-15 | 2013-08-21 | Advanced Risc Mach Ltd | Operand size control |
GB2487575B (en) * | 2011-01-28 | 2017-04-12 | Advanced Risc Mach Ltd | Controlling generation of debug exceptions |
US9632976B2 (en) | 2012-12-07 | 2017-04-25 | Nvidia Corporation | Lazy runahead operation for a microprocessor |
-
2014
- 2014-11-28 GB GB1421134.6A patent/GB2532777B/en active Active
-
2015
- 2015-10-21 KR KR1020177016744A patent/KR102427949B1/ko active IP Right Grant
- 2015-10-21 WO PCT/GB2015/053135 patent/WO2016083773A1/en active Application Filing
- 2015-10-21 EP EP15794224.4A patent/EP3224718A1/en active Pending
- 2015-10-21 CN CN201580063372.1A patent/CN107111525B/zh active Active
- 2015-10-21 JP JP2017527230A patent/JP6634083B2/ja active Active
- 2015-11-25 US US14/952,807 patent/US11461104B2/en active Active
- 2015-11-25 TW TW104139235A patent/TWI748934B/zh active
-
2017
- 2017-05-07 IL IL252145A patent/IL252145B/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
IL252145B (en) | 2020-06-30 |
GB2532777A (en) | 2016-06-01 |
KR20170091641A (ko) | 2017-08-09 |
EP3224718A1 (en) | 2017-10-04 |
CN107111525A (zh) | 2017-08-29 |
US11461104B2 (en) | 2022-10-04 |
TWI748934B (zh) | 2021-12-11 |
GB201421134D0 (en) | 2015-01-14 |
GB2532777B (en) | 2021-07-07 |
CN107111525B (zh) | 2022-02-11 |
WO2016083773A1 (en) | 2016-06-02 |
IL252145A0 (en) | 2017-07-31 |
TW201633123A (zh) | 2016-09-16 |
JP2017538214A (ja) | 2017-12-21 |
US20160154654A1 (en) | 2016-06-02 |
KR102427949B1 (ko) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5861228B2 (ja) | 仮想パーティションを監視するためのシステム、装置、プログラムおよび方法 | |
JP5699213B2 (ja) | 不正なモード変更の操作 | |
RU2659472C2 (ru) | Внесение ошибки страницы в виртуальных машинах | |
TWI612439B (zh) | 用以偵測未經授權之記憶體存取的計算裝置、方法及機器可讀儲存媒體 | |
JP2010532054A (ja) | 仮想化とエミュレーションを促すトランザクションメモリーハードウェアの活用 | |
KR102624352B1 (ko) | 메모리 관리 | |
US20180004943A1 (en) | Systems and Methods of Asynchronous Analysis of Event Notifications for Computer Security Applications | |
US9465617B1 (en) | Implementing upcall from secure to non-secure mode by injecting exception into non-secure mode | |
TWI467373B (zh) | 以交換式記憶體為手段來加速虛擬化及仿真化 | |
US9158562B2 (en) | Method and apparatus for supporting virtualization of loadable module | |
JP6634083B2 (ja) | データ処理装置におけるシステムエラー処理 | |
JP2020535512A (ja) | 例外マスク更新命令後のトランザクションの非アボート処理の許可 | |
US10067784B2 (en) | Hypervisor backdoor interface | |
US9864708B2 (en) | Safely discovering secure monitors and hypervisor implementations in systems operable at multiple hierarchical privilege levels | |
US9535772B2 (en) | Creating a communication channel between different privilege levels using wait-for-event instruction in systems operable at multiple levels hierarchical privilege levels | |
JP6920286B2 (ja) | 例外処理 | |
US9575658B2 (en) | Collaborative release of a virtual disk | |
JP2018531462A6 (ja) | 例外処理 | |
KR102558617B1 (ko) | 메모리 관리 | |
US20230315510A1 (en) | A technique for handling transactions in a system employing transactional memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181015 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190708 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190830 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20191113 |
|
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: 20191119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191213 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6634083 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |