Claims
- 1. A method for enhanced instruction dispatch efficiency in a superscalar processor system capable of fetching an application specified ordered sequence of scalar instructions and simultaneously dispatching a group of said scalar instructions to a plurality of execution units, said method comprising the steps of:
- providing a plurality of intermediate storage buffers within said superscalar processor system;
- coupling each of said plurality of intermediate storage buffers to all of said plurality of execution units via an independent bus wherein each independent bus is associated with a single one of said plurality of intermediate storage buffers;
- dispatching selected ones of said group of scalar instructions to selected ones of said plurality of execution units on an opportunistic basis; and
- transferring a result of execution of each of said dispatched scalar instructions from one of said plurality of execution units to a designated one of said plurality of intermediate storage buffers via an associated independent bus, wherein said results may be stored without contention for access among said plurality of execution units and wherein said result is available to each of said plurality of execution units.
- 2. The method for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 1, further including the step of transferring said result of execution of each of said dispatched scalar instructions from said plurality of intermediate storage buffers to selected general purpose registers.
- 3. The method for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 1, wherein said step of providing a plurality of intermediate storage buffers within said superscalar processor system comprises the step of providing twelve intermediate storage buffers within said superscalar processor system.
- 4. The method for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 3, wherein said step of coupling each of said plurality of intermediate storage buffers to each of said plurality of execution units via an independent bus comprises the step of coupling twelve independent buses to each of said plurality of execution units, each of said twelve independent buses being coupled to one of said twelve intermediate storage buffers.
- 5. The method for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 1, wherein said step of transferring a result of execution of each of said dispatch scalar instructions from one of said plurality of execution units to a designated one of said plurality of intermediate storage buffers via an independent bus further includes the step of providing an indication that data on said independent bus is valid in response to said transferring.
- 6. A system for enhanced instruction dispatch efficiency in a superscalar processor system capable of fetching an application specified ordered sequence of scalar instructions and simultaneously dispatching a group of said scalar instructions to a plurality of execution units, said system comprising:
- a plurality of intermediate storage buffers within said superscalar processor system;
- means for coupling each of said plurality of intermediate storage buffers to all of said plurality of execution units via an independent bus wherein each independent bus is associated with a single one of said plurality of intermediate storage buffers;
- means for dispatching selected ones of said group of scalar instructions to selected ones of said plurality of execution units on an opportunistic basis; and
- means for transferring a result of execution of each of said dispatched scalar instructions from one of said plurality of execution units to a designated one of said plurality of intermediate storage buffers via an associated independent bus, wherein said results may be stored without contention for access among said plurality of execution units and wherein said result is available to each of said plurality of execution units.
- 7. The system for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 6, further including means for transferring said result of execution of each of said dispatched scalar instructions from said plurality of intermediate storage buffers to selected general purpose registers.
- 8. The system for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 6, wherein said plurality of intermediate storage buffers within said superscalar processor system comprises twelve intermediate storage buffers within said superscalar processor system.
- 9. The system for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 8, wherein said means for coupling each of said plurality of intermediate storage buffers to each of said plurality of execution units via an independent bus comprises twelve independent buses coupled to each of said plurality of execution units, each of said twelve independent buses being coupled to one of said twelve intermediate storage buffers.
- 10. The system for enhanced instruction dispatch efficiency in a superscalar processor system according to claim 6, wherein said means for transferring a result of execution of each of said dispatch scalar instructions from one of said plurality of execution units to a designated one of said plurality of intermediate storage buffers via an independent bus further includes means for providing an indication that data on said independent bus is valid in response to said transferring.
CROSS-REFERENCE TO RELATED APPLICATION
The present application is related to U.S. patent application Ser. No. 08/001,864, now U.S. Pat. No. 5,465,393, entitled "Method and System for Single Cycle Dispatch of Multiple Instructions in a Superscalar Processor System," U.S. patent application Ser. No. 08/689,437 now U.S. Pat. No. 5,764,942, entitled "Method and System for Selective Serialization of Instruction Processing in a Superscalar Processor System," U.S. patent application Ser. No. 08,438,819, now U.S. Pat. No. 5,491,829, entitled "Method and System for Indexing the Assignment of Intermediate Storage Buffers in a Superscalar Processor System," U.S. patent application Ser. No. 08/255,130, entitled "Method and System for Nonsequential Instruction Dispatch and Execution in a Superscalar Processor System," and U.S. patent application Ser. No. 08/479,258, now abandoned, entitled "Method and System for Tracking Scalar Instructions Within a Superscalar Processor System," all filed of even date herewith by the inventors hereof and assigned to the assignee herein, and incorporated by reference herein.
US Referenced Citations (2)
Number |
Name |
Date |
Kind |
4051551 |
Lawrie et al. |
Sep 1977 |
|
5136697 |
Johnson |
Aug 1992 |
|
Non-Patent Literature Citations (1)
Entry |
Sohi, "Instruction Issue Logic for High-Performance, Interruptible, Multiple Functional Unit, Pipelined Computers," 1990, 349-359. |