Algoritmos genéticos: los beneficios en su implementación para la generación de patrones...

17
Algoritmos genéticos: los Algoritmos genéticos: los beneficios en su implementación beneficios en su implementación para la generación de patrones para la generación de patrones automáticos de pruebas en automáticos de pruebas en Microprocesadores Microprocesadores Protocolo de tesis para obtener el grado de Protocolo de tesis para obtener el grado de Maestro en Tecnologías de la Información Maestro en Tecnologías de la Información Hugo Aldo Soto López Hugo Aldo Soto López [email protected] [email protected] Guadalajara, Jalisco, México Guadalajara, Jalisco, México

Transcript of Algoritmos genéticos: los beneficios en su implementación para la generación de patrones...

Page 1: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

Algoritmos genéticos: los beneficios en Algoritmos genéticos: los beneficios en su implementación para la generación de su implementación para la generación de

patrones automáticos de pruebas en patrones automáticos de pruebas en MicroprocesadoresMicroprocesadores

Protocolo de tesis para obtener el grado deProtocolo de tesis para obtener el grado deMaestro en Tecnologías de la InformaciónMaestro en Tecnologías de la Información

Hugo Aldo Soto LópezHugo Aldo Soto Ló[email protected]@hotmail.comGuadalajara, Jalisco, MéxicoGuadalajara, Jalisco, México

Page 2: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

2

Índice de contenido

●Planteamiento del problema●Justificación•Cuadro de análisis de congruencia●Marco teórico●Métodos y técnicas de investigación●Objetivos●Cronograma●Bibliografía

Page 3: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

3

Planteamiento del problema

● La industria se ve afectada por el tamaño y la complejidad de la verificación funcional de microprocesadores [1]

● Las pruebas de verificación representan cerca del 60% del costo total de desarrollo [6]

● Desarrollar algoritmos para generar patrones de prueba no es una tarea fácil y se requiere que personas experimentadas los desarrollen [12]

Page 4: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

4

Justificación● Los costos, el tiempo y dificultades en la

validación de microprocesadores abren un área de oportunidad para la optimización de los modelos actuales de validación [6][1]

● Las pruebas de verificación representan cerca del 60% del costo total de desarrollo [6]

Page 5: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

5

Justificación● Las empresas no pueden darse el lujo de

retrasar la salida de un nuevo microprocesador al mercado

● El conocimiento que se obtiene con la realización de esta investigación favorecerá en la determinación de los casos donde es óptimo el uso de algoritmos genéticos para la generación de patrones de prueba en microprocesadores

Page 6: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

6

Cuadro de análisis de congruencia

TEMA TÍTULO OBJETIVO PREGUNTA HIPÓTESIS VARIABLES INTERVINIENTES

Técnicas de verificación y validación de microprocesadores•

Algoritmos genéticos, los

beneficios en su implementación

para la generación de patrones

automáticos de pruebas

Analizar los posibles beneficios que se obtienen al

implementar algoritmos

genéticos en un generador de patrones de

prueba (ATPG).

¿Qué beneficios se obtienen con la

implementación de algoritmos

genéticos en la generación de

patrones pruebas para la validación

de microprocesadores?

Los algoritmos genéticos

optimizan la generación

automática de patrones de prueba

para los microprocesadores.

Efectividad en encontrar defectos.

Número de patrones de prueba

generados.

Tamaño del conjunto de pruebas.

Page 7: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

7

Marco teórico

● ¿Para qué validar microprocesadores?– Previene que circuitos defectuosos sean

manufacturados y asegura que el diseño cumpla con los requerimientos de los desarrolladores [2][6]

● ¿Qué es un patrón de pruebas?– Es la secuencia de entradas capaces de distinguir

entre un comportamiento defectuoso y otro sin errores [13]

Page 8: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

8

Marco teórico● ¿Qué es un algoritmo genético?

– Son una técnica de optimización que simula el fenómeno de la evolución natural. En vez de optimizar una única solución, trabaja con una población de soluciones candidatas [8]

Extraído de: Jones, M. T. (2003). Genetic algorithm high-level flow.. AI application programming (p. 116). Hingham, Mass.: Charles River Media. [8]

Page 9: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

9

Marco teórico

● ¿Por qué son útiles los ATPG?– La densidad de circuitos en un microprocesador

está aumentando constantemente. Ley de Moore [1]

– La densidad aumenta y con ello la cantidad de posibles defectos [5]

– Los ATPG están basados en “Fault Models” que son abstracciones de posibles defectos en un microprocesador [14]

Page 10: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

10

● ¿Cómo funciona un ATPG?

Marco teórico

Extraído de: Pradhan, D. (2009) Closed-loop generation scheme. Practical design verification (p. 146). Cambridge: Cambridge University Press. [12]

● ¿Cómo funciona un ATPG?

Page 11: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

11

Marco teórico

● ¿Cómo implementar un algoritmo genético en ATPG?

Extraído de: Corno, F., Squillero, G., & Reorda, M. S. (2003). Code generation for functional validation of pipelined microprocessors. Test Workshop, 2003. Proceedings. The Eighth IEEE European, 1, 114 [15]

Page 12: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

12

Métodos y técnicas de investigación

● Método experimental– Se investigarán los diferentes procesos y técnicas

para el desarrollo de ATPG– Identificar un modelo y desarrollar una propuesta – Experimentar con el modelo– Medir el “fitness” de los algoritmos genéticos– Conclusiones

Page 13: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

13

Objetivos● Objetivo general

– Analizar los posibles beneficios que se obtienen al implementar algoritmos genéticos en un generador de patrones de prueba (ATPG)

● Objetivos específicos

– Investigar casos donde podrían ser utilizados los ATPG diseñados con algoritmos genéticos

– Diseñar un circuito adecuado para llevar a cabo las pruebas de los ATPG con los algoritmos genéticos

– Diseñar un algoritmo genético que optimice la generación de patrones de prueba respecto a los generadores aleatorios de patrones de prueba

– Comparar la aplicación de un algoritmo genético versus un generador aleatorio de patrones de prueba

Page 14: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

14

Cronograma

Page 15: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

15

Bibliografía

[1] Adir, A., Copty, S., Landa, S., Nahir, A., Shurek, G., Ziv, A., et al. (2011). A unified methodology for pre-silicon verification and post-silicon validation. Design, Automation & Test in Europe Conference & Exhibition (DATE), 1, 1-6.

[2] Corno, F., Squillero, G., & Reorda, M. S. (2003). Code generation for functional validation of pipelined microprocessors. Test Workshop, 2003. Proceedings. The Eighth IEEE European, 1, 113-118.

[3] Hurst, S. L. (1998). Test Pattern Generation and Design-for-Testability. VLSI custom microelectronics digital, analog, and mixed-signal (pp. 273-278). New York: Marcel Dekker.

[4] Kirkland, T., & Mercer, M. R. (1988). Algorithms for automatic test-pattern generation. Design & Test of Computers, IEEE, 5(3), 43-55.

[5] Wang, L. (2009). Fault Simulation and Test Generation. Electronic design automation synthesis, verification, and test (pp. 851-854). Burlington, MA: Morgan Kaufmann Publishers/Elsevier.

[6] Corno, F., Sanchez, E., Reorda, M., & Squillero, G. (2005). Automatic test generation for verifying microprocessors. Potentials, IEEE, 24(1), 34-37.

[7] Corno, F., Cumani, G., Reorda, M., & Squillero, G. (2003). Fully automatic test program generation for microprocessor cores. Design, Automation and Test in Europe Conference and Exhibition, 2003, 1, 1006-1011.

[8] Jones, M. T. (2003). Introduction to Genetic Algorithms. AI application programming (pp. 115-149). Hingham, Mass.: Charles River Media.

Page 16: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

16

Bibliografía

[9] Eberhart, R. C., & Shi, Y. (2007). Evolutionary Computation Concepts and Paradigms. Computational intelligence concepts to implementations (pp. 51-68). Amsterdam: Elsevier/Morgan Kaufmann Publishers.

[10] Cruzatti, I. (2008). Los experimentos. Tiempo de investigar, proyectos de ciencia (pp. 10-11). Quito: EDITEKA Ediciones.

[11] Cruzatti, I. (2008). Diseño de proyectos experimentales y tecnológicos. Tiempo de investigar, proyectos de ciencia (pp. 74-90). Quito: EDITEKA Ediciones.

[12] Pradhan, D. (2009). Stimuli Generation Methods. Practical design verification (pp. 145-151). Cambridge: Cambridge University Press.

[13] Xiu, L. (2008). WHAT IS AUTOMATIC TEST PATTERN GENERATION (ATPG)?. VLSI circuit design methodology demystified: a conceptual taxonomy (pp. 182-184). Hoboken, N.J.: Wiley.

[14] Crowell, G., & Press, R. (2004). Using Scan Based Techniques for Fault Isolation in Logic Devices. Microelectronics failure analysis desk reference (5th ed., pp. 133-139). Materials Park, Ohio: ASM International.

[15] Corno, F., Squillero, G., & Reorda, M. S. (2003). Code generation for functional validation of pipelined microprocessors. Test Workshop, 2003. Proceedings. The Eighth IEEE European, 1, 113-118.

[16] Squillero, G. (n.d.). µGP (MicroGP). µGP (MicroGP). Retrieved May 21, 2013, from http://ugp3.sourceforge.net/

Page 17: Algoritmos genéticos: los beneficios en su implementación para la generación de patrones automáticos de pruebas en Microprocesadores Protocolo de tesis.

17

Gracias