Switching mechanism |
Device |
Parameter (Default) | Download |
||||||
---|---|---|---|---|---|---|---|---|---|
Dimension | Material | Ms0 | P0 | Alpha | RA | SHA | |||
Spin transfer torque (STT) |
In-plane MTJ | 32nm x 96nm x 2.44nm | CoFeB | 1210 | 0.69 | 0.0062 | 5 | - | STT_model.zip |
Crystalline perpendicular MTJ | 45nm x 45nm x 0.45nm | FePt | 1210 | 0.62 | 0.03 | 5 | - | ||
Interface perpendicular MTJ | 65nm x 65nm x 1.48nm | CoFeB | 1210 | 0.69 | 0.006 | 5 | - | ||
Spin hall effect (SHE) | Crystalline perpendicular MTJ | 45nm x 45nm x 0.7nm | FePdX | 1145 | 0.73 | 0.02 | 5 | - | SHE_model.zip |
Spin hall metal | 60nm x 45nm x 5nm | beta-W | - | - | - | - | 0.4 | ||
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.
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 SHE model, additional parameters, such as, SHM dimensions, and materials parameters. You can also add the field-like torque as a fraction of damping like torque by changing the parameter x_ad . 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
1. Input parameters for in-plane MTJ (antiparallel to parallel switching) 2. Input parameters for crystal perpendicular MTJ (antiparallel to parallel switching) 3. Input parameters for interface perpendicular MTJ (antiparallel to parallel switching) 4. STT-MRAM read and write waveforms using MTJ SPICE model