
《 DSP应用技术 》课程
试卷(A)参及评分标准
开课二级学院: 信息工程 ,学生专业: 05通信/电信,教师: 洪波,楼喜中
一:填空题
1.ADD *AR1, A 指令是 间接 寻址方式, LD 60H, 16, A是 直接 寻址方式。
2.假定DP=3,那么当执行LD 10h, A这条指令后,累加器A存放的是数据存储器空间 0190H
地址的值。
3.一个用C语言编写的源程序要经过编译器编译后得到 汇编语言源程序(asm文件),经过汇编器和链接器后产生 可执行COFF文件(输出文件/out文件) 。
4.已知中断向量为013H,中断向量地址为IPTR=0111H,那么中断向量地址是88ccH 。
5. C54X DSP内部程序总线有 1 条,数据总线有 3 条,地址总线有 4 条。
6.TMS320C54X器件在不同存储器空间可以占有相同的地址区间。在默认的方式下, PAGE 0为
程序存储器 、PAGE 1为 数据存储器 。
二:简答题
1.C54x DSP芯片的CPU主要由哪几个部分组成?(5分)
答:TMS320C54X的处理器(CPU)主要由运算部件和控制部件。其中运算部件包括算术逻辑单元(ALU),累加器,桶形移位器,乘法器/加法器单元,比较、选择和存储单元,指数编码器等。控制部件包括处理器工作方式控制(PMST)、状态寄存器ST0,状态寄存器ST1等。
2.画图说明TMS320VC5402的程序存储空间和数据存储空间的配置结构, MP/MC、OVLY和DROM比特位是如何影响DSP存储器结构的?(15分)
答:配置结构图略。 (5分)
程序存储器空间定义在片内还是片外由MP/MC和OVLY决定:
1.MP/MC决定4000h-ffffh程序存储空间的片内、片外存储空间分配。
MP/MC=1, 4000h-ffffh片外存储器映射到程序存储空间。
MP/MC=0, 4000h-efffh片外存储器,ef00h-ffffh为片上存储器映射到程序存储空间。
2.OVLY位决定0000h-3fffh程序存储空间片内、片外存储空间分配。
OVLY=1,0000h-007fh保留,0080h-3fffh为片内DARAM.
OVLY=0,0000h-3fffh,片外存储器。
(5分)
数据空间为片内、片为统一编址,0000h-007f为特殊功能寄存器空间,0080h-3fff为片内DARAM,4000h-efffh为片外数据存储空间,DROM控制f000h-ffffh的分配。
DROM=1,f000h-feffh定义只读存储空间,FF00h-ffffh保留。
DROM=0,f000h-feffh定义片为数据存储空间。
(5分)
3.初始化C54x DSP定时器需要按照哪些步骤?定时器中断(TINT)的速率如何计算?假定主频率为5MHZ,如果要求产生T=0.002mS方波时,定时器需要做哪些相应的设置?(10分)
答:步骤如下:
1.TCR的TSS位置1,以停止定时器。
2.装载PRD。
3.初始化TCR中的TDDR,且对TCR中的TSS置0,对TRB置1来重装载定时器周期。 (3分)
定时器中断速率计算
(3分)
根据题意,由于产生周期0.002ms的方波,因此定时中断周期为0.001ms,每中断一次,
输出电平取一次反。
因此:(TDDR+1)*(PDR+1)=0.001ms/200ns=5,
故可取TDDR=4,PRD=0或TDDR=0,PRD=4;
(4分)
4.C54x DSP IFR和IMR的功能是什么?(5分)
答:中断标志寄存器IFR和中断屏蔽寄存器IMR都是存储器映射的CPU寄存器。IFR对各硬件中断进行标志,当一个中断触发时,IFR中的相应的中断标志位置1,直到CPU识别该中断为止。IMR对各硬件中断进行屏蔽或使能,某位为0表示此中断被屏蔽(禁止),某位为1表示此中断使能(以状态寄存器INTM位为0为前提条件)。
5.简述中断响应的过程。(5分)
答:中断响应过程为:
对于软件中断和不可屏蔽中断,CPU是立即响应的。对于可屏蔽中断,要满足下列条件才能响应:
·优先级最高(同时出现多个中断时)
·INTM位为0
·IMR中相应位为1
CPU在取到软件向量的第一个字后会产生IACK信号,对可屏蔽中断而言,IACK会清除IFR中相应位。
三:程序题
1. 试解释下段指令(10分)
counter .usect “vars”,1
LD #0, A
STM #60H, AR2
STM #10, AR3 ;把立即数10放到辅助寄存器AR3中
LOOP: ADD *AR2+,A ;把数据存储器中地址为60H开始的十个数值进行相加,
;得到的和送入累加器A中,AR3用来控制加法循环次数
BANZ LOOP,*AR3-
STM #100, counter; 把立即数10放到变量counter中
ADDM #-1, *(connter) ;变量counter减1
BC end, TC ;为0跳转到程序结束处,否则继续执行
……
end: B end
3.试按要求写出相应的指令:1.工作频率100MHZ 2.访问程序,数据空间,无需插入等待周期,I/O空间需插入4个等待周期,3.允许外部中断1,2和定时器中断,其他屏蔽,4.DP指针和SP指针分别指向第0页和第16页。(10分)
答:
(1)STM #9007H , CLKMD (2分)
(2)STM #4000h,SWWSR (2分)
(3)STM #0FFFFh,IFR (2分)
STM #000Eh,IMR (或#08EH) (2分)
(4) LD #0h,DP (1分)
STM #0800h,SP (1分)
4.编写算法,实现y=a1×x1+a2×x2+a3。(10分)
答:
SUM: LD @x1,T
MPY @a1,B
LD @x2,T
MAC @a2,B
ADD @a3,B
STL B,@y
STH B,@y+1
注:写完整程序或单写算法均可得满分。
