• DocumentCode
    432877
  • Title

    Fast Regular Expression Matching Using FPGAs

  • Author

    Sidhu, Reetinder ; Prasanna, Viktor K.

  • Author_Institution
    University of Southern California
  • fYear
    2001
  • fDate
    March 29 2001-April 2 2001
  • Firstpage
    227
  • Lastpage
    238
  • Abstract
    This paper presents an efficient method for finding matches to a given regular expression in given text using FPGAs. To match a regular expression of length n, a serial machine requires 0(2^n) memory and takes 0(1) time per text character. The proposed approach reqiures only 0(n^2) space and still process a text character in 0(1) time (one clock cycle).The improvement is due to the Nondetermineistic Finite Automaton (NFA) used to perform the matching. As far as the authors are aware, this is the first prctical use of a nondeterministic state machine on programmable logic. Furthermore, the paper presents a simple, fast algorithm that quickly constructs the NFA for the given regular expression. Fast NFA construction is crucial because the NFA structure depends on the regular expression, which is known only at runtime. Implementations of the algorithm for conventional FPGAs and the self-reconfigurable Gate Array (SRGA) are described. To evaluate performance, the NFA logic was mapped onto the Virtex XCV100 FPGA and the SRGA. Also, the performance of GNU grep for matching regular expressions was evaluated on an 800 MHz Pentium III machine. The proposed approach was faster than best case grep performance in most cases. It was orders of magnitude faster than worst case grep performance. Logic for the largest NFA considered fit in less than a 1000 CLBs while DFA storage for grep in the worst case consumed a few hundred megabytes.
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Field-Programmable Custom Computing Machines, 2001. FCCM '01. The 9th Annual IEEE Symposium on
  • Conference_Location
    Rohnert Park, CA, USA
  • Print_ISBN
    0-7695-2667-5
  • Type

    conf

  • Filename
    1420919