Your browser does not support JavaScript! Skip to main content
Free 30-day trial Customer portal Careers DO-178C Handbook DO-178C Multicore Training
Rapita Systems
 

Industry leading verification tools & services

Rapita Verification Suite (RVS)

  RapiTest - Unit/system testing   RapiCover - Structural coverage analysis   RapiTime - Timing analysis (inc. WCET)   RapiTask - Scheduling visualization   RapiCoverZero - Zero footprint coverage analysis   RapiTimeZero - Zero footprint timing analysis   RapiTaskZero - Zero footprint scheduling analysis

Multicore Verification

  MACH178  Multicore Timing Solution  RapiDaemons

Engineering Services

  V & V Services  Qualification  Training  Tool Integration  Support

Industries

  Aerospace (DO-178C)  Automotive (ISO 26262)  Space

Other

RTBx Mx-Suite Software licensing Product life cycle policy RVS development roadmap

Latest from Rapita HQ

Latest news

RVS 3.19 Launched
Rapita is proud to be an ISOLDE Partner
Rapita and SYSGO underline partnership
RVS 3.18 Launched
View News

Latest from the Rapita blog

Measuring response times and more with RapiTime
Why mitigating interference alone isn’t enough to verify timing performance for multicore DO-178C projects
There are how many sources of interference in a multicore system?
Supporting modern development methodologies for verification of safety-critical software
View Blog

Latest discovery pages

do178c DO-178C Guidance: Introduction to RTCA DO-178 certification
matlab_simulink MATLAB® Simulink® MCDC coverage and WCET analysis
code_coverage_ada Code coverage for Ada, C and C++
amc-20-193 AMC 20-193
View Discovery pages

Upcoming events

DO-178C Multicore In-person Training (Huntsville)
2023-10-03
HISC 2023
2023-10-17
NXP's MCFA 2023
2023-10-24
DO-178C Multicore In-person Training (Toulouse)
2023-11-07
View Events

Technical resources for industry professionals

Latest White papers

Sysgo WP
Developing DO-178C and ED-12C-certifiable multicore software
DO178C Handbook
Efficient Verification Through the DO-178C Life Cycle
A Commercial Solution for Safety-Critical Multicore Timing Analysis
View White papers

Latest Videos

Viewing software behavior at a glance with RVS treemaps
Using support functions with RapiTest
Thumbnail
Streamlined software verification with RVS 3.19
Challenges of certifying multicore avionics in line with A(M)C 20-193 objectives - ATW Europe 2023
View Videos

Latest Case studies

Supporting ISO 26262 ASIL D software verification for EasyMile
RapiCover’s advanced features accelerate the certification of military UAV Engine Control
Front cover of whitepaper collins
Delivering world-class tool support to Collins Aerospace
View Case studies

Other Downloads

 Webinars

 Brochures

 Product briefs

 Technical notes

 Research projects

Discover Rapita

Who we are

The company menu

  • About us
  • Customers
  • Distributors
  • Locations
  • Partners
  • Research projects
  • Contact us

US office

+1 248-957-9801
info@rapitasystems.com
Rapita Systems, Inc.
41131 Vincenti Ct.
Novi
MI 48375
USA

UK office

+44 (0)1904 413945
info@rapitasystems.com
Rapita Systems Ltd.
Atlas House
Osbaldwick Link Road
York, YO10 3JB
UK

Spain office

+34 93 351 02 05
info@rapitasystems.com
Rapita Systems S.L.
Parc UPC, Edificio K2M
c/ Jordi Girona, 1-3
Barcelona 08034
Spain

Working at Rapita

Careers

Careers menu

  • Current opportunities & application process
  • Working at Rapita
Back to Top

Validation of COTS Ada Compiler for Safety-Critical Applications

Breadcrumb

  1. Home
  2. Resources
  3. Validation of COTS Ada Compiler for Safety-Critical Applications

Validation of COTS Ada Compiler for Safety-Critical Applications

  Download
.

To ensure that software developed for safety-critical systems is fit for purpose, every part of the development process needs to be evaluated. One critical element is the compiler, used to convert human-readable source code into object code.

Compilers for the Ada programming language are already subject to a compiler conformity assessment, which shows that a given compiler correctly implements the Ada language specification. However, this assessment does not consider the suitability of the generated code for deployment to safety-related applications.

 

Summary

The challenge

  • Outsource the compiler validation task, to reduce costs and effort from the systems integrator, while maintaining an equivalent level of rigour in the results.

The solution

  • The compiler verification was outsourced to Rapita Systems, who completed the work on time and on budget.

The benefits

  • A new compiler is now available to be deployed on any projects that need it, without additional validation costs.
  • A number of dangerous and questionable issues have been identified in the compiler, which can now be avoided through guidance on using the compiler.

The challenge

One frequently adopted approach to demonstrating the suitability of generated code is to manually review the inputs and outputs of the compiler wherever the compiler is used, in other words, to review the entire object code of the application.

An industry-leading avionics system integrator has adopted an alternative approach, which involves examining the output of the compiler over a large set of test cases, to ensure that the generated code does not use non-deterministic, or overly-complex features, which could be hazardous.

 
Flight control collumn
 

The benefit of this approach means, once validated, the same compiler can be deployed to multiple projects, without needing to perform a manual analysis on every project.

The level of compiler validation performed by the systems integrator provides the level of assurance required for safety-critical systems, but is both expensive and complex, and ties up good engineers for long periods of time.

The systems integrator decided to outsource their compiler verification activity to Rapita Systems to reduce costs and free up valuable engineering effort.

The solution

Rapita Systems, a software verification company based in York, was approached as a possible partner for outsourcing the compiler validation work.

As a spin-out of the Real-Time Systems group at the University of York, Rapita had familiarity with the original study which led to the compiler validation work, with the Ada programming language and with the processes surrounding tool qualification.

To perform the work, Rapita adopted the test cases and processes used by the systems integrator in their previous validation of a compiler. The test cases were arranged in batches of roughly descending risk.

Each test case underwent a standard process:

  • Porting. The capabilities of the new compiler meant that in some situations, the extensive test suite required porting, in order to exercise the compiler properly, for example to avoid compiler optimizations. In these cases, the test code was modified.
  • The test cases were compiled using a local (to Rapita Systems) version of the compiler. Initially, the outputs of the locally-generated tests were compared against tests compiled at the system integrator’s premises, to ensure the correctness of the compiler’s configuration.
  • The compiled test cases were analysed by a team of engineers considering a number of specific classes of phenomena, initially defined by the system integrator and enhanced by Rapita Systems.

The benefits

The outsourcing project has been successful: the compiler validation work was completed to time, to budget, and to the satisfaction of the system integrator’s tools group.

As a consequence of this work, the systems integrator is now using the new compiler on a number of safety-critical projects within a larger program, without the per-use validation overhead typically encountered.

 
Plane
 

Within the compiler validation activity, Rapita’s team identified a number of issues categorised as either “dangerous” or “questionable”, for which the system integrator’s tools group were able to develop guidance that would avoid such issues.

Rapita have developed procedures that will enable them to repeat this compiler validation activity on future programs as needed.

Next Steps

If you want to learn how our consultancy services can help you, contact us.

Other case studies

Case study Cover
Collins Case Study Cover
Triumph Case Study Cover
  • Solutions
    • Rapita Verification Suite
    • RapiTest
    • RapiCover
    • RapiTime
    • RapiTask
    • MACH178

    • Verification and Validation Services
    • Qualification
    • Training
    • Integration
  • Latest
  • Latest menu

    • News
    • Blog
    • Events
    • Videos
  • Downloads
  • Downloads menu

    • Brochures
    • Webinars
    • White Papers
    • Case Studies
    • Product briefs
    • Technical notes
    • Software licensing
  • Company
  • Company menu

    • About Rapita
    • Careers
    • Customers
    • Distributors
    • Industries
    • Locations
    • Partners
    • Research projects
    • Contact
  • Discover
    • AMC 20-193
    • What is CAST-32A?
    • Multicore Timing Analysis
    • MC/DC Coverage
    • Code coverage for Ada, C & C++
    • Embedded Software Testing Tools
    • Aerospace Software Testing
    • Automotive Software Testing
    • Certifying eVTOL
    • DO-178C
    • WCET Tools
    • Worst Case Execution Time
    • Timing analysis (WCET) & Code coverage for MATLAB® Simulink®

All materials © Rapita Systems Ltd. 2023 - All rights reserved | Privacy information | Trademark notice Subscribe to our newsletter