Freescale Semiconductor Application Note Document Number: AN3876 Rev. 0, 06/2009 i.MX35 Multimedia Power Consumption Under Linux by Multimedia Applications Division Freescale Semiconductor, Inc. Austin, TX This document describes the considerations for measuring the current consumption of the i.MX35 System on a Chip (SOC) in an embedded application under the Linux operating system. This guide is intended for users of the i.MX35 SOC in power sensitive applications where the Linux operating system is to be used. For more information about GStreamer visit http://gstreamer.freedesktop.org/. © Freescale Semiconductor, Inc., 2009. All rights reserved. 1. 1.1. 1.2. 1.3. 1.4. 1.5. 1.6. 2. A. B. C. D. Contents Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Test Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Current Measurement Details . . . . . . . . . . . . . . . . . . . Software and OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Media File Information . . . . . . . . . . . . . . . . . . . . . . . . GStreamer Command Lines . . . . . . . . . . . . . . . . . . . . Raw Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Peak Power Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 2 3 3 3 3 3 4 5 6 7 Overview 1 Overview This application note presents a method for characterizing the real-time power consumption of the i.MX35 processor using the i.MX35 Product Development Kit (PDK) with the Linux operating system. 1.1 Method To measure the power consumption of the i.MX35, various power supply voltages and currents are measured for the i.MX35 during operation. Power consumption is calculated by summing the product of the voltage and current for each power supply. 1.2 Test Setup A pre-production i.MX35 PDK, also known as the i.MX35 3-Stack, was used as the measurement platform for this application note. The version 1.1.2 CPU card had a production i.MX35 device on it, marked PCIMX356AVM4B. Four power supply series resistors for the Core, CPU IO, PLL and DDR supplies were removed from the CPU card. Connection points were added to the resistor pads to allow the connection of external ammeters in place of the 0.02 Ω series resistors. The schematic identifiers for the pre-production board for these resistors are not given here. The corresponding resistor identifiers for the production CPU card are: • R228 — Core • R229 — CPU IO • R270 — PLL • R218 — DDR The current for each of these four supplies was measured by connecting four bench ammeters to the CPU card across the series resistor pads, one for each power supply. The voltage for each supply was measured at the ammeter on the i.MX side. Figure 1 shows the connection diagram of a single ammeter and voltmeter to series power supply resistor Rxx on the CPU card. Power Supply CPU Card Rxx A i.MX35 V GND Figure 1. Power Measurement Connection Diagram i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 2 Freescale Semiconductor Results 1.3 Current Measurement Details The use of multiple bench ammeters in place of the 0.02 Ω series resistors was chosen as the method for this application note. The design of the CPU card precluded separating out only the i.MX35 contribution to the DDR power supply; therefore, there was no way to split the i.MX35 from the rest of the circuitry in the bus without a layout change. As such, the DDR power consumption necessarily includes the contribution of four DDR2 memories (K4T51163QE-ZID5), two 74VCX163245MTD and one 74LVC4245APW in addition to the i.MX35. 1.4 Software and OS The scope of the power measurements for this application note is limited to multimedia codecs playing or converting media files under the Linux operating system. The Linux kernel and root file system were built from the internal source archive: 20090330_L2.6.26_4.0.0_MX37TO1.1.1_AV_ER6_sp_ww12_2009. This particular source archive contained all the GStreamer codecs used. The root file system was built as a JFFS2 file system. The build environment was Ubuntu 8.10 and had all current updates applied at the time. The kernel and rootfs were loaded into the NAND flash of the PDK via the Freescale's Advanced ToolKit version 1.66. 1.5 Media The format details of the various audio and multimedia files used in this application note are contained in Appendix A, “Media File Information.” The media files were played or converted using GStreamer, an open-source multimedia framework under which the Freescale-optimized codecs are used as plugins. The specific command lines for GStreamer used in this application note are in Appendix B, “GStreamer Command Lines.” 1.6 Data Collection For each media file/codec, the supply current of each power supply was monitored, visually averaged and then recorded along with the corresponding supply voltage. The measurements were conducted with the i.MX35 core running at 400 MHz and 532 MHz. 2 Results Table 1 contains the calculated and summarized average power consumption of the i.MX35 for various media files under Linux. All the raw current and voltage measurements are contained in Appendix C, “Raw Data.” The power consumption is the summation of the calculated power of each power supply (the product of the voltage and current measured for that supply). Although as many as three significant figures appear to be presented in Table 1, the values should not be considered as having more than two significant figures because of the visual averaging of the current during the measurements. i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 Freescale Semiconductor 3 Media File Information Table 1. Multimedia Average Power Consumption Summary 532 MHz (mW)1 400 MHz (mW) MP3 Playback 315 297 31 29 1.8 WAV Playback 313 298 29 30 0.3 AAC+ SBR Playback 338 319 54 50 3.9 WMA Playback 315 298 31 30 1.5 WMA Pro Playback 322 300 38 32 5.7 WMA Lossless Playback 370 345 86 77 9.5 WMV/ASF Playback 455 424 171 156 15.7 MP4 (MPEG4+MP3) Playback 418 391 135 123 12.0 AVI (MPEG4+MP3) Playback 418 392 135 124 10.5 MP3 Record (File to File) 582 492 298 224 74.5 Idle (Nothing Running) 284 268 — — — 1312 — — — — Media Type Peak Power by Simulation2 Delta @ 532 MHz Delta @ 400 MHz (mW) (mW) Difference (mW) 1 DDR component is a combination of i.MX35 contribution plus all other 1.8 V devices (4xDDR2 (K4T51163QE-ZID5), 2x74VCX163245MTD, 1x74LVC4245APW). 2 The peak power is the summation of the maximum power by simulation for the individual modules of the i.MX35 at 532 MHz, which are tabulated in Appendix D, “Peak Power Data.” The first two columns in Table 1 show the total power consumption of the i.MX35 for the four power supplies measured. Although the actual contribution of the i.MX35 is lower than this number because the layout of the CPU card precluded separating the i.MX35 from the other devices on that power supply rail, the relative proportion of contribution to power is assumed to be constant. The second two columns are difference between the power consumption calculated for each codec and the idle current when no codec was active for each corresponding core frequency. Idle was considered to be the state when nothing from the command line was executing and only the normal processes that regularly run in the background were active. The last column is the absolute value of the difference between the delta measurements. As would be expected, current consumption increases as a function of core frequency. In looking at the difference column and the fact that only two significant figures should be considered, the contribution to power consumption by all the codecs except MP3 recording is essentially the same (no difference is greater than ~16 mW). The difference with MP3 recording is that it is not constrained to real-time output of audio and/or video like the other codecs; all the other media played at normal real-time rates. The last row in Table 1 is the maximum power consumption for the i.MX35 at 532 MHz, which is the summation of the maximum consumption for each module in the i.MX35. Appendix A Media File Information Table 2 contains the information for each media file used in the collection of the data for this application note. The actual file names of the media files have been omitted. i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 4 Freescale Semiconductor GStreamer Command Lines Table 2. Media File Information Media File Information MP3 Input File MPEG Layer 3, Stereo, 44.1 KHz, 160 Kbits/sec MP3 Output File MPEG Layer 3, Stereo, 44.1 KHz, 128 Kbits/sec (output of MP3 record) WAV File 16-bit integer (little endian), Stereo, 44.1 KHz, 1.41 Mbits/sec, 16-bits/sample WMV/ASF File Audio: WMA2 codec, Stereo, 44.1 KHz, 48 Kbits/sec, 16-bits/sample Video: WMV1 codec, 320x240 resolution MP4 File Audio: MPGA codec, Stereo, 44.1 KHz, 1411 Kbits/sec, 16-bits/sample Video: MP4V codec, 320x240 resolution, 29.97 fps AVI File Audio: MPGA codec, Stereo, 12 KHz, 160 Kbits/sec Video: MP4V codec, 320x240 resolution, 30.00 fps WMA Pro File WMAP codec, Stereo, 48 KHz, 128 Kbits/sec, 16-bits/sample WMA Lossless File WMAL codec, Stereo, 48 KHz, 1152 Kbits/sec, 24-bits/sample WMA File WMA2 codec, Stereo, 48 KHz, 192 Kbits/sec, 16-bits/sample AAC SBR File MP4A codec, Stereo, 44.1 KHz, AAC extensions SBR+PS Appendix B GStreamer Command Lines Below are the GStreamer command lines and pipes used to play each media file type. The actual file names used have been omitted. MP3 Playback gst-launch filesrc location=filename.mp3 ! mfw_mp3decoder ! alsasink WAV Playback WMV/ASF Playback gst-launch filesrc location=filename.wav ! wavparse ! alsasink gst-launch filesrc location=filename.wmv ! mfw_asfdemuxer name=demux demux. ! queue max-size-buffers=0 ! mfw_wmvdecoder ! mfw_v4lsink demux. ! queue max-size-buffers=0 ! mfw_wma10decoder ! alsasink AAC+SBR Playback gst-launch filesrc location=filename.aac ! mfw_aacdecoder ! alsasink WMA Playback gst-launch filesrc location=filename.wma ! mfw_asfdemuxer ! mfw_wma10decoder ! alsasink WMA Pro Playback gst-launch filesrc location=filename.wma ! mfw_asfdemuxer ! mfw_wma10decoder ! alsasink WMA Lossless Playback gst-launch filesrc location=filename.wma ! mfw_asfdemuxer ! mfw_wma10decoder ! alsasink MP4 (MPEG4+MP3) Playback gst-launch filesrc location=filename.mp4 ! mfw_mp4demuxer name=demux demux. ! queue max-size-buffers=0 ! mfw_mpeg4decoder ! mfw_v4lsink demux. ! queue max-size-buffers=0 ! mfw_mp3decoder ! alsasink AVI (MPEG4+MP3) Playback gst-launch filesrc location=filename.avi ! mfw_avidemuxer name=demux demux. ! queue max-size-buffers=0 ! i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 Freescale Semiconductor 5 Raw Data mfw_mpeg4decoder ! mfw_v4lsink demux. ! queue max-size-buffers=0 ! mfw_mp3decoder ! alsasink gst-launch filesrc location=filename.wav ! wavparse ! mfw_mp3encoder ! filesink location=output.mp3 MP3 Record (File to File) Appendix C Raw Data The raw voltage and current data for each media file, power supply, and core frequency is shown in Table 3. Table 3. Raw Data 532 MHz Media Type MP3 Playback WAV Playback WMV/ASF Playback AAC+ SBR Playback WMA Playback Power Supply 400 MHz Voltage (V) Current (MA) Power (mW) Total (mW) Voltage (V) Current (MA) Power (mW) Total (mW) Core 1.33 80 106 315 1.22 73 89 297 DDR1 1.8 79 145 1.8 79 145 CPU IO 3.3 12.3 40 3.3 12.4 41 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 80 106 1.22 75 92 DDR1 1.8 78 143 1.8 78 143 CPU IO 3.3 12.4 41 3.3 12.4 41 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 140 186 1.22 130 159 DDR1 1.8 110 201 1.8 108 198 CPU IO 3.3 13.5 44 3.3 13.6 45 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 96 128 1.22 89 109 DDR1 1.8 80 146 1.8 80 146 CPU IO 3.3 12.4 41 3.3 12.4 41 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 80 106 1.22 75 92 DDR1 1.8 79 145 1.8 78 143 CPU IO 3.3 12.4 41 3.3 12.4 41 PLL 1.4 16.2 23 1.4 16.1 23 313 455 338 315 298 424 319 298 i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 6 Freescale Semiconductor Peak Power Data Table 3. Raw Data (continued) 532 MHz Media Type WMA Pro Playback WMA Lossless Playback MP4 (MPEG4+MP3) Playback AVI (MPEG4+MP3) Playback Power Supply Voltage (V) Current (MA) Power (mW) Total (mW) Voltage (V) Current (MA) Power (mW) Total (mW) Core 1.33 85 113 322 1.22 77 94 300 DDR1 1.8 79 145 1.8 78 143 CPU IO 3.3 12.4 41 3.3 12.4 41 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 120 160 1.22 112 137 DDR1 1.8 80 146 1.8 79 145 CPU IO 3.3 12.4 41 3.3 12.4 41 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 120 160 1.22 110 134 DDR1 1.8 105 192 1.8 104 190 CPU IO 3.3 13.2 43 3.3 13.2 43 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 120 160 1.22 110 134 DDR1 1.8 105 192 1.8 105 192 CPU IO 3.3 13.2 43 3.3 13.1 43 PLL 1.4 16.2 23 1.4 16.1 23 1.22 201 245 MP3 Record (File to File) Core Idle (Nothing Running) 1 400 MHz 370 418 418 1.33 245 326 DDR1 582 1.8 105 192 1.8 100 183 CPU IO 3.3 12.5 41 3.3 12.5 41 PLL 1.4 16.2 23 1.4 16.1 23 Core 1.33 61 81 1.22 54 66 DDR1 1.8 76 139 1.8 76 139 CPU IO 3.3 12.3 40 3.3 12.3 40 PLL 1.4 16.2 23 1.4 16.1 23 284 345 391 392 492 268 DDR current is a combination of i.MX35 contribution plus all other 1.8 V devices (4xDDR2 (K4T51163QE-ZID5), 2x74VCX163245MTD, 1x74LVC4245APW). Appendix D Peak Power Data Table 4 shows the peak power numbers for the i.MX35 under worst case voltage and temperature conditions. These values are derived from the i.MX35 with core clock speeds up to 532 MHz. Common supplies have been bundled according to Freescale’s power-up sequence requirements. Peak numbers are provided for system designers so that the i.MX35 power supply requirements are satisfied during startup i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 Freescale Semiconductor 7 Peak Power Data and transient conditions. Freescale recommends that system current measurements be taken with customer-specific use-cases to reflect normal operating conditions in the end system. Table 4. Peak Power Data 1 Supply Voltage (V) Peak Current (mA) Peak Power (mW) QVCC 1.47 400 588 MVDD_PVDD 1.65 20 33 NVCC_EMI1 NVCC_EMI2 NVCC_EMI3 NVCC_LCDC NVCC_NFC 1.9 90 171 FUSE_VDD 1 3.6 62 223 NVCC_MISC NVCC_CSI NVCC_SDIO NVCC_CRM NVCC_ATA NVCC_MLB NVCC_JTAG 3.6 60 216 OSC24M_VDD OSC_AUDIO_VDD PHY1_VDDA PHY2_VDD USBPHY1_UPLLVDD USBPHY1_VDDA_BIAS 3.6 25 90 Total — — 1321 This rail is typically tied to ground, it only needs a voltage if in-system fuse burning is needed. i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 8 Freescale Semiconductor Peak Power Data THIS PAGE INTENTIONALLY LEFT BLANK i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 Freescale Semiconductor 9 Peak Power Data THIS PAGE INTENTIONALLY LEFT BLANK i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 10 Freescale Semiconductor Peak Power Data THIS PAGE INTENTIONALLY LEFT BLANK i.MX35 Multimedia Power Consumption Under Linux, Rev. 0 Freescale Semiconductor 11 How to Reach Us: Home Page: www.freescale.com Web Support: http://www.freescale.com/support USA/Europe or Locations Not Listed: Freescale Semiconductor, Inc. Technical Information Center, EL516 2100 East Elliot Road Tempe, Arizona 85284 1-800-521-6274 or +1-480-768-2130 www.freescale.com/support Europe, Middle East, and Africa: Freescale Halbleiter Deutschland GmbH Technical Information Center Schatzbogen 7 81829 Muenchen, Germany +44 1296 380 456 (English) +46 8 52200080 (English) +49 89 92103 559 (German) +33 1 69 35 48 48 (French) www.freescale.com/support Information in this document is provided solely to enable system and software implementers to use Freescale Semiconductor products. There are no express or implied copyright licenses granted hereunder to design or fabricate any integrated circuits or integrated circuits based on the information in this document. Freescale Semiconductor reserves the right to make changes without further notice to any products herein. Freescale Semiconductor makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does Freescale Semiconductor assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. “Typical” parameters which may be provided in Freescale Semiconductor data sheets and/or specifications can and do vary in different applications and actual performance may vary over time. All operating parameters, including “Typicals” must be validated for each customer application by customer’s technical experts. Freescale Semiconductor does not convey any license Japan: Freescale Semiconductor Japan Ltd. Headquarters ARCO Tower 15F 1-8-1, Shimo-Meguro, Meguro-ku Tokyo 153-0064 Japan 0120 191014 or +81 3 5437 9125 [email protected] under its patent rights nor the rights of others. Freescale Semiconductor products are Asia/Pacific: Freescale Semiconductor China Ltd. Exchange Building 23F No. 118 Jianguo Road Chaoyang District Beijing 100022 China +86 10 5879 8000 [email protected] claims, costs, damages, and expenses, and reasonable attorney fees arising out of, For Literature Requests Only: Freescale Semiconductor Literature Distribution Center P.O. Box 5405 Denver, Colorado 80217 1-800 441-2447 or +1-303-675-2140 Fax: +1-303-675-2150 LDCForFreescaleSemiconductor @hibbertgroup.com Document Number: AN3876 Rev. 0 06/2009 not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support or sustain life, or for any other application in which the failure of the Freescale Semiconductor product could create a situation where personal injury or death may occur. Should Buyer purchase or use Freescale Semiconductor products for any such unintended or unauthorized application, Buyer shall indemnify and hold Freescale Semiconductor and its officers, employees, subsidiaries, affiliates, and distributors harmless against all directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that Freescale Semiconductor was negligent regarding the design or manufacture of the part. Freescale and the Freescale logo are trademarks or registered trademarks of Freescale Semiconductor, Inc. in the U.S. and other countries. All other product or service names are the property of their respective owners. © Freescale Semiconductor, Inc., 2009. All rights reserved.