Processor Memory Clusters for Secure Authenticated Code Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer processor architectures face challenges in managing memory operations efficiently, particularly in ensuring secure and authenticated code execution, due to complexities in handling different memory levels and addressing modes, which can lead to performance bottlenecks and security vulnerabilities.

Innovation Solution

The processor architecture is enhanced by dividing memory circuitry into clusters and slices, with L0 and L1 memory levels optimized for low latency and bandwidth, and a page miss handler for efficient page translation, allowing for parallel operation and reduced ordering checks, thereby improving memory access and security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory circuitry is divided into clusters and slices with multiple memory levels, then memory bandwidth and parallel operation capability are improved, but device complexity increases

Engineering Contradiction:
Improvememory bandwidthVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory circuitry is divided into multiple clusters (first cluster, second cluster, etc.) and slices (first slice, second slice, etc.), with each cluster containing multiple slices. This segmentation allows parallel memory operations across different clusters and slices, increasing memory bandwidth and productivity while managing complexity through modular organization.

Inventive Principle:
Principle #1Segmentation

2Speed

If multiple memory levels (L0, L1) are implemented with different optimization, then memory access performance is improved, but device complexity increases

Engineering Contradiction:
Improvememory access speedVSAvoiddevice complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

Different memory levels are optimized for different purposes: L0 memory is optimized for low latency access within clusters, while L1 memory is optimized for bandwidth and parallel operations across slices. This local quality optimization allows each memory level to perform its specific function efficiently, improving overall memory access performance while maintaining manageable complexity through clear functional differentiation.

Inventive Principle:
Principle #3Local quality

3Productivity

If page translation is handled through a dedicated page miss handler, then translation efficiency is improved, but device complexity increases

Engineering Contradiction:
Improvetranslation efficiencyVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The page translation function is extracted as a separate, dedicated page miss handler that operates independently from the main memory access paths. This extraction allows page translation to be handled efficiently without interfering with normal memory operations, improving translation efficiency while containing complexity isolation to a dedicated module.

Inventive Principle:
Principle #2Taking out (Extraction)

4Speed

If memory operations are performed in parallel across clusters and slices, then processing speed is improved, but ordering checks become more complex

Engineering Contradiction:
Improveprocessing speedVSAvoidordering checks
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

Memory operations are segmented by cluster and slice, with each segment operating in parallel. The segmentation structure provides natural boundaries for ordering checks, allowing parallel processing while managing complexity through the modular organization that defines clear dependency boundaries between segments.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20240211583A1Apparatus and Method for Flexible Processor Security and Authenticated Code Execution
Publication Date: 2024.06.27 INTEL CORP
  • US20240211583A1 patent drawing
  • US20240211583A1 patent drawing
  • US20240211583A1 patent drawing

AI summary

An apparatus and method for improved processor security and authenticated code execution. For example, one embodiment of a processor comprises: a secure memory to store an authenticated code module (ACM); and security hardware logic to select a mode of operation for processing the ACM based on a microarchitecture of the processor, the security hardware logic to validate the ACM and parse a header of the ACM to determine an entry point for processing the ACM in accordance with the microarchitecture.