Hello,

Recently i tried to simulate the following Spice netList with Spectre:( by : spectre filename.sp)

simulator lang = spice

.SUBCKT modelmemristor plus minus PARAMS:

+phio=0.95 Lm=0.0998 w1=0.1261 foff=3.5e-6

+ioff=115e-6 aoff=1.2 fon=40e-6 ion=8.9e-6

+aon=1.8 b=500e-6 wc=107e-3

G1 plus internal value={sgn(V(x))*(1/V(dw))^2*0.0617*(V(phiI)*exp(-V(B)*V(sr))-(V(phiI)+abs(V(x)))*exp(-V(B)*V(sr2)))}

Esr sr 0 value={sqrt(V(phiI))}

Esr2 sr2 0 value={sqrt(V(phiI)+abs(V(x)))}

Rs internal minus 215

Eg x 0 value={V(plus)-V(internal)}

Elamda Lmda 0 value={Lm/V(w)}

Ew2 w2 0 value={w1+V(w)-(0.9183/(2.85+4*V(Lmda)-2*abs(V(x))))}

EDw dw 0 value={V(w2)-w1}

EB B 0 value={10.246*V(dw)}

ER R 0 value={(V(w2)/w1)*(V(w)-w1)/(V(w)-V(w2))}

EphiI phiI 0 value={phio-abs(V(x))*((w1+V(w2))/(2*V(w)))-1.15*V(Lmda)*V(w)*log(V(R))/V(dw)}

C1 w 0 1e-9 IC=1.2

R w 0 1e8MEG

Ec c 0 value={abs(V(internal)-V(minus))/215}

Emon1 mon1 0 value={((V(w)-aoff)/wc)-(V(c)/b)}

Emon2 mon2 0 value={(aon-V(w))/wc-(V(c)/b)}

Goff 0 w value={foff*sinh(stp(V(x))*V(c)/ioff)*exp(-exp(V(mon1))-V(w)/wc)}

Gon w 0 value={fon*sinh(stp(-V(x))*V(c)/ion)*exp(-exp(V(mon2))-V(w)/wc)}

.ENDS modelmemristor

When doing so, i got the following errors:

Error found by spectre in `modelmemristor', during circuit read-in.

ERROR (SFE-1815): "Mem.sp" 2: Missing value for parameter `G1' in

subcircuit definition `modelmemristor'.

ERROR (SFE-662): "Mem.sp" 2: Badly formed subcircuit definition

`modelmemristor'.

I looked a littel bit and tried to change the G1 parameter to the following:

G1 plus internal** 0 xx** value={sgn(V(x))*(1/V(dw))^2*0.0617*(V(phiI)*exp(-V(B)*V(sr))-(V(phiI)+abs(V(x)))*exp(-V(B)*V(sr2)))}

Exx xx 0 1

But still same Errors..

Can anyway know what is the problem??

My final goal is to attach this netlist to a symbol so i can use it in virtuoso.

Thanks