CN116189730A - 为存储器提供备电的方法和相关设备 - Google Patents
为存储器提供备电的方法和相关设备 Download PDFInfo
- Publication number
- CN116189730A CN116189730A CN202111422218.2A CN202111422218A CN116189730A CN 116189730 A CN116189730 A CN 116189730A CN 202111422218 A CN202111422218 A CN 202111422218A CN 116189730 A CN116189730 A CN 116189730A
- Authority
- CN
- China
- Prior art keywords
- memory
- power
- notification signal
- computer device
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/141—Battery and back-up supplies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/81—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer by operating on the power supply, e.g. enabling or disabling power-on, sleep or resume operations
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/14—Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
- G11C5/148—Details of power up or power down circuits, standby circuits or recovery circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Power Sources (AREA)
Abstract
一种为存储器提供备电的方法和相关设备。该设备包括:供电模块、备电模块以及控制器,其中:控制器用于检测供电模块的供电情况,并根据供电情况向备电模块发送备电指示,备电模块用于根据备电指示为与控制器连接的存储器供电。根据该设备,计算机装置中的备电模块可以通过接收控制器的备电指示,为控制器和连接计算机装置的存储器供电,从而不用在存储器中设置备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。
Description
技术领域
本申请涉及存储器领域,并且更具体地,涉及一种为存储器提供备电的方法、计算机装置、存储器、存储系统、计算机设备、芯片系统和计算机可读存储介质。
背景技术
目前存储系统的存储器的备电模块多集中在存储器内部。备电模块会存储电量,当系统电源无法为存储器供电时,存储器会依赖存储器内部的备电模块储存的电量进行断电保护。存储器的断电保护过程可以安全地将存储器的缓存数据写入到存储器的非易失性存储介质中,以及保持存储器映射表的完整性,以便在系统恢复正常供电后存储器能够再次被识别且可用。随着技术的演进,存储器中的高速缓冲存储器(cache)的容量不断增加。相应的,cache中缓存的数据量也会增加,断电保护过程中需要的电量也会相应增加。如果按照现有设计,那么备电模块存储的电量无法满足断电保护过程所需的电量,如果增加备电模块的存储电量,那么会增加整个存储器的尺寸。
因此如何满足存储器在断电保护过程中的备电容量需求成为亟待解决的问题。
发明内容
本申请实施例提供一种为存储器提供备电的方法、计算机装置、存储器、存储系统、计算机设备、芯片系统和计算机可读存储介质,可以在不增加存储器的尺寸的基础上满足存储器在断电保护过程中的备电容量需求。
第一方面,提供了一种计算机装置。该计算机装置包括供电模块、备电模块以及控制器。其中,控制器用于检测供电模块的供电情况,并根据供电情况向备电模块发送备电指示;备电模块用于根据备电指示为与控制器连接的存储器供电。
应理解,供电模块可以为计算机装置和存储器供电。备电模块可以在控制器确定供电模块无法为控制器和存储器供电的情况下,接收控制器的备电指示,从而为控制器和存储器供电。
本申请实施例中,备电模块可以在计算机装置中通过接收控制器的备电指示,为控制器和存储器供电。从而不用在存储器中设置额外的备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。也就是说,本实施例中的计算机装置中,备电模块可以在不占用存储器的空间的基础上,具有较大的备电电量,满足存储器在断电保护过程中的电量需求。
结合第一方面,在第一方面的某些实现方式中,控制器还用于根据供电情况向存储器发送第一通知信号,第一通知信号用于指示存储器进行断电保护。
应理解,存储器的断电保护可以将存储器的高速缓冲存储器中的数据存入存储器的存储介质。还应理解,在控制器确定供电模块无法为控制器和存储器供电时,控制器可以指示备电模块开始供电,即备电模块为控制器向存储器发送第一通知信号供电。
本申请实施例中,控制器可以在供电模块无法为控制器和存储器供电时,向存储器发送第一通知信号,使存储器进行断电保护,从而避免存储器中的缓存数据因掉电而丢失。
结合第一方面,在第一方面的某些实现方式中,控制器还用于接收来自于存储器的第二通知信号,根据第二通知信号向备电模块发送停止备电指示,其中,第二通知信号用于指示存储器已完成断电保护;备电模块还用于根据停止备电指示停止为存储器供电。
应理解,控制器可以接收存储器的第二通知信号,该第二通知信号用于将存储器完成断电保护通知控制器。控制器在接收到来自于存储器的第二通知信号后,可以指示备电模块停止供电。
本申请实施例中,控制器可以在接收到第二通知信号后,指示备电模块停止供电,从而在确定存储器已完成断电保护的情况下,避免备电模块继续工作而浪费电量。
结合第一方面,在第一方面的某些实现方式中,控制器还用于接收来自于存储器的第三通知信号;响应所述第三通知信号,停止向存储器写入数据,并向存储器发送第一通知信号,第一通知信号用于指示存储器进行断电保护,第三通知信号用于指示存储器准备进行断电保护。
应理解,来自于存储器的第三通知信号表示存储器将要与计算机装置断开连接,需要进行断电保护。控制器在接收到来自于存储器的第三通知信号后,可以停止向存储器写入数据,从而避免存储器在断电保护过程中无法将控制器后续写入的数据进行保存。控制器在停止向存储器写入数据后,可以向存储器发送第一通知信号,指示存储器进行断电保护。
本申请实施例中,控制器可以在存储器将要与计算机装置断开连接时,接收来自于存储器的第三通知信号,从而协助存储器完成断电保护。
结合第一方面,在第一方面的某些实现方式中,第一通知信号和第二通知信号通过计算机装置的同一信号接口传输。
应理解,第一通知信号、第二通知信号和第三通知信号都可以通过计算机装置的信号接口传输。还应理解,传输上述信号的接口为低速信号接口,上述信号均为低速信号。低速信号是非高速信号,高速信号可以是高速串行计算机扩展总线标准(peripheralcomponent interconnect express,PCIE)信号或串行连接小型计算机系统接口(serialattached small computer system interface,SAS)信号。
本申请实施例中,可以通过计算机装置的一个信号接口在计算机装置和存储器之间传输第一通知信号、第二通知信号和第三通知信号。从而在供电模块无法为控制器和存储器供电时以及存储器将要与计算机装置断开连接时,使控制器可以较快速地向存储器发送通知信号和获得来自于存储器的通知信号。
结合第一方面,在第一方面的某些实现方式中,计算机装置还包括合路模块,合路模块的输入端分别连接供电模块和备电模块,合路模块的输出端与控制器和存储器相连,合路模块具体用于获取来自于供电模块或备电模块的供电,为控制器或存储器供电。
本申请实施例中,可以通过合路模块获得来自于供电模块或备电模块的供电,并为控制器和存储器供电。从而可以避免使用多个硬件电路实现供电,造成空间和资源的浪费。
第二方面,提供了一种存储器。该存储器包括控制电路、缓存和非易失性存储介质,控制电路用于接收来自于与存储器连接的计算机装置的第一通知信号,其中第一通知信号用于指示存储器进行断电保护;控制电路,还用于根据第一通知信号进行断电保护,以将缓存中的数据写入非易失性存储介质,其中存储器在断电保护过程中由计算机装置供电。
应理解,存储器的断电保护可以将存储器的高速缓冲存储器中的数据存入存储器的存储介质。
本申请实施例中,存储器通过获得来自于计算机装置的供电和第一通知信号进行断电保护。从而不用在存储器中设置额外的备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块可以具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。也就是说,本实施例中的存储器中,可以不用额外设置备电模块,而与存储器连接的计算机装置中的备电模块可以具有较大的备电电量,满足存储器在断电保护过程中的电量需求。
结合第二方面,在第二方面的某些实现方式中,控制电路还用于向计算机装置发送第二通知信号,第二通知信号用于指示存储器已完成断电保护。
本申请实施例中,存储器在完成断电保护后可以向计算机装置发送第二通知信号,从而使计算机装置可以及时关闭电源,避免造成资源浪费。
结合第二方面,在第二方面的某些实现方式中,第一通知信号和第二通知信号通过存储器的同一信号接口传输。
本申请实施例中,可以通过存储器的一个信号接口在计算机装置和存储器之间传输第一通知信号和第二通知信号,从而使存储器可以较快速地向计算机装置发送通知信号和获得来自于计算机装置的通知信号。
结合第二方面,在第二方面的某些实现方式中,控制电路还用于向计算机装置发送第三通知信号,第三通知信号用于指示存储器准备进行断电保护。
应理解,计算机装置可以在确定存储器将要与计算机装置断开连接的情况下,向计算机装置发送第三通知信号。存储器向计算机装置发送第三通知信号后,存储器可以接收来自于计算机装置的第一通知信号,进行断电保护。
还应理解,在存储器完成断电保护后,存储器可以向计算机装置发送第二通知信号,表示存储器完成断电保护。
还应理解,第一通知信号、第二通知信号和第三通知信号都可以通过存储器的同一信号接口传输。还应理解,传输上述信号的接口为低速信号接口,上述信号均为低速信号。低速信号是非高速信号,高速信号可以是PCIE信号或SAS信号。
本申请实施例中,在存储器将要与计算机装置断开连接时,存储器可以向计算机装置发送第三通知信号,从而在计算机装置的协助下实现断电保护。
第三方面,提供了一种为存储器提供备电的方法。该方法包括:计算机装置检测供电模块的供电情况,其中,计算机装置包括供电模块和备电模块;计算机装置根据供电模块的供电情况,通过计算机装置中的备电模块为与计算机装置连接的存储器供电。
本申请实施例中,计算机装置可以在确定供电模块无法为计算机装置和存储器供电时,通过备电模块为计算机装置和存储器进行供电,避免存储器中的缓存数据因掉电而丢失。从而不用在存储器中设置额外的备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。也就是说,本实施例中的计算机装置中,备电模块可以在不占用存储器的空间的基础上,具有较大的备电电量,满足存储器在断电保护过程中的电量需求。
结合第三方面,在第三方面的某些实现方式中,计算机装置根据供电情况,向存储器发送第一通知信号,第一通知信号用于指示存储器进行断电保护。
应理解,存储器的断电保护可以将存储器的高速缓冲存储器中的数据存入所述存储器的存储介质。
本申请实施例中,计算机装置可以在确定供电模块无法为计算机装置和存储器供电的情况下,指示存储器进行断电保护,避免存储器因为电源异常掉电导致无法及时存储缓存数据。
结合第三方面,在第三方面的某些实现方式中,计算机装置接收来自于存储器的第二通知信号,第二通知信号用于指示存储器已完成断电保护;计算机装置根据第二通知信号,停止使用备电模块为存储器供电。
本申请实施例中,计算机装置可以在接收到第二通知信号后,指示备电模块停止供电,从而在确定存储器已完成断电保护的情况下,避免备电模块继续工作而浪费电量。
结合第三方面,在第三方面的某些实现方式中,计算机装置接收来自于存储器的第三通知信号,第三通知信号用于指示存储器准备进行断电保护;计算机装置响应第三通知信号,停止向存储器中写入数据并向存储器发送第一通知信号,第一通知信号用于指示存储器进行断电保护。
应理解,来自于存储器的第三通知信号表示存储器将要与计算机装置断开连接,需要进行断电保护。
本申请实施例中,计算机装置在接收到来自于存储器的第三通知信号后,可以停止向存储器写入数据,从而避免存储器在断电保护过程中无法将控制器后续写入的数据进行保存。控制器在停止向存储器写入数据后,可以向存储器发送第一通知信号,从而协助存储器实现断电保护。
结合第三方面,在第三方面的某些实现方式中,第一通知信号和第二通知信号通过计算机装置的同一信号接口传输。
应理解,第一通知信号、第二通知信号和第三通知信号都可以通过计算机装置的信号接口传输。还应理解,传输上述信号的接口为低速信号接口,上述信号均为低速信号。低速信号是非高速信号,高速信号可以是PCIE信号或SAS信号。
本申请实施例中,可以通过计算机装置的一个信号接口在计算机装置和存储器之间传输第一通知信号、第二通知信号和第三通知信号。从而在供电模块无法为控制器和存储器供电时以及存储器将要与计算机装置断开连接时,控制器可以较快速地向存储器发送通知信号和获得来自于存储器的通知信号。
第四方面,提供了一种断电保护方法。该方法包括:存储器接收来自于与存储器连接的计算机装置的第一通知信号,第一通知信号用于指示存储器进行断电保护;存储器根据第一通知信号,进行断电保护,其中存储器在断电保护过程中由计算机装置供电。
应理解,存储器的断电保护可以将存储器的高速缓冲存储器中的数据存入存储器的存储介质。
本申请实施例中,存储器通过获得来自于计算机装置的供电和第一通知信号,进行断电保护。从而不用在存储器中设置额外的备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块可以具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。也就是说,本实施例中的存储器中,可以不用额外设置备电模块,而与存储器连接的计算机装置中的备电模块可以具有较大的备电电量,满足存储器在断电保护过程中的电量需求。
结合第四方面,在第四方面的某些实现方式中,存储器向计算机装置发送第二通知信号,第二通知信号用于指示存储器已完成断电保护。
本申请实施例中,存储器在完成断电保护后可以向计算机装置发送第二通知信号,从而使计算机装置可以及时关闭电源,避免造成资源浪费。
结合第四方面,在第四方面的某些实现方式中,第一通知信号和第二通知信号通过存储器的同一信号接口传输。
本申请实施例中,可以通过存储器的同一个信号接口在计算机装置和存储器之间传输第一通知信号和第二通知信号,从而使存储器可以较快速地向计算机装置发送通知信号和获得来自于计算机装置的通知信号。
结合第四方面,在第四方面的某些实现方式中,存储器在确定将要与计算机装置断开连接的情况下,向计算机装置发送第三通知信号,第三通知信号用于指示存储器准备进行断电保护。
应理解,存储器向计算机装置发送第三通知信号后,存储器可以接收来自于计算机装置的第一通知信号,开始断电保护。在存储器完成断电保护后,存储器可以向计算机装置发送第二通知信号,表示存储器完成断电保护。
还应理解,第一通知信号、第二通知信号和第三通知信号都可以通过存储器的同一信号接口传输。还应理解,传输上述信号的接口为低速信号接口,上述信号均为低速信号。低速信号是非高速信号,高速信号可以是PCIE信号或SAS信号。
本申请实施例中,在存储器将要与计算机装置断开连接时,存储器可以向计算机装置发送第三通知信号,从而在计算机装置的协助下实现断电保护。
第五方面,提供了一种存储系统。该存储系统包括如第一方面或第一方面的任一种可能的实现方式所述的计算机装置,和如第二方面或第二方面的任一种可能的实现方式所述的存储器。
第六方面,提供了一种计算机设备。该计算机设备包括处理器、供电电源和备电电源。该处理器用于与存储器耦合,读取并执行存储器中的指令和/或程序代码,结合供电电源和备电电源执行如第三方面或第三方面的任一种可能的实现方式所述的方法。
第七方面,提供了一种存储器。该存储器包括处理器,该处理器用于与存储器耦合,读取并执行存储器中的指令和/或程序代码,以执行如第四方面或第四方面的任一种可能的实现方式所述的方法。
第八方面,提供了一种芯片系统。该芯片系统包括逻辑电路,该逻辑电路用于与输入/输出接口耦合,通过输入/输出接口传输数据,以执行如第三方面或第三方面的任一种可能的实现方式所述的方法。
第九方面,提供了一种芯片系统。该芯片系统包括逻辑电路,该逻辑电路用于与输入/输出接口耦合,通过输入/输出接口传输数据,以执行如第四方面或第四方面的任一种可能的实现方式所述的方法。
第十方面,提供了一种计算机可读存储介质。计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行如第三方面或第三方面的任一种可能的实现方式所述的方法。
第十一方面,提供了一种计算机可读存储介质。计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行如第四方面或第四方面的任一种可能的实现方式所述的方法。
附图说明
图1是盘控分离的存储系统的示意性架构图。
图2是盘控一体的存储系统的示意性架构图。
图3是一个存储系统的示意性系统架构图。
图4是根据本申请一个实施例的存储系统的示意性系统架构图。
图5是根据本申请一个实施例的为存储器提供备电的方法的示意性流程图。
图6是根据本申请另一个实施例的为存储器提供备电的方法的示意性流程图。
图7是根据本申请一个实施例的计算机装置的结构示意图。
图8是根据本申请一个实施例的存储器的结构示意图。
图9是根据本申请一个实施例的存储系统的结构示意图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种存储系统中,例如计算机电脑主机、存储器、固态硬盘、含有中央处理器(central processing unit,CPU)的存储芯片系统等,本申请实施例对此并不限定。
图1是盘控分离的存储系统的示意性架构图。在图1所示的应用场景100中,用户通过应用程序来存取数据。运行这些应用程序的计算机被称为“应用服务器”。应用服务器110可以是物理机,也可以是虚拟机。物理应用服务器包括但不限于桌面电脑、服务器、笔记本电脑以及移动设备。应用服务器通过光纤交换机120访问存储系统以存取数据。然而,交换机120只是一个可选设备,应用服务器110也可以直接通过网络与存储系统130通信。或者,光纤交换机120也可以替换成以太网交换机、无限带宽(infiniBand)交换机等。
图1中的存储系统130是一个集中式存储系统。集中式存储系统的特点是有一个统一的入口,所有从外部设备来的数据都要经过这个入口,这个入口就是集中式存储系统的引擎140。引擎140是集中式存储系统中最为核心的部件,许多存储系统的高级功能都在其中实现。
如图1所示,引擎140中有一个或多个控制器,图1以引擎包含两个控制器为例予以说明。控制器1与控制器2之间具有镜像通道,那么当控制器1将一份数据写入其内存143后,可以通过所述镜像通道将所述数据的副本发送给控制器2,控制器2将所述副本存储在自己本地的内存147中。由此,控制器1和控制器2互为备份,当控制器1发生故障时,控制器2可以接管控制器1的业务,当控制器2发生故障时,控制器1可以接管控制器2的业务,从而避免硬件故障导致整个存储系统130的不可用。当引擎140中部署有4个控制器时,任意两个控制器之间都具有镜像通道,因此任意两个控制器互为备份。
引擎140还包含前端接口141、前端接口145、后端接口144和后端接口148,其中前端接口141和145用于与应用服务器110通信,从而为应用服务器110提供存储服务。而后端接口144和148用于与硬盘153通信,以扩充存储系统的容量。通过后端接口144和148,引擎140可以连接更多的硬盘153,从而形成一个非常大的存储资源池。
在硬件上,如图1所示,控制器1至少包括处理器142、内存143。处理器142是一个中央处理器,用于处理来自存储系统外部(服务器或者其他存储系统)的数据访问请求,也用于处理存储系统内部生成的请求。示例性的,处理器142通过前端端口141接收应用服务器110发送的写数据请求时,会将这些写数据请求中的数据暂时保存在内存143中。当内存143中的数据总量达到一定阈值时,处理器142通过后端端口将内存144中存储的数据发送给硬盘153进行持久化存储。
内存143是指与处理器直接交换数据的内部存储器,它可以随时读写数据,而且速度很快,作为操作系统或其他正在运行中的程序的临时数据存储器。内存包括至少两种存储器,例如内存既可以是随机存取存储器,也可以是只读存储器(read only memory,ROM)。举例来说,随机存取存储器是动态随机存取存储器(dynamic random access memory,DRAM),或者存储级存储器(storage class memory,SCM)。DRAM是一种半导体存储器,与大部分随机存取存储器(random access memory,RAM)一样,属于一种易失性存储器(volatile memory)设备。SCM是一种同时结合传统储存装置与存储器特性的复合型储存技术,存储级存储器能够提供比存储器更快速的读写速度,但存取速度上比DRAM慢,在成本上也比DRAM更为便宜。然而,DRAM和SCM在本实施例中只是示例性的说明,内存还可以包括其他随机存取存储器,例如静态随机存取存储器(static random access memory,SRAM)等。而对于只读存储器,举例来说,可以是可编程只读存储器(programmable read onlymemory,PROM)、可抹除可编程只读存储器(erasable programmable read only memory,EPROM)等。另外,内存143还可以是双列直插式存储器模块或双线存储器模块(dual in-line memory module,DIMM),即由动态随机存取存储器组成的模块,还可以是固态存储器(solid state disk,SSD)。实际应用中,控制器1中可配置多个内存,以及不同类型的内存。本实施例不对内存的数量和类型进行限定。此外,可对内存143进行配置使其具有保电功能。保电功能是指系统发生掉电又重新上电时,内存143中存储的数据也不会丢失。具有保电功能的内存被称为非易失性存储器。
内存143中存储有软件程序,处理器142运行内存143中的软件程序可实现对存储器的管理。例如将存储器抽象化为存储资源池,然后划分为逻辑单元号(logical unitnumber,LUN)提供给服务器使用等。这里的LUN其实就是在服务器上看到的存储器。当然,一些集中式存储系统本身也是文件服务器,可以为服务器提供共享文件服务。
控制器2(以及其他图1中未示出的控制器)的硬件组件和软件结构与控制器1类似,这里不再赘述。
图1所示的是一种盘控分离的集中式存储系统。在该系统中,引擎140可以不具有存储器槽位,硬盘153需要放置在硬盘框150中,后端接口144与硬盘框150通信。后端接口144以适配卡的形态存在于引擎140中,一个引擎140上可以同时使用两个或两个以上后端接口来连接多个存储器框,例如后端接口144和148。或者,适配卡也可以集成在主板上,此时适配卡可通过PCIE总线与处理器142或146通信。
需要说明的是,图1中只示出了一个引擎140,然而在实际应用中,存储系统中可包含两个或两个以上引擎,多个引擎之间做冗余或者负载均衡。
硬盘框150包括控制单元151和若干个硬盘153。控制单元151可具有多种形态。一种情况下,硬盘框150属于智能盘框,如图1所示,控制单元151包括CPU和内存。CPU用于执行地址转换以及读写数据等操作。内存用于临时存储将要写入硬盘153的数据,或者从硬盘153读取出来将要发送给控制器的数据。另一种情况下,控制单元151是一个可编程的电子部件,例如数据处理模块(data processing unit,DPU)。DPU具有CPU的通用性和可编程性,但更具有专用性,可以在网络数据包,存储请求或分析请求上高效运行。DPU通过较大程度的并行性(需要处理大量请求)与CPU区别开来。可选的,这里的DPU也可以替换成图形处理模块(graphics processing unit,GPU)、嵌入式神经网络处理器(neural-networkprocessing units,NPU)等处理芯片。通常情况下,控制单元151的数量可以是一个,也可以是两个或两个以上。当硬盘框150包含至少两个控制单元151时,硬盘153与控制单元151之间可具有归属关系。如果硬盘153与控制单元151之间具有归属关系,那么每个控制器只能访问归属于它的存储器,这往往涉及到在控制单元151之间转发读/写数据请求,导致数据访问的路径较长。另外,如果存储空间不足,在硬盘框150中增加新的硬盘153时需要重新绑定硬盘153与控制单元151之间的归属关系,操作复杂,导致存储空间的扩展性较差。因此在另一种实施方式中,控制单元151的功能可以卸载到网卡152上。换言之,在该种实施方式中,硬盘框150内部不具有控制单元151,而是由网卡152来完成数据读写、地址转换以及其他计算功能。此时,网卡152是一个智能网卡。它可以包含CPU和内存。在某些应用场景中,网卡152也可能具有持久化内存介质,如持久性内存(persistent memory,PM),或者非易失性随机访问存储器(non-volatile random access memory,NVRAM),或者相变存储器(phasechange memory,PCM)等。CPU用于执行地址转换以及读写数据等操作。内存用于临时存储将要写入硬盘153的数据,或者从硬盘153读取出来将要发送给控制器的数据。硬盘框150中的网卡152和硬盘153之间没有归属关系,网卡152可访问该硬盘框150中任意一个硬盘153,因此在存储空间不足时扩展存储器会较为便捷。
按照引擎140与硬盘框150之间通信协议的类型,硬盘框150可能是SAS存储器框,也可能是非易失性存储器(non-volatile memory express,NVMe)存储器框以及其他类型的存储器框。SAS存储器框,采用SAS3.0协议,每个框支持25块SAS存储器。引擎140通过板载SAS接口或者SAS接口模块与硬盘框150连接。NVMe存储器框,更像一个完整的计算机系统,NVMe存储器插在NVMe存储器框内。NVMe存储器框再通过RDMA端口与引擎140连接。本申请的实施例可以应用在图1所示的盘控分离的存储系统中。
图2是盘控一体的存储系统的示意性架构图。图2中的应用服务器210、交换机220分别与图1中的应用服务器110、交换机120类似。图2中的存储系统230包括引擎240和硬盘250,其中引擎240与图1中的引擎140类似,都可以包括一个或多个控制器。图2以引擎240包括两个控制器为例进行说明。图2中引擎包括控制器3和控制器4,其中两个控制器中均包含前端接口、处理器、内存和后端接口。与图1类似,控制器3与控制器4之间具有镜像通道,可以互为备份。图2所示的是一种盘控一体的集中式存储系统。在该系统中,可以包含一个或多个存储器。图2以包含多个存储器为例进行说明。存储器250不需要放置在图1所示的硬盘框150中,存储器250可以直接通过后端端口244与控制器3进行通信,或者通过后端接口248与控制器4进行通信。本申请的实施例可以应用在图2所示的盘控一体的存储系统中。
图3是一个存储系统的示意性系统架构图。
存储系统300可以分为五部分,分别是:控制器310、存储器320、控制器备电模块330、供电模块340和背板350。
控制器310中包含高速控制模块311、处理模块312、高速缓冲存储器313和内部电路314。控制器310可以是图1所示的盘控分离的存储系统中的控制器1或控制器2,也可以是图2所示的盘控一体的存储系统中的控制器3或控制器4。如图1所示的处理器142可以包括高速控制模块311和处理模块312。类似的,处理器146可以包括高速控制模块311和处理模块312。如图2所示的处理器242可以包括高速控制模块311和处理模块312。类似的,处理器246可以包括高速控制模块311和处理模块312。
高速控制模块311可以直接或间接与存储器相连,通过高速信号接口在控制器310与存储器320之间传输高速信号,从而向存储器下发业务,例如写入数据等。高速信号可以是PCIE信号或SAS信号。
处理模块312可以是主板管理控制器(baseboard management controller,BMC)、复杂可编程逻辑器件(complex programmable logic device,CPLD)、或微控制单元(microcontroller unit,MCU)等,可以通过低速信号接口在控制器310与存储器320之间传输低速信号。低速信号是非高速信号。根据不同的低速信号接口,低速信号的类型可以不同。例如企业和数据中心存储形态(Enterprise&Datacenter SSD Form Factor,EDSFF)接口可以包含规范未定义信号(manufacturing mode for device,MFG)、协议预留信号(reserved for future use,RFU)、系统管理总线(system management bus,SMBUS)、复位设备管理接口信号(SMBUS reset,SMBRST#)、主机点灯信号(light emitting diode,LED)、盘片电源使能信号(power disable,PWRDIS)、盘片在位信号(present,PRSNT#)。又例如8639接口可以包含:唤醒信号(wake,Wake#)、盘片电源使能(PWRDIS)、接口类型检测信号(interface detect,IfDet#)、盘片在位信号(PRSNT#)、状态指示信号(activity,ACTIVITY#)、保留信号(reserved)、系统管理总线(SMBUS)。
高速缓冲存储器313为控制器310内部的高速缓冲存储器,用于存储数据。高速缓冲存储器313可以是SRAM,或者可以是图1所示的内存143或内存147,也可以是图2所示的内存243或247。
内部电路314为控制器310内部的硬件电路,可以为控制器310内部的部件提供电路支持。内部电路314可以包括两个电源输入端,其中内部电路314的第一电源输入端可以与供电模块340相连,内部电路314的第二电源输入端可以与控制器备电模块330相连,从而使供电模块340和控制器备电模块330均可以为控制器310供电。
存储器320中包含高速缓冲存储器321、备电模块322、合路模块323和内部电路324。
高速缓冲存储器321为存储器320内部的高速缓冲存储器,可以是SRAM。较小容量的cache的空间可以为1至10GB,较大容量的cache的空间可以是10至100GB,甚至更高。若存储器320的cache容量较小,则存储系统的大部分cache集中在控制器310中,存储器320内部的较小容量的cache仅用于存储器自身的正常工作,即高速缓冲存储器313为较大容量的cache,高速缓冲存储器321为较小容量的cache。此时控制器310与存储器320之间没有cache访问接口,控制器310不会占用存储器320内部的cache资源。随着存储系统中cache容量的增加,控制器310中的部分cache会移到存储器320中,此时存储器320中的高速缓冲存储器321容量较大。同时为了降低访问时延,存储器320可以提供cache访问接口以供控制器310访问。控制器310可以占用存储器320内部的cache资源。图3中的高速缓冲存储器321可以是图1中的控制单元151。当图1中的控制单元151的功能卸载到网卡152时,网卡152可以包含CPU和内存,此时图3中的高速缓冲存储器321可以是网卡152。因此图3中的存储器320可以包括图1中的控制单元151和硬盘153,或者可以包括网卡152和硬盘153。存储器320也可以是图2中的硬盘250。当图3中的高速缓冲存储器321容量较大时,图3中的控制器310可以占用高速缓冲存储器321的资源。此时图3中的控制器310可以包括图1中的控制器1和控制单元151,或者可以包括图1中的控制器1和网卡152,也可以包括图1中的控制器2和控制单元151,或者可以包括图1中的控制器2和网卡152。
备电模块322可以在供电模块340无法正常供电时,为存储器320供电。存储器320可以将高速缓冲存储器321中的缓存数据写入存储器内部的非易失性存储介质中。
合路模块323可以包括两个电源输入端和一个电源输出端。其中合路模块323的第一电源输入端与供电模块340相连,合路模块323的第二电源输入端与备电模块322相连,合路模块323的电源输出端与内部电路324相连。合路模块323可以将供电模块340和备电模块322的电源输入进行合路,使供电模块340和备电模块322均可以为内部电路324供电。
内部电路324是存储器320内部的硬件电路,可以为存储器320内部的部件提供电路支持。图3中的存储器320可以是图1所示的盘控分离的存储系统中的硬盘153,也可以是图2所示的盘控一体的存储系统中的硬盘250。
控制器备电模块330与控制器310的内部电路314相连,可以在供电模块340无法为控制器310供电时,为控制器310供电。
供电模块340为系统300的电源,在供电模块340正常工作时可以为控制器310和存储器320供电。
背板350可以为控制器310和存储器320直接提供信号通路,还可以为存储器320提供电源通路。
在图3所示的存储系统中,当图3中供电模块340无法正常供电时,控制器310由控制器备电模块330供电,存储器320由存储器320内的备电模块322供电。此时,控制器310中高速控制模块311会停止通过高速信号接口向存储器320下发业务。存储器320开始执行断电保护(power loss protection,PLP),即将高速缓冲存储器321中的缓存数据写入存储器320的非易失性存储介质中,还可以将存储器320的映射表保存完整。控制器备电模块330为控制器310将高速缓冲存储器313中的缓存数据写到存储器320中提供电力支持,备电模块322为存储器320将高速缓冲存储器321中的缓存数据写入存储器内部的非易失性存储介质中提供电力支持。备电模块322仅能提供毫秒(millisecond,ms)级的备电时间,随着技术的演进,存储器320中的缓存容量越来越大,更容易出现备电模块中储存的电量无法满足实际需求的问题。
图4是根据本申请一个存储系统的示意性系统架构图。
本申请提供的存储系统400可以包括控制器410、存储器420、备电模块430、供电模块440、合路模块450和背板460。
控制器410中包含高速控制模块411、处理模块412、高速缓冲存储器413、高速信号接口414、低速信号接口415和电源接口416。图4中的控制器410可以是图1所示的盘控分离的存储系统中的控制器1或控制器2,也可以是图2所示的盘控一体的存储系统中的控制器3或控制器4。如图1所示的处理器142可以包括高速控制模块411和处理模块412。类似的,处理器146可以包括高速控制模块411和处理模块412。如图2所示的处理器242可以包括高速控制模块411和处理模块412。类似的,处理器246可以包括高速控制模块411和处理模块412。
高速控制模块411可以通过高速信号接口414实现控制器410与存储器420之间的通信,还可以向存储器420发送高速信号,即向存储器下发业务,例如写入数据等。
处理模块412可以检测供电模块440的供电情况,在供电模块440无法为控制器410和存储器420供电时,指示备电模块430开始供电。处理模块412还可以在确定存储器420完成断电保护的情况下,指示备电模块停止供电。处理模块412还可以通过计算机软件或驱动通知上层软件,再由上层软件通知高速控制模块411,从而使高速控制模块411停止通过高速信号接口414向存储器420下发业务。处理模块412还可以通过低速信号接口415实现控制器410与存储器420之间的通信,向存储器420发送低速信号,协助实现存储器420进行断电保护。
高速缓冲存储器413是控制器410内部的高速缓冲存储器,可以用于保存数据。高速缓冲存储器413可以是SRAM,或者可以是图1所示的内存143或内存147,也可以是图2所示的内存243或247。
高速信号接口414可以在控制器410与存储器420之间传输高速信号。高速信号可以是PCIE信号或SAS信号。
低速信号接口415可以在控制器410与存储器420之间传输低速信号。低速信号是非高速信号。
电源接口416与合路模块450的电源输出端453相连,获得来自于备电模块430或供电模块440的供电。
存储器420中包含控制电路421、非易失性存储介质422、高速缓冲存储器423、高速信号接口424、低速信号接口425和电源接口426。
控制电路421可以通过高速信号接口424接收来自于控制器410的高速信号完成数据读写操作。控制电路421还可以通过低速信号接口425接收来自于控制器410的低速信号,从而实现断电保护。
控制电路421接收的低速信号可以是第一通知信号。该第一通知信号用于在供电模块440无法为控制器410和存储器420供电时通知存储器420进行断电保护。
控制电路421还可以通过低速信号接口425向控制器410发送低速信号,该低速信号可以是第二通知信号或第三通知信号。该第二通知信号用于通知控制器410存储器420已完成断电保护。该第三通知信号用于在存储器420将要与控制器410断开连接时,通知控制器410存储器420准备进行断电保护。
存储器420的断电保护可以将存储器420的高速缓冲存储器423中的数据写入非易失性存储介质422中,还可以保持存储器420的映射表的完整性。
非易失性存储介质422是存储器420内部的非易失性存储介质,可以实现存储器内部的数据存储功能。非易失性存储介质422可以是闪存(flash),或者是PROM,或者是EPROM等,本申请实施例对此并不限定。
高速缓冲存储器423是存储器内部的高速缓冲存储器,可以用于存储缓存数据。高速缓冲存储器423可以是SRAM。在高速缓冲存储器423容量较大时,存储器420中可以包括cache访问接口,以使控制器410可以对高速缓冲存储器423进行读写访问。图4中的高速缓冲存储器423可以是图1中的控制单元151。当图1中的控制单元151的功能卸载到网卡152时,网卡152可以包含CPU和内存,此时图4中的高速缓冲存储器423可以是网卡152。因此图4中的存储器420可以包括图1中的控制单元151和硬盘153,或者可以包括网卡152和硬盘153。存储器420也可以是图2中的硬盘250。
高速信号接口424可以通过背板460与控制器410中的高速信号接口414相连。通过高速信号接口414和高速信号接口424,控制器410与存储器420之间可以传输高速信号。
低速信号接口425可以通过背板460与控制器410中的低速信号接口415相连。通过低速信号接口415和低速信号接口425,控制器410与存储器420之间可以传输低速信号。
电源接口426与合路模块450的电源输出端453相连,获得来自于备电模块430或供电模块440的供电。图4中的存储器420可以是图1所示的盘控分离的存储系统中的硬盘153,也可以是图2所示的盘控一体的存储系统中的存储器250。图4中的控制电路421和高速缓冲存储器423可以共同构成图1中的控制单元151或网卡152,因此图1中的控制单元151、网卡152和硬盘153可以共同构成图4中的存储器420。
可选的,在一些实施例中,存储器420还可以包括开关427。开关427是检测存储器420是否将要与控制器410断开连接的开关。当开关427检测到存储器420不与控制器410断开连接时,开关427可以向控制电路421发送稳定接入信号,表示当前存储器420为稳定接入状态。当开关427检测到存储器420将要与控制器410断开连接时,开关427可以向控制电路421发送断开指示信号,表示当前存储器将要断开连接。控制电路421可以接收来自于开关427的稳定接入信号,确定存储器420与控制器410稳定连接。控制电路421还可以接收来自于开关427的断开指示信号,确定存储器420将要与控制器410断开连接。
可选地,在一些实施例中,可以通过将拉手条428弹开或闭合达到控制开关427的目的。拉手条428可以为锁扣性质的开关。当存储器420与控制器410相连时,可以将拉手条428闭合,从而使开关427检测到存储器420不与控制器410断开。当存储器420需要与控制器410断开连接时,可以将拉手条428弹起,从而使开关427检测到存储器420将要与控制器410断开。
可选地,开关427可以为光电开关。
可选地,在一些实施例中,存储器420还可以包括指示灯。指示灯可以用于指示存储器420将要与控制器410断开连接、或者用于指示存储器正在进行断电保护、或者用于指示存储器完成断电保护等。指示灯可以固定点亮或熄灭,也可以按一定频率进行闪烁,本申请实施例对此并不限定。
可选地,在一些实施例中,当存储器420开始断电保护或完成断电保护时,控制器410可以通知上层软件,使上层软件的操作界面显示存储器开始断电保护或完成断电保护等。
备电模块430可以接收来自于控制器410的备电指示,为控制器410和存储器420供电。备电模块430在接收到该备电指示后,可以开始供电。备电模块430还可以接收来自于控制器410的停止备电指示,停止为控制器410和存储器420供电。备电模块430在接收到该停止备电指示后,可以停止供电。备电模块430可以提供秒(second,s)级,或者数十秒级的备电时间。
供电模块440为系统400的电源,在正常工作时可以为控制器410和存储器420供电。
合路模块450包括电源输入端451、电源输入端452和电源输出端453。其中合路模块450的电源输入端451与备电模块430相连,电源输入端452与供电模块440相连,电源输出端453可以与控制器410的电源接口416和存储器420的电源接口426相连。合路模块450可以将备电模块430和供电模块440的电源输入进行合路,从而使备电模块430或供电模块440均可以为控制器410或存储器420供电。
背板460可以为控制器410和存储器420提供信号通路,还可以为存储器420提供电源通路。
可选地,控制器410与存储器420可以作为一个整体,此时背板460可以省略。
可选地,备电模块430可以是控制器410外部独立的备电单元。备电模块430可以与控制器410分离,单独作为一个现场可更换单元(field replace unit,FRU)。备电模块430也可以与控制器410合为一个FRU单元。
可选地,控制器410、备电模块430、供电模块440均可以单独作为一个FRU单元,也可以任意多个合为一个FRU单元。
在图4的存储系统中,不用在存储器中设置额外的备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。也就是说,图4的存储系统中,备电模块可以在不占用存储器的空间的基础上,具有较大的备电电量,满足存储器在断电保护过程中的电量需求。图4的存储系统还可以通过同一个低速信号接口传输第一通知信号、第二通知信号或第三通知信号中的任一个,从而使计算机装置和存储器可以较为快速的相互传输信号。
图5是根据本申请一个为存储器提供备电的方法的示意性流程图。图5中的方法包括如下内容。
S510,计算机装置检测到供电模块无法正常供电,指示备电模块开始供电。
供电模块正常工作时,可以为计算机装置和与计算机装置相连的存储器供电。当供电模块无法为计算机装置和存储器供电时,计算机装置可以检测到供电模块无法正常供电,从而指示备电模块开始供电。
可选地,计算机装置可以通过向备电模块发送备电指示来指示备电模块开始供电。该备电指示可以用于指示备电模块开始供电。备电模块接收到该备电指示后为计算机装置和存储器的供电。
备电模块可以在计算机装置中为计算机装置和存储器供电,使备电模块可以在不占用存储器的空间的同时,具有较大的备电电量。从而使备电模块可以满足存储器在断电保护过程中的电量需求。
S520,计算机装置向存储器发送第一通知信号。
当备电模块开始供电后,计算机装置可以向存储器发送第一通知信号,该第一通知信号可以用于通知存储器进行断电保护。
可选地,在向存储器发送第一通知信号前,计算机装置可以停止向存储器下发业务,例如写入数据等。计算机装置停止向存储器下发业务后,存储器中不会再写入新的数据,此时存储器进行断电保护不会造成数据的丢失。计算机装置停止向存储器下发业务后,可以向存储器发送第一通知信号。
可选地,第一通知信号可以通过计算机装置的低速信号接口发送。
可选地,第一通知信号可以是一个固定的高低电平,也可以是一段时间的脉冲信号,本申请实施例对此不做具体限定。
可选地,在计算机装置向存储器发送第一通知信号时,计算机装置可以将存储器设置为状态指示1,该状态指示1可以表示存储器正在进行断电保护,不可拔出。该状态指示1可以是存储器上的指示灯固定点亮或按一定频率闪烁,本申请实施例对此不做具体限定。
S530,存储器接收第一通知信号,进行断电保护。
存储器接收到来自于计算机装置的第一通知信号后,进行断电保护。存储器的断电保护过程可以将存储器内部的cache中的缓存数据写入存储器内部的存储介质中。
可选地,在存储器接收到来自于计算机装置的第一通知信号后,可以由存储器将自身设置为状态指示1,该状态指示1可以表示存储器正在进行断电保护,不可拔出。该状态指示1可以是存储器上的指示灯固定点亮或按一定频率闪烁,本申请实施例对此并不限定。
S540,存储器完成断电保护,存储器向计算机装置发送第二通知信号。
存储器完成断电保护后,即存储器内部cache中的缓存数据全部写入存储器内部的非易失性存储介质,并且存储器的映射表保存完整后,存储器可以向计算机装置发送第二通知信号。该第二通知信号可以用于指示存储器已经完成断电保护。
可选地,第二通知信号可以由存储器通过低速信号接口发送。
可选地,第二通知信号可以是一个固定的高低电平或一段时间的脉冲信号,本申请实施例对此并不限定。
可选地,第二通知信号与步骤S520、S530中的第一通知信号的类型可以一致,也可以不一致。即第一通知信号与第二通知信号可以都是固定的高低电平,也可以都是一段时间的脉冲信号,或者一个是固定的高低电平,一个是一段时间的脉冲信号,本申请实施例对此并不限定。
可选地,当第一通知信号与第二通知信号的类型一致时,两者的内容可以一致,也可以不一致。即当第一通知信号与第二通知信号都是固定的高低电平时,可以都是固定的高电平,或者都是固定的低电平,或者一个是高电平、一个是低电平。当第一通知信号与第二通知信号都是一段时间的脉冲信号时,可以都是一致的脉冲信号,也可以是不一致的脉冲信号,本申请实施例对此并不限定。
可选地,第一通知信号和第二通知信号均可以通过低速信号接口发送,从而使计算机装置和存储器可以较为快速的相互传输信号。
可选地,存储器完成断电保护后,可以由存储器将自身设置为状态指示2,该状态指示2可以表示存储器已经完成断电保护,可以拔出。该状态指示2可以是存储器上的指示灯熄灭或按一定频率闪烁,本申请实施例对此并不限定。
可选地,若存储器支持带电插拔,存储器在完成断电保护后即可拔出。
可选地,若存储器支持带电插拔,存储器在完成断电保护后可以由存储器将自身设置为状态指示2,表示存储器已经完成断电保护,可以拔出。
S550,计算机装置接收第二通知信号,指示备电模块结束供电。
计算机装置接收到来自于存储器的第二通知信号后,可以指示备电模块停止供电。
可选地,可以通过向备电模块发送停止备电指示来指示备电模块停止供电,该停止备电指示可以用于指示备电模块停止供电。备电模块接收停止备电指示后停止为计算机装置和存储器供电。
可选地,计算机装置接收到来自于存储器的第二通知信号后,可以由计算机装置将存储器设置为状态指示2,该状态指示2表示存储器完成断电保护,可以拔出。该状态指示2可以是存储器上的指示灯熄灭或按一定频率闪烁,本申请实施例对此并不限定。
可选地,若存储器支持带电插拔,则计算机装置接收第二通知信号后,可以由计算机装置将存储器设置为状态指示2,表示存储器完成断电保护,可以拔出。
可选地,若存储器不支持带电插拔,在计算机装置接收第二通知信号后,可以由计算机装置向存储器发送下电信号。该下电信号可以是盘片电源使能信号,用于指示存储器关闭电源。存储器断开电源后即可拔出。
可选地,若存储器不支持带电插拔,在计算机装置向存储器发送下电信号后,可以由计算机装置将存储器设置为状态指示2,表示存储器完成断电保护,可以拔出。
可选地,在计算机装置接收第二通知信号后,计算机装置中可能仍有部分部件处于工作状态,例如控制器中的高速控制器或cache。在计算机装置的部件工作完成后,可以向备电模块发送停止备电指示,指示备电模块结束供电。
在备电模块开始供电后,步骤S520至步骤S550中的各个步骤均可以由备电模块供电。由于不用在存储器中设置额外的备电模块,无需占用存储器中的空间,能够减少存储器的尺寸。并且,由于计算机装置中的备电模块具有较大的备电电量,能够满足存储器在断电保护过程中的电量需求。也就是说,本实施例中,备电模块可以在不占用存储器的空间的基础上,具有较大的备电电量,满足存储器在断电保护过程中的电量需求。在图5的方法中,还可以通过同一个信号接口传输第一通知信号和第二通知信号,从而使计算机装置和存储器可以较为快速的相互传输信号。
图6是根据本申请另一个为存储器提供备电的方法的示意性流程图。图6中的方法包括如下内容。
S610,存储器获取断开指示信号。
在需要断开存储器与计算机装置的连接时,存储器可以获取到断开指示信号,表示存储器将要断开连接,需要准备进行断电保护。
可选地,可以由存储器中的开关向存储器发送断开指示信号,该断开指示信号可以是一个固定的高低电平。
可选地,存储器接收到断开指示信号后,可以由存储器将自身设置为状态指示3,表示存储器正在进行断电保护,不可拔出。该状态指示3可以是存储器上的指示灯固定点亮或按一定频率闪烁,或者该状态指示3可以是上层软件的操作界面进行显示,本申请实施例对此不做具体限定。
可选地,存储器中的开关可以是光电开关。
S620,存储器向计算机装置发送第三通知信号。
当存储器获取到断开指示信号后,存储器可以向计算机装置发送第三通知信号。该第三通知信号可以用于表示当前存储器将要断开连接,需要准备进行断电保护。
可选地,第三通知信号可以由存储器通过低速信号接口发送。
可选地,第三通知信号可以是一个固定的高低电平,也可以是一段时间的脉冲信号。
S630,计算机装置接收第三通知信号,向存储器发送第一通知信号。
计算机装置接收到来自于存储器的第三通知信号后,可以向存储器发送第一通知信号,该第一通知信号用于通知存储器进行断电保护。
可选地,为防止在断电保护期间,计算机装置继续向存储器写入数据,使存储器无法将数据全部保存。计算机装置接收到来自于存储器的第三通知信号后,可以停止向存储器下发业务。计算机装置停止向存储器下发业务后,计算机装置可以向存储器发送第一通知信号,指示存储器进行断电保护。
可选地,第一通知信号可以由计算机装置通过低速信号接口发送。
可选地,该第一通知信号可以是一个固定的高低电平,也可以是一段时间的脉冲信号,本申请实施例对此不做具体限定。
可选地,在计算机装置向存储器发送第一通知信号时,计算机装置可以将存储器设置为状态指示3,该状态指示3可以表示存储器正在进行断电保护,不可拔出。该状态指示3可以是存储器上的指示灯固定点亮或按一定频率闪烁,或者该状态指示3可以是上层软件的操作界面进行显示,本申请实施例对此不做具体限定。
S640,存储器接收第一通知信号,进行断电保护。
存储器接收到来自于计算机装置的第一通知信号后,进行断电保护。存储器的断电保护过程可以将存储器内部cache中的缓存数据写入存储器内部的存储介质中。
可选地,在存储器接收到来自于计算机装置的第一通知信号后,可以由存储器将自身设置为状态指示1,该状态指示1可以表示存储器正在进行断电保护,不可拔出。该状态指示1可以是存储器上的指示灯固定点亮或按一定频率闪烁,本申请实施例对此并不限定。
S650,存储器完成断电保护后,向计算机装置发送第二通知信号。
存储器完成断电保护后,即将存储器内部cache中的缓存数据全部写入存储器内部的存储介质,并且存储器的映射表保存完整后,存储器可以向计算机装置发送第二通知信号。该第二通知信号用于指示存储器已经完成断电保护。
可选地,第二通知信号可以由存储器通过低速信号接口发送。
可选地,第二通知信号可以是一个固定的高低电平或一段时间的脉冲信号,本申请实施例对此并不限定。
可选地,第二通知信号与上述步骤中的第三通知信号、第一通知信号的类型可以一致,也可以不一致。即第一通知信号、第二通知信号和第三通知信号可以任一个或多个是固定的高低电平,也可以任一个或多个是一段时间的脉冲信号,本申请实施例对此并不限定。
可选地,当第一通知信号、第二通知信号与第三通知信号的类型一致时,三者的内容可以一致,也可以不一致。即当第一通知信号、第二通知信号与第三通知信号都是固定的高低电平时,可以任一个或多个是固定的高电平,也可以任一个或多个是固定的低电平。当第一通知信号、第二通知信号与第三通知信号都是一段时间的脉冲信号时,可以任一个或多个是一致的脉冲信号,也可以任一个或多个是不一致的脉冲信号,本申请实施例对此并不限定。
可选地,第一通知信号、第二通知信号与第三通知信号均可以通过低速信号接口发送,从而使计算机装置和存储器可以较为快速的相互传输信号。
可选地,存储器完成断电保护后,可以由存储器将自身设置为状态指示2,该状态指示2可以表示存储器已经完成断电保护,可以拔出。该状态指示2可以是存储器上的指示灯熄灭或按一定频率闪烁,本申请实施例对此并不限定。
可选地,若存储器支持带电插拔,存储器在完成断电保护后即可拔出。
可选地,若存储器支持带电插拔,存储器在完成断电保护后可以由存储器将自身设置为状态指示2,表示存储器已经完成断电保护,可以拔出。
S660,计算机装置接收第二通知信号。
可选地,计算机装置接收到来自于存储器的第二通知信号后,可以由计算机装置将存储器设置为状态指示4,该状态指示4表示存储器完成断电保护,可以拔出。该状态指示4可以是存储器上的指示灯熄灭或按一定频率闪烁,或者该状态指示4可以是上层软件的操作界面进行显示,本申请实施例对此并不限定。
可选地,若存储器支持带电插拔,则计算机装置接收到第二通知信号后,可以由计算机装置将存储器状态设置为状态指示4,表示存储器完成断电保护,可以拔出。
可选地,若存储器不支持带电插拔,在计算机装置接收到第二通知信号后,计算机装置可以向存储器发送下电信号。该下电信号可以是盘片电源使能信号,用于指示存储器关闭电源。存储器断开电源后即可拔出。
可选地,若存储器不支持带电插拔,在计算机装置向存储器发送下电信号后,可以由计算机装置将存储器状态设置为状态指示4,表示存储器完成断电保护,可以拔出。
步骤S610至步骤S660中的各个步骤可以均由供电模块供电。在存储器需要与计算机装置断开连接时,存储器可以通过向计算机装置发送第三通知信号,在计算机的协助下实现断电保护。在图6的方法中,还可以通过一个低速信号接口传输第一通知信号、第二通知信号和第三通知信号,从而使计算机装置和存储器可以较为快速的相互传输信号。
以上描述了根据本申请实施例的为存储器提供备电的方法,下面分别结合图7至图9描述根据本申请实施例的计算机装置、存储器、存储系统和相关设备。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序指令,所述程序执行时可包括如图5或图6对应实施例中为存储器提供备电的方法的部分或全部步骤。
图7是根据本申请一个实施例的计算机装置的结构示意图。计算机装置700包括控制器710、供电模块720和备电模块730。其中,控制器710可以是图4中的控制器410,控制器710的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。供电模块720可以是图4中的供电模块440,供电模块720的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。备电模块730可以是图4中的备电模块430,备电模块730的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。
在一些实施例中,计算机装置700还可以包括电源接口741和信号接口742(图中未示出)。该电源接口741可以是图4中的电源接口416,该电源接口741的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。该信号接口742可以是图4中的高速信号接口414或低速信号接口415,该信号接口742的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。
在一些实施例中,计算机装置700还可以包括合路模块750(图中未示出)。该合路模块750可以是图4中的合路模块450,该合路模块750的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。
图8是根据本申请一个实施例的存储器的结构示意图。存储器800包括控制电路810、缓存820和非易失性存储介质830。控制电路810可以是图4中的控制电路421,控制电路810的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。缓存820可以是图4中的高速缓冲存储器423,缓存820的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。非易失性存储介质830可以是图4中的非易失性存储介质422,非易失性存储介质830的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。
在一些实施例中,存储器800还可以包括电源接口841和信号接口842(图中未示出)。该电源接口841可以是图4中的电源接口426,该电源接口841的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。该信号接口842可以是图4中的高速信号接口424或低速信号接口425,该信号接口842的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。
在一些实施例中,存储器800还可以包括开关850(图中未示出)。该开关850可以是图4中的开关428,该开关850的具体功能和有益效果可以参见图4所示的实施例,在此就不再赘述。
图9是根据本申请一个实施例的存储系统的结构示意图。存储系统900可以包括计算机装置910和存储器920。其中计算机装置910可以表现为图7中的计算机装置700,存储器920可以表现为图8中的存储器800。
本申请实施例还提供了一种芯片系统,该芯片系统包括逻辑电路,该逻辑电路用于与输入/输出接口耦合,通过该输入/输出接口传输数据,以执行上述实施例中的各个步骤。
根据本申请实施例提供的方法,本申请还提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行上述实施例中的各个步骤。
根据本申请实施例提供的方法,本申请还提供一种计算机可读介质,该计算机可读介质存储有程序代码,当该程序代码在计算机上运行时,使得该计算机执行上述实施例中的各个步骤。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令或程序代码完成。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
应注意,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令或程序代码完成。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动存储器、只读存储器、随机存取存储器(Random AccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (20)
1.一种计算机装置,其特征在于,包括:供电模块、备电模块以及控制器,其中:
所述控制器,用于检测所述供电模块的供电情况,并根据所述供电情况向所述备电模块发送备电指示;
所述备电模块,用于根据所述备电指示为与所述控制器连接的存储器供电。
2.根据权利要求1所述的装置,其特征在于,所述控制器,还用于根据所述供电情况向所述存储器发送第一通知信号,所述第一通知信号用于指示所述存储器进行断电保护。
3.根据权利要求2所述的装置,其特征在于,所述控制器,还用于接收来自于所述存储器的第二通知信号,根据所述第二通知信号向所述备电模块发送停止备电指示,其中,所述第二通知信号用于指示所述存储器已完成所述断电保护;
所述备电模块,还用于根据所述停止备电指示停止为所述存储器供电。
4.根据权利要求1所述的装置,其特征在于,所述控制器,还用于:
接收来自于所述存储器的第三通知信号;
响应所述第三通知信号,停止向所述存储器写入数据,并向所述存储器发送第一通知信号,其中,所述第一通知信号用于指示所述存储器进行断电保护,所述第三通知信号用于指示所述存储器准备进行所述断电保护。
5.根据权利要求3或4所述的装置,其特征在于,所述第一通知信号和所述第二通知信号通过所述计算机装置的同一信号接口传输。
6.根据权利要求1至5中任一项所述的装置,其特征在于,所述装置还包括:
合路模块,所述合路模块的输入端分别连接所述供电模块和所述备电模块,所述合路模块的输出端与所述控制器和所述存储器相连,
所述合路模块,具体用于获取来自于所述供电模块或备电模块的供电,为所述控制器或所述存储器供电。
7.一种存储器,其特征在于,包括:控制电路、缓存和非易失性存储介质,
所述控制电路,用于接收来自于与所述存储器连接的计算机装置的第一通知信号,其中,所述第一通知信号用于指示所述存储器进行断电保护;
所述控制电路,还用于根据所述第一通知信号进行所述断电保护,以将所述缓存中的数据写入所述非易失性存储介质,其中,所述存储器在所述断电保护过程中由所述计算机装置供电。
8.根据权利要求7所述的存储器,其特征在于,所述控制电路,还用于向所述计算机装置发送第二通知信号,所述第二通知信号用于指示所述存储器已完成所述断电保护。
9.根据权利要求8所述的存储器,其特征在于,所述第一通知信号和所述第二通知信号通过所述存储器的同一信号接口传输。
10.根据权利要求7至9中任一项所述的存储器,其特征在于,
所述控制电路,还用于向所述计算机装置发送第三通知信号,所述第三通知信号用于指示所述存储器准备进行所述断电保护。
11.一种为存储器提供备电的方法,其特征在于,所述方法包括:
计算机装置检测供电模块的供电情况,其中,所述计算机装置包括所述供电模块和备电模块;
所述计算机装置根据所述供电模块的供电情况,通过计算机装置中的备电模块为与所述计算机装置连接的存储器供电。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
所述计算机装置根据所述供电情况,向所述存储器发送第一通知信号,所述第一通知信号用于指示所述存储器进行断电保护。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
所述计算机装置接收来自于所述存储器的第二通知信号,所述第二通知信号用于指示所述存储器已完成所述断电保护;
所述计算机装置根据所述第二通知信号,停止使用所述备电模块为所述存储器供电。
14.根据权利要求11所述的方法,其特征在于,所述方法还包括:
所述计算机装置接收来自于所述存储器的第三通知信号,所述第三通知信号用于指示所述存储器准备进行断电保护;
所述计算机装置响应所述第三通知信号,停止向所述存储器中写入数据并向所述存储器发送第一通知信号,所述第一通知信号用于指示所述存储器进行所述断电保护。
15.根据权利要求13或14所述的方法,其特征在于,所述第一通知信号和所述第二通知信号通过所述计算机装置的同一信号接口传输。
16.一种断电保护方法,其特征在于,所述方法包括:
存储器接收来自于与所述存储器连接的计算机装置的第一通知信号,所述第一通知信号用于指示所述存储器进行断电保护;
所述存储器根据所述第一通知信号,进行所述断电保护,其中所述存储器在所述断电保护过程中由所述计算机装置供电。
17.根据权利要求16所述的方法,其特征在于,所述方法还包括:
所述存储器向所述计算机装置发送第二通知信号,所述第二通知信号用于指示所述存储器已完成所述断电保护。
18.根据权利要求17所述的方法,其特征在于,所述第一通知信号和所述第二通知信号通过所述存储器的同一信号接口传输。
19.根据权利要求16至18中任一项所述的方法,其特征在于,所述方法还包括:
所述存储器在确定将要与所述计算机装置断开连接的情况下,向所述计算机装置发送第三通知信号,所述第三通知信号用于指示所述存储器准备进行所述断电保护。
20.一种存储系统,包括:如权利要求1至6中任一项所述的计算机装置,和如权利要求7至10中任一项所述的存储器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111422218.2A CN116189730A (zh) | 2021-11-26 | 2021-11-26 | 为存储器提供备电的方法和相关设备 |
PCT/CN2022/117591 WO2023093210A1 (zh) | 2021-11-26 | 2022-09-07 | 为存储器提供备电的方法和相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111422218.2A CN116189730A (zh) | 2021-11-26 | 2021-11-26 | 为存储器提供备电的方法和相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116189730A true CN116189730A (zh) | 2023-05-30 |
Family
ID=86436933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111422218.2A Pending CN116189730A (zh) | 2021-11-26 | 2021-11-26 | 为存储器提供备电的方法和相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116189730A (zh) |
WO (1) | WO2023093210A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101286086B (zh) * | 2008-06-10 | 2010-08-11 | 杭州华三通信技术有限公司 | 硬盘掉电保护方法、装置以及硬盘和硬盘掉电保护系统 |
CN101520686B (zh) * | 2008-12-19 | 2013-08-07 | 康佳集团股份有限公司 | 一种硬盘保护卡及计算机 |
JP2015064676A (ja) * | 2013-09-24 | 2015-04-09 | 株式会社東芝 | 情報処理装置、半導体装置、情報処理方法およびプログラム |
CN110515447B (zh) * | 2019-08-09 | 2021-05-04 | 苏州浪潮智能科技有限公司 | 存储介质的供电系统及方法 |
CN110806794A (zh) * | 2019-10-10 | 2020-02-18 | 浙江大华技术股份有限公司 | 存储系统的掉电保护方法、系统、计算机设备以及介质 |
-
2021
- 2021-11-26 CN CN202111422218.2A patent/CN116189730A/zh active Pending
-
2022
- 2022-09-07 WO PCT/CN2022/117591 patent/WO2023093210A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023093210A1 (zh) | 2023-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8131892B2 (en) | Storage apparatus and a data management method employing the storage apparatus | |
US10810085B2 (en) | Baseboard management controllers for server chassis | |
KR102481475B1 (ko) | NVMe-oF 기반의 시스템에서 섀시 레벨의 킵 얼라이브를 지원하기 위한 시스템 및 방법 | |
US8443221B2 (en) | Methods, systems, and computer readable media for advanced power management for serial advanced technology attachment (SATA)-based storage devices | |
US7725650B2 (en) | Storage system and method for controlling the same | |
US7437585B2 (en) | Storage system and power control method therefor, adapter and power control method therefor, and storage controller and control method therefor | |
US9229855B2 (en) | Apparatus and method for routing information in a non-volatile memory-based storage device | |
US9645940B2 (en) | Apparatus and method for accessing a non-volatile memory blade using multiple controllers in a non-volatile memory based storage device | |
KR102114109B1 (ko) | 데이터 저장 장치 | |
US10565108B2 (en) | Write-back cache for storage controller using persistent system memory | |
US9021275B1 (en) | Method and apparatus to exercise and manage a related set of power managed storage devices | |
US9141172B1 (en) | Method and apparatus to manage and control a power state of a device set based on availability requirements of corresponding logical addresses | |
JP2017531856A (ja) | アクティブストレージユニットおよびアレイ | |
US20150161069A1 (en) | Handling two sgpio channels using single sgpio decoder on a backplane controller | |
JP5147586B2 (ja) | ストレージ装置及びその制御方法 | |
US20120331199A1 (en) | Computer system, host-bus-adaptor control method, and program thereof | |
CN113050896A (zh) | 一种支持nvdimm的国产飞腾服务器及数据保护方法 | |
KR101824671B1 (ko) | 비휘발성 메모리 기반 저장 디바이스에서 정보를 라우팅하는 장치 및 방법 | |
US11385815B2 (en) | Storage system | |
CN116189730A (zh) | 为存储器提供备电的方法和相关设备 | |
JP2017062570A (ja) | 制御装置および制御プログラム | |
US9032150B2 (en) | Storage apparatus and control method of storage apparatus | |
CN117148948A (zh) | 包括电池模块的存储系统及其操作方法 | |
KR20230166812A (ko) | 배터리 모듈이 포함된 스토리지 시스템 및 그 동작 방법 | |
CN117951057A (zh) | 网卡管理方法、系统及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |