CN104850355A - 存储装置、存储系统及存储装置的地址信息处理方法 - Google Patents
存储装置、存储系统及存储装置的地址信息处理方法 Download PDFInfo
- Publication number
- CN104850355A CN104850355A CN201410264006.XA CN201410264006A CN104850355A CN 104850355 A CN104850355 A CN 104850355A CN 201410264006 A CN201410264006 A CN 201410264006A CN 104850355 A CN104850355 A CN 104850355A
- Authority
- CN
- China
- Prior art keywords
- disk
- address information
- semiconductor memory
- host apparatus
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/217—Hybrid disk, e.g. using both magnetic and solid state storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/22—Employing cache memory using specific memory technology
- G06F2212/225—Hybrid cache memory, e.g. having both volatile and non-volatile portions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明是存储装置、存储系统及存储装置的地址信息处理方法。根据一个实施方式,存储装置包括磁盘与用作所述磁盘的高速缓存的半导体存储器及与主机装置的接口。接口构成为将来自主机装置的地址信息作为磁盘的地址信息或半导体存储器的地址信息来处理。
Description
本申请以美国临时专利申请61/940,061号(申请日:2014年2月14日)为基础并享受其优先权。本申请通过参照该在先申请而包括其全部内容。
技术领域
本发明涉及存储装置、存储系统及存储装置的地址信息处理方法。
背景技术
近年来,开发了在具备磁盘的硬盘驱动器(HDD)搭载了比磁盘高速、中或小容量、每位(比特)的单价高的半导体存储器的半导体混合驱动器(SSHD)。作为半导体存储器,例如,可使用NAND型闪存(以下称为NAND存储器)。
通过将NAND存储器用于SSHD内部的数据高速缓存用途,而可期待作为存储装置的性能提高。例如,存储装置通过自己解析、学习来自上位控制装置(主机装置)的逻辑区块地址(LOGITAL BLOCK ADDRESS)(LBA)的访问模式以将访问频率高的数据复制到NAND存储器来提高SSHD内部的高速缓存数据的命中率。
但是,例如,在企业市场使用的存储装置中的现状是,为了多种多样的应用工作,而不能适当地解析、学习LBA的访问模式,且不能保证在存储装置中必定获得所期待的性能。
发明内容
本发明提供能实现高性能化和高效化的存储系统。
实施方式的存储装置包括磁盘与用作所述磁盘的高速缓存的半导体存储器及与主机装置的接口。接口构成为将来自主机装置的地址信息作为磁盘的地址信息或半导体存储器的地址信息来处理。
附图说明
图1是表示使用实施例涉及的存储装置的系统构成的一例的框图。
图2是表示实施例涉及的存储装置的构成的一例的框图。
图3表示实施例涉及的SCSI的Read/Write命令的一例。
图4表示图3的Read/Write命令所形成的Read/Write动作的一例。
图5A、图5B表示实施例涉及的LBA分配方法的一例。
图6表示LBA分配用的命令的一例。
图7A表示接续图6的命令的域名(ヘッダ)的一例。
图7B表示接续图7A的域名的区块描述符的一例。
图7C表示接续图7B的区块描述符的页描述符的一例。
图8表示DRAM、NAND存储器的LBA分配的一例。
图9表示实施例涉及的地址空间指定的一例。
图10A、图10B表示存储装置的二重化的一例。
图11A、图11B表示存储装置的三重化的一例。
图12A、图12B表示地址空间的设定的一例。
具体实施方式
下面参照附图来描述多个实施例。
图1是表示使用实施例涉及的存储装置的系统构成的一例的框图。系统包括作为外部存储装置的多个SSHD161~16n。一个SSHD16包括DRAM(RAM盘)20、NAND存储器22、磁盘(HDD介质)(HDD Media)24这三种存储介质。DRAM20为容量小、高速、高价,用作磁盘24的一级高速缓存。NAND存储器22的容量、速度、价格为DRAM2020和磁盘24之间,用作磁盘24的二级高速缓存。例如,DRAM20为几十MB的容量,NAND存储器22为几十GB的容量,磁盘24为几百GB左右的容量。SSHD16是双端口,包括两个接口261、262。各SSHD161、162、···16n的接口分别与串列SCSI(Serial Attached SCSI(SAS)Expanders)141、142连接。
主机装置10与两个SAS控制器121、122连接。各SAS控制器121、122与串列SCSI141、142两者连接。这样,SSHD16能进行双端口动作。
图2是表示一个SSHD16的构成的一例的框图。SSHD16包括控制DRAM20、NAND存储器22、磁盘24这三种存储介质的SoC(系统级芯片)30。SoC30包括伺服CPU34、闪存转换层(FTL)CPU36、主CPU38这三种CPU。FTL CPU36、主CPU38与硬盘控制器(hard disk controller)(HDC)32连接。HDC32也包括缓冲区管理(buffer manager(BFMG))、NAND控制器(NAND CTLR)。HDC32与DRAM20、NAND存储器22、FIFO存储器40、42连接。FIFO存储器40连接于串列SCSI141、142和HDC32之间。FIFO存储器42连接于RDC44和HDC32之间,且RDC44访问磁盘24。伺服CPU34经DRV46控制音圈电机(VCM)50和主轴电机(SPM)48。
在该实施例中,通过将作为现有的外部存储装置的HDD用具备包括至少一种是DRAM、NAND存储器等半导体存储器在内的两种以上存储介质的存储装置替换,且主机装置能对两种以上存储介质的每个进行独立的写入/读取,而实现搭载有两种以上存储介质的外部存储装置的阶层化。在该实施例中,虽然接口部是共用的,但是,通过将内部的磁盘24、NAND存储器22、DRAM20的地址空间作为各自的地址空间来控制,而能对两种以上的存储介质的每个给予独立的写入/读取命令。例如,虽然现有的SSHD使用NAND存储器仅作为HDD的内部高速缓存,但是,在本实施方式中,可将NAND存储器22在主机装置开放并由主机装置作为系统的高速缓存使用。
此外,也能进行适用于来自主机装置的文件访问模式和/或应用等级(アプリケーションレベル)的系统高速缓存的阶层化。另外,也可将内部的任意的磁盘24的空间(HDD空间)的一部分原样地二重化为NAND存储器22、DRAM20的空间。
在现有的阶层化系统中,将能高速访问的SSD和大容量且低价格的HDD组合而与主机装置连接,通过将访问频率高的数据写入SSD,且将最终必须保存的数据写入HDD,而实现系统整体的性能提高。但是,HDD和SSD的插槽需要是二重的。此外,主机装置需要从HDD读取原始的数据,并将该数据向SSD写入。此外,在需要从SSD向HDD保存的情况下,主机装置也需要从SSD读取该数据、然后在HDD写入的动作。但是,在本实施例中,接口部是共同的,插槽可以是SSHD一个,也可以对磁盘24、NAND存储器22、DRAM20的每个给予独立的写入/读取命令,而且,也能主机装置不干预地从磁盘24向DRAM20、NAND存储器22传输数据。
为了实现阶层化,主机装置10向SSHD16内的各介质:DRAM20、NAND存储器22、磁盘(HDD介质)24直接访问的命令的一例在图3中表示。图3表示基于小型计算机系统接口(SCSI)的Read/Write命令(read命令其字节(byte)0的位(bit)0到7的命令码为88h,write命令其命令码为8Ah)的实施例的Read/Write命令的一例。活用SCSI的Read/Write用命令描述区块(CDB)的保留位(Resrved Bit)、具体为字节1、位0和2;字节14、位6这三个保留位。在字节1、位0记述ENAND(能使用NAND地址(Enable NAND Address)),在字节1、位2记述EDRAM(能使用DRAM地址(Enable DRAM Address)),在字节14、位6记述SYNC。
EDRAM(=“1”)表示由字节2到9记述的逻辑区块地址(LBA)和字节10到13记述的传输长度(TRANSFER LENNGTH)指定的地址空间是DRAM20的地址空间,且R/W动作为SSHD16内的DRAM20和主机装置10之间的数据传输。ENAND(=“1”)表示由字节2到9记述的逻辑区块地址和字节10到13记述的传输长度指定的地址空间是NAND存储器22的地址空间,且R/W动作为SSHD16内的NAND存储器22和主机装置10之间的数据传输。SYNC(=“1”)表示取得磁盘(HDD介质)24和DRAM20或NAND存储器22的同步。
图4表示图3的Read/Write命令的ENAND、EDRAM、SYNC的值的组合所进行的Read/Write动作的一例。
对于写入命令,在EDRAM、ENAND、SYNC的任一个皆为“0”的情况下,表示向磁盘(HDD介质)24的通常的写入。在EDRAM为“1”、且ENAND和SYNC为“0”的情况下,表示向DRAM20的写入。在EDRAM和SYNC为“1”、且ENAND为“0”的情况下,表示向DRAM20和磁盘(HDD介质)24两者的写入。在ENAND为“1”、且EDRAM和SYNC为“0”的情况下,表示向NAND存储器22的写入。在ENAND和SYNC为“1”、且EDRAM为“0”的情况下,表示向NAND存储器22和磁盘(HDD介质)24两者的写入。
对于读取命令,在EDRAM、ENAND、SYNC的任一个皆为“0”的情况下,表示从磁盘(HDD介质)24的通常的读取。在EDRAM为“1”、且ENAND和SYNC为“0”的情况下,表示从DRAM20的读取。在EDRAM和SYNC为“1”、且ENAND为“0”的情况下,表示从磁盘(HDD介质)24读取数据,并将该数据在DRAM20保存。在ENAND为“1”、且EDRAM和SYNC为“0”的情况下,表示从NAND存储器22的读取。在ENAND和SYNC为“1”、且EDRAM为“0”的情况下,表示从磁盘(HDD介质)24读取数据,并将该数据在NAND存储器22保存。
通过如上述那样在Read/Write命令的三个位组合“0”、“1”来记述,而能使主机装置10对SSHD16内的各介质(DRAM20、NAND存储器22、磁盘(HDD介质)24)直接访问。这样,例如,主机装置10可使用SSHD16内的SSD(NAND存储器)22来作为系统的二级高速缓存,或者,可使用SSHD16内的DRAM20作为系统的一级高速缓存。
其次,说明通过在多种记录介质根据其特性来分配地址空间而改善系统整体的性能和效率的例子。存在搭载了HDD、固态驱动器(SSD)、RAM盘等多种存储装置并根据性能来使多种存储装置阶层化的阶层化存储系统。在阶层化存储系统中,在多个存储介质中的任一个分配数据的储存目的地以将频繁地被访问的数据在高速的存储介质(DRAM盘、SSD等)储存,并将不常被访问的数据在低速的存储介质(HDD等)储存。在本实施例中,具备包括NAND存储器等半导体存储器在内的两种以上的存储介质,且主机装置能对两种以上的存储介质的每个进行独立的写入/读取,因此,利用系统固有的文件,能通过提前将磁盘空间(HDD空间)的数据在DRAM或NAND存储器的区域复制来改善系统整体的性能和效率。例如,通过将在磁盘空间(HDD空间)保存的系统引导文件在系统的电源接通前复制到NAND存储器,而能实现系统通电后的系统引导处理的高速化。以往,在接通系统的电源时,从HDD读取引导文件,因此在驱动电机以达到预定转数后,需要寻轨并旋转等待(回転待ち),因此浪费十几秒。但是,在将引导文件复制到NAND时,几秒便可完成。
对于与各数据对应地在SSHD内部的哪个区域(DRAM、NAND存储器、磁盘)分配、复制该数据进行说明。主机装置10掌握在磁盘(HDD介质)24内的何处储存哪个文件,因此,在系统的初始安装时,可将系统引导文件、重新启动文件、应用启动文件等复制到DRAM20或NAND存储器22。如图5A所示,将磁盘(HDD介质)24的某个地址空间54、56分别分配到DRAM20、NAND存储器22的地址空间。然后,如图5B所示,将地址空间54、56的数据分别复制到DRAM20、NAND存储器22的地址空间。这样,在随后从主机装置10给予(与えられる)该数据的读取命令时,从DRAM20、NAND存储器22直接向主机装置10传输数据,且系统整体的性能提高。
对于在识别具备多个存储介质的SSHD16的各存储介质的容量时实现对各存储介质的空间分配区域的命令的一例进行说明。图6表示基于SCSI的ModeSelect(命令码为55h)/ModeSense(命令码为5Ah)命令的实施例的命令的一例。在字节2、位0到5记述的页码(page code)的保留码(リザーブコード)设置2Fh。在页码记述2Fh的情况下,可设定/确认在ModeSelect/ModeSense命令后接续的预定的数据。图7A、图7B、图7C所示的域名(Header)、区块描述符(Block descripter)(长LBA)、页描述符接续ModeSelect/ModeSense命令之后。域名、区块描述符、页描述符(Page descripter)为一个CDB。即、字节0~7为域名,字节8~23为区块描述符,字节23~24为页描述符。在页描述符的字节24、位0到5也记述页码,且在此处也设置2Fh。与页描述符的字节26的位0的W-MEDIA(写介质)、位1的R-MEDIA(读介质)、位3的AL-LBA(allocate LBA(分配LBA)),位6的NAND、位7的DRAM的值对应地指示图8所示的动作。分配空间由在字节28~35记述的开始逻辑区块地址(Start Logical Block Address)和在字节40~43记述的带域区块长度(Area Block Length)指定。
即、对于ModeSelect命令(SEL),在DRAM为“1”且NAND、AL-LBA、R-MEDIA、W-MEDIA为“0”的情况下,表示选择DRAM20。在NAND为“1”且DRAM、AL-LBA、R-MEDIA、W-MEDIA为“0”的情况下,表示选择NAND存储器22。在DRAM、AL-LBA为“1”且NAND、R-MEDIA、W-MEDIA为“0”的情况下,表示将磁盘(HDD介质)24内的指定的LBA(由开始逻辑区块地址和长度指定的LBA)向DRAM20分配。在NAND、AL-LBA为“1”且DRAM、R-MEDIA、W-MEDIA为“0”的情况下,表示将磁盘(HDD介质)24内的指定的LBA向NAND存储器22分配。在DRAM、R-MEDIA为“1”且NAND、AL-LBA、W-MEDIA为“0”的情况下,表示将磁盘(HDD介质)24内的指定的LBA的数据向DRAM20复制。在DRAM、W-MEDIA为“1”且NAND、AL-LBA、R-MEDIA为“0”的情况下,将DRAM20内的指定的LBA的数据向磁盘(HDD介质)24复制。在NAND、R-MEDIA为“1”且DRAM、AL-LBA、W-MEDIA为“0”的情况下,表示将磁盘(HDD介质)24内的指定的LBA的数据向NAND存储器22复制。在NAND、W-MEDIA为“1”且DRAM、AL-LBA、R-MEDIA为“0”的情况下,将NAND存储器22内的指定的LBA的数据向磁盘(HDD介质)24复制。
对于ModeSense命令(SNS),在DRAM为“1”且NAND、AL-LBA、R-MEDIA、W-MEDIA为“0”的情况下,表示将DRAM20的初期设定值(过去设定的地址状态)向主机装置10报告。在NAND为“1”且DRAM、AL-LBA、R-MEDIA、W-MEDIA为“0”的情况下,表示报告NAND存储器22的初期设定值。在DRAM、AL-LBA为“1”且NAND、R-MEDIA、W-MEDIA为“0”的情况下,表示报告DRAM20的分配结果。在NAND、AL-LBA为“1”且DRAM、R-MEDIA、W-MEDIA为“0”的情况下,表示报告NAND存储器22的分配结果。
这样,可主机装置10不干预地从磁盘(HDD介质)24向NAND存储器22分配LBA并复制数据。
其次,说明主机装置分别独立地控制具备包括至少一种是DRAM、NAND存储器等半导体存储器在内的两种以上的存储介质的SSHD的各存储介质(磁盘、NAND存储器、DRAM)的地址空间,并为了将一个SSHD分离到多个存储装置的每个的装置进行管理而识别存储介质、指定地址空间的两个例子。
在最初的例子中,使用SCSI的Read/Write用CDB的指定LBA的字节中的未使用的字节、例如最上级字节来识别存储介质。磁盘(HDD介质)24为1TB,NAND存储器22为32GB、DRAM20为128MB。指定磁盘(HDD介质)24的LBA为0×0000 0000 0000 0000~0×0000 0000 7FFF 7FFF。指定NAND存储器22的LBA为0×8000 0000 0000 0000~0×8000 0000 03FFFFFF。指定DRAM20的LBA为0×4000 0000 0000 0000~0×4000 0000 0003FFFF。下划线的最上级字节的0是磁盘(HDD介质)24的操作符,8是NAND存储器22的操作符,4是DRAM20的操作符。这样,主机装置10能指定磁盘(HDD介质)24、NAND存储器22、DRAM20的地址空间,且能简单地识别SSHD内的多种存储介质。再有,操作符不限于最上级字节,只要是指定LBA的字节中的未使用的字节则哪个均可。
第二例利用SCSI的Read/Write命令。图9表示基于SCSI的Read/Write命令的实施例的Read/Write命令的一例。此处,活用SCSI的Read/Write用CDB的字节1、位0和2这两个保留位。在字节1、位0记述ENAND,在字节1、Bit2记述EDRAM。即、与图3所示的Read/Write命令的SYNC为保留位的例子相同。
在EDRAM为“1”且ENAND为“0”的情况下,与图3同样地,表示由逻辑区块地址和传输长度(transfer length)指定的地址空间是DRAM20的地址空间,且R/W动作为SSHD16内的DRAM20和主机装置10之间的数据传输。在ENAND为“1”且EDRAM为“0”的情况下,表示由逻辑区块地址和传输长度指定的地址空间是NAND存储器22的地址空间,且R/W动作为SSHD16内的NAND存储器22和主机装置10之间的数据传输。在EDRAM和ENAND皆为“0”的情况下,表示由逻辑区块地址和传输长度指定的地址空间是磁盘(HDD介质)24的地址空间,且R/W动作为SSHD16内的磁盘(HDD介质)24和主机装置10之间的数据传输。
这样,能由EDRAM、NAND简单地指定DRAM、NAND存储器的地址空间。
虽然未图示,但是,也可制作NAND存储器、DRAM专用的Read/Write用CDB。
其次,说明使用本实施例的SSHD来构成阶层化系统的例子。如上所述,实施例是具备包括至少一种是DRAM、NAND存储器等半导体存储器在内的两种以上的存储介质的存储装置,能直接访问两种以上的存储介质,因此具备与存储介质对应的多个存储装置的功能。DRAM是易失性的,因此电源切断时的数据保证较差,但是,具备能进行高速的访问/数据传输的RAM盘装置的功能。NAND存储器是非易失性的,因此能进行电源切断时的数据保证,虽然在长期使用中可靠地稍差,但是具备能进行某种程度的高速访问/数据传输的SSD的功能。具备磁盘的HDD其电源切断时的数据保证和可靠度非常高,是存储装置的主流,但是,访问/数据传输较慢。可将该多个存储装置的功能组合来构成阶层化系统。通过分别使用主机装置单独提供的存储装置而能进行高性能/高可靠度的系统的构筑/运用。
首先,说明省略DRAM、且为NAND存储器(SSD)和磁盘(HDD)的二阶层的例子。图10A、图10B表示用六个SSHD构成阶层化系统的例子。阶层(tier)1包括NAND存储器(SSD),且RAID等级是RAID0+1。阶层2包括磁盘(HDD),且RAID等级是RAID4或RAID5。一个SSHD包括28GB的NAND存储器(SSD)和900GB的磁盘(HDD)。
由于为镜像,且将NAND#0~#2和NAND#3~#5二重化,因此NAND存储器的总容量是28×3=84GB。磁盘(HDD)为RAID4或RAID5,因此一个为奇偶校验用,另一个为备用,总容量为900×4=3.6TB。为了简化说明,在图10B中将SAS控制器和串行SCSI表示为一个,但是,实际上,与图1同样地各设有两个。
主机装置10从HDD#0~#P读取数据,并进行某处理,将处理后的数据向NAND#0~#2、NAND#3~#5高速写入。然后,在将处理后的数据向HDD#0~#P写入时,NAND和HDD的二重化系统实现。
此外,主机装置10可将某SSHD的磁盘(HDD)的数据向与该SSHD不同的其他SSHD的NAND存储器复制。
再有,主机装置10也可将从多个SSHD中的任意几个SSHD的磁盘(HDD)读取的数据向多个SSHD中的任意几个SSHD的NAND存储器复制。
其次,参照图11A、图11B来说明DRAM(RAM盘)和NAND存储器(SSD)及磁盘(HDD)的三阶层的例子。阶层1包括DRAM,且RAID等级是RAID0。阶层2包括NAND存储器,且RAID等级是RAID0+1。阶层3包括磁盘(HDD),且RAID等级是RAID4或RAID5。一个SSHD包括128MB的DRAM及28GB的NAND存储器和900GB的HDD。DRAM的总容量为128×6=768MB。由于为镜像,且将NAND#0~#2以NAND#3~#5二重化,因此NAND存储器的总容量是28×3=84GB。HDD为RAID4或RAID5,因此一个为奇偶校验用,另一个为备用,总容量为900×4=3.6TB。
在图10B、图11B的阶层化系统中,用图6~图8所示的方法来将磁盘(HDD)内的特定区域(例如,系统引导文件的存储区域)向NAND存储器分配,并将特定区域的数据向NAND存储器复制。然后,主机装置10从NAND存储器高速读取数据。因此,能高速地实现系统引导等。再有,不限于系统引导文件,也可将任意的数据从磁盘(HDD)向NAND存储器复制。
在从磁盘(HDD)向NAND存储器复制系统引导文件或其他任意数据的情况下,主机装置10可将某SSHD的磁盘(HDD)的数据向与该SSHD不同的其他SSHD的NAND存储器复制。
再有,主机装置10也可将从多个SSHD中的任意几个SSHD的磁盘(HDD)读取的数据向多个SSHD中的任意几个SSHD的NAND存储器复制。
此外,主机装置10从HDD#0~#P读取数据,并进行某处理,将处理后的数据向DRAM#0~#5超高速写入。然后,在将处理后的数据向HDD#0~#P写入时,DRAM和HDD的二重化系统实现。
接着说明如图6~图8所示那样由Mode select/sense分配了tLBA的SSHD所构成的具体的存储系统的概念。此处,包括五个SSHD,HDD由RAID4或RAID5构成。在一个SSHD,DRAM是256MB,其中,将128MB用作HDD内部表及HDD用的高速缓存数据,将128MB用作主机装置10用的RAM盘。此外,NAND存储器是32GB,其中,将4GB用作磁盘(HDD)的内部写入高速缓存(ライトキャッシュ),将28GB用作主机装置10用的SSD。
图12A表示阶层化系统的假想器件及其容量。阶层1是640MB的RAM盘(DRAM),阶层2是140GB的SSD(NAND存储器),阶层3是2.4TB(=600GB×4)的HDD。
图12B表示五个SSHD#0~#5的LBA的分配。SSHD#0的DRAM是00000000~0003 FFFF、NAND存储器是0000 0000~037F FFFF。SSHD#1的DRAM是0004 0000~0007 FFFF、NAND存储器是0380 0000~06FF FFFF。SSHD#2的DRAM是0008 0000~000B FFFF、NAND存储器是07000000~0A7F FFFF。SSHD#3的DRAM是000C 0000~000F FFFF、NAND存储器是0A80 0000~0DFF FFFF。SSHD#4的DRAM是0010 0000~0013FFFF、NAND存储器是0E00 0000~117F FFFF。
这样,主机装置10能获得图12A所示的容量的三阶层的存储系统。
如上所述,根据实施例,仅用具备磁盘(HDD)、NAND存储器、DRAM等多个存储介质的一个存储装置(SSHD)便能具有HDD、SSD、RAM盘等多个存储装置的功能,因此不需要新安装搭载SSD、RAM盘等的槽,仅通过搭载实施例的SSHD来代替现有的磁盘装置,便能容易地实现阶层化构成。由于能从主机装置将SSHD内部的磁盘空间(HDD介质空间)和NAND存储器空间、DRAM空间分别作为其他装置来读写数据以及进行访问,因此可在维持仅搭载了现有的磁盘装置的系统的扩展(Expander)和/或主机总线适配器的构成的状态下使用。
虽然接口部是共用的,但是,可将SSHD内部的HDD介质空间和NAND存储器空间、DRAM可将分别作为不同的地址空间来控制,并进行分离为作为HDD产品、SSD产品、RAM盘产品等多个存储装置的功能的管理,从而能仅用实施例的SSHD来实现存储装置的二重化构成/三重化构成。
由于可将HDD介质空间的一部分分配到NAND空间或DRAM空间,因此可将NAND区域或DRAM区域分配到系统高速缓存或作为阶层化构成的上级阶层的空间。
通过在将NAND区域或DRAM区域分配到系统高速缓存或作为阶层化构成的上级阶层的空间时使用数据的同步化功能,从而能没有来自主机装置的数据、访问的干预地在内部的HDD介质空间和NAND空间、DRAM空间之间进行数据复制并实现系统的高性能化和高效率化。
上述系统的多个模块可实现为软件应用、硬件和/或软件模块、或者一个或多个计算机的元件、例如服务器。虽然将多个模块分别表示,但是,它们也可共享相同基础逻辑或代码的部分或全部。例如,虽然以SCSI接口为例进行说明,但是,并不限于此,也可使用SATA接口。此外,虽然以NAND存储器作为非易失性存储器来说明,但是,并不限于此,也可其他的非易失性存储器。
虽然以上说明了本发明的几个实施方式,但是这些实施方式是作为例子提出的,无意于限定发明的范围。这些新实施方式能够以其他各种各样的形态来实施,能够在不脱离发明主旨的范围内进行各种省略、置换、变更。这些实施方式和/或其变形包含于发明的范围和/或主旨内,并且包含在技术方案所记载的发明及其等同范围内。
Claims (18)
1.一种存储装置,包括:
磁盘与用作所述磁盘的高速缓存的半导体存储器及与主机装置的接口,
其中,所述接口构成为将来自所述主机装置的地址信息作为所述磁盘的地址信息或所述半导体存储器的地址信息来处理。
2.根据权利要求1所述的存储装置,其中,
所述接口构成为根据来自所述主机装置的地址信息的特定的高位的值而将来自所述主机装置的地址信息作为所述磁盘的地址信息或所述半导体存储器的地址信息来处理。
3.根据权利要求1所述的存储装置,其中,
所述接口构成为根据来自所述主机装置的包括地址信息在内的读或写命令的特定的位的值而将来自所述主机装置的地址信息作为所述磁盘的地址信息或所述半导体存储器的地址信息来处理。
4.根据权利要求1所述的存储装置,其中,
所述接口构成为根据来自所述主机装置的包括地址信息在内的读或写命令的特定的位的值而访问所述磁盘或所述半导体存储器。
5.根据权利要求4所述的存储装置,其中,
所述接口构成为根据所述特定的位的值来进行以下任一动作:向所述磁盘的写入、向所述半导体存储器的写入、向所述磁盘和所述半导体存储器的写入、从所述磁盘的读取、从所述半导体存储器的读取、将从所述磁盘读取的数据向所述半导体存储器写入。
6.根据权利要求1所述的存储装置,其中,
所述接口构成为根据来自所述主机装置的包括地址信息在内的预定命令的特定的位的值而进行所述磁盘和所述半导体存储器的地址空间的分配、数据的复制。
7.根据权利要求6所述的存储装置,其中,
所述接口构成为根据所述特定的位的值来进行以下任一动作:将所述磁盘的第一地址空间向所述半导体存储器的第二地址空间分配、将所述第一地址空间的数据向所述第二地址空间复制、将所述半导体存储器的第三地址空间向所述磁盘的第四地址空间分配、将所述第三地址空间的数据向所述第四地址空间复制。
8.一种存储系统,其中,
包括:
主机装置;和
多个存储装置,
该多个存储装置的每个包括磁盘与用作所述磁盘的高速缓存的半导体存储器及与主机装置的接口,
其中,所述接口构成为将来自所述主机装置的地址信息作为所述磁盘的地址信息或所述半导体存储器的地址信息来处理,
所述接口构成为根据数据的访问频率来访问所述磁盘或所述半导体存储器。
9.根据权利要求8所述的存储系统,其中,
所述接口构成为将所述磁盘的特定区域的数据向所述半导体存储器复制。
10.根据权利要求8所述的存储系统,其中,
所述主机装置构成为能将所述多个存储装置中的第一存储装置的磁盘的数据向与所述第一存储装置不同的所述多个存储装置中的第二存储装置的半导体存储器复制。
11.根据权利要求8所述的存储系统,其中,
所述主机装置构成为能将从所述多个存储装置中的几个存储装置的磁盘读取的数据向所述多个存储装置中的几个存储装置的半导体存储器复制。
12.一种存储装置的地址信息处理方法,该存储装置包括磁盘与用作所述磁盘的高速缓存的半导体存储器及与主机装置的接口,该方法包括:
将来自所述主机装置的地址信息作为所述磁盘的地址信息或所述半导体存储器的地址信息来处理。
13.根据权利要求12所述的方法,其中,
根据来自所述主机装置的地址信息的特定的高位的值而将来自所述主机装置的地址信息视为所述磁盘的地址信息或所述半导体存储器的地址信息。
14.根据权利要求12所述的方法,其中,
根据来自所述主机装置的包括地址信息在内的读或写命令的特定的位的值而将来自所述主机装置的地址信息作为所述磁盘的地址信息或所述半导体存储器的地址信息来处理。
15.根据权利要求12所述的方法,其中,
根据来自所述主机装置的包括地址信息在内的读或写命令的特定的位的值而访问所述磁盘或所述半导体存储器。
16.根据权利要求15所述的方法,其中,
根据所述特定的位的值来进行以下任一动作:向所述磁盘的写入、向所述半导体存储器的写入、向所述磁盘和所述半导体存储器的写入、从所述磁盘的读取、从所述半导体存储器的读取、将从所述磁盘读取的数据向所述半导体存储器写入。
17.根据权利要求12所述的方法,其中,
根据来自所述主机装置的包括地址信息在内的预定命令的特定的位的值而执行所述磁盘和所述半导体存储器的地址空间的分配、或数据的复制。
18.根据权利要求17所述的方法,其中,
根据所述特定的位的值来进行以下任一动作:将所述磁盘的第一地址空间向所述半导体存储器的第二地址空间分配、将所述第一地址空间的数据向所述第二地址空间复制、将所述半导体存储器的第三地址空间向所述磁盘的第四地址空间分配、将所述第三地址空间的数据向所述第四地址空间复制。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461940061P | 2014-02-14 | 2014-02-14 | |
US61/940,061 | 2014-02-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104850355A true CN104850355A (zh) | 2015-08-19 |
Family
ID=53798165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410264006.XA Pending CN104850355A (zh) | 2014-02-14 | 2014-06-13 | 存储装置、存储系统及存储装置的地址信息处理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20150234595A1 (zh) |
CN (1) | CN104850355A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255426A (zh) * | 2017-12-29 | 2018-07-06 | 北京联想核芯科技有限公司 | 一种ssd硬盘的数据处理方法和装置 |
CN111240582A (zh) * | 2018-11-29 | 2020-06-05 | 长鑫存储技术有限公司 | 数据读写方法、读写装置和动态随机存储器 |
CN111241007A (zh) * | 2018-11-29 | 2020-06-05 | 长鑫存储技术有限公司 | 数据读写方法及装置、动态随机存储器 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11609718B1 (en) | 2017-06-12 | 2023-03-21 | Pure Storage, Inc. | Identifying valid data after a storage system recovery |
CN110720088A (zh) | 2017-06-12 | 2020-01-21 | 净睿存储股份有限公司 | 集成到大容量存储设备的可访问快速耐久存储 |
US11592991B2 (en) | 2017-09-07 | 2023-02-28 | Pure Storage, Inc. | Converting raid data between persistent storage types |
US20180357017A1 (en) | 2017-06-12 | 2018-12-13 | Pure Storage, Inc. | Accessible fast durable storage integrated into a bulk storage device |
US10474397B2 (en) | 2017-06-13 | 2019-11-12 | Western Digital Technologies, Inc | Unified indirection in a multi-device hybrid storage unit |
US11334274B2 (en) | 2018-02-09 | 2022-05-17 | Seagate Technology Llc | Offloaded data migration between storage devices |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070168607A1 (en) * | 2006-01-17 | 2007-07-19 | Kabushiki Kaisha Toshiba | Storage device using nonvolatile cache memory and control method thereof |
CN101714062A (zh) * | 2008-10-06 | 2010-05-26 | 美商矽储科技股份有限公司 | 改进的混合驱动器 |
US20110138112A1 (en) * | 2009-12-04 | 2011-06-09 | Hsing-Yi Chiang | Virtualization of Storage Devices |
US20110145489A1 (en) * | 2004-04-05 | 2011-06-16 | Super Talent Electronics, Inc. | Hybrid storage device |
-
2014
- 2014-04-30 US US14/266,170 patent/US20150234595A1/en not_active Abandoned
- 2014-06-13 CN CN201410264006.XA patent/CN104850355A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110145489A1 (en) * | 2004-04-05 | 2011-06-16 | Super Talent Electronics, Inc. | Hybrid storage device |
US20070168607A1 (en) * | 2006-01-17 | 2007-07-19 | Kabushiki Kaisha Toshiba | Storage device using nonvolatile cache memory and control method thereof |
CN101714062A (zh) * | 2008-10-06 | 2010-05-26 | 美商矽储科技股份有限公司 | 改进的混合驱动器 |
US20110138112A1 (en) * | 2009-12-04 | 2011-06-09 | Hsing-Yi Chiang | Virtualization of Storage Devices |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108255426A (zh) * | 2017-12-29 | 2018-07-06 | 北京联想核芯科技有限公司 | 一种ssd硬盘的数据处理方法和装置 |
CN111240582A (zh) * | 2018-11-29 | 2020-06-05 | 长鑫存储技术有限公司 | 数据读写方法、读写装置和动态随机存储器 |
CN111241007A (zh) * | 2018-11-29 | 2020-06-05 | 长鑫存储技术有限公司 | 数据读写方法及装置、动态随机存储器 |
CN111241007B (zh) * | 2018-11-29 | 2022-06-28 | 长鑫存储技术有限公司 | 数据读写方法及装置、动态随机存储器 |
Also Published As
Publication number | Publication date |
---|---|
US20150234595A1 (en) | 2015-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104850355A (zh) | 存储装置、存储系统及存储装置的地址信息处理方法 | |
KR102168838B1 (ko) | 저장 장치들에 대한 매핑 테이블들 | |
US9582201B2 (en) | Multi-tier scheme for logical storage management | |
US10521152B2 (en) | Storage device storing data in raid manner | |
US8775731B2 (en) | Write spike performance enhancement in hybrid storage systems | |
US10282286B2 (en) | Address mapping using a data unit type that is variable | |
US9927999B1 (en) | Trim management in solid state drives | |
US20180173419A1 (en) | Hybrid ssd with delta encoding | |
CN108228473B (zh) | 通过动态地传送存储器范围分配的负载平衡的方法及系统 | |
US20160266965A1 (en) | Updating exclusive-or parity data | |
US11599304B2 (en) | Data aggregation in ZNS drive | |
TW201040719A (en) | Solid state memory formatting | |
US9582192B2 (en) | Geometry aware block reclamation | |
CN103049220A (zh) | 存储控制方法、存储控制装置和固态存储系统 | |
US11169744B2 (en) | Boosting reads of chunks of data | |
CN108182154A (zh) | 一种基于固态硬盘的日志文件的读写方法及固态硬盘 | |
KR102656959B1 (ko) | 존 구획 네임스페이스를 갖는 호스트 관리 하드웨어 압축 | |
CN103677670A (zh) | 读数据的方法及装置 | |
CN114730282A (zh) | Zns奇偶校验交换到dram | |
CN104182353A (zh) | 一种采用不同存储介质的数据存储系统 | |
US20190146906A1 (en) | Raid stripe physical placement | |
CN110554833A (zh) | 存储设备中并行处理io命令 | |
US11640371B2 (en) | Snapshot management in partitioned storage | |
US10915262B2 (en) | Hybrid storage device partitions with storage tiers | |
CN114730291A (zh) | 具有分区的ssd的数据停放 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150819 |