MX Foundation 4
Raw Port

A port can be set in raw mode if you want to read the data (frame or pure data) directly from an AFDX physical port. The application acquisition buffer is filled with the data coming from the physical port and data is not passed and validated by the layers of the AFDX protocol stack.

A raw port is defined simply by acquiring a buffer using mxfRxAcqBufferAlloc() that specifying the handle of an AFDX physical channel (class MXF_CLASS_A664). After you can directly read the data using the mxfA664RxAcqRead() function call. Only the service acquisition can be used in this mode.

The example below depicts how to allocate a channel;

One or two ports can be assigned to the raw mode; if only one port (Port-A) is allocated this port is not attached anymore by the AFDX stack for processing. However, the second port-B (not allocated in raw mode) still forward the data received from Port-B to the stack. If a raw buffer allocation is done on both physical ports all the traffic is not processed by the stack and a double copy of the frames can be forwarded to the application.

You can also receive raw frames by setting the KMXF_A664_RAW_RX_ERROR_ONLY attribute to TRUE for a physical channel. In this mode the frames are enqueued to the VL processing as usual for the AFDX stack layers (MAC/RM/EDE/TCP-IP VL COM/SAP ports). If a frame is discarded for some reasons by the stack layers (cannot forward the PDU to the upper layer) because a frame format error is detected the data sent to the raw channel for investigation.

Updated 10/23/2023