Memory Controller Command Sequence Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

NAND memory systems face inefficiencies in executing command sequences, particularly when dealing with non-sequential or random addresses, leading to increased power consumption and bandwidth usage due to the inability to recognize repeated command sequences and optimize operations accordingly.

Innovation Solution

Implementing a system where the host system indicates repeated command sequences to the memory system, allowing it to store and recognize these sequences, enabling pre-reading of memory locations, rearranging data for efficient execution, and optimizing power control, such as transitioning to sleep or standby states, to accelerate command sequence execution and reduce power consumption and bandwidth.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the memory system performs read operations on non-sequential or random addresses, then the memory system can access any data location, but the power consumption and bandwidth increase significantly

Engineering Contradiction:
Improverandom access capabilityVSAvoidpower consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The system performs preliminary actions by pre-reading and caching frequently accessed data locations before they are actually needed. The memory system anticipates random access patterns and proactively loads data into a cache structure, transforming subsequent random reads into faster cache hits, thereby reducing overall power consumption while maintaining random access capability.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

An intermediary cache structure is introduced between the memory system and the host. This cache acts as a mediator that stores frequently accessed data, allowing the host to access data from the cache rather than directly from the memory array. This intermediary layer reduces the bandwidth and power consumption of random access operations while preserving the ability to access any memory location.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the memory system executes repeated command sequences, then the operations can be performed multiple times, but the time consumption increases without optimization

Engineering Contradiction:
Improveoperation repetition capabilityVSAvoidexecution time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary analysis of command sequences to identify repeated patterns. By pre-recognizing and storing optimized execution paths for repeated sequences, the system can quickly retrieve and execute these pre-optimized paths rather than re-processing the entire sequence each time, significantly reducing execution time for repeated operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms to monitor and detect repeated command sequences. By analyzing the feedback from executed commands, the system identifies patterns and automatically optimizes their execution. This feedback loop enables the system to learn from repeated operations and improve execution time progressively.

Inventive Principle:
Principle #23Feedback

3Use of energy by moving object

If the memory system uses sequential address access, then the bandwidth consumption is reduced, but the adaptability to random access patterns is limited

Engineering Contradiction:
Improvebandwidth consumptionVSAvoidaddress access flexibility
Core Design Contradiction:
Use of energy by moving objectVSAdaptability or versatility

Solution Approach 1:

The system dynamically adapts its address access pattern based on the actual memory access requirements. When sequential access is detected, the system uses sequential addressing to minimize bandwidth consumption. When random access patterns are detected, the system switches to a cache-based approach that maintains adaptability while reducing bandwidth usage. This dynamic adaptation allows the system to optimize bandwidth consumption without sacrificing access flexibility.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11704049B2Optimized command sequences
Publication Date: 2023.07.18 MICRON TECHNOLOGY INC
  • US11704049B2 patent drawing
  • US11704049B2 patent drawing
  • US11704049B2 patent drawing

AI summary

Methods, systems, and devices for optimized command sequences are described. An apparatus includes a memory array and a controller coupled with the memory array. The controller may be configured to receive a first command indicating a start of a sequence of access commands to store at the controller, then receive a first set of access commands associated with the sequence of access commands, and then receive a second command indicating the end of the sequence of access commands. The controller may also receive a second set of access commands after the command. The controller may execute an operation associated with a third set of access commands of the sequence after receiving the second set of access commands and before receiving the third set of access commands based at least in part on identifying the second set of access commands as starting the sequence of access commands.