首页> 中国专利> 为码分多址通信系统分配可变长度沃尔什码的方法

为码分多址通信系统分配可变长度沃尔什码的方法

摘要

可以产生相互正交的、用于码分多址(CDMA)蜂窝通信系统的调制码作为沃尔什码序列。一种分配沃尔什码的方法,其包括步骤:接收用于长度为2n的沃尔什码体系和选择沃尔什码长度j=2n-k的状态矢量作为输入(200);(406)-(408)从所述状态矢量中产生用于所述选择的沃尔什码长度j的新的状态矢量;(416)为所述长度为j的选择的沃尔什码产生搜索掩码;(418)为所述长度为j的选择的沃尔什码产生搜索序列;和(442)搜索所述搜索序列以找出下一个可用的沃尔什码。更新所述状态矢量(500)以跟踪在沃尔什码体系中的每一个沃尔什码长度的每一个沃尔什码的分配和释放。

著录项

  • 公开/公告号CN1640035A

    专利类型发明专利

  • 公开/公告日2005-07-13

    原文格式PDF

  • 申请/专利权人 摩托罗拉公司;

    申请/专利号CN02804353.7

  • 申请日2002-11-21

  • 分类号H04J11/00;

  • 代理机构11219 中原信达知识产权代理有限责任公司;

  • 代理人谢丽娜;张天舒

  • 地址 美国伊利诺斯州

  • 入库时间 2023-12-17 16:16:48

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-01-05

    未缴年费专利权终止 IPC(主分类):H04J11/00 授权公告日:20100616 终止日期:20161121 申请日:20021121

    专利权的终止

  • 2016-03-23

    专利权人的姓名或者名称、地址的变更 IPC(主分类):H04J11/00 变更前: 变更后: 申请日:20021121

    专利权人的姓名或者名称、地址的变更

  • 2016-03-23

    专利权的转移 IPC(主分类):H04J11/00 登记生效日:20160303 变更前: 变更后: 申请日:20021121

    专利申请权、专利权的转移

  • 2011-02-23

    专利权的转移 IPC(主分类):H04J11/00 变更前: 变更后: 登记生效日:20110110 申请日:20021121

    专利申请权、专利权的转移

  • 2010-06-16

    授权

    授权

  • 2005-09-07

    实质审查的生效

    实质审查的生效

  • 2005-07-13

    公开

    公开

查看全部

说明书

技术领域

本发明总的来说涉及码分多址(CDMA)蜂窝通信系统,具体地说(但不限于),本发明涉及在具有可变数据速率的码分多址服务区域中分配沃尔什码以服务最大数目的用户。

背景技术

在第三代码分多址蜂窝通信系统中,一种用来提供可变速率数据传输的机制是使用不同长度的沃尔什-哈德码(Walsh-hadamard)码(下面称为沃尔什码),用于在前向链路通信信号上调制。具有相同长度的沃尔什码相互正交,因此可以由不同用户在相同频率波段上使用,而不会相互干扰。具有较低数据速率的用户被分给较长的沃尔什码,而具有快速数据速率的用户被分配给较短的沃尔什码。

在分配不同长度的沃尔什码的组合中出现一个问题,因为较短的沃尔什码“覆盖”某些较长的沃尔什码,即从较短的沃尔什码产生的较长沃尔什码没有与较短的沃尔什码正交。如果在较长的沃尔什码包括较短的沃尔什码的同时分配较短的沃尔什码,可能产生相互干扰。为了服务具有不同数据速率的最大数目的用户,自沃尔什码空间分配的每一个沃尔什码优选地排除使用最小数目的较短沃尔什码。用于搜索下一个可用沃尔什码的当前方法是很耗时的,并且不需要排除使用最小数目的较短沃尔什码。

附图说明

从下面的说明中,并且结合附图,可以理解本发明的特征和优点,其中:

图1是根据本发明实施例的16位沃尔什码的覆盖序列表;

图2是图1的覆盖序列所映射的16位沃尔什码体系的状态矢量;

图3是用于图1的覆盖序列所映射的16位沃尔什码体系的位掩码的表;

图4是根据本发明的另一个实施例的、在活尔什码体系中选择所希望的长度的下一个可用沃尔什码的方法的流程图;和

图5是用于在活尔什码体系中跟踪每一个沃尔什码的分配和释放的流程图。

在所有的视图中,相应的参考标记代表相应的部件。

具体实施方式

提供下面的说明来公开用于实施和利用本发明的当前已知的最佳方式。本发明的范围由权利要求书所限定。

用于码分多址(CDMA)蜂窝通信系统的、相互正交的调制码可被产生作为沃尔什码序列。例如,为了产生具有长度为2的沃尔什码序列(其从用于长度为1的沃尔什码的籽晶值0开始),具有0的籽晶被附加到其本身上以产生第一沃尔什码“00”。籽晶值的反码被附加到籽晶值以产生第二沃尔什码“01”。这就是产生2-位沃尔什码表的等价方法,如下面的表1所示。

             表1

    沃尔什码    W0    W1    0    0    0    1    0    1

用来产生表1的过程可以被重复以产生下一个更高阶的沃尔什码,即下一个更长的沃尔什码长度,如表2所示。也称为哈德码转换矩阵的比特位置W0和W1中的2×2矩阵在比特位置W2和W3中被附加到其自身以产生第一两个沃尔什码0和1。通过将2×2矩阵的反码附加到原始的2×2矩阵,产生第二两个沃尔什码2和3。

                        表2

  沃尔什码    W0    W1    W2    W3  0    0    0    0    0  1    0    1    0    1  2    0    0    1    1  3    0    1    1    0

表2中,沃尔什码0和2在比特位置W0和W2具有相同的第一两个比特,而在比特位置W2和W3中的后两个比特相互为反码。对于沃尔什码1和3,存在相同的关系。

通过重复上述的过程,可产生较高阶的沃尔什码长度的另外的沃尔什码表。例如,为了产生8位沃尔什码,复制表2的4×4矩阵三次,并且对较低的右下四分之一进行取反,如表3所示。

                                表3

  沃尔  什码  W0  W1  W2  W3  W4  W5  W6  W7  0  0  0  0  0  0  0  0  0  1  0  1  0  1  0  1  0  1  2  0  0  1  1  0  0  1  1  3  0  1  1  0  0  1  1  0  4  0  0  0  0  1  1  1  1  5  0  1  0  1  1  0  1  0  6  0  0  1  1  1  1  0  0  7  0  1  1  0  1  0  0  1

在每一个n阶的沃尔什码表中,其中n为2的幂数,每一个第k行的第一一半与每一个第(k+n/2)行的第一一半相同,而每一个第k行的第二一半包含每一个第(k+n/2)行的第二一半的反码。例如,在表3中,n=8。对于k=0,行0和4在比特位置W0到W3中相同,而在比特位置W4到W7,每一位相反。类似地,对于k=1,2和3,行1与5、行2与6以及行3与7分别具有相同的关系。

也可以在较短的和较长的沃尔什码之间说明独特的关系。在表2中的每一个4位沃尔什码“覆盖”两个8位沃尔什码,即4位沃尔什码“0”与8位沃尔什码“0”和“4”的第一一半相同。如果4位沃尔什码“0”被分配给一个用户,而8位沃尔什码“0”或“4”的任何之一分配给另一个用户,则4位沃尔什码和8位沃尔什码可相互干扰。因此,较长的沃尔什码不可用,或者被分配的较短沃尔什码所“覆盖”。在长度为n的沃尔什码k和(k+n/2)中的每一个的第一一半中的长度为n/2的较短沃尔什码k的重复可用来产生活尔什码体系的覆盖序列表,以预测由分配的在系统中的任何沃尔什码所覆盖的沃尔什码。例如,利用这样的规则:阶次为n/2的沃尔什码k覆盖下一个长度为n的较高沃尔什码的沃尔什码k和(k+n/2),2位沃尔什码“0”覆盖4位沃尔什码对(0,2),2位沃什码“1”覆盖4位沃尔什码对(1,3)。类似地,上面计算的相同顺序阶次的4位沃尔什码“0”、“2”“1”和“3”分别覆盖8位沃尔什码对(0,4),(2,6),(1,5),和(3,7)。可以重复相同的计算以构造用于任何希望的码长度的活尔什码体系的覆盖序列表。

图1是由上限定义的覆盖规则所产生的16位沃尔什码的覆盖序列表100,即在沃尔什码长度(n/2)的前一行中的每一个沃尔什码k覆盖在沃尔什码长度n的下一行中的沃尔什码k和(k+n/2),其中,k代表一个沃尔什码,n为2的正整数幂数。覆盖序列表100的第一行包含长度为1的沃尔什码“0”。用来代表沃尔什码的码元“0”等可被其它的码元所代替以适合特定的应用。在某些系统中,使用的沃尔什码“0”被用于导频码元。例如,在图1的16位沃尔什码中,使用沃尔什码“0”作为导频码元将排除所有使用较短长度的沃尔什码“0”。因此,在标题为“RESERVED”下的列将被导频码元所覆盖。另一方面,如果16位沃尔什码“13”被分配,将排除8位沃尔什码“5”、4位沃尔什码“1”和2位沃尔什码“1”。

通过比较位掩码和活尔什码体系的比特映射状态矢量,覆盖序列表100可以用来搜索可用的沃尔什码。例如,如果使用16位活尔什码体系,可以使用16位沃尔什码状态矢量来跟踪已有的沃尔什码分配的状态。

图2是由图1的覆盖序列表100所映射的16位活尔什码体系的状态矢量200。在状态字的顶部行中指示的每一个16位沃尔什码k(WC)具有在底部行中指示的可用状态(S),如果沃尔什码已经被分配,用“1”表示,如果没有被分配,用“0”表示。例如,如果分配了4为沃尔什码“3”,覆盖序列表100示出8位沃尔什码“3”和“7”被覆盖。8位沃尔什码“3”覆盖16位沃尔什码“3”和“11”,8位沃尔什码“7”覆盖16位沃尔什码“7”和“15”。因此,根据覆盖序列表100,4个16位沃尔什码“3”、“11”、“7”和“15”被分配的4位沃尔什码“3”所覆盖。在状态矢量200的示例中,覆盖的沃尔什码“3”、“11”、“7”和“15示为“1”。

为了在序列表100中从左到右搜索可用的4位沃尔什码的状态矢量,在状态矢量200中的搜索的比特位置的组合以16进制给出,0x1111用于4位沃尔什码“0”,0x4444用于4位沃尔什码“2”,0x2222用于4位沃尔什码“1”,0x8888用于4位沃尔什码“3”。这种搜索顺序确保了离沃尔什码“0”的距离最小,即搜索将首先寻找距覆盖序列表100的左边最远的可用的沃尔什码,然而,可以使用其它的搜索顺序来适应特定的应用。在状态矢量中,利用位掩码可容易地搜索用于每一个沃尔什码的各种比特位置组合。

图3是图1的覆盖序列表100所映射的16位沃尔什码体系的位掩码的表300。用于1位沃尔什码的位掩码都是“1”。用于2位沃尔什码的位掩码是重复的“01”序列或者0x5555;对于4位沃尔什码,是重复的序列“0001”或0x1111;对于8位沃尔什码,是重复的序列“00000001”或0x0101。可通过重复n-1个0后跟着1的序列来扩展位掩码表300以包括用于任何沃尔什码长度n的位掩码。

通过移位在位掩码表300中给出的通用位掩码,可以产生用于在选定的沃尔什码长度的每一个沃尔什码的特定位掩码。通用位掩码对应离覆盖序列表100中的左边最远的沃尔什码,即对应称为“0”的沃尔什码。通过将通用位掩码向左移位由沃尔什数目M规定的位数,得出对应在覆盖序列表100中的每一个沃尔什码的位掩码。例如,为了产生在覆盖序列表100中的16位沃尔什码7的位掩码,将图3中的给出的通用16位沃尔什码0x0001左移位M=7位,得到位掩码0x0080。

用于每一个对应长度n的沃尔什码k的位掩码可存储在查找表中,并且通过(例如)一台计算机,根据公知的技术,使用k和n作为查找表中的每一个位掩码[k,n]的地址,可以重新获得位掩码。另外,如上所述,通用位掩码可以存储在查找表中,且每一个沃尔什码的每一个位掩码的移位索引可以存储且可被重新获得以移位通用位掩码,以产生沃尔什码长度n的每一个其它位掩码。

在上述的示例中,4位沃尔什码“3”具有0x8888的对应位掩码[3,4]。为了检查4位沃尔什码“3”是否可用,将位掩码[3,4]的0x8888于状态矢量进行“与(AND)”操作。如果AND操作的结果等于位掩码[3,4],则对应的沃尔什码[3,4]不可用。在这个例子中,最后的0x8888等于位掩码[3,4],因此,在覆盖序列表100的4位沃尔什码“3”的右下方的两个8位沃尔什码都不可用。

如果AND操作的结果等于0x0000,则在覆盖序列表100的4位沃尔什码“3”的下方的两个8位沃尔什码“3”和“7”可用。如果AND操作的结果既不等于0x0000,也不等于0x8888的位掩码[3,4],则在覆盖序列表100的4位沃尔什码“3”的下方的16位沃尔什码“3”,“7”,“11”和“15”中的至少一个可用。在上面例子中,4位沃尔什码“3”的AND操作结果等于位掩码[3,4],因此,8位沃尔什码“3”或“7”都不可用。

在确定4位沃尔什码“3”不可用之后,在状态矢量200中搜索覆盖序列表100中的下一个沃尔什码“1”。利用对应4位沃尔什码“1”的0x2222位掩码[1,4],AND操作的结果为0x0000,表明4位沃尔什码“1”,8位沃尔什码“1”和“5”,以及4个16位沃尔什码“1”,“9”,“5”和“13”都可用。

下面介绍分配沃尔什码的一种方法,其包括步骤:接收长度为2n的沃尔什码体系的状态矢量作为输入;从所述状态矢量中产生用于选定的沃尔什码长度j=2n-k的沃尔什码体系的新状态矢量;为选定的沃尔什码长度j产生搜索掩码;为选定的沃尔什码长度j产生搜索顺序;和用搜索掩码来搜索搜索序列以找出下一个可用的沃尔什码。

在下面的图中,大写字母“J”,“K”,“M”,和“N”分别等价于在说明书和权利要求书中的小写字目“j”,“k”,“m”,和“n”。斜体只是用来将这些参数和文字区别开来。

图4为一种方法的流程图400,用于选择下一个可用的沃尔什码M,其可用于在具有大于或等于j=2(n-k)的阶次n的沃尔什码体系中的任何选定的沃尔什码长度j。所选择的沃尔什码长度j必须遵循沃尔什码产生规则,因此,等于2的幂数,例如为1,2,4,8,16,32,64等等。

步骤402是流程图400的入口点。

步骤404中,接收2n位的沃尔什码体系状态矢量和希望的沃尔什码长度j=2n-k作为输入。

步骤406中,为希望的沃尔什码长度j而将2n位的状态矢量复制给新的状态矢量。

步骤408中,将沃尔什码长度循环指数k初始化为0。

步骤410中,将沃尔什码长度循环指数递增1。

步骤412中,将与被右移2n-k位的新的状态矢量进行“或(OR)”操作的新的状态矢量来代替新的状态矢量。

步骤414中,如果2n-k不等于选择的沃尔什码长度j,则控制转移回到步骤410。如果2n-k等于选择的沃尔什码长度j,则控制转移到步骤415。

步骤415中,通过用状态矢量的最右边的j位来代替状态矢量,将状态矢量缩短为长度j。

步骤416中,如上所述,产生搜索掩码用于长度为2n-k-1的沃尔什码。

步骤418中,如上所述,产生用于选择的沃尔什码长度j的搜索掩码。

步骤420中,将搜索掩码左移对应下一个搜索序列入口M的位数。例如,如果在搜索序列中的下一个沃尔什码为9,则移位的搜索掩码等于被左移9位的搜索掩码。

步骤422中,移位后的搜索掩码与新的状态矢量进行逐位AND操作。

步骤424中,如果步骤422中的AND操作结果为0,则控制转移到步骤426。如果步骤422中的AND操作结果不等于0,则控制转移到步骤428。

步骤426中,选择长度为j的沃尔什码M,且控制转移到步骤422。

步骤428中,如果步骤422中的AND操作结果等于搜索掩码,则控制步骤430。如果步骤422中的AND操作结果不等于搜索掩码,则控制转移到步骤434。

步骤430中,如果M不是搜索序列中的最后入口,则控制转移到步骤420。如果M是搜索序列中的最后入口,则控制转移到步骤432。

步骤432中,选择一个空(null)的沃尔什码来指出没有可用的选择长度为j的沃尔什码,且控制转移到步骤442。

步骤434中,如上所述,产生新的搜索掩码用于长度为j的沃尔什码。

步骤435中,将新的掩码左移对应搜索入口M的位数。

步骤436中,新的搜索掩码与新的状态矢量进行逐位AND操作。

步骤438中,如果在步骤436中的AND操作结果等于0,则控制转移到步骤426。如果步骤436中的AND操作结果不等于0,则控制转移到步骤440。

步骤440中,选择长度为j的沃尔什码M+2n-k-1

步骤442中,产生选择的沃尔什码作为输出。

步骤444是流程图400的退出点。

如上所述,状态矢量不仅可以用来搜索可用的沃尔什码,也可以用来跟踪在沃尔什码体系中的每一个沃尔什码的分配状态。如下所述,可以更新状态矢量以跟踪分配和释放沃尔什码体系中的每一个沃尔什码长度的每一个沃尔什码。

图5是流程图500,用于当将沃尔什码分配给特定的用途并且之后释放变成可用于其它用途时,跟踪沃尔什码的分配。

步骤502是流程图500的入口点。

步骤504中,接收状态矢量、分配指示符、沃尔什码参数M、和沃尔什码长度参数j作为输入。选择的沃尔什码长度j必须遵循沃尔什码产生规则,因此必须等于2的幂数,例如1,2,4,8,16,32,64等等。分配指示符表明长度为j的沃尔什码M是否被分配或释放。

步骤506中,从查找表中重新获得用于长度为j的沃尔什码M的位掩码[M,j]。

步骤508中,检查分配指示符以确定是否表明存在分配。

步骤510中,如果分配指示符表明了分配,在状态矢量和位掩码[M,j]之间进行逐位OR操作。

步骤512中,用步骤510中的OR操作结果代替状态矢量,且控制转移到步骤520。现在,在更新的状态矢量中,将从j位沃尔什码M的分配中得出的覆盖的沃尔什码设定为“1”。

步骤514中,如果分配指示符表明释放,对位掩码[M,j]进行逐位反码或“非”操作。

步骤516中,对状态矢量和在步骤514中的位掩码[M,j]的非操作结果进行AND操作。

步骤518中,用步骤516中的状态矢量和位掩码[M,j]之间的AND操作结果来代替状态矢量。现在,在跟新的状态矢量中,将从释放j位沃尔什码M中得到的未覆盖的沃尔什码设定为“0”。

步骤520中,产生为更新的状态矢量作为输出。

步骤522是流程图500的退出点。

尽管在16位沃尔什码体系的例子中使用的覆盖序列表100和状态矢量200被用来便于理解图4中说明的搜索方法,典型的沃尔什码方法可以是(例如)256沃尔什码。用来产生沃尔什码覆盖序列标、状态矢量、和位掩码以及用来搜索状态矢量的上面介绍的相同方法可以用于256位沃尔什码体系或者所希望的其它任何n位沃尔什码体系。

上面说明的方法也可以用计算机程序产品来实现,其包括用于实施计算机程序的介质,用来输入到计算机中,且在介质中实施的计算机程序促使计算机执行下述功能:接收用于长度为2n的沃尔什码体系的状态矢量作为输入;从状态矢量中产生用于长度为j=2n-k的选择的沃尔什码的新的状态矢量;为长度为j的选择的沃尔什码产生搜索掩码;为长度为j的选择的沃尔什码产生搜索序列;和用搜索掩码来搜索搜索序列以找出下一个可用的沃尔什码。

在权利要求书的精神和范围之内,除了上面特别介绍来实施本发明的之外,根据上面的教导可以对本发明进行其它修改、变化和安排。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号