The evolution of embedded automotive software is driven by increasing demands in driver assistance, perception, and data processing. To meet these challenges, Ampère is transitioning toward a Software-Defined Vehicles (SDV) architecture. This shift aims to reduce the number of Electronic Control Units, cutting system complexity, cabling, and weight---thus reducing cost and energy consumption, and enabling more powerful centralized computing for advanced tasks such as computer vision and AI. This transition challenges the traditional toolchain based on Simulink/Stateflow, which generates standard-compliant C code under a periodic execution model. While well established, this paradigm leads to inefficiencies in SDV architectures, including redundant processing and communication overloads, which currently require manual optimization at the C level. In addition, verifying safety properties is costly, and the model lacks support for modern, event-driven or asynchronous execution semantics. To align with SDV requirements, Ampère is adopting Rust, a language offering strong safety and cybersecurity guarantees at compile time. However, Rust’s low-level control and expressiveness introduce a steep learning curve for developers coming from model-based backgrounds. To bridge this gap, we propose GRust, a declarative Domain-Specific Language (DSL) for automotive system modeling. GRust combines the Synchronous paradigm---familiar to control engineers---with constructs from Functional Reactive Programming (FRP). It enables explicit modeling of temporal and data dependencies as part of system behavior, rather than relying on implicit execution semantics. GRust compiles to safe and asynchronous Rust code, well-suited to modern SDV architectures. We evaluated GRust by reimplementing existing Rust programs from Ampère’s SDV codebase and integrating them into their simulation framework. Early results show gains in development speed and code clarity while preserving performance, supporting GRust as a practical bridge between high-level modeling and Rust-based SDV development.
Thomé et al. (Tue,) studied this question.