Claims
- 1. A buffer circuit comprising:a first buffer configured to store a plurality of selected packet commands in a plurality of storage locations; a second buffer coupled to said first buffer and configured to store a plurality of index values, wherein each of said plurality of index values corresponds to one of said plurality of storage locations in said first buffer; and a write logic circuit coupled between said first buffer and said second buffer, wherein said write logic circuit is configured to successively read each of said plurality of index values from said second buffer and to cause a selected packet command to be stored in each storage location corresponding to each of said plurality of index values within said first buffer.
- 2. The buffer circuit as recited in claim 1 further comprising a retire logic circuit coupled between said first buffer and said second buffer, wherein said retire logic circuit is configured to determine whether each of said plurality of storage locations within said first buffer is available.
- 3. The buffer circuit as recited in claim 2, wherein said retire logic circuit is further configured to, in response to determining that a given storage location of said plurality of storage locations within said first buffer is available, cause to be stored within said second buffer, a particular index value corresponding to said given storage location.
- 4. The buffer circuit as recited in claim 3, wherein said first buffer is further configured to provide a first indication to said retire logic circuit indicative of each of said plurality of storage locations within said first buffer being available.
- 5. The buffer circuit as recited in claim 4, wherein said first buffer is further configured to provide said first indication to said retire logic circuit in response to receiving a second indication indicative of each of said corresponding selected packet commands stored within said second buffer being completed.
- 6. The buffer circuit as recited in claim 5, wherein each of said plurality of selected packet commands belongs to a respective virtual channel of a plurality of virtual channels.
- 7. The buffer circuit as recited in claim 6, wherein said plurality of virtual channels includes a posted channel, a non-posted channel and a response channel.
- 8. The buffer circuit as recited in claim 7, wherein said respective virtual channel is said non-posted channel.
- 9. The buffer circuit as recited in claim 7, wherein said second buffer is a first-in first-out (FIFO) buffer.
- 10. A method for storing a selected packet command within a buffer, said method comprising:providing an indication of an available location within said buffer; storing an index value corresponding to said available location within a first in first out buffer in response to said indication, wherein said index value is representative of said available location within said buffer; storing said selected packet command within said buffer in a location corresponding to said index value.
- 11. The method as recited in claim 10 further comprising determining said index value in response to receiving said indication of an available location.
- 12. The method as recited in claim 11 further comprising receiving an additional indication indicative of a previously stored selected packet command being completed.
- 13. The method as recited in claim 12, wherein said selected packet command belongs to a respective virtual channel of a plurality of virtual channels.
- 14. The method as recited in claim 13, wherein said plurality of virtual channels includes a posted channel, a non-posted channel and a response channel.
- 15. The method as recited in claim 14, wherein said respective virtual channel is said non-posted channel.
Parent Case Info
This is a continuation-in-part of application Ser. No. 09/978,534 filed on Oct. 15, 2001.
US Referenced Citations (7)
Non-Patent Literature Citations (1)
Entry |
U.S. patent application Ser. No. 09/399,281, filed Sep. 17, 1999. |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
09/978534 |
Oct 2001 |
US |
Child |
10/093125 |
|
US |