Reliable and Robust In-Memory Computing Chips


Compute-in-memory (CIM) aims to process data directly inside memory arrays such as SRAM, eDRAM, and RRAM. Complex arithmetic and logic operations can be performed using compute-capable CIM arrays to achieve massive parallelism and unprecedented energy efficiency.

Although CIM promises superior efficiencies, computing in the analog domain is more susceptible to PVT variations than digital counterparts. The CIM circuitries must be designed to withstand the PVT variations in order to maintain high computational accuracy.

Research Directions:

  • Circuit-level techniques for enhanced accuracy of memory-centric computing
  • Active monitoring and compensation of aging effects in computing hardware
  • Design for reliable and robust computing in challenging environments

We have proposed multiple PVT-robustness techniques for RRAM-based CIM chips to guarantee highly accurate computations across a wide spectrum of operating conditions. For process variations of RRAM cells, a lightweight on-chip write-verify mechanism is proposed to tighten the memory state distributions for more precise in-memory summation of analog currents. To combat against temperature fluctuations that lead to missing output codes in ADCs, temperature-tracking ADC references are designed to guarantee more accurate sensing of analog MAC values.

To address the increased error rate arising from supply voltage perturbations, an in-situ analog ECC called MAC-ECC can be used to correct errors in analog MAC operations while preserving the row parallelism of CIM. An extrapolative design framework is also proposed to rapidly select the appropriate ECC strength based on the hardware’s underlying error rate and desired application accuracy after correction.