Resumen

Con el incremento en complejidad y miniaturización de los sistemas computacionales actuales, su diseño se ha vuelto cada vez más difícil y lento.  Para ello se necesitan modelos óptimos, y desarrollados tempranamente para probar los componentes.  Para poder crear modelos automáticamente, se necesitan estructuras de datos y herramientas adecuadas.  Si el modelo está bien declarado, con reglas y estructuras definidas, es posible crear un algoritmo que lo genere automáticamente. La principal consecuencia de la automatización es que el diseñador pasa a tomar decisiones más importantes de diseño: puede decidir cambiar la arquitectura y rápidamente ver los resultados del desempeño del sistema, aumentando su productividad. Para lograr la generación, se definió un estilo de modelaje y una estructura de datos que capturara todas sus características.  Luego se implementaron algoritmos en C++ en una herramienta para generar modelos usando como entrada una aplicación en C y especificaciones de la arquitectura del sistema.  La salida consistió en un modelo ejecutable del sistema en SystemC. Se seleccionaron dos aplicaciones industriales como prueba: un decodificador MP3 y un decodificador H264.  La herramienta generó los modelos en una fracción de segundo, y estos simularon exitosamente con la misma calidad que el modelo en C original.

Palabras clave: generación automática, modelos a nivel de sistemas, SystemC, sistemas incrustados