DSP开发工具讲课用_第1页
DSP开发工具讲课用_第2页
DSP开发工具讲课用_第3页
DSP开发工具讲课用_第4页
DSP开发工具讲课用_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

会计学1DSP开发工具讲课用1、软仿真器(Simulator)

软仿真器是一个软件程序,使用主机的处理器和存储器来仿真TMS320DSP的微处理器和微计算机模式,从而进行软件开发和非实时的程序验证。使用这种软仿真器,可以在没有目标硬件的情况下作DSP软件的开发和调试。第1页/共31页2、

DSP入门套件(DSK,DSPStarterKit)

DSK是一个较完整的DSP系统,它既具备良好的硬件平台,又配有CCS软件和应用示例,同计算机连接也十分方便。可以用于初学者的学习平台,或用于大学的教学使用。同时DSK也提供详细的原理图和PLD原码,对于开发是一个很好的参考。第2页/共31页3、标准评估模块(EVM)

TMS320的评估模块(EVM)是廉价的开发板,用于器件评估、标准程序检查、以及有限的系统调试。EVM是一个PC插件,包括目标处理器、一个小容量的存储器、和有限的外设。EVM可以用来实时运行代码,并与外部系统接口。第3页/共31页4、硬件仿真器XDS510

扩展开发系统(XDS,extendeddevelopmentsystem)是功能强大的全速仿真器,用以作系统级的集成与调试。扫描式仿真(Scan-BasedEmulator)是一种独特的、非插入式的系统仿真、集成、调试方法。使用这种方法,程序可以从片内或片外的目标存储器实时执行,在任何时钟速度下都不会引入额外的等待状态。第4页/共31页5、集成开发软件CCS

CCS是开放的软件平台,它可以支持不同的硬件接口,因此不同的硬件接口必须通过标准的Driver同CCS连接。◆集成可视化代码编辑界面◆集成代码生成工具◆基本调试工具◆支持多DSP调试◆断点工具

第5页/共31页二、硬件仿真系统

PCI开发系统ISA开发系统EPP开发系统第6页/共31页三、CCS的使用编写源程序(*.asm、*.c)链接命令文件(*.cmd)。建立项目文件(*.mak或者*.pjt,1.2版本的使用*.mak;2.0以上版本的使用*.pjt)。在项目文件建立之后,向项目添加程序。添加的程序包括:源程序*.asm、*.c,链接命令文件*.cmd以及根据需要可能要加入的库文件*.lib等。第7页/共31页

系统默认的环境为当前CCS所在的Projects下,即所有的源程序、链接命令文件、项目文件以及调试过程中生成的目标文件*.obj、映射文件*.map、绝对列表文件等以及链接成功后生成的COFF文件等都在此子目录下。如果想改变,就得设置路径使指向目标所在。调试环境的设置:第8页/共31页软件的调试

在设置完成后,就可进行调试。调试主要包括汇编、编译、链接。当汇编完全通过后,即可进行输出文件的加载。文件加载成功后,即可运行调试。F5键连续运行;F8键单步执行。可通过观察DSP的寄存器、数据存储器等进行调试。第9页/共31页检查调试情况选择View菜单下的CPURegisters\CPURegisters,观察CPU寄存器在程序运行时的变化情况;选择View菜单下的CPURegister\PeripheralRegs,观察CPU外围寄存器在程序运行时的变化情况;选择View菜单下的Memory,可选数据区、程序区、I/O空间的数据变化情况第10页/共31页存储器窗口第11页/共31页例:软件仿真器Simulator的使用

建立子目录d:\tic5000\c5400\exerice将lab1.asm,lab1.cmd文件拷贝在exerice子目录下。进入CCSC5000从Project目录下选择new,建立一个新项目文件。输入文件名:lab1.mak。(或lab1.pjt)第12页/共31页从Project目录下选择AddFilestoProject(给项目中添加文件),将需用的文件(源程序文件、链接文件等)lab1.asm,lab1.cmd添加入:lab1.mak。分别对汇编器、编译器、链接器进行设计。查看编译、链接过程中的信息加载运行文件。运行程序。对程序进行调试。第13页/共31页四、程序设计举例第14页/共31页1、计算

.bssx,5.bssy,1STM#x,AR1STM#4,AR2LD#0,Aloop:ADD*AR1+,ABANZloop,*AR2-STLA,y第15页/共31页2、计算z=x+y-w

LD@x,AADD@y,ASUB@w,ASTLA,@z第16页/共31页3、计算y=mx+bLD@m,TMPY@x,AADD@b,ASTLA,@y第17页/共31页4、计算y=x1*a1+x2*a2LD#0,BLD@x1,TMAC@a1,BLD@x2,TMAC@a2,BSTLB,@ySTHB,@y+1第18页/共31页5、在中找出最大值,并存放在累加器A中STM#a,AR1STM#x,AR2STM#2,AR3LD*AR1+,TMPY*AR2+,Aloop1LD*AR1+,TMPY*AR2+,BMAXABANZloop1,*AR3-第19页/共31页6、数组初始化x[5]={0,0,0,0,0}方法一:

.bssx,5STM#x,AR1LD#0,ARPT#4STLA,*AR1+方法二:

.bssx,5STM#x,AR1RPTZA,#4STLA,*AR1+第20页/共31页7、对数组x[5]的每个元素加1.bssx,5Begin:LD#1,16,BSTM#4,BRCSTM#x,AR4RPTBnext-1ADD*AR4,16,B,ASTHA,*AR4+next:LD#0,B

第21页/共31页8、计算y=

程序:

*********************************************example.asm*********************************************

.title“example.asm”.mmregsstack.usect“STACK”,10h.bssa,4.bssx,4.bssy,1.defstart.data

;为堆栈指定空间

;为变量分配9个字的空间第22页/共31页

计算y=

table:

.word1,2,3,4

.word8,6,4,2.text

start:STM#0,SWWSRSTM#STACK+10h,SPSTM#a,AR1RPT#7MVPDtable,*AR1+

CALLSUMend:Bend

;变量初始化

;插入0个等待状态

;设置堆栈指针

;

AR1指向a

;移动8个数据

;从程序存储器到数据存储器

;调用SUM子程序

第23页/共31页

计算y=

程序:

SUM:STM#a,AR3STM#x,AR4RPTZA,#3MAC*AR3+,*AR4+,ASTLA,@yRET.end

;子程序执行第24页/共31页9、编写0.4÷(-0.8)的程序数据存储器

.bssnum,1num分子

.bssden,1den分母

.bssquot,1quot商::

.data

table

.word4*32768/10;0.4.word-8*32768/10;-0.8

table0.4-0.8

.textstart:STM#num,AR1

AR1num

RPT#1MVPDtable,*AR1+0.4-0.8quot第25页/共31页例:编写0.4÷(-0.8)的程序0.4::-0.8商-0.80.4数据存储器numdenquottableAR1quot

LD@den,16,A;分母送AH

MPYA@num;商符号送B(num)×AH→B,即分子×分母→B,取符号。

ABSA;取分母绝对值

STHA,@den0.8

LD@num,16,A;分子送AH

ABSA;取分子绝对值

RPT#14SUBC@den,A

;15次减法循环完成除法

XC1,BLT

;若B<0,则变号

NEGA

STLA,@quot

;保存商-0.5第26页/共31页例:编写0.4÷(-0.8)的程序运行结果:被除数

除数

商(十六进制)

商(十进制)

4*32

768/100(0.4)-8*32

768/100(-0.8)0xC000-0.5-1281

0240xF000-0.125第27页/共31页

.bssx,8begin:LD#1,16,BSTM#7,BRCSTM#x,AR4RPTBnext-1ADD*AR4,16,B,ASTHA,*AR4+next:LD#0,B…注意①块结束地址REA通常取程序块最后一条指令的下一条指令地址-1;②重复次数为7次③RPTB指令可以响应中断。

10、对数组x[8]中的每一元素加1。第28页/共31页11、编制计算

的程序

a1=0.3a2=0.2a3=-0.4a4=0.1x1=0.6x2=0.5x3=-0.1x4=-0.2

.bssa,4.bssx,4.bssy,1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论