background image

Appendix A: Automating the Decoder

With the decoder table populated, run the script from the oscilloscope (or a PC if you have a remote connection to
the oscilloscope). The script will generate the comma-delimited file, ExampleTableSerialDecode.txt, which may be
imported into Excel or other spreadsheet software to show the table structure.

Example spreadsheet after importing ExampleTableSerialDecode.txt.

The first two rows of the imported file will show the total number of rows and columns in the table, in this example 8
rows and 34 columns. This indicates the range of your

RowA

and

ColA

keys.

The third row of the imported file will replicate the column headers of the Result Table (0), with individual records
(frames, messages, etc., depending on how you have "packetized" the decoding) appearing in subsequent rows (1-

n

).

Counting from 0 at the far left (Row Index Number), find the column of the data you wish to access. That will be the

ColA

key in your script.

Note: Do not confuse the number/letter of the cells in the imported file with the rows/columns of the Result
Table.

Hidden columns (whether hidden by you or the software) must still be counted, so, in the example above, PRIO is
column 3, making ID column 4, and so forth. So, if you wished to access the ID of record 6, the first argument of your
query would be: (6,4)

Within each column, Simple Cells contain a single value that appears at the specified location in the table. In the
above example, columns 0 through 2 are Simple Cells. Simple Cell VBS access syntax is:

vbs? 'return=app.SerialDecode.Decode1.out.Result.cellvalue(

RowA

,

ColA

)'

However, many cells of the Result Table are the Table Cell type, nested tables that may contain multiple "B" columns
and always three "B" rows that, when coupled with the column key, each return a different component of the
measurement: (0,

ColB

) = MeasuredValue, (1,

ColB

)= StartTime, (2,

ColB

) = StopTime. These cells can be identified by

the list of semi-colon delimited values within them. The first three values in the list are Col0, the second three values
are Col1, and so forth.

To access Table Cells, the (

RowB

,

ColB

) argument is sent in a second parenthesis, following the A "locators":

vbs? 'return=app.SerialDecode.Decode1.out.Result.cellvalue(

RowA

,

ColA

)(

RowB

,

ColB

)'

Although the image above does now show it, the ID and IDE columns each contain a single-column, three-row
nested table. To read the

values

from such columns, you would add the argument (0,0) following your "locators":

(

RowA

,4),(0,0) and (

RowA

,6),(0,0) respectively.

Reading the Data column (

RowA

,12) is more complicated, because it contains a

multi-column,

three-row nested

table, as indicated by the longer list of values. To access the full Data column value for each record, all

ColB

s must

be called by your script.

For example, if these were your decoder results:

31

Summary of Contents for USB-PD TDMP

Page 1: ...USB PD TDMP Trigger Decode Measure Graph and Physical Layer Tests...

Page 2: ...le or unauthorized duplication of Teledyne LeCroy publications is strictly prohibited Teledyne LeCroy is a trademark of Teledyne LeCroy Inc Inc Other product or brand names are trademarks or requested...

Page 3: ...Requirements 19 Restrictions 19 USB PD Trigger Setup 19 Linking Trigger and Decoder 21 Using the Decoder with the Trigger 21 Saving Trigger Data 22 Measure Graph 23 Serial Data Measurements 23 Graphin...

Page 4: ...n is installed Only features specific to this product are explained in this manual While some images may not exactly match what is on your oscilloscope display or may show an example taken from anothe...

Page 5: ...or a range of matching data The TDMP option adds a set of measurements designed for serial data analysis as well as physical layer tests defined by the standard The physical layer tests are based on...

Page 6: ...ding After determining individual data bit values another algorithm performs a decoding of the serial data message after separation of the underlying data bits into logical groups specific to the prot...

Page 7: ...ng process provided the basic signal characteristics do not change Decoder Set Up Use the Decode Setup dialog and its protocol related subdialogs to configure decoders Each decoder can use different p...

Page 8: ...Description showing the symbolic decoding of the hexadecimal data Select if you wish to Show 4b Symbols Select PS_RDY_LEVEL if you wish to measure VBUS PS_RDY If you check this be sure to specify the...

Page 9: ...e decoder to make the VBUS PS_RDY measurement 1 Probe CC using one channel and VBUS using a second channel In this example CC is on C1and VBUS is on C2 which are entered in the corresponding fields on...

Page 10: ...to that below For each instance of PS_RDY decoded on the CC1 CC2 channel the measured voltage on the VBUS channel is recorded in the PS_RDY_LEVEL column of the decoder result table The VBUS PS_RDY vol...

Page 11: ...at there are a number of error frames make sure that Level is set to a reasonable value The optional Hysteresis setting imposes a limit above and below the measurement level that precludes measurement...

Page 12: ...will appear The minimum number of bits required varies from one protocol to another but is usually between 5 and 50 l Poor signal quality Care must be taken when probing high speed serial data signal...

Page 13: ...trace and the length of the acquisition Zooming a portion of the decoded trace by clicking a line in the table will reveal the detailed annotations Annotation Overlay Color 1 Text 2 Packet Navy Blue...

Page 14: ...lumn is colorized to match the input source that resulted in that index Note The interleaved summary table will default to the lowest common decoding e g hexadecimal if both support that but only one...

Page 15: ...l Decode Separate files for each decoder are saved in D Applications protocol The Save Table feature will automatically create tabular data files with each acquisition trigger The file names are autom...

Page 16: ...cimal Object Object type Appears instead of Data when decoding Symbolic Bits Description Symbolic decoding of payload Appears instead of Data when decoding Symbolic CRC Cyclic Redundancy Check hex cod...

Page 17: ...the zoom scale the highlighted area may expand to several rows of the table or fade to indicate that only a part of that Index is shown in the zoom When there are multiple decoders running each can ha...

Page 18: ...con similar to Excel in the header cell and the index numbers will be colorized Example filtered decoder table On summary tables only the Time Protocol and Status columns can be filtered If you apply...

Page 19: ...sed to flag out of tolerance messages messages outside the user defined bitrate tolerance by colorizing in red the Bitrate shown in the table Exporting Result Table Data You can manually export the de...

Page 20: ...that column If you do not enter a Value Search goes to the beginning of the next data element of that type found in the acquisition l Enter a Left Right Pad the percentage of horizontal division aroun...

Page 21: ...st segment trigger to the beginning of the sample segment Otherwise the results are the same as for other types of acquisitions and can be zoomed filtered searched or used to navigate When a Sequence...

Page 22: ...each using different data or clock input sources This approach is statistically interesting because multi channel acquisitions occur in parallel The processing is serialized but the decoding of each...

Page 23: ...hout using the serial trigger Requirements Serial trigger options require the appropriate hardware please consult support an installed option key and the latest firmware release Restrictions The seria...

Page 24: ...the oscilloscope will trigger on finding the next matching occurrence in the data stream For Control Message triggers click inside the field to display the full set of available message types For Err...

Page 25: ...s such as TriggerScan to inspect the waveform for events of interest Touch and drag the paused trace to show time pre or post trigger Optimize the Grid The initial decoding may be very compressed and...

Page 26: ...he waveform at each trigger point These files can be recalled to the oscilloscope for later viewing Choose File Save Waveform and an Auto Save setting of Wrap overwrite when drive full or Fill stop wh...

Page 27: ...ied set up of a Message to Value parameter and graph Performs a Digital to Analog Conversion DAC of the embedded digital data and dis plays it as an analog waveform Message to Value ID Value Extracts...

Page 28: ...values and compare them to a corresponding analog signal or to observe changes in timing A parameter tracked over a long acquisition could provide information about the modulation of the parameter To...

Page 29: ...Binary or Hex adecimal format 3 If the field appears select the Bits used to define the frame ID This will change the ID Value field length 4 Using the ID Condition and ID Value controls create a con...

Page 30: ...to define the event in the Analog waveform that is to be used as the reference for the measurement As with the decoder Level may be set as a percentage of amplitude default or as an absolute voltage l...

Page 31: ...ts 3 To gate measurements to only the zoomed areas e g a single index of the decoder table check Apply Only to Zoom 4 Open the Measure dialog select the test number USB PD n test Category and Measurem...

Page 32: ...can occur when the bitrate is extremely close to a submultiple of the sampling rate such that the sampling of the waveform does not move throughout the entire unit interval Gaps can also occur when u...

Page 33: ...the eye is Tested At Transmitter or Receiver 5 Check Mask Hit to add the number of mask failures to the standard Measure table not the PHY measurement table To show where mask failures occur on the ey...

Page 34: ...Decode Decoden out Result cellvalue RowA ColA RowB ColB Where n 1 to 4 RowA 0 to K 0 Row Index Number ColA 0 to L 0 Column Header RowB 0 MeasuredValue 1 StartTime 2 StopTime ColB 0 to M Complicating t...

Page 35: ...of your query would be 6 4 Within each column Simple Cells contain a single value that appears at the specified location in the table In the above example columns 0 through 2 are Simple Cells Simple C...

Page 36: ...Col 12 vbs return app SerialDecode Decode1 out Result cellvalue 6 12 1 0 2 62461 E 03 StartTime of Data in ColB0 of Row 6 Col 12 hidden vbs return app SerialDecode Decode1 out Result cellvalue 6 12 2...

Page 37: ...s are available to help you get the most out of your Teledyne LeCroy products Visit teledynelecroy com support techlib The Datasheet published on the product page contains the detailed product specifi...

Page 38: ......

Reviews: