DRAM Processing Unit for Deep Learning via In-Memory Logic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional Graphics Processing Units (GPUs) and Tensor Processing Units (TPUs) are inefficient for highly parallelized deep learning processing tasks.

Innovation Solution

A dynamic random access memory (DRAM) processing unit (DPU) system that includes a computing cell array and a stochastic computing cell array, using 3T1C or 1T1C DRAM memory cells to perform logic and stochastic operations, with a library, compiler, and driver to determine and execute DPU instructions for efficient deep learning processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPUs or TPUs are used for deep learning processing, then computing capability is provided, but processing efficiency for highly parallelized tasks deteriorates

Engineering Contradiction:
Improvedeep learning processing efficiencyVSAvoidprocessing efficiency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system segments the computing task across multiple independent DRAM-based computing cells arranged in arrays, where each cell can perform parallel operations. This segmentation enables highly parallelized processing by distributing computations across numerous simple, identical units that operate simultaneously on different data elements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent replaces conventional von Neumann architecture with in-memory computing using DRAM cells that perform logic operations directly during read/write cycles. This eliminates the mechanical bottleneck of data transfer between CPU and specialized units, substituting it with parallel in-memory operations that achieve higher throughput for parallelized deep learning tasks.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If DRAM-based computing cells are used to provide logic functions, then parallel processing capability is improved, but device complexity increases

Engineering Contradiction:
Improveparallel processing capabilityVSAvoiddevice complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The DRAM-based computing cells are designed to be universal, capable of performing multiple logic functions (AND, OR, NOT, NOR) depending on the control signals applied during read/write operations. This multi-functionality reduces device complexity by eliminating the need for separate dedicated logic circuits for each operation, while maintaining high parallel processing capability through the array structure.

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

Solution Approach 2:

The system changes the operational parameters of DRAM cells by applying different control signals (read enable, write enable, mask signals) to transform simple memory cells into functional logic units. This parameter-based configuration allows the same physical hardware to perform diverse computing functions without adding structural complexity, enabling parallel processing through software-controlled cell activation patterns.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If DRAM-based stochastic computing cells are used, then computing efficiency for specific operations is improved, but manufacturing complexity increases

Engineering Contradiction:
Improvecomputing efficiencyVSAvoidmanufacturing complexity
Core Design Contradiction:
ProductivityVSEase of manufacture

Solution Approach 1:

The patent achieves stochastic computing functionality by changing the operational parameters of standard DRAM cells through probabilistic control signals during read/write cycles. Instead of requiring complex stochastic hardware circuits, the system uses parameter-based randomization in control timing and signal sequencing to create stochastic computing behavior, improving efficiency for certain operations while maintaining ease of manufacture using existing DRAM fabrication processes.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10180808B2Software stack and programming for DPU operations
Publication Date: 2019.01.15 SAMSUNG ELECTRONICS CO LTD
  • US10180808B2 patent drawing
  • US10180808B2 patent drawing
  • US10180808B2 patent drawing

AI summary

A system includes a library, a compiler, a driver and at least one dynamic random access memory (DRAM) processing unit (DPU). The library may determine at least one DPU operation corresponding to a received command. The compiler may form at least one DPU instruction for the DPU operation. The driver may send the at least one DPU instruction to at least one DPU. The DPU may include at least one computing cell array that includes a plurality of DRAM-based computing cells arranged in an array having at least one column in which the at least one column may include at least three rows of DRAM-based computing cells configured to provide a logic function that operates on a first row and a second row of the at least three rows and configured to store a result of the logic function in a third row of the at least three rows.