Claims
- 1. A buffer circuit comprising:a buffer configured to store packet commands that belong to a respective virtual channel of a plurality of virtual channels; and a command update circuit coupled to said buffer, wherein in response to receiving a partial completion indication associated with a peripheral bus cycle corresponding to a given packet command, said command update circuit is configured to generate a modified packet command; and wherein said command update circuit is further configured to cause said modified packet command to be stored within said buffer.
- 2. The buffer circuit as recited in claim 1, wherein in response to receiving a retry indication associated with said peripheral bus cycle corresponding to said given packet command, said command update circuit is further configured to cause said given packet command to be stored within said buffer without modification.
- 3. The buffer circuit as recited in claim 2, wherein said modified packet command specifies actions associated with said peripheral bus cycle that were not previously completed.
- 4. The buffer circuit as recited in claim 3, wherein said buffer is configured to store and output said packet commands in a first in, first out order.
- 5. The buffer circuit as recited in claim 4, wherein said command update circuit is further configured to calculate a data count value and to update a data count field with said data count value.
- 6. The buffer circuit as recited in claim 5, wherein said data count value is representative of a number of data packets corresponding to said given packet command.
- 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 virtual channel.
- 9. The buffer circuit as recited in claim 8, wherein said buffer is further configured to provide an indication corresponding to said buffer having no empty storage locations.
- 10. The buffer circuit as recited in claim 9, wherein said peripheral bus is an extended peripheral component interconnect (PCI-X) bus.
- 11. The buffer circuit as recited in claim 9, wherein said peripheral bus is a peripheral component interconnect (PCI) bus.
- 12. A computer system comprising:one or more processors; an input/output node connected to said one or more processors through a point-to-point packet bus; and one or more peripheral buses coupled to convey address, data and control signals between said input/output node and one or more peripheral devices; wherein said input/output node includes one or more peripheral interface circuits each including: a buffer circuit comprising: a buffer configured to store packet commands that belong to a respective virtual channel of a plurality of virtual channels; and a command update circuit coupled to said buffer, wherein in response to receiving a partial completion indication associated with a peripheral bus cycle corresponding to a given packet command, said command update circuit is configured to generate a modified packet command; and wherein said command update circuit is further configured to cause said modified packet command to be stored within said buffer.
- 13. The computer system as recited in claim 12, wherein in response to receiving a retry indication associated with said peripheral bus cycle corresponding to said given packet command, said command update circuit is further configured to cause said given packet command to be stored within said buffer without modification.
- 14. The computer system as recited in claim 13, wherein said modified packet command specifies actions associated with said peripheral bus cycle that were not previously completed.
- 15. The computer system as recited in claim 14, wherein said buffer is configured to store and output said packet commands in a first in, first out order.
- 16. The computer system as recited in claim 15, wherein said command update circuit is further configured to modify said given selected packet command by calculating a data count value and to update a data count field with said data count value.
- 17. The computer system as recited in claim 16, wherein said data count value is associated with a number of data packets corresponding to said given selected packet command.
- 18. The computer system as recited in claim 17, wherein said plurality of virtual channels includes a posted channel, a non-posted channel and a response channel.
- 19. The computer system as recited in claim 18, wherein said respective virtual channel is said non-posted virtual channel.
- 20. The computer system as recited in claim 19, wherein said buffer is further configured to indicate a condition corresponding to no empty storage locations in said buffer.
- 21. The computer system as recited in claim 20, wherein said one or more peripheral buses are peripheral component interconnect (PCI) buses.
- 22. The computer system as recited in claim 20, wherein said one or more peripheral buses are extended peripheral component interconnect (PCI-X) buses.
Parent Case Info
This is a continuation-in-part of application Ser. No. 09/978,534 filed on Oct. 15, 2001.
US Referenced Citations (6)
Number |
Name |
Date |
Kind |
3610966 |
Barber |
Oct 1971 |
A |
5612890 |
Strasser et al. |
Mar 1997 |
A |
6278532 |
Heimendinger et al. |
Aug 2001 |
B1 |
6414525 |
Urakawa |
Jul 2002 |
B2 |
6414961 |
Katayanagi |
Jul 2002 |
B1 |
6694397 |
Lackey et al. |
Feb 2004 |
B2 |
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/093270 |
|
US |