




已阅读5页,还剩78页未读, 继续免费阅读
(电路与系统专业论文)面向移动设备的光栅化处理器的研究与设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 随着电子设备显示分辨率的增加以及3 d 图形显示的几何模型变得更加复 杂,移动设备中软件模拟实现的3 d 图形绘制占用大量的c p u 资源,绘制的图 形质量差,很难做到图形显示的实时性。国外图形芯片公司对移动设备3 d 绘制 的硬件设计展开了全面的研究,也取得了一定的成果,但是受知识产权的保护, 关于3 d 图形绘制的硬件设计的核心技术细节鲜有报道,国内的图形研究只是针 对某些具体的应用进行软件设计,未见移动设备图形绘制硬件实现的相关报道。 因此采用专用的硬件电路实现移动设备的3 d 图形处理系统,使之能够快速真实 的绘制复杂图形,满足实时绘制的需求日益迫切。 论文在教育部英特尔信息技术专项合作基金的支撑下,将面向移动设备的 3 d 图形绘制系统中光栅阶段的硬件实现作为研究内容。 论文主要工作和特色如下: 1 ) 针对真实感的3 d 图形系统的特点,在分析和研究3 d 图形中光栅化算法 和工作流程的基础上,给出了一个完整的3 d 图形光栅化处理器架构,该架构包 括一个可编程的三角形建立引擎和基于像素块的扫描插值单元。采用定点数据通 路,利用有效的定点算法对三角形顶点数据进行处理,从而达到降低电路复杂度, 保持较低功耗的效果。 2 ) 设计了一个面向移动设备的可编程三角形建立引擎,根据运算特点自定 义指令集,用户可以灵活实现各种光栅算法;采用三路s i m d 处理器架构,8 级 流水线,能够有效提高计算吞吐率,一个时钟周期执行一条指令;还拥有高精度 的特殊函数求值单元,从而保证了运算精度。 3 ) 给出了可编程三角形建立引擎的f p g a 实现,搭建了一个基于s o p c 的 f p g a 验证平台,使用软件和硬件协同设计实现t s e 的验证。验证结果表明,该 处理器在f p g av e r t e x 2 px c 2 v p 3 0 7 f f 8 9 上综合资源为4 2 6 7 个s l i c e s ,硬件消耗较 少,时钟频率7 9 m h z ,可以实时完成光栅部分的绘制工作。 关键词:移动设备光栅化处理器可编程三角形建立引擎可编程片上系统 a b s t r a c t w i t ht h ei n c r e a s eo fe l e c t r o n i ce q u i p m e n td i s p l a ys c r e e na n dg e o m e t r i cm o d e l h a sb e c o m em o r ec o m p l e x ,t h es o f t w a r em e t h o dn o t o n l yt a k eu pal o to fc p u r e s o u r c e s ,i n c r e a s et h ec p ub u r d e n ,l o w e rt h er e n d i n gq u a l i t y , a n dd i f f i c u l tt oa c h i e v e r e a l - t i m er e n d i n go f3 dg r a p h i c s a l t h o u g ht h eg r a p h i c sp r o c e s s i n gt e c h n o l o g yi s r e l a t i v e l ym a t u r e ,b u tt h eh i g ht e c h n i c a lb a r r i e r si n t h i sf i e l da n da l m o s ta l lo fc o r e t e c h n o l o g ym a s t e di nt h eu n i t e ds t a t e sa n do t h e rd e v e l o p e dc o u n t r i e sa n dt h ev a s t m a j o r i t yo ft h ep a p e r so p e nt ot h ep u b l i co n l yb r i e fi n t r o d u c e ds y s t e ma r c h i t e c t u r e d o m e s t i cr e s e a r c ha n dd e s i g no ft h eg r a p h i c sh a r d w a r er a r e l y , s o m es o f e w a r ed e s i g n o n l yf o rc e r t a i ns p e c i f i ca p p l i c a t i o n sd on o th a v et h ev e r s a t i l i t y a i m i n ga tt h e s e p r o b l e m s ,m u s tu s es p e c i a lh a r d w a r ec i r c u i tt o3 dg r a p h i c sp r o c e s s i n gs y s t e mo f m o b i l ee q u i p m e n t t h i sp a p e ru n d e rt h es u p p o r to ft h ee d u c a t i o n i n t e ls p e c i a lc o o p e r a t i o nf u n d a n dw i l lr e s e a r c ht h eh a r d w a r ei m p l e m e n t a t i o no fr a s t e rp h a s ef o rm o b i l ed e v i c e s t h em a i nw o r k sa n dt h ec h a r a c t e r i s t i c so ft h i st h e s i sa r ea sf o l l o w s : 1 ) a c c o r d i n gt ot h ec h a r a c t e r i s t i c so fr e a l i s t i c3d g r a p h i c ss y s t e m ,t h ep a p e r a n a l y s i sa n dr e s e a r c hi nt h ea l g o r i t h ma n dw o r kp r o c e s s e so f3 dg r a p h i c sp r o c e s s o r , e s t a b l i s hc o m p l e t e3dr a s t e rp r o c e s s o ra r c h i t e c t u r ew h i c hi n c l u d i n ga p r o g r a m m a b l e t r i a n g l es e tu pe n g i n ea n ds c a nc o n v e r s i o n ,p i x e li n t e r p o l a t i o no nt h eb a s i so fb l o c k a r c h i t e c t u r e f o rm o b i l ed e v i c e t h ea r c h i t e c t u r eu s e sf i x e d p o i n td a t ap a t ha n da r t e f f e c t i v e a l g o r i t h mt op r o c e s st r i a n g l ev e r t e xd a t a ,w h i c hc a nr e d u c et h ec i r c u i t c o m p l e x i t y , l o w e rp o w e rc o n s u m p t i o n 2 ) a c c o r d i n gt oc o m p u t a t i o n a lc h a r a c t e r i s t i c st h ep r o g r a m m a b l et r i a n g l es e t u p e n g i n ec u s t o mi n s t r u c t i o ns e tw h i c ha l l o wu s e r sa c h i e v eav a r i e t yo fr a s t e ra l g o r i t h m s f l e x i b i l i t y u s i n gt h r e e w a ys i m dp r o c e s s o ra r c h i t e c t u r e ,8 - s t a g ep i p e l i n e ,c a n e f f e c t i v e l yi m p r o v et h et h r o u g h p u ta n da c h i e v e1i n s t r u c i o np e rc l o c kc y c l e t o e n s u r et h ec o m p u t a t i o na c c u r a c yt h ee n g i n ea l s oh a sah i g ha c c u r a c ys p e c i a lf u n c t i o n u n i t 3 ) t h ep a p e rb u i l d sas o p co ff p g av e r i f i c a t i o np l a t f o r mt oi m p l e m e n ta n d v e r i f yt r i a n g l es e t u pe n g i n ef o rm o b i l ed e v i c e s u s i n gs o f t w a r ea n dh a r d w a r e c o 。d e s i g nv e r i f i c a t i o nt oe a r lyo u tt s e t h ee x p e r i m e n tr e s u l t ss h o wt h a tt h et r i a n g l e s e t u pe n g i n eh a si m p l e m e n t e do nx i l i n xf p g av e r t e x 2 px c 2 v p 3 0 7 f f 8 9p l a t f o r m t l l e a b s t r a c t s y n t h e s i z e df r e q u e n c yh a sr e a c h e d7 8 m h za n dt h es y n t h e s i z e dh a r d w a r er e s o u r c e si s s m a l lw i t h4 2 6 7s l i c e s ,m e e t i n gt h er e q u i r e m e n t so fr e a l r e n d i n go ne m b e d d e d p l a t f o r m k e yw o r d s :m o b i l ed e v i c e ,r a s t e r i z ep r o c e s s o r ,p r o g r a m m a b l et r i a n g l es e t u pe n g i n e , s y s t e mo np r o g r a m m a b l ec h i p i i i 图表日录 图表目录 图1 1 图形系统的发展2 表1 1 移动设备和p c 资源对比3 图1 2 可编程图形硬件框架5 图2 1 图形绘制管线1 0 图2 2 三角形光栅化示意图1 0 图2 3 e o g e w a l k i n g 算法示意图1 1 图2 4 像素点位置1 2 图2 5 像素分块示意图1 3 图2 6 像素块与三角面边界关系1 3 图2 7 z i g z a g 扫描算法示意图1 4 图2 8 重心插值算法示意图1 5 图2 9 左图为对三角形进行线形插值,右图使用了透视校正插值1 6 图2 1 0 在三角形上对向量r j 进行了线性插值1 7 图2 1 1 走样和反走样示意图1 7 图2 1 2 几种像素采样方式1 8 图2 1 3 左图没有进行可见性测试,右图用z b u f f e r 算法进行了可见性测试1 9 图3 13 d 图形处理流水线2 l 图3 2 并行图形体系结构分类2 2 图3 3 光栅化模块总体框图2 3 图3 4 光栅化单元处理流程2 4 表3 1 三角形常量参数2 5 i 图表目录 表3 2 三角形插值模块初始化参数2 6 表3 3 光栅化变量参数2 6 图3 5 像素扫描模块框图2 7 图3 6 像素块扫描模块硬件结构图2 8 图3 7z i g z a g 扫描状态机2 9 图3 8 像素块与q u a d 2 9 表3 4 像素块左下角的属性值2 9 表3 5q u a d 中心正确的纹理坐标3 0 图3 9 运算结构图3 0 图3 1 0 像素块处理模块状态转换图3 1 图4 1 系统图形处理器的整体架构3 6 图4 2 十进制数转二进制数示意图( 0 4 4 格式) 3 7 图4 3 乘法上溢和下溢3 7 图4 4 指令流水时序图3 8 图4 5 可编程三角形建克引擎流水线架构3 9 图4 6 利用后推法对数据相关进行处理的流水线4 0 图4 7 引入定向技术的流水线结构4 0 图4 8 可编程三角形建立引擎4 l 表4 1 指令各部分定义4 2 表4 2 操作数存储区4 3 表4 3 操作数重组合方式4 3 表4 4 可编程三角面建立引擎的指令集4 4 表4 5 指令功能说明4 5 图4 9 三角形建立引擎顶层模块结构图 v i i i 图表目录 表4 6 三角形建立引擎的顶层模块接口4 7 图4 1 0f i 级结构图4 9 、 图4 1 1 控制模块验证波形图4 9 图4 1 2 数据旁路示意图5 0 图4 1 3 旁路单元数据传送r t l 图5 0 表4 7 输入寄存器说明5 l 表4 8 输出寄存器说明5 l 图4 1 4 a l u 模块x 分量执行过程5 3 图4 1 53 2 位乘加单元5 3 图4 1 6 向量点乘运算单元。5 4 图4 1 7 运算单元波形图5 4 表4 9 运算结果5 5 图4 1 8 函数利的实现过程5 6 、 图4 1 9r p c 运算波形图5 7 图4 2 0 三角形建立引擎测试指令5 8 表4 1 0 回写结果5 8 图5 1 嵌入式系统设计流程6 2 图5 2s o p c 系统硬件框架6 3 图5 3 封装后t s e 接口6 3 表5 1 存储器地址空间6 4 表5 2 t s e 模块硬件资源分析和时间分析报告6 4 表5 3s o p c 系统资源利用率。6 5 表5 4 三角形常量参数指令6 7 表5 5 扫描转换和插值参数指令6 8 i x 图表目录 图5 4 三角形建立引擎的性能测试6 9 图5 5 光栅化后的3 d 图形6 9 x 中国科学技术大学学位论文原创性声明 本人声明所呈交的学位论文,是本人在导师指导下进行研究工作所取得的成 果。除已特别加以标注和致谢的地方外,论文中不包含任何他人已经发表或撰写 过的研究成果。与我一同工作的同志对本研究所做的贡献均已在论文中作了明确 的说明。 作者签名:,查亟主 签字日期:皇如虹 中国科学技术大学学位论文授权使用声明 作为申请学位的条件之一,学位论文著作权拥有者授权中国科学技术大学拥 有学位论文的部分使用权,即:学校有权按有关规定向国家有关部门或机构送交 论文的复印件和电子版,允许论文被查阅和借阅,可以将学位论文编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。本人 提交的电子文档的内容和纸质论文的内容相一致。 保密的学位论文在解密后也遵守此规定。 曰公开口保密( 年) 作者签名:奎亟亟 导师签名: 签字日期:2 盟丛支牛一 签字日期:里兰兰竺三兰兰,_ 第一章绪论 1 1 研究背景和意义 第一章绪论 自从2 0 世纪8 0 年代,带有光栅图形显示器的工作站和个人计算机的出现, 图像图形处理在计算机领域得到了更为广泛的应用,使得计算机图形学成为计算 机领域中发展最快的一门学科。在以后的几十年里,计算机图形学取得了异常迅 猛的发展,各种新的理论和方法不断涌现,现在计算机所具备的图像图形处理能 力已经能够实时渲染高分辨率高帧频的2 d 图像和多层次的逼真的场景。计算机 图形学与人工智能、多媒体技术的结合日益紧密,广泛应用于航空电子、手机、 g p s 导航、p d a 等领域。计算机游戏的发展充分体现了计算机图形技术的突飞 猛进,从2 d 到3 d ,从单色到真彩色,光照、雾化、纹理等技术的不断革新, 这一切都应归功于计算机图形的加速技术( 张晓云,2 0 0 7 ) 。 计算机图形绘制就是将计算机模型和数据转换成真实图形的过程,通过软件 和硬件加速完成图形处理中的定点浮点运算,将处理的数据最终在显示设备上显 示。随着图形处理器集成度和性能的不断提高,复杂图形应用逐步从图形工作站 向p c 机转移,再发展到目前嵌入式图形系统。人们对图像的真实性、实时性以 及人机交互性提出了更高的要求,图形加速技术也随之不断更新。这些图形系统 大都是基于实时绘制架构,采用高性能的图形硬件加速引擎,支持开放式的图形 编程接口。 计算机图形学发展的早期,图形算法主要通过c 语言和汇编编程实现,由 c p u 控制处理,是软件实现的方法( 图1 1 a ) 。这个阶段的3 d 场景绘制只能完 成几何变换、着色等基本操作,然后将图形处理的数据从存储设备逐行复制到显 卡的缓存通过显示控制器控制显示,所有的操作都是由c p u 单独调度的。当要 绘制复杂3 d 场景时,需要在很短的时间里完成几百万个三角形顶点和更大数量 级的像素处理,c p u 的串行执行很难胜任这么复杂的运算,速度远远不能达到 要求。后来出现的硬件图形加速,仅仅实现图形数据从存储器到显示设备的传输 和控制( 图1 1 b ) ,而图形算法和数据处理仍然由c p u 完成,这种图形处理和数 据传送的并行工作在一定程度上减少了c p u 的负担,但是要完成3 d 图形的绘 制和实时渲染的大量数据运算,c p u 根本无法胜任,速度瓶颈依然没有解决。 在这种情况下,专用图形加速器的诞生是势不可挡的,9 0 年代初诞生了图形加 速卡( 图1 1 c ) ,图形系统才真正进入了的图形硬件加速时代,图形处理运算由 专用的芯片完成,c p u 从大量的运算中解放了出来。3 d 图形由三角形网格组成, 1 第一章绪论 对图形的处理转化成了对这些三角形网格的处理,如对每一个三角形定点进行几 何变化、光照、纹理映射等处理,从而生成具有真实感的3 d 图形。3 d 硬件图 形加速技术就是利用专用的图形芯片对c p u 提供的三角形顶点信息进行变换、 光照、投影、裁剪、缩放、纹理贴图等的处理,是用硬件电路完成计算,从而大 大提高了处理速度。 应用程序 系统存储器l 帧缓存卜一叫v g a 控制器 图1 1 图形系统的发展 叫显示 系统总线 图形系统最早应用于图形工作站,2 0 世纪8 0 年代中期,c l a r kj a m s 设计的 i r i s ( i n t e g r a t e dr a s t e ri m a g i n gs y s t e m ) 图形系统,采用了1 2 个几何引擎组成了 完整的3 d 图形流水线,可以通过寄存器实现几何阶段的变换、投影、裁剪、缩 放等。对图形的并行处理成为以后计算机图形硬件发展所追求的目标,对2 0 年 来图形的发展和变革产生了深远的影响,成为s g i 公司的r e a l i t ye n g i n e 和 i n f i n i t er e a l i t y 图形系统的研究基础。8 0 年代后期,美国北卡罗来纳大学的图形 开发小组推出的p i x e lp l a n e 5 图形系统是当时最强的系统,绘制能力达到了1 0 0 万个p h o n e 模型多边形。p i x e lp l a n e s 系列图形系统采用单指令多数据流( s i 加) 结构,实行了像素级驱动单元的高并行性。硬件系统包含了3 2 个运算处理器和 1 6 个绘制单元,每个绘制单元可以完成1 2 8x1 2 8 像素阵列的二次多项式的并行 计算。后来,基于瓦片式并行处理的r e a l i t ye n g i n e 和i n f i n i t er e a l i t y 图形系统由 多组芯片和多块印制板组成,但其造价极其昂贵,主要只能应用于飞行模拟器上。 虽然这种专业的图形系统的功能非常强大,但是在市场上不可能获得成功。 随着半导体工业的发展和硬件集成度的提高,1 9 9 8 年出现n v i d i a 公司的 t n l 2 、a t i 公司的r a g e 和3 d f x 公司的v o o d 0 0 3 等图形处理器,g p u 的时代才 2 第一章绪论 开始到来( s u r e s h , 2 0 0 3 ) 。现在,p c 机运用高性能的g p u 进行图形管线的绘制 和加速处理。g p u 被认为是一个s i m d 的流处理器,能够在一个时钟周期内并 行处理多个顶点或像素。早期的g p u 只能实现d i r e c t x 6 的特征集,现在的g p u 比以前的任何系统都要强大,并且更加便宜,不仅担任了几何阶段的顶点变换、 光照以及光栅化和纹理映射,还能够承担o p e n g l 和d i r e c t x 功能,在顶点阶段 和光栅阶段可编程实现,从而使得复杂的顶点变换和象素着色的操作从c p u 向 g p u 转移。 嵌入式系统的设计最初主要采用嵌入式微处理器d s p 为核心,集成系统功 能的s o c 芯片的出现,为高端嵌入式系统开发应用提供了更加丰富的硬件平台, 在2 0 0 0 年后计算机图形学在嵌入式系统的应用中拉开了序幕( d c r i s u , 2 0 0 4 ) 。 嵌入式图形系统实现的主要方式有:专用集成电路( a s i c ) 、片上系统( s o c ) 和通用可重构硬件平台( s o p c ) 。嵌入式系统的有限资源,图形系统需要满足低 功耗、低带宽、小体积、低成本、较高的实时性等要求,才能在嵌入式系统过中 广泛应用。近年来,嵌入式系统的资源配置逐渐提高,例如c p u 内存的升级, 将摄像头、视频播放器等集成到移动设备上以及通信网络的提高。但是与p c 相 比,移动设备的图形系统所需要的资源仍然相当有限。表1 1 列出了移动设备和 p c 软硬件资源配置以及对移动设备图形系统研究的影响。 表1 1 移动设备和p c 资源对比 资源移动配置p c 配置影响 通用处理器a r m l0 0 m h z - 6 0 0 hzi n t e ll g h z - 3 g h z不能处理太复杂的任务 f p u 一般没有有 计算速度慢,效率低 存储器 小( 几m b ) ,节电很大( 数百r c m ) , 限制模型的规模和绘制的 耗电性能 显示器 q v g a ( 3 2 0 木2 4 0 ) -s v g a ( 1 0 2 4 幸7 6 8 )平均像素视角大,要求更 v g a ( 6 4 0 木48 0 ) 高绘制精度,交百窄间小 图形加速卡一般没有 n v i d i a g e f o r c e a 影响绘制的实时性,c p u t ir a d e o n负相重 电源电池外接直流电源不能长时间工作 网络 无线有线带宽低,误码率高 图形标准 o p e n g l e s d 3 d m j so p e n g l d i r e c t x 标准化过程中,没有硬件 r18 4 o p e n v gj a v a 3 d 加速 目前,p c 机的图形处理器已经能够到很高的性能,但是在嵌入式系统中的 高性能图形处理还是一个难题。西方发达国家的学校和公司正在大力开展嵌入式 第一章绪论 图形系统得研发和应用工作。这几年,国际几大芯片厂商针对嵌入式设备推出了 几款图形加速芯片。如a t i 和n v i d i a 分别推出的i m a g e o n 系列( a t ii n c ,2 0 0 8 ) 和g e f o r c e 系列( n v i d i a ,2 0 0 6 ) ,以及a r m 和i m a g i n a t i o n 公司共同推出的 p o w e r v rm b x 的图形加速芯片( 文志磊,2 0 0 2 ) ,这些芯片能够完成2 d 和3 d 图 形的大部分绘制功能,但是由于功耗以及成本,并没有在嵌入式系统中广泛的实 现。 进入2 1 世纪以后,越来越多的嵌入式产品运用了3 d 图形显示功能从而达到 高效绘图和处理能力。k h r o n o s 组织对手持式多媒体设备的分析表显示:2 0 0 1 年 全球有1 1 亿台移动电话采用了多媒体加速芯片,约占移动电话的2 9 ,到了2 0 0 8 年采用多媒体加速的移动电话上升到了6 亿台,约占移动电话的总数的5 6 。预 计到2 0 1 0 年将会达到8 1 亿台。从这些数据来看,3 d 图形加速芯片在移动电话 里得到了普遍的应用。可以预计,在以后的发展中,嵌入式图形系统在嵌入式领 域将要得到更广泛的应用,有着非常广阔的市场前景。 1 2 国内外研究现状 自从1 9 9 8 年以来,平均每年都有新一代的g p u 问世。n v i d i a 公司推出p c 领域的第一块g p ug e f o r c e 2 5 6 给3 d 显卡带来了革命性的发展,继而a t i 也推 出了r a d e o n 2 5 6 ,这个时代的g p u 提供了硬件级的顶点处理单元,t & l 用硬件 模块实现,每秒可以生成3 0 0 0 万个三角形,具备最高8 个硬化的本地或无限远 的光照能力。这一阶段的g p u 内部的图形管线是固定的,但是,固定的特性束 缚了图形应用开发者的设计,不能满足人们对更真实和绚丽的动画效果的需求。 2 0 0 1 年底,以n v i d i a 公司的g e f o r c e 4 为代表的主流图形处理器用实现了流水线 级的硬件图形管线,在几何阶段能够可编程实现。2 0 0 2 年初,a t i 公司的r a d e o n 8 5 0 0 完全支持d i r e c t x8 1 ,在顶点着色和像素渲染单元完全根据d i r e c t x 8 1 的 要求进行设计,拥有4 条像素渲染流水线,每条流水线由2 个材质贴图单元组成, 能够支持单周期高达6 次的纹理贴图,可以接受更长的程序指令。此后g p u 进 入高速发展时期,每六个月运算能力就能提升一倍,1 8 个月就经历一次架构的 改变,延边速度远远超过了c p u 。2 0 0 4 年推出的g p un v i d i ag e f o r c e6 8 0 0u l t r a 达到4 0g i g a f l o a p s ( 1g i g a f l o p s = 1 秒钟进行1 0 亿次的浮点运算) ,2 0 0 5 年发布的 n v i d i a g e f o r c e7 8 0 0g t x 更是提高到了1 6 9g i g a f l o p s 。而i n t e l3 g h zp e n t i u m4 采用s s e 指令集也只能达到6g i g a f l o p s 。g p u 的运算速度如此之快,主要得益 于g p u 是对图形实时渲染量身定制的,具有两点主要特征:超长流水线与并行 运算。 第一章绪论 g p u 采用了几百级的流水线,比如g e f o r c e3 的流水线有8 0 0 个阶段,为了 进一步提高并行速度,可以增加流水线的条数。在g e f o r c e6 8 0 0u l t r a 中,有多 达1 6 组像素着色器流水线,6 组顶点着色器流水线。多条流水线可以在单一控 制部件的集中控制下运行,也可以独立运行。在单指令多数据流( s i m d ) 结构 中,单一控制部件向流水线分派指令,同样的指令被所有处理部件同时执行。另 外一种控制结构是多指令多数据流( m i m d ) ,每条流水线都能够独立于其他流 水线执行不同的程序。g e f o r c e6 8 0 0u l t r a 的顶点着色器流水线使用m i m d 方式 控制,像素着色器流水线使用s i m d 结构。m i m d 能够比较有效的执行分支程序, 而s i m d 体系结构运行条件语句时会造成很低的资源利用率,不过s i m d 需要硬 件少,这是一个优势。 图形处理技术的迅速发展带来的不仅只是处理速度的提高,还随之产生了很 多全新的图形硬件技术。其中最引人注目的便是在图形硬件处理管道的顶点处理 和像素处理模块中引入了可编程性,使得用户可以通过程序方式控制图形流水线 的执行,极大地扩展了图形处理器的能力和应用范围,图1 2 为一个最基本的可 编程图形硬件框架。 输 图1 2 可编程图形硬件框架 从图1 2 可以看出,在对顶点的操作上,引入了顶点着色器( v e r t e xs h a d e r ) 处 理每个顶点,用户可以通过自己编写的代码实现专门的光照明模型。经过光栅化 之后,在象素处理阶段,引入象素着色器( p i x e ls h a d e r ) 可以实现对每个象素的可 编程操作。顶点着色器和象素着色器都是典型的流处理器( ( s t r e a mp r o c e s s o r ) ,这种 流处理器和传统的向量处理机的主要区别在于,它不具有大容量的快存存储器 可以读写,只是直接在芯片上利用临时寄存器对流数据进行操作。对g p u 而言, 图形的流数据分别是顶点数据以及光栅化后的象素;根据图形处理的特点,g p u 流处理的元素为4 个单元的向量,可以利用它来表示三维齐次坐标,三维空间齐 次向量,颜色等数据。正是这种流处理机的并行结构,实现了指令的并行处理, 目前绝大部分的g p u 都拥有多条可以并行处理的s h a d e r 管线,这种体系结构使 得其不仅可以用于高效图形绘制,而且可以成为通用并行计算平台。 从o p e n g l l 5 图形接口规范起,在图形管线中对顶点处理和象素处理引入 了可编程性,并在o p e n g l l x 和2 x 规范中不断扩充完善,而在2 0 0 8 年末推出 的o p e n g l 3 0 图形接口规范,在顶点处理器之后和象素处理器之前的三角形处 理模块中引入了可编程性,这些编程模块的引入使得用户能够自定义编程控制图 5 第一章绪论 形流水线的执行,充分发挥了可编程图形硬件的潜能,a m d ,i n t e l 和n v i d i a 等 主要图形芯片厂商生产的芯片都将支持o p e n g l 3 0 ,这将使得图形管线绘制更加 灵活,高速。 目前p c 机的图形处理系统达到了非常高的性能,2 0 0 7 年,n v i d i a 公司推 出的g e f o r c e8 8 0 0 图形处理器的理论运算能力达到了5 7 6 g i g a f l o p s ,i n t e l 的酷睿 2 双核e 6 7 5 0 主频为2 6 6 g 时,数据吞吐率也只能达到2 1 2 8 g i g a f l o p s 。1 9 9 3 年 以来,g p u 的性能以每年2 8 倍的速度增长,这样的增长速度在接下来相当长的 时间能还将继续下去,现在每隔半年,新一代的g p u 处理速度就会提高倍 ( m a c e d o n i a ,2 0 0 3 ) 。 目前提出完整成熟的嵌入式设备的图形系统都是国外的图形公司和一些高 校项目,国内暂时处于空白。例如n v i d i a 开发的g e f o r c e 系列的图形芯片专门用 于嵌入式图形设备;2 0 0 7 年,东芝公司发布一款型号为t c 3 5 7 11x b g 的3 d 图 形绘制芯片用于手机,这款芯片可以达到每秒一亿个多边形的绘制速度;a t i 针 对手机开发的3 d 游戏图形芯片i r m g o n2 3 0 0 ,该芯片采用o p e n g le s 绘图标准, 支持3 0 帧秒的实时动态m e p g 解码和j p e g 格式压缩和解压缩;2 0 0 8 年,a m d 宣布了采用统一渲染架构的嵌入式g p u ,a t ir a d e o ne 2 4 0 0 ,支持d i r e c t l 0 。 虽然图形加速技术只有二十多年的发展历史,而且在p c 领域的发展已经达 到相当高的水平。但是,由于该领域有较高的技术门槛以及掌握该技术的少数发 达国家对核心技术的屏蔽,因此其他国家很少在该领域有较大突破。而已公开的 一些论文仅仅是介绍系统的架构设计( s o h n ,2 0 0 4 ) ,有些甚至是没有实现的,这 些论文对于设计的实质性意义不大,而且尚未见有介绍图形硬件设计的书籍出 版,因此设计者进入这一领域比较困难。国外的k a i s t 大学对移动设备的图形 处理系统做了大量的研究。 文献( s o h n ,2 0 0 6 ) 针对移动设备的多媒体应用平台提出了一种低功耗的图 形处理器,图形系统中包括了一个3 2 位r i s e 处理器a r m 1 0 、一个可编程顶点 处理器和一个光栅渲染引擎,对定点的处理速度能达到5 0 m v e r t i c e s 翟) ,对纹理 的处理速度能达到2 0 0 m t e x e l s 圣 ) 。 文献( d o n g h y u n , 2 0 0 6 ) 为消费平台设计了一个基于s o c 的高速3 d 图形系 统,图形芯片在几何阶段和三角形建立阶段完全可编程实现,处理频率为 1 6 6 m u z 时能够达到3 3 m v e r t i c e s s 和1 3 g t e x e l s s 的速度。 文献( j e o n g , 2 0 0 8 ) 在移动设备上实现了一个1 9 5 m w ,9 1 m v e r t i c e s 8 ) 的完 全可编程的图形处理器,对顶点处理和像素操作采用统一的渲染架构和多线程处 理能够有效提高图形系统的性能,并且使得图形芯片面积减少了3 5 ,功耗降低 了2 8 。 第一章绪论 国内的图形学研究一般是针对图形学算法,如文献( t a n h a o ,2 0 0 6 和沈潇, 2 0 0 6 ) ,和软件建模( g o p i , 2 0 0 2 ) ,处理器设计还主要处于功能仿制阶段( 颜煦 阳,2 0 0 9 ) ,没有进入到硬件设计阶段,已经实现硬件处理的也只能针对简单的 二维图形,一般采用d s p + f p g a 方案,某些具体的应用如飞机座舱显示,没有 通用意义( 孙全存,2 0 0 7 ) ,还有些情况是采用d s p 或f p g a 做一些像素的后 处理,未实现前面的几何变换和光栅化阶段。本实验室的杨毅师兄在对移动设 备真实感的图形绘制中实现了可编程顶点处理器,季键师兄实现了可编程像素 处理器的设计。 另一方面,通用图形芯片发展已相对成熟,市场饱和。现在嵌入式产品对图 形处理能力要求越来越高,而嵌入式图形加速是最近几年才飞速发展起来的,嵌 入式图形加速更多的需要“定制”功能,通用性不高,因而从长远来看,我们从 核心入手,掌握关键技术,走自主研发的道路,提升我国在信息显示领域的自主 创新能力。 1 3 论文所做的主要工作 本文主要研究的是实现低硬件资源的移动设备图形加速卡中的三角形光栅 化的设计。通过对嵌入式3 d 图形系统的光栅单元的硬件设计方法进行深入研究, 从算法和硬件两个层次进行优化,从运算速度、芯片功耗和灵活性三方面进行考 虑,从而设计一个合适的系统,选用合适的算法,采用合适的硬件架构,利用较 少的硬件资源,实现一个适用于嵌入式图形加速卡的三角形光栅化单元。具体研 究工作如下: 针对嵌入式图形系统的要求,本文深入研究了图形绘制管线中光栅化阶段的 关键算法,包括三角形扫描转换算法、插值算法、校正算法和全屏反走样算法等。 同时,对算法进行面向硬件的优化,用于指导嵌入式设备中图形处理系统的硬件 设计。优化的目的是为了减少运算复杂度、简化硬件结构、使用较少的存储器空 间和减少访问外部存储器的次数,从而提高运算速度、减少芯片面积和降低芯片 功耗。 针对三角形顶点数据的结构特点,光栅单元的硬件架构中对三角形建立引擎 采用可编程实现,用户可以灵活实现各种三角面光栅化算法;定点数操作,在保 证精度的前提下减少设计复杂度,减少电路面积从而降低电路功耗:采用三路 s i m d 架构,流水线实现,每周期可以发射一条指令;具有一个精度高的特殊函 数求值单元,提供求倒数的硬件加速运算。 本文给出了面向嵌入式设备的光栅化处理单元中三角形建立引擎的f p g a 实 第一章绪论 现,构建了一个基于s o p c 的f p g a 验证系统。这个验证系统包括两片3 0 0 万门 的f p g a 和一个c r t 显示器。f p g a 内嵌的p o w e r p cc p u 通过p l b 总线与我们 设计的图形处理器中的三角形建立引擎的i p 相连。在这个验证系统下,采用软 硬件协同验证的方法对面向移动设备的图形处理系统进行验证,对于自行设计的 i p 需要编写相应的驱动程序,最后在c 语言实现的3 d 图形管线中调用自定义i p 的驱动程序,为硬件模块传送测试向量,最终给出验证结果。 1 4 本文章节安排 第一章,绪论,介绍了研究面向移动设备图形处理器的背景和意义,以及国 内外发展现状,并介绍了本文研究的内容和实验结果。 第二章,面向移动设备的光栅处理器的理论基础。从3 d 图形算法出发,详 细阐述了3 d 图形处理器中光栅单元的关键算法,为光栅单元的硬件架构研究提 供理论依据。 第三章,面向移动设备的光栅化处理器的硬件架构。这一章介绍了光栅处理 器的整体硬件架构,主要包括四个部分:三角面建立单元、像素块扫描单元、像 素插值单元和像素产生单元,详细介绍每一个子模块的硬件实现过程和执行效 率。 第四章,面向移动设备的可编程三角形建立引擎的设计。这一章介绍了可编 程三角形建立引擎的设计过程,包括指令集的确定,硬件架构的设计以及机器码 的确定等。 第五章,面向移动设备的三角形建立引擎s o p c 验证。这一章详细介绍了三 角形建立引擎的s o p c 验证平台的搭建,验证流程和实验结果。 第六章,总结与展望,对全文内容进行了总结,对下一步的工作进行展望。 1 5 本章小结 本章是全文的绪论,主要讨论了研究面向移动设备图形处理器的背景和意 义,以及国内外的发展现状和趋势,第三节给出了本文的研究内容和研究成果。 第- 二章面向移动设备的光栅化处理器的理论基础 第二章面向移动设备的光栅化处理器的理论基础 2 1 本章引言 实时计算机图形绘制分为3 个阶段:应用程序、几何阶段以及光栅阶段。光 栅阶段的任务是对经过几何阶段的图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 封闭煤场安全培训内容课件
- 东南亚跨境电商市场品牌合作策略报告
- 导游业务领队服务课件
- 导医投诉处理课件
- 光学翻译题库及答案
- Java程序设计考试及答案
- 工程招标策划方案模板(3篇)
- 2025年纺丝试卷及答案
- 安全培训的餐饮费课件
- 工程前期方案审查(3篇)
- 《高速铁路动车组辅助设备维护与检修(第2版)》课件 任务三四 CRH380B型动车组车门系统
- 单梁吊培训课件
- 2025教师暑期政治培训心得体会
- 抑尘网抑尘效果的风洞试验方法研究
- 2025至2030中国纳米纤维材料行业产业运行态势及投资规划深度研究报告
- 2025-2030中国蒸压加气混凝土(AAC)行业运行态势与未来前景展望报告
- 医疗卫生关键岗位权力清单管理制度
- 企事业单位车辆无偿借用协议范本
- DZ/T 0263-2014地面核磁共振法找水技术规程
- T/QX 006-2023工业设备水射流清洗质量验收规范
- 水产养殖项目可行性研究报告水产养殖立项报告
评论
0/150
提交评论