Multisim and Ultiboard

cancel
Showing results for 
Search instead for 
Did you mean: 

memristor simulation

Hello,

I'm quite new in SPICE, but i found in literature model for memristoe simulations and wanted to play with it. Autors attached netlist code for different software, so I copied it paying attention to MULTISIM syntax, I have no error notoffication, but it is still not working. I'm looking for any help.

 

Best regards,

Ewelina

Download All
0 Kudos
Message 1 of 2
(2,632 Views)

The netlist where can be a mistake:

.SUBCKT memristor plus minus
*Parameters' values
.param rmin = 100
.param rmax = 390
.param rinit = 390
.param alpha = 1E6
.param beta = 10
.param gamma = 0.1
.param VtR = 1.5
.param VtL = -1.5 yo=0.0001
.param m = 82
.param fo = 310
.param Lo = 5
BGr 0 r I = {dr_dt(V(plus)-V(minus))*(st_f(V(plus)-V(minus))*st_f(V(r)-rmin)+
+st_f(-(V(plus)-V(minus)))*st_f(rmax-(r)))}
cCr r 0 1 IC={rinit}
rRaux r 0 1E12
*Current equation Imem = V / R(L)
BGpm plus minus I = {(V(plus)-V(minus))/((fo*exp(2*L(V(r))))/L(V(r)))}
*Func. for non-linear threshold-based behavior
.func dr_dt(y)={alpha*((y-VtL)/(gamma+abs(y-VtL)))*st_f(-y+VtL)-beta*y*st_f(y-VtL)*
+st_f(-y+VtR)-alpha*((y-VtR)/(gamma+abs(y-VtR)))*st_f(y-VtR)}
*smoothing function
.func st_f(y)={1/(exp(-y/yo)+1)}
*L(V) function
.func L(y)={Lo-Lo*m/y}
.ends memristor

 

Ewelina.

0 Kudos
Message 2 of 2
(2,601 Views)