当前位置:首页 >> IT/计算机 >>

嵌入式习题答案1


《嵌入式系统》课后习题参考答案 嵌入式系统》 第一章 什么是嵌入式系统?它由哪几部分组成?有何特点? 1. 什么是嵌入式系统?它由哪几部分组成?有何特点? 以应用为中心,计算机技术为基础,软硬件可裁减,从而能够适应实际应用中对功能、可靠 性、成本、体积、功耗等严格要求的专用计算机系统。 嵌入式系统通常由嵌入式处理器、外围设备、嵌入式操作系统、应用软件等几大部分组成。 嵌入式处理器与通用处理器的最大不同点在其大多工作在为特定用户群设计的系统。 外围设备包 括:存储器、接口、人机交互。 嵌入式操作系统的特点:软硬件一体化,集计算机技术、微电子技术和行业技术为一体;需 要操作系统支持,代码小,执行速度快;专用紧凑,用途固定,成本敏感;可靠性要求高;多样 性,应用广泛,种类繁多。 嵌入式处理器分为哪几类? 2. 嵌入式处理器分为哪几类? 低端的微控制器(MicroConctroller Unit,MCU) 中高端的嵌入式微处理器(Embedded MicroProcessor Unit,EMPU) 通信领域的 DSP 系统(Digital Signal Processor,DSP) 高度集成的片上系统(System on Chip,SoC) 英文原意是什么?它是个怎样的公司?其处理器有何特点? 3. ARM 英文原意是什么?它是个怎样的公司?其处理器有何特点? ARM(Advanced RISC Machines)公司是全球领先的 16/32 位 RISC 微处理器知识产权设计供应 商。ARM 公司通过将其高性能、低功耗、低成本的 RISC 微处理器,外围和系统芯片设计技术转 让给合作伙伴来生产各具特色的芯片。 ARM 处理器的特点:小体积、低功耗、低成本而性能高。16/32 位指令集。全球至多的合作 伙伴。 什么是实时系统?它由哪些特征?如何分类? 4. 什么是实时系统?它由哪些特征?如何分类? 实时系统是具有实时性且能支持实时控制系统工作的操作系统。 其首要任务是调动一切可利 用的资源来完成实时控制任务, 其次才着眼于提高计算机系统的使用效率, 其重要特点是能满足 对时间的限制和要求。 实时性: 实时系统所产生的结果在时间上有严格的要求, 只有符合时间要求的结果才是正确 的。 并行性:要求系统有并行处理能力,以便能同时相应来自不同端口的输入信号。 多路性:对多个不同的现场进行采集,以及对多个对象和多个执行实行控制。 独立性:每个用户向实时系统提出服务请求,相互间是独立的。在实时控制系统中对信号的 采集和对象控制也是独立的。 可预测性:实时系统的实际行为必须处在一定的限度内,而这个限度由系统的定义获得。 可靠性:一方面指系统的正确性,另一方面指系统的健壮性,即使系统出现错误,仍然处于 可预测状态,仍可以安全地带错运行和平缓降级它的性能。 分类: 强实时系统(保质、 保量、 在限定时间内完成任务)、 弱实时系统(没有限制完成时间)、 一般实时系统(强和弱的折中)。 由几部分组成?它由哪些特点?与一般操作系统有何不同? 5. RTOS 由几部分组成?它由哪些特点?与一般操作系统有何不同? 实时内核(主要实现任务管理, 定时器管理, 存储器管理、 任务间通信与同步, 中断管理等)、 网络组件、文件系统、图形用户界面。 特点:支持异步事件的响应;中断和调度任务的优先级机制;支持抢占式调度;确定的任务 切换时间和中断延迟时间;支持同步。 实时操作系统常用的任务调度算法有哪几种? 6. 实时操作系统常用的任务调度算法有哪几种? 基于优先级的调度算法:非抢占式调度,抢占式调度

同一优先级的时间轮转调度算法(执行一段时间无论完成与否,处理器均转入下一个就绪的 同一优先级任务) 单调速率调度算法(执行频率越高,其优先级越高) 用什么方法解决优先级反转问题? 7. 用什么方法解决优先级反转问题? (1) 优先级继承: C 为正占用着某项共享资源的进程 P 以及所有正在等待占用此项资源的 设 进程集合;找出这个集合的优先级最高者 P_h,其优先级为 p’;把进程 P 的优先级设 置成 P 成’。 (2) 优先级封顶:设 C 为所有可能竞争使用某项共享资源的进程的集合。事先为这个集合规 定一个优先级上限 p’,使得这个集合的所有优先级都小于 p’;在创建保护该项资源 的信号量或互斥量时,将 P 将’作为一个参数;每当有进程通过这个信号量或互斥量取 得对共享资源的独占使用权时,就将此进程的优先级暂时提高到 P’’,一直到释放该 项资源时菜恢复对其原有的优先级。

第二章 1. 嵌入式系统开发过程分为哪几个阶段?每个阶段的特点是什么? 嵌入式系统开发过程分为哪几个阶段?每个阶段的特点是什么? (1) 需求分析阶段:对问题的识别和分析;制定规格说明文档;需求评审 特点:采用成熟、易于二次开发的系统易于节省时间,从而以最短时间面世。 (2) 设计阶段:数据流分析-划分任务-定义任务间接口 特点:DARTS 的设计方法-是结构化设计的扩展,划分出任务,并提供定义任务间的接 口机制,适合设计多个并发执行的任务。 (3) 生成代码阶段:代码编程-交叉编译和链接-交叉调试-测试(单元和集成测试) 特点:一般采用的方法是现在通用 PC 机上编程,然后通过交叉编译、链接,将程序做 成目标平台上可以运行的二进制代码格式, 最后将程序下载到目标平台上的特定位置, 在目标板 上启动这段二进制代码。 (4) 固化阶段:嵌入式应用软件完成以后,编译器要对源代码重新编译一次,以产生固化到 目标坏境的可执行代码,再烧到环境目标环境的 Flash 中。 固化的可执行代码和用于 调试的可执行代码有些不同。固化用的代码在目标文件中把调式用的信息都屏蔽掉了。 固化后没有监控器执行硬件的启动和初始化,这部分工作必须由固化的程序自己完成, 所以启动模块必须包含在固化代码中。 特点:程序需要写入到 Flash 中固化,保证每次运行后下一次运行无误,所以嵌入式 开发相比增加了软件的固化阶段。 2. 嵌入式系统有哪几种调试方式?现在流行的哪种?使用什么接口? 嵌入式系统有哪几种调试方式?现在流行的哪种?使用什么接口? (1) 源程序模拟器方式:在 pc 机上,通过软件手段模拟执行为某种嵌入式处理器写的源程 序的测试工具。三级模拟功能(指令级、周期级、定时级) (2) 监控器方式: 宿主机和目标机建立物理上的连接, 通过串口、 串口、 以太口等把两台机器相连, 串口 以太口 使之正常工作,然后在宿主机上运行调试器,目标机运行监控程序和被调试程序。 (3) 仿真器方式:使用处理器内嵌的调试模块接管中断及异常处理。用户通过设置 CPU 内部 的寄存器来指定哪些中断或异常发生后处理器直接进入调试状态, 而不进入操作系统的 处理程序。JTAG、IDE(在线仿真器 in-circuit Emulator)、ICD(in-circuit Debugger 在线调试器)接口。通过 JTAG 既可以对目标系统进行测试,也可以对目标系统的存储单 元进行编程。 3. 什么是板级支持包?它一般应完成哪些工作? 什么是板级支持包?它一般应完成哪些工作? 成哪些工作 板级支持包(Board Support Package)是操作系统与目标应用硬件环境的中间接口,它是软

件包中具有平台依赖性的那一部分。 功能:在系统启动时,对硬件进行初始化;为驱动程序提供访问硬件的手段。 工作:在系统启动时,对硬件进行初始化进行: (1) 将系统代码定位到 CPU 将要执行的内存入口处,比便硬件初始化完毕后 CPU 能够执行 系统代码 (2) 根据不同 CPU 在启动时的硬件规定,BSP 要负责将 CPU 设置为特定状态。 (3) 对内存进行初始化,根据系统的内存配置将系统的内存划分为代码、数据、堆栈等不 同的区域。 (4) 如果有特殊的启动代码,BSP 要将控制权移交给启动代码。 (5) 如果应用软件中包含一个嵌入式操作系统, 要负责将操作系统需要的模块加载到内 BSP 存中。 (6) 如果应用软件中包含一个嵌入式操作系统, BSP 还要在操作系统初始化之前, 将硬件设 置为静止状态,以免造成操作系统初始化失败。 为驱动程序提供访问硬件的手段进行: (1) 将驱动程序提供的 ISR(中断服务程序)挂载到中断向量表上。 (2) 创建驱动程序初始化所需要的设备对象,BSP 将硬件设备描述为一个数据结构。 (3) 为驱动程序提供访问硬件设备寄存器的函数。 (4) 为驱动程序提供可重用性措施。只要不同的硬件系统 BSP 提供的接口相同,驱动程序就 可在不同的硬件系统上运行。

第四章 1. 在流水线方面有何不同? ARM7 和 ARM9 在流水线方面有何不同? ARM7 处理器核使用了典型三级流水线的冯·诺伊曼结构,ARM9 系列则采用了基于五级流水 线的哈佛结构。 通过增加流水线级数简化了流水线各级的逻辑, 进一步提高了处理器的性能。 ARM7 系列处理器中每条指令分取指、译码、执行三个阶段,分别在不同的功能部件上依次独立完成。 取指部件完成从存储器装载一条指令, 通过译码部件产生下一周期数据路径需要的控制信号, 完 成寄存器的解码,再送到执行单元完成寄存器的读取、ALU 运算及运算结果的写回,需要访问存 储器的指令完成存储器的访问。ARM9 系列处理器的流水线分为取指、译码、执行、访存、回写。 取指部件完成从指令存储器取指; 译码部件读取寄存器操作数, 与三级流水线中不占有数据路径 区别很大; 执行部件产生 ALU 运算结果或产生存储器地址(对于存储器访问指令来讲); 访存部件 访问数据存储器;回写部件完成执行结果写回寄存器。 2. 处理器支持的数据类型有哪些? ARM 处理器支持的数据类型有哪些? 字节:在 ARM 体系结构中字节的长度均为 8 位。 字:在 ARM 体系结构中字节的长度均为 32 位。 半字:在 ARM 体系结构中字节的长度均为 16 位 3. 使用的各种工作模式和状态。 写出 ARM 使用的各种工作模式和状态。 ARM 微处理器的工作状态一般有两种,并可在两种状态之间切换: 第一种为 ARM 状态,此时处理器执行 32 位的字对齐的 ARM 指令; 第二种为 Thumb 状态,此时处理器执行 16 位的、半字对齐的 Thumb 指令。 在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且,处理器工作状态的转 变并不影响处理器的工作模式和相应寄存器中的内容。 ARM 微处理器在开始执行代码时, 但 应该 处于 ARM 状态。 ARM 处理器模式

ARM 微处理器支持 7 种运行模式,分别为: 用户模式(usr):ARM 处理器正常的程序执行状态。 快速中断模式(fiq):用于高速数据传输或通道处理。 外部中断模式(irq):用于通用的中断处理。 管理模式(svc):操作系统使用的保护模式。 数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。 系统模式(sys):运行具有特权的操作系统任务。 定义指令中止模式(und):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件 仿真。 ARM 微处理器的运行模式可以通过软件改变,也可以通过外部中断或异常处理改变。大多数 的应用程序运行在用户模式下, 当处理器运行在用户模式下时, 某些被保护的系统资源是不能被 访问的。 除用户模式以外,其余的所有 6 种模式称之为非用户模式,或特权模式;其中除去用户模式 和系统模式以外的 5 种又称为异常模式, 常用于处理中断或异常, 以及需要访问受保护的系统资 源等情况 4. PC?哪个用做 LR? 哪个寄存器用做 PC?哪个用做 LR? 寄存器 R14 称为链接寄存器 LR,它用于保存子程序的返回地址。如果在子程序中保存了返 回地址,寄存器 R14 则可以用做其他用途。寄存器 R15 为程序计数器 PC,不能用做其他用途 5. 的哪位定义状态? 标志位的异同。 CPSR 的哪位定义状态?比较 ARM 与 X86 处理器 CPU 标志位的异同。 M0、M1、M2、M3、M4 是模式位。这些位决定了处理器的运行模式。具体含义如表 2 表 2-2 运 行模式位 M[4:0]的具体含义 M[4:0] 处理器模式 可访问的寄存器 0x10000 用户模式 PC,CPSR,R0-R14 0x10001 FIQ 模式 PC,CPSR, SPSR_fiq,R14_fiq-R8_fiq, R7~R0 0x10010 IRQ 模式 PC,CPSR, SPSR_irq,R14_irq,R13_irq,R12~R0 0x10011 管理模式 PC,CPSR, SPSR_svc,R14_svc,R13_svc,,R12~R0, 0x10111 中止模式 PC,CPSR, SPSR_abt,R14_abt,R13_abt, R12~R0, 0x11011 未定义模式 PC,CPSR, SPSR_und,R14_und,R13_und, R12~R0, 0x11111 系统模式 PC,CPSR(ARM v4 及以上版本), R14~R0 ARM 标志位包括 N、Z、C、V 四个标志位,分别作为符号标志、0 标志、进位标志和溢出标 志,X86 中由 SF、AF、CF、OF 分别作为这四种标志,此外 X86 中还包括辅助进位标志 AF 和 奇偶校验标志 PF。 6. 指令的边界对准有何不同? ARM 与 Thumb 指令的边界对准有何不同? 用于字访问的地址通常应当字对准,用于半字访问的地址通常应当半字对准。ARM 执行期间 是字对准方式,而 Thumb 指令时半字对准方式。 7. 8. 9. 为何没有移位指令? ARM 为何没有移位指令? ARM 在指令中使用第二操作数可以直接实现移位操作。 如何区分伪指令 LDR 和汇编指令 LDR? 看指令中的操作数有无等号。 R0=0X12345678, 的指令存到存储器中 存到存储器中。 假设 R0=0X12345678,使用指令 R0 存储到 0X4000 的指令存到存储器中。若存储器为大端 组织, 的值。 组织,写出从存储器 0X4000 处加载一个直接到 R2 的指令执行后 R2 的值。 小端:高字节在高地址;大端:高字节在低地址。所以 R2=0X12345678 个字的数组。 10. 假定有一个 25 个字的数组。编译器分别用 R0 和 R1 分配变量 x 和 y。若数组的基地址放在 使用后变址形式翻译: R2 中,使用后变址形式翻译:x=array[5]+y ADD R0, [R2, #20], R1

或者 ldr r3,[r2,#20]

add r0,r3,r1
的数值赋值: 11. 使用汇编完成下列 C 的数值赋值:For(i=0;i<10;i++) {a[i]=b[i]+c}

;编程实现 For(i=0;i<10;i++) {a[i]=b[i]+c} area arraydata,data,readwrite arraya dcd 0,0,0,0,0,0,0,0,0,0 arrayb dcd 1,2,3,4,5,6,7,8,9,10 constc dcd 20 area arrayadd,code,readonly entry start ldr r0,constc mov r1,#10 ldr r2,=arraya-4 ldr r3,=arrayb-4 next ldr r4,[r3,#4]! add r4,r4,r0 str r4,[r2,#4]! subs r1,r1,#1 bne next ext mov r0,#0x18 mov r1,#0x20000 add r1,r1,#0x26 ;ldr r1,=0x20026 swi 0x123456 end


赞助商链接
相关文章:
嵌入式习题1
ARM习题(1) 29页 免费 嵌入式第一章习题答案 3页 1财富值 arm题库(部分)...嵌入式系统一般由嵌入式微处 理器,外围硬件设备,嵌入式操作系统以及用户的应用...
嵌入式 考试题1
嵌入式系统明显特点:1.嵌入式系统是一个专用计算机系统,有微处理器,可编程;2、 嵌入式系统有明确的应用目的 3、嵌入式系统作为机器或设备的组成部分被使用。 ...
嵌入式第一章课后习题
嵌入式课后习题_理学_高等教育_教育专区。第一章 1.什么是嵌入式系统?有何特点? 答:嵌入式系统的概念有很多种,在嵌入式系统领域中比较认同的嵌入式系统...
嵌入式复习题附参考答案
嵌入式习题附参考答案 - 第一章 嵌入式系统基础模拟试题 1.什么是嵌入式系统?它由哪几个部分组成? 答: 嵌入式系统是指操作系统和功能软件集成于计算机硬件...
嵌入式题库1
单项选择题 1 下列哪一项不是嵌入式操作系统的特点 A、占有资源少 B、低成本 C、高可靠性 D、交互性 √ C D 2 下列哪一项不是嵌入式系统的基本要素 A、...
第1章习题解答
答:微控制器,嵌入式 、 第1章一、填空 思考题及习题 1 参考答案 1. 除了单片机这一名称之外,单片机还可称为 控制器. 2.单片机与普通微型计算机的不同之处...
ARM嵌入式系统基础教程习题答案周立功
ARM嵌入式系统基础教程习题答案周立功 - 第一章 思考与练习 1、举出 3 个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式...
ARM嵌入式系统结构与编程习题答案(全)
ARM嵌入式系统结构与编程习题答案(全)_计算机软件及应用_IT/计算机_专业资料。《ARM 嵌入式系统结构与编程》习题答案 第一章 绪论 1. 国内嵌入式系统行业对“嵌入...
嵌入式Linux题库及答案1
嵌入式Linux题库及答案1 - 嵌入式软件助理工程师认证考试试题题库 一、单项选择题 2、在大多数 Linux 发行版本中,以下哪个属于块设备 ( B ) A. 串行口 B....
嵌入式系统部分习题解答
嵌入式系统课后习题部分答案嵌入式系统课后习题部分答案隐藏>> 习题解答习题 1(123页) 1。片外RAM从1000H~10FFH有一数据块,编写程序将其传送到片外RAM的 2500H...
更多相关标签: