SE513431C2 - Buffert för icke-rapporterade hopp - Google Patents
Buffert för icke-rapporterade hoppInfo
- Publication number
- SE513431C2 SE513431C2 SE9900042A SE9900042A SE513431C2 SE 513431 C2 SE513431 C2 SE 513431C2 SE 9900042 A SE9900042 A SE 9900042A SE 9900042 A SE9900042 A SE 9900042A SE 513431 C2 SE513431 C2 SE 513431C2
- Authority
- SE
- Sweden
- Prior art keywords
- buffer
- predicted
- instruction
- jump
- instructions
- Prior art date
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 180
- 238000000034 method Methods 0.000 claims description 31
- 238000010926 purge Methods 0.000 claims description 5
- 238000011156 evaluation Methods 0.000 description 12
- 230000015654 memory Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000008901 benefit Effects 0.000 description 4
- 206010012335 Dependence Diseases 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 230000008707 rearrangement Effects 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 239000012464 large buffer Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011084 recovery Methods 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3856—Reordering of instructions, e.g. using queues or age tags
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
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)
- Memory System Of A Hierarchy Structure (AREA)
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9900042A SE513431C2 (sv) | 1999-01-11 | 1999-01-11 | Buffert för icke-rapporterade hopp |
SE9901844A SE521071C2 (sv) | 1999-01-11 | 1999-05-20 | Resultatfältskö |
AU21344/00A AU2134400A (en) | 1999-01-11 | 1999-12-15 | Result field queue |
CA002360283A CA2360283A1 (en) | 1999-01-11 | 1999-12-15 | Not reported jump buffer |
PCT/SE1999/002361 WO2000042500A1 (en) | 1999-01-11 | 1999-12-15 | Not reported jump buffer |
EP99965652A EP1190313B1 (de) | 1999-01-11 | 1999-12-15 | Ergebnis-feld warteschleife |
PCT/SE1999/002362 WO2000042501A1 (en) | 1999-01-11 | 1999-12-15 | Result field queue |
AU21343/00A AU2134300A (en) | 1999-01-11 | 1999-12-15 | Not reported jump buffer |
DE69939880T DE69939880D1 (de) | 1999-01-11 | 1999-12-15 | Nicht gemeldeter sprung-zwischenspeicher und verfahren zur behandlung von sprüngen |
EP99965651A EP1190312B1 (de) | 1999-01-11 | 1999-12-15 | Nicht gemeldeter sprung-zwischenspeicher und verfahren zur behandlung von sprüngen |
CA002360284A CA2360284A1 (en) | 1999-01-11 | 1999-12-15 | Result field queue |
US09/479,954 US6550003B1 (en) | 1999-01-11 | 2000-01-10 | Not reported jump buffer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SE9900042A SE513431C2 (sv) | 1999-01-11 | 1999-01-11 | Buffert för icke-rapporterade hopp |
Publications (3)
Publication Number | Publication Date |
---|---|
SE9900042D0 SE9900042D0 (sv) | 1999-01-11 |
SE9900042L SE9900042L (sv) | 2000-07-12 |
SE513431C2 true SE513431C2 (sv) | 2000-09-11 |
Family
ID=20414049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SE9900042A SE513431C2 (sv) | 1999-01-11 | 1999-01-11 | Buffert för icke-rapporterade hopp |
Country Status (7)
Country | Link |
---|---|
US (1) | US6550003B1 (de) |
EP (1) | EP1190312B1 (de) |
AU (1) | AU2134300A (de) |
CA (1) | CA2360283A1 (de) |
DE (1) | DE69939880D1 (de) |
SE (1) | SE513431C2 (de) |
WO (1) | WO2000042500A1 (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3518510B2 (ja) * | 2001-01-10 | 2004-04-12 | 日本電気株式会社 | リオーダバッファの管理方法及びプロセッサ |
US7577825B2 (en) * | 2006-02-28 | 2009-08-18 | Intel Corporation | Method for data validity tracking to determine fast or slow mode processing at a reservation station |
US9411590B2 (en) * | 2013-03-15 | 2016-08-09 | Qualcomm Incorporated | Method to improve speed of executing return branch instructions in a processor |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB8728493D0 (en) * | 1987-12-05 | 1988-01-13 | Int Computers Ltd | Jump prediction |
US5918046A (en) * | 1994-01-03 | 1999-06-29 | Intel Corporation | Method and apparatus for a branch instruction pointer table |
US5778245A (en) * | 1994-03-01 | 1998-07-07 | Intel Corporation | Method and apparatus for dynamic allocation of multiple buffers in a processor |
US5696955A (en) * | 1994-06-01 | 1997-12-09 | Advanced Micro Devices, Inc. | Floating point stack and exchange instruction |
US5632023A (en) * | 1994-06-01 | 1997-05-20 | Advanced Micro Devices, Inc. | Superscalar microprocessor including flag operand renaming and forwarding apparatus |
GB9504743D0 (en) * | 1995-03-09 | 1995-04-26 | Int Computers Ltd | Jump prediction |
US6112019A (en) * | 1995-06-12 | 2000-08-29 | Georgia Tech Research Corp. | Distributed instruction queue |
US5765016A (en) * | 1996-09-12 | 1998-06-09 | Advanced Micro Devices, Inc. | Reorder buffer configured to store both speculative and committed register states |
-
1999
- 1999-01-11 SE SE9900042A patent/SE513431C2/sv not_active IP Right Cessation
- 1999-12-15 WO PCT/SE1999/002361 patent/WO2000042500A1/en active Application Filing
- 1999-12-15 DE DE69939880T patent/DE69939880D1/de not_active Expired - Fee Related
- 1999-12-15 CA CA002360283A patent/CA2360283A1/en not_active Abandoned
- 1999-12-15 AU AU21343/00A patent/AU2134300A/en not_active Abandoned
- 1999-12-15 EP EP99965651A patent/EP1190312B1/de not_active Expired - Lifetime
-
2000
- 2000-01-10 US US09/479,954 patent/US6550003B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
WO2000042500A1 (en) | 2000-07-20 |
SE9900042L (sv) | 2000-07-12 |
AU2134300A (en) | 2000-08-01 |
SE9900042D0 (sv) | 1999-01-11 |
EP1190312A1 (de) | 2002-03-27 |
EP1190312B1 (de) | 2008-11-05 |
CA2360283A1 (en) | 2000-07-20 |
US6550003B1 (en) | 2003-04-15 |
DE69939880D1 (de) | 2008-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5692170A (en) | Apparatus for detecting and executing traps in a superscalar processor | |
US6249862B1 (en) | Dependency table for reducing dependency checking hardware | |
US6691222B2 (en) | Non-stalling circular counterflow pipeline processor with recorder buffer | |
EP0689131A1 (de) | Rechnersystem zur Ausführung von Verzweigungsbefehlen | |
EP0677188B1 (de) | System und verfahren zum kennzeichnen von befehlen zur steuerung der befehlsausführung | |
EP0533337A1 (de) | Anordnung und Verfahren zur Auflösung von Abhängigkeiten unter mehreren Befehlen in einer Speicheranordnung | |
US20030061467A1 (en) | Scoreboarding mechanism in a pipeline that includes replays and redirects | |
JPH04270421A (ja) | プロセサアーキテクチャ | |
US6393550B1 (en) | Method and apparatus for pipeline streamlining where resources are immediate or certainly retired | |
US5764971A (en) | Method and apparatus for implementing precise interrupts in a pipelined data processing system | |
US5708837A (en) | Method and apparatus for register renaming in a computer system using a separate arithmetic available queue | |
US7093111B2 (en) | Recovery of global history vector in the event of a non-branch flush | |
US6351802B1 (en) | Method and apparatus for constructing a pre-scheduled instruction cache | |
US6026477A (en) | Branch recovery mechanism to reduce processor front end stall time by providing path information for both correct and incorrect instructions mixed in the instruction pool | |
KR100431975B1 (ko) | 분기에의한중단이없는파이프라인방식의마이크로프로세서를위한다중명령디스패치시스템 | |
US7805592B2 (en) | Early resolving instructions | |
US6898696B1 (en) | Method and system for efficiently restoring a processor's execution state following an interrupt caused by an interruptible instruction | |
KR100335747B1 (ko) | 무순서 인스트럭션 발행이 가능한 프로세서의 인스트럭션 버퍼에 인스트럭션을 로드하는 방법 및 장치 | |
US5887185A (en) | Interface for coupling a floating point unit to a reorder buffer | |
SE513431C2 (sv) | Buffert för icke-rapporterade hopp | |
US6385719B1 (en) | Method and apparatus for synchronizing parallel pipelines in a superscalar microprocessor | |
EP1012707B1 (de) | Abhängigkeitstabelle zum reduzieren von hardware zur überprüfung von abhängigkeiten | |
US5838944A (en) | System for storing processor register data after a mispredicted branch | |
EP1050805B1 (de) | Übertragung von Schutzwerten in einem Rechnersystem | |
US20140189313A1 (en) | Queued instruction re-dispatch after runahead |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NUG | Patent has lapsed |