Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Tools, Software and IDEs blog Software building blocks for faster functional safety certification
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tags
  • Real Time Operating Systems (RTOS)
  • Arm Compiler for Embedded FuSa
  • Arm Compiler
  • Cortex-M
  • functional safety
  • CMSIS RTOS
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Software building blocks for faster functional safety certification

Christopher Seidl
Christopher Seidl
February 12, 2019
3 minute read time.

Many products in markets such as automotive, industrial, railway, and healthcare are required to be certified against functional safety standards. In the standards, safety integrity levels (SIL) specify the methods to be used during development for verifying that the application code, software components and toolchains are safe for the intended use.

If you are creating it from scratch, developing and optimizing complex safety-related applications is challenging. Pre-qualified software components help to reduce the time and effort required for the final certification. Arm has software, tools and platforms dedicated to developing applications for functional safety they simplify system design and accelerate the verification and validation process.

The Functional Safety Run-Time System (FuSa RTS)

Arm offers the Functional Safety Run-Time System (FuSa RTS), a set of qualified components for Cortex-M microcontrollers that lets developers use the highest safety integrity levels (SIL) for their end applications. It includes:

  • Keil RTX5 real-time operating system (RTOS)
  • A derivative of the Arm C library with the most commonly used C library functions
  • Event Recorder for visibility to the dynamic operation of the software
  • CMSIS-Core (the Arm specific part)

RTS is certified by TÜV SÜD for use in automotive, industrial, medical, and railway systems.

Together with the TÜV-certified Arm Compiler toolchain, you can create and deliver a reliable, more secure and highly optimized end user application, while getting the product to market faster.

Functional safety building blocks Arm Cortex-M

RTS components

Keil RTX5 is a proven and well-established RTOS in the embedded space. Its predecessors have been around for more than 20 years. The latest implementation is the reference design for the CMSIS-RTOS API v2. It is easy to use and well supported within the µVision IDE/debugger, which features RTX aware tools enabling you to quickly debug your RTX applications. As it is royalty-free, there are no run-time royalty payments or other hidden charges. Ship your RTX based products without further fees or recurring costs. It offers flexible, low-latency scheduling, allowing you to use the best suited one in your application. It delivers fully deterministic behavior meaning that events and interrupts are handled within a predefined time (deadline). Your application can rely on consistent and known process timings. Finally, it is specifically written for applications running on Arm Cortex-M based MCUs. It runs quickly and requires only minimal MCU resources with a memory footprint as small as 5 KB (ROM).

The Event Recorder offers an API (function calls) for event annotations to be added to the application code. These functions record events along with timestamps and additional information. The data is stored in the event buffer located in the RAM of the target hardware. The µVision debugger reads the content of the event buffer and displays it in multiple windows, depending on the data and its usage.

The Arm core specific part of CMSIS-Core provides a hardware abstraction layer (HAL) for Cortex-M processor registers with standardized definitions for the SysTick, Nested Vectored Interrupt Controller (NVIC), System Control Block (SCB), MPU, and FPU registers, as well as core access functions.

The Arm functional safety C library implements a restricted subset of functions specified in the ISO C99 C language standard and comes with usage guidelines and examples on how to work effectively with it. The following functions are included:

  • Math routines (acos, asin, log, etc.)
  • Buffer manipulation routines (memcpy, memset, etc.)
  • Character routines (isalnum, isalpha, toascii, etc.)
  • Data conversion functions (abs, labs, etc.)
  • String routines (strcat, strcpy, etc.)

More about functional safety tools

Anonymous
Tools, Software and IDEs blog
  • What is new in LLVM 20?

    Volodymyr Turanskyy
    Volodymyr Turanskyy
    Discover what's new in LLVM 20, including Armv9.6-A support, SVE2.1 features, and key performance and code generation improvements.
    • April 29, 2025
  • Running KleidiAI MatMul kernels in a bare-metal Arm environment

    Paul Black
    Paul Black
    Benchmarking Arm®︎ KleidiAI MatMul kernels on bare-metal with AC6, GCC, and ATfE compilers.
    • April 17, 2025
  • Migrating a project from GCC to Arm Toolchain for Embedded

    Paul Black
    Paul Black
    Learn about migrating software projects to Arm Toolchain for Embedded in this blog post.
    • March 28, 2025