The Tektronix wfm file format was designed for the internal save and restore of
waveform data and the associated display. As a consequence, more parameters
are saved than are required to transfer and create an external Time vs. Voltage
value list. The format will handle XY waveform data, XYT data, and pixel maps,
such as the waveform database. FastFrame waveforms, multiple acquisitions with
individual timestamps, can also be represented.
This document applies to the following instrument families: TDS5000/B,
TDS6000/B/C, TDS/CSA7000/B, DPO7000, DPO70000 and DSA70000 Series.
The Tektronix wfm file format is not intended for you to use to create a
waveform for reintroduction into the instrument.
The Tektronix wfm file format is partially based on the SCPI Data Interchange
Format. If you are familiar with that standard, some of the variable names and
usage will be familiar.
Waveforms are described by X or Y dimension data and Curve data. Curve data
for an acquired waveform is in integer format and includes some extra points at
the beginning and ending of the data that are normally not seen on screen. These
extra points are real acquired data points and are used for display interpolation
purposes. There are normally 32 extra points; 16 PreCharge data points and 16
PostCharge data points.
The dimensions can be explicit or implicit. Normal YT (Voltage vs. Time)
waveforms have an implicit dimension for time and an explicit dimension for
Voltage.
For implicit dimensions, the real value, in this case time, is computed by
(Waveform point index * dimensionScale + dimensionOffset).
For the explicit dimension, the real value, in this case voltage, is computed by
(curveBufferPoint * dimensionScale + dimensionOffset).
Note: For Fast Acquisition or Waveform Database waveforms there are two
implicit dimensions and one explicit dimension. Implicit dimension 1 is time and
implicit dimension 2 is Volts. Explicit dimension 1 is number of hits at a specific
Time and Voltage coordinate.
For all other Time-Voltage waveforms implicit dimension 1 is time and explicit
dimension 2 is Voltage.
To download software that will convert the waveform into different formats, go
to: http://www.tek.com/site/sw/search/
CONVERTER” software in the Keyword category.
and search for “WFM TO ASCII
1
Performance Oscilloscope Reference File Format
File Layout Overview
The following provides an overview of the waveform header file layout.
Waveform static file information [78 bytes]
Waveform header
Reference file data [88 bytes]
Explicit Dimension 1 (Usually defines voltage axis)
[Description info] [100 bytes]
[userView data] [56 bytes]
Explicit Dimension 2
[Description info] [100 bytes]
[userView data] [56 bytes]
Implicit Dimension 1 (Usually defines time axis)
[Description info] [76 bytes]
[userView data] [56 bytes]
Implicit Dimension 2
[Description info] [76 bytes]
[userView data] [56 bytes]
TimeBase Info1 [12 bytes]
TimeBase Info2 [12 bytes]
WfmUpdateSpec [24 bytes] (Defines 1
of a waveform set)
WfmCurveObject [30 bytes] (Defines 1
of a waveform set)
FastFrame Frames {0 to N-1 where N = number of frames}
N-1 WfmUpdateSpecs [24 * (N-1) bytes]
N-1 WfmCurveObjects [30 * (N-1) bytes]
CurveBuffer
{Variable length, this contains all curve data in the specified format}
WfmFileCheckSum
{8 bytes}
st
waveform
st
waveform
2
001-1378-03
Internal File Format
Performance Oscilloscope Reference File Format
Listed below is the current (April 2004 - 2006) file format with descriptions.
Offset
Dec [Hex] Size
Waveform static file information
0
[0x000]
2
[0x002]
10
[0x00a]
11
[0x00b]
15
[0x00f]
16
[0x010]
20
[0x014]
24
[0x018]
28
[0x01c]
36
[0x024]
40
[0x028]
72
[0x048]
76
[0x04c]
Waveform
header
78
[0x04e]
82 4 bytes WfmCnt Unsigned long Number of waveforms in the set. FastFrame is a special case in
2 bytes Byte order verification Unsigned short Hex 0xF0F0 (PPC format) or 0x0F0F (Intel). Used to determine
8 bytes
1 byte Num digits in byte
4 bytes Number of bytes to the
1 byte Number of bytes per
4 bytes Byte offset to beginning
4 bytes Horizontal zoom scale
4 bytes Horizontal zoom
8 bytes Vertical zoom scale
4 bytes Vertical zoom position Float Vertical position zoom information.
32 bytes Waveform label Char[32] User defined label for the reference waveform.
4 bytes N (number of
2 bytes Size of the waveform
4 bytes SetType Enum (int) Type of waveform set.
File Field
Versioning number
count
end of file (EOF)
point
2
of curve buffer
factor
position
factor
FastFrames – 1)
header
Field Type Comments/Examples
if bytes read from file need to be swapped before processing
1
Char[8]
Char 0 – 9
Long int Up to 9 digits in length, which allows for a file size of
Char Number of bytes per curve data point. Allows for quick
Long int Allows for positioning of file descriptor for recall of the curve
Long int Horizontal scale zoom information
Float Horizontal position zoom information
Double Vertical scale zoom information.
Unsigned long The number of WfmUpdateSpec and Curve objects that follow.
Unsigned short The size in bytes of the waveform header, which directly follows
The values will correspond to the following characters:
WFM#001
The byte values will be (in hex) 3a 57 46 4d 23 30 30 31
(where 0x303031 == 001).
999,999,999 bytes. The number of bytes from here to the end
of the file.
determination of the size of the actual curve data.
buffer. The number of bytes from the beginning of the file to the
start of the curve buffer.
Not for use.
Not for use.
Not for use.
Not for use.
This number is equal to the number of FastFrames – 1 (for
FastFrame waveform sets)
this field.
0 = Single waveform set
1 = FastFrame set
6
, where 001 is replaced by the actual file version.
001-1378-03
3
Performance Oscilloscope Reference File Format
Offset
Dec [Hex] Size
[0x052] that it describes a waveform set of one waveform with multiple
86
[0x056]
94
[0x05E]
102
[0x066]
106
[0x06a]
110
[0x06e]
114
[0x072]
118
[0x076]
122
[0x07a]
126
[0x07e]
134
[0x086]
8 bytes Acquisition Counter Unsigned long
8 bytes Transaction counter Unsigned long
4 bytes Slot ID Enum (int) An enumeration based upon the number and type of data slots
4 bytes Is static flag Int Used internally to determine if waveform is static (for example,
4 bytes Wfm update
4 bytes Imp dim ref count Unsigned long The number of implicit dimensions for the given waveform.
4 bytes Exp dim ref count Unsigned long The number of explicit dimensions for the waveform set. Vector
4 bytes Data type Enum (int) 0 = WFMDATA_SCALAR_MEAS
8 bytes Gen purpose counter Unsigned long
4 bytes Accumulated waveform
File Field
specification count
count
Field Type Comments/Examples
frames. See the numFrames field described below.
Internal acquisition counter. This is not a time stamp. It is used
long
long
Unsigned long Number of wfm update specifications in the waveform set. The
long
Unsigned long Used by the internal Math system. Represents the number of
to make sure that a set of acquisition waveforms are of the
same acquisition. This counter is the number of acquisitions
since power on. If nil (0), the internal system will match any
waveform with this one.
Not for use.
Internal acquisition translation stamp. This is not a time value. It
is the time of the transaction that this waveform is based upon.
Not for use.
available in a specified product. These values are subject to
change based upon the need of the specified product.
Not for use.
a reference) or live (for examples, a channel or mat).
Not for use.
waveform update spec holds data, which changes on each
acquisition update. FastFrame waveform sets have multiple
update specs (for example, each frame has unique timestamps
and such).
Vector Lists (vector YT and XY) waveform sets have one
implicit dimension; Pixel Maps (YT, XY, and XYZ) waveform
sets have one explicit dimension; and Scalars (measurements
and constants) have zero implicit dimensions.
Lists (vector YT, XY, and XYZ) waveforms have one (YT) or
two (XY) explicit dimension(s); Pixel Maps (YT, XY, and XYZ)
waveform sets have two implicit dimensions; and Scalars
(measurements and constants) have zero explicit dimensions.
Implicit dimension axis values are determined by a value plus
index times increment. Explicit dimension axis values are
explicitly defined for each data point.
The scale of the waveform data for the given dimension. This
value is used to interpret the curve data for the given axis. For
the vertical (explicit) dimension, scale is used to calculate
voltage.
Voltage = (wfmCurveData*Scale)+offset.
The scale is expressed as volts per LSB of the 16 or 32 bit
digitizer values (or 1.0 for the float digitizer values or Math
waveforms).
Note: For the horizontal implicit dimension, scale is used to
specify the sample interval (i.e.: time per point).
The distance in units from the dimensions’ zero value to the
true zero value. This is the ground level offset for the explicit
dimension. For the implicit dimension, offset is the trigger
position.
The size of the explicit dimension in terms of the base storage
value. For the explicit dimension, it is the size of the storage
element (e.g. 252 for 8 bit values and 65532 for 16 bit integers).
Note: For the implicit dimension, size is the record length
(including pre and post charge data) and is expressed in data
points, not bytes of storage.
Precharge points are usually 16 points and postcharge points
are 16. These are used for internal display interpolation.
Note: Record length computations are made using this field
and the curve byte offsets.
A character string, NULL, terminated, which represents the
units for the dimension.
001-1378-03
5
Loading...
+ 9 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.