一、实验类型

设计性实验

二、 实验目的

1.掌握均匀量化原理和非均匀量化原理。
2.掌握量化信噪比的基本概念。
3. 理解量化级数、量化方法与量化信噪比的关系。

三、实验原理

1.均匀量化原理

设模拟信号的取值范围是[a,b],量化电平数是M,那么均匀量化的量化间隔是:
在这里插入图片描述

量化取间的端点是:
在这里插入图片描述

若量化输出电平取量化间隔的中点,则
在这里插入图片描述在这里插入图片描述

显然,量化输出电平和量化前的信号的抽样值一般是不同的,即量化输出电平有误差,这个误差称谓量化噪声(quantization noise),并用信号功率之比(简称为信号量噪比),衡量此误差对信号的影响的大小。对给定的信号最大幅度,量化电平数越多,量化的噪声越小,信号量噪比越高。
在均匀量化时,量化噪声功率的平均值在这里插入图片描述可以用下面的式子表示:
在这里插入图片描述
式子中的在这里插入图片描述为模拟信号的抽样值,即在这里插入图片描述在这里插入图片描述为量化信号值,在这里插入图片描述为信号的抽样值在这里插入图片描述的概率密度。在这里插入图片描述为求统计平均值。在这里插入图片描述为量化电平数。
信号在这里插入图片描述的平均功率可表示为:
在这里插入图片描述
若已知信号在这里插入图片描述的概率密度函数,则由公式可计算出平均信号量噪声比。
计算时可用如下公式直接计算在这里插入图片描述,对于具有均匀概率密度的信号则有:
在这里插入图片描述
所以平均信号量噪比为: 在这里插入图片描述

当输入信号为 正弦信号 是,量化信噪比表示为:
在这里插入图片描述
在实际的应用中,对于给定的量化器的,量化电平数M和量化间隔都是给定的。所以,量化噪声也是给定的,但是,信号的强度可能是随时间变化的,像语音信号就是这样子的。当信号小时,信号的量化信噪比也小。所以这种均匀量化器对于小输入信号很不利。所以一般对小信号采用非均匀量化。

2.非均匀量化

为了克服均匀量化的缺点,实际中,往往采用非均匀量化。非均匀量化是根据信号的不同区间来确定量化间隔的。实现方法如图1 所示。
在这里插入图片描述

			图1非均匀量化实现过程

A律对数压缩特性具有如下的关系,在国际标准中取在这里插入图片描述=87.6。
在这里插入图片描述

式中,在这里插入图片描述为归一化的压缩器输入电压,在这里插入图片描述为归一化压缩器输出电压,在这里插入图片描述为压扩参数,表示压缩程度。
13折线特性就是近似于在这里插入图片描述=87.6时的在这里插入图片描述律压缩特性,在这里插入图片描述律压缩特性的非均匀量化信噪比:
在这里插入图片描述
其中在这里插入图片描述为信噪比改善度。
在这里插入图片描述在这里插入图片描述
其中在这里插入图片描述为信号有效值。
补充: 1.求对数的函数
log(x):求x的自然对数,即ln(x)。
log2(x):求x的以2为底的对数,即log 2 (x)。
log10(x):求x的以10为底的对数,即lg(x)。
2.在样值数较多时,量化噪声平均功率和信号功率时,可通过用mean函数求均方值来计算:

在这里插入图片描述,所用函数 mean(e.^2);
在这里插入图片描述 : mean(s.^2)

三、 例子演示仿真步骤

1、均匀量化

例【1】(1)产生一个周期的正弦波,以1000Hz频率进行采样,并进行8级均匀量化,用plot函数在同一张图上绘出原信号和量化后的信号。
在这里插入图片描述

%均匀量化例1中(1)
clear all
fs=1000;
dt=1/fs;
M=8;
Am=1;
t=0:dt:1;
x=Am*cos(2*pi*t);
v=(max(x)-min(x))/M;
m(1)=min(x);
for i=1:M
    m(i+1)=m(i)+v;
    q(i)=(m(i)+m(i+1))/2;
end
   for j=1:length(x)
       for i=1:M-1
           if(x(j)>=m(i)&x(j)<m(i+1))
            lh(j)=q(i); 
         end
        if(x(j)>=m(M))
            lh(j)=q(M);
         end
       end
  end
plot(t,x);
grid on; 
hold on
plot(t,lh,'r');
legend('抽样值','量化值');
xlabel('图1 余弦信号的均匀量化')

(2)以32Hz频率对例1中的x(t)进行采样,并进行8级均匀量化。用stem函数绘出正弦波波形样值图,量化后的样值图、量化误差图。
在这里插入图片描述
在这里插入图片描述

%均匀量化例1中(2),抽样频率32Hz
clear all
fs=32;
dt=1/fs;
M=8;
Am=1;
t=0:dt:1;
x=Am*cos(2*pi*t);
v=(max(x)-min(x))/M;%量化间隔
m(1)=min(x);
for i=1:M
    m(i+1)=m(i)+v;
    q(i)=(m(i)+m(i+1))/2;%量化电平值
end
   for j=1:length(x)
       for i=1:M-1
           if(x(j)>=m(i)&x(j)<m(i+1))
            lh(j)=q(i); 
         end
        if(x(j)>=m(M))
            lh(j)=q(M);
         end
       end
    e(j)=x(j)-lh(j);% 量化误差值
end
stem(t,x);
grid on; 
hold on
stem(t,lh,'r');
legend('抽样值','量化值');
xlabel('图2 均匀量化离散图')
figure(2)
stem(t,e);
xlabel('图3 均匀量化的量化误差图')

(3)以2000Hz对x(t)进行采样,改变量化级数,分别仿真得到编码位数为2~8位时的量化信噪比,绘出量化信噪比随编码位数变化的曲线。另外绘出理论的量化信噪比曲线进行比较。
在这里插入图片描述

%均匀量化例1中(3)不同编码位数的量化信噪比
clear all
fs=2000;
dt=1/fs;
n=2:8;
M=2.^n;
Am=1;
t=0:dt:1;
x=Am*cos(2*pi*t);
for k=1:length(M)
v=(max(x)-min(x))/M(k);
m(1)=min(x);
for i=1:M(k)
    m(i+1)=m(i)+v;
    q(i)=(m(i)+m(i+1))/2;
end
   for j=1:length(x)
       for i=1:M(k)-1
           if(x(j)>=m(i)&x(j)<m(i+1))
            lh(j)=q(i); 
         end
        if(x(j)>=m(M(k)))
            lh(j)=q(M(k));
         end
       end
    e(j)=x(j)-lh(j);
end
s=mean(x.^2);
N=mean(e.^2);
lzb(k)=10*log10(s/N);%均匀量化量噪比的仿真值
lzb2(k)=6.02*n(k)+1.76;%%均匀量化量噪比的理论值
end
plot(n,lzb,'o-');
hold on;
plot(n,lzb2,'ro-');
legend('仿真值','理论值');
xlabel('图4 不同编码位数的均匀量化信噪比')

例【2】产生一个周期的正弦波,对x(t)按A律进行压缩,然后以32Hz频率进行抽样,再进行8级均匀量化。压扩参数A=87.6。绘出压缩前后的信号波形图(用plot函数)、样值图、量化后的样值图(后两个用stem函数)。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

clear all
fs=32;
dt=1/fs;
M=16;
Am=1;
t=0:dt:1;
x=Am*sin(2*pi*t);
x=x/max(x);
A=87.6;
for i=1:length(x)
   if(abs(x(i))>=0&abs(x(i))<=1/A)
       if(x(i)>0)
       y(i)=A*x(i)/(1+log(A));
      else y(i)=-A*x(i)/(1+log(A));
       end
   else
       if(x(i)>0)
         y(i)=(1+log(A*x(i)))/(1+log(A));
      else y(i)=-(1+log(A*x(i)))/(1+log(A));
       end
   end
end
plot(t,x);
grid on; 
hold on
plot(t,y,'r')
legend('归一化后原信号','A律压缩后的信号');
xlabel('图1 抽样信号A律压缩')
v=2/M;
m(1)=-1;
for i=1:M
    m(i+1)=m(i)+v;
    q(i)=(m(i)+m(i+1))/2;
end
   for j=1:length(y)
       for i=1:M-1
           if(y(j)>=m(i)&y(j)<m(i+1))
            lh(j)=q(i); 
         end
        if(y(j)>=m(M))
            lh(j)=q(M);
         end
       end
    e(j)=y(j)-lh(j);
   end
figure(2)
stem(t,y,'filled');
grid on; 
hold on
stem(t,lh,'r','filled');
legend('A压缩后信号抽样值','量化值');
xlabel('图2 A律压缩后的抽样值和量化值')
figure(3)
stem(t,e);
xlabel('图3 A律压缩量化的量化误差图')

四、 实验内容

  1. 对于输入信号为sin(t)信号进行抽样和均匀量化,改变抽样频率、量化级数和信号大小,根据MATLAB获得量化误差和量化信噪比。同一个坐标轴上画出原信号和已量化信号,比较着不同情况下的量化信噪比。
  2. 对于输入信号为sin(t)信号进行A压缩率的非均匀量化,改变抽样频率和信号大小,根据MATLAB获得量化误差和量化信噪比。同一个坐标轴上画出原信号和已量化信号,比较着不同情况下的量化信噪比。

更多文章如下

【通信工程】信息类,电子类,电气工程,自动化,计算机,软件工程,机电,等相关专业 全套学习指导
https://blog.csdn.net/qq_45696377/article/details/116434132

【全套完结】通信原理----全套Matlab仿真实验报告
https://blog.csdn.net/qq_45696377/article/details/121384301

上一篇:
【通信原理】实验六 基于Matlab的2PSK和2DPSK调制
https://blog.csdn.net/qq_45696377/article/details/121660263

在这里插入图片描述

答疑资料qq群:1007576722

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐