Standalone Processing-in-Memory Architecture for Scalable Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Centralized compute architectures in high-performance computing limit the scalability and performance of memory capacity and bandwidth, particularly in memory-intensive workloads.

Innovation Solution

A standalone architecture with disaggregated compute and memory, featuring stacked memory modules interconnected via die-to-die connections, includes a base die with a microcontroller, processor elements, shared memory, and an interconnect, supporting a programming model with kernel grids and thread blocks for efficient execution across multiple processor elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If centralized compute architectures are used, then system integration is simplified, but memory capacity and bandwidth scalability is limited

Engineering Contradiction:
Improvesystem integrationVSAvoidmemory capacity and bandwidth
Core Design Contradiction:
Device complexityVSQuantity of substance

Solution Approach 1:

The system is divided into multiple independent stacked memory modules, each capable of autonomous operation with its own microcontroller and processor elements. This segmentation allows each module to be scaled independently while maintaining overall system functionality, resolving the contradiction between integration simplicity and memory scalability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The architecture transitions from traditional 2D memory organization to 3D stacked memory modules connected via die-to-die interfaces. This dimensional change enables significant increases in memory capacity and bandwidth without proportionally increasing system complexity, as multiple memory layers are integrated vertically within each module.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If memory capacity and bandwidth are increased, then performance for memory-intensive workloads improves, but system complexity increases

Engineering Contradiction:
Improveperformance for memory-intensive workloadsVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

By dividing the system into multiple identical stacked memory modules, high memory capacity and bandwidth are achieved through parallelism rather than complexity. Each module maintains a standardized, manageable complexity level while the aggregate system delivers high performance for memory-intensive workloads.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Each stacked memory module includes its own microcontroller and processor elements that can autonomously manage memory operations and processing tasks. This self-service capability reduces the burden on external controllers, allowing the system to scale memory capacity without proportionally increasing control complexity.

Inventive Principle:
Principle #25Self-service

3Quantity of substance

If standalone architecture with disaggregated compute and memory is implemented, then memory capacity and bandwidth scalability improves, but interconnection complexity increases

Engineering Contradiction:
Improvememory capacity and bandwidthVSAvoidinterconnection complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The architecture merges compute elements (processor elements and microcontrollers) directly within each stacked memory module, eliminating the need for complex external interconnections between separate memory and compute subsystems. This integration maintains memory capacity and bandwidth scalability while reducing interconnection complexity through localized processing.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Die-to-die connections establish vertical interconnections between stacked memory layers within each module, creating a compact 3D interconnect structure. This approach achieves high bandwidth and capacity scaling without requiring complex 2D routing networks, as data can be accessed directly across stacked layers through short vertical paths.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

4Productivity

If multiple processor elements are added, then compute resource scaling improves, but coordination and control complexity increases

Engineering Contradiction:
Improvecompute resource scalingVSAvoidcoordination and control complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Each stacked memory module contains its own microcontroller that independently manages the processor elements within that module. This segmentation of control authority allows compute resources to scale across multiple modules without requiring a single complex centralized controller, as each microcontroller handles coordination locally within its module.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The microcontroller and processor element architecture is designed as a universal, standardized unit that can be replicated across multiple stacked memory modules. This multi-functionality allows the same control logic to manage multiple processor elements through consistent interfaces, reducing coordination complexity despite increased compute resource scaling.

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

Data Source

PatentUS20260003796A1Systems and methods of standalone processing in memory
Publication Date: 2026.01.01 SAMSUNG ELECTRONICS CO LTD
  • US20260003796A1 patent drawing
  • US20260003796A1 patent drawing
  • US20260003796A1 patent drawing

AI summary

Provided are systems, methods, and apparatuses for a standalone architecture for processing in memory. In one or more examples, the systems, devices, and methods include assigning, via application code of a host of a memory system in package, a kernel sub grid of a kernel grid to a stacked memory module; assigning, via a microcontroller of a base die of the stacked memory module, execution of a first thread block of the kernel sub grid to a first processor element of the stacked memory module; assigning, via the microcontroller, execution of a second thread block of the kernel sub grid to a second processor element of the stacked memory module; executing threads of the first thread block on the first processor element; and executing threads of the second thread block on the second processor element.