Electrical computers and digital processing systems: processing – Processing control – Branching
Reexamination Certificate
2004-12-17
2009-06-23
Kindred, Alford W (Department: 2181)
Electrical computers and digital processing systems: processing
Processing control
Branching
C712S219000
Reexamination Certificate
active
07552318
ABSTRACT:
A method of handling program instructions in a microprocessor which reduces delays associated with mispredicted branch instructions, by detecting the occurrence of a stall condition during execution of the program instructions, speculatively executing one or more pending instructions which include at least one branch instruction during the stall condition, and determining the validity of data utilized by the speculative execution. Dispatch logic determines the validity of the data by marking one or more registers of an instruction dispatch unit to indicate which results of the pending instructions are invalid. The speculative execution of instructions can occur across multiple pipeline stages of the microprocessor, and the validity of the data is tracked during their execution in the multiple pipeline stages while monitoring a dependency of the speculatively executed instructions relative to one another during their execution in the multiple pipeline stages.
REFERENCES:
patent: 5471626 (1995-11-01), Carnevale et al.
patent: 5758051 (1998-05-01), Moreno et al.
patent: 5987594 (1999-11-01), Panwar et al.
patent: 6356918 (2002-03-01), Chuang et al.
patent: 6427207 (2002-07-01), Col et al.
patent: 6430683 (2002-08-01), Arimilli et al.
patent: 6473837 (2002-10-01), Hughes et al.
patent: 7114060 (2006-09-01), Chaudhry et al.
patent: 7194604 (2007-03-01), Bigelow et al.
patent: 7257699 (2007-08-01), Chaudhry et al.
patent: 2003/0126406 (2003-07-01), Hammarlund et al.
patent: 2005/0223200 (2005-10-01), Tremblay et al.
U.S. Appl. No. 11/016,236, filed Dec. 17, 2004, Eickemeyer et al.
U.S. Appl. No. 11/016,206, filed Dec. 17, 2004, Eickemeyer et al.
Balasubramonian, Dwarkadas & Albonesi, “Dynamically Allocating Processor Resources between Nearby and Distant ILP,” ACM SIGARCH Computer Architecture News pp. 26-37 (May 2001).
Mutlu, Stark, Wilkerson & Patt, “Runahead Execution: An alternative to Very Large Instruction Windows for Out-of-order Processors,” IEEE Comp. Soc. Symp. on High-Performance Computer Architecture pp. 129-140 (2003).
Lebeck, Koppanalil, Li, Patwardhan & Rotenburg, “A Large, Fast Instruction Window for Tolerating Cache Misses,” IEEE Comp. Soc. Int'l. Conf. on Computer Architecture pp. 59-70 (May 2002).
Eickemeyer Richard James
Le Hung Qui
Nguyen Dung Quoc
Stolt Benjamin Walter
Thompto Brian William
Geib Benjamin P
Gerhardt Diana R.
International Business Machines - Corporation
Kindred Alford W
Musgrove Jack V.
LandOfFree
Branch lookahead prefetch for microprocessors does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Branch lookahead prefetch for microprocessors, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Branch lookahead prefetch for microprocessors will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-4071657