使用有限状态机的数字触发的制作方法_4

文档序号:9546382阅读:来源:国知局
PAT。如果可以并行处理的码元的数量充分大,则可以构建这些实施例。MSFSM的所需处理能力将取决于特定数字示波器。较低速度数字示波器需要以几个100MHz上至4Ghz运行的RTT ;高速度数字示波器可能需要以上至100GHz的速度运行的MSFSM。
[0078]现参照图9,图9示出MSFSM用作RTT的数字示波器。为了简化讨论,在此将不详细讨论服务于与上述数字示波器10的元件相似的功能的数字示波器90的这些元件。在数字示波器90中,每个ADC的输出拷贝到码元生成器92,码元生成器92生成对应于每个输出的码元,并且将该码元锁存到MSFSM 94中的输入寄存器中。当接收到最新ADC值并且将其转换时,MSFSM 94处理输入码元,以确定是否已经找到对于期望搜索模式的匹配。如果找到匹配,则控制器91使得显示处理器108显示存储器组中所存储的数据的有关部分。用户可以通过从控制器91所提供的多个预定触发模式之一进行选择或通过输入描述期望触发模式的正则表达式来指定触发模式。在后一情况下,控制器91包括用于从用户输入的正则表达式生成对应状态表的软件。
[0079]如果MSFSM是基于多个并行处理FSM的FSM,则一旦接收到码元,输入中的每个码元的处理就可以开始,而非等待来自ADC的所有码元到达MSFSM。如上所述,每个并行处理FSM独立于其它并行处理FSM而工作,并且仅在各码元之一上工作。因此,一旦该码元到来,并行处理FSM就可以处理码元并且报告任何匹配。当最新并行处理FSM随其码元完成时,完成处理的MSFSM中组合器累计来自MSFSM中的各个并行处理FSM的匹配。由于并非所有并行处理FSM同时请求对定制芯片中的存储器的访问,因此当在定制芯片中实现各个并行处理FSM时,这种类型的交错处理可能是有用的。
[0080]上述示例利用基于使用具有三个状态的码元的实施例中的上升沿的触发。应注意,也可以使用简单三状态码元实施例来实现其它传统RTT。例如,单触发方式下通过正则表达式[~H]*H+M*L来定义下降沿所激发的触发。图10示出用于实现下降沿触发的该实施例的基本FSM。正则表达式M*((L+M*H) I (H+M*L))定义在单激发方式下在上升沿或下降沿上激发的触发。图11示出用于实现上升沿或下降沿触发的该实施例的基本FSM。正则表达式M*((L+M*H) I (H+M*L))+定义在上升沿或下降沿上激发的连续触发。图12示出用于实现连续激发上升沿或下降沿触发的该实施例的基本FSM。具有在单FSM中有效的两个触发(例如分离地具有[~L*] (L+M*H)和[~H]*(H+M*L)的定义)也将产生上升沿或下降沿上的触发,但由于存在两个分离定义,因此可以区分观测到哪个边沿,而单个表达式M*((L+M*H) I (H+M*L))将识别相同输入但并不允许区分产生。
[0081]可以实时通过本发明实现的另一类触发称为“边沿接边沿”触发。这类触发包括在第一事件(例如边沿触发)时引起然后在第二事件产生(例如在某所指定的介入时间段或其它事件已经产生之后产生的另一边沿触发)时激发的触发。这种类型的触发的两个子类称为“按事件延迟”和“按时间延迟”触发。例如,在使用边沿触发的按事件延迟触发中,当检测到下一边沿时,引起触发。在引起状态下检测到指定数量的边沿触发之后,触发激发。利用([~L]*(L+M*H)) {η}可以在正则表达式方面指定在已经检测到η个上升沿后的上升沿上激发的触发。图13示出对于情况η = 3实施正则表达式([~L]*(L+M*H)) {η}的基本FSM。类似地,利用(ΓΗ]*(Η+Μ*υ){η}可以在正则表达式方面指定下降沿后激发的触发。图14示出对于情况η = 3实现正则表达式(ΓΗ]*(Η+Μ*υ) {η}的基本FSM。
[0082]通过将采样的数量计数为用于时间的代理来实现按时间延迟触发。例如,上升沿延迟η个采样后接着另一上升沿可以用正则表达式(L+M*H) (L|M|H) {n} (L+M*H)加以表示。状态(L|M|H)是无需在乎的状态,并且也可以指定为字符类[LMH]。图15示出对于情况η=3实现正则表达式(L+M*H) (L|M|H) {n} (L+M*H)的基本FSM。为了减少FSM的长度,可以利用具有时钟的计数器布置,使得并不通过将状态添加到FSM来完成计数。在该实施例中,通过第一触发激发(即检测适当类型的边沿)来引起制式。制式然后使用与FSM分离的计数器对η个时钟周期进行计数。在计数器表明完成时,第二次引起触发。可替代地,具有关联计数器的FSM中的单一状态可以用于无需在乎的状态。这种类型的状态循环回到自身,直到满足计数为止。这些状态在本领域公知的计数器扩展型FSM中实施,因此在此将不详细讨论。
[0083]可以构建按η个事件延迟的事件或按时间延迟的事件的其它示例。为了简化讨论,使用以下速记标记:
[0084]上升沿=R= L+M*H
[0085]下降沿=F= H+M*L
[0086]无需在乎=〃." = L|M|H = [LMH]
[0087]数个上升沿接着下降沿变为R{5}L,或介于五与十个上升沿之间的数个上升沿和下降沿变为R{5,10}L。也可以采用运算符(例如{n,})至少匹配η次,或有条件的运算符(例如ln,m} ?)至少匹配η次但不多于m次。此外,可以实现事件的组合(例如F{5}R{10}-五个下降沿接着十个下降沿。在另一示例中,可以实现时间和事件的组合。例如,F{5}.{n}R=五个下降沿然后是对应于η个采样的延迟,然后第二上升沿。如上所述,也可以通过定时器实现按时间延迟。在该制式中,第一下降沿启动定时器,定时器然后对所需的时钟周期数量进行计数,并且引起用于上升沿的触发。当看见上升沿时,触发激发。
[0088]在本发明中也可以实现基于边沿的斜率的触发。正则表达式“1^1{11,111}!1”定义基于波形的斜率的触发,其中,η是下界,m是上界。这种类型的触发可以配置为基于采样的数量或时间来提供触发。在n= 1的情况下,如果边沿小于m个采样长度,则该触发将激发。图16示出对于η = 1和η = 3的情况实现正则表达式L+M{n, m}H的FSM。
[0089]另一感兴趣触发称为“毛刺触发”。毛刺定义为相比于特定极性(负或正)的某预定脉冲宽度更窄的脉冲。所定义的宽度的正毛刺可以由正则表达式rL]*L+M*H{l,m}M*L表示,其中,m是毛刺的最大宽度。图17示出对于情况m = 3实现正则表达式[~L]*L+M*H{l,m}M*L的FSM。负毛刺可以用正则表达式=ΓΗ]*H+M*L{1,m}H*L表示。图18示出对于情况m = 3实现正则表达式rH]*H+M*L{l, m}H*L的FSM。
[0090]也可以实现更复杂毛刺触发。例如,用于毛刺的触发位于支持大于、小于和之间的各特定宽度之间。此外,可以实现同时搜索在采样中具有特定毛刺宽度的正和负毛刺的触发。例如,正则表达式M*((L+M*H{l,n}M*L) | (H+M*L{1,m}M*H))定义在n个采样或更少的正毛刺以及m个采样或更少的负毛刺上激发的触发。图19示出对于情况n = m = 3实现正则表达式淋(仏+]?相{1,11}]\1札)I (H+M*L{l,m}M*H))的 FSM。
[0091]另一感兴趣触发称为“矮波触发”。正矮波定义为随L开始但在返回L前不到达Η阈值的脉冲。类似地,负矮波定义为随Η开始但在返回Η前不到达L阈值的脉冲。正则表达式[M]*(L+M+L) | (H+M+H)定义正或负矮波上激发的触发。图20示出实现正则表达式[M]*(L+M+L)|(H+M+H)的 FSM。
[0092]上述示例利用ADC的输出转换为每个码元具有三个值的码元串的制式。然而,也可以利用码元具有更大数量的值的实施例。例如,ADC的输出可以划分为对应于码元L、MpΜ2、Μ#Ρ Η的五个范围。在一个示例中,如果使用8比特ADC,则这些范围可以定义如下:
[0093]L = [0x00-0x20]
[0094]Μ!= [0x21-0x60]
[0095]M2= [0x61-0xa0]
[0096]M3= [Oxal-Oxde]
[0097]H = [Oxdf-Oxff]
[0098]考虑该制式中的矮波的触发。不同级别的矮波可以于是作为触发的基础。三个矮波触发将能够标识处于不同级别的矮波。例如,正则表达式[~L]*L+M1+U [1]札+[]?具]+1^和['Ll^L+tMM+L可以定义三个触发。图21示出用于实现这些触发之一上激发并且报告所遇到的矮波级别的三级矮波触发的FSM。
[0099]码元通常表示来自ADC的值的范围。在最简单的情况下,每个码元表示相等大小的范围。如果码元集合中的码元的数量是二的幂,则可以通过仅选择ADC输出的最高有效位来实现ADC值到码元的转换。例如,如果存在16个码元并且ADC输出12比特值,则通过拷贝ADC值的最高有效四位来获得每个码元值。然而,也可以构建码元值表示ADC值的不等范围的实施例。在这些实施例中,一系列比较器可以用于进行码元分配。
[0100]上述实施例是单通道实施例;然而,也可以构建具有多个通道的实施例。现参照图22,图22示出双通道数字示波器。数字示波器50包括第一通道,其以类似于上述单通道实施例的方式工作。第一通道包括ADC组51,其将从输入到通道1的采样数字化,并且将数字化的值存储在存储器组52中。第一通道还包括码元生成器56,其将ADC组51的输出转换为具有用于ADC组51生成的每个值的一个码元的码元集合。来自码元生成器56的码元输入到包括MSFSM的触发生成器57。第二通道包括ADC组61,其值存储在存储器组62中。第二通道还包括码元生成器63,其根据ADC组61的输出生成码元集合。来自码元生成器63的码元由同样包括MSFSM的触发生成器67加以处理。
[0101]包括预定义触发类型的库的控制器71将触发生成器57和67所使用的特定触发模式加载到MSFSM中。数字示波器50的用户使用用户接口 72来选择期望触发类型。例如,控制器可以对用户呈现触发类型的列表。用户然后选择感兴趣触发类型,并且指定任何参数(例如上述η和m的值)。控制器71然后在触发生成器中生成MSFSM所使用的存储器表。
[0102]在本发明一个方面中,控制器71还为用户提供编辑器,其允许用户通过输入用于定义用户所期望的触发条件的正则表达式来定义定制触发。在这些实施例中,控制器71包括编译器,其将正则表达式转换为用于对应触发生成器中的MSFSM的对应表。
[0103]当有效时,触发生成器将报告从各个并行处理FSM发送到控制器71。当检测到期望触发时,控制器71操作显示处理器53,以使得显示器54显示存储器组52和62中所记录的信号的对应部分。应注意,触发显示的最终触发事件可以取决于来自两个通道的触发被触发。
[0104]噪声波形
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1