ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:803.66KB ,
资源ID:10798783      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10798783.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于TMS320C54x流水灯设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于TMS320C54x流水灯设计.docx

1、基于TMS320C54x流水灯设计【摘 要】 DSP(Digital Signal Processing)也就是我们常说的数字信号处理,它是利用计算机或专用处理设备,以数字形式对信号进行采集,变换,滤波,估值,增强,压缩,识别等处理,以得到符合人们需要的信号形式。 一 DSP芯片1.1DSP芯片特点DSP芯片,也称数字信号处理器, 是一种具有特殊结构的微处理器。DSP芯片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP指令,可以用来快速的实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下的一些主要特点:在一个指令周期内可完成一

2、次乘法和一次加法。 程序和数据空间分开,可以同时访问指令和数据。 片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。 具有低开销或无开销循环及跳转的硬件支持。 快速的中断处理和硬件I/O支持。 具有在单周期内操作的多个硬件地址产生器。 可以并行执行多个操作。 支持流水线操作,使取指、译码和执行等操作可以重叠执行。 与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。 1.2 DSP芯片分类DSP芯片可以按照下列三种方式进行分类。 1按基础特性分 这是根据DSP芯片的工作时钟和指令类型来分类的。如果在某时钟频率范围内的任何时钟频率上,DSP芯片都能正常工作,除计算速度有变化外,没

3、有性能的下降,这类DSP芯片一般称为静态DSP芯片。例如,日本OKI 电气公司的DSP芯片、TI公司的TMS320C2XX系列芯片属于这一类 如果有两种或两种以上的DSP芯片,它们的指令集和相应的机器代码机管脚结构相互兼容,则这类DSP芯片称为一致性DSP芯片。例如,美国TI公司的TMS320C54X就属于这一类。 2按数据格式分 这是根据DSP芯片工作的数据格式来分类的。数据以定点格式工作的DSP芯片称为定点DSP芯片,如TI公司的TMS320C1X/C2X、TMS320C2XX/C5X、TMS320C54X/C62XX系列,AD公司的ADSP21XX系列,AT&T公司的DSP16/16A,

4、Motolora公司的MC56000等。以浮点格式工作的称为浮点DSP芯片,如TI公司的TMS320C3X/C4X/C8X,AD公司的ADSP21XXX系列,AT&T公司的DSP32/32C,Motolora公司的MC96002等。 不同浮点DSP芯片所采用的浮点格式不完全一样,有的DSP芯片采用自定义的浮点格式,如TMS320C3X,而有的DSP芯片则采用IEEE的标准浮点格式,如Motorola公司的MC96002、FUJITSU公司的MB86232和ZORAN公司的ZR35325等。 3按用途分 按照DSP的用途来分,可分为通用型DSP芯片和专用型DSP芯片。通用型DSP芯片适合普通的D

5、SP应用,如TI公司的一系列DSP芯片属于通用型DSP芯片。专用DSP芯片是为特定的DSP运算而设计的,更适合特殊的运算,如数字滤波、卷积和FFT,如Motorola公司的DSP56200,Zoran公司的ZR34881,Inmos公司的IMSA100等就属于专用型DSP芯片。1.3 DSP芯片应用 在近20年里,DSP芯片在信号处理,通信,雷达等许多领域得到广泛的应用。目前,DSP芯片的价格越来越低,性能价格比日益提高,具有巨大的应用潜力。它的应用主要有: 1.信号处理-如数字滤波,快速傅立叶变换,相关运算,谱分析,卷积,模式匹配,加窗,波形产生等; 2.通信-如调制解调器,自适应均衡,数据

6、加密,数据压缩,回波抵消,多路复用,传真,扩频通信,纠错编码,可视电话等; 3.语音-如语音编码,语音合成,语音识别,语音增强,说话人辨认,说话人确认,语音邮件,语音存储等; 4.图形/图像-如二维和三维图形处理,图像压缩与传输,图像增强,动画,机器人视觉等; 5.军事-如保密通信,雷达处理,声纳处理,导航,导弹制导等; 6.仪器仪表-如频谱分析,函数发生,锁相环,地震处理等; 7.自动控制-如引擎控制,声控,自动驾驶,机器人控制,磁盘控制等; 8.医疗-如助听,超声设备,诊断工具,病人监护等; 9.家用电器-如高保真音响,音乐合成,音调控制,玩具与游戏,数字电话/电视等。 二 TMS320C

7、54x芯片介绍2.1 TMS320C54x芯片特点 本设计用到的芯片是IT公司的TMS320C54x。TMS320C54x是为实现低功耗,高性能而专门设计的定点DSP芯片,它主要应用于无线系统中。TMS320C54x基本特点: 1.中央处理单元先进的多总线结构,有一条程序总线(PB),三条数据总线(CB,DB和EB)和四条地址总线(PAB,CAB,DAB和EAB);1个40位的算术逻辑单元(ALU),1个40位的桶形移位器和2个独立的40位累加器A和B;1个17x17的乘法器和两个40位加法器,乘法器可以耦合到加法器以完成单周期的MAC指令;内部集成了维特比加速器以及与它相关的比较,选择和存储

8、单元(CSSU);指数编码器用来在单周期内计算40位累加器值的指数;2个地址产生器,其中包括8个辅助寄存器和2个辅助寄存器运算单元。2.存储器192Kx16-bit可寻址存储空间,其中包括64K字程序空间,64K字数据空间和64K字I/O空间,对于548,549,5402和5410还可以外部扩展程序空间3.数据寻址54X提供了7种数据寻址方式:立即数寻址;绝对寻址;累加器寻址;直接寻址;间接寻址;存储器映射寄存器寻址;堆栈寻址;4.程序存储器寻址使用程序计数器(PC)寻址,但是,对于一些指令需要用到绝对寻址。5.中断54X支持软件中断(如INTR,TRAP,RESET)和硬件中断,中断可分为可

9、屏蔽中断(如TINT,INT0等)和不可屏蔽中断(如RESET和NMI),其中RESET的优先级最高,不可屏蔽中断的优先级高于可屏蔽中断的优先级,硬件中断的优先级则高于软件中断的优先级。6.流水线54X有6级流水线:预取指,取指,解码,访问,读取和执行。7.运算速度指令周期为25/20/15/12.5/10ns,运算能力为40/50/66/80/100MIPS(百万条指令/秒)。8.低功耗方式TMS320C54X可以在3.3V或2.7V电压下工作,三个低功耗方式(IDLE1,IDLE2和IDLE3)可以节省DSP的功耗,所以它特别适合于无线移动设备。9.片上的外设 可软件编程的等待状态发生器,

10、使得与速度较慢的设备通讯更加方便;片上的锁相环时钟发生器可以对外部始终信号进行倍频或分频,从而得到自己所需要的时钟频率,当分频时还可节省系统的功耗;可以禁止对外部数据总线,地址总线以及控制信号的控制;可以软件编程的定时器;10.符合国际IEEE 1149.1标准的边界扫描逻辑接口,即JTAG扫描逻辑电路,用于仿真和测试,可以实现在线仿真。2.2 TMS320C54X的指令集54X的指令可以分为四个大类:算术指令,逻辑指令,程序控制指令,读取和存储指令1.算术指令包括了加法指令(ADD.),减法指令(SUB.),乘法指令(MPY.),乘加指令(MAC.)和乘减指令(MAS.),32位操作数指令(

11、DADD,DSUB.)和一些专用指令(ABDST,FIRS,SQDST.)。其中大部分指令都只需要一个指令周期,只有个别指令需要2-3个指令周期。2.逻辑指令包括了与指令(AND.),或指令(OR .),异或指令(XOR.),移位指令(ROL.)和测试指令(BITF.)。根据操作数的不同,这些指令需要1-2个指令周期。3.程序控制指令包括了转移指令(B,BC.),调用指令(CALL.),中断指令(INTR,TRAP),返回指令(RET.),重复指令(RPT .),堆栈操作指令(FRAME,POPD.)和其它程序控制指令(IDLE, NOP.)。这些指令根据情况不同分别需要1-6个指令周期。4.

12、读取和存储指令包括了读取指令(LD.),存储指令(ST.),条件存储指令(CMPS, SACCD.),并行的读取和乘法指令(LD | MAC.),并行的读取和存储指令(ST | LD.),并行的存储和乘法指令(ST | MAC.),并行的读取和加减指令(LD | ADD,LD | SUB)以及其它读取类型和存储类型指令(MVDD,PORTW, READA.)。这些指令根据情况不同分别需要1-5个指令周期。TMS320C54x的引脚图: 三 整体设计3.1 原理: 通过对DSP结构、原理及应用的学习。在初步了解DSP结构和原理的基础上,进行简单的应用实验,掌握DSP的基本应用。通过熟悉DSP模板

13、的内部结构以及CCS软件,掌握DSP语言编程和调试方法,了解DSP的指令和I/O端口的寄存器的配置,并结合DSP实验模板对DSP进行编程控制数字输入/输出端口点亮LED显示管。1.时钟电路: 时钟信号的产生的两种方法:一是使用外部时钟源的时钟信号。外部时钟源可以采用频率稳定的晶体振荡器,使用方便,价格便宜,因而得到广泛应用。 二是利用DSP芯片内部的振荡器构成时钟电路。2.复位电路: 复位电路的作用是确保微机系统中电路稳定可靠工作,复位状态决定了芯片的最初情况。利用RC电路的延迟特性给出复位需要的低电平时间。在上电瞬间,由于电容C上的电压不能突变,所以通过电阻R进行充电,充电时间由RC的乘积值

14、决定。3.JTAG仿真接口电路: 仿真电缆和DSP JTAG测试口的连接是通过一个14脚的插头座(仿真头)来实现的。3.2 CCS软件设计: DSP实验室开发平台有八个LED,LED低电平为亮,高电平为灭。CCS软件编译步骤:打开CCS软件,建立工程、新建文件并编译链接。下载.out文件到实验平台:FileLoad ProgramDebugRun。运行实验平台的程序,查看LED的亮灭:程序实现的LED流水灯功能是:全亮:前四个灯亮:后四个灯亮:第一个和第八个亮:第二个和第七个亮:第三个和第六个亮:第四个和第五个亮:第四个和第五个亮:第三个和第六个亮:第二个和第七个亮:第一个和第八个亮:程序如下

15、:/*文件预处理*/#include tms320uc5402.h/*/*全局变量定义与初始化*/ioport unsigned port8001;unsigned int show=0x00aa;unsigned int num=0x0000; Unsigned char a=0x0000,0x000f,0x00f0,0x007e,0x00bd,0x00db,0x00e7,0x00e7,0x00db,0x00bd,0x007e;/*/*函数、子程序声明与定义*/void sys_ini() /系统初始化子程序 asm( ssbx INTM); /全局禁止所有可屏蔽中断 PMST&=0x00F

16、F; /(DRAM映射到程序空间和数据空间)向量表映射到0x0080空间 SWWSR=0x7000; /io空间7个等待周期,程序与数据空间0个等待周期 CLKMD=0x17FA; /CLKOUT=2*CLKIN=2*10M=20M,自动延时最长时间 void timer0_ini() /定时器0初始化子程序 TCR|=0x0010; /停止定时器0 PRD=0x2710; /PRD=10000(D) TCR|=0x000A; /TDDR=10(D),所以定时器时钟=1/(20M/10/10000)=5ms IMR=0x0008; /使能定时器0中断 IFR=0xFFFF; /清除所有中断标志

17、位 asm( rsbx INTM); /全局使能可屏蔽中断 TCR&=0xFFEF; /开始定时器0 TCR|=0x0020; /复位定时起0/*/*/*/*中断服务子程序声明与定义*/interrupt void timer0() if (num=100) show=a0; /全亮 num+; else if(num=200) show=a1; /前四个灯亮 num+; else if(num=300) show=a2; /后四个灯亮 num+; else if(num=500) show=a3; /第一个和第八个亮 num+; else if(num=600) show=a4; /第二个和

18、第七个亮 num+; else if(num=700) show=a5; /第三个和第六个亮 num+; else if(num=800) show=a6; /第四个和第五个亮 num+; else if(num=900) show=a7; /第四个和第五个亮 num+; else if(num=1000) show=a8; /第三个和第六个亮 num+; else if(num=1100) show=a9; /第二个和第七个亮 num+; else if(num=1200) show=a10; /第一个和第八个亮 num=0; num+; return; /*/*主程序*/void main

19、(void) sys_ini(); timer0_ini(); for(;) port8001=show; /*结束*/ 四 CCS集成开发工具与测试4.1 CCS是什么通常,DSP厂商和第三方都会为DSP的开发应用提供各种各样的软硬件开发工具(代码生成工具和代码调试工具等)。早期的DSP开发工具没有集成化,需要在DOS环境下键入比较复杂的命令,使用起来不很方便,调试、开发的效率也不高。1999年,TI公司推出了CCS(Code Composer Studio)集成开发工具(直译为代码设计工作室),为DSP用户提供了十分便利的开发环境。CCS内部集成了以下软件工具: DSP代码生成工具(包括D

20、SP的C编译器、汇编优化器、汇编器和链接器等) CCS集成开发工具(编辑、链接和调试DSP目标程序)。 实时分析插件DSP/BIOS和实时数据交换模块RTDX等(必须有硬件开发板)。CCS是一种可视化集成开发工具,它集代码生成软件和代码调试工具于一体,具有强大的应用开发功能:可视化代码编辑界面:可以直接编写汇编语言和C语言程序、.H头文件和.CMD命令文件等。代码生成工具:包括DSP的汇编器、C编译器和链接器等。各种调试工具:包括加载执行文件、运行、单步操作、设置断点、查看编辑存储器和寄存器、观察变量、评估程序和执行时间等。探针工具:可将PC机数据文件中的数据传到DSP,或者将DSP中数据传到

21、PC机数据文件中,以便实现各种算法仿真和数据监视。图形显示工具:可以将DSP程序生成的数据绘制成时域/频域图等,以便于观察和分析。通用扩展语言GEL:可以让用户通过GEL语言编程,建立需要的GEL函数来扩展CCS的功能,包括配置各种参数、修改变量等。DSP/BIOS工具:它是DSP芯片简化了的操作系统内核,即各种DSP芯片操作系统的底层文件,为嵌入式系统应用提供基本的运行服务,具有代码较少、逻辑精简等优点。开放式的插入架构技术:只需安装相应的驱动程序,就能够集成第三方的专用插件。4.2 CCS窗口简介 CCS系统设置完成后,就可以打开CCS应用程序,在CCS集成开发环境下完成工程定义,程序的编

22、辑、编译、链接和调试,以及程序运行结果的分析和评估等工作。一个典型的CCS集成开发环境住窗口如下图所示。该示例窗口由菜单栏、工具栏、工程窗口、源程序编辑和调试窗口、存储器窗口、CPU寄存器窗口、输出窗口等组成。此外,还可以根据需要打开反汇编窗口、图形显示窗口、变量观察窗口,以及时钟窗口等。4.3 CCS中常用的工具菜单栏和CCS所有功能相关的菜单都在这里面。 编译工具栏编译程序时常用的一些工具。 调试工具栏调试程序时常用的一些工具。 工程文件框打开的工程所有文件会按类别放在这里,便于我们编程时在各个文件之间的切换。 代码编辑区顾名思义,代码都是在这里编辑完成的了,是我们最主要的工作区域。 编译

23、信息输出区编译时产生的信息会在这个区域内输出,能让我们直观的了解到正在编译哪个文件,编译过程中是否产生了错误,而这些错误是哪些,由于什么原因引起的,这些内容都会显示在这里。 五 课程设计总结体会 通过这次的课程设计,提高自己动手能力的同时也学到了很多有关方面的知识,对DSP有了更深入的理解,巩固了以前学到的知识,是自己更加充实。 通过调试以上程序运行无误,完成了流水灯要求,使用DSP芯片设计流水灯;使用数码管显示;利用程序延时,接口转换实现流水灯。 通过本次课程设计实现了用DSP芯片设计流水灯 , 学习到了很多关于DSP 的基础知识。并且更加深刻的巩固了课堂上所学的课本知识,DSP技术有了更进一步的认识和了解。掌握了DSP的基本实验方法,提高了工程设计和组织实验能力。【参考文献】张卫宁 DSP原理与应用教程 科学出版社 丁玉美 数字信号处理 西安电子科技大学出版社 张刚毅DSP原理、开发与应用哈尔滨工业大学出版社(第二版)

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

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