待调度验证的非易失性写入缓冲器数据保留制造技术

技术编号:10328006 阅读:102 留言:0更新日期:2014-08-14 14:16
本申请公开了待调度验证的非易失性写入缓冲器数据保留。方法和装置用于在存储器中管理数据。根据一些实施例,非易失性(NV)缓冲器适于存储具有所选逻辑地址的输入写入数据。写入电路适于当在所述NV缓冲器中保留所述存储的输入写入数据时,向NV主存储器传输所述输入写入数据的副本。验证电路适于在预定逝去时间间隔结束时,执行验证操作以验证所述输入写入数据的副本成功传输到所述NV主存储器。所述输入写入数据保留在所述NV缓冲器中直到验证成功传输。

【技术实现步骤摘要】
待调度验证的非易失性写入缓冲器数据保留专利技术概述本专利技术的各个实施例一般涉及管理数据存储设备中的数据。根据一些实施例,非易失性(NV)缓冲器适于存储具有所选逻辑地址的输入写入数据。写入电路适于当在所述NV缓冲器中保留所述存储的输入写入数据时,向NV主存储器传输所述输入写入数据的副本。验证电路适于在预定逝去时间间隔结束时,执行验证操作以验证所述输入写入数据的副本成功传输到所述NV主存储器。鉴于下文的详细讨论和附图,可以理解表征本专利技术实施例的这些和其他特征以及方面。附图简述图1提供根据本专利技术的各种实施例的数据存储设备的功能框图表示。图2示出根据一些实施例的图1的设备的各方面。图3示出来自图2的闪速存储器的闪速存储器单元格。图4示意地表示了根据一些实施例的闪速存储器单元格的阵列的一部分。图5示出图2的闪速存储器阵列的擦除块。图6表示用于图2的非易失性(NV)写入缓冲器的自旋力矩转移随机存取存储器(STRAM)单元格。图7示出用于图2的非易失性(NV)写缓冲器的阻抗随机存取存储器(RRAM)单元格。图8示出用于图2的非易失性(NV)写入缓冲器的相变随机存取存储器(PCRAM)单元格。图9是根据一些实施例的NV缓冲器的可重写非易失性存储器单元格的布置的示意图。图10提供了使用图9所配置的可改写存储单元格的NV缓冲器的示例性格式。图11示出根据一些实施例由图2的设备执行的示例性验证操作。图12示出根据一些实施例由图2的设备执行的比较运算。图13示出了根据进一步实施例由设备产生哈希值。图14示出根据一些实施例由图3的电路产生的哈希值的使用。图15表示在根据一些实施例数据的不同写入模式的使用。图16是根据本公开的各种实施例一般性表示可以执行的步骤的DATAWRITE例程。专利技术详述本专利技术总体上涉及到在数据存储设备中管理数据。非易失性(NV)存储器倾向于以该方式存储数据:诸如从存储设备去除电源之后,所存储的数据保留在存储器中,而不需要刷新操作以保持数据状态。可以执行写入验证操作(有时被称为读/写验证操作或简单地验证操作)以确保在写操作期间数据已被成功地写入到非易失性存储器中。通常,验证操作可必需暂时在本地缓冲存储器中缓存数据,将数据写入到主存储器,以使数据从局部缓冲器复制到主存储器,从主存储器读取数据集,以及比较从主存储器读回的数据与在本地缓冲器中的原始数据集。如果两个数据集匹配,写入操作可以被验证为已取得成功,以及本地缓冲器中的原始数据集可以被抛弃或以其他方式丢弃,以为其他数据腾出空间。如果在完成验证操作之前发生停电或其他干扰事件,或者如果在验证操作之前数据损坏或从本地缓存抛弃,如果写操作是不成功的,数据可能会丢失。由于这些风险,通常在将数据传输到NV主存储器之前,使用非易失性(NV)本地缓冲器以临时存储高优先级的写入数据。在NV缓冲器中缓冲输入数据实质上可以确保数据总是存储在NV存储器中,这往往会降低数据丢失的风险。此外,在NV缓冲器中缓冲输入数据允许一旦主机接收数据则命令完成状态安全地发往主机设备,允许随后的写入操作将数据移动到NV主存储器以便在更适当的时间执行,而不需要写入操作立刻给予响应。虽然可操作,仍然存在持续的需要用于改进将写入数据传输到NV主存储器的方式。因此,本专利技术的各种实施例一般针对在数据存储系统中提高数据完整性和系统可靠性。如下面所解释的,各个实施例中通常采用NV主存储器(诸如闪速存储器),所述NV主存储器存储来自主机设备的用户数据。NV写入缓冲器用于临时缓冲待传输到主存储器的写入数据。NV写入缓冲器可采取非闪速NV结构,诸如磁性随机存取存储器(MRAM),自旋力矩转移随机存取存储器(STRAM),阻抗随机存取存储器(RRAM),相变随机存取存储器(PCRAM),等等。输入的写入数据被存储在NV写入缓冲器中,以及写入操作被调度并执行以从NV缓冲器向NV主存储器复制写入数据。一旦数据已被传输到NV主存储器,启动预定的逝去时间间隔。在一种方法中,可以通过使用定时器电路规定预定的逝去时间间隔,所述计时器电路启动时间间隔并一旦在所选时间量(例如,30秒,等等)过去时发送信号表示其完成。在另一种方法中,根据随后访问命令(例如,读取和/或写入命令)计数,测量预定逝去时间间隔,以便接收X条访问命令(例如,10条命令等)以表示时间间隔。在后一种情况下,所测量的时间,该间隔期间经过的测量时间相对于设备工作负载发生变化。在逝去时间间隔结束时,如果没有接收中间更新写入请求用于相关数据,执行验证操作以验证数据已成功写入到NV主存储器。如果写入操作是成功的,NV缓缓冲器中的数据可以被抛弃,以为其它数据腾出空间。如果验证操作是不成功的,可以执行另一次写入操作或可以采取其他纠正措施。如果在逝去时间间隔期间接收到中间写入请求,系统可以检查:新的写入请求是否提供更新的写入数据集。如果是这样,则可以取消先前接收到数据集的调度验证操作,以及可以为新的写入数据重新启动上述过程。如果时间间隔期间对于待决写入数据接收到中间读取请求,读取请求可以迅速地从NV缓冲器提供服务作为缓存命中。中间读取和/或写入请求的发生可引发一系列后处理活动,诸如改变缓存策略,写入扩增缓解,使用快速(“松散”)写入,等等。开始浏览图1,可以理解各种实施例的这些和其他特征以及优点,图1提供根据各种实施例构建和操作的数据存储设备。数据存储设备100通常包括控制器102和存储器模块104。该控制器102提供设备100的顶级控制。存储器模块104从/向请求者实体存储和检索用户数据,诸如外部主机设备(未单独列出)。在一些实施例中,控制器功能可以合并到存储器模块104中,使得单独的控制器是不必要的。为了提供具体示例,系统100被设想为基于闪速存储器的存储设备,诸如固态驱动器(SSD),便携式拇指驱动器,记忆棒,存储卡等。将理解的这仅仅是说明性的而非限制性的,因为存储器模块104可以可替换地并入任何数量的不同类型的非易失性存储器。图2示出根据一些实施例的图1的设备100。控制器102被描绘为具有合适编程的可编程处理器,所述合适编程存储在本地存储器中以指引俄主机设备的数据传输操作。存储器模块104包括接口(I/F)电路106,读/写/擦除(R/W/E)信道108,闪速存储器阵列110,本地易失性缓冲器112和非易失性(NV)缓冲器114。I/F电路106提供和主机的主接口通信,以接收和发送命令、状态控制信息和数据。R/W/E信道108包括适当的行和列驱动器以及其它解码电路用于从闪速存储器阵列110编码、写入和读回数据。信道108也在控制器102的指引下执行其他操作(诸如碎片收集,缓存管理和验证操作)。本地缓冲器112可以采用动态随机存取存储器(DRAM)或类似结构,并存储与该闪速存储器110相关联的用户数据和元数据。元数据可被存储在闪速存储器阵列110中,并当必要时传输到本地缓冲器112以支持各种访问(读取和写入)操作。如下所述,一旦数据被复制到闪速存储器110,NV缓冲器临时存储写入数据候验证操作。可以设想:NV缓冲器112是可重写的,从而数据可以被写入到缓冲器中并然后根据需要改写。图3示出来自闪速存储器阵列110的闪速存储单元120。半导体基板124中的掺杂区122形本文档来自技高网...
待调度验证的非易失性写入缓冲器数据保留

【技术保护点】
一种方法,包括:在非易失性(NV)缓冲器中存储输入写数据,所述输入写数据具有相关联的逻辑地址;当在所述NV缓冲器中保留所述存储的输入写入数据时,向NV主存储器传输所述输入写入数据的副本;以及在预定逝去时间间隔结束时,执行验证操作以验证所述输入写入数据的副本成功传输到所述NV主存储器。

【技术特征摘要】
2013.02.07 US 13/762,0331.一种数据存储设备中管理数据的方法,包括:在非易失性缓冲器中存储输入写数据,所述输入写数据具有相关联的逻辑地址;当在所述非易失性缓冲器中保留所述存储的输入写入数据时,向非易失性主存储器传输所述输入写入数据的副本;以及在预定逝去时间间隔结束时,执行验证操作以验证所述输入写入数据的副本成功传输到所述非易失性主存储器,响应于在非易失性缓冲器中不存在与所述输入写入数据相关联的中间写入请求,执行写入操作,并且其中响应于在非易失性缓冲器中存在与所述输入写入数据相关联的中间写入请求,不执行所述验证操作。2.如权利要求1所述的方法,其中所述非易失性缓冲器是可重写固态存储器,以及非易失性主存储器是可擦除固态存储器。3.如权利要求2所述的方法,其中,所述可重写固态存储器是自旋扭矩随机存取存储器(STRAM)、阻抗随机存取存储器(RRAM)或相变随机存取存储器(PCRAM)中选定的一个,以及所述可擦除固态存储器是闪速存储器。4.如权利要求1所述的方法,进一步包括:响应于在逝去时间间隔期间并在所述验证操作之前接收的读取请求,从所述非易失性缓冲器向主机传输所述输入写入数据的副本,并在所述验证操作成功结束之后,实施缓存保留策略的变化以在所述非易失性缓存器中保留所述输入写入数据。5.如权利要求4所述的方法,进一步包括:响应于所述读取请求,向非易失性缓冲器传输空间上和/或时间上与所述输入写入数据相关的第二数据集,作为推测性数据出栈。6.如权利要求1所述的方法,其中所述方法进一步包括:在预定逝去时间间隔结束之前,接收和在所述非易失性缓冲器中所述输入写入数据具有关联的逻辑地址且不同的第二输入写入数据集,并且对于所述第二输入写入数据集重复所述存储、传输、发起预定逝去时间间隔的计时和执行验证的步骤,以及其中对于所述非易失性缓冲器中的所述输入写入数据不执行验证操作。7.如权利要求1所述的方法,进一步包括:响应于所述输入写入数据时使用选定的哈希函数产生哈希值,在非易失性主存储器中存储所述哈希值,并在随后写入拒绝处理中使用所存储的哈希值,所述写入拒绝处理涉及接收共享着相关逻辑地址的第二输入写入数据集。8.如权利要求1所述的方法,进一步包括:响应于共享相关逻辑地址的输入写入数据集合的接收频率,使用松散写入处理写入所述输入写入数据。9.如权利要求1所述的方法,进一步包括:发起计时器以根据逝去时间的预选量表示预定逝去时间间隔。10.如权利要求9所述的方法,其中,所述逝去时间的预选量经选择以超过和所述非易失性主存储器相关联的松散时间间隔。11.如权利要求9所述的方法,其中,响应于从主机设备收到第X访问命令,所述计时器结束预定时间间隔,其中,X是复数整数。12.一种数据存储装置,包括:非易失性的缓冲器,适于存储具有所选逻辑地址的输入写入数据;写入电路,适于当在所述非易失性缓冲器中保留所述存储的输入写入数据时,向非易失性主存储器传输所述输入写入数据的副本;以及验证电路,适于在预定逝去时间间隔结束时,执行验证操作以验证所述输入写入数据的副本成功传输到所述非易失性主存储器,响应于在所述非易失性缓冲器中不存在与所述输入写入数据相关联的中间写入请求,执行写入操作,并且其中响应于在所述非易失性缓冲器中存在与所述输入写入数据相关...

【专利技术属性】
技术研发人员:K·A·考密茨R·J·高斯A·克利亚D·S·艾布森J·D·珊萨姆
申请(专利权)人:希捷科技有限公司
类型:发明
国别省市:美国;US

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

1