WBFORMAT.TXT describes the format of the Cluster WBD LEVEL1 data files.
The current form of this document may be found online at:

  http://www-pw.physics.uiowa.edu/custer/dvd/WBFORMAT.TXT


---------------------------- Overview of format -----------------------------

                         SFDU record as received from DSN
                         with bytes 0-2, 94, and 96-103
                         modified.
        Byte 0          |-------------------------------|Bytes 0-2 used to
                        |   SFDU LABEL                  |store record type and
                        |                               |file version info
                        |-------------------------------|
                        |   HEADER AGGREGATION          |
                        |    CHDP LABEL                 |
                        |                               |
                        |-------------------------------|
                        |   PRIMARY HEADER              |
                        |                               |
                        |                               |
                        |-------------------------------|
                        |   SECONDARY HEADER            |
                        |                               |
                        |                               |
        Byte 96         |-------------------------------| Bytes 96-103 are used
                        |   Uncorrected ERT at CTIB     | for storage of ERT at
                        |-------------------------------| the CTIB reset flag
        Byte 104        |  First 1119 bytes of 1279-    |
                        |  byte transfer frame for      | See byte 104 for
                        |  WBD instrument sent from S/C | overview of transfer
                        |  to DSN stations (160 bytes   | frame
                        |  of Reed Solomon code block   |
                        |  not included)                |
                        |-------------------------------|
                        This is the end of the SFDU record
                        with above noted modifications in
                        Bytes 0-2, 94, and 96-103.  The next
                        blocks are generated by the LEVEL1
                        processing software.
        Byte 1224       |-------------------------------|
                        | UT_OBT and UT_GRT values:     |
                        | Time of measurement for the   |
                        | data, using two different     |
                        | calculation methods           |
                        |-------------------------------|
        Byte 1248       | Various reference values used |
                        | in calculating UT             |
                        |-------------------------------|
        Byte 1262       | Instrument Status             |
                        |-------------------------------|
        Byte 1275       | Fraction of milliseconds      |
                        | component for UT_OBT          |
                        |-------------------------------|

        Real time telemetry data (TDA-8 Mode) contain either VC5 or
        VC7 transfer frames.  The VC5 records contain the WBD data
        while the VC7 hold fill data, but will contain the On-Board
        time fields and usually also the CTIB flag, all of which are
        used when computing UT.

        Burst mode (TDA-5.2 or BM2) records may contain either duty
        cycled data or filtered data from the solid state recorder.
        Duty cycled data are received when the spacecraft sends one
        out of every three normal data records.  This type of data
        is not continuous.  The time between these records will be
        3*39.718628 = 119.155884 milliseconds when duty cycling is
        100%.  Times between records will vary when duty cycling is
        less than 100%.  When not duty cycling, the data are filtered
        (by WEC-DWP, not by WBD) so that they contain only 1/3 the
        bandwidth but still maintain continuity.  Within the LEVEL1
        files, three filtered data records have been combined into one,
        so that each data set contains 1090 values.  (Prior to
        decommutation by TED, the ESA records contain only 1090/3 ~ 394
        values each.)  In the WBD LEVEL1 file, the start time of each
        filtered data set will be the start time of the first snapshot
        used to make the record, so that the time between records will
        also be 119.155884 milliseconds.

        The data record contains Universal Times derived from two
        sources.  One source is from the Earth Received Time (ERT)
        placed in the record by DSN.  This time, called UT_GRT, has
        been corrected for delays in the system and propagation delays
        between the spacecraft and the ground antenna.  Burst mode
        data records do not contain this time.

        The other time is derived from the On-Board Time counter and
        the calibration data supplied by ESA.  This time should be
        the one closest to the values used by the other instruments.
        This time is called UT_OBT.  The difference between the UT_GRT
        and the UT_OBT, when both are available, is supposed to be at
        most 2 milliseconds, but occasionally can be up to 4
        milliseconds.

-----------------------------------------------------------------------------

        The SFDU header information is described below in the LEVEL1 WBD
        Format section, for use in the interferometry studies, and in
        case data quality becomes an issue.

        The following JPL documents were used to determine SFDU formats:

        For data acquired prior to Dec. 27, 2002:

        TLM-3-24        DSMS Document 820-13 Module TLM-3-24
                        Deep Space Mission System External Interface
                        Specification-Telemetry SFDU Interface for
                        ISTP/Cluster

        For data acquired after Oct. 13, 2003:

        TLM-3-29        DSMS Document 820-13 Module TLM-3-29
                        Deep Space Mission System External Interface
                        Specification-Telemetry SFDU Interface for
                        ISTP/Cluster

        For data acquired in the transition period Dec. 27, 2002 to Oct.
        13, 2003, both TLM-3-24 and TLM-3-29 were used depending on which
        antenna was in operation.  In all cases, refer to Byte 5, Class
        Identifier, to determine which format was used for any given raw
        data file (see explanation of Byte 5 below).

        Note that the TLM-3-29 format is 4 bytes shorter than that of
        TLM-3-24.  To compensate, files using the TLM-3-29 format have
        had their SFDU contents shifted slightly from their original
        positions during LEVEL1 processing.  This allows the same LEVEL1
        format (as specified below) to be used for all files.

        When differences between formats TLM-3-24 and TLM-3-29 exist, the
        specific bytes pertaining to the differences will be noted below,
        and will be labelled with "(3-24)" or "(3-29)".

-----------------------------------------------------------------------------

------------------------------- LEVEL1 WBD Format ---------------------------

Bytes           Description

0-1             ASCII "55" (hexadecimal 3535) for DSN VC5 records.
                ASCII "77" (hexadecimal 3737) for DSN VC7 records.
                ASCII "5" in byte 0 and a zero in byte 1 (hexadecimal
                3500) for Burst mode.

2-95            Bytes 2-95 of the JPL Telemetry SFDU, unmodified except
                byte 94, for DSN mode.  In burst mode bytes 2-65 contain
                the burst mode header information.  (See Burst Mode
                section below.)

The SFDU header in DSN mode contains the following pertinent information:

                Telemetry SFDU Label (bytes 2-19):

2               LEVEL1 File Version or ASCII "P" for "NJPL" (NASA/JPL)
                NOTE:  If byte 2 is not the ASCII character "P" (equivalent
                integer value of 80), then the integer value of this byte
                impacts how bytes 94, 1266, and 1274 are used.  See bytes
                94, 1266, and 1274.

3               ASCII "L" for "NJPL" (NASA/JPL)

4               Version Identifier:
                ASCII "2" (equivalent integer value of 50) -> Length Attribute
                in bytes 12-19 is formatted as a binary unsigned integer

5               Class Identifier:
   (3-24)       ASCII "Z" (equivalent integer value of 90)
   (3-29)       ASCII "I" (equivalent integer value of 73) -> Indicates that
                this SFDU is an application data object

6-7             ASCII "00"

8-11            Data Description Identifier:
   (3-24)       ASCII "0001"
   (3-29)       Integer value of 9999

12-19           Length Attribute:
                Integer that is the sum of the total lengths
                (number of bytes) of the aggregation CHDO and the telemetry
                data CHDO.

                Aggregation CHDO Label (bytes 20-23):

20-21           Type Attribute:
                Integer value of 1

22-23           Length Attribute:
   (3-24)       Integer value of 76.
   (3-29)       Integer that is the length (number of bytes) of
                the aggregation CHDO which is the sum of the lengths of the
                primary CHDO and secondary CHDO which is 72.

                Primary CHDO  (bytes 24-31):

24-25           Type Attribute:
                Integer value of 2 indicating that this CHDO is
                a primary CHDO.

26-27           Length Attribute:
                Integer value of 4 indicating remaining length of primary
                CHDO.

28              Major Data Class:
                Integer value of 1 indicating that this SFDU contains
                spacecraft telemetry.

29              Minor Data Class (0-2): See following tables.

------------------------------- 3-24 Format ---------------------------------
CLASS   DESCRIPTION
  0     Raw Data Bits are blocked arbitrarily
  1     Frame Alignment.  An attempt is made to begin each block on a
        telemetry frame boundary.
  2     Decoding.  An attempt is made to decode the outer code (RS) in each
        telemetry frame.
-----------------------------------------------------------------------------
------------------------------- 3-29 Format ---------------------------------
CLASS   FRAME SYNCHRONIZER CONFIGURATION   REED-SOLOMON DECODER CONFIGURATION
  0                 Disabled                            Disabled
  1                 Enabled                             Disabled
  2                 Enabled                             Enabled
-----------------------------------------------------------------------------

30              Mission Identifier (0-255):
   (3-24)       Integer value of 0 for ISTP Cluster.
   (3-29)       Used only for missions supported by AMMOS.  Missions not
                supported by AMMOS, the value of this field is 254.

31              Format Code:
                Integer value of 0 indicates this is a DSS-formatted
                SFDU

                Secondary CHDO (bytes 32-95):

32-33           Type Attribute:
   (3-24)       Integer value of 70 indicates this CHDO is a telemetry
                secondary CHDO.
   (3-29)       Integer value of 71 indicates this CHDO is a telemetry
                secondary CHDO.

34-35           Length Attribute:
   (3-24)       Integer value of 64 indicates remaining length of
                secondary CHDO.
   (3-29)       Integer value of 60 indicates remaining length of
                secondary CHDO.

36              Originator Identifier:
                Integer value of 48 indicates the SFDU originated within
                DSN.

37              Last Modifier Identifier:
                Integer value of 48 indicates this SFDU was last modified
                by DSN.

38              Spacecraft Identifier

39              Data Source (DSN Antenna/Facility Identifier):
                For example, an integer value of 15 would indicate the
                data were received by DSS-15 at Goldstone.  The Goldstone
                complex consists of antennas 14, 15, 24, 26, and 27; the
                Canberra complex of 34, 43, 45, 46; and the Madrid complex
                of 54, 63, 65, 66.

40-41           Flags:  See following tables.

---------------------------------- 3-24 Format ------------------------------
Byte    Bit     Description
 40     7       0 if ERT is valid or 1 if ERT is known to be invalid
        6-0     Reserved
 41     7-0     Reserved
-----------------------------------------------------------------------------
---------------------------------- 3-29 Format ------------------------------
Byte    Bit     Description
 40     7       0 if ERT is valid or 1 if ERT is known to be invalid
        6       Reserved
        5       0 if ERT should be ignored or 1 if ERT is valid
        4       0 if ERT refers to trailing edge of last received
                telemetry bit in SFDU or 1 if ERT refers to leading
                edge of first telemetry bit in SFDU
        3-0     Reserved
 41     7       0 if diagnostic mode is disabled or 1 if diagnostic
                mode is enabled
        6       0 if SNR (bytes 76-79) is estimated in the symbol
                domain or 1 if SNR is estimated in the bit domain
        5-0     Reserved
-----------------------------------------------------------------------------

42-49           Earth Received Time (ERT)
                Format: Bytes 42-43 Days since Jan. 1, 1958
                        Bytes 44-47 Milliseconds of day
                        Bytes 48-49 Microseconds of MS

50-53           Record Sequence number (should be 1 to 2**32 - 1).
                Caveat:  These numbers will probably not be
                sequential in places where data from one DSN file
                has been joined with data from another, or across
                LEVEL1 file boundaries.  There can be discontinuous
                jumps in value, either forward or backward, in these
                places.

54              Acquisition BET (bit error tolerance):
                Integer value of 0-15 indicating number of allowed
                bit errors in the attached sync marker during search
                and verify modes.

55              Maintenance BET:
                Integer value of 0-15 indicating number of allowed
                bit errors in the attached sync marker during lock
                and flywheel modes.

56              Verify Count (0-15):
                Number of within-tolerance telemetry frames required,
                during verify mode, to transition to lock mode.

57              Flywheel Count (0-15):
                Number of out-of-tolerance telemetry frames required,
                during flywheel mode, to transition to search mode.

58-59           Number of Received Telemetry Bits:
                Indicates number of received telemetry bits contained
                in telemetry data CHDO.  If number is less than length
                of telemetry data CHDO, then unused bits appear at the
                end of the field and should be ignored.

60              Frame sync mode flags: See following table.
-----------------------------------------------------------------------------
Bit     Description if bit = 1
 7      Frame synchronizer is in bypass mode
 6      Frame synchronizer is in search mode
 5      Frame synchronizer is in verify mode
 4      Frame synchronizer is in lock mode
 3      Frame synchronizer is in flywheel mode
 2      Automatic polarity correction (APC) is enabled
 1      Reserved
 0      Operator forced resynchronization
-----------------------------------------------------------------------------

61              Sync Status (bits 0-4): See following table.
-----------------------------------------------------------------------------
Bit     Description
4-1     Reserved
0       Data Polarity flag.  0 indicates the true sync marker is detected.
        1 indicates complemented sync marker is detected, and if APC is
        enabled (see byte 60), the frame synchronizer inverts all bits in
        the frame.  Ignore this bit if frame synchronizer is in bypass or
        search mode.
-----------------------------------------------------------------------------

61              Bit slip status code (bits 5-7):
                A non zero code indicates telemetry data CHDO contains
                a telemetry frame that is longer or shorter than the
                nominal length.  See following tables.

---------------------------------- 3-24 Format ------------------------------
Code    Description
 010    Frame is two bits shorter than nominal frame
 001    Frame is one bit shorter than nominal frame
 000    Frame equals a nominal frame in length
 101    Frame is one bit longer than nominal frame
 110    Frame is two bits longer than nominal frame
-----------------------------------------------------------------------------
---------------------------------- 3-29 Format ------------------------------
TCA* Code    TLP* Code    Description
   011          101       Frame is three bits shorter than nominal frame
   010          110       Frame is two bits shorter than nominal frame
   011          111       Frame is one bit shorter than nominal frame
   000          000       Frame equals a nominal frame in length
   111          001       Frame is one bit longer than nominal frame
   110          010       Frame is two bits longer than nominal frame
   101          011       Frame is three bits longer than nominal frame
-----------------------------------------------------------------------------
* TCA/TLP is provided in bytes 88 and 89 (Bit slip status code should be
ignored if frame synchronizer is in bypass or search mode).

62              Reed-Solomon status:
                0 No Reed Solomon checking was done
                1 Reed Solomon was done no errors
                2 Reed Solomon was done and errors were corrected
                3 Reed Solomon was done and errors were not fixed
                * Ingore if frame synchronizer is in bypass or
                search mode.

63              Reed-Solomon symbol error count (0-80):
                Number of corrected Reed-Solomon symbol errors in this
                frame.  This field is valid if byte 62 is 1 or 2 and
                if the frame synchronizer is in bypass or search mode
                this byte should be ignored.

64              Sync bit errors:
                Number of bit errors in attached sync marker detected by
                the frame synchronizer.  This byte should be ignored if
                the frame synchronizer is in bypass or search mode.  This
                value cannot exceed the acquisition bit tolerance (byte
                54).

65              Frequency band of the receiver:
                ASCII "S", "X", or "K" indicate S-band, X-band, or Ka-band.

66-69           Measured bit rate of received telemetry data (bits/sec):
                Accuracy of 0.1 bits/second; 32-bit floating point format
		described below:

-----------------------------------------------------------------------------

        IEEE Standard for Binary Floating-Point Arithmetic
        (ANSI/IEEE Std 754-1985) q.v.
        Single precision 32-bit floating point format

        BIT
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        |31|30|29|28|27|26|25|24|23|22|21|20|19|18|17|16|
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        | S| EXPONENT e            | FRACTION f
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
        |15|14|13|12|11|10| 9| 8| 7| 6| 5| 4| 3| 2| 1| 0|
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
          FRACTION (continued)                          |
        +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+

        S        - 1-bit Sign Field: 0 positive, 1 negative
        EXPONENT - 8-bit Exponent Field biased 127 (2^8 - 1)
        FRACTION - 23-bit Fraction of the significand

        For normalized numbers, the most common, the value of a number is:

        v = s * 2^(e-127) * m

	where

        s = +1 when the sign bit S is 0 or -1 when the sign bit is 1
        e = an unsigned integer in the range 1 through 126
        m = 1.f in binary or ( 1 + f / (2^23) )

        Note that there are a large number of special cases with numbers
        very close to zero, positive and negative zeroes, positive and
        negative infinities, and special NaN (not a number) values.
        Consult the cited reference for details.

        Most platforms use IEEE floats, so no conversion is needed on
        high-byte-first (big endian) platforms, like most RISC UNIX systems,
        and you can simply reverse the order of the bytes for low-byte-first
        (little endian) platforms, like most Intel processor systems.

-----------------------------------------------------------------------------

70-71           Reed-Solomon Symbol Error Count:
   (3-24)       Number of Reed-Solomon symbol errors by frame (integer)
   (3-29)       Reserved

72-75           System Noise Temperature (Kelvins):
                Accuracy of 0.1 Kelvin; 32-bit floating point format (see
                bytes 66-69).

76-79           Estimated signal-to-noise ratio (dB) in symbol domain (prior
                to convolution decoding) or bit domain (post convolution
                decoding).  32-bit floating point format (see bytes 66-69).

80-83           Receiver Signal Level (dBm):
                32-bit floating point format (see bytes 66-69).

84
   (3-24)       Antennas in Use: See following table.
-----------------------------------------------------------------------------
Bit     Description if bit = 1
 7      Reserved
 6      DSS 27 used.
 5      DSS 24, 25, 26, 34, or 54 used.
 4      DSS 14, 43, or 63 used.
 3      Reserved
 2      DSS 15, 45, or 65 used.
 1      DSS 12, 42, or 61 used.
 0      DSS 16, 46, or 66 used.
-----------------------------------------------------------------------------
   (3-29)       Virtual Stream ID

85              Reserved

86-87
   (3-24)       Master Antenna & Master Receiver Numbers:
                Byte 86 is the same as byte 84 except that one and only
                one bit (corresponding to the Master Antenna) will be set.
                Byte 87 shows the Master Receiver used.  See following table.
-----------------------------------------------------------------------------
Bit     Description if bit = 1
 7      Receiver #8 used.
 6      Receiver #7 used.
 5      Receiver #6 used.
 4      Receiver #5 used.
 3      Receiver #4 used.
 2      Receiver #3 used.
 1      Receiver #2 used.
 0      Receiver #1 used.
-----------------------------------------------------------------------------
   (3-29)       Receiver ID (unsigned integer)

88
   (3-24)       DTM Group Number (unsigned integer)

89              TLM Channel Number (unsigned integer)
   (3-24)

88-89
   (3-29)       Telemetry Processor ID

90-91           Telemetry Lock Status: See following table.
-----------------------------------------------------------------------------
Byte    Bit     Description                     Possible Values
 90     7-6     Symbol synchronization          0 = not in use or lock
        5-4     Subcarrier demodulation             status unknown
        3-2     Array                           1 = invalid value
        1-0     Carrier demodulation            2 = in lock
 91     7-6     Reserved                        3 = out of lock
        5-4     Reed-Solomon decoding
        3-2     Frame synchronization
        1-0     Convolution decoding
-----------------------------------------------------------------------------

92-93           Telemetry Software ID:
                Identifies telemetry software version in use.  (ASCII)

94              Least significant digit of UT_OBT Microsecond (as derived
                from On-Board time counter).

                The number of microseconds in the UT_OBT Second is given by:

                UT_OBT Microseconds = (integer in bytes 1246-1247) * 1000
                                       + (integer value in byte 1275) * 10
                                       + integer value in byte 94

                NOTE: Byte 94 is used only if byte 2 has an integer value of
                      2 or greater.  If otherwise, then use the above formula
                      as if byte 94 had a value of zero.

95              Reserved

                Telemetry Data CHDO: (bytes 96-1223)

96-103          ERT (Earth Received Time) corresponding to
                current CTIB Flag.  See bytes 1224-1231 for format.

-------------------------------- Burst Mode ---------------------------------

For burst mode data, most of the SFDU header byte locations will be used for
burst mode processing information.  Below is the format for this information,
as provided by the WEC-DWP team:

2               Software Version (Ted Decommutation software)
3               Software Revision (Ted)
4               Software Patch (Ted)
5               Software User Patch (Ted)
6-7             Spacecraft ID
8-9             Ground Station ID
10-11           Source Instrument
12-13           Diagnostics Word
14-15           Length of Science Data
16-17           SCE_year - 1900

18-19           SCE_month

20-21           SCE_day_of_month

22-23           SCE_hour

24-25           SCE_minute

26-27           SCE_second

28-29           SCE_millisecond

30-31           SCE_usec

36              Gain Index (multipy by 5 to obtain gain)

37              EW4PRCTL (0 if duty cycling,
                          1 if filtering)

38              EW4VMON0  (WBD Voltage Monitor)

39              EW4VTMON  (WBD Temperature Monitor)

40              EW4WBDHK  if 1, WBD data is via DWP
                and is in burst mode; if 0 then the
                HK bytes assigned to gain contain
                Whisper information

41              EW4STSCN (WBD status count)

42-57           8 sets of Gain indicators from WEC
                        Housekeeping, 2 bytes each

58-59           WBD STAT1
                (STAT1 & 0030) >> 4 indicates
                conversion frequency:
                0       0 kHz
                1       125 kHz
                2       250 kHz
                3       500 kHz

60-61           WBD STAT0

62-63           WBD STAT2
                (STAT2 & 0003) indicates antenna:
                0       Ey
                1       Bx
                2       By
                3       Ez
                (STAT2 & 001C) >> 2 indicates Frequency
                Mode 0-7

64-65           EW5SSOFF

                The remaining bytes (64-103) are filled with zeroes.

-----------------------------------------------------------------------------

                Cluster Telemetry Transfer Frame (bytes 104-1222):

------------------------- Overview of Transfer Frame ------------------------
        Byte 0          |-------------------------------|
                        |   ESA SYNC MARKER             |
                        |                               |
                        |-------------------------------|
        Byte 4          |   PRIMARY HEADER              |
                        |                               |
                        |-------------------------------|
        Byte 10         |   SECONDARY HEADER            |
                        |                               |
                        |-------------------------------|
        Byte 14         |   DATA FIELD                  |
                        |   (6 WBD sync/status bytes +  |
                        |   1090 data bytes)            |
                        |-------------------------------|
        Byte 1110       |   ON BOARD TIME COUNTER       |
                        |                               |
                        |-------------------------------|
        Byte 1117       |   RFB                         |
                        |                               |
                        |-------------------------------|
        Byte 1118       |   CAB                         |
                        |                               |
                        |-------------------------------|
        Byte 1119       |   REED-SOLOMON CODE BLOCK     |
                        |                               |
                        |-------------------------------|
                Bytes 104 to 1222 in the LEVEL1 files are bytes 0 to
                1118 of the transfer frame as illustrated above and
                sent by the spacecraft; i.e., the transfer frame
                minus the Reed-Solomon code block.  With the removal
                of the Reed-Solomon code block a time quality flag has
                been added and is byte 1223 of the LEVEL1 file.
-----------------------------------------------------------------------------

                Transfer Frame header (bytes 104-117):

104-107         ESA Sync Marker
                (Hex: 1A CF FC 1D)

                Primary Header (bytes 108-113):

108-109         Frame Identification
                NOTE:  In DSN data, the record type may be found from
                the low order 3 bits of (byte 109)/2 (i.e. bits 1-3 of byte,
                109), which will give the Virtual Channel (VC) ID (should
                only have a value of 5 or 7).

110             Master Channel Frame Counter
                NOTE:  This counter keeps a running count of the total
                virtual channel frames (VC5 and VC7 combined).

111             Virtual Channel Frame Counter (32 bytes)
                NOTE:  The highest order byte for this counter is in
                byte 117, followed by bytes 116, 115, and 111.  If the
                current frame has a VC ID of 5, then this counter supplies
                the count of this VC5 frame.  If the current frame has a
                VC ID of 7, then this counter supplies the count of this
                VC7 frame.

112-113         Frame Data/Field Status

                Secondary Header (bytes 114-117):

114             Secondary Header ID

115-117         Virtual Channel Frame Counter (32 bytes)
                NOTE:  See byte 111.

                WBD Data block (bytes 118-1213):

118-123         For DSN data these bytes will contain sync and instrument
                status; for burst mode data these bytes will be all zeros.

                          ---------- Byte number --------------
                          118  119  120     121     122     123
                Frame 00   FA   F3   34  frame#  count2  count1
                Frame 01   FA   F3   34  frame#  count0  stat3
                Frame 10   FA   F3   34  frame#  stat2   stat1
                Frame 11   FA   F3   34  frame#  stat0   stat3

                Four frames (numbered 0-3) comprise a major frame.  It
                takes 1 major frame to get all of the status informa-
                tion.  The time between Major Frames is 158.8745116
                msec.  The time between minor frames depends upon the
                percent of the duty cycle.  See DUTY CYCLE MODE below.
                The Frame value (0-3) is contained in the low order two
                bits of byte 121.

                See Status Word Formats below for details of status
                word encoding.  We have placed the decoded status
                information in bytes 1262-1274.

124-1213        Data Field:  1090 data bytes.

                Trailer block of transfer frame (bytes 1214-1223):

                On Board Time (OBT) Counter (7 bytes):
1214-1217       OBT counter Seconds for this record.
1218-1220       OBT counter Sub-Seconds as a 20 bit integer left justified
                for this record.

1221            RFB (low order bit = 1 => time is good )
1222            CAB Contains the CTIB flag in low order bit.

                NOTE:  Byte 1223 of the DSN record contained the Reed-
                Solomon status and was a part of the trailer block.
                We have modified it as shown below.

1223            Time quality flag:  See following table.
-----------------------------------------------------------------------------
Bit     Description if bit = 1
 7      Raw clock value (bytes 1256-1259) was adjusted
 6      Frequency mode value (byte 1272) was adjusted
 5      Frequency offset value (byte 1269) was adjusted
 4      Antenna value (byte 1268) was adjusted
 3      Second gain value (byte 1274) was adjusted
 2      First gain value (byte 1266) was adjusted
 1      Uncorrected ERT value (bytes 96-103) was not expected
 0      Uncorrected OBT value (bytes 1248-1255) was not expected
-----------------------------------------------------------------------------
An adjusted value does not mean that the value was bad but that the
value computed in the normal manner appeared to be incorrect.

                END OF TRANSFER FRAME
-----------------------------------------------------------------------------

                The following UT_GRT is the UT time of measurement for the
                data, as calculated using the Earth Received Time as its
                basis.  It has been corrected for all delays between when the
                data were acquired at the WBD instrument and the time when
                the data arrived at the ground:

1224-1231       UT_GRT
                Format:  Bytes 1224-1225 Days from start of year 2000
                         Bytes 1226-1229 Milliseconds of day
                         Bytes 1230-1231 Microseconds of MS

                The following UT_OBT is the UT time of measurement for the
                data, as calculated using the On-Board time counter and the
                calibration data supplied by ESA.

1232-1233       UT_OBT Year  (2xxx)
1234-1235       UT_OBT Month of year
1236-1337       UT_OBT Day of month
1238-1239       UT_OBT Day of year
1240-1241       UT_OBT Hour
1242-1243       UT_OBT Minute
1244-1245       UT_OBT Second
1246-1247       UT_OBT Milliseconds (0 - 999)

                The number of microseconds in the UT Second is given by:

                UT_OBT Microseconds = (integer in bytes 1246-1247) * 1000
                                      + (integer value in byte 1275) * 10
                                      + integer value in byte 94

                NOTE: Byte 94 is used only if byte 2 has an integer value of
                      2 or greater.  If otherwise, then use the above formula
                      as if byte 94 had a value of zero.


1248-1255       OBT Counter value corresponding to current CTIB flag (format
                is the same as for bytes 1214-1220).
                NOTE: This is used as the reference time when calculating
                      UT_OBT.  The CTIB flag will be set every 5.152221
                      seconds, when the instrument clock/counter is reset.
                      Thus, this counter value will change every 5.152221
                      seconds.  For UT_GRT, the equivalent reference time is
                      contained in bytes 96-103.

1256-1259       The WBD instrument counter value (WBDClock) for the current
                major frame.  The CTIB flag indicates a reset of this
                counter.

                Sybolically, both the UT_OBT and UT_GRT times are calculated
                as follows:

                    T = reference_time +
                        WBDClock / 1003631.274 (seconds) +
                        minor_frame_number * 39.718628 (milliseconds)

                Note however, that the actual time calculations are more
                complex than this (see the TIMETAGS.TXT file for further
                information).

1260-1261       In DSN mode these bytes contain the number of bits by which
                the LEVEL1 software has shifted the WBD Data block (bytes
                118-1213) within the transfer frame.  In the raw transfer
                frames, the WBD data block is not aligned such that a single
                block is wholly contained within a single transfer frame.
                With this shift, the LEVEL1 software corrects this.  In burst
                mode these bytes contain the processing control, a 2-byte
                integer: 0 => filtered data, 1 => duty cycled data.

                INSTRUMENT STATUS for both DSN and Burst Mode data (bytes
                1262-1274):

                In DSN data, these are determined from bytes 122 and 123.
                In Burst mode this information is obtained from the
                housekeeping data and placed in the record header by
                the Ted decommutation software.

1262            1 = VCXO not locked  0 = VCXO locked
1263            0 = OBDH interface primary  1 = OBDH interface redundant
1264            0 = no cmds 1 = cmds
1265            0 = a/d power off  1 = a/d power on
1266            Gain/Select  (Gain in dB = (byte 1266) * 5)
                NOTE:  If LEVEL1 File Version (byte 2) is 2 or greater, then
                       this gain is that for the current minor frame.  For
                       earlier versions, the usage depends on the duty cycle
                       mode (see byte 1272):
                             100% duty cycle -> gain is for frames 1 and 2 of
                                                the current major frame
                         not 100% duty cycle -> gain is for frames 2 and 3 of
                                                the current major frame
1267            0 = gain auto      1 = gain manual
1268            Antenna select:    0 = Ez  1 = Bx   2 = By    3 = Ey
1269            Frequency offset:  0 = 0 Hz  1 = 125.454 kHz  2 = 250.908 kHz
                                   3 = 501.816 kHz
1270            AGC upper threshold
1271            Instrument ID
                value   Inst.  Spacecraft
                  4      F6        2
                  5      F7        3
                  6      F8        4
                  7      F9        1

1272            Frequency Mode (0-7):  See table of modes & duty cyling
                below.

1273            AGC lower threshold
1274            Gain/Select  (Gain in dB = (byte 1266) * 5)
                NOTE:  If LEVEL1 File Version (byte 2) is 2 or greater, then
                       this gain is that for the current minor frame.  For
                       earlier versions, the usage depends on the duty cycle
                       mode (see byte 1272):
                             100% duty cycle -> gain is for frame 3 of the
                                                current major frame and frame
                                                0 of the *next* major frame
                         not 100% duty cycle -> gain is for frames 0 and 1 of
                                                the *next* major frame

1275            Most significant two digits of fractional UT_OBT milliseconds
                (0-99, hundredths of ms)

                The number of microseconds in the UT_OBT Second is given by:

                UT_OBT Microseconds = (integer in bytes 1246-1247) * 1000
                                       + (integer value in byte 1275) * 10
                                       + integer value in byte 94

                NOTE: Byte 94 is used only if byte 2 has an integer value of
                      2 or greater.  If otherwise, then use the above formula
                      as if byte 94 had a value of zero.

----------------------------- End of LEVEL1 WBD Format ----------------------

NOTE: Unless otherwise noted, all byte values are unsigned integers.

--------------------------------- Instrument Modes --------------------------

There are eight modes that the WBD instrument can be set to use (although
only the first seven are distinct from a user's point of view).  The modes
are differentiated by:

  Bandwidth   - the frequency span of the input bandpass filter.
  Sample Rate - the sampling rate of the instrument.
  Bits/Sample - the number of bits with which each sample is encoded.
  Duty Cycle  - the fraction of time that the instrument is sampling.
  Sample Time - the time spanned by one complete minor frame.

The mode for a data frame is given in byte 1272.  The different modes are:

  Mode  Bandwidth   Sample Rate   Bits/Sample  Duty Cycle  Sample Time (msec)
   0  100Hz-9.5kHz     27.4kHz         8          100%        39.7186279
   1  100Hz-9.5kHz     27.4kHz         8          100%        39.7186279
   2  100Hz-19kHz      54.9kHz         4          100%        39.7186279
   3  100Hz-19kHz      54.9kHz         8           50%        19.85931395
   4  700Hz-77kHz      219.5kHz        8           12.5%       4.96482848
   5  700Hz-77kHz      219.5kHz        1          100%        39.7186279
   6  700Hz-77kHz      219.5kHz        4           25%         9.92965697
   7  700Hz-77kHz      219.5kHz        8           12.5%       4.96482848

Note that these parameters are not all independent.  Some of the parameters,
and their interdependencies, are expanded upon further below.


Duty Cycle Modes:

For some combinations of sample rate and bits/sample, the resulting data
stream, if sampled continuously, would be produced at a rate greater than the
available downlink rate.  In these cases, the instrument instead samples the
incident waveform in a duty cycle mode.  In such modes, high-rate data is
acquired (and saved in an internal WBD buffer) for a fixed sample period, and
simultaneously read out to the downlink module at a lower rate over a longer
interval.  The read-out interval is always two minor frames (2180 data bytes)
in length, so the sample period always begins at the start of every second
minor frame (specifically, at the start of minor frames 0 and 2).  The case
of 50% duty cycling is illustrated below:

       SAMPLE          SAMPLE          SAMPLE          SAMPLE
       PERIOD          PERIOD          PERIOD          PERIOD
      ________        ________        ________        ________
      |   \   \       |   \   \       |   \   \       |   \   \
      |    \    \     |    \    \     |    \    \     |    \    \
      |     \     \   |     \     \   |     \     \   |     \     \
      |      \      \ |      \      \ |      \      \ |      \      \
      |       \       |       \       |       \       |       \
      |-------|-------|-------|-------|-------|-------|-------|-------|
Frame     0       1       2       3       0       1       2       3
       READ_OUT_PERIOD READ_OUT_PERIOD READ_OUT_PERIOD READ_OUT_PERIOD

The length of the sample period is always such that 2048 samples are
acquired.

The timestamps on each minor frame of duty cycled data will clearly not be
regularly spaced.  Frames 0 and 2 will always begin 2*39.718628 milliseconds
apart, but frames 1 and 3 will follow their preceeding frames by the interval
given in the Sample Time column in the instrument mode table above.


Reduced Bits/Sample Modes:

An alternative way to acquire high-rate data, within the constraints of the
available downlink rate, is to reduce the number of bits used to encode each
sample.  In these cases, the samples (either four bits or one bit in length)
are packed into bytes as follows:

  4-bit mode: In each byte, the low order nibble (bits 0-3) contains the
              oldest sample, so the byte should be unpacked from low nibble
              to high.
  1-bit mode: In each byte, the low order bit (bit 0) contains the oldest
              sample, so the byte should be unpacked from the low bit towards
              the high.


Burst Mode:

For burst mode data, the data streams described above are further attenuated
(by WEC-DWP, not by the WBD instrument), in one of two
ways:

  Burst Mode/Duty Cycled - Only every third minor frame is stored on (and
                           later transmitted by) the spacecraft.  This means
                           that when the duty cycle is 100%, only 1 out of
                           every 3 minor frames is recovered, at 50%, only 1
                           out of every 6, at 25% only 1 out of 12, and at
                           12.5% only 1 out of 24 minor frames is recovered.
                           (See Instrument Modes table above.)

  Burst Mode/Filtered    - All frames will be transmitted, but are low pass
                           filtered to one third of the frequency bandwidth.
                           Since each snapshot in this data is 1/3 the usual
                           length of 1090 bytes, data from 3 consecutive
                           frames will be concatenated into one frame by the
                           Ted software.  The 1090 sample frames are always
                           constructed with a fixed relation to the repeating
                           sequence of 6 input packets (sizes of 360, then 5
                           sets of 364 bytes). That is 360+364+364+2 for the
                           first frame, then 362+364+364 for the second.

------------------------------- Status Word Formats -------------------------

The following shows how to decode status bits from bytes 122-123 (of minor
frames 2-3).  The decoded status values are found in bytes 1262 through 1274.

Byte    Bit     Description
stat3   7       VCX0 Lock (1=Not Working; 0=Lock)
        6       OBDH Interface (0=Primary; 1=Redundant)
        5       Command Status (0=No cmds; 1=Cmds received)
        4       A/D Converter Power
        3-0     Gain Level/Select

stat2   7-6     11
        5       Gain Mode (1=Manual; 0=Auto)
        4-1     Gain Level/Select
        0       OBDH Interface (0=Primary; 1=Redundant)

stat1   7-6     01
        5-4     Antenna Select (see byte 1268 above)
        3-2     Frequency Select (see byte 1269  above)
        1-0     Upper AGC Threshold

stat0   7-5     Instrument ID (see byte 1271 above)
        4-2     Output Mode (see byte 1272 above)
        1-0     Lower AGC Threshold

-----------------------------------------------------------------------------
Glossary:

Burst Mode Data  Data stored on the solid state recorder and telemetered
                 non-real-time to the ESA ground station.

CHDO             Compressed Header Data Object.

CTIB             Coincident Transmission Indication Bit:
                 This is a bit in the Transfer Frame, which is set whenever
                 the transmission of that frame is coincident with the
                 resetting of the WBD instrument counter (WBDClock).

DSN              Deep Space Network:
                 The NASA ground station network at which most of the WBD
                 data are received.

ERT              Earth Received Time:
                 This time is put in the SFDU header at the time the data
                 were received by the DSN ground station.

ESA              European Space Agency.

OBT              Spacecraft On Board Time counter, driven by an ultra-stable
                 oscillator.  Time calibration (tcal) files provided by ESA
                 allow for the conversion of counter values into UT times.

SFDU             Standard Formatted Data Unit.

UT_GRT           UT timestamp on data, based on Earth (Ground) Received Time:
                 GRT adjusted time for delays in the system, and all signal
                 propagation effects, so that it is the time when the data
                 were acquired at the WBD instrument, i.e. the time of
                 measurement.

UT_OBT           Timestamp on data, based on the On Board Time:
                 The time calculated using the OBT and the ESA time
                 calibration files.

WEC-DWP          The Ditigal Wave Processor instrument that is part of the
                 Wave Experiment Consortium (WEC) on Cluster.

-----------------------------------------------------------------------------
For C programmers, most of this format information is incorporated in an
include file SOFTWARE/EXAMPLES/WBDL1.H which contains macro and table
definitions to make extracting the fields described above (and some
derived items) much easier.  Care was taken to construct macros that
should work on most common platforms.

-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
