Address Translation Circuitry Context Switching Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data processing systems face inefficiencies in address translation due to the need for multiple memory accesses during context switching and page table walks, which can lead to delays and incorrect translations during the switching of tasks and applications.

Innovation Solution

The implementation of address translation circuitry that can dynamically switch between hierarchical sets of address translation tables, allowing for efficient address translations by overwriting table definition data and executing test instructions to ensure correct translations before and after the switch.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If multiple memory accesses are performed during address translation, then translation accuracy can be maintained, but translation latency increases

Engineering Contradiction:
Improvetranslation accuracyVSAvoidtranslation latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent stores multiple candidate translation table sets in advance in memory, preparing them before they are needed. When a context switch occurs, the MMU can immediately switch to a pre-prepared translation table set without performing multiple sequential memory accesses, thus reducing translation latency while maintaining accuracy through pre-validation of the candidate tables

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic switching between multiple translation table sets based on context requirements. The MMU can dynamically select and switch between different translation table sets stored in memory, allowing flexible adaptation to different execution contexts while avoiding the need for multiple sequential memory accesses, thereby reducing latency

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If translation tables are switched during context switching, then multiple applications can share processing elements, but incorrect translations may occur during the switch

Engineering Contradiction:
Improvemultitasking capabilityVSAvoidtranslation correctness
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent incorporates validation mechanisms that verify the correctness of translation table switches. The system checks whether the switched translation tables are appropriate for the current execution context and validates that translations remain correct after switching, providing feedback to ensure reliability during context transitions

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent prepares and validates candidate translation table sets in advance before context switching occurs. By pre-validating the correctness of translation tables and ensuring they are appropriate for the target context, the system cushions against potential incorrect translations during the switching process

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

3Ease of operation

If hierarchical translation tables are used, then address space organization is improved, but multiple memory accesses are required increasing complexity

Engineering Contradiction:
Improveaddress space organizationVSAvoidmemory access complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent pre-loads and organizes hierarchical translation table sets in memory before they are needed for address translation. By preparing the hierarchical structure in advance and storing complete table sets, the system maintains good address space organization while reducing the need for multiple sequential memory accesses during actual translation operations

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11138126B2Testing hierarchical address translation with context switching and overwritten table definition data
Publication Date: 2021.10.05 ARM LTD
  • US11138126B2 patent drawing
  • US11138126B2 patent drawing
  • US11138126B2 patent drawing

AI summary

Data processing apparatus comprises one or more processing elements to execute processing instructions; address translation circuitry to perform address translations between a virtual address space and a physical address space, the address translations being defined by a current hierarchical set of address translation tables selected from two or more hierarchical sets of address translation tables, the address translation circuitry being responsive to current table definition data providing at least a pointer to a memory location of the current hierarchical set of address translation tables; the one or more processing elements being configured to overwrite the current table definition data with second table definition data providing at least a pointer to a memory location of a second, different, hierarchical set of address translation tables of the two or more hierarchical sets of address translation tables; the one or more processing elements being configured to execute test instructions requiring address translation before and after the overwriting of the current table definition data by the control circuitry and to detect whether the address translations required by the test instructions are correctly performed.