掌桥专利:专业的专利平台
掌桥专利
首页

一种可实现双模块存储阵列的存储系统及方法

文献发布时间:2023-06-19 19:30:30


一种可实现双模块存储阵列的存储系统及方法

技术领域

本发明涉及数据存储处理技术领域,尤其涉及一种可实现双模块存储阵列的存储系统及方法。

背景技术

本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。

高速大容量数据存储是数据存储领域的一项关键技术。随着电子信息技术的不断发展,高速率数据的可靠存储成为亟待解决的问题,具有高带宽、大容量的存储装置成为科学研究、军事信息、电子对抗的关键设备。为了实现高速数据存储,要求数据存储装置在整个数据处理路径上具有足够的数据处理带宽;同时,随着数据存储时间的不断增长,数据量越来越大,要求存储装置具有足够的数据存储空间;并且,为了满足不同模式的存储需要,要求具有灵活的存储阵列组合控制方法,以实现存储装置内的不同存储阵列组合。

现有大容量存储系统总体框图如图1,系统中配置有VPX连接器、主控FPGA、多组DDR、Pcie交换芯片以及搭载在Pcie交换芯片上的SSD。整个系统以主控FPGA为控制核心,其外部配置了VPX连接器、DDR和Pcie交换芯片,同时在Pcie交换芯片上挂载了多组SSD。系统利用VPX连接器上的高速总线完成待处理数据的输入;主控FPGA将接收到的数据缓存进入DDR;然后主控FPGA控制DDR缓存输出数据到Pcie交换芯片,并通过Pcie交换芯片将数据传输到SSD中存储下来。

发明人发现,现有大容量存储系统在一片主控FPGA周边配置了DDR、Pcie交换芯片以及SSD,组成了一个存储模块。当面对大数据量存储的需求,数据存储扩展能力有限;同时,面对多模式数据存储场景时,无法灵活地进行数据分发控制以满足双模块存储阵列的需求。

发明内容

针对现有技术存在的不足,本发明的目的是提供一种可实现双模块存储阵列的存储系统及方法,待处理的数据依次通过Aurora高速传输口、DDR4缓存以及基于Pcie3.0的SSD设备,以此来实现全路径的高速率数据处理;本发明在系统中配置了N(N≥4)个存储模块,在单模块存储模式下工作时,总数据存储量为N个存储模块之和,可以实现最大容量的数据存储;本发明中配置有N个存储模块,任意两个组合可应用于双模块存储模式,通过采集端FPGA可灵活控制数据分发,从而满足双模块存储阵列的需求。

为了实现上述目的,本发明是通过如下的技术方案来实现:

本发明第一方面提供了一种可实现双模块存储阵列的存储系统,包括采集端和存储端;采集端包括核心FPGA和传输接口;存储端包括若干个存储模块,存储模块包括主控FPGA、DDR4和SSD;核心FPGA接收输入的采集数据,对输入数据进行数据分发控制,通过传输接口传输至存储模块;存储模块接收采集端发送的数据,根据工作模式进行数据存储;主控FPGA从传输接口输出端接收到采集端传输过来的数据,并控制数据缓存进入DDR4,当SSD中可以接收数据时,主控FPGA控制从DDR4的数据缓存输出数据至SSD。

进一步的,根据系统工作模式对接收的数据进行数据分发控制,系统工作模式包括单存储模块模式和双存储模块模式。

更进一步的,当系统工作在单存储模块模式下时,核心FPGA控制数据依次向存储模块传输,当当前存储模块达到SSD总存储空间阈值时,核心FPGA控制数据从当前存储模块切换向下一存储模块存储。

更进一步的,当系统工作在双存储模块模式下时,利用核心FPGA将数据同时输出给在线工作的双存储模块组合,所述的在线工作的双存储模块组合,首先从全部存储模块中选取两个存储模块,然后用选定的两个存储模块组成在线工作的双存储模块组合。

更进一步的,对于双存储模块工作方式,当在线工作的双存储模块组合对应的两个传输接口接收数据信号同时为1时,便向存储端传输数据,当需要停止数据存储过程时,首先停止采集端数据传输,经过时间延时后,停止存储端的数据接收。

本发明第二方面提供了一种可实现双模块存储阵列的存储方法,包括以下步骤:

采集端核心FPGA采集待存储数据并进行数据分发控制;

将输入的数据通过传输接口按照数据工作模式进行数据分发至存储端;

存储端将分发后的数据通过主控FPGA控制缓存至SSD前端的DDR4;

当可以接收数据时,主控FPGA控制缓存数据输出至SSD进行存储。

进一步的,根据系统工作模式对接收的数据进行数据分发控制,系统工作模式包括单存储模块模式和双存储模块模式。

更进一步的,当系统工作在单存储模块模式下时,核心FPGA控制数据依次向存储模块传输,当当前存储模块达到SSD总存储空间阈值时,核心FPGA控制数据从当前存储模块切换向下一存储模块存储。

更进一步的,当系统工作在双存储模块模式下时,利用核心FPGA将数据同时输出给在线工作的双存储模块组合,所述的在线工作的双存储模块组合,首先从全部存储模块中选取两个存储模块,然后用选定的两个存储模块组成在线工作的双存储模块组合。

更进一步的,对于双存储模块工作方式,当在线工作的双存储模块组合对应的两个传输接口接收数据信号同时为1时,便向存储端传输数据,当需要停止数据存储过程时,首先停止采集端数据传输,经过时间延时后,停止存储端的数据接收。

以上一个或多个技术方案存在以下有益效果:

本发明设计了一种可实现双模块存储阵列的存储系统及方法,面对高速率数据存储的需要,数据处理路径上依次通过Aurora高速传输口、DDR4以及基于Pcie3.0的SSD,可实现数据存储全路径上的高速率数据处理。

本发明面对大容量数据存储的需要,存储装置内在单个存储模块中集成了M(M≥4)组SSD,在此基础上又在系统中扩展使用了N(N≥4)个存储模块,当在单存储模块模式下工作时,可以达到最大容量的数据存储。

本发明面对多模式数据存储的需要,基于系统中配置的N个并行存储模块,当在双存储模块模式下工作时,系统可以灵活地组成多种存储阵列。

本发明附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。

图1为现有大容量存储系统总体框图;

图2为本发明实施例一可实现双模块存储阵列的存储系统的原理框图;

图3(a)为本发明实施例一在单存储模块模式下时数据分发控制原理图;

图3(b)为本发明实施例一在双存储模块模式下时数据分发控制原理图。

具体实施方式

应该指出,以下详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合;

实施例一:

本发明实施例一提供了一种可实现双模块存储阵列的存储系统,如图2所述,设置有采集端和存储端两部分,采集端包括核心FPGA和传输接口;存储端包括若干个存储模块,存储模块包括主控FPGA、DDR4和SSD。本实施例以电子对抗系统为例,采集外场测试环境中的电磁信号数据,输入本发明存储系统。核心FPGA接收输入的采集的电磁信号数据,对接收的数据进行数据分发控制,通过传输接口传输至存储模块;存储模块接收采集端发送的数据,根据工作模式进行数据存储;主控FPGA从传输接口输出端接收到采集端传输过来的数据,并控制数据缓存进入DDR4,当SSD中可以接收数据时,主控FPGA控制从DDR4的数据缓存输出数据至SSD。

首先,本发明为了实现高速率数据处理,采集端和存储端的每个存储模块之间采用Aurora传输接口完成数据传输;采集端配置N(N≥4)个Aurora传输接口与存储端的存储模块相连接,并且,为了满足大数据量存储的需要,存储端搭载了N(N≥4)个数据存储模块。每个存储模块由一个主控FPGA、M(M≥4)组DDR4、M组SSD组成;存储端的每个SSD前端都搭载了一组DDR4用来完成数据缓存,以匹配SSD变化的数据写入速度;为了完成高速率数据存储,存储端主控FPGA和SSD之间采用Pcie3.0接口。在此基础上实现全路径上的高速率数据处理。

本实施例中,单个Aurora采用8个lane,工作模式为64B/66B,单lane传输速度10Gb/s,综合考虑传输效率,可保证72Gb/s的数据传输速度;采用单DDR4边读边写的模式完成数据缓存,DDR4时钟速率采用750ps,数据处理的位宽为512b,综合数据处理效率,单个DDR4芯片可保证大于64Gb/s的数据缓存速率,M(M≥4)组DDR4的总数据缓存处理速率不小于256Gb/s;单个SSD上的Pcie3.0接口数据处理速率不小于20Gb/s,则M组SSD的最大数据存储速率不小于80Gb/s。综上,本实施例所述系统的全路径数据处理速率不小于72Gb/s。

此外,本发明采集端可以灵活地控制数据分发,并通过Aurora高速传输接口将数据传输向存储模块,以灵活地实现双存储模块的存储阵列。具体的,根据系统工作模式对接收的数据进行数据分发控制,系统工作模式包括单存储模块模式和双存储模块模式。

采集端的FPGA接收到外部输入数据,然后对数据进行数据分发控制,当系统工作在单存储模块模式下时,按照图3(a)进行数据分发控制,即利用采集端FPGA控制数据依次传输向存储模块1、存储模块2、存储模块3、……、存储模块N,这种模式下,系统可以获得最大数据存储能力;当系统工作在双存储模块模式下时,按照图3(b)进行数据分发控制,利用核心FPGA将数据同时输出给在线工作的双存储模块组合,所述的在线工作的双存储模块组合,首先从全部存储模块中选取两个存储模块,然后用选定的两个存储模块组成在线工作的双存储模块组合。图示即为双模块存储阵列组合1&2,其他组合包括组合1&3、组合1&4、……、组合1&N,组合2&3、组合2&4、……、组合2&N,……,组合(N-1)&N,提供了丰富的双模块存储阵列组合方式。

当系统工作在单存储模块模式下时,为了保持存储系统中的数据的连续性,核心FPGA控制数据依次向存储模块传输,当当前存储模块达到M组SSD总存储空间阈值时,核心FPGA控制数据从当前存储模块切换向下一存储模块存储。本实施例中阈值设置为95%。

对于双存储模块工作方式,当在线工作的双存储模块组合对应的Aurora两个传输接口接收数据信号同时为1时,便向存储端传输数据,当需要停止数据存储过程时,首先停止采集端数据传输,经过十毫秒级时间延时后,停止存储端的数据接收,这样可以保证两个存储模块中的存储数据量相同。

存储端的主控FPGA从Aurora传输接口输出端接收到采集端传输过来的数据。存储端的主控FPGA负责数据接口及相应控制的实现,数据最终存储到SSD中。SSD的数据存储速度不是一个稳定值,因此为了适应SSD变化的数据存储速度,提高存储装置的稳定性,系统中在每一个SSD前端都相应配置了缓存DDR4。主控FPGA首先控制数据通过FPGA与DDR4之间的写入接口缓存进入DDR4。当SSD中可以接收数据时,FPGA控制从DDR4的数据读出接口缓存输出数据。DDR4采用边读边写的方式工作,同时配置DDR4工作在写优先的模式下,即只要主控FPGA接收到数据就可以向DDR4写入数据,而写空闲的周期内可以进行数据读出操作,这样只要DDR4工作在满足系统数据处理速度的时钟速率下,就可以保证系统内具有满足处理速度要求的数据缓存能力。从DDR4缓存输出的数据通过Pcie3.0接口传输向SSD,并最终实现数据存储。为了满足数据高速率存储的要求,主控FPGA控制数据并行写入SSD,以实现高速率数据存储。本实施例中,数据是进行拆分后同时写入DDR4中,并行缓存输出时,再同时写入SSD中,以达到最高速数据存储。

实施例二:

本发明实施例二提供了本发明第二方面提供了一种可实现双模块存储阵列的存储方法,包括以下步骤:

采集端核心FPGA采集待存储数据并进行数据分发控制。

将输入的数据通过传输接口按照数据工作模式进行数据分发至存储端;根据系统工作模式对接收的数据进行数据分发控制,系统工作模式包括单存储模块模式和双存储模块模式。

存储端将分发后的数据通过主控FPGA控制缓存至SSD前端的DDR4;

当可以接收数据时,主控FPGA控制缓存数据输出至SSD进行存储。

当系统工作在单存储模块模式下时,核心FPGA控制数据依次向存储模块传输,当当前存储模块达到SSD总存储空间阈值时,核心FPGA控制数据从当前存储模块切换向下一存储模块存储。

当系统工作在双存储模块模式下时,利用核心FPGA将数据同时输出给在线工作的双存储模块组合,所述的在线工作的双存储模块组合,首先从全部存储模块中选取两个存储模块,然后用选定的两个存储模块组成在线工作的双存储模块组合。

对于双存储模块工作方式,当在线工作的双存储模块组合对应的两个传输接口接收数据信号同时为1时,便向存储端传输数据,当需要停止数据存储过程时,首先停止采集端数据传输,经过时间延时后,停止存储端的数据接收。

以上实施例二中涉及的各步骤与方法实施例一相对应,具体实施方式可参见实施例一的相关说明部分。

本领域技术人员应该明白,上述本发明的各模块或各步骤可以用通用的计算机装置来实现,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。本发明不限制于任何特定的硬件和软件的结合。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

技术分类

06120115931800