(电路与系统专业论文)嵌入式lcd控制器总线带宽分析和优化设计.pdf_第1页
(电路与系统专业论文)嵌入式lcd控制器总线带宽分析和优化设计.pdf_第2页
(电路与系统专业论文)嵌入式lcd控制器总线带宽分析和优化设计.pdf_第3页
(电路与系统专业论文)嵌入式lcd控制器总线带宽分析和优化设计.pdf_第4页
(电路与系统专业论文)嵌入式lcd控制器总线带宽分析和优化设计.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

(电路与系统专业论文)嵌入式lcd控制器总线带宽分析和优化设计.pdf.pdf 免费下载

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

文档简介

摘要 随着l c d ( “q u i dc r y s t a ld i s p l a y ) 技术的发展和价格的下降,其在日常生活中的应用 越米越广。同时随着s o c ( s y s k mo nc h i p ) 技术的发展,嵌入式l c d 控制器( l c d c ) 的 设计也越来越普遍。但是,大尺寸的彩色l c d 显示,会需要大量的数据带宽,这对于在总 线上挂有多个主设备的s o c 芯片的设计来说,是一个严峻的挑战。 本论文围绕着g a 击e l d 系列芯片( 基于a r m 7 1 d m i 的s o c 芯片) 的设计过程中遇到的 一个重要问题:在使用大尺寸、高分辨率的l c d 屏时片上的l c d c 会占据大量的总线带宽 因而严重地影响了系统的性能,进行了深入的分析和研究。首先,通过理论推导,得到了 l c d c 总线带宽占用率的计算公式,并给出了实际的软硬件测试平台。其次,根据推导的过 程,得到了影响l c d c 总线带宽占用率的各个因素,并提出了相应的诸如降低刷新率、选 择合适的显存、增加猝发传输的长度、使用c a c h e 、使用取层a m b a 总线架构等可以有 效减少l c d c 总线带宽- 与用率的手段;在分析这些手段的理论计算结果和实际测试结果之 间的差别时,又找到了对l c d c 设计进行优化的方法,比如在显存为s d r a m 时实现对猝 发传输长度1 6 的支持、实现e s m mr e m a p 功能等。虽后,文中给出了这些优化方法的实 现,利用实际的测试平台对优化前后的影响进行了评估,并给出了应该如何使用这些优化方 法和手段来解决l c d c 占用总线带宽过高问题的结论。 本论文得到的解决方案对g a r f i e l d 系列芯片中l c d c 的下一步设计提供了思路,而在文 中建立的对l c d c 总线带宽占用情况进行测试的软硬件平台也可以用于对其他主设备的评 估。同时,由于a r m 片上芯核的广泛使用,本论文的思考和讨论对于其他基于删邢m i 的s o c 芯片设计会有一定的借鉴作用。 关键词:嵌入式l c d 控制器s o c 带宽a r m 丁r d m i 显存双层削b a a b s tr a c t w j t ht h ed e v e l o p m e n to fl c dt e c h n i q u ea n dt h ed e c r e a s eo ft h ep 打c eo fl c dp a n e l ,i ti su s e da b r o a d i no u ri i f e a tc h es a m et j m e ,t h ed e s 培no fe m b e d d e dl c d ci ns o ci sp o p u l a ra n di m p o n a n i b u ti tn e e d s t o om u c hd a t ab a n d w j d 幽f o rl a 唱es i z ec o l o rl c dd i s p l a y ,w h k hw mb ea 订g o r o u sc h a l l e n g et 。t h ed e s i g n 0 f s o c t h ep a p e rp e n e t r a t ei n t ot l 】e q u e s 石o nt h a tl c d co c c u p yt o om u c hb u sb a n d w j d 山f b rl a 唱es i z ea n d h i g hb i t p e 卜p i x e ll c dd i s p l a yw h i c ho c c u f r e di nt h ed e s j g “p r o c e s so fg a r 疗e l ds o c f 主r s t ly a f l e rt h e t h e o r yd i s c u r s i o n ,t h ee x p r e s s i o n s0 fb u sb a n d w i d 山o c c u p a n c yo fl c d ca r eg i v e n ,a n dt h ep r a c 石c a l s o f t w a r ea n dh a r d w a r et e s tp l a t f o r mi sp r e s e n t s e c o n d j yt h m u g ha n a l y 五n g 山ef a c t o r sa f 诧c t i n gm eb u s b p “d w j d n lo c c u p a n c yo fl c d c ,s u c hm e a s u 化s a sd e c r e a s i n gf r a m er a t eo fl c dp a n e l ,s e l e c n n g a p p r o p d a t ed i s p l a yb u f f e r ,j n c r e a s i n gb u r s tl e n g t h ,a d d i n gc a c h e ,u s i n gd u a l l a y e ra m b aw h i c hc 如 e f 艳c t i v e l yr e d u c et 1 1 eb u sb a n d w i d t ho c c u p a n c yo fl c d ca r e9 0 t b y1 0 0 轴n gf o rt h er e a s o nt b a tt l l e r ei s s o m ed l f f e r e n c eb e t w e e nt h et h e o r yr e s u l ta n dt e s tr e s u l t ,s o m eo p t i i i l i z a t i o n so fe m b e d d e dl c d ca r ea l s o g a i n e d a tl a s tt 1 1 er e a l i z a t i o n0 ft h e s ew a y si sp r e s e n t ,a n dt h ec o n c l u s i o no f h o wt oe m p j o yt h e s em e a l l st 0 s o l v et 1 1 eq u e s d o na b o v ej sa i s op u tf o 刑a r d t h ec o n c l u s j o no b t a j n e di nt h ep a p e rp r o v i 出sm ed i r e c 石o no ft b en e x ts t 印o ft h ee m b e d d e dl c d c d e s i g n t h et e s tp l a t f o 珊c 卸a l s ob eu d l i z e df o ro 山e rm a s t e r si ng a r f i e l ds o c i na d d l t i o n b e c a u s eo ft h e w i d e l yu s eo fa r mc o r e ,t i 】ee l p 硎m e n t sa n ds o l v i n gs c h e m eo ft h i sp a p e rc a nb eu s e df o r 州钉e n c eo f o 山e rs o cd e s 堙nb a s e do na 砌“7 t d m i , k e yw o r d s :e m b e d d e dl c dc o n t r o l l e r ;s o c ;b a n d w i d t l l ;a r m 7 t d m i : d i s p l a yb u 虢r ;d u a l l a y e r a m b a i i 东南大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成 果。尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表 或撰写过的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过 的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并 表示了谢意。 研究生签名: i 亟磕圭 日期:2 艘左圣f 丝 东南大学学位论文使用授权声明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的 复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内 容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可 瞄公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权东南大学研 究生院办理。 研究生签名:惮导师签名:嚆盔建至日期:出: 第一章绪论 第一章绪论 1 1 嵌入式l c d c 的设计和其在s o c 芯片中的应用 随着u c d ( l i q u i dc r y s t a ld i s p l a y ) 显示技术的发展和价格的下降,其在日常生活中的应用也 越来越广。尤其是在消费电子领域,从手机、p d a 到数码相机,l c d 的应用越来越多。伴随着l ( d 的应用,对l c d 进行控制的l c d c ( l c dc o n t m l l e r ) 成为这些领域芯片设计的一个重点和难点。 目前市场上的l c d 控制器如果从有片外和片上两种。以前的大部分采用单独的片外l c d c 进行 控制,其特点是功能强大,这方面的代表有s h a r p 公司的s e d l 3 7 5 、s e d l 3 8 0 6 等;而目前随着v l s i 技术的进步和s o c 技术的发展,有越来越多的芯片内嵌了l c d c ,比如m o t o m l a 的m x l 、s u m s u n 2 的s 3 c 2 4 1 0 和s h a r p 的l h 7 9 5 2 0 等。这些片上l c d c ( 也就是嵌入式l c d c ) 因为具有降低系统整 体成本、减少样机体积等众多优点,成为现在市场的主流。 在由a s i c 工程中心设计的面向掌上终端应用的s o c 芯片一g a 币d d 芯片中也采用了嵌入式 l c d c 的殴计【1 j 口该l c d c 作为主设备挂在a h b 上,通过内置的d m a 接口经过a m b a 总线从外 部存储器中取显示数据,在控制器内部处理后,送至外部【c d 屏。该嵌入式控制器具有高性能和低 功耗的特性。可以支持不同接口宽度和不同时序信号的l c d 屏,以下是其支持的l c d 屏类型:支 持4 b p p 、8 b p p 、1 2 1 6 b p p 的1 6 何接口可f r h i nf i l mt r a n s i s t o r ) 彩色显示;支持1 位、2 位、4 位或 8 位接口的s t n ( s u p e r t w i s t e dn e m a t i c ) ;支持1 、2 、4 b p p ( b i l p e 卜p i x e l ) 灰度级s t n 单色显示。该嵌 入式l c d c 的模块结构见r 图: 图1 1 嵌入式l c d 控制器功能结构图 该控制器的工作原理是:通过内战的d m a 模块从a m b a 总线取数据送到f o ,再由p a n 和 s h i f i 模块从f 1 f o 取出数据并进行移位操作,输出一个象素的原始数据;1 2 1 6 b p p n 叮和1 b p p s t n 显示模式直接把数据送到i n t e r f a c eb u c e r 即第二级f i f 0 ,4 8 b p pt f t 原始数据经由p a l e t t er a m 映 射输出新的数据到第二级f i f o ;而2 4b p p s t n 灰度经由p a l e t i er a m 后,再经灰度处理模块f r c g r a y 输出灰度数据到p a l e t t er a m 。最后由显示接口模块i n i e r f a c el o g i c 输出显示板所需的数据信号 和相应的时序信号。另外,s l v a e 接口模块接受来自总线的对寄存器的配置数据。 g a r 6 d d 芯片是面向掌上终端应用而开发的s o c 芯片。采用了a r m 7 1 d m i 作为片上芯核,相应 地使用了a m b a 总线作为片上总线。在芯片中,集成了嵌入式外部存储器控制器、d m a 控制器、 l c d 控制器、m m a 、u s b 接口、u a i 盯接口和s p i 接口等模块。图1 2 中给出了g a r f i c l d 芯片的 结构以及其应用的典型环境: c n c 叫 州。弘f k 加m m l 0 d l p c c l f; 东南大学硕士学位论文 图1 2一款基于a r m 7 t d m i 的s o c 芯片及其应用环境 其中,删7 1 1 d m i 通过a m b a w r a p p e r 作为m a s t e r 挂在a h b 总线上。而d m a 控制器、l c d 控制器、m m a 也作为m a s t e r 挂在a h b 总线上,它们的相应配置部分则都是s l a v e 模块。m c ( 存 储器控制器) 模块也作为s l a v e 挂在a i m 上,a r m 7 i d m i 以及其他的m a s t e r ( 比如l c d c ) 通过 它访问片外的各种存储器( f 1 a s h 、s r a m 以及s d r 珊等) 。a h b d e c o d e r ( a h b 译码模块) 、a h b a r b i i e r ( a h b 仲裁器) 则负责舢 b 总线的运行。另外,u a r t 接口模块、s p i 接口模块以及a c 9 7 控制器 模块等则挂在a p b 总线上,而a p b 总线则是通过a p bb n d g e ( a p b 总线桥) 与a h b 总线连接在 一起。 1 2 嵌入式l c d c 对总线带宽的占用及其对s o c 芯片性能的影响 从图1 2 可以看到,a r m 7 1 d m i 需要通过总线访问各个s l a v e ,d m a 工作的时候也需要通过总 线访问外设进行数据交换,而l c d 控制器模块为了实现实时显示更是需要不断地通过总线来访问显 存读取数据,系统中其他的m a s t e r 在工作的时候也要占用总线。这其中的任一个m a s t e r 如果占据总 线时间过长过频繁的话,势必会影响其他m a s t e r 对总线的申请和占用,系统性能将会大幅下降。 这其中特别要引起注意的是l c d 控制器模块。对于彩屏显示,其需要的数据量是很大的。以一 块3 2 0 2 4 0 、1 6 b p p ( b i t p e rp j x e l ) 的t f r 彩屏为例,其每一帧需要:3 2 0 2 4 0 1 6 8 = 1 5 3 6 k b y t e 。 这么大的数据量是不可能通过片上存储器( 比如e s r a i n ) 来提供的,其势必要通过存储器接口从外 设取得。这样的话,由于l c d 控制器所需要的数据量很大并且需要实时显示,l c d 控制器的工作 将会占据大量的片上总线带宽( 在下文会给出我们实测的一组数据) 。严重的话甚至会影响到整个系 统的正常运行。而在目前的消费电子领域,支持彩屏应用几乎是不可缺少的。 因此,为了该s o c 芯片能高效地在系统中工作,必须仔细研究影响l c d c 的总线带宽占用率的 因素,给出改进和优化的手段,为该芯片本身的下一步开发提供思路,并为芯片在系统中的应用提 出解决方案。 而在其他基于a r m 7 i d m i d 的面向各种应用的s o c 芯片中,很多都集成了类似于l c d c 这样 需要很大数据量的模块,比如说,打印处理模块、网络处理模块、i d e 接口模块等。比如,a 耶e l 的a t 7 5 c 2 2 0 、i n r e l 的p 2 2 0 和s a m s u n g 的s 3 c 4 5 3 0 等都集成了以太网控制器模块;c i r r u s 的s h 8 6 6 5 集成了a 1 渔i d e 接口模块:s a m u n g 的s 3 c 4 6 1 0 集成了打印处理模块。而这些模块工 作时因为需要频繁访问外存读写大量数据,因而对总线的占用也会很大,并因此往往会制约着系统 性能的提升。以下以a 1 m e l 的加5 c 2 2 0 芯片为例做一个简要的分析:这也是一款基于a r m 7 1 d m i 的s o c 芯片,其面向的是网络应用处理领域,在该芯片里集成了1 0 1 0 0 m b p s 的双端口蚍太网的m a c ( 媒体存取控制) 模块、语音处理模块、存储器接口模块等口j 。在图1 3 中给出了芯片的架构及其的 一个应用环境。该芯片的典型运行速度是5 0 m h z ,总线宽度为3 2 位,在该环境下( 设外部使用3 2 2 第一章绪论 位的s r a m 存储器) ,最典型的应用是,芯片通过外部的物理层芯片从以太网上下载数据或者往以 太网上传输数据。这里考虑用最高速度下载数据时的情况,也就是使用1 0 0 m b p s 的峰值速度进行传 输,由于受实际物理条件的限制,一般用以太网传输时达不到这个速度,我们设为8 0 m b p s ;一般往 外存写数据需要5 7 个时钟周期( 使用s r a m ) ,这里设为最少的5 个时钟周期,而地址译码至少 需要1 个时钟周期,因此每次传输至少需要6 个时钟周期。则以太网传输所占据的总线带宽为: 8 0 m b p “8 4 5 0 m + 6 。1 0 0 = 2 9 9 8 也就是说,在典型应用的环境和峰值速度传输的情况下,即使不考虑总线碰撞等情况,以太网处理 模块就要占据接近3 0 的总线带宽,如果考虑到a r mc o r e 还需要从外存中取相应的数据进行处 理咀及通过m a c 模块进行数据的上传工作,则几乎整个总线带宽都会被网络处理所占用。芯片的 其他功能诸如语音处理( 也需要耗费大量总线带宽) 将几乎无法进行。a r m 丌d m i 的取指工作也必 然会受到严重影响,系统的实时性将无法保证。 1 ,”跳落一r 5 d r 圳i l 。勰掣,卜_ l “”“。l 【一t 鼎詈 j l 鞠 i j。 j 蔓h 兰ip i n gh c 。“l 一 毒 m 5 c 2 图1 3a r 7 5 c 2 2 0 芯片结构和其应用实例图 而对于集成了i d e 接口模块的s o c 芯片来说,由于其需要处理的数据量更大( a t a e 接口速 度最低也要3 3 m b s ) ,问题将更严重。所以,对这些类似g a r 丘e l d 、基于a r m 丌d m i ( 使用a m b a 总线) 、集成了需要处理大数据量的i p 模块的s o c 芯片来说,研究如何减少这些模块对总线的占用 的工作是非常迫切和有现实意义的。这也是本论文的主要意义所在。 另外,对于s o c 芯片来说,由于其结构的复杂,对其性能的评估往往是一件较困难的事情。一 般而言,是以其所用的c o r e 的主频来表示。但是,由于s o c 芯片是由多个主从设备组成的,仅仅 用一个主设各的参数还是无法表示整体的性能。对于这种多主设备,总线带宽是一个较好的衡量标 准。通过考察系统的总的总线带宽的使用情况,可以评估出系统的使用性能,并采取相应的优化措 施。 1 3 课题的主要工作和意义 一般说来,s o c 芯片是由片上芯核( c o r c ) 、用户设计的i p 核以及将这两者集成在一起的总线 组成的。其中,片上芯核的选择是首要的一环。它的选择实际上就决定了使用何种片上总线以及芯 片的体系结构。而a r m ( a d v a n c e dr i s cm a c l l i n e ) 公司的a r m 系列嵌入式微处理器凭借其高性能、 低功耗的特点占据了市场的主要份额。其中的a r m 7 t d m i 又因为其相对低廉的价格在s o c 芯片的 设计中廊用得比较广泛。这也是在g a m e l d 系列芯片中使用a r m 7 ) m i 作为c 0 r e 的原因。由于 a r m 7 1 卫m i 是没有c a c h e 的,因此其必然要频繁地通过总线从外存中取数据,这必然和l c d c 通 过总线取显存数据形成冲突。 通过查阅目前主流的面向消费电子领域的基于a r mc o r e 的s o c 芯片资料可以看到,大部分 支持彩屏应用的s o c 芯片都采用了更高的主频和更高的总线频率,比如m o t o r o l a 的m x l 。但 是我们知道,a r m c o r e 的l i c e n 费用是非常昂贵的,采用更高主频的a r m c o r e 米说,意味着 3 东南大学硕士学位论文 成本的成倍上升。这对于大多数中小型的设计公司以及刚刚起步的公司和研究机构来说,是无法接 受的。那么对于基于a r m 7 i d m i 的s o c 芯片( 以图1 2 所示的系统为例) 米说,有没有措施通过 改进芯片本身的设计和对系统设计的优化,来实现对大尺寸、高分辨率的l c d 彩屏的支持呢? 这就 是本文的主要工作所在。 本论文紧紧围绕着以下三个问题进行了研究和讨论: 1 ) l c d c 对总线带宽的占用究竟和那些因素有关,或者说能否给出l c d c 总线带宽占用率的理 论公式: 2 ) 有那些措施能减少i c d c 对总线带宽的占用,又有那些措施能增加芯片的整体总线带宽,从 而减弱l c d c 对总线带宽占用的影响? 又如何实现这些方法? 3 ) 对以上手段,能否给出实验平台进行测试,并得到一些有用的结论? 针对姒上问题,本论文给出了l c d c 总线带宽占用率的理论公式和实际的测试平台,给出了诸 如降低刷新率、选择合适的显存、提高猝发传输跃度、使用c a c h e 、使用双层a m b a 总线等方法, 并对这些方法进行了详尽的分析,给出了实际的测试结果。这些,是本文的重点。另外,通过以上 的分析过程,我们还得到了如何对l c d c 以及相关模块的优化手段,对它们的实现、分析和评测是 本文的另一个重点。特别是其中的双层a m b a 总线架构是解决l c d c 总线带宽占用过高以及类似问 题的根本方法,因此在论文中详细介绍了其设计及应用。 本论文的工作的意义在于: 1 ) 对l c d c 总线带宽占用的分析,可以促使进行l c d c 模块的优化,从而减少【c d c 对总线 带宽的占用。而对l c d c 总线带宽的讨论,不可避免地要牵涉到其他主设备对总线带宽占用的分析, 这样通过对整个芯片总线带宽的分析,就能寻找到可以提高芯片整体性能的措施,为g a 币e l d 系列 s o c 芯片的设计提供参考; 2 ) 对嵌入式l c d c 在基于a r m 7 ) m i 的s o c 芯片中的总线带宽的讨论,对丁其他基于 a r m 7 t d m i 的s o c 芯片的设计会有一定的借鉴作用。尤其是对于在片上集成了需要高数据带宽的 s o c 芯片来说,它们也会面临类似的问题。因此,本论文的讨论和思考不仅仅是适用于g a 币e l d 系 列的s o c 芯片,对于其他基于a r m 7 1 d m i 的s o c 芯片都会有所启示。 3 ) 对g a m e l d 系列芯片总线带宽的讨论,有助于摸索出如何衡量s o c 芯片的性能标准。对s o c 芯片的性能进行度量是一什复杂而又困难的工作,而总线带宽则提供了这样的一个手段。因此,本 论文对g a m e l d 芯片的总线带宽的分析,可以给其他s o c 芯片的性能评估给以借鉴。 1 4 本论文的结构 在本文第一章中,简要介绍了嵌入式l c d c 的设计和其应用的环境:在第二章中,分析了影响 l c d c 总线带宽占用的各个因素,得出了l c d c 总线带宽占用率的公式,并给出了对实际的l c d c 总线占用率进行测试的实验平台以及目标系统:第三章中讨论了如何改善l c d c 对总线带宽占用的 途径,主要围绕着降低刷新率、选择合适的显存和增加猝发传输的长度、使用c a c h e 、使用双层 a m b a 总线架构等五方面进行了较深入的研究,比较了理论计算结果和实际测试结果并加以分析; 第四章中则根据第三章中发现的问题,围绕着如何在显存为s d r a m 时实现对猝发传输长度1 6 的支 持、如何实现r e m a p 功能从而利用e s r a m 作为l c d c 的部分显存以及双层a m b a 总线的实现进 行分析,并给出了以上三个优化方案的设计和对各个方案的评估,其中对双层a m b a 总线方案进行 了深入的探讨。最后总结和展望中,对论文的工作进行了总结,并提出了需要继续深入之处。 4 第二章l c d c 对总线带宽占用的分析 第二章l c d c 对总线带宽占用的分析 2 1 嵌入式l c d c 的工作过程 基于a h b 高性能总线,嵌入式l c d 控制器的整体结构见图2 1 所示,包括嵌入式l c d 控制器 的m a s t e r 和s i a 接口,以及a h b 总线的基本构成,其中灰色箭头表示数据方向,白色箭头 表示地址或者相关控制信号方向。 卜p b 。,。剩 m m 浏e 吕会:基r r d a t a 剖 a j h 兰 匡垮 b 刮翼】4 。t 、r b u s玉z 卜卜 1 _二 | o 蒜 = 一 、r 。 f 二二 r 、。 图2 一l 嵌入式l c d 控制器结构图 从图上可以看出,l c d 控制器跟a i b 总线相连,这是由于l c d 控制器是个数据吞吐量量很大的 操作模块,必须使用高性能的a | 总线来支持l c d 控制器的正常运行,同时满足其它功能模块的正 常工作。内核主要通过总线对嵌入式l c d 控制器进行配置操作以控制l c d 控制器的具体运行,配置 完成之后就由l c d 控制器独自运行,其经过a h b 总线从存储器读取数据刷到屏上;而内核可以不再 参与l c d 控制器的运行,留给自己足够的处理时间处理系统中其它任务。 内核a r m 7 i d m i 对l c d 控制器的配置是通过a m b a 的a h b 总线对s l w e 接口模块中的寄 存器进行设置完成的,并且l c d 控制器的使能信号寄存器是最后一个配置的。这些所配置的参数, 将会决定m a s t e r 模块怎样通过内嵌d m a 去申请总线传输数据,决定l c d 控制器的: 作显示模 式以及输出到屏上的控制信号和时序信号;在配置好s i a v e 模块中寄存器之后,l c d 控制器将开 始二 作。首先m a s t e r 模块去申请总线一直到总线仲裁器让m a s t e r 模块得到总线使用权,这时 m a s t e r 模块送出第一个地址信号以及相应的控制信号,再通过总线译码器选中总线上相应的 s i a v e 模块( 存储器接口模块) 从而从存储器中读取所需的显示数据。为了保显示证数据的连贯性, 需要两个f 1 f o 咀缓冲数据,一个存储从总线过来的数据,另一个存储刷到显示屏上的象素数据;按 照显示屏的工作显示模式,将会对原始数据进行适当的处理,包括查找调色板r a m 和f r c 灰度控 制等;经过处理的数据经过缓存按照接口宽度将会送到显示屏上;同时l c d 显示屏所需要的几个接 口信号由显示屏接口模块产生,也一起送出去,这些信号的时序也是由s l a v e 模块中配置寄存器的 参数值所决定的。 分析以上过程,可以发现,l c d c 对总线带宽的占用率和以下因素相关: 1 ) 首先,l c d 屏的尺寸、分辨率、刷新率等这些参数决定了l c d c 进行正常显示需要的数据量 的大小,是影响l c d c 总线带宽占用率的重要因素; 2 ) 其次,显示数据存放的存储器的性能对l c d c 的总线带宽占用也有重要的影响,因为如果存 储器的存取速度越慢,其每次取数据所耗费的时钟周期就越| 圭,对总线带宽的消耗就越大; 东南大学硕十学位论文 3 ) 最后,一些总线传输的参数的配置也会影响到l c d c 对总线带宽的占用,比如猝发传输的长 度、l c d c 的总线优先级等; 4 ) 另外,系统的总的总线带宽是另外一个重要因素,如果可以显著地提高系统的总线带宽, 则l c d c 对总线带宽的占用率也就会下降。 2 2 嵌入式l c d c 总线带宽占用率的理论分析与推导 2 2 1l c d c 对总线带宽占用的计算 带宽是任何系统性能分析( a n a l y s i s ) 中重要的一个环节。具有很大尺寸和很高分辨率的屏幕的 系统,必须要确保屏幕能实时地从外存中取到数据。同时,对给定的系统,也必须选择合适的屏幕。 上文中已经分析了l c d 刷新所需要的总线带宽取决于那些因素,以下就给出l c d c 总线带宽占用率的 公式和推导过程: 1 ) l c d c 正常显示需要的带宽曰w i c d c b w l c d c = b w dxn _ 。 式中 。一一l c d 屏显示时每秒的帧数( f r a m e s e c ) 曰w ? m 一一每帧需要的数据量( 8 n s e c ) 其中,曰t 耽。又可以从下式得到 b w l 佃= l jj 】e s p i j e j s 刖t p e r p j x e j 式中 l j n e s 一一l c d 屏的行数( l i n e ) : 州x “s 一一每行需要显示的象素点数( p i x e l l i n e ) ; 尉甩r p j x “一一每个象素点的显示位数( b i t p i x e l ) ; 由公式( 1 ) 和( 2 ) ,可以得到: b w d c = l i n e sxp i x e l sxb i t p e r p i x e lxn 妇。 例如,对于8 0 0 6 0 0 、1 6 b p p ,刷新率为6 0 h z 的l c d 屏,其需要的总线带宽为 b t 讥c d c = 8 0 0 6 0 0 1 6 6 0 = 4 6 0 8 m b i t s e c 表2 1 作为示例,给出了两种l c d 屏显示所需要的带宽”1 : 表2 1 两种l c d 屏显示带宽 6 ( 2 ) 第二章l c d c 对总线带宽占用的分析 2 ) 系统的总线带宽b w m 。 式中 b w “;= f 。xn 。 f k 为总线运行频率( h z ) 为总线宽度( b i t ) ; 例如,对于总线频率为5 0 z 的3 2 位的a i b a 总线,其带宽为 曰t y m ,= 5 0 1 0 6 3 2 = 1 6 g b i t s e c ( 3 ) 3 ) 理想传输情况下l c d c 对总线带宽的占用率: 这里的理想传输情况是指l c d c 从a m b a 总线取数据的时候是每次取1 拍( 3 2 位) ,而每拍只 占用总线1 个时钟周期,也即l c d c 每次传输占用总线1 个时钟周期。则此时l c d c 对总线带宽的 占用率0 l c d c 为: n 一= 甓舞絮焉等枷甓枷o 4 ) 实际传输情况下l c d c 对总线带宽的占用率: 上述理想情况在实际系统中是不存在的:首先,a m b a 总线支持猝发传输( b u r s tt r a n s f e r ) , 而在使用了猝发传输模式以后,l c d c 只需要申请次总线就能完成多拍( 也就是更多位数据) 的传 输,效率可以得到很大提高( 这在后文中会有实测的数据进行说明) ,因此实际当中l c d c 的d m a 模 块总是配置为以猝发模式从a m b a 总线上取数据( 当然,也可以把每次l 拍的传输理解为传输长度为 1 的猝发传输) ;其次,l c d c 通过a m b a 从显存中取数据的时候也不可能实现每拍1 个时钟周期,这 是因为外部的显存一般都需要等待时间,而且l c d c 模块以及存储器接口模块内部的数据路径也都存 在延时。每次猝发传输所需要的时钟周期数可以用n b u r “一c y c l e s 表示,这个值会在下文中给出详细 的计算。 所以,在实际系统中,需要对公式( 4 ) 进行修正:设猝发传输的长度为b l ( b u r s tl e n g t h ) , 对于l c d c 主设备,每次猝发传输所需要的占据总线的时钟周期数是n b u r s t y c l e s ,而对于总线来说, 每次猝发传输需要的时钟周期数是固定的( b l 个时钟周期) ,因此,实际的l c d c 对总线的占用率o l c d c 为: 仇。:堕擎孚墼等掣粤堑型1 0 0 ( 5 ) 眦“2 面瓦茹琢赢再i 茅l u u 而n b u r nc y c l e s 是由外部存储器的类型、猝发传输的k 度( b l ) 以及l c d c 本身的设 计、a i b a 总线的设计以及存储器接口模块的设计等决定的: n n 一叫。= n “口一叫。+ n 一。,一删! ; t 6 ) 式中 女如一d 。h 一一每次猝发传输在l c d c 占据总线以后在l c d c 模块、a m b a 总线和存储器接口模块 内部的延迟时钟周期数; 。一l 。“一一每次猝发传输在显存内部耗费的时钟周期数。 东南大学硕士学位论文 其中,对于目前的设计,n d e l a v - c y c l e s 是固定的,包括: ( i ) 存储器接口模块内的延迟:对于目前的设计,s r a m 控制器内部的输入延迟( 也即地址译码 周期) 为一个时钟周期,数据是锁存一个时钟周期再输出:s d r a m 控制器内部的输入延迟为 一个时钟周期:而对于e s r a m ,其目前的控制器的设计中内部的输入延迟也为一个时钟周期。 ( i i ) a m b a 总线上数据输山延迟,在目前设计中为零: ( i i i ) l c d c 模块内数据输入延迟,在目前设计中也为零。 对于n m e m o r v - c y c l e s ,以下给出三种常见的显存的结果( 详细的分析见第三章) : ( i ) 外部s d r a m : n 。d 。ss d w = t 。+ t p c d + c l + b l x n 。r d ( 1 ) 式中 l 一一一从激活行到读写之间的间隔:一般为2 个周期; z ,一一预充电周期:一般为2 个周期 c l ( c o l u m n a d d r e s ss e l e c tl a t e n c y ) 一一列地址选择延迟:一般为2 或3 个周期 z 圮( b u r s tk n g t h ) 一一猝发传输长度( 拍数) ,也即每次猝发传输的字( w o r d ) 数 。m 一一每个字( 3 2 位) 数据的传输周期数。 ( i i ) 外部s r a m : 一。一忡一册w = ( ,+ 1 ) 砚 ( 8 ) 式中 v 一一对外部s r a m 读需要的等待周期数。 ( i i i ) 片上s r a m : 对于片上s r a m ,由于其的高速度,对其的每次读写都只需要一个周期,而且其数据是直接送到 a i b 上;但是注意到a h b 总线的流水特性,故需要增加一个时钟周期锁存地址和控制信号,因此 k 。b = 占三。d + 1( 9 ) 在以上公式中,需要先加以说明的是o r d :在目前的设计中,a 船a 总线是3 2 位的,l c d c 模块 以及存储器接口模块是3 2 位宽的,如果外部存储器也是3 2 位宽,则每次读写数据( 1 个字) 只需 要一次操作即可完成,此时n w o z d = 1 :而如果外部存储器是1 6 位宽,则每次读写数据需要两次操作 才能完成,此时n w o r d = 2 ;同理,当外部存储器是8 位宽时,n w o r d = 4 。 由公式( 2 ) 、( 3 ) 、( 5 ) 和( 6 ) ,我们可以得到修正的实际系统中l c d c 对总线带宽占用率的公 式: d :型系些鲁掣生生丝竺! 1 0 0 “2 百瓦x 瓦硒赢面石矿l u u 如 :里堕竺:丛竺芸l 全生等坠坠! :竺! 1 0 0 曰眠,脱 一 = 塑业坐塑案等患警坐型生型1 0 0 f b 。xn r 。x b l ( 1 0 ) 8 第二章l c d c 对总线带宽占用的分析 f 面给出三个例子: 例l :总线( 3 2 位的a 船a 总线) 时钟1 0 0 姗z ,外挂6 4 0 2 4 0 、1 6 b p p 、刷新率为8 0 h z 的 t f t 彩屏,显存为1 3 3 m h z 的1 6 位s d r a m ( t r p = 2 、t r c d = 2 、c l = 2 ) ,猝发传输长度为4 。则 口w i c d = 6 4 0 2 4 0 1 6 = 2 4 5 7 6 m ( b i t ) m 。= 8 0 h z 女姆一 h = l ( c l o c kc y c l e ) 一f q 吣= 2 + 2 + 2 + 4 术2 = 1 4 ( c l o c kc y c l e ) b i ,= 1 0 0 m 3 2 = 3 2 g ( b i t s e c ) 砚= 4 因此:= 堡堕等鬟麓型加。 ! :竺! 竺! ! ! 兰! ! ! 尘1 0 0 3 2 g 4 = 2 3 0 4 例2 :总线( 3 2 位的a m 队总线) 时钟5 0 m h z ,外挂3 2 0 2 4 0 、2 5 6 色、刷新率为8 0 h z 的 s t n 彩屏,显存为9 0 n s 的3 2 位s r a i ,猝发传输长度为8 。则 。= 坐塑堕丝雩鲁慧裟尘生型枷。 “2 瓦五可j 峦r 一引如 :型! 竺! ! :! ! 兰! ! ! ! ! ! ! 盟1 0 0 _ i n j , 5 0 0 0 0 0 0 0 3 2 8 = 2 1 8 8 例3 :总线( 3 2 位的a m b a 总线) 时钟5 0 删z ,外挂1 6 0 2 4 0 、2 5 6 级灰度、刷新率为8 0 h z 的s t n 黑白屏,显存为4 0 k b y t e 的3 2 位片内s r a m ,猝发传输长度为8 。则 仇一丝业坐塑雩兰慧裟生生刿枷。“2 瓦j 可瓦瓦瓦一“ :塑! 型! ! ! 翌兰! ! 堕1 0 0 5 0 0 0 0 0 0 0 3 2 8 = 1 7 2 从以上几个典型例子通过理论推导出的公式进行计算的结果来看,大尺寸、高分辨率的l c d 屏 应用时l c d c 对总线带宽占用是很高的( 超过2 0 ) 。而需要注意的是,以上的讨论中仅仅考虑了l c d c 从外存取显示数据时所耗费的总线带宽。实际上,外存中的显示数据是一直在更新的。这些显示数 据的更新同样的也要占据大量的总线带宽。因此,实际上l c d 显示所占用的总线带宽应该大于上面 的数值。在最极端的情况下:l c d c 每取完一帧数据,显存中的数据就更新一帧,则此时l c d c 占用 的总线带宽应该是阻上数值的两倍”1 。因此,必须寻找各种方法来解决这个问题。 9 东南大学硕士学位论文 以下是儿个实际的p d a 产品及其使用的l c d 屏和外存的例子: 例1 : h pj o h l d a 7 2 0 :采用6 4 0 2 4 0 、1 6 b p p 的t f t 彩屏,外存为3 2 船的s r a i ,主频2 0 0 m : 例2 :联想p a m1 碣:采用3 2 0 2 4 0 、1 6 b p p 的t f t 彩屏,外存为1 6 m b 的s r a i ,主频6 6 m : 例3 :神达m i 。3 3 6 :采用3 2 0 2 4 0 、1 6 b p p 的t f t 彩屏,外存为6 伽的s d r a m ,主频3 0 0 m : 例4 :东集g o a l 8 8 :采用3 2 0 2 4 0 、4 级灰度的s 州黑白屏,外存为3 2 肥的s d r a m ,主频2 0 0 m 。 2 2 2 其他主设备总线带宽占用情况分析 在图1 2 所示的芯片架构里,a h b 总线上还有删c o r e 、m m a 、d m a 、u s b 等主设备,为 了考察整个系统的总线占用情况,有必要分析这些主设备对总线带宽的占用情况,下面就对前三者 进行简要的分析。其中,a m b a 总线时钟设为5 0 m h z ,数据存储器设为外部的s r 舢v i ( 等待周期 为3 ) 。 lm m a 主设备: 图卜2 所示的埘a 主设备里,主要包括两个子模块,i m d c t 子模块和m a c 乘加运算子模块,其功 能是将非常耗系统资源的矩阵乘运算通过并行的硬件来实现,从而加快m p 3 解码的速度,同时也减 少m p 3 解码对系统资源的占用。 在m p 3 标准中,规定了二种采样频率:“1 0 0 次秒,4 8 0 0 0 次秒和3 2 0 0 0 次秒。也就是说在 声音播放的时候需要在一秒钟之内完成上述规定个数的卢音样值信息。而m p 3 文件是以帧的形式进 行存储的。在进行解码时,每帧数据包含了1 1 5 2 个样值。因此可以计算出在采样率最高的情况f , 每秒内至少应该完成:4 8

温馨提示

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

评论

0/150

提交评论