(检测技术与自动化装置专业论文)h264熵解码器的设计与fpga实现.pdf_第1页
(检测技术与自动化装置专业论文)h264熵解码器的设计与fpga实现.pdf_第2页
(检测技术与自动化装置专业论文)h264熵解码器的设计与fpga实现.pdf_第3页
(检测技术与自动化装置专业论文)h264熵解码器的设计与fpga实现.pdf_第4页
(检测技术与自动化装置专业论文)h264熵解码器的设计与fpga实现.pdf_第5页
已阅读5页,还剩98页未读 继续免费阅读

(检测技术与自动化装置专业论文)h264熵解码器的设计与fpga实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

h 2 6 4 熵解码器的设计与f p g a 实现 摘要 h 2 6 4 视频标准应用于众多的消费类电子中,主要包括:m p 4 、手机电视、 数字电视等。h 2 6 4 的熵编码采用哥伦布编码和基于上下文的自适应变长编码 ( c o n t e x t b a s e da d a p t i v ev a r i a b l el e n g t hc o d i n g ,c a v l c ) ,其中c a v l c 编 码方式引入了上下文模型,进一步提高了压缩率。在压缩率提高的同时,h 2 6 4 熵解码的复杂度比m p e g 4 视频标准有了进一步提升。在面对高清视频序列解 码时,软件解码已经不能达到实时性的要求,所以本文提出了h 2 6 4 熵解码器 的硬件设计方法及f p g a 实现。 完成的主要工作包括以下几个方面: ( 1 ) 熵解码器整体结构设计:依次介绍辅助头信息解码模块( 包括序列参数集、 图像参数集、条带头、条带数据、宏块层中的部分参数、运动向量残差的 解码模块) 和像素残差的解码模块。辅助头信息解码模块主要依靠哥伦布 解码模块实现,像素残差的解码模块依靠c a v l c 解码部分实现。通过顶 层控制模块构建成完整的熵解码器。 ( 2 ) 关键模块的优化:在c a v l c 解码器中引入流水线控制,通过合理分配时 钟,使得c a v l c 解码器在解码量化系数为2 8 的i 帧时,解码每个宏块需 要消耗3 5 0 个时钟周期。在解码元素“c o e f ft o k e n 时,将高频码字和低 频码字分开处理。高频码字的码表采用组合逻辑实现,低频码字的码表存 储在存储器中进行解码。在存储低频码字码表时,采用了新的存储策略, 在码字生成地址的方式上进行了改进,减小了在解码时所需的存储器的资 源。 ( 3 ) h ,2 6 4 熵解码器原型芯片设计与实现:整个设计采用v e r i l o gh d l 语言描述, 通过m o d e l s i m 软件进行熵解码器的仿真,通过j m 参考软件解码结果对比 m o d e l s i m 软件的仿真结果,完成了熵编码器的仿真工作,并且将其整合到 了一个完整的h 2 6 4 解码器上实现了解码器的正常工作。实验中的f p g a 开发板采用a l t e r a 的s t r a t i xi ie p 2 s 1 8 0 型号芯片,将整个h 2 6 4 解码器完 成仿真后下载到f p g a 芯片中,通过显示器做出输出显示设备,实现了正 常的解码。其中熵解码器模块单独综合的频率可达到1 2 3 m h z 。按其解码 的平均时钟周期来看,在频率能达到1 0 0 m h z 的情况下,熵解码器部分可 满足分辨率为1 9 2 0 x 1 0 8 8 ,帧率为3 0 f p s ,量化系数为2 8 的视频序列的解码。 关键词:h 2 6 4 ;熵解码:c a v l c t h e d e s i g na n df p g ai m p l e m e n t a t i o no f h 2 6 4e n t r o p yd e c o d e r a b s t r a c t h 2 6 4v i d e os t a n d a r di su s e di n m a n yc o n s u m e re l e c t r o n i c s ,i n c l u d i n g : m p 4 ,m o b i l ep h o n e s ,t e l e v i s i o n ,d i g i t a lt e l e v i s i o na n ds oo n t h ec o n t e x t b a s e d a d a p t i v ev a r i a b l el e n g t hc o d i n g ( c a v l c ) a n dc o l u m b u sc o d i n ga r et w oe n t r o p y c o d i n gm e t h o d su s e db yh 2 6 4 c a v l ci n t r o d u c e st h ec o n t e x tm o d e l b e c a u s et h e p i x e lr e s i d u a lh a sb e e ne n c o d e da c c o r d i n gt ot h ep i x e lr e s i d u a lt h a th a sb e e n e n c o d e d ,t h ec o m p r e s s i o nr a t i oi sl u t h e ri m p r o v e d w i t ht h i si m p r o v e m e n t ,t h e d e c o d i n gc o m p l e x i t yo fh 2 6 4e n t r o p yc o d i n gh a sb e e nf u r t h e re n h a n c e dt h a nt h e m p e g 4v i d e os t a n d a r d i nt h ec a s eo fh i g h d e f i n i t i o nv i d e os e q u e n c ed e c o d i n g , t h es o f t w a r ed e c o d e rc a nn ol o n g e rm e e tt h er e q u i r e m e n t so f r e a l t i m e s o ,h a r d w a r e a r c h i t e c t u r eo fh 2 6 4e n t r o p yd e c o d e ra n di t sf p g a i m p l e m e n t a t i o ni sp r o p o s e di n t h i sp a p e r t h em a j o rc o n t r i b u t i o ni sa sf o l l o w i n g : ( 1 ) t h eo v e r a l ls t r u c t u r eo ft h ee n t r o p yd e c o d e r :i nt h i sp a p e r , t h ea u x i l i a r y h e a d e ri n f o r m a t i o nd e c o d i n gm o d u l e ( i n c l u d i n gt h es e q u e n c ep a r a m e t e rs e t , p i c t u r ep a r a m e t e rs e t ,a sa m e n d e dt ot a k et h el e a d ,s t r i p ed a t a ,p a r to ft h e m a c r ob l o c kl a y e rp a r a m e t e r s ,r e s i d u a lm o t i o nv e c t o rd e c o d i n g ) a n dp i x e l r e s i d u a l s d e c o d i n gm o d u l ea r ei n t r o d u c e di nt u r n t h ea u x i l i a r yh e a d e r i n f o r m a t i o nd e c o d i n gm o d u l em a i n l yr e l y so nc o l u m b u sd e c o d i n gm o d u l ei n d e c o d i n gp r o c e s s t h ep i x e lr e s i d u a l sd e c o d i n gm o d u l er e l y so nc a v l c d e c o d i n gm o d u l e b y t h et o p - l e v e lc o n t r o lm o d u l e ,a c o m p l e t ee n t r o p y d e c o d e rm o d u l ei sb u i l t ( 2 ) t h eo p t i m i z a t i o na n dr e s e a r c h o fi m p o r t a n tm o d u l e s :t h ep i p e l i n ec o n t r o l m o d u l ei si n t r o d u c e di n t ot h ec a v l cd e c o d e r t h r o u g ht h er a t i o n a l a l l o c a t i o no ft h ec l o c k ,w h e nd e c o d e sif r a m eo fw h o s eq u a n t i z a t i o n c o e f f i c i e n ti s 2 8 ,t h ec a v l cd e c o d e rd e c o d e se a c hm a e r o b l o c kc o n s u m i n g 3 5 0c l o c kc y c l e s i nt h ed e c o d i n gp r o c e s so fe l e m e n t ”c o e f ft o k e n ”,t h e h i g h f r e q u e n c ya n dl o w f r e q u e n c yc o d ew o r d sa r es e p a r a t e dt od e a lw i t h t h e h i g h f r e q u e n c y c o d ew o r d sa r ed e c o d e d b y c o m b i n a t i o n a l l o g i c t h e l o w f r e q u e n c yc o d ew o r d sa r es t o r e di nm e m o r yt od e c o d e an e wm e m o r y o r g a n i z a t i o ns t r a t e g y i s p r o p o s e dt or e d u c et h em e m o r yc o n s u m p t i o no f l o w f r e q u e n c yc o d ew o r d s t h em e t h o do fc r e a t i n ga d d r e s sb yc o d ew o r d si s i m p r o v e d t h em e m o r yc o n s u m p t i o ni s r e d u c e db yt h en e wm e m o r y i i o r g a n i z a t i o ns t r a t e g y ( 3 ) h a r d w a r e a r c h i t e c t u r eo fh 2 6 4 e n t r o p y d e c o d e ra n di t sf p g a i m p l e m e n t a t i o n :t h ew h o l ed e s i g nu s e sv e r i l o gh d l l a n g u a g et od e s c r i b ea n d m o d e l s i ms o f e w a r et os i m u l a t e b yc o m p a r i n gt h er e s u l to fm o d e l s i ma n dj m ( r e f e r e n c es o f t w a r ed e c o d e r ) ,t h es i m u l a t i o nw o r ko ft h ee n t r o p ye n c o d e ri s c o m p l e t e d t h ee n t r o p yd e c o d e r h a sb e e ni n t e g r a t e di n t oah 2 6 4d e c o d e r ,a n d t h ec o m p l e t eh 2 6 4d e c o d e rw o r k sp r o p e r l y t h ef p g ai sa l t e r a ss t r a t i xi i e p 2 s18 0t y p ec h i p a f t e rt h es i m u l a t i o no ft h ee n t i r e h 2 6 4d e c o d e r ,t h e w h o l eh 2 6 4d e c o d e ri sd o w n l o a d e dt of p g ac h i p t h r o u g ht h ed i s p l a ya st h e o u t p u t d i s p l a yd e v i c e ,t h e w h o l eh 2 6 4d e c o d e ra c h i e v e st h en o r m a l d e c o d i n g t h em a xf r e q u e n c yo ft h ee n t r o p yd e c o d e rc a n a c h i e v et o1 2 3 m h z w h e ni ti ss y n t h e s i z e da l o n e w h e nt h ef r e q u e n c yc a nr e a c h 10 0 m h z , a c c o r d i n gt ot h ea v e r a g ec l o c kc y c l e ,t h ee n t r o p yd e c o d e r c a nm e e tt h e d e m o n do ft h ev i d e os e q u e n c ew h o s er e s o l u t i o ni s 19 2 0 xl0 8 8 ,a n df l a m er a t e i s3 0 f p s a n dq u a n t i z a t i o nc o e f f i c i e n ti s2 8 k e vw o r d s :h 2 6 4 ;e n t r o p yd e c o d e r :c a v l c i i i 图2 1 图2 2 图2 3 图2 4 图2 5 图2 6 图2 7 图3 1 图3 2 图3 3 图3 。4 图3 5 图3 6 图3 7 图3 8 图3 9 图3 1 0 图3 1 1 图3 1 2 图3 13 图4 1 图4 2 图4 3 图4 4 图4 5 图5 1 图5 2 图5 3 图5 4 图5 5 图5 6 图5 7 图5 8 图5 9 插图清单 帧内1 6 x 1 6 宏块熵编码分割示意图8 4 x 4 的d c 系数块8 非帧内16 x l6 宏块熵编码分割示意图9 色度系数的分割方式示意图9 2 x 2 色度d c 系数9 4 x 4 a c 和d c 系数1 0 帧内1 6 x 1 6 宏块亮度块结构图1 1 l o a di nf i f o 模块结构图1 5 r e g d a t a 模块时序图15 熵解码整体结构图1 5 n a l 选择模块状态转移图1 6 定长解码移除长度生成模块1 7 n a l 选择模块l e n 解码时序图1 7 序列参数集解码状态机( 部分) 一1 8 序列参数集解码模块结构图1 9 序列参数集解码模块l e n 的解码时序图2 0 条带头和条带数据解码结构图一2 1 条带数据解码部分2 2 宏块相邻示意图2 3 顶层状态控制模块状态机;2 4 无符号哥伦布解码状态机2 6 无符号哥伦布解码时序图一2 7 无符号哥伦布解码模块2 8 有符号解码选择器2 9 t o e db l o c kp a t t e r n 存储形式2 9 c a v l c 解码器整体结构3 1 c a v l c 解码器第一级流水线结构图3 2 亮度宏块分割示意图3 4 亮度宏块的坐标示意图3 4 亮度横向寄存器组3 4 亮度纵向寄存器组3 5 亮度上下文模型r a m 3 5 上下文模型参数存储过程3 6 解码完第一个宏块后寄存器组和r a m 的内容3 7 v i i 图5 1 0 图5 11 图5 1 2 图5 13 图5 1 4 图5 。15 图5 1 6 图5 17 图5 18 图5 1 9 图5 2 0 图5 2 1 图5 2 2 图5 2 3 图5 2 4 图5 2 5 图5 2 6 图5 2 7 图5 2 8 图5 2 9 图5 3 0 图5 3 1 图5 3 2 图5 3 3 图5 3 4 图5 3 5 图5 3 6 图5 3 7 图5 3 8 图5 3 9 图5 4 0 图5 4 1 图5 4 2 图5 4 3 图5 4 4 图5 4 5 解码完第二个宏块后寄存器组和r a m 的内容一3 8 c o n t e x tn c 模块状态机3 8 c o n t e x tn c 模块结构图3 9 计算亮度子宏块n a 和n b 的电路模块4 l n c 计算模块4 2 w rt o t a l c o e f f 模块状态机4 3 组合逻辑解码时序图5 0 读r a m 方式解码状态机5 1 读r a m 方式节目解码时序图5 2 d e c o d e 模块结构图52trailing t o t a l 产生高频码字或8 = n c 的标志信号的电路模块5 3 生成码表选择信号5 4 组合逻辑解码相关信号5 4 组合逻辑解码模块电路结构图5 4 地址生成电路5 5 数据选择模块一5 5 t o t a l c o e f f 的最终选择模块5 6 l e n 选择模块5 6 d e c o d el e v e l 解码模块状态机转移图5 7 d e c o d el e v e l 模块时序示意图5 9 d e c o d el e v e l 模块电路结构图6 0 l e v e l1 的赋值电路61 l e v e l3 赋值电路6 2 4 x 4 亮度4 x 4 子宏块一6 3 元素t o t a lz e r o s 的存储结构6 4 游程信息解码状态机6 5 第一种情况的解码r u nb e f o r e 的时序图6 6 第二种情况的解码r u nb e f o r e 的时序图6 7 d e c o d et o t a lr u nz e r o 模块电路结构图6 8 c a v l c 控制电路状态机转换图7 1 宏块亮度子宏块7 2 宏块色度子宏块7 2 c a v l c 解码流水操作过程7 3 4 x 4 子宏块和2 x 2 子宏块的块内偏移地址7 4 4 x 4 子宏块和2 x 2 子宏块的地址和计数器e n t l i s t 的对应关系7 5 计数器c n tl e v e l 和l e v e l 的对应关系7 5 v i i i 图5 4 6 图5 4 7 图5 4 8 图5 4 9 图5 5 0 图6 1 图6 2 图6 3 图6 4 图6 5 计数器c n tl e v e l 和r u nb e f o r e 的对应关系7 5 4 x 4 子宏块扫描过程7 6 非零系数和r u nb e f o r e 的存储位置一7 6 第二级流水的执行时序图7 7 第二级流水电路结构框图7 8 熵解码器仿真平台8 1 数据对比图1 8 2 数据对比图2 8 2 熵解码器的仿真流程8 5 f p g a 实现验证平台8 7 i x 表2 1 表2 2 表2 3 表2 4 表2 5 表2 6 表4 1 表4 2 表5 1 表5 2 表5 3 表5 4 表5 5 表6 1 表6 2 表6 3 表6 4 表6 5 表6 6 表6 7 表6 8 表格清单 无符号哥伦布比特串和c o d e n u m 7 有符号哥伦布编码与e o d e n u m 的对应关系7 c o d e n u m 对应的宏块预测模式c o d e db l o c kp a r e m 的子表7 映射到t o t a l c o e f f ( c o e f ft o k e n ) 和t r a i l i n g o n e s 1o t o t a lz e r o s 的码表结构( 部分) 一1 2 r u nb e f o r e 编码表格结构图1 2 真值表1 一2 7 真值表2 一2 8 高频码字的概率统计4 7 除高频码字外码字的存储策略一4 8 部分i n f o 不规则码字的偏移地址4 8 决定增加s u m x l e n g t h 的l e v e l 绝对值的阈值6 1 解码后像素残差的存储地址范围7 4 上下文模型模块需要的主要输入信息8 3 d e c o d et r a i l i n gt o t a l 模块的主要输入信息8 3 c a v l c 控制电路的主要输入信息8 4 第二级流水的输入信号8 4 码器解码一个i 宏块的平均周期。8 6 解码c o e f ft o k e n 元素消耗存储器资源对比8 6 熵解码器各个模块消耗资源的对比8 8 c a v l c 解码器中各个模块消耗资源对比8 8 x 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。 据我所知,除了文中特别加以标志和致谢的地方外,论文中不包含其他人已经发表或撰 写过的研究成果,也不包含为获得金垦王些叁堂或其他教育机构的学位或证书而使 用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示谢意。 学位论文作者签字奇硝签字日期测口年午胖日 学位论文版权使用授权书 本学位论文作者完全了解 金胆王些太堂有关保留、使用学位论文的规定,有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅或借阅。本人 授权 金魍王些太堂 可以将学位论文的全部或部分论文内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者签名:旮每白 签字日期:刁咖年牛月1 1 ,日 学位论文作者毕业后去向: 工作单位: 通讯地址: 导师签名: 签字日期:厶卜年牛月j 己日 电话: 邮编: 致谢 首先感谢我的导师高明伦教授。高老师渊博的学识,严谨的治学态度,对 学生的谆谆教导和生活上的关心深深记在我心中。在我今后的人生道路上我会 牢记高老师的教诲,保持谦逊的学习态度和刻苦钻研的精神。 感谢张多利老师、杜高明老师、宋字鲲老师在我项目上的指导和严格要求。 感谢杜高明老师对我论文上的指导和修改。 感谢尹勇生老师、邓红辉老师、王晓蕾老师、王锐老师、胡永华老师在课 程学习上的指导。 感谢林微老师、范阿姨、胡剑、木子一在实验室日常事务中的辛勤劳动。 感谢耿罗峰师兄对我在基础知识学习上的指导和帮助。感谢张云师兄、马 亮师兄、付强师兄在视频项目上的指导。 感谢视频组成员程贤文、吴腊狗、胡学权、覃春平同学在项目中的合作与 帮助。感谢黄俊俏、陈迎春、温海华、肖福明、刘艳、何莹莹同学在长期合作 中对我的帮助。 感谢郑勇、戚斌、李桦林、李宝川、朱玉龙同学在论文校对工作上的帮助。 感谢我的父母,感谢他们多年来对我的教育和养育之恩。感谢夏新新同学 六年来长期的无私的支持与帮助。 i v 作者:于亚轩 2 0 1 0 年4 月 第一章绪论 本文的绪论部分将对h 2 6 4 视频标准,h 2 6 4 中熵解码器的研究现状做个 简单介绍。 1 1h 2 6 4 视频标准简介 1 1 1h 2 6 4 视频标准的优点简介 h 2 6 4 是国际标准化组织( i s o ) 和国际电信联盟( i t u ) 共同提出的继m p e g 4 之后的新一代数字视频压缩格式,它既保留了以往压缩技术的优点和精华又具 有其他压缩技术无法比拟的许多优点【9 j 【1 0 儿2 2 1 1 2 4 1 1 3 0 1 3 2 j 【3 5 】。 1 低码流( l o wb i tr a t e ) :和m p e g 2 和m p e g 4a s p 等压缩技术相比,在 同等图像质量下,采用h 2 6 4 技术压缩后的数据量只有m p e g 2 的1 8 ,m p e g 4 的 1 3 。显然,h 2 6 4 压缩技术的采用将大大节省用户的下载时间和数据流量收费。 2 高质量的图像:h 2 6 4 能提供连续、流畅的高质量图像( d v d 质量) 。 3 容错能力强:h 2 6 4 提供了解决在不稳定网络环境下容易发生的丢包等 错误的必要工具。 4 网络适应性强:h 2 6 4 提供了网络抽取层( n e t w o r ka b s t r a c t i o nl a y e r ) , 使得h 2 6 4 的文件能容易地在不同网络上传输( 例如互联网,c d m a ,g p r s , w c d m a ,c d m a 2 0 0 0 等) 。 h 2 6 4 标准是由j v t ( j o i n tv i d e ot e a m ,视频联合工作组) 组织提出的新一 代数字视频编码标准。j v t 于2 0 0 1 年1 2 月在泰国p a t t a y a 成立。它由i t u 。t 的v c e g ( 视频编码专家组) 和i s o i e c 的m p e o ( 活动图像编码专家组) 两个国际标准 化组织的专家联合组成。j v t 的工作目标是制定一个新的视频编码标准,以实 现视频的高压缩比、高图像质量、良好的网络适应性等目标h 2 6 4 标准。h 2 6 4 标准将作为m p e g 4 标准的一个新的部分( m p e g 4p a r t 1 0 ) 而获得批准,是一 个面向未来i p 和无线环境下的新数字视频压缩编码标准。 h 2 6 4 标准的主要目标是:与其它现有的视频编码标准相比,在相同的带 宽下提供更加优秀的图像质量。h 2 6 4 与以前的国际标准如h 2 6 3 和m p e g 一4 相 比,最大的优势体现在以下四个方面: 1 将每个视频帧分离成由像素组成的块,因此视频帧的编码处理的过程 可以达到块的级别。 2 采用空间冗余的方法,对视频帧的一些原始块进行空间预测、转换、 优化和熵编码( 可变长编码) 。 3 对连续帧的不同块采用临时存放的方法,这样,只需对连续帧中有改 变的部分进行编码。该算法采用运动预测和运动补偿来完成。对某些特定的块, 在一个或多个已经进行了编码的帧执行搜索来决定块的运动向量,并由此在后 面的编码和解码中预测主块。 4 采用剩余空间冗余技术,对视频帧里的残留块编码。例如:对于源块 和相应预测块的不同,再次采用转换、优化和熵编码。 1 1 2 本文研究的主要方向 本文研究的主要是h 2 6 4 熵解码部分。h 2 6 4 有两种熵编码的方式:基于上 下文的自适应变长码( c o n t e x t b a s e da d a p t i v ev a r i a b l el e n g t hc o d i n g ,c a v l c ) 和基于上下文的自适应二进制算术编码( c o n t e x t b a s e da d a p t i v eb i n a r y a r i t h m e t i cc o d i n g ,c a b a c ) ;如果不是预测残差,h 2 6 4 采用e x p g o l o m b 码或 c a b a c 编码。c a b a c 是可选项,其编码性能比u v l c 稍好,但计算复杂度也高。 本文中主要介绍的是u v l c 熵解码的实现,包括定长解码、哥伦布解码和 c a v l c 解码。其中定长解码可以通过从码流中读取固定长度的比特流来实现。 哥伦布解码则分为无符号哥伦布解码、有符号哥伦布解码等。c a v l c 解码用来 编码像素残差。关于这几部分会在后边的章节中详细介绍。 1 2 研究的背景和意义 目前消费类电子产品的巨大需求市场不断推动着媒体处理芯片的飞速发 展,其中的视频技术的应用也得到了发展。目前与视频相关的消费类电子的市 场主要包括:m p 4 、手机电视、数字电视等。其中数字电视应用的发展更是推 动了国内芯片设计业的发展。随着“中星9 号 在2 0 0 8 年6 月9 日顺利升空,我国 真正意义上的“直播星 时代终于到了。直播星一直是媒体关注的热点话题, 按全国2 0 户以上的7 1 6 万个自然村,每个村以2 0 户、每台接收设备以3 0 0 元计算 一一仅“村村通 带来的终端硬件销售额就近4 3 亿元。“中星九号”直播卫星发 射成功给我国卫星数字电视的发展带来了良机同时也为中国芯片设计行业带来 的前所未有的机遇,数字电视芯片产品的需求量与日剧增。国内也涌现了一批 优秀的数字电视芯片设计相关的企业,如:杭州国芯科技公司、北京中天联科、 海尔集成电路设计公司等。 在数字电视系统中主要是面向高清数字电视,采用的主要算法就是h 2 6 4 视频标准【4 1 。h 2 6 4 最大的优势是具有很高的数据压缩比率,在同等图像质量的 条件下,h 2 6 4 的压缩比是m p e g 2 的2 倍以上,是m p e g 4 的1 5 2 倍。举个例 子,原始文件的大小如果为8 8 g b ,采用m p e g 2 压缩标准压缩后变成3 5 g b , 压缩比为2 5 :1 ,而采用h 2 6 4 压缩标准压缩后变为8 7 9 m b ,从8 8 g b 到8 7 9 m b , h 2 6 4 的压缩比达到惊人的1 0 2 :l 。和m p e g 一2 和m p e g 4a s p 等压缩技术相比, h 2 6 4 压缩技术将大大节省用户的下载时间和数据流量收费。尤其值得一提的 是,h 2 6 4 在具有高压缩比的同时还拥有高质量流畅的图像。 2 h 2 6 4 是在m p e g 一4 技术的基础之上建立起来的,其编解码流程主要包括5 个部分:帧间和帧内预测、变换和反变换、量化和反量化、环路滤波、熵编码。 h 2 6 4 m p e g 一4a v c ( h 2 6 4 ) 是1 9 9 5 年自m p e g 2 视频压缩标准发布以后 的最新、最有前途的视频压缩标准。h 2 6 4 是由i t u t 和i s o i e c 的联合开发组 共同开发的最新国际视频编码标准。通过该标准,在同等图像质量下的压缩效 率比以前的标准提高了2 倍以上,因此,h 2 6 4 被普遍认为是最有影响力的行业 标准。 鉴于h 2 6 4 作为全球通用标准的优势,国内大部分企业在部署新的视频应用 时都有可能采用h 2 6 4 ,并且,正因为应用的广泛性,h 2 6 4 的相关设备价格将 会迅速下降,部署成本也将因此得以降低。 我国的广电系统和电信运营商曾经将h 2 6 4 作为主要的推动方向,并取得了 一系列的成绩。在目前电信已经实行运营的i p t v 项目中,几乎全部采用了h 2 6 4 ; 广电系统的各大电视台在从模拟向数字转换,以及网络双向改造中,也大量采 用了h 2 6 4 技术标准。 1 3a 2 6 4 中熵解码器研究综述 因为熵解码器中对解码速度起到制约性的模块在于c a v l c 部分,所以目前 对于熵解码器的研究主要集中在c a v l c 解码器的实现上。c a v l c 的解码过程就 是一个将元素重组的过程,根据码流解码出不同的元素,在将解码的元素重新 组成一个4 x 4 或2 x 2 的像素残差的过程。 很多文章都提出了c a v l c 解码时的硬件结构,如参考文献【13 1 7 1 【1 9 ,但 采取的结构中都是串行操作,没有把硬件实现时,并行性的优势体现出来,本 文中采用了两级流水结构,通过这样的操作提高了解码速度。 在用硬件电路实现c a v l c 解码器时,很多研究者提出了优化方法,来降低 资源消耗提高解码效率。尤其在对元素“c o e f ft o k e n ”元素的解码上,有很多 的文章出现: ( 1 ) 参考文献【1 】,提出了一种基于首一检测的方式,以码流中首一的位置 和首一后比特流作为地址,通过这种做发减少了存储资源的消耗,但 还是有存储器资源的冗余,同时由于再对高频码字的计算式引入了乘 法器,所以会对时钟频率造成影响。 ( 2 ) 参考文献【2 】中,提出的存储策略比【1 】略少,但其没有对高频码字的解 码进行探讨。 ( 3 ) 参考文献 1 5 】,提出了一种基于二叉树的解码方式,通过自动码表分配 技术和码表地址转移技术来提高新丁存储空间条件下的解码速度。但 这中方式更适合于软件实现。 本文对于元素“c o e f ft o k e n 的解码采用了新的存储策略,对高频码字的 3 解码采用选择器实现避免了乘法器的引入,具体将在后面的章节介绍。 1 4 本文的主要工作 本文主要完成了h 2 6 4 熵解码器的设计和f p g a 实现,通过对标准的分析找 出合适硬件实现的结构,通过合理划分单元、流水线结构、优化关键模块等工 作优化了熵解码器的设计,提高了解码速度,减少了存储器资源的消耗。 并完成了熵解码器的仿真,根据不同的模块采取不同的仿真策略,最后在 整个熵解码器仿真时,将h 2 6 4 码流作为输入比特,完整设计的仿真。将整个熵 解码器整合到一个完整的h 2 6 4 解码器上,并在仿真后,进行f p g a 的原型验证。 在f p g a 实现阶段,通过开发板的v g a 接口,连接到显示器上,通过观察显示 器,可以实现正确的解码。 具体工作如下: ( 1 ) 完成熵解码器的整体设计:设计了辅助头信息解码模块( 包括序列参数 集、图像参数集、条带头、条带数据、宏块层中的部分参数、运动向量残差的 解码模块) 和像素残差的解码模块。辅助头信息解码模块主要依靠哥伦布解码 模块实现,像素残差的解码模块依靠c a v l c 解码部分实现。通过顶层控制模块 构建成完整的熵解码器。 ( 2 ) 完成了关键模块的优化减少了存储器资源的消耗提高了解码器的解码 速度:在c a v l c 解码器中引入流水线控制,通过合理分配时钟,使得c a v l c 解码器在解码量化系数q p = 2 8 的i 帧时,解码每个宏块需要消耗3 5 0 个时钟周期。 在对c a v l c 解码器中元素 “c o e f ft o k e n 的码表存储方式进行了优化,采用 了新的存储器组织策略,减小了在解码时所需的存储器的资源,比参考文献 1 】 减少了5 4 6 。 ( 3 ) 完成了设计的仿真:整个设计采用v e r i l o gh d l 语言描述,通过m o d e l s i m 软件进行熵解码器的仿真,通过j m 参考软件解码结果对比m o d e l s i m 软件的仿真 结果,完成了熵编码器的仿真工作,并且将其整合到了一个完整的h 2 6 4 解码器 上实现了解码器的正常工作。 ( 4 ) 完成了设计的f p g a 实现:用到的f p g a 开发板采用a l t e r a 的s t r a t i xi i e p 2 s 1 8 0 型号芯片,将整个h 2 6 4 解码器完成仿真后下载到f p g a 芯片中,通过 显示器做出输出显示设备,实现了正常的解码。其中熵解码器模块单独综合的 频率可达到1 2 3 m h z 。按其解码的平均时钟周期来看,在频率能达到1o o m h z 的情况下,熵解码器部分可满足1 9 2 0 x 1 0 8 8 ,3 0 f v s ,q p = 2 8 的视频序列的解码。 1 5 本文的章节安排 第一章简述论文研究的背景、意义以及理论依据。探讨了目前国内视频技 术应用和研究的前景和市场。 4 第二章介绍了熵编码的基本算法,为后边解码算法提供理论依据。 第三章介绍了熵解码器的整体结构。 第四章介绍定长解码和哥伦布解码模块的设计。 第五章介绍了c a v l c 解码模块的设计。 第六章介绍了熵解码器的功能仿真和f p g a 实现过程。 第七章为总结和展望。 第二章h 2 6 4 熵编码原理简介 本章主要讲述了熵编码的原理,包括哥伦布编码和c a v l c 编码。通过本 章的介绍,让读者对h 2 6 4 熵编码部分有个简单了解。 2 1h 2 6 4 熵编码简介 视频中熵编码主要用来对需要存储或传输的数据利用信源的统计特性进行 码率压缩,用常见的统计压缩技术对数据进行处理达到低码率的目的。使用熵 编码的数据有三类:辅助头信息、d c t 变换系数、运动向量残差。熵编码通过 输入符号集合中冗余的信息,达到压缩数据的目的。 h 2 6 4 视频标准中有两种熵编码“c a v l c 熵编码;c a b a c 熵编码。本文 中主要讨论c a v l c 熵编码。其中c a v l c 熵编码是简称,它包括三个部分:定 长编码、哥伦布编码和c a v l c 编码。h 2 6 4 码流中的图像参数集、序列参数集、 条带头信息和宏块头信息( 宏块类型和运动向量等) 均采用定长编码和哥伦布 编码。d c t 变换系数则采用c a v l c 编码。下面分别介绍这几种熵编码。 2 2 定长编码和哥伦布编码 2 2 1 变长编码 定长编码出现在图像参数集、序列参数集、条带头信息和宏块头信息中。 对相应的码流元素采用固定的比特编码,是十分简单的编码方式,用在出现频 率不高的码流元素中。 2 2 2 哥伦布熵编码 哥伦布编码【4 1 【2 7 1 分为无符号哥伦布编码、有符号哥伦布编码、映射哥伦布 编码和舍位哥伦布编码。 以无符号哥伦布编码为

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论