Infotainment updates in cars: Why delta technology is better than compression
There is a lot of talk about software revolutionising the automotive industry and the conversation is growing because of how software management will impact the whole business of recalls.
The outrageous amount of good money going after bad is the reason why car manufacturers and tier one suppliers are looking for an optimised and alternative way to reduce the amount of time it takes to deliver a software update, reducing the cost associated with recalls and improving customer satisfaction.
If the same method for performing automotive software updates in production, at the dealer or at home continue, so will the inefficiencies that are causing car manufacturers to pay hundreds of millions of dollars every year.
Smallest update size possible
When doing a software update through over-the-air transmission or a cable, one goal is to deliver the smallest update package possible so as to reduce update time and cost.
There are several methods to reduce the update file size, but the two most notable are compression and delta (differential) update – only sending the code that is different between the old software that needs to be updated and the updated software.
With both technologies the goal is to reduce the number of bytes that are being delivered to:
- Reduce the download time - the new software needs to quickly get to the car’s gateway (e.g. head-unit) in order to start the update process
- Decrease the amount of needed memory – after the new version is delivered, there needs to be room to store it before the update is started
- Decrease the transport time between the gateway and the target ECU – in case of ECU update the new version needs to go through the CAN/LIM/NOST bus which is limited in bandwidth
- Reduce the update time – the update time depends in some cases on the amount of changes that exist in the new version
Comparing delta with compression
There are tests conducted by leading automotive companies and scientific research that shows in detail the comparison between compression solutions and delta update technologies.
Vector, an embedded company, worked with Red Bend on a proof-of-concept testing the efficiency of the delta technology. Vector chose an NXP chipset which is common in ECUs, such as the powertrain, and connected it to vFlash via the canbus. The vFlash functions as the off-board tester for managing the reflash process. Vector ran an ECU reflash three times - one with a software full image, one with a compressed image and the third with using Red Bend’s delta technology combined with Vector’s bootloader.
As you can see in the chart above, the efficiency of the delta technology is much greater than any compression technology (LZ77 in this case). Using compression, the file went from 4.1MB to 2.5MB. Using delta technology, the file went down to 128KB. There are interesting results that also support delta technology when you compare programming time associated with different processes and technologies.
For the full download, programming time was 215 seconds; compression and pipelining, 124 seconds; compared to a delta program time of only 63 seconds.
Also Dr. Ralf Schmidgall in his thesis “Automotive Embedded Systems Software Reprogramming “ analysed the methods of reducing the size of the version when doing software update. In the below table Dr. Schmidgall summarises the results of a theoretical case study to compare the approaches.
It is obvious that the delta technology results in a much smaller file than any method of compression and the impact on the update time is dramatic, even if the speed of the CAN bus is increased to 1000Kbit/sec also in this case the advantages of delta is clear.
In his summary Dr. Schmidgall wrote that “Differential file update provides the best theoretical results of all researched approaches…..If the increase of ECU software sizes continues in future, this approach might be the only sustainable one to solve the problem of increasing reprogramming times.”
Delta technology is a proven, safe and cost-effective method for car manufacturers to manage the car software evolution and it is much better than any compression method.