基于条带的固态硬盘RAID实现方法及装置制造方法及图纸

技术编号:10671228 阅读:157 留言:0更新日期:2014-11-20 15:51
本发明专利技术适用于存储技术领域,提供了一种基于条带的固态硬盘RAID实现方法,所述方法包括:将所述固态硬盘中若干Block组成RAID阵列;将每个Block下相对位置相同的物理页组成一条带,每个条带的至少一物理页作为奇偶校验页;若所述RAID阵列中的某物理页数据出现异常,则通过该物理页数据所在条带的其它物理页数据计算恢复。本发明专利技术还相应的提供一种基于条带的固态硬盘RAID实现装置。借此,本发明专利技术能够在某页数据全部损坏的情况下恢复出该页数据,提高数据的可靠性。

【技术实现步骤摘要】
【专利摘要】本专利技术适用于存储
,提供了一种基于条带的固态硬盘RAID实现方法,所述方法包括:将所述固态硬盘中若干Block组成RAID阵列;将每个Block下相对位置相同的物理页组成一条带,每个条带的至少一物理页作为奇偶校验页;若所述RAID阵列中的某物理页数据出现异常,则通过该物理页数据所在条带的其它物理页数据计算恢复。本专利技术还相应的提供一种基于条带的固态硬盘RAID实现装置。借此,本专利技术能够在某页数据全部损坏的情况下恢复出该页数据,提高数据的可靠性。【专利说明】基于条带的固态硬盘RAID实现方法及装置
本专利技术涉及存储
,尤其涉及一种基于条带的固态硬盘RAID实现方法及 装直。
技术介绍
随着存储技术的发展,固态硬盘(SSD)已经成为计算机系统中的重要储存介质。 具体应用中,SSD-个物理页通常为program(编程)/read(读取)的最小单元。现有技术 有一种是将一个物理页分成均等的部分,如图1所示,LBA为固定大小的逻辑单元,一个物 理页包含多个LBA,一个或多个LBA组成一个ECC单元,可将一个或多个ECC单元作为数据 单元,留一同样大小的数据单元作为parity (奇偶校验)单元,并且有: Parity = DataO'Datal'Data2'Data3'Data4'Data5'Data6 当出现通过ECC无法恢复的错误时,例如Data3出错时,可通过以下公式计算出 Data3 :Data3 = Parity"DataO"Datal"Data2"Data4"Data5"Data6〇 但实际上,由于NAND flash的特性,SSD不能直接复写数据,需要先erase (擦除) 才能再写入数据,erase的最小单元为Block(存储块),Block由多个物理页组成,一个 Block擦除次数过多后可能成为坏块,这种情况下很可能一个物理页的数据全部无法恢复, 此时,上述方法就无法恢复出出错的物理页数据,造成数据丢失。 综上可知,现有技术在实际使用上显然存在不便与缺陷,所以有必要加以改进。
技术实现思路
针对上述的缺陷,本专利技术的目的在于提供一种基于条带的固态硬盘RAID实现方 法及装置,能够在某页数据全部损坏的情况下恢复出该页数据,提高数据的可靠性。 为了实现上述目的,本专利技术提供一种基于条带的固态硬盘RAID实现方法,所述方 法包括: 将所述固态硬盘中若干Block组成RAID阵列; 将每个Block下相对位置相同的物理页组成一条带,每个条带的至少一物理页作 为奇偶校验页; 若所述RAID阵列中的某物理页数据出现异常,则通过该物理页数据所在条带的 其它物理页数据计算恢复。 根据本专利技术的基于条带的固态硬盘RAID实现方法,所述将所述固态硬盘中若干 Block组成RAID阵列步骤包括: 静态配置若干编号呈递增排列的BANK,从每个BANK中选择一 Block ; 将所述选择的Block组成所述RAID阵列。 根据本专利技术的基于条带的固态硬盘RAID实现方法,所述方法还包括: 所述RAID阵列接收数据写入时,所述数据按照条带写入所述RAID阵列,所述条带 按照每个物理页所在BANK编号由小到大顺序写入数据,且最后写入所述奇偶校验页数据; 若所述条带中的某个物理页的数据写入出错,封锁所述条带中的物理页所在的一 组BLOCK,停止对该组BLOCK的数据写入,并将该组BLOCK的有效物理页搬移处理。 根据本专利技术的基于条带的固态硬盘RAID实现方法,所述RAID阵列接收数据写入 时,所述条带按照每个物理页所在BANK编号由小到大顺序写入数据,且所述数据存储到所 述RAID阵列前经过异或电路处理。 根据本专利技术的基于条带的固态硬盘RAID实现方法,所述若所述RAID阵列中的某 物理页数据出现异常,则通过该物理页数据所在条带的其它物理页数据计算恢复步骤包 括: 检测读取所述RAID阵列中的某物理页是否发生读Fai 1、读Empty或读UECC错误, 若是,则查找该物理页所在的条带; 读出所述条带其它物理页及奇偶校验页的数据; 将所述条带其它物理页及奇偶校验页的数据异或处理,获取所述发生异常的物理 页的数据。 本专利技术还提供一种基于条带的固态硬盘RAID实现装置,包括: RAID阵列模块,用于将所述固态硬盘中若干Block组成RAID阵列; 条带组合模块,用于将每个Block下相对位置相同的物理页组成一条带,每个条 带的至少一物理页作为奇偶校验页; 数据处理模块,用于所述RAID阵列中的某物理页数据出现异常时,通过该物理页 数据所在条带的其它物理页数据计算恢复。 根据本专利技术的基于条带的固态硬盘RAID实现装置,所述RAID阵列模块包括: 配置子模块,静态配置若干编号呈递增排列的BANK,从每个BANK中选择一 Block ; 阵列子模块,用于将所述选择的Block组成所述RAID阵列。 根据本专利技术的基于条带的固态硬盘RAID实现装置,所述装置还包括: 写数据模块,用于所述RAID阵列接收数据写入时,将所述数据按照条带写入所述 RAID阵列,将所述条带按照每个物理页所在BANK编号由小到大顺序写入数据,最后写入所 述奇偶校验页数据; 写错误处理模块,用于所述条带中的某个物理页的数据写入出错时,封锁所述条 带中的物理页所在的一组BLOCK,停止对该组BLOCK的数据写入,并将该组BLOCK的有效物 理页搬移处理。。 根据本专利技术的基于条带的固态硬盘RAID实现装置,所述RAID阵列接收数据写入 时,所述条带按照每个物理页所在BANK编号由小到大顺序写入数据,且所述数据存储到所 述RAID阵列前经过异或电路处理。 根据本专利技术的基于条带的固态硬盘RAID实现装置,所述数据处理模块包括: 检测子模块,用于检测读取所述RAID阵列中的某物理页是否发生读Fail、读 Empty或读UECC错误,若是,则交由查找子模块处理; 查找子模块,用于查找该物理页所在的条带,并读出所述条带其它物理页及奇偶 校验页的数据; 计算子模块,用于将所述条带其它物理页及奇偶校验页的数据异或处理,获取所 述发生异常的物理页的数据。 本专利技术通过将所述固态硬盘中若干Block组成RAID阵列,并将每个Block下相对 位置相同的物理页组成一条带,每个条带的至少一物理页作为奇偶校验页。借此,当RAID 阵列中的某物理页数据出现读失败,则通过该物理页数据所在条带的其它物理页数据计算 恢复。借此,本专利技术能够在某页数据全部损坏的情况下恢复出该页数据,提高数据的可靠 性。 【专利附图】【附图说明】 图1是现有技术的一物理页数据分布结构示意图; 图2是本专利技术的基于条带的固态硬盘RAID实现装置结构示意图; 图3是本专利技术的另一基于条带的固态硬盘RAID实现装置结构示意图; 图4是本专利技术的基于条带的RAID阵列数据分布结构示意图; 图5A是本专利技术一实施例的条带数据写入示意图; 图5B是本专利技术另一实施例的条带数据写入示意图; 图5C是本专利技术另一实施本文档来自技高网
...

【技术保护点】
一种基于条带的固态硬盘RAID实现方法,其特征在于,所述方法包括:将所述固态硬盘中若干Block组成RAID阵列;将每个Block下相对位置相同的物理页组成一条带,每个条带的至少一物理页作为奇偶校验页;若所述RAID阵列中的某物理页数据出现异常则通过该物理页数据所在条带的其它物理页数据计算恢复。

【技术特征摘要】

【专利技术属性】
技术研发人员:秦龙华李建王猛徐伟华
申请(专利权)人:记忆科技深圳有限公司
类型:发明
国别省市:广东;44

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

1