许多基于微控制器的系统都有模拟和数字信号。即使看起来是完全数字的系统也不完全是数字的,因为存在振铃和串扰等模拟效应。因此,对系统中的信号通常需要同时持有模拟和数字的视角。这正是混合信号示波器(MSO)可以帮助到你的地方。
混合信号示波器同时具有示波器的功能和逻辑分析仪的部分功能。最常见的混合信号示波器配置有4个模拟通道和16个数字通道,它们最适合用于嵌入式微处理器板的查错。
图1所示的处理器板框图包含诸如电源、时钟、模数转换器(ADC)输入和数模转换器(DAC)输出等模拟信号,也有并行和串行的数字信号。并行数字信号包括CPU和GPIO接口的数字和地址线。以太网、SATA、PCIe、SPI、I2C和UART等接口则是高速和低速串行数据信号。混合信号示波器可以让你在模拟或数字域中同时观察这些信号。两个域中的显示都是时间上同步的,有助于发现问题。通过从模拟、数字或两者结合的触发还有助于诊断。这些采集资源还有一整套测量与分析工具进行补充。不管是哪个域中的数据,这些工具都可以处理。另外,可以方便地使用搜索功能定位串行或并行数字化数据图案。
图1:包含模拟(绿色)、数字(红色)和串行数据(蓝色)信号的嵌入式微处理器板例子。混合信号示波器提供了单台仪器就能测量和查错所有这些类型信号的方案。
比较模拟和数字
数字示波器中的模拟波形是将采集到的信号表示为一系列采样点。这些采样点是以示波器的采样速率获取的,并用示波器中的模数转换器(ADC)位数设定的幅度分辨率进行了数字化。现代高频示波器具有8位(256个等级)到12位(4096个等级)的ADC分辨率。
混合信号示波器中的数字轨迹代表一个比特,是以数字采样率采样的。幅度基本上从0到1变化,依据的是比预设的逻辑阈值(许多混合信号示波器为多种系列逻辑器件提供预设的逻辑电平)高还是低,它们代表了数字输入的状态。图2显示了模拟轨迹(底部)和数字轨迹(顶部)的比较。
图2:数字轨迹(顶部)和模拟波形的比较。数字轨迹幅度用1或0表示,判断依据是数字输入端的电压是高于还是低于用户设定的逻辑阈值。模拟轨迹被分解为4096个(12位)幅度等级中的任意一个。
模拟轨迹可以显示随时间发生的电压微小变化。你可以看到诸如脉冲上冲和振铃等现象。在C1描述块中可见的光标幅度读取功能可以读到低至mV的幅度。(在数字1描述块中的)数字轨迹光标读取功能则报告0和1的幅度。记住,数字轨迹只显示数字线的状态,只有0和1两个值。
当显示多根数字线时,你通常可以选择用一根线单独观察、捆绑成总线观察或两种观察同时进行,如图3所示。在图3中,8根数字线(D0到D7)以总线形式被同时显示在画面上(底部轨迹),它用十六进制计数方式显示了所有数字线的总值。注意,D7是最高位(MSB),D0是最低位(LSB)。
图3:以单线和总线形式显示的D0至D7多根数字线.总线形式显示了十六进制计数的所有8根线总数。D0是最低位,D7是最高位。典型的测量工具包括将数字线作为源的光标和定时参数,如图中所示。
你可以将示波器的参数测量工具应用于任何一种信号类型,但对数字轨迹的测量被限制为与时间相关的测量,如周期、宽度、占空比和延时。这些参数与更为常见的模拟波形参数一样可以作为趋势(按先后顺序绘制参数值)、跟踪(绘制时间上与源轨迹同步的参数值)和直方图分析工具的依据。图3显示了基于所示数字线的8个参数(P1-P8)。
数字设计的查错
下面的例子展示了可以用混合信号示波器实现的一些基本诊断方法。第一个案例中研究的电路是一个简单的D触发器,以时钟上升沿触发。数字线D0连接到触发器的数据输入端(D)。D1显示的是时钟,D2显示的是Q输出。与此同时,模拟通道C1、C3和C4分别连接到相同的点。这些波形显示在图4的左侧。Q输出(D2)的周期和宽度用参数P1和P2进行测量。示波器的时基被设为采集大约5000个时钟脉冲。
图4:使用D2周期的踪迹定位采集记录中的长周期。缩放最大周期可以方便地观察数字和模拟轨迹中的细节。
参数统计表明,周期的平均值为208ns,最大值是416ns,这意味着输出没有保持期望的周期。踪迹F1是周期测量的轨迹,显示在数字显示器下方的左上侧栅格中。这个轨迹显示了作为与源轨迹在时间上同步的函数的D2周期。光标标识了踪迹指示、并且周期值增加的点。所有轨迹都经过缩放处于最大Q输出周期的位置,缩放后的轨迹显示在显示器的右侧。
代表错误时钟触发的数据信号的长周期显示在右上栅格中的数字轨迹中。轨迹Z4中也显示了模拟轨迹C4的缩放结果。参数P3测量的是数据C1和时钟C3之间的建立时间。统计结果再次表明,最小建立时间要比标称值短20%。F2中的建立时间踪迹显示,这个缩短的建立时间是与扩展周期同步发生的。
这是发现此类问题的一种方法。另外一种方法是使用被称为WaveScan的示波器内置搜索工具,如图5所示。注意,大多数混合信号示波器都具有某种形式的搜索工具。
图5:使用WaveScan并通过在D2上搜索超过标称208ns的周期测量值来寻找异常点的设置。
搜索工具可以在很长的记录中搜索,寻找边沿、不稳定边沿、超短帧、串行数据图案、并行(总线)数据图案或测量数据。在本例中,我们搜索在D3上测得的超过250ns的周期。当满足这种条件时,它会停止采集,显示数字源轨迹,并对源轨迹进行缩放。异常情况用红色高亮显示,测量到的异常值显示在相邻的表中。一旦发现问题,模拟轨迹将被打开,以便观察引起问题的物理层问题,就像我们以前做的那样。
混合信号示波器可以让你观察多达16条数字轨迹,数量要比模拟通道多。在图6中,8条数字轨迹记录了两个级联的8位移位寄存器的工作过程,这些移位寄存器是伪随机二元序列发生器的核心电路。首先需要注意,轨迹标签是定制过的,用于反应电路中的功能。我们能够看到时钟和串行数据输入以及来自移位寄存器的A和B部分的Q6、Q7和Q8输出。我们可以看作是从左到右经过从串行输入轨迹开始的所有16级电路传播的“长-短”图案(从顶部数第二个)。
参数P1使用选通延时参数测量串行输入轨迹上从触发器开始到图案末端下降沿的时间。对Q6-A轨迹上的那个边沿做类似的测量。将参数公式用于P3计算这两个边沿之间的时间差,结果是515.3 μs。参数P4测量时钟周期。P5中的参数公式用于将时钟周期乘以6,以验证从串行输入到Q6-A的期望延时,如果是515.3 μs就是正确的操作。输出Q7-A和Q8-A表明增加了一个时钟周期的延时。通过类似的方式还可以验证所有16级电路的正确传播延时。
图6:验证一个双8位串行移位寄存器的正确传播延时。
混合信号示波器的数字轨迹功能可以用来采集来自I2C、SPI和其它低频串行标准的串行数据,如图7所示。这里的D0包含SPI数据,D1是SPI时钟信号。解码器将这些波形用作源轨迹,以便解码数据内容,并用蓝色轨迹覆盖层和随附表格显示出来。解码数据可以用ASCII、二进制或16进制显示。表格也列出了相对于触发器的数据包位置,以及每个解码出的字节的比特率。
图7:将数字轨迹用作SPI解码器的源。采用16进制格式的数据内容显示在蓝色覆盖层和随附表格中。
总结
混合信号示波器可以向用户提供比传统数字示波器更多的功能。用户可以同时观察多达16根数字信号线,并且可以与多达4个模拟波形保持同步。数字轨迹可以用光标或所选的测量参数进行测量。对数字线还可以应用分析功能和解码操作。
从功能角度看,混合信号示波器中的数字状态分析功能的建立比逻辑分析仪简单,不要求额外的平台空间。在同一台仪器中的模拟通道可以在遇到问题时用于详细的物理层分析。 |