欢迎来到天天文库
浏览记录
ID:26992437
大小:1.17 MB
页数:44页
时间:2018-11-30
《《通信系统仿真》ppt课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章通信系统仿真6.1通信工具箱函数6.2信息的度量和编码6.3差错控制编/译码方法6.4模拟调制和解调6.5数字调制和解调6.6通信系统的性能仿真6.7扩频通信系统的仿真6.1通信工具箱的函数在MATLAB的CommunicationToolbox(通信工具箱)中提供了许多仿真函数和模块,用于对通信系统进行仿真和分析。主要包括两部分内容:通信函数命令和Simulink的CommunicationsBlockset(通信模块集)仿真模块。用户既可以在MATLAB的工作空间中直接调用工具箱中的函数,也可以使用Simulin
2、k平台构造自己的仿真模块,以达到扩充工具箱的内容。通信工具箱中的函数名称和内容列表,其内容包含:SignalSources(信号源函数);SignalAnalysisfunction(信号分析函数);SourceCoding(信源编码);ErrorControlCoding(差错控制编码函数);LowerLevelFunctionforErrorControlCoding(差错控制编码的底层函数);Modulation/Demodulation(调制/解调函数)SpecialFilters(特殊滤波器设计函数);Lower
3、LevelFunctionforSpecialsFilters(设计特殊滤波器的底层函数);ChannelFunctions(信道函数);GalosiFieldComputation(有限域估计函数);Utilities(实用工具函数)。6.2信息的量度与编码信源熵的输出可以用随机过程来表达。对于一个离散无记忆平稳随机过程,其信息量(熵)定义为:其中X表示信源取值集合,p(x)是信源取值x的概率。6.2.1Huffman编码信源编码可分为两类:无失真编码和限失真编码。Huffman编码的基本原理就是为概率较小的信源输出分配
4、较长的码字,而对那些出现可能性较大的信源输出分配较短的码字。Huffman编码算法及步骤如下:①将信源消息按照概率大小顺序排队。②按照一定的规则,从最小概率的两个消息开始编码。③将经过编码的两个消息的概率合并,并重新按照概率大小排序,重复步骤②。④重复上面步骤③,一直到合并的概率达到1时停止。这样便可以得到编码树状图。⑤按照后出先编码的方式编程,即从数的根部开始,将0和1分别放到合并成同一节点的任意两个支路上,这样就产生了这组Huffman码。6.2.2MATLAB信源编/译码方法大多数信源(比如语音、图像)最开始都是模拟
5、信号,为了将信源输出数字化,信源必须量化为确定数目的级数。量化方案可划分为标量量化和矢量量化两种。在标量量化中每个信源输出都分别被量化,标量量化可进一步分为均匀量化和非均匀量化。在均匀量化中量化区域是等长的;在非均匀量化中量化区域可以是不等长的。矢量量化是对信源输出组合进行整体量化。在标量量化中,随机标量X的定义域被划分成N个互不重叠的区域Ri,1≤i≤6、其均方误差为:其中f(x)是信源随机变量的概率密度函数。信号量化噪声比(SQNR)为:在MATLAB通信工具箱中提供了两种信源编译码的方法:标量量化和预测量化。1.标量量化(1)信源编码中的律或A律压扩计算函数compand()格式:out=compand(in,param,V,method)功能:实现律或A律压扩,其中param为值,V为峰值。压扩方式由method指定。(2)产生量化索引和量化输出值的函数quantiz()格式:indx=quantiz(sig,partition)功能:根据判断向量partition,7、对输入信号sig产生量化索引indx,indx的长度与sig矢量的长度相同。(3)采用训练序列和Lloyd算法优化标量算法的函数lloyds()格式:[parition,codebook]=lloyds(training_set,ini_codebook)功能:用训练集矢量training_set优化标量量化参数partition和码本codebook。ini_codebook是码本codebook的初始值。[例6-2]用训练序列和Lloyd算法,对一个正弦信号数据进行标量化。MATLAB程序如下:N=2^3;%以3比特传8、输信道t=[0:100]*pi/20;u=cos(t);[p,c]=lloyds(u,N);%生成分界点矢量和编码手册[index,quant,distor]=quantiz(u,p,c);%量化信号plot(t,u,t,quant,'*');该程序运行结果如图6.3所示。2.预测量化根据过去发送的信号
6、其均方误差为:其中f(x)是信源随机变量的概率密度函数。信号量化噪声比(SQNR)为:在MATLAB通信工具箱中提供了两种信源编译码的方法:标量量化和预测量化。1.标量量化(1)信源编码中的律或A律压扩计算函数compand()格式:out=compand(in,param,V,method)功能:实现律或A律压扩,其中param为值,V为峰值。压扩方式由method指定。(2)产生量化索引和量化输出值的函数quantiz()格式:indx=quantiz(sig,partition)功能:根据判断向量partition,
7、对输入信号sig产生量化索引indx,indx的长度与sig矢量的长度相同。(3)采用训练序列和Lloyd算法优化标量算法的函数lloyds()格式:[parition,codebook]=lloyds(training_set,ini_codebook)功能:用训练集矢量training_set优化标量量化参数partition和码本codebook。ini_codebook是码本codebook的初始值。[例6-2]用训练序列和Lloyd算法,对一个正弦信号数据进行标量化。MATLAB程序如下:N=2^3;%以3比特传
8、输信道t=[0:100]*pi/20;u=cos(t);[p,c]=lloyds(u,N);%生成分界点矢量和编码手册[index,quant,distor]=quantiz(u,p,c);%量化信号plot(t,u,t,quant,'*');该程序运行结果如图6.3所示。2.预测量化根据过去发送的信号
此文档下载收益归作者所有