嵌入式系统的分类和特点

2016-12-19 00:00:00嘉辉 嵌入式培训

  嵌入式系统是一种"完全嵌入受控器件内部,为特定应用而设计的专用计算机系统",那么嵌入式系统的分类和特点是什么呢,一起来看看吧。

  嵌入式系统的分类

  由于嵌入式系统由硬件和软件两大部分组成,所以其分类也可以从硬件和软件进行划分。

  (1) 嵌入式系统的硬件

  从硬件方面来讲,嵌入式系统的核心部件是嵌入式处理器。据不完全统计,全世界嵌入式处理器的品种数量已经超过1000多种,流行体系结构有30多个,其中8051体系占大多数。生产8051单片机的半导体厂家有20多个,共350多种衍生产品,仅Philips就有近100种。目前嵌入式处理器的寻址空间可以从64KB到256MB,处理速度从0.1MIPS到2000MIPS。

  近年来嵌入式微处理器的主要发展方向是小体积、高性能、低功耗。专业分工也越来越明显,出现了专业的IP(Intellectual Property Core,知识产权核)供应商,如ARM、MIPS等,他们通过提供优质、高性能的嵌入式微处理器内核,由各个半导体厂商生产面向各个应用领域的芯片。

  如图1-1所示,一般可以将嵌入式处理器分成4类,即嵌入式微处理器(Micro Processor Unit,MPU)、嵌入式微控制器(Micro Controller Unit,MCU单片机)、嵌入式DSP处理器(Digital Signal Processor,DSP)和嵌入式片上系统(System On Chip,SOC)。

  (2) 嵌入式系统的软件

  嵌入式系统的软件一般由嵌入式操作系统和应用软件组成。操作系统是连接计算机硬件与应用程序的系统程序。

  操作系统有两个基本功能:使计算机硬件便于使用;高效组织和正确地使用计算机的资源。

  操作系统有4个主要任务:进程管理、进程间通信与同步、内存管理和I/O资源管理。

  目前嵌入式系统的软件主要有两大类:实时系统和分时系统。如图1-2所示。

  实时操作系统是指具有实时性,能支持实时控制系统工作的操作系统。

  实时操作系统的首要任务是调度一切可利用的资源完成实时控制任务;

  其次才着眼于提高计算机系统的使用效率,其重要特点是通过任务调度来满足对于重要事件在规定的时间内做出正确的响应。

  实时操作系统与分时操作系统的区别:

  对于分时操作系统,软件的执行在时间上的要求并不严格,时间上的延误或者时序上的错误,一般不会造成灾难性的后果。

  而对于实时操作系统,主要任务是对事件进行实时的处理,虽然事件可能在无法预知的时刻到达,但是软件必须在事件随机发生时,在严格的时限内做出响应(系统的响应时间)。即使是系统处在尖峰负荷下,也应如此,系统时间响应的超时就意味着致命的失败。

  另外,实时操作系统的重要特点是具有系统的可确定性,即系统能对运行的最好和最坏情况做出精确的估计。

  Stankovic给出了实时系统的定义:

  “实时系统是这样一种系统,即系统执行的正确性不仅取决于计算的逻辑结果,而且还取决于结果的产生时间。”

  实时系统又可以分为“硬实时系统”和“软实时系统”。硬实时和软实时的区别就在于对外界的事件做出反应的时间。

  硬实时系统必须是对事件做出及时的反应,绝对不能错过事件处理的时限。在硬实时系统中如果出现了这样的情况就意味着巨大的损失和灾难。比如说航天飞机的控制系统,如果出现故障,后果不堪想象。

  软实时系统是指,如果在系统负荷较重的时候,允许发生错过时限的情况而且不会造成太大的危害。比如液晶屏刷新允许有短暂的延迟。

  硬实时系统和软实时系统实现的区别主要是在选择调度算法上。

  对于软实时系统,选择基于优先级调度的算法足以满足软实时系统的需求,而且可以提供高速的响应和大的系统吞吐量;

  而对硬实时系统来说,需要使用的算法就应该是调度方式简单,反应速度快的实时调度算法。

  嵌入式系统的特点

  (1) 系统内核小

  由于嵌入式系统一般是应用于小型电子装置,系统资源相对有限,所以内核较之传统的操作系统要小得多。比如ENEA公司的OSE分布式系统,内核只有5KB而Windows的内核则要大得多。

  (2) 专用性强

  嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时,针对不同的任务,往往需要对系统进行较大更改;程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全不同的概念。

  (3) 系统精简

  嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能的 设计及实现过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。

  (4) 高实时性

  高实时性的操作系统软件是嵌入式软件的基本要求。而且软件要求固化存储,以提高速度。软件代码要求高质量和高可靠性。

  (5)多任务的操作系统

  嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统而直接在芯片上运行;但是为了合理地调度多任务,利用系统资源、系统函数以及专家库函数接口,用户必须自行选配RTOS(Real Time Operating System)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。

  (6)专门的开发工具和环境

  嵌入式系统开发需要专门的开发工具和环境。由于嵌入式系统本身不具备自主开发能力,即使设计完成以后,用户通常也不能对其中的程序功能进行修改,因此必须有一套开发工具和环境才能进行开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。

[嵌入式培训]相关推荐

[嵌入式培训]相关栏目推荐
查看更多
上一篇:2017年嵌入式技术工程师证书考试学习课程 下一篇:常见的嵌入式处理器比较分析