具体实施方式
在随机相位多址(RPMA)通讯***的框架内介绍说明性实施例。发布于2010年8月4日的美国专利No.7,782,926(美国申请No.12/189,609)中描述了代表性RPMA***,该专利通过引用并入本文。其它通讯***(诸如频分多址、时分多址或码分多址)也可实现所介绍的构思。以下所述的图1至图20针对说明性RPMA***。图21至图24针对使用前向纠错来进行高效率的容错通讯的示例性方法。图25至图29针对用于信号测量的示例性技术,这些示例性技术改进RPMA***在真实世界应用中的使用。图30至图33针对多个接入点存在于其中的RPMA***的使用。图34针对通过分布式远程时间源获得的一些优点。图35至图37针对错误检测中的改进,这些改进使得能够在存在噪声和干扰信号时进行鲁棒的***操作。图38针对唯一RPMA***配置技术的例子。
图1是具有接入点1102以及节点1104、1106和1108的简化网络地图1100的图示。接入点1102包含发射机1110和接收机1112,这二者都与处理器1114操作地耦合。节点1104包含发射机1120和接收机1122,这二者都与处理器1124操作地耦合。节点1106和1108包含类似的元件,不过为了简化起见,没有绘制它们。接入点1102通过扩展频谱通讯***与节点1104、1106和1108通讯。接入点1102发射,以使得范围内的任何节点可确定时序并从接入点1102接收信号。节点1104、1106和1108可向接入点1102发射,以使得所发射的信号彼此重叠,并且节点发射机同时操作。因为来自节点1104、1106和1108的信号彼此是准正交的,所以这些信号可被接入点1102接收和解调。如本文所使用的,节点或标签可以是指被配置为从接入点接收信号和/或将信号发送到接入点的任何通讯设备。接入点可以是指被配置为同时与多个节点或标签通讯的任何通讯设备。在代表性实施例中,节点可以是靠电池或其它储存电源运行的低功率移动设备,并且接入点可被安置在中央位置上,并从电源(诸如壁装电源插座或发电机)接收功率。可替换地,节点可***到插座中,和/或接入点可靠电池或其它储存电源运行。
在通讯***中,在发射期间,信号占据频域。在直接序列扩展频谱***中,可通过伪噪声(PN)信号来在频域中对信号进行扩频。信号的扩频引入处理增益,该处理增益与扩频宽度或者用于对信号进行扩频的比特的数量相关地提高信号的信噪比。该改进信噪比的一种效果是扩频信号对例如由其它信号引入的、可在公用带宽中作为扩频信号广播的干扰具有弹性。该效果取决于接收机将扩频信号与用于对信号进行扩频的PN码相关的能力。只有通过特定PN码扩频并(以正确的时序偏移)与解扩器同步的信号接收处理增益。所有其它信号接收很小增益甚至不接收增益,并用作最小干扰。在同一带宽中具有多个信号的能力至少部分取决于发射中所使用的特定PN码的互相关性质。
在使用完全正交码的技术中,在完全正交码之间不存在相关性,但是该技术迫使接收机准确地知道发射机正在使用哪个码并且与发射机在时间上准确地一致。关于不完全正交、但是可被认为准正交的PN码,存在一些相关性。只要发射信号之间的相关性保持低,接收信号的信噪比就可保持高。在使用不同PN码的***中,接收机仍必须准确地知道发射机正在使用哪个码,并且接收机仍必须与发射机在时间上准确地一致。在随机相位多址(RPMA)***中,即使分离的发射机可使用相同的PN码,也可引入随机时间元件来使PN码在时间上偏移或者使发射时间偏移。随机时间偏移使得同时接收的多个扩频信号彼此准正交。在接收时,只有使用发射机用于对信号进行扩频的时间偏移进行解扩的信号接收处理增益。
图2是示出具有发射1202、1204、1206和1208的一个上行时隙1200的示图。发射1202、1204、1206和1208(可能全部来源于分离的节点)全都从上行时隙起点起以随机偏移1212、1214、1216和1218开始。发射1202、1204、1206和1208在时间上重叠,以使得在某些时刻,发射机同时操作。然而,因为这些发射彼此是准正交的,所以所有信号可被单个接收机分辨。由于与时隙起点的随机时间偏移,这些发射的起始点和结束点交错。因为节点偶尔可能会拾取已被另一节点选择的随机时间偏移,所以可使用重传协议来纠错。在该图中,显示了256个符号的帧大小,但是可使用其它大小。其它帧大小的例子包括100个符号、128个符号和512个符号。尽管帧发射时间可能变化,但是对于所有发射,帧大小可保持恒定。快速时隙是上行或下行发射频谱的一部分,该部分可用于发射扩频帧的一部分。快速时隙的总数(因此,用于发射帧的时间)取决于用于对帧进行扩频的可变扩频因子。
在RPMA***中,接入点所观测的接收功率对于为了避免使接入点对其它接收信号的灵敏度降幅而进行的控制是重要的。控制功率的一种方法是使用开环功率控制。在开环功率控制中,节点基于从接入点接收的发射的特性来调整其功率输出。节点可在最近的快速时隙中连续地测量从接入点接收的功率。当所测量的功率下降时,节点通过增大该节点的输出功率来补偿接入点的接收机处的可能的功率损耗。类似地,当所接收的功率提高时,节点基于发射媒体的对称特性导致接入点处的功率增大的假设来降低其自己的功率输出。该补偿可帮助避免所述节点使接入点处的其它节点的灵敏度降幅,并且即使在变化的信号传播环境下,也可帮助来自所述节点的发射继续被接收。在接入点的发射与节点的发射之间的时间长的情况下,开环控制可能不是那么有用。在开环方法中,可通过使接入点的发射与节点的发射之间的时间很短来控制接入点所观测的接收功率。
图3是描绘当使用高扩频因子时说明性例子中的上行通讯的帧1300的示图,帧1300包括上行时隙1302、1304和1306以及多径和RPMA滑动延迟块1308、1310和1312。多径和RPMA滑动延迟块1308、1310和1312(也被称为延迟块)是发射机可将随机时间偏移***到发射中的时间段。发射被延迟所述随机时间偏移,以使得发射时间取决于该随机时间偏移。在这个代表性实施例中,每个延迟块的大小相同,但是其它大小是可以的。发射机可选择在所有延迟块上都相同的随机时间偏移。当选择相同的随机时间偏移时,以下所述的接收机的解扩阵列可在每个时隙上保持同步。
图3中的示图是从通讯***中的节点的角度来讲的。在RPMA***中,节点使用随机延迟来将准正交性给予由其它节点发射的信号。节点可选择在RPMA滑动延迟块内的任何时间开始发射。因为节点的发射与接入点的发射时间之间的时间段保持短,所以开环功率控制可补偿最近的信号传播特性变化。节点可执行该功率控制来避免使接入点处的发射机对其它节点的发射的灵敏度降幅。
图4示出了上行发射机10,该上行发射机10包括诸如卷积编码器、交织模块、调制器、伪噪声扩频器、滤波器、一排抽头、自动频率控制(AFC)旋转器的结构和其它这样的结构。这些结构执行块12、14、16、18、20和22中所描绘的操作。上行发射机10的发射路径是被编码的扩展频谱波形。在代表性实施例中,上行发射机10可包括在与接入点通讯的标签以及使用解调通讯信道的其它标签中。另外,根据具体实施例,上行发射机10可执行更少的或不同的操作。这些操作还可以按与所示和所述的顺序不同的顺序执行。如本文中所使用的,标签可以是指被配置为从接入点接收信号和/或将信号发送到接入点的任何通讯设备。接入点可以是指被配置为同时与多个标签通讯的任何通讯设备。在代表性实施例中,标签可以是靠电池或其它储存电源运行的低功率移动设备,接入点可被安置在中央位置上,并从电源(诸如壁装电源插座或发电机)接收功率。可替换地,标签可***到插座中,和/或***点可靠电池或其它储存电源运行。
在块12中,卷积编码器和交织模块接收数据流。在一个实施例中,数据流是包括前导码的128个比特。可替换地,可使用其它大小的数据流。一旦数据流被接收,就使用卷积编码器对该数据流进行编码。在代表性实施例中,可以以1/2的速率对数据流进行编码。可替换地,可使用其它速率。还可使用交织模块来对数据流进行交织。编码的符号流被输出到块14,在块14中,使用差分二进制相移键控(D-BPSK)调制器对编码的符号流进行调制。在可替换实施例中,可使用其它调制方案。在块16,将经过调制的流施加于PN扩频器。在代表性实施例中,PN扩频器可使用利用所选扩频因子的公用网络金码信道。扩频因子可以是集合{64,128,256,…,8192}的成员。可替换地,可使用任何其它码和/或扩频因子。通过相同的PN码以随机选择的码片偏移对扩频因子给定的每个标签进行扩频。大范围的可能的随机选择的码片偏移增加了特定帧将不与来自另一发射机的另一帧冲突(或者,换句话讲,在接入点处具有相同的码片时序)的概率。接近容量极限时的冲突概率可能变为不可忽视的(~10%或更小),并且可以通过以不同抽选的随机偏移重新发射相同帧来解决。以下参照图9来更详细地描述PN扩频器。在代表性实施例中,块18的输出可具有每秒1兆码片(Mcps)的1比特速率。可替换地,可使用其它速率。
在块18,4×过采样滤波器对数据流进行上采样,并使用时间跟踪逻辑来确保所有帧都以与AP的频率参考一致的相同采样速率到达。块18接收采样滑动/重复指示符作为输入。在一个实施例中,块18的输出可具有大约4兆赫兹(MHz)的实频率。在块20,进行自动频率控制(AFC)旋转(包括匹配接入点的时序偏移的频率偏移),确保来自所有用户的所有帧都在相同的频率假设附近到达。在一个实施例中,块20的输出可具有大约4MHz的复频率。在块22,从开始时隙起施加延迟,直到正确的接入时隙出现为止。另外,对信号施加随机码片延迟。在代表性实施例中,随机码片延迟可以为从0到扩频因子减1。可替换地,可使用不同的随机码片延迟。时隙接入可用A(i,j)描述,其中,i与作为2∧(13-i)的扩频因子相关,并且j是与非重叠时隙对应的子时隙编号。根据所选的扩频因子,在给定时隙中通常存在多个发射机会。对于上行,在码片偏移为从0到扩频因子减1时,可随机选择接入时隙。就这点而论,使上行用户之间的冲突概率最小,同时使得对于存在冲突的情况可进行重选。在信号被延迟之后,该信号可被发射到接入点。
图5示出下行发射机30,该下行发射机30包括诸如卷积编码器、交织模块、调制器、伪噪声扩频器、滤波器、一排抽头的结构和其它这样的结构。使用发射机30,接入点(AP)发射多个信道,其中每个信道以特定标签或用户为目的地。这些结构执行块32至54中所描绘的操作。块32至40和块42至50表示对于附加数据流程可重复的不同数据路径。在代表性实施例中,块32-38可对第一数据流执行与参照图4描述的操作类似的操作。类似地,块42-48可对第n数据流执行与参照图4描述的操作类似的操作,其中,n可以是任何值。块36的输入可以是特定于将接收第一数据流的标签的金码,块46的输入可以是特定于将接收第n数据流的标签的金码。可替换地,可使用其它码(诸如广播金码、非金码或其它码)来对第一数据流和/或第n数据流进行扩频。在与第一数据流和第n数据流对应的数据链路的功率相等的情况下,可在块40和50中对块38和/或块48的输出进行加权。一旦被加权,就在块52中对路径进行求和。在块52中还进行硬判决,在所述硬判决中,所有正数都被映射到0,并且所有负数都被映射到1。可替换地,可进行不同的硬判决。在一个实施例中,块52的输出可具有1比特10Mcps的速率。可替换地,可使用其它速率。在块54中,使用4×码片滤波器来对从块52输出的总和进行上采样。在一个实施例中,块54的输出可具有40MHz的实频率。可替换地,可使用其它频率。未显示的是相邻频率上的发射,该发射是最大下行扩频因子为2048的单组广播帧。可替换地,可使用不同的最大下行扩频因子。
图6是示出根据代表性实施例的下行帧1600和上行帧1608的结构的示图,下行帧1600包括广播前导码1602、广播信道1604和数据信道1606,下行帧1608包括数据信道1610。Y轴显示信号的发射功率。X轴显示发射时间。下行帧1600和上行帧1608被分割为下行快速时隙和上行快速时隙,其中显示了下行时隙1612和上行时隙1614。附加的下行时隙和上行时隙也是可存在的。组合的下行时隙1612和上行时隙1614产生如本文所述的半双工通讯***。在一个说明性实施例中,对于广播前导码1602,单个时隙的数量可以是16个下行时隙,对于广播信道1604和1606,可以是256个下行时隙。下行帧1600和上行帧1608被分割成的单个快速时隙的数量取决于具体实现,包括诸如扩频因子和帧大小的因素。对于***中的所有帧,帧大小可保持恒定。当选择2048的下行扩频因子和8192的上行扩频因子时,在一个时隙中,对于每一个上行时隙,可发送四个下行时隙。在这种情况下,每一个下行快速时隙包含一个符号,而每一个上行快速时隙包含四分之一个符号或2048个码片。在说明性实施例中,下行快速时隙1612花2.048兆秒(ms)进行发射。上行快速时隙1614与RPMA延迟块1616配对。RPMA延迟块1616使得上行快速时隙1614的发射可在RPMA延迟块1616内的任何时间开始。在说明性实施例中,上行快速时隙1614和RPMA延迟块1616具有2.304ms的组合发射时间。在说明性实施例中,即使对应的上行帧和下行帧可能通过不同的扩频因子扩频,所有的上行快速时隙、下行快速时隙和RPMA延迟块的大小也都相同。帧的不同扩频因子导致用于发射上行帧和下行帧的持续时间可变。例如,在前面描述的2048的下行扩频因子和8192的上行扩频因子的情况下,它花费它发射下行帧所花费的时间四倍长的时间来发射上行帧。
在代表性实施例中,可相对于使用广播信道1604或数据信道1606进行的其它发射来提升广播前导码1602。作为例子,可以以最大功率(Pmax)发射广播前导码1602,并且可以以最大功率的一半(1/2Pmax)进行其它发射。在一个实施例中,相对于经由广播信道1604和/或数据信道1606的其它发射,广播前导码1602可被提升3分贝(dB)。提升的前导码使得节点处的接收机可鲁棒地估计码片时序、执行自动频率控制以及参照接入点跟踪时间。广播前导码1602的有效载荷可以是可编程的。在一个实施例中,广播信道帧的创建可与数据信道帧相同,不同之处在于广播信道金码发生器可对每一个符号进行重置,而数据信道金码发生器在重置之前可运行,直到数据信道帧末尾为止。在每一个符号对广播信道金码发生器进行重置使接收机更易于捕获广播信道帧。在一个实施例中,信道编码、交织或循环冗余校验(CRC)不可应用于广播前导码1602的有效载荷。
图7示出了时隙结构和分配。在至少一个实施例中,数据流70包括时隙72、时隙74和时隙76。时隙72是AP到标签通讯,时隙74是标签到AP通讯,并且时隙76是AP到标签通讯。在代表性实施例中,每个时隙可具有2.1秒的持续时间。可替换地,可使用任何其它持续时间,和/或不同时隙可具有不同的持续时间。数据流70可用半双工通讯方案实现,以使得在任何给定时间,或者是AP正在发送、标签正在接收,或者是标签正在发送、AP正在接收。在可替换实施例中,可使用其它通讯方案。如图7所示,数据信道80描绘用于时隙72中的数据的处理增益选项。如果数据链路在特定增益关闭,则标签仅需要在时隙的持续时间期间以对应的增益准备好接收(在AP到标签模式下)。在发射模式下,时隙选择管理从标签到接入点的发射,以使得标签可使其在功耗发射模式下的开启时间最短。例如,18dB的增益仅需要1.6ms时隙(A7,0)。数据信道82描绘用于时隙74中的数据的处理增益选项。可以看出,可选择标签所使用的功率,以使得每个数据链路以相同的功率到达AP。
AP端(侧)对大量同时波形的处理与标签端对相对少的波形的处理之间存在对称性。自动频率控制(AFC)、时间跟踪漂移和帧时序由于AP是这些参数的控制者的事实,在AP端是已知的。然而,在标签端,AFC、时间跟踪漂移和帧时序可在捕获时被确定。PN阵列解扩器执行与二者相关联的强力操作,该强力操作是用于探测捕获假设/解调的高效率实现。这的另一方面是该大功耗电路(当工作时)尽管在AP上连续地运行(因为它可被***到墙壁中,所以这应该并不重要),但是在标签上仅在应该很少发生的“冷”捕获期间运行。分别参照图10和图11来更详细地描述冷捕获和热捕获。
图8是描绘部分加载RPMA***中的频率使用的示图。该示图中的垂直轴显示接收功率以及哪些包被同时接收。水平轴显示时间,并指示帧持续时间。显示了许多单个包,每个单个包用它们的扩频因子标记。包中的能量仅仅是功率乘以时间。在这个例子中,在接入点处接收的每个单个包(诸如包1802)的能量彼此相等,并且用其它包所覆盖的相同面积表示。该示图显示了3%使用率的上行容量,但是其它使用率是可以的。例如,上行容量可被轻载为1%的使用率,或者可被重载为75%的使用率。所示的包1802是11个字节的示例性包,但是其它大小是可以的。这个例子中的帧持续时间是2秒,但是其它持续时间是可以的。帧持续时间取决于扩频因子,所以,例如,1秒、4秒的帧持续时间或许多其它持续时间是可以的。所列出的扩频因子代表与该***一起工作的许多可能的扩频因子。随机时间偏移是每个发射的相对小的部分,没有被显示。
图9示出了PN(伪噪声)解扩阵列,该PN解扩阵列既便利于标签上的单个波形的捕获,又便利于AP上的多个波形的强力解调。在代表性实施例中,PN解扩阵列可同时执行许多码片分隔时序假设的1比特点积。
PN解扩核心元件可以是单个计数器,该计数器根据输入是0还是1来增加或不增加每个时钟。因为它是复数数据路径,所以存在两个计数器:一个用于I(同相),一个用于Q(正交相位)。与复指数相乘通常是与复指数表结合的一组4个相当大的标量乘法器(4×1000个门是典型的)。相反,1比特复数乘法器基本上是简单的真值表,诸如以下所示的示例性表,在该表中,负号表示翻转(0→1和1→0)。该真值表可仅使用几个门来实现。
相位 |
0 |
1 |
2 |
3 |
I’ |
I |
-Q |
-I |
Q |
Q’ |
Q |
I |
-Q |
-I |
图9描绘了PN解扩阵列100。可存在用于复数解扩操作的多对计数器的许多实例化(比如,在一个实施例中,256个或更多个)。通过在相隔一个码片的时序假设上工作的PN解扩元件102、104和106的相邻实例化,PN解扩阵列100可以以码片速率被进给。1比特复数数据从块114被发送到元件102、104和106,在元件102、104和106中,它被与来自PN发生器110的PN信号组合。PN信号发生器110可以是输出0和1的相同序列的硬件,AP通过该序列对数据进行扩频。至于元件102,解旋(derotated)数据在组合器122a处与PN信号组合(更具体地,1比特复数与PN信号相乘)。该组合的实部和虚部分别被输入到计数器118a和120a。当接收到重置信号112时,计数器118a和120a将比特流移出。更具体地,计数器中的数据仅在重置信号之前是有效的。重置信号迫使0进入两个计数器中。复用器108使得可按那个特定时钟输出用于唯一地完成其解扩操作的那个支路的当前有效计数器。PN解扩阵列100中的其它元件类似地操作。元件104从块114接收解旋数据,并且在元件102中的延迟块116a施加延迟之后,将它与PN信号组合。该组合进入计数器118b和120b,根据来自重置信号112的、被延迟块124a施加延迟的信号,该组合被移出计数器。同样地,元件106从块114接收解旋数据,并且在元件104中的延迟块116b施加延迟之后,将它与PN信号组合。该组合进入计数器118c和120c,根据来自重置信号112的、被延迟块124b施加延迟的信号,该组合被移出计数器118c和120c。
在与扩频因子对应的若干时钟之后,PN解扩元件102具有被选择用于供复用器108输出的有效数据。在其后的每一个时钟,相邻的解扩元件104或106是可用的,直到所有数据都被输出(这可发生在与扩频因子加上PN解扩实例化的数量对应的时钟数量期间)为止。管理该机制的操作的PN码可以是用值参数化的金码。在可替换实施例中,可使用其它PN码。
图10示出了在广播信道的标签调制解调处理中对接入点的发射波形进行解调所执行的操作。另外,根据具体实施例,可执行更少的或不同的操作。这些操作还可以按与所示和所述的顺序不同的顺序执行。
当标签初次上电时,关于波形的参数都是未知的,除了广播信道PN序列(比如,特定金码或其它码参数)之外。另外,由于AP与标签之间的振荡器变化,标签可能不能以足够的精度知道在AP与标签之间有什么相对频率偏移。图10描绘了这样的扫描模式,在该扫描模式下,探测AP与标签之间的兆比率(ppm)漂移的不确定范围。在操作150中,在两个时隙上进行迭代,以使得标签能够调到广播信道。例如,处理可与时隙时序异步地开始。在探测假设的一半期间,广播信道可以是工作的,并且在探测假设的另一半期间,广播信道可以不工作。在第一次迭代中,可使用具有异步起始点的第一时隙时序来探测所有假设。如果在第一次迭代中没有找到能量,则执行第二次迭代。在第二次迭代中,异步起始点可与第一次迭代中所使用的异步起始点具有一个时隙偏移。就这点而论,在广播信道以前工作时被探测的假设可以在广播信道现在正工作时被探测。一旦能量被找到,标签就可调到广播信道。在代表性实施例中,操作150可表示用于“冷捕获”的起始点。在操作152中,对粗略自动频率控制(AFC)进行初始化。在一个实施例中,该初始值被设置为最大负值,诸如-10ppm偏移。使用用于广播信道的已知金码产生的PN序列,在操作154中,对给定的粗略AFC假设的所有C×4分隔假设计算非相干度量。例如,如果扩频因子具有2048的长度,则可对8192个假设计算非相干度量。
在操作156和158中,增加粗略AFC假设,直到ppm范围结束为止。对于每个粗略ADC假设,使用图4中所描绘的硬件来抵消当前假设所表示的频率偏移。PN解扩阵列被用于产生8个连续符号的解扩输出。可替换地,可使用其它数量的符号。然后计算这8个符号的非相干总和。在数据结构中维护一组前N个(在一个实施例中,8个)度量连同它们相关联的参数。如图10的流程图所指示的,沿着码片×4分辨率的所有时序假设探测整个振荡器ppm不确定性范围,以期待赢者(即,有效者)将被表示在数据结构中。连同通常趋向于较小的多径反射的最有效假设一起,相邻AFC粗略频率假设(其中,相当可观的能量累积仍存在)、以及完全无效的假设(其由于噪声变化而产生异常大的度量)。
对于每个粗略AFC的所***片×4时序假设的非相干度量可被传送到数据结构。在操作160中,数据结构保持跟踪最大的非相干度量(比如,粗略AFC值、码片×4时序假设、非相干度量值)。在操作162中,将“最终者”分配给N个专用支路。每个支路可用码片×4时序值和粗略AFC假设来唯一地参数化,所述粗略AFC假设与管理PN解扩阵列的当前粗略AFC假设无关。因为帧时序一开始是未知的,所以专用支路输出的每个解扩符号被假设在帧中的最后。因此,如操作164和166所示,缓冲的256个符号经过差分解调和基于与恒定复数值相乘的附加组迭代,以执行精细AFC校正。操作164的输出可以是来自每个专用支路的复数叉积。在操作166中,与恒定的复数旋转(根据精细AFC假设确定)的逐符号相乘可迭代地应用于假定信息帧,以确定复数旋转常数值的哪个选择(如果有的话)揭示了通过循环冗余校验(CRC)的帧。这可以是强力操作,在该强力操作中,可对每个假设执行循环冗余校验(CRC)。对于任何有效的CRC,来自信号的有效载荷可被发送到MAC,并且网络参数可被认为是已知的。
在操作168中,尝试其它时隙时序假设。在代表性实施例中,与最成功的CRC相关联的粗略AFC假设可以是名义上的起始的粗略AFC假设。一旦粗略AFC假设的整个范围被探测,标签就记下被称为Nominal_Coarse_AFC的变量,该变量是未来事务中所使用的相关状态信息,因为振荡器ppm偏差的部分间变化比大致一分钟左右的振荡器漂移大得多,所以该相关状态信息使粗略AFC假设搜索范围极大地变窄。
图11示出了在专用信道的标签处理中从热启动开始(也就是说,在相关状态信息已知的情况下)执行的操作。例如,帧时序可以是已知的,并且可对粗略AFC假设的更紧缩范围进行探测。调制解调器足够早地开始它的处理,以使得可在9个符号的前导码结束之前进行有效的支路分配。可替换地,可使用任何其它数量的符号。
在操作200中,因为帧时序是已知的,所以无需遍历两时隙时序假设进行迭代。不是使用广播信道,而是使用专用信道。在操作202中,对粗略AFC假设进行扫描。在代表性实施例中,可在导致自从最后一次接入以来的小频率漂移的小范围上对粗略AFC进行扫描。使用标签所特有的、已知金码产生的PN序列,在操作204中,对所***片×4分隔假设计算非相干度量。在操作206和208中,增加粗略AFC假设,直到小ppm范围结束为止。在操作210中,数据结构保持跟踪最大非相干度量(比如,粗略AFC值、码片×4时序假设、非相干度量值等)。在操作212中,基于所述数据结构来分配专用支路。在操作214中,使用当前DBPSK和先前的DBPSK来创建符号叉积。操作214的输出可以是来自每个专用支路的复数叉积。在操作216中,对帧进行交织和译码。对于任何有效的CRC,可将有效载荷发送到媒体接入控制(MAC)层。在操作218中,尝试其它时隙时序假设。在代表性实施例中,与最成功的CRC相关联的粗略AFC假设可以是名义上的起始的粗略AFC假设。
图12示出了描绘根据代表性实施例的标签的解调处理的标签接收数据路径。如所示,1比特复数采样被缓冲在采样缓冲器220中,以使得存在足够的数据来进行有效能量的可靠检测。在采样缓冲器块220中提供了代表值。例如,一个实施例缓冲9个符号。在可替换实施例中,可使用其它值。可以以码片×2或2MHz的同步采样速率将采样从I信道和Q信道输入到该乒乓缓存方案中。可替换地,可使用其它速率。按照快速异步时钟,这些采样被用于探测各种粗略AFC假设。基于当前的粗略AFC假设,以码片×4分辨率执行时间跟踪。因为相同的时序参考被用于驱动AP和标签这二者上的载波频率和采样时钟这二者,所以具有已知载波频率的粗略AFC假设可唯一地映射到已知的时间跟踪速率。
采样缓冲器220通过I信道和Q信道接收通讯信号。这些信号被发送到时间跟踪逻辑222和专用支路234。时间跟踪逻辑222还接收粗略AFC假设,并且逻辑222可在码片×4奇偶校验位重置为零。时间跟踪逻辑222可具有两个时钟,一个具有对于偶数码片×4奇偶校验位被初始化为零的计数器,一个具有对于奇数码片×4奇偶校验位被初始化为中间范围(即,2∧25)的计数器。时间跟踪逻辑222的输出被提供给块224,在块224中,施加虚拟码片×4相位。块224还可从捕获状态机接收奇偶校验位。自动频率控制(AFC)旋转逻辑226被施加于块224的输出。
图13示出了参照图12描述的时间跟踪逻辑222的两个块的代表性实施例。流250是具有偶数码片×4奇偶校验位的通讯流。流252是具有奇数码片×4奇偶校验位的通讯流。图13描绘了时间跟踪操作,其中,每个不同的阴影部分表示不同码片×4分隔序列。采样以直接取决于哪个当前AFC假设正被探测、与采样速率与载波频率之间的已知比率相乘的速率被***或重复。这可用作锁定时钟假定,以使2维空间塌缩为单维。所描绘的值N具有被簿记的允许有足够的时间跟踪精度的小数部分。在给定时间选择4个可能的码片×4相位的特定奇偶校验位。然后,如图14所示,在1比特数据路径中对所得的码片速率序列进行解旋。
图14描绘了图12的AFC(自动频率控制)旋转逻辑226的功能,该AFC旋转逻辑226在给定时间对4个虚拟码片×4相位224之一操作。图14描绘了1比特解旋机制。该解旋机制被设计为针对假定的粗略AFC假设抵消由于接收机与发射机之间的相对载波漂移而导致的AFC旋转。因为它是1比特变换(用以上所示的真值表表示),所以由于来自相对振荡器偏移的AFC漂移,相对于相位的连续值,所述处理的90度分辨率为+/-45度。
AFC旋转逻辑226还可接收粗略AFC假设作为输入。PN解扩阵列228(图12)对码片分隔假设执行其解扩操作。PN解扩阵列228可接收当前的粗略AFC假设、时序奇偶校验位、时序相位、扩频因子、和/或金码选择作为输入。当对于给定符号输出值时,为了更好的度量可靠性,将总和与存储在非相干累积缓冲器230中的当前和非相干地累积。缓冲器的大小基于解扩元件的数量。在代表性实施例中,PN解扩阵列228可具有256个解扩元件,以使得一次通过采样缓冲器就完成对256个假设的非相关度量。可替换地,可使用其它数量的解扩元件,并且可对其它数量的假设完成度量。信噪比(SNR)度量可用于标签的发射功率控制和对AP的功率控制反馈。具有最大度量的假设被存储在前N个路径数据结构232中,该数据结构232用于控制专用支路234的分配。前N个路径可以是包括时序假设、时序奇偶校验位、粗略ADC假设等的N个记录。
图15示出了专用通讯支路。每个专用支路通过作为支路分配的参数的一部分而设置的码片×4选择器260来访问码片×4个采样的4个相位中的每个。每个支路具有它自己的专用PN发生器262和用于解扩的AFC发生器264。专用支路基于粗略AFC假设将其码片×4时序相位、时间跟踪速率的因变量累积到符号累积器266中,然后每一扩频因子数量的时钟地输出复数变量。参照图12示出的专用支路234还可接收来自采样缓冲器220的输入和PN码选择。
再次参照图12,来自专用支路234的输出通过比特宽度挤压器(squeezer)236,该比特宽度挤压器236减小比特宽度,以用于高效率地存储在帧缓冲器238中,而不牺牲性能。来自比特宽度挤压器236的输出被提供给帧缓冲器238,该帧缓冲器238可以是循环缓冲机构,该循环缓冲机构考虑到如同当前符号是帧的最后一个符号那样处理256符号帧的一般情况。当已知帧时序时,该存储器结构可支持最后一个符号已知的帧的特定处理。
帧缓冲器238将假设的帧输出到接收链的其余部分。叉积乘法块240执行当前符号与前一符号的复共轭(其为D-BPSK解调的常规度量)的乘法。残留频率漂移可使D-BPSK群集旋转固定相位。精细AFC乘法块242的作用是采取强力方法并尝试不同的可能的相位旋转,以使得当至少一个精细AFC假设通过解交织器和维特比译码器244时,该至少一个精细AFC假设得到有效的CRC。精细AFC乘法块242还可接收精细AFC假设作为输入。解交织器和维特比译码器244的输出被提供给CRC检查器246。如果CRC有效,则有效载荷被送到MAC层。
图16描绘了在接入点接收处理期间执行的代表性操作。根据实施例,可执行附加的、更少的或不同的操作。此外,这些操作可按与这里所述的顺序不同的顺序执行。AP执行检查所有可能的码片×2时序假设、扩频因子和扩频因子内的接入时隙的强力操作。这使得标签可不协调地接入。幸运的是,因为AP是帧时序和AFC载波频率的控制者(所有标签都可补偿它们的载波漂移和采样时钟这二者来满足AP的时序),所以由于AP无需探测粗略AFC假设的维度或未知的帧时序,因此AP上的处理负担大大减少。
图16的流程图显示了在所有可能的码片×2时序偏移、集合[8192,4096,…,64]中的扩频因子和用于小于最大值的扩频因子的接入时隙数上的迭代的排序的例子。AP然后执行与标签所执行的精细AFC搜索类似的精细AFC搜索,以考虑到自从最后一次事务以来发生的标签与AP的计时源之间的少量频率漂移。所有有效的CRC都被传给MAC层。图16的流程图示出了多维空间的搜索。在最外层循环中,对所有可能的扩频因子进行搜索。在代表性实施例中,可以存在8个扩频因子[64,128,256,512,1024,2048,4096,8192]。可替换地,可使用其它扩频因子和/或其它数量的扩频因子。在第二次循环中,对给定的扩频因子搜索所有可能的子时隙。例如,对于64码片扩频因子,可存在128个可能的子时隙,对于8192码片扩频因子,可存在单个退化子时隙。在第三次循环中,在给定的子时隙内搜索所有可能的码片×2时序相位。如以下更详细描述的,各循环在图16中用箭头示出。
在操作270中,使用一个粗略AFC值。在代表性实施例中,因为由标签执行补偿,所以一个粗略AFC值可以是0。在操作272中,使用最大扩频因子(比如,8192)作为起始点。在可替换实施例中,最大扩频因子可以大于或小于8192。在操作274中,在扩频因子内对接入时隙进行处理。在存在8192个扩频因子的情况下,该处理可退化。在操作276中,对当前扩频因子的所***片×2分隔假设执行解扩。例如,如果扩频因子具有8192的长度,则可执行16,384个解扩操作。对所有元件执行解扩,除非解扩因子小于帧缓冲数(比如,256)。在操作278中,将扩频因子减半,并且处理继续。在操作280中,确定扩频因子是否减小到64。在可替换实施例中,可使用其它预定值。如果扩频因子没有减小到64(或其它预定值),则在操作276,处理继续。如果扩频因子减小到64,则在操作282中,***等待下一采样缓冲器填充。一旦在操作282中下一采样缓冲器被填充,控制就返回到操作272。在操作284中,获得解扩元件的帧缓冲器。在代表性实施例中,帧缓冲可以在PN解扩阵列一次输出256个符号之后完成。在一个实施例中,对于256级PN解扩阵列,一次通过可产生256个时序假设,每个时序假设具有256个符号。在可替换实施例中,PN解扩阵列可具有更多的或更少的级。在操作286中,计算当前解扩DBPSK符号与前一符号的叉积。在一个实施例中,叉积可涉及用于多达256个帧的256个符号。可替换地,可使用其它数量的符号和/或帧。在操作288中,基于AFC假设对当前帧进行译码和相位乘法。在操作290中,对CRC进行检查,并且对于任何有效CRC,有效载荷被送出物理层(PHY),并被送到媒体接入控制(MAC)。作为例子,CRC可被检查这样的次数,该次数为用于每次通过256解扩阵列的精细AFC假设的数量的256倍。当对于给定时隙完成所述处理时,如从块282到块272的箭头所指示的,对后一时隙执行所述处理。
图17描绘了接入点(AP)接收数据路径。与标签不同,解扩因子最大的整个帧可按乒乓缓冲方案被存储在采样缓冲器300中。该缓冲方案可以是大容量存储器(比如,16.8兆比特),并且在至少一个实施例中,它可被存储在专用的芯片外存储器件中。采样缓冲器块300包括代表值。在可替换实施例中,可使用其它值。与标签不同,因为AP是主要的时间参考,所以可以不使用时间跟踪逻辑和AFC旋转逻辑。采样缓冲器300将帧传递到PN解扩阵列302,PN解扩阵列302可执行如本文前面所述的强力测试。PN解扩阵列302可包括256个解扩元件。可替换地,可使用任何其它数量的解扩元件。PN解扩阵列302还可接收当前时序奇偶校验位(其可以仅是码片×2分辨率)、假设相位和/或扩频因子作为输入。PN解扩阵列302的输出被提供给比特宽度挤压器304。比特宽度挤压器304减小帧的大小,这些帧然后被发送到帧缓冲器306。帧缓冲器块306包括代表值。在可替换实施例中,可使用其它值。根据实施例,帧缓冲器306还可被存放在专用的芯片外存储器件中。所述***的其余部分类似于标签的迭代精细AFC假设的接收处理(操作310和312),并且具有有效CRC的所有有效载荷都被传给AP的MAC(操作314和316)。非相干累积308用于确定将功率控制反馈发射到标签时所使用的SNR度量,诸如信号强度。
图18示出了异步初始标签发送操作,包括导致从标签到AP的数据传输的两种类型的交互。为了说明和讨论的目的,时隙320表示标签时隙,并且时隙322表示接入点时隙。“冷启动”是标签没有任何相关状态信息地进入***,而“热启动”是标签知道***信息,诸如时隙时序和要探测的缩小范围的粗略AFC假设。
在“冷启动”情况下,标签在时隙异步时刻寻找接入。图18描绘了当AP甚至不发射广播信道时标签开始尝试捕获广播信道的时间(时隙1)。最后,标签的处理在AP正在发送广播帧的时间段期间探测有效的粗略AFC假设。图18描绘了在时隙2期间发生的这个处理。此时,非相关能量度量使专用支路探测正确的码片×4时序和粗略AFC假设。具有正确假设的支路持续地将每个新符号作为帧的最后一个符号进行处理,并且在CRC检查指示失败的情况下,将这些假设帧推送通过接收链。在时隙4结束时,当CRC检查指示成功时,实现有效的帧时序。此时,标签具有与以“热启动”进入的标签将具有的相关状态信息相同的相关状态信息,并继续完成与“热启动”标签将经过的处理相同的处理。
标签或者通过“冷启动”过程的转变、或者直接当标签苏醒时(如果相关状态信息被适当地维护)来进入时隙6中所描绘的交互(“热启动”)。此刻,标签进行广播帧的接收强度的测量,并使用该信息来确定标签随后在时隙7中发射的发射功率和扩频因子。标签基于以下操作来发射它的消息:1)使用所测量的接收广播信道信号强度,并选择可用于关闭链路的最小扩频因子,该最小扩频因子使标签的开启时间最短,并且对于使功耗最小是最佳的;2)使用所测量的接收广播信道信号强度和以前选择的扩频因子,标签在AP处的接收的最优性条件下进行发射,所述最优性条件是所有用户被AP以每比特能量与特殊噪声密度之比(Eb/No)的非常类似的值接收;3)对于除了最大扩频因子之外的所有扩频因子,随机地选择时隙接入参数j;以及4)随机地选择从0到扩频因子-1的码片偏移值,以使得AP处的“冲突”最少,并且每次发射的随机选择使得“冲突”可在随后的发射机会中被解决。
在时隙8和9期间,AP对在时隙7期间接收的所有信号进行处理,并在时隙10期间送回肯定应答。AP或者将几个ACK聚集到用金码表征的单个信道中,或者使用其专用金码信道将专用消息发送到标签。指出,前一种方法需要一些注册过程(未显示)来分配信道。在任一情况下,标签都使用消息的前导码来更新其码片×4时序。
图19示出了时隙模式下的接入点与标签之间的简单交互。在代表性实施例中,所述简单交互不涉及用于标签的数据,并涉及相对静态的信道。为了说明和讨论的目的,时间线330表示时隙期间的标签处理,而时间线332表示时隙期间的接入点处理。所述***的本质是标签在低功率状态(***计时通过低功率、低频率晶体振荡器(其通常为32kHz)来维护的状态)下花费最多可能时间。为了支持这一点,识别当AP发起交互时的最大容许延迟(即,这是循环进入和退出标签检查任何AP动作是否正在待命的低功率状态的速率)。图19显示了标签退出其低功率状态以检查AP是否正在等待发起事务的相对简单的交互。这以在注册期间在AP与标签之间议定的时隙相位和速率发生。
标签通常将进入“热启动”,在“热启动”中,已知帧时序和粗略AFC假设在紧缩范围内。标签进行接收广播信道功率的测量。图19显示了自从与AP最后一次交互以来功率没有很大变化的情况。这意味着AP以其发射的最后发射功率/扩频因子足以关闭链路。在时隙3中,标签尝试捕获前导码、然后使用其专用金码来对帧进行解调。典型情况是不具有发送信息的AP和标签立即返回到休眠状态。
图20描绘了根据代表性实施例的涉及接入点与标签之间的数据传输和动态改变的传播的交互的更详细示图。为了说明和讨论的目的,时间线340表示时隙期间的标签处理,而时间线342表示时隙期间的接入点(AP)处理。这里,AP有信息要发送,并且自从最后AP事务以来,信道的传播相当大地改变。当前广播信道功率测量已改变,以使得标签知道如果它以与最后一次相同的发射功率/扩频因子进行发射,则后一次发射将不合适。因此,标签将使用图18中所解释的协议来发送重新注册消息,以警告AP使用适合于当前信道条件的新的发射功率/扩频因子。新信息管理在时隙N+5中发生的帧的发射和接收。标签产生由图18的协议管理的应答(ACK)消息来指示成功发射。如果ACK被成功接收,则事务被认为完成。否则,标签尝试重新发射。
在通讯***中,网关、接入点和节点(也被称为标签)可在媒体接入控制(MAC)层中实现里德所罗门(RS)***作为前向纠错(FEC)***。在RS***中,发射机从包括N个字节的信号创建编码数据,其中,这些字节中的K个字节是***数据字节,这些字节中的其余字节(N-K个字节)是奇偶校验字节。***数据字节与被编码的信号相同。奇偶校验字节从***数据字节编码得到。N和K参数的比值是实现特定的,并可基于信号条件来调谐。在一个例子中,K是71个字节,N是255个字节,但是根据***如何被调谐,其它组合是可以的。例如,在噪声较大的环境下,***可被设计为K为20个字节、N为255个字节。在噪声较小的环境下,***可被设计为K为200个字节、N为255个字节。调谐可在***配置期间进行,或者在***正在工作的同时动态地执行。
如本领域技术人员已知的,RS***的基于擦除码的***可用于改进可通过给定数量的编码字节纠正的字节的总数。在基于擦除码的***中,接收机纠正特定RS码字内的作为擦除码的字节。擦除码是未被接收的字节。字节未被接收或者是由于接收期间的错误,或者是因为字节没有被发射。使用基于擦除码的***,接收机可对已被接收的每N个字节纠正(N-K)个字节。在没有基于擦除码的***的情况下,接收机可纠正((N-K)/2)个字节。
图21是描绘示例性FEC***的数据结构的示图。在该数据结构中,六个RS码字2102、2104、2106、2108、2110和2112被一起分组到表中。该表的每一行表示单个RS码字。RS码字被将被发射到接收机的数据填充。RS码字2102的代表字节2120、2122和2124被标记。该表的每一列包括每个RS码字中的1个字节。代表字节2120、2126、2128、2130、2132和2134依次被发射消息中的消息字节填充。后面的消息字节填充该表后面的列。字节2120、2126、2128、2130、2132和2134被作为协议数据单元(PDU)2136的一部分发射。该表后面的每一列都填充后一PDU。PDU还包含序号2138和PDU总数2140。序号2138指示特定PDU属于该表的哪一列。PDU总数2140指示足以重组信号的PDU的数量。另外,PDU可与指示成功发射包的循环冗余校验(CRC)一起发射。与不正确的CRC一起到达的PDU在沿协议栈向上被传给媒体接入控制(MAC)层之前被丢弃,并最终对在RS码字中填充没有贡献。因为CRC可在物理层被添加,所以在图中没有显示CRC。
在说明性实施例中,当MAC层从发射接收协议数据时,物理层检查CRC以确定PDU是否有效。接收机还可基于预定的阈值信噪比来判定PDU是否有效。该技术阻止来自一个PDU的错误影响码字的多个字节,并使得可简单地识别未被接收的字节。如果PDU有效,则接收机使用序号来将RS码字的六个字节组装到缓冲器中。接收机还更新擦除码掩模。擦除码掩模是指示RS码字的哪些字节到达的数据结构。擦除码掩模还指示RS码字的哪些字节是擦除码并且未被成功接收。接收机对接收的PDU进行计数,并将该数量与足以使发射完成的PDU的总数进行比较。当接收的PDU的数量等于足以使发射完成的PDU的总数时,接收机使用如本领域技术人员已知的里德所罗门译码器来对具有擦除码掩模的码字进行处理。里德所罗门译码器的输出是已被编码的字节。
实现FEC***的发射机通常不发送所有N个字节。FEC***使得N个字节中的任一K个字节集合可用于重构原始的K个字节。发射机发送初始字节集合,其中,该初始集合为至少K个字节大。发射机还基于以下所述的***来确定是否发送更多字节。发射机可继续发送字节,直到接收机指示所有K个字节都已被译码为止。接收机可以或者通过发送指示K个字节已被译码的短消息、或者通过结束K个字节还未被译码的连续通知来指示所有K个字节已被译码。可替换地,发射机可在第一字节集合之后停止发射字节,直到接收机指示更多字节要被发送为止。接收机可通过发送短消息来指示更多字节要被发送。所述短消息可包括被返回到发射机的单个比特。
指示更多PDU应该被发射或者不需要更多PDU的消息可被调度,而不是响应于输入FEC编码消息来被发送。在发射调度消息时,PDU的接收机一开始发送当发射机将接收响应时的时间的指示符。发射机确定指示发射将花多久发送初始量的PDU的时间长度。发射机通过从当发射机将接收响应时的时间减去所述时间长度来创建发射时间。发射机还减去与用于对初始量的PDU进行处理的时间长度对应的时间量。发射机及时地开始其发射,以接收调度的响应。发射机可以或者继续发射更多的PDU、或者基于响应来结束发射。
接收机可调度对任何特定消息的多于一个的响应。例如,接收机可调度初次响应和二次响应。然而,为了效率,在调度的响应之后,接收机可创建并发射停用列表。停用列表可被传播到所有节点。停用列表指示哪些节点成功地完成了发射。在接收时,停用列表上所标识的节点可停止发射PDU。
图22是示出实现如以上对于图21描述的发射消息的***的例子的操作的流程图。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作2202,节点发射初始的K个PDU。发射可在节点调度该发射之后开始。可替换地,发射可在节点计算的、使得接入点可有足够时间对初始K个PDU的接收作出响应的时间开始。在操作2204,节点检查调度的响应,以确定是否应该发射更多的PDU。响应可包括指示完成消息已被接收的应答(ACK)。可替换地,响应可包括指示应该发射更多PDU的否定应答(NACK)。如果应该发射更多PDU,则节点移到操作2206,在操作2206,发射附加的X个PDU。被发射的PDU的准确数量取决于可用的PDU的总数和直到第二调度响应发生为止的时间。在发射X个PDU之后,在操作2208中,节点检查第二调度响应。类似于操作2204,如果应该发射更多PDU,则节点移到操作2210。在操作2210中,节点发射任何其余的PDU,直到接收到停止消息为止,或者直到所有N个PDU都被发射为止。如果接收到停止消息(可能在所有N个PDU都被发射之后),或者如果任一调度响应指示已接收到K个PDU,则发射完成。如果没有接收到消息,但是所有N个PDU都已被发射,则发射未能完成。
如果在接收到所有N个PDU之后,不存在至少K个无错PDU,并且发射未能完成,则节点可重新发射PDU,直到K个PDU被成功接收为止。然而,节点不具有哪些PDU被成功接收的指示,所以一些重复可发生。节点可以只是重新发射组成码字的所有PDU。可替换地,节点可接收哪些码字有错误的指示。节点然后可仅发射有错误的那些码字。
FEC***可在网关或者将被发送到节点的数据的其它源处实现,而不必在接入点处实现。在大数据包必须被发送到网络中的所有设备(例如以分布码负荷)的任何时间,FEC***特别有用。图23是描绘具有网关2302、接入点2304和2306以及节点2308的***2300的示图。在图23中,与每个发射接入点2304和2306通讯的网关2302在业务数据单元(SDU)上实现以上所述的FEC***。由编码的SDU的部分组成的有效载荷数据单元(PDU)被发送到接入点2304和2306,在接入点2304和2306中,PDU然后被发送到节点2308。因为PDU通过多个通路发送,所以节点2308自由地接收其上信号更好的任何一个PDU。节点2308通过接入点2304或接入点2306发送控制信息,诸如对更多编码数据的请求。来自节点2308的消息被转发到网关2302。被发送到网关2302的可能的消息可包括完成消息或者对更多编码数据的请求。网关2302通过发送编码的SDU的更多部分来对来自节点2308的、对更多编码数据的请求作出响应。网关2302可将被请求部分或者(i)作为广播发送到所有接入点以用于进一步转发,或者(ii)作为直接消息通过可能的最佳路由发送到节点2308。实现FEC***使得可实现集中式分布***,该集中式分布***帮助确保节点可在给定时间监听具有最佳链接的任何一个接入点。因为与工作接入点的链接变为不可用,所以节点无需重复部分下载的SDU。
在一些情况下,网关2302可发射源信号的足够的前向纠错数据来达到预定的可靠性水平,然后停止进一步发射。在FEC***中,源信号被编码为包含前向纠错数据的编码信号。特定噪声状况下的可靠性可通过下述方式来实现,即,通过发送预定数量的PDU(其中,每个PDU包含编码信号的一个单元)来发射编码信号的一部分。在预定的可靠性水平,每个节点(包括节点2308)成功地从每个节点所接收的编码信号对源信号进行译码是有预定概率的。如以下进一步解释的,总功率预算是特定噪声状况的函数。所述预定数量的PDU是所需的预定可靠性水平和总功率预算的函数。所述预定数量的PDU可凭经验在***级上确定、或者在特定***的校准期间被确定。网关2302将所述预定数量的PDU发射到接入点2304和2306,接入点2304和2306将所述预定数量的PDU再发射到节点(包括节点2308)。一旦网关2302发射了足够的前向纠错数据来达到预定可靠性水平,网关2302就可阻止更多编码信号的发射。网关2302可确定哪些节点(包括节点2308)没有成功地对编码信号进行译码。网关2302可将更多数据发射到这些节点,以完整地发射源信号。网关2302可基于***因素(诸如哪些节点未能接收到所有PDU)来确定是否广播或单播附加数据。
节点2308还可使用类似的***来与网关2302通讯。节点2308可使用前向纠错技术从源信号创建编码信号。节点2308将编码信号划分为预定数量的PDU,其中,每个PDU包含编码信号的一个单元。节点2308将这些单元发射到接入点(例如,接入点2304或2306),该接入点将这些单元再发射到网关2302。节点2308以与如上所述的方式相同的方式发射足够的单元来达到预定的可靠性水平。节点2308通过以下所解释的处理来选择接入点(接入点2304或2308)。在节点2308发射了足够的单元来达到预定的可靠性水平之后,如果节点2308确定网关2302没有成功地对编码信号进行译码,则节点2308可发射更多单元。通过诸如所介绍的发射方案的发射方案,节点2308在编码信号的发射期间的任何时间自由地选择新的接入点。节点2308可适应于改变的信号传播特性,并通过网关2302完成发射。
发射机可将扩展频谱***中的数据包广播到许多接收机。例如,接入点或网关可在被多个节点接收的广播信道上分布码负荷,所述码负荷对于所有接收机应该是相同的。然而,接收机均可基于接收机处的单个的信号状况而经历不同的错误。为了尽可能高效率地使用可用带宽,当FEC编码信号的更多字节被单个的接收机请求时,发射机可发送这些字节。可替换地,发射机可被设置为继续发送FEC编码信号的字节,直到每个接收机报告数据包完整为止。
图24是示出使得发射机可将扩展频谱***中的数据包广播到许多接收机的操作的流程图2400。根据实施例,可执行附加的、更多的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作2402中,使用前向纠错技术来将源信号编码为编码信号。里德所罗门编码技术是前向纠错技术的一个例子,但是其它技术是可以的。例如,汉明(hamming)码、戈莱(Golay)码、多维奇偶校验码或本领域技术人员已知的其它码可用作前向纠错技术。在操作2404中,将编码信号划分为多个单元。在操作2406中,使用扩频码对所述多个单元中的一个单元进行扩频。所述单元被扩频到扩频因子。在操作2408中,将已被扩频的单元发射到多个接收机。在操作2410中,发射机测试预定数量的单元是否已被发射,如果否,则发射机循环回发射更多单元。里德所罗门***中的预定数量可以低如K个(对源信号进行译码所需的最少数量的单元)。然而,如果预计到错误包,所述***被设计为更高的预定数量。例如,为了在噪声频谱(其中,K为71,N为255)上发射,所述预定数量可被选择为90个,以便确保每一个接收机具有比对完整包进行重组所需的最少数量的单元多的单元。通常,发射机发射字情况数量的包来为最糟情况链接服务。该基本机制可通过来自接收机的反馈来完善。
接入点和节点可察觉由于接入点与节点之间的配置差异而导致的来自外部源的不同干扰。该不对称干扰意味着,可用于完成从接入点到节点的通讯的最小功率可以不同于可用于完成从节点到接入点的通讯的最小功率。例如,接入点通常将被放置成使得它具有许多发射机(诸如在山顶上的发射机)的视线视图。除了接入点可见的节点之外,可能还存在干扰发射机。然而,节点可能不能看到干扰发射机,可是必须进行发射,以使得即使存在干扰,接入点也接收到节点的信号。这尤其适用于在工业、科学和医疗(ISM)波段中进行广播和接收的器械。
图25是描绘接入点2502与节点2504之间的通讯的示图,该通讯包括上行数据传输2506和下行数据传输2508。上行数据传输2506以接入点2502通过广播信道将所测量的接入点干扰信号(AP_INTERFERENCE)发射到节点2504开始。节点2504以基于所测量的接收信号强度指示符的发射功率和扩频因子来发射上行数据传输2506,所述接收信号强度指示符用AP_INTERFERENCE规范化。下行数据传输2508通过由节点2504返回的信息来进行调整。接入点2502通过广播信道将AP_INTERFERENCE发射到节点2504。节点2504以基于所测量的接收信号强度指示符(RSSI)的发射功率和扩频因子来将所测量的节点干扰信号(NODE_INTERFERENCE)发射到接入点2502,所述RSSI用AP_INTERFERENCE规范化。接入点2502以如下所述的基于节点发射功率和扩频因子、接入点和节点功率delta(例如,7dB)以及AP_INTERFERENCE-NODE_INTERFERENCE而确定的扩频因子来发射下行数据传输2508。
图26是描绘具有接入点2602、干扰信号2604和节点2606的简化***2600的示图,干扰信号2604干扰接入点处的接收。接入点2602可测量由于干扰信号2604(AP_INTERFERENCE)而导致的信号退化。接入点2602可将AP_INTERFERENCE广播到所有监听节点(包括节点2606)。所有节点(包括节点2606)然后可以以更大的功率进行发射,以通过增大发射扩频因子或者直接增大发射功率来克服信号退化。
节点还可基于多个接入点所报告的AP_INTERFERENCE来选择与其通讯的接入点。节点具有完成与给定接入点的通讯的某一功率预算。功率预算不仅是到达接入点的功率、而且还是克服该接入点所报告的干扰的功率的函数。克服接入点所测量的干扰的阈值功率是上行功率裕度。接入点通过将AP_INTERFERENCE发射到节点来报告克服干扰的功率。节点以最低的总能量预算(包括所需的上行功率裕度)来选择接入点。当节点以最低的总能量预算与接入点通讯时,节点可使用较小的扩频因子和/或较低的发射功率来完成通讯。因为较小的扩频因子降低节点所发射的能量,所以可使用较小的扩频因子。因为节点发射较短时间,所以较小的扩频因子与增大的能源节省相关。
如上所述,节点以基于所测量的接收信号强度指示符(RSSI)的发射功率和扩频因子来将数据发射到接入点,所述RSSI用AP_INTERFERENCE规范化。然而,因为简单的功率测量将包括阻塞信号,所以在存在干扰阻塞信号时,在测量RSSI时出现困难。该问题参照图27示出。图27是描绘具有接入点2702、干扰信号2704和节点2706的简化***2700的示图。从接入点2702接收的功率和干扰信号2704通常在节点2706处的功率测量中组合。然而,组合的功率测量干扰节点2706到接入点2702的发射的功率控制。以下描述用于确定从接入点接收的信号功率的方法。
即使当存在同信道或相邻信道的并且干扰来自接入点的发射的时变干扰机时,节点也能够测量从接入点接收的信号功率。图28是描绘用于测量信号功率的组件的框图。在块2802中,如以下进一步描述的,节点从接收信号与已知序列(诸如金码)确定相关性度量(CM)。在块2804中,如以下进一步描述的,节点从频率上的总功率的采样确定高能量度量(HEM)。在块2806中,可将信号功率确定为相关性度量乘以高能量度量。
节点确定信号接收期间的相关性度量。首先,从数学上用线性项表示,CM=mean[sqrt(S_LIN/P_TOT_LIN)]∧2。S_LIN是信号功率,P_TOT_LIN是总功率,这二者都是在线性域中。节点将接收数字序列与先验已知的发射序列相关,并在符号持续时间期间求和,从而创建解扩符号。节点还将若干个这些解扩符号非相关地一起平均,以创建结果。在一个例子中,这些解扩符号中的十六个被一起平均。结果在数学上与相关性度量相关,并且结果可凭经验映射到精确相关性度量。
节点还确定信号接收期间的高能量度量。节点以规律分隔的间隔测量解扩处理之前的总功率的采样。该处理甚至捕捉在整个采样测量过程中可能进入和退出的脉冲噪声源。节点还计算高能量度量(HEM)。HEM=[1/AVG(1/sqrt(Pi))]∧2。其中,Pi均为在某一时间段期间被采样的采样功率测量。测量功率的时间段与在其内计算相关性度量时所使用的接收数字序列到达的时间段重叠。信号功率可按照以上所述的关系S=CM*HEM来计算。在对数域中,这是S_dB=HEM_dB+CM_dB。
节点可通过确定干扰机的信号功率来确定如上所述的节点干扰信号(NODE_INTEFERENCE)。节点可将NODE_INTEFERENCE发射到接入点。如本文进一步描述的,接入点然后可部分地基于NODE_INTEFERENCE来选择用于发射(包括单播发射)的总能量。NODE_INTEFERENCE对应于克服干扰机的信号功率并且仍保持可接受性能所需的功率量。NODE_INTEFERENCE可在对数尺度下被计算为有效噪声(N_EFF)减去不具有干扰的背景噪声(N_NO_INTERFERENCE)。NODE_INTEFERENCE=N_EFF-N_NO_INTERFERENCE。N_EFF是信号功率(如上所述)减去有效信噪比。有效信噪比可通过校准从多个解扩输出的非相关相加的输出来确定。N_NO_INTERFERENCE可在节点校准期间被确定,并被编程到节点中。信道变化使NODE_INTEFERENCE逐帧波动。因此,节点对来自多次读取的NODE_INTEFERENCE求平均值。节点还可将用于信道衰落的功率裕度、测量值中的不精确度和发射功率控制中的不精确度包括到平均的NODE_INTEFERENCE中。该附加裕度可凭经验(例如,通过特定环境下的现场测试)来确定。
通常,接入点以特定的功率设置和特定的扩频因子进行广播。然而,接入点可通过使用正好完成与节点的连接的较小扩频因子来节省下行数据信道带宽。接入点可基于接入点干扰信号(AP_INTERFERENCE)、上行扩频因子和NODE_INTERFERENCE来选择下行扩频因子。如下所述,接入点部分地从用于克服干扰的能量来确定AP_INTERFERENCE。接入点在信号解调期间确定节点所选择的上行扩频因子。接入点从节点接收作为其RSSI测量(如上所述)的结果的NODE_INTERFERENCE。接入点使用所选的下行扩频因子来进行针对特定节点的通讯。
接入点可使用确定下行扩频因子的算法。在对数尺度上进行所有计算,除非另行注明。图29是示出使得与节点2902通讯的接入点2901可部分地基于上行扩频因子来确定下行扩频因子的操作的框图2900。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。框图2900显示了变量对先前计算的变量的依赖性,然而可调整操作的确切顺序来适应特定应用。在操作2903中,如以下更详细描述的,通过从有效噪声减去背景噪声来测量接入点2901干扰信号(AP_INTERFERENCE)。AP_INTERFERENCE也是来自节点的发射为了克服干扰信号而使用的上行功率裕度计算的分量。在操作2904中,从从特定节点接收的包确定节点干扰信号(NODE_INTERFERENCE)和上行扩频因子。如下所述,在操作2906中,使用这三个值来计算delta功率裕度。在操作2908,部分地使用delta功率裕度来计算可用节点下行功率裕度。在操作2910中,计算最终的下行功率裕度。在操作2912,从最终的下行功率裕度计算下行扩频因子。在操作2914中,使用该下行扩频因子来将数据从接入点发射到节点。以下进一步描述该算法。
接入点从以下公式计算delta功率裕度:DELTA_MARGIN=AP_INTERFERENCE-NODE_INTERFERENCE。AP_INTERFERENCE是节点克服接入点处的频率上干扰所需的功率量,以下对AP_INTERFERENCE进行进一步描述。NODE_INTERFERENCE是节点所计算的NODE_INTERFERENCE计算的平均值,本文对NODE_INTERFERENCE进行进一步描述。类似于AP_INTERFERENCE,NODE_INTERFERENCE是接入点克服节点处的频率上干扰所发射的功率量。接入点所使用的NODE_INTERFERENCE被节点发射到接入点。
作为接入点计算有效噪声(N_EFF)的结果,推导得到AP_INTERFERENCE。在对数尺度下,AP_INTERFERENC是有效噪声(N_EFF)减去不具有干扰的背景噪声(N_NO_INTERFERENCE)。AP_INTERFERENCE=N_EFF-N_NO_INTERFERENCE。接入点处的N_EFF计算与节点处所使用的计算略有不同。在接入点,可在当没有从节点接收到发射时的时间段期间测量N_EFF。因为没有接收到发射,所以每个采样(Ni)处的功率测量是采样时间段内的噪声的瞬时平均值。可替换地,可在许多节点正在发射的同时测量N_EFF。该可替换方法捕捉由于自干扰而导致的本底噪声中的标高。N_EFF被计算为N_EFF=[1/avg(1/sqrt(Ni))]∧2。N_NO_INTERFERENCE可在接入点校准期间被确定,并被编程到接入点中。信道变化使AP_INTERFERENCE逐帧地波动。因此,接入点对来自多次读取的AP_INTERFERENC求平均值。接入点还可将用于信道衰落的裕度、测量值中的不精确度和发射功率控制中的不精确度包括到平均的AP_INTEFERENCE中。该附加裕度可凭经验(例如,通过特定环境下的现场测试)来确定。
接入点还计算delta功率测量(DELTA_POWER)。DELTA_POWER=AP_TX_POWER-MAX_NODE_TX_POWER-DATA_CHAN_CONSTANT。接入点以AP_TX_POWER功率进行发射。AP_TX_POWER在整个***中可以是恒定的。AP_TX_POWER的一个可能的值为29.5dBm,但是因为不同***可被设置为不同发射功率,所以其它值是可以的。MAX_NODE_TX_POWER是***中的任何特定节点可以以其发射的最大值。MAX_NODE_TX_POWER可以在校准过程期间凭经验确定。在一种常见配置中,这是21dBm。其它值取决于特定校准,并且可以是25dBm或15dBm。DATA_CHAN_CONSTANT是被引入说明接入点发射机的具体配置的常数。在一种配置中,因为数据信道在两信道调制器的一个信道上被发射,所以接入点以总发射功率的一半发射该数据信道。因此,在对数尺度下,因为必须从AP_TX_POWER减去3dB以说明发射功率的划分,所以DATA_CHAN_CONSTANT为3dB。
接入点还计算UL_NODE_DELTA_SNR,UL_NODE_DELTA_SNR是从节点接收的信噪比与用于接收的最小信噪比之间的差值。UL_NODE_DELTA_SNR=NODE_SNR-MIN_DECODE_SNR。NODE_SNR是节点的发射的信噪比的读数。MIN_DECODE_SNR是上行上用于节点以其发射的特定扩频因子的最小信噪比。UL_NODE_DELTA_SNR对应于节点超过最小信噪比的量。
接入点还计算节点可用的下行裕度(AVAIL_NODE_DL_MARGIN)。AVAIL_NODE_DL_MARGIN=DELTA_MARGIN+DELTA_POWER+UL_NODE_DELTA_SNR。AVAIL_NODE_DL_MARGIN是在假设上行和下行都使用相同的扩频因子时下行上可用的总功率裕度。然而,因为较小的扩频因子使用总下行带宽中的较少带宽,花费较少功率使节点接收,并可更快地被发射,所以使用不同的扩频因子是有利的。
从AVAIL_NODE_DL_MARGIN,接入点可计算最终下行裕度(FINAL_DL_MARGIN)和下行扩频因子。FINAL_DL_MARGIN是所估计的、接入点发射到节点的、高于用于节点接收的最小信噪比的功率差。接入点计算上行扩频因子(UL_SF)与下行扩频因子(DL_SF)之间的扩频因子delta(SF_DELTA)。SF_DELTA=log2(UL_SF)–log2(DL_SF)。例如,如果UL_SF为8192,DL_SF为2048,则SF_DELTA为2。可计算FINAL_DL_MARGIN。FINAL_DL_MARGIN=AVAIL_NODE_DL_MARGIN–3*SF_DELTA。因为扩频因子的每一个二次方减小对应于比在节点处接收的信号功率小3dB,所以对SF_DELTA变量引入3倍乘数。目标是使FINAL_DL_MARGIN为正数,但是尽可能地小。负FINAL_DL_MARGIN对应于以比足以获得用于接收的最小信噪比的能量小的能量发出包。因此,SF_DELTA=floor(AVAIL_NODE_DL_MARGIN/3)。现在可计算下行扩频因子。DL_SF=2∧(log2(UL_SF)–floor(AVAIL_NODE_DL_MARGIN/3))。所述算法通过满足以上对于DL_SF所述的关系来使得接入点可选择具有最小功率量的扩频因子和在数据信道上到达节点的最短发射时间。
节点可同时测量从多个接入点接收的功率。图30是描绘具有接入点3002和3004的***3000的示图,接入点3002和3004通过外部时间源3006同步,并与节点3008通讯。接入点3002和接入点3004以不同的广播信道扩频码(诸如金码)进行发射。节点3008通过对多次通过节点3008的解扩器的一组输入数据进行处理来测量从在某一频率上发射的接入点3002和3004接收的功率。节点3008可用从一组可能的金码选择的金码来对输入数据进行解扩。
图31是示出使得节点可从可能接入点列表选择用于通讯的接入点的操作的流程图3100。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。通常,解扩处理可针对可能接入点列表中的可以用金码在频率上发射的特定接入点生成信噪比。来自接入点的扩频信号被接收,并被放置到帧缓冲器中。在操作1302中,用扩频码(诸如金码)对扩频信号进行解扩,从而创建数据帧。在操作3104中,执行总功率测量。在从接入点接收扩频信号的时间段内测量总功率测量。如操作3106中那样,节点可使用每个信噪比和总功率测量来确定绝对信号功率测量,或者接收如本文所述的信号强度指示符(RSSI)。在操作3108中,节点从每个接入点接收接入点干扰信号(AP_INTERFERENCE)。如上所述,AP_INTERFERENCE对应于节点克服接入点处的频率上干扰所需的功率量。每个接入点可广播如上所述的接入点可确定的AP_INTERFERENCE。在操作3110中,节点对每个接入点计算RSSI-AP_INTERFERENCE的值。该值对于使用来自节点的最少量的发射功率进行通讯的接入点是最大的。在操作3112中,节点进行测试,以确定可能接入点列表上的每一个接入点是否已被测量。如果接入点尚待测试,则在操作3102和3104,节点继续测试。可替换地,如果接入点满足RSSI-AP_INTERFERENCE的某一阈值,则节点可停止测试可能接入点列表上的接入点。例如,如果节点找到100dBm的RSSI-AP_INTERFERENCE,则它可停止测试。在操作3114中,节点通过寻找具有RSSI-AP_INTERFERENCE的最大值的接入点来确定与哪些接入点通讯。
因为接入点一起同步,所以节点可接收同时通过多个接入点广播的信号。在接入点通过外部时间源(诸如GPS)同步的情况下,接入点之间的码片时序的变化将是由于接收路径中的差异而导致的。这些变化通常没有大到足以阻止节点接收。然而,可通过以与同步时序的多个码片偏移对输入数据进行解扩来补偿这些差异。
在较大的***中,多个接入点可与节点通讯。接入点可通过外部时间源同步。一个可能的外部时间源是全球定位卫星接收机(GPS)。同步时序可以例如通过下述方式来改进***的特性:使节点的捕获更快、改进切换处理、以及使节点上的功耗最小。因为先前已捕获时序的节点可能不能被迫在后面发射时再次捕获时序,所以捕获时间和功耗得到改进。因为只要两个接入点彼此同步,节点就已经与新接入点一定程度地同步,所以切换处理得到改进。
图32是描绘具有接入点3202、干扰信号3204、3206和3208以及节点3210的简化***3200的示图。干扰信号3204、3206和3208在接入点3202可以使用的频率上广播。然而,由于干扰信号3204、3206和3208的频率上干扰,频率的使用增大了节点3210用于发射到接入点3202的功率预算。作为替代,接入点3202执行用于找到用于通讯的最佳频率的现场调查。在现场调查中,***中的接入点测量特定频率上的噪声信号。接入点还遍历频率序列进行迭代,测量每个频率上的噪声信号。当找到噪声信号低的有利频率时,接入点的发射机频率被选择为有利频率。接入点基于下述配置来设置广播信道扩频码(诸如金码),所述配置指定部分地基于所选的特定频率推导的特定扩频码。接入点然后在所选的频率上广播用扩频码扩频的信号,所述所选的频率使得节点可捕获并向***注册。
可执行自动现场调查来在网络部署期间找到理想频率。可通过自动化***来测量干扰噪声和信号传播特性,所述自动化***给予用于特定地点处的通讯的理想频率。当特定频率变为不利时,接入点可重复该处理。接入点可返回到不利频率,以将指示频率变化的消息发射到它正在与其通讯的所有节点。
GPS同步使得节点可能不知道网络中断。当网络组件被重置时,通常,时序丢失。当网络组件被恢复时,节点再次捕获时序,以便与网络组件通讯。然而,在GPS同步的情况下,网络组件可再次捕获与网络组件在被重置之前所具有的时序相同的时序。曾跟踪网络组件的时序的节点不必经过再次捕获时序的处理。当节点不必再次捕获时序时,节点节省网络带宽,并降低总功耗。
节点可通过切换处理和搜索的过程来确定与哪些接入点通讯。当节点选择初始接入点进行通讯时,以及当节点确定抛弃接入点并加入不同的接入点时,节点可进行该确定。节点可被提供配置存储器中的通讯参数列表(被称为漫游列表)。漫游列表中的条目是参数集合,并可包括广播扩频码(诸如金码)、中心频率和扩频因子。在可替换实施例中,漫游列表可包括附加的、不同的和/或更少的条目。节点还可被配置有***选择休眠定时器。
当节点开始搜索用于通讯的已知***时,节点扫描漫游列表中的每个参数集合。图33是示出使得节点可扫描漫游列表中的每个参数集合的操作的流程图3300。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作3302中,节点用漫游列表的每个条目(包括广播扩频码(诸如金码)、中心频率和扩频因子)设置接收机。在操作3304中,节点对每个参数集合测量接收信号强度指示符(RSSI)度量。***的RSSI度量是下行RSSI减去AP_INTERFERENCE。本文中进一步描述下行RSSI。AP_INTERFERENCE通过候选***的广播信道的成功解调来获得,本文对AP_INTERFERENCE进行进一步描述。在操作3306中,节点遍历漫游列表上的其余条目进行迭代。在操作3308中,在漫游列表中的所有条目都已被扫描,并且或者被测量、或者未能被测量之后,节点尝试加入具有最高RSSI度量的***。
可替换的搜索方法也是可以的。漫游列表可包括金码列表,并且可通过搜索可用频率空间和可能的扩频因子来确定其它参数。可替换地,漫游列表可由已知***发射。可替换地,优先化搜索可扫描优先级列表中的已知***。优先级列表是按特定顺序(诸如按以前最知名的RSSI度量的顺序)的漫游列表。如果优先级列表上的任何***满足理想阈值RSSI度量,则节点可尝试立即接到该***,而不扫描任何其余***。如果没有找到满足理想阈值RSSI度量的***,则节点可尝试接到具有次优的RSSI度量的***。
节点可在被称为重选的过程中选择新***。重选可在以下时候发生:当在物理层存在网络同步损失时、当在MAC层中存在故障时、或者当当前***具有所测量的在某一时间段内降至低于阈值的RSSI度量时。例如,RSSI度量可在五个连续帧内降至低于-132dBm,并且重选可发生。一种重选方法是对优先级列表中最后的当前***执行优先化搜索。在优先化搜索中,节点遍历优先级列表进行迭代,直到找到所测量的RSSI度量高于阈值的新***为止。
可通过从先前的搜索跟踪频率估计和时序估计来优化搜索处理。在广播信道的成功译码发生之后,记录频率估计和时序估计。可以以这些估计为种子来发展物理层,以帮助漫游列表的随后扫描更快地完成。在某些捕获失败时,可丢弃频率估计。例如,如果物理层在两次连续冷捕获尝试上未能捕获***,则可丢弃频率估计。当存在搜索中断时,诸如在从深度休眠时间段苏醒之后,可对连续冷捕获失败的计数进行重置。类似地,也可丢弃时序估计。在从空闲状态进入网络期间,在从休眠时间段苏醒之后,或者在若干次连续失败搜索之后,节点可丢弃时序估计。
切换是节点离开该节点正与其通讯的一个接入点并加入另一接入点进行进一步通讯的动作。当接入点请求节点退出和进入网络、并且在随后搜索漫游列表期间选择不同接入点时,切换可发生。当如前面所列出的重选原因之一发生时,切换也可发生。
通过将外环搜索添加到对多个金码进行搜索的捕获过程来实现切换处理和搜索。漫游列表被用于确定哪些金码和频率组合被搜索。来自单次频率搜索的数据可同时在多个金码上被搜索。通过将数据留在帧缓冲器中并用来自漫游列表的不同金码对该数据进行解扩来执行多次搜索。一旦对于***确定了时序,就在其它频率上搜索相同时序,从而可能缩短用于捕获的时间。
节点在漫游列表中所列出的所有金码和频率组合上进行搜索。当节点搜索时,节点记录哪些组合具有最佳的信号功率减去AP_INTERFERENCE值。节点使用最佳组合进行通讯,但是保持跟踪产生供以后执行新搜索时所使用的信号的其它组合。
如果漫游列表的搜索不导致加入尝试,则节点可再次尝试搜索。在某一次数的搜索(例如,2次、3次或4次搜索)之后,节点可在***选择休眠定时器的持续时间内进入深度休眠。在苏醒之后,节点可重启搜索。可替换地,节点可继续搜索与其通讯的接入点。
切换可基本上与如前所述的初次加入接入点的处理相同。然而,当切换发生时,上行通讯和下行通讯可以正在进行中。正在进行中的上行通讯可被中止,并可向对节点的主机发出通知。正在进行中的下行通讯可在成功地接通新节点之后被中止。
节点可同时存储多个注册。当节点苏醒过来发送发射时,节点通过不向该节点先前与其通讯的任何接入点进行注册来节省时间。
在多接入点安装中,可取的是将金码和频率信息广播到节点。一种广播金码和频率信息的方法是在一天中的预先安排的某一时间使所有接入点调谐到预先安排的金码和频率组合。接入点然后广播更新的信息。接入点的通讯是单向的,所以接入点处的任何噪声与节点是否可能接收基本上无关。
远程计时设备(诸如GPS)可用于将精确计时提供给节点。图34是描绘具有接入点3402和3404的***3400的示图,接入点3402和3404的通过外部时间源3406同步,并与节点3408和3410通讯。远程设备将时间发射到节点。例如,接入点3402和2404可通过***帧号(SFN)将计时提供给节点3408和3410。节点3408和3410使用发射的时间来调整内部时钟。通常,在节点彼此同步的情况下,可通过从节点收集测量来提供时间同步数据。这可被用于例如提供可用于精确定位噪声源的声学三角测量数据。
温度控制晶体振荡器(TCXO)中的长期变化可被跟踪和说明。可基于由接入点提供的远程计时源(诸如GPS计时信号)来调整TCXO。这可被用于改进发射机和接收机所使用的频率特性。设备可测量TCXO在特定温度和电压设置下的实际性能。这些值可与历史数据进行比较,以跟踪随时间的变化。在随后的初始化事件上,设备可恢复已知产生某些结果的TCXO参数。例如,设备可在4伏特(V)的控制电压下测量TCXO为45摄氏度(C),并且输出频率可对应于远程计时源。在重新初始化时,当设备不具有可用于校准的远程计时源时,设备可测量TCXO为45摄氏度,并可将控制电压设置为4伏特。随着时间,在TCXO为45摄氏度时,设备可测量使TCXO与远程计时源同步所需的控制电压增大到4.01V。当TCXO为45摄氏度时,设备可调整配置存储器,以指定随后的初始化以4.01伏特开始。
图35是示出使得***可确定两个定时事件之间的关系的操作的流程图3500。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作3502中,***从第一节点接收第一值和第一时间戳。第一时间戳基于从远程计时源提供给第一节点的计时信号。在操作3504中,***从第二节点接收第二值和第二时间戳。第二时间戳基于从远程计时源提供给第二节点的时间信号。在操作3506中,***基于第一时间戳和第二时间戳来确定第一值与第二值之间的关系。该关系可被用于确定这两个值之间的相对时间。当这两个值对应于单个事件时,所述关系对应于戳记第一值的时间与戳记第二值的时间之间的时间延迟。在一些***中,该时间延迟可对应于第一节点和第二节点离导致第一值和第二值的事件的距离的差值。这样的***可应用于用于确定事件发生的位置的三角测量技术。
例如,两个节点可存在于气体管道的相对端。这些节点可具有变换器,该变换器能够表达因气体管道上所发生的事件(诸如泄漏)而产生的声音。声波以已知速度沿着管道长度传播。这两个节点可从声音的测量创建时间戳。这些节点可将时间戳发射到远程***。已知声波传播速度,远程***可计算管道上事件发生的距离和方向。在给予管道地图的情况下,远程***可精确定位事件(诸如泄漏)发生的准确位置。该***的一个优点是它使用于实现三角测量技术的组件的成本最小化。
在正用许多金码进行发射的扩展频谱***中,金码具有一些互相关性质。当一个金码与另一金码相关时,在解扩期间发生互相关。互相关性质可导致信号的错误接收。具体地,接入点使用对每一个符号重置的金码来发射广播信道。因为广播信道金码每一个符号地重复,所以该影响将在帧的持续时间期间保持恒定。因此,如果接入点正在使用与另一接入点的广播信道金码具有显著互相关性的金码,则节点可能定期地对该节点不与其通讯的接入点进行译码。
为了防止这些帧被节点使用,发射机可用基于发射机的标识的值来对哈希函数(hash function)(诸如循环冗余校验(CRC))进行初始化。CRC是被设计为检测信号中的错误的哈希函数。发射机通过本领域技术人员已知的方法从信号创建所计算的CRC。然而,发射机可将哈希函数初始化为基于发射机的标识的值。例如,当所选择的哈希函数为CRC时,发射机将由所计算的CRC和送往节点的数据组成的信号发射到节点。当节点对来自特定发射机的预期信号进行译码时,节点重新计算输入数据的帧上的CRC。与发射机相似,节点将其CRC计算初始化为基于发射机的标识的值。节点对照所接收的CRC检查重新计算的CRC。如果存在失配,则CRC失败,并且帧不被传递到节点的媒体接入控制层。
图36是示出使得***可确定信号是否被特定发射机发射的操作的流程图3600。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作3602中,***从发射机接收具有数据和CRC的信号。该信号用特定于发射机的金码扩频。CRC已用发射机的标识码进行编码。在操作3604中,***用发射机的标识码来初始化测试值,并将CRC计算到测试值中。如果所计算的测试值与所发射的CRC匹配,则CRC通过。在操作3606中,如果CRC没有通过,则***丢弃信号。该技术使得节点可确定发射是否实际来源于预期发射机。
接入点连续地对输入接收信号进行解扩和译码,从而寻找有效载荷。通常,CRC计算提供译码数据是否是来自信号的有效载荷的可靠指示。然而,假定CRC为32比特并且在某一时间段期间有数以亿计次可能的译码,则可产生错误的有效CRC消息。接入点需要区分这些错误的有效CRC消息与真实有效的CRC消息的方法。
一种区分错误的有效CRC消息与真实有效的CRC消息的技术是在接收期间测量信号的非相关能量度量。在解扩期间产生类似于本文所介绍的相关性度量的非相干能量度量。节点将接收数字序列与先验已知的发射序列相关,并在符号持续时间内求和,从而创建解扩符号。节点还将若干个这些解扩符号非相关地一起平均,以创建非相关能量度量。可通过测量如上所述的信号的非相关能量来检测错误的有效CRC消息。不具有有效载荷、但具有随机良好的CRC的信号却将具有低的非相干能量度量。接收机可扔掉非相关能量度量低于某一阈值的通讯。
图37是示出使得接入点可确定信号是否被节点发射的操作的流程图3700。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作3702中,接入点接收信号,该信号具有数据部分和针对该数据部分编码的CRC。CRC被接入点计算为正确的。在操作3704中,接入点在对信号进行解扩期间测量非相关能量度量。在操作3706中,如果非相关能量度量低于阈值,则接入点丢弃信号。该技术检测无效的数据信号,而不对数据信号增加复杂性和开销。
存在对接入点部署有意义的多种拓扑。这些拓扑的不同之处在于重用模式。重用模式定义频率和扩频码(诸如金码)如何被重用。
在多频网络中,重用模式仅基于频率选择。每个接入点使用不同的频率。多频网络具有下述优点,即,当节点没有被调谐到接入点的频率时,没有节点使接入点的灵敏度降幅。
在单频/多金码网络中,重用模式仅基于金码选择。单频/多金码网络具有能够实现许多不协调重叠网络的优点。
在推广的多频和多金码网络中,重用模式基于频率选择和金码选择这二者。推广的多频和多金码网络具有能够实现许多不协调重叠网络的优点。
在单频/单金码网络中,所有接入点都使用相同频率和相同金码来进行发射。在节点中,所有接入点都看似单个接入点。当接入点同步时,接入点之间的切换是无缝的。因为仅存在一个频率和金码供节点搜索,所以捕获是简单的。节点从具有最强信号的接入点接收并测量RSSI。
在多频/多金码***拓扑中,在整个***中重用下行广播信道金码和频率分配,以便使节点在捕获期间搜索的金码和频率的数量最少。彼此紧邻的接入点使用不同的下行广播信道金码和频率。彼此离得较远的接入点可使用相同的下行广播信道金码和频率。如果节点在被附近的接入点和远距离的接入点共享的金码上捕获,则节点可锁定在附近的(较强信号水平的)接入点上。尽管示例性***使用金码作为扩频码,但是其它扩频码是可以的。
图38是描绘具有接入点3802、3804、3806、3808、3810、3812和3814的多频/多金码***拓扑的示图。接入点3802可使用特定频率和金码来与附近的节点通讯。接入点3804、3814和3812不使用与接入点3802相同的频率和金码。在一些重用模式中,接入点3806、3808和3810自由地重用接入点3802的频率和金码。接入点是否可重用特定频率和金码取决于特定的重用协议和信号传播特性。
接入点用***ID、接入点ID(AP ID)、重用码和频率唯一地标识。接入点ID在消息中被广播,并被节点译码。节点使用其目标接入点的接入点ID来选择节点的上行金码。
不同***可在在相同频率上广播的重叠覆盖区域中操作。为了避免***间干扰,可使用唯一***ID来产生对于特定***唯一的一组金码。
图39是示出使得接入点可配置发射机和接收机的操作的流程图3900。根据实施例,可执行附加的、更少的或不同的操作。可调整这些操作的确切顺序来适应特定应用。在操作3902中,接入点基于接入点的位置来选择下行广播信道金码。在操作3904中,接入点基于接入点标识来选择下行数据信道金码。接入点的发射机被配置为广播具有下行广播信道金码的发射。接入点的发射机被进一步配置为将具有下行数据信道金码的数据发射到节点。在操作3906中,接入点基于接入点标识来选择上行金码。接入点的接收机被配置为接收与上行金码一起发射的包。
通常,接入点以比如上所述的广播信道或数据信道高3dB的功率发射前导码信号。然而,前导码信号可被缩放,以便使接收节点不同地操作。如果前导码信号缩小,则接收节点可增大发射扩频因子,从而改进接收节点可以能够与接入点通讯的概率。可替换地,如上所述,接收节点可执行新搜索来找到不同的接入点,从而缓解接入点所观测的频率上的通信量拥挤。
图40是示出接入点设置动态前导码发射功率所执行的操作的流程图4000。在操作4002中,接入点测量如上所述的接入点干扰信号。如果接入点干扰信号低于阈值,则接入点移到操作4004。一个可能的阈值将是测量接入点干扰信号高于40dBm。如果接入点干扰信号大于或等于阈值,则接入点移到操作4006。在操作4004中,接入点检测通信量过载。接入点可通过下述方式来检测通信量过载,即,测量上行数据信道的总利用率,并且如果总利用率高于阈值,则确定接入点过载。可能的过载阈值可以是上行数据信道的80%用于上行通信量。如果接入点检测到通信量过载,则接入点移到操作4006。在操作4006中,接入点在发射前导码信号的同时降低发射功率。例如,接入点可在发射前导码的同时将其发射功率降低1dB。
接入点可适应具有更高上行裕度的噪声更大的环境。例如,当上行裕度为10dB时,接入点可适应。当上行裕度高于阈值时,接入点可通过减小前导码发射功率来适应。例如,仅当上行裕度高于10dB时,才可减小前导码发射功率。所述阈值可动态地确定,并定期(例如,每天中午)进行调整。
以上所述的方法可在扩展频谱通讯***中实现。尽管给出的例子可指定***中的特定设备,但是所述的方法可在***的所有设备(包括节点、接入点和在***中通讯的任何其它设备)上实现。***的每个设备(包括节点、接入点和在***中通讯的任何其它设备)可包含处理器、接收机和发射机。所述处理器可由通用处理器、或者被设计为实现上述方法的实现特定逻辑电路组成。所述接收机可被配置为接收可包括漫游时序偏移的扩展频谱通讯。通讯设备上的对应发射机可发射扩展频谱通讯,该扩展频谱通讯也可以包括随机时序偏移。接收设备上的处理器或其它控制逻辑然后可执行本文所述的操作来改进接收以及改进发射方法和功率控制。所述处理器可基于存储在计算机可读介质上的软件指令来被指导。
已为了说明和描述的目的呈现了前面对代表性实施例的描述。并非意图穷举或者将本发明限制于所公开的精确形式,并且修改和变更按照以上教导是可以的,或者可从本发明的实施获取。选择和描述实施例是为了解释本发明的原理及其实际应用,以使得本领域技术人员能够在各种实施例中以适合于所设想的特定用途的各种修改形式来利用本发明。上行中所使用的处理不限于上行,而是还可应用于下行。类似地,下行中所使用的处理不限于下行,而是还可应用于上行。另外,本文使用了一个或多个流程图。流程图的使用并非意图对执行操作的顺序进行限制。
举例说明,以下是所呈现的技术的说明性例子。
公开了补偿通讯***中未被接收的信息的说明性方法。使用前向纠错技术从源信号创建编码信号。将编码信号划分为多个单元。在发射机通过第一路由将所述多个单元中的第一单元发射到接收机。在发射机通过第二路由将所述多个单元中的第二单元发射到接收机。
在所述方法的可替换实施例中,第一路由包括从网关发射到接入点,以指定将第一单元发射到第一节点。
在所述方法的可替换实施例中,网关基于来自第一节点的消息来选择接入点。在所述方法的可替换实施例中,在基于时隙开始时间和漫游时序偏移的时间接收来自第一节点的消息。在从第二节点接收第二信号的至少一部分的同时,接收来自第一节点的消息。
在所述方法的可替换实施例中,第一路由包括从节点发射到接入点,以指定将第一单元发送到网关。在所述方法的可替换实施例中,节点基于从接入点接收的下行信号的特性来选择接入点。在所述方法的可替换实施例中,前向纠错技术包括里德所罗门编码技术。
在所述方法的可替换实施例中,确定一个或多个节点中的哪些节点没有成功地对编码信号进行译码。将所述多个单元中的第三单元发射到所述一个或多个节点中没有对编码信号进行译码的节点。
在所述方法的可替换实施例中,如果所述多个单元中的第一单元的发射确保信号译码达到预定可靠性水平,则阻止所述多个单元中的第二单元的发射。在所述方法的可替换实施例中,所述多个单元中的第一单元包括循环冗余校验。
公开了一种补偿通讯***中未被接收的信息的说明性方法。使用前向纠错技术从源信号创建编码信号。将编码信号划分为多个单元。对所述多个单元中的第一单元进行扩频。将所述多个单元中的第一单元发射到第一接收机和第二接收机。
在所述方法的可替换实施例中,至少部分地基于应该被发射的预定数量的单元来确定是否应该发射所述多个单元中的第一单元。在所述方法的可替换实施例中,所述应该被发射的预定数量的单元是对源信号进行译码所需的最少数量的单元。在所述方法的可替换实施例中,前向纠错技术使用多个***符号和多个奇偶校验符号。
在所述方法的可替换实施例中,至少部分地基于首先从第一接收机接收的应答消息和其次从第二接收机接收的应答消息来确定是否应该发射所述多个单元中的第一单元。
在所述方法的可替换实施例中,首先接收的应答消息在基于时隙开始时间和随机时序偏移的时间被接收,并且进一步其中,首先接收的应答消息在从第二节点接收第二信号的至少一部分的同时被接收。在所述方法的可替换实施例中,前向纠错技术包括里德所罗门编码技术。在所述方法的可替换实施例中,源信号是码载荷的分量。
公开了一种确定通讯***中的发射功率的说明性方法。确定在节点从发射机接收的第一信号的信号功率。从发射机接收接入点干扰信号。至少部分地基于接入点干扰信号来确定发射功率。从节点以发射功率发射第二信号。
在所述方法的可替换实施例中,第一信号被扩频,并与干扰信号一起被接收。在所述方法的可替换实施例中,接入点干扰信号至少部分地基于有效噪声测量和背景噪声测量。
在所述方法的可替换实施例中,有效噪声测量基于在没有接收到发射时测量的多个平均功率测量。在所述方法的可替换实施例中,有效噪声测量基于在接收发射时测量的信噪比和多个平均功率测量。在所述方法的可替换实施例中,在校准期间确定背景噪声测量。在所述方法的可替换实施例中,接入点干扰信号至少部分地基于用于信道衰落的裕度。
在所述方法的可替换实施例中,部分地从信号功率确定发射功率。在所述方法的可替换实施例中,将第二信号发射到接入点,所述接入点至少部分地基于在节点从发射机接收的第一信号的信号功率和接入点干扰信号而选择。在所述方法的可替换实施例中,在基于时隙开始时间和随机时序偏移的时间发射第二信号,并且进一步其中,在从第二节点发射第三信号的至少一部分的同时发射第二信号,以使得第二信号和第三信号都被接收到。
公开了一种控制通讯***中的功率的说明性方法。将接收机处的下行信号与已知序列相关,以确定相关性度量。对下行信号的功率水平进行采样,以确定高能量度量。将相关性度量乘以高能量度量,以确定信号功率。在发射机以发射功率发射上行信号,其中,发射功率至少部分地基于信号功率。
在所述方法的可替换实施例中,部分地通过计算多个解扩符号的平均值来确定相关性度量。部分地通过将下行信号与已知序列相关来计算所述多个解扩符号中的每个解扩。
在所述方法的可替换实施例中,已知序列是金码。在所述方法的可替换实施例中,对功率水平进行采样的第一时间段与下行信号到达接收机的第二时间段重叠。
在所述方法的可替换实施例中,在广播信道上接收下行信号。在所述方法的可替换实施例中,在基于时隙开始时间和随机时序偏移的时间发射上行信号。在从第二节点发射第二信号的至少一部分的同时,发射上行信号,以使得上行信号和第二信号都被接收到。
公开了一种控制通讯***中的功率的说明性方法。至少部分地基于接收机处所接收的扩频因子来确定发射扩频因子。以发射扩频因子发射扩频的信号。
在所述方法的可替换实施例中,发射扩频因子至少部分地基于接入点干扰信号,其中,部分地从外部发射机克服接收机处的频率上干扰信号所需的功率量确定接入点干扰信号。
在所述方法的可替换实施例中,发射扩频因子至少部分地基于节点干扰信号。
公开了一种选择通讯***中的接入点的说明性方法。在接收机从第一发射机和第二发射机接收帧缓冲。帧缓冲包含扩频信号,该扩频信号是来自第一发射机和第二发射机的组合信号。用第一扩频码将帧缓冲解扩到第一帧中。从第一帧确定第一接收信号强度指示符。用第二扩频码将帧缓冲解扩到第二帧中。从第二帧确定第二接收信号强度指示符。
在所述方法的可替换实施例中,至少部分地基于第一接收信号强度指示符和第二接收信号强度指示符来选择接入点。至少部分地基于首先接收的接入点干扰信号和其次接收的接入点干扰信号来选择接入点。
在所述方法的可替换实施例中,第一扩频码是第一金码,第二扩频码是第二金码。在所述方法的可替换实施例中,第一接收信号强度指示符基于在用第一扩频码对帧缓冲进行解扩时所确定的信噪比和在接收帧缓冲的时间段期间测量的总功率测量。
在所述方法的可替换实施例中,通过外部时间源使第一发射机和第二发射机同步。通过以多个码片偏移用第一扩频码对帧缓冲进行解扩来补偿第一发射机和第二发射机的时序的变化。
公开了一种适应于通讯***中的***变化的说明性方法。在接收频率上测量噪声信号。至少部分地基于所测量的噪声信号来选择扩频码和发射频率。以发射频率发射用所选的扩频码扩频的信号。
在所述方法的可替换实施例中,在第二频率上测量第二噪声信号。在所述方法的可替换实施例中,扩频码是金码。
公开了一种切换处理的说明性方法。漫游列表被配置有多个接收参数。对漫游列表的当前条目执行测量操作。测量操作基于当前条目来设置接收机,测量接收机处的RSSI度量,并记录该RSSI度量。对漫游列表的每个条目重复测量操作。至少部分地基于最大RSSI度量来选择漫游列表的条目。基于漫游列表的所选条目来设置接收机。
在所述方法的可替换实施例中,漫游列表的条目包括中心频率和金码。在所述方法的可替换实施例中,漫游列表由接收机在先前的发射期间接收。在所述方法的可替换实施例中,漫游列表由接收机在特定的预先安排的时间接收。在所述方法的可替换实施例中,漫游列表由接收机以特定的预先安排的频率和特定的预先安排的金码接收。
在所述方法的可替换实施例中,RSSI度量至少部分地基于下行RSSI测量减去接入点干扰信号。
在所述方法的可替换实施例中,测量操作还包括基于广播信道的成功解调来将频率估计和时序估计记录到漫游列表中。基于所记录的频率估计和所记录的时序估计来设置接收机。将所选条目移到优先级列表的末尾。对优先级列表中的每个条目重复测量操作。至少部分地基于最大RSSI度量来选择优先级列表的第二条目。基于漫游列表的所选第二条目来设置接收机。
在所述方法的可替换实施例中,基于测量操作的先前迭代来将漫游列表整理到优先级列表中。在所述方法的可替换实施例中,当检测阈值RSSI度量时,中断对漫游列表的每个条目重复测量操作。
公开了一种提供通讯***中的同步的说明性方法。在设备从第一节点接收第一值和第二值。第一时间戳基于来自远程计时源的发射。在设备从第二节点接收第二值和第二时间戳。第二时间戳基于来自远程计时源的发射。基于第一时间戳和第二时间戳来确定第一值与第二值之间的关系。在所述方法的可替换实施例中,远程计时源是GPS。在所述方法的可替换实施例中,使TCXO与远程计时源同步。
在所述方法的可替换实施例中,在基于时隙开始时间和随机时序偏移的时间接收第一值和第一时间戳。在从第三节点接收信号的至少一部分的同时,接收第一值和第一时间戳。
公开了一种改进通讯***中的错误检测的说明性方法。在接收机从发射机接收信号。接收信号包含数据部分和循环冗余校验(CRC)。部分地从发射机标识码计算CRC。确定CRC是否与数据部分和发射机的发射机标识码匹配。如果CRC不与数据部分和发射机的发射机标识码这二者匹配,则丢弃接收信号。
在所述方法的可替换实施例中,用特定于发射机的金码对接收信号进行扩频。部分地从金码计算CRC。如果在接收机接收的CRC不与金码匹配,则丢弃接收信号。
公开了一种改进通讯***中的错误检测的说明性方法。在接收机从发射机接收信号,其中,该信号包含数据部分和循环冗余校验(CRC)。对该信号测量非相干能量度量。如果CRC与数据部分匹配、但是非相关能量度量低于阈值,则丢弃该信号。
公开了一种配置通讯***中的接入点的说明性方法。基于接入点的位置来选择下行广播信道金码。基于接入点标识来选择下行数据信道金码。基于接入点表示来选择上行金码。
公开了一种配置通讯***中的节点的说明性方法。在广播信道上接收接入点标识。基于接入点标识来选择下行数据信道金码。基于接入点标识来选择上行金码。
在所述配置通讯***中的节点的方法的可替换实施例中,发射数据消息,并用上行金码对该数据消息进行扩频。在所述方法的可替换实施例中,接收数据消息,并用下行数据信道金码对该数据消息进行扩频。
在所述方法的可替换实施例中,通过下述方式来验证与接入点标识对应的数据消息,即,使用接入点标识作为循环冗余校验的种子来计算数据消息上的循环冗余消息。
在所述方法的可替换实施例中,在用下行广播金码扩频的消息中接收接入点标识。基于接收机被调谐的频率来选择下行广播金码。