L'évaluation de la fiabilité des dispositifs et des interconnexions dans les technologies semi-conductrices est généralement réalisée à des fins de certification technologique et de surveillance périodique, sur des échantillons relativement petits (de quelques unités à quelques dizaines) par condition. Les données de production en série peuvent être utilisées dans le temps pour évaluer la fiabilité diélectrique par des mesures de tension de claquage à rampe variable sur des structures de test à lignes de marquage. Au fil du temps, cette méthode permet d'obtenir une vision détaillée du comportement diélectrique, incluant une combinaison de mécanismes intrinsèques et extrinsèques affectant son intégrité. En particulier, les valeurs aberrantes ou les queues de distribution à faible taux de défaillance peuvent être détectées et corrigées, évitant ainsi des risques pour la qualité sur le terrain.
Pour des raisons pratiques, la montée en tension peut être interrompue à une tension cible afin de réduire la durée du test et d'éviter d'endommager les cartes de test et les aiguilles, ce qui peut entraîner la censure de quelques points de données. L'ajustement de grands ensembles de données avec un petit nombre de points censurés peut engendrer des problèmes de convergence, conduisant à des paramètres d'ajustement incorrects et à l'absence d'intervalles de confiance, tout en posant d'importants défis de calcul.
Ce travail explore ces défis avec la plateforme JMP Life Distribution et examine des alternatives et des solutions pour permettre une analyse, un ajustement et une extrapolation corrects.
Bonjour à la communauté JMP. Je m'appelle Mehul Shroff et je travaille chez NXP Semiconductors à Austin, au Texas. Avec Don McCormack de JMP, nous allons présenter une étude sur l'évaluation de la fiabilité diélectrique dans la fabrication des semi-conducteurs.
Pour introduire le sujet, voici un schéma d'un transistor semi-conducteur de base appelé MOSFET. Sa structure comprend un diélectrique de grille qui isole la grille du canal et qui joue le rôle d'élément de commutation. La grille contrôle le flux des porteurs de charge dans le canal. L'intégrité du diélectrique de grille est cruciale pour la fiabilité du dispositif sur le terrain. Une approche possible consiste à réaliser des études de claquage sous tension croissante lors de la production en grande série. Ces mesures permettent de détecter les dérives et les défauts du diélectrique de grille. Elles sont généralement effectuées sur des structures de test à lignes de marquage, où les surfaces sont réduites, mais où la taille des échantillons peut augmenter progressivement. Dans le domaine des semi-conducteurs, la qualité sur le terrain est souvent décrite par la fameuse courbe en baignoire : le taux de défaillance observé diminue initialement avec le temps, puis augmente par la suite. Ce phénomène est dû à l'action de plusieurs mécanismes.
Les premiers mécanismes, appelés mécanismes de fiabilité extrinsèque, concernent principalement les défaillances précoces telles que les défauts latents et la mortalité infantile. Nous pouvons considérablement réduire ce risque grâce à divers contrôles et tests effectués avant l'expédition des composants. Les suivants regroupent les défaillances constantes ou aléatoires, comme les erreurs transitoires, le verrouillage et les décharges électrostatiques. Enfin, les derniers mécanismes de fiabilité intrinsèque se concentrent sur l'usure du dispositif, notamment des diélectriques, qui se produit et s'accentue avec le temps. Lors de la collecte de données sur la rupture diélectrique, nous souhaiterions généralement les représenter par une distribution de Weibull, car il s'agit de la distribution idéale. Cependant, en pratique, nos distributions sont souvent mixtes, comme le montre cet ensemble de données. On peut observer une queue extrinsèque due à des défauts d'amincissement local, la majeure partie des données correspondant, idéalement, à une rupture intrinsèque ou naturelle. Mais cela peut être compliqué par des variations de processus telles que celles illustrées ici dans cette carte de plaquette où l'épaisseur du diélectrique de grille varie sur la plaquette, entraînant des différences dans la rupture intrinsèque et la courbure que nous observons du côté haut.
Ensuite, certains sites ne présentent pas de défaillance pendant notre temps de test ou sous notre tension maximale.
Pour éviter d'endommager l'aiguille de la sonde et limiter la durée du test, nous l'interrompons. Ces données constituent alors notre source d'information. Pourquoi est-il nécessaire d'ajuster ces données ? Principalement pour pouvoir suivre l'évolution des dérives au fil du temps, qui entraînent des modifications des paramètres. Nous voulons comprendre l'impact des changements ou améliorations de processus et être en mesure de prédire un comportement à faible PPM pour des applications à haute fiabilité, comme dans le secteur automobile. Or, nous constatons que lorsque nous essayons d'ajuster ces distributions mixtes, nous rencontrons souvent des problèmes de convergence. Par conséquent, nous n'avons pas confiance dans les outils, comme illustré ici : nous obtenons un ajustement nominal, mais pas la fiabilité des outils. Cela peut être dû à une combinaison de facteurs : grands ensembles de données, distributions imparfaites ou mixtes et censure. Voici un exemple avec les mêmes données, mais avec une distribution comportant de la censure, pour lequel la convergence est impossible. Si nous traitons les données censurées comme des données défaillantes (ce qui est manifestement incorrect, mais à titre d'illustration), nous parvenons à obtenir la convergence.
On constate cependant que l'ajustement est légèrement moins bon qu'auparavant et ne correspond pas exactement à la distribution intrinsèque attendue. Il s'agit simplement d'un exemple illustrant l'influence des données censurées sur notre capacité à ajuster ces données.
Voici un exemple d'amélioration de processus : un problème de connexion entre la grille et la source du transistor entraînait une forte persistance du courant extrinsèque. Grâce à une série d'améliorations, nous avons considérablement réduit ce problème. On constate ici que dans un jeu de données, la présence de points censurés a empêché la convergence. Dans l'autre jeu de données, en l'absence de points censurés, la convergence s'est déroulée sans problème. Bien que l'amélioration soit visuellement perceptible, il est impossible de l'évaluer statistiquement. On observe le même phénomène dans nos distributions : la distribution moyenne évolue légèrement, mais les minima à chaque point sont nettement améliorés, comme le montrent l'échelle et le dégradé de couleurs.
Nous avons repris les mêmes données qu'auparavant et constaté le même problème de convergence. Cette fois-ci, nous avons utilisé un jeu de données différent, avec deux versions du processus, l'une légèrement meilleure que l'autre, bien que les deux présentent un fort effet de queue. Cependant, les ajustements intrinsèques différaient. Dans ce cas, les deux modèles comportaient des données censurées, et pourtant, ils ont convergé. Pour vérifier si cela était lié à la taille du jeu de données, nous avons multiplié chaque valeur par 10 environ afin de conserver la même distribution, et comparé les résultats dans cette analyse. Malgré l'augmentation du nombre de points censurés et du nombre total de points de données, la convergence a été obtenue. Nous avons donc pu écarter la taille du jeu de données comme facteur déterminant. Nous avons conclu que la convergence était due aux facteurs d'échelle et de forme de la loi de Weibull.
Je cède maintenant la parole à mon co-auteur, Don. Don, je vous en prie. Merci.
Merci, Mehul. Je vais passer en mode diaporama et nous pourrons commencer. Même si nous parlons ici de la fabrication de semi-conducteurs, cela s'applique en réalité à toute situation où l'on collecte de grandes quantités de données et où divers facteurs peuvent influencer les mécanismes de défaillance. Comme je l'ai dit, le fait que nous parlions de données de semi-conducteurs ne signifie pas que cela ne concerne que ce domaine.
Parlons un peu du fonctionnement de la plateforme Life Distribution, car c'est celle que nous utilisons principalement. Cela nous permettra de mieux comprendre son fonctionnement et les causes possibles de ces mauvais ajustements et de ces problèmes de non-convergence. Commençons par préciser que, avec Life Distribution, nous cherchons à optimiser une fonction, plus précisément la fonction de vraisemblance. L'important avec la vraisemblance, c'est qu'elle nous fournit les estimations de paramètres les plus probables, ou celles ayant la plus forte probabilité compte tenu des données. C'est essentiel, car cette approche est basée sur les données. L'autre avantage des fonctions de vraisemblance et de la distribution de Weibull est que, comme cette dernière ne comporte que deux paramètres (alpha et bêta), le problème est très facile à visualiser.
Si vous regardez le graphique de gauche, il s'agit simplement de la fonction de vraisemblance représentée en trois dimensions, avec β et α en abscisse et en ordonnée. Notre objectif est de trouver le minimum de ce graphique. En observant le graphique, on constate que, quelles que soient les valeurs initiales dans l'espace des paramètres, la convergence vers ce minimum est très rapide. Lorsque les données se comportent bien, la convergence est rapide et fluide. La question est maintenant de savoir ce qui a mal tourné ou ce qui a provoqué le problème de non-convergence observé dans les données dont parlait Mehul. Dans la plupart des cas, cela est dû à des observations non représentatives du modèle sous-jacent. On pense souvent en premier lieu aux valeurs aberrantes ; il est donc possible que des valeurs aberrantes dans les données soient à l'origine du problème.
Les données peuvent provenir de plusieurs sources. Il peut exister plusieurs mécanismes de défaillance, et ceux-ci peuvent faire partie de l'ensemble de données.
Pour être juste, honnête et complet, il est évident que le modèle sous-jacent pourrait être erroné. Par exemple, la distribution de Weibull n'était peut-être pas la plus appropriée. Nous allons partir du principe que, compte tenu de notre bonne compréhension de la physique des dispositifs, la distribution de Weibull est effectivement la plus adaptée dans ce cas, et donc écarter cette dernière possibilité. Quelles sont les pistes à explorer ? Sachant que certaines de nos données ne sont pas représentatives, comment pouvons-nous, avec les plateformes JMP, améliorer notre modèle ou diagnostiquer nos problèmes ? Comment modifier l'algorithme ou les valeurs des paramètres ? Cette fonctionnalité n'est pas directement disponible dans Life Distribution, mais JMP propose une autre plateforme performante, Nonlinear, qui offre une plus grande flexibilité. Lorsque je rencontre ce type de problèmes, j'utilise Nonlinear pour identifier et supprimer les valeurs non représentatives du modèle sous-jacent principal. JMP propose de nombreux outils pour cela.
Je vais vous présenter un outil que vous ne connaissez peut-être pas : l’ajustement paramétrique de la survie. Il permet d’utiliser un filtre de données pour identifier les observations problématiques.
Enfin, nous pourrions trouver et construire un modèle plus représentatif. Cela pourrait évidemment se faire à l'aide de la plateforme Nonlinear. Cependant, nous allons utiliser une fonctionnalité beaucoup plus simple de la plateforme Life Distribution : Fit Mixture. Pour rappel, voici un bref récapitulatif des outils. Nous allons examiner la plateforme Nonlinear, puis Fit Mixtures au sein de la plateforme Life Distribution, et enfin Fit Parametric Survival.
Passons aux exemples. Je vais commencer par un exemple très simple. J'ai simulé des données à partir d'une distribution de Weibull, rien de compliqué, c'est très simple. Cependant, je vais ajouter une valeur aberrante aux données. Voici mes données simulées avec la valeur aberrante. La majeure partie des données comprenait 700 000 observations. L'une d'elles était la valeur aberrante, celle-ci, à l'écart. On pourrait penser qu'elle est sans importance, facile à visualiser et à extraire des données. Cependant, cela pose un problème avec la plateforme Life Distribution.
Si j'exécute ce modèle avec la plateforme Life Distribution, vous remarquerez des problèmes de non-convergence. Tout cela est dû à cette valeur aberrante située à l'extrémité droite de la distribution. Que faire dans ce cas ? Il s'avère que Life Distribution me permet d'atteindre presque le résultat souhaité. Je peux utiliser la plateforme Nonlinear pour terminer. Ouvrons Nonlinear. La principale difficulté avec Nonlinear est qu'il faut connaître la forme de la fonction de log-vraisemblance. On trouve de nombreuses ressources à ce sujet dans la littérature. Bien sûr, si vous connaissez quelqu'un ayant des connaissances en statistiques, il pourra vous aider à déterminer ces distributions. J'ai ma fonction de log-vraisemblance dans l'une des colonnes de mon jeu de données, juste ici. Je vais utiliser la plateforme Nonlinear. Je vais commencer par les estimations de paramètres obtenues avec Life Distribution. Je vais commencer avec une version bêta d'environ 35, et je vais commencer avec mon alpha d'environ 5,6, et je vais juste cliquer sur Go.
Il s'avère qu'avec ce niveau de contrôle, je suis capable de converger et d'obtenir des estimations de paramètres.
Si je calcule la log-vraisemblance, je constate que Life Distribution s'en approche vraiment. Il lui manque juste une dernière étape. J'utilise la plateforme Nonlinear pour effectuer ce calcul. Cela dit, des problèmes peuvent subsister. Voici un autre ensemble de données. Permettez-moi de vous en montrer le graphique. Il est, là encore, presque identique au premier exemple. La seule différence est que j'ai déplacé la valeur aberrante plus à droite. Évidemment, si j'essaie d'importer ces données dans Life Distribution, je rencontre les mêmes problèmes qu'avec le premier ensemble. Si j'importe ces données dans Nonlinear et que je lance le calcul de convergence, je reçois un message d'avertissement indiquant que la convergence est réussie, mais il manque une valeur dans le résultat de la formule de perte. Si j'enregistre ces estimations, et que je consulte la colonne correspondante de mon deuxième exemple, pour deux observations (deux de mes intervalles), il est impossible de calculer la log-vraisemblance.
Le problème qui se pose avec la plateforme Life Distribution est que lorsque j'ai des observations qui se situent très à droite de la distribution, la fonction de log-vraisemblance est invalidée.
Je n'ai pas le temps de détailler précisément quand cela se produit. Dans notre présentation, une diapositive explique comment calculer la position de ces valeurs. Voilà ce qui se passe lorsqu'on a des valeurs aberrantes très éloignées dans la distribution.
Passons au deuxième exemple. Ici, la situation est légèrement différente. Au lieu d'une seule observation isolée, imaginons que nous ayons deux ensembles de données, correspondant à deux mécanismes de défaillance. Le premier, le mécanisme principal, est simulé à partir des mêmes données. Le second, le mécanisme secondaire, représente environ 10 % des observations de l'ensemble de données initial. Au lieu de les séparer nettement, j'obtiens des données comme celles-ci, et je vais simplement transformer mon graphique à barres juxtaposées en un graphique à barres empilées. En résumé, j'observe une distribution légèrement plus étalée que celle attendue d'une distribution de Weibull. Supposons que je ne le sache pas en me basant uniquement sur les données et que j'utilise la plateforme de distribution de durée de vie.
Il s'avère que je peux ajuster une distribution de Weibull, une seule distribution de Weibull, à ces données. Cependant, en observant mon graphique de comparaison des distributions, on constate un écart important entre le modèle et les données. Malgré la convergence, l'ajustement reste très mauvais. Prenons l'exemple d'une compréhension suffisante du processus pour identifier plusieurs mécanismes de défaillance. Je peux alors accéder à la plateforme de distribution de durée de vie et sélectionner un modèle mixte. Je vais commencer avec deux distributions de Weibull. Je peux préciser si elles sont superposées, légèrement séparées ou complètement séparées. Je vais supposer qu'elles sont parfaitement superposées, ce qui donne un modèle relativement satisfaisant. D'ailleurs, je vais également modifier l'échelle de cet axe pour qu'elle corresponde à celle des distributions de Weibull. Voilà. Cette opération est possible avec n'importe quel graphique dans JMP.
Vous constaterez que ce modèle s'ajuste nettement mieux. En fait, si je remonte en haut, j'ai ma comparaison de modèles. J'ai remarqué que l'ajustement de la seconde distribution de Weibull à mes données est bien meilleur.
Comme pour la première méthode, cette approche présente des limites. J'ai donc créé un jeu de données pour illustrer les situations à risque et les solutions possibles. Dans ce cas précis, j'ai une seconde distribution. Elle ressemble beaucoup à la première, et je vais les comparer côte à côte. La seule différence réside dans le nombre d'observations : premièrement, comme dans le cas des valeurs aberrantes que j'ai repoussées vers les extrémités de la distribution ; deuxièmement, et c'est moins évident sur les graphiques, le nombre d'observations dans la queue supérieure est considérablement réduit, environ cent fois moins. J'ai utilisé environ 70 000 observations dans le premier jeu de données simulé, contre seulement un millier, peut-être un peu plus. Le jeu de données est donc nettement plus petit. Si je l'ajustais à l'aide de la distribution de vie, l'ajustement serait meilleur. Cependant, mes problèmes de non-convergence persistent.
De plus, lorsque j'essaie d'ajuster mes mélanges, en l'occurrence mes deux Weibulls, je rencontre des problèmes de non-convergence.
Je pourrais certainement essayer différents ensembles, différentes combinaisons d'observations, de distributions. Ce serait un peu tâtonner. Le problème, c'est que j'ai ces observations. J'ai un petit ensemble de données. Il est très éloigné des valeurs extrêmes. Il doit y avoir de meilleures approches pour modéliser cela. En fait, comme ces données sont séparées, si on regarde les observations dans cette région de notre espace, il n'y a aucune observation. On peut supposer que ces observations proviennent d'une de mes distributions et que les autres observations proviennent de mon autre distribution. Je peux le faire. Je peux modéliser ces deux distributions différemment. C'est assez simple. Il me suffit d'exclure et de masquer la partie de l'ensemble de données que je souhaite, puis d'exécuter la distribution correspondante, que j'ai déjà préconfigurée. Vous voyez, il s'avère que dans ce cas, et dans ce cas-ci, j'ai ajusté...
Je vais recommencer. Il faut que je supprime, masque ou exclue toutes mes observations.
Voilà. Masquer et exclure. Recommençons. Encore une fois. Il y a un problème avec mon script, nous allons donc procéder manuellement. Masquer et exclure. Nous allons accéder à ma plateforme de distribution de la durée de vie et saisir les fréquences de l'exemple 3, nos bornes inférieure et supérieure, puis ajuster la distribution de Weibull. Il s'avère que cela fonctionne, même si je n'inclus pas les deux ensembles de données. À ce stade, je reviendrais probablement en arrière. J'inverserais probablement les observations et réajusterais l'autre partie des données. Lorsqu'il y a une séparation claire entre les ensembles de données, je peux simplement ajuster des modèles distincts pour chacun. Passons à notre troisième et dernier exemple. Ce sont les données que Mehul a eu la gentillesse de partager avec moi : des données de semi-conducteurs légitimes, issues de la réalité, avec toutes les imperfections et les irrégularités que l'on retrouve habituellement dans ce domaine.
Si vous regardez ceci, vous verrez que c'est très différent de ce que nous avons vu par le passé.
J'ai des observations non seulement dans la queue de distribution droite, mais aussi dans la queue gauche. Je n'obtiens pas la séparation nette que j'ai dans d'autres ensembles de données. Certes, je pourrais faire des choix arbitraires, par exemple ajuster une distribution de durée de vie à ces observations, peut-être quelques observations en haut et le milieu. Mais ce n'est pas toujours l'approche idéale. J'ai tout de suite constaté, en essayant de configurer la plateforme non linéaire pour ajuster un modèle de mélange, que je ne peux pas calculer la vraisemblance pour un certain nombre d'intervalles. C'est donc un ensemble de données très problématique. Outre la possibilité d'ajuster des distributions de durée de vie distinctes à des parties de l'ensemble de données, une autre option serait d'avoir accès à un ensemble de données plus riche, avec davantage d'informations sur leur provenance. Je pourrais ainsi peut-être identifier l'origine du problème. N'oubliez pas que nous travaillons ici avec environ deux mois de données, je crois.
Cela provient de plusieurs lots, de plusieurs plaquettes, et de centaines de milliers d'observations dans cet ensemble de données. Il est probable qu'il y ait de multiples sources de défaillance.
La question est de savoir si certaines parties de ces données sont réellement à l'origine du problème. J'ai donc examiné le jeu de données (et je vais vous le présenter). Je tiens à remercier Mehul pour le partage de ces informations. Je n'ai utilisé qu'un sous-ensemble des données, faute de temps pour l'ajustement. Voici les données originales, disponibles en deux versions et quatre lots différents. Chaque lot contient entre quelques plaquettes et une douzaine environ. D'où viennent les problèmes ? Je vais utiliser une plateforme que vous connaissez probablement. Sinon, elle se trouve dans le menu « Analyser », sous « Fiabilité et survie », puis « Ajustement paramétrique de survie ». Si vous connaissez l'outil « Ajuster un modèle », il est très similaire. Je peux le configurer comme une distribution de la lumière, avec des limites inférieure et supérieure en cas de censure par intervalle. Contrairement au modèle d'ajustement, je peux spécifier des facteurs non seulement liés à ma localisation, c'est-à-dire des facteurs qui influencent l'emplacement du centre des données, mais aussi des facteurs qui influencent la dispersion des données, c'est-à-dire l'échelle.
J'ai déjà configuré tout ça. Je vais garder ce modèle très simple et exécuter l'ajustement paramétrique de survie. Vous remarquerez tout de suite toutes ces valeurs manquantes. C'est dû à une non-convergence. L'avantage de cette plateforme, c'est que je peux utiliser le filtre de données pour essayer de diagnostiquer ce problème. Je vais donc accéder au filtre de données (configuré comme filtre conditionnel) et cliquer sur « Nouveau ». Vous verrez que pour tous les nouveaux lots, j'obtiens des estimations. Seuls les anciens lots posent problème. Voyons si je peux creuser un peu plus. Si j'examine les lots AAA, c'est problématique. Je sais maintenant que le problème se situe quelque part dans ce lot. Je vais passer à la plaquette 1. Ça a l'air bon. Plaquettes 2 et 3. Voilà un de mes problèmes.
Il y a un problème avec la plaquette numéro quatre. À ce stade, je pourrais probablement la retirer. Je pourrais sans doute l'examiner avec tous les outils que nous avons vus jusqu'à présent.
Il me faudra peut-être consulter à nouveau ma base de données pour déterminer si le traitement de ce lot a influencé sa configuration. Il s'agit assurément d'un lot différent. Toutes mes autres plaquettes sont conformes, à l'exception de la toute dernière. La plaquette 15 présente également un problème. L'avantage de cette approche réside dans le fait que je dispose d'un outil de diagnostic qui me permettrait d'analyser les données plus en détail si j'avais accès à une source de données plus complète.
Pour conclure, les données de fiabilité à grande échelle sont courantes dans l'industrie des semi-conducteurs. Elles constituent un outil précieux pour identifier les dérives, notamment pour les produits de haute qualité présentant un taux de défauts extrêmement faible (ppm). Comme nous l'avons vu, les distributions sont très complexes et incluent souvent plusieurs mécanismes de défaillance et plusieurs distributions. De ce fait, nous devons recourir à des approches d'ajustement légèrement plus novatrices afin non seulement d'ajuster des modèles pertinents à ces données, mais aussi de diagnostiquer les problèmes potentiels. Comme toujours, et c'est sans doute le plus important, l'expertise du domaine est cruciale pour déterminer, grâce à la connaissance historique et des processus, la voie à suivre.
Merci pour votre temps, et j'espère que cette discussion vous a été utile. Merci.