IP Library Patent Application 11695838
Patent Application
App. No. 11/695,838

Minimum processor instruction for implementing weighted fair queuing and other priority queuing

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 None
App. No.
11/695,838
Abstract

The present invention provides techniques for efficiently determining a minimum or maximum of a plurality of values and the index of the minimum using registers of a processor. The present invention also provides for various processor instructions for determining the minimum/maximum and index of two or more values. The present invention finds particular benefit in implementing heaps and in systems utilizing Weighted Fair Queuing (WFQ).

Claims (22)

1 . A processor for determining a minimum value of a plurality of values stored in source registers and determining an index value of source register having the minimum value, the processor comprising:

means for determining a first minimum value of a first value and a second value;

means for determining a second minimum value of a third value and a fourth value;

means for storing the first minimum value in a first portion of a first destination register and the second minimum value in a second portion of the first destination register; and

means for storing a first index value associated with the first minimum value in a first portion of a second destination register and a second index value associated with the second minimum value in a second portion of the second destination register;

wherein the means for determining the first minimum value and the means for determining the second minimum value are adapted to execute in parallel.

2 . The processor of claim 1 , wherein the means for determining and the means for storing are adapted to execute sequentially within one processor cycle.

3 . The processor of claim 1 , wherein each of the first, second, third, and fourth values includes an active status bit to indicate a status, and wherein a value having an active status is less than a value having an inactive status.

4 . The processor of claim 1 , wherein a value having “11” as its two most significant bits is less than a value having “00” as its two most significant bits.

5 . The processor of claim 1 , wherein the first source register and the destination register comprise a same register.

6 . The processor of claim 1 , wherein the second source register and the destination register comprise a same register.

7 . A processor for determining a maximum value of a plurality of values stored in source registers and determining an index value of source register having the maximum value, the processor comprising:

means for determining a first maximum value of a first value and a second value;

means for determining a second maximum value of a third value and a fourth value;

means for storing the first maximum value in a first portion of a first destination register and the second maximum value in a second portion of the first destination register; and

means for storing a first index value associated with the first maximum value in a first portion of a second destination register and a second index value associated with the second maximum value in a second portion of the second destination register;

wherein the means for determining the first maximum value and the means for determining the second maximum value are adapted to execute in parallel.

8 . The processor of claim 7 , wherein the means for determining and the means for storing are adapted to execute sequentially within one processor cycle.

9 . The processor of claim 7 , wherein each of the first, second, third, and fourth values includes an active status bit to indicate a status, and wherein a value having an active status is greater than a value having an inactive status.

10 . The processor of claim 7 , wherein a value having “11” as its two most significant bits is greater than a value having “00” as its two most significant bits.

11 . The processor of claim 7 , wherein the first source register and the destination register comprise a same register.

12 . The processor of claim 7 , wherein the second source register and the destination register comprise a same register.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2009
From: CONEXANT SYSTEMS, INC.; CONEXANT, INC.; BROOKTREE BROADBAND HOLDING INC.
To: IKANOS COMMUNICATIONS, INC.
Reel/Frame 023163/0723 →
RELEASE OF SECURITY INTEREST Recorded Aug 24, 2009
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: CONEXANT SYSTEMS, INC.
Reel/Frame 023134/0249 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2009
From: ZABARSKI, BORIS; SITBON, DAVID; NORMAN, ODED
To: GLOBESPANVIRATA INCORPORATED
Reel/Frame 022496/0692 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2009
From: GLOBESPANVIRATA, INC.
To: BROOKTREE BROADBAND HOLDING, INC.
Reel/Frame 022496/0819 →
SECURITY AGREEMENT Recorded Dec 7, 2007
From: CONEXANT SYSTEMS, INC.
To: THE BANK OF NEW YORK TRUST COMPANY, N.A.
Reel/Frame 020216/0940 →