CA2725906C - System and method for processing interrupts in a computing system - Google Patents
System and method for processing interrupts in a computing system Download PDFInfo
- Publication number
- CA2725906C CA2725906C CA2725906A CA2725906A CA2725906C CA 2725906 C CA2725906 C CA 2725906C CA 2725906 A CA2725906 A CA 2725906A CA 2725906 A CA2725906 A CA 2725906A CA 2725906 C CA2725906 C CA 2725906C
- Authority
- CA
- Canada
- Prior art keywords
- instruction
- instructions
- interrupt
- branch
- branch instruction
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3802—Instruction prefetching
- G06F9/3804—Instruction prefetching for branches, e.g. hedging, branch folding
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/642,970 US8473725B2 (en) | 2009-12-21 | 2009-12-21 | System and method for processing interrupts in a computing system |
| US12/642,970 | 2009-12-21 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CA2725906A1 CA2725906A1 (en) | 2011-06-21 |
| CA2725906C true CA2725906C (en) | 2018-11-27 |
Family
ID=43745712
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CA2725906A Active CA2725906C (en) | 2009-12-21 | 2010-12-17 | System and method for processing interrupts in a computing system |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US8473725B2 (enExample) |
| EP (1) | EP2348399B1 (enExample) |
| JP (1) | JP5485129B2 (enExample) |
| CA (1) | CA2725906C (enExample) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9372811B2 (en) * | 2012-12-13 | 2016-06-21 | Arm Limited | Retention priority based cache replacement policy |
| CN103577242B (zh) * | 2013-11-14 | 2016-11-02 | 中国科学院声学研究所 | 针对已调度汇编代码的控制流图重构方法 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5922070A (en) * | 1994-01-11 | 1999-07-13 | Texas Instruments Incorporated | Pipelined data processing including program counter recycling |
| US5774709A (en) * | 1995-12-06 | 1998-06-30 | Lsi Logic Corporation | Enhanced branch delay slot handling with single exception program counter |
| JP3439033B2 (ja) * | 1996-07-08 | 2003-08-25 | 株式会社日立製作所 | 割り込み制御装置及びプロセッサ |
| US6055628A (en) * | 1997-01-24 | 2000-04-25 | Texas Instruments Incorporated | Microprocessor with a nestable delayed branch instruction without branch related pipeline interlocks |
-
2009
- 2009-12-21 US US12/642,970 patent/US8473725B2/en active Active
-
2010
- 2010-12-17 CA CA2725906A patent/CA2725906C/en active Active
- 2010-12-20 JP JP2010283132A patent/JP5485129B2/ja active Active
- 2010-12-21 EP EP10196164.7A patent/EP2348399B1/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2011129130A (ja) | 2011-06-30 |
| EP2348399B1 (en) | 2013-08-07 |
| US20110154001A1 (en) | 2011-06-23 |
| EP2348399A1 (en) | 2011-07-27 |
| JP5485129B2 (ja) | 2014-05-07 |
| US8473725B2 (en) | 2013-06-25 |
| CA2725906A1 (en) | 2011-06-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10409605B2 (en) | System and method for using a branch mis-prediction buffer | |
| TWI521347B (zh) | 用於減少由資料預擷取引起的快取汙染之方法及裝置 | |
| US7487340B2 (en) | Local and global branch prediction information storage | |
| US8291202B2 (en) | Apparatus and methods for speculative interrupt vector prefetching | |
| US7917731B2 (en) | Method and apparatus for prefetching non-sequential instruction addresses | |
| US8578141B2 (en) | Loop predictor and method for instruction fetching using a loop predictor | |
| US5935238A (en) | Selection from multiple fetch addresses generated concurrently including predicted and actual target by control-flow instructions in current and previous instruction bundles | |
| US5964869A (en) | Instruction fetch mechanism with simultaneous prediction of control-flow instructions | |
| US20070288733A1 (en) | Early Conditional Branch Resolution | |
| US8301871B2 (en) | Predicated issue for conditional branch instructions | |
| CA2725906C (en) | System and method for processing interrupts in a computing system | |
| CN111065998A (zh) | 用于预执行数据相依的负载的切片结构 | |
| US20070288732A1 (en) | Hybrid Branch Prediction Scheme | |
| US20070288734A1 (en) | Double-Width Instruction Queue for Instruction Execution | |
| US20110231634A1 (en) | System and method for grouping alternative possibilities in an unknown instruction path | |
| US20130046964A1 (en) | System and method for zero penalty branch mis-predictions | |
| HK40019118A (en) | Slice construction for pre-executing data dependent loads |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EEER | Examination request |
Effective date: 20151208 |