广大用户日益需要处理各种通用测量任务及满足专用需求的解决方案,泰克新推出的DPO3000系列示波器满足了这些需求,其中一个此类应用是调试串行总线。研究结果表明,在所有电子器件设计工程师中,大约有60%的工程师在日常设计和调试事务中要处理串行总线。这些设计人员希望获得工具,帮助他们选择性地从串行流中捕获数据,然后分析分组内容和其它相关信号。
在串行总线结构中,一条信号路径可以传送地址信号、控制信号和时钟信号。DPO3000系列示波器提供了一个理想的平台,可以从当前某些最常用的低速串行总线中采集和分析信号,包括I2C, SPI, RS-232, CAN和LIN。DPO3000系列的基本带宽、采样率、记录长度和通道数量完全可以胜任这一工作。而最重要的是,某些创新功能使得串行调试工作变得更加简便。
串行总线调试是由多个步骤组成的流程:触发采集指定的串行事件;解码该事件,理解其内容;搜索发生的其它事件或感兴趣的事件数据。
DPO3000系列通过下述功能,开创了串行总线调试的新天地:
• 触发采集串行分组内容,找到毛刺和其它波形异常事件。
• 自动解码和显示分组,以人们可以阅读的、自我阐明的格式提供数据,以即时可读的形式表示内容。
• 内置数据搜索功能,找到和标记各个串行事件,在5M标配波形内存中加快点到点导航速度。
触发—第一步,轻松实现
在调试过程中,通常必需确认已经通过总线生成或发送了某个串行分组。分组包含嵌入式数据值和其它消息。常用的示波器功能如状态触发或码型触发不适用这一目的,它们是为多条通道上的并行数据设计的。这就需要一种可以对串行流内容做出响应的触发功能。
在配备选配的DPO3EMBD I2C和SPI应用模块、DPO3COMP RS-232/422/485/UART模块和/或DPO3AUTO CAN和LIN模块时,DPO3000系列将对用户指定的触发条件做出响应,包括串行数据内容、地址开始和结束消息等等。表1提供了其中一种串行总线: I2C可以使用的触发选择的部分实例。SPI、RS-232、CAN和LIN总线触发集也同样非常全面。
触发有两种直接效应。第一,仪器采集事件及周围的事件,容量高达5M样点。第二,触发证实发生了指定的事件。
DPO3000系列的独特之处是为加速串行分析设计的一对前面板“Bus”按钮(B1和B2)。事实上,每个按钮为每种特定类型的串行总线选择预置值。通过分别定义哪些通道接收时钟信号和数据信号,以及决定两种二进制状态(1和0)的门限,工程师创建预置值。通过简单地调用相应的Bus按钮,在以后仍可以重新使用这一设置(除非被重写)。工程师不再需要重复处理多个内嵌菜单或为串行总线设置门限。在设置采集串行数据时,Bus按钮节约了时间,特别是在调试一条以上的总线配置时。
Busforms的优点
串行分组波形在示波器显示屏上作为一串1和0值显示。通过跟踪时钟边沿及相关二进制数据值来解码这些信息非常麻烦,而且容易出错,但此前,许多工程师一直不得不通过这种方式理解其串行数据采集。
DPO3000系列自动解码I2C、SPI、RS-232/422/485/UART、CAN和LIN总线的二进制分组。显示画面不仅显示波形,还显示独特的“busform”视图。Busform视图从业内领先的泰克逻辑分析仪平台演进而来,是由符号包络构成的一条轨迹,这些符号包络与波形视图上的分组成分对准。但是busform并不是单独的1和0二进制脉冲,而是一般包含一个表示解码的分组成分的十六进制、十进制或ASCII值(如果愿意,可以选择二进制格式)。现在,设计人员可以一目了然地查看总线上发生的情况,而没有冗长、麻烦的手动解码流程。同样重要的是,还有其它事件和取值的符号,包括:开始事件,结束事件,标识符事件,地址事件(包括读或写状态),数据及许多其它事件(视标准而定)。事实上,DPO3000系列示波器完成了此前一直“用手”完成的工作,而且只需几微秒就可以完成。
I2C串行总线上的总线形式解码
另外它还提供了另一个节约时间的解码视图:事件表。它以表格格式表示解码的内容,每个项目都带有一个时戳。它包括整个采集。因此,可以简便地查看总线上每个单个事件,同时在消息之间简便地进行定时测量。DPO3000系列示波器可以对支持的任何串行总线生成事件表。
事件表,显示CAN串行总线分组
搜索答案
一旦采集完成,通常必需查看整个记录,以全面调试问题,其可能要高达5M样点。即使是由示波器解码每个分组,手动查看采集中每个分组可能会需要很长的时间。较好的解决方案是有一个工具,自动搜索现有的采集数据,找到满足用户指定标准的事件。
DPO3000系列的Wave Inspector提供了这种功能。除搜索边沿、脉宽、欠幅脉冲、逻辑条件、建立时间和保持时间违规和上升时间/下降时间外,Wave Inspector还可以搜索串行总线分组内容。例如,Wave Inspector可以隔离带有某对地址和数据值的每条CAN消息,在显示屏上用小的指示符号标明每次发生情况。在标记之间进行导航,只需按前面板上的Previous和Next按钮。
对寻找解决方案、解决其每天遇到的串行调试问题的设计工程师,DPO3000系列提供了强大的串行触发、解码和搜索功能。
表1: 串行触发条件实例
内容 |
I2C触发特点 |
开始 |
在SCL为高、SDA变低时(表示包头)触发采集 |
重复开始 |
在发生开始条件、而没有以前的结束条件时触发采集 (通常是一个主设备发送多条消息,而没有释放总线) |
结束 |
在SCL为高、SDA变高时(表示包尾)触发采集 |
未确认 |
在串行分组内容上触发采集 |
地址 |
在用户指定地址或任何预编程的专用地址上触发采集(通用呼叫, 开始字节, 等)。地址采用7位格式或10位格式,用二进制或十六进制表示 |
数据 |
在最多5字节的用户指定数据值上触发采集,其可以是二进制或十六进制 |
地址和数据 |
在指定地址和数据值组合及读或写上触发采集,以捕获感兴趣的事件 |