In-Memory Computing Non-Volatile Memory for Neural Network Weight Storage

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data transfers between non-volatile and volatile memories and processors are time and power intensive, leading to delays and decreased performance in artificial neural network computations.

Innovation Solution

A non-volatile memory design with multiple memory areas and computing circuits that perform computing operations directly within the memory, eliminating the need for data transfer by applying input values to read paths, generating output currents, and programming storage elements to store weights for neural network layers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by moving object

If data is transferred between non-volatile memory and processor, then data can be stored persistently, but data transfer is time and power intensive

Engineering Contradiction:
Improvepower consumptionVSAvoiddata transfer time
Core Design Contradiction:
Use of energy by moving objectVSLoss of time

Solution Approach 1:

The patent merges memory storage functions with computing functions by implementing neural network weight storage and computing operations within the same non-volatile memory device. The memory cells serve dual purposes: storing weight values and performing dot-product computations, thereby eliminating the need for data transfer between separate memory and processor components.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The non-volatile memory device performs computing operations autonomously without requiring external processor intervention. The memory cells themselves execute neural network computations by applying input voltages and measuring resulting currents, enabling the memory to serve its own computing needs without external assistance.

Inventive Principle:
Principle #25Self-service

2Productivity

If data is transferred between non-volatile memory and processor, then computing operations can be performed, but data processing performance decreases

Engineering Contradiction:
Improvedata processing performanceVSAvoiddata transfer delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent combines memory and computing functions into a single integrated device. Neural network weight storage and dot-product computations are performed within the same non-volatile memory array, eliminating data transfer delays between separate memory and processor components.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent transitions from a traditional von Neumann architecture with separate memory and processing units to an in-memory computing architecture where computation occurs directly within the memory array. This dimensional shift in computational location eliminates the memory-wall bottleneck and improves data processing performance.

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

Applied Scientific Principles

This section explains which scientific principles are used to turn an abstract innovation direction into a practical engineering solution.

Function Achieved in This Case

This approach reduces latency and improves performance by performing all computing operations within the non-volatile memory, eliminating the need for data transfer between memory and processor, thereby enhancing the execution of neural network computations.

Implementation Method 1

a first plurality of storage elements, configured to store values of weights associated with a first plurality of neurons of a neural network

Methodology Applied
Scientific EffectElectrical charge storage: Capacitance

Implementation Method 2

a first computing circuit configured to add currents supplied by the first read paths to generate a first output current

Methodology Applied
Scientific EffectElectrical conduction: Conduction (electrical)

Implementation Method 3

a programming circuit configured to convert the first output current into a first programming current, and to program a first storage element of the second plurality of storage elements by using said first programming current

Methodology Applied
Scientific EffectElectrical current conversion: Electrical Resistance

Data Source

PatentUS20250104747A1Non-volatile memory architecture
Publication Date: 2025.03.27 STMICROELECTRONICS (GRENOBLE 2) SAS
  • US20250104747A1 patent drawing
  • US20250104747A1 patent drawing
  • US20250104747A1 patent drawing

AI summary

A non-volatile memory includes a first area with first storage elements configured to store values associated with first neurons of a network and a second area with second storage elements. A control circuit applies one or more first input values to first read paths, each first read path including one among the first storage elements. A computing circuit adds currents supplied by the first read paths to generate an output current. A programming circuit converts the output current into a programming current, and uses the programming current to program a second storage element.