在固态存储设备(102)中有效地管理命令,固态存储设备(102)包括布置在两个或更多个内存库(214)中的固态存储器(110)。每个内存库(214)可独立访问并包括两个或更多个通过存储输入/输出总线(210)对等访问的固态存储元件(216、218、220)。固态存储器(110)包括固态的、非易失性的存储器。固态存储设备(102)包括将一条或多条命令传送给两个或更多个队列的内存库交错控制器(324),其中,所述一条或多条命令根据命令类型被分发到所述队列中。每个内存库在所述内存库交错控制器中包括队列集。每个队列集包括用于每个命令类型的队列。内存库交错控制器(324)在所述内存库之间协调存储在所述队列中的命令的执行,其中,第一类型的命令在一个内存库(214a)上执行而第二类型的命令在第二内存库(214b-n)上执行。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及固态存储器,更具体地,本专利技术涉及在固态存储器中利用内存库交错控制器有效地管理命令的执行。
技术介绍
由于在特定位置存取的数据可以被修改,然后被放回同一位置,所以数据存储设备通常是随机存取设备。可分割文件或对象,并将其分块地放入数诸如硬盘驱动器("HDD")的设备是行之有效的,然而对于固态存储器,随机存取可能效率低下并且可导致过早损坏。对固态存储器采用随机存取可能效率低下,这是因为通常情况下,写入数据常常比读取数据需要更长的时间。对于闪存(一种类型的固态存储器),通常,将一位从"O"状态("0")改变为"l"状态(T)比将一位从l改为O需要单元中,0等同于单元中的放电的电容器,而l等同于单元中的充电的电容器。通常,给电容器充电比给电容器放电需要更长的时间。对固态存储器采用随机存取可导致固态存储器的过早损坏,这是因为通常情况下,固态存储设备中的每个单元仅能写入一定的次数,然后单元就会开始失效。随机存取通常不在固态存储器中均衡地分配写入数据,所以一些区域或地址比其他区域更加频繁地被使用。 一些区域的过度使用可导致固态存储设备的整体或部分过早损坏。传统的随机存取和与随机存取和其他传统存储有关的其他结合数据管理技术的数据处理技术阻止了固态存储器达到更高的性能。
技术实现思路
如上所述,显而易见,存在有效地管理固态存储设备的命令的装置、系统和方法的需求。有利地是,这种装置、系统和方法可为固态存储设备中的每个内存库排列命令并协调所述命令的执行。本专利技术是针对现有技术的现况开发出来的,具体地,是针对现有技术中通过现有的固态存储器并未完全解决的问题和需要。因此,本专利技术已经被开发出来以提供克服现有技术中的上述多数或全部缺陷的利用内存库交错有效地管理固态存储器的命令的装置、系统及方法。管理固态存储设备的命令的装置(包括固态存储设备)具有多个配置成功能性地执行下述必要步骤的模块和硬件将命令传送给用于固态存储设备的每个内存库的队列以及协调所述命令的执行。在描述的实施方式中的所述固态存储设备包括布置在两个或更多个内存库中的固态存储器,每个内存库可独立访问,并且每个内存库包括通过存储输入/输出("I/O")总线对等访问的两个或更多个固态存储元件。所述固态存储器包括固态的、非易失性的存储器。所述固态存储设备包括内存库交错控制器。该内存库交错控制器将一条或多条命令传给两个或更多个队列。所述一条或多条命令根据对象类型被分发到所述队列中。每个内存库在所述内存库交错控制器中包括队列集。每个队列集包括用于每个命令类型的队列。所述内存库交错控制器在所述内存库之间协调存储在所述队列中的命令的执行,其中,第一类型的命令在一个内存库上执行而第二类型的命令在第二内存库上执行。在一种实施方式中,用于内存库的所述队列集包括存储读取命令的读取队列、存储写入命令的写入队列、存储擦除命令的擦除队列及存储管理命令的管理队列,其中,所述命令类型至少包括读取命令、写入命令和擦除命令。在另一种实施方式中,读取命令从所述固态存储器的页内的某个位置读取数据;写入命令将数据写入存储写入緩沖器,所述存储写入緩沖器位于所述固态存储器内并包括为响应程序命令和擦除命令而传送给所述固态存储器中的指定页的数据,所述程序命令将所述存储写入缓冲器内的数据编入所述指定页,所述擦除命令将擦除块中的数据擦除,擦除块包括所述固态存储器中的多个页。在一种实施方式中,所述命令类型还包括复位内存库的复位命令和读取内存库的配置寄存器的读取配置寄存器命令。所述复位命令和所述读取配置寄存器命令存储在每个内存库中的所述管理队列中。在另一种实施方式中,队列中的命令的执行相协调。在一种实施方式中,所述固态存储设备包括用于每个内存库的内存库控制器,其中,用于一个内存库的内存库控制器接收和解释来自所述内存库的队列的命令并根据接收到的命令创建一个或多个子命令。所述一个或多个子命令包括针对所述内存库的命令。在这种实施方式中,所述固态存储设备还包括总线仲裁器,该总线仲裁器协调所述子指令的执行。在另一种实施方式中,所述内存库交错控制器利用预定的命令和子命令的命令执行时间信息和接收自所述固态存储器的状态信息来预测和验证命令完成,所述预测和验证命令完成作为协调存储在所述队列集中的命令的执行的一部分。在一种实施方式中,所述内存库交错控制器在将所述数据包和写入命令经由存储输入/输出("I/O")总线发送给所述固态存储器之前,将存储在写入緩冲器中的一个或多个数据包与写入命令结合起来,并且接收一个或多个数据包和相应的状态和管理数据,并将读取自所述固态存储器的所述数据包传送给读取緩沖器,而把所述相应的状态和管理数据传送给管理緩冲器。在一种实施方式中,所述内存库交错控制器在两个或更多个内存库中协调读取命令、写入命令和擦除命令的执行,所述读取命令、写入命令和擦除命令存储在用于每个内存库的所迷队列集中,从而使得当在一个内存库中执行完读取命令、写入命令或擦除命令时,另一条读取命令、写入命令或擦除命令被发送给所述内存库。在另一种实施方式中,所述存储I/O总线为异步总线,并传送包括控制信息和数据的数据包。在另一种实施方式中,所述固态存储设备进一步包括控制器,该控制器具有写入数据管道和读取数据管道。所述内存库交错控制器使读数据过程和写数据过程与所述读取数据管道和所述写入数据管道相协调。在不同的实施方式中,所述固态存储设备可配置在双列直插式内存模块("DIMM,,)、子卡、微型^t块等内。在其他实施方式中,所述固态存储设备的所述固态存储器可以是闪存、纳米随机存取存储器("纳米RAM"或者"NRAM,,)、磁电阻式RAM ( "MRAM")、动态RAM ( "DRAM")、相变RAM("PRAM")等。在又一种实施方式中,发送给所述固态存储器的命令是异步发送的。在一种实施方式中,所述两个或更多个固态存储元件在固态存储元件内的存储单元是通过逻辑地址访问的,该逻辑地址通过一个或多个存储单元的相应的物理地址映射到一个或多个存储单元。在这种实施方式中,所述固态存储设备包括重映射模块,该重映射模块将映射到第一物理地址的逻辑地址重新映射到第二物理地址,从而使得发送到由所述第一逻辑地址代表的存储单元的数据命令在重映射之前被传送给所述第一物理地址,而在重映射之后,所述数据命令^L传送给所述第二物理地址。在另 一种实施方式中,所述固态存储设备还包括可访问所述内存库交错控制器的写入緩冲器和位于所述固态存储器内的存储写入緩冲器,其中,所述写入緩冲器和所述存储写入緩冲器的容量与所述固态存储器内的页的容量相同或者比所述固态存储器内的页的容量大。在这种实施方式中,将要被写入所述固态存储器的数据存储在所述写入緩沖器内,所述内存库交错控制器在写操作期间将填充存储器页的数据段传送到所述存储写入緩沖器。为响应程序命令,位于所述存储写入緩沖器内的所述数据段随后被存储到所述固态存储器内的页。还提出了本专利技术的 一种系统,以利用内存库交错协调固态存储器中的命令。该系统可由下列设备实现计算机;系统总线;及固态存储设备,该固态存储设备经由所述系统总线与所述计算机通信以至少为数据读取和写入请求服务。具体地,在一种实施方式中,所述固态存储设备包括布置在两个或多个内存库中的固态存储器,每个内存本文档来自技高网...
【技术保护点】
一种固态存储设备,包括: 布置在两个或更多个内存库中的固态存储器,每个内存库可独立访问,并且每个内存库包括通过存储输入/输出(“I/O”)总线对等访问的两个或更多个固态存储元件,所述固态存储器包括固态的、非易失性的存储器;及 内 存库交错控制器,该内存库交错控制器实现如下功能:将一条或多条命令传给两个或更多个队列,所述一条或多条命令根据对象类型被分发到所述队列中,每个内存库在所述内存库交错控制器中包括队列集,每个队列集包括用于每个命令类型的队列;及在所述内存库之间协调存储在所述队列中的命令的执行,其中,第一类型的命令在一个内存库上执行而第二类型的命令在第二内存库上执行。
【技术特征摘要】
【国外来华专利技术】...
【专利技术属性】
技术研发人员:大卫弗林,伯特拉格斯特德特,约翰斯特拉瑟,乔纳森撒切尔,迈克尔扎佩,
申请(专利权)人:弗森多系统公司dba弗森艾奥,
类型:发明
国别省市:US[]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。