440 likes | 562 Views
WP3: Kinetic Monte-Carlo simulation of ZrO 2 , HfO 2 , Al 2 O 3 Atomic Layer Deposition onto Silicon ‘Hikad’ software user manual. Hike, Final Project Review Wednesday 19 January 2005, European Commission Offices, Brussels. Introduction.
E N D
WP3:Kinetic Monte-Carlo simulation of ZrO2, HfO2, Al2O3 Atomic Layer Deposition onto Silicon‘Hikad’ software user manual Hike, Final Project Review Wednesday 19 January 2005, European Commission Offices, Brussels
Introduction • ‘Hikad’ = simulation application ‘kmc’ + analysis application ‘anl’ • Written in Fortran90 • Running on Linux (kernel 2.6) • Using ‘AtomEye’, free atomistic configuration viewer: http://alum.mit.edu/www/liju99/Graphics/A Ref: J. Li, Modelling Simul. Mater. Sci. Eng.11 (2003) 173
Events Filtering Specific occurrence times calculation Configuration change Hikad algorithm • Lattice-based kinetic Monte-Carlo = predefined sites and states + probability driven events • Event = Mechanism + Site • LKMC cycle, Occurrence of the event that has the smallest time
Hikad algorithm • kmc application bloc diagram
Hikad algorithm • anl application bloc diagram
Overview and Features • Workspace
Overview and Features • Main features • ZrO2, HfO2 and Al2O3 ALD • ALD thermodynamic parameters (link with experimental data) • Start from an existing atomistic configuration file (Recovery option) • Initial substrate atomistic configuration customization • Feedback options (log file + automatic configuration/graphic files export) • Back up option • Evolutivity • Steric restriction switch (for big precursors) • Mechanisms activation energies
Overview and Features • Performance • Huge substrates compared to ab initio or DFT • Up to 1015 events/files • Improved events filtering (SmartFilter option) • Shortcuts method preventing fast flip back events (SmartEvents option) • Execution effectiveness analysis • Analysis • Simulation data analysis, even during simulation job • Easy and fast browsing through events using bookmarks (find event, ALD phase, ALD cycle...) • Atomistic configuration visualisation using AtomEye • Snapshots (jpeg, ps or png formats) • Configuration analysis (substrate, coverage, coordination...) • Batch processing
All Selective B A Special Features • SmartFilter • SmartEvents Full Bloc Smart
Input parameters -------------------------------------------- ------------- Hike Data File ------------- -------------------------------------------- ----------- Structural Parameters ---------- Metal = Al or Zr or Hf totL = total number of rows totC = total number of columns cellparam = high-k oxide crystal lattice cell parameter (in angstroms) -------------------------------------------- ----------- MonteCarlo Parameters ---------- nu = typical lattice vibration frequency (in THz) SteRes = steric restriction switch (F/T) SmartFilter = events filtering method switch (0:full, 1:bloc, 2:smart 3:smart_devel) SmartEvents = algorithm effectiveness improvement (F/T) Stats = algorithm effectiveness measurement (F/T) -------------------------------------------- ------------ Limiting Parameters ----------- Tfin = experiment duration (in secons) nevtfin = maximum total number of events ncyclefin = desired number of ALD cycles -------------------------------------------- -------------- ALD Parameters -------------- Mprc = metallic precursor molar mass (in g/mol) curph = beginning phase T1 = (in seconds) Th1 = (in Kelvin) P1 = (in mbar) T2 = Th2 = T3 = Th3 = P3 = T4 = Th4 = --------------------------------------------
Input parameters -------------------------------------------- ----- Initial Configuration Parameters ----- Recovery = start using an existing atomistic configuration InitDi = Si(100)/SiO2 dimeres initialization type (RANDom, RAIL, CROSs, NO DImeres) InitOH = Si(100)/SiO2 hydroxyls initialization type (RANDom, RAIL, CROSs, Random On DImeres) pOH = percentage of hydroxyl functions on Si(100)/SiO2 surface -------------------------------------------- ------------- Feedback / Output ------------ Userfbk = user feedback (F = unattended run , T = full user control) Logfbk = log.txt feedback (F = no log.txt , T = all screen is saved in log.txt) Eventsfbk = human readable events.txt feedback (F = no events.txt , T = all events written in events.txt) Historyfbk = compact events file for off-line processing (F = no history.txt , T = all events written in history.txt) Graphfbk = cfg graphical files feedback (F = no graph , T = graph export) GraphExpTyp = lin = linear -> nex=E(Ga*kg) qud = quadratic -> nex=E(Ga*kg^2) xpn = exponential -> nex=E(Ga^kg) pha = each phase cyc = each cycle Ga = graph export parameter gsize = graph export max size Conffbk = hik configuration files feedback (F = no , T = yes) ConfExpTyp = lin = linear -> nex=E(Ga*kg) qud = quadratic -> nex=E(Ga*kg^2) xpn = exponential -> nex=E(Ga^kg) pha = each phase cyc = each cycle Gc = conf export parameter BackUp = back up option (T = create a back up directory and stores files , F = No back up) ------------- End of Data File ----------- --------------------------------------------
Input parameters ------ Hikad : HfO2 Mechanisms List ------ Description DeltaE 03 MeCl4 Desorption 0.48 04 HCl Production 0.88 05 H2O Desorption 0.619 06 Hydrolysis 0.916 07 HCl Recombination 0.62 08 HCl Desorption 0.12 09 Dens. Inter_CI_1N_cOH-iOH (all k) 1.5 10 Dens. Inter_CI_1N_cOH-iCl (all k) 1.5 11 Dens. Inter_CI_1N_cCl-iOH (all k) 1.5 12 Dens. Inter_CI_2N_cOH-iOH (all k not2) 1.5 13 Dens. Inter_CI_2N_cOH-iCl (all k not2) 1.5 14 Dens. Inter_CI_2N_cCl-iOH (all k not2) 1.5 15 Dens. Intra_CI_1N_cOH-iOH (k=2) 1.5 16 Dens. Intra_CI_1N_cOH-iCl (k=2) 1.5 17 Dens. Intra_CI_1N_cCl-iOH (k=2) 1.5 18 Dens. Intra_CC_1N_cOH-cOH (k=2) 1.5 19 Dens. Intra_CC_1N_cOH-cCl (k=2) 1.5 20 Dens. Intra_CC_2N_cOH-cOH (k=2) 1.5 21 Dens. Intra_CC_2N_cOH-cCl (k=2) 1.5 22 Dens. Bridge_TI_2N_tOH-iOH (k=2) 1.5 23 Dens. Bridge_TI_2N_tOH-iCl (k=2) 1.5 24 Dens. Bridge_TI_2N_tCl-iOH (k=2) 1.5 25 Dens. Bridge_TI_3N_tOH-iOH (k=2) 1.5 26 Dens. Bridge_TI_3N_tOH-iCl (k=2) 1.5 27 Dens. Bridge_TI_3N_tCl-iOH (k=2) 1.5 28 Dens. Bridge_TC_3N_tOH-cOH (k=2) 1.5 29 Dens. Bridge_TC_3N_tOH-cCl (k=2) 1.5 30 Dens. Bridge_TC_3N_tCl-cOH (k=2) 1.5 31 Dens. Bridge_TC_4N_tOH-cOH 9.0 32 Dens. Bridge_TC_4N_tOH-cCl 9.0 33 Dens. Bridge_TC_4N_tCl-cOH 9.0 34 Dens. Bridge_TT_3N_tOH-tOH (k=2) 1.5 35 Dens. Bridge_TT_3N_tOH-tCl (k=2) 1.5 36 Dens. Bridge_TT_4N_tOH-tOH 9.0 37 Dens. Bridge_TT_4N_tOH-tCl 9.0 38 Dens. Bridge_TT_5N_tOH-tOH 9.0 39 Dens. Bridge_TT_5N_tOH-tCl 9.0 40 Siloxane Bridge Opening 1.3 ------ Hike : End of Mechanisms List -----
Output files • log.txt : program execution report • *.hik files : raw atomistic configuration files • InitConf.hik: first • FinalConf.hik: last • *.cfg files : AtomEye atomistic configuration files • history.txt : events list • events.txt : ‘human readable’ events list
Reload parameters and rescan history file Display a 10 events list Delete graphics and bookmarks Browse events: find event, phase cycle, go to event Generate files Analysis tools Current event Total number of events Prompt
Find Looking forward for mechanism #8 occurring on any site of layer #2 Result: event found, gone to this event.
Batch processing For instance: batch export of graphic files Default batch parameters: export at most a 100x100 picture every one event Modified batch parameters: export at most a 100x100 picture every ALD phase
Batch processing 5 graphic files created:
Invoking AtomEye Ins/Del keys make you jump from one cfg to the previous/next one. Browse events and press ‘c’ to generate an AtomEye cfg file
Batch coverage analysis Default batch parameters: every ALD cycle Modified batch parameters: every 500 events
Using Hikad: examples • Substrate initialization
Si(100) substrate No dimeres No OH
Si(100) substrate Rail dimeres No OH
Si(100) substrate Cross dimeres No OH
Si(100) substrate Random dimeres No OH
Si(100) substrate No dimeres Rail OH
Si(100) substrate No dimeres Cross OH
Si(100) substrate No dimeres Random OH (30%)
Si(100) substrate No dimeres Random OH (60%)
Si(100) substrate Random dimeres Random OH (45%)
Si(100) substrate Random dimeres Random OH on dimeres (45%=>43%)
Using Hikad: examples • Simulation running... but what is it doing now ?
Using Hikad: examples • I should have set a longer hydrolysis phase...
Go to the beginning of hydrolysis phase (using +) Save this state as a hik file (using h)
Start a new simulation using the saved configuration (Recovery option toggled) Start with phase 3 (hydrolysis) with a longer time.
Conclusion • Lattice based kinetic Monte-Carlo algorithm => huge configurations • ALD thermodynamic parameters => link with experimental data • Improved algorithm options • Powerful, flexible, user-friendly analysis tool • Embedded help for future development