浅谈嵌入式系统_第1页
浅谈嵌入式系统_第2页
浅谈嵌入式系统_第3页
浅谈嵌入式系统_第4页
浅谈嵌入式系统_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1.引言嵌入式系统是以应用为中心,与计算机技术为根底,软硬件可配置,对功能、可靠性、本钱、体积、功耗有严格约束的专用系统,所用的计算机称为嵌入式计算机。传统的计算机分类是按照计算机的处理字长、体系结构、运算速度、结构规模、适用领域进行的,如通常所说的大型计算机、中型机、小型机和微型计算机,并以此标准来组织学科和产业分工,这种分类方法也沿袭了多年。随着近20年来微电子技术、计算机技术和移动通信技术的迅速开展以及网络技术的广泛应用,实际情况已经产生了根本性的变化。例如在70年代末定义的微型计算机演变出来的个人计算机PC其处理速度已远远超过了当年对大、中、小型计算机的定义。随着计算机技术对其它行业的广泛渗透和与其它行业应用技术的相互结合,以应用为中心的分类方法变得似乎更加切合实际开展。按计算机的嵌入式应用和非嵌入式应用将其分为通用计算机和嵌入式计算机。而通用计算机具有一般计算机的根本标准形态,通过装配不同的应用软件,以根本雷同的面目出现并应用在社会的各个方面,其典型产品为PC。而非通用计算机的计算机-嵌入式计算机,那么是非通用计算机形态的计算机应用,它是以作为嵌入式系统的核心部件的形式隐藏在各种装置、设备、产品和系统中。因此嵌入式计算机是计算机技术开展中的一种计算机存在的形式,是从计算机技术的开展中别离出来的。相比拟而言国内的定义更全面一些,表达了嵌入式系统“嵌入”、“专用性”、“计算机”的根本要素和特征。2.嵌入式系统开展历史嵌入式系统诞生于微型机时代,嵌入式系统的嵌入性本质是将一个计算机嵌入到一个对象体系中去,这些是理解嵌入式系统的根本出发点。由于嵌入式计算机系统要嵌入到对象体系中,实现的是对象的智能化控制,因此,它有着与通用计算机系统完全不同的技术要求与技术开展方向。通用计算机系统的技术要求是高速、海量的数值计算;技术开展方向是总线速度的无限提升,存储容量的无限扩大。而嵌入式计算机系统的技术要求那么是对象的智能化控制能力;技术开展方向是与对象系统密切相关的嵌入性能、控制能力与控制的可靠性。嵌入式计算机系统那么走上了一条完全不同的道路,这条独立开展的道路就是单芯片化道路。它发动了原有的传统电子系统领域的厂家与专业人士,接过起源于计算机领域的嵌入式系统,承当起开展与普及嵌入式系统的历史任务,迅速地将传统的电子系统开展到智能化的现代电子系统时代。在中国嵌入式系统领域,比拟认同的嵌入式系统概念是:嵌入式系统是以应用为中心,以计算机技术为根底,并且软硬件可裁剪,适用于应用系统对功能、可靠性、本钱、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处器、处围硬件设备、嵌入式操作系统以及用户的应用程序等四个局部组成,用于实现对其他设备的控制、监视或管理等功能。如果我们了解了嵌入式〔计算机〕系统的由来与开展,对嵌入式系统就不会产生过多的误解,而能历史地、本质地、普遍适用地定义嵌入式系统。2.1嵌入式系统的定义按照历史性、本质性、普遍性要求,嵌入式系统应定义为:“嵌入到对象体系中的专用计算机系统”。“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个根本要素。对象系统那么是指嵌入式系统所嵌入的宿主系统。2.2嵌入式系统的特点嵌入式系统的特点与定义不同,它是由定义中的三个根本要素衍生出来的。不同的嵌入式系统其特点会有所差异。与“嵌入性”的相关特点:由于是嵌入到对象系统中,必须满足对象系统的环境要求,如物理环境〔小型〕、电气/气氛环境〔可靠〕、本钱〔价廉〕等要求。与“专用性”的相关特点:软、硬件的裁剪性;满足对象要求的最小软、硬件配置等。与“计算机系统”的相关特点:嵌入式系统必须是能满足对象系统控制要求的计算机系统。与上两个特点相照应,这样的计算机必须配置有与对象系统相适应的接口电路。另外,在理解嵌入式系统定义时,不要与嵌入式设备相混淆。嵌入式设备是指内部有嵌入式系统的产品、设备,例如,内含单片机的家用电器、仪器仪表、工控单元、机器人、、PDA等。2.3嵌入式系统的种类与开展按照上述嵌入式系统的定义,只要满足定义中三要素的计算机系统,都可称为嵌入式系统。嵌入式系统按形态可分为设备级〔工控机〕、板级〔单板、模块〕、芯片级〔MCU、SoC〕。有些人把嵌入式处理器当作嵌入式系统,但由于嵌入式系统是一个嵌入式计算机系统,因此,只有将嵌入式处理器构成一个计算机系统,并作为嵌入式应用时,这样的计算机系统才可称作嵌入式系统。嵌入式系统与对象系统密切相关,其主要技术开展方向是满足嵌入式应用要求,不断扩展对象系统要求的外围电路〔如ADC、DAC、PWM、日历时钟、电源监测、程序运行监测电路等〕,形成满足对象系统要求的应用系统。因此,嵌入式系统作为一个专用计算机系统,要不断向计算机应用系统开展。因此,可以把定义中的专用计算机系统引伸成,满足对象系统要求的计算机应用系统。2.4嵌入式系统的实时性响应时间:是实时系统从识别出一个外部事件到做出响应的时间;生存时间:是数据的有效等待时间,数据只有在这段时间内才是有效的;吞吐量:是在给定的时间内系统能够处理的事件总数,吞吐量通常比平均响应时间的倒数要小一点。实时系统根据响应时间可以分为弱实时系统、一般实时系统和强实时系统三种。弱实时系统在设计时的宗旨是使各个任务运行得越快越好,但没有严格限定某一任务必须在多长时间内完成,弱实时系统更多关注的是程序运行结果的正确与否,以及系统平安性能等其他方面,对任务执行时间的要求相对来讲较为宽松,一般响应时间可以是数十秒或者更长。一般实时系统是弱实时系统和强实时系统的一种折衷,它的响应时间可以在秒的数量级上,广泛应用于消费电子设备中。强实时系统那么要求各个任务不仅要保证执行过程和结果的正确性,同时还要保证在限定的时间内完成任务,响应时间通常要求在毫秒甚至微秒的数量级上,这对涉及到医疗、平安、军事的软硬件系统来说是至关重要的。3.基于ARM9的S3C2410微处理器嵌入式系统是针对具体应用设计的“专用系统”。它的硬件和软件都必须高效率地设计、“量体裁衣”、去除冗余,力争在较少的资源上实现更高的性能。它与通用的计算机系统相比具有以下显著特点:〔1〕具有较长的生命周期;〔2〕嵌入式系统的目标代码通常是固化在非易失性存储器〔ROM,EPROM,EEPROM,FLASH〕芯片中;〔3〕嵌入式系统使用的操作系统一般是实时操作系统〔RTOS〕,系统有实时约束;〔4〕嵌入式系统需要专用开发工具和方法进行设计;〔5〕嵌入式微处理器通常包含专用调试电路;〔6〕嵌入式系统是技术密集、资金密集、高度分散、不断创新的知识集成系统;〔7〕嵌入式系统通常是面向特定任务的,而不同于一般通用PC计算平台,是“专用”的计算机系统;〔8〕嵌入式系统运行环境差异很大;〔9〕嵌入式系统比通用PC系统资源少得多;〔10〕嵌入式系统“嵌入”到对象的体系中,对对象、环境和嵌入式系统自身具有严格的要求,一般的嵌入式系统具有低功耗、体积小、集成度高、本钱低等特点;〔11〕建立完整的嵌入式系统的系统测试和可靠性评估体系,保证嵌入式系统高效、可靠、稳定工作。嵌入式系统按表现形式及使用硬件种类分为:〔1〕系统中使用含程序或算法的处理器的嵌入式系统为芯片级嵌入;〔2〕系统中使用某个核心模块的嵌入式系统为模块级嵌入。嵌入式系统按软件实时性需求分:〔1〕非实时系统〔如PDA〕;〔2〕软实时系统〔如消费类产品〕;〔3〕硬实时系统〔工业实时控制系统〕。3.1ARM处理器的特点〔1〕小体积、低功耗、本钱低、高性能;〔2〕采用RISC指令集;〔4〕大量使用存放器,指令执行速度更快;〔5〕ARM/THUMB指令支持;〔5〕三/五级流水线;〔6〕高效的指令系统,支持Thumb〔16位〕/ARM〔32位〕双指令集,能很好的兼容8位/16位器件。3.2当前ARM体系结构的扩充Thumb:16位指令集,用以改善代码密度;DSP:用于DSP应用的算术运算指令集;Jazeller:允许直接执行Java代码的扩充。ARM9采用哈佛〔Harvard)结构,程序存储器与数据存储器分开,提供了较大的存储器带宽。同时,大多数DSP都采用此结构。ARM9为五级流水〔取指,译码,执行,缓冲/数据,回写〕,平均功耗为0.7mW/MHz。时钟速度为120MHz-200MHz,每条指令平均执行1.5个时钟周期。ARM9系列微处理器包含ARM920T、ARM922T和ARM940T三种类型,以适用于不同的应用场合。Cache内存管理流水线级别ThumbDSPJazelleARM9TDMI无无5有无无ARM920T16K/16kMMU5有无无ARM922T8k/8kMMU5有无无ARM940T4k/4kProtectionUnit5有无无ARM9FamilyARM架构的处理器,有的带有指令Cache和数据Cache,但片内不带有片内RAM和片内ROM,系统所需的RAM和ROM须通过总线外接,如下列图。3.3ARMI/O结构ARM架构中的处理器核和处理器内核一般都没有I/O的部件和模块,构成ARM架构的处理器中的I/O可通过AMBA总线来扩充。〔1〕存储器映像I/OARM采用存储器映像I/O的方式,即把I/O端口地址作为特殊的存储器地址。不过I/O的输入/输出与真正的存储器读/写仍然有所不同:存储器的单元重复读屡次的值是一致的;而I/O设备的连续2次输入,其输入值可能会有所不同。〔2〕直接存储器存取DMA在I/O的数据流量比拟大,中断处理比拟频繁的场合,会明显影响系统的性能。因此,许多系统就采用了直接存储器存取DMA,这样,I/O的数据块传送至存储器的缓冲器区域就不需要处理器介入。而中断也仅仅出现在出现出错时或缓冲器满时。〔3〕中断IRQ和快速中断FIQ一般的ARM没有DMA的功能,为了提高I/O处理的能力,对于一些要求I/O处理速率比拟高的事件,系统安排快速中断FIQ(FastInterrupt),而对其余的I/O源仍安排一般中断IRQ。〔4〕S3C2410的推出S3C2410是Samsung公司推出的16/32位RISC处理器,主要面向手持设备以及高性价比、低功耗的应用。CPU内核采用的是ARM公司设计的16/32位ARM920TRISC处理器。3.4S3C2410A1.8V/2.0V内核供电,3.3V存储器供电,3.3V外部I/O供电;具有16KB的ICache和16KB的DCache以及MMU;外部存储器控制器;LCD控制器提供1通道LCD专用DMA;4通道DMA并有外部请求引脚;3通道UART和2通道SPI;1通道多主机IIC总线和1通道IIS总线控制器;SD主接口版本1.0和MMC卡协议2.11兼容版;2个USB主设备接口,1个USB从设备接口;4通道PWM定时器和1通道内部定时器;看门狗定时器;117位通用I/O口和24通道外部中断源;电源控制模式包括:正常、慢速、空闲和掉电四种模式;8通道10位ADC和触摸屏接口;具有日历功能的RTC;使用PLL的片上时钟发生器。S3C2410结构框图3.5S3C2410存储器控制器S3C2410的存储器控制器提供访问外部存储器所需要的存储器控制信号。3.6S3C2410存储器控制器特性〔1〕支持小/大端〔通过软件选择〕;〔2〕地址空间:每bank有128M字节〔总共有8个banks,共1G字节〕;〔3〕除bank0〔只能是16/32位宽〕之外,其他bank都具有可编程的访问大小〔可以是8/16/32位宽〕;〔4〕总共有8个存储器banks〔bank0~bank7〕,其中6个banks用于ROM,SRAM等,剩下2个banks用于ROM,SRAM,SDRAM等;〔5〕7个固定的存储器bank〔bank0~bank6〕起始地址,最后一个bank〔bank7〕的起始地址是可调整的,最后两个bank〔bank6~bank7〕的大小是可编程的,所有存储器bank的访问周期都是可编程的;〔6〕总线访问周期可以通过插入外部等待来延长;〔7〕支持SDRAM的自刷新和掉电模式。S3C2410存储器映射3.7S3C2410的I/O口工作原理S3C2410A1个23位的输出口〔PORTA〕2个11位的I/O口〔PORTB和PORTH〕4个16位的I/O口〔PORTC、PORTD、PORTE、PORTG〕1个8位的I/O口〔PORTF〕与配置I/O口相关的存放器包括:端口控制存放器〔GPACON~GPHCON〕端口数据存放器〔GPADAT~GPHDAT〕端口上拉存放器〔GPBUP~GPHUP〕杂项控制存放器外部中断控制存放器〔EXTINTN〕3.8I/O口编程实例举例:通过对G口的操作控制CPU板左下角的LED1和LED2实现轮流闪烁。voidMain(void){intflag,i;Target_Init();//进行硬件初始化操作,包括对I/O口的初始化操作for(;;){ if(flag==0){ for(i=0;i<1000000;i++);//延时 rGPGCON=rGPGCON&0xfff0ffff|0x00050000;//配置第8、第9位为输出引脚 rGPGDAT=rGPGDAT&0xeff|0x200;//第8位输出为低电平//第9位输出高电平 for(i=0;i<10000000;i++);//延时 flag=1;}else{ for(i=0;i<1000000;i++);//延时 rGPGCON=rGPGCON&0xfff0ffff|0x00050000;//配置第8、第9位为输出引脚 rGPGDAT=rGPGDAT&0xdff|0x100;//第8位输出为高电平//第9位输出低电平 for(i=0;i<1000000;i++);//延时 flag=0; }}}3.9ARM的中断原理〔1〕ARM系统包括两类中断:一是IRQ中断,一是FIQ中断。〔2〕处理中断的步骤如下:1)保存现场。保存当前的PC值到R14,保存当前的程序运行状态到SPSR。2)模式切换。根据发生的中断类型,进入IRQ模式或FIQ模式。3)获取中断源。以异常向量表保存在低地址处为例,假设是IRQ中断,那么PC指针跳到0x18处;假设是FIQ中断,那么跳到0x1C处。IRQ或FIQ的异常向量地址处一般保存的是中断效劳子程序的地址,所以接下来PC指针跳入中断效劳子程序处理中断。4)中断处理。为各种中断定义不同的优先级别,并为每一个中断设置一个中断标志位。当发生中断时,通过判断中断优先级以及访问中断标志位的状态来识别到底哪一个中断发生了。进而调用相应的函数进行中断处理。5)中断返回,恢复现场。当完成中断效劳子程序后,将SPSR中保存的程序运行状态恢复到CPSR中,R14中保存的被中断程序的地址恢复到PC中,进而继续执行被中断的程序。4.嵌入式系统的主要应用,分类,特点4.1主要应用嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括:工业控制、交通管理、信息家电、家庭智能系统、POS网络及电子商务、环境工程与自然、机器人。这些应用中,可以着重于在控制方面的应用。就远程家电控制而言,除了开发出支持TCP/IP的嵌入系统之外,家电产品控制协议也需要制订和统一,这需要家电生产厂家来做。同样的道理,所有基于网络的远程控制协议也需要与嵌入式系统之间实现接口,然后再由嵌入式系统来控制并通过网络实现控制。所以,开发和探试嵌入式系统有着十分重要的意义。相对于其他的领域,机电产品可以说是嵌入式系统应用最典型最广泛的领域之一。从最初的单片机以现在的工控机、SOC在种机电产品中均有着巨大的市场。工业设备是机电产品中最大的一类,在目前的工业控制设备中,工控机的使用非常广泛,这些工控机一般采用的是工业级的处理器和各种设备,其中以X86的MPU最多。家电行业是嵌入式应用的另一大行业,我们传统的电视,电冰箱当然其中也嵌有处理器,但是这些处理器只是在控制方面应用。而现在只有按钮、开关的电器显然已经不能满足人们的日常需求,具有用户界面,能远程控制,智能管理的电器是未来的开展趋势。到我们身边。4.2分类由于嵌入系统由硬件和软件两大局部组,所以其分类也可以从硬件和软件进行划分。从硬件方面来讲,各式各样的嵌入式处理器是嵌入式系统硬件中的最核心的局部,而目前世界上具有嵌入式功能特点的处理器已经超过1000种,流行体系结构包括MCU,MPU等30多个系列。鉴于嵌入式系统广阔的开展前景,很多半导体制造商都大规模生产嵌入式处理器,并且公司自主设计处理器也已经成为了未来嵌入式领域的一大趋势,其中从单片机、DSP到FPGA有假设各式各样的品种上,速度越来越快,性能越来越强,价格也越来越低。目前嵌入式处理的寻址空间可以从64KB到16MB,处理速度最快可以到达2000MIPS,封装从8个引脚到144个引脚个不等。从软件方面划分,主要可以依据操作系统的类型。目前嵌入式系统的软件主要有两大类:实时系统和分时系统。其中实时系统又分为两类:硬实时系统和软实时系统。实时嵌入系统是为执行特定功能而设计的,可以来严格的按时序执行功能。其最大的特征就是程序的执行具有确定性。在实时系统中,如果系统在指定的时间内未能实现某个确定的任务,会导致系统的全面失败,那么系统被称为硬实时系统。而在软实时系统中,虽然响应时间同样重要,但是超时却不会导致致命错误。一个硬实时系统往往在硬件上需要添加专门用于时间和优先级管理的控制芯片,而软实时系统那么主要在软件方面通过编程实现时限的管理。比方WindowsCE就是一个多任备置分时系统,而Ucos-II那么是典型的实时操作系统。当然,除了上述分类之外,还有许多其他分类方法,比方从应用方面分为工业应用和消费电子等,在这里就不一一表达了。4.3特点作用嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点;①、对实时任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。②、具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了防止在软件模块之间出现错误的交叉作用,需要设计强大存储区保护功能,同时也有利于软件诊断。③、可扩展的处理器结构,以能最迅速地开发出满足应用的最高性能的嵌入式微处理器。④、嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池的嵌入式系统更是如此,如需要功耗只有nW甚至uW级。而嵌入式系统的重要特征那么是如下:①系统内核小。由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。比方Enea公司的OSE分布式系统,内核只有5K,而Windows的内核?简直没有可比性。②专用性强。嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全两个概念。③系统精简。嵌入式系统一般没有系统软件和应软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统本钱,同时也利于实现系统平安。④高实时性的系统软件〔OS〕是嵌入式软件的根本要求。而且软件要求固态存领教,以提高速度;软件代码要求高质量和高可靠性。⑤嵌入软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS(Real-TimeOperationSystem)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。⑥嵌入式系统开发需要开发工具和环境。由于其本身不具备自举开发能力,即使调设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。5.嵌入式微处理器的的种类嵌入式微处理器的核心是嵌入微处理器,嵌入式微处理器与通用CPU最大的不同在于嵌入式微处理器大多工作在为特定用户群所专用设计的系统中,它将通用CPU许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统在设计时趋于小型化,同时还具有很高的效率和可靠性。嵌入式微处理器的体系结构可以采用冯.诺依曼体系或哈佛体系结构;指令系统可以选用精简指令系统〔RedycedInstryctionSetComputer,RISC〕和复杂指令系统CISC(ComplexinstructionSetComputer,CISC)。RSIC计算机在通道中只包含最有用的指令。确保数据通道快速执行每一条指令,从而提高了执行效率并使用CPU硬件结构设计变得更为简单。嵌入式微处理器有各种不同的体系统,即使在同一体系中也可能具有不同的时钟频率和数据总宽度,或集成了不同的外设和接口。据不完全统计,目前全世界嵌入式微处理器已经超过1000多种,体系结构有30多个系列,其中主流的体系有ARM、MIPS、PowerPC、X86和SH等。但与全球PC市场不同的是,没有一种嵌入式微处理器可以主导市场,仅以32位的产品而言,就有100种以的嵌入式微处理器。嵌入式微处理器的选择是根据具体的应用而决定的。6.嵌入式系统的开展现状和开展趋势随着信息化,智能化,网络化开展,嵌入式系统技术也将获得广阔开展空间。美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能〔电脑〕工具将是PC和因特网之后最伟大的创造。我国著名嵌入式系统专家沈绪榜院士98年11月

温馨提示

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

评论

0/150

提交评论