IAR Systems adds new functionality to its development tools for Renesas’ RH850 automotive microcontrollers (MCUs). The latest version of the complete C/C++ compiler and debugger toolchain IAR Embedded Workbench for Renesas RH850 can now optionally generate position-independent code and/or position-independent data.
The added functionality is very useful in systems where applications are loaded dynamically. When using position-independent code and read-only data (ROPI), the compiler in IAR Embedded Workbench for RH850 will generate code that uses PC-relative references for addressing code and read-only data. Even though the linker places the code and read-only data at fixed locations, the application will still be executed correctly when the image is placed at a different address. Typical use cases for dynamically loaded applications within the automotive industry include, for example, when using the capability of the application to upgrade its own firmware over CAN (Controller Area Network).
Through IAR Embedded Workbench, IAR Systems provides its customers with the market’s most diverse MCU support as well as adapted licensing options to fit different organizations’ needs, including a functional safety edition certified by TÜV SÜD according to IEC 61508, ISO 26262, and EN 50128. This flexibility is extended to the built environment as the build tools support implementation in Linux-based frameworks for automated application build and test processes. The tools enable large-scale deployments of critical software building and testing and are suitable for installations ranging from a few licenses on a small build server, to massive installations with several hundreds of parallel builds active at the same time.
The toolchain is compliant with the latest C language standard ISO/IEC 9899:2018 and the latest C++ standard ISO/IEC 14882:2017, ensuring high-quality, future-proof code. To simplify peripheral setup, IAR Embedded Workbench for RH850 supports the Renesas Smart Configurator tool, which enables automatic generation of control programs for peripheral modules, and pin set from the GUI with built-in cross-checks to avoid potential contention with multiplexed functions.