(计算机系统结构专业论文)支持多媒体计算的可重构cache研究与设计.pdf_第1页
(计算机系统结构专业论文)支持多媒体计算的可重构cache研究与设计.pdf_第2页
(计算机系统结构专业论文)支持多媒体计算的可重构cache研究与设计.pdf_第3页
(计算机系统结构专业论文)支持多媒体计算的可重构cache研究与设计.pdf_第4页
(计算机系统结构专业论文)支持多媒体计算的可重构cache研究与设计.pdf_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

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

文档简介

硕士学位论文 摘要 多媒体计算是目前计算机研究领域的一个热点,其广泛应用于各种嵌入式手 持设备。多媒体计算数据处理量大,并且数据类型多样,性能与其在存储系统中 的表现有密切关系。嵌入式手持设备由于受到尺寸和重量的限制,供电能力有限。 因此,对多媒体计算下存储系统性能和能耗的研究是十分必要的。c a c h e 作为存 储系统的重要一环,极大的缩短了处理器与主存之间的速度差距,并且占据了较 大的芯片面积,是能耗产生的主要来源之一。为了实现高性能低功耗的存储结构, 本文针对多媒体应用程序的特点,提出了三种有效的可重构c a c h e 解决方案。 t b l r c 是一种基于时间片的行可重构c a c h e 方案。多媒体计算一般采用数据 分块策略,分割后的数据块具有良好的空间局部性。针对这一特点,该方案提出 了一种邻近行历史访问统计策略,可对时间片内程序空间局部性的变化情况进行 整体估计,通过动态改变置换行大小以适应分割后数据块尺寸,从而充分利用数 据的空间局部性,提高c a c h e 的预取效率。 t b w r c 是一种基于时间片的路可重构c a c h e 方案。当相联度增加时,冲突 失效的减少使多媒体计算的c a c h e 失效率明显下降,但控制逻辑电路的增加使得 c a c h e 命中能耗也随之上升。t b w r c 通过动态改变c a c h e 相联度,以较小的性能 损失,减少较大的系统能耗。该方案提出了一种自适应闽值策略,并且通过对最 少访问路和新增路的命中次数进行统计,为路重构操作提供了较为准确的判断依 据,其重构准确度优于对比模型中的搜索启发算法。 t b l a w r c 是一种基于时间片的行和路可重构c a c h e 方案。它结合了t b l r c 和t b w r c 两种方案的特点,通过修改c a c h e 地址映像规则和引入重构协调机制, 使行重构和路重构策略能够在同一c a c h e 中协同工作。实验结果表明,与前两种 方案相比,t b l a w r c 对性能和能耗均有进一步的优化。 关键词:多媒体计算;可重构c a c h e ;高性能;低功耗 i i 圣丝量堡竺兰兰竺里茎丝呈丝:丝窒主堡墼 a b s t r a c t r e c e n t l y ,m u l t i m e d i ac o m p u t i n gi sad o m i n a t i n gw o r k l o a di nt h er e s e a r c hf i e l d o fc o m p u t e rs c i e n c e i ti sa p p l i c a b l et op r o d u c t i o na n dl i v i n gw i d e l yi ne m b e d d e d s y s t e m s m u l t i m e d i ac o m p u t i n gn o r m a l l yh a sl a r g ed a t as e t sa n dv a r i o u sd a t at y p e s , t h e r e f o r e ,t h eb e h a v i o ro fm e m o r ys y s t e mh a sas t r o n ge f f e c to nt h ep e r f o r m a n c e a s t h ee m b e d e dd e v i c e s a b i l i t yo fp o w e rs u p p l y i n gi ss t r i c t l yl i m i t e db ys i z ea n dw e i g h t , i ti s n e c e s s a r yt or e s e a r c h o np e r f o r m a n c ea n dp o w e rc o n s u m p t i o ni nm e m o r y a r c h i t e c t u r ew h i c hs u p p o r t sm u l t i m e d i ac o m p u t i n g a st h eb r i d g eb e t w e e np r o c e s s o r a n dm e m o r y ,c a c h ep l a y sa ni m p o r t a n tr o l e ,m e a n w h i l ei to c c u p i e sl a r g ec h i pa r e a a n db e c o m e st h em a i ns o u r c eo ft h ee n e r g yc o n s u m p t i o n i nt h ei n t e r e s t so fh i g h p e r f o r m a n c ea n dl o wp o w e rc o n s u m p t i o ni nm e m o r ya r c h i t e c t u r e ,t h r e ek i n d so f c a c h em o d e l sh a v eb e e np r o p o s e d ,w h i c hu s et h er e c o n f i g u r a t i o ns t r a t e g yb a s e do n t h er e q u i r e m e n t so f t h em u l t i m e d i as y s t e m t b l r ci sal i n e r e c o n f i g u r a b l ec a c h eb a s e do nt i m es l i c e m o s to ft h e m u l t i m e d i aa p p l i c a t i o n su s eb l o c k p a r t i t i o n i n ga l g o r i t h m si nw h i c hl a r g ei n p u tf i l e s a r ed i v i d e di n t os m a l lb l o c k s ,a n dt h ed i v i d e db l o c k sh a v eg o o ds p a t i a ll o c a l i t y t h e s t r a t e g yd y n a m i c a l l yc h a n g e sr e p l a c i n gl i n es i z et oa d a p tt ot h es i z eo ft h ed a t ab l o c k t h r o u g ho b s e r v i n gt h er e f e r e n c ef l a g so fa d j a e e n tb a s el i n e s s oi t c a nm a k ef u l lu s e o ft h es p a t i a ll o c a l i t yt or e d u c ec a c h em i s sr a t ea n di m p r o v et h ee f f i c i e n c yo fd a t a p e f e t c h t b w r ci saw a y - r e c o n f i g u r a b l ec a c h eb a s e do nt i m es l i c e 、;v h e nt h e a s s o c i a t i v i t i e si n c r e a s e ,t h ed e c r e a s eo fc o n f l i c tm i s sw i l lr e d u c ec a c h em i s sr a t e , h o w e v e rs r a ma c c e s s e sw i l lc o n s u m em o r ed y n a m i ce n e r g yb e c a u s eo ft h e c o m p l e x i t yo ft h ec o n t r o lc i r c u i t t b w r cd y n a m i c a l l yc h a n g e st h ea s s o c i a t i v i t i e so f c a c h et h r o u g ha n a l y z i n gt h ec h a r a c t e r i s t i c so fd i f f e r e n tp r o g r a mp h a s e si no r d e rt o r e d u c ed y n a m i ce n e r g ys i g n i f i c a n t l yw i t hs m a l lp e r f o r m a n c ed e g r a d a t i o n i nt b w r c , as e l f - t u n i n gt h r e s h o l da l g o r i t h mh a sb e e np r o p o s e d t h r o u g hr e c o r d i n gt h eh i tc o u n t o fl e a s tw a ya n de x t r aw a y ,i tc a np r o v i d ej u d g e m e n tf o rw a y r e c o n f i g u r a t i o n t h e a c c u r a c yo fr e c o n f i g u r a t i o n i nt b w r ci sb e t t e rt h a ns e a r c hh e u r i s t i c si nt h e c o n t r a s t i n gm o d e l t b l a w r ci sal i n ea n dw a yr e c o n f i g u r a b l ec a c h eb a s e do nt i m es l i c e i t c o m b i n e st h ec h a r a c t e r i s t i c so ft b l r ca n dt b w r c e f f e c t i v e l y ,a n di td y n a m i c a l l y 1 1 1 c h a n g e st h ea s s o c i a t i v i t i e sa n dt h es i z eo fr e p l a c i n gl i n e st h r o u g ht h em o d i f i c a t i o no f c a c h ea d d r e s sm a p p i n gr u l ea n dc o o r d i n a t i o no fr e c o n f i g u r a t i o ns t a t em a c h i n e c o m p a r e dw i t ht h et w of o r m e rm o d e l s ,i tc a no p t i m i z eb o t ho fp e r f o r m a n c ea n d p o w e rc o n s u m p t i o n k e yw o r d s :m u l t i m e d i ac o m p u t i n g ;r e c o n f i g u r a b l ec a c h e ;h i g hp e r f o r m a n c e ; l o w p o w e rc o n s u m p t i o n 硕士学位论文 插图索引 图2 1 c j p e g 源码流程图9 图2 2m p e g 算法中的帧1 0 图2 3片上系统存储结构1 2 图2 4 存储器层次结构1 3 图2 5c a c h e 行标记压缩法原理1 6 图3 1不同行大小c a c h e 在m e d i a b e n c h 测试程序中的失效率2 0 图3 2 置换行模式2 1 图3 3 邻近块存储结构示意图2 2 图3 4 行重构状态机状态变化示意图2 3 图3 5t b l r c 整体结构图2 4 图3 6 时间片内工作流程图2 4 图3 7s i m p l e s c a l a r 工具集组成2 6 图3 8s i m p l e s c a l a r 软件架构图2 6 图3 9c a c h e 功耗分析模型2 7 图3 1 0 闽值对c a c h e 失效率的影响一3 1 图3 1 l 阈值对平均行大小的影响3 2 图3 1 2a f s 算法取样策略3 2 图3 1 3 平均访存时间比较图3 3 图3 1 4 平均访存能耗比较图3 4 图3 1 5 不同c a c h e 结构e d p 比较图3 4 图4 1不同相联度c a c h e 在m e d i a b e n e h 测试程序中的失效率3 7 图4 2 路重构状态机状态变化示意图4 l 图4 3 新增路命中统计策略示意图4 2 图4 4t b w r c 整体结构4 4 图4 5不同阈值策略下的t b w r c 失效率比较4 7 图4 6 不同阈值策略下的t b w r c 重构次数比较一4 7 图4 7 平均访存时问比较图4 8 图4 8 平均访存能耗比较图4 9 图4 9不同c a c h e 结构e d p 比较图4 9 图5 1地址映象规则5 3 图5 2类l r u 策略示意图5 4 v i l l 圭丝耋堡竺竺塞竺里里丝呈塑:矍圣量兰茎 图5 3t b l a w r c 重构状态机5 5 图5 4t b l a w r c 整体结构图5 6 图5 5原型系统整体结构图5 7 图5 6 协调策略e d p 比较图5 9 图5 7 平均访存时间比较图6 1 图5 8 平均访存能耗比较图6 1 图5 9 不同c a c h e 结构的e d p 比较图6 2 i x 硕十学位论文 附表索引 表3 i 实验模型中的处理器和存储器参数3 0 表3 2 基准测试程序3 0 表3 31 6 b y t e f i xc a c h e 的存储器平均访存时间3 3 表3 41 6 b y t e f i xc a c h e 的存储器平均访存能耗3 3 表4 1 不同相联度c a c h e 平均访问能耗3 8 表4 2 实验模型中的处理器和存储器参数4 5 表4 3 自适应闽值相关参数设定表4 6 表4 41 6 k 4 w a yc a c h e 的存储器平均访存时间4 8 表4 51 6 k 4 w a yc a c h e 的存储器平均访存能耗:4 8 表5 1 实验模型中的处理器和存储器参数5 9 表5 2t b l r c 模型的存储器平均访存时间6 0 表5 3t b l r c 模型的存储器平均访存能耗6 0 x 湖南大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所 取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任 何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡 献的个人和集体,均己在文中以明确方式标明。本人完全意识到本声明的 法律后果由本人承担。 作者签名:厮嘶日期:) 胡年j , 9 z - 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意 学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文 被查阅和借阅。本人授权湖南大学可以将本学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇 编本学位论文。 本学位论文属于 1 、保密口,在年解密后适用本授权书。 2 、不保密团。 ( 请在以上相应方框内打“”) 作者签名:篇嘶日期:j 唏年5 月斗日 导师签名:多铲丝、日期:2 嵋年s 月 日 硕士学位论文 1 1 课题背景和意义 第1 章绪论 多媒体是指多种信息载体的表现形式和传递方式,它通过计算机将文本、图 形、声音、动画等多种媒体综合起来,结合通信技术,使多种信息建立逻辑连接。 并能对它们进行获取、压缩、加工、存储,形成一个具有交互性的系统。随着芯 片集成度与通信技术的不断进步,多媒体的应用已从p c 扩展到各种嵌入式手持 设备如p d a 、手机、m p 4 等,从简单的文字和图片浏览发展到在线电影、视频会 议。为了推动多媒体产业的发展,i t u 与i s o 联合推出了新一代的音视频压缩标 准h 2 6 4 a v c 。该标准具有低码流、高质量、容错性好、网络适应性强的特点, 在同等图像质量下,其数据量只有m p e g 2 的1 8 ,m p e g 4 的1 3 ,并且提供网络 适应层,使得采用h 2 6 4 编码的文件能够方便的在不同网络中传输,如互联网、 g p r s 、c d m a 、w c d m a 等。与此同时,我国也开发了具有自主知识产权的数字 音视频编解码技术标准a v s t 2 1 。a v s 基于我国创新技术和部分公开技术的自主标 准,编码效率比m p e g 2 高2 3 倍,与a v c 相当,而且技术方案简洁,芯片实现 复杂度低,达到了第二代标准的最高水平。这些新标准的推出对高清数字电视、 移动视频通信、网络流媒体、视频会议和视频监控等多媒体应用领域产生了巨大 的影响。据预测【2 1 ,数字音视频产业将在2 0 0 8 年超过通信产业,在2 0 1 0 年成为 我国国民经济第一大产业。 为了加快多媒体信息的处理速度,许多公司在c p u 芯片中专门扩展了多媒体 功能。如m i c r ou n i t y 、p h i l i p s 等公司将媒体处理器和通用c p u 相结合,扩展了 c u p 的多媒体处理和通信功能。i n t e l 公司推出了带有m m x 技术的处理器,m m x 技术提供了面向多媒体和通信的功能特性。软件方面,传统的操作系统均增加了 适应多媒体的内容,a p p l e 公司的q u i c kt i m e 以及m i c r o s o f t 的w i n d o w s 产品都 具备多媒体处理功能。多媒体制作、采集、播放工具更是层出不穷,如图形图像 工具p h o t o s h o p 、a u t o c a d ,视频播放工具m e d i ap l a y e r 等等。目前,多媒体技 术已经成为计算机研究的一个重要领域。 多媒体计算的一个主要特点是数据处理量大,并且数据类型多样,因此性能 与其在存储系统中的表现有密切关系。另一方面,目前多媒体计算广泛应用于手 机、p d a 、m p 4 等嵌入式设备,这些产品并非一直都有充足的电源供应,通常是 依靠电池供电。由于受系统的尺寸和重量的限制,这些便携式系统的电池供电能 支持多媒体计算的可重构c a c h e 研究与设计 力有限,远远跟不上系统耗电量的增加。因此,对多媒体计算下存储系统性能和 功耗的研究是十分必要的。 在计算机存储层次结构中,c a c h e 作为处理器与主存之问的桥梁,其作用至 关重要。它利用程序的时间局部性和空间局部性,通过从主存中移入部分数据, 极大的缩短了c p u 的访存时间,弥补了c p u 和主存不断增大的速度差距。另一 方面,c a c h e 占据了大量的芯片面积,也带来了较大的能耗。例如:片内c a c h e 分别占用了a l p h a2 1 2 6 4 和s t r o n ga r m 微处理器面积的3 0 和6 0 ,它们的功 耗分别占整个芯片功耗的1 6 和4 3 【3 1 。因此,针对多媒体应用程序的特点,设 计高性能低功耗的c a c h e 结构,具有非常强的现实意义。 1 2 研究内容 多媒体技术是当前计算机研究的一个热点,其广泛应用于p c 机和各类嵌入 式设备。与其他类型程序相比,多媒体计算有其显著特点。因此设计者一般通过 在处理器中加入扩展指令集或协处理器的方式以增强多媒体计算能力,并且还开 发了专为多媒体设计的定制处理器,但存储器结构一直是制约多媒体系统发展的 一个瓶颈。目前提出的多媒体计算下存储结构优化方案,在一定程度上可以改善 程序的性能和功耗,但它们也存在一定的局限性。某些策略结构变化过大,需要 重新进行硬件设计和验证,某些策略仅针对特定的多媒体程序进行局部调整,应 用范围有限。因此,需要根据多媒体程序的整体特点,设计一种适用范围较广, 结构变化相对较小的c a c h e 结构,以满足多媒体发展的需要。 可重构策略是目前高性能低功耗c a c h e 的研究热点之一。由于不同的程序, 甚至同一程序的不同阶段,对c a c h e 的容量、行大小、相联度等参数的需求是不 同的。而传统c a c h e 均是采用固定参数,无法根据程序的不同特性进行调整,因 此不能很好地满足不同程序的需要。可重构c a c h e 通常在程序运行前或运行时对 结构进行自适应调整,如增大容量、关闭c a c h e 闲置部分等等,在性能和能耗上 寻找一个平衡。很多学者提出了相应的c a c h e 模型和可重构c a c h e 算法。 可重构c a c h e 可分为静态可重构c a c h e 和动态可重构c a c h e 。静态可重构 c a c h e 通过模拟软件或硬件预先分析运行程序的最优c a c h e 实现,然后在程序初 始化阶段使用最优结构进行重构,在程序的运行阶段不会对c a c h e 进行改变。静 态重构策略可以根据不同程序的整体特征对c a c h e 进行优化配置,但是无法在程 序运行时根据不同阶段的特点进行相应调整,具有一定的局限性。动态重构正是 是针对这一不足而提出的一种策略,它通过实时统计某些特征值,与相应阂值进 行比较,分析程序段特征是否发生改变。在符合一定条件的情况下,进行重构操 作,从而在更大程度上实现对c a c h e 的优化配置。通常,动态可重构c a c h e 策略 2 的整体性能要优于静态策略,但其设计复杂度要高于后者。 动态可重构c a c h e 策略的关键在于检测程序段特征的变化和c a c h e 结构自适 应策略。换言之,动态可重构策略需要解决两个问题:一是在何种条件下对c a c h e 结构进行调整,二是采取何种方式对c a c h e 结构进行改变。 第一个问题在于如何通过观察特征值的变化判断程序段的改变。程序段可以 认为是程序特性保持相对稳定的连续的一段执行周期,它是静态程序结构和动态 控制流程的一种表现。程序段可定义为粒度和相似度的函数,粒度为取样间隔大 小,相似度用来决定两个间隔的程序段是否相似。相似度由比较的信息格式、差 别公尺、差别阀值构成。比较的信息格式,形如条件分支次数、基本块的执行频 率等等。一般比较信息格式不同,建立的比较模型也就不同。差别公尺用以定义 两个不同间隔取样信息的差别程度。例如,相对距离、算术距离、曼哈顿距离等 等。差别公尺与所用的模型是相互关联的,一种差别公尺通常不会适用于所有模 型。差别阀用于定义差别公尺的比较阈值。差别阀值决定了程序段监测的敏感度。 因此,选择合适的取样粒度、比较信息格式、差别公尺以及差别阈值是进行程序 段检测的关键。 第二个问题在于如何对c a c h e 结构进行自适应重构。c a c h e 的重构策略可以 采用硬件或软件方式实现。硬件实现是通过逻辑电路进行阈值比较和重构判断, 能够方便设计者对c a c h e 结构的优化,其缺点在于附加硬件会带来一定的延时和 能耗。软件实现通常是通过分离的协处理器或是操作系统的低级设备驱动调用来 实现。协处理器模式是将重构程序运行在另一分离的处理器上,不会增加c a c h e 的延时或能耗。但对整个系统而言增加了新的硬件,同样带来了能耗,且协处理 器的增加对许多嵌入式系统来说实现成本过高。在操作系统中加入c a c h e 重构软 件模块可以避免增加额外的硬件开销,但需要占用系统时钟周期。更重要的是, 这需要硬件设计者与操作系统开发商进行协调,硬件设计者必须为不同的操作系 统提供相应驱动,这给硬件开发和以后升级工作增加了额外的负担。对可重构优 化配置的搜索方式也是第二个问题的关键。一种镱略是给所有可能的配置结构分 配一个时问较短的采样段,然后对各个采样段内的相关统计量进行比较从而选 择最优配置改变c a c h e 结构。另一种策略是根据当前统计特征值判断c a c h e 重构 趋势,采用与当前配置相近的结构进行重构操作。前一种策略能够快速找出最优 配置结构,但重构开销较大,适合程序段特征变化较大,且不稳定态较少的程序。 后一种策略重构开销较小,性能较为稳定,能够适应不稳态较多的程序。 如何根据多媒体程序的特点,围绕程序段特征的变化检测与c a c h e 结构的自 适应调整策略这两个基本问题,提出合理有效的可重构c a c h e 设计方案是本文的 研究重点。 支持多媒体计算的可重构c a c h e 研究与设计 1 3 本文的主要工作 多媒体技术是当今计算机领域的一个热点,本文根据多媒体程序的整体特点, 对与之相适应的c a c h e 优化方案进行研究与设计。主要工作可以概括为以下几个 方面: ( 1 ) 介绍多媒体处理器的基本特征,分析几类常见的多媒体程序的算法特 点,并对目前多媒钵应用下的存储黠构优化方案进行归类和讨论。描述可重构 c a c h e 的基本原理,并根据重构类型及其自适应算法的不同进行了分类,对几种 可重构c a c h e 技术进行了比较。 ( 2 ) 从多媒体程序的分块策略出发,提出了一种基于时间片的行可重构 c a c h e 模型t b l r c 。该模型通过统计时间片内邻近行的历史访问记录,动态的改 变置换行大小,从而充分利用多媒体程序数据的空间局部性,降低c a c h e 失效率。 实验表明,该模型能够有效地适应不同多媒体程序以及同一程序不同阶段对 c a c h e 行的需求,与传统固定行c a c h e 模型相比,该模型不仅有效地降低了c a c h e 的性能延时,而且减少了不必要的能耗损失。 ( 3 ) 通过对多媒体程序在不同相联度c a c h e 结构中的性能和能耗进行分析, 提出了种基于时间片的路可重构c a c h e 模型t b w r c 。该模型通过统计时间片 内程序段的特征值,动态地改变相联度,从而以较小的性能损失,减少较大的系 统能耗。实验结果表明,该模型能够优化传统组相联c a c h e 结构,有效支持多媒 体计算。 ( 4 ) 通过对t b l r c 和t b w r c 模型的特点进行分析比较,提出了一种基 于时间片的行和路可重构c a c h e 模型t b l a w r c 。该方案结合了t b l r c 和 t b w r c 模型的特点,通过统计时间片内程序段的各项特征值,在重构状态机的 协调下动态的改变c a c h e 相联度和置换行大小,从而减少了访存时间和系统能耗。 实验结果表明,t b l a w r c 在前面两种模型的基础上,进一步优化了多媒体计算 下的c a c h e 结构。 1 4 论文的结构 全文主要包含六个章节,各章节内容安排如下: 第一章为绪论,主要介绍了多媒体计算下存储系统优化的相关背景和意义, 以及本文的研究内容和所做的主要工作。 第二章介绍了多媒体应用下存储系统优化以及可重构c a c h e 的相关研究工 作。这部分内容包括对多媒体处理器的介绍,对几类常见的多媒体程序算法特点 的分析,对目前多媒体应用下的存储结构优化方案的归类和讨论,以及可重构 c a c h e 技术的介绍。 4 硕士学位论文 第三章从多媒体程序的分块策略出发,根据程序运行过程中不同阶段的空间 局部性强弱,提出了一种基于对间片的行可重构c a c h e 模型t b l r c 。这部分内容 包括t b l r c 算法方案的详细介绍,仿真平台与基准测试程序的比较和选用,以 及模拟实验结果及分析。 第四章从对多媒体程序在不同相联度c a c h e 结构中的性能和能耗分析出发, 提出了一种基于时间片的路可重构c a c h e 模型t b w r c 。这部分内容包括t b w r c 算法原理和方案的详细介绍,以及模拟实验结果和分析。 第五章从t b l r c 和t b w r c 模型的特点和相似性出发,提出了一种基于时 间片的行和路可重构c a c h e 模型t b l a w r c 。这部分内容包括t b l a w r c 算法方 案的介绍,模拟实验结果和分析。 支持多媒体讣算的可重构c a c h e 研究与设计 第2 章多媒体处理及可重构c a c h e 相关研究工作 2 1 引言 为了适应多媒体技术的发展,研究人员提出了多种支持多媒体计算的处理器 结构,其中存储系统的设计往往是整个解决方案的关键。c a c h e 作为存储系统中 的重要一环,可以充分利用程序中数据的空间局部性( s p a t i a l l o c a l i t y ) 和时间局 部性( t e m p o r a ll o c a l i t y ) ,减少处理器和片外主存的数据交换,大大节省数据访 问的延迟和能耗。c a c h e 结构的优化对于提高整个微处理器的工作速度,降低系 统能耗都具有重要意义。本章首先对多媒体处理器的特点进行介绍,提出进行储 存结构优化的必要性,接着对常见的多媒体处理算法进行归类分析,并对目前多 媒体应用下的存储结构优化方案进行讨论,然后描述可重构c a c h e 的工作原理, 并根据其配置策略的不同进行归类分析,最后小结本章。 2 2 多媒体处理器 多媒体通常是指在一个计算系统或应用程序中对静态图片、2 d 或3 d 图形、 动画、音频、视频等多种媒体数据类型的融合【4 1 。简单的说,多媒体计算是处理 视觉和听觉相关数据的程序。与其他类型的程序相比,多媒体应用有其显著的特 点【5 1 。首先,输入数据量通常较大。在多媒体程序中,处理对象如音视频文件, 一般信息量巨大,会造成处理器对较大存储空间的频繁访问,需要为此提供相适 应的存储带宽。对同一程序而言,音视频文件的数据处理量很大程度上依赖于其 提供的品质,并且变化范围极大。例如,高清电视( h d t v ) 压缩后的数据流量 大约在2 0 m b i t s ,而采用h 2 6 3 协议的一种可视电话终端,其数据采用某种中间 格式压缩后,流量仅在1 0 2 0 k b i t s ,两者相差近千倍。其次,多媒体程序的数据 类型多样,微处理器进行指令算术运算时会遇到字长问题( w o r d - l e n g t hp r o b l e m ) 。 通常微处理器的字长为3 2 或6 4 b i t s ,但多媒体数据的字长为8 、1 6 、2 4 b i t s ,大大 短于处理器的字长。若按微处理器本身字长对多媒体数据进行处理则会造成较大 的空白边缘浪费。再次,多媒体程序对实时性的要求通常较高。如在音视频处理 过程中,每音频样本或视频帧均需在预先设定的时间间隔内处理完毕,并且要 求在任务切换时开销较小,这对处理系统的性能具有较高要求。最后,多媒体程 序具有较好的数据并行性,其代码具有高度的计算密集性和重复性的特点。例如, 图片处理程序中对像素及宏块的计算就具有内在的并行性,处理过程主要是对 硕士学位论文 8 * 8 像素数据块的循环操作,具有计算密集性和重复性的特点。 为了适应多媒体程序的这些特点,设计者在传统处理器结构上进行了功能扩 展,以加快多媒体计算的速度。目前,嵌入式计算领域的两大主力r i s c 与d s p 处理器就分别针对多媒体应用进行了优化。r i s c ,即精简指令集计算机是相对复 杂指令集计算机( c i s c ) 提出一种体系结构,它使每条指令功能尽可能简单,指 令长度均相同,并且只允许l o a d 和s t o r e 操作指令访问存储器。这类微处理器主 要依靠加入s i m d 型的多媒体指令集以增强多媒体处理能力。s i m d 表示单指令 多数据,处理器内通常包含多个处理单元,每一个单元都有各自的数据,可同时 进行相同的操作。s i m d 型指令很好地利用了多媒体处理中数据的并行性,可将 长字分解为多个短字置于不同处理单元中实现并行操作。多媒体指令集包括乘法 累加指令、分离加减法指令、混洗指令以及其他特殊指令( 如运动估计操作) 。 在添加多媒体指令集的同时,处理器还加入了带有多访问端口的大寄存器堆,以 增加周期内指令的操作数个数,避免将中间值写入存储器中。 d s p 即数字信号处理器,主要为语音处理和通信处理而开发。它的主要特点 是能够提供高速的乘法累加操作,被广泛用于移动电话的语音压缩与解压。与高 速微处理器相比,d s p 的算术运算与外部存储访问能力相对较弱,但其较高的性 能功耗比,能够满足一般通信的需求。随着新一代通信系统( 如w c d m a ) 的到 来,传统意义上的d s p 已无法满足日益增长的多媒体应用的需要。一种解决方案 是在一块芯片上集成多个d s p ,形成多指令流多数据流( m i m d ) 的并行处理机, 从而获得较高性能以处理多媒体应用。另一种方案是加入媒体处理器( m e d i a p r o c e s s o r ) 作为协处理器。媒体处理器是d s p 的一种扩展,继承了传统d s p 数 据通路体系结构方面的许多特性。但加入了对并行压缩数据的操作和大型寄存器 堆,以适应图像、视频处理的需求。媒体处理器还为多媒体处理提供了位流数据 i o 接口以及内核中的限期调度程序,以满足实时流媒体应用的需要。 定制处理器是设计者为某些特定的应用程序而专门开发的处理器结构,这也 是多媒体处理器的一种有效的解决方案。定制处理器通常是指专用指令处理器 ( a p p l i c a t i o n s p e c i f i c i n s t r u c t i o np r o c e s s o r s ,a s i p ) 或者可配置处理器 ( c o n f i g u r a b l ep r o c e s s o r ) ,随着定制集成电路与f p g a 技术的发展,设计者可自 由的进行专用处理器的开发。定制处理器允许开发者修改指令集( 添加新的指令、 移除对应用不重要的指令等) 、定制流水线、修改存储层次结构( 增减c a c h e 层, 调整c a c h e 参数等) 以及优化总线和外围设备。针对多媒体程序的特点,设计者可 对处理器的层次结构进行相应优化,开发符合需求的多媒体系统。文献【5 提出了 一种专为多媒体应用设计的低成本低功耗的处理器模型。该模型设计了特别的数 据通路与访问控制器,能够针对各种数据类型执行多样的算术操作,兼容8 位、1 6 位、3 2 位整数和单精度浮点数操作。处理器采用多处理模块的架构,综合了s i m d 7 支持多媒体训算的可重构c a c h e 研究与设计 和m i m d 两种指令执行模式,为数据并行性和计算密集性强的多媒体应用提供了 很好的支持。 目前各类处理器对多媒体功能的扩展或定制,能够较好的解决多媒体计算中 的字长问题以及数据并行性问题,某些高性能处理器在实时处理上也有较好的控 制能力,但存储器结构仍然是制约多媒体系统性能提升的一个瓶颈。首先,当前 对于多媒体信息的表现力,特别是音视频的服务质量要求越来越高,这直接导致 了文件信息量的增大,数据流量的增加。由此造成处理器对存储空间的频繁访问, 大规模的数据传输增大了对存储带宽的需求。如何提高数据预取的效率,充分利 用有限的带宽资源是存储器结构设计需要考虑的问题。其次,随着处理器频率的 提高,c a c h e 失效时访问片外主存的延时对系统性能的影响在加大。大部分微处理 器都设置有一层或多层c a c h e ,c a c h e 的访问时间远低于主存的访问延时,在对实 时性要求较高的多媒体应用中,过多的c a c h e 失效会影响程序的正常运行,因此, 需要采用某些策略改善c a c h e 性能。最后,能耗也是存储器结构设计中一个不可忽 视的问题,由于目前多媒体计算广泛应用于手机、p d a 、m p 4 等嵌入式设备,这 些产品并非一直都有充足的电源供应,通常是依靠电池供电。由于受系统的尺寸 和重量的限制,这些便携式系统的电池供电能力有限,远远跟不上系统耗电量的 增加。因此,存储系统的设计必须同时考虑性能和功耗的问题。 在计算机存储层次结构中,c a c h e 作为处理器与主存之间的桥梁,不仅极大影 响处理器的工作速度,而且占据了较大的芯片面积,是功耗的主要来源。本文是 从体系结构的角度,针对多媒体程序的特点,对c a c h e 的优化方案进行研究。研究 结果既可用于通用处理器对多媒体的功能扩展,也可适用于多媒体定制处理器中 的c a c h e 配置策略。 2 3 多媒体计算下的存储优化 多媒体计算的主要特点是数据处理量大,并且数据类型多样。在本节中,先 对常见多媒体程序进行分类,分析其算法特点,然后对多媒体计算下存储优化方 案的研究现状进行讨论。 2 3 1 多媒体计算的分类 根据处理数据类型的不同,常见的多媒体计算大致可分为静态图片处理、音 视频处理与3 d 图形处理三类,下面依次进行介绍。 ( 1 ) 静态图片处理 静态图片处理包含的程序较多,如c j p e g d j p e g 【6 l ( j p e g 图片格式的压缩和解 压程序) 、e p i c u n e p i c 7 】【8 1 ( 快速图片压缩和解压程序) 等等。尽管各种图片格式 的压缩算法各有不同,但其中包含一些共同的特性。首先,每种算法会将图片数 硕十学位论文 据分为两个部分,一部分包含对图片质量具有重要影响的信息,而另一部分则包 含次要的辅助信息。通常重要信息的部分会被保留,而次要部分会被舍弃。接着 会使用某种熵编码算法如h u f f m a n 算法,对舍弃次要信息时遗留的0 值进行有效 利用。 以j p e g 图片格式【6 】的压缩程序为例,其处理过程分为五步。第一步是将图 片从常规的r g b 模式转换为亮度色度模式y u v ;第二步是将整个图片的数据按 8 * 8 的像素进行分块,每个分块作为图形压缩处理的基本单元。接着对每一分块 进行离散余弦变换f 9 】;第三步是对余弦变换后的分块进行有损量化,得到量化矩 阵。此步中变为0 的值不能通过逆转换恢复,所以是有损的;第四步是对量化矩 阵进行z 型对角线转换:最后一步是对输出矩阵进行熵编码( e n t r o p yc o d i n g ) 得到压缩后的图片数据。为了进一步了解j p e g 压缩程序的特点,这里对c j p e g 的源码进行分析。如图2 1 所示,压缩程序先载入一个压缩对象,然后通过函数 j p e gs e td e f a u l t s ( ) 设定默认的或用户设置的相关参数。接着程序进入一个循环, 循环体内调用函数j p e gw r i t es c a n l i n e s o ,这个函数执行图片压缩的五个步骤。通 过这个循环,c j p e g 对原始图片从上到下顺序处理,每次循环所需的数据都只是原 始输入数据分割后的一个小块。当原始图片的数据全部压缩完成,调用函数 j p e g _ f i n i s hc o m p r e s s o 结束整个过程。 载入j p e g 压缩对象 j r j p e gs e t _ d e f a u l t s o i l j p e l w r i t e _ s c a n l i n e s 0 奋否 是i j p e g f i n i s h _ c o m p r e s s o 图2 1

温馨提示

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

评论

0/150

提交评论