Electrical computers and digital processing systems: processing – Processing architecture – Distributed processing system
Patent
1998-05-14
2000-03-07
Hafiz, Tariq R.
Electrical computers and digital processing systems: processing
Processing architecture
Distributed processing system
395708, 395709, 712234, 712239, G06F 945, G06F 900
Patent
active
060351225
ABSTRACT:
A processing device executes an instruction speculatively, and execution result of the instruction becomes valid when all the predictions about true/false of branch condition are correct, and the instruction has a commit condition indicating the number of branch conditions. The processing device includes a commit condition decoder for decoding the commit condition; ALU's; a sequential register file for sequentially holding data obtained from ALU; a shadow register file for speculatively holding data obtained from the ALU; true/false register having determination entries, each of which holds undetermined information if true/false of the corresponding branch condition is not yet determined, holds true information if the corresponding branch condition is true, and holds false information if the corresponding branch condition is false; execution control circuit for comparing true/false of an instruction decode entry provided from the commit condition decoder with true/false of the determination entry and controlling the sequential register file to sequentially hold data if they correspond with each other or otherwise controlling the shadow register file to speculatively hold data; and a commit control circuit for comparing true/false of the instruction decode entry with true/false of the determination entry and transferring the data held in the shadow register file to the sequential register file if each true/false of the instruction decode entry coincides with true/false of the corresponding determination entry.
REFERENCES:
patent: 4942525 (1990-07-01), Shintai et al.
patent: 5421020 (1995-05-01), Levitan
patent: 5450585 (1995-09-01), Johnson
patent: 5511198 (1996-04-01), Hotta
patent: 5561776 (1996-10-01), Popescu et al.
patent: 5627985 (1997-05-01), Fetterman et al.
patent: 5649225 (1997-07-01), White et al.
patent: 5715440 (1998-02-01), Ohmura et al.
patent: 5732253 (1998-03-01), McMahan
patent: 5761467 (1998-06-01), Ando
patent: 5768574 (1998-06-01), Dutton et al.
patent: 5809294 (1998-09-01), Ando
patent: 5854935 (1998-12-01), Enomoto
patent: 5941986 (1999-08-01), Kulkarni
Michael D. Smith et al., "Efficient Superscalar Performance Through Boosting", ASPLOS V--Oct. 1922/MA, 1992, pp. 248-259.
"Effective Compiler Support for Predicated Execution Using the Hyperblock", by Scott A. Mahlke et al., IEEE, 1992.
"Reducing the Cost of Branches", by Scott McFarling et al., IEEE, 1986.
Dubey, P; Flynn, M.; "Branch Strategies: Modeling and Optimization"; IEEE Transactions on Computers; vol. 40, Issue 10, pp. 1159-1167, Oct. 1991.
Mahlke et al., "Effective Compiler Support for Predicated Execution Using the Hyperblock," IEEE, pp. 45-54, Sep. 1992.
Hafiz Tariq R.
Mitsubishi Denki & Kabushiki Kaisha
Sattizahn Brian
LandOfFree
Compiler for converting source program into object program havin does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Compiler for converting source program into object program havin, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Compiler for converting source program into object program havin will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-371070