Triggering and decoding Manchester and NRZ based buses

Many serial interfaces use Manchester or non-return-to-zero (NRZ) coding. Oscilloscopes typically offer dedicated software options for debugging and testing the communications interfaces for common standards such as I2C, UART or CAN. The R&S®RTx-K50 option expands the addressable range of interface standards by adding decoding capability for standardized and proprietary Manchester or NRZ coded buses. It allows customizable configuration of the protocol structure that has to be decoded.

R&S®RTx-K50 option

Your task

When developing electronic circuits and systems, engineers test for correct bus communications. This is typically done in two steps. First the signal quality is checked via an eye test to identify any serial integrity issues or sporadic irregularities such as glitches or runts. In a second step, the development engineer checks for the correct data content. For standardized buses like CAN or SPI, the content is typically analyzed with dedicated bus decoder software running on the oscilloscope. This software displays the decoded data time-correlated to the acquired waveform and also indicates erroneous protocol elements such as CRC errors and bad headers. Such software allows very efficient testing of the communications interface. To test interfaces that use communications standards that have no decoder option available, such as Profibus PA or MVB, or that use proprietary protocol implementations, only manual decoding is possible. This is error-prone and time-consuming.

Rohde & Schwarz solution

The R&S®RTx-K50 option for the R&S®RTP, R&S®RTO and R&S®RTE oscilloscopes provides automatic decoding of arbitrary Manchester and NRZ communications protocols. Decoding is based on a user-defined protocol structure. The user benefits from automatic decoding, greatly reducing the time required for interface testing. The table lists some of the communications standards and implementation characteristics supported by the R&S®RTx-K50 option.

Selection of communications standards and proprietary communications characteristics

Coding Communications standard
Manchester MVB, DALI, Profibus PA,
Foundation Fieldbus H1
Manchester proprietary up to 2 Gbit/s, violations high and low, biphase, tristate, Manchester I and II
NRZ Profibus DP
NRZ proprietary up to 5 Gbit/s, clocked, unclocked
Manchester coding format of Profibus PA standard
Manchester coding format of Profibus PA standard
Open Lightbox

Application

Bus configuration

To enable decoding, the telegram frames need to be configured according to the specification. The approach is explained in the following based on the example of the Manchester coded Profibus PA protocol. The diagram below shows the telegram coding of this communications standard.

Correct decoding of this bus can be best configured in two steps:

  • Protocol decoding configuration: Set the correct coding standard, the correct bus polarity as well as the decoding threshold and bit rate. With a proper setup, the telegrams are decoded correctly with undescribed bits (Figs. 1 and 2)
  • Protocol frame setup: Define the individual protocol cells. Profibus PA starts with a preamble and a start delimiter (see diagram below). If you define this in the frame format dialog, you see the result in Fig. 3. The possible frame cell definitions are listed in the table below.

Possible frame definitions

Description
Fixed cell array
Variable cell array
Fixed cell, e.g. for a fixed frame ID
Manchester violation H, L (stays high, low), inverted for Manchester II
Fig. 1: Setup of protocol decoding option.
Fig. 1: Setup of protocol decoding option.
Open Lightbox
Fig. 2: Protocol decoding with undescribed bits.
Fig. 2: Protocol decoding with undescribed bits.
Open Lightbox
Fig. 3: Protocol frame dialog with partially defined Profibus PA frame (preamble, start delimiter). The remaining parts of the telegram are not yet described in the frame dialog.
Fig. 3: Protocol frame dialog with partially defined Profibus PA frame (preamble, start delimiter). The remaining parts of the telegram are not yet described in the frame dialog.
Open Lightbox
Manchester and NRZ coding
Manchester and NRZ coding
Open Lightbox

Manchester and NRZ coding

Manchester coding is a line code in which the encoding of each data bit has at least one transition. As a result, Manchester coded buses have no DC component and are self-clocked. In contrast, in the NRZ coding one state is represented by one significant condition like a positive voltage, the other state by another condition like a negative voltage. NRZ coded buses have no rest state and might need additional clocking mechanisms or a separate clock.

To set up Profibus PA based triggering, do the following: Open the trigger menu and select the channel and choose the trigger conditions that are appropriate for your specific situation. Available trigger events are start of frame and triggering on a specific telegram pattern (Fig. 4)

Debugging can be further simplified with the decode table that gives a full overview of all decoded telegrams. The R&S®RTx-K50 option allows fast and efficient bus decoding setup of arbitrary Manchester or NRZ coded buses with the R&S®RTP, R&S®RTO and R&S®RTE oscilloscopes.

Fig. 4: Trigger setup dialog showing serial pattern trigger capability set to trigger on a specific trigger in the data field of the Profibus PA telegram.
Fig. 4: Trigger setup dialog showing serial pattern trigger capability set to trigger on a specific trigger in the data field of the Profibus PA telegram.
Open Lightbox