[发明专利]面向正则表达式的多模式匹配硬件引擎及生成方法有效
申请号: | 201010032413.X | 申请日: | 2010-01-06 |
公开(公告)号: | CN101794295A | 公开(公告)日: | 2010-08-04 |
发明(设计)人: | 吴艳霞;顾国昌;温源;王吉发;王玉洁;高艳兵;林志强;刘海波;沈晶;孙颖 | 申请(专利权)人: | 哈尔滨工程大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 150001 黑龙江省哈尔滨市南岗区南通*** | 国省代码: | 黑龙江;23 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 面向 正则 表达式 模式 匹配 硬件 引擎 生成 方法 | ||
1.一种面向正则表达式的多模式匹配硬件引擎,其特征是:由多个单模式 匹配引擎并行组合而成,单模式匹配引擎包括通用模块、布线模式模块和特殊 字符模块三类;其中通用模块包括:字符匹配模块、.符号模块和计数器模块; 布线模式模块包括:+字符模块、*字符模块、?字符模块和|字符模块;特殊字 符模块包括:/s模块、/n模块、/d模块和/r模块;根据正则表达式特定的规 则有序结合,生成单模式匹配引擎;多个单模式匹配引擎的奇、偶数据总线连 接到奇、偶输入数据RAM上;来自网络的数据包分别存放于奇、偶输入数据RAM 之中,其中奇数字节的数据存放在奇输入数据RAM之中,偶数字节的数据存放 在偶输入数据RAM之中;每个输入数据RAM都有自己独立的地址生成器,地址 生成器通过生成顺序的RAM地址来将各自所存储的数据放到相应的奇、偶数据 总线上;同时,奇、偶数据总线分别连接到各个模块的奇、偶数据输入端口, 将数据以一个周期2个字符的速度提供给各个模块进行处理;奇数字节数据在 系统时钟上升沿时放到奇数据总线上,偶数字节数据在系统时钟下降沿时放到 偶数据总线上,奇、偶数据地址的生成时序相差半个系统周期,其中奇地址生 成器领先偶地址生成器半周期时间。
2.根据权利要求1所述的面向正则表达式的多模式匹配硬件引擎,其特征 是:所述通用模块中包括的所述字符匹配模块由两个独立的比较器、两个D触 发器和一个或门组成;两个比较器分别有两个输入端和一个输出端,两个比较 器的Compare Value输入端口互联,odd char input端口和even char input 端口分别作为两个比较器的另一输入端口接收网络数据;两个比较器的输出端 分别与两个D触发器的输入端相连;两个D触发器由统一的系统时钟控制,set 端口由统一的外部使能信号EN控制,CLR端口由统一的外部复位信号rst控制; 两个D触发器的输出端分别为odd match和even match;同时odd match和even match又分别与或门的两个输入端连接,或门的输出端为match端口;
所述通用模块中的.字符模块由两个8bitD触发器、两个1bitD触发器和一 个或门组成;所有D触发器的时钟端由系统时钟clk统一控制,SET端由外部 使能信号EN统一控制,CLR端由外部复位信号rst统一控制;两个8bitD触发 器的输入端D分别接奇字节字符输入odd char input和偶字节字符输入even char input,输出端Q分别接odd char output和even char output;两个1bit 触发器的D端全被置为1,Q端分别接或门的两个输入端;或门的输出端为match;
所述通用模块中的计数器模块由一个加一计数器、一个比较器和一个与门 组成;加一计数器有四个输入端——input端接收网络数据、clr端接收清零信 号、rst端接收复位信号、clk接外部时钟信号,一个输出端接比较器的输入端; 比较器的另一个输入端接计数值信号并且该计数值信号即Count Value-1;门 的两个输入端分别接比较器的输出端和input,输出端为out。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于哈尔滨工程大学,未经哈尔滨工程大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010032413.X/1.html,转载请声明来源钻瓜专利网。