09届嵌入式期末考重点.docx
- 文档编号:26081460
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:18
- 大小:656.64KB
09届嵌入式期末考重点.docx
《09届嵌入式期末考重点.docx》由会员分享,可在线阅读,更多相关《09届嵌入式期末考重点.docx(18页珍藏版)》请在冰豆网上搜索。
09届嵌入式期末考重点
根据杨老师在最后一节课讲的内容整理的2012.11
第一章嵌入式系统概述
1、嵌入式系统的定义:
……P3
嵌入式系统是以应用为中心,以计算机技术为基础,软、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
2、嵌入式系统的7个特点:
……P3-5
(1)专用的计算机系统
(2)代码固化(3)实时性要求(4)可靠性要求(5)操作系统的支持(6)专用的开发工具、环境和方法(7)知识集成系统
3、嵌入式系统的组成结构:
……P6
组成结构一般分为硬件层、中间层、软件层和功能层
4、嵌入式系统正朝着以下趋势进一步发展:
……P12
(1)标准化
(2)SOC将成为应用主流。
(3)基于Eclipse平台的开发工具成为嵌入式领域的热门。
(老师说只要知道这3点就可以了)
第二章嵌入式处理器
1、嵌入式处理器分类:
……P17
①嵌入式微控制器(MCU)
②嵌入式微处理器(MPU)
③嵌入式DSP(DSP)
④嵌入式片上系统(SOC)
2、典型嵌入式处理器:
ARM、PowerPC、MIPS、Sparc、龙芯等(记住2个即可)
3、ARM处理器基础:
2种状态(ARM/Thumb态),7种模式,37个寄存器
ARM状态:
32位指令,执行字对准的ARM指令
Thumb状态:
16位指令,执行半字对准的Thumb指令
4、RISC和CISC
CPU的指令集从主流的体系结构上分为精简指令集RISC和复杂指令集CISC。
嵌入式系
统中的主流处理器---ARM处理器所使用的就是精简指令集RISC;而桌面领域的处理器大部
分是使用的是复杂指令集CISC,如Intel的X86系列处理器。
ARM是一种RISC体系结构的处理器芯片。
和传统的CISC不同,RISC有以下几个特点:
■单周期指令。
■指令字长度一致,单拍完成,便于流水操作;
■大量的寄存器。
寄存器不少于32个。
数据处理器的指令只对寄存器的内容操作。
只有加载/存储指令可以访问存储器。
5、ARM处理器选型考虑因素:
……P34
①ARM微处理器内核的选择
②系统的工作频率
③芯片内存储器的容量
④片内外围电路的选择
6、流水线知识……P35
流水线技术是现代微处理器普遍采用的一种技术,它可以使得几条指令并行执行,因此可以大大提高处理器的运行效率。
流水线能够正常工作的条件是在任意时刻,每一级所使用的硬件必须能够独立操作。
不能多级同时占用同一硬件资源。
三级流水线:
取指、译码、执行
7、寻址方式:
……P85第14题
假设R0的内容为0x8000,寄存器R1,R2的内容分别为0x01、0x10,存储区内容为空。
执行下述指令后,说明PC如何变化,存储器及寄存器的内容如何变化。
STMIBR0!
{R1,R2}
LDMIAR0!
{R1,R2}
解:
STMIBR0!
{R1,R2};此条指令有2步,IB表示执行前地址加4
①[R0+4]←[R1];把0x01放到存储器0x8004,R0=8004
②[R0+4]←[R2];把0x10放到存储器0x8008,最终R0=8008
LDMIAR0!
{R1,R2};此条指令有2步,IA表示执行后地址加4
①[R0]→[R1],[R0+4];把0x8008内容放到R1,R0加4,此步完R0=800c,R1=0x10
②[R0]→[R2],[R0+4];把0x800c内容放到R2,R0加4,最终R0=80010,R2=[0x800c]
8、ARM汇编程序的基本结构:
……P75
(给程序,分析)
AREAEXAMPLE,CODE,READONLY;AREA定义一个代码段,属性只读,名为EXAMPLE
ENTRY;ENTRY伪指令标示程序的入口点
Start;标号要顶格写
MOVR0,#10;命令不能顶格写
MOVR1,#3;指令大小写要一致
ADDR0,R0,R1
END;END伪指令,告诉编译器程序结束
9、汇编语言与C语言的混合编程:
……P77
①汇编代码比较简单时,直接利用内嵌汇编的方式
内嵌汇编指令的语法格式:
……P78
__asm{指令[;指令]}多条指令用;隔开
②汇编代码比较复杂时,将C程序和汇编程序分别以文件的形式加到一个工程里,通过ATPCS标准来完成C程序和汇编程序之间的调用。
……P82
1)汇编程序访问C语言全局变量
IMPORTglobvar;globvar是C程序中声明的全局变量,用IMPORT引入
LDRR1,=globvar;从文字池中读出globvar的地址,将其保存到R1
2)汇编程序调用C程序
IMPORTg;g是C程序中的函数
BLg;通过BL指令,调用g函数
3)C程序调用汇编程序
汇编程序中:
EXPORTxxx;声明xxx可被其他文件引用
C程序中:
externxxx;声明xxx为外部变量
10、ADS中几种文件后缀:
C文件.c汇编.s二进制.bin
第三章嵌入式硬件平台
1、总线的握手协议……P89
总线协议中的基本构件是四周期握手协议。
1设备1升高它的输出电平来发出查询信号,告诉设备2应准备好接收数据
2当设备准备好接收数据时,升高它的输出电平来发出应答信号
3数据接收完毕,设备2降低它的输出电平表示数据接收完毕
4看到设备2的应答信号变低,设备1降低它的输出电平
2、什么是DMA?
DMA主要用来完成哪种总线操作?
……P91
DMA(直接存储器访问)是允许读/写不由CPU控制的总线操作。
DAM使用一种称为DMA控制器的专用硬件来完成外设于存储器之间的高速数据传送。
DMA控制器从CPU请求总线控制,得到控制权后,控制器能像CPU那样提供内存的地址和必要的读/写操作。
DMA要求CPU提供两个附加的总线信号:
总线请求和总线授权。
3、总线配置
在高速总线和低速总线之间的总线桥是高速总线的受控器,是低速总线的主控器
AHB高性能总线,APB外围设备总线
4、存储设备分级……P94
①寄存器组②高速缓冲存储器(cache)③内存④外存
5、触摸屏原理……P103
电阻式触摸屏用二维电压表来探测位置。
在顶层的导电层上加上电压,当手指触摸屏幕时,平时互相绝缘的导电层在触摸点位置接触,产生电势差。
在顶层接触点对电压进行采样,用A/D转换器来测量电压,以此确定位置。
6、串口简单比较……P105
RS-232C单端共模传输,速度慢,距离短,相比下RS-422是双端差分传输,速度快,距离长。
RS-485是RS-422的变形,RS-422是全双工的,而RS-485是半双工,但是RS-485能支持更多的负载(32个)
7、USB特点,硬件结构……P107
特点优点主要有①支持热擦拔和即插即用②易于扩展
硬件结构USB连接线:
D+、D-是一对差模信号线,用来传送数据。
Vbus、GND提供电能
硬件结构之级联结构:
该拓扑组成结构:
主机(host),集线器(Hub),功能设备
第四章Bootloader与设备驱动
1.Bootloader的概念……P120
BootLoader是系统加电后首先运行的一段程序代码,可以初始化硬件设备、建立内存空间的映射图,其目的是将系统的软硬件环境带到一个合适的状态,为调用操作系统内核准备好正确的环境。
BootLoader是依赖于目标硬件实现的,可以从两个方面来理解:
Ø每种嵌入式微处理器体系结构都有不同BootLoader.
ØBootLoader还依赖于具体的嵌入式板级硬件设备配置。
2.驱动层软件的两个概念。
P136
驱动层软件有两个重要的概念:
硬件抽象层(HAL,HardwareAbstractionLayer)和板级支持包(BSP,BoardSupportPackage)。
硬件抽象层(HAL)的目的是为了将硬件抽象化,即通过程序来控制CPU,I/O,存储器等硬件的操作,从而使得系统的设备驱动程序与硬件无关。
板级支持包(BSP)的目的主要是为驱动程序提供访问硬件设备寄存器的函数包,从而实现对操作系统的支持。
第五章.嵌入式操作系统
1.A.操作系统的定义。
操作系统OS(OperatingSystem)连接用户与计算机硬件的接口,管理计算机系统资源的集合。
是配置在计算机硬件上的第一层软件,是对硬件系统的第一次扩充。
(建议看课件ARM_CH6_2操作系统及线程)
B.操作系统的功能。
处理机管理(进程管理),存储器管理,设备管理,文件管理,作业管理。
P162或者看课件ARM_CH6_2操作系统及线程。
C.什么是RTOS。
(RealTimeOperatingSystem)实时操作系统。
分为硬实时和软实时。
可理解为一个标准内核,将时间、中断、定时器等资源封闭起来,留给用户一个API接口。
D.几种典型操作系统:
Vxworks,WindowsCE,psos,QNX,palmOS,ucos
2.处理机里面分清程序,线程和进程三个概念
主要看看p155和课件ARM_CH6_2操作系统及线程
A进程:
程序的一次执行,又称任务,是指在系统中能独立运行并作为资源分配基本单位。
B进程是动态的,而程序是静态的。
C程序可写在纸上、保存在磁盘中进行长期保存,它的生命期是长久的;而进程是程序的执行,因此生命期是短暂的,在执行初期被创建,在执行完成后被撤销。
D对程序来说,除了存储介质之外不需要任何资源;而对于进程来说,被执行才是其存在的意义,因此进程需要处理机资源,需要内存资源,也许还需要其它输入输出资源。
E.线程:
轻量进程。
是进程内的一个可调度的执行单元。
独立的最小调度单位,但不是资源分配单位。
同一进程可拥有多个线程,他们被独立调度但共享所属进程的资源。
区别:
1、线程是最小调度单位,线程比进程切换快
2、线程提高系统并发性,使进程内部也可并发执行
3、进程拥有资源而线程不拥有资源
4、线程的系统开销小于进程
3进程状态图(看一下就好)
第六章嵌入式应用程序设计
1.状态机(画状态机,综合题中可能会出)P189图6-1
2.编程模型。
P191图6-3,理解控制/数据流图(CDFG)
3.嵌入式程序的优化:
执行时间优化,能量优化,长度优化。
……P200
①执行时间优化:
执行时间=程序路径+指令耗时
1)尽可能有效地使用寄存器
2)使用分页模式访问内存系统
3)分析高速缓存来减少冲突
②能量优化:
降低功耗
1)使用工作效率而且省电的算法
2)优化内存访问
3)在不需要时关闭系统的一部分。
如cpu子系统,外围设备等
③长度优化:
1)数据优化:
确认并消除数据副本,确定保存在缓冲区的大小,并相应地分配数组
2)指令优化:
减少程序长度,适当选择指令,适当使用例程,使用统计压缩算法,即在汇编后压缩程序,在运行时再解压缩
4.程序编译过程(实验)
如vi编辑gcc编译给出makefile文件说明形成什么样的可执行文件。
对象文件等
(老师给出的实验材料中有)
第七章基于网络的嵌入式系统设计
1.I2C总线的概念。
I2C总线是一种用于IC器件之间连接的二线制总线。
它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送数据,并根据地址识别每个器件:
不管是单片机、存储器、LCD驱动器还是键盘接口。
3.I2C总线间两条线怎样避免冲突。
(答案在老师课件第七章中)
2.实验五I2C控制1380基本原理描述。
4、CAN总线的应用……P217
CAN总线已被广泛应用到各个自动化控制系统中。
例如,在汽车电子、自动控制、智能大厦、电力系统、安防监控等各领域。
5、socket框图、概念、定义等。
套接字(socket)包含了IP地址及TCP或者UDP的端口号。
套接字接口即操作系统提供的网络编程接口。
①TCP的socket编程框图
②UDP的socket的编程框图
第8章嵌入式系统开发
1、嵌入式系统的调试方法……P254
1monitor方式:
在目标操作系统与调试器内分别添加一些功能模块,两者互相通信来实现调试功能。
2片上调试方式:
在处理器内部嵌入额外的硬件控制模块,当满足了特定的触发条件时,进入某种特殊的状态。
2、四种调试代理。
……P255
1基于JTAG的ICE类型的调试代理
2Angel调试监控程序
3ARMulator
4调试网关
3、两种实用工具:
skyeye与sourceinsight。
……P262
sourceinsight是windows智齿的一个功能强大的程序编辑器。
skyeye是一个指令级模拟器,可以模拟多种嵌入式开发板。
第九章系统设计技术
1、需求分析(综合题)……P269
2、UML(UnifiedModelingLanguage,统一建模语言)……P274
UML是一种可视化的建模语言。
(掌握其中的用例图、类图)
1用例图
·从系统的外部用户的观点看系统应具有的功能
·用例图主要用于对系统,子系统或类的行为进行建模
·它只说明系统实现什么功能,而不必说明如何实现
例题:
试画用例图
⏹需要描述的内容
☐存款人新设一个账号
☐存款人查询剩余金额
☐存款人取钱
☐存款人存钱
解:
2类图
例题1:
试画类图
⏹想描述的内容
☐有图书馆、书、作者这几个类
☐图书馆、书、作者有各自的名字
☐书上有图书编号
☐作者有自己的经历
☐从图书馆的角度来看,书具有藏书的作用
☐作者写书
解:
例题2:
试画类图
⏹想描述的内容
☐有学生,课程表这两个类
☐学生又分为fulltime和parttime两类
☐一个学生包含有0到多张课程表;一张课程表只属于一个学生
☐学生有属性姓名,地址和学号
解:
一些实验相关知识
1、vi编辑器
基本上vi可以分为三种状态,分别是命令模式、插入模式和底行模式
1命令行模式下,按一下字母「i」进入插入模式,开始输入文字
2从插入模式切换为命令模式,按[ESC]
3退出vi:
在命令模式下,输入:
wq(存盘并退出)
:
q!
(不存盘退出)
2、linux基本命令的使用
ls:
显示当前目录下的文件chmod:
改变目录或文件的读写属性
cd:
改变目录位置ping:
检查网络连接
cd..:
返回上一级目录lsmod:
查看当前驱动
pwd:
显示当前所在目录insmod:
加载
rm:
删除文件rmmod:
卸载
mv:
移动或更改文件目录
3、交叉开发框图
4、宿主机与开发板之间建立网络连接需要做的工作
宿主机:
①#ifconfig;查看IP地址信息
(若要更改ip地址,使用命令ifconfigeth0192.168.2.110)
②#ping192.168.2.120;测试与开发板连接是否通畅
③#chmod–R777*;在要共享的目录前使用,使开发板有权操作宿主机上的文件
开发板:
1#minicom;使用超级终端实现两个终端的联系
2#mount–onolock192.168.2.110//mnt;把目的ip地址的内容挂载到/mnt目录
3、Makefile
Mekefile示例:
CC=/opt/host/armv4l/bin/armv4l-unknown-linux-gcc
CFLAGS=-DDEBUG-D__Linux__-g
all:
hello
hello:
hello.o
$(CC)$(CFLAGS)-o$@$<;前空白由一个Tab制表符产生,此句含义相当于
;/opt/host/armv4l/bin/armv41-unknown-linux-gcc-DDEBUG-D__Linux__-g–ohellohello.c
clean:
rm-rf*.ohello;makeclean时执行此句,前空白由一个Tab制表符产生
解析:
CC指编译器的宏(可理解为gcc编译器执行路径,要用它来编译我们的程序,示例中编译器执行路径为/opt/host/armv4l/bin/armv4l-unknown-linux-gcc)
CFLAGS连接参数宏
(注:
Makefile从all:
开始看起,它是入口点,相当于C代码的main函数。
指明你执行make的最终目的。
$@$<是标准的GNUCC编译器识别的变量
$@表示:
前面的target,即$(EXEC),这里就是hello
$<表示:
后面的内容。
Makefile里面的-D表示定义一个宏
-DDEBUG-D__Linux__这些宏是编译器所带的glibc里面所识别的宏。
-g是要求带符号表,可支持gdb的源代码调试。
就是从.o里面可对应到.c的源代码。
)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 09 嵌入式 期末 重点