(信号与信息处理专业论文)h264硬件编码技术研究及整数变换量化的实现.pdf_第1页
(信号与信息处理专业论文)h264硬件编码技术研究及整数变换量化的实现.pdf_第2页
(信号与信息处理专业论文)h264硬件编码技术研究及整数变换量化的实现.pdf_第3页
(信号与信息处理专业论文)h264硬件编码技术研究及整数变换量化的实现.pdf_第4页
(信号与信息处理专业论文)h264硬件编码技术研究及整数变换量化的实现.pdf_第5页
已阅读5页,还剩61页未读 继续免费阅读

(信号与信息处理专业论文)h264硬件编码技术研究及整数变换量化的实现.pdf.pdf 免费下载

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

文档简介

h 2 6 4 硬件编码技术研究及整数变换量化的实现 摘要 h 2 6 4 是新一代的视频编码标准,它具有码率低、图像质量高、容错能力 强、网络适应性强等特点。h 2 6 4 在视频会议、视频点播、数字电视和手持视 频应用中有非常广阔的应用空间。由于h 2 6 4 是新的视频编码标准,编解码 过程中的算法选择和实现并不是很完善,在性能上还有较大的提升空间。因此 研究h 2 6 4 编解码器的关键算法以及这些算法在硬件实现上的优化对于推动 h 2 6 4 的应用具有重要的现实意义。 h 2 6 4 较高的算法复杂度严重地影响了其在实时环境下的应用,目前使用 软件的方法已经很难实现高清视频的实时编码。本文对h 2 6 4 进行了编码复杂 度分析,并统计了整个软件编码中计算量的分布,其中帧间预测和整数变换量化 占用了大量编码周期。为了实现实时编码,本文研究了h 2 6 4 编码器的f p g a 实现方案,首先分析h 2 6 4 硬件编码系统的结构和特点。针对高清视频实时编 码提出了一种多总线s o p c 的硬件编码系统结构,并对功能实现进行了软硬件划 分。根据h 2 6 4 硬件编码系统的功能特点,本设计结合流水线技术对编码器软 核的功能模块进行了划分。在此基础上,构建了基于p o w e r p c4 0 5 嵌入式处理 器的h 2 6 4 硬件编码系统,并将p o w e r p c4 0 5 的最小系统在v i r t e x i ip r of p g a 上进行了实现。 最后,本文将h 2 6 4 中频繁调用的整数变换量化模块进行了硬件实现。综 合结果和性能分析结果表明,本文设计的h 2 6 4 整数变换模块具有快速的特 点,在保证性能的前提下,达到了实现简单、成本低的目标。希望本文研究分 析的方法和所得成果,能对以后h 2 6 4 硬件编码设计有一定的参考作用。 关键词:h 2 6 4 ,实时视频编码,s o p c ,整数变换,量化 h 2 6 4h a r d w a r ee n c o d i n gr e s e a r c ha n di m p l e m e n t a t i o no f i n t e g e rt r a n s f o r ma n dq u a n t i z a t i o n a b s t r a c t h 2 6 4i st h en e wg e n e r a t i o no fv i d e oc o d i n gs t a n d a r d t h en e ws t a n d a r dh a s c h a r a c t e r ss u c ha sl o wb i tr a t e ,h i g hq u a l i t yp i c t u r e ,s t r o n ge r r o rf i xa b i l i t ya n d n e t w o r ka d a p t i v ea b i l i t y i tw i l lb eu s e di nv i d e oc o n f e r e n c e ,v i d e oo nd e ma n d , d i g i t a lt va n dh a n d h e l dd e v i c e b e c a u s eh 2 6 4i st h en e wv i d e oc o d i n gs t a n d a r d , t h es e l e c t i o na n di m p l e m e n t a t i o no ft h ea l g o r i t h mh a sn o tb e e nw e l lo p t i m i z e d t h e r ea r eal o to f o bh a st ob ed o n et oi m p r o v et h ep e r f o r m a n c eo ft h eh 2 6 4c o d e r a n dd e c o d e r t h er e s e a r c ho ft h ec r i t i c a la l g o r i t h ma n di t si m p l e m e n t a t i o ni nh 2 6 4 c o d e ra n dd e c o d e ri sv e r yh e l p f u lf o rt h ea p p l i c a t i o no ft h i sn e ws t a n d a r d d u et oi t s h i g h e rc o m p l e x i t y , h 2 6 4a l g o r i t h mi sv e r yd i f f i c u l tt ob ea p p l i e d i nr e a l t i m ee n v i r o n m e n t ,a n dr e a l t i m eh dv i d e oe n c o d i n gi sh a r d l ya c h i e v e d t h r o u g hs o f t w a r ea p p r o a c h i nt h i sp a p e r , c o m p l e x i t yo fh 2 6 4c o d i n gi sa n a l y z e d , a n dc o m p u t a t i o nd i s t r i b u t i o ni sa d d e du p r e s u l t so fw h i c hi n d i c a t et h a ti n t e r f r a m e p r e d i c t i o na n di n t e g e rt r a n s f o r mq u a n t i f i c a t i o no c c u p yal a r g en u m b e ro fc o d i n g c y c l e s i no r d e rt oa c h i e v er e a l t i m ee n c o d i n g ,t h ei m p l e m e n t a t i o no fh 2 6 4 e n c o d e ri nf p g ai ss t u d i e d f o rh i g h d e f i n i t i o nv i d e oi nr e a l t i m ee n c o d i n g ,a h a r d w a r ee n c o d i n gs y s t e mw i t hm u l t i b u sso p ci sp r o p o s e d ,a n df u n c t i o n so f h a r d w a r ea n ds o f t w a r eo ft h i ss y s t e mi sp a r t i t i o n e da p a r t a c c o r d i n gt o t h e c h a r a c t e r i s t i c so fh 2 6 4h a r d w a r ee n c o d i n gs y s t e m s o f t c o r ef u n c t i o nm o d u l eh a s b e e nd i v i d e d ,e m p l o y i n gp i p e l i n et e c h n o l o g y o nt h i sb a s i s ,h 2 6 4h a r d w a r e e n c o d i n gs y s t e mb a s e do np o w e r p c4 0 5e m b e d d e dp r o c e s s o ri sc o n s t r u c t e d ,a n d t h es m a l l e s tp o w e r p c4 0 5s y s t e mi sc a r r i e do u ti nt h ev i r t e x i ip r of p g a i m p l e m e n t a t i o n f i n a l l y , t h i s a r t i c l ew i l l i m p l e m e n t t h eh 2 6 4 i n t e g e rt r a n s f o r m a n d q u a n t i z a t i o nm o d u l e t h er e s u l to ft h es y n t h e s i sa n dp e r f o r m a n c ei n d i c a t e st h a tt h e i n t e g e rt r a n s f o r ma n dq u a n t i z a t i o ni nh 2 6 4i s f a s ta n dw e l lp a r a l l e l i z e d t h e h a r d w a r ei m p l e m e n t a t i o no ft h ei n t e g e rt r a n s f o r ma n dq u a n t i z a t i o ng i v e ni n t h i s r e s e a r c hc a na c h i e v el o wc o s t ,l o w p o w e r , w h i l er e t a i n i n gp e r f o r m a n c e r e q u i r e m e n t s t h er e s e a r c hm e t h o d o l o g ya n da c h i e v e m e n t si n t h i st h e s i s c a nb e r e f e r e n c et of u t u r eh a r d w a r ed e s i g nf o rh 2 6 4h a r d w a r ee n c o d e r k e y w o r d s :h 2 6 4 ,r e a l t i m e v i d e o e n c o d i n g ,s o p c ,i n t e g e r t t r a n s f o r m , q u a n t i z a t i o n 插图清单 图1 1v i r t e x i if p g a 基于p o w e r p c 解决方案2 图1 2d s p 处理器执行机制4 图1 3 串行乘加器4 图1 4 并行乘法器5 图1 5 多种实现结构和优化指标5 图1 6 多处理器方案6 图1 7 单处理器与加速器结构6 图1 8 微控制器与编码器结构7 图2 1h 2 6 4 编码器1 1 图2 2h 2 6 4 帧间预测编码的算法流程图1 3 图2 3h 2 6 4 整数变换的蝶形运算过程1 4 图2 4c p u 加硬件加速器的s o p c 体系结构1 5 图2 5 硬件加速单元编码系统1 6 图2 6 单总线硬件编码体系结构1 7 图2 7 多总线硬件编码体系结构17 图2 8h 2 6 4 硬件编码器体系结构1 8 图2 9 采用流水线技术的任务操作2 0 图2 1 0 流水线设计原理2 0 图2 1 1f p g a 设计仿真流程一2 1 图2 1 2 一级测试硬件平台2 2 图2 1 3 第三级测试硬件平台2 3 图3 1 系统功能图2 4 图3 2 系统结构框图2 5 图3 3p o w e r p c 4 0 5 处理器体系结构2 7 图3 4o c m 控制器2 9 图3 5a p u 控制器3 0 图3 6 内藏式处理器模式31 图3 7 复杂嵌入式运算模式_ 3 2 图3 8 定制的p o w e r p c4 0 5 处理器及其外围设备3 2 图3 9m p m c 结构框图3 3 图3 1 0 引导程序流程图3 5 图4 1 整数d c t 蝶形快速算法3 9 图4 24 x 4 整数变换3 9 图4 3 量化与尺度伸缩4 0 图4 4 线性量化器4 0 图4 5 有死区的非线性量化器4 1 图4 6 宏块中亮度块序号与其在宏块中位置的对应关系4 3 图4 7 未使用速度换面积的流水线算法4 4 图4 8 使用速度换面积的流水线算法4 5 图4 9 面积换速度实现并行高速处理一4 5 图4 1 0 通过增加流水线级数来提高运行频率一4 6 图4 1 1 完整的f p g a 设计流程4 7 图4 1 2 使用状态机和加速器系统结构图4 9 图4 1 3 纯硬件流水线计算结构4 9 图4 1 4 一维快速变换4 9 图4 1 5 一维d c t 变换仿真结果一5 0 图4 1 6 一维h a d a m a r d 变换仿真结果5 0 图4 1 7 二维d c t 变换仿真结果5 0 图4 1 8 二维d c t 变换v c 输出结果5 1 图4 1 9 二维h a d a m a r d 变换结果5 1 图4 2 0 二维h a d a m a r d 变换v c 输出结果5 1 图4 2 1 量化器硬件结构5 2 图4 2 2 量化器接口关系5 2 图4 2 3 帧间预测模式量化结果5 3 图4 2 4 帧内预测模式量化结果5 3 图4 2 5 直流系数量化结果5 3 图4 2 6 整数变换和量化结合的模块5 4 图4 2 7 验证平台5 4 表格清单 表l i1 多款芯片性能比较5 表2 1 按文件排列的h 2 6 4 编码器复杂度情况1 2 表3 1v i r t e x - i ip r o 系列主要特性2 6 表4 1h 2 6 4 中编解码器量化步长4 1 表4 2h 2 6 4 中m f 值4 2 表4 3 整数变换和量化电路综合结果5 5 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。 据我所知,除了文中特别加以标志和致谢的地方外,论文中不包含其他人已经发表或撰 写过的研究成果,也不包含为获得盒目巴王些太堂 或其他教育机构的学位或证书而使 用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说 明并表示谢意。 学位论文作者签字: 颂磊 签字日期:弘哆年岁月弓7 日 力 学位论文版权使用授权书 本学位论文作者完全了解 金胆王些太堂 有关保留、使用学位论文的规定,有权 保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅或借阅。本人 授权 金胆工业太堂 可以将学位论文的全部或部分论文内容编入有关数据库进行检 索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文者签名:。农磊 签字日期:沙哆年岁月日 学位论文作者毕业后去向: 工作单位: 通讯地址: 导师硌多器澈 垆 p - 解日岬杉耶日 电话: 邮编: 致谢 2 0 0 6 年9 月我进入合肥工业大学t i 联合实验室,转眼间三年过去了,收 获颇多。在这样一个平台上,我得到了很多的锻炼,感谢学校能够给我这个机 厶 石。 值此论文完成之际,我首先要感谢我的导师蒋建国和吴从中老师,他们渊 博的知识、认真的治学态度和对学生的关心让我非常感动。他们在我的学习, 论文课题选择和研究,甚至实习和就业上都给予莫大的帮助。他们的指导、教 诲和帮助将使我终生受益。 感谢计算机学院的各位老师,无论平时的工作、论文的写作、实习就业等 各个方面,你们都给予热情、耐心、细致的指导和帮助。特别感谢齐美彬老师、 尤小泉老师给予我学习和工作上的帮助。 同时感谢嵌入式小组、视频图像小组所有成员,他们营造了良好的学习和 工作环境,这种环境使我开拓了视野,并得到锻炼和学习。特别感谢操龙敏、 常传文、包先雨等师姐师兄对我的具体指导和帮助。 感谢审阅我论文的老师,感谢所有关心和帮助我的人。 最后,我要衷心的感谢我的朋友、家人,谢谢他们对我学习的关心。 作者:项 磊 2 0 0 9 年3 月3 日 第一章概述 1 1f p g a 发展概况 自1 9 8 4 年x ili n x 公司推出了第一片现场可编程逻辑器件( f p g a ) 至今,f p g a 已经历了二十几年的快速发展历程。特别是近几年来,更是发展迅速。f p g a 的 逻辑规模已经从最初的1 0 0 0 个可用门发展到现在的1 0 0 0 万个可用门。随着工 艺技术的发展与市场需求,超大规模、高速、低功耗的新型f p g a 不断推陈出新。 新一代的f p g a 甚至集成了中央处理器( c p u ) 或数字信号处理器( d s p ) 内核,在一 片f p g a 上进行软硬件协同设计,为实现片上可编程系统( s o p c :s y s t e mo n p r o g r a m m a b l ec h i p ) 提供了强大的硬件支持。 f p g a 技术结合了微电子技术、电路技术、e d a 技术,使设计者可以集中精 力进行所需逻辑功能的设计。与专用集成电路a s i c ( a p p lic a t i o ns p e c i f i c i n t e g r a t e dc i r c u i t ) 相比,f p g a 具有更高的灵活性。 v i r t e x 系列f p g a 是x “i n x 公司最新推出的高端f p g a 产品。它无缝嵌入 p o w e r p c 4 0 5 硬处理器i p 内核、r o c k e t i o 多吉比特收发器( m u l t 卜g i g a b i t t r a n s c e i v e r ,m g t ) 、其中r o c k e t i o 传输。x i l i n x 的v i r t e x 系列f p g a 实现了 在蜂窝基站、高端网络与存储设备、广播视频以及测试和测量设备中的许多前 沿应用。 随着芯片设计工艺水平的不断提高,f p g a 技术呈现出以下4 个主要发展动 向。 l 、基于f p g a 的嵌入式系统( s o p c ) 技术正在成熟 s y s t e mo nc h i p ( s o c ) 技术在芯片设计领域被越来越广泛地采用,而s o p c 技术是s o c 技术在可编程器件领域的应用。这种技术的核心是在f p g a 芯片内部 构建处理器。x i l i n x 公司主要提供基于p o w e r p c 的硬核解决方案,而a 1 t e r a 提供基于n i o sii 的软核解决方案。如图1 1 所示,是v i r t e x i if p g a 基于 p o w e r p c 解决方案的内部结构图。 图1 1v i r t e x i if p g a 基于p o w e r p c 解决方案 2 、f p g a 逐渐成为数字信号处理系统的核心载体 无线通信、软件无线电、高清影像编辑和处理等领域,对信号处理所需要 的计算量提出了极高的要求。传统的解决方案一般是采用多片d s p 并联构成多 处理器系统来满足需求。但是多处理器系统带来的主要问题是设计复杂度和系 统功耗大幅度提升,系统稳定性受到影响。f p g a 支持并行计算,而且密度和性 能都在不断提高,在数字通信、网络、视频和图像等应用领域,f p g a 已经成为 数字信号处理系统的核心器件。如今的f p g a 不仅包括查找表、寄存器、多路复 用器、分布式块存储器,而且嵌入了专用的快速加法器、乘法器和输入输出设 备。现代f p g a 的存储带宽已经远远大于时钟频率,超过常规处理器的2 1 0 倍,而且f p g a 具有实现高速并行运算的能力,这就使得f p g a 成为高性能数字 信号处理器的理想器件,如在数字滤波、快速傅立叶变换等方面。很多电信公 司在高性能数字信号处理方面都采用f p g a ,其中3 g 无线通信就不仅采用传统 的微处理器和d s p ,还采用了f p g a 和专用集成电路( a s i c ) 。 例如,实现高清视频编码算法h 2 6 4 ,采用t i 公司1 g h z 主频的d s p 芯片 需要4 颗芯片,而采用x i l i n x 公司的v i r t e x 芯片只要l 颗就可以完成相同任 务。并且f p g a 的实现流程和a s i c 芯片的前端设计相似,有利于导入芯片的后 端设计。 3 、f p g a 芯片向高性能、高密度、低压和低功耗的方向发展 随着芯片生产工艺不断提高,f p g a 芯片的性能和密度都在不断提高。早期 的f p g a 主要完成接口逻辑设计。现在的f p g a 正在成为电路的核心部件,完成 关键功能。 在高性能计算和高吞吐量i o 应用方面,f p g a 已经取代了专用的d s p 芯片, 成为最佳的实现方案。 随着f p g a 性能和密度的提高,功耗也逐渐成为了f p g a 应用的瓶颈。虽然 2 f p g a 比d s p 等处理器功耗低,但是要明显高于专用芯片( a s i c ) 的功耗。f p g a 厂家也在采用各种新工艺和技术来降低f p g a 的功耗,并且已经取得了明显的效 果。 4 、基于i p 库的设计方法 未来的f p g a 芯片密度不断提高,传统的基于h d l 的代码设计方法很难满足 超大规模f p g a 的设计需要。随着专业的i p 库设计公司不断增多,商业化的i p 库种类会越来越全面,支持的f p g a 器件也会越来越广泛。 做为f p g a 的设计者,主要的工作是找到适合项目需要的i p 库资源,然后 将这些i p 整合起来,完成顶层模块设计。由于商业的i p 库都是通过验证的, 因此整个项目的仿真和验证工作主要就是验证i p 库的接口逻辑设计的正确性。 5 、f p g a 的动态可重构技术 f p g a 动态重构技术主要是指对于特定结构的f p g a 芯片,在一定的控制逻 辑的驱动下,对芯片的全部或部分逻辑资源实现高速的功能变换,从而实现硬 件的时分复用,节省逻辑资源。由于密度不断提高,f p g a 能实现的功能越来越 复杂。f p g a 全部逻辑配置一次需要的时间也变长,降低了系统的实时性。局部 逻辑的配置功能可以实现“按需动态重构”,大大提高了配置的效率。 动态可重构的f p g a 可以在系统运行中对电路功能进行动态配置,实现硬件 的时分复用,节省了资源,主要适用于以下两个系统设计: 最新通信系统 f p g a 的动态重构特性可以适应不同体制和不同标准的通信要求,满足软件 无线电技术的发展和第三代( 3 g ) 和第四代( 4 g ) 移动通信系统的需要。 重构计算机:f p g a 具有并行处理能力和动态配置能力,可自动改变硬 件来适应正在运行的程序,产生了基于这种软硬件环境的全新概念的计算机。 1 2 使用f p g a 进行数字信号处理的优势 传统的数字信号处理系统大多使用d s p 处理器实现,由于d s p 处理器具有 较高的系统时钟频率以及专用的乘加计算模块等资源,使得d s p 处理器适合于 实现数字信号处理系统,d s p 处理器实现机制如图1 2 所示 3 从程序存储器中读取指令,有相当数量的 控制程序流程指令并不直接用于实现设计要求 与外界通讯以及和 其他处理器的连接 算术逻辑单元支持多 种功能的算术单元 但同时仅有一个动作 算术逻辑单元中包 含有一种或多种固 定结构的算术单元 当前并不使用但必 须保持的数据 图1 2d s p 处理器执行机制 但由于d s p 处理器在运行时是按指令顺序执行的,且数据位宽度也是固定 的,因而资源的利用率不高,限制了处理器数据吞吐量,还需要较大的存储空 间。并且当信号频率和d s p 处理器的系统频率比较接近时,难以实现较复杂的 设计要求。 比如实现一个2 5 6 拍的f i r 滤波器,利用d s p 处理器内部的乘加单元( m a c ) , 由于一个时钟周期内d s p 处理器仅能完成一次乘加运算,因此一次数据采样完 成后d s p 处理器需要2 5 6 个时钟周期后才能给出相应的计算结果,对系统的采 样率有极大影响,难以开发出高速的数字信号处理系统,如图1 3 所示 图l - 3 串行乘加器 根据大量的工程经验数据可知。算法的复杂程度可以通过算法用到的系数 个数来体现。在使用同一个d s p 处理器的情况下,算法越复杂,能够获得的最 大采样率越低,并且一个中等复杂的算法对采样率的限制已经非常大。要提高 处理速度最直观的方法就是采用多个处理器或选用时钟频率更高的器件,但效 果并不明显,同时带来高成本、高能耗等问题。 f p g a 处理数据的方式是基于硬件的并行处理方式,并且可以根据设计要求 任意配置硬件结构。同样以实现2 5 6 拍的f i r 滤波器为例,假如采用如图1 4 所示的硬件结构,采用并行的数据处理方式。2 5 6 次乘加运算可以在一个时钟 内完成,相对于之前用d s p 处理器实现方式具有更大的数据吞吐量。 4 图1 4 并行乘法器 多款芯片性能对比如表1 1 所示 表1 1 多款芯片性能比较 功能工业用最高速v i r t e x - 2v i r t e x - 2p r os p a r t a n 。3 d s p 处理器 8 8 乘加器5 1 0 9 m a c s0 5 1 0 1 2 m a c s1 1 0 1 2 m a c s 0 2 7 x 1 0 1 2 m a c s f i r 滤波器 一2 5 6 拍1 1 1 6 m s p s1 8 0 m s p s3 0 0 m s p s1 4 0 m s p s 一1 6 位宽数据7 2 0 m h z ( c l o c k )1 8 0 m h z ( cl o c k )3 0 0 m h z ( c l o c k )1 4 0 m h z ( cl o c k ) 复杂f f t 一1 0 2 5 点8 5 u s0 9 1 4 u s 0 8 5 3 u s 0 o 9 1 4 u s 一1 6 位宽数据7 2 0 m h z ( c l o c k )1 4 0 m h z ( c l o c k )1 5 0 m h z ( c l o c k )1 4 0 m h z ( cl o c k ) 注:0 需要使用9 6 个嵌入式乘法器和2 4 个b l o c kr a m 。 f p g a 除了具有并行处理的优势之外,还具有极大的灵活性,可以开发出对 设计要求非常具有针对性的硬件结构,如图1 5 所示。同样实现q = ( a b ) + ( c d ) + ( e f ) + ( g h ) ,可以有三种不同的硬件实现结构,如果设计具有较高的 处理速度,可以选择图1 5 最左侧的结构;如果设计要求节省硬件资源,可以 选择图1 5 最右侧的结构,开发人员可以根据系统的要求对设计进行优化。 图1 5 多种实现结构和优化指标 5 1 3t t 2 6 4 硬件编码系统研究现状 f i 2 6 4 视频编码标准的应用正逐步走向深入,目前市场上已经有多种 h 2 6 4 的编解码方案。将这些方案进行归纳后,大约有以下几种: 第一种是多处理器解决方案。在多处理器解决方案中,比较典型的要属于 t i 的o m a p 架构1 。t i 的这种o m a p 结构中使用了两个处理器,分别是a r m 系列 处理器和t i 系列的d s p 。此外芯片中还包括图像、图形的加速器以及一些接口。 在芯片中利用低功耗的a r m 处理器实现接口和控制方面的需要,而d s p 用来增 加芯片对音视频应用中的信号处理能力。这种结构的优点是处理能力突出,支 持多种操作系统,适用较高端的应用。而且这种架构还有一个优点是在此结构 上容易实现多种应用。但这种应用设计复杂度大,多个处理器和加速器导致芯 片面积较大和成本较高。 图1 6 多处理器方案 第二种是单处理器与加速器结构。这种结构是典型的s o c 设计,被众多芯 片设计厂商所采用。在这种设计中一般使用一个r i s c 处理器和若干种视频编解 码加速器。也可以使用视频编码器中一些主要功能模块如变换、运动补偿、运 动估计等作为硬件加速器代替完整的编解码器。其中的r i s c 处i 理器使用较多 的主要有a r m 系列和m i p s 系列处理器。r i s c 处理器主要用于接口和控制,视 频编解码应用则使用专门的加速器来提高处理速度。这种设计是成本和应用之 间折中的结果。在这样的芯片上,可以实现不同的编解码应用而且设计的复杂 度和成本相对第一种结构来说比较低。目前市场上基于这种架构的编解码器较 多川 燃 卜叫鬻 刍卤 卜一编淼熊 图1 7 单处理器与加速器结构 第三种是微控制器与编解码器结构。这种设计往往针对某一种编解码标准。 6 微控制器用来控制,视频编解码用专用硬件完成。在这种结构中由于编解码操 作全部由硬件完成,微控制器能处理人机界面、网络通信、视频播放等多种功 能,能够适应多种复杂的应用。 图1 8 微控制器与编码器结构 由于h 2 6 4 本身的复杂性,前两种方案往往芯片面积较大、实时性不够理 想,特别是对于1 9 2 0 1 0 8 0 3 0 f p s ( 帧秒) 的高清视频图像采用d s p 方案几乎 不可能完成。为了解决高清视频图像的实时处理,解决h 2 6 4 编码标准所用算 法的计算复杂度以及算法和数据并行性等要求,第三种方案一一“全硬件化” 实现h 2 6 4 的编解码功能已经成为了目前业界的研发潮流。 下面介绍几款已面市的h 2 6 4 硬件编码器: l 、a t e m e 公司的h 2 6 4 编码i p 核 h 2 6 4i p 开发商a t e m e 已发布基于a l t e r a 的s t r a t i xi if p g a 和德州仪器 t m s 3 2 0 c 6 4 xd s p 的混合结构编码器。其中h 2 6 4 产品中最出色的是运动估计i p 模块,可支持1 0 2 4 点的运动搜索( 但该模块不支持4 4 模式,且没有采用片夕b d d r 存储器,因此对1 0 8 0 i ( 1 0 8 0 p ) 高清视频格式的处理还有待进一步提高。但部分 编码器在环路滤波处理功能上对色度信号的滤波较差。 2 、台湾创意电子的h 2 6 4 编解码器 采用全a s i c 实现,功耗只有1 w 左右,符合b a s e l i n ep r o f i l e 及l e v e l 1 3 标准,可支持最高7 2 0 p ( 1 2 8 0 7 2 0 ) ,8 m b i t s 及3 0 f s 的视频编解码。该编码器 采用四级流水,将整数运动估计和分数运动估计分开设计,降低了运动估计计 算的复杂度,但同时造成搜索模式选择上不够灵活,只能完成8 8 块搜索、比 较和s a d 运算,编码部分完全用硬件实现,实时性较好,但不能处理1 0 8 0 i 高清 格式的视频图像。 1 4 使用硬编码系统的优势 传统的通用处理器核以及d s p 核有很多用处,并且显然是有可能通过大量 的传统处理器核构成大型信号处理系统。但是数据的吞吐率需求不断上升,通 用处理器和d s p 显然已经无法达到所需的速度。对多数数据密集型应用,高性 能和高吞吐率的唯一可行的解决方案是硬件连线逻辑设计。 通用处理器和d s p 架构的速度不够快,这是因为它们只用于实现普通的操 作,通常是对8 位、1 6 位、3 2 位整数进行基本的算术、逻辑、移位和比较操作, 并且每个时钟周期完成一个或稍多的基本操作。对有些应用来说,这种通用性 7 和中等水平的性能表现已经完全够用了。比如在用户界面应用,只需要跟上用 户手指的速度,因此,当前的通用处理器的性能已经可以很好的满足需要。最 新的r i s c 处理器也可以处理协议堆栈、低分辨率图像操作和低带宽信号处理。 当应用任务完全符合通用处理器和d s p 的性能范围时,系统设计过程就会受益, 并且能够高度容许后来的设计变化和客户需求。 但是,通用处理器和d s p 的性能不足以完成绝大多数要求很高的信号、图 像、协议、安全和其他数据密集型处理任务。如蜂窝式电话、d s l 调制解调器、 高性能路由器、交换机和数字电视等,都使用专用处理器或硬连线逻辑电路以 完成要求极高的图像、信号和信息包处理功能。此外,很多应用领域中的数据 处理需求要比基本的处理器性能的增长速度快的多。 传统的处理器和d s p 无法跟上数据密集型应用的需求,这是因为它在设计 的时候是以通用性为目标的。极致的处理器设计技术一一指令的推测、乱序的 执行、激进的高功率电路设计,以及高电流晶体管的使用等,都会提高处理器 的绝对性能水平,但是在硅的面积和功耗方面要付出高昂的代价。因此,通用 处理器越来越不能满足数据密集嵌入式应用的性能和效率需求。 相比而言,嵌入式子系统的设计者通常清楚的了解其应用类型和需要的运 算能力。他们考虑的是实际应用的基本计算和通信需求。高效的吞吐率的驱动 和通用处理器的不足使得s o c 设计者对数据密集型应用看起来只能做出一种选 择:硬连线设计。和标准的微处理器相比,硬连线设计可以更加直接地充分利 用硬件的并行处理潜力。如果子系统对视频数据流或一个声音样本序列,或者 一个加密的数据模块进行操作,设计者可以将基本的媒体编解码、语音滤波或 数据流解密等体现数据类型和功能的本质特征加入硬件。 1 5 实现h 2 6 4 硬件编码器工具介绍 1 5 1i s e 开发环境介绍 i s e 是x i l i n xf p g a c p l d 的综合性集成设计平台,该平台集成了从设计 输入、仿真、逻辑综合、布局布线与实现、时序分析、芯片下载与配置、功率 分析等几乎所有设计流程所需要的工具。 1 5 2s o p c 开发工具介绍 e d k 是x i li n x 公司于2 0 0 3 年推出的f p g a 片内3 2 位嵌入式处理器开发工 具集。它为设计人员提供了一套丰富的设计工具和广泛的标准外设,以进行基 于m i c r o b a l z e 处理器软核以及p o e r p c 处理器硬核的嵌入式处理器系统的开发。 在此工具中集成了大量的i p 核资源、硬件平台产生器、硬件仿真模型产生器、 软件平台产生器、应用软件编译工具、软件调式工具等等。用户可以通过集成 在e d k 中的x p s ( i1i n xp l a t f o r ms t u d i o ) w i n d o w s 的图形界面下,方便地调用 各种工具,完成整个s o p c 系统的开发,并且软硬件的开发可以同时进行埔1 。 8 1 5 3 仿真工具介绍 m o d e l s i m 是m o d e lt e c h n o l o g y ( m e n t o rg r a p h i c s 的子公司) 的h d l 硬件描 述语言仿真软件,它的内核支持v h d l 、v e r i l o gh d l 和s y s t e m c 混合仿真的仿 真器,同时也支持许多标准如v e r il o g2 0 0 1 ,s y s t e mv e r il o g 等,内部集成了 用于c c + + ,p l i f l i 和s y s t e m c 的集成c 调试器。m o d e l s i m 支持众多的a s i c 和f p g a 厂家库,可以用于f p g a 和a s i c 设计的r t l 级和门级电路仿真。相对于 大多数h d l 仿真软件来说,m o d e l s i m 在仿真速度和仿真精度上也有明显的优势。 m o d e l s i m 的最大特点是其强大的调试功能:先进的数据流窗口,可以迅速 追溯到产生不定或者错误状态的原因;性能分析工具帮助分析性能瓶颈,加速 仿真;代码覆盖率检查确保测试的完备;多种模式的波形比较功能;先进的 s i g n a ls p y 功能,可以方便地访问v h d l 或者v h d l 和v e r il o g 混合设计中的底 层信号;支持加密i p ;可以实现与m a t l a b 的s i m u li n k 的联合仿真。 1 5 4 综合工具选择 x s t 是又i l i n xi s e 自带的综合工具。虽然x i l i n x 设计综合软件的经验还 不够丰富,但只有x i li n x 自己对其芯片内部结构最为了解,它的一些优化策略 是其它一些综合工具所无法比拟的。所以对于采用x i li n x 芯片的情况下,采用 x s t 作为综合工具是最好的选择。 1 6 主要工作及论文结构 1 6 1 主要工作 本课题将结合数字视频编码标准h 2 6 4 和s o p c 系统,对其中关键技术进行 研究。包括: l 、在分析h 2 6 4 编码复杂度的基础上,结合s o p c 技术灵活、高速的特征, 设计了一种适合高清视频实时编码的硬件编码系统方案。然后结合这种硬件编 码系统方案的特点,设计了适合实时编码系统的h 2 6 4 硬件编码器软核,并对 其结构进行了阐述。最后给出了该编码器软核的验证步骤。 2 、在分析h 2 6 4 编码系统功能和特点的基础上,对功能的实现进行了合理 的软硬件划分。在此基础上,构建了基于v i r t e x - i ip r op o w e r p c4 0 5 嵌入式 处理器的h 2 6 4 视频编码系统的总体结构,并对c p u 核心系统进行了实现。 3 、在充分理解h 2 6 4 硬件编码系统的基础上,本文对h 2 6 4 编码系统中频 繁调用的d c t 变换量化模块在f p g a 中进行了实现。作为抛砖引玉,希望能为下 一步工作打开思路。 1 6 2 关键问题 1 、h 2 6 4 硬件编码器系统结构设计; h 2 6 4 具有极高的编码复杂性,尤其是在高清实时视频的编码应用中,软 9 件编码已经很难达到优秀的编码效果。s o p c 系统兼具软件灵活性和硬件并行性 的特点,适合于h 2 6 4 硬件编码系统的设计。设计一种兼具高效和灵活的h 2 6 4 硬件编码系统是本设计关键问题之一。 2 、p o v e r p c4 0 5 最小系统设计; p o w e r p c4 0 5 最小系统提供了运行编码控制程序的基本平台。而在最小系 统的设计中,需要理解处理器的寄存器、指令、中断系统以及编译器和程序在 存储器中的存储方式。 3 、d d rs d r a m 接口实现; f p g a 内部提供了少量的b l o c k r a m ,在处理图像数据时,f p g a 内部的r a m 远远不能满足需求,因此必须在f p g a 外部扩展d d rs d r a m 。d d rs d r a m 控制器 用来连接内部p l b 总线和d d rs d r a m 。p l b 总线和d d rs d r a m 复杂的时序决定了 d d rs

温馨提示

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

评论

0/150

提交评论