Nebula Public Library

The knowledge bank of ESA’s R&D programmes

ARM board support package criticality B qualification

Programme Reference
Prime Contractor
N7 Space
Start Date
End Date
ARM board support package criticality B qualification
The objective of this activity is the development and criticality B qualification of on-board software components for Microchip ARM Cortex-M7 processors.
The basic element of the satellite subsystem is the on-board computer, which usually consists of standard elements such as: processor, memory, dedicated FPGAs and input/output interfaces. The on-board computer is responsible for executing the software that accomplishes the mission's objectives. In accordance with the ESA requirements, the software consists of at least two layers: boot and application software.
The basic software element is a library of software drivers providing an abstract layer of access to the on-board computer subsystems, the so-called Board Support Package (BSP). This layer can be used many times in projects based on similar on-board computer architecture (e.g. the same processor architecture or interfaces). The driver library can be used by both the Bootloader and Application Software.
The first program started by the on-board computer is Bootloader. This program plays a role similar to the BIOS of a typical PC. Performs basic processor initialization, performs hardware tests, allows to update application software, and run it. In the case of space missions, Bootloader is absolutely critical. In practice, its failure means that it is not possible to start the application software, and thus to achieve the objectives of the mission. For space missions, this element is subject to ESA standardization in accordance with SAVOIR requirements. As a result, the bootloader software can be reused for processors with the same architecture.
Application software is responsible for achieving the mission's objectives. Its architecture also includes reusable elements (e.g. BSP, libraries providing support for standard PUS services or protocols). However, the design of application software depends to a large extent on the requirements of a given mission.
This purpose of this activity is to further develop and qualify the on-board software components for ARM CPUs already developed in previous ESA activities from criticality C or that were not subject to formal qualification process to criticality B based on European Cooperation for Space Standardization (ECSS) requirements.
Due to the high criticality level confirmed by ESA, these on-board software components will be subject to use in critical payload and platform subsystems? missions and no additional cost for its requalification will be necessary, reducing thus the risk and costs associated with product and subsystem development based on new processors.
The activity shall contain the following tasks and subtasks:
    • Qualification of the Bootloader and BSP from criticality level C to criticality level B for SAMV71 CPU.
        • Completion of tests to achieve 100% code coverage while keeping Modified Condition/Decision Coverage (MCDC) coverage at current level of 85%.
        • Preparation of qualification documentation.
    • Finalization of the Bootloader and BSP development for RH71 and Jaguar CPUs.
        • Further development of BSP, extension with CAN driver.
        • Completion of the unit, integration and validation tests to reach criticality B required metrics.
        • Execution of the ECSS based process and all required Vamp;V activities for criticality B.
    • Development and qualification of dedicated BSP for RTEMS operation system allowing users to build application software on top of BSP.
        • Development of the BSP based on RTEMS guide.
        • Contribution to open-source RTEMS project.
Preparation of qualification data pack
Application Domain
Generic Technologies
Technology Domain
1 - On-board Data Subsystems
Competence Domain
3-Avionic Systems
Initial TRL
Target TRL