Your browser does not support JavaScript! Skip to main content
Free 30-day trial Customer portal Careers DO-178C Handbook
 
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

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.18 Launched
Solid Sands partners with Rapita Systems
Danlaw Acquires Maspatechnologies - Expanding Rapita Systems to Spain
Rapita co-authored paper wins ERTS22 Best paper award
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

Aerospace Tech Week Europe 2023
2023-03-29
Aeromart Montreal 2023
2023-04-04
Certification Together International Conference
2023-05-10
View Events

Technical resources for industry professionals

Latest White papers

DO178C Handbook
Efficient Verification Through the DO-178C Life Cycle
A Commercial Solution for Safety-Critical Multicore Timing Analysis
Compliance with the Future Airborne Capability Environment (FACE) standard
View White papers

Latest Videos

Streamlined software verification with RVS 3.18
Sequence analysis with RapiTime
Visualize call dependencies with RVS thumbnail
Visualize call dependencies with RVS
Analyze code complexity thumbnail
Analyze code complexity with RVS
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 930 46 42 72
info@rapitasystems.com
Rapita Systems S.L.
Parc UPC, Edificio K2M
c/ Jordi Girona, 1-3, Office 306-307
Barcelona 08034
Spain

Working at Rapita

Careers

Careers menu

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

There are how many sources of interference in a multicore system?

Breadcrumb

  1. Home
  2. Blog
  3. There are how many sources of interference in a multicore system?
Daniel Wright & Christos Evripidou
2022-08-02

Multicore processors are being used more and more in the development of critical embedded electronics, including avionics and automotive electronics. This is due to increasing demands on application functionality, the improved SWaP (size, weight and power) characteristics of these processors, and the increasing difficulty in sourcing single core processors.

One of the main challenges in the adoption of multicore processors in critical electronics systems is that software running on one core can affect the execution of software running on another core. Multicore platforms are inherently non-deterministic with regards to their timing behavior, which poses a challenge for certification e.g. in accordance with DO-178C and AC 20-193, AMC 20-193 or CAST-32A guidance for aerospace software. Platform features that contribute to non-determinism are known as interference channels (Figure 1). These features can affect the ability of hosted software to meet its requirements. Some interference channels are obvious, but others are a little harder to identify. In this post, we discuss some of the better and less well-known sources of interference in multicore systems, using the NXP® T2080 processor as an example.

 
Image showing multicore interference
Figure 1. Interference can result from resources used by different cores in a multicore system
 

Types of interference

Interference channels can be classified in three categories: direct, indirect, and unknown.

Examples of direct interference channels include shared on-chip resources such as shared caches, buses and memory management units, and off-chip resources such as I/O devices. Each shared resource may have multiple interference channels associated with it. The T2080 features an L2 cache that is shared across the four e6500 cores (Figure 2). Examples of direct interference channels relating to the L2 cache include one core causing the eviction of another core’s data from the cache, and the L2 cache having a limited bandwidth that is saturated by the four cores accessing the cache simultaneously.

 
Image showing NXP T2080 board architecture
Figure 2. NXP T2080 board architecture (image used with permission from NXP)
 

An example of an indirect interference channel on the T2080 is the potential slowdown induced by an excess of snoop requests on private caches due to cache coherency operations (Figure 3). Cache coherency is a mechanism by which shared data that gets loaded in private caches is updated to ensure that it is consistent with the data in main memory (depending on the configuration of the cache). Typically, when a core accesses shared data, the cache coherency mechanism will trigger snoop requests in order to detect any data in caches that needs to be invalidated.

 
Image showing how snoop requests can cause multicore interference
Figure 3. Snoop requests by cache coherency mechanisms are an example of indirect interference channels
 

Unknown interference channels are typically due to undocumented platform features. An example of these could be differences in the core’s performance and/or sensitivity to multicore interference due to the physical memory layout.

Identifying interference channels

The interference channels present in a platform depend on the chip and board architecture, the critical configuration settings of the system, which off-chip devices are being used, and how they are being used. For DO-178C certification in line with AMC 20-193 or CAST-32A guidance, all the active interference channels in a multicore system must be identified and considered.

Identifying the potential interference channels in a specific system requires access to be available to comprehensive documentation describing multicore hardware from board and chip manufacturers and RTOS vendors, and the input of specialized engineers. The number of interference channels in a multicore system may be larger than you’d expect – having run a few projects involving the T2080, we’ve identified more than 150 potential interference channels on this system, depending on the configuration settings and peripherals used.

Learn more about interference

Do you need to identify the sources of interference on your system, or want to know more about sources of interference? Rapita’s MACH178 solution and Multicore Timing Solution can help you.

DO-178C webinars

DO178C webinars

White papers

DO178C Handbook Efficient Verification Through the DO-178C Life Cycle
A Commercial Solution for Safety-Critical Multicore Timing Analysis
Compliance with the Future Airborne Capability Environment (FACE) standard
5 key factors to consider when selecting an embedded testing tool
  • 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