PIM MAC Pipeline with Concurrent ECC and Error Compensation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Processing-in-memory (PIM) devices face challenges in efficiently performing multiplication and accumulation (MAC) operations due to errors in data stored within the device, which can degrade the performance of artificial intelligence applications, especially deep learning processes.

Innovation Solution

A method is implemented in PIM devices to execute MAC calculations by simultaneously performing error correction code (ECC) calculations and multiplying operations. This method involves outputting data and parity from a storage region, executing ECC and multiplying calculations, generating an error code to identify error locations, and compensating multiplication results when errors are detected.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If error correction code (ECC) calculation is performed separately before multiplication, then data accuracy is improved, but processing time increases

Engineering Contradiction:
Improvedata accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent merges the ECC calculation and multiplication operations into a single unified process. The multiplication unit performs both error correction and multiplication simultaneously by receiving input data, performing ECC calculation on it, and then multiplying the corrected data with weight data in one continuous operation flow, eliminating the need for separate sequential execution of these operations.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements preliminary error detection and correction within the multiplication pipeline. The ECC calculation is performed on input data before the multiplication operation begins, and error compensation is pre-calculated and applied during the multiplication process, ensuring that error correction is completed before the final multiplication result is produced.

Inventive Principle:
Principle #10Preliminary action

2Ease of manufacture

If ECC calculation and multiplication are performed sequentially, then each operation can be optimized independently, but overall processing speed decreases

Engineering Contradiction:
Improveoperation optimizationVSAvoidprocessing speed
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent combines multiple operations (ECC calculation, multiplication, and error compensation) into a single integrated processing unit. This unified multiplication unit executes all operations in parallel within one processing cycle, maintaining the ability to optimize each operation independently through dedicated circuitry while achieving high-speed concurrent execution.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent ensures continuous processing by eliminating idle time between operations. The multiplication unit continuously processes data through the entire pipeline from input reception to final output, with ECC calculation, multiplication, and error compensation all occurring in an unbroken sequence without intermediate pauses or data re-fetching operations.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If error correction is performed after multiplication, then multiplication speed is improved, but result accuracy decreases

Engineering Contradiction:
Improvemultiplication speedVSAvoidresult accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent performs error correction as a preliminary action before multiplication occurs. The ECC calculation is executed on the input data first, identifying and correcting errors before the multiplication operation begins. This ensures that the multiplication is performed on corrected data, maintaining both speed and accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms where the multiplication unit monitors the ECC calculation results and adjusts the multiplication operation accordingly. Error compensation values are fed back into the multiplication process, allowing the system to correct errors while maintaining the multiplication speed by using the feedback information to adjust calculations in real-time.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12306713B2Method of performing a multiplication and accumulation (MAC) operation in a processing-in- memory (PIM) device
Publication Date: 2025.05.20 SK HYNIX INC
  • US12306713B2 patent drawing
  • US12306713B2 patent drawing
  • US12306713B2 patent drawing

AI summary

There is provided a method of executing a multiplication and accumulation (MAC) calculation in a PIM device. The method may include outputting first data and a parity from a first storage region, outputting second data from a second storage region, simultaneously executing an error correction code (ECC) calculation of the first data and the parity and a multiplying calculation of the first and second data, generating an error code indicating an error location of the first data as a result of the ECC calculation, outputting multiplication result data corresponding to a result of the multiplying calculation when no error exists in the first data based on the error code, and executing a compensating calculation of the multiplication result data to output the compensated multiplication result data when an error exists in the first data based on the error code.