Reusable software components for on-board systems

Boot Software and Board Support Package for SAMV71Q21(RT) and SAMRH71F20

Main Features

Ready to deploy reusable software items qualified for ECSS standards

Criticality B

Bootloader and Board Support Package pre-qualified for ECSS category B

ECSS compliant

Developed during ESA contracts in compliance to ECSS-E-ST-40C and ECSS-Q-ST-80C

BSW based on ESA SAVOIR

European Space Agency Flight Computer Initialization Sequence Generic Specification

High code and decision coverage

Code and decision coverage required by ECSS standards

SAVOIR compliant bootloader

Technical highlights
  • Model based PUS-C TC/TM stack developed using ASN.1/ACN modelling supported by ESA asn1scc compiler
  • Self test of the critical CPU modules
  • Failure reporting through boot and death reports
  • Bare metal design (no RTOS used)
  • ESA ECSS qualification test suite and data pack
  • Execution from internal or external non-volatile memory
TC/TM link
  • PUS-C TC/TM stack with data model defined in ASN.1
  • TC/TM link available on UART and SpaceWire interface
  • Possibility to update TC/TM interface to CAN and Ethernet
  • Functionalities provided by PUS-C services: 1, 3, 5, 6, 9, 17, 20
  • Delivered with ASN.1 source files and ICD generated by asn1scc compiler
Self-test features
  • Initialization self-test performing following checks
  • Bootloader integrity
  • SRAM and SDRAM memory tests
  • Selected serial interfaces
Configurability
  • Configuration vector allowing to:
    • set default application software image header
    • select bootloader standby mode
    • disable/enable memory caches
    • disable self-testing
  • Additional custom configuration and delta qualification possible
Demonstration version
  • BSW demo working on SAMV71 Xplained Ultra and SAMRH71F20-EK
  • TC/TM link available on UART interface
  • Limited application image size to 16KiB
  • Internal Flash and SRAM supported
  • Example ASW with LED blinking
  • GUI loader application for Windows and Linux

ECSS compliant BSP

Technical highlights
  • Static memory allocation
  • Object-oriented design
  • No dependency on any external library
  • Used as a base for BSW – tested in flight software
  • ESA ECSS qualification test suite and data pack
Drivers supported
  • FPU – Floating Point Unit
  • GMAC – Ethernet
  • MCAN – Controller Area Network
  • MPU – Memory Protection Unit
  • NVIC – Nested Vectored Interrupt Controller
  • PIO – Parallel Input/Output Controller
  • PMC – Power Management Controller
  • PWM – Pulse Width Modulation Controller
  • RSTC – Reset Controller
  • RSWDT – Reinforced Safety Watchdog Timer
  • RTC – Real-time Clock
  • RTT – Real-time Timer
  • SCB – System Control Block
  • SDRAMC – SDRAM Controller
  • SPI – Serial Peripheral Interface
  • SUPC – Supply Controller
  • SYSTICK – System timer
  • TC – Timer Counter
  • TWIHS – Two-wire Interface
  • UART – Universal Asynchronous Receiver Transmitter
  • WDT – Watchdog Timer
  • XDMAC – DMA Controller
SAMV71Q21 only
  • AFEC – Analog Front-End Controller
  • DACC – Digital Analog Converter Controller
  • EEFC – Enhanced Embedded Flash Controller
  • ISI – Image Sensor Interface
  • LPOW – Low-power modes
  • QSPI – Quad Serial Peripheral Interface
SAMRH71F20 only
  • HEFC – Hardened Embedded Flash Controller
  • FLEXCOM – Flexible Serial Communication Controller
  • FLEXRAMECC – FlexRAM Memory and Embedded Hardened ECC Controller
  • HEMC – Hardened External Memory Controller (including HECC)
  • HSMC – Hardened Static Memory Controller
  • MATRIX – Bus Matrix
  • SPW – SpaceWire
  • TCMHECC – TCM Hardened Error Correction Code
RTEMS integration layer
  • RTEMS BSP implementation based on ECSS qualified BSP
  • RTEMS BSP is a minimal set of drivers needed for booting RTEMS on the target platform
  • It includes wrappers for the SYSTICK, RTC and UART drivers for the N7S BSP
  • All drivers from the ECSS qualified BSP can be integrated into RTEMS – the code is portable and the IRQ layer of the drivers is an abstraction, hat can be integrated by users with both bare-metal and RTOS-based applications.

Download

For evaluation purpose N7 Space provides demo binary of the bootloader and application software. Usage of the bootloader is supported by BSW tool provided for Linux and Windows systems. This tool allows to flash selected application image using bootloader demo binary.

Linux Windows User Manual