Adaptive Read Level Adjustment for SSD Data Accuracy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Solid-state drives (SSDs) face challenges with bit value errors due to the degradation of flash memory cells over time, leading to increased power consumption and reduced performance as frequent read calibrations are required to maintain accurate data reading.

Innovation Solution

A controller in the SSD adjusts the read level applied to the control gate of memory cells based on an error ratio, dynamically determining and adjusting the voltage to minimize bit value errors, thereby reducing the need for frequent read calibrations and improving drive performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If flash memory cells are used for storage, then non-volatile storage with high capacity is achieved, but the memory cells degrade over time due to repeated erase operations and age, causing charge loss and bit value errors

Engineering Contradiction:
Improvestorage capacityVSAvoiddata accuracy
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The system performs preliminary calibration of read levels by determining an error ratio from read operations and uses this information to proactively adjust read levels before significant degradation occurs. This preliminary adjustment prevents bit value errors rather than correcting them after they occur, extending the usable life of the flash memory cells.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where read operations generate error ratio data that is fed back to adjust subsequent read levels. The controller continuously monitors bit value errors and dynamically adjusts the read voltage levels to compensate for charge loss in flash memory cells, maintaining data accuracy despite degradation over time.

Inventive Principle:
Principle #23Feedback

2Measurement precision

If read calibrations are performed frequently to maintain accurate data reading, then data accuracy is improved, but power consumption increases and performance decreases

Engineering Contradiction:
Improvedata reading accuracyVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by moving object

Solution Approach 1:

Instead of performing full read calibrations frequently, the system uses partial calibration by determining error ratios from normal read operations and making targeted adjustments only when needed. This partial action approach maintains data accuracy while avoiding the excessive power consumption and performance degradation associated with frequent full calibrations.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system continuously adjusts read levels based on error ratio feedback from ongoing read operations, rather than performing discrete calibration events. This continuous adjustment maintains optimal reading accuracy throughout the storage device's operation without the power consumption spikes associated with periodic full calibrations.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If read levels are adjusted dynamically based on error ratio, then bit value errors are minimized and data accuracy is maintained, but device complexity increases

Engineering Contradiction:
Improvedata accuracyVSAvoidcontroller complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The controller performs self-calibration by automatically determining error ratios from its own read operations and adjusting its own read levels without external intervention. This self-service approach maintains data accuracy while avoiding the need for additional dedicated calibration hardware or complex external control systems.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system adjusts the voltage parameter of read levels dynamically based on calculated error ratios. By changing this single critical parameter based on simple error ratio thresholds, the system achieves improved data accuracy without requiring complex multi-parameter adjustments or additional hardware components.

Inventive Principle:
Principle #35Parameter changes

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach reduces power consumption and enhances SSD performance by minimizing read calibrations and bit errors, extending the life of flash memory cells and maintaining accurate data retrieval.

Implementation Method 1

apply a read level to a control gate of a transistor for each respective bit in the plurality of bits; determine, based on an amount of current that flows through the transistor, a respective value for each bit

Methodology Applied
Scientific EffectElectrical conduction: Conduction (electrical)

Data Source

PatentUS9535786B2Adaptive targeting of read levels in storage devices
Publication Date: 2017.01.03 WESTERN DIGITAL TECHNOLOGIES INC
  • US9535786B2 patent drawing
  • US9535786B2 patent drawing
  • US9535786B2 patent drawing

AI summary

A storage device may include a controller and a plurality of memory devices logically divided into a plurality of pages. Each page in the plurality of pages may include a plurality of bits. The controller may be configured to: apply a read level to a control gate of a transistor for each respective bit in the plurality of bits; determine, based on an amount of current that flows through the transistor, a respective value for each bit from the respective plurality of bits; determine, based on the respective values for the respective plurality of bits, an error ratio that indicates a number of bits from the plurality of bits that are written as a first bit value but are incorrectly read as a second bit value relative to a number of bits from the plurality of bits that are written as the second bit value but are incorrectly read as the first bit value; and adjust, based on the error ratio, the read level.