嵌入式系统的简介

嵌入式系统的定义

嵌入式系统是以应用为中心以计算机技术为基础,采用可剪裁软硬件,适用于对功能、可靠性、成本、体积、功耗等有严格要求的专用计算机系统
【理解】
以应用为中心:嵌入式系统通常是为了完成特定的任务或应用而设计的。例如,嵌入式系统在家电、汽车、医疗设备中都有应用,它们的功能是针对某一特定需求来定制的,而不是作为通用计算机来使用
以计算机技术为基础:虽然嵌入式系统功能比较专一,但它仍然基于计算机技术,包含处理器、内存、存储等基本计算机硬件,同时通常运行操作系统或裸机程序来执行任务
采用可剪裁软硬件:嵌入式系统的软硬件可以根据需求进行定制和裁剪。这意味着硬件和软件的设计可以根据系统功能的需求进行优化,不需要冗余的资源。例如,硬件可以去除一些不必要的功能,软件可以精简代码以提高效率

嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素
嵌入式系统的嵌入式本质就是将一个计算机嵌入到一个对象体系中去

嵌入式系统的特点

嵌入式系统的特点是由其三个基本要素( “嵌入性”、“专用性”与“计算机系统” )衍生出来的
不同的嵌入式系统其特点会有所差异

嵌入式系统特别强调“量身定做”的原则,开发人员往往需要针对某一种特殊用途开发出一个截然不同的嵌入式系统来,所以很难不经过“大量”修改而直接将一个嵌入式系统全套用到其他的嵌入式产品上去

嵌入式系统与桌面通用系统的区别

  • 嵌入式系统中运行的任务是专用而确定的,桌面通用系统需要支持大量的、需求多样的应用程序

  • 嵌入式系统往往对实时性提出较高的要求

    • 强实时型:响应时间 μs~ms 级
    • 一般实时:响应时间 ms~s 级
    • 弱实时型:响应时间 s 级以上
  • 嵌入式系统中使用的操作系统一般是实时操作系统

    VxWorks、Windows CE、pSOS、QNX、uc/OS、nHOPEN、nDeltaOS、HarmonyOS

  • 嵌入式系统运行需要高可靠性保障,比桌面系统的故障容忍能力弱很多,嵌入式系统需要忍受长时间、无人值守条件下的运行,嵌入式系统运行的环境恶劣

  • 嵌入式系统大都有功耗约束

  • 嵌入式系统比桌面通用系统可用资源少得多

    为降低系统成本,降低功耗,嵌入式系统的资源配置遵循够用就行,因此早年的嵌入式系统的主题是“裁剪

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

    • 开发:交叉编译、交叉链接
    • 调试:仿真器、虚拟机
    • 更新:在线升级等

嵌入式系统的发展概述

嵌入式系统出现于20世纪60年代

嵌入式系统发展的三个阶段

  • 嵌入式系统的出现和兴起(1960 ~ 1970)
  • 嵌入式系统走向繁荣,软件、硬件日臻完善(1971 ~ 1989)
  • 嵌入式系统应用走向纵深化发展(1990 ~ 至今)

嵌入式系统的体系结构

嵌入式系统是将嵌入了软件的计算机硬件作为其最重要部分的系统,它是一种专门用于某个应用或生产的特殊产品的计算机系统

早期嵌入式系统自上而下包含 3 个组成:

在这里插入图片描述

经过不断地发展,嵌入式系统原有的 3 层结构逐步演化成为 4 层结构
这个新增加的中间层称为硬件抽象层(Hardware Abstraction Layer,HAL),有时也称为板级支持包(Board Support Package,BSP
这个新增加的中间层次位于操作系统和硬件之间,包含了操作系统中与硬件相关的大部分功能

在这里插入图片描述

嵌入式系统硬件平台

嵌入式系统的硬件是以嵌入式处理器为核心部件,由存储器、I/O单元电路、通信模块、外围设备等必要的辅助接口组成

在这里插入图片描述

嵌入式系统处理核心(嵌入式处理器)

在这里插入图片描述

  • 嵌入式微控制器(Microcontroller Unit,MCU)

    嵌入式微控制器又称单片机,是将整个计算机系统浓缩集成到一块芯片中
    一般以某一种微处理器内核为核心,芯片内部集成 ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A、Flash、RAM、EEPROM 等各种必要功能和外设

  • 嵌入式DSP处理器(Embedded Digital Signal Processor,EDSP)

    嵌入式 DSP 处理器有两个发展来源
    一是 DSP 处理器经过单片化、EMC 改造、增加片上外设成为嵌入式 DSP 处理器
    二是在通用单片机或 SOC 中增加 DSP 协处理器

  • 嵌入式微处理器(Embedded Microprocessor Unit,EMPU)

    以通用处理器(CPU)为基础,将微处理器装配在专门设计的电路板上,只保留和嵌入式应用有关的功能
    外接电路必须包括 ROM、RAM、总线接口、各种外设等器件

  • 嵌入式片上系统(System On Chip)

    简称SoC,也即片上系统。它是一个产品,是一个有专用目标的微小型系统,其中包含完整系统并有嵌入软件的全部内容

嵌入式处理器在功能上与通用处理器的区别在于嵌入式处理器上集成了大量的 I/O 电路
用户在开发时,根据系统需求选择嵌入式处理器,而不是选择嵌入式处理器另外配合 I/O 电路

存储器

存储器是构成嵌入式系统硬件的重要组成部分,是嵌入式系统存放数据和程序的功能部件

存储设备主要用于各类数据的存储,常用的有静态易失型存储器(RAM、SRAM)、动态存储器(DRAM)和非易失型存储器(ROM、EPROM、EEPROM、FLASH)三种

其中 FLASH 凭借其可擦写次数多、存储速度快、存储容量大、价格便宜等优点,在嵌入式领域内得到了广泛应用

外围设备

外围设备决定了应用于不同领域的嵌入式系统的独特功能

在实际应用中,嵌入式系统硬件配置非常精简,除了微处理器和基本的外围电路以外,其余的电路可以根据需要和成本进行裁剪、定制

  • 片外总线:连接系统各个部件,进行互连和传输信息
    • ESIA 总线、SCSI 总线、PCI 总线
    • AMBA 总线:ARM 研发的总线规范
    • 专用总线
      • CompactPCI 总线:工业控制
      • CAN 总线:汽车电子总线
      • 1553B 总线:航空工业总线
  • 电子盘:采用 flash 芯片存储数据,体积小、功耗低、抗震
    • DOC:Disk on Chip
    • DOM:IDE电子盘
    • CF:CompactFlash
    • SM:Smart Media
    • MS:Memory Stick
    • SSD:RAID方式的FLASH
I/O设备

A/D、D/A;中断控制器;UART;LCD

通讯设备
  • 有线通讯:IEEE1394、USB
  • 无线通讯:IrDA、Bluetooth、802.11b/g

硬件抽象层(HAL)

在这里插入图片描述

硬件抽象层通过硬件抽象层接口向操作系统以及应用程序提供对硬件进行抽象后的服务

当操作系统或应用程序调用硬件抽象层 API 进行设计时,只要硬件抽象层 API 能够在下层硬件平台上实现,那么操作系统和应用程序的代码就可以移植


  • HAL屏蔽了底层硬件的多样性,操作系统不再面对具体的硬件环境,而是面对由这个中间层次所代表的、逻辑上的硬件环境
  • HAL的引入大大推动了嵌入式实时系统的通用化,从而为嵌入式系统的广泛应用提供了可能

嵌入式操作系统

  • 嵌入式操作系统具有通用操作系统的一般功能
    • 向上提供对用户的接口(图形界面、库函数API等)
    • 向下提供与硬件设备交互的接口(硬件驱动程序等)
  • 嵌入式操作系统的系统实时性、硬件依赖性、软件固化性及应用专用性等方面,具有更加鲜明的特点

典型性能指标

  • 内核大小:几K~几百K;
  • 调度时间片:1ms;
  • 实时任务响应时间:20~40微妙
  • 一般任务响应时间:20微妙~几百毫秒

嵌入式操作系统基本可以分为两类

  • 面向控制、通信等领域的实时操作系统,如WindRriver公司的VxWorks
  • 面向消费电子产品的非实时操作系统,如 Microsoft的WinCE,以及 NOKIA的Symbian 和 Google的Android 等

几种具有代表性的嵌入式操作系统

在这里插入图片描述

嵌入式应用软件

  • 嵌入式应用软件是针对特定应用领域,基于某一固定的硬件平台,用来达到完成预期目标的计算机软件
  • 由于嵌入式系统自身的特点,决定了嵌入式系统的应用软件不仅要求达到准确、安全和稳定的标准,而且还要进行代码精简,以减少对系统资源的消耗,降低硬件成本

嵌入式系统的开发过程

系统需求分析、体系结构设计、硬件/软件协同设计、系统集成、完成测试并形成产品

在这里插入图片描述

在这里插入图片描述

嵌入式系统的交叉编译开发模式是指:开发者在高性能主机(如PC)上编写代码,并利用针对目标嵌入式平台(如ARM、RISC-V等)的编译器工具链生成可在嵌入式设备上运行的程序,而不是直接在资源受限的嵌入式设备上进行编译。这种模式的核心是“跨平台编译

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐