随机解调系统的伪随机序列m序列的产生及频谱图

这是我压缩感知分栏的第一篇文章,我将压缩感知、模拟信息转化领域中的一些概念、公式推导、程序写在博客里,一方面能够记录我的学习历程,另一方面可以分享给别人。

随机解调是压缩感知理论的一种实际应用,它针对的是多频点信号,例如调幅信号AM,压缩感知系统中采用m序列来对点频信号进行频谱的搬移,m序列,即伪随机序列,它由随机的1、-1构成,伪随机序列的频谱杂乱无章且均匀分布在整个频率轴上,它与输入信号x(t)时域相乘,频域表现为卷积,进过卷积后,x(t)的频谱被均匀涂抹在了整个频率轴,这就给了我们低速采样后在低频段恢复信号的可能。

m序列的频谱特性与白噪声相似,它的自相关函数在零点初取得最大值,除了零点外处处为零,m序列与x(t)混频后的信号y(t)的频谱Y(f),Y(f)是m序列频谱的移位加权。

下面给出来伪m序列的时域和频域图,以及matlab程序。

%%-----------------------------------------------------------------------------
%%生成m序列,绘制m序列的时域和频域图
%%-------------------------------------------------
clc;clear all;close all;
%%-------------------------------------------------
Fs = 10000;%采样频率
dt = 1/Fs;%采样时间间隔
L = 1000;
t = (0:L-1)*dt;%生成时间向量
pn = randsrc(1,L);
subplot(2,1,1);%2行1列,第一个区域
stairs(t(1:100),pn(1:100));%绘制阶梯图
axis([0 0.01 -1.2 1.2]);%调节坐标轴刻度
xlabel('时间/s');ylabel('幅值/s');

F = fft(pn)/L;%对pn进行离散傅里叶变换
W = (0:L/2-1)*(Fs/L);
subplot(2,1,2);%2行1列,第2个区域
plot(W,abs(F(1:L/2)));%stem用于绘制茎状图
xlabel('m序列的频谱');ylabel('幅值/s');
 

随机解调系统的伪随机序列m序列的产生及频谱图