In recent years, disruptive market trends have converged and further accelerated the adoption of Arm-based devices in safety applications. With strong investment from Arm and its partners in this space, it is little surprise to see fast growth in verticals such as industrial, aerospace, and, specially, automotive. Interestingly, from a software development perspective, these applications commonly have a significant portion of C/C++ code created through automatic code generation (ACG). This is because, when following model-based development (MBD) process, ACG helps adhere to coding standards for safety and security, and can simplify verification and portability.
For this reason, earlier this year ETAS and Arm started a close technical collaboration. The objective is to help users of ETAS ASCET-DEVELOPER achieve optimum runtime performance while simplifying toolchain integration with Arm tools, in particular Arm Compiler for Functional Safety. Operating as a subsidiary of Robert Bosch GmbH since 1994, ETAS is recognized as experts in automotive control applications and model-based design. Code generated with ASCET-DEVELOPER has shipped in over 450 million ECUs globally.
Today we are very excited to share the initial results of our partnership. They include hands-on developer resources such as practical guidelines, webinar, technical blog, and example files to help significantly improve engineering efficiency in projects targeting Arm MCUs.
In automotive, one major trend is the consolidation of several ECUs into one high-performance domain or zone controller. This is essential to simplify E/E architecture and deliver cost reduction, while enabling future software-defined vehicle platforms and new business models. Arm processor-based devices are very popular here, as they combine high performance and safety in packages that are both cost and energy efficient. However, this implicates a latent need to port existing safety-relevant functions on to Arm architecture.
Therefore, our engineering teams started off by analyzing how real-world controller models could take advantage of advanced architecture features while requiring minimal changes to both model and generated code. This is important to leverage reuse, keeping projects easily portable.
In one example of existing controller model, we collaborated with consultants at Elsense to analyze the impact of proposed improvements on the worst-case execution time (WCET) of transmission control software running on a Cortex-M7 MCU.
The performance gains achieved through this exercise would put big smiles on their customers’ face. They resulted in 20% faster execution by simply grouping model messages into structures and using Arm C Language Extensions (ACLE) intrinsics for optimized saturated arithmetic. More significantly, however, they achieved approximately 130% faster execution when the former changes were combined with relocation of critical functions into the Tightly Coupled Memory (TCM).
For anyone creating a cost-sensitive volume product, this can translate to lower bill of materials and/or longer product life (for example, more room for upgrades) at the cost of a few hours of engineering. For more details on optimization steps, check out the mini case study co-written with Rob Barnes, Technical Specialist at Elsense.
Besides getting the best performance from Arm-based microcontrollers, it is as important to simplify the setup, usability, and maintenance of a combined toolchain for safety projects. With the rapidly increasing amount of safety-relevant software getting into every function of vehicles, it becomes essential to invest in engineering efficiency to shorten project time and reduce development costs.
Arm Development Studio and ASCET-DEVELOPER are both built on the industry standard Eclipse IDE framework, which means software engineers can complete development tasks across both toolchains with familiarity and ease. Furthermore, a wide variety of complementary tools can be added as plug-ins for a comprehensive workflow fulfilling requirements for traceability, code checking, unit testing and more.
Together, Arm and ETAS are creating a comprehensive set of assets to guide users in their journey to optimize their development workflow and runtime code performance. This includes:
Join the Webinar