当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]或许,你会认为DPDK(Data Plan Development Kit)是一个应用在网络应用层上的高速数据传输标准;或许,你认为DPDK是Intel制定的一套规格;或许,你认为DPDK在CPU和ASIC界是受限的保密的;亦或许,你都没有听说过DPDK,考虑到它的发展历史,确实很有可能。所以,如果以上的这些假设中有一项是正确的,那么你应该读读下面的内容。

或许,你会认为DPDK(Data Plan Development Kit)是一个应用在网络应用层上的高速数据传输标准;或许,你认为DPDK是Intel制定的一套规格;或许,你认为DPDK在CPU和ASIC界是受限的保密的;亦或许,你都没有听说过DPDK,考虑到它的发展历史,确实很有可能。所以,如果以上的这些假设中有一项是正确的,那么你应该读读下面的内容。

最初,DPDK是一个数据层的库集,后来Intel开发了专门针对Intel X86微处理器的可以快速分组处理NIC(网络接口控制)的驱动,这就是DPDK的前世。而今生的DPDK,在去年四月份,已经成为一个Linux基金项目,并且可以在DPDK.org上看到。

DPDK主要包括以下几个大家常用的主要库:

当需要最小化CPU周期数时(一般小于80)发送和接收数据包;

开发快速分组算法;

运行第三方快捷路径堆栈。

迄今为止,DPDK听起来确实像是一个特殊的网络开发工具,但是,也正如Atomic Rules的CTO Shep Siegel所说:“如果你可以使你的数据传输问题看起来仅仅是一个数据包传输问题的话,那么,在你的开发流程中,DPDK可能就是一条比较有帮助捷径”。

Arkville

并且,关于近期更多DPDK的细节,Siegel的团队可能更为了解,主要是因为他的团队刚发布了Arkville,这是一个支持DPDK的FPGA/GPP的数据传输IP块和DPDK PMD(Poll Mode Driver,与Linux基金开源DPDK库17.05发行版协作,允许Linux DPDK应用分流服务器循环到FPGA门)。同时,Atomic Rules的Arkville发行版还兼容Xilinx Vivado2017.1(这是今年四月份刚刚发布Vivado设计工具的最新版本)。此外,Atomic Rules提供了两个简单的demo设计(均可通过Vivado 2017.1进行编译):

4端口,4队列10GbE demo(Arkville + 4 x 10 GbE MAC)

单端口单队列 100GbE demo(Arkville + 1 x 100 GbE MAC)

以上这两个例子都是数据移动器。准确来说,Arkville是一个数据包导管道,这个管道有一个CPU端的DPDK接口,一个FPGA端的AXI接口,同时,在Arkville管道上还有一个可以很方便地增加用户用于处理这些数据包的硬件设计点,同时这也是CPU分流逻辑的所在。

Atomic Rules开发的Arkville IP和所有的Xilinx UltraScale器件都协作良好,但是,与Xilinx UltraScale+ 的全可编程器件协作的更好,这主要归功于全可编程器件内部集成两个PCIe Gen3 x 16控制器(包括Kintex UltraScale+和Virtex UltraScale+ FPGA系列器件和Zynq UltraScale+ MPSoC系列器件)。

为什么呢?

正如BittWare企业的VPCraig Lund主管所说 “100G的以太网是不太可能的,但是你是否可以在服务器端通过使用PCIe来达到这个速率 [使用一个PCIe Gen3 x 16接口]是不明确的。从PCIe的参数来看,这看起来似乎简单,但事实并非如此” 。Lund还说到,如果你正在处理一个最小尺寸的数据包,那么可以采用大量超过14百万每秒来实现。但是如果你正在处理一个大的数据包,那将需要更多的带宽,这或许正是一个对单PCIe Root 复合体生产力的挑战,不过从实际出发,确实一个不够。

应用Atomic Rules的ArkvilleIP,BittWare开发出了自己的产品——XUPP3R PCIe卡,同时它还组合了一个Xilinx的Virtex UltraScale+ VU13P FPGA芯片。BittWare的XUPP3R PCIe板卡的众多独特特征之一就是它有两个PCIe Gen3 x 16 端口:一个在边缘连接器时有效,另一个是一个可选的连续扩展口。其中第二个PCIe Gen3x16口可以用作增加带宽的第二PCIe槽。

然而,尽管Lund没有多说,这里却不仅仅需要两个PCIe Gen3 x 16插槽,而是需要两个PCIe Gen2 Root复合体,也就意味着需要一个两组插槽的母板,然后两个CPU工作处理数据通路。

 BittWare不仅开发了具有两个PCIe Gen3 x 16端口的XUPP3R PCIe卡,此外,BittWare还使用它的XUPP3R PCIe卡和Arkville IP共同开发了两个产品:

 StreamSleuth,一个100GbE的网络数据包处理器具。

StreamSurge,一个1U盒子,内有Intel E5 v4 单插座服务器和由XUPP3R PCIe 卡设计的NIC以及BittWare的StreamSurge IP。

不过,需要对号的是:Arkville是Atomic Rules提供的一个IP,XUPP3R PCIe卡是BittWare提供的产品,两者不可混淆。

总结

目前,大量数据爆发,除了固件运输之外,最方便的总线(PCIe/ETH)线路传输,不仅速率高同时安全性高,但是随着形势的发展,对其速率的要求越来越高,期望Xilinx FPGA可以为提高数据传输速率方面做出更多贡献。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭