IP Library Granted Patent US 8,635,383
Granted Patent B2
US 8,635,383 · App. 13/114,321 · Granted Jan 21, 2014

Process to generate various length parameters in a number of SGLS based upon the length fields of another SGL

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 8,635,383
App. No.
13/114,321
Granted
Jan 21, 2014
Kind
B2
Abstract

A method of generating length parameters, comprising the steps of reading a data stream from a host, detecting a particular field of the data stream, and calculating a variable based on a length parameter of a first list to be transferred. The data stream may comprise a plurality of definitions. The method may also comprise the step of selecting one of the list definitions. One of the list definitions may be used to generate a length parameter used in a second list in response to (i) the particular field of the data stream and (ii) the length parameter of the first list.

Claims (14)

1. A method of generating length parameters, comprising the steps of: reading a data stream from a host, wherein said data stream comprises a plurality of list definitions including modes: (i) DMA, (ii) DMA data only, (iii) interleaved, or (iv) Data Integrity Field (DIF) only; detecting whether the data stream needs an inline data integrity field (DIF) or a separate data integrity field; calculating a number of blocks to be transferred based on a first length parameter of a first scattered gather list; and selecting one of said plurality of list definitions to generate a second length parameter used in a second scattered gather list in response to: (a) said detecting whether the data stream needs the inline data integrity field (DIF) or the separate data integrity field and (b) said first length parameter of said first scattered gather list and said calculated number of blocks.

2. The method according to claim 1 , wherein a first of said plurality of list definitions comprises the interleaved mode.

3. The method according to claim 2 , wherein said method further comprises: determining if said data stream comprising the first of said plurality of list definitions needs the inline data integrity field.

4. The method according to claim 3 , wherein said method further comprises: if said data stream comprising the first of said plurality of list needs the inline data integrity field, setting said second length parameter used in said second scattered gather list equal to said first length parameter of said first scattered gather list.

5. The method according to claim 3 , wherein said method further comprises: if said data stream comprising the first of said plurality of list definitions does not need the inline data integrity field, setting said second length parameter used in said second scattered gather list equal to said first length parameter of said first scattered gather list plus said calculated number of blocks.

6. The method according to claim 1 , wherein a second of said plurality of list definitions comprises the Data Integrity Field (DIF) only mode.

7. The method according to claim 6 , wherein said method further comprises: setting said second length parameter used in said second scattered gather list equal to said calculated number of blocks.

8. The method according to claim 1 , wherein a third of said plurality of list definitions comprises the Direct Memory Access (DMA) data only mode.

9. The method according to claim 8 , wherein said method further comprises: determining if said data stream comprising the third of said plurality of list definitions needs the inline data integrity field.

10. The method according to claim 9 , wherein said method further comprises: if said data stream comprising the third of said plurality of list definitions needs the inline data integrity field, setting said second length parameter used in said second scattered gather list equal to said first length parameter of said first scattered gather list.

11. The method according to claim 9 , wherein said method further comprises: if said data stream comprising the third of said plurality of list definitions does not need the inline data integrity field, setting said second length parameter used in said second scattered gather list equal to said first length parameter of said first scattered gather list minus said calculated number of blocks.

12. An apparatus comprising: a host configured to generate a data stream, wherein said data stream comprises a plurality of list definitions including modes: (i) DMA, (ii) DMA data only, (iii) interleaved, or (iv) Data Integrity Field (DIF) only; and a controller configured to: (i) detect whether the data stream needs an inline data integrity field (DIF) or a separate data integrity field, (ii) calculate a number of blocks to be transferred based on a first length parameter of a first scattered gather list, and (iii) select one of said plurality of list definitions to generate a second length parameter used in a second scattered gather list in response to: (a) said detect whether the data stream needs an inline data integrity field (DIF) or a separate data integrity field and (b) said first length parameter of said first scattered gather list and said calculated number of blocks.

13. The apparatus according to claim 12 , wherein a DMA engine generates said second length parameter used in said second scattered gather list.

14. The apparatus according to claim 13 , wherein said DMA engine comprises a cache memory to store said first length parameter of said first scattered gather list.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE ERROR IN RECORDING THE MERGER IN THE INCORRECT US PATENT NO. 8,876,094 PREVIOUSLY RECORDED ON REEL 047351 FRAME 0384. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 8, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 049248/0558 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE MERGER PREVIOUSLY RECORDED AT REEL: 047230 FRAME: 0910. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047351/0384 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047230/0910 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2011
From: SINGH, GURVINDER P.
To: LSI CORPORATION
Reel/Frame 026331/0867 →