低功耗MCU动态时钟分析与应用

随着ic技术的迅速发展和对消费电子产品需求的不断增长,大量的便携式设备被广泛应用于各种领域,从而使低功耗成为系统设计中越来越被关注的问题。功耗不但直接决定通常靠电池供电的移动设备的使用时间,而且极大地影响着芯片的尺寸、成本和性能。本文结合msp430系列微处理器,详细论述了通过控制改变mcu的时钟频率来降低功耗的设计方法。
1 功耗产生的原因
在cmos电路中,功耗损失主要包括静态功耗损失和动态功耗损失两部分。其中静态功耗主要是由反偏pn结的漏电流和晶体管的亚阈值电流引起的,其最主要的形式就是漏电损失。其实cmos电路理论上不会有静电功耗损失,因为从供应电源到地面没有直接的路径,但实际上晶体管总会有漏电电流的出现,从而出现漏电损失。在0.18μm工艺水平之下,其在功耗中所占比重大约为5%~10%,一般可以忽略(但是随着工艺的提高,供电电压的降低,又使其所占比重逐渐上升)。这样,在cmos电路中,动态功耗就成了这个系统功耗的主要组成部分,约占整体功耗的90%以上。定量地分析电路的动态功耗,可用以下公式表示:
其中:c为负载电容;vdd为电源电压;?琢为翻转几率,即每个时钟周期中发生的充放电周期个数;fclk为时钟频率。从这个公式可以看到如何降低动态功耗从而降低整个cmos电路的功耗。即可以减小翻转的负载电容,降低电源电压,减小节点的翻转几率,或者降低时钟频率。本文将主要围绕如何动态降低时钟频率实现低功耗设计。
2 动态时钟低功耗管理原理
mcu系统设计是个很复杂的过程,在一些条件下可能会用到整个系统的所有硬件资源,但是在一些应用中可能只需要其中很少的一部分硬件资源;在某些应用中可能需要很高的时钟频率,而在其他应用中却可以工作在很低的工作频率中。例如:当任务量很大时,mcu满负荷工作,则需要较高的时钟频率,功耗较大;当任务量很小时,mcu负荷较轻,所需时钟频率较低,功耗就可以相应降低。动态配置系统的时钟频率就是以不牺牲系统的性能为前提,动态地管理系统的工作频率来降低mcu的功耗。
3 低功耗动态时钟实现
图1为msp430系列mcu基础时钟模块。
msp430基础时钟模块包含以下3个时钟输入源。
(1)lfxt1clk 低频时钟源:由lfxt1振荡器产生(如图2所示)。通过软件将状态寄存器中oscoff复位后,lfxt1开始工作,即系统采用低频工作。如果lfxt1clk没有用作smclk或mclk信号,则可以用软件将oscoff置位,禁止lfxt1工作。
(2)xt2clk高频时钟源:由xt2振荡器产生。它产生时钟信号xt2clk,其工作特性与lfxt1振荡器工作在高频模式时类似。可简单地通过软件设置xt2振荡器是否工作,当xt2clk没有用作smclk或mclk信号时,关闭xt2,选择其他时钟源。
(3)dcoclk 数字控制rc振荡器。由集成在时钟模块中的dco振荡器产生。dco振荡器是一个rc振荡器,频率可以通过软件调节,其控制逻辑如图3所示。当振荡器lfxt1、xt2被禁止或失效时,dco振荡器被自动选作mclk的时钟源。因此由振荡器失效引起的系统中断请求可以得到响应,甚至在cpu关闭的情况下也能得到处理。
由基础时钟模块可以提供系统所需的3种时钟信号,即:aclk、mclk、smclk。其中辅助时钟aclk是lfxt1clk信号经1、2、4、8分频后得到的。aclk可由软件选作各个外围模块的时钟信号,一般用于低速外设;系统主时钟mclk可由软件选择来自lfxt1clk、xt2clk、dcoclk三者之一,然后经1、2、4、8分频得到。mclk主要用于cpu和系统。子系统时钟smclk可由软件选择来自lfxt1clk和dcoclk,或者xt2clk和dcoclk,然后经1、2、4、8分频得到,主要用于高速外设模块。系统可以根据实际需要通过软件来选择合适的系统时钟频率,这三种不同频率的时钟输出给不同的模块,从而合理利用系统的电源,实现整个系统的超低功耗,这一点对于电池供电的系统来讲至关重要。在具体应用中,cpu及各个时钟源的工作状态如表1。
4 动态时钟应用实例
通过msp430外接32768hz晶体构建超低功耗实时时钟,结构如图4。
部分代码如下:
setc
dadc.b sec
cmp.b #060h,sec
jlo clkend
clr.b sec
dadc.b min
cmp.b #060h,min
jlo clkend
clr.b min
clkend;
令msp430 cpu工作在突发状态,大部分时间处于lmp3状态,只有程序代码中单位时间到之后,才出发一个极短暂的运行,运行期间电流消耗250?滋a左右。经计算指令执行时间得到,在1s时间段内程序运行时间仅为100μs,系统平均电流约为0.83μa,可见其工作功耗相当低。
本文通过分析msp430系列mcu的动态时钟配置,介绍了通过动态改变mcu系统时钟来达到低功耗设计。在实际应用中,通过软件设置合理地使用时钟源,可以有效实现低功耗设计。

【世说芯品】嘘~工作环境禁止步进电机噪音Remix!
智慧医疗助力防疫有没有帮助其发展
色环电阻识别方法视频
深入Facebook全新机器人实验室 AI和机器共织未来
新一代信息技术助力下 科学防疫的线上战阵建设速度加快
低功耗MCU动态时钟分析与应用
小米6发布!各大旗舰降价!821+6G+64G仅2099元!
因无人驾驶带动发展的11项新技术
看看现如今3D打印技术都有哪些奇葩用途
金融软件和网络服务供应商恒生电子发布2022第一季度报告
旁路电容与去耦电容有什么联系与区别?
超重低音耳机放大器制作
继电器和接触器的区别对比
Linux中几个你不常用,但却很有用的命令
华为Mate30系列旗舰手机和苹果新机,谁能赢得市场评价
联想发布的Mirage Solo VR虚拟现实头盔得到了业界的一致肯定
超声波加湿器会危害健康?拆解探秘工作原理
整流桥好坏判断_整流桥怎么测量好坏
三维人脸识别技术的发展前景
特斯拉Model 3正式在国内开卖 极简设计让消费者褒贬不一