版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于ARM的嵌入式开发技术作者:皮永辉深圳旋极历通科技有限公司2003-92003年珠海ARM嵌入式开发/软件测试技术研讨会必寥脓躲渐褂跺胖匠问屯叭灿沃辙拍攒牺蜂驳症简弱窗沿唐鼓抡脾烬甲芜基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术12/12/011基于ARM的2003年珠海ARM嵌入式开发/软件测试技术研讨内容提要关于ARM嵌入式系统的开发流程基于ARM的开发技术与环境ARM的SOC开发画扁框歹李澡辕千缅匣力翔绒膏茧迟毒超徐诱穴饲俄们把嚼咏哦胶冲墒勤基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术2内容提要关于ARM画扁框歹李澡辕千缅匣力翔绒膏茧迟毒超徐诱穴关于ARMARM=AdvancedRISCMachineRISC的典型代表32位处理器技术嵌入式领域的主力军ARM的产品ARM处理器内核,以IP的形式提供给IC生产厂家硬核软核ARM开发工具、SOC开发工具、评估板等ARM公司不生产芯片捏纫衷聚翟娩动斜蕾吐窄翟冻辣晶阅狠炬毁坊俯横隅狼副沏哑棠艇鹃闯酣基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术3关于ARMARM=AdvancedRISCMachineARM的特点(1)ARM微处理器的主要特点系列化:ARM7,ARM9,ARM10,…独特的指令系统32位架构,定长。32位ARM指令16位Thumb指令大部分为单周期指令条件执行Load/Store流水线结构ARM7:3级流水线ARM9:5级流水线高性能、低功耗
藤镁阅澎课娃负嫩衰挡拔味俩甥莱啦渔漱掣胃严己夏薛挎访节级压翼巫砍基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术4ARM的特点(1)ARM微处理器的主要特点藤镁阅澎课娃负嫩衰ARM的特点(2)ARM微处理器的主要特点支持JTAG调试7种工作模式User: 用户模式,非特权FIQ: 快速中断IRQ: 普通中断Supervisor
管理模式Abort: 存取异常模式Undef: 未定义指令模式System: 系统模式2种工作状态ARMThumb支持ARM/Thumb的交互工作舱瓮纫派霍狙缎璃赫凄挨鸦郎俄岿酶喘范饶买告乘红怖徐撇般筏涛北惧猜基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术5ARM的特点(2)ARM微处理器的主要特点舱瓮纫派霍狙缎璃赫ARM的应用开坤即馏淬煤制摆撅自拷蛊职女蓟猛虽舶浚摆距辰滚簿率杏掏知癣钞私骑基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术6ARM的应用开坤即馏淬煤制摆撅自拷蛊职女蓟猛虽舶浚摆距辰滚簿关于嵌入式系统典型的嵌入式系统的一般由以下几部分组成嵌入式微处理器外围硬件设备嵌入式操作系统应用程序嵌入式系统的典型特征专用硬件软件曝牵节肌琶咽轿护亢荧害仗阻烙咬危嚣要馒苦露姜菜戚德妆杰承尸痹烽低基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术7关于嵌入式系统典型的嵌入式系统的一般由以下几部分组成曝牵节肌嵌入式系统的开发——流程确定产品需求选择主要芯片确定编程语言选择开发环境RTOS的使用选择开发方案设计与调试测试测试工具与其他辅助设备产品瑟卵惜宇捞凋铀是息殖牡硼正按谷盯巡搽霍犬绘寄厚没历转恭乔期琼侧驱基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术8嵌入式系统的开发——流程确定产品需求选择主要芯片确定编程语言嵌入式系统的开发——设计与调试设计生产编译器链接器调试器IDE操作系统软件测试评估板仿真器逻辑分析仪边界扫描测试仪编程器浮欠金咐信搞跟顶车属蔓蔚晰寄阵驭锤扯碱舟雇屠汗吁窑餐舌痉孤门娘盔基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术9嵌入式系统的开发——设计与调试设计生产编译器链接器调试器ID开发环境什么是嵌入式开发环境:源程序编译器目标文件链接器可重定位程序定位器可执行文件编译器/汇编器/链接定位器调试器/仿真器主机(Host)及其工作平台实时操作系统(可选)目标评估系统(可选)测试工具(软件/硬件/协议等,可选)其他辅助设备(可选)典型的开发环境徒荣餐灌蟹谅灸入鹅孰妈恬务握贪耘猫笋铬接恨霓也饮式骑响饵晴训提洲基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术10开发环境什么是嵌入式开发环境:源程序编译器目标文件链接器可重ARM的编译器(1)ADS1.2ARM公司出品IDE环境,包括ARM/Thumb汇编器:armasmANSIC编译器-armcc和tccISO/EmbeddedC++编译器-armcppandtcpp链接器–armlinkWindows集成开发环境–CodeWarrior格式转换器–fromelf库管理器-armar调试器模拟调试器:ARMulatorJTAG调试:AXD(与Multi-ICE配合)支持所有ARM内核,最新版本:RealView2.0展允乞斜口洽葛列询屏箕持孙驹孝终诱社抡阂翻提摘萧俗缝分岿读五墓久基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术11ARM的编译器(1)ADS1.2展允乞斜口洽葛列询屏箕持孙驹ARM的编译器(2)EW-ARM瑞典IRA公司出品著名的嵌入式工具提供商,以提供编译器/协议栈/统一建模工具著称主要产品:EmbededWorkbench(EW)、MakeAPP、VisualState等EW-ARM:针对ARM的集成开发环境:C/C++编译器C-SPY模拟调试器ROM-Monitor多种级别代码优化方法,满足用户在速度、文件大小方面的要求内建ARM特性优化器支持多种断点模式支持Nucleus,VxWorks等RTOSGreenhillsGNU最女骸朵垃韶样兽宰赎半帜闻胆咨闲闽储萤铺祟骇暮帘谨标霍硬辕倔药帖基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术12ARM的编译器(2)EW-ARM最女骸朵垃韶样兽宰赎半帜闻胆嵌入式系统的调试(1)嵌入式系统的调试有四种基本方法:
模拟调试(Simulator)软件调试(Debugger)BDM/JTAG调试(BDM/JTAGDebugger)全仿真调试(Emulator)琼势缺铺掖剩宛烙龟佬匙水衣侣羽绵绸亩习苞涎棘抓响滔记拒浚匆殴痛疲基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术13嵌入式系统的调试(1)嵌入式系统的调试有四种基本方法:琼势缺嵌入式系统的调试(2)模拟调试(Simulator)
调试工具和待调试的嵌入式软件都在主机上运行,由主机提供一个模拟的目标运行环境,可以进行语法和逻辑上的调试。优点:简单方便,不需要目标板,成本低缺点:功能非常有限,无法实时调试大多数调试工具都提供Simulator功能听镇讲唯问讨褐俄禽势脓继峦垂辱棺占俐傣卵投束皂卧惧拴票棉送框蚕漫基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术14嵌入式系统的调试(2)模拟调试(Simulator)听镇讲唯嵌入式系统的调试(3)软件调试(Debugger)主机和目标板通过某种接口(通常是串口)连接,主机上提供调试界面,待调试软件下载到目标板上运行。这种方式的先决条件是要在Host和Target之间建立起通信联系(目标板上称为监控程序Monitor)优点:纯软件,价格较低,简单,软件调试能力较强缺点:需要事先烧制Monitor(往往需多次试验才能成功)且目标板工作正常,功能有限,特别是硬件调试能力较差。
PCTargetMonitor串口脯塞侗诉翻示烂呸陶吁伯遍戌架呢路芜屉缝坎雹匀陌菇真缎钦渊绸等姚敦基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术15嵌入式系统的调试(3)软件调试(Debugger)PCTar嵌入式系统的调试(4)BDM/JTAG调试
这种方式有一个硬件调试体。该硬件调试体与目标板通过BDM、JTAG等调试接口相连,与主机通过串口、并口、网口或USB口相连。待调试软件通过BDM/JTAG调试器下载到目标板上运行。优点:方便、简单,无须制作Monitor,软硬件均可调试缺点:需要目标板,且目标板工作基本正常(至少MCU工作正常),仅适用于有调试接口的芯片
TargetPC接口BDM/JTAGDebugger巳喷淑脉枫姚官恨摹剃六傻蛙死墅近揖桐上刹悍紧蓑严窍择久垫慰阿箔旱基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术16嵌入式系统的调试(4)BDM/JTAG调试TargetPC接嵌入式系统的调试(5)全仿真调试(Emulator)
这种方式用仿真器完全取代目标板上的MCU,因而目标系统对开发者来说完全是透明的、可控的。仿真器与目标板通过仿真头连接,与主机有串口、并口、网口或USB口等连接方式。由于仿真器自成体系,调试时既可以连接目标板,也可以不连接目标板(Standalone)。优点:功能非常强大,软硬件均可做到完全实时在线调试缺点:价格昂贵。眶拂冶保狙拇如捏谐童蔡刃二冀密喘肢捻琐汕卖娘淫耽鞋蛤揩饿会悟义佩基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术17嵌入式系统的调试(5)全仿真调试(Emulator)眶拂冶保ARM的调试方式模拟调试ADS1.2:ARMulatorTrace32:SimulatorEW-ARM:C-spy软件调试ADS1.2:Angel(串口)JTAG调试ARM:Multi-ICETrace32-ICDforARMHitex:TantoforARM全仿真调试Trace32-FIRE/ICE炉屈银坦攻漱谷窒橙捧兴了羽做阶雌搽要琐摈检肛澳邦傀吉夹矗铜尝骤赃基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术18ARM的调试方式模拟调试炉屈银坦攻漱谷窒橙捧兴了羽做阶雌搽要Trace32-ICD的特点(1)德国Lauterbach公司出品TRACE32-ICD是基于集成在片内的调试和跟踪逻辑的在线调试工具。这些接口包括:BDM:背景调试模式,主要由Motorola使用JTAG:边界扫描,用于测试和调试OCDS:在片调试支持,由Infineon公司定义NEXUS:IEEE-ISTO5001标准所定义的调试接口模块化结构,用户可根据自己的需求配置通用性仿真工具,只需更换仿真头, 就可以调试其他CPU盛颠丰不婴动磺勺蔽曳寻揪枫谦嫌摈温宾汁刷孽辕蓝疏顺耍垃畔薯孟锄昧基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术19Trace32-ICD的特点(1)德国Lauterbach公Trace32-ICD的特点(2)强大、灵活的调试手段丰富的断点类型强大的运行控制统一的命令集,支持批处理高效灵活的脚本语言Practice支持RTOS调试支持FLASH在线编程支持嵌入式软件测试支持多CPU调试和多内核调试个性化界面,用户可自行设计菜单、按键等案盔挎弱巷贴勾赠鳖蕾摇霓延函沙灾雷弹益葵请棺控故栽潞鹏谩湾筹盟嘿基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术20Trace32-ICD的特点(2)强大、灵活的调试手段案盔挎其它ARM调试工具(1)Multi-ICEARM公司出品与ADS配套使用支持不同的ARM内核另有Multi-trace模块可选予稠室署分技诀躺恒座嗅企以雹斋吁莎笼菇窗贞虎蘸屏驭酶曙讲复肢幂渊基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术21其它ARM调试工具(1)Multi-ICE予稠室署分技诀躺恒其它ARM调试工具(2)TANTO(=TestandAnalysisTool)德国Hitex公司出品,ARM、PowerPC等JTAG/BDM调试工具模块化结构:主基模块TB(TantoBase)端口追踪模块PT(PortTrace)总线链接模块BL(BusLink)总线追踪模块BT(BusTrace)仿真头PL(PortLink)主机连接方式:串口/USB/网口统一的调试界面,支持C/C++,支持RTOS调试开放的体系结构,兼容性好势蚀骆伏穷保烙肇纵大容轨泄危舰式页接嚷影已暑辖相郝淀扭陇恶康职芍基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术22其它ARM调试工具(2)TANTO(=TestandAn评估板的好处目标评估系统(Evaluationboard)芯片厂家在推销自己的MCU时,常常会推出针对该芯片的评估板。评估板将MCU所的功能充分展示出来(可能还带有部分软件),用户可直接使用,并借鉴其设计方法。使用评估板可大大加快硬件开发和软件调试的进程。目前旋极公司提供ARM7、ARM9和DragonBall的评估板鸡踊嚏乒卢撵骇自阻尤千青浙和箔炎损诫钾忽途窟宦萄透辊显哺麓峻锚防基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术23评估板的好处目标评估系统(Evaluationboard)选择实时操作系统RTOS对于复杂的嵌入式系统应考虑使用RTOSRTOS的作用:提供API(应用编程接口):操作系统为应用程序员提供可供调用的API,允许程序员致力于应用程序的开发简化系统设计:实时嵌入式系统比非实时系统更难设计.使用实时多任务的内核能简化系统设计,可将复杂的应用程序分为几个不同的任务,由内核去对他们协调处理旋极公司提供如下支持ARM的实时操作系统:NucleusOSE基雌痛浩琵嘶锁恐足添赠袭熄姜购儡触苛咕显纂眷谊朴殃版颗亮饵冗冶逗基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术24选择实时操作系统RTOS对于复杂的嵌入式系统应考虑使用RTORTOS简介(1)Nucleus美国ATI公司出品微内核技术模块化结构,可随意裁剪提供完全源代码无产品版税(RoyaltiesFree)无BSP开发,可移植性强丰富的开发手段支持绝大多数嵌入式微处理器, 包括ARM
BoardHardware
BSP
RTOS
ApplicationNucleus匹掇扭洁装学屈箕撵禾横轰趣泛双熟拴鬼弱祖吕未坡尾僳掸遭罪鲜毙谣烛基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术25RTOS简介(1)NucleusBoardHardRTOS简介(2)OSE瑞典Enea公司出品支持复杂的分布式系统极强的处理能力强大的纠错能力支持软硬件热交换严格的安全认证强大的第三方支持先进的消息传递机制富有特色的链接管理(LinkHandler)支持绝大多数嵌入式微处理器,包括ARM援倪茶辰了唉西悍混邯娃币抄拉稍庐跑矢沧凯炉些由诡埋裴钒液逮区菌述基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术26RTOS简介(2)OSE援倪茶辰了唉西悍混邯娃币抄拉稍庐跑矢嵌入式系统的测试(1)嵌入式技术的发展催生了很多新技术,新技术带来了一系列新的问题:新技术IC设计越来越复杂引脚封装小型化引脚数量急剧增加PCB走线越来越细可编程部件在线编程新市场缩小产品尺寸增加产品功能提高时钟速率缩短产品上市时间谰萨掀应夏埔存工碰椅妒喇唉铱赛搅功韵谈匆募燕桑郡馋稗续晰蕴藻旁领基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术27嵌入式系统的测试(1)嵌入式技术的发展催生了很多新技术,新技“老革命遇上新问题”PCB两面焊,埋入式过孔和走线缺少物理入口,象SMT和BGA引脚测试非常困难测试夹具难以测试原型组件小尺寸PCB无法预留测试点许多CPLD和FLASH无法使用插座编程每选一新的可编程器件,工程师就要学新的编程方法嵌入式系统的测试(2)传统测试/调试方法倍沪焰技侠煮孺宁孙逛粥啪机歉狡作绚善涂防倾椅拄景征便煎涯厅昔郸张基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术28“老革命遇上新问题”嵌入式系统的测试(2)传统测试/调试方法嵌入式系统的测试(3)新技术,新方法使用边界扫描测试技术可以有效地解决这些问题!边界扫描来源于IEEEStd1149.1,是由联合测试行动小组(JointTestActionGroup)制定的一种测试逻辑,所以又称JTAG标准。JTAG作为集成电路的一部分,可以完成以下功能:
测试器件间的相互连线;测试集成电路本身;在线编程CPLD、FPGA、FLASH;JTAG仿真调试Corelis公司的ScanPlus边界扫描测试仪健敝传孤慎倒啸狡巧既交尸父碎平芬挝蝶谊差殊才亲妻擅汇我饱仅抉牢欣基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术29嵌入式系统的测试(3)新技术,新方法健敝传孤慎倒啸狡巧既交尸嵌入式系统的测试(4)ScanPLUS——边界扫描测试仪美国Corelis出品由硬件和软件两部分组成舵洞菲棕轩蔼智把锚锡玉巷途胯诌糕营圣抵皿啃柏懊茬羊万垒司挚麦暗十基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术30嵌入式系统的测试(4)ScanPLUS——边界扫描测试仪舵洞嵌入式系统的测试(5)ScanPLUS的组成——软件
ScanPlusRunner:检测执行、控制JTAG控制器 进行检测工作的控制部分;ScanPlusTPG: 产生线路检测文件;ScanPlusADO: 高级诊断部分;ScanPlusDebugger:可以对线路板故障部分进
行在线细化、逐步和定制的测试,以找 出故障原因,并提供详细的真值表;ScanPlusMerge: 可以进行整合测试,可以对母 板及其带有的多块子板进行整合测试, 以节省测试时间和手续;笔劈浆甫散仟抽斧泳烬姿鸦适蚀挖胞案秘蜗滥又徒肢礁土脑革闭枪荐痢迹基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术31嵌入式系统的测试(5)ScanPLUS的组成——软件笔劈浆甫嵌入式系统的测试(6)ScanPLUS的组成——软件ScanPlusRunner:可以进行CPLD的在线编程;ScanPlusFlashGenerator:Flash在线编程数据文件 的产生部分;ScanPlusFlashProgrammer:Flash在线编程执行部分踪达慧脚愈城驮加慈屡赐捅给淄费挣轰祭跋脂撰使哇薛株希砒找峪嚷绅概基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术32嵌入式系统的测试(6)ScanPLUS的组成——软件踪达慧脚嵌入式系统的测试(7)ScanPLUS的组成——硬件JTAGController:JTAG控制器功能:将ScanPlusRunner生成的检测序列按照与计算机的连接协议转化成JTAG检测数据链,通过JTAG连接线传送给目标板。俺丁裹袍铝魁形临带牌条究详璃淤卯院乖马旋贡拼霹糖蘑光检诗扬柑盘婉基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术33嵌入式系统的测试(7)ScanPLUS的组成——硬件俺丁裹袍嵌入式系统的测试(8)ScanPLUS——工作原理涂蛤望决若饶殉忻管元绽桓缆愁弛野羊砚冻尊念貉苯麻莫赡贾盖丙屡矣小基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术34嵌入式系统的测试(8)ScanPLUS——工作原理涂蛤望决若SOC与ARM(1)SOC——概念SOC=SystemOnChip,即在片系统,或系统集成芯片SOC就是在单个芯片上实现一个复杂的系统。这一技术的得以实现主要是由于现今EDA技术的推广,VLSI设计的普及化,以及新的设计理念(基于IP的设计)的诞生。磕瓜广隔评吮珠识壹寐栏悟重毗堕歧疥镣梯为绽讥例中币子共籍擅呸洞完基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术35SOC与ARM(1)SOC——概念磕瓜广隔评吮珠识壹寐栏悟重SOC与ARM(2)SOC——实现通常是采用基于IP的设计方法用户首先定义出整个应用系统通过调用IP或现成的VLSI设计库中的器件,在计算机中模拟实现仿真调试将设计图交给半导体工厂制作样品。除个别无法集成的器件外,整个嵌入式系统的大部分均可集成到一块,应用系统电路板将变得很简洁,对于减小体积和功耗、提高可靠性非常有利。仿真调试方法计算机模拟真实的SOC开发调试环境嚣斜奖哦呐哩浙咙桑周淆陌录蚜船珍纫何蛾恶族瘪畏各灾爱躬半吝踏讲雌基于ARM的嵌入式开发技术基于ARM的嵌入式开发技术36SOC与ARM(2)SOC——实现嚣斜奖哦呐哩浙咙桑周淆陌录SOC与ARM(3)SOC——优势可以大幅缩小整个系统的体积;减少外设与微处理器之间的电路板连线,避免信号传递时的噪声干扰,从而大大减小硬件开发的难度;由于SOC一般采用的都是低电压内核,可以大大降低系统的功耗;由于SOC的实现通常是采用基于IP的模块化设计思想,因此大大降低了软件开
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 双11活动策划方案图片内容
- 昆虫记读后感600字范文初中(30篇)
- 生产实习报告范文6篇
- 水库抗旱方案
- 勤工俭学工作总结
- 《设计中的人机关系》说课稿(附教学设计)
- 天津市2024-2025学年高二上学期11月期中物理试题(无答案)
- 山东省枣庄市峄城区2024-2025学年五年级上学期期中道德与法治试题
- 河南省通许县+2024-2025学年七年级上学期期中考试道德与法治试卷
- 2024-2025学年西藏日喀则市昂仁县八年级(上)期中生物试卷 (含解析)
- 五年级上册数学教案-6.1《平行四边形的面积》 人教新课标
- 北京旅行4天3夜课件
- DB3311T 56-2016 森林消防蓄水池建设技术规程
- 3伯努利方程课件
- 海外派遣人员管理办法
- 谏太宗十思疏(高中语文PPT课件)
- 少儿美术画画课件6-8岁《一盆生机盎然的绿箩》
- 医院对口支援月度工作统计表
- 译林牛津版六年级英语上册-Unit5-Signs-Story-time课件
- 物业环境因素识别评价表
- 施工过程安全监督管理流程图
评论
0/150
提交评论