Memory Controller Programming Status Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory systems experience prolonged checking times for programming results, which occupy the controller or firmware, leading to abrupt performance decay in electronic devices.

Innovation Solution

A memory system and method that records and inquires the programming status of data from one memory to another, allowing data to be stored in the first memory until successful programming is confirmed, reducing unnecessary checks and improving performance by only verifying the status before implementation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the programming result is checked as soon as data is programmed to the memory device, then the programming result can be verified, but the checking time is prolonged and the controller or firmware is occupied

Engineering Contradiction:
Improveprogramming result verificationVSAvoidchecking time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by recording the programming status immediately when programming is initiated, rather than waiting until programming completes. This allows the system to prepare verification information in advance, so that when checking is needed, the information is already available, significantly reducing the checking time while maintaining reliable verification.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the programming result is checked immediately, then the programming result can be verified, but the functions of the firmware or controller stop or are postponed until checking is finished

Engineering Contradiction:
Improveprogramming result verificationVSAvoidfirmware or controller function execution
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces an intermediary mechanism - a programming status record - that mediates between the programming operation and the verification process. Instead of requiring the controller to directly monitor and check programming completion, the status record serves as an intermediary that stores the programming state, allowing the controller to verify programming results without being occupied during the programming process, thus maintaining firmware functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If data is stored in the first memory until programming is confirmed successful, then data integrity is ensured, but the checking process occupies the controller for extended periods

Engineering Contradiction:
Improvedata integrityVSAvoidcontroller occupation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies self-service by making the programming status record automatically track and update the programming state without requiring continuous controller intervention. The status record serves itself to monitor programming progress and provide verification information, eliminating the need for the controller to actively check programming status, thus reducing controller occupation time while ensuring data integrity through automatic status tracking.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10169225B2Memory system and memory-control method with a programming status
Publication Date: 2019.01.01 SILICON MOTION INC
  • US10169225B2 patent drawing
  • US10169225B2 patent drawing
  • US10169225B2 patent drawing

AI summary

A memory system with a programming status is provided. The memory includes at least one first memory, at least one second memory and a controller. Each of the at least one first memory includes a plurality of memory regions to store data. Each of the at least one second memory includes a plurality of memory regions for programming the data from the at least one first memory. The controller is coupled to the second memory and utilized to record a programming status of the data. Whether the programming is successful or not is checked when the at least one first memory or the at least one second memory is going to be implemented by inquiring the programming status, and the at least one first memory stores the data until the programming is checked to be successful.