DQPSK,就是四进制相移键控技术,利用前后相邻两个码元的相位差传递数据,DQPSK信号编码方式通常有两种:A方式和B方式,A方式相位差取值分别为:0°、90°、180°和270°,B方式取值45°、135°、225°和315°,这里我采用的是A方式编码规则。
这篇文章是利用MATLAB工具对DQPSK系统的调制与解调系统进行仿真,系统框图如下:
(1)发送数据:从TXT文件中导入数据,本次以32位数据为例进行仿真;
(2)串并转换:把01信息码元分成I、Q两路,同时每路的输入码元的持续时间是输入码元的2倍(在MATLAB中通过连续输入两个相同码元实现此功能),同时将01码元转换成二进制双极性脉冲,其对应关系是:0->+1,1->-1,因为在电路中用的是不归零二进制双极性矩形脉冲。另外注意,这里将0 1码元转换为双极性码也可以是以下的对应关系:1不变,0变成-1,但是接收端的并串转换规则要与这里相对应;
(3)差分编码:将绝对码转换为相对码,利用QDPSK的码变换关系,输入和输出一共有16种可能关系,利用查表的方式,编写代码;
(4)成型滤波:在这之前先要上采样,就是对经过编码的数据码元进行整倍插值,这里是4倍插值(每相邻码元之间插入3个零),调用MATLAB里面的unsample函数;接着进行成型滤波,是为了消除码间串扰,降低误码率,以致对接收端的抽样判决造成干扰,基本原理可以这样解释:时域上,码元的冲击响应h(t)的抽样值除了在t=0时不为零,其余所有的抽样点上均为零;频域上,系统的传输特性H(w)可以等效成一个理想低通滤波器,满足这个条件就可以实现无码间串扰;这里通过利用MATLAB的fdesign.pulseshaping函数设计成型滤波器,设计出32阶、,滚降系数为0.35,横跨八个码元的根升余弦滤波器,带外衰减和旁瓣高度均小于-30dB,其幅频特性和冲击响应分别如图