UNIVERSITÀ DEGLI STUDI DI UDINE Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica Dipartimento di Ingegneria Elettrica Gestionale e Meccanica Tesi di Laurea Modelli microscopici della Mobilità degli elettroni in Silicio Relatore: Laureando: Chiar.mo Prof. Luca Selmi Marco Lanaro Correlatori: Dott. Ing. Pierpaolo Palestri Dott. Ing. David Esseni Anno Accademico 2002-03 Indice 1 Introduzione 1.1 La Microelettronica ieri ed oggi . . . . . . . . . 1.2 Lo Scaling . . . . . . . . . . . . . . . . . . . . . 1.3 I dispositivi Double-Gate e Single-Gate Fet SOI 1.4 La Mobilità dei portatori . . . . . . . . . . . . 1.5 Scopo della Tesi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Il Metodo di Simulazione Monte Carlo 2.1 Introduzione al Monte Carlo . . . . . . . . . . . . . . . . . . . . . 2.1.1 Un Tipico Programma Monte Carlo . . . . . . . . . . . . 2.1.2 Definizione del Sistema Fisico . . . . . . . . . . . . . . . . 2.1.3 Condizioni Iniziali del Moto . . . . . . . . . . . . . . . . . 2.1.4 Durata del Volo Libero Self-Scattering . . . . . . . . . . . 2.1.5 Scelta del Meccanismo di Scattering . . . . . . . . . . . . 2.1.6 Scelta dello Stato dopo lo Scattering . . . . . . . . . . . . 2.2 Struttura a Bande . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Struttura Cristallina del Silicio . . . . . . . . . . . . . . . 2.2.2 Elettroni in un Potenziale Periodico - Struttura a Bande . 2.2.3 Bande di Conduzione e di Valenza - Relazioni Energetiche 2.2.4 Modello della Banda Full-Band . . . . . . . . . . . . . . . 2.2.5 Determinazione delle arandezze fisiche . . . . . . . . . . . 3 Lo Scattering da Fononi 3.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 Formulazione Generale . . . . . . . . . . . . . . . 3.2 Introduzione ai Fononi Ottici ed Acustici . . . . . . . . 3.2.1 Interazione Elettrone-Fonone . . . . . . . . . . . 3.2.2 Scattering da Fononi Acustici . . . . . . . . . . . 3.2.3 Scattering da Fononi Ottici . . . . . . . . . . . . 3.3 Il codice di Bandit . . . . . . . . . . . . . . . . . . . . . 3.3.1 Introduzione . . . . . . . . . . . . . . . . . . . . 3.3.2 Calcolo dello Scattering in Bandit . . . . . . . . 3.3.3 Scelta del Meccanismo di Scattering . . . . . . . 3.4 Stato dopo lo scattering nel caso dei fononi . . . . . . . 3.4.1 Determinazione dello stato dopo lo scattering nel 3.4.2 Rotazione dello stato dopo lo scattering . . . . . 3.5 Simulazioni delle Caratteristiche Velocità-Campo . . . . I . . . . . . . . . . . . . . . . . . . . . . IW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 4 5 6 . . . . . . . . . . . . . 7 7 7 8 8 8 10 11 12 12 14 15 17 18 . . . . . . . . . . . . . . 19 19 20 21 21 22 23 25 25 26 32 34 34 39 42 3.6 3.5.1 Introduzione . . . . . . . . . . . . . . . 3.5.2 I Potenziali di Deformazione . . . . . . 3.5.3 Confronto degli Scattering rate . . . . . 3.5.4 Velocità di Saturazione in funzione della 3.5.5 Velocità e Mobilità elettronica . . . . . 3.5.6 Distribuzione energetica degli elettroni . 3.5.7 Coefficienti da Generazione da Impatto Conclusioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Temperatura Reticolare . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Lo Scattering da Impurezze Ionizzate 4.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Il Modello Fisico dello Scattering . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Espressione dello scattering rate . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Stato Dopo lo Scattering . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Lunghezza di Screening nella distribuzione di Fermi-Dirac . . . . . . . . 4.3 Il Codice delle impurezze ionizzate in Bandit . . . . . . . . . . . . . . . . . . . 4.3.1 Descrizione del codice prima di essere modificato in questa tesi . . . . . 4.3.2 Calcolo dello Scattering rate . . . . . . . . . . . . . . . . . . . . . . . . 4.3.3 Calcolo dello Stato dopo lo Scattering . . . . . . . . . . . . . . . . . . . 4.4 Analisi e Correzione del Codice mediante le Simulazioni . . . . . . . . . . . . . 4.4.1 Introduzione . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Il Modello della Mobilità elettronica di Tirelli . . . . . . . . . . . . . . . 4.4.3 Modifiche al Codice: Modello di Brooks & Herring . . . . . . . . . . . . 4.4.4 Modifiche al Codice: Conservazione dell’energia dei portatori prima e dopo dell’evento di scattering . . . . . . . . . . . . . . . . . . . . . . . 4.4.5 Modifiche al codice: Screening secondo la Fermi-Dirac . . . . . . . . . . 4.4.6 Modifiche al Codice: Funzione di Correzione della Mobilità elettronica . 4.4.7 Confronto con il modello di mobilità degli elettroni di Kaiblinger-Grulin 4.4.8 Modifiche al Codice: Screening dipendente dalla concentrazione libera . 4.5 Conclusioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 43 46 50 52 56 60 66 . . . . . . . . . . . . . 67 67 68 68 70 72 74 74 75 82 85 85 87 87 . . . . . . 88 96 101 104 106 111 5 Conclusioni 113 A Programmi A.1 Programma per il Calcolo della Dipendenza della velocità di saturazione dalla temperatura reticolare TL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.2 Programma per la determinazione della curva che approsima i dati sperimentali della mobilità elettronica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.3 Programma per la determinazione della curva che approsima i dati sperimentali della velocità elettronica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.4 Programma per il Calcolo della curva di Mobilità degli elettroni del modello di Kaiblinger-Grulin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A.5 Il Tempo di rilassamento del Momento . . . . . . . . . . . . . . . . . . . . . . . 115 II . 115 . 116 . 117 . 118 . 119 Elenco delle figure 1.1 Evoluzione della miniaturizzazione dei dispositivi elettronici . . . . . . . . . . . . 1 1.2 Schema del Transistore MOSFET . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Schema del Transistore Double-Gate FET . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Schema del Transistore Single-Gate SOI . . . . . . . . . . . . . . . . . . . . . . . 5 2.1 Diagramma di flusso del programma di simulazione “single particle” Monte Carlo 9 2.2 Determinazione stocastica di un evento nel caso discreto. S i rappresenta la probabilità che si verifichi l’evento i-esimo . . . . . . . . . . . . . . . . . . . . . 11 2.3 Generazione del reticolo cubico a facce centrate del Silicio . . . . . . . . . . . . . 12 2.4 Zona di Brillouin del reticolo cubico a facce centrate. Le etichette Γ, X e K sono i punti di simmetria. Γ è il centro della zona [0, 0, 0]; X il punto finale in direzione [1, 0, 0]. L e K sono i punti finali nelle direzioni [1, 1, 1] e [1, 1, 0] rispettivamente. 14 2.5 Tipica rappresentazione del potenziale cristallino . . . . . . . . . . . . . . . . . . 14 2.6 Bande energetiche in funzione del vettore d’onda k . . . . . . . . . . . . . . . . . 15 2.7 Struttura della Banda di Conduzione del Silicio usata nel simulatore Bandit . . . 16 3.1 Relazione di dispersione quando si considera solo i fononi longitudinali vicino al centro della zona di Brillouin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.2 Meccanismi di Scattering Intervalle di tipo F e di tipo G . . . . . . . . . . . . . . 24 3.3 Dipendenza del Potenziale di Deformazione Acustico dall’energia della particella 3.4 Schema concettuale della funzione CreateScattering . . . . . . . . . . . . . . . . . 27 3.5 Schema concettuale della funzione DoScattering . . . . . . . . . . . . . . . . . . . 33 3.6 Desistà degli stati di sr contenete lo stato dopo lo scattering . . . . . . . . . . . 37 3.7 Scelta dello stato dopo lo scattering in modo analitico . . . . . . . . . . . . . . . 38 3.8 Significato dei bit di itmp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 3.9 Barretta di Silicio uniformemente Drogata 26 . . . . . . . . . . . . . . . . . . . . . 43 3.10 Confronto dello Scattering rate fononico Totale nell’intervallo 0 ÷ 6eV . . . . . . 48 3.11 Confronto dello Scattering rate fononico Totale nell’intervallo 0 ÷ 100meV . . . . 49 3.12 Ingrandimento dello Scattering rete Totale nell’intervallo 0 ÷ 4meV . . . . . . . . 49 3.13 Scattering rate dei fononi di Jacoboni nell’intervallo 0 ÷ 6eV . . . . . . . . . . . 50 3.14 Scattering rate dei fononi di Jacoboni nell’intervallo 0 ÷ 100meV . . . . . . . . . 50 3.15 Velocità di Saturazione degli elettroni v sat in funzione della temperatura reticolare TL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.16 Curve di Mobilità elettronica e di velocità elettronica che approssimano i dati sperimentali[11] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 3.17 Curva di Velocità degli elettroni nella Barretta Uniforme ottenuta dalle simulazioni 53 III 3.18 Confronto delle velocità degli elettroni, dovute ai soli fononi, ottenute dalle simulazioni di Bandit con i potenziali di deformazione di Bandit, Jacoboni e Bufler (Fx = 20[kV /cm]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.19 Confronto delle Mobilità elettroniche ottenute dalle simulazioni di Bandit implementando i potenziali di deformazione di Bandit, Jacoboni e Bufler fino a 20[kV /cm] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.20 Confronto delle Mobilità elettroniche ottenute dalle simulazioni di Bandit implementando i potenziali di deformazione di Bandit, Jacoboni e Bufler a basso campo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.21 Funzioni di Distribuzione degli elettroni in funzione di T L ottenute con le simulazioni di Bandit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.22 Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 100[kV /cm] 3.23 Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 200[kV /cm] 3.24 Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 300[kV /cm] 3.25 Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 500[kV /cm] 3.26 Processo di Generazione coppie e-h dovuto alla ionizzazione da impatto . . . . . 3.27 Scattering rate da ionizzazione da impatto ottenuto dalle simulazioni di Bandit . 3.28 Valori di α ottenuti con i potenziali di deformazione di Jacoboni, Bufler e Bandit dalle simulazioni Bandit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.29 Distribuzione degli elettroni per un campo elettrico di F x = 200[kV /cm]: modifica di Bude dei fononi di Jacoboni . . . . . . . . . . . . . . . . . . . . . . . . . . 3.30 Distribuzione degli elettroni per un campo elettrico di F x = 500[kV /cm]: modifica di Bude dei fononi di Jacoboni . . . . . . . . . . . . . . . . . . . . . . . . . . 3.31 Valori di α ottenuti dei potenziali di deformazione di Jacoboni, Bude e Bandit dalle simulazioni Bandit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.32 Confronto delle curve della Mobilità elettronica di Bude e di Jacoboni . . . . . . 4.1 4.2 Legame dei vettori d’onda e gli angoli θ e φ . . . . . . . . . . . . . . . . . . . . . Scattering da impurezze ionizzate: gli angoli α e θ per calcolare lo stato dopo lo scattering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Posizione del livello di Fermi nel semiconduttore degenere e non degenere . . . . 4.4 Rappresentazione della distribuzione di Fermi-Dirac e di Maxwell-Boltzmann in funzione della concentrazione n0 degli elettroni . . . . . . . . . . . . . . . . . . . 4.5 Rapporto tra l’inverso della lunghezza di screening usando la statistica di FermiDirac e Maxwell-Boltzmann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Sturuttura dati regdata delle impurezze ionizzate . . . . . . . . . . . . . . . . . 4.7 Sturuttura dati delle impurezze ionizzate: corrispondenza tra gli elementi della mesh e i campi della struttura regdata . . . . . . . . . . . . . . . . . . . . . . . 4.8 Sturuttura dati ionsc->ionreg delle impurezze ionizzate . . . . . . . . . . . . . 4.9 Schema funzionale della funzione InitIonizedImpScattering del codice delle impurezze ionizzate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.10 Schema funzionale della funzione DoImpurity del codice delle impurezze ionizzate 4.11 Modelli della mobilità elettronica di Caughey-Thomas[23] e di Kosina[21] . . . . IV 54 55 55 56 57 58 59 59 60 61 62 63 64 64 65 69 71 72 73 74 77 77 78 79 83 86 4.12 Modello di Tirelli: Curve di Mobilità elettronica . . . . . . . . . . . . . . . . . 4.13 Modello di Brooks & Herring: Curve di Mobilità elettronica . . . . . . . . . . 4.14 Problema della non conservazione dell’energia dell’elettrone nel processo di scattering con le impurezze ionizzate . . . . . . . . . . . . . . . . . . . . . . . . . . 4.15 Confronto di kM B→F D interpolata e non interpolata per correggere l’inverso della lunghezza di screnning βs nella formulazione di Fermi-Dirac . . . . . . . . . . 4.16 Confronto delle curve di mobilità elettronica per F x = 1, 2, 5kV /cm ottenute da Bandit con la distribuzione di Maxwell-Boltzmann e Fermi-Dirac . . . . . . . . 4.17 Confronto delle curve di mobilità elettronica ottenute da Bandit con la distribuzione di Maxwell-Boltzmann e Fermi-Dirac . . . . . . . . . . . . . . . . . . . . 4.18 Confronto della curva di mobilità elettronica ottenuta con Bandit con il modello di Kosina nella formulazione di Brooks & Herring . . . . . . . . . . . . . . . . . 4.19 Confronto del modello finale di Mobilità degli elettroni con la curva di riferimento di Cauchey-Thomas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.20 Confronto del modello finale di Mobilità degli elettroni con il modello finale di Kosina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.21 Confronto del modello finale della mobilità elettronica di Bandit con il modello di mobilità di Kaiblinger-Grulin[32] . . . . . . . . . . . . . . . . . . . . . . . . . 4.22 Nuova struttura dati delle impurezze ionizzate per associare ad ogni elemento della mesh i dati di screening dipendenti dalla concentrazione dei portatori liberi e delle impurezze ionizzate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 . 88 . 94 . 97 . 100 . 100 . 101 . 103 . 104 . 105 . 106 A.1 Legame del inverso tempo di rilassamento con lo scattering rete per le impurezze ionizzate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 V Elenco delle tabelle 1.1 Regole di Scaling a Campo Elettrico Costante . . . . . . . . . . . . . . . . . . . . 3 1.2 Regole di Scaling a Tensione Elettrica Costante . . . . . . . . . . . . . . . . . . . 3 2.1 Elementi del point group. A. Morgan, in Landsberg, ed., Solid State Theory: Methods and Applications.1969 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.1 Modelli dello scattering rate per i fononi acustici intravalle (banda sferica): modello analitico, modello Full-Band . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.2 Modelli dello scattering rate per i fononi ottici intervalle (banda sferica): modello analitico, modello Full-Band . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.3 ImaxTable: tabella delle disuguaglianze delle componenti del vettore d’onda . . . 40 3.4 Tabella SwapTableF corretta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.5 Tabella SwapTableG corretta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 3.6 Errori della scelta dello stato dopo lo scattering nel codice di Bandit prima delle modifiche implementate in questa tesi . . . . . . . . . . . . . . . . . . . . . . . . 41 3.7 Confronto dei potenziali di deformazione dei fononi ottici ed acustici implementati in Bandit con quelli di Jacoboni e Bufler . . . . . . . . . . . . . . . . . . . . 44 3.8 Confronto delle velocità elettroniche ottenute dalle simulazioni per un campo elettrico di 500 V /cm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3.9 Confronto delle velocità degli elettroni, dovute ai soli fononi, ottenute dalle simulazioni di Bandit con i potenziali di deformazione di Bandit, Jacoboni e Bufler (Fx = 20[kV /cm]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.10 Valori dei parametri del modello di Chinoweth presenti in letteratura . . . . . . . 61 4.1 Masse elettrone-lacune . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 4.2 Parametri del modello di Caughey-Thomas per la mobilità [23] . . . . . . . . . . 86 4.3 Modello di mobilità di Tirelli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 4.4 Modello di mobilità di Brooks & Herring . . . . . . . . . . . . . . . . . . . . . . . 88 4.5 Risultati della non conservazione dell’energia degli elettroni per lo scattering da impurezze ionizzate del file ion-imp.c . . . . . . . . . . . . . . . . . . . . . . . . 93 4.6 Funzione d’approsimazione di kM B→F D per correggere l’inverso della lunghezza di screening βs nella formulazione di Fermi-Dirac . . . . . . . . . . . . . . . . . . 96 4.7 Valori della Mobilità totale degli elettroni ottenuti dalle simulazioni di Bandit attivando lo scattering da impurezze ionizzate e da fononi . . . . . . . . . . . . . 98 4.8 Valori della Mobilità fononica degli elettroni ottenuti dalle simulazioni di Bandit 4.9 Valori della Mobilità delle sole impurezze ionizzate degli elettroni derivate dalle simulazioni di Bandit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 VI 98 4.10 Valori della Mobilità delle sole impurezze ionizzate estratte dalla curva di CaugheyThomas considerando che la mobilità dei fononi sia qualla ricavata dalle simulazioni di Bandit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.11 Modello di mobilità di Brooks & Herring: Distribuzione di Fermi-Dirac . . . . . . 4.12 Coefficienti di correzione della mobilità degli elettroni in funzione del doping che vengono utilizzati nel codice di Bandit per lo scattering rate delle impurezze ionizzate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.13 Modello finale di mobilità per gli elettroni ottenuto con la funzione di correzione della mobilità . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VII 99 99 101 103 Capitolo 1 Introduzione 1.1 La Microelettronica ieri ed oggi Per microelettronica si intende quella disciplina dell’elettronica che si interessa dello studio della tecnologia, dei dispositivi elettronici e dei circuiti elettronici in modo da miniaturizzarli cosı̀ da incrementare la densità di integrazione. Figura 1.1: Evoluzione della miniaturizzazione dei dispositivi elettronici Lo sviluppo del primo transistor ad opera di W. Brattain, W. Shockley e J. Bardeen nel 1948 è l’inizio dell’era della microelettronica a semiconduttore cosı̀ come oggi la si intende. Infatti per mezzo della tecnologia del primo transistor a semiconduttore è iniziata effettivamente l’era della microintegrazione; tutti quei dispositivi elettronici che venivano realizzati con le valvole termoioniche ora vengono realizzati su semiconduttore con dimensioni sempre più scalate e consumi di potenza sempre più ridotti. La chiave di lettura della spinta all’integrazione dei dispositivi va ricercata nella continua evoluzione tecnologica, nella ricerca di nuovi materiali utilizzati nei processi di fabbricazione e nella ricerca continua sui dispositivi e sui loro problemi. In questo senso, la tecnologia maggiormente diffusa ad oggi è quella dei transistori MOSFET, i quali vengono utilizzati per la realizzazione della maggior parte dei circuiti integrati. 1 X LG Gate Ossido VG VS Source n+ VD Drain n+ Leff Y p Substrato (Bulk) VB Figura 1.2: Schema del Transistore MOSFET La figura 1.2 riproduce lo schema di principio di un transistore n-MOS che vienere realizzato partendo da un Substrato drogato con atomi di tipo accettore (p-type) nel quale vengono impiantate due tasche drogate con atomi donori (n-type) chiamate rispettivamente Source e Drain. Il processo di fabbricazione prevede la realizzazione di uno strato di isolamento (t ox ) realizzato tipicamente con ossido di silicio (SiO 2 ) sul quale viene realizzato il Gate con materiale conduttore quale ad esempio l’alluminio (AL) o con polisilicio. La ricerca e lo sviluppo dei singoli dispositivi (compreso il MOS) si articola essenzialmente in due fasi: • si punta alla riduzione delle dimensioni fisiche dei dispositivi già esistenti che permette di aumentare il grado di integrazione sul wafer. Questo processo prende il nome di Scaling e comprende una serie di regole che permettono una riduzione delle dimensioni fisiche senza penalizzare le prestazioni statiche e dinamiche del dispositivo; • si studiano nuovi materiali, le loro proprietá, le caratteristiche chimiche ed elettriche degli elementi utilizzati e la ricerca di nuove caratteristiche progettuali dei dispositivi. 1.2 Lo Scaling La riduzione delle dimensioni fisiche del dispositivo si riferisce alle cosidette regole di Scaling che stabiliscono, fissato il fattore di riduzione K > 1, il legame che deve sussistere tra le varie grandezze coinvolte affinchè i dispositivi scalati risultino sottoposti alla medesime condizioni operative delle strutture più grandi. È necessario comprendere che lo scaling non coinvolge un solo parametro, ma modifica un intero set di parametri fisici e il processo di fabbricazione in modo da evitare l’insorgere di fenomeni di degradazione delle prestazioni del transistore. Tali fenomeni sono ad esempio: gli effetti di canale corto, gli effetti legati ai portatori caldi, delle cariche intrappolate nell’ossido, etc. Nella tabella 1.1 è tabulato uno scaling dei parametri fisici atto a mantenere costante il campo elettrico F~ in modo da conservare il medesimo grado di affidabilità. Le modifiche dei parametri fisici del transistor, secondo questa regola, quali: doping, dimensioni, tensioni, correnti, etc. sono tutte eseguite per mantenere il campo costante. Se si vuole diminuire di un fattore K 2 Parametri Fisici Dimensioni (L,W ,tox ,yd ) Impurity Doping (Nd ,Na ) Tensioni (VGS ,VDS ) Correnti (ID ) ID Densità di corrente ( Area ) Capacità per Area (CG ) Scaling 1 K K 1 K 1 K K K Parametri Fisici Campo Elettrico (F~ ) Ritardo del circuito ( CGIVDDD ) Dissipazione di potenza (Pd ) Pd ) Densità di potenza ( Area 2 Power-Dalay Product (CG VDD ) Scaling 1 1 K 1 K2 1 1 K3 Tabella 1.1: Regole di Scaling a Campo Elettrico Costante le dimensioni fisiche del transistor, ne consegue che anche la tensione elettrica V applicata al transistor deve diminuire del medesimo fattore. Tuttavia queste regole di scaling comportano l’insorgere di una serie di problematiche che portano a prendere in considerazione le regole di scaling a tensione costante (tab.1.2). Le principali problematiche possono cosı̀ essere riassunte: • I livelli della tensione elettrica V sono generalmente fissati tra l’interfaccia e il dispositivo. • All’aumentare del fattore di scaling K la tensione di soglia V T del transistore MOS via via si riduce potendo anche assumere valori negativi. Questo comporta, poichè anche la tensione elettrica diminuisce, che lo swing di tensione diminuisce e se V T diventa negativa si perde definitivamente la possibilità di controllare il transistor. Parametri Fisici Dimensioni (L,W ,tox ,yd ) Impurity Doping (Nd ,Na ) Tensioni (VGS ,VDS ) Correnti (ID ) ID Densità di corrente ( Area ) Capacità per Area (CG ) Scaling 1 K 2 K 1 K K3 Parametri Fisici Campo Elettrico (F~ ) Ritardo del circuito ( CGIVDDD ) Dissipazione di potenza (Pd ) Pd Densità di potenza ( Area ) 2 Power-Dalay Product (CG VDD ) Scaling K 1 K2 1 K 3 K 1 K 1 K Tabella 1.2: Regole di Scaling a Tensione Elettrica Costante Nella tabella 1.2 sono riportate le regole di scaling a tensione costante che permettono di ovviare alla riduzione dello swing di tensione, ma determinano aumenti delle correnti e della densità di corrente, della potenza elettrica per unità di area e del campo elettrico. In generale si può osservare che l’operazione di scaling determina il miglioramento di alcuni parametri quali ad esempio le costanti di tempo e il prodotto Ritardo-Potenza, ma le densità di corrente e i campi elettrici aumentano determinando un aggravamento dei fenomeni fisici intrinseci al MOS che peggiorano le prestazioni dei dispositivi. Se da una parte la riduzione delle dimensioni geometriche porta chiaramente al vantaggio dell’aumento del livello di integrazione, dall’altra determina l’insorgere di fenomeni fisici dannosi alle prestazioni del dispositivo scalato che devono essere corretti con accorgimenti di tipo progettuale, quali ad esempio la realizzazione di un nuovo layout e il miglioramento degli step di fabbricazione. 3 1.3 I dispositivi Double-Gate e Single-Gate Fet SOI Nel lavoro di Wong[1] è presentata un’analisi dettagliata delle tecniche di scaling dei transistori e del miglioramento delle grandezze d’interesse attraverso la progettazione di nuovi dispositivi o l’impiego di nuovi materiali. Per esempio, si può incrementare la densità di carica utilizzando il transistore Double-Gate FET oppure diminuendo la temperatura operativa. Se si persegue il miglioramento delle proprietá del trasporto dei portatori, cioè in primis della mobilitá all’interno dei semiconduttori, si possono utilizzare varie tecniche: • si può usare silicio di tipo “strained”; • si possono impiegare materiali che permettono di avere alte mobilità (Ge, InGaAs, InP , etc.); • si possono ridurre i fattori che determinano il degrado della mobilità come ad esempio il campo elettrico trasverso, lo scattering con i fononi o con le impurezze ionizzate; Se si è posto quale obbiettivo la scalabilità dei dispositivi attraverso la riduzione del canale si possono addottare altri metodi: • mantenere un buon controllo elettrostatico del potenziale di canale controllando la geometria fisica del dispositivo; • aumentare la capacità di gate, attraverso la riduzione dello spessore di ossido o l’impiego di un gate metallico per ottenere il controllo più efficace del potenziale di canale. Il transistor Double-Gate è schematizzato in figura 1.3 e fu introdotto per la prima volta all’inizio degli anni ottanta. VS VD top gate source Lg drain VG Bottom gate tsi Figura 1.3: Schema del Transistore Double-Gate FET Questo tipo di transistor permette di: 1. Controllare gli effetti di canale corto attraverso la geometria del dispositivo; 2. di aumentare l’accoppiamento del potenziale di gate V G con il potenziale di canale utilizzando un sottile spessore di silicio tsi . 4 In figura 1.4 è schematizzato il dispositivo Single-gate SOI che è un transistore MOS realizzato su uno strato di ossido (Buried oxide). VS VG VD top gate source Lg Buried oxide tsi drain tbox=200 nm Si Substrate Figura 1.4: Schema del Transistore Single-Gate SOI Nei primi studi condotti sui Single-Gate SOI[2], si è dimostrato che la mobilità dei portatori segue la curva universale di mobilità similmente a quella ottenuta dal transitore bulk, se il campo efficace è determinato in modo appropiato al transistor Single-Gate SOI. Come analizzato nel lavoro di Esseni[3], in condizione di alta densità di carica di inversione Ninv , la mobilità dei transistor ultrasottili SOI, è insensibile allo spessore del silicio t Si ed è più grande di quella del transistor MOSFET bulk fortemente drogato poichè il campo efficace è più piccolo. In condizioni di piccola Ninv , la mobilità del transistor SOI presenta invece una sistematica riduzione con il decremento dello spessore del silicio t Si . L’analisi suggerisce l’importanza del comportamento dello scattering dei fononi dovuto al confinamento dei portatori nel sottilissimo strato di semiconduttore. Nel lavoro[4] si confronta la mobilità efficace µ ef f degli elettroni del transistor Double-Gate con quella del Single-Gate in funzione della carica di inversione N inv . In condizione di alta carica di inversione, dove la mobilità efficace è limitata dallo scattering dovuto alla “surface roughness”, praticamente non sono state osservate differenze tra la µ ef f del Single-Gate e quella del Double-Gate MOSFET. Per spessori del silicio t Si di circa 20nm o superiori la mobilità è essenzialmente la stessa per i due tipi di dispositivi. 1.4 La Mobilità dei portatori La mobilità è un importante parametro per la progettazione e l’analisi dei dispositivi elettronici. Infatti modifica il fattore di guadagno k del transistor MOSFET e quindi incide sulla corrente di drain IDS αK. ox W k=µ (1.1) tox L dove tox è lo spessore dell’ossido, W e L rappresentano le dimensioni fisiche del transistor MOSFET. La mobilità è definita come il rapporto tra la velocità media dei portatori v x e il campo elettrico Fx nella direzione del trasporto x: vx (1.2) µx = Fx Fisicamente la mobilità µx , è ottenuta dall’interazione tra il campo elettrico F x , che cede energia ai portatori imponendo un moto di trascinamento e i vari meccanismi di scattering che 5 determinano l’interruzione di tale moto attraverso le collisioni dei portatori. I meccanismi di scattering si suddividono in: • elastici: L’energia cinetica dei portatori si conserva prima e dopo della collisione; • anelastici: L’energia cinetica dei portatori non si conserva durante il processo d’urto. Esistono vari meccanismi di scattering: • scattering con i fononi di tipo ottico o acustico; • scattering dovuto alle impurezze ionizzate; • scattering dovuto alla rogosità superficiale (“surface rougness”); • scattering superficiale con i fononi ottici che, come è stato analizzato nel lavoro[5], potrebbe essere importante per spiegare la dipendenza della mobilità degli elettroni dallo spessore del silicio tSi nei transistor Single-Gate e Double-Gate SOI MOSFET; • scattering dovuto alle fluttuazioni dello spessore del film di silicio. 1.5 Scopo della Tesi Questa tesi si prefigge quale scopo l’analisi e la comprensione dei meccanismi di scattering implementati nel simulatore Monte Carlo Bandit, che determinano la mobilità degli strati d’inversione e la loro corretta implementazione in un simulatore Monte Carlo. È in quest’ottica che viene affrontato lo studio dello scattering dipendente dai fononi ottici, dai fononi acustici, l’analisi della funzione di distribuzione degli elettroni e dei coefficienti di ionizzazione per i set dei potenziali di deformazione di riferimento forniti da Jacoboni[9], Bufler[19] e presenti nel simulatore Bandit. Si effettua una corretta implementazione del modello per la mobilità degli elettroni facendo sı̀ che tale modello del trasporto elettronico corrisponda con quello di Caughey-Thomas[23] che permette di descrivere la mobilità degli elettroni fino a 300K in funzione del doping e del campo elettrico. La tesi è cosı̀ organizzata: • Capitolo 2: Si descrive il metodo di simulazione Monte Carlo; • Capitolo 3: Si prende in esame lo scattering dei fononi studiando come tale modello viene implementato nel codice di Bandit e la corrispondenza tra i dati di simulazione ed i risultati proposti in letteratura; • Capitolo 4: Si analizza lo scattering dalle impurezze ionizzate e si corregge il modello implementato in Bandit in modo che sia in accordo con il modello di Caughey-Thomas per la mobilità degli elettroni. • Capitolo 5: Vengono riportate le conclusioni alla tesi. 6 Capitolo 2 Il Metodo di Simulazione Monte Carlo 2.1 Introduzione al Monte Carlo Con l’avvento dei computer ci si è resi conto dell’esigenza di disporre di uno strumento potente, affidabile, che permettesse di analizzare in dettaglio le proprietà intrinseche e il comportamento dei semiconduttori in presenza e/o assenza di forze esterne. Dal punto di vista fisico-matematico, l’equazione differenziale di Boltzmann, ∂f d~r d~ p ∂f df = + ( ) · ∇ r f + ( ) · ∇ p f = ( )C dt ∂t dt dt ∂t (2.1) che descrive il problema del trasporto, non si presta ad una soluzione analitica semplice eccetto per pochi casi che però non modellano i sistemi reali. Quando si prende in considerazione il comportamento reale non lineare di un semiconduttore, aumenta notevolmente la difficoltà : la soluzione analitica dell’equazione del trasporto senza linearizzazione, in condizione di forze esterne applicate, è un problema matematico molto impegnativo e non sempre si presta alla soluzione teorica rigorosa. Da quanto sinteticamente esposto, è quindi chiaro che è veramente importante disporre di uno strumento che risolva per via numerica l’equazione 2.1 anche se tale soluzione dovesse risultare per qualche ragione non assolutamente rigorosa. Il metodoMonte Carlo è un metodo numerico-statistico generale usato per risolvere problemi matematici come il problema del trasporto nei semiconduttori. L’approccio numerico alla soluzione di questo problema, è una simulazione della dinamica a livello microscopico dei portatori nel cristallo. Questa tecnica di simulazione fu presentata per la prima volta da Kurosawa alla conferenza internazionale sui semiconduttori tenutasi a Kyoto nel 1966. 2.1.1 Un Tipico Programma Monte Carlo La simulazione inizia con un elettrone posto nello stato iniziale k~0 ; la durata del volo libero è scelta da una distribuzione di probabilità determinata partendo dalla probabilità dei vari meccanismi di scattering cui è soggetto il portatore. Ogni meccanismo di scattering ha un proprio scattering rate dipendente dalle proprietà fisiche di quel meccanismo. Durante il volo libero le forze esterne impongono sui portatori una forza che ne modifica il 7 moto: ~ e ˙ ~ ~r = 5~k (k) h̄~k = eF~ + ~v × B (2.2) c h̄ dove il membro di destra rappresenta la forza di Lorenz composta dal contributo elettrico e da quello magnetico. Se il programma è di tipo “single particle” le particelle vengono simulate una dopo l’altra e i risultati sono collezionati subito prima dell’interruzione del volo libero dovuta allo scattering; se il programma è di tipo “ensemble” più paricelle vengono simulate contemporaneamente e le statistiche vengono raccolte in prefissati istanti. Lo step successivo è la scelta del meccanismo di scattering che pone fine al volo libero della particella in accordo con la relativa distribuzione di probabilità di tutti i possibili meccanismi di scattering. Questa scelta impone un nuovo stato k~0 , scelto in accordo con le regole proprie del meccanismo di scattering che ha determinato l’interruzione del volo libero della particella. Tale stato è assunto come stato iniziale per la successiva simulazione. Il processo è ripetuto più volte e ad ogni passo la simulazione diventa sempre più precisa: la simulazione globale termina quando si è raggiunta la precisione voluta. 2.1.2 Definizione del Sistema Fisico Il simulatore viene inizializzato partendo dalla definizione del sistema fisico d’interesse fornita dall’utente. Vengono definiti anche i parametri che controllano la simulazione: il numero di step di transitorio (non si collezionano i dati della simulazione) e il numero di step di simulazione per collezionare i risultati statistici d’interesse. A questo punto si procede al calcolo preliminare di ogni scattering rate in funzione dell’energia delle particelle; si ottiene cosı̀ una informazione preliminare del massimo valore di queste funzioni per ottimizzare l’efficienza della simulazione. L’ultimo step di questa fase preliminare è l’inizializzazione a zero delle grandezze cumulative quali ad esempio la velocità delle particelle, le correnti, etc. 2.1.3 Condizioni Iniziali del Moto Nel caso della simulazione dello stato di regime, il tempo di simulazione deve essere abbastanza lungo affinchè la scelta delle condizioni iniziali del moto per la particella non influenzi i risultati finali. Tale scelta è un compromesso tra l’esigenza dell’ergodicità (t → ∞) e il tempo computazionale proprio del programma-calcolatore. Nel caso particolare in cui si applica un campo elettrico F~ molto alto e si inizializza l’energia dell’elettrone al valore k B T0 dove kB è costante di Boltzmann; questa energia iniziale è notevolmente inferiore all’energia media a regime; ne consegue che durante il transitorio, che è un tempo definito dall’utente, l’elettrone incrementa la propria energia fino al valore di regime. L’elettrone interagisce con il campo determinando un valore di mobilità molto più alto rispetto alla condizione di stazionarietà . È per questo che vengono definiti gli step di simulazione che compongono il transitorio dove le particelle vengono simulate, ma i risultati statistici non vengono collezionati. Più lungo è il tempo di transitorio, meno le condizioni iniziali influenzano i risultati medi finali. 2.1.4 Durata del Volo Libero Self-Scattering Durante un volo libero il vettore d’onda ~k della particella cambia in continuazione in accordo con l’equazione 2.2 come conseguenza del campo elettrico applicato F~ . 8 Definizione del Sistema Fisico Input dei Parametri Fisici e di Simulazione Condizioni Iniziali del Moto Determinazione Stocastica del Volo libero Determinazione dello stato prima dello Scattering Collezione dei Dati per gli Estimatori Statistici Determinazione Stocastica del meccanismo di Scattering Precisione raggiunta ? Determinazione Stocastica dello Stato dopo lo Scattering Valutazione Estimatori Stampa dei Risultati STOP! Figura 2.1: Diagramma di flusso del programma di simulazione “single particle” Monte Carlo Introducendo la probabilità che la particella nello stato ~k subisca una collisione durante il tempo dt, P [~k(t)]dt, si può derivare tutta la formulazione statistica della teoria computazionale del volo libero. Cosı̀ la probabilità che una particella che aveva subito una collisione al tempo t = 0 9 e al tempo t non ha ancora subito nessun evento di urto, viene definita nella seguente forma: Rt − P [~ k(t0 )]dt0 e 0 (2.3) L’espressione rappresenta la probabilità che nell’intervallo temporale (0,t) non ci sia un evento di scattering. La probabilità che ci sia un evento di urto nell’intorno di t, durante dt per la particella è la seguente: Rt − p[~ k(t0 )]dt0 P(t)dt = P [~k(t)]e 0 dt (2.4) Data la complessità dell’eq.2.4, questa non viene implementata nel metodo Monte Carlo dato che l’energia della particella non si conosce prima che termini il free-flight. Un metodo è il self-scattering: definendo Smax il massimo valore di P (~k) nello spazio delle fasi d’interesse, si ricorre al self-scattering in modo che la probabilità dello scattering totale rimanga costante ed uguale a Smax . L’equazione 2.4 può essere quindi ridotta nella forma: P(t) = 1 − τt e 0 τ0 Smax = (2.5) 1 τ0 dove Smax può essere una conveniente funzione dell’energia. Il tempo di volo libero è ottenuto dall’equazione: tr = −τ0 ln(r) Ricordando che P (~k) è una funzione dell’energia posseduta dalla particella si può scegliere di assumere Smax = P (M ), con M uguale alla massima energia per la particella. Dopo il free-flight si genera un numero casuale r con distribuzione uniforme e lo si confronta con: S()/Smax (2.6) L’energia della particella , che permette di calcolare lo scattering rate, è calcolata al termine del volo libero. Se r > S()/Smax il meccanismo self-scattering è selezionato e lo stato dopo la collisione k~0 è preso uguale a quello prima dell’evento di urto ~k, cosı̀ che il percorso della particella rimane imperturbato se non si verifica un vero meccanismo di scattering. Esistono algoritmi piú accurati che non vengono qui descritti per brevità. 2.1.5 Scelta del Meccanismo di Scattering A volo libero avvenuto, l’energia è nota e bisogna quindi scegliere il meccanismo di scattering. Si sceglie un meccanismo appartenente all’insieme dei possibili meccanismi di scattering implementati nel simulatore: introducendo un numero random r, il prodotto rS max è confrontato con le successive somme delle probabilità dei singoli meccanismi. Un meccanismo è selezionato applicando la seguente tecnica: se S i è lo scattering rate del meccanismo i-esimo P Sj = rSmax Smax = i Si Il meccanismo j-esimo è scelto se j è tale che, se la prima somma parziale che è uguale a Sj assume il valore S1 + S2 + .... + Sj . La figura riportata mette in luce che la probabilità di scegliere il meccanismo j-esimo è proporzionale a S j come desiderato. Se viceversa tutti i possibili meccanismi di scattering sono stati provati e nessuno di essi è stato selezionato, significa che rSmax > S() e quindi bisogna introdurre un self-scattering. 10 Smax S1+S2+S3 Sj=rSmax S3 S1+S2 S2 S1 S1 0 Figura 2.2: Determinazione stocastica di un evento nel caso discreto. probabilità che si verifichi l’evento i-esimo 2.1.6 S i rappresenta la Scelta dello Stato dopo lo Scattering Una volta individuato il particolare meccanismo di urto che interrompe il volo libero della particella, è necessario determinare lo stato k~f dopo tale evento. Se si era verificato un selfscattering, lo stato finale k~f è uguale a quello iniziale k~i , viceversa se si era individuato il meccanismo di urto, tale stato finale è generato stocasticamente in accordo con il procedimento proprio di ogni meccanismo di scattering. La probabilità P (k~f ) di scegliere come stato finale dopo lo scattering k~f è ottenuta dal rapporto tra il transition rate Sn (k~i , k~f ) e il total scattering rate Sn (k~i ) dello stato prima dello scattering. P (k~f ) = Sn (k~i , k~f ) Sn (k~i ) (2.7) Lo scattering rate Sn (k~i ) è ottenuto dal transition rate Sn (k~i , k~f ) sommando tutti gli stati finali k~f . X Sn (k~i , k~f ) (2.8) Sn (k~i ) = k~f L’equazione 2.7 può essere cosı̀ riscritta: Sn (k~i , k~f ) P (k~f ) = P ~ ~ k~f Sn (ki , kf ) 11 (2.9) 2.2 Struttura a Bande La definizione della struttura a bande è indispensabile per derivare la relazione energetica (~k), in funzione del vettore d’onda ~k, che permette di determinare il moto della particella. 2.2.1 Struttura Cristallina del Silicio Prendendo in considerazione un cristallo di qual si voglia semiconduttore, questo è costituito da una base e da un reticolo di Bravais. La base può essere un qualunque aggregato di atomi la cui dimensione è compresa tra il singolo atomo e la molecola (p. es. DNA). Il reticolo di Bravais è un insieme di punti Rl che sono generati per mezzo di tre traslazioni non complanari a1 ,a2 ,a3 appartenenti allo spazio vettoriale tridimensionale. ~ l = l1 a~1 + l2 a~2 + l3 a~3 R (2.10) dove li sono dei numeri interi. Partendo dalle proprietà di questo reticolo (p. es. riflessione, rotazione, ..) si possono distinguere quattordici reticoli di Bravais. Nel caso di interesse, i semiconduttori, sono caratterizzati da una struttura tetraedica; cioè il reticolo atomico può essere visto come un reticolo cubico a facce centrate partendo da una base composta da due soli atomi. Dal punto di vista matematico è importante sottolineare che i reticoli cristallini e le loro Figura 2.3: Generazione del reticolo cubico a facce centrate del Silicio proprietà fisiche, sono trasformati in loro stessi per mezzo di opportuni operatori geometrici (rotazioni, riflessioni, ecc.)[12]. L’insieme di questi operatori è chiamato “point group” del reticolo cristallino e comprende 48 operatori; di questi, 24 sono trasformazioni linearmente indipendenti, mentre le altre 24 si ottengono semplicemente per inversione. Nella tabella 2.1 è tabulato il “point group” valido per i semiconduttori a reticolo cubico a facce centrate. Ad esempio, la trasformazione Q3 (x¯1 , x2 , x¯3 ) rappresenta la funzione di inversione f (−x1 , x2 , −x3 ) per ogni generica funzione f dipendente dalle coordinate del sistema di riferimento. 12 Q1 (x1 , x2 , x3 ) Q5 (x2 , x3 , x1 ) Q9 (x3 , x1 , x2 ) Q13 (x¯1 , x3 , x¯2 ) Q17 (x2 , x¯1 , x¯3 ) Q21 (x3 , x2 , x1 ) Q2 (x1 , x¯2 , x¯3 ) Q6 (x¯2 , x3 , x¯1 ) Q10 (x¯3 , x¯1 , x2 ) Q14 (x¯1 , x¯3 , x2 ) Q18 (x¯2 , x1 , x¯3 ) Q22 (x¯3 , x2 , x¯1 ) Q3 (x¯1 , x2 , x¯3 ) Q7 (x¯2 , x¯3 , x1 ) Q11 (x3 , x¯1 , x¯2 ) Q15 (x¯3 , x¯2 , x1 ) Q19 (x1 , x3 , x2 ) Q23 (x2 , x1 , x3 ) Q4 (x¯1 , x¯2 , x3 ) Q8 (x2 , x¯3 , x¯1 ) Q12 (x¯3 , x1 , x¯2 ) Q16 (x3 , x¯2 , x¯1 ) Q20 (x1 , x¯3 , x¯2 ) Q24 (x¯2 , x¯1 , x3 ) Tabella 2.1: Elementi del point group. A. Morgan, in Landsberg, ed., Solid State Theory: Methods and Applications.1969 Esistono anche le simmetrie di traslazione, cioè il cristallo viene traslato in se stesso. ~ l ) = f (~r) f (~r + R ~ l = vettore reticolare. con R Data la periodicità della funzione f (~r) si può ricorrere alla serie di Fourier: ( P ~ f (~r) = k~h Ak~h eikh ·~r R ~ Ak~h = Ω1 Ω f (~r)e−ikh ·~r (2.11) (2.12) dove Ω è il volume base che genera il cristallo. La scelta del volume non è univoca, quindi lo si sceglie partendo da a~1 , a~2 , a~3 che individuano quel volume che prende il nome di cella di WignerSeitz. Questa cella si ottiene connettendo gli atomi vicini con le linee (a~1 , −a~1 , a~2 , −a~2 , a~3 , −a~3 ) e tagliando le connessioni a metà per mezzo di piani. La cella è la figura racchiusa da questi piani. Il valore del volume lo si ottiene dal prodotto misto dei vettori a~1 , a~2 , a~3 : Ω = a~1 · (a~2 × a~3 ) (2.13) Ricordando la periodicità della funzione esponenziale il cui argomento è puramente immaginario, si giunge alle seguenti espressioni: ~ ~ Kh · Rl = 2π (2.14) K~h = h1 b~1 + h2 b~2 + h3 b~3 ~ 2π 2π 2π ~ ~ b2 = Ω a~3 × a~1 b3 = Ω a~1 × a~2 b1 = Ω a~2 × a~3 dove hi i = [1, 2, 3] sono degli interi. K~h rappresenta il reticolo reciproco nello spazio delle fasi. Per il silicio, ad esempio, il reticolo diretto cubico a facce centrate è trasformato per mezzo dell’operatore di traslazione nel reticolo reciproco cubico a corpo centrato. La prima zona di Brillouin può essere ottenuta considerando che, prendendo (0, 0, 0) come punto centrale, i punti più vicini sono i vertici del cubo (±1, ±1, ±1) e i centri dei cubi vicini sono i punti (±2, 0, 0), (0, ±2, 0), (0, 0, ±2). Come conseguenza, la prima zona è data dall’intersezione tra il cubo e i piani, le cui equazioni cartesiane sono del tipo |k x | + |ky | + |kz | = 32 . Cosı̀ i punti ~k che appartengono alla prima zona di Brillouin verificano le seguenti relazioni: kx ≤ 1 ky ≤ 1 (2.15) kz ≤ 1 |kx | + |ky | + |kz | ≤ 23 dove tutti i vettori sono in unità di 2π/a e a è la costante reticolare. Tenendo in considerazione quanto è stato illustrato fin qui, la prima zona di Brillouin ha 48 simmetrie, per cui i calcoli 13 possono essere condotti in una zona ristretta chiamata volume irriducibile che verifica: ( 1 ≥ |kx | ≥ |ky | ≥ |kz | ≥ 0 (2.16) kx + ky + kz < 32 Figura 2.4: Zona di Brillouin del reticolo cubico a facce centrate. Le etichette Γ, X e K sono i punti di simmetria. Γ è il centro della zona [0, 0, 0]; X il punto finale in direzione [1, 0, 0]. L e K sono i punti finali nelle direzioni [1, 1, 1] e [1, 1, 0] rispettivamente. 2.2.2 Elettroni in un Potenziale Periodico - Struttura a Bande Gli elettroni presenti nella struttura cristallina del semiconduttore, interagiscono con i campi di forza esterni applicati alla struttura e con il potenziale cristallino U c (~r) dovuto agli atomi reticolari ed agli altri elettroni. Uc(r) z Figura 2.5: Tipica rappresentazione del potenziale cristallino Per trovare le funzioni d’onda Ψ(z) bisogna risolvere l’equazione di Schrödinger per l’elettrone: h̄2 ∂ 2 Ψ(z) + Uc (z)Ψ(z) = Ψ(z) (2.17) − 2m0 ∂z 2 14 Le funzioni d’onda Ψ(z), soluzione dell’equazione di Schödinger, sono anche chiamate Onde di Bloch quando si considera un potenziale cristallino periodico U c (r) e consistono in una funzione periodica nella costante reticolare a moltiplicata per l’espressione dell’onda piana. Ψk = uk eik~r uk (~r + a) = uk (~r) (2.18) Per trovare uk (z) basta semplicemente inserire l’espressione per le onde di Bloch nell’equazione di Schödinger ottenendo la relazione: [ 1 h̄ ∂ ( + h̄k)2 + Uc (z)]uk = (~k)uk 2m0 i ∂z (2.19) Risolvendo tale equazione con le opportune condizioni al contorno in funzione del vettore d’onda ~k e per ogni autovalore (~k), si ottiene il valore della funzione d’onda u k . Si nota che fissando n (~k) n = 1, 2, 3.. e facendo assumere al vettore d’onda ~k valori appartenenti ad R si ottiene un’infinità di autovalori della funzione d’onda uk . Ad ogni autovalore (~k) è associata una banda energetica poichè come ~k varia, una intera banda energetica è coperta. Il comportamento generale della struttura formata dalle bande energetiche è schematizzato nella figura 2.6. Le linee tratteggiate rappresentano l’intervallo minimo di periodicità della ε(κ) n=3 ε3(κ1) ε2(κ1) n=2 ε1(Κ1) n=1 −π /a k1 π /a k Figura 2.6: Bande energetiche in funzione del vettore d’onda k bande nello spazio delle fasi. È importante notare che esistono zone proibite dove l’energia non può assumere nessun valore determinando la separazione delle bande con dei “salti” che sono chiamati “energy gap”. 2.2.3 Bande di Conduzione e di Valenza - Relazioni Energetiche La regione energetica della struttura a bande di un semiconduttore, essenziale nella trattazione e formulazione del problema del Trasporto, è centrata rispetto all’energy gap e si estende di qualche eV al di sotto del massimo della banda di valenza e al di sopra del minimo della banda di conduzione. Siccome la relazione di dispersione energetica ha una forma molto complessa, spesso vengono introdotte delle relazioni semplificate che descrivono l’energia in funzione del vettore d’onda ~k. L’espressione della relazione energetica è del tipo = (~k), cioè in funzione del vettore d’onda 15 12.0 10.0 Energy [eV] 8.0 6.0 4.0 2.0 0.0 L Γ X U,K Wave Vector k Γ Figura 2.7: Struttura della Banda di Conduzione del Silicio usata nel simulatore Bandit dei portatori (elettroni o lacune) sottoposti a una forza esterna. Nella regione intorno al minimo della banda di conduzione, chiamata normalmente valle, o intorno al massimo della banda di valenza, la funzione (~k) è data dall’espressione quadratica in ~k. L’espressione è del tipo: • (k) = h̄k2 2m : k2 banda sferica ed approssimazione parabolica; • (k) = h̄2 ( mll + kt2 mt ): banda elissoidale ed approssimazione parabolica; • (k) = ak 2 [1 ∓ g(ϑ, ψ)]: banda “warped” ed approssimazione parabolica; Nel caso in cui k assume valori non più vicini al minimo della banda di conduzione o al massimo della banda di valenza, le espressioni di (k) prese in considerazione non sono più valide. Per considerare la non parabolicità bisogna quindi sostituire ad (k) un’espressione in funzione di α che rappresenta il coefficiente di non parabolicità . (k) → (k)[1 + α(k)] = ky2 kx2 k2 + + z 2mx 2my 2mz (2.20) per la banda di valenza, non si può semplicemente sostituire ad (k) l’espressione in α ma bisogna considerare che la non parabolicità ha un espressione più complicata. 16 2.2.4 Modello della Banda Full-Band Nel lavoro di Venturi-Ghetti[18] viene discussa la tecnica Full-Band per il calcolo della struttura a bande impiegata nel simulatore Monte Carlo. In un simulatore Monte Carlo Full-Band la struttura a bande del semiconduttore è descritta per via numerica in termini della totale dipendenza di (~k), senza imporre la forma della banda. Il modello Full-Band è alternativo e k2 k2 molto più accurato del più comune modello analitico non parabolico: (1 + α) = 2ml l + 2mt t . Entrambi i modelli della struttura a bande permettono di calcolare la Densità degli stati (Dos), fondamentale per derivare tutte le espressioni d’interesse quali ad esempio lo scattering rate. La Dos è definita come: il numero di stati elettronici per unità di volume in ~r e in ~k ed è data da due volte (lo spin) il numero totale di stati (N 3 ) diviso il volume in ~r (Ω) e il volume totale in ~k (N 3 Vk ). 1 2N 3 = (2.21) g(~r, ~k) = ΩN 3 Vk 4π 3 La Dos in realtà è funzione dell’energia , quindi la si può esprimere per mezzo della seguente espressione: Z 1 g() = δ( − (~k))d~k (2.22) 4π 3 In 3D la funzione (~k) è di solito descritta attraverso una tabella dove vengono raccolti i valori ijp per tutti i nodi di coordinate kx = i/N , ky = j/N , kz = p/N in unità di (2π/a) appartenenti ad una griglia regolare condotta sul volume irriducibile IW della cella di Wigner-Seitz o appartenenti ad un’altra griglia formata da tetraedi, possibilmente non uniformemente distribuiti, in modo che (~k) diventa una funzione lineare su ogni tetraedo. Griglia Tabulare Si procede calcolando il numero ottimo di nodi N nella direzione 4 di una griglia spaziata con regolarità . Per computare l’energia dato lo stato ~k, bisogna prima determinare gli indici i, j, p del cubo centrato in ~k; l’energia risultante la si ottiene mediante la seguente formula di interpolazione: j+1 X p+1 i+1 X X = (2.23) i0 j 0 p0 fi0 j 0 p0 (~k) i0 =i j 0 =j p0 =p fi0 j 0 p0 (~k) = kx − ki0 ,x ky − kj 0 ,y kz − kp0 ,z · · ki0 +1,x − ki0 ,x kj 0 +1,y − kj 0 ,y kp0 +1,z − kp0 ,z (2.24) Questo schema di interpolazione è valido per valutare la Dos (g()) come funzione dell’energia . Griglia Tetraedica La griglia tetraedica implica che (~k) sia una funzione lineare su ogni tetraedo che compone la griglia permettendo di semplificare la determinazione degli eventi di scattering: lo scattering dipende dalla Dos che in questa griglia, è data dalla somma delle aree dei triangoli o dei quadrilateri ottenuti dall’intersezione di ogni tetraedo con la superficie a energia costante ( = cost). La griglia permette anche di semplificare la valutazione dei voli liberi delle particelle: essendo (~k)una funzione lineare, nè segue che la velocità di gruppo v g è costante in ogni elemento e l’integrazione delle equazioni del moto risulta semplificata. La griglia tetraedica incrementa la velocità di simulazione come conseguenza della semplificazione della struttura a bande[18]. 17 2.2.5 Determinazione delle arandezze fisiche La soluzione dell’equazione del trasporto 2.1 è la funzione di distribuzione che è indispensabile alla formulazione di tutte le altre grandezze fisiche che permettono di descrivere le proprietà dei portatori. Cosı̀ per ottenere il numero totale dei portatori, basta semplicemente sommare tutti i portatori in ogni stato con momento p~ = h̄~k. La concentrazione media dei portatori è ricavata dall’equazione: n(~r, t) = 1X f (~r, p~, t) Ω (2.25) p ~ dove la sommatoria coinvolge tutti i p~ appartenenti alla prima zona di Brillouin. La densità di corrente, dovuta agli elettroni, J(~r, t) è ottenuta considerando la funzione di distribuzione f (~r, p~, t) ed è data dalla sommatoria: J(~r, t) = − 5~ (~k) q X vg (~ p)f (~r, p~, t) ~vg = k Ω h̄ (2.26) p ~ La densità media dell’energia cinetica è invece ricavata dall’espressione: W (~r, t) = 1X E(~ p)f (~r, p~, t) Ω (2.27) p ~ La densità media dell’energia cinetica è cosı̀ espressa: Z 2 ∗ 1 1 X p~2 p~2 e[EF −Ec0 (~r)−~p /2m ]/kB TL d~ p f (~r, p~) ' W0 (~r) = 3 ∗ 3 Ω 2m∗ 8π h̄ m p~ p ~ che da come risultato (2.28) W0 3 = u 0 = k B TL (2.29) n 2 dove u0 è l’energia cinetica media per portatore in equilibrio ed è l’espressione di Boltzmann dell’energia di un gas elettronico in equilibrio. È importante osservare che tutte le grandezze sono state ricavate dalla conoscenza dei singoli portatori nel senso che, simulando la dinamica dei portatori attraverso la tecnica Monte Carlo, è possibile ricavare dei dati che permettono di esprimere le proprietà dei singoli portatori e quelle che descrivono il comportamento globale. 18 Capitolo 3 Lo Scattering da Fononi 3.1 Introduzione Alla base dello studio del trasporto nei dispositivi vi è quello dei procedimenti di “scattering”. Con tale terminologia si intende l’insieme dei meccanismi di collisione che determinano un cambiamento dello stato dei portatori nell spazio delle fasi ~k. In questo capitolo si vuole affrontare lo studio dello scattering dovuto ai fononi implementati nel simulatore Monte Carlo Bandit. Lo scattering fononico è inelastico, cioè l’energia dell’elettrone durante il processo d’urto non si conserva. Di conseguenza esso è uno dei principali meccanismi che dissipano l’energia cinetica degli elettroni acquistata dal campo elettrico. Si studierà la mobilità fononica degli elettroni in una barretta di silicio uniformemente drogata a cui è applicato un campo elettrico costante confrontandola con il modello di riferimento di mobilità. L’analisi si articola in: • Analisi dello scattering rate dovuto ai fononi ottici ed acustici implementato nel codice di Bandit ricercando le incongruenze esistenti tra il modello implementato e quanto previsto dalla teoria procedendo alla correzione del codice. In quest’ottica si analizza anche come viene implementata nel codice la scelta dello stato dopo lo scattering; • Si utilizzano i set dei potenziali di deformazione dei fononi di Bandit, di Jacoboni[9] e di Bufler[19] eseguendo il confronto delle curve di velocità e di mobilità degli elettroni per verificare che i risultati ottenuti siano tra loro consistenti; • Si analizzano le distribuzioni degli elettroni in funzione dell’energia e i coefficienti di ionizzazione α(II) per i vari set di potenziali di deformazione. Si studia quindi il comportamento degli elettroni caldi e la corrispondenza del modello implementato in Bandit con i dati di misura presenti in letteratura; La mobilitá degli elettroni viene studiata perchè è un parametro indispensabile per la determinazione della corrente IDS dei MOSFET, quindi è necessario che questa sia corretta. I portatori caldi determinano il degrado dell’affidabilitá del dispositivo e sotto l’influsso della ionizzazione da impatto, determinano una corrente di substrato che puó provocare l’insorgere di effetti bipolari parassiti[31]. La corrispondenza dei portatori caldi con quanto previsto in letteratura è indispensabile per determinare i valori corretti delle correnti di gate e di substrato di questi dispositivi. 19 3.1.1 Formulazione Generale Le onde di Bloch si muovono attraverso il reticolo ad opera del potenziale cristallino. Occasionalmente la particella incontra una perturbazione causata da una vibrazione reticolare o da un’impurità; da tale incontro scaturisce un evento di collisione che determina il mutamento dello stato da k~0 a k~00 . È possibile determinare una espressione del transition rate S( k~0 , k~00 ) in funzione del potenziale di perturbazione Us (z, t). Tutta la formulazione dello scattering si sviluppa partendo dall’equazione d’onda. ∂Ψ(z, t) [H0 + Us (z, t)]Ψ(z, t) = ih̄ (3.1) ∂t dove H0 è l’operatore Hamiltoniano e il potenziale U s (z, t) è periodico di periodo ejωt . Si giunge alla formulazione della Regola d’oro di Fermi, che esprime il transition rate in funzione della matrix element, dello stato prima e dopo lo scattering e di ω. 2π e 2 2π a 2 |H |H | δ[(k~00 ) − (k~0 ) − h̄ω] + | δ[(k~00 ) − (k~0 ) + h̄ω] (3.2) h̄ k~0 k~00 h̄ k~0 k~00 Analizzando l’espressione si può chiaramente osservare che il membro di destra è composto da due addendi che differiscono solamente per l’argomento della funzione δ. Il primo addendo contribuisce solamente quando (k~00 ) = (k~0 ) + h̄ω, quindi viene assorbita un’energia pari a h̄ω; il secondo contribuisce invece quando (k~00 ) = (k~0 ) − h̄ω, quindi viene emessa un’energia pari a h̄ω. L’equazione è alla base della teoria dello scattering applicabile ai portatori nel semiconduttore. Si definisce l’elemento di Matrice relativo al potenziale di scattering (deformazione) U s (z, t) il termine: Z S(k~0 , k~00 ) = +∞ Hk~0 k~0 ≡ 0 −∞ Ψ∗k~0 (z)Us Ψk~0 (z)dz (3.3) 0 Se si considerano come portatori gli elettroni, le funzioni d’onda per il problema imperturbato risultano essere le onde di Bloch e il matrix element puó essere riformulato come: ~0 ~ ~ ~0 Hk~0 k~00 = I(kR0 , k0 )U (k0 − k0 ) +∞ (3.4) I(k~0 , k~00 ) ≡ −∞ u∗k~ (z)uk~0 (z)dz 0 U (k~ − k~0 ) = R +∞ e−ik~00 z U (z)eik~0 z dz 0 s 0 −∞ dove I(k~0 , k~00 ) è chiamato integrale di overlap. Per una banda parabolica I( k~0 , k~00 ) ' 1 e R +∞ ~0 ~ Hk~0 k~0 ' −∞ e−ik0 z Us (z)eik0 z dz. 0 L’integrale di overlap determinato dalla parte periodica della funzione di Bloch è unitario quando le superfici equienergetiche sono sferiche e l’energia varia con legge parabolica con il momento. Il transition rate o tasso di transizione S(k~0 , k~00 ) è il tasso per il quale i portatori mutano lo stato iniziale in un altro specificato. Per le espressioni di interesse comunque quello che conta è lo scattering rate, cioè il tasso di cambiamento da uno stato iniziale specificato verso un qualsiasi altro stato. X 1 = S(k~0 , k~0 ) (3.5) τ (k~0 ) ~0 k ↑ L’equazine 3.5 rappresenta una relazione basilare di uso ricorrente nella trattazione delle concentrazioni, delle correnti etc. all’interno di un dispositivo realizzato con materiale semiconduttore: lo scattering rate è l’inverso del tempo medio tra due collisioni τ (k 0 ). Un semplice uso di questa uguaglianza permette attraverso l’impiego del teorema dell’impulso di definire la mobilitá come 20 segue: → − − −q F τ (k~0 ) = m∗ < → v drif t > ⇒ µn = − |<→ v drif t > | qτ (k~0 ) = → − m∗ |F | (3.6) attraverso m∗ si tiene conto del potenziale imperturbato. Chiaramente per ogni meccanismo di scattering si può definire un corrispondente tempo di rilassamento τ (k~0 ) per poi ricorrere alla regola di composizione della mobilità di Mathiessen per esprimere il valore complessivo di mobilità. X 1 1 = µ µi i (3.7) Come conseguenza macroscopica di questa approccio si ricorda che la resistività di un semiconduttore è legata alla mobilitá per mezzo della seguente relazione approssimata: ρ= 1 q(pµp + nµn ) (3.8) Lo scattering rate modifica la mobilitá che determina un cambiamento di resistività che si riperquote sul termine ohmico della corrente nella condizione di campo elettrico applicato . 3.2 Introduzione ai Fononi Ottici ed Acustici La definizione classica di fonone associa questo termine alle vibrazioni reticolari all’interno del semiconduttore. Le vibrazioni non sono altro che le oscillazioni rispetto alla posizione d’equilibrio degli atomi del reticolo. L’interazione tra le vibrazioni reticolari e il moto delle particelle cariche all’interno del reticolo è ovvia quando si pensi che il profilo di energia potenziale interno al reticolo è determinato dalla posizione d’equilibrio degli atomi. Scostamenti degli atomi dalla posizione d’equilibrio inducono variazioni del profilo di potenziale interno, che a loro volta interagiscono con le particelle in moto nel reticolo. I fononi si dividono in: • ottici: hanno una relazione di dispersione approsimata ω( k~q ) ' w0 = cost dove k~q è il vettore d’onda del fonone. Sono chiamati ottici poichè hanno la medesima relazione di dispersione (costante per ogni ω) dei fotoni; • acustici: hanno invece una relazione di dispersione approsimata del tipo ω( k~q ) = vs |k~q | dove vs è la velocitá del suono. Sono chiamati acustici poichè questi fononi hanno la forma della relazioni di dispersione del tipo di quelle delle onde acustiche. In figura fig.3.2 è riportato l’andamento delle relazioni di dispersione in funzione del vettore d’onda k~q per i fononi acustici ed ottici. 3.2.1 Interazione Elettrone-Fonone Poichè la struttura a bande nel semiconduttore è determinata dal potenziale cristallino la costante reticolare di un semiconduttore, sottoposta a pressione, viene a subire una perturbazione che comporta di conseguenza una perturbazione energetica nella banda di interesse. δEc = Dc ∂a a δEv = Dv ∂a a (3.9) dove Dc e Dv sono i potenziali di perturbazione dedotti sperimentalmente e tabulati per i più comuni semiconduttori. Ne consegue che le vibrazioni deformano il reticolo producendo una 21 ω ω=ω 0 ω=υ skq kq Figura 3.1: Relazione di dispersione quando si considera solo i fononi longitudinali vicino al centro della zona di Brillouin deformazione del bordo della banda. Elettroni e fononi interagiscono quando i vettori d’onda dei portatori “scatterano” fuori da questa deformazione. La trattazione di questa interazione assume come punto di partenza l’uso delle onde elastiche 1 che vengono impiegate per derivare l’espressione dei potenziali di interazione dei fononi ottici e degli acustici. UAP (x, t) = DA ∂u ∂x UOP (x, t) = DO u(x, t) (3.10) La deformazione del reticolo ad opera dei fononi polari perturba il momento di dipolo tra gli atomi determinando quindi un campo elettrico che rappresenta le collisioni dei portatori con i fononi, mentre la deformazione dovuta agli altri fononi varia la costante reticolare determinando la variazione del gap tra la banda di conduzione e quella di valenza. 3.2.2 Scattering da Fononi Acustici Per valutare lo scattering rate dovuto ai fononi acustici volendo introdurre il concetto del potenziale di deformazione (ADP), si parte dalla regola d’oro di Fermi e si assume che ∆ = ±h̄ω, dove − è riferito all’assorbimento e + all’emissione. Lo scattering acustico è intravalle perchè il vettore d’onda del fonone k~q è piccolo. Ricordando il fattore di Bose-Einstein Nβ , che esprime il numero di fononi, si può scrivere l’operatore Hamiltoniano per i fononi acustici e ricavare lo scattering rate per l’emissione. 1 Nβ = e H ac = 1 u(x, t) s h̄ωq kb TL (3.11) −1 h̄(Nβ + 1/2 ± 1/2) ~ DA k~q e±j kq ·~r 2ρΩωq = Aβ ei(±βx−ωt) 22 (3.12) dove k~q = ∂u/∂x. Il tasso di transizione S(~k, k~0 ) è cosı̀ ricavato: 2π S(~k, k~0 ) = | < ~k|H ac |k~0 > |2 δ((k~0 ) − (~k) + ∆) h̄ (3.13) dove < ~k|H ac |k~0 > è la notazione per indicare il matrix element e +∆ rappresenta l’emissione del fonone . Z +∞ ~ ~0 e−j k·~r ac e+j k ·~r √ H √ dΩ Ω Ω −∞ s Z +∞ h̄(Nβ + 1) 1 j(−k~0 −k~q +~k) < ~k|H ac |k~0 >= DA k~q [ e dΩ] 2ρΩωq −∞ Ω < ~k|H ac |k~0 >= (3.14) (3.15) Quindi il trasition rate S(~k, k~0 ) può essere riscritto nella seguente formulazione: 2π 2 h̄(Nβ + 1) ~ 2 |kq | δ(−k~0 − k~q + ~k)δ((k~0 ) − (~k) + h̄ωq ) D S(~k, k~0 ) = h̄ A 2ρΩωq (3.16) (Nβ + 1) è riferito all’emissione del fonone: (Nβ + 1) = 1 eh̄ωq /(kB T ) −1 + 1 ωq → 0 (Nβ + 1) = kB T h̄ωq (3.17) mentre per l’assorbimento si ottiene che Nβ → 0. L’espressione finale del transition rate S(~k, k~0 ) per i fononi di tipo acustico è qui ottenuta assumendo che ω q = k~q vs : π kB T 2 S(~k, k~0 ) = D δ(−k~0 − k~q + ~k)δ((k~0 ) − (~k) + h̄ωq ) ρΩ h̄vs2 A (3.18) Lo scattering rate S(~k) è ottenuto integrando il transition rate S(~k, k~0 ) su tutti i possibili stati finali k~0 (tabella 3.1). Modello Scattering rate Full-Band S() = Analitico parabolico S() = /non parabolico S() = P δ((k~0 )−(~k)+h̄ωq ) π kB T 2 k~0 ρ h̄vs2 DA Ω R Ω 0 )dk 0 ~ ~ ~ S( k, k (2π)3 2 πDA kB TL gc () h̄ν 2 ρ s Densità degli stati Analitica parabolica gc () = Analitica non parabolica gc () = √ 8π 2(m∗ )3/2 √ 3 √ h 8π 2(m∗ )3/2 (1 + h3 √ √ 2α) 1 + α Tabella 3.1: Modelli dello scattering rate per i fononi acustici intravalle (banda sferica): modello analitico, modello Full-Band La relazione dello scattering rate per gli acustici dimostra che lo scattering rate è proporzionale al numero di stati finali disponibili. 3.2.3 Scattering da Fononi Ottici Il procedimento adottato è analogo a quello dello scattering acustico, se non che, nel caso deifononi otticilo scattering non può essere considerato elastico a meno che, l’energia dei portatori non sia molto alta. Le superfici ad energia costante per gli elettroni nel silicio consistono di parecchie valli. Per il silicio esistono due possibili meccanismi di scattering intervalle: 23 • tipo G: Il processo muove un portatore da una valle nota in un’altra sullo stesso asse; • tipo F: Il processo muove un portatore sulle valli ortogonali a quella di partenza. Questi processi di scattering producono un cambio di momento (vettore d’onda) molto grande e quindi necessitano di fononi con vettori d’onda k~q vicino al confine della zona. Figura 3.2: Meccanismi di Scattering Intervalle di tipo F e di tipo G Il numero di valli finali disponibili per lo scattering intervalle è cosı̀ riassunto: • tipo G → Z = 1 valle; • tipo F → Z = 4 valli; Per derivare il modello si deve considerare l’espressione dell’operatore Hamiltoniano per i fononi ottici e il fattore di Bose-Einstein eq.3.11. s h̄(Nβ + 1/2 ± 1/2) ~ H opt = DO e±j kq ·~r (3.19) 2ρΩωq Utilizzando la regola d’oro di Fermi si esprime il transition rate S(~k, k~0 ) per gli ottici: 2π S(~k, k~0 ) = | < ~k|H opt |k~0 > |2 δ((k~0 ) − (~k) ± ∆) h̄ (3.20) Il matrix element è cosı̀ espresso: < ~k|H opt |k~0 >= s h̄(Nβ + 1) DO [ 2ρΩωq Z +∞ −∞ 1 j(−k~0 ±k~q +~k) e dΩ] Ω (3.21) 2π 2 h̄(Nβ + 1) δ(−k~0 ± k~q + ~k)δ((k~0 ) − (~k) ± h̄ωq ) D S(~k, k~0 ) = h̄ O 2ρΩωq (3.22) 2 Nβ 1/2 ± 1/2 δ(−k~0 ± k~q + ~k)δ((k~0 ) − (~k) ± h̄ωq ) S(~k, k~0 ) = DO ρΩωq (3.23) 24 Modello Scattering rate Full-Band S() = Analitico parablico S() = /non parabolico S() = P δ((k~0 )−(~k)±h̄ωq ) π ZNβ 2 ρ ωq D O Ω k~0 R Ω ~ ~ S(k, k 0 )dk~0 (2π)3 2 ZNβ πDO gc () ρωq Densità degli stati √ 2(m∗ )3/2 √ 3 √ h ∗ 3/2 8π 2(m ) 6 (1 + h3 Analitica parabolica gc () = 6 8π Analitica non parabolica gc () = √ √ 2α) 1 + α Tabella 3.2: Modelli dello scattering rate per i fononi ottici intervalle (banda sferica): modello analitico, modello Full-Band Dalla relazione si osserva che un portatore con una qualunque energia può subire un processo di urto causato dal’assorbimento di un fonone ottico, ma solo i portatori con un’energia eccedente urtano per emissione di fononi ottici. 3.3 Il codice di Bandit 3.3.1 Introduzione Lo scopo di questa sezione è quello di illustrare le modifiche operte al codice di Bandit e l’analisi dei dati ottenuti tramite simulazioni e di confrontarli con quanto è riportato in letteratura. Il codice Bandit implementato prima di apportare le correzioni presentava diversi errori quali: • Per il meccanismo di scattering di tipo F per i fononi ottici esistevano certe configurazioni per cui la scelta dello stato dopo lo scattering risultava intravalle; • Per il meccanismo di scattering di tipo G per i fononi ottici esistevano certe configurazioni per cui la scelta dello stato dopo lo scattering era di tipo intervalle. Si sono apportate anche modifiche al codice oltre a quelle necessarie per correggere gli errori esistenti quali: • Il calcolo della densità degli stati (Dos) attraverso il modello analitica da applicare in prossimitá degli espremi della banda; • Inserimento della scelta dello stato dopo lo scattering per i fononi acustici; Nel lavoro [17] vengono confrontati tra loro più simulatori Monte Carlo implementati con codici diversi che risolvono l’equazione semiclassica di Boltzmann per gli elettroni nel silicio. Da tale lavoro risulta che il modello implementato in Bandit per la struttura a bande del silicio, di tipo Full Band, produce dei risultati conformi con quelli ottenuti con gli altri simulatori specialmente con quelli che implementano il modello analitico della struttura a bande. Il comando in Bandit attivare il meccanismo di scattering con i fononi acustici è il seguente: -soa coef[1][eV ],coef[2][eV ],e1[eV ],e2[eV ] dove coef[1] e coef[2] sono i potenziali di deformazione acustici D A . Si osserva che per lo scatterig da fononi acustici (ScattAcoustic), si utilizzano due coefficienti che vengono passati dal file curl.c con i valori del potenziale di deformazione acustico D A 25 Acoustic Deformation Potenzial imposti dall’utente. Si utilizzano due coefficienti per realizzare una dipendenza lineare tra il potenziale di deformazione acustico e l’energia della particella. Lo scettering rate da fononi acustici dipende anche dall’energia della particella oltre che dalla Dos: si può schematizzare tale dipendenza lineare mediante la figura 3.3 coef[1] coef[2] e1 e2 Electron Energy [eV] Figura 3.3: Dipendenza del Potenziale di Deformazione Acustico dall’energia della particella Il comando in Bandit per attivare il meccanismo di scattering da fononi ottici di tipo G, F o nessuno dei due è il seguente: -soe EF onone [eV],DO [eV/cm],tipo tipo=(f;g;void) dove DO è il potenziale di deformazione ottico e EF onone è l’energia del fonone. 3.3.2 Calcolo dello Scattering in Bandit Il file sorgente che implementa lo scattering delle particelle in Bandit è il file scatt.c. In questo file vengono implementati i meccanismi di scattering fononico (acustico, ottico) e richiamate le funzioni per il calcolo dello scattering rate delle impurezze ionizzate IonImpurityScattRate del file ion-imp.c e la funzione IIScatteringRate del file impact.c che implementa lo scattering da generazione da impatto. La prima sezione del file si occupa del calcolo dello scattering rate, mentre nella seconda si determina lo stato della particella (elettrone-lacuna) dopo l’evento che ha determinato la fine del volo libero. La funzione CreateScattering si occupa di inizializzare i valori per il calcolo dello scattering rate per ogni meccanismo di urto implementato in Bandit, di calcolare la densità degli stati (Dos) e di calcolare lo scattering rate. In figura 3.4 è riprodotto lo schema concettuale. 26 Figura 3.4: Schema concettuale della funzione CreateScattering Il seguente frammento di codice rappresenta l’inizializzazione del coefficiente dello scattering rate che verrà moltiplicato per la Dos, calcolata nel codice vecchio con la tecnica Full-Band, mentre nel codice nuovo viene calcolata Full-Band per energie degli elettroni superiori a 0.1eV , altrimenti è calcolata analiticamente. /* scale scattering mechanism coefficients */ for (sm = sc->smf; sm < sc->sml; sm++) { if (sm->t & ScattAcoustic) { sm->coef[1] = 2 * M_PI * bs->temp * nsb / (bs->ul * bs->ul * bs->rho * bs->dirvol * egran * 27 bs->smax[type]->d) * sm->coef[1] * sm->coef[1]; sm->coef[1] *= 1.0 / 6.0; sm->coef[2] = 2 * M_PI * bs->temp * nsb / (bs->ul * bs->ul * bs->rho * bs->dirvol * egran * bs->smax[type]->d) * sm->coef[2] * sm->coef[2]; sm->coef[2] *= 1.0 / 6.0; } else if (sm->t & ScattOptic) { r = sm->e / (2 * bs->temp); nph = 1 / (2 * exp(r) * sinh(fabs(r))); sm->coef[1] = M_PI * nph * nsb / (bs->rho * fabs(sm->e) * bs->dirvol * egran * bs->smax[type]->d) * sm->coef[1] * sm->coef[1]; if (sm->t & ScattF) sm->coef[1] *= 4.0 / 6.0; if (sm->t & ScattG) sm->coef[1] *= 1.0 / 6.0; } } Studiando il frammento di codice, Il ciclo for viene eseguito sulla tabella dei meccanismi di scattering (smf è il puntatore all’inizio della tabella, sml è il puntatore alla fine) i cui campi sono riempiti con i meccanismi di scattering impostati dall’utente. Inizialmente coef[1] contiene il valore del potenziale di deformazione. Per i fononi ottici l’espressione del codice è cosı̀ convertita nell’espressione canonica per il calcolo dello scattering rate: h i π·nph·sm→coef[1]2 ·Z nsb sm → coef[1] = bs→rho·fabs(sm→e) bs→dirvol·egran·bs→smax[type]→d dove: bs → rho = ρ: è la densità del cristallo; bs → dirvol = Ω: è il volume diretto del cristallo; sm → e = h̄ωq : è l’energia del fonone; bs → temp = kB TL : è la temperatura reticolare; bs → ul = vs : è la velocità del suono. nph: è il fattore di Bose-Einstein Le grandezze di seguito elencate servono per il calcolo della Dos Full-Band: nsb: è il numero di sottobande che compongono la struttura a bande; egran: è la granularità energetica; bs → smax[type] → d: la dos Full-Band viene organizzata in una matrice formata da 3 colonne: energia, stato, Dos cumulativa. bs → smax[type] → d è il valore massimo della Dos cumulativa. 28 smin→ e Enegia i Stato d Dos Cumulativa smax→ Per i fononi acustici l’espressione implementata nel codice è cosı̀ convertita nell’espressione canonica dello scattering rate: 2 smh → coef[1] = π·bs→temp·sm→coef[1] 6·bs→rho·bs→ul i2 Dos sh→d−sl→d nsb Dos = bs→dirvol·egran·bs→smax[type]→d · smax[type]→d Lo scattering rate è ottenuto implementando il seguente codice: /* compute scattering rate */ egran05 = egran / 2; smin = bs->smin[type]; smax = bs->smax[type]; SetupEDSRFunction(bs, sc, egran, type); dedsr = 1 / sc->edsrp[1]; nedsr = ceil((bs->emax[type] - sc->edsrp[0]) * sc->edsrp[1]); sc->edsr = (double*) malloc(nedsr * sizeof(double)); edsrl = sc->edsr + nedsr; for (edsr = sc->edsr; edsr < edsrl; edsr++) *edsr = 0; tmpedsr = 0; if (verbose & VerbScattering) { tmpedsr = (double*) malloc(nedsr * sizeof(double)); edsrl = tmpedsr + nedsr; for (edsr = tmpedsr; edsr < edsrl; edsr++) *edsr = 0; } for (sm = sc->smf; sm < sc->sml; sm++) { if (sm->t & ScattII) { if (IIScatteringRate( sm, nedsr, dedsr, bs, emax, type)) exit(-20); sc->ii = sm; continue; } if (sm->t & ScattIonImp) { if (InitIonizedImpScattering(cm, sc, nedsr, dedsr, bs, emax, type, &mmsz)) exit(-21); continue; } 29 sl = smin; sh = smin; edsr = sc->edsr; tedsr = tmpedsr; for (e = bs->emin[type]; e <= bs->emax[type]; e += dedsr) { el = e + sm->e - egran05; eh = e + sm->e + egran05; while (sl < smax && sl->e < el) sl++; while (sh < smax && sh->e < eh) sh++; r = (sm->c)(e - bs->emin[type], (struct ScattMech*)sm) * (sh->d - sl->d); *edsr++ += r; if (verbose & VerbScattering) *tedsr++ += r; } } • Il for(sm = sc → smf; sm < sc → sml; sm + +) più esterno punta alla tabella dei meccanismi di scattering e richiama le opportune funzioni per il calcolo dello scattering rate. Se la variablie sm → t si riferisce alla ionizzazione da impatto, la scattering rate è ottenuto richiamando la funzione IIScatteringRate del file impact.c, se sm → t si riferisce alle impurezze ionizzate viene richiamata la funzione InitIonizedImpScattering del file ion-imp.c altrimenti si procede con il calcolo dello scattering rate dei fononi. • La Dos Full-Band è ottenuta dal ciclo for(e = bs → emin[type]; e <= bs → emax[type]; e+ = dedsr) annidato che è utilizzato quando si deve calcolare lo scattering rate per i fononi. È un ciclo energetico è viene eseguito partendo dal minimo della struttura a bande fino al massimo della stessa ed incrementata e ad ogni passo della quantità energetica dedsr = ∆/2 (passo energetico). Definite la quantità el = e + sm → e − egran05 eh = e + sm → e + egran05 → → el = e + ph − egran/2 el = e + ph + egran/2 che rappresentano due variabili energetiche che vengono utilizzate per identificare la Dos FullBand corretta. Fin tanto che sl è minore del massimo puntatore della struttura Dos e l’energia sl → e dello stato puntato da sl è minore di el, il puntatore sl viene ingrementato. Lo stesso procedimento avviene per sh. I puntatori sl e sh identificano nella tabella della Dos cumulativa gli stati disponibili (sh → d − sl → d): la densità degli stati è ottenuta rapportando sh → d − sl → d con il valore della massima dos cumulativa smax[type] → d. DoSF ull−Band = X δ((k~0 ) − (~k) ± h̄ωq ) k~0 Ω = nsb sh → d − sl → d · (3.24) bs → dirvol · egran smax[type] → d Lo scattering rate dei fononi è ottenuto moltiplicando sm → c (prefattore dei fononi) per la Dos. Una delle modifiche apportate al codice di Bandit è il calcolo analitico del fondo della Banda (Dos) ottenuto con il seguente codice implementato per sostituire il calcolo della Dos Full-Band nell’intorno del minimo dell’energia. Se l’energia della particella è minore a 0.1eV si calcola la 30 Dos analiticamente, altrimenti la si calcola con il modello Full-Band. Questo valore energetico è impostato dall’utente nel file di input di Bandit con il comando -x. const double DOSFactor = 1 / (EnergyFactor * (LengthFactor / Centimeter) * (LengthFactor / Centimeter) * (LengthFactor / Centimeter)); double nsesb=bs->cbls - bs->cbfs + 1; PCBMinimum mn; double ugf=4 * M_PI / bs->a0; for (mn = bs->mnf; mn < bs->mnl && mn->sbi!=4; mn++); if ((type==Electron)&&((e-bs->emin[type])*(1.0+mn->a*(e-bs->emin[type])) <mn->BMEmax)) { double dos_ana; if (e+sm->e<bs->emin[type]) dos_ana=0; else { dos_ana=(bs->dirvol*egran*smax->d/DOSFactor/2.0/nsesb)* 6.0*(sqrt(2.0)*8.0*M_PI*ElectronCharge* sqrt(ElectronCharge)/PlanckConstant/ PlanckConstant/PlanckConstant) *Centimeter*Centimeter*Centimeter *sqrt( ElectronRestMass*ElectronRestMass*ElectronRestMass *pow(ugf*ugf/4.0,3.0) /mn->ekem[0]/mn->ekem[1]/mn->ekem[2] ) *sqrt((e+sm->e-bs->emin[type])*EnergyFactor) *sqrt(1.0+mn->a*(e+sm->e-bs->emin[type])) *(1.0+2.0*mn->a*(e+sm->e-bs->emin[type])); } r=(sm->c)(e - bs->emin[type], (struct ScattMech*)sm) *dos_ana; Il ciclo for viene eseguito sui minimi della struttura a bande. Il codice per il calcolo della Dos analitica implementa l’espressione teorica della dos: )3 · bs→dirvol·egran·smax→d Dosanal = gc () = 0.5EnergyFactor( LengthFactor cm nsesd h i i h √ 2 8· 2·πe3/2 m3/2 3 o · cm3 ( ugf · 6 h3 ·mn→ekem[0]·mn→ekem[1]·mn→ekem[2] 4 ) p p · e + sm → e − bs → emin[type] · 1 + 2 · mn → a(e + sm → e − bs → emin[type]) p · 1 + mn → a(e + sm → e − bs → emin[type]) 31 Prescindendo dai fattori di adimensionalizzazione dell’espressione della Dos, la formula implementata nel codice è esattamente l’espressione teorica riportata nelle tabelle 3.1 e 3.2 (termine racchiuso nelle parentesi graffe). 3.3.3 Scelta del Meccanismo di Scattering La funzione DoScattering realizza il calcolo dello stato della particella dopo l’evento di scattering che ha interrotto il suo volo libero. In questa funzione è implementato lo schema concettuale di figura 3.5 per la ricerca del particolare meccanismo di scattering e il calcolo dello stato dopo lo scattering. La selezione del meccanismo di scattering implementata in Bandit è quella discussa nel precedente capitolo. Si esegue un ciclo sulla tabella delle particelle: selezionata una ad una la particella, se ne determina lo stato dopo lo scattering. for(pp = ppf; pp < ppl; pp + +){ p=*pp; .. I puntatori iniziale e finale alla tabella delle particelle sono ppl e ppf. Lo scattering rate totale è calcolato mediante la funzione TotalScatteringRate che è la somma del contributo dello scattering rate dipendente dall’energia (fononi e ionizzazione da impatto) e dal contributo dipendente dalle coordinate spaziali (impurezze ionizzate). r=TotalScatteringRate(p → ek, sc, p → r, cm, &x, &y, &ed)*drand48(); drand48() fornisce un numero random tra 0 e 1. Si esegue quindi un ciclo sulla tabella dei meccanismi di scattering definiti dall’utente in Bandit e si calcola lo scattering rate sr proprio di quel meccanismo: for (sm = smf; sm < sml && r >= 0; sm++) { if (sm->t & ScattII) { iedsr = (int) ((p->ek - sc->edsrp[0]) * sc->edsrp[1]); if (iedsr > nedsr - 2) iedsr = nedsr - 2; edsr = sc->ii->s + (iedsr > 0 ? iedsr : 0); sr = edsr[1] > edsr[0] ? edsr[1] : edsr[0]; } else if (sm->t & ScattIonImp) sr = IonImpurityScattRate(sc, x, y, p->ek); else { ek = p->ek + sm->e - egran05; sa = smin; sb = smax; while ((d = sb - sa) > 1) { s = sa + d / 2; if (s->e > ek) sb = s; else sa = s; } sl = sa; 32 for sulle particelle p=* pp r=TotalScatteringRate *rand48 () for sul i- esimo meccanismo di Scattering p=p+1 si r>0 no p< ppl no sì Calcolo dello scattering rate del i- esimo meccanismo ( sr i) Exit State After Scattering r<sr i si no Impact Ionization Ionized Impurity Phonons r=r-sr i Figura 3.5: Schema concettuale della funzione DoScattering ek += egran; sa = smin; sb = smax; while ((d = sb - sa) > 1) { 33 s = sa + d / 2; if (s->e > ek) sb = s; else sa = s; } sh = sa; sr = (sm->c)(p->ek - bs->emin[p->type], (struct ScattMech*)sm) * (sh->d - sl->d); } Per lo scattering da fononi l’espressione while((d =sb-sa)>1) permette di identificare gli stati che verificano la seguente diseguaglianza per l’energia delle particelle: i ± h̄ωq − ∆/2 < particle < i ± h̄ωq + ∆/2 dove i è l’energia della particella prima dello scattering, h̄ω q è l’energia del fonone e ∆/2 è il passo d’integrazione. Lo scattering rate dovuto ai fononi sr è proporzionale alla Dos. sr ∝ (sh → d − sl → d) Se r è minore di sr significa che è stato individuato il corretto meccanismo di scattering e quindi si procede con la determinazione dello stato dopo tale evento di urto con le regole proprie di tale meccanismo; viceversa se r è maggiore di sr bisogna ricercare un’altro meccanismo di scattering nella tabella dei meccanismi d’urto. Il successivo passo è quello di decrementare il total scattering rate r della quantità sr. Quando r = 0 si procede incrementando il puntatore a particella ∗pp di un’unità, cioè si realizza un self-scattering. Si determina quindi lo stato dopo lo scattering per tutte le particelle appartenenti alla tabella delle particelle. 3.4 Stato dopo lo scattering nel caso dei fononi Lo stato dopo lo scattering per i fononi è ricercato prima nel volume irriducibilie (IW) e poi viene ruotato con le regole del meccanismo di scattering nelle valli disponibili conoscendo la valle di partenza. 3.4.1 Determinazione dello stato dopo lo scattering nel IW Per i fononi si deve determinare lo stato dopo lo scattering che ha un’energia f = i ± h̄ωq . if (r < sr) { if (sm->t & ScattII) { if (verbose & VerbDebug2) fprintf(stderr,"NEW P: %d %e %e %e %e\n",newppl-ppl+1, r/TimeFactor, sr/TimeFactor, (p->ek-bs->emin[p->type])*EnergyFactor,p->w); pe = ph = NULL; if (flags & BipolarDev) { if (newppl >= ppe - 2) nnii++; 34 else { /* create new electron */ pe = *newppl; *pe = *p; pe->type = Electron; newppl++; /* create new hole */ ph = *newppl; *ph = *p; ph->type = Hole; newppl++; } } else if (p->type == majority) { if (newppl >= ppe) nnii++; else { /* create new majority carrier */ **newppl = *p; (*newppl)->type = majority; if (majority == Electron) pe = *newppl; else ph = *newppl; newppl++; if (flags & IISecondary) { if (newppl >= ppe) nnii++; else { /* create new minority carrier */ **newppl = *p; (*newppl)->type = minority; if (minority == Electron) pe = *newppl; else ph = *newppl; newppl++; } } } } 35 else if (p->type == minority) { if (newppl >= ppe) nnii++; else { /* create new minority carrier */ **newppl = *p; (*newppl)->type = minority; if (minority == Electron) pe = *newppl; else ph = *newppl; newppl++; if (!(flags & IINoTer)) { if (newppl >= ppe) nnii++; else { /* create new majority carrier */ **newppl = *p; (*newppl)->type = majority; if (majority == Electron) pe = *newppl; else ph = *newppl; newppl++; } } } } else { fprintf(stderr,"INTERNAL ERROR in scatt\n"); exit(222); } DoImpact( bs, egran, p, pe, ph); } else if (sm->t & ScattIonImp) DoImpurity(p, x, y, bs, sc); else { dos = sl->d + r / (sm->c)(p->ek - bs->emin[p->type], (struct ScattMech*) sm); sa = sl; 36 sb = sh; while ((d = sb - sa) > 1) { s = sa + d / 2; if (s->d > dos) sb = } ultmp = sa->i; p->sbi = ultmp & mask; ultmp >>= log2n; px[0] = (ultmp & mask) * h + ultmp >>= log2n; px[1] = (ultmp & mask) * h + px[2] = (ultmp >> log2n) * h s; else sa = s; dsp * (drand48() - 0.5); dsp * (drand48() - 0.5); + dsp * (drand48() - 0.5); Nel codice si calcola la Dos dello stato dopo lo scattering considerando il rapporto tra r e sr (fig.3.6). Lo stato dopo lo scattering viene ricercato nella Dos di sr; si utilizzano due puntatori sa e sh−−>d sr r sh−−>d DoS di sr Figura 3.6: Desistà degli stati di sr contenete lo stato dopo lo scattering sb che vengono incrementati fino a quando non si è determinato lo stato (d = 1). Identificata cosı̀ la Dos cumulativa dello stato dopo lo scattering puntata da sa, si utilizza il campo i per decodificare lo stato. Le componenti dello stato dopo lo scattering vengono moltiplicate per la quantità: (drand48() − 0.5) · dsp per randomizzare lo stato discreto i attraverso il fattore di dispersione dsp e drand48(). Si ottine cosı̀ lo stato dopo lo scattering in modo random con il vincolo che appartenga al volume irriducibile (IW). La modifica introdotta al codice di Bandit permette di calcolare analiticamente per gli elettroni lo stato dopo lo scattering. Il ciclo for è condotto sui minimi della struttura a bande e definita la quantità: gam = p → ek + sm → e − bs → emin[p → type] 37 si verifica che l’energia (gam), calcolata in modo non parabolico, sia minore della massima energia BMEmax per la validità del modello analitico impostata in Bandit dall’utente con il comando -x. for (mn = bs->mnf; mn < bs->mnl && mn->sbi!=4; mn++); if ((p->type==Electron)&& ((gam=(p->ek+sm->e-bs->emin[p->type]) *(1.0+mn->a*(p->ek+sm->e-bs->emin[p->type]))) <mn->BMEmax)) { double costheta,sintheta,phi; phi=drand48()*M_PI/4.0; costheta=2.0*drand48()-1.0; sintheta=sqrt(1.0-costheta*costheta); qiso[0]=sqrt(gam)*costheta; qiso[1]=sqrt(gam)*sintheta*cos(phi); qiso[2]=sqrt(gam)*sintheta*sin(phi); px[0]=mn->p[0]+qiso[0]/sqrt(mn->ekem[0]); px[1]=mn->p[1]+qiso[1]/sqrt(mn->ekem[1]); px[2]=mn->p[2]+qiso[2]/sqrt(mn->ekem[2]); } Lo stato dopo dell’evento d’urto è calcolato attraverso gli angoli φ e θ che sono ricavati dall’integrale dello scattering rate fononico nel caso della banda analitica sferica. Sr ()ph = A1 Z ∞ k 02 0 Z 2π 0 Z π 0 sin(θ)δ(f − i ± h̄ωq )dk 0 dφdθ X sqrt(gam) θ Y ϕ Z Figura 3.7: Scelta dello stato dopo lo scattering in modo analitico 38 (3.25) L’angolo φ è ottenuto da un numero random uniformemente distribuito tra [0 ÷ 1] Z 2π 0 dφ → φ [0 ÷ 2π] → φ = π drand48() 4 (3.26) ed è limitato tra −π/4 e π/4 affinchè lo stato dopo lo scattering appartenga al volome irriducibile (IW), mentre il coseno dell’angolo θ è ottenuto dall’espressione: Z π sin(θ)dθ = 0 Z 1 −1 d cos(θ) → cos(θ) = 2drand48() − 1 (3.27) In figura 3.7 è illustrato la scelta delle componenti dello stato dopo lo scattering per la banda sferica. gam è la somma dell’energia della particella e di quella del fonone in banda sferica. Lo stato dopo lo scattering è quindi ottenuto dalle trasformazioni di Herring & Vogt che trasformano lo stato in banda sferica in banda elissoidale. Lo stato in banda elissoidale è la somma del minimo della banda elissoidale e lo stato in banda sferica diviso per sqrt(mn → ekem[0]) che rappresenta la trasformazione di Herring & Vogt. Cosı̀ come sono stati calcolati p[0], p[1] e p[2] verificano sempre l’appartenenza al volume irriducibile (IW). 3.4.2 Rotazione dello stato dopo lo scattering Una volta trovato lo stato dopo lo scattering nel IW, esso deve essere ruotato nella giusta valle d’arrivo in accordo con le regole del meccanismo di scattering fononico conoscendo la valle di partenza. if (sm->t & ScattF) { imax = IMaxTable[fabs(p->p[0]) > fabs(p->p[1])] [fabs(p->p[1]) > fabs(p->p[2])] [fabs(p->p[2]) > fabs(p->p[0])]; itmp = lrand48() / randdivF; iswp = SwapTableF[itmp / 8][imax]; } else if (sm->t & ScattG) { imax = IMaxTable[fabs(p->p[0]) > fabs(p->p[1])] [fabs(p->p[1]) > fabs(p->p[2])] [fabs(p->p[2]) > fabs(p->p[0])]; itmp = lrand48() / randdivG; iswp = SwapTableG[itmp / 8][imax]; if (p->p[imax]>0) { if(itmp % 2 == 0) itmp ^= 1; } else { if(itmp % 2 == 1) itmp ^= 1; } } else if (sm->t & ScattAcoustic ) { imax = IMaxTable[fabs(p->p[0]) > fabs(p->p[1])] [fabs(p->p[1]) > fabs(p->p[2])] [fabs(p->p[2]) > fabs(p->p[0])]; 39 itmp = lrand48() / randdivG; iswp = SwapTableG[itmp / 8][imax]; if (p->p[imax] >0 ) { if (itmp % 2 == 1) itmp ^=1; } else { if (itmp % 2 == 0 ) itmp ^=1; } } else { itmp = lrand48() / randdiv; iswp = SwapTable[itmp / 8]; } p->p[iswp[0]] = itmp % 2 ? -px[0] : px[0]; itmp /= 2; p->p[iswp[1]] = itmp % 2 ? -px[1] : px[1]; itmp /= 2; p->p[iswp[2]] = itmp % 2 ? -px[2] : px[2]; ek = KineticEnergy(p->p, p->sbi, bs); de = ek - (p->ek + sm->e); p->ek = ek; Si calcola imax, che rappresenta l’indice della componente più grande dello stato k~i prima dello scattering e si ottiene dalle diseguaglianze che legano tra loro le componenti di k~i . Tali diseguaglianze sono riprodotte in tabella 3.3. imax permette di determinare la valle in cui la imax = −1 imax = 0 imax = 1 imax = 2 impossibile |Px | > |Pz | > |Py | oppure |Px | > |Py | > |Pz | |Py | > |Px | > |Pz | oppure |Py | > |Pz | > |Px | |Pz | > |Px | > |Py | oppure |Pz | > |Py | > |Px | Tabella 3.3: ImaxTable: tabella delle disuguaglianze delle componenti del vettore d’onda particella risiede prima di subire l’evento d’urto. iswp è un vettore formato da tre componenti ed è selezionato dalle tabelle SwapTableF e SwapTableG (tab.3.4, tab.3.5) per mezzo di imax e di itmp. itmp assume un valore random appartenente ad un insieme numerico la cui dimensione dipende del tipo di meccanismo di scattering: per il meccanismo di tipo G itmp assume valore tra 0 e 16, per il meccanismo di tipo F assume valore tra 0 e 32, mentre per un meccanismo generico assume valore tra 0 e 48. I valori possibili di itmp sono ottenuti dalla simmetria della struttura: una valle è formata da 8 simmetrie, cosı̀ per un vettore d’onda appartenente al volume irriducibile (IW) della cella di Wigner-Seitz, si ottengono tutti gli altri vettori data la simmetria della struttura. Risulta comprensibile che per un meccanismo di scattering generico la possibile valle di arrivo può essere una qualsiasi delle 6 valli e quindi per le simmetrie può appartenere a un qualsiasi spicchio dei 48 che compongono il reticolo reciproco del silicio. 40 Le Tabelle SwapTableF e SwapTableG sono state corrette perchè quelle precedentemente itmp=0 itmp/8=1 itmp/8=2 itmp/8=3 imax=0 {1,0,2} {1,2,0} {2,0,1} {2,1,0} imax=1 {0,1,2} {2,0,1} {0,2,1} {2,1,0} imax=2 {0,1,2} {1,2,0} {0,2,1} {1,0,2} Tabella 3.4: Tabella SwapTableF corretta itmp/8=0 itmp/8=1 imax=0 {0,1,2} {0,2,1} imax=1 {1,0,2} {1,2,0} imax=2 {2,0,1} {2,1,0} Tabella 3.5: Tabella SwapTableG corretta implementate in Bandit presentavano dei casi per cui la particella continuava a rimanere nella stessa valle sia prima che dopo l’evento di scattering trasformando il meccanismo intervalle in uno intravalle. Per esempio prima di correggere il codice di Bandit, si potevano verificare le scelte dello stato dopo lo scattering riportate in tabella 3.6. Maccanismo F Stato prima dello scattering |Pz | > |Py | > |Px | Stato dopo lo scattering |Pz | > |Py | > |Px | Maccanismo G Stato prima dello scattering |Pz | > |Px | > |Py | Stato dopo lo scattering |Px | > |Py | > |Pz | imax = 2 p[x] = −0.0375 itmp = 3 p[y] = 0.04997 iswp = [2, 1, 0] p[z] = −0.92503 p[x] = −0.0375 errore imax = 2 p[x] = −0.03725 p[y] = 0.04997 intravalle itmp = 4 p[y] = −0.01244 p[z] = −0.92503 p[x] = −0.9250 errore p[y] = 0.0249 intervalle iswp = [0, 1, 2] p[z] = −0.096255 p[z] = −0.01249 Tabella 3.6: Errori della scelta dello stato dopo lo scattering nel codice di Bandit prima delle modifiche implementate in questa tesi Lo stato finale dopo lo scattering lo si ottiene con il seguente codice: p->p[iswp[0]] = itmp % 2 ? -px[0] : px[0]; itmp /= 2; p->p[iswp[1]] = itmp % 2 ? -px[1] : px[1]; itmp /= 2; p->p[iswp[2]] = itmp % 2 ? -px[2] : px[2]; Tale codice assegna lo stato finale della particella partendo da quello dopo l’evento d’urto, calcolato nel volume irriducibile, mediante iswp che determina la valle d’arrivo in accordo con le regole proprie di ogni meccanismo di scattering: se il meccanismo è di tipo G si ottiene che la valle di arrivo è esattamente l’opposta di quella di partenza, viceversa se il meccanismo è di 41 tipo acustico la valle di arrivo è esattamente quella di partenza. itmp, attraverso l’operazione di modulo, determina i segni delle componenti del vettore d’onda dello stato finale dopo lo scattering: si associa il segno negativo se il resto è diverso da zero; viceversa si associa il segno positivo se il resto è nullo. Come già discusso precedentemente, itmp assume valori dipendenti dal tipo di meccanismo di scattering. L’insieme minimo di itmp si ha per lo scattering di tipo G ed Acustico itmp=[0÷16]. Prendendo come esempio itmp=18 il significato binario è quello riportato in figura 3.8: 0 0 1 0 1 0 Acesso alla Tabella SwapTable Selezione del Segno Figura 3.8: Significato dei bit di itmp I 3 bit meno significativi vengono impiegati per determinare il segno dello stato finale dopo lo scattering, mentre i bit più significativi [2 o 3] vengono usati per estrarre iswp dalle tabelle quando il meccanismo e di tipo F, G o Acustico. Avvalendosi sempre dell’esempio precedente l’assegnazione del segno è cosı̀ realizzata: itmp=0 (bit meno significativo) p->p[iswp[0]] = -px[0]; itmp /= 2 = 1; p->p[iswp[1]] = +px[1]; itmp /= 2 = 0; p->p[iswp[2]] = -px[2]; 3.5 3.5.1 Simulazioni delle Caratteristiche Velocità-Campo Introduzione Le simulazioni vengono condotte sulla barretta di silicio in figura 3.9 soddisfacente alle seguenti proprietà : • dimensioni fisiche della barretta 1µm · 1µm; • drogaggio uniforme con atomi di fosforo P atti ad aumentare la concentrazione degli elettroni a temperatura ambiente; • Presenza di due contatti come in figura 3.9 ai quali si applica una differenza di potenziale U che determina un campo elettrico Fx uniforme poichè la barretta è uniformemente drogata . 42 electron velocity along x Fx U Uniform Electric Field Fx Uniform Dopin=n+ Figura 3.9: Barretta di Silicio uniformemente Drogata In condizioni di campo elettrico Fx uniforme la relazione che lega il campo elettrico al potenziale elettrico U è la seguente: U (3.28) Fx = − ∆x Siccome lungo x la dimensione fisica della barretta è di 1µm, per avere un campo elettrico F x di −1kV /cm bisogna applicare una differenza di potenziale U tra i contatti di 100mV . Questa barretta di silicio permette di studiare la velocità v x degli elettroni in funzione del campo elettrico Fx applicato e quindi di derivare la rispettiva curva di velocità e di mobilità. 3.5.2 I Potenziali di Deformazione Nel lavoro di Jacoboni-Reggiani[9] viene tabulato un set dei potenziali di deformazione per i fononi ottici ed acustici. Per il silicio tale set è formato da: • un potenziale di deformazione acustico; • tre potenziali di deformazione ottici per gli scattering di tipo F; • tre potenziali di deformazione ottici per gli scattering di tipo G. Nella seguente tabelle tab.3.7, sono confrontati i valori dei potenziali di deformazione del set implementato nativamente in Bandit con il set proposto da Jacoboni e quello proposto da Bufler[19]. 43 Optical Phonons Energy [eV ] 0.062 0.018 0.012 Intervalley Type g g g eV ] DBandit [ cm 2.15e8 eV ] DJacoboni [ cm 11e8 0.8e8 0.5e8 eV ] DBuf ler [ cm 10.75e8 0.782e8 0.488e8 0.059 0.047 0.019 f f f 2.15e8 2.15e8 2.0e8 2.0e8 0.3e8 1.95e8 1.95e8 0.293e8 C2 Bandit 6.86 [eV ] C1 = C 2 Jacoboni 9.0 [eV ] 0.058 0.055 0.041 2.15e8 2.15e8 2.15e8 Acoustic Phonons Energy e1 [eV ] Energy e2 [eV ] 0.07 0.1 C1 Bandit 8.69 [eV ] C1 = C 2 Bufler 8.79 [eV ] Tabella 3.7: Confronto dei potenziali di deformazione dei fononi ottici ed acustici implementati in Bandit con quelli di Jacoboni e Bufler Le modifiche al codice di Bandit sono state apportate solamente alla versione sc, mentre bandit ox usa ancora il codice senza modifiche. Il potenziale di deformazione acustico usato √ in bandit ox è quello di Bandit tabulato in tabella 3.7 e diviso per 6 per considerare che lo scattering dovuto ai fononi acustici nel vecchio codice è intravalle. I fononi per i 3 set dei potenziali di deformazione sono cosı̀ utilizzati nel file di comando input.crl di Bandit. Per i fononi di Jacoboni: # Definizione dello scattering # Scattering da fononi acustici -sae 9.0,9.0,0.07,0.1 #Scattering da fononi ottici #tipo g -soe 0.062,11.0e8,g -soe 0.018,0.8e8,g -soe 0.012,0.5e8,g #tipo f -soe 0.059,2.0e8,f -soe 0.047,2.0e8,f -soe 0.019,0.3e8,f Per i fononi di Bandit: # Defininizione dello scattering #Scattering da fononi acustici -sae 8.69,6.86,0.07,0.1 #Scattering da fononi ottici #tipo g 44 -soe 0.062,2.15e8,g #tipo f -soe 0.047,2.15e8,f -soe 0.059,2.15e8,f #tipo ne f ne g -soe 0.058,2.15e8 -soe 0.055,2.15e8 -soe 0.041,2.15e8 Per i fononi di Bufler: # Defininizione dello scattering #Scattering da fononi acustici -sae 8.79,8.79,0.07,0.1 #Scattering da fononi ottici #tipo g -soe 0.062,10.75e8,g -soe 0.018,0.782e8,g -soe 0.012,0.488e8,g #tipo f -soe 0.059,1.95e8,f -soe 0.047,1.95e8,f -soe 0.019,0.293e8,f Si riporta un esempio di file di comando input.crl usato per la simulazione della barretta uniforme con Bandit: #Defininzione delle Bande -b si-allband,d -x 0.85,0,0,4,0.1,0.916,0.19,0.19,0.5 -y 1,1,0.1 -y 2,2,0.1 -y 3,3,0.1 # Defininizione dello scattering #elettroni #Scattering da fononi acustici -sae 8.79,8.79,0.07,0.1 #Scattering da fononi ottici #tipo g -soe 0.062,10.75e8,g -soe 0.018,0.782e8,g -soe 0.012,0.488e8,g #tipo f -soe 0.059,1.95e8,f -soe 0.047,1.95e8,f -soe 0.019,0.293e8,f #Scattering da Generazione da Impatto -ii iirates.table,secdis # Informazioni da stampare e settaggio della simulazione 45 # Massima energia delle particelle -e 5 #Informazioni da stampare a video -vimdf # Definizione del Transitorio -ts 1e-15 -tt 10e-12 # multiplication stuff -mse n -mee 0.0,0.0,1.0,1.0,n,1 -nm 10 #Numero di particelle primarie -np 50000 #Numero particelle secondarie -n2 200 #Numero di Step di simulazione -ns 30000 #Step di stampa dei risultati -nt 20 3.5.3 Confronto degli Scattering rate In questo paragrafo si affronta l’analisi dello scattering rate totale e parziale ottenuto per i diversi set dei potenziali di deformazione con Bandit in cui sono state implementate le modifiche al codice discusse nalla precedente sezione 3.3: • Determinazione della Dos con il modello analitica per energie inferiori a BMEmax (definita dall’utente di Bandit con il comando -x); • Determinazione dello stato dopo lo scattering analiticamente; • Correzione della rotazione dello stato dopo lo scattering per i fononi ottici di tipo G e F; • Introduzione delle regole di selezione della valle d’arrivo per lo scattering da fononi acustici; Con il seguente comando di Bandit si stampano nel file out.dat i valori dello scattering rate in funzione dell’energia degli elettroni ricordando che nel file di comando input.crl sono definiti i vari meccanismi di scattering che concorrono nella simulazione, mentre il file uni.bnm, ottenuto da inbandit sc, contiene le informazioni fisiche del dispositivo da simulare quali: la dimensione, i punti di griglia, il doping, il campo elettrico , etc. bandit_sc -f input.crl -m uni.bnm -vs -c -e6 > out.dat dove −vs impone di stampare lo scattering rate, −e6 impone di stampare lo scattering rate fino all’energia dell’elettrone di 6 eV . Dalla stampa dello scattering rate si possono estrarre diverse informazioni necessarie per la comprensione del comportamento della velocità degli elettroni in funzione del campo elettrico applicato: 46 • a basso campo elettrico, quindi per basse energie dell’elettrone, dallo studio dello scattering rate si può comprendere le differenze di velocità ottenute implementando i vari set dei potenziali di deformazione considerati precedentemente. Il campo elettrico F x impone all’elettrone di accelerare e quindi di accrescere la sua energia. Lo scattering determina l’interruzione del volo libero della particella e quindi del trasferimento di energia: se il meccanismo di scattering è elastico tale energia si conserva altrimenti verrà decrementata di una quantità propria per ogni meccanismo di urto; • ad alto campo elettrico l’analisi del profilo di velocità viene spiegato sempre dallo studio dello scattering rate. In questa regione di campo bisogna tenere in considerazione che i meccanismi di scattering concorrenti sono dovuti ai fononi e alla generazione da impatto. Ogni aumento dell’energia delle particelle determinato dall’aumento dall’intensità del campo elettrico Fx è compensato dello scattering rate e quindi mediamente le particelle presentano il medesimo valore di velocità media nonostante l’incremento del campo elettrico. Nelle figure 3.10, 3.11 e 3.12 sono confrontati gli scattering rate complessivi ottenuti implementando i fononi di Jacoboni, di Bufler e di Bandit nel codice corretto e lo scattering rate ottenuto dal vecchio codice di Bandit. In figura 3.10 vengono plottati i Total Scattering Rete τ ottenuti implementando i vari set dei potenziali di deformazione tabulati nella tabella 3.7 ed implementati nel codice corretto di Bandit per essere confrontati con lo scattering rate totale ottenuto con il vecchio codice di Bandit. Si può quindi osservare che: • I Total Scattering rate ottenuti implementando i fononi di Bandit nel codice corretto e nel vecchio codice sono identici poichè i potenziali di deformazione sono i medesimi; • Il Total Scattering rate ottenuto con il set di Jacoboni è più elevato di quello di Bandit, quindi potenzialmente determina una riduzione del tempo di volo libero maggiore rispetto a quella ottenuta con i fononi di Bandit; • Lo scattering rate totale ottenuto con il set di Bufler si posiziona tra quello di Bandit e quello di Jacoboni. In figura 3.11 vengono ancora plottati i Total Scattering Rates da fononi, ma il range energetico è limitato tra 0 ÷ 100meV . È importante studiare lo scattering rete τ in questa regione energetica poichè gli elettroni che hanno un’energia minore o uguale a 100meV appartengono al fondo della banda di conduzione e quindi per modelizzare la realtà e per incrementare la precisione del calcolo della Densità degli stati è stato implementato nel codice di Bandit sc il calcolo analitico della Dos. Ad esempio anche nella funzione KineticEnergyIrreducibleWedge, preposta al calcolo dell’energia cinetica della particella, è implementato il calcolo analitico dell’energia cinetica dell’elettrone se questa è minore di BMEmax, cioè è minore della massima energia dove vale il calcolo energetico analitico per la i-esima sottobanda. Viceversa se l’energia dell’elettrone calcolata per via analitica è maggiore, si procede calcolandola mediante il modello Full-Band. In figura si osserva quanto segue: • Per energie minori di 80meV il Total Scattering Rate ottenuto con i fononi di Bandit è maggiore rispetto a quello ottenuto con i fononi di Jacoboni e di Bufler. 47 Total Scattering rate τ[1/s] 3e+14 2e+14 1e+14 Fononi di Bandit codice corretto Fononi di Jacoboni Fononi tesi di dottorato di Bufler Fononi Bandit codice vecchio 0 0 2 4 Electron Energy [eV] 6 Figura 3.10: Confronto dello Scattering rate fononico Totale nell’intervallo 0 ÷ 6eV • Per energie superiori a 80meV il Total Scattering rate dominante è quello di Jacoboni. Il motivo di questa diminuzione dello scattering rete di Bandit è determinato dalla funzione lineare del potenziale di deformazione acustico D A in funzione dell’energia della particella mostrata in figura 3.3 e tabulata nella tabella 3.7. Tale funzione è invece indipendente dall’energia degli elettroni per i potenziali di deformazione acustici di Bufler e di Jacoboni. In figura 3.13 è plottato il set dei potenziali di deformazione dei fononi di Jacoboni nell’intervallo energetico 0 ÷ 6eV . 48 1.5e+13 Total Scattering rate τ[1/s] Fononi Bandit codice corretto Fononi di Jacoboni Fononi Tesi di dottorato di Bufler Fononi Bandit codice vecchio 1e+13 5e+12 0 0e+00 2e−02 4e−02 6e−02 Electron Energy[eV] 8e−02 1e−01 Figura 3.11: Confronto dello Scattering rate fononico Totale nell’intervallo 0 ÷ 100meV 1.6e+12 Total Scattering rate τ[1/s] 1.4e+12 1.2e+12 1e+12 8e+11 6e+11 0e+00 Fononi di Bandit codice corretto Fononi di Jacoboni Fononi tesi di dottorato di Bufler Fononi Bandit codice vecchio 1e−03 2e−03 3e−03 4e−03 Electron Energy[eV] Figura 3.12: Ingrandimento dello Scattering rete Totale nell’intervallo 0 ÷ 4meV In figura 3.14 è plottato il set dei potenziali di deformazione dei fononi di Jacoboni nell’intervallo energetico 0 ÷ 100meV . 49 fononi ottici f [0.019,0.3e08] fononi ottici f [0.047,2.0e08] fononi ottici f [0.059,2.0e08] fononi ottici g [0.012,05e08] fononi ottici g [0.018,0.8e08] fononi ottici g [0.062,11e08] fononi acustici 9.0 [eV] Scattering rate [1/s] 1.5e+14 1e+14 5e+13 0 0 2 4 Electron Energy [eV] 6 Figura 3.13: Scattering rate dei fononi di Jacoboni nell’intervallo 0 ÷ 6eV 5e+12 fononi ottici f [0.019,0.3e08] fononi ottici f [0.047,2.0e08] fononi ottici f [0.059,2.0e08] fononi ottici g [0.012,0.5e08] fononi ottici g [0.018,0.8e08] fononi ottici g [0.062,11e8] fononi acustici 9.0 [eV] Scattering rate [1/s] 4e+12 3e+12 2e+12 1e+12 0 0 0.02 0.04 0.06 Electron Energy [eV] 0.08 0.1 Figura 3.14: Scattering rate dei fononi di Jacoboni nell’intervallo 0 ÷ 100meV 3.5.4 Velocità di Saturazione in funzione della Temperatura Reticolare I fononi ottici giocano un ruolo importante nel comprendere la saturazione della velocità degli elettroni. L’energia di un di fonone ottico è dell’ordine, per il silico, di 63meV (vedi tab.3.7) 50 quindi a temperatura ambiente un elettrone non è mediamente in grado di emettere fononi ottici, ossia di cedere energia e quantità di moto al reticolo mediante questo particolare meccanismo. Al crescere dell’energia media e della temperatura dei portatori l’emissione di fononi ottici diviene possibile. L’emissione di fononi ottici è un meccanismo in grado di cedere quantità notevoli di energia al reticolo. Nei semiconduttori, per campi elettrici superiori ad un valore di soglia dell’ordine di qualche kV /cm, l’emissione di fononi ottici è in grado di cedere al reticolo tutta l’energia in più ceduta dal campo elettrico ai portatori stessi e conseguentemente la velocità di deriva non cresce proporzionalmente con il campo, ma tende a saturare ad un valore v sat dell’ordine di 1 · 107 [cm/s]. La dipendenza della velocità di saturazione v sat con la temperatura reticolare TL può essere espressa mediante la seguente espressione[10]: vsat = 2.4 · 107 1 + 0.8 · eTL /600 [cm/s] (3.29) In figura 3.15 è stata riprodotta la dipendenza dalla velocità di saturazione dalla temperatura 1.4e+07 espressione teorica Jacoboni Bandit: Fx=200[kV/cm] fononi di Bandit 1.3e+07 vsat[cm/s] 1.2e+07 1.1e+07 1.0e+07 9.0e+06 8.0e+06 0 100 200 300 400 Temperatura reticolare TL[K] 500 600 Figura 3.15: Velocità di Saturazione degli elettroni v sat in funzione della temperatura reticolare TL reticolare TL risultante dalle simulazioni e dalla equazione 3.29. 51 3.5.5 Velocità e Mobilità elettronica La curva di mobilità µx , ottenuta dalle misure sperimentali, può essere approssimata per il silicio con la seguente espressione[11]: µx = µ0e (3.30) 1 x β β [1 + ( FFcr ) ] dove Fcr è il campo critico, µ0e è il valore di mobilità per Fx → 0, mentre β rappresenta la forma della regione di mobilità . Il campo elettrico critico F cr e β sono ottenuti dalle seguenti espressioni: β = 2.57 · 10−2 · TL0.66 (3.31) Fcr = 1.01 · TL1.55 (3.32) Si può osservare che sia β che Fcr dipendono dalla temperatura del reticolo TL e quindi mediante queste relazioni si possono tracciare i profili di mobilità µ x in funzione delle temperatura reticolare TL e del campo elettrico Fx . In figura 3.16 è riprodotto l’andamento delle curve di mobilità elettronica µ x e di velocità elettronica vx che approssimano i dati sperimentali. In figura 3.17 è stampato il confronto delle 8e+06 1500 2 electron mobility µx[cm /(Vs)] electron velocity vx[cm/s] 6e+06 4e+06 2e+06 1000 500 TL=300[K] Fononi di Jacoboni Fononi di Bandit codice corretto TL=300[K] Fononi di Jacoboni Fononi di Bandit codice corretto 0 0 5000 10000 15000 Electric Field Fx[V/cm] 20000 0 0 5000 10000 15000 Electric Field Fx[V/cm] 20000 Figura 3.16: Curve di Mobilità elettronica e di velocità elettronica che approssimano i dati sperimentali[11] velocità elettroniche ottenute delle simulazioni dal codice corretto di Bandit, quelle ottenute dal codice vecchio e confrontate con la curva di velocità ottenuta dal modello di Caughey-Thomas che implementa il solo scattering da fononi. Nella tabella 3.8 sono tabulati per un campo elettrico F x di 500 V /cm i risultati ottenuti dalle simulazioni con Bandit delle velocità elettroniche v x della barretta uniformemente drogata e confrontati con il valore ottenuto con il modello di Caughey-Thomas. In tabella 3.9 sono riportati i valori di velocità degli elettroni ottenuti per un campo elettrico Fx di 20 kV /cm, mentre la figura 3.18 rappresenta le curve di velocità fino a 20 kV /cm. 52 1.1e+06 electron velocity vx[cm/s] 1e+06 Caughey−Thomas model fononi Jacoboni Full−Band fononi bandit codice corretto Full−Band fononi tesi di dottorando Buffer Full−Band fononi bandit codice vecchio Full−Band fononi Jacoboni Dos analitica 9e+05 8e+05 7e+05 6e+05 460 480 500 Electric Field Fx[V/cm] 520 540 Figura 3.17: Curva di Velocità degli elettroni nella Barretta Uniforme ottenuta dalle simulazioni Campo elettrico Fx = 500[V /cm] Tipo Simulazione Velocità Vx [cm/s] risp.to Caughey-Thomas [%] Bandit old code Bandit new code Fononi di Jacoboni Fononi Tesi Dr. Bufler 946270 798347 851322 849938 Caughey-Thomas 667625 41.737 19.580 27.515 27.308 Tabella 3.8: Confronto delle velocità elettroniche ottenute dalle simulazioni per un campo elettrico di 500 V /cm Nelle figure 3.19 e 3.20 sono riprodotte le curve di mobilità µ x elettronica in funzione del campo elettrico Fx applicato alla barretta di silicio uniformemente drogata. 53 Campo elettrico Fx = 20[kV /cm] Tipo Simulazione Velocità Vx [cm/s] risp.to Caughey-Thomas [%] 8.40 · 10+6 7.99 · 10+6 7.64 · 10+6 7.72 · 10+6 Bandit old code Bandit new code Fononi di Jacoboni Fononi Tesi Dr. Bufler +2.101 -2.954 -7.214 -6.272 8.23 · 10+6 Caughey-Thomas Tabella 3.9: Confronto delle velocità degli elettroni, dovute ai soli fononi, ottenute dalle simulazioni di Bandit con i potenziali di deformazione di Bandit, Jacoboni e Bufler (F x = 20[kV /cm]) electron velocity vx[cm/s] 8e+06 6e+06 4e+06 Caughey−Thomas model fononi Jacoboni Full−Band fononi bandit codice corretto Full−Band fononi tesi di dottorando Buffer Full−Band fononi bandit codice vecchio Full−Band fononi Jacoboni Dos analitica fononi Bandit Dos Analitica 2e+06 0 0 5000 10000 15000 Electric Field Fx[V/cm] 20000 Figura 3.18: Confronto delle velocità degli elettroni, dovute ai soli fononi, ottenute dalle simulazioni di Bandit con i potenziali di deformazione di Bandit, Jacoboni e Bufler (F x = 20[kV /cm]) Dall’analisi dei risultati ottenuti dalle simulazioni di Bandit, della velocità degli elettroni e quindi della mobilità dei soli fononi, si può concludere che la velocità degli elettroni è uguale per i 3 set dei potenziali di deformazione, quindi le mobilità degli elettroni di Bandit, Jacoboni e Bufler sono grossomodo uguali. 54 1500 2 electron mobility µx[cm /(Vs)] 2000 1000 Caughey−Thomas model fononi bandit codice corretto Full−Band fononi bandit codice vecchio Full−Band fononi Jacoboni Full−Band fononi tesi di dottorando Buffer Full−Band fononi Jacoboni Dos analitica 500 0 0 5000 10000 electric field Fx[V/cm] 15000 20000 Figura 3.19: Confronto delle Mobilità elettroniche ottenute dalle simulazioni di Bandit implementando i potenziali di deformazione di Bandit, Jacoboni e Bufler fino a 20[kV /cm] 2000 2 electron mobility µx[cm /(Vs)] 1800 1600 1400 1200 1000 −1000 Caughey−Thomas model fononi bandit codice corretto Full−Band fononi bandit codice vecchio Full−Band fononi Jacoboni Full−Band fononi tesi di dottorando Buffer Full−Band fononi Jacoboni Dos analitica 0 1000 electric field Fx[V/cm] 2000 3000 Figura 3.20: Confronto delle Mobilità elettroniche ottenute dalle simulazioni di Bandit implementando i potenziali di deformazione di Bandit, Jacoboni e Bufler a basso campo 55 3.5.6 Distribuzione energetica degli elettroni La funzione di distribuzione energetica descrive come i portatori mediamente si distribuiscono in funzione del momento o della propria energia e può essere usata per ottenere diverse quantità d’interesse o per descrivere il comportamento della popolazione dei portatori. La distribuzione degli elettroni caldi è indispensabile per l’analisi e la progettazione dei dispositivi attraverso il simulatore Monte Carlo. Infatti, ad esempio, dalla distribuzione degli elettroni caldi si ricava la corrente di sub-strato del Mosfet. Le Isub e le correnti iniettate nell’ossido sono un ottimo indicatore dell’affidabilità del dispositivo[30]. La I sub può essere stimata attraverso la seguente relazione[30]: Z Z ∞ Isub = q f (, x)SII ()ddx (3.33) 0 dove x è la coordinata nel canale, f è la funzione di distribuzione degli elettroni e S II è lo scattering rate dovuto alla ionizzazione da impatto. Gli elettroni caldi hanno fisicamente un’alta energia cinetica è quindi possono essere iniettati nello strato d’ossido di gate di un Mosfet daneggiandolo e determinando la riduzione d’affidabilità di tale dispositivo. Si vuole confrontare le distribuzioni degli elettroni caldi ottenuti dalle simulazioni di Bandit dei potenziali di deformazione di Jacoboni e Bufler con la distribuzione che usa i potenziali di deformazione di Bandit che sono tarati affichè le distribuzioni degli elettroni caldi siano conformi con i dati sperimentali. Nella figura fig.3.21 sono riprodotti gli andamenti della funzione di distribuzione degli elettroni in funzione della temperatura reticolare TL ottenuti dalle simulazioni. −2 10 Bandit: Fx=100 [kV/cm] TL=100 [K] Bandit: Fx=100 [kV/cm] TL=200 [K] Bandit: Fx=100 [kV/cm] TL=300 [K] −3 Distribution Function f0(r,p) 10 −4 10 −5 10 −6 10 −7 10 −8 10 0 1 2 3 Electron Energy [eV] 4 5 Figura 3.21: Funzioni di Distribuzione degli elettroni in funzione di T L ottenute con le simulazioni di Bandit 56 Per ottenere le funzioni di distribuzione in funzione dell’energia degli elettroni dalle simulazioni di Bandit bisogna: 1. eseguire la simulazione di Bandit ottenendo a fine elaborazione il file di dati output.dat dal file di mesh uni.bnm; 2. Utilizzare il programma outbandit sc per estrarre dal file output.dat la distribuzione degli elettroni con il seguente comando: outbandit_sc -g uni.bnm -s output.dat -a1 > distribuzione.dat dove i flag indicano: -g: imposta il file di mesh; -s: imposta il file di dati; -a1: impone la stampa della funzione di distribuzione In figura 3.22 è plottata la distribuzione degli elettroni per un campo elettrico di 100[kV /cm]. Come si può osservare, anche per le altre distribuzioni, la distribuzione degli elettroni in funzione dell’energia che utilizza i fononi di Bandit nel codice corretto è identica a quella del codice senza le modifiche. Le distribuzioni degli elettroni di Bufler e di Jacoboni sono pressochè identiche, ma si discosta−2 10 fononi Bandit codice corretto fononi Jacoboni fononi Bandit codice vecchio fononi tesi di Dottorato Bufler −3 Distribution Function f(Ee) 10 −4 10 −5 10 −6 10 −7 10 −8 10 0 0.5 1 Electron energy Ee[eV] 1.5 2 Figura 3.22: Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 100[kV /cm] no da quelle ottenute con i fononi di Bandit. Tale discostamento è ben evidenziato anche nelle distribuzioni ottenute aumentando il campo elettrico F x con l’unica differenza, che fissato un comune riferimento dalla probabilità di occupazione, l’aumento del campo elettrico determina 57 che gli elettroni si distribuiscono per energie cinetiche superiori. Fissato un comune rifermiento per le energie degli elettroni, si osserva che le distribuzioni degli elettroni di Jacoboni-Bufler determinano una sottostima della probabilità di occupazione rispetto a quella di Bandit. In figura 3.23 è riportato il confronto delle funzioni di distribuzioni degli elettroni per un campo elettrico di 200[kV /cm]. In figura 3.24 e 3.25 sono riportate le funzioni di distribuzione degli elettroni per un campo −3 Distribution Function f(Ee) 10 fononi Bandit codice corretto fononi Jacoboni fononi Bandit codice vecchio fononi tesi di Dottorato Bufler −4 10 −5 10 −6 10 −7 10 −8 10 0 1 2 Electron energy Ee[eV] 3 Figura 3.23: Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 200[kV /cm] elettrico di 300[kV /cm] e 500[kV /cm]. 58 −3 10 fononi Bandit codice corretto fononi Jacoboni fononi Bandit codice vecchio fononi tesi di Dottorato Bufler Distribution Function f(Ee) −4 10 −5 10 −6 10 −7 10 −8 10 0 1 2 3 Electron energy Ee[eV] 4 Figura 3.24: Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 300[kV /cm] −3 fononi Bandit codice corretto fononi Jacoboni fononi Bandit codice vecchio fononi tesi di Dottorato Bufler Distribution Function f(Ee) 10 −4 10 −5 10 −6 10 −7 10 −8 10 0 1 2 3 4 Electron energy Ee[eV] 5 6 Figura 3.25: Confronto delle Funzioni di Distribuzione degli elettroni per i potenziali di deformazione di Bandit, Bufler e Jacoboni per un campo elettrico di F x = 500[kV /cm] 59 3.5.7 Coefficienti da Generazione da Impatto La ionizzazione da impatto (II) è un processo di generazione di coppie elettrone-lacuna dovuto ai portatori caldi. Con riferimento alla figura 3.26, se un elettrone della banda di conduzione (CB) acquista, per effetto del campo elettrico F , un’energia superiore all’energia del gap G , può interagire con un elettrone della banda di valenza (VB) promuovendolo in banda di conduzione. L’effetto complessivo di tale processo è che si hanno due elettroni in banda di conduzione e una lacuna in banda di valenza disponibili per la conduzione. L’interazione può avvenire in modo diretto o può essere mediata da fononi. In ogni caso questo processo di generazione deve conservare il momento e l’energia totale del sistema di particelle coinvolte. Il processo può essere descritto tramite la funzione S II (k~i , k~f , k~1 , k~2 ) chiamata scattering rate che rappresenta il numero di eventi da ionizzazione da impatto per unità di tempo di un elettrone nello stato k~i . Integrando sugli stati iniziali dell’energia , si ottiene l’espressione dello scattering rete2 SII () in funzione dell’energia e quindi si può determinare il numero di coppie elettrone-lacuna generate GII per unità di tempo e di volume. GII (~r) = Z ∞ SII ()f (~r, )gc ()d (3.34) G L’equazione 3.34 è una funzione dipendente dallo scattering rate S II (), dalla funzione di distribuzione f (~r, ), dalla densità degli stati gc () e tutto dipende dall’energia cinetica dei portatori. Il numero di coppie e-h può quindi essere espresso attraverso il coefficiente di ionizzazione α: − − CB CB VB VB − − + a) b) Figura 3.26: Processo di Generazione coppie e-h dovuto alla ionizzazione da impatto GII (~r) = nα|v~n | = α J~n q (3.35) Tale espressione dipende dalla concentrazione degli elettroni n, dalla velocità degli stessi e da α. Si può anche esprimere α in tutta generalità partendo dalla conoscenza della funzione di distribuzione f (~r, ~k): R SII (~k)f (~r, ~k)d~k α(~r) = R (3.36) f (~r, ~k)vg (~k)d~k 2 L’approccio è valido solo se si può conoscere l’energia delle singole particelle e quindi attraverso la tecnica di simulazione Monte Carlo che simula il moto delle singole particelle 60 1.5e+14 Scattering rate SII(ε)[1/s] Bendit model 1e+14 5e+13 0 0 2 4 6 Electron Energy ε[eV] Figura 3.27: Scattering rate da ionizzazione da impatto ottenuto dalle simulazioni di Bandit α è in generale una proprietà non locale, quindi la II dipende dalla storia passata dei portatori. Si studia α utilizzando una barretta di silicio uniformemente drogata a cui è applicato un campo elettrico Fx costante tale che α diventi una proprietà locale. Il modello, che si trova in letteratura, per esprimere le misure di α in funzione del campo elettrico F è il modello di Chinoweth: α = an e−bn /F (3.37) dove log(α) è una funzione lineare dell’inverso del campo elettrico F . Grant Maes Van Overstraeten an [cm−1 ] 2.6 · 106 6.2 · 105 5 · 105 3.318 · 105 7.03 · 105 bn [V /cm] 1.43 · 106 1.08 · 106 0.99 · 106 1.174 · 106 1.231 · 106 F [V /cm] 2 · 10 < F < 2.4 · 105 2.4 · 105 < F < 5.3 · 105 5.3 · 105 < F < 7.7 · 105 8 · 104 < F < 1.5 · 105 1.75 · 105 < F < 6 · 105 5 Tabella 3.10: Valori dei parametri del modello di Chinoweth presenti in letteratura In tabella 3.10 sono tabulati i parametri an e bn degli studi condotti sui coefficienti di ionizzazione da impatto presenti nella letteratura: • I risultati di Grant per l’impact ionization sono stati ottenuti dalle misure condotte utilizzando un diodo illuminato con luce di diversa lunghezza d’onda. I valori di α sono stati estratti con un algoritmo che ricavava il valore in funzione del campo elettrico F senza ipotizzare nessun andamento a priori; 61 • I risultati di Van Overstraeten e De Men sono stati ottenuti dalle misure seguendo lo stesso metodo sperimentale di Grant, ma utilizzando una procedura di estrazione diversa. L’andamento del campo elettrico è stato approsimato con un gradino anzichè con una funzione costante a tratti come utilizzato da Grant. Ciò permette di trovare le relazioni tra α e il campo elettrico senza ipotizzare alcun profilo a priori. • I risultati di Maes, De Meyer e Van Overstraeten sono ricavati partendo dalle misure condotte su un transistor bipolare con uno strato epitassiale molto lungo (8µm) in cui, in pratica, gli effetti non locali avevano poca influenza. L’estrazione dei valori di α è stata ottenuta ipotizzando la validità dell’equazione 3.37. In figura 3.28 sono riportati i coefficienti di ionizzazione α ottenuti dalle simulazioni di Bandit per i potenziali di deformazione di Jacoboni, Bufler e Bandit. Si può osservare che i coefficienti 5 10 4 −1 α(cm ) 10 3 10 2 10 1 10 0.0e+00 Slotboom bulk (1987) Slotboom surface (1987) Grant (1972) Maes,De Meyer, VanOverstraten (1990) VanOverstraeten,DeMan(1970) fononi Jacoboni fononi Bufler fononi Bandit codice corretto fononi Bandit vecchio codice 2.0e−06 4.0e−06 1/E(cm/V) 6.0e−06 Figura 3.28: Valori di α ottenuti con i potenziali di deformazione di Jacoboni, Bufler e Bandit dalle simulazioni Bandit di ionizzazione α ottenuti implementando in Bandit i fononi di Bandit sia nel codice corretto che in quello vecchio, sono identici e ricalcano l’andamento del modello di Van Overstraeten pochè Bandit è stato calibrato con questo modello. Gli α ottenuti con i potenziali di deformazione di Jacoboni e Bufler si discostano dai coefficienti di ionizzazione di Bandit. Risulta quindi che i fononi di Jacoboni e Bufler sono inaccurati per descrivere la ionizzazione da impatto e quindi le simulazioni dei dispositivi basati su tali set dei potenziali di deformazione, non descrivono correttamente la corrente di substrato. 62 Per far si che la distribuzione degli elettroni ottenuta con i fononi di Jacoboni ricalchi quella di Bandit e quindi sia concordante con i dati sperimentali, si deve prendere in considerazione il lavoro di Bude[29]. Bude assume quale set dei potenziali di deformazione quello di Jacoboni per basse energie e viene esteso in modo consistente con la struttura a bande per le alte energie. Bude ha trovato che gli scattering rate di Jacoboni devono essere moltiplicati per 0.85, quindi √ i potenziali di deformazione vengono moltiplicati per 0.85. In questo modo la distribuzione degli elettroni è uguale a quella di Bandit. Nelle figure 3.29 e 3.30 si riportano le distribuzioni degli elettroni di Bude. Come si vede le distribuzioni energetiche degli elettroni ottenute con i fononi di Jacoboni ai quali è stata applicata la correzione di Bude, sono identiche con quelle di Bandit. −2 10 fononi di Bandit fononi di Jacoboni fononi di Bude −3 Distribution Function f(Ee) 10 −4 10 −5 10 −6 10 −7 10 −8 10 0 1 2 3 Electron Energy [eV] 4 Figura 3.29: Distribuzione degli elettroni per un campo elettrico di F x = 200[kV /cm]: modifica di Bude dei fononi di Jacoboni 63 10 −2 fononi di Bandit fononi di Jacoboni fononi di Bude 10 10 10 10 −3 −4 −5 −6 0 1 2 3 4 5 Figura 3.30: Distribuzione degli elettroni per un campo elettrico di F x = 500[kV /cm]: modifica di Bude dei fononi di Jacoboni Eseguendo la correzione dei potenziali di deformazione di Jacoboni in accordo con la modifica di Bude, si correggono i coefficienti di ionizzazione α riportati in figura 3.31. 5 10 4 −1 α(cm ) 10 3 10 2 10 Slotboom bulk (1987) Slotboom surface (1987) Grant (1972) Maes,De Meyer, VanOverstraten (1990) VanOverstraeten,DeMan(1970) fononi Jacoboni fononi Bude fononi Bandit 1 10 0.0e+00 2.0e−06 4.0e−06 1/E(cm/V) 6.0e−06 Figura 3.31: Valori di α ottenuti dei potenziali di deformazione di Jacoboni, Bude e Bandit dalle simulazioni Bandit 64 Come si vede in figura 3.31 la correzione di Bude dei potenziali di deformazione dei fononi di Jacoboni determina che i coefficienti di ionizazione α coincidono con quelli di Bandit e quindi con i risultati sperimentali ottenuti da Van Overstraeten. Per contro, la mobilità degli elettroni, utilizzando questa modifica, è sbagliata. In figura 3.32 è plottata la mobilità degli elettroni. 2000 8e+06 electron mobility µx[cm /(Vs)] 2 electron velocity vx[cm/s] 1500 6e+06 4e+06 2e+06 1000 500 Caughey−Thomas model fononi Bude fononi Jacoboni fononi Bandit Caughey−Thomas model fononi Bude fononi Jacoboni fononi Bandit 0 0 5000 10000 15000 Electric Field Fx[V/cm] 20000 0 0 5000 10000 15000 Electric Field Fx[V/cm] 20000 Figura 3.32: Confronto delle curve della Mobilità elettronica di Bude e di Jacoboni 65 3.6 Conclusioni In questo capitolo si sono affrontati diversi argomenti che possono essere cosı̀ riassunti: • Si è corretto il codice di Bandit sc e più precisamente: Si è corretta la determinazione dello stato dopo lo scattering dovuto ai fononi ottici di tipo G e F. Si è corretto lo scattering rate per i fononi acustici considerando che è un meccanismo intravalle. Si è implementata la scelta dello stato dopo lo scattering per i fononi acustici. Si è sostituito il calcolo Full-Band della densità degli stati (Dos) con il calcolo analitico per energie degli elettroni inferiori a 100meV . • Dall’analisi dei risultati delle simulazioni di Bandit, ottenuti implementando i set dei potenziali di deformazione di Bandit, Bufler e Jacoboni, la mobilità degli elettroni è coincidente. • La funzione di distribuzione degli elettroni caldi ottenuta con i fononi di Bandit non coicide con le distribuzioni ottenute impiegando i fononi di Jacoboni e Bufler; queste sono inferiori e poichè la distribuzione di Bandit è calibrata con i dati sperimentali, i fononi di Bufler e Jacoboni determinano una sottostima della probabilità di occupazione degli stati. • I coefficienti di ionizzazione α per i fononi di Bandit sono uguali ai dati sperimentali di Van Overstraeten, mentre quelli di Bufler e Jacoboni si discostano. • Prendendo in considerazione il lavoro di Bude, si è verificato che i potenziali di deformazione di Jacoboni modificati, determinano che le distribuzioni dei portatori caldi coincidono con quelle di Bandit cosı̀ come avviene per i coefficienti di ionizzazione α. 66 Capitolo 4 Lo Scattering da Impurezze Ionizzate 4.1 Introduzione Quando si prende in esame il comportamento microscopico del trasporto nei dispositivi non si può non trattare il problema delle impurezze ionizzate: sono infatti intrinseche al dispositivo. Prendendo in considerazione il silicio drogato, ogni atomo impiantato rappresenta una impurezza ionizzata che determina l’instaurarsi di un campo elettrico locale il cui effetto macroscopico è quello di modificare la mobilità degli elettroni. In questo capitolo si analizza lo scattering da impurezze ionizzate nella formulazione di Brooks & Herring prendendo come punto di riferimento il lavoro di Chattopadhyay e Queisser [25] che è una raccolta dei principali risultati teorici per le impurezze. È fondamentale l’analisi della corrispondenza del codice per le impurezze del simulatore Monte Carlo Bandit con il modello teorico e la corrispondente correzione in modo che ciò che viene simulato numericamente corrisponda a quanto misurato nella pratica. Il codice precedentemente implementato in Bandit presentava diverse incongruenze: • L’espressione dello scattering rete implementata nel codice non coincideva con l’espressione teorica del modello di Brooks & Herring; • L’energia dell’elettrone prima e dopo lo scattering non si conservava. Il processo risultava inelastico per determinate energie dell’elettrone in disaccordo con quanto previsto dalla teoria; • Come dimostrato nel lavoro di Kosina[21], in presenza di semiconduttori degeneri, l’espressione della lunghezza di screening LD nella formulazione che assume una distribuzione di Maxwell-Boltzmann non è corretta, ma bisogna prendere in considerazione una distribuzione di Fermi-Dirac; • Nel lavoro di Fischetti[20] si dimostra che oltre allo scattering da fononi e da impurezze ionizzate esistono altri meccanismi di scattering quali lo scattering elettrone-plasma e lo scattering portatore-portatore che influenzano la mobilità degli elettroni. Per considerare la dipendenza della mobilità da questi ulteriori meccanismi, si è fatto uso di una funzione di correzione della mobilità dipendente dal doping affinchè questa sia il più possibile 67 coincidente con la curva di riferimento di Cauchey-Thomas, la cui espressione è riportata nel lavoro di Klaassen[23]. Lo scopo di questo lavoro è di ottenere il modello di mobilità per gli elettroni, considerando i potenziali di deformazione per i fononi di Jacoboni, che sia il più possibile coincidente al modello di Cauchey-Thomas perchè, mediante le simulazioni numeriche di Bandit, si può analizzare il comportamento dei dispositivi elettronici. Questo approccio risulta essere un valido strumento nell’analisi e progettazione dei nuovi dispositivi elettronici purchè i dati ottenuti dalle simulazioni siano consistenti con quelli ottenuti dalle misure condotte sui medesimi dispositivi. 4.2 4.2.1 Il Modello Fisico dello Scattering Espressione dello scattering rate I portatori vengono deflessi modificando la direzione del loro percorso quando incontrano il campo elettrico di un’impurezza ionizzata. Questo tipo di collisione in natura è elastica, quindi si ha la conservazione dell’energia prima e dopo l’urto e tale meccanismo da solo non è in grado di controllare il processo di trasporto in presenza di un campo elettrico esterno F x ; deve esserci anche un meccanismo inelastico che dissipi l’energia dei portatori quale ad esempio lo scattering fononico visto nel capitolo precedente. Fisicamente quello che si osserva è che se una carica è posta in un sistema induce un potenziale elettrico che determina il movimento delle altre cariche presenti nel sistema. Queste cariche si muovono per contrastare questo potenziale e il risultato netto di tale movimento è un potenziale elettrico che non è semplicemente quello Coulombiano dovuto alla sola carica iniziale. Il processo è autoconsistente. La modifica del Potenziale Coulombiano è chiamato effetto di schermo o di screening. Il punto iniziale della trattazione delle impurezze ionizzate è l’espressione del potenziale Coulombiano: q2 Us (r) = (4.1) 4π0 Si r dove q è la carica elettrica. Risolvendo l’equazione di Poisson (4.2) in coordinate sferiche ed assumendo che il semiconduttore sia non degenere, per cui si può esprimere la concentrazione n degli elettroni tramite l’equazione 4.3, si ottiene l’espressione del potenziale di perturbazione (Potenziale Coulombiano Schermato) equazione 4.4. q 1 d + 2 dU r = (n − ND ) (4.2) 2 r dr dr 0 Si n = Nc e(F −c0(r) )/kB T (4.3) 2 US (r) = q e−r/LD 4π0 Si r (4.4) dove LD è chiamata lunghezza di Debye o di screening ed è espressa mediante la relazione: s 0 Si k B T L (4.5) LD = q 2 n0 dove n0 è la concentrazione degli elettroni liberi. La lunghezza di screening LD è ottenuta assumendo che la distribuzione degli elettroni sia quella di equilibrio. 68 Una volta determinata l’espressione del potenziale di perturbazione per le impurezze ionizzate, si può procedere calcolando il matrix element: 1 q2 1 1 |Hk~i ,k~f | = | < k~i |US (r)|k~f > | = 2 Ω 0 Si βs 1 + k 2 /βs2 (4.6) 2 2 e k 2 = |k~f − k~i |. Il transition rate S(k~i , k~f ) è espresso mediante la relazione: dove βS2 ≡ 1 L2D q4 1 2π ND 1 2π δ(i − f ) |Hk~i ,k~f |2 δ(i − f ) = S(k~i , k~f ) = h̄ h̄ Ω (0 Si )2 βs4 (1 + k 2 /βs2 )2 (4.7) Lo scattering rate S()BH lo si ottiene integrando il transitio rate S(k~i , k~f ) su tutti i possibili stati finali k~f . Z Z q 4 ND 1 1 Ω BH ~ ~ ~ S(ki , kf )dkf = δ(i − f )dk~f (4.8) S() = 2 2 3 2 4 (2π) (2π) 0 Si h̄ βs (1 + k 2 /βs2 )2 φ K Kf θ Ki Figura 4.1: Legame dei vettori d’onda e gli angoli θ e φ Nell’equazione 4.9 k è relazionato a k~i , k~f mediante gli angoli θ e φ (fig.4.1). k 2 = ki 2 + kf 2 − 2ki kf cos(θ) (4.9) Esprimendo k~f in coordinate polari, lo scattering rate può essere riscritto nella forma: Z 1 1 q 4 ND 2 S()BH = 2 δ(i −f )kf sin(θ)dkf dθdφ (4.10) (2π)2 20 2Si h̄ βs4 kf ,θ,φ ki 2 +kf 2 −2ki kf cos(θ) 1+ β2 s L’integrale in dθ viene risolto effettuando un cambiamento di variabile e si ottiene il risultato espresso nell’equazione 4.11. Z π 1 2 (4.11) 2 sin(θ)dθ = 2 2 k (k −k )2 2 2 k k +k −2k k cos(θ) 0 1 + 2 βi2 + 2 βf2 + i β 4 f 1 + i f β2 i f s s s s L’integrale in dφ da come risultato un termine costante pari a 2π. Riassemblando i vari risultati si può riscrivere lo scattering rate S( i ) nell’espressione: Z ∞ q 4 ND 1 2 BH S(i ) = δ(i − f )dkf 2 2 2 4 k k i (2π)0 Si h̄ βs 0 1 + 2 2 + 2 f22 + (ki −k4 f )2 β β β s 69 s s (4.12) Dato che in banda sferica k~i = k~f essendo i = f , il risultato dell’integrale 4.12 nella formulazione di Brooks & Herring è il seguente: S(i )BH = 2π 2 ND q 4 1 1 gc (i ) 2 2 4 0 Si h βs 1 + 4 ki22 (4.13) βs dove √ √ √ 8π 2(m∗ )3/2 (1 + 2αi ) i 1 + αi (4.14) 3 h L’espressione dello scattering rate nella formulazione di Brooks & Herring è esattamente uguale a quella di Jacoboni[9] ed implementata nel codice di Bandit. gc (i ) = 4.2.2 Stato Dopo lo Scattering Lo studio dello stato dopo lo scattering viene affrontato prendendo in considerazione che per il silicio le valli a minor energia della banda di conduzione sono fortemente anisotrope, quindi bisogna utilizzare tutte le espressioni che tengono conto dell’anisotropia. Quando si tratta il problema del trasporto ad opera dei portatori nel silicio o in altri semiconduttori a gap indiretto, è utile applicare le trasformazioni di Herring & Vogt che permettono di trasformare le superfici equienergetiche elissoidali, nello spazio delle fasi ~k, in quelle sferiche nello spazio dei vettori d’onda trasformati ~k ∗ semplificando i calcoli e utilizzando le espressioni isotrope pur conservando l’anisotropia. Le trasformazioni di Herring e Vogt trasformano il vettore d’onda dello spazio delle fasi ~k nel vettore d’onda dello spazio delle fasi trasformate ~k ∗ mediante la seguente relazione matriciale: k~∗ = T̂ (m)~k (4.15) dove la matrice di passaggio è cosı̀ definita: q T̂ (m) = m∗ mt 0 q m∗ mt 0 0 0 0 0 q m∗ ml p dove m∗ = 3 m2t ml è la massa effettiva della densità degli stati, m t e ml sono le masse elettroniche effettive trasversa e longitudinale per le superfici equienergetiche elissoidali relazionate a m0 cosı̀ come si evince dalla seguente tabella: elettroni mt 0.19m0 ml 0.916m0 lacune mlight 0.16m0 mheavy 0.49m0 Tabella 4.1: Masse elettrone-lacune Di conseguenza l’espressione energetica trasformata risulta essere (k~∗ ) = h̄2 (m) ~ (m) ~ h̄2 (k ∗ )2 T̂ · k T̂ · k = 2m∗ 2m∗ (4.16) Per determinare lo stato dopo lo scattering nel caso isotropo si ricorre al uso di due angoli α e θ (fig.4.2). Il valore di θ viene determinato mediante la tecnica diretta partendo dall’integrale 70 z α ki kf θ x y Figura 4.2: Scattering da impurezze ionizzate: gli angoli α e θ per calcolare lo stato dopo lo scattering che compare nel calcolo dello scattering rate eq.4.8: Z π 0 1 1+ k2 2 βi2 (1 s − cos(θ)) sin(θ)dθ = Z 1+4 k2 i 2 βs 1 1 dx x2 (4.17) che permette di esprimere θ in funzione di un numero casuale r uniformemente distribuito tra [0 ÷ 1]. La tecnica diretta prevede che una generica funzione f (x) sia normalizzata a 1 nell’intervallo (a, b) cosı̀ che si può scrivere: Z xr r = F (xr ) = f (x)dx (4.18) a Tuttavia se la funzione f (x) non è normalizzata si può normalizzarla mediante l’espressione: R xr f (x)dx (4.19) r = Rab f (x)dx a Impostato il valore di r si sceglie xr in modo da verificare l’equazione 4.19. La probabilità P (x)dx che xr , scelto in questo modo, sia contenuto nell’intervallo dx centrato in x è uguale alla corrispondente variazione di F (dF ) se r ha una distribuzione uniforme. P (x)dx = dF = f (x)dx (4.20) L’angolo θ viene ricavato applicando il procedimento della tecnica diretta all’integrale 4.17. Definito γ = 1 + 2ki2 /βs2 (1 − cos(θ)) si esprime il legame con r mediante l’equazione 4.19. Rγ 1 1 − γ1 x2 dx (4.21) r = R 1+4k1 2 /β = 2 s 1 i 1 − 1+4k12 /β 2 2 dx x 1 i 1 4ki2 /βs2 = 1 − r{ } γ 1 + 4ki2 /βs2 γ= 1 + 4ki2 /βs2 1 + (1 − r)4ki2 /βs2 71 s (4.22) (4.23) Sostituendo ad γ l’espressione corrispondente nell’equazione precedente si ottiene l’espressione finale che lega θ a r. 2r cos(θ) = 1 − (4.24) k2 1 + (1 − r)4 βi2 s L’angolo α è scelto partendo sempre da un numero casuale uniformemente distribuito tra [0÷1], ma in modo da determinare una scelta uniforme di α tra 0 e 2π. α = 2πr 4.2.3 (4.25) Lunghezza di Screening nella distribuzione di Fermi-Dirac L’equazione 4.5 esprime la lunghezza di screening L D assumendo che la funzione di distribuzione sia quella di equilibrio di Maxwell-Boltzmann (semiconduttore non degenere). Per elevate concentrazioni di elettroni, il livello di Fermi F non è più localizzato al centro del gap F = G /2, ma si sposta (fig.4.3); se il livello di Fermi F appartiene all’intervallo v0 +3kB TL ≤ F ≤ c0 − 3kB TL si può utilizzare l’approsimazione di Maxwell-Boltzmann per descrivere la distribuzione degli elettroni, altrimenti bisogna utilizzare l’espressione di Fermi-Dirac e la relazione 4.3, che fornisce la concentrazione degli elettroni, non è più valida. Aumentando la concentrazione degli elettroni, il materiale diviene degenere. Nella formulazione della distribuzione di Fermi-Dirac le grandezze, quali ad esempio la concentrazione, vengono calcolate per mezzo di un termine che prende il nome di integrale di Fermi. Definendo la quantità F − c0 η f0 = (4.26) kB T si può esprimere l’integrale di Fermi nella seguente formulazione: R∞√ x x−η1f dx 0 (4.27) F1/2 (ηf ) = R ∞ √e −x+1 xe dx 0 La concentrazione n degli elettroni è cosı̀ espressa: CB CB CB EF Ec0−3KT EG EF Ev0+3KT EF VB VB VB Eccesso di elettroni (e) Eccesso di lacune (h) Distribuzione di Maxwell−Boltzman Semiconduttore: NonDegenere Distribuzione di Fermi−Dirac Semiconduttore: Degenere Figura 4.3: Posizione del livello di Fermi nel semiconduttore degenere e non degenere n = NC F1/2 (ηf0 ) 72 (4.28) h ∗ i3/2 kB T dove NC = 2 m2πh̄ è la densità efficace degli stati in banda di conduzione. 2 Per ηf → −∞ si ottiene: F1/2 (ηf )|ηf →−∞ → eηf0 riottenendo la validità della distribuzione di Maxwell-Boltzmann per F lontano dal minimo della banda di conduzione c0 . Il quadrato dell’inverso della lunghezza di screening β s2 è cosı̀ espresso: q 2 NC F1/2 (ηf ) d ln(F1/2 (ηf )) dF1/2 (ηf ) 1 q 2 n dn = |ηf =ηf0 = βS2 (M B) kB TL dηf kB TL 0 Si F1/2 (ηf ) dηf dηf (4.29) In figura 4.4 sono rappresentati i termini F1/2 e eη in funzione della concentrazione degli elettroni. Per concentrazioni inferiori a 1019 [cm−3 ] i due termini sono identici mentre per concentrazioni degli elettroni superiori (semiconduttore degenere) si osserva che la distribuzione di Maxwell-Boltzmann è inadatta poichè determina una sovrastima della probabilità di occupazione giustificando l’aumento della mobilità per concentrazioni superiori a 10 19 [cm−3 ]. Bisogna quindi considerare la funzione di distribuzione di Fermi-Dirac ed eseguendo il rapporto tra βs2 (F D) e βs2 (M B), si può disegnare tale andamento in funzione della concentrazione elettronica n0 ottenendo i coefficienti in funzione del doping necessari per correggere la lunghezza di screening nella formulazione di Maxwell-Boltzmann in quella di Fermi-Dirac per considerare che il semiconduttore è degenere (figura 4.5). βs2 (F D) = 6 10 5 10 F1/2(η) exp(η) 4 10 3 F1/2(η), exp(η) 10 2 10 1 10 0 10 −1 10 −2 10 −3 10 −4 10 16 10 17 10 18 19 20 10 10 10 −3 Electron Concentration n0[cm ] 21 10 Figura 4.4: Rappresentazione della distribuzione di Fermi-Dirac e di Maxwell-Boltzmann in funzione della concentrazione n0 degli elettroni 73 1 0.6 2 2 β (FD)/ β (MB) 0.8 0.4 0.2 0 16 10 17 10 18 19 20 10 10 10 −3 Electron Concentration n0 [cm ] 21 10 22 10 Figura 4.5: Rapporto tra l’inverso della lunghezza di screening usando la statistica di FermiDirac e Maxwell-Boltzmann 4.3 4.3.1 Il Codice delle impurezze ionizzate in Bandit Descrizione del codice prima di essere modificato in questa tesi Lo scattering da impurezze ionizzate viene attivato nelle simulazioni di Bandit per mezzo del comando: -ion 0.1,9,2.5 dove i coefficienti rappresentano: • 0.1 è la massima energia in eV (emaxion) per la validità del modello analitico del fondo della banda di conduzione; • 9 è il numero di regioni per decade, ossia in quante regioni viene suddiviso il range di concentrazione del drogante nel dispositivo; • 2.5 è il valore del prefattore (sclpre) che modifica il valore dell’inverso della lunghezza di screening βs2 . Il file ion-imp.c implementa in Bandit il modello di Brooks & Herring per le impurezze ionizzate se l’energia dell’elettrone è inferiore alla massima energia (emaxion) per la validità dell’approsimazione analitica del fondo della banda di conduzione. Il codice prima di essere corretto presentava diversi errori: • La densità degli stati (Dos) veniva moltiplicata per il coefficiente di molteplicità della banda di conduzione Nm = 6, ma per le impurezze tale coefficiente è uguale a 1; 74 • La formula dello scattering rate S(i ) non era quella canonica nella formulazione di Brooks & Herring. • L’energia dello stato dopo lo scattering per certe energie iniziali dell’elettrone era superiore a quella dello stato prima dello scattering implicando un meccanismo non elastico. • La lunghezza di screening LD veniva determinata con la distribuzione di Maxwell-Boltzmann in funzione della concentrazione delle impurezze ionizzate N D . 4.3.2 Calcolo dello Scattering rate Di seguito si elencano le principali funzioni che compongono il file per le impurezze ionizzate ion-imp.c che sono richiamate nel file scatt.c. • la funzione InitIonizedScattering viene richiamata nella funzione CreateScattering del file scatt.c per inizializzare la tabella degli scattering rate delle impurezze ionizzate; • la funzione IonImpurityScattRate calcola lo scattering rate sr di una particella e viene richiamata nella funzione DoScattering del file scatt.c per identificare il meccanismo di scattering che determina lo stato dopo lo scattering; • la funzione DoImpurity viene richiamta nella funzione DoScattering e calcola lo stato dopo lo scattering quando è selezionato il meccanismo delle impurezze ionizzate. La funzione DoS calcola la densità degli stati in unità interne in funzione dell’energia implementando nel codice la relazione 4.14. /* DoS in 1/u.l.^3 u.e., e in eV for a sferic non parabolic band */ static double DoS(double e, ParticleType pt) { double dos; double coef = M_SQRT2 * 8.0 * M_PI * ElectronRestMass * LengthFactor / PlanckConstant * sqrt(ElectronRestMass) * LengthFactor / PlanckConstant * sqrt(ElectronCharge) * LengthFactor / PlanckConstant * ElectronCharge * EnergyFactor; dos = coef * Md[pt] * sqrt(Md[pt]) * sqrt(e); if (alpha[pt]) dos *= sqrt(alpha[pt] * e + 1) * (1 + 2 * alpha[pt] * e); return dos; } La funzione etok2 calcola il modulo quadro del vettore d’onda k 2 in unità adimensionali avendo fornito l’energia e in eV ed utilizzando la relazione della banda sferica non parabolica. /* k2 in 1/u.l.^2, e in eV for a sferic non parabolic band */ static double etok2(double e, ParticleType pt) { 75 double k2; const double coef = 8.0 * M_PI * LengthFactor / PlanckConstant * ElectronCharge * M_PI * LengthFactor / PlanckConstant * ElectronRestMass; k2 = coef * Md[pt] * e; if (alpha[pt]) k2 *= (1 + alpha[pt] * e); return k2; } La funzione ImpurityScat implementa la relazione 4.13 per il calcolo dello scattering rate. Si è corretto il termine 10k2/bs2 con il termine 4k2/bs2 per implementare la formula corretta dello scattering rate. /* Ionized Impurity Scattering rate */ static double ImpurityScat(IonRegion *ionr, ParticleType pt, Energy e) { double eev, scr, ni, bs2, k2; const double coef = 2.0 * M_PI * ElectronCharge / PlanckConstant * M_PI / (LengthFactor * SiliconRelativePermittivity * VacuumPermittivity) / (LengthFactor * SiliconRelativePermittivity * VacuumPermittivity) * ElectronCharge / EnergyFactor * ElectronCharge * TimeFactor; eev = e * EnergyFactor; if (eev > emaxion) return 0.0; bs2 = ionr->beta2; ni = ionr->conc; k2 = etok2(eev, pt); scr = coef / bs2 * ni / bs2 return scr; / (1 + 4 * k2 / bs2 ) * DoS(eev, pt); } La funzione InitIonizedScattering ha il compito di inizializzare la tabella degli scattering rate per le impurezze ionizzate realizzando lo schema funzionale di figura 4.9. La struttura dati è una struttura collegata con puntatori. La mesh, il cui puntatore è cm, viene divisa in un numero finito di elementi nel e per ogni elemento si assegna la concentrazione delle impurezze ionizzate ND letta da Dessis. La struttura dati, chiamata regdata, è organizzata in modo da raggruppare ogni elemento della mesh in un numero finito di insiemi dipendenti dal doping delle impurezze ionizzate. Infatti la dimensione di regdata (nionreg) è ottenuta calcolando il logaritmo del minimo (cmin) e del massimo (cmax) della concentrazione delle impurezze ionizzate nella mesh. Determinata la variazione di concentrazione delle impurezze nella mesh si raggruppano gli elementi della mesh in un numero di regioni per decade nregdec il cui valore è determinato dall’utente. 76 In figura 4.6 è rappresentata la struttura dati regdata formata dai campi: • conc è la concentrazione delle impurezze ionizzate della regione i-esima di doping; • beta2 è il quadrato dell’inverso della lunghezza di screening determinato della regione i-esima di doping calcolata con l’espressione: ionsc->ionreg[k]->beta2 = ionsc->ionreg[k]->conc / (dlsf * bs->temp) / (scrlpre * scrlpre); dove scrlpre è il prefattore usato da Tirelli per modificare la mobilità degli elettroni; • s è lo scattering rete determinato nella regione i-esima di doping mediante ImpurityScat in funzione dell’energia e. regdata conc beta2 s # regioni di Doping nionreg Figura 4.6: Sturuttura dati regdata delle impurezze ionizzate Questa struttura dati è organizzata in funzione della concentrazione delle impurezze ionizzate ND poichè lo screening βs2 è calcolato considerando questa concentrazione invece di quella dei portatori liberi n0 . Si inizializza a zero i campi conc, beta2 e s della struttura regdata. Eseguendo un ciclo sugli elementi della mash, si calcola il doping per quel elemento della griglia e si determina l’indice i necessario per collegare l’elemento all’insieme finito delle regioni di doping (fig.4.7). y Doping (conc) mesh x numero di regione (i) ionreg[k] conc beta2 k k−esimo elemento nionreg nel ionreg s regdata Figura 4.7: Sturuttura dati delle impurezze ionizzate: corrispondenza tra gli elementi della mesh e i campi della struttura regdata 77 In figura 4.8 è rappresentata la struttura dati ionsc->ionreg: IonImpScat ionsc IonRegion regdata ioreg 0 nel k regdata conc beta2 *s sc rate energy emin emax Doping cm nel sc rate energy emin emax x y 0 5 10 1 2 3 k−esimo elemento nel 4 mesh Figura 4.8: Sturuttura dati ionsc->ionreg delle impurezze ionizzate Una volta creata la struttura dati per le impurezze ionizzate viene collegata alla struttura dati generale dello scattering rate, puntata da sc, che raggruppa tutti i meccanismi di scattering utilizzati in Bandit. sc->ion = ionsc; La struttura dati è organizzata in funzione del doping delle impurezze ionizzate N D eliminando la corrispondenza biunivoca tra dati e posizione nella griglia poichè l’inverso della lunghezza di screnning βs2 è calcolato in funzione di tale concentrazione. Come sarà discusso, si è riorganizzata la struttura dati delle impurezze ionizzate per conservare la corrispondenza biunivoca tra dati e posizione nella griglia in modo da calcolare correttamente β s2 con la concentrazione dei portatori liberi n0 in accordo con la teoria. Il codice della funzione InitIonizedScattering è la seguente: /* Setup ion. imp. region data & scattering rate */ int InitIonizedImpScattering(CurlMesh *cm, PScatt sc, int nedsr, double dedsr, PBandStructure bs, Energy emax, ParticleType pt, int *memsize) { double cmin = HUGE_VAL, cmax = -HUGE_VAL, rlog, con, e, *sr; int i, j, k, mindec, maxdec, k1, k2, k3, k4, ilog; IonImpScat *ionsc; const double norml = Centimeter / LengthFactor; const double normv = LengthFactor / (norml * norml * Micron); const double normv1 = 1.0 / (norml * norml * norml); const double dlsf = EnergyFactor * LengthFactor / ElectronCharge * (SiliconRelativePermittivity * VacuumPermittivity); *memsize = 0; if (cm->ver < 110) { 78 Figura 4.9: Schema funzionale della funzione InitIonizedImpScattering del codice delle impurezze ionizzate fprintf(stderr,"WARNING: Impurity concentration not available.\n"); fprintf(stderr," Ionized impurity scattering turned off.\n\n"); 79 sc->ion = NULL; return 0; } if (!(ionsc = (IonImpScat*) malloc(sizeof(IonImpScat)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += sizeof(IonImpScat); ionsc->cm = cm; ionsc->nel = (cm->nx - 1) * (cm->ny - 1); if (!(ionsc->ionreg = (IonRegion**) malloc(ionsc->nel*sizeof(IonRegion*)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += ionsc->nel*sizeof(IonRegion*); /* find min & max impurity concentration */ for (k = 0; k < ionsc->nel; k++) { i = k / (cm->ny - 1); j = k - i * (cm->ny - 1); k1 = i*cm->ny + j; k2 = k1 + 1; k3 = k2 + cm->ny; k4 = k1 + cm->ny; /*-----10/10/2002----------------*/ if ((cm->mat[k1]==1)&&(cm->mat[k2]==1)&& (cm->mat[k3]==1)&&(cm->mat[k4]==1)) continue; /*------------------------------*/ con = (cm->tconc[k1] + cm->tconc[k2] + cm->tconc[k3] + cm->tconc[k4]) / 4 / normv; cmin = MIN(cmin, con); cmax = MAX(cmax, con); } /* compute number of region */ mindec = log10(cmin); maxdec = log10(cmax) + 1; ionsc->nionreg = (maxdec - mindec) * nregdec; /* allocate space for impurity region data */ if (!(ionsc->regdata=(IonRegion*)malloc(ionsc->nionreg*sizeof(IonRegion)))) { 80 fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += ionsc->nionreg*sizeof(IonRegion); for (i = 0; i < ionsc->nionreg; i++) { ionsc->regdata[i].conc = 0.0; ionsc->regdata[i].beta2 = 0.0; ionsc->regdata[i].s = NULL; } /* find which region each element in the grid belongs to */ for (k = 0; k < ionsc->nel; k++) { i = k / (cm->ny - 1); j = k - i * (cm->ny - 1); k1 = i*cm->ny + j; k2 = k1 + 1; k3 = k2 + cm->ny; k4 = k1 + cm->ny; /*-----10/10/2002----------------*/ if ((cm->mat[k1]==1)&&(cm->mat[k2]==1)&& (cm->mat[k3]==1)&&(cm->mat[k4]==1)) continue; /*------------------------------*/ con = (cm->tconc[k1] + cm->tconc[k2] + cm->tconc[k3] + cm->tconc[k4]) / 4 / normv; rlog = log10(con); ilog = rlog - mindec; rlog -= ilog + mindec; rlog = pow(10, rlog); i = ilog * nregdec + nregdec * (rlog-1) / 9; ionsc->ionreg[k] = ionsc->regdata + i; ionsc->ionreg[k]->conc = con * normv1; ionsc->ionreg[k]->beta2 = ionsc->ionreg[k]->conc / (dlsf * bs->temp) / (scrlpre * scrlpre); } /* setup masses & transformations */ Md[pt] = masses[pt][0] * masses[pt][1] * masses[pt][2]; Md[pt] = cbrt(Md[pt]); for (i = 0; i < 3; i++) { hvt[pt][i] = sqrt(Md[pt] / masses[pt][i]); ihvt[pt][i] = 1.0 / hvt[pt][i]; } 81 /* for each region compute scattering rate */ for (k = 0; k < ionsc->nionreg; k++) { if (ionsc->regdata[k].conc == 0.0) continue; if (!(ionsc->regdata[k].s = (double*) malloc(nedsr * sizeof(double)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += nedsr * sizeof(double); sr = ionsc->regdata[k].s; for (e = 0.0; e<= bs->emax[pt] - bs->emin[pt]; e += dedsr) *sr++ = ImpurityScat(ionsc->regdata+k, pt, e); } sc->ion = ionsc; /* print out impurity scattering (if required) */ if (verbose & VerbScattering) { printf("# %s Ionized Impurity Scattering Rate [1/s]\n", (pt==Electron)?"Electron":"Hole"); for (k = 0; k < ionsc->nionreg; k++) { if (ionsc->regdata[k].conc == 0.0) continue; printf("# Region %d, Concentration: %g [1/cm^3], " "Screening Length: %g [um]\n", k+1, ionsc->regdata[k].conc / normv1, 1.0 / sqrt(ionsc->regdata[k].beta2) * LengthFactor / Micron); sr = ionsc->regdata[k].s; for (e = bs->emin[pt]; e <= bs->emax[pt] && e <= bs->emin[pt] + emax; e += dedsr) printf("%g %g\n", (e - bs->emin[pt]) * EnergyFactor, *sr++ / TimeFactor); printf("&\n"); fflush(stdout); } } return 0; } 4.3.3 Calcolo dello Stato dopo lo Scattering La funzione DoImpurity viene richiamata all’interno di DoScattering del file scatt.c e determina il calcolo dello stato dopo lo scattering quando è selezionato il meccanismo delle impurezze ionizzate. Nella figura fig.4.10 è riprodotto lo schema di principio. La funzione DoImpurity implementa la trasformazione di Herring & Vogt per il calcolo dello stato dopo lo scattering trasformando le superfici equienergetiche elissoidali in superfici sferiche. Si procede riportando il vettore d’onda nel volume irriducibile (IW ) e si tiene traccia della posizione nel volume reale 82 Figura 4.10: Schema funzionale della funzione DoImpurity del codice delle impurezze ionizzate tramite ch. Si sottrae al vettore d’onda appartenente a IW il minimo della banda di conduzione per poi applicare le trasformazioni di Herring & Vogt. Si procede nel calcolo dell’angolo θ formato tra lo stato prima dello scattering k~i e lo stato dopo lo scattering k~f in accordo con la relazione eq.4.24 propria per le impurezze ionizzate. 83 void DoImpurity(PParticle p, int i, int j, PBandStructure bs, PScatt sc) { int ch, l, k ; PhaseSpace q,q_old; IonRegion *ionr; double ek, cospolangle, r, eev, de; k = i*(sc->ion->cm->ny - 1) + j; ionr = sc->ion->ionreg[k]; /* translate to the minimum */ q[0] = p->p[0]; q[1] = p->p[1]; q[2] = p->p[2]; ch = TranslateToMinimum(q, bs, p->type); /* scale: Herring & Vogt transformation */ for (l = 0; l < 3; l++) q[l] *= hvt[p->type][l]; /* generate polar angle */ ek = p->ek; eev = (ek - bs->emin[p->type]) * EnergyFactor; r = drand48(); cospolangle = 1.0 - 2.0 * (1 - r) / (1 + 4 * r * etok2(eev, p->type) / ionr->beta2); /* rotate the k-vector */ Rotate(q, cospolangle); /* scale back: inverse Herring & Vogt transformation */ for (l = 0; l < 3; l++) q[l] *= ihvt[p->type][l]; /* translate to the center */ TranslateToCenter(q, bs, p->type); /* translate to the original wedge */ FlipBack(q, ch); p->p[0] = q[0]; p->p[1] = q[1]; p->p[2] = q[2]; p->ek = KineticEnergy(p->p, p->sbi, bs); statsec.nion++; statsec.deion += de; statsec.de2ion += de * de; statsec.demaxion = fabs(de) > statsec.demaxion ? fabs(de) : statsec.demaxion; } 84 Si determina lo stato dopo lo scattering isotropo per mezzo della funzione Rotate. /* rotate a vector of a given angle */ static void Rotate(PhaseSpace p, double cpol) { double kxy, sphi, cphi, steta, cteta, spol; double ccsi, scsi, kmod, csi; kxy = hypot(p[0], p[1]); if (kxy) { sphi = p[0] / kxy; cphi = p[1] / kxy; } else { sphi = 0.0; cphi = 1.0; } kmod = sqrt(p[0]*p[0] + p[1]*p[1] + p[2]*p[2]); steta = kxy / kmod; cteta = p[2] / kmod; spol = sqrt(1.0 - cpol*cpol); csi = 2.0 * M_PI * drand48(); ccsi = cos(csi); scsi = sin(csi); p[0] = kmod*(cphi*ccsi*spol+sphi*cteta*scsi*spol+sphi*steta*cpol); p[1] = kmod*(-sphi*ccsi*spol+cphi*cteta*scsi*spol+cphi*steta*cpol); p[2] = kmod*(-steta*scsi*spol+cteta*cpol); } Si deve poi applicare la trasformazione inversa di Herring & Vogt che ritrasforma la banda sferica in banda elissoidale. Si risomma il minimo della banda di conduzione al vettore d’onda dello stato dopo lo scattering e lo si riposiziona nel volume reale d’origine (FlipBack). Come ultima operazione si calcola l’energia cinetica dell’elettrone del nuovo stato dopo lo scattering che deve essere uguale a quella prima dello scattering poichè il meccanismo è elastico. 4.4 4.4.1 Analisi e Correzione del Codice mediante le Simulazioni Introduzione I dati delle simulazioni della mobilità elettronica µ x vengono confrontati con i modelli della mobilità per le impurezze ionizzate proposti da Kosina[21] e il modello di Caughey-Thomas, che è il modello di riferimento della mobilità elettronica per il doping con atomi di fosforo (P ) 85 ottenuto dalla relazione[23]: µe (ND ) = µmin + µmax − µmin 1 + (ND /Nref,1 )x1 (4.30) dove ND è la concentrazione del doping e i rimanenti parametri sono tabulati nella seguente tabella 4.2: Parameter µmax [cm2 /(V s)] µmin [cm2 /(V s)] Nref,1 [cm−3 ] x1 A → AS 1417 52.2 9.68 · 1016 0.68 P 1414 68.5 9.20 · 1016 0.711 B 470.5 44.9 2.23 · 1016 0.719 Tabella 4.2: Parametri del modello di Caughey-Thomas per la mobilità [23] Nella figura 4.11 sono riprodotti il modello di Caughey-Thomas e i modelli di Kosina in funzione del doping ND delle impurezze ionizzate. I modelli di mobilità per gli elettroni di Kosina sono rispettivamente quello che implementa il solo modello di Brooks & Herring e il modello finale di mobilità che fitta i dati della curva di Caughey-Thomas. Caughey−Thomas model Kosina’s Brooks & Herring model Kosina’s final model 1000 2 Electron Mobility µx[cm /(Vs)] 1250 750 500 250 0 16 10 17 10 18 19 20 10 10 10 −3 Donor Concentration ND[cm ] 10 21 Figura 4.11: Modelli della mobilità elettronica di Caughey-Thomas[23] e di Kosina[21] 86 4.4.2 Il Modello della Mobilità elettronica di Tirelli Il modello della mobilità elettronica di Tirelli[14] è ottenuto dal codice ion-imp.c senza le modifiche proposte in questa tesi e attivando in Bandit il comando per le impurezze ionizzate con i seguenti valori: -ion 0.1,9,2.5 In figura 4.12 è riprodotta la curve di mobilità elettronica µ x (Fx ) ottenuta con il modello di Tirelli e confrontata con la curva di Caughey-Thomas. Modello di Caughey−Thomas Tirelli’s mobility model 1000 2 majority electron mobility µx[cm /(Vs)] 1250 750 500 250 0 16 10 17 18 19 10 10 10 3 Donor concentration ND[1/cm ] 10 20 Figura 4.12: Modello di Tirelli: Curve di Mobilità elettronica ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 µ[cm2 /(V · s)] 1019.7 642.55 250.62 120.39 92.035 Caughey-Thomas 1183.8 721.31 276.96 114.84 77.771 ∆µ[%] -13.86 -10.92 -9.51 4.83 18.34 Tabella 4.3: Modello di mobilità di Tirelli 4.4.3 Modifiche al Codice: Modello di Brooks & Herring Il modello della mobilità nella formulazione di Brooks & Herring è ottenuto con il codice ion-imp.c discusso nella sezione 4.3 in cui si è corretto il termine 10k2/bs2 con il termine 4k2/bs2 e attivando in Bandit il comando per le impurezze ionizzate con i seguenti valori: -ion 0.1,9,1.0 87 In figura 4.13 è riprodotta la curva di mobilità elettronica µ x (Fx ) ottenuta con il modello di Brooks & Herring e confrontata con la curva di Caughey-Thomas e i modelli di Kosina. Modello di Caughey−Thomas Kosina’s Brooks & Herring model Kosina’s impurity final model Bandit’s Brooks & Herring model 1000 2 majority electron mobility µx[cm /(Vs)] 1250 750 500 250 0 16 10 17 18 19 10 10 10 3 Donor concentration ND[1/cm ] 20 10 Figura 4.13: Modello di Brooks & Herring: Curve di Mobilità elettronica ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 µ[cm2 /(V · s)] 1131.9 910.25 492.05 343.47 503.6 Caughey-Thomas 1183.8 721.31 276.96 114.84 77.771 ∆µ[%] -4.38 26.19 77.7 199 547.5 Tabella 4.4: Modello di mobilità di Brooks & Herring Osservando la figura 4.13 si può vedere che a partire dalla concentrazione N D = 1019 [cm−3 ] la curva di mobilità µx del modello di Brooks & Herring aumenta all’aumentare della concentrazione. Questo si spiega considerando che la funzione di distribuzione assunta per il modello è quella di equilibrio di Maxwell-Boltzmann e quindi l’inverso della lunghezza di screening β s è ottenuto dalla relazione 4.5. In realtà , il semiconduttore è degenere, quindi bisogna considerare la funzione di distribuzione di Fermi-Dirac e l’espressione 4.29 per il β s come si vedrà. 4.4.4 Modifiche al Codice: Conservazione dell’energia dei portatori prima e dopo dell’evento di scattering Prima di correggere la formulazione di βs2 bisogna affrontare il problema della non conservazione dell’energia prima e dopo dell’evento di scattering dovuto alle impurezze ionizzate. Infatti la funzione DoImpurity contenuta nel file ion-imp.c gestisce la scelta dello stato dopo lo scattering in accordo con il modello per le impurezze ionizzate discusso nella sezione 4.2.2. 88 Tale meccanismo di scattering, per quanto già visto, è elastico quindi necessariamente deve conservare l’energia del portatore prima e dopo dell’evento di urto: non si devono avere ne aumenti ne diminuzioni dell’energia. Si è studiata la correzione per la conservazione dell’energia inserendo nella funzione dei check energetici. void DoImpurity(PParticle p, int i, int j, PBandStructure bs, PScatt sc) { int ch, l, k; PhaseSpace q,q_old; IonRegion *ionr; double ek, cospolangle, r, eev, de; /*LM ---------------------------------------------------------*/ static int in=0; PhaseSpace q1,q2,q3,q4; double Ken; double Eksferi, Eksferf, Etm=0, Etc=0, gam=0, Bma=-100,dee1,dee2; PCBMinimum mn; double c= Md[p->type]*8.0 * M_PI * LengthFactor / PlanckConstant * ElectronCharge * M_PI * LengthFactor / PlanckConstant * ElectronRestMass, Cod = (2*M_PI)/bs->a0*(2*M_PI)/bs->a0; /*---------------------------------------------------------*/ k = i*(sc->ion->cm->ny - 1) + j; ionr = sc->ion->ionreg[k]; /* translate to the minimum */ q[0] = p->p[0]; q[1] = p->p[1]; q[2] = p->p[2]; q_old[0]=q[0]; q_old[1]=q[1]; q_old[2]=q[2]; ch = TranslateToMinimum(q, bs, p->type); q1[0]=q[0]; q1[1]=q[1]; q1[2]=q[2]; /* Determinazione del p del minimo della banda*/ FlipBack(q1, ch); q4[0]=q_old[0]-q1[0]; q4[1]=q_old[1]-q1[1]; q4[2]=q_old[2]-q1[2]; q1[0]=q[0]; q1[1]=q[1]; q1[2]=q[2]; /*Energy Check-------------------------*/ for (mn = bs->mnf; mn < bs->mnl; mn++) { if (p->sbi == mn->sbi && (gam = q[0] * q[0] * mn->ekem[0] + q[1] * q[1] Etm = (mn->ek + gam / (0.5 + sqrt(0.25 + mn->a * gam))); Bma=mn->BMEmax; break; } 89 else Etm=0.0; } /* scale: Herring & Vogt transformation */ for (l = 0; l < 3; l++) q[l] *= hvt[p->type][l]; /*Momento dopo la trasformazione*/ q3[0]=q[0]; q3[1]=q[1]; q3[2]=q[2]; /* generate polar angle */ /*-----------------------------------------*/ /*ek = p->ek;*/ ek= KineticEnergy(p->p, p->sbi,bs); /*----------------------------------------*/ eev = (ek - bs->emin[p->type]) * EnergyFactor; r = drand48(); cospolangle = 1.0 - 2.0 * (1 - r) / (1 + 4 * r * etok2(eev, p->type) / ionr->beta2); /*--Energia dopo la trasformazione H &V------------------------*/ Ken= q[0]*q[0]*Cod + q[1]*q[1]*Cod + q[2]*q[2]*Cod; Eksferi = -1.0 + sqrt(1.0 + 2.0 * Ken / c ); dee1=ek*EnergyFactor-Eksferi; /*-------------------------------------------------------------*/ /* rotate the k-vector */ Rotate(q, cospolangle); /*-Energia dopo la rotazione-----------------------------------*/ Ken= q[0]*q[0]*Cod + q[1]*q[1]*Cod + q[2]*q[2]*Cod; Eksferf = -1.0 + sqrt(1.0 + 2.0 * Ken / c ); /*-------------------------------------------------------------*/ /* scale back: inverse Herring & Vogt transformation */ for (l = 0; l < 3; l++) q[l] *= ihvt[p->type][l]; /*Energia dopo la trasformazione inversa di H & V--------------*/ for (mn = bs->mnf; mn < bs->mnl; mn++) { if (p->sbi == mn->sbi && (gam = q[0] * q[0] * mn->ekem[0] + q[1] * q[1] Etc = (mn->ek + gam / (0.5 + sqrt(0.25 + mn->a * gam))); break; } else Etc=0.0; } /*------------------------------------*/ /* translate to the center */ TranslateToCenter(q, bs, p->type); q2[0]=q[0]; q2[1]=q[1]; 90 q2[2]=q[2]; /* translate to the original wedge */ FlipBack(q, ch); p->p[0] = q[0]; p->p[1] = q[1]; p->p[2] = q[2]; p->ek = KineticEnergy(p->p, p->sbi,bs); dee2=Eksferf-p->ek*EnergyFactor; /* check energy conservation */ de = p->ek - ek; /*-Stampa dei risultati se la variazione energetica e’ superiore a 10meV---*/ if (fabs(de*EnergyFactor) > 0.01) { in=in+1; fprintf(stderr,"#particelle:=%d\n",in); fprintf(stderr,"de:=%f\n",de*EnergyFactor); fprintf(stderr,"eold:=%f\n",ek*EnergyFactor); fprintf(stderr,"eatm:=%f\n",Etm*EnergyFactor); fprintf(stderr,"de1=eold-Esi:=%f\n",dee1); fprintf(stderr,"Energia prima della rotazione (banda sferica) Esi=%g\n",Eksferi); fprintf(stderr,"Energia dopo la rotazione (banda sferica) Esf=%g\n",Eksferf); fprintf(stderr,"ebtc:=%f\n",Etc*EnergyFactor); fprintf(stderr,"enew:=%f\n",p->ek*EnergyFactor); fprintf(stderr,"de2=Esf-enew:=%f\n",dee2); fprintf(stderr,"qold=(%g %g %g) qnew=(%g %g %g)\n",q_old[0],q_old[1], q_old[2],p->p[0],p->p[1],p->p[2]); fprintf(stderr,"qatm=(%g %g %g) qatc=(%g %g %g)\n",q1[0],q1[1], q1[2],q2[0],q2[1],q2[2]); fprintf(stderr,"qahvt=(%g %g %g)\n",q3[0],q3[1],q3[2]); fprintf(stderr,"BMEmax=%g\n",Bma*EnergyFactor); fprintf(stderr,"sbi=%d\n",p->sbi); fprintf(stderr,"qmin=(%g %g %g)\n",q4[0],q4[1],q4[2]); fprintf(stderr,"gam=%g \n",gam*EnergyFactor); fprintf(stderr,"******************************************\n"); } Dalle simulazioni si sono ottenuti i seguenti risultati sulla non conservazione dell’energia degli elettroni tab.4.5 il cui significato è il seguente: • de è la variazione dell’energia della particella in eV ottenuta come differenza tra l’energia posseduta prima dell’evento d’urto e quella dopo lo scattering; • eold è l’energia cinetica dell’elettrone in eV prima dello scattering; • eatm è l’energia cinetica dell’elettrone in eV ottenuta dopo aver riportato il vettore d’onda nel volume irriducibile (IW ) e sottratto il minimo della banda di conduzione utilizzando l’espressione energetica per la banda elissoidale; 91 • Esi è l’energia della particella in eV dopo aver applicato la trasformazione di Herring & Vogt. L’energia è calcolata con l’espressione valida per la banda sferica; • de1 è la variazione energetica in eV ottenuta come differenza tra l’energia prima dello scattering (eold) e l’energia in banda sferica prima dello scattering (Esi); • Esf è l’energia della particella in eV dopo lo scattering ottenuta in banda sferica; • ebtc è l’energia della particella in eV calcolata dopo la trasformazione inversa di Herring & Vogt prima di sommare di nuovo il minimo della banda di conduzione; • enew è l’energia della particella in eV dello stato dopo lo scattering; • de2 è la differenza di energia in eV tra Esf e enew; • qold sono le componenti del vettore d’onda, in unità interne di Bandit, dello stato prima dello scattering; • qatm sono le componenti del vettore d’onda, in unità interne di Bandit, dello stato prima dello scattering a cui è stato sottratto il minimo della banda di conduzione; • qatc sono le componenti del vettore d’onda, in unità interne di Bandit, dello stato dopo lo scattering a cui è stato sommato il minimo della banda di conduzione, ma il vettore d’onda non è stato ancora riposizionato nel volume originario tramite la funzione FlipBack; • qahvt sono le componenti del vettore d’onda, in unità interne di Bandit, dello stato prima dello scattering dopo aver applicato la trasformazione di Herring & Vogt. • BMEmax è la massima energia in eV per la validità del modello analitico della banda di conduzione per il calcolo dell’energia cinetica della particella. Se la particella eccede tale energia, il calcolo dell’energia posseduta dalla particella è ottenuta con il metodo Full-Band; • sbi è l’indice della sottobanda della banda di conduzione; • qmin sono le componenti, in unità interne di Bandit, del minimo della banda di conduzione; • gam è il valore dell’energia cinetica in eV posseduta dalla particella calcolata con l’espressione analitica della banda di conduzione. Osservando i risultati della tabella 4.5 si possono ricavare le seguenti considerazioni: • Sommando de1 e de2 si ottiene la variazione energetica de; • Il processo di scattering dell’elettrone determina l’aumento dell’energia dell’elettrone enew rispetto all’energia prima dell’urto eold; • L’energia prima e dopo la rotazione del vettore d’onda ~k in banda sferica si conserva; • Il valore dell’energia calcolato dopo il processo di sottrazione del minimo della banda di conduzione eatm è nullo cosı̀ come il valore dell’energia prima di sommare il minimo della banda di conduzione ebtc; • BMEmax, che è uguale al valore d’inizializzazione (-100) e l’energia della particella non viene calcolata con il modello analitico. 92 ND = 1 · 1016 [cm−3 ] Fx = 1[kV /cm] # particelle 1 de:=0.012154 eold:=0.0955565 eatm:=0.00000 de1:=eold-Esi:=-0.007543 Energia prima della rotazione (banda sferica) Esi=0.103108 Energia dopo la rotazione (banda sferica) Esf=0.103108 ebtc:=0.00000 enew:=0.107719 de2:=Esf-enew=-0.004611 qold=(-0.824956 0.0500164 -0.0375032) qnew=(-0.775815 0.0523877 -0.0123378) qatm=(-0.025044 0.0500164 0.0375032) qatc=(0.775815 0.052877 0.0123378) qahvt=(-0.0148248 0.0650084 0.0487445) BMEmax=-100 sbi=4 qmin=(-0.85 0 0) gam=0.108424 Tabella 4.5: Risultati della non conservazione dell’energia degli elettroni per lo scattering da impurezze ionizzate del file ion-imp.c Dai risultati e dalle simulazioni si è determinato la causa che implica la non conservazione dell’energia. Esiste una condizione per cui effettivamente l’elettrone possiede prima dello scattering un’energia minore a emaxion, che è la massima energia per la validità del modello analitico del fondo della banda di conduzione per il file ion-imp.c, ma l’energia cinetica dell’elettrone è ottenuta con il modello Full-Band non analitico. Infatti le energie eatm e ebtc sono calcolate con l’espressione analitica del fondo della banda di conduzione implementata nella funzione KineticEnergy: gam diverso da zero e BMEmax=-100 implicano che l’espressione analitica per il calcolo dell’energia cinetica non è stata usata e tale energia è stata calcolata quindi con il modello Full-Band non analitico. Durante il processo di sottrazione e somma del minimo della banda di conduzione la particella acquiscisce impropriamente energia. Il problema della non conservazione dell’energia dell’elettrone è visualizzato in figura 4.14. Bandit usa il modello analitico per il fondo della banda di conduzione mentre il modello FullBand per la restante banda. Esistono elettroni “di confine” appartenenti alle regioni evidenziate dai rettangoli, che possiedono effettivamente un’energia maggiore di emaxion se si usa il modello analitico, mentre quella calcolata con il modello Full-Band è minore di emaxion. Purtoroppo il codice delle impurezze ionizzate considera tali stati come analitici e gli da un energia maggiore di quella Full-Band. Per correggere questo problema si possono seguire due procedimenti: • Porre emaxion pari a 0.08eV . Corrisponde a diminuire la soglia energetica per la validità del modello analitico della banda di conduzione determinando l’annullamento delle regioni rettangolari; • Condizionare l’esecuzione della funzione DoImpurity. Infatti, inserendo l’espressione condizionale if il cui argomento controlla che la particella abbia un’energia cinetica calcolata con il modello analitico minore di emaxion, si 93 Electron Energy emaxion Banda Analitica Banda Full−Band k State Figura 4.14: Problema della non conservazione dell’energia dell’elettrone nel processo di scattering con le impurezze ionizzate risolve effettivamente la non conservazione dell’energia e il processo di scattering risulta elastico. Se l’elettrone possiede un’energia calcolata con il modello FullBand, la funzione DoImpurity non viene eseguita. Il codice è cosı̀ corretto: void DoImpurity(PParticle p, int i, int j, PBandStructure bs, PScatt sc) { int ch, l, k; PhaseSpace q; IonRegion *ionr; if(CheckAnalEnergy(p, bs) == 0) { k = i*(sc->ion->cm->ny - 1) + j; ionr = sc->ion->ionreg[k]; /* translate to the minimum */ q[0] = p->p[0]; q[1] = p->p[1]; q[2] = p->p[2]; ch = TranslateToMinimum(q, bs, p->type); /* scale: Herring & Vogt transformation */ for (l = 0; l < 3; l++) q[l] *= hvt[p->type][l]; /* generate polar angle */ ek= KineticEnergy(p->p, p->sbi,bs); eev = (ek - bs->emin[p->type]) * EnergyFactor; r = drand48(); cospolangle = 1.0 - 2.0 * (1 - r) / 94 (1 + 4 * r * etok2(eev, p->type) / ionr->beta2); /* rotate the k-vector */ Rotate(q, cospolangle); /* scale back: inverse Herring & Vogt transformation */ for (l = 0; l < 3; l++) q[l] *= ihvt[p->type][l]; /* translate to the center */ TranslateToCenter(q, bs, p->type); /* translate to the original wedge */ FlipBack(q, ch); de = p->ek - ek; statsec.nion++; statsec.deion += de; statsec.de2ion += de * de; statsec.demaxion = fabs(de) > statsec.demaxion ? fabs(de) : statsec.demaxion; } } Dove la funzione CheckAnalEnergy controlla che l’energia dell’elettrone sia minore di emaxion con il calcolo analitico dell’energia cinetica. inline int CheckAnalEnergy(PParticle p, PBandStructure bs){ int ch=0; Energy gam=0; PCBMinimum mn; PhaseSpace q; q[0] = p->p[0]; q[1] = p->p[1]; q[2] = p->p[2]; ch = TranslateToMinimum(q, bs, p->type); for (mn = bs->mnf; mn < bs->mnl; mn++) { if (p->sbi == mn->sbi && (gam = q[0] * q[0] * mn->ekem[0] + q[1] * q[1] * mn->ekem[1] + q[2] * q[2] * mn->ekem[2]) <= mn->BMEmax) { return 0; } return 1; } 95 4.4.5 Modifiche al codice: Screening secondo la Fermi-Dirac Riprendendo le considerazioni affrontate nella sezione 4.2.3 si è visto che l’assunzione della statistica di equilibrio di Maxwell-Boltzmann è inadeguata nel caso del semiconduttore degenere e quindi l’espressione dell’inverso della lunghezza di screening β s deve essere modificata. L’espressione di βs nella formulazione di Fermi-Dirac è : βs2 (M B) = βs2 (F D) = βS2 (M B) n0 q 2 0 Si k B T d ln(F1/2 (ηf )) = βs2 (M B)kM B→F D dηf (4.31) (4.32) Il βs2 (F D) è espresso dal βs2 (M B) attraverso il coefficiente kM B→F D il cui andamento in funzione della concentrazione degli elettroni n0 è riportato in figura 4.5. Per modificare βs2 , implementato nel codice di Bandit, basta moltiplicarlo per il coefficiente k M B→F D in funzione della concentrazione n0 , cosı̀ si corregge l’andamento della curva di mobilità degli elettroni µ x in condizione di alto doping. Nella seguente tabella 4.6 è riportata l’interpolazione di k M B→F D ottenuta con un insieme di rette le cui lunghezze sono scelte in modo da minimizzare l’errore d’approsimazione dove la curva ha un maggior raggio di curvatura. electron concentration n0 [cm−3 ] ND ≤ 1015 1015 ≤ ND < 1 · 1017 1 · 1017 ≤ ND < 1 · 1018 1 · 1018 ≤ ND < 1.93 · 1018 1.93 · 1018 ≤ ND < 4.968 · 1018 4.968 · 1018 ≤ ND < 1 · 1019 1 · 1019 ≤ ND < 2.40048 · 1019 2.40048 · 1019 ≤ ND < 1 · 1020 1 · 1020 ≤ ND < 2.34 · 1020 2.34 · 1020 ≤ ND < 6.575 · 1020 6.575 · 1020 ≤ ND < 1 · 1021 1 · 1021 ≤ ND < 1.2304 · 1021 ND ≥ 1021 kM B→F D (ND ) 1 0.999 −3 −3.492 · 10 ln(ND ) + 1.133 −16.88 · 10−3 ln(ND ) + 1.688 −35.64 · 10−3 ln(ND ) + 2.477 −71.90 · 10−3 ln(ND ) + 4.038 −132.9 · 10−3 ln(ND ) + 6.708 −212 · 10−3 ln(ND ) + 10.24 −211.7 · 10−3 ln(ND ) + 10.21 −134.8 · 10−3 ln(ND ) + 6.612 −82.92 · 10−3 ln(ND ) + 4.123 −68.66 · 10−3 ln(ND ) + 3.434 0.099594 Tabella 4.6: Funzione d’approsimazione di kM B→F D per correggere l’inverso della lunghezza di screening βs nella formulazione di Fermi-Dirac In figura 4.15 è confrontata l’interpolazione di k M B→F D ottenuta implementando le espressioni della tabella 4.6 con la curva non approssimata. La funzione InitIonizedImpScattering che implementa anche il calcolo di βs2 viene cosı̀ modificata: ionsc->ionreg[k]->beta2 = ionsc->ionreg[k]->conc / (dlsf * bs->temp); ionsc->ionreg[k]->beta2 *= F12(con); dove la funzione F12 calcola il corretto coefficiente k M B→F D in funzione del logaritmo della concentrazione degli elettroni n0 . 96 1 0.8 kMB−>FD 0.6 0.4 0.2 rapporto analitico rapporto approsimato con spezzoni di rette 0 14 10 16 18 20 10 10 10 −3 Electron concentration n0[cm ] 22 10 Figura 4.15: Confronto di kM B→F D interpolata e non interpolata per correggere l’inverso della lunghezza di screnning βs nella formulazione di Fermi-Dirac double F12(double conc) { double colog=log(conc); if (1e15 <= conc && conc < 0.999e17) return 0.999; else if (0.999e17 <= conc && conc < 1e18) return -3.492e-3 * colog +1.133; else if (1e18 <= conc && conc < 1.93e18) return -16.88e-3 * colog + 1.688; else if (1.93e18 <= conc && conc < 4.968e18) return -35.64e-3 * colog + 2.477; else if (4.968e18 <= conc && conc < 1e19) return -71.90e-3 * colog +4.038; else if (1e19 <= conc && conc < 2.40048e19) return -132.9e-3 * colog +6.708; else if (2.40048e19 <= conc && conc < 1e20) return -212e-3 * colog +10.24; else if (1e20 <= conc && conc < 2.34e20) return -211.7e-3 * colog +10.21; else if (2.34e20 <= conc && conc < 6.575e20) return -134.8e-3 * colog +6.612; else if (6.575e20 <= conc && conc < 1e21) 97 return -82.92e-3 * colog +4.123; else if (1e21 <= conc && conc <1.2304e21) return -68.66e-3 * colog +3.434; else if (conc >= 1.2304e21) return 0.099594; else return 1; } In figura 4.16 sono graficate le mobilità degli elettroni in funzione del doping N D per campi elettrici di 1kV /cm, 2kV /cm e 5kV /cm usando le distribuzioni di Maxwell-Boltzmann e FermiDirac. Si determina un’unica curva di mobilità ottenuta selezionando alcuni valori delle curve di mobilità dipendenti dal campo elettrico F x . La mobilità totale è ottenuta con la regola di Mathiessen: 1 µtot = 1 (4.33) 1 µf on + µimp Invertendo la relazione 4.33 si può ricavare la mobilità delle sole impurezze ionizzate considerando che questo meccanismo di scattering è elastico e quindi la mobilità è indipendente dal campo elettrico. µtot µf on (4.34) µimp = µf on − µtot Dalle simulazioni di Bandit si sono ottenuti i seguenti valori della mobilità totale (tab.4.7) e di quella dipendente dai soli fononi(tab.4.8) per i campi elettrici di 1, 2 e 5kV /cm. Si è quindi scorporata la mobilità delle sole impurezze ionizzate con la relazione 4.34 ottendo i ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 1 · 1021 µtot (Fx = 1[kV /cm]) [cm2 /(V s)] 1390.7 973.89 638.14 415.23 343.37 231.17 µtot (Fx = 2[kV /cm]) [cm2 /(V s)] 1176 900.8 556.8 350 298 189.1 µtot (Fx = 5[kV /cm]) [cm2 /(V s)] 886.4 748 500.2 322.9 272.4 162.4 Tabella 4.7: Valori della Mobilità totale degli elettroni ottenuti dalle simulazioni di Bandit attivando lo scattering da impurezze ionizzate e da fononi Fx [kV /cm] 1 2 5 µf on [cm2 /(V s)] 1450 1270 910 Tabella 4.8: Valori della Mobilità fononica degli elettroni ottenuti dalle simulazioni di Bandit valori tabulati nella tabella 4.9. I valori in grassetto sono quelli utilizzati per costruire la curva di mobilità di riferimento che verrà confrontata con il modello di Caughey-Thomas. Dalla curva di mobilità di Caughey-Thomas si estrae la mobilità delle impurezze ionizzate 98 ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 1 · 1021 µimp (Fx = 1[kV /cm]) [cm2 /(V s)] 33.02 · 103 2.949 · 103 1.146 · 103 579 451 273 µimp (Fx = 2[kV /cm]) [cm2 /(V s)] 15.63 · 103 3.11 · 103 989 483 392 222 µimp (Fx = 5[kV /cm]) [cm2 /(V s)] 29.48 · 103 4.20 · 103 1.11 · 103 498 388 197 Tabella 4.9: Valori della Mobilità delle sole impurezze ionizzate degli elettroni derivate dalle simulazioni di Bandit supponendo che la mobilità dei fononi sia quella ricavata con le simulazioni di Bandit e si tabula tale mobilità nella tabella 4.10. ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 1 · 1021 µimpC−T [cm2 /(V s)] 17.27 · 103 1.668 · 103 398 131 85 76.2 Fx [kV /cm] 2 2 5 5 5 5 Tabella 4.10: Valori della Mobilità delle sole impurezze ionizzate estratte dalla curva di Caughey-Thomas considerando che la mobilità dei fononi sia qualla ricavata dalle simulazioni di Bandit Nella figura 4.17 sono riprodotti i risultati ottenuti dalle simulazioni di Bandit per la mobilità elettronica µx ottenute con la modifica discussa in questa sottosezione. Come si vede ad alte concentrazioni ND > 1 · 1020 l’utilizzo della distribuzione di Fermi-Dirac corregge l’andamento della mobilità determinando la diminuzione della mobilità in funzione del doping. Nella tabella 4.11 sono riportati i valori di mobilità ottenuti con la modifica della lunghezza di screening nella distribuzione di Fermi-Dirac. ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 1 · 1021 µ[cm2 /(V · s)] 1176 900.8 500.2 322.9 272.4 162.4 Caughey-Thomas 1183.8 721.31 276.96 114.84 77.771 ∆µ[%] -0.65 24.88 80.60 181.2 250.25 Tabella 4.11: Modello di mobilità di Brooks & Herring: Distribuzione di Fermi-Dirac 99 espressione di Caughey−Thomas Brooks & Herring Bandit M−B Fx=1[kV/cm] Brooks & Herring Bandit M−B Fx=2[kV/cm] Brooks & Herring Bandit M−B Fx=5[kV/cm] Brooks & Herring Bandit F−D Fx=1[kV/cm] Brooks & Herring Bandit F−D Fx=2[kV/cm] Brooks & Herring Bandit F−D Fx=5[kV/cm] 1250 2 majority electron mobility µx[cm /(V*s)] 1500 1000 750 500 250 0 16 10 17 18 19 20 10 10 10 3 Donor concentration ND[1/cm ] 10 Figura 4.16: Confronto delle curve di mobilità elettronica per F x = 1, 2, 5kV /cm ottenute da Bandit con la distribuzione di Maxwell-Boltzmann e Fermi-Dirac modello di Caughey−Thomas Bandit’s Brooks & Herring M−B model Bandit’s Brooks & Herring F−D model 1000 2 majority electron mobility µx[cm /(V*s)] 1250 750 500 250 0 16 10 17 10 18 19 20 10 10 10 3 Donor concentration ND[1/cm ] 21 10 Figura 4.17: Confronto delle curve di mobilità elettronica ottenute da Bandit con la distribuzione di Maxwell-Boltzmann e Fermi-Dirac Nella figura 4.18 si confronta il modello della mobilità di Bandit, ottenuto con la distribuzione di Fermi-Dirac, con i modelli di Kosina. Come si vede il modello della mobilità degli elettroni di Bandit è simile al modello di Kosina nella formulazione di Brooks & Herring. 100 modello di Caughey−Thomas Kosina‘s Brooks & Herring model Kosina‘s impurity final model Bandit’s Brooks & Herring F−D model 1000 2 majority electron mobility µx[cm /(V*s)] 1250 750 500 250 0 16 10 17 10 18 19 20 10 10 10 3 Donor concentration ND[1/cm ] 21 10 Figura 4.18: Confronto della curva di mobilità elettronica ottenuta con Bandit con il modello di Kosina nella formulazione di Brooks & Herring 4.4.6 Modifiche al Codice: Funzione di Correzione della Mobilità elettronica Come già discusso nell’introduzione al capitolo, il lavoro di Fischetti[20] identifica altri meccanismi di scattering oltre a quello fononico e da impurezze ionizzate che influenzano la mobilità degli elettroni. Per tenere in considerazione questi ulteriori meccanismi e ottenere un modello di mobilità che sia concordante con i dati sperimentali , si utilizza una funzione di correzione della mobilità ottenuta con il modello di Brooks & Herring e la funzione di distribuzione di Fermi-Dirac. Si determina in funzione del doping N D il rapporto tra la mobilità delle impurezze ionizzate ottenute dalle simulazioni di Bandit e la mobilità delle impurezze ionizzate ottenute dalla curva di Caughey-Thomas. Dalle simulazioni di Bandit si sono ottimizzati tali coefficienti il cui valore è riportato in tabella. Questi coefficienti vengono impiegati nel codice delle impurezze ionizzate in Bandit per modiND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 1 · 1021 µimp /µimpC−T 1.5 2.5 4 6.5 10 9.24 Tabella 4.12: Coefficienti di correzione della mobilità degli elettroni in funzione del doping che vengono utilizzati nel codice di Bandit per lo scattering rate delle impurezze ionizzate ficare lo scattering rate delle impurezze e conseguentemente per diminuire la mobilità totale ed 101 ottenere cosı̀ il modello finale di riferimento per gli elettroni. In Bandit la funzione ImpurityScat viene cosı̀ corretta: static double ImpurityScat(IonRegion *ionr, ParticleType pt, Energy e) { double eev, scr, ni, bs2, k2; const double coef = 2.0 * M_PI * ElectronCharge / PlanckConstant * M_PI / (LengthFactor * SiliconRelativePermittivity * VacuumPermittivity) / (LengthFactor * SiliconRelativePermittivity * VacuumPermittivity) * ElectronCharge / EnergyFactor * ElectronCharge * TimeFactor; eev = e * EnergyFactor; if (eev > emaxion) return 0.0; bs2 = ionr->beta2; ni = ionr->conc; k2 = etok2(eev, pt); scr = coef / bs2 * ni / bs2 ConcCorFactor(ni); return scr; / (1 + 4 * k2 / bs2 ) * DoS(eev, pt)* } dove la funzione ConcCorFactor fornisce il coefficiente di correzione in funzione del doping N D . inline double ConcCorFactor(double conc) { double norml = Centimeter / LengthFactor; /*concentrazione in unita‘ [1/cm^3]*/ conc *= (norml*norml*norml); if ( 1e16 <= conc && conc < 1e17) return 1.1e-18 * conc + 1.389; else if (1e17 <= conc && conc < 1e18) return 1.7e-18 * conc + 2.33; else if (1e18 <= conc && conc <1e19) return 289e-21 * conc + 3.71; else if (1e19 <= conc && conc < 1e20) return 50e-21 * conc + 6.0; else if (1e20 <= conc && conc < 0.999e21) return -853.9e-24 * conc + 10.09; else if (0.999e21 <= conc && conc < 1e22) return 9.24; else if (conc >= 1e22) return 10; else return 1; } In figura 4.19 è graficato il modello di mobilità finale per gli elettroni ottenuto con le simulazioni di Bandit ed è confrontato con la curva di Caughey-Thomas. 102 In figura 4.20 è invece confrontato il modello finale di mobilità con il modello finale di modello di Caughey−Thomas final Bandit mobility model 2 majority electron mobility µx[cm /(V*s)] 1200 800 400 0 16 10 17 18 19 10 10 10 3 Donor concentration ND[1/cm ] 10 20 Figura 4.19: Confronto del modello finale di Mobilità degli elettroni con la curva di riferimento di Cauchey-Thomas Kosina[21]. In tabella 4.13 si analizzano i risultati della mobilità . ND [cm−3 ] 1 · 1016 1 · 1017 1 · 1018 1 · 1019 1 · 1020 1 · 1021 µ[cm2 /(V · s)] 1168 709.1 258.9 118.2 80 62.9 Caughey-Thomas 1183.8 721.31 276.96 114.84 77.771 ∆µ[%] -1.335 -1.693 -6.52 2.93 2.866 Tabella 4.13: Modello finale di mobilità per gli elettroni ottenuto con la funzione di correzione della mobilità 103 modello di Caughey−Thomas Kosina’s impurity final model final Bandit mobility model 2 majority electron mobility µx[cm /(V*s)] 1200 800 400 0 16 10 17 18 19 10 10 10 3 donor concentration ND[1/cm ] 20 10 Figura 4.20: Confronto del modello finale di Mobilità degli elettroni con il modello finale di Kosina In conclusione la correzione della mobilità degli elettroni ottenuta utilizzando la funzione di correzione dipendente dal doping, ha permesso di ottenere un modello il cui comportamento è verosimile a quello del modello di Caughey-Thomas conservando intatta la formulazione di Brooks & Herring. 4.4.7 Confronto con il modello di mobilità degli elettroni di KaiblingerGrulin Nel lavoro di Kaiblinger-Selberherr[32] si è ricavato un modello analitico della mobilità nel silicio in funzione dal tipo di drogante e della temperatura reticolare. Questo modello della mobilità degli elettroni maggioritari è calibrato sulle misure dei maggiritari condotte da Masetti[33] sul silicio ed è accurato per concetrazioni di drogante 10 14 ÷ 1022 cm−3 [32]. Il modello analitico della mobilità degli elettroni è il seguente: µmaj (ND , T, Z) = µ0 − g − h g + +h 1 + (ND /C1 )α 1 + (ND /C2 )β (4.35) Si definiscono le seguenti grandezze: T̄ = TL [K]/300[K] Z̄ = Z/ZP (4.36) dove TL è la temperatura del reticolo in K e Z è il numero atomico della specie drogante di tipo donore presa come riferimento (fosforo → ZP = 15). µ0 (T̄ ) = 380 + 20700e−3T̄ [cm2 /(V · s)] (4.37) g(T̄ , Z̄) = 18 − 8Z̄ + (7Z̄ + 280)e−1.5T̄ [cm2 /(V · s)] (4.38) 104 h(T̄ , Z̄) = 9 − Z̄ [cm2 /(V · s)] T̄ α(T̄ ) = 0.9 − 0.18T̄ (4.39) β(T̄ ) = 0.46 + 1.05T̄ (4.40) C1 (T̄ ) = [11.85T̄ 3 + 0.45]1016 [cm−3 ] C2 (T̄ , Z̄) = (3 + (4.41) 1 )(1.2 − T̄ e3−7T̄ )1020 [cm−3 ] Z̄ 2 (4.42) In figura 4.21 è confrontato il modello finale della mobilità degli elettroni di Bandit con questo modello in funzione della concentrazione delle impurezze ionizzate N D e della temperatura reticolare TL . 1000 1000 TL=500[K] 2 electron mobility µx[cm /(Vs)] 2 electron mobiliy µx[cm /(Vs)] TL=300[K] 100 Kaiblinger mobility model Bandit final model Kosina final model 10 16 10 17 10 18 10 19 10 100 Kaiblinger mobility model Bandit final model 10 16 10 20 10 −3 19 10 20 10 Donor concentration ND[cm ] elctron mobility µx[cm /(Vs)] TL=300[k] TL=100[K] 1000 2 2 electron mobility µx[cm /(Vs)] 18 10 −3 Donor concentration ND[cm ] 1000 17 10 100 Caughey−Thomas mobility model Bandit final model 16 10 17 10 18 10 19 10 20 10 −3 100 Kaiblinger mobility model Bandit final model 16 10 17 10 18 10 19 10 20 10 −3 Donor concentration ND[cm ] Donor Concentration ND[cm ] Figura 4.21: Confronto del modello finale della mobilità elettronica di Bandit con il modello di mobilità di Kaiblinger-Grulin[32] Quando la temperatura reticolare TL = 300K il modello della mobilità elettronica di Bandit è coincidente con questo modello, anche se per concentrazioni di doping N D > 1020 [cm−3 ] si discosta da tale modello. Quando la temperatura reticolare T L è di 100K il modello della mobilità di Bandit è coicidente con questo modello di mobilità anche se per concetrazioni di doping inferiori a 1016 cm−3 e superiori a 1020 cm−3 si discosta. Se si imposta una temperatura reticolare di 500K il modello finale di Bandit non fitta correttamente i valori di mobilità di questo modello. 105 4.4.8 Modifiche al Codice: Screening dipendente dalla concentrazione libera La struttura dati viene riorganizzata affinchè esiata la corrispondenza biunivoca tra gli elementi della mesh e i dati (beta2,conc,*s) di ogni elemento. Questa modifica è indispensabile poichè l’inverso della lunghezza di screening βs è ottenuto considerando la concentrazione dei portatori liberi n0 e non quella delle impurezze ionizzate ND . Si vuole avere lo screening dipendente dalla concetrazione dei portatori liberi, mentre lo scattering rete deve dipendere dalla concentrazione dei portatori liberi e da quella delle impurezze ionizzate come previsto dalla teoria. Questa correzione della struttura dati è fondamentale se si vuole simulare il comportamento dinamico dei portatori all’interno del MOS; quindi non si organizzano più i dati in un numero di regioni di doping, ma si hanno tanti campi quanti sono gli elementi della mesh (nel). La modifica apportata alla struttura IonRegion del file curl.h prevede l’inserimento di un nuovo campo econc che rappresenta la somma della concentrazione degli elettroni liberi e di quella delle lacune libere per ogni elemento della mesh. typedef struct { double conc; double beta2; double *s; double econc; } IonRegion; /* /* /* /* impurity concentration */ square of inverse of screening (Debye) length */ scattering probability */ free carrier concentration */ Si corregge l’espressione dell’inverso della lunghezza di screening β s implementata nel codice, sostituendo la concentrazione del doping conc con la concentrazione degli elettroni liberi econc. La struttura è riorganizzata come in figura 4.22. IonRegion IonImpScat ionsc Regdata econc conc beta2 regdata ioreg 0 nel 1 *s sc rate energy emin emax cm nel−2 nel−1 sc rate energy emin emax x y 0 5 10 * * * * 1 * * * * * * 2 * * * * * * 3 * * * * * * 4 * * * * * nel mesh Figura 4.22: Nuova struttura dati delle impurezze ionizzate per associare ad ogni elemento della mesh i dati di screening dipendenti dalla concentrazione dei portatori liberi e delle impurezze ionizzate 106 Il quadrato dell’inverso della lunghezza di screening beta2 per ogni elemento della mesh viene cosı̀ calcolato: /*free carrier concentration*/ /* electron concentration*/ econ = (cm->nconc[k1] + cm->nconc[k2] + cm->nconc[k3] + cm->nconc[k4]) / 4 / normv; /* hall concetration*/ econ +=(cm->pconc[k1] + cm->pconc[k2] + cm->pconc[k3] + cm->pconc[k4]) / 4 / normv; if (econ < 1e14) econ = 1e14; ionsc->ionreg[k] = ionsc->regdata + k; ionsc->ionreg[k]->econc = econ * normv1; ionsc->ionreg[k]->beta2 = ionsc->ionreg[k]->econc / (dlsf * bs->temp); ionsc->ionreg[k]->beta2 *= F12(econ); La funzione if controlla che la concentrazione dei portori liberi sia maggiore 10 14 cm−3 poichè quando si simula ad esempio il MOS, esistono elementi della mesh che hanno concetrazioni inferiori (ad esempio nelle zone di deplition delle giunzioni del source e del drain) determinando degli scattering rete talmente elevati da bloccare la simulazione del moto dei portatori. Il codice della struttura dati modificato nella funzione InitIonizedImpScattering è il seguente: int InitIonizedImpScattering(CurlMesh *cm, PScatt sc, int nedsr, double dedsr, PBandStructure bs, Energy emax, ParticleType pt, int *memsize) { double con, e, *sr; double econ; int i, j, k, k1, k2, k3, k4; IonImpScat *ionsc; const double norml = Centimeter / LengthFactor; const double normv = LengthFactor / (norml * norml * Micron); const double normv1 = 1.0 / (norml * norml * norml); const double dlsf = EnergyFactor * LengthFactor / ElectronCharge * (SiliconRelativePermittivity * VacuumPermittivity); *memsize = 0; if (cm->ver < 110) { fprintf(stderr,"WARNING: Impurity concentration not available.\n"); fprintf(stderr," Ionized impurity scattering turned off.\n\n"); sc->ion = NULL; return 0; } if (!(ionsc = (IonImpScat*) malloc(sizeof(IonImpScat)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; 107 } *memsize += sizeof(IonImpScat); ionsc->cm = cm; ionsc->nel = (cm->nx - 1) * (cm->ny - 1); if (!(ionsc->ionreg = (IonRegion**) malloc(ionsc->nel*sizeof(IonRegion*)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += ionsc->nel*sizeof(IonRegion*); /* element mesh= impurity region data*/ ionsc->nionreg=ionsc->nel; /* allocate space for impurity region data */ if (!(ionsc->regdata=(IonRegion*)malloc(ionsc->nionreg*sizeof(IonRegion)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += ionsc->nionreg*sizeof(IonRegion); for (i = 0; i < ionsc->nionreg; i++) { ionsc->regdata[i].conc = 0.0; ionsc->regdata[i].beta2 = 0.0; ionsc->regdata[i].econc = 0.0; ionsc->regdata[i].s = NULL; } /* find which region each element in the grid belongs to */ for (k = 0; k < ionsc->nel; k++) { i = k / (cm->ny - 1); j = k - i * (cm->ny - 1); k1 = i*cm->ny + j; k2 = k1 + 1; k3 = k2 + cm->ny; k4 = k1 + cm->ny; if ((cm->mat[k1]==1)&&(cm->mat[k2]==1)&& (cm->mat[k3]==1)&&(cm->mat[k4]==1)) continue; /*impurity concentration*/ con = (cm->tconc[k1] + cm->tconc[k2] + cm->tconc[k3] + cm->tconc[k4]) / 4 / normv; /*free carrier concentration*/ /*electron concentration*/ econ = (cm->nconc[k1] + cm->nconc[k2] + cm->nconc[k3] + cm->nconc[k4]) / 4 / normv; /*hall concentration*/ 108 econ +=(cm->pconc[k1] + cm->pconc[k2] + cm->pconc[k3] + cm->pconc[k4]) / 4 / normv; if (econ < 1e14) econ = 1e14; ionsc->ionreg[k] = ionsc->regdata + k; ionsc->ionreg[k]->conc = con * normv1; ionsc->ionreg[k]->econc = econ * normv1; ionsc->ionreg[k]->beta2 = ionsc->ionreg[k]->econc / (dlsf * bs->temp); ionsc->ionreg[k]->beta2 *= F12(econ); } /* setup masses & transformations */ Md[pt] = masses[pt][0] * masses[pt][1] * masses[pt][2]; Md[pt] = cbrt(Md[pt]); for (i = 0; i < 3; i++) { hvt[pt][i] = sqrt(Md[pt] / masses[pt][i]); ihvt[pt][i] = 1.0 / hvt[pt][i]; } /* for each region compute scattering rate */ for (k = 0; k < ionsc->nionreg; k++) { if (ionsc->regdata[k].conc == 0.0) continue; if (!(ionsc->regdata[k].s = (double*) malloc(nedsr * sizeof(double)))) { fprintf(stderr,"not enough memory for ion. imp. scattering rate\n"); return 1; } *memsize += nedsr * sizeof(double); sr = ionsc->regdata[k].s; for (e = 0.0; e<= bs->emax[pt] - bs->emin[pt]; e += dedsr) *sr++ = ImpurityScat(ionsc->regdata+k, pt, e); } sc->ion = ionsc; /* print out impurity scattering (if required) */ if (verbose & VerbScattering) { printf("# %s Ionized Impurity Scattering Rate [1/s]\n", (pt==Electron)?"Electron":"Hole"); for (k = 0; k < ionsc->nionreg; k++) { if (ionsc->regdata[k].conc == 0.0) continue; i = k / (cm->ny - 1); j = k - i * (cm->ny - 1); printf("#mesh x,y=[%d,%d],",i,j); 109 printf(" number element %d, Concentration: %g [1/cm^3], " "Screening Length: %g [um], Electron Concetration: %g[1/cm^3]\n", k+1, ionsc->regdata[k].conc / normv1, 1.0 / sqrt(ionsc->regdata[k].beta2) * LengthFactor / Micron, ionsc->regdata[k].econc / normv1); sr = ionsc->regdata[k].s; for (e = bs->emin[pt]; e <= bs->emax[pt] && e <= bs->emin[pt] + emax; e += dedsr) printf("%g %g\n", (e - bs->emin[pt]) * EnergyFactor, *sr++ / TimeFactor); printf("&\n"); fflush(stdout); } } return 0; } Ponendo nel codice della nuova struttura: ionsc->nionreg=ionsc->nel; si è fissata la dimensione del numero di regioni di doping pari al numero di elementi della mesh implicando cosı̀ la corrispondenza biunivoca tra i dati di screening e gli elementi della mesh. Nel caso della barretta uniformemente drogata, la curva di mobilità elettronica ottenuta da Bandit con la nuova struttura è uguale a quella ottenuta con la vecchia, quindi la riorganizzazione della struttura non influisce sui risultati delle simulazioni. 110 4.5 Conclusioni In questo capitolo si è studiato il meccanismo di scattering delle impurezze ionizzate ricordando che è elastico, quindi l’energia dello stato prima dello scattering deve necessariamente essere uguale a quella dello stato dopo lo scattering. Si è corretto il modello dello scattering rate implementato nel codice di Bandit affichè risultasse uguale all’espressione teorica nella formulazione di Brooks & Herring. Per correggere la mobilità degli elettroni in condizione di alto doping, si è corretta l’espressione della lunghezza di screnning LD considerando la funzione di distribuzione di Fermi-Dirac. Per correggere la non conservazione dell’energia durante il processo di scattering, si è individuata la causa della non conservazione nell’uso del modello analitico per il fondo della banda di conduzione e di quello Full-Band per la restante banda di conduzione; quindi se l’energia dell’elettrone è calcolata con il modello analitico, lo stato dopo lo scattering è ottenuto con le regole per le impurezze ionizzate, viceversa l’elettrone non urta con le impurezze ionizzate. Per implementare in Bandit il modello di mobilità di Caughey-Thomas per gli elettroni, si è utilizzata una funzione di correzione dello scattering rate delle impurezze ionizzate in funzione del doping, poichè come dimostrato nel lavoro di Fishetti[20], la curva di mobilità dipende da altri meccanismi di scattering oltre a quello dei fononi e delle impurezze ionizzate. Si è confrontato il modello finale della mobilità degli elettroni ottenuto con Bandit con il modello di Kaiblinger-Grulin[32] in funzione del doping N D e della temperatura reticolare TL . Per temperature reticolare TL < 300K il modello di Bandit è simile al modello di Kaiblinger-Grulin, mentre per la temperatura di 500K si osserva che la curva della mobilità di Bandit non fitta i dati del modello di riferimento. A questo punto si è riorganizzata la struttura dati per le impurezze ionizzate affichè esista una corrispondenza biunivoca tra i dati e gli elementi in cui è suddivisa la mesh. Cosı̀ facendo, si è potuto correggere l’espressione del βs2 implementata nel codice di Bandit, poichè utilizzava la concentrazione delle impurezze ionizzate invece di quella dei portatori liberi prevista dalla teoria. Questa modifica è fondamentale quando si vuole simulare il comportamento dei portatori nel MOS. 111 Capitolo 5 Conclusioni La mobilità degli elettroni nel silicio è un paramentro importante per l’analisi e la progettazione dei dispositivi elettronici. Disporre di modelli accurati della mobilità è fondamentale affinchè dalle simulazioni numeriche si ottengano valori corretti delle correnti nei dispositivi. • Nel secondo capitolo si è analizzato lo scattering anelastico dovuto ai fononi ottici ed acustici implementato in Bandit provando ad utilizzare i set dei potenziali di deformazione di Jacoboni[9], Bufler[19] e di Bandit. I risultati delle simulazioni numeriche hanno evidenziato che le mobilità degli elettroni, ottenute con i diversi set dei potenziali di deformazione, sono identiche e coincidenti con il modello di riferimento di Caughey-Thomas per il solo meccanismo di scattering fononico. Si è voluto anche simulare il comportamento degli elettroni caldi, indispensabile per trarre informazioni sull’affidabilità dei dispositivi simulati[30]. Le distribuzioni degli elettroni caldi, ottenute dalle simulazioni di Bandit, con i fononi di Jacoboni e Bufler sono identiche, ma inferiori rispetto a quelle dei fononi di Bandit. Anche i coefficienti di ionizzazione α, per i fononi di Jacoboni e Bufler, sono diversi da quelli ottenuti con i fononi di Bandit. Siccome i fononi di Bandit, sono stati calibrati affinchè i coefficienti di ionizzazione α fossero concordi con i dati sperimentali di Van Overstraeten, si conclude che i fononi di Jacoboni e Bufler determinano dei risultati numerici in disaccordo con i dati sperimentali. A questo riguardo modificando i fononi di Jacoboni come proposta da Bude[29], si ottiene che le distribuzioni degli elettroni caldi sono uguali a quelle ottenute con i fononi di Bandit e anche si ha l’uguaglianza dei coefficienti di ionizzazione α. Il set dei potenziali di deformazione di Jacoboni, e quindi di Bufler, sono ideali per ottenere la mobilità degli elettroni a basso campo, ma inadeguati per descrivere il comportamento degli elettroni caldi. Se si volesse comunque utilizzare questo set dei potenziali di deformazione dei fononi, bisognerebbe modificare il codice di Bandit: si dovrebbero usare i fononi di Jacoboni per ottenere la mobilità degli elettroni a basso campo e la modifica di Bude per descrivere il comportamento dei portatori caldi. • Nel capitolo terzo si è analizzato lo scattering da impurezze ionizzate implementato in Bandit. Questo meccanismo è elastico e quindi non implica la dissipazione dell’energia degli elettroni durante il processo d’urto. La formulazione teorica del modello delle impurezze ionizzate è quella di Brooks & Herring che sovrastima la mobilità degli elettroni a basso campo nei semiconduttori drogati. Si basa sulla descrizione stazionaria dell’interazione tra gli elettroni e la singola impurezza ionizzata addottando l’approsimazione al primo ordine della relazione di Born. Questa relazione assume che gli ioni siano statici 113 e che non risentano del moto degli altri elettroni. Questa assunzione non è più valida al crescere della concentrazione ND in quanto la distanza media tra due impurezze decresce e lo scattering con due o più ioni simultaneamente diviene importante. Per concentrazioni ND > 1018 [cm−3 ] la mobilità degli elettroni cresce poichè l’effetto di schermo diviene meno efficace. Per correggere la mobilità si è utilizzata la funzione di distribuzione di Fermi-Dirac modificando l’espressione dell’inverso della lunghezza di screening β s . Utilizzando la distribuzione di Fermi-Dirac si è corretto l’andamento della mobilità degli elettroni recuperando l’effetto di schermo degli elettroni in condizione di alto doping. Siccome la mobilità è determinata da altri meccanismi di scattering oltre a quello dei fononi e delle impurezze ionizzate, si è determinata una funzione di correzione delle mobilità degli elettroni in funzione del doping per far sı̀, che il modello di mobilità di Bandit fornisca risultati congruenti con quello di Caughey-Thomas[23]. A questo punto si è analizzato il codice di Bandit per correggere la non conservazione dell’energia durante il processo di scattering ad opera delle impurezze ionizzate. Tale condizione si verificava poichè Bandit può utilizzare sia il modello analitico (per il fondo della banda di conduzione) che quello Full-Band (per la restante parte della banda); quindi esistono degli elettroni di “confine” che hanno una energia inferiore alla massima energia per la validità del modello analitico, ma tale valore è calcolato con il modello Full-Band che è meno preciso di quello analitico. Si è confrontato il modello finale della mobilità per gli elettroni di Bandit con il modello di Kaiblinger-Grulin[32] in funzione della concentrazione delle impurezze ionizzate N D e della temperatura reticolare TL dimostrando che il modello finale, determinato in questa tesi, è simile a questo modello di riferimento per temperature reticolari inferiori a 300K. Per temperature reticolari superiori bisogna determinare dei nuovi coefficienti di correzione, ottenendo cosı̀ una dipendenza sia dal doping e che dalla temeratura reticolare T L . Si è modificata la struttura dati per le impurezze ionizzate poichè nel vecchio codice di Bandit lo screening veniva calcolato mediante la concentrazione delle impurezze ionizzate ND invece di quella dei portatori liberi. La nuova struttura dati fa corrispondere ad ogni elemento della mesh i propri dati di screening e l’inverso della lunghezza di screening è calcolato utilizzando la concentrazione dei portatori liberi (lacune ed elettroni). Questa modifica è fondamentale per simulare correttamente i portatori nei dispositivi quali ed esempio i MOS anche se bisognerebbe aggiornare dinamicamente il valore della concentrazione dei portatori liberi. Questa concentrazione dipende dalla simulazione stessa e quindi un eventuale aggiornamento dinamico non può essere effettuato frequentemente se non si vuole allungare il tempo di simulazione. 114 Appendice A Programmi A.1 Programma per il Calcolo della Dipendenza della velocità di saturazione dalla temperatura reticolare TL Il seguente codice C realizza la dipendenza delle velocità di saturazione dalla temperatura reticolare proposta nel lavoro[10] la cui espressione implementata è : vsat = #include<stdlib.h> #include<stdio.h> #include<math.h> 2.4 · 107 1 + 0.8 · eTL /600 [cm/s] int main() { printf("#Programma di analisi della velocita’\n"); printf("#saturazione in funzione delle temperatura\n"); printf("#Jacoboni, Canali: Solid State Electron 1977\n"); /*Temperatura in Kelvin*/ double TL=8, dT=2; int i; double vsat=0; printf("#TL[K]\tVsat[cm/s]\n"); /*Ciclo per il calcolo della velocita’*/ funzione della temperatura TL*/ for (i=1;i<250;i++) { TL +=dT; vsat=2.4e7/(1+0.8*exp(TL/600)); printf("%lg\t%lg\n",TL,vsat); } } 115 (A.1) A.2 Programma per la determinazione della curva che approsima i dati sperimentali della mobilità elettronica Il seguente codice implementa le seguenti espressioni che permettono di tracciare la curva di mobilità elettronica µx (Fx ) che approsima i dati sperimentali[11]: µx = µ0e 1 x β β ) ] [1 + ( FFcr (A.2) dove Fcr è il campo critico, µ0e è il valore di mobilità per Fx → 0, mentre β rappresenta la forma della regione di mobilità . Il campo elettrico critico Fcr e β sono ottenuti dalle seguenti espressioni: β = 2.57 · 10−2 · TL0.66 (A.3) Fcr = 1.01 · TL1.55 (A.4) /*file: mobility.c*/ /*Created by Marco Lanaro*/ #include<stdlib.h> #include<stdio.h> #include<math.h> int main() { printf("#Programma di determinazione della\n"); printf("#curva di mobilita’ elettronica\n"); printf("#che fitta i dati sperimentiali\n"); double F=0;/*electric field [V/cm]*/ double dF=10;/*electric field step [V/cm]*/ double mu=0;/*electron mobility [cm^2/(Vs)]*/ double Fcri=6.98e3;/*Critic Field*/ int i=0; double B=1.1; /*beta*/ double B1=1/B; double mu0=1500; /*electron mobility*/ /*Ciclo che realizza la curva che * aprossima i dati sperimentali della * mobilita’ eletronica*/ printf("#F[V/cm]\tve[cm^2/(Vs)]\n"); for(i=0;i<2001;i++) { mu=F/Fcri; mu=pow(mu,B); mu+=1; mu=pow(mu,B1); 116 mu=mu0/mu; printf("%lg\t%lg\n",F,mu); F+=dF; } } A.3 Programma per la determinazione della curva che approsima i dati sperimentali della velocità elettronica Il seguente codice implementa le seguenti espressioni che permettono di tracciare la curva della velocità degli elettroni che approsima i dati sperimentali: vx = µ0e Fx [1 + ( 1 µ0e Fx β β vsat ) ] (A.5) dove µ0e è il valore di mobilità per Fx → 0, mentre β rappresenta la forma della regione di mobilità . β è ottenuto dalla seguente espressione: β = 2.57 · 10−2 · TL0.66 /*file: velocity.c*/ /*Created by Marco Lanaro*/ #include<stdlib.h> #include<stdio.h> #include<math.h> int main() { printf("#Programma di determinazione della\n"); printf("#curva di velocita’ elettronica\n"); printf("#che fitta i dati sperimentiali\n"); double F=0;/*electric field [V/cm]*/ double dF=10;/*electric field step [V/cm]*/ double ve=0;/*electron velocity [cm/s]*/ int i=0; double B=1.1; /*beta*/ double B1=1/B; double mu0=1500; /*electron mobility*/ printf("#F[V/cm]\tve[cm/s]\n"); /*Calcolo della curva che approsima i dati * sperimentali della velocita’ elettronica*/ for(i=0;i<2001;i++) { 117 (A.6) ve=mu0*F/1e7; ve=pow(ve,B); ve+=1; ve=pow(ve,B1); ve=mu0*F/ve; printf("%lg\t%lg\n",F,ve); F+=dF; } } A.4 Programma per il Calcolo della curva di Mobilità degli elettroni del modello di Kaiblinger-Grulin Il seguente codice in C plotta i valori del modello di mobilità degli elettroni maggioritari la cui espressione è [32]: µmaj (ND , T, Z) = µ0 − g − h g + +h α 1 + (ND /C1 ) 1 + (ND /C2 )β /*file: Kaibling.c*/ /*Created by Marco Lanaro*/ #include<stdlib.h> #include<stdio.h> #include<math.h> int main() { printf("#Programma di determinazione del\n"); printf("#modello di mobilita’ elettronica\n"); printf("#di Kaiblinger\n"); int i=0; double N = 1e16;/*impurity concentration [1/cm^3]*/ double dN = 0.11e1;/*impurity concentration step*/ double mu, mu1, mu2; double T = 300; /*temperature of lattice TL [K]*/ double Tbar = T/300; double Z = 15; /*atomic number*/ double Zbar = Z/15; double mu0 = 380+20700*exp(-3*Tbar); double g = 18-8*Zbar+(7*Zbar+208)*exp(-1.5*Tbar); double h = (9-Zbar)/Tbar; double alpha = 0.9-0.18*Tbar; double beta = 0.46+1.05*Tbar; double C1 = (11.85*pow(Tbar,3)+0.45); 118 (A.7) C1 *=1e16; double C2 = (3+1/pow(Zbar,2))*(1.2-Tbar*exp(3-7*Tbar)); C2 *=1e20; printf("#N[1/cm^3]\tmobility[cm^2/(Vs)]\n"); for(i=0;i<146;i++) { mu1 = N / C1; mu1 = pow(mu1,alpha); mu1 += 1; mu1 = (mu0-g-h) / mu1; mu = mu1; mu2 = N/C2; mu2 = pow(mu2,beta); mu2 += 1; mu2 = g / mu2; mu += mu2 + h; printf("%lg\t%lg\n",N,mu); N *= dN; } } A.5 Il Tempo di rilassamento del Momento In questa sezione si affrontano i calcoli del tempo di rilassamento del momento per lo scattering da impurezze ionizzate, che è il tempo necessario per randomizzare il momento. Si studia per le impurezze ionizzate la relazione esistente tra il tempo di rilassamento del momento, che è un processo isotropo, e lo scattering rate che è invece un meccanismo anisotropo . L’inverso del tempo di rilassamento del momento 1/τ m è cosı̀ definito: X 1 k0 S(~k, k~0 )(1 − z ) = τm kz (A.8) k~0 dove kz0 /kz = cos(θ). Sostituendo al transition rate S(~k, k~0 ) = S(k~i , k~f ) l’espressione per le impurezze ionizzate si può riscrivere l’equazione A.8 sostituendo la sommatoria con l’operatore di integrazione. Z Ω 1 2πND q 4 1 1 = δ(i − f )(1 − cos(θ))dk~f (A.9) 3 τm (2π) k~f Ωh̄(0 Si )2 βs4 (1 + k 2 /b2s )2 dove ND è la concentrazione delle impurezze, q è la carica elettrica, i e f sono rispettivamente l’energia iniziale e finale. Applicando l’equazione 4.9 si riscrive l’espressione precendente nella seguente forma. Z 1 δ(i − f ) ND q 4 k 2 sin(θ)(1 − cos(θ))dkf dθdφ (A.10) = τm (2π)2 h̄(0 Si )2 βs4 kf ,θ,φ (1 + ki2 +kf2 −2ki kf cos(θ) )2 f β2 s 119 Derivando membro a membro la relazione f (1 + αf ) = h̄2 kf2 /(2m∗ ) → df = h̄2 kf /((1 + αf )m∗ )dkf e utilizzandola nell’equazione A.10 permette di ottenere il seguente risultato. Z πZ ∞ 1 ND q 4 δ(i − f ) m∗ (1 + 2αf ) = kf df (1 − cos(θ)) sin(θ)dθ 2 +k 2 −2k k cos(θ) 2 4 k i f τm 2πh̄(0 Si ) βs 0 0 (1 + i f h̄2 2 ) 2 βs (A.11) La δ(i − f ) è diversa da zero per f = i e quindi per kf = ki . Z ND q 4 m∗ (1 + 2αi ) π ki (1 − cos(θ) sin(θ) 1 dθ (A.12) = 2k2 (1−cos(θ) 2 τm 2πh̄3 (0 Si )2 βs4 0 (1 + i β 2 ) s Risolvendo l’integrale in dθ si ottiene l’espressione finale dell’inverso del tempo di rilassamento del momento. 4ki2 1 ND q 4 m∗ (1 + 2αi ) 4ki2 /βs2 [ln(1 + = ) − ] (A.13) τm βs2 1 + 4ki2 /βs2 8πh̄3 (0 Si )2 ki3 Il rapporto tra l’equazione A.13 di 1/τm e l’espressione dello scattering rate S() è il seguente. 2 1/τm = 2 [ln(1 + l)(1 + l) − l] S() l (A.14) dove l = 4ki2 /βs2 . In figura A.1 è riprodotto tale rapporto in funzione di l = 4k i2 /βs2 . Si osserva che per l → 0, 1 (1/τm)/S(ε) 0.8 0.6 0.4 0.2 0 2 4 6 l=4k /β 2 i 8 10 2 s Figura A.1: Legame del inverso tempo di rilassamento con lo scattering rete per le impurezze ionizzate significa che la concentrazione degli elettroni liberi deve essere grande n 0 ↑↑, 1/τm è uguale allo scattering rate S(). L’uguaglianza dello scattering rete con l’inverso del tempo di rilassamento del momento è valida in condizione di alto doping. Viceversa se l → ∞, cioè si è in condizione 120 di basso doping, 1/τm non è più uguale allo scattering rate. Alle stese considerazioni si arriva riferendosi all’espressione 4.24 per il calcolo dell’angolo θ dello stato dopo lo scattering. Si può esprimere tale relazione in funzione di l: cos(θ) = 1 − 2r 1 + (1 − r)l l→0 cos(θ) = 1 − 2r (A.15) Quando l → 0 lo scatering rate coincide con l’inverso del tempo di rilassamento del momento e lo stato dopo lo scattering può essere ottenuto con le relazioni isotrope; viceversa quando l → ∞ le impurezze ionizzate non deflettono i portatori. In condizione di alto doping si può sostituire l’equazione 4.24 con l’espressione cos(θ) = 1 − 2r; quindi si determina lo stato dopo lo scattering per le impurezze ionizzate in modo isotropo sostituendo alla scattering rete l’espressione del tempo di rilassamento del momento per le impurezze ionizzate. L’angolo φ è scelto uniformentente tra 0 e 2π come nel caso anisotropo. 121 Bibliografia [1] H. -S. P. Wong: Beyond the conventional transistor: IBM J. RES.&DEV. Vo46, No 2/3,2002 [2] M. Sherony, L. Su, J. Chung, D. Antoniadis: SOI Mosfet Effective Channel Mobility. IEEE Trans. Electron DEvice, Vo. 41, pp. 276-278,1994 [3] D. Esseni, M. Mastrapasqua, G. K. Celler, C. Fiegna, L. Selmi, E. Sangiorgi: Low Electron and Hole Mobility of SOI Transistors Fabricated on Ultrathin Silicon Films for Deep Submicrometer Technology Application. IEEE Transactions on Electron Devices, Vo 48, No 12, 2001 [4] D. Esseni, M. Mastrapasqua, C. Fiegna, G. K. Celler, L. Selmi, E. Sangiorgi: An Experimental Study of Low Field Electron Mobility in Double-Gete, Ultra-Thin SOI MOsfets. IEEE,2001 [5] D. Esseni, A. Abramo, L. Selmi, E. Sangiorgi: Study of Low Field Electron Transport in Ultra-Thin Single and Double Gate SOI Mosfets. DIEGM, Università di Udine [6] G. Ghione: Dispositivi per la Microelettronica. MacGraw-Hill 1998 [7] L.P. Bouckaert, R. Smoluchowski, E. Wigner: Theory of Brillouin Zones and Symmetry Properties of Wave Functions in Crystals. Physical Review, Vo 50, 1936 [8] J. M. Rabaey: Digital Integrated Circuits. Prentice Hall International Editions 1996 [9] C. Jacoboni e L. Reggiani: Monte Carlo method in trasport. Rev. Mod. Phys, Vol. 55, No. 3 1983. [10] C. Jacoboni, C. Canali, G. Ottaviani, A. Albergi Quaranta: A Review of Some Charge Trasport Properties of Silicon. Solid State Electron 1977 [11] M. Lundstrom: Fondamentals of carrier trasport. Ed. Addison Wesley. [12] K. Hess: Advanged teory of semiconductor devices. [13] F. Ercolessi e S. de Gironcoli: Appunti per il corso di Meccanica Quantistica, università di Udine 2001-2003. [14] G. Tirelli: Mobilità degli elettroni in silicio fortemente drogato. Tesi di Laurea, università di Udine 1999-2000. [15] J. Sun̄è , P. Olivo e B. Riccò : Self-consistent solution of the Poisson and Schödinger equations in accumulated semiconductor-insulator interfaces. 1991. 123 [16] D. M. Capper: Introduzione a C++. Ed. McGraw-Hill 1997 [17] A. Abramo, L. Baudry, R. Brunetti, R. Castagne, M. Charef, F. Dessenne, P. Dollfus, R. Dutton, W. L. Engl, R. Fauquembergue, C. Fiegna, M. V. Fischetti, S. Galdin, N. Goldsman, M. Hackel, C. Hamaguchi, K. Hess, K. Hennacy, P. Hesto, J.M. Higman, T. Iizuka, C. Jungemann, Y. Kamakura, H. Kosina, T. Kunikiyo, S. E. Laux, H. Lin, C. Maziar, H. Mizuco, H. J. Peife, S. Ramaswamy, N. Sano, P. G. Scrobohaci, S. Selberherr, M. Takenaka, T. Tang, K. Taniguchi, J. L. Thobel, R. Thoma, K. Tomizawa, M. Tomizawa, T. Vogelsang, S. Wang, X. Wang, C. Yao, P. D. Yoder, A. Yoshii: A comparison of Numerical Solution of the Boltzmann Trasport Equation for High-Energy Electron Trasport Silicon. IEEE 1994 [18] F Venturi, A. Ghetti : Assessment of Accuracy Limitation of Full Band Monte Carlo Device Simulation. IEEE 1997 [19] F. Bufler: Tesi PhD Full-Band Monte Carlo Simulation of Electrons and Holes in Strained Si and SiGe. München 1998 [20] M. V. Fischetti: Effect of the electron-plasmon interaction on the electron mobility in silicon. Physical Review B, Vo 44, No 11, 1991 [21] H. Kosina, G. Kaiblinger-Grujin: Ionized-Impurity Scattering of Majority Electrons in Silicon. Solid State Electronics Vol.42, No 3, pp 331-338, 1998 [22] H. Kosina: A Method to Reduce Small-Angle Scattering in Monte Carlo Device Analysis. IEEE Transactions on electron Devices, Vol.46, No 6, 1999 [23] D.B.M. Klaassen: A Unified Mobility Model for devide Simulation- I Model equations and Concentration Dependence. Solid State Electronics Vol. 35, No 7, pp 953-959, 1992 [24] D.B.M. Klaassen: A Unified Mobility Model for devide Simulation- II Temperature Dependence of Carrier Mobility and Lifetime. Solid State Electronics Vol. 35, No 7, pp 961-967, 1992 [25] D. Chattopadhyay, H. J. Queisser: Electron Scattering by Ionized Impurities in semiconductors. Reviews of Modern Physics, Vo 53, No 4, Part 1, 1981 [26] J. R. Mayer, F. J. Bartoli: Phase-shift Calculation of impurity scattering in Semiconductors. Phisical Review B, Vo 23, No 10, 1981 [27] D. Ferry: Semiconductor Transport. New York & Francis,2000 [28] G. F. Formicone, M. Saraniti, D. Z. Vasileska, D. K. Ferry: Study of 50-nm nMosfet by Ensemble Monte Carlo Simulation Including a New Approach to Surfece Roughness and Impurity Scattering in the Si Inversion Layer. Transactions on Electron Devices, Vo 49, No 1,2002 [29] J. D. Bude, M. Mastrapasqua: Impact Ionization and Distribution Functions in Sub-Micron nMosfet Technologies. IEEE Electron Device Letters, Vo 16, No 10,1995 [30] A. Duncan, U. Ravaioli, J. Jakumeit: Full-Band Monte Carlo Investigation of Hot Carrier Trends in the Scaling of Metal-Oxide-Semiconductor Field-Effect Transistors. IEEE Transactions Electron Device, Vo45, No 4,1998 124 [31] H. B. Bakoglu: Circuits, Interconnections and Packaging for VLSI, Reading, MA: AddisonWesley,1990 [32] G. Kaiblinger Grujin, S. Selberherr: A universal Low-Field Electron Mobility Model for Semiconductor Device Simulation. Institute for Microelectronics, TU Vienna. [33] G. Masetti, M. Severi, S. Solmi: Modeling of carrier against carrier concentration in arsenic, phosphorus- and boron-doped silicon. IEEE Trans. Electron Devices, Vo 30, No 7, pp764769, 1983 125 Ringraziamenti Il momento più impegnativo che deve essere affrontato quale conclusione di questa mia tesi è il Ringraziamento personale a tutti coloro che si sono prodigati affinchè potessi concludere brillantemente questo percorso vitale per la forgiatura di queste mie capacità e di questo mio carattere. Mosso da questo senso di profonda gratitudine il mio primo ringraziamento è rivolto al Cordialissimo Professore Luca Selmi per la possibilità offertami di affrontare, con vivo interesse, lo studio delle problematiche legate alla simulazione dei dispositivi elettronici. Si rende necessario, il doveroso ringraziamento al Dott. Ing. Pierpaolo Palestri che è stato per me punto di riferimento indiscusso ed artefice delle conoscenze da me acquisite in tutti questi mesi di necessario e doveroso impegno, presufi nella speranza di usufruire nella vita professionale di quanto appreso in Laboratorio. Ringrazio anche il Dott. Ing. David Esseni per il contributo offertomi affinchè questa tesi potesse essere formulata e per l’attenzione dimostratami. A questo punto voglio offrire i mie più profondi sentimenti d’affetto e di ringraziamento a mio Padre e a mia Madre. Devo alla loro fiducia e ai loro sacrifici, che tutt’oggi perdurano ancora, se ho potuto coronare questo mio arcaico desiderio e se sono orgoglioso di tutti questi nostri sacrifici per garantirmi un futuro migliore e una conoscenza più approfondita della umana vita. Grazie a mio Fratello e a mia Sorella per avermi sopportato per tutto questo tempo e per avermi confortato; se sono ora arrivato al traguardo è merito anche loro. Voglio rivolgere il mio ultimo ringraziamento ai Salesiani di San Giovanni Bosco per gli insegnamenti imparti sia come alunno, che come persona. Se oggi posso andare fiero di quello che sono, nel profondo del cuore il merito è anche loro. Grazie. Marco Lanaro Povoletto, lı̀ Settembre 2003. 127