Dynamic Cache Allocation for Flash Memory Region Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory devices inefficiently utilize memory regions due to fixed sizes of file allocation table (FAT) and user data (UD) cache regions, leading to suboptimal usage and increased write cycles in flash memory, especially when the size of frequently rewritten data exceeds or falls short of allocated cache space.

Innovation Solution

A memory device with a variable-sized control information cache region, dynamically set based on update frequency and count, to optimize cache allocation and reduce flash memory writes by reallocating unused cache space for user data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If fixed-size cache regions are allocated for control information and user data, then the memory structure is simple and easy to manage, but the memory region utilization becomes inefficient when data access patterns change

Engineering Contradiction:
Improvememory region utilization efficiencyVSAvoidcache size management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic cache size adjustment by monitoring write operations to control information and automatically resizing the cache region for control information based on the proportion of total writes. This allows the cache allocation to adapt to changing data access patterns without manual intervention, resolving the contradiction between adaptability and complexity by making the system self-adjusting rather than statically configured

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of cache region size from a fixed value to a dynamically variable value based on write operation statistics. By tracking the number of writes to control information and calculating the appropriate cache size as a proportion of total cache, the system optimizes memory utilization efficiency while maintaining automated management that prevents excessive complexity

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the control information cache region size is increased to handle frequently rewritten data, then write cycles to flash memory are reduced, but less cache space is available for user data

Engineering Contradiction:
Improvewrite operation efficiencyVSAvoidavailable cache space for user data
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent dynamically adjusts the control information cache region size based on the actual proportion of writes to control information relative to total writes. This ensures that the cache space allocated to control information matches the actual demand, maximizing write operation efficiency by keeping frequently updated control information in cache while automatically freeing up cache space for user data when control information writes decrease

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs self-service by automatically monitoring write patterns and adjusting cache allocation without external intervention. The memory controller tracks write operations, calculates the appropriate cache size proportion, and reallocates cache space dynamically, allowing the system to optimize its own performance and resource distribution based on actual usage patterns

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10055356B2Memory device and method for controlling memory device
Publication Date: 2018.08.21 PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
  • US10055356B2 patent drawing
  • US10055356B2 patent drawing
  • US10055356B2 patent drawing

AI summary

Provided is a memory device with improved memory region usage efficiency. The memory device includes flash memory including: a control information (FAT) region that stores FAT for a file and a user data (UD) region that stores UD; cache memory including a FAT cache region that stores all or part of the FAT; an I/F that receives a write command for writing one of the FAT and the UD; and a memory controller that determines whether write data to be written is the FAT or the UD based on an address included in the write command, and sets the size of the FAT cache region based on an update frequency or an update count for the address included in the write command for the write data determined to be the FAT by the determiner.