1. 首页
  2. 海思技术

海思平台的视频输入模块介绍

以hi3559av100为例

视频输入(VI)模块实现的功能:通过 MIPI Rx(含 MIPI 接口、LVDS 接口和 HISPI 接口),SLVS-EC,BT.1120,BT.656,BT.601,DC 等接口接收视频数据。VI 将接收到的数据存入到指定的内存区域,在此过程中,VI 可以对接收到的原始视频图像数据进行处理,实现视频数据的采集。

VI的功能框图(VI在软件上分为4个部分):

VI 从软件上划分了输入设备(DEV),输入 PIPE(图示为物理 PIPE,虚拟 PIPE 只包含ISP_BE)、物理通道(PHY_CHN)、扩展通道(EXT_CHN)四个层级。

下面分别做介绍:

视频输入设备(DEV):所有 VI 设备都是相互独立的,支持时序解析。

输入 PIPE:VI 的 PIPE 包含了 ISP 的相关处理功能,主要是对图像数据进行流水线处理,输出YUV 图像格式给通道。

物理通道(PHY_CHN):Hi3559AV100 VI 只有一个物理通道,支持 8 个扩展通道。Hi3559AV100 物理通道支持的典型分辨率如 7680×4320@30fps、3840×2160@120fps、3840×2160@60fps、3840×2160@30fps、1080p@240fps、1080p @120fps、1080p @60fps、1080p@30fps 等。

扩展通道(EXT_CHN):扩展通道是物理通道的扩展,扩展通道具备缩放、裁剪、鱼眼矫正功能,它通过绑定物理通道,将物理通道输出作为自己的输入,然后输出用户设置的目标图像。

注意:不同的芯片MIPI和DEV的绑定关系不一样。Hi3559AV100 的 Dev 与 MIPI 绑定关系是固定的,不能动态修改绑定关系。

线性模式(非 WDR 模式)的一条通路应该是一个物理 PIPE 绑定一个 Dev,WDR模式下需要多个物理 PIPE 绑定一个Dev,例如 2 合 1WDR,我们需要 2 个物理PIPE 绑定到一个 Dev。且在 WDR 模式下只有绑定到 Dev 的第 1 条物理PIPE 的通道有数据输出,其他绑定的物理 PIPE 的通道是没有图像数据输出。每个 PIPE 都可以与任意 Dev 绑定,但不能动态修改绑定关系。

从模式 SENSOR,需要使用 VI 的从模式模块。从模式与 VI 的物理 PIPE 对应关系是固定的。用户需要根据 SENSOR 管脚的连线和从模式与 PIPE 的对应关系确定使用哪个从模式模块,然后选择对应的物理 PIPE 号创建物理 PIPE,否则会没有数据。

从模式与 PIPE 的对应关系如下:

HI3559AV100的设备、PIPE。通道个数如下:

DEVPHY_PIPEVIR_PIPEPHY_CHNEXT_CHN
88218

HI3559AV100视频输入通道功能:

Hi3559AV100 SOC 有两个 VI 逻辑模块,默认两个逻辑都是打开的。在 Linux 操作系统下,逻辑的开关可以使用viproc_en 模块参数控制,Huawei LiteOS 不涉及。Linux 操作系统下加载 VI 的驱动时可以控制逻辑 1 的开关,但是逻辑0 必须要打开。打开逻辑 1的操作方法为 insmod hi3559av100_vi.ko viproc_en=1,1,关闭逻辑 1 的操作方法为insmod hi3559av100_vi.ko viproc_en=1,0。


下面是芯片hi3559av100的datasheet上关于mipi rx的说明:

MIPI RX

移动行业处理器接口 MIPI Rx(Mobile Industry Processor Interface Receiver),通过低电压差分信号接收原始视频数据(BAYER RGB 数据),并将其转化为 DC(DigitalCamera)时序后传递给下一级模块 VICAP(Video Capture)。

MIPI Rx 支持 MIPI D-PHY、LVDS(Low-Voltage Differential Signal)、HiSPi(HighSpeed Serial Pixel Interface)(MIPI Rx HiSPi 规范中包含HiVCM 和 SLVS 两种物理层电气标准)等串行视频信号输入,串行视频接口可以提供更高的传输带宽,增强传输的稳定性。MIPI Rx 是一个支持多种差分视频输入接口的采集单元,主要功能是接口时序的转换。通过不同的功能配置,MIPI Rx 可以接收 MIPI/LVDS/sub-LVDS/HiSPi 接口的数据,并且支持多种速度和分辨率的传输需求,兼容多种图像传感器。MIPI Rx 包括 4 个 D-PHY,每个 PHY 各自有两对差分随路时钟(CLK0/CLK1),每对时钟对应 2 对数据。因此 MIPI Rx 可以同时支持 1~8 路 sensor 输入。

通道指 MIPI_Rx 内部的数据处理通道,对应连接到 VICAP 通道,每个通道单独处理一个Sensor 的数据。

mipi rx框图:

MIPI Rx 只完成接口的时序转换,不处理图像的数据格式。在满足带宽的前提下可以支持任意分辨率和帧率。MIPI Rx 的带宽有两部分限制:combo-PHY 的接口数据率和内部处理速度。两路 sensor 输入都是接口最大支持 2.5Gbps/Lane,内部处理速度最大600M*2pixels/s。

MIPI Rx 控制器支持 MIPI、LVDS 和 HiSPi 模式,每种模式下的软件配置包含两部分:控制器和 combo-PHY。

以下分别介绍各个模式的配置流程:

1.MIPI模式

MIPI 模式下需要配置 PHY 的工作模式、数据传输所用的通道数、数据类型及宽动态模式。MIPI 模式的帧/行同步信息包含于数据包中,由控制器完成数据包的解析,从而恢复出像素数据。

step1. 上电启动。

step2. 根据使用场景将 MISC_CTRL130 寄存器中相应通道的 mipi_work_mode 配置为 MIPI 模式。

step3. 配置 CRG 寄存器中的 PERI_CRG61,打开 mipi_bus_clken、mipi_cil_clken 以及对应通道的 mipi_pix_clken。配置 mipi 总线软复位,撤销复位;配置对应通道 pix_core 复位,撤销复位。

step4. 配置 CRG 寄存器中的 PERI_CRG69,配置 sensor 复位,撤销复位;打开 sensor 时钟门控,并配置时钟频率。

step5. 配置 CRG 寄存器中的 PERI_CRG60,选择 MIP_Rx 通道时钟频率。

step6. 配置 MIPI_Rx 的 Lane 数(MIPI_LANES_NUM)和 Lane ID (LANE_ID*_CHN*)。

step7. 配置接收数据类型、WDR 模式等。

step8. 配置 PHY 的工作模式(PHY_MODE_LINK*)、PHY 通道延迟调节(PHY_SKEW_LINK*)、PHY 通道使能(PHY_EN_LINK*)、PHY 均衡调节(PHY_EQ_LINK*)、PHY 性能调节(PHY_CFG_LINK*)。

step9. 配置系统控制寄存器。场景模式选择(HS_MODE_SELECT)、PHY_EN、LANE_EN,打开 PHY_CIL_CTRL、选择 PHYCFG_MODE(对于 MIPI 模式,应选择0 或者 4)。

step10. 配置对应的 PHYCFG_EN。

step11. 配置 sensor 序列。

2. LVDS 和 HiSPi 模式配置流程

LVDS/HiSPi 模式下需要配置 RAW DATA 类型、数据大小端、同步方式、WDR 类型和图像宽高等寄存器。LVDS 模式依靠同步码识别帧/行同步信息,根据 RAW DATA 类型的不同,同步码可以为 8/10/12/14/16-bit。

step1.上电启动。

step2. 根据使用场景将 MISC_CTRL130 寄存器中相应通道的 mipi_work_mode 配置为 LVDS模式。

step3. 配置 CRG 寄存器中的 PERI_CRG61,打开 mipi_bus_clken、mipi_cil_clken 以及对应通道的 mipi_pix_clken。配置 mipi 总线软复位,撤销复位;配置对应通道 pix_core 复位,撤销复位。

step4. 配置 CRG 寄存器中的 PERI_CRG69,配置 sensor 复位,撤销复位;打开 sensor 时钟门控,并配置时钟频率。

step5. 配置 CRG 寄存器中的 PERI_CRG60,选择 MIP_Rx 通道时钟频率。

step6. 配置接收数据类型、WDR 模式,图像宽高(LVDS 模式下,配置的宽度是图像实际宽度除以 Lane 数-1)、同步头、Lane ID 等信息。

step7. 配置 PHY 的工作模式(PHY_MODE_LINK*)、PHY 通道延迟调节(PHY_SKEW_LINK*)、PHY 通道使能(PHY_EN_LINK*)、PHY 均衡调节(PHY_EQ_LINK*)、PHY 性能调节(PHY_CFG_LINK*);配置 LVDS 模式Lane 同步头信息(PHY_SYNC_CODE*_LINK*)。

step8. 配置系统控制寄存器。场景模式选择(HS_MODE_SELECT)、PHY_EN、LANE_EN,打开 PHY_CIL_CTRL、选择 PHYCFG_MODE(对于 LVDS 模式,应选择1)。

step9. 配置对应的 PHYCFG_EN。

step10. 配置 sensor 序列。

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站不拥有所有权,不承担相关法律责任。如发现有侵权/违规的内容, 联系QQ1841324605,本站将立刻清除。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

服务热线:130-0886-1890

QR code