WO2007100487A3 - Distributive scoreboard scheduling in an out-of-order processor - Google Patents

Distributive scoreboard scheduling in an out-of-order processor Download PDF

Info

Publication number
WO2007100487A3
WO2007100487A3 PCT/US2007/003752 US2007003752W WO2007100487A3 WO 2007100487 A3 WO2007100487 A3 WO 2007100487A3 US 2007003752 W US2007003752 W US 2007003752W WO 2007100487 A3 WO2007100487 A3 WO 2007100487A3
Authority
WO
WIPO (PCT)
Prior art keywords
instruction
distributive
scoreboard
operand availability
availability bits
Prior art date
Application number
PCT/US2007/003752
Other languages
French (fr)
Other versions
WO2007100487A2 (en
Inventor
Xing Yu Jiang
Original Assignee
Mips Tech Inc
Xing Yu Jiang
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 Mips Tech Inc, Xing Yu Jiang filed Critical Mips Tech Inc
Priority to GB0814234A priority Critical patent/GB2448276B/en
Priority to CN200780007020.XA priority patent/CN101395573B/en
Publication of WO2007100487A2 publication Critical patent/WO2007100487A2/en
Publication of WO2007100487A3 publication Critical patent/WO2007100487A3/en

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, look ahead
    • G06F9/3824Operand accessing
    • 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, look ahead
    • G06F9/3824Operand accessing
    • G06F9/3826Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
    • 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, 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, 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, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3838Dependency mechanisms, e.g. register scoreboarding
    • G06F9/384Register renaming
    • 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, look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units

Abstract

A processor core and a method for distributive Scoreboard scheduling in an out-of-order processor pipeline. In an embodiment, control logic appends operand availability bits to each instruction. The appended operand availability bits form a distributive Scoreboard for each instruction. The appended operand availability bits are propagated together with the instruction through multiple stages of the processor pipeline. An instruction dispatch buffer stores the instruction and the operand availability bits. A dispatch controller determines when an instruction is to be issued. The determination is based, at least in part, on the operand availability bits stored in the instruction dispatch buffer.
PCT/US2007/003752 2006-02-28 2007-02-12 Distributive scoreboard scheduling in an out-of-order processor WO2007100487A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
GB0814234A GB2448276B (en) 2006-02-28 2007-02-12 Distributive scoreboard scheduling in an out-of-order processor
CN200780007020.XA CN101395573B (en) 2006-02-28 2007-02-12 Distributive scoreboard scheduling in an out-of order processor

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/362,764 US7721071B2 (en) 2006-02-28 2006-02-28 System and method for propagating operand availability prediction bits with instructions through a pipeline in an out-of-order processor
US11/362,764 2006-02-28

Publications (2)

Publication Number Publication Date
WO2007100487A2 WO2007100487A2 (en) 2007-09-07
WO2007100487A3 true WO2007100487A3 (en) 2007-11-22

Family

ID=38265592

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2007/003752 WO2007100487A2 (en) 2006-02-28 2007-02-12 Distributive scoreboard scheduling in an out-of-order processor

Country Status (4)

Country Link
US (1) US7721071B2 (en)
CN (1) CN101395573B (en)
GB (1) GB2448276B (en)
WO (1) WO2007100487A2 (en)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8990543B2 (en) 2008-03-11 2015-03-24 Qualcomm Incorporated System and method for generating and using predicates within a single instruction packet
US7502918B1 (en) 2008-03-28 2009-03-10 International Business Machines Corporation Method and system for data dependent performance increment and power reduction
FR2941117B1 (en) * 2009-01-15 2011-02-11 Peugeot Citroen Automobiles Sa METHOD AND DEVICE FOR MONITORING ALARM, OF ORGANS BELONGING TO AT LEAST ONE MULTIPLEX NETWORK, BY COUNTING INTEMPESTIVE REVERSES
US20130197710A1 (en) * 2010-04-26 2013-08-01 Dong Energy A/S Dispatch controller for a distributed electrical power system
CN102215162B (en) * 2011-03-24 2014-07-30 无锡众志和达数据计算股份有限公司 Method for processing optical fiber I/O (input/ output) out-of-order frames based on field programmable gate array
US9529596B2 (en) 2011-07-01 2016-12-27 Intel Corporation Method and apparatus for scheduling instructions in a multi-strand out of order processor with instruction synchronization bits and scoreboard bits
EP2862068B1 (en) 2012-06-15 2022-07-06 Intel Corporation Reordered speculative instruction sequences with a disambiguation-free out of order load store queue
WO2013188701A1 (en) * 2012-06-15 2013-12-19 Soft Machines, Inc. A method and system for implementing recovery from speculative forwarding miss-predictions/errors resulting from load store reordering and optimization
WO2013188754A1 (en) 2012-06-15 2013-12-19 Soft Machines, Inc. A disambiguation-free out of order load store queue
WO2013188460A2 (en) 2012-06-15 2013-12-19 Soft Machines, Inc. A virtual load store queue having a dynamic dispatch window with a distributed structure
KR101993562B1 (en) 2012-06-15 2019-09-30 인텔 코포레이션 An instruction definition to implement load store reordering and optimization
WO2013188705A2 (en) 2012-06-15 2013-12-19 Soft Machines, Inc. A virtual load store queue having a dynamic dispatch window with a unified structure
US20140129805A1 (en) * 2012-11-08 2014-05-08 Nvidia Corporation Execution pipeline power reduction
US9424041B2 (en) * 2013-03-15 2016-08-23 Samsung Electronics Co., Ltd. Efficient way to cancel speculative ‘source ready’ in scheduler for direct and nested dependent instructions
US10127046B2 (en) 2014-12-14 2018-11-13 Via Alliance Semiconductor Co., Ltd. Mechanism to preclude uncacheable-dependent load replays in out-of-order processor
JP6286066B2 (en) 2014-12-14 2018-02-28 ヴィア アライアンス セミコンダクター カンパニー リミテッド Power-saving mechanism to reduce load replay in out-of-order processors
US10146540B2 (en) 2014-12-14 2018-12-04 Via Alliance Semiconductor Co., Ltd Apparatus and method to preclude load replays dependent on write combining memory space access in an out-of-order processor
WO2016097811A1 (en) * 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Mechanism to preclude load replays dependent on fuse array access in out-of-order processor
WO2016097803A1 (en) 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Mechanism to preclude uncacheable-dependent load replays in out-of-order processor
US10120689B2 (en) 2014-12-14 2018-11-06 Via Alliance Semiconductor Co., Ltd Mechanism to preclude load replays dependent on off-die control element access in an out-of-order processor
WO2016097792A1 (en) 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Apparatus and method to preclude load replays dependent on write combining memory space access in out-of-order processor
US10089112B2 (en) 2014-12-14 2018-10-02 Via Alliance Semiconductor Co., Ltd Mechanism to preclude load replays dependent on fuse array access in an out-of-order processor
US10114646B2 (en) 2014-12-14 2018-10-30 Via Alliance Semiconductor Co., Ltd Programmable load replay precluding mechanism
WO2016097796A1 (en) 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Mechanism to preclude i/o-dependent load replays in out-of-order processor
US10114794B2 (en) 2014-12-14 2018-10-30 Via Alliance Semiconductor Co., Ltd Programmable load replay precluding mechanism
US10175984B2 (en) 2014-12-14 2019-01-08 Via Alliance Semiconductor Co., Ltd Apparatus and method to preclude non-core cache-dependent load replays in an out-of-order processor
US10146547B2 (en) 2014-12-14 2018-12-04 Via Alliance Semiconductor Co., Ltd. Apparatus and method to preclude non-core cache-dependent load replays in an out-of-order processor
US10228944B2 (en) 2014-12-14 2019-03-12 Via Alliance Semiconductor Co., Ltd. Apparatus and method for programmable load replay preclusion
US10146539B2 (en) 2014-12-14 2018-12-04 Via Alliance Semiconductor Co., Ltd. Load replay precluding mechanism
JP6286065B2 (en) 2014-12-14 2018-02-28 ヴィア アライアンス セミコンダクター カンパニー リミテッド Apparatus and method for excluding load replay depending on write-coupled memory area access of out-of-order processor
US10108428B2 (en) 2014-12-14 2018-10-23 Via Alliance Semiconductor Co., Ltd Mechanism to preclude load replays dependent on long load cycles in an out-of-order processor
US10108420B2 (en) 2014-12-14 2018-10-23 Via Alliance Semiconductor Co., Ltd Mechanism to preclude load replays dependent on long load cycles in an out-of-order processor
US9804845B2 (en) 2014-12-14 2017-10-31 Via Alliance Semiconductor Co., Ltd. Apparatus and method to preclude X86 special bus cycle load replays in an out-of-order processor
US10083038B2 (en) 2014-12-14 2018-09-25 Via Alliance Semiconductor Co., Ltd Mechanism to preclude load replays dependent on page walks in an out-of-order processor
US10088881B2 (en) 2014-12-14 2018-10-02 Via Alliance Semiconductor Co., Ltd Mechanism to preclude I/O-dependent load replays in an out-of-order processor
US10146546B2 (en) 2014-12-14 2018-12-04 Via Alliance Semiconductor Co., Ltd Load replay precluding mechanism
US10108429B2 (en) 2014-12-14 2018-10-23 Via Alliance Semiconductor Co., Ltd Mechanism to preclude shared RAM-dependent load replays in an out-of-order processor
EP3055769B1 (en) 2014-12-14 2018-10-31 VIA Alliance Semiconductor Co., Ltd. Mechanism to preclude load replays dependent on page walks in out-of-order processor
US10108421B2 (en) 2014-12-14 2018-10-23 Via Alliance Semiconductor Co., Ltd Mechanism to preclude shared ram-dependent load replays in an out-of-order processor
WO2016097815A1 (en) 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Apparatus and method to preclude x86 special bus cycle load replays in out-of-order processor
WO2016097793A1 (en) 2014-12-14 2016-06-23 Via Alliance Semiconductor Co., Ltd. Mechanism to preclude load replays dependent on off-die control element access in out-of-order processor
US11544214B2 (en) 2015-02-02 2023-01-03 Optimum Semiconductor Technologies, Inc. Monolithic vector processor configured to operate on variable length vectors using a vector length register
US10108417B2 (en) * 2015-08-14 2018-10-23 Qualcomm Incorporated Storing narrow produced values for instruction operands directly in a register map in an out-of-order processor
CN105653790B (en) * 2015-12-29 2019-03-29 东南大学—无锡集成电路技术研究所 A kind of out-of order processor Cache memory access performance estimating method based on artificial neural network
US11687345B2 (en) 2016-04-28 2023-06-27 Microsoft Technology Licensing, Llc Out-of-order block-based processors and instruction schedulers using ready state data indexed by instruction position identifiers
US10445100B2 (en) * 2016-06-09 2019-10-15 International Business Machines Corporation Broadcasting messages between execution slices for issued instructions indicating when execution results are ready
GB2563582B (en) 2017-06-16 2020-01-01 Imagination Tech Ltd Methods and systems for inter-pipeline data hazard avoidance
CN108279928B (en) * 2018-01-30 2021-03-19 上海兆芯集成电路有限公司 Micro instruction scheduling method and device using same
CN108415730B (en) * 2018-01-30 2021-06-01 上海兆芯集成电路有限公司 Micro instruction scheduling method and device using same
US11429555B2 (en) * 2019-02-26 2022-08-30 Apple Inc. Coprocessors with bypass optimization, variable grid architecture, and fused vector operations
US10956168B2 (en) * 2019-03-08 2021-03-23 International Business Machines Corporation Post completion execution in an out-of-order processor design
US11086626B2 (en) * 2019-10-24 2021-08-10 Arm Limited Circuitry and methods
CN111258657B (en) * 2020-01-23 2020-11-20 上海燧原智能科技有限公司 Pipeline control method and related equipment
CN111506347B (en) * 2020-03-27 2023-05-26 上海赛昉科技有限公司 Renaming method based on instruction read-after-write related hypothesis
CN111538534B (en) * 2020-04-07 2023-08-08 江南大学 Multi-instruction out-of-order transmitting method and processor based on instruction wither
CN113867793A (en) * 2020-06-30 2021-12-31 上海寒武纪信息科技有限公司 Computing device, integrated circuit chip, board card, electronic equipment and computing method
US11687347B2 (en) * 2021-05-25 2023-06-27 Andes Technology Corporation Microprocessor and method for speculatively issuing load/store instruction with non-deterministic access time using scoreboard
CN114610394B (en) * 2022-03-14 2023-12-22 海飞科(南京)信息技术有限公司 Instruction scheduling method, processing circuit and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5546545A (en) * 1994-12-09 1996-08-13 International Business Machines Corporation Rotating priority selection logic circuit
GB2322718A (en) * 1996-12-09 1998-09-02 Ibm Dynamic classification and dispatch of instructions out of order
US6393550B1 (en) * 1993-12-30 2002-05-21 Intel Corporation Method and apparatus for pipeline streamlining where resources are immediate or certainly retired

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5109520A (en) * 1985-02-19 1992-04-28 Tektronix, Inc. Image frame buffer access speedup by providing multiple buffer controllers each containing command FIFO buffers
US5021945A (en) * 1985-10-31 1991-06-04 Mcc Development, Ltd. Parallel processor system for processing natural concurrencies and method therefor
US5781753A (en) * 1989-02-24 1998-07-14 Advanced Micro Devices, Inc. Semi-autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for speculative and out-of-order execution of complex instructions
US5091851A (en) * 1989-07-19 1992-02-25 Hewlett-Packard Company Fast multiple-word accesses from a multi-way set-associative cache memory
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
ATE158882T1 (en) * 1990-06-15 1997-10-15 Compaq Computer Corp DEVICE FOR TRUE LRU REPLACEMENT
DE69227604T2 (en) * 1991-03-11 1999-06-24 Silicon Graphics Inc Mountain Backwards compatible computer architecture with extended word widths and address space
US5961629A (en) * 1991-07-08 1999-10-05 Seiko Epson Corporation High performance, superscalar-based computer system with out-of-order instruction execution
US5493667A (en) * 1993-02-09 1996-02-20 Intel Corporation Apparatus and method for an instruction cache locking scheme
US6079014A (en) * 1993-12-02 2000-06-20 Intel Corporation Processor that redirects an instruction fetch pipeline immediately upon detection of a mispredicted branch while committing prior instructions to an architectural state
US5493523A (en) * 1993-12-15 1996-02-20 Silicon Graphics, Inc. Mechanism and method for integer divide involving pre-alignment of the divisor relative to the dividend
US5740402A (en) * 1993-12-15 1998-04-14 Silicon Graphics, Inc. Conflict resolution in interleaved memory systems with multiple parallel accesses
US5604909A (en) * 1993-12-15 1997-02-18 Silicon Graphics Computer Systems, Inc. Apparatus for processing instructions in a computing system
US5537538A (en) * 1993-12-15 1996-07-16 Silicon Graphics, Inc. Debug mode for a superscalar RISC processor
US5572704A (en) * 1993-12-15 1996-11-05 Silicon Graphics, Inc. System and method for controlling split-level caches in a multi-processor system including data loss and deadlock prevention schemes
US5526504A (en) * 1993-12-15 1996-06-11 Silicon Graphics, Inc. Variable page size translation lookaside buffer
US5510934A (en) * 1993-12-15 1996-04-23 Silicon Graphics, Inc. Memory system including local and global caches for storing floating point and integer data
US5606683A (en) * 1994-01-28 1997-02-25 Quantum Effect Design, Inc. Structure and method for virtual-to-physical address translation in a translation lookaside buffer
US5586278A (en) * 1994-03-01 1996-12-17 Intel Corporation Method and apparatus for state recovery following branch misprediction in an out-of-order microprocessor
US5555432A (en) * 1994-08-19 1996-09-10 Intel Corporation Circuit and method for scheduling instructions by predicting future availability of resources required for execution
US6216200B1 (en) * 1994-10-14 2001-04-10 Mips Technologies, Inc. Address queue
WO1996012228A1 (en) * 1994-10-14 1996-04-25 Silicon Graphics, Inc. Redundant mapping tables
EP0803095A1 (en) * 1994-10-14 1997-10-29 Silicon Graphics, Inc. Indexing and multiplexing of interleaved cache memory arrays
WO1996012231A1 (en) * 1994-10-14 1996-04-25 Silicon Graphics, Inc. A translation buffer for detecting and preventing conflicting virtual addresses from being stored therein
US5625789A (en) * 1994-10-24 1997-04-29 International Business Machines Corporation Apparatus for source operand dependendency analyses register renaming and rapid pipeline recovery in a microprocessor that issues and executes multiple instructions out-of-order in a single cycle
US5675758A (en) * 1994-11-15 1997-10-07 Advanced Micro Devices, Inc. Processor having primary integer execution unit and supplemental integer execution unit for performing out-of-order add and move operations
US5732242A (en) * 1995-03-24 1998-03-24 Silicon Graphics, Inc. Consistently specifying way destinations through prefetching hints
US5799165A (en) * 1996-01-26 1998-08-25 Advanced Micro Devices, Inc. Out-of-order processing that removes an issued operation from an execution pipeline upon determining that the operation would cause a lengthy pipeline delay
US5764999A (en) * 1995-10-10 1998-06-09 Cyrix Corporation Enhanced system management mode with nesting
US5670898A (en) * 1995-11-22 1997-09-23 Silicon Graphics, Inc. Low-power, compact digital logic topology that facilitates large fan-in and high-speed circuit performance
US5734881A (en) * 1995-12-15 1998-03-31 Cyrix Corporation Detecting short branches in a prefetch buffer using target location information in a branch target cache
US6108769A (en) * 1996-05-17 2000-08-22 Advanced Micro Devices, Inc. Dependency table for reducing dependency checking hardware
GB2317469B (en) * 1996-09-23 2001-02-21 Advanced Risc Mach Ltd Data processing system register control
US5966734A (en) * 1996-10-18 1999-10-12 Samsung Electronics Co., Ltd. Resizable and relocatable memory scratch pad as a cache slice
US5802386A (en) * 1996-11-19 1998-09-01 International Business Machines Corporation Latency-based scheduling of instructions in a superscalar processor
US5909572A (en) * 1996-12-02 1999-06-01 Compaq Computer Corp. System and method for conditionally moving an operand from a source register to a destination register
US6044478A (en) * 1997-05-30 2000-03-28 National Semiconductor Corporation Cache with finely granular locked-down regions
US6286130B1 (en) * 1997-08-05 2001-09-04 Intel Corporation Software implemented method for automatically validating the correctness of parallel computer programs
US6085315A (en) * 1997-09-12 2000-07-04 Siemens Aktiengesellschaft Data processing device with loop pipeline
US6076159A (en) * 1997-09-12 2000-06-13 Siemens Aktiengesellschaft Execution of a loop instructing in a loop pipeline after detection of a first occurrence of the loop instruction in an integer pipeline
US6223278B1 (en) * 1998-11-05 2001-04-24 Intel Corporation Method and apparatus for floating point (FP) status word handling in an out-of-order (000) Processor Pipeline
US6308252B1 (en) * 1999-02-04 2001-10-23 Kabushiki Kaisha Toshiba Processor method and apparatus for performing single operand operation and multiple parallel operand operation
CN1236382C (en) * 1999-04-22 2006-01-11 关一 Computer system
US6473837B1 (en) * 1999-05-18 2002-10-29 Advanced Micro Devices, Inc. Snoop resynchronization mechanism to preserve read ordering
US6546477B1 (en) * 1999-09-20 2003-04-08 Texas Instruments Incorporated Memory management in embedded systems with dynamic object instantiation
US6446197B1 (en) * 1999-10-01 2002-09-03 Hitachi, Ltd. Two modes for executing branch instructions of different lengths and use of branch control instruction and register set loaded with target instructions
US6643767B1 (en) * 2000-01-27 2003-11-04 Kabushiki Kaisha Toshiba Instruction scheduling system of a processor
US6430655B1 (en) * 2000-01-31 2002-08-06 Mips Technologies, Inc. Scratchpad RAM memory accessible in parallel to a primary cache
US20010052053A1 (en) 2000-02-08 2001-12-13 Mario Nemirovsky Stream processing unit for a multi-streaming processor
US7032226B1 (en) * 2000-06-30 2006-04-18 Mips Technologies, Inc. Methods and apparatus for managing a buffer of events in the background
US6557127B1 (en) * 2000-02-28 2003-04-29 Cadence Design Systems, Inc. Method and apparatus for testing multi-port memories
US6915395B1 (en) * 2000-05-03 2005-07-05 Sun Microsystems, Inc. Active address content addressable memory
US6757817B1 (en) * 2000-05-19 2004-06-29 Intel Corporation Apparatus having a cache and a loop buffer
US6505285B1 (en) * 2000-06-26 2003-01-07 Ncr Corporation Scratch segment subsystem for a parallel processing database system
US6760835B1 (en) * 2000-11-22 2004-07-06 Lsi Logic Corporation Instruction branch mispredict streaming
CA2478007A1 (en) * 2002-03-05 2003-09-12 International Business Machines Corporation Method of prefetching data/instructions related to externally triggered events
US7398375B2 (en) * 2002-04-04 2008-07-08 The Regents Of The University Of Michigan Technique for reduced-tag dynamic scheduling and reduced-tag prediction
US6836833B1 (en) * 2002-10-22 2004-12-28 Mips Technologies, Inc. Apparatus and method for discovering a scratch pad memory configuration
US7159103B2 (en) * 2003-03-24 2007-01-02 Infineon Technologies Ag Zero-overhead loop operation in microprocessor having instruction buffer
US7418575B2 (en) * 2003-07-29 2008-08-26 Stretch, Inc. Long instruction word processing with instruction extensions
US7263599B2 (en) * 2004-02-06 2007-08-28 Infineon Technologies Thread ID in a multithreaded processor
US7219185B2 (en) * 2004-04-22 2007-05-15 International Business Machines Corporation Apparatus and method for selecting instructions for execution based on bank prediction of a multi-bank cache
US20060095732A1 (en) * 2004-08-30 2006-05-04 Tran Thang M Processes, circuits, devices, and systems for scoreboard and other processor improvements

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393550B1 (en) * 1993-12-30 2002-05-21 Intel Corporation Method and apparatus for pipeline streamlining where resources are immediate or certainly retired
US5546545A (en) * 1994-12-09 1996-08-13 International Business Machines Corporation Rotating priority selection logic circuit
GB2322718A (en) * 1996-12-09 1998-09-02 Ibm Dynamic classification and dispatch of instructions out of order

Also Published As

Publication number Publication date
GB2448276B (en) 2011-06-15
GB0814234D0 (en) 2008-09-10
US20070204135A1 (en) 2007-08-30
GB2448276A (en) 2008-10-08
WO2007100487A2 (en) 2007-09-07
US7721071B2 (en) 2010-05-18
CN101395573B (en) 2012-06-06
CN101395573A (en) 2009-03-25

Similar Documents

Publication Publication Date Title
WO2007100487A3 (en) Distributive scoreboard scheduling in an out-of-order processor
WO2009087162A3 (en) Rotate then operate on selected bits facility and instructions therefore
WO2006083542A3 (en) Multithreading microprocessor with optimized thread scheduler for increasing pepeline utilization efficiency
GB201206367D0 (en) Predicting and avoiding operand-store-compare hazards in out- of-order microprocessors
WO2013188120A3 (en) Zero cycle load
WO2006028652A8 (en) Coordinating idle state transitions in multi-core processors
WO2010056511A3 (en) Technique for promoting efficient instruction fusion
WO2009133354A3 (en) System for providing trace data in a data processor having a pipelined architecture
WO2009120981A3 (en) Vector instructions to enable efficient synchronization and parallel reduction operations
WO2011084214A3 (en) Method and apparatus for performing a shift and exclusive or operation in a single instruction
WO2006031511A3 (en) Store instruction ordering for multi-core processor
GB2494542B (en) Reducing store-hit-loads in an out-of-order processor
WO2006006084A3 (en) Establishing command order in an out of order dma command queue
WO2012005949A3 (en) Apparatus, method, and system for improving power performance efficiency by coupling a first core type with a second core type
TW201714103A (en) Application scheduling in heterogeneous multiprocessor computing platforms for maximal predicted performance gains
ATE514998T1 (en) CLOCKED PORTS
GB2497467A (en) Execute at commit state update instructions,apparatus,methods and systems
HK1099955A1 (en) Computer system, graphics processing unit, and computer core logic controller
WO2008061105A3 (en) Method and system for instruction stuffing operations during non-intrusive digital signal processor debugging
WO2007095397A3 (en) Programmable processing unit
WO2009042658A3 (en) Method, system and apparatus for providing a boot loader of an embedded system
WO2010051298A3 (en) Instruction and logic for performing range detection
WO2006094196A3 (en) Method and apparatus for power reduction in an heterogeneously- multi-pipelined processor
TW200641685A (en) Digital signal system with accelerators and method for operating the same
WO2007072436A3 (en) Schedule based cache/memory power minimization technique

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 0814234.1

Country of ref document: GB

WWE Wipo information: entry into national phase

Ref document number: 200780007020.X

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 3596/KOLNP/2008

Country of ref document: IN

122 Ep: pct application non-entry in european phase

Ref document number: 07750580

Country of ref document: EP

Kind code of ref document: A2