Dual-Banked Translation Buffering Circuitry for Address Translation

Solution Overview

Problem

Current memory address translation systems in data processing systems are inefficient in terms of power consumption and circuit area, and they face challenges in achieving fast translation times while maintaining performance.

Innovation Solution

The system employs a dual-banked translation buffering circuitry with a primary and secondary storage bank accessed in parallel, where the buffering management circuitry transfers entries based on occupancy levels, allowing for flexible management of translation entries and reducing the amount of information stored in each entry to save area and power.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a translation lookaside buffer is used to store virtual to physical address translations, then address translation speed is improved, but circuit area and power consumption increase

Engineering Contradiction:
Core Design Contradiction:
SpeedVSArea of stationary object

Solution Approach 1:

The translation buffering circuitry is divided into two separate storage banks: a first storage bank and a second storage bank. Each bank stores a subset of translation entries, allowing parallel access to reduce translation time while distributing the total storage capacity across two smaller units, thereby reducing the area overhead of a single large buffer.

Inventive Principle:
Principle #1Segmentation

2Productivity

If more translation entries are stored in the translation lookaside buffer, then translation hit rate is improved, but power consumption and circuit area increase

Engineering Contradiction:
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

Translation entries are distributed across two storage banks, allowing the system to maintain a high hit rate by having multiple entries available in parallel while avoiding the power overhead of a single large buffer. The segmented structure enables selective activation and management of storage resources.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically manages translation entries between the two storage banks based on occupancy levels. When one bank becomes full, entries are transferred to the other bank, allowing flexible adaptation to varying translation demands while optimizing power consumption by avoiding static allocation of large buffer capacity.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If translation entries are transferred between storage banks based on occupancy levels, then flexibility and performance are improved, but device complexity increases

Engineering Contradiction:
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The buffering management circuitry implements dynamic transfer of translation entries between the two storage banks based on real-time occupancy levels. This dynamic management provides flexibility to adapt to varying translation demands while maintaining relatively simple control logic that monitors bank occupancy and triggers transfers when thresholds are reached.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8335908B2Data processing apparatus for storing address translations
Publication Date: 2012.12.18
  • US8335908B2 patent drawing
  • US8335908B2 patent drawing
  • US8335908B2 patent drawing

AI summary

Memory address translation buffering circuitry is provided comprising a primary storage bank and a secondary storage bank. Storage bank accessing circuitry is provided to perform a parallel lookup of the primary storage bank and the secondary storage bank for virtual to physical address translation entries. Buffering management circuitry is configured to transfer an address translation entry between the primary storage bank and the secondary storage bank dependent upon an occupancy level of at least one of the primary storage bank and secondary storage bank.