ResumenCon 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. 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. El aporte de la investigación consistió en la definición de modelos adecuados para generar algoritmos que logran producir modelos ejecutables a nivel de transferencia de forma automática y sin necesidad de codificación en otro lenguaje, en una fracción del tiempo requerido. También, se desarrolló una herramienta que genera automáticamente modelos a nivel de transferencia de sistemas computacionales incrustados, útiles para simulación de alto nivel de abstracción para decisiones de arquitectura y desempeño.Palabras clave: Generación automática; modelos a nivel de sistemas; SystemC; sistemas incrustados, ingeniería eléctrica..
AbstractThe design of current embedded computer systems has evolved into a lengthy and expensive process, which needs accurate and early models in order to test its components. In order to generate these models automatically, we need strictly defined data structures and adecuate tools. If the model is well declared, with clearly defined rules and structures, it is possible to create an algorithm that can automatically generate models. The main benefit of automatization is that the designer can move into a higher abstraction plane where he can focus on more important design decisions: architecture, performance, improving his productivity. To achieve automatic generation, we defined a modeling style and data structure that would capture all important characteristics of a system. Then, the generation algorithms were implenented in C++ in a tool that could take a C application, system specifications and would generate an executable SystemC model of the embedded system. We chose two industrial applications in order to test the algorithms: a MP3 decoder and a H264 decoder. The tool generated quickly good quality models and were sucessfully simulated alongside the original C model.