A FlexRay node is an electronic control unit (ECU), which is connected to a FlexRay bus via a FlexRay interface. The FlexRay interface is made up of a communication controller and one or two bus drivers, depending on the number of channels. The communication controller is referred to as a FlexRay controller. The bus driver is referred to as a FlexRay transceiver.
The FlexRay controller executes the communication protocol defined in the FlexRay specification. The primary tasks of the FlexRay controller include framing, bus access, error detection and handling, synchronization, putting the FlexRay bus to sleep and waking it up, as well as coding TX messages and decoding RX messages.
The FlexRay controller may be designed as a peripheral module of a host. This is referred to as an integrated FlexRay controller. The advantage of an integrated FlexRay controller lies in simpler and quicker communication between the host and the FlexRay controller. However, this solution lacks flexibility. Flexibility is attained when the FlexRay controller is constructed to be separate from the host. In this case, one speaks of a stand-alone FlexRay controller.
The FlexRay transceiver couples the FlexRay controller to the physical transmission medium. The primary task of the FlexRay transceiver is signal transformation. On the one hand, it transforms the logical signal stream received by the FlexRay controller into a physical signal stream. In the other direction, it transforms the received physical signal stream into a logical signal stream.