基于FPGA的RPE-LTP语音编解码的IP核设计_第1页
基于FPGA的RPE-LTP语音编解码的IP核设计_第2页
基于FPGA的RPE-LTP语音编解码的IP核设计_第3页
基于FPGA的RPE-LTP语音编解码的IP核设计_第4页
基于FPGA的RPE-LTP语音编解码的IP核设计_第5页
已阅读5页,还剩63页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、暨南大学硕士学位论文题名(中英对照):基于fpga的rpe-ltp语音编解码的ip核设计ip core design of rpe-ltp speech codec based on fpga作者姓名:胡建新指导教师姓名肖璋及学位、职称:副教授学科、专业名称:通信与信息系统论文提交日期:论文答辩日期:答辩委员会主席:论文评阅人:学位授予单位和日期:61独 创 性 声 明本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得 或其他教育机构的学位或证书而使用过的材料。与我

2、一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名: 签字日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解 有关保留、使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权 可以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 (保密的学位论文在解密后适用本授权书)学位论文作者签名: 导师签名: 签字日期: 年 月 日 签字日期: 年 月 日学位论文作者毕业后去向:工作单位: 电话:通讯地址: 邮编:暨南大学硕士学位论文 基于fpga

3、的rpe-ltp语音编解码的ip核设计摘要rpe-ltp(规则脉冲激励-长期预测)语音编解码算法是gsm(全球移动通信系统)所使用的全速率语音编解码标准。它采用20ms帧长,每帧包含语音样本160个,编码速率为13kbps,编解码合成语音质量可以达到mos3.6以上。目前对rpe-ltp语音编解码算法的实现方案设计中,大多采用dsp(数字信号处理器)作为首选,这与gsm移动通信系统建立时期的硬件技术发展状况有关。在当时采用dsp无疑是最好的方案。但是随着集成电子电路技术的发展,实现rpe-ltp语音编码的可选方案也越来越多。本课题作为“gsm/cdma双模手机基带物理层关键技术的研究及其ip

4、core实现”项目的一部分,提出一种采用fpga实现rpe-ltp语音编解码算法的设计方案,并完成了相应的vhdl程序的编写、设计、仿真等工作。通过详细分析算法的特征及关键技术,提出了几种在不同的需求条件下的设计方法。由本课题设计实现的rpe-ltp语音编解码算法的ip core,取得了很好的试验结果。其编解码总时延为5844个时钟周期,时钟频率可达13mhz,极大地缩短了编解码时延。关键词:rpe-ltp,语音编解码,fpga,gsmabstractrpe-ltp(regular pulse excited long term prediction) speech codec algorit

5、hm is one of the standards for gsm(global system for mobile communication). it adopts 20ms frame, each frame contains 160 speech samples. its code rate is 13kbps and the quality of reconstructed speech can reach above mos 3.6.dsp (digital signal processor) is the favorite for most people to implemen

6、t the rpe-ltp speech codec algorithm. this is for the state of the hardware technologys development in the gsm mobile communication setting-up period. undoubtedly it was the best scheme to choose dsp at that time. with the development of integrated electronic circuit technology, there are more and m

7、ore available implementation schemes for rpe-ltp speech codec.this subject is a part of the project “gsm/cdma bimodulus cell-phone base-band physical layers key technology research and the ip core implementation”. in this subject we put forward an implementation scheme of rpe-ltp speech codec algori

8、thm by using fpga and has finished the work of designing, programming, emulating the vhdl program, etc. and put forward several kinds of design methods on different needs through analyzing the characteristic and key technology of the algorithm in detail.after testing the ip core which we have design

9、ed to implement the rpe-ltp speech codec algorithm, the result is satisfying. the codecs whole delay is 5844 clock periods, and the clock frequency can up to 13mhz. it turned out that our implementation method can shorten codec delay greatly.keyword: rpe-ltp, speech codec, fpga, gsm目 录摘要iabstractii目

10、 录iii第1章 绪论11.1 引言11.2 语音编码方法的分类11.3 数字语音压缩编码标准21.4论文选题依据及背景4第2章 语音信号处理的关键技术62.1 语音信号的数学模型62.1.1 发音机理及声学特征62.1.2 语音信号的数学模型72.2 语音信号的短时分析和线性预测分析92.2.1短时分析92.2.2 线性预测分析92.3 语音信号的矢量量化编码10第3章 fpga简介113.1 fpga的概况113.2 fpga的基本结构113.3 fpga开发设计方法12第4章 rpe-ltp语音编解码原理144.1 编码器原理144.1.1 预处理144.1.2 lpc分析154.1.3

11、 短期分析滤波164.1.4 长期预测174.1.5 rpe编码194.1.6 重构短期滤波余量信号204.2 解码器原理21第5章 rpe-ltp编解码定点算法235.1 原始语音样本表示方式235.2 预处理235.2.1 样本缩放235.2.2 偏移补偿235.2.3 预加重245.3 lpc分析245.3.1 分帧245.3.2 自相关245.3.3 schur递归255.3.4 对数域转换265.3.5 对数域反射系数量化编码265.4 短期分析滤波265.4.1 对数域反射系数反量化275.4.2 对数域反射系数插值275.4.3 反射系数解码275.4.4 预处理结果的恢复285

12、.4.5 短期分析滤波285.5 长期预测分析285.5.1 子帧划分285.2.2 短期余量信号缩放295.5.3 互相关295.5.4 搜索长期预测滞后参数ncj295.5.5 计算长期预测增益编码bcj295.5.6 长期分析滤波305.6 rpe编码305.6.1 加权滤波305.6.2 子采样305.6.3 rpe格选315.6.4 rpe量化315.7 短期滤波余量的更新325.7.1 激励脉冲序列解码325.7.2 重构长期分析滤波结果325.7.3 长期综合滤波335.8 解码335.8.1 激励脉冲序列解码335.8.2 短期综合滤波345.8.3 后处理34第6章 fpga

13、实现方案及vhdl程序设计356.1 rpe-ltp语音编解码算法的特点356.1.1 算法中运算的操作类型356.1.2 算法中数据的特点356.2 fpga实现方案366.2.1 编码器功能模块划分366.2.2 解码器功能模块划分386.3 功能模块的设计396.3.1 预处理模块396.3.2 自相关模块406.3.3 schur递归模块416.3.4 对数域反射系数编解码模块426.3.5 反射系数解码模块426.3.6 短期分析滤波模块426.3.7 计算长期预测滞后参数模块436.3.8 计算长期预测增益参数模块456.3.9 长期分析滤波模块456.3.10 rpe编解码模块4

14、66.3.11 更新重构短期滤波余量模块476.3.12 编码输出模块486.3.13 编码数据接收模块486.3.14 短期综合滤波及后处理模块486.3.15 重构语音输出模块496.4 功能模块的整合506.5 小结51第7章 测试结果53第8章 总结57致 谢58参考文献:59 第1章 绪论1.1 引言语音是人类相互交流和传递信息的基本手段,它具有方便、快捷的优点。在当今的通信领域中,语音通信一直占据着相当大的份额。随着通信网络数字业务量的急剧增长,如何在提供高质量语音服务的基础上采用最低的码率来传送和存储数字语音信号以增加现有信道的带宽利用率、安全性、抗误码性以及降低成本等也显得越来

15、越重要。自1962年美国bell labs推出第一套商用t1的24路pcm通信系统以来,语音信号在有线电话系统中全部实现了数字化。90年代在无线电话中gsm也逐步取代了传统的模拟无线电话系统。近年来,随着互联网的迅速发展,网络通信由单纯的数据信息向多媒体业务发展,移动通信也在向第三代、第四代移动通信发展,对语音的编码也成为通信系统中基本的也是关键的技术之一。中低码率的语音编码技术经过80年代中期至90年代中期的研究已经取得了很大的成果,国际电信联盟(itu)和etsi等机构也制定出若干国际标准,如g.728、g.729、gsm06.10、gsm06.20等已获得广泛使用,给通信业务带来了巨大的

16、商机。1.2 语音编码方法的分类语音压缩编码的目的是追求在尽可能低的数码率下获得尽可能高的合成语音质量,而高质量与低码率这两方面又是相互矛盾的。根据人们对语音质量要求的不同,语音信号压缩编码的方法可以分成三类:波形编码、参数编码和混合编码1, 2。波形编码是指对语音信号在时域或频域的波形经过取样、量化和编码,形成数字话音信号,力图使重构语音的波形保持原始语音信号的形状。这种方法保留了语音信号原始样值细节上的变化,从而也保留了信号的各种细微特征。所以,利用波形编码所重构的语音信号质量很高。但由于它的采样速率必须满足奈奎斯特采样定理,为了保证数字话音信号解码后的高保真度,其量化分层数要足够大。因此

17、波形编码需要较高的编码速率,压缩比不是很高。通常在1664kbps的速率范围内可以重构出很高的语音质量,但当速率降低时,所重构的语音质量会迅速下降。波形编码通常用在对语音质量要求较高的场合。脉冲编码调制(pcm)、自适应差分脉冲编码调制(adpcm)、增量调制(m)及其变型均属于波形编码。参数编码是基于人类语音的发声机理,提取表征语音信号的特征参数,然后对特征参数进行编码,在接收端利用收到的语音特征编码参数对语音信号进行重构。这些特征参数去除了语音信号的相关性和冗余度,因此大大的降低了数码率。参数编码的编码速率可以达到1.22.4kbps。在当今通信信道资源有限的情况下,降低数码率具有重要意义

18、,但参数编码重构的语音信号与原始语音信号在波形上有相当大的差别,语音质量差,自然度较低。因此这种编码方式目前主要用于军事和一些对语音质量要求不高的地方。线性预测编码(lpc)及其变型均属于参量编码。混合编码综合了波形编码和参数编码各自的长处。在混合编码的信号中,既包含有语音的若干特征参数,又包含有部分的波形编码的信息。能够在416kbps的速率上得到较高质量的重构语音信号。在编码速率为816kbps的范围时,其话音质量可达到商用话音通信要求的标准。由于混合编码既能够降低编码的数码率又能够得到较高的重构语音质量,目前已广泛用于移动通信系统中。规则脉冲激励线性预测(rpe-ltp)编码、矢量和激励

19、线性预测编码(vselp)等属于混合编码。1.3 数字语音压缩编码标准近几十年来,数字语音压缩编码技术取得快速发展,涌现了多种压缩编码方法和标准,有些已成为区域性或国际性的语音编码标准3。(1)g.711标准41972年,ccitt(现在的itu-t)通过了64kbps语音编码标准g.711。该标准采用对数pcm(脉冲编码调制)编码方式。规定以8khz采样率对语音信号进行采样,采用非线性a律或u律进行编码,样值编码位数为8比特,编码速率为64kbps。(2)g.721标准51984年,ccitt制定了32kbps语音编码标准g.721。该标准采用adpcm(自适应差分脉冲编码调制)编码方式。采

20、样率与g.711一样为8khz,所不同的是g.721采用的adpcm编码方式是对语音预测误差进行量化编码,每个采样值的预测误差采用4bit。在一个pcm话路中可同时传送两路电话,并能实现g.711标准的64kbpspcm信道与32kbps信道之间的相互转换。(3)g.723标准ccitt在1988年制定的语音编码标准,采用24kbps和40kbps的adpcm编码。24kbps码率用在瞬时话务量超过传输容量时的dcme(数字电路增容设备)中,40kbps码率能通过9.6kbps modem传输。(4)g.726标准6g.726标准是g.721和g.723标准的结合,另外增加了16kbps的ad

21、pcm编码,主要用于dcme。其16kbps和24kbps编码的语音质量达不到长途话音的质量。(5)g.728标准7g.728标准是ccitt于1992年公布的16kbps的ld-celp(短时延码激励线性预测)编码标准。该算法以celp(码激励线性预测)为基础,采用后向自适应线性预测、50阶合成滤波和短激励矢量等改进方法,算法编码时延小于2ms。(6)g.723.1标准81995年,ccitt制定的一种多媒体语音编码标准,其传输码率有5.3kbps和6.3kbps两种,在编码过程中可随时切换。5.3kbps的编码器采用acelp(代数码激励线性预测)编码方式,6.3kbps的编码器采用mp-

22、mlq(多脉冲最大似然量化)编码方式。该标准的主要应用是在ip电话业务、h.324视频电话、无线电话、数字卫星系统、dcme(数字电路增容设备)、pstn(公共交换电话网)、isdn(综合业务数字网)等。(7)g.729标准91996年,ccitt公布了8kbps的g.729标准,该标准采用了cs-acelp(共轭结构代数码激励线性预测)算法。该算法采用线性预测、矢量量化和代数码本搜索等技术,在略微增加算法复杂度的情况下,大大降低了编码速率,同时又保证了良好的语音质量。(8)fs101610fs1016是美国政府公布的一种语音编码标准,它基于celp的编码算法,编码速率为4.8kbps。该算法

23、利用线性预测提取语音特征参数,用一个激励码书作为激励矢量,每次编码时在码书中搜寻一个最佳的激励矢量,将该激励矢量在码书中的对应编号作为编码结果。(9)vselp11vselp是北美蜂窝电话工业组织(ctua)在1989年公布的8kbps矢量和激励线性预测(vselp)语音编码方案。该算法采用两个随机码本和一个自适应码本作为激励信号,最终使用的激励为这三个激励矢量的和。(10)gsm06.1012gsm06.10是etsi(欧洲电信标准化组织)为gsm制定的全速率语音压缩编码标准,该标准采用rpe-ltp(规则脉冲激励-长期预测)编码算法,压缩后语音数码率为13kbps。本文就是采用fpga实现

24、该标准所规定的语音编解码算法。(11)gsm06.2013gsm06.20是etsi为gsm制定的半速率语音压缩编码标准,该标准采用vselp语音编码方案,编码后的语音数码率为5.6kbps。1.4论文选题依据及背景语音编码算法具有计算量大、处理的数据多等特点。因此语音编码算法的实现方案多选用dsp来完成。从作者目前所收集到的国内外文献来看,尚未发现有使用fpga实现gsm全速率语音编解码算法的报道。究其原因,主要因为dsp是用于数字信号处理的专用器件,它在结构设计上考虑了数据信号处理中计算量大,处理数据多的特点,又能够达到比单片机高得多的运行速度,在实际应用中也能够达到语音编码的实时要求。另

25、一方面是fpga在发展初期由于受到半导体工艺方面的影响,集成度、运行速度等方面都存在有一定的不足。使得人们当时在选择实现方案更趋向于采用dsp。14随着半导体工艺的发展,fpga已经取得了很大的突破,在集成度方面,已经出现了上千万可用门的单片fpga。在速度方面,由于引入了高速时钟管理电路,使得fpga的运行速度也得到了快速提高。另外,fpga内置的高速乘法器、加法器及块ram也极大的增强了fpga进行数字信号处理的能力。15, 16本课题作为“gsm/cdma双模手机物理层基带关键技术地研究与ip core实现”的一个子项目,采用fpga实现rpe-ltp语音编解码算法的ip core具有特

26、殊的意义。一方面fpga特有的并行处理能力能够极大的增强语音编解码速度,另一方面作为整个项目的一部分,也便于与其它模块之间结合。只需调用本课题设计所产生的ip核即可实现整体结构的快速合并。而采用dsp却不能很好地满足这一要求。采用fpga实现语音编解码算法可以达到比dsp更短的编解码延时,因此当需要对多路语音信号进行编解码处理时,采用时分方式也可处理更多的话音信号,获得比采用dsp更好的编解码性能。第2章 语音信号处理的关键技术2.1 语音信号的数学模型2.1.1 发音机理及声学特征声音是由于空气振动而产生的自然界的一种物理现象,引起空气振动的部分称作声源,也叫做声音激励。人的语音发音机理类似

27、于管乐器,首先由气源产生气流并穿过一条狭长的有孔管道,气流引起管乐器的发声部分(如笛膜、音簧片等)的振动产生声波,声波经过管乐器的孔引起谐振。改变谐振孔开启的位置就可以调整音调。17人的发音器官由三个子系统组成:肺和气管产生气源;喉和声带(相当于管乐器中的音簧片、笛子的笛膜)叫做声门;咽腔、口腔和鼻腔组成声道。当由肺产生的压缩气流被迫通过声带时就会产生振动。再通过声道的调制后就形成了语音。语音激励根据发音的机制不同可以分为两类。一类称为浊音,它是在气体被迫通过声带时使声带产生振动,声门的闭合开启引起声带振动并产生一个准周期的脉冲气流。声带振动的频率称为基音频率,基音的频率通常在70300hz范

28、围内。另一类称为清音,它是由气体流速达到某一临界速率时所产生湍流引起的。在发清音时声带不振动,声道被噪声状的随机波所激励。其幅度一般较小,波形与噪声相似。所谓语音的调制,就是指在激励产生的气流中加入其他信息。人的语音调制过程主要通过口腔、鼻腔及咽腔的不同位置和形状变化产生的。不同的声道形状具有不同的固有频率。通过改变声道形状来产生不同的共振峰,从而产生出不同的元音和辅音。另外,在声波离开声道时,由于嘴唇的辐射作用,也会对声波产生一定的影响。2.1.2 语音信号的数学模型根据语音的生成机理可知,施加在语音声波上的作用有三部分:由声门产生的激励;由声道产生的调制和由嘴唇产生的辐射作用。语音信号是由

29、这三部分作用级联产生的。对应着语音生成机理,语音信号的数学模型也分为三个部分:激励模型;声道模型;辐射模型。18激励模型 最常用的语音激励模型为二元激励模型,其结构图如图2-1所示。它将语音按浊音和清音分为两种情况进行考虑。对于浊音,由于声门的不断开启和关闭,产生间歇的脉冲。此时的激励波是一个以基音为周期的斜三角脉冲串,单个的斜三角波的频谱表现为低通滤波器的特性。这种作为激励的斜三角波可以用一串加权的单位脉冲序列通过激励产生。对于清音,是由于声道被阻碍形成湍流。这时的激励可以利用随机白噪声来模拟。图2-1 语音的二元激励模型激励模型的另一种是码激励模型。该模型将可能的各种激励预先计算好后进行保

30、存并对其编号(通常采用激励存放的地址作为编号),这种预先计算好的激励称为码书。在实际应用中,通过相应的判据决定哪一种激励是当前信号的最佳激励,并将这个最佳激励的码书编号作为激励的表征。通常所采用的码书有两部分组成。一部分的内容是固定不变的,称为固定码书。另一部分的内容随着时间的变化而变化,称为随机码书,有时也称为自适应码书。声道模型 典型的声道模型主要有无损声管模型19和共振峰模型20。无损声管模型假定声道是由多个等长的具有不同截面积的管子串联而成的系统,并假定管子中的流体及管壁没有热传导和粘滞损耗。在短时间内声道可以表示为形状稳定的管道,声波是沿着管道的轴向传播的平面波。通过理论分析,可推导

31、出无损声管模型的传递函数为 式 (2-1)此模型为全极点模型。v(z)的极点对应于共振峰频率。在实际应用中若考虑建立模型时所作的无损声管的限制,可加入若干零点。共振峰模型根据声波通过声道时,受到声腔共振的影响,在某些频率附近形成谐振。这种谐振反映在信号频谱图上时表现为在谐振频率处谱线的包络产生峰值(如图2-1所示),通常将这些峰值叫做共振峰。图2-1 语音频谱的共振峰共振峰模型就是通过在编码侧提取语音信号的共振峰频率,在解码侧利用共振峰频率重构出语音信号。对于元音通常只需前3个共振峰就可代表,对于较复杂的辅音或鼻音,所需的共振峰个数要在5个以上。辐射模型 从声道模型输出的是速度波,而语音信号是

32、声压波,二者的倒比称为辐射阻抗。理论研究表明,由辐射引起的能量损耗正比于辐射阻抗的实部,其频率响应曲线表现出一阶高通滤波器的特性。在实际的语音信号分析中,常采用预加重技术,即在取样之后加入一个一阶的高通滤波器。在语音合成时再进行解加重处理。2.2 语音信号的短时分析和线性预测分析2.2.1短时分析语音信号从整体上来看不属于平稳信号,因此不能对语音信号直接采用分析平稳信号的方法进行分析。在一个相应的短时间范围内(1030ms),语音信号具有短时平稳的特性。可以通过将语音信号加窗的方法进行分帧,然后分析计算语音帧的参数。这种对语音信号进行分帧处理的方法称为语音信号的短时分析21。2.2.2 线性预

33、测分析线性预测分析是信号处理中极为有效的方法,它能够用较少的参数来表现信号的特征及性质,其基本原理是信号的当前样本值可以用过去的若干个样本值的线性组合来逼近。当实际样本与线性预测样本值之间的误差(通常采用均方误差)最小时,就能够确定唯一的一组预测参数,即线性组合过程中所使用的加权系数。例如,对于样本序列s,其第n个样本值为s(n)。利用前面p个样本值对其进行预测,预测公式可表示为 式 (2-2)式中ai为线性组合的加权系数。此时的预测误差为 式(2-3)采用最小均方误差准则可得出一组唯一的加权系数a1、a2、ap。将式2-3改动成如下形式: 式 (2-4)可以看出式2-4与p阶的全极点滤波器模

34、型的差分方程具有相同的格式。即可以把当前样本值看作是以误差信号为激励的p阶全极点综合滤波器的输出响应。即: 式(2-5)一般说来,阶数p越大,预测值就越准确,对全极点模型参数的估计也就越准确。但当p增加到一定程度后,均方误差的减小就不是很明显了。通常在语音信号处理中,p的值一般取812之间。在rpe-ltp算法中p的取值为8。2.3 语音信号的矢量量化编码矢量量化22编码是利用码本作为激励源的一种编码方法,即把预测误差信号可能出现的样值组合(矢量)按一定的规则排列,每一样值组合按给定地址存放在存储器中,因此,样值组合与地址是一一对应的。在存储器中存放的全部样值组合叫做码本。矢量量化编码是将代表

35、语音的矢量构成一个庞大的码本,发送端做线性预测时,是在码本中找出使预测误差信号最小所对应的样值组合的地址。然后将这个码本的地址传送给接收方。由于发送和接收方均有同样的码本,接收端根据接收到的码本地址可以从码本中取出它所对应的预测误差信号,利用该误差信号激励声道就可以得到重建的语音。由于矢量量化编码传送的只是矢量在码本中的地址而不是样值序列,所以可降低传送中所需的码速率。矢量量化编码的关键问题是产生和搜索码本。码本的产生,可用迭代的方法,利用包含有代表观察量的语音的训练序列,先假定一个起始码本,而最佳码字的获得是平均所有训练序列的矢量,它能映射到原始的码字。至于码本的搜索问题,可用许多次优化算法

36、,以避免进行整个码本的搜索过程。第3章 fpga简介3.1 fpga的概况fpga(现场可编程门阵列)是在可编程器件的基础上发展起来的大规模可编程逻辑器件,是当今应用最广泛的可编程专用集成电路之一,电子设计工程师们可以在办公室或实验室里通过编程设计出所需的专用集成电路,从而大大缩短了产品上市时间,降低了开发成本。此外,fpga具有高集成度、静态可重复编程和动态在系统重构的特性,使得硬件的功能可以像软件一样通过编程来修改。极大地提高了电子系统设计的灵活性和通用性。由于fpga具备这些特点,受到了世界范围内广大电子设计工程师们的普遍欢迎,应用日益广泛。自第一片fpga由美国xilinx公司研究开发

37、成功以来,随着半导体工艺的不断发展,亚微米、深亚微米技术的应用,使得fpga得到了快速的发展。由最初的1200个可用门,发展到了目前的数百万可用门甚至上千万可用门的单片fpga芯片。在结构方面,各fpga生产厂商根据市场需求对其产品做了优化设计,在其产品中添加了高速、稳定的功能模块。这些模块主要有:高速乘法器、加法器、双端口块ram、时钟管理模块等,有些fpga中还添加了dsp核、powerpc、以太网接口等功能模块。233.2 fpga的基本结构典型的fpga通常包含有三类基本资源,可编程逻辑功能块(clb),可编程输入/输出(i/o)和可编程互连资源。可编程逻辑功能块是实现用户功能的基本单

38、元,多个逻辑功能块通常规则的排列成一个阵列结构,分布于整个芯片;可编程输入/输出完成芯片内部逻辑与外部管脚之间的接口,围绕在逻辑单元阵列四周;可编程内部互连资源包括各种长度的连线线段和一些可编程连接开关,它们将各个可编程逻辑块或输入/输出连接起来,构成特定功能的电路。用户可以通过编程决定每个单元的功能以及它们的互连关系,从而实现所需的逻辑功能。不同厂家或不同型号的fpga在可编程逻辑块的内部结构、规模、内部互连的结构等方面存在有较大的差异。除了构成fpga基本结构的三种资源以外,随着工艺的进步和应用系统需求的发展,一般在fpga中还可能包含以下的可选资源:存储器资源,包括块ram和分布式ram

39、;算术运算单元(高速硬件乘法器、加法器);数字时钟管理模块;内嵌dsp硬核资源;多电平标准兼容的i/o接口;高速串行i/o接口;微处理器,等等。图3-1显示了xilinx公司生产的spartan3系列fpga的基本结构。图3-1 xilinx公司spartan3系列fpga的基本结构243.3 fpga开发设计方法fpga的开发可采用多种不同的设计方法,常用的主要有原理图输入、vhdl语言编程、verilog语言编程等。不同的fpga生产厂家一般都推出了其相应的开发工具,如xilinx公司的xilinx ise25开发平台,altera公司的max+plusii26、quartus等。虽然不同

40、厂家提供的开发工具在具体操作上有所不同,但基本上所有的开发工具都支持vhdl语言和verilog语言。vhdl语言27的英文全名是very high speed intergrated circuit hardware description language,即超高速集成电路硬件描述语言。是由美国国防部1982在实施超高速集成电路开发项目的进程中,根据需求提出的用于描述集成电路的结构和功能的标准语言,1987年底,vhdl被ieee确认为标准硬件描述语言(ieee-1076)。自该标准公布之后,由于各eda(电子设计自动化)厂家相继推出了自己的vhdl设计环境,宣布自己的设计工具可以与vhd

41、l接口,使得vhdl在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准硬件描述语言。1993年,ieee对vhdl进行了修订,从更高的抽象层次和系统描述能力上扩展vhdl的内容,并公布了新版本的vhdl标准(ieee-1076-1993)。verilog语言是ic行业使用的一种进行硬件描述的语言。其最初于1983年到1984年之间被设计为一种专用的验证/模拟工具,后来,基于这种语言又开发了其他几种专用分析工具,包括故障模拟器和时序分析器,还为逻辑综合工具和行为综合工具提供了输入规范。1995年12月verilog被ieee接纳为正式标准后,成为一种很有竞争力的硬件描述语言。一般的硬件描述

42、语言可以在三个层次上进行电路描述,其层次由高到低可分为行为级、寄存器传输级和门电路级。与verilog相比,vhdl通常更适于行为级和寄存器传输级的描述,因此适用于电路高级建模。verilog通常只适于寄存器传输级和门电路级的描述,易于控制电路资源。原理图设计方法是一种利用图元和连线进行fpga开发的设计方法,其设计过程更象是在画原理图。具有直观、易操作的特点。但对于规模较大的系统开发则显得繁琐。适于规模较小的应用开发设计。第4章 rpe-ltp语音编解码原理4.1 编码器原理rpe-ltp语音编码算法28属于混合编码方式,采用20ms对语音信号进行分帧,每帧包含160个采样点。语音采样值总长

43、度为16比特,前13位为有效位,后3位为补充位,在编码过程中对后3位不予考虑。在每帧之中再按每40个样点为一组划分子帧,共4个子帧。划分子帧的目的是对语音信号进行长期预测,进一步减少信号的相关度和冗余度。每一帧语音信号经过编码后产生260比特的编码数据。即编码速率为13kbps。rpe-ltp语音编码算法的结构如图4-1所示。图4-1 rpe-ltp语音编码算法结构图由图4-1可以看出,rpe-ltp语音编码算法可以分为以下5个部分组成:预处理、lpc分析、短期分析滤波、长期预测和rpe编码。从编码类型上来看,lpc分析部分属参数编码,短期滤波、长期预测和rpe编码部分属波形编码。4.1.1

44、预处理预处理对语音样值进行偏移补偿和预加重处理。偏移补偿的目的是减少语音信号中直流分量的影响,预加重处理是消除分析过程中的语音的辐射作用,以取得更好的lpc分析性能。在解码器部分再进行解预加重的处理。rpe-ltp编解码算法规定,原始语音样本sop采用16位二进制补码的方式表示。其中前13位为有效位,后3位为补充位。在进行运算时对后3位不予考虑。预处理的数学表述为:偏移补偿:sof(k) = sop(k) sop(k 1) + (327352-15)sof(k 1);预加重:s(k) = sof(k) (281802-15)sof(k 1);4.1.2 lpc分析lpc分析将经过预处理的语音信

45、号按每160个样点为一帧进行分帧,并计算9个帧内自相关值。然后通过schur递归算法计算出语音信号的8个反射系数。由自相关数据进行schur递归运算计算反射系数的流程图如图4-2所示。图4-2 利用schur递归算法计算反射系数流程图根据级联声管模型可知,反射系数是反映声管模型截面积变化的一组参数,且这组参数与短期格形滤波器的滤波参数相等,即反射系数就是格形滤波器的滤波参数。由于反射系数具有分布不均匀的特点,为了合理的配置量化比特,需要将反射系数转换为对数域表示的形式后再对其进行量化和编码。经过量化编码后的反射系数作为语音编码输出的一部分传输到解码器。lpc分析的数学表述为:自相关:;schu

46、r正交递归:按图4-2的流程图进行;对数域转换:,其中signr(i)为r(i)的符号,当r(i)为正时signr(i)为1,r(i)为负时signr(i)为-1;对数域反射系数量化编码:larc(i) = int(a(i)lar(i) + b(i) + 0.5),其中int为取整运算,量化系数a(i)和b(i)的值如表4-1所示。表4-1 对数域反射系数量化编码参数表i12345678a(i)20.00020.00020.00020.00013.63715.0008.3348.824b(i)0.0000.0004.000-5.0000.184-3.500-0.666-2.235max lar

47、c(i)+31+31+15+15+7+7+3+3min larc(i)-32-32-16-16-8-8- 4- 44.1.3 短期分析滤波短期分析滤波对经过预处理和分帧后的语音信号进行短期分析滤波。去除掉语音之间的冗余成分。从语音发音原理上讲,这一部分就是利用语音信号的实际采样值,通过分析计算出语音的激励源数据的过程。经过短期分析滤波所得到的信号称为短期滤波余量信号。由于在lpc分析过程中利用的是由帧内自相关数据计算出的反射系数,为了防止在语音帧交替过程中因滤波参数发生突变而出现的短暂寄生现象,需要对反射系数进行处理。处理的过程包括反射系数量化编码的解码、对数域反射系数插值及对数域反变换。短期

48、分析滤波器采用格形滤波器,其结构图如图4-3所示。图4-3 短期分析滤波器短期分析滤波的数学表述为:对数域反射系数反量化解码:lard(i) = (larc(i) b(i) / a(i);lard插值:,其中n为样本在帧中的序号。lardp(i)为前一帧的对数域反射系数反量化解码结果;对数域反射系数反变换:,短期分析滤波:每一帧短期分析滤波开始时,需要将滤波器状态向量u0u8的值清零。即:ui,0 = 0,i = 0,8。4.1.4 长期预测长期预测将短期滤波余量信号按每40个为一组划分子帧,在子帧间利用语音信号在短时间内具有相关性的特点进行长期预测分析。预测是根据先前子帧的重构短期余量信号与

49、当前子帧短期滤波余量信号的互相关,寻找出相关性最好的重构短期余量信号的位置及相应的预测增益并计算出预测值,最后将当前子帧的短期余量信号与预测值相减,得出长期预测余量。另外,在长期预测中还要完成重构余量信号的更新,即当前子帧的预测值与重构的长期预测余量相加,利用所得结果更新重构短期余量信号,用于后一子帧的预测。由于rpe-ltp编解码算法中的长期预测为帧内预测,所以长期预测的范围控制在120个样值以内,并且在每一帧的第一子帧预测开始之前要将重构的短期滤波余量信号清零。在长期预测过程得出的滞后参数和预测增益参数经过量化后作为编码输出的一部分传输到解码器。长期预测的数学表述为:划分子帧:将输入的160个短期余量信号分为4个子帧,每个子帧含40个值,为方便起见,将各子帧表示为:d(kj+k),其中,j = 0,3表示子帧序号;kj = k0 + j40表示各子帧的第一个短期余量信号;k = 0,39表示各子帧中对应的短期余量信号。计算ltp参数:1、计算当前子帧短期余量信号d(kj + i),(i=0,39)与重构短期余量信号dp(kj + i),(i = -120,-1)的互相关rj(t):;2、找出互相关最大值对应的t值作为长期预测的滞后参数nj;3、计算增益因子bj:。长期预测参数量化编码及反量化:将

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论