Shared Memory Freedom From Interference via Arbiter Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing environments, such as automobiles, failures in non-critical processes can propagate to critical processes due to shared memory usage, leading to undesirable consequences like safety function failures.

Innovation Solution

The system partitions memory into critical and non-critical domains, using an arbiter circuit to manage access and prevent unauthorized access between these domains, ensuring independence and isolating critical processes from non-critical processes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory is shared between critical and non-critical processes, then resource utilization is improved, but reliability deteriorates due to failure propagation

Engineering Contradiction:
Improveresource utilizationVSAvoidfailure propagation
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The memory system is segmented into multiple independent banks, where each bank can be independently accessed by critical or non-critical processes. This segmentation prevents failure propagation while maintaining resource utilization, as a failure in one bank does not affect other banks.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An intermediary control mechanism is introduced to manage memory access requests from both critical and non-critical processes. This intermediary ensures that non-critical processes cannot cause failures to propagate to critical processes, thus maintaining reliability while allowing shared access.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If memory is partitioned into separate critical and non-critical domains, then reliability is improved by preventing failure propagation, but resource utilization deteriorates

Engineering Contradiction:
Improvefailure isolationVSAvoidresource utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory allocation is made dynamic rather than static. Memory banks can be dynamically assigned to critical or non-critical processes based on current system needs, allowing the system to maintain reliability through isolation when needed while maximizing resource utilization when processes are functioning normally.

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If full memory access is allowed for all processes, then ease of operation is improved, but reliability deteriorates due to unauthorized access

Engineering Contradiction:
Improvememory access freedomVSAvoidunauthorized access
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

Different access permissions are assigned to different processes based on their criticality level. Critical processes receive full access permissions to their designated memory banks, while non-critical processes receive restricted access permissions. This local differentiation of access rights maintains ease of operation for critical functions while preventing unauthorized access that could compromise reliability.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250307052A1Shared memory freedom from interference system
Publication Date: 2025.10.02 ATI TECHNOLOGIES ULC
  • US20250307052A1 patent drawing
  • US20250307052A1 patent drawing
  • US20250307052A1 patent drawing

AI summary

A processing system includes a memory circuit that includes a first portion that stores critical data and a second portion that stores non-critical data. An arbiter circuit transmits first memory requests and corresponding data between a first processing circuit that performs critical processes and the memory circuit. The arbiter circuit also transmits second memory requests and corresponding data between a second processing circuit that performs non-critical processes and the memory circuit. The arbiter circuit prevents unauthorized memory requests between the first and second processing circuits and the memory circuit, establishing freedom from interference between the critical and non-critical processes. The freedom from interference prevents some errors from propagating from the non-critical processes to the critical processes, enabling a critical process to continue functioning after a non-critical process fails. When the processing system is implemented in an automobile, safety features continue to function after a failure to other features.