Flash Memory Controller Command Execution Using Inherited Address Information

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current flash memory devices require repetitive commands for status checks and concurrent operations across shared memory locations, increasing I/O transfer volume and reducing processing efficiency.

Innovation Solution

A controller communicates a first command with address information and an operation code, followed by subsequent commands with only an operation code, allowing the memory module to inherit the address information for actions like read, write, and erase operations across multiple planes, reducing the need for repeated address specification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If repetitive commands are issued for status checks and concurrent operations, then operational control is maintained, but I/O transfer volume increases and processing efficiency decreases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidI/O transfer volume
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent applies preliminary action by pre-loading address information into the memory module before subsequent operations are issued. The controller issues a first command with address information, and the memory module stores this address for reuse. This allows second and subsequent commands to reference the pre-loaded address without re-transmitting it, reducing I/O transfer volume while maintaining operational control.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements universality by enabling a single address information set to serve multiple operations. The address information loaded from the first command is reused across second and subsequent commands for different operations (status checks, concurrent operations across multiple planes), allowing one address transmission to support multiple functional requirements.

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

2Ease of operation

If address information is repeated in each command, then command clarity is maintained, but communication overhead increases

Engineering Contradiction:
Improvecommand execution simplicityVSAvoidcommand transmission time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The controller performs preliminary action by including address information in the first command, which the memory module then retains. Subsequent commands can reference this pre-loaded address without re-transmission, reducing communication overhead and transmission time while maintaining command clarity through the use of operation codes that reference the stored address.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If multiple commands are issued for concurrent operations, then operational control is maintained, but the number of commands increases

Engineering Contradiction:
Improveoperational controlVSAvoidnumber of commands
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies universality by enabling a single address information set to be reused across multiple operations including status checks and concurrent operations across multiple planes. The memory module's ability to retain and reuse address information reduces the number of commands needed while maintaining reliable operational control through structured command sequences.

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

Data Source

PatentUS9026699B2Command execution using existing address information
Publication Date: 2015.05.05 SEAGATE TECH LLC
  • US9026699B2 patent drawing
  • US9026699B2 patent drawing
  • US9026699B2 patent drawing

AI summary

Method and apparatus for managing data in a memory, such as a flash memory. In accordance with some embodiments, a memory module has a plurality of solid-state non-volatile memory cells. A controller communicates a first command having address information and a first operation code. The first operation code identifies a first action to be taken by the memory module in relation to the address information. The controller subsequently communicates a second command having a second operation code without corresponding address information. The memory module takes a second action identified by the second command using the address information from the first command.