← Back to Patent Explorer
US5689674A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for binding instructions to dispatch ports of a reservation station

Assignee: Intel Corp
•
Filing: 1995-10-31
•
Granted: 1997-11-18
•
Expires: 2015-10-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for binding instructions to dispatch ports in a reservation station includes a counter mechanism and a port identifier. The counter mechanism maintains a count of instructions which are pending dispatch from at least one of the dispatch ports. The port identifier receives an instruction and identifies to which of the dispatch ports the instruction is to be bound, based on the count of instructions maintained by the counter mechanism.

Inventors

  • 👤 James S. Griffith
  • 👤 Shantanu R. Gupta
  • 👤 Glenn J. Hinton

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 00:15
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3836; G06F9/3838; G06F9/384; G06F9/3854; G06F9/3856; G06F9/3858

Claims Analysis

Total Claims: 29
Claim 1
Independent Claim 86 words
An apparatus for identifying a first dispatch port of a reservation station from which an instruction is to be dispatched, wherein the instruction could be dispatched from a plurality of dispatch ports of the reservation station, the apparatus comprising: a counter mechanism to maintain a first count of instructions which are pending dispatch from the first dispatch port of the plurality of dispatch ports; and a port identifier, coupled to the counter mechanism, to identify the first dispatch port based on the first count of instructions.
Claim 2
Independent Claim 86 words
An apparatus for identifying a first dispatch port of a reservation station from which an instruction is to be dispatched, wherein the instruction could be dispatched from a plurality of dispatch ports of the reservation station, the apparatus comprising: a counter mechanism to maintain a first count of instructions which are pending dispatch from the first dispatch port of the plurality of dispatch ports; and a port identifier, coupled to the counter mechanism, to identify the first dispatch port based on the first count of instructions.
Claim 3
Dependent Claim 95 words
The apparatus of claim 1, wherein the port identifier includes: a first port assignor to identify one dispatch port of a first set of the plurality of dispatch ports; and a second port assignor to identify one dispatch port of a second set of the plurality of dispatch ports, wherein the second port assignor is coupled to the first port assignor and is also coupled to the counter mechanism, and wherein the second port assignor is to identify the one dispatch port of the second set in response to a signal from the counter mechanism.
Claim 4
Dependent Claim 57 words
The apparatus of claim 1, wherein the counter mechanism is also to maintain a second count of instructions which are pending dispatch from a second dispatch port of the reservation station, and wherein the port identifier is to identify the first dispatch port based on both the first count of instructions and the second count of instructions.
Claim 5
Dependent Claim 70 words
The apparatus of claim 3, wherein the counter mechanism includes: a plurality of counters, wherein a first counter of the plurality of counters is to maintain the first count of instructions, and wherein a second counter of the plurality of counters is to maintain the second count of instructions; and a subtraction logic unit to provide to the port identifier a difference between the first counter and the second counter.
Claim 6
Dependent Claim 26 words
The apparatus of claim 4, wherein the port identifier identifies the first dispatch port based on the difference between the first counter and the second counter.
Claim 7
Independent Claim 132 words
An apparatus for binding an instruction to one of a plurality of dispatch ports in a reservation station, the apparatus comprising: an allocator for receiving the instruction and, upon receipt of the instruction, for identifying a first dispatch port to the reservation station, wherein the identifying binds the instruction to the first dispatch port, and wherein the allocator includes a port identifier for identifying the first dispatch port, wherein the port identifier identifies the first dispatch port based on both the instruction and a count of instructions in the reservation station which are tagged for dispatch from the first dispatch port; and wherein the reservation station is coupled to the allocator and wherein the reservation station is for buffering the instruction and also for dispatching the instruction to the first dispatch port.
Claim 8
Independent Claim 132 words
An apparatus for binding an instruction to one of a plurality of dispatch ports in a reservation station, the apparatus comprising: an allocator for receiving the instruction and, upon receipt of the instruction, for identifying a first dispatch port to the reservation station, wherein the identifying binds the instruction to the first dispatch port, and wherein the allocator includes a port identifier for identifying the first dispatch port, wherein the port identifier identifies the first dispatch port based on both the instruction and a count of instructions in the reservation station which are tagged for dispatch from the first dispatch port; and wherein the reservation station is coupled to the allocator and wherein the reservation station is for buffering the instruction and also for dispatching the instruction to the first dispatch port.
Claim 9
Dependent Claim 37 words
The apparatus of claim 6, wherein the allocator includes: a counter mechanism, coupled to the port identifier, for maintaining the count of instructions in the reservation station which are tagged for dispatch from the first dispatch port.
Claim 10
Dependent Claim 95 words
The apparatus of claim 7, wherein the port identifier includes: a first port assignor for identifying one of a first set of the plurality of dispatch ports; and a second port assignor for identifying one of a second set of the plurality of dispatch ports, wherein the second port assignor is coupled to the first port assignor and is also coupled to the counter mechanism, and wherein the second port assignor is for identifying the one dispatch port of the second set of the plurality of dispatch ports in response to the count of instructions.
Claim 11
Dependent Claim 93 words
The apparatus of claim 7, wherein the counter mechanism includes: a plurality of counters, wherein a first counter of the plurality of counters maintains the count of instructions which are tagged for dispatch from the first dispatch port, and wherein a second counter of the plurality of counters maintains a count of instructions which are tagged for dispatch from a second dispatch port of the reservation station; and a subtraction logic unit for providing to the port identifier a difference between the first counter and the second counter of the plurality of counters.
Claim 12
Independent Claim 94 words
An apparatus comprising: a reservation station for buffering an instruction and also for dispatching the instruction from a first dispatch port of a plurality of dispatch ports, wherein the instruction could be dispatched from any one of the plurality of dispatch ports; and an allocator for receiving the instruction from an instruction decode unit, wherein the allocator is coupled to the reservation station, and wherein the allocator includes, a port identifier for identifying to the reservation station the first dispatch port based on a number of instructions pending dispatch from the first dispatch port.
Claim 13
Independent Claim 94 words
An apparatus comprising: a reservation station for buffering an instruction and also for dispatching the instruction from a first dispatch port of a plurality of dispatch ports, wherein the instruction could be dispatched from any one of the plurality of dispatch ports; and an allocator for receiving the instruction from an instruction decode unit, wherein the allocator is coupled to the reservation station, and wherein the allocator includes, a port identifier for identifying to the reservation station the first dispatch port based on a number of instructions pending dispatch from the first dispatch port.
Claim 14
Dependent Claim 66 words
The apparatus of claim 10, wherein the instruction could be dispatched from the first dispatch port or a second dispatch port of the plurality of dispatch ports, and wherein the port identifier is also for identifying the first dispatch port based on both the number of instructions pending dispatch from the first dispatch port and a number of instructions pending dispatch from the second dispatch port.
Claim 15
Independent Claim 140 words
An apparatus for tagging an instruction for dispatch from one of a plurality of dispatch ports, the apparatus comprising: a reservation station for buffering a plurality of instructions and also for dispatching the plurality of instructions from the plurality of dispatch ports; and an allocator for receiving the plurality of instructions concurrently from an instruction decode unit, wherein the allocator is coupled to the reservation station, and wherein the allocator includes, a plurality of port identifiers corresponding to the plurality of instructions, wherein the plurality of port identifiers, in response to the receipt of the plurality of instructions, identifies to the reservation station a set of the plurality of dispatch ports from which the plurality of instructions is to be dispatched based on a number of instructions which are pending dispatch over the set of the plurality of dispatch ports.
Claim 16
Independent Claim 140 words
An apparatus for tagging an instruction for dispatch from one of a plurality of dispatch ports, the apparatus comprising: a reservation station for buffering a plurality of instructions and also for dispatching the plurality of instructions from the plurality of dispatch ports; and an allocator for receiving the plurality of instructions concurrently from an instruction decode unit, wherein the allocator is coupled to the reservation station, and wherein the allocator includes, a plurality of port identifiers corresponding to the plurality of instructions, wherein the plurality of port identifiers, in response to the receipt of the plurality of instructions, identifies to the reservation station a set of the plurality of dispatch ports from which the plurality of instructions is to be dispatched based on a number of instructions which are pending dispatch over the set of the plurality of dispatch ports.
Claim 17
Dependent Claim 20 words
The apparatus of claim 12, wherein the set of the plurality of dispatch ports are coupled to identical execution units.
Claim 18
Dependent Claim 14 words
The apparatus of claim 13, wherein the identical execution units are integer execution units.
Claim 19
Dependent Claim 16 words
The apparatus of claim 12, wherein each of the plurality of instructions is a micro operation.
Claim 20
Dependent Claim 167 words
A computer system comprising: a bus; a memory device which stores an instruction, wherein the memory device is coupled to the bus; and one or more processors coupled to the bus, wherein each of the one or more processors includes, a plurality of execution units; a reservation station for buffering a plurality of instructions, including the instruction, prior to dispatch to the plurality of execution units and also for dispatching the instruction to an execution unit of the plurality of execution units from a first dispatch port of a plurality of dispatch ports, and an allocator for receiving the instruction from the memory device and, upon receipt of the instruction, for identifying the first dispatch port to the reservation station, wherein the allocator includes a port identifier for identifying the first dispatch port, wherein the port identifier is for identifying the first dispatch port based on both the instruction and a count of instructions in the reservation station which are pending dispatch from the first dispatch port.
Claim 21
Dependent Claim 167 words
A computer system comprising: a bus; a memory device which stores an instruction, wherein the memory device is coupled to the bus; and one or more processors coupled to the bus, wherein each of the one or more processors includes, a plurality of execution units; a reservation station for buffering a plurality of instructions, including the instruction, prior to dispatch to the plurality of execution units and also for dispatching the instruction to an execution unit of the plurality of execution units from a first dispatch port of a plurality of dispatch ports, and an allocator for receiving the instruction from the memory device and, upon receipt of the instruction, for identifying the first dispatch port to the reservation station, wherein the allocator includes a port identifier for identifying the first dispatch port, wherein the port identifier is for identifying the first dispatch port based on both the instruction and a count of instructions in the reservation station which are pending dispatch from the first dispatch port.
Claim 22
Dependent Claim 37 words
The system of claim 16, wherein the allocator includes: a counter mechanism, coupled to the port identifier, for maintaining the count of instructions which are pending in the reservation station for dispatch from the first dispatch port.
Claim 23
Independent Claim 94 words
A method for identifying a first dispatch port of a reservation station from which an instruction is to be dispatched, wherein the instruction could be dispatched from a plurality of dispatch ports of the reservation station, the method comprising the steps of: (a) receiving the instruction; (b) determining a number of instructions which are pending dispatch from at least one of the plurality of dispatch ports; and (c) identifying the first dispatch port based on the number of instructions which are pending dispatch from the at least one of the plurality of dispatch ports.
Claim 24
Independent Claim 94 words
A method for identifying a first dispatch port of a reservation station from which an instruction is to be dispatched, wherein the instruction could be dispatched from a plurality of dispatch ports of the reservation station, the method comprising the steps of: (a) receiving the instruction; (b) determining a number of instructions which are pending dispatch from at least one of the plurality of dispatch ports; and (c) identifying the first dispatch port based on the number of instructions which are pending dispatch from the at least one of the plurality of dispatch ports.
Claim 25
Dependent Claim 51 words
The method of claim 18, wherein the identifying step (c) comprises the steps of: determining a difference between a number of instructions pending dispatch from the first dispatch port and a number of instructions pending dispatch from a second dispatch port; and identifying the first dispatch port based on the difference.
Claim 26
Independent Claim 110 words
An apparatus for identifying a first dispatch port of a plurality of dispatch ports of a reservation station from which an instruction is to be dispatched, wherein the instruction could be dispatched from any one of the plurality of dispatch ports, the apparatus comprising: means for maintaining a first count of instructions which are pending dispatch from the first dispatch port and a second count of instructions which are pending dispatch from a second dispatch port of the plurality of dispatch ports; and means, coupled to the means for maintaining, for identifying the first dispatch port based on both the first count of instructions and the second count of instructions.
Claim 27
Independent Claim 110 words
An apparatus for identifying a first dispatch port of a plurality of dispatch ports of a reservation station from which an instruction is to be dispatched, wherein the instruction could be dispatched from any one of the plurality of dispatch ports, the apparatus comprising: means for maintaining a first count of instructions which are pending dispatch from the first dispatch port and a second count of instructions which are pending dispatch from a second dispatch port of the plurality of dispatch ports; and means, coupled to the means for maintaining, for identifying the first dispatch port based on both the first count of instructions and the second count of instructions.
Claim 28
Dependent Claim 110 words
The apparatus of claim 20, wherein the means for identifying includes: means for identifying one dispatch port of a first set of the plurality of dispatch ports; and means for identifying one dispatch port of a second set of the plurality of dispatch ports, wherein the means for identifying one dispatch port of the second set is coupled to the means for identifying one dispatch port of the first set and is also coupled to the means for maintaining, and wherein the means for identifying one dispatch port of the second set is for identifying the one dispatch port of the second set in response to the means for maintaining.
Claim 29
Dependent Claim 75 words
The apparatus of claim 20, wherein the means for maintaining includes: a plurality of counting means, wherein a first counting means of the plurality of counting means maintains the first count of instructions, and wherein a second counting means of the plurality of counting means maintains the second count of instructions; and a means for providing to the means for receiving and identifying a difference between the first counting means and the second counting means.

References Cited (Backward Citations)

US4807115A Cited
US5031096A Cited
US5185868A Cited
US5202993A Cited
US5430851A Cited
US5519864A Cited
US5553256A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-11-17 2001-05-19 2001-11-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-11-17 2005-05-19 2005-11-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-11-17 2009-05-19 2009-11-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag