一种GIGEvision数据传输方法、采集卡及系统技术方案

技术编号:31995479 阅读:69 留言:0更新日期:2022-01-22 18:07
本申请公开一种GIGE vision数据传输方法、采集卡及系统,该方法包括:基于主机的下载命令接收来自于从设备的GIGE vision帧数据并拆包以获取数据包;对数据包进行拆分解析分流获得控制流和数据流;对分流后的数据流重组并缓存;根据分流后的控制流与主机通信并在主机处于待机状态时启动下载以将缓存的数据流传输至主机。用于克服相关技术中主机CPU和内存占用率,提高主机的处理性能。提高主机的处理性能。提高主机的处理性能。

【技术实现步骤摘要】
一种GIGE vision数据传输方法、采集卡及系统


[0001]本专利技术涉及通信
,具体是一种GIGE vision数据传输方法、采集卡及系统。

技术介绍

[0002]GIGE Vision是由AIA制定的通信协议,用来实现在机器视觉领域利用千兆以太网接口进行图像的高速传输。该标准是基于UDP协议,与普通网络数据包不同之处在于应用层协议,应用层协议采用GVCP(GIGE Vision控制协议)和GVSP(GIGE Vision流传输协议),分别用来对相机进行配置和数据流的传输。图像采集系统软件的实现就是基于GVCP\GVSP这两种协议。
[0003]如图1所示,相关技术中GIGE vision协议通信的方式通常是主端通过PC主机来封装或解析协议,通过交换设备获取从端设备即GIGE Vision设备上传的数据,该方式对于从端设备虽然具有硬件成本低的优势,但是对于主机而言CPU使用率很大,导致响应较慢、效率较低,在工业应用领域并不具备优势,甚至阻碍了生产率的提高。

技术实现思路

[0004]本申请提供一种GIGE vision数据传输方法、采集卡及数据传输系统,用于克服现有技术中主机CPU和内存占用率,提高主机的处理性能。
[0005]为实现上述目的,一方面本申请提供一种基于GIGE vision数据传输方法,包括:基于主机的下载命令接收来自于从设备的GIGE vision帧数据并对头部类型进行拆包以获取数据包;对数据包进行拆分解析后分流获得控制流和数据流;对分流后的数据流重组并缓存;根据分流后的控制流与主机通信并在主机处于待机状态时启动下载以将缓存的数据流传输至主机。
[0006]通过采用上述的技术方案,可在FPGA、DSP等芯片上运行,在基于主机的下载命令下载图像时,FPGA芯片采集来自于交换设备或从设备传输的GIGE vision帧数据并对其头部类型进行拆包以获取数据包,再对数据包进行拆分,拆分后的数据分别解析获得控制流和数据流;其中对数据流重组后缓存,同时FPGA芯片的处理器基于控制流的控制指令与主机通信并在主机处于待机状态时启动下载,控制FPGA芯片内部的模块动作将缓存的数据流传输至主机;由于GIGE vision协议帧数据的拆包解析以及数据流的重组缓存均在主机外部完成,从而降低了主机的CPU和内存的占用率,提升了主机的响应速度和处理性能,在工业像机应用领域具备明显优势。尤其是利用FPGA芯片可通过程序灵活编辑其内部的逻辑电路以及多个并行线程对工业相机的图像数据流实现高效快速地处理、拼接和重组。
[0007]优选地,所述根据分流后的控制流与主机通信并在主机处于待机状态时启动下载将缓存的数据流传输至主机的步骤包括:
将缓存的数据流解压获得图像数据流;经多通道并行对图像数据流进行拼接获得还原的图像数据;搬运还原的图像数据经PCIE总线发送至主机。
[0008]通过采用上述的技术方案,数据流的解压和解码均在主机外部完成,进一步降低了主机的CPU和内存的占用率,提升主机的响应速度和处理性能。
[0009]优选地,所述经多通道并行对图像数据流进行拼接获得还原的图像数据的步骤之前还包括:在解压的图像数据缺失时,通知从设备将缺失的数据包重传,直到原始图像数据收集完整后再进行插值处理。
[0010]通过采用上述的技术方案,能过获得完整且清晰度更高的还原图像,而降低个别采集数据局部残缺对还原图像带来的不利影响。
[0011]优选地,在所述将缓存的数据流解压获得图像数据的步骤之前包括:在接收到确认解压的控制指令时,对缓存的数据流进行解压。
[0012]通过采用上述的技术方案,主机在下载图像数据时,可通过输入解压操控指令,FPGA芯片基于此发出控制指令,在下载数据时,将缓存的数据流进行解压和解码,下载获得的是还原的图像数据;若主机在下载图像数据时没有输入解压操控,则下载获得的是缓存的数据流,在主机端进行数据流的解压和解码;本方案能够基于用户的操作选择在主机外部进行解压和解码,或选择在主机内部进行解压和解码,可进一步降低主机CPU和内存的占用率,提高主机的相应速度,并且灵活性较高。
[0013]优选地,还包括:基于主机的控制指令发送上传请求报文;接收从设备对上传请求报文的应答;接收来自于主机的图像数据并对图像数据包进行封装后上传。
[0014]通过采用上述的技术方案,还可以借助FPGA芯片在主机外部实现将主机存储的图像数据可上传至交换设备,经交换设备传输至指定的GIGE vision设备或直接上传至GIGE vision设备,而上述上传数据过程中的GIGE vision协议的封包以及数据转移均在主机外部在FPGA芯片内完成,从而降低了主机的CPU和内存的占用率,提升了主机的响应速度和处理性能,在工业像机应用领域具备明显优势。
[0015]优选地,在所述接收来自于主机的图像数据包并对图像数据包进行封装后上传的步骤还包括:将图像数据进行GIGE vision头部封装后传输至IP层;在IP层对获得的数据进行IP头部封装后传输至链路层;在链路层对获得的数据进行MAC头部封装并传输至物理层;在物理层对获得的数据进行标准化处理获得GIGE vision帧数据并上传。
[0016]通过采用上述的技术方案,上述封装操作仅需要主机与FPGA芯片处理单元交互通信控制指令即可,均在FPGA芯片内部完成,而无需占用主机的CPU和内存,提升了主机的响应速度和处理性能。
[0017]优选地,在所述将图像数据进行GIGE vision头部封装后传输至IP层的步骤之前还包括:
转移主机内存输出的图像数据,并将转移的图像数据通过JPEG2000、LZ777或LZSS算法进行无损压缩。
[0018]通过采用上述的技术方案,将需要发送的图像数据从主机输出端口转移至FPGA芯片输入端口,然后在将转移的图像数据通过上述算法进行无损压缩,能够大大降低图像数据的占用空间,并提升上传速度。
[0019]优选地,所述接收帧数据并进行拆包以获取数据包的步骤包括:提取帧数据的MAC头部;基于MAC头部提取帧数据的IP头部;基于MACIP提取帧数据的GIGE vision头部;基于GIGE vision头部获得数据包。
[0020]通过采用上述的技术方案,上述拆包的过程均可通过FPGA芯片完成,主机只需要基于DHCP协议经FPGA芯片发送下载请求的广播指令,从设备响应指令后基于指令的要求上传GIGE vision帧数据,FPGA芯片接收GIGE vision帧数据并对其拆包获得数据包,然后对数据包拆分解析分流,最后在基于分流后获得的控制流与主机交互按照控制流的指令完成数据流的处理重组和缓存并实现向主机传输,完成数据下载。相对于相关技术将上述操作移植到主机外通过外接的FPGA芯片能完成,能大大降低主机的硬件性能配置。
[0021]为实现上述目的,另一方面本申请还提供一种基于GIGE vision采集卡,包括处理器、第一存储器和第二存储器,所述第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种GIGE vision数据传输方法,其特征在于,包括:基于主机的下载命令接收来自于从设备的GIGE vision帧数据并拆包以获取数据包;对数据包进行拆分解析分流获得控制流和数据流;对分流后的数据流重组并缓存;根据分流后的控制流与主机通信并在主机处于待机状态时启动下载以将缓存的数据流传输至主机。2.根据权利要求1所述的GIGE vision数据传输方法,其特征在于,所述根据分流后的控制流与主机通信并在主机处于待机状态时启动下载以将缓存的数据流传输至主机的步骤包括:将缓存的数据流解压获得图像数据流;经多通道并行对图像数据流进行拼接获得还原的图像数据;搬运还原的图像数据经PCIE总线发送至主机。3.根据权利要求2所述的GIGE vision数据传输方法,其特征在于,所述经多通道并行对图像数据流进行拼接获得还原的图像数据的步骤之前还包括:在解压的图像数据丢失时,通知从设备将缺失的数据包重传,直到原始图像数据收集完整后再进行插值处理。4.根据权利要求2所述的GIGE vision数据传输方法,其特征在于,在所述将缓存的数据流解压获得图像数据的步骤之前包括:在接收到确认解压的控制指令时,对缓存的数据流进行解压。5.根据权利要求1~4任一项所述的GIGE vision数据传输方法,其特征在于,还包括:基于主机的控制指令发送上传请求报文;接收从设备对上传请求报文的应答;接收来自于主机的图像数据并对图像数据包进行封装后上传。6.根据权利要求5所述的GIGE vision数据传输方法,其特征在于,接收来自于主机的图像数据包并对图像数据包进行封装后上传的步骤包括:将图像数据进行GIGE vision头部封装后传输至IP层;在IP层对获得的数据进行IP头部封装后传输至链路层;在链...

【专利技术属性】
技术研发人员:聂忠强喻红超
申请(专利权)人:深圳市度申科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1