Electrical computers and digital processing systems: processing – Dynamic instruction dependency checking – monitoring or... – Scoreboarding – reservation station – or aliasing
Reexamination Certificate
1998-06-30
2001-11-27
Lee, Thomas (Department: 2183)
Electrical computers and digital processing systems: processing
Dynamic instruction dependency checking, monitoring or...
Scoreboarding, reservation station, or aliasing
C712S228000, C712S215000, C712S212000
Reexamination Certificate
active
06324640
ABSTRACT:
TECHNICAL FIELD
The present invention relates in general to data processing systems, and in particular, to the dispatching of instructions to execution units within a processor.
BACKGROUND INFORMATION
Contemporary computing systems seek to take advantage of superscalar architectures to improve processing performance. Superscalar architectures are characterized by multiple and concurrently operable execution units integrated through a plurality of registers and control mechanisms. This permits the architecture to execute multiple instructions in an out-of-order sequence, thus utilizing parallelism to increase the throughput of the system.
Although superscalar architectures provide benefits in improving processor performance, there are numerous difficulties involved in developing practical systems. For example, control mechanisms must manage dependencies among the data being concurrently processed by the multiple execution units. Another problem is that of mispredicted branches. When instructions are being executed out-of-order, the processor may predict the outcome of an instruction that could result in a branch in program flow. Otherwise, the processor would have to wait, or stall, until the branching instruction completed. This would reduce the effectiveness of out-of-order execution, since the benefits of parallel execution would be countered by delays in instruction issue each time an instruction is dispatched that could result in a branch. Of course, if a branch is mispredicted, then the processor must have the ability to recover the state immediately prior to the branch so that the error can be corrected.
A variety of techniques have been devised to address these difficulties. One particular technique is referred to as “register renaming.” Register renaming involves forming an association between a physical register in the processor and a particular architectural, or logical, register. This relationship is referred to as a “rename pair,” and is created each time an instruction writes to an architectured register. Such a renaming scheme is further disclosed in U.S. Pat. No. 6,061,777, which is hereby incorporated by reference herein.
Nevertheless, such superscalar architectures are still limited to the dispatching of a few instructions at a time to the execution units. Since such dispatching of instructions on an instruction-by-instruction basis requires a supporting control structure, there is still room for improvement in the reduction of cycle time needed for executing instructions. Therefore, there is a need in the art for an improved and more efficient method for dispatching instructions to execution units within a superscalar processor.
SUMMARY OF THE INVENTION
The present invention addresses the foregoing need by dispatching instructions in groups. In one embodiment, two or more groups can be dispatched in a processor cycle. A renaming scheme is then utilized to enable the processor to return to a previous state when a mispredicted branch or some other type of interrupt requires this process. To implement this renaming scheme a plurality of rename tables, or mappers, and corresponding supporting structures are utilized to handle the plurality of groups of instructions dispatched.
The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention.
REFERENCES:
patent: 5481683 (1996-01-01), Karim
patent: 5745780 (1998-04-01), Phillips et al.
patent: 5809268 (1998-09-01), Chan
patent: 5826070 (1998-10-01), Olson et al.
patent: 5850533 (1998-12-01), Panwar et al.
patent: 5974524 (1999-10-01), Cheong et al.
patent: 6035394 (2000-03-01), Ray et al.
Cheong Hoichi
Le Hung Qui
England Anthony V. S.
International Business Machines - Corporation
Kordzik Kelly K.
Lee Thomas
Patel Gautam R.
LandOfFree
System and method for dispatching groups of instructions... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with System and method for dispatching groups of instructions..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for dispatching groups of instructions... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2573413