ATE459041T1 - Ausgabe und abschluss von befehlen in einem prozessor mit unterschiedlicher pipelinetiefe - Google Patents
Ausgabe und abschluss von befehlen in einem prozessor mit unterschiedlicher pipelinetiefeInfo
- Publication number
- ATE459041T1 ATE459041T1 AT02021392T AT02021392T ATE459041T1 AT E459041 T1 ATE459041 T1 AT E459041T1 AT 02021392 T AT02021392 T AT 02021392T AT 02021392 T AT02021392 T AT 02021392T AT E459041 T1 ATE459041 T1 AT E459041T1
- Authority
- AT
- Austria
- Prior art keywords
- pipeline
- issue
- stage
- processor
- instruction
- Prior art date
Links
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/3824—Operand accessing
- G06F9/3826—Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage
-
- 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
- G06F9/3806—Instruction prefetching for branches, e.g. hedging, branch folding using address prediction, e.g. return stack, branch history buffer
-
- 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
-
- 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/3838—Dependency mechanisms, e.g. register scoreboarding
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
-
- 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/3854—Instruction completion, e.g. retiring, committing or graduating
- G06F9/3858—Result writeback, i.e. updating the architectural state or memory
-
- 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/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3863—Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
-
- 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/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
-
- 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/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3873—Variable length pipelines, e.g. elastic pipeline
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)
- Image Processing (AREA)
- Image Generation (AREA)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US32434401P | 2001-09-24 | 2001-09-24 | |
US10/066,984 US7269714B2 (en) | 2001-09-24 | 2002-02-04 | Inhibiting of a co-issuing instruction in a processor having different pipeline lengths |
Publications (1)
Publication Number | Publication Date |
---|---|
ATE459041T1 true ATE459041T1 (de) | 2010-03-15 |
Family
ID=26747377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
AT02021392T ATE459041T1 (de) | 2001-09-24 | 2002-09-24 | Ausgabe und abschluss von befehlen in einem prozessor mit unterschiedlicher pipelinetiefe |
Country Status (4)
Country | Link |
---|---|
US (1) | US7269714B2 (de) |
EP (1) | EP1296228B1 (de) |
AT (1) | ATE459041T1 (de) |
DE (1) | DE60235429D1 (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060095732A1 (en) * | 2004-08-30 | 2006-05-04 | Tran Thang M | Processes, circuits, devices, and systems for scoreboard and other processor improvements |
US9946547B2 (en) | 2006-09-29 | 2018-04-17 | Arm Finance Overseas Limited | Load/store unit for a processor, and applications thereof |
US7594079B2 (en) * | 2006-09-29 | 2009-09-22 | Mips Technologies, Inc. | Data cache virtual hint way prediction, and applications thereof |
US7647518B2 (en) * | 2006-10-10 | 2010-01-12 | Apple Inc. | Replay reduction for power saving |
US20090113182A1 (en) * | 2007-10-24 | 2009-04-30 | Abernathy Christopher M | System and Method for Issuing Load-Dependent Instructions from an Issue Queue in a Processing Unit |
US7991979B2 (en) * | 2008-09-23 | 2011-08-02 | International Business Machines Corporation | Issuing load-dependent instructions in an issue queue in a processing unit of a data processing system |
US9395994B2 (en) * | 2011-12-30 | 2016-07-19 | Intel Corporation | Embedded branch prediction unit |
GB2499277B (en) * | 2012-08-30 | 2014-04-02 | Imagination Tech Ltd | Global register protection in a multi-threaded processor |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2581236B2 (ja) * | 1989-11-16 | 1997-02-12 | 三菱電機株式会社 | データ処理装置 |
US5487156A (en) | 1989-12-15 | 1996-01-23 | Popescu; Valeri | Processor architecture having independently fetching issuing and updating operations of instructions which are sequentially assigned and stored in order fetched |
DE69130138T2 (de) | 1990-06-29 | 1999-05-06 | Digital Equipment Corp., Maynard, Mass. | Sprungvorhersageeinheit für hochleistungsfähigen Prozessor |
US5655096A (en) | 1990-10-12 | 1997-08-05 | Branigin; Michael H. | Method and apparatus for dynamic scheduling of instructions to ensure sequentially coherent data in a processor employing out-of-order execution |
US5630157A (en) | 1991-06-13 | 1997-05-13 | International Business Machines Corporation | Computer organization for multiple and out-of-order execution of condition code testing and setting instructions |
JP3730252B2 (ja) | 1992-03-31 | 2005-12-21 | トランスメタ コーポレイション | レジスタ名称変更方法及び名称変更システム |
US5546593A (en) | 1992-05-18 | 1996-08-13 | Matsushita Electric Industrial Co., Ltd. | Multistream instruction processor able to reduce interlocks by having a wait state for an instruction stream |
US5559977A (en) * | 1992-08-04 | 1996-09-24 | Intel Corporation | Method and apparatus for executing floating point (FP) instruction pairs in a pipelined processor by stalling the following FP instructions in an execution stage |
US5884057A (en) | 1994-01-11 | 1999-03-16 | Exponential Technology, Inc. | Temporal re-alignment of a floating point pipeline to an integer pipeline for emulation of a load-operate architecture on a load/store processor |
US5666506A (en) | 1994-10-24 | 1997-09-09 | International Business Machines Corporation | Apparatus to dynamically control the out-of-order execution of load/store instructions in a processor capable of dispatchng, issuing and executing multiple instructions in a single processor cycle |
US5649136A (en) | 1995-02-14 | 1997-07-15 | Hal Computer Systems, Inc. | Processor structure and method for maintaining and restoring precise state at any instruction boundary |
EP0870228B1 (de) | 1995-10-06 | 2003-08-13 | Advanced Micro Devices, Inc. | Vereinheitlichter multifunktions-operationsverteiler für die ungeordnete befehlsexekution in einem superskalaren prozessor |
US5933618A (en) | 1995-10-30 | 1999-08-03 | Advanced Micro Devices, Inc. | Speculative register storage for storing speculative results corresponding to register updated by a plurality of concurrently recorded instruction |
US5991884A (en) | 1996-09-30 | 1999-11-23 | Intel Corporation | Method for reducing peak power in dispatching instructions to multiple execution units |
US6282663B1 (en) | 1997-01-22 | 2001-08-28 | Intel Corporation | Method and apparatus for performing power management by suppressing the speculative execution of instructions within a pipelined microprocessor |
US5887185A (en) | 1997-03-19 | 1999-03-23 | Advanced Micro Devices, Inc. | Interface for coupling a floating point unit to a reorder buffer |
US5784588A (en) | 1997-06-20 | 1998-07-21 | Sun Microsystems, Inc. | Dependency checking apparatus employing a scoreboard for a pair of register sets having different precisions |
US5790827A (en) | 1997-06-20 | 1998-08-04 | Sun Microsystems, Inc. | Method for dependency checking using a scoreboard for a pair of register sets having different precisions |
US5913049A (en) | 1997-07-31 | 1999-06-15 | Texas Instruments Incorporated | Multi-stream complex instruction set microprocessor |
US6219796B1 (en) | 1997-12-23 | 2001-04-17 | Texas Instruments Incorporated | Power reduction for processors by software control of functional units |
US6076153A (en) | 1997-12-24 | 2000-06-13 | Intel Corporation | Processor pipeline including partial replay |
US6216222B1 (en) | 1998-05-14 | 2001-04-10 | Arm Limited | Handling exceptions in a pipelined data processing apparatus |
-
2002
- 2002-02-04 US US10/066,984 patent/US7269714B2/en not_active Expired - Fee Related
- 2002-09-24 EP EP02021392A patent/EP1296228B1/de not_active Expired - Lifetime
- 2002-09-24 DE DE60235429T patent/DE60235429D1/de not_active Expired - Lifetime
- 2002-09-24 AT AT02021392T patent/ATE459041T1/de not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
US7269714B2 (en) | 2007-09-11 |
EP1296228B1 (de) | 2010-02-24 |
US20030061465A1 (en) | 2003-03-27 |
EP1296228A2 (de) | 2003-03-26 |
EP1296228A3 (de) | 2007-01-24 |
DE60235429D1 (de) | 2010-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60140603D1 (de) | Verfahren und vorrichtung für die befehlssatzarchitektur mit dyadischen digitalen signalverarbeitungsbefehlen | |
EP0994413A3 (de) | Datenverarbeitungssystem mit bedingter Ausführung von erweiterten Verbundbefehlen | |
TW347512B (en) | Information processing circuit, semiconductor integrated circuit device, microcomputer and electronic equipment | |
DE60122708D1 (de) | Zeroklick | |
DE60334835D1 (de) | Vorrichtung und verfahren zur umschaltung zwischen prozessen | |
WO2006113420A3 (en) | System and method wherein conditional instructions unconditionally provide output | |
RU2008126233A (ru) | Конфигурируемые пользователем библиотеки программного обеспечения | |
DE602006014415D1 (de) | Synchronisierung und paralleles Ausführen von Kontrollfluss und Datenfluss auf Task-Ebene | |
WO2003010657A3 (en) | Method and system for encoding instructions for a vliw that reduces instruction memory requirements | |
WO2002048873A3 (en) | Exception handling in a pipelined processor | |
WO2005106625A3 (en) | Selecting input/output devices to control power consumption of a computer system | |
WO2000045257A3 (en) | Executing programs for a first computer architecture on a computer of a second architecture | |
DE602004018501D1 (de) | Verfahren, das es einer multitasking-datenverarbeiren | |
ATE459041T1 (de) | Ausgabe und abschluss von befehlen in einem prozessor mit unterschiedlicher pipelinetiefe | |
EP1443394A3 (de) | Niederstromverbrauch - Steuerungseinheit und Vorrichtung zur Programmoptimierung | |
WO2005003959A3 (en) | Method and apparatus for the emulation of high precision floating point instructions | |
WO2002065276A3 (en) | Apparatus and method for effecting changes in program control flow | |
EP1477212A4 (de) | Spielausführungssystem und spielausführungsverfahren | |
WO2002063465A3 (en) | Method and apparatus for handling interrupts | |
WO2003052591A3 (en) | Processor architecture selectively using finite-state-machine for control code | |
JPS61245239A (ja) | 論理回路方式 | |
WO2005069123A3 (en) | Microprocessor, related method of operating the same and related instruction word | |
ATE371837T1 (de) | Vorrichtung zur regelung einer heizung, insbesondere eines wohnhauses | |
ATE334444T1 (de) | ßEMODß EINE SCHNELLE MODULE BERECHNUNG FÜR RECHNERSYSTEME | |
ATE222657T1 (de) | Mikrocontroller zur ausführung von befehlen mit variablen längen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RER | Ceased as to paragraph 5 lit. 3 law introducing patent treaties |