General input/output architecture, protocol and related methods to implement flow control
First Claim
Patent Images
1. An apparatus comprising:
- a device comprising logic to;
receive a flow control packet over a general purpose I/O interconnect, wherein the interconnect is to comprise a differential, point-to-point serial data link;
maintain one or more flow control credit values, based on information in the flow control packet, to represent buffer capacity of a receiver for each of a plurality of virtual channels, wherein flow control credit values of the plurality of virtual channels are maintained for each of a plurality of flow control credit types and the plurality of flow control credit types comprise posted request headers, posted request data payload, non-posted request headers, non-posted request data payload, completion headers, and completion data payload; and
determine whether to send a transaction layer packet to the receiver using the virtual channel based at least in part on the flow control credit value.
0 Assignments
0 Petitions
Accused Products
Abstract
An enhanced general input/output communication architecture, protocol and related methods are presented.
-
Citations
24 Claims
-
1. An apparatus comprising:
a device comprising logic to; receive a flow control packet over a general purpose I/O interconnect, wherein the interconnect is to comprise a differential, point-to-point serial data link; maintain one or more flow control credit values, based on information in the flow control packet, to represent buffer capacity of a receiver for each of a plurality of virtual channels, wherein flow control credit values of the plurality of virtual channels are maintained for each of a plurality of flow control credit types and the plurality of flow control credit types comprise posted request headers, posted request data payload, non-posted request headers, non-posted request data payload, completion headers, and completion data payload; and determine whether to send a transaction layer packet to the receiver using the virtual channel based at least in part on the flow control credit value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
13. An apparatus comprising logic, implemented at least in part in hardware, to be coupled to an interconnect to:
-
maintain a count of flow control credits to be granted to a transmitter for each of a plurality of virtual channels, wherein a count is maintained for each of a plurality of flow control credit types and the plurality of flow control credit types comprise posted request headers, posted request data payload, non-posted request headers, non-posted request data payload, completion headers, and completion data payload; assemble a flow control packet to include flow control information to represent buffer capacity associated with at least one of the plurality of virtual channels; and send the flow control packet to the transmitter. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A system comprising:
-
an interconnect; a first device; and a second device communicatively coupled to the first device using the interconnect, the second device to; receive a flow control packet over a general purpose I/O interconnect, wherein the interconnect is to comprise a differential, point-to-point serial data link; maintain one or more flow control credit values, based on information in the flow control packet, to represent buffer capacity of a receiver for each of a plurality of virtual channels, wherein flow control credit values of the plurality of virtual channels are to be maintained for each of a plurality of flow control credit types and the plurality of flow control credit types comprise posted request headers, posted request data payload, non-posted request headers, non-posted request data payload, completion headers, and completion data payload; and determine whether to send a transaction layer packet to the receiver using the virtual channel based at least in part on the flow control credit value. - View Dependent Claims (21, 22, 23, 24)
-
Specification