0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TI达芬奇系列芯片DM368在视频前端信号采集中的应用分析

电子设计 来源:电子工程网 作者:电子工程网 2021-03-19 10:11 次阅读

本文详细介绍了DM368 视频前端支持的输入数字信号格式。并以MT9D131 和PC VGA 信号为例,将两者的时序和 DM368 视频前端配置参数一一匹配。同时介绍了如何合理配置和使用 VD 中断,为 DM368 用户正确采集数据提供了参考。本文内容也可以给 DM8127、DM385 芯片的用户在使用视频摄像并行输入口采集时提供帮助。

1 前言

DM368 是TI达芬奇系列芯片中的一颗,被广泛的使用在IPNC(IP net camera 网络摄像机)的应用领域里。对于IPNC 应用,首先就需要将视频信号送入DM368 里面,这就需要使用到DM368 的视频前端(VPFE - Video Processing Front End)。DM368 的视频前端主要包含了IPIPEIF(Image Pipe Interface 图像管道接口),ISIF(Image Signal Interface 图像信号接口),IPIPE (Image Pipe 图像管道),Resizer(缩放器)四个部分。

IPIPEIF 功能是数据通路连接,以及把数据整合成后端模块接口可以接入的格式/大小。ISIF 是视频信号的输入口,可以支持Bayer 格式的RAW 数据(原始数据)或者是YUV 的数据的输入。IPIPE 主要是做ISP 的处理。Resizer 起到了对图像缩放和图像存储格式转换的作用。本文是基于IPIPEIF 将外部并口输入数据送入ISIF 处理的基础上展开讨论。

TI达芬奇系列芯片DM368在视频前端信号采集中的应用分析

图 1. 视频处理前端

如何将输入信号和DM368 视频前端参数一一对应?如何获取外部的RAW 数据以及RAW 转换成的对应的YUV 数据?如何只采集或者处理图像中的一部分区域?如何配置VD 中断触发的时机?在VD 中断里面我们应该处理什么?希望在阅读完本文后,你可以找到相应的答案。

2 DM368 的前端信号输入

如果用户外接传感器(sensor)输出RAW 数据或者YUV 数据到DM368,为了采集到正确的数据,我们需要了解DM368 的视频前端是如何解读信号,以获得正确的数据。如果用户使用的是FPGA 输出信号到DM368,那就更需要了解DM368 视频前端支持的信号格式,正确输出DM368可以接收的信号。

2.1 输入信号的物理连接

DM368 视频前端支持并口的信号输入,包括PCLK(像素时钟),8 到16 位数据线,HD(行同步)信号,VD(场同步)信号。可以支持最多16 位的Bayer 格式的RAW 数据输入。也可以支持内嵌同步或者外部信号同步的8 位或者16 位的YUV422 信号输入。如果是内嵌同步,则不需要接入HD 信号和VD 信号。对于输入内嵌同步的信号,DM368 硬件可以自动解析出数据上嵌入的同步信息给芯片内部使用。DM368 的PCLK 最高可支持120MHz,可以支持720p60、 1080p30 等分辨率的输入,也可以支持较大分辨率,例如五百万、八百万等分辨率,但帧率是非实时(小于30 帧)的。

DM368 的视频前端ISIF 可以支持master(主) 模式或者slave (从)模式。所谓master 模式就是PCLK、VD 和HD 由DM368 向外发出。而slave 模式是外部设备提供PCLK、VD 和HD 信号给DM368。在实际的应用里面绝大部分的情况都使用采slave 模式。

2.2 DM368 视频前端对输入信号的解析

2.2.1 ISIF 对信号的解析

无论是master 模式还是slave 模式,DM368 的视频前端接口ISIF 对于信号的处理是一样的。

图 2. 帧图像格式

图2 的时序通常认为水平同步和垂直同步信号都为高电平有效,需要配置ISIF 的MODESET. HDPOL=MODESET.VDPOL=0。在这种情况下,水平同步信号宽度为HDW (HD pulse width),以像素为单位。垂直同步信号宽度为 VDW (VD pulse width) ,以行数为单位。 PLLN(Pixels per line)是每行的像素个数,也就是相邻两个行同步信号间的像素个数。LPFR 是Lines per frame 的缩写,表示每帧数据有多少行,也是相邻两个场同步信号之间的行数。在slave 模式下,PLCK/HD/VD 都是外部输入的,ISIF 寄存器HDW/VDW/PLLN 是不需要配置的。图2 中的灰色区域我们叫做有效数据区域,也就是用户希望获得的有效数据。而斜线阴影区域就是消隐区域。消隐区域在视频前端处理中也是必不可少的部分,关于这点我们会在第3 节详细介绍。

如果你使用的是单次(one shot)模式,或者在连续(continuous)模式下,你需要保存RAW 数据,那你就需要配置 SPH( Start pixel horizontal 水平方向起始像素),SLV0/1 (Start line vertical - field 0/1 垂直方向奇偶场起始行),LNH( Number of pixels in line 每行像素个数),LNV (Number of lines vertical 垂直方向行数)。这是为了告诉DM368 你需要把输入的图像的哪部分写到DDR。也就是说你可以选择只输出有效数据里面的某一部分到DDR。

SPH 告诉硬件在同步信号有效以后从哪个像素开始写入DDR。请注意这里的HD 信号有效起始点是指同步信号有效的沿,不是从同步信号脉冲结束后作为计数像素的起点。例如,如果HD 信号高电平有效,就是HD 上升沿后开始计数,LNH 个PCLK(也就是像素)后将接收到的数据写入DDR。同样 SLV0/1 告诉硬件从哪行数据开始需要写入 DDR,LNV 决定了写多少行数据到 DDR。所以调整ISIF 的SPH,SLV0/1, LNH 和LNV 就可以调整保存到DDR 上的RAW 数据在原图中的位置,以及 RAW 数据段大小(长宽)。如果不需要写入 RAW 到DDR,那就不需要配置 SPH, SLV0/1 ,LNH 和LNV。

图2 的时序如果配置为同步信号低电平有效也是可以的。但是如果配置为低电平有效,相关的参数就发生了变化。例如水平同步信号宽度就变为 PPLN-HDW,垂直同步信号宽度为 LPFR- VDW。SPH 和 SLV0/1 都变成了 0。所以在配置 ISIF 相关寄存器前首先需要把同步信号的极性确定下来。 要采集到正确的数据,DM368 采样数据时机必须和传感器输出数据的时机匹配。在DM368 上默认是PCLK 的下降沿采样数据。用户可以通过修改SYSTEM module 寄存器VPSS_CLK_CTRL的PCLK_INV[2] 位来改变 PCLK 采样沿。

2.2.2 IPIPE 和Resizer 对信号的解析和处理

如果ISIF 直接通过IPIPEIF 连接到IPIPE,那所有的图像数据,也就是图2 里的global frame 都会传输到IPIPE。在IPIPE 里面 用户需要配置SRC_HPS (Horizontal Start Position ),SRC_VPS(Vertical Start Position),SRC_HSZ( Horizontal Processing Size)和SRC_VSZ( Vertical Processing Size),来确认global frame 里面的哪一部分需要IPIPE 来处理。

在resizer 的模块里面,也有SRC_HPS,SRC_VPS,SRC_HSZ 和SRC_VSZ 可以配置resizer处理的图像的区域。如果IPIPE 的输出到resizer 已经是需要处理的区域,那SRC_HPS,SRC_VPS 就可以配置为0,而resizer 的SRC_HSZ,SRC_VSZ 等于IPIPE 的SRC_HSZ,SRC_VSZ。如果ISIF 的输出是通过IPIPEIF 直接到resizer(没有经过IPIPE),resizer 的SRC_HPS,SRC_VPS 就不能配置为0 了,需要用户根据需要处理的图像合理的配置resizer 的SRC_HPS,SRC_VPS 寄存器。

2.2.3 RAW 数据和YUV 数据的匹配

在连续模式下,用户同时获得resizer 输出的YUV 和ISIF 输出的RAW,时常有用户发现自己保存的RAW 数据和Resizer 输出的YUV 数据不匹配,有一定的偏移。这种问题的原因是IPIPE,Resizer 里面的SRC_HPS,SRC_VPS,SRC_HSZ 和SRC_VSZ 和ISIF 里面的写入DDR 时候配置的偏移和大小不匹配。IPIPE/Resizer 和ISIF 的寄存器本身是没有直接关系的,这就需要用户将它们一一对应,匹配起来。例如ISIF 输出的数据输入给IPIPE,为了让RAW 和YUV 匹配,需要ISIF 的SPH 等于IPIPE 的SRC_HPS,ISIF 的SLV0/1 等于IPIPE 的SRC_VPS,ISIF 的LNH 等于IPIPE 的SRC_ HSZ,ISIF 的LNV 等于IPIPE 的SRC_ VSZ。而Resizer 的SRC_HPS,SRC_VPS 需要配置为0,而resizer 的SRC_HSZ,SRC_VSZ 要等于IPIPE 的SRC_HSZ,SRC_VSZ。

在单次模式下,也就是数据通路ISIF-》DDR-》IPIPEIF-》IPIPE(Resizer),由于IPIPE 的输入是DDR 上的RAW 数据,有效数据的获取已经在ISIF 输出到DDR 配置里面实现了,IPIPE 里面的处理数据的起始位置就可以是(0,0)了。

这样无论是在连续模式还是在单次模式下,RAW 数据和RAW 输出转换出的YUV 数据就可以完全匹配了。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    446

    文章

    47746

    浏览量

    409041
  • 接口
    +关注

    关注

    33

    文章

    7629

    浏览量

    148444
  • 摄像机
    +关注

    关注

    3

    文章

    1421

    浏览量

    58975
收藏 人收藏

    评论

    相关推荐

    咨询一下达芬奇处理器DM6437的问题

    您好:我想买一款达芬奇处理器,做我的项目:一个简单的实时采集视频并且跟踪目标(汽车)的项目。我TI的网上看了好几款
    发表于 11-27 11:05

    DM368 视频前端信号采集详解》- 该文对理解DM8127/DM38x的并口采集也有帮助

    欢迎提出意见/建议! DM368 视频前端信号采集详解 http://www.ti.com.cn
    发表于 05-28 07:54

    通过DM368输出的RGB信号,编码成TMDS,输出DVI端子,这样可以吗?

    本帖最后由 人间烟火123 于 2018-6-15 10:18 编辑 达芬奇专家:您好!1.请问用到多片TMS320DM368,JTAG级联有没有问题?2.我们想通过DM368输出的RGB
    发表于 06-15 03:16

    达芬奇论坛精华贴汇总--【TI FAE 分享】 & 【wiki资源】

    /69143.aspx 《DM368 视频前端信号采集详解》- 该文对理解DM8127/
    发表于 06-21 13:37

    请教大家DM368处理器+tvp5150am1采集不到视频数据的问题?

    参考DM368EVM的开发板,把视频采集芯片换成了TVP5150,我们的原理图设计如下所示: 视频
    发表于 06-21 01:55

    求助:有关DM368视频采集压缩后图像质量差的疑问

    1.基于DM368器件。 2.encode版本:Build ID: 02.20.00.01  3.前端设备:adv7611,从行车记录仪采集到HDMI接口输入到ADV7611,送给DM368
    发表于 06-21 03:25

    tvp7002输入DM368信号异常后,DM368无法正常捕获视频问题

    大家好,         我们使用tvp7002+dm368进行720p视频编码,Ypbpr视频经过tvp7002变成数字信号后输入
    发表于 06-21 18:31

    请问ti达芬奇系列芯片中有没有支持10比特高清采集的?

    如题,请问是否有支持10比特视频采集芯片达芬奇64系列中是否有10比特高清采集的?
    发表于 06-21 02:33

    dm368方案

    我想用DM368开发达到1080P高清录像机,请教下高手那前端视频采集要用什么芯片比较好? TVP7002怎么样? 或者还有什么其他更好的芯片
    发表于 06-21 15:08

    DM368输出RGB的设置

    达芬奇专家,您好:    我们想通过DM368输出的RGB信号,再用编码片子SII7170编码成TMDS,通过DVI端子输出。 请问具体怎么设置368输出RGB
    发表于 06-21 17:39

    DM368采集PAL视频变成黑白

    去年我们做了一块板子,DM368采集PAL信号,TVP5150作为编码前的AD芯片,做出来后刚开始采集编码后的
    发表于 02-19 11:41

    DM368信号时序

    TI 达芬奇系列芯片中的一颗,被广泛的使用在IPNC(IP net camera 网络摄像机)的应用领域里。对于IPNC 应用,首先就需要将视频
    发表于 06-13 05:00

    OMAP_L138和达芬奇系列的区别是什么?

    项目需求Linux+视频处理。我浏览了TI达芬奇系类初步选择使用DM3725或者TMS320DM8148,但是看到开发模块的价格后我放弃了
    发表于 04-15 09:21

    DM368支持的输入输出最大分辨率分别是多少?

    达芬奇专家:请帮忙回答如下问题:1.DM368的缩放是(Resize Images From 1/16x to 8x)。从规格书上看,DM368的缩放功能不是很强大,能否做到任意大小和比例的缩放呢
    发表于 08-14 10:15

    DM368视频前端支持的输入数字信号格式有哪几种?

    ,为 DM368 用户正确采集数据提供了参考。本文内容也可以给 DM8127、DM385 芯片的用户
    发表于 06-01 06:55