Memory Controller Write Buffer Management for Nonvolatile Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing memory systems face inefficiencies and reliability issues when writing data to nonvolatile memory, particularly when the write buffer does not contain data satisfying the predetermined write unit, leading to decreased write efficiency and potential data loss.

Innovation Solution

The memory system includes a memory controller that, upon receiving a command to write data to nonvolatile memory, simultaneously writes the available data from the write buffer and additional data from the host device or internal processing buffer to the nonvolatile memory, ensuring efficient data transfer and maintaining system reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the memory controller waits for the write buffer to accumulate sufficient data before writing to nonvolatile memory, then write efficiency is improved, but data loss risk increases when power is lost before the buffer is full

Engineering Contradiction:
Improvewrite efficiencyVSAvoiddata integrity
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The memory controller performs preliminary actions by detecting power supply status changes and initiating emergency write operations before actual power loss occurs. When a power supply status change is detected, the controller proactively transfers data from the write buffer to nonvolatile memory, preventing data loss without requiring continuous waiting for buffer full conditions.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the memory controller continuously monitors for power supply status changes, then data integrity is improved, but system complexity increases

Engineering Contradiction:
Improvedata integrityVSAvoidcontrol logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The power supply status change detection mechanism operates autonomously without requiring continuous complex monitoring logic. The system self-detects power status changes through built-in detection circuitry and automatically triggers emergency write operations, simplifying the overall control architecture while maintaining high reliability.

Inventive Principle:
Principle #25Self-service

3Reliability

If the memory controller performs emergency writes upon power status change detection, then data loss is prevented, but write operations may be interrupted incomplete

Engineering Contradiction:
Improvedata completenessVSAvoidwrite operation completion rate
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The memory controller implements feedback mechanisms to monitor the progress of emergency write operations. After initiating an emergency write upon power status change detection, the controller continuously checks whether the write operation has completed successfully. If the operation is interrupted, the feedback system detects this and triggers appropriate error handling or retry mechanisms, ensuring data completeness while maintaining operational awareness.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11687284B2Memory system with memory controller
Publication Date: 2023.06.27 KIOXIA CORP
  • US11687284B2 patent drawing
  • US11687284B2 patent drawing
  • US11687284B2 patent drawing

AI summary

A memory system includes a nonvolatile memory, a volatile memory, and a memory controller. The volatile memory includes a write buffer. The memory controller receives commands stored in a queue by a host device from the queue. The memory controller receives a command stored in a queue by the host device from the queue and, in a state where first data not satisfying a write unit is stored in the write buffer, when receiving a first command for writing the first data to the nonvolatile memory from the queue, simultaneously writes the first data and second data acquired from the host device or a predetermined region of the volatile memory different from the write buffer to the nonvolatile memory.