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 befehlen

Info

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
Application number
DE69904083T
Other languages
English (en)
Other versions
DE69904083T2 (de
Inventor
S Asato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Application granted granted Critical
Publication of DE69904083D1 publication Critical patent/DE69904083D1/de
Publication of DE69904083T2 publication Critical patent/DE69904083T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3804Instruction prefetching for branches, e.g. hedging, branch folding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative 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)
DE69904083T 1998-10-05 1999-07-08 Anordnung und verfahren zum etikettieren und ungültig-erklären von spekulativ ausgeführten befehlen Expired - Fee Related DE69904083T2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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