TLB Invalidation Buffering to Prevent MMU Translation Stalls

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in efficiently managing address translation requests and invalidation requests in a multi-core processing system, leading to potential stalls and blocking of processor core operations due to full transaction buffers.

Innovation Solution

The proposed solution involves a Memory Management Unit (MMU) with a Translation Lookaside Buffer (TLB) that includes matching logic to generate address transactions and invalidation match transactions. These transactions are routed through either a general-purpose transaction buffer or a dedicated invalidation buffer, ensuring non-stalling and non-blocking operations even when the general-purpose buffer is full.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single general-purpose transaction buffer is used for both address translation requests and invalidation requests, then device complexity is reduced, but processor core operations may stall when the buffer is full

Engineering Contradiction:
Improvebuffer structureVSAvoidprocessor core operation continuity
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The single general-purpose transaction buffer is segmented into two dedicated buffers: a first transaction buffer for address translation requests and a second transaction buffer for invalidation requests. This segmentation allows independent management of different request types, preventing stalls in processor core operations while maintaining reasonable device complexity.

Inventive Principle:
Principle #1Segmentation

2Productivity

If address translation requests are prioritized over invalidation requests, then address translation performance is improved, but invalidation operations may be delayed

Engineering Contradiction:
Improveaddress translation throughputVSAvoidinvalidation request latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By segmenting the buffer into dedicated buffers for address translation and invalidation requests, both request types can be processed simultaneously without prioritization delays. The segmentation eliminates the time loss for invalidation operations while maintaining high address translation throughput.

Inventive Principle:
Principle #1Segmentation

3Productivity

If the transaction buffer capacity is increased to prevent stalls, then processor core operation continuity is improved, but device complexity and resource usage increase

Engineering Contradiction:
Improveoperation continuityVSAvoidbuffer capacity requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Instead of increasing the capacity of a single general-purpose buffer, the system segments the buffer into two smaller dedicated buffers. This segmentation maintains operation continuity by preventing stalls for each request type while keeping the total device complexity and resource usage manageable.

Inventive Principle:
Principle #1Segmentation

4Ease of operation

If a dedicated invalidation buffer is implemented, then invalidation request processing is improved, but device complexity increases

Engineering Contradiction:
Improveinvalidation request handlingVSAvoidbuffer architecture
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The dedicated invalidation buffer is implemented as a segmented portion of the overall buffer structure, clearly separating invalidation request handling from address translation requests. This segmentation improves ease of operation for invalidation requests while maintaining organized and manageable device complexity through structured buffer architecture.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250117338A1Non-stalling, non-blocking translation lookaside buffer invalidation
Publication Date: 2025.04.10 TEXAS INSTRUMENTS INC
  • US20250117338A1 patent drawing
  • US20250117338A1 patent drawing
  • US20250117338A1 patent drawing

AI summary

A method includes receiving, by a MMU for a processor core, an address translation request from the processor core and providing the address translation request to a TLB of the MMU; generating, by matching logic of the TLB, an address transaction that indicates whether a virtual address specified by the address translation request hits the TLB; providing the address transaction to a general purpose transaction buffer; and receiving, by the MMU, an address invalidation request from the processor core and providing the address invalidation request to the TLB. The method also includes, responsive to a virtual address specified by the address invalidation request hitting the TLB, generating, by the matching logic, an invalidation match transaction and providing the invalidation match transaction to one of the general purpose transaction buffer or a dedicated invalidation buffer.