嵌入式系统由硬件和软件组成.是能够独立进行运作的器件。其软件内容只包括 软件运行环境 及其操作系统。硬件内容包括 信号处理器 存储器 、通信模块等在内的多方面的内容。相比于一般的 计算机处理系统 而言,嵌入式系统存在较大的差异性, 它不能实现大容量的存储功能,因为没有与之相匹配的大容量介质,大部分采用的 存储介质 有E- PROM EEPROM 等, 软件部分以 API 编程接口 作为 开发平台 的核心。
嵌入式系统是以应用为中心,以现代 计算机技术 为基础,能够根据 用户需求 (功能、可靠性、成本、体积、功耗、环境等)灵活裁剪软硬件模块的 专用计算机 系统。
专用性:嵌入式系统的应用场合大多对可靠性、 实时性 有较高要求,这就决定了服务于特定应用的 专用系统 是嵌入式系统的主流模式,它并不强调系统的通用性和可扩展。这种专用性通常也导致嵌入式系统是一个软硬件紧密集成的最终系统,因为这样才能更有效地提高整个系统的可靠性并 降低成本 ,并使之具有更好的 用户体验
以现代计算机技术为核心:嵌入式系统的最基本支撑技术,大致上包括 集成电路 设计技术、系统结构技术、传感与检测技术、嵌入式操作系统和 实时操作系统 技术、资源受限系统的高可靠软件开发技术、系统形式化规范与验证技术、通信技术、 低功耗技术 、特定应用领域的 数据分析 信号处理 和控制 优化技术 等,它们围绕计算机基本原理,集成进特定的 专用设备 就形成了一个嵌入式系统。
软硬件可裁剪:嵌入式系统针对的应用场景如此之多,并带来差异性极大的 设计指标 要求(功能性能、可靠性、成本、功耗),以至于现实上很难有一套方案满足所有的 系统要求 ,因此根据需求的不同,灵活裁剪软硬件、组建符合要求的最终系统是嵌入式 技术发展 的必然 技术路线
嵌入式计算机 的真正发展是在 微处理器 问世之后。1971年11月,算术运算器和控制器电路成功的被集成在一起,推出了第一款微处理器,其后各厂家陆续推出了8位、16位微处理器。以这些微处理器为核心所构成的系统广泛地应用于仪器仪表、 医疗设备 、机器人、家用电器等领域。微处理器的广泛应用形成了一个广阔的嵌入式应用市场,计算机厂家开始大量地以插件方式向用户提供OEM产品,再由用户根据自己的需要选择一套适合的CPU板、存储器板及各式I/O插件板,从而构成专用的 嵌入式计算机系统 ,并将其嵌入自己的系统设备中。
20世纪80年代,随着微电子工艺水平的提高,集成电路制造商开始把嵌入式 计算机应用 中所需要的微处理器、 I/O接口 A/D转换器 、D/A转换器、串行接口,以及 RAM ROM 等部件全部集成到一个 VLSI 中,从而制造出面向I/O设计的微控制器,即俗称的单片机。单片机成为嵌入式计算机中异军突起的一支新秀。20世纪90年代,在分布控制、 柔性制造 、数字化通信和信息家电等巨大需求的牵引下,嵌入式系统进一步快速发展。面向实时信号处理算法的 DSP 产品向着高速、高精度、低功耗的方向发展。21世纪是一个网络盛行的时代,将嵌入式系统应用到各类网络中是其发展的重要方向。
第一阶段:嵌入技术的早期阶段。嵌入式系统以功能简单的 专用计算机 或单片机为核心的 可编程控制器 形式存在,具有监测、伺服、设备指示等功能。这种系统大部分应用于各类工业控制和飞机、导弹等武器装备中。
第二阶段:以高端嵌入式CPU和 嵌入式操作系统 为标志。这一阶段系统的主要特点是计算机硬件出现了高可靠、低功耗的嵌入式 CPU ,如 ARM PowerPC 等,且支持操作系统,支持复杂应用程序的开发和运行。
第三阶段:以 芯片技术 和Internet技术为标志。 微电子 技术发展迅速, SOC (片上系统)使嵌入式系统越来越小,功能却越来越强。大多数嵌入式系统还孤立于Internet之外,但随着Internet的发展及Internet技术与信息家电、工业 控制技术 等结合日益密切,嵌入式技术正在进入快速发展和广泛应用的时期。

嵌入式系统 嵌入式微处理器

嵌入式微处理器 (Embedded Microprocessor Unit,EMPU)是以通用计算机中的标准 CPU 为微处理器,并将其装配在专门设计的电路板上,且仅保留与嵌入式应用有关的母板功能,构成嵌入式系统。与通用计算机相比,其系统体积和功耗大幅度减小,而 工作温度 的范围、抗电磁干扰能力、 系统的可靠性 等方面均有提高。
在EMPU中,微处理器是整个系统的核心,通常由3大部分组成: 控制单元 算术逻辑单元 寄存器

嵌入式系统 嵌入式片上系统

嵌入式 片上系统 (System on Chip ,SoC)是集系统性能于一块芯片上的系统组芯片。它通常含有一个或多个微处理器 IP核 (CPU),根据需求也可增加一个或多个DSP IP核,相应的外围特殊 功能模块 ,以及一定容量的存储器(RAM、ROM)等,并针对应用所需的性能将其设计集成在芯片上,成为系统操作芯片。其主要特点是嵌入式系统能够运行于各种不同类型的微处理器上, 兼容性 好,操作系统的内核小,效果好
嵌入式系统的硬件和软件必须根据具体的应用任务,以功耗、成本、体积、可靠性、处理能力等为指标来进行选择。嵌入式系统的核心是系统软件和应用软件,由于 存储空间 有限,因而要求软件代码紧凑、可靠,且对实时性有严格要求。
(2)体积小型化。 嵌入式计算机 把通用计算机系统中许多由板卡完成的任务集成在芯片内部,从而有利于实现小型化,方便将嵌入式系统嵌入目标系统中。
(3)实时性好。嵌入式系统广泛应用于 生产过程控制 数据采集 、传输通信等场合,主要用来对宿主对象进行控制,所以对嵌入式系统有或多或少的实时性要求。例如,对武器中的嵌入式系统,某些工业 控制装置 中的控制系统等的实时性要求就极高。有些系统对实时性要求也并不是很高,例如,近年来 发展速度 比较快的 掌上电脑 等。但总体来说,实时性是对嵌入式系统的普遍要求,是设计者和用户应重点考虑的一个重要指标。
(5)可靠性高。由于有些嵌入式系统所承担的计算任务涉及被控产品的 关键质量 、人身设备安全,甚至 国家机密 等重大事务,且有些嵌入式系统的宿主对象工作在无人值守的场合,如在危险性高的工业环境和恶劣的野外环境中的监控装置。所以,与普通系统相比较,嵌入式系统对可靠性的要求极高。
(6)功耗低。有许多嵌入式系统的宿主对象是一些小型 应用系统 ,如移动电话、MP3、 数码相机 等,这些设备不可能配置 交流电源 或容量较大的电源,因此低功耗一直是嵌入式系统追求的目标。
(7)嵌入式系统本身不具备自身开发能力,必须借助通用 计算机平台 来开发。嵌入式 系统设计 完成以后,普通用户通常没有办法对其中的程序或硬件结构进行修改,必须有一套开发工具和环境才能进行。
(8)嵌入式系统通常采用“软硬件 协同设计 ”的方法实现。早期的嵌入式系统设计方法经常采用的是“硬件优先”原则,即在只粗略估计软件任务需求的情况下,首先进行硬件设计与实现,然后在此硬件平台之上进行 软件设计 。如果采用传统的设计方法,则一旦在测试中发现问题,需要对设计进行修改时,整个 设计流程 将重新进行,对成本和 设计周期 的影响很大。系统的设计在很大程度上依赖于设计者的经验。20世纪90年代以来,随着电子和芯片等 相关技术 的发展,嵌入式系统的设计和实现出现了 软硬件协同设计 方法,即使用统一的方法和工具对软件和硬件进行描述、综合和验证。在 系统目标 要求的指导下,通过综合分析系统软硬件功能及现有资源,协同设计软硬件 体系结构 ,以最大限度地挖掘系统软硬件能力,避免由于独立设计软硬件体系结构而带来的种种弊病,得到高性能、低代价的优化 设计方案
从外部特征上看,一个嵌入式系统,通常是一个功能完备、几乎不依赖其他外部装置即可独立运行的软硬件集成的系统。如果对这样一个系统进行剖分的话,可以发现它大致可能包括这样几个层次,如图1所示。
嵌入式系统最核心的层次是 中央处理单元 部分,它包含 运算器 和控制器模块,在cpu的基础上进一步配上 存储器 模块、 电源模块 、复位模块等就构成了通常所说的 最小系统 。由于技术的进步,集成电路生产商通常会把许多外设做进同一个 集成电路 中,这样在使用上更加方便,这样一个芯片通常称之为 微控制器 。在微控制器的基础上进一步扩展电源传感与检测、 执行器 模块以及配套软件并构成一个具有特定功能的完整单元,就称之为一个嵌入式系统或嵌入式应用。

嵌入式系统 硬件结构

尽管各种具体的嵌入式 系统的功能 、外观界面、操作等各不相同,甚至千差万别,但是基本的硬件结构却是大同小异的,而且和 通用计算机 的硬件系统有着高度的 相似性 。嵌入式系统的硬件部分看起来与 通用计算机系统 的没有什么区别,也由 处理器 、存储器、 外部设备 I/O接口 、图形控制器等部分组成。但是 嵌入式系统应用 上的特点致使嵌入式系统在软硬件的组成和实现形式上与通用计算机系统有较大区别。为满足嵌入式系统在速度、体积和功耗上的要求,操作系统、应用软件、特殊数据等需要长期保存的数据,通常不使用磁盘这类具有大容量且速度较慢的 存储介质 ,而大多使用 EPROM E2PROM 闪存 (Flash Memory)。在嵌入式系统中, A/D 或D/A模块主要用于测控方面,这在通用计算机中用得很少。根据实际应用和规模的不同,有些嵌入式系统要采用 外部总线 。随着嵌入式系统 应用领域 的迅速扩张,嵌入式系统越来越趋于个性化,根据自身特点采用总线的种类也越来越多。另外,为了对嵌入式处理器内部电路进行测试,处理器芯片普遍采用了 边界扫描测试技术 ( JTAG )。

嵌入式系统 软件体系

嵌入式系统的软件体系是面向嵌入式系统特定的硬件体系和用户要求而设计的,是嵌入式系统的重要组成部分,是实现嵌入式系统功能的关键。嵌入式系统软件的特征包括:(1)软件要求固态化存储;(2) 软件代码 质量高、可靠性好;(3)操作系统软件 实时性 强。
嵌入式系统软件体系和通用计算机软件体系类似,分成驱动层、操作系统层、 中间件 层和应用层等四层,各有其特点。
驱动层
驱动层是直接与硬件打交道的一层,它为操作系统和应用提供硬件驱动或底层核心支持。在嵌入式系统中, 驱动程序 有时也称为 板级支持包 (BSP)。BSP具有在嵌入式系统上电后初始化系统的基本 硬件环境 的功能,基本硬件包括 微处理器 、存储器、 中断控制器 、DMA、 定时器 等。驱动层--般可以有三种类型的程序,即板级初始化程序、标准驱动程序和应用驱动程序。
操作系统层
嵌入式系统中的操作系统具有一般操作系统的核心功能,负责嵌入式系统的全部软硬件资源的分配、 调度工作 控制、协调并发活动。它仍具有嵌入式的特点,属于 嵌入式操作系统 (Embedded Operating System,E OS )。主流的嵌入式操作系统有 Windows CE 、Palm:OS、 Linux 、VxWorks. pSOS . QNX . LynxOS 等。有了嵌入式操作系统,编写 应用程序 就更加快速、高效、稳定。
嵌入式应用软件 是针对特定应用领域,用来实现用户预期目标的软件。嵌入式应用软件和普通应用软件有一定的区别,它不仅要求在 准确性 、安全性和稳定性等方面能够满足实际应用的需要,而且还要尽可能地进行优化,以减少对 系统资源 的消耗,降低硬件成本。嵌入式系统中的应用软件是最活跃的力量,每种应用软件均有特定的应用背景。尽管规模较小,但专业性较强,所以嵌入式应用软件不像操作系统和 支撑软件 那样受制于国外产品,是我国 嵌入式软件 的优势领域。
嵌入式系统是通过把CPU嵌入目标系统或 被控系统 中起作用的。但是在不同的嵌入式系统中,嵌入的形式和程度是各不相同的。根据嵌入式系统和通用计算机连接关系的密切程度,嵌入形式可以分为全嵌入方式、半嵌入方式。

嵌入式系统 全嵌入方式

如果采用全嵌入方式,则嵌入式系统(或其核心功能)可以不依赖于通用计算机系统,即可单独工作,典型实例有手机、MP4、 车载GPS导航系统 等。采用全嵌入方式的嵌入式系统有如下特点。
(4) 供电方式 一般采用电池供电,有些情况下也可以直接采用 市电 220V供电,由系统自行设计转换和 稳压电路 。较高端的设备往往会把两种供电方式结合起来,让用户使用起来更加灵活。
(5)全嵌入方式适合任何不宜采用通用计算机的场合,如 消费电子 、家用电器、通信网络设备、工业控制、智能仪器、战场 电子对抗 、航天 航空武器 等,其 应用范围 十分广泛。

嵌入式系统 半嵌入方式

如果采用半嵌入方式,则嵌入式系统(或其核心功能)需要和通用计算机系统结合起来才能正常工作,典型实例有医用 B超 系统、基于PCI卡的 数据采集系统 等。采用半嵌入方式的嵌入式系统有如下特点。
(5)嵌入式系统是作为外设连接在通用计算机上的,因此在通用计算机中一般需要提供嵌入式系统的标准驱动程序。

嵌入式系统 嵌入式操作系统

嵌入式操作系统 EOS (Embedded Operating System)是一种用途广泛的系统软件,过去它主要应用于 工业控制 国防系统 领域。EOS负责嵌入式系统的全部软、硬件资源的分配、调度,控制、协调并发活动;它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。已推出一些应用比较成功的EOS 产品系列 。随着Internet技术的发展、 信息家电 的普及应用及EOS的微型化和专业化,EOS开始从单一的弱功能向高专业化的强功能方向发展。嵌入式操作系统在系统实时高效性、硬件的相关 依赖性 软件固化 以及应用的专用性等方面具有较为突出的特点。

嵌入式系统 应用

嵌入式系统的应用十分广泛,涉及 工业生产 、日常生活、工业控制、 航空航天 等多个领域,而且随着电子技术和计算机软件技术的发展,不仅在这些领域中的应用越来越深入,而且在其他传统的非信息类设备中也逐渐显现出其用武之地。

嵌入式系统 工业控制

基于嵌入式芯片的 工业自动化设备 将获得长足的发展,已经有大量的8位、16位、32位 嵌入式微控制器 在应用中。网络化是提高 生产效率 产品质量 、减少人力资源的主要途径,如工业过程控制、数字机床、 电力系统 、电网安全、电网设备监测、 石油化工 系统。就传统的工业控制产品而言,低端产品往往采用的是8位单片机。随着计算机技术的发展,32位、64位的处理器已逐渐成为工业 控制设备 的核心。

嵌入式系统 交通管理

在车辆导航、 流量控制 、信息监测与 汽车服务 方面, 嵌入式技术 已经获得了广泛的应用,内嵌 GPS模块 、GSM模块的移动 定位终端 已经在各种运输行业获得了成功。 GPS设备 已经从尖端的科技产品进入了普通百姓的家庭。

嵌入式系统 信息家电

家电将成为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将让人们的生活步人一个崭新的空间。即使不在家,也可以通过电话、网络对家电进行 远程控制 。在这些设备中,嵌入式系统将大有用武之地。

嵌入式系统 家庭智能系统

水表、电表、 煤气表 的远程 自动抄表 系统,安全防火、 防盗系统 ,嵌有专用控制芯片,这种专用控制芯片将代替传统的 人工操作 ,完成检查功能,并实现更高、更准确和更安全的性能。在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。

嵌入式系统 网络及电子商务

公共交通 无接触智能卡(Contactless Smart Card,CSC)发行系统、公共 电话卡 发行系统、 自动售货机 等智能 ATM 终端已全面走进人们的生活,在不远的将来手持一张卡就可以行遍天下。

嵌入式系统 环境工程与自然

在很多环境恶劣、地况复杂的地区需要进行 水文资料 实时监测、防洪体系及水土质量监测堤坝安全与 地震监测 、实时 气象信息 和空气污染监测等时,嵌入式系统将实现无人监测。
Linux 操作系统为例,论述嵌入式系统的开发流程。
安装操作系统与 交叉编译器 ,操作系统一般使用RedhatLinux,选择定制安装或全部安装,通过网络下载相应的 GCC 交叉编译器进行安装(比如,armn-1inux- gcc 、arm- uclibc -gcc),或者安装产品厂家提供的相关交叉编译器。
配置MNICOM参数,MNICOM软件的作用是作为调试 嵌入式开发板 的信息输出的 监视器 键盘输入 的工具。一般情况下的参数为 波特率 115200 Baud/s, 数据位 8位,停止位为1,无 奇偶校验 ,软件硬件流控设为无。在Windows下的 超级终端 的配置也是这样。配置网络主要是配置NFS 网络文件系统 ,需要关闭防火墙以简化嵌入式网络调试环境设置过程。
从网络上下载一些公开 源代码 的BOOTL0ADER,如U-BOOT、BLOB、VIVI、 LILO 、ARM-Boot、RED-Boot等,根据具体芯片进行移植修改。有些芯片没有内置引导装载程序,这样就需要编写 开发板 上FLASH的烧写程序,也可以在网上下载相应的烧写程序。如果不能烧写自己的开发板,就需要根据自己的具体电路进行源代码修改。这是让系统可以正常运行的第一步。
如MCLiunx、ARM_Linux、 PPC -Linux等,如果有专门针对所使用的CPU移植好的Linux操作系统那是再好不过,下载后再添加特定硬件的驱动程序,然后进行调试修改,对于带 MMU 的CPU可以使用模块方式调试驱动,而对于MCLiunx这样的系统只能编译内核进行调试。
下载使用BUSYBOX软件进行功能裁减,产生一个最基本的根 文件系统 ,再根据自己的应用需要添加其他的程序。由于默认的启动脚本一般都不会符合应用的需要,所以就要修改根文件系统中的启动脚本,它的存放位置位于/etc目录下,包括:/etc/init.drc.S、/etc/profile、/etc/.profile及自动挂装文件系统的 配置文件 /etc/fstab等,具体情况会随系统不同而不同。根文件系统在嵌入式系统中-般设为只读,需要使用mkcramfs genromfs等工具产生烧写 映像文件
一般使用JFFS2或YAFFS文件系统,这需要在内核中提供这些文件系统的驱动。有的系统使用一个线性FLASHNOR型(512KB~32MB),有的系统使用 非线性 FLASHNAND型(8MB~512MB),有的系统两种同时使用,需要根据应用规划FLASH的分区方案。

嵌入式系统 系统描述

对嵌入式系统的描述主要是从两方面出发的,一是性能方面,另一种是功能方面。在系统描述过程中,不仅可以采用一种语言,也可以采用多种语言。同时,这一描述过程也是对软件模型和系统硬件模型的建立过程。在进行嵌入式系统描述时,为了减少软硬件协同设计初期中问题的出现,需要做好系统内行为的 测试工作 。一方面,可以在第一时间发现设计中不合理的地方;另一方为 系统安全 、可靠运行提供了保证。系统描述需要以 系统模型 为支撑,为了进行正确的描述,应该确保该模型包括四个元素。一是功能特点,也就是指嵌入式系统的各项功能,同时应该重点明确功能和系统的输入和输出关系。第二是性能描述,在系统模型中,融入这一因素,能够比较全面的反映系统的 整体结构 ,并且需要说明系统输入与输出的联系。第三是 约束条件 ,该要素不仅对嵌入式 系统性能 缺陷进行了说明,而且还合理的对系统工作环境中的要求进行了规定。第四是 技术指标 ,其能够对系统存在的问题、质量好坏进行说明,为设计工作开展奠定良好基础。

嵌入式系统 软硬件综合技术

在嵌入式系统的 软硬件协同设计 中,软硬 综合技术 是重要的技术之一,在软 硬件系统 的大体设计方面发挥着重要作用。在对其设计结果进行系统检测评价的基础上,可以根据设计要求,有针对性的开展细致的 系统制作 工作,并且进行软硬件的设计,确保其协调一致,进而可提升设计的科学性,对整个系统 运行效率 提高具有重要意义。

嵌入式系统 软硬件功能划分

在进行软硬件功能划分工作中,主要是科学合理的划分软硬件和嵌入式 系统功能 ,并对二者的关系进行明确。其中, 成本函数 是软硬件功能划分的主要依据之一。在运用成本函数方面时,需要考虑多方面因素。例如,模块之间的 并发性 软件执行 时间等。

嵌入式系统 协同验证

在协调仿真和 系统测试 验证方面,需要借助 硬件描述语言 进行嵌入式系统硬件系统的描述工作。为了有效完成设计工作,满足设计要求,需要对软件搭配硬件的方法进行合理的应用,以便为接下来的设计工作创造良好的环境,不仅能够在整体上提高 设计效率 与质量,而且还能减少 设计成本 ,确保良好的 经济效益
如今嵌入式系统发展更加的趋于提供更加生动的人机交互界面;对于更多小型电子产品具备更好的移植性,从而实现其自动化, 低功耗 ,智能化。
嵌入式系统在 WEB服务器 中的实例
工业设计 中,软硬件的精简性对于服务器有较高的要求,而传统 网络服务器 并不具有 简洁性 ,且支持网络异构中实现对于计算机的远程操控。而采用将 网络设备 嵌入到嵌入式设备中,将大大减少用户的访问时间,以及能够精准的控制外部I/O。而嵌入式WEB服务器不采用传统的 TCP/IP协议 连入互联网,而是选择了由TCP/IP简化的UIP 协议栈 实现嵌入式WEB服务器。这样的嵌入式WEB服务器不仅具有简洁性,而且使 MCU 具有更多的空间去控制外部I/O。
基于嵌入式系统的 传感技术
物联网 领域从2009年温家宝总理提出建立中国 传感 信息中心开始便逐渐成为众多学者企业关注的重点,而传感技术作为物联网领域的重要一环自然是必不可少。作为承担着信息收集角色的传感器,必然要与嵌入式系统进行有机的结合。智能传感技术具有优秀的 信息传递 能力, 智能传感器 具备物与物之间的 信息交换 、物与计算机之间的信息传递能力,将广泛应用与计算机、通信等方面的 信息交流 数据传递 。嵌入式智能传感器在物联网领域具有重要作用。