一起答
主观

试题四(共 15分)

   阅读以下关于中断的叙述,回答问题 1 至问题 4,将答案填入答题纸的对应栏内。

【说明】

   在某嵌入式系统中,王工设计的计算机模块如图4-1 所示。它要求 CPU在执行完当前指令后转而对中断请求进行处理。假定:TDC为查询链中每个设备的延迟时间,Ta、Tb、Tc分别为设备 A、B、C的中断服务程序所需的执行时间,Ts和TR为保存现场和恢复现场所需的时间。

【问题1】(2分)

   一般计算机系统根据对中断处理的策略不同,可分为单级中断系统和多级中断系统。本项目中王工设计的系统属于哪一类中断系统?请将设备 A、设备 B、设备C三个设备的中断优先级按照从高到低的次序排列。

【问题2】(5分)

   本系统不允许中断嵌套,如果 CPU 响应中断,则中断处理过程按照如下流程执行,将(1)~(5)的内容填入答题纸上相应的位置。

   中断处理过程流程:

    a) CPU检查响应中断的条件是否满足;

    b) 如果 CPU响应中断,则(1)

    c)   (2)            

    d)分析中断原因;

    e)    (3)    

    f)  退出中断,      (4)

    g) (5),CPU继续执行。

【问题3】(4分)

   当设备 A、设备 B、设备 C同时发出中断请求时,请计算出处理器处理设备 A、B、C的时间 TA、TB和TC。如果处理三个设备所需要的总时间为 T,那么本系统所设计的中断极限频率 f是多少?

【问题4】(4分)

   嵌入式系统中多用 I/O 设备管理软件来管理外设。I/O 设备管理软件一般分为 4 层,层次关系和每一层的主要功能说明如图 4-2所示。请给出 4层软件的名称,将(1)~(4)的内容填入答题纸上相应的位置。

参考答案
查看试卷详情
相关试题
  1. 试题四(共 15分)

       阅读以下关于中断的叙述,回答问题 1 至问题 4,将答案填入答题纸的对应栏内。

    【说明】

       在某嵌入式系统中,王工设计的计算机模块如图4-1 所示。它要求 CPU在执行完当前指令后转而对中断请求进行处理。假定:TDC为查询链中每个设备的延迟时间,Ta、Tb、Tc分别为设备 A、B、C的中断服务程序所需的执行时间,Ts和TR为保存现场和恢复现场所需的时间。

    【问题1】(2分)

       一般计算机系统根据对中断处理的策略不同,可分为单级中断系统和多级中断系统。本项目中王工设计的系统属于哪一类中断系统?请将设备 A、设备 B、设备C三个设备的中断优先级按照从高到低的次序排列。

    【问题2】(5分)

       本系统不允许中断嵌套,如果 CPU 响应中断,则中断处理过程按照如下流程执行,将(1)~(5)的内容填入答题纸上相应的位置。

       中断处理过程流程:

        a) CPU检查响应中断的条件是否满足;

        b) 如果 CPU响应中断,则(1)

        c)   (2)            

        d)分析中断原因;

        e)    (3)    

        f)  退出中断,      (4)

        g) (5),CPU继续执行。

    【问题3】(4分)

       当设备 A、设备 B、设备 C同时发出中断请求时,请计算出处理器处理设备 A、B、C的时间 TA、TB和TC。如果处理三个设备所需要的总时间为 T,那么本系统所设计的中断极限频率 f是多少?

    【问题4】(4分)

       嵌入式系统中多用 I/O 设备管理软件来管理外设。I/O 设备管理软件一般分为 4 层,层次关系和每一层的主要功能说明如图 4-2所示。请给出 4层软件的名称,将(1)~(4)的内容填入答题纸上相应的位置。

  2. 试题三(共 15分)

       阅读以下关于嵌入式软件测试用例设计的叙述,回答问题 1至问题 3,将答案填入答题纸的对应栏内。 

    【说明】

     某程序段的流程如图 3-1所示,x、y是两个变量,K、J 表示一段程序执行体,表 3-1 所示为本题可供选择的四组测试用例组。

    【问题1】(3分)

     简答以下问题。

      (1)条件覆盖的含义是什么?

      (2)路径覆盖的含义是什么?  

    【问题 2】(2分)

       在程序测试用例设计中,有语句覆盖、条件覆盖、判定覆盖(分支覆盖)和路径覆盖等。其中,____是最强的覆盖准则。

       请把以下 4个选项中正确的选项序号填入上述空白处。

       ①语句覆盖

       ②条件覆盖

       ③判定覆盖(分支覆盖)

       ④路径覆盖

       【问题 3】(10 分)

       为了对图 3-1 所示的程序段进行覆盖测试,必须适当地选取测试用例组。实现判定覆盖至少应采用的测试用例组是  (1)和 (2) ,实现条件覆盖至少应采用的测试用例组是    (3) ;实现路径覆盖至少应采用的测试用例组是    (4)  和   (5)。

       请把以下 8个选项中正确的选项序号填入上述空白处。

    ① 试用例组Ⅰ和Ⅱ

       ②测试用例组Ⅱ和Ⅲ

       ③测试用例组Ⅲ和Ⅳ

       ④测试用例组Ⅰ和Ⅳ

       ⑤测试用例组Ⅰ、Ⅱ和Ⅲ

       ⑥测试用例组Ⅱ、Ⅲ和Ⅳ

       ⑦测试用例组Ⅰ、Ⅲ和Ⅳ

       ⑧测试用例组Ⅰ、Ⅱ和Ⅳ

  3. 试题一(共 15分)

       阅读以下关于某嵌入式系统设计方案的叙述,回答问题 1 至问题 3,将答案填入答题纸的对应栏内。

     【说明】

       某公司承接了开发周期为6个月的某机载嵌入式系统软件的研制任务。该机载嵌入式系统硬件由数据处理模块、大容量模块、信号处理模块、FC网络交换模块和电源模块组成,如图 1-1所示。数据处理模块和大容量模块的处理器为 PowerPC7447,数据处理模块主要对机载数据进行处理,完成数据融合;大容量模块主要存储系统数据,同时也有数据处理的能力;信号处理模块的处理器为专用的数字信号处理器DSP,完成雷达数据处理,并将处理后的数据发送给数据处理模块;FC 网络交换模块为已开发的模块,本次不需要开发软件,主要负责系统的数据交换;电源模块主要负责给其它模块供电,电源模块上没有软件。

        PowerPC7447 和 DSP是32位处理器,内存按字节编址。PowerPC7447 以大端方式  (big_ endian)存储数据,DSP以小端方式(little_endian)存储数据。

    【问题1】(5分)

       在数据处理模块1 中,需要使用 A/D 变换器对外部电源模块的电压进行检测。当前数据处理模块中的A/D 变换器为 10 位,当 A/D 变换器的输入模拟电压最大为 5.115V时,A/D 输出为 3FFH。

       通过配置A/D变换器的中断寄存器及比较寄存器(比较寄存器的值是用来和A/D转换结果进行比较),可以将 A/D 变换器配置为输入电压大于一定值时产生中断,也可以配置为输入电压小于一定值时产生中断,通过此种方式向系统报警。

       请回答以下三个问题。

    【问题1】

    (1)(5分)此 A/D 变换器的量化间隔为多少 mV(量化间隔为 A/D 变换器最低有效位 1 位所代表的模拟电压值)?   

    (2)如果规定下限阈值为 4.092V,要使用中断检测这个电压,此时 A/D 变换器的比较寄存器应为多少?

    (3)如果采用查询方式实现电源电压超限报警功能,程序如何判断 A/D 变换器完成了单次数据转换?

    【问题2】(5分)

       李工负责该系统软件的研发。在软件策划过程中,为了加快软件的开发,确保进度,李工将软件分解为若干软件配置项,每个软件配置项指定一人开发。每个配置项的开发过程包括:软件需求分析、软件概要设计、软件详细设计、软件编码、软件单元测试和部件级测试六个阶段。李工的做法符合软件工程的要求吗?为什么?

    【问题3】(5分)

       田工负责编写信号处理模块与数据处理模块2 的通信程序,约定好的数据组织方式如表1-1所示。

     以下是信号处理模块端的一段程序:

      unsigned int msgid= 0x01;    // 表示从信号处理模块发送到数据处理模块 2 的消息 ID

      typedef struct FCSND_Data_struct{

        unsigned char A;

        unsigned int B;

        unsigned short C;

        unsigned char D[16];

      } FCSND_DATA;

      FCSND_ DATA send Data;

    ……

    ……

      FillfcData(&sendData);   //将待发送数据赋值到 sendData 数据结构中

      sendfc((msgid, &sendData, sizeof(FCSND_DATA));    //发送数据

    以下是数据处理模块2端的一段程序:

      unsigned int msgid= 0x00;    //接收到的消息 ID

      typedef struct FCRCV_Data_struct{

        unsigned char A;

        unsigned int B;

      unsigned short C;

      unsigned char D[16];

    } FCRCV_DATA;

    FCRCV_DATA recvData;

    ……

    ……

    recvfc((msgid, &recvData, sizeof(FCRCV _DATA));//接收数据

    请问以上程序是否存在问题?如果存在问题,请分析原因。

  4. 试题二(共 15分)

       阅读以下关于某嵌入式处理器和 8255 的叙述,回答问题 l至问题 3,将答案填入答题纸的对应栏内。

     【说明】

       图 2-1 为使用某嵌入式处理器和8255 对打印机进行控制的电路图,其中8255 的中断请求 PC3 接到处理器的中断请求输入端INTO上,打印机的数据口接在8255的 PAO-PA7上,打印机的输出电平ACK接在8255的 PC6 上。

       为了使用 入式处理器对打印机进行控制,在程序设计时,需要将 8255 的 PA口设置为工作方式 1; PB口设置在工作方式 0,配置为输入;PC口的 PC0、PC1、PC2、PC3 和 PC4 定义为输出。

       为了在打印机输出为低电平时通过8255 的PC3产生有效的中断请求信号 INTRA,必须使得 A口的中断请求使能 INTE=1,实际上就是通过 C口的按位复位操作将 PC6 置1,整个程序分为四部分:依次是8255的初始化,嵌入式处理器的中断初始化,嵌入式处理器的主程序和打印字符的中断处理程序。其中 8255的端口配置功能如表 2-1 所示。嵌入式处理器的中断使能控制字含义如表 2-2 所示,该处理器的典型汇编

    指令如表 2-3所示。

     

    图2-1嵌入式处理器和 8255 对打印机进行控制的电路图

    EA:  全部中断,0=关中断,1=开中断

    ES: 串口中断,0=关中断,1=开中断

    ET1:定时器 1中断,0=关中断,1=开中断

    EX1:外部 INT1 中断,0=关中断,l=开中断

    ET0:定时器 0中断,0=关中断,1=开中断

    EX0:外部 INT0 中断,0=关中断,1=开中断

    问题1】 (6 分)

       根据图 2-1 所示,通过嵌入式处理器访问 8255的PA口、PB口和PC口对应的地址分别是什么?(请用16 进制描述)

     对应的地址:

      PA口:(1)

      PB口:(2)

      PC口:(3)

    【问题2】(4分)

       在嵌入式处理器的汇编语言中,最简单的指令寻址方式为立即寻址和直接寻址,请回答下面两个汇编语言语句所描述的含义,将答案填写在答题纸的对应栏中。

        MOV A,  #3AH:(1)

        MOV R4,  3AH: (2)

    【问题3】(5分)

       以下汇编程序用于打印机输出控制,请将下面汇编程序的空(1)~(5)补充完整,并将解答填入答题纸的对应栏中。

        8255 的A口工作在方式1输出,初始化程序:

        INTI55: MOV   DPTR, #8003H

                MOV A,   10100010B

                 MOVX @DPTR,A    ;配置 A口在工作方式 1、B口在工作方式 0

                MOV   A,    00001101B

                MOVX @DPTR,A    ;将 PC6 口置位

       嵌入式处理器的中断初始化程序:

        INT031:

                MOV IE,(1)    ;开总中断及所有五个中断源用十六进制表示

                ANL TCON,#0FEH    ;规定 INT0 下降沿低电平产生中断请求

     嵌入式处理器主程序:

       (打印存储单元20H 开始向后的内容,中断处理程序中每次从 20H中取到需要打印的存储单元地址,直到遇到存储单元里面内容不是 OAH 为止)

                 ORG

                 0100H

                MOV R0,#20H    ;取打印缓冲区地址

                 MOV DPTR, #8000H

                MOV A,(2)    ;取打印字符

        INC   R0

                MOV 20H, R0

                MOVX @DPTR,A    ;输出打印

               当字符打印结束会产生一次中断,中断服务程序如下:

                ORG 1300H

       PRINTER: PUSH PSW    ;压栈操作

                   PUSH Acc

                  PUSH R0

                   PUSH   DPH

                  PUSH DPL

                  MOV R0,(3);用十六进制表示                MOV DPTR,#8000H

                   MOVX .A, @R0   ;取打印字符

                  MOVX @DPTR,A    :输出打印

                  INC   R0

                  MOV 20H, R0    ;将需要取打印内容的地址放置到 20H 单元

                  CJNE A,#0AH,NEXT

                  ANL IE,(4);关 INT0中断,用十六进制表示

            NEXT:POP DPL

                  POP  DPH

                   POP    (5)

                   POP  Acc

                   POP PSW

                   RETI