ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:27.70KB ,
资源ID:17428768      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17428768.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(DSP考试资料文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

DSP考试资料文档格式.docx

1、AR3 0101AR3 01000100h 1500数据存储器二、 简答(共40分)1 TMS320C54x有多少条16位总线?这些总线各有什么作用?(6分)答:C54x共有4组8条16位总线 1条程序总线(PB):传送取自程序存储器的指令代码和立即操作数。 3条数据总线(CB、DB、EB):CB和EB传送从数据存储器读出的操作数;EB传送写到存储器中的数据。 4条地址总线(PAB、CAB、DAB、EAB)传送相应指令所学要的代码。2 TMS320C54x片内存储器一般包括哪些种类?如何控制存储器片内或片外的分配?TMS320C54x的片内存储空间分为3个可选择的存储空间:64K的程序空间,6

2、4K的数据空间和64K的I/O空间,所有TMS320C54x芯片都包括RAM、SARAM、DARAM。 程序空间:MP/MC=1 4000HFFFFH 片外 MP/MC=0 4000HEFFFH 片外 FF00HFFFFH 片内 OVLY=1 0000H007FH 保留 0080H007FH 片内 OVLY=0 0000H3FFFH 片外 数据空间:DROM=1 F000HFEFFH 只读空间 FF00HFFFH 保留 DROM=0 F000HFEFFH 片外3 当TMS320C54x CPU接收到可屏蔽的硬件中断时,满足哪些条件中断才能被响应?(1)出现多个中断时,此中断的优先级最高(2)I

3、NTM=0 允许全局中断 (3)IMR中的响应相应位为1,开放此中断。4 循环寻址中,如何确定循环缓冲的起始地址?如果循环缓冲大小为17,其起始地址必须从什么地址开始?BK初始化为多少?(4分)5 TMS320C54x硬件复位地址为多少?如何确定中断向量地址?计算INT0(IPTR=001H)的中断向量地址。复位后,复位向量地址为:0080H 确定地址方式:IPTR+左移2位后的中断向量序列号 10H左移2位后成为40H,IPTR=001H,则中断向量地址为00C0H6 若辅助寄存器AR0的值为0x0005H,AR3的值为0x030FH,请分别给出下列寻址方式修改后的辅助寄存器的值。*AR3+

4、 ; AR3=0310H*AR3+0 ; AR3=0314H*AR3(15) ; AR3=0324H7 分别解释以下指令的功能。LD #80h, A; 把立即数80H装入累加器ALD 80h, A; 把80H为地址的数据装如累加器ALD #80h,16, A; 把立即数80H左移16位后装如累加器A三、 程序填空(共22分,每空2分)1实现计算z=x+y-w的程序。 title mmregsSTACK usect STACK, 10h bss x,1 bss y, bss w,1 bss z,1 def start datatable: word 10,26,23 textstart: STM

5、 #0,SWWSR STM #STACK+10h,SP ;初始化堆栈指针SP STM #x,AR1 RPT #2 MVPD table,*AR1+ ;数据从程序存储器传送到数据存储器 CALL SUMBend: B endSUMB: LD x, A ADD y, A SUB w,A ;实现减法运算 STL A, z RET end2实现对数组X5=1,2,3,4,5的初始化,然后将数据存储器中的数组X5复制到数组Y5。最后实现数组X和数组Y中对应元素相乘并累加,即z=1*1+2*2+3*3+4*4+5*5 bss x, 5 bss y, 5 bss z, word 1,2,3,4,5 text

6、 STM #x, AR1 RPT 4 MVPD table,*AR1+ ;从程序存储器传送到数据存储器数组X5 STM # x, AR2STM # y, AR3 MVDD *AR1,*AR3 ;从数据存储器数组X5传送到Y5 SSBX FRCT ;准备整数乘法STM # x, AR2 STM # y, AR3STM # z, AR4RPTZ 4 MAC *AR2+,*AR3+,A STL A,*AR4 End:四、分析程序回答问题(共8分)def _c_int00 mmregsstack: usect stack,10h bss a,4 bss x,4 bss y,1table: word 1

7、,2,4,3 word 8,6,4,2 text_c_int00: STM #stack+10h,sp STM #a,AR1 RPT #7 MVPD table,*AR1+ CALL sumend: B endsum: STM #a,AR3 STM #x,AR4 RPTZ A,#3 MAC *AR3+,*AR4+,A STL A,y ret end (1) 说明该程序的功能:a1*x1=a2*x2+a3*x3+a4*x4(2) 说明以下各量的理论值(4分)A: 2A a1的地址:81H 内容:1 AR1: 88H AR3: 84H第二套1. TI公司的定点DSP产品主要有 TMS320C200

8、0 系列、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. C54

9、x DSP的寻址方式有七种,分别为立即寻址、绝对寻址、累加器寻址、直接寻址、 间接寻址 、存储器映象寄存器寻址、堆栈寻址。7. 在C54x DSP寻址和指令系统中,Xmem和Ymem表示 16位双寻址操作数 ,Dmad为16位立即数,表示 数据存储器地址 ,Pmad为16位立即数,表示 程序存储器地址 。8. 程序计数器的值可以通过 复位操作 、 顺序执行指令 、 分支转移 ,累加器转移,块重复,子程序调用,从累加器调用子程序,中断等操作改变。9. C54x DSP芯片采用了6级流水线的工作方式,即一条指令分为 预取指 、取指、译码、 寻址 、读数和执行6个阶段。10. 解决MMR写操作的流水

10、线冲突时,一般可用采用推荐指令和 插入空操作指令 的方法。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

11、. DSP芯片的开发工具可以分为 代码生成工具 和 代码调试工具 两类。1BANZ 2000h, *AR3-2CMPR GT, AR33ADD *AR3+, 14, A4SUB A, -8, B5MPY *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- ;

12、循环是否结束,没有结束则继续累加 STL A, y ;把结果存入y流程图:第三套1、 用C55x汇编语言实现计算 的程序。(10分)mpym *AR0+, *AR1+, AC0mpym *AR0+, *AR1+, AC1add AC1, AC0或者: |rpt #2 macm *AR0+, *AR1+, AC02、 用C55x汇编语言实现计算 的程序。mpym *AR0+, *AR1+, AC3 masm *AR0+, *AR1+, AC33、 以8点的FFT为例,用C55x的汇编语言实现FFT的算法,并且解释该算法的实现方法。(20分) .sect fft_code _fft: aadd #

13、(ARGS-Size+1),SP ; Adjust stack for local vars mov mmap(ST1_55),AR2 ; Save ST1,ST3 mov mmap(ST3_55),AR3 mov AR2, mov AR3, btst #0,T1,TC1 ; Check SCALE flag set mov #0x6340,mmap(ST1_55) ; Set CPL,XF,SATD,SXAM,FRCT (SCALE=1) mov #0x1f22,mmap(ST3_55) ; Set: HINT,SATA,SMUL xcc do_scale,TC1 mov #0x6300,m

14、map(ST1_55) ; Set CPL,XF,SATD,SXAM (SCALE=2) do_scale mov T2, ; Save T2 | mov #1,AC0 mov AC0, ; Initialize L=1| sfts AC0,T0 ; T0=EXP N=1EXP mov XAR1,XCDP ; CDP = pointer to U mov XSP,XAR4 add #,AR4 ; AR4 = pointer to temp mov XAR0,XAR1 ; AR1 points to sample buffer mov T0,T1 mov XAR0,XAR5 ; Copy ext

15、ernd bits to XAR5outer_loop ; for (L=1; L=EXP; L+) mov ,T0 ; note: Since the buffer is| mov #2,AC0 ; arranged in re,im pairs sfts AC0,T0 ; the index to the buffer neg T0 ; is doubled| mov ,AC1 ; But the repeat coutners sftl AC1,T0 ; are not doubled mov AC0,T0 ; LE=2 sub #1,AC0 ; Init mid_loop counte

16、r mov mmap(AC0L),BRC0 ; BRC0=LE1-1 sub #1,AC1 ; Init inner loop counter mov mmap(AC1L),BRC1 ; BRC1=(NL)-1 add AR1,AR0 mov #0,T2 ; j=0 | rptblocal mid_loop-1 ; for (j=0; jLE1;j+) mov T2,AR5 ; AR5=id=i+LE1 mov T2,AR3 add AR0,AR5 ; AR5 = pointer to Xid.re add #1,AR5,AR2 ; AR2 = pointer to Xid.im add AR

17、1,AR3 ; AR3 = pointer to Xi.re | rptblocal inner_loop-1 ; for(i=j; i#1,dual(*AR3) ; Scale Xi by 1/SCALE mov dbl(*AR3),AC2 scale add T0,AR2| sub dual(*AR4),AC2,AC1 ; Xid.re=Xi.re/ mov AC1,dbl(*(AR5+T0) ; Xid.im=Xi.im/| add dual(*AR4),AC2 ; Xi.re=Xi.re/SCALE+ mov AC2,dbl(*(AR3+T0) ; Xi.im=Xi.im/SCALE+

18、inner_loop ; End of inner loop amar *CDP+ amar *CDP+ ; Update k for pointer to Uk| add #2,T2 ; Update j mid_loop ; End of mid-loop sub #1,T1 add #1, ; Update L bcc outer_loop,T10 ; End of outer-loop mov ,AR2 ; Restore ST1,ST3,T2 mov ,AR3 mov AR2,mmap(ST1_55) mov AR3,mmap(ST3_55) mov ,T2 aadd #(Size-ARGS-1),SP ; Reset SP ret .end第四套

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1