High-speed string and regular expression matching on FPGA

In recent FPGA researches, there has been much attention to dynamically reconfigurable algorithms that can modify their configuration on-the-fly. In this paper, we report recent progress on dynamically reconfigurable hardwares on FPGA for high-speed string and regular expression matching, which have been developed by our group since 2008. In particular, we describe the architecture, algorithms, and implementations of our pattern matching hardwares. We propose a pattern matching architecture, called dynamically reconfigurable bit-parallel NFA architecture which is the first dynamically reconfigurable hardware based on bit-parallel simulation of non-deterministic finite automata (NFA). This architecture enables fast dynamic reconfiguration of the patterns as well as high-throughput pattern matching for complex subclasses of regular expressions such as extended patterns, network expressions, and extended network expressions. In this approach, the information of an input NFA is compactly encoded in bit-masks stored in a collection of registers and block RAMs. Then, the NFA is efficiently simulated by a fixed circuitry using a combination of bitand arithmeticoperations on these bit-masks consuming one input letter per clock. Experimental results show that our architecture has advantages over the previously proposed architectures in the terms of reconfiguration and running times.

[1]  Hiroki Arimura,et al.  Dynamic reconfigurable bit-parallel architecture for large-scale regular expression matching , 2010, 2010 International Conference on Field-Programmable Technology.

[2]  Jan Koÿ Fast Regular Expression Matching Using FPGA , 2010 .

[3]  Viktor K. Prasanna,et al.  Memory-Efficient Pipelined Architecture for Large-Scale String Matching , 2009, 2009 17th IEEE Symposium on Field Programmable Custom Computing Machines.

[4]  Gaston H. Gonnet,et al.  A new approach to text searching , 1989, SIGIR '89.

[5]  Viktor K. Prasanna,et al.  Performance of FPGA implementation of bit-split architecture for intrusion detection systems , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[6]  Neil Immerman,et al.  Efficient pattern matching over event streams , 2008, SIGMOD Conference.

[7]  Viktor K. Prasanna,et al.  Time and area efficient pattern matching on FPGAs , 2004, FPGA '04.

[8]  Udi Manber,et al.  Fast text searching: allowing errors , 1992, CACM.

[9]  Wen-Jyi Hwang,et al.  Shift-Or Circuit for Efficient Network Intrusion Detection Pattern Matching , 2006, 2006 International Conference on Field Programmable Logic and Applications.

[10]  Viktor K. Prasanna,et al.  Regular Expression Software Deceleration for Intrusion Detection Systems , 2006, 2006 International Conference on Field Programmable Logic and Applications.

[11]  Viktor K. Prasanna,et al.  Fast Regular Expression Matching Using FPGAs , 2001, The 9th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'01).

[12]  Gaston H. Gonnet,et al.  A new approach to text searching , 1992, CACM.

[13]  Viktor K. Prasanna,et al.  Compact architecture for high-throughput regular expression matching on FPGA , 2008, ANCS '08.

[14]  Gonzalo Navarro,et al.  Flexible Pattern Matching in Strings: Practical On-Line Search Algorithms for Texts and Biological Sequences , 2002 .

[15]  Hiroki Arimura,et al.  Fast Bit-Parallel Matching for Network and Regular Expressions , 2010, SPIRE.