SIMULAZIONE NUMERICA DI DISPOSITIVI A STATO SOLIDO Il comportamento di un dispositivo a semiconduttore è determinato da una serie di parametri fisici (p.es. mobilità, vita media, ecc) e da una serie di parametri tecnologici (p.es. la geometria, il profilo delle impurità, ecc). Lo scopo della modellazione (modeling) è quello di ricavare da questi parametri la distribuzione del potenziale elettrostatico e dei portatori liberi (elettroni e lacune) in condizioni statiche o nel tempo. Da queste informazioni è possibile risalire alla distribuzione del campo elettrico e delle correnti. L’integrazione del campo elettrico fra contatti, e l’integrazione delle densità di corrente sulla superficie dei contatti, forniscono le caratteristiche ai terminali dei dispositivi. La ricerca di modelli analitici a partire dalle equazioni non lineari fondamentali che governano il funzionamento dei dispositivi richiede il ricorso a notevoli approssimazioni (profilo del drogaggio, densità di carica nelle r.c.s., modelli di ricombinazione). Tali approssimazioni possono condurre ad modelli troppo semplificati. Ciò si può evitare (in varia misura) ricorrendo a soluzioni di tipo numerico. Si parla spesso in questi casi di “soluzione esatta”. La ricerca per via numerica delle soluzioni delle equazioni alle derivate parziali che governano il funzionamento del dispositivo si basa su due passi fondamentali: 1) il dominio di interesse è trasferito su una griglia (grid) di punti (o nodi). Attraverso un metodo di discretizzazione del problema, esso è trasformato in un problema algebrico (sistema di equazioni algebriche) 2) il sistema è risolto per determinare le variabili incognite Le equazioni discretizzate si ottengono da quelle differenziali approssimando le derivate (o gli integrali) con espressioni in cui compaiono solo i valori nodali delle funzioni incognite. Esistono molti metodi per la discretizzazione dei problemi, fra i quali i più comuni sono il metodo alle differenze finite ed il metodo agli elementi finiti. Il metodo alle differenze finite utilizza una approssimazione locale di un operatore differenziale costituita da un operatore differenza. Il metodo agli elementi finiti tenta di utilizzare funzioni note (di cui dunque sono note a priori le derivate) per approssimare le funzioni incognite. Molto spesso le funzioni di tentativo sono differenti nei diversi sotto-domini. Esempio: discretizzazione dell’eq. di Poisson con il metodo alle differenze finite (caso monodimensionale) i-2 i-1 i i+1 i+2 10 m 0 Assumendo per il potenziale un andamento lineare fra nodi adiacenti, cioè: x i i 1 i d 2 2 dx Si x xi xi 1 xi scritta nell’intorno dell’ascissa xi diventa i 1 i i i 1 xi 1 xi xi xi 1 1 Si xi xi1 2 xi 1 xi 2 dx Assumendo per la densità di carica un andamento costante fra nodi adiacenti, si ottiene: i 1 i i i 1 xi 1 xi xi xi 1 xi 1 xi 1 2 Si i Equazioni algebriche come la precedente vanno scritte in tutti gli N nodi del dominio, ottenendo N equazioni nelle N incognite i. Le condizioni al contorno sono, generalmente, i potenziali applicati ai nodi estremi. Il programma PISCES, sviluppato presso l’Università di Stanford (CA), utilizza un metodo di soluzione numerica per risolvere problemi bidimensionali Run-time Output Structure Files PISCES Log Files POSTMINI Command File Solution Files PISCES-II takes its input from a user specified disk file. Each line is a particular statement, identified by the first word on the card. The remaining parts of the line are the parameters of that statement. If more than one line of input is necessary for a particular statement, it may be continued on subsequent lines by placing a plus sign (+) as the first non-blank character on the continuation lines. Parameters may be one of three types : numerical, logical or character. Numerical parameters are assigned values by following the name of the parameter by an equal sign (=) and the value. Character parameters are assigned values by following the name of the parameter by an equal sign (=) and a sequence of characters. The presence of a logical value indicates TRUE while a logical value preceded by a caret (ˆ) indicates FALSE. The order of occurrence of cards is significant in some cases. Be aware of the following dependencies: - The MESH card must precede all other cards, except TITLE, COMMENT and OPTIONS. - When defining a rectangular mesh, the order of specification is MESH X.MESH (all) Y.MESH (all) ELIMINATE SPREAD REGION ELECTRODE ELIMINATE and SPREAD cards are optional but if they occur they must be in that order. - DOPING cards must follow directly after the mesh definition Unless solving for the equilibrium condition, a previous solution must also be loaded to provide an initial guess. - CONTACT cards must precede the SYMBOLIC card. - Physical parameters may not be changed using the MATERIAL, CONTACT or MODEL cards after the first SOLVE or LOAD card is encountered. The MATERIAL and CONTACT cards precede the MODEL card. ESEMPIO: UN RESISTORE mesh rect nx=40 ny=28 outfile=resistor.mesh x.m x.m y.m y.m n=1 n=40 n=1 n=28 l=0 l=2 l=0 l=2 r=1 r=1 r=1 r=1 region num=1 ix.l=1 ix.h=40 iy.l=1 iy.h=28 silicon elec num=1 ix.l=1 ix.h=4 iy.l=1 iy.h=1 elec num=2 ix.l=20 ix.h=24 iy.l=1 iy.h=1 1, 1 40, 0 1, 7 13, 7 doping uniform p.type conc=2e17 reg=1 contact all neutral symbolic newton carrier=0 method itlim=50 p.tol=1e-5 c.tol=1e-5 model srh solve ini symbolic newton carrier=2 model srh method itlim=20 p.tol=1e-5 c.tol=1e-5 trap log ivfile=car_iv solve v2=0.2 vstep=0.2 nstep=20 electr=2 proj solve V2=4.4 outfile=res44V.sol currents