存储控制器、存储系统及操作存储控制器的方法_2

文档序号:9326613阅读:来源:国知局
将参照在图4和图5中示出的实施例更详细地描述RAID控制器。
[0034]根据本发明构思的特定实施例,可在多个存储装置200、202、204和206中的两个或更多个存储装置之间建立“直接网络连接”。例如,存储装置200和存储装置202可按照一对一的关系来建立直接网络连接(或者可“直接连接”)。在该建立的关系内,存储装置200和存储装置202可用作对于指令和相应的数据两者而言的连接收发器。这里,直接网络连接可包括诸如局域网(LAN)、WIFI网络或蜂窝网络的硬接线的连接以及/或者无线连接。本领域技术人员将理解的是,两个或更多个存储装置之间的直接网络连接可使用诸如通用串行总线(USB)、小型计算机系统接口(SCSI)、快速外设组件互连(PC1-E)、ATA、并行ATA(PATA)、串行ATA(SATA)、串行SCSI (SAS)等的一种或更多种数据通信协议。
[0035]图2是进一步示出根据本发明构思的实施例的在一个示例中的图1的存储系统的主机100的框图。
[0036]参照图2,主机100包括处理器120、存储控制器124和I/O控制器128。
[0037]处理器120可实施为电路、逻辑块和/或软件代码。处理器120控制主机100的整体操作,分析从用户接收的数据I/o请求,并使各种数据I/O操作与连接到主机100的多个存储装置200、202、204和206相关地被执行。
[0038]存储控制器124控制设置在主机100中的存储器(未示出)。设置在主机100中的存储器可用于暂时存储与针对多个存储装置200、202、204和206的一个或更多个数据I/O请求有关的读取/写入数据。例如,设置在主机100中的存储器可包括动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)或双倍数据速率同步DRAM (DDR SDRAM)。例如,存储控制器124可根据从处理器120接收的指令将存储在存储器中的数据发送到I/O控制器128。
[0039]I/O控制器128可用于控制将被写入到多个存储装置200、202、204和206的写入数据的通信,或者从多个存储装置200、202、204和206恢复的读取数据的通信。
[0040]处理器120、存储控制器124和I/O控制器128可通过系统总线126彼此电连接。在本发明构思的特定实施例中,I/O控制器128与多个存储装置200、202、204和206中的每个存储装置可通过I/O总线129彼此电连接。
[0041]在图1中示出的RAID主控制器110控制RAID系统的整体操作,并控制关于多个存储装置200、202、204和206的数据的分配的写入和/或读取。例如,RAID主控制器110可用于将数据“分条”,然后以分布式的方式将产生的“分条数据”存储到多个存储装置200、202,204和206中。另外,RAID主控制器110可以以分布式的方式将(例如)通过对分条数据执行XOR操作而获得的奇偶校验位(以下,个别地或共同地称为“奇偶校验数据”)存储在多个存储装置200、202、204和206中。因此,假设对于多个存储装置200、202、204和206中的任何一个存储装置来讲出现数据读取失败,那么可使用奇偶校验数据来恢复存储在出现失败的存储装置中的写入数据。这里,RAID主控制器110可使用软件和/或硬件来实施。
[0042]再次参照图2,在RAID主控制器110以软件实施的情况下,处理器120可通过执行实施RAID主控制器110的功能的软件来操作RAID系统。
[0043]图3是进一步示出根据本发明构思的另一实施例的在另一示例中的图1的主机100的框图。
[0044]参照图3,主机100包括RAID主控制器110、处理器120、存储控制器124和/或I/O控制器128。主机100与在图2中示出的主机不同,不同之处在于RAID主控制器110以硬件而不是软件来实施,并因此通过系统总线126电连接到处理器120、存储控制器124和I/O控制器128。
[0045]图4是进一步示出根据本发明构思的实施例的在一个示例中的图1的存储装置200的框图。
[0046]参照图4,存储装置200包括闪速存储控制器211和闪速存储器213,其中,闪速存储控制器211包括处理器220、存储控制器224、主机接口 228和闪速存储器接口 229。
[0047]处理器220可通过电路、逻辑块和/或软件代码来实施,并可用于控制存储装置200的整体操作。如果将电能施加到存储装置200,则处理器220可通过驱动存储在只读存储器(ROM)(未示出)中的用于操作存储装置200的固件来控制存储装置200。另外,处理器200可用于分析从主机接口 228接收的指令,并根据分析结果控制闪速存储器213的整体操作。另外,处理器220可使用一个或更多个地址映射表来将由主机100提供的逻辑地址映射到闪速存储器213中的相应的物理地址上。
[0048]存储控制器224可用于控制设置在存储装置200中的本地存储器。本地存储器(未示出)可为只读存储器(ROM)或随机存取存储器(RAM)。在本发明构思的特定实施例中,ROM可存储用于驱动存储装置200的固件代码,RAM可用作存储从主机接口 228接收的各种指令和/或参数的数据缓冲器。另外,RAM也可存储将被存储在闪速存储器213中的写入数据或从闪速存储器213恢复的读取数据。
[0049]主机接口 226可用于执行存储装置200与主机100之间的各种接口功能,闪速存储器接口 229可用于执行闪速存储控制器211与闪速存储器213之间的接口连接。
[0050]闪速存储器213可用于存储由闪速存储控制器211提供的写入数据。即,闪速存储器213可包括存储数据的多个单元阵列。单元阵列可包括多个平面,平面包括多个块,块包括多个页。在本发明构思的一些实施例中,闪速存储器213可为包括电可擦除可编程只读存储器(EEPROM)、铁电随机存取存储器(FRAM)、相变随机存取存储器(PRAM)和磁随机存取存储器(MRAM)的非易失性存储器。
[0051]在图1中示出的RAID控制器210与RAID主控制器110配合实现RAID系统。具体地,RAID控制器210可直接处理可通过RAID主控制器110来执行的数据I/O请求。例如,RAID控制器210可用于将数据分条,将得到的分条数据存储在存储装置200中,并且还可用于产生源于分条数据的奇偶校验数据并将奇偶校验数据存储在(例如)存储装置206中。结果,当存储装置200发生故障时,可使用存储在存储装置206中的奇偶校验数据来恢复存储在存储装置200中的数据。因此,RAID控制器210可在多个不同区域中分配上述操作。即,控制存储装置200的RAID控制器210可将用于处理一些RAID请求的请求发送到存储装置202、204和206。
[0052]再次参照图4,在使用软件来实施RAID控制器210的情况下,处理器220可通过执行实施RAID控制器的软件210来在存储装置200上执行RAID请求。
[0053]图5是进一步示出根据本发明构思的实施例的图1的存储装置200的框图。
[0054]参照图5,存储装置200再次包括闪速存储控制器211和闪速存储器213,然而,闪速存储控制器211还包括RAID控制器210以及处理器220、存储控制器224、主机接口 228和闪速存储器接口 229。这里,存储装置200与在图4中示出的存储装置不同,不同之处在于RAID控制器210被假定为以硬件实施。以硬件实施的RAID控制器210可通过内部总线226电连接到处理器220、存储控制器224、主机接口 228和闪速存储器接口 229。
[0055]图6是示出根据本发明构思的实施例的可结合存储系统来使用的RAID管理方法的框图。
[0056]参照图6,可将与写入数据请求有关的写入数据分条,然后以分布式的方式存储在多个数据存储区300、302、304和306中。这里,多个数据存储区300、302、304和306可为设置在多个存储装置200、202、204和206中的闪速存储器。例如,可将写入数据分条为数据A1310、数据A2312和数据A3314。数据A1310可存储在数据存储区300中,数据A2312可存储在数据存储区302中,数据A3314可存储在数据存储区304中。另外,源于数据A1310、数据A2312和数据A3314的奇偶校验数据AP 316可存储在数据存储区306中。当相关存储装置发生故障时,如果需要,那么接下来可在恢复数据A1310、数据A2312和数据A3314中使用奇偶校验数据AP 316。
[0057]因此,RAID主控制器110可将上述数据I/O请求分配到RAID控制器210、212、214和216。也就是说,RAID主控制器110可将需要数据存储、数据更新或数据读取的任何数据I/O请求分配到RAID控制器210、212、214和216中的一个或更多个RAID控制器,RAID控制器210、212、214和216中的一个或更多个RAID控制器然后将直接处理分配的数据I/O请求。RAID控制器210、212、214和216中的每个控制器可直接处理通过RAID主控制器110分配的数据I/O请求,或者它可使用直接网络连接将通过RAID主控制器110分配的数据I/O请求分配给另一 RAID控制器。
[0058]例如,在RAID主控制器110将用于更新数据A1310的RAID请求分配到RAID控制器210的情况下,RAID控制器210可直接处理用于更新数据A1310的请求。如果数据A1310被更新,则奇偶校验数据AP
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1