一种数据保护方法、装置及系统的制作方法

文档序号:6509041阅读:288来源:国知局
一种数据保护方法、装置及系统的制作方法
【专利摘要】本发明的实施例公开了一种数据保护方法、装置及系统,涉及数据保护领域,能够提高系统保护数据的可靠性。该方法具体包括:PCH集成南桥芯片接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息;PCH在接收到反馈信息后,向NVDIMM非易失性内存条发送ADR完成信息;其中,ADR完成消息用于指示NVDIMM进行备电切换和数据保护。本发明应用于NVDIMM的数据保护。
【专利说明】一种数据保护方法、装置及系统
【技术领域】
[0001]本发明涉及数据保护领域,尤其涉及一种数据保护方法、装置及系统。
【背景技术】
[0002]现今,为了保证存储系统中数据的可靠性,通常会在存储系统中增加备电单元,从而保证在电源异常和/或存储系统异常的情况下,使得内存数据不丢失,同时现今主流的备点单元是NVDIMM(Non-Volatile DIMM,非易失性内存条)。该NVDIMM在保护数据时通常是通过通用的DIMM(Dual Inline Memory Modules,双列直插式存储模块)接口与存储系统连接。因此,当存储系统电源发生异常时,CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)产生中断到PCH(Platform Controller Hub,集成南桥)芯片,在PCH中触发 ADR (Asynchronous Dram Refresh,异步内存刷新)流程,使得 CPU (Central ProcessingUnit,中央处理器)将cache缓存中的数据写入NVDIMM中的DRAM(Dynamic Random AccessMemory,动态随机存取存储器)然后再将NVDIMM置为self-refresh自刷新模式,从而使得NVDIMM完成备电切换,将DRAM数据拷贝到flash闪存中保存。
[0003]但是,发明人发现,在上述场景中,当CPU发生异常无法完成ADR流程时,PCH还是会在预定的时间到达后直接标识ADR完成,由于CPU并未成功存储数据,从而使得NVDIMM所保护的数据与CPU存储的数据不一致,无法达到数据保护的作用。

【发明内容】

[0004]本发明的实施例提供一种数据保护方法、装置及系统,能够提高系统保护数据的
可靠性。
[0005]为达到上述目的,本发明的实施例采用如下技术方案:
[0006]第一方面,提供一种数据保护方法,应用于数据保护系统,包括:
[0007]PCH集成南桥芯片接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息;
[0008]所述PCH在接收到所述反馈信息后,向NVDMM非易失性内存条发送ADR完成信息;其中,所述ADR完成消息用于指示所述NVDIMM进行备电切换和数据保护。
[0009]在第一种可能的实现方式中,根据第一方面,所述PCH接收CPU在完成ADR流程后发送的反馈信息之前,还包括:
[0010]当CPLD复杂可编程逻辑器件触发所述ADR流程后,所述PCH向所述CPU发送ADR启动信息,并启动所述PCH中的计时器;其中,所述ADR启动信息用于指示所述CPU启动所述ADR流程。
[0011 ] 在第二种可能的实现方式中,根据第一种可能的实现方式,所述方法还包括:
[0012]若所述PCH在预设时间内未接收到所述反馈信息,则所述PCH判断判定所述CPU异常,停止所述计时器的计时,并复位所述数据保护系统。
[0013]在第三种可能的实现方式中,根据第一种可能的实现方式,所述PCH在接收到所述反馈信息后,向NVDI丽非易失性内存条发送ADR完成信息包括:
[0014]所述PCH在所述预设时间内接收到所述反馈信息后,停止所述计时器的计时,并向所述NVDI丽发送ADR完成信息,以便所述NVDI丽根据所述ADR完成信息进行备电切换和数据保护。
[0015]第二方面,提供一种PCH南桥芯片,包括:
[0016]接收模块,用于接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈
信息;
[0017]发送模块,用于在所述接收模块接收到所述反馈信息后,向NVDIMM非易失性内存条发送ADR完成信息;其中,所述ADR完成消息用于指示所述NVDI丽进行备电切换和数据保护。
[0018]在第一种可能的实现方式,根据第二方面:
[0019]所述发送模块,还用于当CPLD复杂可编程逻辑器件触发所述ADR流程后,向所述CPU发送ADR启动信息,并启动计时器;其中,所述ADR启动信息用于指示所述CPU启动所述ADR流程。
[0020]在第二种可能的实现方式中,根据第一种可能的实现方式:
[0021]处理模块,用于若所述接收模块在预设时间内未接收到所述反馈信息,则判定所述CPU异常,停止所述计时器的计时,并复位数据保护系统。
[0022]在第三种可能的实现方式中,根据第一种可能的实现方式:
[0023]所述发送模块具体用于:当所述接收模块在所述预设时间内接收到所述反馈信息后,停止所述计时器的计时,并向所述NVDMM发送ADR完成信息,以便所述NVDMM根据所述ADR完成信息进行备电切换和数据保护。
[0024]第三方面,提供一种数据保护系统,所述数据保护系统包括:CPLD复杂可编程逻辑器件、PCH南桥芯片、CPU中央处理器及NVDIMM非易失性内存条,其中,所述PCH为上述的任一 PCH。
[0025]本发明的实施例提供的数据保护方法、装置及系统,通过在CPU与PCH之前建立互通过程,让该PCH获知CPU何时完成ADR异步内存刷新流程,从而在CPU完成ADR流程时,才向NVDI丽发送ADR完成消息,指示NVDI丽进行备电切换和数据保护,从而避免了在CPU没有完成ADR流程的情况下,仍然向NVDI丽发送ADR完成消息,使得该NVDI丽所保护的数据为不完整数据,进而提高了系统保护数据的可靠性。
【专利附图】

【附图说明】
[0026]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027]图1为本发明的实施例提供的一种数据保护方法的流程示意图;
[0028]图2为本发明的实施例提供的另一种数据保护方法的流程示意图;
[0029]图3为本发明的实施例提供的一种PCH的结构示意图;
[0030]图4为本发明的实施例提供的另一种PCH的结构示意图;[0031]图5为本发明的另一实施例提供的一种PCH的结构示意图;
[0032]图6为本发明的实施例提供的一种数据保护系统的结构示意图。
【具体实施方式】
[0033]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0034]现有技术中,ADR (Asynchronous Dram Refresh,异步内存刷新)流程的具体过程为:CPU (Central Processing Unit,处理器)将 cache 缓存中的数据写入 DRAM (DynamicRandom Access Memory,动态随机存取存储器)然后再将 NVDIMM (Non-Volatile DIMM,非易失性内存条)配置为self-refresh自刷新模式,从而使得NVDIMM完成备电切换,将DRAM数据拷贝到flash闪存中保存。在上述的ADR流程中,PCH(Platform Controller Hub,集成南桥)在ADR触发时会启动计时器,当到达预定时间时直接标识ADR流程完成,在此过程中,PCH并未查询CPU是否执行完毕ADR流程。若CPU出现异常,ADR流程有可能无法完成(如,cache数据未刷新,NVDIMM未进入自刷模式等),使得此时所保存的数据与CPU所存储的数据并不一致。并且由于NVDIMM是通过检测CKE时钟使能信号来决定是否进行数据保护的,因此,当NVDIMM检测到CKE信号由高变低时,会将DRAM数据复制到flash中。而由于DRAM中所存储的数据并不可靠,使得复制到flash中的数据并不能使用,从而并未达到保护数据的作用。因此,基于上述应用场景,本发明提供了一种新的数据保护方法,该方法应用于数据保护系统。
[0035]如图1所示,该数据保护方法具体包括如下步骤:
[0036]101、PCH接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息。
[0037]其中,上述的反馈信息用于指示PCH CPU以完成ADR流程。
[0038]102、PCH在接收到反馈信息后,向NVDIMM非易失性内存条发送ADR完成信息。
[0039]其中,上述的ADR完成消息用于指示NVDMM进行备电切换和数据保护。具体的,PCH在接收到反馈信息后,向NVDMM发送ADR完成信息,以指示CPU将缓存中的数据写入NVDIMM中的DRAM中,而当CPU将缓存中的数据全部写入后,完成ADR流程,然后配置NVDIMM进入自刷新模式,拉低CKE。
[0040]本发明的实施例提供的数据保护方法,通过在CPU与PCH之前建立互通过程,让该PCH获知CPU何时完成ADR异步内存刷新流程,从而在CPU完成ADR流程时,才向NVDI丽发送ADR完成消息,指示NVDMM进行备电切换和数据保护,从而避免了在CPU没有完成ADR流程的情况下,仍然向NVDI丽发送ADR完成消息,使得该NVDI丽所保护的数据为不完整数据,进而提高了系统保护数据的可靠性。
[0041]本发明的实施例提供一种数据保护方法,如图2所示,该数据保护方法具体包括如下步骤:
[0042]201、当CPLD复杂可编程逻辑器件触发该ADR流程后,PCH向CPU发送ADR启动信息,并启动PCH中的计时器。
[0043]其中,上述的ADR启动信息用于指示CPU启动该ADR流程。[0044]具体的,当CPLD检测到AC掉电后,CPLD中产生中断发送至PCH,从而使得PCH触发ADR流程,而PCH在触发了 PCH流程后,首先向CPU发送ADR启动消息,来告知CPUADR流程已启动,同时启动该PCH中的计时器开始计时。
[0045]202、PCH接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息。
[0046]其中,上述的反馈信息用于指示PCH CPU以完成ADR流程。
[0047]203、PCH在接收到反馈信息后,向NVDMM非易失性内存条发送ADR完成信息。
[0048]其中,上述的ADR完成消息用于指示NVDMM进行备电切换和数据保护。具体的,该ADR完成消息包含ADR Complete信号,该ADRComplete信号可以通过I (高电平),0 (低电平)来表示ADR流程是否完成,NVDIMM是通过判断该ADR Complete信号来决定是否进行数据保护的,这样只有在真正需要数据保护的场景下才会保存数据,确保数据的正确性,同时节省资源,延迟NVDIMM的生命周期。
[0049]可选的,步骤203具体包括:PCH在预设时间内接收到反馈信息后,停止计时器的计时,并向NVDI丽发送ADR完成信息,以便NVDI丽根据该ADR完成信息进行备电切换和数据保护。
[0050]具体的,上述的预设时间是系统提前预配置的,PCH在计时器的计时时间在预设时间内便接收到反馈信息后,便向NVDI丽发送ADR完成信息,以指示CPU将缓存中的数据写入NVDIMM中的DRAM中,而当CPU将缓存中的数据全部写入后,完成ADR流程,然后配置NVDI丽进入自刷新模式,拉低CKE,同时向PCH发送反馈信息来告知PCH已完成ADR流程,以便PCH在接收到该反馈信息后,向NVDI丽发送ADR完成信息,使得NVDI丽根据该ADR完成消息进行备电切换和数据保护。其中,当计时器的计时时间到达预设时间时
[0051]可选的,该数据保护方法还包括:
[0052]204、若PCH在预设时间内未接收到所述反馈信息,则PCH判定CPU异常,停止计时器的计时,并复位数据保护系统。
[0053]具体的,若PCH在计时器的计时时间到达预设时间时还未接收到CPU所反馈的反馈信息,则可以判定CPU发生异常,那么PCH就不会向NVDI丽发送ADR完成消息,此时PCH会停止计时器的计时,并复位整个数据保护系统。
[0054]需要说明的是,通过本发明的数据保护方法,在CPU发生异常从而无法完成ADR进程时,PCH不会发ADR完成信息,同时在NVDI丽中保存数据时,是通过DI丽接口的pinl37来触发保存流程的,这样在正常关机等场景就不会执行数据保存流程,确保了整个数据保护系统可以在需要保存数据的场景中保存数据,从而确保了数据的一致性,同时避免了NVDIMM不必要的应用开销(如,超级电容的充放电次数,nandflash的可擦写次数等),延长了 NVDIMM的使用寿命。
[0055]本发明的实施例提供的数据保护方法,通过在CPU与PCH之前建立互通过程,让该PCH获知CPU何时完成ADR异步内存刷新流程,从而在CPU完成ADR流程时,才向NVDI丽发送ADR完成消息,指示NVDMM进行备电切换和数据保护,从而避免了在CPU没有完成ADR流程的情况下,仍然向NVDI丽发送ADR完成消息,使得该NVDI丽所保护的数据为不完整数据,进而提高了系统保护数据的可靠性。
[0056]本发明的实施例提供了一种PCH集成南桥芯片,该PCH应用于上述的数据保护方法,如图3所示,该PCH3包括:接收模块31和发送模块32,其中:[0057]接收模块31,用于接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反
馈信息。
[0058]发送模块32,用于在接收模块31接收到反馈信息后,向NVDIMM非易失性内存条发送ADR完成信息。
[0059]其中,上述的ADR完成消息用于指示NVDI丽进行备电切换和数据保护。
[0060]可选的,发送模块32,还用于当CPLD复杂可编程逻辑器件触发ADR流程后,向CPU发送ADR启动信息,并启动计时器33。
[0061 ] 其中,上述ADR启动信息用于指示CPU启动ADR流程。
[0062]可选的,如图4所示,该PCH还包括:处理模块34,用于若接收模块31在预设时间内未接收到反馈信息,则判定CPU异常,停止计时器33的计时,并复位数据保护系统。
[0063]可选的,发送模块32具体用于:在接收模块31接收到反馈信息后,停止计时器33的计时,并向NVDI丽发送ADR完成信息,以便NVDI丽根据ADR完成信息进行备电切换和数据保护。
[0064]本发明的实施例提供的PCH,通过在CPU与PCH之前建立互通过程,让该PCH获知CPU何时完成ADR异步内存刷新流程,从而在CPU完成ADR流程时,才向NVDI丽发送ADR完成消息,指示NVDI丽进行备电切换和数据保护,从而避免了在CPU没有完成ADR流程的情况下,仍然向NVDIMM发送ADR完成消息,使得该NVDIMM所保护的数据为不完整数据,进而提高了系统保护数据的可靠性。
[0065]本发明的实施例提供了一种PCH集成南桥芯片,该PCH应用于上述的数据保护方法,如图5所示,该PCH4包括:接收机41、发射机42、计时器43和处理器44,其中:
[0066]接收机41,用于接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息。
[0067]发射机42,用于在接收机41接收到反馈信息后,向NVDMM非易失性内存条发送ADR完成信息。
[0068]其中,上述的ADR完成消息用于指示NVDI丽进行备电切换和数据保护。
[0069]可选的,发射机42,还用于当CPLD复杂可编程逻辑器件触发ADR流程后,向CPU发送ADR启动信息,并启动计时器33。
[0070]其中,上述ADR启动信息用于指示CPU启动ADR流程。
[0071]可选的,处理器44,用于若接收模块41在预设时间内未接收到反馈信息,则判定CPU异常,停止计时器43的计时,并复位数据保护系统。
[0072]可选的,发送模块42具体用于:在接收机41接收到反馈信息后,停止计时器43的计时,并向NVDMM发送ADR完成信息,以便NVDMM根据ADR完成信息进行备电切换和数据保护。
[0073]本发明的实施例提供的PCH,通过在CPU与PCH之前建立互通过程,让该PCH获知CPU何时完成ADR异步内存刷新流程,从而在CPU完成ADR流程时,才向NVDI丽发送ADR完成消息,指示NVDI丽进行备电切换和数据保护,从而避免了在CPU没有完成ADR流程的情况下,仍然向NVDMM发送ADR完成消息,使得该NVDMM所保护的数据为不完整数据,进而提高了系统保护数据的可靠性。
[0074]本发明的实施例提供了一种数据保护系统,该数据保护系统包括但不限于:X86(即基于intel处理器的系统)的存储系统、X86的服务器等。如图6所示,该数据保护系统5包括:CPLD复杂可编程逻辑器件51、PCH集成南桥芯片52、CPU中央处理器53及NVDIMM非易失性内存条54,其中,上述的PCH52为上述实施例中任一 PCH52。
[0075]具体的,该上述的数据保护系统保护NVDIMM中数据的具体过程如下:
[0076]首先,当CPLD检测到AC掉电后,CPLD会产生中断到PCH,使得PCH触发ADR流程。随后PCH会向CPU发送一个ADR启动信息,而CPU在接收到ADR启动信息中ADR比特位有效,从而触发ADR事件,同时PCH内部的计时器开始计时,然后CPU将数据写入DRAM中,完成后,配置NVDMM进入自刷新模式,拉低CKE,然后,向PCH发送一个ADR完成信息以指示NVDIMM根据ADR完成信息进行备电切换和数据保护。
[0077]本发明的实施例提供的数据保护系统,通过在CPU与PCH之前建立互通过程,让该PCH获知CPU何时完成ADR异步内存刷新流程,从而在CPU完成ADR流程时,才向NVDI丽发送ADR完成消息,指示NVDMM进行备电切换和数据保护,从而避免了在CPU没有完成ADR流程的情况下,仍然向NVDI丽发送ADR完成消息,使得该NVDI丽所保护的数据为不完整数据,进而提高了系统保护数据的可靠性。
[0078]本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0079]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本【技术领域】的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
【权利要求】
1.一种数据保护方法,应用于数据保护系统,其特征在于,包括: PCH集成南桥芯片接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息; 所述PCH在接收到所述反馈信息后,向NVDI丽非易失性内存条发送ADR完成信息;其中,所述ADR完成消息用于指示所述NVDIMM进行备电切换和数据保护。
2.根据权利要求1所述的方法,其特征在于,所述PCH接收CPU在完成ADR流程后发送的反馈信息之前,还包括: 当CPLD复杂可编程逻辑器件触发所述ADR流程后,所述PCH向所述CPU发送ADR启动信息,并启动所述PCH中的计时器;其中,所述ADR启动信息用于指示所述CPU启动所述ADR流程。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括: 若所述PCH在预设时间内未接收到所述反馈信息,则所述PCH判定所述CPU异常,停止所述计时器的计时,并复位所述数据保护系统。
4.根据权利要求2所述的方法,其特征在于,所述PCH在接收到所述反馈信息后,向NVDI丽非易失性内存条发送ADR完成信息包括: 所述PCH在所述预设时间内接收到所述反馈信息后,停止所述计时器的计时,并向所述NVDI丽发送ADR完成信息,以便所述NVDI丽根据所述ADR完成信息进行备电切换和数据保护。
5.—种PCH集成南桥芯片,其特征在于,包括: 接收模块,用于接收CPU中央处理器在完成ADR异步内存刷新流程后发送的反馈信息; 发送模块,用于在所述接收模块接收到所述反馈信息后,向NVDIMM非易失性内存条发送ADR完成信息;其中,所述ADR完成消息用于指示所述NVDI丽进行备电切换和数据保护。
6.根据权利要求5所述的PCH,其特征在于: 所述发送模块,还用于当CPLD复杂可编程逻辑器件触发所述ADR流程后,向所述CPU发送ADR启动信息,并启动计时器;其中,所述ADR启动信息用于指示所述CPU启动所述ADR流程。
7.根据权利要求6所述的PCH,其特征在于: 处理模块,用于若所述接收模块在预设时间内未接收到所述反馈信息,则判定所述CPU异常,停止所述计时器的计时,并复位所述数据保护系统。
8.根据权利要求6所述的PCH,其特征在于: 所述发送模块具体用于:当所述接收模块在所述预设时间内接收到所述反馈信息后,停止所述计时器的计时,并向所述NVDMM发送ADR完成信息,以便所述NVDMM根据所述ADR完成信息进行备电切换和数据保护。
9.一种数据保护系统,其特征在于,所述数据保护系统包括:CPLD复杂可编程逻辑器件、PCH集成南桥芯片、CPU中央处理器及NVDIMM非易失性内存条,其中,所述PCH为上述权利要求5至8所述的任一 PCH。
【文档编号】G06F13/10GK103544080SQ201310378563
【公开日】2014年1月29日 申请日期:2013年8月27日 优先权日:2013年8月27日
【发明者】胡爱玲, 杨景松 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1