Memory Controller Map Segment Locking for Cache Reload Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing memory systems face inefficiencies in updating mapping tables due to the overhead of reloading evicted map segments, which affects performance and caching efficiency.

Innovation Solution

A memory controller that caches a subset of map segments and selectively sets lock flags to prevent eviction based on command ratios, sequential address references, and cache hit ratios, optimizing the update process while maintaining caching performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If map segments are cached in the map cache area to quickly retrieve mapping information, then the retrieval speed is improved, but the map segments may be evicted from the cache causing overhead in reloading them

Engineering Contradiction:
Improveretrieval speedVSAvoidreloading overhead
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent applies preliminary action by proactively identifying map segments that are likely to be needed for future mapping table updates and setting lock flags on them in advance. This prevents eviction of these segments before they are needed, eliminating the reloading overhead that would occur if they were evicted. The memory controller analyzes command patterns and selectively locks segments before they are required, thus resolving the contradiction between fast retrieval and avoiding reload overhead.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If more map segments are locked to prevent eviction, then the reloading overhead is reduced, but the caching performance may deteriorate due to reduced cache availability

Engineering Contradiction:
Improvereloading overheadVSAvoidcaching performance
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies local quality by selectively setting lock flags on specific map segments based on their individual characteristics and usage patterns, rather than uniformly locking all segments. The memory controller identifies segments that are likely to be updated and locks only those segments, leaving other segments available for caching. This localized approach reduces reloading overhead for critical segments while maintaining cache availability for other segments, thus resolving the contradiction between reducing reload overhead and maintaining caching performance.

Inventive Principle:
Principle #3Local quality

3Loss of time

If the memory controller selectively sets lock flags based on command analysis, then the overhead of reloading evicted segments is reduced, but the device complexity increases

Engineering Contradiction:
Improvereloading overheadVSAvoidcontrol logic complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies parameter changes by using simple, quantifiable metrics such as the ratio of write commands to total commands and the number of times logical addresses are referenced. These parameters are easily measurable and can be used to make locking decisions without complex analysis. The memory controller monitors these parameters and adjusts lock flag settings accordingly, reducing reloading overhead through simple parameter-based decisions rather than complex control logic, thus resolving the contradiction between reducing reload overhead and maintaining simple device complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11327902B2Memory system, memory controller, and operation method of memory system for setting lock on map segments cached in map cache
Publication Date: 2022.05.10 SK HYNIX INC
  • US11327902B2 patent drawing
  • US11327902B2 patent drawing
  • US11327902B2 patent drawing

AI summary

The present disclosure includes a memory system, a memory controller, and an operation method thereof. The memory system may cache a subset of all map segments in a mapping table indicating mapping information between logical addresses and physical addresses in a map cache, may select map segments on which locking is to be set from the map segments cached in the map cache so as not to be evicted from the map cache based on information on all commands received from a host during a set period of time, and may set lock flags for the map segments on which locking is to be set. Accordingly, the memory system may reduce the overhead occurring in reloading previously evicted map segments in the process of updating a mapping table, and may optimize update performance for a mapping table within a limit that guarantees caching performance to a predetermined level or higher.