移动通信实验报告

  • 格式:doc
  • 大小:107.50 KB
  • 文档页数:5

实验一 ZXC10-CDMA系统认识
实验二 QAM调制与解调
实验三 GMSK调制与解调
实验四 移动通信信道建模
实验五 GOLD序列
实验六 基于GOLD序列的DSSS仿真
实验七 OFDM系统仿真
实验八 期末测试
实验八 期末测试----自信息、信源熵和信道容量
一、实验目的
1.理解自信息、互信息、信源熵、信道容量等概念;
2.熟悉 MATLAB程序设计;
3.掌握通过计算机实验计算离散信源的信息量及熵的计算方法;

二、实验内容
1.计算自信息量并用图形表示
2.计算信源熵并用图形表示
3.计算准堆成信道的信道容量并用图形表示

三、实验原理及过程
1.由于事件出现的概率不同,它们所包含的不确定性也有大小的差别,对于离散
信源而言,信源概率空间的概率分别为P(x1),P(x2),P(x3),P(x4)...P(xn)。显
然信源这时输出一个消息提供的信息量就等于信源的不确定度。当概率P越小,
x消息出现的概率就越小,一旦出现所获得的信息量就越大。因此,我们定义
I(x)=

,通常称I(x)为消息x的自信息量,它具有随机变量的性质。
2. 信源熵:是信息论中用来衡量信源信息量有序化程度的一个概念。信源熵值
与信源有序化程度成反比;有序度越高,信源熵值越低,反之亦成立。单位是
Bit/sign。
3. 信道能无错误传送的最大信息率。对于只有一个信源和一个信宿的单用户信
道,它是一个数,单位是比特每秒或比特每符号。它代表每秒或每个信道符号能
传送的最大信息量,或者说小于这个数的信息率必能在此信道中无错误地传送。
对于多用户信道,当信源和信宿都是两个时,它是平面上的一条封闭线,如图中
的OC1ABC2O。坐标R1和R2分别是两个信源所能传送的信息率,也就是R1和R2
落在这封闭线内部时能无错误地被传送。当有m个信源和信宿时,信道容量将是
m 维空间中一个凸区域的外界“面”。
对于给定离散无记忆信道,其符号转移概率分布已定,通过适当改变输入符
号集上的概率分布,可使传信率达到最大值,即该信道容量公式 如右图8 。其
中E是输入符号集上所有可能概率分布的集。

图8
对于连续信道,应将式中概率分布换成概率密度,求和号换成积分号,即得
出连续信道的容量公式。
容量的计算是在特定约束条件下,求传信率函数I(X;Y)的极大值问题。
对离散信道的约束条件是输入符号的概率

, 对于连续信道,除了概率约束条件外,还可
有不同的约束条件,如平均功率或峰值功率受限。由于I(X;Y)是输入分布(或
密度)的上凸函数,故其极值即为最大值,可见,求容量在于求I(X;Y)的条
件极值。简单情况下,离散信道可用拉格朗日乘子法求解,连续信道可用变分法
求解。R.E.勃拉赫特提出的迭代算法可精确求解一般离散无记忆信道的容量,
也可用来近似计算连续信道的容量

图9
以及率失真函数和可靠性函数。
常见的二元对称信道(BSC)的容量公式如图9 ,式中ε是符号出差错的概率。
常见的加性白高斯噪声(AWGN)信道的容量公式如图10 ,式中S是信道允许的平
均功率,N0是白高斯噪声的单边功率谱密度,F是信道许用带宽。当F→∞时有

。令Eb表示每比特信息占有的能量,则S=REb,R是传信率。
由图11

图10
及编码定理有 ,通称-1.6dB为仙农极限,它表
示在无限带宽的AWGN信道中,传送1bit信息所需的最小Eb/N0。

四、实验结果及分析
五、实验总结
自信息量随时间概率P的增加而减小,P越大,所含信息量越小。
信源熵随P的变换关系是凸函数特性,存在P,使得信源熵最大,信源熵反映的
是一种平均不确定程度。
准对称二元信道中,等概时信道容量最小。

附录:源程序代码
clc;
close all; clear all;
r=2;
p=[0:0.001:1];
q=1-p;
I=-log2(p);
subplot(3,1,1);
plot(p,I);
title('自信息');xlabel('p');ylabel('I');grid on ;
%-------------------------------------------------------
H=-p.*log2(p)-q.*log2(q);
subplot(3,1,2);
plot(p,H);
title('信源熵');xlabel('p');ylabel('H');grid on ;
%------------------------------------------------
C=log2(r)-p.*log2(r-1)-H;
subplot(3,1,3);
plot(p,C,'k:','linewidth',1)
title('信道容量')
box on;
grid on
xlabel('p','FontName','Tim es New Roman','fontsize',10)
ylabel('C','FontName','Times New Roman','fontsize',10)