---
title: 'CACTUS: CSNR-Optimal ADC for AIMC'
url: https://www.emergentmind.com/topics/csnr-optimal-adc-cactus
type: topic
---

# CACTUS: CSNR-Optimal ADC for AIMC

A Compute SNR-optimal ADC, referred to as "CACTUS" (Compute Accurate Conversion via Threshold and Uniform Step search, *Editor's term*), is an analog-to-digital converter (ADC) framework and architecture jointly developed at the interface of analog in-memory computing (AIMC) and digital signal quantization. CACTUS is designed specifically to maximize the compute signal-to-noise ratio (CSNR) in AIMC tasks—most notably analog SRAM-based dot-product accelerators—powering high-precision deep neural inference with significant reductions in column ADC energy overhead. Unlike traditional methods that maximize signal-to-quantization-noise ratio (SQNR) under generic noise models, CACTUS explicitly targets the preservation of the dot-product accuracy intrinsic to computing in memory, enabling order-of-magnitude efficiency improvements at iso-accuracy [2302.06463], [2507.09776]. 

## 1. AIMC Dot-Product Model and Definition of CSNR

Within the analog in-memory computing paradigm, column-parallel dot products are realized by accumulating charge on a bitcell array according to binary input and weight vectors (\(\mathbf{x}, \mathbf{w} \in \{0,1\}^N\)). The ideal digital dot product \(y_{\rm ideal} = \mathbf{w}^T\mathbf{x}\) generates discrete analog levels after scaling (\(V_{\rm ideal} = y_{\rm ideal} \Delta_{\rm imc}\)), which are then subject to analog noise (\(\eta_a \sim \mathcal{N}(0, \sigma_a^2)\)), producing the pre-ADC signal \(V_{\rm pre}\). 

The column ADC performs a quantization operation, and its digital output is mapped back to a representation of the original dot product. The core metric for evaluating the ADC's impact on computational fidelity is the compute SNR (CSNR):
\[
\mathrm{CSNR}
= \frac{\mathrm{Var}(y_{\rm ideal})}
       {\mathbb{E}[(y_{\rm imc}-y_{\rm ideal})^2]}
\]
where \(y_{\rm imc}\) is the quantized and decoded output. This definition fundamentally contrasts with the traditional SQNR, which does not account for the discrete nature of \(y_{\rm ideal}\) or the AIMC context [2507.09776].

## 2. The CACTUS Optimization Algorithm

CACTUS is a targeted quantizer-parameter search methodology that maximizes CSNR by identifying the ADC parameters—thresholds and step-sizes—that directly minimize mean-squared dot-product error. Key insights include:

- **Lock-In Principle**: CSNR exhibits sharp, non-convex peaks as a function of quantizer boundaries, aligning whenever the ADC quantization step size (\(\Delta_{\rm adc}\)) is an integer multiple of the dot-product level spacing (\(\Delta_{\rm imc}\)), and thresholds are centered between discrete analog levels.
- **Closed-Form CSNR**: Leveraging the exact mixture distribution of \(V_{\rm pre}\) and the PMF \(p_y(y)\) of the dot product, CACTUS uses analytical solutions (Theorems 1 and 2, [2507.09776]) to compute calibration offsets, MSE, and maximal CSNR for a given bit-width.

The core algorithm iteratively searches over candidate quantizer step-sizes and positions, selecting the configuration yielding minimal error. CACTUS can be further inverted to find the minimum ADC precision (\(B_{\rm adc}\)) required to achieve a target CSNR.

**Summary Table: CACTUS Search Parameters**

| Parameter                | Role                             | Comments                                                        |
|--------------------------|----------------------------------|-----------------------------------------------------------------|
| \(\Delta_{\rm imc}\)     | Dot-product step (analog scale)  | Fixed by array sizing, post-layout extraction                   |
| \(B_{\rm adc}\)          | ADC resolution (bits)            | Search range \([1, \lceil\log_2 N\rceil]\)                      |
| \(t_1, t_M\)             | ADC thresholds                   | Constrained to "midpoints" between adjacent analog levels        |
| \(\sigma_a\)             | Analog noise (standard dev.)     | Technology- and design-dependent, e.g., 0.5–1 mV                |

## 3. CSNR-Optimal ADC Circuit Realizations: Dual-Use Capacitor-Reconfiguring Topology

Practical implementation of CACTUS-based CSNR-optimality is exemplified in the CR-CIM macro [2302.06463], which unifies analog MAC and ADC functionalities within a shared array of precision-matched capacitors:

**Compute Phase (MAC):**
- Bitcell: 6T SRAM plus fringe capacitor (\(C_{\rm cell}\), approx. 1.5 fF).
- Input: 10-bit thermometric drive loads weighted by SRAM content; charge accumulates directly on capacitors.

**ADC Phase (SAR Conversion):**
- Reuses the \(C_{\rm cell}\) array as a 10-bit binary C-DAC, with per-bit digital control (\(\mathrm{DDAC}[9:0]\)) forming a \(2^{10}\)-level binary ladder under a single comparator.
- No off-array charge redistribution; maximal signal swing (\(Q/C_{\rm tot}\) rather than \(Q/(C_{\rm tot}+C_{\rm ADC})\)), eliminating attenuation (attenuation factor \(\alpha = 0.5\) in conventional architectures).
- Result: \(2\times\) larger signal swing, \(2\times\) relaxed comparator noise requirement, yielding a \(4\times\) reduction in comparator energy for iso-CSNR.

## 4. Mathematical Impact on CSNR and Energy/Precision Trade-offs

The removal of off-array attenuation directly yields a CSNR improvement of approximately \(6\) dB, as:
\[
\Delta \mathrm{CSNR}_\alpha = 20 \log_{10}(1/\alpha) \approx 6~\mathrm{dB}
\]
By doubling the acceptable comparator input-referred noise at fixed CSNR, comparator energy reduces fourfold, since energy scales as the square of input noise. 

System-level implications are underscored in [2507.09776]: for a 256-dimensional SRAM AIMC (with \(\Delta_{\rm imc} = 39.4\) mV, \(\sigma_a = 5\) mV), CACTUS enables a 3-bit reduction in ADC precision for a 30 dB CSNR target (6 bits CACTUS vs. 9 bits conventional). Since ADC energy scales as \(4^{B_{\rm adc}}\), this translates to \(64\times\) energy savings per column ADC and roughly \(35\times\) at the full chip level (assuming ADCs account for 60% of power).

## 5. Software-Analog Co-Design: Dynamic Majority Voting

CACTUS incorporates a software-analog co-design methodology to further optimize layer-specific inference requirements in transformer workloads:
- **Attention layers:** Typically require CSNR ≈ 25 dB; single-shot SAR mode suffices.
- **MLP layers:** Demand CSNR ≈ 31 dB; dynamic "CSNR-Boost" mode enabled.
- **Majority Voting:** During the last 3 SAR bits, each comparator decision is repeated six times; a majority rule resolves the output, lowering bit error rate (from \(p \sim 0.01\) to \(P_{\rm MV} \approx 10^{-5}\)), and boosting CSNR by \(\approx 5.5\) dB. Overheads are limited (\(1.9\times\) power, \(2.5\times\) time), and dynamically gated via FSM flag with no hardware changes.

## 6. Figures-of-Merit: SQNR/CSNR and Benchmarking Results

Performance is jointly evaluated via SQNR and CSNR-based figures-of-merit (FoM):
\[
\begin{aligned}
\mathrm{SQNR}_{\rm bit} &= (\mathrm{SQNR}[{\rm dB}] - 1.76)/6.02\\
\mathrm{CSNR}_{\rm bit} &= (\mathrm{CSNR}[{\rm dB}] - 1.76)/6.02\\
\mathrm{SQNR-FoM} &= (\mathrm{TOPS}/W) \times 2^{\mathrm{SQNR}_{\rm bit}}\\
\mathrm{CSNR-FoM} &= (\mathrm{TOPS}/W) \times 2^{\mathrm{CSNR}_{\rm bit}}
\end{aligned}
\]
Measured for CACTUS (CR-CIM + CB): at 818 TOPS/W, SQNR = 45 dB (\(\rightarrow\mathrm{SQNR-FoM}\approx 1.24\times 10^5\)), CSNR = 31 dB (\(\rightarrow\mathrm{CSNR-FoM}\approx 2.2\times 10^4\)), representing respective \(2.3\times\) and \(1.5\times\) improvements over prior state-of-the-art charge-CIMs [2302.06463].

## 7. Timing, Reconfiguration, and Operational Characteristics

The CACTUS-based CR-CIM macro employs a strictly phased operation:
- **Compute:** Input driving and charge accumulation.
- **Reset (RST):** Global switch to stabilize held charge.
- **SAR bit trials (SA9–SA3):** Standard single-comparator cycles.
- **CSNR-Boost bits (SA2–SA0):** Multiple compare/vote cycles when enabled.
- **Ready:** Output available post-cycle.

Dynamic mode switching (CB mode) ensures optimal energy allocation tuned to the workload's precision needs without sacrificing performance. The architecture keeps the MAC charge resident within the same capacitor array, maintaining high signal integrity and enabling maximal compute SNR benefit.

---

In sum, CACTUS advances the state-of-the-art in ADC design for analog in-memory computing by unifying circuit-level capacitor reconfiguration, closed-form quantizer optimization, energy proportionality, and algorithm-hardware co-design. The result is demonstrable order-of-magnitude energy-efficiency improvements at fixed DNN accuracy, making CACTUS a reference approach for future AIMC systems seeking optimal trade-offs between precision, energy, and area [2302.06463], [2507.09776].

Source: https://www.emergentmind.com/topics/csnr-optimal-adc-cactus