Flash Memory Cache Line Size Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory systems face limitations in increasing transfer speed and reducing the number of rewriting times due to large erase units and inefficient data management, leading to lower transfer performance compared to hard disks.

Innovation Solution

A computer system with a cache memory configuration where the line size of cache memory entries is 1/N of the actual page size, using a set associative structure, and employing a page buffer to combine and write data from cache and flash memory entries efficiently, reducing the need for full erase block operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is written directly to flash memory in page units, then write speed is limited by the need to erase entire blocks, but if erase block size is reduced, then disturbance to unselected cells increases

Engineering Contradiction:
Improvewrite speedVSAvoidcell disturbance
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The flash memory is divided into multiple independent memory arrays (first memory array and second memory array). Each array can be erased and written independently, allowing parallel processing of write operations. This segmentation enables the system to bypass the limitation of erasing entire large blocks by distributing write operations across multiple smaller arrays, thereby improving write speed without increasing cell disturbance in any single array.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a multi-dimensional memory architecture with multiple memory arrays organized in a two-dimensional structure. This allows the system to perform write operations in parallel across different arrays, effectively adding a spatial dimension to the write process. By utilizing multiple arrays simultaneously, the system achieves higher throughput without requiring larger erase blocks, thus resolving the contradiction between write speed and cell disturbance.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple memory arrays are used in parallel to increase transfer speed, then write speed improves, but device complexity increases

Engineering Contradiction:
Improvetransfer speedVSAvoidmemory array configuration
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Multiple memory arrays are merged into a unified memory system with a single namespace. The memory control device manages all arrays transparently, presenting them as a single logical memory unit to the host system. This merging approach allows parallel operation of multiple arrays for improved throughput while hiding the complexity of multi-array management from the host, thus achieving high productivity without proportionally increasing device complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Each memory array is designed with identical structure and functionality, allowing any array to serve any purpose. This universality enables flexible allocation and parallel processing while simplifying the control logic, as the same management techniques apply to all arrays. The multi-functional design allows the system to achieve high transfer speeds through parallel operations without requiring complex specialized handling for each array.

Inventive Principle:
Principle #6Universality (Multi-functionality)

3Reliability

If cache memory line size is increased to match flash memory page size, then cache hit rate improves, but cache memory capacity requirements increase

Engineering Contradiction:
Improvecache hit rateVSAvoidcache memory capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The cache memory is organized with line sizes that are smaller than the flash memory page size. Each cache line corresponds to a portion of a flash page, allowing the cache to store multiple cache lines within the capacity of a single flash page. This segmentation enables the cache to achieve high hit rates for partial page accesses while requiring less total cache capacity, as not all cache lines need to be loaded simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the cache memory parameters by using line sizes that are smaller than the flash memory page size. This parameter change allows the cache to operate more efficiently with smaller capacity, as it can service requests for individual cache lines without requiring entire pages to be cached. The altered cache parameters enable high hit rates while reducing the quantity of cache memory needed.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7571282B2Computer system having a flash memory storage device
Publication Date: 2009.08.04 ADEIA SEMICONDUCTOR ADVANCED TECHNOLOGIES INC
  • US7571282B2 patent drawing
  • US7571282B2 patent drawing
  • US7571282B2 patent drawing

AI summary

A computer system is provided, wherein a storage device having a flash memory as the main medium is given a cache memory with a high hit rate even in a small capacity and less access overheads, high-speed writing to the flash memory is attained, and the number of rewriting is reduced: wherein a processing device, a cache memory and a flash memory for data via the cache memory to be written in response to a request from the processing device are provided; and a line size of an entry to the cache memory is 1/N (note that N is 2 or larger integer) of an actual page size as a writing unit of the flash memory.