Flash Memory Controller Write Command Merging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory devices face inefficiencies in data access due to repeated writing of overlapping logical address ranges and frequent clearing of data in flash memory pages, leading to performance degradation.

Innovation Solution

A data access method that stores commands in a queue, identifies overlapping logical address ranges, and combines write commands without intervening read commands to send combined write data to the memory, reducing redundant writes and clearing operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the controller sequentially sends write commands to the memory without combining them, then the controller can process all write commands, but overlapping segments are repeatedly written to and system resources are used inefficiently

Engineering Contradiction:
Improvewrite command processing throughputVSAvoidsystem resource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The controller combines multiple write commands with overlapping logical address ranges into a single write operation. When the controller detects overlapping address ranges in the command queue, it merges the data writes to these overlapping regions into one unified write operation, eliminating redundant write cycles and improving system resource utilization efficiency.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If the controller writes data to overlapping pages without combining commands, then all write commands are executed, but additional time is spent removing previously stored data causing processing delays

Engineering Contradiction:
Improvewrite command execution rateVSAvoiddata clearing time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The controller merges write commands targeting overlapping pages into a single combined write operation. By combining these commands before execution, the controller eliminates the need to clear previously stored data from overlapping pages, as the combined write operation naturally overwrites the data in a single pass, thereby reducing data clearing time and improving write command execution rate.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The controller performs preliminary analysis of write commands in the queue to identify overlapping address ranges before execution. By detecting and combining overlapping write commands in advance, the controller prepares a unified write operation that avoids subsequent data clearing steps, thus reducing processing delays and improving execution rate.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If the controller repeatedly clears data in flash memory pages for small frequent writes, then data integrity is maintained, but processing delays increase and performance degrades

Engineering Contradiction:
Improvedata integrityVSAvoidwrite command processing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The controller combines multiple small write commands targeting the same flash memory page into a single aggregated write operation. This merging approach maintains data integrity by ensuring the page is written with the final correct data in one operation, while eliminating repeated clear operations that would otherwise be necessary for each individual small write, thus improving processing speed without sacrificing reliability.

Inventive Principle:
Principle #5Merging (Combining)

4Device complexity

If the controller processes write commands individually without combination, then command processing is simple, but redundant writes occur and performance is degraded

Engineering Contradiction:
Improvecommand processing logicVSAvoidmemory device performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The controller implements a command combination mechanism that merges write commands with overlapping logical address ranges into unified write operations. This approach increases device complexity by adding combination logic and address range analysis capabilities, but simultaneously improves memory device performance by eliminating redundant writes and reducing the total number of write operations required.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS8417901B2Combining write commands to overlapping addresses or to a specific page
Publication Date: 2013.04.09 SILICON MOTION INC
  • US8417901B2 patent drawing
  • US8417901B2 patent drawing
  • US8417901B2 patent drawing

AI summary

The invention provides a data access method. First, a plurality of commands received from a host is stored in a command queue. A plurality of logical address ranges of the commands is then calculated. A plurality of write commands is then selected from the commands, wherein the logical address ranges of the write commands are overlapping with each other. Whether at least one read command having a receiving order that is in between the receiving orders of the write commands exists in the command queue is then determined. When the at least one read command does not exist, write data corresponding to the write commands are combined together to obtain combined write data according to the logical address ranges of the write commands. A combined write command and the combined write data are then sent to a memory to request that the memory executes the write commands.