Memory Controller Partial Write Activation Segmentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory devices face inefficiencies in partial write operations due to the need for read-modify-write cycles, which can delay other memory accesses and increase cycle count, as they typically support smaller write sizes than the write operations handled by memory controllers.

Innovation Solution

Implementing separate activate commands for each partial write within an overall write operation, allowing for interleaving of bank activations and potential merging of writes to reduce the number of partial writes, thereby improving performance and reducing cycle count.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single activate command is used for multiple partial writes to the same bank, then device complexity is reduced, but productivity decreases due to substantial delays in other memory accesses

Engineering Contradiction:
Improvecommand structureVSAvoidmemory access throughput
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments a single write operation containing multiple partial writes into separate activation groups. Each activation command activates a portion of the bank dedicated to specific partial writes, allowing other portions of the bank to be accessed simultaneously by other activation commands. This segmentation resolves the contradiction by enabling parallel access to different parts of the same bank, thereby improving productivity while maintaining manageable command complexity through systematic organization.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple activate commands are used for partial writes within an overall write operation, then productivity improves through interleaving, but device complexity increases

Engineering Contradiction:
Improvememory access throughputVSAvoidcommand structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic activation where the memory controller adaptively determines which partial writes to group together in each activation command based on current bank availability and access patterns. This dynamic approach allows the system to optimize productivity by interleaving activations when beneficial, while automatically reducing to simpler single-activation patterns when complexity would be excessive, thus resolving the contradiction between productivity improvement and complexity increase.

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If partial writes are performed sequentially in a single activated bank, then ease of operation is maintained, but loss of time increases due to waiting for completion

Engineering Contradiction:
Improveoperation simplicityVSAvoidwait time for memory accesses
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent segments the bank into multiple portions, each activated by separate activation commands for specific partial writes. This segmentation allows the memory controller to issue multiple activation commands in an interleaved manner, where while one portion of the bank is performing partial writes, other portions can simultaneously service other memory accesses. This eliminates the sequential waiting time while maintaining operational simplicity through systematic command organization, resolving the contradiction between ease of operation and time loss.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11847348B2Multi-activation techniques for partial write operations
Publication Date: 2023.12.19 APPLE INC
  • US11847348B2 patent drawing
  • US11847348B2 patent drawing
  • US11847348B2 patent drawing

AI summary

Techniques are disclosed relating to multi-activation techniques for wire operations with multiple partial writes. In some embodiments, a memory controller is configured to access data in a memory device that supports partial writes having a first size using read-modify-write operations and non-partial writes having a second size that is greater than the first size. In some embodiments, the memory controller is configured to queue a first write operation having the second size, where the first write operation includes multiple partial writes. In some embodiments, the memory controller is configured to send separate activate signals to the memory device to activate a bank of the memory device to perform different proper subsets of the multiple partial writes. This may allow interleaving of other accesses to a memory bank and merging of writes while waiting for a current activation, in some embodiments.