Programmable Data Scrambler Seed for NAND Flash Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data scramblers for NAND flash memory devices face challenges in achieving optimal performance and flexibility due to fixed or programmable seeds, which can lead to suboptimal results across different types of NAND flash memory devices and increase system overhead.

Innovation Solution

A scrambler seed is generated by combining automatically generated lower bits based on the physical location and programmable nonlinear function-generated upper bits, allowing for optimal flexibility and randomization capability. This seed is used to randomize user data before writing to NAND media, and a shortened version is used for error detection during read operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a fixed seed is used in the data scrambler, then the device complexity is reduced, but the reliability deteriorates due to suboptimal results across different types of NAND flash memory devices

Engineering Contradiction:
Improvescrambler seed management complexityVSAvoiddata randomization effectiveness
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent implements dynamic seed selection by allowing the scrambler seed to be programmably configured based on the specific type of NAND flash memory device being used. Instead of a fixed seed, the system can adaptively select appropriate seed values to optimize performance for different device types (e.g., floating-gate flash versus charge-trap flash), thereby resolving the contradiction between simplicity and reliability.

Inventive Principle:
Principle #15Dynamics

2Reliability

If a programmable seed is used in the data scrambler, then the reliability is improved for different device types, but the device complexity increases due to seed calculation and storage overhead

Engineering Contradiction:
Improvedata randomization effectivenessVSAvoidseed management overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts only the essential portions of the scrambler seed that need to be stored in the non-volatile memory, rather than storing the entire seed. By identifying and storing only the critical seed bits that cannot be regenerated, the system reduces storage overhead while maintaining the reliability benefits of programmable seeds for different device types.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses copying techniques by storing representative seed values in the non-volatile memory that can be reused across multiple operations. Instead of recalculating seeds frequently, the system copies and reuses pre-determined seed values that are optimized for specific device types, thereby reducing computational overhead while maintaining reliability.

Inventive Principle:
Principle #26Copying

3Reliability

If a full-length scrambler seed is stored in non-volatile memory, then the reliability is maintained, but the storage capacity is reduced

Engineering Contradiction:
Improvescrambler seed accuracyVSAvoidavailable storage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts and stores only the essential portions of the scrambler seed in the non-volatile memory. By identifying which seed bits are critical and cannot be regenerated, and storing only those specific bits, the system maintains scrambler seed accuracy while minimizing the storage space consumed by seed data.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12253911B2Programmable and high-performance data scrambler for non-volatile memory controllers
Publication Date: 2025.03.18 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US12253911B2 patent drawing
  • US12253911B2 patent drawing
  • US12253911B2 patent drawing

AI summary

Systems, apparatuses and methods may provide for technology that generates a first set of scrambler bits based on a destination page number associated with data, generates a second set of scrambler bits based on a programmable nonlinear function, and combines the first set of scrambler bits and the second set of scrambler bits into a scrambler seed. In one example, the technology also randomizes the data based on the scrambler seed to obtain outgoing randomized data and writes the outgoing randomized data to a non-volatile memory.