SSD Media Controller Summary Page Cache for Translation Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current flash memory storage devices face inefficiencies in storing logical-to-physical translation data for solid state disks (SSDs), particularly in managing random access, write performance, and memory utilization due to limitations in existing logical-to-physical translation table management techniques such as direct page mapping, block mapping, and superblock mapping, which lead to excessive RAM usage, inefficient data access, and reduced flash memory capacity.

Innovation Solution

A media controller for SSDs that stores logical-to-physical address translation data in summary pages, utilizing a buffer layer module to manage a summary page cache and perform operations efficiently, allowing for sequential and random data transfers with limited RAM, and includes features like wear leveling and garbage collection to extend flash memory life.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If direct page mapping is used to store logical-to-physical translation data, then random access performance is improved, but RAM usage increases excessively

Engineering Contradiction:
Improverandom access performanceVSAvoidRAM usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The translation data is segmented into summary pages that map logical blocks to physical blocks, rather than storing complete page-by-page mappings. This segmentation reduces the amount of translation data that must be stored in RAM while maintaining efficient access patterns.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A summary page cache is introduced as an intermediary structure between the logical address space and physical address space. The summary pages store block-level mappings and are cached in RAM to facilitate quick translation lookups without requiring full page mapping tables.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If block mapping is used to reduce RAM usage, then write performance degrades due to sequential write requirements

Engineering Contradiction:
ImproveRAM usageVSAvoidwrite performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The mapping structure is segmented at the block level rather than page level, allowing the system to maintain fewer entries in RAM while still supporting efficient writes. The summary pages are updated atomically during writes, enabling both low RAM usage and good write performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-allocating and pre-mapping blocks before actual data writes occur. This allows the translation table to be prepared in advance, enabling faster writes without requiring extensive RAM for detailed page-level mappings.

Inventive Principle:
Principle #10Preliminary action

3Productivity

If superblock mapping is used to manage translation data, then data access efficiency improves, but flash memory capacity is reduced

Engineering Contradiction:
Improvedata access efficiencyVSAvoidflash memory capacity
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The flash memory is segmented into superblocks with associated summary pages that store translation metadata. This segmentation allows efficient data access through the summary page cache while preserving the bulk of flash memory capacity for actual data storage, as only the essential block-level mapping information is stored in the summary pages.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8898371B2Accessing logical-to-physical address translation data for solid state disks
Publication Date: 2014.11.25 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US8898371B2 patent drawing
  • US8898371B2 patent drawing
  • US8898371B2 patent drawing

AI summary

Described embodiments provide a media controller for a storage device having sectors, the sectors organized into blocks and superblocks. The media controller stores, on the storage device, logical-to-physical address translation data in N summary pages, where N corresponds to the number of superblocks of the storage device. A buffer layer module of the media controller initializes a summary page cache in a buffer. The summary page cache has space for M summary page entries, where M is less than or equal to N. For operations that access a summary page, the media controller searches the summary page cache for the summary page. If the summary page is stored in the summary page cache, the buffer layer module retrieves the summary page from the summary page cache. Otherwise, the buffer layer module retrieves the summary page from the storage device and stores the retrieved summary page to the summary page cache.