Claims
- 1-20. (Cancelled).
- 21. A system for controlling the processing of instructions in a microprocessor, comprising:
a register file comprising a plurality of storage locations, each of said plurality of storage locations adapted to store a corresponding one of a plurality of instructions; a queue comprising a plurality of slots, each of said plurality of slots adapted to store an indicator that indicates whether a corresponding instruction stored in one of said plurality of storage locations is valid, wherein each indicator is advanced by one slot in said queue responsive to completion of an instruction and in accordance with a predefined order; and an execution unit adapted to receive an instruction from said register file and a corresponding indicator from said queue and to execute said received instruction only if said corresponding indicator indicates that said received instruction is valid.
- 22. The system of claim 21, wherein each of said plurality of storage locations in said register file is adapted to store a decoded instruction.
- 23. The system of claim 21, wherein each of said plurality of slots in said queue is further adapted to store a tag uniquely associated with a corresponding one of said plurality of storage locations in said register file.
- 24. The system of claim 21, wherein each of said indicators stored in said queue comprises a single bit.
- 25. The system of claim 21, wherein said queue comprises a first in first out queue.
- 26. The system of claim 21, wherein said register file further comprises a write data port adapted to receive instructions from an instruction source.
- 27. The system of claim 26, wherein said register file further comprises a write address port adapted to specify a storage location in said register file at which an instruction received from said instruction source is to be stored.
- 28. The system of claim 21, wherein said register file further comprises a read data port adapted to provide instructions to said execution unit.
- 29. The system of claim 28, wherein said register file comprises a read address port adapted to specify a storage location in said register file from which an instruction to be provided to said execution unit is to be retrieved.
- 30. A method for controlling the processing of instructions in a microprocessor, comprising:
storing each of a plurality of instructions in a corresponding storage location in a register file; storing an indicator corresponding to each of said plurality of instructions in one of a plurality of slots within a queue, wherein each indicator indicates whether a corresponding instruction is valid; receiving one of said plurality of instructions from said register file and an indicator corresponding to said received instruction from said queue; executing said received instruction only if said corresponding indicator indicates that said received instruction is valid; and advancing each indicator by one slot in said queue responsive to completion of an instruction and in accordance with a predefined order.
- 31. The method of claim 30, wherein storing each of a plurality of instructions in a corresponding storage location in a register file comprises storing each of a plurality of decoded instructions in a corresponding storage location in a register file.
- 32. The method of claim 30, further comprising storing a tag in each of said plurality of slots in said queue wherein each tag is uniquely associated with a corresponding one of said plurality of storage locations in said register file.
- 33. The method of claim 30, wherein storing an indicator comprises storing a single bit.
- 34. The method of claim 30, wherein advancing each indicator by one slot in said queue in accordance with a predefined order comprises advancing each indictor by one slot in said queue in accordance with a first in first out algorithm.
- 35. The method of claim 30, further comprises receiving instructions from an instruction source at a write port of said register file.
- 36. The method of claim 35, further comprising receiving address information at a write address port of said register file that specifies a storage location in said register file at which an instruction received from said instruction source is to be stored.
- 37. The method of claim 30, further comprising providing instructions to said execution unit from a read data port of said register file.
- 38. The method of claim 37, further comprising providing address information to a read address port of said register file that specifies a storage location in said register file from which an instruction to be provided to said execution unit is to be retrieved.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application is a continuation of U.S. patent application Ser. No. 09/574,251, filed May 19, 2000, now allowed, which is a continuation of U.S. patent application Ser. No. 09/252,655, filed Feb. 19, 1999, now U.S. Pat. No. 6,092,176, which is a continuation of application Ser. No. 08/811,237, filed Mar. 3, 1997, now U.S. Pat. No. 5,896,542, which is a continuation of application Ser. No. 08/224,328, filed Apr. 4, 1994, now U.S. Pat. No. 5,628,021, which is a continuation-in-part of application Ser. No. 07/999,648 filed Dec. 31, 1992, now U.S. Pat. No. 5,604,912.
Continuations (5)
|
Number |
Date |
Country |
Parent |
10034252 |
Jan 2002 |
US |
Child |
10847460 |
May 2004 |
US |
Parent |
09574251 |
May 2000 |
US |
Child |
10034252 |
Jan 2002 |
US |
Parent |
09252655 |
Feb 1999 |
US |
Child |
09574251 |
May 2000 |
US |
Parent |
08811237 |
Mar 1997 |
US |
Child |
09252655 |
Feb 1999 |
US |
Parent |
08224328 |
Apr 1994 |
US |
Child |
08811237 |
Mar 1997 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
07999648 |
Dec 1992 |
US |
Child |
08224328 |
Apr 1994 |
US |