US 7,502,875 B2
Parallel pattern detection engine
Kerry A. Kravec, Fishkill, N.Y. (US); Ali G. Saidi, Ann Arbor, Mich. (US); Jan M. Slyfield, San Jose, Calif. (US); and Pascal R. Tannhof, Fontainebleau (France)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Filed on Mar. 06, 2007, as Appl. No. 11/682,576.
Application 11/682576 is a division of application No. 10/757187, filed on Jan. 14, 2004, granted, now 7,243,165.
Prior Publication US 2007/0150622 A1, Jun. 28, 2007
Int. Cl. G06F 3/00 (2006.01); G06K 9/00 (2006.01); G06K 9/62 (2006.01)
U.S. Cl. 710—14  [382/181; 382/209] 9 Claims
OG exemplary drawing
 
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.