背景技术
OFDM是一种高效率的调制机制。一般而言,在固定频宽的限制下,通讯系统可以下列两种方式进行传输,即单载波与多载波。多载波传输方式是指使用者可以同时利用多个子载波(Subcarrier)来进行传送与接收信号。OFDM传输技术的基本观念在于把单一高速数据通过数个彼此间正交的子载波以较低的传输速率来传输。
由于OFDM技术拥有较高的数据传输速度的特性并且能有效克服频率选择性衰减信道(Frequency Selective Fading Channel),因此目前已广泛使用于各式的无线通讯系统。然而,OFDM系统对时间偏移(Time Offset)与频率偏移(Frequency Offset)十分敏感,其中,时频的偏移容易引起载波间的干扰。因此,在OFDM通讯系统中,精确的时频偏移估计与补偿便显得极为重要,而同步问题也成为OFDM系统研究的主要内容。
在OFDM系统中,同步一般分为非数据辅助与数据辅助两类算法。在传统的数辅助算法中,最典型的是Schmidl所提出的一种利用两个特殊结构的训练码元来做时间和频率偏移值估计的同步算法(参见SCHMIDL T M,COX DC.Robust frequency and timing synchronization for OFDM[J].IEEE Trans.Commun.,1997,45(12):161321621)。此同步算法是利用Schmidl判决函数找出最大函数值所对应的时间点,并将此时间点设为时间同步点。
此外,为了减少系统负担,Y.H.Kim又依据此基础提出一种利用单一训练码元进行时频同步的改进算法(参见KIM Yun Hee.An efficient frequencyoffset estimator for OFDM systems and its performance characteristics[J].IEEETransactions on Vehicular Technology,2001 50(5):130721312)。不过由于上述两种算法皆会受到循环前缀(Cyclic Prefix,CP)的影响,而产生很大的时间估计误差,因此,Minn针对Schmidl算法做了改进提出另一种定时同步算法(参见Minn H,ZengM,Bhargava V K.On Timing Offset Estimation for OFDMSystem[J].IEEE Comm Lett,2000,4(7):2422244)。
然而由于Minn算法在多路径信道下的精确度仍然不高,于是,Park又设计了一种新型的同步训练码元(即Park训练码元),并提出对应此训练码元的一种定时同步算法,以提高定时估计的精确度(参见Park B,Cheon H,KangC,et al.A Novel Timing Estimation Method for OFDM Systems[J].IEEE CommLett,2003,7(5):2392241)。但由于Park算法中的Park判决函数在正确判决点的峰值的两侧各有一个副峰值,因此,在多径信道情况下,副峰值将会影响定时判决点。
此外,由Park所设计的Park训练码元也只实现了码元同步和小数频率偏移值的估计,因此,如果要做整数频率偏移值的估计则需要额外的训练码元。以下将针对Schmidl判决函数和Park判决函数做更详细的说明。
在OFDM系统的多基频等效模型中,发送端的OFDM多基频调制的时域信号可表示为:
,其中,N为系统子载波的数目,Xk为第k个子载波上的调制后的频域信号。
此外,多路径信道的脉冲响应可表示为:
,其中,hl(t)表示第1路径的等效低通脉冲响应,τl表示第1路径的延迟时间,L表示信道中的路径数。
接收端对收到的信号取样后得到的时域信号可表示为:
,其中,θ0=-2πεnε/N,nl=[nε+τl/Ts],nε表示未知的码元时间偏移值,Ts为取样周期,表示信道中的零均值加性高斯白噪音。ε=2εl+εF表示子载波间最小间隔的归一化频率偏移值,其中,εl、εF分别为子载波间隔的整数频率偏移值和小数频率偏移值。同步的主要任务是估计码元时间偏移值nε和归一化频率偏移值ε,并通过补偿来消除或减弱同步误差对系统性能的影响。
请参照图1,图1为Schmidl判决函数与Park判决函数的函数曲线图。Schmidl判决函数M2(d)的函数曲线如同虚线所示,在Schmidl所提出的同步定时算法中,由于循环前缀的存在,理论上整个循环前缀区间上的函数值都可以取到最大值。而在实际系统中,此区间内所有的函数值也都非常接近最大值,因此定时估计在时间偏移值nε点附近会存在如图1虚线所示的高原区。也就是说在Schmidl判决函数M2(d)中,会出现多个最大函数值,且这些函数值分别对应不同的时间点。由于Schmidl的算法是将Schmidl判决函数M2(d)中最大函数值所对应的时间点设定为时间同步点,因此,在此情况下,Schmidl的算法就给定时估计带来了不确定性,导致定时估计的误差过大,进而影响了码元定时的性能。
为了提高码元定时性能,Park设计了一种新的训练码元,并基于此训练码元提出一种码元定时同步算法。Park判决函数的函数曲线如同图1的实线所示,在高斯信道下,Park判决函数M1(d)的函数值在训练码元的正确起始点处的峰值M1(d1)远大于其它点。因此,Park判决函数M1(d)便消除了传统Schmidl判决函数M2(d)中存在的高原区,进而显著地提高码元同步的估计精确度。但由于Park训练码元的特殊性质及循环前缀的影响,Park判决函数M1(d)会在正确判决点d1的左右两侧各存在一个副峰值M1(d2)及副峰值M1(d3),副峰值M1(d2)及M1(d3)在多路径信道情况下将可能会影响定时判决的准确性。
在多路径信道下,由于存在码元间干扰(Inter-Symbol Interference),由(1)式可知,当存在i(i<L)条时间延迟都小于Ts的路径时,如果自接收端的信号取样位置使nl=[nε+τl/Ts],并且假设在一个OFDM码元内信道脉冲响应是与时间无关的,则接收的信号可表示为:
。比较(2)、(3)两式可发现,如果满足
,则可知第r
k+1个取样值中所含
的能量大于第r
k个取样值,因此将导致Park定时同步算法的判决函数M
1(d)的峰值M
1(d
1)出现的位置偏离正确判决点d
1而产生误判,进而影响码元定时估计的精确度。然而,如果只是降低判决的门限值来做判决,由于两侧副峰值M
1(d
2)及M
1(d
3)存在的影响,可能会产生更严重的误判。
此外,由于Park算法的频率偏移值的估计与Schmidl算法类似,只是利用训练码元时域数据前后重复的性质估计系统存在的频率偏移值,因此只能估计小数频率偏移值,使得频率偏移的估计范围受到限制。
具体实施方式
请参照图2A,图2A为本发明的示范实施例所提供的同步方法的流程图,此同步方法适用于OFDM系统的接收端。如图2A所示,本示范实施例的同步方法主要包括以下步骤。首先,于接收端接收OFDM训练码元,其中,OFDM训练码元包括多个取样点(步骤S102)。接着,使用第一函数根据这些取样点计算出多个第一函数值(步骤S104)。在本示范实施例中,第一函数可为Park判决函数M1(d),但本领域技术人员亦可以根据本发明的精神,将第一函数选择为其它类型的判决函数,例如Schmidl判决函数。
再来,自多个第一函数值所对应的多个时间点中找出D个时间点,其中,D个时间点的D个第一函数值皆大于第一门限值L1(步骤S106)。值得一提的是,在本示范实施例中,同步方法还可包括步骤S105。在步骤S106被执行之前,撷取第一函数值的最大值Max(M1(d))作为第一门限参考值R1,并根据第一门限参考值R1获得第一门限值L1(步骤S105)。其中,获得第一门限值L1的方法是将第一门限参考值R1与第一乘积系数η1相乘,且第一乘积系数η1为大于0且小于等于1的任意数。
请继续参照图2A,接着,使用第二函数计算D个时间点的D个第二函数值(步骤S108)。在本示范实施例中,第二函数为Schmidl判决函数M2(d),但本领域技术人员亦可以根据本发明的精神,将第二函数选择为其它类型的判决函数,例如Park判决函数。最后,自D个时间点中找出第一个第二函数值大于第二门限值L2的时间点,并将此时间点设为时间同步点d1(步骤S110)。值得一提的是,在本示范实施例中,同步方法还可包括步骤S109。在步骤S110被执行之前,撷取D个第二函数值的最大值Max(M2(d))作为第二门限参考值R2,并根据第二门限参考值R2获得第二门限值L2(步骤S109)。其中,获得第二门限值L2的方法是将第二门限参考值R2与第二乘积系数η2相乘,且第二乘积系数η2为大于0且小于等于1的任意数。除此之外,本示范实施例的同步方法还可包括步骤S111。在步骤S110被执行之后,依据时间同步点d1计算出小数频率偏移值εF与整数频率偏移值εl,并根据小数频率偏移值εF与整数频率偏移值εl计算出归一化频率偏移值ε(步骤S111)。
在此请注意,在上述示范实施例所提供的同步方法中,若信道为静态信道,且不需要获得归一化频率偏移值,则步骤S111可以移除。另外,若采用其它方式来获得第一与第二门限值,或者,第一与第二门限值能够由使用者来预设,则步骤S105与S109可以移除或采用其它的设计方式。
请参照图2B,图2B是本发明的示范实施例所提供的OFDM系统的系统方块图。需注意的是,图2B的OFDM系统所采用的同步方法为图2A所提供的同步方法。请同时参照图2A与图2B,如图2B所示,OFDM系统100包括接收端110与发射端120。接收端110包括同步装置112,且同步装置112包括接收单元114及时间同步单元116。接收单元114用以接收OFDM训练码元,其中,OFDM训练码元包括N个取样点,且N为大于1的正整数(即步骤S102)。
值得注意的是,在本示范实施例中,OFDM训练码元为Park训练码元,且前后N/2个取样点相同。Park训练码元在频域上仅有偶数编号的子载波有值。因此,本示范实施例的OFDM训练码元可表示为:
XTS=[X0,0,X2,0,...,X2i,0,...XN-2,0],i=0,1,...N/2-1,其中,X2i是实数,代表Park训练码元的频域数据。此外,为了作整数频偏移值εl估计,这里的X2i是由伪噪声码(Pseudo Noise Code)所组成,即是取值为+1或-1的伪随机序列,且Park训练码元的频域数据在接收端110为已知。
请同时继续参照图2A与2B,时间同步单元116耦接于接收单元114,且包括第一函数计算单元116a与第二函数计算单元116b。第一函数计算单元116a使用第一函数(Park判决函数M1(d))根据N个取样点计算出N个第一函数值(即步骤S104)。以下将针对此部分做详细说明。
Park训练码元的频域数据X2i在经过逆离散傅里叶变换(IDFT)后可以得到Park训练码元的时域数据Xk。由逆离散傅里叶变换的性质可知,Park训练码元的时域数据Xk满足:
xk=xk+N/2,(0≦k≦(N/2)-1);xk=x* N-k,(1≦k≦N/2);
xk=x* (N/2)-k,(0≦k≦N/4);xk+N/2=x* N-k,(1≦k≦N/4)。
首先利用Park训练码元的时域数据xk=x* N-k,(1≦k≦N/2)的性质,可确定一个集合A,保证正确时间同步点d1位置落在这个集合里。Park判决函数为:
M1(d)=|P1(d)|2/(c1(d))2
,其中,P1(d)与c1(d)分别表示如下:
因此,当接收单元114接收到Park训练码元后,第一函数计算单元116a便会利用上述的Park判决函数M1(d),根据Park训练码元中的N个取样点计算出N个第一函数值,一般而言,整个计算结果会如同图1实线部分所示。由图1可得知Park判决函数M1(d)的计算结果存在一个尖锐的主峰值M1(d1)和两个副峰值M1(d2)、M1(d3)。由于在多路径信道下,正确的时间同步点d1的函数值可能会比Park判决函数的最大值还要小,甚至低于两侧的副峰值M1(d2)、M1(d3),因此本示范实施例定义出第一门限值L1,并保证第一门限值L1低于正确同步时间点d1的函数值,以确保正确时间同步时间点d1的函数值可以被选取出来。
如此一来,第一函数计算单元116a便可根据N个第一函数值所对应的N个时间点中找出3个时间点d1~d3,且3个时间点的3个第一函数值M1(d1)~M1(d3)皆大于第一门限值L1(即步骤S106)。换句话说,若用第一门限值L1作判决时,不只正确同步时间点d1所对应的函数值M1(d1)会超过第一门限值L1,两侧的副峰值M1(d2)、M1(d3)也会超过第一门限值L1。
在本示范实施例中,是以Park判决函数的最大函数值Max(M1(d))=M1(d1)作为第一门限参考值R1,并将第一门限参考值R1与第一乘积系数η1相乘,以获得第一门限值L1,即L1=Max(M1(d))×η1(即步骤S105)。这里将这些超过第一门限值L1的函数值所对应的时间点定义为集合A。也就是说M1(d)≧Max(M1(d))×η1的时间点d∈A。
请继续同时参照图2A与图2B,第二函数计算单元116b耦接于第一函数计算单元116a。第二函数计算单元116b使用Schmidl判决函数计算3个时间点的3个第二函数值(即步骤S108)。详言之,步骤S108是利用Park训练码元的时域数据xk=xk+N/2,(0≦k≦(N/2)-1)的性质,将集合A里的时间点d1~d3进行Schmidl判决函数M2(d)的计算,其中Schmidl判决函数M2(d)可表示为:
M2(d)=|P2(d)|2/(c2(d))2
,其中,P2(d)与c2(d)分别表示如下:
请对照图1,从图1虚线部分的Schmidl判决函数M2(d)的计算结果可发现,在集合A的时间点d1~d3中,只有正确的时间同步点d1及时间同步点d1后面的一个或多个由于多路径信道影响的第二函数值是接近Schmidl判决函数M2(d)的最大值。因此,利用上述性质,定义一个第二门限值L2,便可自3个时间点(d1~d3)中找出第一个第二函数值大于第二门限值L2的时间点d1,以得到正确的时间同步点d1(即步骤S110)。至此,便完成了Park训练码元定时估计,确定了Park训练码元起始点的位置。
在本示范实施例中,是以Schmidl判决函数的最大函数值Max(M2(d))=M2(d1)作为第二门限参考值R2,并将第二门限参考值R2与第二乘积系数η2相乘,以获得第二门限值L2,即L2=Max(M2(d))×η2(即步骤S109)。假设 由图1可知,M2(nε’)的值落在Schmidl判决函数M2(d)的高原区上,故M2(nε’)接近Schmidl判决函数M2(d)的最大值。因此,最后的时间偏移值为:
,亦即集合A中第一函数值超过M2(nε’)×η2所对应的时间点为时间同步点。值得注意的是,在本示范实施例中,0<η1≦1,0<η2≦1,若将取第一乘积系数η1与第二乘积系数η2取适当值,就可以消除Park判决函数M1(d)中的副峰值影响,进一步提高码元定时同步性能。当η1=1时,本示范实施例的算法就等于Park算法,且由于集合A里的时间点很少,因此本示范实施例所使用的同步方法所增加的复杂度也很少。
此外,本发明的示范实施例还利用Park训练码元的前后重复性(即Xk=Xk+N/2)的性质估计小数频率偏移值εF,其可表示为:
,其中,angle(x)表示取x的相位。
在OFDM系统中,整数频率偏移会给快速傅里叶变换(FFT)后的输出数据带来循环移位。也就是说,偏移了多少个子载波间距的整数倍,就代表移了多少位。所以整数频率偏移值εl估计的着眼点就在于找到输出数据偏移了多少个子载波间距的整数倍。因此,利用发送端120所定义的伪随机数据序列,接收端110便可对伪随机数据序列进行相关运算,以得到最大的移位数,并将此移位数定义为整数频率偏移值εl,其可表示如下:
G={0,1...,(N/2)-1}
,其中,F(g)表示如下:
I={0,1...,(N/2)-1}
,Y2i+2g为Park训练码元在接收端110经过FFT后得到的频域数据,且最后估计得到的归一化的频率偏移值为:
ε=2εl+εF
,因此,可估计的频率偏移范围为子载波间隔的整数倍以上。
为了进行性能比较,本示范实施例还对Schmidl、Park、Y.H.Kim与任光亮(参见任光亮,常义林,无线OFDM系统时频同步方法研究,西安电子科技大学学报[J],2005,32(5):758-761)所提出的算法进行模拟与比较。图3A为本发明的示范实施例的同步方法与Park算法及Schmidl算法的均方误差曲线。图3B为本发明的示范实施例的同步方法与Y.H.Kim算法和任光亮算法的归一化频率偏移估计值的均方误差(MSE,Mean Square Error)曲线。这些仿真结果是在不同的信号噪声比(SNR)下各进行10000次运算而得到。
在此假设本示范实施例OFDM系统有1024个取样点;循环前缀长度为32;多路径信道采用COST259城市环境无线信道模型,其最大路径数为18;OFDM系统可能产生的频率偏移范围为1024倍子载波间距;信道相关时间远大于OFDM系统突发传输时间;第一乘积系数η1=0.2;第二乘积系数η2=0.8。在模拟任光亮所提出的算法时,训练码元的参数1取值为2,OFDM系统可能产生的频率偏移范围为4倍子载波间隔。
如图3A所示,在多路径信道下,Park算法远优于Schmidl算法,且当SNR>5时,本发明的示范实施例的同步方法的均方误差都约为0,而Park算法的均方误差在1个取样点左右。因此,本示范实施例的同步方法又优于Park算法。另外,由图3B亦可看出,当SNR>5时,本发明的示范实施例的同步方法的频率偏移值估计的精确度明显优于任光亮所提出的算法,且几乎与Y.H.Kim一样精确。因此,本示范实施例的同步方法可估计整数频率偏移值,增加频率偏移值估计的精确度。
综上所述,本发明的示范实施例所提供的OFDM同步方法及装置,主要是针对Park算法做改进,利用Park判决函数与第一门限值选出多个第一函数值所对应的多个时间点,并结合Schmidl算法,将这些时间点带入Schmidl判决函数,依据第二门限值选出正确的同步时间点。由于此同步方法结合了Park算法与Schmidl算法两者的优点,因此可以避免Park算法中副峰值存在及Schmidl算法中高原区存在所造成的定时误判,进而提高了定时同步的精确度。除此之外,本发明的示范实施例所提供的OFDM同步方法由于采用Schmidl算法的优点,故可实现高精确度的整数频率偏移值估计,更扩大了频率偏移值的估计范围。
虽然本发明已以数个实施例揭露如上,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视所附的权利要求范围所界定者为准。