适于蜂窝数字分组数据应用 的GMSK-已调信号的快速捕获 在最近几年中,现有的蜂窝网络系统受到了极大的欢迎。但在许多时刻上,承载蜂窝系统的话音通信的信道可能是空闲的(即在一特定时间上没有信号在信道上传输)。这些未用的或空闲的话音信道可被用于诸如数据通信的其他通信。特别地,需要一种利用未用的或空闲的话音信道用于数字数据通信的覆盖系统网络。蜂窝数字分组数据系统(CDPD)就是这样一种覆盖系统,它利用现有的蜂窝电话网络提供移动数据报文业务。CDPD系统允许数字数据经一已经存在的蜂窝系统地空闲信道发送。在1993年,蜂窝通信经营者协会准备并公布了一个规范,称作″蜂窝数字分组数据系统规范″。
该规范规定了一个工业上使用的协议,用于经由现有蜂窝通信系统发送和接收数据消息。该规范规定了数据消息的格式。更确切地说,数据消息具有一由长为38比特的点序列再加上长为22比特的同步码组构成的前置码。跟在该前置码后面的是由N个385比特数据组成的数据序列。所述点序列是一个″0″和″1″交替的串。所述同步码组具有如下位图1011 1011 0101 1001 1100 00。
CDPD覆盖系统利用了现有蜂窝系统的设施传输数据。特别地,多个远端用户单元通过基站与其他远端用户单元进行通信。从远端用户单元向基站的数据通信是无线的。
几种可变因素被引入到从远端用户单元向基站发送的信号中,如果不能对其正确地补偿,有可能导致基站对数据信号进行不正确的解调。一种可变因素是被发送信号的频率偏移。每个远端用户单元利用一个晶体振荡器提供适当的载频,数据信号在该载频上被发送出去。然而,从一个远端用户单元到另一个远端用户单元的晶体振荡器的精度可能会变化,从而在该被发送的信号中引入了不明的频率偏移。此外,由于远端用户单元经常随移动物体诸如汽车一同使用,所以在被发送信号中引入了多普勒频移,这种频移与移动物体的速度的有关。另外,数据序列的到达时间取决于远端用户单元与基站的距离。
被发送信号还遭受到一种称作频率漂移的额外损伤。在被发送信号的开始期间的频率漂移被称作″负载牵引″或″切断瞬态″。这种切断瞬态严重地降低了信号的质量,在点序列期间经常引入大于3KHz的频率漂移,这使得利用该点序列对频率漂移进行稳定地估计几乎成为不可能。图1示出了信号幅度曲线,图2示出了在理想条件下,即在一规定频偏容限内被发送信号的载频曲线。图3示出了在CDPD系统中来自一远端用户单元的典型发送信号的载频曲线。正如从图3中的载频曲线所能看到的,在点序列期间的频偏变化很大,并且典型地是在所述规定容限之外。于是,在这样一种情况下,同步码组可以被用于对该频偏进行估计。然而,由于所牵扯的计算负担,这涉及到了一种为在低成本数字信号处理器中使用的CDPD解调器不可接受的捕获延迟。图2和3的频移foffset指的是一种稳定状态的频移。
于是,基站为了能合适地解调由远端用户单元发送的信号,它不仅必须对引入该被发送信号的频偏进行估计,而且要对数据序列的到达时间进行估计。频偏和数据序列的到达时间可被称作数据捕获参数。
对频偏和到达时间进行估计的一种方法是根据频偏和定时分辨容限计算被接收信号与同步码组、频率和时间偏移的相关性。更具体地说,下面的等式(1)描述了可被用于对频偏和到达时间进行估计的相关性。c(τk,fm)=∫r(t-τk)·S*(t)e-j2πfDtdt,]]>
k=0,....47
n=0,....20
(1)其中r(t)是被接收信号,s*(t)是同步码组的共轭复数,τk是被估计的到达时间,而fm是被估计的频偏。变量k和m对于CDPD系统被选择允许±3KHz频偏和多至12比特的定时不定性。在这些容限内,如果人们想要分辨频偏到150Hz的精度(21个频率单位,即0,...20)和定时达到八分之一比特时间(48个时间单位,即K=0,...47),必须执行960次相关计算。更具体地,图4中所示的2维矩阵将需要被搜寻。
等式(1)可按取样模式的格式重写成等式(2)如下:c(τk,fm)=Σnr(nTs+τk)Sk*(nTs)e-j2πfDnTs----(2)]]>其中Ts是取样速率。如本领域技术人员所知,τk和fm是被调整的扫描参数,以揭示函数之间的关联性和相关性。
对等式(1)或(2)求解以找到使如下等式(3)最大的值τk和fm。maxk,m|C(τk,fm)|2----(3)]]>
这样,正如图4中所示,执行的是一个2维时间-频率搜索,其中一个21个频率单位和48个时间单位的矩阵需要被搜索,以对频偏fm和到达时间τk进行估计。这种搜索在计算上是繁重的,它体现了实时系统的一个问题。此外,由于所涉及的计算量较大,必须使用较昂贵的数字信号处理电路。
本发明的一个目的是在捕获一由于前述的″切断瞬态″而具有重大损伤的CDPD信号的数据捕获参数中减少计算的负担。本发明的另一个目的是允许以特定的频偏和到达时间快速地捕获数据捕获参数,以便该系统能有效地在一实时环境下工作。此外,本发明减少了所执行的计算量,以便可以使用较廉价的数字信号处理器,从而降低了整个系统的费用。
通过下面的详细描述和参考附图,将会对本发明自身连同其他目的及附带的优点有更好地理解。
图1示出了被发送信号的信号幅度曲线。
图2示出了在理想条件下被发送信号的载频曲线。
图3示出了在CDPD系统中来自远端用户单元的一个典型发送信号的载频曲线。
图4是表示2维搜索矩阵图。
图5是CDPD重叠系统和与其相关的在基本的蜂窝通信系统中使用的远端用户单元的总框图。
图6是基站的接收器的一部分的框图。
图7是表示在被发送信号中两个极端到达线的曲线。
图8A和8B是表示由本发明的数字信号处理器执行的各个步骤的流程图。
图5是CDPD重叠系统10和与其相关的在基本的蜂窝通信系统中使用的远端用户单元12的总框图。在仅打算为说明目的的一个简化描述中,现有蜂窝网络通信系统包括多个远端用户单元(仅示出了它们中的一个)。地理区域被划分成若干网孔11,在每个网孔11内是一个进行发送和从远端用户单元12接收的基站13。远端用户单元12经基站13与另一可以是移动或标准的远端用户单元进行通信。远端用户单元12与基站13之间的数据通信是无线的(即,经空中链路17发生)。如已讨论过的那样,由于远端用户单元12经常被设置在诸如汽车这样的移动物体中,因此不确定的、特别是数据信息的频偏和可变的到达时间被引入到由远端用户单元12发送的信号中。而且,来自远端用户单元的被发送信号经常由于″切断瞬态″而受到损伤。基站13必须在该被接收信号能被适当解调之前对这些数据捕获参数进行估计。
图6是基站的接收器20的一部分的框图。该接收器20包括天线22,下变换器24,和模/数(A/D)变换器26和数字信号处理器(DSP)28。天线22接收由远端用户单元发送的信号。被接收信号可以通过下面的等式(4)来确定:r(t)=Aej[2πfct·θ(t)·2πfdt],----(4)]]>其中fc载频,fd是被引入到被发送信号中的频偏,而θ(t)是被调制到载频上的数据。频偏fd包括两个主要部分,与远端用户单元正在移动的速度有关的多普勒频偏加上如前所述的由于远端用户单元的晶体振荡器不精密生成的频偏。
下变换器24除去载频fc以生成所谓的基带信号。该下变换器的信号输出可以由下列等式(5)定义:r(t)=Aej[θ(t)+2πfdt]----(5)]]>接着,该信号被送到A/D转换器26,在那里它被以4×24.3KHz的速率取样。A/D转换器26的输出可以由下列等式(6)表示:r(k)=Aej[θ(kTs)+2πfdkTs]]]>其中
k=0,1,2....和
Ts=取样间隔=1(4×24300)=10.288μsec.----(6)]]>
接着,该信号被送到数字信号处理器(DSP)28。在一个优选实施例中,使用了Texas,Istrument C51系列的DSP。该DSP28执行两个主要功能。第一,对数据捕获参数即数据信息的频偏和到达时间进行估计,和然后利用这些数据捕获参数对接收信号进行解调。在一个优选实施例中,DSP28将A/D转换器26的取样速率转换成一个4×19.2KHz的取样速率。所有由DSP28执行的信号处理都用以4×19.2KHz速率取样来完成。每比特是持续1/19.2KHz,于是得到每比特4个取样。
特别地,DSP28具有一个常被称作数据缓冲器的存储器装置。数字化取样被顺序地存储在该存储器中,而DSP28根据这些存储的取样执行信号处理。更确切地说,当接收到所述前置码时,DSP28在存储器中存储这些比特并利用其已存储的信息执行随后的步骤。
然而,要理解DSP如何对接收的信号进行处理,了解与CDPD分组传输协议有关的背景知识是必要的。基站和远端用户单元二者具有标记每个3.125毫秒,即60比特间隔的同步微时隙。在一个微时隙标记之后并且仅当该微时隙被指定为空闲时(即基站接收器(MDBS)当前没有对来自另一移动单元的信号进行解调时)的一个0至8比特的时间窗期间,远端用户单元只允许发送其自身的包括前置码的数据信息的脉冲串。基站的接收器20通过中断获得该微时隙定时。该微时隙由MDBS的发送器产生并被送到MDBS的接收器。具体地说,该微时隙标记由发送器DSP(未示出)通过中断发送到接收器DSP。由于硬件延迟和为基站接收器生成该微时隙标记的机构,DSP28期望在该微时隙标记之后的比特9至23期间从远端用户单元接收该被发送的信号。图7图解地示出了被发送信号的到达时间的范围。在一个极端中,该被发送信号能够被接收器20接收的最早时间是由曲线A表示的比特9。它将被称作脉冲串#1。接收器20最后期望接收该被发送信号的时间是在比特23。曲线B将被称作脉冲串#2
在每个微时隙标记处,DSP28可以处于两种状态之一。当其执行自身检测和捕获操作时它可以处于一种检测状态,或者当其试图对多个385比特的数据进行解调时可以处于它的解调状态。如前所述,本发明基本上与DSP处于其检测状态的操作有关。处于其检测状态的DSP28一旦接收到微时隙中断,就对存储缓冲器(未示出)初始化,并开始将从A/D转换器26接收的取样存入存储器。该存储缓冲器中的内容将如图7中所示,这样在该缓冲器中的取样可以使用比特号码来标记。这样,比特0-8总是来自噪声的取样,因为在该时间间隔内被发送信号还没有到达。如将在下面要详细描述的,处于其检测状态的DSP28假设被发送信号的存在,并对被接收信号进行处理。如果由下面的等式(8)限定的最大值不超过一预定的阈值,则DSP28确定发送还没有发生,并且在下一微时隙标记中断时进入检测状态。否则,它继续捕获捕获参数。
现在参考图8a和8b中所示的流程图。在框30中所示的由DSP28执行的第一步骤是利用由按比特标识38至47,即点序列的10个比特表示的在缓冲器中的取样对频偏进行粗略地估计。注意所述取样表示最早可能到达的比特号码29到38的点序列的最后10比特(脉冲串#1),和中间部分,最后到达的比特号码15到24的点序列(脉冲串#2)。频率分辨率被选在600Hz,这样,在为CDPD系统规定的±3KHz频偏容限内,生成11个频率单位,每个单位与下一个分开600Hz。为了粗略地对频偏进行估计,选取一固定的到达时间ta,以确保使用如上所述的点序列的一个有效部分来考虑所有可能的到达延迟。使用该点序列的最后部分是所希望的,因为这一部分很少受切断瞬态的影响。被延迟ta的被接收信号(它代表如上所述的缓冲器的固定部分)与在该步骤所选分辨率的频移与10比特长点序列相关。该10比特长点序列是用比特图1010101010调制的CDPD信号的复包络。下面的等式(7)描述了这一相关的计算:c(ta,fm)=Σn=010N-1r(ta+nTs)·S*(nTs)e-j2πfmnTs,]]>
m=0,±1,...±5,
(7)其中Ts为取样间隔,N为每个比特的号码,Ts=Tb/N,其中Tb=比特间隔=1/19200=52.0833微秒;r(t)是被接收信号,s*(t)是代表点序列的信号的共轭复数。对等式(7)求解,以找到使如下等式(8)最大的fm:maxm|c(ta,fm)|2----(8)]]>
使等式(8)最大的fm将被定义为估计频率fo。该估计频率fo被存储在存储器中。在该第一步骤中,仅执行11次相关计算。
接着,在框32确定是否由等式(8)定义的最大值超过了一预定阈值。如果超过,执行由框36定义的下一步骤。如果没有超过,则DSP28确定没有传输发生并如框34所示在下一微时隙标记中断时进入检测状态。
这样,大体上通过执行由等式(7)和(8)定义的运算,使用前置码的点序列对频偏进行了粗略估计。因为该点序列在时间上是周期性的,所以由等式(7)定义的相关值对于定时错误是不敏感的,即由于相关计算的比特时间不对准造成的相关性下降对于所有的时间对准错误来说是很小的。这允许等式(7)的相关性使用一单独的固定时间ta以对频偏进行粗略地估计。在选择ta中的唯一限制为如上所述。更确切地说,确保该点序列被用于所考虑的可能到达时间的范围,即14比特(比特9-23)(见图7)以对等式(7)的相关性进行计算。而且,尽可能的使用被接收信号的点序列的最后部分,因为由于切断瞬态最终消失越远离该点序列的开始该被接收信号变得越可靠。这样,选择ta使用点序列的最后10比特作为最早的可能到达时间,即脉冲串#1。因而,ta表示从微时隙中断的开始在时间上的47比特(即,ta=47Tb)。
由框36定义的下一步骤是对到达时间进行估计。对于位时间同步来说频偏估计fo不是足够可靠的,因为即使使用了该点序列的最后部分,点序列的该部分可能仍具有很大的切断瞬态。而且,为了对频偏进行粗略地估计,频率分辨单位被粗略地设定在600Hz。对于600Hz频率分辨率,等式(7)的10比特长相关性提供了足够的性能。此外,由于切断瞬态的衰减,在对于精细定时估计很重要的同步码组期间的频偏可能不同于被接收信号的点序列的频偏。于是,在搜索窗的开始已做出了粗略的频偏估计,该频偏估计在搜索窗期间可能改变,但在该接收信号的同步码组期间将被认定。
为了以比特时间分辨率对脉冲串进行粗略地估计,必须使用对频偏不敏感的检测方案。由于CDPD信号被GMSK(高斯最小频移键控)调制,所以可以使用一种差动检测方案,因为GMSK是固有的差动调制。22比特的二进制同步码组被用来从被接收信号中提取1,0码组图形,使用所述差动调制方案对脉冲串到达时间进行估计。在就要执行这一操作的时刻,DSP28的存储器在此时已存储了整个点序列和该被接收信号的同步码组。由于二进制同步码组的22比特被用于在下面的等式(10)中计算相关性和搜索窗是14比特长,所以差动检测必须在该被接收信号上的一个36比特间隔上执行。开始点应该代表最早可能到达的脉冲串(脉冲串#1)的同步码组的开始,即接收缓冲器中的比特47。执行所述差动检测每比特间隔4个取样。使用上述的到达时间ta的一个差动检测可以由等式(9)描述如下:D(t)=Imag{r(ta+t)conjg[r(ta+t-Tb)ej2πfDTb]},]]>
其中t=0,....4×36(36比特间隔)
ta=47Tb
(9)
其中Tb=1/19200是CDPD信号的比特间隔;r(t)是被接收信号。如果符号(D(t))≥0,则D(t)=1,否则D(t)=0。然后,使用存储在存储器中的同步码组的22比特和也被存储在存储器中由等式(9)导出的信号D(t),在框38中通过求D(t)与被定义为S(n)的同步码组的相关性对到达时间进行估计,其中S(n)∈{0,1}。等式(10)定义了所执行的运算。p(t)=Σn=022-1D(t+4n)⊕S(n),]]>
其中
(10)
t=0,1,2,...,4×14(14比特间隔)
S(n)={1011 1011 0101 1001 1100 00}其中0表示异或运算,并且在一个14比特间隔期间对P(t)进行估计。因为存在有一个14比特长的搜索窗,和每比特时间估计4个相关性,所以在t=0,...,4×14对P(t)进行估计(即,执行差动检测每比特时间4个取样)。分组到达时间估计t0是产生最大P(t)的时间系数,如下面的等式(11)定义:
t0=maxP(t)
O≤t≤4×14
(11)
确定D(t)和P(t)的步骤可以通过构造一个用于同步码组的二维矩阵而流水化,以减少处理延迟。而且,为了改进性能,可以选取两个最大值。特别地,选取使P(t)产生两个最大值的两个到达时间,即在求出t0之后,求t0′以便
t0′=max P(t)
0≤t≤4×14
t0′≠t0
接着,在框40中使用点序列的最后10比特对频偏再次进行估计。用47Tb+t0·T2-10Tb替换ta可以使用上述的等式(7)。频率单位被建立在频率f0,f0±600Hz,f0±1200Hz,并且f1是给出最大相关值的频率中的频率。
最后,在框42中通过围绕t0和f1搜索一个小的二维矩阵对频偏和到达时间估计进行提炼。搜索单位被建立在t0,t0±Tb/4,t0±Tb/2和f1,f1±300Hz,f1±600Hz。在每个单位处,使被接收信号r(t)与同步码组的复包络相关,该复包络是所述同步码组的已调信号的基带表示。这样,在一特定时间和频率单位,ts和Fs处,根据由下列等式(12)所定义的来计算相关性:R(ts,fs)=Σn=022N-1r(47Tb+toTs+nTs)·congj[C(n)exp(j2πfsnTs)]]]>
其中C(n)=C(t)|t-nTs
(12)其中C(n)表示同步码组C(t)的复包络的取样,N是每比特取样的数量,而Ts=Tb/N。
在一优选实施例中,等式(12)的两个复数相乘能够通过将C(n)和复指数组合构造一个二维矩阵表来简化。频偏和到达时间,即Ff和tf的最终估计是使值|R(ts,fs)|2。|R(ts,fs)|2的计算是产生最大时间延迟的关键步骤,然而,因为仅涉及了25个搜索单位,所以与前面所描述的960次计算比较,在计算上实现了可观的减少。
接着,在框44,确定由|R(ts,fs)|2确定的最大值是否超过了一预定阈值。如果超过,执行由框46定义的下一步骤。如果没有超过,则DSP28确定没有传输发生,并如框34所示在下一微时隙标记中断时进入检测状态。
而且,因为不仅使用前置码的点序列而且使用同步码组来确定频偏估计ff,所以它比如果仅使用点序列要可靠的多,仅使用点序列可能并不总是可靠。
在框46,DSP28使用在前确定的频偏ff和到达时间tf解调被接收信号。这样,DSP28这时能够正确地对被接收信号进行解调。在框48中,确定解调是否被完成。如果没完成,继续框46的稳态解调。如果解调结束,控制进到框50,告诉DSP28等待直到源端用户单元关闭其载波。当这一情况发生时,DSP28等待直到下一微时隙中断以进入其检测状态。
如果选取两个最大值t0和t0′,则按t0以及t0′计算在框40和框42中执行的运算。
当然,应该理解,可以对上述优选实施例做出多种改变和改进。因而,上述的详细描述仅是为了进行说明而并不仅限于此,并且很清楚,包括了等同物的下列权利要求对本发明的范围进行了限定。