云服务器的数据存储方法和系统.pdf

上传人:000****221 文档编号:4038232 上传时间:2018-08-12 格式:PDF 页数:12 大小:764.86KB
返回 下载 相关 举报
摘要
申请专利号:

CN201510054322.9

申请日:

2015.02.02

公开号:

CN104657086A

公开日:

2015.05.27

当前法律状态:

实审

有效性:

审中

法律详情:

著录事项变更IPC(主分类):G06F 3/06变更事项:申请人变更前:曙光云计算技术有限公司变更后:曙光云计算集团有限公司变更事项:地址变更前:100193 北京市海淀区东北旺西路8号院36号楼5层变更后:100193 北京市海淀区东北旺西路8号院36号楼5层变更事项:申请人变更前:曙光信息产业(北京)有限公司变更后:曙光信息产业(北京)有限公司|||实质审查的生效IPC(主分类):G06F 3/06申请日:20150202|||公开

IPC分类号:

G06F3/06

主分类号:

G06F3/06

申请人:

曙光云计算技术有限公司; 曙光信息产业(北京)有限公司

发明人:

戚博文; 倪亚路; 周雪; 杨晓君; 李婧; 王秉章

地址:

100193北京市海淀区东北旺西路8号院36号楼5层

优先权:

专利代理机构:

北京德恒律治知识产权代理有限公司11409

代理人:

章社杲; 卢军峰

PDF下载: PDF下载
内容摘要

本发明公开了一种云服务器的数据存储方法和系统,该数据存储方法包括:本地FPGA接收来自本地处理器的请求指令;本地FPGA通过对请求指令进行地址映射处理,确定请求指令所对应的目标硬盘;本地FPGA将地址映射处理后的请求指令发送至目标硬盘所对应的目标FPGA。本发明通过对一个FPGA的处理器所发送的指令进行地址映射处理,从而可以确定该指令所对应的目标硬盘,进而实现了对应不同FPGA电路板的多个硬盘的跨板虚拟化存储,提高了系统的存储性能。

权利要求书

权利要求书
1.  一种云服务器的数据存储方法,其特征在于,用于包括多个现场可编程门阵列FPGA的数据存储系统,包括:
本地FPGA接收来自本地处理器的请求指令;
所述本地FPGA通过对所述请求指令进行地址映射处理,确定所述请求指令所对应的目标硬盘;
所述本地FPGA将地址映射处理后的所述请求指令发送至所述目标硬盘所对应的目标FPGA。

2.  根据权利要求1所述的数据存储方法,其特征在于,本地FPGA通过对所述请求指令进行地址映射处理,确定所述请求指令所对应的目标硬盘包括:
所述本地FPGA通过对所述请求指令进行分析,确定所述请求指令中对应于本地虚拟磁盘的第一地址信息;
所述本地FPGA通过预定的地址映射规则对所述第一地址信息作地址映射处理,确定所述请求指令所对应的目标硬盘和所述第一地址信息在所述目标硬盘中所对应的第二地址信息;
所述本地FPGA将所述请求指令中的所述第一地址信息更新为所述第二地址信息。

3.  根据权利要求2所述的数据存储方法,其特征在于,进一步包括:
所述目标FPGA根据所述请求指令中的所述第二地址信息将地址映射处理后的所述请求指令发送至所述目标硬盘的对应地址。

4.  根据权利要求1所述的数据存储方法,其特征在于,进一步包括:
所述本地FPGA接收来自所述目标FPGA的对应所述请求指令的响应指令;
所述本地FPGA对所述响应指令进行地址反映射处理,并将地址反映射处理后的所述响应指令发送至所述本地处理器。

5.  根据权利要求4所述的数据存储方法,其特征在于,所述本地FPGA对所述响应指令进行地址反映射处理包括:
所述本地FPGA通过对所述响应指令进行分析,确定所述响应指令中对应于所述目标硬盘的第三地址信息;
所述本地FPGA通过预定的地址反映射规则对所述第三地址信息作地址反映射处理,确定所述响应指令中的所述第三地址信息在本地虚拟磁盘中所对应的第四地址信息;
所述本地FPGA将所述响应指令中的所述第三地址信息更新为所述第四地址信息。

6.  一种用于云服务器的数据存储系统,其特征在于,包括:
多个现场可编程门阵列FPGA;
每个FPGA均连接有多个处理器,以及所述每个FPGA均连接有一个硬盘;
其中,每个FPGA包括与所述多个处理器相连的多个处理器控制器、与所述多个处理器控制器相连的交换器、与所述交换器相连的存储控制器;
每个FPGA中的处理器控制器用于接收与该处理器控制器连接的处理器的请求指令;
每个FPGA中的处理器控制器进一步用于对所述请求指令进行地址映射处理,确定所述请求指令所对应的目标硬盘;
每个FPGA中的处理器控制器进一步用于将地址映射处理后的所述请求指令发送至所述目标硬盘所对应的目标FPGA。

7.  根据权利要求6所述的数据存储系统,其特征在于,每个FPGA进一步包括远端接口,用于与其他的FPGA通信。

8.  根据权利要求7所述的数据存储系统,其特征在于,所述存储控制器包括远端控制器和硬盘控制器。

9.  根据权利要求8所述的数据存储系统,其特征在于,每个FPGA中的所述远端接口与所述远端控制器的一端相连,所述远端控制器的另一端与所述交换器相连;每个FPGA中的所述硬盘控制器的一端与所述交换器相连,所述硬盘控制器的另一端与所述硬盘相连。

10.  根据权利要求9所述的数据存储系统,其特征在于,所述硬盘控制器用于接收和/或响应所述硬盘发送的指令;
所述远端控制器用于接收所述远端接口发送的指令并将该指令转发至所述交换器;并且所述远端控制器进一步用于接收交换器发送的指令,并将该指令转发至所述远端接口;
所述交换器用于将来自处理控制器的指令分发至硬盘控制器或远端控制器;所述交换器进一步用于将所述硬盘或所述远端接口的响应指令发送至所述处理器控制器。

说明书

说明书云服务器的数据存储方法和系统
技术领域
本发明涉及云服务器领域,具体来说,涉及一种云服务器的数据存储方法和系统。
背景技术
目前,随着云服务器的应用越来越广泛,人们对云服务器的不同需求也在日益增加,例如低成本、可配置、结构简单等,而为了满足这些需求,主要是通过将虚拟化技术应用到云计算当中,从而实现云服务器的桌面虚拟化,网络虚拟化以及存储虚拟化等虚拟化功能,而对于存储虚拟化来说,其具体的应用原理是通过将云计算服务器的存储模块进行虚拟化处理,从而使得在对云计算服务器的存储空间进行访问时,能够根据需求集中访问存储设备,进而使云服务器的结构更加简单,降低系统功耗。
而为了实现云计算服务器的存储模块的虚拟化,在现有技术中,主要是通过软件的方式将服务器的存储空间进行逻辑的分隔,从而组成不同的逻辑存储空间,其中,通过一个逻辑存储实体来代表底层复杂的物理驱动器,从而在一定程度上屏蔽单个存储设备的容量、速度等物理特性,以实现云服务器的存储虚拟化,但是这种软件方式的存储虚拟化方法只能使单个处理器来共享同一实体的存储空间(例如硬盘);而且,在多个FPGA(现场可编程门阵列)电路板全互联的架构下,现有的这种软件方式的存储虚拟化方法并不能够实现对应不同FPGA电路板的多个硬盘的跨板虚拟化存储。
针对相关技术中的上述问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中的上述问题,本发明提出一种云服务器的数据存储方法和系统,能够实现对应不同FPGA电路板的多个硬盘的跨板虚拟化存储,提高系 统的存储性能。
本发明的技术方案是这样实现的:
根据本发明的一个方面,提供了一种云服务器的数据存储方法,用于包括多个FPGA的数据存储系统。
该数据存储方法包括:
本地FPGA接收来自本地处理器的请求指令;
本地FPGA通过对请求指令进行地址映射处理,确定请求指令所对应的目标硬盘;
本地FPGA将地址映射处理后的请求指令发送至目标硬盘所对应的目标FPGA。
其中,在本地FPGA通过对请求指令进行地址映射处理,来确定请求指令所对应的目标硬盘时,可由本地FPGA通过对请求指令进行分析,确定请求指令中对应于本地虚拟磁盘的第一地址信息;本地FPGA通过预定的地址映射规则对第一地址信息作地址映射处理,确定请求指令所对应的目标硬盘和第一地址信息在目标硬盘中所对应的第二地址信息;本地FPGA将请求指令中的第一地址信息更新为第二地址信息。
此外,该数据存储方法进一步包括:
目标FPGA根据请求指令中的第二地址信息将地址映射处理后的请求指令发送至目标硬盘的目标地址。
此外,该数据存储方法进一步包括:
本地FPGA接收来自目标FPGA的对应请求指令的响应指令;
本地FPGA对响应指令进行地址反映射处理,并将经过地址反映射处理后的响应指令发送至本地处理器。
其中,本地FPGA在对响应指令进行地址反映射处理时,本地FPGA可通过对响应指令进行分析,来确定响应指令中对应于目标硬盘的第三地址信息;本地FPGA通过预定的地址反映射规则对第三地址信息作地址反映射处理,确定响应指令中的第三地址信息在本地虚拟磁盘中所对应的第四地址信息;本地FPGA将响应指令中的第三地址信息更新为第四地址信息。
根据本发明的另一方面,提供了一种用于云服务器的数据存储系统。
该数据存储系统包括:
多个FPGA;
每个FPGA均连接有多个处理器,以及每个FPGA均连接有一个硬盘;
其中,每个FPGA包括与多个处理器相连的多个处理器控制器、与多个处理器控制器相连的交换器、与交换器相连的存储控制器;
每个FPGA中的处理器控制器用于接收与该处理器控制器连接的处理器的请求指令;
每个FPGA中的处理器控制器进一步用于对请求指令进行地址映射处理,确定请求指令所对应的目标硬盘;
每个FPGA中的处理器控制器进一步用于将地址映射处理后的请求指令发送至目标硬盘所对应的目标FPGA。
此外,每个FPGA进一步包括远端接口,用于与其他的FPGA通信。
优选的,存储控制器包括远端控制器和硬盘控制器。
其中,每个FPGA中的远端接口与远端控制器的一端相连,远端控制器的另一端与交换器相连;每个FPGA中的硬盘控制器的一端与交换器相连,硬盘控制器的另一端与硬盘相连。
优选的,硬盘控制器用于接收和/或响应硬盘发送的指令;
远端控制器用于接收远端接口发送的指令并将该指令转发至交换器;并且远端控制器进一步用于接收交换器发送的指令,并将该指令转发至远端接口;
交换器用于将来自处理控制器的指令分发至硬盘控制器或远端控制器;交换器进一步用于将硬盘或远端接口的响应指令发送至处理器控制器。
本发明通过对一个FPGA的处理器所发送的指令进行地址映射处理,从而可以确定该指令所对应的目标硬盘,进而实现了对应不同FPGA电路板的多个硬盘的跨板虚拟化存储,提高了系统的存储性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的 前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的云服务器的数据存储方法的流程图;
图2是根据本发明实施例的云服务器的数据存储系统的示意图;
图3是根据本发明实施例的处理器控制器和硬盘控制器所包含的模块的传输示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明的实施例,提供了一种云服务器的数据存储方法,用于包括多个FPGA的数据存储系统。
如图1所示,根据本发明实施例的数据存储方法包括:
步骤S101,本地FPGA接收来自本地处理器的请求指令;
步骤S103,本地FPGA通过对请求指令进行地址映射处理,确定请求指令所对应的目标硬盘;
步骤S105,本地FPGA将地址映射处理后的请求指令发送至目标硬盘所对应的目标FPGA。
借助于本发明的上述技术方案,能够实现跨FPGA板的数据虚拟化存储,提高数据的存储性能。
为了更好的理解本发明的上述技术方案,下面结合图2所示的包括多个FPGA的数据存储系统来对本发明的数据存储方法进行详细阐述。
从图2可以看出,根据本发明实施例的数据存储系统由多个FPGA电路板(FPGA板0、FPGA板1、FPGA板2、FPGA板3)构成,并且,每个FPGA均外接有多个处理器(在本实施例中仅示意了一个处理器),对应的在FPGA板内也配置有与其外接的处理器数量相同的处理器控制器,从而使得一个FPGA板内部的每个处理器控制器与对应的外接的处理器相互通信连接;并且,每个FPGA板内还设置有一个交换器,其中,板内的交换器(例如交换器 0)与FPGA板0中的每个处理器控制器(这里只是示意了一个处理器交换器0)均连接;此外,每个FPGA板还外接由一个硬盘,这里为硬盘0、硬盘1、硬盘2、硬盘3分别外接于FPGA板0、FPGA板1、FPGA板2、FPGA板3;并且,每个FPGA板内还设有与板内的处理器控制器和存储控制器相连的交换器,其中存储控制器由硬盘控制器和远端控制器构成;每个FPGA板所外接的硬盘通过板内的硬盘控制器外接于FPGA板;另外,每个FPGA板内设有远端接口与远端控制器相连。从图2可以看出,在各个FPGA板之间相互通信时可通过板内的远端接口互相通信。
其中,每个FPGA板中的硬盘控制器用于接收和应答处理器发送的指令,远端控制器用于接收远端接口发来的指令,以及将接收自交换器的指令发送至需要的目标远端接口;处理器控制器,用于接收本地处理器的请求指令,以及接收本地硬盘或远端接口的响应结果;交换器则用于将处理器发送的指令分发给硬盘控制器或远端控制器,并将本地硬盘或远端接口的响应结果发送至处理器控制器。
为了使读者理解本发明在多个FPGA板全互联的架构下来实现多个硬盘的跨板虚拟化存储技术方案,下面以一条由FPGA板0的处理器0发往FPGA板1的硬盘1的指令为例,即跨板的命令处理过程,来对本发明的上述存储方法进行详细阐述。
首先,处理器0发送请求指令至FPGA板0(即本地FPGA)中的处理器控制器0,处理器控制器0在接收到该请求指令后会对该请求指令进行串并转换,然后将串并转换后的请求指令中的有效数据(即发往目标硬盘的具体命令)恢复为处理器发送至处理器控制器0时的状态,然后将经过上述处理后的请求指令进行暂存;
然后,处理器控制器0对该请求指令进行地址映射处理,从而确定该请求指令所要发往的目标硬盘,具体的,在一个实施例中,处理器控制器0在通过对请求指令进行地址映射处理,来确定请求指令所对应的目标硬盘时,可由处理器控制器0通过对请求指令进行分析,来确定请求指令中的地址部分(此处为对应于本地虚拟磁盘的第一地址信息(即本地虚拟存储地址));处理器控制器0通过预定的地址映射规则对地址部分(即第一地址信息)作地址映射处理, 从而可以确定请求指令所对应的目标硬盘(这里假设为硬盘1)和第一地址信息在硬盘1中所对应的第二地址信息(即硬盘1的物理存储地址);之后处理器控制器0将请求指令中地址部分的信息由本地虚拟存储地址更新为硬盘1的物理存储地址。
然后FPGA板0就可将地址映射处理后的请求指令发送至硬盘1所对应的FPGA板1,具体的:
处理器控制器0(即FPGA板0)会对地址映射处理后的请求指令进行打包并发送给FPGA板0的交换器,交换器在接收到该地址映射处理后的请求指令后会对该指令的地址部分进行分析,通过分析可知该指令中的地址部分为硬盘1的物理存储地址,所以交换器会将该请求指令发送至远端控制器0;而如果该请求指令是发送给本地FPGA板0所连接的本地硬盘0的,那么该请求指令中的地址部分必然为本地虚拟磁盘的存储地址,那么交换器就会将该请指令发送至硬盘控制器0,并由硬盘控制器0发送至硬盘0。
那么远端控制器0在接收到该请求指令后,就可通过对该请求指令中的地址部分进行分析来确定该请求指令所对应的目标硬盘是硬盘1,那么远端控制器0就可根据预定的硬盘与FPGA板之间的映射关系来确定硬盘1所对应的FPGA板(即FPGA板1)。因此,远端控制器0会通过远端接口0将该请求指令发送至FPGA板1的远端接口1,从而实现了处理器命令(这里为请求指令)的跨板传输(即,由FPGA板0将地址映射处理后的请求指令发送至硬盘1所对应的FPGA板1),进而实现多个硬盘的跨板虚拟化存储。
之后,根据本发明实施例的数据存储方法进一步包括:
FPGA板1根据接收到的请求指令中的第二地址信息(物理存储地址)将地址映射处理后的请求指令发送至硬盘1的对应地址,具体的:
FPGA板1的远端接口1在接收到该请求指令后,会将该请求指令发送至远端控制器1,远端控制器1再将该请求指令发送至FPGA板1的交换器,其中,交换器会对该请求指令进行分析,从而确定该请求指令是发送给处理器1还是硬盘1的,具体的,交换器会对请求指令中的地址部分进行分析,从而可以确定该地址部分为FPGA板内的磁盘虚拟存储地址,还是硬盘的物理存储地址,那么这里的判断结果必然是硬盘1的物理存储地址;所以交换器在经过上 述分析判断后,会将该请求指令发送至硬盘控制器1;然后硬盘控制器1会对该请求指令进行解包,并对解包后的请求指令在进行串并转换后发送给与之相连的硬盘1的对应物理存储地址(即对应于经过地址映射处理后的请求指令中的第二地址信息)。
然后硬盘1就会对该请求指令进行响应,并将响应结果(对应请求指令的响应指令)在硬盘控制器1中暂存;硬盘控制器1会对该响应指令进行打包,并将打包后的响应指令发送至与之相连的交换器,同样的,交换器会对该响应指令进行判断,从而确定该响应指令是发送至远端接口(远端控制器)还是本地的处理器1(处理控制器1),具体判断方法同上,在此不再赘述。通过分析判断,交换器会将响应指令发送至远端控制器1,此时远端控制器1会通过对该响应结果中的地址部分进行分析,确定该响应指令是响应于哪个FPGA板的处理器的(即FPGA板0的处理器0),然后远端控制器1通过远端接口1将响应指令发送至FPGA板0的远端接口0。
远端接口0在接收到该响应指令后会发送至与之连接的远端控制器0,远端控制器0再将该响应指令发送至交换器,交换器此时会对接收到的响应指令进行分析判断,从而确定该响应指令是发送至硬盘0的还是处理器0的,具体判断分析方式同上,在此不再赘述,通过判断交换器可确定该响应指令是发送至处理器0的响应结果,于是,交换器会将该响应指令发送至与之连接的处理器控制器0;
处理器控制器0(即本地FPGA0)在接收到该响应指令后,会对该响应指令进行解包,并对解包后的响应指令进行地址反映射处理,具体的:
其中,处理器控制器0(即本地FPGA0)在对响应指令进行地址反映射处理时,处理器控制器0可通过对响应指令进行分析,来确定响应指令中对应于目标硬盘(硬盘1)的第三地址信息(物理存储地址);处理器控制器0通过预定的地址反映射规则对响应指令中的物理存储地址作地址反映射处理,从而确定响应指令中的第三地址信息(物理存储地址)在FPGA板0的本地虚拟磁盘中所对应的第四地址信息(虚拟存储地址);处理器控制器0将响应指令中的物理存储地址信息更新为处理器0可识别的虚拟存储地址信息,这样就实现了来自FPGA板1的硬盘1的响应指令的地址反映射处理;
最后,处理器控制器0会对经过地址反映射处理后的响应指令进行串并转换,然后将经过串并转换后的响应指令发回给发出请求指令的处理器0,至此一条指令的执行过程结束,系统可以开始进行下一条指令的执行(即由一个本地FPGA板的处理器发送至另一个FPGA板的硬盘的指令)。
而对于上述过程中所描述的预定的地址映射规则和预定的地址反映射规则来说,在一个实施例中,如下文描述:
(1)将存储系统中的所有硬盘(即所有FPGA板所带的硬盘,这里为4个)的容量相加,得到总的虚拟硬盘(磁盘)容量。总容量以V表示,硬盘0、硬盘1、硬盘2、硬盘3的容量分别为V0、V1、V2、V3,因此,V=V0+V1+V2+V3;
(2)由每个硬盘容量,获得虚拟硬盘的内部容量边界值,容量边界值以An表示,所以虚拟硬盘的内部容量边界值有A0=V0,A1=V0+V1,A2=V0+V1+V2,因为有4块硬盘,相当于只有3个内部容量边界,即A0、A1和A2,所以不必计算A3;
(3a)在对虚拟磁盘地址进行地址映射处理时,以Vx表示虚拟硬盘(磁盘)地址,若虚拟硬盘地址Vx小于边界A0,则Vx对应的硬盘的实际物理地址为硬盘0的Vx;若虚拟硬盘地址Vx大于边界A0且Vx小于边界A1,则Vx对应的硬盘的实际物理地址为硬盘1的(Vx-A0);若虚拟硬盘地址Vx大于边界A1且Vx小于边界A2,则Vx对应的硬盘的实际物理地址为硬盘2的(Vx-A1);若虚拟硬盘地址Vx大于边界A2,则Vx对应的硬盘的实际物理地址为硬盘3的(Vx-A2);以此映射规则就可得到处理器发出的指令中的虚拟硬盘地址所对应的目标硬盘实际物理地址以及对应的目标硬盘。
(3b)而对于反映射规则来说,只是将(3a)中的减法运算变成加法运算而已,具体的,在对硬盘的实际物理地址进行地址反映射处理时,以Vx表示硬盘的实际物理地址,若硬盘的实际物理地址Vx小于边界A0,则Vx对应的虚拟硬盘地址为虚拟硬盘的Vx;若硬盘的实际物理地址Vx大于边界A0且Vx小于边界A1,则Vx对应的虚拟硬盘地址为虚拟硬盘的(Vx+A0);若硬盘的实际物理地址Vx大于边界A1且Vx小于边界A2,则Vx对应的虚拟硬盘地址为虚拟硬盘的(Vx+A1);若硬盘的实际物理地址Vx大于边界A2,则对应的虚拟硬盘地址为虚拟硬盘的(Vx+A2);以此反映射规则就可得到硬盘 发出的指令中的硬盘的实际物理地址所对应的处理器的虚拟硬盘地址。
值得注意的是,由于在图2所示的实施例中只示意了4个硬盘,因此上述地址映射规则和地址反映射规则是按照4个硬盘来进行计算的,但是本发明的地址映射规则和地址反映射规则的原理是不变的,只需根据实际硬盘数量的不同可以对上述地址映射规则和地址反映射规则进行适应调整。
此外,在一个实施例中,根据本发明实施例的处理器控制器和硬盘控制器中,都分为如图3所示的4层模块:物理层模块、链路层模块、传输层模块、网络层模块。
其中,物理层模块用于物理层连接通路的建立与断开,对输入输出数据进行串并转换,并进行8b/10b编解码;链路层模块用于对数据及基元的加解扰计算,对数据进行CRC计算,并对帧的发送及接收进行流控。
传输层模块用于控制物理层链路的连接与断开;并负责接收链路层提交上来的帧,检查其帧头以及长度,丢弃错误的帧,并告知链路层;同时负责将从网络层接收的帧转发至链路层,等待链路层发送结果,如果在发送过程中发现错误,进行重传操作。
在所有的处理器控制器中,传输层负责在收发指令时的地址映射工作,即将命令中的地址部分映射为目的远端硬盘的具体地址;而在接收链路层传来的硬盘响应结果时,再将其中的地址部分结合硬盘编号,反映射回处理器能够识别的虚拟硬盘的地址空间中。
网络层模块用于将传输层接收的数据进行组包,然后传递给交换器模块。并从交换器模块接收数据,将接收的数据进行解包后,传递给传输层。
本发明基于FPGA的存储系统架构的云服务器的数据存储方法,实现了多个硬盘的跨板虚拟一体化;本发明的存储控制器将多个实体存储空间(硬盘)整合成一个逻辑上的单一整体,成为一个虚拟硬盘来面向单个处理器提供实际存储空间以供使用,以硬件方式实现了存储空间的虚拟化扩展;本发明通过对多个硬盘进行地址映射,将处理器与虚拟硬盘间的指令按照预定的规则进行转发,实现多个硬盘的跨板虚拟一体化。
根据本发明的实施例,还提供了一种用于云服务器的数据存储系统。
如图2所示,根据本发明实施例的数据存储系统包括:
多个FPGA;
每个FPGA均连接有多个处理器,以及每个FPGA均连接有一个硬盘;
其中,每个FPGA包括与多个处理器相连的多个处理器控制器、与多个处理器控制器相连的交换器、与交换器相连的存储控制器;
每个FPGA中的处理器控制器用于接收与该处理器控制器连接的处理器的请求指令;
每个FPGA中的处理器控制器进一步用于对请求指令进行地址映射处理,确定请求指令所对应的目标硬盘;
每个FPGA中的处理器控制器进一步用于将地址映射处理后的请求指令发送至目标硬盘所对应的目标FPGA。
此外,根据本发明实施例的每个FPGA进一步包括远端接口,用于与其他的FPGA通信。
优选的,根据本发明实施例的存储控制器包括远端控制器和硬盘控制器。
其中,在一个实施例中,每个FPGA中的远端接口与远端控制器的一端相连,远端控制器的另一端与交换器相连;每个FPGA中的硬盘控制器的一端与交换器相连,硬盘控制器的另一端与硬盘相连。
优选的,根据本发明实施例的硬盘控制器用于接收和/或响应硬盘发送的指令;远端控制器用于接收远端接口发送的指令并将该指令转发至交换器;并且远端控制器进一步用于接收交换器发送的指令,并将该指令转发至远端接口;交换器用于将来自处理控制器的指令分发至硬盘控制器或远端控制器;交换器进一步用于将硬盘或远端接口的响应指令发送至处理器控制器。
综上所述,借助于本发明的上述技术方案,通过对一个FPGA的处理器所发送的指令进行地址映射处理,从而可以确定该指令所对应的目标硬盘,进而实现了对应不同FPGA电路板的多个硬盘的跨板虚拟化存储,提高了系统的存储性能。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改等同替换、改进等,均应包含在本发明的保护范围之内。

云服务器的数据存储方法和系统.pdf_第1页
第1页 / 共12页
云服务器的数据存储方法和系统.pdf_第2页
第2页 / 共12页
云服务器的数据存储方法和系统.pdf_第3页
第3页 / 共12页
点击查看更多>>
资源描述

《云服务器的数据存储方法和系统.pdf》由会员分享,可在线阅读,更多相关《云服务器的数据存储方法和系统.pdf(12页珍藏版)》请在专利查询网上搜索。

本发明公开了一种云服务器的数据存储方法和系统,该数据存储方法包括:本地FPGA接收来自本地处理器的请求指令;本地FPGA通过对请求指令进行地址映射处理,确定请求指令所对应的目标硬盘;本地FPGA将地址映射处理后的请求指令发送至目标硬盘所对应的目标FPGA。本发明通过对一个FPGA的处理器所发送的指令进行地址映射处理,从而可以确定该指令所对应的目标硬盘,进而实现了对应不同FPGA电路板的多个硬盘的跨。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1