MX Foundation 4
Attributes reference

The following attributes are available for all devices supporting a CSDB interface.

Common attributes

Speed

The KMXF_CSDB_SPEED attribute holds the actual port speed (bit rate), in bits per second.

The supported range is:

Module Range (bps) Default (bps) Formula
MXF_MODULE_ASYNC_EH 200 - 10000000 12500 108 / n with 10 ≤ n ≤ 500000
MXF_MODULE_MULTI_EH 200 - 4000000 12500 108 / n with 25 ≤ n ≤ 500000
MXF_MODULE_MULTI 245 - 4000000 12500 32000000 / n with 8 ≤ n ≤ 130612
MXF_MODULE_ASYNC 305 - 4000000 12500 20000000 / n with 5 ≤ n ≤ 65535
MXF_MODULE_FLEXSMP 200 - 10000000 12500 100000000 / n with 10 ≤ n ≤ 500000


Parity

The KMXF_CSDB_PARITY holds the parity settings. For a transmitter channel, it represents the parity bit to be generated (if any).
For a receiver channel, it is the word parity used to valide the word.

The supported values are:

Transmitter Channel:

Constant Value
VMXF_CSDB_PARITY_EVEN Channel has even parity.
VMXF_CSDB_PARITY_ODD Channel has odd parity. (default)
VMXF_CSDB_PARITY_NONE Channel parity is not defined. Parity bit will be transmitted with the value set by the application.

Receiver Channel:

Constant Value
VMXF_CSDB_PARITY_EVEN Channel has even parity.
VMXF_CSDB_PARITY_ODD Channel has odd parity. (default)
VMXF_CSDB_PARITY_NONE The module does not check the received data for parity error.

When a parity error is detected in reception, the control field of the MXF_CSDB_DATAREC or MXF_CSDB_SAMPREC is set to MXF_CSDB_RX_REC_CTRL_PARITY_ERROR.


Stop Bit Size

The KMXF_CSDB_STOPBITSIZE attribute holds the number of bits used as stop bit.

Range Value (bits)
Minimum 1 (default)
Maximum 2


Block Count

The block count KMXF_CSDB_BLOCKCOUNT attribute is used to define the number of bytes of a CSDB message.
Typically the value is six or eight bytes long but another value can be set for error injection purposes.

Range Value (bytes)
Minimum 2
Maximum 12

Note: The count must include the two bytes for the label and the status.

Default value: 6


Loopback Mode

The KMXF_CSDB_TX_RX_TEST_LB attribute holds the TX-to-RX loopback state for the receiver channel. When the loopback mode is enabled, the received data comes from the corresponding transmitter channel instead of the normal behavior where the received data comes from the receiver line interface. This feature is intended for a demo application or for test purposes. When enabled, the module’s first RX channel receives data transmitted on the first TX channel; the second RX receives data from the second TX, and so on. Transmissions are still sent on the TX line when loopback mode is enabled.

The supported values are:

Constant Value
VMXF_DISABLE Disable loopback (default)
VMXF_ENABLE Enable loopback


TX Port Enable

The KMXF_CSDB_TX_PORT_ENABLE attribute holds the transmitter enable state. mxfChannelTxPortEnableSet() function can also be used to perform the same task once the library is loaded. This attribute is also an initialization attribute that can be set from the initialization attribute handler (see mxfSystemInitAttributeUint64CallbackHandler()).
Supported on IO-ASYNC-EH and IO-MULTI-EH only.
The supported values are:

Constant Value
VMXF_ENABLE Enable port (default)
VMXF_DISABLE Disable port


Termination Resistor

The KMXF_CSDB_TERMINATION attribute holds the actual channel termination resistor state.
Only supported on MXF_MODULE_FLEXSMP.

Constant Value
VMXF_CSDB_TERMINATION_NONE No termination resistor (default)
VMXF_CSDB_TERMINATION_120OHM 120 ohm termination resistor enabled


RX Time tag Enable

The KMXF_CSDB_MODULE_RX_TIMETAG_ENABLE and KMXF_CSDB_RX_TIMETAG_ENABLE (MXF_MODULE_ASYNC) attributes define if the timetag is returned in the record.
Not available on MXF_MODULE_FLEXSMP, timetag always enabled.

Constant Value
VMXF_DISABLE Disable time tag reception
VMXF_ENABLE Enable time tag reception (default)


RX FIFO Aging Timeout

The KMXF_CSDB_MODULE_RX_FIFO_AGING and KMXF_CSDB_RX_FIFO_AGING (MXF_MODULE_ASYNC) attributes define the RX FIFO aging timeout value for the module. This value applies to all receiver channels on the module. Aging timeout is the duration that a received word can wait in the FIFO before an interrupt is generated. It defines the longest delay that a received word can wait in the hardware FIFO before a receive interrupt is generated. The attribute value resolution is based on the timebase resolution. A RX FIFO Aging Timeout value of 0 disables the aging timeout. The attribute value is rounded down to step of 128 microseconds.

The supported range is:

Module Range (microsecond) Default (microsecond) Note
MXF_MODULE_ASYNC_EH 0 - 16256 8192 Value is rounded down to step of 128 microseconds
MXF_MODULE_MULTI_EH 0 - 32640 8192 Value is rounded down to step of 128 microseconds
MXF_MODULE_MULTI 0 - 32640 8192 Value is rounded down to step of 128 microseconds
MXF_MODULE_ASYNC 0 - 16320 8192 Value is rounded down to step of 64 microseconds
MXF_MODULE_FLEXSMP 0 - 25000 8000 Value is rounded down to step of 100 microseconds
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


RX FIFO Almost Full Threshold

The KMXF_CSDB_MODULE_RX_FIFO_AF and KMXF_CSDB_RX_FIFO_AF (MXF_MODULE_ASYNC) attributes hold the RX FIFO almost full threshold for the module. This value applies to all receiver channels on the module. This attribute value determines the number of received words that are accumulated in the receive hardware FIFO before an interrupt is generated. The receiver engine will read the FIFO when it is almost full or an aging timeout occurred.

The supported range is:

Module Range Default
MXF_MODULE_ASYNC_EH 1 - 255 (16-bit word) 32
MXF_MODULE_MULTI_EH 1 - 255 (16-bit word) 32
MXF_MODULE_MULTI 1 - 255 (16-bit word) 16
MXF_MODULE_ASYNC 1 - 127 (16-bit word) 16
MXF_MODULE_FLEXSMP 1 - 511 (64-bit word) 128
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


TX FIFO Almost Full Threshold

The KMXF_CSDB_MODULE_TX_FIFO_AF and KMXF_CSDB_TX_FIFO_AF (MXF_MODULE_ASYNC) attributes hold the almost full threshold for a transmitter channel. This attribute value determines the number of transmit words that are to be queued in the transmit hardware FIFO. The transmit interrupt will be cleared automatically once this threshold is reached.

The supported range is:

Module Range Default
MXF_MODULE_ASYNC_EH 2 - 255 (16-bit word) 64
MXF_MODULE_MULTI_EH 2 - 255 (16-bit word) 128
MXF_MODULE_MULTI 2 - 255 (16-bit word) 128
MXF_MODULE_ASYNC 2 - 255 (16-bit word) 32
MXF_MODULE_FLEXSMP 2 - 256 (64-bit word) 256
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


TX FIFO Almost Empty Threshold

The KMXF_CSDB_MODULE_TX_FIFO_AE and KMXF_CSDB_TX_FIFO_AE (MXF_MODULE_ASYNC) attributes hold the almost empty threshold for a transmitter channel. The transmit interrupt will be generated whenever the number of words remaining in the transmit hardware FIFO is less or equal to the value specified by this attribute. The software embedded process will then be able to react and fill in the transmit FIFO.

The supported range is:

Module Range Default
MXF_MODULE_ASYNC_EH 1 - 254 (16-bit word) 32
MXF_MODULE_MULTI_EH 1 - 254 (16-bit word) 64
MXF_MODULE_MULTI 1 - 254 (16-bit word) 64
MXF_MODULE_ASYNC 1 - 254 (16-bit word) 16
MXF_MODULE_FLEXSMP 1 - 255 (64-bit word) 64
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


IO-MULTI attributes

The following CSDB attributes are available only for the IO-MULTI device.

Electrical Selection

The KMXF_CSDB_ELECTRICAL_SELECTION attribute holds the actual channel electrical selection. When the electrical selection is set to default, all electrical attributes below are set to a default value and are read only. To modify any of these attributes, set electrical selection to custom.

Constant Value
VMXF_CSDBEH_MULTI_ELECTRICAL_SELECT_DEFAULT Select default electrical parameters (default)
VMXF_CSDBEH_MULTI_ELECTRICAL_SELECT_CUSTOM Select custom electrical parameters


TX Differential Voltage High

The KMXF_CSDB_TX_DIFF_VOLTAGE_HIGH attribute defines the high TX differential voltage value. This is a floating point attribute. To modify this attribute value, the KMXF_CSDB_ELECTRICAL_SELECTION attribute must be set to custom.

The supported range is:

Module Range (Volt)
MXF_MODULE_MULTI_EH see table below
MXF_MODULE_MULTI -9.16 – +9.16

Default value: +2.50 volt

MXF_MODULE_MULTI_EH

Device Type Revision MXF Version Range (Volt)
FlexMulti 629 Up to 2.4 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
2.5 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5
FlexMulti 1553 Up to 3.2 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
3.3 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5
FlexMulti 429
FlexMulti 664
FlexMulti
Up to 3.0 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
3.1 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5


TX Differential Voltage Low

The KMXF_CSDB_TX_DIFF_VOLTAGE_LOW attribute defines the low TX differential voltage value. This is a floating point attribute. To modify this attribute value, the KMXF_CSDB_ELECTRICAL_SELECTION attribute must be set to custom.

The supported range is:

Module Range (Volt)
MXF_MODULE_MULTI_EH see table below
MXF_MODULE_MULTI -9.16 – +9.16

Default value: -2.50 volt

MXF_MODULE_MULTI_EH

Device Type Revision MXF Version Range (Volt)
FlexMulti 629 Up to 2.4 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
2.5 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5
FlexMulti 1553 Up to 3.2 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
3.3 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5
FlexMulti 429
FlexMulti 664
FlexMulti
Up to 3.0 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
3.1 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5


TX Voltage Offset

The KMXF_CSDB_TX_VOLTAGE_OFFSET attribute defines the TX voltage offset. This is a floating point attribute. To modify this attribute value, the KMXF_CSDB_ELECTRICAL_SELECTION attribute must be set to custom.

The supported range is:

Module Range (Volt)
MXF_MODULE_MULTI_EH see table below
MXF_MODULE_MULTI -10.0 – +10.0

Default value: 2.50 volt

MXF_MODULE_MULTI_EH

Device Type Revision MXF Version Range (Volt)
FlexMulti 629 Up to 2.4 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
2.5 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5
FlexMulti 1553 Up to 3.2 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
3.3 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5
FlexMulti 429
FlexMulti 664
FlexMulti
Up to 3.0 Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.1 – +6.1
3.1 and later Up to 4.2.5 -5.0 – +5.0
4.3.0 to 4.4.1 -6.0 – +6.0
4.4.2 and later -6.5 – +6.5


TX Slew Rate Selection

The KMXF_CSDB_TX_SLEW_RATE_SELECTION attribute defines the TX slew rate selection. MX Foundation automatically sets the default slew rate to its minimum value. When the default option is selected, the KMXF_CSDB_TX_SLEW_RATE attribute will be read only. Otherwise, the custom option allows specifying the slew rate with the KMXF_CSDB_TX_SLEW_RATE attribute. To modify this attribute value, the KMXF_CSDB_ELECTRICAL_SELECTION attribute must be set to custom.

Constant Value
VMXF_CSDBEH_MULTI_TX_SLEW_RATE_SELECT_DEFAULT Select default slew rate parameter (default)
VMXF_CSDBEH_MULTI_TX_SLEW_RATE_SELECT_CUSTOM Select custom slew rate parameter


TX Signal Slew Rate

The KMXF_CSDB_TX_SLEW_RATE attribute defines the TX signal slew rate. MX Foundation automatically sets the default slew rate to its minimum value. When the default option is selected, the KMXF_CSDB_TX_SLEW_RATE attribute will be read only. Otherwise, the custom option of the KMXF_CSDB_TX_SLEW_RATE_SELECTION attribute allows specifying the slew rate with this attribute. This is a floating point attribute.

The supported range is:

Module Range (nsec/volt) Default (nsec/volt) Formula
MXF_MODULE_MULTI_EH 2.0 - 13429.5 2.0 (204800/1.22) / (n*3.125) with 4 ≤ n ≤ 26856
MXF_MODULE_MULTI 25.0 - 25600.0 25.0 102400/n with 4096 ≤ n ≤ 51200


RX Differential Voltage Threshold

The KMXF_CSDB_RX_DIFF_VOLTAGE_THRESHOLD attribute defines the RX differential voltage threshold. This is a floating point attribute. To modify this attribute value, the KMXF_CSDB_ELECTRICAL_SELECTION attribute must be set to custom.

Range Value (Volt)
Minimum 0.0
Maximum 25.0

Resolution: 0.05 volt Default value: 0.20 volt

Updated 10/23/2023