表 4 对运行时应用编程接口进行了汇总。
函 数
功 能
PWRM_changeSetpoint
对最新的 V/F 设定点进行初始化更改
PWRM_configure
为 PWRM 设置新的配置参数
PWRM_getCapabilities
在该平台上获取有关 PWRM 性能的信息
PWRM_getCurrentSetpoint
获取当前的有效设定点
PWRM_getNumSetpoints
获取该平台上可用设定点的数量
PWRM_getSetpointInfo
获取设定点的相应频率及电压值
PWRM_getTransitionLatency
获取两个设定点之间比例缩放的时延
PWRM_idleCLOCks
使特定时钟域立即进入空闲模式
PWRM_registerNotify
注册可在发生特定功耗事件时进行调用的函数
PWRM_sleepDSP
将 DSP 转换至新的睡眠状态
PWRM_releaseDependency
解除此前声明的资源依赖性
PWRM_setDependency
声明对电源的可管理资源具有依赖性
PWRM_unregisterNotify
未注册来自 PWRM 的事件通知
表 4. 电源管理运行时 API 的汇总
由于已经建立了提高电源效率的基础,下一步工作就应该进行战略定义,以便开发低功耗应用,并充分利用 OS 中的部分技术及支持。
所建议的策略包括以下 11 个步骤。该战略具有可重复性:
当无法满足电源管理目标,也就是说需要采用额外的运行时方案才能满足应用电源预算时,就可重复访问这些步骤。
表 5 对上述战略进行了非常详尽的汇总说明。我们将在下文讨论如何高效应用上述策略。
表 5. 低功耗应用开发的详细策略
选用现成的 DSP 评估板 5509A EVM PLUS 板作为测试平台,该评估板不仅支持 V/F 缩放 ,还包含针对 DSP 内核与总体系统电源测量的钩子机制。
需要注意的是,EVM 作为易于使用的评估平台,并未在出厂时提供最佳功耗配置。另外,在评估效果时应谨记由于其易于配置,所以 EVM 上测量的总体系统电源数量就应多于通常情况下部署的平台。EVM 还能以 DSP 内核级与系统级两种方法测量各种技术的有效性。
步骤 1 无需解释。步骤 2 及 4 基本上都由这种特殊 EVM 完成,这充分表明了该平台的广泛适用性。步骤 3(试验)在 EVM 上进行,目的是测量各种技术的效果(如片上与片外存取的内核及系统电源、DMA 与 CPU 传输的比较、空闲外设及时钟域的作用等等)。
www.55dianzi.com
应用范例如图 2 所示。如欲获得该应用的详细信息(包括独立的应用手册及源代码),请查阅参考资料 15。
图 2. 音频应用
音频信号经过采样通过多信道缓冲串行端口 (McBSPs) 回放到 DSP。DSP DMA 引擎向McBSP 输入或读出采样信号。立体声音频数据通过 RxSplit 任务与 Processing Task(正在处理的任务)分离为两个数据流。DIP 开关用于选择 G726 编码/解码处理或简单音量控制。两个通道随后在 TxJoin 任务中组合,然后输出至扬声器。
Control(控制)任务被周期性触发,检查 DIP 开关以确定是否需要进行模式切换(如改变处理模式或进入睡眠状态)。根据应用模式的不同,Control(控制)任务可能会检查 CPU 负载,如果合适还会更改 V/F 设定点。
与电源相关的关键设计决定包括:
总体效果总结如表 6 所示。前后模式的主要差异用黑体表示。
设置
DSP 内核 (mW)
DSP 节省 (%)
电路板 (mW)
电路板节省 (%)
1. CPU 工作频率为 192MHz、电压为1.6v
均为片外代码
降低引导功耗功能:关闭
空闲环路:域处于活动状态
207.8
--
2219
--
2. CPU 工作频率为192MHz、电压为 1.6v
均为片上代码
降低引导功耗:关闭
空闲环路:域处于活动状态
203.3
2.17
1789
3. CPU 工作频率为192MHz、电压为1.6v
均为片上代码
降低引导功耗:开启
空闲环路:域处于空闲状态
本文关键字:如何 嵌入式 嵌入式系统-技术,单片机-工控设备 - 嵌入式系统-技术