基于ufs的空闲时间废弃项目收集管理

文档序号:1343532 发布日期:2020-07-17 浏览:17次 >En<

阅读说明:本技术 基于ufs的空闲时间废弃项目收集管理 (UFS-based idle time obsolete item collection management ) 是由 K·坦派罗 J·黄 K·K·姆奇尔拉 于 2018-10-30 设计创作,主要内容包括:在一些实例中揭示系统、方法、NAND存储器装置及用于智能SLC高速缓存迁移过程的机器可读媒体,所述智能SLC高速缓存迁移过程基于一组规则将写入到SLC高速缓存的数据移动到MLC存储装置,所述一组规则是使用所述NAND装置的状态进行评估。在一些实例中,所述SLC高速缓存迁移过程可利用数个NAND操作参数确定何时将写入到SLC高速缓存的所述数据移动到MLC、从SLC移动多少数据到MLC及用于移动所述数据的参数。(In some examples, systems, methods, NAND memory devices, and machine-readable media for an intelligent S L C cache migration process that moves data written to an S L C cache to an M L C storage device based on a set of rules that are evaluated using a state of the NAND device are disclosed.)

具体实施方式

电子装置(例如移动电子装置(例如,智能电话、平板计算机等)、用于汽车应用中的电子装置(例如,汽车传感器、控制单元、驾驶辅助系统、乘客安全或舒适系统等),及因特网连接设备或装置(例如,物联网(IoT)装置等))尤其取决于电子装置的类型、使用环境、性能预期等以及其它方面而具有不同的存储需求。

电子装置可分成若干主要组件:处理器(例如,中央处理单元(CPU)或其它主处理器);存储器(例如,一或多个易失性或非易失性随机存取存储器(RAM)存储器装置,例如动态RAM(DRAM)、移动或低功率双倍数据速率同步DRAM(DDR SDRAM)等);及存储装置(例如,非易失性存储器(NVM)装置,例如快闪存储器、只读存储器(ROM)、SSD、MMC或其它存储器卡结构或组合件等)。在某些实例中,电子装置可包含用户接口(例如,显示器、触摸屏、键盘、一或多个按钮等)、图形处理单元(GPU)、电力管理电路、基带处理器或一或多个收发器电路等。

图1说明包含经配置以经由通信接口通信的主机装置105及存储器装置110的环境100的实例。主机装置105或存储器装置110可包含于各种产品150(例如物联网(IoT)装置(例如,冰箱或其它设备、传感器、电动机或致动器、移动通信装置、汽车、无人机等))中以支持产品150的处理、通信或控制。

存储器装置110包含存储器控制器115及例如包含数个个别存储器裸片(例如,三维(3D)NAND裸片的堆叠)的存储器阵列120。在3D架构半导体存储器技术中,垂直结构经堆叠,从而增加层、物理页的数目且相应地增加存储器装置(例如,存储装置)的密度。在实例中,存储器装置110可为离散存储器或主机装置105的存储装置组件。在其它实例中,存储器装置110可为与主机装置105的一或多个其它组件堆叠或以其它方式包含在一起的集成电路的一部分(例如,芯片上系统(SOC)等)。

一或多个通信接口可用于在存储器装置110与主机装置105的一或多个其它组件之间转移数据,例如串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、通用快闪存储(UFS)接口、eMMCTM接口,或一或多个其它连接器或接口。主机装置105可包含主机系统、电子装置、处理器、存储器卡读取器,或在存储器装置110外部的一或多个其它电子装置。在一些实例中,主机105可为具有参考图9的机器900所论述的组件的某部分或全部的机器。

存储器控制器115可从主机105接收指令,且可与存储器阵列通信例如以转移(例如,写入或擦除)数据到存储器阵列的存储器单元、平面、子块、块或页中的一或多者或从存储器阵列的存储器单元、平面、子块、块或页中的一或多者转移(例如,读取)数据。存储器控制器115可尤其包含电路系统或固件(包含一或多个组件或集成电路)。例如,存储器控制器115可包含经配置以控制跨存储器阵列120的存取及提供主机105与存储器装置110之间的转译层的一或多个存储器控制单元、电路或组件。存储器控制器115可包含一或多个输入/输出(I/O)电路、线或接口以转移数据到存储器阵列120或从存储器阵列120转移数据。存储器控制器115可包含存储器管理器125及阵列控制器135。

存储器管理器125可尤其包含电路系统或固件,例如与各种存储器管理功能相关联的数个组件或集成电路。出于本发明描述的目的,实例存储器操作及管理功能将在NAND存储器的上下文中描述。所属领域的技术人员将认知,其它形式的非易失性存储器可具有类似存储器操作或管理功能。此类NAND管理功能包含损耗平衡(例如,废弃项目收集或回收)、错误检测或校正、块引退(retirement),或一或多个其它存储器管理功能。存储器管理器125可将主机命令(例如,从主机接收的命令)剖析或格式化成装置命令(例如,与存储器阵列的操作相关联的命令等),或产生用于阵列控制器135或存储器装置110的一或多个其它组件的装置命令(例如,以完成各种存储器管理功能)。

存储器管理器125可包含经配置以维持与存储器装置110的一或多个组件相关联的各种信息(例如,与耦合到存储器控制器115的存储器阵列或一或多个存储器单元相关联的各种信息)的一组管理表130。例如,管理表130可包含关于耦合到存储器控制器115的存储器单元的一或多个块的块年限、块擦除计数、错误历史或一或多个错误计数(例如,写入操作错误计数、读取位错误计数、读取操作错误计数、擦除错误计数等)的信息。在某些实例中,如果错误计数中的一或多者的经检测错误的数目高于阈值,那么位错误可被称为不可校正位错误。管理表130尤其可维持可校正或不可校正位错误的计数。

阵列控制器135可尤其包含经配置以控制与将数据写入到耦合到存储器控制器115的存储器装置110的一或多个存储器单元、从所述一或多个存储器单元读取数据或擦除所述一或多个存储器单元相关联的存储器操作的电路系统或组件。所述存储器操作可基于例如从主机105接收或在内部由存储器管理器125产生(例如,与损耗平衡、错误检测或校正等相关联)的主机命令。

阵列控制器135可包含错误校正码(ECC)组件140,ECC组件140可尤其包含经配置以检测或校正与将数据写入到耦合到存储器控制器115的存储器装置110的一或多个存储器单元或从所述一或多个存储器单元读取数据相关联的错误的ECC引擎或其它电路系统。存储器控制器115可经配置以主动地检测与数据的各种操作或存储相关联的错误发生(例如,位错误、操作错误等)及从所述错误发生恢复,同时维持在主机105与存储器装置110之间转移的数据的完整性,或维持经存储数据的完整性(例如,使用冗余RAID存储等),且可移除(例如,引退)发生故障的存储器资源(例如,存储器单元、存储器阵列、页、块等)以防止未来错误。

存储器阵列120可包含布置成例如数个装置、平面、子块、块或页的若干存储器单元。作为实例,48GB TLC NAND存储器装置可包含每页18,592个数据字节(B)(16,384+2208个字节)、每块1536页、每平面548个块及每装置4个或4个以上平面。作为另一实例,32GBMLC存储器装置(每单元存储两个数据位(即,4个可编程状态))可包含每页18,592个数据字节(B)(16,384+2208个字节)、每块1024页、每平面548个块及每装置4个平面,但具有对应TLC存储器装置的一半所需写入时间及两倍编程/擦除(P/E)循环。其它实例可包含其它数目或布置。在一些实例中,存储器装置或其一部分可选择性地在SLC模式或在所要MLC模式(例如TLC、QLC等)中操作。

在操作中,数据通常以页写入到NAND存储器装置110或从NAND存储器装置110读取,且以块擦除。然而,一或多个存储器操作(例如,读取、写入、擦除等)可视需要对较大或较小的存储器单元群组执行。NAND存储器装置110的数据转移大小通常被称为页,而主机的数据转移大小通常被称为区段。

尽管数据页可包含用户数据(例如,包含数个数据区段的数据有效负载)及其对应元数据的数个字节,但所述页的大小通常仅指代用于存储所述用户数据的字节的数目。作为实例,具有4KB的页大小的数据页可包含4KB的用户数据(例如,呈现512B的区段大小的8个区段)以及对应于所述用户数据的数个字节(例如,32B、54B、224B等)的元数据,例如完整性数据(例如,错误检测或校正码数据)、地址数据(例如,逻辑地址数据等)或与用户数据相关联的其它元数据。

不同类型的存储器单元或存储器阵列120可提供不同页大小,或可需要与其相关联的不同量的元数据。例如,不同存储器装置类型可具有不同位错误率,此可导致确保所述页数据的完整性所需的不同量的元数据(例如,具有较高位错误率的存储器装置与具有较低位错误率的存储器装置相比可需要更多字节的错误校正码数据)。作为实例,多电平单元(MLC)NAND快闪装置可具有高于对应单电平单元(SLC)NAND快闪装置的位错误率。因而,与对应SLC装置相比,MLC装置可需要更多元数据字节用于错误数据。

图2说明包含组织成块(例如,块A 201A、块B 201B等)及子块(例如,子块A0 201A0、子块An 201An、子块B0 201B0、子块Bn 201Bn等)的数串存储器单元(例如,第一到第三A0存储器串205A0到207A0、第一到第三An存储器串205An到207An、第一到第三B0存储器串205B0到207B0、第一到第三Bn存储器串205Bn到207Bn等)的3D NAND架构半导体存储器阵列200的实例示意图。存储器阵列200表示通常将在存储器装置的块、装置或其它单元中找到的较大数目个类似结构的一部分。

每一存储器单元串包含沿着Z方向、源极到漏极堆叠于源极线(SRC)235或源极侧选择栅极(SGS)(例如,第一到第三A0 SGS 231A0到233A0、第一到第三An SGS 231An到233An、第一到第三B0 SGS 231B0到233B0、第一到第三Bn SGS 231Bn到233Bn,等)与漏极侧选择栅极(SGD)(例如,第一到第三A0 SGD 226A0到228A0、第一到第三An SGD 226An到228An、第一到第三B0 SGD 226B0到228B0、第一到第三Bn SGD 226Bn到228Bn等)之间的电荷存储晶体管(例如,浮动栅极晶体管、电荷俘获结构等)的数个层。3D存储器阵列中的每一串存储器单元可沿着X方向布置为数据线(例如,位线(BL)BL0到BL2220到222),且沿着Y方向布置为物理页。

在物理页内,每一层表示一行存储器单元,且每一存储器单元串表示一列。子块可表示一或多个物理页。块可包含数个子块(或物理页)(例如,128个、256个、384个等)。尽管本文中说明为具有两个块,每一块具有两个子块,每一子块具有单个物理页,物理页具有三串存储器单元,且每一串具有存储器单元的8个层,但在其它实例中,存储器阵列200可包含更多或更少块、子块、物理页、存储器单元串、存储器单元或层。例如,每一串存储器单元可视需要包含更多或更少层(例如,16个、32个、64个、128个等),以及在电荷存储晶体管(例如,选择栅极、数据线等)上方或下方的一或多个额外半导体材料层。作为实例,48GB TLCNAND存储器装置可包含每页18,592个数据字节(B)(16,384+2208个字节)、每块1536页、每平面548个块及每装置4个或4个以上平面。

存储器阵列200中的每一存储器单元包含耦合到(例如,电连接到或以其它方式可操作地连接到)存取线(例如,字线(WL)WL00到WL70 210A到217A、WL01到WL71 210B到217B等)的控制栅极(CG),所述存取线视需要跨特定层或层的一部分共同耦合控制栅极(CG)。3D存储器阵列中的特定层及相应地串中的特定存储器单元可使用相应存取线存取或控制。选择栅极群组可使用各种选择线存取。例如,第一到第三A0 SGD 226A0到228A0可使用A0 SGD线SGDA0 225A0存取,第一到第三An SGD 226An到228An可使用An SGD线SGDAn 225An存取,第一到第三B0 SGD 226B0到228B0可使用B0 SGD线SGDB0 225B0存取,且第一到第三Bn SGD226Bn到228Bn可使用Bn SGD线SGDBn225Bn存取。第一到第三A0 SGS 231A0到233A0及第一到第三An SGS 231An到233An可使用栅极选择线SGS0 230A存取,且第一到第三B0 SGS 231B0到233B0及第一到第三Bn SGS 231Bn到233Bn可使用栅极选择线SGS1 230B存取。

在实例中,存储器阵列200可包含经配置以耦合所述阵列的相应层的每一存储器单元的控制栅极(CG)或选择栅极(或CG或选择栅极的一部分)的数个半导体材料(例如,多晶硅等)层。阵列中的特定存储器单元串可使用位线(BL)及选择栅极等的组合存取、选择或控制,且在所述特定串中的一或多个层处的特定存储器单元可使用一或多个存取线(例如,字线)存取、选择或控制。

图3说明NAND架构半导体存储器阵列300的一部分的实例示意图,NAND架构半导体存储器阵列300包含布置成串(例如,第一到第三串305到307)及层(例如,说明为相应字线(WL)WL0到WL7 310到317、漏极侧选择栅极(SGD)线325、源极侧选择栅极(SGS)线330等)的二维阵列的多个存储器单元302,及感测放大器或装置360。例如,存储器阵列300可说明例如图2中所说明的3D NAND架构半导体存储器装置的存储器单元的一个物理页的一部分的实例示意图。

每一存储器单元串使用相应源极侧选择栅极(SGS)(例如,第一到第三SGS 331到333)耦合到源极线(SRC),且使用相应漏极侧选择栅极(SGD)(例如,第一到第三SGD 326到328)耦合到相应数据线(例如,第一到第三位线(BL)BL0到BL2 320到322)。尽管在图3的实例中经说明具有8个层(例如,使用字线(WL)WL0到WL7 310到317)及三个数据线(BL0到BL2326到328),但其它实例可视需要包含具有更多或更少层或数据线的存储器单元串。

在NAND架构半导体存储器阵列(例如实例存储器阵列300)中,所选择的存储器单元302的状态可通过感测与含有所述所选择的存储器单元的特定数据线相关联的电流或电压变化而存取。存储器阵列300可(例如由控制电路、一或多个处理器、数字逻辑等)使用一或多个驱动器存取。在实例中,一或多个驱动器可通过取决于需要对特定存储器单元或存储器单元集合执行的操作的类型驱动特定电势到一或多个数据线(例如,位线BL0到BL2)、存取线(例如,字线WL0到WL7)或选择栅极而激活所述特定存储器单元或存储器单元集合。

为将数据编程或写入到存储器单元,可将编程电压(Vpgm)(例如,一或多个编程脉冲等)施加到所选择的字线(例如,WL4)且因此施加到耦合到所述所选择的字线的每一存储器单元的控制栅极(例如,耦合到WL4的存储器单元的第一到第三控制栅极(CG)341到343)。编程脉冲可例如以15V或接近15V开始,且在某些实例中可在每一编程脉冲施加期间增加量值。在程序电压施加到所选择的字线时,电势(例如接地电势(例如,Vss))可施加到经标定用于编程的存储器单元的数据线(例如,位线)及衬底(及因此源极与漏极之间的沟道),从而导致从所述沟道到标定存储器单元的浮动栅极的电荷转移(例如,直接注入或福勒-诺德汉(FN)穿隧等)。

相比来说,通过电压(Vpass)可施加到具有未经标定用于编程的存储器单元的一或多个字线,或禁止电压(例如,Vcc)可施加到具有未经标定用于编程的存储器单元的数据线(例如,位线)例如以禁止电荷从沟道转移到此类非标定存储器单元的浮动栅极。所述通过电压可例如取决于经施加通过电压与经标定用于编程的字线的近接性而改变。所述禁止电压可包含相对于接地电势(例如,Vss)的供应电压(Vcc),例如来自外部源或供应器(例如,电池、AC到DC转换器等)的电压。

作为实例,如果将编程电压(例如,15V或更大)施加到特定字线(例如WL4),那么可将10V的通过电压施加到一或多个其它字线(例如WL3、WL5等)以禁止编程非标定存储器单元,或保留存储于未经标定用于编程的此类存储器单元上的值。在经施加编程电压与非标定存储器单元之间的距离增加时,抑制编程非标定存储器单元所需的通过电压可减小。例如,在将15V的编程电压施加到WL4的情况下,可将10V的通过电压施加到WL3及WL5,可将8V的通过电压施加到WL2及WL6,可将7V的通过电压施加到WL1及WL7等。在其它实例中,通过电压或字线的数目等可更高或更低,或更多或更少。

耦合到数据线(例如,第一、第二或第三位线(BL0到BL2)320到322)中的一或多者的感测放大器360可通过感测特定数据线上的电压或电流而检测相应数据线中的每一存储器单元的状态。

在施加一或多个编程脉冲(例如,Vpgm)之间,可执行验证操作以确定所选择的存储器单元是否已达到其预期编程状态。如果所述所选择的存储器单元已达到其预期编程状态,那么其可被禁止进一步编程。如果所述所选择的存储器单元尚未达到其预期编程状态,那么可施加额外编程脉冲。如果所选择的存储器单元在特定数目(例如,最大数目)个编程脉冲之后未达到其预期编程状态,那么所选择的存储器单元或与此所选择的存储器单元相关联的串、块或页可经标记为有缺陷。

为擦除存储器单元或存储器单元群组(例如,通常以块或子块执行擦除),可将擦除电压(Vers)(例如,通常为Vpgm)施加到经标定用于擦除的存储器单元的衬底(及因此源极与漏极之间的沟道)(例如,使用一或多个位线、选择栅极等),而使标定存储器单元的字线保持于某一电势(例如接地电势(例如,Vss)),从而导致从标定存储器单元的浮动栅极到沟道的电荷转移(例如,直接注入或福勒-诺德汉(FN)穿隧等)。

图4说明存储器装置400的实例框图,存储器装置400包含具有多个存储器单元404的存储器阵列402及用以提供与存储器阵列402的通信或对存储器阵列402执行一或多个存储器操作的一或多个电路或组件。存储器装置400可包含行解码器412、列解码器414、感测放大器420、页缓冲器422、选择器424、输入/输出(I/O)电路426及存储器控制单元430。

存储器阵列402的存储器单元404可布置成块(例如第一块402A及第二块402B)。每一块可包含子块。例如,第一块402A可包含第一子块402A0及第二子块402An,且第二块402B可包含第一子块402B0及第二子块402Bn。每一子块可包含数个物理页,每一页包含数个存储器单元404。尽管本文中说明为具有两个块,每一块具有两个子块,且每一子块具有数个存储器单元404,但在其它实例中,存储器阵列402可包含更多或更少块、子块、存储器单元等。在其它实例中,存储器单元404可布置成数个行、列、页、子块、块等,且使用例如存取线406、第一数据线410或一或多个选择栅极、源极线等存取。

存储器控制单元430可根据在控制线432上接收的一或多个信号或指令(例如,包含指示所要操作(例如,写入、读取、擦除等)的一或多个时钟信号或控制信号)或在一或多个地址线416上接收的地址信号(A0到AX)来控制存储器装置400的存储器操作。在存储器装置400外部的一或多个装置可控制控制线432上的控制信号的值或地址线416上的地址信号。在存储器装置400外部的装置的实例可包含(但不限于)图4中未说明的主机、存储器控制器、处理器或一或多个电路或组件。

存储器装置400可使用存取线406及第一数据线410以将数据转移(例如,写入或擦除)到存储器单元404中的一或多者或从存储器单元404中的一或多者转移(例如,读取)数据。行解码器412及列解码器414可从地址线416接收及解码地址信号(A0到AX),可确定应存取的存储器单元404,且可提供信号到例如上文所描述的存取线406(例如,多个字线(WL0到WLm)中的一或多者)或第一数据线410(例如,多个位线(BL0到BLn)中的一或多者)中的一或多者。

存储器装置400可包含经配置以使用第一数据线410确定存储器单元404上的数据的值(例如,读取)或确定写入到存储器单元404的数据的值的感测电路系统(例如感测放大器420)。例如,在存储器单元404的所选择的串中,感测放大器420中的一或多者可响应于在存储器阵列402中流动通过所述所选择的串到数据线410的读取电流而读取所选择的存储器单元404中的逻辑电平。

在存储器装置400外部的一或多个装置可使用I/O线(DQ0到DQN)408、地址线416(A0到AX)或控制线432与存储器装置400通信。输入/输出(I/O)电路426可使用I/O线408根据例如控制线432及地址线416将数据值转移到存储器装置400中或从存储器装置400转移出数据值(例如转移到页缓冲器422或存储器阵列402中或从页缓冲器422或存储器阵列402转移出)。页缓冲器422可在将从存储器装置400外部的一或多个装置接收的数据编程到存储器阵列402的相关部分中之前存储所述数据,或可在将从存储器阵列402读取的数据传输到存储器装置400外部的一或多个装置之前存储所述数据。

列解码器414可接收地址信号(A0到AX)并将其解码成一或多个列选择信号(CSEL1到CSELn)。选择器424(例如,选择电路)可接收所述列选择信号(CSEL1到CSELn)且选择页缓冲器422中的表示将从存储器单元404读取或编程到存储器单元404中的数据的值的数据。所选择的数据可使用第二数据线418在页缓冲器422与I/O电路426之间转移。

存储器控制单元430可从外部源或供应器(例如,内部或外部电池、AC到DC转换器等)接收正及负供应信号,例如供应电压(Vcc)434及负供应(Vss)436(例如,接地电势)。在某些实例中,存储器控制单元430可包含在内部提供正或负供应信号的调节器428。

如先前描述,存储器装置的存储器单元可境布置为存储单个数据位(SLC)或多个数据位(MLC,包含每单元可存储两个数据位的单元,每单元可存储三个数据位的三电平单元(TLC),或更多)。如本文中使用,MLC用于指代MLC、TLC、QLC或更高位计数单元。在某些实例中,SLC单元可能比MLC单元更快且更稳健,但MLC单元可存储更多数据(例如,2或3个位对1个位)。作为SLC或MLC单元的存储器装置的单元的配置可在制造时固定,或在一些实例中,存储器装置的固件可具有在使用期间在SLC与MLC单元之间重新配置单元的能力。

虽然SLC NAND提供性能益处,但在某些实例中,仅使用SLC存储器单元制造容量适于用作存储装置的存储器装置是不具成本效益的。已开发的折衷解决方案是配置一些单元作为SLC且将单元的剩余者配置为MLC。数据首先被写入到SLC,且接着被转移到MLC。以此方式使用SLC单元可称为SLC高速缓存。此SLC高速缓存机构提供SLC存储器单元的速度与MLC存储器单元的存储容量之间的平衡。

最终,写入到SLC高速缓存的数据可填满SLC高速缓存。为了继续将SLC高速缓存的提高的性能用于新的要求,NAND存储器装置可将SLC中的数据移动到MLC/TLC。如何移动数据及何时移动数据的选择可具有严重的性能影响。举例来说,如果NAND较忙,那么移动数据所需的额外处理可减慢由主机通过主机接口请求的主机命令的执行。另外,作为电池供电计算装置(例如移动电话等)的部分的NAND装置具有严格电力目标。如果迁移被不适当地管理,那么所需的额外处理可消耗过多电力且将NAND装置置于其规定的电力极限之上。

在一些实例中揭示系统、方法、NAND存储器装置及用于智能SLC高速缓存迁移过程的机器可读媒体,所述智能SLC高速缓存迁移过程基于SLC高速缓存迁移配置文件中的一组规则将写入到SLC高速缓存的数据移动到MLC存储装置,所述一组规则是使用所述NAND装置的当前操作参数进行评估。在一些实例中,SLC高速缓存迁移过程可利用NAND操作参数以确定何时将写入到SLC高速缓存的数据移动到MLC、从SLC移动多少数据到MLC及用于移动所述数据的所述参数。

操作参数是NAND装置的当前操作状态中的一或多个测量。实例操作参数包含主机命令队列深度、NAND装置的温度、NAND装置的功耗、NAND装置的存储器配置、SLC高速缓存中的数据碎片化程度、MLC单元中的数据碎片化程度、SLC高速缓存的当前块擦除计数、MLC高速缓存中的当前块擦除计数、SLC高速缓存的当前写入放大因子(WAF)、MLC高速缓存的当前写入放大因子、NAND的功耗及类似物。

SLC高速缓存迁移配置文件中的规则可针对阈值评估这些操作参数中的一或多者以确定何时开始迁移、确定要迁移哪些数据、执行迁移的速度、确定是否终止迁移及类似物。

举例来说,SLC高速缓存迁移配置文件可指示:一或多个起始规则,其指定用于开始迁移过程的一或多个条件;源选择规则,其指定哪些SLC存储器单元被移动及源块之中的优先级;目标选择规则,其指定目标MLC单元;迁移参数规则,其包含用于迁移的规则,例如最大电力使用率、终止迁移过程的条件、以其执行迁移的速度及类似物。规则可呈if-then语句形式且可经嵌套使得规则可取决于前一规则的结果进行评估。实例规则可基于数据碎片化程度、当前块擦除计数、当前WAF、功耗及类似物。

用于起始迁移过程的实例条件可包含SLC高速缓存中的自由空间量、超过阈值的SLC高速缓存中的数据碎片化程度、MLC高速缓存中的空间量、低于特定阈值的MLC高速缓存中的碎片化程度。举例来说,如果请求的大小太大而不适合剩余连续SLC页面,那么较低自由空间量或较高SLC高速缓存碎片化程度可指示NAND可能开始在满足新的主机写入请求方面有困难。另一方面,如果在MLC存储装置中不存在足够的空间或如果MLC碎片化太高,那么即使SLC高速缓存空间是高度碎片化的或将耗尽空间,在MLC存储装置中也可能不存在用于来自SLC高速缓存的数据的空间且无法起始迁移。

用于起始规则中的其它实例操作参数可包含NAND空闲的指示及NAND装置的电力电平。举例来说,主机队列中的请求数目低于或等于阈值(所述阈值可能是零)。另外,在一些实例中,NAND可能具有NAND不可超过的电力极限,且如果当前电力电平超越阈值,那么可能不存在足够的电力来执行迁移。

实例源选择规则及排序规则可包含首先选择具有较少碎片化的块,可首先选取具有较高擦除计数的块作为源,及类似物。举例来说,通过选取具有较少碎片化的块作为SLC高速缓存源块,操作可避免使MLC存储器块碎片化或利用避免目的地碎片化的在电力及计算方面昂贵的途径。针对目的地块选择,实例规则将是选择具有较低擦除计数的块作为磨损均衡目的地中的块的途径。如受益于本发明的所属领域的一般技术人员应了解,SLC块可经复制到MLC中的新块,可经复制到MLC中的部分使用的块,或来自SLC高速缓存的一些页面及来自MLC块的一些页面可在MLC存储装置中组合成新块。被迁移的SLC页面可标记为无效,且如果SLC中的整个块是无效的(或可运行废弃项目收集过程以使整个块无效),那么其可被擦除且复位以准备用于新的数据。

如所提及,SLC高速缓存迁移配置文件可包含迁移参数,其包含参例如最大电力使用率、在完成之前终止迁移过程的条件、以其执行迁移的速度等的参数。实例包含功耗-例如,被移动的SLC块的量及移动SLC块的速率可受功耗限制。举例来说,NAND存储器装置可具有电力目标且SLC高速缓存迁移配置文件可具有公式,所述公式针对特定电力目标及特定当前操作电力指定块的数目及迁移块的速度。在一些实例中,迁移可由于当前操作功率而延迟。举例来说,如果迁移开始且主机命令传入,或控制器执行导致超过功率目标的其它活动,那么可暂停或停止迁移。

图5展示根据本发明的一些实例的NAND装置的操作方法500的流程图。在一些实例中,图5可由NAND控制器执行。在操作510处,NAND装置可从SLC高速缓存迁移配置文件检索起始规则。此可从NAND的存储器单元检索,可从固件中的操作代码检索(例如,规则可经硬编码到固件中),可从主机操作系统接收或类似者。举例来说,操作510可在固件对象被加载到NAND控制器的微处理器的易失性工作存储器到时执行。

如先前描述,迁移配置文件可含有指定迁移过程的运行操作条件的一或多个起始规则。在操作515处,NAND存储器装置可检索及/或确定用于评估在操作510处检索的SLC高速缓存配置文件中的起始规则的一或多个NAND操作特性。实例包含当前碎片化程度、当前块擦除计数、当前WAF、功耗及类似物。在一些实例中,操作条件包含命令队列的命令队列深度或NAND存储器装置是否是空闲的其它指示符。在一些实例中,SLC高速缓存迁移配置文件具有使用至少两种不同操作特性的至少两个起始规则。举例来说,指示NAND空闲的操作特性(例如,主机队列的队列深度)及第二操作特性(例如,当前碎片化程度)。在其它实例中,SLC高速缓存迁移配置文件具有两个以上规则。

在操作520处,NAND存储器装置可使用检索到的NAND操作条件评估SLC高速缓存迁移配置文件中的任何起始规则以确定是否满足高速缓存迁移配置文件中的规则(例如,传回应起始迁移的指示)。如果不满足规则,那么处理可终止。图5的处理可响应于特定事件(例如,堆叠深度是零)或类似者周期性地发生。在操作525处,如果满足规则,那么系统可开始将SLC高速缓存中的数据迁移到MLC/TLC存储器单元。

现转到图6,展示根据本发明的一些实例的执行迁移的方法600的流程图。在操作610处,NAND可检索迁移参数规则。同样,此可为来自NAND存储器的检索,或可为加载固件对象。在操作615处,NAND可检索NAND操作条件-例如,评估迁移参数规则所需的NAND操作条件。在操作620处,基于迁移参数规则的评估,NAND可确定迁移的迁移特性。举例来说,被移动的SLC块的数目、移动SLC块的速度、终止条件及类似者。

现转到图7,展示根据本发明的一些实例的执行迁移的方法700的流程图。在操作710处,可基于速度规则设置速率。举例来说,微处理器块速度可基于速度规则节制。操作710在图7中展示为任选的。在操作720处,第一页面的SLC单元经迁移到MLC。源SLC页面及目的地MLC页面可在针对NAND操作参数考虑源及目标选择规则之后选择。在操作725处,NAND操作参数可经检索,且在操作730处,终止规则可根据操作参数评估。如果迁移将继续,在操作735处,可引入延迟以节制所述速率来降低功耗。控制继续到处理下一SLC页面的操作720。

图8展示根据本发明的一些实例的控制器815的实例逻辑图。存储器控制器815可为图1的存储器控制器115的一个实例实施方案。存储器管理器825可为存储器管理器125的实例,表830可为表130的实例,控制器835可为控制器135的实例,且ECC 840可为ECC 140的实例。在一些实例中,存储器管理器825可包含迁移器837。迁移器837可使用SLC高速缓存迁移配置文件834及一或多个NAND操作参数确定何时起始将SLC高速缓存中的存储器迁移到MLC存储器单元、要利用哪些源单元、要利用哪些目的地单元及各种迁移参数。实例迁移参数包含最大电力使用率、在完成之前终止迁移的条件、执行迁移的速度及类似者。举例来说,迁移器837可实施图5到7的方法。

图9说明其上可执行本文中所论述的技术(例如,方法论)中的任一者或多者的实例机器900的框图。在替代性实施例中,机器900可作为独立装置操作或可连接(例如,联网)到其它机器。在联网部署中,机器900可作为主从式网络环境中的服务器机器或客户端机器或两者而操作。在实例中,机器900可充当对等(P2P)(或其它分布式)网络环境中的对等机器。机器900可为个人计算机(PC)、平板计算机PC、机顶盒(STB)、个人数字助理(PDA)、移动电话、网络设备、IoT装置、汽车系统,或能够(循序或以其它方式)执行指定由所述机器所采取的动作的指令的任何机器。此外,虽然仅说明单个机器,但术语“机器”还应被视为包含个别或联合执行一(或多个)指令集以执行本文中所论述的方法论中的任一者或多者(例如云计算、软件即服务(SaaS)、其它计算机集群配置)的机器的任何集合。

如本文中所描述,实例可包含逻辑、组件、装置、封装或机构,或可通过逻辑、组件、装置、封装或机构操作。电路系统是在包含硬件(例如,简单电路、门、逻辑等)的有形实体中实施的电路集合(例如,一组电路)。电路系统成员资格可随着时间及基础硬件可变性而灵活。电路系统包含在操作时可单独或组合地执行特定任务的成员。在实例中,电路系统的硬件可经恒定地设计以实行特定操作(例如,硬接线)。在实例中,电路系统的硬件可包含可变连接的物理组件(例如,执行单元、晶体管、简单电路等),包含物理上经修改(例如,不变质量的粒子磁性、电、可移动放置等)以编码所述特定操作的指令的计算机可读媒体。在连接物理组件中,硬件构成的基础电性质例如从绝缘体改变到导体或反之亦然。指令使参与硬件(例如,执行单元或负载机构)能够经由可变连接产生硬件中的电路系统的成员以在操作中实行特定任务的部分。因此,当装置操作时,计算机可读媒体通信地耦合到电路系统的其它组件。在实例中,物理组件中的任一者可用于一个以上电路系统的一个以上成员中。例如,在操作下,执行单元可在一个时间点用于第一电路系统的第一电路中且在不同时间由第一电路系统中的第二电路或由第二电路系统中的第三电路重用。

机器(例如,计算机系统)900(例如,主机装置105、存储器装置110等)可包含硬件处理器902(例如,中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核心或其任何组合,例如存储器控制器115等)、主存储器904及静态存储器906,其中一些或全部可经由互连(例如,总线)908彼此通信。机器900可进一步包含显示器单元910、字母数字输入装置912(例如,键盘)及用户接口(UI)导航装置914(例如,鼠标)。在实例中,显示器单元910、输入装置912及UI导航装置914可为触摸屏显示器。机器900可另外包含存储装置(例如,驱动单元)916、信号产生装置918(例如,扬声器)、网络接口装置920及一或多个传感器916,例如全球定位系统(GPS)传感器、指南针、加速度计或其它传感器。机器900可包含输出控制器928,例如用以通信或控制一或多个外围装置(例如,打印机、读卡器等)的串行(例如,通用串行总线(USB))、并行、或其它有线或无线(例如,红外(IR)、近场通信(NFC)等)连接。

存储装置916可包含其上存储体现本文中所描述的技术或功能中的任一者或多者或由本文中所描述的技术或功能中的任一者或多者利用的一或多组数据结构或指令924(例如,软件)的机器可读媒体922。指令924还可完全或至少部分驻留于主存储器904内、静态存储器906内,或在所述指令由机器900执行期间驻留于硬件处理器902内。在实例中,硬件处理器902、主存储器904、静态存储器906或存储装置916中的一者或任何组合可构成机器可读媒体922。

虽然机器可读媒体922说明为单个媒体,但术语“机器可读媒体”可包含经配置以存储一或多个指令924的单个媒体或多个媒体(例如,集中式或分布式数据库或相关联高速缓存及服务器)。

术语“机器可读媒体”可包含能够存储、编码或载送由机器900执行的指令且引起机器900执行本发明的技术中的任一者或多者,或能够存储、编码或载送由此类指令使用或与此类指令相关联的数据结构的任何媒体。非限制性机器可读媒体实例可包含固态存储器以及光学及磁性媒体。在实例中,集结型(massed)机器可读媒体包括具有含不变(例如,静止)质量的多个粒子的机器可读媒体。因此,集结型机器可读媒体并非是暂时性传播信号。集结型机器可读媒体的特定实例可包含:非易失性存储器,例如半导体存储器装置(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))及快闪存储器装置;磁盘,例如内部硬盘及可抽换式磁盘;磁光盘;及CD-ROM及DVD-ROM磁盘。

指令924(例如,软件、程序、操作系统(OS)等)或其它数据经存储于存储装置921上,可由存储器904存取以供处理器902使用。存储器904(例如,DRAM)通常是快速但易失性的,且因此不同于存储装置921(例如,SSD)的存储类型,存储装置921适于长期存储(包含在“关闭”状态时)。由用户或机器900使用的指令924或数据通常加载于存储器904中以供处理器902使用。当存储器904已满时,可分配来自存储装置921的虚拟空间以补充存储器904;然而,因为存储921装置通常慢于存储器904,且写入速度通常是读取速度的至少1/2,所以使用虚拟存储器会归因于存储装置延时而大幅降低用户体验(相比于存储器904,例如,DRAM)。此外,将存储装置921用于虚拟存储器可大幅地缩减存储装置921的可用使用期限。

相比于虚拟存储器,虚拟存储器压缩(例如,核心特征“ZRAM”)使用存储器的部分作为经压缩块存储装置以避免分页到存储装置921。分页在经压缩块中发生直到必须将此数据写入到存储装置921。虚拟存储器压缩增加存储器904的可用大小,同时减少存储装置921上的损耗。

经优化用于移动电子装置或移动存储装置的存储装置通常包含MMC固态存储装置(例如,微型安全数字(microSDTM)卡等)。MMC装置包含具有主机装置的数个并行接口(例如,8位并行接口),且通常为可从所述主机装置卸除及分离的组件。相比来说,eMMCTM装置经附接到电路板且被视为主机装置的组件,所述组件具有匹敌基于串行ATATM(串行AT(高级技术)附接,或SATA)的SSD装置的读取速度。然而,对于移动装置性能的需求持续增加,例如完全启用虚拟或增强现实装置,利用增加的网络速度等。响应于此需求,存储装置已从并列通信接口转换到串行通信接口。通用快闪存储(UFS)装置(包含控制器及固件)使用具有专用读取/写入路径的低电压差分信令(LVDS)串行接口与主机装置通信,从而进一步提高更大读取/写入速度。

指令924可进一步通过通信网络926使用传输媒体经由利用数个转移协议中的任一者(例如,帧中继、因特网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本转移协议(HTTP)等)的网络接口装置920加以发射或接收。实例通信网络可包含局域网络(LAN)、广域网(WAN)、分组数据网络(例如,因特网)、移动电话网络(例如,蜂窝网络)、简易老式电话(POTS)网络及无线数据网络(例如,电气及电子工程师协会(IEEE)802.11系列标准(称为)、IEEE 802.16系列标准(称为)、IEEE 802.15.4系列标准、对等(P2P)网络,等等)。在实例中,网络接口装置920可包含一或多个物理插孔(例如,以太网络、同轴或电话插孔)或一或多个天线以连接到通信网络926。在实例中,网络接口装置920可包含多个天线以使用单输入多输出(SIMO)、多输入多输出(MIMO)或多输入单输出(MISO)技术中的至少一者进行无线通信。术语“传输媒体”应被视为包含能够存储、编码或载送由机器900执行的指令的任何无形媒体,且包含促进此软件的通信的数字或模拟通信信号或其它无形媒体。

上文实施方式包含对形成实施方式的一部分的附图的参考。图式通过说明的方式展示可实践本发明的特定实施例。这些实施例在本文中还称为“实例”。此类实例可包含除所展示或所描述元件之外的元件。然而,本发明人还预期其中仅提供那些所展示或所描述元件的实例。此外,本发明人还预期使用关于特定实例(或其一或多个方面)或关于本文中所展示或所描述的其它实例(或其一或多个方面)所展示或所描述的那些元件的任何组合或排列的实例(或其一或多个方面)。

在本文档中,在专利文档中常使用术语“一(a或an)”来包含一个或一个以上,其独立于“至少一个”或“一或多个”的任何其它例子或使用。在本文档中,使用术语“或”指代非排他性“或”,使得“A或B”包含“A但非B”、“B但非A”及“A及B”,除非另有指示。在所附权利要求书中,术语“包含”及“其中(in which)”用作相应术语“包括”及“其中(wherein)”的普通英语等效形式。此外,在以下权利要求书中,术语“包含”及“包括”是开放式的,即,在权利要求中除列于此术语之后的那些元件之外还包含若干元件的系统、装置、对象、或过程仍被视为在那个权利要求的范围内。此外,在以下权利要求书中,术语“第一”、“第二”及“第三”等仅用作标签,并不希望对其对象强加数值要求。

在各个实例中,本文中所描述的组件、控制器、处理器、单元、引擎或表可尤其包含存储于物理装置上的物理电路系统或固件。如本文中所使用,“处理器”意味着任何类型的计算电路,例如(但不限于)微处理器、微控制器、图形处理器、数字信号处理器(DSP),或任何其它类型的处理器或处理电路(包含处理器群组或多核心装置)。

如此文档中所使用的术语“水平”定义为平行于衬底的常规平面或表面的平面(例如下伏于晶片或裸片的平面),而与所述衬底在任何时间点的实际定向无关。术语“垂直”指代垂直于如上文所定义的水平的方向。介词(例如“在…上”、“在…上方”及“在…下方”)是相对于常规平面或表面定义为在衬底的顶部或经暴露表面上,而与衬底的定向无关;而“在...上”希望表明一个结构相对于所述结构位于其“上”的另一结构的直接接触(在没有明确相反指示的情况下);术语“在...上方”及“在...下方”明确地希望识别结构(或层、特征等)的相对放置,其明确地包含(但不限于)经识别结构之间的直接接触,除非明确识别。类似地,术语“在...上方”及“在...下方”不限于水平定向,由于如果在某个时间点是在所论述的结构的最外部分,那么结构可在参考结构“上方”,即使此结构相对于参考结构而垂直地延伸,而不是在水平定向上延伸。

术语“晶片”及“衬底”在本文中通常用于指代其上形成集成电路的任何结构,且也指代在集成电路制造的各个阶段期间的此类结构。因此,以下详细描述不应被视为限制意义,且各个实施例的范围仅由所附权利要求书以及此类权利要求所授权的等效物的全范围而定义。

根据本发明及本文中所描述的各个实施例包含利用存储器单元的垂直结构(例如,NAND存储器单元串)的存储器。如本文中所使用,方向性形容词将被视为相对于其上形成存储器单元的衬底的表面(即,垂直结构将被视为延伸远离衬底表面,垂直结构的底端将被视为最靠近衬底表面的端部且所述垂直结构的顶端将被视为最远离衬底表面的端部)。

如本文中所使用,方向性形容词(例如水平、垂直、法向、平行、垂直等)可指代相对定向,且除非另有说明,否则并不希望要求严格遵守特定几何性质。例如,如本文中所使用,垂直结构不需要严格地垂直于衬底的表面,但可代替性地大体上垂直于所述衬底的所述表面,且可与所述衬底的所述表面形成锐角(例如,在60度与120度之间等)。

在本文中所描述的一些实施例中,不同掺杂配置可应用于源极侧选择栅极(SGS)、控制栅极(CG)及漏极侧选择栅极(SGD),其中的每一者在此实例中可由多晶硅形成或至少包含多晶硅,结果使得这些层(例如,多晶硅等)可在暴露到蚀刻溶液时具有不同蚀刻率。例如,在3D半导体装置中形成单体柱的过程中,SGS及CG可形成凹部,而SGD可保持较少凹入或甚至未凹入。这些掺杂配置可因此通过使用蚀刻溶液(例如,氢氧化四甲基铵(TMCH))实现选择性蚀刻到所述3D半导体装置中的相异层(例如,SGS、CG及SGD)中。

如本文中所使用,操作存储器单元包含从所述存储器单元读取、写入到所述存储器单元或擦除所述存储器单元。将存储器单元放置于预期状态中的操作在本文中被称为“编程”,且可包含写入到所述存储器单元或从所述存储器单元擦除两者(例如,所述存储器单元可经编程到经擦除状态)。

根据本发明的一或多个实施例,定位于存储器装置内部或外部的存储器控制器(例如,处理器、控制器、固件等)能够确定(例如,选择、设置、调整、计算、改变、清除、通信、调适、导出、定义、利用、修改、应用等)损耗循环的数量或损耗状态(例如,记录损耗循环、计数存储器装置的操作(在其发生时)、跟踪其起始的存储器装置的操作、评估对应于损耗状态的存储器装置特性等)。

根据本发明的一或多个实施例,存储器存取装置可经配置以用每一存储器操作提供损耗循环信息到存储器装置。存储器装置控制电路系统(例如,控制逻辑)可经编程以补偿对应于损耗循环信息的存储器装置性能变化。存储器装置可接收损耗循环信息且响应于损耗循环信息确定一或多个操作参数(例如,值、特性)。

将理解,当元件被称为在另一元件“上”、“连接到”另一元件或与另一元件“耦合”时,其可直接在所述另一元件上、连接到所述另一元件或与所述另一元件耦合或可存在中介元件。相比来说,当元件被称为“直接在另一元件上”、“直接连接到”另一元件或“直接与另一元件耦合”时,不存在中介元件或层。除非另有指示,否则如果两个元件在图式中展示为用线连接它们,那么所述两个元件可耦合或直接耦合。

本文中所描述的方法实例可至少部分经机器或计算机实施。一些实例可包含用可操作以配置电子装置以执行如上文实例中所描述的方法的指令编码的计算机可读媒体或机器可读媒体。此类方法的实施方案可包含代码,例如微代码、汇编语言代码、高级语言代码或类似物。此代码可包含用于执行各种方法的计算机可读指令。所述代码可形成计算机程序产品的部分。此外,代码可有形地存储于一或多个易失性或非易失性有形计算机可读媒体上(例如在执行期间或在其它时间)。这些有形计算机可读媒体的实例可包含(但不限于):硬盘、可卸除式磁盘、可卸除式光学磁盘(例如,光盘及数字视频磁盘)、卡式磁带、存储器卡或棒、随机存取存储器(RAM)、只读存储器(ROM)、固态驱动器(SSD)、通用快闪存储(UFS)装置、嵌入式MMC(eMMC)装置及类似物。

上文描述希望是说明性的且非限制性的。举例来说,上述实例(或其一或多个方面)可与彼此组合使用。一旦审阅上文描述,其它实施例就可例如由所属领域的一般技术人员使用。应理解,其将不用于解译或限制权利要求书的范围或意义。此外,在上文具体实施方式中,各种特征可分组在一起以简化本发明。此应被解译为希望未主张的揭示的特征对任一权利要求是至关重要的。确切来说,发明标的物可在于少于揭示的特定实施的所有特征。因此,所附权利要求书特此并入到具体实施方式中,其中每一权利要求自身独立作为单独实施例,且预期此类实施例可与彼此组合于各种组合或排列中。本发明的范围应参考所附权利要求书与此类权利要求被授权的等效物的完整范围一起确定。

其它注释及实例

实例1是一种操作NAND装置的方法,所述方法包括:在NAND控制器处:检索SLC高速缓存迁移配置文件,所述SLC高速缓存迁移配置文件包含用于起始存储于SLC高速缓存中的数据到MLC存储器单元的迁移的第一及第二起始规则,所述第一及第二规则包括以下各者中的一者:空闲规则、数据碎片化规则、当前块擦除计数、当前写入放大因子(WAF)或功耗水平规则,其中所述第一规则不同于所述第二规则;检索由所述第一规则指定的第一NAND操作条件,且确定所述第一NAND操作条件满足所述第一规则;检索由所述第二规则指定的第二NAND操作条件,且确定所述第二NAND操作条件满足所述第二规则;响应于满足所述第一及第二规则,将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元。

在实例2中,实例1的标的物任选地包含:其中所述SLC高速缓存迁移配置文件包含终止条件,且其中将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元包括:确定满足所述终止条件,所述终止条件对应于NAND操作条件;及响应于满足所述终止条件,终止所述迁移,其中所述终止条件不是所述迁移的完成。

在实例3中,实例2的标的物任选地包含:其中所述终止条件是电力使用率。

在实例4中,实例1到3中任一或多者的标的物任选地包含:跨主机接口从主机装置接收所述SLC高速缓存迁移配置文件。

在实例5中,实例1到4中任一或多者的标的物任选地包含:基于所述SLC迁移配置文件确定用于所述迁移操作的速率,且其中将存储于所述SLC高速缓存中的数据的至少所述部分迁移到所述NAND的MLC存储器单元包括以所述速率将存储于所述SLC高速缓存中的数据的所述至少所述部分迁移到所述NAND的MLC存储器单元。

在实例6中,实例1到5中任一或多者的标的物任选地包含:对存储迁移到MLC存储器单元的数据的SLC存储器单元进行废弃项目收集。

在实例7中,实例1到6中任一或多者的标的物任选地包含:其中将存储于SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元包括从所述SLC迁移配置文件确定迁移参数规则。

在实例8中,实例7的标的物任选地包含:其中所述迁移参数规则包含取决于所述NAND装置的操作参数确定所述迁移的速度的规则。

实例9是一种包括指令的机器可读媒体,所述指令在由机器执行时致使所述机器执行包括以下各者的操作:检索SLC高速缓存迁移配置文件,所述SLC高速缓存迁移配置文件包含用于起始存储于NAND存储器装置的SLC高速缓存中的数据到MLC存储器单元的迁移的第一及第二起始规则,所述第一及第二规则包括以下各者中的一者:空闲规则、数据碎片化规则、当前块擦除计数、当前写入放大因子(WAF)或功耗水平规则,其中所述第一规则不同于所述第二规则;检索由所述第一规则指定的第一NAND操作条件,且确定所述第一NAND操作条件满足所述第一规则;检索由所述第二规则指定的第二NAND操作条件,且确定所述第二NAND操作条件满足所述第二规则;响应于满足所述第一及第二规则,将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元。

在实例10中,实例9的标的物任选地包含:其中所述SLC高速缓存迁移配置文件包含终止条件,且其中将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元包括:确定满足所述终止条件,所述终止条件对应于NAND操作条件;及响应于满足所述终止条件,终止所述迁移,其中所述终止条件不是所述迁移的完成。

在实例11中,实例10的标的物任选地包含:其中所述终止条件是电力使用率。

在实例12中,实例9到11中任一或多者的标的物任选地包含:其中所述操作进一步包括:跨主机接口从主机装置接收所述SLC高速缓存迁移配置文件。

在实例13中,实例9到12中任一或多者的标的物任选地包含:其中所述操作进一步包括:基于所述SLC迁移配置文件确定用于所述迁移操作的速率,且其中将存储于所述SLC高速缓存中的数据的至少所述部分迁移到所述NAND的MLC存储器单元包括以所述速率将存储于所述SLC高速缓存中的数据的所述至少所述部分迁移到所述NAND的MLC存储器单元。

在实例14中,实例9到13中任一或多者的标的物任选地包含:其中所述操作进一步包括:对存储迁移到MLC存储器单元的数据的SLC存储器单元进行废弃项目收集。

在实例15中,实例9到14中任一或多者的标的物任选地包含:其中将存储于SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元的所述操作包括从所述SLC迁移配置文件确定迁移参数规则。

在实例16中,实例15的标的物任选地包含:其中所述迁移参数规则包含取决于所述NAND装置的操作参数确定所述迁移的速度的规则。

实例17是一种NAND装置,其包括:控制器,其经配置以执行包括以下各者的操作:检索SLC高速缓存迁移配置文件,所述SLC高速缓存迁移配置文件包含用于起始存储于NAND存储器装置的SLC高速缓存中的数据到MLC存储器单元的迁移的第一及第二起始规则,所述第一及第二规则包括以下各者中的一者:空闲规则、数据碎片化规则、当前块擦除计数、当前写入放大因子(WAF)或功耗水平规则,其中所述第一规则不同于所述第二规则;检索由所述第一规则指定的第一NAND操作条件,且确定所述第一NAND操作条件满足所述第一规则;检索由所述第二规则指定的第二NAND操作条件,且确定所述第二NAND操作条件满足所述第二规则;响应于满足所述第一及第二规则,将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元。

在实例18中,实例17的标的物任选地包含:其中所述SLC高速缓存迁移配置文件包含终止条件,且其中将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元包括:确定满足所述终止条件,所述终止条件对应于NAND操作条件;及响应于满足所述终止条件,终止所述迁移,其中所述终止条件不是所述迁移的完成。

在实例19中,实例18的标的物任选地包含:其中所述终止条件是电力使用率。

在实例20中,实例17到19中任一或多者的标的物任选地包含:其中所述操作进一步包括:跨主机接口从主机装置接收所述SLC高速缓存迁移配置文件。

在实例21中,实例17到20中任一或多者的标的物任选地包含:其中所述操作进一步包括:基于所述SLC迁移配置文件确定用于所述迁移操作的速率,且其中将存储于所述SLC高速缓存中的数据的至少所述部分迁移到所述NAND装置的MLC存储器单元包括以所述速率将存储于所述SLC高速缓存中的数据的所述至少所述部分迁移到所述NAND的MLC存储器单元。

在实例22中,实例17到21中任一或多者的标的物任选地包含:其中所述操作进一步包括:对存储迁移到MLC存储器单元的数据的SLC存储器单元进行废弃项目收集。

在实例23中,实例17到22中任一或多者的标的物任选地包含:其中将存储于SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元的所述操作包括从所述SLC迁移配置文件确定迁移参数规则。

在实例24中,实例23的标的物任选地包含:其中所述迁移参数规则包含取决于所述NAND装置的操作参数确定所述迁移的速度的规则。

实例25是一种操作NAND装置的装置,所述装置包括:NAND控制器;用于检索SLC高速缓存迁移配置文件的构件,所述SLC高速缓存迁移配置文件包含用于起始存储于NAND存储器装置的SLC高速缓存中的数据到MLC存储器单元的迁移的第一及第二起始规则,所述第一及第二规则包括以下各者中的一者:空闲规则、数据碎片化规则、当前块擦除计数、当前写入放大因子(WAF)或功耗水平规则,其中所述第一规则不同于所述第二规则;用于检索由所述第一规则指定的第一NAND操作条件且确定所述第一NAND操作条件满足所述第一规则的构件;用于检索由所述第二规则指定的第二NAND操作条件且确定所述第二NAND操作条件满足所述第二规则的构件;用于响应于满足所述第一及第二规则将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元的构件。

在实例26中,实例25的标的物任选地包含:其中所述SLC高速缓存迁移配置文件包含终止条件,且其中用于将存储于所述SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元的构件包括:用于确定满足所述终止条件的构件,所述终止条件对应于NAND操作条件;及响应于满足所述终止条件,用于终止所述迁移的构件,其中所述终止条件不是所述迁移的完成。

在实例27中,实例26的标的物任选地包含:其中所述终止条件是电力使用率。

在实例28中,实例25到27中任一或多者的标的物任选地包含:用于跨主机接口从主机装置接收所述SLC高速缓存迁移配置文件的构件。

在实例29中,实例25到28中任一或多者的标的物任选地包含:用于基于所述SLC迁移配置文件确定用于所述迁移操作的速率的构件,且其中将存储于所述SLC高速缓存中的数据的至少所述部分迁移到所述NAND装置的MLC存储器单元包括用于以所述速率将存储于所述SLC高速缓存中的数据的所述至少所述部分迁移到所述NAND的MLC存储器单元的构件。

在实例30中,实例25到29中任一或多者的标的物任选地包含:用于对存储迁移到MLC存储器单元的数据的SLC存储器单元进行废弃项目收集的构件。

在实例31中,实例25到30中任一或多者的标的物任选地包含:其中将存储于SLC高速缓存中的数据的至少一部分迁移到所述NAND装置的MLC存储器单元包括用于从所述SLC迁移配置文件确定迁移参数规则的构件。

在实例32中,实例31的标的物任选地包含:其中所述迁移参数规则包含取决于所述NAND装置的操作参数确定所述迁移的速度的规则。

31页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:动态L2P高速缓存

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类