EDN China > 设计实例 > EDA工具与服务 > IC设计与设计服务 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

基于H.264的Exp-Golomb解码器ASIC设计

电子设计应用/福州大学物理与信息工程学院 吴培毅 于映?? 2008年05月19日 ?? 收藏0

????? ITU-T(国际电信联盟)和MPEG(运动图像专家组)联合推出了新一代视频压缩标准H.264/MPEG一4-10 AVC。

????? 它在DCT变换、熵编码、去块滤波等方面采用了一系列新技术,在相同的重建图像质量下比H.263和MPEG-4节约了50%的码率,在高码率应用中表现更加优越。同时,它具有良好的网络亲和性,对网络传输具有更好的支持。

????? 但是,在获得优越性能的同时,H.264编码和解码的计算量和复杂度均有大幅度提升。H.264算法在编码端比H.263复杂3倍以上,在解码端复杂2倍左右。对于较高分辨率的视频源,单纯依靠软件方式实现H.264视频压缩算法,往往不能胜任,尤其难以进行实时解码。因此,采用硬件方式实现H.264视频压缩算法具有重要的意义。

????? 本文的研究目标是设计H.264标准中的Exp-Golomb解码器,在对其算法进行深入探讨的基础上,提出了一种高效且低成本的ASIC实现方案。

?????? Exp-Golomb编码原理及解码算法分析

????? 在H.264基本规范中,除了残差变换系数采用CAVLC编码方式外,其它句法元素均使用Exp-Golomb编码。Exp-Golomb编码是一种有规则的变长编码方式,在各类视频编码标准中被广泛应用。Exp-Golomb编码基于符号的概率统计进行编码,用短码字来表示出现概率高的信息,用长码字来表示出现概率低的信息,码长与被编码数成指数对应关系,从而使总体平均码字最短。与定长编码方式相比,节省了大量存储空间。

????? 在H.264中采用的是0阶Exp-Golomb编码,编码规则如图1所示。

编码规则

????? Exp-Golomb码字的逻辑结构为:[M zeros][1][INFO]。其中M个"0"和中间的"1"称为前缀,INFO是M位的信息值,因此,每个Exp-Golomb码字的长度都为2M+ 1。每个索引字codenum经过编码都可以对应一个如上结构的码字,它们之间的关系是:

????? codenum="2M"+INFO-1 (1)

????? 由式1可知,进行Exp-Golomb解码可先探测出码字前连续"O"的个数,再取出后缀,经该公式计算即可得到codenum值。在H.264中存在四种Exp-Golomb码:无符号型ue(v)、有符号型se(v)、映射型me(v)和截断型te(v)。因此,对于解出的codenum值,根据句法元素类型的不同有四种映射方式,如表2所示。根据相应描述完成映射后,输出syntax即为解码值。

映射方式

????? Exp-Golomb解码器硬件结构设计

????? 基于以上解码算法设计的Exp-Golomb解码器硬件结构如图1所示。整个系统主要由以下模块组成:输入码流缓冲移位模块、码长检测模块、 codenum生成模块以及句法元素映射模块。系统上电复位后,首先由码流缓冲移位模块提供待解码字,然后由码长检测模块中的首一检测器探测出连续"0" 的个数,即时计算得出当前码长送至累加器。同时,首一检测的结果和待解码字一起送至codenum计算模块,经移位、相减得到codenum值。最后将 codenum送至四个映射单元处理,最终解码句法元素由选择器输出至寄存器。整个解码流程用一个时钟周期完成。下文将详细叙述各功能子模块的硬件结构。

解码器硬件结构


上一页12下一页
?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

H.264? Exp-Golomb? 解码器? ASIC?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈