NAND Flash Memory Redundant Boot Block Controller

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

NAND-type flash memory systems face reliability issues due to data damage during reading operations, leading to potential boot failures when data in primary blocks cannot be read, as they lack redundant storage for critical boot programs.

Innovation Solution

Implementing a memory system with dual blocks (BLK0 and BLK1) for storing boot programs, where if data in BLK0 is damaged or unreadable, the system automatically retrieves and transmits the boot program from BLK1, ensuring continuous system operation without requiring explicit read commands from the host apparatus.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored only in a primary block without redundancy, then the storage structure remains simple, but the system reliability deteriorates due to potential boot failures when primary block data is damaged

Engineering Contradiction:
Improvesystem reliabilityVSAvoidstorage structure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent implements a backup block that stores a copy of the boot program data. When the primary block data is damaged or unreadable, the system automatically retrieves the boot program from the backup block, ensuring continuous system operation without requiring explicit read commands from the host apparatus

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The system proactively stores redundant boot program data in a backup block before any data damage occurs. This preliminary redundancy preparation ensures that when primary block data becomes damaged, the system can immediately switch to the backup block without experiencing boot failures, thus cushioning against potential reliability issues

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Reliability

If redundant backup blocks are implemented, then the reliability improves by ensuring boot capability, but the memory device capacity is reduced due to duplicated data storage

Engineering Contradiction:
Improveboot reliabilityVSAvoidusable memory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The backup block is specifically dedicated to storing boot program data, while the primary block can store both boot program and general data. This localized redundancy approach ensures that the backup functionality is targeted and efficient, minimizing the impact on overall usable capacity by not requiring complete duplication of all data

Inventive Principle:
Principle #3Local quality

3Ease of operation

If the system automatically retrieves data from backup block without host command, then the boot sequence is simplified, but the control complexity increases due to automatic detection and switching logic

Engineering Contradiction:
Improveboot sequence simplicityVSAvoidcontrol logic complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The memory device performs automatic detection of primary block data validity and self-initiated retrieval from the backup block when needed. This self-service mechanism eliminates the need for the host apparatus to implement complex detection and switching logic, simplifying the overall system operation while the memory device handles the complexity internally

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10353852B2Memory system that stores data redundantly
Publication Date: 2019.07.16 KIOXIA CORP
  • US10353852B2 patent drawing
  • US10353852B2 patent drawing
  • US10353852B2 patent drawing

AI summary

A memory system includes a semiconductor memory device including a plurality of memory blocks, including a first block storing data and a second block storing backup data, a plurality of pins, and a controller configured to output a control signal to the semiconductor memory in accordance with the command. When the controller receives from outside of the memory system, a read command for the data in the first block, and the data in the first block are available, the controller is configured to transmit the data in the first block to the outside of the memory system. When the controller receives from outside of the memory system, a read command for the data in the first block, and the data in the first block are not available, the controller is configured to transmit the backup data in the second block to the outside of the memory system.