Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
160 words
A method for interfacing an application program run on a processor to a hardware implemented content addressable memory capable of plural concurrent comparisons, said content addressable memory including a memory array, the method comprising the steps of: using an IN operator for checking the memory array in said content addressable memory for a matching tuple and, if no matching tuple, suspending the portion of the application program using the IN operator until a matching tuple appears in the memory array, providing a matching tuple to the application program and deleting the matching tuple from the memory array; using an OUT operator to place a tuple in the memory array; and using an operator for checking the memory array within said content addressable memory for a matching tuple, selectively suspending or not suspending the portion of the application program issuing the READ operator until a matching tuple appears in the memory array, and providing the matched tuple to the application program.
Claim 2
Independent Claim
160 words
A method for interfacing an application program run on a processor to a hardware implemented content addressable memory capable of plural concurrent comparisons, said content addressable memory including a memory array, the method comprising the steps of: using an IN operator for checking the memory array in said content addressable memory for a matching tuple and, if no matching tuple, suspending the portion of the application program using the IN operator until a matching tuple appears in the memory array, providing a matching tuple to the application program and deleting the matching tuple from the memory array; using an OUT operator to place a tuple in the memory array; and using an operator for checking the memory array within said content addressable memory for a matching tuple, selectively suspending or not suspending the portion of the application program issuing the READ operator until a matching tuple appears in the memory array, and providing the matched tuple to the application program.
Claim 3
Dependent Claim
42 words
The method of claim 1 further comprising the step of using a SAMPLE operator for checking the memory array for a matching tuple and returning the matching tuple if found, the application program not being suspended if a match is not found.
Claim 4
Dependent Claim
41 words
The method of claim 2 further comprising the steps of using a SAMPLELIST operator for checking the memory array for a matching tuple and returning all matching tuples found, the application program not being suspended if a match is not found.
Claim 5
Dependent Claim
63 words
The method of claim 3 further comprising the steps of using a READLIST operator for checking for a matching tuple and returning all matching tuples, if no matching tuple is found, suspending the portion of the application program issuing the READLIST operator, resuming operation of the suspended portion of the application program when one or more matching tuples appear in the memory array.
Claim 6
Dependent Claim
41 words
The method of claim 1 further comprising the steps of using a SAMPLELIST operator for checking the memory array for a matching tuple and returning all matching tuples found, the application program not being suspended if a match is not found.
Claim 7
Dependent Claim
63 words
The method of claim 1 further comprising the steps of using a READLIST operator for checking for a matching tuple and returning all matching tuples, if no matching tuple is found, suspending the portion of the application program issuing the READLIST operator, resuming operation of the suspended portion of the application program when one or more matching tuples appear in the memory array.
Claim 8
Dependent Claim
23 words
A method as recited in claim 1, including the further step of selectively returning one or all said matching tuples to said application.
Claim 9
Independent Claim
86 words
A method for searching a plurality of stored memory elements including the steps of storing at least a portion of said plurality of said stored memory elements in a content addressable memory as working memory elements, concurrently comparing, in said content addressable memory, said working memory elements with a pattern under a mask, and selectively returning either at least one matching working memory element or all matching memory elements to an application program if any working memory element in said content addressable memory matches said pattern.
Claim 10
Independent Claim
86 words
A method for searching a plurality of stored memory elements including the steps of storing at least a portion of said plurality of said stored memory elements in a content addressable memory as working memory elements, concurrently comparing, in said content addressable memory, said working memory elements with a pattern under a mask, and selectively returning either at least one matching working memory element or all matching memory elements to an application program if any working memory element in said content addressable memory matches said pattern.
Claim 11
Dependent Claim
44 words
A method as recited in claim 8, wherein said step of storing at least a portion of said plurality of said stored memory elements in a content addressable memory includes at least one step of applying an OUT operator to said content addressable memory.
Claim 12
Dependent Claim
46 words
A method as recited in claim 8, wherein said storing and comparing steps are controlled by said application program, said method including the further step of suspending said application program if no working memory element is found in said content addressable memory which matches said pattern.
Claim 13
Dependent Claim
22 words
A method as recited in claim 10, wherein said comparing, returning and suspending steps are performed in response to a READ operator.
Claim 14
Dependent Claim
32 words
A method as recited in claim 8, including the further step of suspending said application program if no working memory element is found in said content addressable memory which matches said pattern.
Claim 15
Dependent Claim
22 words
A method as recited in claim 12, wherein said comparing, returning and suspending steps are performed in response to a READLIST operator.
Claim 16
Dependent Claim
21 words
A method as recited in claim 8, wherein said comparing and returning steps are performed in response to a SAMPLE operator.
Claim 17
Dependent Claim
21 words
A method as recited in claim 8, wherein said comparing and returning steps are performed in response to a SAMPLELIST operator.
Claim 18
Dependent Claim
28 words
A method as recited in claim 8, including the further step of removing, from said content addressable memory, said working memory element which is returned to said application.
Claim 19
Dependent Claim
22 words
A method as recited in claim 16, wherein said comparing, returning and removing steps are performed in response or an IN operator.
Claim 20
Dependent Claim
43 words
A method as recited in claim 8, including the further step of selectively suspending or not suspending an application requesting said searching of said plurality of memory elements when no working memory element is found to match said pattern by said comparing step.
Claim 21
Independent Claim
200 words
A method for interfacing an application run on a processor to a hardware implemented content addressable memory using a paradigm having at least two pairs of constructs, each construct of said at least two pairs of constructs, when executed, performing the steps of executing a task in said hardware implemented content addressable memory, and returning matching memory elements from said hardware implemented content addressable memory to said application, wherein one pair of said at least two pairs of constructs differs from another pair of said at least two pairs of constructs by the number of matching working memory elements in said working memory elements returned to said application upon performing said executing step of a construct of said one pair of constructs and said another pair of constructs, and wherein one construct of each of said at least two pairs of constructs differing from another construct of each of said at least two pairs of constructs in a respective returning step by suspending execution of said construct or not suspending execution of said construct if no matching working memory element is found in said content addressable memory until a matching working memory element is placed in said content addressable memory.
Claim 22
Independent Claim
200 words
A method for interfacing an application run on a processor to a hardware implemented content addressable memory using a paradigm having at least two pairs of constructs, each construct of said at least two pairs of constructs, when executed, performing the steps of executing a task in said hardware implemented content addressable memory, and returning matching memory elements from said hardware implemented content addressable memory to said application, wherein one pair of said at least two pairs of constructs differs from another pair of said at least two pairs of constructs by the number of matching working memory elements in said working memory elements returned to said application upon performing said executing step of a construct of said one pair of constructs and said another pair of constructs, and wherein one construct of each of said at least two pairs of constructs differing from another construct of each of said at least two pairs of constructs in a respective returning step by suspending execution of said construct or not suspending execution of said construct if no matching working memory element is found in said content addressable memory until a matching working memory element is placed in said content addressable memory.
Claim 23
Dependent Claim
48 words
A method as recited in claim 19, wherein said paradigm includes one further construct for performing a step of adding a working memory element to said content addressable memory and another further construct for performing a step of deleting a working memory element from said content addressable memory.