Patent US5606665A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5606665A Expired / Lapsed US ⏱️ 0.0 years remaining

Buffer descriptor prefetch in network and I/O design

Assignee: Hewlett Packard Development Co LP
•
Filing: 1994-07-01
•
Granted: 1997-02-25
•
Expires: 2014-07-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The invention improves the efficiency of buffer descriptor processing by performing descriptor prefetches, where multiple descriptors are read within the same descriptor bus transaction. The invention reads multiple buffer descriptors each time the bus is accessed. This allows for a smaller FIFO in a cut-through network adapter because it reduces the number of bus transactions needed to transfer data.

Inventors

  • 👤 Henry S. Yang
  • 👤 Shirish S. Sathaye
  • 👤 Michael Ben-Nun
  • 👤 Moshe De-Leon
  • 👤 Simoni Ben-Michael

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 16:15
CPC Classifications
H; H04; H04L; H04L49/00; H04L49/90; H04L9/00; H04L9/40

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 141 words
A method for receiving one or more data packets, comprising the steps of: receiving a data packet at a network adapter; fetching a plurality of buffer descriptors from a shared memory during a bus transaction, said buffer descriptors having associated buffers in said shared memory, said shared memory connected to said network adapter over a shared bus supporting said bus transaction; holding said plurality of buffer descriptors in an adapter memory in said network adapter; determining availability of the associated buffer of a one of said plurality of buffer descriptors; writing at least a first part of said data packet to an associated buffer of said one of said plurality of buffer descriptors in response to a determination of availability; and, continuing to write a further part of said data packet to a buffer associated with a next said buffer descriptor.
Claim 2
Independent Claim 141 words
A method for receiving one or more data packets, comprising the steps of: receiving a data packet at a network adapter; fetching a plurality of buffer descriptors from a shared memory during a bus transaction, said buffer descriptors having associated buffers in said shared memory, said shared memory connected to said network adapter over a shared bus supporting said bus transaction; holding said plurality of buffer descriptors in an adapter memory in said network adapter; determining availability of the associated buffer of a one of said plurality of buffer descriptors; writing at least a first part of said data packet to an associated buffer of said one of said plurality of buffer descriptors in response to a determination of availability; and, continuing to write a further part of said data packet to a buffer associated with a next said buffer descriptor.
Claim 3
Independent Claim 167 words
A method for transmitting a data packet, comprising the steps of: sending a signal to a network adapter that a data packet is to be transmitted; fetching a plurality of buffer descriptors from a shared memory during a bus transaction in response to said signal, said buffer descriptors having associated buffers in said shared memory, said buffers for storing said data packet, said shared memory connected to said network adapter over a shared bus; holding said plurality of buffer descriptors in an adapter memory in said network adapter; determining whether the associated buffer of a one of said plurality of buffer descriptors contains a part of said data packet to be transmitted; transmitting the data from the associated buffer of said one of said plurality of buffer descriptors in response to said determining that there was data to transmit; and, continuing to transmit a further part of said data packet by examining a next buffer descriptor of said plurality of buffer descriptors for data to be transmitted.
Claim 4
Independent Claim 167 words
A method for transmitting a data packet, comprising the steps of: sending a signal to a network adapter that a data packet is to be transmitted; fetching a plurality of buffer descriptors from a shared memory during a bus transaction in response to said signal, said buffer descriptors having associated buffers in said shared memory, said buffers for storing said data packet, said shared memory connected to said network adapter over a shared bus; holding said plurality of buffer descriptors in an adapter memory in said network adapter; determining whether the associated buffer of a one of said plurality of buffer descriptors contains a part of said data packet to be transmitted; transmitting the data from the associated buffer of said one of said plurality of buffer descriptors in response to said determining that there was data to transmit; and, continuing to transmit a further part of said data packet by examining a next buffer descriptor of said plurality of buffer descriptors for data to be transmitted.
Claim 5
Independent Claim 96 words
An apparatus for transmitting and receiving data packets, comprising: a first memory for storing a data packet, said first memory having a plurality of buffers, said first memory having a plurality of buffer descriptors corresponding to said plurality of buffers; and, a network adapter connected to said first memory by a shared bus, said network adapter having a second memory capable of storing a plurality of buffer descriptors, said network adapter capable of fetching a plurality of buffer descriptors from said first memory in a single bus transaction in response to a signal for data transfer.
Claim 6
Independent Claim 96 words
An apparatus for transmitting and receiving data packets, comprising: a first memory for storing a data packet, said first memory having a plurality of buffers, said first memory having a plurality of buffer descriptors corresponding to said plurality of buffers; and, a network adapter connected to said first memory by a shared bus, said network adapter having a second memory capable of storing a plurality of buffer descriptors, said network adapter capable of fetching a plurality of buffer descriptors from said first memory in a single bus transaction in response to a signal for data transfer.
Claim 7
Dependent Claim 17 words
An apparatus as in claim 3, wherein said first memory is a shared memory in a computer.
Claim 8
Independent Claim 96 words
A method for transferring a data packet, comprising: storing a data packet in a first memory, said first memory having a plurality of buffers, said data packet stored in said plurality of buffers, and said first memory having a plurality of buffer descriptors corresponding to said plurality of buffers; fetching during a single bus transaction said plurality of buffer descriptors from said first memory by a network adapter, said network adapter connected to said first memory by a shared bus; and, storing said plurality of buffer descriptors in a second memory located in said network adapter.
Claim 9
Independent Claim 96 words
A method for transferring a data packet, comprising: storing a data packet in a first memory, said first memory having a plurality of buffers, said data packet stored in said plurality of buffers, and said first memory having a plurality of buffer descriptors corresponding to said plurality of buffers; fetching during a single bus transaction said plurality of buffer descriptors from said first memory by a network adapter, said network adapter connected to said first memory by a shared bus; and, storing said plurality of buffer descriptors in a second memory located in said network adapter.
Claim 10
Dependent Claim 50 words
The method of claim 5 further comprising: transferring data from said plurality of buffers to said network adapter in response to said plurality of buffer descriptors; transmitting said data onto a network by said network adapter in response to transfer of said data from said buffer to said network adapter.

References Cited (Backward Citations)

US5488724A Cited
US5293487A Cited
US5390299A Cited
US5299313A Cited
US5483640A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-02-25 2000-08-26 2001-02-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-02-25 2004-08-26 2005-02-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-02-25 2008-08-26 2009-02-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag