Patent ID: 7839937

Claim:
Circuitry for processing data, said circuitry comprising: at least two filter blocks arranged in parallel, each filter block comprising a plurality of filters arranged in parallel; input circuitry for storing input data, said input data being applied to each of said at least two filter blocks to provide in parallel a first result from a first of said at least two filter blocks and a second result from a second of said at least two filter blocks, wherein each of said at least two filter blocks stores a plurality of filter values, and wherein any result from each filter block is an indication of whether said input data matches any of the plurality of filter values in the filter block; and a programmable logic block arranged to receive the first result and the second result, and carry out a first Boolean operation with respect to first and second results, wherein the first result is a first operand to the first Boolean operation and the second result is a second operand to the first Boolean operation, and wherein the first Boolean operation applies a first Boolean operator to the first and second operands, wherein said programmable logic block provides an output indicating whether said input data is required for further processing, and wherein the programmable logic block is capable of being reprogrammed to perform a second Boolean operation with respect to said the first and second results, wherein the first result is a first operand to the second Boolean operation and the second result is a second operand to the second Boolean operation, and wherein the second Boolean operation applies a second Boolean operator, different from the first Boolean operator, to the first and second operands.