Memory Protection Unit Supervisor Mode Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory protection schemes in signal processing systems are vulnerable to alterations in process IDs by software executing in supervisor mode, particularly in security and safety-critical applications like automotive, industrial, and aerospace, where high levels of security and safety are required.

Innovation Solution

A memory protection unit that compares instruction memory region indications to permitted memory region indications for target addresses, restricting access to protected memory regions based on the association between memory regions containing program instructions, rather than relying solely on process IDs, thereby preventing unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional process ID-based memory protection is used, then memory access control is provided for user mode applications, but security is compromised when software executes in supervisor mode and can alter process IDs

Engineering Contradiction:
Improvememory protection securityVSAvoidsupervisor mode operation capability
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent segments memory into distinct protected regions, each with its own access authorization rules. Instead of relying on a single process ID mechanism, the system divides memory protection into multiple independent regions that can be individually secured against supervisor mode alterations. This segmentation ensures that even if process IDs are modified, unauthorized access to protected regions remains prevented.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary memory protection unit that sits between the processor and memory, intercepting and evaluating memory access requests. This intermediary checks whether accessing instructions originate from authorized instruction memory regions, providing an additional layer of security that operates independently of process ID integrity. The intermediary validates access based on regional authorization rather than relying solely on process ID authentication.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If process ID-based memory protection is implemented, then memory access rights are controlled, but the system becomes vulnerable when process IDs can be altered by supervisor mode software

Engineering Contradiction:
Improvememory access controlVSAvoidunauthorized memory access
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent establishes access authorization rules for memory regions in advance, before any potential security violations can occur. Protected regions are pre-configured with specific instruction memory region permissions, creating a proactive defense mechanism. This preliminary configuration ensures that even if process IDs are altered during runtime, the pre-established regional authorization rules continue to enforce proper access control.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The memory protection unit acts as an intermediary that evaluates memory access requests against pre-configured authorization rules. Rather than relying on process IDs alone, the intermediary checks whether the accessing instruction's memory region is authorized to access the target protected region. This intermediary layer provides continuous validation that prevents unauthorized access regardless of process ID state.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If supervisor mode execution is permitted, then system functionality is enhanced, but memory protection vulnerability increases due to potential process ID alteration

Engineering Contradiction:
Improvesupervisor mode functionalityVSAvoidmemory protection integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent segments both instruction memory and data memory into protected regions with explicit authorization relationships. This segmentation allows supervisor mode software to execute functional code while preventing it from accessing unauthorized data regions. Each memory segment maintains its own access control rules, ensuring that supervisor mode operations remain within authorized boundaries even though process IDs may be altered.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The memory protection unit serves as an intermediary that mediates all memory access requests, evaluating them against regional authorization rules rather than trusting process ID assignments. This intermediary validation mechanism allows supervisor mode execution to proceed while maintaining memory protection integrity, as the intermediary independently verifies whether each access is authorized based on the instruction's originating region.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9678899B2Method and apparatus for providing memory protection
Publication Date: 2017.06.13 NXP USA INC
  • US9678899B2 patent drawing
  • US9678899B2 patent drawing
  • US9678899B2 patent drawing

AI summary

A method for providing memory protection within a signal processing system comprises receiving a memory access signal comprising at least one instruction memory region (IMR) indication. The IMR indication comprises an indication of a region of memory from which a memory access instruction was fetched, execution of said memory access instruction having resulted in the generation of the received memory access signal. The method further comprises comparing the IMR indication for the received memory access signal to at least one permitted memory region (PMR) indication for a target address of the received memory access signal, and determining whether a memory access being attempted by the memory access signal is permitted based at least partly on the comparison of the IMR indication for the received memory access signal to the PMR indication for the target address of the received memory access signal.