Electrical computers and digital processing systems: processing – Processing control – Branching
Patent
1998-02-17
1999-10-26
Treat, William M.
Electrical computers and digital processing systems: processing
Processing control
Branching
G06F 932
Patent
active
059745436
ABSTRACT:
An apparatus and a method for performing subroutine call and return operations in a computer having a processor with an instruction prefetch mechanism which includes a branch history table for storing target addresses of a plurality of branch instructions found in an instruction stream. The branch history table 22 contains a potential call instruction tag 37 and a return instruction tag 39. For each potential subroutine call instruction found in a prefetch instruction stream an address pair containing the call target address and the next sequential instruction address of the instruction is stored in a return identification stack 24. Subsequently detected branch instructions initiate an associative search on the next sequential instruction part in the return identification stack where a matching entry identifies the branch instruction as a return instruction. The address pair contained in the matching entry is then transferred to a return cache 30 which is arranged in parallel to the branch history table. The branch history table and the return cache are simultaneously accessed in the same operation cycle with the address 28 of each prefetched instruction, and if by the access a return instruction tag is found, the next sequential instruction address from the return cache is used as return address. A return cache update 32 is performed in response to a branch instruction in the instruction stream by a lookup of the return cache for an entry having a corresponding target address and by replacing the next sequential instruction address in said entry by the next sequential address of said branch instruction.
REFERENCES:
patent: 4399507 (1983-08-01), Cosgrove et al.
patent: 4725947 (1988-02-01), Shonai et al.
patent: 5093778 (1992-03-01), Favor et al.
patent: 5136696 (1992-08-01), Beckwith et al.
patent: 5230068 (1993-07-01), Van Dyke et al.
patent: 5276882 (1994-01-01), Emma et al.
patent: 5623614 (1997-04-01), Van Dyke et al.
patent: 5768576 (1998-06-01), Hoyt et al.
patent: 5850543 (1998-12-01), Shiell et al.
patent: 5881278 (1999-03-01), Tran et al.
IBM Technical Disclosure Bulletin--vol. 30, No. 11, Apr. 1988, "Subroutine Call/Return Stack" by C. F. Webb, pp. 221-225.
Yeh et al., "A Comprehensive Instruction Fetch Mechanism for a Processor Supporting Speculative Execution," Proceedings of the 25th Annual International Symposium on Microarchitecture, MICRO 25, IEEE, pp. 129-139, Dec. 1-4, 1992.
Hilgendorf Rolf
Laub Oliver
Tast Hans-Werner
Ehrlich Marc A.
International Business Machines - Corporation
Treat William M.
LandOfFree
Apparatus and method for performing subroutine call and return o does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Apparatus and method for performing subroutine call and return o, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Apparatus and method for performing subroutine call and return o will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-776511