嵌入式原理思考题及答案Word格式.docx
- 文档编号:16823674
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:12
- 大小:86.52KB
嵌入式原理思考题及答案Word格式.docx
《嵌入式原理思考题及答案Word格式.docx》由会员分享,可在线阅读,更多相关《嵌入式原理思考题及答案Word格式.docx(12页珍藏版)》请在冰豆网上搜索。
⏹产品升级换代和具体产品同步,具有较长的生命周期;
⏹软件一般都固化在存储器芯片或单片机本身;
⏹不具备自举开发能力,必须有一套开发工具和环境才能进行开发
3.举例介绍嵌入式微处理器有哪几类?
一、嵌入式微处理器(EmbeddedMicroprocessorUnit,EMPU)
嵌入式处理器目前主要有Aml86/88、386EX、SC-400、PowerPC、68000、MIPS、ARM系列等。
二、嵌入式微控制器(MicrocontrollerUnit,MCU)
嵌入式微控制器目前的品种和数量最多,比较有代表性的通用系列包括8051、P51XA、MCS-251、MCS-96/196/296、C166/167、MC68HC05/11/12/16、68300等。
三、嵌入式DSP处理器(EmbeddedDigitalSignalProcessor,EDSP)
嵌入式DSP处理器比较有代表性的产品是TexasInstruments的TMS320系列和Motorola摩托罗拉的DSP56000系列。
四、嵌入式片上系统(SystemOnChip)
4.从硬件系统来看,嵌入式系统由哪几部分组成?
画出简图。
∙嵌入式核心芯片,EMPU——嵌入式微处理器、EMCU——嵌入式微控制器、EDSP——嵌入式数字信号处理器、ESoC——嵌入式片上系统。
∙用以保存固件的ROM(非挥发性只读存储器)。
∙用以保存程序数据的RAM(挥发性的随机访问存储器)。
∙连接微控制器和开关、按钮、传感器、模/数转化器、控制器、LED(发光二极管)、显示器的I/O端口。
5.嵌入式微处理器和嵌入式微控制器分别由哪些部件组成,两者有何区别。
嵌入式微处理器=cpu+硬件接口(存储器接口,键盘接口等)+辅助电路(时钟、A/D、D/A、调试电路等)
嵌入式微控制器=cpu+存储器+I/o接口+辅助电路(时钟、A/D、D/A等)
嵌入式微处理器与嵌入式微控制器的区别:
后者芯片内部包含了ROM和RAM。
6.嵌入式操作系统通常含有几层,主要实现何功能。
嵌入式操作系统通常包括:
1、驱动层:
硬件相关的底层驱动软件和设备驱动接口;
如:
LCD、触摸屏的驱动及接口。
2、操作系统层:
系统内核(基本模块),扩展模块(可裁剪)。
3、应用层:
应用程序接口。
7.ARM处理器工作模式有几种?
各种工作模式下分别有什么特点?
(P64)
8.ARM处理器总共有多少个寄存器,这些寄存器按其在用户编程中的功能是如何划分的?
这些寄存器在使用中各有何特殊之处?
ARM处理器总共有37个寄存器,各寄存器均为32位。
31个通用寄存器,包括程序计数器PC;
6个状态寄存器。
这些寄存器按其在用户编程中的功能可划分为:
通用寄存器和状态寄存器。
根据ARM处理器不同工作模式,可将全部寄存器分成7组;
各工作模式拥有属于自己的寄存器组,也只能访问自己的寄存器组。
9.试述ARM处理器对异常中断的响应过程。
当一个异常出现以后,ARM微处理器执行完当前指令后(复位异常除外)会执行以下几步操作:
1.将CPSR复制到相应到相应模式下的SPSR中,设置CPSR:
置位I位(禁止IRQ中断)
清零T位(进入ARM状态)
设置MOD位,切换处理器至相应模式
2.将下一条指令的地址存入相应连接寄存器LR(R14_XXX),以便程序在处理异常返回时能从正确的位置重新开始执行。
3.强制PC从相关的异常向量地址取一条指令执行,从而跳转到相应的异常处理程序处。
10.如何从异常中断处理程序中返回?
需要注意哪些问题?
异常处理完毕之后,ARM微处理器会执行以下几步操作从异常返回:
1.将SPSR复制回CPSR中,恢复原处理器工作模式。
2.将连接寄存器LR(R14_XXX)的值减去相应的偏移量后送到PC中,跳转到被中断的用户程序。
11.ARM存储器的存储周期有几种类型,对应于cache访问和存储器访问是何存储周期?
Ø
空闲周期I周期----内部周期,不执行存储器访问;
可广播下一次访问的地址以便开始译码,与S周期配合实现总线上的突发传送。
顺序周期S周期----顺序周期:
多用于实现总线上的突发传送,第一个周期必须是一个内部周期。
(cache传送)
协处理器寄存器传送周期C周期----协处理器寄存器传递周期:
通过数据总线向或从协处理器传送数据;
传送期间,存储系统不允许驱动数据总线。
非顺序周期N周期----非顺序周期:
最简单的总线周期,存储控制器必须启动存储器访问来满足这个请求;
该方式存储系统常需要长的访问时间。
(存储器读写)
cache访问:
I周期、S周期
存储器访问:
N周期
12.何谓cache?
简述cache的工作原理。
(P51)
13.何谓写通cache和写回cache,两者有何区别?
v写回法是指CPU在执行写操作时,被写的数据只写入cache,不写入主存。
仅当需要替换时,才把已经修改的cache块写回到主存中。
采用写回法进行数据更新的cache称为写回cache。
v写通法是指CPU在执行写操作时,必须把数据同时写入cache和主存。
采用写通法进行数据更新的cache称为写通cache。
14.arm的MMU主要实现何功能。
虚拟存储空间到物理存储空间的映射。
在ARM中采用了页式虚拟存储管理,通过两级页表实现虚拟地址到物理地址的映射。
存储器访问权限的控制。
设置虚拟存储空间的缓冲特性:
Cache/writebuffer
15.协处理器cp15主要实现的功能?
v用于处理、控制ARM的特殊性能
v片上存储器管理单元(MMU)
v指令、数据缓存
v写缓冲器
16、简述MMU使能时存储访问过程。
(参考:
P55)
芯片设置为MMU使能(设置cp15寄存器):
(1)若cache使能,根据arm输出的虚拟地址在CACHE中搜索;
若cache命中,arm处理器与cache交换数据。
若cache禁止或cache未命中,首先访问TLB,参见
(2)。
(2)根据arm输出的虚拟地址在TLB中搜索,若找到,将其转换为物理地址,访问主存并把该块数据读取到cache(使能时)中。
17、ARM支持的物理页有几种类型,其容量为何值?
ARM支持的存储块:
(1)段(section):
由1MB的存储器块构成
(2)大页(largepage):
由64KB的存储器块构成
(3)小页(smallpage):
由4KB的存储器块构成
(4)微页(tinypage):
由1KB的存储器块构成
18、简述基于段的地址变换过程。
19、简述使用粗页表和4k页的二级虚实地址转换过程。
20.编写1+2+3+……+100的汇编程序。
AREABlock,CODE,READONLY
ENTRY
start
movr0,#0;
movr1,#1
agaaddr0,r0,r1
addr1,r1,#1
cmpr1,#101
bneaga
MOVr0,#0x18;
angel_SWIreason_ReportException
LDRr1,=0x20026;
ADP_Stopped_ApplicationExit
SWI0x123456
END
21.编程实现128位两个加数的加法运算,两个加数分别放在num1和num2变量内,按小端模式存储,结果放在result变量内。
ldrr1,=num1
ldrr2,=num2
ldrr3,=result
ldrr4,[r1],#4
ldrr5,[r2],#4
subsr0,r4,r5
strr0,[r3],#4
ldrr4,[r1],#4
sbcsr0,r4,r5
strr0,[r3],#4
ldrr4,[r1],#4
AREABlockData,DATA,READWRITE
Num1DCD55,66,77,88
Num2DCD11,22,33,44
resultDCD0,0,0,0
22.将存储器中起始地址M1处的4个字数据,移动到地址M2处。
(LDM/STM实现)
ldrr1,=m1
ldrr2,=m2
ldmiar1!
{r3-r6}
stmiar2!
23.ARM指令的寻址方式有几种?
试分别叙述其各自的特点并举例说明(P72)。
24.假设R0的内容为0x8000,寄存器R1、R2内容分别为0x01与0x10,存储器内容为0。
执行下述指令后,说明R0如何变化?
存储器的内容如何变化?
STMIBR0!
,{R1,R2}
LDMIAR0!
25.在ADS环境下,利用全局变量和局部变量声明伪操作及其赋值伪操作,分别举例来定义算术变量、逻辑变量和串变量并为其赋值(P99)。
26.读懂下面一段程序,子程序dststr执行过程中寄存器R0、R1、R2中的内容如何变化?
试分析并给出子程序执行后的结果。
AREAStrCopy,CODE,READONLY
ENTRY;
markthefirstinstructiontocall
LDRr1,=srcstr;
pointertofirststring
LDRr0,=dststr;
pointertosecondstring
BLstrcopy;
callsubroutinetodocopy
stop
MOVr0,#0x18
LDRr1,=0x20026
strcopy
LDRBr2,[r1],#1
STRBr2,[r0],#1
CMPr2,#0
BNEstrcopy
MOVpc,lr;
Return
AREAStrings,DATA,READWRITE
srcstrDCB"
Firststring-source"
0
dststrDCB"
Secondstring-destination"
27.读下面一段程序,试分析其功能。
EORSR4,R0,R1
BPLK
MOVR3,0
BEND0
KMVNR0,R0
MOVR3,R0
END0……
功能:
判R0和R1中的数据是否同号,若是,则把R0中的数据取反并送到R3中,否则O→R3。
28.读下面一段程序,试分析其功能。
LDRR0,X+2|BGTL1
LDRR1,X|CMPR1,R3
LDRR2,Y+2|BLSL2
LDRR3,Y|L1MOVR4,1
ADDSR1,R1,R1|BEXIT
ADCR0,R0,R0;
求2P(R0:
R1)|L2MOVR4,2
CMPR0,R2|EXITSWI0x123456;
结束程序
BLTL2|
功能:
若2x>
y则R4=1;
若2x<
=y则R4=2
29.有100个有符号的字数据,存放在内存BUFF中,编完整的程序(包括代码段、数据段)找出最大值、最小值分别放入内存单元MAX、MIN中。
ldrr0,=BUFF;
movr1,#100
ldrr4,[r0];
max
ldrr5,[r0];
min
cmpeldrr3,[r0]
cmpr4,r3
bgtcmpnext;
movr4,r3;
小于等于
cmpnext
cmpr5,r3
bltloop
movr5,r3;
小于
loopaddr0,r0,#4
subr1,r1,#1
cmpr1,#0
bnecmpe
ldrr0,=MAX;
strr4,[r0]
ldrr0,=MIN;
strr5,[r0]
BUFFDCD1,-2,3,4,5,6,7,-8,1,2,3,4,5,6,7,8,1,2,3,12
MAXDCD0
MINDCD0
30.S3C44B0X具有多少通用I/O口?
它们具有哪些功能?
(P149)
31.简述矩阵式键盘线扫描检测法的工作原理。
(P150\151)
32.假设要将S3C44B0X的UART1设置为:
波特率9600b/s,7位数据位,2个停止位,1位奇偶校验位,并采用流控制工作,该如何设置?
给出完成该设置功能的代码段。
rFCON0=0X00;
不使用FIFO
rUMCON0=0X10;
自动流控制
rULCON0=0X26;
正常模式,1位奇偶校验位/奇校验,2个停止位
rUCON0=0X45;
//禁止超时中断、回送模式、发中止信号,允许产生错误状态中断,
//发送、接收中断都为边沿方式,传送、接收模式都为中断请求模式
rUBRDIVO=((int)MCLK/16/baud+0.5)-1);
//根据波特率计算UBRDIVO的值
33.写出下述内存变量x、y和z的地址。
(x、y、z的地址分别为:
0x20000、0x20004、0x2000c)
beginequ0x20000
mapbegin
xfield4
yfield8
zfield16
34、
(1)波特率的概念?
一终端以1200波特的速率发送异步串行数据,假设8位数据位,无校验位,1位停止位,若发送字符5AH,试画出发送端TXD的波形图。
图中标明字符的最高位和最低位。
(2)试计算发送字符5AH所用的时间。
答:
(1)波特率就是传送数据位的速率,用位/秒(bit/s)表示,称之为波特。
1
StartLSBMSB
(2)10*1/1200=1/120=8.33ms
35.现有两种简单的外设,一组3位开关,一组1位共阳LED指示灯
要求:
(1)利用PF端口的低3位连接开关,PG端口驱动LED的段码,PF4驱动位控段,试画出接口电路。
(2)编制驱动程序,使开关的组合值在LED上显示出来。
(1)
VCC
(2)驱动程序:
Unsignedcharled_dis[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8};
Unsignedcharval,key;
rPCONG=0x5555;
rPCONF=0x0100;
key=rPDATF&
0x07;
rPDATG=led_dis[key];
rPDATF=0x10;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 原理 思考题 答案