Programmable pattern match engine
First Claim
1. A system for receiving data comprising:
- a programmable pattern matching engine receiving a pattern and a data stream and generating an index entry if the pattern is present in the data stream, wherein the programmable pattern matching engine performs one or more of address filtering, logical link control (LLC) filtering, protocol identifier (PID) filtering, and security ID (SID) filtering in a Multimedia Cable Network System (MCNS);
a programmable media access controller reading the index entry and determining whether to continue receipt of the data stream;
a CRC engine performing CRC processing of a received data frame if the programmable media access controller determines to continue receipt of the data stream; and
a cable modem DMA controller coupled to the programmable media access controller, the programmable pattern matching engine, and the CRC engine, the cable modem DMA controller facilitating movement of data between the programmable media access controller, the programmable pattern matching engine, and the CRC engine.
12 Assignments
0 Petitions
Accused Products
Abstract
A communication device such as a cable modem that has a first interface for receiving data from a cable media, and a pattern matching engine that evaluates patterns in the data that is received at the first interface of the cable modem and that enables the determination of appropriate procedures for treatment of the data. The pattern matching engine of the cable modem may be configured to match address segments of the data that is received at the first interface of the cable modem. In addition, the pattern matching engine is often a programmable pattern matching engine that may be programmed according to patterns that are desired to matched during various operations of the cable modem. Of note, the pattern matching engine enables pattern matching of various length frame portions. Various aspects of the present invention may also be found in a method for a communication device to compare a predetermined pattern to a pattern that corresponds to a portion of a data frame. The method includes determining acceptable parameters for the data frames that are to be received at the communication device; programming the acceptable parameters into a pattern matching engine in the communication device; receiving a data frame at the communication device; parsing the data frame to obtain a predetermined portion of the data frame; comparing the predetermined portion of the data frame with the acceptable parameters stored in the pattern matching engine; and registering the result of the comparison in a suitable format for access by a microprocessor.
-
Citations
15 Claims
-
1. A system for receiving data comprising:
-
a programmable pattern matching engine receiving a pattern and a data stream and generating an index entry if the pattern is present in the data stream, wherein the programmable pattern matching engine performs one or more of address filtering, logical link control (LLC) filtering, protocol identifier (PID) filtering, and security ID (SID) filtering in a Multimedia Cable Network System (MCNS); a programmable media access controller reading the index entry and determining whether to continue receipt of the data stream; a CRC engine performing CRC processing of a received data frame if the programmable media access controller determines to continue receipt of the data stream; and a cable modem DMA controller coupled to the programmable media access controller, the programmable pattern matching engine, and the CRC engine, the cable modem DMA controller facilitating movement of data between the programmable media access controller, the programmable pattern matching engine, and the CRC engine. - View Dependent Claims (2, 3)
-
-
4. A cable modem comprising:
-
a programmable media access controller; a programmable pattern matching engine that is programmed by the media access controller, wherein the Programmable pattern matching engine Performs one or more of address filtering, logical link control (LLC) filtering, protocol identifier (PID) filtering, and security ID (SID) filtering in a Multimedia Cable Network System (MCNS); a programmable CRC engine that is programmed by the media access controller, and a cable modem DMA controller coupled to the programmable media access controller, the programmable pattern matching engine, and the programmable CRC engine, the cable modem DMA controller facilitating movement of data between the programmable media access controller, the programmable pattern matching engine, and the programmable CRC engine. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11)
-
-
12. A method for receiving data comprising:
-
determining two or more acceptable parameters for data frames that are to be received, wherein the acceptable parameters include one or more of address filtering, logical link control (LLC) filtering, protocol identifier (PID) filtering, and security ID (SID) filtering in a Multimedia Cable Network System (MCNS); programming at least one of the acceptable parameters into a pattern matching engine; programming at least one of the acceptable parameters into a DES/CRC engine; receiving a data frame at a communication device; passing the data frame to obtain a predetermined portion of the data frame; comparing the predetermined portion of the data frame with at least one of the acceptable parameters stored in the pattern matching engine; processing the data frame with the DES/CRC engine if the predetermined portion of the data frame matches that least one of the acceptable parameters; and facilitating movement of data between the programmable media access controller, the pattern matching engine, and the DES/CRC engine. - View Dependent Claims (13, 14, 15)
-
Specification