论文摘要
随着数字信号处理技术和计算机技术的发展进步,数字化视频的浪潮席卷全球。人们对于高清视频的应用和娱乐需求越来越大。为了解决视频的质量、存储空间及实时性等一系列问题,人们对于高效率的视频压缩标准和高性能的硬件视频解码器的研究开发力度日益加大。AVS作为具备我国自主知识产权的信源标准,兼具先进性、自主性和开放性等特点,拥有着广阔的市场前景,因此,对其硬件实现的研究有着重大的意义。本文结合AVS视频标准中阐述的算法特点,对AVS视频解码器的并行流水线进行了规划,设计了更适合于硬件实现的解码器结构。具体内容包括:(1)变长解码。在研究了AVS标准的变长解码部分后,设计并实现了桶形移位寄存器来读出相应长度的数据,运用查找表方式来实现变长码的解析。(2)残差系数处理。在反量化操作后插入缓存FIFO,实现两级流水线。把反扫描、反变换和转置操作都放在一个8x8的寄存器阵列上完成,行变换和列变换的8组数据都可以同时进行处理,无需占用存储器资源,节省了读写存储器消耗的时钟周期。(3)帧内预测和重建。分析AVS标准帧内解码的算法,提取不同模式算法的共性,合理安排片上存储器空间,在像素预测值计算时,设计一个基本运算单元完成大部分预测模式的像素预测计算,针对较为复杂的Plane模式,则专门设计Plane模式计算阵列完成其计算。(4)环路滤波。在分析了滤波算法后,对滤波边界的顺序进行适当地调整,并合理分配内部双口RAM存储器资源。将边界像素滤波操作与滤波后像素的转存操作并行进行,加快了滤波速度,节省了消耗的时钟周期。(5)帧间预测的运动矢量获取部分。针对众多的帧间预测模式和划分方式,采用命令字和标志位的方式进行归类,后续的MV计算模块根据命令字进入不同的计算分支,调用计算单元计算。对MV计算过程中数个频繁使用的复杂公式,统一设计一个计算单元,以时分复用方式实现计算。本文采用Verilog语言对各个模块进行了设计,并通过与软件rm代码比对、ModelSim软件仿真和FPGA验证的方法对AVS解码器的数个关键硬件模块进行了验证。分析表明,本设计的模块可满足AVS标清视频的实时解码要求。