所有提交的电磁系统将被重定向到在线手稿提交系统。作者请直接提交文章在线手稿提交系统各自的杂志。

在自适应可重构IOH应用FPGA

bloom RAJA .D1e i Asst.教授,部门,Bharath大学印度钦奈- 600073
相关文章Pubmed,谷歌学者

访问更多的相关文章国际先进研究期刊》的研究在电子、电子、仪表工程

文摘

数据流量大大增加,还增加连接世界和它对输入输出技术的进化。随着技术的发展,一个简单的统一和高速互连成为实际支持许多不同的协议。光峰(LPK)是一种高带宽、廉价的光互连技术由英特尔为了这个目的。同时,满足通用的和不断变化的I / O的需求,一种自适应IOH (I / O中心)的体系结构可以提供令人满意的灵活性。在本文中,我们提出一个高带宽和灵活IOH架构上实现FPGA的嵌入式系统。平台2 x 10 gbps光学LPK链接,和几个SATA,以太网接口和显示端口。除了硬件,我们提出一个软件堆栈框架,提供了一个统一的接口协议映射,替换无数个人硬件控制器,利用LPK的通用主机控制器。因此降低了成本和开发工作,并增强了IOH灵活性。我们还描述了一个可配置的硬件协议适配器在设备方面,可以直接连接到任何设备。SATA的IO计和Iperf显示性能,以太网在基于FPGA的IOH与本地的竞争。

介绍

在嵌入式系统中,数据流量近年来急剧增加。随着技术向前发展,简单和高速互连,提供了一个低成本、统一的互连,与其他不同的协议映射到它,已经成为现实。满足通用的和不断变化的I / O需要与这些为嵌入式系统提供了统一的互连,高速度和高度自适应IOH (I / O)中心体系结构将提供令人满意的灵活性。一些嵌入式系统提供各种IOHs以满足不同的应用需求,e . g,英特尔提供大约20种嵌入式英特尔®为客户架构芯片组[1]。NXP生产87种平台支持64种IOs [2]。光峰[4]是一个高带宽,便宜的光互连技术由英特尔。协议本身提供的特性非常适合于不同的应用程序[5]:
•使用小数据包大小来实现低延迟。
•能够复用多个I / O协议在一个共同的与高带宽效率。
•能够使用优先级和链路带宽分配带宽预订机制。
另一方面,FPGA的本机功能灵活性使它支持不同的应用程序。除了它之外,最新FPGA采用先进的收发器技术来支持未来的通信系统。这里,基于FPGA和LPK技术,我们目前嵌入式系统IO中心解决方案和高带宽和多协议支持。这个解决方案提供了统一的接口协议映射,替换无数个人硬件控制器利用LPK的通用主机控制器,从而降低成本,为嵌入式系统开发工作,并增强了IOH灵活性。SATA、以太网和显示端口是在平台上实现。
基准测试的结果显示每个协议的性能与本机具有竞争力。平台是Xilinx FPGA上实现V5系列+ 10 gbps x2光学PHY模块。我们地图SATA,显示端口,以太网。

系统架构

平台包括主机、FPGA板和终端设备如图1所示。董事会由aFPGA模块,LPK和SATA等几个连接器光学模块,显示和以太网。在主机端,FPGA可以附加作为PCIe总线访问数据从主内存,也可以连接到本机硬件控制器,如显示端口,接收数据,如图1所示。在设备方面,FPGA将终端设备和光纤传输终端设备的数据。
当应用程序在某协议传输数据通过该光学IOH,主机可能有硬件控制器的协议,或者它可能不是。在第一个案例中,例如显示端口,协议FPGA是真实的包收到的数据流生成的本地主机的硬件控制器。在适配器硬件FPGA数据包和封装了数据重新组织成LPK包。然后LPK硬件处理数据包并发送数据包通过纤维。在第二种情况下,例如SATA和以太网,我们提供一个软堆栈框架的本机硬件控制器。软件堆栈直接组织协议格式数据作为LPK必需的,然后是CHCI获取数据LPK低层硬件终于在LPK数据包发送。在设备方面,LPK数据包由FPGA接收和转换回本地协议格式。数据开关分派到相应硬件协议引擎,解压协议格式头和数据,最后将其传输到终端设备。
图2显示了平台架构堆栈,这包括:
•一个软件界面,结合操作系统(OS)。操作系统定义了标准接口API,需要实现一个类的设备。
•软件协议处理层保持一定的协议状态和转换操作系统原语语义中预定义的产品设计。层提取一个统一的接口操作系统块设备层,这是一个很好的缓解低电平驱动程序开发人员。
•CHCI接口层管理实际的主机内存之间的数据传输和底层硬件。
•硬件CHCI接口层,提供硬件队列处理,DMA操作等等。•硬件协议处理层通常包含事务跟踪、数据接口和主机数据设备协议数据单元转换。详细设计和工作流程将在以下部分中引入的。

硬件体系结构

可以配置为硬件平台主机设备或装置设备。在主机端配置中,所有的本地协议数据包转换成LPK数据包通过LPK主机控制器或适配器;在设备配置,所有LPK数据包收到光学链接转换回本地协议数据包和分派到相应的适配器。平台包含两个主要部分:光学模块和FPGA。光学模块提供了一个高带宽PHY层10 gbps,并从10 g收发器将电信号转换成光脉冲注入连接器[6]。FPGA设计提供以下组件,图3所示:
•LPK逻辑PHY和传输层:LPK联系培训、钟差补偿,包验证和分类。
•LPK开关:分派每个LPK包的目的地。提供流量控制和QoS调度基于分组头中的信息。
•LPK主机控制器(CHCI): LPK主机控制器为主机之间交换帧定义内存和FPGA的LPK织物。DMA引擎它移动数据效率高和低延迟通过标准作为PCIe事务。TX方向,帧从主机内存划分为LPK数据包,然后通过LPK转发网络。RX的方向,LPK数据包重组形成一个框架所需的软件和上传到主机内存由DMA引擎。
•在适配器:封装本地协议数据包和数据流在LPK包。
•协议引擎:通用协议引擎,可以定制各种适配器,以满足不同的接口协议的需求如显示端口、SATA、以太网等。我们提出下面的协议引擎的细节设计。
图4显示了详细的协议引擎的体系结构。
在我们的设计中,它由四层:协议独立SAR(分割和重组的)层、协议适应层、链路层协议依赖和PHY层。
•独立SAR层协议
这一层的功能包分割和重新组装(SAR)。LPK协议数据包的最大有效载荷大小是256字节,远低于许多本地协议。本机包之前需要处理在LPK纤维转移。分割是指的过程中创建多个LPK数据包从一个框架和重新组装的过程是指从多个LPK创建一个单帧数据包在相反的方向。
•协议适应层
这一层实现协议转换LPK和当地人之间的协议。协议适应层将数据包分成两个类型进行分类根据信息在LPK包报头:数据包和协议数据包。直接将数据包转发到链路层。协议数据包将被终止或用于控制所需的本地链路层的协议。例如,包MDIO包从主机端是用于读取当前以太网链路状态协议适应层将终止这个包,读取相应的链接状态寄存器和准备所需的回复在以太网数据包的格式,然后将提出一个请求SAR层与LPK应答数据包的有效载荷和表明数据包类型在LPK MDIO数据包报头。
如前所述,用户可以配置这一层来支持不同的本地协议,协议部分是不同的,
数据路径和相邻层的接口是相同的。•链路层协议依赖每个协议都有自己的联系培训流程,这里我们使用离散为每个协议状态机。在未来,我们认为合并共同部分一个状态机。•参数化PHY层
我们直接配置为不同的本地协议PHY FPGA嵌入式收发器。我们收发器配置中设置很多参数,如链接速度、编码方法,逗号集,通道结合,电特性等。

软件架构

原LPK硬件解决方案将I / O映射协议对在LPK适配器。它不需要改变当前内核。端口连接本机的适配器的硬件控制器LPK开关,和适配器的端口连接设备LPK开关。这种机制不需要额外的软件工作,然而,它需要系统支持许多不同的本地协议硬件控制器。
在这里,我们提出一个新的解决方案将I / O映射协议没有本机硬件控制器和适配器。如图4所示,这个解决方案移动主机端协议处理逻辑从硬件到软件。软件架构设计如下:
•操作系统接口API -操作系统内核定义了标准接口API的需要实现一个类的设备。
•协议处理层——维护协议状态和上层原语转换为语义,出现在本机硬件控制器。
•CHCI接口软件,管理主机内存之间的数据传输和底层硬件,报告完成并提供公共协议处理功能转移到协议处理层。我们已经成功地映射SATA和网卡协议与此解决方案。CHCI司机,SATA驱动器和网卡驱动程序实现在2.6.25支持Linux的映射。等上层SCSI、块、核心网络,VFS层中被搁浅。

ERFORMANCE

我们做一些实验来衡量建筑的开销。我们分别运行SATA和网卡在本地环境和我们的平台环境。在“本地”指的是环境中数据传输的原始协议连接。
答:SATA测试设置和性能
我们已经部署测试SATA磁盘IO计。分析我们的架构影响SATA的性能,我们让客户执行读/写磁盘操作在两个环境中使用不同的块大小,和收集的吞吐量和CPU利用率数据。
图5。(a)和图5。(b)分别显示SATA的读/写性能在本地环境和我们的环境。读/写在我们的平台上的吞吐量是本机的非常接近。值得注意的是,我们的阅读吞吐量相对高一点。的原因是因为有一个内存复制数据包接收的SATA驱动器,从而导致更多的缓存命中率和更高的吞吐量,但支付更高的CPU利用率。b .网卡测试设置和性能
我们有测试工具测试网卡Iperf部署。在本地环境中,客户机和服务器与网络电缆直接连接在我们的他们在LPK织物在光纤连接。分析我们的架构对网卡的性能的影响在我们的实验中,我们让客户执行TCP传输/接收操作不同的海量存储系统(MSS)中(最大段大小),并收集了吞吐量和CPU利用率。
图6。(a)和图6所示。(b)显示网卡的TCP接待/传输性能在本地环境和我们的环境。的吞吐量LPK非常接近原生的。但也有一些差异,我们需要解释。查看图6。(a),我们的吞吐量在100字节都要高得多。这是由于我们的网卡驱动程序没有实现动态控制中断率的算法实现本机的网卡驱动程序的环境。所以网卡的中断率在两个环境中是不同的。和更高的中断率我们的环境会导致更低的延迟在TCP事务,但支付更高的CPU利用率。类似的事情发生在图6。(b)。
c .结论
从这些测试,我们看到我们的建议的体系结构带来一些开销正如我们预期的一样,但它是非常小的。通过进一步优化我们的软件和硬件实现,我们可以实现更小的开销。

总结

在本文中,我们提供了一个嵌入式系统IO中心解决方案和高带宽多协议支持基于FPGA和LPK技术。解决方案考虑各种环境有或没有本地连接设备控制器和涵盖主机和设备一起,和覆盖系统。我们提出一个软件堆栈框架,提供了一个统一的接口协议映射,取代许多本地硬件控制器,利用LPK的通用主机控制器,从而降低成本和开发工作,加强IOH灵活性。SATA、以太网和显示是在平台上实现。基准测试的结果显示每个协议的性能与本地的竞争。

数据乍一看

图1 图2 图3
图1 图2 图3
图4 图5 图6
图4 图5 图6

引用