IP Library Granted Patent US 7,155,563
Granted Patent B1
US 7,155,563 · App. 10/763,020 · Granted Dec 26, 2006

Circuits to generate a sequential index for an input number in a pre-defined list of numbers

Assignee: Spans Logic Inc.
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,155,563
App. No.
10/763,020
Granted
Dec 26, 2006
Kind
B1
Abstract

Circuits are described that can detect the presence or absence of an input number in a pre-defined list of numbers, and provide an index into the list for a matching number. The elements of the list of numbers may be individual numbers, or sets of numbers within a range of numbers.

Claims (31)

1. A system for generating a sequential index of an input value of w bits in a first list of up to 2 w entries with a set of groupings with each grouping having at least one entry, each of said entries having a width of w bits, comprising:

a memory having 2 w elements of memory arranged in a first number of rows with each row having a data portion having a second number of elements and each row having a last index portion of a forth number of bits, a third number of bits of the input value are used to select a selected row from said first number of rows, said selected row including a selected data portion and a selected last index portion, where the sum of the second and third numbers is w;

a population count device, disposed to receive said selected data portion and said second number of bits of the input value,

for determining whether the input value is one of the entries in said first list,

for generating a first output signal value when the input value is not one of the entries in said first list, and

for generating a population count value when the input value is one of the entries in said first list; and

a sequential index device, disposed to receive said population count value and said selected last index portion, for combining said population count value and said last index value to generate the sequential index when the input value is one of the entries in said first list.

2. The system of claim 1 , wherein said population count value represents the number of entries in the list, in said selected row, positioned up to the input value position, that are entries in the first list.

3. The system of claim 2 , wherein the number of entries in said selected row position up to the input value position is determined using said second number of bits of the input value.

4. The system of claim 1 , wherein said first number is 2 w-b , said second number is b, and said third number (w-b).

5. The system of claim 1 , wherein said second number of elements can be two or more bits.

6. The system of claim 5 , wherein the sequential index can correspond to two or more values.

7. The system of claim 1 , wherein the sequential index can correspond to two or more values.

8. The system of claim 1 , wherein said data portion includes information regarding the entries of said first list.

9. The system of claim 1 , wherein said fourth number of bits is at least the number of bits required to categorize a total number of groupings in the set of groupings.

10. The system of claim 1 , where the memory is a random access memory.

11. A method for generating a sequential index of an input value of w bits in a first list of up to 2 w entries with a set of groupings with each grouping having at least one entry, each of said entries having a width of w bits, stored in a memory having 2 w elements of memory arranged in a first number of rows with each row having a data portion having a second number of elements and each row having a last index portion of a forth number of bits, comprising the steps of:

selecting a selected row from said first number of rows using a third number of bits of the input value, said selected row including a selected data portion and a selected last index portion, where the sum of the second and third numbers is w;

determining whether the input value is one of the entries in said first list,

generating a first output signal value when the input value is not one of the entries in said first list, and

generating a population count value when the input value is one of the entries in said first list; and

combining said population count value and said last index value to generate the sequential index when the input value is one of the entries in said first list.

12. The method of claim 11 , wherein said population count value represents the number of entries in the list, in said selected row, positioned up to the input value position, that are entries in the first list.

13. The method of claim 12 , wherein the number of entries in said selected row position up to the input value position is determined using said second number of bits of the input value.

14. The method of claim 11 , wherein said first number is 2 w-b , said second number is b, and said third number (w-b).

15. The method of claim 11 , wherein said second number of elements can be two or more bits.

16. The method of claim 15 , wherein the sequential index can correspond to two or more values.

17. The method of claim 11 , wherein the sequential index can correspond to two or more values.

18. The method of claim 11 , wherein said data portion includes information regarding the entries of said first list.

19. The method of claim 11 , wherein said fourth number of bits is at least the number of bits required to categorize a total number of groupings in the set of groupings.

20. The method of claim 11 , where the memory is a random access memory.

Assignments (3)
MERGER Recorded Nov 19, 2012
From: SPANS LOGIC INC.
To: CISCO SYSTEMS, INC.
Reel/Frame 029323/0609 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2012
From: CISCO SYSTEMS, INC.
To: CISCO TECHNOLOGY, INC.
Reel/Frame 029323/0844 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2004
From: SOMASUNDARAM, MADIAN
To: SPANS LOGIC INC.
Reel/Frame 015088/0575 →
Continuity (3)
Provisional Application 6045515000 · Mar 15, 2003
Provisional Application 6044277900 · Jan 27, 2003
Provisional Application 6044180900 · Jan 21, 2003