一种基于制造技术

技术编号:39897228 阅读:11 留言:0更新日期:2023-12-30 13:10
本申请涉及一种基于

【技术实现步骤摘要】
一种基于FPGA实现的RAID存储系统及方法


[0001]本申请涉及
FPGA
数据安全存储
,尤其是涉及一种基于
FPGA
实现的
RAID
存储系统及方法


技术介绍

[0002]目前,
FPGA(
可编程逻辑门阵列
)
是一种可编程的集成电路
(IC)
设备,具有丰富的逻辑和计算资源,并具备行执行程序的能力,可以实现高度的自由,定制芯片行为的能力

它可以在硬件级别上实现数字电路功能,与固定功能的硬件电路不同,
FPGA
允许用户根据其需求重新配置其内部逻辑门阵列,从而实现不同的数字电路功能

[0003]FPGA
包含大量的可编程逻辑资源,例如逻辑门

寄存器和算术逻辑单元,以及可用于内部连接的可编程连线和互连资源

这些资源可以根据特定的应用需求进行配置,从而创建各种不同的数字电路,如处理器

信号处理器

加密算法

通信接口

图像处理器等

[0004]RAID(
冗余阵列独立磁盘
)
是一种用于数据存储的技术,它将多个硬盘驱动器组合在一起,以提高数据存储的性能

可用性和
/
或容错性
。RAID
技术通过将数据分布存储在多个磁盘上,实现了数据冗余

负载均衡和数据备份,从而改善了存储系统的可靠性

[0005]不同的
RAID
级别
(
通常标识为
RAID 0、RAID 1、RAID 5、RAID 6

)
采用不同的数据存储和冗余策略

[0006]RAID
算法作为业内通用的存储算法,确保了各种使用场景下,不同的数据安全等级的存储要求

[0007]在当前的
RAID
算法的实现主要有两种方式:一个是基于
CPU
上软件程序实现的算法,另一种是基于专门的
RAID
芯片实现

[0008]针对上述中的相关技术,专利技术人认为将上述
RAID
算法运用到损坏存储芯片的数据恢复中时,基于
CPUC
软件程序实现的算法,由于进行了大量的“异或”运算,导致功耗及
CPU
负载较高,算法效率数据处理速率也较低,不适用于低功耗场景下的高速存储,基于专门的
RAID
芯片实现,该方法定制化程度较高,成本较高,国产化程度较低


技术实现思路

[0009]本专利技术所要解决的技术问题在于:提供一种基于
FPGA
实现的
RAID
存储系统及方法,它解决了在对损坏存储芯片数据恢复的过程中,
RAID
算法的实现基于
CPU
上软件程序以及基于专门的
RAID
芯片实现负载及成本较高的技术问题

[0010]为实现上述目的,本专利技术提供了如下技术方案:
[0011]一种基于
FPGA
实现的
RAID
存储系统,包括一个基于
FPGA
的固态硬盘控制器,所述固态硬盘控制器内至少连接两个
RAID
算法处理模块,所述固态硬盘控制器上连接有接口
FIFO
模块以及数据交互模块;所述固态硬盘控制器上还挂载有运行内存设备以及存储内存设备,所述运行内存设备内安装有若干个运行内存模块,所述存储内存设备内安装有若干个存储内存模块;接口
FIFO
模块,按照先进先出的原则将数据导入到固态硬盘控制器内;
RAID
算法处理模块,根据固态硬盘控制器收到的外部
RAID
类型的指示后,对应
RAID
算法处理模块对导入的数据进行处理;数据交互模块,实现
RAID
算法处理模块与运行内存设备

存储内存设备之间的数据交互;运行内存模块,用于数据的缓存及不同存储内存模块数据的区分;存储内存模块,对运行内存模块内的数据进行存储

[0012]通过上述技术方案,在进行数据存储时,将数据通过接口
FIFO
模块导入到固态硬盘控制器内,然后固态硬盘控制器内的
RAID
算法处理模块,根据固态硬盘控制器收到的外部
RAID
类型的指示后,对应
RAID
算法处理模块对导入的数据进行处理,之后处理后的数据通过数据交互模块写入到运行内存模块,当一个运行内存模块达到约定数量级后,固态硬盘控制器通过数据交互模块将运行内存模块中的数据储存到存储内存模块中

将此方法用于数据的恢复时,
RAID
算法处理模块能够根据外部给出的
RAID
类型指示进行工作,大大减小了固态硬盘使用过程中的运行功耗

[0013]在进行数据回放时,固态硬盘控制器读取存储内存模块中的数据,并将数据写入到运行内存模块中,然后
RAID
算法处理模块将数据从运行内存模块中取出,之后对取出的数据进行整合,进而完成数据的恢复

使得在使用
RAID
算法运用到损坏存储芯片的数据恢复中时,
RAID
算法处理模块能够根据固态硬盘控制器收到的外部
RAID
类型的指示进行工作,省去了基于
CPUC
软件程序实现的算法以及基于专门的
RAID
芯片实现,使得运算过程中的功耗降低,提升了数据处理速率,成本较低

[0014]进一步的,所述固态硬盘控制器包括
RAID0
算法处理模块
、RAID1
算法处理模块
、RAID5
算法处理模块
、RAID01
算法处理模块以及
RAID10
算法处理模块

[0015]通过上述技术方案,使得固态硬盘控制器能够具有多种
RAID
算法处理方式,大大提升了存储芯片修复的便捷性

[0016]进一步的,所述接口
FIFO
模块的数据位宽为
64bit。
[0017]通过上述技术方案,使得固态硬盘控制器的兼容性得以提升,使得数据在进行存储时能够更加稳定

[0018]进一步的,所述运行内存模块为
n
个,所述存储内存模块为
n
个,且所述运行内存模块与所述存储内存模块一一对应...

【技术保护点】

【技术特征摘要】
1.
一种基于
FPGA
实现的
RAID
存储系统,其特征在于:包括一个基于
FPGA
的固态硬盘控制器
(1)
,所述固态硬盘控制器
(1)
内至少连接两个
RAID
算法处理模块
(12)
,所述固态硬盘控制器
(1)
上连接有接口
FIFO
模块
(11)
以及数据交互模块
(13)
;所述固态硬盘控制器
(1)
上还挂载有运行内存设备
(2)
以及存储内存设备
(3)
,所述运行内存设备
(2)
内安装有若干个运行内存模块
(21)
,所述存储内存设备
(3)
内安装有若干个存储内存模块
(31)
;接口
FIFO
模块
(11)
,按照先进先出的原则将数据导入到固态硬盘控制器
(1)
内;
RAID
算法处理模块
(12)
,根据固态硬盘控制器
(1)
收到的外部
RAID
类型的指示后,对应
RAID
算法处理模块
(12)
对导入的数据进行处理;数据交互模块
(13)
,实现
RAID
算法处理模块
(12)
与运行内存设备
(2)、
存储内存设备
(3)
之间的数据交互;运行内存模块
(21)
,用于数据的缓存及不同存储内存模块
(31)
数据的区分;存储内存模块
(31)
,对运行内存模块
(21)
内的数据进行存储
。2.
根据权利要求1所述的一种基于
FPGA
实现的
RAID
存储系统,其特征在于:所述固态硬盘控制器
(1)
包括
RAID0
算法处理模块
、RAID1
算法处理模块
、RAID5
算法处理模块
、RAID01
算法处理模块以及
RAID10
算法处理模块
。3.
根据权利要求1所述的一种基于
FPGA
实现的
RAID
存储系统,其特征在于:所述接口
FIFO
模块
(11)
的数据位宽为
64bit。4.
根据权利要求1所述的一种基于
FPGA
实现的
RAID
存储系统,其特征在于:所述运行内存模块
(21)

n
个,所述存储内存模块
(31)

n
个,且所述运行内存模块
(21)
与所述存储内存模块
(31)
一一对应
。5.
根据权利要求2所述的一种基于
FPGA
实现的
RAID
存储系统,其特征在于:所述
RAID0
算法处理模块下:数据储存时,所述
RAID0
算法处理模块通过数据交互模块
(13)
将数据依次放入对应的运行内存模块
(21)
,如此往复,待其中一个运行内存模块
(21)
达到约定的数量级后,所述
RAID0
算法处理模块将所述运行内存模块
(21)
内的数据分发到对应的所述存储内存模块
(31)
进行存储;数据回放时,所述固态硬盘控制器
(1)
读取存储内存设备
(3)
,然后通过数据交互模块
(13)
写入运行内存模块
(21)
,之后
RAID0
算法处理模块将数据从运行内存模块
(21)
内取出,完成数据的恢复
。6.
根据权利要求2所述的一种基于
FPGA
实现的
RAID
存储系统,其特征在于:所述
RAID1
算法处理模块下:数据储存时,所述
RAID1
算法处理模块将数据复制若干个放入所述运行内存设备
(2)
内的若干个运行内存模块
(21)
内,待其中一个运行内存模块
(21)
达到约定的数量级后,所述
RAID1
算法处理模块将所述运行内存模块
(21)
内的数据分发到对应的所述存储内存模块
(31)
进行存储;数据回放时,所述固态硬盘控制器
(1)
读取存储内存设备
(3)
,然后通过数据交互模块
(13)
写入运...

【专利技术属性】
技术研发人员:孙骥周桐
申请(专利权)人:上海飞斯信息科技有限公司
类型:发明
国别省市:

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

1