DSP-CCS集成开发环境的使用实验
【优化】ccs程序优化实验报告
【关键字】优化ccs程序优化实验报告篇一:CCS软件实验报告一. 实验目的1. 了解CCS软件的基本操作,并编写程序完成简单的数学计算。
2. 编写CCS中的.cmd配置文件,并了解文件应用。
二. 实验设备1. CCS软件。
2. PC机。
三. 实验内容1. 熟悉集成开发环境CCS的使用,编写程序完成以下数学式的计算。
4y??axii?1i 其中,a1=0.1,a2=0.2,a3=-0.3,a4=0.6.2. 编写CCS中.cmd配置文件,了解该文件的作用。
四. 实验源程序1. 源程序.c文件代码如下:#include "math.h"#includefloat data5;void main(void){float data1,data2,data3,data4;printf("Please input data");scanf("%f,%f,%f,%f",&data1,&data2,&data3,&data4);data5=0.1*data1+0.2*data2-0.3*data3+0.6*data4;printf("data1=%f\n",data1);printf("data2=%f\n",data2);printf("data3=%f\n",data3);printf("data4=%f\n",data4);printf("%f\n",data5);}以上程序用C语言编写.实现了输入4个数,分别对应data1到data4,根据实验要求的算式求得data5.最后,分别输出data1到data5,其五个数间的关系:data5=0.1*data1+0.2*data2-0.3*data3+0.6*data4y=a1*x1+a2*x2+a3*x3+a4*x42. 用汇编语言编写的.cmd文件代码如下:MEMORY {PAGE 0:PARAM: org=1000h,len=0efd0hPAGE 1:IDATA: org=0x80,len=0x1380}SECTIONS{.text :> PARAM PAGE 0}以上程序完成了将.text段配置在地址为1000h开始的地方.五. 实验结果1. 实验的结果:当输入的4个数都为10,输出为6,如图:验证:10*0.1+10*0.2+10*(-0.3)+10*0.6=6,所以实验结果正确.2. 汇编语言编写的.cmd文件的作用:由上图可知,程序存储器中从1000h地址开始存放.text段的代码,这与.cmd文件中PAGE 0的起始地址对应.六. 实验体会初步懂得了CCS的基本操作与应用,学会用CCS编程做简单的计算,了解了CCS中.cmd 配置文件的作用,巩固了书本所学的知识。
《DSP技术实验》DSP程序的调试和分析方法实验一
《DSP技术实验》DSP程序的调试和分析方法实验一、实验目的1. 熟悉 CCS 集成开发环境,熟练掌握 DSP 程序设计方法;2. 熟悉利用 restrict、volatile 等关键字优化 DSP 程序,掌握利用#pragma 伪指令和内嵌操作优化 DSP 程序3. 掌握利用编译选项优化 DSP 程序的方法;4. 利用 DSPLIB 实现 FIR 滤波分析程序的优化设计。
二、实验预习内容1. 请写出 restrict 关键字的作用,并用之修改实验 1 中的 FIR 函数,优化DSP 程序。
答1:restrict关键字的作用:在函数参数中使用restrict关键字来定义指针变量,则在该函数中的指针变量不会指向同一个存储空间,这可以帮助编译器判别循环依赖性,使编译器充分利用流水线技术,从而提高优化水平。
答2:修改实验 1 中的 FIR 函数,优化 DSP 程序:DataBuf[i]=DataBuf[nx+i];改为:float*restrict pl;//Loop2float*restrict p2;p1=DataBuf;p2=&DataBuf[nx];for(i=0;i<nh-1;i++)p1[i]=p2[i];同时,把传输函数void FIR(float*x, float*h, float*y, float*DataBuf, float nh, float nx)改为:void FIR(float*restrict x, float*restrict h, float*restrict y, float*restrict DataBuf, float nh, float nx)2.请写出基于编译器反馈信息优化 DSP 程序的步骤。
答:阶段一:收集程序的剖析信息。
配置生成剖析信息选项-->生成剖析信息-->将剖析信息文件转化为相应反馈文件。
阶段二:利用收集的剖析信息优化DSP程序。
DSP实验指导书(DSP处理器原理与应用)
实验一:DSP软件集成开发环境CCS一. 实验目的1.了解DSP 软件开发集成环境Code Composer Studio (CCS) 的安装和配置过程;2.熟悉并掌握CCS 的操作环境和基本功能,了解DSP软件开发的一般流程:(1) 学习创建工程和管理工程的方法;(2) 了解工程文件和映像文件的基本内容;(3) 了解基本的编译和调试功能;(4) 学习使用观察窗口。
二. 实验设备计算机、Code Composer Studio 2.2 或以上版本三. 背景知识1.DSP 应用系统开发一般需要借助以下调试工具:―软件集成开发环境(CCS):完成系统的软件开发,进行软件和硬件仿真调试;―硬件开发及测试平台:实现系统的硬件仿真与调试,包括仿真器和评估模块。
S 集成了适用于所有TI 器件的源码编辑、编译链接、代码性能评估、调试仿真等功能,为设计人员提供了一个完整的嵌入式系统软件开发环境。
3.系统软件部分可以通过CCS 建立的工程文件进行管理,工程文件一般包含以下几种文件:―源程序文件:C 语言或汇编语言文件(*.ASM 或*.C)―头文件(*.H)―命令文件(*.CMD)―库文件(*.LIB, *.OBJ)四. 实验步骤1.创建工程文件双击CCStudio 图标,启动CCS,CCS 的初始界面包括工程管理区和工作区两部分。
在菜单中选择“Project—>New…”,弹出“Project Create”窗口:若标题栏显示xxxx Emulator,则需要先运行Setup CCS,选择合适的软件仿真环境在“Project”编辑框内填入项目名称,例如“hello1”;有必要的话,可以更改项目文件夹位置(Location);“Project”下拉框用以确定输出文件类型;目标硬件类型在“Target”下拉框中指定。
点击“完成”后,CCS 自动在指定目录下生成“hello1.pjt”工程文件。
工程文件中保存了对应工程的设置信息和内部文件的引用情况。
CCS集成开发环境DSP
CCS集成开发环境DSP
• 常用工具条
•(2) 编辑工具条 • 编辑工具条共计10个按钮。
• •
PPT文档演模板
—— 左移制表位按钮。将选定的文本 块左移一个Tab键。
—— 右移制表位按钮。将选定的文本 块右移一个Tab键。
CCS集成开发环境DSP
—— 执行到光标处按钮。在调试过程 中,从当前位置执行程序,直到遇到反汇 编窗口中的光标位置为止。CCS集成开发环境DSP
• 常用工具条 •(4) 调试工具条
• • •
PPT文档演模板
—— 运行程序按钮。从当前PC位置开
始执行程序,直到遇到断点后停止。
—— 暂停程序按钮。用来暂停正在执行
的程—序—。动画执行按钮。在执行前先设置好
PPT文档演模板
CCS集成开发环境DSP
•常用工具条
••(1) 标常准用工的具工条具条共有四类,分别为标准工具条 、 • 编辑启工动具C条CS、后项会目自工动具显条示和标调准试工工具具条条。。也用可户以可通
以 过单选击择工 主具 菜条 单上 “的Vi按ew钮”执中行的相“应St的an操da作rd。Toolbar”
PPT文档演模板
CCS集成开发环境DSP
•图4-2 Code Compuser studio Setup窗口 •返回本节
• CCS的应用界面
•源程序编辑窗口
•图形显示窗口
•主•菜单 —个典型的CCS开发环境界面如图。
•工具条
•工程项目窗口
•内存显示窗口
•反汇编窗口
PPT文档演模板
•寄存器显示窗口
,又可以设置断点、探测点调试程序。
•
TIDSP集成开发环境CCS的使用(精)
2在CCS中选择菜单Project → Add Files to Project,并在文件类型选框中选
汇编源文件(*.a*, *.s*),然后选vectors.asm和load.asm这两个文件并单击Open。这些文件中包含了设置复位RESET中断到程序的C入口
c_int00的一些汇编指令。(对于更加复杂的程序,可在vectors.asm文件中定义更多的中断向量。也可利用DSP/BIOS来自动定义所有的中断向量。)
3在CCS中选择菜单Project → Add Files to Project,并在文件类型选框中选
择链接命令文件(*.cmd),然后选volume.cmd并单击Open,该命令文件将汇编程序的段映射到DSP的存储空间中。
4在CCS中选择菜单Project → Add Files to Project,进入编译库文件夹
(c:\ti\c5400\cgtools\lib),在文件类型选框中选择目标文件类型和库文件类型(*.o*, *.lib),为所配置的目标DSP选rts.lib文件并单击Open。该库文件为目标DSP提供了运行时间(runtime)支持。(对于一些目标DSP,运行时间库可以是一个更特殊的文件名,如rts_ext.lib。)
2、硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。
本次实验主要采用软件仿真器模式。
二、CCS系统配置
采用标准配置文件进行系统配置的步,弹出对话框。
步骤2:清除以前定义的配置。
步骤3:选择与目标系统相匹配的配置文件。
DSP集成开发环境CCS
DSP集成开发环境CCS简介DSP集成开发环境(DSP Integrated Development Environment,简称CCS)是一款功能强大的软件开发工具,专门用于数字信号处理(DSP)应用程序的开发。
CCS提供了一整套工具链,包括编译器、调试器、仿真器等,可以帮助开发人员高效地进行DSP应用程序的开发、调试和优化。
功能特点•多种开发套件支持:CCS提供了针对不同型号的DSP处理器的开发套件,覆盖了广泛的DSP芯片系列。
•实时调试功能:CCS具有强大的实时调试功能,可以帮助开发人员分析程序运行过程中的各种数据,实时监控程序运行状态。
•性能优化工具:CCS提供了各种性能优化工具,可以帮助开发人员识别程序中的性能瓶颈,并提供优化建议。
•硬件仿真支持:CCS支持与硬件仿真器的连接,可以实现使用仿真器来执行DSP程序,并实时调试仿真结果。
•工程管理功能:CCS具有完善的工程管理功能,可以帮助开发人员管理项目文件、源代码和编译配置等。
使用步骤1.创建新工程:在CCS中创建一个新的DSP工程,选择目标DSP处理器型号和相关参数。
2.编写代码:编写DSP应用程序的源代码,包括算法实现、数据处理等部分。
3.编译工程:使用CCS提供的编译器对工程进行编译,生成可执行的DSP程序。
4.连接硬件仿真器:将硬件仿真器连接到目标DSP处理器上,并与CCS进行连接。
5.下载程序:将编译生成的DSP程序下载到目标DSP处理器中,可以使用CCS的下载功能进行操作。
6.调试程序:在CCS中使用实时调试功能对程序进行调试,查看程序的执行过程和数据变化。
7.性能优化:根据CCS提供的性能优化工具分析程序性能,优化程序的关键部分。
优势与劣势优势•功能丰富:CCS提供了丰富的功能和工具,满足了DSP应用开发的各种需求。
•易于使用:CCS采用了直观的用户界面设计,使得开发人员可以更快地上手使用。
•良好的兼容性:CCS支持多种型号的DSP处理器,并且与硬件仿真器的兼容性较好。
DSP集成开发环境CCS开发指南_部分3
19第二章 开发一个简单的应用程序本章使用hello world实例介绍在CCS中创建、调试和测试应用程序的基本步骤;介绍CCS的主要特点,为在CCS中深入开发DSP软件奠定基础。
在使用本实例之前,你应该已经根据安装说明书完成了CCS安装。
建议在使用CCS时利用目标板而不是仿真器。
如果没有CCS而只有代码生成工具和Code Composer或者是利用仿真器在进行开发,你只要按第二章和第四章中的步骤执行即可。
2.1 创建工程文件在本章中,将建立一个新的应用程序,它采用标准库函数来显示一条helloworld 消息。
1. 如果CCS 安装在c:\ti 中,则可在c:\ti\myprojects 建立文件夹hello1。
(若将CCS 安装在其它位置,则在相应位置创建文件夹hello1。
)2. 将c:\ti\c5400\tutorial\hello1中的所有文件拷贝到上述新文件夹。
3. 从Windows Start 菜单中选择Programs→Code Composer Studio ‘C5400→CCStudio。
(或者在桌面上双击Code Composer Studio 图标。
)注:CCS 设置如果第一次启动CCS 时出现错误信息,首先确认是否已经安装了CCS。
如果利用目标板进行开发,而不是带有CD-ROM的仿真器,则可参看与目标板一起提供的文档以设置正确的I/O端口地址。
4.选择菜单项Project→New。
5.在Save New Project As窗口中选择你所建立的工作文件夹并点击Open。
键入myhello作为文件名并点击Save,CCS就创建了myhello.mak的工程文件,它存储你的工程设置,并且提供对工程所使用的各种文件的引用。
20212.2 向工程添加文件1. 选择Project→Add Files to Project,选择hello.c 并点击Open。
2. 选择Project→Add Files to Project,在文件类型框中选择*.asm。
第6章4 CCS集成开发环境的使用-实验3
6.4.3 图像数据转换与CCS图像显示实验本节以利用CCS实现图像显示为例,进一步学习CCS的图形显示(Graph)调试技术,同时提供图像数据的转换方法。
为了方便起见,本实验将6.4.2中的volume目录下的文件稍加修改。
目标板仍为TMS320C64xx Simulator。
1.修改volume目录下的工程文件假定CCS安装在C:\CCStudio_v3.3目录下。
(1)将C:\CCStudio_v3.3\tutorial\sim64xx\volume1文件夹拷贝到文件夹C:\CCStudio_v3.3\MyProjects下。
(2)运行CCS,并打开工程volume.pjt。
(3)将C:\CCStudio_v3.3\C6000\cgtools\lib中C64x DSP的C语言运行支持库文件rts6400.lib 添加到工程中。
(4)右击工程观察窗中volume.pjt图标,在弹出的菜单中点击“Scan All File Dependencies”命令,CCS将volume.h自动添加到volume工程中。
(5)修改volume.c文件。
打开volume.c文件,在“extern void load(unsigned int loadValue);”上一行添加如下一段代码,定义图像存储空间。
#pragma DATA_ALIGN(image, 8) // 图像每个像素数据以8字节对齐#pragma DATA_SECTION(image,".imgbuffer") //为数组image分配一个段,段名为imgbufferunsigned char image[SIZE] = { }; // SIZE大小是图像的像素个数(6) 修改volume.cmd文件。
打开volume.cmd,将其内容作如下修改:/* cmd 文件*/MEMORY{L2: o =00010000h l =000F0000hCE0: o =80000000h l =01000000h /*存放图像数据image起始地址和长度*/}SECTIONS{.cinit > CE0.text > L2.stack > L2.bss > L2.const> L2.data > L2217.far > L2.switch> L2.sysmem > L2.tables > L2.cio > L2.imgbuffer > CE0/*存放图像数据image,将image数据存放到DSP外部RAM中,即CE0, 存放起始地址为80000000h*/}2.图像数据转换图像的数据格式和DSP工程中的数据格式是不同的,因此若要在CCS中使用这些图像数据,则必须进行转换。
dsp实验报告CCS 设置和常用指令
北京联合大学智慧城市学院实验报告课程名称:DSP 技术与应用实验名称: CCS设置和常用指令班级:通信14姓名学号:2017 年 10 月 21 日实验一 CCS 设置和常用指令一、实验目的熟悉CSS设置方法;会建立汇编语言源文件;会建立工程项目;会将文件加入到工程;会使用汇编、链接命令;会加载、运行程序。
二、实验内容1、编写汇编语言常用的装入和存储指令、算术指令、逻辑指令、程序控制指令50句。
2、使用汇编命令检查所编写的汇编语言源语句格式是否正确,如果有错误则找出并改正,直到没有错误为止。
三、实验设备每组PC 机一台;CCS-DSP 集成开发环境。
四、实验步骤1)CCS 设置及源文件编写、汇编、链接、加载、运行过程1、仿真器驱动的安装2、打开CCS,双击Setup CCS 环境设置3、连接试验箱系统4、建立新工程Project New5、建立新文件,编写源文件、链接命令文件6、加新建的文件到项目7、汇编源、链接文件8、加载、运行程序2)编写常用汇编语言指令装入和存储指令、算术指令、逻辑指令、程序控制指令共计50 句。
使用汇编命令菜单Project-Compile file,检查语句,如果有错误改正之,直到汇编没有错误为止。
五、实验报告1、CCS 工作环境设置过程:要有截图和说明。
新建工程并建立工作区建立ASM文件并保存2、编写的汇编语言语句和程序,要有截图。
3、汇编、链接、运行的结果:要有截图和说明。
4、实验结论通过本次实验,我熟悉了CCS的集成开发环境和运行环境,同时熟悉了CSS设置方法,在编译器里面进行源文件的编写,将文件添加到工程,最后经行加载、运行程序。
今天的这次实验让我对DSP的汇编语言有了更深一步的了解,在编译的过程中,我们组遇到了很多问题,但是最后通过查书和其他组的帮助,将问题一一解决。
及时地完成了任务。
附录:SUBB 1,B;从累加器中减去带借位减操作数DELAY 16;储存器单元延迟ADDC 1000h,A;带进位的加法SUBC 1000h,A;有条件减法SQUR 1000h,A;1000位置的数字的平方加到累加器A中DADD 12,A;双精度12加到累加器AADD 1H,A ; 操作数1加至累加器AADD 2H,2,A ; 操作数2移位后加至累加器AABS A;取绝对值CMPL A;累加器取反EXP A;求累加器中数据的指数MAX A;求累加器A最大值MIN B;求累加器B最小值NORM A;归一化SAT A;累加器饱和运算SUB #30,A;从累加器中减去30ADD #10,B;10加到累加器BMPY #20,A;20和累加器相乘MAC #10,#40,A;10和40相乘放到累加器A中SUB 3,A ;从累加器A中减去操作数3ROR B;累加器B经过进位位循环右移OR #1,B;1和累加器B相或XOR 10,A;10和累加器相异或RETE;开中断,从中断返回RETF;开中断,从中断快速返回ROL A;累加器A经过进位位循环左移SFTC A;累加器A条件移位BITT 1;测试由T寄存器指定的位AND 14,A ;操作数14与累加器A相与AND #1,A;1与累加A相与CMPM 1,#1k;储存单元与长立即数比较BACC A;按累加器规定地址转移PSHD 1;将1压入堆栈CALA A;按累加器的地址调子程序RPT #10;重复执行下调指令11次FRAME 1;堆栈指针偏移一个立即数值LD 31,16,A ;操作数左移16位后加载至累加器。
一、实验目的及意义
一、实验目的及意义《DSP原理及应用》是电子信息工程专业的一门专业课程,主要介绍以TI公司TMS320 2000系列为主的DSP芯片的基本工作原理和开发设计环境及其应用。
本系列实验是该课程教学的一个重要实践环节,旨在通过系列基础实验和综合设计型实验帮助学生熟悉掌握DSP 芯片的汇编语言开发过程,加强并提高学生对DSP芯片的编程和开发能力及对相关专业课程的综合应用能力。
二、实验工具1、PC机2、SEED-DTK APD 实验箱及SEED-XDSusb仿真器3、U盘一只(自备)三、实验要求本系列实验包括八个实验选项,其中实验内容1~5属于每位同学必须完成的基本实验;实验内容6属于一般难度的实验,评分在0~80分;实验内容7和8是有较高难度的实验,评分范围在0~100分。
同学可在内容6~8之中自行选择一个来完成。
1、集成开发环境CCS基础通过建立一个简单的应用工程,体会在CCS下,完成工程的建立,文件添加和编译、连接、调试等任务。
2、软件延时程序编程及调试编写一个软件延时程序,延时时间为4秒钟。
3、定点数除法编程及调试参照实验三P12-P14部分的原理,根据给出的流程图编写通用除法子程序DIV,来实现两个定点数的除法运算。
同时编写一个简单的主程序验证该子程序。
4、可屏蔽中断的编程及调试本实验要求用通用定时器1产生4s的延时。
产生4s的延时功能用定时器1的周期中断来实现,该周期中断由2级中断INT2来控制。
5、浮点数的定点表示带符号小数的定标及运算(包括链接文件设计、带符号小数的定点表示及运算等)编写程序实现带符号小数的Q13定点表示及加减乘除运算。
6、交通灯控制(包括链接文件设计、软件延时程序设计、定时器设计、I/O应用、数据空间扩展等)要求:初始状态为南北向红灯,东西向绿灯;4秒以后,南北向黄灯,东西向绿灯闪动;1秒以后,南北向绿灯,东西向红灯;4秒以后,南北向绿灯闪动;东西向黄灯;1秒以后,南北向红灯,东西向绿灯。
实验一 TI DSP集成开发环境CCS的使用
实验一 TI DSP集成开发环境CCS的使用CCS是TI公司推出的用于开发DSP芯片的集成开发环境,它采用Windows 风格界面,集编辑、编译、链接、软件仿真、硬件调试以及实时跟踪等功能于一体,极大地方便了DSP芯片的开发与设计,是目前使用最为广泛的DSP开发软件之一。
一、CCS简介CCS是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具。
CCS有两种工作模式:1、软件仿真器模式:可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。
2、硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。
本次实验主要采用软件仿真器模式。
二、CCS系统配置采用标准配置文件进行系统配置的步骤:步骤1:启动CCS配置程序。
双击桌面上的Setup CCS快捷图标,弹出系统配置界面。
步骤2:选择与目标系统相匹配的配置文件(若已有别的目标系统配置文件,清除以前定义的配置,再进行选择)。
将所选中的配置文件加入到系统配置中。
步骤3:保存系统配置。
单击“Save”按钮,出现如下窗口,将系统配置保存在系统寄存器中,完成CCS的系统配置。
,进入CCS开发环境界面选择“是”,进入CCS开发环境界面。
三、CCS 中常用文件名和应用界面1、常用文件名*.cmd —— 链接命令文件;*.obj —— 由源文件编译或汇编后所生成的目标文件;*.out —— 完成编译、汇编、链接后所形成的可执行文件,可在CCS 监控下调试和执行。
2、应用界面四、实验举例1.创建新工程利用CCS创建一个新工程,然后向该工程中添加源代码文件和库文件。
2.向工程中添加文件一个工程项目包括源程序、库文件、链接命令文件和头文件等。
3.察看源代码在工程视图中volume.c上双击,就可在CCS右边窗口中察看源代码。
DSP开发环境和流程的简单例程
图1-3典型的软件开发流程图
1.2.3硬件仿真和实时数据交换
TI DSPs提供在片仿真支持,它使得CCS能够控制程序的执行,实时监视程序运行。增强型JTAG连接提供了对在片仿真的支持,它是一种可与任意DSP系统相连的低侵扰式的连接。仿真接口提供主机一侧的JTAG连接,如TI XSD510。为方便起见,评估板提供在板JTAG仿真接口。
图2-2装载程序
图2-3反汇编(Disassembly)窗口
现在可以开始运行我们的程序:在主菜单中单击“Debug”,选择“Go Main”,让程序从主函数开始执行。程序会停在main()处,并会有一个黄色的箭头标记当前要执行的C语言代码。如果希望同时看到C语言代码和对应编译生成的汇编代码,在主菜单中单击“View”,选择“Mixed Source/ASM”,此时会有一个绿色的箭头量标记当前要执行的汇编代码,如图2-4所示。
此时,在浅灰色显示的汇编指令上单击鼠标,然后按F1键,CCS会对该汇编指令进行搜索并弹出帮助窗进行解释。可以利用该功能来了解不熟悉的汇编指令。
在主菜单中单击“Debug”,选择“Run”,或单击工具条图标(Run),让程序全速执行。在主菜单中单击“Debug”,选择“Halt”,或单击工具条(Halt),让程序退出运行。
工程窗口用来组织用户的若干程序构成一个项目,用户可以从工程列表中选中需要编译和调试的特定程序。在源程序编译/调试窗口中用户既可以编译程序又可以设置断点、探针,调试程序。反汇编窗口可以帮助用户查看机器指令,查找错误。内存和寄存器显示窗口可以查看、编辑内存单元和寄存器。图形显示窗口可以根据用户需要直接或经过处理后显示数据。用户可以通过主菜单Windows条目来管理窗口。
DSP集成开发环境CCS
② 输入各选项参量,拟定窗口旳特征。 ③ 单击“OK”按钮,出现存储器窗口。
DSP原理及应用
DSP原理及应用
反汇编窗口
DSP原理及应用
7.3.4 存储器窗口旳使用
1. 观察存储器旳内容 存储器窗口能够直接显示存储器旳内容。在调
试程序旳过程中,可直接观察存储器旳内容来 判断程序旳正确性。
① 打开“Memory Window Options” (存储器 窗口选项)对话框。
措施1:选择“View”菜单中旳“Memory”选 项;
生成旳目旳文件; *.out —— 完毕编译、汇编、链接后
所形成旳可执行文件,可在CCS监控下 调试和执行;
DSP原理及应用
*.wks — 工作空间文件,可用来统计工 作环境旳设置信息;
*.cdb — CCS旳配置数据库文件,是使 用DSP/BIOS API模块所必须旳。当保存 配置文件时,将产生链接器命令文件 (*cfg.cmd)、头文件(*cfg.h54)和汇编语 言源文件(*cfg.s54)。
② 编辑各类文件 能够使用CCS提供旳集成编辑环,对
头文件、链接命令文件和源程序进行编 辑。 ③ 对工程项目进行编译 能够使用CCS提供旳集成编辑环境,对 头文件、链接命令文件和源程序进行编 辑。
DSP原理及应用
④ 对成果和数据进行分析和算法评估 如出现语法错误,将在构建窗口中显示
DSP原理及应用
1. 创建新文件 2. 打开一种文件 3. 文件旳编辑 4. 文本旳查找和替代
DSP原理及应用
7.3.3 反汇编窗口旳使用
反汇编窗口主要用来显示反汇编后 旳指令和调试所需旳符号信息,涉及反 汇编指令、指令所存储旳地址和相应旳 操作码(机器码)。
dsp实验报告
dsp实验报告实验一:CCS入门实验实验目的:1. 熟悉CCS集成开发环境,掌握工程的生成方法;熟悉SEED-DEC643实验环境; 掌握CCS集成开发环境的调试方法。
2.学习用标准C 语言编写程序;了解TI CCS开发平台下的C 语言程序设计方法和步骤; 熟悉使用软件仿真方式调试程序。
3. 学习用汇编语言编写程序; 了解汇编语言与 C 语言程序的区别和在设置上的不同;了解TMS320C6000 汇编语言程序结果和一些简单的汇编语句用法学习在CCS 环境中调试汇编代码。
4. 在了解纯C 语言程序工程和汇编语言程序工程结构的基础上,学习在C 工程中加入汇编编程的混合编程方法; 了解混合编程的注意事项;理解混合编程的必要性和在什么情况下要采用混合编程5. 熟悉CCS集成开发环境,掌握工程的生成方法; 熟悉SEED-DEC643实验环境;掌握CCS集成开发环境的调试方法。
实验原理:CCS 提供了配置、建立、调试、跟踪和分析程序的工具,它便于实时、嵌入式信号处理程序的编制和测试,它能够加速开发进程,提高工作效率。
CCS 提供了基本的代码生成工具,它们具有一系列的调试、分析能力序。
使用此命令后,要重新装载.out 文件后,再执行程序。
使用 CCS常遇见文件简介1. program.c: C 程序源文件;2. program.asm: 汇编程序源文件;3. filename.h: C 程序的头文件,包含DSP/BIOS API模块的头文件;4. filename.lib: 库文件;5. project.cmd: 连接命令文件;6. program.obj: 由源文件编译或汇编而得的目标文件;7. program.out: 经完整的编译、汇编以及连接后生成可执行文件; 8. program.map: 经完整的编译、汇编以及连接后生成空间分配文件; 9.project.wks: 存储环境设置信息的工作区文件。
P.S(CMD文件中常用的程序段名与含义1. .cinit 存放C程序中的变量初值和常量;2. .const 存放C程序中的字符常量、浮点常量和用const声明的常量;3. .text 存放C程序的代码;4. .bss 为C 程序中的全局和静态变量保留存储空间;5. .far 为C 程序中用far声明的全局和静态变量保留空间;6. .stack 为 C 程序系统堆栈保留存储空间,用于保存返回地址、函数间的参数传递、存储局部变量和保存中间结果;7. .sysmem 用于 C 程序中malloc、calloc 和 realloc 函数动态分配存储空间。
DSP实验一-CCS软件的使用
实验一CCS软件的使用CCS是TI公司开发的集编辑、编译、调试等功能为一体的DSP开发工具,我们本次实验通过一个简单的程序来学习CCS软件的基本使用方法。
一.实验目的:1.了解240X系列DSP程序的结构及文件组织2.了解CCS开发环境功能,掌握其使用方法二.实验器材1.CCS软件,DSP仿真器2.示波器(可选)三.实验内容1.运行CCS软件,建立工程2.输入程序3.编译工程,下载并执行实验程序,检查实验结果四.基础知识1.源代码书写格式在CCS中源代码具有自己的书写格式,简单归纳如下:(1)每一行代码分三个区:标号区、指令区、注释区①标号区必须顶格写,主要是定义变量、常量、程序标签时的名称,标号区占3个TAB的间隔,即12个字符.②指令区位于标号区之后,以空格或TAB隔开。
如果没有标号,也必须在指令前面加上空格或TAB,不能顶格,指令码占2个TAB间隔,然后是操作数。
③注释区在标号区、指令区之后,以分号开始。
注释区前面也可以没有标号区和指令区;另外,还有专门的注释行,以*打头,必须顶格开始.如果功能说明较多以分格线框起来。
(2)一般区分大小写(3)CCS集成开发环境对书写格式没有做要求,但养成良好的代码书写格式,增加代码的可读性,避免低级的错误,对今后软件的开发是有帮助的。
另外,其他汇编语言的编程风格也可以借用过来,如标示符命名规则、程序说明的要求等.2.矢量文件矢量文件是DSP程序中非常重要的文件,用来管理程序复位和中断向量的配置。
当有中断发生并且处于允许状态时,程序指针跳转到中断向量表中对应的中断地址,由于中断服务程序较长,通常中断矢量文件存放的是一个跳转指令,指向实际的中断服务程序。
; SOLUTION FILE FOR VECtor.ASM。
ref _c_int0.sect ”vectors";定义主向量段;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~;Interrupt vector table for core;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~reset B _c_int0 ;00h resetint1: B int1 ;02h INT1int2: B int2 ;04h INT2int3: B int3 ;06h INT3int4: B int4 ;08h INT4int5: B int5 ;0Ah INT5int6: B int6 ;0Ch INT6int7: B int7 ;0Eh reservedint8: B int8 ;10h INT8 user-definedint9: B int9 ;12h INT9 user-definedint10: B int10 ;14h INT10 user definedint11: B int11 ;16h INT11 user definedint12: B int12 ;18h INT12 user definedint13: B int13 ;1Ah INT13 user definedint14: B int14 ;1Ch INT14 user definedint15: B int15 ;1Eh INT15 user definedint16: B int16 ;20h INT16 user definedint17: B int17 ;22h TRAPint18: B int18 ;24h NMIint19: B int19 ;26h reservedint20: B int20 ;28h INT20 user definedint21: B int21 ;2Ah INT21 user definedint22: B int22 ;2Ch INT22 user definedint23: B int23 ;2Eh INT23 user definedint24: B int24 ;30h INT24 user definedint25: B int25 ;32h INT25 user definedint26: B int26 ;34h INT26 user definedint27: B int27 ;36h INT27 user definedint28: B int28 ;38h INT28 user definedint29: B int29 ;3Ah INT29 user definedint30: B int30 ;3Ch INT30 user definedint31: B int31 ;3Eh INT31 user defined3.链接配置文件一个完整的DSP程序至少包含三个部分:主程序、矢量文件、链接配置文件(*.cmd)。
【人力资源】DSP集成开发环境CCS的使用资料
DSP实验实验二TI DSP集成开发环境CCS的使用昆明理工大学信息工程与自动化学院电工电子教学实验中心主讲:杨秋萍讲师CCS是TI公司推出的用于开发DSP芯片的集成开发环境,它采用Windows 风格界面,集编辑、编译、链接、软件仿真、硬件调试以及实时跟踪等功能于一体,极大地方便了DSP芯片的开发与设计,是目前使用最为广泛的DSP开发软件之一。
一、CCS的简介CCS是一种针对TMS320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具。
CCS有两种工作模式:1、软件仿真器模式:可以脱离DSP芯片,在PC机上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。
2、硬件在线编程模式:可以实时运行在DSP芯片上,与硬件开发板相结合在线编程和调试应用程序。
本次实验主要采用软件仿真器模式。
二、CCS系统配置采用标准配置文件进行系统配置的步骤:步骤1:启动CCS配置程序。
双击桌面上的Setup CCS快捷图标,弹出对话框。
步骤2:清除以前定义的配置。
步骤3:选择与目标系统相匹配的配置文件。
步骤4:将所选中的配置文件加入到系统配置中。
步骤5:安装驱动程序。
点击“Intall a Device Driver ”,弹出选择器件驱动程序对话框。
步骤6:保存系统配置。
打开“File ”菜单,单击“Save ”按钮,将系统配置保存在系统寄存器中,完成CCS 的系统配置。
三、CCS 中常用文件名和应用界面1、常用文件名*.cmd —— 链接命令文件;*.obj —— 由源文件编译或汇编后所生成的目标文件;*.out —— 完成编译、汇编、链接后所形成的可执行文件,可在CCS 监控下调试和执行。
钮 钮系统配置窗口 安装驱动程序2、应用界面四、实验举例1. 创建新工程利用CCS 创建一个新工程,然后向该工程中添加源代码文件和库文件。
1) CCS 的安装目录为c:\ti ,首先在文件夹c:\ti\myprojects\下建立一个新的文件夹,命名为volume1。
dsp_ccs的使用
1. CCS的安装
将CCS安装光盘放入CDROM驱动器中,运行光盘 根目录下的setup.exe,按照安装向导的提示将 CCS安装到硬盘中,默认安装目录为c:\ti。
安装完成后,在计算机桌面上创建“CCS 2 (‘C5000)”“Setup CCS 2 (’C5000)”两个 图标。
CCS安装完成之后,在第一次运行CCS软件之 前必须运行CCS设置程序。
支持多DSP调试。 断点工具,包括硬件断点、数据空间读/写断
点,条件断点(使用GEL编写表达式)等等。 探针工具(probe points),可用于算法仿真,
数据监视等。 剖析工具(profile points),可用于评估代码
执行的时钟数。
数据的图形显示工具,可绘制时域/频域波形、眼 图、星座图、图象等,并可自动刷新(使用Animate 命令运行)。
CCS是一个开放的环境,通过设置不同的驱 动完成对不同环境的支持。
CCS中集成了TI DSP的Simulator和Emulator 的驱动程序,用户可以根据需要有选择的进 行设置。
当使用其它公司的DSP产品时,需要索取并 安装相应的驱动程序。
2. CCS的文件组织
CCS安装完成之后,将在ccs安装目录下建立以下子目录: bin:应用程序目录 c5400\cgtools:ti代码产生工具目录 c5400\example:源代码例子目录 c5400\rtdx:实时数据交换文件目录 c5400\tutorial:ccs程序使用教程目录 cc\bin:ccs环境的程序文件目录 cc\gel:ccs中使用的gel文件目录 docs:存放ccs的相关说明文档 myprojects:可以存放用户的工程设计文档
实验1CCS 的使用与工程的创建
实验一 CCS 的使用与工程的创建一、实验目的1、熟悉CCS集成开发环境,掌握工程的生成方法;2、熟悉实验箱;3、掌握CCS集成开发环境的调试方法;4、会编写简单的程序二、实验内容1、DSP源文件的建立;2、DSP程序工程文件的建立;3、学习使用CCS集成开发工具的调试工具;三、实验步骤1、将DSP仿真器与计算机连接好;2、进入CCS环境。
(1)创建工程文件:打开 CCS,点击 Project-->New,创建一个新工程(2)在 Project 中填入工程名flash_led,Location 将工程路径定位到D 盘;完成工程创建,将给定的文件放到工程目录下。
(3)点击Project选择add files to project,添加工程所需文件。
3、工程编译与调试(1)点击Project → Build all,对工程进行编译,如正确则生成out 文件;若是修改程序,可以使用 Project → Build 命令,进行编译连接,它只对修改部分做编译连接工作。
可节省编译与连接的时间。
编译通过,生成.out 文件。
(2)点击File → load program,在弹出的对话框中载入debug 文件夹下的.out 可执行文件。
(3)装载完毕(4)运行程序4、修改程序控制LED,使LED以次亮灭,循环下去。
LED地址portc000四、实验程序#include "cpu_reg.h"void Delay_MS(unsigned int ms);ioport unsigned portc000;unsigned int i;void main(){i=0;asm(" STM #0000h,CLKMD ");while(*CLKMD & 0x01 );asm(" STM #40C7h,CLKMD "); //设置CPU运行频率=100M/* 40C7h:5*clkin =100M30c7h:4*clkin =80M20c7h:3*clkin =60M10C7h:2*clkin =40M*/asm(" stm #4240h, SWWSR ");//2 wait except for on-chip program 1asm(" stm #00a0h, PMST "); //MP/MC = 0, IPTR = 001,ovly=0 asm(" stm #0802h, BSCR ");asm(" STM #0h,IMR ");//中断屏蔽寄存器P56portc000=1;//第一个红灯亮Delay_MS(500);while(1){i=0;for(i;i<=7;i++){portc000=portc000<<1;//循环左移8次,前9个灯一次亮Delay_MS(500);}portc000=0x0200;//第10个灯亮Delay_MS(500);portc000=0x0400;//第11个灯亮Delay_MS(500);portc000=0x0800;//第12个灯亮Delay_MS(500);portc000=1;// 下一次循环开始Delay_MS(500);}}void Delay_MS(unsigned int ms){unsigned int i,j;for(i=0;i<ms;i++){for(j=0;j<10000;j++) { ; }}}五、实验结果本实验先对灯的亮灭实现控制,然后再通过自己对程序的修改实现12个灯的循环亮。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
int out[L]; /* Output buffer */
int index;
main()
{
unsigned int i;
float signal;
unsigned int n=0;
index=0;
for(i=0;i<L;i++)
{
in[i]=0;
output[i]=input[i]*volume; //将输入数据放大volume倍放到输出缓冲区
return(TRUE);
}
//输出处理后的信号
int output_signals(int *output)
{
//在此将输出缓冲区out_buffer中的数据发送到输出设备(比如DA)
return(TRUE);
SARAM: o=0x10000,l=0x30000
SDRAM:o=0x40000,l=0x3e0000
}
SECTIONS
{
.text: {} > DARAM
.vectors: {} > VECT
.trcinit: {} > DARAM
.gblinit: {} > DARAM
frt: {} > DARAM
在本次实验中我们遇到了许许多多的问题,在这个慢慢解决的过程中我们了解到了很多的东西,尤其是在编程的过程中遇到很多的问题,开始是写的程序有问题后来又是程序没有问题但是编译后就有错误。所以在今后的学习中,要自己抓取学习重点。
《DSP原理及应用》课程实验报告
学生姓名:
郑月庭
所在班级:
电信1001
指导教师:
4、设置探测点,用时频图表示出输入信号或输出信号的波形。
三、实验程序(原理图)
volume.obj
-o test.out
-m test.map
-m t.map
MEMORY
{
DARAM:o=0x100,l=0x7f00
VECT : o=0x8000,l=0x100
DARAM2: o=0x8100,l=0x7f00
.MEM$obj: {} > DARAM2
.sysheap: {} > DARAM2
.sysstack: {} > DARAM2
.stack: {} > DARAM2
}
int output_signals(int *output);
//----------------------------主程序------------------------------------//
extern int fir(int *,int *,unsigned int ,int );
/* Low-pass FIR filter coefficients */
int coeff[L]={
-26,-13,14,36,31,-8,-58,-71,-15,83,139,76,-90,-231,-194,50,331,383,78,-405,
四、仿真及结果分析
五、硬件验证
无
六、小结
这是第一次接触到CCS,虽然开始毫无头绪,但在慢慢的接触过程中了解到了很多。这次课程使我了解了CCS的基本使用,如:如何设置断点,反汇编窗口的使用,存储器的使用,观察窗口的使用,图形显示工具,设置探测点等。
《DSP原理及应用》课程实验报告
学生姓名:
郑月庭
所在班级:
main()
{
int num = BUF_SIZE;
int i;
// ======初始化======
i=0;
input=inp_buffer;
output=out_buffer;
// ======无限循环======
while ( TRUE )
{
read_signals(inp_buffer);//加软件断点和探针
out[index] = fir(in,coeff,L,index);
index--;
if(index==-1)
index=L-1;
}
}
四、仿真及结果分析
滤波前
滤波后
五、硬件验证
无
六、小结
在本次实验中遇到了许许多多的问题,在开始时候,都有点摸不着头脑,有很多不懂的地方,在经过老师的讲解和看了例题之后,才找到入手的方法。从这次实验使我明白,以前学过的的知识的重要性,尤其是C语言和汇编语言,有了这个基础才能学好我们的专业课。。所以在今后的学习中,要自己抓取学习重点。
*/
#include"math.h"
#define L 64 /* Number of FIR filter coefficients */
#define fs 8000 /* 8000 Hz sampling frequency */
#define T 1/fs
#define f1 800 /* 800 Hz frequency */
write_buffer(inp_buffer, out_buffer, num);
output_signals(output);
i++;
}
}
//---------------------------------子程序---------------------------------//
//读取输入信号
#define w3 (2*PI*f3*T) /* 2*pi*f3/Fs */
#define a1 0.333 /* Magnitude for wave 1 */
#define a2 0.333 /* Magnitude for wave 2 */
#define a3 0.333 /* Magnitude for wave 3 */
电信1001班
指导教师:
廖亦凡
记分及评价:
项目满分
5分
得 分
一、实验名称
实验2:存储器实验
二、任务及要求
1、建立一个存储器写入与存储器内容块复制工程文件。
2、往DSP的data存储器0x001000h开始的一100个单元写入某一数据,并将该数据块复制到data存储器0x002000h开始的一100个单元。
mov 0eeeeh,*ar1+
bcc aloop,ac0>#0
mov #1200h,ar4
mov #100,ac0
mov #1000h,ar1
bloop sub #1,ac0
mov *ar1+,*ar4+
bcc bloop,ac0>#0
end nop
b end
四、仿真及结果分析
五、硬件验证
无
六、小结
#define f2 1800 /* 1800 Hz frequency */
#define f3 3300 /* 3300 Hz frequency */
#define PI 3.1415926
#define w1 (2*PI*f1*T) /* 2*pi*f1/Fs */
#define w2 (2*PI*f2*T) /* 2*pi*f2/Fs */
-654,-347,403,1024,863,-228,-1577,-1972,-453,2910,6836,9470,9470,6836,2910,-453,-1972,-1577,-228,863,
1024,403,-347,-654,-405,78,383,331,50,-194,-231,-90,76,139,83,-15,-71,-58,-8,31,36,14,-13,-26};
.cinit: {} > DARAM
.pinit: {} > DARAM
.sysinit: {} > DARAM
.bss: {} > DARAM2
.far: {} > DARAM2
.const: {} > DARAM2
.switch: {} > DARAM2
.sysmem: {} > DARAM2.c来自o: {} > DARAM2
廖亦凡 老师
记分及评价:
项目满分
5分
得 分
一、实验名称
FIR滤波器实验
二、任务及要求
【基本部分】3分
把教材7-10 FIR低通滤波器的程序补充完整,进行仿真实验。
【发挥部分】2分
设计FIR低通滤波器,记录参数,见教材251习题7.8。
三、实验程序(原理图)
/*
fir_test.c - FIR filter
out[i]=0;
}
while(1)
{
signal = a1*cos((float)w1*n);
signal += a2*cos((float)w2*n);
signal += a3*cos((float)w3*n);
n++;
in[index] = (int)((0x7fff*signal)+0.5);
3、用memory窗口观察写入和复制是否正确。
三、实验程序(原理图)
;test.asm
.test
.global start
start nop
bclr c54cm
bclr cr0lc
bclr ar6lc
mov #1000h,ar1
mov #100,ac0
mov #1,ac0
aloop sub #1,ac0
int read_signals(int *input)
{
//在此读取采集数据信号放到输入缓冲区input[]