|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
π/4-DQPSK调制快速位定时捕获算法的DSP实现 # U( b: j A4 d2 B+ x. g
摘要:阐述利用一种新的π/4-DQPSK调制快速位定时捕获算法进行低速率数字移动突发通信,并利用TMSC54xDSP芯片实现该算法的关键技术。实验表明,较之常规算法,该算法能够更加有效地克服多普勒频并快速实现位定时捕获。
C) K. x t3 n+ P) P5 n1 Q关键词:π/4-DQPSK调制 位定时 数字信号处理器
! u& U A1 }3 u! n$ Lπ/4-DQPSK(π/4 Shift Differentially Encoded Quadrature Phase Shift Keying)是在1862年由贝尔实验室P.A.Baker首先提出垢。
4 R- T. k- R+ a8 a4 [, M![]()
5 L5 h Z& s* e" A) \" U- n3 r
) G2 d" Z) j) G' l- j- H作为一种线性窄带数字调制技术,同GMSK和TFM等恒包络调制技术相比,π/4-DQPSK调制技术具有更高的频谱利用率和抗衰落、抗多径效应和遮蔽效应等优点。在近年来陆地移动通信与数字卫星移动通信、DAB等系统中受到广泛的重视与研究。美国Qualcomm公司推出的一个衫CDMA系统(Q-CDMA系统)就将其作为调制方式。9 h2 F* @5 D: R$ v& ~6 m( p
但是,在移动通信中,由于电台载体的快速运动,接受信号中存在较大的多普勒频移,这给接收检测时位同步带来了一定困难。因此如何准确、快速进行信号能量检测、多普勒频称校正和位定时信号的捕获与跟踪成为正确检测信号的关键所在。/ f( p; |3 L' b9 i! q' h- l
; n1 D+ U% e; b d- d近年来对如何克服多普勒频移、
' D* Z: u* U; B8 o* j' f$ n* E
# L7 p! I: ?$ T* }& J' [ $ X, ?9 E0 c8 j
4 y: ]5 m( j; o" ?位定时的捕获和跟踪提出了很多算法。文献[3]提出的MPSK差分检测算法较具代表性:先利用突发帧报头的CR(Carrier Recovery)信号获取载波误差,然后再从报头BTR(Bit Timing Recovery)信号来获取位定时信息[3]。但是MPSK算法并未很好地解决多普勒频移的初始捕获问题,而且不适合π/4-DQPSK调制方式。文献[4]中的位定时算法跟踪特性好,并且较易实现,然而在频差存在的情况下,校正后容易存在残余频差,受其影响较大。为此本文选用文献[6]提出的算法,该算法在跟踪过程中与频差无关,并可以在较短周期内实现多普勒频移和位定时的联合捕获。7 I3 Z6 l8 E+ y4 O7 Q
随着数字信号处理技术的发展,DSP对数字信号的处理运算精度和速度也越来越高,特别适用于通信等实时运算要求较高的领域,本文采用TI公司出品的TMS320C542数字信号算是器实现快速位定时捕获算法。TMS320C542是美国TI公司生产的TMS320系列第五代数字信号处理芯片,运算速度达100MIPS,采用六级流水线形式,并具有大批适合数字信号处理运算的指令,性能价格比高,目前国内已广泛应用。本文在TMS320C542芯片上实现了π/4-DQPSK调制信号的快速位同步算法,实验结果表明,利用DSP芯片实现的该算法能够有效地实现多普勒频移和位定时信号的快速捕获,个有广泛的应用价值。
) @( N. ]5 C: S# I1 π/4-DQPSK调制的基本原理6 {" }- t% C, `# C, Q6 ^$ g, B1 n
π/4-DQPSK调制原理框图和信号星座图分别如图1和图2所示。可以看出:π/4-DQPSK的较大相移为3π/4;带限的π/4-DQPSK的包络波动较小;非线性信道频谱扩散不严重;当有多径衰落存在时,它的工作敏感性小,有利于信号传输[4]。1 J2 \+ I5 i. c, X
假设载波初相位为0,输出序列为:
. e- `$ U8 I7 {6 I/ J; C![]()
% p: V0 F! F u- p& W8 r 其中:g(t)为频谱,是平方根升余弦基带脉冲;ω为载波角频率;Ts为码元宽度;θ(t)为调制相位。θ(t)=θ(t-Ts)+Δθ(t),当kTs≤t≤(k+1)Ts时,(Xk,Yk)与Δθ(t)关系如表1所示。3 _, |7 j+ {' O. J
考虑多普勒频移情况,令多普勒频移为Δω;包络信号为A(t)= ;则依据原理框图可得受多普勒效应影响的已调基带信号实部与虚部分别为:
- B5 \4 u' H ISri(t)=A(t)cos[Δωt+θ(t)-φ]
" l+ ]+ X, w% ^5 B5 [8 X7 BSrq(t)=A(t)sin[Δωt+θ(t)-φ]$ R, n' d1 g+ Y9 y, v; Z' u
其中φ为收发固定相差;改写成复数形式表示为:' D( P% }; v: c" v0 @4 B; [5 }
/ e9 N& d& T& ^
2 快速位定时捕获算法
: j8 @4 Q1 K! v% }根据文献[6],首先定义x(t)=sr(t)s^r(t-2Ts),其中s^r(t)为sr(t)复共轭。则有:
1 K7 N6 M% f( K g+ C' @ # l3 f5 V9 v, }) o3 W z( X7 L
对于利用差分检测突发帧,不需要CR码参与检测算法的计算,而只需BTR码。当BTR码为“…x(k-1)y(k-1)xkykx(k+1)y(k+1)…=…11001100…”时,可近似认为A(t-2Ts)=A(t)。由表1可推出:
; V! s# m! e9 Uθ(t)-θ(t-2Ts)=-π/2
: ]* L& @" V0 h! @) G8 g2 `; F因此:xi(t)=A2(t)sin(2ΔωTs)
: Q0 ^$ q/ [7 w" zxq(t)=A2(t)cos(2ΔωTs)8 I; Z" f6 @/ N2 _
xi(t),xq(t)分别为x(t)的实部和虚部。' u: C7 t2 j# @2 m/ P) ^% ^- ]5 g4 T
讨论接受机匀速直线运动情况,此时Δω在BTR期间保持不变,当t=t0+kT时,定义:
3 I5 V4 g; ^7 O* B a# } 1 l8 J {6 M N" [# Z
其中:k=0,1,2,…,(m-1);t0为起始时刻,0≤t0≤Ts;T为抽样间隔,Ts=mT,m为一个码元内的抽样点数;N为窗口宽度,且L/2≤N≤L,L为BTR长度。( A$ p& L/ p% C; p. S
BTR期间,Acqi(k)、Acqq(k)、Amp(k)都将迅速增加,而其他噪声对应均值为零,另门限值为Ath,因此判断突发帧到达的准则为:3 N/ k2 k8 r8 Q0 P) Y9 I5 B( ^/ \
max{Amp(k) k=0,1,…,m-1}≥Ath
3 Y5 ]4 l3 e! F+ Z令Amp(k0)=max{Amp(k) k=0,1,…,m-1};A0=A2(to+k0T+nTs),n=0,1,…,N-1;则多普勒频移可由下式计算:
' k$ ^- R0 B0 n5 o8 K+ i; OΔωTs=(1/2)tan-1{acqi(k0)/acqq(k0)}
: k$ g' Z/ h% y6 s {$ u5 c4 G% _其中:acqi(k0)=NA0sin(2ΔωTs);acqq(k0)=NA0cos(2ΔωTs)$ r5 W2 Y3 ~2 x" d
接受机匀加速直线运动时,即Δω在BTR期间变化时,令Δω=Δω0+β,其中Δω0为起始频差,β为角速度,同样可计算:
! y2 _ U, U7 m ( i; C% s( R5 L, ~ A4 N
xi(t)=A2(t)sin(2Δω0Ts)cos[4βTs(t-Ts)]+A2(t)
0 T* c7 Z6 R& ncos(2Δω0Ts)sin[4βTs(t-Ts)]9 J$ O0 s( w3 ^& k8 o. T
xi(t)=A2(t)cos(2Δω0Ts)cos[4βTs(t-Ts)]+A2(t)
- G( M" O9 G# G1 {0 Asin(2Δω0Ts)sin[4Ts(t-Ts)]
1 ~6 L1 j+ b+ j# b, u* G# H假设当t=0时报头出现,又: 4βT2s(N-1) ≤0.01时,sin[4βTs(t-Ts)]≈0,0≤t≤Ntscos[4βTs(t-Ts)];令max{sin[βTs(t-Ts)]}=sin[4βTs2s(N-1)]则有:
% {( Y! x0 W& o" B2 G/ c) ]# icos{4βTs(t0+kT-Ts)}≈cos{4βTs(t0+kT)}≈…≈
( y3 ]' H7 m7 L7 b) S4 D7 R7 Fcos{4βTs[t0+kT+(N-2)Ts]}
& n* [( n' ^3 V7 A0 Z/ v# v/ B令λ=cos{4βTs(t0+kT-Ts)},多普勒频移可由下式计算:& W7 D- ]( y) m. u
Δω0Ts=(1/2)tan-1{acq,(k0)/acqq(k0)}
& b. t' v& w1 p+ O* K! N其中:acqi(k0)=NλA0sin(2ΔωTs);acqq(k0)=NλA0cos(2ΔωTs); U- y/ R3 r3 L+ s, Z, E0 v- i
由于假设 4βT2s(N-1) ≤0.01,2 B8 b" Q2 T0 U
; v( P2 d/ @3 H$ x1 U9 j, M![]()
$ @3 U/ l/ C3 u* t
* B Q$ s, _) O$ H根据多普勒频移与接受机运动速度v关系式fD=(fc/c)v(fc为载波频率;c为光速),对时间t求导可推出:v''=(β/2π)(c/fc)。对于普通接收机的运加加速度,完全满足假设条件。; t: r; K9 a4 a3 m% P; `. o
由上面推导可以得出结论:在接收机匀直运动与加速运行中,依照该算法,信号能量的检测、多普勒频移、位定时信号可以实现联合捕获。该算法在DSP上的实现表明,捕获周期较短,可以快速进行位定时。
( f$ P4 k( ~* s8 ]+ \3 系统的DSP实现
8 w8 F# Z: X( {6 \* w3.1 硬件设计# U9 y+ [3 X, J4 C$ W
整个捕获系统的算法部分用TI公司的TMS320C542 DSP芯片实现。TMS320 C542的运算速度为100MIPS,采用先进的修正哈佛结构,指令为6级深度流水线作业。在同一机器周期可有1~6条不同指令并行工作。此外还含有两个带缓冲的串口,6个DMA控制器,2个16位可编程定时器,8位行主机接口HPI。外部总线具有关断控制,以断开外部的数据总线、地址总线和控制信号。片内资源包括2K的ROM和10K的DRA。C542的指令功能强大,可以完成存储块搬移、并行存储、并行装入和快速中断返回等诸多功能[1][2][5]。* Y5 R& I' T- W1 D# C; h7 W
硬件系统框图如图3所示。来自前端的信号经高速A/D变换和串口1送至TMS320C542 DSP芯片,在DMA控制器作用下送到采样数据缓冲器。时钟用于突发帧接收的定时控制。C542 DSP除了完成位定时捕获算法以外,还要完成捕捉之前的系统初始化;通过辅助控制电路选择抽样时钟和选择算法相关参数。BUS总线主要完成PC与DSP接口、数据I/O、提供时钟等功能。输出缓冲是码流的暂时存储区。接口电路分为两部分:一部分控制编码输出缓冲,另一部分是通过串口0与C542 DSP连接的接口。接口使用RS232接口芯片,9 Q2 l5 D6 {: f: L- a, d
5 O5 T- H9 l& J4 t4 P6 B
$ Q% ]1 j5 U# ]$ G完成DSP串口与C542串口的连接,完成地直译码及与C542 DSP交换控制命令等功能。
& t9 M, X$ S3 l. I* l; V* Z3.2 软件设计7 E/ W! {+ l7 ?7 w7 R8 `! e+ e/ M
软件设计是快速位定时捕获算法的核心。完成信号能量的检测、多普勒频移、位定时信号捕获,绝大部分依靠DSP实时处理运算的结构。软件流程图如图4所示。* _; W2 \) h/ ~" j4 w! [1 p
程序执行采用中断方式。DSP及时响应来自总线的中断和控制命令,实时调用相应的算法模块更改参数、计算,并由串口将得出的捕获结果输出。
- |! w: o6 {' p3 ~( {输入数据由MATLAB通信仿真产生的含多普勒频移和高斯白噪声信号,假设已经过串/并转换,并将信息码流定为4.8kbps;符号速率2.4ksymbols/s,抽样频率9.6samples/s,由总线送出,运算时采取先累加再乘方的方法,窗口宽N取16,同BTR码的长度L相同。$ t* C- ]8 R& \; [5 D/ Y! B
将内部数据存储单元化为I、Q两个区,对两个区同时进行读写操作。总线送出的系统参数放至第三区,在初始化时调用。将串口数据分别送入I、Q存储区,指针初始化后,DSP的运算步骤为:7 l# t o0 }' f; p" F
(1)指针指向一个值xi(0),xq(0)起始指针i=0;0 [0 C3 n1 E* P8 A0 g# Q3 Q
(2)累加:Acqi=xi(0)+xi(1)+xi(2)+…+xi(N-1);6 ~; X: |1 e! L% {, K. a
Acqq=xq(0)+xq(2)+…+xq(N-1);) J4 ~3 h1 a- C/ b& J
(3)计算Amp(k),与门限值Ath比较:大于则转向计算Δω,否则计算t=t0+(k+1)Ts时刻情形。2 b5 G' S2 H1 q Z
计算Δω的tan-1的近似公式如下:
" B' Y7 e, X. v; g$ t4 YΔω=1/2Ts{[acqi(k0)/acqq(k0)]-1/3[acqi(k0)]3+1/5[acqi(k0)/acqq(k0)]5+0(x7)}
( r _; y( A3 y2 w对于多组数据进行运算,结果表明随着信噪比的不同,- y2 [! T3 c* i/ S4 R8 t9 M
+ {) m! ?3 B2 v4 `$ i1 { 0 u5 w- F# v: m2 n9 L( q& _9 D0 `
4 K' V7 D! F( S7 q0 q+ Q g( y位定时捕获能力不同。但在较宽的范围内,移动台的加速度不超过5m/s2时,多普勒频移小于或等于0.25Rs(符号速率)时,在16~24个符号内都能够实现多普勒频移的快速捕获,将捕获结果保存。在同一参数的解调系统中送至送至位定时跟踪和匹配滤波器,能够成功实现π/4-DQPSK的解调仿真。
- L) x! a' U3 v2 l/ v4 实验结果和结论
$ q9 o6 L, n7 I6 C$ h* G2 f" {. C采用信道加噪声方法进行仿真,白噪声依据MATLAB信号处理工具产生,仿真参数如前所述,可得到仿真结果如图5所示。选取大多普勒频移500Hz,可以看出实际随着码流的加长,频移误差越来越小,达到捕捉效果。
( L, ]+ m3 f9 j! V' L5 n, F! E本文讨论了一种可应用在陆地或卫星移动通信中的快速位定时捕获算法的DSP实现技术,并进行了详尽理论、设计阐述。实验表明,这种算法的效率较高,能够在较短的周期内实现多普勒频移的计算、位定时的捕获。与传统的位定时捕获算法相比:捕获周期短,有利于缩短报头,利用DSP实时处理稳定性更高、抗干扰能力强、系统升组方便、更利于π/4-DQPSK调制技术在移动通信、卫星通信等带限信道中的潜力。然而,由于时间关系,没有研究利用DSP实现匹配滤波器、位定时信号的跟踪算法等技术。但是相位位定时捕获算法的DSP实现对其他π/4-DQPSK调制技术的整体DSP实现都提供了一定的参考价值,仿照该技术,也可对其进行有益的研究。5 j, D- p9 B/ ]; c* ]7 _2 z7 V
5 L z( f( _8 B% R O1 I7 D) t" U7 k6 F
1 J3 o5 P# g. \9 `0 o" R! m7 @9 S7 O3 f
|
|