Next Article in Journal
Modeling Excitable Cells with Memristors
Previous Article in Journal
Coordination of SRF-PLL and Grid Forming Inverter Control in Microgrid with Solar PV and Energy Storage
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Simple, Robust, and Versatile MATLAB Formulation of the Dynamic Memdiode Model for Bipolar-Type Resistive Random Access Memory Devices

Departament d’Enginyeria Electrònica, Universitat Autònoma de Barcelona, 08193 Cerdanyola del Valles, Spain
*
Authors to whom correspondence should be addressed.
J. Low Power Electron. Appl. 2024, 14(2), 30; https://doi.org/10.3390/jlpea14020030
Submission received: 16 April 2024 / Revised: 8 May 2024 / Accepted: 24 May 2024 / Published: 28 May 2024

Abstract

:
Modeling in an emerging technology like RRAM devices is one of the pivotal concerns for its development. In the current bibliography, most of the models face difficulties in implementing or simulating unconventional scenarios, particularly when dealing with complex input signals. In addition, circuit simulators like Spice require long running times for high-resolution results because of their internal mathematical implementation. In this work, a fast, simple, robust, and versatile model for RRAM devices built in MATLAB is presented. The proposed model is a recursive and discretized version of the dynamic memdiode model (DMM) for bipolar-type resistive switching devices originally implemented in LTspice. The DMM model basically consists of two coupled equations: one for the current (non-linear current generator) and a second one for the memory state of the device (time-dependent differential equation). This work presents an easy-to-use tool for researchers to reproduce the experimental behavior of their devices and predict the outcome from non-trivial experiments. Three study cases are reported, aimed at capturing different phenomenologies: a frequency effect study, a cycle-to-cycle variability fit, and a stochastic resonance impact analysis.

1. Introduction

In recent years, the scientific community in the microelectronics field has expressed huge interest in RRAM (Resistive Random Access Memory) devices due to their unique properties, such as low power consumption, high scalability, endurance, and CMOS compatibility, among others [1]. As the switching material, these devices can be based on metal oxides like TiO2 or HfO2, chalcogenide glasses, lower dimensional materials like nanowires or nanodots, as well as other novel materials like metal–oxide frameworks [2,3,4]. Their application range includes logic circuits, neuromorphic systems, cryptology, and information storage [5,6,7,8,9]. Since RRAM devices are still an emerging technology, device-level characterization, and powerful modeling tools are key for enhancing its evolution to massive commercialization. To date, a lot of models have been implemented in simulators like Spice or Verilog [10]. These simulators are useful for complex architectures involving several devices but also lead to long waiting times for running the simulations and post-processing the data. In this work, a simple and effective tool is presented for reproducing the behavior of single RRAM devices in MATLAB, a common and well-known programming language. The advantages of the tool presented consist of easy implementation (since the script is openly included in the manuscript), straightforward data analysis, short simulating running times, and versatility in terms of parameters definition and input possibilities (applying non-trivial signals like noise). In the current literature, a few works using MATLAB for RRAM modeling are discussed. In [11], different existing models were studied using MATLAB simulations. In [12], a Kinetic Monte Carlo simulation in MATLAB to estimate and optimize the reliability of RRAM devices was reported. In [13], the implementation of a memristor-based neural network using MATLAB, Simulink, and LTspice for simulations and analysis was presented. In this work, the presented tool consists of a recursive version of the dynamic memdiode model (DMM) for RRAM devices, which was originally built for LTspice [14]. Its main features and the corresponding script are introduced in Section 2. In Section 3, a study about the effect of the input signal frequency is shown. Section 4 discusses a method for incorporating cycle-to-cycle variability in the model. Finally, a stochastic resonance impact study is presented in Section 5.

2. Dynamic Memdiode Model

This section introduces the DMM, which is defined by means of mainly two coupled equations, one for the current conduction and another for the memory state. The DMM is a compact behavioral model built under the idea that the current flows through a conductive filament (CF) running across the insulating layer of a metal–insulator–metal/semiconductor structure. The CF is created and destroyed as a consequence of the application of an external field, and this is the origin of the switching behavior [15,16]. For a bipolar-type resistive switching device, the DMM reads as follows:
I V = I 0 λ s i n h { α λ V R i + R λ I }
where I 0 λ = ( I o n I o f f ) λ + I o f f is the current amplitude, and λ is the memory state (l in the model script), which ranges from 0 to 1. α λ (a in the model script) and R λ are defined in the same way as I 0 . ‘off’ and ‘on’ terms are linked to the high and low-resistance states (HRS and LRS), respectively. V is the input voltage, and R i is a constant series resistance [14]. After some considerations thoroughly discussed in [17], the discrete recursive approach for the I-V characteristic reads
I V 1 α R { W α R I 0 2 e x p α V i W α R I 0 2 e x p α V i }
where W is the Lambert function (lambertw in MATLAB), and V i = V I · R i . Next, the evolution of the memory state in the DMM is written as the following balance equation:
d λ d t = 1 λ τ S λ τ R
(3) is the general equation for a redox process and is a nondimensional differential equation. τ S , R are the characteristic switching times for the set and reset transitions, respectively. According to our convention, the set occurs at positive bias and the reset at negative bias. Again, after some approaches discussed in [17], the recursively expressed and discretized version of (3) reads
λ t + 1 = λ t H V i t exp Δ t τ i S , R + H ( V i t )
λ t is the memory state, Δ t is the selected timestep, and H is the Heaviside step function.
τ i S V i t = e x p [ η S V i t V S ]
τ i R V i t = e x p [ η R λ γ V i t V R ]
where η S , R and V S , R (vs and vr in the model script) are the transition rates ( η S > 0 ,   η R < 0 , etas and etar in the model script, respectively) and reference switching voltages ( V S > 0 ,   V R < 0 ). Physically, these dependences are linked to the movement of metal ions or oxygen vacancies. γ or gam, in the model script, controls the reset transition rate. The model is ruled by Equations (2) and (4). Equations (5) and (6) are auxiliary functions. The complete script is reported in Table 1 for the reader’s possibility to copy and use it for its own purposes. In the model script, the first section (in black) builds the input signal. The second section (in green) is dedicated to the model parameters and initial conditions. The third section of the script (in blue) presents the auxiliary functions required by the model equations. The fourth section (in red) calculates the current I(t + 1) and the memory state l(t + 1). Finally, (in violet) the simulated currents and voltages are stored in the Im and Vm variables and plotted in the last two lines of the script. In addition, the memory state is stored in the lm variable. The same color pattern is followed in Appendix A, Appendix B and Appendix C, where the scripts for the case studies in the following Section 3, Section 4 and Section 5 are presented. In the Appendix A, Appendix B and Appendix C, the violet fragment includes the data analysis. Figure 1 shows the model results for the script described in Table 1, showing the typical memristor current–voltage loop (in black) and the memory state–voltage loop (in blue), highlighting the high/low-resistance states and the set/reset processes.
In Figure 2, a study of the impact of modifying different model parameters on the current–voltage characteristic is presented: (a) for vs, (b) for vr, (c) for aon, (d) for aoff, (e) for etas and etar, and (f) for gam. This study shows the model’s sensitivity and is a useful guide for potential users of the model.

3. First Case Study: Modeling of Frequency and Ramp Rate Effects

This section is dedicated to illustrating the model’s sensibility to variations in the input signal frequency (for sinusoidal signals) or the ramp rate (for voltage ramps). In the literature, it is reported that for high frequencies or ramp rates, both the set and reset voltages of bipolar RS devices increase in absolute value, making a wider butterfly-shaped I-V curve. A linear relationship between the logarithm of the ramp rate and the set and reset voltages has been reported [18,19]. For ramped input voltages, the magnitude for expressing the timing is the ramp rate (RR), which is directly related to the signal frequency. Figure 3 presents the evolution of the conduction characteristic for a typical experiment as reported in [19], using a voltage ramp as the input with different RRs of 50 V/s (red), 500 V/s (orange), 5000 V/s (light green), and 50,000 V/s (dark green). On one hand, in Figure 3a, the study is focused on the set evolution when the reset ramp rate is kept fixed. On the other hand, Figure 3b focuses on the reset evolution when the ramp rate for the set event is kept unaltered. Figure 3c shows the evolution of the set and reset voltages as a function of the ramp rate for these cases. Notice that the experimental curves are affected by a series transistor (current limitation during the set). Further details about the devices and the measurement setup can be found in [19]. Simulations are reported in Figure 4, and they do not include the transistor effect. Here, the focus is on the frequency phenomenology. The dependence of the set and reset voltages as a function of the ramp rate is shown in Figure 4a, including I-V curves using as the input signal a voltage ramp with identical ramp rates and colors used in Figure 3a. In Figure 4b, the dependence of the set and reset voltages as a function of the signal frequency is illustrated, including I-V curves using a sinusoidal voltage with frequencies of 1 Hz (red), 10 Hz (orange), 100 Hz (light green), and 1000 Hz (dark green) as the input signal. The insets in Figure 4a,b show the set and reset voltage evolution as a function of the logarithm of the ramp rate (Figure 4a) or the logarithm of the frequency (Figure 4b). A linear dependence is found in both cases. The required modifications in the model script to achieve these results can be found in Appendix A. Notice that some parts are omitted, identified with %Ramp Rate or %Frequency at the end of the line, since in one script, the two kinds of evaluations (RR or frequency) can be performed. Appendix A corresponds to the frequency study. For the RR study, the lines ending with %Frequency are deleted, and the lines ending with %Ramp Rate are activated. The model parameters RR and Δ t (At in the model script), included in Appendix A, are modified accordingly to set the desired input signal ramp rate or frequency.

4. Second Case Study: Modeling Cycle-to-Cycle Variability

In RRAM devices, the most significant challenge relates to its inherent C2C variability linked to atomic scale changes in the CF across the dielectric layer [20,21]. The inclusion of C2C variability is of utmost importance for any comprehensive model intended to reproduce the real device behavior. In the literature, different approaches for including variability in compact modeling can be found [22,23,24]. This section reproduces the experimental results reported in [25], where uncorrelated C2C variability is included in a previous version of the memdiode model. The experimental data come from 450 cycles of I-V curves measured in HfO2-based memristors. Additional information about the electrical characterization and fabrication process of the devices can be found in [26]. Before the incorporation of the C2C variability in the model, a study of the experimental features of the I-V curves involving the fitdistrplus package for the R language was carried out [27]. The best distributions for each model parameter were found and incorporated into the model parameters definition. Appendix B presents the MATLAB model script used for the simulations discussed in this Section. Here, two different examples of parameters, including variability, are reported:
M a o f f = 2.1 ;   S a o f f = 0.13 ;   a o f f = M a o f f + S a o f f r a n d n ;  
M I o f f = 3.7 E 5 ;   I o f f L N = l o g M I o f f ;   S I o f f = 0.06 ;   I o f f = e x p I o f f L N + S I o f f r a n d n ;  
In (7) and (8) (see Appendix B), two cases are presented, one following a normal distribution (7) and one following a lognormal distribution (8). The variables defined in (7), Maoff and Saoff (which represent the mean and standard deviation, respectively), are used to define the normally distributed aoff parameter. For a lognormally distributed parameter, like in (8), the same Mioff and Sioff are defined, but two extra steps are required: IoffLN, which is the logarithm of Mioff and the application of an exponential function in order to generate the lognormal distribution of Ioff. The randn function is used to generate a different random number in every cycle. Notice that not all the model parameters include variability, and some of them are constant for the sake of simplicity.
In Figure 5, the experimental data reported in [25] in blue (Figure 5a) and the simulations obtained using the recursive DMM model in MATLAB in red (Figure 5b) are compared. The good agreement between experimental and simulated results indicates the ability of the model to reproduce variability in the I-V loops. In addition, Figure 6a–d present histograms for the HRS current, LRS current, set voltage, and reset voltage, respectively, both for the experiments and simulations. All the histograms are well reproduced except the LRS current case, in which the experimental data exhibit a double peak likely caused by different atomic configurations of the CF. In [25], several trials were performed until finding the optimum combination of model parameters for achieving the observed variability. This process is time-consuming when performed in LTspice since the obtained results must be analyzed somewhere else. Now, the parameters, model equations, and data analysis are carried out with the same MATLAB script, largely reducing the time spent, thus easing the possibility of finding better-fitting results.

5. Third Case Study: Modeling the Stochastic Resonance Impact on RRAM Devices

Very often in electronics, noise is considered an undesired factor that needs to be eliminated. However, for certain non-linear systems, noise can play a beneficial role in terms of device performance [28]. This phenomenon is referred to as stochastic resonance (SR) and is present in a plethora of research fields like biology, physics, engineering, and many more [29,30]. Since RRAM devices are non-linear components, some works in the recent literature have studied the inclusion of external noise as a beneficial aspect of their performance [31,32,33,34,35]. In this section, noise is added to the applied voltage ramp. Again, the randn function in MATLAB is used to generate a normally distributed input voltage signal. The model script used for this study is presented in Appendix C, where the main difference with the basic model script shown in Table 1 is the following line:
a m p n = ( ( g 1 ) 40 ) 1 E 3 ; V ( t ) = V ( t ) + a m p n r a n d n ;  
In (9), ampn controls the noise standard deviation (σ) added to the input signal V by means of the randn MATLAB function; g is a variable controlling the noise σ (every 200 cycles, it increases 40 mV). The simulation process follows the experimental method reported in [36], consisting of 200 I-V cycles adding different noise values to the applied voltage ramps. This is carried out with the aim of capturing the real device phenomenology under noisy signals. Appendix C presents the script for the simulations described in this section. Figure 7a shows the simulation results without added noise. The figure of merit that is analyzed here to determine the noise impact on RRAM devices is the separation between HRS and LRS, in particular, the resistance ratio extracted at a fixed voltage ( V = 0.3   V ) as illustrated in Figure 7a. Figure 7b,c show the time evolution of the applied voltage and the simulated current, respectively, for a single simulated cycle using a noise amplitude σ = 200 mV. The resistance ratio evolution as a function of σ is illustrated in Figure 8. The experimental results extracted from [36] are shown in Figure 8a and represent the mean resistance ratio of 200 I-V cycles for different σ values. The mean resistance ratio of 200 simulated I-V cycles against noise σ is presented in Figure 8b, where an evident maximum is found for σ = 240 mV. Even though the experimental and simulated curves noticeably differ (a deep investigation of all the model parameter values is required), the model results qualitatively capture the device behavior when an external noise source is added to the input signal. The experimental simulated coherence in this case study could be enhanced by modifying the model equations to consider the impact of external noise.

6. Conclusions

In this work, a versatile and useful tool for modeling RRAM devices is presented. The model is a recursive version of the dynamic memdiode model (DMM) implemented in MATLAB software. This work includes the model script for the ease and free usage of the reader. This model has proven to be frequency sensitive, to reproduce the cycle-to-cycle variability of experimental devices, and to predict the impact of an external noise source in RRAM devices, where the resistance ratio against the noise amplitude follows the typical stochastic resonance curve. Compared with the DMM version implemented in LTspice, the time needed to modify parameters, simulate, and analyze the results is largely reduced. Because of these reasons, this tool could be of interest to researchers working in the RRAM field at the device level.

Author Contributions

Conceptualization, E.S., R.R. and E.M.; Data curation, E.S. and E.M.; Formal analysis, E.S., R.R. and E.M.; Funding acquisition, R.R. and E.M.; Investigation, E.S., R.R. and E.M.; Methodology, E.S., R.R. and E.M.; Project administration, R.R.; Resources, R.R. and E.M.; Software, E.S. and E.M.; Supervision, E.M.; Validation, E.S., R.R. and E.M.; Writing, review and editing, E.S., R.R. and E.M. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by Spanish MCIN/AEI/10.13039/501100011033/FEDER under projects PID2019-103869RB-C32 and PID2022-139586NB-C41. E.S. acknowledges the Departament de Recerca I Universitats de la Generalitat de Catalunya for the 2020FISDU00261 scholarship.

Data Availability Statement

The data are have not been uploaded anywhere, but the authors will provide it upon request.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A

Table A1. Script used for obtaining the simulations in Section 3, where a frequency effect study was performed in the recursive dynamic memdiode model implemented in MATLAB.
Table A1. Script used for obtaining the simulations in Section 3, where a frequency effect study was performed in the recursive dynamic memdiode model implemented in MATLAB.
Frequency Effect—DMM in MATLAB
ncyc=4;
for n=1:ncyc
V= 1.2 * sin(linspace(0, 2*pi, 10000));%Frequency
% step=0.005; V1=0:step:1.2; V2=0:-step:-1.2; V=[V1 flip(V1) V2 flip(V2)];%Ramp Rate
aoff=2; aon=2; Ri=3; Roff=30; Ron=10; Ioff=10E-5; Ion=150E-3;
etas=40; etar=-40; gam=0; Vs=0.35; Vr=-0.35; l(1)=0; I(1)=0;
RR(n)=1; At(n)=1/(10^n); f(n)=1/At(n);%Frequency
% At(n)=1; RR(n)=5*10^(n); %Ramp Rate
for t=1:length(V)
Vi=V(t)-(Ri)*I(t); I0=(Ion-Ioff)*l(t)+Ioff; a=(aon-aoff)*l(t)+aoff; R=(Ron-Roff)*l(t)+Roff;
Tsr=exp(-etas*(Vi-(Vs+log(RR(n))/etas)))*(V(t)>0)+exp(-etar*l(t)^gam*(Vi-(Vr+log(RR(n))/etar)))*(V(t)<=0);
I(t+1)=(1/(a*R))*(lambertw((a*R*I0)/2).*exp(a*Vi)-lambertw((a*R*I0)/2).*exp(-a*Vi));
l(t+1)=(l(t)-heaviside(Vi))*exp(-(At(n)/Tsr))+heaviside(Vi);
Vm(t,n)=V(t); Im(t,n)=I(t);lm(t,n)=l(t);
end
pos=find(lm(:,n) >=0.5);
reset(n)=Vm(pos(end),n);
set(n)=Vm(pos(1));
end
subplot(2, 1, 1); plot(Vm,(Im)); title('I-V - Frequency effect');%Frequency
subplot(2, 1, 2); plot(log(f),set,log(f),abs(reset)); title('Log F VS |S/R Voltage|'); %Frequency
% subplot(2, 1, 1); plot(Vm,(Im)); title('I-V - Ramp Rate effect'); %Ramp Rate
% subplot(2, 1, 2); plot(log(RR),set,log(RR),abs(reset)); title('Log RR VS |S/R Voltage|'); %Ramp Rate

Appendix B

Table A2. Script used for obtaining the simulations in Section 4, where a C2C variability study was performed in the recursive dynamic memdiode model implemented in MATLAB.
Table A2. Script used for obtaining the simulations in Section 4, where a C2C variability study was performed in the recursive dynamic memdiode model implemented in MATLAB.
Cycle-to-Cycle Variability—DMM in MATLAB
ncyc=450;
for n=1:ncyc
step=0.005; V1=0:step:1.5; V2=0:-step:-1.5; V=[V1 flip(V1) V2 flip(V2)];%for applied voltage
Maoff=2.1; Saoff=0.13; aoff=Maoff+Saoff*randn;%M=mean S=standard deviation
Maon=1.25; Saon=0.06; aon=Maon+Saon*randn;
MIoff=3.7E-5;IoffLN=log(MIoff);SIoff=0.6; Ioff=exp(IoffLN+SIoff*randn);%lognormal
MIon=2.4E-3; IonLN=log(MIon);SIon=0.12; Ion=exp(IonLN+SIon*randn);
MVs=0.38;VsLN=log(MVs);SVs=0.12; Vs=exp(VsLN+SVs*randn);%lognormal
MVr=-0.86; SVr=0.035; Vr=MVr+SVr*randn;
Metas=32; Setas=3.1; etas=Metas+Setas*randn;
etar=-27; Ri=60; gam=0; At=1E-3; Roff=50; Ron=20; IC=5E-3; l(1)=0; I(1)=0;
for t=1:length(V)
Vi=V(t)-(Ri)*I(t); I0=(Ion-Ioff)*l(t)+Ioff; a=(aon-aoff)*l(t)+aoff; R=(Ron-Roff)*l(t)+Roff;
Tsr=exp(-etas*(Vi-Vs))*(V(t)>0)+exp(-etar*l(t)^gam*(Vi-Vr))*(V(t)<=0);
if I(t)>IC
I(t)=IC; % Compliance current
end
I(t+1)=(1/(a*R))*(lambertw(a*R*I0/2)*exp(a*Vi)-lambertw(a*R*I0/2*exp(-a*Vi)));
l(t+1)=(l(t)-heaviside(Vi))*exp(-At/Tsr)+heaviside(Vi);
Vm(t,n)=V(t); Im(t,n)=I(t);lm(t,n)=l(t);
end
pos=find(lm(:,n) >=0.5);
posI=find(Vm(:,n)>=0.2);
ihrs(n)=Im(posI(1),n);
reset(n)=Vm(pos(end),n);
end
subplot(2, 1, 1); semilogy(Vm,abs(Im),'r'); title('I-V + C2C Variability');
subplot(2, 2, 3); hist(ihrs,15) ; title('Histogram Ihrs');
subplot(2, 2, 4); hist(reset,15) ; title('Histogram VReset');

Appendix C

Table A3. Script used for obtaining the simulations in Section 5, where a stochastic resonance impact study was performed in the recursive dynamic memdiode model implemented in MATLAB.
Table A3. Script used for obtaining the simulations in Section 5, where a stochastic resonance impact study was performed in the recursive dynamic memdiode model implemented in MATLAB.
Stochastic Resonance—DMM in MATLAB
for g=1:9 %g iterates the noise sigma
ncyc=200;
for n=1:ncyc
step=0.005; V1=0:step:1.2; V2=0:-step:-1.2; V=[V1 flip(V1) V2 flip(V2)];%applied voltage
aoff=1.9;aon=1.3;Roff=30; Ron=50;Ioff=19E-5;Ion=6.5E-3; %Parameters
Vs=0.55;Vr=-0.45; etas=4; etar=-9; Ri=0; gam=0; L0=0; At=1E-3;l(1)=0; I(1)=0;
for t=1:length(V)%calculating current
ampn=((g-1)*40)*1E-3; V(t)=V(t)+ampn*randn;%noise inclusion
Vi=V(t)-(Ri)*I(t); I0=(Ion-Ioff)*l(t)+Ioff; a=(aon-aoff)*l(t)+aoff; R=(Ron-Roff)*l(t)+Roff;
Tsr=exp(-etas*(Vi-Vs))*(V(t)>0)+exp(-etar*l(t)^gam*(Vi-Vr))*(V(t)<=0);
I(t+1)=(1/(a*R))*(lambertw(a*R*I0/2)*exp(a*Vi)-lambertw(a*R*I0/2*exp(-a*Vi)));
l(t+1)=(l(t)-heaviside(Vi))*exp(-At/Tsr)+heaviside(Vi);
Im(t,n,g)=I(t); Vm(t,n,g)=V(t); %Saving I and V variables
end
nn=1; pos=find(Vm(:,1,1)>=0.3);%Data analysis
Rl=mean((Im(pos(end)-nn:pos(end)+nn,:,g))); Rh=mean((Im(pos(1)-nn:pos(1)+nn,:,g)));
rat=(Rl./Rh); RRatio(g,1)=mean(rat);
end
end
subplot(2,1,1); semilogy(Vm(:,:,1),abs(Im(:,:,1)), 'r'); title('I-V without noise');
subplot(2,1,2); plot(RRatio); title('RRatio VS Noise sigma');

References

  1. Im, I.H.; Kim, S.J.; Jang, H.W. Memristive Devices for New Computing Paradigms. Adv. Intell. Syst. 2020, 2, 2000105. [Google Scholar] [CrossRef]
  2. Nagashima, K.; Yanagida, T.; Oka, K.; Taniguchi, M.; Kawai, T.; Kim, J.; Park, B.H. Resistive Switching Multistate Nonvolatile Memory Effects in a Single Cobalt Oxide Nanowire. Nano Lett. 2010, 10, 1359–1363. [Google Scholar] [CrossRef] [PubMed]
  3. Ishibea, T.; Maeda, Y.; Terada, T.; Naruse, N.; Mera, Y.; Kobayashi, E.; Nakamura, Y. Resistive switching memory performance in oxide hetero-nanocrystals with well-controlled interfaces. Sci. Technol. Adv. Mater. 2020, 21, 195–204. [Google Scholar] [CrossRef] [PubMed]
  4. Shu, F.; Chen, X.; Yu, Z.; Gao, P.; Liu, G. Metal–Organic Frameworks–Based Memristors: Materials, Devices, and Applications. Molecules 2022, 27, 8888. [Google Scholar] [CrossRef] [PubMed]
  5. Lee, S.H.; Zhu, X.; Lu, W.D. Nanoscale resistive switching devices for memory and computing applications. Nano Res. 2020, 13, 1228–1243. [Google Scholar] [CrossRef]
  6. Ielmini, D.; Wong, S.H.P. In-memory computing with resistive switching devices. Nat. Electron. 2018, 1, 333–343. [Google Scholar] [CrossRef]
  7. Pedretti, G.; Milo, V.; Ambrogio, S.; Carboni, R.; Bianchi, S.; Calderoni, A.; Ramaswamy, N.; Spinelli, A.S.; Ielmini, D. Stochastic learning in neuromorphic hardware via spike timing dependent plasticity with RRAM synapses. IEEE J. Emerg. Sel. Top. Circuits Syst. 2018, 8, 77–85. [Google Scholar] [CrossRef]
  8. Li, C.; Hu, M.; Li, Y.; Jiang, H.; Ge, N.; Montgomery, E.; Zhang, J.; Song, W.; Dávila, N.; Graves, C.E.; et al. Analogue signal and image processing with large memristor crossbars. Nat. Electron. 2018, 7, 52–59. [Google Scholar] [CrossRef]
  9. Aziza, H.; Postel-Pellerin, J.; Bazzi, H.; Canet, P.; Moreau, M.; Della Marca, V.; Harb, A. True Random Number Generator Integration in a Resistive RAM Memory Array Using Input Current Limitation. IEEE Trans. Nanotechnol. 2020, 19, 214–222. [Google Scholar] [CrossRef]
  10. Ielmini, D.; Milo, V. Physics-based modeling approaches of resistive switching devices for memory and in-memory computing applications. J. Comput. Electron. 2017, 16, 1121–1143. [Google Scholar] [CrossRef]
  11. Elgabra, H.; Farhat, I.A.H.; Hosani, A.S.A.; Homouz, D.; Mohammad, B. Mathematical modeling of a memristor device. In Proceedings of the 2012 International Conference on Innovations in Information Technology (IIT), Abu Dhabi, United Arab Emirates, 18–20 March 2012; pp. 156–161. [Google Scholar] [CrossRef]
  12. Huang, L.; Mosleh, A. A Physics of Failure, Kinetic Simulation Model for Reliability of RRAM. In Proceedings of the 2023 Annual Reliability and Maintainability Symposium (RAMS), Orlando, FL, USA, 23–26 January 2023; pp. 1–6. [Google Scholar] [CrossRef]
  13. Mladenov, V.; Kirilov, S. A Memristor Neural Network Based on Simple Logarithmic-Sigmoidal Transfer Function with MOS Transistors. Electronics 2024, 13, 893. [Google Scholar] [CrossRef]
  14. Aguirre, F.L.; Suñé, J.; Miranda, E. SPICE Implementation of the Dynamic Memdiode Model for Bipolar Resistive Switching Devices. Micromachines 2022, 13, 330. [Google Scholar] [CrossRef] [PubMed]
  15. Karpov, V.; Niraula, D.; Karpov, I. Thermodynamic analysis of conductive filaments. Appl. Phys. Lett. 2016, 109, 093501. [Google Scholar] [CrossRef]
  16. Wouters, D.J.; Menzel, S.; Rupp, J.A.J.; Hennen, T.; Waser, R. On the universality of the I–V switching characteristics in non-volatile and volatile resistive switching oxides. Faraday Discuss. 2019, 213, 183–196. [Google Scholar] [CrossRef] [PubMed]
  17. Miranda, E.; Piros, E.; Aguirre, F.L.; Kim, T.; Schreyer, P.; Gehrunger, J.; Oster, T.; Hofmann, K.; Suñé, J.; Hochberger, C.; et al. Simulation of Bipolar-Type Resistive Switching Devices Using a Recursive Approach to the Dynamic Memdiode Model. IEEE Electron Device Lett. 2023, 44, 1551–1554. [Google Scholar] [CrossRef]
  18. Ostrovskii, V.; Fedoseev, P.; Bobrova, Y.; Butusov, D. Structural and parametric identification of Knowm memristors. Nanomaterials 2022, 12, 63. [Google Scholar] [CrossRef]
  19. Rodriguez-Fernandez, A.; Cagli, C.; Perniola, L.; Suñé, J.; Miranda, E. Effect of the voltage ramp rate on the set and reset voltages of ReRAM devices. Mic. Eng. 2017, 178, 61–65. [Google Scholar] [CrossRef]
  20. Chen, A.; Lin, M.R. Variability of resistive switching memories and its impact on crossbar array performance. In Proceedings of the 2011 International Reliability Physics Symposium, Monterey, CA, USA, 10–14 April 2011; pp. 843–846. [Google Scholar] [CrossRef]
  21. Piccolboni, G.; Molas, G.; Garbin, D.; Vianello, E.; Cueto, O.; Cagli, C.; Traore, B.; De Salvo, B.; Ghibaudo, G.; Perniola, L. Investigation of Cycle-to-Cycle Variability in HfO2-Based OxRAM. IEEE Electron Device Lett. 2016, 37, 721–723. [Google Scholar] [CrossRef]
  22. García-Redondo, F.; López-Vallejo, M.; Barrio, C.L. Advanced integration of variability and degradation in RRAM SPICE compact models. In Proceedings of the 2017 14th International Conference on Synthesis, Modeling, Analysis and Simulation Methods and Applications to Circuit Design (SMACD), Taormina, Italy, 12–15 June 2017. [Google Scholar]
  23. Roldán, J.B.; Miranda, E.; Maldonado, D.; Mikhaylov, A.N.; Agudov, N.V.; Dubkov, A.A.; Koryazhkina, M.N.; González, M.B.; Villena, M.A.; Poblador, S.; et al. Variability in resistive memories. Adv. Intell. Syst. 2023, 5, 2200338. [Google Scholar] [CrossRef]
  24. Reuben, J.; Biglari, M.; Fey, D. Incorporating Variability of Resistive RAM in Circuit Simulations Using the Stanford–PKU Model. IEEE Trans. Nanotechnol. 2020, 19, 508–518. [Google Scholar] [CrossRef]
  25. Salvador, E.; Gonzalez, M.B.; Campabadal, F.; Martin-Martinez, J.; Rodriguez, R.; Miranda, E. Assessment of the variability of the I-V characteristic of HfO2-based resistive switching devices and its simulation using the quasi-static memdiode model. Solid State Electron. 2023, 206, 108667. [Google Scholar] [CrossRef]
  26. Poblador, S.; Gonzalez, M.B.; Campabadal, F. Investigation of the multilevel capability of TiN/Ti/HfO2/W resistive switching devices by sweep and pulse programming. Microelectron. Eng. 2018, 187–188, 148–153. [Google Scholar] [CrossRef]
  27. Delignette-Muller, M.L.; Dutang, C. fitdistrplus: An R Package for Fitting Distributions. J. Stat. Softw. 2015, 64, 1–34. [Google Scholar] [CrossRef]
  28. Benzi, R.; Sutera, A.; Vulpiani, A. The mechanism of stochastic resonance. J. Phys. A Math. Gen. 1981, 14, L453. [Google Scholar] [CrossRef]
  29. Wiesenfeld, K.; Moss, F. Stochastic resonance and the benefits of noise: From ice ages to crayfish and SQUIDs. Nature 1995, 373, 33–36. [Google Scholar] [CrossRef]
  30. Harmer, G.P.; Davis, B.R.; Abbot, D. A review of stochastic resonance: Circuits and measurement. IEEE Trans. Instrum. Meas. 2002, 31, 299–309. [Google Scholar] [CrossRef]
  31. Kasai, S. Stochastic resonance and related phenomena in nonlinear electron nanodevices. In Proceedings of the IEEE International Nanoelectronics Conference (INEC), Sapporo, Japan, 28–31 July 2014. [Google Scholar]
  32. Scotland, A.; Di Ventra, M. Stochastic memory: Memory enhancement due to noise. Phys. Rev. E 2012, 85, 011116. [Google Scholar] [CrossRef] [PubMed]
  33. Patterson, G.A.; Fierens, P.I.; Grosz, D.F. On the beneficial role of noise in resistive switching. Appl. Phys. Lett. 2013, 103, 074102. [Google Scholar] [CrossRef]
  34. Roldán, J.B.; Cantudo, A.; Torres, J.J.; Maldonado, D.; Shen, Y.; Zhen, W.; Yuan, Y.; Lanza, M. Stochastic resonance in 2D materials based memristors. npj 2D Mater. Appl. 2024, 8, 7. [Google Scholar] [CrossRef]
  35. Mikhaylov, A.N.; Guseinov, D.V.; Belov, A.I.; Korolev, D.S.; Shishmakova, V.A.; Koryazhkina, M.N.; Filatov, D.O.; Gorshkov, O.N.; Maldonado, D.; Alonso, F.J.; et al. Stochastic resonance in a metal-oxide memristive device. Chaos Solitons Fractals 2021, 144, 110723. [Google Scholar] [CrossRef]
  36. Rodriguez, R.; Martin-Martinez, J.; Salvador, E.; Crespo-Yepes, A.; Miranda, E.; Nafria, M.; Rubio, A.; Ntinas, V.; Sirakoulis, G.C. Beneficial Role of Noise in Hf-based Memristors. In Proceedings of the 2022 IEEE International Symposium on Circuits and Systems (ISCAS), Austin, TX, USA, 27 May–1 June 2022. [Google Scholar]
Figure 1. Simulated I-V characteristics obtained with the model script in Table 1. High and low resistance states and set and reset processes are highlighted. The right Y axis, in blue, represents the memory state.
Figure 1. Simulated I-V characteristics obtained with the model script in Table 1. High and low resistance states and set and reset processes are highlighted. The right Y axis, in blue, represents the memory state.
Jlpea 14 00030 g001
Figure 2. Effect of modifying different model parameters on the I-V characteristics. (a) vs, (b) vr, (c) aon, (d) aoff, (e) etas and etar, and (f) gam.
Figure 2. Effect of modifying different model parameters on the I-V characteristics. (a) vs, (b) vr, (c) aon, (d) aoff, (e) etas and etar, and (f) gam.
Jlpea 14 00030 g002
Figure 3. Experimental ramp rate study impact study in [19]. (a,b) show the I-V curves for studying the set and reset voltage evolution with the RR, respectively. (c) shows the linear evolution of set and reset voltages against the logarithm of RR. Data from [19].
Figure 3. Experimental ramp rate study impact study in [19]. (a,b) show the I-V curves for studying the set and reset voltage evolution with the RR, respectively. (c) shows the linear evolution of set and reset voltages against the logarithm of RR. Data from [19].
Jlpea 14 00030 g003
Figure 4. Simulated impact of the ramp rate (a) and frequency (b) on the set and reset voltages: (a) I-V curves using as input signal a voltage ramp with a ramp rate of 50 V/s (red), 500 V/s (orange), 5000 V/s (light green), and 50,000 V/s (dark green). (b) I-V curves using a sinusoidal voltage with a frequency of 1 Hz (red), 10 Hz (orange), 100 Hz (light green), and 1000 Hz (dark green) as the input signal. The insets show the linear dependence of the set (red) and reset (black) voltage with the logarithm of the ramp rate (a) or the frequency (b).
Figure 4. Simulated impact of the ramp rate (a) and frequency (b) on the set and reset voltages: (a) I-V curves using as input signal a voltage ramp with a ramp rate of 50 V/s (red), 500 V/s (orange), 5000 V/s (light green), and 50,000 V/s (dark green). (b) I-V curves using a sinusoidal voltage with a frequency of 1 Hz (red), 10 Hz (orange), 100 Hz (light green), and 1000 Hz (dark green) as the input signal. The insets show the linear dependence of the set (red) and reset (black) voltage with the logarithm of the ramp rate (a) or the frequency (b).
Jlpea 14 00030 g004
Figure 5. Comparison of the 450 I-V cycles. (a) From the experimental devices in [25] (in blue) and (b) from the simulations (in red), including C2C variability. In both figures, the median curve is shown in black. Experimental data from [25].
Figure 5. Comparison of the 450 I-V cycles. (a) From the experimental devices in [25] (in blue) and (b) from the simulations (in red), including C2C variability. In both figures, the median curve is shown in black. Experimental data from [25].
Jlpea 14 00030 g005
Figure 6. Histogram comparison of (a) HRS current, (b) LRS current, (c) set voltage, and (d) reset voltage for experimental curves (in blue) and simulations (in red). Experimental data from [25].
Figure 6. Histogram comparison of (a) HRS current, (b) LRS current, (c) set voltage, and (d) reset voltage for experimental curves (in blue) and simulations (in red). Experimental data from [25].
Jlpea 14 00030 g006
Figure 7. (a) Simulated I-V curves using the DMM implemented in MATLAB without noise addition. (b,c) time evolution of applied voltage and simulated current, respectively, of one simulated cycle using a noise sigma of 200 mV.
Figure 7. (a) Simulated I-V curves using the DMM implemented in MATLAB without noise addition. (b,c) time evolution of applied voltage and simulated current, respectively, of one simulated cycle using a noise sigma of 200 mV.
Jlpea 14 00030 g007
Figure 8. Mean resistance ratio evolution versus the applied noise standard deviation in simulations using the DMM in MATLAB. (a) Experimental data of 200 cycles of each noise sigma in [36] and (b) simulated data from 200 cycles of each noise sigma.
Figure 8. Mean resistance ratio evolution versus the applied noise standard deviation in simulations using the DMM in MATLAB. (a) Experimental data of 200 cycles of each noise sigma in [36] and (b) simulated data from 200 cycles of each noise sigma.
Jlpea 14 00030 g008
Table 1. Script for the recursive dynamic memdiode model implemented in MATLAB. In black, the applied voltage. In green, the model. In blue, the auxiliary functions. In red, the model equations. In violet, saving parameters and plotting the I-V curve.
Table 1. Script for the recursive dynamic memdiode model implemented in MATLAB. In black, the applied voltage. In green, the model. In blue, the auxiliary functions. In red, the model equations. In violet, saving parameters and plotting the I-V curve.
Dynamic Memdiode Model in MATLAB
step=5E-3; V1=0:step:1.2; V2=0:-step:-1.2; V=[V1 flip(V1) V2 flip(V2)]; %Voltage input
aoff=2; aon=2; Ri=40; Roff=30; Ron=30; Ioff=10E-5; Ion=3E-3; %Parameter definition
etas=40; etar=-15; gam=0.1; At=1E-3; Vs=0.5; Vr=-0.3; l(1)=0; I(1)=0;
for t=1:length(V) %Auxiliary functions
Vi=V(t)-Ri*I(t); I0=(Ion-Ioff)*l(t)+Ioff; a=(aon-aoff)*l(t)+aoff; R=(Ron-Roff)*l(t)+Roff;
Tsr =exp(-etas*(Vi-Vs))*(V(t)>0)+exp(-etar*l(t)^gam*(Vi-Vr))*(V(t)<=0);
I(t+1)=(1/(a*R))*(lambertw(a*R*I0/2) *exp(a*Vi)-lambertw(a*R*I0/2*exp(-a*Vi)));% Model equations
l(t+1)=(l(t)-heaviside(Vi))*exp(-At/Tsr)+heaviside(Vi);
Vm(t)=V(t); Im(t)=I(t); lm(t)=l(t); %Saving variables and plotting
end
semilogy(Vm,abs(Im),’black’)
xlabel(‘Voltage (V)’); ylabel(‘Current (A)’); title(‘Current-Voltage Characteristics’);
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Salvador, E.; Rodriguez, R.; Miranda, E. A Simple, Robust, and Versatile MATLAB Formulation of the Dynamic Memdiode Model for Bipolar-Type Resistive Random Access Memory Devices. J. Low Power Electron. Appl. 2024, 14, 30. https://doi.org/10.3390/jlpea14020030

AMA Style

Salvador E, Rodriguez R, Miranda E. A Simple, Robust, and Versatile MATLAB Formulation of the Dynamic Memdiode Model for Bipolar-Type Resistive Random Access Memory Devices. Journal of Low Power Electronics and Applications. 2024; 14(2):30. https://doi.org/10.3390/jlpea14020030

Chicago/Turabian Style

Salvador, Emili, Rosana Rodriguez, and Enrique Miranda. 2024. "A Simple, Robust, and Versatile MATLAB Formulation of the Dynamic Memdiode Model for Bipolar-Type Resistive Random Access Memory Devices" Journal of Low Power Electronics and Applications 14, no. 2: 30. https://doi.org/10.3390/jlpea14020030

APA Style

Salvador, E., Rodriguez, R., & Miranda, E. (2024). A Simple, Robust, and Versatile MATLAB Formulation of the Dynamic Memdiode Model for Bipolar-Type Resistive Random Access Memory Devices. Journal of Low Power Electronics and Applications, 14(2), 30. https://doi.org/10.3390/jlpea14020030

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop