DE69325086D1 - Verfahren und System für spekulative Befehlsausführung - Google Patents

Verfahren und System für spekulative Befehlsausführung

Info

Publication number
DE69325086D1
DE69325086D1 DE69325086T DE69325086T DE69325086D1 DE 69325086 D1 DE69325086 D1 DE 69325086D1 DE 69325086 T DE69325086 T DE 69325086T DE 69325086 T DE69325086 T DE 69325086T DE 69325086 D1 DE69325086 D1 DE 69325086D1
Authority
DE
Germany
Prior art keywords
command execution
speculative command
speculative
execution
command
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
DE69325086T
Other languages
English (en)
Other versions
DE69325086T2 (de
Inventor
David S Levitan
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69325086D1 publication Critical patent/DE69325086D1/de
Publication of DE69325086T2 publication Critical patent/DE69325086T2/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, look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling
    • G06F9/3863Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/325Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for loops, e.g. loop detection or loop counter
DE69325086T 1993-01-08 1993-12-27 Verfahren und System für spekulative Befehlsausführung Expired - Fee Related DE69325086T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/002,445 US5421020A (en) 1993-01-08 1993-01-08 Counter register implementation for speculative execution of branch on count instructions

Publications (2)

Publication Number Publication Date
DE69325086D1 true DE69325086D1 (de) 1999-07-01
DE69325086T2 DE69325086T2 (de) 1999-12-16

Family

ID=21700801

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69325086T Expired - Fee Related DE69325086T2 (de) 1993-01-08 1993-12-27 Verfahren und System für spekulative Befehlsausführung

Country Status (4)

Country Link
US (1) US5421020A (de)
EP (1) EP0605872B1 (de)
JP (1) JP3137157B2 (de)
DE (1) DE69325086T2 (de)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0623874A1 (de) * 1993-05-03 1994-11-09 International Business Machines Corporation Verfahren zur Ausführung von Befehlen in einer Schleife
US5740393A (en) * 1993-10-15 1998-04-14 Intel Corporation Instruction pointer limits in processor that performs speculative out-of-order instruction execution
US5721857A (en) * 1993-12-30 1998-02-24 Intel Corporation Method and apparatus for saving the effective address of floating point memory operations in an out-of-order microprocessor
US5963975A (en) * 1994-04-19 1999-10-05 Lsi Logic Corporation Single chip integrated circuit distributed shared memory (DSM) and communications nodes
US5642493A (en) * 1994-11-25 1997-06-24 Motorola, Inc. Method of loading instructions into an instruction cache by repetitively using a routine containing a mispredicted branch instruction
JP3494489B2 (ja) * 1994-11-30 2004-02-09 株式会社ルネサステクノロジ 命令処理装置
US5802346A (en) * 1995-06-02 1998-09-01 International Business Machines Corporation Method and system for minimizing the delay in executing branch-on-register instructions
US5943494A (en) * 1995-06-07 1999-08-24 International Business Machines Corporation Method and system for processing multiple branch instructions that write to count and link registers
US5764970A (en) * 1995-11-20 1998-06-09 International Business Machines Corporation Method and apparatus for supporting speculative branch and link/branch on count instructions
US5740419A (en) * 1996-07-22 1998-04-14 International Business Machines Corporation Processor and method for speculatively executing an instruction loop
US5951679A (en) * 1996-10-31 1999-09-14 Texas Instruments Incorporated Microprocessor circuits, systems, and methods for issuing successive iterations of a short backward branch loop in a single cycle
US6003128A (en) * 1997-05-01 1999-12-14 Advanced Micro Devices, Inc. Number of pipeline stages and loop length related counter differential based end-loop prediction
US5958047A (en) * 1997-06-25 1999-09-28 Sun Microsystems, Inc. Method for precise architectural update in an out-of-order processor
US6085305A (en) 1997-06-25 2000-07-04 Sun Microsystems, Inc. Apparatus for precise architectural update in an out-of-order processor
US5838988A (en) * 1997-06-25 1998-11-17 Sun Microsystems, Inc. Computer product for precise architectural update in an out-of-order processor
US6505296B2 (en) * 1997-10-13 2003-01-07 Hewlett-Packard Company Emulated branch effected by trampoline mechanism
US6233645B1 (en) 1998-11-02 2001-05-15 Compaq Computer Corporation Dynamically disabling speculative prefetch when high priority demand fetch opportunity use is high
US6338133B1 (en) 1999-03-12 2002-01-08 International Business Machines Corporation Measured, allocation of speculative branch instructions to processor execution units
US6675372B1 (en) * 2000-10-31 2004-01-06 Sun Microsystems, Inc. Counting speculative and non-speculative events
US6766444B1 (en) 2000-11-02 2004-07-20 Intel Corporation Hardware loops
US6920547B2 (en) * 2000-12-20 2005-07-19 Intel Corporation Register adjustment based on adjustment values determined at multiple stages within a pipeline of a processor
US7065636B2 (en) * 2000-12-20 2006-06-20 Intel Corporation Hardware loops and pipeline system using advanced generation of loop parameters
US7181737B2 (en) 2002-03-18 2007-02-20 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using static procedure return addresses
US7010783B2 (en) 2002-03-18 2006-03-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using reduced dynamic memory allocation
US6912633B2 (en) 2002-03-18 2005-06-28 Sun Microsystems, Inc. Enhanced memory management for portable devices
US6996802B2 (en) 2002-03-18 2006-02-07 Sun Microsystems, Inc. Method and apparatus for deployment of high integrity software using initialization order and calling order constraints
US7281237B2 (en) 2003-01-16 2007-10-09 Sun Microsystems, Inc. Run-time verification of annotated software code
US7353499B2 (en) 2003-09-25 2008-04-01 Sun Microsystems, Inc. Multiple instruction dispatch tables for application program obfuscation
US7424620B2 (en) 2003-09-25 2008-09-09 Sun Microsystems, Inc. Interleaved data and instruction streams for application program obfuscation
US7415618B2 (en) 2003-09-25 2008-08-19 Sun Microsystems, Inc. Permutation of opcode values for application program obfuscation
US8220058B2 (en) 2003-09-25 2012-07-10 Oracle America, Inc. Rendering and encryption engine for application program obfuscation
US7363620B2 (en) 2003-09-25 2008-04-22 Sun Microsystems, Inc. Non-linear execution of application program instructions for application program obfuscation
US7930522B2 (en) * 2008-08-19 2011-04-19 Freescale Semiconductor, Inc. Method for speculative execution of instructions and a device having speculative execution capabilities
CN109739557B (zh) * 2019-01-08 2022-02-18 郑州云海信息技术有限公司 零开销循环装置及实现方法、系统、设备、计算机介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0150177A1 (de) * 1983-07-11 1985-08-07 Prime Computer, Inc. Datenverarbeitungsvorrichtung
JPS62159231A (ja) * 1986-01-07 1987-07-15 Nec Corp 命令先取り装置
JPH0754460B2 (ja) * 1986-01-07 1995-06-07 日本電気株式会社 命令先取り装置
US4920477A (en) * 1987-04-20 1990-04-24 Multiflow Computer, Inc. Virtual address table look aside buffer miss recovery method and apparatus
US4942520A (en) * 1987-07-31 1990-07-17 Prime Computer, Inc. Method and apparatus for indexing, accessing and updating a memory
US5136696A (en) * 1988-06-27 1992-08-04 Prime Computer, Inc. High-performance pipelined central processor for predicting the occurrence of executing single-cycle instructions and multicycle instructions
US5142634A (en) * 1989-02-03 1992-08-25 Digital Equipment Corporation Branch prediction
US5101484A (en) * 1989-02-14 1992-03-31 Intel Corporation Method and apparatus for implementing an iterative program loop by comparing the loop decrement with the loop value
JPH0328928A (ja) * 1989-06-26 1991-02-07 Nec Corp Loopの制御方式
JPH0343830A (ja) * 1989-07-11 1991-02-25 Fujitsu Ltd ブロックリピート回路

Also Published As

Publication number Publication date
JP3137157B2 (ja) 2001-02-19
DE69325086T2 (de) 1999-12-16
JPH06236271A (ja) 1994-08-23
EP0605872B1 (de) 1999-05-26
EP0605872A1 (de) 1994-07-13
US5421020A (en) 1995-05-30

Similar Documents

Publication Publication Date Title
DE69325086D1 (de) Verfahren und System für spekulative Befehlsausführung
DE69618259D1 (de) System und Verfahren für eine elektronische Programmzeitschrift
DE69419749D1 (de) Speicherverwalter für ein rechnersystem und verfahren hierfür
DE69614645D1 (de) System und Verfahren zum Profilieren von Code für eine symmetrische Multiprozessorarchitektur
GB9520626D0 (en) Method and system for providing support for speculative execution
DE69308293T2 (de) Globales prozesssteuerungsinformationssystem und verfahren
DE69526257T2 (de) Verfahren zum navigieren und system dafür
DE69429305T2 (de) System und Verfahren für Sprachenverarbeitung
DE69529621D1 (de) Verfahren und system zum durchführen einer geführten und parametrisierten suche
DE69516374T2 (de) Datenverarbeitungssystem und Verfahren dafür
DE69330970D1 (de) Sicheres Frontenverbindungssystem und Verfahren für Prozesssteuerungsrechner
DE69327250D1 (de) System und verfahren zur computerunterstuetzten pruefung
DE69527563T2 (de) Automationssystem und -verfahren zum LSI-Entwurf
DE69429799D1 (de) Verfahren und einrichtung für mikrobische reduktion
DE69522423T2 (de) Digitalisierstift und Verfahren
DE69329577T2 (de) Verfahren und system für implementierung-unabhängige schnittstellenspezifikation
DE69734658D1 (de) Verfahren und system für virtuelle kinematographie
DE69839274D1 (de) System und verfahren zum absichern von sprachtransaktionen
DE69408601D1 (de) System und Verfahren zur Emulierung von Vielfachprozess-Pipelines in einer Einprozessumgebung
DE69625473D1 (de) Taktsteuerungssystem- und verfahren
DE69432697D1 (de) Stromverwaltung für Rechnersystem und Verfahren hierfür
DE69331085D1 (de) Automatisiertes LSI-Entwurfsystem und Verfahren
DE69323196D1 (de) Rechnersystem und Verfahren zur Ausführung von mehreren Aufgaben
DE69422638D1 (de) System und verfahren für extern geregelte fahrzeuge
DE69424344D1 (de) Verfahren und System eines numerischen Prozessors

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee