经常有客户咨询和不理解LOTO示波器的存储深度为什么是变长的,也表示对LOTO示波器的分段存储功能不理解,本文对LOTO示波器的存储机制做一次完整的梳理,帮助我们的客户更好的使用示波器。
数字示波器都是有死区时间(Dead-time)的,如下图所示,在两次采集时间段 (Acquisition-time)之间,一定会存在一个没有采集到的死区时间,在死区时间内的信号波形是采集和显示不到的。
所以示波器厂家都在尽力缩短死区时间段,加长采集时间段(上图灰色部分)。但是死区时间段不可能无限制缩小,采集时间段也不能无限制增大,这两种做法都需要在产品的实际使用中做出权衡。
降低采样率或者加大存储深度,是加长采集时间段的两种常用方法。大的存储深度可以保障示波器用尽可能高的采样率一次采集尽可能长时间段的波形,但是并不能消除死区时间段,较大存储会降低处理和波形捕获率。这会降低示波器的响应速率,并增加每次采集间隔的停滞时间。降低采样率的方法,使得存储数据点数减少,有利于提高波形的捕获速率和波形刷新率,缺点是采样率降低到一定程度会造成每个波形周期的采样点数不足,引起失真。
高端示波器还有第三种方法:分段存储功能。分段存储功能将存储划分为较小分段。用户可以指定存储应被划分为几个分段,每个分段均具备同等长度。
当示波器观察到第一个触发事件时,会开始在采集存储的第一个分段中存储采样点,直至第一个分段存储满。之后示波器会重新做好触发准备,开始寻找下一个出现的触发事件。当触发事件发生时,示波器会在下一个存储分段中存储采样点。示波器会不断重复这一过程,直至所有存储分段均存储满。 在捕获停滞时间较长的突发信号时,分段存储模式尤其有用。许多串行总线和通信信号均属于此类信号。通过分段存储,示波器可以维持高采样率,同时捕获长达数分钟数小时或数天。
LOTO示波器为OSCA02及更高型号的产品提供了多种灵活的存储方式,对产品的性能做出了权衡和兼顾,既可以小存储深度快速刷新,保持高的波形更新速率,又可以设置成长时间采集模式连续采集,还可以进行分段存储。
我们来逐个功能介绍:
1 示波器模式:
大部分客户的大部分应用场景下,应选择LOTO示波器的示波器模式,这也是我们软件的默认模式。这种模式优先使用固定的128K的存储深度,从而保障波形的快速更新和显示及运算。
这种模式下,客户可以自行调整波形刷新的帧率。也可以自由设置触发方式和位置,并得到快速的波形响应。
在示波器模式下,客户不需要考虑采样率和存储深度,只需要考虑当前屏幕显示的时间跨度,也就是时间档位就可以。示波器会根据当前的时间档位自动调整采样率和存储深度达到最合适的效果,兼顾效率和准确。所以LOTO示波器的存储深度是变长的。
在这个模式下,LOTO示波器还提供了500帧的PC缓存功能,还提供了余晖功能。这两个功能记录多帧的数据和波形,分别横向排开显示以及垂直叠加显示。相当于500个当前存储深度的存储,比如当前是128K的存储深度的话,打开PC缓存功能相当于60M的深度了。并且这些数据可以导出到电脑文件,也可以导入到LOTO示波器的软件中重现出波形进行分析,也可以逐帧导出成文本文件或者电子表格文件。
这500个存储深度之间仍然是有死区时间的,采用高的波形刷新速率时,这个功能可以极大提高异常波形的发现概率。这就有点像下一个模式分段存储模式了,我们后面介绍。
2 采集卡模式(传统长存储模式):
LOTO示波器可以选择将示波器模式切换为采集卡模式,如下图所示:
,
这个模式下,客户手动选择采样率,以及选择适合的缓冲区(相当于存储深度)大小进行采集。选择好之后点击采集,就开始持续长时间采集,直到填满整个选定的缓冲区。缓冲区最长可以设定为250兆字节,如果是双通道采集,那么整个采集过程所需要的时间为缓冲区大小除以2再除以采样率。比如,使用2.4M采样率,缓冲区为250M,采集1KHZ的正弦波,那么会持续采集60秒,大约1分钟的波形数据并绘制在屏幕上,采集过程中会显得很卡顿,设置长时间不更新波形,会有进行中的指示标识:
需要耐心等待采集结束,结束后如下图所示。
这样1分钟的数据放在屏幕上,多数情况下会显得非常密集,比如图上就有6万多个周期的波形,我们可以放大了逐个观察分析一般凭借肉眼和工程师耐心,人最多看不超过1000个周期就崩溃,也就是说你可查看的最大波形周期是1000个,也就是千分之一的概率,对于1ppm的异常,肯定无法看到。现在可以按照条件搜索,但是条件呢?是脉冲,还是边沿缺陷,还是过冲?你无法预知,也就无法搜索,按照各种条件搜索,需要花费不少时间,也会出差错。有些情况下,使用模式1的示波器模式快速刷新波形,一旦看到波形异常闪过,可以立刻停下采集,在过去的500帧缓存里面找到它。
长存储会带来计算处理要求的提高,如果同样的处理器,数据多了处理时间会变长,波形捕获率就会变得非常慢。为了方便这种长时间大数据量的采集后期分析,我们可以把采集到的数据导出成数据文件,如下图所示:
然后在1示波器模式下导入进来,变成500帧的分段波形,总数据量是250M字节,可以方便的逐一查看分析,如下图所示:
如上图所示,LOTO示波器这样的设计兼顾了长时间采集的优点,又尽量弥补了后续分析查看的不便。LOTO示波器不但可以将采集卡模式使用在2通道示波器模拟信号输入情况下,也可以使用在双通道合并采集的情况下,也可以使用在逻辑分析仪数字通道输入的情况下,并且都可以导出文件并导入到PC缓存里分段分析。一旦导入到PC缓存里,就可以重现出波形进行分析,也可以逐帧导出成文本文件或者电子表格文件。
3 分段存储模式:
在前面提到过,在示波器模式下,开启PC缓存功能,基本上就相当于有了500段的分段存储能力了。这种分段存储模式有一个特别典型的应用场景:低占空比脉冲或猝发信号。信号与信号之间有较长的空闲时间,很多情况下,即使有较大的存储,或者通过降低采样率的方式也很难达到想要的采集时长,想象一下,一天之内可能出现100次,每次出现的信号很尖锐很短促需要很高的采样率去抓取,示波器有再大的存储也不可能存储一天数据,采样率降的再低也不可能抓到所有的100次信号,而分段存储却可以很好的完成。
如上图所示,分段存储在高采样率采集过程中进行多次触发,对每次触发采样得到的数据存放到将存储空间分成的一段一段小的存储中。示波器触发一次填充一个段,段与段之间的空闲信号或信号不感兴趣的部分没有被采集和存储。
还有一种常见的场景特别适合分段存储功能发挥独特作用的是串行总线分析——串行总线以数据包的方式进行传输,包与包之间空闲时间会占用示波器宝贵的存储资源,采用分段存储,示波器可以只采集数据包,空闲时间不采样。在保持较高采样率下,还可以采集较多的数椐包,方便解码分析。接下来我么看一个LOTO示波器使用分段存储采集和解码这样的串行总线的案例。
如上图所示,串口RS232每隔200ms(如果要效果更明显可以设置更长,比如1分钟间隔)会发送一串数字,0000000一直到999999999并且循环发送。我们开始触发和500帧的PC缓存功能作为分段存储。
我们看到上图所示,分段存储的第6帧,数据是0000000,并且解码出来了。下图第7帧,数据是1111111,并且解码出来了。
下图分段存储的第8帧,数据是2222222,并且解码出来了…
这样一直到最后,每帧被捕获一个数据包,并且解码出来,一直可以捕获500帧不遗漏,不论整个发送过程如何漫长。