状态机晶格中的计数器操作制造技术

技术编号:10459587 阅读:161 留言:0更新日期:2014-09-24 14:56
本发明专利技术揭示若干方法及装置,其中存在一种包含有限状态机晶格(30)的装置。所述晶格(30)可包含适合于计数所述晶格(30)中的可编程元件(34、36)检测到一条件的次数的计数器(58)。所述计数器(58)可经配置以响应于计数检测到所述条件达特定次数而输出。举例来说,所述计数器(58)可经配置以响应于以下各项而输出:确定检测到一条件达至少(或不超过)所述特定次数、确定检测到所述条件达恰好所述特定次数或确定在特定次数范围内检测到所述条件。所述计数器(58)可耦合到所述装置中的其它计数器(58)以用于确定高计数操作及/或特定量词。

【技术实现步骤摘要】
【国外来华专利技术】状态机晶格中的计数器操作
本专利技术的实施例一般来说涉及电子装置,且更具体来说,在某些实施例中涉及用 于型式辨识的并行有限状态机。
技术介绍
在计算领域中,型式辨识任务日益具挑战性。在计算机之间传输的数据量越来越 大,且用户希望检测的型式的数目日益增加。举例来说,通常通过搜索数据流中的型式(例 如,特定短语或代码片段)来检测垃圾邮件及恶意软件。型式的数目随垃圾邮件及恶意软 件的多样化而增加,因为新型式可经实施以搜索新变化形式。 辨识一型式通常可涉及检测指示所述型式的各种条件。计数检测到一(若干)条 件的次数也可为有用的。计数器可经实施以计数检测到一条件的次数。然而,辨识一型式 有时可涉及不可通过基本计数器容易地计数的所检测条件的特定量词。 【附图说明】 图1图解说明根据本专利技术的各种实施例的具有状态机引擎的系统的实例。 图2图解说明根据本专利技术的各种实施例的图1的状态机引擎的FSM晶格的实例。 图3图解说明根据本专利技术的各种实施例的图2的FSM晶格的块的实例。 图4图解说明根据本专利技术的各种实施例的图3的块的行的实例。 图5图解说明根据本专利技术的各种实施例的图4的行的两个一群组的实例。 图6图解说明根据本专利技术的各种实施例的有限状态机图的实例。 图7图解说明根据本专利技术的各种实施例的借助FSM晶格实施的两层级层次的实 例。 图8图解说明根据本专利技术的各种实施例的用于编译器将源代码转换成二进制文 件以用于编程图2的FSM晶格的方法的实例。 图9图解说明根据本专利技术的各种实施例的状态机引擎。 图10图解说明根据本专利技术的各种实施例的如图3中的块,所述块在所述块的行中 具有计数器。 图11图解说明根据本专利技术的各种实施例的图10的计数器。 【具体实施方式】 现在转到各图,图1图解说明通常由参考编号10指定的基于处理器的系统的实施 例。系统10可为多种类型中的任一者,例如桌上型计算机、膝上型计算机、寻呼机、蜂窝式 电话、个人记事本、便携式音频播放器、控制电路、相机等。系统10也可为网络节点,例如路 由器、服务器或客户端(例如,先前所描述的类型的计算机中的一者)。系统10可为某一 其它种类的电子装置,例如复印机、扫描仪、打印机、游戏控制台、电视机、机顶盒视频分配 或记录系统、电缆盒、个人数字媒体播放器、工厂自动化系统、汽车计算机系统或医疗装置。 (用以描述系统的这各种实例的术语(如本文中所使用的许多其它术语)可共享一些所指 物,且如此不应按照所列举的其它物项来狭义地理解。) 在典型基于处理器的装置(例如系统10)中,处理器12(例如微处理器)控制系 统10中的系统功能及请求的处理。此外,处理器12可包括共享系统控制的多个处理器。处 理器12可直接或间接耦合到系统10中的元件中的每一者以使得处理器12通过执行可存 储于系统10内或在系统10外部的指令来控制系统10。 根据本文中所描述的实施例,系统10包含可在处理器12的控制下操作的状态机 引擎14。状态机引擎14可采用若干种状态机架构中的任一者,包含(但不限于)Mealy架 构、Moore架构、有限状态机(FSM)、确定性FSM(DFSM)、位并行状态机(BPSM)等。虽然可使 用多种架构,但出于论述目的,本申请案是指FSM。然而,所属领域的技术人员将了解可使用 多种状态机架构中的任一者来米用所描述技术。 如下文所进一步论述,状态机引擎14可包含若干个(例如,一或多个)有限状态 机(FSM)晶格。每一 FSM晶格可包含各自并行接收及分析同一数据的多个FSM。此外,FSM 晶格可布置成若干群组(例如,群集),以使得FSM晶格的群集可并行分析同一输入数据。 此外,状态机引擎14的FSM晶格的群集可布置成层次式结构,其中来自所述层次式结构的 较低层级上的状态机晶格的输出可用作到较高层级上的状态机晶格的输入。通过经由层次 式结构串行地级联状态机引擎14的并行FSM晶格的群集,可分析(例如,评估、搜索等)日 益复杂的型式。 此外,基于状态机引擎14的层次式并行配置,状态机引擎14可用于利用高处理速 度的系统中的型式辨识。例如,本文中所描述的实施例可并入于具有1千兆字节/秒的处 理速度的系统中。因此,利用状态机引擎14,可针对各种型式快速地分析来自高速存储器装 置或其它外部装置的数据。状态机引擎14可根据数种准则约同时(例如,在单个装置循环 期间)及其相应搜索项分析数据流。状态机引擎14的层级上的FSM群集内的FSM晶格中 的每一者可各自约同时接收来自数据流的同一搜索项,且并行FSM晶格中的每一者可确定 所述项是否将状态机引擎14推进到处理准则中的下一状态。状态机引擎14可根据相对大 量准则(例如,100个以上、110个以上或10, 〇〇〇个以上)分析项。由于其并行操作,因此 其可将准则应用于具有相对高带宽的数据流(例如,大于或通常等于1千兆字节/秒的数 据流)而不减慢所述数据流。 在一个实施例中,状态机引擎14可经配置以辨识(例如,检测)数据流中的大量 型式。例如,状态机引擎14可用以检测用户或其它实体可希望分析的多种类型的数据流中 的一或多者中的型式。举例来说,状态机引擎14可经配置以分析经由网络接收的数据流, 例如经由因特网接收的包或者经由蜂窝式网络接收的话音或数据。在一个实例中,状态机 引擎14可经配置以针对垃圾邮件或恶意软件分析数据流。数据流可作为串行数据流接收, 其中以具有意义的次序(例如以时间、词汇或语义重要性次序)接收数据。或者,数据流 可经并行或无序地接收且然后转换成串行数据流,例如,通过将经由因特网接收的包重新 排序。在一些实施例中,数据流可串行地呈现项,但表达所述项中的每一者的位可被并行接 收。数据流可从系统10外部的源接收或可通过询问存储器装置(例如存储器16)且由存 储于存储器16中的数据形成数据流而形成。在其它实例中,状态机引擎14可经配置以辨 识拼写某一字的字符序列、规定基因的遗传碱基对序列、图片或视频文件中形成图像的一 部分的位序列、可执行文件中形成程序的一部分的位序列或者音频文件中形成歌曲或口语 短语的一部分的位序列。将分析的数据流可包含呈二进制格式或其它格式(例如,十进制、 ASCII等)的多个数据位。所述流可编码具有单个数字或多个数字(例如,数个二进制数 字)的数据。 如将了解,系统10可包含存储器16。存储器16可包含易失性存储器,例如动态 随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、同步DRAM (SDRAM)、双倍数据速率 DRAM (DDR SDRAM)、DDR2 SDRAM、DDR3 SDRAM等。存储器16还可包含用以连同易失性存储 器一起使用的非易失性存储器,例如只读存储器(ROM)、PC-RAM、硅-氧化物-氮化物-氧化 物-硅(S0N0S)存储器、金属-氧化物-氮化物-氧化物-硅(M0N0S)存储器、基于多晶硅浮 动栅极的存储器及/或各种架构的其它类型的快闪存储器(例如,与非存储器、或非存 储器等)。存储器16可包含可提供将由状态机引擎14分析的数据的一或多个存储器装置, 例如DRAM装置。此类装置可称为本文档来自技高网...
状态机晶格中的计数器操作

【技术保护点】
一种装置,其包括:有限状态机FSM晶格,其包括:多个块,所述块中的每一者包括多个行,所述行中的每一者包括多个可编程元件,其中所述可编程元件中的特定一者经配置以基于检测到一条件而输出信号;且所述块中的特定一者的所述行中的至少一者进一步包括经配置以可选择性地耦合到所述块中的所述特定一者的所述多个行中的任一者中的所述多个可编程元件中的任一者的计数器,其中所述计数器经配置以响应于计数检测到所述条件达特定次数而输出。

【技术特征摘要】
【国外来华专利技术】2011.12.15 US 13/327,4991. 一种装置,其包括: 有限状态机FSM晶格,其包括: 多个块,所述块中的每一者包括多个行, 所述行中的每一者包括多个可编程元件,其中所述可编程元件中的特定一者经配置以 基于检测到一条件而输出信号;且 所述块中的特定一者的所述行中的至少一者进一步包括经配置以可选择性地耦合到 所述块中的所述特定一者的所述多个行中的任一者中的所述多个可编程元件中的任一者 的计数器,其中所述计数器经配置以响应于计数检测到所述条件达特定次数而输出。2. 根据权利要求1所述的装置,其中所述块中的所述特定一者的所述多个行中的每一 者包括经配置以选择性地耦合所述行的所述多个可编程元件中的任一者与所述计数器的 行内电路。3. 根据权利要求2所述的装置,其中所述多个块中的每一者包括经配置以选择性地耦 合所述块的所述多个行中的任一者的块内电路,其中所述块的所述多个行中的一者中的一 个计数器可耦合到所述块的所述多个行中的另一者中的另一计数器。4. 根据权利要求3所述的装置,其中所述晶格包括经配置以选择性地耦合所述多个块 中的任一者的块间电路,其中所述多个块中的所述特定一者中的所述计数器可经由所述行 内电路、所述块内电路及所述块间电路选择性地耦合到所述多个块中的另一者中的可编程 元件。5. 根据权利要求1所述的装置,其中每一计数器包括递减计数器。6. 根据权利要求1所述的装置,其中所述计数器经配置以可选择性地耦合到所述多个 行中的任何其它计数器包括所述计数器经配置以可选择性地耦合到所述多个行中的任何 其它计数器以形成经级联计数器。7. 根据权利要求1所述的装置,其中每一计数器包括: 保持输入,其配置成经断言以响应于所述计数器递减到零且直到所述计数器被复位为 止将所述计数器保持为零;及 滚动输入,其配置成经断言以在未断言所述保持输入时加载所述计数器的初始值。8. 根据权利要求1所述的装置,其中每一计数器包括: 启用链接输入,其配置成经断言以将所述计数器启用为经级联计数器的部分;及 滚动输入,其配置成经断言以响应于所述计数器递减到零而翻转所述计数器的初始 值。9. 根据权利要求8所述的装置,其中每一计数器包括经配置以从较低阶计数器接收经 翻转值的进位输入。10. 根据权利要求9所述的装置,其中每一计数器包括经配置以响应于较高阶计数器 递减到零而接收指示的结果输入。11. 根据权利要求8所述的装置,其中所述每一计数器包括经配置以通过另一计数器 断言以对所述计数器进行复位的启用复位输入。12. 根据权利要求11所述的装置,其中所述启用复位输入包括经配置以启用所述计数 器以通过多个其它计数器中的任一者复位的多个启用复位输入。13. 根据权利要求1所述的装置,其中所述块中的所述特定一者的所述多个行中不包 括计数器的特定一者包括布尔逻辑单元,其中所述布尔逻辑单元可经由行内电路及块内电 路选择性地耦合到所述计数器。14. 根据权利要求1所述的装置,其中所述计数器经配置以响应于计数检测到所述条 件达特定次数而输出包括所述计数器经配置以响应于计数检测到所述条件达至少所述特 定次数而输出。15. 根据权利要求1所述的装置,其中所述计...

【专利技术属性】
技术研发人员:哈罗德·B·诺伊斯戴维·R·布朗保罗·格伦迪宁
申请(专利权)人:美光科技公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1