To fully exploit the capabilities of a DFVS CPU requires a control mechanism to select the appropriate performance level. IEM is a sophisticated control framework that uses information from the Operating System (OS) to determine the performance level. In combination with the DFVS hardware, IEM can save as much as 60% of the energy on the processor. The IEM software component is integrated into a customer’s product software build. It uses information from the OS to create a historical view of how application software is being executed. A number of different software algorithms (Policies) are applied to classify the types of activity and to analyse processor utilization patterns. The results are combined to make a global prediction about the future performance requirement for the system. This performance setting is communicated to the IEC hardware component (or directly to SoC-specific scaling hardware) and the processor adjusts accordingly. The IEM Software at a high-level includes a complete suite of software allowing customers to integrate IEM into their own solution. 
ARM’s approach to power management co-exists with traditional power management techniques. Power management generally focuses on the run-fast (typically 100% performance) then idle approach, once in idle state an IC or system could use sleep mode, standby or possibly be switched off. IEM looks beyond this towards how energy efficient an IC or system is during run-time. IEM sets the minimum performance level for any application running within an Operating System (OS), whilst maintaining the users’ expected Quality of Service (QoS). It is particularly well suited to multiple applications running on a single device, such as a PDA or Smart Phone.
OS Support For IEM to be used an OS must be IEM aware. ARM is actively working with a number of OS vendors to ensure this is the case. The following IEM ports to various Operating Systems are shown below.
• Linux 2.4: Full port available from ARM • Linux 2.6: Full port available from ARM • Symbian OS 9: Full port available from ARM • Nucleus RTOS: Contact ARM representative • Win CE 5.0: Contact ARM representative
|