NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.
OMAP35x DVSDK Power Benchmarks
Contents
Power Benchmark Numbers on OMAP35x DVEVM[edit]
Scenario-Power Matrix[edit]
SID = Scenario ID
Scenarion Description[edit]
Notes: -
- OMAP3_POWER_SID_004 is measured with DSP off. The DSP is turned on only by DSPLink when there is a DSP executable to be loaded and happens during
Engine_open()
API. Since the Codec Engine framework is not being used in scenario 4, the DSP is truly turned off.
Power optimization[edit]
Audio demo optimizations[edit]
1. Minimum configured kernel is used for audio demos
- check here for details on minimum kernel configuration
2. Removed unwanted API calls in DVSDK audio demo for power reduction
- a. Evaluate the control and data flow
- b. Removed user interface performance updates
- c. Removed API calls related to OMAP35x keypad interrupts
3. Enabled low power options at run-time.
- a. Enabling sleep_while_idle from cpuidle framework for power reduction
- b. Enabling sr_vdd1_autocomp and sr_vdd2_autocomp from SmartReflex framework for power reduction
4. Some other experimented techniques/scenarios
- a. Read large chunk of data from input file.
- b. Provide DSP application a list/array of buffers to work on
- c. Make the buffers allocated by CMEM cached
- d. Use RAMDISK instead of NFS file system
Environment Setup[edit]
Hardware details[edit]
1. OMAP3x EVM, ES3.1 Rev G board, ARM clocked at 125MHz and DSP clocked at 90MHz
2. National Instruments DAQPad with shunt for power measurment, details NI DAQPad-6015
3. Speakers
Software details[edit]
1. Linux Operating System, PSP version - AM35x-OMAP35x-PSP-SDK-03.00.00.05
2. Third Party Tools such as arm-2009q1 toolchain
3. DVSDK, version DVSDK_3_01_00_05
Power Measurement[edit]
Power Measurement Setup[edit]
This section provides the details of the OMAP35x power measurement setup. The instrument used for measuring the power of OMAP35x is National Instruments DAQPad-6015 with manual shunt for calibration.
Hardware Setup[edit]
The system consists of:
1. One National Instruments 6036E PCI Data Acquisition Card (16 bit A/D for PCI) or National Instruments DAQPad-6015 (16 bit A/D for USB)
2. One external Shunt assembly for sensing the current.
Shunt connection procedure to OMAP3x.
- a. Ground pin of the Shunt is connected to the ground pin of OMAP3x
- b. Shunt has two calibration circuits one with 0.5ohm capable and other is 0.1ohm. Connect one of the terminals to OMAP3x jumper J6 for VDD1 power measurement.
- c. Connect the same terminals to OMAP3x jumper J5 for VDD2 power measurement.
Software Setup[edit]
1. Install the NI software along with DAQPad-6015 product
2. Install TI Power consumption – Measurement and Analysis Tool (PC-MAT)
Measurement[edit]
Steps for running the Low power DVSDK demos
1. Boot the board with minimum kernel configured uImage by using these boot arguments
- a. Boot arguments for NFS file system:
- setenv netmask <<Net Mask>>
- setenv ipaddr <<NFS server running IP>>
- setenv serverip <<Host Machine IP>>
- setenv gatewayip <<Gateway IP>>
- setenv bootfile uImage
- setenv bootcmd ‘tftp 0x80000000 uImage;bootm’
- setenv bootargs ‘mem=100M@0x80000000 mem=128M@0x88000000 console=ttyS0,115200n8 noinitrd ip=dhcp rw root=/dev/nfs nfsroot=172.24.190.141:/home1/anil/workdir/filesys/power,nolock mpurate=125
- b. Boot arguments for RAMDISK:
- setenv netmask <<Net Mask>>
- setenv ipaddr <<NFS server running IP>>
- setenv serverip <<Host Machine IP>>
- setenv gatewayip <<Gateway IP>>
- setenv bootfile uImage
- setenv bootcmd 'tftp 0x80000000 uImage;tftp 0x81600000 ramdisk.gz;bootm 80000000'
- setenv bootargs mem=100M@0x80000000 mem=128M@0x88000000 console=ttyS0,115200n8 root=/dev/ram0 initrd=0x81600000,36M ramdisk_size=36864 mpurate=125'
- c. Boot arguments for JFFS2:
- setenv netmask <<Net Mask>>
- setenv ipaddr <<NFS server running IP>>
- setenv serverip <<Host Machine IP>>
- setenv gatewayip <<Gateway IP>>
- setenv bootfile uImage
- setenv bootcmd ‘tftp 0x80000000 uImage;bootm’
- setenv bootargs ‘mem=100M@0x80000000 mem=128M@0x88000000 console=ttyS0,115200n8 noinitrd root=/dev/mtdblock4 rw rootfstype=jffs2 mpurate=125’
2. Enable these modules in kernel configuration for CPU idle framework
- a. Enable Power Management Debug Support
- b. CPU idle PM support
3. Run these commands after bootup for enabling CPU idle framework
- a. mkdir /dfs
- b. mount -t debugfs debugfs /dfs
- c. echo 1 > /dfs/pm_debug/sleep_while_idle
4. Run these commands after bootup for enabling Smart Reflex framework
- a. echo 1 > /sys/power/sr_vdd1_autocomp (during VDD1 power measurement)
- b. echo 1 > /sys/power/sr_vdd2_autocomp (during VDD2 power measurement)
5. Run the application
- a. cd /opt/power/omap3530
- b. ./loadmodules.sh (which will initialize dsplink, cmem, sdma and lpm)
- c. ./decode -a data/sounds/davincieffect_LC.aac
Note: For direct execution run pwr_optimal_setting_audio.sh script
6. Run PC-MAT.exe from your host machine then PC-MAT GUI will display the power values
Minimum Kernel configuration[edit]
Kernel configuration for low power audio demos. These drivers are disabled from kernel configuration.
1. USB support disabled
2. MMC/SD/SDIO card support disabled
3. HID Devices disabled
4. Watchdog Timer Support disabled
5. Keyboard drivers disabled
6. Touch screen drivers disabled
7. Wireless driver disabled
8. Graphics support disabled
9. Multimedia support disabled
Useful Links[edit]
Audio Power Benchmarking Use-case
OMAP35x Low Power Demos ReleaseNotes