Claims
- 1. A reorder buffer for performing dependency checking in a microprocessor, comprising:an instruction storage, wherein said instruction storage is configured to store information regarding a plurality of instructions; an instruction control unit, wherein said instruction control unit is coupled to said instruction storage; a dependency table, wherein said dependency table is coupled to said instruction storage, wherein said dependency table includes a plurality of dependency entries, wherein each of said plurality of dependency entries is assigned to a different one of a plurality of registers, wherein each of said plurality of dependency entries identifies one of said plurality of instructions represented in said instruction storage, and wherein said one of said plurality of instructions is the most recent instruction in program order to update one of said plurality of registers; and a dependency control unit, wherein said dependency control unit is coupled to said dependency table, wherein said dependency control unit is configured to detect dependencies between said set of concurrently decoded instructions and said plurality of instructions represented in said instruction storage, and wherein said dependency control unit uses one of said plurality of dependency entries to resolve dependencies between said set of concurrently decoded instructions and said plurality of instructions represented in said instruction storage.
- 2. The reorder buffer as recited in claim 1 wherein the number of said plurality of dependency entries is the same as the number of said plurality of registers.
- 3. The reorder buffer as recited in claim 2 wherein each of said plurality of dependency entries includes:a tag field, wherein said tag field identifies said one of said plurality of instructions stored in said instruction storage; and a width field, wherein said width field identifies at least a portion of one of said plurality of registers, and wherein said width field is used to perform dependency width checking.
- 4. The reorder buffer as recited in claim 3 wherein each of said plurality of dependency entries includes:a valid field, wherein said valid field indicates the validity of one of said plurality of dependency entries.
Parent Case Info
This application is a Divisional of U.S. patent application Ser. No. 09/566,216, filed May 5, 2000 now U.S. Pat. No. 6,209,004, which is a Divisional of U.S. patent application Ser. No. 08/649,247, filed May 17, 1996 now U.S. Pat. No. 6,108,769, (which includes a continued prosecution application filed Jul. 1, 1998).
US Referenced Citations (36)
Foreign Referenced Citations (10)
Number |
Date |
Country |
0259095 |
Mar 1988 |
EP |
0381471 |
Aug 1990 |
EP |
0459232 |
Dec 1991 |
EP |
0 612 012 A1 |
Aug 1994 |
EP |
0 614 138 A1 |
Sep 1994 |
EP |
2263987 |
Aug 1993 |
GB |
2263985 |
Aug 1993 |
GB |
2281422 |
Mar 1995 |
GB |
WO 9320505 |
Oct 1993 |
WO |
WO 9416384 |
Jul 1994 |
WO |
Non-Patent Literature Citations (6)
Entry |
A 56-Entry Instruction Reorder Buffer, pp. 1-3; IEEE 2/96.* |
Intel, “Chapter 2: Microprocessor Architecture Overview,” pp. 2-1 through 2-4. |
Michael Slater, “AMD's K5 Designed to Outrun Pentium,” Microprocessor Report, vol. 8, No. 14, Oct. 24, 1994, 7 pages. |
Sebastian Rupley and John Clyman, “P6: The Next Step?,” PC Magazine, Sep. 12, 1995, 16 pages. |
Tom R. Halfhill, “AMD K6 Takes On Intel P6,” BYTE, Jan. 1996, 4 pages. |
Design and Implementation of 100 MHZ Reorder Buffer; 1995. |