A Pipelined Non-Deterministic Finite Automaton-Based String Matching Scheme Using Merged State Transitions in an FPGA

PLoS One. 2016 Oct 3;11(10):e0163535. doi: 10.1371/journal.pone.0163535. eCollection 2016.

Abstract

This paper proposes a pipelined non-deterministic finite automaton (NFA)-based string matching scheme using field programmable gate array (FPGA) implementation. The characteristics of the NFA such as shared common prefixes and no failure transitions are considered in the proposed scheme. In the implementation of the automaton-based string matching using an FPGA, each state transition is implemented with a look-up table (LUT) for the combinational logic circuit between registers. In addition, multiple state transitions between stages can be performed in a pipelined fashion. In this paper, it is proposed that multiple one-to-one state transitions, called merged state transitions, can be performed with an LUT. By cutting down the number of used LUTs for implementing state transitions, the hardware overhead of combinational logic circuits is greatly reduced in the proposed pipelined NFA-based string matching scheme.

MeSH terms

  • Algorithms
  • Computer Simulation*
  • Computers*
  • Logic
  • Neural Networks, Computer*

Grants and funding

This work was partly supported by the ICT R&D program of Institute for Information & communications Technology Promotion (IITP) and the Ministry of Science, ICT & Future Planning (MSIP) (B0101-16-0233, Smart Networking Core Technology Development) and the Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by MSIP (2012R1A1A1002993). The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.