GS2972视频输出调试。 原创文章,转载请说明出处。qq_742875810原创。
原创文章,转载请说明出处。qq_742875810原创。
一、外同步模式
1.1 GS2972的硬件初始化
GS2972是HD-SDI/3G-SDI视频、音频串化器。其使用非常简单,但是要想把该芯片驱动起来,真心不容易。需要了解相关视频标准、传输标准、显示标准,协议较多,版本较多,彻底了解并非一件简单的事情。笔者经过大量阅读,将驱动GS2972过程总结如下。后续,作者会陆续记录视频相关标准的学习。
GS2972的使用简单地说就是FPGA向GS2972写入行同步、场同步、数据使能,并根据SMPTE292标准写入数据流即可。对就这么简单,说起来容易,可是真正要操作起来,并非简单事情。
GS2972初始化为SMPTE模式,在SMPTE模式下芯片有两种视频数据组织形式,一种是芯片根据所给的视频数据自动检测并生成行场同步信号,还有一种是需要将写好的行场同步信号传给芯片。当DETECT_TRS位为高电平时,芯片从视频数据中检测生成行同步信号,场同步信号和数据使能信号。当DETECT_TRS位为低电平时需要通过H/H_SYNC、V/V_SYNC、F/DE管脚给芯片提供这三个信号。
我们本次使用20bit非复用模式。硬件引脚上下拉如下图所示(下表第一行)
DETECT_TRS信号和TIM_861信号,笔者经过阅读数据手册,总结如下:
本次视频传输,我们使用CEA-861时序驱动VSYNC 、SYNC 、DE信号控制显示器显示,输出1920*1080@50Hz视频信号。
1.2 GS2972的驱动时序
读者需要对这个时序彻底理解,脑子里必须有下面这幅图,否则,是理解不了上述时序的。