Camera streaming Framework ---Hexagon

Introduction
Camera streaming是对相机数据实时处理。RAW域。
ISP 预处理或者处理非传统Bayer格式数据。
Camera streaming应用包含HVX流硬件和软件栈,HVX流硬件被集成到SOC上
软件栈受驱动和应用开发者控制和使用。

Camera streaming overview

HVX streaming module
HVX流模块是在ISP第一个模块像素接口和ISP接口中间。
在这里插入图片描述

它包括两部分:
数据移动部分,可编程寄存器接口
QDPS6,从QDSP6’s L2 cache传送/数据到memory.所以QDPS6能够访问改变计算这些像素数据.QDSP6指令。

HVX streaming data flow
在这里插入图片描述

在hvx流处理中,没有系统总线或者内存读写访问像素。从ISP接口中fetch模组像素然后保存到QDSP6的L2缓存中。
QDSP6 for IP time >trans and receiv to/from VFE.
QDSP6能够通过系统总线输出计算结果到系统内存,这个是完全不同数据路径。

HVX streaming数据格式
RGGB/BGGR/GRBG/GBRG/other Bayer-like pixel data format
8/10/12/14 Bits data
解压Bayer raw数据,设置每个像素或者数据为16bit.然后LSB拟合
14bit的高8位放在16bit的低8位
14bit的高10位放在16bit的低10位
14bit的高12位放在16bit的低12位
14bit的14位放在16bit的低14位

Padding/stripping支持
8个额外像素加入到行开始和结尾,加入的像素是0或者重复当前像素。
输出stripping也支持,偏移8个像素。

帧格式
有效和无效像素。通知信号SOF/EOF/SOL/EOL
行开始,行结束
帧开始,帧结束

EOL和紧跟着的SOL中间的像素
EOF和紧跟着的SOF中间的行
这些像素和行都被称为无效像素。
流硬件去除无效像素仅保存有效像素到L2 Cache中,被DSP处理
流硬件输出时也会使用。
ARM/DSP交互,HVX和ISP同步,QDSP6库和OEM plugin集成。
在这里插入图片描述

蓝色块由用户实现的库。OEM/QDSP6库时独立的。
OEM库运行在Android用户空间驱动,这个库通过HVX控制流像素的操作。包括sensor配置
线程控制,算法系数和参数实时更新。开发者能够使用qcom提供的API接口实现
QDSP6库是核心库,开发者自己优化的算法.

OEM库API
API函数在如下目录由定义:
_hvx_lib_function_table_t
在/vendor/qcom/proprietary/mm-camerasdk/hvx
主要是配置模式,大小,重要参数,发送每一帧数据给QDSP6.
QDPS6库 API
主要处理像素流,在库中用户需要定义两个接口:configuration/process
configuration接口与camera streaming framework框架交互,配置参数: 输入输出buffer size/padding,在流开始前,一次性调用。
Process接口包括算法细节部分,计算密集型。一旦算法被环下,QDSP6库无限循环,等待像素处理。所以start/stop/update命令通过通信buffer将被发送.
QDS6的处理遵守某种时序与ISP timing同步。为了实现同步,框架提供API供使用.
实例
\3.x\examples\camera_streaming\hvx_add_constant

通信和buffers
除了QDSP6输出一些metadata到系统内存,没有使用系统内存。所有操作都是在QDSP6 L2 Cache中完成。锁定256Kbyte L2 Cache.一旦锁定,这部分Cache就不对其他QDSP6的处理可见。
L2 Cache主要分成三种类型: RX/TX/CX Buffers; // Communication buffer
RX溢出发生: Time(QDSP6 Fetch from RX) < 流速度
QDSP6处理完数据存储到TX bufer中,最后TX buffer数据送到ISP接口。
QDSP6处理速度<流模块读取速度.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值