DSP指令PPT文档格式.ppt

上传人:b****1 文档编号:14287300 上传时间:2022-10-21 格式:PPT 页数:56 大小:220.50KB
下载 相关 举报
DSP指令PPT文档格式.ppt_第1页
第1页 / 共56页
DSP指令PPT文档格式.ppt_第2页
第2页 / 共56页
DSP指令PPT文档格式.ppt_第3页
第3页 / 共56页
DSP指令PPT文档格式.ppt_第4页
第4页 / 共56页
DSP指令PPT文档格式.ppt_第5页
第5页 / 共56页
点击查看更多>>
下载资源
资源描述

DSP指令PPT文档格式.ppt

《DSP指令PPT文档格式.ppt》由会员分享,可在线阅读,更多相关《DSP指令PPT文档格式.ppt(56页珍藏版)》请在冰豆网上搜索。

DSP指令PPT文档格式.ppt

,3,1加法指令2减法指令3乘法指令4乘加和乘减指令5双操作数指令6特殊运算指令,算术运算指令,4,1加法指令,操作数左移时低位加0,右移时若SXM1,则高位进行符号扩展;

若SXM0,则高位加0。

特点,将一个16位的操作数加到指令指定的累加器中,注意,LDTEMP1,AADDTEMP2,ASTLA,TEMP3,举例,5,2减法指令,特点,将从指定的累减器中减去一个16位的减数,LDTEMP1,BRPT#15SUBCTEMP2,BSTLB,TEMP3STHB,TEMP4,举例,6,RSBXFRCTLDTEMP1,TMPYTEMP2,A,3.乘法指令,乘法指令的功能是将T寄存器或一个数据存储器的值与另一个数据存储器的值或一个立即数相乘,并将乘积存放于目的累加器A或B中。

举例,7,4乘加和乘减指令,乘加指令先完成一个乘法操作,然后再将乘积与源累加器的内容相加。

而乘减指令完成从累加器B(或源累加器src或目的累加器dst)减去T寄存器(或一个操作数与另外一个操作数的乘积)的操作,并将其运算结果存入累加器B(或源累加器src或目的累加器dst)中去。

方法,8,DADD*AR3,A,B,该指令在ST1中的双16位/双精度算术运算方式位C16的控制下完成一个32位的加法运算或两个16位的加法运算。

5双操作数指令,方法,举例,9,6.特殊运算指令,TMS320C54x指令系统还提供了15条特殊的运算指令。

在需要的场合灵活应用这些指令,可以大大提高程序的编写速度和执行速度,缩短程序的长度,减少指令执行的周期。

10,逻辑与(AND)运算指令逻辑或(OR)运算指令逻辑异或(XOR)运算指令移位(SHIFT)指令测试(TEST)指令,逻辑运算指令,11,1.逻辑与(AND)运算指令,举例,AND*AR3,A,12,2.逻辑或(OR)运算指令,OR*AR3,A,13,3.逻辑异或(XOR)运算指令,XOR*AR3,A,14,4.移位指令,SFTLA,8,B,15,5.测试指令,BIT*AR2,12,16,分支转移指令调用子程序指令中断指令返回指令堆栈操作指令重复指令其它控制指令,程序控制指令,17,1.分支转移指令,举例,BACCA,18,2.调用子程序指令,举例,CALAD1000H,19,3.中断指令,特点,发生中断时INTM被置1,屏蔽所有可屏蔽中断,并设置IFR中相应的中断标志位。

20,4.返回指令,特点,返回指令用于执行完子程序调用或中断服务程序执行完后,使程序返回到子程序调用指令或中断发生的地方以继续往下执行。

如果是延迟返回,则先取出并执行紧跟在该指令后面的两条单字指令或一条双字指令。

21,5.重复指令,举例,RPT#99;

循环执行NOP指令100;

次,RC63H,单字指令NOPRPT#0FFFFH;

将紧跟在RPT后面的下一条指令循环执行FFFFH次,22,6.堆栈操作指令,FRAMEKPOPDSmemPOPMMMRPSHDSmemPSHMMMR,23,其它程序控制指令包括:

修改辅助寄存器内容的MAR、保持空闲状态直到产生非屏蔽中断或复位操作的INLE、不引起任何操作只完成PCPC1的NOP指令等。

7.其他程序控制指令,24,加载和存储指令条件存储指令并行的加载和存储指令并行的加载和乘法指令并行的加载和加减指令,加载和存储指令,25,1.加载指令,举例,ST#0100H,AR2DLD*AR2,A,26,2.存储指令,举例,STT*AR7,27,3.条件存储指令,举例,SRCCD*AR6,AGT,28,4.并行执行指令,举例,STB,*AR6|LDAR7,A,29,5.其他加载和存储指令,举例,MVDD*AR4,*AR2,30,汇编语言源程序中,以.asm为程序的扩展名,用“段”伪指令来组织程序的结构。

程序一般由数据段、堆栈段和代码段组成。

.data用于存放有初值的数据段;

.usect用于为堆栈保留一块存储空间;

.text用于设置代码段。

汇编语言伪指令,31,汇编指令,常用的汇编命令,.usect为未初始化变量保留存储空间的自定义段(长度).bss通常为未初始化的变量留出的空间.data已初始化数据段.sect建立包含代码和数据的自定义段,常用于定义中断向量表.text紧随其后的是汇编程序正文.word初始化一个或多个16位整数(有符号).int初始化一个或多个16位整数(无符号).title在列表页头显示一个标题.end结束程序,32,对一个数组进行初始化X5=0,0,0,0,0.bssx,5STM#x,AR1RPTZA,#4STLA,*AR1+,举例,33,;

该程序在0x1000开始的8个地址填写0xaaaa,然后读出,并存储到0x1008开始的8个地址。

.textmain:

stm#1000h,ar1rpt#07hst#0aaaah,*ar1+stm#7h,ar3stm#1000h,ar1stm#1008h,ar2loop:

ld*ar1+,tstt,*ar2+banzloop,*ar3-.end;

MVDD*ar1+,*ar2+,34,;

将数据存储器中的数组x20复制到数组y20,.bssx,20.bssy,20STM#x,AR2STM#y,AR3RPT#19MVDD*AR2+,*AR3+,35,;

指示灯闪烁.textdm1:

ssbxxfcalldelayrsbxxfcalldelaybdm1delay:

stm#270fh,ar6;

9999loop1:

stm#0f9h,ar7;

249loop2:

banzloop2,*ar7-;

2周期banzloop1,*ar6-ret.end,36,DSP应用程序设计,应用程序设计包含两个方面的内容:

一是选择合适的编程语言编写程序;

二是选择适当的开发环境和开发工具。

37,DSP的软件开发大体有三种方式:

一种是直接编写汇编语言程序进行编译连接;

一种是编写C语言程序,用C语言优化软件进行编译连接;

还有一种是混合编程,对于速度要求比较高的代码部分如滤波、FTT等算法,应用汇编语言来编写;

对于一些控制代码,可用C语言来写,这样可加快开发速度。

38,39,顺序结构程序,顺序结构是最基本的程序结构形式,程序的语句或者结构被连续执行,40,分支结构程序,程序分支主要是靠条件转移指令来实现的,利用这些指令可以执行分支操作,循环控制等。

41,循环程序结构,循环程序设计主要用于某些需要重复进行的操作,简化程序,节约内存。

42,子程序结构,子程序是一个独立的程序段,具有确定的功能,可以被其他程序调用,调用它的程序一般是主程序。

43,DSP集成开发环境,44,介绍TI公司的集成开发环境CCS(CodeComposerStudio).CCS提供了环境配置、源文件编辑、程序调试、跟踪和分析等工具,可以帮助用户在一个软件环境下完成编辑、编译链接、调试和数据分析等工作.,45,CCS一般工作在两种模式下:

软件仿真器和与硬件开发板相结合的在线编程.前者可以脱离DSP芯片,在PC机上模拟DSP的指令集与工作机制,主要用于前期算法实现和调试.后者实时运行在DSP芯片上,可以在线编制和调试应用程序.,46,CCS集成开发环境应用,概述利用CCS集成开发环境,用户可以在一个开发环境下完成工程定义、程序编辑、编译链接、调试和数据分析等工作环节.使用CCS开发应用程序的一般步骤为:

打开或创建一个工程文件.工程文件中包括源程序(C或汇编)、目标文件、库文件、连接命令文件和包含文件.,47,编辑各类文件.如头文件(.h文件),命令文件(.cmd文件)和源程序(.c,.asm文件)等.可以使用一般的编辑软件或CCS集成编辑环境进行各类文件编辑.对工程进行编译.如果有语法错误,将在构建(Build)窗口中显示出来.用户可以根据显示的信息定位错误位置,更改错误.排除程序的语法错误后,用户可以对计算结果/输出数据进行分析,评估算法性能.CCS提供了探针、图形显示、性能测试等工具来分析数据、评估性能.,48,一个典型的CCS集成环境窗口示例.整个窗口由主菜单、工具条、工程窗口、编辑窗口、图形显示窗口、内存单元显示窗口和寄存器显示窗口等构成.工程窗口用来组织用户的若干程序构成一个项目,用户可以从工程列表中选中需要编辑和调试的特定程序.在源程序编辑/调试窗口中用户既可以编辑程序,又可以设置断点和针(对于C程序),调试程序,49,50,反汇编窗口可以帮助用户查看机器指令,查找错误(汇编程序探针、断点的设置应在反汇编窗口中进行).内存和寄存器显示窗口可以查看、编辑内存单元和寄存器.图形显示窗口可以根据用户需要直接或经过处理后显示数据.用户可以通过主莱单Windows条目来管理各窗口.在CCS窗口中单击鼠标右键都可以弹出与此窗口内容相关联的菜单.,51,编辑源程序,CCS集成编辑环境可以编辑任何文本文件(对C程序和汇编程序),可以打开多个窗口或对同一文件打开多个窗口,进行多窗口显示.点击主莱单命令FileNewSourceFile弹出编辑窗口进行编辑.,52,CCS提供的单步执行操作有4种类型,它们在调试工具条上分别有对应的快捷按钮.

(1)单步进入(快捷键F8).此操作将进入语句内部(如子程序或软件中断)调试.

(2)单步执行(快捷键F10).此命令将函数或子程序当作一条语句执行,不进其内部调试.(3)单步跳出(快捷键Shift+F7).此命令将从子程序中跳出.(4)执行到当前光标处(快捷键Ctrl+F10).此命令使程序运行到光标所在的语句处.,53,查看、编辑内存,CCS允许显示特定区域的内存单元数据.可显示指定地址的内存单元.改变内存窗口显示属性(如数椐显示格式,是否对照显示等),54,55,显示寄存器CCS将在CCS窗口下方弹出一寄存器查看窗口编辑变量命令Edit可以直接编辑用户定义的数据变量,在对话框中填入变量名(Variable)和新的数值(Value)即可.,56,通过观察窗口查看变量,在程序运行中,用户可能需要不间断地观察某个变量的变化情况.CCS提供了观察窗口(WatchWindow)用于在调试过程中实时查看和修改变量值.,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

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

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