ABSTRACT

Arindam Mukherjee, Arun Ravindran, Bharat Kumar Joshi, Kushal Datta and Yue Liu

Electrical and Computer Engineering Department University of North Carolina Charlotte, NC, USA {amukherj, aravindr, bsjoshi, kdatta, yliu42}@uncc.edu

10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

10.1.1 Why Is Autonomous Power Management Necessary? 339

10.1.1.1 Sporadic Processing Requirements . . . . . 339

10.1.1.2 Run-time Monitoring of System Parameters 340

10.1.1.3 Temperature Monitoring . . . . . . . . . . 340

10.1.1.4 Power/Ground Noise Monitoring . . . . . . 341

10.1.1.5 Real-Time Constraints . . . . . . . . . . . 341

10.2 Survey of Autonomous Power Management Techniques . . . . . 342

10.2.1 Clock Gating . . . . . . . . . . . . . . . . . . . . . . 342

10.2.2 Power Gating . . . . . . . . . . . . . . . . . . . . . . 343

10.2.3 Dynamic Voltage and Frequency Scaling . . . . . . . 343

10.2.4 Smart Caching . . . . . . . . . . . . . . . . . . . . . . 344

10.2.5 Scheduling . . . . . . . . . . . . . . . . . . . . . . . . 345

10.2.6 Commercial Power Management Tools . . . . . . . . . 346

10.3 Power Management and RTOS . . . . . . . . . . . . . . . . . . 347

10.4 Power-Smart RTOS and Processor Simulators . . . . . . . . . . 349

10.4.1 Chip Multi-Threading (CMT) Architecture Simulator 350

10.5 Autonomous Power Saving in Multi-Core Processors . . . . . . 351

10.5.1 Opportunities to Save Power . . . . . . . . . . . . . . 353

10.5.2 Strategies to Save Power . . . . . . . . . . . . . . . . 354

10.5.3 Case Study: Power Saving in Intel Centrino . . . . . 356

10.6 Power Saving Algorithms . . . . . . . . . . . . . . . . . . . . . 358

10.6.1 Local PMU Algorithm . . . . . . . . . . . . . . . . . 358

10.6.2 Global PMU Algorithm . . . . . . . . . . . . . . . . . 358

10.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362

Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363

Portable embedded systems place ever-increasing demands on highperformance, low-power microprocessor design. Recent years have witnessed a dramatic transition in the expectations from, and the capabilities of, embedded systems. This in turn, has triggered a paradigm shift in the embedded processor industry, forcing manufacturers of embedded processors to continually alter their existing roadmap to incorporate multiple cores on the same chip. From a modest beginning of dual and quad cores that are currently available in the 45 and 32 nm technologies, multi-core processors are expected to include hundreds of cores in a single chip in the near future. In SuperComputing 2008, Dell announced that it will release a workstation containing an 80-core processor around 2010 [1], and Intel is planning a 256-core processor in the near future. While the industry focus is on putting higher numbers of cores on a single chip, the key challenge is to optimally architect these processors for low power operations while satisfying area and often stringent real-time constraints, especially in embedded platforms. This trend, together with unpredictable interrupt profiles found in modern embedded systems, motivates the need for smart power saving features in modern embedded processors.