用于更新代码生成器的线性反馈移位寄存器的方法

文档序号:7613418阅读:353来源:国知局
专利名称:用于更新代码生成器的线性反馈移位寄存器的方法
技术领域
本发明涉及用于更新代码生成器的线性反馈移位寄存器的方法,并涉及使用这些方法的代码生成器。技术术语“代码”指例如在无线电系统中使用的伪噪声序列,诸如采用码分多址(CDMA)的无线电系统的扩展码或加扰码或(例如在加密系统中使用的)另一码。
在采用码分多址的无线电系统中,无线电资源在码分割基础上在多个不同的用户之间进行划分。每个用户的有效负载通过将此有效负载与扩展码相乘扩展到(例如,5兆赫的)宽频带上。接收机能通过将接收的信号乘以所使用的扩展码来分开它想接收的信号。将扩展码的部分称为片,并且这些部分实际上是比特。一个片值能利用0与1来表示或利用1与-1表示为实数。片速率一般十分快,例如超过有效负载速率的一百倍以上。
除扩展码之外,还能使用称为加扰码的代码。这些代码不必用于进一步扩展信号,而用于通过将此信号中的每个比特乘以相应的加扰码比特来加扰此扩展信号的比特。加扰码能特别地长,例如,241-1片长。
通常使所使用的扩展码尽可能地相互正交。例如能从Hadamard(哈达玛)矩阵中获得扩展码。Hadamard矩阵Mn是以这样一种方式由0与1组成的一个n×n矩阵(n为偶整数),其中任何矩阵行不同于确切位于n/2位置上的其它矩阵行。结果,一个矩阵行只包括0,而其余的行由相同数量的0与1组成。当n=2时,得到以下的Hadamard矩阵M2=0001---(1)]]>利用以下关系从Hadamard矩阵Mn中生成Hadamard矩阵M2nM2n=MnMnMnMn----(2)]]>其中矩阵Mn是矩阵Mn的补码,即0利用1来代替,而1利用0来代替。矩阵1因而提供如下M4=0000010100110110---(3)]]>还有,矩阵3提供如下M8=0000000001010101001100110110011000001111010110100011110001101001---(4)]]>如果上述的Hadamard矩阵的元素(即0与1)利用1与-1来表示,则Hadamard矩阵的行相互之间正交。如果需要的话,也能倒置这些值,即0能利用1来代替,而1能利用0来代替,但这不改变矩阵的特性。因此,矩阵1也能利用如下的格式来表示M2=1110,M2=111-1]]>每个矩阵行形成一个扩展码。扩展码的长度根据所需的扩展因素而变化。这些扩展码能例如通过表示扩展码的码分类及其在所涉及的码分类中的序号来进行编号。能利用下式获得码分类码分类的2次幂等于扩展码的长度,换句话说,码分类是扩展码的二进制对数。例如,矩阵4因而包括以下的扩展码(下标表示码分类,而括号中的数字表示序号)扩展码3(0)={0,0,0,0,0,0,0,0,}扩展码3(1)={0,1,0,1,0,1,0,1}扩展码3(2)={0,0,1,1,0,0,1,1,}扩展码3(3)={0,1,1,0,0,1,1,0,}扩展码3(4)={0,0,0,0,1,1,1,1}扩展码3(5)={0,1,0,1,1,0,1,0}扩展码3(6)={0,0,1,1,1,1,0,0}扩展码3(7)={0,1,1,0,1,0,0,1}
根据现有技术,将所有的短扩展码存储在收发信机存储器中。例如,对于一个分类8的代码,这表示将256片的256个不同的代码存储在此存储器中,所需的存储器空间是256×256比特,即总共65536比特。较短的扩展码能从所存储的长码中生成,因此不需要分开存储较低码分类的扩展码。
扩展码能相当地长,例如241-1片。因为一般使用同一个序列,只是不同的收发信机在不同的阶段使用此序列,所以引起的一个技术问题是如何实时生成代码。理想地,要生成的码序列将完全是随机的,但这因为发射机与接收机都必须能采用甚至同一定时(即,相位)生成要使用的码序列因而是不实际的。
利用代码生成器来生成代码,例如利用使用线性反馈移位寄存器的生成器来生成代码。WO公开号96/36137描述用于生成所谓的m序列(最大长度序列)来提供用作代码的伪噪声序列的线性反馈移位寄存器,此序列在2N-1的序列之后进行迭代,其中N表示此线性反馈移位寄存器中的元素数量。线性反馈移位寄存器中的初始状态总是已知的,但出现如何从已知的初始状态移位到位于已知偏移上的新的未知状态的问题。在上面公开描述的解决方案中,存储对应于每个移位或至少对应于与2的幂相对应的每个移位的变换矩阵,此变换矩阵表示需要如何变换每个初始状态元素以提供目标状态元素。结果,241-1片的扩展码所存储的比特数量例如是41×41×41比特(2的不同幂的数量×线性反馈移位寄存器元素的数量×线性反馈移位寄存器的长度),即总共为68921比特。
US 5835528公开了如何将反馈移位寄存器从公知的当前状态更新为位于已知偏移上的新状态。此解决方案包括存储用于更新的预先计算的状态。此解决方案要求用于存储事先计算的状态的存储器,并且只能更新位于利用这些状态确定的偏移上的状态。
本发明的目的是提供用于更新线性反馈移位寄存器的一种方法,其中此方法只采用一小部分的存储器并提供有效的计算,这利用用于将代码生成器的伽罗瓦类型线性反馈移位寄存器更新为已知偏移单位状态的目标状态的方法来实现。此方法包括生成表示此偏移的二进制偏移数量;生成表示此二进制偏移数量中的比特数量的计数值;利用单位状态初始化临时状态;只要此计数值大于0,就迭代采用伽罗瓦域乘法来平方临时状态;如果利用此计数值表示的二进制偏移数量比特的值为1,将此临时状态从当前临时状态向前移位一个状态;并将此计数值递减1;最后,当此计数值达到值0时,将此临时状态设置为目标状态。
本发明还涉及用于将代码生成器的伽罗瓦类型线性反馈移位寄存器更新为从已知当前状态的已知偏移上的新状态的一种方法,此方法包括以下步骤生成表示此偏移的二进制偏移数量;生成表示此二进制偏移数量中的比特数量的计数值;利用单位状态初始化临时状态;只要此计数值大于0,就迭代采用伽罗瓦域乘法来平方临时状态;如果利用此计数值表示的二进制偏移数量比特的值为1,则将此临时状态从当前临时状态向前移位一个状态;并将此计数值递减1;最后,当此计数值达到值0时,在临时状态与当前状态之间执行伽罗瓦域乘法;和将作为相乘结果获得的状态设置为新状态。
本发明还涉及用于将代码生成器的黄金分割类型线性反馈移位寄存器更新为从已知当前状态的已知偏移上的新状态的一种方法,此方法包括以下步骤生成表示此偏移的二进制偏移数量;生成表示此二进制偏移数量中的比特数量的计数值;利用单位状态初始化伽罗瓦类型临时状态;只要此计数值大于0,就迭代采用伽罗瓦域乘法来平方临时状态;如果利用此计数值表示的二进制偏移数量比特的值为1,则将此临时状态从当前临时状态向前移位一个状态;并将此计数值递减1;最后,当此计数值达到值0时,在伽罗瓦类型临时状态与黄金分割类型当前状态之间执行伽罗瓦域乘法;和将作为相乘结果获得的状态设置为黄金分割类型的新状态。
本发明还涉及无线电系统中的一种代码生成器,此代码生成器包括以下装置用于生成表示从伽罗瓦类型线性反馈移位寄存器的单位状态至目标状态的公知偏移的二进制偏移数量的装置;用于生成表示此二进制偏移数量中的比特数量的计数值的装置;用于利用单位状态初始化临时状态的装置;用于只要此计数值大于0就重复后续装置的操作的装置用于采用伽罗瓦域乘法来平方临时状态的装置;用于在利用此计数值表示的二进制偏移数量比特的值为1时将临时状态从当前临时状态向前移位一个状态的装置;和用于将此计数值递减1的装置;和用于最后在此计数值达到值0时将此临时状态设置为目标状态的装置。
本发明也涉及无线电系统中的一种代码生成器,此代码生成器包括以下装置用于生成表示从代码生成器的伽罗瓦类型线性反馈移位寄存器的已知当前状态至新状态的已知偏移的二进制偏移数量的装置;用于生成表示此二进制偏移数量中的比特数量的计数值的装置;用于利用单位状态初始化临时状态的装置;用于只要此计数值大于0就重复后续装置的操作的装置用于采用伽罗瓦域乘法来平方临时状态的装置;用于在利用此计数值表示的二进制偏移数量比特的值为1时将此临时状态从当前临时状态向前移位一个状态的装置;和用于将此计数值递减1的装置;用于采用伽罗瓦域乘法来将此临时状态与当前状态相乘并用于在此计数值达到值0时将作为乘法结果获得的状态设置为新状态的装置。
本发明仍涉及无线电系统中的一种代码生成器,此代码生成器包括以下装置用于生成表示从黄金分割类型线性反馈移位寄存器的已知当前状态至新状态的已知偏移的二进制偏移数量的装置;用于生成表示此二进制偏移数量中的比特数量的计数值的装置;用于利用单位状态初始化伽罗瓦类型临时状态的装置;用于只要此计数值大于0就重复后续装置的操作的装置用于采用伽罗瓦域乘法来平方此临时状态的装置;用于在利用此计数值表示的二进制偏移数量比特的值为1时将此临时状态从当前临时状态向前移位一个状态的装置;和用于将此计数值递减1的装置;用于采用伽罗瓦域乘法将伽罗瓦类型临时状态与黄金分割类型当前状态相乘并用于在此计数值达到值0时将作为乘法结果获得的状态设置为黄金分割类型的新状态的装置。
从属权利要求涉及本发明的最佳实施例。
本发明基于采用伽罗瓦域数学特性来提供反馈移位寄存器处理的有效计算,并考虑不同类型的反馈移位寄存器之间的连接。
下面将结合优选实施例并参考附图更具体地描述本发明,其中

图1A与1B表示移动电话系统的示例;图2A表示移动电话系统中的发射机与接收机结构的示例;图2B表示发射机与接收机上扩展码的处理;图2C表示简单的伽罗瓦类型线性反馈移位寄存器的示例;图2D表示简单的黄金分割类型线性反馈移位寄存器的示例;
图3A是表示用于将代码生成器的线性反馈移位寄存器从单位状态更新为目标状态的方法流程图;图3B是表示用于将代码生成器的线性反馈移位寄存器从当前状态更新为新状态的方法流程图;图3C是表示伽罗瓦域乘法的示例流程图;图3D是表示黄金分割类型状态与伽罗瓦类型状态之间伽罗瓦域乘法的流程图;图4A表示图2C的反馈移位寄存器可能的状态;图4B表示实施图3A的方法的示例;图4C表示通过采用图3C中描述的伽罗瓦类型乘法来实施图3B的方法的示例;图4D表示图2C的伽罗瓦类型线性反馈移位寄存器与图2D的黄金分割类型线性反馈移位寄存器的状态;图4E表示黄金分割类型与伽罗瓦类型的状态之间伽罗瓦类型乘法的示例。
本发明能用于诸如采用码分多址(CDMA)的使用线性反馈移位寄存器生成不同类型的代码的移动电话系统中。在下面的示例中,本发明用于通用移动电话系统(UMTS)中,但本发明不限于此。
参见图1A与1B,将描述通用移动电话系统结构。图1B只包括对于本发明的描述是重要的方框,但对于本领域技术人员来说公用移动电话系统也包括其它的功能与结构是显而易见的,这无需在此更具体地进行讨论。移动电话系统的主要部分是核心网络CN、UMTS地面无线电接入网络UTRAN和用户设备UE。CN与UTRAN之间的接口称为Iu接口,而UTRAN与UE之间的接口称为Uu接口。
UTRAN由无线电网络子系统RNS组成。RNS之间的接口称为Iur接口。RNS由无线电网络控制器RNC和一个或多个节点B构成。RNC与节点B之间的接口称为Iub接口,接点B的接收区域(即网孔)在图1B中利用C来表示。
由于图1A中的表示非常抽象,所以通过在图1B中示出与UMTS部分相对应的GSM系统的部分来阐述本发明。由于仍然规划UMTS的不同部分的责任和功能,所以显然示出的映射一点也不是约束而是近似值。
图1B表示通过互联网(Internet)102从与移动电话系统连接的计算机100至与用户设备UE连接的便携式计算机122的分组交换传输。例如,用户设备UE可以是固定安装的终端、车辆安装的终端或手持便携式终端。此无线电网络UTRAN的基础结构由无线电网络子系统RNS(即基站子系统)构成。无线电网络子系统RNS由无线电网络控制器RNC(即基站控制器)和RNC控制之下的至少一个节点B(即基站)组成。
节点B包括多路复用器114、收发信机116和控制收发信机116与多路复用器114的操作的控制单元118。多路复用器114在传输连接Iub上安排多个收发信机116使用的业务与控制信道。
节点B的收发信机116具有至天线装置120的连接,用于提供双向无线电连接Uu给用户设备UE。具体确定在双向无线电连接Uu上发送的帧的结构。
无线电网络控制器RNC包括群交换域110和控制单元112。群交换域110用于交换语音与数据并用于连接信令电路。节点B和无线电网络控制器RNC形成基站子系统,此基站子系统还包括代码转换器108。无线电网络控制器RNC和节点B的功能与物理结构的划分可以根据实际的实施而不同。典型地,节点B如上所述实施无线电路径。无线电网络控制器RNC一般管理以下方面无线电资源管理、网孔间切换控制、功率控制、定时与同步和用户设备的寻呼。
代码转换器108通常尽可能靠近移动交换中心106定位,这是因为这允许以蜂窝无线电网络形式在代码转换器108与无线电网络控制器RNC之间发送语音,这节省传输容量。代码转换器108转换在公用交换电话网与蜂窝无线电网络之间使用的不同的数字语音编码模式,以便之兼容,例如,从64kb/s固定的网络形成转换为另一种形式的蜂窝无线电网络(诸如13kb/s),并且反之亦然。在此上下文中不更具体地描述所需的设备,但可以表明除语音之外的其他数据不在代码转换器122中进行转换。控制单元112完成呼叫控制、移动性管理、统计数据的收集和信令。
核心网络CN由属于移动电话系统但不是UTRAN一部分的基础结构组成。图1B表示属于核心网络CN的两个设备,即移动站交换中心106与网关移动交换中心104,此移动交换中心104处理朝向外部世界的移动电话系统接口,在此示例中处理朝向互联网102的接口。
用户设备可以例如是便携式移动电话机、车辆安装的电话机、无线本地环路终端或计算机综合数据传输设备。
图2A表示无线电发射机/无线电接收机对的功能。此无线电发射机可以位于节点B或用户设备UE中。相应地,无线电接收机可以位于用户设备UE或节点B中。
图2A的上半部分表示此无线电发射机的基本功能。设置在物理信道上的不同业务包括语音、数据、运动或静止视频图像和系统的控制信道。此图表示控制信道和数据的处理。不同的业务呼叫不同的源编码设备语音例如呼叫话音编解码器。然而,为简明起见,源编码设备未在图2A中示出。
在控制信道214中也设置接收机用于信道估算的导频比特。在数据信道中设置用户数据200。
不同的信道随后在方框202A与202B中进行不同的信道编码。信道编码包括不同的块码,诸如循环冗余校验码CRC。另外,一般使用卷积编码及其不同的变化,诸如穿孔卷积编码(puncturedconvolution coding)或涡轮(turbo)编码。然而,导频比特不进行信道编码,这是因为目的是找出信道在信号中引起的失真。
在信道编码不同的信道之后,在交错器204A、204B中交错这些信道。交错的目的在于纠错。在交错中,不同业务的比特以预定的方式相互进行混合,于是无线电路径上的瞬时衰落不一定使传送的信息不可识别。交错的比特随后在方框206A、206B中利用扩展码进行扩展。所获得的片然后在方框208中利用加扰码进行加扰和调制,在方框208中如此组合分离信号以便利用同一个发射机发送。此组合能例如是时分多路复用或IQ(同相/正交)多路复用。
最后,组合的信号传送给可以包括不同的功率放大器与限制带宽的滤波器的射频部分210。发送功率控制中使用的闭环控制通常控制位于此方框中的发送功率控制放大器。模拟无线电信号随后通过天线212发送给无线电路径Uu。
图2A的下半部分表示无线电接收机的基本功能,此无线电接收机一般是RAKE接收机。在无线电路径Uu上通过天线232接收模拟射频信号。将此信号传送给包括阻塞在所需频带之外的频率的滤波器的射频部分230。
此信号随后在方框228中转换为中频或直接转换为基带,以基带形式抽样与量化此信号。由于所涉及的信号是多径传播的信号,所以目的是在根据现有技术包括接收机实际的RAKE指针(finger)的方框228中组合已通过不同的路径传播的信号成分。在方框228中进行的操作因而包括不同信道的多路分解、加扰码的解码、解扩和解调。
所获得的信道随后在去交错装置226A、226B中进行去交错,将这些信道均传送到特定的信道解码方框222A、222B,在这些解码方框中解码发送时使用的信道编码,诸如块编码或卷积编码。卷积编码最好利用维持比解码器进行解码。每个发送的信道236、220随后能进行必需的其他处理,例如将数据220传送给与用户设备UE相连的计算机122。此系统的控制信道传送给无线电接收机的控制部分236。
图2B更详细地表示利用扩展码的信道扩展和信道调制,略去对于图2A所示的扩展不重要的测量。在此图中信道比特流250A从左边进入乘法器254,在此乘法器254中通过将此比特流250A与扩展码252A相乘来实现扩展。所获得的扩展信道在乘法器258A中相乘以便通过载波256A传输。结果,在接收端接收的信号在乘法器256B中与载波256B相乘。通过将接收的解调信号与乘法器254B中使用的扩展码252B相乘来实现解扩。结果获得接收比特250B,这些比特随后如图2A所示进行去交错与解码。
根据现有技术,通过将扩展码存储在存储器中或通过将对应于每个移位或至少与2的幂相对应的每个移位的变换矩阵存储在存储器中来实施扩展码生成器260A、260B,此变换矩阵表示必须如何改变每个初始状态元素来获得新状态的元素。根据控制数据262A、262B,诸如扩展码的序号或扩展码的码分类,从存储器中提取所需的短扩展码252A、252B,或者线性反馈移位寄存器用于从特定的相位往前生成所需的长扩展码。
在本发明中根据控制数据254A、254B生成所需的扩展码。控制数据254A、254B提供线性反馈移位寄存器的初始状态元素的值和所需的目标状态至初始状态的偏移值。
图2C表示一个简单的伽罗瓦类型线性反馈移位寄存器,但显然这些原理也应用于例如包括31或41个元素的更长的反馈移位寄存器。图2C中的线性反馈移位寄存器包括5个元素272、274、276、278、280。这些元素也称为“级(stage)”。这些元素全部以这样一种方式互相连接即第一元素272的输出与第二元素274的输入相连;第二元素274的输出连到加法器284(下文将作说明);加法器284的输出连到第三元素276的输入;第三元素276的输出连到第四元素278的输入;并且第四元素278的输出与第五元素280的输入相连。所述线性反馈移位寄存器的输出290实际上是第一元素272的输出290。第五元素280具有至加法器284的反馈耦合286;第五元素280也具有至第一元素272的反馈耦合288。在加法器284中执行XOR(异或)运算,这表示“逻辑异或”运算。XOR运算的真值表如下
通过对反馈耦合286和第二元素274的输出进行XOR运算而在加法器284中获得的结果作为第三元素276的输入进行连接。
图2C所示的反馈移位寄存器生成长度为25-1=31的m序列。所述反馈移位寄存器内容的多项式格式如下a4x4+a3x3+a2x2+a1x+a01,反馈移位寄存器的生成多项式为x5+x2+1。图4A表示图2C的反馈移位寄存器在每个不同的31个相位或状态中的内容。在时刻0,反馈移位寄存器包含伽罗瓦域乘法的中性元素、即单位状态,其值为00001。反馈移位寄存器的元素在图4A中以这样一种方式进行编号,以使第一元素是号码0,第二元素是号码1,第三元素是号码2,第四元素是号码3,并且第五元素是号码4。
在时刻1,根据结合图2C所述的连接规则,生成状态00010。从一个时刻进行到下一个时刻,此反馈移位寄存器经历它包含的所有31个状态。在时刻31,反馈移位寄存器又接收与时刻0上相同的状态,并且循环再次开始。所述的反馈移位寄存器能用于例如生成长扩展码。例如1分支的241-1的金色码能利用其生成多项式为x41+x3+1与x41+x20+1并在其输出之间也执行XOR运算以获得码片的41个元素的二个反馈移位寄存器来生成。
图3A表示用于将代码生成器的线性反馈移位寄存器更新为已知偏移单位状态的目标状态的本发明方法。让我们同时检查表示此方法实施的图4A与4B。
此方法的实施开始于其中获得已知偏移的初始方框300。图4A右边的第二列表示在离开单位状态UNIT STATE的已知偏移OFFSET上的是一个未知的目标状态TARGET STATE。已知偏移OFFSET的值为21。
在方框302中,生成表示此偏移(即图4B中所示的OFFSET)的二进制偏移数量,其值为10101。
在方框304中,生成表示此二进制偏移数量中的比特数量的计数值,在图4B所示的示例中此计数值接收值5。
在方框306中,利用单位状态初始化临时状态,即临时状态的值设置为00001。
接下来,只要此计数值大于0,就在方框308中重复方框310、312、314的操作,换而言之,在方框308中测试此计数值是否大于0。当此计数值达到值0时,此程序前进到方框316,否则前进到方框310。
在方框308中通过利用下面更详细描述的伽罗瓦域乘法来平方此临时状态。因为已利用单位状态初始化此临时状态,在第一循环中此单位状态提高到2的幂,并由于涉及伽罗瓦域乘法的中间元素,所以其值不变。换而言之,结果仍然是具有序号0的单位状态。图4B中表的第二行表示此。
在方框310中,如果此计数值表示的二进制偏移数量比特的值为1,则将此临时状态从当前临时状态向前移位一个状态。此计数值为5,即在二进制偏移数量OFFSET中它表示右边的第五比特,或数字10101中最左边比特1。根据图4B中表的第三行,进行移位SHIFT,将临时状态移位到状态00010。
在方框312中将此计数值递减1,从而得到计数值4。
在第二次重复中,将具有内容00010的临时状态在方框310中进行平方,即SQUARE,从而产生第四行所示的状态00100。此计数值为4,即表示二进制偏移数量OFFSET中右边第四比特,即数字10101中的比特0。根据图4B中表的第四行,在方框312中不进行移位,即NO SHIFT。在方框312中将此计数值递减1,如此获得的计数值为3。
在第三次重复中,再次利用伽罗瓦域乘法将此临时状态平方。伽罗瓦域乘法SQUARE因而从第四行上的临时状态00100中产生第六行上新的临时状态10000。此计数值表示二进制偏移数量10101中具有值1的第三比特,第六行上的临时状态因而向前移位一个状态SHIFT,即移位到第七行上的状态00101。此计数值接收值2。
在第四次重复中,又利用伽罗瓦域乘法将此临时状态平方。利用伽罗瓦域乘法SQUARE相乘的第七行上的临时状态00101因而产生第八行上所示的新的临时状态10001。此计数值表示二进制偏移数量10101中具有值0的第二比特,并且根据此表的第九行,不移位临时状态,即NO SHIFT。此计数值接收值1。
在第五次重复中,再次利用伽罗瓦域乘法将此临时状态平方。利用伽罗瓦域乘法SQUARE相乘的第八行上的临时状态因而产生第十行上新的临时状态01100。此计数值表示二进制偏移数量10101中具有值1的第一比特,第十行上的临时状态因此向前移位一个状态SHIFT,即移位到第十一行上的状态11000。此计数值接收值0。
由于此计数值已达到值0,所以不再继续重复。因此通过将此临时状态设置为目标状态在方框316中结束此处理。换而言之,目标状态是图4B的表的第十一行上所示的临时状态11000。
结合图3A,描述允许从单位状态中产生位于已知距离上的目标状态的反馈移位寄存器的状态的方法。图3B所示的方法将图3A所示的方法用于将代码生成器的线性反馈移位寄存器更新为已知偏移已知当前状态的新的状态。图4A表中最右边的一列表示概念“单位状态”、“当前状态”和“新状态”之间的关系。单位状态UNIT STATE的意思与图3A的方法中的相同。术语当前状态CURRENT STATE表示反馈移位寄存器所在的已知状态。术语新状态NEW STATE指已知偏移OFFSET当前状态的未知状态。
已知在两个状态及其序号在伽罗瓦域中是已知的时候,通过利用伽罗瓦域乘法相乘这些状态得到符合序号总和的状态。在本发明中以下述方式根据单位状态检查这些状态是重要的。
根据图4A中最右一列所示的示例,当前状态CURRENT STATE的序号是9。已知偏移OFFSET的长度是18。如图4A中虚线所表示的箭头所示,能在单位状态与未知状态TEMP STATE之间移位当前状态与新状态之间的已知偏移OFFSET。未知状态TEMP STATE现在已知偏移OFFSET单位状态,即此示例的未知状态TEMP STATE具有序号18。当前状态CURRENT STATE的序号和未知状态TEMP STATE的序号之和为9+18=27。结果,在需要知道反馈移位寄存器的状态27中元素的值时,必须在状态9与18之间执行伽罗瓦域乘法。
如图3B所示,此方法因而在方框350中首先产生当前状态CURRENT STATE和从当前状态CURRENT STATE至迄今为止未知的新状态NEW STATE的已知偏移OFFSET。
图3B中的方框352、354、356、358、360、362、364与图3A中的方框302、304、306、308、310、312、314相同,因此在此不再进行描述。所述方框用于生成已知偏移OFFSET单位状态UNIT STATE的上述未知状态TEMP STATE。当此程序从方框364前进至方框366时,此临时状态接收图4A所述的值TEMP STATE。
在方框366中,在此计数值获得值0之后,采用伽罗瓦域乘法来相乘此临时状态TEMP STATE与当前状态CURRENT STATE,即在示例中临时状态TEMP STATE是18,而当前状态CURRENT STATE是9。在方框368中将作为相乘结果获得的状态设置为新状态NEW STATE,即此示例中的状态27。
图3C表示执行伽罗瓦域乘法的一种方式。图4C表示如何执行在方框366中完成的图3B的方法的操作,即两个已知的状态之间的伽罗瓦域乘法。第一状态是状态18,而第二状态为状态9。
如下完成第一状态与第二状态之间的伽罗瓦域乘法。在方框380中获得第一状态和第二状态。在方框382中,如果对应于第一状态中最低有效位的元素的值为1,则此程序前进到方框384,将第二状态设置在结果状态中,否则此程序前进到将零设置在结果状态中的方框386。在图4C中,第一状态是具有元素值为00011的反馈移位寄存器的第18状态THE 18TH STATE。最低有效位是最右边的比特,即与第18状态THE 18TH STATE中最低有效位相对应的元素的值为1,并且此程序前进到方框384,将第9状态设置在结果状态中,即具有值11010表的第一行。
方框392用于从与最低有效位相对应的元素之后的那个元素开始又对每一个第一状态元素重复方框388与390的操作。这表示在图4C所示的示例中执行方框388、390的操作四次。
在方框388中,将反馈移位寄存器从第二状态向前移位一个状态,即移位到图4C所示的示例中表的第二行上具有值10001的状态10。
在方框390中,如果要进行处理的第一状态元素的值为1,采用伽罗瓦域乘法来相乘结果状态与第二状态。作为相乘结果获得的状态设置在结果状态中。在图4C的示例中,第一状态中右边第二元素的值为1。如所陈述的,在这种情况中执行输出状态与第二状态的伽罗瓦域求和。伽罗瓦域求和利用XOR运算来完成。在具有值11010的结果状态与具有值10001的第二状态之间执行的XOR运算提供设置为结果状态的状态01011。
如图4C所示又重复步骤390与392三次,但由于右边第三、四与五元素都具有0值而不影响结果状态的值。结果,结果状态最后的值为01011,这能从表示第27状态的反馈移位寄存器的值实际为01011的图4A中进行检验。
利用图2C所述的伽罗瓦类型线性反馈移位寄存器生成的m序列也能利用图2D所示的黄金分割类型线性反馈寄存器来生成。图2D中使用的标号与图2C中的意思相同,所以在此上下文中不再进行重复。然而注意元素之间的连接是不同的第五元素280的输出连到第四元素278的输入,第四元素278的输出与第三元素276的输入相连,第三元素276的输出与第二元素274的输入相连,而第二元素274的输出与第一元素272的输入相连。反馈耦合也不同具有从第一元素272至加法器284的反馈耦合294,也具有从第三元素至加法器284的反馈耦合294,并且具有从加法器284的输出至第五元素280的反馈耦合296。
生成多项式X5+X2+1所表示的伽罗瓦类型与黄金分割类型的线性反馈移位寄存器是等效的。等效表示如果初始状态的序号相同,反馈移位寄存器的输出290提供与结果相同的m序列。状态的序号表示为了将单位状态作为初始状态(即此示例中的状态00001)提供与所述状态相同的反馈移位寄存器内容而必须重复反馈移位寄存器多少次。
也能以这样一种方式完成伽罗瓦域乘法,以使将进行相乘的状态之一为黄金分割类型状态,而另一个状态是伽罗瓦类型状态,所获得的结果是黄金分割类型状态。换句话说,具体地将状态的序号相加,结果状态的序号是将要相乘的状态的序号之和。图3B所示的将代码生成器的伽罗瓦类型线性反馈移位寄存器更新为已知偏移已知当前状态的新状态的方法因而能变换为用于将代码生成器的黄金分割类型线性反馈移位寄存器更新为已知偏移已知当前状态的新状态的方法。本发明提供优点在于通过处理伽罗瓦类型反馈移位寄存器,也有可能更新黄金分割类型反馈移位寄存器。
图4D表示图2C的伽罗瓦类型线性反馈移位寄存器的状态和图2D的黄金分割类型线性反馈移位寄存器的状态。此实施例的一个基本特性是在两个反馈移位寄存器中,具有序号1的状态必须是伽罗瓦域乘法中的中间元素,即单位状态。
虽然伽罗瓦类型与黄金分割类型的反馈移位寄存器以不同的顺序处理伽罗瓦域元素,即在黄金分割类型中,与序号10相对应的状态为10011,而在伽罗瓦类型中,此状态为10001,此过程然而是合理的,这是因为在这两种类型中状态的最右边的元素(即反馈移位寄存器的输出)是相同的,即1。
图3B所示的方法用于以获得黄金分割类型的已知当前状态和已知偏移此当前状态的新状态的这样的方式处理黄金分割类型反馈移位寄存器。在这种情况中完全与图3B相同地完成此方法,即完成方框352、354、356、358、360、362和364。应注意所采用的临时状态表示伽罗瓦类型。最后,当此计数值达到值0时,在方框366中在伽罗瓦类型临时状态与黄金分割类型当前状态之间执行伽罗瓦域乘法,并在方框368中将作为相乘结果获得的状态设置为黄金分割类型的新状态。
如图3D所示执行伽罗瓦类型状态与黄金分割类型状态之间的伽罗瓦域乘法,图4E中的示例表示此乘法,在图4E的示例中给出的表中的序号表示此伽罗瓦类型状态是第18伽罗瓦类型状态并具有值00011,而黄金分割类型状态是第19伽罗瓦类型状态并具有值00110。
在方框332中,采用伽罗瓦类型状态来初始化临时状态、即在此示例中值00011设置在临时状态中。
在方框334中,在此临时状态与黄金分割类型状态之间执行AND(与)运算;在作为AND运算的结果接收的所有比特之间执行XOR运算;并将作为XOR运算的结果获得的比特作为最右边仍未计算的元素设置在结果状态之中。AND运算指具有下列真值表的“逻辑与”运算
在此示例中,因而在图4E中表的第一行的黄金分割状态与第二行的临时状态之间执行AND运算,此运算的结果是此表的第三行上所示的状态00010。在作为AND运算的结果获得的状态中的所有比特之间执行上述的XOR运算,此运算的结果是作为最右边仍未计算的元素设置在结果状态中的具有值1的一个比特。由于此结果状态还未包含任何已计算的比特,所以利用XOR运算获得的比特作为右边第一个比特设置在结果状态中。
在方框336中进行测试如果已计算所有的结果状态元素,则此程序前进到结束相乘处理的方框340,否则此程序前进到方框338,在方框338中将此临时状态向前移位一个状态并从第二处理步骤(即从方框334)开始继续相乘。
在此示例中,只计算了第一结果状态,所以此程序前进到方框338,在此方框中将此临时状态向前移位一个状态,即具有序号18的伽罗瓦类型状态移位到具有序号19的伽罗瓦类型状态。然后执行方框334的运算,并作为结果得到结果状态中右边的第二比特。随后重复方框336、338与334的操作,直至已计算结果状态中的所有比特,即在此示例中直至已计算结果状态的5个比特。此程序而后前进到结束乘法处理的方框340。如此获得的结果是具有序号27和值10101的黄金分割类型状态。这仍能从图4D的表中进行检验并确认为正确的。
此示例表示本发明的软件实施。扩展码生成器也能实施为ASIC(应用特定集成电路)。对于本领域技术人员来说显然上述的重复解决方法或展开方法能用于ASIC实施中。此实施也能利用独立的元件实施为常规的HW实施。只基于软件实施也是有可能的;在这种情况中,要求充分有效的处理器来在所涉及的片期间在需要时允许计算所述扩展码中的片值。图2B表示在软件实施中使用的部分。原则上,代码生成器260A则包括软件264、用于运行软件的处理器266和用于存储必要数据的存储器268。部分264、266、268用于实施用于生成表示从伽罗瓦类型线性反馈移位寄存器的单位状态至目标状态的已知偏移的二进制偏移数量的示例3A的方法中所需的装置;用于生成表示此二进制偏移数量中的比特数量的计数值的装置;用于利用单位状态初始化临时状态的装置;用于只要此计数值大于0就重复后续装置的操作的装置用于采用伽罗瓦域乘法来平方临时状态的装置;用于在利用此计数值表示的二进制偏移数量比特的值为1时将此临时状态从当前临时状态向前移位一个状态的装置;并用于将此计数值递减1的装置;用于最后在此计数值达到值0时将此临时状态设置为目标状态的装置。相应地实施根据示例3B的装置和根据示例3C的用于执行伽罗瓦域乘法的装置以及另外地用于处理黄金分割类型线性反馈移位寄存器的装置。
虽然上文根据附图结合示例描述本发明,但显然本发明并不局限于此,而可以在权利要求书中公开的发明思想之中以许多方式进行变化。
权利要求
1.用于将代码生成器的伽罗瓦类型线性反馈移位寄存器更新为已知偏移单位状态的目标状态的一种方法,其特征在于(302)生成表示此偏移的二进制偏移数量;(304)生成表示二进制偏移数量中的比特数量的计数值;(306)利用单位状态初始化临时状态;(308)只要此计数值大于0,就重复(310)采用伽罗瓦域乘法来平方此临时状态;(312)如果此计数值表示的二进制偏移数量比特的值为1,将此临时状态从当前临时状态向前移位一个状态;和(314)将此计数值递减1;(316)最后,当此计数值达到0时,将此临时状态设置为目标状态。
2.用于将代码生成器的伽罗瓦类型线性反馈移位寄存器更新为已知偏移已知的当前状态的新状态的一种方法,其特征在于(352)生成表示此偏移的二进制偏移数量;(354)生成表示此二进制偏移数量中的比特数量的计数值;(356)利用单位状态初始化临时状态;(358)只要此计数值大于0,就重复(360)采用伽罗瓦域乘法来平方此临时状态;(362)如果此计数值表示的二进制偏移数量比特的值为1,则将此临时状态从当前状态向前移位一个状态;和(364)将此计数值递减1;(366)最后,当此计数值达到0时,在临时状态与当前状态之间执行伽罗瓦域乘法;和(368)将作为乘法结果获得的状态设置为新状态。
3.用于将代码生成器的黄金分割类型线性反馈移位寄存器更新为已知偏移已知的当前状态的新状态的一种方法,其特征在于(352)生成表示此偏移的二进制数量;(354)生成表示此二进制偏移数量中的比特数量的计数值;(356)利用单位状态初始化伽罗瓦类型临时状态;(358)只要此计数值大于0,就重复(360)采用伽罗瓦域乘法来平方此临时状态;(362)如果此计数值表示的二进制偏移数量比特的值为1,则将此临时状态从当前的临时状态向前移位一个状态;和(364)将此计数值递减1;(366)最后,当此计数值达到0时,在伽罗瓦类型临时状态与黄金分割类型当前状态之间执行伽罗瓦类型乘法;和(368)将作为乘法结果获得的状态设置为黄金分割类型的新状态。
4.根据权利要求1或2的方法,其特征在于如下在第一状态与第二状态之间执行伽罗瓦域乘法(382)如果与第一状态中的最低有效位相对应的元素的值为1,(384)将第二状态设置在结果状态中,(386)否则将0设置在结果状态中;(392)从与最低有效位相对应的元素之后的元素开始,依次对每一个第一状态元素进行重复(388)将第二状态的反馈移位寄存器向前移位一个状态;和(390)如果将要进行处理的第一状态元素的值为1,则在结果状态与第二状态之间执行伽罗瓦域求和,并将作为求和结果获得的状态设置为结果状态。
5.根据权利要求4的方法,其特征在于通过应用XOR运算执行伽罗瓦域求和。
6.根据权利要求3的方法,其特征在于;如下在伽罗瓦类型状态与黄金分割类型状态之间执行伽罗瓦域乘法(332)利用伽罗瓦类型状态初始化临时状态;(334)在临时状态与黄金分割状态之间执行AND运算,并在作为AND运算结果获得的所有比特之间执行XOR运算,而且将作为XOR运算结果获得的比特作为最右边的还没有计算的元素设置在结果状态中;(336)如果已计算结果状态中的所有元素,(340)完成乘法处理,否则(338)将临时状态移位为下一个伽罗瓦类型状态并从第二处理步骤(334)开始继续乘法。
7.根据权利要求1、2或3之一的方法,其特征在于利用线性反馈移位寄存器生成的代码是采用码分多址的无线电系统的代码。
8.无线电系统中的一种代码生成器,其特征在于,它包括用于生成表示从代码生成器的伽罗瓦类型线性反馈移位寄存器的单位状态至目标状态的已知偏移的二进制偏移数量的装置(264、266、268);用于生成表示二进制偏移数量中的比特数量的计数值的装置(264、266、268);用于利用单位状态初始化临时状态的装置(264、266、268)用于只要此计数值大于0就重复后续装置的操作的装置(264、266、268);用于采用伽罗瓦域乘法来平方此临时状态的装置(264、266、268);用于在利用此计数值表示的二进制偏移数量比特的值为1时将此临时状态从当前临时状态向前移位一个状态的装置(264、266、268);和用于将此计数值递减1的装置(264、266、268);用于最后在此计数值达到0时将此临时状态设置为目标状态的装置(264、266、268)。
9.无线电系统中的一种代码生成器,其特征在于,它包括用于生成表示从伽罗瓦类型线性反馈移位寄存器的已知当前状态至新状态的已知偏移的二进制偏移数量的装置(264、266、268);用于生成表示此二进制偏移数量中的比特数量的计数值的装置(264、266、268);用于利用单位状态初始化临时状态的装置(264、266、268);用于只要此计数值大于0就重复后续装置的操作的装置(264、266、268);用于采用伽罗瓦域乘法来平方此临时状态的装置(264、266、268);用于在此计数值表示的二进制偏移数量比特的值为1时将此临时状态从当前状态向前移位一个状态的装置(264、266、268);和用于将此计数值递减1的装置(264、266、268);用于通过采用伽罗瓦域乘法将临时状态与当前状态相乘并用于在此计数值达到0时将作为乘法结果获得的状态设置为新状态的装置(264、266、268)。
10.无线电系统中的一种代码生成器,其特征在于,它包括用于生成表示从黄金分割类型线性反馈移位寄存器的已知当前状态至新状态的已知偏移的二进制偏移数量的装置(264、266、268);用于生成表示此二进制偏移数量中的比特数量的计数值的装置(264、266、268);用于利用单位状态初始化伽罗瓦类型临时状态的装置(264、266、268);用于只要此计数值大于0就重复后续装置的操作的装置(264、266、268);用于采用伽罗瓦域乘法来平方此临时状态的装置(264、266、268);用于在此计数值表示的二进制偏移数量比特的值为1时将此临时状态从当前临时状态向前移位一个状态的装置(264、266、268);和用于将此计数值递减1的装置(264、266、268);用于通过采用伽罗瓦域乘法将伽罗瓦类型临时状态与黄金分割类型当前状态相乘并在此计数值达到0时将作为乘法结果获得的状态设置为黄金分割类型的新状态的装置(264、266、268)。
11.根据权利要求8或9的代码生成器,其特征在于,用于在第一与第二状态之间执行伽罗瓦域乘法的装置(264、266、268)包括用于在与第一状态中的最低有效位相对应的元素的值为1时将第二状态设置在结果状态中并否则将0设置在结果状态中的装置(264、266、268);用于从与最低有效位相对应的元素之后的元素开始对每一个第一状态元素重复后续装置的操作的装置(264、266、268);用于将反馈移位寄存器的第二状态向前移位一个状态的装置(264、266、268);和用于在要进行处理的第一状态元素的值为1时在结果状态与第二状态之间执行伽罗瓦域求和并将作为求和结果获得的状态设置为结果状态的装置(264、266、268)。
12.根据权利要求11的代码生成器,其特征在于,用于执行伽罗瓦域求和的装置(264、266、268)使用XOR运算。
13.根据权利要求10的代码生成器,其特征在于,用于在伽罗瓦类型状态与黄金分割类型状态之间执行伽罗瓦域乘法的装置(264、266、268)包括用于利用伽罗瓦类型状态初始化临时状态的装置(264、266、268);计算装置(264、266、268),用于在临时状态与黄金分割类型状态之间执行AND运算和在作为AND运算的结果获得的所有比特之间执行XOR运算,并将作为XOR运算的结果获得的比特作为最右边的还未进行计算的元素设置在结果状态中;用于在已计算所有的结果状态元素时执行乘法处理的装置(264、266、268);用于在还未计算所有的结果状态元素时将临时状态移位到下一个伽罗瓦类型状态并利用计算装置(264、266、268)继续乘法处理的装置(264、266、268)。
14.根据权利要求8、9或10之一的代码生成器,其特征在于,此无线电系统是采用码分多址的无线电系统。
全文摘要
更新代码生成器的线性反馈移位寄存器的三种不同方法和采用这些方法的代码生成器。其基本方法包括步骤:生成表示偏移的二进制偏移数量;生成表示此二进制偏移数量中的比特数的计数值;利用单位状态初始化临时状态;只要此计数值大于0就重复;采用伽罗瓦域乘法平方此临时状态;如果利用此计数值表示的比特值为1,将此临时状态从当前临时状态向前移一个状态;和将此计数值递减1;在此计数值达到0时将此临时状态设置为目标状态。
文档编号H04B1/707GK1273460SQ00108198
公开日2000年11月15日 申请日期2000年5月10日 优先权日1999年5月10日
发明者E·尼米南 申请人:诺基亚流动电话有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1