Memory Controller ECC Scaling for Compressed Far Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computing systems face bottlenecks in system memory performance, particularly due to higher error rates in emerging non-volatile memory technologies used in far memory, which can lead to data integrity issues, especially in enterprise environments with large amounts of redundant data.

Innovation Solution

Implementing a multi-level system memory architecture with near memory as a faster cache and far memory as a non-volatile memory technology, where data is compressed to utilize extra space for error correction code (ECC) expansion, and using adjustable ECC generation based on compression levels to enhance error protection, especially in regions prone to higher bit error rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored in far memory using emerging non-volatile memory technology, then storage capacity and non-volatility are improved, but bit error rate increases

Engineering Contradiction:
Improvedata integrityVSAvoidbit error rate
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The patent dynamically adjusts the ECC code size parameter based on the type of far memory being used. When non-volatile far memory with higher bit error rates is detected, the system increases the ECC code size to provide enhanced error correction capability. This parameter adaptation resolves the contradiction by matching the error protection level to the actual error characteristics of the storage medium.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system implements dynamic ECC generation that adapts to different memory configurations and error conditions. The ECC code size is not fixed but is determined at runtime based on the far memory type, allowing the error protection mechanism to dynamically respond to the actual bit error rate conditions of the deployed hardware.

Inventive Principle:
Principle #15Dynamics

2Reliability

If ECC code size is increased to protect against higher bit error rates, then data integrity is improved, but storage capacity is reduced

Engineering Contradiction:
Improveerror protectionVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent changes the ECC code size parameter based on the far memory type. For volatile far memory with lower error rates, a smaller ECC code size is used, preserving more storage capacity. For non-volatile far memory with higher error rates, a larger ECC code size is applied to ensure data integrity. This selective parameter adjustment resolves the contradiction by matching error protection overhead to the actual error characteristics of the memory medium.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system applies different levels of error protection (different ECC code sizes) to different types of far memory based on their specific error characteristics. This localized quality approach ensures that high error protection is applied only where needed (non-volatile memory), while volatile memory uses lighter protection, thus optimizing the balance between reliability and storage capacity.

Inventive Principle:
Principle #3Local quality

3Speed

If system memory speed is increased, then processing performance is improved, but power consumption increases

Engineering Contradiction:
Improvememory access speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The patent segments the memory system into near memory (fast, volatile) and far memory (slower, non-volatile). Frequently accessed data is kept in the fast near memory for quick processing, while less frequently accessed data is stored in the energy-efficient non-volatile far memory. This segmentation allows the system to achieve fast processing when needed while consuming less power overall by utilizing the energy-efficient far memory for bulk storage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system uses a cache coherence protocol that periodically synchronizes data between near memory and far memory. This periodic action allows the fast near memory to operate independently for short periods, providing high-speed access when needed, while the system as a whole benefits from the lower power consumption of non-volatile far memory for persistent storage.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS10033411B2Adjustable error protection for stored data
Publication Date: 2018.07.24 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US10033411B2 patent drawing
  • US10033411B2 patent drawing
  • US10033411B2 patent drawing

AI summary

An apparatus is described that includes a semiconductor chip having memory controller logic circuitry. The memory controller logic circuitry has compression circuitry to compress a cache line data structure to be written into a system memory. The memory controller logic circuitry has adjustable length ECC information generation circuitry to generate an amount of ECC information for the cache line data structure based on an amount of compression applied to the cache line data structure by the compression circuitry. The memory controller logic having circuitry to implement a write process sequence for the cache line data structure that is specific for the cache line data structure's amount of compression and/or amount of ECC information and to implement a different write process sequence that is specific for another cache line data structure having a different amount of compression and/or ECC information as the cache line data structure.