IEEE Computer Architecture Letters · 2017 · 22 citations · 13 references
EngineeringComputer EngineeringComputer ScienceComputer ArchitectureHardware Description LanguagesReconfigurable ComputingAutomata TheoryFinite AutomataFinite State Machine ModelingFinite-state MachinesHardware AccelerationReconfigurable Embedded SystemsAutomata SimulationCompilation For Reconfigurable HardwareDesign Language RepresentationFinite Automata TheoryLanguage Representation SystemsRegular ExpressionsState Machine DesignSynthesis Of Finite-state Machines
We present MNCaRT, a comprehensive software ecosystem for the study and use of automata processing across hardware platforms. Tool support includes manipulation of automata, execution of complex machines, high-speed processing of NFAs and DFAs, and compilation of regular expressions. We provide engines to execute automata on CPUs (with VASim and Intel Hyperscan), GPUs (with custom DFA and NFA engines), and FPGAs (with an HDL translator). We also introduce MNRL, an open-source, general-purpose and extensible state machine representation language developed to support MNCaRT. The representation is flexible enough to support traditional finite automata (NFAs, DFAs) while also supporting more complex machines, such as those which propagate multi-bit signals between processing elements. We hope that our ecosystem and representation language stimulates new efforts to develop efficient and specialized automata processing applications.
13
Introduction to the Theory of Computation
Michael Sipser · ACM SIGACT News · 1996 · 2.8K citations
Fast Regular Expression Matching Using FPGAs
Reetinder Sidhu, Viktor K. Prasanna · 2001 · 533 citations
Efficient regular expression evaluation
Michela Becchi, Patrick Crowley · 2008 · 139 citations