Memory Block Allocation Using Partial Good Blocks for Lower Write Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory systems fail to efficiently manage full blocks (FBs) and partial good blocks (PGBs) in their free block pools, leading to increased erase operations and latency when servicing host write requests due to indiscriminate allocation practices.

Innovation Solution

A memory controller divides the free block pool into collections of full blocks and PGBs, allocating blocks based on whether the request is from a host system or internal processes, thereby reducing the number of erase operations needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional memory systems use indiscriminate allocation practices for free blocks, then the management process is simple, but the number of erase operations increases and latency increases

Engineering Contradiction:
Improvewrite request service efficiencyVSAvoidallocation latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The free block pool is segmented into two distinct collections: full blocks (FBs) and partial good blocks (PGBs). This segmentation allows the system to allocate blocks based on their type, matching FBs to host write requests and PGBs to internal garbage collection requests, thereby reducing unnecessary erase operations and improving allocation efficiency

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different allocation strategies are applied to different block types within the free block pool. Full blocks are preferentially allocated for host write requests where single-erase operations are critical, while partial good blocks are allocated for internal garbage collection operations where multiple erases are already expected. This local quality differentiation optimizes overall system performance

Inventive Principle:
Principle #3Local quality

2Productivity

If full blocks and partial good blocks are managed together in a single free block pool, then the management structure is simple, but the number of erase operations increases

Engineering Contradiction:
Improveerase operation efficiencyVSAvoidblock pool management structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The free block pool is divided into two separate collections: one for full blocks and another for partial good blocks. This segmentation enables the system to track and manage each block type independently, reducing the number of unnecessary erase operations by ensuring full blocks are preferentially allocated to host write requests

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements tracking mechanisms that monitor the status and allocation history of each block type. This feedback enables intelligent allocation decisions, where the controller can determine whether a block is an FB or PGB and allocate it appropriately, thereby optimizing erase operation efficiency

Inventive Principle:
Principle #23Feedback

3Productivity

If partial good blocks are allocated for host write requests, then block utilization is maximized, but latency increases due to multiple erase operations

Engineering Contradiction:
Improveblock utilization efficiencyVSAvoidwrite request response speed
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The system applies different allocation policies to different block types based on the request source. Full blocks are allocated to host write requests where speed is critical and single-erase operations are required, while partial good blocks are allocated to internal garbage collection operations where multiple erases are already expected. This local quality differentiation maintains high block utilization while minimizing latency for host requests

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system performs preliminary classification of free blocks into full blocks and partial good blocks before allocation occurs. This preliminary action ensures that when host write requests arrive, full blocks are already identified and ready for immediate allocation, eliminating the need for multiple erase operations and reducing latency

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12585391B2Managing allocation of half good blocks
Publication Date: 2026.03.24 MICRON TECHNOLOGY INC
  • US12585391B2 patent drawing
  • US12585391B2 patent drawing
  • US12585391B2 patent drawing

AI summary

Aspects of the present disclosure configure a system component, such as a memory sub-system controller, to dynamically allocate blocks from a free block pool. The controller generates a free block pool that includes a collection of full blocks and a collection of partial good blocks (PGBs) of a set of memory components, a size of a full block in the collection of full blocks corresponding to a combination of two or more PGBs of the collection of PGBs. The controller receives a request to write data. The controller allocates an individual full block from the collection of full blocks or an individual PGB from the collection of PGBs based on determining whether the request to write the data has been received from the host device or the controller of the memory sub-system.