




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第五章TMS320C55x系列DSP的汇编指令,1、高速数字信号处理中常采用汇编语言编程。2、汇编语言中的两种指令集助记符指令集:有助于记忆的符号来表示指令。代数指令集:类似于代数表达式,运算关系清楚明了。注意:DSP的软件开发工具只支持单一的指令形式,不支持助记符指令和代数指令的混合形式。3、术语、符号和缩写见P93的表514、运算符见表52,第五章TMS320C55xDSP的汇编指令,5.1状态比特和执行条件,一条指令的执行可能会受到某些状态位的影响,也可能会改变某些状态位的值,这些状态位都在状态寄存器。,第五章TMS320C55xDSP的汇编指令,1、40比特运算模式(M40)用于控制D单元的运行模式,会影响累加器溢出、进位标志等。M40=0时,D单元按32位运算模式,因此累加器溢出、进位、符号扩展和移位操作都以第31比特为准。M40=1时,D单元按40位运算模式,因此累加器溢出,进位,符号扩展和移位操作都以第39比特为准。BCLRM40;ClearM40BSETM40;SetM40,第五章TMS320C55x系列DSP的汇编指令,2、累加器溢出状态(ACOVx)当AC0AC3寄存器溢出时,目的累加器的溢出状态位ACOV03被置1。以下情况会清零ACOVx位复位;CPU执行一个跳转,条件调用,条件返回或执行一条测试ACOVx的指令;通过BCLR指令清除;溢出位检测受ST1_55中的M40位影响,即:M40=0时:溢出位在第31位检测M40=1时:溢出位在第39位检测,BCLRACOV1;清零BSETACOV1;置位,第五章TMS320C55x系列DSP的汇编指令,3、兼容模式(C54CM)C54CM=0:CPU工作于增强模式,只支持C55x的指令,C54CM=1:CPU工作于兼容模式,既支持C54x又支持C55x指令。BCLRC54CM;ClearC54CM(happensatruntime)C54CM_off;TellassemblerC54CM=0BSETC54CM;SetC54CM(happensatruntime)C54CM_on;TelltheassemblerC54CM=1,第五章TMS320C55x系列DSP的汇编指令,4、进位标志(CARRY),CARRY表示是否有进位或借位发生,CARRY=0时,没有借位或进位发生。CARRY=1时,有借位或进位发生。位操作指令改变CARRY进位标志的检测受ST1_55中的M40位影响M40=0时:进位标志的检测与第31位相关M40=1时:进位标志的检测与第39位相关,BCLRCARRY;ClearCARRYBSETCARRY;SetCARRY,第五章TMS320C55x系列DSP的汇编指令,5、分数模式(FRCT)FRCT0:关闭小数模式FRCT1:打开小数模式,BCLRFRCT;ClearFRCTBSETFRCT;SetFRCT,第五章TMS320C55x系列DSP的汇编指令,6、中断模式(INTM)INTM0:允许所有可屏蔽中断INTM1:关闭所有可屏蔽中断,BCLRINTM;ClearINTMBSETINTM;SetINTM,第五章TMS320C55x系列DSP的汇编指令,7、测试/控制标志(TCx),主要用于保存某些测试指令的结果;可以作为指令执行的条件;举例:CMPAC1=T1,TC1;如果AC1=T1,那么TC11。,BCLRTC1;ClearTC1BSETTC1;SetTC1BCLRTC2;ClearTC2BSETTC2;SetTC2,第五章TMS320C55x系列DSP的汇编指令,可以作为指令执行的条件有:(1)累加器的值ACx=#0ACx!=#0ACx#0ACx=#0(2)溢出标志和进位标志overflow(ACx)!overflow(ACx)CARRY!CARRY(3)辅助寄存器的值*ARx=#0*ARx!=#0*ARx#0*ARx=#0,第五章TMS320C55x系列DSP的汇编指令,(4)临时寄存器的值(4个临时寄存器T0T3)Tx=#0Tx!=#0Tx#0Tx=#0(5)测试/控制标志两个测试/控制标志的状态以及它们的逻辑组合可以作为指令执行的条件:TCx(测试/控制标志为1)!TCx(测试/控制标志为0)TC1辅助寄存器修改:AR0=AR0+255例2:AMAR*AR3+;辅助寄存器修改:指向存储单元的AR3加1例3:AADD127,SP;堆栈指针修改,SP=SP+127,第五章TMS320C55x系列DSP的汇编指令,8、隐含的并行指令:(1)语法、(2)操作数、(3)状态位C55X支持的隐含的并行指令有:乘法存储指令乘加存储指令乘减存储指令加法存储指令减法存储指令装载存储指令乘加装载指令乘减装载指令,9、专用算术运算指令求绝对值、有限冲激响应滤波FIR、最小均方LMS、归一化、二进制补码、舍入与饱和、平方差等。例(最小均方LMS):LMS*AR0,*AR1,AC0,AC1执行前执行后,第五章TMS320C55x系列DSP的汇编指令,*AR0,ACOV0,AC1=AC1+(*AR0)*(*AR1)AC0=AC0+(*AR0)#16,第五章TMS320C55x系列DSP的汇编指令,二、比特操作指令比特域的比较指令比特域的抽取与扩展指令存储器比特位操作指令寄存器比特位操作指令状态比特的清零与置位1、比特域的比较指令BANDSmen,k16,TCxIf(Smen)ANDk16)=0)TCx=0elseTCx=1,第五章TMS320C55x系列DSP的汇编指令,例:BAND*AR3,0060h,TC12、比特域的抽取与扩展例1:BFXTR#0606h,AC0,AC1比特域的抽取,将0606h非零位对应的AC0中的比特抽出来,依次放到AC1的LSB中,0 x0040h0 x0060h(1000000)AND(1100000)=(0100000)!=0,0 x0606h=0000011000000110AC0(150)=0000010011111111AC1(150)=0000000000001011,第五章TMS320C55x系列DSP的汇编指令,3、存储器的比特位的操作包括对存储器比特位的测试、清零、置位和取反操作。例1:BTSTAC0,*AR0,TC1,比特测试,比特地址AC0(30)=8,TC1=(*AR0)的第八比特。,第五章TMS320C55x系列DSP的汇编指令,例2:BTSTSET#8,*AR0,TC1比特测试并置位,比特地址为8,所以TC1=(*AR0)的第八比特,然后对(*AR0)的第八比特置位。4、寄存器比特位的操作寄存器比特位的测试、清零、置位和取反。例:BNOTAR1,T0,比特取反,比特地址AR1(30)=8,T0的第八比特取反后为0100h。,第五章TMS320C55x系列DSP的汇编指令,5、状态比特位的清零与置位对C55x的状态寄存器ST0ST3的比特位进行清零/置位操作。例1:BCLR#5,ST1_55以5作为比特位地址,对ST1_55中的比特位5(C54CM)进行清零。例2:BSETC54CM;对ST1_55中的状态位字段C54CM置位,第五章TMS320C55x系列DSP的汇编指令,三、扩展辅助寄存器操作指令对扩展辅助寄存器XAR0XAR7、XSP、XSSP和XCDP进行修改操作。例:MOVAC0,XAR1XAR1=AC0(220),第五章TMS320C55x系列DSP的汇编指令,四、逻辑运算指令包括:按位与、按位或、按位异或、按位取反、比特计数、逻辑移位和旋转。1、按位与/或/异或例:ORAC0#4,AC1AC1=AC1OR(AC0#4),第五章TMS320C55x系列DSP的汇编指令,2、按位取反、比特计数、逻辑移位和旋转例1:NOTAC0,AC1;按位取反,AC1=not(AC0)例2:BCNTAC0,AC1,TC1,T1比特计数,T1=(AC1ANDAC0)中1的个数,若为奇数,则TC1=1,第五章TMS320C55x系列DSP的汇编指令,五、MOVE操作指令累加器、临时寄存器或辅助寄存器的装载、存储和交换。存储器单元的数据移动堆栈操作CPU寄存器的装载、存储与数据移动1、累加器、临时寄存器或辅助寄存器的装载、存储和交换。例1:MOV*AR3+#16,AC1,累加器装载:AC1=(*AR3)#16AR3=AR3+1,第五章TMS320C55x系列DSP的汇编指令,2、存储器单元的数据移动包括一个存储器单元与另一个存储器单元间的数据移动、向存储单元写入立即数、初始化存储器。例1:DELAY*AR3+完成的操作:*(AR3+1)=*AR3,AR3=AR3+1,第五章TMS320C55x系列DSP的汇编指令,3、堆栈操作包含弹出堆栈和压入堆栈例1:POPdbl(AC1)弹出堆栈:AC1(3116)=(SP),AC1(150)=(SP+1),AC1(3932)不变。SP=SP+2,第五章TMS320C55x系列DSP的汇编指令,4、CPU寄存器的装载、存储与数据移动CPU寄存器指的是专用的寄存器、如SP、SSP、BK
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 汽车展会活动授权及运营合同
- 旅游线路策划合作协议
- 车辆挂靠与汽车维修保养服务协议
- 绿色能源项目厂房抵押贷款协议
- 礼仪仪态培训标准体系
- 2025年汽车销售协议
- 2025年农村房屋转让协议书
- 2025年明股实债协议
- 肾上腺肿瘤病人的护理
- 2025年江苏省镇江市新区中考数学二模试卷
- 2024年广东省广州市增城区中考英语二模试卷
- 【MOOC】心理学与生活-南京大学 中国大学慕课MOOC答案
- 食堂的管理方案
- 危重症患者护理
- 冲压机床安全操作规程(3篇)
- 治疗性血小板去除术
- 雇人干活免责协议书(2篇)
- 2024版《糖尿病健康宣教》课件
- 脓毒症性凝血病诊疗中国专家共识解读
- 《形势与政策》2022-2023学年 第二学期学习通超星期末考试答案章节答案2024年
- 云南省昆明市2025届高三文综下学期5月“三诊一模”模拟考试三模试题
评论
0/150
提交评论