Introduction to VCMA Model


Our voltage controlled magnetic anisotropy (VCMA) model is made based on our STT model. This model initially includes experiment-based device parameters for VCMA effect. Furthermore, The VCMA model allows ones to adjust the MTJ dimensions, device parameters(i.e. VCMA coefficient, thermal stability factor, etc), and experimental parameters such as voltage pulse and external magnetic field. It also includes the effect of initial angle and thermal fluctuation for a more accurate physics-based MTJ switching.


Block diagram of VCMA model

Publication


J. Song, I. Ahmed, Z. Zhao, S. Sapatnekar, J.P. Wang, C.H. Kim, ''Evaluation of Operating Margin and Switching Probability of Voltage- Controlled Magnetic Anisotropy Magnetic Tunnel Junctions", IEEE Journal of Exploratory Solid-State Computational Devices and Circuits (JxCDC), Apr. 2018 [LINK TO PAPER]

Downloads



Switching mechanism

Device
Parameter (Default)
Download
Dimension Material Ms0 P0 Alpha RA
Voltage controlled
magnetic anisotropy (VCMA)
Interface perpendicular MTJ 70nm x 70nm x 1.49nm CoFeB 950 0.54 0.025 130 VCMA_model.zip
By using our MTJ compact model, you agree to acknowledge the 
"UMN MTJ SPICE model, online: http://mtj.umn.edu" in your publications or presentations.

Getting started


Step1.  Download MTJ spice model. 
Step2.  Extract .zip file. STT model contains three separate zip files for in-plane, crystalline perpendicular and interface perpendicular MTJ. 
Step3.  Open MTJ_write.sp file (MTJ write example)
Step4.  Set MTJ dimensions and material parameters: Ms0, P0, alpha, RA and initial temparature. 
		For VCMA model, set VCMA parameter. 
		Additionally, you can add thermal fluctuation (see Step7) in SHE and VCMA model. 
                (Ms0: saturation magnetization, P0: polarization, both at zero Kelvin temperature.) 
Step5.  Select anisotropy type using parameter 'MA':
	          ex) In-plane magnetic anisotropy: MA='0' 
                         Perpendicular magnetic anisotropy: MA='1' 
Step6.  Select the initial state of free layer using parameter 'ini', and apply voltage with correct polarity. 
	       Magnetization of the fixed layer will be set automatically according to the 'ini' value. 
	           ex) Antiparallel to parallel switching : ini='1' with positive voltage 
	                  Parallel to antiparallel switching: ini='0' with negative voltage
Step7. Setting thermal fluctuation: A default thermal fluctuation SPICE file is already given. 
	   Use the MATLAB code, "NoiseGen_MATLAB.m" to create thermal fluctuation SPICE file for a different parameter.
	   By setting the parameter x_thermal = 0, in the LLG_solver.inc file, the thermal fluctuation can be omitted. 
Step8.  Run SPICE simulation


Acknowledgements


This work was supported in part by C-SPIN, one of six centers of STARnet, a Semiconductor Research Corporation program, sponsored by MARCO and DARPA.