一种控制器低功耗启动方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:21377733 阅读:24 留言:0更新日期:2019-06-15 13:24
本发明专利技术公开了一种控制器低功耗启动方法、装置、计算机设备及存储介质,其中方法包括:接收主机发送的命令;判断命令是进入低功耗或者是退出低功耗命令;若是退出低功耗命令,则CPU0运行启动代码;CPU0的运行指针跳转到低功耗唤醒工程的零地址;恢复固态硬盘控制器中接口模块的寄存器值;从动态随机存取存储器中取出寄存器值,并重新赋值;将保存于动态随机存取存储器中的内存区域数据进行恢复;复位除CPU0外的其它CPU,固件重新运行。本发明专利技术通过此方法,原来的CPU指令和固件的堆栈都得以保存。唤醒过程中时不必再做堆栈初始化和从存储器中读取固件的操作,减少了唤醒时间。

【技术实现步骤摘要】
一种控制器低功耗启动方法、装置、计算机设备及存储介质
本专利技术涉及固态硬盘,更具体地说是一种固态硬盘控制器低功耗启动方法、装置、计算机设备及存储介质。
技术介绍
目前固态硬盘控制器从低功耗模式下唤醒的流程如图1所示,固态硬盘控制器在进入低功耗模式之前,会清空命令,关闭一些模块电源和时钟以降低功耗,关闭除CPU0以外的所有CPU,并使CPU进入WFI状态。现有控制器从低功耗模式下唤醒时,控制器收到主机发送的中断信号,CPU0重新开始运行,首先运行Bootrom(启动代码),Bootrom加载Bootloader(引导加载程序)到CPU0的ATCM(存储区域)中,CPU运行指针再跳转至ATCM零地址,Bootloader运行,Bootloader再重新加载固件,使多核全系统固件重新运行。该方法能够正常唤醒,但唤醒所需时间较长。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种控制器低功耗启动方法、装置、计算机设备及存储介质。为实现上述目的,本专利技术采用以下技术方案:一种控制器低功耗启动方法,所述方法包括以下步骤:接收主机发送的命令;判断命令是进入低功耗或者是退出低功耗命令;若是退出低功耗命令,则CPU0运行启动代码;CPU0的运行指针跳转到低功耗唤醒工程的零地址;恢复固态硬盘控制器中接口模块的寄存器值;从动态随机存取存储器中取出寄存器值,并重新赋值;将保存于动态随机存取存储器中的内存区域数据进行恢复;复位除CPU0外的其它CPU,固件重新运行。其进一步技术方案为:所述CPU0运行启动代码的步骤之后,还包括以下步骤:启动代码对低功耗跳转标志位进行校验;判断是否进行低功耗启动;若是,则进入所述CPU0的运行指针跳转到低功耗唤醒工程的零地址的步骤;若否,则启动代码从存储器中加载引导加载程序运行;引导加载程序从存储器中加载固件,并进入所述复位除CPU0外的其它CPU,固件重新运行的步骤。其进一步技术方案为:所述判断命令是进入低功耗或者是退出低功耗命令的步骤之后,还包括以下步骤:若是进入低功耗命令,则将除CPU0之外的所有内存区域数据搬移到动态随机存取存储器中;动态随机存取存储器进行自动刷新;关闭除CPU0之外的所有CPU,CPU0进入等待中断状态;关闭接口模块的时钟和电源。其进一步技术方案为:所述将除CPU0之外的所有内存区域数据搬移到动态随机存取存储器中的步骤之后,还包括以下步骤:将低功耗唤醒工程文件存在于CPU0存储区域中,并保存低功耗唤醒工程文件的基地址;向电源管理单元的寄存器中写入低功耗跳转标志位以及低功耗唤醒工程文件的基地址;将接口模块的寄存器值搬移到动态随机存取存储器中。一种控制器低功耗启动装置,所述装置包括接收单元、第一判断单元、运行单元、跳转单元、第一恢复单元、赋值单元、第二恢复单元以及复位单元;所述接收单元,用于接收主机发送的命令;所述第一判断单元,用于判断命令是进入低功耗或者是退出低功耗命令;所述运行单元,用于CPU0运行启动代码;所述跳转单元,用于CPU0的运行指针跳转到低功耗唤醒工程的零地址;所述第一恢复单元,用于恢复固态硬盘控制器中接口模块的寄存器值;所述赋值单元,用于从动态随机存取存储器中取出寄存器值,并重新赋值;所述第二恢复单元,用于将保存于动态随机存取存储器中的内存区域数据进行恢复;所述复位单元,用于复位除CPU0外的其它CPU,固件重新运行。其进一步技术方案为:所述装置还包括启动单元、第二判断单元、第一加载单元以及第二加载单元;所述启动单元,用于启动代码对低功耗跳转标志位进行校验;所述第二判断单元,用于判断是否进行低功耗启动;所述第一加载单元,用于启动代码从存储器中加载引导加载程序运行;所述第二加载单元,用于引导加载程序从存储器中加载固件。其进一步技术方案为:所述装置还包括第一搬移单元、自动刷新单元、第一关闭单元以及第二关闭单元;所述第一搬移单元,用于将除CPU0之外的所有内存区域数据搬移到动态随机存取存储器中;所述自动刷新单元,用于动态随机存取存储器进行自动刷新;所述第一关闭单元,用于关闭除CPU0之外的所有CPU,CPU0进入等待中断状态;所述第二关闭单元,用于关闭接口模块的时钟和电源。其进一步技术方案为:所述装置还包括保存单元、写入单元以及第二搬移单元;所述保存单元,用于将低功耗唤醒工程文件存在于CPU0存储区域中,并保存低功耗唤醒工程文件的基地址;所述写入单元,用于向电源管理单元的寄存器中写入低功耗跳转标志位以及低功耗唤醒工程文件的基地址;所述第二搬移单元,用于将接口模块的寄存器值搬移到动态随机存取存储器中。一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述的控制器低功耗启动方法步骤。一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时,使得所述处理器执行如上述的控制器低功耗启动方法步骤。本专利技术与现有技术相比的有益效果是:本专利技术提供的一种控制器低功耗启动方法,固态硬盘控制器从低功耗启动时,使用恢复现场的方式取代原有控制器重新加载固件的唤醒方式,进低功耗状态前,将原有的寄存器值和数据备份在随机存取存储器中,等到唤醒时再恢复寄存器值和内存区域数据。通过此方法,原来的CPU指令和固件的堆栈都得以保存。唤醒过程中时不必再做堆栈初始化和从存储器中读取固件的操作,减少了唤醒时间。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术技术手段,可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征及优点能够更明显易懂,以下特举较佳实施例,详细说明如下。附图说明图1为现有技术的固态硬盘控制器从低功耗启动的流程图;图2为本专利技术一种控制器低功耗启动方法具体实施例的流程图;图3为本专利技术一种控制器低功耗启动装置具体实施例的结构示意图;图4为本专利技术为本专利技术一种计算机设备具体实施例的示意性框图。具体实施方式为了更充分理解本专利技术的
技术实现思路
,下面结合具体实施例对本专利技术的技术方案进一步介绍和说明,但不局限于此。应当理解,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体/操作/对象与另一个实体/操作/对象区分开来,而不一定要求或者暗示这些实体/操作/对象之间存在任何这种实际的关系或者顺序。还应当理解,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。如图2所示,本专利技术提供了一种控制器低功耗启动方法,该方法包括以下步骤:S1、接收主机发送的命令;S2、判断命令是进入低功耗或者是退出低功耗命令;S21、若是退出低功耗命令,S211、则CPU0运行启动代码;S212、启动代码对低功耗跳转标志位进行校验;S213、判断是否进行低功耗启动;若是,则进入步骤S2132;若否,S2131、则启动代码从存储器中加载引导加载程序运行;S21311、引导加载程序从存储本文档来自技高网
...

【技术保护点】
1.一种控制器低功耗启动方法,其特征在于,所述方法包括以下步骤:接收主机发送的命令;判断命令是进入低功耗或者是退出低功耗命令;若是退出低功耗命令,则CPU0运行启动代码;CPU0的运行指针跳转到低功耗唤醒工程的零地址;恢复固态硬盘控制器中接口模块的寄存器值;从动态随机存取存储器中取出寄存器值,并重新赋值;将保存于动态随机存取存储器中的内存区域数据进行恢复;复位除CPU0外的其它CPU,固件重新运行。

【技术特征摘要】
1.一种控制器低功耗启动方法,其特征在于,所述方法包括以下步骤:接收主机发送的命令;判断命令是进入低功耗或者是退出低功耗命令;若是退出低功耗命令,则CPU0运行启动代码;CPU0的运行指针跳转到低功耗唤醒工程的零地址;恢复固态硬盘控制器中接口模块的寄存器值;从动态随机存取存储器中取出寄存器值,并重新赋值;将保存于动态随机存取存储器中的内存区域数据进行恢复;复位除CPU0外的其它CPU,固件重新运行。2.根据权利要求1所述的一种控制器低功耗启动方法,其特征在于,所述CPU0运行启动代码的步骤之后,还包括以下步骤:启动代码对低功耗跳转标志位进行校验;判断是否进行低功耗启动;若是,则进入所述CPU0的运行指针跳转到低功耗唤醒工程的零地址的步骤;若否,则启动代码从存储器中加载引导加载程序运行;引导加载程序从存储器中加载固件,并进入所述复位除CPU0外的其它CPU,固件重新运行的步骤。3.根据权利要求1所述的一种控制器低功耗启动方法,其特征在于,所述判断命令是进入低功耗或者是退出低功耗命令的步骤之后,还包括以下步骤:若是进入低功耗命令,则将除CPU0之外的所有内存区域数据搬移到动态随机存取存储器中;动态随机存取存储器进行自动刷新;关闭除CPU0之外的所有CPU,CPU0进入等待中断状态;关闭接口模块的时钟和电源。4.根据权利要求3所述的一种控制器低功耗启动方法,其特征在于,所述将除CPU0之外的所有内存区域数据搬移到动态随机存取存储器中的步骤之后,还包括以下步骤:将低功耗唤醒工程文件存在于CPU0存储区域中,并保存低功耗唤醒工程文件的基地址;向电源管理单元的寄存器中写入低功耗跳转标志位以及低功耗唤醒工程文件的基地址;将接口模块的寄存器值搬移到动态随机存取存储器中。5.一种控制器低功耗启动装置,其特征在于,所述装置包括接收单元、第一判断单元、运行单元、跳转单元、第一恢复单元、赋值单元、第二恢复单元以及复位单元;所述接收单元,用于接收主机发送的命令;所述第一判断单元,用于判断命令是进入低功耗或者是退出低功耗命令;所述运行单元,用于CPU0运行启动代码;所述跳转单元,用于CPU0的运行指针...

【专利技术属性】
技术研发人员:杨志佳冯元元周强
申请(专利权)人:深圳忆联信息系统有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1