【摘 要 】本文采用Actel公司的AFS600系列FPGA,设计了一种电源管理系统.该系统主要由晶振、RTC及电压调整和监控模块等组成.系统首先由FPGA的内核将VR模块掉电.通过RTC和晶振计时,定时唤醒VR模块,让FPGA继续工作.这种电源管理系统可以让FPGA进入掉电和唤醒,实现低功耗的睡眠模式.
【关 键 词 】FPGA;RTC;电压调整和监控模块;电源管理
1.引言
在某些由电池等供电的电子产品,对于系统功耗的要求很严格,往往要求降低功耗.若电子产品的主控制器能在工作状态时正常工作,除此之外均处于睡眠状态,则可以降低功耗.基于Actel公司的AFS600系列FPGA,利用其RTC(Real-time counter)内部实时计数器,配以晶振和内部电压调整和监控模块(),设计了电源管理系统,以达到降低功耗的要求.
2.系统组成
RTC电源管理系统的组成如图1所示.
从图1中可以看出,该系统主要由RTC模块、晶振模块及电压调整和监控模块()组成.
3.主要部分设计
3.1 实时计数器
AFS600系列FPGA的RTC是一个40位的可加载计数器,输入频率范围:32KHz-20MHz.为延长计数时间,输入时钟经过一个128分频后去驱动计数器.
RTC的结构图如图2所示.其中RTCCLK是RTC的输入时钟,RTCMATCH是匹配输出,RTCPMATCH连接到的RTCMATCH用于唤醒FPGA内核,RTCXTLMODE用于配置晶振的模式,ACM接口重要用于初始化RTC寄存器.
3.2 模块配置
在Actel公司的FPGA开发环境Libero通过Flash Memory初始化RTC寄存器.图1的晶振模块通过Libero的PLL生成,将输入时钟分频后生成20MHz和5MHz的两个时钟.同时将晶振模块配置成RTC驱动.
在系统上电时,将通过软件生成的VR(Voltage Regulator)模块置于关闭状态.
3.3 软件设计
系统的软件主要有以下几个模块组成.
(1)Analog_RTC模拟模块
该模块是RTC的宏模块.在软件设计中主要分:模拟模块的固定信号、与FlashMemory的连接、与晶振和VR模块的连接及未使用的管脚等组成.主要的代码如下(使用Verilog HDL语言编写):
Analog_RTC U2( //带RTC模拟模块的实例化
4.实验验证
为验证该电源管理系统设计的正确性,进行了实验验证.首先将FPGA内核电源调整为由FPGA内部的1.5V电压调整器提供.
实验时将FPGA的D10引脚通过一个小的串联电阻与LED相连.实验过程中,可以看到系统上电时,LED变亮;等待几秒后,LED灭;再过几秒,通过RTC唤醒内核将LED点亮.这说明FPGA的内核在循环掉电.
FPGA的PUB引脚电路如图3中所示.PUB引脚在常态时通过上拉电阻R16将电平拉到高电平,当K1键按下时就产生一个负脉冲,配合内部RTC,能将掉电后的内核唤醒,重新点亮LED.
有关论文范文主题研究: | 关于管理系统的论文范文集 | 大学生适用: | 专升本毕业论文、本科论文 |
---|---|---|---|
相关参考文献下载数量: | 13 | 写作解决问题: | 写作技巧 |
毕业论文开题报告: | 文献综述、论文目录 | 职称论文适用: | 杂志投稿、初级职称 |
所属大学生专业类别: | 写作技巧 | 论文题目推荐度: | 最新题目 |
5.结束语
当FPGA关闭内核电压,进入睡眠模式,只有外部晶振和内部RTC工作时,系统的功耗电流很小,在几百微安左右.采用RTC进行电源管理的模式,可以大大降低功耗,可广泛应用于微功耗场合.