嵌入式系统复习资料整理

  • 格式:docx
  • 大小:297.06 KB
  • 文档页数:17

1.嵌入式系统的定义 嵌入式计算机系统简称为嵌入式系统,将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。

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

嵌入式操作系统的特点:可固化 、可配置、可剪裁 、独立的板级支持包,可修改 、不同的CPU有不同的版本 、应用的开发需要有集成的交叉开发工具

嵌入式操作系统的组成:嵌入式操作系统、操作系统内核、文件系统、网络协议栈、GUI 、USB协议栈等

2. 通用计算机系统与嵌入式系统的比较

形式和类型 看得见的计算机。 按其体系结构、运算速度和结构规模等因素分为大、中、小型机和微机。

组成 通用处理器、标准总线和外设。 软件和硬件相对独立。

开发方式 开发平台和运行平台是通用计算机

二次开发 应用程序可重新编程

形式和类型 看不见的计算机 形式多样 应用领域广泛,按应用来分类

组成 面向应用的嵌入式微处理器,总线和外部接口多集成在处理器内部,软件与硬件是紧密集成在一起的。

开发方式 采用交叉开发方式,开发平台一般是通用计算机,运行 平台是嵌入式系统。

二次开发 一般不能在编程

微处理器构成的嵌入式系统(以家电为例)

 4位、8位、16位、32位处理器

○ 简单的冰箱、洗衣机、微波炉、电视机(CRT电视)

 80-90年代的发达国家的高端家电=2010年的家电下乡产品

 4位处理器固化的专用嵌入式芯片

○ 除了媒体播放器和LCD电视机以外的量产的智能家电

 8位处理器、需要写程序进去的产品

3 .单片机 又称微控制器(Microcontroller)(MCU)将嵌入式应用所需要的微处理器、I/O接口、A/D、D/A转换、串行接口以及RAM、ROM通通集成到一个VLSI中, 制造出面向I/O设计的微控制器,就是我们俗称的单片机

DSP 数字信号处理器 与CPU(MCU)相比: 有更多的硬件运算单元 乘除法、矩阵 数字运算速度快 存储和外设管理相对简单

适合数字滤波器和媒体编解码算法的运算 音频、视频处理 智能仪表 调制解调器

ARM

 32位RISC嵌入式处理器

 ARM公司负责研发处理器内核的IP

 众多的公司购买IP的知识产权后制造出形式多样的MCU,如: ○ 不同档次手机的处理器

○ 上网本、PSP、平板电脑

○ 嵌入式工业终端和银行ATM机

4. 嵌入式系统的特点

(1) 形式多样、面向特定应用 硬件和软件都必须高效率地设计,避免冗余 低功耗的需求 低成本 高可靠 软件的一体化(OS&APP

(2) 多种类型的处理器和处理器体系结构 MCU&DSPMCU:ARMMIPSPowerPC

(3) 实时性和可靠性要求较高

(4) 操作系统可剪裁、轻量型、实时可靠、可固化

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

5. 嵌入式系统的发展趋势

更高的集成度 更低功耗 普遍的网络支持 更加标准化

6. ARM经典处理器 :ARM11、ARM9™ 和 ARM7™ 处理器系列

Cortex-A 系列 :共享同一体系结构,因此具有完整的应用兼容性, 支持传统的

ARM、Thumb® 指令集和新增的高性能紧凑型 Thumb-2 指令集

Cortex-R 系列 :快速 - 以高时钟频率获得高处理性能。确定性 - 处理在所有场合都必须符合硬实时限制。安全 - 系统必须可靠且可信。某些系统将是安全关键系统。成本效益 - 在处理器及其内存系统中都具有竞争力的成本和功耗。

ARM7 指令流水线技术

ARM编程模型的存储器格式

大 小

7.常用串行接口

(1)SPI:Serial Peripheral Interface--串行外设接口 ,主要应用在EEPROM,FLASH,实时时钟,AD转换器.(片间通信),是以主从方式工作的,这种模式通常有一个主器件和一个或多个从器件

(2)UART UART即通用异步收发器, 可设置成全双工异步通讯方式; 或设置成半双工同步模式

(3)I2C Inter-Integrated Circuit 时序信号说明 开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。 结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。 应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。

8.嵌入式系统软件的构成方式

(1)专用应用的软件结构 (硬件描述和驱动层,应用软件) 特点:资源占用小 特定应用的针对性强 系统稳定性高

(2)简单操作系统平台结构 特点:可根据应用需求定制的底层,降低开发难度,合理的利用已有第三方资源 资源占用略大

(3)通用操作系统平台 适合更改多应用程序运行的多应用平台 具有更加通用的GUI、网络互联、存储支持 如:Linux、WinCE、iOS、Symbian、Android

10 嵌入式系统软件分类

系统软件:控制、管理计算机系统的资源 应用运行平台 数据库管理系统

如嵌入式操作,系统嵌入式中间件(.Net Framwork、Java)等等

支撑软件:辅助软件开发工具 如系统分析设计工具、仿真开发工具、交叉开发工具

测试工具、配置管理工具、维护工具等

应用软件:面向应用领域 如手机软件、路由器软件、交换机软件 、游戏、阅读器、移动办公、远程控制

9.嵌入式软件系统的体系结构如下图所示:

(1)硬件设备驱动:

(2)操作系统:包括嵌入式内核、嵌入式TCP/IP网络系统、嵌入式文件系统、嵌入式GUI系统和电源管理等部分,其中嵌入式内核是基础和必备的部分,其他部分要根据嵌入式系统的需要来定制

(3)中间件和基础构架软件:

承载通用应用的应用框架 如java虚拟机和.net框架

承载通用应用的GUI外壳 如Android Web浏览器

高层协议栈 (4)应用层 应用层软件主要由多个相对独立的应用任务组成,每个应用任务完成特定的工作,如I/O任务、计算的任务、通信任务等,由操作系统调度各个任务的运行

13、嵌入式文件系统,(常用嵌入式文件系统FAT Fs、JFFS2、YAFFS、UBIFS)

通用文件系统功能如下:

 提供用户对文件操作的命令

 提供用户共享文件的机制

 管理文件的存储介质

 提供文件的存取控制机制,保障文件及文件系统的安全性

 提供文件及文件系统的备份和恢复功能

 提供对文件的加密和解密功能

而嵌入式文件系统,相比之下较为简单,主要具有文件的存储、检索、更新等功能,一般不提供保护和加密等安全机制。

它以系统调用和命令方式提供对文件的各种操作,主要有:

 设置和修改对文件和目录的存取权限

 提供建立、修改、改变、删除目录等服务

 提供创建、打开、读、写、关闭、撤消文件等服务

11.嵌入式软件运行流程如下:

(1)上电复位、板级初始化阶段:

嵌入式系统上电复位后需要进行硬件的初始化工作。

不同的系统,初始化时要完成的工作具有一定的特殊性,但以下工作一般是必须完成的:

CPU中堆栈指针寄存器的初始化。

BSS段(Block Storage Space表示未被初始化的数据)的初始化。

CPU芯片级的初始化: 中断控制器、定时器、接口、内存等的初始化

(2)系统引导\升级阶段:

根据需要分别进入系统软件引导阶段或系统升级阶段。

软件可通过测试通信端口数据或判断特定开关的方式分别进入不同阶段。

引导:操作系统装,分为下列情况:

将系统软件从NOR Flash中读取出来加载到RAM中运行:这种方式可以解决成本及Flash速度比RAM慢的问题。软件可压缩存储在Flash中。

不需将软件引导到RAM中而是让其直接在NorFlash上运行,进入系统初始化阶段。

将软件从外存(如NandFlash、CF卡、MMC等)中读取出来加载到RAM中运行:这种方式的成本更低

升级:又称为固件更新

进入系统升级阶段后系统可通过网络进行远程升级或通过串口进行本地升级。

远程升级一般支持TFTP、FTP、HTTP等方式。

本地升级可通过Console口使用超级终端或USB的升级软件进行。

(3)系统初始化阶段

在该阶段进行操作系统等系统软件各功能部分必需的初始化工作,如根据系统配置初始化数据空间、初始化系统所需的接口和外设等。

系统初始化阶段需要按特定顺序进行,如首先完成内核的初始化,然后完成网络、文件系统等的初始化,最后完成中间件等的初始化工作。

(4)应用初始化阶段

在该阶段进行应用任务的创建,信号量、消息队列的创建和与应用相关的其它初始化工作。

(5)多任务应用运行阶段

各种初始化工作完成后,系统进入多任务状态,操作系统按照已确定的算法进行任务的调度,各应用任务分别完成特定的功能

12。嵌入式系统内核 内核是嵌入式操作系统的基础,也是必备的部分。内核还提供特定的应用编程接口,但目前没有统一的标准。

(1)任务管理:

内核的核心部分,具有任务调度、创建任务、删除任务、挂起任务、解挂任务、设置任务优先级等功能。

通用计算机的操作系统追求的是最大的吞吐率,为了达到最佳整体性能,其调度原则是公平,采用Round-Robin或可变优先级调度算法,调度时机主要以时间片为主驱动。

而嵌入式操作系统多采用基于静态优先级的可抢占的调度,任务优先级是在运行前通过某种策略静态分配好的,一旦有优先级更高的任务就绪就马上进行调度。

(2)内存管理:

通常不采用虚拟存储管理,而采用静态内存分配和动态内存分配(固定大小内存分配和可变大小内存分配)相结合的管理方式。

有些内核利用MMU机制提供内存保护功能。

通用操作系统广泛使用了虚拟内存的技术,为用户提供一个功能强大的虚存管理机制。

(3)通信 同步 和互斥机制

 这些机制提供任务间、任务与中断处理程序间的通信、同步和互斥功能。

 一般包括信号量、消息、事件、管道、异步信号和共享内存等功能。

 与通用操作系统不同的是,嵌入式操作系统需要解决在这些机制的使用中出现的优先级反转问题。

(4)中断管理 其功能如下:

 安装中断服务程序

 中断发生时,对中断现场进行保存,并且转到相应的服务程序上执行

 中断退出前,对中断现场进行恢复