2016年下半学期西电嵌入式系统设计大作业解析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

嵌入式系统设计大作业

授课老师:孙江敏

学院:计算机学院

学生姓名:

学号:

日期:2016年6月12日

嵌入式系统设计大作业

1、判断题

( ×)1.嵌入式系统调试通常可以分为硬件级调试和在线仿真器调试。

( √)2.在ARM处理器中,快速中断(FIQ)的优先级高于外部中断(IRQ)。( ×)3.ROM能够永久或半永久地保存数据,ROM内的数据永远不会丢失。( √)4.内建测试系统(BIST)是SoC片上系统的重要结构之一,JTAG测试接口是IC 芯片测试方法的标准。

( ×)5.VHDL的基本单元描述不包括库。

( ×)6.嵌入式ARM架构的嵌入式处理器同时支持大端、小端(Big/Little-Endian)数据类型。

( ×)7.嵌入式操作系统通常采用整体式内核或层次式内核的结构。

( ×)8.ARM7TDMI中的T代表增强型乘法器。

( ×)9.看门狗(Watch Dog)实际是一个简单的定时器,在固定时间内若正常清零,则自动复位处理器。

( √)10.ARM-CPU由多家不同制造商生产,芯片外部提供的总线是不一致的。( √)11.Linux 内核稳定、功能强大并且可以裁减,因为非常适合嵌入式应用。( √)12.Linux 内核的中断服务程序运行于与所有进程都无关的中断上下文中。( √)13.Linux遵循POSIX标准,意味着绝大多数UNIX应用程序不需要任何改动就可以在Linux系统上编译且运行。

( ×)14.Linux内核支持可以裁减的功能,因此它属于微内核架构。

( √)15.Linux在fork()时采用了写时拷贝(简称COW)技术,允许父进程和子进程同时共享相同的物理页面。

( √)16.任何一个Linux应用程序都需要调用exit()函数。

( √)17.当前的Linux调度算法非常高效,但是查找当前最高优先级的可运行程序时,开销会随着可运行程序的多少而变化。

( √)18.Linux的系统调用是作为C库的一部分提供的。

( ×)19.为了对硬件做出迅速的响应并完成对时间严格的操作,中断处理下半部必须在关中断状态下执行。

( ×)20.Linux的内存管理采用了分页的机制,因此即使是内核本身也全部是分页的。

( ×)21.嵌入式系统由上到下主要分为3个层次:应用软件层,系统软件层,硬件层。

( ×)22.嵌入式系统的软硬件是独立设计的。

( √)23.嵌入式系统设计需要建立交叉开发环境。

( √)24.通用系统程序开发不需要建立和使用交叉编译环境。

( √)25.对于C++代码,gcc命令只能编译其源文件,而不能自动和C++程序使用的库链接。

( √)26.嵌入式系统可以没有操作系统。

( √)27.JTAG测试允许多个器件通过JTAG接口串联在一起形成一个JTAG链,能实现对各个器件分别测试。

( ×)28.GDB调试器只支持本地调试应用程序。

( √)29.KGDB程序是一个专门用于调试Linux内核的GDB调试桩。

( ×)30.片上调试器是存在重叠RAM。

2、叙述嵌入式平台的搭建过程,以linux为例。

①建立交叉编译环境

一般开发机上已经有一套开发工具,称之为原生开发套件。一般用原生开发套件来写程序,在开发机上再安装一套开发工具,这套开发工具编译出来的程序,如内核、系统工作或者自己的程序,放在目标主机上运行。一般的开发机都是X86平台,原生开发套件开发的工具,也针对X86 平台,而目标主机可能是PowerPC、IXP、MIPS。所以,用交叉编译环境针对某一类具体平台。交叉开发环境一般需要二进制工具程序、编译器、C链接库,嵌入式开发常用的三类软件是:Binutils、Gcc、uClibc。GNU包含的工具套件不仅于此,有时会根据实际需要,进行选择。

②编译内核

开发工具是针对某一类硬件平台,内核同样也是。这一步需要用第一步中建立的工具,对内核进行编译。

③建立根文件系统

也就是建立平常看到的bin、dev、proc……等目录,以及一些必备的文件;

另外,还需要为目标系统安装一些常用的工具软件,如ls、ifconfig。一个办法是找到这些工具的源代码,用第一步建立的交叉编译工具来编译,但是这些软件一般数量多,而且其中某些体积较大,不适合嵌入式系统。所以一般用busybox来完成的,包括系统引导软件init ;最后,还需要为系统建立初始化的引导文件,如inittab。

④启动系统

在这一步,把建立好的目标、文件、程序、内核及模块全部拷贝到目标机存储器上,如硬盘。然后为系统安装bootloader。对于嵌入式系统,有许多引导程序可供我们使用。不过它们许多都有硬件平台的限制。当然,如果工作在X86下,可以直接用lilo来引导。做到这一步时,将目标存储设备挂上目标机,如果顺利,就可以启动系统了。当然,针对某些特别的平台,不能像硬盘这样拷贝,就需要读卡器、烧录。但是基本的方法是相通的。

⑤优化和个性化系统

通过前四步,已经得到了一个可以正常工作的系统。之后只需根据个人的工作习惯进行设置。

3、给出现今有哪些用于嵌入式开发的芯片名称,

他们分别是哪些公司的产品?体系结构是什么?

①基于32位RISC微处理器芯片的ARM7系列,ARM9系列,ARM9E系列,

ARM10E系列都是ARM公司的产品,arm9以上的体系结构是哈佛总线体系结构以下的是冯。诺依曼体系。

②TI公司的DSP处理器内核是哈佛总线体系结构。

③PowerPC公司的芯片,基于RISC结构,是哈佛总线体系结构。

④MIPS公司的芯片,基于RISC结构,是哈佛总线体系结构。

4、现今较流行的嵌入式操作系统有哪些

① VxWork

② Linux

③μC/OS-Ⅱ

④ windows CE

⑤ Android

5、PXA270嵌入式开发板的接口有哪些?

全双工异步串行口和硬件流控制串行口,10M标准以太网接口10M/100M标准以太网接口,USB接口,红外通讯口,音频接口,存储卡口,视频和触摸屏接口摄像头接口,RTC时钟接口,调试接口,下载接口,电源接口。

6、请写出Nor Flash和Nand Flash的区别。

Flash是一种非易失闪存,它具有和ROM一样的掉电后数据不会丢失的

相关文档
最新文档