CoaXPress 简介
CoaXPress 背景
CoaXPress (简称CXP)是指一种采用同轴线缆进行互联的相机数据传输标准,主要用于替代之前的cameralink协议,常见于科学相机、工业相机、医学图像、航空防务等场景。之前这些场景都是使用cameralink接口的相机,cameralink 由于线缆的形式、传输速度等原因,已经不再适用于不断增长的数据带宽需求。
CXP是一个非对称的高速点对点串行传输协议,主要用于传输视频和静态图像,线缆多使用单条或多条同轴电缆。目前2.0标准的最高速度为单条lane 12.5Gbps,单条lane 上除了传输图像数据之外,还可以传输低速控制信号(42Mbps,用于访问相机的寄存器配置)、也可以利用该线缆对相机进行供电,这个能力称为 “Power-over-Coax”,单条线缆最长可达100m。
- 单条同轴线缆最高12.5Gbps的线速率,可以使用单条或者多条线缆,比如4条线缆可以最高提供50Gbps的数据速率.
- 较长的线缆长度,比如3.125 Gbps 速率下线长可以到100m,12.5Gbps速率下可以到35m,这个线缆的使用是CXP的一大特色.
- 数据传输具备实时和低延迟的特性,且延迟等是固定的.
- 精准实时的触发特性,支持通过同轴线缆发送触发,无需额外的线缆.
- 可以获得灵活可靠的性能,通过使用标准的同轴线缆,比如RG59 和 RG6规格,推荐使用RG6
- 易于集成的特性,图像、控制通讯、电源可以使用同一条线缆.
- 线缆价格便宜Cost-effective cabling solutions
- 支持热插拔.
- 协议没有授权费用.
与其它图像主流接口的对比
下图是几种流行的图像传输协议标准对比,其中GigE USB3 SDI主要用于安防、手机通讯等领域,CXP、Camera link主要用于工业、科学相机,CLHS和CXP应用场景类似,线缆使用光纤传输,但是不支持线缆供电;

与PCIe接口的对比
笔者一开始接触CXP这个标准的时候,是有点抵触的,这么多的串行协议标准,为啥不直接用PCIe或者RapidIO或者其它图像协议呢。如果使用PCIe接口,相机就是一个标准的PCIe endpoint设备,容易部署,就成了标准PC计算机系统的一部分,连采集卡都不用了,只需要一个转接卡就搞定,简直YYDS啊!实际上也的确有厂商用PCIe作为相机的接口 https://www.ximea.com/ ,我们随便截图一款设备来看一下:

那么这款相机如何连接到计算机呢?
需要一条线缆、一个PCIe适配器即可,这个PCIe适配器的成本应该非常低,如下图所示,线缆可以选用同轴线缆或者光纤,PCIe协议相对于CXP而言,传输距离、实时性受到到了限制,但是如果选用光纤,PCIe接口可以增加传输距离到最高50m。PCIe接口的特点就是便宜、兼容性好,CXP的特点是实时性好、线缆简单、为图像传输专门定制,已经被各个相机厂商接受并支持。

概述
CXP是一种点对点可扩展接口, 设备和主机之间的物理介质为75Ω 同轴电缆。每一个CXP接口都包含1个MASTER连接和若干可选的扩展SLAVE连接,每一个连接都需要1条同轴线缆,通常设备会对这些连接进行编号,MASTER固定为0,SLAVE扩展接口依次递增。

每一个connection都包含如下功能,串行数据使用8b/10b编码
- 高速串行数据(通常为Device到 Host downconnection), 最高 12.5 Gbps.
- 低速串行数据(通常为Host 到Device upconnection), 最高 41.6˙ Mbps .
- 供电功能Power (Host 到 Device), 最高13W.

CXP链接速度
支持从1.25Gbps到12.5Gbps,这个速度刚好是Xilinx FPGA高速串行收发器可以覆盖的范围

数据传输优先级
控制信号和图像信号共享一个cable连接的带宽,并通过优先级决定传输次序,其中为了保证触发的高实时性,将触发信号列为最高优先级,触发回应列为次优先级,其它类型都在最低优先级。

触发精度
触发信号拥有最高传输优先级,对于20.83Mbps的控制信号链接速度而言,触发信号从HOST到达DEVICE会有固定3.4us的延迟,外加± 4 ns 的精度,如果是 41.6Mbps ,则延迟为1.7us,外加± 2ns的精度。
如下图所示,一个触发的package要占据7个字符(对于20.83Mbps(1个周期48 ns)速率来说,1个字符对应10bit,共480ns,那么7个字符共计7*480 = 3360ns = 3.4us),为了准确的DEVICE端恢复触发信号的位置,在发射端和接收端需要内置一个480/240 = 2 ns精度的计数器,用该计数器的值恢复出触发信号的准确位置,该计数器值通过触发包的最后3个字符传递。

Power Over Cable
每条线缆可以最大提供13W的供电,电压为24V。13W对于大多数单lane的设备而言是足够的,如果有4条lane则可以提供最大52W的功率,如果相机需要更大功耗,可以选择外供电。HOST应对配备DEVICE 识别功能并检察是否有短路情形,避免设备损坏。
具体实现时,在线缆上提供一个24V DC 电压即可,具体要求和实现会在后续博文中说明
CoaXPress 简介的更多相关文章
- 基于PXIe接口的CoaXpress高速相机图像采集、回放
PXIe简介 PCI eXtensions for Instrumentation or PXI is a computer-based hardware and software platform ...
- CoaXPress 时间戳 Time Stamping
背景 在CXP2.0之前,CXP没有定义Time Stamping时间戳的概念,但是用户对Time Stamping是有实际需求的,比如我们要对比多台设备拍摄同一个物体不同角度的照片,或者记录触发完成 ...
- CoaXPress 线缆和接插件的设计要求
本文的原理部分内容不仅适用于CoaXPress 协议,也同样适用于其它高速信号传输情形.在高速.低干扰信号传输时,线缆和接插件的选取是非常讲究的,我们在实际应用中经常会遇到线缆原因.阻抗匹配原因导致的 ...
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
随机推荐
- 【uniapp 开发】手绘签名组件
代码如下: <template> <view class="content"> <button type="primary" @t ...
- 使用element UI el-upload组件实现视频文件上传及上传进度显示方法总结
实现效果: 上传中: 上传完成: 代码: <el-form-item label="视频上传" prop="Video"> <!-- acti ...
- Wireshark-过滤器-数据包解析
目录 过滤器 数据包解析 参考 推荐阅读: https://www.cnblogs.com/zwtblog/tag/计算机网络/ 过滤器 显示过滤器 和 捕获过滤器,俩者使用非常类似. 在Wiresh ...
- 使用pyttsx3实现简单tts服务
操作系统:Windows 10_x64 python版本:Python 3.9.2_x64 pyttsx3版本: 2.90 pyttsx3是一个tts引擎包装器,可对接SAPI5.NSSS(NSS ...
- Python入门-程序结构扩展
deque双端队列 #双端队列,就是生产消费者模式,依赖collections模块 from collections import deque def main(): info = deque((&q ...
- JdGrid排序问题
JdGrid排序问题 js代码 function gridList() { var $gridList = $("#gridList"); $gridList.dataGrid({ ...
- LC-76
给你一个字符串 s .一个字符串 t .返回 s 中涵盖 t 所有字符的最小子串.如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" . 注意: 对于 t 中重复字符 ...
- typora简单使用手册
typora简单使用手册讲解`` 下载网站 网址:https://typoraio.cn/ 苹果电脑:https://typora.en.softonic.com/ 正版呢当然是收费 破解版自行百度 ...
- socket套接字模块及黏包现象
一.socket套接字模块 socket概念 socket层 理解socket Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模 ...
- git设置忽略提交文件
直接在idea进行操作 1.找到想要忽略提交的文件,点击右键,然后如下操作: 2.然后就会发现被忽略的文件名变成了灰色,在项目最下方会生成ignore文件夹 3.文件夹内可以看到我们忽略的文件 4.注 ...