1、试列举三种主流的嵌入式处理器:( arm )、mips )、powerpc)。
2、arm处理器共有(37)个寄存器,其中包括(31个通用寄存器)和(6个状态寄存器)。
3、寄存器r13在arm指令中(堆栈指针sp )。r14也称(程序连接寄存器lr)在程序里的作用是(程序计数器pc的备份)。当发生中断或异常时,对应分组寄存器分别是(r14_svc、r14_irq、r14_fiq、r14_abt和r14_und用来保存r15的返回值)。
4、arm微处理器支持两种指令集:(arm)和(thumb)。
5、寄存器r15用作(程序计数器pc)。该寄存器在arm状态下,(位[1:0]为00),位[31:
2]用于保存pc;在thumb状态下,(位[0]为0),位[31:1]用于保存pc。
6、cpsr用作( 状态寄存器 ),cpsr可在任何运行模式下被访问。每一种运行模式下又都有一个专用的物理状态寄存器,称为(程序状态保存寄存器spsr)。
7、thumb状态下的寄存器集是arm状态下寄存器集的一个子集,程序可以直接访问的通用寄存器是(r0—r7,pc,sp,lr,cpsr)。
8、arm指令中条件执行功能是通过( 指令中添加条件码)来实现的,包含的条件码位于指令的最高(四)位。
9、试列举五种以上常见的嵌入式操作系统:(μc/os-ii)、(vxworks)、(wince)、(linux/μclinux)、(palmos)。
10、计算机结构中,哈佛结构和冯?诺依曼结构的主要区别是(指令与数据分开),arm7采用(冯?诺依曼结构),arm9采用(哈佛结构)。
11、arm处理器采用(thumb指令)操作来访问sfr。12、在arm汇编语言程序设计中,语句一般是由(指令操作码)、(指令的条件码)、(目标寄存器编码)和(包含第一个操作数的寄存器编码)组成。
二、名词解释:
arm处理器:advanced risc machine。先进的risc指令集处理器。
交叉编译:在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的**,这个编译过程就叫交叉编译。
异常:是指cpu在执行指令时出现的错误,即不正常的情况。异常是与当前所执行的程序有关的。如存取数据或指令错误、计算结果溢出等。
大端格式:字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。
小端格式:低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。
寻址方式:处理器根据指令中给出的(地址)信息,寻找操作数(物理地址)的方式。
嵌入式系统:广义上:凡是不用于通用目的的可编程计算机设备,就可以算是嵌入式计算机系统。
狭义上而言,嵌入式系统是指以应用为核心,以计算机技术为基础,软硬件可裁剪,对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
gnu:gnu(gnu’s not unix),它的目标是建立可自由发布和可移植的类unix操作系统。
伪指令:是汇编语言程序里的特殊指令助记符,在汇编时被合适的机器指令替代。
伪操作:为汇编程序所用,在源程序进行汇编时由汇编程序处理,只在汇编过程起作用,不参与程序运行。
rtos :实时系统,能够对外部事件做出及时响应的系统。
三、简答题:
1、 简述采用risc架构的arm微处理器的特点。
a.采用固定长度的指令格式,指令规整,简单,基本寻址2~3种。
b.使用单周期指令,便于流水线操作。
c.大量使用寄存器,提高指令的执行效率。
d.所有的指令都可以根据前面的执行后,决定是否执行从而提高指令的执行效率。
e.可以加载/存储指令,批量传输数据,以提高数据的传输效率。
2、 选择嵌入式微处理器时,应考虑那些因素?
调查市场上已有的cpu**商。
cpu的处理速度。
技术指标。处理器的低功耗。
处理器的软件支持工具。
处理器是否内置调试工具。
处理器**商是否提供评估板。
片内存储容量。
3、 若允许fiq、irq中断,cpsr如何设置?
fiq: cpsr[4:0]=0b10001 irq: cpsr[4:0]=0b10010
cpsr[5]=0
cpsr[6]=0
cpsr[7]=0
4、 举例说明arm的各种寻址方式。
寄存器寻址:ldr r1,r2
寄存器间接寻址:ldr r1,[r2]
寄存器偏移寻址:ldr r1,[r2,-r4,lsl#
立即寻址:ldr,r3,#
多寄存寻址:ldmia r0,5、 对比说明adr、adrl与ldr的区别与联系。
adr:小范围的地址读取伪指令。
adrl:中等范围的地址读取伪指令。
ldr:大范围的地址读取伪指令。
adr伪指令功能:将基于pc相对偏移的地址值或基于寄存器相对偏移的地址值读取到寄存器中。
adrl伪指令功能:将基于pc相对偏移的地址值或基于寄存器相对偏移的地址值读取到寄存器中,比adr伪指令可以读取更大范围的地址。
ldr伪指令功能:用于加载32位立即数或一个地址值到指定的寄存器。
6、 比较arm920t和arm720t的主要异同。
arm9 5级流水线独立的指令总线哈佛结构。
arm7 3级流水线数据与指令一起冯·诺依曼结构。
8、 简述s3c2410 nand flash存储器的启动过程。
1)完成复位。
2)如果自动启动模式使能,nand flash存储器的前4kb自动复制到steppingstone内部缓冲器中。
3)steppingstone映射到ngcs0
4)cpu在steppingstone的4kb内部缓冲器中开始执行启动**。
9、 请从广义和狭义两个方面简述嵌入式系统的含义。
答案:嵌入式系统:embedded system
广义上:凡是不用于通用目的的可编程计算机设备,就可以算是嵌入式计算机系统。
狭义上而言,嵌入式系统是指以应用为核心,以计算机技术为基础,软硬件可裁剪,对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统。
10、简述bootloader启动过程。
1、第一阶段。
1)、基本的硬件设备初始化。
2)、为阶段2**准备ram空间。
3)、拷贝阶段2**到ram空间。
4)、设置好堆栈。
5)、跳转到阶段2的c程序入口点。
2、第二阶段。
1)、初始化本阶段要使用到的硬件。
2)、检测系统内存映射(memory map)
3)、将kernel和根文件系统映像从flash读到ram空间。
4)、为kernel设置启动参数。
5)、调用内核。
12、arm7指令是几级流水线,各阶级执行什么操作?
arm7的**流水线。
1取指:从程序存储器中取指令,放入指令流水线。(占用存储器访问操作)
2译码:指令译码。(占用译码逻辑)
3执行:执行指令/读写reg。(占用alu及数据路径)
13、请简述嵌入式软件bootloader的两种工作模式。
启动加载模式:启动加载模式称为“自举”(autonomous)模式。即bootloader从目标机上的某个固态存储设备上将操作系统加载到 ram 中运行,整个过程并没有用户的介入。
启动加载模式是 bootloader的正常工作模式,在嵌入式产品发布的时侯,bootloader必须工作在这种模式下。
**模式:在这种模式下,目标机上的bootloader将通过串口连接或网络连接等通信手段从主机**文件。**内容及存储:
主要是**内核映像和根文件系统映像等。从主机**的文件通常首先被bootloader保存到目标机的ram中,然后再被 bootloader写到目标机上的flash 类固态存储设备中。
14、写出不少于12类嵌入式产品中的常用接口。
uart接口、spi接口、i2c接口、adc和触摸屏接口、usb接口、以太网接口、外存接口、lcd接口、时钟接口、pwm接口、中断接口、jtag接口、vga接口、音频接口。
15、简述arm9处理器的7种运行模式。
1、用户模式(usr):非特权模式,大部分任务执行在这种模式。——正常程序执行的模式。
2、快速中断模式(fiq):当一个高优先级(fast)中断产生时将会进入这种模式。——高速数据传输或通道处理。
3、外部中断模式(irq):当一个低优先级(normal)中断产生时将会进入这种模式。——通常的中断处理。
4、管理模式(svc):当复位或软中断指令执行时将会进入这种模式。——供操作系统使用的一种保护模式。
5、中止模式(abt):当存取异常时将会进入这种模式。——虚拟存储及存储保护。
6、未定义模式(und):当执行未定义指令时会进入这种模式——软件**硬件协处理器。
7、系统模式(sys):供需要访问系统资源的操作系统任务使用——特权级的操作系统任务。
16、arm9处理器的寻址方式有那些?
立即寻址、寄存器寻址、寄存器间接寻址、基址寻址、堆栈寻址 、块拷贝寻址、相对寻址。
17、arm9有哪些处理器模式?哪些是特权模式?哪些是异常模式?
异常模式:除用户模式、系统模式之外的五种模式称为异常模式。特点:以各自的中断或异常方式进入,并且处理各自的中断或异常。
特权模式:除用户模式之外的工作模式又称为特权模式特点:应用程序可以访问所有的系统资源,可以任意地进行处理器模式的切换。
18、arm7在arm状态下有多少个寄存器?通常堆栈指针使用哪个寄存器?连接寄存器lr有什么功能?
有37个32位的寄存器其中31个为通用寄存器;6个为状态寄存器。
r13:寄存器r13在arm指令中常用作堆栈指针sp。而在thumb指令集中,某些指令强制性的要求使用r13作为堆栈指针。
r14:寄存器r14也称作子程序链接寄存器(subroutine link register)或链接寄存器lr。当执行bl子程序调用指令时,r14中得到r15(程序计数器pc)的备份。
其他情况下,r14用作通用寄存器。
19、见28
20、linux的主要特点有那些?
开放性、多用户、多任务、良好的用户界面、设备独立性、丰富的网络功能、可靠的安全系统、良好的可移植性。
21、常用的bootloader有那些?
1、vivi
2、redboot
3、u-boot
22、makefile和make各实现什么功能?
嵌入式嵌入式系统原理与设计
第六章 iic总线。一 iic总线介绍 i2c总线 1.结构。2.工作原理 a b 主机 主设备 负责生成scl时钟,同时负责发出其实信号s和终止信号p 从机 从设备 被主机寻址的器件。1 a检测i2c总线是否 空闲 如果空闲 高 a发出起始信号 scl高,sda 2 寻址选择目标器件b,发送7位地...
嵌入式嵌入式系统原理与设计
课前提问 xscale 内核,intel公司。arm7 内核,第七个版本。armv5te 指令集,v5版本,加入16位thumb指令集,加入dsp指令集。cortex m3 内核,arm公司,arm11之后开始以cortex命名 5.几款arm处理器内核比较 arm11比arm10主频高,能耗低,所...
嵌入式嵌入式系统原理与设计
课前复习 sdram 突发传输同一行起始地址。norflash 读 ce 低 oe 低 we 高 a0 a18 d0 d7 擦出写1 片 6个周期 6s 块 6个周期 0.7s 写写04个周期 ain 9 s 字节编程din nand flash 4096块 32页 512 16 字节。64m 2m...