Flash Memory Controller Scrambling for Data Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage apparatuses lack effective mechanisms to ensure data security and reliability, particularly in nonvolatile memory devices like flash memory, during manufacturing and usage, as they do not adequately address data scrambling and formatting processes.

Innovation Solution

A data storage apparatus with a controller that manages a nonvolatile memory by setting a non-completed flag for initialization, scrambling data during writes, and descrambling data upon read when necessary, using a mapping relation between logical and physical blocks, and employing valid flags to determine data validity, thereby enhancing data security and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If data are stored in nonvolatile memory without scrambling, then storage cost is reduced, but data security and reliability deteriorate

Engineering Contradiction:
Improvestorage costVSAvoiddata security
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The controller performs preliminary scrambling of data before writing to nonvolatile memory and preliminary descrambling before reading from memory. This preliminary action ensures data security is built into the storage process itself, allowing the use of lower-cost nonvolatile memory while maintaining data reliability and security.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If initialization is performed manually by user, then data security is improved, but ease of operation deteriorates

Engineering Contradiction:
Improvedata securityVSAvoiduser operation
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The controller automatically performs initialization settings and scrambling/descrambling operations without requiring manual user intervention. The system serves itself by automatically managing the initialization state through the non-completed flag and executing security operations transparently, thus maintaining data security while significantly improving ease of operation for users.

Inventive Principle:
Principle #25Self-service

3Reliability

If scrambling is performed for all data reads, then data security is improved, but processing time increases

Engineering Contradiction:
Improvedata securityVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The controller dynamically adjusts the scrambling behavior based on the initialization state. When the non-completed flag indicates initialization is not yet performed, the controller descrambles data before providing it to the host. After initialization is completed, the controller maintains scrambling for security. This dynamic adaptation allows the system to optimize processing time based on the operational context while maintaining security when needed.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9575885B2Data storage apparatus for scrambled data and management method thereof
Publication Date: 2017.02.21 SILICON MOTION INC
  • US9575885B2 patent drawing
  • US9575885B2 patent drawing
  • US9575885B2 patent drawing

AI summary

A data storage apparatus has a transmission interface, a nonvolatile memory and a controller. The controller records a non-completed flag. When the controller starts a card opening process, the nonvolatile memory is configured under card opening, and the non-completed flag is set non-completed status. When the controller receives a format command form the transmission interface, the nonvolatile memory is formatted and the non-completed flag is set as completed status. When the controller receives a write command, the write data are scrambled before being written to the nonvolatile memory. When in non-completed status, when the controller receives a read command from the transmission interface, no matter whether the data corresponding to the requested address are scrambled, the data are descrambled and descrambled are provided via the transmission interface.