论文部分内容阅读
H.264是当今最流行的视频压缩编码标准,它比以往的视频标准具有更好的性能。运动估计是H.264标准中关键性的技术之一,它能有效地去除视频图像之间的时间冗余,获得很高的视频编码效率,但这是以巨大的计算量为代价的,它占到了整个编码的计算量的60%-80%。随着FPGA技术的持续发展,块尺寸可变的运动估计基于硬件的算法设计与实现成为了当前人们研究的热点之一。本文首先对视频编码技术的发展做了简要的介绍,详细分析了运动估计的块匹配原理和常用的搜索算法,对FPGA的特点和设计流程也做了简单说明,这些是本文的理论基础。其次给出了整像素运动估计硬件结构的整体设计方案:在运动估计搜索算法方面使用全搜索块匹配的方式;对比分析了四种片内数据复用方式Level A~Level D的优劣,并选择其中的Level C数据复用方式,能够在节省片内存储资源的同时减少从片外获取数据的带宽;在多种子块的SAD计算时使用2-D树状加法结构,可以提高硬件的利用率;在参考图像的边界使用虚拟连接的方式,使参考数据的更新时序更加简单、规律和有效。基于上述设计思路,对各个主要模块的功能、流程和结构进行了分析并使用Verilog HDL硬件描述语言实现了整个模块。最后,利用自动验证模型使用大量数据对模块进行了验证,并比较了软件模型和模块的结果,验证了模块逻辑的正确性。在xc6vlx240t硬件平台上利用ISE进行了综合验证,仿真结果表明,总共占用了11569个寄存器、33773个LUTS和9个Block RAM。最高工作频率可以达到195MHz,处理一个宏块需要345个时钟周期,能够满足1080p图像的处理。与已有的设计相比,在宏块处理的速度以及片内资源使用方面更有优势。