找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[嵌入式/ARM] H.264/AVC High Profile视频编码中自适应变换模块的设计

[复制链接]
admin 发表于 2013-3-23 09:00:07 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
摘  要: 提出了一种可配置的整数变换运算单元并将其用于H.264/AVC High Profile视频编码器的自适应变换模块中。通过变换类型信号的配置,该变换单元可以完成相应的变换操作。本设计采用Altera公司的Cyclone II系列FPGA进行实现和验证,布局布线后的最大工作频率为63 MHz,采用4个可配置变换单元的变换模块,可以满足HD1080P@50帧/s视频的实时编码要求。
关键词: 自适应变换;硬件复用;离散余弦变换;哈达玛变换;H.264 High Profile视频编码器
       2004年7月,JVT组织发布了H.264/AVC标准的高保真度扩展(FRExt)部分,该部分引进了自适应尺寸变换(ABT)[1],变换类型由4×4变换改为可以在4×4和8×8变换之间进行自适应选择。
     采用帧内4×4和帧内16×16预测模式得到的亮度分量预测残差进行4×4 DCT;采用帧内8×8预测模式得到的亮度分量预测残差进行8×8 DCT。采用帧间预测模式得到的亮度分量预测残差,如果预测模式块不大于8×8,则使用4×4 DCT,否则编码器需要在4×4 DCT和8×8 DCT之间进行选择。色度分量预测残差全部使用4×4 DCT。H.264参考软件JM采用的变换类型选择算法是:分别求一个宏块的亮度分量预测残差的4×4 SATD和8×8 SATD,选取SATD值小的变换尺寸为离散余弦变换的变换尺寸。
1 可配置的变换运算单元的设计
     该可配置的变换运算单元能根据配置信号完成二维的4×4正、反变换操作和一维的8×8正、反变换变换操作。这个运算单元的多个例化构成用于整个编码器中的自适应变换模块。
1.1 前向变换
     (1)4×4整数余弦变换:根据矩阵理论中的克罗内克积和矩阵的对称性[2],二维4×4 DCT能够写成:
20121107051441961612315.gif
     (3)8×8整数余弦变换:通过二维变换的行列分解,二维4×4 DCT能够写成二维8×8 DCT:
     Y8=Cf8X8Cf8T=Cf8(Cf8X8T)T(3)
     参考文献[3]给出了快速1D 8×8整数余弦变换算法。
     (4)整合的前向变换单元:通过运算资源共享,式(1)、式(2)、式(3)中的运算能用同一个结构实现,如图1所示。对于4×4变换,当PHASE=1时,第一级运算为加法运算,得到的是一个4×4二维变换系数块的第0行和第2行数据;当PHASE=0时,第一级运算为减法运算,得到的是一个4×4二维变换系数块的第1行和第3行数据。在最后一级加法中,实线是4×4变换的路径,虚线是8×8变换的路径。
    20121107051442008482316.gif
   1.2 反向变换
     (1)4×4 整数余弦反变换:4×4 iDCT能进一步写成:
20121107051442039732317.gif
     (2)8×8哈达玛变换:参考文献[2]将一个8×8的预测残差块划分成2个4×8块进行运算。其一维变换表达式可以写成:
    20121107051442055352318.gif
     参考文献[3]给出了一维8×8整数余弦反变换的快速算法。
     (4)整合的反向变换单元:式(4)、式(5)、式(6)中的运算也能用同一个结构中来实现,整合后的运算单元如图2所示。
    20121107051442070982319.gif
   1.3 可配置的变换运算单元
     前向变换单元(图1)和反向变换单元(图2)有着类似的硬件结构,将它们整合到同一个运算单元中,如图3所示。该可配置的变换运算单元结构图一共需要36个加法器,图中有4个只用于8×8变换的加法器没有画出。输入互联、中间互联和输出互联结构为连线结构,根据变换类型确定每一级运算器的输入并对输出数据进行初等变换,使最后输出的结果与输入数据位置一一对应。
       该运算单元的输入为16个数据:一个4×4/8×1的预测残差块或者反量化后的系数块;输出为8个数据:一个4×2/8×1的变换(反变换)系数块。PHASE信号只在4×4变换时有效。在每一级运算的操作数输入过程中,采用操作数隔离法减少编码过程中电路的无效计算操作以降低功耗。为了缩短关键路径提高工作频率,数据路径采用2级流水线设计。
    20121107051442117852320.gif
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-12-24 09:35 , Processed in 0.064692 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表