Skip to main content

Open source software randomisation framework for probabilistic WCET prediction and security on (multicore) CPUs, GPUs and Accelerators

Running

Running

Organisational Unit
Activity Type
Implementation progress
0%
12 December 2022

Duration: 12 months

Objective

High criticality space systems frequently have real-time requirements. Therefore, it is important to be able to compute the Worst Case Execution Time (WCET) of its software. However, with the complexity of modern processor architectures, it is very difficult to compute the WCET with traditional methods, such as static timing analysis or measurement based solutions. Recently, a novel timing analysis method was introduced, known as Measurement Based Probabilistic Timing Analysis (MBPTA). A unique characteristic of MBPTA compared to traditional methods is that it produces a Probabilistic WCET (pWCET) which instead of a single overestimated value is a curve that associates execution times with probabilities which can reach arbitrary low values (e.g. 10^-14). MBPTA simplifies the estimation of pWCET by simply requiring the collection of execution times which are independent and identically distributed (iid). However, this property is not satisfied in conventional hardware and software systems. Special hardware designs have been proposed which provide hardware-based time-randomisation, including a probabilistic version of Cobham Gaisler's LEON3 as well as software solutions in the form of software randomisation. However, existing software randomisation methods only support CPUs, are very restrictive (i.e. support only ANSI C) and more importantly are not open source. This limits significantly the applicability of these methods in space, although ESA has supported in the past activities related to MBPTA hardware and software (P4S-PROARTIS for Space and EFL-Eviction Frequency Limitation). In addition, despite its use in timing analysis, software randomisation has been extensively used for software security enhancements. In this project, we propose to implement an open source, qualifiable software randomisation tool which will be able to software randomise code for CPUs, including multicores as well as GPUs, which to our knowledge are not amenable to any WCET solution.

Contract number
4000140111
OSIP Idea Id
I-2022-01279
Related OSIP Campaign
New concepts for onboard software development
Main application area
Generic for multiple space applications
Budget
100000€
OPEN SOURCE SOFTWARE RANDOMISATION FRAMEWORK FOR PROBABILISTIC WCET PREDICTION AND SECURITY ON (MULTICORE) CPUS, GPUS AND ACCELERATORS