Claims
- 1. In a pipelined processing system, an apparatus that indicates a next instruction to be executed, comprising:
- control logic that receives an op-code of a branch instruction and flags indicating states of the system, wherein the control logic generates a control signal by logically combining the op-code and the flags, the control signal being output during a first clock cycle; and
- a select circuit that receives a first address that is a next sequential address with respect to an address previously executed and a second address that is indicated by the branch instruction, and outputs an address of the next instruction to be executed in response to the control signal during a second clock cycle.
- 2. The apparatus of claim 1, wherein the select circuit further receives an address from a call stack.
- 3. A method for determining an address of a next instruction to be executed in a pipelined processing system, comprising the steps of:
- receiving addresses during a first clock cycle comprising an address next in sequence to a first address previously executed and an address indicated by a second instruction;
- choosing the address of the next instruction to be executed from among the addresses received based upon a logical combination of flags indicating states of the system and upon an op-code of the second instruction; and
- outputting the address of the next instruction during a second clock cycle.
- 4. The method of claim 3, wherein the step of choosing the address of the next instruction comprises the steps of:
- determining whether the second instruction is to be executed; and
- if the second instruction is to be executed, choosing the address indicated by the second instruction as the next instruction.
- 5. In a pipeline processing system comprising a processor which executes a first instruction during a first clock cycle and a fetch mechanism to fetch a second instruction from memory during the first clock cycle for execution by the processor during the a second clock cycle, the system further comprising an apparatus for identifying addresses of instructions to be fetched, comprising:
- control logic coupled to receive as input an op-code of the second instruction to be executed, and flag signals indicative of states of the system, the control logic logically combining the op-code and flags to generate a select signal, the control logic outputting the select signal; and
- a multiplexor coupled to receive a plurality of addresses, the plurality of addresses comprising a next sequential address and an address identified in the second instruction, wherein either the next sequential address or the address identified in the second instruction comprises a next received address, the multiplexor outputting to the fetch mechanism during the second clock cycle the next received address based upon a state of the select signal output selected by the select signal generated by the control logic.
- 6. The system as set forth in claim 5 wherein the second instruction comprises a branch condition.
- 7. The system as set forth in claim 5, wherein the second instruction comprises a jump condition.
- 8. The system as set forth in claim 5, wherein the second instruction comprises a return from routine condition.
- 9. In a pipeline processing system comprising a processor which executes a first instruction during a first clock cycle and a fetching means to fetch a second instruction from a memory during the first clock cycle for execution by the processor during a second clock cycle, circuit means comprising:
- control means coupled to receive as input an op-code of the second instruction to be executed, the control logic further coupled to receive as inputs flag signals indicative of states of the system, the control logic logically combining the inputs to generate a select signal; and
- a multiplexing means coupled to receive a plurality of addresses, the plurality of addresses comprising a next sequential address to an address of the second instruction, and an address identified in the second instruction, wherein either the next sequential address or the address identified in the second instruction comprises a next received address, the multiplexor outputting to the fetch mechanism during the second clock cycle the next received address based upon a state of the select signal;
- such that when the op-code of the second instruction to be executed during the second clock cycle indicates that execution of the second instruction may result in an instruction other than the instruction at the next sequential address, the select signal causes the multiplexing means to output the address identified in the second instruction during the second clock cycle so that the instruction at the address identified in the second instruction is fetched during a third clock cycle.
- 10. The system as set forth in claim 9 wherein the second instruction comprises a branch condition.
- 11. The system as set forth in claim 9, wherein the second instruction comprises a jump condition.
- 12. The system as set forth in claim 9, wherein the second instruction comprises a return from routine condition.
- 13. In a pipeline processing system comprising a processor which executes instructions and a fetch mechanism to fetch instructions from memory for execution by the processor, the instructions comprising an op-code indicative of the operation to be performed when an instruction is executed, a method for identifying addresses of instructions to be fetched, comprising the steps of:
- executing a first instruction during a first clock cycle;
- fetching a second instruction during the first clock cycle;
- reviewing the op-code of the second instruction to determine if execution of the second instruction results in an instruction other than the instruction at the location next sequentially to a second instruction to be executed after the second instruction;
- receiving flag signals indicative of states of the system;
- generating a select signal by logically combining the op-code and the flag signals; and
- selecting one of a plurality of addresses as the address of a third instruction to be fetched during execution of the second instruction during the second clock cycle, said plurality of addresses comprising a next sequential address to the address of the second instruction, and an address identified in the second instruction, said step of selecting using the select signal to select the address of the third instruction.
- 14. The method as set forth in claim 13, wherein the second instruction comprises a branch condition.
- 15. The method as set forth in claim 13, wherein the second instruction comprises a jump condition.
- 16. The method as set forth in claim 13, wherein the second instruction comprises a return from routine condition.
Parent Case Info
This is a continuation of application Ser. No. 08/307,373, filed Sep. 15, 1994, now abandoned.
US Referenced Citations (19)
Non-Patent Literature Citations (1)
Entry |
"Optimizing Systems Performance Based on Pentium Processors" by John Novitsky, Mani Azimi, Raheel Ghaznavi -Intel Corporation, Santa Clara, CA; pp. 63-72;1993 IEEE. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
307373 |
Sep 1994 |
|