Oscilloscopes for serial bus troubleshooting from TekMark Australia
The new DPO3000 Series oscilloscopes can handle a wide range of general measurement tasks and meet application-specific needs.
One such class of applications is serial bus troubleshooting. Studies have shown that approximately 60% of all electronic design engineers work with serial buses as part of their routine design and debug chores.
These designers want tools that can help them selectively capture data from serial streams, and then analyze the packet content and other relevant signals.
In serial bus architectures, a single signal path may carry address, control, data, and clock signals. The DPO3000 Series oscilloscopes make an ideal platform for acquiring and analysing signals from some of today’s common serial buses including I2C, SPI, RS-232, CAN and LIN.
The DPO3000 Series oscilloscopes’ underlying bandwidth, sample rate, record length, and channel count are well-matched to the job. But most importantly, some innovative new features make serial debug work easier than ever before.
Troubleshooting a serial bus is a process made up of several steps: trigger on a specified serial event; decode that event and interpret its content; and search the data for other occurrences or events of interest.
The DPO3000 Series oscilloscopes brings the following ground breaking features for serial bus troubleshooting to its market:
- Triggering on serial packet content to find glitches and other waveform anomalies
- Automated packet decoding and display presents the data in human-readable, self-explanatory formats that express the content in instantly readable form
- Integral data search features find and mark individual serial events, and speed navigation from point to point within the 5M standard waveform memory
Triggering - The first step, made easy
Often during troubleshooting it is necessary to confirm that a specific serial packet has been generated or sent across the bus.
The packet contains embedded data values and other messages. Common oscilloscope functions such as state triggering or pattern triggering are not suitable for the purpose—they are meant for parallel data over multiple channels. What is needed is a trigger that can respond to the content of the serial stream.
The DPO3000 Series oscilloscopes, when equipped with an optional DPO3EMBD application module for I2C and SPI, a DPO3COMP module for RS-232/422/485/UART, and/or a DPO3AUTO module for CAN and LIN, will respond to user-specified trigger conditions including serial data content, address start and stop messages, and more. The triggering choices available for one serial bus: I2C. The SPI, RS-232, CAN, and LIN bus trigger sets are similarly comprehensive.
The trigger has two immediate effects.
First, the instrument acquires the event and those surrounding it, to a capacity of 5 million samples. Secondly, the trigger proves that the specified event occurred.
Unique to the DPO3000 Series oscilloscopes is a pair of front-panel Bus buttons (B1 and B2) designed to speed serial analysis. In effect, each button selects a preset for a particular type of serial bus.
The engineer creates the preset by defining which channels will receive the clock and data signals, respectively, and the thresholds that determine the two binary states (1 and 0).
This setup is reusable ever after (unless it is overwritten) simply by invoking the appropriate Bus button. No longer is it necessary to repeatedly work through several embedded menus or set thresholds for serial buses. The Bus buttons save time when setting up to acquire serial data, especially when troubleshooting more than one bus configuration.
A serial packet waveform appears on the oscilloscope display as a train of 1 and zero values. Trying to decode this information by tracking clock edges and their associated binary data values is cumbersome and prone to errors, yet that is the way many designers have had to interpret their serial bus acquisitions until now.
The DPO3000 Series oscilloscopes automatically decodes the binary packets for I2C, SPI, RS-232/422/485/UART, CAN and LIN buses. The display presents not only the waveform, but also a unique busform view.
Adapted from Tektronix logic analyzer platforms, the busform view is a trace made up of symbolic envelopes that align with the packet components on the waveform view. But instead of the individual 1 and 0 binary pulses, the busform typically contains a hexadecimal, decimal, or ASCII value representing decoded packet content (a binary format can be chosen if preferred).
Now the designer can see at a glance what’s happening on the bus without a long, painful, and manual decoding process.
Equally important, there are symbols for other events and values: start, stop, identifier, address (including read or write status), data, and many others depending on the standard. In effect, the DPO3000 Series oscilloscope is doing what has been done by hand until now and doing it in microseconds.
Busform decode on an I2C serial bus
Yet another time-saving decoded view is available: the Event Table. This presents decoded content in a tabular format with a timestamp for every entry.
It encompasses the entire acquisition. This makes it easy to view every single event on the bus and also enables easy timing measurements between messages. The DPO3000 Series oscilloscopes can produce Event Tables for any of the supported serial buses.
Event table showing CAN serial bus packets
Searching for answers
Once an acquisition has been made, it is often necessary to explore the entire record, up to 5 million samples, to fully debug an issue. Even with the scope decoding each packet, it can take a long time to manually look through every packet in the acquisition.
A better solution would be a tool that automatically searches the existing acquisition data for events that meet user-specified criteria.
The DPO3000 Series’ Wave Inspector feature delivers exactly this capability. In addition to searching on edges, pulse widths, runt pulses, logic conditions, setup & hold violations, and rise/fall times, Wave Inspector can search on serial bus packet content.
For example, Wave Inspector can isolate every CAN message with a specific pairing of address and data values, marking each occurrence with a small indicator symbol on the display screen. Navigating between the marks is a simple matter of pressing the front panel Previous and Next buttons.
CAN Bus Search on Identifier 76D
The DPO3000 Series oscilloscopes brings powerful serial triggering, decoding, and search capabilities to design engineers looking for solutions to the serial debug problems they encounter every day.
The DPO3000 Series oscilloscope is available from TekMark Australia .