新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于千兆网的FPGA多通道数据采集系统设计

基于千兆网的FPGA多通道数据采集系统设计

作者:时间:2015-07-09来源:网络收藏

  3上位机软件的功能

本文引用地址:http://www.eepw.com.cn/article/277032.htm

  由于本系统的硬件部分实现了UDP/IP协议栈的内容,上位机软件在开发时有了较多可利用的系统调用,主要是Socket(套接字)原语的使用。相对于硬件开发来说,软件开发方便实现一些复杂的功能和计算,所以在系统构想之初就刻意将一些较难实现的部分交由上位机软件来处理,主要是图像帧间隔的识别和重传包的统计。

  关于数据包重传,硬件设备在传送各个通道的图像时,只选取一个合适的点开始采集图像,而不负责在数据包中添加图像帧的开始和结束等信息,因为这样不仅偏离了多通道图像和数据兼容的初衷,而且给程序的实现增加了困难,尤其是采集的数据要进出 SDRAM缓存,如果在这些纯数据中添加额外的标志数据,可能会打乱整个缓存区的布局。所以上位机只能根据接收的数据量来判断各个图像帧之间的间隔,然后无论显示或存储,都以帧为单位进行。

  4系统设计注意事项

  4.1 ARP包的响应与抑制

  上位机在向设备发送UDP数据包之前,可能会先发送一个ARP包,请求设备的MAC地址。所以在程序中要能响应该数据包,并发送ARP回复,否则设备与上位机将不能通信。得到设备的MAC地址后,上位机会暂时将其保存,建立一个ARP表项;一段时间后,ARP表老化,会再次向设备发送ARP请求。

  为了能正确响应ARP请求和回复,必须要清楚ARP数据包的格式。如图5所示,如果以太网帧“帧类型”区域的值为0x0806,则表示该帧后面的数据填充为一个ARP包。至于是ARP请求还是ARP回复,需要根据ARP首部的操作码来辨别:操作码为0x0001,则是ARP请求包;操作码为0x0002,则是ARP回复包。ARP请求包填入一个广播帧并发向网络中的所有主机,所以其以太网目的地址为广播帧地址0xffffffffffff,并且由于它的目标是请求目的主机的MAC地址,故图中“接收方MAC地址”区域没有确切值,可为任意6 Byte的填充;ARP回复包已经得到了所需的MAC地址,但是要注意,此时的发送方和接收方已经对调,相应区域的填写也应适当改变。

  

 

  图4 用户数据打包/解包示意图

  以太网协议规定的最短帧长为64Byte,这就要求其数据填充至少为46 Byte,如图4所示,而图5中的ARP字段共有28 Byte,所以无论是ARP请求还是回复,均应有18 Byte的填充数据。有些PC机会发送其他设备的ARP请求,即使此时只有一根直连线将设备与上位机相连。这时设备是不能响应该请求的,应当在MAC层和IP层之间就将这样的请求屏蔽,防止干扰正常的数据包传输。

  

 

  图5 ARP包格式

  4.2 Jumbo帧的利弊

  以太网标准规定的最大帧长度为1 518 Byte,这包括IP层和UDP层添加的首部,一般发送的数据包也都应该限制在这一范围内。但千兆以太网有一种厂商标准的超长帧格式,目前还没有获得IEEE标准委员会的认可,它规定的帧格式与普通以太网帧相同,只是其数据填充区域可以突破原有限制,整个帧长度为9 000~64 000 Byte不等,即Jumbo巨型帧。

  在本系统中采用Jumbo帧的好处:(1)可以适当提高网络带宽的利用率。这主要靠节省各层首部的添加得到。(2)减少操作系统因频繁响应网络设备的中断而带来的CPU资源的过多占用。这可以说是采用Jumbo帧的主要原因,因为要处理千兆以太网较高的数据率,无论上位机软件如何优化,CPU的占用仍然很高,这时如果能减少其他地方的CPU开销,将大幅增加软件的处理能力。

  但Jumbo帧在使用时也有一些不利的地方。首先,目前很多PC机的网络适配器不支持Jumbo帧的传输,虽然Altera的以太网控制器IP核支持,但这不足以使两个设备进行通信;其次,Jumbo帧会长时间占用网络通道,这会影响那些对数据延迟敏感的设备和应用;第三,Jumbo帧的丢包意味着严重的灾难,一帧相当于十多个正常帧,这会将处理能力弱的PC机迅速引入重传的陷阱,丢包越来越多,直到网络带宽被全部占用,导致上位机软件崩溃。所以在考虑支持Jumbo帧之前,应先充分权衡这些优势与不足。

  5结束语

  系统硬件设备与上位机软件配合工作,可以较好地完成双路彩色PAL制数据流的采集任务。通过实际测试与分析,采用Jumbo帧进行传输,有效地减少了软件运行过程中的系统中断数,从而最大限度地降低了CPU的占用。利用搭建起来的千兆以太网运行环境,可以扩展类似的高速数据传输应用。

fpga相关文章:fpga是什么



上一页 1 2 下一页

关键词: FPGA DDR2

评论


相关推荐

技术专区

关闭