Fujitsu The Possibilities are Infinite

Worldwide | Site Map

Global

Home

Printable Version

Back to the original page

  1. Home >
  2. Services & Products >
  3. Microelectronics & Electronic Devices >
  4. Technology >
  5. FlexRay

FlexRay

FlexRay MCU

FlexRay ASSP

FlexRay Demonstration


Background

Currently, CAN and LIN are widespread as global standard of in-car network that performs various kinds of controls of motor vehicles. They are used for controlling body, temperature adjustment, dashboard, navigation, various kinds of sensors, motor, and chassis. However, for motor vehicles of next generation, further safety and comfort are desired. Therefore, the amount of data for in-car control system are increased and become more complex. Hence, faster and more highly reliable network is needed.
Therefore, FlexRay, which is the communication protocol for the next generation motor vehicles, is now brought to international attention.

What are needed for future motor vehicles?

For the motor vehicles of next generation, improvement of fuel efficiency by promoting ecology is needed. Supports for driving are also need by improving comfort, for example, minimizing everything and realizing roomy car interior than it looks on the outside. In addition, complex control system using multiple ECUs are required for improvement of safety.
To respond to such needs, we need to develop into more precise controls and further computerized in-car system, or to promote X-by-Wire (*1).

Automotive needs

*1 A technology that realize a mechanical control function, such as hydraulic pressure, by computerization

Why is a new communication protocol needed?

  • CAN network limitation
    The CAN network has reached its performance limits. A faster protocol is required. The maximum speed of a CAN network is 1 Mbps.
  • Real-time communication
    Higher reliability and data rate are required.
  • Electrical control alternative to hydraulic control
    Application of X-by-Wire to powertrain and safety systems is considered.

Fujitsu acquired a license to use FlexRay from Bosch in November 2004. We have introduced the FlexRay Starter Kit (MB2005-01) that uses FlexRay IP and introduced ASSP that contains FlexRay IP in September 2005.
In addition, since 2006, we have provided 32-bit microcontrollers equipped with FlexRay IP in the Fujitsu FR core.

Fujitsu also conducts the standardization activities as an associate member of FlexRay consortium, which is a standard setting organization, and as an official member of AUTOSAR and JasPar.

- Note -

Some parts on this site refer only to the outlines of the actual FlexRay standards providing better comprehensiveness.


FlexRay

FlexRay MCU

FlexRay ASSP


Overview

FlexRay™ is a type of next-generation in-car network protocol. FlexRay supports high-reliability and high-speed controls (maximum communication speed is 10 megabits per seconds), and it is an advanced and next-generation in-car network for X-by-Wire that replaces mechanical control with electronic control. FlexRay is a registered trademark of Daimler Chrysler AG.
The standardization of FlexRay is promoted by FlexRay Consortium as the next-generation in-car communication protocol.

Fujitsu intends to contribute to the development of in-car computerization by developing the next-generation microcontroller that contains FlexRay IP.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Features

FlexRay has three major features.

  1. In-car LAN communication for X-by-Wire (-> CAN limit)
    • It has the data transfer method that transfers data periodically as a time trigger protocol
    • The maximum transfer rate of communication is 10 Mbps.
  2. High-reliability-oriented communication protocol. Response to X-by-Wire application
    • Redundant communication. It enables fully-duplicated network configuration.
    • It enables schedule monitoring by hardware.
  3. Support of flexible topology
    • FlexRay can support various types of topologies, such as Bus-type, Star-type, and Hybrid-type.
    • The segmentation of FlexRay is configured in combination of the fixed-length static segment that sends and receives messages with the fixed time trigger method and the dynamic segment that sends and receives messages with the flexible time trigger method
 Example of topology configuration (Hybrid)
Example of topology configuration (Hybrid)

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


In-car Communication Protocol

In-car communication protocols can be roughly divided into two groups, the first just providing ordinary data transfer and the second providing the media for control functions distributed over several nodes.

  • Information group: Several tens of Mbps to several hundreds of Mbps
  • Control group: Several tens of Kbps to several tens of Mbps

The following figure shows the bit rate comparison of each communication protocol.

 Comparison of bit rates by communication protocols
Comparison of bit rates by communication protocols

Also, the distributed control functions can be divided into several areas of applications depending on the transfer rate.

  • Safety group: Several hundreds of Kbps to about 10 Mbps
  • Body group: Several tens of Kbps to about 1 Mbps

As shown in the above figure, the communication protocols can be classified by the communication speed, and the application for each group can be clarified accordingly.
FlexRay can cover the limit of the communication speed of CAN, and when it comes to reliability, it is the best communication protocol among them.

 Application classes by communication speed
Application classes by communication speed

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Target applications

Applications that FlexRay targets as in-car LAN are described below.
These applications are in technical innovation field that draws attention of manufacturers and suppliers in terms of applications to X-by-Wire.

Applications of FlexRay
Legend

  1. EPS: Electronics power steering
    This range of applications covers applications for computerizing the existing power steering system. This field is especially important because of its application in Steer-by-Wire technology. For example, it may enable controlling the steering angle in dependence on the motor revolution rate.
  2. ABS, VSC, VSA
    ABS: Anti-lock brake system
    VSC: Vehicle stability control (Vehicle stability control system)
    VSA: Vehicle stability assist (Vehicle behavior stability control system)

    This range of applications covers applications for computerizing the above-mentioned brake systems. This field is especially important because of its application in Safe-by-Wire technology.
    For example, it may enable computerizing the brake pad control.
  3. Steering sensor
    The module (ECU) is typically called top column module and it comprises a steering angle sensor which has been lifted to Flexray network in order to share the same bus as other X-by-wire components.
  4. AT: Automatic Transmission
    AT has worked as a driving power system in conjunction with existing systems such as computerized fuel injector, computerized variable intake control system, and computerized idling control system. Besides, this application will control the electronic throttle by replacing the mechanisms of accelerator and throttle.
    This field is therefore important because of its application in Drive-by-Wire.
  5. Gateway
    This application controls the replacement of signals of two different networks, FlexRay network and CAN network.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Data transfer method

FlexRay uses the time trigger protocol whereas CAN uses the event trigger protocol.
This enables the accurate data transfers according to the scheduling.

 Image example of FlexRay time trigger protocol
Image example of FlexRay time trigger protocol

The data of FlexRay is transferred in the slot.
The image of each role (EPS, AT, etc.) and the corresponding slot is shown in the following figure.

 Image example of role of each slot
Image example of role of each slot

This enables "accurate data transfers according to a predefined schedule."

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MPU

FlexRay ASSP


Difference with CAN

The following table shows the comparison of major specifications of FlexRay and CAN.

Comparison between FlexRay and CAN

No. Compared item CAN FlexRay
1 Baud rate 1Mbps 10Mbps
2 Number of channels per a node 1ch 2ch/1ch (option(1))
3 Network topology Bus-type Bus-type, Star-type, or Coexisting
4 Connected nodes (max) Depending on the delay time of the bus Bus-type: 22 nodes Star-type: 22 nodes or 64 nodes during active Coexisting: 64 nodes
5 Physical layer Metal Metal/PoF
6 Communication Event trigger Time trigger + event trigger
7 ID 11bits/29bits 11bits
8 DLC 8bytes 254bytes
9 Frame Data Frame,
Remote Frame,
Error Frame,
Over Rode Frame
Data Frame
10 Bus line lock Possibly be dominant lock(2) Babbling Idiot(3) (supported by BG(4))
11 Error status transition Error Active,
Error Passive,
Bus off (recoverable by software)
Normal Active,
Normal Passive,
Halt (recoverable by a reset or software command)
12 Error counter Fixed status transition counter value Arbitrary status transition counter value
13 Type of errors Bit Error,
Staffing Error,
CRC Error,
Framing Error,
ACK Error
All errors except a clock synchronization
14 Oscillator Ceramic oscillator or crystal oscillator Crystal oscillator
(BG(4) is separated from the CC(5) clock)
15 NW management By software By hardware (by BD(6) or BG)
16 Network synchronization Synchronized only by sync_seg Rate correction and offset correction are available.
17 Bus length 40m at 1Mbps 22m
(between nodes, between Active-Star and node, and between Active-Star and Active-Star.)

Explanations

Option:
The option means it can be switched by the setting value.
Dominant lock:
Dominant lock means that Bus is stuck to "0".
Babbling Idiot:
Babbling Idiot means that incorrect transfer causing damage occurs.
BG:
BG stands for bus guardian.
CC:
CC stands for communication controller.
BD:
BD stands for bus driver.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Internal configuration of a node

A node in FlexRay consists of a controller part and a driver part in hardware.
The configuration of the driver part varies depending on whether or not a "bus guardian" is mounted.
The following figure shows the configuration diagram with a bus guardian mounted.

 Configuration diagram of a node in FlexRay (with a bus guardian mounted)
1Nodeの内部構成

The controller part contains the host that controls the entire unit and the communication controller (CC) that controls the communications.
The controller part is connected to the driver part that has a redundant configuration.
The driver part contains the bus guardian that detects abnormal transmissions and disconnects the communication and the bus driver that exchanges physical signals and logical signals between FlexRay bus and CC.
There are two bus guardians, A and B, and two bus drivers, A and B so that they can configure fully duplicated network.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Electronic signals

Four bus statuses, Idle_LP, Idle, Data_1, and Data_0 are defined.
The bus communicates by using the differential signals, BP and BM. The voltage on each differential signal is represented by uBP or uBM.
The electronic signals of FlexRay are shown below.

 Electronic signals of FlexRay
Electronic signals of FlexRay
  • Idle_LP status means low-power status.
  • Idle_LP status means idle (no-communication) status.
  • Data_1 status means logical HIGH.
  • Data_0 status means logical LOW.
    (The conflict of Data_1 and Data_0 is not allowed.)

The following shows the monitored actual FlexRay communication signals.
The red waveform data indicates BP signal, and the green one represents BM signal.

 Normal access signals
Normal access signals

100MS/s 500ns/div

 Signals change from Idle_LP to Idle, and to start of communication.
Signals change from Idle_LP to Idle, and to start of communication.

10MS/s 100ms/div

The voltage drop on the circuit harness, connector, and common mode choke, margin of induced drop, and the incompatibility occurred at the pin need to be considered in terms of signal integrity.
FlexRay provides minimum requirements that a test plane must be carried out on both the sending and receiving sides in the network.

  • Test plane 1: Bus driver BP and BM pins of the sending node
  • Test plane 2: BP and BM connector pin on the network input side
  • Test plane 3: BP and BM connector pin on the network output side
  • Test plane 4: Bus driver BP and BM pins of the receiving node

A signal eye-diagram for each test plane is defined to indicate the minimum aperture of the test plane differential voltage.
The voltage is in [mV] unit, and the time is the gdBit percentage.

 FlexRay test plane and signal eye-diagram (TP1, TP4)
FlexRay test plane and signal eye-diagram (TP1, TP4)

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Bus Guardian

The bus guardian (BG) in FlexRay performs management of schedules and data independently from the communication controller (CC).

The bus guardian (BG) monitors timing independently.
If a gap in timing is found, it sends a signal to prohibit the bus driver (BD) from sending to protect the bus status. Simultaneously, it notifies the host of the error.

 Configuration diagram of a node in FlexRay
Bus Guardian
 Segment configuration of FlexRay and effective area of Bus Guardian
Segment configuration of FlexRay

The above figure shows a general segment configuration of FlexRay, and the effective area of the bus guardian (BG) is limited to the static segment. This is because the slot length and timing of sending have been determined in the static segment and they cannot be protected by the bus guardian (BG). Also, the dynamic segment works with event triggers (flexible time triggers) and the timing cannot be monitored by the bus guardian (GB).
For more information about segment configuration, see "FlexRay segment configuration."

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Topology

There are two types of topology, bus type and star type, and each of them has single-channel type and dual-channel type.

  • Bus type characteristic:
    Similar to CAN, it is a passive medium, a lot of experience is available with this technology, and it is cost efficient
  • Star type characteristic:
    Because its connection is point-to-point, it is for high-speed data rate. It is also easy to reduce failures such as a short-circuit of bus.
 FlexRay topology type and features
FlexRay topology type and features
  • Single channel characteristics:
    Similar to the bus type and CAN, it has a few harnesses, but a lot of experience is available. Also, because of the single connection, it is cost effective.
  • Dual channel characteristics:
    By making redundant configuration, it is fault tolerant.

FlexRay supports three types of topology, bus-type, star-type, and hybrid-type that is a combination of bus-type and star-type.

The minimum number of system nodes is two.
The minimum fault tolerant system nodes is three nodes.
Although the minimum number of nodes in configuration is two, the number of synchronized nodes should be three considering the fault tolerance.

Point to Point Connection

Most standard network topology
Basic configuration against the more complex topology configuration

Linear Passive Bus

When three nodes are connected on a bus, the bus becomes a linear passive bus

Passive Star

All nodes on a linear passive bus are connected to a single point.

Active Star

Inter-node connection with an active star.

Cascade Active Star

Active start allows cascade connection.
The mutual point-to-point connection is allowed.

Hybrid

Individual connections. Can be combined among the connections within each oval.

Legend

The example of terminal value for ECU (node) is shown below.

Example of ECU (node) resistance

Terminal resistance

Terminal resistance value

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Segment configuration

FlexRay segment configuration consists of the static segment with the fixed time trigger method and the dynamic segment with the flexible time trigger method.
In addition, there are symbol window that tests the bus guardian operations, and the network idle time segment used for clock correction. Features of each segment are listed below.

FlexRay segment features

Features Slot length/
data length
Priorities Bus Guardian
Static Segment Sends and receives messages with time triggers Fixed length Fixed by Fixed TDMA Because the timing for sending is fixed, it is protected by BG.
Dynamic Segment Sends and receives messages with event triggers Variable length Sending in ascending order of ID Because the timing of sending is undetermined, it cannot be protected by BG.
Symbol
Window
Confirms the normality of BG. Fixed length - BG can disable sending.
Network
Idle Time
Global synchronous processing period Variable length - -

The symbol window is not used unless the bus guardian is used.

The FlexRay segment configuration can be designed in the following patterns depending on the system specifications.

Segment configuration

The static segment and NT segment are required for configuration.

Communication cycles and segments/slot configuration

Because it enables the data transfer with redundancy, the data transfer for which high reliability is required is available.

The frequency of a cycle is from 0 to 63. A cycle consist of four segments, static segment, dynamic segment, symbol window, and network idle time.

The static segment consists of integral multiples of fixed-length static slots, and it sends and receives static frames to and from the static slots.
The dynamic segment consists of fixed-length mini slots. By changing the number of mini slots, the dynamic slot can be variable length.

 Segment and slot configuration
Segment/Slot

A slot consists of the idle time and a frame that sends and receives data.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Protocol

Frame format

The frame of FlexRay has the following features:

  • The header segment Header CRC is calculated and specified by the host.
  • The trailer segment CRC is calculated by the hardware.
  • The CRC also changes initial values on the connected channel to prevent incorrect connection.
 FlexRay frame format
FlexRay frame format

Header segment

  • Reserved bit
    This is a reserved bit for future expansion.
  • Payload preamble indicator
    This bit indicates the existence of vector information in the payload segment of the frame.
    At static frame, it indicates NWVector, and at dynamic frame, it indicates Message ID.
  • Null frame indicator
    This bit indicates whether or not the data frame in the payload segment is NULL
  • Sync frame indicator
    This bit indicates the existence of synchronous frame.
  • Startup frame indicator
    This bit indicates whether or not the node sending frame is the start-up node.
  • Frame ID
    An ID is assigned to each node at system designing. (Valid range: 1 to 2047)
  • Length
    It specifies the data length of the payload segment part.
  • Header CRC
    It specifies the CRC calculation values of Sync Frame Indicator, Startup Frame Indicator, Frame ID, and Length that are calculated by the host.
  • Cycle
    Cycle counter. It indicates the cycle count of the node that transfers the frame during the frame transfer time.

Payload segment

  • Data
    Data. Valid range is from 0 to 254 bytes.
  • Message ID
    Optional. It uses the first two bytes of the payload segment for definition, and it can be used as the filterable data on the receiving side.
  • NWVector
    Optional. The network management vector length must be from 0 to 12 bytes and common to all nodes.

Trailer segment

  • CRC
    It is calculated and specified by the hardware.
    It changes the seed value on the connected channel to prevent incorrect connections.

Timing of configuring protocol

FlexRay communication cycles consists of four timing levels.

 FlexRay timing levels
FlexRay timing levels

Timing levels and their functions

Timing level Function
Communication cycle level Frame scheduling
Arbitration grid Arbitrated slot (time-sharing multiple control)
Macrotick level Synchronized service
Microtick level Segmentalized clock for the synchronized service

The Macrotick level and the Microtick level act as a clock to be the basis of configuration of each segment.
Synchronization is performed on the basis of this clock.

  • Macrotick:
    A global synchronizing clock that manages the entire network time.
  • Microtick:
    A node-specific clock. Minimum units of the FlexRay management time.

The following figure shows an example of clock division at 10 Mbps of the transfer rate.

 Example of relationship between the clock division and slot length
clock cycle

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Status transition

The status transition of FlexRay from the initial setting to normal communication is shown below.

 FlexRay status transition
FlexRay status transition
  1. Configuration status (Default config/config)
    Makes all kinds of initial settings including communication cycle or baud rate.
  2. Ready status
    Makes the internal communication settings.
  3. Wakeup status
    To wake up the cluster that is not communicating, send the WUP signal to wake up the other node.
    The node that received the WUP signal wakes up and enables CC, BD, and BG.
  4. Startup status
    Start the clock synchronization and be ready for communication.
    If no communication is performed after wakeup, clock synchronization is performed on the basis of a node (reading startup node)
    For the clusters that have communicated, the clock synchronization is performed on the attending node.
  5. Normal status
    It indicates the communication available state.
  6. Halt status
    It indicates that communication is stopped.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.


FlexRay

FlexRay MCU

FlexRay ASSP


Error control

FlexRay has three error processing levels.

FlexRay's errors and processing levels

Item Normal active Normal passive Fault
Status Complete operation Reduced operation Stop operation
Frame processing Frame sending and receiving enabled Frame sending stopped
Frame receiving enabled
Frame sending and receiving stopped
Clock synchronization Synchronized Maintain synchronization Out of synchronization
Action Fully maintained synchronization When the received frame is processed and it is clock-synchronized, it recovers to normal active state autonomously. For restarting operation, reset or instruct to transit to the Ready state from the host.

The error status transition is managed with the error counter.
The error counter values including a clock synchronization error and clock correction value error depends on application, so it is determined at system designing.

 Error status transition
Error control

In the management of error counter, it controls the clock synchronous error monitoring operations using the error counters for error status detection and for recovery from the error state separately.

Clock synchronization error monitoring operation (error detection)

  • The clock synchronization error detection is judged with the number of continuous failures of the clock synchronization processing (rate correction and offset correction).
  • The fault/normal passive transition requirements can be specified from the host.
  • Whether or not to perform error transition can be specified from the host.
 Counting up the error counter and the status transition conditions
Error counter (error-detection)

Clock synchronization error monitoring operation (normality detection)

  • The clock synchronization normality detection is judged with the number of continuous normal clock corrections (rate correction and offset correction).
  • The normal active return transition requirement can be specified from the host.
  • By specifying 0 to this return transition requirement, it can refuse to return to normal active state
 Counting down the error counter and the status transition conditions
Error counter (normality detection)

Comparison of error processing of FlexRay and CAN

Item FlexRay CAN Remarks
Error state NORMAL_ACTIVE:
Normal operation
ERROR_ACTIVE:
Normal operation
CAN monitors the bus status when it becomes "bus off," and if it detects idle time for a certain time, it decodes it.

FlexRay requires reset processing by CPU when a halt occurs.
NORMAL_PASSIVE:
Sending disabled, receiving enabled.
ERROR_PASSIVE:
Sending and receiving enabled, error frame sending disabled.
HALT:
Sending and receiving disabled.
BUSOFF:
Sending and receiving disabled.
Status transition management Management with error counter
The counter value in the status transition condition is determined at system designing.
It controls using the error counters for error status detection and for recovery from the error state separately.
Management with error counter
The counter value in the status transition condition is a fixed value.
It has the error counters for sending and receiving separately, and each of them counts up and down according to normal or error transition detections.
-
Error affecting the error counter management Clock synchronization error only
Rate correction and offset correction failed.
Bit error
Staff error
CRC error
Form error
ACK error
FlexRay set an error flag unless a clock synchronization error occurs, and it generates an interrupt.
Error report to the bus Not reported Reported
It sends an error frame.
FlexRay performs managements such as network management.

- Note -

Some parts of this site show only the outlines of the actual FlexRay standards to make them easily understood.