第一章 OFDM chirp信号生成

第一章 OFDM chirp信号生成



前言

之前学习MIMO SAR的时候,使用正负调频信号来做仿真,发现如果将多个通道组合起来进行方位压缩,在方位向上有没有办法消除的模糊,所以想换一种正交的信号。OFDM chirp信号说不定可以解决问题。

一、OFDM信号

假设有N个输入的信号 S [ p ] ( p = 1 , 2 , . . . , N ) S[p](p=1,2,...,N) S[p](p=1,2,...,N),被N个独立子载波求和调制,调制信号为:
s ( t ) = ∑ p = 1 N S [ p ] ⋅ exp ⁡ ( j 2 π f p t ) ⋅ rect ( t T p ) s(t) =\sum_{p=1}^{N} S[p] \cdot \exp(j 2 \pi f_p t) \cdot \text{rect} \left( \frac{t}{T_p} \right) s(t)=p=1NS[p]exp(j2πfpt)rect(Tpt)
其中 T p T_p Tp是脉冲持续时间, r e c t rect rect是矩形窗, f p f_p fp是子载波频率,调制的过程如图所示:

OFDM调制示意图其中每一个子载波都需要满足正交条件
∫ − ∞ ∞ exp ⁡ ( j 2 π f i t ) ⋅ exp ⁡ ( − j 2 π f p t )   d t = δ l p \int_{-\infty}^{\infty} \exp\left(j 2 \pi f_i t\right) \cdot \exp\left(-j 2 \pi f_p t\right) \, dt = \delta_{lp} exp(j2πfit)exp(j2πfpt)dt=δlp
其中
δ l p = { 1 if  l = p , 0 if  l ≠ p . \delta_{lp}=\begin{cases} 1&\quad\text{if } l=p,\\ 0&\quad\text{if } l\neq p.\end{cases} δlp={10if l=p,if l=p.
s ( t ) s(t) s(t)做傅里叶变换容易得到
F { s ( t ) } = ∫ − T p / 2 T p / 2 s ( t ) ⋅ exp ⁡ ( − j 2 π f p t ) d t = T p 2 ∑ p = 1 N [ S [ p ] ∗ s i n c ( ( f − f p ) T p ] \begin{aligned} \mathcal{F}\{s(t)\}& =\int_{-T_p/2}^{T_p/2}s(t)\cdot\exp\left(-j2\pi f_pt\right)\mathrm{d}t \\ &=\frac{T_p}2\sum_{p=1}^N\left[S[p]*\mathrm{sinc}((f-f_p)T_p\right] \end{aligned} F{s(t)}=Tp/2Tp/2s(t)exp(j2πfpt)dt=2Tpp=1N[S[p]sinc((ffp)Tp]
可以看出OFDM信号频谱是N个sinc函数的叠加,如下图
在这里插入图片描述

可以将这种调制解调过程和傅里叶变换联系起来。事实上,只需要满足 Δ f = 1 / T p = 1 / ( N T s ) \Delta f=1/T_p=1/(NT_s) Δf=1/Tp=1/(NTs),调制解调过程等价于DFT和IDFT过程。


二、OFDM chirp信号

采用up-chirp信号来生成对应的OFDM信号。

1.频域生成

chirp信号的频域表达式为:
S ( f ) = exp ⁡ ( − j π f 2 K r ) S(f)=\exp\left(-j\frac{\pi f^2}{K_r}\right) S(f)=exp(jKrπf2)
在实际应用中,用N个复数序列表示 S S S:
S = [ S ( f 0 ) , S ( f 1 ) , . . . , S ( f N ) ] S=[S(f_0),S(f_1),...,S(f_N)] S=[S(f0),S(f1),...,S(fN)]
生成的OFDM信号是由N个正交子载波调制的输入序列之和:
s ( t ) = ∑ p = 0 N − 1 S ( f p ) ⏟ d a t a exp ⁡ ( j 2 π ⋅ ( p ⋅ Δ f ) ⋅ t ) ⏟ orthogonal subcarriers s(t)=\sum_{p=0}^{N-1}\underbrace{S(f_p)}_{\mathrm{data}}\underbrace{\exp(j2\pi\cdot(p\cdot\Delta f)\cdot t)}_{\text{orthogonal subcarriers}} s(t)=p=0N1data S(fp)orthogonal subcarriers exp(j2π(pΔf)t)
用离散信号表达式来表示为:
s [ n ] = ∑ p = 0 N − 1 S [ p ] ⋅ exp ⁡ ( j 2 π N p n ) s\left[n\right]=\sum_{p=0}^{N-1}S\left[p\right]\cdot\exp\left(j\frac{2\pi}Npn\right) s[n]=p=0N1S[p]exp(jN2πpn)
其中 t = n T s , Δ f = 1 / T p = 1 / ( N T s ) t=nT_s,\Delta f=1/T_p=1/(NT_s) t=nTs,Δf=1/Tp=1/(NTs)
发射波形设计
目标是设计两个波形 s 1 ( t ) s_1(t) s1(t) s 2 ( t ) s_2(t) s2(t),使其具有正交性,且有线性调频信号的性质。采用的波形如下:
S 1 [ p ] = { S o [ p ] = exp ⁡ ( − j π ( p ⋅ Δ f ) 2 K r ) if  p 2 is integer 0 otherwise S_1[p]=\begin{cases}S_o[p]=\exp\left(-j\pi\frac{(p\cdot\Delta f)^2}{K_r}\right)&\text{if }\frac{p}{2}\text{is integer}\\0&\text{otherwise}\end{cases} S1[p]={So[p]=exp(Kr(pΔf)2)0if 2pis integerotherwise
S 2 [ p ] = { S e [ p ] = exp ⁡ ( − j π ( ( p − 1 ) ⋅ Δ f ) 2 K r ) if  p + 1 2 is integer 0 otherwise S_2[p]=\begin{cases}S_e[p]=\exp\left(-j\pi\frac{((p-1)\cdot\Delta f)^2}{K_r}\right)&\text{if }\frac{p+1}{2}\text{is integer}\\0&\text{otherwise}\end{cases} S2[p]={Se[p]=exp(Kr((p1)Δf)2)0if 2p+1is integerotherwise
其中 p = 0 , 1 , 2 , . . . , 2 N − 1 p=0,1,2,...,2N-1 p=0,1,2,...,2N1 Δ f = 1 / ( 2 N T s ) = 1 / ( 2 T p ) \Delta f=1/(2NT_s)=1/(2T_p) Δf=1/(2NTs)=1/(2Tp),如下图:
OFDM chirp示意图可以看出S1是将S的偶数位置补零,S2是将S的奇数位置补零,相当于S2是将S1平移得到的结果,再将S1和S2做逆傅里叶变换可以得到时域信号波形。matlab代码如下

clear
close all

%% ****************** 参数设置 *************************
N = 1024;                               % chirp signal 点数
bandwidth = 100e6;                      % 信号带宽
delta_f = bandwidth/2/N;
d_tau =  1/bandwidth;
f_tau = (0 : N-1)* bandwidth / N;
Kr = bandwidth/(N*d_tau);
Sp = exp(-1j*pi*f_tau.^2/Kr);					
plot(1:N,real(ifft(Sp)));

S0f = zeros(1,2*N);
Sef = zeros(1,2*N);

for p = 1 : N
    S0f(2*p-1) = exp(-1j*pi*(2*(p-1)*delta_f).^2/Kr);
    S0f(2*p) = 0;
end

for p = 1 : N
    Sef(2*p-1) = 0;
    Sef(2*p) = exp(-1j*pi*(2*(p-1)*delta_f).^2/Kr);
end

根据Cooley-Tukey算法,DFT/IDFT可以通过对输入的奇偶分量分离变换实现,由于S1,S2中的偶数,奇数分量为0,可以分别对其进行傅里叶变换实现。
s 1 [ n ] = F − 1 { S o [ p ] } = ∑ p ˉ = 0 N − 1 S o [ p ˉ ] ⋅ exp ⁡ ( j 2 π N p ˉ n ) , \begin{aligned} s_{1}[n]& =\mathcal{F}^{-1}\{S_o[p]\} \\ &=\sum_{\bar{p}=0}^{N-1}S_o[\bar{p}]\cdot\exp\left(j\frac{2\pi}N\bar{p}n\right), \end{aligned} s1[n]=F1{So[p]}=pˉ=0N1So[pˉ]exp(jN2πpˉn),
s 2 [ n ] = F − 1 { S e [ p ] } = ∑ p ˉ = 0 N − 1 S e [ p ˉ ] ⋅ exp ⁡ ( j 2 π N p ˉ n ) ⋅ exp ⁡ ( j π N n ) \begin{aligned} s_{2}[n]& =\mathcal{F}^{-1}\{S_e[p]\} \\ &=\sum_{\bar{p}=0}^{N-1}S_{e}[\bar{p}]\cdot\exp\left(j\frac{2\pi}{N}\bar{p}n\right)\cdot\exp\left(j\frac{\pi}{N}n\right) \end{aligned} s2[n]=F1{Se[p]}=pˉ=0N1Se[pˉ]exp(jN2πpˉn)exp(jNπn)
其中 p ˉ = 0 , 1 , . . . , N − 1 \bar p=0,1,...,N-1 pˉ=0,1,...,N1, n = 0 , 1 , 2 , . . . , 2 N − 1 n=0,1,2,...,2N-1 n=0,1,2,...,2N1。代码如下:

s1 = zeros(1,2*N);
S2 = zeros(1,2*N);

for  n = 1:2*N
    for p = 1 : N
        s1(n) = s1(n)+Sp(p)*exp(1j*2*pi/N*(p-1)*(n-1));
    end
end

for  n = 1:2*N
    for p = 1 : N
        s2(n) = s2(n)+Sp(p)*exp(1j*2*pi/N*(p-1)*(n-1))*exp(1j*pi*(n-1)/N);
    end
end

这两种方法生成的时域波形都是一样的,实部虚部分别为:
实部虚部Kim[1]的论文里面说会有过冲现象,但是直接仿真的时候没有看到。

2.时域生成

由DFT的重复性质,可以直接使用时域来生成OFDM信号,表示为两个OFDM波形的偏移:
s 1 = s o [ n ] ⋅ rect [ n N ] + s o [ n − N ] ⋅ rect [ n − N N ] s_1=s_o[n]\cdot\text{rect}\left[\frac{n}{N}\right]+s_o[n-N]\cdot\text{rect}\left[\frac{n-N}{N}\right] s1=so[n]rect[Nn]+so[nN]rect[NnN]
s 2 = ( s e [ n ] ⋅ rect [ n N ] + s e [ n − N ] ⋅ rect [ n − N N ] ) ⋅ exp ( j π N n ) . s_2=\left(s_e[n]\cdot\text{rect}\left[\frac{n}{N}\right]+s_e[n-N]\cdot\text{rect}\left[\frac{n-N}{N}\right]\right)\cdot\text{exp}\left(j\frac{\pi}{N}n\right). s2=(se[n]rect[Nn]+se[nN]rect[NnN])exp(jNπn).

tau = (0:N-1)*d_tau;
s = exp(1j*pi*Kr*tau.^2);
s1(1:N) = s;
s1(N+1:2*N) = s;
subplot(2,1,1)
plot(1:2*N,real(ifftshift(s1)));
for  n = 1:2*N
    s2(n) = s1(n)*exp(1j*pi*(n-1)/N);    
end
subplot(2,1,2)
plot(1:2*N,real(ifftshift(s2)));

如果这样生成的话,和频域生成图像会有不同
时域生成在时域生成中,考虑到相位的不连续性,有:
π K r t 2 ∣ t = T p = ! π K r ( t − T p ) 2 ∣ t = T p . \pi K_rt^2|_{t=T_p}\stackrel{!}{=}\pi K_r(t-T_p)^2|_{t=T_p}. πKrt2t=Tp=!πKr(tTp)2t=Tp.
带入 K r = f 0 / T p , f 0 = 2 N Δ f , Δ f = 1 / ( 2 T p ) Kr=f_0/T_p,f_0=2N\Delta f,\Delta f=1/(2T_p) Kr=f0/Tp,f0=2NΔf,Δf=1/(2Tp)可得:
N = ! even integer. N\stackrel{!}{=}\text{even integer.} N=!even integer.


参考文献

[1] J. -H. Kim, “Multiple-Input Multiple-OutputSynthetic Aperture Radar for Multimodal Operation”, june 2012

  • 16
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值