收藏 分销(赏)

DSP开发工具讲课用.pptx

上传人:人****来 文档编号:4610093 上传时间:2024-10-07 格式:PPTX 页数:31 大小:230.88KB 下载积分:12 金币
下载 相关 举报
DSP开发工具讲课用.pptx_第1页
第1页 / 共31页
DSP开发工具讲课用.pptx_第2页
第2页 / 共31页


点击查看更多>>
资源描述
一、一、DSP开发工具介绍开发工具介绍 软件仿真器软件仿真器(Simulator)DSP入门套件入门套件(DSK,DSPStarterKit)标准评估模块标准评估模块(EVM)硬件仿真器硬件仿真器XDS510集成开发软件集成开发软件CCS1、软仿真器软仿真器(Simulator)软仿真器是一个软件程序,使用主机的软仿真器是一个软件程序,使用主机的处理器和存储器来仿真处理器和存储器来仿真TMS320DSP的微处的微处理器和微计算机模式,从而进行软件开发理器和微计算机模式,从而进行软件开发和非实时的程序验证。和非实时的程序验证。使用这种软仿真器,可以在没有目标硬使用这种软仿真器,可以在没有目标硬件的情况下作件的情况下作DSP软件的开发和调试。软件的开发和调试。2、DSP入门套件入门套件(DSK,DSP Starter Kit)DSK是一个较完整的是一个较完整的DSP系统,它既具系统,它既具备良好的硬件平台,又配有备良好的硬件平台,又配有CCS软件和软件和应用示例,同计算机连接也十分方便。应用示例,同计算机连接也十分方便。可以用于初学者的学习平台,或用于大可以用于初学者的学习平台,或用于大学的教学使用。同时学的教学使用。同时DSK也提供详细的也提供详细的原理图和原理图和PLD原码,对于开发是一个很原码,对于开发是一个很好的参考。好的参考。3、标准评估模块标准评估模块(EVM)TMS320的评估模块(的评估模块(EVM)是廉价的)是廉价的开发板,用于器件评估、标准程序检查、开发板,用于器件评估、标准程序检查、以及有限的系统调试。以及有限的系统调试。EVM是一个是一个PC插件,包括目标处理器、一个小容量的插件,包括目标处理器、一个小容量的存储器、和有限的外设。存储器、和有限的外设。EVM可以用来可以用来实时运行代码,并与外部系统接口。实时运行代码,并与外部系统接口。4、硬件仿真器硬件仿真器XDS510扩展开发系统(扩展开发系统(XDS,extendeddevelopmentsystem)是功能强大的全速)是功能强大的全速仿真器,用以作系统级的集成与调试。仿真器,用以作系统级的集成与调试。扫描式仿真(扫描式仿真(Scan-BasedEmulator)是)是一种独特的、非插入式的系统仿真、集一种独特的、非插入式的系统仿真、集成、调试方法。使用这种方法,程序可成、调试方法。使用这种方法,程序可以从片内或片外的目标存储器实时执行,以从片内或片外的目标存储器实时执行,在任何时钟速度下都不会引入额外的等在任何时钟速度下都不会引入额外的等待状态。待状态。5、集成开发软件集成开发软件CCS CCS是开放的软件平台,它可以支持不同是开放的软件平台,它可以支持不同的硬件接口,因此不同的硬件接口必须通的硬件接口,因此不同的硬件接口必须通过标准的过标准的Driver同同CCS连接。连接。集成可视化代码编辑界面集成可视化代码编辑界面集成代码生成工具集成代码生成工具基本调试工具基本调试工具支持多支持多DSP调试调试断点工具断点工具 二、二、硬件仿真系统硬件仿真系统 lPCI开发系统开发系统lISA开发系统开发系统lEPP开发系统开发系统三、三、CCS的使用的使用l编写源程序编写源程序(*.asm、*.c)链接命令文件链接命令文件(*.cmd)。)。l建立项目文件建立项目文件(*.mak或者或者*.pjt,1.2版本的使版本的使用用*.mak;2.0以上版本的使用以上版本的使用*.pjt)。)。l在项目文件建立之后,在项目文件建立之后,向项目添加程序向项目添加程序。添。添加的程序包括:源程序加的程序包括:源程序*.asm、*.c,链接命,链接命令文件令文件*.cmd以及根据需要可能要加入的库以及根据需要可能要加入的库文件文件*.lib等。等。系系 统统 默默 认认 的的 环环 境境 为为 当当 前前 CCS所所 在在 的的Projects下下,即即所所有有的的源源程程序序、链链接接命命令令文文件件、项项目目文文件件以以及及调调试试过过程程中中生生成成的的目目标标文文件件*.obj、映映射射文文件件*.map、绝绝对对列列表表文文件件等等以以及及链链接接成成功功后后生生成成的的COFF文文件件等等都都在在此此子子目目录录下下。如如果果想想改改变变,就就得设置路径使指向目标所在。得设置路径使指向目标所在。调试环境的设置:调试环境的设置:软件的调试软件的调试l在设置完成后,就可进行调试。调试主在设置完成后,就可进行调试。调试主要包括汇编、编译、链接。要包括汇编、编译、链接。l当汇编完全通过后,即可进行输出文件当汇编完全通过后,即可进行输出文件的加载。的加载。l文件加载成功后,即可运行调试文件加载成功后,即可运行调试。F5键键连续运行;连续运行;F8键单步执行。键单步执行。l可通过观察可通过观察DSP的寄存器、数据存储器的寄存器、数据存储器等进行调试。等进行调试。检查调试情况检查调试情况l选择选择View菜单下的菜单下的CPURegistersCPURegisters,观察,观察CPU寄存器在程序运行时的变化情况;寄存器在程序运行时的变化情况;l选择选择View菜单下的菜单下的CPURegisterPeripheralRegs,观察,观察CPU外围寄存器在程序运行时的变化情况;外围寄存器在程序运行时的变化情况;l选择选择View菜单下的菜单下的Memory,可选数据区、程序,可选数据区、程序区、区、I/O空间的数据变化情况空间的数据变化情况存储器窗口存储器窗口例:软件仿真器例:软件仿真器Simulator的使用的使用 l建立子目录建立子目录d:tic5000c5400exericel将将lab1.asm,lab1.cmd文件拷贝在文件拷贝在exerice子目录下。子目录下。l进入进入CCSC5000l从从Project目录下选择目录下选择new,建立一个新,建立一个新项目文件。项目文件。输入文件名:输入文件名:lab1.mak。(或或lab1.pjt)l从从Project目录下选择目录下选择AddFilestoProject(给项目中添加文件),将需用的文件(给项目中添加文件),将需用的文件(源程序文件、链接文件等)(源程序文件、链接文件等)lab1.asm,lab1.cmd添加入:添加入:lab1.mak。l分别对汇编器、编译器、链接器进行设计。分别对汇编器、编译器、链接器进行设计。l查看编译、链接过程中的信息查看编译、链接过程中的信息l加载运行文件。加载运行文件。l运行程序。运行程序。l对程序进行调试。对程序进行调试。四、程序设计举例四、程序设计举例1、计算、计算.bssx,5.bssy,1STM#x,AR1STM#4,AR2LD#0,Aloop:ADD*AR1+,ABANZloop,*AR2-STLA,y2、计算、计算z=x+y-wLDx,AADDy,ASUBw,ASTLA,z3、计算、计算y=mx+bLDm,TMPYx,AADDb,ASTLA,y4、计算、计算y=x1*a1+x2*a2LD#0,BLDx1,TMACa1,BLDx2,TMACa2,BSTLB,ySTHB,y+15、在在 中找出中找出 最最大值,并存放在累加器大值,并存放在累加器A中中STM#a,AR1STM#x,AR2STM#2,AR3LD*AR1+,TMPY*AR2+,Aloop1LD*AR1+,TMPY*AR2+,BMAXABANZloop1,*AR3-6、数组初始化、数组初始化x5=0,0,0,0,0方法一:方法一:.bssx,5STM#x,AR1LD#0,ARPT#4STLA,*AR1+方法二:方法二:.bssx,5STM#x,AR1RPTZA,#4STLA,*AR1+7、对数组、对数组x5的每个元素加的每个元素加1.bssx,5Begin:LD#1,16,BSTM#4,BRCSTM#x,AR4RPTBnext-1ADD*AR4,16,B,ASTHA,*AR4+next:LD#0,B88、计算计算计算计算 y=y=y=y=程序:程序:程序:程序:*example.asm *example.asm *example.asm *example.asm *.title .title .title .title “example.asmexample.asmexample.asmexample.asm”.mmregs .mmregs .mmregs .mmregs stack .usect stack .usect stack .usect stack .usect “STACKSTACKSTACKSTACK”,10h,10h,10h,10h .bss a,4 .bss a,4 .bss a,4 .bss a,4 .bss x,4 .bss x,4 .bss x,4 .bss x,4 .bss y,1 .bss y,1 .bss y,1 .bss y,1 .def start .def start .def start .def start .data .data .data .data ;为堆栈指定空间;为堆栈指定空间;为堆栈指定空间;为堆栈指定空间 ;为变量分配;为变量分配;为变量分配;为变量分配9 9 9 9个字的空间个字的空间个字的空间个字的空间 计算计算计算计算 y=y=y=y=table:table:table:table:.word 1,2,3,4.word 1,2,3,4.word 1,2,3,4.word 1,2,3,4 .word 8,6,4,2.word 8,6,4,2.word 8,6,4,2.word 8,6,4,2 .text .text .text .text start:STM#0,SWWSRstart:STM#0,SWWSRstart:STM#0,SWWSRstart:STM#0,SWWSR STM#STACK+10h,SP STM#STACK+10h,SP STM#STACK+10h,SP STM#STACK+10h,SP STM#a,AR1 STM#a,AR1 STM#a,AR1 STM#a,AR1 RPT#7 RPT#7 RPT#7 RPT#7 MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+CALL SUMCALL SUMCALL SUMCALL SUM end:B end end:B end end:B end end:B end ;变量初始化变量初始化变量初始化变量初始化 ;插入插入插入插入0 0 0 0个等待状态个等待状态个等待状态个等待状态 ;设置堆栈指针设置堆栈指针设置堆栈指针设置堆栈指针 ;AR1AR1AR1AR1指向指向指向指向a a a a ;移动移动移动移动8 8 8 8个数据个数据个数据个数据 ;从程序存储器到数据存储器从程序存储器到数据存储器从程序存储器到数据存储器从程序存储器到数据存储器 ;调用调用调用调用SUMSUMSUMSUM子程序子程序子程序子程序 计算计算计算计算 y=y=y=y=程序:程序:程序:程序:SUMSUMSUMSUM:STM#a,AR3STM#a,AR3STM#a,AR3STM#a,AR3 STM#x,AR4 STM#x,AR4 STM#x,AR4 STM#x,AR4 RPTZ A,#3 RPTZ A,#3 RPTZ A,#3 RPTZ A,#3 MAC *AR3+,*AR4+,A MAC *AR3+,*AR4+,A MAC *AR3+,*AR4+,A MAC *AR3+,*AR4+,A STL A,y STL A,y STL A,y STL A,y RET RET RET RET .end .end .end .end ;子程序执行;子程序执行;子程序执行;子程序执行9 9 9 9 9 9、编写、编写、编写、编写、编写、编写0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)的程序的程序的程序的程序的程序的程序数据存储器数据存储器数据存储器数据存储器 .bss num,1.bss num,1.bss num,1.bss num,1.bss num,1.bss num,1numnumnumnum分子分子分子分子 .bss den,1.bss den,1.bss den,1.bss den,1.bss den,1.bss den,1dendendenden分母分母分母分母 .bss quot,1.bss quot,1.bss quot,1.bss quot,1.bss quot,1.bss quot,1quotquotquotquot商商商商:.data.data.data.data.data.data tabletabletabletabletabletable .word 4*32768/10 .word 4*32768/10 .word 4*32768/10 .word 4*32768/10 .word 4*32768/10 .word 4*32768/10 ;0.4;0.4;0.4;0.4;0.4;0.4 .word -8*32768/10 .word -8*32768/10 .word -8*32768/10 .word -8*32768/10 .word -8*32768/10 .word -8*32768/10 ;-0.8;-0.8;-0.8;-0.8;-0.8;-0.8 tabletabletabletable0.40.40.40.4-0.8-0.8-0.8-0.8 .text.text.text.text.text.textstart:STM#num,AR1start:STM#num,AR1start:STM#num,AR1start:STM#num,AR1start:STM#num,AR1start:STM#num,AR1 AR1AR1AR1AR1num RPT#1RPT#1RPT#1RPT#1RPT#1RPT#1 MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+0.40.40.40.4-0.8-0.8-0.8-0.8quotquot例例例例例例:编写编写编写编写编写编写0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)的程序的程序的程序的程序的程序的程序0.40.40.40.4:-0.8-0.8-0.8-0.8商商商商-0.8-0.8-0.8-0.80.40.40.40.4数据存储器数据存储器数据存储器数据存储器numnumnumnumdendendendenquotquotquotquottabletabletabletableAR1AR1AR1AR1quotquot LD den,16,ALD den,16,ALD den,16,ALD den,16,A;分母送分母送分母送分母送AHAHAHAH MPYA numMPYA numMPYA numMPYA num;商符号送商符号送商符号送商符号送B B B B(num)AH B,(num)AH B,(num)AH B,(num)AH B,即分子即分子即分子即分子分母分母分母分母B B B B,取符号。,取符号。,取符号。,取符号。ABS AABS AABS AABS A;取分母绝对值取分母绝对值取分母绝对值取分母绝对值 STH A,denSTH A,denSTH A,denSTH A,den0.80.80.80.8 LD num,16,ALD num,16,ALD num,16,ALD num,16,A;分子送分子送分子送分子送AHAHAHAH ABS AABS AABS AABS A;取分子绝对值取分子绝对值取分子绝对值取分子绝对值 RPT#14RPT#14RPT#14RPT#14 SUBC den,A SUBC den,A SUBC den,A SUBC den,A ;15;15;15;15次减法循环次减法循环次减法循环次减法循环 完成除法完成除法完成除法完成除法 XC 1,BLTXC 1,BLTXC 1,BLTXC 1,BLT ;若若若若B0,B0,B0,B0,则变号则变号则变号则变号 NEG ANEG ANEG ANEG A STL A,quotSTL A,quotSTL A,quotSTL A,quot ;保存商保存商保存商保存商 -0.5-0.5-0.5-0.5例例例例例例:编写编写编写编写编写编写0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)0.4(-0.8)的程序的程序的程序的程序的程序的程序运行结果:运行结果:运行结果:运行结果:被除数被除数被除数被除数 除除除除 数数数数 商商商商(十六进制十六进制十六进制十六进制)商商商商(十进制十进制十进制十进制)4*324*324*324*32 768/100(0.4)768/100(0.4)768/100(0.4)768/100(0.4)-8*32-8*32-8*32-8*32 768/100(-0.8)768/100(-0.8)768/100(-0.8)768/100(-0.8)0 xC000 0 xC000 0 xC000 0 xC000-0.5-0.5-0.5-0.5-128-128-128-128 1 1 1 1 024 024 024 024 0 xF000 0 xF000 0 xF000 0 xF000-0.125-0.125-0.125-0.125 n n .bss x,8.bss x,8n nbegin:LD#1,16,Bbegin:LD#1,16,Bn n STM#7,BRC STM#7,BRCn n STM#x,AR4 STM#x,AR4n n RPTB next-1 RPTB next-1n n ADD *AR4,16,B,A ADD *AR4,16,B,An n STH A,*AR4+STH A,*AR4+n nnext:LD#0,Bnext:LD#0,Bn n 注注注注 意意意意 块结束地址块结束地址块结束地址块结束地址REAREAREAREA通常取通常取通常取通常取程程程程序块最后一条指令的下一序块最后一条指令的下一序块最后一条指令的下一序块最后一条指令的下一条指令地址条指令地址条指令地址条指令地址-1 1;重复次数为重复次数为重复次数为重复次数为7 7 7 7次次次次 RPTBRPTBRPTBRPTB指令可以响应中断。指令可以响应中断。指令可以响应中断。指令可以响应中断。1010、对数组、对数组、对数组、对数组x8x8中的每一元素加中的每一元素加中的每一元素加中的每一元素加1 1。111111111111、编制计算编制计算编制计算编制计算编制计算编制计算 的程序的程序的程序的程序的程序的程序 a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 .bss a,4.bss a,4.bss a,4.bss a,4.bss a,4.bss a,4 .bss x,4 .bss x,4 .bss x,4 .bss x,4 .bss x,4 .bss x,4 .bss y,1 .bss y,1 .bss y,1 .bss y,1 .bss y,1 .bss y,1 .data .data .data .data .data .data table:.word 3*32768/10 table:.word 3*32768/10 table:.word 3*32768/10 table:.word 3*32768/10 table:.word 3*32768/10 table:.word 3*32768/10 .word 2*32768/10 .word 2*32768/10 .word 2*32768/10 .word 2*32768/10 .word 2*32768/10 .word 2*32768/10 .word -4*32768/10 .word -4*32768/10 .word -4*32768/10 .word -4*32768/10 .word -4*32768/10 .word -4*32768/10 .word 1*32768/10 .word 1*32768/10 .word 1*32768/10 .word 1*32768/10 .word 1*32768/10 .word 1*32768/10 .word 6*32768/10 .word 6*32768/10 .word 6*32768/10 .word 6*32768/10 .word 6*32768/10 .word 6*32768/10 .word 5*32768/10 .word 5*32768/10 .word 5*32768/10 .word 5*32768/10 .word 5*32768/10 .word 5*32768/10 .word -1*32768/10 .word -1*32768/10 .word -1*32768/10 .word -1*32768/10 .word -1*32768/10 .word -1*32768/10 .word -2*32768/10 .word -2*32768/10 .word -2*32768/10 .word -2*32768/10 .word -2*32768/10 .word -2*32768/10axy 编制计算编制计算编制计算编制计算编制计算编制计算 的程序的程序的程序的程序的程序的程序 a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1a1=0.3 a2=0.2 a3=-0.4 a4=0.1 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 x1=0.6 x2=0.5 x3=-0.1 x4=-0.2 axy .text.text.text.text.text.text start:SSBX FRCT start:SSBX FRCT start:SSBX FRCT start:SSBX FRCT start:SSBX FRCT start:SSBX FRCT STM#x,AR1 STM#x,AR1 STM#x,AR1 STM#x,AR1 STM#x,AR1 STM#x,AR1 RPT#7 RPT#7 RPT#7 RPT#7 RPT#7 RPT#7 MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+MVPD table,*AR1+0.30.30.20.2-0.4-0.40.10.10.60.60.50.5-0.1-0.1-0.2-0.2 STM#x,AR2STM#x,AR2STM#x,AR2STM#x,AR2STM#x,AR2STM#x,AR2 STM#a,AR3 STM#a,AR3 STM#a,AR3 STM#a,AR3 STM#a,AR3 STM#a,AR3 RPTZ A,#3 RPTZ A,#3 RPTZ A,#3 RPTZ A,#3 RPTZ A,#3 RPTZ A,#3 MAC *AR2+,*AR3+,A MAC *AR2+,*AR3+,A MAC *AR2+,*AR3+,A MAC *AR2+,*AR3+,A MAC *AR2+,*AR3+,A MAC *AR2+,*AR3+,A STH A,y STH A,y STH A,y STH A,y STH A,y STH A,y0.30.3 done:B done done:B done done:B done done:B done done:B done done:B done
展开阅读全文

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


开通VIP      成为共赢上传

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

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

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

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

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

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

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

客服