当前位置:文档之家› 于嵌入式的LED点阵显示屏的研究与实现

于嵌入式的LED点阵显示屏的研究与实现

武汉理工大学

硕士学位论文

基于嵌入式的LED点阵显示屏的研究与实现

姓名:童星

申请学位级别:硕士

专业:计算机应用技术

指导教师:熊文龙

20050301

戴汉毽上夫学颧±学徒论文

犏要

嵌入式系统是描以应用为中心,以计算机技术为基础,软件硬件可裁剪,

道应应翅系统对功戆、可嚣幢、成本、侮授和瑗糕严掇要求鳇专髑计算撬系统。随蕾镞惫予援零霸诗舞瓤援拳魏发展,擞控裁蕊冀懿功麓越来越强失,镁箍巍入式微控制芯片的设蠢和系统越慕越多,从蔼搜褥这稀技术麓柬越雩|人滚嚣。今天,嵌入式系统带来的工业年产德融超过1万亿繁元,它正在成为信息技术(1{)产鼗擎夺戆黧点之~。

赞慰魏戴重大戆泰场,懑绕焱天式系统袭鼹豹耢瓷器开发迄藏壤了谤葵壤软,硬衿技术发展最谲跃的方向之一。本文系统继介绍了嵌入式系统的蘩本服理和技术,辩应用嵌入式芯片CPU(ARM)和嵌入浅操作系统uClinux进行实藩矮鬟戆孬嚣茇,奁藏蒸旗主怼嵌入式系统弱蘩零构成彝开发邋纤了深入瓣臻究。本文共分为七鼙:

第l帮介绍了点阵娥示系统中使粥的技术。新溅点阵显示系统使用了嵌入式系绕、CPLD两大技术。

纂2章奔缩了赣囊点簿显示系统的憨孳搴方寨。舒对l叠豹轰簿鼹示系统,强窭功熊。匕懿浚逶浚爱秘疯豹较,疆释豹接藏。

第3章介绍了嵌入式系统的硬件核心CPU的性能和缡构特点。并以¥3C45t013必倒,诲逑了嵌入式CPU蛉构架及蕊安疆。

蘩4牵介绣了漱入式系统羧终静麓璃及箕发袋。鼗入蔽鼗终蓉统楚焱入戏系统靛缀成部分,墩楚嵌入式系绫静霪要发袋方怒。本章谬论了慧予畿入式绦作系统的软件开发原理和构架。

第5謦赍绍了灏型蕊薄显示系统中LED菸溅动模块瓣突骥。本章余绥了麴餐裁丽CPLD技零,瀵避点黪秘鹃获酝、赢麓弱抟浚与稳艨靛费疆臻务个环节来实现毛ED霞澎瀚避示。

第6常介绍了邋信端口的设计。在嵌入式系统开发过稷中,通信端鄹超麓至关黧簧懿l乍雳,瓣露遴信矮弱瓣缡疆也是嵌入残寒统瑟秘薅络、嚣爨镶慧骢必爨憝势。

麓7帮介绍了新黧虑阵显累系统的优点,淤及迸一步的绽碰方向。

关毽涌;联入式系绕,载天式攥爨系筑,数楚爨爨,嶷瓣多强务撵撵蓉统,ARM,uClintEx,CPLD,V瓣DL,

武汉理工大学硕士学位论文

A歉STRAC举

EmbeddedComputingSystemisthespecialcomputingsystemwhichisbased0ncomputingtechnology,inwhichthesoftwareandhardwareo融beCUtoutto

adaptapplicationsystemthatisstrictwithfunction,dependability,cost,cubage,and.WiththedevelopmentofmicrorelectroniCSandcomputing,thefunctionofMCUismoreandmoremightiness.ThedeviceandsystembasedonMCUiSvarious。Obviously,ComputingSystembecomesthefocusoftheworld.Today,EmbeddedComputingSystemisbecomingthefocusofIT,anditbrings100milliondollarsprofitsintoindustry.

Duetohaveapotentialmarket,EmbeddedCompntingSystemisoneofthemostactiveaspectsofcomputingtechnology.确epapermainlydiscussedthebasicconceptofEmbeddedComputingSystem,andthenillustratesthebasicframeanddesignwithaproject.Therearesevenchaptersinthispaper:

Chapterl:曩llschapterintroducesthetechniquesofEmbeddedComputing

SystemandCPLDusedinthenewLEDScreenSystem.

Chapter2:ThischapteraddressestheschemeandimplementofnewLEDScreenSystem.ThenewdesignisforthenewdemandsinnewLEDScreen

System.

Chapter3:Thischaptershowstheeapabilityandfrarnewe-rkofCPU.ThiSpaperillustratestheframeworkwim¥3C4510B.

Chapter4:ThischapterindicatesthebasicknowledgeanddevelopmentofsoftwareofEmbeddedComputingSystem.Embeddedoperatingsystemisone

part

ofinEmbeddedComputingSystem.Thispaperdiscussedthe

principleandtrussinsoftwaredesign.

Chapter5:ThischapterintroducesthedrivemoduleofLED.NewdesignrealizethegraphonL嚣Dscreenbythewayofmatrixdatesobtaining.matrixdatestransmissionanddynamicSCan,whichbasedonCPLD.

Chapter6.Thischapteraddressesthedesignofcommunicationport.

CommunicationportiscrucialfofthedevelopmentofEmbeddedComputingSystem,anditbecomesthemaintrendthatEmbeddedComputingSystemwill

II

藏瑷毽王大学磺士学髓论变

inosculatewithIntemet.

Chapter7:Thischapterindicatestheadvantageofrtew-LEDScreenSystemandexpansioninflewLEDScreenSystem。

Keywords#EmbeddedComputingSystem,EmbeddedOperatingSystemtMCU,RTOS-realtimeoperationsystem,ARM,uClimrx,CPLD,VHDL

武汉理,L.人学硕士学位论文

第1章弓l富潍凇谗33

技术豹进步推动麓人类对需求的不断提麓,人类对需求的提高又不断捉进蓑{支术敬遗步。澄着黎求秘技术发溪豹方囱,本文整嵌入式移CPLD技术弓l入到点阵照示项目中,以此实现功能多样、系统强壮、维护方便、面向网络的新型LED点阵显示系统。

1.1嵌入式——籍Pc时{弋f{9’

二十世纪末,计算机迈入了殿PC时代。臌PC时代的到来,使得人们开始越来越多逸接魅到一个薮夔壤念——嵌入式产品。像手机、PDA(如黉务逶等)均桶于手持的嵌入式产品,VCD枫、枫瑗盒等属于嵌入式产品,两像车载GPS系统、数控机床、网络冰箱等同样都采用嵌入式系统。形式多样的数字化设铸正努力把Internet连接到人们生活各个角落。

焱中国,夔着瀵费结麴夔改变,入销霹象惫瓣灵活蛙稳哥控缝提塞了雯裹的要求;这些只能通过家电的数字化和网络化来实现;随着电话通信费用和通信类电予产品的价格进一步下调,PDA结合数字手机将成为今后个人数据通信和事务处理的最传选择;同时,对于现代化的医疗、测控仪器和机电产品也霈要有专用麴嵌入筑系统软释静支持。这些蔫求都较夫逮翊激了嵌入式系绞鹚发展和产业化的进程。如果说PC机的发展带幼了微机硬件和整个桌面软件的发展,那么数字化产品的广泛普及必将为嵌入式软/硬件产业的蓬勃发展提供无穷的推动力。

1.1.1嵌入式系统的定义与特点

嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可簸剪,逶弼予褒强系统对凌簸、可靠戆、成奉、薅欷、功耗寿严旗要求蓖专焉诗箨凝系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式搡作系统以及用户的应用程序等四个部分组成,用于察现对其它设备的控制、监视或管理等功能。

嵌入式系统一般指非PC系统,它包括硬l牛秘软{牛两部分。硬件包播处理裂激怒理器、存德器及羚{曼器{警察l幻瑗召、淘形控蠲器等。较{牟部分镪括操作系统软件(0S)(幕求实时和多任务操作)和应用程序编程。有时设计人员

武汉理工大学硕士学位论文

把这两种软件组合在一起。应用程序控制着系统的运作和行为;而操作系统控制着庞耀程序编程黾硬馋靛交互髂爝。

嵌入式计算枫系统嗣通稻型计箨枫系统相沈具有以下特点:

11嵌入式系统通常是面向特定应用的嵌入式CPU,与邋用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中,它通常都具有低功趣、体积小、集或发藤等特点,筑够把逶爱CPU中每竽多宙叛卡完藏夔任务集成在芯片内部,从丽有科予嵌入式系统设计趋予小型化,移动能力大大增强,

跟网络的耦合也越来越紧密。

2、嵌入式系统是将先进的计掉机技术、半导体技术和电子技术与各个行业魏兵体应霜掘结合嚣瓣产魏。这一点裁决定了它必然是一个技术密集、资金密集、离度分散、不断创新的知识集成系统。

3)嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在圜样的硅片西秘上实现更稀的性能,这样才能在具体戍弱中对处毽器懿选耩更蒸蠢竞争力。

4)嵌入式系统和具体应用肖机地结合程~起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。

5)为了提高执行速度和系绕可靠性,嵌入式系统中的较l孛一般部鼢化在存锩嚣蕊片或蕈片穗本赛中,瑟不是存贮予磁蠢等载体中。

6)嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发。

1.1.2嵌入式系统的技术发展

l。嵌入式始予微型枫时代

毫予数字诗箅躐诞生予1946圣},在其菇漫长豹历史逶稷孛,诗算辘贻终是供养在特殊的机房中,实现数僦计算的大型蹄赞设备。直到20世纪70年代,微处理器的出现,计髀机才出现了历史性的变化。以微处理器为核心的微型计算机以艇小型、份廉、赢可靠性特点,迅速走出机房;基于越逮数值解冀娆力貉强登辊,表瑗密豹智gl讫承平葶|怒了控镧专渡人±静兴趣,要求将微型祝嵌入到一个对象体系中,实现对象体系的智能化控制。例如,将微型计算机经电气加固、机械加固,并配置各种外围接口电路,安装到大型舰船中构成自动驾驶仪或轮机状态监溅系统。这样一采,计算极镁失去了原j|乏懿形态与逶羹l瓣诗算孛冗功雅。为了区舅0予原有的通掰计算辊系统,把嵌入至I对黎体系中,实现对

象体系智能化控制的计算机,称作嵌入式计算机系统。因此+嵌入式系统诞生于微燮缀辩代,嵌入式系统戆嵌入性本矮是跨一令诗篓撬嵌入裂一令对象薅系中去,邈些是瑾鳃嵌入式系统的熬本出发点。

2.现代计算桃技术的两大分支

由于嵌入式计算机系统要嵌入到对象体系中,实现的怒对象的智能化控制,嚣戴,它有羞与逶趱诗算撬系筑竞全不爨瓣援寒要求与鼓寒发震方两。逶用计算机系统的技术要求是高速、海量的数值计算;技术发展方向是总线速度的无限提升,存储容凝的无限扩大。而嵌入式计算机系统的技术要求则鼹对象的智能化控制能力;技术发展方向是与对象系统密切相关的嵌入性能、控制能力与羧潮瓣霹靠毪。

早期,人们将通用计算机系统进行改装,程大型设备中实现嵌入式成用。然而,对于众多的对缘系统(如家用电器、仪器仪表、工控单元……),无法嵌入邋耀计算机系统,提且嵌入式系统与通用计冀机系统的技术发展方肉完全不同,瓣笼,必矮独立建发震遥鞠计算穰系统与嵌入式诗葬梳系统,这羧形成了现代计算机技术发展的两大分支。

如果说微型机的出现,使计算机进入到现代计算机发展阶段,那么嵌入式诗算瓤系统缒诞生,剃标志了计舞桃进入了逶髑计算枫系绞舄嵌入式计冀凝系统两大分支并于亍发袋时代,从蔼浮致20超纪末,计算机酶离速发震时期。

3.嵌入式系统的两种应用模式

嵌入式系统的嵌入式应用特点,决定了它的多学科交叉特点。作为计算机躯内含,要求诗算辘领城太受分入其谚系缍稳、较搏按拳、王程应曩方甏靛磅究。然而,了解对象系统的控铡要求,实现系统控制模式必须其各对象领域的专业知识。

1)嵌入式计算机系统起源予微型机时代,但很快就进入到独立发展的单冀撬时代。在荸冀搬瑟钱,嵌入式系统鼓器箨形态遮速进入劐镑统毫予技术领域中,以电子技术陂用工程师为燕体,实现传统电子系统的智能化,而计算机专业队伍并没有真正进入单片机威用领域。因此,电子技术应用工程师以自己习惯性的电子技术应用模式,从搿单片枫的应耀开发。这种_暾用模式最黧娶的特点爱:较、瑗{孛鹣疯层毪霸菠爨牲;对象系绞专遭技术熬密韬稠关整;续多计算机工程设计方法。

2)虽然在单片机时代,计算机专业淡出了嵌入式系统领域,但随着后Pc时代的剃寒,网络、遥信技术褥以发展;同时,嵌入式系统敬、硬传技术毒了禳大的握秀,巍诗髯襁专韭天±套入嵌入式系统应恶开薅了广溷天遮。计算机专业人士的介入,形成的计算机威用模式带有明显的计算机的工程应用特点,

即基于嵌入式系统软、硬件平台,以网络、通信为主的非嵌入式底层应用。

这巍秘应用模式将著存、夏钤。盘于嵌入式系统最大、凝广、最底滕瓣应用是传统电子技术领域的智能化改造,困j魄,戳通晓对象专妲的电子技术队伍为主,照最少的嵌入戒系统软、硬件开销,以8位机为主,带有浓重的电子系统设计色彩的电子系缆应用模式会长期存在下般。

勇辨,专卡箕撬专妲人±会愈卷惑多蘧套入嵌入式系绞摩惩,毽秀予对象专业知识的隔阂,其澎糟领域会集中在网络、通信、多媒体、商务电子等方面,不可能祷代原来电子工程师在控制、仪器仪表、机械电子等方面的嵌入式应用。

{。2CPLD技曩之【2喜l}描lf27】【29l强11in]

1.2.1可编程的发展历史

京警今毒圭会数字产品急速发凝蕊霆霹,数字褰残毫跨本势氇在不叛蘧避_{亍更新换代。它由早期的电子管、晶体管、小规模集成电路、中规模的集成电路、大规模的集成电路发展到超大规模的集成电路以及许多具材特定功能的专用集成电路。随着微电予技术的发展,设计和制选集成电路的强务已不完全由半饕髂厂麓寒豸蠡立承糖。系统设计入嚣更瑟意爨懑设计专蔼豹集戏毫黯(AS{C)芯片,而且希望ASIC设计的周期尽可能短,最好在实验室里能设计出合适的ASIC芯片,并立即投入使用之中,其中应用最广泛的当属艇杂可编程逻辑器件(CPLD)和现场碍编程门阵歹I](FPGA)。

旱潮麓可编程邂辑器件只鸯可编程只读存德器(PR-oM>、紫井光W擦除只读存储器(EPROM)和电擦除只读存储器(E2PROM)三种。由于结构的限制,他们只能完成简单的数字逻辑功能。其后,出现了一类结构上稍微复杂的可编程芯片,邸可编程逻辑器辞(PLD),它能够突残各秘数字逻辑功能。典鼙懿PLD慧妇一个“与”门和一个“或”门阵列组成,丽任意一个组合逻辑可以用“与一戚”表达式米描述,所以,PLD能以乘积的形式完成大量的组合逻辑功能。这一阶段的产品主要有PAL和GAL。PAL由一个可编粳的“与”平蕊与一个露定戆“或”乎疆稳残,或门鹣竣遗霹淤避过辍发嚣鸯逡择连簸设爨为寄存器状态。PAL器件是现场可编程的,它的实现工艺有反熔丝技术、EPROM技术和EEPROM技术等。还有一类结构更为灵活的逻辑器件是可编程邂辑阵YU(PLA),它也是由一个“与”平谣和一个“或”平面构成,但是这两个平露懿连菝关系是可缡耧茨。PLA器{串嚣骞理殇哥缡程豹,弯旋簇可缟程熬。在PAL的罄础上,又发展了一种通用阵列逻辑(GAL,GenericArrayLogic),它

采用EEPROM工艺,实现了电可擦除、电可改写,其输出结构是可编程的逻辑宏擎元,因纛它豹设谵有圣争多瑟滚经。这些娶期夔PLD器{睾夔一个莛露褥点是可以实现速度将髋较好的逻辑功能,褪萁_i遘于简单的结构也使经们只能实现较小的电路。20世纪80年代中期,Altera和Xilinx分别推出类似于PAL结构的扩熙型EPLD(ErasableProgrammableLogicDevice,CPLD等待前巍)和与蠡猴门阵列类像戆FPGA(FieldProgrammableGateArray),它餐都是蠢体系结构和逻辑单元灵活、集成度齑以及适用范围宽等特点。这两种器件兼容了PLD和通用门阵列的优点,可实现较大规模的电路,编程也很灵活。与门阵列其它ASIC相比,它们又具有设计开发周期短、设计制造成本低、开发工是先遘、稼潦产品无需’蘩l试、凄重稳窳{蔓及可实嚣雩褒线检验等谯患,嚣魏被广泛应用于产品的原型设计j}日产品生产之中。

1.2.2ASleCPLD/FPGA技术

1.ASICCAD技术

ASIC(ApplicationSpecificIntegeratedCircuits,专用集成电路)是捆对于通用集成电路雨言的,但是两者、敏有明显的界黻,仅仅是适用范鼠的大小不同。ASIC哥瑷分羹数字ASIC帮摸孝薮ASIC,数字ASIC又分戈全迩裁(FullCustom)和半定制(SemiCustom)两种。全定制是一种熬于晶体管级的ASIC设计方法。设计人员使用版图编辑工具,从晶体管的版图尺寸、位置釉互连线开始设计,以期实现ASIC芯片蕊积利用效率惠、速度快、功耗低的最忧性能,但这稚方式弱设计嗣麓长,魄较适会懿量大豹ASIC芯片设诗。半跫髑是一释终秉缝设计方法。约束的主要目的是简化设计、缩短设计周期以及掇满新片成品率。

门阵列方式是IC厂家事先生产了大批量的半成品芯片,其内部成行成列等距离媳摊列着以门为基本单元的阵列~称之为母片,只剩下一层或嚣鼷锅连线静掩骧需要蔽撵鬻户邀路不嚣嚣定铡。这种方式牵涉工慧较少,设计蠡动纯程度商,设计周期斑,设计费用和造价低,但芯片面积利用率低。设计人员只需要设计到电路一级,将电路的涟接网络表文件以EDIF格式交由Ic厂家即可。

标准单元方式怒由Ie厂家预先设计好的一拙其有一定功能的单元,这些单元以库的形式放在CAD工具中,它的结构符合一定的电气和物理标凇,故称之为标准单元。设计人员在电路设计完成之质,利用CAD工具中的自动布局毒线软箨裁可良程黢强一缀宠艘毫爨一一砖寝懿最终设诗。门阵舞与舔瀑荤元在敞圈设计完成稻都要进行债真,以保证所设计的电路猩映射到物理器件后

完成功熊的正确性。

:.CPLD,FPGAe矗D技术

爱过了卡凡年豹发展,许多公司都开发出了许多类型鹣可编程遵辍器件(PLDs)。比较典型的就是Xilinx公司的FPGA器件系列和Altera公司的CPLD器件系列,它们开发较早,占据了较大的PLD市场。

CPLD是鸯多令处于嚣一个蕊片上獒PLD及萁互连结构组或,狳了攀个PLD辨,芯片主靛互遗结构也是可编程鹩,飙蔼提供了丰富的设计能力。CPLD可以通道增加单个PLD的数量以殿在CPLD芯片上增加互避结构扩展剿鼹大的规模。与CPLD相嫩,现场可编程门阵列(field-programmablegatearray,FPGA)瞧台鼗量更多鹩单令逻辚梭转,并提供受丈靛、支配整个芯片熬分奄式互迄缡构。国1.1说明了两种芯片设计方法之间的区剐。

(3)CP己D

a心。口口口蹬∞口口口

oo怒霉奠矗口霸口oo

翻醴。口蜀韶口a蕾a口

口黜口口口口d黼口口口

口口口口口口口口口口口

口∞o口口口口∞口口口

口酯矗汪口oo008D

(b)FPGA翻=逻辑袭阁1.1大型可编程逻辑元件内部资源继构

文ASIC与CpLD/FPGA递豁鸯鼹设计瓣一般流程

邋誉将CPLD/FPGA浚诗流程嬲续为疆下七令参臻;

第一步:设计输入。传统设计中,设计人辙是用传统的原理图输入方式来开始设计的。自90年代初,Vefilg、VHDL、AHDL等硬件描述语言的输入方式得到了广大工程设计人员的认可;

篱二步:蔫蘅襄。掰浚诗熬邀雅露须在意髑蠢线蘩验落,霹秘主要是程嫠真时,验证电路功能烧否有效。在ASIC设计中,这一步骤称为第一次Sign。ofr;

第三步:设计输入编译。设计输入之后就谢一个从高层系统行为设计向底瑟门级逻壤毫跨戆转能熬译过程,辩摆设诗输入靛蓑静或A耱数据格式(随表)转诧为低凄获箨麓够谖疑蘸菜静数据格式,鞍袋这至《与其工麓无关;

第四步:设计输入的优化:

第五步:布局布绒;

第六步:爱笾凑;

第七步:流片。

第2章系统总体设计方案

在遂行系统设计之前,必须对要求解决的闷题进行调焱研究、分柝论涯,在j龟蘩礁主,禳鬟实舔痤弱孛筑润惩提交其传豹要求,薅定系统辑要宠袋静往务和技术指标,确定调试系统等。另外,还要注意在满足性能指标的前掇下,尽可能她降低价格。以便褥到高的性能价格比。

2,{系统总体方案

在以往的LED点阵系统中,采用单板控制系统。整个系统的控制核心是单片槛,萃片瓿受赛数据懿读墩、传辕和显示。控铡过程翔阉2.1所示。

淘2-1传统点阵显示系统控制流程

这种方案在对照示画面不多、显示画面不大时是方便而可行的。但怒由于单片极撬簿疆令受瓣闻熬限翘,送显示疆瑟较大薅(酉瑟懿轰阵数据较多),单片枫的速度往往难戳满足要求。在传统的方絮中,显示萄掰的数据预兜已经存贮在ROM中;当程序运行时,CPU依序将ROM中存储的画面数据输出。当用户希望增加或改动画面时,要熏新编写程序,改动不方便。因此,我们想设计一蕈孛其毒逶售凌辘、霹戳受PC控裁、爵淡缝掰熬熹簿纛示系统。这徉实现高显示频率和灵活的显示方式。

在参考新型数字产品的基础上,并结合嵌入式技术,提出了实现本系统的方案。即采用嵌入式软,硬件的集成方案来实现系统的各种功鼹。

豸i绞是萋予嵌入式鼓术之上鹣,这谴褥系绕可鞋聪窝彀艇蠢凌能飞速疆离的嵌入战的软,硬件资源。下面,我们将从几个方面具体介绍系统方案的初步设计。并会在后面的灏节里,具体讲解方案硬件/软件的实现。

2。2系统的初步设毒}

点阵显示系统结构如图2-2所示,点阵盥涿板通过串口和TCP/IP协议实玟与PC机雏透信及调试。Pe砉珏‘避过遥售端嗣诳戳对点阵鼹示板送行懿爨,包括显示模式懿更改和最示疆面熬疑薪。多头杰阵显示扳还可以组成网络,实现局域刚的拓扑结构。多块点阵显示板可以利用TCP/IP协议溅者专门开发的基于串口的协议进行通信。

图2-2点阵显示系统的总体框架

点赡显示板提供与LED显示羼相匹配的犊FI,包括数攥总线、越步躲j串、亏亍选镑号线。点箨鼓示叛实袈萄蕊点箨静搜索、显示画嚣煮阵的缓存、擞示画面点陴移位、LED彳亍动态扫描等功能

下丽是点阵显示掇软,硬件的设计概要,和开技工具。

2,2.{系绫懿鞭磐总侮设计

系统硬件以嵌入式芯片¥3C4510B为核心,拥有串口模块、网络模块、LED龌动模块、时钟模块等部分。如阉2-3所示,怒点黪显示系绫控制板的主体磺箨设计壤要:

刘嘲络

漱G

圈2。3煮薛羹示控髑校疆件总体设计

2。2+2琴统的鞍馋慧体魏黎

系绞软传编程怒在磺锋靛鏊襁主安瑷系统瓣葫辘。在嵌入式开发中,较转编程使用了实时操作系统,这样使得软件层次清晰、维护憾强、模块标凇化。

【硬件抽象层(HardwareAbstractionLayer)I

黼2-4实辩搽侮系绞黥分鼷模蘩

綦于实时操作系统的分层横裂(圈2.4),点阵髭示系统囊实现软件针对硬侮的移楗,驱动稳垮缡穗(包撼RSR-23,LED驱鹚,时镑芯片等),网终模块编纛。

基于RTOS编程的和传统编穰不一样(如图2-5)。在实时操作系统下,编程人受惩RTOS基磷上秀发各令逡矮模块。接绫缡程采用攀镁丽主程序模式,主程序船动完成稠始亿螽进入主{j舞环,不断处理键盘、显示予程序,戳及对采集的数据进行处理,篡它应用程序以中断的方式进行。而RTOS将以任务的形式并

图2—5传统编稷与基于RTOS编程的区别

2.3点阵显示系统的开发工蒜

点阵显示系统开发分为硬件和软件两部分。硬件部分的开发工具为设计电路嚣避强器电路PCB教强弱熬Protel鞋及秀发CPLD焉戆MAXPLUSII。软件开发工具有ADS开发环境、Limtx开发工舆GNU、在Windows平台上运行的Unix模拟环境的Cygwin。

10

第3章嵌入式0PU在薹页目中的废孀

雀点阵显示顼匿中,使用的嵌入式芯片是Samsung公司的¥3C4510B。该芯片楚簇予蔽太弱逡麓系统静高憋价篦16132经RISC激按裁器,内含一个由ARM公司设计的ARM7TDMIRISC处理器核,ARM7TDMI为低功耗、商性能的16/32核,与适合对价格及功耗敏感的点阵显示项目。

本露会在下蟊奔镪ARM嵌入式芯片系刭麴特点以及¥3C4510B其体懿体系结毒奄。

3.1嵌入式0PU的发展趋势及性能指标陋】[10】

将计算机在一个芯片上实现,从而开创了嵌入式系统独立发展豹单片机时代。在单片机的发展道路上,有i过两种模式,即“∑模式”与“创新模式”。“∑模式”本质上是通用计算机赢接芯片化的模式,它将通用计算机系统中熬基本繁元逶嚣裁懿爱,集残在一个芯片上,稳成莘冀锾黧诗箕援;“镧蕊模式”则完全按嵌入式应用要求设计全新的,满足嵌入式应用要求的体系结构、微处理器、指令系统、总线方式、管理模式等。Intel公司的MCS.48、MCS。51就是按照创新模式发展起来的单赵’形态的嵌入式系统(单片微型计算机)。MCS.51是在ⅪcS.48探索基疆上,进行全瑟突善豹鼗入式系统。

单片机诞生于20世纪70年代末,经历了SCM、MCU、DSP、SOC四大阶段:

l。SCM

SCM单冀飘又称嵌入式徽控铡器,它将熬个计算机系统集成虱一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行臼、赫宽调嘉4竣邀PWM、A/D、D/A、FlashRAM、EEPROM等鑫耱必要功能粕辨设。徽控制器是蟊前嵌入式系统工渡的主流。微控镧器的片上外设资源一般比较丰富,适合于控制,因此成微控制器。和嵌入式微处理器相比,嵌入式微控制器的最大特点是单片化,体积大大减小。

2。MCV

嵌入式处理器的基础是通用计算机中的CPU。在应用中,将微处邂器装配

在专门设计的电路板上,只保留和嵌入式应用有关的功能,遮样可以大幅度减,l、系绞体积积功耗。为了满足嵌入式应强载特殊要求,嵌入式锻处理器虽然在功能上和标准徽处壤嚣基本是一样豹,和工照控制计算机鞠珏:,嵌入式徽处理器具有体积小、重量轻、成本低、研靠性高的优点,但是在电路板上必须包括ROM、RAM、总线接口、各种外设等器件。嵌入式微处理器及其存贮器、总线、努设等安装在一块窀路板上,稼为荤扳诗冀凝。热STDBUS、PCI04等。

3.DSP处理器

DSP处理器对系统结构和指令进行了特殊设计,使其邋合于执行DSP算法,编译效率较高,搬令执行速度|虹较快。在数字滤波、FFT、频谱分车斥等方瑟正在大量遴入嵌入式领域,DSP盛焉歪放在逶爱荸冀壤中疆善逶霆令实瑷DSP功能,过渡到采用嵌入式DSP处理器。嵌入式DSP处理器有两个发展来源,一个是DSP处理器经过单片化、EMC改造、增加片上外设成为嵌入式DSP处理器,Tl的TM¥320C200洲C5000等属于此范哮;二是在通用单冀税袋S0e中灞麓DSP诱廷理嚣,恻翅Intel瀚MCS2296帮Siemens豹Tricore。

4.SoC

随糟EDI的推广和VLSI设计的普及化,及半导体工艺的迅速发展,我们能在一个硅片上实域一个更为复杂的系统,这簸是SystemOnChip(SOC)。冬耱逶{薅l缝理器内孩将伟秀SOC公司的标准瘁,和许多其它嵌入式系统井设一样,成为VLSI设计中一种标准的器件,用标准的VHDL等语言描述,存贮在器件库中。用户只需定义出其整个应用系统,仿真后就可以将设计图交给半导体工厂弼终样晶。这襻除个别无法集成的器佟羚,整令嵌入式系绞大部分均可集成劐~块或凡块芯片中去,盛用系统电路板将变得狠简涪,对于减小体积和功耗、提高可靠性都非常有利。SOC可分为通用和专用两类。

对嵌入式系统来说,CPU指令的执行速度楚一个关键要索,在本质上影响CPU臻令魏撬嚣速淡瓣三个因素分弱是流瘩线技术、趣搽爨羧零亍帮裹这缓存。

1.流水线技术

现代CPU大多设计成流水线型的机器,在这种类型机器中几个指令可以并行执行。流水线技术大大提高了CPU的运行效率。但怒,只有当其中内部豹售惑逶锈滚动露,CPU浚衷线孝能互搏褥最好。有一些捂令枣到可熬会打断流水线内部的信息流,或者至少暂时降低CPU的执行速度。

ARM7都有一个三段的流水线:

1)取指:将搬令从内存中取蹬来。

2)译码:臻{肇鞴窥操作数谈译霉潋决凳执行侍么功煞。

3)执行:执行已译码的指令。

对于典型的指令来说,上述镑条操作都需臻一个时钟周期,因此,一祭正霉麴指令嚣要3拿瓣镑躅簸才能嵬藏执行,这藏楚瘊谡豹攘令技牙的延辩。瞧是,由予流水线有3段,在每个时钟周期内都研以完成一条指令,换句话说,每个时钟周期,流水线都有一条指令的吞吐量。根据Henessy和Patterson提出的表示法[Hen96],图3-l说明了措令执行时在流水线中所处的位置。我们从与霹囊辘饕奁豹程彦冀霹菠看裂莱一辩裂整予浚零线中熬藏蠢攘令,簌东乎方囊可以看到指令执行的众过程。

aaa帆*s[亟二[蔓[[亟亟口

|坚望|兰曼|垫堡!些|

c咄∞[亟二[夏[[叵三习

图3-1ARM指令的流水线执行过程

RISC梗器梭设计来绦持滚承线忙,覆CISC魂器羯程攒令释痔上袭甏爨疆大的不同。流水线化的RISC机器舆型地具有鼹规则的对序特征:大部分并没有流水线倾向的指令却表现出相阎的延时。

,捌a蜊翘臣三[亘工匦丑至亘习

subr2,r3,t6

|圈cmpr2掣3

豳3-2多周期ARM指令的流水线执行过獠

然而并不是在所有的情况下都能保持一个周期一条指令的完成率,对于扩展的指令,一种简单的情况就是搬令非常复杂以至于不能农单个时钟周期完成执行阶段。多装入搬令就是在执行除段需要多个璃期才能完成的例子。阁3.2震示了戳一条多装入指令(LDMIA)并始稳一系剜指令执行遘程中酌数撬阻滞。由于两个寄存器需要装入,邀条指令的执行相应地就需臻执行阶段的两个

时钟周期。在一个多阶段执行的过程中,由于必须要记住已经译码的指令,因_}毙译码除段仍然要蠢。结罴SUB{翼令仍然在爱攀斡时聿孛震期坡取窭,傻塞型LDMIA完成后方被译码。这就造成了第三条指令,CMP酌取指令麴延时。

bnefoo

:≥域夏:

fooaddrO,rL,r2臣三工夏Ⅱ珂

图3-3ARM中的分支指令的流水线执行过程

分支|鸶令凌控裁阻滞延对雩{入到滚瘩线申,瞧就是逶鬻我饲嚣瀵麴分支损失,如瀚3.3所示。是否执行条件分支BNE臻等到指令的执行的的第三个时钟周期才能确定,因为第三个时钟周期才能计辫出分支指令的目标地址,如果分支需鼹执行的话,这时接下来PC+4处的搬令已经被取燃,并且开始译码。当分支发生嚣,分支强标遮垃裁憝矮来取分支蠢稼豢令。赉予我懿在了瓣嚣稼指令之前,必须等待执行周期韵究成,因此使得两个周期浪费在那些执行路径不明确的指令上。CPu就是利用从开始取分支指令到开始执行分支指令之间的两个时锄周期来完成与分支指令的执幸亍有关的杂务鲍。

簿决这令淘蘧酌办法之一就蹩弓l入延时分支,在这静澎式的分支指令中,往往有一些直接跟猩分支指令后丽的指令被执行,无论分支指令执行与褥它们都会被执行,这样,在分支指令执行期间CPU都能够让流水线保持满。然而,鸯一些在延时分支之嚣鲍撂令也霹戆是空揉俘。无_淦分支执行与孬,任j鼗处在延时分支窗口中懿攒令对于两祭执行路径来说都毖须是有效的。倘若没肖足够的指令来填充延时分支指令窗口,就必须用空操作来填充。

2.超标量执行

受终一令提嚣CPU毽毙翡办法藏是超拣爨撬孬。一令怒擦曩CPU~次霹以处璎多条指令。如图3-4所示,有好凡条指令同时被考虑。程序员不能弄清楚一次机器正在执行几条指令——程序设计模式的结果是相同的。但是程序执行的速度却快多了。

怒瓠量与流窳线鼓本是蓑蛰戆,一般来说程超标量凳攥器孛每一个撩令单元都怒流水线的。撩制一个超标擞的、流水线的处理器是十分复杂的,假是可

14

武汉瑾王炎攀壤±学髓滚烹

以做得到。丽这样馓的缕累就是饿褥CPU可以程每个时钟胤期内执行多祭搬令。

鬻》4邃耘黧娥纛器孛熬雾穗令擎元

ADDr2,f毽rl;compute8valueandstorein建

ADD砖,艟。r5;usevaluejuststoredln抱

A翮辩令

散精依赖

甏3-5怒标爨撬行啐}的翊逛

崧怒橱豢髂装诤|,著不楚攒令鞠强慧霪台搦戆瓣薅藏稽,嚣必CPU不黥发出像它所霈要的那么多的指令。比如说,如图3,5所示的ARM代码墩,第一条措令撼褥数耀热鹣缝巢羧入砖辫存器中,第二条指令镶鬻这一绝聚。炎鸯等簿一篆怒注魏黪聚霹瑷霆了我稻雳耳鑫执行麓二令热滚。溪戴筻=蕊搔令翁谲液暴露被推遮了。撩令之鬻遴存_在缀多静稠荧瞧,超称爨麓隧器在魏章亍鹣过程中会动戆地检懿熟榻关性。

怒探爨戆猿蔫每竣我璐酶执行畦阕篦滚水缄懿疆纂受难予诗冀,CPU在运行嚣麓越必矮检妻巍藩掺令蕴窘鼹露缝嚣薅壤执嚣。凌霞不貔遴遗密令零海慕

考虑其执行时间——只有知道了它周围的指令时我们才能确定其执行时间。如果代码中有分支指令,我销必须壤分支被执行秘分支不被瓠孬嚣秘帻猿分齐考虑。除了~些很小的代码段外,计算执行时闯几乎是不可能的。

3.高速缓存

椎j二主存

瑙遣蛙7

图3-6存储系统中的高速缓存

鬻速缓存是~蒂中小型、快速翡存储器,它绦存部分主襻的蠹容豹拷爱。高速缓存控制器在CPU和包含高速缓存及主存的存储系统之间,高速缓存发送存储器请求给高速缓存和主存。如果被请求的单元在高速缓存中,高速缓存控制器会憋蠹容转发劐CPU并中立对主存懿圣奏求;这耪1涛猿称必毫速缓存命中。如采被请求的单元不在高速缓存中,控制器会等待主存的值并讲它转发给CPU,这种情况称为商速缓存未命中。

尽篱高速缓存对于程序设计模型来说是不可见的,但是它们对于程序的运嚣有卷嚣弱小可瓣影镌。当瑟曩黉夔存德单元镬裹速缓存中辩,可强歇本溪主减少内存访问时间。CPU访问内存的平均访问时间公式如下:

tav=htctch。十(1-h)tmiin①

①式中h代表命中率(hitrate),即给定的内存单元在商速缓存中的概率:1-h蹩未愈孛率,甏绘定戆悫存繁元不在毫逮缓存中匏毂奉;tcache是麓速缓存访问时间,tmain怒主存访问时间。

3。2ARM微处理器f‘1121[3lf47l

AR/VI(AdvancedRISCMachines),既可以认为是~个公司的名字,也可以认为是对一类微处理器的通称,还可以认为怒一种技术的名字。

1991年AP,2_I公司成立于茭黼剑撬,主要痰售芯片设计技术我授投。露蔻,采鼹ARM技术翔谈产较(强)辕酾微处理器,酃我翻通常所说懿ARM微处

16

相关主题
文本预览
相关文档 最新文档