Exploiting Dynamic Timing Slack for Energy Efficiency in Ultra-Low-Power Embedded Systems
Exploiting Dynamic Timing Slack for Energy Efficiency in Ultra-Low-Power Embedded Systems
复制标题
利用动态时序余量提高超低功耗嵌入式系统的能效
DOI:
--
复制
发表时间:
2016
期刊:
影响因子:
--
通讯作者:
J. Sartori
中科院分区:
文献类型:
--
作者:
Hari Cherupalli;Rakesh Kumar;J. Sartori
Many emerging applications such as the internet of things, wearables, and sensor networks have ultra-low-power requirements. At the same time, cost and programmability considerations dictate that many of these applications will be powered by general purpose embedded microprocessors and microcontrollers, not ASICs. In this paper, we exploit a new opportunity for improving energy efficiency in ultralow-power processors expected to drive these applications -- dynamic timing slack. Dynamic timing slack exists when an embedded software application executed on a processor does not exercise the processor's static critical paths. In such scenarios, the longest path exercised by the application has additional timing slack which can be exploited for power savings at no performance cost by scaling down the processor's voltage at the same frequency until the longest exercised paths just meet timing constraints. Paths that cannot be exercised by an application can safely be allowed to violate timing constraints. We show that dynamic timing slack exists for many ultra-low-power applications and that exploiting dynamic timing slack can result in significant power savings for any ultra-low-power processors. We also present an automated methodology for identifying dynamic timing slack and selecting a safe operating point for a processor and a particular embedded software. Our approach for identifying and exploiting dynamic timing slack is non-speculative, requires no programmer intervention and little or no hardware support, and demonstrates potential power savings of up to 32%, 25% on average, over a range of embedded applications running on a common ultra-low-power processor, at no performance cost.