A fast and scalable pattern making engine is presented. The engine
represents variations on a Shift-And method capable of matching patterns
in data streams having high speed data rates. In one aspect of the
invention high speed is achieved by accessing the pattern RAM in
parallel. In another aspect, the input is likened to TDM and individual
slots or channels are accessed separately. The two aspects can also be
combined to provide a scalable and high speed pattern matching engine.
The engine is adaptable to streams of known length or more complex
expressions such as regular expressions with arbitrary length.