IP Library Granted Patent US 7,139,901
Granted Patent B2
US 7,139,901 · App. 09/948,919 · Granted Nov 21, 2006

Extended instruction set for packet processing applications

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,139,901
App. No.
09/948,919
Granted
Nov 21, 2006
Kind
B2
Abstract

A software program extension for a dynamic multi-streaming processor is disclosed. The extension comprising an instruction set enabling coordinated interaction between a packet management component and a core processing component of the processor. The software program comprises, a portion thereof for managing packet uploads and downloads into and out of memory, a portion thereof for managing specific memory allocations and de-allocations associated with enqueueing and dequeuing data packets, a portion thereof for managing the use of multiple contexts dedicated to the processing of a single data packet; and a portion thereof for managing selection and utilization of arithmetic and other context memory functions associated with data packet processing. The extension complements standard data packet processing program architecture for specific use for processors having a packet management unit that functions independently from a streaming processor unit.

Claims (22)

1. A software program extension for a dynamic multi-streaming processor, the software program extension stored in a computer readable medium comprising an instruction set enabling coordinated interaction between a packet management component and a stream processing component of the processor comprising:

a portion thereof for managing packet uploads and downloads into and out of memory;

a portion thereof for managing specific memory allocations and de-allocations associated with enqueueing and dequeuing data packets;

a portion thereof for managing the use of multiple contexts dedicated to the processing of a single data packet; and

a portion thereof for managing selection and utilization of one or more arithmetic functions and other context memory functions associated with data packet processing;

characterized in that the software program extension complements standard data packet processing program architecture for specific use for processors having a packet management unit that functions independently from a stream processor unit.

2. The software program extension of claim 1 wherein the dynamic multi-streaming processor functions as a data router coupled to a data packet network.

3. The software program extension of claim 2 wherein the data packet network is the Internet network.

4. The software program extension of claim 1 wherein the coordinated interaction includes conununication of requests, commands, and notifications that do not require responses.

5. The software program extension of claim 1 wherein the portion for managing packet uploads and downloads includes instructions for packet activation, packet completion, packet removal, packet identification, packet relocation, and packet update.

6. The software program extension of claim 5 wherein the packet removal and packet relocation instructions are associated with removal of a packet from memory and relocating a packet from one portion of memory to another.

7. The software program extension of claim 1 wherein the portion for managing memory allocations and de-allocations includes instructions for obtaining space in memory and for clearing previously allocated space in memory.

8. The software program extension of claim 7 wherein the memory is hardware controlled by a packet management component.

9. The software program extension of claim 1 wherein the software program extension is supported by a MIPS compatible processor architecture.

10. The software program extension of claim 1 wherein the portion for managing the use of multiple contexts includes instructions for obtaining an idle context, releasing an activated context, and for forcing nonuse of a context for predefined period of time.

11. The software program extension of claim 1 wherein the portion for managing selection and utilization of arithmetic and other context memory functions includes instructions for gathering information from memory for loading into a context, distributing information from a context into memory, selecting and accessing at least one addition function, and for selecting and accessing at least one subtraction function.

12. A software program extension for a dynamic multi-streaming processor, the software program extesion stored in a computer readable medium comprising an instruction set enabling coordinated interaction between a packet management component and a stream processing component of the processor comprising:

a portion thereof for managing packet uploads and downloads into and out of memory;

a portion thereof for managing specific memory allocations and de-allocations associated with enqueueing and dequeuing data packets;

a portion thereof for managing the use of multiple contexts dedicated to the processing of a single data packet, wherein the portion for managing the use of multiple contexts includes an instruction for forcing nonuse of a context for predefined period of time; and

a portion thereof for managing selection and utilization of one or more arithmetic functions and other context memory functions associated with data packet processing;

characterized in that the software provam extension complements standard data packet processing program architecture for specific use for processors having a packet management unit that functions independently from a stream processor unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2014
From: BRIDGE CROSSING, LLC
To: ARM FINANCE OVERSEAS LIMITED
Reel/Frame 033074/0058 →