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

使用写入事务数据选择读取电压的制作方法

2022-03-05 12:00:46 来源:中国专利 TAG:


1.本公开的实施例大体上涉及存储器子系统,且更确切地说涉及使用写入事务数据选择读取电压。


背景技术:

2.存储器子系统可为存储系统、存储器模块或存储装置与存储器模块的混合。存储器子系统可包含一或多个存储数据的存储器组件。存储器组件可例如是非易失性存储器组件和易失性存储器组件。大体来说,主机系统可利用存储器子系统以在存储器组件处存储数据且从存储器组件检索数据。
附图说明
3.根据下文提供的具体实施方式和本公开的各种实施例的附图将更加充分地理解本公开。
4.图1说明根据本公开的一些实施例的包含存储器子系统的实例计算环境。
5.图2为根据本公开的一些实施例的用以使用写入事务数据选择读取电压的实例方法的流程图。
6.图3为说明根据本公开的一些实施例的针对三个读取电压电平随写读延迟而变的位错误率的曲线图。
7.图4为说明根据本公开的一些实施例的用以使用写入事务目录选择读取电压的实例数据流的框图。
8.图5为根据本公开的一些实施例的用以使用写入事务目录选择读取电压的实例方法的流程图。
9.图6a说明根据本公开的一些实施例的实例写入事务目录。
10.图6b说明根据本公开的一些实施例的实例写入事务目录。
11.图7为其中可操作本公开的实施例的实例计算机系统的框图。
具体实施方式
12.本公开的方面涉及使用写入事务数据选择读取电压。存储器子系统可为存储装置、存储器模块,或存储装置与存储器模块的混合。下文结合图1描述存储装置和存储器模块的实例。大体来说,主机系统可利用包含一或多个存储器组件,例如非易失性存储器装置的存储器子系统。主机系统可提供待存储于存储器子系统处的数据,且可请求从存储器子系统检索数据。
13.对于某些存储器装置类型(即,对于采用某些类型的存储器装置的存储器子系统),位错误率(ber)可随时间发生变化。ber可为每单位时间检测到的在数据块处存储的数据经历的位错误数目。确切地说,一些非易失性存储器装置(例如,nand、相变等)具有随时间而移动的阈值电压(vt)分布。在给定读取电平(即,作为读取操作的部分施加到存储器单
元的电压)下,如果vt分布移动,则ber也会受影响。对于在一时间例项处的任何vt分布,可存在最小化预期ber的最佳读取电平(或读取电平范围)。确切地说,对于一些类型的存储器装置,vt分布和ber可随写读(w2r)延迟(即,在数据被写入到存储器装置时与在从存储器装置读取数据时之间经过的时间周期)而变。由于ber的此时变本质,以及存储器中的其它噪声机制,单个读取电平可能不足以实现满足某些系统可靠性目标的错误率。因此,某些存储器子系统可具有数个预编程读取电压电平,每一电平对应于w2r延迟时间的不同范围。例如,最低读取电压对于极小写读延迟可能是最有利的(最低ber),第二较高读取电压对于具有略微较大w2r延迟的数据可具有最低ber,且第三读取电压对于具有极大w2r延迟的数据可具有最低ber。
14.常规存储器子系统可从非易失性存储器读取数据,其首先选择最低读取电压电平以尝试读取数据。如果在使用最低读取电压电平时发生读取错误,则选择下一最高读取电压电平以尝试读取数据。再次,如果发生读取错误,则使用另一较高读取电压电平来读取数据。从最低读取电压开始,且接着前进到较高读取电压有助于防止由施加过高读取电压引起的损坏性读取和部分写入。然而,此技术可通过增大存储器读取存取的时延而降低系统性能,这是由于对于具有较大写读延迟的数据,通常会在获得正确读取电压之前尝试所有三个电压电平。
15.本公开的方面通过使用写入事务数据来选择要使用的适当读取电压电平解决了上文和其它不足。存储器子系统可包含写入事务目录,其为包含存储写入事务数据的条目的数据结构,所述写入事务数据例如与已在特定w2r延迟范围内发生的写入事务相关联的物理地址。在接收到执行读取操作的请求时,存储器子系统可检查写入事务目录以寻找对应于待执行读取操作的物理地址的条目。如果物理地址在写入事务目录中,则可针对物理地址处的数据确定w2r延迟范围。可接着基于物理地址处的数据的w2r延迟选择读取电压电平。
16.在一个实例中,与写入事务相关联的物理地址被记录于写入事务目录中。在接收到读取物理地址处存储的数据的请求后,如果物理地址被记录于写入事务目录中,则选择第一读取电压电平以读取物理地址处的数据。如果物理地址并未记录于写入事务目录中,则选择第二读取电压。在另一实例中,在接收到执行写入事务的请求后,将与写入事务相关联的物理地址连同写入事务何时发生的时间戳一起记录于写入事务目录中。接着,在接收到读取物理地址处的数据的请求后,搜索写入事务目录。如果在写入事务目录中找到物理地址,则确定与物理地址一起存储的时间戳与当前读取请求之间的差。如果所述差(即,w2r延迟)小于阈值写读延迟,则选择第一读取电压,否则选择第二读取电压。应注意,可使用任何数目个阈值写读延迟来选择任何数目个读取电压。例如,可使用多于一个阈值写读延迟在三个或多于三个读取电压之间进行选择。
17.因此,本公开通过使用写入事务目录选择读取电压而提供优于常规系统的优点。读取重试触发率降低,这可改进整体系统处理量并降低时延。另外,可减少或消除部分写入效应,因此确保系统继续满足主机系统的可靠性要求。
18.图1说明根据本公开的一些实施例的包含存储器子系统110的实例计算环境100。存储器子系统110可包含媒体,例如存储器组件112a到112n。存储器组件112a到112n可为易失性存储器组件、非易失性存储器组件或此类组件的组合。存储器子系统110可为存储装
置、存储器模块,或存储装置与存储器模块的混合。存储装置的实例包含固态驱动器(ssd)、快闪驱动器、通用串行总线(usb)快闪驱动器、嵌入式多媒体控制器(emmc)驱动器、通用快闪存储(ufs)驱动器以及硬盘驱动器(hdd)。存储器模块的实例包含双列直插式存储器模块(dimm)、小型dimm(so-dimm)以及非易失性双列直插式存储器模块(nvdimm)。
19.计算环境100可包含耦合到一或多个存储器子系统110的主机系统120。在一些实施例中,主机系统120耦合到不同类型的存储器子系统110。图1说明耦合到一个存储器子系统110的主机系统120的一个实例。主机系统120使用存储器子系统110,例如将数据写入到存储器子系统110和从存储器子系统110读取数据。如本文中所使用,“耦合到”大体上指代组件之间的连接,其可为间接通信连接或直接通信连接(例如,不具有中间组件),无论是有线还是无线的,包含例如电连接、光学连接、磁性连接等连接。
20.主机系统120可为计算装置,例如台式计算机、膝上型计算机、网络服务器、移动装置、嵌入式计算机(例如,包含在车辆、工业设备或联网的商业装置中的计算机),或包含存储器和处理装置的此类计算装置。主机系统120可包含或耦合到存储器子系统110,使得主机系统120可从存储器子系统110读取数据或将数据写入到所述存储器子系统。主机系统120可经由物理主机接口耦合到存储器子系统110。物理主机接口的实例包含但不限于串行高级技术附件(sata)接口、外围组件互连高速(pcie)接口、通用串行总线(usb)接口、光纤通道、串行连接的scsi(sas)等。物理主机接口可用于在主机系统120与存储器子系统110之间发射数据。当存储器子系统110通过pcie接口与主机系统120耦合时,主机系统120可进一步利用nvm高速(nvme)接口来存取存储器组件112a到112n。物理主机接口可提供用于在存储器子系统110与主机系统120之间传递控制、地址、数据和其它信号的接口。
21.存储器组件112a到112n可包含不同类型的非易失性存储器组件和/或易失性存储器组件的任何组合。非易失性存储器组件的实例包含与非(nand)类型快闪存储器。存储器组件112a到112n中的每一个可包含一或多个存储器单元阵列,所述存储器单元例如单层级单元(slc)或多层级单元(mlc)(例如,三层级单元(tlc)或四层级单元(qlc))。在一些实施例中,特定存储器组件可包含存储器单元的slc部分和mlc部分两者。存储器单元中的每一个可存储由主机系统120使用的数据的一或多个位(例如,数据块)。尽管描述例如nand类型快闪存储器的非易失性存储器组件,但存储器组件112a到112n可基于任何其它类型的存储器,例如易失性存储器。在一些实施例中,存储器组件112a到112n可为但不限于随机存取存储器(ram)、只读存储器(rom)、动态随机存取存储器(dram)、同步动态随机存取存储器(sdram)、相变存储器(pcm)、磁随机存取存储器(mram)、或非(nor)快闪存储器、电可擦除可编程只读存储器(eeprom)以及非易失性存储器单元的交叉点阵列。非易失性存储器的交叉点阵列可结合可堆叠交叉网格化数据存取阵列而基于体电阻的变化来执行位存储。另外,与许多基于快闪的存储器对比,交叉点非易失性存储器可执行就地写入操作,其中可在不预先擦除非易失性存储器单元的情况下对非易失性存储器单元进行编程。此外,存储器组件112a到112n的存储器单元可分组为存储器页或数据块,所述存储器页或数据块可指用于存储数据的存储器组件的单位。
22.存储器系统控制器115(下文称为“控制器”)可与存储器组件112a到112n通信以执行操作,例如在存储器组件112a到112n处读取数据、写入数据或擦除数据,以及其它此类操作。控制器115可包含硬件,例如一或多个集成电路和/或离散组件、缓冲存储器或其组合。
控制器115可为微控制器、专用逻辑电路(例如,现场可编程门阵列(fpga)、专用集成电路(asic)等)或其它合适的处理器。控制器115可包含配置成执行存储在本地存储器119中的指令的处理器(处理装置)117。在所说明实例中,控制器115的本地存储器119包含配置成存储指令的嵌入式存储器,所述指令用于执行控制存储器子系统110的操作(包含处理存储器子系统110与主机系统120之间的通信)的各种过程、操作、逻辑流程和例程。在一些实施例中,本地存储器119可包含存储器寄存器,其存储存储器指针、所提取数据等。本地存储器119还可包含用于存储微码的只读存储器(rom)。虽然图1中的实例存储器子系统110已说明为包含控制器115,但在本公开的另一实施例中,存储器子系统110可不包含控制器115,且可替代地依赖于(例如,由外部主机或由与存储器子系统分离的处理器或控制器提供的)外部控制。
23.大体来说,控制器115可从主机系统120接收命令或操作,且可将命令或操作转换成指令或适当命令,以实现对存储器组件112a到112n的所要存取。控制器115可负责其它操作,例如耗损均衡操作、垃圾收集操作、错误检测和错误校正码(ecc)操作、加密操作、高速缓存操作以及在与存储器组件112a到112n相关联的逻辑块地址与物理块地址之间的地址转换。控制器115可进一步包含主机接口电路以经由物理主机接口与主机系统120通信。主机接口电路可将从主机系统接收到的命令转换成命令指令以存取存储器组件112a到112n,以及将与存储器组件112a到112n相关联的响应转换成用于主机系统120的信息。
24.存储器子系统110还可包含未说明的额外电路或组件。在一些实施例中,存储器子系统110可包含高速缓存或缓冲器(例如,dram)以及地址电路(例如,行解码器和列解码器),所述地址电路可从控制器115接收地址且对地址进行解码以存取存储器组件112a到112n。
25.存储器子系统110包含读取电压选择组件113,其可使用写入事务目录选择用于读取操作的读取电压电平。在一些实施例中,控制器115包含读取电压选择组件113的至少一部分。例如,控制器115可包含处理器117(处理装置),其配置成执行存储在本地存储器119中的指令以用于执行本文中所描述的操作。在一些实施例中,读取电压选择组件113为主机系统120、应用程序或操作系统的部分。
26.写入事务目录为包含存储写入事务数据的条目的数据结构,所述写入事务数据例如与已在特定w2r延迟范围内发生的写入事务相关联的物理地址。写入事务目录可为例如且不限于表格或列表。存储器子系统可对写入事务目录执行查找操作或搜索操作。
27.读取电压选择组件113可搜索写入事务目录以寻找写入事务目录中存储的物理地址或物理地址的指示。读取电压选择组件113可基于写入事务目录的搜索结果确定数据是否满足阈值准则。如果数据是在阈值时间周期内写入到物理地址,则满足阈值准则。在一个实施例中,如果物理地址存储在写入事务目录中,则数据是在阈值时间周期内写入到物理地址,且因此可满足阈值准则。在另一实施例中,与物理地址一起存储的时间戳可取决于数据是否在阈值时间周期内写入到物理地址而指示是否满足阈值准则。读取电压选择组件113可基于是否在阈值时间周期内写入到物理地址来选择用以读取物理地址处的数据的读取电压。下文描述关于读取电压选择组件113的操作的另外细节。
28.图2为根据本公开的一些实施例的用以使用写入事务目录选择读取电压的实例方法200的流程图。方法200可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电
路、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,由图1的读取电压选择组件113执行方法200。尽管以特定顺序或次序示出,但除非另外指定,否则可修改过程的次序。因此,应理解,所说明实施例仅为实例,且所说明过程可以不同次序执行,且一些过程可并行地执行。另外,在各种实施例中可省略一或多个过程。因此,在每一实施例中并不需要所有过程。其它过程流程是可能的。
29.在操作210处,处理逻辑接收读取存储在存储器组件(例如,存储器组件112a到112n中的一个)的物理地址处的数据的读取请求。读取请求可包含待读取的存储器组件的物理地址的指示符。物理地址的指示符可为物理地址的表示,例如存储器组件的物理地址的数字记法或任何其它指示符。存储在物理地址处的数据可是在先前时间写入,在所述时间物理地址的指示符可记录于被称为写入事务目录的缓冲器中。缓冲器可为存储最近写入的物理地址的指示符的先进先出存储器缓冲器。
30.在操作220处,处理逻辑确定物理地址处的数据是否满足关于数据何时写入到物理地址的阈值准则。当数据是在阈值时间周期内写入时,可满足阈值准则。当自从数据写入以来的时间超过阈值时间周期时,并不满足阈值准则。阈值时间周期可为最大w2r延迟,对于所述延迟,可使用第一读取电压电平以准确地读取数据。阈值时间周期可取决于存储器子系统,且可选择为提供最佳阈值,在所述最佳阈值处开始使用第二读取电压电平读取数据,如图3中所示。图3为说明根据本公开的一些实施例的针对三个读取电压电平随写读(w2r)延迟而变的位错误率(ber)的曲线图300。如本文中所描述,vt分布可随时间移位。例如,对于给定读取电压电平,例如第一读取电压电平(标记为读取电平1),如果vt分布移动,则在使用此读取电压电平执行读取操作时经历的位错误率可随时间改变。在这些或其它情况中,vt分布和位错误率可随w2r延迟而变。在曲线图300中,针对使用指定读取电压电平执行的读取操作显示测得的ber。例如,ber曲线312表示针对在不同w2r延迟时间的片段上使用读取电平1执行的读取操作测得的ber,ber曲线322表示针对在不同w2r延迟时间的片段上使用读取电平2执行的读取操作测得的ber,且ber曲线332表示针对在不同w2r延迟时间的片段上使用读取电平3执行的读取操作测得的ber。曲线图300示出三个读取电压电平中的每一个在不同w2r延迟时间范围内最小化ber,例如w2r范围310、w2r范围320和w2r范围330。在其它实施例中,可能存在任何其它数目个w2r延迟时间范围和相关联读取电压电平。可在存储器组件的生产期间设置读取电平1、读取电平2和读取电平3的值。关于图2描述的阈值时间周期可对应于w2r范围310且第一读取电压电平可对应于读取电平1。替代地,阈值时间周期可为延伸超出w2r范围310的时间。
31.再次参考图2的操作220,处理逻辑可搜索写入事务目录以确定目录是否包含来自读取请求的物理地址。在一个实施例中,如果物理地址在目录中,则物理地址是在所界定时间周期(例如,w2r范围310)内最后一次写入,且满足阈值准则。如果物理地址不在目录中,则物理地址是在所界定时间周期外(例如,w2r范围320或w2r范围330)最后一次写入,且并不满足阈值准则。在另一实施例中,如果物理地址不在写入事务目录中,则再次超过阈值w2r延迟。然而,如果物理地址在写入事务目录中,则处理逻辑还可确定与物理地址相关联的时间戳是否指示自从物理地址处的数据被写入以来已经过阈值时间周期。可将时间戳相比于读取操作的当前时间以确定物理地址处的数据是否是在阈值时间周期内写入。
32.在图2的操作230处,响应于数据满足阈值准则,处理逻辑使用第一读取电压电平对物理地址处存储的数据执行读取操作。在操作240处,响应于数据不满足阈值准则,处理逻辑使用第二读取电压电平对物理地址处存储的数据执行读取操作。第二读取电压电平可高于第一读取电压电平。
33.图4说明读取电压选择组件113和存储器450。读取电压选择组件可包含搜索引擎420、写入事务目录430和读取电平选择器440。搜索引擎420可以硬件实施为散列、内容可寻址存储器或任何其它硬件搜索方案。也可至少部分地通过软件实施搜索引擎420。写入事务目录430可存储存储器450的最近已写入有数据的一或多个物理地址。写入事务目录430还可包含目录条目更新模块435,以用新接收的物理地址(例如,物理地址414)更新写入事务目录且移除旧条目。读取电平选择器440可为基于写入事务目录430的搜索结果确定在读取操作的第一次尝试时使用哪个读取电压电平的硬件或软件。
34.例如,在一个实施方案中,读取电压选择组件113的搜索引擎420从主机系统接收读取请求402。搜索引擎420可接着搜索写入事务目录430。搜索引擎420可搜索存储于写入事务目录430中的一或多个物理地址,且可将搜索结果转发到读取电平选择器440。读取电平选择器440可基于写入事务目录430的搜索结果选择读取电压电平。在一个实例中,如果搜索引擎420确定与读取请求402一起接收的物理地址存储在写入事务目录430中,则选择第一读取电压电平。如果物理地址并不存储于写入事务目录430中,则选择第二读取电压电平。在另一实例中,如果物理地址在写入事务目录430中,则读取电平选择器440可确定与物理地址一起存储在写入事务目录430中的时间戳是否指示自从数据被写入到物理地址以来已经过阈值时间周期。如果尚未经过阈值时间周期,则选择第一读取电压电平。如果已经过阈值时间周期,则选择第二读取电压电平。在选择读取电压电平之后,可执行读取操作且将读取数据404传回到主机系统。
35.在另一实例中,可在写入事务目录430的目录条目更新模块435处接收写入请求412的物理地址414。写入请求412可包含物理地址414和写入数据416两者。写入请求412的物理地址414可存储在写入事务目录430中,而写入数据416存储在存储器450中的物理地址414处。在一些实施例中,目录条目更新模块435将物理地址414连同指示写入数据416何时写入到存储器450的时间戳一起记录在写入事务目录430中。目录条目更新模块435可将物理地址414或物理地址414的指示符记录在写入事务目录430的邻近于先前写入操作的条目的条目中。在一些实施例中,写入请求包含用于写入数据416的多个物理地址414。写入数据416的每一物理地址414可被记录于写入事务目录430中。
36.在一个实施例中,写入事务目录430可为先进先出(fifo)存储器缓冲器。目录条目更新模块435可将物理地址与时间戳一起记录在写入事务目录430中,且在每次记录新物理地址时移除写入事务目录的先前条目。写入事务目录430可为所界定大小,且因此可在已记录特定数目个其它物理地址之后(即,当缓冲器已满时)移除或覆写条目。在一个实例中,目录条目更新模块435可在每次接收新写入请求时移除写入事务目录430的最旧条目且将其替换为新接收到的物理地址。
37.另外,在一些实施例中,目录条目更新模块435可以恒定间隔从写入事务目录430移除条目。因此,物理地址414被存储在写入事务目录430中达阈值时间量(即,阈值w2r延迟)且接着被移除。例如,目录条目更新模块435可包含写入事务目录430的写入指针,其以
恒定间隔递增到写入事务目录430中的下一条目位置。在每一恒定间隔下,移除由写入指针指示的位置处的条目。另外,如果在所述间隔期间接收到写入请求,则可将所移除条目替换为新接收到的写入请求的物理地址。无论是否接收到写入请求,写入指针都会递增。因此,在所界定大小的写入事务目录430中,可在无时间戳的情况下记录物理地址414。
38.图5为根据本公开的一些实施例的用以使用写入事务目录选择读取电压的实例方法500的流程图。方法500可由处理逻辑执行,所述处理逻辑可包含硬件(例如,处理装置、电路、专用逻辑、可编程逻辑、微码、装置的硬件、集成电路等)、软件(例如,在处理装置上运行或执行的指令)或其组合。在一些实施例中,由图1的读取电压选择组件113执行方法500。尽管以特定顺序或次序示出,但除非另外指定,否则可修改过程的次序。因此,应理解,所说明实施例仅为实例,且所说明过程可以不同次序执行,且一些过程可并行地执行。另外,在各种实施例中可省略一或多个过程。因此,并非每一实施例都需要所有过程。其它过程流程是可能的。
39.在操作510处,处理逻辑对位于存储器组件的物理地址处的存储器执行写入操作。写入操作可包含待写入到存储器组件的数据和物理地址。物理地址可为存储器的待存储数据的物理位置的指示符(例如表示物理位置的数字地址等)。接着可在写入操作的物理地址处将数据写入到存储器。在操作520处,处理逻辑在写入事务目录中记录物理地址。写入事务目录可为记录存储器中进行写入的物理地址中的每一个的存储器缓冲器。在一个实施例中,写入事务目录为先进先出存储器缓冲器,其记录传入写入操作的物理地址且在每次记录新地址时移除缓冲器中的最旧物理地址。每一物理地址都可记录有写入操作发生时间的时间戳。在另一实施例中,写入事务目录的写入指针在每次经过特定时间间隔时递增到下一条目位置。特定时间间隔可为最小写入间隔(即,可发生单个写入事务的最短时间量)。
40.在操作530处,处理逻辑接收在物理地址处对存储器执行读取操作的请求。读取操作可包含存储器的待读取物理地址。可在读取电压选择组件处接收物理地址以确定用以读取物理地址处的数据的读取电压。在操作540处,处理逻辑确定物理地址是否存储在写入事务目录中。以硬件(例如,散列或内容可寻址存储器)实施的搜索引擎可用以搜索最近写入事务以寻找具有所述物理地址的条目。
41.在操作550处,处理逻辑响应于确定物理地址存储在写入事务目录中而使用第一读取电压电平在物理地址处读取存储器,且如果物理地址并不存储在写入事务目录中,则可使用第二读取电压电平。第一读取电压电平可为多个读取电压电平中的最低读取电压电平。例如,可存在第一读取电压电平(最低)、第二读取电压电平(中等)和第三读取电压电平(最高)。不同读取电压电平可用于具有不同w2r延迟的数据。第一读取电压电平可用于读取第一w2r延迟范围内的数据。第二读取电压电平可用于读取第二w2r延迟范围内的数据。第三读取电压电平可用于读取第三w2r延迟范围内的数据。在另一实例中,如果w2r延迟超过阈值(例如,在第二或第三范围内),则可使用第二读取电压电平来尝试读取数据。如果在使用第二读取电压电平时发生读取错误,则可使用第三读取电压电平来读取数据。在操作560处,当物理地址处的数据的w2r延迟超过阈值w2r延迟时,处理逻辑从写入事务目录移除物理地址。
42.图6a说明根据一个实施例的用于选择读取电压电平的实例写入事务目录。写入事务目录可存储存储器的已执行写入操作的一或多个物理地址600a到n。在一个实例中,当接
收和/或执行写入操作时,记录时间戳连同待执行写入操作的物理地址。例如,当接收和/或执行待对物理地址600a执行的写入操作时,可记录物理地址600a连同时间戳600b。
43.在一个实施例中,写入目录为先进先出缓冲器。缓冲器的写入指针可用于选择要记录写入操作的物理地址和时间戳的缓冲器条目。在每次接收到写入操作时可递增写入指针。因此,写入事务目录可在接收到写入操作时相邻地记录写入操作的物理地址。例如,在接收到第一写入操作后,可记录物理地址600a和时间戳600b。接下来,可接收到第二写入操作,且可邻近于物理地址600a和600b记录物理地址602a和602b,而不管在写入操作之间已经过多少时间。可接收到第三写入操作,且可邻近于先前写入操作的物理地址602a和时间戳602b记录物理地址604a和时间戳604b。
44.另外,在接收到读取操作后,可搜索写入事务目录以确定待读取物理地址是否记录在其中。如果在写入事务目录中找到物理地址,则使用与物理地址一起记录的时间戳来确定物理地址的w2r延迟是否大于所界定阈值。如果w2r延迟小于所界定阈值,则可使用第一读取电压电平来读取存储器中的物理地址处的数据。如果w2r延迟大于所界定阈值,则可使用第二读取电压电平来读取存储器中的物理地址处的数据。第二读取电压可高于第一读取电压。另外,如果物理地址不在写入事务目录中,则可使用第二读取电压电平。
45.图6b描绘根据一个实施例的实例写入事务目录。写入指针可用于选择所接收物理地址记录在写入事务目录的哪个条目中。写入指针可以与存储器子系统的最大写入速率相同的速率递增到下一条目位置,或换句话说,在每次经过最小写入间隔时进行递增。最小写入间隔可为可发生写入操作的最小时间周期。在每一最小写入间隔下,如果接收到写入操作,则根据写入指针的此时位置将写入操作的物理地址记录于写入事务目录中。写入指针可继续每隔最小写入间隔进行递增,即使未接收到写入操作也如此。
46.由于写入指针每隔最小写入间隔进行递增,写入事务目录的大小可由阈值w2r间隔确定,阈值w2r间隔也可由写入事务目录的大小确定。阈值w2r间隔除以最小写入间隔可以得到写入事务目录中的可能条目数目。因此,在一个实施例中,当接收到读取操作时,可搜索写入事务目录以寻找读取操作中的物理地址。如果物理地址在写入事务目录中,则物理地址的w2r延迟小于阈值w2r间隔。因此,可使用第一读取电压电平来读取物理地址处的数据。否则,如果未在写入事务目录中找到物理地址,则w2r延迟大于阈值w2r间隔。如果w2r延迟大于阈值w2r间隔,则可使用第二读取电压电平来读取物理地址处的数据。
47.例如,写入指针可通过指向写入事务目录中对应于目录条目610的位置而开始。此时未接收到写入操作,且因此其保持为空。一旦经过最小写入间隔,写入指针就递增到对应于物理地址的位置612,在所述点处接收到写入操作。可接着在目录条目612处记录写入操作的物理地址。在已经过另一最小写入间隔之后,写入指针再次递增到目录条目614。相同的过程将继续,直到写入指针到达目录的末端(例如,目录条目n)为止。接着,写入指针回到目录条目610处的写入事务目录开端。在使用此方法的情况下,阈值w2r间隔可由写入事务目录中的条目数目界定。因此,如果物理地址在写入事务目录中,则物理地址处的数据是在阈值w2r间隔内写入。
48.图7说明计算机系统700的实例机器,在所述实例机器内可执行用于使机器执行本文中所论述的方法中的任一或多种的指令集。在一些实施例中,计算机系统700可对应于主机系统(例如,图1的主机系统120),其包含、耦合到或利用存储器子系统(例如,图1的存储
器子系统110)或可用于执行控制器的操作(例如,执行操作系统以执行对应于图1的读取电压选择组件113的操作)。在替代实施例中,机器可连接(例如,联网)到lan、内联网、外联网和/或因特网中的其它机器。机器可作为对等(或分布式)网络环境中的对等机器或作为云计算基础设施或环境中的服务器或客户端机器而以客户端-服务器网络环境中的服务器或客户端机器的容量进行操作。
49.所述机器可为个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、网络器具、服务器、网络路由器、交换机或桥接器,或能够执行(循序或以其它方式)指定待由所述机器采取的动作的指令集的任何机器。此外,虽然说明单个机器,但还应认为术语“机器”包含机器的任何集合,所述集合个别地或共同地执行一(或多)个指令集以执行本文中所论述的方法中的任一或多种。
50.实例计算机系统700包含处理装置702、主存储器704(例如,只读存储器(rom)、快闪存储器、动态随机存取存储器(dram),例如同步dram(sdram)或rambus dram(rdram)等)、静态存储器706(例如,快闪存储器、静态随机存取存储器(sram)等),以及数据存储系统718,它们经由总线730彼此通信。
51.处理装置702表示一或多个通用处理装置,例如微处理器、中央处理单元等。更确切地说,处理装置可为复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器或实施其它指令集的处理器,或实施指令集的组合的处理器。处理装置702也可为一或多个专用处理装置,例如专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器等。处理装置702配置成执行指令726,以用于执行本文中所论述的操作和步骤。计算机系统700可进一步包含网络接口装置708以经由网络720通信。
52.数据存储系统718可包含机器可读存储媒体724(也称为计算机可读媒体),所述机器可读存储媒体上存储有一或多个指令集726或体现本文中所描述的方法或功能中的任一或多种的软件。指令726还可在其由计算机系统700执行期间完全或至少部分地驻存在主存储器704内和/或处理装置702内,主存储器704和处理装置702也构成机器可读存储媒体。机器可读存储媒体724、数据存储系统718,和/或主存储器704可对应于图1的存储器子系统110。
53.在一个实施例中,指令726包含用以实施对应于读取电压选择组件(例如,图1的读取电压选择组件113)的功能性的指令。虽然在实例实施例中机器可读存储媒体724示出为单个媒体,但应认为术语“机器可读存储媒体”包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”还应被认为包含能够存储或编码供机器执行的指令集且使得机器执行本公开的方法中的任一或多种的任何媒体。因此,术语“机器可读存储媒体”应被认为包含但不限于固态存储器、光学媒体和磁性媒体。
54.已在针对计算机存储器内的数据位的操作的算法和符号表示方面呈现了先前详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用以将其工作的主旨最有效地传达给所属领域的其它技术人员的方式。在本文中,且通常将算法构想为产生所要结果的操作的自洽序列。操作是要求对物理量进行物理操纵的操作。通常(但未必),这些量采用能够存储、组合、比较以及以其它方式操纵的电或磁信号的形式。已证实,主要出于常用的原因,将这些信号称为位、值、元素、符号、字符、项、编号等有时是便利的。
55.然而,应牢记,所有这些和类似术语将与适当物理量相关联,且仅为应用于这些量的便利标记。本公开可指将计算机系统的寄存器和存储器内的表示为物理(电子)量的数据操纵和变换为计算机系统存储器或寄存器或其它此类信息存储系统内的类似地表示为物理量的其它数据的计算机系统或类似电子计算装置的动作和过程。
56.本公开还涉及用于执行本文中的操作的设备。此设备可出于所需目的而专门构造,或其可包含通过存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。此计算机程序可存储在计算机可读存储媒体中,例如但不限于任何类型的盘,包含软盘、光盘、cd-rom以及磁性光盘、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁卡或光卡,或适于存储电子指令的任何类型的媒体,其各自连接到计算机系统总线。
57.本文中呈现的算法和显示器在本质上并不与任何特定计算机或其它设备相关。各种通用系统可与根据本文中的教示的程序一起使用,或可证实构造用以执行所述方法更加专用的设备是方便的。将如下文描述中所阐述的那样来呈现各种这些系统的结构。另外,未参考任何特定编程语言来描述本公开。应了解,可使用各种编程语言来实施如本文中所描述的本公开的教示。
58.本公开可提供为计算机程序产品或软件,其可包含在其上存储有可用于编程计算机系统(或其它电子装置)以执行根据本公开的过程的指令的机器可读媒体。机器可读媒体包含用于以机器(例如,计算机)可读形式存储信息的任何机构。在一些实施例中,机器可读(例如,计算机可读)媒体包含机器(例如,计算机)可读存储媒体,例如只读存储器(“rom”)、随机存取存储器(“ram”)、磁盘存储媒体、光学存储媒体、快闪存储器组件等。
59.在前述说明书中,本公开的实施例已参考其特定实例实施例进行描述。将显而易见的是,可在不脱离如所附权利要求书中阐述的本公开的实施例的更广精神和范围的情况下对本公开进行各种修改。因此,应在说明性意义上而非限制性意义上看待说明书和图式。
再多了解一些

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

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

相关文献