Processing-in-memory offset address calculation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The von Neumann architecture is limited by a bottleneck due to the delay in data movement between memory and processor, where improvements in processor speed do not translate to increased transmission rates, leading to inefficiencies in data access.

Innovation Solution

A processing-in-memory system that includes a memory, an internal processor, and a register to calculate and store offset information, allowing direct access to target physical addresses within the memory, reducing overhead and enhancing processing speed by performing calculations internally rather than relying on external instructions or memory management units.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in separate memory and moved between memory and processor, then storage capacity is improved, but data access speed is limited by transmission rate

Engineering Contradiction:
Improvestorage capacityVSAvoiddata access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent merges memory storage and processing functions into a single integrated system. The memory device includes both storage units and processing units that can execute operations directly on data within the memory, eliminating the need to transfer data between separate memory and processor. This combining of storage and processing functions allows data to be processed in-place, resolving the contradiction by enabling both high storage capacity and fast data access speed simultaneously.

Inventive Principle:
Principle #5Merging (Combining)

2Productivity

If processor speed is increased, then processing capability is improved, but data transmission rate becomes the bottleneck

Engineering Contradiction:
Improveprocessing capabilityVSAvoiddata transmission rate
Core Design Contradiction:
ProductivityVSSpeed

Solution Approach 1:

The patent extracts the processing function from the traditional CPU and embeds it within the memory device itself. The processing units are integrated into the memory structure, allowing data to be processed directly where it is stored. This extraction of processing capability from the central processor and placement within memory eliminates the transmission bottleneck, as data does not need to be moved between separate processing and storage locations.

Inventive Principle:
Principle #2Taking out (Extraction)

3Ease of operation

If data is frequently moved between memory and processor, then data access flexibility is improved, but processing time increases due to waiting

Engineering Contradiction:
Improvedata access flexibilityVSAvoidprocessing time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-positioning data within the memory device's processing units before it is needed by the processor. The memory structure is designed to hold data in accessible locations that can be processed immediately without requiring transfer. This preliminary placement of data in optimal positions eliminates waiting time while maintaining access flexibility, as data is already prepared and positioned for immediate processing.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11921626B2Processing-in-memory and method and apparatus with memory access
Publication Date: 2024.03.05 SAMSUNG ELECTRONICS CO LTD
  • US11921626B2 patent drawing
  • US11921626B2 patent drawing
  • US11921626B2 patent drawing

AI summary

A processing-in-memory includes: a memory; a register configured to store offset information; and an internal processor configured to: receive an instruction and a reference physical address of the memory from a memory controller, determine an offset physical address of the memory based on the offset information, determine a target physical address of the memory based on the reference physical address and the offset physical address, and perform the instruction by accessing the target physical address.