刚开始学习simulink搭建通信系统,本文旨在记录学习过程,若有错误请批评指正
曾在vivado手写过QPSK调制解调过程,若有需要也可以直接联系邮箱3064236795@qq.com
Simulink实现QPSK信号仿真测试
一:random interger 参数设置
实现QPSK时该模块有两种方式设置:integer输出和binary输出
1:binary输出
Sample time :表示一个符号的持续时间,单位是秒,大小等于 1/码元速率
Sample per frame : 一帧中的符号数量。1帧是simulink处理数据的最小单位,本质还是一系列串行数据,每个数据持续时间是由sample time决定。所以输出信号维度是2x1。binary输入时,sample per frame 最少设置为2.因为QPSK Modulator要求设置为binary输入时比特时要成对输入。
2:integer输出
首先介绍QPSK Modulator的星座图对应关系,该模块有两种星座图对应方式:binary和Gray:
一般选用Gray.
输入为0,1,2,3时对应Gray类型星座图:
这时sample per frame设置为1,因为一个整数对应一个符号,产生数据图如下:
同理random integer输出二进制01时,对应的Gray星座图为:
这里sample per frame 就需要设置为2的倍数,应为两个bit才对应一个符号
二:AWGN
Eb/No: Eb/No”代表的是每比特能量与噪声功率谱密度之比(Energy per Bit to Noise Power Spectral Density Ratio)。Eb 表示每个信息比特所携带的能量,即信号的能量除以编码的信息比特数。No 是指噪声功率谱密度,即单位频带内的噪声功率
因为QPSK调制2bit映射一个符号,所以AWGN的symbol period 应该是random integer采样周期的两倍。
也可以直接设置SNR的值
三:QPSK Modulate
可以选择integer 或者bit .映射方式可以选择 binary或者Gray
选择格雷码映射可以参照下列代码,是最基础的映射理解
QPSK解调部分对应选择即可
四:constellation diagram
可以在symbols to display 设置显示多少个星座点,也可以选择input frame length:一帧输入多少就显示多少
五:Error Rate calculation
该模块有两种观察方式,一种是port输出,该方式会输出一个列向量:[R;N;S]。
R:错误率
N:错误数
S:样本数
也可以选择输出在工作空间,设置如下
Varible name是设置的变量名字,会输出在工作空间,这时simulink模型中该模块将没有输出端口