Compressed Memory Controller with TLB Translation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As CPU-based systems increase in complexity and performance, the need for additional memory capacity is driven by increased memory requirements, but this often leads to higher costs and physical size increases, while data compression to enhance capacity can degrade CPU performance by increasing memory access times.

Innovation Solution

The implementation of compressed memory controllers that employ line-based, page-based, or hybrid memory capacity compression schemes, using a translation lookaside buffer to efficiently translate physical addresses to physical buffer addresses, allowing for compressed data storage and minimizing the impact on CPU performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data compression is employed to increase effective memory capacity, then memory capacity is improved, but CPU memory access times increase and CPU performance decreases

Engineering Contradiction:
Improvememory capacityVSAvoidmemory access time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The memory system is segmented into multiple memory banks, each with its own compression engine. This allows parallel compression and decompression operations across different banks, reducing the overall time impact on CPU accesses while maintaining high compression ratios for the total memory capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Data is compressed before being written to memory storage, and decompression is initiated in advance for frequently accessed data patterns. The system pre-loads decompression contexts and maintains translation lookaside buffers (TLBs) that predict and prepare address translations, minimizing the time penalty during actual CPU access operations.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If additional memory capacity is provided in a CPU-based system, then memory requirements are met, but costs and physical area increase

Engineering Contradiction:
Improvememory capacityVSAvoidphysical memory area
Core Design Contradiction:
Quantity of substanceVSArea of stationary object

Solution Approach 1:

Multiple memory banks are merged into a unified address space that appears as a single large memory to the CPU. The compression engine merges the storage capacity of multiple physical banks while maintaining the illusion of a larger un compressed memory, effectively doubling or tripling the usable capacity without proportionally increasing physical area.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system dynamically changes the compression parameter (compression ratio) based on data patterns and access frequencies. Frequently accessed data uses lower compression ratios for faster access, while less frequently accessed data uses higher compression ratios to maximize capacity utilization, optimizing the balance between effective capacity and access performance.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If translation lookaside buffer is used to translate physical addresses, then translation efficiency is improved, but device complexity increases

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

Solution Approach 1:

The translation lookaside buffer (TLB) is integrated into the existing memory controller infrastructure, sharing resources with other control functions. The TLB uses the same arbitration logic and address generation units as the main memory controller, eliminating the need for separate dedicated hardware and reducing overall system complexity despite adding translation capability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS10838862B2Memory controllers employing memory capacity compression, and related processor-based systems and methods
Publication Date: 2020.11.17 QUALCOMM INC
  • US10838862B2 patent drawing
  • US10838862B2 patent drawing
  • US10838862B2 patent drawing

AI summary

Aspects disclosed herein include memory controllers employing memory capacity compression, and related processor-based systems and methods. In certain aspects, compressed memory controllers are employed that can provide memory capacity compression. In some aspects, a line-based memory capacity compression scheme can be employed where additional translation of a physical address (PA) to a physical buffer address is performed to allow compressed data in a system memory at the physical buffer address for efficient compressed data storage. A translation lookaside buffer (TLB) may also be employed to store TLB entries comprising PA tags corresponding to a physical buffer address in the system memory to more efficiently perform the translation of the PA to the physical buffer address in the system memory. In certain aspects, a line-based memory capacity compression scheme, a page-based memory capacity compression scheme, or a hybrid line-page-based memory capacity compression scheme can be employed.