一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于阈值电压漂移的温度相关斜率管理阈值电压漂移的制作方法

2021-03-05 10:20:00 来源:中国专利 TAG:阈值 子系统 存储器 漂移 电压


[0001]
本公开的实施例大体上涉及存储器子系统,并且更具体来说,涉及基于存储器子系统的阈值电压漂移的温度相关斜率而管理阈值电压漂移。


背景技术:

[0002]
存储器子系统可包含存储数据的一或多个存储器组件。存储器组件可以是例如非易失性存储器组件和易失性存储器组件。一般来说,主机系统可利用存储器子系统以在存储器组件处存储数据且从存储器组件检索数据。


技术实现要素:

[0003]
根据本申请的一方面,提供一种方法。所述方法包括:存储包括对应于一组裸片温度中的每一裸片温度的斜率值的数据结构,其中所述斜率值表示读取电压电平随存储器子系统的写到读延迟时间的改变;响应于读取命令,确定当前写到读延迟时间和当前裸片温度;使用所述数据结构来识别对应于所述当前裸片温度的所存储斜率值;基于所述所存储斜率值和所述当前写到读延迟时间而确定经调整读取电压电平;以及由处理装置使用所述经调整读取电压电平来执行所述读取命令。
[0004]
根据本申请的另一方面,提供一种非暂时性计算机可读媒体,其包括指令,所述指令在由处理装置执行时使所述处理装置执行操作。所述操作包括:响应于与存储器子系统的存储器裸片相关联的读取命令,确定所述存储器裸片的当前温度;接收对应于所述当前温度的值,其中斜率值表示一组读取电压电平随所述存储器子系统的一组写到读延迟时间的改变;基于所述值而确定经调整读取电压电平;以及使用所述经调整读取电压电平来执行所述读取命令。
[0005]
根据本申请的又一方面,提供一种系统。所述系统包括:存储器组件;以及处理装置,其以操作方式与所述存储器组件耦合以进行以下操作:存储包括对应于一组裸片温度中的每一裸片温度的斜率值的数据结构,其中所述斜率值表示读取电压电平随存储器子系统的写到读延迟时间的改变;响应于读取命令,确定当前写到读延迟时间和当前裸片温度;使用所述数据结构来识别对应于所述当前裸片温度的所存储斜率值;至少部分地基于所述所存储斜率值和所述当前写到读延迟时间而确定经调整读取电压电平;以及使用所述经调整读取电压电平来执行所述读取命令。
附图说明
[0006]
根据下文给出的详细描述和本公开的各种实施方案的附图,将更充分地理解本公开。
[0007]
图1说明根据本公开的一些实施例的包含存储器子系统的实例计算环境。
[0008]
图2是根据一些实施例的使用经调整读取电压电平来执行读取命令的实例方法的流程图,所述经调整读取电压电平对应于表示读取电压电平随着写到读延迟时间的改变的
温度相关斜率值。
[0009]
图3a和3b说明根据一些实施例的包含对应于最低误码率的读取电压电平的实例确定的曲线图。
[0010]
图4说明根据一些实施例的包含读取电压电平的增量和写到读延迟时间的实例标绘图以确定对应于多个不同裸片温度的斜率值的曲线图。
[0011]
图5说明根据一些实施例的包含多个不同裸片温度与对应斜率值之间的所存储关联的实例数据结构。
[0012]
图6是根据一些实施例的使用经调整读取电压电平来执行读取命令的实例方法的流程图。
[0013]
图7是本公开的实施方案可在其中操作的实例计算机系统的框图。
具体实施方式
[0014]
本公开的方面涉及基于存储器子系统的阈值电压漂移的温度相关斜率而管理阈值电压漂移。存储器子系统可以是存储装置、存储器模块,或存储装置和存储器模块的混合。下文结合图1描述存储装置和存储器模块的实例。一般来说,主机系统可以利用存储器子系统,所述存储器子系统包含一或多个存储器组件,例如,存储数据的存储器装置。主机系统可提供数据以存储在存储器子系统处并且可请求从存储器子系统检索数据。
[0015]
存储器装置可以是非易失性存储器装置,例如作为非易失性存储器的交叉点阵列的三维交叉点(“3d交叉点”)存储器装置,其可结合可堆叠交叉网格化数据存取阵列基于体电阻的改变而执行位存储。非易失性存储器装置的另一实例为与非(nand)存储器装置。下文结合图1描述非易失性存储器装置的其它实例。
[0016]
存储器装置中的每一个可包含一或多个存储器单元阵列。存储器单元(“单元”)为存储信息的电子电路。取决于单元类型,单元可存储一或多个二进制信息位,且具有与所存储的位数相关的各种逻辑状态。逻辑状态可由二进制值(例如“0”和“1”)或这些值的组合表示。举例来说,单电平单元(slc)可存储一个信息位且具有两个逻辑状态。各种逻辑状态具有对应的阈值电压电平。阈值电压(vt)是施加到单元电路系统(例如,晶体管变为导通的控制栅极)以设置单元状态的电压。基于施加到单元的vt将所述单元设置成其逻辑状态中的一个。举例来说,如果将高vt施加到slc,那么单元中将存在电荷,将slc设置为存储逻辑0。如果将低vt施加到slc,那么单元中将不存在电荷,将slc设置为存储逻辑1。
[0017]
对于某些存储器类型(即,对于采用某些类型的存储媒体的存储器子系统),错误率可以随时间变化。确切地说,一些非易失性存储器具有随时间推移而移动或“漂移”得更高的阈值电压编程分布。在给定读取电压电平(即,作为读取操作的部分施加到存储器单元的电压的值)下,如果阈值电压编程分布移动,那么某些可靠性统计数据也可能受到影响。可靠性统计数据的一个实例是误码率(ber)。ber可被定义为错误位的数目与存储在存储器子系统单元中的所有数据位的数目的比率,其中单元可以是整个存储器子系统、存储器装置的裸片、码字的集合,或存储器子系统的任何其它有意义的部分。
[0018]
可以在读取电压电平下执行读取操作。读取阈值电压电平或值(在本文中为“读取电压电平”)可以是施加到存储器装置的存储器单元以读取存储在存储器单元处的数据的特定电压。举例来说,如果特定存储器单元的阈值电压被识别为低于施加到特定存储器单
元的读取电压电平,那么存储在特定存储器单元处的数据可以是特定值(例如,
‘1’
),并且如果特定存储器单元的阈值电压被识别为高于读取电压电平,那么存储在特定存储器单元处的数据可以是另一个值(例如,
‘0’
)。因此,可以将读取电压电平施加到存储器单元以确定存储在存储器单元处的值。
[0019]
在常规存储器子系统中,当存储器单元的阈值电压编程分布漂移(也被称作“阈值电压漂移”)时,读取电压电平的施加相对于改变后的阈值电压可能不准确。举例来说,存储器单元可以被编程为具有低于读取电压电平的阈值电压。编程的阈值电压会随时间推移而改变,并且可以转变为高于读取电压电平。举例来说,存储器单元的阈值电压可以从最初低于读取电压电平转变为高于读取电压电平。因此,当将读取电压电平施加到存储器单元时,与阈值电压尚未转变时最初存储的值相比,存储在存储器单元处的数据可能被误读或误解为不正确的值。
[0020]
常规存储器子系统的阈值电压编程分布的漂移速度或速率和对应ber可能受存储器子系统的一或多个操作特性影响,所述操作特性例如裸片温度和写到读(w2r)延迟时间。w2r延迟时间可指代在数据写入到存储器装置单元与从存储器装置单元读取数据之间经过的时间段。
[0021]
举例来说,当经历相同的w2r延迟时间时,较高裸片温度下的漂移速度比较低温度下的漂移速度更快。此外,电压漂移引起读取重试触发率(例如,触发错误校正处理的错误率(位/时间))增大。在另一实例中,与较短的w2r延迟时间相比,较长的w2r延迟时间产生较大的阈值电压漂移。在此实例中,较长w2r延迟时间的读取重试触发率高于较短w2r延迟时间的读取重试触发率。因此,如果在长w2r延迟时间内施加默认或静态读取电压电平,那么读取重试触发率较高,这使存储器子系统性能显著降级。
[0022]
常规存储器子系统采用读取清理操作(例如,三小时的读取清理,其中每三小时读取一次整个存储器子系统)和写入清理操作(即,强制定期(例如每十二小时一次)在
‘0’
值与
‘1’
值之间进行切换且反之亦然的写入操作),以刷新或降低阈值电压编程分布以抵抗漂移。然而,读取和写入清理操作由于读取操作的频繁执行而使存储器子系统的服务质量降级且导致不必要的读取干扰,这降低了可靠性。
[0023]
本公开的各方面通过具有存储器子系统来解决以上和其它缺陷,所述存储器子系统基于对应于裸片温度的斜率值及w2r延迟时间来确定经调整读取电压电平,以最小化对应于经历漂移的阈值电压编程分布的误码率。确切地说,可依据w2r延迟时间和多个不同裸片温度的斜率值来确定经调整读取电压电平,其中每一斜率值表示经优化读取电压值在每一特定裸片温度下的改变。可通过在多个不同w2r延迟时间识别对应于减小的误码率的读取电压电平来确定每一裸片温度的经优化读取电压值。
[0024]
本公开的优点包含但不限于减小存储器子系统的错误率。此外,可结合读取操作来确定和施加经调整读取电压电平,以抵消由裸片温度和w2r延迟时间引起的阈值电压漂移。另外,使用对应于表示经优化读取电压电平(例如,优化到减小的相对误码率)的改变的温度相依斜率和当前w2r延迟时间的经调整读取电压电平来执行读取命令抵消了由裸片温度和w2r延迟时间引起的阈值电压漂移。依据温度相关斜率和w2r延迟时间调整读取阈值电压降低了读取重试触发率且由于改进的数据完整性而改进了存储器子系统的性能。有利地,本公开降低或消除了读取清理频率并且避免了不必要的读取干扰错误。
[0025]
图1说明根据本公开的一些实施例的包含存储器子系统110的实例计算环境100。存储器子系统110可以包含媒体,例如一或多个易失性存储器装置(例如,存储器装置140)、一或多个非易失性存储器装置(例如,存储器装置130),或这些的组合。
[0026]
存储器子系统110可以是存储装置、存储器模块,或存储装置和存储器模块的混合。存储装置的实例包含固态驱动器(ssd)、闪存驱动器、通用串行总线(usb)闪存驱动器、嵌入式多媒体控制器(emmc)驱动器、通用闪存存储(ufs)驱动器以及硬盘驱动器(hdd)。存储器模块的实例包含双列直插式存储器模块(dimm)、小外形dimm(so-dimm)和非易失性双列直插式存储器模块(nvdimm)。
[0027]
计算环境100可包含耦合到一或多个存储器子系统110的主机系统120。在一些实施例中,主机系统120耦合到不同类型的存储器子系统110。图1说明耦合到一个存储器子系统110的主机系统120的一个实例。主机系统120使用存储器子系统110例如将数据写入到存储器子系统110以及从存储器子系统110读取数据。如本文中所使用,“耦合到”通常指代组件之间的连接,其可以是间接通信连接或直接通信连接(例如不具有介入组件),无论有线或无线,包含例如电连接、光学连接、磁性连接等连接。
[0028]
主机系统120可以是计算装置,例如台式计算机、笔记本计算机、网络服务器、移动装置、车辆(例如,飞机、无人机、火车、汽车或其它运输工具)、物联网(iot)装置、嵌入式计算机(例如,包含在车辆、工业设备或联网商用装置中的嵌入式计算机),或包含存储器和处理装置的此类计算装置。主机系统120可经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含但不限于串行高级技术附件(sata)接口、外围组件互连高速(pcie)接口、通用串行总线(usb)接口、光纤通道、串行连接scsi(sas)等。物理主机接口可用于在主机系统120与存储器子系统110之间传输数据。当存储器子系统110通过pcie接口与主机系统120耦合时,主机系统120可进一步利用nvm高速(nvme)接口来存取存储器组件,例如存储器装置130。物理主机接口可提供接口以用于在存储器子系统110与主机系统120之间传递控制、地址、数据和其它信号。
[0029]
存储器装置可以包含不同类型的非易失性存储器装置和/或易失性存储器装置的任何组合。易失性存储器装置(例如,存储器装置140)可以是但不限于随机存取存储器(ram),例如动态随机存取存储器(dram)和同步动态随机存取存储器(sdram)。
[0030]
非易失性存储器装置(例如,存储器装置130)的一些实例包含与非(nand)型闪存器和就地写入(write-in-place)存储器,例如三维交叉点(“3d交叉点”)存储器。非易失性存储器的交叉点阵列可结合可堆叠交叉网格化数据存取阵列基于体电阻的改变而执行位存储。另外,与许多基于闪存的存储器对比,交叉点非易失性存储器可执行就地写入操作,其中可在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。
[0031]
虽然描述了例如3d交叉点型和nand型存储器等非易失性存储器装置,但存储器装置130可以基于任何其它类型的非易失性存储器,例如只读存储器(rom)、相变存储器(pcm)、自选存储器、其它基于硫族化物的存储器、铁电随机存取存储器(feram)、磁性随机存取存储器(mram)、或非(nor)闪存器,和电可擦除可编程只读存储器(eeprom)。
[0032]
一种类型的存储器单元,例如单电平单元(slc)可每单元存储一个位。其它类型的存储器单元,例如多电平单元(mlc)、三电平单元(tlc)和四电平单元(qlc)可每单元存储多个位。在一些实施例中,存储器装置130中的每一个可包含一或多个存储器单元阵列,例如
slc、mlc、tlc、qlc或这些的任何组合。在一些实施例中,特定存储器装置可包含存储器单元的slc部分,以及mlc部分、tlc部分或qlc部分。存储器装置130的存储器单元可分组为可指代用于存储数据的存储器装置的逻辑单元的页或码字。对于一些类型的存储器(例如,nand),页可分组以形成块。一些类型的存储器(例如3d交叉点)可对跨裸片和通道的页分组以形成管理单元(mu)。
[0033]
存储器子系统控制器115可与存储器装置130通信以执行操作,例如在存储器装置130处读取数据、写入数据或擦除数据和其它此类操作。存储器子系统控制器115可以包含硬件,例如一或多个集成电路和/或离散组件、缓冲存储器或其组合。硬件可包含具有执行本文中所描述的操作的专用(即,硬译码)逻辑的数字电路系统。存储器子系统控制器115可以是微控制器、专用逻辑电路系统(例如,现场可编程门阵列(fpga)、专用集成电路(asic)等),或其它合适的处理器。
[0034]
存储器子系统控制器115可包含经配置以执行存储在本地存储器119中的指令的处理器(处理装置)117。在所说明的实例中,存储器子系统控制器115的本地存储器119包含经配置以存储指令的嵌入式存储器,所述指令用于执行控制存储器子系统110的操作(包含处理存储器子系统110与主机系统120之间的通信)的各种过程、操作、逻辑流和例程。
[0035]
在一些实施例中,本地存储器119可包含存储存储器指针、所提取数据等的存储器寄存器。本地存储器119还可包含用于存储微码的只读存储器(rom)。虽然图1中的实例存储器子系统110已说明为包含存储器子系统控制器115,但在本公开的另一实施例中,存储器子系统110可不包含存储器子系统控制器115,且可改为依靠外部控制(例如,由外部主机或由与存储器子系统分离的处理器或控制器提供)。
[0036]
通常,存储器子系统控制器115可从主机系统120接收命令或操作,且可将所述命令或操作转换成指令或适当命令以实现对存储器装置130的所需存取。存储器子系统控制器115可负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测和错误校正码(ecc)操作、加密操作、高速缓存操作,以及与存储器装置130相关联的逻辑地址(例如,逻辑块地址、名字空间)与物理地址(例如,物理mu地址、物理块地址)之间的地址转译。存储器子系统控制器115可进一步包含主机接口电路系统以经由物理主机接口与主机系统120通信。主机接口电路系统可以将从主机系统接收到的命令转换成存取存储器装置130的命令指令,以及将与存储器装置130相关联的响应转换成主机系统120的信息。
[0037]
存储器子系统110还可以包含未说明的额外电路系统或组件。在一些实施例中,存储器子系统110可以包含高速缓存或缓冲器(例如,dram)和地址电路系统(例如,行解码器和列解码器),所述地址电路系统可从存储器子系统控制器115接收地址且对地址进行解码以存取存储器装置130。
[0038]
在一些实施例中,存储器装置130包含本地媒体控制器135,其结合存储器子系统控制器115操作以对存储器装置130的一或多个存储器单元执行操作。外部控制器(例如,存储器子系统控制器115)可在外部管理存储器装置130(例如,对存储器装置130执行媒体管理操作)。在一些实施例中,存储器装置130是受管理存储器装置,其为与本地控制器(例如,本地控制器135)组合以在同一存储器装置封装内进行媒体管理的原始存储器装置。受管理存储器装置的实例是受管理nand(mnand)装置。
[0039]
存储器子系统110包含读取电压调整组件113,其可用以确定对应于温度相关斜率
的经调整读取阈值且在执行与存储在存储器子系统110处的数据相关的读取操作时应用经调整读取阈值,所述温度相关斜率表示读取电压电平(例如,经优化以减小或降低位错误率的读取电压电平)和写到读延迟时间的改变。在一些实施例中,用于确定斜率值的读取电压电平与减小的位错误率相关联,且被称作“经优化读取电压电平”。在一些实施例中,控制器115包含读取电压调整组件113的至少一部分。举例来说,控制器115可包含处理器117(处理装置),其经配置以执行存储在本地存储器119中的指令以用于执行本文中所描述的操作。在一些实施例中,读取电压调整组件113是主机系统120、应用程序或操作系统的部分。在相同或替代实施例中,读取电压调整组件113的部分是主机系统120的部分,而读取电压调整组件113的其它部分在控制器115处执行。
[0040]
读取电压调整组件113可用于存储数据结构(例如表),所述数据结构包含表示经优化读取电压电平随存储器子系统110的w2r延迟时间的改变或增量的温度相关斜率值。在实施例中,读取电压调整组件113识别默认读取电压电平(例如,在预定w2r延迟时间(例如,低延迟时间,例如25μs)执行探测且将其存储在与存储器子系统110(例如,fuserom存储器)相关联的存储器中。读取电压调整组件113进一步确定与一组裸片温度(例如,0摄氏度(℃)、25℃、50℃和85℃)中的每一裸片温度相关联的一组经优化读取电压电平,其中在对应w2r延迟时间(例如,25微秒(μs)、1毫秒(ms)、1秒(s)、1分钟(min)、1小时(hr)和10hr的w2r延迟时间)确定一组经优化读取电压电平中的每一经优化读取电压电平。针对每一裸片温度使用一组经优化读取电压电平来确定表示经优化读取电压电平的改变或增量的斜率(即,温度相关斜率)值。在实施例中,依据w2r延迟时间确定斜率值。在实施例中,针对每组裸片温度计算斜率值并将其存储在数据结构(例如,查找表)中。
[0041]
在存储器子系统的操作期间,读取电压调整组件113确定当前裸片温度且使用数据结构来识别与当前裸片温度相关联的斜率值。鉴于读取命令,确定当前w2r延迟时间。读取电压调整组件113接着基于默认读取电压电平、所识别的斜率值(其是基于当前裸片温度)和当前w2r延迟时间而确定经调整读取电压电平。为了抵消由于温度和w2r延迟时间改变而引起的阈值电压漂移,读取电压调整组件113使用经调整读取电压电平来执行读取命令。下文描述关于读取电压调整组件113的操作的其它细节。
[0042]
图2是根据一些实施例的使用经调整读取电压电平来执行读取命令的实例方法200的过程流程图。方法200可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,方法200由图1的读取电压调整组件113执行。虽然以特定顺序或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,所说明实施例应仅作为实例理解,且所说明过程可以不同次序执行,且一些过程可并行地执行。另外,在各种实施例中可省去一或多个过程。因此,在每一实施例中并非需要全部过程。其它过程流也是可能的。
[0043]
如图2中所展示,在操作210处,处理逻辑存储包含对应于一组裸片温度中的每一裸片温度的斜率值的数据结构,其中斜率值表示读取电压电平随存储器子系统的写到读延迟时间的改变。在实施例中,数据结构(例如,表)存储在以操作方式耦合到图1的读取电压调整组件113的数据存储区(例如,存储器子系统的熔丝rom)中。在实施例中,数据结构识别斜率值,所述斜率值表示读取电压电平(例如,已“经优化”以与减小的误码率对应的读取电
压电平)针对每一不同温度的改变,并且因此是温度相关斜率值。
[0044]
在实施例中,对于一组裸片温度中的每一裸片温度,处理逻辑确定表示读取电压电平随写到读延迟时间的改变的斜率值。在实施例中,一组裸片温度可包含在低裸片温度和高裸片温度范围内的任何数目个不同裸片温度。举例来说,一组裸片温度可包含0℃、25℃、50℃和85℃的温度。应注意,可选择任何合适的温度来确定对应的温度相关斜率值。在实施例中,可根据以下表达式来确定斜率值:
[0045]
斜率=增量(读取电压电平)/对数(w2r延迟时间),
[0046]
其中增量(读取电压电平)表示在给定温度下对应于不同w2r延迟时间的一组经优化读取电压电平的增量或改变(例如,针对每一温度确定随不同w2r延迟时间改变的一组多个不同经优化读取电压电平)。不同w2r延迟时间的实例可包含25μs、1ms、1s、1min、1hr和10hr。可在每一温度电平下针对不同延迟时间中的每一个确定经优化读取电压电平。下文结合图3a、3b和4的曲线图描述用于确定一组经优化读取电压电平和对应于经优化读取电压电平针对各种温度的改变的斜率值的实例方法。
[0047]
图3a说明展示与存储器子系统相关联的编程分布320的阈值电压的曲线图310,所述编程分布针对给定裸片温度和给定w2r延迟时间具有对应错误计数。如图3a中所展示,针对给定w2r延迟时间测量各种读取电压电平(例如,读取电压电平w、读取电压电平x、读取电压电平y和读取电压电平z)。在实施例中,所测量的一组不同读取电压电平可包含基线读取电压电平(例如,图3a中的读取电压电平y)和相对于基线值加上或减去50到200mv的一系列其它值。
[0048]
图3b说明对应于读取电压电平的误码率的曲线图。如图3b中所展示,对应于所测量读取电压电平(例如,读取电压电平w、读取电压电平x、读取电压电平y和读取电压电平z)的位错误值的标绘图可用于识别具有减小的误码率(例如,最低相对误码率)的读取电压电平。在图3b中所展示的实例中,读取电压电平y具有所测量位错误率中的最低相对误码率,且被识别为对应于所选裸片温度和w2r延迟时间的经优化读取电压电平。在实施例中,在一组w2r延迟时间中的每一w2r延迟时间针对一组裸片温度中的每一裸片温度识别读取电压电平(例如,对应于减小的误码率的经优化读取电压电平)。
[0049]
图4说明展示读取电压电平针对一组不同温度随w2r延迟时间的改变或增量的曲线图。如图4中所展示,对照w2r延迟时间(例如,w2r延迟时间1到w2r延迟时间6)的对数函数(对数),针对不同裸片温度(例如,温度1到温度4)中的每一个标绘读取电压电平(例如,经优化读取电压电平,如结合图3a和3b所描述)。在图4中所展示的一个实例中,针对温度4展示经优化读取电压电平1d、2d、3d、4d、5d和6d的增量。在实施例中,针对温度4依据增量(读取电压电平)和w2r延迟时间的对数而确定斜率值。在实施例中,可使用图4中所展示的曲线图针对一组不同温度中的每一温度来确定温度相关斜率值。
[0050]
图5展示根据图2的操作220存储的实例数据结构500(例如,查找表)。如图5中所展示,数据结构500包含一组不同的裸片温度520(例如,温度1、温度2、温度3和温度4)。对于每一温度520,针对一组w2r延迟时间510中的多个不同w2r延迟时间中的每一个识别经优化读取电压电平。在实施例中,斜率值530与温度520中的每一个相关联地存储。举例来说,对于温度4(例如,85℃),针对相应w2r延迟时间(例如,w2r延迟时间1(例如,25μs)、w2r延迟时间2(例如,1ms)、w2r延迟时间3(例如,1s)、w2r延迟时间4(例如,1min)、w2r延迟时间5(例如,
1hr)和w2r延迟时间6(10hr)确定一组经优化读取电压电平(例如,经优化读取电压电平1d、2d、3d、4d、5d和6d)。如上文所描述,每一斜率值(例如,斜率值1、斜率值2、斜率值3、斜率值4、斜率值5和斜率值6)表示经优化读取电压电平针对给定温度(例如,温度4)随w2r延迟时间的改变(例如,经优化读取电压电平2d与经优化读取电压电平3d之间的改变)。
[0051]
参考图2,在操作220中,响应于读取命令,处理逻辑确定当前写到读延迟时间和当前裸片温度。在实施例中,在识别新的读取命令后,处理逻辑测量当前w2r延迟时间和裸片温度的状态。举例来说,响应于读取命令,处理逻辑可确定对应于w2r延迟时间的第一值和对应于裸片温度的第二值。当前w2r延迟时间可以是自从数据写入到存储器子系统单元直到已接收到针对存储在存储器子系统单元处的数据的新的读取命令之后已经过的时间量。当前裸片温度可以是在接收读取命令时裸片的操作温度。
[0052]
在操作230中,处理逻辑使用数据结构来识别对应于当前裸片温度的所存储斜率值。在实施例中,使用图5的数据结构来执行查找操作以识别对应于当前裸片温度的斜率值530。在实施例中,所存储斜率值可与存储器子系统的给定存储器裸片相关联,所述给定存储器裸片是读取命令的对象。在一些实施例中,可针对存储器子系统的存储器裸片中的每一个产生及维持相应数据结构。
[0053]
在操作240中,处理逻辑基于所存储斜率值和当前写到读延迟时间而确定经调整读取电压电平。在实施例中,经调整读取电压电平可基于依据斜率值和w2r延迟时间调整的默认读取电压值。在实施例中,可通过在预定w2r延迟时间(例如,相对短的w2r延迟时间,例如25μs)内测量读取电压值来确定默认读取电压值。
[0054]
在实施例中,可根据以下表达式确定经调整读取电压电平:
[0055]
经调整读取电压电平=默认读取电压电平 [所存储斜率值*对数(w2r延迟时间)]。
[0056]
在操作250中,处理逻辑使用经调整读取电压电平来执行读取命令。在实施例中,经调整读取电压电平用于响应于读取命令而执行读取操作。有利地,施加经调整读取电压电平考虑到由存储器子系统的随后当前裸片温度引起的阈值电压漂移和w2r延迟时间的改变。
[0057]
图6是根据一些实施例的使用经调整读取电压电平来执行读取命令以考虑由于裸片温度和w2r延迟时间的改变而引起的阈值电压漂移的实例方法600的流程图。方法600可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路系统、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,方法600由图1的读取电压调整组件113执行。虽然以特定顺序或次序来展示,但是除非另有指定,否则可修改过程的次序。因此,所说明实施例应仅作为实例理解,且所说明过程可以不同次序执行,且一些过程可并行地执行。另外,在各种实施例中可省去一或多个过程。因此,在每一实施例中并非需要全部过程。其它过程流也是可能的。
[0058]
在操作610中,处理逻辑识别对应于与存储器子系统相关联的默认写到读延迟时间的默认读取电压电平。在实施例中,可通过在默认w2r延迟时间执行探测来确定默认读取电压电平。在实施例中,默认w2r延迟时间可选择为相对小或低的w2r延迟时间,例如25μs。在默认w2r延迟时间测量的读取电压电平可设置且存储为默认读取电压电平。
[0059]
在操作620中,对于一组多个裸片温度中的每一裸片温度,处理逻辑在存储器子系
统的多个不同w2r延迟时间中的每一个处确定对应于编程分布的减小的误码率的一组读取电压电平。在实施例中,可根据上文结合图3a和3b所描述的过程确定对应于减小的误码率的一组读取电压电平(例如,经优化读取电压电平)。在实施例中,通过识别对应于减小的误码率的读取电压电平来优化一组读取电压电平中的每一读取电压电平(例如,如图3b中所展示)。在实施例中,一组多个裸片温度可包含任何合适的裸片温度,包含例如0℃、25℃、50℃、85℃的温度,或在合适范围(例如,0℃到100℃)内的任何类似值。
[0060]
在操作630中,对于一组多个裸片温度中的每一裸片温度,处理逻辑确定表示所述一组读取电压电平随存储器子系统的写到读延迟时间的改变的斜率值。在实施例中,可依据读取电压电平的增量和w2r延迟时间确定温度相关斜率值,如上文所描述且在图4的实例中所展示。
[0061]
在操作640中,处理逻辑存储数据结构,所述数据结构包含默认读取电压电平和对应于所述一组多个裸片温度中的每一个的斜率值。在实施例中,数据结构可包含存储在与存储器子系统相关联的存储器(例如,熔丝rom存储器)中的查找表。
[0062]
在操作650中,处理逻辑识别读取命令以读取存储器子系统的数据。在实施例中,读取命令可由主机系统(例如,图1的主机系统120)发出以从存储器子系统的存储器裸片读取数据。
[0063]
在操作660中,响应于读取命令,处理逻辑确定当前裸片温度和当前w2r延迟时间。在实施例中,处理逻辑可响应于写入操作的执行而维持复位到零的定时器。接着,响应于读取命令,处理逻辑可确定自从复位定时器以来已经过的时间量,且将经过的时间记录为当前w2r延迟时间。在实施例中,w2r延迟时间是最近写入操作与下一读取操作之间的时间的量度,如w2r定时器所表示。
[0064]
在操作670中,处理逻辑使用数据结构来执行查找操作以识别对应于当前裸片温度的所存储斜率值。在实施例中,在操作670中,识别先前确定且存储的温度相关斜率值。在实施例中,处理逻辑可以对当前温度值进行归一化以匹配存储在数据结构中的温度中的一个(例如,图5的温度1、温度2、温度3或温度4)。在实施例中,因为所确定或所测量的当前温度值可能与用于建立数据结构的精确值不匹配,所以对这些值进行归一化以与表值匹配。举例来说,归一化可包含将当前温度值向下(或向上)舍入到最接近的所存储值(例如,0℃、25℃、50℃或85℃的值)。应注意,可应用任何合适的归一化过程或技术以将所确定的当前温度值转换成对应的所存储温度值以实现识别对应的所存储斜率值。
[0065]
在操作680中,处理逻辑至少部分地基于所存储斜率值、默认读取电压电平和当前w2r延迟时间而确定经调整读取电压电平。如上文所描述,在实施例中,通过以下表达式确定经调整读取电压电平:
[0066]
经调整读取电压电平=默认读取电压电平 [所存储斜率值*对数(w2r延迟时间)]。
[0067]
在实施例中,处理逻辑鉴于温度相关斜率(例如,所存储斜率值)和w2r延迟时间而调整默认读取电压电平,且抵消由于温度改变和w2r延迟时间改变而引起的阈值电压漂移。
[0068]
在操作690中,处理逻辑使用经调整读取电压电平来执行读取命令。有利地,将读取电压电平动态地调整为经优化读取电压电平减小了相关联的误码率,并且抵消了由当前温度和w2r延迟时间引起的阈值电压漂移。
[0069]
图7说明计算机系统700的实例机器,所述实例机器内可执行用于使所述机器执行本文中所论述的方法中的任何一或多个的一组指令。在一些实施例中,计算机系统700可以对应于主机系统(例如,图1的主机系统120),所述主机系统包含、耦合到或利用存储器子系统(例如,图1的存储器子系统110)或可以用于执行控制器的操作(例如,执行操作系统,以执行对应于图1的读取电压调整组件113的操作)。在替代实施例中,机器可连接(例如,联网)到lan、内联网、外联网和/或因特网中的其它机器。机器可作为对等(或分散式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器而在客户端-服务器网络环境中的服务器或客户端机器的容量中操作。
[0070]
机器可以是个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、网络设备、服务器、网络路由器、交换机或网桥、数字或非数字电路系统,或能够执行指定要由此机器进行的动作的一组指令(顺序的或以其它方式)的任何机器。另外,尽管说明单个机器,但还应认为术语“机器”包含机器的任何集合,所述集合单独地或共同地执行一组(或多组)指令以执行本文中所论述的方法中的任何一或多种。
[0071]
实例计算机系统700包含处理装置702、主存储器704(例如,只读存储器(rom)、闪存器、动态随机存取存储器(dram),例如同步dram(sdram)或rambus dram(rdram)等)、静态存储器706(例如,闪存器、静态随机存取存储器(sram)等),以及数据存储系统718,其经由总线730彼此通信。
[0072]
处理装置702表示一或多个通用处理装置,例如微处理器、中央处理单元等等。更特定来说,处理装置可以是复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置702也可以是一或多个专用处理装置,例如专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器等等。处理装置702经配置以执行用于执行本文中所论述的操作和步骤的指令726。计算机系统700可进一步包含网络接口装置708以经由网络720通信。
[0073]
数据存储系统718可以包含机器可读存储媒体724(也称为计算机可读媒体),其上存储有一或多组指令726或体现本文中所描述的方法或功能中的任何一或多种的软件。指令726还可在其由计算机系统700执行期间完全或至少部分地驻留在主存储器704内和/或处理装置702内,主存储器704和处理装置702也构成机器可读存储媒体。机器可读存储媒体724、数据存储系统718和/或主存储器704可对应于图1的存储器子系统110。
[0074]
在一个实施例中,指令726包含用于实施对应于刷新操作组件(例如,图1的读取电压调整组件113)的功能性的指令。尽管在实例实施例中将机器可读存储媒体724展示为单个媒体,但术语“机器可读存储媒体”应被认为包含存储一或多组指令的单个媒体或多个媒体。术语“机器可读存储媒体”还应被认为包含能够存储或编码供机器执行的一组指令且使机器执行本公开的方法中的任何一或多种的任何媒体。因此,应认为术语“机器可读存储媒体”包含但不限于固态存储器、光学媒体以及磁性媒体。
[0075]
已关于计算机存储器内的数据位的操作的算法和符号表示而呈现先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用以将其工作的主旨最有效地传达给所属领域的其它技术人员的方式。算法在这里并且通常被认为是导致期望的结果的操作的自洽序列。操作是要求对物理量进行物理操纵的操作。这些量通常但未必呈能够
被存储、组合、比较和以其它方式操控的电或磁信号的形式。有时,主要出于通用的原因,已经证明将这些信号称为位、值、元件、符号、字符、术语、数目等等是方便的。
[0076]
然而,应牢记,所有这些和类似术语应与适当物理量相关联,且仅仅是应用于这些量的方便标签。本公开可以指操控和变换计算机系统的寄存器和存储器内的表示为物理(电子)数量的数据为计算机系统存储器或寄存器或其它这类信息存储系统内的类似地表示为物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。
[0077]
本公开还涉及用于执行本文中的操作的设备。此设备可出于既定目的而专门构造,或其可包含由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此类计算机程序可存储在计算机可读存储媒体中,例如但不限于任何类型的盘(包含软盘、光盘、cd-rom和磁性光盘)、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁卡或光卡或适合于存储电子指令的任何类型的媒体,它们各自耦合到计算机系统总线。
[0078]
本文中呈现的算法和显示器在本质上并不与任何特定计算机或其它设备相关。各种通用系统可与根据本文中的教示的程序一起使用,或其可证明构造用以执行所述方法的更加专用的设备是方便的。将如下文描述中所阐述的那样来呈现多种这些系统的结构。此外,并不参考任何特定编程语言来描述本公开。应了解,可使用多种编程语言来实施如本文中所描述的本公开的教示。
[0079]
本公开可提供为计算机程序产品或软件,其可包含在其上存储有可用于编程计算机系统(或其它电子装置)以执行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于以机器(例如,计算机)可读的形式存储信息的任何机构。在一些实施例中,机器可读(例如计算机可读)媒体包含机器(例如计算机)可读存储媒体,例如只读存储器(“rom”)、随机存取存储器(“ram”)、磁盘存储媒体、光学存储媒体、闪存器组件等。
[0080]
在前述说明书中,已参考其特定实例实施例描述了本公开的实施例。应显而易见的是,可在不脱离如所附权利要求书中阐述的本公开的实施例的更广精神和范围的情况下对本公开进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书和图式。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜