存储模块及其操作方法_2

文档序号:9375406阅读:来源:国知局
释包括易失性存储器和非易失性存储器的存储模块(例如,NVDIMM)的操作的流程图。
[0026]参见图1,存储模块可以执行正常操作(S100)。S卩,存储模块可以应主机的请求执行读取操作和写入操作。
[0027]在存储模块正执行正常操作时感测到主机功率的故障(SlOl)的情况下,存储模块可以开始备份操作。主机功率的故障可以意味着从主机供应的功率不稳定到存储模块难以正常操作的程度。
[0028]在感测到主机功率的故障之后,存储模块可以从使用不稳定的主机功率转换成使用内置于存储模块中的应急功率源(S103)。
[0029]然后,储存在存储模块的易失性存储器(例如DRAM)中的数据可以备份至存储模块的非易失性存储器(例如NAND快闪存储器)中(S105和S107)。可以在易失性存储器中重复执行读取操作,并且可以读取数据,以及可以在非易失性存储器中重复执行编程操作,并且可以写入从易失性存储器读取的数据。在完成备份操作之后,存储模块可以被关断(S109)ο
[0030]在下文中,当主机功率恢复成正常状态(HOST POWER RECOVER,主机功率恢复)时,存储模块可以被重启(Slll)。在重启之后,可以确定在非易失性存储器中是否存在备份数据,即,是否有必要恢复易失性存储器(S113)。当不必要恢复易失性存储器时,存储模块可以根据来自主机的指令执行正常操作(S100)。
[0031]当有必要恢复易失性存储器时,可以使用在非易失性存储器中备份的数据来恢复易失性存储器的数据(S115和S117)。可以在非易失性存储器中重复地执行读取操作且可以读取数据,以及可以在易失性存储器中重复地执行写入操作,并且可以写入从非易失性存储器读取的数据。
[0032]在恢复完成之后,非易失性存储器可以被擦除(S119和S121)。在非易失性存储器中存在多个存储块。存储块可以被顺序地擦除。擦除非易失性存储器的原因可以是在另一个主机功率故障中使能备份操作。在非易失性存储器的擦除操作完成之后,存储模块可以根据来自主机的指令执行正常操作(SlOO)。
[0033]在图1的操作方案中,如果在执行正常操作时出现主机功率的故障,则执行备份操作(S105和S107)。当主机功率在此后返回至稳定状态时,执行恢复操作(S11US113、S115和S117)和擦除操作(S119和S121)。然而,如果即使在执行恢复操作时出现主机功率的故障的情况下,重复从图1中所示的步骤SlOl开始的一系列备份过程(S111、S113、S115和S117),则存储模块可能处于丢失全部数据的危险。S卩,由于易失性存储器的数据尚未被完全恢复,所以可能把易失性存储器的不完整的数据备份至非易失性存储器中,并且非易失性存储器的备份数据可能被损坏。类似地,即使在执行擦除操作(S119和S121)时出现主机功率的故障的情况下,非易失性存储器的擦除操作可能不稳定,并且数据可能被扰乱,或者备份操作可以变得不可能。
[0034]在下文中,针对即使当在执行恢复操作和擦除操作时出现主机功率的故障时,也不丢失数据的存储模块及其操作方法做出描述。
[0035]图2是根据本发明的一个实施例的存储模块200的配置图。
[0036]参见图2,即使在功率故障时,存储模块200也可以通过在主机的功率不稳定时将储存在易失性存储器(芯片)220_0至220_7中的数据备份至非易失性存储器(芯片)240中的操作来防止数据丢失。为了简单解释,在主机上与存储器控制器2 —起示出了存储模块200,存储器控制器2传送和接收数据DATA,并且提供用于控制存储模块200的命令CMD、地址ADD和时钟CLK。
[0037]参见图2,存储模块200可以包括存储控制块210、易失性存储器220_0至220_7、非易失性存储器控制器230、非易失性存储器240、应急功率供应块250和功率故障感测块260。易失性存储器220_0至220_7中的每个可以是DRAM,以及非易失性存储器240可以是快闪存储器。然而,易失性存储器220_0至220_7中的每个可以是除了 DRAM之外的不同种类的易失性存储器,以及非易失性存储器240可以是除了快闪存储器之外的不同种类的非易失性存储器。
[0038]当主机的功率H0ST_VDD和H0ST_VSS正常/稳定时,模块控制块210可以缓冲从存储器控制器2提供的命令CMD、地址ADD和时钟CLK,并且可以将它们提供至易失性存储器220_0至220_7。模块控制块210可以缓冲从存储器控制器2提供的数据DATA,并且将它提供至易失性存储器220_0至220_7,或者可以缓冲从易失性存储器220_0至220_7提供的数据DATA,并且将它传送至存储器控制器2。也就是说,当主机的功率H0ST_VDD和H0ST_VSS正常时,模块控制块210可以执行在易失性存储器220_0至220_7和存储器控制器2之间中继通信的功能。
[0039]如果由功率故障感测块260感测到主机功率H0ST_VDD和H0ST_VSS的故障,S卩,如果感测出从主机供应的功率供应电压H0ST_VDD和接地电压H0ST_VSS不稳定,则功率故障感测块260可以中断主机功率H0ST_VDD和H0ST_VSS至存储模块200的供应,并且可以控制存储模块200使用应急功率供应块250的功率进行操作。应急功率供应块250可以通过使用一个或更多个电容器(例如,具有大容量的超级电容器)来实现,并且可以在易失性存储器220_0至220_7的数据备份至非易失性存储器240中时供应应急功率。同时,如果感测出主机功率H0ST_VDD和H0ST_VSS的故障,则功率故障感测块260可以通知模块控制块210主机功率HOST_VDD和HOST_VSS的故障。
[0040]如果感测到主机功率H0ST_VDD和H0ST_VSS的故障,则模块控制块210可以控制储存在易失性存储器220_0至220_7中的数据备份至非易失性存储器240中。详细地,模块控制块210可以通过将在其自身内产生的命令CMD、地址ADD和时钟CLK施加至易失性存储器220_0至220_7来控制储存在易失性存储器220_0至220_7中的数据被读取。模块控制块210可以以从易失性存储器220_0至220_7读取的数据可以在非易失性存储器240中被编程(写入)的方式来控制非易失性存储器控制器230。非易失性存储器控制器230可以以从模块控制块210传输的数据DATA( S卩,从易失性存储器220_0至220_7读取的数据)可以在非易失性存储器240中被编程的方式来控制非易失性存储器240。
[0041 ] 易失性存储器220_0至220_7的数据(其在主机功率H0ST_VDD和H0ST_VSS出现故障时被备份至非易失性存储器240中)可以在主机功率H0ST_VDD和H0ST_VSS返回正常状态之后,响应于模块控制块210和非易失性存储器控制器230的控制而被传送至且恢复于易失性存储器220_0至220_7中。另外,在恢复完成之后,可以响应于模块控制块210和非易失性存储器控制器230的控制,擦除储存在非易失性存储器240中的备份数据。
[0042]虽然图2中示出了在存储
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1