摘要:本文主要从视频图像采集系统出发,针对基于FPGA视频采集系统中需要实时显示和高效存储视频数据的问题,设计了视频解码和SDRAM存储模块。在整个系统中使用CCD摄像头将采集到的模拟信号经解码芯片ADV7181B解码后,转换为数字信号,并使用乒乓存储方法存储在SDRAM中,以方便提供给后期其他 *** 作。在分析了视频解码及SDRAM的基本原理和主要参数的基础上,利用Verilog语言实现了将有效视频数据分离出来并串行输出,同时也将图像分辨率调整为符合VGA显示的像素大小。另一方面通过乒乓缓存也保证了实时性、高速度的数据存储。最后,经过Modelsim仿真验证,证明了本设计的有效性。
0 引言
图1视频采集系统框图视频图像采集系统应用非常广泛,随着计算机通信技术的不断发展,FPGA以其高性能、低开发成本等优点广泛应用于视频和图像处理领域[1],因此,更加深入地研究基于FPGA的实时图像采集系统, 对于视频监控系统、高性能的图像处理等都具有极其重要的作用。本文主要研究的内容是基于FPGA的视频采集及显示系统中的视频解码和视频数据存储的问题,对于提取有效视频数据流和高效实时存储大量数据具有显著性的意义。
1 视频图像数据采集系统的总体架构
图1为视频图像采集的系统框图,主要由I2C配置模块、ITU-656视频解码模块、SDRAM控制器模块、视频格式转化模块和VGA控制器模块组成[2]。为了使视频数据能实时、高速的显示,视频解码模块和SDRAM控制模块就显得尤为重要。
2 ITU-656解码ITU-656是国际电信联盟制成的视频标准,是国际电信联盟建议为实现在专业视频设备之间传输BT.601标准、4∶2∶2的YCrCb数字视频信号而定义的一个并行接口和一个串行接口。其中,并行接口在传输4∶2∶2的YCrCb视频数据流的同时,也会输出水平同步信号HS及垂直同步信号VS控制。
本文中ITU-656标准的视频数据以27 MB/s的速率按Cb,Y, Cr,Y, Cb,Y, Cr,…的顺序分时传送[3]。其中,Cb,Y,Cr是同一个地址的亮度和色差信号,Y对应于下一个亮度采样信号。 Y采样频率为13.5 MHz,Cb采样频率是6.75 MHz,使用8位PCM编码表示每个采样点。ITU-656 标准的数据传输格式如图2所示,每行采样1 728个样本点,其中Y为720个,Cb,Cr各360个。消隐期间的数据为288个(包括EAV和SAV)。
行控制信号有两个定时基准信号:SAV和EAV。 EAV和SAV之间有280个固定填充数据。 SAV和EAV具有相同的前同步码:FF,00,00,而后面的XY决定着该行在整个数据帧的位置,并且SAV和EAV信号可以通过XY的值来区别,同时XY也包含有奇偶场识别、状态和信息、场消隐行消隐状态。
F:F=0奇场,F=1偶场;V:V=1消隐数据,V=0有效行数据;H:H=0表示SAV,H=1表示EAV;P3,P2,P1,P0:保护比特位,其值由F、V、H 决定。
ITU-656数字解码模块[4]的功能是根据ITU-656视频数据流的特点将有效视频数据YCbCr和F、V、H 控制信号分离开来,并通过计算像素行列的坐标,确定图像中像素的具体位置,根据ITU-656数据传输时序,通过行内计数方式去除行消隐数据,并分离出SAV、EAV 信号,留下只包括YCbCr信号的数据流,并将其串行输出。ITU-656数字解码模块另一个功能是通过计算水平数据的像素坐标,将图像分辨率由720×576调整为640×480,以便在VGA中显示。
根据SAV 和EAV 都是以FF、00、00 的顺序开始的特点,设置一个序列移位器,采用4级寄存器级联的形式,每个寄存器缓存8 bit数据,并监测后面3个寄存器的值,当这三个寄存器缓存的数据不是FF、00、00时,序列移位器向右移,当检测到这3个寄存器的值为FF、00、00、时,即认为是SAV或EAV的到来,就将第一个寄存器的 bit6、bit5、bit4分别存放到3个一位寄存器中,从而提取出 F、V、H 信号。H(bit4)如果为0,即表示有效数据开始。再通过 V、F是否为0可判断出是有效行数据还是消隐数据,是奇场还是偶场的数据。解码过程如图3所示。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)