《DSP原理及应用》PPT课件_第1页
《DSP原理及应用》PPT课件_第2页
《DSP原理及应用》PPT课件_第3页
《DSP原理及应用》PPT课件_第4页
《DSP原理及应用》PPT课件_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

TMS320C54xDSP结构、原理及应用,孔莹莹yayako_zy,Dspsl,第三章汇编语言程序开发工具,主要内容:TMS320C54xDSP软件开发过程汇编语言程序的编写方法编辑、汇编和链接过程公共目标文件格式(COFF-CommonObjectFileFormat)汇编命令链接命令和链接命令文件映象文件,Dspsl,上机软件在网上下载,Ftp地址:ftp:DSPSL.NUAA.EDU.CN用户名:空密码:空1、上机所用实验内容和软件在以下子目录下:TMS320C54xDSP结构、原理与应用实验(周建江老师)TI公司(附录1下为仿真软件)2、上课用DSP讲稿:DSP讲稿_pdf3、ADI公司的实验软件和例子在ADI公司下4、做完作业上传子目录:2012级本科生DSP作业上交目录,Dspsl,上机软件在网上下载,Ftp地址:ftp:DSPSL.NUAA.EDU.CN用户名:空密码:空上机所用实验内容和软件在以下子目录下:DSP综合实验课程实验软件TI公司,Dspsl,软件开发过程,TMS320C54,Dspsl,开发过程说明,C编译器(CCompiler)汇编器(Assembler)链接器(Linker)助记符到代数式指令翻译器(Mnemonic-to-algebraictranslatorutility)建库实用程序(Library-buildutility)十六进制转换程序(Hexconversionutility)绝对制表程序(Absolutelister)交叉引用制表程序(Cross-referencelister),Dspsl,调试工具,软件仿真器(Simulator/CCS)可扩展的开发系统仿真器(XDS510/XDS560)评价模块(EVM),Dspsl,汇编语言程序的编写过程,1、汇编语言源程序以.asm为其扩展名。2、汇编语言源程序的每一行都可以由四个部分组成,句法如下:,Dspsl,汇编语言源程序编写方法,举例:*example.asmy=a1*x1+a2*x2+a3*x3+a4*x4*.titleexample.asmSTACK.usectSTACK,10h;allocatespaceforstack.bssx,4;allocate9wordforvariables.bssa,4.bssy,1.defstart(_c_int00).datatable:.word1,2,3,4;datafollows.word8,6,4,2,汇编命令,Dspsl,举例(续),.text;codefollows.start:STM#STACK+10h,SP;setstackpointer;STM#0,SWWSR;setSWWSR0;STM#a,AR1RPT#7MVPDtable,*AR1+;move8valuesCALLSUM;callSUMsubroutineend:Bend,Dspsl,SUM:STM#a,AR3;ThesubroutineImplementSTM#x,AR4;multiply-accumulateRPTZA,#3MAC*AR3+,*AR4+,ASTLA,yRET.end,举例(续),Dspsl,标号,标号:供本程序的其它部分或其它程序调用或跳转。标号是任选项;标号后面可以加也可以不加冒号“:”;标号必须从第1列写起,但第1个字母不能以数字开头;标号最多可达32个字符(AZ,az,09,_,以及$);引用标号时,标号的大小写必须一致;标号的值就是SPC(段程序计数器)的值;如果不用标号,则第一个字母必须为空格、分号或星号(*)。,Dspsl,助记符,助记符:用于助记符指令、汇编指令、宏指令和宏调用。作为助记符指令,一般用大写;汇编命令和宏命令,以句号“.”开始,且为小写;汇编命令可以形成常数和变量,当用它控制汇编和链接过程时,可以不占存储空间;指令和汇编命令都不能写在第1列。,Dspsl,操作数注解,操作数:指令中的操作数或汇编命令中定义的内容。操作数之间必须用逗号“,”分开;有的指令无操作数,如NOP,RESET。注解:注释是任选项。注释从分号“;”开始,可以放在指令或汇编命令的后面,也可以放在单独的一行或多行;如果注释从第1列开始,也可以用“*”号。,Dspsl,表31常用的汇编命令(1),Dspsl,表31常用的汇编命令(2),Dspsl,表32COFF数据型式,汇编语言程序中会涉及到各种数据,Dspsl,汇编语言程序的编辑汇编和链接过程,Debug:软件仿真器Sim54xw/CCSC54xEVMXDS510/XDS560,源文件,目标文件,链接命令文件,输出文件,MMR文件,Dspsl,编辑,利用EDIT.COM、NOTEPAD.EXE等文本编辑器/CCS编辑*.asm汇编语言源程序,Dspsl,汇编,利用汇编器ASM500对.asm文件进行汇编生成.list列表和.obj目标文件。常用的汇编器命令:asm5001-s-l-x其中:%1用源文件名代入;-s将所有定义的符号放在目标文件的符号表中;-l产生一个列表文件;-x产生一个交叉汇编表,并把它附加到列表文件的最后。,Dspsl,链接,利用链接器LNK500对汇编生成的一个或多个目标文件(.obj)进行链接,生成.map文件和.out文件常用的链接命令:lnk500%1.cmd其中,%1.cmd为链接命令文件名.map文件给出存储器配置,程序文本段、数据段、堆栈、向量、在存储器定位表及全局符号在存储器中位置.out文件可执行文件,加载到仿真系统或实际应用系统运行,COMMAND文件,Dspsl,链接命令文件,作用:指明输入文件(要链接的目标文件)指明输出文件(要生成的可执行输出文件,映像文件)指明入口地址说明存储器配置情况程序段、数据段、堆栈段以及复位和中断向量在存储器中的安排,Dspsl,链接命令举例,example.obj-oexample.out-mexample.map-estartMEMORYPAGE0:EPROM:org=0E000h,len=100hPAGE1:SPRAM:org=0060h,len=20hDARAM:org=0080h,len=100h,全局符号,对应程序存储器地址,目标存储器配置命令,Dspsl,链接命令举例(续),SECTIONS.text:EPROMPAGE0.bss:SPRAMPAGE1.data:DARAMPAGE1STACK:DARAMPAGE1,段定位命令,Dspsl,映象文件(.map),.map文件给出了存储器的配置情况程序文本段、数据段、堆栈段以及向量段在存储器中的定位表全局符号在存储器中的位置,Dspsl,映象文件举例,*TMS320C54xCOFFLinkerVersion1.10*TueMay2011:13:052002OUTPUTFILENAME:ENTRYPOINTSYMBOL:startaddress:0000e000,Dspsl,映象文件举例(续),MEMORYCONFIGURATIONnameoriginlengthattributesfill-PAGE0:EPROM0000e000000000100RWIXPAGE1:SPRAM00000060000000020RWIXDARAM00000080000000100RWIX,Dspsl,映象文件举例(续),SECTIONALLOCATIONMAPoutputattributes/sectionpageoriginlengthinputsections-.text00000e0000000001a0000e0000000001aexample.obj(.text).bss10000006000000009UNINITIALIZED0000006000000009example.obj(.bss).data100000080000000080000008000000008example.obj(.data),Dspsl,映象文件举例(续),outputattributes/sectionpageoriginlengthinputsections-STACK10000008800000010UNINITIALIZED0000008800000010example.obj(STACK).xref00000000000000082COPYSECTION0000000000000082example.obj(.xref),Dspsl,映象文件举例(续),GLOBALSYMBOLSaddressnameaddressname-00000060.bss00000060.bss00000080.data00000069end0000e000.text00000080.data00000088edata00000088edata00000069end0000e000.text0000e01aetext0000e000start0000e000start0000e01aetext7symbols,Dspsl,.out文件,.out文件是一个可执行文件不能查看,Dspsl,DSK(DSPStarterKit)BlockDiagram,调试工具,54x,Dspsl,C6211-DSPStarterKit(DSK),Hardware150MHzC6211DSPbasedboardAD535-16-bitA/DConverter4MbytesSDRAM128KbytesFlashROMPowerSupplyUniversal(CECompliant)ParallelPortCableSoftwareCodeGenerationToolsCCompiler,Assembler产生一个需重新;定位的入口0001000440002F020LD#X,A;产生一个需重新;定位的入口00030000!50004F7E0Y:RESETX和Y需重新定位。,Dspsl,假设链接时X重新定位在地址7100h,.text段重新定位到从地址7200h开始,那么Y的重新定位值为7204h。f073BY变成f07300047204f020LD#X,A变成f0200000!7100!,Dspsl,汇编,汇编器任务:汇编语言源程序目标文件目标文件都是COFF文件汇编语言程序中包括:汇编命令汇编语言指令宏命令,Dspsl,汇编器的功能,1、将汇编语言源程序编成一个可重定位的目标文件(.obj文件);2、如果需要的话,可以生成一个列表文件(.lst文件);3、将程序代码分成若干个段,每个段的目标代码都由一个SPC(段程序计数器)管理;4、定义(.def)和引用(.ref)全局符号,需要的话还可以在列表文件后面附加一张交叉引用表;5、对条件程序块进行汇编;6、支持宏功能,允许定义宏命令。,Dspsl,运行汇编程序,C54x的汇编程序(汇编器)名为asm500.exe要进行汇编程序,可键入如下命令:asm500inputfileobjectfilelistingfile-options,Dspsl,表3-3汇编asm500的选项(1),Dspsl,表3-3汇编asm500的选项(2),Dspsl,对选项说明,选项对大小写不敏感选项前一定要有一短划(连字符)选项可以出现在命令行上命令后的任何位置,Dspsl,典型汇编命令,asm500%1-l-s-x,Dspsl,表3-3列表文件举例(1),Dspsl,表3-3列表文件举例(2),Dspsl,交叉引用清单,3-4表,Dspsl,所有的

温馨提示

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

评论

0/150

提交评论