Memory Controller Buffer Prefetching Across Interleaved Storage Groups

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory systems face inefficiencies in prefetching data from non-volatile memory cell arrays, particularly in responding to sequential read requests, as they often require direct access to the memory cell array, which can slow down response times.

Innovation Solution

The memory system employs a bank interleaving method with two parallel operation elements, each comprising a non-volatile memory cell array and a buffer, allowing the memory controller to prefetch data from one storage region to the buffer while accessing another, thereby improving prefetching efficiency and reducing direct access needs.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is read directly from the non-volatile memory cell array in response to host requests, then data access is performed, but response time is slow and prefetching efficiency is reduced

Engineering Contradiction:
Improveresponse timeVSAvoidprefetching time
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The memory controller performs preliminary prefetching operations by reading data from the non-volatile memory cell array and storing it in the buffer memory in advance, before the host actually requests the data. This preliminary action allows the system to prepare data proactively, reducing the response time when the host subsequently requests the prefetched data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

A buffer memory is introduced as an intermediary component between the non-volatile memory cell array and the host. The buffer memory temporarily stores prefetched data, acting as a mediator that decouples the slow direct access path from the fast data delivery path, thereby improving response time without requiring direct access to the non-volatile memory for every host request.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If prefetching is performed from the non-volatile memory cell array, then data can be prepared in advance, but direct access to the memory cell array is required which slows down the process

Engineering Contradiction:
Improveprefetching efficiencyVSAvoidprefetching speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system performs preliminary prefetching actions by proactively reading data from the non-volatile memory cell array and storing it in the buffer memory before host requests are made. This preliminary action enables the system to prepare data in advance during idle periods or based on prediction algorithms, improving prefetching efficiency without impacting the speed of actual host data access operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The buffer memory serves as an intermediary that absorbs the speed penalty of accessing the non-volatile memory cell array during prefetching operations. By separating the prefetching path from the host access path, the buffer allows efficient data preparation in advance while maintaining fast response times for host requests, thereby improving overall prefetching efficiency without sacrificing speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If error correction frames are implemented across multiple physical blocks, then data reliability is improved, but the complexity of data organization increases

Engineering Contradiction:
Improveerror correction capabilityVSAvoiddata organization complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The data storage structure is segmented into multiple physical blocks, with each block containing a portion of the error correction frame. This segmentation allows the error correction capability to be distributed across multiple blocks, improving reliability through redundancy while organizing data in manageable segments that can be independently accessed and managed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The error correction frame structure is designed to be universal and reusable across multiple physical blocks. The same error correction encoding and data organization pattern is applied consistently across different blocks, allowing the system to improve reliability through repeated application of the same proven structure rather than creating complex custom solutions for each block.

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

Data Source

PatentUS11301387B2Memory system configured with a synthesized logical block into which a plurality of data units forming an error correction frame are written
Publication Date: 2022.04.12 KIOXIA CORP
  • US11301387B2 patent drawing
  • US11301387B2 patent drawing
  • US11301387B2 patent drawing

AI summary

A memory system includes a memory and a memory controller. The memory includes first and second parallel operation elements, each including a plurality of first and second storage regions, respectively, and first and second buffers, respectively. The memory controller performs operations on the memory based on first and second group information. The first group information defines first groups, each first group including one first storage region and one second storage region, and each second group including at least two first groups. The memory controller, in response to a host command targeting a first storage region, (i) acquires first data from the first buffer, and thereafter (ii) causes the memory to read out second data to the first buffer. The first storage region storing the first data and the second storage region storing the second data belong to different first groups and to the same second group.