Movatterモバイル変換


[0]ホーム

URL:


US20020007450A1 - Line-oriented reorder buffer - Google Patents

Line-oriented reorder buffer
Download PDF

Info

Publication number
US20020007450A1
US20020007450A1US09/804,768US80476801AUS2002007450A1US 20020007450 A1US20020007450 A1US 20020007450A1US 80476801 AUS80476801 AUS 80476801AUS 2002007450 A1US2002007450 A1US 2002007450A1
Authority
US
United States
Prior art keywords
instruction
reorder buffer
instructions
storage
register
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.)
Granted
Application number
US09/804,768
Other versions
US6381689B2 (en
Inventor
David Witt
Thang Tran
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.)
GlobalFoundries Inc
Original Assignee
Individual
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
Priority claimed from US09/643,591external-prioritypatent/US6237082B1/en
Application filed by IndividualfiledCriticalIndividual
Priority to US09/804,768priorityCriticalpatent/US6381689B2/en
Publication of US20020007450A1publicationCriticalpatent/US20020007450A1/en
Application grantedgrantedCritical
Publication of US6381689B2publicationCriticalpatent/US6381689B2/en
Assigned to GLOBALFOUNDRIES INC.reassignmentGLOBALFOUNDRIES INC.AFFIRMATION OF PATENT ASSIGNMENTAssignors: ADVANCED MICRO DEVICES, INC.
Anticipated expirationlegal-statusCritical
Assigned to WILMINGTON TRUST, NATIONAL ASSOCIATIONreassignmentWILMINGTON TRUST, NATIONAL ASSOCIATIONSECURITY AGREEMENTAssignors: GLOBALFOUNDRIES INC.
Assigned to GLOBALFOUNDRIES INC.reassignmentGLOBALFOUNDRIES INC.RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS).Assignors: WILMINGTON TRUST, NATIONAL ASSOCIATION
Assigned to GLOBALFOUNDRIES U.S. INC.reassignmentGLOBALFOUNDRIES U.S. INC.RELEASE BY SECURED PARTY (SEE DOCUMENT FOR DETAILS).Assignors: WILMINGTON TRUST, NATIONAL ASSOCIATION
Expired - Lifetimelegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

A reorder buffer is configured into multiple lines of storage, wherein a line of storage includes sufficient storage for instruction results regarding a predefined maximum number of concurrently dispatchable instructions. A line of storage is allocated whenever one or more instructions are dispatched. A microprocessor employing the reorder buffer is also configured with fixed, symmetrical issue positions. The symmetrical nature of the issue positions may increase the average number of instructions to be concurrently dispatched and executed by the microprocessor. The average number of unused locations within the line decreases as the average number of concurrently dispatched instructions increases. One particular implementation of the reorder buffer includes a future file. The future file comprises a storage location corresponding to each register within the microprocessor. The reorder buffer tag (or instruction result, if the instruction has executed) of the last instruction in program order to update the register is stored in the future file. The reorder buffer provides the value (either reorder buffer tag or instruction result) stored in the storage location corresponding to a register when the register is used as a source operand for another instruction. Another advantage of the future file for microprocessors which allow access and update to portions of registers is that narrow-to-wide dependencies are resolved upon completion of the instruction which updates the narrower register.

Description

Claims (19)

What is claimed is:
1. A superscalar microprocessor comprising:
a plurality of fixed, symmetrical issue positions coupled to receive instructions, wherein an instruction received by one of said plurality of issue positions remains within said one of said plurality of issue positions until said instruction is executed by said one of said plurality of issue positions; and
a reorder buffer coupled to receive operand information regarding a plurality of concurrently dispatched instructions from said plurality of fixed, symmetrical issue positions, wherein said reorder buffer is configured to allocate storage for instruction results corresponding to said plurality of concurrently dispatched instructions.
2. The superscalar microprocessor as recited inclaim 1 wherein said reorder buffer is configured to allocate a fixed amount of storage upon receipt of said plurality of concurrently dispatched instructions, regardless of a number of said plurality of concurrently dispatched instructions.
3. The superscalar microprocessor as recited inclaim 2 wherein said fixed amount of storage comprises an amount of storage capable of storing instruction results corresponding to a maximum number of said plurality of concurrently dispatched instructions.
4. The superscalar microprocessor as recited inclaim 3 wherein said reorder buffer includes a buffer comprising multiple lines of storage, wherein each one of said multiple lines of storage comprises said fixed amount of storage.
5. The superscalar microprocessor as recited inclaim 4 wherein said reorder buffer is configured to retire a line of storage upon receipt of an instruction result for each of said plurality of concurrently dispatched instructions stored within said line of storage.
6. The superscalar microprocessor as recited inclaim 5 further comprising a register file coupled to said reorder buffer, wherein said reorder buffer retires a line of storage by storing the corresponding instruction results into said register file.
7. The superscalar microprocessor as recited inclaim 1 wherein said reorder buffer is configured to check dependencies of source operands indicated by said operand information against instruction results stored within said reorder buffer.
8. The superscalar microprocessor as recited inclaim 7 wherein said reorder buffer is configured to detect a particular instruction which updates a particular source operand.
9. The superscalar microprocessor as recited inclaim 8 wherein said particular instruction updates said particular source operand and said particular instruction is. flagged as the last instruction in program order within said reorder buffer to update said particular source operand.
10. The superscalar microprocessor as recited inclaim 1 wherein each one of said plurality of issue positions comprises a decode unit configured to decode an instruction.
11. The superscalar microprocessor as recited inclaim 10 wherein said decode unit comprises an early decode unit configured to detect said operand information corresponding to said instruction and to convey said operand information to said reorder buffer.
12. The superscalar microprocessor as recited inclaim 11 wherein said decode unit further comprises an opcode decode unit coupled to receive said instruction from said early decode unit wherein said opcode decode unit is configured to decode an opcode of said instruction.
13. The superscalar microprocessor as recited inclaim 10 wherein said each one of said plurality of issue positions further comprises a reservation station coupled to said opcode decode unit, wherein said reservation station is configured to store said instruction prior to instruction execution.
14. The superscalar microprocessor as recited inclaim 13 wherein said each one of said plurality of issue positions further comprises a functional unit coupled to said reservation station, wherein said functional unit is configured to execute said instruction.
15. The superscalar microprocessor as recited inclaim 14 wherein said functional unit is further configured to convey an instruction result corresponding to said instruction to said reorder buffer upon execution of said instruction.
16. A superscalar microprocessor comprising:
a first decode unit configured to decode a first instruction;
a second decode unit configured to decode a second instruction concurrently with said first decode unit decoding said first instruction;
a first reservation station coupled to receive said first instruction from said first decode unit, wherein said first reservation station is configured to store said first instruction until said first instruction is executed;
a second reservation station coupled to receive said second instruction from said second decode unit, wherein said second reservation station is configured to store said second instruction until said second instruction is executed; and
a reorder buffer coupled to said first decode unit and said second decode unit, wherein said reorder buffer receives an indication of said first instruction and said second instruction from said first decode unit and said second decode unit respectively, and wherein said reorder buffer is configured to allocate a line of storage to store a first instruction result corresponding to said first instruction and a second instruction result corresponding to said second instruction, and wherein said line of storage comprises a fixed amount of storage capable of storing instruction results corresponding to a maximum number of concurrently dispatchable instructions.
17. The superscalar microprocessor as recited inclaim 16 further comprising a first functional unit coupled to said first reservation station, wherein said first functional unit is configured to execute said first instruction and to provide said first instruction result to said reorder buffer.
18. The superscalar microprocessor as recited inclaim 17 wherein said reorder buffer is configured to associate said first instruction result with said first instruction due to receiving said first instruction result from said first functional unit.
19. The superscalar microprocessor as recited inclaim 18 wherein said first functional unit further provides a line tag identifying said line of storage within said reorder buffer.
US09/804,7681995-01-252001-03-13Line-oriented reorder buffer configured to selectively store a memory operation result in one of the plurality of reorder buffer storage locations corresponding to the executed instructionExpired - LifetimeUS6381689B2 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
US09/804,768US6381689B2 (en)1995-01-252001-03-13Line-oriented reorder buffer configured to selectively store a memory operation result in one of the plurality of reorder buffer storage locations corresponding to the executed instruction

Applications Claiming Priority (7)

Application NumberPriority DateFiling DateTitle
US37784395A1995-01-251995-01-25
US47687995A1995-06-071995-06-07
US08/690,384US5901302A (en)1995-01-251996-07-26Superscalar microprocessor having symmetrical, fixed issue positions each configured to execute a particular subset of instructions
US09/250,981US6026482A (en)1995-01-251999-02-16Recorder buffer and a method for allocating a fixed amount of storage for instruction results independent of a number of concurrently dispatched instructions
US09/458,816US6134651A (en)1995-01-251999-12-10Reorder buffer employed in a microprocessor to store instruction results having a plurality of entries predetermined to correspond to a plurality of functional units
US09/643,591US6237082B1 (en)1995-01-252000-08-22Reorder buffer configured to allocate storage for instruction results corresponding to predefined maximum number of concurrently receivable instructions independent of a number of instructions received
US09/804,768US6381689B2 (en)1995-01-252001-03-13Line-oriented reorder buffer configured to selectively store a memory operation result in one of the plurality of reorder buffer storage locations corresponding to the executed instruction

Related Parent Applications (1)

Application NumberTitlePriority DateFiling Date
US09/643,591ContinuationUS6237082B1 (en)1995-01-252000-08-22Reorder buffer configured to allocate storage for instruction results corresponding to predefined maximum number of concurrently receivable instructions independent of a number of instructions received

Publications (2)

Publication NumberPublication Date
US20020007450A1true US20020007450A1 (en)2002-01-17
US6381689B2 US6381689B2 (en)2002-04-30

Family

ID=27409383

Family Applications (4)

Application NumberTitlePriority DateFiling Date
US08/690,384Expired - LifetimeUS5901302A (en)1995-01-251996-07-26Superscalar microprocessor having symmetrical, fixed issue positions each configured to execute a particular subset of instructions
US09/250,981Expired - LifetimeUS6026482A (en)1995-01-251999-02-16Recorder buffer and a method for allocating a fixed amount of storage for instruction results independent of a number of concurrently dispatched instructions
US09/458,816Expired - LifetimeUS6134651A (en)1995-01-251999-12-10Reorder buffer employed in a microprocessor to store instruction results having a plurality of entries predetermined to correspond to a plurality of functional units
US09/804,768Expired - LifetimeUS6381689B2 (en)1995-01-252001-03-13Line-oriented reorder buffer configured to selectively store a memory operation result in one of the plurality of reorder buffer storage locations corresponding to the executed instruction

Family Applications Before (3)

Application NumberTitlePriority DateFiling Date
US08/690,384Expired - LifetimeUS5901302A (en)1995-01-251996-07-26Superscalar microprocessor having symmetrical, fixed issue positions each configured to execute a particular subset of instructions
US09/250,981Expired - LifetimeUS6026482A (en)1995-01-251999-02-16Recorder buffer and a method for allocating a fixed amount of storage for instruction results independent of a number of concurrently dispatched instructions
US09/458,816Expired - LifetimeUS6134651A (en)1995-01-251999-12-10Reorder buffer employed in a microprocessor to store instruction results having a plurality of entries predetermined to correspond to a plurality of functional units

Country Status (1)

CountryLink
US (4)US5901302A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6963961B1 (en)*2001-07-092005-11-08Lsi Logic CorporationIncreasing DSP efficiency by independent issuance of store address and data
US20100011166A1 (en)*2006-09-292010-01-14Mips Technologies, Inc.Data Cache Virtual Hint Way Prediction, and Applications Thereof
US8225034B1 (en)*2004-06-302012-07-17Oracle America, Inc.Hybrid instruction buffer
US20140053129A1 (en)*2012-08-152014-02-20Carl Von PlatenParallelization of Dataflow Actors with Local State
US8914615B2 (en)2011-12-022014-12-16Arm LimitedMapping same logical register specifier for different instruction sets with divergent association to architectural register file using common address format
WO2016028410A1 (en)*2014-07-142016-02-25Mill Computing, Inc.Execution and scheduling of software pipelined loops
US9946547B2 (en)2006-09-292018-04-17Arm Finance Overseas LimitedLoad/store unit for a processor, and applications thereof
CN109196489A (en)*2016-05-272019-01-11Arm有限公司Method and apparatus for reordering in non-homogeneous computing device
US10552152B2 (en)2016-05-272020-02-04Arm LimitedMethod and apparatus for scheduling in a non-uniform compute device
US10795815B2 (en)2016-05-272020-10-06Arm LimitedMethod and apparatus for maintaining data coherence in a non-uniform compute device
CN112052041A (en)*2020-10-102020-12-08乐鑫信息科技(上海)股份有限公司Method for updating register

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5901302A (en)*1995-01-251999-05-04Advanced Micro Devices, Inc.Superscalar microprocessor having symmetrical, fixed issue positions each configured to execute a particular subset of instructions
US6237082B1 (en)1995-01-252001-05-22Advanced Micro Devices, Inc.Reorder buffer configured to allocate storage for instruction results corresponding to predefined maximum number of concurrently receivable instructions independent of a number of instructions received
JP3510042B2 (en)1996-04-262004-03-22株式会社日立製作所 Database management method and system
US6108769A (en)1996-05-172000-08-22Advanced Micro Devices, Inc.Dependency table for reducing dependency checking hardware
US5903740A (en)1996-07-241999-05-11Advanced Micro Devices, Inc.Apparatus and method for retiring instructions in excess of the number of accessible write ports
US5768555A (en)1997-02-201998-06-16Advanced Micro Devices, Inc.Reorder buffer employing last in buffer and last in line bits
US6742111B2 (en)*1998-08-312004-05-25Stmicroelectronics, Inc.Reservation stations to increase instruction level parallelism
US6473833B1 (en)1999-07-302002-10-29International Business Machines CorporationIntegrated cache and directory structure for multi-level caches
US6487637B1 (en)1999-07-302002-11-26International Business Machines CorporationMethod and system for clearing dependent speculations from a request queue
US6418516B1 (en)1999-07-302002-07-09International Business Machines CorporationMethod and system for managing speculative requests in a multi-level memory hierarchy
US6438656B1 (en)*1999-07-302002-08-20International Business Machines CorporationMethod and system for cancelling speculative cache prefetch requests
US6542986B1 (en)*1999-11-092003-04-01Advanced Micro Devices, Inc.Resolving dependencies among concurrently dispatched instructions in a superscalar microprocessor
US6647462B1 (en)*2000-06-292003-11-11Motorola, Inc.Apparatus and a method for providing decoded information
US20030182540A1 (en)*2002-03-212003-09-25International Business Machines CorporationMethod for limiting physical resource usage in a virtual tag allocation environment of a microprocessor
US7225299B1 (en)2003-07-162007-05-29Transmeta CorporationSupporting speculative modification in a data cache
US7149851B1 (en)2003-08-212006-12-12Transmeta CorporationMethod and system for conservatively managing store capacity available to a processor issuing stores
US7237096B1 (en)*2004-04-052007-06-26Sun Microsystems, Inc.Storing results of producer instructions to facilitate consumer instruction dependency tracking
US7600099B2 (en)*2007-03-082009-10-06International Business Machines CorporationSystem and method for predictive early allocation of stores in a microprocessor
US20090133022A1 (en)*2007-11-152009-05-21Karim Faraydon OMultiprocessing apparatus, system and method
US9542323B2 (en)2014-03-282017-01-10Samsung Electronics Co., Ltd.Address re-ordering mechanism for efficient pre-fetch training in an out-of-order processor
US9928117B2 (en)*2015-12-112018-03-27Vivante CorporationHardware access counters and event generation for coordinating multithreaded processing
US11144324B2 (en)*2019-09-272021-10-12Advanced Micro Devices, Inc.Retire queue compression

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
AT354159B (en)*1975-02-101979-12-27Siemens Ag ASSOCIATIVE STORAGE WITH SEPARATELY ASSOCIATED AREAS
US4453212A (en)*1981-07-131984-06-05Burroughs CorporationExtended address generating apparatus and method
US4928223A (en)*1982-10-061990-05-22Fairchild Semiconductor CorporationFloating point microprocessor with directable two level microinstructions
US4807115A (en)*1983-10-071989-02-21Cornell Research Foundation, Inc.Instruction issuing mechanism for processors with multiple functional units
EP0239081B1 (en)*1986-03-261995-09-06Hitachi, Ltd.Pipelined data processor capable of decoding and executing plural instructions in parallel
CA1286784C (en)*1986-08-271991-07-23Joseph A. Petolino, Jr.Cache storage queue
JP2810068B2 (en)*1988-11-111998-10-15株式会社日立製作所 Processor system, computer system, and instruction processing method
US5067069A (en)*1989-02-031991-11-19Digital Equipment CorporationControl of multiple functional units with parallel operation in a microcoded execution unit
US5226126A (en)*1989-02-241993-07-06Nexgen MicrosystemsProcessor having plurality of functional units for orderly retiring outstanding operations based upon its associated tags
US5129067A (en)*1989-06-061992-07-07Advanced Micro Devices, Inc.Multiple instruction decoder for minimizing register port requirements
US5136697A (en)*1989-06-061992-08-04Advanced Micro Devices, Inc.System for reducing delay for execution subsequent to correctly predicted branch instruction using fetch information stored with each block of instructions in cache
US5471593A (en)*1989-12-111995-11-28Branigin; Michael H.Computer processor with an efficient means of executing many instructions simultaneously
US5226130A (en)*1990-02-261993-07-06Nexgen MicrosystemsMethod and apparatus for store-into-instruction-stream detection and maintaining branch prediction cache consistency
US5053631A (en)*1990-04-021991-10-01Advanced Micro Devices, Inc.Pipelined floating point processing unit
US5058048A (en)*1990-04-021991-10-15Advanced Micro Devices, Inc.Normalizing pipelined floating point processing unit
DE69130588T2 (en)*1990-05-291999-05-27National Semiconductor Corp., Santa Clara, Calif. Partially decoded instruction cache and method therefor
US5197132A (en)*1990-06-291993-03-23Digital Equipment CorporationRegister mapping system having a log containing sequential listing of registers that were changed in preceding cycles for precise post-branch recovery
US5355457A (en)*1991-05-211994-10-11Motorola, Inc.Data processor for performing simultaneous instruction retirement and backtracking
JP2908598B2 (en)*1991-06-061999-06-21松下電器産業株式会社 Information processing device
US5539911A (en)*1991-07-081996-07-23Seiko Epson CorporationHigh-performance, superscalar-based computer system with out-of-order instruction execution
EP0547247B1 (en)*1991-07-082001-04-04Seiko Epson CorporationExtensible risc microprocessor architecture
US5345569A (en)*1991-09-201994-09-06Advanced Micro Devices, Inc.Apparatus and method for resolving dependencies among a plurality of instructions within a storage device
GB2263987B (en)*1992-02-061996-03-06Intel CorpEnd bit markers for instruction decode
GB2263985B (en)*1992-02-061995-06-14Intel CorpTwo stage window multiplexors for deriving variable length instructions from a stream of instructions
EP0636256B1 (en)*1992-03-311997-06-04Seiko Epson CorporationSuperscalar risc processor instruction scheduling
IE80854B1 (en)*1993-08-261999-04-07Intel CorpProcessor ordering consistency for a processor performing out-of-order instruction execution
US5574935A (en)*1993-12-291996-11-12Intel CorporationSuperscalar processor with a multi-port reorder buffer
US5524263A (en)*1994-02-251996-06-04Intel CorporationMethod and apparatus for partial and full stall handling in allocation
US5584037A (en)*1994-03-011996-12-10Intel CorporationEntry allocation in a circular buffer
US5623628A (en)*1994-03-021997-04-22Intel CorporationComputer system and method for maintaining memory consistency in a pipelined, non-blocking caching bus request queue
US5559976A (en)*1994-03-311996-09-24International Business Machines CorporationSystem for instruction completion independent of result write-back responsive to both exception free completion of execution and completion of all logically prior instructions
US5644779A (en)*1994-04-151997-07-01International Business Machines CorporationProcessing system and method of operation for concurrent processing of branch instructions with cancelling of processing of a branch instruction
US5696955A (en)*1994-06-011997-12-09Advanced Micro Devices, Inc.Floating point stack and exchange instruction
US5632023A (en)*1994-06-011997-05-20Advanced Micro Devices, Inc.Superscalar microprocessor including flag operand renaming and forwarding apparatus
US5535346A (en)*1994-07-051996-07-09Motorola, Inc.Data processor with future file with parallel update and method of operation
US5742784A (en)*1995-01-251998-04-21International Business Machines CorporationSystem for reordering of instructions before placement into cache to reduce dispatch latency
US5878244A (en)*1995-01-251999-03-02Advanced Micro Devices, Inc.Reorder buffer configured to allocate storage capable of storing results corresponding to a maximum number of concurrently receivable instructions regardless of a number of instructions received
US5903741A (en)*1995-01-251999-05-11Advanced Micro Devices, Inc.Method of allocating a fixed reorder buffer storage line for execution results regardless of a number of concurrently dispatched instructions
US5901302A (en)*1995-01-251999-05-04Advanced Micro Devices, Inc.Superscalar microprocessor having symmetrical, fixed issue positions each configured to execute a particular subset of instructions
US5887152A (en)*1995-04-121999-03-23Advanced Micro Devices, Inc.Load/store unit with multiple oldest outstanding instruction pointers for completing store and load/store miss instructions
JP3720371B2 (en)*1995-10-062005-11-24アドバンスト・マイクロ・デバイシズ・インコーポレイテッド Unified functional operations scheduler for OUT-OF-ORDER execution in superscaler processors
US5903740A (en)*1996-07-241999-05-11Advanced Micro Devices, Inc.Apparatus and method for retiring instructions in excess of the number of accessible write ports
US5872951A (en)*1996-07-261999-02-16Advanced Micro Design, Inc.Reorder buffer having a future file for storing speculative instruction execution results
US5983342A (en)*1996-09-121999-11-09Advanced Micro Devices, Inc.Superscalar microprocessor employing a future file for storing results into multiportion registers
US5765016A (en)*1996-09-121998-06-09Advanced Micro Devices, Inc.Reorder buffer configured to store both speculative and committed register states
US5734624A (en)*1996-10-311998-03-31The United States Of America As Represented By The Secretary Of The NavyWide-band omni telemetry system
US5870580A (en)*1996-12-131999-02-09Advanced Micro Devices, Inc.Decoupled forwarding reorder buffer configured to allocate storage in chunks for instructions having unresolved dependencies
US5881305A (en)*1996-12-131999-03-09Advanced Micro Devices, Inc.Register rename stack for a microprocessor
US5768555A (en)*1997-02-201998-06-16Advanced Micro Devices, Inc.Reorder buffer employing last in buffer and last in line bits

Cited By (20)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6963961B1 (en)*2001-07-092005-11-08Lsi Logic CorporationIncreasing DSP efficiency by independent issuance of store address and data
US8225034B1 (en)*2004-06-302012-07-17Oracle America, Inc.Hybrid instruction buffer
US9946547B2 (en)2006-09-292018-04-17Arm Finance Overseas LimitedLoad/store unit for a processor, and applications thereof
US20100011166A1 (en)*2006-09-292010-01-14Mips Technologies, Inc.Data Cache Virtual Hint Way Prediction, and Applications Thereof
US10768939B2 (en)2006-09-292020-09-08Arm Finance Overseas LimitedLoad/store unit for a processor, and applications thereof
US10430340B2 (en)2006-09-292019-10-01Arm Finance Overseas LimitedData cache virtual hint way prediction, and applications thereof
US9092343B2 (en)*2006-09-292015-07-28Arm Finance Overseas LimitedData cache virtual hint way prediction, and applications thereof
US10268481B2 (en)2006-09-292019-04-23Arm Finance Overseas LimitedLoad/store unit for a processor, and applications thereof
US9632939B2 (en)2006-09-292017-04-25Arm Finance Overseas LimitedData cache virtual hint way prediction, and applications thereof
US8914615B2 (en)2011-12-022014-12-16Arm LimitedMapping same logical register specifier for different instruction sets with divergent association to architectural register file using common address format
US8893080B2 (en)*2012-08-152014-11-18Telefonaktiebolaget L M Ericsson (Publ)Parallelization of dataflow actors with local state
US20140053129A1 (en)*2012-08-152014-02-20Carl Von PlatenParallelization of Dataflow Actors with Local State
US9817669B2 (en)2014-07-142017-11-14Mill Computing, Inc.Computer processor employing explicit operations that support execution of software pipelined loops and a compiler that utilizes such operations for scheduling software pipelined loops
WO2016028410A1 (en)*2014-07-142016-02-25Mill Computing, Inc.Execution and scheduling of software pipelined loops
CN109196489A (en)*2016-05-272019-01-11Arm有限公司Method and apparatus for reordering in non-homogeneous computing device
US10445094B2 (en)*2016-05-272019-10-15Arm LimitedMethod and apparatus for reordering in a non-uniform compute device
US10552152B2 (en)2016-05-272020-02-04Arm LimitedMethod and apparatus for scheduling in a non-uniform compute device
US10795815B2 (en)2016-05-272020-10-06Arm LimitedMethod and apparatus for maintaining data coherence in a non-uniform compute device
CN112052041A (en)*2020-10-102020-12-08乐鑫信息科技(上海)股份有限公司Method for updating register
US12112170B2 (en)2020-10-102024-10-08Espressif Systems (Shanghai) Co., Ltd.Register update method

Also Published As

Publication numberPublication date
US6381689B2 (en)2002-04-30
US5901302A (en)1999-05-04
US6026482A (en)2000-02-15
US6134651A (en)2000-10-17

Similar Documents

PublicationPublication DateTitle
US6381689B2 (en)Line-oriented reorder buffer configured to selectively store a memory operation result in one of the plurality of reorder buffer storage locations corresponding to the executed instruction
US5872951A (en)Reorder buffer having a future file for storing speculative instruction execution results
US6209084B1 (en)Dependency table for reducing dependency checking hardware
US6006317A (en)Apparatus and method performing speculative stores
US6032251A (en)Computer system including a microprocessor having a reorder buffer employing last in buffer and last in line indications
US6189089B1 (en)Apparatus and method for retiring instructions in excess of the number of accessible write ports
US5845101A (en)Prefetch buffer for storing instructions prior to placing the instructions in an instruction cache
US5983342A (en)Superscalar microprocessor employing a future file for storing results into multiportion registers
US5822575A (en)Branch prediction storage for storing branch prediction information such that a corresponding tag may be routed with the branch instruction
US6122729A (en)Prefetch buffer which stores a pointer indicating an initial predecode position
US5828873A (en)Assembly queue for a floating point unit
EP1204022A1 (en)A line-oriented reorder buffer for a superscalar microprocessor
US6014741A (en)Apparatus and method for predicting an end of a microcode loop
US5960467A (en)Apparatus for efficiently providing memory operands for instructions
US5878244A (en)Reorder buffer configured to allocate storage capable of storing results corresponding to a maximum number of concurrently receivable instructions regardless of a number of instructions received
US6032252A (en)Apparatus and method for efficient loop control in a superscalar microprocessor
US5765016A (en)Reorder buffer configured to store both speculative and committed register states
US5870579A (en)Reorder buffer including a circuit for selecting a designated mask corresponding to an instruction that results in an exception
US5920710A (en)Apparatus and method for modifying status bits in a reorder buffer with a large speculative state
US5870580A (en)Decoupled forwarding reorder buffer configured to allocate storage in chunks for instructions having unresolved dependencies
US5813045A (en)Conditional early data address generation mechanism for a microprocessor
US6237082B1 (en)Reorder buffer configured to allocate storage for instruction results corresponding to predefined maximum number of concurrently receivable instructions independent of a number of instructions received
US5903741A (en)Method of allocating a fixed reorder buffer storage line for execution results regardless of a number of concurrently dispatched instructions
EP1012708B1 (en)A line-oriented reorder buffer for a superscalar microprocessor
EP1012707B1 (en)A dependency table for reducing dependency checking hardware

Legal Events

DateCodeTitleDescription
STCFInformation on status: patent grant

Free format text:PATENTED CASE

CCCertificate of correction
FPAYFee payment

Year of fee payment:4

ASAssignment

Owner name:GLOBALFOUNDRIES INC., CAYMAN ISLANDS

Free format text:AFFIRMATION OF PATENT ASSIGNMENT;ASSIGNOR:ADVANCED MICRO DEVICES, INC.;REEL/FRAME:023119/0083

Effective date:20090630

FPAYFee payment

Year of fee payment:8

FPAYFee payment

Year of fee payment:12

ASAssignment

Owner name:WILMINGTON TRUST, NATIONAL ASSOCIATION, DELAWARE

Free format text:SECURITY AGREEMENT;ASSIGNOR:GLOBALFOUNDRIES INC.;REEL/FRAME:049490/0001

Effective date:20181127

ASAssignment

Owner name:GLOBALFOUNDRIES INC., CAYMAN ISLANDS

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION;REEL/FRAME:054636/0001

Effective date:20201117

ASAssignment

Owner name:GLOBALFOUNDRIES U.S. INC., NEW YORK

Free format text:RELEASE BY SECURED PARTY;ASSIGNOR:WILMINGTON TRUST, NATIONAL ASSOCIATION;REEL/FRAME:056987/0001

Effective date:20201117


[8]ページ先頭

©2009-2025 Movatter.jp