CN102130689A - 串行比特流正则表达式引擎 - Google Patents

串行比特流正则表达式引擎 Download PDF

Info

Publication number
CN102130689A
CN102130689A CN2010106250233A CN201010625023A CN102130689A CN 102130689 A CN102130689 A CN 102130689A CN 2010106250233 A CN2010106250233 A CN 2010106250233A CN 201010625023 A CN201010625023 A CN 201010625023A CN 102130689 A CN102130689 A CN 102130689A
Authority
CN
China
Prior art keywords
regular expression
bit stream
serial bit
index
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2010106250233A
Other languages
English (en)
Other versions
CN102130689B (zh
Inventor
K·D·鲁尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tektronix Inc
Original Assignee
Tektronix Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tektronix Inc filed Critical Tektronix Inc
Publication of CN102130689A publication Critical patent/CN102130689A/zh
Application granted granted Critical
Publication of CN102130689B publication Critical patent/CN102130689B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R13/00Arrangements for displaying electric variables or waveforms
    • G01R13/02Arrangements for displaying electric variables or waveforms for displaying measured electric variables in digital form
    • G01R13/0218Circuits therefor
    • G01R13/0254Circuits therefor for triggering, synchronisation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)

Abstract

描述了一种测试及测量仪器,其包括用户界面和控制器。该控制器配置为:接收串行比特流;将正则表达式应用于该串行比特流;以及通过用户界面呈现获取的数据或其它数据以响应该正则表达式对该串行比特流的应用。

Description

串行比特流正则表达式引擎
相关申请的交叉引用
本申请依照35U.S.C.§119(e)要求序列号61/266,966、2009年12月4日申请的美国临时申请的优先权,通过引用将其全文结合于本文。
背景技术
本发明涉及测试及测量仪器,更具体地,涉及具有对串行比特流进行正则表达式处理的测试及测量仪器。
正则表达式可用于分析字符流。例如,如Perl和AWK的程序基于正则表达式模式匹配。正则表达式可以用于定义字符的匹配序列。但是,这种正则表达式匹配是在已经转化为字节、字、或其它多比特格式的数据上进行的。相反地,串行比特流不能归类为这种多比特格式。
附图说明
图1是根据本发明实施例的具有正则表达式引擎的测试和测量仪器的框图。
图2是根据本发明实施例的具有数字化仪前端的图1的测试和测量仪器的框图。
图3示出了根据本发明实施例的来自正则表达式引擎的波形、对应的比特序列以及匹配比特序列。
图4示出了根据本发明实施例的来自正则表达式引擎的波形、对应的比特序列、匹配比特序列以及对齐序列。
图5是根据本发明实施例的具有触发系统的测试和测量仪器的框图,该触发系统具有正则表达式引擎。
图6是根据本发明实施例的在触发系统中具有正则表达式引擎的测试和测量仪器的框图。
图7示出了根据本发明实施例的来自正则表达式引擎的波形、对应的比特序列、匹配比特序列以及关联数据。
图8是根据本发明实施例的具有正则表达式引擎的测试和测量仪器的用户界面的实例。
图9是根据本发明实施例的具有正则表达式引擎的测试和测量仪器的用户界面的另一个实例。
具体实施方式
本说明书描述了具有用于串行比特流的正则表达式引擎的测试和测量仪器的实施例。
图1是根据本发明实施例的具有正则表达式引擎的测试和测量仪器的框图。该仪器包括配置为接收串行比特流10的控制器12。可以用多种方式生成该串行比特流10。例如,该仪器可以是配置为将输入信号数字化的示波器。数字化的输入信号,其可被表示为数字化的模拟信号,能够表示数字化数据。那就是说,数字化的输入信号能表示数据流的一系列比特。该串行比特流10可以是这种从数字化输入信号中提取的一系列比特。
在另一个实施例中,该仪器可以是逻辑分析器。该逻辑分析器可以配置为比较输入信号与阈值以便为通道生成串行比特流。该串行比特流10可以是这种来自逻辑分析器的通道的比特流。能生成串行比特流的任意仪器都可以包括本文所述的正则表达式引擎。
在实施例中,串行比特流10能够但不需要在紧接被控制器12处理之前被获取。例如,串行比特流10可以存储于存储器中。这种存储器可以是获取存储器。在另一个实例中,串行比特流10可以存储于非易失性存储器,例如磁盘驱动器或其它大容量存储设备。
不管串行比特流10的来源如何,控制器12都可以配置为接收该串行比特流10。控制器12可以是任意类型的电路。例如,数字信号处理(DSP)、微处理器、可编程逻辑设备、通用处理器、或具有所期望的适当外围设备的其它处理系统可以用作控制器12来实现正则表达式引擎13的功能。从完全整合到完全分立部件之间的任意变型都可以用于实现控制器12。正则表达式引擎13表示控制器12的功能,其用于将正则表达式应用到串行比特流10。
控制器12耦合到用户界面14。用户界面14可以包括任意类型的界面。例如,用户界面14可以包括输入界面,例如按钮、旋钮、滑块、键盘、指针设备等等。用户界面14可以包括输出界面,例如显示器、灯、扬声器等等。用户界面14可以包括输入/输出界面,例如通信界面、触摸屏或类似物。任何种类的用户界面或这些界面的组合都可以用作用户界面。
控制器12可以配置为响应于将正则表达式应用到串行比特流10而通过用户界面呈现获取的数据。在实施例中,获取的数据可以是串行比特流10本身。但是,在其它实施例中,获取的数据和串行比特流10是不同的。例如,如下面将详细描述的一样,正则表达式的串行比特流中的匹配可以用于触发其它数据被获取以作为获取的数据。
正则表达式引擎13可以用于影响串行比特流10的各种表示。例如,如下面将详细描述的一样,数据可以与正则表达式相关联。数据可以表示在匹配比特序列中被编码的符号。串行比特流10可以用符号呈现而作为覆盖图、单独的符号或类似物。
在另一个实例中,正则表达式引擎13可以用于搜索、标记或以别的方式识别串行比特流10、相关联的数据或类似物中的模式。例如,在示波器上,可对表示获取的信号的数字化波形搜索特定比特序列。数字化波形的关联序列可以通过用户界面来呈现。备选地,可以标记该关联序列。
在另一个实例中,正则表达式引擎13可以用于过滤获取的数据。例如,如将在下面进行详细说明的那样,正则表达式可以定义包结构(package structure)和仅匹配来自特定设备的包的匹配值。数据获取可以被过滤以便仅存储匹配的获取。
在另一个实施例中,正则表达式引擎13的输出可以多于纯粹匹配。例如,串行比特流10可以与获取的数字化波形相关联。数字化波形可以表示为值与时间的关系的曲线。当匹配被输出时,可以将额外的数据、例如关联的数字化波形中的时间添加到该输出中。因此,可以调整用户界面14以反映该时间。
图2是根据本发明实施例的具有数字化仪前端的图1的测试及测量仪器的框图。数字化仪20可以配置为将输入信号22数字化以生成串行数据流10。
虽然没有示出,但每个数字化仪26具有前置放大器、衰减器、滤波器、和/或模拟通道中所需的其它模拟电路。因此,对数字化仪26的输入信号可以在数字化之前被放大、衰减、或被过滤。此外,数字化仪26可以是能将信号数字化的任意类型的电路。例如,数字化仪26可以包括电路、例如对相关联的输入信号进行采样所需的跟踪保持电路、A/D转换器、多路分配器电路(de-multiplexer circuit)。
图3示出了根据本发明实施例的来自正则表达式引擎的波形、对应的比特序列和匹配比特序列。在实施例中,正则表达式语法可以定义如下:
Figure BSA00000426745700041
在这个实例中,匹配比特可以定义为1、0或无所谓的X。正则表达式可以后跟正则表达式。备选的正则表达式可以由OR“|”操作符定义。一个或多个“+”或零或多个“*”操作符可以用于潜在地定义重复的正则表达式。“?”操作符意味着零或一个在先的正则表达式。跟着“*”操作符的整数意思是正则表达式的重复数。括号可以用于归类正则表达式或归类一系列正则表达式。虽然上面描述了特定的语法,但实施例可以使用其它语法。特别地,使用其它语法的进一步实例将在下面给出。而且,正则表达式引擎13使用的语法能够但不必实现上述语法或下列语法的所有方面。
使用上述语法作为示例,可以定义正则表达式的匹配。例如,“1010000110”可以被定义为正则表达式。波形44和对应的数字值46在图3中示出。将比特序列40识别为匹配,因为其具有比特“1010000110”。但是,比特序列42不会匹配这个序列。
备选的正则表达式可以定义为“1010XX0110”。与上述例子相反,两个无所谓的“X”值包含于该正则表达式中。因此,序列40和42都匹配于该正则表达式“1010XX0110”。
图4示出了根据本发明实施例的来自正则表达式引擎的波形、对应的比特序列、匹配的比特序列以及对齐序列。在实施例中,正则表达式引擎13能配置为对齐串行比特流10中的操作。例如,如8b/10b的编码技术能定义能用于对齐的特定比特序列(或多个序列)。8b/10b编码中的“1100000”或“0011111”序列可以指示在串行比特流中的10比特对齐。
可以定义正则表达式的语法以允许这种对齐序列的表达式。例如,具有对齐表达式的正则表达式可以定义为:
此处,操作符“alignment”可以表明随后的正则表达式定义了串行比特流10中的用于对齐序列的匹配。例如,使用上面的序列,正则表达式“alignment(1100000|0011111)”可用于将“1100000”或“0011111”定义为对齐序列。
除对齐序列之外,还可以指定宽度。在这个实例语法中,width操作可以指示在串行比特流10中的多个比特宽的“word”。例如,在8b/10b编码中宽度可以是10比特。因此,8b/10b编码的对齐表达式可以是“alignment(1100000|0011111)width10”。
特别地,对宽度的定义供对齐正则表达式使用,例如上面那些表达式,它们比提供的宽度要宽或窄。在上面的实例中,对齐正则表达式定义了具有10比特宽度的两个7比特的匹配序列。因此,当正则表达式引擎13向串行比特序列10中对索引增量时,该增量是按照宽度的。就是说,在实施例中,正则表达式可以不应用于每个比特,但是却开始于根据对齐正则表达式对齐的串行比特流10中的比特。
参考图4,考虑正则表达式“1010000110alignment(1100000|0011111)width 10”。与图3类似,示出了波形60和对应的数字值68。比特序列62与对齐正则表达式“(1100000|0011111)”相匹配。使用定义的宽度,根据识别的对齐比特序列62和定义的宽度可以对齐执行正则表达式到波形60的应用。
虚线70描绘了波形60中“字”的边界。在这个实例中,比特序列64和66都与正则表达式“1010000110”相匹配。但是,只有比特序列64对齐到边界70。因此,只有比特序列64会是匹配而不是比特序列66会是匹配。
在图4中,示出了与对齐比特序列62相邻的匹配比特序列64;但是,这种邻近不是必要的。例如,在实施例中,控制器可配置为使用对齐正则表达式搜索串行比特流。一旦找到,正则表达式引擎13可以配置为响应于与对齐正则表达式的匹配而应用正则表达式的余项。就是说,在串行比特流10中并根据定义的宽度对齐应用该余项。
与正则表达式的余项的匹配可以直到显著地在对齐序列之后才被找到。例如,直到找到与正则表达式的余项匹配时,可以从获取存储器中丢弃对齐比特序列。但是,正则表达式引擎13依然能够执行到串行比特流10的对齐。
在其它实施例中,宽度可以由对齐序列隐含地定义。例如,对齐正则表达式“alignment(1100000XXX|0011111XXX)”可以与“alignment(1100000|0011111)width 10”基本类似地操作。就是说,正则表达式引擎13可以配置为确定对齐正则表达式的宽度是串行比特流10中“字”的宽度。
在实施例中,对齐比特序列可能不是已知的,甚至是不存在的;但是宽度是已知的。例如,对齐正则表达式可以是“width 10”。在这种情况下,引用串行比特流10的索引可以响应于width而被增量;但是,可能需要确定对齐。
各种技术可以用于确定串行比特流10中的对齐。例如,正则表达式引擎13可以配置为使用等于该正则表达式宽度的引用串行比特流10的多个索引来将正则表达式应用于串行比特流10。就是说,对于不会重复早先类似对齐的给定宽度的串行比特流10中的每个潜在的索引来应用正则表达式。例如,如果宽度是10,0的索引可以基本上与10的索引相似。在宽度所定义的粒度级别上可以为每个潜在的对齐来应用正则表达式。可选择具有与正则表达式最大匹配数量的索引作为使用的索引。
在另一个实施例中,能够指示对齐的其它技术可以用于确定与串行比特流10配合使用的对齐索引。例如,使用8b/10b编码,符号末端的运行不一致性(running disparity)能限制在特定范围内。在运行不一致性处于期望范围内的情况的该串行比特流10中的偏移索引可以用作识别的索引。虽然特定例子是串行比特流10的特性能够用于识别串行比特流10中的偏移索引,但是能够指示对齐的串行比特流10的任意特性、所期望的格式、或类似物可以在宽度中的每个索引上被搜索以确定合适的索引。
在实施例中,串行比特流10具有动态宽度。为了适应动态宽度,控制器12可以配置为搜索串行比特流10的有效模式。一旦识别了有效模式,该有效模式的位置可以用于将正则表达式与串行比特流10对齐。
在另一个实例中,可以解码串行比特流10并对其检查错误。如果存在错误、超出阈值,或类似事件,使用另一个偏移量执行对串行比特流10的解码。一旦发现偏移量具有极小差错,可以使用该偏移量来将正则表达式与串行比特流10对齐。
虽然已经描述了确定对齐和/或确定串行比特流10的字的宽度的多种方法,但也可以使用其它技术获得这些信息。在实施例中,控制器12能够配置为通过用户界面14接收引用串行比特流10的索引。该索引能够以多种方式生成。例如,用户能够提供偏移量、宽度,或二者都提供。这种提供的信息可以通过用户界面14、控制器12或类似物变换为引用串行比特流10的索引。使用这种索引,控制器能够将正则表达式应用到串行比特流10。
在另一个实例中,用户可以使用光标位置来定义串行比特流10的偏移量索引。可以通过用户界面14来呈现串行比特流10。用户可以控制光标,不管是手动的,还是通过一些自动功能或类似物,以指示所呈现的串行比特流10中的位置。作为响应,控制器12能够确定引用串行比特流10的比特索引。因此,在这种对齐序列不可用、还未定义或类似的情况下,用户依然可以检查数据并指示串行比特流10中的对齐。
图5是根据本发明实施例的具有触发系统的测试及测量仪器的框图,该触发系统具有正则表达式引擎。触发系统90能够配置为响应于触发输入92而生成触发信号94。在实施例中,控制器12能够配置为响应于触发信号94而将具有正则表达式引擎13的正则表达式应用于串行比特流。
例如,控制器12能够配置为使用引用与触发信号94相关联的串行比特流10的索引。控制器12能够配置为接收来自触发系统90触发信号94。可以将时间上与触发信号94相关联的串行比特流10的比特、位于离触发信号94特定偏移量处的比特,或类似物用作对齐指示符,以用于正则表达式的处理。一旦建立了对齐,就如上所述应用正则表达式。
在另一个实施例中,触发系统90能够具有正则表达式引擎91。正则表达式引擎91能够配置为将正则表达式应用到触发输入92。在这个实例中,触发输入92可以是串行比特流。使用上述实例,正则表达式可以是“(1100000|0011111)”。可以由正则表达式引擎对触发输入92分析匹配。可响应于该匹配而生成触发信号94。在实施例中,触发信号94可包括触发输入92中的串行比特流内的对齐信息、匹配表达式、识别的时间或样本位置、串行比特流本身、这些信息的组合,或类似物。将这些信息提供给控制器12,并用于正则表达式引擎13、在获取数据中使用,或如其它所期望的那样。
如上所述,正则表达式引擎13能够响应于触发信号94而将相关联的正则表达式应用到对齐的串行比特流10。但是,在这个实施例中,可以生成触发信号94以响应正则表达式引擎91。如上所述,触发系统90的正则表达式引擎91所应用的正则表达式可以是对齐正则表达式。因此,触发系统90能执行处理以确定对齐,控制器12的正则表达式引擎13能应用另一个正则表达式来确定匹配。
图6是根据本发明实施例的具有触发系统中的正则表达式引擎的测试及测量仪器的框图。正则表达式引擎功能可以以多种方式分配。如上所述,正则表达式功能可以遍布控制器12和触发系统90来分配。在这个实施例中,控制器93不需要具有正则表达式引擎。正则表达式引擎91是触发系统90的一部分。触发系统90可以配置为触发获取以响应正则表达式对触发信号92的串行比特流的匹配。
在实施例中,这种触发可用于仅在匹配发生时获取数据。例如,该仪器能从共享介质中获取数据。正则表达式能被定义为指示特定设备、包、源地址或类似物。因此,当从匹配源接收信号时,只能使用对应的数据。例如,从这种数据中能够生成实时数据眼。通过使用正则表达式,只有来自期望源的信号能够对数据眼起作用。
图7示出了根据本发明实施例的来自正则表达式引擎的波形、对应的比特序列、匹配比特序列和关联数据。在实施例中,数据可在正则表达式中呈现。例如,下列语法使得数据能够被描述:
<RegExprWithData>:<RegExpr>:<Data>
出于清晰的目的,正则表达式语法的余部没有列出;但是,正则表达式“<RegExprWithData>”可以用作本文所述的任意正则表达式“<RegExpr>”。
在一个实例中,正则表达式“(1010000110:“D15.6+”)”可以将比特序列“1010000110”与数据“D15.6+”相关联。在图7中示出波形110和对应的比特序列92。比特序列112匹配“1010000110”。因此,关联的数据“D15.6+”通过用户界面14在框116中呈现。类似地,对于正则表达式“(1000111101:“D17.4-”)”,由于比特序列114匹配该正则表达式,所以通过用户界面14框118可以呈现关联的数据“D17.4-”。
在实施例中,使用这种数据关联性,可以实现解码器。例如,如上所述,两个比特序列112和114与符号“D15.6+”和“D17.4-”关联。“D15.6+”和“D17.4-”是作为8b/10b解码方案的一部分的符号。定义了解码器的正则表达式可以定义为“((1000111100:“D17.3”)|(1000111101:“D17.4-”)...(1010000110:“D15.6+”))alignment(1100000|0011111)width10”。在这个实例中,有超过所述三种的许多其它比特序列与符号的关系;但是,用这三种作为例子。因此,如果定义了所有比特序列与符号的关系,那么正则表达式能够用于解码串行比特流10。如上所述,源波形和/或比特流不需要呈现。
在实施例中,这种关联的数据可以在仪器的后续操作中使用。例如,控制器能够配置为基于该数据进行搜索。使用上述实例,执行对“D15.6+”符号的搜索。在实施例中,基础的正则表达式能够但不必对用户隐藏。例如,能够对各种正则表达式预定义特定符号或类似物,该特定符号伴随测试启动而被载入。用户能够选择与正则表达式关联的数据,而无需基础的正则表达式中的信息。
虽然文本已经作为与正则表达式关联的数据的实例来使用,但其它类型的信息也可以作为该数据。例如,数字、表达式、函数或类似物能够成为相关联数据一部分。
图8是根据本发明实施例具有正则表达式引擎的测试及测量仪器的用户界面的实例。在实施例中,用户界面14配置为呈现正则表达式。在一个实例中,用户界面能够配置为呈现之前定义的正则表达式的数据。
框132和134表示在用户界面130中呈现的之前定义的正则表达式。例如,框132能够表示正则表达式“(1010000110:“D15.6+”)alignment(1100000|0011111)width 10”,而框134能表示“(1000111101:“D17.4-”)alignment(1100000|0011111)width 10”。
用户输入、例如指针设备的拖动输入由箭头138表示。通过该输入,用户能指示用于构成正则表达式的输入框136可以由与框132相关联的正则表达式填充。例如,一开始,框136可能是空的。响应于箭头138的用户输入,将与框132相关联的正则表达式填入框136。
但是,框136中的正则表达式不需要扩展。就是说,框136中的正则表达式可以保持由与源正则表达式相关联的数据所表示的那样。在这个实例中,该数据将是“D15.6+”。此外,多于一个的之前定义的正则表达式可以添加到框136中。例如,用户可以将框134添加到框136以添加关联的正则表达式、插入操作符或类似物。
在实施例中,呈现的正则表达式可以是任意的正则表达式。如上所述,框132具有关联的对齐和宽度项。但是,关联的正则表达式可以是“(1010000110:“D15.6+”)”,而没有对齐和宽度项中的一个或多个。
在另一个实例中,之前定义的正则表达式可以是“((1100000101|1010000110):“K28.5”)”。这个正则表达式可以呈现为“K28.5”。响应于用户输入,构成的正则表达式可以具有扩展的“((1100000101|1010000110):“K28.5”)”。就是说,添加的正则表达式不必限制于纯粹的字面序列,但能包括任意有效的正则表达式。
由于正则表达式能够是任意有效的正则表达式,这些正则表达式可以相对复杂,甚至能够构成更加复杂的正则表达式,其对用户潜在地隐藏其复杂性。例如,如上所述,8b/10b解码器可描述为正则表达式。类似地,可以定义其它解码方案,例如64b/66b。“8b/10b”可以在框132中呈现,“64b/66b”可以在框134中呈现。用户能够构造用于8b/10b和64b/66b编码的组合解码器。就是说,通过用户将“8b/10b”拖动到框136中,输入OR操作符“|”并将“64b/66b”拖动到框136中,可以构造正则表达式。
此外,由于添加的正则表达式能够是任意的正则表达式,这种复杂的组合不需要对每个单元都是完整的。例如,“8b/10b”正则表达式可以完全解码8b/10b的比特流;但是“64b/66b”正则表达式仅可以定义关联的编码方案的一部分。例如,用于“64b/66b”的正则表达式可以是“(10|01)X*64width 66”。
虽然已经使用文本框作为用于构造正则表达式的用户界面的实例,但能够允许用户输入文字、操作符、之前定义的正则表达式或类似物的任意界面都可以代替或作为框136的补充来使用。
图9是根据本发明实施例具有正则表达式引擎的测试及测量仪器的用户界面的另一个实例。示出了用户界面的外观150,其具有字段描述158和入口项字段(entry field)160。在这个实例中,描述了用于IP包的正则表达式;但是,也可以使用其它格式。使用正则表达式来定义包的语法可以是:
Figure BSA00000426745700121
在这个实例中,之前定义的正则表达式可以是“[0000100000000000],[X*4]:Version,[X*4]:HeaderLength,[X*8]:TOS,[X*16]:TotalLength,[X*16]:ID,[X*3]:Flags,[X*13]:FragmentOffset,[X*8]:TTL,[X*8]:Protocol,[X*16]:Checksum,[X*32]:SourceIPAddr,[X*32]:DestIPAddr,[X*(TotalLength-20)*8]:Data”。此处,TotalLength ID可以表示以字节计的长度。因此,Data字段的比特总数将是以字节计的TotalLength-20个报头字节乘以每字节8比特。
在实施例中,对于正则表达式的<Field>部分,通过用户界面14能够呈现对应的标签和入口项字段。在这个实例中,用户空着字段152和154,并使用十六进制的值C0A80105(其表示源IP地址192.168.1.5)填入字段156。因此,这种用户输入可以用于生成正则表达式,例如“[0000100000000000X*16],[X*16]:TotalLength,[X*5411000000101010000000000100000101X*32X*(TotalLength-20)*8]”。就是说,如果字段152和154没有填满,则这些字段可以被压缩,能够添加与元素关联的值以修改正则表达式,可以将值扩展为比特或类似的。
在实施例中,在正则表达式的其它位置可以引用<Field>的ID参数。在这个实例中,在Data字段中使用TotalLength。特别地,Data字段中匹配比特的数量的长度取决于TotalLength字段的值。在一个实例中,TotalLength字段可以是定义的值,类似于源IP地址。在另一个实例中,TotalLength字段可以从被分析的特定比特序列来确定。就是说,如果开始匹配正则表达式的TotalLength字段的比特引用了值“120”,那么Data字段中匹配比特的数量可以是(120-20)*8或800比特。对于正则表达式对不同的比特序列、比特序列中开始位置或类似物的每个应用,这种值可改变。
在实施例中,正则表达式引擎能够配置为反向应用正则表达式。例如,串行数据流10中的特定对齐序列可以出现于匹配正则表达式的比特序列之后。因此,当对齐序列找到时,正则表达式引擎可以从对齐序列反向被应用。
另一个实施例包括计算机可读介质所包含的计算机可读代码,当其执行时,致使计算机执行任意的上述操作。如此处所使用的一样,计算机是能执行代码的任意设备。微处理器、可编程逻辑设备、多处理器系统、数字信号处理器、个人计算机或类似物全都是这种计算机的实例。在实施例中,计算机可读介质可以是有形的计算机可读介质,其配置为以非暂时性的方式存储计算机可读代码。
虽然已经描述了特定实施例,但可以了解本发明的原理不限于那些实施例。可作出变化和修改而不偏离下面的权利要求中所阐述的本发明的原理。

Claims (21)

1.一种测试及测量仪器,包括:
用户界面;以及
控制器,其配置为:
接收串行比特流;
将正则表达式应用于该串行比特流;以及
响应于该正则表达式对该串行比特流的应用而通过该用户界面呈现获取的数据。
2.如权利要求1的测试及测量仪器,其中该控制器进一步配置为:
使用该正则表达式的对齐正则表达式搜索该串行比特流;以及
响应于该串行比特流中与该对齐正则表达式的匹配而应用该正则表达式的余项。
3.如权利要求1的测试及测量仪器,其中该控制器进一步配置为:
响应于由该正则表达式定义的宽度,当该正则表达式应用于该串行比特流时,对引用该串行比特流的索引进行增量。
4.如权利要求1的测试及测量仪器,其中该控制器进一步配置为:
使用等于该正则表达式宽度的引用串行比特流的多个索引来将该正则表达式应用于该串行比特流;以及
从这些索引中选择具有最大数量的与该正则表达式的匹配的索引。
5.如权利要求1的测试及测量仪器,进一步包括:
配置为生成触发信号的触发系统;
其中该控制器进一步配置为使用引用与该触发信号相关联的串行比特流的索引,来将该正则表达式应用于该串行比特流。
6.如权利要求1的测试及测量仪器,其中该控制器进一步配置为:
响应于该用户界面来生成引用该串行比特流的索引;以及
使用该索引将该正则表达式应用于该串行比特流。
7.如权利要求1的测试及测量仪器,其中该控制器进一步配置为:
将该正则表达式的数据与该串行比特流中的该正则表达式的匹配相关联。
8.如权利要求1的测试及测量仪器,其中:
该用户界面配置为呈现之前定义的正则表达式的数据;
该控制器配置为响应于与该之前定义的正则表达式的呈现数据相关联的用户输入来构造正则表达式。
9.如权利要求1的测试及测量仪器,进一步包括:
触发系统,其配置为响应于该正则表达式对该串行比特流的匹配而触发获取。
10.一种方法,包括:
接收串行比特流;
将正则表达式应用于该串行比特流;以及
响应于该正则表达式对该串行比特流的应用而通过用户界面呈现获取的数据。
11.如权利要求10的方法,进一步包括:
使用该正则表达式的对齐正则表达式搜索该串行比特流;以及
响应于该串行比特流中与该对齐正则表达式的匹配而应用该正则表达式的余项。
12.如权利要求10的方法,进一步包括:
响应于由该正则表达式定义的宽度,当该正则表达式应用于该串行比特流时,对引用该串行比特流的索引进行增量。
13.如权利要求10的方法,进一步包括:
使用等于该正则表达式宽度的引用该串行比特流的多个索引来将该正则表达式应用于该串行比特流;以及
从索引中选择具有最多数量的与该正则表达式的匹配的索引。
14.如权利要求10的方法,进一步包括:
使用引用与该触发信号相关联的串行比特流的索引,来将该正则表达式应用于该串行比特流。
15.如权利要求10的方法,进一步包括:
响应于该用户界面而生成引用该串行比特流的索引;以及
使用该索引将该正则表达式应用于该串行比特流。
16.如权利要求10的方法,进一步包括:
将该正则表达式的数据与该串行比特流中的该正则表达式的匹配相关联。
17.如权利要求10的方法,进一步包括:
呈现之前定义的正则表达式的数据;
响应于与该之前定义的正则表达式的呈现数据相关联的用户输入而构造正则表达式。
18.如权利要求10的方法,进一步包括:
响应于该正则表达式对该串行比特流的匹配而触发获取。
19.一种测试及测量仪器,包括:
用户界面;
控制器,配置为:
通过该用户界面呈现之前定义的正则表达式的数据;以及
响应于与该之前定义的正则表达式的呈现数据相关联的用户输入而构造正则表达式。
20.如权利要求19的测试及测量仪器,其中该控制器配置为:
通过该用户界面接收与该之前定义的正则表达式相关联的至少一个匹配值;以及
将该至少一个匹配值添加到该正则表达式中。
21.如权利要求19的测试及测量仪器,其中该控制器配置为:
从该之前定义的正则表达式构造正则表达式;
接收与该之前定义的正则表达式的元素相关联的值;以及
响应于该值,修改该正则表达式。
CN201010625023.3A 2009-12-04 2010-12-06 串行比特流正则表达式引擎 Active CN102130689B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US26696609P 2009-12-04 2009-12-04
US61/266966 2009-12-04
US12/949703 2010-11-18
US12/949,703 US9069017B2 (en) 2009-12-04 2010-11-18 Serial bit stream regular expression engine

Publications (2)

Publication Number Publication Date
CN102130689A true CN102130689A (zh) 2011-07-20
CN102130689B CN102130689B (zh) 2016-04-13

Family

ID=43711657

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010625023.3A Active CN102130689B (zh) 2009-12-04 2010-12-06 串行比特流正则表达式引擎

Country Status (4)

Country Link
US (1) US9069017B2 (zh)
EP (1) EP2336790B1 (zh)
JP (1) JP5605842B2 (zh)
CN (1) CN102130689B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995164A (zh) * 2013-02-19 2014-08-20 安捷伦科技有限公司 通过信号模式触发的数字测量仪器
CN105334364A (zh) * 2014-08-04 2016-02-17 特克特朗尼克公司 具有状态的串行比特流正则表达式
CN105553606A (zh) * 2014-10-24 2016-05-04 特克特朗尼克公司 从声明协议描述导出硬件解码加速
CN107423037A (zh) * 2016-03-09 2017-12-01 阿里巴巴集团控股有限公司 应用程序接口定位方法及设备

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9989559B2 (en) * 2009-12-04 2018-06-05 Tektronix, Inc. Serial bit stream regular expression with states
US10148547B2 (en) * 2014-10-24 2018-12-04 Tektronix, Inc. Hardware trigger generation from a declarative protocol description
US20190113542A1 (en) * 2014-12-17 2019-04-18 Tektronix, Inc. Hardware trigger generation from a declarative protocol description
US20160179073A1 (en) * 2014-12-19 2016-06-23 Keysight Technologies, Inc. Real Time Trigger Using A Finite State Machine Having A Counting State
US10481573B2 (en) 2015-07-31 2019-11-19 Keysight Technologies, Inc. Multi-channel digital trigger with combined feature matching and associated methods
JP6741417B2 (ja) * 2015-12-04 2020-08-19 テクトロニクス・インコーポレイテッドTektronix,Inc. 試験測定装置及びトリガ方法
US10365300B2 (en) 2016-02-05 2019-07-30 Tektronix, Inc. Trigger on final occurrence
US20230084574A1 (en) * 2021-09-16 2023-03-16 UncommonX Inc. Bit sequence storage method and system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040107297A1 (en) * 2001-02-01 2004-06-03 Jorg Heuer Method for improving the functions of the binary representation of mpeg-7 and other xml-based content descriptions
US20080303443A1 (en) * 2007-06-08 2008-12-11 Tektronix, Inc. Position lock trigger

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5930139A (ja) * 1982-08-10 1984-02-17 Mitsubishi Electric Corp ビツトパタ−ン比較装置
JPS61273632A (ja) * 1985-05-30 1986-12-03 Ando Electric Co Ltd デ−タの比較方法
US6518744B1 (en) 2000-03-23 2003-02-11 Tektronix, Inc. General purpose oscilloscope having digital television signal display capability
US7272528B2 (en) * 2001-10-01 2007-09-18 Tektronix, Inc. Reloadable word recognizer for logic analyzer
US7801206B2 (en) 2005-04-29 2010-09-21 Tektronix, Inc. Encoded serial data bit error detector
US7486673B2 (en) * 2005-08-29 2009-02-03 Connect Technologies Corporation Method and system for reassembling packets prior to searching
US7539032B2 (en) * 2006-09-19 2009-05-26 Netlogic Microsystems, Inc. Regular expression searching of packet contents using dedicated search circuits

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040107297A1 (en) * 2001-02-01 2004-06-03 Jorg Heuer Method for improving the functions of the binary representation of mpeg-7 and other xml-based content descriptions
US20080303443A1 (en) * 2007-06-08 2008-12-11 Tektronix, Inc. Position lock trigger

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995164A (zh) * 2013-02-19 2014-08-20 安捷伦科技有限公司 通过信号模式触发的数字测量仪器
CN105334364A (zh) * 2014-08-04 2016-02-17 特克特朗尼克公司 具有状态的串行比特流正则表达式
CN105334364B (zh) * 2014-08-04 2020-04-14 特克特朗尼克公司 具有状态的串行比特流正则表达式
CN105553606A (zh) * 2014-10-24 2016-05-04 特克特朗尼克公司 从声明协议描述导出硬件解码加速
CN105553606B (zh) * 2014-10-24 2021-02-05 特克特朗尼克公司 用于导出硬件解码加速的方法和系统
CN107423037A (zh) * 2016-03-09 2017-12-01 阿里巴巴集团控股有限公司 应用程序接口定位方法及设备
CN107423037B (zh) * 2016-03-09 2021-04-02 阿里巴巴集团控股有限公司 应用程序接口定位方法及设备

Also Published As

Publication number Publication date
EP2336790A1 (en) 2011-06-22
JP5605842B2 (ja) 2014-10-15
EP2336790B1 (en) 2014-02-12
US9069017B2 (en) 2015-06-30
JP2011117967A (ja) 2011-06-16
US20110134979A1 (en) 2011-06-09
CN102130689B (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
CN102130689A (zh) 串行比特流正则表达式引擎
CN108538296A (zh) 语音识别测试方法及测试终端
US7340475B2 (en) Evaluating dynamic expressions in a modeling application
US7398200B2 (en) Token stream differencing with moved-block detection
CN107423278A (zh) 评价要素的识别方法、装置及系统
CN110968989B (zh) 在前端页面展示纠错信息的方法及装置
CN109271315B (zh) 脚本代码检测方法、装置、计算机设备及存储介质
CN109729395A (zh) 视频质量评估方法、装置、存储介质和计算机设备
JP2011117967A5 (zh)
CN105868254A (zh) 信息推荐方法及装置
CN110321457A (zh) 访问日志解析规则生成方法及装置、日志解析方法及系统
CN110347570B (zh) 一种ide环境下代码自动生成工具分析方法
CN103870541A (zh) 社交网络用户兴趣挖掘方法和系统
JP6955676B2 (ja) ログ分析方法、システムおよび記録媒体
CN109656797A (zh) 日志数据的关联方法及装置
CN110580217A (zh) 软件代码健康度的检测方法、处理方法、装置及电子设备
CN115857905A (zh) 图形化编程的代码转换方法、装置、电子设备及存储介质
US9989559B2 (en) Serial bit stream regular expression with states
CN100549976C (zh) 嵌入式软件自动测试系统及其测试方法
Koppenberg et al. 3.3 Estimating Maintenance Projects Using COSMIC FFP
CN113805861B (zh) 基于机器学习的代码生成方法、代码编辑系统及存储介质
CN112149402B (zh) 文档对比方法、装置、电子设备和计算机可读存储介质
ATE334530T1 (de) Verfahren zur übertragung von messdaten von einem messrechner zu einem steuerrechner eines messsystems
CN105334364B (zh) 具有状态的串行比特流正则表达式
CN109656821A (zh) 测试方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant