Coaxpress

2024-01-08 04:30
文章标签 coaxpress

本文主要是介绍Coaxpress,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

加入头条有段时间了,一直想写点什么,这次就从本人的工作开始,介绍一些和FPGA 相关的应用开发案例。第一期介绍一下fpga 实现coaxpress 协议开发。

Coaxpress 协议介绍

介绍Coaxpress 协议之前,先提下JIIA ,日本工业成像协会 (JIIA) 是一家总部设在日本的组织旨在领导工业成像技术创新。JIIA为与工业成像相关的组织推广全球社区,从而促进全球工业成像标准和产品的开发。由于日本工业成像公司占据广泛的市场,JIIA获得了独特的优势,成为了工业成像技术的领先开发商。这些类别包括工业相机、输入设备、图像处理器、图像处理软件、光学仪器、照明设备以及测量和分析机器。

CoaXPress (CXP) 是全球领先的专业和工业成像应用中的高速成像标准,应用包括机器视觉、医学成像、生命科学、广播和国防。

CoaXPress是一个将摄像头连接到桢抓板的接口。它结合了同轴电缆的简易性和最先进的高速串行数据技术,这实现了每根电缆高达12.5 Gbps数据速率,以及同一电缆中的设备控制和电源。CoaXPress是一种点对点可扩展接口。相机和帧抓板之间的物理介质是75 Ω同轴电缆。

系统介绍

1.Coaxpress 系统大概如下:

这里有几个概念,Device/Host/link

Device是相机端,面帧/线阵相机,产生图像数据,通过connection 送到host 端,同时受host 控制

Host 是主控端,接受device的mulit/single link data,,数据率可以达到12.5Gbps,恢复图像数据,另外通过link 下发控制trigger 信号,以及访问device 内部的bootstrap & manufacturer-specific register space ,数据率40.3Mbps/20.83Mbps,再就是通过connection 为device 提供max13W的供电能力。

link 是有单个或者多个connection 组成的数据传输链路,其中每个device 必须有一个master connection,另外的extension connection option。connection 是由两端的接插件BNC/Micro-BNC/DIN1.0/2.3和75Ω的电缆组成,最高速度下可以传输40m

 

coaxpress 链接示意图

2.cxp 里面的high speed 数据一般是由device 这边发起,low speed 数据 由host 这边发起。device 主控芯片FPGA transceiver 输出高速信号经过一个均衡器输出到BNC/micro-BNC,同时这个均衡器输出一个LF_OUT信号给FPGA ,这个LF_OUT 信号就是low speed 信号。这个均衡器一般用的是microchip 的EQCO系列芯片。相应的在host 这边也有一个均衡器,输出高速信号,同时也会接受LF_IN。

 

coaxpress 数据流

3.协议用一组K 码来做识别和对齐,无论高速还是低速信号,如下图。数据传输前都是需要经过8B/10B 编码,以word 为单位组织。

 

K code

4.packet 类型主要有以下几种:

 

coaxpress packet type

  • I/O : host 发起的trigger以及device 返回的ack
  • stream : 图像数据
  • control:host 发起的读写控制命令,Test /heartbeat

我们以一个stream packet 大概介绍下其组成结构,如下图:

 

stream data packet

首先是发送K27.7x4 标识packet 起始,0x01 是表示这是stream data packet. stream ID 是当前传输的stream ID,在multi-streams 中来区别不同的数据。packet Tag 是一个包的循环计数。DsizeP是stream data word length ,后面紧跟着就是数据。同时需要对数据做crc ,附在数据后。最后发K29.7 x4 表示packet 结束。

上面对Coaxpress 数据传输部分做了大概介绍。还有很多细节,比如 热插拔/识别,上电速度协商,支持GenICam等。

协议FPGA实现

下面截几张图show 下自己写的coaxpress 调试:

 

device & host

image header packer

 

上图是device cxp device 发出来的数据以及K_ind,可以看到,没有数据时,发送的BC3C3CB5 idle code 后面7C 是stream marker 01是image header ,这是在一帧开始时发出来的。

 

image line marker

这是image 一行数据发送的过程,在行前面有个line marker

 

host 解析恢复出来的图像数据

上图是host cxp 协议根据transceiver 过来的数据解析,恢复V/H data 信号。

这篇关于Coaxpress的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/582313

相关文章

CoaXPress协议入门(1)---- CXP测试套件

CoaXPress协议入门(1)---- CXP测试套件 CXP协议速率分析CXP测试套件 CXP协议速率分析 CoaXPress (简称CXP)是指一种采用同轴线缆进行互联的相机数据传输标准,主要用于替代之前的Camera Link协议,常见于科学相机、工业相机、医学图像、航空防务等场景。CXP是一个非对称的高速点对点串行传输协议,主要用于传输视频和静态图像,线缆多使用单条或多

CoaXPress 简介

CoaXPress 背景 CoaXPress (简称CXP)是指一种采用同轴线缆进行互联的相机数据传输标准,主要用于替代之前的cameralink协议,常见于科学相机、工业相机、医学图像、航空防务等场景。之前这些场景都是使用cameralink接口的相机,cameralink 由于线缆的形式、传输速度等原因,已经不再适用于不断增长的数据带宽需求。 CXP是一个非对称的高速点对点串行传输协议,主

CoaXPress 2.0 FPGA 4 Channel Host and Device FMC Card User Manual

Hello-FPGA CoaXPress 2.0 FMC Card User Manual 4 1 CoaXPress 简介 4 2 CoaXPress 4R FMC 5 2.1 硬件特性 5 2.2 框图说明 7 2.3 电源监测 8 3 CoaXPress 4T FMC 9 3.1 硬件特性 9 3.2 框图说明 10 4 FMC PIN定义 11 Annex A:参

FPGA coaxpress 2.0 ip

CoaXPress是一种高速串行接口技术,可以实现高带宽、长距离传输和多通道传输。CoaXPress图像采集卡通常具有多个CoaXPress接口,可以同时连接多个相机,实现多通道的图像采集。它们通常具有高速数据传输能力,可以实时采集和传输高分辨率、高帧率的图像数据。CoaXPress图像采集卡通常与图像处理软件配合使用,用于实时显示、存储和处理采集到的图像数据. CXP是一个非对称的高速点对点串行