IP Library Granted Patent US 7,376,763
Granted Patent B2
US 7,376,763 · App. 10/621,948 · Granted May 20, 2008

Method for transferring data from a memory subsystem to a network adapter by extending data lengths to improve the memory subsystem and PCI bus efficiency

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,376,763
App. No.
10/621,948
Granted
May 20, 2008
Kind
B2
Abstract

A method, apparatus, and computer instructions for transferring data from a memory to a network adapter in a data processing system. The frame size for a transfer of the data from the memory to the network adapter is identified. If the frame size is divisible by a cache line size without a remainder, a valid data length is set equal to the length field. However, if the frame size divided by the cache line size results in a remainder, the length field is set to align the data with the cache line size. The data transfer is then initiated using these fields.

Claims (16)

1. A method in a data processing system for transferring data from a memory to a network adapter, the method comprising:

receiving a request to transfer data in the memory to a network adapter;

setting a transfer size to align the data with a cache line size if the amount of data to be transferred is unequal to the cache line size, wherein an amount of data is less than or equal to the transfer size, wherein dummy data is included with the amount of data to be transferred to align the data with the cache line size if the amount of data is less than the transfer size, and wherein the amount of data to be transferred is in a frame and has a frame size;

setting a valid length indicator, wherein the valid length indicator is set to the amount of data and wherein the network adapter outputs only the amount of data set by the valid length indicator after the data has been transferred to the network adapter; and

responsive to receiving the request, sending the transfer size and the valid length indicator to the network adapter and transferring to the network adapter an amount of data equal to the transfer size, wherein the network adapter, upon receiving the amount of data equal to the transfer size, identifies the transfer size and the valid length indicator, discards the dummy data based on the transfer size and the valid length indicator, and outputs the amount of data set by the valid length indicator.

2. The method of claim 1 , wherein the cache line size is 2 n , wherein n is a positive integer.

3. The method of claim 1 , wherein the data is transferred from the memory to the network adapter through a bridge chip.

4. A method in a data processing system for transferring data from a memory to a network adapter, the method comprising:

identifying frame size for a transfer of the data from the memory to the network adapter;

setting a length equal to a cache line size;

if the frame size is divisible by a cache line size without a remainder, setting a valid data length equal to the length field;

if the frame size divided by the cache line size results in a remainder, setting the length field to align the data with the cache line size, wherein the length field is computed as

length field=(FLOOR(frame size/CLS)+1)*CLS,

wherein CLS is the cache line size,

wherein dummy data is included with the data to align the data with the cache line size; and

initiating a transfer of the data from the memory to the network adapter and sending the valid data length and the length field to the network adapter, wherein the network adapter, upon receiving the amount of data equal to the transfer size, identifies the transfer size and the valid length indicator, discards the dummy data based on the transfer size and the valid length indicator, and only outputs data identified by the valid data length.

Assignments (3)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: FACEBOOK, INC.
Reel/Frame 027988/0806 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2003
From: DIERKS, JR., HERMAN DIETRICH; HUA, BINH K.; KODUKULA, SIVARAMA K.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 014310/0518 →