Hash-Based Address Translation in Storage Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

As the capacity of memory devices increases, the size of the address mapping table also grows, leading to inefficient resource allocation and management in storage devices, as they require additional resources like buffers or caches, which can degrade management efficiency.

Innovation Solution

Implementing a storage device that uses a hash function and minimal perfect hash (MPH) functions for address translation between logical and physical addresses, reducing the amount of metadata needed for translation and optimizing resource usage by managing correspondence information effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If a full address mapping table is used to translate logical addresses to physical addresses, then address translation accuracy is improved, but the size of metadata increases and resource management efficiency deteriorates

Engineering Contradiction:
Improveaddress translation accuracyVSAvoidmetadata size
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary components for address translation by using hash functions to generate physical addresses directly from logical addresses, rather than storing complete mapping tables. This extraction principle reduces metadata size while maintaining translation capability through the hash function computation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces the mechanical lookup system (address mapping table查询) with a computational system (hash function). Instead of mechanically searching through mapping tables, the system uses hash functions to computationally derive physical addresses, reducing the need for large metadata structures.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Quantity of substance

If the capacity of memory devices increases, then storage capability is improved, but the size of address mapping table increases and management efficiency deteriorates

Engineering Contradiction:
Improvestorage capacityVSAvoidaddress mapping table size
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

Instead of expanding the address mapping table to accommodate increased storage capacity, the patent inverts the approach by using hash functions that can handle any address space size without requiring proportional increases in metadata. The hash function methodology allows the system to scale storage capacity without scaling metadata complexity.

Inventive Principle:
Principle #13The other way round (Inversion)

3Loss of information

If a full address mapping table is maintained, then complete address translation information is preserved, but resource allocation efficiency deteriorates due to buffer and cache requirements

Engineering Contradiction:
Improveaddress translation informationVSAvoidresource allocation efficiency
Core Design Contradiction:
Loss of informationVSProductivity

Solution Approach 1:

The patent uses hash functions to generate physical addresses through computation rather than copying and storing complete mapping relationships. The hash function acts as a compact representation that can regenerate full address translation information on-demand, eliminating the need for large buffer and cache allocations.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10437738B2Storage device performing hashing-based translation between logical address and physical address
Publication Date: 2019.10.08 SAMSUNG ELECTRONICS CO LTD
  • US10437738B2 patent drawing
  • US10437738B2 patent drawing
  • US10437738B2 patent drawing

AI summary

A storage device includes memory devices and a controller. The controller translates a logical address received from a host to a physical address for the memory devices. The controller manages first correspondence information associated with correspondence relationships between logical addresses and physical addresses. The controller manages translation information that includes information of a minimal perfect hash (MPH) function. The MPH function is generated by using logical addresses indicating a memory region of a reference size as key values, when a size of a memory region indicated by logical addresses managed in the first correspondence information reaches the reference size. The controller manages second correspondence information associated with correspondence relationships between the logical addresses used as the key values and the MPH function of the translation information.