Do teams take as much care and effort in choosing their compiler as they do their microcontroller? It’s such a critical question that we work closely with HighTech EDV-Systeme GmbH, a member of the ST Partner Program and the largest commercial open-source compiler vendor. The company, which focuses on automotive applications, announced in 2022 supporting our latest Stellar SR6x integration microcontrollers on top of the existing compatibility with our SPC5x devices. It was the first time the HighTec compiler supported one of our automotive-grade microcontrollers with a Cortex core. Let us thus explore why it is a milestone and why choosing the right compiler is as important as selecting the right processor.
Table of Contents
The importance of the close partnership between compiler vendor and silicon maker
What were the first fruits of this partnership?
The collaboration between ST and HighTec dates back to 2011. Automotive module makers have had to deal with numerous systems and manufacturers, which means that using one compiler for many projects is essential. Concretely, the HighTec compiler allowed short build times and fast execution speed of the application in conjunction with the most stringent requirements of the ISO 26262 standard. And as we worked with HighTec, module makers adopted our SPC devices without drastically changing their workflows. Additionally, our close collaboration enabled our customers to take advantage of the features we provided on our hardware platform more rapidly. In a nutshell, beyond supporting ST devices, HighTec helps developers with optimized run-time performance and build times.
What to look for in a compiler vendor?
Looking at the historical context of our partnership with HighTec, it is easy to understand why a close relationship between the silicon and compiler vendors is essential. The right compiler is one that reflects a collaboration with chip makers by receiving frequent updates, compatibility with new devices, and significant performance optimizations. This close interaction also led the ST Authorized Partner to recommend our devices when providing consulting services. As we work with HighTec to ensure they have access to the right expertise and documentation, the company can better serve its community by providing the best recommendations to its customers.
The foundational quality of the hardware platform
Why did we create the Stellar SR6?
The partnership between ST and HighTec explains why the compiler is now compatible with Stellar SR6 devices. Thanks to their Cortex-R52+ cores, the ST Integration MCUs provide real-time and deterministic performances. As the name implies, they aim to integrate modules into one platform, which explains why they share interfaces, such as Ethernet, CAN-FD, CAN-XL, or LIN, and why to run multiple virtual machines on them. The SR6G (also called Stellar G) targets zone controllers, gateways, and body integration by creating a hub managing the I/Os, data, and power consumption. The Stellar P (SR6P) devices, on the other hand, help simplify designs by integrating drivetrains and domain-oriented applications onto one platform.
How do the Stellar SR6 drive innovation?
The Stellar SR6 devices are highly symbolic because the philosophy behind their specification reflects the new trends in software-driven vehicles. For instance, the SR6G7 was recently a highlight of the prestigious VLSI 2023 conference thanks to its embedded phase change memory that nearly doubles in capacity when in full over-the-air mode. Thanks to years of R&D, ST was able to show how car makers could more easily and cost-effectively implement over-the-air updates. Hence, ST’s line of Integration microcontrollers aims to solve some of the development challenges inherent to the new applications powering vehicles.
HighTec and the critical building blocks of its software ecosystem
What does a flexible and pragmatic ecosystem look like?
When HighTec announced supporting our Stellar SR6 devices, the company made a point to emphasize compiler support and performance optimization. Indeed, our teams worked closely together to ensure that developers could more easily take advantage of our hardware features when using HighTec’s ecosystem. Whether programmers want to use our encryption capabilities, a hardware security module (HSM), the new OTA functionalities, or ST’s software components, such as MCAL, or the Safety and Security packs, HighTec not only baked-in support but acquired expertise to further its consulting services.
How have past and present decisions impacted the future?
Behind the scenes, the rapid adoption of our Cortex devices was possible because of technical choices HighTec made decades ago. Indeed, early in the 1990s, the company prioritized open-source compilers, which was unusual then, especially for a vendor in the automotive industry. The company first settled on GCC and then moved to LLVM around 2015 due to licensing reasons and because there was a clear trend within the industry. Consequently, the open-source aspect inspired developers looking to abandon proprietary solutions, while LLVM ensured the company could rapidly support ARM architectures.
Today, ST and HighTec work on new applications in EVs that have unique requirements. For instance, MCUs like the Stellar SR6 have a general timer module (GTM) that developers can program in C to generate I/O signals and thus offload the main CPU. These GTMs are essential when driving silicon carbide (SiC) transistors, which are increasingly necessary to improve efficiency and battery life. However, the high frequency needed to drive these new devices means developers must create a high-performance code with performance similar to assembly and thus require extreme optimizations at the compiler level. Put simply, choosing the right compiler is crucial not only for today’s applications but tomorrow’s as well.