DSP期末复习题及答案
石家庄中考-北京市租房合同
一、 填空题(每空2分,共20分)
1、在C语言和C55x汇编语言的混合程序设
计中,C函数的参数和返回值传递到C55x的寄存器中。
在函数“long func(int
*p1, int i2, int i3, int i4)”中,*p1传递到 AR0
寄存器,
i2传递到 T0 寄存器,i4传递到 AR1
寄存器,返回值由 AC0 寄存器传
递。
2、汇编语言“mov
*AR0,AC0”使用的寻址方式是 间接寻址模式 ,“mov
#0x3,DPH”使用的
寻址方式是 直接寻址模式 ,“mov
*(#0x011234),T2”使用的寻址方式是 绝对寻址模
式 。
3、“AND #0x7f, AC0”,执行之后,AC0的值是 。
4、C55x 的链接器命令文件中,SECTIONS命令的主要作用是
告诉链接器如何将输入段组合成输
出段,以及在存储器何处存放输出
。MEMORY命令的主要作用是
定义目标系统的存储器配
置图,包括对存储器各部分的命名
,以及规定它们的起始地址和长度
。
二、简述题(共40分)
1、根据你的理解,试列举 DSP 芯片的特点?(5分)
答:
哈佛结构;多总线
结构;指令系统的流水线操作;专用的硬件乘法器;特殊的DSP
指令;快速的指令周期;丰富的外设
2、TMS320C55x
芯片的总线结构有何特点,主要包括哪些总线?它们的功能是什么?(6分)
答:
TMS320C55x DSP采用先进的哈佛结构并具有十二组总线,其独立的程序总线
和数
据总线允许同时读取指令和操作数,实现高度的并行操作。
采用各自分开的数据总线分别
用于读数据和写数据,允许CPU在同一个机器周期内
进行两次读操作数和一次写操作数。独立的程序总
线和数据总线允许CPU同时访问
程序指令和数据。
包括12条总线,分别是:PAB和P
B、BAB和BB、CAB和CB、DAB和DB、EAB和EB、
FAB和FB。
3、DSP 为了降低功耗采取了哪些措施?(6分)
答:
双电压供电;多种工作模式
4、TMS320C55x
的总存储空间为多少?可分为哪 3 类,它们的大小是多少?存储器空间的各
自作用是什么?(6分)
答:
程序空间16M Byte;IO空间64K Words;数据空间8M Words
5、TMS320C55x有哪些寻址方式,它们是如何寻址的?试为每种寻址方式列举一条指令(6分
)
答:
直接寻址模式,mov #K16,DP;
间接寻址模式,mov
*AR0,AC0;
绝对寻址模式,mov *(#0x011234),T2;
MMR寻址模式,mov *abs16(#AR2), T2;
寄存器位寻址模式,btstp @30, AC1;
圆形寻址模式。
6、将C源程序转换成可执行文件需要经过哪些步骤?(6分)
答:
创建C源文件;
创建工程文件;创建连接器命令文件;编译整个工程文件;链接;
生成可执行文件
7、常用的TMS320C55x汇编命令有哪些,它们的作用是什么?(5分)
三、程序设计题(共40分)
1、用C55x汇编语言实现计算
y
a
i
x
i
的程序。(10分)
i1
4
答:
mpym *AR0+, *AR1+, AC0
mpym *AR0+, *AR1+, AC1
add AC1, AC0
mpym *AR0+, *AR1+, AC1
add AC1, AC0
mpym *AR0+, *AR1+, AC1
add AC1, AC0
或者:
mpym *AR0+, *AR1+, AC0
||rpt #2
macm *AR0+, *AR1+, AC0
2、用C55x汇编语言实现计算
y
1
x
1
*a
1
x
2
*a<
br>2
的程序。(10分)
答:
mpym *AR0+, *AR1+, AC3
masm *AR0+, *AR1+, AC3
1
、对于TMS320C54x系列DSP芯片,下列说法正确的是 ( c )
(A) 专用型DSP (B)32位定点DSP (C) 16位定点型DSP
(D) 浮点型DSP
2、TMS320C54x系列DSP的CPU具有三个16位寄存
器来作为CPU状态和控制寄存器,
下面有一项不是的是:(d )
(A) ST0
(B) ST1 (C) PMST (D) TDDR
3、要使DSP能够响应某个可屏蔽中断,下面的说法正确的是 ( c )
(A)
需要把状态寄存器ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置0
(B)
需要
把状态寄存器
(C)
需要把状态寄存器
(D)
需要把状态寄存器
ST
1的INTM位置0,且中断屏蔽寄存器IMR相应位置1
ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置1
ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置0
4、下面对TMS320C54xDSP的中断系统叙述错误的是( d )
(A)TMS320C54xDSP的中断系统具有硬件中断和软件中断。
(B)TMS320C54xDSP的硬件中断指由片外扩展的外设引起的中断。
(C)TMS320C54xDSP的中断可以根据是否能被屏蔽分为可屏蔽中断和非屏蔽中断。 (D)TMS320C54xDSP的非屏蔽中断指软件中断、
RS
中断和
NMI
中断。
5、下面对TMS320C54xDSP在进行读写操作时占用总线情况,说法正确的是( )
(A) 在进行程序读时,需要占用的总线是PAB和DB总线。
(B)
在进行程序写时,需要占用的总线是PAB和PB总线。
(C)
在进行单数据读时,需要占用的总线是DAB和CB总线。
(D)
在进行双数据读时,需要占用的总线为CAB、DAB、CB和DB总线。
6、下图对于IFR操作,说法错误的是:( c )
(A)
当一个可屏蔽中断出现时,IFR相应位的中断标志位置1;
(B)
通过复位可以清除中断标志;
(C) 对IFR的相应位写1,可以清除相应中断标志位;
(D) 对IFR的相应位写0,可以清除相应中断标志位。
7、下面对TMS320C54xDSP的堆栈操作说法,正确的是( )
(A)
出栈操作时,数据先出栈,然后SP增加
(B) 出栈操作时,SP先增加,然后数据出栈
(C) 当进栈操作时,SP先增加,然后数据进入堆栈
(D)
当进栈操作时,数据先进入堆栈,然后SP减小。
8、在指令执行前寄存器和数据存储器相应的初始状
态为(AR3)=0100h,(0100h)=0444h,则
指令:ANDM #00FFh,
*AR3+ 执行后,以下结果正确的是:( )
(A) (AR3)=0101h
(B) (0100h)=04F4h (C) (AR3)=044Fh (D)
(0100h)=0F44h
二、填空题(本大题共5小题,每空2分,共20分)
1、DSP芯片按照其工作的数据格式分类,可以分为定点DSP和 浮点DSP
两种。
2、在堆栈操作中,PC当前地址为4020h,SP当前地址为0033h,运行PSHM
AR2后,
PC= 4021H , SP= 0032H
。(假设PSHM为单字指令)
3、DSP外部中断触发方式有电平触发和 边沿
触发两种触发方式。
4、请指出TMS320C54xDSP的状态寄存器ST0下面相应位的功能
ARP: 辅助寄存器指针
OVA:
累加器A溢出标志位
C: 进位位
5、TMS320C54xDSP的内部总线主要包括 程序总线 、
数据总线 和
地址总线 。
三、问答题(本大题共4小题,共计24分)
1、
什么是冯.诺依曼结构和哈弗结构
?有何区别?。(6
2、
请列举可编程
分)
DSP芯片的主要特点(6条特点及以上)。(6分)
(1)哈佛结构(2)多总线结构(3) 流水线技术(4)多处理器结构
(5)指令周期短、功能强(6) 运算精度高(7)功耗低(8)外设丰富,硬件配置强
3
、
TMS320C54X芯片的流水线共有多少个操作阶段?每个阶段执行什么任务?(8分)
答: 共有6个操作阶段:1,预取址 2,取址 3,译码 4,寻址 5,读数 6,执行
4、
假设AR3的当前值为200h,当使用以下TMS320C54XX寻址模式后其中的值为多少
?假定
AR0的值为20h。(4分)
(1)*AR3+0
(2)*AR3-0 (3)*AR3+ (4)*AR3
四、综合应用题。(共计2小题,共计24分)
1、 在进行DSP的程序设计时,如果程序
中要使用堆栈,则必须要先进行设置。下面程
序段是对堆栈的设置,完成的功能是在RAM空间开辟了1
00个字的空间作为堆栈区,
请完成程序段。(4分)
size .set
(1)
stack .usect “STACK”, size
;…
STM #stack+ (2) , SP
2、 采用TMS320C54
xDSP的定时器0产生方波,且TMS320C54xDSP的时钟频率为4MHz,
要求:周期为8
ms的方波发生,从DSP的通用IO引脚XF输出,定时中断周期为4ms,
每中断一次,输出端XF
引脚电平取一次反。 请完成下面程序段。(12分)
;定时器0寄存器地址
TIM0
.set 0024H
PRD0 .set 0025H
TCR0 .set 0026H
;K_TCR0:设置定时器控制寄存器的内容
K_TCR0_SOFT
K_TCR0_FREE
K_TCR0_PSC
K_TCR0_TRB
.set 0b<<11
.set 0b<<10
.set 1001b<<6
.set 1b<<5
;Soft=0
;Free=0
;PSC=9H
;TRB=1
K_TCR0_TSS .set 0b<<4 ;TSS=0
K_TCR0_TDDR .set 1001b<<0 ;TDDR=9
K_TCR0 .set
K_TCR0_SOFT|K_TCR0_FREE|K_TCR0_PSC|
K_TCR0_TRB| K_TCR0_TSS| K_TCR0_TDDR
;初始化定时器0
;根据定时长度计算公式:T=CLKOUT*
(TDDR+1) * (PRD+1)
;给定TDDR=9,PRD=1599,CLKOUT主频f=4MHz,T=250ns
;T=250*(9+1)*(1599+1)=4,000,000(ns)=4(ms)
STM
#1599,TIM0
STM (1) ,PRD0
STM
#K_TCR0,TCR0 ;启动定时器0中断
RET
;定时器0的中断服务子程序:通过引脚XF输出方波波形
t0_flag
.usect “vars”,1 ;当前XF输出电平标志位
;若t0_flag=1,则XF=1
;若t0_flag=0,则XF=0
time0_rev:
PSHM
TRN
PSHM T
PSHM ST0
(2)
BITF t0_flag,#1
BC (3) ,NTC
;NTC表示TC为0
(4)
ST #0,t0_flag
B (5)
RSBX XF
xf_ out:
next:
ST #1,t0_flag
POPM (6)
POPM ST0
POPM T
POPM TRN
RETE
外接
一个128K*16位的RAM,其结构如下图所示,试分析程序区和数据去的地址范围,并说
明其特点
。(8分)
1、对于TMS320C54x系列DSP芯片,下列说法正确的是 ( C )
(A) 专用型DSP (B)32位DSP (C) 定点型DSP
(D) 浮点型DSP
2、要使DSP能够响应某个可屏蔽中断,下面的说法正确的是 (B
)
A.
需要把状态寄存器
B.
需要把状态寄存器
C.
需要
把状态寄存器
D.
需要把状态寄存器
ST1的INTM位置1,且中断屏蔽寄存器IM
R相应位置0
ST1的INTM位置1,且中断屏蔽寄存器IMR相应位置1
ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置0
ST1的INTM位置0,且中断屏蔽寄存器IMR相应位置1
3、若链接器命令文件的MEMORY部分如下所示:
MEMORY
{
PAGE 0: PROG:
origin=C00h, length=1000h
PAGE 1:
DATA: origin=80h, length=200h
}
则下面说法不正确的是(A)
A、
程序存储器配置为4K字大小
B、程序存储器配置为8K字大小
C、 数据存储器配置为512字大小
D、数据存储器取名为DATA
5、C54X DSP的流水线是由( B
)级(也即是由多少个操作阶段)组成。
(A) 4 (B) 6
(C) 8 (D) 10
6、假定AR3中当前值为200h,AR0中的值为20h,下面说法正确的是( )
A、在执行指令*AR3+0B后,AR3的值是200h;
B、在执行指令*AR3-0B后,AR3的值为23Fh;
C、在执行指令*AR3-0B后,AR3的值是180h;
7、下面对一些常用的伪指令说法正确的是:( D )
A、.def所定义的符号,是在当前模块中使用,而在别的模块中定义的符号;
B、.ref 所定义的符号,是当前模块中定义,并可在别的模块中使用的符号;
C、.sect命令定义的段是未初始化的段;
D、.usect命令定义的段是未初始化的段。
8、在采用双操作数的间接寻址方式时,要使用到一些辅助寄存器,在此种寻址方式下,下
面的
那些辅助寄存器如果使用到了是非法的( D )
A、AR2
B、AR4 C、AR5 D、AR6
二、填空题(每空2分,共20分)
1、DSP芯片按照其用途分类,可以分为通用型和
专用型 两种。
2、在堆栈操作中,PC当前地址为4020h,SP当前地址为0033h,运行PSHM
AR2后,
PC= 4021h , SP= 0032h 。(PSHM
AR2为单字指令)
3、TMS320C54xDSP芯片四种串行口类型是指 SP
、 BSP 、McBSP和TDMcBSP。
4、请简要说明TMS320C5402VCDSP以下引脚的功能:
RS
: 复位引用脚 ,
IOSTRB
: Iext,
.data, .bss,各包含什么内容。(6
分)
.答: .text
代码段,该段包含程序代码
.data 数据段,该段包含已初始化的数据
.bss 变量段,该段为未初始化的变量保留空间
2、比较伪指令 .usect和
.sect。(6分) .答:.sect: 定义初始化了的带名称的段
Unsect:
在一个未初始化的段中保留空间