Skip to content

考点清单

  • [x] 嵌入式系统组成与特征
  • [x] 冯诺依曼结构与哈佛结构
  • [x] 微处理器分类(MCU/MPU/DSP/SOC)
  • [x] 多核处理器(SMP/AMP、全局队列/局部队列调度)
  • [x] 嵌入式软件分类与 BSP(BootLoader + 设备驱动程序)
  • [x] 嵌入式操作系统(EOS)特点
  • [x] 实时操作系统(RTOS)— 硬实时/软实时
  • [x] 嵌入式数据库系统(EDBMS)
  • [x] 交叉开发环境(交叉编译/交叉调试)

笔记

历年考情:本章节偶尔考到,一般占 3~5 分。第二版教材描述简略,实际考试约 50% 超纲。


一、嵌入式系统组成与特征

组成:嵌入式处理器 + 相关支撑硬件 + 嵌入式操作系统 + 支撑软件 + 应用软件

八大特征:

特征说明
专用性强面向特定应用,把板卡任务集成到芯片内部,利于小型化
技术融合计算机、通信、半导体、电子技术与行业应用结合
软硬一体软件为主软件是主体,硬件软件均量体裁衣去除冗余
比通用计算机资源少只完成少数任务,管理资源少、成本低、结构简单
程序代码固化在非易失存储器软件固化在 ROM/Flash 中,非磁盘存储
需专门开发工具和环境本身不具备开发能力,需交叉开发环境
体积小、价格低、实时性强系统配置要求低
安全性和可靠性要求高常运行在恶劣环境下

系统分层(5 层):硬件层 → 抽象层 → 操作系统层 → 中间件层 → 应用层

系统分类:

  • 按用途:嵌入式实时系统 / 嵌入式非实时系统
  • 按安全性:安全攸关系统 / 非安全攸关系统

二、嵌入式微处理器

冯诺依曼结构 vs 哈佛结构

对比维度冯诺依曼结构哈佛结构
存储方式程序和数据共用一个存储空间程序和数据存储在不同的存储空间
总线单一的地址及数据总线两套独立的地址总线和数据总线
并行性指令和数据串行访问一个机器周期内同时获取指令字和操作数
效率高速运算时传输出瓶颈数据吞吐率提高 1 倍,执行速度更快
典型应用传统通用计算机DSP、嵌入式处理器

微处理器分类

按字长宽度:

  • 16 位及以下 → 嵌入式微控制器(MCU)
  • 32 位及以上 → 嵌入式微处理器(MPU)

按系统集成度:

  • 一般用途型微处理器(仅 CPU)
  • 单芯片微控制器(CPU+ROM+RAM+I/O 集成)

按用途分类:

类型特点典型应用
MCU(微控制器)典型代表:单片机。片上外设资源丰富,体积小、功耗低成本低、可靠性高。嵌入式系统工业主流控制类应用
MPU(微处理器)由通用 CPU 演变,32 位以上,保留嵌入式相关功能硬件,去除冗余。体积小、重量轻、成本低、可靠性高ARM、MIPS、PowerPC
DSP(数字信号处理器)专门用于信号处理,哈佛结构 + 流水线处理,处理速度比最快 CPU 还快 10-50 倍数字滤波、FFT、谱分析
SOC(片上系统)追求最大包容的集成器件,实现软硬件无缝结合,片内嵌入操作系统代码模块专用集成电路

三、多核处理器

多核指多个微处理器内核,将两个或更多的独立处理器封装在一起,集成在一个电路中。多核与多 CPU 相比,很好的降低了计算机系统的功耗和体积

两种协调方式:

方式特点
SMP(对称多处理)2 颗完全一样的处理器封装在一个芯片内,达到双倍性能,节省运算资源
AMP(非对称处理)2 个处理内核彼此不同,各自处理特定功能,软件协调分担不同计算任务

⚠️ 多核处理器结构选择必须考虑硬件组成差异

多核 CPU 调度:

调度方式机制优点
全局队列调度操作系统维护一个全局任务等待队列,CPU 空闲时从中选取任务执行CPU 核心利用率高
局部队列调度每个 CPU 内核维护独立的局部任务等待队列无需在多个 CPU 之间切换

四、嵌入式软件与 BSP

软件分类:

类别说明
系统软件控制和管理嵌入式系统资源,如设备驱动程序、嵌入式操作系统、嵌入式中间件
应用软件上层软件,定义设备主要功能和用途,负责与用户交互
支撑软件辅助软件开发的工具,如系统分析设计工具、在线仿真工具、交叉编译器

嵌入式软件特点:规模较小、开发难度大、实时性和可靠性要求高、要求固化存储。

板级支持包(BSP)

BSP 是介于主板硬件和操作系统中驱动层程序之间的一层,属于操作系统一部分。为上层的驱动程序提供访问硬件设备寄存器的函数包。

功能:

  1. 单板硬件初始化(主要是 CPU 初始化)
  2. 为操作系统提供设备驱动程序和系统中断服务程序
  3. 定制操作系统的功能,提供实时多任务的运行环境
  4. 初始化操作系统,为正常运行做好准备

两大特点:① 硬件相关性 ② 操作系统相关性

BSP 两大组成部分:

组成说明
BootLoader(引导加载程序)加电后运行的第一段软件代码
设备驱动程序对硬件进行初始化和管理

BootLoader 三阶段

阶段内容性质
片级初始化微处理器初始化:设置核心寄存器、控制寄存器、工作模式及局部总线模式纯硬件初始化
板级初始化微处理器以外的硬件初始化:LED、定时器、中断控制器、串口、内存控制器、建立内存空间地址映射软硬件结合的初始化
加载内核(系统级初始化)将操作系统和应用程序映像从 Flash 复制到内存,跳转到系统内核第一条指令

设备驱动程序

设备驱动程序是一组库函数,用来对硬件进行初始化和管理,向上层软件提供良好访问接口。无论是否有操作系统,驱动程序都必不可少

基本功能:硬件启动、硬件关闭、硬件停用、硬件启用、读操作、写操作。


五、嵌入式操作系统(EOS)

特点说明
微型化运行平台资源少(内存小、无外存),必须小巧、占用尽量少资源
代码质量高存储空间宝贵,代码要尽量精简
专业化硬件平台多样、处理器更新快,要有好的适应性和移植性,支持多种开发平台
实时性强广泛应用于过程控制、数据采集、通信等要求实时响应的场合
可裁减和可配置能根据应用特点和具体要求灵活配置和合理裁减

⚠️ 嵌入式操作系统支持多任务,RTOS 可以针对硬件变化进行结构与功能上的配置及裁剪


六、实时操作系统(RTOS)

嵌入式实时系统要求系统在投入运行前即具有确定性和可预测性。提供及时响应和高可靠性是 RTOS 的主要特点。RTOS 的首要任务是调度一切可利用的资源来完成实时控制任务

类型要求
硬实时必须在规定时间内完成操作,操作系统设计时保证
软实时按照任务优先级,尽可能快地完成操作即可

RTOS 三大特征:

特征说明
高精度计时系统精确确定实时操作或执行任务的时间点,依赖于硬件时钟精度和操作系统高精度计时功能
多级中断机制处理多种外部信息或事件,建立多级中断嵌套处理机制,确保紧迫程度高的实时事件及时响应
实时调度机制在调度策略和算法上保证优先调度实时任务,建立更多"安全切换"时间点保证及时调度

七、嵌入式数据库系统(EDBMS)

使用环境特点:

  • 设备随时移动性
  • 网络频繁断接
  • 网络条件多样化
  • 通信能力不对称(下行 >> 上行)

系统组成:主数据库、同步服务器、嵌入式数据库、连接网络

关键问题:数据的一致性(复制性)、高效的事务处理、数据的安全性。


八、交叉开发环境

嵌入式系统的开发需要借助宿主机(通用计算机)来编译出目标机的可执行代码。宿主机与目标机之间需要建立物理连接(以太网、USB、串口等)。

交叉编译: 在宿主机上采用交叉编译器生成目标机的可执行代码。不同体系结构有不同的指令系统,需要相应编译器。

交叉调试: 调试器运行在宿主机上,被调试进程运行在目标机上,通过串口/网络进行通信。

开发工具链:

  • 编辑器:VS、eclipse、keil、vim 等
  • 编译器 gcc:GNU/C/C++,支持多种宿主机/目标机组合
  • 调试器 gdb:GNU 开源强大程序调试工具

⚠️ 在宿主机上必须采用交叉编译器来生成目标机的可执行代码。调试器与被调试程序可以安装在不同机器上。