Trusted Runtime Memory Segmentation for Secure SoC Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Trusted runtime environments in SoC architectures face security risks due to limited internal memory, requiring engagement of external memory for parallel execution of trusted applications, which increases vulnerability to unauthorized access.
Innovation Solution
An integrated circuit method that restricts the trusted runtime environment to use only internal memory for executing trusted applications, detecting and ensuring that sensitive commands and data are processed within the secure internal memory, thereby preventing unauthorized access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If external memory is engaged to handle multiple trusted applications running in parallel, then productivity is improved, but security deteriorates
Solution Approach 1:
The memory system is segmented into internal memory (secure) and external memory (less secure). The patent divides the trusted application execution environment to use only internal memory for sensitive operations, while external memory is excluded from trusted application data storage. This segmentation allows parallel execution of multiple trusted applications in internal memory while maintaining security isolation.
Solution Approach 2:
Different quality levels are assigned to different memory locations. Internal memory is designated as high-security local quality for storing sensitive data and executing trusted applications, while external memory is designated as lower-security quality for non-sensitive data. This local quality differentiation enables parallel processing with appropriate security levels for each memory region.
2Reliability
If internal memory is used exclusively for trusted applications, then security is improved, but device complexity increases
Solution Approach 1:
The memory management system automatically monitors and controls memory allocation without requiring complex external intervention. The system self-regulates by detecting when trusted applications are loaded and ensuring they operate exclusively in internal memory, automatically enforcing security policies without adding significant external control complexity.
Solution Approach 2:
The patent combines security enforcement mechanisms with the existing memory management architecture of the SoC. Rather than adding separate complex security layers, the security controls are merged into the memory management unit, allowing unified handling of both security policies and memory allocation through a single integrated system.
3Productivity
If internal memory capacity is increased to accommodate multiple trusted applications, then productivity is improved, but manufacturing cost increases
Solution Approach 1:
The memory allocation is made dynamic rather than static. Internal memory is allocated to trusted applications on-demand based on current execution needs, allowing the system to support variable numbers of parallel trusted applications without requiring fixed over-provisioning. This dynamic allocation optimizes the use of limited internal memory capacity.
Solution Approach 2:
Memory resources are continuously managed by discarding data from trusted applications that have completed execution and recovering those memory resources for new applications. This recycling approach maximizes the utilization of limited internal memory capacity, allowing a higher throughput of parallel trusted applications over time without increasing peak memory requirements.
Data Source
AI summary
A method and an integrated circuit (100) for executing a trusted application within a trusted runtime environment (103) of the integrated circuit (100) are disclosed. The integrated circuit (100) comprises an internal memory (101) and the integrated circuit (100) is connected to an external memory (102). The trusted runtime environment (103) is restricted to use the internal memory (101) and the external memory (102). The integrated circuit (100) identifies (201) a call, by the trusted application, to a command of the trusted runtime environment (103). The trusted runtime environment (103) allows the command to be executed when the trusted application resides in the internal memory (101) only. Next, the integrated circuit (100) executes (204) the command while using the internal memory (101) only.

