用于快速准确子串匹配的条件码和结果逻辑中的似真性驱动故障检测制造技术

技术编号:33121909 阅读:20 留言:0更新日期:2022-04-17 00:24
用于在子串搜索操作中检测故障的方法,包括使用包括每个具有M个向量元素的向量寄存器的处理器单元,提供比较器的M

【技术实现步骤摘要】
【国外来华专利技术】用于快速准确子串匹配的条件码和结果逻辑中的似真性驱动故障检测

技术介绍

[0001]本专利技术涉及数字计算机系统领域,并且更具体地,涉及用于子串搜索的使用处理器单元的用于快速准确子串匹配的条件码和结果逻辑中的似真性驱动的故障检测。
[0002]数字文本表示被编码并存储为二进制编码字符串。广泛接受的计算机字符编码标准包括美国信息交换标准码(ASCII)和统一码转换格式(UTF)。计算机上最常见的文本处理任务之一是子串搜索或子串匹配,以在更大目标字符串内识别参考字符串的出现。

技术实现思路

[0003]本专利技术的实施例涉及用于检测子串搜索操作中的故障的方法。方法的非限制性示例包括:使用包括各自具有M个向量元素的向量寄存器的处理器单元来提供比较器的M
×
M矩阵,用于在向量寄存器的第一向量寄存器中存储的参考串和在向量寄存器的第二向量寄存器中存储的目标串的元素的逐字符比较。向量元素是用于编码字符的n位元素。使用由M
×
M矩阵执行的比较来生成结果位向量。结果位向量指示目标串的与参考串完全匹配的字符,以及指示目标串的与参考串部分匹配的字符。通过利用结果位向量来执行子串搜索操作中的故障检测。
[0004]本专利技术的实施例涉及用于检测子串搜索操作中的故障的处理器单元。处理器单元包括多个向量寄存器,每个向量寄存器具有M个向量元素。向量元素是用于编码字符的n位元素。处理器的非限制示例包括比较器的M
×
M矩阵,其用于对多个向量寄存器中存储参考串的第一寄存器的元素和多个向量寄存器中存储目标串的第二寄存器的元素进行逐字符比较。M
×
M矩阵被配置为产生位向量,其指示目标串中的与参考串完全匹配的字符以及目标串中的与参考串部分匹配的字符。处理器还包括结果产生逻辑,用于使用结果位向量来生成与参考串的一部分相匹配的目标串的子串的指示。该指示是子串的开始和子串的长度。处理器还包括故障检测逻辑,用于通过利用结果位向量来执行子串搜索操作中的故障检测。
[0005]本专利技术的实施例涉及用于检测子串搜索操作中的故障的计算机程序产品。计算机程序产品包括具有与其一起体现的程序指令的计算机可读存储介质。程序指令可由处理器执行以使处理器执行方法。方法的非限制性实例包括使用包括各自具有M个向量元素的向量寄存器的处理器单元来提供比较器的M
×
M矩阵,以用于在向量寄存器的第一向量寄存器中存储的参考串和在向量寄存器的第二向量寄存器中存储的目标串的元素的逐字符比较。向量元素是用于编码字符的n位元素。使用由M
×
M矩阵执行的比较来生成结果位向量。结果位向量指示目标串的与参考串完全匹配的字符,以及指示目标串的与参考串部分匹配的字符。通过利用结果位向量来执行子串搜索操作中的故障检测。
[0006]通过本专利技术的技术实现了额外的技术特征和益处。在本文中详细描述了本专利技术的实施例和方面,并且认为其是所要求保护的主题的一部分。为了更好地理解,参考详细描述和附图。
附图说明
[0007]在说明书的结尾处的权利要求中特别指出并清楚地要求了本文描述的专有权的细节。从下面结合附图的详细描述中,本专利技术的实施例的前述和其它特征和优点将变得显而易见,在附图中:
[0008]图1是根据本专利技术的实施例的处理器的示例性结构;
[0009]图2是示出根据本专利技术的实施例的处理单元的组件的图;
[0010]图3是示出根据本专利技术的实施例的通过将结果位向量与比较矩阵的第一行进行比较来检测故障的逻辑的图;
[0011]图4是示出根据本专利技术的实施例的通过将结果位向量与和目标串相关联的零检测向量进行比较来检测故障的逻辑的图;
[0012]图5是示出根据本专利技术的实施例的通过将报告的匹配类型与结果位向量和可匹配区域进行比较来检测故障的逻辑的图;
[0013]图6是示出根据本专利技术的实施例的通过将结果位向量与元素大小进行比较来检测故障的逻辑的图;
[0014]图7A

7D是示出根据本专利技术的实施例的通过检查报告的条件码的似真性来检测故障的逻辑的图;以及
[0015]图8是根据本专利技术的实施例的通过检查结果位向量和报告的条件码的似真性来检测子串搜索操作中的故障的方法的流程图。
[0016]这里描述的图是说明性的。在不脱离本专利技术的精神的情况下,可以对其中描述的图或操作进行许多变化。例如,可以以不同的顺序执行动作,或者可以添加、删除或修改动作。此外,术语“耦合”及其变型描述了在两个元件之间具有通信路径,并且不暗示元件之间直接连接而在它们之间没有中间元件/连接。所有这些变化都被认为是说明书的一部分。
[0017]在附图和以下对所公开的实施例的详细描述中,附图中所示的各种元件具有两位或三位的附图标记。除少数例外,每个附图标记的最左边的数字对应于其中首先示出其元件的图。
具体实施方式
[0018]如前所述,计算机上最常见的文本处理任务之一是子串搜索或子串匹配,以在更大的目标字符串中识别参考字符串的出现。例如,可以使用语音转录过程基于语音输入来生成目标串。通常,可以隐式地(通过零终止)或通过额外操作数显式地指定参考串的长度。类似地,目标串可通过标记串结束(EOS)的零终止来限制。随着信息池的不断增加(尤其是非结构化的人类可读信息),需要更快地提取文本信息,并因此需要更快的方法来解决子串匹配问题。此外,需要对内部信号和中间结果执行针对似真性的交叉校验的附加逻辑。本专利技术的实施例提供了能够对子串搜索的结果进行似真性驱动交叉校验以及对指示所检测的匹配的类型的报告的条件码进行交叉校验的逻辑。与传统的故障检测技术相比,本文提出的方法主要集中在SIMD(单指令多数据)子串搜索引擎的结果和条件码逻辑中的错误检测。
[0019]具有用于子串搜索的专用指令的向量SIMD引擎允许用单个指令同时比较若干字符,这相比逐字节比较带来了加速。在示例性向量SIMD实现中,向量寄存器具有固定数量的位(例如,K位),其可保持单个向量。向量寄存器可以包括具有相应大小n的M个向量元素
(即,每个向量元素占用n个位)。向量寄存器包括M个大小为n的向量元素。寄存器的宽度是指寄存器中向量元素的数量。
[0020]字符的数量L小于M。本专利技术的实施例涉及对可能占用全向量寄存器(例如,M
×
n位的)的目标串中的L个字符的子串搜索。L个字符的串可以被称为参考串。
[0021]比较器矩阵的上三角部分包括矩阵的主对角线和随后的上对角线。比较器矩阵的下三角部分包括矩阵的主对角线和随后的下对角线。
[0022]术语“完全匹配”是指目标串中完全匹配参考串的L个字符的子串。术语“部分匹配”是指目标串中与参考串部分匹配的一个或多个字符的子串。使用上对角线可以使得能够识别目标串的结尾处的一个或多个字符的子串。使用下对角线可以使得能够识别在目标串的开始处的一个或多个字符的子串。
[0023]本文描述的快速准确子串匹配的一个或多个实施例使得能够准确识本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于在子串搜索操作中检测故障的方法,所述方法包括:使用包括各自具有M个向量元素的向量寄存器的处理器单元来提供比较器的M
×
M矩阵,用于对在所述向量寄存器中的第一向量寄存器中存储的参考串的元素与在所述向量寄存器中的第二向量寄存器中存储的目标串的元素进行逐字符比较,其中,向量元素是用于对字符进行编码的n位元素;使用由所述M
×
M矩阵执行的比较来产生结果位向量,所述结果位向量指示所述目标串中的与所述参考串完全匹配的字符以及指示所述目标串中的与所述参考串部分匹配的字符;以及通过利用所述结果位向量来执行所述子串搜索操作中的故障检测。2.根据权利要求1所述的方法,其中,产生所述结果位向量进一步包括基于所述结果位向量来产生用于识别在所述目标串内的所述参考串的第一匹配的所述结果位向量的索引,以及基于所述结果位向量产生指示检测到的匹配的类型的条件码。3.根据权利要求2所述的方法,其中,执行所述故障检测进一步包括将所述结果位向量与所述M
×
M矩阵的第一行进行比较,以及在所述结果位向量与所述M
×
M矩阵的所述第一行的子集不同的情况下指示错误。4.根据权利要求2所述的方法,进一步包括产生具有指示所述目标串的终止元素的值的零检测向量,以及将所述结果位向量与所述零检测向量进行比较,其中,执行所述故障检测进一步包括在所述结果位向量内的指示匹配的位的位位置高于所述零检测向量内的指示所述目标串的所述终止元素的位的位位置的情况下指示错误。5.根据权利要求2所述的方法,进一步包括确定所述目标串内的可匹配区域,以及将所述结果位向量与所述可匹配区域进行比较,并且其中,执行所述错误检测进一步包括在所述条件码指示完全匹配且所述目标串内的所述可匹配区域的所有位均被设定为0的情况下指示错误。6.根据权利要求2所述的方法,其中,执行所述故障检测进一步包括在所述结果位向量与向量元素未对准的情况下指示错误。7.根据权利要求6所述的方法,其中,在与所述结果位向量的所述向量元素的第一字节不同的至少一个字节被设定为1的情况下检测到未对准。8.根据权利要求2所述的方法,进一步包括产生具有指示所述目标串的终止元素的值的零检测向量,将所述条件码与所产生的索引进行比较,以及将所述条件码与所述零检测向量进行比较,并且其中,执行所述故障检测进一步包括(a)在所述条件码指示(1)未检测到完全串匹配,(2)未检测到部分匹配以及(3)未检测到终止元素的情况下或者(b)在(1)所产生的索引指示所述第一匹配或(2)所述零检测向量具有指示所述目标串的所述终止元素的设定为1的位值的情况下指示错误。9.根据权利要求8所述的方法,其中,执行所述故障检测进一步包括(a)在所述条件码指示未检测到完整串匹配且未检测到部分匹配且指示已检测到所述终止元素的情况下或者(b)在所产生的索引指示所述第一匹配或所述零检测向量的所有位均设定为0以指示未检测到所述目标串的终止元素的情况下指示错误。10.根据权利要求8所述的方法,进一步包括基于所述结果位向量确定匹配类型,将所述条件码与所产生的索引进行比较,以及将所述条件码与所确定的匹配类型进行比较,并
且其中,执行所述故障检测进一步包括在(a)所述条件码指示检测到全串匹配的情况下或者(b)在(1)所产生的索引指示未检测到匹配或(2)所述结果位向量指示检测到部分匹配的情况下指示错误。11.根据权利要求10所述的方法,其中,执行所述故障检测进一步包括在(a)所述条件码指示检测到部分匹配且未检测到完整串匹配的情况下或(b)...

【专利技术属性】
技术研发人员:R
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:

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

1