您好,欢迎访问三七文档
嵌入式系统软件开发EmbeddedSystemDeveloping主要内容嵌入式系统基本概念嵌入式硬件基础嵌入式软件开发环境操作系统基础(linux,vxworks,wince体系结构)常见Linux命令shell程序设计makefile文件Gccld,gdb等Linux程序设计vxworks环境及程序设计wince环境及程序设计嵌入式驱动程序设计1嵌入式系统基本概念嵌入式系统的定义嵌入式系统应用嵌入式系统的特点1-1嵌入式系统的定义IEEE对嵌入式系统的定义:Embeddedsystemisakindofdeviceusedtocontrol,monitororassisttheoperationofequipment,machineryorplant.“控制、监视或者辅助设备、机器和车间运行的装置”嵌入式系统是以应用为中心、以计算机技术为基础的,软硬件可裁减的,能满足应用系统对功能、可靠性、成本、体积、功耗等指标的严格要求的专用计算机系统。goReaderInterneteBookSamsungAnyWebInternetScreenPhoneeRemoteIntelligentHomeControllerTektronixTDS7000DigitalOscilloscopesNixvueDigitalAlbumDigitalPhotoAlbum1-2一些典型的嵌入式系统应用实例嵌入式Internet应用1-3嵌入式系统的特点面向用户、面向产品、面向应用往往有低功耗、小体积、集成度高、实时性和可靠性等要求系统精简,软硬件紧密耦合专门的开发工具和环境有特定的硬件支持特性,如闪存(flashmemory),看门狗(watchdog),JTAG/BDM调试口等2嵌入式硬件基础嵌入式处理器(主要介绍ARM芯片)嵌入式系统存储器嵌入式系统显示器面向特定行业的嵌入式硬件2-1嵌入式处理器嵌入式处理器简介ARM处理器系列介绍ARM体系结构2-1-1嵌入式处理器简介嵌入式处理器分类常见的嵌入式微处理器系列2-1-1嵌入处理器分类嵌入式处理器是指嵌入到应用对象系统中的专用处理器,一般对价格尺寸、功耗等方面限制比较多。嵌入式处理器可分为低端的嵌入式微控制器(MicroControllerUnit,MCU)、常用于计算机通信领域的嵌入式DSP处理器(EmbeddedDigitalSignalProcessor,EDSP)、中高端的嵌入式微处理器(EmbeddedMicroProcessorUnit,EMPU)和高度集成的嵌入式片上系统(SystemOnChip,SOC)。ASIC(ApplicationSpecificIntegratedCircuit)专用集成电路2-1-1嵌入处理器分类嵌入式微控制器又称单片机,将整个计算机系统集成到一块芯片中。嵌入式微控制器一般以某一种微处理器内核为核心,芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、UART、PWM、A/D、D/A、FlashRAM、E2PROM等各种必要功能模块。代表性的有如51系列单片机。嵌入式DSP处理器有两个发展来源,一是由DSP处理器经过单片化、EMC改造、增加片上外设成为嵌入式DSP处理器,TI的TMS320C2000/C5000等属于此范畴;二是在通用单片机或片上系统(SOC)中增加DSP协处理器发展而来,如Intel的MCS-296。易于实现快速富利叶变换(FFT),离散余弦变换(DCT)等嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。目前常用的嵌入式处理器有Aml86/88、386EX、SC-400、PowerPC、68000、MIPS、ARM/StrongARM系列等。片上系统(SystemOnChip,SOC)指的是在单个芯片上集成一个完整的系统(CPU、存储器、以及外围电路等)。IP(IntellectualProperty)核有三种不同的表现形式:软核固核硬核软核用HDL(HardwareDescriptionLanguage)方式提交,其性能通过时序验证模拟进行验证。由于软核不依赖于任何实现工艺和实现技术,具有很大的灵活性。硬核以IC版图的形式提交,并经过实际工艺流片验证。硬核强烈地依赖于某一个特定的实现工艺,而且在具体的物理尺寸,物理形态及性能上具有不可更改性。固核是由软核发展而来,以电路网表的形式提交,通常还经过硬件验证或硬件仿真器验证。由于固核的时序特性是经过严格检验的,设计者只要保证在布局布线过程中电路关键路径的分布参数不会引起时序混乱就可以保证芯片的设计成功。固核的缺点在于固核仍对应于某个特定的实现工艺,限制了固核的使用范围。2-1-2常见的嵌入式微处理器系列全世界嵌入式处理器已经超过1000多种,流行的体系结构有30多个系列,其中以ARM、PowerPC、MC68000、MIPS等使用得最为广泛。MIPS是MicroprocessorwithoutInter-lockedPipelineStages的缩写,是由MIPS技术公司开发的一种处理器内核标准。目前有32位和64位MIPS芯片,芯片也是由MIPS技术公司生产的。PowerPC是早期Motorola公司和IBM公司联合为Apple公司的MAC机开发的CPU芯片,商标权同时属于IBM和Motorola两家公司,并一度成为他们的主导产品。IBM公司主要的PowerPC产品有PowerPC604s(深蓝内部的CPU)、PowerPC750、PowerPCG3(1.1GHz)。Motorola公司则主要有MC和MPC系列。尽管他们产品不一样,但都采用PowerPC的内核。这些产品在电信、金融和其他许多行业都具有广泛的应用。x86系列处理器起源于Intel架构的8080,然后发展出286、386、486直到现在的奔腾处理器乃至双核处理器等。从嵌入式市场来看,486DX也应该是和ARM、68K、MIPS和SuperH齐名的5大嵌入式处理器之一。目前市场上的PC104产品基本都是基于x86体系结构,在工业控制领域里面PC104产品的占有量仍然很大。Motorola68K是出现比较早的一款嵌入式处理器,采用的是CISC(复杂指令集系统计算机)结构,设计经典,在全球各种嵌入式应用领域中取得巨大成功。Sun微系统公司也把这款处理器应用于早期的工作站中。CISC(ComplexInstructionSetComputer,复杂指令集计算机)Intel、AMD,TI(德州仪器)、Cyrix以及VIA(威盛)RISC(ReducedInstructionSetComputer,精简指令集计算机ARM系列,MIPS系列、SUN公司的SPARC处理器、IBM公司的PowerPC,龙芯处理器(其IP核基于MIPS架构)。据统计,基于RISC技术的嵌入式处理器出货量大约站98%的市场份额。2-1-2CISC架构与RISC架构2-1-2CISC架构与RISC架构两者的特点(1)指令系统:RISC设计者把主要精力放在那些经常使用的指令上,减少指令集,取消微指令,尽量使它们具有简单高效的特色。对不常用的功能,常通过组合指令来完成。因此,在RISC机器上实现特殊功能时,效率可能较低。但可以利用流水技术和超标量技术加以改进和弥补。而CISC计算机的指令系统比较丰富,有专用指令来完成特定的功能。因此,处理特殊任务效率较高。据统计在CISC指令集的各种指令中,大约有20%的指令会被反复使用,占整个程序代码的80%。(2)存储器操作:RISC对存储器操作有限制,大量使用寄存器,使控制简单化;而CISC机器的存储器操作指令多,操作直接。(3)程序:RISC汇编语言程序一般需要较大的内存空间,实现特殊功能时程序复杂,不易设计;而CISC汇编语言程序编程相对简单,科学计算及复杂操作的程序社设计相对容易,效率较高。(4)中断:RISC机器在一条指令执行的适当地方可以响应中断;而CISC机器是在一条指令执行结束后响应中断。(5)CPU:RISCCPU包含有较少的单元电路,因而面积小、功耗低;而CISCCPU包含有丰富的电路单元,因而功能强、面积大、功耗大。(6)设计周期:RISC微处理器结构简单,布局紧凑,设计周期短,且易于采用最新技术;CISC微处理器结构复杂,设计周期长。(7)用户使用:RISC微处理器结构简单,指令规整,性能容易把握,易学易用;CISC微处理器结构复杂,功能强大,实现特殊功能容易。(8)应用范围:由于RISC指令系统的确定与特定的应用领域有关,故RISC机器更适合于专用机;而CISC机器则更适合于通用机。尽管RISC架构有不少优点,但决不能认为RISC架构就可以取代CISC架构,事实上,RISC和CISC各有优势,而且界限并不那么明显。现代的CPU往往采用CISC的外围,内部加入了RISC的特性,如超长指令集(VLSW)CPU就是融合了RISC和CISC的优势,成为未来的CPU发展方向之一。2-1-2ARM微处理器系列简介ARM(AdvancedRISCMachines):公司名,一类微处理器,一种技术。ARM公司1990年11月成立于英国剑桥,公司主要从事:设计ARM系列RISC处理器内核授权ARM内核给生产和销售半导体的合作伙伴提供IP核提供基于ARM架构的开发设计技术软件工具、评估板、调试工具、应用软件、总线架构、外围设备单元等等2-1-2ARM微处理器系列简介采用RISC架构的ARM微处理器一般具有如下特点:体积小、低功耗、低成本、高性能;支持Thumb(16位)/ARM(32位)双指令集;大量使用寄存器,指令执行速度更快;大多数数据操作都在寄存器中完成;寻址方式灵活简单,执行效率高;指令长度固定常见ARM系列:ARM7系列ARM9系列ARM9E系列ARM10E系列SecurCore系列Intel的Xscale其中,ARM7、ARM9、ARM9E和ARM10为4个通用处理器系列,每一个系列提供一套相对独特的性能来满足不同应用领域的需求。SecurCore系列专门为安全要求较高的应用而设计。ARM7TDMI、ARM7TDMI-S、ARM720-T、ARM7EJ、ARM9、ARM9E其中:T:16位Thumb压缩指令集;D:支持在片调试,允许处理器响应调试请求暂停。M:增强型乘法器,可将两个32位数相乘而直接产生64位结果。I:嵌入式ICE硬件提供片上断点和调试点支持。M:Multiplier,支持长乘法指令E:Extended,支持增强型DSP指令J:Java加速器Jazelle2-1-2ARM微处理器系列简介2-1-3体系结构体系结构的概念ARM体系结构版本ARM运行模式ARM寄存器组ARM指令系统2-1-3-1体系结构的概念体系结构是指程序员在为特定处理器编制程序时所“看到”从而可以在程序中使用的资源及其相互间的关系。主要包括指令系统、寄存器组、存储器结构。指令系统CISC,RISC寄存器组存储器结构冯·诺依曼结构也称为普林斯顿结构,程序指令和数据存储器合并存放Harvard结构将程序指令和数据存储分开存放的并行体系结构。程序和数据存储在两个相互独立的存储器中,每个存储器独立编址、独立访问。提高了执行速度和数据吞吐量,可实现取指和执行的完全重叠。存储空间的编址方式多字节数据存放格式:大端格式、小端格式(ARM可选择)I/O空间编地址:统一编址(ARM)、独立地址(Intelx86)对齐问题大端格式(bigendian):字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中(Motorola系列)。注:网络字节顺序为大端格式,通常使用如下转化函数:NTOHL(),NTOHS();HTONL(),HTONS()小端格式(littleendi
本文标题:嵌入式系统软件开发
链接地址:https://www.777doc.com/doc-3799925 .html