Automation Framework for Large-Scale Regular Expression Matching on FPGA

Thilan Ganegedara, Y. Yang, V. Prasanna
{"title":"Automation Framework for Large-Scale Regular Expression Matching on FPGA","authors":"Thilan Ganegedara, Y. Yang, V. Prasanna","doi":"10.1109/FPL.2010.21","DOIUrl":null,"url":null,"abstract":"We present an extensible automation framework for constructing and optimizing large-scale regular expression matching (REM) circuits on FPGA. Paralleling the technique used by software compilers, we divide our framework into two parts: a frontend that parses each PCRE-formatted regular expression (regex) into a modular non-deterministic finite automaton (RE-NFA), followed by a backend that generates the REM circuit design for a multi-pipeline architecture. With such organization, various pattern and circuit level optimizations can be applied to the frontend and backend, respectively. The multi-pipeline architecture utilizes both logic slices and on-chip BRAM for optimized character matching; in addition, it can be configured at compile-time to produce concurrent matching outputs from multiple RE-NFAs. Our framework prototype handles up to 64k \"regular\" regexes with arbitrary complexity and number of states, limited only by the hardware resources of the target device. Running on a commodity 2.3 GHz PC (AMD Opteron 1356), it takes less than a minute for the framework to convert ~1800 regexes used by the Snort IDS into RTL-level designs with optimized logic and memory usage. Such an automation framework could be invaluable to REM systems to update regex definitions with minimal human intervention.","PeriodicalId":171235,"journal":{"name":"2010 International Conference on Field Programmable Logic and Applications","volume":"53 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2010-08-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"13","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2010 International Conference on Field Programmable Logic and Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/FPL.2010.21","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 13

Abstract

We present an extensible automation framework for constructing and optimizing large-scale regular expression matching (REM) circuits on FPGA. Paralleling the technique used by software compilers, we divide our framework into two parts: a frontend that parses each PCRE-formatted regular expression (regex) into a modular non-deterministic finite automaton (RE-NFA), followed by a backend that generates the REM circuit design for a multi-pipeline architecture. With such organization, various pattern and circuit level optimizations can be applied to the frontend and backend, respectively. The multi-pipeline architecture utilizes both logic slices and on-chip BRAM for optimized character matching; in addition, it can be configured at compile-time to produce concurrent matching outputs from multiple RE-NFAs. Our framework prototype handles up to 64k "regular" regexes with arbitrary complexity and number of states, limited only by the hardware resources of the target device. Running on a commodity 2.3 GHz PC (AMD Opteron 1356), it takes less than a minute for the framework to convert ~1800 regexes used by the Snort IDS into RTL-level designs with optimized logic and memory usage. Such an automation framework could be invaluable to REM systems to update regex definitions with minimal human intervention.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于FPGA的大规模正则表达式匹配自动化框架
我们提出了一个可扩展的自动化框架,用于在FPGA上构造和优化大规模正则表达式匹配(REM)电路。与软件编译器使用的技术并行,我们将框架分为两部分:前端将每个pcre格式的正则表达式(regex)解析为模块化的非确定性有限自动机(RE-NFA),然后是后端,为多管道架构生成REM电路设计。有了这样的组织,各种模式和电路级的优化可以分别应用于前端和后端。多管道架构利用逻辑切片和片上BRAM来优化字符匹配;此外,可以在编译时配置它,以从多个re - nfa生成并发匹配输出。我们的框架原型可以处理多达64k的具有任意复杂性和状态数量的“常规”正则表达式,仅受目标设备硬件资源的限制。在商用2.3 GHz PC (AMD Opteron 1356)上运行,框架只需不到一分钟的时间就可以将Snort IDS使用的1800个正则表达式转换为具有优化逻辑和内存使用的rtl级设计。这样一个自动化框架对于REM系统来说是非常宝贵的,它可以用最少的人工干预来更新正则表达式定义。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
IP Based Configurable SIMD Massively Parallel SoC Field Programmable Gate Array Implementation of Parts-Based Object Detection for Real Time Video Applications A Scalable, High-Performance Motion Estimation Application for a Weakly-Programmable FPGA Architecture FPGA Implementations of the Round Two SHA-3 Candidates A Triple Hybrid Interconnect for Many-Cores: Reconfigurable Mesh, NoC and Barrier
wanfang
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1