CN103116560B - 可编程刀片服务器结构 - Google Patents
可编程刀片服务器结构 Download PDFInfo
- Publication number
- CN103116560B CN103116560B CN201310047200.8A CN201310047200A CN103116560B CN 103116560 B CN103116560 B CN 103116560B CN 201310047200 A CN201310047200 A CN 201310047200A CN 103116560 B CN103116560 B CN 103116560B
- Authority
- CN
- China
- Prior art keywords
- fpga
- blade
- end points
- connects
- programmable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明提供了一种可编程刀片服务器结构,包括背板和若干个插在背板PCIE插槽上的处理器刀片,其特征在于每个PCIE插槽的收发通道连接FPGA的高速收发器,其中主端点通道连接到cvp配置功能指定的通道,FPGA内通过若干个PCIE端点IP核按对应的PCIE插槽分别与对应的设备端点连接,设备端点与可编程逻辑模块连接,可编程逻辑模块与PCIE?IO?接口连接。本发明具有目前刀片服务器结构无法比拟的设备扩展性和灵活性。
Description
技术领域
本发明属于刀片服务器领域,具体是一种可编程刀片服务器结构。
背景技术
目前的刀片服务器的基本都是基于固定逻辑芯片设计的,设计制造完成后,其硬件逻辑功能保持不变,其背板仅有数据交换或信号通道功能。另外目前已有的刀片服务器内的协议交换是不能随意改变的,扩展性和灵活性有限。而且传统刀片服务器的网络接口、SAN光纤通讯、Infiniband通讯以及FC接口,都需要在服务器刀片上有相应的接口卡,外部需要相应协议的交换机,系统复杂,成本高,可靠性不高。
发明内容
为了解决上述技术问题,本发明提供了一种可编程刀片服务器结构。
一种可编程刀片服务器结构,包括背板和若干个插在背板PCIE插槽上的处理器刀片,其特征在于每个PCIE插槽的收发通道连接FPGA的高速收发器,其中主端点通道连接到FPGA的cvp配置功能指定的通道,FPGA内通过若干个PCIE端点IP核按对应的PCIE插槽分别与对应的设备端点连接,设备端点与可编程逻辑模块连接,可编程逻辑模块与PCIEIO接口连接。
所述的一种可编程刀片服务器结构,其特征在于所述处理器刀片中的主处理器刀片设置有用于远程更新的前面板网络接口,软件上支持FPGAcvp设备和配置。
所述的一种可编程刀片服务器结构,其特征在于所述PCIEIO接口通过高速收发通道与以太网SFP光接口连接,所述设备端点连接FPGA内的以太网MAC,以太网MAC连接PCS,PCS连接PMA。
所述的一种可编程刀片服务器结构,其特征在于所述设备端点连接FPGA内的以太网MAC,以太网MAC与以太网协议交换逻辑连接,以太网协议交换逻辑通过FPGA逻辑实现协议交换。
所述的一种可编程刀片服务器结构,其特征在于所述设备端点连接FPGA内的SATAMAC,SATAMAC连接PCS,PCS连接PMA,所述PCIEIO接口通过高速收发通道与SATA接口连接。
所述的一种可编程刀片服务器结构,其特征在于所述处理器刀片之间通过设备端点的BAR寄存器的读写访问实现FIFO高速互联通信。
所述的一种可编程刀片服务器结构,其特征在于每个处理器刀片分配一个DMA地址,其中主处理器刀片的端点设备可以控制地址映射读写控制模块,通过中断控制模块发起对其他处理器的中断。
本发明的可编程刀片服务器结构,在背板中使用Altera公司StratixV(或ArriaV或CycloneV)FPGA作为背板核心芯片,使用了三级灵活性创新处理,第一个灵活性处理是:特定的组合了1、FPGA动态重配置cvp功能,2、FPGAPCIE配置通道设计为主通道结构,3、FPGAPCIE端点设备的可编程性、4、带网络连接和配置FPGA功能的主刀片,连接支持各种不同外设,未来需要的外设可通过主处理器刀片网络实时动态更新到本发明结构中,使本结构支持远程网络软件定义的硬件逻辑更新,使这种结构适应硬件可定制服务器中应用。结构第二个灵活性处理是在背板PCIE插槽后联入FPGA,将PCIE设备逻辑在FPGA中实现,利用FPGA设备逻辑的可编程性,只要提供逻辑编程后的FPGA协议处理模块就可以实现应用需要的任何数字交换协议,不限定某一特定的协议,结构的第三个灵活性处理是将输出接口部分通过相同的PCIE插槽连接IO刀片,使输出接口适应各种不同需求,因此本结构具有目前刀片服务器结构无法比拟的PCIe设备扩展性和处理协议灵活性。同时该结构还能利用FPGA器件的逻辑互通提供服务器刀片之间的高速数据交换功能、高性能群集计算功能。本结构中扩展连接设备在FPGA内实现,服务器内刀片之间的协议交换同样在FPGA内实现,省去了接口卡和交换机投入,降低了系统成本和复杂性。芯片内逻辑连接代替了外部线缆的物理接插连接减少,提高了系统可靠性。本结构的连接方式使不同服务器刀片的PCIE外设处于相同FPGA内,使得服务器刀片之间的管道数据通信不再需要复杂的协议,能有效提高数据通讯的效率。该结构让不同Pcie域空间的设备处于同一FPGA逻辑芯片内,能提供刀片主机之间的高速通信。结构支持FPGA内实现Pcie-Pcie不透明桥逻辑功能,支持刀片服务器间内存相互访问。
附图说明
图1是本发明的可编程刀片服务器的物理结构图;
图2是本发明的可编程刀片服务器的FPGA逻辑结构图;
图3是本发明的可编程刀片服务器的主处理器刀片结构;
图4是本发明的可编程刀片服务器的FPGA内扩展千兆/万兆SFP光接口以太网逻辑结构示意图;
图5是本发明的可编程刀片服务器的千兆/万兆SFP光接口IO刀片示意图;
图6是本发明的可编程刀片服务器的以太网协议交换示意图;
图7是本发明的可编程刀片服务器的FPGA内扩展SATA存储逻辑示意图;
图8是本发明的可编程刀片服务器的SATA存储IO刀片示意图;
图9是本发明的可编程刀片服务器的FPGA内处理器刀片设备间FIFO通讯示意图;
图10是本发明的可编程刀片服务器的高性能群集计算功能示意图;
图中,1—背板;2—FPGA;3—主通道;4—PCIE接口;5—主处理器刀片;6—处理器刀片;7—设备刀片;8—IO刀片;9—存储刀片;10—处理器刀片A;11—处理器刀片B;12—主端点;13—EP;14—地址映射和读写控制逻辑;15—可编程逻辑模块;16—PCIEIO接口;17—内存条;18—CPU;19—BIOS;
20—RJ45;21—根复合体;22—网络;23—硬盘;24—处理器刀片C;25以太网MAC;26—PCS;27—PMA;28—SFP接口;29—SATAMAC;30—SATA接口硬盘;31—SATA接口;32—EPA;33—EPB;34—EPC;35—FIFOA->B;36—FIFOB->A;37—从处理器刀片A;38—从处理器刀片B;39—DMA地址;40—中断控制模块;41—以太网逻辑交换协议。
具体实施方式
下面结合附图对本发明进行详细说明。
图1图2所示分别是本发明的可编程刀片服务器的物理结构图和FPGA逻辑结构图,处理器刀片分别插到背板PCIE插槽,每个PCIE插槽的收发通道连接到FPGA的高速收发器,其中主端点通道连接到AlteraFPGAcvp配置功能指定的通道,FPGA内使用PCIE端点IPCORE按对应的插槽实例化多个端点设备,端点设备连接到可编成逻辑模块部分,这部分按实际需求进行设备逻辑编程,可实现任何数字交换协议。因为这些端点以上述物理和逻辑结构被组合到FPGA内,所以不同处理器刀片之间具有了高速通信基础。在后续说明中针对不同应用示例说明。
Cvp(ConfigurationviaProtocol)配置方式是Altera公司28nmFPGA器件提供的通过Pcie端口的FPGA配置方式。EP是PCIE设备端点(Endpoint)
PcieIO接口和处理器刀片连接的插槽完全一致,但插槽上高速收发信号作为设备扩展使用。
如图3所示是本发明的可编程刀片服务器的主处理器刀片结构,主处理器刀片具有前面板网络接口RJ45,用于远程更新。
实施例1
刀片服务器千兆/万兆以太网扩展
如图4和图5所示。图中借用PCIE接口中的高速收发通道连接SFP扩展刀片。PCS是FPGA内高速收发器物理编码层,PMA是FPGA内高速收发器媒体附加层。
实施例2
刀片服务器内协议交换
FPGA内可编程逻辑部分可以实现任何数字交换协议,以图6中的以太网协议交换为例,图中各刀片服务器端点逻辑和以太网MAC实现了以太网接口卡功能。以太网协议交换逻辑通过FPGA逻辑实现协议交换。
实施例3
刀片服务器存储扩展
如图7和图8所示,图中EP是PCIE设备端点(Endpoint),PCS是FPGA内高速收发器物理编码层。PMA是FPGA内高速收发器媒体附加层。PCIE接口中4个高速通道分别作为4路SATA接口的收发通道,在FPGA内实现存储扩展,并连接到一个PCIE接口设备逻辑上。
实施例4
刀片服务器高速互联通信
如图9所示,以FPGA内处理器刀片设备间FIFO通讯为例示意服务器之间高速通信,实际应用中我们可以使用更复杂的内存共享模块和中断实现大数据直接DMA操作。
图中刀片处理器A通过EPA的BAR寄存器写访问FIFOA->B的输入数据口。
刀片处理器B通过EPB的BAR寄存器读访问FIFOA->B的输出数据口。
同理:
刀片处理器B通过EPB的BAR寄存器写访问FIFOB->A的输入数据口。
刀片处理器A通过EPA的BAR寄存器读访问FIFOB->A的输出数据口。
通过上述fpga逻辑实现了一个高速数据通道。
实施例5
高性能群集计算功能
如图10所示,在FPGA内设立一个PCIE插槽的刀片处理器作为主系统,在图中中间的为主处理器刀片。
实现过程如下:
1.FPGA内在实现EP端点设备时设定BAR0~1为管理寄存器空间,设备初始化时每个处理器刀片分配一块大小为DMA_SIZE的DMA内存空间,并将物理地址通过BAR0写入设备寄存器空间中的DMA地址寄存器中。
2.FPGA内在实现EP端点设备时设定BAR2~3为映射的大小为N*DMA_SIZE的共享数据存储空间,其中N为刀片服务器数量。主处理器通过BAR2、地址映射和读写控制逻辑访问所有刀片服务器的DMA内存空间。
3.主控处理器刀片EP端点设备能控制地址映射内存读写模块,通过中断控制模块发起对其他处理器的中断。
4.工作时从处理器处于等待中断模式,主处理器刀片将处理数据DMA写入从处理器内存空间中,然后触发从处理器中断,从处理器进入处理,处理完成后通过BAR0设置处理状态寄存器。主处理器读取控制状态,并从从处理器DMA内存空间取回处理结果。
因为FPGA内逻辑是可编程的,所以上述实现只是方法之一。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
Claims (6)
1.一种可编程刀片服务器结构,包括背板和若干个插在背板PCIE插槽上的处理器刀片,其特征在于每个PCIE插槽的收发通道连接FPGA的高速收发器,其中主端点通道连接到FPGA的cvp配置功能指定的通道,FPGA内通过若干个PCIE端点IP核按对应的PCIE插槽分别与对应的设备端点连接,设备端点与可编程逻辑模块连接,可编程逻辑模块与PCIEIO接口连接;所述设备端点连接FPGA内的以太网MAC,以太网MAC与以太网协议交换逻辑连接,以太网协议交换逻辑通过FPGA逻辑实现协议交换。
2.如权利要求1所述的一种可编程刀片服务器结构,其特征在于所述处理器刀片中的主处理器刀片设置有用于远程更新的前面板网络接口,软件上支持FPGAcvp设备和配置。
3.如权利要求1所述的一种可编程刀片服务器结构,其特征在于所述PCIEIO接口通过高速收发通道与以太网SFP光接口连接,所述设备端点连接FPGA内的以太网MAC,以太网MAC连接PCS,PCS连接PMA。
4.如权利要求1所述的一种可编程刀片服务器结构,其特征在于所述设备端点连接FPGA内的SATAMAC,SATAMAC连接PCS,PCS连接PMA,所述PCIEIO接口通过高速收发通道与SATA接口连接。
5.如权利要求1所述的一种可编程刀片服务器结构,其特征在于所述处理器刀片之间通过设备端点的BAR寄存器的读写访问实现FIFO高速互联通信。
6.如权利要求1所述的一种可编程刀片服务器结构,其特征在于每个处理器刀片分配一个DMA地址,其中主处理器刀片的端点设备可以控制地址映射读写控制模块,通过中断控制模块发起对其他处理器的中断。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310047200.8A CN103116560B (zh) | 2013-02-06 | 2013-02-06 | 可编程刀片服务器结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310047200.8A CN103116560B (zh) | 2013-02-06 | 2013-02-06 | 可编程刀片服务器结构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103116560A CN103116560A (zh) | 2013-05-22 |
CN103116560B true CN103116560B (zh) | 2016-01-13 |
Family
ID=48414940
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310047200.8A Active CN103116560B (zh) | 2013-02-06 | 2013-02-06 | 可编程刀片服务器结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103116560B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104035524B (zh) * | 2014-06-23 | 2017-11-10 | 浪潮(北京)电子信息产业有限公司 | 一种冷存储服务器 |
CN110795374B (zh) * | 2019-10-16 | 2021-06-11 | 苏州浪潮智能科技有限公司 | 一种设备访问的方法、装置及可读存储介质 |
CN110825674B (zh) * | 2019-10-30 | 2021-02-12 | 北京计算机技术及应用研究所 | 基于fpga的pcie dma交互系统及交互方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000572A (zh) * | 2006-01-13 | 2007-07-18 | 英业达股份有限公司 | 机箱管理系统及方法 |
CN102253872A (zh) * | 2011-07-07 | 2011-11-23 | 浪潮电子信息产业股份有限公司 | Cpci刀片服务器中冗余管理模块的实现方法 |
CN102270029A (zh) * | 2011-07-21 | 2011-12-07 | 曙光信息产业(北京)有限公司 | 一种龙芯刀片主板热启动的方法 |
-
2013
- 2013-02-06 CN CN201310047200.8A patent/CN103116560B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101000572A (zh) * | 2006-01-13 | 2007-07-18 | 英业达股份有限公司 | 机箱管理系统及方法 |
CN102253872A (zh) * | 2011-07-07 | 2011-11-23 | 浪潮电子信息产业股份有限公司 | Cpci刀片服务器中冗余管理模块的实现方法 |
CN102270029A (zh) * | 2011-07-21 | 2011-12-07 | 曙光信息产业(北京)有限公司 | 一种龙芯刀片主板热启动的方法 |
Non-Patent Citations (2)
Title |
---|
新型的IBA 刀片式集群服务器及其内部互联;董小社等;《计算机应用》;20030228;第23卷(第2期);第62页-68页 * |
采用PCI Express提高刀片系统的模块化设计;MattJones;《电子设计技术》;20071215;第100-102页 * |
Also Published As
Publication number | Publication date |
---|---|
CN103116560A (zh) | 2013-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107015928B (zh) | 用以切换多个接口的系统及其方法及用以切换总线的系统 | |
CN110941576B (zh) | 具有多模pcie功能的存储控制器的系统、方法和设备 | |
KR100555394B1 (ko) | Ngio/infiniband 어플리케이션용 리모트 키검증을 위한 방법 및 메커니즘 | |
US7210022B2 (en) | Apparatus and method for interconnecting a processor to co-processors using a shared memory as the communication interface | |
US7529860B2 (en) | System and method for configuring an endpoint based on specified valid combinations of functions | |
US7480303B1 (en) | Pseudo-ethernet switch without ethernet media-access-controllers (MAC's) that copies ethernet context registers between PCI-express ports | |
US8878860B2 (en) | Accessing memory using multi-tiling | |
EP3503507B1 (en) | Network interface device | |
US20090094399A1 (en) | Dynamic virtualization of switches and multi-ported bridges | |
US7243182B2 (en) | Configurable high-speed serial links between components of a network device | |
CN103793355A (zh) | 基于多核dsp的通用数字信号处理板卡 | |
US20160140074A1 (en) | Memory mapping method and memory mapping system | |
US9515963B2 (en) | Universal network interface controller | |
CN109586956B (zh) | 一种可灵活配置端口的FCoE交换机及方法 | |
CN103116560B (zh) | 可编程刀片服务器结构 | |
CN110895516A (zh) | 使用管理数据输入/输出接口将外部phy设备连接到mac设备 | |
US9594706B2 (en) | Island-based network flow processor with efficient search key processing | |
US9660936B2 (en) | Method and apparatus for supporting reprogramming or reconfiguring | |
US20110106975A1 (en) | Data transfer apparatus | |
CN104898775A (zh) | 计算装置、存储装置、网络交换设备及计算机体系架构 | |
US10877911B1 (en) | Pattern generation using a direct memory access engine | |
CN203149556U (zh) | 可编程刀片服务器结构 | |
CN107645638B (zh) | 视频处理器和背板通信方法 | |
US9542349B2 (en) | Wide port emulation at serial attached SCSI expanders using virtual physical links | |
US9632959B2 (en) | Efficient search key processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |