2008年下半年软件水平考试(中级)嵌入式系统设计师下午(应用技
- 格式:doc
- 大小:45.50 KB
- 文档页数:9
2008年下半年软件水平考试(中级)嵌入式系统设计师下午(应用技术)试题真题试卷 (题后含答案及解析)
题型有:1. 试题一 2. 试题二 3. 试题三 4. 试题四 5. 试题五
试题一
下面是关于某测试设备的叙述,仔细阅读并分析,回答问题1至问题4,将答案填入对应栏内。【说明】 某测试设备是一个嵌入式系统,是为了测试一个专用设备而研制的,如下图所示。测试设备用于测试被测设备的各项软、硬件功能,包括2路RS232串口、2路模拟量、电源以及专用设备的其他内部部件。在被测专用设备内部有专门的自检测程序,来测试内部各部件。测试设备的串口与被测设备相连接,加电后,通过按测试设备的周边键与被测设备握手同步,再向被测设备发送检测消息,被测设备测试自己的某项功能后,通过串口将测试结果发回给测试设备,显示在测试设备的LCD屏上。 测试设备的硬件由处理器模块、IO模块和电源模块组成,处理器模块上有CPU、存储器、2路串口、键盘控制器;IO模块上有D/A、A/D转换器,用作为模拟量输入和采集电源的电压值,以测试被测设备的模拟量和电源;电源模块提供测试设备的电源;测试设备模块间采用ISA总线。 测试设备的2路串口与被测设备相连,同时测试设备的D/A、A/D转换控制器的输入线路与被测设备的模拟量和电源线相连,可直接测试被测设备的2路RS232串口、2路模拟量、电源。 测试设备的软件由底层驱动(串口驱动、D/A、A/D驱动和自定义键盘驱动)、嵌入式操作系统和测试软件组成。
1. 设存储器容量为4兆字,字长32位,模块数为4,分别用顺序方式和交叉方式进行组织,存储周期为200ns,数据线宽度32位,总线传送周期为50ns,请计算顺序存储器和交叉存储器的平均存取时间(单位:ns)和带宽(单位:位/秒)。
正确答案:
解析:考查存储器的组织方式和性能计算。 顺序存储器和交叉存储器连续读出m=4个字的信息总量是:q=32位×4=128位 顺序存储器和交叉存储器连续读出4个字所需的时间分别是: T2=m×T=4×200ns=800ns=8×10-7(s)
T1=T+(m-1)×总线传送周期=200ns+3×50ns=350ns=3.5×10-7(s) 顺序存储器和交叉存储器的平均存取时间分别是: T2a=T=200ns T1a=350ns/4=87.5ns
顺序存储器带宽:W2=q/T2=128/(8×10-7)=16×107(位/秒) 交叉存储器带宽:W1=q/T1=128/(3.5×10-7)≈36.5×107(位/秒)
2. 测试设备的软件工作过程为:测试设备和被测设备同时加电,测试设备的操作系统启动后自动执行测试程序。测试程序首先采集被测设备的电源是否正常,并在屏幕显示测试信息。如果被测设备正常,则向被测设备发送握手消息,与被测设备同步;如果同步不上,则报“不能与设备同步”,测试结束。接下来,测试程序接收周边键命令,按要求测试。如果测试2路模拟量,则由测试设备通过D/A转换,向被测设备发送模拟信号,被测设备得到模拟信号,判断正确性
后,通过串口将结果返回给测试设备。另外,被测设备还有4个功能项是通过串口发送测试命令给被测设备的,由被测设备内的自测试程序测试后,将结果再通过串口传回给测试设备。 请完成下图所示的流程图,按编号将正确答案填写在对应栏中。
正确答案:(1)测试电源。 (2)与测试设备同步。 (3)接收周边键命令。
(4)通过数模转换模块发送模拟量1给被测设备。 (5)通过数模转换模块发送模拟量2给被测设备。 (6)通过串口发送测试功能1命令给被测设备。 (7)通过串口发送测试功能2命令给被测设备。 (8)通过串口发送测试功能3命令给被测设备。 (9)通过串口发送测试功能4命令给被测设备。
解析:考查软件的测试流程,依据题意以及问题2描述的测试过程,其完整的测试软件流程图如下图所示。
3. 请把下面列出的6个空位的答案填入相应的位置。 1.ISA总线为(1)位总线。 2.由模拟信号到数字信号的转换过程称为(2)。 3.将数字信号变成模拟信号的过程称为(3)。 4.D/A转换器的主要性能指标有(4)、(5)、(6)。(回答其中的三个主要性能指标即可)
正确答案:(1)16 (2)AD转换,或A/D转换 (3)DA转换,或D/A转换 D/A转换器的主要性能指标除建立时间外,还有分辨率、转换精度、线性误差。所以(1)、(2)、(6)应分别填写上述三个的任意一个(不计次序)。
解析:考查总线及数模转换知识。 ISA总线即工业标准体系结构(Industry
Standard Architecture),为16位总线,是最早出现的微型计算机总线标准,广泛应用于嵌入式系统。 由模拟信号到数字信号的转换过程称为AD转换,或A/D转换,或模数转换;将数字信号变成模拟信号的过程称为DA转换,或D/A转换,或数模转换。 D/A转换器的主要性能指标有建立时间、分辨率、转换精度、线性误差等。
4. 在本测试设备的异步串行传输中,数据格式为:数据位8位、奇校验位1位、停止位1位。当波特率为9600b/s时,每秒钟传送的有效数据是多少字节?为保证数据收发正确,试分析发送方和接收方时钟允许的误差范围,并以百分比形式给出最大误差。
正确答案:
解析:考查异步数据传输应用知识。 每秒钟传送的有效数据:9600÷(1+8+1+1)=872.7字节 分析发送方和接收方时钟允许的最大误差: 在启动位同步后,在8位数据位、1位奇校验位、1位停止位之后累积的最大误差为(8+1+1)×△,该值应小于1/2位,即(8+1+1)×△≤1/2。 因此,最大误差△为5%。
试题二
阅读以下关于输入输出接口设计的说明,回答问题1至问题3,将解答填入对应栏内。【说明】 下图为采用查询方式工作的输入接口,地址译码器中A15~A1直接接到或门的输入端。
5. 输入设备在向接口传送8位数据的同时,还传送负脉冲STB,该信号的作用是什么?
正确答案:脉冲除了将输入设备的数据锁存到锁存器的输出端外,该脉冲还用来触发D触发器,使其输出Q为高电平,此高电平表示外设有数据准备好。
解析:本题考查输入输出接口设计以及输入输出控制方式应用知识。 计算机与外设之间进行数据传送主要有三种基本控制方式:查询方式、中断方式和DMA方式。 查询方式是通过执行输入/输出查询程序来完成数据传送的,其工作原理是:当CPU。启动外设工作后,不断地读取外设的状态信息进行测试,查询外设是否准备就绪,如外设准备好,则可以进行数据传送:否则,CPU继续读取外设的状态信息进行查询等待,直到外设准备好。 采用程序查询方式进行数据传送时,实际上在外设准备就绪之前,CPU一直处于等待状态,致使CPU的利用率较低。倘若CPU按这种方式与多个外设传送数据时,就需要周期性的依次查询每个外设的状态,浪费的时间就更多,CPU的利用率就更低。因此,这种方式适合于工作不太繁忙的系统。 中断方式是一种硬件和软件相结合的技术,中断请求和处理依赖于中断控制逻辑,而数据传送则是通过执行中断服务程序来实现的。这种方式的特点是:在外设工作期间,CPU无须等待,可以处理其他任务,CPU与外设可以并行工作,提高了系统效率,同时又能满足实时信息处理的需要。但在进行数据传送时,仍需要通过执行程序来完成。 采用中断方式可以提高CPU的利用率,但有些I/O设备(如磁盘、光盘等)需要高速而又频繁地与存储器进行批量的数据交换,此时中断方式已不能满足速度上的要求。而直接存储器处理DMA方式,可以在存储器与外设之间开辟一条高速数据通道,使外设与存储器之间可以直接进行批量数据传送。实现DMA传送,要求CPU让出系统总线的控制权,然后由专用硬件设备(DMA控制器)来控制外设与存储器之间的数据传送。这种传送方式的特点是:在数据传送过程中,由DMA控制器参与工作,不需要CPU的干预,批量数据传送时效率很高,通常用于高速I/O设备与内存之间的数据传送。 本题采用程序查询方式从输入设备读取数据。 接口图中的选通信号低电平有效,是由外设提供的输入信号。当该信号有效时,将输入设备送来的数据锁存至输入锁存器中临时存储起来,并设置数据已经准备好的状态,标志该状态的是上图中的D触发器。 D触发器的初始状态为0(数据未准备好),当输入设备的数据准备好时,通过CP将D触发器设置为1,标明数据已准备好,CPU可随时读取。 要从输入设备读取数据(有效),首先应确定输入设备的端口地址,包括状态端口和数据端口。从题图中可知,要读取输入设备的状态端口(即数据是否准备好),需进行下面的运算:
A15+A14+A13+…+A2+A1++ 即地址信号A15、A14、…、A2、A1与IOR进行或运算(经过或门)后的输出,与A0经非门后的输出再进行或运算,若为0,则可将D触发器中的状态输出至数据线D7,因此,要求A15、A14、…、A2、A1全部为0且A0为1,即状态端口地址为0001H。同理,要读取输入设备的数据,需进行下面的运算: A15+A14+A13+…+A2+A1++A0 即当A15、A14、…、A2、A1全部为0并且A0也为0,才能通过三态门将数据送往数据总线,因此数据端口地址为0000H。 若用查询方式将输入设备的一个数据读入CPU的BL寄存器中,则根据其工作方式,需要对I/O接口的状态不断进行测试,一旦满足条件(准备好传送数据即外设就绪),紧接着就执行数据传送指令,程序如下: START: MOV DX,0001H ;外设的状态端口号送入DX寄存器
NEXT1: IN AL,DX ;从外设端口读取状态并暂存入AL NEXT2:
AND AL,80H ;判断数据是否就绪(D7是否为1)JZ NEXT1 ;未就绪(D7为0),则继续查询,否则开始读取数据MOV DX, 0000H ;外设数据端口号送入DX寄存器IN AL,DX ;从外设端口读取数据到的数据暂存入AL NEXT3: MOV BL,AL ;将数据送入BL寄存器 RET
6. D触发器的作用是什么?
正确答案:D触发器用来提供外设数据准备好的状态。
7. 用查询方式将输入设备的一个数据读入CPU的BL中,程序段如下所示,请完成该段8086汇编程序,将(1)~(5)的内容填入相应的位置。 START:
MOV DX, (1) NEXT1: IN AL,DX NEXT2: AND AL, (2)
JZ(3) MOV DX, (4) IN AL,DX NEXT3: MOV (5),ALRET
正确答案:(1)0001H (2)80H (3)NEXT1,或START (4)0000H