DSP题库

更新时间:2024-04-18 12:28:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

DSP原理及应用考试题库

电子技术应用教研室

2012.05.20

目录

一、填空题 ...................................................................................................................................... 1 二、选择题 ...................................................................................................................................... 6 三、判断题 .................................................................................................................................... 10 四、简答题 .................................................................................................................................... 13 五、程序阅读题 ............................................................................................................................ 18 六、指令分析 ................................................................................................................................ 24 七、程序改错题 ............................................................................................................................ 28 八、程序编写 ................................................................................................................................ 30 九、程序识读 ................................................................................................................................ 31 十、硬件电路分析 ........................................................................................................................ 33

一、填空题

1、累加器A分为三个部分,分别为 ; ; 。

2、TMS320VC5402型DSP的内部采用 条 位的多总线结构。

3、TMS320VC5402型DSP采用 总线结构对程序存储器和数据存储器进行控制。 4、TMS329VC5402型DSP有 个辅助工作寄存器。

5、DSP处理器TMS320VC5402中DARAM的容量是 字。 6、TI公司的DSP处理器TMS320VC5402PGE100有___________个定时器。 7、在链接器命令文件中,PAGE 1通常指________存储空间。 8、C54x的中断系统的中断源分为 中断和 中断。 9、TI公司DSP处理器的软件开发环境是__________________。 10、DSP处理器TMS320VC5402外部有___________根地址线。 11、直接寻址中从页指针的位置可以偏移寻址 个单元。 12、在链接器命令文件中,PAGE 0通常指________存储空间。

13、C54x系列DSP处理器中,实现时钟频率倍频或分频的部件是_____________。

14、TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址________单元开始工作。

15、TMS320C54x系列DSP处理器有_____个通用I/O引脚,分别是_________。 16、DSP处理器按数据格式分为两类,分别是_______;_____。

17、TMS329VC5402型DSP的ST1寄存器中,INTM位的功能是 。 18、MS320C54X DSP主机接口HPI是________位并行口。

19、在C54X系列中,按流水线工作方式,分支转移指令的分为哪两种类型:_______;_______。

20、C54x的程序中,“.bss”段主要用于_______________。

21、从数据总线的宽度来说,TMS320VC5402PGE100是_______位的DSP处理器。 22、TMS320VC5402型DSP处理器的内核供电电压________伏。 23、TMS320C5402系列DSP处理器最大的数据存储空间为_____字。

24、DSP技术是利用专用或通用数字信号处理芯片,通过 运算的方法对信号进行处理。

25、C54x的程序中,“.text”段是_________段,主要包含_______________。 26、C54x系列DSP上电复位后的工作频率是由片外3个管脚 ; ; 来决定DSP工作的模式。

27、DSP处理器TMS320C5402最大的程序存储空间为______字。

28、从应用领域来说,MCU(单片机)主要用于_______________;DSP处理器主要应用于___________________。

29、TMS320C54X DSP提供一个用16位堆栈指针(SP)寻址的软件堆栈。当向堆栈中压入数据时,堆栈是从 地址向 地址方向填入。

30、TMS320C54X DSP软硬件复位时,复位中断向量的地址为程序空间的________。

31、TMS320C54X可编程定时器的定时周期 =(时钟周期)*(分频系数TDDR+1)*(____ +1)。

32、DSP处理器的英文全称 。

33、DSP处理器TMS320VC5402的IO管脚供电电压________伏。

34、C54x的程序中,“.data”段是_________段,主要用于_______________。 35、DSP处理器TMS320C5402的I/O空间为 字。

1

36、TMS320VC5402型DSP的累加器是 位。

37、TMS329VC5402型DSP的MP/MC管脚的功能是 。

38、TMS320VC5402型DSP的CPU采用 寄存器作为专用硬件实现移位功能。 39、汇编语句“STL A,@y”中“@y”表示 寻址方式。

40、TMS320VC5402型DSP的ST1寄存器中,CPL位的功能是指示 。 41、解释汇编语句“READA *AR1”的功能: 。

42、TMS320C54X具有两个通用I/O口,用于输入外设的状态, 用于输出外设的控制信号。

43、TMS320C54X DSP共有______种基本的数据寻址方式。

44、DSP实现FIR滤波器延时一个采样周期的方法有两种,一是采用________缓冲区法,二是采用________缓冲区法。

45、DSP技术 (Digital Signal Process)是利用专用或通用数字信号处理芯片,通过________________的方法对信号进行处理。 46、TMS320C54X可编程定时器的定时周期 =(时钟周期)*(定标器+1)*(________________ +1)。

47、TMS329VC5402 型 DSP 有 个辅助工作寄存器。

48、TI 公司 DSP 处理器的软件开发环境是__________________。 49、直接寻址中从页指针的位置可以偏移寻址 个单元。 50、MS320C54X DSP 主机接口 HPI 是________位并行口。 51、C54x 系列 DSP 上电复位后的工作频率是由片外 3 个管脚 ; ; 来 决定的。

52、TI公司的定点DSP产品主要有 TMS320C2000 系列、TMS320C5000系列和 TMS320C6000 系列。

53、C54x DSP中传送执行指令所需的地址需要用到 PAB 、CAB、DAB和 EAB 4条地址总线。

54、DSP的内部存储器类型可分为随机存取存储器(RAM)和只读存储器(ROM)。其中RAM又可以分为两种类型:单寻址RAM(SARAM)和双寻址RAM(DARAM)。

55、C54x DSP的内部总存储空间为192K字,分成3个可选择的存储空间:64K字的程序存储空间 、64K字的数据存储空间和64K字的 I/O空间 。

56、从功能结构上,’C54X DSP的CPU可以划分成 运算部件 和 控制部件 两大部分。 57、C54x DSP的寻址方式有七种,分别为立即寻址、绝对寻址、累加器寻址、直接寻址、 间接寻址 、存储器映象寄存器寻址、堆栈寻址。

58、在’C54x DSP寻址和指令系统中,Xmem和Ymem表示 16位双寻址操作数 ,Dmad为16位立即数,表示 数据存储器地址 ,Pmad为16位立即数,表示 程序存储器地址 。 59、程序计数器的值可以通过 复位操作 、 顺序执行指令 、 分支转移 ,累加器转移,块重复,子程序调用,从累加器调用子程序,中断等操作改变。 60、C54x DSP芯片采用了6级流水线的工作方式,即一条指令分为 预取指 、取指、译码、 寻址 、读数和执行6个阶段。

61、解决MMR写操作的流水线冲突时,一般可用采用推荐指令和 插入空操作指令 的方法。

62、C54x DSP定时器由3个16位存储器映射寄存器组成:定时器寄存器(TIM)、 定时器周期寄存器(PRD)和 定时器控制寄存器(TCR) 。

63、 是TMS320C54x 系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。

2

64、C54x DSP的指令系统有 助记符指令 和 代数指令 两种形式。

65、COFF目标文件中.text段通常包含 可执行代码 ,.data段通常包含己初始化的数据,.bss段中通常为 未初始化的数据 保留空间。

66、DSP芯片的开发工具可以分为 代码生成工具 和 代码调试工具 两类。 67、已知A=FF FFFF FFCBH, T= 0000H,则执行指令EXP A后,T= 25 。

68、CPU的并行结构和片上DARAM的配合,可使C54x在1个指令周期内同时执行4次操作,包括1 次取指、2次读操作数和1 次写操作数。

69、哪条指令可用于无符号数的加法运算 ADDS Seme,Src 。 70、C54x中对I/O空间进行操作的指令是:PORTR、PORTW 71、 TMS320C54x双数据读用到的总线有:地址总线 CAB、DAB 及数据总线CB、DB。 72、TMS320C54x的中央处理器CPU由 部件和 部件组成。 73、累加器分为3个部分:保护位、高阶位、低阶位。 74、哪个伪指令可以定义未出始化段;.bss .usect 75、TMS320C54x的片内存储空间分为3个可选择的存储空间: 64 K 的程序存储空间, 64、 K的数据存储空间和 64K的I/O存储空间。

76、执行块重复操作时用到的寄存器是 BRC、RSA、REA。 77、软件可编程PLL受寄存器 时钟方式寄存器 控制。

78、TMS320C54x单数据读用到的总线有:地址总线 DAB 和数据总线 DB

79、TMS320VC5402 有 2 个定时器。已知SP=300H,执行指令PSHM ST1后,SP=299H 80、C54x的串口形式包括标准同步串口SP, 缓冲同步串行口BSP ,多路缓冲串口McBSP和 时分多路同步串行口TDM 。

81、按数据格式分类,DSP芯片可分为 定点 DSP芯片和 浮点 DSP芯片。 82、 RPTZ #99 , 则下一条指令将执行 100 次。

83、CCS中表示立即操作数时,必须在一个数居前加上符号 。

84当状寄存器ST1中的FRCT= 1 时,乘法器输出自动左移1位,消去多余的符号位。

85、除法运算时,对于被除的绝对值大于等于除数的绝对值的情况,可利用条件减法指令 SUBC加上重复指令“RPT #15”实现运算。

86、时钟发生器的组成:内部振荡器和锁相环(PLL) 87、DSP芯片按数据格式分: 和 88、TMS320C54x所有片内和片外程序存储器和片内、片外数据存储器分别统一编址。此外,通过工作方式控制寄存器PMST的3个位控制信息 MP/MC 、OVLY 和 DROM ,影响数据/程序存储空间的映射。 89、TMS320C54x芯片的流水线操作共有6个操作阶段,6个阶段执行的任务是预取指, 取指 ,译码, 寻址 , 读数 和执行。

90、TMS320C54x中断系统有两个重要的中断寄存器,当一个中断出现时, IFR(中断标志寄存器) 中的相应的中断标志位置1,当 IMR(中断屏蔽寄存器) 中的某一位为1时就能开放相应的中断 。

91、TMS320C54x复位时,PMST的状态是PMST=1FFH 目标程序文件用.obj扩展名表示

92、累加器A分为三个部分,分别为 保护位 ; 高阶位 ; 低阶位 。 93、累加器B分为三个部分,分别为 保护位 ; 高阶位 ; 低阶位 。 94、DSP C54X采用 哈佛 总线结构对程序存储器和数据存储器进行控制。 95、C54x系列DSP处理器中,实现时钟频率倍频或分频的部件是锁相环PLL。

3

96、TMS320C54x的ST1寄存器中,INTM位的功能是 开放/关闭所有可屏蔽中断 。 97、TMS320C54X的ST1寄存器中,CPL位的功能是指示 直接寻址时采用何种指针 。 98、TMS320C54X的ST0寄存器中,DP位域的功能是 直接寻址时的页指针。

99、 DSP技术是利用专用或通用数字信号处理芯片,通过数值 算的方法对信号进行处理。 100、DSP处理器的英文全称 Digital Signal Processing 。

101、TMS320C54X具有两个通用I/O口,BIO用于输入外设的状态;XF用于输出外设的控制信号。

102、直接寻址中从页指针的位置可以偏移寻址128 个单元。

103、在C54X系列中,按流水线工作方式,分支转移指令的分为哪两种类型:延迟分支转移;无延迟分支转移。

104、TMS320C54X DSP提供一个用16位堆栈指针(SP)寻址的软件堆栈。当向堆栈中压入数据时,堆栈是从 低 地址向 高 地址方向填入。

105、 TMS320C54X DSP提供一个用16位堆栈指针(SP)寻址的软件堆栈。当向堆栈中弹出数据时,堆栈是从 高 地址向 低 地址方向填入。 106、C54x的程序中,“.bss”段主要用于为变量保留存储空间。

107、C54x的程序中,“.text”段是文本段段,主要包含可执行文本。

108、C54x的程序中,“.data”段是__数据段_______段,通常包含初始化数据_____。 109、TMS320C54X的MP/MC管脚的功能是 微计算机或微处理器工作模式 。 110、TMS320C54X CPU采用 桶形移位 寄存器作为专用硬件实现移位功能。 111、汇编语句“STL A,@y”中“@y”表示 直接 寻址方式。

112、解释汇编语句“READA *AR1”的功能: 以累加器A的内容作为地址读取程序存储单元,将读取的数据存入以AR1的内容作为地址的数据存储单元中 。 113.解释汇编语句“WRITA *AR1”的功能: 。

114、DSP芯片的哈佛结构采用双存储空间, ________和________分开,有各自独立的程序总线和数据总线。

115、TMS320VC5402-100的指令周期是________纳秒,它的运算速度是________MIPS。 116、若MP/ MC=_______,则片内ROM安排到程序空间。 117、若DROM=1,则片内ROM安排到_______。

118、累加器A和B的差别仅在于累加器A的_______位可以用做_______的一个输入。 119、当ST1中的小数方式位FRCT=1,乘法器工作在_______相乘方式,乘法结果自动左移1位,以消去多余的符号位。

120、处理器工作方式状态寄存器PMST中的IPTR为中断向量指针,它指示中断向量所驻留的128字程序存储器的位置,DSP复位时,这9位字段全部置_______,所以复位向量总是驻留在程序存储空间的_______。

121、指数编码器可以在单个周期内执行EXP指令,求得累加器中数的______值,并以2的补码的形式存放到T暂存器。

122、TMS320C54x芯片都有2个通用的I/O引脚,即XF和BIO,其中________为外部标志输出信号引脚。

123、C54x采用基于2的补码小数表示形式,16进制数4000H表示的小数是________。 124、C54x片内定时器主要由TIM、PRD、和TCR三个寄存器及相应的逻辑控制电路组成,其中________为定时寄存器,________为定时周期寄存器,________为定时控制寄存器。 125、DSP芯片复位时,时钟方式由3个引脚_______、________、________的状态决定。 126、TMS320C54x内部有________4条总线,每条总线又包括________和________ 。可以在一个机器周期内从程序存储器取________条指令,从数据存储器读________个操作数和向

4

数据存储器写________个操作数。 127、典型的DSP系统应包括抗混叠低通滤波器 、 ________ 、 ________ 、 ________ 以及平滑低通滤波器。

128、C5402采用双电源供电,共内核电源电压为______V,I/O电源电压为______V。 129、累加器A和B都可分为三部分,分别为_____﹑_____和_____。

130、C54x提供三个16位寄存器来作为CPU状态和控制寄存器,它们分别为_____﹑_____和_____ 。

131、C5402内部含有_____字的ROM、 _____字的DARAM、 _____字的SARAM。

132、所谓硬件配置的PLL,就是通过设定C54x的3个引脚_____ 、 _____和_____的状态,选定时钟方式。 133、C54x中开放可屏蔽中断的条件是ST1中的INTM位= _____,IMR中的相应位为_____。而非屏蔽中断不受INTM位的影响,且在IMR寄存器中无相应标志位。

5

二、选择题

1、MS320C54X DSP微处理器采用的是( )结构

A、哈佛结构 B、冯?诺依曼结构 C、矩阵结构 D、以上都不是 2、TMS320C54X DSP有( )组数据总线。

A、4 B、16 C、8 D、3

3、采用DSP进行数字信号处理属于( )实现方法。

A、硬件 B、软件 C、软硬件结合 D、以上都不是 4、TMS320C54X DSP有( )个累加器。

A、1 B、2 C、3 D、4

5、TMS320C54X DSP共有129条指令,分为( )大类 A、6 B、5 C、4 D、3 6、可编程数字信号处理器简称( )。

A、CPU B、MCU C、CCU D、DSP 7、目标程序文件用( )扩展名表示。

A、.obj B、.cmd C、.out D、.asm

8、在TMS320C54X DSP中采用了( )级流水线操作。 A、6 B、5 C、4 D、3

9、TMS320C54X DSP软硬件复位时,中断向量为( ) A、FF00H B、FF80H C、0080H D、0000H 10、TMS320C54X DSP主机接口HPI是( )位并行口 A、32 B、16 C、8 D、2

11、TMS320C54X DSP采用改进的哈佛结构,围绕( )条16位总线建立。 A、4 B、8 C、12 D、16

12、TMS320C54X DSP的32个中断源分为14级,其中( )级别最高。 A、INTR B、NMI C、RS D、INT0 13、TMS320 C54X主要应用于( )领域。

A、自动控制 B、语音处理 C、浮点运算 D、图象处理 14、TMS320 C24X主要应用于( )领域。

A、自动控制 B、语音处理 C、浮点运算 D、图象处理 15、TMS320 C67X主要应用于( )领域。

A、自动控制 B、语音处理 C、浮点运算 D、图象处理 16、TMS320 C3XX主要应用于( )领域。

A、自动控制 B、语音处理 C、浮点运算 D、图象处理

17、处理器方式状态寄存器PMST中的( )确定片内安排程序存储器。 A、MP/MC B、OVLY C、DROM D、INTM

18、处理器方式状态寄存器PMST中的( )确定片内RAM安排程序和数据存储器。 A、MP/MC B、OVLY C、DROM D、INTM

19、处理器方式状态寄存器PMST中的( )确定片内ROM安排数据存储器。 A、MP/MC B、OVLY C、DROM D、INTM

20、CPU能够在单周期内对DARAM进行两次访问而不冲突的是( ) A、同时进行PAB/PB取指和DAB/DB读取第一个数据

B、同时进行CAB/CB读取第二个数据和EAB/EB将数据写存储器 C、同时进行PAB/PB取指和CAB/CB读取第二个数据

6

D、以上都发生冲突。

21.CPU能够在单周期内对DARAM进行两次访问而冲突的是( ) A、同时进行PAB/PB取指和CAB/CB读取第二个数据

B、同时进行CAB/CB读取第二个数据和DAB/DB读取第一个数据 C、同时进行CAB/CB读取第二个数据和EAB/EB将数据写存储器 D、以上都发生冲突。

22、当使用FFT的位倒序寻址时,应使用的寻址方式是( )

A、直接寻址B、间接寻址 C、绝对地址寻址 D、立即数寻址

23、若偏移地址为60h,若要采用直接寻址方式寻址地址为0860h的数据存储单元,则应设置数据页指针DP= ( ) A、08h B、0fh C、16 D、300h 24、C54X DSP系统中没有除法指令,可以使用( )来实现除法。 A.SUBS B. ADDC C. SUBC D. MAC

25、关于宏与子程序的异同点,下列说法中错误的是( )。

A、宏调用实际上是用符号(一条假指令)替代一块代码;而子程序调用则需将程序指针转移到子程序所在位置去执行。

B、宏调用快速,但多次调用时,由于多次复制代码段而使占用存储器量较多;子程序调用时,由于代码模块只存在于一个地方,因此尽管速度有所减缓,但占用存储空间较少。

C、宏要优于子程序调用,因此应使用宏以简化编程并保持高速度。 D、在存储容量有限的场合,应牺牲速度(对时间不敏感的慢速情况),采用子程序调用的方法,以降低存储器的占用量。

26、目标程序文件用( )扩展名表示。 A、.obj B、.cmd C、.out D、.asm 27、下列伪指令中,使用错误的是 ( )9C

A、 .copy init_DSP.h B、123 .usect “var1”,1 C、 .space 100h*16 D、 .GLOBAL x,y,z 28、链接器的作用是: ( ) ①输入目标文件列表;②生成目标代码.obj文件;③控制产生输出文件列表;④确定存储器分配(分页);⑤落实存储器定位;⑥生成列表文件.lst A、①②③④⑤⑥ B、①②③④⑤ C、①③④⑤ D、①③④⑤⑥ 29、下列语句中,使用正确的是 ( )

A、123 .usect “var1”,1 B、 SPLK 1234h,*+,AR4 C、 .copy init.h D、 .global x,y,z /*定义三个全局变量*/ 30、TMS320C54x内部含有______级流水线结构。 (A) 3 (B) 4 (C) 5 (D) 6

312、若要将片内双寻址数据RAM块映射到程序空间,应该是PMST的______控制位在起作用。

(A) IPTR (B) OVLY (C) DROM (D) OVM

32、下面的汇编伪指令中用于“在当前模块中定义,并可在别的模块中使用”的伪指令是_____。

(A).bss (B).data (C).def (D).ref

33、TMS320C6000系列DSP的生产商是_______。

7

(A) 德州仪器公司 (B) 朗讯公司 (C) 摩托罗拉公司 (D) 模拟器件公司 34、下面读/写操作的选项______用到地址总线PAB和数据总线EB。 (A) 程序读 (B) 程序写 (C) 外设读 (D) 外设写 35、下面的指令中属于绝对地址寻址的是______。

(A) READA 60H (B) ADD 60H,B (C) MVKD 60H,*AR2 (D) PSHD 60H 36、双操作数间接寻址只能选择4个寄存器,下面选项中正确的是______。 (A) AR0、AR1、AR2、AR3 (B) AR1、AR2、AR3、AR4 (C) AR2、AR3、AR4、AR5 (D) AR4、AR5、AR6、AR7 37、下面的助记符中用以块重复操作的符号是______。 (A) RPT (B) RPTB (C) RPTZ (D) RETE

38、C54x的2个地址生成器包括___个辅助寄存器和___个辅助寄存器算术单元。 (A) 2,2 (B) 4,2 (C) 6,2 (D) 8,2

39、下述哪一项是TC控制位的功能______。 (A) 用来指明是否有进位产生

(B) 用来选择双精度/双16位数的运算 (C) 用作测试/控制标志

(D) 对运算结果进行溢出处理

40、TMS320C5402芯片可寻址______字的外部程序空间。 (A) 16K (B)64K (C) 1M (D) 8M 41、INTM=0, _____ 全部可屏蔽中断。 (A)开放 (B)关闭

42、下面各选项中,_____表示直接寻址编辑方式位。 (A) OVM (B) SXM (C) CPL (D) CMPT 43、若OVLY=1,则片内RAM安排到_____ 。

(A) 程序空间 (B) 数据空间 (C) 程序空间和数据空间 (D) 都不是 44、下面的汇编命令中用于定义未初始化段的是_____。 (A).bss (B).data (C).text (D).sect

45、下面读/写操作的选项______用到地址总线DAB和数据总线DB。 (A) 程序读 (B) 程序写 (C) 外设读 (D) 外设写 46、下面选项中,______指令是累加器寻址指令。 (A)LD #0,A (B)MVKD 1000H,*AR5 (C)PORTR FIFO,*AR5 (D)READA 60H

47、下面选项______中的间接寻址单操作数表示循环寻址。 (A)*AR2-0B (B)*AR2-0% (C)*AR2(5) (D)*+AR2(5) 48、下面选项______表示定时控制寄存器。 (A)TIM (B)PRD (C)PSC (D)TCR

49、下面的助记符,______表示无符号数的加法。 (A)ADD (B)ADDC (C)ADDM (D)ADDS

50、TMS320C54X DSP微处理器采用的是________结构。

A、 哈佛结构 B 、冯?诺依曼结构 C、矩阵结构 D、以上都不是

8

空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。当进行高速运算时,不但不能同时进行取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速度较慢。 哈佛(Harvard)结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信号处理。 改进型的哈佛结构是采用双存储空间和数条总线,即一条程序总线和多条数据总线。允许在程序空间和数据空间之间相互传送数据,使这些数据可以由算术运算指令直接调用,增强芯片的灵活性;提供了存储指令的高速缓冲器(cache)和相应的指令,当重复执行这些指令时,只需读入一次就可连续使用,不需要再次从程序存储器中读出,从而减少了指令执行作需要的时间。

8、TMS320C54X指令系统的寻址方式各有哪些?各寻址方式举一例说明。 8、答: 寻址方式 立即寻址 绝对寻址 累加器寻址 直接寻址 间接寻址 存储器映像寄存器寻址 堆栈寻址 用 途 主要用于初始化 利用16位地址寻址存储单元 将累加器中的内容作为地址 利用数据页指针和堆栈指针寻址 利用辅助寄存器作为地址指针 快速寻址存储器映象寄存器 压入/弹出数据存储器和存储器映像寄存器MMR 举 例 LD #10,A READA x LD @x,A 指令含义 立即数10 -> A 将A的内容作为地址读程序存储器,并存入x存储单元 (DP+x的低7位地址) ? A STL A,*(y) 将AL内容存入y所在的存储单元 LD *AR1,A ((AR1)) -> A LDM ST1,B (ST1) -> B PSHM AG (SP)-1->SP,(AG) -> (SP) 9、简述DSP处理器中断系统分为几种中断,如何清除中断标志?

9、答:硬件中断:由片外管脚和片内外设引起的中断,又分为可屏蔽中断和非屏蔽中断。 软件中断:软件中断是由程序指令产生的中断请求, 有三种情况将清除中断标志: (1)软件和硬件复位,即’C54x的复位引脚RS=0; (2)相应的IFR标志位置1; (3)使用相应的中断号响应该中断,即使用INTR #K指令。

10、简述C54x系列DSP定时器的组成部分、各部分分别起什么作用?

10、答:定时器主要由定时寄存器TIM、定时周期寄存器PRD、定时控制寄存器TCR及相应的逻辑控制电路组成。定时周期寄存器PRD用来存放定时时间,定时寄存器TIM为16位减1计数器,定时控制寄存器TCR存放定时器的控制位和状态位,逻辑控制电路用来控制定时器协调工作。

11、简述DSP处理器TMS320VC5402在微计算机工作模式中上电启动的过程。

11、答:DSP上电复位后,程序PC指针跳转到0xff80位置,在芯片的0xff80这个单元中存储着跳转指令、程序自动跳转到0xF800,开始执行自举装载程序,自举装载程序将片外

14

存储器的程序搬运到DSP程序存储空间的某个地方,自举装载程序的最后一条指令是跳转指令,程序接着跳转到刚才搬运在程序存储空间的某个地址,从而开始程序的自动运行。

12、简述TI公司C2000, C5000, C6000系列处理器的应用范围。 12、答:C2x、C24x称为C2000系列,主要用于数字控制系统;

C54x、C55x称为C5000系列,主要用于功耗低、便于携带的通信终端;

C62x、C64x和C67x称为C6000系列,主要用于高性能复杂的通信系统,如移动通信基站。

13、 简述链接命令文件(.cmd文件)的功能。

13、 答:链接命令文件(.cmd文件)指定存储器的结构和段的定位,有MEMORY和SECTIONS两条指令。 MEMORY伪指令——用来定义目标系统的存储器配置空间,包括对存储器各部分命名,以及规定它们的起始地址和长度。

SECTIONS伪指令——用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置,也可用于指定子段。

14、 在C54x的程序中,“.text”和“.sect”段有什么区别?

14、 答:在程序中,所有的“.text”段在编译时合并为一个“.text”段,并将其定位在一个连续的存储空间中。 在“.sect”定义的段中,由于不同的段均有不同的段名,因此不同段名的“.sect”段不会合并为一个段,而且可以分别定位在程序存储空间的不同位置。

15、 简述C54x系列DSP的定时器工作过程。 15、 答:① 定时分频系数和周期数分别装入TCD和PRC寄存器中; ② 每来一个定时脉冲CLKOUT,计数器PSC减1; ③ 当PSC减至0时,PSC产生借位信号; ④ 在PSC的借位信号作用下,TIM减1计数,同时将分频系数装入PSC,重新计数; ⑤ 当TIM减到0时,定时时间到,由借位产生定时中断TINT和定时输出TOUT,并将PRD中的时间常数重新装入TIM。

16、 简述PMST寄存器中IPTR的作用。

16、答:C54x的中断向量地址是由PMST寄存器中的IPTR(9位中断向量指针)和左移2位后的中断向量序号所组成。

中断向量地址=IPTR+(左移2位的中断向量序号)

17、宏指令与子程序有哪些区别? 17、答:⑴ 宏指令和子程序都可以被多次调用,但是把子程序汇编成目标代码的过程只进行一次,而在用到宏指令的每个地方都要对宏指令中的语句逐条地进行汇编。 ⑵ 在调用前,由于子程序不使用参数,故子程序所需要的寄存器等都必须事先设置好;而对于宏指令来说,由于可以使用参数,调用时只要直接代入参数就行了。

18、TMS320C54X DSP的程序代码或数据以段的形式装载于存储器中,段可分为哪两种基本类型?有哪5条伪指令来建立和管理各种各样的段?并指明各伪指令的功能。

15

18、答:段分为初始化段和未初始化段。 .text 段(文本段),通常包含可执行代码; .data 段(数据段),通常包含初始化数据;

.sect段——已初始化段,由汇编器伪指令建立的自定义段。 .bss段——未初始化段;

.usect段——未初始化段,由汇编命令建立的命名段(自定义段)。

19、如何实现DSP由一种工作频率切换到另外一种工作频率? 19、答:步骤1:复位PLLNDIV,选择DIV方式; 步骤2:检测PLL的状态,读PLLSTATUS位; 步骤3:根据所要切换的倍频,确定乘系数;

步骤4:由所需要的牵引时间,设置PLLCOUNT的当前值; 步骤5:设定CLKMD寄存器。

20、简述DSP处理器中断系统分为几种中断,如何清除中断标志?

20、答:硬件中断:由片外管脚和片内外设引起的中断,又分为可屏蔽中断和非屏蔽中断。 软件中断:软件中断是由程序指令产生的中断请求, (5) 有三种情况将清除中断标志: (1)软件和硬件复位,即’C54x的复位引脚RS=0; (2)相应的IFR标志位置1;

(3)使用相应的中断号响应该中断,即使用INTR #K指令。 (5) 21、一个典型的DSP系统通常由哪些部分组成?画出框图.

21、答:DSP芯片及DSP基本系统、程序和数据存储器、数/模和模/数转换器、模拟控制与处理电路、各种控制口和通信口、电源处理电路和同步电路等。

信 号 预 处 理 、 MUX 、 程 控 放 大 等 防混叠 滤波器 ? ? ? 防混叠 滤波器 ADC ? ? ? 控制口 ADC DAC ? ? ? TMS320C54x EPROM RAM 平滑 滤波? ? ? 平滑 滤波器 DAC 通信口 22、若中断向量指针IPTR的值为01A0H,而中断为定时器中断TINT0(偏移地址为4Ch),那么在中断响应时,程序计数器指针PC的值为多少,是怎样计算出来? 23、TMS320C54x系列的CPU主要有哪些部分组成?

24、TMS320C54xDSP的CPU执行中断服务程序(ISR)有哪几个步骤?

16

25、描述直接寻址的特点,并举例说明直接寻址与绝对寻址之间的区别? 26、若中断向量指针IPTR的值为01A0H,而中断为外部中断0 /INT0(偏移地址为40h),那么在中断响应时,程序计数器指针PC的值为多少,是怎样计算出来? 27、TMS320C54x片内存储器包括哪些种类?

17

五、程序阅读题

1、 阅读下面的程序,回答问题。 .bss x, 8

LD #0001H,16,B STM #7,BRC STM #x,AR4 RPTB next-1

ADD *AR4,16,B,A STH A,*AR4+ next: LD #0,B 问题:(1)寄存器“BRC”的功能是什么?

(2)汇编语句“ADD *AR4,16,B,A”执行了多少次?

(3)执行语句“LD #0001H,16,B”后,累加器B的内容是多少?

1、(1) 寄存器“BRC”的功能是暂存块循环的次数 (2) 8次

(3) B=0x0000010000H;

2、阅读下面的程序片断,写出运行结果 .mmregs DAT0 .SET 60H

LD #004h,DP

ST #0345h,DAT0

STM #0002h,T MPY DAT0,A NOP

问题:(1)寄存器T的作用是什么?

(2)执行“MPY DAT0,A”后,累加器A的内容是什么? 2、答:寄存器T的作用是暂存被乘数, 累加器A的内容为0x68A或68Ah

3、阅读程序,回答后面的问题 STM #6,AR4 begin: STM #9,BRC RPTB next-1 nop

next: LD #0,B

banz begin,*AR4-

问题:(1) BRC寄存器是做什么用途?

(2)语句“banz begin,*AR4-”的作用是什么? (3)其中的“nop”语句被执行了多少次? 3、答:(1)BRC保存着RPTB指令的循环次数

(2)判断AR4的内容是否为零,若不为零,跳转到标号begin。

18

(3)10次 4、 已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=111,外部晶振=10MHz,参数设置表:

CLKMD1 CLKMD2 CLKMD3 CLKMD复位值 0 0 0 1 1 1 1 0 0 1 0 1 1 0 0 1 0 0 0 1 1 E007H 9007H 4007H 1007H F007H 0000H F000H 时钟方式 PLL×15 PLL×10 PLL×5 PLL×2 PLL×1 2分频 4分频 STM #00H,CLKMD Status:LDM CLKMD,A AND #01H,A BC Status,ANEQ STM #9007H,CLKMD

问题(1)DSP复位后,DSP的工作时钟是多少?

(2)执行上面的程序片段后,DSP的工作时钟是多少? 4、答:(1)5MHz

(2)100MHz

5、阅读下面的程序片断,写出运行结果 .mmregs bei_hua .set 18

LD # bei_hua,A

问题:(1)“.mmregs”的作用是什么?

(2) 运行此段程序后,累加器A的结果是多少? 5、答:(1)定义存储器映像寄存器的符号名称

(2)A的结果是18

6、 阅读下面的程序,回答问题。

.sect \

rst: B _c_int00 ;复位中断向量的入口 NOP NOP

.space 18*4*16

tint: B timeout ;定时器0的中断向量的入口 NOP NOP

问:(1) “.sect”伪指令的作用是什么?

(2) 标号“rst”的地址为6000H,请问标号“tint”的地址是多少? 6、答:(1)定义一个自定义段名的程序段

(2) 604Ch

7、 阅读下面的命令连接文件(简称CMD文件)和程序文件: CMD文件:

19

MEMORY

{ PAGE 0: PROG: origin = 0x1000, length = 0x1000 PAGE 1: DATA: origin = 0x2000, length = 0x1000 }

SECTIONS { .text: {} > PROG PAGE 0 .data: {} > DATA PAGE 1 }

.data

table: .word 1,2,3,4 ; 变量初始化

.text

start: STM # 0,SWWSR ; 插入0个等待状态 问:(1)MEMORY和SECTIONS的作用各是什么?

(2)标号“table”和“start”的地址分别是什么,分别位于程序空间还是数据空间? 7、答:(1)MEMORY和SECTIONS链接伪指令,用来指定目标存储器结构和地址分配。

(2)标号table:1000h(程序空间) 标号start:2000h(数据空间)

8、阅读下面的程序,回答问题。 MEMORY

{ PAGE 0: PROG: origin = 0x2000, length = 0x1000 PAGE 1: DATA: origin = 0x3000, length = 0x1000 }

SECTIONS { .text: {} > PROG PAGE 0 .bss: {} > DATA PAGE 1 }

汇编程序:

.bss a,4 .bss x,4 .bss y,1

STM #a, AR3

STM #x, AR4 RPTZ A, #3

MAC *AR3+,*AR4+,A STL A,*(y) 问题:(1)指令“STM #a, AR3”的作用是什么?执行此句指令后,寄存器AR3的内容是多少?

(2)指令“MAC *AR3+,*AR4+,A”执行了几次?每执行一次寄存器AR3和AR4的内容如何变化?

(3)这段代码的功能是什么?

8、答:(1)将标号a的地址赋给辅助工作寄存器AR3,AR3=3000h。

(2)执行了4次,每执行一次辅助工作寄存器AR3和AR4的内容增一。

20

(3) y??axii?14i

9、阅读下面的程序,回答问题。 MEMORY

{ PAGE 0: PROG: origin = 0x2000, length = 0x1000

PAGE 1: DATA: origin = 0x4000, length = 0x1000 }

SECTIONS { .text: {} > PROG PAGE 0 STACK: {} > DATA PAGE 1 }

汇编程序

size .set 0x0120

stack .usect “STACK”,size .text

STM # stack + size,SP 问题:(1)指令“stack .usect “STACK”,size”的作用是什么? (2)标号“stack”的存储器地址是多少?

(3)执行这段代码之后,SP寄存器的内容是多少?

9、答:(1)定义一个未初始化段,段名为”STACK”,目的是为变量stack保留size个单元的存储空间。

(2) stack的存储空间为0x4000; (3) SP=0x4120;

10、 MEMORY

{PAGE 0: PROM: org=0E000h,len=100h VECS: org=0FF80h,len=04h PAGE 1: SPRAM: org=0060h,len=20h DARAM: org=0080h,len=100h }

SECTIONS

{ .text :>EPROM PAGE 0 .data :>EPROM PAGE 0 .bss :>SPRAM PAGE 1 STACK :>DARAM PAGE 1 vectors :>VECS PAGE 0 }

问题:(1)该文件是如何配置程序空间和数据空间的? (2)该文件中出现了几个段?哪些是初始化段?哪些是未初始化段?各段是如何分配的? 10、答:(1)该文件使用MEMORY伪指令将程序空间划分为两个小区间:名为PROM的区间其起始地址为0E000h,长度为100h字;名为VECS的区间其起始地址为0FF80h,长度为

21

4字。将数据空间也分为了两个小区间: 名为SPRAM的区间其起始地址为0060h,长度为20h字;名为DARAM的区间其起始地址为0080h,长度为100h字。

(2)出现了5个段,.text,.data和vectors是初始化段,.bss和STACK段是未初始化段。

.text和.data分配到程序空间的EPROM区间;.bss分配到数据空间SPRAM区间;STACK段分配到数据空间的DARAM区间; vectors段分配到程序空间的VECS区间。

11、阅读程序,回答后面的问题

STM #9,AR4

begin: STM #7,BRC RPTB next-1 nop

next: LD #0,B banz begin,*AR4-

问(1)BRC寄存器是做什么用途?

(2)其中的“nop”语句被执行了多少次? 11、答:(1)BRC保存着RPTB指令的循环次数 (2)8次

12、阅读下面的程序,回答问题。 MEMORY

{ PAGE 0: PROG: origin = 0x2000, length = 0x1000 PAGE 1: DATA: origin = 0x3100, length = 0x1000 }

SECTIONS { .text: {} > PROG PAGE 0 .bss: {} > DATA PAGE 1 }

汇编程序:

.bss x,16

.bss y,16 .text

STM #x,AR2 STM #y,AR3 RPT #15

MVDD AR2+,*AR3+ 问题:(1)变量“x”的存储器地址是多少?位于哪个存储空间(程序还是数据存储空间)。 (2)语句“STM #x,AR2”的作用是什么?执行此句指令后,寄存器AR2的内容是多少?

(3)语句“MVDD AR2+,*AR3+”的执行了多少次?每执行一次寄存器AR2和AR3的内容如何变化?

(4)此段代码的功能是多少? 12、答:(1)变量“x”的存储器地址是0x3100;位于数据存储空间

22

(2)将变量“x”的地址赋给辅助工作寄存器AR2,AR2=3100h。

(3)执行了16次,每执行一次辅助工作寄存器AR2和AR3的内容增一。 (4)将数组变量“x”的数据传送到数组变量“y”中。 13、阅读下面的程序,回答后面的问题

.bss x,10 .bss y,1 STM #x,AR1 STM #9,AR2 LD #0,A loop: ADD *AR1+,A BANZ loop,*AR2- STL A, * (y)

问:(1) 解释语句“.bss x,10”的含义。

(2) 解释语句“STL A, * (y)”的含义。 (3)这一段程序实现什么功能? 13、答:(1) 给x保留10个空间

(2)将累加器A的低16位数据存储到变量y中。

(3)y?

?xi?110i

23

六、指令分析

(指令执行前各寄存器及内存单元数据如下表所示,请写出指令执行后的结果)(类似题型)

1、BANZ 2000H,*AR3+

2、STM #63H,BRC RPTB loop-1

3、BIT *AR5-,1

4、设A=FF20100706H,执行STL A,6,T指令后,累加器A和数据存储器单元T中的结果分别是多少?

5、已知“RET”指令执行前PC、SP和数据存储器0300H单元数据如下图所示,请分析指令执行后的结果。

24

6、已知指令 ADD *AR3+,14,A 并且知道这一条指令执行前的处理器状态如下图所示,请相应写出各存储单元在指令执行后的结果。

指令执行前A00 0000 1200C1AR30100SXM1数据存储空间0100H1500AR3CA指令执行后SXM数据存储空间0100H

7、已知指令 MPY 13,A 并且知道这一条指令执行前的处理器状态如下图所示,请相应写出各存储单元在指令执行后的结果。

指令执行前A00 0000 0036T0006FRCT1DP008数据存储空间040DH0007DPTA指令执行后FRCT数据存储空间040DH

8、已知指令 STL B,-8,*AR7- 并且知道这一条指令执行前的处理器状态如下图所示,

25

请相应写出各存储单元在指令执行后的结果。

指令执行前BFF 8421 1234SXM0AR70321数据存储空间0321H0099B指令执行后SXMAR7数据存储空间0321H

9、已知指令 SUB *AR3+,14,A 并且知道这一条指令执行前的处理器状态如下图所示,请相应写出各存储单元在指令执行后的结果。

指令执行前A00 0000 1200CXAR30100SXM1数据存储空间0100H1500AR3CA指令执行后SXM数据存储空间0100H

10、已知指令 MPY 13,A 并且知道这一条指令执行前的处理器状态如下图所示,请相应写出各存储单元在指令执行后的结果。

26

指令执行前A00 0000 0036T0006FRCT1DP008数据存储空间040DH0007DPTA指令执行后FRCT数据存储空间040DH

11、已知指令 STH B,-8,*AR7- 并且知道这一条指令执行前的处理器状态如下图所示,请相应写出各存储单元在指令执行后的结果。

指令执行前BFF 8421 1234SXM0AR70321数据存储空间0321HABCDB指令执行后SXMAR7数据存储空间0321H

27

七、程序改错题

(以下三个程序是一个完整的工程,请找出其中出现的语法错误,假设题中黑色竖线是CCS中程序显示窗口的最左边)(类似题型)

1、iti.asm

.title \ .mmregs .def _c_int00 size .set 100

stack .usect \STK\ .bss length,10H .text

_c_int00: STM #0,SWWSR

STM #stack+size,SP LD #-8531,A STM #length,AR1 MVMM SP,AR7 loop: STL A,*AR7- BANZ LOOP,*AR1- here: B here .end

2、vectors.asm .title \ .ref start .sect \ B start .end

3、shiti.cmd shiti2.obj shiyan2b.obj -o shiti.out -m shiti.map -estart memory {

PAGE 0: EPROM:org=0e000H len=0100H VECS: org=0ff80H len=0004H

28

PAGE 1: SPRAM:org=0060H len=0020H DARAM:org=0080H len=0100H }

SECTIONS { .text :>EPROM PAGE 0 .data :>EPROM PAGE 0 .bss :>SPRAM PAGE 1 STK .vectors }

:>DARAM PAGE 1 :>VECS PAGE 0 29

八、程序编写

(类似题型)

1、假设片外程序存储器1000H单元开始存放了20个无符号数,编写关键指令将20个数据传送到片内数据存储器60H单元开始的空间。

2、试用双操作数乘加指令编写y=ax的程序,假设a和x均为小数。

3、假设定点数已在累加器A中,通过3条指令将此定点数转化成浮点数。(将求得指数放在数据存储器指定单元EXPONENT中)。

30

九、程序识读

(类似题型) 1、

.title \

.mmregs

STACK .usect \ .bss x,5 .data

table: .word 1,2,3,4,5 .def _c_int00

.text

_c_int00: STM #x,AR1 RPT #4

MVPD (table),*AR1+ end: B end .end

1)、这段程序的主要功能是什么?(5分)

2)、修改主程序文件中指令“MVPD table,*AR1+”为“MVPD (table),*AR1+”,编译程序会否报错?为什么?(5分)

3)、分别将程序指令“STM #x,AR1”和“RPT #4”中的“#”号去掉,运行结果会否改变,为什么?(5分) 2、

.title \

.mmregs .def start .bss y,1 xn .usect “xn”,7 b0 .usect “b0”,7 PA0 .set 0 PA1 .set 1 .data

table: .word 1*32768/10

.word 2*32768/10 .word 3*32768/10 .word 4*32768/10 .word 5*32768/10 .word 6*32768/10 .word 7*32768/10 .text

start: SSBX FRCT STM #b0,AR1

31

RPT #6

MVPD table,*AR1+ STM #xn+6,AR2 STM #b0+6,AR3 STM #7,BK STM #-1,AR0 LD #xn,DP PORTR PA1,@xn fir2: RPTZ A,#6

MAC *AR2+0%,*AR3+0%,A STH A,@y

PORTW @y,PA0 BD fir2

PORTR PA1,*AR2+0% .end

1)、这段程序的主要功能是什么?(5分) 2)、简述BK寄存器和AR0的作用。(5分)

3)、用单操作数间接寻址指令改写MAC *AR2+0%,*AR3+0%,A指令。(5分)

32

十、硬件电路分析

(根据TMS320VC5402芯片与液晶显示控制器TCM-A0902的电路连接图回答问题)(类似题型)

1、图中液晶的A0引脚为数据寄存器和命令寄存器选择引脚。当A0=1,对液晶的数据寄存器操作;当A0=0,对液晶的命令寄存器操作。请写出液晶显示控制器的数据端口地址和命令端口地址。(6分)

2、假设要输出命令控制字,该数据放在数据存储器lcd_data中,请写出实现该功能的指令。(4分)

33

本文来源:https://www.bwwdw.com/article/1rhp.html

Top