IP Library Granted Patent US 7,535,836
Granted Patent B2
US 7,535,836 · App. 10/644,204 · Granted May 19, 2009

Method and system to provide word-level flow control using spare link bandwidth

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 7,535,836
App. No.
10/644,204
Granted
May 19, 2009
Kind
B2
Abstract

Aspects of the invention utilize a secondary communication channel to conduct flow control at the word level. As a result, the overhead associated with flow control can be reduced, as well as the risk of buffer overflow. In one embodiment, embedded flow control information is encoded as reversed running disparity codes in each transmission lane. Additional control symbols may be coded by grouping a series of specially coded data words or inspecting a selected data word at regular intervals.

Claims (64)

1. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system;

transmitting a frame of data from said first system to said second system; and

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system.

2. The method of claim 1 , wherein the embedded link data comprises a data word having a reversed running disparity.

3. The method of claim 1 , wherein the embedded link data comprises a data word having alternative coding.

4. The method of claim 1 , wherein the secondary communication channel comprises start and stop packet codes.

5. The method of claim 1 , wherein the secondary communication channel comprises start/stop symbols.

6. The method of claim 1 , wherein the transmission is suspended at the end of a word within a frame.

7. The method of claim 1 , wherein embedding flow control data in a secondary communication channel of the communications link from the second system to the first system.

8. The method of claim 1 , wherein the communications link has at least two lanes.

9. The method of claim 1 , wherein the communications link has four lanes.

10. The method of claim 1 , comprising embedding flow control data in a secondary communication channel of the communications link from the second system to the first system.

11. A system providing word-level flow control, comprising:

a controller operably coupled to a full-duplex communication link, wherein said controller includes an encoder that encodes a secondary channel, and a decoder that decodes a received communication channel, wherein said secondary communications channel includes word level coding, and wherein said system stops transmission of data without waiting for the end of a packet in response to word level commands received on said secondary communication channel.

12. The system of claim 11 , wherein the word level command is based on reversed running disparity coding.

13. The system of claim 11 , wherein the word level command is constructed from a series of alternatively coded words.

14. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system;

transmitting a frame of data from said first system to said second system;

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel, wherein the secondary communication channel is formed from groups of enhanced coded data words occurring at regular intervals in a data frame.

15. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system;

transmitting a frame of data from said first system to said second system;

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel, wherein the secondary communication channel is formed from individual enhanced coded data words appearing at regular intervals in a data frame.

16. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system;

transmitting a frame of data from said first system to said second system; and

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system, wherein the embedded flow control data is embedded in said secondary communication channel using a combination of two symbols.

17. A method of providing flow control in a communication system, comprising:

establishing a bi-direction communications link with a remote system;

embedding flow control data in a secondary communication channel of the communications link for use by a primary communication channel of the communications link; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel, wherein the secondary communication channel is formed from groups of enhanced coded data words occurring at regular intervals in a data frame.

18. A method of providing flow control in a communication system, comprising:

establishing a bi-direction communications link with a remote system;

embedding flow control data in a secondary communication channel of the communications link for use by a primary communication channel of the communications link; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel, wherein the secondary communication channel is formed from individual enhanced coded data words appearing at regular intervals in a data frame.

19. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system;

transmitting a frame of data from said first system to said second system;

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel.

20. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system;

transmitting a frame of data from said first system to said second system;

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel, wherein the secondary communication channel comprises multiple coded symbols.

21. A method of providing word-level flow control in a communication system, comprising:

establishing a bi-directional communications link between a first system and a second system, wherein the bi-directional communications link conducts flow control without using a special flow control message that is not contained within normal data frames;

transmitting a frame of data from said first system to said second system; and

suspending the transmission of the frame of data without waiting for the end of the frame when the first system receives a stop transmission request embedded in a secondary communication channel between the second system and the first system.

22. A method of providing flow control in a communication system, comprising:

establishing a bi-direction communications link with a remote system;

embedding flow control data in a secondary communication channel of the communications link for use by a primary communication channel of the communications link; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel.

23. A method of providing flow control in a communication system, comprising:

establishing a bi-direction communications link with a remote system;

embedding flow control data in a secondary communication channel of the communications link for use by a primary communication channel of the communications link; and

resuming transmission of the frame with the next word following the receipt of a start transmission code embedded in the secondary communication channel, wherein the secondary communication channel comprises multiple coded symbols.

24. A method of providing flow control in a communication system, comprising:

establishing a bi-direction communications link with a remote system; and

embedding flow control data in a secondary communication channel of the communications link for use by a primary communication channel of the communications link, wherein the embedded flow control data comprises a data word having a reversed running disparity.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 26, 2004
From: LUND, MARTIN
To: BROADCOM CORPORATION
Reel/Frame 014290/0179 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 20, 2003
From: LUND, MARTIN
To: BROADCOM CORPRORATION
Reel/Frame 014423/0227 →