嵌入式系统的定义

计算机发展的三大阶段

术语演化

  • 泛在计算(ubiquitous computing)

    • 预言任何时间、任何地点的计算
  • 不可见计算机(invisible computer)

    • 预言计算机将被集成到物件中
  • 普适计算(pervasive computing)

    • 计算设备对日常生活的渗透
  • 环境智能(ambient intelligence)

    • 主要强调了未来家庭或智能楼宇中的通信技术

施乐公司 Palo Alto 研究中心主任 Mark Weiser 认为:

“从长远来看,PC 机和计算机工作站将衰落,因为计算机变得无处不在:例如在墙里、在手腕上、在手写电脑中(象手写纸一样)等等,随用随取、伸手可及”。

嵌入式系统概念

  • 随着计算机技术、网络技术和微电子技术的快速发展,人们进入了后PC时代,后PC时代是一个嵌入式系统 (Embedded System)的网络时代,嵌入式技术将主宰后PC时代。
  • “嵌入式系统”实际上是“嵌入式计算机系统”的简称。
  • 对“嵌入式系统”有各种不同的定义。

嵌入式系统定义

IEEE(国际电气和电子工程师协会)的定义

嵌入式系统是“用于控制、监视或者辅助操作机器和设 备的装置”(Devices used to control, monitor, or assist the operation of equipment, machinery or plants)。

  • 可以看出此定义是从应用上考虑的,嵌入式系统是软件和硬件的综合体,还可以涵盖机电等附属装置。

国内普遍被认同的定义

  • 嵌入式系统是“以应用为中心,以计算机技术为基础,软硬件可裁减,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统”。

  • 嵌入式系统就是一个具有特定功能或用途的隐藏在某种设备中的计算机软硬件集合体,没有固定的特征形状。

others

  • 嵌入封闭产品中的信息处理系统。

  • 看不见的计算机,一般不能被用户编程, 它有一些专用的I/O设备, 对用户的接口是应用专用的。

  • 包含有计算机,但又不是通用计算机的计算机应用系统。

嵌入式系统三要素

  • 嵌入性:嵌入到对象体系中,有对象环境要求
  • 专用性:软、硬件按对象要求设计、裁减
  • 计算机:实现对象的智能化功能

CPS

  • 信息物理系统,Cyber-Physical System (CPS) ,是计算进程与 物理进程的集成

    • 更多地强调嵌入式系统与物理学的深度结合
    • CPS=ES+Physics
  • 人机物融合系统

  • 深度融合了各类信息技术:传感器、嵌入式计算、云计算、网络通信、软件,使得各种信息化能力(3C:计算-Computer、通信-Communication和控制-Control)高度协同和自治,实现生产应用系统自主、智能、动态、系统化地监视并改变物理世界的性状。

通信的重要性

Wireless sensor network

  • 无线感知网络,Wireless sensor network(WSN),是由许多在空间中分布的自动装置组成的一种无线通信计算机网络,这些装置使用传感器协作地监控不同位置的物理或环境状况(比如温度、声音、振动、压力、运动或污染物)。无线传感器网络的发展最初起源于战场监测等军事应用。而现今无线传感器网络被应用于很多民用领域,如环境与生态监测、健康监护、家居自动化以及交通控制等

IOT

  • 物联网,Internet of Things (IoT) ,通过射频识别(RFID)、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,把任何物品与互联网相连接,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络概念。
  • 万物相连的互联网,是互联网基础上的延伸和扩展的网络,将各种信息传感设备与网络结合起来而形成的一个巨大网络,实现任何时间、任何地点,人、机、物的互联互通
  • 互联、协同
  • 面向生产的物联网技术开发被称为“工业4.0”

嵌入式系统的组成

  • 嵌入式系统一般由嵌入式硬件和软件组成
  • 硬件以微处理器为核心集成存储器和系统专用的输入/输出设备
  • 软件包括:初始化代码及驱动、嵌入式操作系统和应用程序等,这些软件有机地结合在一起,形成系统特定的一体化软件。

典型的构件

通用计算机与嵌入式系统的区别

无处不在的嵌入式系统

  • 运输与移动性:汽车电子、航电设备、铁路、舰船、海洋技术与海事系统
  • 工厂自动化
  • 健康领域
  • 智能楼宇
  • 智能电网
  • 公共安全
  • 结构健康监测
  • 灾难恢复
  • 机器人
  • 农业与畜牧业
  • 军事应用
  • 航天
  • 消费电子

嵌入式系统的发展历程

嵌入式系统的特点

  • 嵌入式系统通常是形式多样、面向特定应用的

  • 嵌入式系统得到多种类型的处理器和处理器体系结构的支持

  • 嵌入式系统通常极其关注成本

  • 嵌入式系统使用的操作系统一般是适应多种处理器、可剪裁、轻量
    型、实时可靠、可固化的嵌入式操作系统

  • 嵌入式系统开发需要专门工具和特殊方法

  • 嵌入式系统有实时性和可靠性的要求

形式多样、面向特定应用

  • 一般用于特定的任务,其硬件和软件都必须高效率地设计,量体裁衣、去除冗余,而通用计算机则是一个通用的计算平台
  • 它通常都具有低功耗、体积小、集成度高等特点,能够把通用微处理器中许多由板卡完成的任务集成在芯片内部
  • 嵌入式软件是应用程序和操作系统两种软件的一体化程序。

处理器和处理器体系结构类型多

  • 通用计算机采用少数的处理器类型和体系结构,而且主要掌握在少数大公司手里。
  • 嵌入式系统可采用多种类型的处理器和处理器体系结构,有上千种的嵌入式微处理器和几十种嵌入式微处理器体系结构可以选择
  • 在嵌入式微处理器产业链上,IP设计、面向应用的特定嵌入 式微处理器的设计、芯片的制造已形成巨大的产业。分工协作,形成多赢模式。

关注成本

  • 嵌入式系统通常需要注意的成本是系统成本,特别是量大的消费类数字化产品,其成本是产品竞争的关键因素之一
  • 嵌入式的系统成本包括:

    • 一次性的开发成本NRE(Non-Recurring Engineering)成本

    • 产品成本:硬件BOM、外壳包装和软件版税等

    • 批量产品的总体成本=NRE成本+每个产品成本*产品总量

    • 每个产品的最后成本=总体成本/产品总量=NRE成本/产品总量+每 个产品成本

实时性和可靠性的要求

  • 一方面大多数实时系统都是嵌入式系统。

  • 另一方面嵌入式系统多数有实时性的要求,软件一般是固化运行或直接加载到内存中运行,具有快速启动的功能。

  • 嵌入式系统一般要求具有出错处理和自动复位功能,特别是对于一些在极端环境下运行的嵌入式系统而言,其可靠性设计尤其重要。

  • 在大多数嵌入式系统的软件中一般都包括一些机制,比如硬件的看门狗定时器,软件的内存保护和重启动机制。

适应多种处理器、可剪裁、轻量型、实时可靠、可固化的嵌入式操作系统

  • 由于嵌入式系统应用的特点,像嵌入式微处理器一样,嵌入式操作系统也是多姿多彩的。

  • 大多数商业嵌入式操作系统可同时支持不同种类的嵌入式微处理器。可根据应用的情况进行剪裁、配置。

  • 嵌入式操作系统规模小,所需的资源有限如内核规模在几十KB,能与应用软件一样固化运行。

  • 一般包括一个实时内核,其调度算法一般采用基于优先级的可抢占的调度算法。

  • 高可靠嵌入式操作系统:时、空、数据隔离。

开发需要专门工具和特殊方法

  • 由于嵌入式系统资源有限,一般不具备自主开发能力,产品发布后用户通常也不能对其中的软件进行修改,必须有一套专门的开发环境。
  • 该开发环境包括专门的开发工具(包括设计、编译、调试、测试等工具),采用交叉开发的方式进行,交叉开发环境如图所示。

嵌入式系统的分类

  • 按嵌入式处理器的位数来分类
  • 按应用来分类
  • 按速度分类
  • 按确定性来分类
  • 按嵌入式系统软件复杂程度来分类

按嵌入式处理器的位数来分类

按应用来分类

按速度分类

  • 强实时系统, 其系统响应时间在毫秒或微秒级。

  • 一般实时系统, 其系统响应时间在几秒的数量级上,其实时性的要求比强实时系统要差一些。

  • 弱实时系统, 其系统响应时间约为数十秒或更长。这种系统的响应时间可能随系统负载的轻重而变化

按确定性来分类

  • 根据确定性的强弱,可将嵌入式系统分为硬实时、软实时系统:

  • 硬实时:系统对系统响应时间有严格的要求,如果系统响应时间不能满足,就要引起系统崩溃或致命的错误。

  • 软实时:系统对系统响应时间有要求,但是如果系统响应时间不能满足,不会导致系统出现致命的错误或崩溃。

按嵌入式系统软件复杂程度来分类

  • 循环轮询系统
  • 有限状态机系统
  • 前后台系统
  • 单处理器多任务系统
  • 多处理器多任务系统

嵌入式系统的发展趋势

  • 嵌入式人工智能
  • 安全Safety
  • 不断增加的计算需求,不断增加的复杂性 如机顶盒多媒体处理、高清电视、微信号、深度学习等互连
  • 日益增长的灵活性需求 在不断变化的标准下进入市场的时间(Time-To-Market,TTM)
  • 软硬件协同设计HW-SW co-design
  • 更高的集成度:在同一芯片上集成更多的功能
  • IP重用,基于平台的设计,NoC与总线 用于ASIC或FPGA中的预先设计好的电路功能模块
  • 设计方法的多样性,平台依赖性,缺乏标准
  • 云、边缘计算

嵌入式人工智能

  • 嵌入式人工智能于各行业垂直领域应用具有巨大的潜力
  • 嵌入式人工智能取代屏幕成为新UI / UX接口
  • 嵌入式人工智能芯片
  • 嵌入式人工智能自主学习是终极目标

嵌入式系统安全

  • 数据存储不安全
  • 服务端控制措施部署不当
  • 传输过程中没有加密
  • 身份认证措施不当
  • 密钥保护措施不当
  • 会话处理不当
  • 敏感数据泄漏

互联的价值

  • 嵌入式设备的互联性可提高对各种服务、内容和信息的访问能力

  • 为动态修改嵌入式软件提供了可能,如:

    • 修改系统代码或“固件”
    • 增添新的应用软件模块
  • 增强了系统和设备的可管理性