Freescale's basic NFA capabilities for byte pattern scanning are as follows:
• The PME's regex compiler accepts search patterns using syntax similar to that in software-based regex engines, such as
Perl-Compatible Regular Expression (PCRE).
• Supports Perl meta-characters including wildcards, repeats, ranges, anchors, and so on.
• Byte patterns are simple matches, such as gabcd123h, existing in both the data being scanned and in the pattern
specification database.
• Up to 32 KB patterns of length 1-128 bytes
Freescale's extensions to NFA style pattern matching are principally related to event pattern scanning. Event patterns are
sequences of byte patterns linked by 'stateful rules.' Freescale uses event pattern scanning and stateful rule processing
synonymously. Stateful rules are hardware instructions by which users define reactions to pattern match events, such as state
changes, assignments, bitwise operations, addition, subtraction, and comparisons.
Some key characteristics and benefits of the Stateful Rule extensions include:
• Ability to match patterns across data "work units" or packet boundaries
• Can be used to correlate patterns, qualify matches (for example, contextual match), or to track protocol state
change
• Easily support "greedy" wildcards
• For example, ABC.*DEF == two patterns tied together by a stateful rule
• Delays the need for software post-processing. Software is alerted after all byte patterns are detected in the proper
sequence, rather than any time a byte pattern is detected.
• Implements a significant subset of the regex pattern definition syntax as well as many constructs which cannot be
expressed in standard PCRE
• PME 2.1 supports up to 32K stateful rules, linking multiple byte patterns
The PME 2.1 dequeues data from its QMan hardware portal and, based on FQ configuration, scans the data against one of
256 pattern sets, 16 subsets per pattern set.
When the PME finds a byte pattern match, or a final pattern in a stateful rule, it generates a report.
4.10.2.5 RapidIO Message Manager (RMan 1.0)
The RapidIO message manager (RMan) produces and consumes Type 8 Port-write, Type 9 Data Streaming, Type 10
Doorbells and Type 11 Messaging traffic and is capable of producing Type 5 NWRITE and Type 6 SWRITE transactions.
For inbound traffic, the RMan supports up to 17 open reassembly contexts as a arbitrary mix of Type 9, and Type 11 traffic.
As ingress packets arrive at the RMan, they are compared against up to 64 classification rules to determine the target queue.
These rules support Type 8, 9, 10 and 11 transaction types. They may be wild-carded and are configured as masks over
selected header fields. This table lists the fields that are maskable as part of each classification rule.
Table 4. Maskable fields in each classification rule
Classification rule Field
Transaction types RapidIO port
Source device ID
Destination device ID
Flow level
Type 9 messaging-specific Class-of-service (CoS)
StreamID
Type 11 messaging-specific Mailbox
Extended mailbox
Letter
Chip features
T2080 Product Brief, Rev 0, 04/2014
Freescale Semiconductor, Inc. 15