第一章:
1、什么是嵌入式系统? 嵌入式系统是一应用为中心,以及设计技术为基础,软/硬件可裁剪。功能、可靠性、成本、体积、功耗要求严格的专用计算机系统。 1.2 与通用计算机相比,嵌入式系统有哪些特点? 1).嵌入式系统通常是面向特定应用的; 2).嵌入式系统是将计算机技术,半导体技术和电子技术与各行各业的具体应用相结合的后的产物,是一门综合技术学科;
3).嵌入式系统和具体应用有机的结合在一起,它的升级换代也是和具体产品同步进行的,因此嵌入式产品一旦进入市场,就有较长的生命周期;
4).为了提高执行速度和可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存储于磁盘等载体中;
5).嵌入式系统本身不具有自主开发能力,即使设计完成以后用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。 3、根据嵌入式系统的复杂程度,嵌入式系统可以分为哪4类? 1) 单个微处理器:
2) 嵌入式处理器可扩展的系统: 3) 复杂嵌入式系统:
4) 在制造或过程控制中使用的计算机系统 4、举例说明嵌入式微处理器有哪几类?
嵌入式微处理器、嵌入式微控制器、嵌入式DSP,嵌入式片上系统(ESOC) 1.5从硬件系统来看,嵌入式系统由哪几个部分组成?画出简图。
1、哈佛体系结构与冯诺依曼体系结构有何不同?
哈佛结构和冯.诺依曼结构都是一种存储器结构。哈佛结构是将指令存储器和数据存储器分开的一种存储器结构;而冯.诺依曼结构将指令存储器和数据存储器合在一起的存储器结构。 相对于冯·诺依曼结构,哈佛结构更加适合于那些程序固化、任务相对简单的控制系统。 4、ARM处理器有哪几种工作模式?各种工作模式分别有什么特点?(第二版) 答:User:用户模式。绝大部分的任务执行都在这种操作模式下,此为正常的程序执行模式。 FIQ:快速中断模式。当一个高优先级中断产生时,系统将会进入这种操作模式,用于高速数据传输和通道处理,由FIQ请求位发出请求信号。
IRQ:普通中断模式。当一个低优先级中断产生时将会进入这种操作模式,本模式用于通常的中断处理,由IRQ请求位发出请求信号。
Supervisor:管理模式。当复位或软中断指令执行时将会进入这种操作模式,是一种可以供操作系统使用的保护模式。
Abort:中止模式。当存取异常时将会进入这种操作模式,此模式可以被用作虚拟存储及存储保护,可由ABORT请求位发出请求信号。
Undef:未定义模式。当执行未定义指令时会进入这种操作模式,多被用于软件仿真硬件协处理器时。
4、下面ARM条件码的含义?(第一版)
(1)EQ (2)NE (3)MI (4)VS (5)GE (6)LT 条件码 助记符后缀 标 志 含 义 0000 EQ Z置位 相等 0001 NE Z清零 不相等 0100 MI N置位 负数 0110 VS V置位 溢出
1010 GE N等于V 带符号数大于或等于 1011 LT N不等于V 带符号数小于
0010 CS C置位 无符号数大于或等于 0011 CC C清零 无符号数小于 0101 PL N清零 正数或零 0111 VC V清零 未溢出
1000 HI C置位Z清零 无符号数大于
1001 LS C清零Z置位 无符号数小于或等于 1100 GT Z清零且(N等于V) 带符号数大于
1101 LE Z置位或(N不等于V) 带符号数小于或等于 1110 AL 忽略 无条件执行 10、若一个机器的命中率为93%,具有5ns的高速缓存访问时间为5ns和80ns的主存访问时间,那么它的平均内存访问时间是多少? (1-0.93)×80+0.93×5=10.25ms
11、假设希望得到一个6.5ns的主存平均访问时间,而高速缓存访问时间为5ns,并且主存的访问时间为80ns,那么需要达到多高的高速缓存命中率才能实现目标呢?(设为x) 6.5=5×x+(1-x)×80 x=0.98
12、假设一个系统有一个两级高速缓存:一级高速缓存有90%的命中率,二级高速缓存有97%的命中率;一级高速缓存访问时间为4ns,二级高速缓存访问时间为15ns,三级高速缓存的访问时间为80ns,那么平均的内存访问时间是多少? 0.9×4+(1-0.9)×{0.97×15+(1-0.97)×80}=5.295ms
第三章:
1、编写汇编程序,实现1+2+3+….+100 AREA EXAMPLE1,CODE,READONLY ENTRY MOV R0,#0 MOV R1,#0 START ADD R0,R0,#1 ADD R1,R1,R0 CMP R0,#100 BLT START STOP B STOP END
2、如何实现128位数的减法。
AREA EXAMPLE2,CODE,READONLY ENTRY START SUBS R5,R5,R9 SBCS R4,R4,R8 SBCS R3,R3,R7 SBCS R2,R2,R6 STOP B STOP END 第四章:
4、如何定义一个宏,宏与子程序的区别是什么? 答:宏的格式为: MARCO和MEND
[$标号] 宏名 [$参数1,$参数2…..] 指令序列 MEND
MARCO表示一个宏定义的开始,MEND表示一个宏的结束,MARCO和MEND前呼后应可以将一段代码定义为一个整体,又称宏,然后在程序中就可以在程序中通过宏的名称及参数调用该段代码。
宏指令可以重复使用,这一点的使用方式与子程序有些相似,子程序可以节省存储空间,提供模块化的程序设计。但使用子程序机构时需要保存/恢复现场,从而增加了系统的开销,因此,在代码传递的参数较多并且比较短时,可以使用宏代替子程序,宏在被调用的地方展开。
7、分别编写一个函数和一个宏,实现字符串的复制。
10、将下面的一段代码用汇编语言实现。 int Factorial(int i) {
if(i==0)
return 1;
return i* Factorial(i-1); } i EQU R1
AREA EXAMPLE,CODE,READONLY ENTRY BL DATA START ;i=1 MOV R3,#1 ;R3用来存放阶乘的值 B EXIT ;跳入是循环 ;i=0
MOV R3,#1 B EXIT B A A MOV R4,R1 ;R4=i MOV R2,#i-1 ;R2=i-1
SUBTRACT MUL R3,R4,R2 ;R3=R4*R2,即:R3=i*(i-1) MOV R4,R3 ;R4=R3 SUB R2,R2,#1 CMP R2,#0 BNE SUBTRACT ;不为0,则跳回到SUBTRACT BEQ EXIT ;为0,则跳到EXIT DATA MOV R0,#0 MOV R1,#i MOV R3,#0 MOV R15,R14 EXIT B EXIT END
13、举例说明高速缓存命中率低时对程序性能的影响。 高速缓存命中率低随着缓存区的增加而提高。高速缓存的命中减少了对磁盘的冯文,并因此提高了系统的整体性能。如果高速缓存的命中率降低,高速缓存对cpu的有效访问就会减弱,系统运行就会变慢,程序的运行也会变慢。 第五章:
1、S3C44BOX具有多少个通用的I/O口?它们具有那些功能?
71个,PA作为地址线使用,PB作为bank选择线和SDRAM的接口信号线使用;PC作为数据线,HS接口或LCE数据线等使用;PD作为LCD 的信号线使用;PE作为串口信号线和定时器输出使用;PF和PG多功能I/O口。 2、简述矩阵式键盘扫描检测法的工作原理。 一、行扫描法
行扫描法识别按键的基本原理:先将所有的行线置0,读列线的值。若此时列线上的值全为1,说明无键按下;若有某位为0,则说明对应这一列上有键按下。这时,改变行扫描码,使行线逐行为0,依次扫描,当读到某列线的值为0,就可根据此时的行扫描码和列线的值唯一对应按键位置,同时也就确定了该键的扫描码。 二、行反转法
行反转法也是识别按键的常用方法。它的基本原理是:将行线接一个数据端口,让它先工作在输出方式;将列线也接到一个数据端口,让它先工作在输入方式。接下来,输出端口往各行线上全部送0,然后输入端口读入列线值。如果此时有某键被按下,则必定会使某列线值为0。接着,对调行、列线端口的工作方式,使接行线的端口该为输入方式,接列线的端口改为输出方式,并且,将刚才读到的列值从列线所接端口输出,在读取行线的输入值。那么,闭合键所在的行线值必定为0。这样,当一个键被按下时,必定可以读得一对唯一的行值和列值(行i , 列j)。但应注意,行、列线所接的数据端口应能够改变输入输入方式。 15、A/D转换器分为哪几类?各有什么优缺点?
16、什么是JTAG?它有什么特点?
JTAG是英文“Joint Test Action Group(联合测试行为组织)”的词头字母的简写,为IEEE1149.1-1990 测试访问端口和边界扫描结构标准。JTAG的建立使得集成电路固定在PCB上,只通过边界扫描便可以被测试。在ARM7TDMI处理器中,可以通过JTAG直接控制ARM的内部总线、I/O接口等信息,从而达到调试的目的。 第六章:
1、嵌入式系统的设计与传统的系统设计有哪些异同点? 1)嵌入式系统通常是面向特定应用的系统 2)嵌入式系统的硬件和软件都必须高效的设计 3)嵌入式系统设计需要交叉开发环境 4)嵌入式系统的程序需要固化 5)嵌入式系统的团建开发难度较大
6)嵌入式系统还需要提供强大的硬件开发工具和软件包的支持,需要设计者速度、功能和成本综合考虑。 答:(1).嵌入式系统通常是面向特定应用的; (2).嵌入式系统是将计算机技术,半导体技术和电子技术与各行各业的具体应用相结合的后的产物,是一门综合技术学科; (3).嵌入式系统和具体应用有机的结合在一起,它的升级换代也是和具体产品同步进行的,因此嵌入式产品一旦进入市场,就有较长的生命周期;
(4).为了提高执行速度和可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存储于磁盘等载体中;
(5).嵌入式系统本身不具有自主开发能力,即使设计完成以后用户通常也不能对其中的程序功能进行修改,必须有一套开发工具和环境才能进行开发。
备注:本文档根据老师划的书中习题组成。提供的答案仅供参考(有些可能不完整)