在线升级固件的方法及系统技术方案

技术编号:18237297 阅读:25 留言:0更新日期:2018-06-17 00:30
本申请提供在线升级固件的方法及系统,涉及固态硬盘领域。固态存储设备在线升级固件的方法包括如下步骤:响应于收到固件下载命令,下载固件;响应于接收固件激活或固件确认命令,延迟一段时间,并发起对固态存储设备的复位过程;加载所述固件激活或固件确认命令中所指示的固件,恢复固态存储设备的运行。本申请应用于固态硬盘中的固件升级。 1

Method and system for online upgrading firmware

The application provides a method and system for upgrading firmware online, and relates to the field of solid state hard disk. The method of on-line upgrading firmware for solid-state storage devices includes the following steps: responding to the firmware download command, downloading the firmware, responding to the receiving firmware activation or firmware confirmation commands, delaying a period of time, and initiating a reset process for the solid-state storage device; loading the firmware activation or firmware confirmation commands described. The firmware restores the operation of the solid-state storage device. This application is applied to firmware upgrading in SSDs. One

【技术实现步骤摘要】
在线升级固件的方法及系统
本申请涉及固态硬盘领域,具体涉及一种固态存储设备、在线升级固件的方法及系统。
技术介绍
图1是现有技术的固态存储设备的框图。固态存储设备102同主机相耦合,用于为主机提供存储能力。主机同固态存储设备102之间可通过多种方式相耦合,耦合方式包括但不限于通过例如SATA(SerialAdvancedTechnologyAttachment,串行高级技术附件)、SCSI(SmallComputerSystemInterface,小型计算机系统接口)、SAS(SerialAttachedSCSI,串行连接SCSI)、IDE(IntegratedDriveElectronics,集成驱动器电子)、USB(UniversalSerialBus,通用串行总线)、PCIE(PeripheralComponentInterconnectExpress,PCIe,高速外围组件互联)、NVMe(NVMExpress,高速非易失存储)、以太网、光纤通道、无线通信网络等连接主机与固态存储设备102。主机可以是能够通过上述方式同固态存储设备相通信的信息处理设备,例如,个人计算机、平板电脑、服务器、便携式计算机、网络交换机、路由器、蜂窝电话、个人数字助理等。存储设备102包括接口103、控制部件104、一个或多个NVM芯片105以及DRAM(DynamicRandomAccessMemory,动态随机访问存储器)110。NAND闪存、相变存储器、FeRAM(FerroelectricRAM,铁电存储器)、MRAM(MagneticRandomAccessMemory,磁阻存储器)、RRAM(ResistiveRandomAccessMemory,阻变存储器)等是常见的NVM。接口103可适配于通过例如SATA、IDE、USB、PCIE、NVMe、SAS、以太网、光纤通道等方式与主机交换数据。控制部件104用于控制在接口103、NVM芯片105以及固件存储器110之间的数据传输,还用于存储管理、主机逻辑地址到闪存物理地址映射、擦除均衡、坏块管理等。控制部件104可通过软件、硬件、固件或其组合的多种方式实现,例如,控制部件104可以是FPGA(Field-programmablegatearray,现场可编程门阵列)、ASIC(ApplicationSpecificIntegratedCircuit,应用专用集成电路)或者其组合的形式;控制部件104也可以包括处理器或者控制器,在处理器或控制器中执行软件来操纵控制部件104的硬件来处理IO(Input/Output)命令;控制部件104还可以耦合到DRAM110,并可访问DRAM110的数据;在DRAM可存储FTL表和/或缓存的IO命令的数据。控制部件104包括闪存接口控制器(或称为介质接口控制器、闪存通道控制器),闪存接口控制器耦合到NVM芯片105,并以遵循NVM芯片105的接口协议的方式向NVM芯片105发出命令,以操作NVM芯片105,并接收从NVM芯片105输出的命令执行结果。NVM芯片105的接口协议包括“Toggle”、“ONFI”等公知的接口协议或标准。在控制部件104中运行的软件和/或固件(下面统称为“固件”)可被存储在NVM芯片105或另外的固件存储器中。在固态存储设备102上电时,从固件存储器将固件加载到DRAM110和/或控制部件104内部的存储器中。可选地,通过接口103或调试接口接收并加载固件。在NVMe规范中定义了固件槽(firmwareslot),用于存储固件镜像。NVME规范见(http://nvmexpress.org/wp-content/uploads/NVM_Express_1_2_1_Gold_20160603.pdf)。在支持NVMe规范的固态存储中,提供多个固件槽来存储相同或不同的固件。当将新固件下载给控制部件时,主机可以通过指示固件槽来描述哪个固件镜像被替换。NVMe规范中还定义了固件下载、固件激活(Activate)或固件确认(Commit)命令。通过固件下载命令将固件镜像存储到指定的固件槽中,以及通过固件激活/固件确认命令,向固态存储设备指示下次将使用的固件。从而可实现固态存储设备的固件升级。依据固件激活/固件确认命令的指示,固态存储在下次复位(Reset)时加载新的固件镜像,或者无需复位而立即使用新的固件镜像。NVMe规范还定义了多种级别的复位,包括NVM子系统复位、传统复位(ConventionalReset,PCIe热/暖/冷复位)、功能级别复位(PCIe复位)或控制器复位(CC.EN从“1”变为“0”)等。NVMe规范中还定义了CSTS(ControllerStatus,控制器状态)寄存器,主机通过查询CSTS寄存器可知晓复位是否完成。
技术实现思路
本专利技术的目的在于提供一种固态存储设备、在线升级固件的方法及系统。根据本专利技术的第一方面,提供了根据本专利技术的第一方面的第一固态存储设备在线升级固件的方法,包括如下步骤:响应于收到固件下载命令,下载固件;响应于接收固件激活或固件确认命令,延迟一段时间,并发起对固态存储设备的复位过程;加载所述固件激活或固件确认命令中所指示的固件,恢复固态存储设备的运行。根据本专利技术的第一方面的第一固态存储设备在线升级固件的方法,提供了根据本专利技术的第一方面的第二固态存储设备在线升级固件的方法,在所述一段时间内,响应来自主机的一条命令。根据本专利技术的第一方面的第一固态存储设备在线升级固件的方法,提供了根据本专利技术的第一方面的第三固态存储设备在线升级固件的方法,在所述一段时间内,响应来自主机的多条命令。根据本专利技术的第一方面的第一至第三固态存储设备在线升级固件的方法之一,提供了根据本专利技术的第一方面的第四固态存储设备在线升级固件的方法,还包括,将下载的固件存储到NVM芯片的固件槽中。根据本专利技术的第一方面的第一至第四固态存储设备在线升级固件的方法之一,提供了根据本专利技术的第一方面的第五固态存储设备在线升级固件的方法,下载的固件的多份副本被存储到多个固件槽中。根据本专利技术的第一方面的第四或第五固态存储设备在线升级固件的方法,提供了根据本专利技术的第一方面的第六固态存储设备在线升级固件的方法,固态存储设备的控制部件将下载的固件写入指定的固件槽中。根据本专利技术的第一方面的第一至第六固态存储设备在线升级固件的方法之一,提供了根据本专利技术的第一方面的第七固态存储设备在线升级固件的方法,固件激活或固件确认命令中包含固件存储的固件槽的信息。根据本专利技术的第一方面的第七固态存储设备在线升级固件的方法,提供了根据本专利技术的第一方面的第八固态存储设备在线升级固件的方法,固态存储设备的控制部件记录在固件激活或确认命令中指示的要使用的固件槽。根据本专利技术的第一方面的第八固态存储设备在线升级固件的方法,提供了根据本专利技术的第一方面的第九固态存储设备在线升级固件的方法,控制部件将指示的固件槽的固件槽编号记录在NVM芯片中。根据本专利技术的第一方面的第一至第九固态存储设备在线升级固件的方法之一,提供了根据本专利技术的第一方面的第十固态存储设备在线升级固件的方法,响应于收到复位命令,固态存储设备发起复位过程。根据本专利技术的第一方面的第一至第十固本文档来自技高网
...
在线升级固件的方法及系统

【技术保护点】
1.一种固态存储设备在线升级固件的方法,其特征在于,包括如下步骤:

【技术特征摘要】
1.一种固态存储设备在线升级固件的方法,其特征在于,包括如下步骤:响应于收到固件下载命令,下载固件;响应于接收固件激活或固件确认命令,延迟一段时间,并发起对固态存储设备的复位过程;加载所述固件激活或固件确认命令中所指示的固件,恢复固态存储设备的运行。2.如权利要求1所述的固态存储设备在线升级固件的方法,其特征在于,在所述一段时间内,响应来自主机的一条命令。3.如权利要求1所述的固态存储设备在线升级固件的方法,其特征在于,所述一段时间是指定时间或指定时间内收到主机访问CSTS寄存器的命令并对访问CSTS寄存器的命令做出响应的时间。4.如权利要求1所述的固态存储设备在线升级固件的方法,其特征在于,以固态存储设备的控制部件延迟的一段时间与响应了指定数量的主机命令二者中较早满足的条件作为发起对固态存储设备的复位过程的依据。5.如权利要求1-4任一项所述的固态存储设备在线升级固件的方法,其特征在于,发起对固态存储设备的复位过程前还备份元数据,并在固件升级完成后恢复元数据。6.如权利要求1-5任一项所述的固态存储设备在线升级固件的方法,其...

【专利技术属性】
技术研发人员:刘福财袁戎刘筱君
申请(专利权)人:北京忆恒创源科技有限公司
类型:发明
国别省市:北京,11

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

1