掌桥专利:专业的专利平台
掌桥专利
首页

本申请案主张2018年12月19日提交的第16/226,078号美国申请案的优先权权益,所述美国申请案以全文引用的方式并入本文中。

技术领域

本公开论述存储器技术,且更确切地说,用于检查包含主机常驻转换层的系统的存储器存取任务的有效性的技术。

背景技术

通常将存储器器件提供为计算机或其它电子器件中的内部半导体集成电路。存在许多不同类型的存储器,包含易失性和非易失性存储器。易失性存储器可能需要电力来维持数据且包含随机存取存储器(random-access memory;RAM)、动态随机存取存储器(dynamic random-access memory;DRAM)和同步动态随机存取存储器(synchronousdynamic random-access memory;SDRAM)等等。非易失性存储器可通过当未被供电时保持所存储的数据而提供持久的数据,且可包含NAND快闪存储器、NOR快闪存储器、只读存储器(ROM)、电可擦除可编程ROM(EEPROM)、可擦除可编程ROM(EPROM)和电阻可变存储器,例如相变随机存取存储器(PCRAM)、电阻性随机存取存储器(RRAM)和磁阻随机存取存储器(MRAM)、3D XPoint

存储器单元通常布置成矩阵或阵列。多个矩阵或阵列可组合成存储器器件,且多个器件可组合以形成存储器系统的存储容量,如固态驱动器(solid-state drive;SSD)、通用快闪存储(UFS

存储器系统可包含一或多个处理器或其它存储器控制器,用于执行逻辑函数以操作所述存储器器件或与外部系统介接。存储器矩阵或阵列可包含组织成数个物理页的数个存储器单元块。存储器系统可结合存储器操作从主机接收命令,所述存储器操作例如用以在存储器器件与主机之间传送数据(例如用户数据和相关联的完整性数据,例如误差数据和地址数据等)的读取或写入操作、用以从存储器器件擦除数据的擦除操作,或执行一或多个其它存储器操作。

利用存储器作为用于多种多样的电子应用的易失性和非易失性数据存储器件,所述电子应用包含例如个人计算机、便携式记忆棒、数码相机、蜂窝电话、便携式音乐播放器(例如MP3播放器)、电影播放器和其它电子器件。存储器单元可布置成阵列,其中阵列在存储器器件中使用。

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

发明内容

本文公开用于在主机常驻FTL操作模式期间,在存储器器件处检验主机所产生的物理地址,以减轻对所述存储器器件的错误或潜在恶意存取的器件和技术。

本发明内容旨在提供对本专利申请案的标的物的概述。它并非意在提供对本发明的排它性或穷尽性的解释。包含详细描述以提供关于本专利申请案的其它信息。

附图说明

在不一定按比例绘制的图式中,相似标号在不同视图中可描述类似组件。具有不同字母后缀的相似标号可表示类似组件的不同情况。图式借助于实例而非限制性地总体上说明本文件中所论述的各种实施例。

图1示出包含可在其上实施本发明标的物的一或多个实例的存储器器件的环境的实例系统。

图2大体上示出用于使用主机常驻FTL的方面在快闪存储器系统处实施存储器操作的实例方法的流程图。

图3大体上示出用于高效地监视和更新用于主机常驻FTL操作的主机映射表数据的实例方法的流程图。

图4示出实例机器的框图,本文中所论述的技术(例如,方法)中的任何一或多者可在所述实例机器上执行。

具体实施方式

基于快闪存储器的存储器件(例如NAND存储器)可使用快闪转换层(FlashTranslation Layer;FTL)将I/O请求的逻辑地址(通常称作逻辑块地址(logical blockaddress;LBA))转换成存储在一或多个FTL映射表中的对应快闪存储器地址。LBA可为供主机使用以用于管理数据的逻辑地址。移动存储器件通常具有大小受约束的高速缓存,并且因此常常缺乏存储器来存储整个映射表。因此,可按需求从快闪存储器检索映射表的部分,其可致使随机读取性能降级。

为了改进随机读取性能,本文中所描述的技术实现除耦合到主机的存储器器件的存储器单元之外的主机常驻存储器作为FTL映射表的高速缓存的使用。在主机常驻FTL下,从主机存储器读取FTL数据的速度比从快闪存储器读取FTL数据的速度快,并且主机可通过检索快闪存储器的物理地址(PA)且将PA包含在存储器请求中到快闪存储器来起始存储器操作。PA可由主机使用主机的FTL存储器缓存和主机的LBA来检索。在接收到存储器请求后,快闪存储器系统可立即检索与物理地址相关联的数据,而无与存取基于快闪存储器的映射表以及使用LBA来获得物理地址相关联的延迟。

在主机常驻FTL的某些实施方案中,随机读取工作负载性能的改进可为显著的。然而,本发明人已识别用于主机常驻FTL的技术,所述技术可帮助验证主机存储器请求的完整性,可帮助维持主机FTL表与实际快闪映射表之间的一致性,以及可在主机触发的存储器操作处于或接近空闲时,帮助提供对主机FTL表的及时更新。主机常驻FTL的直接实施方案可假定映射表在主机起始的操作之间保持准确。然而,连接到主机的存储器系统或存储器器件通常在主机起始的操作之间或在主机空闲的时间期间执行内务处理操作,例如垃圾收集和耗损均衡。内务处理操作在存储器器件处常驻的映射表周围移动数据,且常常修正和更新所述映射表。在不进行一些有效性检查的情况下,主机常驻FTL的直接实施,例如存储器系统盲目地使用主机提供的PA来存取快闪数据,可能常常导致存储器系统在错误的PA处存取快闪存储器。

图1示出包含被配置成经由通信接口进行通信的主机105和存储器器件110的环境100的实例。主机105或存储器器件110可包含于多种产品150中,如用以支持产品150的处理、通信或控制的IoT器件(例如,制冷机或其它电器、传感器、马达或致动器、移动通信器件、汽车、移动电话、无人机等)。

存储器器件110包含存储器控制器115和存储器阵列120,所述存储器阵列包含例如一或多个个别存储器裸片(例如,三维(3D)NAND裸片的堆叠)。在3D架构半导体存储器技术中,垂直结构以多个层次堆叠,且耦合以形成物理页,从而增大给定占用面积(即形状因子)中的存储器器件(例如,存储器件)的存储密度。在一实例中,存储器器件110可为离散存储器器件。

一或多个通信接口111可用来在存储器器件110与主机105的一或多个其它组件之间传送数据,例如串行高级技术附件(SATA)接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、UFS接口、eMMC

存储器控制器115可从主机105接收指令,并可与存储器阵列通信,例如将数据传送到存储器阵列的存储器单元、平面、子块、块或页中的一或多个(例如,写入或擦除)或传送来自前述各项的数据(例如,读取)。存储器控制器115可尤其包含电路系统或固件,包含一或多个组件或集成电路。举例来说,存储器控制器115可包含被配置成控制存储器阵列120上的存取且在主机105与存储器器件110之间提供转换层的一或多个存储器控制单元、电路、控制电路系统或组件。存储器控制器115可包含用以将数据传送到存储器阵列120或传送来自存储器阵列的数据的一或多个I/O电路(和对应锁存器)、高速缓存、线或接口。存储器控制器115可包含存储器管理器125和阵列控制器135。

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

阵列控制器135可包含错误校正码(ECC)组件140,所述ECC组件可尤其包含ECC引擎、或经配置以检测或校正与向耦合到存储器控制器115的存储器器件110的一或多个存储器单元写入数据或从中读取数据相关联的错误的其它电路系统。ECC组件140例如可检测或计算与执行多个存储器操作相关联的误码率(BER)。BER可对应于I/O总线的锁存器中出现的位错误、存储器控制器115的内部错误、NAND阵列中的一或多个或存储器器件110的一或多个多层级单元(multi-level cell;MLC)中的任何一或多个中出现的错误。存储器控制器115可被配置成有效地检测并从与各种操作或数据存储相关联的错误出现(例如,位错误、操作错误、崩溃条件、隔栏、挂断等等)恢复,同时维持在主机105与存储器器件110之间传送的数据的完整性、或维持所存储数据的完整性(例如,使用冗余RAID存储等等),并可移除(例如,退除)发生故障的存储器资源(例如,存储器单元、存储器阵列、页、块等等)以防止未来错误。阵列控制器135可将检测到的BER信息发射到存储器管理器125以进行存储和跟踪。存储器控制器115可包含跟踪从主机接收到的存储器命令的命令队列(未展示)。队列中的命令可以先进先出(a first-in first-out;FIFO)方式、堆叠方式、失序地、根据优先权或以任何其它适合的次序由存储器控制器115执行。

所描述的存储器器件110包含与存储器阵列120结合的密码学电路系统160。在某些实例中,密码学电路系统160可包含加密电路、解密电路,或其组合。在一些实施方案中,存储器器件110的存储器控制器115可包含经配置以实施密码学电路160的功能的控制电路系统。在其它实施方案中,密码学电路160可包含用于实施所描述功能性的独立控制电路系统。在又其它实施方案中,控制电路系统可在密码学电路160与存储器控制器115之间划分,以实施密码学电路160的所描述的功能。在所描绘的实例中,阵列控制器135形成存储器控制器115的一部分,且密码学电路160形成阵列控制器的一部分。在其它实施方案中,密码学电路160可为外部的,和/或在阵列控制器135之外。举例来说,密码学电路160(或其任何个别组件)可为耦合到环境100中的一或多个组件的独立组件。虽然物理上定位,但提供密码学电路160的额外功能性的结构用以检验主机105所提供的物理地址,以防止对存储器器件的错误或恶意存取,且为主机提供机会来刷新主机常驻映射表信息,以在环境100的主机常驻FTL操作期间,使映射信息与存储器器件的映射信息对准。

存储器管理器125可尤其包含电路系统或固件,如与各种存储器管理功能相关联的数个组件或集成电路。出于本发明描述的目的,将在NAND存储器的情形下描述实例存储器操作和管理功能。本领域的技术人员将认识到,其它形式的非易失性存储器可具有类似的存储器操作或管理功能。此类NAND管理功能包含耗损均衡(例如,垃圾收集或回收)、错误检测(例如,BER监控)或校正、块引退或一或多个其它存储器管理功能。存储器管理器125可将主机命令(例如,从主机接收到的命令)解析或格式化为器件命令(例如,与存储器阵列的操作相关联的命令等),或产生用于器件控制器135或存储器器件110的一或多个其它组件的器件命令(例如,以实现各种存储器管理功能)。

存储器管理器125可包含一组管理表130,所述管理表被配置成维持与存储器器件110的一或多个组件相关联的各种信息(例如,与耦合到存储器控制器115且可包含FTL表的存储器阵列或一或多个存储器单元相关联的各种信息)。举例来说,管理表130可包含关于耦合到存储器控制器115的一或多个存储器单元块的FTL映射信息、块使用期(block age)、块擦除计数、错误历史、错误参数信息、主机复位超时值、存储器操作命令等待时间或一或多个错误计数(例如,写入操作错误计数、读取位错误计数、读取操作错误计数、擦除错误计数等)的信息。在某些实例中,如果针对错误计数中的一或多个(例如,错误参数)检测到的错误的数目高于阈值(例如,可允许的错误阈值),那么位错误可称为不可校正的位错误。管理表130尤其可维持可校正或不可校正位错误的计数。

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

在操作中,数据通常以页写入到存储器器件110或从所述存储器器件读取,且以块擦除。然而,可视需要对存储器单元的更大或更小群组执行一或多个存储器操作(例如,读取、写入、擦除等)。存储器器件110的数据传送大小通常称为页,而主机的数据传送大小通常称为扇区。

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

图2大体上示出用于使用主机常驻FTL的方面在快闪存储器系统处实施存储器操作的实例方法200的流程图。在某些实例中,所述方法可帮助验证从主机接收到的物理地址对应于由主机提供的LBA。在没有某一形式的检验的情况下,恶意主机可提供LBA和不相关物理地址,其可导致存取非既定可由主机存取或非既定由主机使用在存储器系统处接收到的特定主机存储器请求存取的快闪存储器数据。在201处,存储器系统可在主机常驻FTL操作模式期间,接收包含LBA以及物理地址的表示的主机存储器请求。LBA表示主机的存储器系统内的存储器位置。物理地址表示快闪存储器系统的快闪存储器内的存储器位置。在主机常驻FTL操作模式之外,快闪存储器系统的存储器控制器可使用存储器控制器的高速缓冲存储器内的映射信息或使用快闪存储器系统的快闪存储器上所存储的完整映射表来定位映射接收到的LBA的物理地址。在主机常驻FTL操作模式期间,主机可提供与LBA相关联的所映射物理地址或其表示。在某些情形下,提供所映射物理地址可降低存储器控制器从快闪存储器系统的快闪存储器检索到存储器信息的频率。存取快闪存储器以检索存储器映射信息可显著降低主机的存储器操作的性能,因此,降低存储器控制器检索存储器映射信息的频率可显著增强主机的存储器请求的性能。

为了防止对存储器系统的快闪存储器的受限区域的非既定或恶意存取,在203处,可使用快闪存储器系统的密钥来对物理地址的表示进行解密。在某些实例中,快闪存储器系统可包含密码学电路。在某些实例中,密码学电路可以是存储器控制器的部分。密码学电路可在硬件、固件、软件或其组合中实施。

在205处,可将经解密的物理地址检验为快闪存储器系统针对存储器请求的有效物理地址。在某些实例中,检验可包含在存储器控制器的高速缓存中定位LBA,以及将经解密的物理地址与映射到LBA的物理地址进行比较。不管LBA是否位于存储器控制器的高速缓存内,存储器控制器均可将经解密的物理地址与包含不限于存储器请求的地址区的表进行比较,且检验经解密的物理地址处于所述地址区中的一者内。

在207处,当存储器控制器已检验到经解密的物理地址是存储器请求的有效物理地址时,存储器控制器可使用经解密的物理地址来执行存储器请求。当存储器控制器未能检验经解密的物理地址是存储器请求的有效物理地址时,存储器控制器不使用经解密的物理地址来执行存储器请求。

在209处,当存储器控制器未能检验到经解密的物理地址是存储器请求的有效物理地址时,存储器控制器不使用经解密的物理地址来执行存储器请求。在211处,存储器控制器可任选地将错误指示返回到主机。在213处,当存储器控制器未能检验到经解密的物理地址是存储器请求的有效物理地址时,存储器控制器可任选地使用存储且维持在快闪存储器系统的高速缓存或快闪存储器中的映射信息来检索与LBA相关联的正确物理地址,且接着在213处,使用所述正确的物理地址来执行存储器请求。在某些实例中,可将所述LBA检验为存储器系统处的有效LBA。此类检验可包含将接收到的LBA与有效LBA的表的条目进行比较。如果接收到的LBA与有效LBA的表的条目并不匹配,那么存储器控制器可忽略所述存储器请求,返回错误指示,或其组合。

在某些实例中,提供给主机以供在主机常驻FTL操作模式期间使用的映射信息是由存储器器件提供。在将映射信息提供给主机之前,快闪存储器系统的存储器控制器可对物理地址进行加密,且提供每一物理地址的经加密表示来代替实际物理地址。图3大体上示出用于将映射信息从快闪存储器系统提供到主机的实例方法300的流程图。存储器控制器可产生映射信息作为从主机接收到的存储器请求。所述映射信息可能相当大,使得其连同所存储数据存储在快闪存储器上。在某些实例中,映射信息可存储在表中,其中所述表中的记录包含与主机的存储器位置相关联的LBA,以及与映射到LBA的快闪存储器系统的存储器位置相关联的物理地址。在301处,存储器控制器,或存储器控制器的密码电路可接收映射表记录。映射表记录可包含LBA以及映射到所述LBA的快闪存储器系统的物理地址。在某些实例中,当主机作出快闪存储器系统的存储器请求时,存储器控制器将主机的每一LBA与快闪存储器系统的对应物理地址映射。

在301处,密码电路可接收映射信息,例如包含主机的LBA和映射到所述LBA的快闪存储器系统的物理地址的映射表的映射记录。密码电路可以是快闪存储器系统的部分。在一些实例中,密码电路可以是快闪存储器系统的存储器控制器的部分。在303处,密码电路可使用令牌将加密算法应用于物理地址。在某些实例中,可将所述令牌硬译码在快闪存储器系统的非易失性存储器中。加密算法的应用产生物理地址的经加密版本。在305处,可用物理地址的经加密版本来代替映射记录的物理地址。在307处,可将映射信息传送到主机,以供在包含主机和快闪存储器系统的系统的主机常驻FTL操作模式期间使用。映射信息可包含映射记录,其包含LBA以及到所述LBA的物理地址的对应经加密版本。

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

如本文所描述,实例可包含逻辑、组件、器件、封装或机构,或可通过逻辑、组件、器件、封装或机构来操作。电路系统为在包含硬件(例如,简单电路、栅极、逻辑等)的有形实体中实施的电路的总集(例如,集合)。电路系统成员可以随时间推移和基础硬件变化而为灵活的。电路包含当操作时可单独或组合地进行特定任务的部件。在实例中,可以不可改变地设计电路系统的硬件以进行特定操作(例如,硬连线)。在实例中,电路的硬件可包含可变连接的物理组件(例如,执行单元、晶体管、简单电路等),包含物理上经修改(例如,以磁性方式、以电学方式、恒定集结粒子的可移动放置等)以编码特定操作的指令的计算机可读媒体。在连接物理组件时,改变硬件组成部分的根本电性质,例如从绝缘体变为导体,或反之亦然。指令使得参与的硬件(例如,执行单元或加载机构)能够经由可变连接创建硬件中的电路系统部件,以当在操作中时实行特定任务的部分。因此,当器件操作时计算机可读媒体以通信方式耦合到电路系统的其它组件。在一实例中,物理组件中的任一个可用于超过一个电路中的超过一个部件中。举例来说,在操作下,执行单元可在一个时间点用于第一电路系统的第一电路,并且由第一电路系统中的第二电路重新使用,或在不同时间由第二电路系统中的第三电路重新使用。

机器(例如,计算机系统)400(例如,主机105、存储器器件110等)可包含处理器件402(例如,硬件处理器、中央处理单元(CPU)、图形处理单元(GPU)、硬件处理器核心或其任何组合,例如存储器器件110的存储器控制器等)、主存储器404(例如,只读存储器(ROM)、快闪存储器、动态随机存取存储器(DRAM),如同步DRAM(SDRAM)或Rambus DRAM(RDRAM)等)、静态存储器406(例如,快闪存储器、静态随机存取存储器(SRAM)等)以及数据存储系统418,其中的一些或全部可经由互连链路(interlink)(例如,总线)430彼此通信。

处理器件402可表示一或多个通用处理器件,例如微处理器、中央处理单元等。更特定来说,处理器件可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器或实施其它指令集的处理器,或实施指令集的组合的处理器。处理器件402也可为一或多个专用处理器件,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等。处理器件402可经配置以执行用于实施本文中所论述的操作和步骤的指令426。计算机系统400可进一步包含网络接口器件408以经由网络420通信。

数据存储系统418可包含机器可读存储媒体424(也称为计算机可读媒体),其上存储有一或多组指令426或体现本文中所描述的方法或功能中的任一或多种的软件。指令426还可在其由计算机系统400执行期间完全或至少部分地驻存在主存储器404内和/或处理器件402内,主存储器404和处理器件402也构成机器可读存储媒体。机器可读存储媒体424、数据存储系统418或主存储器404可对应于图1的存储器器件110。

在一个实施方案中,指令426包含用以实施对应于实施如上文关于图2或图3所论述的一或多个主机常驻FTL操作的功能性的指令。虽然机器可读存储媒体424在实例实施方案中示出为单个媒体,但术语“机器可读存储媒体”应认为包含存储一或多个指令集的单个媒体或多个媒体。术语“机器可读存储媒体”还应被认为包含能够存储或编码供机器执行的一组指令且致使机器执行本公开的方法中的任何一种或多种的任何媒体。因此将采用术语“计算机可读媒体”来包含但不限于固态存储器、光学媒体和磁性媒体。在一实例中,大容量机器可读媒体包括具有多个粒子的机器可读媒体,所述粒子具有不变(例如,静止)质量。因此,大容量机器可读媒体并非是暂时性传播信号。大容量机器可读媒体的特定实例可包含:非易失性存储器,例如半导体存储器器件(例如,电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))和快闪存储器器件;磁盘,例如内部硬盘和可拆卸磁盘;磁光盘;以及CD-ROM和DVD-ROM磁盘。

机器400可进一步包含显示单元、字母数字输入器件(例如,键盘)和用户接口(UI)导航器件(例如,鼠标)。在实例中,显示单元、输入器件或UI导航器件中的一或多个可以是触摸屏显示器。机器信号发生器件(例如,扬声器),或一或多个传感器,例如全球定位系统(GPS)传感器、指南针、加速度计或一或多个其它传感器。机器400可包含输出控制器,例如串行(例如,通用串行总线(USB)、并行或其它有线或无线(例如,红外(IR)、近场通信(NFC)等)连接以与一或多个外围器件(例如,打印机、读卡器等)通信或控制所述一或多个外围器件。

指令426(例如,软件、程序、操作系统(OS)等)或存储在数据存储器件418上的其它数据可由主存储器404存取以供处理器件402使用。主存储器404(例如,DRAM)通常是快速但易失性的,并且因此为与适合长期存储(包含在处于“关断”条件中时)的数据存储器件418(例如,SSD)不同类型的存储器件。供用户或机器400使用的指令426或数据通常加载在主存储器404中,以供处理器件402使用。在主存储器404已满时,可分配来自数据存储器件418的虚拟空间以补充主存储器404;然而,因为数据存储器件418器件通常比主存储器404慢,并且写入速度通常比读取速度慢至少两倍,所以虚拟存储器的使用归因于存储器件等待时间(相较于主存储器404,例如,DRAM)而可能极大地降低用户体验。另外,用于虚拟存储器的数据存储器件418的使用可能极大地减少数据存储器件418的可用使用寿命。

相比于虚拟存储器,虚拟存储器压缩(例如,

针对移动电子器件或移动存储器件而优化的存储器件传统上包含MMC固态存储器件(例如,微安全数字(microSD

可进一步利用数个传送协议中的任一个(例如,帧中继、因特网协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、超文本传送协议(HTTP)等)经由网络接口器件408使用传输媒体在网络420上发射或接收指令424。实例通信网络可包含局域网(LAN)、广域网(WAN)、分组数据网络(例如,因特网)、移动电话网络(例如,蜂窝式网络)、普通老式电话(POTS)网络,以及无线数据网络(例如,电气和电子工程师学会(IEEE)802.11系列标准,称为

额外注释和实例

实例1是一种方法,其包括:在存储器系统处接收来自主机的存储器请求,所述存储器请求包含与所述主机相关联的逻辑块地址(LBA)以及与所述存储器系统相关联的物理地址的第一表示;在解密电路处,使用所述存储器系统的密钥来解密所述物理地址的所述第一表示,以提供所述物理地址的第二表示;以及使用所述第二表示来执行所述存储器请求。

在实例2中,根据实例1所述的标的物,其中解密所述物理地址的所述第一表示包含使用所述密钥,将解密算法应用于所述第一表示,以提供所述第一表示的经解密表示。

在实例3中,根据实例2所述的标的物,其中解密所述物理地址的所述第一表示包含:确定所述经解密的表示是所述存储器系统的有效物理地址;以及将所述第二表示设定为等于所述物理地址的所述第一表示的所述经解密表示。

在实例4中,根据实例2到3中任一者所述的标的物,其中解密所述物理地址的所述第一表示包含:确定所述经解密的表示不是所述存储器系统的有效物理地址;使用存储器系统常驻映射信息来确定与从所述主机接收到的所述LBA相关联的所述存储器系统的正确物理地址;以及将所述第二表示设定为等于所述正确物理地址。

在实例5中,根据实例4所述的标的物,其中确定正确物理地址和设定所述第二表示包含搜索所述存储器系统的高速缓存来寻找所述LBA。

在实例6中,根据实例5所述的标的物,当所述LBA位于所述高速缓存中时,从所述高速缓存检索所述正确物理地址。

在实例7中,根据实例5到6中任一者所述的标的物,当所述LBA不位于所述高速缓存中时,检索从所述存储器系统的快闪存储器到所述高速缓存的包含所述LBA的映射信息。

在实例8中,根据实例1到7中任一者所述的标的物,其包含将所述物理地址映射到所述存储器系统处的逻辑块地址。

在实例9中,根据实例8所述的标的物,其包含在所述存储器系统处对所述物理地址进行加密以提供所述第一表示。

在实例10中,根据实例9所述的标的物,其包含将映射信息从所述存储器系统传送到所述主机,其中所述映射信息包含所述LBA以及所述物理地址的所述第一表示。

在实例11中,根据实例10所述的标的物,其中将映射信息从所述存储器系统传送到所述主机包含在存储器系统处接收到来自主机的存储器请求之前,将映射信息从所述存储器系统传送到所述主机。

实例12是一种存储器器件,其包括:高速缓存,其经配置以保持所述存储器器件的映射表的一部分;快闪存储器,其经配置以存储和检索主机的用户数据,且存储所述存储器器件的所述映射表;以及控制器,其经配置以:接收来自主机的存储器请求,所述存储器请求包含与所述主机相关联的逻辑块地址(LBA)以及与所述存储器器件相关联的物理地址的第一表示;在解密电路处,使用所述存储器器件的密钥来解密所述物理地址的所述第一表示,以提供所述物理地址的第二表示;以及使用所述第二表示来执行所述存储器请求。

在实例13中,根据实例12所述的标的物,其中所述控制器经配置以在接收到包含所述LBA和所述第一表示的所述存储器请求之前,在所述存储器器件处接收性能提升操作模式的指示。

在实例14中,根据实例12到13中任一者所述的标的物,其包含所述解密电路;且其中所述解密电路经配置以使用所述密钥将解密算法应用于所述第一表示,以提供所述第一表示的经解密表示。

在实例15中,根据实例14所述的标的物,其中所述控制器经配置以确定所述经解密表示是所述存储器器件的有效物理地址,且将所述第二表示设定为等于所述物理地址的所述第一表示的所述经解密表示。

在实例16中,根据实例14到15中任一者所述的标的物,其中所述控制器经配置以确定所述经解密表示不是所述存储器器件的有效物理地址,使用所述高速缓存或所述快闪存储器的映射信息来确定与从所述主机接收到的所述LBA相关联的所述存储器器件的正确物理地址,且将所述第二表示设定为等于所述正确物理地址。

在实例17中,根据实例16所述的标的物,其中所述控制器经配置以在所述经解密表示不是所述存储器器件的有效物理地址时,搜索所述存储器器件的高速缓存以寻找所述LBA。

在实例18中,根据实例17所述的标的物,其中当所述LBA位于所述高速缓存中时,所述控制器经配置以从所述高速缓存检索所述正确物理地址。

在实例19中,根据实例12到18中任一者所述的标的物,其中当所述LBA不位于所述高速缓存中时,所述控制器经配置以检索从所述快闪存储器到所述高速缓存的包含所述LBA的映射信息。

在实例20中,根据实例12到19中任一者所述的标的物,其中所述控制器经配置以将所述物理地址映射到所述逻辑块地址。

在实例21中,根据实例20所述的标的物,其中所述控制器包含加密电路,所述加密电路经配置以对所述物理地址进行加密以提供所述第一表示。

在实例22中,根据实例21所述的标的物,其中所述控制器经配置以将映射信息传送到所述主机,其中所述映射信息包含所述LBA以及所述物理地址的所述第一表示。

实例23是包含指令的至少一个机器可读媒体,所述指令当由处理电路系统执行时,致使所述处理电路系统进行操作以实施实例1到22中的任一者。

实例24是一种包括用以实施实例1到22中的任一者的构件的装置。

实例25是一种用以实施实例1到22中的任一者的系统。

实例26是一种实施实例1到22中的任一者的方法。

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

在本文献中,如专利文献中常见,使用术语“一”来包含一个或多于一个,这与“至少一个”或“一或多个”的任何其它例子或用途无关。在本文献中,使用术语“或”来指代非排它性或,使得除非另有指示,否则“A或B”可包含“A而非B”、“B而非A”以及“A和B”。在所附权利要求书中,术语“包含”和“在其中(in which)”用作相应术语“包括”和“其中(wherein)”的通俗等效术语。同样,在所附权利要求书中,术语“包含”和“包括”是开放式的。权利要求中除了此类术语之后列出的元件之外还包含元件的系统、器件、物品或过程仍视为属于所述权利要求的范围。此外,在所附权利要求书中,术语“第一”、“第二”和“第三”等仅用作标记,且无意对其对象强加数字要求。

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

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

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

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

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

以上描述既定是说明性的而非限制性的。举例来说,上文所描述的实例(或其一个或多个方面)可彼此组合使用。如所属领域的一般技术人员在查阅以上描述后可使用其它实施例。所述摘要在遵守以下理解的情况下提交:其将不会用于解释或限制权利要求的范围或含义。此外,在以上具体实施方式中,可将各种特征分组在一起以简化本公开。此情况不应解释为期望未要求的所公开特征对任何权利要求来说是必需的。实际上,发明标的物可在于比特定所公开实施例的所有特征要少。因此,特此将所附权利要求书并入到具体实施方式中,其中每一权利要求作为一单独实施例而独立存在,且预期此些实施例可以各种组合或排列彼此组合。本发明的范围应该通过参考所附的权利要求书以及所述权利要求书所授予的等效物的完整范围来确定。

相关技术
  • 主机常驻转换层有效性检查技术
  • 主机常驻转换层有效性检查技术
技术分类

06120113142912