关键字:
PSoC, 低功耗, 低功耗应用
PSoC(可编程片上系统)是Cypress半导体生产的包含有8位微处理器核和数字与模拟混合信号阵列的可编程片上系统。其应用领域与8位的MCU相同。区别于8位的MCU,PSoC的数字周边资源(如定时器、PWM、UART等等)和模拟周边资源(放大器、比较器、滤波器等等)以数字模块和模拟模块的方式给出。不同型号的PSoC芯片的差异主要在于其拥有的数字模块和模拟模块的数量的不同。用户可以根据自己的需要来定义这些模块。所有这些预定义的模块被称之为用户模块。PSoC Designer也为用户提供这些用户模块的API函数供用户编程时调用。正因为PSoC可以同时处理模拟信号和数字信号并且它的数字模块和模拟模块资源可以由用户配置,所以与MCU相比有更好的弹性和更高的集成度。这些性能使得它适合便携式设备的应用。但便携式设备的应用通常要求芯片有低的功耗,而PSoC由于内部的模块资源比较多,所以正常情况下它的功耗可能较其他芯片会高一些。本文通过对功耗在PSoC内各资源的分配的分析和正确使用PSoC的SLEEP功能来介绍实施PSoC低功耗应用。
功耗在PSoC内各资源的分配


表1:PSoC 内资源功耗分配表。
表一给出了PSoC内所有资源的的功耗分配,它以电流消耗的方式来表示。除了CPU时钟以外,表中的电流值都是对应一个单元或一个单位资源所消耗的电流。如果相同的资源有n个,则该类资源所消耗的电流要乘以n。例如,一个应用需使用4个时钟频率为3MHz的数字模块,5个低功率等级/高运放偏置的模拟模块、20个时钟为0.25MHz的IO口、4个时钟为0.25MHz的排总线、一个输出缓冲器(高运放偏置),供电电源为3.3V,而CPU时钟为12MHz,通过查表和计算我们可以得到芯片所消耗的电流I和功耗P分别是:
I=2.76?+4×0.035+5×0.3+20×0.015+4×0.011+2.0=6.748mA
P=I×V=6.748×3.3=22.268mW
从表中我们也可以得到如下一些关系:
功耗是正比于Vdd电压;功耗是正比于CPU的时钟频率;数字模块的功耗是正比于数字模块的时钟频率;排总线功耗是正比于排总线的时钟频率;GPIO的功耗是正比于GPIO的时钟频率;模拟模块功耗是正比于模拟块的功率等级;参考电路和模拟输出缓冲器功耗是正比于模拟资源的运放偏置;总的功耗是正比于所使用资源的数目,所使用的资源越多,功耗越大。
从以上关系式我们可以知道选择合适的工作电压和CPU时钟频率对降低功耗是非常重要的。在满足应用的条件下,应尽可能选择比较低的工作电压和CPU时钟频率。模拟资源的功耗往往占用PSoC总的功耗一个相对大的比例。对于模拟资源,模拟的功率等级和运放偏置的设置对功耗的影响也比较大。同样在满足应用的条件下,应尽可能选择较低的功率等级和运放偏置。对于没有使用的模拟资源应该将它对应的功率等级设置成Off以切断它的供电减少漏电。对于间断使用的模拟资源,应该在不使用的时候将它对应的功率等级设置成Off,在需要使用的时候才把它打开,以尽量减少它的平均功耗。
技术文库
1 • •