La valutazione dell'affidabilità di dispositivi e interconnessioni nelle tecnologie dei semiconduttori viene in genere effettuata per la certificazione tecnologica e il monitoraggio periodico, utilizzando campioni relativamente piccoli (da una sola cifra a decine) per condizione. I dati di produzione in serie possono essere utilizzati nel tempo per valutare l'affidabilità dielettrica mediante misurazioni di tensione di rottura a rampa su strutture di prova a corsia di scrittura. Nel tempo, ciò può fornire una visione dettagliata del comportamento dielettrico, includendo una combinazione di meccanismi intrinseci ed estrinseci che influenzano l'integrità dielettrica. In particolare, è possibile rilevare e correggere anomalie o code con bassi tassi di guasto, che altrimenti potrebbero comportare rischi per la qualità del campo.
Per motivi pratici, la rampa può essere interrotta a una tensione target per ridurre i tempi di test ed evitare danni alle schede di prova e agli aghi, con conseguente censura di un numero limitato di punti dati. L'adattamento di grandi set di dati con un numero limitato di punti dati censurati può comportare problemi di convergenza, con conseguenti parametri di adattamento errati e intervalli di confidenza insufficienti, oltre a presentare notevoli difficoltà computazionali.
Questo lavoro esplora queste sfide con la piattaforma JMP Life Distribution ed esamina alternative e soluzioni per consentire analisi, adattamento ed estrapolazione corretti.
Ciao, community JMP. Mi chiamo Mehul Shroff e lavoro presso NXP Semiconductors ad Austin, Texas. Insieme a Don McCormack di JMP, presenteremo uno studio sulla valutazione dell'affidabilità dielettrica nella produzione di semiconduttori.
Per introdurre l'argomento, ecco un'immagine di un transistor a semiconduttore di base, noto come MOSFET. All'interno della struttura, abbiamo un dielettrico di gate che viene utilizzato per isolare il gate dal canale, e questo è ciò che funge da elemento di commutazione nel transistor. Il gate controlla il flusso di portatori di carica nel canale. L'integrità del dielettrico di gate è fondamentale per l'affidabilità del dispositivo sul campo. Un modo per verificarlo è attraverso studi di breakdown a rampa di tensione in produzione su larga scala, misurazioni che possono aiutarci a rilevare derive e problemi di difettosità nel dielettrico di gate. Questo viene in genere eseguito su strutture di test scribe-line, dove abbiamo aree più piccole, ma nel tempo possiamo ottenere campioni di dimensioni maggiori. Nel mondo dei semiconduttori, pensiamo alla qualità sul campo in termini della nota curva a vasca da bagno, dove il tasso di guasto osservato diminuisce inizialmente nel tempo per poi aumentare in seguito. Ciò è dovuto al contributo di alcuni diversi gruppi di meccanismi.
Il primo, noto come meccanismo di affidabilità estrinseca, riguarda principalmente guasti precoci come difetti latenti e mortalità infantile. Possiamo ridurre notevolmente questo rischio attraverso vari screening e test che eseguiamo prima di spedire i componenti. Il secondo comprende guasti costanti o casuali come errori soft, latch-up, ESD. L'ultimo comprende meccanismi di affidabilità intrinseca che si concentrano sull'usura del dispositivo, inclusi i dielettrici, che si verifica nel tempo e aumenta con il tempo. Quando raccogliamo dati di breakdown dielettrico, in genere vorremmo rappresentarli con una Weibull perché è quella la distribuzione ideale. Ma in pratica, le nostre distribuzioni sono spesso miste, come mostra questo set di dati, dove possiamo avere una coda estrinseca dovuta a difetti di assottigliamento locale; in tal caso, la maggior parte dei nostri dati, si spera, è dovuta a breakdown intrinseco o naturale. Ma tutto questo può essere complicato da variazioni di processo come quelle mostrate qui in questa mappa del wafer, dove lo spessore del dielettrico del gate varia sul wafer, causando differenze nella rottura intrinseca e nella curvatura che vediamo sul lato alto.
Quindi alcuni siti non falliscono entro i tempi di prova o la tensione massima.
Per evitare danni all'ago della sonda e mantenere gestibile il tempo di test, interrompiamo il test, che quindi diventa la nostra percezione dei dati. Ora, perché dobbiamo adattarlo? Principalmente perché vogliamo essere in grado di monitorare le derive nel tempo che si traducono in cambiamenti nei parametri. Vogliamo comprendere l'impatto delle modifiche o dei miglioramenti di processo e vogliamo proiettare un comportamento a basso PPM per applicazioni ad alta affidabilità come il settore automobilistico. Ma quello che vediamo è che quando cerchiamo di adattare queste distribuzioni miste, spesso ci imbattiamo in problemi per cui non riusciamo a convergere e quindi non otteniamo fiducia negli strumenti, come mostrato qui, dove otteniamo l'adattamento nominale, ma non la fiducia negli strumenti. Ciò può essere dovuto a una combinazione di grandi set di dati, distribuzioni imperfette o miste e censura. Ecco un esempio degli stessi dati in cui abbiamo una distribuzione con una certa censura e non riusciamo a convergere. Qui, se trattiamo i dati censurati come dati fallimentari, il che è chiaramente errato, ma solo a scopo illustrativo, siamo in grado di farli convergere.
Ma vediamo che l'adattamento stesso è leggermente peggiore di quello che avevamo prima e non si adatta perfettamente alla distribuzione intrinseca che ci aspetteremmo. Questo è solo un esempio per dimostrare che la presenza di dati censurati influisce sulla nostra capacità di adattare questi dati.
Ecco un esempio in cui abbiamo apportato un miglioramento al processo, in cui si è verificato un guasto tra il gate e il treno sorgente del transistor, con conseguente coda estrinseca piuttosto grave. Attraverso una serie di miglioramenti al processo, abbiamo sostanzialmente risolto il problema. Qui vediamo che in un set di dati avevamo alcuni punti censurati e non siamo riusciti a convergere. Nell'altro set di dati non avevamo punti censurati e siamo riusciti a convergere correttamente. Anche se possiamo dire visivamente che abbiamo avuto un miglioramento, non siamo in grado di giudicare statisticamente in cosa consiste. Possiamo osservare la stessa cosa qui nelle nostre distribuzioni, dove la distribuzione media cambia leggermente, non di molto, ma possiamo vedere che i minimi in ogni sito sono migliorati significativamente se si osserva la scala e il gradiente di colore.
Qui abbiamo preso gli stessi dati di prima e vediamo di avere lo stesso problema di convergenza. Qui abbiamo un set di dati diverso in cui avevamo anche due versioni del processo, una leggermente migliore dell'altra, sebbene entrambe mostrassero un tailing significativo. Tuttavia, c'era una differenza negli adattamenti intrinseci. In questo caso, entrambi avevano dati censurati, eppure entrambi convergevano. Per verificare se ciò fosse correlato alla dimensione del set di dati, abbiamo preso questo set di dati, lo abbiamo gonfiato ogni 10x per mantenere la stessa distribuzione e lo abbiamo confrontato in questa analisi. Anche se il numero di punti censurati e il numero totale di punti dati sono aumentati, siamo comunque riusciti a convergere. Sulla base di ciò, siamo stati in grado di escludere la dimensione del set di dati come fattore. Pensavamo che questo fosse dovuto alla scala di Weibull e ai fattori di forma.
A questo punto, vorrei passare la parola al mio coautore, Don, per il resto. Continua pure, Don. Grazie.
Grazie, Mehul. Passo alla modalità slide e iniziamo a parlare. Anche se stiamo parlando del contesto della produzione di semiconduttori, questo vale per qualsiasi caso in cui raccogliamo grandi quantità di dati e possono esserci diversi fattori che influenzano i meccanismi di guasto. Come ho detto, solo perché stiamo parlando di dati sui semiconduttori non significa che si applichi solo a essi.
Parliamo un po' di cosa succede con la piattaforma Life Distribution, perché è quella che utilizziamo principalmente. Giusto per dare un'occhiata più approfondita, per capire un po' cosa sta succedendo e cosa potrebbe causare questi adattamenti scadenti e questi problemi di non convergenza. Iniziamo dicendo che con Life Distribution stiamo cercando di ottimizzare una funzione, in particolare la funzione di verosimiglianza che stiamo esaminando. L'aspetto importante della verosimiglianza è che mi fornirà le stime dei parametri più probabili o con la probabilità più alta, dati i dati. Questo è l'aspetto importante perché questo approccio è basato sui dati. L'altro aspetto meraviglioso delle funzioni di verosimiglianza e della distribuzione di Weibull è che, poiché ci sono solo due parametri nella distribuzione di Weibull, alfa e beta, questo è un problema davvero facile da analizzare visivamente.
Se date un'occhiata al grafico a sinistra, questa è semplicemente la funzione di verosimiglianza tracciata in tre dimensioni, dove ho beta e alfa su X e Y. Quello che stiamo cercando di fare è trovare il punto di minimo, il minimo di quel grafico. Guardando il grafico, si può notare che, indipendentemente da dove si inizia sul grafico, qualunque siano i valori iniziali nello spazio dei parametri, si convergerà piuttosto rapidamente a quel punto di minimo. Quando i dati si comportano bene, le cose procedono rapidamente, senza intoppi. Ora, la domanda è: cosa è andato storto o cosa ha causato il problema di non convergenza che abbiamo visto nei dati di cui parlava Mehul? Nella maggior parte dei casi, gran parte di questo può essere ricondotto a osservazioni nel set di dati che semplicemente non sono rappresentative del modello di principio sottostante. Ora, ovviamente, la prima cosa a cui molte persone pensano sono i valori anomali, quindi posso avere valori anomali nei dati che causano problemi.
I dati possono provenire da più di una distribuzione. Potrei avere più meccanismi di errore, che possono far parte del set di dati.
Per essere onesti, onesti e completi, ovviamente, il modello sottostante potrebbe essere sbagliato. Ad esempio, forse la distribuzione di Weibull non era la migliore. Daremo per scontato che, poiché esiste una conoscenza abbastanza approfondita della fisica dei dispositivi secondo cui la distribuzione di Weibull è davvero la migliore da utilizzare in questo caso, scarteremo proprio quell'ultimo punto. Quali sono alcune possibili... Sapendo che alcuni dei nostri dati non sono rappresentativi, cosa possiamo fare nel contesto di alcune delle piattaforme JMP per aiutarci a adattare un modello migliore o magari diagnosticare i nostri problemi? Cosa significa modificare l'algoritmo o modificare i valori dei parametri? Ora, questo non è direttamente disponibile in Life Distribution, ma c'è un'altra fantastica piattaforma all'interno di JMP, Nonlinear, che mi permette di farlo. Un po' più di flessibilità rispetto a Life Distribution. A volte, quando mi imbatto in questi problemi, posso usare Nonlinear. Ovviamente posso trovare e rimuovere quei valori che non sono rappresentativi del modello sottostante principale. JMP offre molti strumenti che ci permettono di farlo.
Vi mostrerò uno strumento che potreste non conoscere: Fit Parametric Survival. Utilizza il filtro dati per trovare osservazioni problematiche nei dati.
Infine, potremmo trovare e costruire un modello più rappresentativo. Questo ovviamente potrebbe essere fatto utilizzando la piattaforma Nonlinear. Tuttavia, per riuscirci, utilizzeremo una parte molto più semplice della piattaforma Life Distribution, la Fit Mixture. Di nuovo, un riepilogo semplice e immediato degli strumenti. Esamineremo la piattaforma Nonlinear. Esamineremo le Fit Mixtures nella piattaforma Life Distribution e poi esamineremo anche la Fit Parametric Survival.
Passiamo agli esempi. Inizierò con un esempio molto semplice. Ho simulato dati da una distribuzione di Weibull, quindi niente di complicato, molto semplice. Tuttavia, quello che farò è aggiungere un valore anomalo ai dati. Ecco i miei dati simulati con il valore anomalo. Quindi 700.000 osservazioni costituivano la maggior parte dei dati. Un'osservazione era il valore anomalo, quindi questo qui. Ora, si potrebbe dire che è irrilevante, facile da visualizzare, estrarlo dai dati. Tuttavia, questo causa un problema con la piattaforma Life Distribution.
Se dovessi eseguire questo calcolo con la piattaforma Life Distribution, noterete che ho problemi di non convergenza. È tutto dovuto a questo valore anomalo proprio qui, nella coda di destra. Cosa posso fare in questi casi? A quanto pare, Life Distribution mi porta quasi a destinazione. Posso usare la piattaforma Non Linear per arrivare al resto. Apriamo Non Linear. L'unica difficoltà con Non Linear è che è necessario conoscere la forma della funzione Log Likelihood. Ce n'è molta disponibile in letteratura. Certamente, se conoscete qualcuno con una formazione statistica che possa aiutarvi a elaborare queste distribuzioni. Ho la mia Log Likelihood in una delle mie colonne, il mio set di dati proprio qui. Userò la piattaforma Non Linear. Quello che farò è iniziare con le stime dei parametri che ho ottenuto da Life Distribution. Inizierò con una beta di circa 35, poi inizierò con la mia alpha di circa 5.6 e cliccherò semplicemente su Vai.
A quanto pare, con questo livello di controllo, sono in grado di convergere e di arrivare a stime dei parametri.
Se dovessi effettivamente calcolare la verosimiglianza, vedrei che la distribuzione della vita ci è andata molto vicina. Semplicemente non ha raggiunto quell'ultimo passaggio. Utilizzo la piattaforma Nonlinear per farlo. Detto questo, potrebbero comunque esserci dei problemi. Qui ho un altro set di dati. Lasciate che vi mostri prima il grafico. Anche questo sembra quasi identico al primo esempio. L'unica differenza è che ho spostato quel valore anomalo più a destra. Ovviamente, se provassi a ottenere questo risultato con la distribuzione della vita, otterrei gli stessi problemi che ho riscontrato con il primo set di dati. Se dovessi importare questo risultato in Nonlinear ed eseguire la convergenza, ottengo un messaggio di avviso che indica che la convergenza è avvenuta, ma ho un risultato della formula di perdita con un valore mancante. Se dovessi salvare queste stime, e quello che vedrei se andassi sotto quella colonna con il mio secondo esempio, le due osservazioni, due di quelle osservazioni, due dei miei intervalli, non sarebbe possibile calcolare la verosimiglianza logaritmica.
Il problema che si verifica con la piattaforma Life Distribution è che quando ho queste osservazioni che si trovano molto sulla coda destra, la funzione di verosimiglianza del logaritmo viene interrotta.
Non ho tempo di entrare nei dettagli su quando esattamente ciò accade. Nella nostra presentazione, ce n'è una che mostra come calcolare dove potrebbero trovarsi quei valori. Ma questo è ciò che accade quando si hanno quei valori anomali che si trovano molto lontano nella coda.
Passiamo al secondo esempio. Qui abbiamo qualcosa di leggermente diverso. Invece di avere una sola osservazione che rimane in coda, diciamo di avere in realtà due set di dati. Abbiamo due meccanismi di errore. Ho il mio meccanismo di errore principale che è simulato dallo stesso set di dati. Poi ho questo meccanismo di errore secondario che rappresenta circa il 10% delle osservazioni che vedo nel set di dati originale. Invece di separarli in modo netto, ottengo dati che appaiono così, e trasformo il mio grafico a barre affiancate in un grafico a barre sovrapposte. In sostanza, quello che vedo è una distribuzione leggermente più corposa, un po' più corposa di quella che mi aspetterei di vedere da un grafico Weibull. Supponiamo che non lo sapessi semplicemente guardando i dati e che acceda alla piattaforma Life Distribution.
A quanto pare, posso adattare un Weibull, un singolo Weibull di questi dati. Ma guardando il mio grafico di distribuzione di confronto, c'è un disadattamento del modello piuttosto grave. Anche se ho avuto convergenza, ho un disadattamento del modello piuttosto grave. Ecco un caso in cui, diciamo, ho una comprensione del processo sufficiente per sapere di avere più meccanismi di errore. Quello che posso fare è entrare lì, nella piattaforma di distribuzione della vita, e potrei dire, ottenere una miscela. Qui inizierò con due Weibull. Posso specificare se sono uno sopra l'altro, se sono leggermente separati o se sono completamente separati. Darò per scontato che siano uno sopra l'altro e che si adattino a un modello ragionevolmente buono. In effetti, lasciatemi fare anche un'altra cosa. Modificherò questo asse in modo che sia sulla scala di Weibull. Ecco fatto. È possibile farlo con qualsiasi grafico in JMP.
Vedrete che questo modello si adatta notevolmente meglio. In effetti, se torno in alto, ho il mio confronto tra modelli. Ho notato che riesco ad adattare molto meglio la seconda distribuzione di Weibull ai miei dati.
Come con il primo metodo, ci sono fattori che possono compromettere questo approccio, e ho creato un set di dati per illustrare quando potreste iniziare a preoccuparvi e cosa potreste essere in grado di fare. In questo caso, ho una seconda distribuzione. Anche in questo caso, assomiglia molto alla prima distribuzione, e lasciatemi metterle una accanto all'altra, così possiamo confrontarle. L'unica differenza è che, in primo luogo, ho delle osservazioni, proprio come nel caso anomalo in cui le ho spostate più lontano nella coda. In secondo luogo, non così ovvio dai grafici, in quel secondo esempio ho considerevolmente meno osservazioni nella coda superiore, circa un centesimo di osservazioni. Credo di aver utilizzato circa 70.000 osservazioni in quel primo secondo set di dati simulato, e solo circa, credo, un migliaio di osservazioni, o forse poco più di un migliaio. Quindi un set di dati considerevolmente più piccolo. Se dovessi adattarlo usando la distribuzione della vita, in realtà l'adattamento sembrerebbe migliore. Tuttavia, ho ancora i miei problemi di non convergenza.
Inoltre, quando provo ad adattare le mie miscele, in questo caso, ho adattato i miei due Weibull, ho problemi di non convergenza.
Potrei certamente provare diversi set, diverse combinazioni di osservazioni, di distribuzioni. In quel caso, andrei a caccia e becchetta. In realtà, il problema qui è che ho queste osservazioni. Ho un piccolo set di dati. È spinto molto in là, sulla coda. Devono esserci approcci migliori per poter modellare tutto questo. A quanto pare, poiché questi dati sono separati, se diamo un'occhiata alle osservazioni in questa regione del nostro spazio, non ci sono osservazioni. Si potrebbe pensare che queste osservazioni possano provenire da una delle mie distribuzioni e il resto delle osservazioni. Il resto delle osservazioni proviene dall'altra mia distribuzione. Posso farlo. Posso modellare queste due diverse distribuzioni in modo diverso. È abbastanza semplice. Tutto quello che faccio è escludere e nascondere la parte del set di dati che voglio, e poi eseguo la distribuzione simile, e l'ho effettivamente preimpostata. Vedete, a quanto pare, in questo caso, e in questo caso, ho adattato...
Lasciami rifare l'operazione. Devo effettivamente cancellare o nascondere ed escludere tutte le mie osservazioni.
Ecco fatto. Nascondi ed escludi. Facciamolo ancora una volta ed eseguiamolo. Ancora una volta. Sta succedendo qualcosa con il mio script, quindi lo faremo manualmente. Nascondiamo ed escludiamo. Andiamo nella mia piattaforma di Distribuzione della Vita e inseriamo le frequenze dell'Esempio 3, i punti inferiore e superiore, e adattiamo la distribuzione di Weibull. A quanto pare, vediamo che questo, in effetti, si adatta ai dati quando non includo entrambi i set di dati. A questo punto, probabilmente tornerei indietro. Probabilmente invertirei le osservazioni e riadatterei l'altra parte dei dati. Quando c'è una netta separazione tra i set di dati, posso semplicemente adattare modelli separati per ciascuno. Passiamo al nostro terzo e ultimo esempio. Questi sono i dati che Mehul è stato così gentile da condividere con me in termini di dati legittimi sui semiconduttori, ovvero la vita reale, con tutte le distorsioni, le verruche e le imperfezioni che i dati di solito hanno.
Ora, se guardiamo la cosa, ci rendiamo conto che è molto diversa da ciò che abbiamo visto in passato.
Non ho solo osservazioni nella coda destra, ma anche in quella sinistra. Non ho quella netta separazione che ho negli altri set di dati. Ora, certo, posso prendere decisioni arbitrarie in termini di adattamento della distribuzione della vita a quelle osservazioni, magari un paio di osservazioni qui sopra e poi il centro delle osservazioni. Ma a volte questo non è proprio un approccio ideale. Vedo subito che ho provato a impostare la piattaforma non lineare per adattare un modello misto. Noterete che ci sono parecchi intervalli per i quali non riesco a calcolare la verosimiglianza. Quindi un set di dati molto problematico. Oltre a cercare di adattare le distribuzioni della vita separate a parti del set di dati, un'altra opzione sarebbe quella di avere accesso a un set di dati più ricco, con maggiori informazioni sulla provenienza di questi dati, e di riuscire a diagnosticare dove si trovava il problema. Ora, tenete presente che qui stiamo esaminando probabilmente circa due mesi di dati, credo.
Proviene da più lotti, più wafer, centinaia di migliaia di osservazioni in questo set di dati. È probabile che contenga molteplici fonti di meccanismi di guasto.
La domanda è: ci sono parti specifiche di quei dati che stanno davvero causando il problema con questo set di dati? Quello che ho fatto, e ora passo al set di dati. Di nuovo, voglio ringraziare Mehul per aver condiviso queste informazioni, e ho preso solo un sottoinsieme dei dati a causa di vincoli di tempo in termini di tempo necessario per l'adattamento. Ma questi sono i dati originali. Ci sono due versioni diverse. Ho quattro lotti diversi qui. Ogni lotto contiene da pochi a circa una dozzina di wafer. La domanda è: da dove derivano i problemi? Userò una piattaforma che spero tu conosca. In caso contrario, si trova nel menu Analizza, in Affidabilità e Sopravvivenza, Adatta Sopravvivenza Parametrica. Se hai familiarità con Adatta Modello, è molto simile ad Adatta Modello. Posso impostarlo come una distribuzione della luce, dove ho un valore inferiore e uno superiore quando ho la censura a intervalli. Diversamente dal modello di adattamento, posso specificare fattori non solo per la mia posizione, quindi fattori che influenzeranno dove si trova il centro dei dati, ma anche fattori che influenzeranno la distribuzione dei dati, la scala.
Ho già impostato tutto. Manterrò questo modello molto semplice ed eseguirò Fit Parametric Survival. Quando lo farò, noterete subito che ho tutti questi valori mancanti. Questo perché ho una non convergenza. Il bello di questa particolare piattaforma è che posso usare il filtro dati per cercare di diagnosticare il problema. Quello che farò è andare nel mio filtro dati, che ho impostato come filtro dati condizionale, e cliccare su "Nuovo", e noterete che con tutti i nuovi lotti ottengo delle stime. Sono solo i vecchi lotti che mi causano il problema. Vediamo se riesco ad approfondire un po'. Se guardo i lotti tripla A, quello è un problema. Ora so che è da qualche parte in questo lotto. Vado al wafer uno. Sembra a posto. Wafer due, tre. Ecco uno dei miei problemi.
C'è qualcosa che non va con il wafer quattro. A questo punto, potrei probabilmente tirarlo fuori. Potrei probabilmente dargli un'occhiata usando tutti gli strumenti che abbiamo visto finora.
Potrei dover tornare al mio archivio dati e capire se c'è qualcos'altro nel modo in cui questo lotto è stato elaborato che ha causato questa differenza. Ma questo è sicuramente un lotto diverso. Se esamino il resto dei miei wafer, sono tutti a posto, tranne quest'ultimo. Anche il wafer 15 è un problema. Ma il bello di questo approccio è che ho uno strumento diagnostico con cui potrei analizzare i dati in modo più approfondito se avessi una fonte dati più completa.
Concludiamo. In sintesi, i dati di affidabilità su larga scala sono comuni nel settore dei semiconduttori. Sono uno strumento prezioso per determinare le derive, in particolare nel caso di prodotti di alta qualità con una difettosità a bassissimo ppm. Come abbiamo visto, le distribuzioni sono molto complesse e spesso includono molteplici meccanismi di guasto e molteplici distribuzioni. Per questo motivo, dobbiamo affidarci ad approcci di adattamento leggermente più innovativi per poter non solo adattare i modelli, adattare modelli ragionevoli a questi dati, ma anche per diagnosticare potenzialmente i problemi presenti nei dati. Come sempre, e probabilmente la cosa più importante, la competenza in materia è incredibilmente importante in termini di affermazioni, storiche e di conoscenza dei processi ci indicano che questa è la direzione migliore da seguire.
Grazie per il tuo tempo e spero che questa chiacchierata ti sia stata utile. Grazie.