CN1782978A - 数据存储系统和数据存储控制装置 - Google Patents
数据存储系统和数据存储控制装置 Download PDFInfo
- Publication number
- CN1782978A CN1782978A CN 200510079642 CN200510079642A CN1782978A CN 1782978 A CN1782978 A CN 1782978A CN 200510079642 CN200510079642 CN 200510079642 CN 200510079642 A CN200510079642 A CN 200510079642A CN 1782978 A CN1782978 A CN 1782978A
- Authority
- CN
- China
- Prior art keywords
- data
- control module
- unit
- control
- serial bus
- 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.)
- Granted
Links
Images
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
数据存储系统和数据存储控制装置。存储系统具有用于控制多个存储装置的多个控制模块,这使得安装更加容易,同时保持了低等待时间响应,即使控制模块的数量增加了也是如此。多个存储装置使用后端路由器与各个控制模块的第二接口相连接,从而保持了所有控制模块对所有存储装置进行存取的冗余度。而且控制模块与第一切换单元是通过串行总线进行连接的,这种总线具有小的信号数量,通过使用背板构成了接口。由此,在印刷电路板上进行安装成为了可能。
Description
技术领域
本发明涉及一种数据存储系统的构造和一种数据存储控制装置,它们用于计算机的外部存储装置,并且更加具体地讲,涉及一种数据存储系统和一种数据存储控制装置,具有能够以高性能和高灵活性构筑连接多个盘装置的数据存储系统的单元的组合和连接。
背景技术
近来,随着各种数据得到了计算机化并且在计算机上进行处理,独立于执行数据处理的主计算机的、能够有效存储大量具有高可靠性的用于处理的数据的数据存储装置(外部存储装置)变得越来越重要了。
这种数据存储装置使用了具有很多盘装置(例如,磁盘和光盘)的盘阵列装置和用于控制这很多个盘装置的盘控制器。这种盘阵列装置能够同时接收来自多个主计算机的盘存取请求,并且能够控制很多盘。
最近,给出了能够控制具有数千乃至更多盘装置的盘装置组的盘阵列装置,这些盘装置自身具有数百吉字节(terabyte)。
这样的盘阵列装置封装着存储器,该存储器起到了盘的缓冲的一部分的作用。由此,能够减少接收到来自主计算机的读取请求或写入请求时的数据存取时间,并且能够实现更高的性能。
一般来说,盘阵列装置由以下多个主要单元组成,即:通道适配器,是与主计算机的连接部分;盘适配器,是与盘驱动器的连接部分;缓冲存储器;缓存控制单元,管理缓冲存储器;和很多盘驱动器。
附图11是示出了第一种现有技术的示意图。附图11中所示的盘阵列装置102具有两个缓存管理器(缓冲存储器和缓存控制单元)10,并且通道适配器11和盘适配器13与各个缓存管理器10相连接。
这两个缓存管理器10经总线10c直接连接起来,从而使通信成为可能。这两个缓存管理器10和10、缓存管理器10与通道适配器11以及缓存管理器10与盘适配器13分别经PCI总线相连接,这是因为需要低的等待时间。
通道适配器11借助例如光纤通道(Fibre Channel)或以太网(Ethernet)与主计算机(未示出)相连接,而盘适配器13借助例如光纤通道的缆线与盘封装组12的各个驱动器相连接。
盘封装组12具有两个端口(例如,光纤通道端口),并且这两个端口与不同的盘适配器13相连接。这提供了冗余度,这种冗余度增加了抗故障能力。
附图12是示出了根据第二种现有技术的盘阵列装置100的框图。如附图12所示,传统的盘阵列装置100具有:缓存管理器(图中由CM表示)10,该缓存管理器10由缓冲存储器和作为主要单元的缓存控制单元构成;通道适配器(图中由CA表示)11,是与主计算机(未示出)的接口;盘封装组12,由多个盘驱动器构成;和盘适配器(图中由DA表示)13,是与该盘驱动器12的接口。
盘阵列装置此外还具有:路由器(图中由RT表示)14,用于相互连接缓冲存储器10;通道适配器11和盘适配器13,用于进行这些主要单元之间的数据传送和通信。
该盘阵列装置100包括四个缓存管理器10和与四个与这些缓存管理器10相对应的路由器14。这些缓存管理器10与路由器14一对一相互连接,因此多个缓存管理器10之间的连接是冗余的,并且可存取性得到了提高(例如,日本专利申请特开No.2001-256003)。
换句话说,即使一个路由器14发生了故障,也能够借助另一个路由器14确保多个缓存管理器10之间的连接,并且即使在这种情况下,盘阵列装置100也能够继续进行正常的操作。
在这种盘阵列装置100中,各个路由器14与两个通道适配器11和两个盘适配器13相连接,并且盘阵列装置100包括总数为八的通道适配器和总数为八的盘适配器13。
通过缓存管理器10和路由器14的相互连接,这些通道适配器11和盘适配器13能够与所有的缓存管理器10进行通信。
通道适配器11借助光纤通道(Fibre Channel)或以太网(Ethernet)与处理数据的主计算机相连接,并且盘适配器13通过(例如)光纤通道与盘封装组12(具体来说是盘驱动器)相连接。
此外,在通道适配器11与缓存管理器10之间以及盘适配器13与缓存管理器10之间,不仅要交换来自主计算机的用户数据,而且要交换用来保持盘阵列装置100的内部操作(例如,多个缓冲存储器之间数据的镜像处理)的一致性的各种信息。
缓存管理器10、通道适配器11和盘适配器13通过接口与路由器14相连接,能够实现比盘阵列装置100与主计算机或盘阵列装置100与盘驱动器之间的通信更低的等待时间。例如,缓存管理器10、通道适配器11和盘适配器13通过设计为用于连接LSI(大规模集成电路)与印刷电路板的总线(比如PCI(外部部件互连)总线)与路由器14相连接。
用于装纳盘驱动器的盘封装组12具有两个光纤通道端口,这两个端口分别与属于不同路由器14的盘适配器13连接。由此,即使在盘适配器13或路由器14发生故障时,也能够防止与缓存管理器10的连接断开。
由于近来计算机化的发展,存在对更大容量和更快速度的数据存储系统的需求。在上面提到的第一种现有技术的盘阵列装置的情况下,如果对缓存管理器10、通道适配器11和盘适配器13进行扩充来增大容量和速度,则必须增加盘封装组12的端口数量并且必须增加盘适配器13与盘封装组12之间的连接缆线数量。
增加盘封装组12的端口数量会与要连接到一个盘封装组上的盘适配器的数量相应地增加缆线的数量,这增加了安装空间。这意味着装置的大小会增加。由于对于一个盘封装组来说,只有存在两个路径系统,才能够实现足够的冗余结构,因此增加端口的数量也不是个好主意。而且要连接的盘适配器的数量也不是恒定的,而是会依照用户的需求而改变,所以如果扩充了很多端口,而使用少量的盘适配器,就会造成浪费,但是如果扩充了少量端口,又不能支持很多盘适配器。换句话说就是,丧失了灵活性。
另一方面,在第二种现有技术的盘阵列装置的情况下,扩充缓存管理器10、通道适配器11和盘适配器13是可行的,但是所有的通信都是通过路由器14进行的,所以通信数据都会汇集到路由器14中,它变成了流量瓶颈,因此不能指望会有高的流量。而且在盘阵列装置100的情况下,如果构造具有很多主要单元的大规模盘阵列装置,则缓存管理器10与路由器14之间的连线数量会急剧增加,这会造成连接关系复杂并且安装在物理上会变得很困难。
例如,在附图12所示的结构的情况下,四个(四片)缓存管理器10与四个路由器14通过背板15连接起来,如附图13所示。在这种情况下,如附图12所示,信号的数量是(4×4×(每路径信号线的数量))。例如,如果一条路径是借助64位PCI(并行路径)连接的,则包括控制线,背板15上的信号线数量就是100×16=1600。要形成这些信号线,背板15上的印刷电路板需要六个信号层。
在大规模构造的情况下,比如通过背板15连接八个(四片)缓存管理器10和八个(四片)路由器14的情况下的构造,所需的信号线数量大约为100×8×8=6400。因此背板15的印刷电路板需要24层,这是上述情况的四倍,实现这样的构造是很困难的。
如果使用信号线少于64位PCI总线的四路PCI-Express总线来进行连接,则信号线的数量是16×8×8=1024。不过,PCI总线以66MHz的频率工作,而PCI-Express总线(PCI快速总线)是2.5Gbps的高速总线,为了维持高速总线的信号质量,必须使用昂贵的基质材料。
如果使用低速总线,可以通过使用通孔来代替接线层,但是在高速总线的情况下,应当避免使用通孔,因为这会降低信号质量。因此在高速总线的情况下,需要布局成使得所有的信号线都不交叉,所以与具有相同数量信号线的低速总线相比,需要大约两倍的信号层。例如,电路板需要12个信号层,并且这些层必须使用昂贵的材料来构造,因此这实现起来也是很困难的。
而且在第二种现有技术的盘阵列装置100的情况下,如果路由器14之一发生故障,则与这个路由器14相连的通道适配器11和盘适配器13在这个路由器14发生故障的同时也是不能使用的。
发明内容
鉴于前述问题,本发明的目的是提供一种数据存储系统和数据存储控制装置,它们用于实现各单元之间的高流量数据传递,并且能够很容易地实现小规模到大规模的结构,而不会引发安装问题。
本发明的另一个目的是提供一种数据存储系统和数据存储控制装置,它们具有以相同单元的组合轻松实现小规模到大规模结构的灵活性,同时保持了即使在一个单元故障的情况下也能够操作的冗余度。
本发明的再一个目的是提供一种数据存储系统和数据存储控制装置,它们用于轻松实现小规模到大规模的结构,而不会引发安装问题,同时保持了高流量和冗余度。
为了实现这些目的,本发明的数据存储系统具有:多个存储装置,用于存储数据;和多个控制模块,用于按照来自于主机的存取指令进行所述存储装置的存取控制。并且所述控制模块还包括:缓冲存储器,用于存储一部分存储在所述存储装置中的数据;缓存控制单元,用于控制所述缓冲存储器;第一接口单元,用于控制与所述主机的连接;第二接口单元,用于控制与所述多个存储装置的连接;和多个第一切换单元,设置在所述多个控制模块与所述多个存储装置之间,用于选择性地开关各个控制模块的所述第二接口单元和所述多个存储装置。并且所述多个控制模块与所述多个第一切换单元是使用背板相连接的。
本发明的数据存储控制装置具有:缓冲存储器,用于存储一部分存储在所述存储装置中的数据;缓存控制单元,用于控制所述缓冲存储器;多个控制模块,具有第一接口单元,用于控制与所述主机的连接,和第二接口单元,用于控制与所述多个存储装置的连接;和多个第一切换单元,设置在所述多个控制模块与所述多个存储装置之间,用于选择性地开关各个控制模块的所述第二接口单元和所述多个存储装置。并且所述多个控制模块与所述多个第一切换单元是使用背板相连接的。
在本发明中,优选地,所述缓存控制单元和所述第二接口单元通过具有低等待时间的高速串行总线相连接,并且所述第二接口单元与所述多个第一切换单元使用所述背板通过串行总线相连接。
在本发明中,优选地,所述控制模块还包括用于与另外一个所述控制模块进行通信的通信单元,并且还包括第二切换单元,用于选择性地连接各所述控制模块中的通信单元。
在本发明中,优选地,各个控制模块的通信单元和第二切换单元是使用背板进行连接。
在本发明中,优选地,所述第一切换单元和所述多个存储装置是通过缆线进行连接的。
在本发明中,优选地,所述存储装置还包括多个存取端口,并且其中多个不同的第一切换单元与所述多个存取端口相连接。
在本发明中,优选地,所述缓存控制单元和所述第二接口单元是通过多路高速串行总线相连接的,并且所述第二接口单元和所述多个第一切换单元是使用背板通过串行总线相连接的。
在本发明中,优选地,所述高速串行总线是PCI-Express总线。
在本发明中,优选地,所述串行总线是光纤通道。
在本发明中,优选地,所述缓存控制单元和所述第一接口单元是通过具有低等待时间的高速串行总线相连接的。
在本发明中,各个控制模块的第二接口与多个第一切换单元相连接,所以所有的控制模块都可以维持对所有存储装置进行存取的冗余度,并且即使控制模块的数量增加,控制模块与第一切换单元也使用背板通过串行总线(具有构成接口的少量信号)相连接,所以在印刷电路板上进行安装是可行的。
附图说明
附图1是示出了依据本发明的实施例的数据存储系统的框图;
附图2是示出了附图1中的控制模块的框图;
附图3是示出了附图1和附图2中的后端路由器和盘封装组的框图;
附图4是示出了附图1和附图3中的盘封装组的框图;
附图5是示出了附图1和附图2中的结构的读取处理的示意图;
附图6是示出了附图1和附图2中的结构的写入处理的示意图;
附图7是示出了依据本发明的实施例的控制模块的安装结构的示意图;
附图8是示出了依据本发明的实施例的数据存储系统的安装结构示例的示意图;
附图9是示出了依据本发明的实施例的大规模存储系统的框图;
附图10是示出了依据本发明的另一实施例的中等规模存储系统的框图;
附图11是示出了依据第一种现有技术的存储系统的框图;
附图12是示出了依据第二种现有技术的存储系统的框图;
附图13是示出了依据附图12中的第二种现有技术的存储系统的安装结构的示意图。
具体实施方式
现在将按照数据存储系统、读/写处理、安装结构和其它实施例的顺序介绍本发明的实施例。
数据存储系统
附图1是示出了依据本发明的实施例的数据存储系统的框图,附图2是示出了附图1中的控制模块的框图,附图3是示出了附图1中的后端路由器和盘封装组的框图,而附图4是示出了附图1和附图3中的盘封装组的框图。
附图1示出了作为示例具有八个控制模块的大规模存储系统。如附图1所示,存储系统1具有:多个用于保存数据的盘封装组2-0到2-25;多个(在本情况下是八个)设置在未示出的主计算机(数据处理单元)与多个盘封装组2-0到2-25之间的控制模块4-0到4-7;多个(在本情况下是八个)设置在多个控制模块4-0到4-7与多个盘封装组2-0到2-25之间的后端路由器(第一切换单元:在图中标为BRT,此后称其为BRT)5-0到5-7以及多个(在本情况下是两个)前端路由器(第二切换单元:在图中标为FRT,此后称之为FRT)6-0到6-1。
控制模块4-0到4-7中的每一个具有缓存管理器40、通道适配器(第一接口单元:在图中标为CA)41a到41d、盘适配器(第二接口单元:在图中标为DA)42a和42b以及DMA(直接存储器存取)引擎(通信单元:在图中标为DMA)43。
在附图1中,为了简化作图,仅对控制模块4-0标出了附图标记缓存管理器“40”,通道适配器“41a”、“41b”、“41c”和“41d”,盘适配器的“42a”和“42b”以及DMA的“43”,并且省略了其它控制模块4-1到4-7中的组成元件的这些附图标记。
现在将参照附图2介绍控制模块4-0到4-7。缓存管理器40根据来自主计算机的处理请求(读请求或写请求)进行读/写处理,并且该缓存控制器40具有缓冲存储器40b和缓存控制单元40a。
缓冲存储器40b保存盘封装组2-0到2-25的多个盘中存储的数据的一部分,就是说,它起多个盘的缓存器的作用。
缓存控制单元40a控制缓冲存储器40b、通道适配器41、装置适配器42和DMA 43。为此,缓存控制单元40a具有一个或多个(在附图2中是2个)CPU 400和410以及存储器控制器420。存储器控制器420控制各个存储器的读/写,并且开关路径。
经存储器总线434与缓冲存储器40b相连接的存储器控制器420经CPU总线430和432与CPU 400和410相连接,并且还经后面将要提到的四路高速串行总线(例如,PCI-Express)440和442与盘适配器42a和42b相连接。同样,存储器控制器420经四路高速串行总线(例如,PCI-Express)443、444、445和446与通道适配器41a、41b、41c和41d相连接,并且经四路高速串行总线(例如,PCI-Express)447和448与DMA 43-a到43-b相连接。
后面将要介绍,这种高速总线(比如PCI-Express)以分组方式进行通信,并且通过设置多路串行总线,使得以很快的响应速度进行的通信成为可能,这样进行的通信具有很小的延迟,即具有很低的等待时间,即使在减少了信号线的数量的情况下也是如此。
通道适配器41a到41d是用于主计算机的接口,并且通道适配器41a到41d分别与不同的主计算机相连接。优选地,借助总线(比如光纤通道和以太网(Ethernet))将通道适配器41a到41d分别与相应主计算机的接口单元相连接,并且在这种情况下,使用了光纤或同轴电缆作为总线。
这些通道适配器41a到41d中的每一个构成为各个控制模块4-0到4-7的一部分,但是,作为相应主计算机与控制模块4-0到4-7之间的接口,必须要支持多种协议。由于所要安装的协议依相应的主计算机而不同,将作为控制模块4-0到4-7的主要单元的缓存管理器40安装在不同的印刷电路板上,如后面在附图7中介绍的那样,从而在需要的时候能够很容易地替换各个通道适配器41a到41d。
通道适配器41a到41d应当支持的与主计算机的协议的示例是相应于上面提到的光纤通道和以太网的iSCSI(因特网小计算机系统接口)。各个通道适配器41a到41d经设计用于连接LSI(大规模集成电路)与印刷电路板的总线(比如前面提到的PCI-Express总线)直接与缓存管理器40连接。由此,能够实现各通道适配器41a到41d与缓存管理器40之间要求的高流量。
盘适配器42a和42b是盘封装组2-0到2-25到盘驱动器的接口,并且与连接在盘封装组2-0到2-25上的BRT 5-0到5-7相连接,为了进行这一连接,使用了四个FC(光纤通道(Fibre Channel)))端口。各个盘适配器42a和42b通过上面提到的设计用于连接LSI(大规模集成电路)与印刷电路板的总线(比如PCI-Express)直接与缓存管理器40相连接。由此,能够实现各个盘适配器42a和42b与缓存管理器40之间要求的高流量。
如附图1和附图3所示,BRT 5-0到5-7是多端口开关,它们选择性地开关并可通信地连接各个控制模块4-0到4-7的盘适配器42a和42b与各个盘封装组2-0到2-25。
如附图3所示,多个(在本情况下是两个)BRT 5-0到5-1与各个盘封装组2-0到2-7相连接。如附图4所示,各个盘封装组2-0具有多个盘驱动器200,这些盘驱动器200分别具有两个端口,并且这个盘封装组2-0还具有单位盘封装组20-0到23-0,这些单位盘封装组具有四个连接端口210、212、214和216。这些单位盘封装组是串联连接的,以便实现容量的增大。
在盘封装组20-0到23-0中,各个盘驱动器200的各个端口经从两个端口210和212引出的一对FC缆线与这两个端口210和212相连接。这两个端口210和212与不同的BRT 5-0和5-1相连接,如附图3所示。
如附图1所示,各个控制模块4-0到4-7的盘适配器42a和42b分别与所有的盘封装组2-0到2-25相连接。换句话说,各个控制模块4-0到4-7的盘适配器42a分别与连接于盘封装组2-0到2-7上的BRT 5-0(见附图3)、连接于盘封装组2-8、2-9、——上的BRT 5-2、连接于盘封装组2-16、2-17、——上的BRT 5-4和连接于盘封装组2-24、2-25、——上的BRT 5-6相连接。
采用同样的方式,各个控制模块4-0到4-7的盘适配器42b分别与连接于盘封装组2-0到2-7上的BRT 5-1(见附图3)、连接于盘封装组2-8、2-9、——上的BRT 5-3、连接于盘封装组2-16、2-17、——上的BRT 5-5和连接于盘封装组2-24、2-25、——上的BRT 5-7相连接。
这样,将多个(在本情况下是两个)BRT连接到了各个盘封装组2-0到2-31上,并且同一控制模块4-0到4-7中的不同的盘适配器42a和42b分别与连接到同一盘封装组2-0到2-31的两个BRT相连接。
借助这种结构,每个控制模块4-0到4-7能够经盘适配器42a或42b对所有的盘封装组(盘驱动器)2-0到2-31进行存取。
这些构成为控制模块4-0到4-7的一部分的盘适配器42a和42b中的每一个安装在缓存管理器40的电路板上,该缓存管理器40是控制模块4-0到4-7的主要单元,各个盘适配器42a和42b借助例如PCI(外围部件互连)-Express总线与缓存管理器40直接连接,并且由此,能够实现各个盘适配器42a和42b与缓存管理器40之间要求的高流量。
而且如附图2所示,各盘适配器42a和42b借助总线(比如光纤通道和以太网)与相应的BRT 5-0到5-7相连接。在这种情况下,该总线通过电子布线安装在背板的印刷电路板上,后面将作介绍。
各个控制模块4-0到4-7的盘适配器42和42b和BRT 5-0到5-7进行一对一网形连接,从而连接到了所有的盘封装组上,如前所述,只要控制模块4-0到4-7的数量(换句话说,盘适配器42a和42b的数量)增加,连接线路的数量就会增加,并且连接关系会变得更加复杂,这就会造成物理安装困难。但是当将光纤通道(信号数量少,构成的接口小)用于盘适配器42a和42b与BRT 5-0到5-7之间的连接时,在印刷电路板上进行安装变得可行了。
当各个盘适配器42a和42b与相应的BRT 5-0到5-7通过光纤通道连接时,BRT 5-0到5-7就成为了光纤通道的开关。各个BRT 5-0到5-7与相应的盘封装组2-0到2-31也是例如通过光纤通道连接的,并且在这种情况下,由于模块不同,使用了光缆500和510进行连接。如附图1所示,DMA引擎43与其它控制模块4-0到4-7相互通信,并且负责与其它控制模块4-0到4-7的通信和数据传递处理。各个控制模块4-0到4-7的各个DMA引擎43构成为控制模块4-0到4-7的一部分,并且安装在缓存管理器40的电路板上,该缓存管理器40是控制模块4-0到4-7的主要单元。并且DMA引擎43借助前面提到的高速串行总线与缓存管理器40直接连接,并且经FRT 6-0和6-1与其它控制模块4-0到4-7的DMA引擎43相互通信。
FRT 6-0和6-1与多个(具体来说是三个或更多,在本情况下是八个)控制模块4-0到4-7的DMA引擎43相连接,并且选择性地开关并可通信地连接这些控制模块4-0到4-7。
借助这种结构,各个控制模块4-0到4-7的各个DMA引擎43执行通信和数据传递处理(例如,镜像处理),所述处理是依照来自主计算机的存取请求在连接到这个控制模块上的缓存管理器40与其它控制模块4-0到4-7的缓存管理器40之间经FRT 6-0和6-1发生的。
如附图2所示,各个控制模块4-0到4-7的DMA引擎43由多个(在本情况下是两个)DMA引擎43-a和43-b构成,并且这两个DMA引擎43-a和43-b中的每一个都使用这两个FRT 6-0和6-1。
DMA引擎43-a和43-b通过例如上面提到的PCI-Express总线与缓存管理器40相连接,以便实现低等待时间。
在各个控制模块4-0到4-7之间(换句话说,在各个控制模块4-0到4-7的缓存管理器40之间)进行通信和数据传递处理的情况下,数据传递量很高,优选地能减少通信所需的时间,并要求高的流量和低的等待时间(很快的响应速度)。因此,如附图1和附图2所示,各个控制模块4-0到4-7的DMA引擎43与FRT 6-0和6-1是通过使用高速串行传输(PCI-Express或Rapid-IO)的总线进行连接的,这种总线被设计成同时满足高流量和低等待时间的要求。
PCI-Express和Rapid-IO使用2.5Gbps高速串行传输,并且使用了称为LVDS(低电压差分信令)的小幅度差分接口作为其总线接口。
读/写处理
现在将介绍附图1到附图4中的数据存储系统的读取处理。附图5是示出了附图1和附图2中的结构的读取操作的示意图。
当缓存管理器40经相应的通道适配器41a到41d接收到来自一个主计算机的读取请求时,如果缓冲存储器40b保存着这一读取请求的目标数据,则缓存管理器40将保存在缓冲存储器40b中的这一目标数据经通道适配器41a到41d发送给主计算机。
如果这一数据没有保存在缓冲存储器40b中,则缓存控制单元40a将目标数据从保存着这一数据的盘驱动器200中读取到缓冲存储器40b中,然后将该目标数据发送给发出读取请求的主计算机。
将参照附图5介绍对盘驱动器进行的这一读取处理。
(1)缓存管理器40的控制单元40a(CPU)在缓冲存储器40b的描述符区中创建FC报头和描述符。该描述符是向数据传递电路(DMA电路)请求数据(DMA)传递的指令,包括FC报头在缓冲存储器上的地址、数据传递到缓冲存储器上的地址、其数据字节数和数据传递的盘的逻辑地址。
(2)启动盘适配器42的数据传递电路。
(3)盘适配器42的已启动数据传递电路从缓冲存储器40b中读取描述符。
(4)盘适配器42的已启动数据传递电路从缓冲存储器40b中读取FC报头。
(5)盘适配器42的已启动数据传递电路对描述符进行分析,并且获得关于所请求的盘、首地址和字节数的数据,并且经光纤通道500(510)将FC报头传递给目标盘驱动器200。盘驱动器200读取所请求的目标数据,并且经光纤通道500(510)将其发送给盘适配器42的数据传递电路。
(6)盘驱动器200读取所请求的目标数据,并且当传输完成时,经光纤通道500(510)向盘适配器42的数据传递电路发送完成通知。
(7)当接收到完成通知时,盘适配器42的已启动数据传递电路从盘适配器42的存储器中读取已读取数据并且将其存储到缓冲存储器40b中。
(8)当读取传递完成时,盘适配器42的已启动数据传递电路通过中断向缓存管理器40发送完成通知。
(9)当接收到来自盘适配器42的中断参数时,缓存管理器40的控制单元40a确认读取传递。
(10)缓存管理器40的控制单元42a检查盘适配器42的结束指针,并且确认读取传递完成。
所有连接线路必须具有高流量以实现足够高的性能,并且由于尤其是缓存控制单元40a与盘适配器42之间的信号交换是很频繁的(在附图5中是七次),需要具有特别低等待时间的总线。
在这个例子中,使用了PCI-Express(四路)和光纤通道(4G)作为高流量连接线路,但是PCI-Express是低等待时间连接线路,而光纤通道连接具有相对较高的等待时间(数据传递花费时间)。
在第二种现有技术的情况下,等待时间高的光纤通道不能用于CM 10与DA 13或CA 11之间的RT 14(见附图12),但是在本发明中,具有附图1中的结构,光纤通道可以用于BRT 5-0到5-7。
要实现低等待时间,总线的信号数量不能减少到小于某个数量,但是依据本发明,使用少量信号线的光纤通道可以用于盘适配器42与BRT5-0之间的连接,所以这减少了背板上的信号线数量,这对安装来说是很有效的。
现在将介绍写入操作。当经相应的通道适配器41a到41d接收到来自主计算机之一的写入请求时,接收到写入请求命令和写入数据的通道适配器41a到41d向缓存管理器40询问写入数据应当写入的缓冲存储器40b的地址。
当接收到来自缓存管理器40的响应时,通道适配器41a到41d将写入数据写入到缓存管理器40的缓冲存储器40b中,而且还将该写入数据写入到不同于这个缓存管理器40的至少一个缓存管理器40(换句话说,不同控制模块4-0到4-7中的缓存管理器40)中的缓冲存储器40b中。为此,通道适配器41a到41d启动DMA引擎43,并且经FRT 6-0和6-1将写入数据写入到另一个控制模块4-0到4-7中的缓存管理器40中的缓冲存储器40b中。
这里将写入数据写入到了至少两个不同的控制模块4-0到4-7的缓冲存储器40b中,这是因为要对数据进行复制(镜像),以便即使控制模块4-0到4-7或缓存管理器40发生了意外的硬件故障也能防止数据丢失。
当写入数据向这多个缓冲存储器40b的写入正常结束时,通道适配器41a到41d向主计算机3-0到3-31发出完成通知,并且处理结束。
必须还要将这一写入数据反写到目标盘驱动器中(反写技术,writeback)。缓存控制单元40a按照内部进度将缓冲存储器40b的写入数据反写到保存这一目标数据的盘驱动器200中。将参照附图6描述这一对盘驱动器进行的写入处理。
(1)缓存管理器40的控制单元40a(CPU)在缓冲存储器40b的描述符区中创建FC报头和描述符。该描述符是向数据传递(DMA)电路请求数据传递(DMA)的指令,并且包括FC报头在缓冲存储器上的地址、数据要传递到缓冲存储器上的地址及其数据字节数,以及数据传递的盘的逻辑地址。
(2)启动盘适配器42的数据传递电路。
(3)盘适配器42的已启动数据传递电路从缓冲存储器40b中读取描述符。
(4)盘适配器42的已启动数据传递电路从缓冲存储器40b中读取FC报头。
(5)盘适配器42的已启动数据传递电路对描述符进行分析,并且获得关于所请求的盘、首地址和字节数的数据,并且从缓冲存储器40b中读取数据。
(6)在读取完成之后,盘适配器42的数据传递电路经光纤通道500(510)将FC报头和数据传递给目标盘驱动器200。盘驱动器200将所传递的数据写入到内部盘上。
(7)当数据的写入完成时,盘驱动器200经光纤通道500(510)向盘适配器42的数据传递电路发送完成通知。
(8)当接收到完成通知时,盘适配器42的已启动数据传递电路借助中断向缓存管理器40发送完成通知。
(9)当接收到来自盘适配器42的中断参数时,缓存管理器40的控制单元40a确认写入操作。
(10)缓存管理器40的控制单元42a检查盘适配器42的结束指针,并且确认写入操作完成。
在附图6和附图5中,箭头标志都表示分组信息(比如数据)的传递,而U形弯箭头标志都表示将数据发送回数据请求端的数据读取。由于需要确认DA中控制电路的开始和结束状态,因此传递一次数据,要在CM 40与DA 42之间交换七次数据。数据在DA 42与盘200之间交换了两次。
由此,可以理解,缓存控制单元40与盘适配器42之间的连接线路需要低等待时间,并且另一方面,具有少量信号线的接口可以用于盘适配器42和盘装置200。
安装结构
附图7是示出了依据本发明的控制模块的安装结构示例的示意图,附图8是示出了包括附图7中的控制模块和盘封装组的安装结构示例的示意图,而附图9和附图10是示出了具有这些安装结构的数据存储系统的框图。
如附图8所示,四个盘封装组2-0、2-1、2-8和2-9安装在了存储装置主体的上侧。控制电路安装在了存储装置的下半部分中。这个下半部分由背板7分成了前后两个部分,如附图7所示。分别在背板7的前侧和后侧创建了插槽。在存储系统具有附图9中的大规模结构的情况下,在前侧设置了八个(八片)CM 4-0到4-7,而在后侧设置了两个(两片)FRT 6-0和6-1、八个(八片)BRT 5-0到5-7和负责电源控制的服务处理机SVC(附图1和附图9中未示出)。
在附图7中,八片CM 4-0到4-7和两片FRT 6-0和6-1是经背板7由四路PCI-Express连接的。PCI-Express具有四个(差分和双向)信号线,所以四路使用了16根信号线,这意味着信号线的数量为16×16=256。这八片CM 4-0到4-7与八片BRT 5-0到5-7是经背板7由光纤通道连接的。光纤通道(具有差分和双向信号线)具有1×2×2=4根信号线,所以信号线的数量是8×8×4=256。
通过如上面所述依据连接位置而不同地使用总线,可以借助512根信号线来实现八片CM 4-0到4-7、两片FRT 6-0和6-1和八片BRT 5-0到5-7,即使在存储系统具有如附图9中所示的大规模结构的情况下也是如此。这一信号线的数量是能够足量安装在背板基板7上的信号线的数量,并且电路板的信号层数量是六个,这个数量是足够用的,并且处在从成本角度讲能够实现的范围之内。
在附图8中,安装了四个盘封装组2-0、2-1、2-8和2-9(见附图9),而其它的盘封装组2-3到2-7和2-10到2-31安装在不同的主体上。
附图10中的中等规模存储系统也能够采用类似的结构来实现。换句话说,可以采用同样的体系结构来实现四个单元的CM 4-0到4-3、四个单元的BRT 5-0到5-3、两个单元的FRT 6-0到6-1和16个模块的盘封装组2-0到2-15的结构。
各个控制模块4-0到4-7的盘适配器42a和42b借助BRT与所有的盘驱动器200相连接,从而各个控制模块4-0到4-7能够经盘适配器42a或42b对所有的盘驱动器进行存取。
这些盘适配器42a和42b分别安装在缓存管理器40的电路板上,该缓存管理器40是控制模块4-0到4-7的主要单元,并且各个盘适配器42a和42b可以借助诸如PCI-Express之类的低等待时间总线直接与缓存管理器40相连接,所以能够实现高流量。
各个控制模块4-0到4-7的盘适配器42a和42b与BRT 5-0到5-7进行一对一网形连接,所以即使系统的控制模块4-0到4-7的数量(换句话说,盘适配器42a和42b的数量)增加,光纤通道(具有构成接口的少量信号)也可以用于盘适配器42a和42b与BRT 5-0到5-7之间的连接,这解决了安装问题。
在各个控制模块4-0到4-7之间(换句话说,在各个控制模块4-0到4-7的缓存管理器40之间)进行通信和数据传递处理的情况下,数据传递量很高,并且最好能减少连接所需的时间,并且要求高的流量和低的等待时间(很快的响应速度),所以如附图2所示,各个控制模块4-0到4-7的DMA引擎43与FRT 6-0和6-1是通过PCI-Express进行连接的,这种总线是使用高速串行传输的总线,被设计成同时满足高流量和低等待时间的要求。
其它实施例
依据上述的实施例,控制模块中的信号线是使用PCI-Express加以介绍的,但是也可以使用其它的高速串行总线,比如Rapid-IO。控制模块中的通道适配器和盘适配器的数量可以依据需要增加或减少。
对于盘驱动器来说,可以使用诸如硬盘驱动器、光盘驱动器和磁光盘驱动器之类的存储装置。
本发明是利用具体实施例进行介绍的,但是本发明也可以采用处于本发明的基本特征的范围之内的各种不同的方式来具体实现,并且不应将这些方式排除于本发明的范围之外。
由于各个控制模块的第二接口与多个第一切换单元相连接,因此所有的控制模块都能够维持访问所有存储装置的冗余度,并且即使控制模块的数量增加,也可以使用背板通过串行总线(具有少量构成接口的信号)将控制模块与第一切换单元相连接,因此安装到印刷电路板上成为可能,同时保持控制模块内的低等待时间通信。所以本发明对统一从大规模到小规模的体系结构来说是很有效果的,并且能够有助于降低装置的成本。
相关申请的交叉引用
本申请基于2004年11月30日提交的在先日本专利申请No.2004-347411和2005年1月28日提交的在先日本专利申请No.2005-022121并且要求这些在先申请的优先权,这些在先申请的全部内容以引用的方式并入本文。
Claims (20)
1.一种数据存储系统,包括:
多个存储装置,用于存储数据;和
多个控制模块,用于依据来自于主机的存取指令进行所述存储装置的存取控制,
其中所述控制模块进一步包括:
缓冲存储器,用于存储一部分存储在所述存储装置中的数据;
缓存控制单元,用于控制所述缓冲存储器;
第一接口单元,用于控制与所述主机的接口;
第二接口单元,用于控制与所述多个存储装置的接口;
并且其中所述数据存储系统还包括:
多个第一切换单元,设置在所述多个控制模块与所述多个存储装置之间,用于选择性地开关各个控制模块的所述第二接口单元和所述多个存储装置;和
背板,用于将所述多个控制模块与所述第一切换单元相连接。
2.根据权利要求1所述的数据存储系统,其中所述缓存控制单元和所述第二接口单元通过具有低等待时间的高速串行总线相连接,并且所述第二接口单元与所述多个第一切换单元使用所述背板通过串行总线相连接。
3.根据权利要求1所述的数据存储系统,其中所述控制模块还包括用于与另外一个所述控制模块进行通信的通信单元,和
所述系统还包括第二切换单元,用于选择性地连接各所述控制模块中的通信单元。
4.根据权利要求3所述的数据存储系统,其中各个控制模块的通信单元和第二切换单元是使用所述背板进行连接的。
5.根据权利要求1所述的数据存储系统,其中所述第一切换单元和所述多个存储装置是通过缆线进行连接的。
6.根据权利要求1所述的数据存储系统,其中所述存储装置还包括多个存取端口,
并且其中所述多个不同的第一切换单元与所述多个存取端口相连接。
7.根据权利要求2所述的数据存储系统,其中所述缓存控制单元和所述第二接口单元是通过多路高速串行总线相连接的,
并且所述第二接口单元和所述多个第一切换单元是使用所述背板通过串行总线相连接的。
8.根据权利要求2所述的数据存储系统,其中所述高速串行总线是PCI快速总线。
9.根据权利要求2所述的数据存储系统,其中所述串行总线是光纤通道。
10.根据权利要求2所述的数据存储系统,其中所述控制模块通过具有低等待时间的高速串行总线连接所述缓存控制单元和所述第一接口单元。
11.一种数据存储控制装置,用于依据来自于主机的存取指令进行用于存储数据的多个存储装置的存取控制,该数据存储控制装置包括:
多个控制模块,包括:
缓冲存储器,用于存储一部分存储在所述存储装置中的数据;
缓存控制单元,用于控制所述缓冲存储器;
第一接口单元,用于控制与所述主机的连接,和第二接口单元,用于控制与所述多个存储装置的连接,
多个第一切换单元,设置在所述多个控制模块与所述多个存储装置之间,用于选择性地开关各个控制模块的所述第二接口单元和所述多个存储装置;和
背板,用于将所述多个控制模块与所述第一切换单元相连接。
12.根据权利要求11所述的数据存储控制装置,其中所述缓存控制单元和所述第二接口单元通过具有低等待时间的高速串行总线相连接,
并且所述第二接口单元与所述多个第一切换单元使用所述背板通过串行总线相连接。
13.根据权利要求11所述的数据存储控制装置,其中所述控制模块还包括用于与另外一个所述控制模块进行通信的通信单元,
并且所述装置还包括第二切换单元,用于选择性地连接各所述控制模块中的通信单元。
14.根据权利要求13所述的数据存储控制装置,其中各个控制模块的通信单元和第二切换单元是使用所述背板进行连接的。
15.根据权利要求11所述的数据存储控制装置,其中所述第一切换单元和所述多个存储装置是通过缆线进行连接的。
16.根据权利要求11所述的数据存储控制装置,其中所述多个不同的第一切换单元分别与具有多个存取端口的各个所述存储装置相连接。
17.根据权利要求12所述的数据存储控制装置,其中所述缓存控制单元和所述第二接口单元是通过多路高速串行总线相连接的,
并且所述第二接口单元和所述多个第一切换单元是使用所述背板通过串行总线相连接的。
18.根据权利要求12所述的数据存储控制装置,其中所述高速串行总线是PCI快速总线。
19.根据权利要求12所述的数据存储控制装置,其中所述串行总线是光纤通道。
20.根据权利要求12所述的数据存储控制装置,其中所述缓存控制单元和所述第一接口单元是通过具有低等待时间的高速串行总线相连接的。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004347411 | 2004-11-30 | ||
JP2004347411A JP4404754B2 (ja) | 2004-11-30 | 2004-11-30 | データストレージ装置及び情報処理システム |
JP2005022121 | 2005-01-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1782978A true CN1782978A (zh) | 2006-06-07 |
CN100347655C CN100347655C (zh) | 2007-11-07 |
Family
ID=36633589
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100796426A Expired - Fee Related CN100347655C (zh) | 2004-11-30 | 2005-06-23 | 数据存储系统和数据存储控制装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP4404754B2 (zh) |
CN (1) | CN100347655C (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008064581A1 (fr) * | 2006-11-30 | 2008-06-05 | Hangzhou H3C Technologies Co., Ltd. | Plan médian de dispositif de communication |
CN102163130A (zh) * | 2010-02-23 | 2011-08-24 | 慧荣科技股份有限公司 | 管理存储器读出数据的方法以及记忆装置 |
CN111522513A (zh) * | 2020-04-24 | 2020-08-11 | 上海航天计算机技术研究所 | 一种可扩展的高性能多接口星载存储系统 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8145837B2 (en) * | 2007-01-03 | 2012-03-27 | Raytheon Company | Computer storage system with redundant storage servers and at least one cache server |
JP4362135B2 (ja) | 2007-02-13 | 2009-11-11 | 富士通株式会社 | データ転送装置およびデータ転送方法 |
JP5545108B2 (ja) | 2010-08-04 | 2014-07-09 | 富士通株式会社 | ストレージシステム、制御装置および制御方法 |
JP5736875B2 (ja) | 2011-03-18 | 2015-06-17 | 富士通株式会社 | ストレージ装置およびストレージ装置の制御方法 |
JP6582523B2 (ja) | 2015-04-30 | 2019-10-02 | 富士通株式会社 | ストレージ装置、制御装置、制御プログラム |
JP6604029B2 (ja) | 2015-04-30 | 2019-11-13 | 富士通株式会社 | 制御装置、ストレージ装置、制御プログラム |
JP6540204B2 (ja) | 2015-04-30 | 2019-07-10 | 富士通株式会社 | 中継装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4392877B2 (ja) * | 1998-09-18 | 2010-01-06 | 株式会社日立製作所 | ディスクアレイ制御装置 |
EP1026575A3 (en) * | 1999-02-08 | 2006-09-06 | Hitachi, Ltd. | Disk array system and method of changing its configuration |
US6351838B1 (en) * | 1999-03-12 | 2002-02-26 | Aurora Communications, Inc | Multidimensional parity protection system |
JP2001256003A (ja) * | 2000-03-10 | 2001-09-21 | Hitachi Ltd | ディスクアレイ制御装置、そのディスクアレイ制御ユニットおよびその増設方法 |
CN100336050C (zh) * | 2003-04-04 | 2007-09-05 | 清华大学 | 海量网络存储器设备及其实现方法 |
-
2004
- 2004-11-30 JP JP2004347411A patent/JP4404754B2/ja not_active Expired - Fee Related
-
2005
- 2005-06-23 CN CNB2005100796426A patent/CN100347655C/zh not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008064581A1 (fr) * | 2006-11-30 | 2008-06-05 | Hangzhou H3C Technologies Co., Ltd. | Plan médian de dispositif de communication |
US7955087B2 (en) | 2006-11-30 | 2011-06-07 | Hangzhou H3C Technologies Co., Ltd. | Midplane of communication device |
CN102163130A (zh) * | 2010-02-23 | 2011-08-24 | 慧荣科技股份有限公司 | 管理存储器读出数据的方法以及记忆装置 |
CN102163130B (zh) * | 2010-02-23 | 2013-01-02 | 慧荣科技股份有限公司 | 管理存储器读出数据的方法以及记忆装置 |
CN111522513A (zh) * | 2020-04-24 | 2020-08-11 | 上海航天计算机技术研究所 | 一种可扩展的高性能多接口星载存储系统 |
CN111522513B (zh) * | 2020-04-24 | 2022-08-12 | 上海航天计算机技术研究所 | 一种可扩展的高性能多接口星载存储系统 |
Also Published As
Publication number | Publication date |
---|---|
CN100347655C (zh) | 2007-11-07 |
JP2006155392A (ja) | 2006-06-15 |
JP4404754B2 (ja) | 2010-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100347655C (zh) | 数据存储系统和数据存储控制装置 | |
CN1828510A (zh) | 数据存储系统和数据存储控制装置 | |
KR100766356B1 (ko) | 데이터 스토리지 시스템 및 데이터 스토리지 제어 장치 | |
US7562249B2 (en) | RAID system, RAID controller and rebuilt/copy back processing method thereof | |
CN1940849A (zh) | Raid系统及其重构/回拷处理方法 | |
US20070076321A1 (en) | Data storage system, data storage control device, and failure location diagnosis method thereof | |
US7467238B2 (en) | Disk controller and storage system | |
US20100153961A1 (en) | Storage system having processor and interface adapters that can be increased or decreased based on required performance | |
US20040139260A1 (en) | Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays | |
KR100736645B1 (ko) | 데이터 기억 시스템 및 데이터 기억 제어 장치 | |
CN1832489A (zh) | 一种对目的磁盘进行访问的方法和扩展磁盘容量的系统 | |
EP1966710B1 (en) | Integrated circuit capable of independently operating a plurality of communication channels | |
CN1924783A (zh) | 存储系统以及存储控制方法 | |
US8799549B2 (en) | Method for transmitting data between two computer systems | |
JP2006268402A (ja) | データストレージシステム及びストレージ制御装置の異常時のログデータ出力方法 | |
CN101044466A (zh) | 用于优化网络中的数据传送的方法和系统 | |
US7426658B2 (en) | Data storage system and log data equalization control method for storage control apparatus | |
JP4985750B2 (ja) | データストレージシステム | |
JP2006209549A (ja) | データストレージシステム及びデータストレージ制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20071107 Termination date: 20210623 |