Memory Controller Aging Detection for Computing-in-Memory Accuracy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing-in-memory (CiM) operations performed by non-volatile memory devices suffer from accuracy degradation due to aging, requiring frequent calibration.
Innovation Solution
A memory system with a control circuit that detects aging conditions by analyzing probing data stored in a probing memory block and adjusts the operation of memory blocks to compensate for weight drifts in neurons, thereby maintaining computation accuracy.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If non-volatile memory devices are used for CiM operations, then computation speed is accelerated, but accuracy degrades due to aging
Solution Approach 1:
The patent performs preliminary actions by storing probing data in a probing memory block before actual CiM operations begin. This probing data is used to detect aging conditions in advance, allowing the system to take compensatory measures before accuracy degradation affects computation results. The controller reads the probing data and determines aging conditions proactively, enabling preventive calibration or adjustment.
Solution Approach 2:
The patent implements feedback by continuously monitoring aging conditions through probing data and using this information to adjust CiM operations. The controller reads probing data, determines aging conditions, and据此 adjusts the computation process or calibrates the memory device to maintain accuracy. This closed-loop feedback mechanism ensures that accuracy degradation due to aging is detected and corrected in real-time.
2Reliability
If calibration is performed frequently to maintain accuracy, then accuracy is preserved, but productivity decreases due to frequent interruptions
Solution Approach 1:
The patent performs preliminary detection of aging conditions using probing data before actual calibration is needed. By monitoring probing data trends, the system can predict when calibration will be required and schedule it during appropriate intervals, avoiding unnecessary frequent calibrations that would interrupt computation. This allows the system to maintain accuracy while minimizing productivity loss.
Solution Approach 2:
The patent dynamically adjusts calibration frequency based on actual aging conditions detected through probing data. Instead of fixed frequent calibration, the system adapts its calibration schedule according to the measured aging rate. When aging is slow, calibration can be less frequent; when aging accelerates, calibration frequency increases. This dynamic approach optimizes the balance between maintaining accuracy and preserving computation productivity.
3Reliability
If memory blocks are dynamically enabled or disabled based on aging conditions, then accuracy is maintained, but device complexity increases
Solution Approach 1:
The patent segments the memory device into multiple memory blocks that can be independently controlled. The controller selectively enables or disables specific memory blocks based on aging conditions detected through probing data. This segmentation allows targeted calibration and compensation in affected blocks while leaving other blocks operational, maintaining overall system accuracy without requiring complete system recalibration, thus managing complexity through modular control.
Solution Approach 2:
The patent changes operational parameters by dynamically adjusting which memory blocks are active based on aging conditions. The controller modifies the operational state of memory blocks (enabling or disabling) according to probing data analysis. This parameter change approach allows the system to adapt to aging without fundamental architectural changes, maintaining accuracy through configurable parameter adjustments rather than complex hardware modifications.
Data Source
AI summary
A memory system, an operating method and a controller are provided. The memory system comprises a memory array and a controller. The memory array comprises a probing memory block and a plurality of memory blocks. The controller is configured to perform; write a probing data to the probing memory block; detect a strength of the probing data from the probing memory block to obtain an aging condition of the memory array; and control each memory block to be enabled or disabled according to the aging condition.


