Channel Tags for NAND Memory Translation Cache Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Managed NAND memory lacks a global view of logical block accesses, leading to inefficiencies in internal optimization and increased cache misses due to limited context information being transmitted, such as relationships between logical blocks and future activities.

Innovation Solution

The system employs channel tags to provide context information, including channel IDs and expected future behavior, to the NAND memory, allowing it to pre-fetch entries into the translation cache, thereby optimizing logical to physical address translations and minimizing cache misses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the translation cache uses a fixed number of entries with basic logical block address mapping, then the cache structure is simple and fast to search, but the cache miss rate increases due to lack of context information for optimization

Engineering Contradiction:
Improvetranslation speedVSAvoidcontext information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The patent applies preliminary action by pre-fetching translation entries into the cache before they are actually needed. The controller receives context information about future logical block accesses and proactively loads corresponding physical address translations into the cache, so that when future requests arrive, the translations are already available, reducing cache misses and improving translation speed

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by using context information from the host system about future access patterns to guide cache pre-fetching decisions. The controller receives feedback regarding expected future logical block accesses and uses this information to optimize which entries to pre-load into the translation cache, creating a closed-loop system that adapts to access patterns

Inventive Principle:
Principle #23Feedback

2Ease of operation

If the NAND memory receives only basic logical block access information, then the interface is simple, but the memory cannot perform internal optimizations due to lack of global view

Engineering Contradiction:
Improveinterface simplicityVSAvoidoptimization capability
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent uses context information as an intermediary that carries semantic meaning about logical block accesses from the host system to the NAND memory controller. This intermediary structure allows the memory to understand the global view of access patterns without requiring a complex interface, as the context is transmitted through existing command structures in an extended format

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If the translation cache is searched for every logical block address request, then accurate translations are obtained, but the search time increases when the cache does not contain the requested entry

Engineering Contradiction:
Improvetranslation accuracyVSAvoidsearch time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent reduces search time by performing preliminary loading of translation entries into the cache based on predicted future access patterns. Instead of searching for every requested address, the system proactively populates the cache with entries that are likely to be needed soon, based on context information about future logical block accesses, thereby reducing both search frequency and search time

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8275946B1Channel tags in memory components for optimizing logical to physical address translations
Publication Date: 2012.09.25 MARVELL ASIA PTE LTD
  • US8275946B1 patent drawing
  • US8275946B1 patent drawing
  • US8275946B1 patent drawing

AI summary

A method and system for performing logical to physical address translations in a memory is disclosed, wherein the memory includes a translation cache containing a subset of a plurality of entries mapping logical block addresses to physical locations of the memory. Aspects of the exemplary embodiment include receiving from a processor a read/write request for a logical block and context information regarding the logical block, the context information including at least one of a relationship of the logical block to other logical blocks and a description of future activity associated with the logical block; and pre-fetching a first entry into the translation cache based on the context information so that the first entry required to satisfy a future request is available in the translation cache when the future request is received.