首页 > 其他分享 >CoaXpress downlink数据解析方法

CoaXpress downlink数据解析方法

时间:2023-06-12 23:23:46浏览次数:43  
标签:stream CoaXpress data downlink packet 传输 解析 数据

什么是downlink数据

downlink指的是相机传输到host采集卡的高速链路,其中包含了如下类型的数据:

1、Stream Data

2、Trigger Ack, Trigger;

3、Ack (reply data);

4、Event, Heartbeat

和uplink的低速数据一样,都使用packet的方式进行传输,以packet 作为最小单位,其中包含down link的所有数据类型indication

首先,packet会标识当前数据是否传输的是stream data数据,其次需要看stream data的传输方式。

下图标识了stream 图像数据的传输,可以看出,图像数据被截断成了若干个packet 进行传输,具体截断的方式由device 决定

这里2个地方要注意

1、stream ID指示当前packet数据应该缓存到哪一个buffer中去,实际应用中会很少见到,比如一个相机里面有2个传感器,每个传感器传输的数据占用1个stream id,用以区分数据来源;

2、CRC校验时,stream data中的K码 K28.3会用D28.3替代进行CRC校验,具体校验方法,参考我的另外一篇博客 https://www.cnblogs.com/xingce/p/17422472.html

stream data格式

通常的图像传输如下信息

1、header 图像尺寸,ROI区域,像素格式,扫描方式等信息;

2、line 图像数据;

packet中的stream 数据会以K28.3开头,然后加上传输类型信息

以area扫描图像的header为例,格式如下,只列出了部分信息:

根据上述信息,就可以知道当前图像的详细信息;

如果是多个LANE,如何组织数据呢?

永远以第一条LANE 为起点,按照如下方式组织数据

这样HOST就可以正确的解析出各种数据了。

由此可见,downlink 接口的数据首先要根据packet类型做区分,然后不同类型的数据送到不同的逻辑完成进一步处理,比如control的ack回应信息,需要送给control channel完成处理,stream 数据则送给stream data channel完成处理,然后输出图像的信息和dma数据给到用户逻辑;

标签:stream,CoaXpress,data,downlink,packet,传输,解析,数据
From: https://www.cnblogs.com/xingce/p/17476333.html

相关文章

  • Vert.x Core解析
    希望通过本文的解析,让读者了解Vertx的关键部分的实现原理。对诸如如下问题有一个具象的认识。Vertx实例的作用?一个应用是否只对应一个Vertx实例?Verticle是一个怎样的存在?本地模式下消息是如何在EventBus上传输和响应的?EventBus和EventLoop是如何关联起来的?概述Vert.x是一个事件驱......
  • redis之hash解析
    Redis底层数据结构之hashhash是日常开发过程中使用Redis的一个数据结构,其底层实现方式有两种,如下所示。一种是zipList,这种是当hash结构的V值较小的时候使用的编码方式。这个已经在上一篇文章中介绍过了。这篇文章主要讲解一下另外一种实现方式,字典dict,当hash结构的V值较大时采用......
  • 开发一次、运行多端:Weex与小程序容器的卓越优势解析
    Weex是一个跨平台的移动应用开发框架,由阿里巴巴旗下的阿里巴巴前端团队开发。它允许开发者使用单一的代码库来构建同时适用于iOS和Android平台的移动应用。Weex使用基于Vue.js的声明式语法来描述应用程序的界面,并通过JavaScript运行时引擎在移动设备上解析和渲染界面。 Weex......
  • 腾讯DNS的缺陷?(人为?)无法解析
    疼讯dns无法解析xiaohongshu.com,小红书(电脑网页现在可以看小红书的)[换openDNS后立即正常]讽刺的是小红书用的服务器还是疼讯云的!!!解析服务如此强大,是否因为过滤审核太多次而误杀了正常网站?   ......
  • 进程在用户态和内核态的区别[独家解析]
     先看基础常识:基础内核在创建进程的时候,会为进程创建相应的堆栈。   每个进程会有两个栈,一个用户栈,存在于用户空间,一个内核栈,存在于内核空间。 当进程在用户空间运行时,CPU寄存器里面的内容是用户堆栈地址,使用用户栈  当进程在内核空间时,CPU寄存器里面的内容是内核栈......
  • 解析汽车APP面临的18种攻击风险
    近日,顶象发布《车企App安全研究白皮书》。该白皮书总结了目前汽车公司App所面临的主要技术威胁和合规风险,详细分析了这些风险产生的原因,并提供了相应的安全解决方案。  现在,自有App已成为各汽车品牌的标配。这些汽车厂商的App不仅可以帮助用户实现远程开启空调、门锁、启动......
  • [转]POI 解析excel报错 java.lang.NoClassDefFoundError: org/apache/poi/ss/usermode
    前几天做了一个excel上传导入功能,为了通用想同步支持xls和xlsx格式。代码编写期并没有报错,所需要的类也都有。可是应用启动完测式功能的时候报了这么一个错Causedby:java.lang.NoClassDefFoundError:org/apache/poi/ss/usermodel/Date1904Support这是为什么呢?我第一感觉是jar......
  • PHP json_decode 关键词不被解析的处理方法
    如果JSON数据中包含了PHP的关键字,如true、false或者null,则json_decode()函数将无法成功解析该数据。因此可以使用单独判断的方式$v=$v===true?'true':$v;$v=$v===false?'false':$v;$v=$v===null?'null':$v;sha256demo<......
  • 消费者组重平衡全流程及状态机解析
    一、重平衡流程介绍   消费者组重平衡的作用就是让消费者组达成一致,完成消费者与哪些主题分区达成一致。重平衡需要借助Kafkabroker端的协调者组件,在coordinator的帮助下完成整个消费者分组的分区重分配。触发与通知重平衡触发的3个条件消费者组的成员数量变化消......
  • 业财一体化:供应链业务到财务核算的全貌解析
    编辑导语:在供应链的范畴里,从供应链的进销存业务开始,到财务的核算结束,才算是一个完整的物流、信息流和资金流。本文为大家详细介绍了供应链业务到财务核算的全貌,一起看看吧!因为财务的内容比较多,本篇文章,我们先介绍供应链的财务处理全貌,后面找机会再来展开介绍应收、应付和存货相关内......