Authors: Scarpazza, Daniele Paolo; Brandolese, Carlo
Source: Journal of Low Power Electronics, Volume 2, Number 2, August 2006 , pp. 129-139(11)
Publisher: American Scientific Publishers
Abstract:
Embedded system designers frequently face the problem of estimating how much energy and time are spent in the different portions of their software. This is crucial to determine how fast their software runs on a platform, how much energy it consumes, where optimizations are needed, or what hardware it requires to ensure a given speed. This problem is not effectively solved by current approaches: Instruction-level simulation (ISS), static timing analysis (STA), and source-level instrumentation (SLI). ISS provides too low-level information and is too slow, STA cannot deal with dynamism, while current SLI tools only provide global or function-level estimates. We propose a novel technique to estimate time and energy consumed by individual operations in the program when running on a single-issue processor core. With this information, designers can better understand which portions of the source code cause the major consumptions, and apply optimizations there. We implemented the methodology in a tool flow which exhibits simulation times 10,000 shorter than a reference ISS, and shows good estimation accuracy.Keywords: EMBEDDED SYSTEMS; ENERGY; POWER; ESTIMATION; OPTIMIZATION
Document Type: Research article
DOI: 10.1166/jolpe.2006.058
Links for this article