实验一.A率13折线编码1.1A率13折线编码简介A率13折线的产生A率13折线的产生是从不均匀量化的基点动身,设法用13段折线逼近A=87.6的A率紧缩特性。具体方式是:把输入x轴和输出y轴用两种不同的方式划分。对x轴在0~1(归一化)范围内不均匀分成8段,分段的规律确实是每次以二分之一对分,第一次在0到1之间的1/2处对分,第二次在0到1/2之间的1/4处对分,其余类推。对y轴在0~1(归一化)范围内采纳等分法,均匀分成8段,每段距离均为1/8。然后把x,y各对应段的交点连接起来组成8段直线,取得近似A=87.6的A率紧缩特性。这种近似中会取得13段(正负)斜率不同的折线,因此称其为A率13折线。A率13折线的编码在13折线编码中,普遍采纳8位二进制码,对应有M=28=256个量化级,即正、负输入幅度范围内各有128个量化级。这需要将13折线中的每一个折线段再均匀分为16个量化级,由于每一个段落长度不均匀,因此正或负输入的8个段落被划分成8×16=128个不均匀的量化级。按折叠二进制码的码型,这8位码的安排如下:极性码段落码段内码C1C2C3C4C5C6C7C8其中,第一名
示采样点的极性,第二到第四位表示采样点所在段落。第五到第八位表示每段内的一个均匀量化级。1.2实验要求1、了解PCM及13折线A率编码及译码的原理;2、随机给出一个语音信号,并用A率13折线PCM对其编码;3、将编码后的信号通过加性高斯白噪声信道,并在接收端对其进行译码;4、别离画出原始语音信号、PCM编码信号和译码后信号的波形。注:那个随机的语音信号能够用loadhandel语句能够取得y和Fs。其中y是一个语音信号的采样序列,Fs是其采样频率。用的时候截取y的一段就能够够。实验源代码:loadhandel %生成信号X=y(1:10000); %取y的一段函数X=X';p=A13tiaozhi(X); %将X编为PCM编码。Ta=50; %将信号升余弦化通过信道p1=p*2-1; %信号变成双极性信号以便传输P1=repmat(p1,[Ta,1]);P1=P1(1:end);%信号方波过采样以匹配点数S=shengyuxuan(P1,Ta); %将双极性信号变成可传播的余弦信号subplot(3,1,3)plot(S)axis([0,1000,-1,1]);Nt=.01*randn(1,length(S)); %生成高斯白噪声S=SNt; %信号通过信道,并加入高斯白噪声fori=1:length(S)/50p2(i)=S(i*50-25);endp2=sign(p2); %抽样裁决p2=(p21)/2;sum(abs(p2-p)) %计算误码个数y=A13jietiao(p2); %将取得的01编码p2解调,取得输出yfigure(2) %画图对照原始信号与接收到的信号。subplot(2,1,1);plot(X)title('原始信号');subplot(2,1,2);plot(y)title('输出信号');%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%functionp=A13tiaozhi(X) %A率13折线编码调制x=X*2048; %换算出x数量x=fix(x);p=[]; %p为寄存编码的向量。用于传输。fori=1:length(x)y=x(i);t=zeros(1,7);ify<0; %判定第C1位t(1)=0;elset(1)=1;endy=abs(y);ify/16>1e=fix(log2(y/16)1);elsee=0;%e为一个辅助量。为x的log2得数。便于求出段码和量化距离与段落起始enddv=2^e-fix(2^(e-1)); %量化距离di=fix(2^(e-1))*16; %段落起始dy=fix((y-di)/dv);j=8; �到C8,即为10进制转化为2进制量。while(j>4)t(j)=rem(dy,2);j=j-1;dy=fix(dy/2);endj=4;�到C4while(j>1)t(j)=rem(e,2);j=j-1;e=fix(e/2);end p=[p,t];end%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%functiony=A13jietiao(p) %A率13折线,编码译码y=[]; fori=1:length(p)/8e=p(2(i-1)*8)*2^2p(3(i-1)*8)*2^1p(4(i-1)*8)*2^0;%算出e。dv=2^e-fix(2^(e-1)); %量化距离di=fix(2^(e-1))*16;%段落起始y(i)=didv*(p(5(i-1)*8)*2^3p(6(i-1)*8)*2^2p(7(i-1)*8)*2^1p(8(i-1)*8)*2^0);y(i)=(2*p(1(i-1)*8)-1)*y(i)/2048;end实验结果:第一幅图为升余弦滤波器的函数图。第二幅图为信号通过升余弦滤波器的图像。第一幅图伟原始信号波形。第二幅图为接收端输出信号波形。编程原理:本程序分为三部份。主函数,编码函数A13tiaozhi(X)与译码函数A13jietiao(X)。A-13折线编码程序原理:I=n*,n为随机数。而A-13折线编码也是关于变量n的变换。将n写成16*2^mK的形式,其中,m和k均为整数。那么m的2进制数即为C2,C3,C4段码。K除以量化距离的二进制形式即为C5到C8的段内码对应数值。运用此原理,别离求出m和k即可取得所需的10编码。