武汉大学2016DSP复习资料_第1页
武汉大学2016DSP复习资料_第2页
武汉大学2016DSP复习资料_第3页
武汉大学2016DSP复习资料_第4页
武汉大学2016DSP复习资料_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

DSP复习资料绪论什么是DSP,DSP的两层含义?DSP侠义理解为数字信号处理器,广义理解为数字信号处理方法。比较DSP、CPU和MCU,DSP和通用处理器结构有什么不同?通用CPU:微型计算机中央处理器MCU:单片机微型计算机DSP:可编程的数字信号处理器DSP采用哈弗结构通用处理器采用冯诺依曼结构掌握冯偌伊曼结构、哈佛结构以及改进的哈佛结构的区别及联系?冯·诺依曼结构:其程序代码和数据共用一个公共的存储空间和单一的地址与数据总线,取指令和取操作数只能分时进行。哈佛结构:将程序代码和数据的存储空间分开,各有自己的地址总线与数据总线。改进的哈佛结构:为了进一步提高信号处理的效率,在哈佛结构的基础上,又加以改进,使得程序代码和数据存储空间之间也可以进行数据的传送。简述数字信号处理与模拟信号处理相比的优越性?数字信号处理是采用计算机或数字信号处理器(DSP)和专用集成电路(ASIC)等专用处理设备,具有灵活、高速与高精度的优点,数字信号处理具有抗干扰强、设备尺寸小、造价低、效率高、能耗低等突出优点,这些都是模拟信号处理技术与设备所无法比拟的。DSP芯片的结构特点?改进的哈佛结构、多总线结构、流水线技术、多处理单元、特殊的DSP指令、指令周期短、运算精度高、丰富的外设、功耗低。DSP芯片的分类?按照DSP的用途,可分为通用型DSP芯片和专用型DSP芯片。按数的不同表示方法,将DSP分为两种类型:一种是定点DSP,另一种是浮点DSP。7、了解做DSP方面公司?【重点知识】1、DSP芯片内部采用哈佛结构,这种结构将程序空间和数据空间分开,允许同时取来自程序存储器的指令和数据存储器的数据。2、改进的哈佛结构允许指令存储在高速缓冲存储器中,执行此指令,不需要再从存储器中读取指令,节约了一个指令周期的时间。3、TMS320C54x内部有P、C、D、E等4条总线,每条总线又包括地址总线和数据总线。可以在一个机器周期内从程序存储器取1条指令,从数据存储器读2个操作数和向数据存储器写1个操作数。4、一般而言,一个具有四级流水线的DSP芯片执行一条指令,是将指令分为取指、译码、取操作数、执行四个阶段。5、TMS320C54xDSP的FIR指令专门用于系数对称的有限冲激响应滤波器算法(请写全称),LMS指令用于自适应滤波器算法(请写全称)。6、选择DSP芯片应考虑_运算速度、硬件资源、运算精度、功耗、开发工具、价格等主要因素,其它如封装形式、质量标准、供货情况和生命周期也应顾及。7、TI公司目前常用的DSP芯片归纳为三大系列:即TMS320C2000系列(包括TMS320C20x/C24x/C28x)、TMNS320C5000系列(包括TMS320C54x/C55x)、TMS320C6000系列(包括_TMS320C62x/C67x/C64x)。8、目前世界上生产通用DSP的厂家主要有哪几家?(请至少说出4个)主要厂家有TI公司、AD(美国模拟器件AnalogDevices)公司、Lucent公司、Motorola公司和LSILogic公司。请说出衡量DSP芯片运算速度的性能指标?(至少3种)DSP芯片的运算速度、DSP芯片的运算精度、片内硬件资源、DSP芯片的功耗、DSP芯片的开发工具、DSP芯片的价格。10、请画出4级流水线操作图。典型的DSP系统应包括抗混叠滤波器、数据采集A/D转换器、数字信号处理器DSP、D/A转换器和低通滤波器等。DSP系统的设计过程可分为算法研究与优化、DSP芯片及外围芯片的确定、软硬件设计阶段、硬件和软件调试阶段、系统集成与测试阶段5个阶段。TMS320C54x的硬件结构DSP硬件结构特点?c54x的内部结构?TMS320C54xDSP采用先进的修正哈佛结构和8总线结构 P19c54xCPU部分的结构特点?先进的多总线结构(1条程序总线、3条数据总线和4条地址总线)。40位算术逻辑运算单元(ALU),包括1个40位桶形移位寄存器和2个独立的40位累加数据ROM位。DROM可以让片内ROM映像到数据空间。DROM位的值为(1)DROM=0:片内ROM不能映像到数据空间(2)DROM=1:片内ROM的一部分映像到数据空间9、掌握c54x存储空间的分配?一共多少千字?192K有那几部分组成?程序、数据、I/O空间TMS320C5402能够寻址的程序存储器容量?1024k片内外设片内外设是指集成在DSP芯片内部的扩展功能模块,包括时钟发生器、中断、定时器、主机接口、串行口等。12、中断系统。中断是由硬件驱动或者软件驱动的信号。中断信号使C54xDSP暂停正在执行的程序,并进入中断服务程序(ISR)。中断分类(1)第一类是可屏蔽中断。这些都是可以用软件来屏蔽或开放的硬件和软件中断。C5402只使用14个可屏蔽中断。对C5402来说,这14个中断的硬件名称为:①INT3~INT0。②BRINT0、BXINT0、BRINT1和BXINT1(串行口中断)。③TINT0、TINT1(定时器中断)。④HPINT(主机接口)DMAC0~DMAC5。(2)第二类是非屏蔽中断。这些中断是不能够屏蔽的,C54x对这一类中断总是响应,并从主程序转移到中断服务程序。中断响应过程接受中断请求。应答中断。执行中断服务程序(ISR)。保存中断上下文中断向量表是如何重新定位的。在C54xDSP中,中断向量地址是由PMST寄存器中的IPTR(中断向量指针9位)和左移2位后的中断向量序号(中断向量序号为0~31,左移2位后变成7位)所组成。【重点知识】1、请写出TMS320C54xDSP8条总线的英文简称。PB、CB、DB和EB、PAB、CAB、DAB和EAB2、程序总线传送取自程序存储器的指令代码和立即操作数。3、请说明TMS320C54xDSP的CPU执行下列读写操作时分别用到哪些总线?(1)程序写EB、PAB(2)单数据读DB、DAB(3)双数据读/系数读CB、DB、PB、CAB、PAB(4)外设读DB、DAB(5)外设写EB、EAB4、TMS320C54xDSP的3组数据总线CB、DB和EB中,CB和DB传送读到数据存储器的操作数,EB传送写到存储器的数据。5、C54xDSP利用两个辅助寄存器算术运算单元ARAU0和ARAU1在每个周期内产生两个数据存储器的地址。6、C5402采用双电源供电,共内核电源电压为1.8V,IO电源电压为3.3V。7、C5402芯片共有20个地址引脚,可寻址1M字的外部程序空间、______字的外部数据空间和______字的外部IO空间。8、TMS320C54x芯片都有2个通用的IO引脚,分别为BIO和XF。9、TMS320C54x系列DSP芯片的内部结构包括40位的算术逻辑单元ALU、比较选择和存储单元CSSU、2个独立的40位累加器、40位桶形级移位寄存器、17×17位并行乘法器、40位加法器、2个地址生成器、各种专门用途的寄存器、内部总线等组成部分。10、C54x的2个地址生成器包括8个辅助寄存器和2个辅助寄存器算术单元。11、根据ALU功能框图回答问题:(1)ALU如何获取数据?A、B、T、C、D、S(2)ALU输出数据送往何方?ALU的输出为40位,被送到累加器A或B。(3)请分别说明SXM、C、C16控制位的作用?SXM:符号位扩展方式控制位。

C:进位标志。

C16:双16位/双精度算术运算方式控制位。若OVM=1,当正向溢出和负向溢出时,ALU将如何处理运行结果?正向溢出时,结果处理为007FFFFFFFH负向溢出时,结果处理为FF80000000H累加器A和B都可分为三部分:AG﹑AH和AL。其中,AG用作计算时的数据位余量,以防止诸如自相关那样的迭代运算时溢出。设A=FF20100614H,执行STLA,6,T指令后,累加器A和数据存储器单元T中的结果分别是多少?(T)=8500H,A不变累加器A和B的差别仅在于累加器A的31~16位可以用做乘法器的一个输入。如何对进位位C清零和置位?清零:RSBXC置位:SSBXC桶形移位寄存器的移位方式。18、C54XCPU的乘法器/加法器单元包含一个17*17位乘法器和40位加法器可以,在一个流水线状态周期内完成一次乘加运算。19、当ST1中的小数方式位FRCT=1,乘法器工作在小数相乘方式,乘法结果自动左移1位,以消去多余的符号位。20、比较﹑选择和存储单元CSSU是专为Viterbi算法设计的硬件单元,只要将ST1中的C16位置1,ALU就被配置成双16位工作方式,所有的双字指令都变成双16位的算术运算指令。ALU可以在一个机器周期内完成两个16位数的加/减运算,结果分别存放在累加器的高16位和低16位,然后可以利用CMPS指令对累加器的高16位和低16位进行比较,并选择较大者存放到指令所规定的存贮单元中。21、指数编码器是使用EXP指令和NORM指令对累加器的数值进行归一化处理。22、指数编码器可以在单个周期内执行EXP指令,求得累加器中数的指数值,并以2的补码的形式存放到T暂存器中。23、C54x提供三个16位寄存器来作为CPU状态和控制寄存器,它们分别为ST0﹑ST1和PMST。24、状态寄存器0中,ARP字段是作为辅助寄存器指针,在间接寻址单操作数时,用来选择辅助寄存器,当DSP工作在标准方式时,不能修正ARP,它必须置“0”。25、状态寄存器0中,DP字段称数据存储器页指针,在直接寻址方式,若ST1中的CPL=0,该字段(9位)与指令中给出的低7位地址一起形成一个16位直接寻址存储器的地址。26、CPL=1,选择堆栈指针的直接寻址方式。27、INTM=0,A全部可屏蔽中断。(A)开放(B)关闭28、ASM规定一个多大范围的移位值?-16~1529、处理器工作方式状态寄存器PMST中的IPTR为中断向量指针,它指示中断向量所驻留的128字程序存储器的位置,DSP复位时,这9位字段全部置“1”,所以复位向量总是驻留在程序存储空间的FF80H。C54x处理器工作方式状态寄存器PMST中有3个状态位MP/MC、OVLY和DROM,用来安排C54X片内存存储器作为程序或数据空间。若MP/MC=0,则片内ROM安排到程序空间。若OVLY=1,则片内RAM安排到程序空间和数据空间。若DROM=0,则片内ROM不安排到数据空间。C54x的CPU包括ALU、ACCA和ACCB、BarrelShifter、MAC、CSSU、指数编码器、及CPU状态和控制寄存器。C54X中,内部存储器的形式有SARAM、DARAM和ROM三种,SARAM和DARAM总是安排到数据存储空间,也可以构成程序存储空间;ROM一般构成程序存储空间,也可部分地安排到数据存储空间。所谓双寻址RAM(DARAM)就是一个周期内进行两次存取操作的RAM存储器,而单寻址RAM(SARAM)就是一个周期内进行一次存取操作的RAM存贮器。C5402内部含有4k字的ROM、16k字的DARAM、0k字的SARAM。C5402有20条外部程序地址线,其程序空间可扩展至1M字。整个程序空间分成16页,页号由存储器映像CPU寄存器XPC设定。当TMS320VC5402片内RAM安排到程序空间时,每页程序存储器分成两部分:一部分公共的16K字;另一部分是各自独立的48K字;当片内ROM被寻址(MP/MC=0),它只能在0页,不能映像到程序存储器的其它页。C54x有两类特殊功能寄存器,它们都映像到数据空间的第0页,第一类是CPU寄存器,它们映象到数据空间的0000H-001FH地址范围内,主要用于程序的运算处理和寻址方式的选择及设定;第二类是片内外设寄存器,它们映象到数据空间的0020H-005FH区域内,主要用于控制片内外设,包括串行通信控制寄存器组、定时器控制寄存器组、机器周期设定寄存器组等。C54x提供了一个具有64K字的I/O空间,主要用于对片外设备的访问。可以使用PORTR指令和PORTW指令对I/O空间寻址。C5402有一个6级深度的流水线,在任何一个机器周期内,可以有1~6条不同的指令在同时工作,每条指令工作在不同级的流水线上。C5402的流水线结构可分为预取指、取指、译码、寻址、读数、执行几个阶段。流水线冲突产生的原因是什么?有哪些方法可以避免流水线冲突?原因:(1)资源有限,指令同时访问DARAM同一存储块。(2)后一指令要用到前一指令提供的操作数,但前一指令尚未执行操作。避免方法:(1)C语言(2)保护性命令(3)插入若干NOP控指令TMS320C54x的指令系统掌握七种寻址方式,@,#,*表示寻址方式前缀#表示其后的操作数为立即数。前缀*表示其后的操作数为间接地址。前缀@表示其后的操作数是采用直接寻址或绝对寻址的地址。直接寻址产生的地址是@后操作数(地址)和数据页指针或堆栈指针的组合。理解直接寻址中16位地址的构成方法?P56直接寻址,就是在指令中包含有数据存储器地址(dmad)的低7位,由这7位作为偏移地址值,与基地址值(数据页指针DP或堆栈指针SP)一道构成16位数据存储器地址。其中,15~8位为指令的操作码;第7位确定了寻址方式,若I=0,表示指令使用直接寻址方式;6~0位包含了指令的数据存储器的偏移地址。直接寻址的语法是用一个符号或一个常数来确定偏移值。例如:DDSAMPLE,B低7位由SAMPLE决定,高9位:当ST1中的CPL位为0时,由ST0中的DP值(9位地址)与指令中的7位地址一道形成16位数据存储器地址。当ST1中的CPL位为1时,将指令中的7位地址与16位堆栈指针SP相加,形成16位的数据存储器地址。理解间接寻址不同方法?比较特殊的间接寻址方式有哪两种?P56单操作数间接寻址:从存储器中读或写一个单16位数据操作数。双操作数间接寻址:在一条指令中访问两个数据存储单元。循环寻址循环寻址用%表示*ARi-%,*ARi+%,*ARi-0%,*ARi+0%,*ARi(lk)%例如LD*+AR1(8)%,ASTLA,*+AR1(8)%;位倒序寻址*ARi-0B,*ARi+0BRPT#15;循环执行下一条指令15+1次ARx-0B和ARx+0B是间接寻址的位倒序寻址类型。间接寻址的ARx中的内容与AR0中内容以位倒序的方式相加产生ARx中的新内容。位倒序寻址主要应用于FFT运算。理解+,-,%,0,(lk),B的区别了解双寻址操作指令中辅助寄存器限制?由于只有2位(Xar或Yar的值)可以用于选择寄存器,所以只能选择四个寄存器,所用辅助寄存器只能是AR2、AR3、AR4、AR5掌握传送、装载指令LD,ST,STM,STH,STL,MVKD,MVDD,MVDM掌握算术运算指令ADD加法,SUB减法,MPY乘法MPYAACCA的高端进行乘法,SQUR平方、MAC乘加,MACD与程序存储器值乘加,MAS乘减掌握程序控制指令B[D],BANZ[D],BC[D]掌握重复操作指令RPT,RPTB,RPTZ9、掌握并行加载和存储指令STsrc,Ymem||LDXmem,dst【重点知识】例1、下面哪条指令是端口寻址指令?C(A)LD#0,A(B)MVKDEXAM1,*AR5(C)PORTRFIFO,*AR5(D)READA60H例2、请解释下列指令的功能并比较异同。(1))A=60H立即数,(2)偏移地址(3)A=((60H))地址所存数(1)LD#60H,A(2)LD60H,A(3)LD*(60H),A例3、指令解释。READASmemSmem=(A)把A寻址的存储器的值读到数据单元中WRITASmem(A)=Smem把数据单元中的值写到A寻址的存储器中例4、下面哪个间接寻址单操作数表示循环寻址?B(A)*AR2-0B(B)*AR2-0%(C)*AR2(5)(D)*+AR2(5)例5、下面哪条指令汇编时不会报错?(A)MAC*AR1,*AR2,A(B)MAC*AR2,*AR3,B(C)MAC*AR0,*AR1,A(D)MAC*AR5,*AR6,B例6、试分析下述指令执行后相应寄存器、状态位及数据存储器单元数据的变化。BIT*AR5+,3Addr=AR3=0100AR3=0100+1=0101A=Addr(0100)=1208(3)BACCDBANDM4444H,*AR1+例7、MAC*AR5+,A;A+(AR5)*T→A,AR5=AR5+1例8、DP直接寻址LD1A(表示数据存储器1h地址单元中内容放入累加器A中)LD#1DP(#表示立即数)ADD@30h,AA中的内容为多少?例9、FIRSXmem,Ymem,Pmad;B=B+AH*Pmad,A=(Xmem+Ymem)<<16累加器A的高段和由pmad寻址的pmem相乘,结果加到累加器B中同时,存储器操作数X和Y相加,结果左移16b,装入加法器A,下一个循环pmad+1TMS320C54x的软件开发汇编程序的编辑、汇编和链接过程图,并说明各部分的作用? P104汇编器的功能汇编器的输入文件为汇编语言源文件,其省缺的文件扩展名是.asm。汇编器包括以下功能:(1)处理汇编语言源文件中的源语句,产生一个可重新定位的目标文件(.obj);(2)根据要求,产生一个列表文件(.lst),并提供对该列表的控制;(3)根据要求,将交叉引用列表添加到源程序列表中;(4)将代码分段;(5)为每个目标代码块设置一个段程序记数器(SPC);(6)定义和引用全局符号;(7)汇编条件块;(8)支持宏调用,并允许在程序内或在库中定义宏。链接器的功能TMS320C54x的链接器将扩展名为.obj的一个或多个COFF目标文件链接起来,生成可执行的输出文件(.out)和存储器映像文件(.map)。链接器有以下的功能:(1)将各个段配置到目标系统的存储器中;(2)对各个符号和段进行重新定位,并给它们制定一个确定的地址;(3)解决输入文件之间未定义的外部引用。掌握COFF的概念,COFF包含的段及其功能? P96COFF:汇编器和链接器所创建的目标文件采用公共目标文件格式,COFF的核心概念是使用代码块和数据块编程。所谓段,就是在编写汇编语言源程序时,采用的代码块或数据块,它占据存储器的某个连续空间。所有的COFF目标文件都包含以下3种形式的段:.text段(此段通常包含可执行代码);.data段(此段通常包含初始化数据);.bss段(此段通常为未初始化变量保留存储空间)。解释.bss段、.data段、.text段的意义?.bss段通常是指用来存放程序中未初始化的全局变量的一块内存区域.data段通常是指用来存放程序中已初始化的全局变量的一块内存区域.text段通常是指用来存放程序执行代码的一块内存区域理解各种不同段定义和声明方法。P97.bss 段(此段通常为未初始化变量保留存储空间)。.bss为未初始化的变量保留空间;.data通常包含了初始化的数据;.sect定义已初始化的带命名段,其后的数据存入该段;.text该段包含了可执行的代码;.usect在一个未初始化的有命名的段中为变量保留空间。5、理解不同段的汇编方法及段程序计数器(SPC)概念,能够画出各段存储器分布图。P97/98/996、汇编器在段处理中的作用?汇编器对段的处理是通过段伪指令来区别各个段的,并将段名相同的语句汇编在一起。掌握链接器对段的处理。链接器在处理段的时候,有如下2个主要任务:(1)将由汇编器产生的COFF格式的一个或多个.obj文件链接成一个可执行的.out文件;(2)重新定位,将输出的段分配到相应的存储器空间。8、掌握MEMORY,SECTION伪指令的作用。给出存储器的描述,能够用MEMORY进行表达。(1)MEMORY命令。定义目标系统的存储器配置图,包括对存储器各部分命名,以及规定它们的起始地址和长度;(2)SECTIONS命令。告诉链接器如何将输入段组合成输出段,以及将输出段放在存储器中的什么位置。掌握编写DSP汇编源程序的格式。掌握伪指令,比如.def.mmregs的作用。.def确认一个在当前模块中定义的且能被其他模块使用的符号,汇编器把这个符号存入符号表中。.mmregs定义存储器映射寄存器的替代符号。对于所有的存储器映射寄存器,使用该指令和执行一个.set是一样的。宏定义、宏调用以及宏展开方法?P94定义宏的方法有两种:(1)宏可以在源文件起始处或者在.include/.copy文件中定义。其格式为宏名.macro[参数1],[…],[参数n]汇编语句或宏指令[.mexit].endm宏也可以在宏库中定义。.mlib宏库文件名12、汇编指令系统有哪两种形式?汇编伪指令和宏指令例1、下面哪条伪指令是未初始化段?A(A).bss(B).text(C).data(D).sect例2、下面哪条伪指令是命名段?C(A).bss(B).text(C).data(D).sectDSP集成开发环境(CCS)CCS的组成特点DCS系统在结构上一般分为SCS、CCS、DAS、FSSS四个分系统,每个分系统在硬件上采用冗余配置,各自完成其特定的功能,又可以通过网络技术实现信息共享,这种功能分散、硬件危险分散、系统相互冗余,信息管理又相对集中的模式,便成了DCS系统最显著的特点。编译器、汇编器、链接器探点和断点区别以及它们的意义探针停止目标设备,完成一个动作,即刻恢复目标系统的运行;断点停止目标设备,直到手动恢复并且打开的窗口刷新目标系统的运行;探针允许自动完成文件的输入和输出,断点不可以。DSP片内外设掌握C54x的定时器的应用及编程【例7-1】掌握C54x的中断系统及编程应用主机接口的基本原理和应用多通道缓冲串口的原理及编程应用接口信号有几个?各有什么作用?子地址映射方式时钟和帧同步收发数据的时序关系如何通过外部总线与外部存储器、数据存储器以及IO设备链接软件等待状态发生器的作用TMS320C54x基本系统设计DSP系统的硬件基本设计;存储器和I/O扩展的电路连接方法;DSP自举引导加载过程模数转换电路的设计。掌握时钟电路的设计及PLL设置方式存储器和I/O扩展的电路连接及端口地址的确定正确理解DSP系统的硬件设计实例的硬件、软件设计过程【重点知识】1、C54x片内定时器是一个软件可编程定时器,它主要由TIM、PRD和TCR组成,TIM是一个16位减1计数器,PRD是一个16位的时间常数寄存器。2、通过编程可以控制定时器产生定时中断,定时中断的周期为。3、要实现8ms的方波发生器,请编写定时器初始化的关键指令。(假设主频为100MHz)4、C54x中,中断向量地址是由PMST中的IPTR作为高9位和左移2位后的中断向量序号作为低7位所组成。5、上电后,且时钟电路已正常工作,在复位引脚输入端加上至少2个机器周期的低电平,´C54x便可完成复位操作。复位后(变成高电平)将PC置成FF80H,处理器从此处取指,并开始执行程序。6、复位后,PMST中的MP/MC位记载MP/MC引脚的状态,如果MP/MC引脚为0,处理器便从片内ROM地址FF80H处取指并开始执行程序,如果MP/MC=1,处理器则从片外程序存贮器地址FF80H处取指开始执行程序。7、C54x支持硬件中断,也支持软件中断,硬件中断包括由外部中断信号触发的外部硬件中断和由片内外围电路信

温馨提示

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

评论

0/150

提交评论