[发明专利]一种离散余弦变换DCT装置及应用方法在审
申请号: | 201410830066.3 | 申请日: | 2014-12-25 |
公开(公告)号: | CN105791871A | 公开(公告)日: | 2016-07-20 |
发明(设计)人: | 梁明兰;胡家鹏 | 申请(专利权)人: | 炬芯(珠海)科技有限公司 |
主分类号: | H04N19/625 | 分类号: | H04N19/625;H04N19/48;H04N19/156 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 朱佳 |
地址: | 519085 广东省珠海市唐*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 离散 余弦 变换 dct 装置 应用 方法 | ||
技术领域
本发明涉及视频编解码技术,特别涉及一种离散余弦变换DCT装置及应 用方法。
背景技术
高效视频编码(HighEfficiencyVideoCoding,HEVC)是开发的下一代视 频标准,被认为是H.264/AVC的继任者,其旨在相比H.264/AVC标准在相同 视频质量下压缩效率提高50%以及支持更高的视频分辨率。
为此HEVC提出了更大的宏块型号,如,最大编码单元〔(LargestCoding Unit,LCU)最大可以到64x64〕,以支持4x4,8x8,16x16,32x32四种可变的变换 size。提高了压缩性能的同时却增加了计算复杂度。
离散余弦变换(DiscreteCosineTransform,DCT)变换常被应用在视频编 解码领域将视频残差能量压缩集中到低频分量,MPEG2和MPEG4都是采用浮 点DCT运算,为避免编解码端浮点运算操作的不匹配问题,新的视频标准比 如VC1,H264,AVS都是采用整数DCT变换。
这样,可以获得更好的能量压缩效果,但是计算复杂度成指数倍的增大, 因此传统的视频标准在编码效率和实现复杂度上权衡选择4x4,8x8变换size, 而HEVC采用了新的编码工具其中就包括支持16x16,32x32的变换大小。
现有技术下,正向离散余弦变换(ForwardDiscreteCosineTransform,FDCT) 和逆向离散余弦变换(InverseDiscreteCosineTransform,IDCT)是两种重要的 视频编解码算法,前者用于将残差数据从时域变换到频域的变换系统,后者用 于将变换系数从频域变换到时域的残差数据。二维(2D)FDCT/IDCT变换 可以分解为一次一维行变换和一次一维列变换,参阅图1所示,行变换和列变 换运算共用一块硬件资源进行运算。因此如何高效实现视频编解码可以归结为 如何高效的实现HEVC1DFDCT/IDCT。
HEVC整数变换其实就是输入数据和变换系数的乘加运算,由于变换系数 的对称性和嵌套性(即Butterfly蝶形算法),可以减少部分运算得到相同的运 算结果。为实现时钟频率为400MH的1080P60fps(1080p超高清兼60帧每 秒)实时解码,则需达到对每个16x16块的处理过程要小于800个循环(cycle), 即每个32x32块的变换过程小于3200个cycle。因为FDCT/IDCT模块请求数 据,行列变换切换,以及16x16、32x32块内部流水切换也需要消耗多余的cycle。
然而,现有技术下,通常采用无源乘法器和有源乘法器来实现FDCT/IDCT 算法。其中,无源乘法器只适用于实现4点和8点的IDCT。而16点和32点 IDCT更适于用有源乘法器实现。
例如,在采用IDCT算法时,输入的残差数据为16bit,而采用的变换系数 为8bit。如果采用有源乘法器其乘法运算只需消耗一个16bitx8bit的乘法器, 而如果采用无源乘法器,则需要消耗4个22bit左右的加法器。
假设输入数据为a,变换系数为90,则a*90=(a<<6)+(a<<4)+(a<<3)+ (a<<1)(90的2进制表示为0101_1010,第1、3、4、6bit为1,硬件上就一 般都是通过这种移位相加的做法实现a*90,本文公式中的*代表乘法)。
如果采用无源乘法器进行移位加来实现IDCT算法,则需要针对每一个不 同的变换系数设计一套对应的移位加电路(如,如果系数不是90,而是16, 那么相应的硬件电路也要变化)。而如果采用有源乘法器来实现IDCT算法, 那么,乘法器的输入系数是可变的,就无需多增加电路。因此,有源乘法器从 可复用性、资源消耗、关键路径等方面考虑都优于后者。
蝶形算法利用变换矩阵的对称性和嵌套性来减少运算量,这在软件实现方 面有优势,用更少的cycle数算出更多的结果,能大幅提升吞吐量和性能。当 然在硬件实现时它也能减少硬件运算资源的消耗,但是它存在一个算法上的缺 点,就是偶数部分比奇数部分获得计算结果的速度快,造成偶数部分的计算结 果需用寄存器寄存起来,在某个状态时进行addsub运算出计算结果继续寄存 起来用于计算下个addsub结果,因此,由于delay增加的寄存器和由于状态复 杂增加的选择器造成了对硬件的额外负担。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于炬芯(珠海)科技有限公司,未经炬芯(珠海)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410830066.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:多媒体数据播放方法、装置和系统
- 下一篇:局部多重假设预测的执行方法及装置