<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> Robert Murphy ( morfología ), Miembro del Personal Técnico, Micro Dispositivos Avanzados
Jason Paquette ( jason.paquette ), Ingeniero de Desarrollo de Producto, Micro Dispositivos Avanzados

Resumen - Para maximizar el uso de los recursos de diseño y minimizar el tiempo de comercialización, los diseños de sistema en chip (SoC) emplean una cantidad sustancial de reutilización de bloques funcionales. Esta reutilización proporciona la base para las comparaciones de rendimiento y rendimiento a nivel de bloque, permitiendo una depuración enfocada y oportunidades de optimización adicionales. Este documento explica el proceso de generación de mapas personalizados para usar con la plataforma Graph Builder de JMP. Esta técnica ofrece un valioso enfoque para explorar señales impulsadas espacialmente con una herramienta altamente interactiva. Impulse la mejora de los procesos mejorados desbloqueando el poder de los mapas personalizados en JMP.
Términos del Índice —Mapas personalizados, Hyper-Heatmap, análisis de causa raíz, SoC, System-on-Chip, Rendimiento.
I. INTRODUCCIÓN
El SoC de hoy es a menudo un dispositivo relativamente grande construido sobre una tecnología de proceso de semiconductores de vanguardia que busca un rendimiento y una eficiencia de la energía cada vez mayores. Está compuesto por una matriz de bloques replicados y únicos que sirven para varias funciones de chip, como E / S, cómputo y gráficos. Estos bloques pueden representarse de acuerdo con sus posiciones físicas en el dado como un mapa. Al utilizar este tipo de mapa como un mapa personalizado en JMP, un ingeniero o analista puede crear visualizaciones potentes que permitan una depuración más rápida de los problemas de proceso, prueba o rendimiento. A su vez, esto admite una rampa de rendimiento y calidad más rápida y, por lo tanto, un retorno de la inversión (ROI) más rápido para nuevos diseños de productos. Al combinar mapas de calor basados en troqueles en Graph Builder de acuerdo con sus ubicaciones físicas en una oblea, los efectos que antes no se notaban se iluminan. Esto se debe al hecho de que muchos desafíos de fabricación de semiconductores tienen fuertes dependencias en la ubicación espacial dentro de una oblea, como los efectos de centro o borde. Una clara ilustración de estas dependencias posicionales reduce considerablemente la lista de posibles causas raíz y acelera la mejora del proceso.
II. BENEFICIOS DE USAR LOS MAPAS PERSONALIZADOS
Actualmente hay varias herramientas a disposición de un ingeniero o analista para elegir para identificar respuestas atípicas. Algunos ejemplos de estos incluyen histogramas y diagramas de caja. Aunque valiosas y altamente utilizadas, estas herramientas carecen de la capacidad de ilustrar la posición física para identificar patrones mucho más rápidamente. Comprender estos patrones ayuda a reducir el alcance del análisis posterior y el aislamiento de la causa raíz, lo que lleva a tiempos de respuesta más rápidos para la depuración y la mejora del rendimiento.
Aunque este documento se centra en la industria de los semiconductores, la aplicación de mapas personalizados puede resultar útil en muchos entornos con señales espaciales.
III. CREANDO MAPAS PERSONALIZADOS EN JMP
La generación de formas de mapas personalizadas en JMP se realiza conectando los vértices de cada forma, uno por uno. Para lograr esto, JMP requiere información de coordenadas de vértice en forma de dos archivos de definición: un archivo '-Name' y un archivo '-XY'. El archivo '-Name' contiene numérico requerido ID de forma y Nombre columnas y el archivo '-XY' contiene ID de forma, ID de pieza, X y Y Coordenadas de los vértices. los ID de forma columna es lo que vincula las coordenadas en el archivo '-XY' a los nombres de las formas en el archivo '-Name'.
Si las coordenadas de vértice están disponibles, los archivos '-Nombre' y '-XY' se pueden generar en unos pocos pasos.
Resuma el archivo de coordenadas para que cada forma ocupe una sola fila en la tabla de datos. Cree una columna de 'ID de forma' en orden ascendente (comenzando desde uno) dando a cada forma una ID única. La ID de forma debe ser la primera columna de la tabla. Guarda la tabla como ' $$$ -Nombre.jmp 'donde $$$ Es un prefijo elegido. En este archivo, debe haber una columna de nombre fácil de usar para representar cada forma. Dentro de las propiedades de columna de esta columna, seleccione Asignar rol y configúrelo en 'Definición de nombre de forma' (consulte la Figura 1). Este es un paso importante, ya que los valores de esta columna se utilizarán para vincular datos sin procesar para superposiciones.
- Higo. 1 . Forma Nombre Definición Mapa Role Configuración de propiedades
Con la tabla de coordenadas original aún abierta, fusione en la columna de ID de forma única que se acaba de crear y ordene la tabla en orden ascendente por ID de forma. Guarde la tabla de datos como ' $$$ -XY.jmp 'donde $$$ debe ser el mismo prefijo utilizado para el archivo '-Nombre'.
Este archivo '-XY' requiere cuatro columnas obligatorias, ID de forma , X , Y y ID de pieza . En su estado actual, el archivo debe tener toda esta información y es posible que solo sea necesario cambiar el nombre de las columnas. Sin embargo, faltará el ID de pieza columna. Esta columna esencialmente le dice a JMP si ciertas formas tienen múltiples partes separadas, como el estado de Hawai, que se compone de múltiples islas. A menudo es el caso en el que cada forma tiene una sola parte. En esos casos, la columna de ID de parte se puede establecer como todas. los X y Y Las columnas contienen las coordenadas de cada vértice en cada forma. Un detalle sutil que vale la pena resaltar es que el orden de aparición de los vértices de cada forma en el archivo '-XY' es importante, ya que puede llevar a representaciones inexactas de las formas, si están mal configuradas. Usando el archivo de mapeo '-XY', JMP rastrea las formas que van desde vértice a vértice (desde la primera fila en el archivo hasta la última). Una nueva traza comienza con cada nueva ID de forma o ID de pieza. La Figura 2 muestra un ejemplo de cómo el orden de los vértices hace una diferencia para trazar una forma rectangular simple.
- Higo. 2 . Ordenamiento correcto e incorrecto de vértices para formas
Si los datos de coordenadas sin procesar son consistentes en varios tipos de mapas personalizados, una secuencia de comandos de lenguaje de secuencias de comandos JMP (JSL) para crear los archivos de definición de forma '-XY' y '-Name' sería útil.
Para obtener más información sobre la generación de mapas personalizados, consulte el siguiente recurso: Ayuda> Contenido de la Ayuda> Gráficos esenciales> Crear mapas> Generador de gráficos> Archivos de mapas personalizados.
Un último punto a tener en cuenta es que los archivos de definición de forma '-Nombre' y '-XY' deben guardarse dentro del mismo directorio con el mismo prefijo para que la asignación funcione correctamente.
IV. USO DEL MAPA PERSONALIZADO
Con los archivos de definición configurados, los datos se pueden importar a JMP. Se necesita un paso de preparación final para vincular los datos con los archivos de definición de mapas personalizados antes de visualizar los datos en Graph Builder. Debe haber una columna en los datos que tenga valores que coincidan de forma idéntica con los que se encuentran en los datos definidos. Definición del nombre de la forma columna en el archivo '-Nombre', de lo contrario JMP no podrá vincular el mapa personalizado.
Para vincular la tabla de datos al mapa personalizado, abra las propiedades de columna de la columna dentro de la tabla de datos que almacena los nombres de las formas. Dentro de la propiedad Map Role, asegúrese de que la opción 'Uso del nombre de la forma' esté seleccionada y seleccione el archivo '-Name' como la 'Tabla de datos del nombre del mapa' con la columna de definición de la forma adecuada elegida (consulte la Figura 3). Tenga en cuenta que, en JMP11, estas opciones no tienen un cuadro de diálogo de archivo interactivo para buscar el archivo '-Nombre', por lo que deberá copiarse y pegarse o escribirse en el cuadro de texto (incluida la extensión '.jmp').
- Higo. 3 . Forma Nombre Usar Mapa Función Función Archivo
JMP también admite colocar los archivos '-Name' y '-XY' en un directorio específico que el software verifica automáticamente. Sin embargo, en nuestra aplicación utilizamos nombres de formas idénticos con diferentes asignaciones en diferentes productos SoC. Por lo tanto, para evitar colisiones de nombres, utilizamos el método de selección de archivos. Consulte la Ayuda de JMP para encontrar la ubicación automática del directorio según el sistema operativo de su computadora.
Con todo el trabajo de preparación completado, abra el Generador de gráficos y arrastre y suelte la columna de forma vinculada de la tabla de datos en la zona desplegable Forma de mapa en la esquina inferior izquierda de la ventana (consulte la Figura 4). Luego, JMP llena la pantalla con todas las instancias de formas encontradas en la tabla de datos que también se encuentran en los archivos de definición de formas.
- Higo. 4 . Ubicación de la zona de arrastre de forma de mapa de Graph Builder
Puede haber casos en los que los archivos de definición de forma no reconozcan ciertas formas encontradas en la tabla de datos, esto podría deberse a que los nombres no son idénticos, a convenciones de nomenclatura diferentes o simplemente no están en la lista. Estas formas no reconocidas se muestran en la parte inferior de la ventana del Generador de gráficos como "Formas de mapa no encontradas" (consulte la Figura 5). La incorporación de estas formas faltantes requiere la modificación de los datos para que coincidan con los archivos de definición de forma o para actualizar los archivos de definición de forma.
- Higo. 5 . Visualización de Graph Builder cuando no se reconocen formas en datos
En este punto, las columnas de datos se pueden arrastrar y soltar en la Color zona de arrastre que proporciona las superposiciones de color adecuadas en función de los datos de columna y los tipos de modelado.
La siguiente sección repasará algunos ejemplos detallados que describen diferentes escenarios de casos de uso e historias de éxito.
V. EJEMPLOS
- A. Datos de rendimiento
Haciendo eco de la introducción, el beneficio de tener reutilización de bloques en los diseños de SoC permite comparar el rendimiento y el rendimiento de bloques individuales. Es muy común tener procedimientos de prueba como Escaneo (flip-flops y lógica común) y Autoprueba incorporada (BIST, prueba de memoria y reparación) que están disponibles en el nivel de bloque. En el caso de los SoC, estos bloques se denominan mosaicos. La Figura 6 muestra el rendimiento de una prueba específica para cada baldosa al agregar los resultados de unos pocos miles de unidades. Los azulejos de color rojo (y numerados en blanco) son azulejos atípicos de bajo rendimiento que merecen más atención. Se mostrará en la siguiente subsección que hay otra fuerza que está impulsando estos valores atípicos que no es aparente cuando se muestra en esta vista.
- Higo. 6 . Mapa de calor de rendimiento de loseta de SoC con valores atípicos
- B. Hyper-heatmaps
Continuando con el ejemplo de rendimiento anterior, hay un conjunto obvio de fichas de valores atípicos. Sin embargo, no está claro qué puede estar mal con ellos. La Figura 7 muestra el mapa de hiper-calor que anida cada vista de mosaico de SoC para cada ubicación del troquel en la oblea, haciendo uso de la Grupo x y Grupo y zonas de caída. Las ubicaciones de troqueles que están escasamente pobladas tienen tasas bajas de fallas de mosaico. Los valores atípicos numerados de la Figura 6 se agregaron a la Figura 7 que representan las ubicaciones de los troqueles que hacen que los rendimientos de los azulejos sean más bajos. Para azulejos 1 , 2 y 3 La razón principal es que son azulejos de esquina adyacentes al borde de la oblea para ciertas ubicaciones de troquel X, Y. Cuando están inmediatamente al lado del borde de la oblea, estas baldosas están sujetas a efectos de borde en los procesos de fabricación de la oblea que no ocurren en otras áreas de la oblea. Para ver más claramente un mapa de hiper-calor con muchos objetos, puede ser útil filtrar la línea de base o los niveles esperados de la variable de color. La figura 7 ha sido filtrada de esta manera. Azulejo 4 la caída del rendimiento se enfoca principalmente en el centro de la oblea, donde también se conocen efectos de variación debidos al proceso de fabricación. Los procesos de fabricación inducen una variedad de no uniformidades a través de la oblea, que a menudo son más fuertes en las regiones centro o borde. Este mapa de hiper-calor permitió una rápida comprensión de dónde estaban las áreas problemáticas sin gastar recursos para tratar de determinar si las baldosas en sí necesitaban optimización de diseño.
- Higo. 7 . Mapa hipercaliente a nivel de oblea que resalta las ubicaciones de los trozos atípicos mediante el filtrado de la tasa de rendimiento de referencia
- C. Datos paramétricos
La Figura 8 es un ejemplo de cómo los datos paramétricos se pueden visualizar en un mapa de hiper-calor de obleas. Cada mosaico que se muestra contiene una estructura de medición analógica cuyo valor se utiliza como una métrica para correlacionar con el rendimiento del dispositivo. La tabla de datos contiene cientos de obleas, y esta vista particular muestra el valor medio para la medición de cada baldosa en cada ubicación del troquel en la oblea. Los remanentes familiares del proceso de fabricación son claramente evidentes por los círculos concéntricos representados por la superposición.
- Higo. 8 . Hyper-heatmap a nivel de oblea de estructura de caracterización analógica
VI. Historias de éxito
El producto de alto volumen mostró un azulejo perceptible notable que rinde peor que otros (ver Figura 9). En este caso, el rojo muestra los azulejos de menor rendimiento y el azul rinde más alto.
- Fig.9. Rendimiento inicial de nivel de SoC con observación de azulejos atípicos
Un análisis adicional utilizando mapas de calor llevó al descubrimiento de que se trataba de una firma sistemática de borde de oblea para la baldosa de valor atípico en el borde inferior izquierdo de la oblea, donde esta baldosa estaba adyacente al borde de la oblea (consulte la Figura 10). Esta señal atrajo la atención de la fundición, lo que los llevó a implementar una mejora del proceso: ajustes de litografía optimizados en el extremo de la oblea. El rendimiento global de las obleas mejoró significativamente debido a la mejora de este proceso.
- Fig. 10. Observación de nivel de oblea de azulejos atípicos en el borde inferior izquierdo de la oblea
Antes de la vista del mapa de calor, la investigación inicial de esta señal de rendimiento se centró en la propia baldosa, es decir, la dirección incorrecta en este caso. Una vez que la correlación del rendimiento del borde de la oblea fue clara, el propietario correcto pudo comenzar inmediatamente un esfuerzo de mejora continua.
VII. CONSEJOS Y TRUCOS
A. Mostrar formas que faltan
Justo debajo del cuadro de selección de columna dentro de la plataforma Graph Builder, hay una casilla de verificación titulada, Mostrar formas que faltan . Al seleccionar esto, se completa la visualización con contornos de formas que se encuentran en los archivos de definición pero que no se encuentran en la tabla de datos actual (consulte la Figura 11). Esto es útil para detectar datos faltantes u obtener una imagen general del mapa.
- Fig. 11. Casilla de verificación Mostrar formas que faltan
SEGUNDO. Habilitación de superposiciones de etiquetas de datos
Habilitar la capacidad de desplazarse sobre formas o hacer que las etiquetas se muestren sobre cada forma es útil para identificar patrones rápidamente. Haga clic derecho en la (s) columna (s) de opción y seleccione Etiqueta / Unlabel por primera vez muestra datos de columnas mientras se desplaza sobre las formas en Graph Builder. Para mostrar de forma estática las etiquetas de las formas, seleccione las filas en la tabla de datos de interés y seleccione Etiqueta / Unlabel .
DO. Automatización con filtros y conmutador de columnas.
Al analizar datos de volumen, la búsqueda de patrones sutiles puede ser una tarea onerosa y minimizar la cantidad de clics del mouse siempre ayuda. Haciendo uso de la Automatización del filtro y Columna de conmutación características (Graph Builder Red Arrow> Script) es una forma eficiente de escanear grandes cantidades de datos espaciales con diferentes condiciones.
RE. Paginación del marco con JMP12
La plataforma Graph Builder tiene algunas mejoras notables en la funcionalidad con la reciente actualización JMP12, a saber, la capacidad de dividirse en varios marcos mediante el uso de Página zona de descenso. La colocación de una columna de datos en esta zona de arrastre genera varias instancias del marco del Generador de gráficos de acuerdo con el número de valores únicos encontrados en esa columna. El informe se puede guardar como un documento HTML interactivo para compartir.
MI. Segmentación de cuadros con grupos y envolver zonas de caída
Como se ve en el ejemplo del mapa de calor de la oblea, los cuadros se pueden segmentar mediante el uso de columnas anidadas dentro de Grupo x y Grupo y zonas de caída. El mapa de calor de la oblea utiliza las coordenadas X e Y para la segmentación, pero se puede usar cualquier columna. Otros ejemplos utilizados frecuentemente son el punto de prueba de voltaje, la temperatura de prueba y el punto de prueba de frecuencia. los Envolver drop-zone tiene una funcionalidad similar con un uso más eficiente del espacio, pero el anidamiento de columnas no está disponible. Al hacer clic con el botón derecho en las Variables de grupo, el usuario puede seleccionar el número de niveles a la vista para hacer un zoom efectivo en las regiones de interés (consulte la Figura 12).
- Fig. 12. Selección de niveles en opción de vista dentro de Grupo Zonas de Variables
F. Modificación de la configuración de color del generador de gráficos
Al analizar datos de superposición de mapas personalizados, a menudo una simple modificación de la configuración de color puede enfatizar significativamente la apariencia de patrones atípicos. Los autores recomiendan utilizar un fondo oscuro (Gráfico> Color de fondo) con un tema de color secuencial para datos de una sola dirección (rendimiento, velocidad, etc.) y un tema de color divergente para datos de dos caras. Se puede acceder a los temas de color dentro de la Configuración de degradado haciendo clic con el botón derecho en la leyenda. Por defecto, Graph Builder agrega un borde gris alrededor de cada forma, un píxel de ancho, lo que podría ensombrecer algunas de las formas más pequeñas. Para eliminar este borde, haga clic con el botón derecho en el marco y seleccione Personalizar> Formas de mapa y cambie el ancho de línea a cero.
VIII. PROBLEMAS CONOCIDOS Y PRECAUCIONES
- A. Las formas superpuestas no pueden mostrar el color deseado
Esto surge cuando hay formas definidas en el mapa personalizado que tienen regiones superpuestas. En la Figura 13, la acp y gnb Los bloques comparten una región común, pero solo se usa un color. Esto es algo que debe tener en cuenta al crear mapas personalizados que contienen formas superpuestas.
- Fig. 13. Superposición de color incorrecta de dos formas superpuestas
- B. Arrastrando la etiqueta para crear un puntero muestra una fila sin etiqueta
La Figura 14 muestra cómo arrastrar una etiqueta deseada (borde negro punteado) causó que aparezca una etiqueta extraña (borde rojo punteado) para una fila sin etiqueta. Este problema se ha solucionado en JMP 12.
- Fig. 14. La etiqueta de arrastre (negro) hace que aparezca una fila sin etiqueta (rojo).
- C. Cambiar niveles en la vista Reinicia personalizaciones de marcos
La Figura 15 muestra la progresión de la primera configuración de las personalizaciones del marco para la vista predeterminada, seleccionando cuatro niveles en vista con uno de los Grupo variables, y finalmente, al volver a la vista original, las personalizaciones aplicadas originalmente se pierden.
- Fig. 15. El cambio de nivel en la función de vista provoca la pérdida de personalizaciones de marcos
- D.Mapa Role propiedad de la columna y tablas de resumen
Si una columna tiene una propiedad Map Role aplicada y la tabla de datos se resume (con esa columna incluida), Graph Builder no reconoce la propiedad de la columna. Simplemente indica que no se ha encontrado un archivo de forma, aunque se haya definido en la propiedad Rol de mapa. La solución es eliminar la propiedad Map Role y agregarla nuevamente. Alternativamente, si el archivo se guarda, se cierra y se vuelve a abrir, la propiedad Map Role (Función de mapa) funcionará como se espera.
- E. No se puede actualizar la propiedad del rol del mapa
Al usar la propiedad de la columna Map Role, se observó que una vez que se establece la propiedad y se aplica un archivo de definición de forma, cambiar para seleccionar un archivo diferente no se actualizará a la configuración del nuevo archivo. Además, la columna de definición de forma no se puede actualizar. La solución es eliminar la propiedad Map Role y agregarla nuevamente con la nueva configuración de archivo y columna.
IX. OPORTUNIDADES DE MEJORA
Los mapas personalizados dentro de la plataforma Graph Builder son un ejecutante sobresaliente para analizar patrones que se correlacionan con datos espaciales con una interfaz interactiva excepcional. Como se señaló en este documento, esta función ha permitido un análisis exitoso de la causa raíz que lleva a un impacto financiero real. Con el uso extensivo de esta funcionalidad, su ganancia es evidente y la extensión de su utilidad con unas pocas optimizaciones solo conducirá a mejores resultados.
A continuación se presentan algunas oportunidades de mejora que los autores han compilado en función de sus experiencias.
A. Más opciones para niveles a la vista
Graph Builder ofrece la posibilidad de segmentar la vista con el uso de Grupo zonas de caída tanto en la X y Y hachas El menú del botón derecho ofrece algunas opciones para configurar el número de niveles a la vista, pero es bastante rígido (consulte la Figura 16). A menudo se desean más de cuatro niveles en vista (pero menos que todos) pero actualmente esa opción no existe. Esto podría modificarse para que sea dinámico en función del número de valores en la columna del grupo.
- Fig. 16. Opciones de niveles en vista limitadas a 1-4 o todas
SEGUNDO. Apoyo a la paginación de varias columnas
Esta es una característica increíblemente útil para escanear rápidamente a través de múltiples vistas con un simple desplazamiento del mouse. Esta característica podría optimizarse aún más si permitiera que más de una columna divida los marcos, similar a la ' Por' Característica en otras plataformas. La solución ahora mismo es crear una nueva columna y concatenar los datos de más de una columna para obtener diferentes combinaciones, pero la búsqueda de múltiples columnas sería una solución más limpia.
X. RECONOCIMIENTO
Los autores desean agradecer a Paul Shook por su ayuda para agregar un formato de salida especial al software de planos de planta de AMD que ayuda considerablemente en la conversión al formato de mapa personalizado de JMP. Además, nos gustaría agradecer a los analistas de AMD por su ayuda en la evaluación del uso de mapas personalizados para la visualización del rendimiento de SoC en JMP.
AMD, el logotipo de la flecha de AMD y sus combinaciones son marcas comerciales de Advanced Micro Devices, Inc. Otros nombres de productos utilizados en esta publicación son solo para fines de identificación y pueden ser marcas comerciales de sus respectivas compañías.