DE69904083D1 - Anordnung und verfahren zum etikettieren und ungültig-erklären von spekulativ ausgeführten befehlen - Google Patents
Anordnung und verfahren zum etikettieren und ungültig-erklären von spekulativ ausgeführten befehlenInfo
- Publication number
- DE69904083D1 DE69904083D1 DE69904083T DE69904083T DE69904083D1 DE 69904083 D1 DE69904083 D1 DE 69904083D1 DE 69904083 T DE69904083 T DE 69904083T DE 69904083 T DE69904083 T DE 69904083T DE 69904083 D1 DE69904083 D1 DE 69904083D1
- Authority
- DE
- Germany
- Prior art keywords
- invalidating
- labeling
- arrangement
- specialized commands
- specialized
- 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.)
- Expired - Fee Related
Links
- 238000002372 labelling Methods 0.000 title 1
- 238000000034 method Methods 0.000 title 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/3802—Instruction prefetching
- G06F9/3804—Instruction prefetching for branches, e.g. hedging, branch folding
-
- 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
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 |
---|---|---|---|
US09/166,037 US6289442B1 (en) | 1998-10-05 | 1998-10-05 | Circuit and method for tagging and invalidating speculatively executed instructions |
PCT/US1999/015397 WO2000020961A2 (en) | 1998-10-05 | 1999-07-08 | Circuit and method for tagging and invalidating speculatively executed instructions |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69904083D1 true DE69904083D1 (de) | 2003-01-02 |
DE69904083T2 DE69904083T2 (de) | 2003-10-30 |
Family
ID=22601545
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69904083T Expired - Fee Related DE69904083T2 (de) | 1998-10-05 | 1999-07-08 | Anordnung und verfahren zum etikettieren und ungültig-erklären von spekulativ ausgeführten befehlen |
Country Status (4)
Country | Link |
---|---|
US (1) | US6289442B1 (de) |
EP (1) | EP1145110B1 (de) |
DE (1) | DE69904083T2 (de) |
WO (1) | WO2000020961A2 (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7134004B1 (en) * | 1999-09-29 | 2006-11-07 | Fujitsu Limited | Processing device for buffering sequential and target sequences and target address information for multiple branch instructions |
US6757816B1 (en) * | 1999-12-30 | 2004-06-29 | Intel Corporation | Fast branch misprediction recovery method and system |
DE10009677A1 (de) * | 2000-02-29 | 2001-09-06 | Infineon Technologies Ag | Programmgesteuerte Einheit |
JP3518510B2 (ja) * | 2001-01-10 | 2004-04-12 | 日本電気株式会社 | リオーダバッファの管理方法及びプロセッサ |
US6859874B2 (en) * | 2001-09-24 | 2005-02-22 | Broadcom Corporation | Method for identifying basic blocks with conditional delay slot instructions |
US6883090B2 (en) * | 2001-05-17 | 2005-04-19 | Broadcom Corporation | Method for cancelling conditional delay slot instructions |
US6785804B2 (en) * | 2001-05-17 | 2004-08-31 | Broadcom Corporation | Use of tags to cancel a conditional branch delay slot instruction |
US6728790B2 (en) * | 2001-10-15 | 2004-04-27 | Advanced Micro Devices, Inc. | Tagging and arbitration mechanism in an input/output node of a computer system |
US20030233530A1 (en) * | 2002-06-14 | 2003-12-18 | International Business Machines Corporation | Enhanced instruction prefetch engine |
GB0215029D0 (en) * | 2002-06-28 | 2002-08-07 | Critical Blue Ltd | Strand based execution |
US7020765B2 (en) * | 2002-09-27 | 2006-03-28 | Lsi Logic Corporation | Marking queue for simultaneous execution of instructions in code block specified by conditional execution instruction |
TWI249131B (en) * | 2003-01-14 | 2006-02-11 | Ip First Llc | Apparatus and method for killing an instruction after loading the instruction into an instruction queue in a pipelined microprocessor |
US7949861B2 (en) | 2005-06-10 | 2011-05-24 | Qualcomm Incorporated | Method and apparatus for managing instruction flushing in a microprocessor's instruction pipeline |
US7734901B2 (en) * | 2005-10-31 | 2010-06-08 | Mips Technologies, Inc. | Processor core and method for managing program counter redirection in an out-of-order processor pipeline |
US7711934B2 (en) * | 2005-10-31 | 2010-05-04 | Mips Technologies, Inc. | Processor core and method for managing branch misprediction in an out-of-order processor pipeline |
US20080077777A1 (en) * | 2006-09-25 | 2008-03-27 | Arm Limited | Register renaming for instructions having unresolved condition codes |
US7594079B2 (en) | 2006-09-29 | 2009-09-22 | Mips Technologies, Inc. | Data cache virtual hint way prediction, and applications thereof |
US9946547B2 (en) * | 2006-09-29 | 2018-04-17 | Arm Finance Overseas Limited | Load/store unit for a processor, and applications thereof |
US20080082793A1 (en) * | 2006-09-29 | 2008-04-03 | Mips Technologies, Inc. | Detection and prevention of write-after-write hazards, and applications thereof |
US7698537B2 (en) * | 2006-12-20 | 2010-04-13 | Arm Limited | Data processing apparatus for processing a stream of instructions in first and second processing blocks with the first processing block supporting register renaming and the second processing block not supporting register renaming |
US7600099B2 (en) * | 2007-03-08 | 2009-10-06 | International Business Machines Corporation | System and method for predictive early allocation of stores in a microprocessor |
US7793080B2 (en) * | 2007-12-31 | 2010-09-07 | Globalfoundries Inc. | Processing pipeline having parallel dispatch and method thereof |
US8086825B2 (en) * | 2007-12-31 | 2011-12-27 | Advanced Micro Devices, Inc. | Processing pipeline having stage-specific thread selection and method thereof |
US20090172370A1 (en) * | 2007-12-31 | 2009-07-02 | Advanced Micro Devices, Inc. | Eager execution in a processing pipeline having multiple integer execution units |
US9092382B2 (en) | 2012-11-02 | 2015-07-28 | International Business Machines Corporation | Reducing microprocessor performance loss due to translation table coherency in a multi-processor system |
US9330017B2 (en) * | 2012-11-02 | 2016-05-03 | International Business Machines Corporation | Suppressing virtual address translation utilizing bits and instruction tagging |
US10296350B2 (en) | 2015-03-31 | 2019-05-21 | Centipede Semi Ltd. | Parallelized execution of instruction sequences |
US10296346B2 (en) | 2015-03-31 | 2019-05-21 | Centipede Semi Ltd. | Parallelized execution of instruction sequences based on pre-monitoring |
US10275248B2 (en) | 2015-12-07 | 2019-04-30 | International Business Machines Corporation | Testing computer software using tracking bits |
US10552162B2 (en) * | 2018-01-22 | 2020-02-04 | International Business Machines Corporation | Variable latency flush filtering |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3577189A (en) | 1969-01-15 | 1971-05-04 | Ibm | Apparatus and method in a digital computer for allowing improved program branching with branch anticipation reduction of the number of branches, and reduction of branch delays |
US4674063A (en) | 1982-10-18 | 1987-06-16 | Nec Corporation | Information processing apparatus having a sequence control function |
US4777587A (en) | 1985-08-30 | 1988-10-11 | Advanced Micro Devices, Inc. | System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses |
US5142634A (en) | 1989-02-03 | 1992-08-25 | Digital Equipment Corporation | Branch prediction |
US5471591A (en) | 1990-06-29 | 1995-11-28 | Digital Equipment Corporation | Combined write-operand queue and read-after-write dependency scoreboard |
JPH0820949B2 (ja) * | 1991-11-26 | 1996-03-04 | 松下電器産業株式会社 | 情報処理装置 |
US5423048A (en) * | 1992-08-27 | 1995-06-06 | Northern Telecom Limited | Branch target tagging |
KR950015189B1 (ko) | 1993-10-28 | 1995-12-23 | 대우전자주식회사 | 광폭의 선입선출버퍼(fifo)의 에러검출장치 |
US5604909A (en) * | 1993-12-15 | 1997-02-18 | Silicon Graphics Computer Systems, Inc. | Apparatus for processing instructions in a computing system |
US5632023A (en) * | 1994-06-01 | 1997-05-20 | Advanced Micro Devices, Inc. | Superscalar microprocessor including flag operand renaming and forwarding apparatus |
US5664135A (en) | 1994-09-28 | 1997-09-02 | Hewlett-Packard Company | Apparatus and method for reducing delays due to branches |
US5799180A (en) * | 1995-10-31 | 1998-08-25 | Texas Instruments Incorporated | Microprocessor circuits, systems, and methods passing intermediate instructions between a short forward conditional branch instruction and target instruction through pipeline, then suppressing results if branch taken |
US5809324A (en) | 1995-12-07 | 1998-09-15 | Sun Microsystems, Inc. | Multiple instruction dispatch system for pipelined microprocessor without branch breaks |
US5796997A (en) * | 1996-05-15 | 1998-08-18 | Hewlett-Packard Company | Fast nullify system and method for transforming a nullify function into a select function |
US5799167A (en) * | 1996-05-15 | 1998-08-25 | Hewlett-Packard Company | Instruction nullification system and method for a processor that executes instructions out of order |
-
1998
- 1998-10-05 US US09/166,037 patent/US6289442B1/en not_active Expired - Fee Related
-
1999
- 1999-07-08 EP EP99932344A patent/EP1145110B1/de not_active Expired - Lifetime
- 1999-07-08 WO PCT/US1999/015397 patent/WO2000020961A2/en active IP Right Grant
- 1999-07-08 DE DE69904083T patent/DE69904083T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
WO2000020961A3 (en) | 2002-01-03 |
EP1145110B1 (de) | 2002-11-20 |
DE69904083T2 (de) | 2003-10-30 |
EP1145110A2 (de) | 2001-10-17 |
US6289442B1 (en) | 2001-09-11 |
EP1145110A3 (de) | 2002-03-27 |
WO2000020961A2 (en) | 2000-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69904083D1 (de) | Anordnung und verfahren zum etikettieren und ungültig-erklären von spekulativ ausgeführten befehlen | |
DE59805321D1 (de) | Verfahren und anordnung zum erkennen von verteilinformationen | |
DE69927257D1 (de) | Verfahren zum identifizieren und lokalisieren von zugleitungs-energieversorgungen | |
DE69918230D1 (de) | Vorrichtung und Verfahren zum Ausrichten und Anbringen von Etiketten | |
DE69908226D1 (de) | Vorrichtung und Verfahren zum Wiederauffinden von Melodien | |
DE60029347D1 (de) | Vorrichtung und verfahren zum lokalisieren von lateralbohrungen | |
DE60039396D1 (de) | Gerät und Verfahren zum Vergleichen von Fingerabdrücken | |
DE69822237D1 (de) | Gerät und Verfahren zum Extrahieren von Mustern | |
DE69906403D1 (de) | Verfahren und Gerät zum Detektieren eines gesichtsähnlichen Gebiets | |
DE69936620D1 (de) | Verfahren und Vorrichtung zum Segmentieren von Handgebärden | |
DE69721941D1 (de) | Gerät und Verfahren zum Extrahieren von Mustern | |
DE59907147D1 (de) | Verfahren und Einrichtung zum teilweisen Anschmelzen von Gegenständen | |
DE69841288D1 (de) | Rechner und Verfahren zum Rechnerbetrieb | |
DE69914251D1 (de) | Verfahren und Vorrichtung zum Kleben von Platten | |
DE59903241D1 (de) | Programmgesteuerte einheit und verfahren zum debuggen derselben | |
DE69803380D1 (de) | Profilsegel und verfahren zum gebrauch desselben | |
DE69808881D1 (de) | Verfahren und einrichtung zum verbesserten verbindungsaufbau | |
DE60034527D1 (de) | Verfahren und Vorrichtung zum Ausrichten von Gegenständen | |
ATA106497A (de) | Verfahren und vorrichtung zum bohren von löchern | |
DE50001302D1 (de) | Verfahren und anordnung zum ausbeulen von blechteilen | |
DE69735912D1 (de) | Verfahren zum Sparen von Markierungsmaterial | |
DE50202136D1 (de) | Verfahren und anordnung zum erkennen von doppelabzügen | |
DE59903757D1 (de) | Verfahren zum verbinden, markieren und strukturellen verändern von monofilen | |
DE69922545D1 (de) | Verfahren und anordnung zum vernetzen von kontaktlinsen | |
DE69933028D1 (de) | Verfahren und anordnung zum wählen von versorgungsspannung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |