本
科 生 毕 业 论 文
论文题目 : 《基于DSP语音录放电路的设
计与实现》
作 者 : 左 小 俊
专业班级 : 电子信息科学与技术
2004级01班
指导教师 : 雷 学 堂
2008 年5 月
I
郑 重 声 明
本人的毕业设计(论文)是在指导老师 雷 学 堂 的指导下撰写并完成的。毕业设计(论文)没有剽窃、抄袭、造假等违反学术道德、学术规范和侵权行为,如果有此现象发生,本人愿意承担由此产生的各种后果,直至法律责任;并可通过网络接受公众的查询。特此郑重声明。
毕业论文作者(签名): 2008 年 月 日
2
基于DSP语音录放电路的设计与实现 -------------------------------------------------------- 4 摘 要---------------------------------------------------------------------------------------------------- 4 ABSTRACT ------------------------------------------------------------------------------------------ 5 第一章 概 述 ---------------------------------------------------------------------------------------- 5
§1.1系统背景 ----------------------------------------------------------------------------------------------------------------- 5 §1.2 系统概述 ---------------------------------------------------------------------------------------------------------------- 6
第二章 方案论证 ----------------------------------------------------------------------------------- 6
§2.1系统工作原理 ------------------------------------------------------------------------------------------------------------- 7 §2.2 语音录放系统结构设计 --------------------------------------------------------------------------------------------- 7 §2.3 语音采集处理模块设计 --------------------------------------------------------------------------------------------11
第三章 硬件设计 ----------------------------------------------------------------------------------12
§3.1系统硬件设计 ------------------------------------------------------------------------------------------------------------12
§3.11 音频控制接口电路 ------------------------------------------------- 13
§3.13语音数据存储模块 -------------------------------------------------- 15 §3.14 液晶屏显示模块 ---------------------------------------------------- 15
§3.2 DSP与 PC的接口设计 ----------------------------------------------------------------------------------------------17
第四章 软件设计 ----------------------------------------------------------------------------------18 -----------------------------------------------------------------------------------------------------------18
§4.1程序设计-------------------------------------------------------------------------------------------------------------------18 §4.2软件配置-------------------------------------------------------------------------------------------------------------------21 §4.3 DSP上电自举 -----------------------------------------------------------------------------------------------------------21 §4.4数字音频文件的生成 --------------------------------------------------------------------------------------------------22 §4. 5 结 论 ---------------------------------------------------------------------------------------------------------------22
3
第五章 系统功能检验 ----------------------------------------------------------------------------22
§5.1直观的听觉检验---------------------------------------------------------------------------------------------------------23 §5.2 系统的失真度和频响检验 ------------------------------------------------------------------------------------------24
附录一:配置祥解 ---------------------------------------------------------------------------------25 附录二:程序编译 ---------------------------------------------------------------------------------26 参考文献 ----------------------------------------------------------------------------------------------32 致 谢 -------------------------------------------------------------------------------------------------32
基于DSP语音录放电路的设计与实现
摘 要
摘 要: 数字信号处理是现代数字语音通信的核心技术之一 ,DSP技术的应用为实
现语音信号的采集、处理和播放奠定了基础。设计基于 DSP的语音信号处理系统 ,运用 TMS320VC5416 处理器和 AIC23 语音芯片构建出硬件平台分析DSP处理器和 Codec 芯片性能特点 ,配置软件控制接口 ,实现数字音频数据通信传输。采用 C语言和汇编语言混合方式编写系统主程序和模块子程序 ,调试实验语音处理系统的信号采集、数字回声和播放 ,实现语音处理系统设计功能。 文章介绍了 TMS320C54x与 PC组成的语音放系统 ,阐述了系统的软、硬件设计 ,解决了DSP与 PC间建立握手信号及进行数据通信的问题 ,并介绍了 PC音频文件的格式与生成。
4
关键词 语音 通信 DSP HPI WAV
Abstract
Realization of speech signal collecting broadcastand digital echo based on DSPFan Xiaoyong ZhouChangliJiaXiaojing(InstituteofScience ,Information Engineering University ,Zhengzhou 450001)Abstract: Digital signal processing (DSP) technology is one core technology of modern digital speech communicatiand the applications
of DSP the foundation for speech collecting ,processing broadcasting. In this
paper ,the design of speech signal processing system based on digital signal processor is proposand the hardware platform is constructed utilizing TMS320VC5416 processors and AIC23 voice chip. Based oncharacteristic analysis of DSP and audio codec ,the software control interfaces have been configured ,and the digital audata transmission are implemented. The applications main program and subprogram are designed by using the milanguage compilation with C and assembly (ASM) language.And then somefunctions have realized in this speech sigprocessing system in debugging ,which are audio collection ,signal recording and sending out ,and digital .
第一章 概 述
§1.1系统背景
在很多语音处理的系统中需要用到语音录放系统 ,将现场的声音录下 ,供以后回放 ,或者对这些声音进行相关的特征分析与处理。对于语音的录放系统 ,有多种设计方法。可以用声卡采集 ,通过网卡传送到其他处理器(或 PC)上 ,但这样就需要将 PC放在录音现场 ,在某些特定场合不适用;也可以将采样电路、ADC、DSP 芯片及外部存储器设计在一块电路板上 ,但是这样实现有困难。因为对语音的采样频率一般为 8kHz ,如果每个样本用 8bit 表示 ,则一秒钟语音就需要 kbit 的存储空间 ,对于外接存储器来讲 ,使用过多 ,不但成本高 ,而且占用空间。信息技术和超大规模集成电路工艺的不断发展,极大地推动了的发展。 技术的应用领域也越DSP 来越广,尤其在音频处理领域。目前,在很多语音处理系统中都用到了语音录放模块,采集现场的声音并存储起来供以后回放。语音处理系统的实时性、功耗、体积、以及对语音信号的保真度都是很影响系统性能的关键因素。本设计采用的高速芯片,最高频54x DSP率能达到,能够
5
很好的解决系统的实时性;采160MIPS用的数字编解码芯片 以下简称TLV320AIC23( AIC23)具有 位采样精度,录音回放模式下仅 的16~32 23mW功耗。因此,该音频编解码芯片与的结合是54x DSP可移动数字音频录放系统、现场语音采集系统的理想解决方案。本文提出的设计方案 ,将数据的采集和处理经 DSP 在现场处理 ,再通过 DSP 传送至 PC,保存在硬盘中 ,供下次回放使用 ,很好地解决了以上问题。
§1.2 系统概述
本系统主要包括:对语音信号进行放大、滤波、采样、A/D 转换等的预处理部分;经 DSP 对语音数字信号进行特定处理部分;DSP与 PC的通信部分;语音信号在 PC中的存储。系统总体结构如图1所示。
图 1 语音录放系统总体组成 经过实验表明,本设计实现的基于定点的DSP语音录放系统具有如下优点: 1)音频数据占用资源少 2)声音保真度高 3)开发难度低
4)语音芯片与 DSP接口电路简单 5)体积小
第二章 方案论证
信息技术和超大规模集成电路工艺的不断发展,大地推动了 DSP的发展。DSP技术的应用领域也越越广,尤其在音频处理领域。目前,在很多语音处理统中都用到了语音录放模块,采集现场的声音并存起来供以后回放。语音处理系统的实时性、功耗、体、以及对语音信号的保真度都是很影响系统性能的键因素。本设计采用的高速 54xDSP芯片,最高频能达到160MIPS,能够很好的解决系统的实时性;采的数字编解码芯片 TLV320AIC23(以下简称 AIC23有 16~32位采样精度,录音回放模式下仅 23mW的耗。因此,该音频编解码芯片与 54xDSP的结合是移动数字音频录放系统、现场语音采集系统的理想决方案。
经过实验表明,本设计实现的基于定点 DSP的语录放系统具有如下优点: 1)音频数据占用资源少 2)声音保真度高 3)开发难度低
4)语音芯片与DSP接口电路简单 5)体积小
下面对这几个方面逐个进行简单的分析介绍,并对此语音录放电路的总体实现和各部分功能模块的论证一选定最终的方案。
6
§2.1系统工作原理
本系统包括音频采集、 对语音信号的处理、键DSP盘控制、液晶屏显示、存储五部分。系统结构Nandflash如图 1所示, 作为主芯片实现各模块之间的通信, DSP其主要工作有:上电自举,读取键盘值并初始化音频编码芯片和液晶屏,通过液晶屏显示的工作状AIC23态,将音频数字信号存储在中。Nlandflash
图2总体设计图
§2.2 语音录放系统结构设计
语音处理系统的基本功能是实现语音的采集、处理和播放 。该系统由两大部分构成,一个是基于 DSP 的信号控制处理部分,另一个是语音采集处理部分,两部分组合实现相关功能 。针对音频信号处理应用特点,DSP 处理系统的核心采用 TI 公司 C54x 系列 TMS320VC5416 芯片,语音采集处理部分采用 AIC23 集成语音芯片。系统结构如图1 所示,其中 DSP 基本系统是整个系统的主要部分,由若干功能模块构成:
(1)
CPU 模块。它是这个基本系统模块的核心部分, 主要包括 TMS320VC5416 处理器,相关电源芯片,时钟电路等.
7
图 3 语音录放音系统原理框图
(2) RAM 模块。主要包括一个 FLASH 芯片和一个外部扩展的 SRAM 存储器。
(3)UART 串口通信模块。主要组成为 TL16C550 异步通信部件,采用 MAX232 作为串口通信的驱动电路。
(4 ) USB 模 块。主 要 部 件 为 Philips 公 司 的PDIUSBD12 芯片,外加 USB 接口和时钟部分,实现 USB通信。
图4数字语音录放系统硬件框图
(5) 接口电路模块。主要有键盘控制、LCD 显示、 TAG仿真口等部分。处理器 TMS320VC5416 有很高的操作灵活性和速度,具有一个先进的修正的哈佛结构、专门硬件逻辑
[6]CPU、片内存储器、片内外设和专用的指令集 。它将C54x CPU 和片内存储器与外设配置组合在一起,其内部结构主要特点为: (1)处理单元。VC5416 可以进行高速并行算术和逻辑处理。 (2)内部总线结构。VC5416 有8 条16 位总线,包括 4条程序/数据总线和 4 条地址总线,可以在每个指令周期内产生 2数据存储地址,大大提高
8
了并行数据处理速度。
(3)特殊功能寄存器。VC5416 共有 26 个特殊功能寄存器,用于对片内各功能模块进行控制、访问和其他管理,这些寄存器位一个具有特殊功能的CPU 映射存储区内。
(4)数据存储器(RAM) 。片内的数据存储器(RAM)分成2 类:一个是每个指令周期可以进行 2 次存取操作的双访问 RAM(DRAM) ;另一个是每个指令周期只能进行一次存取操作的单访问 RAM(SRAM) 。
(5) 程序存储器 (ROM) 。片内程序存储器有片内ROM、双访问 RAM(DRAM) 、单访问 RAM(SRAM) ,双访问和单访问可共享的 RAM 程序存储空间不仅定义在ROM 上,也可以定义在片上RA中。当需要高速运行的程序时,可以应用自动加载的方法,将程序载入片内RAM ,提高运行效率,降低对外部 ROM 的速度要求。
9
录音部分主机程序框图
(6) I/ O 端口。只有 2 个通用 I/ O ,即BIO 和 XF。为了访问更多的通用 I/ O ,可以对主机并行口和同步串行口
进行配置,以用作通用 I/ O。还可以扩展外部 I/ O ,可以访
问 k字的 I/ O ,外部 I/ O 必须使用缓冲或锁存电路,配合外部 I/ O 读写控制时序构成外部 I/ O 的控制电路。
(7)主机通信接口(HPI) 。HPI 提供与主处理器接口的并行接口,通过 TMS320VC5416 的片内存储器实现器件与主处理器之间的信息交换。
(8)串口。TMS320VC54xx 系列的串口分为 4 种:同步串口、缓冲同步串口(BSP) 、多通道缓冲(McBSP)串口和时分复用(TDM)串口。
(9)定时器。TMS320VC5416 具有一个带 4 位的预定标器的16 位定时电
10
路。定时器可以由专门的状态位编程实现停止、重启动、复位和禁止。定时器/计数器每次减少到0 ,则产生一个定时中断。在每个 CLKOUT 周期,定时器/计数器减少1。
(10)中断系统。TMS320VC5416 的中断可以由硬件驱动(硬件中断)或软件驱动(软件中断) 。当中断产生后,TMS320VC5416DSP会挂起它的主程序,而执行用户中断服务程序。由于 TMS320VC5416 芯片具有以上突出特点,使得它非常适合于语音信号处理应用,满足系统设计的要求。
§2.3 语音采集处理模块设计
语音采集处理单元的核心是 TI 公司高性能、集成有
模拟功能的立体声编解码音频芯片 TLV320AIC23 。该芯片的内部 ADC 和 DAC 转换模块带有完整的数字滤波器,数据传输带宽可以是 16 位、20 位、24 位和 32 位,采样频率范围支持从 到 。在 采集达到8 KHz 96 KHz ADC时 信噪比为 能够高保真的保存音频信号。96 kHz , 90 dB ,在 转换达到 时 信噪比为 能够高品DAC 96 kHz , 100 dB ,质的数字回放音频 在回放时仅仅减少 。该芯片采, 23 mW用 ~ 的数字核心电压和 ~ 的缓1.42 V 3.6 V 2.7 V 3.6 V冲器和模拟电压 分别兼容 的内核电压和 TIVC54xxDSP接口电压。语音采集模块和 模块的数据通信主要是通过DSP TI的 接口实现。 在结构上可以分为一个数据McBSP McBSP通道和一个控制通道,数据通道完成数据的发送和接收,控制通道完成的任务包括内部时钟的产生,帧同步信号的产生,对这些信号的控制以及多通道的选择等。音频信号经过 TLV320AIC23 高精度、高速的 ADC 转换后得到一串数字信号,输入到输入缓冲区 RAM。然后由处理算法将音频信号调入 TMS320VC5416 的内部进行高速运算处理。经过处理的音频信号可以进行存储,再输入到高精度高速的AIC23DAC转换器中,还原成模拟的声音信号输出。TLV320AIC23 具有许多可编程特性,可通过控制接口来编辑该器件的控制寄存器,其映射寄存器定义如表 1所示。通过数据的串行传输来控制寄存器进行设置配置寄存器功能位(0 或1) ,控制 TLV320AIC23 工作。 表 1 TLV320AIC23 映射寄存器
TLV320AIC23 芯片与数字系统的接口有右判断模式、左判模式、I2S模式和DSP 模式4 种。这4 种数据传送模式都是从 MSB(最高位) 开始,字长范围从16 bits到32 bits。数字音频接口由时钟信号 BCL K、数据信号 DIN和DOUT、同步信号 LRCIN 和 LRCOUT 组成。与 DSP结合应用,适合采用 DSP 模式,该模式与 TI
11
公司 DSP 的MCBSP 口相兼容,LRCIN 与LRCOUT、MCBSP 的帧同步信号相连接。在 LRCIN 或 LRCOUT 的下降沿开始数据传输,左通道数据组成了首传送的数据字,紧接着传送右通道的数据,传送字长由 IWL 寄存器决定。图3 说明了LRP 为1 时的传送情况。
图 5 DSP模式时序图
TLV320AIC23 芯片的主时钟直接由 DSP 时钟产生TMS320VC5416 的 McBSP 工作在 SPI 模式下,以便使McBSP的接收器和发送器同步。收发时钟信号 CL KX和CL KR 由 TLV320AIC23 的串行数据传输时钟 BCL K 提供, 并 由 TLV320AIC23 的 帧 同 步 信 号 LRCIN 和LRCOUT 启 动 串 口 数 据 传 输, DX 和 DR 分 别 与TLV320AIC23 的 DIN 和 DOUT 相连,可用于完成 DSP与 TLV320AIC23 之间的数字通信。
第三章 硬件设计
图6系统的总体硬件框图
§3.1系统硬件设计
图7 系统硬件组成框图
12
图中各部分的功能如下: 1) 输入输出部分。
输入输出部分的核心部件是 AD73311,它具有A/D和D/A转换功能 ,采样频率为 8~kHz,可以编程控制 ,采样字长为16 位。AD73311 具有高信噪比、增益可编程控制、低工作电压 217~515V ,并且一片两用的特点。AD73311 完成模拟语音信号的采集和数字语音信号的回放工作。与ADSP22181的通信通过串口进行 ,时钟信号由 ADSP22181 的SLCK引脚接入。 2) 键盘控制。
键盘占用了ADSP22181 的几个外部中断 ,按下按键产生低电平下降沿触发中断 ,产生中断后ADSP22181 进行检测 ,判断按键类型 ,进入相应子程序。 3 )LCD显示。
在本系统中用LCD显示当前系统处于的状态 ,如录放状态、进行的时间等。可由 ADSP22181 进行控制 ,设定显示方式及内容。 4) 存储部分。
由于要保存录音数据,其数据保存不需要充电维持,因此选用了闪速存储器,本系统采用韩国三星公司生产的 KM29N32000,容量为4M×8=32Mbit,分成512 块 ,每块有 16 页 ,每页 528 个字节。可进行100 万次擦写 ,数据保存时间为 10 年 ,通过编程可自动进行擦写。一片 AT27C010 EPROM 用来存放控制ADSP22181 工作的程序。
有的控制接口和数字接口。控制口用AIC23于接收控制器的命令字,数据接口与 完成语音数DSP据的交换。 的工作时钟由外接的一个AIC23 11.26M的晶振提供,同时该晶振也为 提供工作时钟。DSP DSP、的工作时钟是 倍频后的时钟: 。本系统用到5 56.488M了利用的 和 ,分别与 的DSP MCBSP0 MCBSP1 AIC23控制和数据接口相连。 与 的接口电路如图 。
图8 DSP与AIC23 的接口电路图 §3.11 音频控制接口电路
提供MCBSP1 AIC23 AIC23 SPI和 两种控制接口方式。该器件的模式终端状态I2C决定了控制接口的形式。本设计将 引(MODE) MODE脚接高,选择 方式。 的控制口主要是为了接收SPI AIC23的制字,因此这里 的 作为主器DSP DSP MCBSP1件。 有许多可编程特性,其内部有 个 位可AIC23 11 9编程控制寄存器,通过 来访问这些控制DSP MCBSP1寄存器。 为串行数据输入端,它接收 串行数SDIN DSP据,数据字长 位,其中高 位为地址信息,低 位16 7 9为的命令字。 为控制端口串行数据时钟AIC23 SCLK输入, 串口的采样率发生器对 时
13
钟分频后DSP CPU得到串口的发送时钟 ,产生的时BCLKX1=225.952KHz钟通过引脚驱动 。SCLK AIC23
图9 §3.12音频数据接口
缓冲完成的,即引脚 上的数据先到达移位寄存器DR,当收到一个满字之后数据被装载到数据接收寄RSR存器中,最后数据才被拷贝到接收数据寄存器RBR中。 通过串口 接收 采集的语音数字DRR DSP 0 AIC23信号,并且在回放模式下,通过串口将语音信号传送给。这时音频芯片为主器件,给 提供帧同AIC23 DSP步和时钟信号。芯片与数字系统的接口有右判断模式、左AIC23判断模式、 模式和 模式四种数据格式。数字音I2S DSP频接口由时钟信号 、数据信号 和 、同BCLK DIN DOUT步信号和 组成。由于 的LRCIN LRCOUT DSP MCBSP接口与该芯片的 模式相兼容,因此该音频模块采DSP用了模式。现对 模式进行说明。该音频处理DSP DSP模块采用的是 作为从设备, 为主设备。DSP AIC23 DSP模式下的数据格式为:发送、接收帧长度为 个字,每2个字长位。帧同步信号有效后跟着是两个数据字16作为数据接口的主器件,为 提供发送AIC23 DSP接收时钟,以及帧同步信号,在帧同步信号的下降沿开始传送数据,左通道数据组成了首先传送的数据字,紧接着传送右通道的数据。传送字长位,其中32左通道数据位,右通道数据 位。 在主动方16 16 BCLK式下是输出,而在从动方式下是输入。在 或LRCIN的下降沿开始数据传输。 为了接收正确LRCOUT DSP的语音数据,应该将串口的数据格式配置为与AIC23相同。帧同步脉冲高电平有效。接收、发送时钟CLKR帧同步信号由外部时钟驱动。其中帧同步信号宽度是个 时钟宽度。帧周期为 个 时钟。在1 BCLK 32 BCLK的上升沿,发送或采样接收数据。 模式下的CLKR DSP数据传输时序入下:
14
图10 DSP模式下的数据传输时序 §3.13语音数据存储模块
考虑到存储器芯片的容量、系统供电、以及对语音信号的读取速率。本系统采用了具有位存储32MX8空间的。 以容量大价格K9F5608 Nandflash Nandflash低的优势被广泛应用在便携式设备中。同时Nandflash存储器在写入时需要复杂的操作命令,这样确保了数据写入的正确性。有 位 端口,地址、命K9F5608 8 I/O令字以及数据复用这 位 端口。它采用复杂的操8 I/O作顺序来区分地址、命令、数据信息。采集到的DSP 32位语音数据通过外部数据总线的低 位分 次,从左8 4声道的高位到右声道的低 位依次写入 。8 8 Nandflash
图11
§3.14 液晶屏显示模块
对于来讲 是典型的慢速设备,如果仅DSP LCD仅靠设置 等待周期寄存器,在访问外部 时最DSP I/O多只能插入 个等待周期,这点延时对 来说是14 DSP 远远不够的。因此,需要在与 之间加入时序DSP LCD 模块类似,液晶屏、控制电路。与Nandflash Nandflash与 的接口电路由 来完成,液晶屏占用DSP CPLD DSP两个 地址,分别是命令和数据地址。 对 空I/O DSP I/O间的操作由地址线、数据线和三根信号线 、IOSTRB R/
和 来完成 。 根据 给出的读写信号以W IS CPLD DSP及地址信号,产生液晶屏的片选、读写信号、以及键盘的扫描信号。
AIC具有 8 个可编程的内部寄存器 ,通过软件编程能随时控制 AIC 的采样频率 ,高、低通滤波器的截止频率 ,模拟输入及输出的增益。本系统中 ,AIC工作于单独应用模式 , 它的接口直接与TMS320C542 的 (time division multi2address)串口连接 ,并产生通信所需的移位时钟脉冲(SCL)和帧同步信号脉
15
冲(FS) 。AIC 与 DSP 间的数据发送分为两次 ,每次 16bit ,第一次数据的高 14 位 bit2~15 为采样数据 ,若第一次的最低两位为 11 ,则接着第二次的16bit 控制信号 ,对它8 个内部寄存器进行编程。寄存器的功能仅以两个加以说明: 寄存器 1 (A 寄存器) :用以决定滤波器时钟FCLK和截止频率 ,计算公式如下: FCLK=主时钟频率/0.5(A 寄存器)低通滤波器的截止频率 FLP = FCLK/40。在本设计中 ,REG1. SET=124h(上电后缺省为 112h) 。寄存器2(B 寄存器) :用以决定
图12
存储空间配置 ADC和DAC的
转换频率。计算公式如下: 转换频率 = FCLK/ (B 寄存器)
在本设计中 ,REG2. SET = 212h(上电后缺省值为212h) 。 这里 ,AIC 的 8 个寄存器的值由 DSP 的 串口传入。
16
图13
§3.2 DSP与 PC的接口设计
图14 连接原理图
在DSP与 PC间 ,用了一片 PAL 作为两者之间的接口电路 ,用以控制 C542 的复位(RS) 、半字节状态机、三态控制器及闸片控制器 ,PAL 在这里充当一个译码器电路。在 DSP 端 ,使用了 C542 片内的主机接口(HPI,host port interface) ,HPI 是一个 8位并行口 ,用来与主设备或主处理器接口。外部主机是 HPI 的主控者 ,它可以通过 HPI 直接访问CPU 的存储空间 ,包括存储器映像寄存器。本设计中 ,外部主机就是 PC。HPI 主要由五部分组成 ,其中的 HPIRAM 是一个 2K ×16 位字的 DARAM(dual2access RAM) ,它在数据存储空间的地址为1000h~17FFh ,DSP 的 CPU 和外部主机都可对它进行读写。HPI 经 PAL22V16 与 PC 的并行口相连 ,它的连接对应方式如表 1 所列 ,HPI口的初始化数据由 PC并行口送过来。 表 2 HPI口与 PC并行口连接表
PC端是通过并行口来进行通信的。计算机并行口可在多种模式下工作 ,HPI 口通信能支持的并口工作模式有:4bit 非双口(又称半字节模式) ,8bit双口(又称Byte 模式) ,EPP 标准兼容模式 ,EPC 标
准兼容模式。本设计中使用的是第一种并行口模式。
17
第四章 软件设计
图15 软件结构框图
§4.1程序设计
系统的软件开发环境是 公司的 集成开发TI DSP、环境。 提供了、件开发、程序调试和系统CCS 2.0 CCS仿真环境。不但能支持汇编语言,而且还支持CCS C/语言进行软件开发。 提供的 编译器能优化C++CCS C代码,提高程序的运行效率。系统有两种工作方式,C一种是现场采集并播放,即系统采集现场的线路输入信号或麦克语音信号,并存储在中,在采集NandFlash的过程中,同时通过耳机播出。另一种是播放录制的语音数据,即不采集现场语音信号,直接播放已经存储在中的语音数据。这两种工作方式可以NandFlash在系统初始化工程时通过按键选择。具体的程序代码段设计主要包括口的配置、 的初始化、MCBSP AIC23烧写、 上电自举,这四个部分。其中现 NandFlash DSP场采集、播放的流程图如下:
18
图16 系统工作流程图
整个程序包括录要讨论系统的录音部分 ,回放部分原理相同 ,只要将程序稍加修改即可。录音设计中有两个地方需要编程:一是DSP端的设计 ,用汇编语言完成 ,主要任务是初始化、管理 DSK板上的资源、完成语音数据采集及特定处理;另一是 PC 端的设计 ,用 C 语言或VC+ +来完成 ,主要任务是与 DSP 进行数据交换、对语音数据进行存储、提供一个 GUI(图形用户界面)以便用户可以控制整个运行过程。程序设计中的难点是 DSP 与 PC的通信问题。
图片17 系统软件构成
两个器件要进行通信 ,就必须遵守一定的通信协议 ,在两者间建立握手信号 ,以协调通信进程。DSP 将处理后的数据存放到 HPIRAM 中 ,再送往 PC 中 ,但当 PC和DSP同时访问一个 HPIRAM 单元时 ,就会发生冲突。而 HPIRAM 只有 2K字节 ,无法保存全部录音数据 ,如何保证在连续录音的情况下将数据及时送往 PC 而不丢失数据。本设计中在 HPI2RAM 中开辟了两个数据缓冲区 ,先将 DSP 收到的
数据实时存入第一个数据区 ,当满了后就中断 PC读走该数据区数据;DSP 再将收到的数据存入第二个数据区。这样 ,因为 PC 读取的速度比存入数据的速度快 ,DSP 依次往两个数据区写数据 ,往一个
19
数据区写数据的时候 ,PC就读取另一个数据区的数据 ,从而解决了通信问题。程序框图如图 18 所示。
图 18 录音部分主机程序框图
系统的软件开发环境是 TI公司的 DSP集成开发环境CCS2.0。CCS提供了软件开发、程序调试和系统仿真环境。CCS不但能支持汇编语言,而且还支持 C/C++语言进行软件开发。CCS提供的 C编译器能优化代码,提高C程序的运行效率。系统有两种工作方式,一种是现场采集并播放,即系统采集现场的线路输入 信号或麦克语音信号,并存储在 NandFlash中,在采集的过程中,同时通过耳机播出。另一种是播放录制的 语音数据,即不采集现场语音信号,直接播放已经存储在 NandFlash中的语音数据。这两种工作方式可以在系统初始化工程时通过按键选择。具体的程序代码段设计主要包括 MCBSP口的配置、AIC23的初始化、NandFlash烧写、DSP上电自举,这四个部分。其中现场采集、播放的流程图如下:
图19 系统工作流程图
§4.1.1 MCBSP的配置。
20
5416提供的 MCBSP口是一种高速、双向、多通道带缓冲的串行接口。它可以与其他 C54xDSP器件、编码器或其他串行接口器件通信。MCBSP的硬件部分是基于标准串行接口的。MCBSP的控制模块包括帧同步信号发生器、内部时钟发生器、以及它们的控制电路和多通道选择。与 MCBSP有关的控制寄存器是通过子地址寻址来访问的,它有 28个子寄存器只占用一个DSP内存地址。MCBSP的子地址寄存器(SPSA)用来指向这些使用同一个内存地址的寄存器中的某一个。 。#defineMCBSP1_SET(add,data)
MCBSP1_SPSA=add,MCBSP1_SPSD=定义一个宏函数,第一个参数 add为子地址地址,data为子地址寄存器的值 MCBSP1_SET(SPCR1,0x1801) //SPCR1=0x1801
MCBSP1_SET(SPCR2,0x03C1) //SPCR2=0x03C1
§4.2软件配置
AIC23具有8个可编程的内部寄存器,通过软件编程能随时控制 AIC23的采样频率,高、低通滤波器的截止频率,模拟输入及输出的增益。DSP通过串口1完成对AIC23的初始化工作。程序中把对 AIC23的初始化命令写在一个数组中,采用循环方式将这些命令
通过串口发送出去codec[10]={0x1e00,0x0c00,0x0811,0x0a04,0x0e43, 0x102c,0x1201,0x0117,0x05ff,0x07ff}; MCBSP1_DXR1=codec[i];
§4.3 DSP上电自举
当软硬件设计工作完成后,需要系统能够脱离 PC机运行。这就需要将调试好的.out烧写到外部Flash中,并要求目标系统上电后可自行启动并执行用户软件代码,这就需要用到 DSP的自举引导(Bootload-er)技术。这里采用的是 16位并行Flash引导方式。使
用 Hex500.exe将.out文件转换成 16进制的自举表文件,通过烧写器将这个自举表文件烧写到 flash中。然而,这种脱机烧写不能烧写贴片封装的芯片,系统的灵活性受到很大的。
本设计采用了一种新的一次装载程序并烧写的在线烧写方法。用 Hex500.exe生成好自举表文件后,另外跟据 Flash的编程方法,编写烧写代码,并读取自举表文件。在 C程序源码中读取的自举表文件是ASCII值,因此需要在程序中加一段格式转换代码,将
数据转换成二进制文件,并且去掉自举表的表头和表尾。转换时采用一个4次循环,先读取4位16进制数的最高位,把这个ASCII值转换成二进制数字,将其左移 4位,接着读取次高位。循环 4次便得到了可以直接烧写的数据。系统脱机工时,通过外部并行总线,用
DMA方式将这些代码从数据空间搬移到程序空间中。
21
§4.4数字音频文件的生成
采集到 中的语音数据 为了保存和今后使用的方便 ,需要将它保存为标准的音频文件。本设计中将它保存为 Microsoft 公司提供的一种标准格式文件(WAV 文件) 。WAV 文件是 RIFF(resourceinterchange file format)格式 ,它由文件头和一系列数据块组成 ,文件头共 44 字节。要将采集进 PC中的语音数据保存为 WAV 文件 ,需要先定义一个标准的 WAV 文件头 ,然后将所有的语音数据保存到该文件的数据块中 ,并修改文件头中的数据长度和文件长度两个字段即可。本系统经过实际测试 ,效果良好 ,既有较好的质量 ,又节省了成本、空间 ,是录放系统中实用可行的参考方案。
§4. 5 结 论
系统设计采用DSP 与语音采集技术相结合实现了语音信号的录放以及数字回声的制作。硬件电路主要包括DSP 处理器单元和语音采集单元,其核心器件分别选用TMS320VC5416 处理器和 TLV320AIC23 语音芯片,并通过 MCBSP 接口进行数据通信传输。采用C语言和汇编语言混合编写应用程序,在 CCS集成开发环境下进行软硬件调试,实现语音录放和数字回声等功能。DSP 处理器在语音信号的采集、播放、编解码以及压缩存储等处理技术中应用广泛。随着数字技术的发展和
数字电话、声控技术、信息家电的应用,DSP 技术和算法在现代语音信号处理中具有重要作用。本文讨论和实践了基于DSP技术的语音处理的基本应用,有关语音信号的高级处理设计技术和复杂算法实现等一系列问题,有待进一步探索、研究。
第五章 系统功能检验
§5.1 系统调试
整个系统的调试包括三个部分:硬件调试、软件调试和总体调试。这三部分调试都要借助于TMS320VC5410的仿真器进行调试。
§5.11硬件调试
首先测试电压是否正确;然后用示波器测试TMS320VC5410的 CLKOUT引脚是否有信号输出 ,并测试该信号的频率 ,对照设定的 CLKMD1 ,CLKMD2 ,CLKMD3 ,看频率是否正确。之后 ,将仿真系统与硬件系统连接。运行仿真系统软件 ,看仿真系统能否正常运行。如正常 ,说明 TMS320VC5410 部分的硬件正常。接下来调试 TMS320VC5410 的外围硬件。调试方法是针对不同的外围硬件 ,编写相应的小程序来让该硬件运行 ,以验证硬件功能正常与否。
22
§5.12软件调试
在硬件调试完成以后 ,就可以根据设计的要求编写系统的功能模块软件。编写完毕后就可在仿真器上调试该软件。在调试的过程中边发现问题边修改 ,直到所编写的模块软件能正常完成设计的要求为止。由于 DSP 的内部存储器比较大 (kRAM 和16kROM) ,所以必须对程序在存储器的具体位置进行配置 ,在 CCS 下仿真时就需要编写。cmd 文件来配置存储器空间。
总体调试包括系统的初始化、软硬件的联合调试等。系统初始化包括:中断矢量的重定位;工作时钟的设置;等待状态数的设置;中断设置;STO、ST1初始化等。软硬件联合调试即将所有程序综合在一起 ,利用仿真器对硬件系统进行调试。调试完毕后 ,把程序调入 FLASH系统就可运行了。
§5.2直观的听觉检验
23
作者用系统收录了一分钟的语音信号,经过重放后听得很清楚 ,感觉不到失真 ,满足语音录放的要求。
图20系统主程序和回声子程序流程图
§5.3 系统的失真度和频响检验
为了进一步检验系统的功能,作者又做了失真度和频响测试检验
1) 失真度检验。
用信号发生器分别输入不同频率的正弦波信号 ,用失真度测试仪分别检验原始信号和重放信号的失真度 ,检验结果如表1 所示。 表3 失真度检验结果
2 )频响测试检验。
24
鉴于语音信号频率在 5kHz 左右 ,采用二倍频进行了频响测试 ,测试检验结果见表2。 表2 频响测试检验结果
由失真度和频响测试检验结果可以看出 ,系统能较好地完成语音记录和重放功能。本系统结构合理 ,设计简洁紧凑 ,能实现较长时间的语音压缩 ,主观测评合成语音达到通信质量。它既可作为整体设计 ,又可配合电机作为录音电话 ,还可经稍许修改应用于 IP 电话或可视电话上。
附录一:配置祥解
1. DSP芯片的选择
系统采用的主芯片是 公司的一款 位定点TI 16: 以下简称 ,主要是考虑到DSP TMS320VC5416( C5416)片内具有 位的内部 ,这对提高C5416 128KX16 RAM系统总体性能和集成度有很大的帮助。另外还C5416具有 个 多通道缓冲串口。该串口与 器件3 MCBSP SPI兼容,提供多达个发送和接收通道。与其他128 C54x芯片一样 具有功耗低运算速率高、性价比DSP C5416高的优点。另外 具有如下特点:当核电压为C5416 1.6伏特时的工作频率可达到 ;能访问 数据160 MIPS K空间、以及 程序存储空间。存储空间、K I/O 192K. 2.芯片的选择
25
从适应语音信号频率、满足实时性、降低成本、简化设计的要求出发,本系统选择。TLV320AIC23 AIC23工作电压 伏特,能在数字和模拟电压下工作,与3.3的 电压相兼容,其控制接口和数TMS320VC5416 I/O字接口与 的 端口能够无缝连接。DSP MCBSP AIC23的模数转换( )和数模转换( )部件高度集成ADCs DACs在芯片内部,采用了先进的 过采样技术,Sigma-delta可以在到 的频率范围内提供 、 、8K 96K 16bit 20bit和 的采样, 和 的输出信噪比分24bit 32bit ADC DAC别可以达到 和 90dB 100dB.
附录二:程序编译
************************************************ * FileName: ex12.asm * * Description: 语音录放实验 * ************************************************ CMD文件: MEMORY {
PAGE 0: VECS: origin = 0xff80, length = 0x80 PROG: origin = 0x1000, length = 0x1000 PAGE 1: DATA: origin = 0x4000, length = 0x1000 STACK: origin = 0x3000, length = 0x1000 }
SECTIONS {
.vectors: {} > VECS PAGE 0 .text: {} > PROG PAGE 0 .data: {} > DATA PAGE 1
.stack: {} > STACK PAGE 1 }
5000系列DSP汇编语言: .title \"ex12\" BSP .set 1 ;当前使用多通道能缓冲串口1 ( McBsp1) ;McBsp 内存映射寄存器
SPSA0 .set 038h ;多通道能缓冲串口0 ( McBsp0)的子地址寄存器 ,地址
;设置为数据空间第0页的38单元,缓冲串口的
其它控制、
;状态寄存器的地址必须通过子地址寄存器中的内
容作为地址
;去寻址。
SPSD0 .set 039h ;多通道能缓冲串口0 ( McBsp0)的控制、状态
26
命令字(数
;据)发送寄存器,向多通道能缓冲串口中的控制、
状态寄存
;器发送命令字(数据)时,该命令字必须通过
SPSDx寄存
DRR10
设置为21h
DRR20 .set 020h ;多通道能缓冲串口0的数据接收寄存器2,地址设置为20h
DXR10 .set 023h ;多通道能缓冲串口0的数据发送寄存器1,地址设置为23h
DXR20 .set 022h ;多通道能缓冲串口0的数据发送寄存器2,地址设置为22h
SPSA1 .set 048h ;多通道能缓冲串口1 ( McBsp1)的子地址寄存器地址48h
SPSD1 .set 049h ;多通道能缓冲串口1 ( McBsp1)的控制、状态命令字(数
;据)发送寄存器,地址为49h
DRR11 .set 041h ;多通道能缓冲串口1的数据接收寄存器1,地址设置为41h
DRR21 .set 040h ;多通道能缓冲串口1的数据接收寄存器2,地址设置为40h
DXR11 .set 043h ;多通道能缓冲串口1的数据发送寄存器1,地址设置为43h
DXR21 .set 042h ;多通道能缓冲串口1的数据发送寄存器2,地址设置为42h
;McBsp Subaddressed Registers以下为多通道能缓冲串口子地址映射寄存器(控制、状态)
的配置。
SPCR1 .set 00h ;多通道能缓冲串口控制寄存器1,子地址为00h SPCR2 .set 01h ;多通道能缓冲串口控制寄存器2,子地址为01h RCR1 .set 02h ;多通道能缓冲串口接收控制寄存器1,子地址为02h
RCR2 .set 03h ;多通道能缓冲串口接收控制寄存器2,子地址为03h
XCR1 .set 04h ;多通道能缓冲串口发送控制寄存器1,子地址为04h
XCR2 .set 05h ;多通道能缓冲串口发送控制寄存器2,子地址为05h
SRGR1 .set 06h ;采样率发生寄存器1,子地址为06h SRGR2 .set 07h ;采样率发生寄存器2,子地址为07h MCR1 .set 08h ;多通道寄存器1,子地址为08h MCR2 .set 09h ;多通道寄存器2,子地址为09h
27
;器发送。
.set 021h ;多通道能缓冲串口0的数据接收寄存器1,地址
RCERA .set 0ah ;接收通道使能寄存器A,子地址为0ah RCERB .set 0bh ;接收通道使能寄存器B,子地址为0bh XCERA .set 0ch ;发送通道使能寄存器A,子地址为0ch XCERB .set 0dh ;发送通道使能寄存器B,子地址为0dh PCR .set 0eh ;引脚控制寄存器,子地址为0eh
.if BSP = 0 ;以下两个if块用来设置是使用多通道缓冲串口0还是使用多通
;道缓冲串口1,C5402有两个多通道缓冲串口
(McBSP0和
;McBSP1).
SPSA .set SPSA0 ;如果使用多通道串口0,则子地址寄存器用SPSA0 SPSD .set SPSD0 ;命令字收发寄存器使用SPSD0 RDRR .set DRR10 ;数据接收寄存器使用DRR10 RDXR .set DXR10 ;数据发送寄存器使用DXR10 .endif
.if BSP = 1
SPSA .set SPSA1 ;如果使用多通道串口1,则子地址寄存器用SPSA1 SPSD .set SPSD1 ;命令字收发寄存器使用SPSD1 RDRR .set DRR11 ;数据接收寄存器使用DRR11 RDXR .set DXR11 ;数据发送寄存器使用DXR11 .endif WR_SUB_REG .macro val,addr ;写McBsp控制寄存器的宏定义
stm addr,SPSA ;对McBSP的控制寄存器进行写时必须 nop ;先将要写的寄存器的地址装入子地址寄存器
stm val,SPSD ;再将要写的数据装入命令字收发寄存器
nop ;这样即可完成控制或状态寄存器的写操作
.endm RD_SUB_REG .macro addr,acc ;读McBsp控制寄存器宏定义 stm #:addr:,SPSA ;对McBSP的状态寄存器进行读时必须 nop ;先将要读的寄存器的地址装入子地址寄存器
ldm SPSD,acc ;再将命令字收发寄存器中的内容装入累加器
nop ;这样累加器中的内容即为所要读的状态寄存器的值 nop nop .endm
WAITTRX .macro ;等待串口中断宏定义 WAITR?
RD_SUB_REG SPCR1,A ;读出多通道缓冲串口控制寄存器SPCR1中
28
的值
and #1<<1, A ;判断SPCR1中的第1位(倒数第2位)RRDY是否
;为1,即数据接收是否准备好。RRDY=1为接
收准备好。
bc WAITR?, AEQ ;若接收未准备好RRDY=0,则继续等待,否则返回宏
;调用处往下执行。
.endm
PROGREG .macro progword ;与AD50二次通讯的宏定义
;二次通信是对通信终端设备的状态、控制寄存器进行读写,
;一次通信是主机跟终端设备间进行数据传输。
stm #01h,RDXR ;设置求二次通信,因DA输入数据格式为15位,最低位
;LSB用来设置二次通信请求,LSB=1为请求二
次通信
WAITTRX ;判断二次通信申请是否成功
stm #:progword:,RDXR ;向AD50写二次通信的数据,实现控制寄存器
;的配置
WAITTRX ;等待到控制数据写成功后再返回。 .endm
wait .macro ;设置等待时间(延时9个NOP时间) STM #0008h, AR0 RPT *AR0 NOP
.endm .mmregs
.global _c_int00 .sect \".vectors\"
RESET bd _c_int00 ;将2000h装载SP后转系统位服务程序 stm #2000h,SP .space 19*4*16
BRINT0 b recv ;设置缓冲串口接收中断0 (20号中断) nop nop
BXINT0 b trans ;设置缓冲串口发送中断0 (21号中断) nop nop
.space 4*4*16
BRINT1 b recv ;设置缓冲串口接收中断1 (26号中断) nop nop
29
BXINT1 b trans ;设置缓冲串口发送中断1 (27号中断) nop nop
.space 4*4*16 .text _c_int00
ld #0h,DP ;数据页指针0页 stm #2000h,SP ;堆栈指针为2000h ssbx INTM ;关闭所有可屏蔽中断 ssbx SXM ;允许符号位扩展
st #2491h,SWWSR ;DSP在访问外部存储空间和I/O空间时等待2个机器周期
st #0ffe0h,PMST ;中断向量指针设置为FF80h,DSP工作于微处理器模式,
;程序空间使用片上的DARAM,DSP访问内部空间
时地址
;位可见,数据空间使用4k的片外ROM,关闭DSP
的输出
;时钟。
st #0f007h,CLKMD ;DSP的PLL时钟采用4分频方式 stm #4000h,AR1 stm #4000h,AR2 mcbsp_init ;初始化McBsp串口
rsbx CPL ;CPL=1采用SP寻址方式 nop nop nop
ld #0, DP ;数据页指针0页 ssbx INTM ;关闭所有可屏蔽中断 ssbx SXM ;允许符号位扩展
WR_SUB_REG #0000H,SPCR1 ;串口接收器复位
WR_SUB_REG #0200H,SPCR2 ;串口发送器复位,并使串口全速运行 WR_SUB_REG #000CH,PCR ;配置成标准串口(SPI)方式,帧同步各收发时
;钟由外部时钟(AD50的帧同步和收
发时钟)
;提供,发送和接收帧同步脉冲在上
升沿触发,
;发送数据在CLKX的上升沿采样,接
收数据在
;CLKR的下降沿采样
WR_SUB_REG #0000H,SPCR1 ;串口接收器复位 WR_SUB_REG #0000H,SPCR2 ;串口发送器复位
WR_SUB_REG #0040H,RCR1 ;接收帧为每帧1个字,字长为16位
30
WR_SUB_REG #0004H,RCR2 ;从第一个帧同步后接收帧忽略,连续模式
WR_SUB_REG #0040H,XCR1 ;发送帧为每帧1个字,字长为16位 WR_SUB_REG #0004H,XCR2 ;从第一个帧同步发出后发送帧忽略,连续模式
ld 100,A wait
andm #0ff3fh, 54h ;set interrupts to come from serial ports not DMA
;by clearing bits 6 and 7 in DMPREC stm #0,RDXR
WR_SUB_REG #0001H,SPCR1 ;启动McBsp串口 WR_SUB_REG #0201H,SPCR2 ld 100,A wait aic_init
stm #0h,IMR orm #0c00h,IMR stm #0ffffh,IFR
PROGREG 0000001100000001b ;二次通讯初始化AD50 ;向AD50的控制寄存器3中写入00000001b, 延迟1个SCLK PROGREG 0000010000010000b
;向AD50的控制寄存器4中写入00010000b, SCLK=MCLK/(128*1) ;AD50控制寄存器1采用默认值000000b, 控制寄存器2采用默认值000000b,
;AD50的工作状态为:模拟输入端为INP和 INM,无增益,无数字回送,
;无软件复位,AD转换的输出为15位数据;DA转换的输入为15bit ;的数据,无模拟回送,延迟1个SCLK ,SCLK=MCLK/(128*1) ld RDRR , A
ld RDRR , A stlm A , RDXR stlm A , RDXR
rsbx INTM ;开中断 nop nop nop
js nop ;等待中断请求 nop nop b js
recv ldm RDRR , A ;读取ADC采样数据 ld #0d000h , b sub ar1 , b
31
bc record , beq stl a , *ar1+ b play record ld #0d000h,b sub ar2,b
bc load,bneq stm #4000h,ar2 load ld *ar2+,a play and #0fffeh,a stlm A,RDXR rete trans rsbx XF rete .end
;判断录音是否结束 ;未结束->录音 ;已结束->放音
;录制数据放完,再从头放起
;加载录制数据 ;放音
参考文献
[1] 赵红怡.DSP 技术与应用实例[M].北京:电子工业出版社 ,2003.
[2] 清源科技. TMS320C54xDSP 硬件开发教程[M]. 北京:机械工业出版社 ,2003.
[3] 周霖.DSP 工程技术应用系列:算法设计与系统方案 [M].北京:国防工业出
版社 ,2004.
[4] 李昌立 ,吴善培.数字语音 - 语音编码实用教程[M].北京:人民邮电出版社 ,2004.
[5] 武汉力源电子股份有限公司TMS320C2xx数字信号处理,2004
[6] .计算机通信技术及其程序设计.陕西:西安电子科技大学出版社,2003 [7] 敬利等 .媒体计算机声卡技术及应用 .京:电子工业出版社,1998年. [8] 逢兴.微型计算机硬件技术及应用基础 北京:国防科技大学出版社,2004 [9] Texas Instruments Inc. TLV320AIC23EVM: Evaluation Module for the
TLV320AI23 Codec and tTLV320DAC23 Audio DAC Userπs Guide [ EB/OLSLEU003 ,2001.
[10] exas Instruments Inc. TMS320VC5416 Fixed2PoiDigital Signal
Processor , Data Manual [ EB/ OLSPRS095O ,2005.
[11] Texas Instruments Inc. TLV320AIC23B Data Manu [EB/OL].Digital Audio
Products: SLWS106H ,
[12] Texas Instruments Inc. TMS32054x C SourDebugger Userπs Guide
[EB/OL].Literature NumbeSPRU099D ,2005.
致 谢
一年多的时光一晃而过,在这论文工作即将结束之际,在这论文设计阶段即
32
将告别之时,我希望籍此机会向那些曾经关心和帮助过我的良师益友表示衷心的感谢。深深感谢我的知道老师雷学堂老师,谢谢雷老师在学习阶段给予的指导和帮助。雷老师严谨的治学态度,慎密的思维方式,丰富的实践经验,勤奋的工作作风和平易近人的态度,都使我受益匪浅,他的扎实、勤谨、谦逊、正直,将永远是我今后治学为人的楷模。
深深感谢我的指导老师,谢谢老师在生活和学习上给予的关心和帮助。从论文的选题、研究到最后完成,雷老师都付出了很大的心血。在毕设期间,雷老师不仅在技术理论上给予了关键性的方向引导,而且在实践中给予了耐心分析和帮助,使我不仅积累了了许多知识经验,更重要的是提高了自己的协作能力,加强了自己的责任观念,丰富了自己的专业认识。深深感谢老师在开题阶段给予的指导和建议,感谢雷老师耐心、详细解答我的疑问。同时感谢物理科学与技术学院各老师,他们也给予我很多的指导和热情的帮助。
同样,也感谢我的同学给我的帮助忘不了和大家在一起的日子,与他们的交流和讨论常常使我茅塞顿开。最后,深深感谢我的父母和亲戚对我二十几年来的养育之恩和帮助,他们为我的成长倾注了大量心血,他们无私的爱和深切的期望是我漫漫求学征途中的强大精神支柱。
33
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务