本发明专利技术公开了一种基于RDMA架构设计的PQ检验模块及检验方法,通过硬件逻辑实现PQ算法,实现用户丢失单盘或双盘数据情况下,通过PQ校验(同位奇偶检验检查)计算使得丢失数据得以恢复,且基于RDMA架构设计保证数据可靠稳定有效的传输,硬件PQ检验实现硬件加速算法和逻辑保证了数据传输的速度和存储系统的整体性能。达到了在数据存储出错时,对数据进行准确恢复的目的。
【技术实现步骤摘要】
本专利技术具体地,涉及一种在数据传输中,基于RDMA架构设计的PQ检验模块及检验方法。
技术介绍
目前,RDMA技术全称远程直接数据存取技术,就是为了解决网络传输中服务器端数据处理的延迟而产生的。RDMA通过网络把资料直接传入计算机的存储区,将数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任何影响,这样就不需要用到多少计算机的处理功能。它消除了外部存储器复制和文本交换操作,因而能解放内存带宽和CPU周期用于改进应用系统性能。奇偶校验是一种校验代码传输正确性的方法。根据被传输的一组二进制代码的数位中的“I”的个数是奇数或偶数来进行校验。采用奇数的称为奇校验,反之,称为偶校验。采用何种校验是事先规定好的。通常专门设置一个奇偶校验位,用它使这种代码中的“I”的个数为奇数或偶数。若用奇校验,则当接收端收到这组代码时,校验“I”的个数是否为奇数,从而确定传输代码的正确性。RAID (redundant array of independent disks 的简称,独立磁盘冗余整列)。独立磁盘冗余阵列是把相同的数据存储在多个硬盘的不同的地方的方法。通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能。原理是利用数组方式来作磁盘组,配合数据分散排列的设计,提升数据的安全性。磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。磁盘阵列还能利用同位检查(Parity Check)的观念,在数组中任一颗硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。RAID通过在多个磁盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量(Throughput)。在RAID中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用RAID可以达到单个磁盘驱动器几倍、几十倍甚至上百倍的速率。RAID通过数据校验提供容错功能。普通磁盘驱动器无法提供容错功能,如果不包括写在磁盘上的CRC (循环冗余校验)码的话。RAID容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。在很多RAID模式中都有较为完备的相互校验/恢复的措施,甚至是直接相互的镜像备份,从而大大提闻了 RAID系统的容错度,提闻了系统的稳定冗余性。随着信息资源的快速增长,数据的安全性,可靠传输性要求越来越高,对存储系统,在存储容量、存储安全性、存储速度和存储数据的可恢复性要求也越来越高。如果用户的存储系统崩溃导致重要数据丢失,那么将会给用户带来灾难性的后果,所以在存储系统对于其数据的可恢复性及数据的稳定性可靠性和安全性要求很高,现有的存储系统数据恢复算法通过应用层软件去作PQ检验的算法,这个过程占用系统CPU的资源,且CPU处理算法时间较长,从而导致数据恢复时间过长。
技术实现思路
本专利技术的目的在于,针对上述问题,提出一种基于RDMA架构设计的PQ检验模块及检验方法,以实现在数据存储出错时,对数据进行准确恢复的优点。为实现上述目的,本专利技术采用的技术方案是 一种基于RDMA架构设计的PQ检验模块,所述PQ硬件校验模块是作数据P检验和Q检验的数据恢复模块,PQ硬件校验模块通过FPGA硬件逻辑实现了 P检验硬件算法和Q检验硬件算法,通过对RDMA系统架构的RDMA状态机缓存数据和状态控制信息硬件接口进行硬件逻辑的PQ检验硬件算法实现,同时将PQ检验的值与数据并发到系统内存,并存入到系统相应存储介质中去,包括有P校验模块和Q校验模块。根据本专利技术的优选实施例,所述P校验模块包括有X0R_FSM模块和X0R_BUF模块; 所述X0R_FSM模块负责将每次突发长度的异或数据通过NPI接口传到系统内存,X0R_FSM模块通过硬件状态机的模式来处理异或数据,根据P校验请求开始从X0R_BUF模块中读取数据写到系统内存中; 所述X0R_BUF模块对流控数据作异或计算,并将计算出来的异或数据传给X0R_FSM模块;X0R_BUF模块定义了一个双口的同步RAM来做流控数据的缓存和异或计算; 所述Q校验模块包括有信号控制模块,信号分析模块、乘法计算模块和P校验模块;所述信号控制模块对并发输入Q校验模块的输入接口信号作3个时钟的延时再输出,延迟3个时钟是为了乘法计算模块能够有足够的时间等待接收和计算数据,保证乘法计算模块的输入数据信号的稳定可靠; 所述信号分析模块处理数据数据的盘符标志信息,对盘符信息作伽罗瓦域计算再输出。所述乘法计算模块作盘符信息伽罗瓦域计算在输出值和数据的乘法运算; 所述P校验模块,供Q校验模块调用作异或运算,最后输出P校验值到NPI内存接口和总线。同时本专利技术的技术方案还公开了一种基于RDMA架构设计的PQ检验模块的PQ检验方法, 所述PQ校验模块中进行P校验和Q校验的算法数据在做异或计算,在P校验模块中通过X0R_FSM模块实现异或校验状态机的功能控制,在Q校验模块中的异或校验是调用了 P校验功能模块实现Q计算的异或功能;X0R_FSM模块实现的异或校验状态机的功能首先状态机处于空闲状态,在空闲状态检测P检验请求状态信号P_req的状态,如果请求有效则会按照突发字节的长度去依次读出双口同步RAM中的数据到数据总线上,直到读出数据的最后一个字节长度时,跳转到下一个请求NPI接口请求状态等待内存地址响应,如果收到内存地址响应信号则认为是此次突发数据完成,则状态机跳转到下一个状态,在下一个状态会有一个时钟的延时来保证数据完整性和信号稳定,如果写内存数据完成则跳到数据完成状态否则跳转到数据等待状态,继续等待接收数据写入到内存;在数据完成状态一个时钟的延时完成后直接跳转到状态机空闲状态,同时响应P校验完成相应标志信号;其异或状态机的各个状态跳转具体如下S.1DLE状态状态机处于空闲状态,在这个状态会检测p_req信号是否开始进行异或校验并将异或校验的值存入内存;如果状态机检测到P_req信号状态为1,则状态跳转到S_WAIT状态,否者处于检测状态; S_WAIT状态状态机等待状态,在此状态状态机将突突发字节的长度数值赋值给状态机内部读数据长度寄存器wr_len的值,以便状态机判断读一次突发数据的完成标志位,状态机在S_WAIT状态直接跳转到S_DATA状态; S_DATA状态状态机数据传送状态,在此状态状态机执行读双口同步RAM的值即写双口同步RAM的值到内存,状态机检测突发数据长度的标志位,如果状态机突发长度完成,状态机跳转到S_REQ状态; S_REQ状态状态机写内存请求状态,在此状态状态机会检测内存地址响应信号PIM_AddrAck的值,如果接收到内存地址响应信号,状态机则认为是此次突发数据完成,状态机状态跳转到S_NEXT状态; S_NEXT状态状态机一个时钟的延时状态,在此状态,状态机接收到内存地址响应信号后有一个时钟的延时,保证数据的稳定和完整,检测到数据完成则跳转到S_DONE状态,否则跳转到状态机等待S_WAIT状态继续等待写内存数据; S.DONE状态写内存数据完成状态,在此状态一个时钟后直接跳转到状态机空闲状态,同时响应本文档来自技高网...
【技术保护点】
一种基于RDMA架构设计的PQ检验模块,其特征在于,所述PQ硬件校验模块是作数据P检验和Q检验的数据恢复模块,PQ硬件校验模块通过FPGA硬件逻辑实现了P检验硬件算法和Q检验硬件算法,通过对RDMA系统架构的RDMA状态机缓存数据和状态控制信息硬件接口进行硬件逻辑的PQ检验硬件算法实现,同时将PQ检验的值与数据并发到系统内存,并存入到系统相应存储介质中去,包括P校验模块和Q校验模块。
【技术特征摘要】
1.一种基于RDMA架构设计的PQ检验模块,其特征在于,所述PQ硬件校验模块是作数据P检验和Q检验的数据恢复模块,PQ硬件校验模块通过FPGA硬件逻辑实现了 P检验硬件算法和Q检验硬件算法,通过对RDMA系统架构的RDMA状态机缓存数据和状态控制信息硬件接口进行硬件逻辑的PQ检验硬件算法实现,同时将PQ检验的值与数据并发到系统内存,并存入到系统相应存储介质中去,包括P校验模块和Q校验模块。2.根据权利要求1所述的基于RDMA架构设计的PQ检验模块,其特征在于,所述P校验模块包括XOR_FSM模块和XOR_BUF模块; 所述XOR_FSM模块负责将每次突发长度的异或数据通过NPI接口传到系统内存,XOR_FSM模块通过硬件状态机的模式来处理异或数据,根据P校验请求开始从XOR_BUF模块中读取数据写到系统内存中; 所述XOR_BUF模块对流控数据作异或计算,并将计算出来的异或数据传给XOR_FSM模块;XOR_BUF模块定义了一个双口的同步RAM来做流控数据的缓存和异或计算。3.根据权利要求1所述的基于RDMA架构设计的PQ检验模块,其特征在于,所述Q校验模块包括信号控制模块,信号分析模块、乘法计算模块和上述P校验模块; 所述信号控制模块对并发输入Q校验模块的输入接口信号作3个时钟的延时再输出,延迟3个时钟是为了乘法计算模块能够有足够的时间等待接收和计算数据,保证乘法计算模块的输入数据信号的稳定可靠; 所述信号分析模块处理数据的盘符标志信息,对盘符信息作伽罗瓦域计算再输出; 所述乘法计算模块作盘符信息伽罗瓦域计算在输出值和数据的乘法运算; 所述P校验模块,供Q校验模块调用作异或运算,最后输出P校验值到NPI内存接口和总线。4.根据权利要求1至3所述的基于RDMA架构设计的PQ检验模块的PQ检验方法,其特征在于, 所述PQ校验模块中进行P校验和Q校验的算法数据在做异或计算,在P校验模块中通过XOR_FSM模块实现异或校验状态机的功能控制,在Q校验模块中的异或校验是调用了 P校验功能模块实现Q计算的异或功能;XOR_FSM模块实现的异或校验状态机功能,其具体描述如下文 首先状态机处于空闲状态,在空闲...
【专利技术属性】
技术研发人员:张庆敏,张衡,胡刚,
申请(专利权)人:无锡众志和达存储技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。