一种基于FPGA芯片的sata扩展架构的制作方法

文档序号:6535195阅读:203来源:国知局
一种基于FPGA芯片的sata扩展架构的制作方法
【专利摘要】本发明公开了一种基于FPGA芯片的sata扩展架构,包含sata主机适配器和sata设备适配器,其中sata主机适配器用于实现sata传输层功能,sata设备适配器用于实现sata链路层和物理层功能,sata主机适配器和sata设备适配器之间基于aurora协议进行通信。本发明将sata协议进行分割实现,使得PCIe和sata?phy物理接口处于不同的FPGA芯片芯片内,大幅提高系统资源均衡化,在提高存储系统的存储空间的同时有效降低了存储空间的扩展成本。
【专利说明】—种基于FPGA芯片的sata扩展架构
【技术领域】
[0001]本发明涉及sata扩展设计领域,尤其涉及一种基于FPGA芯片的sata扩展架构。【背景技术】
[0002]随着计算机和互联网技术的发展,越来越庞大的用户数量导致数据急剧增加,对服务器存储空间的要求也越来越高。
[0003]目前很多数据服务提供商通过加入新服务器的方法增加存储空间以应对存储数据的剧增。但是在原有系统处理性能足够,而仅仅是缺少存储空间的情况下,这种做法无疑会大幅度增加服务提供商的成本。虽然市场上有sata扩展板出售,但是这些sata扩展板大多只能额外扩展几块sata存储器,相对于较为普遍的具有十几或几十个硬盘数量的存储阵列,其能够提供的硬盘容量扩展有限。
[0004]一般基于FPGA芯片的sata相关设计都会把完整的sata协议实现于一块FPGA芯片芯片内,对于数量较少的sata设计而言不需要太多的关注FPGA芯片资源需求,但是对于多路sata并行设计而言,对FPGA芯片资源要求太高,尤其是高速串行接口资源,这会造成系统成本过高。
[0005]aurora是Xilinx公司提出的一种可扩展的、轻量型的、链路层的点对点串行差分高速数据传输协议,其传输的数据采用8b/10b编码。aurora主要是针对芯片级以及板级的数据传输,不具备上层应用协议,即只负责数据传输。

【发明内容】

[0006]本发明所要解决的技术问题是针对【背景技术】的缺陷,提供一种系统资源均衡化、有效提高存储空间、降低扩展成本的基于FPGA芯片的sata扩展架构。
[0007]本发明为解决上述技术问题采用以下技术方案:
一种基于FPGA芯片的sata扩展架构,包含sata主机适配器和sata设备适配器,其中sata主机适配器用于实现sata传输层功能,sata设备适配器用于实现sata链路层和物理层功能,sata主机适配器和sata设备适配器之间基于aurora协议进行通信。
[0008]作为本发明一种基于FPGA芯片的sata扩展架构进一步的优化方案,所述sata主机适配器包含第一 PCB板、PCIe接口、第一 FPGA芯片,所述第一 FPGA芯片和PCIe接口设置在第一 PCB板上,所述第一 FPGA芯片包含PCIe控制模块、至少一个sata传输层模块、用于sata数据和aurora数据之间相互转化的第一 sata与aurora数据管理模块和两个aurora控制模块,所述PCIe控制模块与所述PCIe接口相连,所述sata传输层模块分别和所述PCIe控制模块、第一 sata与aurora数据管理模块相连,所述两个aurora控制模块与所述第一 sata与aurora数据管理模块相连。
[0009]作为本发明一种基于FPGA芯片的sata扩展架构进一步的优化方案,所述sata设备适配器包含第二 PCB板、第二 FPGA芯片、个数与所述sata传输层模块的数量相同的statPm芯片和个数与所述sata传输层模块的数量相同的sata接口,所述第二 FPGA芯片、statPm芯片、sata接口均设置在第二 PCB板上,所述第二 FPGA芯片包含两个aurora控制模块、用于sata数据和aurora数据之间相互转化的第二 sata与aurora数据管理模块、个数与所述sata传输层模块的数量相同的sata链路层模块、以及个数与所述sata传输层模块的数量相同的sata物理层模块,所述sata设备适配器的两个aurora控制模块通过minisas线分别与所述第一 FPGA芯片中的两个aurora控制模块对应相连,所述第二 sata与aurora数据管理模块分别和所述sata链路层模块、所述sata设备适配器的两个aurora控制模块相连,所述sata链路层模块与所述sata物理层模块对应相连,所述sata物理层模块与所述stat pm芯片对应相连,所述stat pm芯片与所述sata接口对应相连。
[0010]本发明采用以上技术方案与现有技术相比,具有以下技术效果:
1.将sata协议进行分割实现,使得PCIe和sataphy物理接口处于不同的FPGA芯片内,大幅提高系统资源均衡化,有效降低系统设计成本,为系统设计带来极大便利;
2.可以支撑较多的可扩展sata硬盘数量,不仅在很大程度上提高存储系统的存储空间,还有效降低存储空间的扩展成本。
【专利附图】

【附图说明】
[0011]图1为本发明的整体结构框图;
图2为本发明中sata主机适配器的硬件结构框图;
图3为本发明中sata设备适配器的硬件结构框图。
【具体实施方式】
[0012]下面结合附图对本发明的技术方案做进一步的详细说明:
如图1所示,本发明公开了一种基于FPGA芯片的sata扩展架构,包含sata主机适配器和sata设备适配器,其中sata主机适配器用于实现sata传输层功能,sata设备适配器用于实现sata链路层和物理层功能,sata主机适配器和sata设备适配器之间基于aurora协议进行通信。
[0013]所述sata主机适配器包含第一 PCB板、PCIe接口、第一 FPGA芯片,所述第一 FPGA芯片和PCIe接口设置在第一 PCB板上,所述第一 FPGA芯片包含PCIe控制模块、至少一个sata传输层模块、用于sata数据和aurora数据之间相互转化的第一 sata与aurora数据管理模块和两个aurora控制模块,所述PCIe控制模块与所述PCIe接口相连,所述sata传输层模块分别和所述PCIe控制模块、第一 sata与aurora数据管理模块相连,所述两个aurora控制模块与所述第一 sata与aurora数据管理模块相连。
[0014]所述sata设备适配器包含第二 PCB板、第二 FPGA芯片、个数与所述sata传输层模块的数量相同的stat pm芯片和个数与所述sata传输层模块的数量相同的sata接口,所述第二 FPGA芯片、stat pm芯片、sata接口均设置在第二 PCB板上,所述第二 FPGA芯片包含两个aurora控制模块、用于sata数据和aurora数据之间相互转化的第二 sata与aurora数据管理模块、个数与所述sata传输层模块的数量相同的sata链路层模块、以及个数与所述sata传输层模块的数量相同的sata物理层模块,所述sata设备适配器的两个aurora控制模块通过minisas线分别与所述第一 FPGA芯片中的两个aurora控制模块对应相连,所述第二 sata与aurora数据管理模块分别和所述sata链路层模块、所述sata设备适配器的两个aurora控制模块相连,所述sata链路层模块与所述sata物理层模块对应相连,所述sata物理层模块与所述stat pm芯片对应相连,所述stat pm芯片与所述sata接口对应相连。
[0015]sata主机适配器和sata设备适配器以aurora高速串行协议连接,连接在一起能够实现完整sata功能,sata主机适配器与主机服务器通过PCIe接口通信,sata设备适配器与sata硬盘通过sata接口通信。
[0016]sata主机适配器和sata设备适配器内实现多路sata并行数据传输,由于sata设备适配器中设有sata pm芯片,当sata扩展方案实现有8路sata并行数据传输时,那么sata设备适配器就可以支持最大16块硬盘扩展。
[0017]所述sata主机适配器主要实现与主机服务器的通信管理、与sata设备适配器的通信管理、sata传输层功能、以及多路sata数据(sata传输层与链路层之间传输的数据)与sata设备适配器通信管理之间的数据管理,这些功能实现于FPGA芯片内部,其中与sata设备适配器的通信管理主要为aurora协议控制。
[0018]所述sata设备适配器主要实现sata链路层和物理层功能、sata pm (portmultipler)功能、与sata主机适配器的通信管理、以及多路sata数据与sata主机适配器之间的数据管理,除sata pm之外的功能都实现于FPGA芯片内部,其中与sata主机适配器的通信管理主要为aurora协议控制。
[0019]所述第一、第二 sata与aurora数据管理模块为具有同样功能的模块,其对不同sata路径上的sata数据进行标记区分,并通过一定的策略,如先进先出(FIFO)策略,把多路sata数据按一定的顺序送往aurora控制器并发送到sata主机适配器或者sata设备适配器;并根据数据标志把aurora接收到的数据分发到不同的sata通道上。
[0020]通过连接sata主机适配器和sata设备适配器,主机服务器可以对扩展的sata硬盘进行读写操作,从而实现存储空间的扩展,可扩展sata硬盘数量主要由主机服务器端的PCIe带宽和所要挂载的sata硬盘的种类(机械硬盘或固态硬盘)决定。
[0021]如图2所示,sata主机适配器由PCIe接口、PCIe控制模块、并行8路sata传输层模块、第一 sata与aurora数据管理模块、2个aurora控制模块组成,其中PCIe控制模块实现sata主机适配器与主机服务器的通信管理功能,PCIe接口为Gen2 x4具有1.2GB/s的带宽,aurora控制模块实现sata主机适配器与sata设备适配器的通信管理功能,minisas接口并不是负责传输sas协议而是传输aurora,每根线上传输速度为6Gbps,总带宽为1.2GB/S。
[0022]如图3所示,sata设备适配器由16个sata接口、8个sata pm芯片、并行8路sata链路层模块和sata物理层模块、第二 sata与aurora数据管理单元、2个aurora控制器组成,其中sata pm芯片实现sata适配器适配器与sata硬盘的通信管理功能,8个sata接口的实际数据传输率约为80*16MB/s (1.28GB/s)的带宽,aurora控制模块实现sata设备适配器与sata主机适配器的通信管理功能。本实施例中的sata扩展设计方案基本上可以满足16个额外的机械sata硬盘的数据传输带宽。
【权利要求】
1.一种基于FPGA芯片的sata扩展架构,其特征在于,包含sata主机适配器和sata设备适配器,其中sata主机适配器用于实现sata传输层功能,sata设备适配器用于实现sata链路层和物理层功能,sata主机适配器和sata设备适配器之间基于aurora协议进行通信。
2.根据权利要求1所述的基于FPGA芯片的sata扩展架构,其特征在于,所述sata主机适配器包含第一 PCB板、PCIe接口、第一 FPGA芯片,所述第一 FPGA芯片和PCIe接口设置在第一 PCB板上,所述第一 FPGA芯片包含PCIe控制模块、至少一个sata传输层模块、用于sata数据和aurora数据之间相互转化的第一 sata与aurora数据管理模块和两个aurora控制模块,所述PCIe控制模块与所述PCIe接口相连,所述sata传输层模块分别和所述PCIe控制模块、第一 sata与aurora数据管理模块相连,所述两个aurora控制模块与所述第一 sata与aurora数据管理模块相连。
3.根据权利要求2所述的基于FPGA芯片的sata扩展架构,其特征在于,所述sata设备适配器包含第二 PCB板、第二 FPGA芯片、个数与所述sata传输层模块的数量相同的statPm芯片和个数与所述sata传输层模块的数量相同的sata接口,所述第二 FPGA芯片、statPm芯片、sata接口均设置在第二 PCB板上,所述第二 FPGA芯片包含两个aurora控制模块、用于sata数据和aurora数据之间相互转化的第二 sata与aurora数据管理模块、个数与所述sata传输层模块的数量相同的sata链路层模块、以及个数与所述sata传输层模块的数量相同的sata物理层模块,所述sata设备适配器的两个aurora控制模块通过minisas线分别与所述第一 FPGA芯片中的两个aurora控制模块对应相连,所述第二 sata与aurora数据管理模块分别和所述sata链路层模块、所述sata设备适配器的两个aurora控制模块相连,所述sata链路层模块与所述sata物理层模块对应相连,所述sata物理层模块与所述stat pm芯片对应相连,所述stat pm芯片与所述sata接口对应相连。
【文档编号】G06F13/42GK103778095SQ201410007402
【公开日】2014年5月7日 申请日期:2014年1月8日 优先权日:2014年1月8日
【发明者】张庆敏, 张衡, 汪圣平, 史顺波 申请人:无锡众志和达数据计算股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1