
描述
BER分析器应用程序将BER计算为每位能量与噪声功率谱密度之比(Eb/ N0)的函数。使用此应用程序,您可以:
绘制理论BER与Eb/ N0的估计值和上限。
使用半分析技术绘制BER与Eb/ N0的关系图。半分析技术通过结合仿真和分析来估计BER性能。当系统错误率较小时,例如<10–6,请使用此技术。
通过使用MATLAB估计BER性能®功能和Simulink的®模型。
打开BER分析器应用
1、MATLAB Toolstrip:在“应用程序”选项卡上的“信号处理和通信”下,单击应用程序图标。
2、MATLAB命令提示符:输入bertool。
理论图
生成AWGN中16-QAM链路的BER性能的理论估计。
打开BER Analysis应用程序。
将Eb/ N0范围指定为0:10。
将“调制类型”设置为QAM,将“调制顺序”设置为16。
通过单击Plot绘制BER曲线。
半解析图
使用半解析技术为具有矩形脉冲的QPSK链路绘制BER。
打开BER Analysis应用程序。
在“半分析”选项卡上,设置以下参数:
1、将调制顺序设置为4。
2、将“每个符号的样本数”参数设置为8。
3、将发送信号和接收信号参数设置为rectpulse(pskmod([0:3 0],4),8)。要使用半解析技术,符号数必须超过ML,其中M是调制阶数,L是脉冲响应长度。脉冲响应为1,因此至少需要五个符号。
4、将分子指定为ones(8,1)/8。这些系数指定了每个符号具有八个样本的理想积分器。
通过单击绘制BER与Eb/ N0曲线。
蒙特卡罗模拟
使用自定义MATLAB函数模拟BER。
打开BER Analysis应用程序。
在“蒙特卡洛”选项卡上,将Eb/ N0范围指定为1:.5:6。
要绘制估计的BER值,请单击“运行”以运行仿真。
在“理论”选项卡上,将Eb/ N0范围指定为1:6,并将“调制阶数”设置为4。
通过选择卷积复选框启用卷积编码。
通过单击Plot绘制BER曲线的上限。
Eb/N0range—评估BER的Eb/ N0值的范围0:18(默认)|向量
以dB为单位指定Eb/ N0值的范围,在该范围内评估BER。范围向量中的值必须是实数。
例:5:10
Channel type—评估BER的通道类型AWGN(默认)|Rayleigh|Rician
指定评估BER的通道类型。在Rayleigh和Rician选项对应于平坦衰落信道。
Modulation type—通信链接的调制类型PSK(默认)|DPSK|OQPSK|PAM|QAM|FSK|MSK|CPFSK
指定通信链路的调制类型。
Modulation order—通信链接的调制顺序2(默认)|4|8|16|32|64
指定通信链路的调制顺序。
Differential encoding—输入数据的差分编码Off(默认)|On
指定是否对输入数据序列进行差分编码。
Demodulation type—解调类型Coherent|Noncoherent
指定是否使用Coherent或Noncoherent解调。仅当“调制”类型为FSK或时,此参数才可用MSK。
Channel coding—用于估计BER的通道编码None(默认)|Convolutional|Block
指定用于估计理论BER的信道编码类型。
Synchronization—同步错误Perfect synchronization(默认)|Normalized timing error|RMS phase noise level
指定解调过程中的同步错误。此参数只有当调制类型是PSK与调制阶数是2。
当同步的Normalized timing error,指定的标准化误差从一个实数0来0.5。
当同步是RMS phase noise level,指定RMS相位噪声作为非负实数。
Decision method—解码决策方法Hard(默认)|Soft
指定用于解码接收到的数据的方法。这些条件之一存在时,此参数可用:
通道编码设置为卷积
通道编码设置为“块”,编码类型为General
Trellis—卷积码网格poly2trellis(7,[171 133])(默认)|结构体
将卷积码网格指定为结构变量。您可以使用poly2trellis函数生成此结构。仅当Channel编码参数为时,此参数才可用Convolutional。
Coding type—指定块编码类型General(默认)|Hamming|Golay|Reed-Solomon
指定在BER评估中使用的分组代码。
N—码字长度正整数
将代码字长度指定为正整数。
K—消息长度正整数
指定消息长度为正整数,使得ķ小于Ñ。
dmin—最小代码距离正整数
将(N,K)块代码的最小距离指定为正整数。此参数可当编码类型是General。
Samples per symbol—每个符号的样本16(默认)|正整数
将每个符号的样本数指定为正整数。
Transmitted signal—传输的样本序列rectpulse(step(comm.BPSKModulator, [0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 0].'), 16)(默认)|向量
将传输序列指定为实数或复数列向量。
数据类型:double
复数支持:是
Received signal—接收的样品序列rectpulse(step(comm.BPSKModulator, [0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 0].'), 16)(默认)|向量
将接收到的序列指定为实数列或复数列向量。
数据类型:double复数支持:是
Numerator—接收滤波器系数的分子ones(16,1)/16(默认)|标量|向量
将接收滤波器系数的分子指定为向量。
Denominator—接收滤波器系数的分母1(默认)|标量|向量
将接收滤波器系数的分母指定为向量。
蒙特卡洛
Simulation MATLAB file or Simulink model— BER模拟字符向量的文件名
指定包含仿真代码的MATLAB文件或Simulink模型的名称。
BER variable name—包含BER模拟数据字符向量的变量的名称
指定包含BER模拟数据的MATLAB工作区变量的名称。
Number of errors—模拟停止前测得的错误数100(默认)|正整数
指定在模拟停止之前必须测量的错误数。通常,测量到的100个误差足以产生准确的BER估计。
Number of bits—模拟停止前已处理的位数1e8(默认)|正整数
