[发明专利]嵌入式系统的深度休眠方法有效
申请号: | 200910194147.8 | 申请日: | 2009-11-25 |
公开(公告)号: | CN101710253A | 公开(公告)日: | 2010-05-19 |
发明(设计)人: | 赵俊化;徐平;罗建华;胡胜发 | 申请(专利权)人: | 安凯(广州)微电子技术有限公司 |
主分类号: | G06F1/32 | 分类号: | G06F1/32;G06F11/14 |
代理公司: | 广州知友专利商标代理有限公司 44104 | 代理人: | 宣国华 |
地址: | 510663 广东省广州市高新技术开发区科*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 系统 深度 休眠 方法 | ||
技术领域
本发明属于系统的待机休眠及唤醒技术领域,是一种应用于嵌入式系统的深度休眠方法。
背景技术
目前,嵌入式移动设备的使用越来越广泛,其最大特点之一是要求功耗低,一般采用电池供电。为了省电,移动设备经常需要进入待机模式。待机是把正在运行的程序状态储存在内存里,当系统切换到该模式后,将切断除了内存的其他部分供电,由于内存依靠电能维持着系统数据,唤醒的时候就可以恢复到待机前的状态。这是目前嵌入式移动设备采用最多的待机技术。
一般的嵌入式移动设备在掉电关机之后,再开机时不能自动回到原来的界面。目前的待机技术则可以回到原来的界面中,看起来像是关机,但实际上并没有断电,内存等设备还在供电,只是进入待机模式而已,存在一定的功耗和设备损耗,一直都在持续地消耗系统资源。所以,在装置久置而未进行充电一段时间之后,手持式装置便会因为电源不足而造成系统中断与数据遗失。而且,如果在待机模式期间不慎掉电关机,内存中的信息会被丢弃,待机前保留的工作成果和使用状态全部丢失!这种待机模式实际上就是:还要对内存等主要设备供电,保存着当前的系统状态,以达到降低部分功耗的目的,适合短时间不用的情况。但是当掉电关机的时候,内存中的信息会丢失,由此会带来操作上的不便。因此,需要一种新的既省电又安全可靠的方法来解决这类问题。
发明内容
本发明的目的在于提供一种适用于嵌入式系统及其移动设备的深度休眠方法,该方法可以使设备在掉电关机之后,再开机时自动回到原来的界面的过程中,大幅度提升系统的启动速度,同时有利于延长相关硬件存储器的使用寿命。
为达到上述发明目的,本发明提供一种嵌入式系统的深度休眠方法,包括以下步骤:
(a)在系统运行状态下长按关机键或长期无操作时,系统在确定硬件操作结束后进行系统保存,其保存过程为:在非易失性存储器的数据交换区中选择可用的数据交换块,作为深度休眠块(以下称为Deep Standby Block,或者直接称为Standby Block),将当前系统数据写入此深度休眠块,同时在该块中写入深度休眠标志和序号值,最后掉电关机进入深度休眠;所述序号值为系统已使用交换块数量的累加值;
(b)系统开启,内存映射初始化后查找深度休眠标志,找到有效的深度休眠标志后,进行系统数据恢复,其恢复过程为:查找有效的深度休眠块,读出该块中的系统数据,并在该块中写入取消标志(以下称为Cancel标志),恢复CPU现场环境,然后回到系统保存前的位置;
(c)如果系统数据恢复成功并回到系统保存前的位置,则进行相关硬件初始化,回到深度休眠模式前的状态;否则系统重新启动。
所述步骤(a)的选择深度休眠块的过程为:检查当前数据交换块的剩余页数,不少于cnt+1页则将当前数据交换块作为深度休眠块,其中cnt为RAM常驻区数据页数,否则取下一个有效数据交换块,直到选择到合适的深度休眠块为止。
所述步骤(a)的系统保存过程中还包括数据冗余保存过程,包括以下步骤:选择并记录两个深度休眠块,一个为主体深度休眠块,一个为备份深度休眠块;备份深度休眠块为主体深度休眠块的下一个有效数据交换块,从而,系统数据在主体深度休眠块和备份深度休眠块中各保存一份。
所述步骤(b)的系统数据恢复过程失败,则记录系统数据恢复失败,并在深度休眠块写入取消标志后进行系统重新启动。
所述步骤(b)的查找有效的深度休眠块的过程为:查找序号值最大的数据交换块,如果该块存在深度休眠标志且没有取消标志的话,则此数据交换块为备份深度休眠块;依次判别数据交换块序号值的次最大值所在的数据交换块,即为主体深度休眠块。所述查找数据交换块序号值的最大值采用折半检索算法。
所述数据交换块序号值、深度休眠标志、取消标志分别写在深度休眠块的倒数第3、2、1页的空闲区(以下称spare区)。
所述数据恢复中还进行数据校验,包括以下步骤:
校验深度休眠块的合法性:用一个全局变量记录系统数据保存前的深度休眠块的位置,系统恢复完RAM常驻区数据后,校验当前找到的深度休眠块位置与该全局变量是否一致,如果不一致则标记数据校验失败,并在深度休眠块写入取消标志后系统重新启动;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安凯(广州)微电子技术有限公司,未经安凯(广州)微电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910194147.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种提高键盘输入成功率的输入方法及系统
- 下一篇:智能化水表校验装置和方法