基于示波器多重触发功能的串行测量
扫描二维码
随时随地手机看文章
触发是在屏幕上播放稳定的重复波形的关键,同时也为捕获一次性事件提供了一个有效的工具。随着数字示波器的出现,触发功能得到了许多新的扩展。
大多数示波器提供了辅助触发系统或“B”触发器,允许用户定义范围更宽的条件。B触发器等待主(褹)触发发生,然后在越过自己的边沿门限时触发采集。这两者可以结合使用,以设置某些相当复杂的触发条件。例如,A可能在设备时钟输入线路上检测到一个毛刺,如果在输出上遇到上升沿或下降沿,可以触发B。如果没有这种转换,那么毛刺可以忽略。这两套条件结合使用,可以确定毛刺是否会引起不想要的状态变化。
直到最近,B触发功能一直限于边沿检测。但是对于复杂的新信号格式,特别是PCI Express和串行ATA等串行协议中使用的信号格式,需要触发系统的功能与其待处理的信号之间更好地匹配。
这些快速新协议中的错误可能来自多个事件的综合结果,如逻辑状态、偏移、瞬变、上升时间问题等。有时,必需规定非常精确的条件范围,以确定难以捕捉的错误。这要求触发工具系列能够分析更多的条件。可以采用双触发排列来解决这一问题,其中B触发系统与A系统基本上相同。只是在许多情况下,A条件相对简单,而在理想情况下,B触发器应能够评估比较复杂的一套指标,如只在其它逻辑信号处于规定状态时才会有效的事件数量等。但是,相关触发B一直缺乏A触发系统的灵活性。因此大多数示波器仅提供了非常简单的B触发器。
图1 全功能双触发结构
图2 两个触发器捕获偏离的写入脉冲
图3 串行通路偏移超限测量
图4 检测信标宽度超限
让两个触发器共同运行
图1是简化形式的全功能双触发系统。其中位于最后的触发器将帮助示波器捕获有问题的信号,可能发生的条件如下:
是否发生A事件。用户可以规定边沿、削幅脉冲或许多其它条件;
&nbs
p; 在A事件发生时正确的逻辑状态(从最多两个不同输入中收集)是否生效;是否满足A触发器和B触发器之间的延迟条件。“延迟”可以用时间或事件数量表示;
是否发生B事件。这可以是建立时间/保持时间超限、削幅脉冲或A触发器使用的同一类型列表中的任意选择;
在B事件发生时正确的逻辑状态(也从最多两个不同输入中收集)是否生效;
在整个过程中任何点上是否发生复位条件。复位将会绕过所有后续步骤,返回开头。
通过以上条件的依次执行明显提高了触发系统的灵活性。在同时考虑这两种事件条件及逻辑判定符时,可能的组合数可以达到几千种。这样,用户获得了一系列编程选择,从简单的单个输入上的边沿门限,到使用两个触发器、逻辑判定及时间或事件数量的复杂公式。
源自电脑编程领域的IF-THEN-ELSE构成了这类触发结构的概念模型。如图1所示,这些语句还包括其它判定符(如A和B之间的定时器/计数器)。不管B事件是否发生,在A事件之后随时都可以发生复位。
使用两个触发器找到一个脉冲
本文通过最新磁盘驱动器设计项目来介绍全面对称的双触发系统。
本系统中,读/写电路中的一个单元设计成在每个有效系统写入启动(WE)周期中执行一串32条写入命令。图2描述了较大的周期时间与导致数据写入的各个脉冲的关系。
在这一新兴设计中,由于某些周期中发生了额外的脉冲,导致间歇性错误。尽管没有任何方式预测什么时候会发生第33个脉冲,但通过某种手段捕获不同的33个脉冲的顺序可以更简便地识别可能相关的其它系统事件。
一种解决方案是使用传统边沿触发器采集多次重复的WE周期及相关的写入脉冲顺序,检测每个WE周期的前沿,然后手动滚动通过数据,找到有问题的周期。这种方法耗时长,而且不能保证在示波器波形的存储容量范围内错误脉冲只出现一次。工程师更希望的解决方案是只在发生33个脉冲周期时触发采集。其好处在于,感兴趣的周期将自动显示在屏幕上,而不需麻烦的手动搜索。当然还会存储触发事件前和触发事件后的相关数据,但是触发发生的简单事实证明了存在33个脉冲周期。
这也正是双触发系统必不可少的地方。在这种情况下,磁盘驱动器设计人员需要设置一个相关触发器,其中WE信号的前沿(正向沿)作为A触发事件,而后沿则作为复位条件。
在这一过程中,A事件启动延迟计数器,计算脉冲数量。一旦产生了32个脉冲,它会使B触发器监测第33个脉冲。当检测到特定脉宽时,B系统便设成触发采集,这时,示波器触发并记录数据。如果没有第33个脉冲,复位条件会重新准备A触发器,再次启动整个流程。
如果B触发器只限于边沿检测,那么这种方法是不可能实现的。在这一过程中,不应忽视复位功能值,因为它决定着如果未能发生相应的A事件和B事件组合,示波器及其用户不会一直等下去。
反常的第33个脉冲是电路中其它地方逻辑设计错误的结果。由于可靠的偏离脉冲检测方法,设计人员能够使用逻辑判定,进一步缩小触发条件,进而找到故障所在。
检测通路间偏移
许多串行通信技术开始时采用单通道串行传输结构,后来又演变成增加多条同步传输通路,以提供更高的数据速率。这些通路并不以并行总线的方式同步,因为数据将在目的设备中重新对准。但是,通过串行链路传送的相关数据分组之间允许的延迟或偏移有限定极限,不能遵守这一极限称为“通路超限”。
在最基本的形式下,超限测量由其中一条数据流上触发的一个字符与相邻通路中的相对数据偏移组成。但偏移可能会随着时间变化,在某个时间点位于容限范围内的通路在另一个时间点可能会越过边界,所以关键是长期内的偏移行为。
全功能双触发系统的示波器为监测偏移变化提供了一个强大的工具。它可以检测任何时间内任意两条通路之间的时间偏移,可以是几ns,也可以是几天。同时还可以在显示屏上捕获超出偏移时间范围的事件,并使用仪器的采集计数器计算事件的数量。
图3是对落入8 ns时间窗口内任何地方的偏移测量进行合格/不合格测试的实例。设置如下:
A事件是通路0上的逗号字符。由于它具有可预测的脉宽,因此可以使用脉宽触发格式检测到逗号。
B事件是通路1中的逗号字符,通过在B系统中定义脉宽触发器捕获。
A触发器和B触发器之间的程控延迟设为16.8 ns,这是被测设备的技术指标。也既是窗口的“早期”边界。
复位时间值设为24.8 ns,这是总线标准允许的容限,既是窗口的另一条边界。
在这种情况下,如果检测到A事件,那么在通路1的事件偏移落在16.8 ns和24.8 ns之间时将触发B触发器。如果在24.8 ns极限到期前没有检测到任何B事件,那么仪器将重新准备A触发器,开始查找新的周期。在图3中,通过采集发现两条通路之间的偏移是19.8 ns。
监测信标
许多串行通信设备通过传输由专门分组包的包头和可变长度数据块组成的“信标”信号,来表明其存在于通信信道上。有时这些设备会在错误状态下开机,并会传送一个信标,其中包含与设备状态有关的额外信息,这时可能会导致信标长于正常时长。而信标信号的最大长度是大多数设备指标的组成部分,因此必须检查任何超限特点。具有全功能A触发系统和B触发系统的示波器可以解决这种测量问题。图4是检测到信标宽度超限时采集设置的屏幕图。
A事件触发器设成检测信标信号包头分组中的逗号字符 (K28.5,8b/10b格式)。为此,要使用脉宽触发格式。有效的A事件定义为由逗号字符中五个二进制1或0组成的总脉宽。
在“正确”信标信号的最大宽度上设置A-B的延迟时间。B触发器直到延迟已过时才开始评估其条件,这时信标应该空闲。
B事件触发器设置为超时。在触发系统的语言中,也就是定义为没有发生转换的一段时间,换句话说是没有信号。如果在应该为“无”时检测到信标活动,B触发器将会被触发。
复位条件也用时间表示。它定义了测量感兴趣的周期时的结束时间。设为3.0 ms,其主要作用是让A触发器准备另一次采集。
在上面汇总的触发条件下,示波器将很容易地检测到信标宽度错误,进而揭示出设计中的问题。
结语
以上应用实例依赖两个强健的对称触发系统并排工作。这些实例说明了通过灵活的两级触发系统怎样观察在当前快速数字设备中产生信号和错误的复杂相关性。带有对称A触发和B触发的现代数字示波器为迎接这些棘手的测量挑战及其它问题提供了理想的手段。