“Comparación del desempeño de microcontroladores AVR de 4ta generación”
David M. Caruso; Salvador E. Tropea Instituto Nacional de Tecnología Industrial - Electrónica e Informática Avenida General Paz 5445 entre Albarellos y Constituyentes, Edificio 42,
CC157 (CP 1650) San Martín, Bs. As., Argentina {david,salvador}@inti.gob.ar
Nuestro equipo de trabajo desarrolló un microcontrolador ciclo a ciclo compatible con los microcontroladores AVR de 4◦ generación. El mismo fue ampliamente validado con varias aplicaciones usando FPGAs. A los fines de comparar su desempeño con el de otros microcontroladores se decidió correr un benchmark en el mismo.
Para esto se utilizó el benchmark Dhrystone versión 2.1. A pesar de que existen otros benchmarks más representativos este es el más utilizado por los fabricantes, aún hoy en día.
La originalidad de este trabajo, radica en el hecho de que no puede implementarse el Dhrystone en microcontroladores AVR de 4◦ generación, dado que no poseen la suficiente memoria RAM. Si bien es probable que dicho benchmark pueda ejecutarse en AVRs de 5◦ generación (ej. ATXMega256), los resultados serían menos representativos. Por otro lado no se pudieron encontrar resultados publicados del Dhrystone para ningún AVR (no confundir con AVR32).
Debido a que los bloques de memoria son un recurso escaso en FPGAs de bajo costo, sólo algunos cientos de kilobits, es deseable utilizar memorias externas para el programa a ejecutar. El uso de memorias flash externas, trae aparejada una latencia dada por el cambio de página de la memoria, que limita la frecuencia de operación máxima. Para aliviar esta situación se agregó un core intermedio entre el AVR y la memoria, que le permite leer, a la máxima velocidad por página, optimizando los tiempos de cambios de página. El conjunto del core con la memoria, se puede entender, en una forma muy simplificada, como un sistema de "memoria caché".
Se obtuvieron distintos resultados de desempeño, para el microcontrolador con memoria interna, externa y con el sistema de memoria caché. Dichos resultados indican que el AVR tiene un desempeño que es comparable o superior a una CPU 80286 (PC AT 286).
Ver+/-