当前位置: 首页 > 专利查询>英特尔公司专利>正文

具有模式匹配的高性能RAID-6系统体系结构技术方案

技术编号:5512639 阅读:186 留言:0更新日期:2012-04-11 18:40
一种加速单元分担来自处理器的计算密集型任务。该加速单元包括两条数据处理路径,每条数据处理路径具有一个算术逻辑单元并共享单个乘法器单元。每条数据处理路径可以对相同数据并行执行可配置的操作。提供特殊的复用器路径和指令以允许在数据经过加速单元的单次传递中在条带上计算P型和Q型校验子。

【技术实现步骤摘要】
【国外来华专利技术】
本公开涉及独立磁盘冗余阵列(RAID)系统,具体来说,涉及 RAID-6系统的计算加速。
技术介绍
出于可靠性、容量或性能的目的,独立磁盘冗余阵列(RAID)将 多个物理硬盘驱动器组合成逻辑驱动器。因此,取代多个物理硬盘驱 动器,操作系统看到单个逻辑驱动器。本领域技术人员众所周知,有 很多称为RAID级的标准方法用来在RAID系统的这些物理硬盘驱动 器上分配数据。例如,在0级RAID系统中,通过将数据分成多个块并将每个块 写入到独立的硬盘驱动器来在硬盘驱动器物理阵列上将数据条带化。 通过将负载散布到多个硬盘驱动器来提高输入/输出(1/0)性能。尽 管O级RAID提高了 1/0性能,但它不提供冗余度,因为如果一个硬 盘驱动器发生故障,则所有数据都会丟失。5级RAID系统通过在至少三个硬盘驱动器上将数据和奇偶校验 信息条带化来提供高级冗余度。在发生故障的情况下,将数据条带化 与分布式奇偶校验相结合来提供恢复路径。6级RAID系统通过允许 恢复双盘故障而提供甚至高于5级RAID系统的高级冗余度。在6级 RAID系统中,为数据生成称为P校验子(syndrome )和Q校验子的 两个校验子,并将它们存储在RAID系统的硬盘驱动器上。P校验子 是通过为条带(stripe)中的数据(数据块(长条)、P校验子块和Q校 验子块)简单计算奇偶校验信息而生成的。Q校验子的生成需要伽罗 瓦域(Galois Field)乘法,并且如果磁盘驱动器发生故障,则会比较6复杂。在盘恢复操作期间执行的恢复数据和/或P和/或Q校验子的重 新生成方案需要伽罗瓦域乘法和逆运算。重新生成通常是通过利用查找表进行计算或通过利用限于特定 多项式的多个伽罗瓦域乘法器来执行的。附图说明随着以下详细描述的继续,参照附图,要求权利的主题的实施例 的特征将变得显而易见,附图中,类似的数字描绘类似的部分,并且其中图1是示出RAID-6阵列的实施例的框图,图中示出多个条带, 每个条带包括在硬盘阵列上条带化的数据块(长条)与P和Q校验子;图2是根据本专利技术原理包括用于加速计算的加速单元的系统的实 施例的框图3是如图2所示的加速单元中的数据处理单元的实施例的框图4是如图3所示的数据处理单元的其中任何一条数据处理路径 的配置寄存器的实施例的框图5是如图3所示的数据处理单元的其中任何一条数据处理路径 的状态寄存器的实施例的框图6示出利用如图2所示的加速单元和如图3所示的数据处理单 元并行计算P和Q核_验子的方法的实施例;图7示出用于在如图1所示的RAID-6阵列中执行部分P和Q校 验子计算的方法的实施例。图8示出用于在如图1所示的RAID-6阵列中恢复两个数据盘的 损失的方法的实施例。图9示出用于执行比较检查的方法的实施例,该方法可在如图2 所示的力口速单元中执行。图10示出用于执行结果非零检查的方法的实施例,该方法可在如图2所示的加速单元中执行;以及图11 ^^艮据本专利技术原理包括用于加速RAID-6计算的加速单元的 实施例的系统的框图。尽管将参照要求权利的主题的说明性实施例继续进行以下详细 描述,但是本领域技术人员将明白其许多备选、修改和变换。因此, 希望广义地看待要求权利的主题,并且要求权利的主题只可如随附权 利要求中所述地那样进行定义。具体实施例方式图1是示出RAID-6阵列100的实施例的框图,其中示出多个条 带,每个条带包括在硬盘阵列150上条带化的数据块(长条)与P和 Q校验子。在所示实施例中,RAID阵列具有五个硬盘150:三个数据 盘和2个校验子(P, Q)盘。通过利用块级条带化配合分布在组成硬 盘上的P和Q校验子来以循环方式将数据写入到RAID-6阵列。诸如 分割成块的文件的连续数据可分布在条带(例如,水平条带0)上, 其中块之一存储在三个数据盘102上的数据块102、 104、 106中。为 水平条带0中的数据块102、 104、 106计算的P和Q ^^交验子存储在相 应的P块130和Q块132中。P和Q校验子块存储在每个条带的不同 硬盘150上。在一个实施例中, 一个条带中的每个块中有512个字节。P校验子可通过执行"异或"(XOR)操作(opemtion)来生成。 XOR是对两个操作数的逻辑操作,如果其中只有一个操作数具有逻辑 值'1,,则它产生逻辑值'1,。例如,具有值'11001010,的第一 操作数和具有值'10000011,的第二操作数的XOR提供具有值'01001001,的结果。如果存储第一操作数的硬盘驱动器发生故障, 则可通过对第二操作数和结果执行XOR操作来恢复第 一操作数。P校验子是利用形(XOR)操作在条带上计算获得的数据(D)的筒 单奇偶校验。在具有n个数据盘的系统中,P校验子的生成由下式1 表示P = D0 @ Di①D2……e Dj^ (式1 )Q校验子的计算需要利用伽罗瓦域多项式(g)进行乘法("。以非常 高的性能对8位(字节)伽罗瓦域多项式执行算术操作。多项式是只 利用加法、减法、乘法和非负整数指数来组合有限数量的常量和变量的表达式。 一个本原多项式是x8 + xA + xS+xS+l,它可用十六进制表示法以1D表示。多项式的伽罗瓦域(GF)操作又称为GF(^S)算术。 在具有n个数据盘的系统中,Q校验子的生成由下式2表示Q = g0*D0 g"Di十g2*D2...…十gn-"D^ (式2 )在条带基础上执行逐字节伽罗瓦域操作,其中块中的每个字节在 计算上独立于其它字节。逐字节伽罗瓦域操作可以适应多达 255 (2A8-l)个数据盘。图2是根据本专利技术原理包括加速单元的实施例以加速计算的系统 200的框图。系统包括用于存储工作请求210的存储器202和用于处理工作请 求210的状态机(微引擎)204。状态机204通过共享存储器206向 加速单元208发出指令。基于从状态机204执行的指令,加速单元208 可对8位伽罗瓦域多项式执行算术操作。在一个实施例中,状态机204可以是诸如可从Intel公司购得的 IXP 2400处理器的处理器中的多个微引擎之一。加速单元208分担 状态机(微引擎)204计算8位伽罗瓦域多项式的负担。存储器202和共享存储器206可以是动态随机存取存储器 (DRAM)、静态随机存取存储器(SRAM)、同步动态随机存取存 储器(SDRAM)、双倍数据速率2 (DDR2 ) RAM或Rambus动态随 机存取存储器(RDRAM)或任何其它类型存储器。加速单元208包括用于对数据执行操作的数据处理单元218。基 于存储在存储器中的工作请求210,状态机204可以使加速单元208 承担RAID阵列操作的计算。在一个实施例中,RAID阵列可以是如 图所示的RAID-6阵列100。加速单元208还包括控制寄存器212、状态寄存器214和加速单元状态机216。图3是如图2所示的加速单元208中的数据处理单元218的实施 例的框图。在所示实施例中,数据处理单元218包括两个算术逻辑单 元(ALU) 314、 316。 ALU对操作数执行算术和逻辑操作。由每个独 立ALU 314、 316执行的逻辑或算术操作可通过与ALU 314、 316相 关联的配置寄存器212 (图2)进行配置。在一本文档来自技高网...

【技术保护点】
一种装置,包括: 用于接收数据块的第一数据处理路径,所述第一数据处理路径包括用于存储所述数据块的第一累积缓冲器和用于对所述数据块执行第一操作的第一算术逻辑单元;以及 用于接收所述数据块的第二数据处理路径,所述第二数据处理路径包括 用于存储所述数据块的第二累积缓冲器和用于对所述数据块执行第二操作的第二算术逻辑单元,所述第一数据处理路径和所述第二数据处理路径共享乘法器,所述乘法器对所述数据块执行乘法操作,所述数据处理路径中的每条数据处理路径并行处理所述数据块以在所述数据块经过所述数据处理路径的单次传递中提供第一结果数据块和第二结果数据块。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:V戈帕尔G沃尔里奇K亚普W费哈利J弗拉尼奇R奥塔维
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1