1、一填空题(本题总分12分,每空1分)1累加器A分为三个部分,分别为 ; ; 。1AG,AH,AL 2TMS320VC5402型DSP的内部采用 条 位的多总线结构。28,163TMS320VC5402型DSP采用 总线结构对程序存储器和数据存储器进行控制。3哈佛4TMS329VC5402型DSP有 个辅助工作寄存器。48个5DSP处理器TMS320VC5402中DARAM的容量是 字。516K字6TI公司的DSP处理器TMS320VC5402PGE100有_个定时器。627在链接器命令文件中,PAGE 通常指_存储空间。7数据8C54x的中断系统的中断源分为_ _中断和_ _中断。8硬件、软件
2、1TI公司DSP处理器的软件开发环境是_。1答:CCS(Code Composer Studio)2DSP处理器TMS320VC5402外部有_根地址线。2答:20根3直接寻址中从页指针的位置可以偏移寻址 个单元。3答:128 4在链接器命令文件中,PAGE 0通常指_存储空间。4答:程序5C54x系列DSP处理器中,实现时钟频率倍频或分频的部件是_。5答:锁相环PLL6TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址_单元开始工作。6答:FF80h7TMS320C54x系列DSP处理器有_个通用I/O引脚,分别是_。7答:2个,BIO和XF8DSP处理器按数据格式分为两类,
3、分别是_ _;_ _。8答:定点DSP和浮点DSP9TMS329VC5402型DSP的ST1寄存器中,INTM位的功能是 。9答:开放/关闭所有可屏蔽中断10MS320C54X DSP主机接口HPI是_位并行口。10答:81.在C54X系列中,按流水线工作方式,分支转移指令的分为哪两种类型:_;_。1.答:无延迟分支转移,延迟分支转移3.C54x的程序中,“.bss”段主要用于_。3.答:为变量保留存储空间4.从数据总线的宽度来说,TMS320VC5402PGE100是_位的DSP处理器。 4.答:16位7.TMS320VC5402型DSP处理器的内核供电电压_伏。7.答:1.8v 9.TMS
4、320C5402系列DSP处理器最大的数据存储空间为_字。9.答:64K10.在链接器命令文件中,PAGE 0通常指_存储空间。10.答:程序1. DSP技术是利用专用或通用数字信号处理芯片,通过_ _运算的方法对信号进行处理。1.答:数值运算2. C54x的程序中,“.text”段是_段,主要包含_。2.答:文本段,可执行文本3. C54x系列DSP上电复位后的工作频率是由片外3个管脚 ; ; 来决定的。3.答:CLKMD1、CLKMD2、CLKMD3 4. DSP处理器TMS320C5402最大的程序存储空间为_字。4.答:1M5. 从应用领域来说,MCU(单片机)主要用于_;DSP处理器
5、主要应用于_。5.答:控制领域;信号处理6. TMS320C54X DSP提供一个用16位堆栈指针(SP)寻址的软件堆栈。当向堆栈中压入数据时,堆栈是从 地址向 地址方向填入。6.答:高 低7. TMS320C54X DSP软硬件复位时,复位中断向量的地址为程序空间的_。7.答:FF80H4.TMS320C54X可编程定时器的定时周期 =(时钟周期)*(分频系数TDDR+1)*(_ +1)。4.答:PRD5.DSP处理器的英文全称 。5.答: Digital SignalProcessor7.DSP处理器TMS320VC5402的IO管脚供电电压_伏。7.答: 3.3v 8.C54x的程序中,
6、“.data”段是_段,主要用于_。8.答:数据段,通常包含初始化数据;10.DSP处理器TMS320C5402的I/O空间为_ _ _字。10.答:64K1TMS320VC5402型DSP的累加器是 位。1402TMS329VC5402型DSP的MP/MC管脚的功能是 。2. 微计算机或是微处理器工作模式4TMS320VC5402型DSP的CPU采用 寄存器作为专用硬件实现移位功能。4. 桶形移位寄存器5汇编语句“STL A,y”中“y”表示 寻址方式。5. 直接寻址6TMS320VC5402型DSP的ST1寄存器中,CPL位的功能是指示 。6. 直接寻址采用何种指针8解释汇编语句“READ
7、A *AR1”的功能: 。8. 以累加器A的内容作为地址读取程序存储单元,将读取的数据存入以AR1的内容作为地址的数据存储单元中10TMS320C54X具有两个通用I/O口,_用于输入外设的状态;_用于输出外设的控制信号。10. BIO,XF二判断题(本题总分10分,每小题1分)#错误#4DSP 处理器TMS320VC5402的供电电压为5V。 ( )5DSP的工作频率只能是外部晶体振荡器的频率。 ( )8TMS320C54X DSP是浮点型处理器。 ( )9TMS320C54X DSP的汇编语言中有除法指令。 ( )10TMS320VC5402型DSP内部有8K字的ROM,用于存放自举引导程
8、序、u律和A律扩展表、sin函数表以及中断向量表。 1. DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。 ( )3. TMS320C54X 系列DSP外部程序存储器的分页扩展受DROM位控制。 ( )4. TMS320C54X DSP是浮点型处理器。 ( )6. DSP的工作频率只能是外部晶体振荡器的频率。 ( )9. TMS320C54X DSP的汇编语言中有除法指令。 ( )1. 汇编伪指令可以用大写表示。 ( )3. DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。 ( )8. TMS320VC5402型DSP汇编指令READA的寻址范围为64K字。 ( ) 10.
9、 TMS320VC5402型DSP可以通过设置DROM位实现数据存储空间和程序存储空间共享片内DARAM。1. TMS320VC5402型DSP汇编指令READA的寻址范围为64K字。 ( )2. TMS320C54X 系列DSP可以通过设置OVLY位实现数据存储空间和程序存储空间共享片内ROM。 ( )5. TMS320VC5402型DSP汇编语言的伪指令也是一种指令,同样占用存储空间。 ( )8. TMS320VC5402型DSP的工作频率是由外部晶振唯一确定的。 ( )3. DSP 处理器TMS320VC5402的中断向量表位置是固定的。 ( )5. TMS320VC5402型DSP可以
10、通过设置DROM位实现数据存储空间和程序存储空间的共享片内DARAM。 ( )7. TMS320C54X 系列DSP可以通过设置OVLY位实现数据存储空间和程序存储空间的共享片内ROM。 ( )9. TMS320VC5402型DSP汇编语言的伪指令也是一种指令,同样占用存储空间。 ( )1DSP 处理器TMS320VC5402内部含有SARAM存储器。 ( )23.3V的TTL电平器件可以直接驱动5V的CMOS器件。 ( )3DSP的流水线冲突产生的原因是由于DSP运行速度还不够快。 ( )6C54X系列DSP 处理器的累加器A,B是32位的。 ( )8DSP 处理器TMS320VC5402有
11、不止一种串行口。 ( )4DSP处理器TMS320VC5402在微型计算机工作模式时,上电复位后程序从片外存储器的FF80h单元开始执行。 ( )5DSP处理器TMS320VC5402的中断向量表位置是固定的。 ( )9DSP处理器TMS320VC5402的程序存储空间只有64K字。 ( )*正确*1MEMORY伪指令用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置。 ( )2TMS320C54X DSP汇编语言源程序中,标号是可选项,若使用标号,则标号必须从第一列开始。 ( )3DSP 处理器的中断请求可以由软件产生。 ( )6哈佛结构的特点是数据总线和程序总线分开。 (
12、)7DSP和MCU属于软件可编程微处理器,用软件实现数据处理;而不带CPU软核的FPGA属于硬件可编程器件,用硬件实现数据处理。 ( )2. 在C54x系列DSP中断向量表中,每个中断向量的入口地址间隔4个字。 ( )4. 在C54x系列DSP中断向量表的最大长度只能128字。 ( )5. DSP对程序存储空间、数据存储空间和I/O空间的选择分别是由三根片选线PS、DS、IS独立选择的。 ( )6. C54x系列DSP的CPU寄存器及片内外设寄存器映射在数据存储空间的0000h-0080h中。 ( )7. 单片机通过HPI接口可以访问TMS320VC5402的全部64K字数据存储空间。 ( )
13、8. 在DSP处理器汇编程序中,标号区分大小写。 ( )9. DSP处理器TMS320VC5402的堆栈是向低地址方向生长的。 ( )10. DSP 处理器TMS320VC5402的中断向量表位置是固定的。 ( )1. 当TMS320C54X DSP处于微处理器模式时,DSP上电复位之后从片外程序存储器的FF80H开始运行。 ( )2. 在TMS320VC5402型DSP所有中断向量中,只有硬件复位向量不能被重定位,即硬件复位向量总是指向程序空间的0FF80H位置。 ( )3. DSP和MCU属于软件可编程微处理器,用软件实现数据处理;而不带CPU软核的FPGA属于硬件可编程器件,用硬件实现数
14、据处理。 ( )5. 在DSP处理器汇编程序中,标号区分大小写。 ( )7. DSP 处理器TMS320VC5402的软件中断是不可屏蔽的中断。 ( )8. 链接器命令文件是用来规定程序段的存放位置的。 ( )10. DSP处理器TMS320VC5402的堆栈是向低地址方向生长的。 ( )2. C54x系列DSP只有两个通用的I/O引脚。 ( )4. 在C54x系列DSP的寻址方式中,使用DP作为直接寻址的偏移寻址范围只有128个字。 ( )5. DSP的流水线冲突可以通过改变编程方法或者添加nop语句来消除。 ( )6. TMS320VC5402型DSP汇编语言的寻址方式可以实现FFT算法中
15、的位倒序寻址方式。 ( )7. 在C54x系列DSP中断向量表中,每个中断向量的入口地址间隔4个字。 ( )9. 如果OVLY=1,程序存储空间可以使用内部RAM,此时,不论XPC为何值,扩展程序存储空间的所有低32K字都被映像到内部RAM中。 ( )3. 在DSP的编程中可以将程序中不同的段放置在不同的存储器中。 ( )4. C54x系列DSP的寻址方式中,用DP作为直接寻址的偏移寻址范围只有128个字。( )6. 在C54x系列DSP中断向量表中,每个中断向量的入口地址间隔4个字。 ( )7. DSP对程序存储空间、数据存储空间和I/O空间的选择分别是由三根片选线PS、DS、IS独立选择的
16、。 ( )9. DSP的流水线冲突可以通过改变编程方法或者添加nop语句来消除。 ( )10. TMS320C54X系列DSP的汇编语言中分支转移指令执行需要4个机器周期。 ( )1. DSP 处理器TMS320VC5402的定时器可以构成20位的定时器。 ( )2. DSP 处理器TMS320VC5402的软件中断是不可屏蔽的中断。 ( )4. DSP 处理器TMS320VC5402可以计算浮点小数运算。 ( )6. TMS320VC5402型DSP汇编语言的寻址方式可以实现FFT算法中的位倒序寻址方式。( ) 8. 在DSP的编程中可以将程序中不同的段放置在不同的存储器中。 ( ) 10.
17、 TMS320C54X 系列DSP的汇编指令WRITA可以寻址1M字的程序空间。 ( )4DSP 处理器TMS320VC5402内部没有专用的除法指令。 ( )5定点DSP 处理器TMS320VC5402可以计算浮点小数运算 ( )7DSP 处理器TMS320VC5402的定时器可以构成20位的定时器。 ( )9DSP 处理器TMS320VC5402的软件中断是不可屏蔽的中断。 ( )10DSP 处理器TMS320VC5402支持流水线的指令运行方式 ( )1DSP处理器TMS320VC5402内部没有专用的除法指令。 ( )2定点DSP处理器TMS320VC5402可以计算浮点小数运算。 (
18、 )3CCS软件开发系统支持C语言程序编程。 ( )6DSP处理器C54x的软件中断是不可屏蔽的中断。 ( )7DSP处理器C54x支持流水线的指令运行方式。 ( )8DSP处理器C54x的堆栈是向低地址方向生长的。 ( )10DSP处理器C54x的汇编程序是由许多“段”组成的。 ( )三程序阅读题(本题总分30分,每小题10分)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”的功能是
19、什么? (2)汇编语句“ADD *AR4,16,B,A”执行了多少次? (3)执行语句“LD #0001H,16,B”后,累加器B的内容是多少?1(1) 寄存器“BRC”的功能是暂存块循环的次数 (2) 8次 (3) B=0x0100H;2. 阅读下面的程序: .mmregsDAT0.SET60HDAT1.SET61HDAT2.SET62HDAT3.SET63Hadd3 .macro P1,P2,P3,ADDRP LD P1,A ADD P2,A ADD P3,A STL A,ADDRP .endmST #0034h,DAT0ST #0243h,DAT1ST #1230h,DAT2ADD3 D
20、AT0,DAT1,DAT2,DAT3 问题:(1)语句“.mmregs”的含义。 (2)语句“ADD3 DAT0,DAT1,DAT2,DAT3”是一条什么类型的语句?作用是什么? (3)执行此段程序后,存储单元(DAT3)的运行结果多少?2(1) 定义存储器映像寄存器的符号名称。 (2)宏调用。执行三个数相加。(3) 14a7H3阅读下面的程序片断,写出运行结果 .mmregsDAT0.SET60H LD #004h,DPST #0345h,DAT0STM #0002h,TMPY DAT0,ANOP问题:(1)寄存器T的作用是什么? (2)执行“MPY DAT0,A”后,累加器A的内容是什么?
21、3答:寄存器T的作用是暂存被乘数, 累加器A的内容为0x68A或68Ah1. 阅读程序,回答后面的问题 STM #6,AR4begin: STM #9,BRC RPTB next-1 nopnext: LD #0,B banz begin,*AR4问题:(1) BRC寄存器是做什么用途?(2)语句“banz begin,*AR4”的作用是什么?(3)其中的“nop”语句被执行了多少次?1. 答:BRC保存着RPTB指令的循环次数 判断AR4的内容是否为零,若不为零,跳转到标号begin。 70次3. 已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=111,外部晶振=10MHz,参数设置
22、表:CLKMD1 CLKMD2 CLKMD3 CLKMD复位值 时钟方式 000E007H PLL15 0019007H PLL10 0104007H PLL5 1001007H PLL2 110F007H PLL1 1110000H 2分频 101F000H 4分频 STM #00H,CLKMD Status:LDM CLKMD,A AND #01H,A BC Status,ANEQ STM #9007H,CLKMD问题(1)DSP复位后,DSP的工作时钟是多少?(2)执行上面的程序片段后,DSP的工作时钟是多少?3. 答:(1)5MHz(2)100MHz1. 阅读下面的程序片断,写出运行结
23、果 .mmregsbei_hua .set 18 LD # bei_hua,A问题:(1)“.mmregs”的作用是什么?(2) 运行此段程序后,累加器A的结果是多少?1. 答:定义存储器映像寄存器的符号名称A的结果是182. 阅读下面的程序,回答问题。.sect .vectorsrst:B _c_int00 ;复位中断向量的入口NOPNOP .space 18*4*16tint:B timeout ;定时器0的中断向量的入口NOPNOP问: (1) “.sect”伪指令的作用是什么?(2) 标号“rst”的地址为6000H,请问标号“tint”的地址是多少?2. 答:定义一个自定义段名的程序
24、段604Ch3. 阅读下面的命令连接文件(简称CMD文件)和程序文件: CMD文件:MEMORY PAGE 0:PROG:origin = 0x1000,length = 0x1000PAGE 1:DATA:origin = 0x2000,length = 0x1000SECTIONS.text:PROG PAGE 0.data:DATA PAGE 1.datatable: .word 1,2,3,4 ; 变量初始化.textstart: STM # 0,SWWSR ; 插入0个等待状态问:(1)MEMORY和SECTIONS的作用各是什么?(2)标号“table”和“start”的地址分别是
25、什么,分别位于程序空间还是数据空间?3. 答:MEMORY和SECTIONS链接伪指令,用来指定目标存储器结构和地址分配。标号table:1000h(程序空间)标号start:2000h(数据空间)1. 阅读下面的程序片断,回答下面的问题DAT0.SET60HDAT1.SET61HDAT2.SET62HDAT3.SET63HLD #004h,DPST #83h,DAT0ST #0041h,DAT1RSBX SXMLD DAT0,ARPT #15SUBC DAT1,ASTL A,DAT2STH A,DAT3问:在CPL=0的情况下,(1) 语句“STL A,DAT2”,其中DAT2所指的地址是多
26、少?(2) 存储单元(DAT2)和(DAT3)的内容是多少?1答:(1) 0262h(2) (DAT2)=02H (DAT3)=01H2. 阅读下面的程序,回答问题。MEMORY PAGE 0:PROG:origin = 0x2000,length = 0x1000PAGE 1:DATA:origin = 0x3000,length = 0x1000SECTIONS.text:PROG PAGE 0.bss: DATA PAGE 1汇编程序: .bss a,4 .bss x,4 .bss y,1STM #a, AR3 STM #x, AR4 RPTZ A, #3 MAC *AR3+,*AR4+
27、,A STL A,*(y)问题:(1)指令“STM #a, AR3”的作用是什么?执行此句指令后,寄存器AR3的内容是多少? (2)指令“MAC *AR3+,*AR4+,A”执行了几次?每执行一次寄存器AR3和AR4的内容如何变化? (3)这段代码的功能是什么?2答:(1)将标号a的地址赋给辅助工作寄存器AR3,AR3=3000h。 (2)执行了4次,每执行一次辅助工作寄存器AR3和AR4的内容增一。 (3) 3. 阅读下面的程序,回答问题。 MEMORY PAGE 0:PROG:origin = 0x2000,length = 0x1000PAGE 1:DATA:origin = 0x400
28、0,length = 0x1000SECTIONS.text:PROG PAGE 0STACK:DATA PAGE 1汇编程序size .set 0x0120stack .usect “STACK”,size .text STM # stack + size,SP 问题:(1)指令“stack .usect “STACK”,size”的作用是什么? (2)标号“stack”的存储器地址是多少? (3)执行这段代码之后,SP寄存器的内容是多少?3答:(1)定义一个未初始化段,段名为”STACK”,目的是为变量stack保留size个单元的存储空间。 (2) stack的存储空间为0x4000;
29、(3) SP=0x4120;1. MEMORYPAGE 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 1STACK :DARAM PAGE 1vectors :VECS PAGE 0问题:(1)该文件是如何配置程序空间和数据空间的? (2)该文件中出现了几个段?哪些是初始化段?哪些是未初始化
30、段?各段是如何分配的? 1答:该文件使用MEMORY伪指令将程序空间划分为两个小区间:名为PROM的区间其起始地址为0E000h,长度为100h字;名为VECS的区间其起始地址为0FF80h,长度为4字。将数据空间也分为了两个小区间: 名为SPRAM的区间其起始地址为0060h,长度为20h字;名为DARAM的区间其起始地址为0080h,长度为100h字。(2)出现了5个段,.text,.data和vectors是初始化段,.bss和STACK段是未初始化段。.text和.data分配到程序空间的EPROM区间;.bss分配到数据空间SPRAM区间;STACK段分配到数据空间的DARAM区间;
31、 vectors段分配到程序空间的VECS区间。2. 阅读下面的程序片段,写出运行结果 .mmregsDAT0.SET60H LD #004h,DPST #0345h,DAT0STM #0002h,TMPY DAT0,ANOPNOP问题:(1)寄存器T的作用是什么? (2)执行“MPY DAT0,A”后,累加器A的内容是什么?2答:寄存器T的作用是暂存被乘数, 累加器A的内容为0x68A或68Ah3. 已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=101,外部晶振=10MHz,参数设置表:CLKMD1 CLKMD2 CLKMD3 CLKMD复位值 时钟方式 000E007H PLL1
32、5 0019007H PLL10 0104007H PLL5 1001007H PLL2 110F007H PLL1 1110000H 2分频 101F000H 4分频 STM #00H,CLKMD Status:LDM CLKMD,A AND #01H,A BC Status,ANEQ STM #9087H,CLKMD问题:(1)DSP复位后,DSP的工作时钟是多少?(2)执行上面的程序片段后,DSP的工作时钟是多少?3答: (1)2.5MHz(2)100MHz1. 阅读程序,回答后面的问题STM #9,AR4begin: STM #7,BRC RPTB next-1 nopnext: LD
33、 #0,B banz begin,*AR4-问(1)BRC寄存器是做什么用途?(2)其中的“nop”语句被执行了多少次?1答:BRC保存着RPTB指令的循环次数 80次2. 阅读下面的程序,回答问题。 MEMORY PAGE 0:PROG:origin = 0x2000,length = 0x1000PAGE 1:DATA:origin = 0x3000,length = 0x1000SECTIONS.text:PROG PAGE 0STACK:DATA PAGE 1汇编程序size .set 0x0120stack .usect “STACK”,size .text STM # stack + size,SP 问题:(1)指令“stack .usect “STACK”,size”的作用是什么? (2)标号“stack”的存储器地址是多少? (3)执行这段代码之后,SP寄存器的内容是多少?2答:(1)定义一个未初始化段,段名为”STACK”,目的是为变量stack保留size个单元的存储空间。 (2) stack的存储空间为0x4000; (3) SP=0x4120;3. 阅读下面的程序,回答问题。MEMORY PAGE 0: PROG: origi