SE513431C2 - Buffert för icke-rapporterade hopp - Google Patents

Buffert för icke-rapporterade hopp

Info

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
Application number
SE9900042A
Other languages
English (en)
Swedish (sv)
Other versions
SE9900042L (sv
SE9900042D0 (sv
Inventor
Hans Christian Pettersson
Paer David Berglin
Original Assignee
Ericsson Telefon Ab L M
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 Ericsson Telefon Ab L M filed Critical Ericsson Telefon Ab L M
Priority to SE9900042A priority Critical patent/SE513431C2/sv
Publication of SE9900042D0 publication Critical patent/SE9900042D0/xx
Priority to SE9901844A priority patent/SE521071C2/sv
Priority to AU21343/00A priority patent/AU2134300A/en
Priority to PCT/SE1999/002361 priority patent/WO2000042500A1/en
Priority to EP99965652A priority patent/EP1190313B1/de
Priority to PCT/SE1999/002362 priority patent/WO2000042501A1/en
Priority to CA002360283A priority patent/CA2360283A1/en
Priority to DE69939880T priority patent/DE69939880D1/de
Priority to EP99965651A priority patent/EP1190312B1/de
Priority to CA002360284A priority patent/CA2360284A1/en
Priority to AU21344/00A priority patent/AU2134400A/en
Priority to US09/479,954 priority patent/US6550003B1/en
Publication of SE9900042L publication Critical patent/SE9900042L/
Publication of SE513431C2 publication Critical patent/SE513431C2/sv

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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • 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/3838Dependency mechanisms, e.g. register scoreboarding
    • 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
    • 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/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3856Reordering of instructions, e.g. using queues or age tags
    • 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/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result 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)
SE9900042A 1999-01-11 1999-01-11 Buffert för icke-rapporterade hopp SE513431C2 (sv)

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)

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

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

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