MX Foundation 4
MXF_A629_DATAREC Struct Reference

ARINC 629 Transmit / Receive (Acquisition) Record. More...

#include <mxf_class_a629.h>

Data Fields

uint64 timeTag
 
uint32 control
 
uint32 dataSize
 
uint32 repeatCount
 
uint32 reserved
 
uint16 data [258]
 
uint16 reserved2 [2]
 

Detailed Description

Field Documentation

uint64 MXF_A629_DATAREC::timeTag

Acquisition mode: Specifies the time when the data record has been received by the device. It is an absolute time expressed on the time base set for the device.

Transmission Mode: For transmit operation, the time tag is not used and must be set to 0.

Examples:
ar629_alternate.c, ar629_alternate.cs, ar629_aperiodic_frame.c, ar629_aperiodic_frame.cs, ar629_aperiodic_mode.c, ar629_aperiodic_mode.cs, ar629_block_mode.c, ar629_block_mode.cs, ar629_dual_xpp.c, ar629_dual_xpp.cs, ar629_freshnessCounter_manyCID.c, ar629_freshnessCounter_manyCID.cs, ar629_independent_mode.c, and ar629_independent_mode.cs.
uint32 MXF_A629_DATAREC::control

Acquisition mode: For receive operation, the control field defines the condition under which the related record data was received.

The control bits are defined as follow for string mode (see KMXF_A629_BM_MODE);

Bit Constant Meaning
MXF_A629_RX_REC_CTRL_STRING_BUFFER_OVERFLOW An overflow condition has been detected on the preceding wordstring.
MXF_A629_RX_REC_CTRL_STRING_CRC_ERROR A CRC error was detected in the incoming wordstring.
MXF_A629_RX_REC_CTRL_STRING_SOF This wordstring is the first of the message.
MXF_A629_RX_REC_CTRL_STRING_INTERNAL_TRANSMIT This wordstring has been transmitted by the module.
MXF_A629_RX_REC_CTRL_STRING_DATA_SYNC_ERROR An invalid data sync has beed detected in the incoming wordstring.
MXF_A629_RX_REC_CTRL_STRING_CRC_ENABLED CRC check is enabled on this wordstring.
MXF_A629_RX_REC_CTRL_STRING_LABEL_MANCHESTER_ERROR A manchester error was detected in the label of the incoming wordstring.
MXF_A629_RX_REC_CTRL_STRING_LABEL_PARITY_ERROR A parity error was detected in the label of the incoming wordstring.
MXF_A629_RX_REC_CTRL_STRING_DATA_MANCHESTER_ERROR A manchester error was detected in the data of the incoming wordstring.
MXF_A629_RX_REC_CTRL_STRING_DATA_PARITY_ERROR A parity error was detected in the data of the incoming wordstring.
MXF_A629_RX_REC_CTRL_STRING_EOS_ERROR The wordstring length is more than 258 words.



The control bits are defined as follow for word mode (see KMXF_A629_BM_MODE);

Bit Constant Meaning
MXF_A629_RX_REC_CTRL_WORD_LABEL This word is a label word.
MXF_A629_RX_REC_CTRL_WORD_MANCHESTER_ERROR A manchester error was detected in the incoming word.
MXF_A629_RX_REC_CTRL_WORD_PARITY_ERROR A parity error was detected in the incoming word.
MXF_A629_RX_REC_CTRL_WORD_BUFFER_OVERFLOW An overflow condition has been detected on the preceding word.
MXF_A629_RX_REC_CTRL_WORD_EOS This word is the last of the wordstring.
MXF_A629_RX_REC_CTRL_WORD_CRC_ERROR A CRC error was detected in incoming word.
MXF_A629_RX_REC_CTRL_WORD_SOF This word is the first of the message.
MXF_A629_RX_REC_CTRL_WORD_INTERNAL_TRANSMIT This word has been transmitted by the module.
MXF_A629_RX_REC_CTRL_WORD_DATA_SYNC_ERROR This data word has an invalid data sync.



Transmission Mode: For transmission, the control field allows the user to inject transmit error.

A control of zero instructs the transmit process to send the data using the current transmitter settings.

The control bits are defined as follows:

Bit Constant Meaning
MXF_A629_TX_REC_CTRL_FC_NO_INC The freshness counter will not be incremented (periodic mode only).
MXF_A629_TX_REC_CTRL_FC_NO_SEND The freshness counter will not be sent (data from MXF_DATAREC_A629.data at the freshness counter position will be sent instead) (periodic mode only).
MXF_A629_TX_REC_CTRL_CRC_ERROR Sends a user defined CRC value (data from MXF_DATAREC_A629.data at the CRC position will be sent) (periodic mode only).
MXF_A629_TX_REC_CTRL_ERROR_INJ When set, error injection set with mxfA629ErrorInjectionSet() will be used. Index to use (0-99) is set in bits 0-6.
MXF_A629_TX_REC_CTRL_PPSYNC Sends a PPSYNC before (aperiodic mode only).
MXF_A629_TX_REC_CTRL_PSYNC Sends a PSYNC before (aperiodic mode only).
MXF_A629_TX_REC_CTRL_CRC Computes and appends a CRC after the last word (aperiodic mode only).
Examples:
ar629_alternate.c, ar629_alternate.cs, ar629_aperiodic_frame.c, ar629_aperiodic_frame.cs, ar629_aperiodic_mode.c, ar629_aperiodic_mode.cs, ar629_block_mode.c, ar629_block_mode.cs, ar629_dual_xpp.c, ar629_dual_xpp.cs, ar629_error_injection_detection.c, ar629_freshnessCounter_manyCID.c, ar629_freshnessCounter_manyCID.cs, ar629_independent_mode.c, ar629_independent_mode.cs, and ar629_updating_data_sampling.c.
uint32 MXF_A629_DATAREC::reserved

Reserved for future use. Must be set to 0 for transmit operation.

uint16 MXF_A629_DATAREC::data[258]

ARINC 629 data array.

Acquisition mode: Data received.

Transmission Mode: Data to update. The first datum (data[0]) is not used and must be set to 0 in periodic mode. In Aperiodic mode, it is used to set the label (0..11) and CID (12..15). LSB of data[1] is used to set the wordstring length for variable length wordstring.

Examples:
ar629_alternate.c, ar629_alternate.cs, ar629_aperiodic_frame.c, ar629_aperiodic_frame.cs, ar629_aperiodic_mode.c, ar629_aperiodic_mode.cs, ar629_block_mode.c, ar629_block_mode.cs, ar629_dual_xpp.c, ar629_dual_xpp.cs, ar629_error_injection_detection.c, ar629_freshnessCounter_manyCID.c, ar629_freshnessCounter_manyCID.cs, ar629_independent_mode.c, ar629_independent_mode.cs, ar629_updating_data_sampling.c, and ar629_updating_data_sampling.cs.
uint16 MXF_A629_DATAREC::reserved2[2]

Reserved for future use. Must be set to 0 for transmit operation.

Updated 10/23/2023