Parallel pattern detection engine
First Claim
Patent Images
1. A method to recognize objects comprising:
- providing a database of patterns representative of objects to be recognized;
storing an operation code in a predefined sector of said database;
generating a data stream representative of unknown objects;
providing an address pointer to select one or more of said patterns in said database;
correlating a pattern selected from said patterns in said database with a block of data from said data stream; and
generating a status signal based upon a result of the correlation and the operation code stored with the selected pattern, wherein the operation code contains flag bits, wherein said flag bits indicate one of a single wildcard matching operation, a multiple wildcard matching operation, a last matching operation and an inverse matching operation, wherein if said flag bits contain bits indicating said single wildcard matching operation then a match is indicated if a byte in said data stream matches a byte with said single wildcard operation code, wherein if said flag bits contain bits indicating said multiple wildcard operation then a match is indicated if an indeterminate number of bytes in said data stream does not match a byte with said multiple wildcard operation code, wherein if said flag bits contain bits indicating said inverse matching operation then a match is indicated if every byte except a byte with said inverse operation code matches a byte in said data stream, wherein if said flag bits contain bits indicating said last matching operation then a match is indicated if a byte in said data stream is a last byte in a pattern.
1 Assignment
0 Petitions
Accused Products
Abstract
A parallel pattern detection engine (PPDE) comprise multiple processing units (PUs) customized to do various modes of pattern recognition. The PUs are loaded with different patterns and the input data to be matched is provided to the PUs in parallel. Each pattern has an Opcode that defines what action to take when a particular data in the input data stream either matches or does not match the corresponding data being compared during a clock cycle. Each of the PUs communicate selected information so that PUs may be cascaded to enable longer patterns to be matched or to allow more patterns to be processed in parallel for a particular input data stream.
-
Citations
9 Claims
-
1. A method to recognize objects comprising:
-
providing a database of patterns representative of objects to be recognized; storing an operation code in a predefined sector of said database; generating a data stream representative of unknown objects; providing an address pointer to select one or more of said patterns in said database; correlating a pattern selected from said patterns in said database with a block of data from said data stream; and generating a status signal based upon a result of the correlation and the operation code stored with the selected pattern, wherein the operation code contains flag bits, wherein said flag bits indicate one of a single wildcard matching operation, a multiple wildcard matching operation, a last matching operation and an inverse matching operation, wherein if said flag bits contain bits indicating said single wildcard matching operation then a match is indicated if a byte in said data stream matches a byte with said single wildcard operation code, wherein if said flag bits contain bits indicating said multiple wildcard operation then a match is indicated if an indeterminate number of bytes in said data stream does not match a byte with said multiple wildcard operation code, wherein if said flag bits contain bits indicating said inverse matching operation then a match is indicated if every byte except a byte with said inverse operation code matches a byte in said data stream, wherein if said flag bits contain bits indicating said last matching operation then a match is indicated if a byte in said data stream is a last byte in a pattern. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
Specification