Memory Expander Microchip for Processor Memory Compression

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Systems with directly attached processor memory face limitations in memory bandwidth and lack of compression logic, making it difficult to efficiently implement memory compression, especially for processors like the industry standard x86 that do not support memory compression.

Innovation Solution

A memory expander microchip is introduced, which provides additional bandwidth and logic to enable memory compression by storing frequently used data in directly attached memory and less frequently used data in a secondary memory, using a compression/decompression engine and data caching to manage memory operations without burdening the processor or operating system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If memory compression is implemented in a system with directly attached processor memory, then memory capacity is expanded, but memory bandwidth requirement increases beyond what is available

Engineering Contradiction:
Improvememory capacityVSAvoidmemory bandwidth
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent divides the memory system into two separate memory controllers: one for uncompressed memory and one for compressed memory. This segmentation allows each controller to be optimized for its specific function, with the compressed memory controller having dedicated compression logic and bandwidth resources, thereby resolving the bandwidth bottleneck that would occur if compression were implemented in the single attached memory system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a compressed memory controller as an intermediary component between the processor and the compressed memory. This intermediary handles all compression/decompression operations and memory management tasks, offloading the processor and providing dedicated bandwidth for compressed memory operations without interfering with the directly attached uncompressed memory operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If memory compression logic is added to enable memory compression, then memory capacity is increased, but device complexity increases

Engineering Contradiction:
Improvememory capacityVSAvoidcompression logic
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent extracts the compression logic from the processor and places it in a separate compressed memory controller. This extraction allows the processor to remain simple and focused on computation, while the compression functionality is isolated in a dedicated component that can be added to the memory subsystem without increasing processor complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The compressed memory controller serves multiple functions: it manages compressed memory allocations, performs compression/decompression operations, handles memory mapping, and interfaces with both the processor and compressed memory. This multi-functionality consolidates what would otherwise be separate components, reducing overall system complexity despite adding compression capability.

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

3Quantity of substance

If more physical memory is added to maintain the memory-to-processor ratio, then memory capacity increases, but system cost and physical resources increase

Engineering Contradiction:
Improvememory capacityVSAvoidphysical memory resources
Core Design Contradiction:
Quantity of substanceVSLoss of substance

Solution Approach 1:

The patent changes the state of stored data from uncompressed to compressed form, thereby changing the effective capacity parameter of the existing physical memory. By compressing data in the second memory, the system achieves higher effective storage capacity from the same physical memory resources, avoiding the need to add more physical memory modules.

Inventive Principle:
Principle #35Parameter changes

4Device complexity

If compression operations are performed without dedicated logic, then device complexity is reduced, but processing overhead increases

Engineering Contradiction:
Improvecompression logicVSAvoidprocessing overhead
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by having the compressed memory controller proactively manage compression operations, including pre-compressing data before it needs to be accessed and pre-allocating memory resources. This preliminary management reduces the need for time-critical compression operations during active processing, thereby reducing processing overhead despite having dedicated compression logic.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7984240B2Memory compression implementation in a system with directly attached processor memory
Publication Date: 2011.07.19 LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
  • US7984240B2 patent drawing
  • US7984240B2 patent drawing
  • US7984240B2 patent drawing

AI summary

A method, apparatus and program product enable memory compression for a system including processor with directly attached memory. A memory expander microchip facilitates memory compression while attached to a processor. The memory expander microchip may provide additional bandwidth and memory capacity for the system to enable memory compression in a manner that does not burden the attached processor or associated operating system. The processor may store uncompressed data in its lower latency, directly attached memory, while the memory attached to the memory expander may store either or both compressed and uncompressed data.