您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > DSP原理及应用(李利)第二版课后习题答案
第1章1.简述DSP芯片的主要特点。答:哈佛结构;多总线结构;指令系统的流水线操作;专用的硬件乘法器;特殊的DSP指令;快速的指令周期;硬件配置强。2.请详细描述冯·诺曼依结构和哈佛结构,并比较它们的不同。答案在P6第一自然段。3.简述DSP系统的设计过程。答案依图1-3答之。4.在进行DSP系统设计时,如何选择合适的DSP芯片?答:芯片运算速度;芯片硬件资源;运算精度(字长);开发工具;芯片的功耗;其他因素(封装形式、环境要求、供货周期、生命周期等)。5.TI公司的DSP产品目前有哪三大主流系列?各自应用领域是什么?答案在P8第二自然段。第2章一、填空题1.TMS320C54xDSP中传送执行指令所需的地址需要用到PAB、CAB、DAB和EAB4条地址总线。P132.DSP的基本结构是采用哈佛结构,即程序和数据是分开的。3.TMS320C54xDSP采用改进的哈佛结构,围绕8条16位总线建立。P134.DSP的内部存储器类型可分为随机存取存储器(RAM)和只读存储器(ROM)。其中RAM又可以分为两种类型:双访问RAM,即DARAM和单访问RAM,即SARAM。P24-2.4节5.TMS320C54xDSP的内部总存储空间为192K字,分成3个可选择的存储空间:64K程序存储器空间、64K数据存储器空间和64KI/O存储空间。P23-2.4节6.TMS320C54xDSP具有2个40位的累加器。7.溢出方式标志位OVM=1,运算溢出。若为正溢出,则ACC中的值为007FFFFFFFH。8.桶形移位器的移位数有三种表达方式:5位立即数;ST1中5位ASM域;暂存器T的低6位。9.DSP可以处理双16位或双精度算术运算,当C16=0为双精度运算方式,当C16=1为双16位运算方式。10.TMS320C54x系列DSP的CPU具有三个16位寄存器来作为CPU状态和控制寄存器,它们是:ST0、ST1和PMST。11.TMS320C54x:DSP软硬件复位中断号为0,中断向量为00H。12.TMS320C54xDSP主机接口HPI是8位并行口。引脚13.TMS320C54xDSP的中断源中,中断号小者,中断级别最高。P2914.若PMST寄存器的值为01A0H(0000000110100000b),中断矢量为INT3(60H),则中断响应时,程序计数器指针PC的值为0000000111100000b。15.TMS320C54x有两个通用引脚,即BIO和XF,BIO输入引脚可用于监视外部接口器件的状态;XF输出引脚可以用于与外部接口器件的握手信号。P34-2.7节二、选择题1.以下控制位中,(B)用来决定程序空间是否使用内部RAM。A.MP/MCB.OVLYC.DROMD.SXM2.下列说法中错误的是(C)。P24A.每个DARAM块在单周期内能被访问2次B.每个SARAM块在单周期内能被访问1次C.片内ROM主要存放固化程序和系数,只能作为程序空间D.DARAM和SARAM既可以被映射到数据存储空间,也可以映射到程序空间3.C54x进行32位长数据读操作时使用的数据总线是(C)p15表2-1A.CB和EBB.EB和DBC.CB和DBD.CB、DB和EB4.要使DSP能够响应某个可屏蔽中断,下面说法正确的是(B)。A.需要把状态寄存器STl的INTM位置1,且中断屏蔽寄存器IMR相应位置0B.需要把状态寄存器STl的INTM位置0,且中断屏蔽寄存器IMR相应位置1C.需要把状态寄存器STl的INTM位置1,且中断屏蔽寄存器IMR相应位置1D.需要把状态寄存器STl的INTM位置0,且中断屏蔽寄存器IMR相应位置0三、简答题1.请描述TMS320C54x的总线结构。答:一条程序总线,三条数据总线,四条地址总线。程序总线PB传送从程序存储器来的指令代码和立即数;数据总线CB和DB传送从数据存储器读出的数据、数据总线EB传送写入到存储器中的数据。四组地址总线PAB、CAB、DAB、EAB传送执行指令所需地址,基本上是与PB、CB、DB、EB对应配套使用。2.写出提取B=0365434321中的指数值的指令,执行后T中的值为多少?3.TMS320C54x芯片的CPU包括哪些部分?其功能是什么?答案在p11。4.TMS320C54x有几个状态和控制寄存器?它们的功能是什么?答:3个,ST0、ST1、PMST。ST0和ST1包括各种条件和工作方式的状态,PMST包括存储器配置状态和控制信息。5.TMS320C54x片内存储器一般包括哪些种类?如何配置TMS320C54x片内存储器。答:ROM、DARAM、SARAM三种。利用状态寄存器PMST的MP/MC位、DROM位和OVLY位配置片内存储器。P226.TMS320C54x片内外设主要有哪些?答案在p14第4款。7.当TMS320C54xCPU接收到可屏蔽的硬件中断时,满足哪些条件才能响应中断?答:需要把状态寄存器STl的INTM位置1,且中断屏蔽寄存器IMR相应位置18.TMS320C54x的中断向量表是如何重定位的?答:将中断向量表复制到程序存储器的任一128字页,将页地址高9位设置到IPTP即可。第3章一、填空题1.在C54xDSP寻址和指令系统中,Xmem和Ymem表示双数据存储器操作数。Pmad为16位立即数,表示程序存储器地址,Dmad为16位立即数,表示数据存储器地址。2.C54xDSP的指令系统有助记符和代数式形式。3.在堆栈操作中,PC当前地址为4020h,SP当前地址为0033h,运行PSHMAR2后,PC=4021h,SP=0032h(假设PSHM为单字指令)。4.立即数寻址指令中在数字或符号常数前面加一个#号来表示立即数。5.位倒序寻址方式中,AR0中存放的是FFT点数的一半。6.双数据存储器操作数间接寻址所用辅助寄存器只能是AR2、AR3、AR4、AR5。7.在TMS320C54X中没有提供专门的除法指令,一般是使用SUBC指令完成无符号数除法运算。8.含有29个字的循环缓冲器必须从最低5位为0的地址开始。二、指令执行前有关寄存器及数据存储器单元情况如下图所示,请在下图分别填写指令执行后有关寄存器及数据存储器单元的内容1.ADD*AR3+,14,A指令执行前指令执行后(A)=0000001200h(A)=?0054001200h(C)=1(C)=0(AR3)=0100h(AR3)=?0101h数据存储器数据存储器(0100h)=1500h(0100h)=?1500h2.PSHM*AR3+指令执行前指令执行后(AR3)=0200h(AR3)=?0201h(SP)=8000h(SP)=?7FFFh数据存储器数据存储器(0200h)=07FFh(0200h)=?07FFh(7FFFh)=06EFh(7FFFh)=?07FFh3.POPMAR5指令执行前指令执行后(AR5)=0055h(AR5)=?07FFh(SP)=03F0h(SP)=?03F1h数据存储器数据存储器(03F0h)=07FFh(03F0h)=?07FFh4.BANZ2000h.*AR3-指令执行前指令执行后(PC)=1000h(PC)=?2000h(AR3)=005h(AR3)=?004h4.DADD*AR3+,A,B指令执行前指令执行后(A)=0056788933H(A)=?0056788933H(B)=0000000000h(AR3)=?006BACBD89hC16=0C16=0(AR3)=0100(AR3)=?0102数据存储器数据存储器(0100h)=1534h(0100h)=?1534h(0101h)=3456h(7FFFh)=?3456h三、简答题1.TMS320C54x提供哪几种数据寻址方式?举例说明它们是如何寻址的?答:7种(p39).举例p40—p452.在循环寻址方式中,如何确定循环缓冲的起始地址?如循环缓冲大小为32,其起始地址必须从哪开始?答:依2NR(循环缓冲区大小)求得N,循环缓冲的起始地址低N位必须为0。例如2632,循环缓冲区地址:xxxxxxxxxx000000b。3.若辅助寄存器AR0的值为0010H,AR3的值为0310H,循环缓冲起始地址为0300H,BK=31,请分别给出下列寻址方式修改后的辅助寄存器的值。*AR3+%0311h*AR3+0%0301h(由0320h-31得)*AR3-%030Fh*+AR3(-2)030Eh*AR0(#0100)0010h4.请描述TMS320C54x的位倒序寻址方式。设FFT长度N=16,AR0应赋值为多少?若AR2中存放的数据存储器地址为FF00H,则经过8次*AR2+0B寻址,访问的内存单元地址依次为多少?答:AR0值为8;地址低4位0000,1000,0100,1100,0010,1010,0110,1110,0001。地址依次为:FF00h,FF08h,FF04,FF0Ch,FF02,FF0A,FF06,FFE0,FF01h5.双数据存储器操作数间接寻址使用哪几种类型?所用辅助寄存器只能是哪几个?其特点是什么?答:4种类型:*ARx、*ARx-、ARx+、ARx+0%。所用寄存器为:AR2、AR3、AR4、AR5。特点:指令占空间少,运行速度快。6.直接寻址方式有哪两种?其实际地址如何生成?当(SP)=2000H,(DP)=2,偏移地址为25h时,分别寻址的是哪个存储空间的哪个单元?答:指令中含数据存储器地址低7位(dma),即所谓偏移地址。CPL位0时,与DP(9位)拼成实际地址:(DP)|dma。(DP)=2时,数据存储空间0125h。CPL位1时,与(SP)相加得实际地址。(SP)=2000h时,对应数据存储空间地址2025h。7.TMS320C54x指令系统包括哪几种基本类型的操作?答:算术指令、逻辑运算指令、程序控制指令、加载和存储指令。第4章一、填空题1.一般地,COFF目标文件包含三个缺省的段:.text、.data和bss。2.若链接器命令文件的MEMORY部分如下所示:MEMORY{PAGE0:PROG:origin=C00h.1ength=1000hPAGE1:RAM:origin=80h,length=200h}程序存储器配置为1000h字大小,数据存储器配置为200h字大小,数据存储器取名为RAM。3.汇编源程序中标号可选,若使用标号,则标号必从第一列开始;程序中可以有注释,注释在第一列开始时前面需标上*或;,但在其他列开始的注释前面只能标;。4.初始化段包含数据或代码,包括.text段、.data段以及由汇编器伪指令.sect产生的命名段。5.MEMORY的作用是用来定义目标系统的存储器空间;SECTIONS的作用是告诉链接器将输入文件中用.text、.datd、.bss和.sect等伪指令定义的段放到MEMORY命令描述的存储器空间的什么位置。6..def的功能是指定当前模块定义并且可能在其他模块定义的一个或多个符号。.ref的功能是指定在当前模块使用并且可能在其他模块定义的一个或多个符号。。二、简答题1.汇编器和链接器如何对段进行管理?答:汇编器通过段伪指令自动识别各段,并将段名相同的语句汇编在一起。链接器对段的处理有两个功能,首先,它将汇编器产生的COFF目标文件(.obj文件)的各种段作为输入段,当有多个文件链接时,它将输入段组合起来,在可执行的COFF输出模块中建立各个输出段。其次,链接器为输出段选择存储器地址。2.汇编程序中的伪指令有什么作用?其中段定义伪指令有哪些?初始化段和未初始化段有何区别?答:不产生最终代码,但对汇编器和链接器有重要的指示作用。段定义伪指令有.text、.data、.bss、.sect和.usect等。初始化段存放了程序或/和数据,未初始化段只是留下一定存储器空间。3.链接命令文件有什么作用?如何使用MEMORY命令和SECCTIONS命令?链接命令文件内容和汇编程序中段定义伪指令有联系吗?答:链接命令文件用来为链接器提供链接信息,可将链接操作
本文标题:DSP原理及应用(李利)第二版课后习题答案
链接地址:https://www.777doc.com/doc-1936485 .html