TMS320C54x与TLC320AD50的通信系统的设计 1.docx
《TMS320C54x与TLC320AD50的通信系统的设计 1.docx》由会员分享,可在线阅读,更多相关《TMS320C54x与TLC320AD50的通信系统的设计 1.docx(14页珍藏版)》请在冰豆网上搜索。
![TMS320C54x与TLC320AD50的通信系统的设计 1.docx](https://file1.bdocx.com/fileroot1/2023-2/4/1f75cba2-c0f8-4e14-9b8b-2dedf44ca446/1f75cba2-c0f8-4e14-9b8b-2dedf44ca4461.gif)
TMS320C54x与TLC320AD50的通信系统的设计1
目录
摘要0
第1章设计的目的2
1.1设计题目2
1.2设计目的2
第2章设计的内容及要求2
第3章总体设计方案3
系统框图3
4.1TMS320C54x系列DSP简介4
4.2TLC320AD50的内部结构6
第5章软件系统设计10
5.1软件编制过程10
5.2程序流程图11
5.3系统程序12
第6章心得体会12
第7章参考文献13
摘要
在现代通信系统中,如何高速和可靠的传输信息是一个很重要的内容。
目前,数据传输的理论和实践已经取得很大的进展,但这些进展并不适应于更广泛的信道以获取更高的传输性能。
而且随着通信的发展,特别是无线通信业务的增长,可利用的频带日趋紧张。
除了开发新的频谱资源外,采用新的高效抗干扰调制技术,提高频带的利用率一直是人们关心的话题,DSP技术的出现则为这些问题的解决开辟了一条新的路径。
TI公司的TMS320c54x系列DSP的体系架构,包括CPU(中央处理单元)、总线结构、指令系统、寻址模式及片上外设等方面,并将它与通用处理器进行了比较。
在此基础上,开发了一个实用的语音信号采集与处理电路板,对电路板的存储器模块、RS232模块、A/D、D/A模块作了重点分析与接口电路设计。
另外,总结了在TMS320c54xDSP上进行软件开发的流程,重点说明了CMD文件和中断向量表文件的编写方法,实现了C5402与TLC320AD50通信的软件编程。
第1章设计的目的
1.1设计题目
TMS320C54x与TLC320AD50的通信系统的设计
1.2设计目的
本次课程设计的目的是为了进一步提高我们的自我开发能力,培养我们的查阅资料,独立分析问题、解决问题以及实际动手的能力。
也是对理论学习的一个应用和补充的过程。
第2章设计的内容及要求
1、设计内容
模/数接口设计是DSP系统设计中一个重要的组成部分。
本系统设计是要实现对模拟信号的采集,并将其转换为数字信号通过TMS320C54x的串行通信接口将数据存储、处理及输出等功能。
2、设计要求
(1)DSP最小硬件系统的设计
(2)TMS320C54x与TLC320AD50串行口硬件电路设计
(3)软件设计
第3章总体设计方案
本设计是以DSP为中心,通过串行口和数模/模数转换器进行硬件连接,讨论了如何利用多通道缓冲串口McBSP与NMA结合的方式实现语音信号的采集和处理,阐述了语音压缩的原理和软件设计方法。
以语音处理中基本的A/D、D/A转换为例,采用TMS320C54x数字信号处理器的外围扩展芯片TLC320AD50作为语音采样信号的输入和处理后的语音信号的输出通道,给出了DSP与TLC320AD50的接口设计.详细介绍了TMS320C54x的多缓冲串口(McBSP)软硬件设计并提出如何用McBSP在语音通信中降低传输带宽,并提出了具体的设计思想和实现方法.通过使TLC320AD50工作在主方式,DSP工作在从方式,可以实现高速实时的A/D、D/A转换和实现处理后的语音信号低带宽传输。
系统框图
图3-1系统框图
第4章硬件系统设计
4.1TMS320C54x系列DSP简介
TI公司在原来已被人们熟知的TMS320C1X、TMS320C25、TMS320C3X/4X、TMS320C5X、TMS320C8X的基础上发展了三种新的DSP系列,它们是:
TMS320C2000、TMS320C5000、TMS320C6000系列,成为当前和未来相当长时期内TIDSP的主流产品,前面提到的那些老型
图4-1TMS320C54x芯片引脚
号产品均将被这三种新系列产品替代。
C54x包的总线结构括8条16比特宽度的总线,其中:
一条程序总线(PB),三条数据总线(CB、DB、EB),四条地址总线(PABCABDABEAB)。
C54X的CPU结构包括:
(1)l40比特的ALU,其输入来自16比特立即数、16比特来自数据存储器的数据、暂时存储器、T中的16比特数、数据存储器中两个16比特字、数据存储器中32比特字、累加器中40比特字。
(2)l2个40比特的累加器,分为三个部分,保护位(39-32比特)、高位字(31-16比特)、低位字(15-0比特)。
(3)l桶型移位器,可产生0到31比特的左移或0到16比特的右移。
(4)l7x17比特的乘法器
(5)l40比特的加法器
(6)l比较选择和存储单元CSSU
(7)l数据地址产生器DAGEN
(8)l程序地址产生器PAGEN
C54x的外设包括
(1)l通用I/O引脚,XF和BIO
(2)l定时器
(3)lPLL时钟产生器
(4)lHPI口8比特或16比特
(5)l同步串口
(6)l带缓存串口BSP
(7)l多路带缓存串口McBSP
(8)l时分复用串口TDM
(9)l可编程等待状态产生器
(10)l可编程bankswitching模块
(11)l外部总线接口
(12)lIEEE1149.1标准JTAG口
依赖其并行的工艺特性和片上RAM双向访问的性能,在一个机器周期内,C54x可以执行4条行并行存储器操作:
取指令,两操作数读,一操作数写。
使用片内存储器有三个优点:
高速执行(不需要等待),低开销,低功耗。
C54x程序存储区有片内ROM、DARAM、SARAM,这些区域可以通过软件配置到程序空间。
当地址落在这些区域内,自动对这些区域进行访问,当地址落在这些区域以外,自动产生对外部存储器的访问。
片内ROM(4K16K24K28K或48K字)可能包括的内容有:
(1)l引导程序,可以从串口、外部存储器、I/O口或HPI口引导
(2)l256字的率扩展表
(3)l256字的A率扩展表
(4)l256字的正弦表
(5)l中断矢量
4.2TLC320AD50的内部结构
简图图1最上面第一通道为模拟信号输入监控通道,第二通道为模拟信号转化为数字信号(A/D)通道,第三通道为数字信号转化为模拟信号(D/A)通道,最下面一路是AD50的工作频率和采样频率控制通道。
本文所述的输入时钟(MCLK)为8.192MHz,A/D与D/A的采样频率为MCLK/(128*N)Hz(N为AD50C的第4个寄存器4~6位所设)。
图4-2TLC320AD50的内部结构简图
4.3TLC320AD50与DSP的引脚连接方式
图4-3AD50与DSP连接方式
4.4复位电路
在上电或复位过程中,控制CPU的复位状态:
这段时间内让CPU保持复位状态,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。
复位电路如图3-2所示:
TMS320C54x与其他微处理器一样,在启动时都需要复位。
使CPU及系统各部件处于确定的初始状态,并从初始状态开始工作。
TMS320C54x的复位信号是从RST引脚输入到芯片内的施密特触发器中的。
当系统处于正常的工作状态时,且振荡器稳定后,如RST引脚上有一个高电平并维持2个机器周期(24个振荡周期),则CPU就可以响应并将系统复位。
因外部的复位信号与内部时钟异步的,所以在每个机器周期的S5P2都对RST引脚上的状态采样。
当在RST端采样到“1”信号且该信号维持19个振荡周期以后,将ALE和PSEN接成高电平,使器件复位,在RST端电压变低后,经1个~2个机器周期后退出。
PSEN引脚拉成低电平,则会引起芯片进入不定状态。
图4-4复位电路
4.5时钟电路
振荡器的等效电路如图2-6所示。
在图中给出了外接元件,即外接晶体及电容C2,C3,并组成并联谐振电路在电路中,对电容C2和C3的值要求不是很严格,如使用高质的晶振,则不管频率为多少,C2,C3通常都选择30pF。
有时,在某些应用场合为了降低成本,晶体振荡器用陶瓷振荡器代替,则电容C2,C3的值取47pf。
我选用内部振荡电路,电容C2,C3的值取30pf。
图4-5晶振电路
4.8MAX232芯片
该产品是由德州仪器公司(TI)推出的一款兼容RS232标准的芯片。
由于电脑串口rs232电平是-10v+10v,而一般的单片机应用系统的信号电压是ttl电平0+5v,max232就是用来进行电平转换的,该器件包含2驱动器、2接收器和一个电压发生器电路提供TIA/EIA-232-F电平。
该器件符合TIA/EIA-232-F标准,每一个接收器将TIA/EIA-232-F电平转换成5-VTTL/CMOS电平。
每一个发送器将TTL/CMOS电平转换成TIA/EIA-232-F电平。
主要特点:
1、单5V电源工作
2、LinBiCMOSTM工艺技术
3、两个驱动器及两个接收器
4、±30V输入电平
5、低电源电流:
典型值是8mA
6、符合甚至优于ANSI标准EIA/TIA-232-E及ITU推荐标准V.28
7、ESD保护大于MIL-STD-883(方法3015)标准的2000V
图4-8MAX232
第5章软件系统设计
5.1软件编制过程
一旦完成了正确的硬件连接,接下来就可以进行软件编程调试了。
要完成的工作包括:
(1)TMS320VC5402串口的初始化。
首先将DSP串口1复位,再对串口1的16个寄存器进行编程,使DSP串口工作在以下状态:
以SPI模式运行,每帧一段,每段一个字,每字16位,采样率发生器由DSP内部产生,帧同步脉冲低电平有效,并且帧同步信号和移位时钟信号由外部产生。
DSP给AD50C编程用查询方式,接收A/D转换的D信号和发送D/A转换的D信号用DMA方式。
(2)AD50初始化。
该初始化操作过程包括通过TMS320VC5402的同步串口发送两串16位数字信息到AD50。
第一串为0000000000000001B,最低有效位(bits0)说明下一个要传输的数据字属于二次通信(关于一次通信和二次通信的内容请参阅参考文献[3])。
第二个数据值用来对AD50的4个数据寄存器的某一个进行配置。
Bits15~11位为0,Bits10~8位为所选寄存器地址值,Bits7~0位为所选中寄存器的编程值。
4个用户可编程寄存器的描述如下:
R1中包含模拟输入通道选择,硬件/软件编程方式选择;R2进行单机/从机工作和电话模式(电话模式内容请参阅参考文献[3])选择;R3控制带从机个数选择;R4用来设置模拟信号可编程放大增益和A/D、D/A转换频率。
其它两个寄存器R5、R6是厂家留着测试用的,用户不可以对其编程。
我们在以下例程中对4个可编程寄存器编程,使AD50C工作在以下状态:
选择INP/INM为工作模拟输入,15+1位ADC和15+1位DAC模式,不带从机,采样频率为10.67KHz,模拟信号输入和输出放大增益均为0dB。
(3)用户代码的编写。
完成音频信号采集与回放代码的编制。
本设计给AD50编程用查询方式,接收A/D转换的D信号和发送D/A转换的D信号用DMA方式。
5.2程序流程图
程序流程图如下:
图9系统程序流程图
5.3系统程序
见附录。
第6章心得体会
本学期我们开设了《DSP原理及应用》,这门学科我觉得很难,但却十分重要,而且都是理论方面的指示,所以必须学好它。
正所谓“纸上谈兵终觉浅,觉知此事要躬行。
”学习任何知识,仅从理论上去求知,而不去实践、探索是不够的,所以课程设计是身份必要的。
在这次课程设计过程中,我也遇到了很多问题。
对TLC320AD50的通信系统的设计以前就没有接触过,对TLC320AD50芯片也不了解。
后来在网上找到了他们的资料,才有了一些了解,发现他们是很实用的,真是受益匪浅啊。
总之,在这次课程设计中我学到了很多,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。
这些让我一生受用。
第7章参考文献
[1]周霖.DSP通信工程技术应用[M].北京:
国防工业出版社,2004..
[2]周霖.DSP系统设计与实现[M].北京:
国防工业出版社,2003..
[3]陈志鑫郭华伟.基于TMS320C54xDSP的实时语音识别系统[J].半导体技术,2001,
[4]王华张健.DSP原理及其C编程开发技术[M].北京:
电子工业出版社,2006..
[5]汪安民程昱.DSP应用开发实用子程序[M].北京:
人民邮电出版社,2005.383-415.
附录1 软件系统设计程序
Ⅰ, TMS320VC5402中断及串口初始化
……
stm #0002h, 48h
stm #0040h, 49h ;设置DSP串口1工作在每帧一个字,每个字16位模式
……
stm #0006h, 48h
stm #0100h, 49h ;设置CLKGDV=0,使串口1工作在最大频率
stm #0007h, 48h
stm #0a000h, 49h ;设置CLKSM=1,采样率发生器时钟由DSP内部产生
stm #000eh,48h
stm #0008h,49h ;设置FSXP=1,使帧同步脉冲低电平有效
stm #0080h,imr ;DMA一通道中断使能
rsbx intm ;开放所有可屏蔽中断
……
Ⅱ,AD50初始化
ld #0001h,a ;D0=1,请求第二次交流
stlm a,43h ;向TLC320AD50C写数据
aa:
stm #0001h,48h
ldm 49h,a
and #0002h,a
bc aa,aeq ;数据是否被TLC320AD50C接收
ld #0180h,a ;给TLC320AD50C的寄存器1编程,使其复位
stlm a,43h
bb:
stm #0001h,48h
ldm 49h,a
and #0002h,a
bc bb,aeq ;编程数据是否被TLC320AD50C接收
……
stm #0100h,a ;TLC320AD50C脱离复位并且设置寄存器1,使INP,INM为输入
……
stm #0200h,a ;设置TLC320AD50C寄存器2,使电话模式无效
……
stm #0460h,a ;设置TLC320AD50C寄存器4,使采样频率为10.667KHz
……
stm #0300h,a ;设置TLC320AD50C寄存器3,使带0个从机
……
Ⅲ,DMA1通道初始化
stm #05h, 55h ;选择DMA1通道
stm #0041h,56h ;设置串口1接收端为DMA事件的源地址
stm #027fh,56h ;设置DMA事件的目的地址
stm #3000h,56h ;设置直接传送数据个数
stm #5000h,56h ;设置串口1同步模式,一帧接收一个字
stm #404dh,56h ;设置DMA为多帧模式,源地址不调整目的地址按57h的值调整
stm #20h, 55h
stm #0001h,57h ;设置目的地址为自动加1调整
stm #0282h,54h ;设置通道1为高优先级并使能通道1
……