Patent Number: 7,085,918

Title: Methods and apparatuses for evaluation of regular expressions of arbitrary size

Abstract: Embodiments of the invention provide a programmable FSA building block, having a number of programmable registers and associated logic implemented therein, that provide the capability of contextually evaluating complex REs of arbitrary size against multiple data streams. Embodiments of the invention provide fully programmable hardware in which all of the states of an RE are instantiated and all of the states are fully connected. For one embodiment, the building blocks have a fixed number of states to facilitate implementation on a chip. For such an embodiment, an RE having an excessive number of states is implemented on two or more FSA building blocks and the FSA building blocks are then stitched together to effect evaluation of the RE. For one embodiment, two or more REs having a number of states less than the fixed number of states of a building block may be implemented with a single building block.

Inventors: Sharangpani; Harshvardan (Santa Clara, CA), Khare; Manoj (Saratoga, CA), Fielden; Kent (Sunnyvale, CA), Patil; Rajesh (Santa Clara, CA), Arora; Judge Kennedy (Los Gatos, CA)

Assignee: Cisco Systems, Inc.

International Classification: G06F 15/00 (20060101); G06F 17/28 (20060101)

Expiration Date: 8/01/02018