Hardware Regex Filter Sharing Character Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data processing technologies face limitations in optimizing regular expression matching performance due to the constraints of general-purpose hardware, which can lead to inefficiencies in area, power consumption, and complexity when implementing dedicated circuitry for regular expression filtering.
Innovation Solution
Implementing a hardware-accelerated regular expression filter using Field Programmable Gate Arrays (FPGAs) that shares character data across lookups, reducing the size and complexity of the filter design by utilizing nondeterministic finite automaton (NFA) states and optimizing the utilization of hardware resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If general purpose hardware is used to execute query engines, then versatility in performing queries in different contexts is improved, but performance is limited and cannot achieve optimization beyond software applications alone
Solution Approach 1:
The system segments query processing into two parts: general-purpose hardware executes the query engine software for versatility, while dedicated circuitry handles specific filtering operations for performance. This segmentation allows each component to optimize for its specific function without compromising the other.
Solution Approach 2:
The patent introduces an intermediary mechanism where the query engine on general-purpose hardware communicates with dedicated filtering circuitry. This intermediary interface allows the software to direct specific filtering tasks to hardware accelerators, combining the versatility of software with the performance of hardware.
2Productivity
If dedicated circuitry is implemented for regular expression filtering, then performance gains beyond software applications are achieved, but area, power consumption, and complexity increase
Solution Approach 1:
The dedicated circuitry is designed with universal components that can handle multiple regular expression patterns and filtering operations. By using universal building blocks that can be configured for different patterns, the circuit achieves high performance without proportionally increasing complexity.
Solution Approach 2:
The patent employs parameterized designs where circuit behavior is controlled by configurable parameters rather than hard-coded logic. This allows the same circuit structure to adapt to different regular expression patterns by changing parameters, reducing the need for multiple specialized circuits and thereby lowering overall complexity.
Data Source
AI summary
Integrated circuits may implement a filter to identify items in a data store that match a regular expression by sharing character data across lookups in the filter. The NFA states of the may be programmed responsive to a query that includes a regular expression. The NFA states may include a character decode stage that operates on one portion of character bits, while another portion of character bits is evaluated at a state detection stage that also evaluates an output value of the character decode stage.


