US6748466B2

Method and apparatus for high throughput short packet transfers with minimum memory footprint

Summary by NHIP

Short Packet Transfer Method

The method detects short packet conditions during queue element transfer descriptor execution and follows alternate pointers to a second bank if detected. It asserts interrupts when buffer contents exceed storage capacity and uses the current descriptor as overflow for buffer contents.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

A device is presented including a host controller. A host controller driver is connected to the host controller. The host controller arranges queue element transfer descriptors (qTDs) in a circularly linked order. Also presented is a method including determining whether execution of a first queue element transfer descriptor (qTD) in a first bank including many qTDs results in a short packet condition. Following an alternate pointer in the first bank that points to a second bank if execution of the first qTD resulted in the short packet condition. Following a next pointer to a second qTD in the first bank if the execution of the first qTD completed normally. Also executing the second qTD in the first bank. The qTDs in the first bank and the second bank are circularly linked.

US6748466B2, drawing sheet 1
Sheet 1 of 9

Term

Term ended

Expired 12 August 2022, 4.1 years ago.

  1. Priority and filed
  2. Granted
  3. Expired
  4. Today

10 claims: 2 independent, 8 dependent

  1. 1
    Broadest claimClaim Score 46, average(NHIP)A method comprising:determining whether execution of a first queue element transfer descriptor (qTD) in a first bank including a plurality of qTDs results in a short packet condition;following an alternate pointer in the first bank that points to a second bank if execution of the first qTD resulted in the short packet condition;following a next pointer to a second qTD in the first bank if the execution of the first qTD completed normally;executing the second qTD in the first bank, determining whether execution of a buffer contents completed execution and completed without a short packet condition if a size of contents in the first buffer is greater than a storage capacity in the first bank;asserting an interrupt to a host controller driver;clearing status of the first qTD and initializing the first qTD;and using the first qTD as overflow for the contents of the first buffer;wherein the qTDs in the first bank and the second bank are circularly linked.
  2. 6
    An apparatus comprising a machine-readable medium containing instructions which, when executed by a machine, cause the machine to perform operations comprising:determining whether execution of a first queue element transfer descriptor (qTD) in a first bank including a plurality of qTDs results in a short packet condition;following an alternate pointer in the first bank that points to a second bank if execution of the first qTD resulted in the short packet condition;following next pointer to a second qTD in the first bank if the execution of the first qTD completed normally;executing the second qTD in the first bank;determining whether execution of a buffer contents completed execution and completed without a short packet condition if a size of contents in the first buffer is greater than a storage capacity in the first bank;asserting an interrupt to a host controller driver;clearing status of the first qTD and initializing the first qTD;and using the first qTD as overflow for the contents of the first buffer, wherein the qTDs in the first bank and the second bank are circularly linked.
Independent claims2