dsp课设.docx
- 文档编号:16556333
- 上传时间:2023-07-14
- 格式:DOCX
- 页数:25
- 大小:706.47KB
dsp课设.docx
《dsp课设.docx》由会员分享,可在线阅读,更多相关《dsp课设.docx(25页珍藏版)》请在冰点文库上搜索。
dsp课设
目录
绪论1
1DSP/BIOS系统基本原理2
1.1DSP/BIOS系统介绍2
1.2DSP/BIOS实现功能2
2系统总体设计3
2.1系统模块介绍3
2.2芯片工作原理8
2.3系统设计原理图11
3系统程序设计12
3.1系统程序设计流程图12
3.2系统程序设计13
3.3软件程序流程图13
4系统调试14
4.1系统硬件调试过程14
4.1.1USB设备驱动程序安装14
4.1.2CCS设置16
4.1.3CCS运行19
4.2调试结果与分析19
结束语20
参考文献21
致谢22
附录:
源程序23
绪论
BIOS是英文“BasicInputOutputSystem”的缩略语,直译过来后中文名称就是“基本输入输出系统”。
其实,它是一组固化到计算机内主板上一个ROM芯片上的程序,它保存着计算机最重要的基本输入输出的程序、系统设置信息、开机后自检程序和系统自启动程序。
其主要功能是为计算机提供最底层的、最直接的硬件设置和控制。
DSP/BIOS是一个用户可剪裁的实时操作系统,主要由三部分组成:
多线程实时内核;实时分析工具;芯片支持库。
利用实时操作系统开发程序,可以方便快速的开发复杂的DSP程序。
操作系统维护调度多线程的运行,只需将定制的数字信号算法作为一个线程嵌入系统即可;芯片支持库帮助管理外设资源,复杂的外设寄存器初始化可以利用直接图形工具配置;实时分析工具可以帮助分析算法实时运行情况。
DSP/BIOS以模块化方式提供给用户对线程、中断、定时器、内存资源、所有外设资源的管理能力都可以根据需要剪裁。
实际应用中需要的定制算法作为一个线程插入DSP/BIOS的调度队列,由DSP/BIOS进行调度。
这次设计主要是基于DSP的BIOS语音通信功能的实现。
第一部分为系统基本原理,先简单的介绍了DSP/BIOS,再详细阐述其实现功能以及整个系统的工作原理。
第二部分为系统整体设计,介绍了3个主要芯片的结构和工作原理并画出系统设计的原理图和PCP图。
。
第三部分为系统程序设计,基于DSP/BIOS语音通信的软件算法流程和程序设计。
第四部分为硬件调试及实验结果分析。
在此次大作业中,我主要负责dsp/bios模块的硬件设计。
1DSP/BIOS系统基本原理
1.1DSP/BIOS系统介绍
DSP/BIOS是TI公司特别为其TMS320C6000TM,TMS320C5000TM和TMS320C28xTM系列DSP平台所设计开发的一个尺寸可裁剪的实时多任务操作系统内核,是TI公司的CodeComposerStudioTM开发工具的组成部分之一。
1.2DSP/BIOS实现功能
1、DSP/BIOS是CCS提供的一套工具,是一个尺寸可伸缩的实时内核,它是为了那些需要实时线程调度与同步、主机与目标DSP间通信或者实时监测的应用而设计的。
2、DSP/BIOS提供了抢占式多线程、硬件抽象、实时分析和配置工具。
1.3DSP/BIOS工作原理
如下图所示:
中断程序的工作原理
通过PHONE2采集数据,先由TLC274前级放大和调理经AD50转换通过同步串行口经CPLD选择MCBSP1与5402连接。
经采集后的数据经5402处理后,同样经MCBSP1传回AD50通过TLC274放大后经PHONE1输出。
2系统总体设计
2.1系统模块介绍
发光管D1指示+5V电源,表示评估板正常供电。
语音信号采集和转换
通过PHONE2采集数据,先由TLC274前级放大和调理经AD50转换通过同步串行口经CPLD选择MCBSP1与5402连接。
经采集后的数据经5402处理后,同样经MCBSP1传回AD50通过TLC274放大后经PHONE1输出。
AD50与MCBSP1接口图:
10M
DV(DD)
TMS320VC5402TLC320AD50
MCBSP1接口
引脚名称
输入/输出
引脚的作用
DX
O
数据的发送
DR
I
数据的接受
FSX
I
发送输出的帧同步脉冲
FSR
I
接收输入的帧同步脉冲
CLKX
I
接受时钟
CLKR
I
发送时钟
上述引脚的具体作用:
引脚名称
输入/输出
引脚定义
MCLK
I
主时钟输入脚
DIN
I
数据输入脚。
DIN接收来自DSP的输入数据,与SCLK同步。
FS为低电位时,在SCLK的下降沿数据被锁存。
DOUT
O
数据输出脚。
DOUT输出ADC或寄存器的数据,与SCLK同步。
FS为低电位时,在SCLK的上升沿数据被送出。
FS
I/O
帧同步信号。
当M/S为高电位,FS输出信号;当M/S为低电位时,FS为输入信号。
低有效
FSD
0
帧延时输出脚
SCLK
I/O
移位时钟脚。
当M/S为高点位时,SCLK为输出信号,其值为FS信号的256倍;当M/S为低电位时,SCLK为输入信号。
M/S
I
主/从工作模式选择管脚
1、TLC274是TI公司出品的低功耗LinCMOSE工艺双电源四运放,用于语音信号的前级放大和调理。
TLC274R26
2、TMS320VC5402PGE100是TI公司出品的16位定点数字信号处理器(DSP)。
指令执行速率高达100MIPS,已经广泛用于实时语音处理、个人数字助理PDA和数字无线通信等嵌入式系统,具有低功耗,高性能的特点。
3、EPM7128SLC84-15是ALTERA生产的CPLD用于SY-EVM5402(V2.0)的译码和扩展功能,用户可通过修改CPLD改变SY-EVM5402(V2.0)的内存配置,复位信号,外设配置等,也可扩展其他功能以适应不同的外设芯片。
4、TLC320AD50是TI公司出品的语音采集和输出集成芯片,最大采样率22.5KHz,16bit。
5、R2610K可变电阻,用于调整AD50的参考电压。
CRYSTALL
6、CRYSTALL10M3.3V有源晶振提供给DSP,CPLD和AD50作为时钟信号源。
7、ST1为复位按钮,按下后输出低电平经CPLD与其它复位信号综合后复位DSP。
S1J1
10、J1为CPLD的下载接口,用于下载CPLD程序。
11、J7为板上外设接口,包括MCBSP0、MCBSP1,外部中断,高位地址,16C550的输出。
JP7JTAG1
12、JTAG1插座管脚
仿真器采用边界扫描技术和DSP芯片通过JTAG口相连接,实现了主机对DSP芯片的完全检测和控制。
JTAG1口提供给用户以使仿真器下载程序的方法。
管脚编号
名称
管脚编号
名称
1
TMS
2
TRST
3
TDI
4
GND
5
PD(+5V)
6
不接
7
TD0
8
GND
9
TCK-RET
10
GND
11
TCK
12
GND
13
EMU0
14
EMU1
13、PHONE2为模拟信号输入口
14、PHONE1为模拟信号输出口
15.硬件中一些跳线:
JP1是AD50与MCBSP1接口使能:
如下图所示:
1-2将AD50的同步串行口连接到MCBSP1
2-3将MCBSP1释放到外部接口
初始配置:
1-2
JP3(CLKMD1),JP5(CLKMD2),JP4(CLKMD3)跳线示意图
改变JP3(CLKMD1),JP5(CLKMD2),JP4(CLKMD3)可以选择时钟倍频数,从而改变CPLD运行速度,示意图如下所示:
1-2CLKMDx=1
2-3CLKMDx=0
初始配置:
JP3:
:
1-2,JP4:
2-3,JP5:
2-3
JP6跳线示意图
JP6为MP/MC方式选择
1-2:
MP(微处理器模式)
2-3:
MC(微电脑模式)
初始配置:
JP6:
1-2
JP10跳线示意图
JP10为参考源选择,可以选择固定的0V或通过R26得到可调的参考电平,范围:
0~5V;示意图如下:
1-2直流输入
2-3交流输入
JP12为程序空间配置选择
JP13,JP14,JP15为数据空间配置选择
2.2芯片工作原理
此次主要用到DSP芯片,其晶体振荡器的频率为100MHZ,在接受输入和发送输出的帧同步脉冲为高电平时,并且接收时钟和发送时钟到来,进行数据的接受和发送,芯片主要是对数字信号处理的过程
其次是CPLD(可编程逻辑器件)其是从PAL和GAL器件发展出来的器件,相对而言规模大,结构复杂,属于大规模集成电路范围。
是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。
其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。
如下芯片为84管脚芯片,其通过JTAG下载口,将可执行文件(*.pof)文件烧写至CPLD芯片中
2.3系统设计原理图
第一步:
确定硬件方案。
硬件的实现方案的确定是在考虑系统性能指标、成本、算法需求、体积和功耗核算等因素的基础上,选择系统的最优硬件实现方案,包括画出硬件系统框图。
第二部:
器件的选择。
一个DSP硬件系统除了DSP芯片外,还包括ADC、DAC、存储器、电源、逻辑控制、通信、人机接口、总线等基本部件。
DSP芯片的选择:
根据系统对运算量的需求来选择,此次我们选择的的是TMS320VC5402.
ADC和DAC的选择:
A/D转换器的选择应根据采样频率、精度等来选型。
D/A转换器因根据信号频率、精度等来选择。
此次我们选择的芯片是TLC320AD50CDW.
逻辑控制器件的选择:
系统的逻辑控制通常是用可编程逻辑器件来实现。
首先我们采用CPLD,芯片型号ALTERAEPM7128SLC84-15。
通信器件的选择。
通常系统都要求有通信接口。
首先要根据系统对通信速率的要求来选择通信方式
第三步:
原理图设计。
第一步和第二步的工作是完成系统的分析,从第三步进入系统的综合,在所有的系统综合工作中,原理图设计是最关键一步,它关系到所设计的DSP系统是否正常工作。
因此,在原理图设计阶段必须清楚的了解器件的特性、使用的方法和系统的开发,必须时可对单元电路进行功能仿真。
原理图设计包括:
系统结构设计,可分为单DSP结构和多DSP结构、并行和串行结构、全DSP结构和DSP/MCU混合结构等;
●模拟数字混合电路设计,主要用来实现DSP与模拟混合产品的无缝连接,包括信号的调整、A/D和D/A转换电路、数据缓冲等;
●存储器的设计,是利用DSP的扩展接口进行数据存储器、程序存储器和I/O空间的配置。
在设计时要考虑存储映射地址、存储器容量和存储器速度等;
●通信接口的设计;
●电源和时钟电路的设计;
控制电路的设计,包括状态控制、同步控制。
第四步:
PCB设计。
PCB图的设计要求设计人员既要熟悉系统的工作原理,还要清楚布线工艺和系统结构设计
第五步:
硬件调试。
3系统程序设计
3.1系统程序设计流程图
3.2系统程序设计
第一步:
进入CCStudio集成环境,新建一个工程文件,点击Project/New,进入如下图所示环境,把工程命名为bios_audio即可。
第二步:
进入DSP/BIOS组件管理器中进行DSP片上资源的设置,并将生成的配置文件加到工程文件中去。
点击File/New/DSP/BIOSConfiguration
第三步:
文件和一个空的主程序文件,需要加入DSP/BIOS运行支持库和c语言支持库。
第四步:
编写主函数,实现所需要的功能,这一步是在上面框架下完善主程序文件,将CPU初始化,将CSL初始化,并使用CSL的API函数完成对串口的读写操作,完成后的工程文件如图所示。
3.3软件程序流程图
语音通信的DSP/BIOS实现流程
1)DSP初始化完成对系统时钟和状
态寄存器等的设置;
2)McBSP初始化完成对McBSP相应寄存器的初始化;
3)调用API函数对AD50初始化
4)通过查询方式,完成对数据的发送和接收。
4系统调试
4.1系统硬件调试过程
4.1.1USB设备驱动程序安装
1.不连接目标板,将仿真器通过USB电缆连接到主机的USB接口。
2.系统将提示找到新USB设备,根据系统安装新设备向导,选择自动搜索设备驱动程序,并将搜索路径指定为TDS510USB2-A仿真器驱动程序所在路径(CDROM下driver目录),按“下一步”按钮,根据提示完成驱动程序安装。
3.设备驱动程序安装完成后在系统设备列表里应该可以看到在WintechDigital里增加了WintechDigitalTDS510USB2.0JTAGEmulator设备。
4.安装WintechDigitalTDS510USB2.0JTAGEmulator支持软件,双击setup.exe进行安装,安装过程中需要指定正确的CCS的安装路径。
(截图时未接仿真器)
5.USB驱动安装了,再检测USB与计算机连接是否正常,可从“设备管理器”查看是否有“wintechDSP开发系统”图标。
4.1.2CCS设置
1.先在桌面上打开SetupCCS2('C5000)进入以下画面,点击右边的“InstallaDeviceDriver”。
2.弹出对话框,在CCS的安装目录中找到drivers找到相应的设备。
3.点击“OK”按钮,会发现在中的框中多了“tixds54X”这个设备,然后点击“AddToSystem”出现“BoardProperties”对话框。
4.在Board下面的下拉菜单中选择第二项“Auto-generateboarddatafilewithextraconfiguratic”,这里“ConfiguraticFile”变成可见,点击“Browse…”
5.在CCS目录中的bin目录中找到wintech.cfg这个文件,选中打开,然后点击“Next>”按钮。
出现下面的对话框后,将I/Oport的Value改成0x0。
点击“Next>”
6.选中”TMS320C5400”点击旁边的“AddSingle”按钮,在右边的框中会出现“CPU_1”,点击“Next>”
7.在“startupGEL”中点击右边的小按钮
8.在打开对话框中选择需要的文件。
9.点“File”菜单中的“Save”存盘,然后退出,弹出对话点击是,就会启动CCS软件
4.1.3CCS运行
1.编译、运行后
2.导入程序
3.全速运行后
4.2调试结果与分析
1.连接硬件测试后,从phone1不能收到音频信号,先检查程序确保无误后,对开发板进行调试。
2.按照所画的PCB图及芯片管脚图,对开发板各管脚连线用万用表进行测试,看是否有短路或断路发生,确保不是硬件电焊的原因而导致无音频输出。
3.测试无短路或断路后,接示波器上电检测,观察有无输入输出。
电源输入端可以从示波器观察到5V正弦波(由于噪声存在,有毛刺),输出端也能从示波器观察到5V左右正弦波(误差5%以内为正常),所以我判断是DSP芯片、CPLD、AD50芯片中间连线处元器件有问题。
后来方练师兄发现是L1、L2两个电感焊成了电阻,换好之后硬件调试成功,可以收到音频信号。
结束语
此次课程设计的课题是基于DSP的BIOS系统模块设计,主要是利用TMS320C54xDSP来实现音频的输入输出,这不仅需要我们对DSP原理有所了解,还需要我们熟练的掌握CCS集成开发环境和使用方法。
数字信号处理是一门涉及许多学科而又广泛应用于许多领域的新兴学科。
20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展,并在通信等领域得到极为广泛的应用。
经过学习DSP这门课,我不仅对程序编程有了更全面的认识,而且学会了利用CCS集成开发环境下完成工程定义、程序编辑、编译链接、调试和数据分析等工作环节.DSP原理对我们来说还算简单,主要过程是将理论转化成实际程序调试,这就考验我们如何把复杂的程序理解并成功的调试出来。
再调试的过程中,更全面的理解课本上所学的内容。
关于这次实验,我也有许多收获:
拿到材料后,经过认真的预习,让我对DSP系统有了更加全面的认识,了解了如何利用TMS320C54xDSP来实现音频的输入输出,可是在电路调试的过程中我也遇到了问题,由于输入时的粗心,程序中错误很多,起初只是着急,经过耐心的检查,错误一个一个的减少,终于正确了,心情很激动!
我想这次的实验会督促我在以后的学习中脚踏实地,求真务实,积极进取,无论做什么都要有足够的耐心。
参考文献
[1]李莉编著,《DSP原理与应用》北京:
中国水利水电出版社,2004
[2]GPS定位的数据格式,NMEA-0183数据格式
[3]张雄伟陈亮徐光辉编著,《DSP芯片的原理与开发应用》北京:
电子工业出版社,2006
[4]
[5]
致谢
在整个课程设计的过程中,指导老师胡辉老师给予我细心的指导和帮助,还有创新实验室的师兄师姐们,对我们遇到的问题,进行详细的讲解,是我很受感动,特别提到方师兄,几乎整个课设周都一直帮助着我们,花费了他大量的时间,在此,我想说一句:
“师兄,你辛苦了。
”
在设计过程中,同学们也给了我很大的帮助,特别是我的寝室长袁长龙,给我很多的帮助,有不懂的地方,都是他给我一一讲解,让我很受感动。
附录:
源程序
main.c
#include"std.h"
#include"stdarg.h"
#include"bios_audiocfg.h"
externMCBSP_ConfigmcbspCfg1;
externMCBSP_HandlehMcbsp1;
intXDat;
intRDat;
Voidmain()
{
CSL_init();
CSL_cfgInit();
MCBSP_start(hMcbsp1,MCBSP_XMIT_START|MCBSP_RCV_START,0x300u);
while
(1)
{
while(!
MCBSP_rrdy(hMcbsp1)){};
RDat=MCBSP_read16(hMcbsp1);
XDat=RDat;
while(!
MCBSP_rrdy(hMcbsp1)){};
MCBSP_write16(hMcbsp1,XDat);
}
return;
}
附图:
原理图:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- dsp
![提示](https://static.bingdoc.com/images/bang_tan.gif)