Embedded Systems Design Europe - August/September 2008 - (Page 19) cover feature timizes certain forms of divide-andconquer parallelism: here a sequential task can be split in parallel tasks, but the results of these tasks must be processed by an associative function (like addition or multiplication). The memory hierarchy (MH) tool optimizes usage of the memory hierarchy by sequential C programs. It can autonomously introduce data copies, map them onto scratchpad memories, and insert the necessary direct-memory-access transfer instructions based on a combination of static analysis and profiling information. Both the MPA and MH tools derive their strengths from the ability to analyze relevant data and control-flow dependencies in the complete input program. The CleanC tool suite, the MPSoC mapping tools together with predictable platform services constitute IMEC’s global approach to MPSoC application mapping. Figure 3 shows the MPSoC programming model. COSTS AND BENEFITS OF CODE CLEANING The rationale behind IMEC’s MPSoC mapping flow is that designers should preferably program at the sequential level and perform the parallelization afterwards. This means that the source code must be cleaned. The question arises then, what is the cost of code cleaning? In one scenario, the designer develops the source code from scratch. In this case it suffices to follow the cleaning guidelines and to run the CleanC analysis tools on a regular basis. Here, there is little or no overhead in cleaning the code. In case the source code already exists, designers may object at the cost of cleaning the source code first. However, given CleanC code in combination with IMEC’s MPSoC mapping tools, it becomes much easier to explore even very different correct-by-construction parallelizations in a short time. An experienced designer can explore the trade-offs of, say, 10 different nontrivial parallelizations of an MPEG4 encoder in a day. www.embedded.com/europe | embedded systems design europe | AUGUST – SEPTEMBER 2008 The advantages offered by this fast exploration and optimization process then outweigh the cost of cleaning. We have found that the application cleaning and mapping tools eventually contribute toward a decreased time to market, with a lower risk (both in time and performance) when mapping and integrating software applications components and hardware/ software services on top of an MPSoC platform. Mieke Van Bavel (mieke.vanbavel@imec.be) is scientific editor at IMEC, the Interuniversity Microelectronics Center in Leuven, Belgium. At IMEC , Michael Tilman (michel.tilman@ imec.be) leads the software engineering team within the Nomadic Embedded Systems division. He is responsible for the development of tools that assist designers in cleaning and mapping sequential code onto heterogeneous multiprocessor platforms. 19 012-013-014-016-017-018-019_ESDE.indd 19 28/08/08 13:19:32 http://www.lauterbach.com http://www.lauterbach.de http://www.lauterbach.co.uk http://www.lauterbach.it http://www.lauterbach.co.jp http://www.lauterbach.cn http://www.lauterbach.com http://www.embedded.com/europe
Table of Contents Feed for the Digital Edition of Embedded Systems Design Europe - August/September 2008 Embedded Systems Design Europe - August/September 2008 Contents TI Overhauls DSP Lineup, Adds 15 Processors QNX Publishes Source Code for File System Congatec to Take on Proprietary Market Swiss Multicore Project Wins Microsoft Grant OpenCores Bundles Development Tool ARM Compiler Boosts Freescale i.MX31 LabVIEW Updated for Multicore and Wireless Cover Feature: Interactive Tool Supports Multiprocessor SoC Design Wanted: Benchmaking for Embedded VMM Hypervisors Graphical Design Empowers Spider Robots Building a Power Supply for Discontinuous Transmission Wireless Networks RTOS Selection & Best Practices Achieving Cache Coherence in a MIPS32 Multicore Design New Products Advertising Contacts Embedded Systems Design Europe - August/September 2008 Embedded Systems Design Europe - August/September 2008 - Embedded Systems Design Europe - August/September 2008 (Page Cover1) Embedded Systems Design Europe - August/September 2008 - Embedded Systems Design Europe - August/September 2008 (Page Cover2) Embedded Systems Design Europe - August/September 2008 - Contents (Page 3) Embedded Systems Design Europe - August/September 2008 - Contents (Page 4) Embedded Systems Design Europe - August/September 2008 - Contents (Page 5) Embedded Systems Design Europe - August/September 2008 - QNX Publishes Source Code for File System (Page 6) Embedded Systems Design Europe - August/September 2008 - QNX Publishes Source Code for File System (Page 7) Embedded Systems Design Europe - August/September 2008 - OpenCores Bundles Development Tool (Page 8) Embedded Systems Design Europe - August/September 2008 - OpenCores Bundles Development Tool (Page 9) Embedded Systems Design Europe - August/September 2008 - LabVIEW Updated for Multicore and Wireless (Page 10) Embedded Systems Design Europe - August/September 2008 - LabVIEW Updated for Multicore and Wireless (Page 11) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 12) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 13) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 14) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 15) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 16) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 17) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 18) Embedded Systems Design Europe - August/September 2008 - Cover Feature: Interactive Tool Supports Multiprocessor SoC Design (Page 19) Embedded Systems Design Europe - August/September 2008 - Wanted: Benchmaking for Embedded VMM Hypervisors (Page 20) Embedded Systems Design Europe - August/September 2008 - Wanted: Benchmaking for Embedded VMM Hypervisors (Page 21) Embedded Systems Design Europe - August/September 2008 - Graphical Design Empowers Spider Robots (Page 22) Embedded Systems Design Europe - August/September 2008 - Graphical Design Empowers Spider Robots (Page 23) Embedded Systems Design Europe - August/September 2008 - Building a Power Supply for Discontinuous Transmission Wireless Networks (Page 24) Embedded Systems Design Europe - August/September 2008 - Building a Power Supply for Discontinuous Transmission Wireless Networks (Page 25) Embedded Systems Design Europe - August/September 2008 - Building a Power Supply for Discontinuous Transmission Wireless Networks (Page 26) Embedded Systems Design Europe - August/September 2008 - Building a Power Supply for Discontinuous Transmission Wireless Networks (Page 27) Embedded Systems Design Europe - August/September 2008 - Building a Power Supply for Discontinuous Transmission Wireless Networks (Page 28) Embedded Systems Design Europe - August/September 2008 - Building a Power Supply for Discontinuous Transmission Wireless Networks (Page 29) Embedded Systems Design Europe - August/September 2008 - RTOS Selection & Best Practices (Page 30) Embedded Systems Design Europe - August/September 2008 - RTOS Selection & Best Practices (Page 31) Embedded Systems Design Europe - August/September 2008 - RTOS Selection & Best Practices (Page 32) Embedded Systems Design Europe - August/September 2008 - RTOS Selection & Best Practices (Page 33) Embedded Systems Design Europe - August/September 2008 - Achieving Cache Coherence in a MIPS32 Multicore Design (Page 34) Embedded Systems Design Europe - August/September 2008 - Achieving Cache Coherence in a MIPS32 Multicore Design (Page 35) Embedded Systems Design Europe - August/September 2008 - Achieving Cache Coherence in a MIPS32 Multicore Design (Page 36) Embedded Systems Design Europe - August/September 2008 - Achieving Cache Coherence in a MIPS32 Multicore Design (Page 37) Embedded Systems Design Europe - August/September 2008 - New Products (Page 38) Embedded Systems Design Europe - August/September 2008 - New Products (Page 39) Embedded Systems Design Europe - August/September 2008 - New Products (Page 40) Embedded Systems Design Europe - August/September 2008 - New Products (Page 41) Embedded Systems Design Europe - August/September 2008 - New Products (Page 42) Embedded Systems Design Europe - August/September 2008 - Advertising Contacts (Page 43) Embedded Systems Design Europe - August/September 2008 - Advertising Contacts (Page Cover4)
For optimal viewing of this digital publication, please enable JavaScript and then refresh the page. If you would like to try to load the digital publication without using Flash Player detection, please click here.