DSP原理及应用试题.pdf_第1页
DSP原理及应用试题.pdf_第2页
DSP原理及应用试题.pdf_第3页
DSP原理及应用试题.pdf_第4页
DSP原理及应用试题.pdf_第5页
已阅读5页,还剩21页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一填空题(本题总分12分,每空1分) 1累加器A分为三个部分,分别为 ; ; 。 1AG,AH,AL 2TMS320VC5402型DSP的内部采用 条 位的多总线结构。 28,16 3TMS320VC5402型DSP采用 总线结构对程序存储器和数据存储 器进行控制。 3哈佛 4TMS329VC5402型DSP有 个辅助工作寄存器。 48个 5DSP处理器TMS320VC5402中DARAM的容量是 字。 516K字 6TI公司的DSP处理器TMS320VC5402PGE100有_个定时 器。 62 7在链接器命令文件中,PAGE 通常指_存储空间。 7数据 8C54x的中断系统的中断源分为_ _中断和_ _中断。 8硬件、软件 1TI公司DSP处理器的软件开发环境是_。 1答:CCS(Code Composer Studio) 2DSP处理器TMS320VC5402外部有_根地址线。 2答:20根 3直接寻址中从页指针的位置可以偏移寻址 个单元。 3答:128 4在链接器命令文件中,PAGE 0通常指_存储空间。 4答:程序 5C54x系列DSP处理器中,实现时钟频率倍频或分频的部件是 _。 5答:锁相环PLL 6TMS320C54x系列DSP处理器上电复位后,程序从指定存储地址 _单元开始工作。 6答:FF80h 7TMS320C54x系列DSP处理器有_个通用I/O引脚,分别是 _。 7答:2个,BIO和XF 8DSP处理器按数据格式分为两类,分别是_ _;_ _。 8答:定点DSP和浮点DSP 9TMS329VC5402型DSP的ST1寄存器中,INTM位的功能是 。 9答:开放/关闭所有可屏蔽中断 10MS320C54X DSP主机接口HPI是_位并行口。 10答:8 1.在C54X系列中,按流水线工作方式,分支转移指令的分为哪两种类 型:_;_。 1.答:无延迟分支转移,延迟分支转移 3.C54x的程序中,“.bss”段主要用于_。 3.答:为变量保留存储空间 4.从数据总线的宽度来说,TMS320VC5402PGE100是_位的DSP 处理器。 4.答:16位 7.TMS320VC5402型DSP处理器的内核供电电压_伏。 7.答:1.8v 9.TMS320C5402系列DSP处理器最大的数据存储空间为_字。 9.答:64K 10.在链接器命令文件中,PAGE 0通常指_存储空间。 10.答:程序 1. DSP技术是利用专用或通用数字信号处理芯片,通过_ _运算的方法 对信号进行处理。 1.答:数值运算 2. C54x的程序中,“.text”段是_段,主要包含 _。 2.答:文本段,可执行文本 3. C54x系列DSP上电复位后的工作频率是由片外3个管脚 ; ; 来决定的。 3.答:CLKMD1、CLKMD2、CLKMD3 4. DSP处理器TMS320C5402最大的程序存储空间为_字。 4.答:1M 5. 从应用领域来说,MCU(单片机)主要用于_;DSP 处理器主要应用于_。 5.答:控制领域;信号处理 6. TMS320C54X DSP提供一个用16位堆栈指针(SP)寻址的软件堆 栈。当向堆栈中压入数据时,堆栈是从 地址向 地址方向填入。 6.答:高 低 7. TMS320C54X DSP软硬件复位时,复位中断向量的地址为程序空间 的_。 7.答:FF80H 4.TMS320C54X可编程定时器的定时周期 =(时钟周期)*(分频系数 TDDR+1)*(_ +1)。 4.答:PRD 5.DSP处理器的英文全称 。 5.答: Digital Signal Processor 7.DSP处理器TMS320VC5402的IO管脚供电电压_伏。 7.答: 3.3v 8.C54x的程序中,“.data”段是_段,主要用于 _。 8.答:数据段,通常包含初始化数据; 10.DSP处理器TMS320C5402的I/O空间为_ _ _字。 10.答:64K 1TMS320VC5402型DSP的累加器是 位。 140 2TMS329VC5402型DSP的MP/MC管脚的功能是 。 2. 微计算机或是微处理器工作模式 4TMS320VC5402型DSP的CPU采用 寄存器作为专用硬件实现移 位功能。 4. 桶形移位寄存器 5汇编语句“STL A,y”中“y”表示 寻址方式。 5. 直接寻址 6TMS320VC5402型DSP的ST1寄存器中,CPL位的功能是指示 。 6. 直接寻址采用何种指针 8解释汇编语句“READA *AR1”的功能: 。 8. 以累加器A的内容作为地址读取程序存储单元,将读取的数据存入以 AR1的内容作为地址的数据存储单元中 10TMS320C54X具有两个通用I/O口,_用于输入外设的状 态;_用于输出外设的控制信号。 10. BIO,XF 二判断题(本题总分10分,每小题1分) *正确 * 1MEMORY伪指令用来指定链接器将输入段组合成输出段方式,以及 输出段在存储器中的位置。 ( ) 2TMS320C54X DSP汇编语言源程序中,标号是可选项,若使用标 号,则标号必须从第一列开始。 ( ) 3DSP 处理器的中断请求可以由软件产生。 ( ) 6哈佛结构的特点是数据总线和程序总线分开。 ( ) 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字数据存储 空间。 ( ) 8. 在DSP处理器汇编程序中,标号区分大小写。 ( ) 9. DSP处理器TMS320VC5402的堆栈是向低地址方向生长的。 ( ) 10. DSP 处理器TMS320VC5402的中断向量表位置是固定的。 ( ) 1. 当TMS320C54X DSP处于微处理器模式时,DSP上电复位之后从片外 程序存储器的FF80H开始运行。 ( ) 2. 在TMS320VC5402型DSP所有中断向量中,只有硬件复位向量不能被 重定位,即硬件复位向量总是指向程序空间的0FF80H位置。 ( ) 3. DSP和MCU属于软件可编程微处理器,用软件实现数据处理;而不 带CPU软核的FPGA属于硬件可编程器件,用硬件实现数据处 理。 ( ) 5. 在DSP处理器汇编程序中,标号区分大小写。 ( ) 7. DSP 处理器TMS320VC5402的软件中断是不可屏蔽的中断。 ( ) 8. 链接器命令文件是用来规定程序段的存放位置的。 ( ) 10. DSP处理器TMS320VC5402的堆栈是向低地址方向生长的。 ( ) 2. C54x系列DSP只有两个通用的I/O引脚。 ( ) 4. 在C54x系列DSP的寻址方式中,使用DP作为直接寻址的偏移寻址范 围只有128个字。 ( ) 5. DSP的流水线冲突可以通过改变编程方法或者添加nop语句来消除。 ( ) TMS320VC5402型DSP汇编语言的寻址方式可以实现FFT算法中的位倒序寻址方式。 ( ) 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独立选择的。 ( ) 9. DSP的流水线冲突可以通过改变编程方法或者添加nop语句来消除。 ( ) 10. TMS320C54X系列DSP的汇编语言中分支转移指令执行需要4个机器 周期。 ( ) 1. DSP 处理器TMS320VC5402的定时器可以构成20位的定时器。 ( ) 2. DSP 处理器TMS320VC5402的软件中断是不可屏蔽的中断。 ( ) 4. DSP 处理器TMS320VC5402可以计算浮点小数运算。 ( ) TMS320VC5402型DSP汇编语言的寻址方式可以实现FFT算法中的位倒序寻址方式。( ) 8. 在DSP的编程中可以将程序中不同的段放置在不同的存储器中。 ( ) 10. TMS320C54X 系列DSP的汇编指令WRITA可以寻址1M字的程序空 间。 ( ) 4DSP 处理器TMS320VC5402内部没有专用的除法指令。 ( ) 5定点DSP 处理器TMS320VC5402可以计算浮点小数运算 ( ) 7DSP 处理器TMS320VC5402的定时器可以构成20位的定时器。 ( ) 9DSP 处理器TMS320VC5402的软件中断是不可屏蔽的中断。 ( ) 10DSP 处理器TMS320VC5402支持流水线的指令运行方式 ( ) 1DSP处理器TMS320VC5402内部没有专用的除法指令。 ( ) 2定点DSP处理器TMS320VC5402可以计算浮点小数运算。 ( ) 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”的功能是什么? (2)汇编语句“ADD *AR4,16,B,A”执行了多少次? (3)执行语句“LD #0001H,16,B”后,累加器B的内容是多少? 1(1) 寄存器“BRC”的功能是暂存块循环的次数 (2) 8次 (3) B=0 x0100H; 2. 阅读下面的程序: .mmregs DAT0 .SET 60H DAT1 .SET 61H DAT2 .SET 62H DAT3 .SET 63H add3 .macro P1,P2,P3,ADDRP LD P1,A ADD P2,A ADD P3,A STL A,ADDRP .endm ST #0034h,DAT0 ST #0243h,DAT1 ST #1230h,DAT2 ADD3 DAT0,DAT1,DAT2,DAT3 问题:(1)语句“.mmregs”的含义。 (2)语句“ADD3 DAT0,DAT1,DAT2,DAT3”是一条什么类型的语句? 作用是什么? (3)执行此段程序后,存储单元(DAT3)的运行结果多少? 2(1) 定义存储器映像寄存器的符号名称。 (2)宏调用。执行三个数相加。 (3) 14a7H 3阅读下面的程序片断,写出运行结果 .mmregs DAT0 .SET 60H LD #004h,DP ST #0345h,DAT0 STM #0002h,T MPY DAT0,A NOP 问题:(1)寄存器T的作用是什么? (2)执行“MPY DAT0,A”后,累加器A的内容是什么? 3答:寄存器T的作用是暂存被乘数, 累加器A的内容为0 x68A或68Ah 1. 阅读程序,回答后面的问题 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”语句被执行了多少次? 1. 答:BRC保存着RPTB指令的循环次数 判断AR4的内容是否为零,若不为零,跳转到标号begin。 70次 3. 已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=111,外部晶振 =10MHz,参数设置表: CLKMD1CLKMD2CLKMD3CLKMD复位 值 时钟方式 000E007HPLL15 0019007HPLL10 0104007HPLL5 1001007HPLL2 110F007HPLL1 1110000H2分频 101F000H4分频 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)100MHz 1. 阅读下面的程序片断,写出运行结果 .mmregs bei_hua .set 18 LD # bei_hua,A 问题:(1)“.mmregs”的作用是什么? (2) 运行此段程序后,累加器A的结果是多少? 1. 答:定义存储器映像寄存器的符号名称 A的结果是18 2. 阅读下面的程序,回答问题。 .sect .vectors rst: B _c_int00 ;复位中断向量的入口 NOP NOP .space 18*4*16 tint: B timeout ;定时器0的中断向量的入口 NOP NOP 问: (1) “.sect”伪指令的作用是什么? (2) 标号“rst”的地址为6000H,请问标号“tint”的地址是多少? 2. 答:定义一个自定义段名的程序段 604Ch 3. 阅读下面的命令连接文件(简称CMD文件)和程序文件: CMD文件: MEMORY PAGE 0: PROG: origin = 0 x1000, length = 0 x1000 PAGE 1: DATA: origin = 0 x2000, length = 0 x1000 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”的地址分别是什么,分别位于程序空间还是 数据空间? 3. 答:MEMORY和SECTIONS链接伪指令,用来指定目标存储器结构和地 址分配。 标号table:1000h(程序空间) 标号start:2000h(数据空间) 1. 阅读下面的程序片断,回答下面的问题 DAT0 .SET 60H DAT1 .SET 61H DAT2 .SET 62H DAT3 .SET 63H LD #004h,DP ST #83h,DAT0 ST #0041h,DAT1 RSBX SXM LD DAT0,A RPT #15 SUBC DAT1,A STL A,DAT2 STH A,DAT3 问:在CPL=0的情况下, (1) 语句“STL A,DAT2”,其中DAT2所指的地址是多少? (2) 存储单元(DAT2)和(DAT3)的内容是多少? 1答:(1) 0262h (2) (DAT2)=02H (DAT3)=01H 2. 阅读下面的程序,回答问题。 MEMORY PAGE 0: PROG: origin = 0 x2000, length = 0 x1000 PAGE 1: DATA: origin = 0 x3000, length = 0 x1000 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)这段代码的功能是什么? 2答:(1)将标号a的地址赋给辅助工作寄存器AR3,AR3=3000h。 (2)执行了4次,每执行一次辅助工作寄存器AR3和AR4的内容增一。 (3) 3. 阅读下面的程序,回答问题。 MEMORY PAGE 0: PROG: origin = 0 x2000, length = 0 x1000 PAGE 1: DATA: origin = 0 x4000, length = 0 x1000 SECTIONS .text: PROG PAGE 0 STACK: DATA PAGE 1 汇编程序 size .set 0 x0120 stack .usect “STACK”,size .text STM # stack + size,SP 问题:(1)指令“stack .usect “STACK”,size”的作用是什么? (2)标号“stack”的存储器地址是多少? (3)执行这段代码之后,SP寄存器的内容是多少? 3答:(1)定义一个未初始化段,段名为”STACK”,目的是为变量stack 保留size个单元的存储空间。 (2) stack的存储空间为0 x4000; (3) SP=0 x4120; 1. 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)该文件中出现了几个段?哪些是初始化段?哪些是未初始化 段?各段是如何分配的? 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区间; vectors段分 配到程序空间的VECS区间。 2. 阅读下面的程序片段,写出运行结果 .mmregs DAT0 .SET 60H LD #004h,DP ST #0345h,DAT0 STM #0002h,T MPY DAT0,A NOP NOP 问题:(1)寄存器T的作用是什么? (2)执行“MPY DAT0,A”后,累加器A的内容是什么? 2答:寄存器T的作用是暂存被乘数, 累加器A的内容为0 x68A或68Ah 3. 已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=101,外部晶振 =10MHz,参数设置表: CLKMD1CLKMD2CLKMD3CLKMD复位 值 时钟方式 000E007HPLL15 0019007HPLL10 0104007HPLL5 1001007HPLL2 110F007HPLL1 1110000H2分频 101F000H4分频 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)100MHz 1. 阅读程序,回答后面的问题 STM #9,AR4 begin: STM #7,BRC RPTB next-1 nop next: LD #0,B banz begin,*AR4- 问(1)BRC寄存器是做什么用途? (2)其中的“nop”语句被执行了多少次? 1答:BRC保存着RPTB指令的循环次数 80次 2. 阅读下面的程序,回答问题。 MEMORY PAGE 0: PROG: origin = 0 x2000, length = 0 x1000 PAGE 1: DATA: origin = 0 x3000, length = 0 x1000 SECTIONS .text: PROG PAGE 0 STACK: DATA PAGE 1 汇编程序 size .set 0 x0120 stack .usect “STACK”,size .text STM # stack + size,SP 问题:(1)指令“stack .usect “STACK”,size”的作用是什么? (2)标号“stack”的存储器地址是多少? (3)执行这段代码之后,SP寄存器的内容是多少? 2答:(1)定义一个未初始化段,段名为”STACK”,目的是为变量stack 保留size个单元的存储空间。 (2) stack的存储空间为0 x4000; (3) SP=0 x4120; 3. 阅读下面的程序,回答问题。 MEMORY PAGE 0: PROG: origin = 0 x2000, length = 0 x1000 PAGE 1: DATA: origin = 0 x3100, length = 0 x1000 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)此段代码的功能是多少? 3答:(1)变量“x”的存储器地址是0 x3100;位于数据存储空间 (2)将变量“x”的地址赋给辅助工作寄存器AR2,AR2=3100h。 (3)执行了16次,每执行一次辅助工作寄存器AR2和AR3的内容增 一。 (4)将数组变量“x”的数据传送到数组变量“y”中。 1阅读下面的程序,回答后面的问题 .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)这一段程序实现什么功能? 1答:(1) 给x保留10个空间 (2)将累加器A的低16位数据存储到变量y中。 (3) 3. 阅读下面的程序,回答问题。 MEMORY PAGE 0: PROG: origin = 0 x2000, length = 0 x1000 PAGE 1: DATA: origin = 0 x3100, length = 0 x1000 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)此段代码的功能是多少? 3答:(1)变量“x”的存储器地址是0 x3100;位于数据存储空间 (2)将变量“x”的地址赋给辅助工作寄存器AR2,AR2=3100h。 (3)执行了16次,每执行一次辅助工作寄存器AR2和AR3的内容增 一。 (4)将数组变量“x”的数据传送到数组变量“y”中。 1. 阅读下面的程序片段,回答后面的问题 .sect .vectors rst: B _c_int00 NOP NOP .space 18*4*16 tint: B timeout NOP NOP 问:(1) “.sect”伪指令的作用是什么? (2) 标号“rst”的地址为6000H,请问标号“tint”的地址是多 少? 1.答: 定义存储器映像寄存器的符号名称 (5) A的结果是18 (5) 2阅读下面的命令连接文件(简称CMD文件)和程序文件: CMD文件: MEMORY PAGE 0: PROG: origin = 0 x1000, length = 0 x1000 PAGE 1: DATA: origin = 0 x2000, length = 0 x1000 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”的地址分别是什么,分别位于程 序空间还是数据空间? 2.答:定义一个自定义段名的程序段 (5) 604Ch (5) 3已知DSP的三个时钟引脚状态CLKMD1-CLKMD3=110,外部晶振 =10MHz,参数设置表: CLKMD1CLKMD2CLKMD3CLKMD复位 值 时钟方式 000E007HPLL15 0019007HPLL10 0104007HPLL5 1001007HPLL2 110F007HPLL1 1110000H2分频 101F000H4分频 STM #00H,CLKMD Status: LDM CLKMD,A AND #01H,A BC Status,ANEQ STM #4087H,CLKMD 问题:(1)DSP复位后,DSP的工作时钟是多少? (2)执行上面的程序片段后,DSP的工作时钟是多少? 3.答:(1)10 MHz (5) (2)50MHz (5) 四简答题(本题总分48分,每小题8分) 1. TMS320C54X指令系统的寻址方式各有哪些?各寻址方式举一例说 明。 1答: 寻址方式 用 途举 例指令含义 立即寻址 主要用于初始化LD #10,A立即数10 A 绝对寻址 利用16位地址寻址存 储单元 STL A, *(y) 将AL内容存入y所在的 存储单元 累加器寻 址 将累加器中的内容作 为地址 READA x将A的内容作为地址读 程序存储器,并存入x 存储单元 直接寻址 利用数据页指针和堆 栈指针寻址 LD x, A (DP+x的低7位地址) A 间接寻址 利用辅助寄存器作为 地址指针 LD *AR1,A (AR1) - A 存储器映 像寄存器 寻址 快速寻址存储器映象 寄存器 LDM ST1,B (ST1) B 堆栈寻址 压入/弹出数据存储器 和存储器映像寄存器 MMR PSHM AG(SP)-1SP,(AG) (SP) 2. 在C54x的汇编语言中,使用“#”、 “*”、 “”符号作为操作数的前缀 各表示什么意思? 2答:使用“#”号作为前缀,汇编器将操作数作为立即数处理。即使操 作数是寄存器或地址,也将作为立即数。 使用“*”符号作为前缀,汇编器将操作数作为间接地址,即把操作数的 内容作为地址。 使用“”符号作为前缀,汇编器将操作数作为直接地址,即操作数由直 接地址码赋值。 3. 简述COFF文件中“ 段”的概念,有哪些常用的段? 3答:段是COFF文件中最重要的概念。每个目标文件都分成若干 段。段是存储器中占据相邻空间的代码或数据块。一个目标文件中 的每个段都是分开的和各不相同的。 .text 段(文本段),通常包含可执行代码; .data 段(数据段),通常包含初始化数据; .sect段已初始化段,由汇编器伪指令建立的自定义段。 .bss段未初始化段; .usect段未初始化段,由汇编命令建立的命名段(自定义段)。 4. 简述链接器命令文件中MEMORY和SECTIONS两条指令的作用。 4答:MEMORY伪指令用来定义目标系统的存储器配置空间, 包括对存储器各部分命名,以及规定它们的起始地址和长度。 SECTIONS伪指令用来指定链接器将输入段组合成输出段方式, 以及输出段在存储器中的位置,也可用于指定子段。 5. 已知DSP的工作时钟为20MHZ,现需要用定时器定时10ms,请问 PRD和TDDR寄存器的初始值如何确定? 5答:(PRD)=19999,(TDDR)=9;或(PRD)=49999,(TDDR)=4 6.一个典型的DSP系统通常由哪些部分组成?画出框图. 6DSP芯片及DSP基本系统、程序和数据存储器、数/模和模/数转换 器、模拟控制与处理电路、各种控制口和通信口、电源处理电路和同步 电路等。 防混叠 滤波器 防混叠 滤波器 平滑 滤波器 平滑 滤波器 ADC ADC DAC DAC TMS320C54x 通信口 控制口 RAM EPROM 信 号 预 处 理 、 MUX 、 程 控 放 大 等 1. 数字信号处理技术及算法在工程实践中常见的实现方法有哪些? 1. 答:数字信号处理技术及算法在工程实践中常见的实现方法有: 在通用计算机(PC机)上用软件(如Fortran、C语言)实现 在通用计算机系统中加入专用的加速处理机实现 用单片机实现 用通用的可编程DSP芯片实现 用专用的DSP芯片实现,可用在要求信号处理速度极快的特殊场合, 如专用于FFT、数字滤波、卷积、相关算法的DSP芯片 用基于通用DSP核的ASIC芯片实现。 2. 简述冯诺依曼结构、哈佛结构和改进的哈佛结构之间的区别。 2. 答:冯诺伊曼(Von Neuman)结构采用单存储空间,即程序指令和 数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作 数都是通过一条总线分时进行。当进行高速运算时,不但不能同时进行 取指令和取操作数,而且还会造成数据传输通道的瓶颈现象,其工作速 度较慢。 哈佛(Harvard)结构采用双存储空间,程序存储器和数据存储器分 开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对 程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并 行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实 时的数字信号处理。 改进型的哈佛结构是采用双存储空间和数条总线,即一条程序总线 和多条数据总线。允许在程序空间和数据空间之间相互传送数据,使这 些数据可以由算术运算指令直接调用,增强芯片的灵活性;提供了存储 指令的高速缓冲器(cache)和相应的指令,当重复执行这些指令时,只需 读入一次就可连续使用,不需要再次从程序存储器中读出,从而减少了 指令执行作需要的时间。 3. 简述链接命令文件(cmd文件)的功能。 3. 答:链接命令文件(cmd文件)指定存储器的结构和段的定位,有 MEMORY和SECTIONS两条指令。 MEMORY伪指令用来定义目标系统的存储器配置空间,包括对 存储器各部分命名,以及规定它们的起始地址和长度。 SECTIONS伪指令用来指定链接器将输入段组合成输出段方式, 以及输出段在存储器中的位置,也可用于指定子段。 4. 简述DSP处理器中断系统分为几种中断,如何清除中断标志? 4. 答:硬件中断:由片外管脚和片内外设引起的中断,又分为可屏蔽中 断和非屏蔽中断。 软件中断:软件中断是由程序指令产生的中断请求, 有三种情况将清除中断标志: (1)软件和硬件复位,即C54x的复位引脚RS=0; (2)相应的IFR标志位置1; (3)使用相应的中断号响应该中断,即使用INTR #K指令。 5. 简述C54x系列DSP定时器的组成部分、各部分分别起什么作用? 5答:定时器主要由定时寄存器TIM、定时周期寄存器PRD、定时控 制寄存器TCR及相应的逻辑控制电路组成。定时周期寄存器PRD用来存 放定时时间,定时寄存器TIM为16位减1计数器,定时控制寄存器TCR 存放定时器的控制位和状态位,逻辑控制电路用来控制定时器协调工 作。 6. 简述DSP处理器TMS320VC5402在微计算机工作模式中上电启动的过 程。 6. 答:DSP上电复位后,程序PC指针跳转到0 xff80位置,在芯片的 0 xff80这个单元中存储着跳转指令、程序自动跳转到0 xF800,开始执行 自举装载程序,自举装载程序将片外存储器的程序搬运到DSP程序存储 空间的某个地方,自举装载程序的最后一条指令是跳转指令,程序接着 跳转到刚才搬运在程序存储空间的某个地址,从而开始程序的自动运 行。 2. 简述TI公司C2000, C5000, C6000系列处理器的应用范围。 2. 答:C2x、C24x称为C2000系列,主要用于数字控制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论