第1章: 答案-填空题 1.T、D、M、I 2.存储空间管理单元(MMU)和8K Cache片内缓存(提高CPU性能) 3.QFP、TQFP、PQFP、LQFP、BGA、LBGA 4.37、32、31、6 5.大端格式和小端格式 6.片内的MMU、指令和数据缓存(IDC)、写缓冲(Write Buffer) 答案-问答题 1.ARM内核有四个功能模块T、D、M、I,可供生产厂商根据不同用户的要求来配置生产ARM芯片。 其中T功能模块表示16位Thumb,可以在兼顾性能的同时减少代码尺寸。M功能模块表示8位乘法器。D功能模块表示Debug,该内核中放置了用于调试的结构,通常它为一个边界扫描链JTAG,可使CPU进入调试模式,从而可方便地进行断点设置、单步调试。 I功能模块表示EmbeddedICE Logic,用于实现断点观测及变量观测的逻辑电路部分,其中的TAP控制器可接入到边界扫描链。 2.一个ARM720T内核基本由以下四部分组成。 (1)ARM7TDMI CPU核。该CPU核支持Thumb指令集、核调试、增强的乘法器、JTAG及嵌入式ICE。它的时钟速率可编程为18MHz、36MHz、49MHz、74MHz。 (2)内存管理单元(MMU)与ARM710核兼容,并增加了对Windows CE的支持。该内存管理单元提供了地址转换和一个有64个项的转换旁路缓冲器。 (3)8KB单一指令和数据高速缓冲存储器,以及一个四路相联高速缓冲存储器控制器。 (4)写缓冲器Write Buffer。 3.通用寄存器包括R0~R15,可以分为三类: (1)未分组寄存器R0~R7; (2)分组寄存器R8~R14; (3)程序计数器PC(R15)。 4.Thumb状态下的寄存器与ARM状态下的寄存器有如下关系: (1)Thumb状态下和ARM状态下的R0~R7是相同的。 (2)Thumb状态下和ARM状态下的CPSR和所有的SPSR是相同的。 (3)Thumb状态下的SP对应于ARM状态下的R13。 (4)Thumb状态下的LR对应于ARM状态下的R14。 (5)Thumb状态下的程序计数器对应于ARM状态下的R15。 5.当一个异常出现以后,ARM微处理器会执行以下几步操作。 (1)将下一条指令的地址存入相应连接寄存器LR,以便程序在处理异常返回时能从正确的位置重新开始执行。若异常是从ARM状态进入,则LR寄存器中保存的是下一条指令的地址(当前PC+4或PC+8,与异常的类型有关);若异常是从Thumb状态进入,则在LR寄存器中保存当前PC的偏移量,这样,异常处理程序就不需要确定异常是从何种状态进入的。例如:在软件中断异常SWI,指令 MOV PC,R14_svc总是返回到下一条指令,不管SWI是在ARM状态执行,还是在Thumb状态执行。 (2)将CPSR复制到相应的SPSR中。 (3)根据异常类型,强制设置CPSR的运行模式位。 (4)强制PC从相关的异常向量地址取下一条指令执行,从而跳转到相应的异常处理程序处。 第2章: 答案-填空题 1.ARM指令集、Thumb指令集 2.寄存器寻址、立即寻址、寄存器偏移寻址、寄存器间接寻址、基址寻址、多寄存器寻址、堆栈寻址、块拷贝寻址、相对寻址 3.跳转指令、数据处理指令、程序状态寄存器(PSR)传输指令、Load/Store指令、协处理器指令、异常中断产生指令 4.符号定义伪指令、数据定义伪指令、汇编控制伪指令、宏指令、其他伪指令 5.在C/C++代码中嵌入汇编指令;从汇编程序中访问C程序变量;汇编程序、C/C++程序间的相互调用 6.filename.c 源文件、filename.h头文件、filename.o目标文件、filename.s汇编代码文件、filename.lst列表文件 答案-问答题 1.一条典型的ARM指令语法格式如下所示: {}{S},,< shifter_operand > 其中: opcode是指令操作符编码; cond 是指令执行的条件编码; S决定指令的操作是否影响CPSR的值; Rd是目标寄存器编码; Rn是包含第1个操作数的寄存器编码; shifter_operand 表示第2个操作数。 2.有4种类型的堆栈,表示递增和递减的满堆栈和空堆栈的各种组合。 ? 满递增:堆栈通过增大存储器的地址向上增长,堆栈指针指向内含有效数据项的最高地址。指令如LDMFA,STMFA等。 ? 空递增:堆栈通过增大存储器的地址向上增长,堆栈指针指向堆栈上的第一个空地址。指令如LDMEA,STMEA等。 ? 满递减:堆栈通过减小存储器的地址向下增长,堆栈指针指向内含有效数据项的最低地址。指令如LDMFD,STMFD等。 ? 空递增:堆栈通过减小存储器的地址向下增长,堆栈指针指向堆栈下的第一个空地址。指令如LDMED,STMED等。 3.ARM协处理器指令包括以下3类: ? 用于ARM处理器初始化ARM协处理器的数据处理操作。 ? 用于ARM处理器的寄存器和ARM协处理器的寄存器间的数据传送操作。 ? 用于在ARM协处理器的寄存器和内存单元之间传送数据。 4.常见的符号定义伪指令有如下几种。 ? 用于定义全局变量的GBLA、GBLL和GBLS。 ? 用于定义局部变量的LCLA、LCLL和LCLS。 ? 用于对变量赋值的SETA、SETL、SETS。 ? 为通用寄存器列表定义名称的RLIST。 5.汇编语言程序中常用的符号,必须遵循以下的约定。 ? 符号区分大小写,同名的大、小写符号会被编译器认为是两个不同的符号。 ? 符号在其作用范围内必须唯一。 ? 自定义的符号名不能与系统的保留字相同。 ? 符号名不应与指令或伪指令同名。 6.可执行映像文件通常由以下几部分构成。 ? 一个或多个代码段,代码段的属性为只读。 ? 零个或多个包含初始化数据的数据段,数据段的属性为可读写。 ? 零个或多个不包含初始化数据的数据段,数据段的属性为可读写。 第3章: 答案-填空题 1.装载映像文件、程序执行、查看寄存器和内存空间 2.基本的调试功能、C语言库的支持、通信支持、任务管理功能、异常中断处理 3.在ARMulator或开发板上开发应用程序;建立严重依赖Angel的应用程序;建立很少依赖Angel的应用程序;生成最终的产品 4.FD(满且地址递减) 5.测试访问端口TAP(Test Access Port)控制器、旁路(bypass)寄存器、指令寄存器和数据寄存器、ARM架构处理器 答案-问答题 1.初始化存储器就是设置ARM处理器的某些寄存器,这可以通过两种方法完成:第一种,如果ARM处理器内部有SRAM,则可以建立一个简单的工程,该工程对涉及存储器映射的寄存器初始化;第二种,利用AXD的命令行配置那些寄存器,具体步骤如下: 首先在C:\下建立文本文件memory_map.txt,该文件设置寄存器的值,其格式为: setmem ADDRESS,DATA,SIZE 其中,ADDRESS是寄存器的地址,DATA是该寄存器要设置的值,SIZE是数据宽度,一般为32,可以设置多个寄存器;然后打开AXD Debugger的命令行窗口,执行下面的命令,配置对应的控制寄存器。 >obey C:\memory_map.txt 执行完毕后,memory_map.txt中的寄存器就配置完毕,存储器就映射到预定的地址空间了。 2.基于Angel的调试系统由下面两部分组成,这两部分之间通过一定的通信信道连接起来,通常使用的信道是串行口。 ? 位于主机上的调试器(debugger)。它接受用户命令,将其发送到目标机上的Angel,使其执行一定的操作,并将目标机上Angel返回的数据以一定的格式显示用户。ARM公司提供的各调试器都支持Angel。对于其他的调试器,如果它支持Angel所使用的调试协议ADP,则也可以支持Angel。 ? 位于目标机上的Angel调试监控程序。它接受主机上调试器传来的命令,返回相应的数据。通常Angel有两个版本:完整版本包含所有的Angel功能,主要可以用于调试应用系统;最小版本包含一些有限的功能,可以包含在最终的产品中。 3.使用Angel所需要的资源包括: ? 系统资源。Angel使用的系统资源包括可配置的系统资源和不可配置的系统资源。可配置的系统资源包括一个ARM程序的SWI号和一个Thumb程序的SWI号;不可配置的资源包括两条未定义的ARM指令和一条未定义的Thumb指令。 ? ROM和RAM资源。Angel需要使用ROM来保存其代码,使用RAM来保存其数据。当需要下载一个新版本的Angel时,还需要使用额外的RAM资源。 ? 异常中断向量。Angel通过初始化系统的异常中断向量表来安装自己,从而使得Angel有机会接管系统的控制权,来完成相应的功能。 ? FIQ及IRQ异常中断。Angel需要使用下面的异常中断来实现主机和目标机之间的通信功能。推荐使用IRQ异常中断。 ? FIQ异常中断; ? IRQ异常中断; ? 同时使用FIQ异常中断和IRQ异常中断。 ? 数据栈。Angel需要使用自己的特权模式的数据栈。如果用户应用程序需要调用Angel功能,则用户需要建立自己的数据栈。 4.在使用完整版本的Angel开发应用程序时,由于Angel需要一定的资源,给程序设计带来了一定的限制。这些限制包括: ? Angel需要使用自己的处理器特权模式下的数据栈,因此在Angel和实时操作系统RTOS一起使用时,必须确保在Angel运行时,RTOS不会切换处理器的模式。否则可能造成死机。 ? 用户应用程序尽量避免使用SWI 0x123456以及SWI 0xab。这两个SWI异常中断号保留给Angel使用。Angel使用它们来实现目标程序中C语言运行时库的semihosting请求。 ? 如果用户应用程序中使用了SWI,则在退出SWI时必须将各寄存器的值还原成进入SWI时的值。 ? 如果应用程序中需要使用未定义的指令异常中断,必须注意Angel使用了未定义的指令异常中断。 5.JTAG测试信号由下面五个信号组成,分别描述如下。 ? TRST:测试复位输入信号,测试接口初始化。 ? TCK:测试时钟,在TCK时钟的同步作用下,通过TDI和TDO引脚串行移入/移出数据或指令;同时,也为测试访问端口TAP控制器的状态机提供时钟。 ? TMS:测试模式选择信号,控制测试接口状态机的操作。 ? TDI:测试数据输入线,其串行输入数据至边界扫描寄存器或指令寄存器(由TAP控制器的当前状态及已保存在指令寄存器中的指令来控制)。 ? TDO:测试数据输出线,把从边界扫描链采样的数据传播至串行测试电路中的下一个芯片。 第4章: 答案-填空题 1.嵌入式处理器、相关支撑硬件、嵌入式软件系统 2.存储设备、通信设备、显示设备 3.数据总线、地址总线、控制总线 4.Vxwork、WinCE、Linux、pSOS 5.操作系统、应用程序 答案-问答题 1.嵌入式Linux作为嵌入式操作系统,与其他嵌入式操作系统相比,优点有:开放源代码、免费、开发周期短等;缺点是实时性较差。 2.在高频电路设计中,首先要注意电源的质量与分配,其次要注意信号线的分布和地线的布线,布线时最好使电源线、地线的走线方向与数据线的走线方向一致。 3.(1)新型的和适合应用场合的ARM提高系统的程序效率; (2)低功耗器件和贴片封装,降低功耗和提高抗干扰; (3)通用型平台,减小开发成本和开发周期; (4)充分利用富余端口,有利于产品的升级; (5)单芯片解决方案; (6)LED方便调试。 第5章: 答案-填空题 1.交流、直流 2.运行、睡眠、空闲 3.5V、3.3V、2.5V、1.8V 4.地线、电源线、信号线 答案-问答题 1.软启动时,处理器被复位,但是SDRAM 里面的内容仍旧保持。 2.显示设备的耗电最多,如TFT LCD/LED。 3.系统中的模拟电源一般由数字电源产生,可以通过: (1)数字电源与模拟电源,以及数字地与模拟地之间加铁氧体磁珠或电感构成无源滤波电路; (2)采用多路稳压器的方法将模拟地和数字地连接。 第6章: 答案-填空题 1.SRAM、DRAM、Flash ROM 2.SDRAM、DDR 3.SDRAM、ROM 答案-问答题 1.SDRAM 具有高速、大容量等优点,是一种具有同步接口的高速动态随机存储器,在ARM系统中主要用作程序的运行空间、数据及堆栈区。 2.外启动方式下,ARM从外部程序存储器取指令执行;内启动时,ARM运行片上ROM中固化的启动程序。 第7章: 答案-填空题 1.100、10 2.用户模块接口、MTD抽象、MTD设备驱动模块 3.系统代码、用户信息 答案-问答题 1.嵌入式设备中程序运行方式有两种:一种是将程序加载到SDRAM中运行,另一种是程序直接在其所在的ROM/Flash存储器中运行。 2.Flash存储器常当作硬盘使用,而SDRAM则类似内存,Flash用于存放程序代码、常量表,以及一些在系统掉电后需要保存的用户数据等。 3.Nor-Flash的读取速度比Nand-Flash快; Nand-Flash的写入速度和擦除速度比Nor-Flash快。 第8章: 答案-填空题 1.字符设备、块设备、网络设备 2.中断、查询、DMA 3.静态编译进内核、编译成模块动态加载 答案-问答题 1.主要区别是:在对字符设备发出读/写请求时,实际的硬件I/O就紧接着发生了。块设备则利用一块系统内存作为缓冲区,当用户进程对设备请求能满足用户的要求时,就返回请求的数据;如果不能,就调用请求函数来进行实际的I/O操作。 2.设备驱动的功能有: ? 对设备初始化和释放; ? 把数据从内核传送到硬件和从硬件读取数据; ? 读取应用程序传送给设备文件的数据和回送应用程序请求的数据; ? 检测和处理设备出现的错误。 3.具体步骤是: ? 模块化驱动程序; ? 在内核空间申请和释放内存; ? 分配字符设备主设备号和子设备号; ? 在内核空间注册与注销; ? 在内核空间提供系统调用函数。 第9章: 答案-填空题 1.复位、未定义指令、软件中断、指令预取中止、数据中止、外部中断请求、快速中断请求 2.中断挂起寄存器、中断屏蔽寄存器、中断优先级寄存器、中断偏移寄存器 3.定时器中断、串口输入/输出中断、接口中断、链路中断 答案-问答题 1.它们的区别如下: ? 定时器中断模块主要是为操作系统提供时钟基准; ? 串口输入和输出中断模块主要给用户提供接口,方便程序的下载与调试; ? 接口中断模块负责每2ms与总线上其他板卡通信一次; ? 链路中断模块也是每隔一段时间处理一次链路的数据,它的任务最重。 2.将中断处理尽可能搬到内部RAM或SDRAM。中断处理函数代码放在Flash中,数据放在SDRAM 中。通过改变编译配置,将所有的中断处理函数都拷贝到ARM内部RAM或者SDRAM中。 第10章: 答案-填空题 1.上电复位、外部硬复位、内部硬复位、JTAG 复位、外部软件复位、内部软件复位 2.同步、异步 答案-问答题 1.复位控制器的功能是确定复位原因,同步复位模块,并且复位相应片内的逻辑模块。 2.一方面复位低电平时间足够长(20ms以上),保证ARM可靠复位;另一方面保证复位电路稳定性良好,防止ARM 误复位。 第11章: 答案-填空题 1.积分型、逐次逼近型、并行比较型、∑-△型、流水线型 2.并行比较型 3.采样、保持、量化、编码 答案-问答题 1.积分型A/D转换器主要应用于低速、精密测量等领域;逐次逼近型A/D转换器适用于中速率而分辨率要求较高的场合;并行比较A/D转换器适用于速度要求特别高的领域,如视频A/D转换;∑-△型调制型A/D转换器主要应用于高精度数据采集系统,特别是数字音响系统、多媒体、地震勘探仪器、声纳等电子测量等领域;流水线型A/D转换器主要应用于对频域特性要求较高的通信系统,对噪声、带宽和瞬态速度等时域特性要求较高的CCD成像系统,以及对时域和频域特性都要求较高的数据采集系统。 2.直接D/A转换器直接将输入的数字信号转换为输出的模拟信号;而间接D/A转换器是先将输入的数字信号转换为某种中间量,然后再将这种中间量转换成为输出的模拟量。 第12章: 答案-填空题 1.4、16、256 2.段位式LCD、字符式LCD、点阵式LCD 3.32、16 4.行、列 答案-问答题 1.对内体现在内部RAM 的大小、译码电路的复杂程度、内部的时序及电源电路等;对外体现在驱动行和列端口的多少、与ARM的接口功能等。 2.用户可以将Frame-buffer看成是显示内存的一个映像,直接进行读写操作,而写操作可以立即反映在屏幕上,方便地实现视频显示。 第13章: 答案-填空题 1.独立式按键接口、行列式接口、专用芯片式接口,行列式接口 2.中断、查询 答案-问答题 1.行列式按键接口的优点是相对于独立接口方式可以节省很多I/O资源,相对于专用芯片键盘可以节省成本而且更为灵活。缺点是需要用软件处理消抖、重键等。它常用于按键数量较多,又不想使用专用键盘芯片的场合。 2.键盘扫描的过程是将列线逐列置成低电平,然后读取行线状态,直到行线中出现低电平,可知那一列是低电平,然后将行线与列线的状态装入键码寄存器,进行按键译码,得到按下的按键的相应编码,完成按键扫描。 第14章: 答案-填空题 1.并行通信、串行通信;并行总线、串行总线 2.异步串行通信、同步串行通信;RS-232C、RS-422、RS-485 3.RS-232C、负 答案-问答题 1.一般情况下,在选择通信方式时,需要考虑以下几个主要方面。 ? 通信速率。标准通信接口都有相应的最大通信速率,即相应信道容量的最大值。 ? 通信距离。通信速率和通信距离两个物理参量互相依存,互相制约。适当地减小通信速率,可以在一定程度上增加通信的距离;相应的,在允许一定的误码率条件下,可以提高相应的通信速率。 ? 抗干扰能力。为保证一定的通信速率和一定的通信距离,需要相应的通信媒介和比较好的抗干扰能力,以降低误码率。在通信中,除了物理的抗干扰能力外,一般采用信道编码的方式来提高系统的抗干扰能力,从而保证信号的可靠性传输。 2.异步串行通信协议规定字符数据的传输规范,包括: ? 起始位。通信线上没有数据被传送时处于逻辑“1”状态,当发送设备要发送一个字符数据时,首选发送一个逻辑“0”信号,这个逻辑低电平就是起始位。起始位通过通信线传向接收机,接收设备检测到这个低电平后,就开始准备接收数据位信号。起始位所起的作用就是使设备同步,通信双方必须在传送数据位前一致同步。 ? 数据位。当接收设备收到起始位后,开始接收数据位。数据位的个数可以是5~9位,PC机中经常采用7~8位数据传送。在字符传送过程中,数据位从最低有效位开始传送,依次在接收设备中被转换为并行数据。 ? 奇偶校验位。数据位发送完毕后,为了保证数据的可靠性传输,常传送奇偶校验位。奇偶校验用于有限差错检测。如果选择偶校验,则数据位和奇偶位的逻辑“1”的个数必须为偶数;相反,如果是奇校验,则逻辑“1”的个数为奇数。 ? 停止位。在奇偶位或者数据位(当无奇偶校验时)之后发送停止位。停止位是一个字符数据的结束,可以是1~2位的低电平,接收设备收到停止位后,通信线路便恢复逻辑“1”状态,直到下一个字符数据的起始位到来。 ? 波特率设置。通信线路上传送的所有位信号都保持一致的信号持续时间,每一位的宽度都由数据的码元传送速率确定,而码元速率是单位时间内传送码元的多少,即波特率。 3.UART模块部分主要实现计算机主机与ARM之间的数据传输。 第15章: 答案-填空题 1.SCL串行时钟线、SDA串行数据线 2.100K、100K、3.4M 3.字节写入方式、页写入方式 答案-问答题 1.串行时钟SCL用于产生器件所有数据发送或接收的时钟;串行数据/地址SDA用于传送地址和所有数据的发送或接收。 2.取决于I2C芯片是否必须启动数据的传输还是仅仅被寻址。 第16章: 答案-填空题 1.MAC控制器、物理层接口 2.CSMA/CD、IEEE802.3 MAC控制层 3.硬件复位 答案-问答题 1.在收到由主机发来的数据报后(从目的地址域到数据域),侦听网络线路。如果线路忙,就等到线路空闲为止,否则,立即发送该数据帧。 (1)发送过程中,首先添加以太网帧头(包括先导字段和帧开始标志),然后生成CRC校验码,最后将此数据帧发送到以太网上。 (2)接收过程时,将从以太网收到的数据帧在经过解码、去帧头和地址检验等步骤后缓存在片内。在通过CRC校验后,根据初始化配置情况,通知RTL8019收到了数据帧,最后,以某种传输模式传到ARM的存储区中。 2.一是看状态指示LED是否有闪烁,二是用专业软件Sniffer监听到网卡是否不断发送数据包。 第17章: 答案-填空题 1.USB互连、USB从端口、USB主端口 2.USB集线器、功能设备 3.1.5~12、120~240 4.同步、中断、控制、批量 5.Windiver、Microsoft DDK、DriverStudio 答案-问答题 1.USB控制器的端口适用于不同类型的设备,例如图像、打印机、海量存储器和通信设备。 2.USB接口数据的正确传输依靠以下三个部分。 (1)从设备中的固件程序; (2)上位机中的驱动程序; (3)上位机中的应用程序。 3.USB的显著特点有: (1)高速数据传送; (2)高自由度连接/拓扑结构; (3)带电插拔/即插即用; (4)内置电源供给; (5)支持多种传输模式。 第18章: 答案-填空题 1.48 2.MAC、IP 3.8、8 答案-问答题 1.数据链路层把上层数据封装成带有目的MAC地址的帧发出,并接收目的MAC地址的数据帧,然后拆封以太网报头再发往上层协议。 2.系统首先初始化网络及串口设备,当有数据从以太网传过来时,ARM对数据报进行分析,如果是ARP数据包,则转入ARP处理程序;如果是IP数据包且传输层使用UDP,端口正确,则认为数据报正确,数据解包后,将数据部分通过端口输出。反之,如果收到数据,则将数据按照UDP格式打包,送入以太网控制芯片,由其将数据输出到以太网中。 第19章: 答案-填空题 1.启动加载、下载 2.xmodem、ymodem、zmodem 3.bin 答案-问答题 1.第一阶段主要是进行CPU和体系结构的检查、CPU本身的初始化,以及页表的建立等。初始化是从内核入口Entry开始到start_kernel前结束。 第二阶段主要是对系统中的一些基础设施进行初始化。 最后是更高层次的初始化,如根设备和外部设备的初始化。 2.Boot-loader的作用与PC 的BIOS 类似,通过Boot-loader可以完成对ARM主要部件如CPU、SDRAM、Flash、串行口的初始化,同时下载文件到硬件板,对Flash 进行擦除与编程。 3.stage1主要完成:硬件设备初始化;为stage2准备RAM空间;拷贝stage2到RAM空间中;设置好堆栈;跳转到stage2的入口。 stage2主要完成:初始化硬件设备;检测系统内存映射;将kernel映像和根文件系统映像从Flash上读到RAM;为内核设置启动参数;调用内核。 第20章: 答案-填空题 1.Boot-loader、Kernel Image、Root File 2.交叉 3.处理器、平台 4.binutils、gcc、glibc 答案-问答题 1.完成Linux体系结构的初始化,内部中断、外部中断、软中断的初始化,以及与进程有关的初始化(计时器初始化、控制台初始化、内存模块初始化)。 2.二进制文件处理工具binutils主要应用于移植调试操作系统初期的辅助开发;编译工具gcc用于编译内核代码;glibc用于链接和运行库文件。 第21章: 答案-填空题 1.Romfs、Cramfs、JFFS、JFFS2 2.根文件系统、普通文件系统 3.用户层、内核层、底层驱动、硬件驱动 4.页头、页数据 答案-问答题 1.(1)arch子目录是所有和体系结构相关的核心代码; (2)include子目录是编译核心所需要的大部分头文件; (3)init目录包含kernel初始化代码; (4)mm目录是所有独立于CPU体系结构的内存管理代码; (5)kernel目录实现了大多数Linux系统的内核函数; (6)drivers目录是系统所有的设备驱动程序; (7)lib目录放置核心的库代码,net目录是核心与网络相关的代码,ipc目录包含核心的进程间通信的代码,fs目录为文件系统代码和各类型文件的操作代码。 2.(1)可写性; (2)永久存储性; (3)掉电稳定性; (4)压缩性; (5)在RAM时间。 3.需要考虑以下几点: (1)Flash存储器中各个块的最大擦除次数是有限的,如果能够均匀地使用各个块,就能延长Flash的整体寿命,这就需要文件系统有磨损均衡的功能。 (2)为了提高Flash存储器的利用率,文件系统应该有对存储空间的碎片收集功能。 (3)考虑出现嵌入式系统意外掉电的情况,文件系统还应该有掉电保护的功能,保证系统在出现意外掉电时也不会丢失数据。 第22章: 答案-填空题 1.X Window、MicroWindows、OpenGUI、Qt/Embedded、MiniGUI、PicoGUI 2.Embedded Linux GUI Toolkit、Development Kit 3.Frame-buffer 答案-问答题 1.(1)最底层是屏幕、鼠标或触摸屏和键盘的驱动程序,实现系统的显示功能以及,满足用户的输入需求。 (2)中间层是可移植的图形引擎,提供对画线、填充、剪切和着色的支持。 (3)最上层提供多种API应用程序。 2.(1)占用的存储空间以及运行时占用资源少。 (2)运行速度以及响应速度快。 (3)可靠性高。 (4)便于移植和定制。 第23章: 答案-填空题 1.TCP、UDP、ICMP、IGMP、Telnet、FTP 2.网卡接收任务、TCP任务、UDP任务 3.4、2 4.应用层、TCP/IP协议层、网卡驱动 5.UDP 答案-问答题 1.在需要通信的信息量比较小,而且通信环境可靠性比较好的场合下,不需要选择TCP而选择利用UDP,这样在软件设计上可以简化,硬件上可以节约成本。 2.UDP和TCP的主要区别是两者在如何实现信息的可靠传递方面不同。TCP协议中包含了专门的传递保证机制,而UDP协议并不提供数据传送的保证机制。 第24章: 答案-填空题 1.G.7xx、MPEG-x、AC-x 2.AD/DA转换、压缩编码、数字信号处理、信道编码/调制 3.PCM 4.采样率 5.波形编码、参数编码、混合编码 6.IIS总线格式、MSB-Justified 格式 7.正常传输模式、DMA传输模式、发送/接收模式 答案-问答题 1.(1)采用专用的音频芯片如MP3编解码芯片,芯片集成音频编解码算法。 (2)利用A/D语音采集加计算机组成硬件平台,音频编解码算法由计算机上的软件来实现。 (3)使用A/D采集芯片加带ARM核的数据处理芯片。 2.主要应用领域包括: (1)消费电子类数字音响设备。 (2)数字多媒体应用。 (3)广播数字电视系统。 第25章: 答案-填空题 1.5、D、R、G、B、行、场 2.352×288、176×144 3.亮度与色差、红绿蓝三基色 答案-问答题 1. 第一种方案是采用代理服务器方式;第二种方案是直接在处理器上实现TCP/IP协议方式;第三种方案是通过嵌入式操作系统上运行TCP/IP协议方式。 2.(1)实时性好,能满足数据采集和数据处理的实时性要求。 (2)性价比高,在满足要求的情况下,系统成本应尽量低。 (3)可控性好,能够实现远距离控制和数据传输。 3.CMOS技术的最大优点是每一个像素单元可以集成一个或多个晶体管,可以降低系统功耗、体积,提高电池效率。 第26章: 答案-填空题 1.位置、方向、分类、脊线 2.指纹图像的获取、指纹图像的预处理、指纹特征的提取、指纹特征匹配 3.光学取像设备、电容传感器 4.图像增强、计算方向图、二值化、细化 答案-问答题 1.指纹识别、视网膜识别、虹膜扫描识别、手掌几何识别、声音识别、面部识别等。 2.总体特征是指用人眼直接就可以观察到的特征,包括基本纹路图案、模式区、核心点、三角点、式样线和纹数等。局部特征是指指纹上的特征点,即指纹纹路上的终结点、分叉点和转折点。