Nova Patents
US7185153B2

Packet assembly

Summary by NHIP

Packet Assembly in Memory

The method reads packet segments and commands a memory controller to shift and write data subsets while saving residues. Retrieving the second segment yields bytes that exactly fill a memory row when combined with the first residue.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

In general, in one aspect, the disclosure describes a method of assembling a packet in memory. The method includes reading data included in a first segment of a packet divided into multiple segments and issuing a command to a memory controller that causes the memory controller to shift and write a subset of the read data to a memory coupled to the memory controller. The method also includes saving the remainder of the read data as a first residue, retrieving data included in a second segment of the packet, and writing at least a portion of the retrieved data and the first residue to the memory.

US7185153B2, drawing sheet 1
Sheet 1 of 19

Term

Term ended

Expired 31 March 2025, 1.5 years ago.

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

17 claims: 3 independent, 14 dependent

  1. 1
    Broadest claimClaim Score 70, broad(NHIP)A method, comprising:reading data included in a first segment of a packet divided into multiple segments;issuing a command to a memory controller, the command causing the memory controller to shift and write a subset of the read data to a memory coupled to the memory controller;saving the remainder of the read data as a first residue;retrieving data included in a second segment of the packet;and writing at least a portion of the retrieved data and the first residue to the memory;wherein the retrieving data included in the second segment comprises retrieving a number of bytes that exactly fill a row of the memory when combined with the first residue.
  2. 9
    A program product, disposed on a computer readable medium, including instructions for causing an engine to:read data included in a first segment of a packet divided into multiple segments;issue a command to a memory controller, the command causing the memory controller to write a subset of the read data to a memory coupled to the memory controller;save the remainder of the read data as a first residue;retrieve data included in a second segment of the packet, the retrieved data having a number of bytes that exactly fill a row of the memory when combined with the first residue;and write at least a portion of the retrieved data and the first residue to the memory.
  3. 16
    A processor, comprising:an interface to components carrying packets between the processor and a network;multiple engines, at least one of the multiple engines to operate on instructions to: read data included in a first segment of a packet divided into multiple segments;issue a command to a memory controller shared by the multiple engines, the command causing the memory controller to shift and write a subset of the read data to a memory coupled to the memory controller;save the remainder of the read data as a first residue;retrieve data included in a second segment of the packet, the retrieved data having a number of bytes that exactly fill a row of the memory when combined with the first residue;and write at least a portion of the retrieved data and the first residue to the memory;issue a command to a memory controller, the command causing the memory controller to shift and write a subset of the second segment to the memory coupled to the memory controller;and save the remainder of the second segment as a second residue;and the memory controller shared by the multiple engines;wherein the multiple engines comprise multiple programmable engines integrated on the same integrated semiconductor chip.