Inference with Analog CMO-ReRAM Statistical Model

The Analog AI Hardware Kit includes a statistical model for simulating the behavior of a resistive random-access memory (ReRAM) array during inference. This model accounts for various noise sources and non-idealities in real hardware, providing a realistic evaluation of inference accuracy under practical conditions. It is calibrated using measurements from analog filamentary Conductive Metal Oxide/HfOx-ReRAM (CMO-ReRAM) arrays fabricated at IBM [1] [2], ensuring it reflects the characteristics of actual devices.

Conventional ReRAM relies on the redox reactions within the conductive filament (CF) tunneling gap in the HfOx layer, resulting in the well-known abrupt switching characteristics. In contrast, the analog filamentary CMO-ReRAM operates on a different principle, with the modulation of defect states within the sub-band of the CMO layer playing a crucial role in its switching [3] [4] [5]. In this case, the CF plays a minimal role after the initial electroforming. During the RESET (from low to high resistance) process in CMO-ReRAM, oxygen vacancies migrate radially away from the conductive filament, depleting a semi-spherical volume referred to as the dome. This leads to a reduction in defect state density in the CMO layer, resulting in a high-resistance state. Conversely, during the SET (from high to low resistance) process, a local enrichment of defects occurs within the dome in the CMO layer, thus restoring the low-resistance state. Notably, various intermediate resistance states (IRS) can be achieved depending on the number of voltage pulses applied in both directions [3] [4] [6].

The model simulates three different sources of noise in the CMO-ReRAM array: programming noise, read noise, and temporal drift. The model is used only during inference, assuming that the network weights have been trained beforehand in software using dedicated training algorithm (e.g. SGD or Tiki-Taka) [7].

Pre-trained weights are normalized first into a \([-1,1]\) range, where:math:-1 corresponds to the HRS, i.e. \(g_\text{min}\), and \(1\) to the LRS, i.e. \(g_\text{max}\). Each weight is programmed into a single device due to the bidirectional switching capabilities of analog ReRAM devices. This statistical noise model assumes a minimum conductance level of 8 \(\mu S\) and a maximum conductance level of 90 \(\mu S\) [1].

Programming noise

Conductance levels are reached by following an identical-pulse closed-loop scheme [1]. The iterative process stops once the programmed conductance converges to the target value within a defined acceptance range and introduces an error due to the analog nature of conductance weights. The error is described by a normal distribution defined by a standard deviation referred to as programming noise.

\[g_\text{prog} = g_\text{target} + {\cal N}(0,\sigma_\text{prog})\]

The programming noise magnitude is defined by the acceptance range, where a narrower acceptance can improve programming precision at the cost of increasing the number of iterations for converging to the target conductance level. The statistical characterization of the CMO-ReRAM devices considered two representative acceptance range intervals: 0.2% and 2% of \(g_\text{target}\). The extracted programming noise model shows a linear relationship with respect to the target conductance for both acceptance ranges, fitted with the following equations [1]:

\begin{eqnarray*} \sigma_\text{prog}(0.2\%) = 1.0687 \: g_\text{target} \: [\mu S] + 0.811 \: [nS]\\ \sigma_\text{prog}(2\%) = 11.2902 \: g_\text{target} \: [\mu S] + 11.218 \: [nS] \\ \end{eqnarray*}

The fits of the equations above and the experimental data are shown below:

_images/reram_prog_plot.png

Drift

In analog ReRAM devices, a significant conductance relaxation has been observed immediately after programming (within few seconds). Following this initial abrupt conductance change, the relaxation process slows considerably. The drifted conductance level is defined as:

\[g_\text{drift} = {\cal N}(\mu_\text{drift},\sigma_\text{drift})\]

Described by a Gaussian distribution with mean \(\mu_\text{drift}\) and standard deviation \(\sigma_\text{drift}\). In contrast to other resistive memory devices, the characterization of conductance relaxation in CMO-ReRAM devices showed independence from the target conductance level [1]. Therefore, the time dependency of the drift was extracted for a reference conductance level of 50 \(\mu S\) among devices. The mean and standard deviation of the drift showed a decrease and increase with the logarithm of the time, respectively. The fitted equations to model the mean and the standard deviation are defined as:

\begin{eqnarray*} \mu_\text{drift} = g_{prog} - 0.089 \log (t) \: [\mu S]\\ \sigma_\text{drift} = 0.042 \log (t) + 0.4118 \: [\mu S]\\ \end{eqnarray*}

The fit of the experimental data and the euqtions is shown below:

Read noise

The last source of noise in CMO-ReRAM devices is \(1/f\) noise and random telegraph noise, also referred to as read noise [2]. The obtained conductance after the three sources of variation is:

\[g(t) = g_\text{drift} + {\cal N}(0,\sigma_\text{nG})\]

The read noise standard deviation (\(\sigma_\text{nG}\)) in CMO-ReRAM device showed a logarithmic dependency on the conductance level for the given conductance range ([8 , 90] \(\mu S\)). The read noise then depends on the target conductance level and the logarithm of the time after programming. The statistical characterization of the noise was performed using read pulses of \(1 \mu s\). The fitted model is described by the following equation:

\[σ_{nG}(t) = 0.0277 \: \log (g_\text{drift}(t)) \: \sqrt{\log\frac{t+t_\text{read}}{2 t_\text{read}}}\]

The fitting between the empirical data and the fitting for a time of inference of 10 s is shown below:

_images/reram_read_plot.png

References