This interactive simulation demonstrates the behavior of a memristor based on the HP Labs' TiO2 memristor model. The simulation shows the characteristic hysteresis loop in the I-V curve and the relationship between voltage, current, and memristance over time.
Adjust the parameters to see how they affect the memristor's behavior:
Below is a sample SPICE model implementation for the memristor. This can be used in circuit simulators like LTspice, PSPICE, or Ngspice to incorporate memristors into more complex circuit designs.
* Memristor SPICE Model based on HP Labs TiO2 memristor * Parameters: * Ron - Resistance in ON state * Roff - Resistance in OFF state * D - Device length * uv - Mobility * x0 - Initial state .SUBCKT MEMRISTOR PLUS MINUS PARAMS: Ron=100 Roff=16k D=10n uv=10e-14 x0=0.5 .PARAM a = {uv*Ron/D^2} * State equation dx/dt = a*i*f(x) .FUNC f(x) = 1-(2*x-1)^2 .FUNC w(x) = x*(1-x) .PARAM xinit = {x0} Ex memx 0 value = {idt(I(Gx)*a*f(V(memx)), xinit)} Bx memx 0 V = {limit(V(memx), 0, 1)} .FUNC Rmem(x) = {Ron*x + Roff*(1-x)} Gx PLUS MINUS value = {V(PLUS,MINUS)/Rmem(V(memx))} .ENDS MEMRISTOR * Example usage: * X1 input 0 MEMRISTOR Ron=100 Roff=16k D=10n uv=10e-14 x0=0.5 * Vsource input 0 SIN(0 1.0 1) * .tran 0.01 10 * .plot V(input) I(X1)
To use this model in your SPICE simulations:
A simple test circuit could look like this:
* Include the memristor model .include memristor.cir * Simple test circuit with a sine wave input Vsrc in 0 SIN(0 1.2 1 0 0) Xmem in out MEMRISTOR Ron=100 Roff=16k D=10n uv=10e-14 x0=0.5 Rload out 0 1k * Analysis commands .tran 0.01 4 .probe V(in) I(Xmem) V(out) .end
A memristor (memory + resistor) is the fourth fundamental passive circuit element, alongside the resistor, capacitor, and inductor. It was theoretically described by Leon Chua in 1971 but was only physically realized by HP Labs in 2008 using a titanium dioxide (TiO2) thin film.
The key property of a memristor is that its resistance depends on the history of current that has flowed through it. This gives it a memory-like property, hence the name "memristor."
A memristor relates electric charge q and magnetic flux φ:
dφ = M(q) · dq
Where M(q) is the memristance, which depends on the charge q that has flowed through the device.
For voltage v and current i:
v = M(q) · i
The HP Labs memristor consists of a thin film of TiO2 sandwiched between platinum electrodes. The TiO2 film has two regions:
As current flows through the device, the boundary between these regions moves, changing the overall resistance of the device. The state variable x (where 0 ≤ x ≤ 1) represents the normalized position of this boundary.
The memristance can be modeled as:
R(x) = RON · x + ROFF · (1-x)
And the state evolution by:
dx/dt = μ · RON/D2 · i · f(x)
Where: