From 19f9e5e972ddd4e08fa99f96a0ccc4101b86c9b1 Mon Sep 17 00:00:00 2001 From: Your Name Date: Tue, 18 Aug 2026 15:31:18 -0700 Subject: included models --- models/hp_memristor.cir | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 models/hp_memristor.cir (limited to 'models/hp_memristor.cir') diff --git a/models/hp_memristor.cir b/models/hp_memristor.cir new file mode 100644 index 0000000..1865a7a --- /dev/null +++ b/models/hp_memristor.cir @@ -0,0 +1,45 @@ +* HP Memristor SPICE Model +* For Transient Analysis only +* created by Zdenek and Dalibor Biolek +************************** +* Ron, Roff - Resistance in ON / OFF States +* Rinit - Resistance at T=0 +* D - Width of the thin film +* uv - Migration coefficient +* p - Parameter of the WINDOW-function +* for modeling nonlinear boundary conditions +* x - W/D Ratio, W is the actual width +* of the doped area (from 0 to D) +* +.SUBCKT memristor Plus Minus PARAMS: ++ Ron=1K Roff=100K Rinit=80K D=10N uv=10F p=1 +*********************************************** +* DIFFERENTIAL EQUATION MODELING * +*********************************************** +Gx 0 x value={ I(Emem)*uv*Ron/D^2*f(V(x),p)} +Cx x 0 1 IC={(Roff-Rinit)/(Roff-Ron)} +Raux x 0 1T + +* RESISTIVE PORT OF THE MEMRISTOR * +******************************* +Emem plus aux value={-I(Emem)*V(x)*(Roff-Ron)} +Roff aux minus {Roff} +*********************************************** +*Flux computation* +*********************************************** +*does not work with ngspice +*Eflux flux 0 value={SDT(V(plus,minus))} +*********************************************** +*Charge computation* +*********************************************** +*does not work with ngspice +*Echarge charge 0 value={SDT(I(Emem))} +*********************************************** +* WINDOW FUNCTIONS +* FOR NONLINEAR DRIFT MODELING * +*********************************************** +*window function, according to Joglekar +.func f(x,p)={1-(2*x-1)^(2*p)} +*proposed window function +;.func f(x,i,p)={1-(x-stp(-i))^(2*p)} +.ENDS memristor -- cgit v1.2.3