版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章:DSP汇编指令‘C54x寻址方式‘C54x特殊寻址方式说明‘C54x指令集‘C54x特殊指令使用说明一、TMS320C54x的寻址方式
立即数寻址:指令中嵌有一个固定的数绝对地址寻址:指令中有一个固定的地址累加器寻址:按累加器内的地址去访问程序存储器中的一个单元直接寻址:指令中的7bits是一个数据页内的偏移地址,而所在的数据页由数据页指针DP或SP决定。该偏移加上DP和SP的值决定了在数据存储器中的实际地址。间接寻址:按照辅助寄存器中的地址访问存储器。存储器映射寄存器寻址:修改存储器映射寄存器中的值,而不影响当前DP或SP的值。堆栈寻址:把数据压入和弹出系统堆栈。
在立即数寻址中,指令里包括了立即操作数。在一条指令中可对两种立即数编码。一种是短立即数(3、5、8或9bits),另一种是16bits的长立即数。立即数可包含在单字或双字指令中。3-,5-,8-或9-bit值在单字指令中,16-bit值在双字指令中。1.立即数寻址立即数寻址的其他例子:LD#0,ARP;ARP=0(#k3)LD#3,ASM;ASM=3(#k5)LD#50,DP;DP=50(#k9)LD#1234,A;A=1234(#K)STM#FFFFh,IMR;IMR=FFFFh(#lk)短立即数RPT长立即数RPT2.直接寻址
在直接寻址中,指令代码包含了数据存储器地址的低七位。这7-bitdma(数据存储器地址)作为偏移地址与数据页指针(DP)或堆栈指针(SP)相结合共同形成16-bit的数据存储器实际地址。如右图所示。CPL=0:dma与9-bit的DP相结合形成数据存储器地址。以DP为基准的直接寻址DP9-bit9-bit的DP指向数据存储空间的512个数据页中的一页012510511以SP为基准的直接寻址CPL=1:dma加上SP基地址形成数据存储器地址。(st1中)使用以SP为基址的直接寻址:ANDsample,ALDsample,AADDsample,B;……..3.间接寻址
在间接寻址中,64K数据空间任意单元都可通过一个辅助寄存器中的16-bit地址进行访问。‘C54x有8个16-bit辅助寄存器(AR0-AR7)。两个辅助寄存器算术单元(ARAU0和ARAU1),根据辅助寄存器的内容进行操作,完成无符号的16-bit算术运算。间接寻址很灵活,不仅能从存储器中读或写一个单16-bit数据操作数,而且能在一条指令中访问两个数据存储器单元(即从两个独立的存储器单元读数据,或读一个存储器单元同时写另一个存储器单元,或读写两个连续的存储器单元)。单操作数寻址单操作数间接寻址方框图单操作数间接寻址类型:*ARx:ARx包含了数据存储器地址*ARx-/*ARx+:访问后,ARx中的地址减1/加1*+ARx:在寻址之前,ARx中的地址加1*ARx-0B/*ARx+0B:访问后,从ARx中以位倒序进位的方式减去/加上AR0*ARx-0/*ARx+0:访问后,从ARx中减去/加上AR0*ARx-%/*ARx+%:访问后,ARx中的地址以循环寻址的方式减1/加1*ARx-0%/*ARx+0%:访问后,从ARx中以循环寻址的方式减去/加上AR0*ARx(lk):ARx和16-bit的长偏移(lk)的和用来作为数据存储器地址。ARx本身不被修改编程举例:4.绝对地址寻址有个别指令可以使用16bits的绝对地址寻址:
数据存储器地址(dmad)寻址:MVDKSmem,dmadMVDMdmad,MMRMVKDdmad,SmemMVMDpmad,Smem程序存储器地址(pmad)寻址:FIRSXmem,Ymem,pmadMACDSmem,pmad,srcMACPSmem,pmad,srcMVPDpmad,Smem端口地址(PA)寻址PORTRPA,SmemPORTWSmem,PA*(lk)寻址适用于支持单数据存储器操作数的指令
5.累加器寻址
累加器寻址是用累加器中的数作为一个地址。这种寻址方式可用来对存放数据的程序存储器寻址。共有两条指令可以采用累加器寻址:READASmemWRITASmemREADA是把累加器A所确定的程序存储器单元中的一个字,传送到单数据存储器(Smem)操作数所确定的数据存储器单元中。WRITA是把Smem操作数所确定的数据单元中的一个字,传送到累加器A确定的程序存储器单元中去。只有8条指令能使用存储器映射寄存器寻址:LDMMMR,dstMVDMdmad,MMRMVMDMMR,dmadMVMMMMRx,MMRyPOPMMMRPSHMMMRSTLMsrc,MMRSTM#lk,MMR6.存储器映射寄存器寻址
存储器映射寄存器寻址用来修改存储器映射寄存器而不影响当前数据页指针(DP)或堆栈指针(SP)的值。存储器映射寄存器寻址既可以在直接寻址中使用,又可以在间接寻址中使用。
7.堆栈寻址
系统堆栈用来在中断和子程序期间自动存放程序计数器。它也能用来存放额外的数据项或传递数据值。处理器使用一个16-bit的存储器映射寄存器—堆栈指针来对堆栈寻址,它总是指向存放在堆栈中的最后一个元素。
共有四条使用堆栈寻址方式访问堆栈的指令: PSHD把一个数据存储器的值压入堆栈。 PSHM把一个存储器映射寄存器的值压入堆栈。 POPD把一个数据存储器的值弹出堆栈。 POPM把一个存储器映射寄存器的值弹出堆栈。§3-2特殊寻址方式说明本小节重点介绍两种广泛应用的特殊寻址方式—位倒序寻址和循环寻址。
位倒序寻址
位倒序寻址提高了执行速度和在FFT算法的程序中使用存储器的效率。在这种寻址方式中,AR0存放的整数N是FFT点数的一半。一个辅助寄存器指向一数据存放的物理单元。当使用位倒序寻址把AR0加到辅助寄存器中时,地址以位倒序的方式产生,即进位是从左向右,而不是从右向左。间接寻址中*ARn+0B/-0B表示位倒序寻址。位倒序寻址的执行
设FFT长度N=16,x(0)~x(15)位于地址(01100000)~(01101111),则AR0赋值为8,位倒序方式读入数据情况如下(AR2初始为01100000):循环寻址:
许多算法,如卷积,相关和FIR滤波等,都需要在存储器中实现一个循环缓冲器。在这些算法中,一个循环缓冲器就是一个包含了最近的数据的滑动窗口。当新的数据来到时,缓冲器就会覆盖最早的数据。循环缓冲器实现的关键是循环寻址的实现。‘C54x间接寻址中提供了循环寻址的方式,以%表示。循环寻址图示if0≤
index+step<BK:
index=index+step
elseifindex+step≥BK:
index=index+step-BK
elseifindex+step<0
index=index+step+BK
TMS320C54x的指令集有近两百条指令,按功能分为如下几类: 算术运算指令 逻辑运算指令 程序控制指令 装入和存储指令§3-3TMS320C54x的指令集
指令中用到的缩写符号及其含义缩写符号含义Smem16位单数据存储器操作数Xmem在双操作数指令及某些单操作数指令中所用的16位双数据存储器操作数,从DB总线上读出Ymem在双操作数指令中所用的16位双数据存储器操作数,从CB总线上读出;在读同时并行写的指令中表示写操作数dmad16位立即数——数据存储器地址(0~65535)pmad16位立即数——程序存储器地址(0~65535)PA16位立即数——I/O口地址(0~65535)src源累加器(A或B)dst目的累加器(A或B)lk16位长立即数一、算术运算指令算术运算指令可分为如下几类: 加法指令 减法指令 乘法指令 乘加指令 乘减指令 双数/双精度指令 特殊操作指令1、加法指令2、减法指令3、乘法指令4、乘加和乘减指令5、双精度/双数操作指令6、特殊指令二、逻辑运算指令逻辑指令包括与、或、异或、移位和测试指令1、与指令(AND)2、或、异或指令3、移位和测试指令三、程序控制指令程序控制指令包括:
分支指令 调用指令 中断指令 返回指令
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库附参考答案详解(a卷)
- 2026年度上海中医药大学公开招聘备考题库含答案详解(轻巧夺冠)
- 2026成都市树德实验中学(东区)寒假招聘校聘储备教师的备考题库含答案详解(满分必刷)
- 2026广东汕尾市城区代建项目事务中心招聘11人备考题库及一套参考答案详解
- 2026年1月广东深圳市第七高级中学招聘专任教师4人备考题库附答案详解(综合卷)
- 2026上半年贵州事业单位联考务川自治县招聘48人备考题库含答案详解
- 2026四川省引大济岷水资源开发有限公司第一批次招聘27人备考题库及答案详解一套
- 2026山东济南高新区龙奥大厦附近小学招聘派遣制小学数学代课老师1人备考题库含答案详解(夺分金卷)
- 2026上海市盲童学校招聘9人备考题库带答案详解(精练)
- 2026山东济南高新区龙奥大厦附近小学招聘派遣制小学数学代课老师1人备考题库带答案详解ab卷
- 2026年山东水利职业学院单招综合素质笔试参考题库含详细答案解析
- 箱涵预制、安装、现浇施工方案
- 2026届杭州高级中学高二上数学期末联考试题含解析
- 2026年陕西氢能产业发展有限公司所属单位社会公开招聘备考题库及1套参考答案详解
- 2026年及未来5年中国无取向硅钢片行业市场深度分析及发展趋势预测报告
- 弃土场规范规章制度
- 2026年水下机器人勘探报告及未来五至十年深海资源报告
- 2025年3月29日事业单位联考(职测+综应)ABCDE类笔试真题及答案解析
- 双重预防体系建设自评报告模板
- 高血压教学查房复习过程教案(2025-2026学年)
- 建设工程消防施工质量通病及整改示例
评论
0/150
提交评论