IP Library Granted Patent US 9,049,125
Granted Patent B2
US 9,049,125 · App. 13/729,953 · Granted Jun 2, 2015

General input/output architecture, protocol and related methods to implement flow control

Inventors: Jasmin Ajanovic (Portland, OR); David Harriman (Portland, OR); Blaise Fanning (Folsom, CA); David Lee (Portland, OR)
Assignee: Intel Corporation
H04L47/10G06F13/124G06F13/385G06F13/4265G06F13/4282G06F13/4059G06F13/42G06F13/4252G06F13/4269
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,049,125
App. No.
13/729,953
Granted
Jun 2, 2015
Kind
B2
Abstract

An enhanced general input/output communication architecture, protocol and related methods are presented.

Claims (14)

1. An apparatus comprising:

a device comprising logic to:

maintain flow control information for each of a plurality of virtual channels, wherein, the flow control information associated with a particular virtual channel of the plurality of virtual channels is to include an amount of consumed flow control credits and a flow control credit limit, wherein each flow control credit of the amount of consumed flow control credits is to be of a type from a set comprising posted request header flow control credits, posted request data payload flow control credits, non-posted request data payload flow control credits, non-posted request data payload flow control credits, completion header flow control credits, and completion data payload flow control credits, and wherein the amount of consumed flow control credits is to indicate an amount of flow control credits consumed by transaction layer packets since an initialization of the respective virtual channel;

identify initialization of flow control for the particular virtual channel, wherein initialization of the flow control is to include receipt of a value of the flow control credit limit associated with the particular virtual channel;

identify a second amount of flow control credits to be consumed by one or more transaction layer packets; and

determine whether to transmit the one or more transaction layer packets using the particular virtual channel based at least in part on the amount of consumed flow control credits and flow control credit limit for the particular virtual channel.

2. A method comprising:

identifying initialization of a virtual channel of a general purpose I/O interconnect, wherein initialization of the virtual channel includes identification of a flow control credit limit for the virtual channel;

identifying an amount of flow control credits associated with one or more transaction layer packets; and

determining whether to transmit the one or more transaction layer packets based at least in part on the flow control credit limit.

3. The method of claim 2 , further comprising transmitting the one or more transaction layer packets based on the determination.

4. The method of claim 2 , further comprising delaying transmission of the one or more transaction layer packets based on the determination.

5. The method of claim 2 , further comprising receiving, from a receiver, a flow control packet identifying the flow control credit limit.

6. The method of claim 2 , further comprising receiving, from a receiver, a flow control packet identifying an updated flow control credit limit.

Continuity (4)
Continuation 12395497 · Feb 27, 2009
Continuation 10227601 · Aug 23, 2002
Provisional Application 60314708 · Aug 24, 2001
Related Publication 20130268712A1 · Oct 10, 2013