Linux camera驱动开发(特殊的cpu+fpga芯片)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

在soc前面添加一个fpga开发板,专门用来对接sensor。然后再用fpga对接soc,这不是一个新鲜的做法。只是现在有一种soc,它内部本身就集成了fpga,这样fpga和soc里的cpu本身就可以直接通过总线直接沟通,非常方便。

1、集成fpga+cpu的优势

**fpga和cpu集成到一个die里面,最主要的优势,就是总线通信速度快、方便。**如果没有总线的集成,那么fpga和soc大体上只能通过类似mipi csi2 rx/tx这样的接口进行通信。如果是简单的应用,fpga拿到图像之后就可以直接送给lcd/hdmi,非常方便,soc的cpu部分做一些简单的配置即可。

复制代码
https://ax7010-20231-v101.readthedocs.io/zh-cn/latest/7010_S2_RSTdocument_CN/22_OV5640%E6%91%84%E5%83%8F%E5%A4%B4%E7%9A%84%E9%87%87%E9%9B%86%E6%98%BE%E7%A4%BA%E4%B8%80_CN.html

2、集成fpga+cpu的缺点

相比较分离式的fpga、soc,如果两颗die集成在一起,本身的soc的选项要少不少。因为假设是分离式的模式,fpga可以任意选择,soc也可以任意选择。但如果是集成在一起,不管是国产品牌,还是外资品牌,选择的面要少很多。

另外,从价格方面来说,一般集成fpga+soc的芯片要贵不少,尤其是fpga资源比较多的soc,这方面表现得特别明显。此外,为了尽量减少芯片面积,提高性价比,很多soc会阉割掉很多soc功能,比如说isp、编码、解码、npu,这样一来处理就不是很方便。

3、优先dvp接口处理

一开始用fpga处理sensor的时候,不妨用dvp的形式进行处理。dvp相比较mipi,物理意义比较明确,配置相对简单不少。等到可以独立设置dvp接口的时候,再转到mipi,也是可以的。

4、没有isp如何处理

前面讨论到,很多集成fpga的soc内部是没有isp的,这种情况下就可以用这两种方法处理。一种是,前期选择sensor的时候,就尽量选择带isp的sensor,这样后期数据处理的时候,就不再需要isp追加处理了。另外一种,就是可以考虑用来处理一些不需要isp处理的场合,比如带全局快门的工业相机,这样哪怕没有isp,也不是很大的缺点。

5、多摄像头处理

fpga相比较cpu,除了延迟低,速度快之外,另外一个优点,就是它可以支持多摄像头处理,数量上没有限制。在工业场景里面用的比较多的双目摄像头,就是其中很明显的一个代表。本身这类集成fpga的芯片,cpu性能就不是很高。这个时候就可以通过对接多个sensor,直接网络送出去的形式来处理。因为这样一来,不仅速度快,还可以有效解决cpu效率低的问题,把芯片当成是一个放大版的多sensor处理器即可。

复制代码
https://ax7010-20231-v101.readthedocs.io/zh-cn/latest/7010_S2_RSTdocument_CN/23_OV5640%E6%91%84%E5%83%8F%E5%A4%B4%E7%9A%84%E9%87%87%E9%9B%86%E6%98%BE%E7%A4%BA%E4%BA%8C_CN.html

6、自定义算法加速

和分离式fpga一样,集成式的架构也可以做一些算法的加速。**由于本身就集成了cpu,因此一旦发现效率不ok,就可以把算法快速迁移到fpga侧来完成,重新搭建一下框图即可。**整个过程要比分离式的结构,容易、便捷很多。对于图像这类应用,能迁移到fpga,就尽量用fpga处理,cpu本身对算法做一些补充即可,这是我们喜欢用fpga处理图像的根本原因。

相关推荐
GateWorld5 分钟前
LCD显示技术完全指南:原理·制造·驱动·FPGA实现之点屏二
fpga开发·lcd显示·fpga点亮屏幕·minilvds
汽车仪器仪表相关领域17 小时前
南华 NHA-604/605 汽车排放气体测试仪:国六b全适配高精度便携检测设备
大数据·人工智能·功能测试·深度学习·安全·fpga开发·压力测试
枳实-叶21 小时前
【Linux驱动开发】第18天:I2C驱动深度解析
linux·运维·驱动开发
小此方21 小时前
Re:Linux系统篇(二十五)进程篇·十:深度硬核!Linux 进程等待,从 task_struct 源码到位图状态解构
linux·运维·驱动开发
人月神话-Lee1 天前
【图像处理】vImage/Accelerate——SIMD 让 CPU 也能飞
图像处理·深度学习·ios·cnn·ai编程·swift
sali-tec1 天前
C# 基于OpenCv的视觉工作流-章80-长短脚
图像处理·人工智能·opencv·算法·计算机视觉
一口一口吃成大V1 天前
使用PLL的lock信号作为复位信号
fpga开发
hexiaoyan8271 天前
图像分析与测试卡学习资料第216篇:基于FMC接口的1路full Camera Link输入 1路HDMI(DVI)输出子卡
fpga开发·图像分析与测试·数字成像
ghie90901 天前
基于图像处理的铁路裂缝检测系统
图像处理·人工智能
Gentle5861 天前
SENT&SPC协议中的CRC4校验
驱动开发