Embedded Memory Security via ECC Access Identifier Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional digital control systems require additional registers for managing memory access between parallel executing programs, which is resource-intensive and lacks efficient protection mechanisms to prevent unauthorized access to shared memory areas.

Innovation Solution

Implementing an error correction code (ECC) scheme that uses access identifiers to protect memory areas by combining data with the identifier during read and write operations, allowing only authorized programs to access specific memory regions through ECC logic that checks for matching values, thereby preventing unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional memory management methods (MMU or memory protection registers) are used to protect memory areas, then memory access security is improved, but device complexity and resource requirements increase due to additional registers

Engineering Contradiction:
Improvememory access securityVSAvoidnumber of registers
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent combines the memory protection function with the existing ECC logic by integrating the access identifier verification into the same hardware module. Instead of adding separate protection registers, the ECC logic is enhanced to perform both error correction and access authorization functions, thereby merging two functions into one existing component and avoiding additional registers.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The ECC logic is transformed into a multi-functional component that serves both its original purpose (error detection and correction) and a new security function (access identifier verification). By making the ECC logic universal, the system achieves memory protection without requiring dedicated protection hardware, thus reducing overall device complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If additional registers are added for task/program management, then memory protection capability is improved, but resource requirements and device complexity increase

Engineering Contradiction:
Improvememory protection capabilityVSAvoidnumber of registers
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the memory protection function with the existing ECC logic by integrating the access identifier verification into the same hardware module. Instead of adding separate protection registers, the ECC logic is enhanced to perform both error correction and access authorization functions, thereby merging two functions into one existing component and avoiding additional registers.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The ECC logic serves itself by extending its functionality to include access identifier verification. Rather than requiring external protection hardware, the existing ECC module performs both error correction and security verification, making the system self-sufficient and eliminating the need for additional protection registers.

Inventive Principle:
Principle #25Self-service

3Productivity

If time-sharing method is used to execute multiple programs, then processor utilization is improved, but the risk of program interference increases

Engineering Contradiction:
Improveprocessor utilizationVSAvoidprogram execution isolation
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system implements feedback by having the ECC logic verify the access identifier against the stored identifier for each memory access request. This continuous verification provides feedback on whether the accessing program is authorized, enabling real-time detection and prevention of unauthorized access during time-sharing execution.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The ECC logic acts as an intermediary between the processor and memory, intercepting memory access requests and verifying access identifiers before allowing access. This intermediary function ensures that even during time-sharing, each program can only access its designated memory areas, preventing interference while maintaining high processor utilization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8250452B2Method and apparatus for embedded memory security
Publication Date: 2012.08.21 INFINEON TECHNOLOGIES AG
  • US8250452B2 patent drawing
  • US8250452B2 patent drawing

AI summary

A method and apparatus for embedded memory security is disclosed. One embodiment protects data in a memory block from unauthorized reading. When writing or reading data to or from the memory block an error correction code is used to calculate an ECC value, wherein the calculation of the ECC value is based on a combination of the data and a access identifier provided to the memory block prior to reading. The access identifier identifies the requesting program. A read error is signalled in case the calculated ECC value does not match a stored value thus indicating an access violation.