收藏 分销(赏)

DSP期末试题与答案.doc

上传人:a199****6536 文档编号:1205592 上传时间:2024-04-18 格式:DOC 页数:12 大小:297.01KB 下载积分:8 金币
下载 相关 举报
DSP期末试题与答案.doc_第1页
第1页 / 共12页
DSP期末试题与答案.doc_第2页
第2页 / 共12页


点击查看更多>>
资源描述
一 、填空题: 1. DSP芯片的结构特点主要有改进的哈佛结构、 低功耗设计 、 高度并行性 、 多处理单元、特殊的DSP指令等。 2. C54x DSP具有两个 40 位累加器。累加器A的 AG或32-39 位是保护位。 3.软件中断都是由 INTR K 、 TRAP K 和 RESET 产生。 4.TMS320C54X片内有8条16位主总线,它们是1条程序总线、 3条数据总线 、 4条地址总线 。 5.MEMROY的作用是 用于描述系统实际的硬件资源,用来定义用户设计的系统中所包含的各种形式的存储器,以及它们占据的地址范围 ,SECTIONS的作用是 用于描述输入段怎样被组合到输出段内,在可执行程序内定义输出段,规定存储器内何处存放置输出段,允许重命名输出段 。 6. 执行复位操作后,下列寄存器的初始值分别为:ASM= 0 、DP= 0 。 7. TMS320C54x有三种类型的串行口:标准同步串行口(SPI)、 缓冲串行口(BSP) 、和 时分多路复用串行接口(TDM) 。 8.桶形移位器能把输入的数据进行 0-31 位的左移和 0-15 位的右移。 9.即寻址方式中的立即数有两种数值形式,数值的位数为 3、5、8、9 位时为短立即数;数值的位数为 16 位时是长立即数。 10.DSP片内寄存器在C语言中一般采用 指针 方式来访问,常常采用的方法是将DSP寄存器地址的列表定义在 头文件中(reg.h) 。 11. 所有TMS320C54X芯片内部都包含 程序 存储器和 数据 存储器。 12.直接寻址就是在指令中包含有数据存储器地址的 低7位 用作偏移地址,并与 基地地址 组成16位的数据存储器地址。 13.定时器主要由3个寄存器所组成,包括 定时寄存器TIM 、 定时周期寄存器PRD 、 定时控制寄存器TCR 。 14.链接器对段的处理主要通过 MEMORY 和 SECTIONS 两个命令完成。 15.OVLY= 0 ,则片内RAM只安排到数据存储空间。  DROM= 1 ,则部分片内ROM安排到数据空间。 16.C54X的工作方式状态寄存器PMST提供了三个控制位,包括 MP/非MC 、 OVLY 、 DROM 。 17. DSP芯片的结构特点主要有 改进的哈佛结构 、 流水线操作 、 专用的硬件乘法器 、 快速的指令周期 、特殊的DSP指令等。 18.ST1的CPL= 1 表示选用堆栈指针(SP)的直接寻址方式。 19.TMS320C54X有3个16位寄存器作为状态和控制寄存器,它们是 状态寄存器ST0 、 状态寄存器ST1 、 处理器工作方式状态寄存器PMST 。 20.ST1的C16= 0 表示ALU工作在双精度算术运算方式。 21.时钟发生器包括一个内部振荡器和一个 锁相环(PLL)电路 。 22.所有的COFF文件都包含三种形式的段,分别是 .text 文本段 、 .data 数据段 、和 .bss 保留空间段 。 23.状态寄存器ST1中CPL=0表示 使用DP ,CPL=1表示选择的是 使用SP 。 24.累加器寻址的两条指令分别是 READA Smem 、 WRITA Smem 。 二、简答题 1.简述TMS320C54x的7种基本的数据寻址方式。 答:1、立即寻址 2、绝对寻址 3、直接寻址 4、间接寻址 5、累加器寻址 6、存储 器映射寄存器寻址 7、堆栈寻址 2.段的作用是什么?COFF目标文件包含哪些段? 答:所谓段,是指连续地占有存储空间的一个代码段或数据段,是COFF文件中最重要的概念。一个目标文件中的每一段都是分开的和各不相同的。 COFF目标文件文件包含:(1)text段:可执行代码段 (2)data段:已初始化数据段(3)bss段:未初始化数据的保留空间段 3.简述线性缓冲区法实现FIR滤波器延时一个采样周期运算Z-1。 4.什么是COFF和段?COFF目标文件包含哪些段? 答:所谓段,是指连续地占有存储空间的一个代码段或数据段,是COFF文件中最重要的概念。一个目标文件中的每一段都是分开的和各不相同的。 .text 文本段 .data 数据段 .bss保留空间段 5. 简述McBSP接口的特点。 答:(1)全双工通信;(2)拥有两级缓冲发送和三级缓冲接收数据寄存器,允许连续数据流传输;(3)为数据发送和接收提供独立的帧同步脉冲和时钟信号;(4)能够与工业标准的解码器、模拟接口芯片(AICs)和其他串行A/D和D/A设备直接连接;5)支持外部移位时钟或内部频率可编程移位时钟。6) 128个通道用于接收传送。(7)支持A-bis(8)接口直接连接工业标准的多媒体数字信号编解码器,A/D、D/A和模拟芯片。 6.HPI8接口有几个寄存器?他们的作用是什么? 答:(1)HPI存储器:用于TMS320C54X与主机间传送数据。地址从1000H到17FFH,空间容量为2K字 (2)HPI地址寄存器:由主机对其直接访问,存放当前寻址HPI存储单元的地址 (3)HPI数据锁存器:由主机对其直接访问,存放当前进行读/写的数据 (4)HPI控制寄存器:TMS320C54X与主机都能对其直接访问,用于主处理与DSP相互握手,实现相互中断请求 (5)HPI控制逻辑:用于处理HPI与主机之间的接口信号 7.一个典型的DSP系统通常由哪些部分组成?画出原理框图。 答:DSP 芯片及 DSP 基本系统、程序和数据存储器、数/模和模/数转换器、模拟控制与处理 电路、各种控制口和通信口、电源处理电路和同步电路等。 8. 简述C54X芯片的主要特点。 答:(1)CPU利用其专用的硬件逻辑和高度并行性提高芯片的处理性能。 (2)存储器具有192K字可寻址存储空间(包括64K字程序存储空间、64K字数据存储空间、64K字I/O空间) (3)高度专业化的指令集能够快速地实现算法并用于高级语言编程优化 (4)片内外设和专用电路采用模块化的结构设计,可以快速地推出新的系列产品 (5)TMS320C54X执行单周期定点指令时间为25/20/15/12.5/10ns,每秒指令数为40/66/100MIPS。 (6)TMS320C54XD电源由IDLE1、IDLE2、IDLE3功耗下降指令控制功能,以便DSP工作在节电模式下,使之更适合于手机。 (7)在片仿真接口,片上的JTAG接口符合IEEE149.1边界扫描逻辑接口标准,可与主机连接,用于芯片的仿真和测试。 9.定时器由哪些寄存器组成,他们是如何工作的? 答:定时器主要由3个寄存器所组成,包括定时寄存器TIM 、定时周期寄存器 PRD 、定时控制寄存器TCR。定时寄存器TIM是一个减1计数器,提供定时器目前的计数值;周期定时器PRD用来存取定时时间常数;定时控制寄存器TCR中包含定时器的控制位和状态位,可以使能和屏蔽定时器,决定定时器的工作模式,用来控制定时器的操作。 二、指令解释 1、MAC *AR3+,*AR4+,A,B ;B=A-*AR3+*AR4 ;AR3=AR3+1 ;AR4=AR4+1 2、 SUB #12345,8,A,B ;B=A-12345<<8 3、 ADD *AR2+,*AR2-,A ;A=*(AR2)+*(AR2+1) 4、RPT #99 NOP ;重复NOP100次 5、 MVDD *AR3+,*AR5+ ;数据存储器内部传送数据AR3→AR5,且指令结束后AR3与AR5加1 6、 ABDST *AR3+,*AR4+ ;B=(*AR3-*AR4)<<16 7、 CALA A ;按累加器规定的地址调用子程序 8、ST T,*AR7- *AR7=T,AR7=AR7-1 9、DST B,*AR1+ AR1=B,AR1=AR1+1 10、STA, *AR4+ ||LD *AR4-,A AR4=A,AR4=AR4+1|| A=AR4,AR4-1 11、 LD #0032H,4,A ;立即数0032H先左移4位后,再加载累加器A 12、 STM #1000H,*AR2 ;立即数1000H存储到AR2指向的地址单元 13、 MAC #345,A,B ;立即数345与T寄存器内值相乘后与累加器A相加,结果加载累加器B 14、 MVDD *AR3-,100H ;AR3指向的地址单元的值传送给地址100H,AR3中地址减一 15、 LDM *AR1,A ;AR1指向的地址单元的值加载到累加器A 16、LD #80H, A 把立即数80H装入累加器 17、WRITA SMEM 把Smem所指定的数据存储单元中的一个数传送到累加器A所指定的成序存储单元 18、PORTR FIFO,*AR5 把一个数从端口为FIFO的I/O口复制到AR5寄存器所指向的数据存储单元中 19、LDM MMR,A ;将MMR装入累加器A中 20、MVKD SAMPLE,*AR5 21、ADD *AR3+,14,A ;将AR3左移14加上A→A AR3=AR3+1 22、MPYA TEMP2 ;B<=A.Temp2.T=Temp2 23、STA, *AR4+ ||LD *AR4-,A 24、 DST B,*AR1- ; B存到长字单元 AR1中,且AR减1 25、 MACD *AR2-,COEFFS,A 26、STL A,@quot ;将 累加器A的低16位字存放在quot的存储单元中 27、 ADD #4568H,8,A,B ;将4568H左移8位与A相加,赋给B 28、LDM AR1,A ;存储器映像寄存器寻址方式,将映像寄存器加载累加器AR1 → A的低位,其余位置为0 29、 MVDD *AR3+,*AR5+ ;数据存储器内部传送数据AR3→AR5,且指令结束后AR3与AR5加1 30、MPYA TEMP2 ;B<=A.Temp2.T=Temp2 四、编程 1.用汇编语言编制计算的程序。 .global start .mmregs .data Table: .word 1,1,1,1,1,1 .text start: STM #Table,AR1 LD #0,A RPT #5 ADDC *AR1+,A end: b end 2. 编一程序,首先实现对DATA开始的5个单元赋初值0,1,2,3,4,5,然后再对每个单元内容加1。 ;chu shi hua x[5]={0,1,2,3,4} bin dui mei ge dan yuan jia 1 .title "lian.asm" .mmregs .bss x,5 stack .usect "stack",10h .data table: .word 0,1,2,3,4 .def start .text start: STM #x,AR1 RPT #4 MVPD table,*AR1+ LD #1,16,B STM #4,BRC STM #x,AR4 RPTB #next-1 ADD *AR4,16,B,A STH A,*AR4+ next: LD #0,B end: B end .end 3.试编一程序,计算y =,其中数据均为小数。并找出5项乘积(i=1,2,3,4,5)中的最小值,放入z单元中。 4. 编一程序,首先实现对DATA开始的4个单元赋初值0,1,2,3,4,然后再对每个单元内容加1。 5.编写一段程序,将程序存储器中的10个数据首先传送到数据存储器中(以DATA1开始),再将DATA1开始的10个单元内容传送到DATA2开始的数据储存期中。 .global start .mmregs .data Table: .word 2,1,2,3,4,5,6,7,8,2 .bss DATA1,10 .bss DATA2,10 .text start: STM #DATA1,AR1 RPT #9 MVPD Table,*AR1+ STM #DATA2,AR0 RPT #9 MVPD DATA1,*AR0+ end: b end 6 将数组x[5] 初始化为{1,2,3,4,5}。 .global start .mmregs .data Table: .word 1,2,3,4,5 .bss x,5 .text start: STM #x,AR1 RPT #4 MVPD Table,*AR1+ end: b end 五、阅读程序 1、阅读下列汇编源程序,在每条语句后写出注释,并叙述程序的功能。 .title "F2.ASM" ; 为汇编源程序取名 .mmregs ;定义存储器映像文件 .def start ;定义启动模式 .bss y , 1 ;为y分配1个存储空间 X .usect "x",7 ;为x预留7个存储空间 b0 .usect "b0",7 ;为b0预留7个存储空间 PA0 .set 0 ;PA0=0 PA1 .set 1 ;PA1=1 .data COEF: .word 1*32768/10 ;0.1 .word 2*32768/10 ;0.2 .word -4*32768/10 ;-0.4 .word 3*32768/10 ;0.3 .word -4*32768/10 ;-0.4 .word 2*32768/10 ;0.2 .word 1*32768/10 0.1 .text start: SSBX FRCT FRCT位置1,表示进行小数乘 STM #b0, AR1 ;b0的首地址传给AR1 RPT #6 ;重复7次下条指令 MVPD table, *AR1+ ;将程序空间的7个数据传送给数据存储器 STM #xn+6, AR2 ;   AR2指向x(n-6),AR2=86H STM #b0+6, AR3 ; AR3指向b6单元,AR3=8EH STM #7, BK ;BK=7,设置缓冲区长度 LD #xn, DP ;设置页指针,DP=01H PORTR PA1, @xn ;输入x(n) FIR2: RPTZ A, #6 ;累加器A清零,设置迭代次数 MAC *AR2+0%, *AR3+0%, A ;A=circ(AR2+AR0)+circ(AR3+AR0) STH A, @y ;暂存y(n) PORTW @y, PA0 ;输出y(n) BD FIR2 ;执行完下一条后,跳到FIR2处 PORTR PA1,*AR2+0% ;输入最新样本,并修改AR2 .end 功能:N=7的滤波器,y(n)= b0x(n) +b1x(n-1) +b2x(n-2)+ b3x(n-3)+b4 x(n-4)+ b5x(n-5)+ b6x(n-6) 2.阅读下列汇编源程序,在每条语句后写出注释,并叙述程序的功能 .title “cjy4.asm” .mmregs STACK .usect “STACK”,10H .bss a,4 ;为a分配4个存储单元 .bss x,4 ;为x分配4个存储单元 .bss y,1 ;为结果y分配1个存储单元 .def start .data ;定义数据代码段 table: .word 1*32768/10 ;在table开始的8个    .word 2*32768/10 ;地址放数据 .word -3*32768/10 .word 4*32768/10 .word 8*32768/10 .word 6*32768/10 .word -4*32768/10 .word -2*32768/10 .text ;定义可执行程序代码段 start:SSBX FRCT ;设置FRCT位,表示进行小数乘 STM #x,AR1 ;将x的首地址传给AR1 RPT #7 ;重复8次下条指令 MVPD table,*AR1+ ;将程序空间8个数传给数据存储器 STM #x,AR2 ;将数据存储器第一个数x1的地址传给AR2 STM #a,AR3 ;将数据存储器第五个数a1的地址传给AR3 RPTZ A,#3 ;将A清零,重复4次下条指令 MAC *AR2+,*AR3+,A ;执行乘法累加和,结果放在A中 STH A,@y ;将A的高端字存入结果y,低端字省去 end: B end ;原处循环等待 .end 计算y=的程序段,其中数据均为小数:a1=0.1,a2=0.2,a3=-0.3,a4=0.4,x1=0.8,x2=0.6,x3=-0.4,x4=-0.2 一、填空(每空1分,共30分) 1. TI公司的定点DSP产品主要有 TMS320C2000 系列、TMS320C5000系列和 TMS320C6000 系列。 2. ’C54x DSP中传送执行指令所需的地址需要用到 PAB 、CAB、DAB和 EAB 4条地址总线。 3. DSP的内部存储器类型可分为随机存取存储器(RAM)和只读存储器(ROM)。其中RAM又可以分为两种类型:单寻址RAM(SARAM)和双寻址RAM(DARAM)。 4. ’C54x DSP的内部总存储空间为192K字,分成3个可选择的存储空间:64K字的程序存储空间 、64K字的数据存储空间和64K字的 I/O空间 。 5. 从功能结构上,’C54X DSP的CPU可以划分成 运算部件 和 控制部件 两大部分。 6. ’C54x DSP的寻址方式有七种,分别为立即寻址、绝对寻址、累加器寻址、直接寻址、 间接寻址 、存储器映象寄存器寻址、堆栈寻址。 7. 在’C54x DSP寻址和指令系统中,Xmem和Ymem表示 16位双寻址操作数 ,Dmad为16位立即数,表示 数据存储器地址 ,Pmad为16位立即数,表示 程序存储器地址 。 8. 程序计数器的值可以通过 复位操作 、 顺序执行指令 、 分支转移 ,累加器转移,块重复,子程序调用,从累加器调用子程序,中断等操作改变。 9. ’C54x DSP芯片采用了6级流水线的工作方式,即一条指令分为 预取指 、取指、译码、 寻址 、读数和执行6个阶段。 10. 解决MMR写操作的流水线冲突时,一般可用采用推荐指令和 插入空操作指令 的方法。 11. ’C54x DSP定时器由3个16位存储器映射寄存器组成:定时器寄存器(TIM)、 定时器周期寄存器(PRD)和 定时器控制寄存器(TCR) 。 12. 主机接口(HPI,Host Port Interface) 是TMS320C54x 系列定点芯片内部具有的一种接口部件,主要用于DSP与其他总线或CPU进行通信。 13. ’C54x DSP的指令系统有 助记符指令 和 代数指令 两种形式。 14. COFF目标文件中.text段通常包含 可执行代码 ,.data段通常包含己初始化的数据,.bss段中通常为 未初始化的数据 保留空间。 15. DSP芯片的开发工具可以分为 代码生成工具 和 代码调试工具 两类。 二、简答题(每题5分,共20分) 1.什么是定点DSP芯片和浮点DSP芯片?各有什么优缺点? 解:按数据的定点格式工作的DSP芯片称为定点DSP; 按数据的浮点格式工作的DSP芯片称为浮点DSP; 定点DSP的价格便宜,功耗低,但运算精度低; 浮点DSP的价格较高,C语言编程调试方便,运算精度高。 2. 简述流水线操作的基本原理。 解:流水线操作是各指令以机器周期为单位相差一个时钟周期,连续并行工作的情况。其本质是DSP多条总线彼此独立地同时工作,使得同一条指令在不同机器周期内占用不同总线资源。同时,不同指令在同一机器周期内占用不同总线资源。 3. ’C54x DSP有哪些重复操作?各有什么优点? 解:有单条指令重复执行和程序块重复执行两种重复操作。 单条指令重复操作功能,可以使乘法/累加和数据块传送那样的多周期指令在执行一次之后变成单周期指令,大大提高了这些指令的执行速度。 利用块重复操作进行循环,是一种零开销循环。 4. 软件可编程等待状态发生器的功能是什么? 解:软件可编程等待状态产生器可以将外部总线周期扩展到7个机器周期(C549、C5402、C5410和C5420为14个机器周期),这样’C54x DSP可以方便地与慢速的片内存储器和I/O器件接口。 三、问答题(10分) 1. ’C54x DSP的串行口有哪些类型?各有什么特点? 解:有标准同步串口SP、缓冲同步串口BSP、多路缓冲串口McBSP、时分多路同步串口TMD 四种。 缓冲串口(BSP)是一个增强型的标准串口,它由一个全双工双缓冲串口和一个自动缓冲单元(ABU)组成。 由于其中的串行口与标准串口的功能相同,因此在标准模式下,缓冲串口的操作与标准串口的工作方式是一样的。不过无论是标准模式还是自动缓冲模式,BSP都提供了一些增强功能。主要包括了可编程控制的串口时钟、可选择时钟和帧同步信号的正负极性,能够以每帧8位、10位、12位和16位传输数据。通过配置BSP的控制寄存器,BSP还能实现忽略帧同步信号的数据传输。 时分复用串行口TDM采用时分复用技术,将多个外部器件复用与’C54x进行串行通信,每一个时隙对应于其中的1路通信。 TDM可以和外部的多个应用接口实现方便灵活的数据交换。’C54x最多可以和8个外部器件接口通信。 多通道缓冲串口(McBSP)是在缓冲串口的基础上发展起来的增强版。 McBSP具有高速、全双工、可与各种总线标准的器件直接接口等特点,它为DSP使用者在不同方面的应用提供了方便,尤其适合在通信领域的应用。 四、阅读指令并填空(每题5分,共25分) 1.BANZ 2000h, *AR3- 2.CMPR GT, AR3 3.ADD *AR3+, 14, A 4.SUB A, -8, B 5.MPY *AR3+, A 五、程序题(15分) 写出计算的主要汇编程序,并给程序添加注释,画出程序的流程图。 解:程序及注释: .bss x, 20 ;给变量x分配20个字单元 .bss y, 1 ;给变量y分配1个字单元 STM #x, AR1 ;取x地址 STM #19, AR2 ;设置循环次数 LD #0, A ;累加器清零 loop: ADD *AR1+, A ;累加x分量 BANZ loop, *AR2- ;循环是否结束,没有结束则继续累加 STL A, @y ;把结果存入y 流程图:
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服