Solution for optimizing power consumption of embedded software system

Publisher:BlossomBeautyLatest update time:2015-02-06 Source: eefocus Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

When developing battery-powered devices, especially systems with strict requirements on the standby or operating time of the device, such as mobile phones, it becomes increasingly important to reduce the overall energy consumption of the system. Therefore, taking comprehensive measures to reduce the consumption of battery energy is an important part of designing battery-powered devices.

Typical energy-saving measures include:

1 Select components with energy-saving properties

2. Improve system integration

3 Adjust CPU frequency

4 Adjust the power supply

5. Choose a microcontroller with energy-saving properties, cache memory, and on-chip memory

However, the best energy-saving effect can only be achieved by fully controlling the components that consume battery energy through software and giving full play to the energy-saving properties of the hardware. Energy consumption is the product of current, voltage and time, and the control software has a great influence on these parameters. Therefore, software engineers need to constantly try to determine the best configuration of these three parameters in different operating modes to achieve the best energy-saving purpose. For example, engineers may ask themselves the following questions:

 

1 Is the microprocessor working in the correct energy-saving mode?

2 How do program changes affect system energy consumption?

3 Are there any unexpected energy consumption peaks?

To answer questions like these, a test device is needed. This device needs to be able to measure, record and analyze the program and data flow of the control software, as well as the current and voltage gradients. At the same time, all the recorded information can be correlated in a simple way. At the 2007 Embedded World Annual Conference, as the world's first embedded software energy consumption analysis tool manufacturer, Lauterbach demonstrated a powerful and easy-to-use solution that successfully solved all of the above problems.

skills requirement:

In order to locate the energy consumption of each line of code, the following data information needs to be collected:

1 Control the program flow of the software. You can use a debugger with real-time tracing capabilities (PowerDebug) to collect this information.

2 Current and voltage gradients when the program is running. A logic analyzer with an analog/digital probe is a more suitable measurement device for this purpose.

With this data, the main task is to correlate the information of program flow, current and voltage gradient. However, if equipment from different equipment manufacturers is used, even if the relevant information can be correlated, the actual operation will be very complicated, and the analysis and statistics of the comprehensive data will also be quite difficult.

The innovative core of Lauterbach's embedded software energy consumption analysis technology is to provide solutions to the above problems and develop appropriate and easy-to-use information display and analysis methods.

 

solution:

The Lauterbach embedded software energy consumption measurement solution includes a debugger module (PowerDebug), a real-time tracing module (PowerTrace), and a logic analysis module (PowerIntergrator). Each module integrates an accurate time counter, and the counters of all modules are synchronized at the beginning of the program. Each module's record has a corresponding timestamp, so the records of each module can be associated through the timestamp. In this way, the energy consumption of each line of code can be determined.

To acquire current and voltage gradient data, TRACE32 PowerTrace II (trace module) or PowerIntegrator (logic analysis module) can be extended with the new Trace32 AnalogProbe module to:

1 Real-time recording of 4 voltage channels and 3 current channels

2 Generate trigger events in real time for limit values ​​and measuring ranges of current, voltage or energy consumption

To measure current, a shunt resistor is required in the circuit under test. The voltage drop across the resistor depends on the size of the resistor and the current through it. Trace32 AnalogProbe can measure/record the voltage value across the shunt resistor. This is a measurement method commonly used and supported by many *evaluation platforms.

The current, voltage and shunt resistor value can all be controlled through the following user interface. The energy consumption calculated from the current and voltage can also be controlled in this user window. In addition, the user can set the voltage to a fixed value for calculation.

Current, voltage and energy consumption can be displayed in tables and time-based graphs. All time-based information (program flow, graphs, current, voltage, energy consumption) can be synchronized with the trace information. If a position is selected/marked in one of the windows, all other windows are automatically refreshed and the corresponding time position information is also selected/marked.

In the following example, 8 LEDs are turned on in sequence, and a sinusoidal voltage is generated. The current-time curve (1) below plots the waveform of the current value changing with time, and the sinusoidal voltage curve is shown in (2). If the function "LED3_on" is selected/marked with a black vertical trace line in the current graph (1), voltage graph (2) or program flow graph (3), the system will automatically update the information in the "Trace.List" window (4), display the corresponding record, and mark it with a blue horizontal bar.

Each time a program is terminated, Trace32 software will automatically perform statistical analysis on the recorded information, counting the minimum, maximum and average energy consumption of each executed function, as well as the absolute energy consumption of each function and its percentage of total energy consumption. Through these statistical data, the program code/function with the highest energy consumption can be easily located.

Data statistics analysis can show the energy consumption of each function when it is running. As shown in Figure (5), it can be clearly seen that the system consumes the most energy when the function "LED8_on" is running (all LEDs are lit).

As an additional function, Lauterbach also provides a trigger unit, which can define trigger events by defining the limit value or range of current, voltage or energy. These trigger events can be used by the trigger unit to start and stop the control of the trace recording (Selective trace), or use these trigger signals to terminate the program. In this way, engineers can easily and quickly locate the cause of the peak of the relevant parameters.

 

Summarize:

Lauterbach's complete embedded software energy consumption analysis measurement solution provides a powerful and easy-to-use tool for R&D engineers to detect/locate the relationship between program code and system current/energy consumption. The above new features have been integrated into the current software environment. The relevant analysis hardware can also be easily implemented through expansion on the original tool. Long-term and close cooperation with major global mobile phone manufacturers ensures the practical application effect of Lauterbach's tools. By integrating new innovative solutions, Lauterbach once again confirmed its innovative ability in the field of embedded processor development tools. As a new solution expansion module, Trace32 AnalogProbe can be integrated into the existing Lauterbach modular development tool system, adding new value to customers' existing TRACE32 tools.

Reference address:Solution for optimizing power consumption of embedded software system

Previous article:Application of large capacity NAND Flash TC58DVG02A1FT00 in embedded systems
Next article:Research on SDRAM Timing Control in Embedded Video Systems

Recommended ReadingLatest update time:2024-11-23 07:25

The most comprehensive review of domestic CPU performance: healthy competition and survival of the fittest
In recent years, the Chinese government has vigorously developed the integrated circuit industry, and domestic CPUs have grown like mushrooms after rain. How is the performance of domestic CPUs, and what is the gap with Intel? The author will make a relatively comprehensive and objective inventory of domestic CPUs.  
[Embedded]
Mobile chips invade PCs. Is this a big blow to domestic CPUs or a new opportunity?
  In the post-smartphone era, affected by the slowdown in the mobile phone market, mobile chip manufacturers are expanding into new application areas, such as VR/AR, smart cars, and the Internet of Things. At the recently held second Snapdragon Technology Summit, Qualcomm, together with ASUS, HP, telecom operator Spri
[Mobile phone portable]
Imagination and Andes Technology collaborate to validate GPUs using RISC-V CPU IP
Collaboration delivers a complete computing solution and demonstrates flexibility of combined IP London, UK – January 20, 2022 – Imagination Technologies and Andes Technology have jointly announced that they have collaborated to successfully test and validate the IMG B-series GPU using the RISC-V-
[Embedded]
The popularity of convertible notebooks drives the integration of CPU and power management IC
The central processing unit (CPU) of personal computers will be more integrated with power management ICs. The rise of the convertible laptop/tablet trend has brought more difficult power consumption and thin and light design challenges, so the processor giant Intel has improved the CPU to a low-voltage operation mode,
[Analog Electronics]
The popularity of convertible notebooks drives the integration of CPU and power management IC
A Deeper Look at Automotive System-on-Chip (SoC): Overview of ARM’s Business Model and CPU Microarchitecture
The core components of automotive system-on-chip (SoC) include CPU, GPU, AI accelerator, on-chip bus and interconnection. Currently, CPUs are mainly ARM architecture, x86 architecture and RISC-V architecture. ARM architecture occupies the vast majority of the market. Image source: Internet
[Automotive Electronics]
A Deeper Look at Automotive System-on-Chip (SoC): Overview of ARM’s Business Model and CPU Microarchitecture
Domestic CPU Loongson "God-level" optimization: 430M installation package reduced to 22M
Last year, the domestic CPU manufacturer Loongson Technology launched its self-developed LoongArch instruction set, which supports multiple instruction sets such as x86, ARM and MIPS through binary translation technology and is compatible with multiple platforms. Now Loongson has announced that it has optimized and up
[Semiconductor design/manufacturing]
Domestic CPU Loongson
Design of Switching and Control System Based on Dual CPU
Single-chip microcomputers are small, flexible, and easy to expand into powerful control systems. At present, some monitoring terminals and many independent control systems (such as: microcomputer excitation devices of generators) are mostly composed of single-chip microcomputers as the core. However, due to reasons
[Microcontroller]
Design of Switching and Control System Based on Dual CPU
s3c2440 bare metal - memory controller 3 - SDRAM principle - how does the CPU access sdram
1. SDRAM Principle black (1) SDRAM internal storage structure: (2) Let’s take a look at the schematic diagram of the SDRAM connected to 2440: SDRAM pin description: A0-A12: Address bus D0-D15: data bus (bit width 16, 2 chips cascaded to a bit width of 32) BA0-BA1:
[Microcontroller]
Latest Microcontroller Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号