Abstract

Since most of the energy spent in embedded processors is consumed when accessing instruction and data caches, scratchpad memories (SPMs) are promising for energy efficiency, because they require less energy per access than caches do. Most SPM mapping techniques require the availability of source code and are therefore unable to treat third-party software. This work handles precompiled software while simultaneously mapping code and data elements into SPMs. It evaluates energy savings for code elements defined either by procedure or basic block (BB) boundaries. For a subset of the MiBench program suite, the experimental results show that the adoption of BB boundaries leads to average energy savings of 30% for a 1KB SPM, which are 10% better than when procedure boundaries are considered. For procedure boundaries to achieve average energy savings comparable to those obtained with BBs, SPM size must be increased to 4KB, resulting in a 31% area overhead in the memory subsystem. Higher savings, on the order of 40%, were achieved for real-life use cases exhibiting BBs with high profit/cost ratios. This work also shows that, when exploiting the finer-grain BB boundaries to achieve higher savings, relocatable object files are the most efficient binary media (average patching time is 2.05 seconds), despite the higher number of resulting code elements (mapping takes at most 10 ms).

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call