Optimizing data structures at the modeling level in embedded multimedia Marijn Temmerman a, * , Edgar G. Daylight b , Francky Catthoor b , Serge Demeyer c , Tom Dhaene c a Karel de Grote-Hogeschool, Salesianenlaan 30, B-2660 Antwerp, Belgium b IMEC, Kapeldreef 75, B-3001 Leuven, Belgium c Universiteit Antwerpen, Middelheimlaan 1, B-2020 Antwerp, Belgium Received 29 March 2006; received in revised form 30 November 2006; accepted 30 November 2006 Available online 12 January 2007 Abstract Traditional design techniques for embedded systems apply transformations on the source code to optimize hardware- related cost factors. Unfortunately, such transformations cannot adequately deal with the highly dynamic nature of today’s multimedia applications. Therefore, we go one step back in the design process. Starting from a conceptual UML model, we first transform the model before refining it into executable code. This paper presents: various model trans- formations, an estimation technique for the steering cost parameters, and three case studies that show how our model transformations result in factors improvement in memory footprint and performance with respect to the initial implementation. Ó 2006 Elsevier B.V. All rights reserved. Keywords: Embedded systems; UML-model transformation; Data structures; Design-space exploration; Multimedia 1. Introduction Over the past decade, multimedia design has shifted from an image-based to an object-based approach. While this has drastically improved the software design process, it has often led to less effi- cient implementations. We believe the reason for this is twofold. First, conceptual software models are built today irrespectively of the hardware plat- form, as is encouraged in the software community. Second, embedded system specialists typically start their optimization crusade from executable code. This approach results in suboptimal implementa- tions on the embedded platform, because at the source-code level not all the inefficiencies of the modeling level can be removed any more. To bridge this gap, our approach starts with an original conceptual model, applies platform-related trans- formations to it, and only then descends to the source-code level. Multimedia applications rely on – often large – data structures that are frequently accessed. The performance and energy consumption of these data-intensive applications are, therefore, dominated 1383-7621/$ - see front matter Ó 2006 Elsevier B.V. All rights reserved. doi:10.1016/j.sysarc.2006.11.008 * Corresponding author. E-mail address: marijn.temmerman@kdg.be (M. Temmer- man). Journal of Systems Architecture 53 (2007) 539–549 www.elsevier.com/locate/sysarc