Memory Read Granularity Control for Random NAND Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Non-volatile memory devices face inefficiencies due to full-page granularity reads, which incur higher latency and resource wastage, especially under random read workloads, as they fetch entire pages even when only partial data is needed, leading to increased NAND read time and resource utilization.

Innovation Solution

A system with a controller that dynamically modulates read granularity by enabling sub-page reads based on predetermined conditions, such as read size and workload type, to optimize dispatch of reads, minimize latency, and maximize bandwidth, using logic instructions stored in machine-readable storage mediums to issue sub-page or full-page read commands accordingly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If full-page granularity reads are used, then read simplicity and device compatibility are maintained, but latency increases and resource wastage occurs

Engineering Contradiction:
Improveread latencyVSAvoidread control complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent implements dynamic read granularity modulation where the controller adapts between full-page and sub-page read modes based on workload characteristics. The system transitions from static full-page reads to dynamic granularity selection, adjusting read size according to whether workloads are sequential or random, thereby reducing latency for random reads while maintaining simplicity for sequential workloads.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The controller changes the read parameter (granularity/size) based on detected workload patterns. When random read workloads are detected, the system switches to sub-page granularity (e.g., 4KB reads from 16KB pages), while maintaining full-page granularity for sequential workloads. This parameter adaptation resolves the contradiction by optimizing for the specific workload type.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If full-page reads are performed, then device operation simplicity is maintained, but resource utilization efficiency deteriorates

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidread dispatch complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the read operation into full-page reads and sub-page reads based on workload requirements. For random workloads, reads are segmented to only retrieve the specific sub-page portion needed (e.g., reading only the required 4KB segment from a 16KB page), improving resource utilization by avoiding unnecessary data transfer while maintaining operational simplicity through automated controller management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system applies partial action by reading only the necessary portion of data rather than always reading the full page. For random read workloads, the controller performs partial reads (sub-page reads) to retrieve only the required data segments, eliminating the excessive action of reading entire pages when only portions are needed, thereby improving resource efficiency.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If sub-page reads are enabled, then read efficiency for random workloads improves, but device complexity and control overhead increase

Engineering Contradiction:
Improverandom read performanceVSAvoidcontroller logic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The controller implements self-service by automatically detecting workload patterns and autonomously selecting the appropriate read granularity without requiring external intervention or complex host-side logic. The controller monitors read requests, identifies random vs. sequential patterns, and automatically switches between full-page and sub-page read modes, managing the complexity internally while presenting a simple interface to the host system.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system employs feedback mechanisms where the controller continuously monitors read request patterns and adjusts read granularity based on detected workload characteristics. The feedback loop detects whether reads are sequential or random, then dynamically adjusts the read size parameter accordingly, enabling improved random read performance while keeping controller logic manageable through adaptive rather than purely static control.

Inventive Principle:
Principle #23Feedback

4Productivity

If full-page reads are used, then implementation simplicity is maintained, but bandwidth utilization deteriorates

Engineering Contradiction:
Improvebandwidth utilizationVSAvoidread command complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic bandwidth optimization by adjusting read granularity based on workload patterns. For random workloads, the system dynamically switches to sub-page reads that utilize bandwidth more efficiently by transferring only the necessary data portions, whereas sequential workloads continue to use full-page reads that maximize bandwidth utilization through larger transfer sizes, thus adapting bandwidth usage to workload requirements.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10372446B2Technology to dynamically modulate memory device read granularity
Publication Date: 2019.08.06 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US10372446B2 patent drawing
  • US10372446B2 patent drawing
  • US10372446B2 patent drawing

AI summary

Technology to dynamically modulate read granularity of a memory device. A computing system may include a controller and one or more memory devices coupled to the controller, the one or more memory devices including instructions, which when executed by the controller, may cause the computing system to determine whether a read to a memory device satisfies a sub-page read policy. In addition, the instructions, when executed, may cause the computing system to issue a sub-page read command to retrieve data from the memory device at sub-page granularity when the read satisfies the sub-page read policy. Moreover, the instructions, when executed, may cause the computing system to issue a full-page read command to retrieve the data at full-page granularity when the read does not satisfy the sub-page read policy or when a read for a segment of sequentially stored data does not satisfy the sub-page read policy.