Microcontroller Non-Volatile Memory Access Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

There is a need to control access to non-volatile memory in microcontrollers to prevent unauthorized access to confidential information while allowing debugging to identify malfunctions, while maintaining memory confidentiality.

Innovation Solution

A method is implemented where access to different areas of the non-volatile memory is conditioned based on a selected value and the type of area, with specific permissions and restrictions for debuggers, intrusion detection, and irreversible changes to secure or delete data, using a microcontroller with a secure and non-secure environment partitioning system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If access to non-volatile memory is restricted to prevent unauthorized access to confidential information, then security is improved, but debugging capability deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoiddebugging capability
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The patent implements dynamic access control by introducing a security level parameter that can take different values (first value, second value, third value). The access rights to memory areas are not fixed but change based on the current security level. When the security level is at the first value, debuggers can access memory areas for debugging. When changed to the second or third values, access is restricted to protect confidential information. This dynamic adjustment allows the system to switch between debugging mode and secure mode as needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the security parameter (security level value) to control access rights. By modifying this parameter from a first value (allowing debugger access) to a second or third value (restricting access), the system can transition between states that prioritize debugging capability and states that prioritize security. This parameter change mechanism resolves the contradiction by making access rights conditional rather than absolute.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If debugger access to memory areas is allowed for malfunction identification, then debugging capability is improved, but information confidentiality deteriorates

Engineering Contradiction:
Improvedebugging capabilityVSAvoidinformation confidentiality
Core Design Contradiction:
Ease of operationVSLoss of information

Solution Approach 1:

The patent divides memory areas into different types (first type, second type, third type) with different access permissions based on security levels. Confidential information is stored in specific memory areas that are protected when the security level is set to the second or third value. Debugging operations can access other memory areas when the security level is at the first value. This segmentation allows debugging without exposing confidential information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different memory areas have different access control characteristics based on their type and the current security level. Some areas are designed to be accessible during debugging, while others are protected. The access rights are not uniform across the entire memory but are locally optimized for each area's purpose, allowing debugging where needed while protecting confidential information where required.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If security level changes are made reversible for flexibility, then adaptability is improved, but security deteriorates

Engineering Contradiction:
ImproveflexibilityVSAvoidsecurity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements preliminary action by requiring that when the security level is changed from the first value to the second or third value, the confidential information stored in protected memory areas is deleted beforehand. This preliminary deletion action ensures that even though the security level change is reversible (allowing future changes back to the first value), the confidential information cannot be recovered because it has already been destroyed. This resolves the contradiction by making the reversal safe from a security perspective.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11055237B2Method of access to a memory
Publication Date: 2021.07.06 STMICROELECTRONICS (GRENOBLE 2) SAS
  • US11055237B2 patent drawing
  • US11055237B2 patent drawing
  • US11055237B2 patent drawing

AI summary

In a non-volatile memory of a microcontroller, first information representative of a value selected among at least four values is stored. Furthermore, for each of a plurality of areas of the memory, second information representative of a type selected among two types is also stored. Access to each of the areas is conditioned according to the selected value and to the type of the area.