Flash Controller RTOS Data Expiration Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash-based storage devices face inefficiencies in managing memory capacity due to the inability to immediately overwrite data, requiring methods to determine data expiration and perform erase operations at appropriate times to secure storage capacity and improve garbage collection efficiency.

Innovation Solution

A semiconductor device with a storage controller and real-time operating system (RTOS) that receives expiration time information from a host to control data operations, allowing for the identification and management of expired data and the performance of data operations such as erasure based on this information, thereby optimizing memory management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If flash-based storage devices perform read-modify-write updates instead of in-place updates, then data integrity is maintained, but storage capacity is reduced and garbage collection overhead increases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by identifying expired data before it occupies valuable storage space. The storage controller proactively detects data that has exceeded its validity period and schedules erase operations in advance, preventing stale data from consuming storage capacity and reducing the need for frequent garbage collection operations.

Inventive Principle:
Principle #10Preliminary action

2Quantity of substance

If flash-based storage devices perform garbage collection operations, then free pages are secured, but device complexity and overhead increase

Engineering Contradiction:
Improvefree pagesVSAvoidgarbage collection overhead
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The storage controller performs preliminary identification of expired data using validity periods stored in the memory device. By knowing in advance which data should be erased, the system can schedule erase operations more efficiently and reduce the complexity of garbage collection algorithms, as it no longer needs to analyze data patterns or predict which pages will become stale.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The memory device stores validity period information alongside data, enabling the storage controller to autonomously identify expired data without requiring complex host-based garbage collection algorithms. The system serves itself by using the stored validity information to automatically determine which pages need erasing, reducing host involvement and overall system complexity.

Inventive Principle:
Principle #25Self-service

3Reliability

If flash-based storage devices cannot immediately overwrite the same memory device, then data durability is improved, but write performance is reduced

Engineering Contradiction:
Improvedata durabilityVSAvoidwrite performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary identification of data that is eligible for erasure based on stored validity periods. By knowing in advance which pages can be safely erased, the storage controller can proactively free up storage space, reducing the time that write operations need to wait for pages to become available, thereby improving write performance while maintaining the durability benefits of flash memory.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10846019B2Semiconductor device
Publication Date: 2020.11.24 SAMSUNG ELECTRONICS CO LTD
  • US10846019B2 patent drawing
  • US10846019B2 patent drawing
  • US10846019B2 patent drawing

AI summary

A semiconductor device includes: a memory device; and a storage controller. The storage controller includes a flash controller performing data operations on the memory device, and a processor executing a real-time operating system (RTOS) for controlling the flash controller, wherein the RTOS receives expiration time information of data from a host and performs at least one of the data operations using a scheduler based on the expiration time information.