昆明理工大学 嵌入式技术及应用 复习提纲.docx
- 文档编号:30406827
- 上传时间:2023-08-14
- 格式:DOCX
- 页数:19
- 大小:1,014.04KB
昆明理工大学 嵌入式技术及应用 复习提纲.docx
《昆明理工大学 嵌入式技术及应用 复习提纲.docx》由会员分享,可在线阅读,更多相关《昆明理工大学 嵌入式技术及应用 复习提纲.docx(19页珍藏版)》请在冰豆网上搜索。
昆明理工大学嵌入式技术及应用复习提纲
1、嵌入式系统的定义
答:
“以应用为中心、以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。
它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用软件等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
2、嵌入式系统的基本特点
答:
1.通常是面向特定应用的;
2.空间和各种资源相对不足,必须高效率地设计,量体裁衣、去除冗余;
3.产品升级换代和具体产品同步,具有较长的生命周期;
4.软件一般都固化在存储器芯片或单片机本身;
5.不具备自举开发能力,必须有一套开发工具和环境才能进行开发;
6.是知识集成系统,不可垄断
3、嵌入式系统的分类
答:
(1)、按复杂程度,分为以下4类:
1、单个微处理器。
2、嵌入式处理器。
3、复杂的嵌入式系统。
4.在制造或过程控制中使用的计算机系统。
(2)、按应用来分类,分为以下几类:
通信类、信息家电类、移动终端类、汽车电子类、工业控制类
4、嵌入式系统的组成
答:
大致组成如下图所示:
应用层
应用程序
文件系统
图形用户接口
任务管理
软件层
os
事实操作系统
驱动层
硬件抽象层
板级支持包
设别驱动程序
硬件层
DA
通用接口
AD
嵌入式处理器
rom
IO
sdrom
人机交互接口
嵌入式计算机系统
5、从硬件系统来看,嵌入式系统由哪几部分组成?
并画出简图(P7-8)
硬件:
嵌入式核心芯片;
存储器(ROM,RAM,Flash);
连接各种外设的I/O端口。
软件:
嵌入式操作系统(实时操作系统);
应用程序(控制系统的运作和行为)。
开发工具和开发系统。
外围电路外设
电源
rom
键盘
时钟
mpu
ram
lcd
复位
flash
usb
其他
6.举例说明嵌入式微处理器有哪几类?
(1)嵌入式微处理器MPU。
是通用计算机中的CPU演变来的。
32位以上处理器,高性能,价高。
Am186/88,386EX,SC-400,POWERPC,68000,MIPS,ARM等。
(2)嵌入式微处理器MCU。
典型代表是单片机。
单片化,体积小,功耗和成本低,可靠性高。
80C51,P51XA,MCS-251,MCS-96/196/296,C166/167,MC68HC05/11/12/16。
(3)嵌入式DSP处理器。
对系统结构和指令进行特殊设计,适合于执行DSP算法,编译效率较高,执行速度较快。
在数字滤波、FFT、频谱分析等各种仪器及智能化产品上得到大规模的应用。
有:
TI公司的TMS320C2000/C5000系列;Intel公司的MCS-296;Motorola公司的DSP56000,DSP56100。
(4)嵌入式片上系统SOC(P6)
把计算机常用的一些数据采集和控制系统集成在一块芯片上。
实现软硬件无缝结合,系统特别简洁,减少体积和功耗,提高可靠性,提高了设计生产效率。
7、通用计算机与嵌入式系统的对比?
通用
嵌入式
形式和类型
看得见,大中小
看不见形式多样
组成
通用处理器,标准总线和外设,软硬件相对独立
面向应用,接口集成,软硬件紧密联系
开发
通用计算机
交叉开发,通用开发,嵌入运行
应用程序可重新编译
一般不能再编程
1、哈佛体系结构和冯.诺依曼体系结构有何不同?
冯.诺依曼体系结构:
将数据和程序都存储在同一个存储器中的计算机成为冯.诺依曼体系结构。
程序计数器PC指向指令地址,CPU从存储器中取出指令,对指令进行译码,执行指令。
哈佛体系结构:
为数据和程序提供了各自独立的存储器,PC只指向程序存储器。
两个存储器有不同的端口,提供了较大的存储带宽,使数据适时移动更容易,提高了数字信号处理的性能。
T:
持16位缩指令集thumbD:
支持片上debugM:
内嵌硬件乘法器I:
嵌入式ice,支持片上断点和调试点
2、CISC和RISC技术(基本定义、特点,比较)
(1)、CISC:
复杂指令系统计算机
特点:
增强指令功能,设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬件的(微程序)指令系统来实现
为节省存储空间,强调高代码密度,指令格式不固定,指令可长可短,操作数可多可少
寻址方式复杂多样,操作数可来自寄存器,也可来自存储器
采用微程序控制,执行每条指令均需完成一个微指令序列
CPI>5,指令越复杂,CPI越大。
缺点
指令使用频度不均衡;
大量复杂指令的控制逻辑不规整,不适于VLSI工艺;
软硬功能分配;
不利于先进指令级并行技术的采用。
(2)、RISC:
精简指令系统计算机
RISC设计准则:
指令集、流水线、寄存器、Load/Store结构
特点:
大多数指令只需要执行简单和基本的功能,其执行过程在一个机器周期内完成。
只保留加载/存储指令。
操作数由加载/存储指令从存储器取出放寄存器内操作。
芯片逻辑不采用或少采用微码技术,而采用硬布线逻辑。
减少指令数和寻址方式。
指令格式固定,指令译码简化。
优化编译
RISC:
指令数少,常少于100,指令执行时间短,编码长度固定,一般四个字节,寻址方式不多样,优化编译技术,生成高效的目标代码程序,只能对寄存器进行算术和逻辑操作,load/store体系结构
3、ARM处理器的特点:
RISC指令集;Load/Store体系结构;固定的32位指令;大多数指令单周期完成;Thumb\DSP\jazeller功能扩展;低功耗;
4、流水线技术(三级流水线)、流水线相关问题及解决
(1)、三级流水线:
Pc+8:
fetch取指
Pc+4:
decode译码
Pc:
execute执行
PS:
使用流水线执行模式,程序计数器PC必须在当前指令之前计数,PC指向的是预取指令,如果直接读取PC值,得到的是“当前指令地址+8”。
(2)、ARM的流水线设计问题
为使处理器获得更高的性能,需考虑如何优化处理器的组织结构,可采用缩短程序执行时间的方法:
提高时钟频率fclk和减少每条指令的平均时钟周期数CPI。
(3)、流水线相关问题
结构相关:
某些指令在流水线中重叠执行时,产生资源冲突,则称该流水线是结构相关。
为了避免结构相关,ARM架构采用了资源重复的方法:
a、采用分离式指令Cache和数据Cache。
b、ALU中采用单独加法器来完成地址计算。
数据相关
当一条指令需要前面指令的执行结果,而该指令均在流水线中重叠执行时,就可能引起流水线的数据相关。
为解决数据相关,ARM架构采用的解决措施:
a、定向(旁路或短路)技术。
b、流水线互锁技术。
控制相关
当流水线遇到分支指令和其他改变PC值的指令时,就会发生控制相关。
为解决控制相关,ARM架构采用的解决措施:
引入延时分支和尽早计算出分支转移成功时的PC值(分支的目标地址)。
5、超标量执行
定义:
通过重复设置多套指令执行部件,同时处理并完成多条指令,实现并行操作,来达到提高处理速度的目的。
相关问题
解决超标量机的功能部件冲突,数据相关和由于条件转移引起的控制相关问题。
每段代码的执行时间难于计算。
如果代码中有分支指令,超标量处理器在执行的过程中必须动态的检查指令的相关性。
6、存储体系结构及ARM的存储系统(大、小端模式)
(1)大容量、高速度、低价格是评价存储器性能的三个主要指标,也是存储体系设计的主要目标。
两级存储
三级存储
cpu
cpu
cache
辅助软件
主存
辅助软硬件
主存
辅存
辅存
辅助硬件
(2)ARM处理器支持以下六种数据类型:
8位有符号和无符号字节。
16位有符号和无符号半字,以2字节的边界对齐。
32位有符号和无符号字,以4字节的边界对齐。
(3)大、小端模式
大端模式:
较高的有效字节存放在较低的存储器地址,较低的有效字节存放在较高的存储器地址。
小端模式:
较高的有效字节存放在较高的存储地址,较低的有效字节存放在较低的存储器地址。
7、Cache,MMU
(1)高速缓冲存储器(cache)主要作用:
减小慢速存储器给处理器内核造成的存储器访问瓶颈问题的影响,提高处理器和主存间的数据传输速度。
(2)分类:
统一Cache和独立的数据/程序Cache
写通cache和写回cache
读操作分配cache和写操作分配cache
(3)工作原理
在Cache存储系统中,把主存储器和cache都划分成相同大小的块。
主存地址可以由块号M和内存地址N两部分组成;同样,cache的地址也由块号m和块内地址n组成,工作原理如下:
Cache的替换算法:
轮转法:
又称循环替换法;随机替换法
(4)MMU
在ARM系统中,存储管理单元MMU主要完成工作:
虚拟存储空间到物理存储空间的映射。
在ARM中采用了页式虚拟存储管理。
存储器访问权限的控制。
设置虚拟存储空间的缓冲的特性。
系统控制协处理器CP15的寄存器支持这两种机制,见下表。
第三章
1、ARM处理器的编程模型(处理器模式、工作状态等)
1)、7大处理器工作模式:
用户模式(Usr):
正常程序执行的模式。
系统模式(Sys):
用于运行特权级的操作系统任务。
管理模式(SVC):
操作系统的保护模式。
快速中断模式(FIQ):
用于高速数据传输和通道处理。
中断模式(IRQ):
用于通常的中断处理。
中止模式(Abt):
用于虚拟存储器及存储保
未定义模式(Und):
用于处理没有定义的指令,可在该模式中用软件来模拟硬件功能。
2)工作状态:
ARM状态:
处理器执行32位的ARM指令集时,工作在此状态;
Thumb状态:
处理器执行16位的Thumb指令集时,工作在此状
态。
2、ARM寻址方式及寄存器组织
ARM处理器总共有37个寄存器:
30个通用寄存器,1个程序计数器PC
不分组寄存器R0~R7
分组寄存器R8~R14,其中R13和R14有6组物理寄存器。
R13通常称作堆栈指针(SP),R14常用作连接寄存器(LR),R15又称为程序计数器PC.
6个状态寄存器
包含1个CPSR和5个供异常处理程序使用的SPSR。
CPSR——当前程序状态寄存器,任何工作模式下都可以被访问,包含条件标志位和控制位。
SPSR——程序状态备份寄存器,只在异常模式下被访问。
3、异常中断:
(1)、发生操作:
保存处理器的当前状态、中断屏蔽位以及各条件标志位;将CPSR拷贝到SPSR_
设置当前程序状态寄存器CPSR中相应位;
清除CPSR中的Thumb位;
修改相应的模式位;
关中断(IRQ),如果是FIQ或Reset异常,还要关FIQ位。
映射相应模式寄存器;
将寄存器LR_
将程序计数器PC设置成该异常的异常向量地址,从而跳转到相应的异常处理程序处执行。
(2)、返回操作:
恢复被中断程序的处理器状态。
将SPSR_
将LR_
中断禁止位:
I=1:
禁止IRQ
F=1:
禁止FIQ
T=0:
处理器处于ARM状态
T=1:
处理器处于Thumb状态
4、ARM指令集(重点在数据处理指令及LOAD/STORE指令,多寄存器数据传送)
指令的特点:
所有指令都是32bit;大多数指令都在单周期内完成;大多数指令都可以条件执行;load/store体系结构;指令集可以通过协处理器扩展。
多寄存器寻址:
多寄存器寻址方式中,一条指令可实现一组寄存器值的传送,允许一条指令传送16个寄存器的任何子集或所有寄存器。
1)、数据处理指令
特点:
所有的操作数来自寄存器或立即数,不会来自内存。
运算结果一定是为32位宽,且放在一个寄存器中,不会写入内存。
(有一个例外:
长乘法指令产生64位结果)。
每一个操作数寄存器和结果寄存器都在指令中独立指出。
寻址方式:
立即数寻址;寄存器寻址;寄存器移位寻址
movs和mvns指令对pc寄存器赋值时有特殊含义,表示要求在赋值的同时从spsr中恢复cpsr。
对于mov和mvn指令,编译器会进行智能的转化。
在ARM处理器中,只有mrs指令可以读取cpsr/spsr;只有msr可以写cpsr/spsr。
2)、LOAD/STORE指令
Store指令是内存访问指令,Load用于把内存中数据装载到寄存器中,而Store则用于把寄存器中的数据存入内存。
Lode/Store指令分为3类:
单数据访存指令:
LDR指令用于从内存中读取单一数据存入寄存器中;STR指令用于将寄存器中的单一数据保存到内存。
多(批量)数据访存指令:
批量Load/Store指令也称为多寄存器传送指令。
批量访存指令可以实现一组(1~16)寄存器和一块(4~64字节)连续内存单元之间的数据传输。
支持堆栈寻址和块拷贝寻址
寄存器和存储器交换指令
SWP指令用于将一个内存单元的内容读取到一个寄存器Rd中,同时将另一个寄存器Rm的内容写入到该内存单元中。
使用SWP可实现信号量操作。
3)多寄存器数据传送
5、ARM程序设计基础(开发环境的使用,开发流程,简单的程序设计)
开发环境:
EmbestIDE开发环境:
EmbestIDE、EmbestIDE仿真器、ARM开发板
开发流程:
工程建立源文件编译调试固化
简单的程序设计:
见实验二
第四章
1、嵌入式实时操作系统(基本定义,与通用OS相比有什么特点)
实时操作系统:
一般定义为“一个能够在指定的或者确定的时间内,完成系统功能和对外部或内部、同步或异步事件做出响应的系统”。
通常基于优先级的操作系统有两种:
可剥夺型的和不可剥夺型的。
只有基于优先级的可剥夺型的操作系统才是真正的实时操作系统。
嵌入式操作系统的特点:
可剪裁性、强实时性、统一的接口、提供强大的网络功能、强稳定性、代码固化、更好的硬件适应性。
嵌入式操作系统与通用操作系统的区别主要体现在地址空间、内存管理和应用方式3个方面。
2、内核的定义、功能,调度算法
定义:
内核负责管理各个任务,或者说为每个任务分配CPU时间,并且负责任务间的通信。
功能:
内核提供的基本服务便是任务切换。
调度就是决定该轮到哪个任务运行了。
多数实时内核是基于优先级调度算法。
内核的核心部分,具有任务调度、创建任务、删除任务、挂起任务、解挂任务、设置任务优先级等功能。
5、不可剥夺和可剥夺型内核
不可剥夺型内核允许每个任务运行,直到该任务自愿放弃cpu的使用权,中断可以打入运行的任务,中断服务完成之后,cpu回到原来的饿任务,任务级的响应要大大好于前后台系统,但是任然是不能确定的,所以不可剥夺型内核是不能用在商业软件中的。
可剥夺型内核采用不同的调度策略,最高优先级的任务一旦就绪,就能获得CPU的控制权而得以运行,不管当前运行的任务运行到什么状态。
可剥夺型内核采用的抢占式的调度策略,总是让优先级最高的任务运行,直到其阻塞或任务完成,响应时间因此优化。
6、任务的优先级反转,避免的方法
(1)、优先级反转(PriorityInversion):
由于多进程共享资源,具有最高优先权的进程被低优先级进程阻塞,反而使具有中优先级的进程先于高优先级的进程执行,导致系统的崩溃。
这就是所谓的优先级反转(PriorityInversion)。
(2)、产生原因:
其实,优先级反转是在高优级(假设为A)的任务要访问一个被低优先级任务(假设为C)占有的资源时,被阻塞.而此时又有优先级高于占有资源的任务(C)而低于被阻塞的任务(A)的优先级的任务(假设为B)时,于是,占有资源的任务就被挂起(占有的资源仍为它占有),因为占有资源的任务优先级很低,所以,它可能一直被另外的任务挂起.而它占有的资源也就一直不能释放,这样,引起任务A一直没办法执行.而比它优先低的任务却可以执行。
(3)、解决方法:
目前解决优先级反转有许多种方法。
其中普遍使用的有2种方法:
一种被称作优先级继承(priorityinheritance);另一种被称作优先级极限(priorityceilings)。
A.优先级继承(priorityinheritance):
指将低优先级任务的优先级提升到等待它所占有的资源的最高优先级任务的优先级.当高优先级任务由于等待资源而被阻塞时,此时资源的拥有者的优先级将会自动被提升.B.优先级天花板(priorityceilings):
是指将申请某资源的任务的优先级提升到可能访问该资源的所有任务中最高优先级任务的优先级.(这个优先级称为该资源的优先级天花板)
A和B的区别:
优先级继承,只有当占有资源的低优先级的任务被阻塞时,才会提高占有资源任务的优先级,而优先级天花板,不论是否发生阻塞,都提升。
6、uc/os-II特点
特点:
a、μC/OS-II是一个抢占式实时多任务内核;
b、结构小巧;
c、大多数是可剥夺的,开源,可移植,可固化,可裁减,可抢占性–支持多任务,可确定性,任务栈,系统服务,中断管理,稳定性和可靠性,最小内核可编译至2kb.
7、uc/os-II内核结构
8、任务的五个状态
1、睡眠:
任务只以代码的形式存在,没交给操作系统管理,即没有分配任务控制块和任务
2、就绪:
任务全副武装,并在就绪表中登了。
3、运行:
获得了cup的使用权
4、等待(挂起):
正在运行的任务,需要等待一个事件的发生在运行,cpu使用权被剥夺,自己处于等待状态
5、中断服务:
正在运行的任务一旦响应中断申请就会终止运行而去执行中断服务子程序(ISR),这时处于中断服务状态。
9、任务管理中就绪表的作用
uC/OS-II总是在已就绪的任务中选择一个任务来运行。
为了了解系统中的任务哪些是就绪任务,uC/OS-II在系统初始化时间里了一个供就绪任务登记的表,整个表就叫做就绪任务表。
对就绪任务表的操作有两项:
一是把应就绪的任务在就绪表中进行登记;二是在需要时把任务从就绪表中删除。
10、uc/os-II移植(必要条件,主要步骤)
条件:
1、处理器的C编译器能产生可重入代码;2、用C语言就可以打开和关闭中断;3、处理器支持中断并且能产生定时中断;4、处理器支持容纳一定量数据的硬件堆栈;5、处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令
步骤:
移植第一步--基本的配置和定义
移植第二步--移植与处理器相关的OS_CPU_A.ASM汇编代码文件
移植第三步--移植与处理器相关的OS_CPU_C.C标准C代码文件
第五章
1、存储系统接口
2、I/O接口
(1)I/O接口电路也简称接口电路,它是主机和外围设备之间交换信息的连接部件(电路)。
它在主机和外围设备之间的信息交换中起着桥梁和纽带作用,设置接口电路可:
解决CPU和外围设备之间的时序配合和通信联络问题。
解决CPU和外围设备之间的数据格式转换和匹配问题。
解决CPU的负载能力和外围设备端口选择问题。
(2)ARM系统完成I/O功能的标准方法是使用存储器映射I/O,既使用特定的存储器地址。
ARMS3C44B0X有71个多功能输入\输出管脚,构成了7组I/O端口:
两个9位的输入/输出端口(E和F)
两个8位的输入/输出端口(D和G)
一个16位的输入/输出端口(C)
一个10位的输出端口(A)
一个11位的输出端口(B)
3、LCD接口
4、触摸屏接口
实验系统选用的4线电阻式触摸屏LRH9J515XASTN/BW,点数为320×240,色彩16级灰度;触摸屏坐标值的计算采用取平均值对角线定位法。
第六章
1、嵌入式系统的基本结构
2、嵌入式系统设计流程
期末考试题型
一、填空(共30分)
二、简答(共30分,每题10分)
三、(20分)读程序(或图)回答问题
四、(10分)根据下面内容,回答问题
五、(10分)编程题
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 昆明理工大学 嵌入式技术及应用 复习提纲 昆明 理工大学 嵌入式 技术 应用 复习 提纲