Map Update Module Subsegment Encoding for SSD Buffer Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage devices with memory devices face inefficiencies in map updating due to limited map update buffer sizes, leading to increased map data transfer times and reduced performance.

Innovation Solution

The implementation of a data storage device with a nonvolatile memory device and a controller that includes a map update module, which divides map segments into subsegments, updates target subsegments in a map update buffer, and encodes non-updating subsegments for efficient use of the buffer, allowing parallel map updating and data transfer.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the entire map segment is loaded into the map update buffer for updating, then the map updating can be completed, but the map update buffer size requirement increases and the buffer space is wasted when only partial updates are needed

Engineering Contradiction:
Improvemap updating efficiencyVSAvoidmap update buffer size
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent divides a map segment into multiple sub-segments, where each sub-segment contains a portion of the L2P entries. This allows the system to load only the necessary sub-segments into the map update buffer based on which L2P entries need updating, rather than loading the entire map segment. This segmentation enables efficient utilization of the limited buffer space while maintaining the ability to perform targeted updates.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If the map update buffer size is kept small to save resources, then resource usage is optimized, but the time required to load and update map data increases

Engineering Contradiction:
Improvemap update buffer sizeVSAvoidmap data transfer time
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

By segmenting the map into sub-segments, the system can load smaller portions of data into the buffer at a time, reducing the buffer size requirement. The parallel processing capability allows multiple sub-segments to be updated simultaneously, preventing time loss despite the smaller buffer size.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary identification of which L2P entries need updating before initiating the buffer loading process. This allows the system to pre-determine which sub-segments need to be loaded, avoiding unnecessary data transfer and reducing the overall time required for map updates.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If all sub-segments are updated sequentially one by one, then each update is completed accurately, but the total map updating time increases

Engineering Contradiction:
Improveupdate accuracyVSAvoidmap updating time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent merges the updating operations of multiple sub-segments by processing them in parallel rather than sequentially. The controller manages multiple buffer operations simultaneously, combining the accuracy of individual sub-segment updates with the speed advantage of parallel processing, thereby reducing total update time while maintaining precision.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS10599581B2Data storage device and operating method thereof
Publication Date: 2020.03.24 SK HYNIX INC
  • US10599581B2 patent drawing
  • US10599581B2 patent drawing
  • US10599581B2 patent drawing

AI summary

A data storage device includes a nonvolatile memory device including an address map table in which a plurality of map segments including a plurality of logical-to-physical (P2L) entries are stored and a controller controlling the nonvolatile memory device. The controller includes a processor and a memory storing a map update module configured to be driven through the processor and perform map updating on the plurality of map segments. The map update module divides each of the map segments into a plurality of sub segments, updates a first sub segment as an updating target among the plurality of sub segments by loading the first sub segment into a map update buffer of the memory, and encodes second sub segments as a non-updating target among the plurality of sub segments and stores the encoded second sub segments in a page buffer of the nonvolatile memory device.