Electrical computers and digital processing systems: processing – Processing control – Mode switch or change
Reexamination Certificate
1997-10-01
2001-03-27
Chan, Eddie P. (Department: 2183)
Electrical computers and digital processing systems: processing
Processing control
Mode switch or change
C712S222000, C712S244000
Reexamination Certificate
active
06209083
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention generally relates to floating point units and, more particularly, to a floating point unit having an alternate, or fast, mode of operation which reduces pipeline stalls by issuing instructions regardless of the state of the previously issued instruction.
2. Description of Related Art
Pipelining is a commonly practiced technique by which processing speed is increased by starting the execution of a next instruction sequence before a previous instruction sequence is completed. As the instructions within a pipe are at various stages of execution, correcting an error, commonly referred to as an exception, which occurs during the execution of a pipelined instruction can prove complicated. Accordingly, devices which use piplining are typically equipped to resolve exceptions in a manner which will minimize disruption to instructions flowing through the pipe.
An instruction execution pipeline of a processor typically includes instruction fetch, instruction decode, address calculation, execution and writeback stages. While both integer and floating point instructions are initially handled by the instruction execution pipeline, after completing the address calculation stage, floating point instructions are issued to a floating point unit (FPU) for the execution and writeback stages.
If the instruction execution pipeline has a floating point instruction in the pipe, the instruction will not be issued to the FPU until the previously issued floating point instruction has been checked for error. By delaying issuance of the floating point instruction, in the event that an exception occurs during execution of the previous floating point instruction, the FPU will be able to precisely identify and resolve the exception.
While such a technique greatly simplifies the task of repairing the instruction execution pipeline, it often causes stalls in the flow of instructions through the pipe. More specifically, the address calculation stage will not issue a floating point instruction to the FPU until it is determined that the prior floating point instruction will not generate an exception. Thus, the address calculation stage waits to issue a next floating point instruction until after execution of the prior floating point instruction is complete. However, execution of most floating point instructions require more than one clock cycle. As a result, therefore, the floating point instruction stalls in the address calculation stage while waiting for the prior floating point instruction to finish.
Thus, it can be readily seen from the foregoing that it would be desirable to provide a method of issuing floating point instructions in a manner which reduces stalling of the instruction execution pipeline and a processor uniquely configured to permit operation of the FPU in plural modes. It is, therefore, the object of this invention to provide such a method and processor.
SUMMARY OF THE INVENTION
The present invention is directed to an FPU configured to operate in plural modes. In a first, or normal, mode, an address calculation unit of the processor will not issue a next floating point instruction to the FPU until the previously issued floating point instruction has cleared the FPU, thereby indicating that the previous floating point instruction will not have an exception. Further, in the event that an exception is detected, the precise instruction boundary of the exception will be known. In a second, or fast, mode, the address calculation unit of the processor will issue a next floating point instruction to the FPU, where it is held in a 4-deep instruction queue, regardless of whether a prior instruction will have an exception, thereby speeding issuance of floating point instructions to the FPU by eliminating stalls in the instruction execution pipeline caused by floating point instructions being stalled in the address calculation unit. While the precise boundaries of exceptions are not available in fast mode operation, the processor is equipped to handle the exception anyway. The FPU may be set to operate in normal or fast mode by setting bit
4
of configuration control register CCR
4
of the register set.
REFERENCES:
patent: 4736289 (1988-04-01), Eaton
patent: 5093908 (1992-03-01), Beacom et al.
patent: 5193158 (1993-03-01), Kinney et al.
patent: 5404466 (1995-04-01), Inoue
patent: 5404557 (1995-04-01), Yamashita
patent: 5465376 (1995-11-01), Yoshida
patent: 5524263 (1996-06-01), Griffth et al.
patent: 5546599 (1996-08-01), Song
patent: 5559977 (1996-09-01), Avnon et al.
patent: 5561775 (1996-10-01), Kurosawa et al.
patent: 5764942 (1998-06-01), Kahle et al.
Maher, III Robert D.
Naini Ajay
Carr & Ferrell LLP
Chan Eddie P.
Patel Gautam R.
VIA-Cyrix Inc.
LandOfFree
Processor having selectable exception handling modes does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Processor having selectable exception handling modes, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Processor having selectable exception handling modes will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2478876