首页 PCM(脉冲编码调制)介绍及PCM编码的原理 毕业论文---PCM量化13折线

PCM(脉冲编码调制)介绍及PCM编码的原理 毕业论文---PCM量化13折线

举报
开通vip

PCM(脉冲编码调制)介绍及PCM编码的原理 毕业论文---PCM量化13折线PCM(脉冲编码调制)介绍及PCM编码的原理 毕业论文---PCM量化13折线 PCM(脉冲编码调制)介绍及PCM编码的原理 摘 要 在数字通信信道中传输的信号是数字信号,数字传输随着微电子技术和计算机技术的发展,其优越性日益明显,优点是抗干扰强、失真小、传输特性稳定、远距离中继噪声不积累、还可以有效编码、译码和保密编码来提高通信系统的有效性,可靠性和保密性。另外,还可以存储,时间标度变换,复杂计算处理等。 而模拟信号数字化属信源编码范围,当然信源编码还包括并/串转换、加密和数据压缩。这里重点讨论模拟信号数...

PCM(脉冲编码调制)介绍及PCM编码的原理  毕业论文---PCM量化13折线
PCM(脉冲编码调制)介绍及PCM编码的原理 毕业论文---PCM量化13折线 PCM(脉冲编码调制)介绍及PCM编码的原理 摘 要 在数字通信信道中传输的信号是数字信号,数字传输随着微电子技术和计算机技术的发展,其优越性日益明显,优点是抗干扰强、失真小、传输特性稳定、远距离中继噪声不积累、还可以有效编码、译码和保密编码来提高通信系统的有效性,可靠性和保密性。另外,还可以存储,时间标度变换,复杂计算处理等。 而模拟信号数字化属信源编码范围,当然信源编码还包括并/串转换、加密和数据压缩。这里重点讨论模拟信号数字化的基本方法——脉冲编码调制,而模拟信号数字化的过程(得到数字信号)一般分三步:抽样、量化和编码。 本文讲述了PCM(脉冲编码调制)的简单介绍,以及PCM编码的原理,并分别对PCM的各个过程,如基带抽样、带通抽样、13折线量化、PCM编码以及PCM译码进行了详细的论述,并对各过程在MATLAB7.0上进行仿真,通过仿真结果,对语音信号的均匀量化以及非均匀量化进行比较,我们得出非均匀量化教均匀量化更加有优势。 关键词:脉冲编码调制 抽样 非均匀量化 编码 译码 I Abstract In the digital communication channel signal is digital signal transmission, digital transmission with the microelectronics and computer technology, its advantages become increasingly evident, the advantage of strong anti-interference, distortion, transmission characteristics of stable, long-distance relay is not the accumulation of noise Can also be effective encoding, decoding and security codes to improve the effectiveness of communications systems, reliability and confidentiality. Digitized analog signal range of source coding is, of course, also include the source code and / serial conversion, encryption and data compression. This focus on the simulation of the basic methods of digital signals - pulse code modulation, while the analog signal the digital process (to get digital signals) generally three steps: sampling, quantization and coding. This paper describes the PCM (pulse code modulation) in a brief introduction, and the PCM coding theory, and were all on the PCM process, such as baseband sampling, bandpass sampling, 13 line quantization, PCM encoding and decoding PCM a detailed Are discussed and the process is simulated on MATLAB7.0, the simulation results, the uniformity of the speech signal quantification and comparison of non-uniform quantization, we have come to teach non-uniform quantization advantage of more than uniform quantization Keywords:Pulse Code Modulation Sampling Non-uniform quantization Coding Decoding II 目录 1 前 言 ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????1 2 PCM原理 ?????????????????????????????????????????????????????????????????????????????????????????????????????????????2 2.1 引言 ??????????????????????????????????????????????????????????????????????????????????????????????????????????? 2 2.2 抽样(Sampling) ??????????????????????????????????????????????????????????????????????????????????????? 3 2.2.1. 低通模拟信号的抽样定理 ???????????????????????????????????????????????????????????? 3 2.2.2 抽样定理 ?????????????????????????????????????????????????????????????????????????????????????????? 4 2.2.3. 带通模拟信号的抽样定理??????????????????????????????????????????????????????????????? 7 2.3 量化(Quantizing) ???????????????????????????????????????????????????????????????????????????????? 8 2.3.1 量化原理 ?????????????????????????????????????????????????????????????????????????????????????????? 8 2.3.2均匀量化 ????????????????????????????????????????????????????????????????????????????????????????? 10 2.3.3 非均匀量化????????????????????????????????????????????????????????????????????????????????????? 11 2.4 编码(Coding) ????????????????????????????????????????????????????????????????????????????????????? 18 2.5 译码 ????????????????????????????????????????????????????????????????????????????????????????????????????????? 24 2.6 PCM处理过程的其他步骤 ????????????????????????????????????????????????????????????????????? 26 2.7 PCM系统中噪声的影响 ????????????????????????????????????????????????????????????????????????? 27 3 算例分析 ?????????????????????????????????????????????????????????????????????????????????????????????????????????? 29 3.1 无噪声干扰时PCM编码 ?????????????????????????????????????????????????????????????????????????? 30 3.2 噪声干扰下的PCM编码 ?????????????????????????????????????????????????????????????????????????? 36 结论 ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 42 致谢 ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 43 参考文献 ??????????????????????????????????????????????????????????????????????????????????????????????????????????????? 44 附录 ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? 45 III 1 前 言 数字通信系统中信道中传输的是数字信号,数字传输随着微电子技术和计算机技术的发展,其优越性日益明显,优点是抗干扰强、失真小、传输特性稳定、远距离中继噪声不积累、还可以有效编码、译码和保密编码来提高通信系统的有效性,可靠性和保密性。另外,还可以存储,时间标度变换,复杂计算处理等。 但自然界中,有些信源是以模拟形式出现的,如话音、图像等。因此在进行数字通信往往需先对信号(模拟的)数字化。模拟信号数字化属信源编码范围,当然信源编码还包括并/串转换、加密和数据压缩。这里重点讨论模拟信号数字化的基本方法——脉冲编码调制,而模拟信号数字化的过程(得到数字信号)一般分三步:抽样、量化和编码。但是这三个步骤是怎样的完成的呢,我们知道电话语音信号是用脉冲编码体制技术进行编码传输,但是究竟每一步怎样语音信号都有怎样的改变呢,本文将进行详细讲述 本论文主要对模拟信号数字化传输过程进行分析仿真,包括脉码调制(Pulse Code Modulation)的原理过程,算例分析等,经过信号调制原理的分析,并在MATLAB7.0编译环境下编写相应程序平台,便于实验的直观分析和数据分析,最后我们得出在相同量化电平级数M下,非均匀量化输出信噪比较均匀量化要小,对于语音信号来说,小信号的出现概率大于大信号的出现概率,非均匀量化的优势将更加明显的结论。通过对脉冲编码调制的分析加深了对语音信号经脉冲编码调制处理过程的理解,锻炼了学生科研与写作能力,为通信原理课程建设提供素材,并为教学提供仿真平台。 由于时间的仓促以及本人的水平有限,文中难免有不足之处,恳请各位老师指正,在此不慎感激。 1 2 PCM原理 2.1 引言 现在的数字传输系统都是采用脉码调制(Pulse Code Modulation) 体制。将模拟语音信号变换为数字信号的编码方式,特别是对于音频信号。PCM 对信号每秒钟取样 8000 次;每次取样为 8 个位,总共 64kbps,取样等级的编码有二种标准。PCM有两个标准即E1和T1。我国采用的是欧洲的E1标准。T1的速率是1.544Mbit/s,E1的速率是2.048Mbit/s。 脉冲编码调制主要经过3个过程:抽样、量化和编码。抽样过程将连续时间模拟信号变为离散时间、连续幅度的抽样信号,量化过程将抽样信号变为离散时间、离散幅度的数字信号,编码过程将量化后的信号编码成为一个二进制码组输出。下面将PCM脉冲编码调制原理作着重介绍,对这里不再赘述。 所谓脉冲编码调制,就是将模拟信号抽样量化,然后将已量化值变换成代码。下面将用一个PCM系统的原理框图简要介绍,原理框图如图2.1所示。 量化器 编码器 抽 样 PCM信号保 持 模拟信号输入 输入 冲激脉冲 干扰 信 道 模拟信号 输出 低通 PCM信号译码器 滤波器 输出 图2.1 PCM原理方框图 2 在编码器中由冲激脉冲对模拟信号抽样,得到在抽样时刻上的信号抽样值。这个抽样值仍是模拟量。在它量化之前,通常由保持电路(holding circuit)将其作短暂保存,以便电路有时间对其量化。在实际电路中,常把抽样和保持电路作在一起,称为抽样保持电路。图中的量化器把模拟抽样信号变成离散的数字量,然后在编码器中进行二进制编码。这样,每个二进制码组就代表一个量化后的信号抽样值。图中的译码器的原理和编码过程相反。其中,量化与编码的组合称为模/数变换器(A/D变换器); 译码与低通滤波的组合称为数/模变换器(D/A变换器)。 2.2 抽样(Sampling) 2.2.1. 低通模拟信号的抽样定理 模拟信号一般是指在时间上连续的信号,如果在一系列离散点上对该信号抽取样值,则称为抽样。抽样过程可以看作是用周期性单位冲激脉冲和此模拟信号相乘,其结果是一系列周期性的冲激脉冲,脉冲实际有一很窄的宽度,其面积与模拟信号的取值成正比。 如果抽样速率足够大,则离散冲激脉冲能够完全代替原模拟信号,即由这些传输的离散冲激脉冲可以恢复出原模拟信号。 图2.2 抽样信号例图 3 A/D转换时,抽样间隔越宽,量化越粗,虽然信号数据处理量少,但精度不高,甚至可能失掉信号最重要的特征。 抽样定理:设一个连续模拟信号m(t)中的最高频率 < f,则以间隔时间为TH ?1/(2fH)的周期性冲激脉冲对它抽样时,m(t)将被这些抽样值所完全确定。 2.2.2 抽样定理 设有一个最高频率小于f的信号m(t) ,将这个信号和周期性单位冲激脉H 冲δ(t)相乘。δ(t)的重复周期为T,重复频率为f = 1/T。乘积就是抽样信号,TTs 它是一系列间隔为T 秒的强度不等的冲激脉冲。 mtmtt()()(),, (2.1) sT 这些冲激脉冲的强度等于相应时刻上信号的抽样值。用m(t) =Σm(kT)表示s此抽样信号序列,如下图2.3所示。 图2.3 信号抽样过程 令M(f)、,(f)和M(f)分别表示m(t)、,(t)和m(t)的频谱。按照频率卷积,sTs 4 定理,m(t),(t)的傅里叶变换等于M(f)和,(f)的卷积。 T,m(t)的傅里叶变换M(f)可以写为: ss (2.2) MfMff()()(),,,s,, (f)是周期性单位冲激脉冲的频谱,可以求出为 , ,1 ,,,,ffnffT,  ()()1/,ss,Tn,,, ,1,, (2.3) MfMffnf,()()(),,,,ss,,Tn,,,,, 利用卷积公式 ,fttftdft()()()()(),,,,,,,,, ,,, , ftttfttdftt()(-)()(--)(-),,,,,,,,000,,, 求得: ,,11,, (2.4) MfMffnfMfnf,()()()(),,,,,,,sss,,TTn,,,,,,, 由于M(f - nf)是信号频谱M(f)在频率轴上平移了nf的结果,所以抽样信ss 号的频谱M(f)是无数间隔频率为f的原信号频谱M(f)相叠加而成。 ss 5 图2.4 信号抽样过程的频谱变化 已假设信号m(t)的最高频率小于f,所以若频率间隔f , 2f,则M(f)中HsHs包含的每个原信号频谱M(f)之间互不重叠。这样就能够从M(f)中用一个低通滤s 波器分离出信号m(t)的频谱M(f),也就是能从抽样信号中恢复原信号。 恢复原信号的条件是: ff,2sH 即抽样频率f应不小于f的两倍。这一最低抽样速率2f称为奈奎斯特速率。sHH 与此相应的最小抽样时间间隔1/(2f)称为奈奎斯特间隔。如果抽样速率小于奈H 奎斯特速率,则相邻周期频谱间将发生频谱重叠(即信号m(t)中不同频率分量的信号重叠在一起,不可分离),不能分离出原信号频谱M(f)。 由M(f)的频谱图可知,用一个截止频率为f的理想低通滤波器就能够从sH 抽样信号中分离出原信号(取出f=0附近的频谱)。 实用滤波器的截止边缘不可能做到理想的陡峭。所以,实用的抽样频率fs必须比2fH 大一些。例如,典型电话信号的最高频率通常限制在3400 Hz,而 6 抽样频率通常采用8000Hz。以上讨论均限于频带有限的信号m(t)。严格讲,频带有限的信号并不存在,只要信号存在于时间的有限区间,它就包含无限频率分量。 实际上对所有信号,频谱密度函数在较高频率上都要减小,大部分能量由一定频率范围内的分量所携带。因而在实用意义上,信号m(t)可以认为是频带有限的,高频分量所引入的衰减可以忽略不计。 2.2.3. 带通模拟信号的抽样定理 设带通模拟信号的频带限制在f和f之间,如图2.5所示,则信号带宽B = LH f -f。可证,此带通模拟信号所需最小抽样频率f等于 HLs k (2.5) ,,2(1)fBsn 图2.5 带通信号 n为商(f/ B)的整数部分,n =1,2,…;k为商(f/ B)的小数部分,0 < k < 1 HH f和f关系曲线: sL ,,()/fBB,,,k,,L取小数fBB,,,,2(1)21 (2.6) ,,snfBB()/,,,L,,取整数,, 分析: (1)当f位于0~B区间时(接近于B),n=1,k从0变化到1,即f随f增加而LSL线性增加,从2B变化到4B。 (2)当f位于B~2B区间时,n=2, k也是从0变化到1, f随f增加而线性LSL 7 增加,从2B变化到3B。 (3) 当f= 0时,f,2B,这是低通模拟信号的抽样情况;当f很大时,f趋L s Ls近于2B,表明这是一个窄带信号。 根据抽样定理可知,抽样是把模拟信号以其信号带宽2倍以上的频率提取样值,变为在时间轴上离散的抽样信号的过程。例如,话音信号带宽被限制在0.3,3.4kHz内,用8kHz的抽样频率(fs),就可获得能取代原来连续话音信号的抽样信号。对抽样信号进行检波和平滑滤波,即可还原出原来的模拟信号。 2.3 量化(Quantizing) 抽样信号虽然是时间轴上离散的信号,但其幅值(空间上)仍然是模拟信号,其样值在一定的取值范围内,可有无限多个值。显然,对无限个样值一一给出数字码组来对应是不可能的。为了实现以数字码表示样值,必须采用“四舍五入”的方法把样值分级“取整”,使一定取值范围内的样值由无限多个值变为有限个值。这一过程称为量化。 2.3.1 量化原理 设模拟信号的抽样值为m(kT),T是抽样周期,k是整数。此抽样值仍然是一个取值连续(有无数个可能取值)的变量。若仅用N个不同的二进制数字码元 N来代表此抽样值的大小,则N个不同的二进制码元只能代表M = 2个不同的抽样值。 将抽样值的范围划分成M个区间,每个区间用一个电平表示。这样,共有M个离散电平,称为量化电平。用这M个量化电平表示连续抽样值的方法称为量化(有限个可能取值,不连续),其量化过程如下图2.6所示。 8 图2.6 信号的量化 M个抽样值区间(M=6)是等间隔划分的,称为均匀量化。M个抽样值区间也可以不均匀划分,称为非均匀量化。 如果发送端用有限个电平来表示模拟抽样值,且二个电平间隔的一半比噪声的最大幅度还要大,噪声的影响就可消除,特别是多次中继接力传输时,噪声不会积累。抽样是把时间连续的模拟信号变成了时间上离散的模拟信号,量化则进一步把 时间上离散但幅度上仍连续 的信号变成了时间、幅度上都离散的信号。 量化一般公式: 设m(kT)为模拟信号抽样值,m(kT)表示量化后的量化信号值,q, q1q,…,q, …, q是量化后信号的6个可能输出电平,m,m, m, …,m, …, m,2i6012i5m为量化区间的端点。则量化信号写为 6 mkTqmmkTm(),(),,,当qiii,1 量化过程可认为是在一个量化器中完成的。量化器的输入信号为m(kT),输出信号为m(kT) 。 q 上例量化后信号m共有6个可能输出的电平。 q 9 2.3.2均匀量化 M设模拟信号的取值范围在和b之间,量化电平数为,则在均匀量化时a 的量化间隔为: ba,,,v M 则量化区间端点 maiv,,,iM,0,1,2......i 则量化输出电平取为量化间隔的中点,即 mm,ii,1q, iM,0,1,2......i2 显然量化输出电平和量化前信号的抽样值一般是不一样的,即量化输出电平有误差,这个误差称为量化噪声,并用信号功率与量化噪声之比(简称信号量噪比)来衡量此误差对信号影响的大小。对于给定的信号最大幅度,量化电平数愈多,量化噪声愈小,信号量噪比就越高。信号量噪比是量化器的主要指标之一,下面对均匀量化信号时的平均信号量噪比作定量分析。 N在均匀量化时,量化噪声功率的平均值可用下式表示: q Mbb222,,NEmmmmfmdmmqfmdm,,,,,,,,,,,,,,,,,qkqkqkkkikk,,,,aa,,,i1 (2.7) mmkT()式3.7中:m为模拟信号的抽样值,即;为量化信号值,即;mkT()qqk fmm为信号抽样值的概率密度;E表示求统计平均值;M为量化电平数; ,,kk m信号的平均功率可以表示为 k b22SEmmfmdm,,() (2.8) ,,okkkk,a m若已知信号凡人功率密度函数,则由上式可以计算出平均信号量噪比。 k 例如设一个均匀量化器的量化电平数为M,其输入信号抽样值在区间 10 ,aa,内具有均匀的概率密度,则根据上式可求该量化器的平均信号量化噪声,, 功率为: 32MM2mMv,2,,,,1,vi,,,, NEmmmqfmdm,,,,,,,,,,,,,,,,qkqkikk,,,,,m,,,1i21224aa,,,,ii11,, (2.9) Mva,,2因为 所以有 2,v,, N,q12 22bMv,,,1,,22SEmmdm,,,() (2.10) okkk,,,a212a,, S2o 即写成 ,MNq So (2.11) ()20lg,MdB,,dBNq 由上式2.11可以看出,量化器的平均输出信号量噪比随量化电平数M的增大而增大。 ,v在实际应用过程中,对于给定的量化器,量化电平数M和量化间隔都是 N确定的,所以由式 可知,量化噪声也是确定的,但是信号强度可能随时间q 变化,像语音信号就是这样,当信号小时,信号量噪比也小。所以,这种均匀量化器对于小输入信号很不利。为了克服这个缺点,改善小信号时的信号量噪比,在实际应用中常采用非均匀量化。 2.3.3 非均匀量化 在非均匀量化时,量化间隔是随信号抽样值的不同而变化的。信号抽样值 ,v,v小时,量化间隔也小;信号抽样值大时,量化间隔也大。实际中,非均 11 匀量化的实现方法通常是在量化之前,先将信号抽样值压缩,再进行均匀量化。这里的压缩是用一个非线性电路将输入电压变换成输出电压: yx yfx, ,, 如图3.7所示非均匀量化压缩特性: 图2.7 非均匀量化压缩特性 压缩器输入电压xx=:归一化的压缩器输入电压  压缩器可能的最大输入电压 压缩器输出电压 yy=:归一化的压缩器输出电压  压缩器可能的最大输出电压 将转换成后,通过对均匀量化,则对就是非均匀量化。xyyx 当量化区间划分很多时,在每一量化区间内压缩特性曲线可以近似看作为一段直线。因此,这段直线的斜率可以写为: ,ydydx,,,y即,,,xy ,xdxdy 纵坐标y 在0和1之间均匀划分成N个量化区间,每个量化区间的间隔为 1 ,,yN dxdx1dx,,Nx,,,,xy dydyNdy 对不同的信号强度,要求保持信号量噪比恒定,则当输入电压x减小时,应当使量化间隔x 按比例地减小,即有 dx ,kxdy 12 lnxkyc,, 边界条件:当x = 1时,y = 1,求得c = -k lnxkyk,, 1 (2.12) yx,,1ln k 当压缩特性满足上式3.12时,可获得理想的压缩效果,即信号量噪比与信号幅度无关,曲线形状与k有关。但是,当输入x =0时,输出y =-?,这和要求的压缩特性(x=0时,y=0)有差距。实用中要对这个理想压缩特性作适当修正,使当x=0时,y=0。 在实际电话语音信号中,关于电话信号的压缩特性,ITU制定了两种建议, ,AA即压缩率和压缩率,我国大陆、欧洲各国以及国际间互联时采用压缩率, ,北美、日本和韩国等少数国家和地区采用压缩率: μ律与A律压缩特性 μ律: ,1n(1,x)y,,(,1,x,1)(美、日) (2.13) ,1n(1,) A律: ,Ax10,|x|,,,1,1nAAy,A,87.6 (我国、欧洲)(2.14) ,1,1nA|x|1,,,|x|,1,1,1nAA, 13 式中,x为归一化输入,y为归一化输出,A、μ为压缩系数。 (a) (b) ,图2.8 (a)A压缩率曲线示意图 (b)压缩率曲线示意图 由于我国使用的是A律压缩,这里只对A律压缩特性作主要介绍: 上面得到的A律表示式有图知是一条连续的平滑曲线,用电子线路很难的准确地实现。 两种常用数字压扩技术:(1)A律13折线压扩——13折线近似逼近A=87.6的A律压扩特性;(2) μ律15折线压扩——15折线近似逼近μ=255的μ律压扩特性。 现在由于数字电路技术的发展,这种特性很容易用数字电路来近似实现。 14 其中13折线特性就是近似于A律的特性,即如下图特性曲线: 图2.9 13折线特性图 其具体分法如下: 先将X轴的区间[0,1]一分为二,其中点为1/2,取区间[1/2,1]作为第八段; 区间[0,1/2]再一分为二,其中点为1/4,取区间[1/4,1/2]作为第七段; 区间[0,1/4]再一分为二,其中点为1/8,取区间[1/8,1/4]作为第六段; 区间[0,1/8]一分为二,中点为1/16,取区间[1/16,1/8]作为第五段; 区间[0,1/16]一分为二,中点为1/32,取区间[1/32,1/16]作为第四段; 区间[0,1/32]一分为二,中点为1/64,取区间[1/64,1/32]作为第三段; 区间[0,1/64]一分为二,中点为1/128,区间[1/128,1/64]作为第二段; 区间[0,1/128]作为第一段。 15 然后将Y轴的[0,1]区间均匀地分成八段,从第一段到第八段分别为[0,1/8],(1/8,2/8],(2/8,3/8],(3/8,4/8],(4/8,5/8],(5/8,6/8], (6/8,7/8],(7/8,1]。分别与X轴对应。 表2.1 折线分段时的x 值与计算x 的值比较表 3567124 y 0 1 8888888 1111111 x 0 1 3.9315.61.9812860.630.67.79 13折1111111 0 1 643216842128线x 8 段落号 1 2 3 4 5 6 7 11 斜率 16 16 8 4 2 1 24 由表3.1中对这两种压缩方法做了比较,13折线法和A=87.6时的A压缩率法十分的接近。因此可以用13折线法来近似A压缩率。 因为话音信号为交流信号,即输入电压有正负极性,所以,上述的压缩特x 性只是实用的压缩特性的一半。的取值应该还有负的一半。这就是说,在坐x 标系的第三象限还有对原点奇对称的量一般曲线,即如上图,在图中,第一象限中的第一段和第二段折线斜率相同构成一条直线。同样,在第三象限的第一段和第二段折线斜率也相同,并且和第一象限中的斜率相同,所以这四段折线构成了一条直线,因此,在这正负两个象限中的完整压缩曲线共有13折线,故称13折线压缩特性,13折线示意图如下图3.10。 16 图2.10 对称输入13折线压缩特性 实现13折线量化的matlab程序: function y=zhe13(x) x=x/max(x); z=sign(x); x=abs(x); for i=1:length(x) if ((x(i)>=0)&x(i)<1/64) y(i)=16*x(i); else if ((x(i)>=1/64)&x(i)<1/32) y(i)=8*x(i)+1/8; else if ((x(i)>=1/32)&x(i)<1/16) y(i)=4*x(i)+2/8; else if ((x(i)>=1/16)&x(i)<1/8) y(i)=2*x(i)+3/8; else if ((x(i)>=1/8)&x(i)<1/4) 17 y(i)=x(i)+4/8; else if ((x(i)>=1/4)&x(i)<1/2) y(i)=(1/2)*x(i)+5/8; % else if ((x(i)>=1/2)&x(i)<1) else y(i)=(1/4)*x(i)+6/8; end end end;end;end;end;end; y=z.*y; 2.4 编码(Coding) 量化后的抽样信号在一定的取值范围内仅有有限个可取的样值,且信号正、负幅度分布的对称性使正、负样值的个数相等,正、负向的量化级对称分布。若将有限个量化样值的绝对值从小到大依次排列,并对应地依次赋予一个十进制数字代码(例如,赋予样值0的十进制数字代码为0),在码前以“,”、“,”号为前缀,来区分样值的正、负,则量化后的抽样信号就转化为按抽样时序排列的一串十进制数字码流,即十进制数字信号。简单高效的数据系统是二进制码系统,因此,应将十进制数字代码变换成二进制编码。根据十进制数字代码的总个数,可以确定所需二进制编码的位数,即字长。这种把量化的抽样信号变换成给定字长的二进制码流的过程称为编码。 二进制码可以经受较高的噪声电平的干扰,并易于再生,因此PCM中一般采用二进制码。对于Q个量化电平,可以用k位二进制码来表示,称其中每一种组合为一个码字。在点对点之间通信或短距离通信中,采用k=7位码已基本能满足质量要求。而对于干线远程的全网通信,一般要经过多次转接, 要有较高的质量要求,目前国际上多采用8位编码PCM设备。 18 码型指的是把量化后的所有量化级,按其量化电平的大小次序排列起来,并列出各对应的码字,这种对应关系的整体就称为码型。在PCM中常用的码型有自然二进制码、折叠二进制码。在表2.2中给出的二进制编码,是按照二进制数的自然规律排列的,称为自然二进制码。对电话语音信号编码中,除自然二进制码外,还有折叠二进制码,折叠二进制码如在表中除了其最高位符号相反外,其上下两部分还呈映像关系,或称折叠关系。 表2.2 自然二进制码和折叠二进制码 量化值序号 量化电压极性 自然二进制码 折叠二进制码 15 1111 1111 14 1110 1110 13 1101 1101 12 1100 1100 正极性 11 1011 1011 10 1010 1010 9 1001 1001 8 1000 1000 7 0111 0000 6 0110 0001 5 0101 0010 4 0100 0011 负极性 3 0011 0100 2 0010 0101 1 0001 0110 0 0000 0111 从表中我们可以看到折叠二进制码的特点:16个双极性量化值分为两部分,0~7个量化值对应于负极性电压,8~15个量化值对应于正极性电压,1000(+0) 19 与0000(-0)之间存在一个级差。 除了其最高位符号相反外,上下两部分呈现映像关系,或称折叠关系。 最高位表示电压极性的正负(1代表正电压,0代表负电压),而用其它位来表示电压的绝对值。 用最高位表示极性后,双极性电压可以采用单极性编码方法处理,使编码电路和编码过程大为简化。 注:由13折线法,对正、负电压,均分为8段,二进制自然码所表示的最大负电压为0000。改用二进制折叠码后,最大负电压用0111表示,0反映了负值,111反映了大小。 在语音通信中,需要采用8位PCM编码来保证通信质量。折叠码的另一个优点是误码对于小电压的影响较小。 ),在传输时发生1个符号错误,如变成0000。例如:1个码组为1000(小信号 对自然码,电压值从8变成0,误差为8;对折叠码,从8变成7,误差为1。 又1个码组为1111(大信号),如果错成0111,则自然码从15变成7,误差仍为8;而折叠码则从15错为0,误差增大为15。 结果表明:折叠码对于小信号有利。由于语音信号小电压出现的概率较大,所以折叠码有利于减小语音信号的平均量化噪声. 13折线法中采用的折叠码实际有8位,即用8位折叠二进制码来表示输入信号的抽样量化电平。第一位c1表示量化值极性正负。后7位分为段落码和段内码两部分,用于表示量化值的绝对值(即c2 c3 …c7大小表示量化的值) 。第2至4位(c2 c3 c4)是段落码,共计3位,有8种可能状态 来分别表示8个段落的段落电平(斜率);其它4位(c5 ~ c8)为段内码,表示每一段落内的16种量化电平。段内码代表的16个量化电平是均匀划分的。 段落码与段内码合在一起构成的7位码总共能表示27 , 128种量化值。 这种编码方式是把压缩、量化和编码合为一体的方法。 20 表2.3 8位非线性编码的码组结构 极性码 段落码 段内码 cccccccc12345678 其中,第1位码c的数值“1”或“0”分别代表信号的正、负极性,称为1 极性码。从折叠二进制码的规律可知,对于两个极性不同,但绝对值相同的样值脉冲,用折叠码表示时,除极性码不同外,其余几位码是完全一样的。因c1 此在编码过程中,只要将样值脉冲的极性判出后,编码器便是以样值脉冲的绝对值进行量化和输出码组的。这样只要考虑13折线中对应于正输入信号的8段折线就行了。这8段折线共包含128个量化级,正好用剩下的7位码ccccccc()就能表示出来。 2345678 表2.4 段落码 ccc 段落码234段落序号 段落范围(量化单位) 8 111 1024-2048 7 110 512-1024 6 101 256-512 5 100 128-256 4 011 54-128 3 010 32-64 2 001 16-32 1 000 0-16 21 表2.5 段内码 段内码 段内码cccccccc56785678量化间隔 量化间隔 15 1111 7 0111 14 1110 6 0110 13 1101 5 0101 12 1100 4 0100 11 1011 3 0011 10 1010 2 0010 9 1001 1 0001 8 1000 0 0000 在仿真编码时,先确定极性码z=sign(y);再采用逐次比较的办法,确定段 落码;最后,由量化间隔与段落起点电平的差值来确定段内码。实现PCM编码 的matlab程序请查看附录。 综上所述,编码程序算法流程图如下: 22 抽样信号 m 否 m,0? 是 C1=0 C1=1? 否 m>128? 是 C2=1? C2=0 否 否 m>32? m>512? 是 是 C3=0? C3=1? C3=0? C3=1? 否 否 否 否 m>1024? m>10m>16m>256? 24? ? 是 是 是 是 C4=0 C4=1 C4=1 C4=1 C4=1 C4=0 C4=1 C4=0 段落起点电平与段内量化间隔确定段内码 所在码段:DuanluoN = (C2C3C4) + 1 C1C2C3C4C5C6C7C8 编码结束 图2.11 编码算法程序流程图 23 2.5 译码 对于输入的PCM信号,可以看成有限个数字码组,每个码组由八位码元构成,分别是cccccccc,译码时,先由段落码确定编码所在段落,确定段落12345678 起点电平和量化间隔,由段落起点电平加上段内码与相应量化间隔的乘积之和,即得到了抽样信号的绝对值,再由极性码来确定抽样值的正负号: C1 (1)确定段落码DuanluoN(i):即段落码为bin2dec(num2str(f(i,2:4))) + 1; (2)确定量化单位LianghuaDanweiN(i): 即量化单位由PAM信号后四位确定 bin2dec(num2str(f(i,5:8))); (3)则可以求的译码值Signal_trans(i) :即符号位(sign1 )* (起点电平(Mark(i)) +量化值( Lianghuazhi(i)) * 量化单位 (LianghuaDanweiN(i))); 译码算法matlab的实现: function code=pcmdecode(f) QidianDianping = [0,16,32,64,128,256,512,1024]; %段落起点电平 LianghuaJiange = [1,1,2,4,8,16,32,64]; %各段落量化间隔 len=length(f); LianghuaDanweiN = zeros(1,len); Lianghuazhi = zeros(1,len); Mark = zeros(1,len); Signal_trans = zeros(1,len); for i = 1:len DuanluoN(i) = bin2dec(num2str(f(i,2:4))) + 1; 24 LianghuaDanweiN(i) = bin2dec(num2str(f(i,5:8))); Mark(i) = QidianDianping(DuanluoN(i)); Lianghuazhi(i) = LianghuaJiange(DuanluoN(i)); sign = 1; if(f(i,1) == 0) sign = -1; end Signal_trans(i)=sign*(Mark(i)+Lianghuazhi(i)* LianghuaDanweiN(i)); end for i = 1:len Signal_trans(i) = Signal_trans(i)/2048; % Signal_trans(i) = 10 * (Signal_trans(i)/2048); end code=Signal_trans; 译码算法流程图如下图: 25 给定码组C1C2C3C4C5C6C7C8 C1=1? Sign=-+1 Sign=--1 段落码和段落间隔 段起点电平及段内量化值 m=sign*(段起点电平+段内量化值) 结束 图2.6 译码程序算法流程图 2.6 PCM处理过程的其他步骤 由图3-1所示,在整个PCM处理过程中,除了抽样、量化和编码还有码型转换、噪声干扰以及低通滤波,这3个过程在语音信号处理过程中是必不可少的,但是在本文中,由于不是本文所要研究的内容,这里仅作简单的介绍。 (1)码型转换 码型转换,即信道编码, 是为了与信道的统计特性相匹配,并区分通路和提高通信的可靠性,而在信源编码的基础上,按一定规律加入一些新的监督码元,以实现纠错的编码。在PCM编码后的码组因信道存在干扰而会出现较大的误差, 26 因此不适合在信道中传输,因此需将二进制码组进行适当的转换,提高传输的可靠性和抗干扰性。 信道编码包括包括分组码、卷积码、Turbo码、交织及扰码,本仿真程序使用双极性归零码模拟信道传输。 (2)信道干扰噪声以及滤波 道中不可避免存在噪声,因此也就不可避免的存在误码,本文在仿真码信 型传输时,加入适当随机二进制码,使其适当产生误码,模拟信道噪声的干扰。 由于噪声的加入,而噪声的频谱多在高频部分,有用的声音信号都在低频部分,如30Hz-3000Hz处,利用这个原理使用低通滤波器进行滤波,滤除噪声信号,还原出原始信号。 由于这些过程不是本文所研究的内容,这里就不在过多介绍,但是在仿真中是绝对不可少的,具体原因会在以下算例分析中予以解说。 2.7 PCM系统中噪声的影响 PCM系统中的噪声有两种:加性噪声和量化噪声 (1)加性噪声的影响 错码分析:一般只需考虑在码组中有一位错码的情况,这因在同一码组中出现两个以上错码的概率非常小,可以忽略。 例如,当误码率为Pe = 10-4时(每个码元的平均误码),在一个8位码组中出现一位错码的概率为P1 = 8Pe ,8 , 10-4,而出现2位错码的概率为 87,22427,,PCP ,,,,,(10)2.810e282 仅讨论高斯加性白噪声对均匀量化的自然码的影响。可认为码组中出现的错码是彼此独立的和均匀分布的。 设码组长度为N 位,误码率为P,可证信噪比为: e 2NS2, (2.15) ,2(1)N,NP12e 27 2(N+1)2N在大信噪比条件下,即当2P << 1时,上式变成S / N =2。 e 2(N+1)在小信噪比条件下,即当2P >> 1时,上式变成S / N =1/(4P) ee(2)量化噪声的影响 还可求出输出信号量噪比等于 : S22N (2.16) ,,2MNq N为经过低通滤波器后,输出的量化噪声功率。 q 上式表明:PCM系统的输出信号量噪比仅和编码位数N有关,且随N按指数规律增大。另一方面,对于一个频带限制在f的低通信号,按照抽样定理,H 要求抽样速率不低于每秒2f次(码元速率)。对于PCM系统,这相当于要求传H 输速率至少为2Nf(信息速率) (b/s)。故要求系统带宽B至少等于Nf (Hz)。 HH因此 2,,B/fHS/N,2 (2.17) q 表明:当低通信号最高频率f给定时,PCM系统的输出信号量噪比随系统H 的带宽B按指数规律增长。 28 3 算例分析 以上我们对脉冲编码调制(PCM)原理做了详细的理论阐述,对脉冲编码调制(PCM)的抽样、下面我们对脉冲编码调制(PCM)部分特性做定量的分析和定性的分析,这里我们选用一正弦信号x=sin(4*t)以及语音信号handle作为研究对象,该正弦信号简单,抽样频率很小,可以使我们清晰地看到各个抽样、量化、编码以及译码过程的波形差异,对认识该脉冲编码调制(PCM)原理有很大的帮助;由于脉冲编码调制(PCM)主要面向电话语音信号,这里对该语音信号的分析,有助于我们理解语音信号在传播以及转换过程中的状态,最后生成新的语音文件,通过比较编码前后的语音文件,加深我们对脉冲编码调制的理解。 在定性分析中,我们知道量噪比是脉冲编码调制(PCM)中最重要的特征之一,为了更好说明消噪效果我们引入量噪比SNR 量噪比SNR公式: n,,2sig_o,,,So1 (3.1) NR,S10lg=,,n2N,,osigDsigO,(__),,,,,1 (是原信号 ,量化值) sig_osig_D 前面讲过,量噪比是用信号功率与量化噪声之比(简称信号量噪比)来衡量此误差对信号影响的大小。对于给定的信号最大幅度,量化电平数愈多,量化噪声愈小,信号量噪比就越高。且量化分均匀量化和非均匀量化,我们已知均匀量化的理论量噪比公式: S2o (),MNq 非均匀量化的理论量噪比为 29 (3.2) dyyx`,式中:分别为按量化器过载值归一化的输入输出值,为压缩特性,,dx的斜率。为归一化的模拟信号的概率密度分布。我们对正弦信号x=sin(4*t)Px() 以及语音信号test.wav进行研究,探究非均匀量化与均匀量化量噪比; 以下是这两种信号基本信号信息: 表3.1 正弦信号与语音信号基本信息 正弦信号x=sin(4*t) 语音信号 波 形 基 原文件大小:78KB ts=0.1; 本 抽样频率:225000Hz t=-t0/2:ts:t0/2; 信 位数:16位 x=sin(4*t); 息 3.1 无噪声干扰时PCM编码 按照脉冲编码调制(PCM)原理我们可以通过matlab编程进行仿真,然后经过适当的编码显示出抽样、量化、编码以及译码时的波形,我们对波形进行比较和理解,我们现对正弦信号x=sin(4*t)进行一些简单的分析: 首先,我们对正弦信号进行抽样,抽样结果如下图3.1。我们知道正弦信号时 30 时间模拟信号,而matlab在处理数据的时候都是对矩阵数据进行处理的,因此, 模拟信号数字化便是抽样过程,根据奈奎斯特抽样定律可知,抽样是把模拟信 号以其信号带宽2倍以上的频率提取样值,变为在时间轴上离散的抽样信号的 过程。我们以fs=10Hz的频率对该正弦信号进行抽样,这样在编码时也易于观 察。 该抽样基本信息:抽样点数21,这21个抽样点分别是 0.7568 0.44252 0.058374 -0.33499 -0.67546 -0.9093 -0.99957 -0.93204 -0.71736 -0.38942 0 0.38942 0.71736 0.93204 0.99957 0.9093 0.67546 0.33499 -0.058374 -0.44252 -0.7568; 图3.1 正弦波形 然后对以上的抽样值进行进行13折线量化,量化后其量化数值分别是: 0.93928 0.84635 0.4836 -0.79257 -0.91894 -0.97742 -0.9995 -0.98311 -0.92942 -0.81979 0 0.81979 0.92942 0.98311 0.9995 0.97742 0.91894 0.79257 -0.4836 -0.84635 -0.93928 其结果如下图示3.2: 31 图3.2 正弦波形13折线量化 对以上的量化结果进行PCM编码,编码后每个量化值被编码为一组8位二 进制码组: 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 0 0 1 1 1 1 0 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 1 1 1 1 1 0 1 0 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 32 0 1 1 0 1 1 1 0 0 1 1 1 1 0 1 1 0 1 1 1 1 1 1 0 效果图如下图3.3: 图3.3 正弦信号PCM编码 对所得到的二进制码组分别进行译码, 0.9375 0.84375 0.46875 -0.78125 -0.90625 -0.96875 -0.96875 -0.96875 -0.90625 -0.8125 0 0.8125 0.90625 0.96875 0.96875 0.96875 0.90625 0.78125 -0.46875 -0.84375 -0.9375 得到下图3.4; 33 图3.4 正弦信号PCM译码 我们把原始正弦信号和经PCM(脉冲编码调制)处理后的波形放在一起,我们更容易看到其中的差异,我们可以想想这种差异从哪里来的呢,当然是从量化那里得到的误差,在量化过程中将时间离散,数值连续的抽样值量化为有限的数值,产生了一定的差异,这个差异便是量化噪声,从而使编码产生误差。这个误差有多大呢,这个在以下会有适当的分析。 图3.5 原正弦信号与处理后信号的比较 鉴于和非均匀量化的处理后信号予以比较,我们给出均匀量化在无噪声时 34 的量化输出波形: 图3.6 均匀量化下原正弦信号与输出波形比较 根据图3.6与图3.5的比较,我们看到均匀量输出化好像要比非均匀量化效果要好得多,我们再从数字方面予以佐证。 我们知道理论上的均匀量化量噪比为 So ()20log20log25648.1647,,,MdbNq 对以上非均匀量化的仿真程序进行适当的修改,能得到实际均匀量化信噪比为 S9.4072o ()=31.6551,dbN0.0064q 非均匀量化的量噪比为: n,,2y,,,S9.402o 1S=10log=7.5505NR,,,,n2N1.6699,,o()noisey,,,,1,, 有人会问怎么会有这个结果呢,按照所学,非均匀量化的量化信噪比要比 35 均匀信号量化信噪比要好,但是为什么结果是非均匀量化信噪比远小于均匀量化信噪比,13折线量化原信号时,放大了小信号,量化值与原信号之间的差被放大,使量化误差增大,因此必然导致非均匀量化信噪比的减小,这种非均匀量化的优势在哪里体现出来呢, 这个问 快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题 是在以下的这个算例中予以解答。 3.2 噪声干扰下的PCM编码 以上就是正弦信号x=sin(4*t)脉冲编码调制(PCM)抽样、量化、编码以及译码的全过程,下面以语音信号加噪声干扰后的信号为例,介绍脉冲编码调制(PCM)对声音信号的整个处理过程,原始语音信号波形如图3.7所示。 图3.7 原语音信号波形 PCM译码后的波形如下图3.8,译码后的波形还含有大量的噪声,因此需要经过适当的滤波。 36 图3.8 PCM编码后波形 下图3.9是无噪声情况下经过量化编码后的基带输入信号以及经滤波后的信道输出波形的对比,我们看到信道输出波形出现吉布斯效应—— 将具有不连续点的周期函数(如矩形脉冲)进行傅立叶级数展开后,选取有限项进行合成。当选取的项数越多,在所合成的波形中出现的峰起越靠近原信号的不连续点。当选取的项数很大时,该峰起值趋于一个常数,大约等于总跳变值的9%的现象。 图3.9 无噪声干扰情况下基带输入信号与信道输出波形 37 下图3.10以及3.11是在加噪声情况下经过量化编码后的基带输入信号以及经滤波后的信道输出波形的对比,我看到比较复杂的信道输出波形,其中就是大量的噪声。在3.10中可以看到基带输出信号: 图3.10 噪声干扰情况下基带输入信号与信道输出波形 图3.11 输入带信号与输出基带信号波形(加噪声) 经低通滤波后PCM译码的波形与原波形的差异图: 38 (a)原始语音信号波形与译码波形差异图1 (b)原始语音信号波形与译码波形比较图2 3.12 非均匀量化原始语音信号波形与译码波形差异图 均匀量化信噪比不是本文的讨论范围,这里不再过多的赘述。但是鉴于与非均匀量化信噪比的比较的需要,这里把均匀量化后译码输出波形与原始波形 39 图与图3.12做比较。 (a)原始语音信号波形与译码波形差异图1 (a)原始语音信号波形与译码波形差异图2 3.13 均匀量化原始信号波形与译码波形差异图 我们从上图可直接看出非均匀量化较于均匀量化的优势,这里从数字分量上来予以研究: 40 这里对以上非均匀量化的仿真程序进行适当的修改,能得到实际均匀量化输出信噪比为: n,,2sig_o,,,S682.8023o1NR,,S10lg 31.6511==10lg10,,n2N21.5680o,,sigDsigO,(__),,,1,,非均匀量化输出信噪比: n,,2sig_o,,,S682.8023o 1NR,,S10lg10lg=37.1438=,,n2N0.1318,,osigDsigO,(__),,,1,, 41 结论 得到非均匀量化输出信噪比远大于均匀量化输出信噪比,因此经过以上的实验和分析我们能得到: 对比算例一与算例二中的均匀量化输出信噪比能得出在相同量化电平级数M下,输出信噪比相同,即均匀量化输出信噪比只与量化电平级数M相关,与信道噪声没有关系。另外,可以得到均匀量化时其量化信噪比随信号电平的减少 N而下降,因为量化间隔,V为固定值,量化噪声功率的大小与信号无关,当q SSqo小信号时,()明显下降,与已知在误差范围内 相符合。 ()20lg,MdB,,dBNNqq 由算例一中知道,仅仅考虑无噪声的理想情况下的编码,非均匀量化输出信噪比远小于均匀量化输出信噪比,非均匀量化的优势便无法体现。 在算例二中,可以看到,在相同量化电平级数M下,非均匀量化输出信噪比较均匀量化要小(算例二中均匀量化输出信噪比为31.6511dB,均匀量化输出信噪比为37.1438),对于语音信号来说,小信号的出现概率大于大信号的出现概率,这就使平均信噪比增加,从而这种非均匀量化的优势便是更加明显。 42 致谢 经过将近半年的学习研究,毕业设计终将尘埃落定了,回首一年过程中的努力、成功以及失败真是感慨万千。在大学四年的过程中,我们学过的课程多如繁星,但是作为学生的我们更多的是仅为应付考试而去学习,一门课考过之后便结束了这门课的学习,毕业设计便给了我们这样的一个平台,让我们重新学习我们学过的知识,并在学习过程中研究、发现以及记录,开题的前几个星期我在李宝平老师的指导下认真学习相关知识,然后开始下笔,经过一个星期的酝酿,论文的大致轮廓已初步划定。如今,伴随着这篇毕业论文的最终成稿,复杂的心情烟消云散,自己甚至还有一点成就感。 以上是对设计成果的简单介绍,下面是我们在这一年来的研究学习过程中所感的心得体会: (1) 在这一年研究学习中,最大的体会便是兴趣,哲人说:兴趣是最好的老师。的确,他可以教我们如何静心学习,精心研究一个事物;在学习研究中,如果不能静心,怎么研究,三心二意,怎么研究,而这一切,兴趣是最重要的。在制作开发平台中,可能只是一个错误平台就不能运行,而这个错误则必须要你深入的分析每一句程序,这便是研究,其中的茫然只有身临的人,才可品其位,知其难。 (2)研究让我们学会学习。在我们遇到困难,我逐渐学会团队一起讨论,图书馆资源和网络资源的合理应用,这就是我们的学习;研究学习还让我们提高我们的科学品味,由一个对MATLAB毫无概念的群体,最终可熟练使用MATLAB语言和编程,这就是研究让我们学会的; 综上所述,毕业设计的完成不是学习结束,我们将还会学习这方面的知识,发挥在这研究方面的优势,继续发扬在研究项目中学习的优良传统。我们自认为这个项目还是成功的,当然这还是要感谢指导老师的谆谆教诲,以及同学们的大力支持,在这里我们表示诚挚的感谢。 43 参考文献 [ 1 ]樊昌信,曹丽娜 编著. 通信原理 .北京: 国防工业出版社, 2006年 [ 2 ] 江晓林,杨明极 编著. 通信原理.哈尔滨: 哈尔滨工业大学出版社, 2010 年 [ 3 ] 张磊, 毕靖, 郭莲英编著. MATLAB实用教程 = The practical textbook of MATLAB. 北京: 人民邮电出版社, 2008 [ 4 ]王嘉梅 编著. 基于MATLAB的数字信号处理与实践开发 .西安:西安电子科 技大学出版社, 2007年 [ 5 ]赵静,张瑾,高新科 基于MATLAB的通信系统仿真 .北京:北京航空航天大学 出版社, 2010年 [ 6 ] 陈垚光 ... [等] 编著. 精通MATLAB GUI设计. 北京: 电子工业出版社, 2008 44 附录 文中使用的语音信号主程序: function myPCM %A率13折线编译码.m clc clear close all %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% 信号获取 y Fs load handel %sound(y,Fs); %时间轴 t0=0:1/Fs:(length(y)-1)/Fs; %测试长度 NumofTest NumofTest=floor(length(y)/4); Sig_O=y(1:NumofTest); t=t0(1:NumofTest); sound(Sig_O,Fs); %原始语音信号波形 figure(7) plot(t,Sig_O), grid on title('原始语音信号波形') axis([1,1+200/Fs,-1,1]) xlabel('Time/S'); ylabel('Amplitude/V'); zoom xon %% 信号编码 45 %信号最大幅度 Amax Amax=max(abs(Sig_O)); %信号长度 SigLength SigLength=length(Sig_O); %信号编码 SigCode SigCode=cell(1,SigLength); for i=1:length(Sig_O) SigCode(i)=cellstr(C_CodeofPCM(Sig_O(i),Amax)); i=i+1; end %% 信道 %采用双极性传输码 % 信号的PCM码组 变为 基带信号 SigCode_JiDai SigCode_JiDai_In=zeros(8*length(SigCode),1); j=0; for i=1:length(SigCode) CodeofPCM_Str=char(SigCode(i)); for k=1:8 SigCode_JiDai_In(j+k)=CodeofPCM_Str(k)-'0'; %变为双极性 if SigCode_JiDai_In(j+k)==0 SigCode_JiDai_In(j+k)=0; end k=k+1; end j=j+8; i=i+1; end 46 %PCM抽样周期 Ts=8; %基带信号码元频率 Fd Fd=8/Ts; %基带时间轴 t1=[0:(length(SigCode_JiDai_In)-1)]./Fd; %滤波器采样频率 Fs_f Fs_f=20*Fd; %滚降系数 alpha、 alpha=1; %滤波器群延迟 group_delay=3; %PCM编码信号波形 [Wave,tw]=RectangWaveofSqu3(SigCode_JiDai_In,Ts/8,0.5,1,-1,Fs_f); figure(2) plot(tw,Wave) grid on xlabel('时间(s)');ylabel('幅度'); title(['PCM编码信号波形']); axis([-0.1,50.1,-1.2,1.2]); Amax_D=Amax; %基带信号 SigCode_JiDai 变为 信号的PCM码组 CodeofPCM_Out %串并转换 CodeofPCM_Out=cell(1,length(SigCode)/8); j=0; for i=1:length(CodeofPCM_Out) temp=''; for k=1:8 47 temp=strcat(temp,num2str(SigCode(j+k))); k=k+1; end j=j+8; CodeofPCM_Out(i)=cellstr(temp); i=i+1; end %信号译码 Sig_D Sig_D=zeros(length(CodeofPCM_Out),1); for i=1:length(Sig_D) Sig_D(i)=D_CodeofPCM(char(CodeofPCM_Out(i)))*Amax_D; i=i+1; end %原始语音信号波形 figure(1) subplot(2,1,1) plot(t,Sig_O), grid on title('原始语音信号波形') axis([1,1+200/Fs,-1,1]) xlabel('Time/S'); ylabel('Amplitude/V'); zoom xon %语音信号译码输出波形 subplot(2,1,2) plot(t,Sig_D) ,grid on title('语音信号译码输出波形') xlabel('Time/S'); ylabel('Amplitude/V'); axis([1,1+200/Fs,-1,1]) zoom xon 48 %语音信号编译码输出波形对比 figure(6) plot(t,Sig_O,'r',t,Sig_D,'b') grid on legend('原始语音信号波形','译码输出波形') title('语音信号编译码输出波形对比') xlabel('Time/S'); ylabel('Amplitude/V'); axis([1,1+200/Fs,-1,1]) zoom xon sound(Sig_D,Fs); %% 遇到的问题 d=0 for i=1:length(Sig_D) d=d+(Sig_O(i)-Sig_D(i))^2; i=i+1; end %d_Sum_N=d; d_Sum=d; 量化编码C_CodeofPCM function CodeofPCM=C_CodeofPCM(A_Crent,Amax) % A率13折线编码 %CodeofPCM=DianpingtoCodeofPCM(A_Crent,Amax) %入口参数 %信号最大幅度 Amax (数值) %信号幅度 A_Crent (数值) %出口参数 %信号的PCM码组 CodeofPCM (字符串) 49 %函数示例 CodeofPCM=DianpingtoCodeofPCM(635,2048) %返回 CodeofPCM 为 11100011(字符串) ; %% 极性 Jixing Jixing=1; if A_Crent<0 Jixing=0; end Jixing=dec2bin(Jixing,1); %% 段号 DuanHao DuanHao=0; %信号幅度归一 A_Crentmaxto1 A_Crentmaxto1在 0~2048之间 A_Crentmaxto1=floor(abs(A_Crent)/Amax*2048); %段落起始 DuanluoQS %量化间隔 LinghuaJG LinghuaJG=0; %分段操作 if A_Crentmaxto1<16 DuanHao=0; DuanluoQS=0; LinghuaJG=1; elseif A_Crentmaxto1<32 DuanHao=1; DuanluoQS=16; LinghuaJG=1; elseif A_Crentmaxto1<64 DuanHao=2; DuanluoQS=32; 50 LinghuaJG=2; elseif A_Crentmaxto1<128 DuanHao=3; DuanluoQS=64; LinghuaJG=4; elseif A_Crentmaxto1<256 DuanHao=4; DuanluoQS=128; LinghuaJG=8; elseif A_Crentmaxto1<512 DuanHao=5; DuanluoQS=256; LinghuaJG=16; elseif A_Crentmaxto1<1024 DuanHao=6; DuanluoQS=512; LinghuaJG=32; else DuanHao=7; DuanluoQS=1024; LinghuaJG=64; end DuanHao=dec2bin(DuanHao,3); %% 段内码 (自然码) DuanNeima %异常处理 if A_Crentmaxto1==2048 A_Crentmaxto1=A_Crentmaxto1-1; end 51 DuanNeima1=floor((A_Crentmaxto1-DuanluoQS)/LinghuaJG); DuanNeima=dec2bin(DuanNeima1,4); %% PCM码组 CodeofPCM CodeofPCM=strcat(Jixing,DuanHao, DuanNeima); end —————————————————————————————————— 译码处理程序: function A_Crent=D_CodeofPCM(CodeofPCM) % A率13折线译码 % A_Crent=D_CodeofPCM(CodeofPCM,Amax) %入口参数 %信号最大幅度 Amax (数值) %信号的PCM码组 CodeofPCM (字符串) %出口参数 %信号幅度 A_Crent (数值) %函数示例 A_Crent=D_CodeofPCM('11110011') %返回 A_Crent 为 1216 % %字符串转换为十进制数处理 CodeofPCM_int=str2num(CodeofPCM); %% 极性判断 Jixing Jixing=1; if floor(CodeofPCM_int/10^7)==0 Jixing=-1; end %% 段号提取 DuanHao DuanHao=floor(mod(abs(CodeofPCM_int),10^7)/10^4); DuanHao=num2str(DuanHao); 52 DuanHao=bin2dec(DuanHao); %段起始电平提取 DuanluoQS %量化间隔提取 LinghuaJG switch DuanHao case 0 DuanluoQS=0; LinghuaJG=1; case 1 DuanluoQS=16; LinghuaJG=1; case 2 DuanluoQS=32; LinghuaJG=2; case 3 DuanluoQS=64; LinghuaJG=4; case 4 DuanluoQS=128; LinghuaJG=8; case 5 DuanluoQS=256; LinghuaJG=16; case 6 DuanluoQS=512; LinghuaJG=32; case 7 DuanluoQS=1024; LinghuaJG=64; 53 end %% 段内码提取 (自然码) DuanNeima DuanNeima=mod(abs(CodeofPCM_int),10^4); DuanNeima=num2str(DuanNeima); DuanNeima=bin2dec(DuanNeima); %信号幅度绝对值 absofA_Crent %absofA_Crent=DuanluoQS+LinghuaJG*DuanNeima; %信号幅度绝对值 absofA_Crent (7/12变换原理) absofA_Crent=DuanluoQS+LinghuaJG*DuanNeima+0.5*LinghuaJG; %%信号幅度 A_Crent A_Crent=absofA_Crent*Jixing/2048; end 54
本文档为【PCM(脉冲编码调制)介绍及PCM编码的原理 毕业论文---PCM量化13折线】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_769254
暂无简介~
格式:doc
大小:564KB
软件:Word
页数:57
分类:生活休闲
上传时间:2017-09-29
浏览量:45