1、l3.1 处理器基本知识l3.2 处理器分类l3.3 嵌入式处理器的技术指标l.4 选择原则l3.5 典型的嵌入式处理器l3.6 嵌入式微处理器调试方法冯.诺依曼体系结构和哈佛体系结构 冯.诺依曼体系结构:单一的存储空间,程序和数据都放在这一空间中,提取指令和数据是通过单一的总线进行。不能同时对程序和数据进行存取。memoryCPUPCaddressdataIRADD r5,r1,r3200200ADD r5,r1,r3PCl哈佛体系结构:程序和数据有分离的存储空间,有多条总线,允许同时存取指令和数据。多数DSP处理器采用此结构,速度较快。CPUPCdata memoryprogram mem
2、oryaddressdataaddressinstructionlRISC与CISC:CISC:Complex Instruction Set Computer,复杂指令集计算机。RISC:Reduced Instruction Set Computer,精简指令集计算机lCISC:指令系统复杂,寻址方式多,指令多,每条指令的执行周期数不尽相同。l统计表明:8.7%30.3%的指令从来没用过,44.6%87.8%的指令很少用。l因此简化指令系统有利于提高整个系统的运行速度。l中心思想:简化硬件设计,硬件只执行很有限的最常用的指令,大部分复杂的操作使用成熟的编译技术,由简单指令合成。l采用RIS
3、C 可以以相对少的晶体管设计出较快的微处理器。l、采用精简的指令集,指令的长度一样,一个时钟周期内可以完成。l、指令流水线每执行一步需要一个周期,一条指令需要四个周期,但平均一条指令需要一个周期。l、采用加载(load)、存储(store)结构,只允许加载(load)、存储(store)指令执行存储器操作,其余指令均对寄存器操作,大大增加通用寄存器的数量以提高速度。l、编译优化 RISC不常用的操作由软件来实现。因此RISC处理机更加依赖于好的编译器,同时也要依靠优化编译器。没有高时钟频率和好编译器的支持,RISC不可能很好地发挥优点。l优点:指令精简,减少CPU内部的控制部件的复杂性,减少控
4、制部分所占芯片的面积,降低功耗,指令流水线提高运行速度。l缺点:模拟复杂指令代码长(30%),内存大。lCISC与RISC:两者互相融合,各取所长。嵌入式微处理器一般具备4个特点:l(1)对实时和多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时操作系统的执行时间减少到最低限度;l(2)具有功能很强的存储区保护功能,由于嵌入式系统的软件结构已模块化,为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断;l(3)可扩展的处理器结构,以能迅速地扩展出满足应用的高性能的嵌入式微处理器;l(4)嵌入式微处理器的功耗必须很低,尤其
5、是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,功耗只能为mw甚至w级。l处理器分类:微控制器(MCU)、微处理器(MPU)lMPU:Processor,主要完成对数据的运算和处理,注重于对数据的处理速度,常用的包括Intel的x86/Pentium系列和IBMMotorola的部分PowerPC系列;lMCU:Controller,内核与MPU类似,通常包括很丰富的外围接口,种类繁多,主要完成对系统的控制。嵌入式计算机的方式:(1)嵌入式通用计算机 通用计算机、工控机;单板计算机:PC104、PC104PLUS、SBC(.5”)。成本低、开发周期短、维护方便。(2)
6、嵌入式专用计算机 量身定做、优化性能。通常使用的处理器包括:通用微处理器、嵌入式微处理器、嵌入式微控制器、DSP以及SOC等。l嵌入式专用计算机系统l(1)通用微处理器:l(2)嵌入式微处理器:处理能力、寻址能力较强,需扩展外围电路,通用性较强。“增强型”通用微处理器,l由于嵌入式系统通常应用于环境比较恶劣的环境中,因而嵌入式微处理器在工作温度、电磁兼容性以及可靠性方面的要求较通用的标准微处理器高。80186l国内机载设备,x86系列较多,应用中都需要较多的外围接口电路扩展,如Flash存储器、A/D、D/A等,增加成本,降低系统可靠性。另外由于x86是基于CISC指令集,需要较大的硅片,系统
7、的功耗较大,通常300MHz的CPU就需要散热片,对于环境要求较高的机载设备增加散热片必然影响系统的可靠性。l(3)嵌入式微控制器:51系列、96系列、68K系列、Microchip的PIC系列等,典型的嵌入式微控制器集成了CPU内核、中断控制器、定时器/计数器、存储器(RAM、FLASH等)以及 其它外设。通常不需要扩展外部存储器。l现在MCU主要有8位、16位和32位三种,其中8位MCU市场占有率达到近一半以上,而32位MCU的增长速度非常快。l在大多数设备,控制规律较简单,选择8位的MCU较为合适,从CPU的集成度、开发工具、开发的复杂性等方面,都具有很大优势,特别是现在集成了各种外围接
8、口,如Flash存储器、A/D、D/A等,完全满足一些较简单的控制系统的需求。8位微控制器的代表就是8051系列和摩托罗拉的68HC05系列。l16位MCU:16位MCU与DSP的结合具有较广的应用。l32位:较复杂的系统控制和系统综合处理机,Motorola的68K系列CPU,随后在其基础上推出了ColdFire系列,主要应用于消费类电子以及工业过程控制设备中。32位的ARM、PowerPC和MIPS。l(4)DSP:为数字信号处理设计的处理器。定点DSP和浮点DSP。定点DSP完成定点运算,精度低、耗电低、成本低。适合低端市场,浮点DSP能处理浮点运算,计算能力强、成本高,高端市场。可以采
9、用处理器+DSP的设计方法来结合两者的优点。ldsp处理器经过单片化、emc改造、增加片上外设成为嵌入式dsp处理器 l在通用单片机或soc中增加dsp协处理器,例如intel的mcs-296和infineon(siemens)的tricore。l(5)SoC:各种通用处理器内核将作为soc设计的标准库,用标准的vhdl、verlog等硬件语言描述,成为vlsi设计中一种标准的器件,存储在器件库中。用户只需定义出其整个应用系统,仿真通过后交给半导体工厂制作样品。针对特定应用而设计,如HDTV、ADSL、Cable Modem等,集成的资源比一般MCU更专业化,可以根据设计人员的要求来构建定制S
10、oC,价格高于MCU。l(1)功能:处理器的种类、外部接口的种类和数量,集成的多需要外围扩展的就少,可靠性高成本低。根据系统的需要尽量选择集成所需接口种类和数量的处理器。l(2)字长:参与运算的数的基本位数,决定于寄存器、运算器和数据总线的宽度,直接影响硬件的复杂度。字长越长,包含的信息量越多,能表示的数据有效位数也越多,计算精度越高,而且处理器的指令可以较长,指令系统的功能就较强。通常有1、4、8、16、32、64位字长。l(3)处理速度:现在通常采用在单位时间内各类指令的平均执行条数,即根据各种指令的使用频度和执行时间来计算。ln为处理器指令类型数,为第i类指令在程序中的使用频度,为第i类
11、指令的执行时间,为平均指令执行时间,其倒数就是处理器的运新高速度的指标,单位为MIPS。l还 有 其 它 的 方 法 衡 量 处 理 器 的 速 度,如MFLOPS(每秒百万次浮点运算)、主频。ngiii1tp tl(4)工作温度:商业级(055)、工业级(-4085)、军用级(-55125)、航天级(更宽),七专:专技;专料;专线;专人;专检;专卡(跟踪卡片);专筛。MIL-STD-883:l(5)功耗:嵌入式处理器一般包含待机功耗和工作功耗,功耗与运行频率、电源电压都有关系,如mW/MHz。开关管的开关损耗。l(6)寻址功能:与地址总线的宽度有关。对于集成了存储器的处理器意义不大。l(7)
12、其它:包括性价比、工艺等。lMCU选择主要应该考虑以下几点:l 根据系统处理数据的主要类型来定CPU总线的位数,如果主要数据的位数大于8位,就应该选择16位或32位的CPU。l如对信号采样时,A/D或D/A为12位的,如果采用8位的CPU,在输入或输出以及在中间的数据处理时都要进行数据的类型转换,影响程序运行效率。l 对于工业应用来说,价格成本是影响CPU选型的另外的一个比较重要的原因,8位的MCU基本都在1美元以下,32位的CPU相对较贵。但是对于武器系统来说,通常供货稳定性和可靠性是选择的一个非常重要的原因,因为从武器设计到退役往往几十年,不仅要保证设计时能买到CPU,更要保证在设备维护时
13、有相应的备件来替换。l 开发工具的支持。开发工具在嵌入式系统的开发中具有重要地位,不仅影响开发的进度,而且直接关系到设备的性能,甚至项目的成败。l 操作系统的支持。一般简单的机电系统应用不需要操作系统,直接采用汇编或C就可以编程,一般采用8位MCU就可以完成任务;而对于较复杂的应用,通常需要操作系统的支持。l 代码的继承性往往决定了CPU的选择,在军用设备中,为了实现系统的可靠性以及研制周期,直接延用原来的CPU类型。l 供应商的因素。由于功能的扩展,原来选择的CPU已经不能满足系统需求,供应商提供相应的升级替换CPU,并提供技术支持。Microchip公司PIC系列Philips公司:51L
14、PC系列Motorola的MC68HC08系列MCS51系列Atmel AVR系列AMD80C186 16位系列Motorola MC68HC12 16位系列Motorola PowerPC/ColdFire 32位系列ARM 32位系列国产龙芯/方舟系列lFFT算法的出现和可编程数字信号处理器的引入加速了DSP的发展。lAD公司:ADSP-21xx处理器,代码和引脚兼容的数字信号处理器家族,高达160MHz的工作频率和低至184uA的功耗。21xx系列产品包括适合蜂窝通信应用,2199x系列适合电机控制应用lMotorola公司:DSP563xx、DSP58xxx、MCS7111、MCS81
15、xx。lTI公司:1982年推出第一个DSP,根据应用领域的不同,推出三个大平台。l控制平台:TMS320C2000,C24x、C28x 强大数据处理能力和控制能力,定点l低功耗平台:TMS320C5000,C54x、C55x 针对消费类数字市场,最低功耗0.33mA/MHz,移动电话、数码相机等。定点l处理能力平台:TMS320C6000,C62x、C64x 处理能力强,网络交换、图像处理、雷达 信号处理等高端应用。定点/浮点l主频达到150MHz,低功耗l支持JTAG边界扫描接口l高性能32位CPU 16x16位和32x32位乘法累加器/16x16位双乘法累加器 哈佛总线结构 快速中断响应
16、和处理能力 4MB的程序/数据寻址空间 高效的代码转换功能(支持C/C+和汇编)与F240 x和F24x系列代码兼容l片上存储器 Flash、ROM、OTP ROM、SARAM(L0/L1/H0/M0/M1)、lBoot ROM 带软件启动模式、标准的数学表l外部存储器扩展接口 最多1MB寻址空间/可编程等待周期/可编程读写选择时序/3个独立片选信号l时钟和系统控制 支持动态改变锁相环的倍频系数 片上振荡器 看门狗定时模块l三个外部中断l外设中断扩展模块支持45个外设中断l三个32位CPU定时器l128位保护密码l电机控制外设(PWM/定时器/事件捕获)l串口通信外设l12位ADCl56个可配
17、置GPIOl先进的仿真调试功能(断点/硬件支持实时仿真)l低功耗模式和省电模式l宽温:40C to 85C/40C to 125Cl包括:中央处理单元CPU、测试单元和外设接口单元lCPU:完成数据/程序存储器的访问地址的产生、译码和执行指令、逻辑操作、控制寄存器及数据/程序存储器之间的数据交换等操作。l测试逻辑单元:监测、控制DSP的各部分的运行及其运行状态,方便调试。l接口信号单元:是存储器、外设、时钟、CPU以及测试单元之间进行信号传输的通道。lCPU包括:算术逻辑单元ALU:32位2的补码算术/布尔运算 乘法器:32x32位的2的补码的乘法运算 移位器:左/右移操作,最大16位 寻址运
18、算单元:数据存储器的寻址运算/地址产生 独立寄存器空间:包括系统控制寄存器、算术寄 存器和数据指针。带保护的流水线:防止同时对同一地址空间进行读写l1985年原形诞生在英国剑桥的Acorn公司l90年代ARM32位嵌入式RISC处理器领先lARM处理器的特点:小体积、低功耗、成本低、高性能 16位/32位双指令集 全球众多合作伙伴(IP供应商,不生产)lARM的解决方案:开放平台:无线、消费电子和图像应用等 嵌入式实时系统:自动化、工业、网络 安全应用:智能卡、SIM卡等lARM当前有5个产品系列:ARM7、ARM9、ARM9E、ARM10、SecurCorelARM7:低功耗32位低端的AR
19、M内核,适合对价位和功耗敏感的消费类应用,网络设备和移动电话lARM9:高性能、低功耗,PDA、高端打印机、智能计算机、机顶盒和仪器仪表等lARM9E:带DSP扩展等功能,与VFP9综合可为浮点运算提供硬件支持,适合海量存储、语音编码器、语音识别与合成等lARM10:比ARM9性能提高50%,与VFP9综合为浮点运算提供硬件支持,为数字机顶盒、智能电话、视频游戏机和高性能打印机等提供高级的整数和浮点运算能力。lSecurCore:为安全而设计,具有特定的抗篡改特性,灵活的保护单元,以确保操作系统和应用数据的安全。l基于主机的调试l交叉调试l片上调试l在主机上调试程序,然后直接移植到目标系统运行
20、或者移植到目标上与硬件联调,如PC104程序在PC机上调试。(1)主要基于C语言的可移植性,可以用C或C+编写,而且要考虑程序设计与硬件无关;(2)对于有些汇编语言可以通过指令集模拟器(Instruction Set Simulator,ISS)来运行,建立虚拟的处理器环境。l指令模拟器(ISS),用软件来模拟处理器的硬件,包括指令系统、外部设备、中断、定时器等。用户开发的软件如同在目标系统的硬件上运行一样。软件仿真器的性能有差别。功能强大的软件仿真器能仿真处理器的细节,包括中断和外设等,能够仿真应用程序的个细节;简单的仿真软件至少能够仿真处理器的指令系统。l有些软件仿真器提供了对指令执行时间
21、的仿真,这样的仿真器使用的软件时钟有两种方式:l一种是实时时钟,利用CPU的时钟运行嵌入式处理器的指令,只仿真指令的执行结果不仿真指令的执行时间;l另外一种方式就是采用仿真时钟,用户可以设置仿真时钟与处理器的时钟相同,这样不仅仿真指令执行的结果,也可以仿真指令执行时间和软件执行时间。如ARM公司的AXD仿真器。l高档的仿真器可以建立一个较大的实时系统模型,(Object Time公司的Object Time系统),它甚至能仿真不存在的硬件,因此开发者可以就一个硬件还没有开始设计的项目进行软件开发,并验证软件的正确性、实时性等。l缺点:较慢10100倍;只能仿真正确性、无法仿真与时序相关的错误;
22、比较适合验证软件算法的正确性。Crash and Burnl1编写代码l2反复的检查代码,直到编译通过l3将程序固化(即 Burn)到目标机上的非易失性记忆体(如:EEPROM,FLASH等)l4观察程序是否正常工作,借助指示灯、显示器、声音等输出设备。l5如果程序不能正常工作(即 Crash),反复检查代码,查找问题的根源l6改写代码l7重复 3 到 6 直到程序正常工作l嵌入式系统的资源一般都很有限,一般都将调试器分成两部分,大部分都驻留在主机中,很小一部分在目标系统中,有时称为调试代理或称为monitor,两部分通过串口或网络接口进行连接。l基本原理:高优先级中断,产生中断,运行中断服务
23、程序,调试内核。l是运行在目标机上的一段程序,负责监控目标机上被调试程序的运行,通常和 HOST端的程序一起完成对应用程序的调试。lROM Monitor 预先被固化到目标机的ROM 空间,在目标机复位后首先执行,对目标机进行一些必要的初始化,然后初始化自己的程序空间,最后就等待 HOST端的命令。lROM Monitor 能完成 程序的下载,目标机内存和寄存器的读写、设置断点、单步执行 等功能。高级的 ROM Monitor 能完成代码分析、系统分析,以及设置各种非常复杂的断点等功能。缺点:l(1)开发ROM Monitor的难度比较大。l(2)当ROM Monitor占用CPU时,应用程序
24、不响应外部的中断,因此不便于调试有时间特性的程序。l(3)ROM Monitor要占用目标机一定数量的资源,如:CPU资源、RAM资源和通用设备(如:串口、网卡等)资源。l(4)在调试时ROM Monitor己经为应用程序建立了运行环境,因此在一定程度上造成应用程序的最终运行环境和调试环境的差异,如:程序初始化部分的代码、内存空间分配等都与最终运行环境不同。l用RAM以及附加电路来仿真ROM,代替目标机上的 ROM。因为ROM Emulator设备上的 ROM芯片的地址可以实时的映射到目标机的 ROM地址空间,从而仿真目标机的 ROM。lROM仿真器的优点:可以缩短开发周期及可以灵活的设置断点
25、。l缺点:目标机必须能支持外部ROM存储空间。lICE通过连接器和目标系统连在一起,在调试时使用ICE的处理器和存储器、目标板上的I/O接口,也可以使用用户内存,两部分可以切换。调试代理方在ICE的存储器中,当正常运行时,ICE处理器从目标内存中读取指令.ICE的优点:(1)不消耗目标系统或CPU资源。(2)硬件断点,将CPU的取指地址同断点标志寄存器中的相应值比较。当目标程序存放在ROM中时,软件断点就无能为力了,因为无法插入 TRAP指令。对于ROM程序存储器系统,只能使用硬件断点。(3)跟踪功能(TRACE),记录被调试程序的执行过程。(4)条件触发,触发条件可以包括地址、数据、时钟周期
26、和外部信号。(5)实时显示存储器和I/O端口内容。l片上调试方式:在处理器内部嵌入额外的硬件控制模块,当满足特定的触发条件时就进入特殊的状态,此时程序停止运行,主机的调试器通过处理器的通信接口来访问系统资源并执行命令。主机通信接口和目标板通信接口通过一块简单的信号接口转换电路连接。l目前有两种流行的方式:BDM和JTAG。lBDM(Background Debug Mode)l是Motorola公司的专有调试接口,Motorola是第一个将具有调试功能的特殊硬件放在处理器核心中的嵌入式处理器厂商。硬件设计仅需要将处理器的调试引脚连接到专用连接器和调试工具上,这样的连接器叫n-wire或wiggler。lJTAG(Joint Test Action Group)l与BDM类似,支持JTAG调试的处理器集成了符合JTAG协议的硬件调试接口,JTAG仿真器包括硬件和软件两部分,硬件一个接口通过并口、串口、USB或网口等连到主机上,另外一端与目标处理器的JTAG口连接。JTAG采用串行方式传输数据,占用的引脚比BDM少。
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。