×

Happy to Help!

This website doesn't store cookies. Enjoy the experience, without worrying about your data!

Great, thanks!

Classical CAN v/s CAN FD: Decoding Their Data Transfer Capabilities and Compatibility with the Bootloader Software

  • 0

Classical CAN v/s CAN FD: Decoding Their Data Transfer Capabilities and Compatibility with the Bootloader Software

In simple terms, Controller Area Network (CAN) can be understood as a medium that links all electronic systems in the vehicle. It is the CAN Bus that supports all the communication between different Electronic Control Units (ECU) within a vehicle.

When CAN Bus standard was defined by BOSCH in 1980, the electronic components were a few. The payload on the network did not go beyond 8 Bytes. The data rate required for software flashing was also not very high as software still did not control a lot in the vehicles.”

Fast-forward 20 years since the introduction of the CAN Bus! We will find ourselves overwhelmed by the scale of all things software within the Automotive Industry

From the number of vehicle ECUs (control units) to the complexity of the automotive software, everything has scaled up to the newer heights.

Hence, a faster In-vehicle networking Bus standard became the need of the hour. In 2014, the enhancement to CAN was finally launched. It was called CAN FD (Flexible Data-rate). As a result, the senior avatar of CAN (remember 1980s) was awarded an honorary prefix and was rechristened (for ease of naming) as the Classical CAN.

Why the Need for CAN FD

The bandwidth requirement of the new automotive applications has been increasing more than gradually! This is mainly due to the Volume, Variety and Velocity of data from sensors and other sources being fed to the in-vehicle network of control units. Automotive ECU reprogramming is another area where large size binary files are required to be transferred over the in-vehicle network.

The bit rate and payload limitation of CAN started impeding activities like automotive ECU flashing, and faster communication for ADAS applications.

High data rate and larger payload were achieved by modifying the frame format of CAN. This new frame format (CAN FD solution) has the capability to support higher bandwidth than 1 Mbit/s and hence it could manage data payloads higher than 8 bytes.

Since the new frame format solution has the ability to support flexible data-rates (up to 8mbps) depending on the requirement of the application, it was christened as CAN Flexible Data-rate or CAN FD.

We will go into a little more details to understand how exactly CAN FD is able to fill the gap created by inherent nature of CAN operations

The data over CAN is sent in frames. The receiving nodes send an acknowledgement flag as soon as they receive the frame. As this acknowledgement is send into the transmitted frame, the sender gets an in-frame response after a successful transmission.

The transceivers present between the CAN and the vehicle ECU and the length of the physical cables often cause propagation delay. It also directly impacts the bit rate resulting in slower data transfer.

CAN FD solves this problem by using two separate frames to send the real data and the acknowledgement data. Higher bit rate is used to transmit the data itself and the nominal bit-rate is allocated to control data (acknowledgement).

We will elaborate a little more on it when we discuss the CAN and CAN FD compatibility.

The Connection between Bootloader and Controller Area Network (CAN)

In an automotive ECU, the primary function of Bootloader software is ECU Re-programming also called as ECU Flashing. The Bootloader receives the updated program through the CAN and then performs the necessary function.

There are three phases of ECU reprogramming/flashing, namely, delete, download/program and verify. In these three phases, the download time is the key factor.

In the automotive applications like ADAS, Infotainment, CAR HUD and others, the size of the software packages is quite large. Classical CAN may take several minutes for the update or file-transfer as its max data rate is 1 Mbps.

On the contrary, with a data-rate up to 8 Mb/s supported by CAN FD ECU flashing can be accomplished in seconds. Unarguably, this is a huge advantage.

The block diagram shows the physical layer of CAN FD stack.

CAN FD Physical Layer

Classical CAN v/s CAN FD: The Striking Differences

Some of the differences which are also the main advantages are quite obvious. It includes the higher bit rate and support for larger payload. We will try to bring out some more discreet yet important differences.

But let’s first discuss the more obvious ones.

  1. Increased data rate: From a max of 1 Mb/s to up to 8 Mb/s, the change is glaring. Increased data rate is highly beneficial in re-programming the applications like ADAS (Advanced Driver Assistance System), as large data packets are needed to be transmitted.
  2. Large Payloads: CAN FD supports 64 bytes of data field as compared to 8 bytes in CAN. This huge leap in payload size translates into faster and more efficient in-vehicle network communication among the vehicle ECUs. End-of-line software upgrade also becomes faster affair with CAN FD.

    With 64 bytes of payload supported, there is no need for the splitting of the long messages as well. This simplifies the handling of the data, thus contributing in efficient data transmission.

    And now let’s move on to the discreet ones:

  3. Message Format: The message frame format has undergone some crucial changes in CAN FD bus standard. The most primary being the ability to send the control data (arbitration and acknowledgment) with a different bit rate (usually 500 Kb/s) and send the actual data at a higher bit rate.

    Another improvement in CAN FD is the introduction of CRC (Cyclic Redundancy Checks), that takes care of the larger frames by taking CAN Stuff bits into the account. The diagram below shows the major differences between the message frames of CAN and CAN FD.

    CAN FD Message Frame

  4.  

  5. Data bit rate dependency: Propagation delay is quite common in CAN bus standard due to the transceivers and cable length. Propagation time is nothing but the time required to send the signal to the most distant node and get it back. The bit-rate will directly depend on the propagation delay as there is a reciprocal relation between them.

    There is no such dependence of bit rate on signal propagation delay. Reason being the difference in the message frame format that we discussed in the above section.

The Automotive Industry Outlook

CAN FD has been around for only 4 years and is still in the process of being adopted. The vehicles that are already in production still have classical CAN and migration is rather tricky and not very viable.

Automotive OEMs are introducing CAN FD in the new cars by adding the CAN FD transceiver to the vehicle control unit.

It does escalate the hardware cost a little but it is expected to deliver the benefits and RoI, considering the faster data transmission and ECU reprogramming that CAN FD enables.

CAN FD and Classical CAN: The Compatibility Factor

A Classical/Classicalal CAN controller will not be compatible with CAN FD, however, the vice-versa is true. Backward compatibility very much exists between CAN FD and classical CAN.

It implies that both CAN and CAN FD nodes can be used together as CAN FD is backward compatible with Classical CAN. However, special hardware would be required.

Following are some of the reasons why CAN and Can FD backward compatibility is possible:

  • Dependence of data bit-rate on transmission characteristics and physical layer and not on propagation delay.
  • Some of the compatibility issues can be resolved by the transceivers that feature passive partial networking and are both CAN and CAN FD tolerant.

The Conclusion

“The future bandwidth requirements are going to be higher and CAN FD seems to fit the bill. CAN FD is also perfect for communication in Electric Vehicles as they demand higher bandwidths. The communication between the vehicle control units, DC inverter ECU, battery management systems etc. in an EV definitely calls for very high data transmission and inter-ECU communication. CAN FD has a serious use case here.”

Even in gasoline and diesel powered cars, new electronic architectures are under extensive research. We could even possibly witness CAN FD subnets in Powertrain and Body Control Module along with Ethernet. Whatever the future may hold, the legacy of CAN will continue with CAN FD.


  • 0

CAN FD Software Stack Integration Project for a Tier-I supplier

 

Customer:

Our client is a reputed automotive Tier-1 supplier. They are global leaders in manufacturing of various components for vehicle interiors.

They have a formidable reputation in effectively nurturing technology R&D to launch cutting-edge product lines in the market.
 

Business Challenge:

Developing automotive software stacks in-house from scratch can be a time-consuming process.

Innovation centric automotive OEMs’ and Suppliers always prefer to focus on the core product development activities and engage with a capable technology partner for additional support.

Our customer, on the similar lines, decided to integrate a ready-to-deploy CAN FD stack solution to ensure that their product development teams focus on the core activities.

Additionally, our customer wanted to partner with a technology vendor who can provide support for CAN FD stack integration and maintenance services.
 

Why this reputed automotive Tier-I Supplier wanted to migrate from Classical CAN to CAN FD software?

The legacy CAN BUS protocol supports less than 1 Mbit/s bandwidth for automotive ECU data transmission.

However, for several automotive applications, end-of-line testing and ECU software updates, there is need for faster data transmission and support for larger payload.

Since CAN FD software stack supports up to 64 bytes of data, our customer decided to integrate the same across product lines.
 

Embitel Solution:

  • This automotive Tier-I Supplier after initial demonstrations, developed trust in the quality of the source code of our CAN FD stack
  • Our customer also developed confidence in our automotive domain expertise and our experience in integration, testing and maintenance services.
  • We partnered with this renowned automotive supplier for CAN FD stack integration project.

    Following are some of the important features of the integrated CAN FD software solution:

    • The software package consists of the low-level device drivers developed to support hardware abstraction from the underlying hardware platform.
    • This reusable CAN FD stack (CAN FD Interface layer and CAN FD Network Layer) is platform independent (compatible with all 8-bit, 16-bit and 32-bit microcontrollers).
    • The CAN FD software stack is compatible with both non-RTOS and RTOS system.
    • We developed and deployed customized Application Programming Interfaces for the end user application.
  • Our automotive team has successfully integrated the following CAN FD software stack layers:
    • CAN FD Driver
    • CAN FD Interface Layer
    • CAN FD Network Layer
  • The Interface Layer of the CAN FD software protocol stack supports static configuration of Tx and Rx messages.
  • An integration test or sanity test was executed for the end user application after integration of the CAN FD software stack.
  • The CAN FD stack is verified and validated as per the pre-defined test case by ISO 16845 standards.

 

Embitel Impact:

  • Our pre-packed and pre-tested CAN FD protocol stack met the expectations of the customer by providing improved real-time data transfer rates, larger payloads, and backward compatibility.
  • The transport layer configuration was not required in-case of CAN FD due to its higher payload support (64-bytes of data).
  • After integrating the CAN FD stack, our customer realized the benefits of the faster ECU reprogramming and end-of-line software testing speed, due to larger bandwidth support.
  • For instance, in classical CAN the ECU reprogramming used to take 5-6 minutes per ECU. While with CAN FD, it takes 1 minute per ECU.
  • The integration of our pre-tested stack helped our customer to save time and cost on internal R&D. Thus reducing their time-to-market and overall cost of development.

 

Tools and Technologies:

  • Hardware Platform:ST Micro Controller
  • Software IDE:SPC5 Studio
  • Simulator:Vector CAN-FD
  • PC-Lint was used for static analysis of the embedded C code to ensure the code is MISRA-C complaint.
    •