Flash Controller H2F Sub-Table Update for Random Write

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The programming of flash administration tables in NAND flash devices leads to performance issues due to the need for serial access and the delay in updating host-to-flash sub-tables during random-write operations, which can result in timeouts and increased computing resources for regenerating and retransmitting write commands.

Innovation Solution

A method and apparatus that periodically determine if user data in a current block satisfies a random-write condition and updates the host-to-flash sub-tables according to the content of the flash-to-host table, optimizing the programming process by managing H2F sub-table updates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If the flash controller uses serial access to program NAND flash devices, then the device can be accessed in a simple manner, but the programming speed and system performance deteriorate

Engineering Contradiction:
Improveaccess simplicityVSAvoidprogramming speed
Core Design Contradiction:
Ease of operationVSSpeed

Solution Approach 1:

The patent segments the administration table programming task by dividing it into multiple sub-tables (H2F sub-tables) that can be programmed in parallel across multiple channels. Instead of programming the entire administration table sequentially through a single channel, the controller divides the work into manageable segments that can be processed simultaneously by different channels, thereby improving programming speed while maintaining the simplicity of serial access within each channel.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies preliminary action by determining whether user data satisfies random-write conditions before initiating the administration table programming process. The controller evaluates the write pattern characteristics in advance and only updates H2F sub-tables when necessary (i.e., when random-write conditions are detected). This prevents unnecessary programming operations and optimizes system performance by performing administration table updates only when they will actually improve subsequent read/write operations.

Inventive Principle:
Principle #10Preliminary action

2Manufacturing precision

If the flash controller updates H2F sub-tables during random-write operations, then data access accuracy is improved, but the delay and timeout issues worsen

Engineering Contradiction:
Improvedata access accuracyVSAvoidupdate delay
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent implements periodic action by updating H2F sub-tables at specific intervals or under specific conditions rather than continuously or at fixed time points. The controller periodically checks whether user data satisfies random-write conditions and only updates the administration tables when such conditions are met. This conditional periodic updating ensures data access accuracy is maintained while minimizing unnecessary update operations that would cause delays and timeouts.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent applies self-service by enabling the flash controller to autonomously determine when administration table updates are necessary based on the characteristics of incoming write operations. The controller monitors write patterns itself and automatically decides whether to update H2F sub-tables based on whether random-write conditions are detected, without requiring external intervention or timing signals. This self-service approach optimizes the balance between data access accuracy and update timing.

Inventive Principle:
Principle #25Self-service

3Productivity

If multiple channels are used for parallel data reads and writes, then overall system throughput is improved, but the complexity of managing administration tables increases

Engineering Contradiction:
Improvesystem throughputVSAvoidadministration table management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the administration table management task by dividing it into multiple H2F sub-tables, each associated with specific channels or data ranges. This segmentation allows each channel to manage its own relevant sub-tables independently, reducing the complexity of coordinating updates across all channels while maintaining parallel processing capabilities. Each channel can update its associated sub-tables without requiring complex inter-channel coordination.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making the administration table management structure adaptive to local channel characteristics and data patterns. Instead of using a uniform management approach for all channels, the controller evaluates random-write conditions locally for each channel's data and only updates sub-tables where necessary. This localized management approach reduces overall complexity by focusing updates only where they are needed while maintaining high throughput through parallel channel operations.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11307766B2Apparatus and method and computer program product for programming flash administration tables
Publication Date: 2022.04.19 SILICON MOTION INC
  • US11307766B2 patent drawing
  • US11307766B2 patent drawing
  • US11307766B2 patent drawing

AI summary

The invention relates to an apparatus, a method, and a non-transitory computer program product for programming flash administration tables. The non-transitory computer program product includes program code to: periodically determine whether user data that has been programmed into a current block of a flash module satisfies a random-write condition; and update a record of a host-to-flash (H2F) sub-table according to content of a flash-to-host (F2H) table for the current block when user data that has been programmed into the current block of the flash module satisfies the random-write condition.