Randomized data polarity inversion of computational weight data in a digital in-memory computation processing system
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In-memory computation processing systems are vulnerable to side channel attacks due to the static storage of computational weight data, which can be exploited to extract proprietary information.
Innovation Solution
Implement a memory array with a randomized inversion of data polarity for computational weight data storage, using a memory array with a plurality of memory cells arranged in a matrix format, and apply a randomly selected polarity inversion during write and read operations to obscure the static nature of the data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If computational weight data is stored statically in memory cells for in-memory computation operations, then computation efficiency is improved by eliminating data transfer between memory and computing devices, but security deteriorates making the data susceptible to side channel attacks
Solution Approach 1:
The patent applies dynamics by transforming the static storage of computational weight data into a dynamic system where polarity inversion is randomly applied during write operations and compensated during read operations. This randomness introduces temporal variability to the stored data representation, preventing side channel attacks that rely on analyzing consistent power consumption patterns, while maintaining computation efficiency through in-memory processing.
Solution Approach 2:
The patent changes the parameter of data polarity in memory cells from a fixed state to a randomly inverted state. By randomly inverting the polarity (logic 0 to 1 or logic 1 to 0) when writing computational weight data and applying corresponding compensation during read operations, the system obscures the actual data values from side channel attacks while preserving the ability to perform accurate computations.
2Object-affected harmful factors
If randomized polarity inversion is applied to computational weight data during write and read operations, then security is improved by obscuring data from side channel attacks, but device complexity increases due to additional control circuitry
Solution Approach 1:
The patent implements a control circuit that serves multiple functions: it generates random polarity inversion patterns, applies them during write operations to memory cells, and compensates for them during read operations. This multi-functional approach secures data against side channel attacks while maintaining computation accuracy, without requiring separate dedicated circuits for each function.
Solution Approach 2:
The control circuit automatically manages the randomized polarity inversion process by internally generating random patterns and applying them consistently across write and read operations. The system self-regulates the security mechanism without requiring external intervention or complex external control, reducing overall system complexity while maintaining security.
Data Source
AI summary
Computational weight data for an in-memory computation operation is written to memory cells in a memory array with a randomly selected polarity inversion. During execution of the in-memory computation operation, the computational weight data is read from memory cells in the memory array. A polarity inversion is applied to the read computational weight data when that read computational weight data was written to memory cells in the memory array with the randomly selected polarity inversion.


