An improved profileometry data collection and analysis system employing
software that performs clustering analysis on library data stored in
memory that represent semiconductor chip wafer profiles, for use in
matching real-time data signals from data collected by profileometry
instruments. To better perform a match in real-time between the incoming
real-time data signals and the profile library data, cluster analysis is
performed on the library data to partition the library data into clusters,
and to extract representative cluster data points of the clusters. The
representatives of the clusters are stored in primary memory (e.g., RAM),
while the data forming the clusters are stored in secondary memory (e.g.,
a hard drive). A real-time data signal is then first compared to the
representative cluster data points, and when a match is made with a
particular representative cluster data point, the cluster associated with
the representative cluster data point is loaded from secondary memory into
primary memory. Next a further search is made with the incoming real-time
data signal to find the closest match to the data in the cluster. In this
way the entire library data does not have to be searched sequentially, and
the entire library does not have to reside in primary memory in order to
be quickly searched, which both conserves time and primary memory.
Techniques are disclosed to further refine special cases of points
residing on the boundary of the cluster. In a preferred embodiment, the
partitioning method for the cluster is based on the T. Gonzalez algorithm.
Un système profileometry amélioré de collecte et d'analyse de données utilisant le logiciel qui exécute l'analyse groupante sur des données de bibliothèque entreposé dans la mémoire qui représente des profils de gaufrette de morceau de semi-conducteur, parce que dans l'utilisation en assortissant les signaux en temps réel de données des données rassemblées par les instruments profileometry. Pour exécuter mieux une allumette en temps réel entre les signaux en temps réel entrants de données et les données de bibliothèque de profil, l'analyse de faisceau est exécutée sur les données de bibliothèque pour diviser les données de bibliothèque dans des faisceaux, et pour extraire les points de repères représentatifs de faisceau des faisceaux. Les représentants des faisceaux sont stockés dans la mémoire centrale (par exemple, RAM), alors que les données formant les faisceaux sont stockées dans la mémoire secondaire (par exemple, une commande dure). Un signal en temps réel de données est alors premier comparé aux points de repères représentatifs de faisceau, et quand une allumette est faite avec un point de repères représentatif particulier de faisceau, le faisceau lié au point de repères représentatif de faisceau est chargé de la mémoire secondaire dans la mémoire centrale. Après une autre recherche est faite avec le signal en temps réel entrant de données pour trouver l'allumette la plus étroite aux données dans le faisceau. De cette façon les données entières de bibliothèque ne doivent pas être recherchées séquentiellement, et la bibliothèque entière ne doit pas résider dans la mémoire centrale afin de pour être rapidement recherchée, que toutes les deux conservent le temps et la mémoire centrale. Des techniques sont révélées pour raffiner plus loin les caisses spéciales de points résidant sur la frontière du faisceau. Dans un mode de réalisation préféré, la méthode de division pour le faisceau est basée sur l'algorithme de T. Gonzalez.