Memory-Mapped DIMM Commands for Cross-Array Data Transfer

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in efficiently transferring data and performing logic operations between volatile and non-volatile memory devices within dual in-line memory modules (DIMMs), particularly due to limitations in command protocols and control mechanisms.

Innovation Solution

Implementing memory mapped commands that include instructions for data transfer and logic operations between memory devices and channels on DIMMs, utilizing controllers and logic units like ASICs, FPGAs, and ALUs to manage data movement and processing across different memory types.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional memory systems use separate control mechanisms for volatile and non-volatile memory, then each memory type can be managed independently, but data transfer efficiency between memory types is reduced

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidcommand protocol complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal command protocol that enables a single control mechanism to manage both volatile and non-volatile memory devices. The memory mapped commands are designed to be type-agnostic, allowing the same command structure to operate across different memory technologies (DRAM, SRAM, Flash, NVM) without requiring separate control paths, thereby improving data transfer efficiency while maintaining manageable complexity through standardization

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

2Adaptability or versatility

If memory systems implement comprehensive logic operations between memory devices, then processing capability is enhanced, but control mechanism complexity increases

Engineering Contradiction:
Improvelogic operation capabilityVSAvoidcontroller complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces memory mapped commands as an intermediary layer between the host processor and memory devices. These commands act as a standardized interface that abstracts the complexity of inter-device logic operations, allowing the controller to manage complex operations (data transfer, logic operations between memory devices) through a unified command structure without requiring the host to directly manage the complexity of memory device interactions

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If data transfer occurs directly between memory devices on the same channel, then transfer speed is improved, but channel bandwidth contention increases

Engineering Contradiction:
Improvedata transfer speedVSAvoidchannel throughput
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent segments memory operations into device-level transactions that can be initiated and completed within the same channel without requiring host intervention for each transfer. By implementing memory mapped commands that enable direct memory-to-memory transfers at the device level, the system divides the transfer process into independent, parallelizable units that can execute simultaneously on different channels, improving both transfer speed and overall channel throughput through efficient resource utilization

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12608204B2Memory mapping for memory, memory modules, and non-volatile memory
Publication Date: 2026.04.21 LODESTAR LICENSING GROUP LLC
  • US12608204B2 patent drawing
  • US12608204B2 patent drawing
  • US12608204B2 patent drawing

AI summary

Apparatuses and methods related to commands to transfer data and/or perform logic operations are described. For example, a command that identifies a location of data and a target for transferring the data may be issued to a memory device. Or a command that identifies a location of data and one or more logic operations to be performed on that data may be issued to a memory device. A memory module may include different memory arrays (e.g., different technology types), and a command may identify data to be transferred between arrays or between controllers for the arrays. Commands may include targets for data expressed in or indicative of channels associated with the arrays, and data may be transferred between channels or between memory devices that share a channel, or both. Some commands may identify data, a target for the data, and a logic operation for the data.