专利名称:编码线性分组码的方法和设备的制作方法
背景技术:
使用纠错码的纠错改进了通信系统和设备的可靠性。在现有编码方法中,通信发射端的编码器编码输入字(如给定长度的块或矢量)以生成纠错码码字。通信接收端的解码器解码接收字(块),生成表示始发输入字的码字估算。长度为n的线性分组码C由零空间是分组码C的奇偶校验矩阵Hm×n描述。或者,分组码C可以用生成器矩阵Gk×m描述,其中,k+n=n,该矩阵的行张成码C的所有码字。编码过程期间,信息序列v=(v1,…,vk)得到编码以生成相应码字x=(x1,…,xn),其中,k个元素表示输入字(块),例如,(x1,…,xk)=(v1,…,vk),而其余m个元素可表示一新块,例如,(xk+1,…,xn)=(p1,…,pm)。这样的编码通常通过将生成器矩阵G应用到字v来生成x而完成。该编码方法通常要求按O(n2)的阶进行许多数值运算,这对大块长(如n≥10000)复杂得难以接受。
业内知道,有稀疏奇偶校验矩阵的分组码称为低密度奇偶校验(LDPC)码。这样的分组码提供优秀解码性能。对LDPC码,Richardson和Urbanke在其所著的Efficient encoding of low-density parity-check codes(收于2001年2月出版的IEEE Transactions on information theory第47卷第2期第638至第656页)一文中提出一种编码器(RU编码器)。然而,该编码器编码某些类别的LDPC码不是有效的。例如,如果矩阵H的列中一小部分(例如百分之一)或没有列含有正好两个非零项,则RU编码器对LDPC码的类别(如总集)是没有用的。这样的总集此处称λ2≅0]]>类或LDPC码总集。
业界所知的还有编码其它类别的LDPC码(如基于有限几何的码)的专门解决方案。然而,这些其它类别在大多数情况下意义较小,例如,因为它们不提供LDPC码通常使能的码设计灵活性。
因此,需要一种低计算复杂性(如级O(n)的)的适用于编码宽范围LDPC码的编码方法。
附图简述本发明的主题在本说明的结论部分尤其得到指出和明显地构成权利要求。然而,参考附图读下面的详述可最好地理解本发明的操作的组织和方法及其目标、特点和优点,其中
图1是根据本发明的示例实施例包括至少一通信设备的通信系统的示意框图;图2是根据本发明的示例实施例说明编码器的示意框图;及图3是根据本发明的示例实施例的一种编码线性分组码的方法的示意框图。
可以理解的是,为说明的简便和明晰,图中所示元件不一定按比例绘出。例如,一些元件的尺寸为明晰相对其它元件作了夸张。另外,如果认为合适,图中重复参考号以表示相应或类似元件。
发明详述在下列详述中,给出许多专门细节以提供对本发明的全面理解。然而,业内人士可以理解的是,可以不用这些专门细节而实践本发明。在其它实例中,未详述众所周知的方法、程序、组件和电路以免模糊本发明。
以下详述的一些部分是对计算机存储器中数据比特或二进制数字信号操作的算法和符号表示的形式给出。这些算法描述和表示可以是数据处理业界用来向业内其它人士传达工作内容的技术。
除非另有专门说明,从下列描述中明显的是,同时可以理解的是,贯穿整个说明,使用诸如处理、计算、确定之类术语的讨论指操纵和/或将计算系统的寄存器和/或存储器中的示为物理的(诸如电的)量的数据转换为类似地示为计算系统存储器、寄存器或其它这样的信息存储、传输或显示设备中的物理量的其它数据的计算机或计算系统或类似电子计算设备的动作和/或处理。
应理解的是,本发明的实施例用于多种应用。尽管本发明的范围在这方面不受限制,此处揭示的电路和技术用于诸如无线电系统的接收机的许多设备。只是作为示例,可包括在本发明的范围内的接收机包括蜂窝无线电话接收机、扩频接收机、数字系统接收机等。
在本发明范围内的蜂窝无线电话接收机类型包括(但不限于)码分多址(CDMA)、CDMA2000和宽带CDMA(WCDMA)蜂窝无线电话、接收扩频信号接收机等。
加入本发明的实施例的方面的设备、系统和方法也适用于计算机通信网应用(例如企业内部网和因特网应用)。本发明的实施例结合适应与计算机通信网(例如局域网(LAN)、广域网(WAN)或全球通信网(如因特网))交互的硬件和/或软件实现。如业界所知,纠错码的LDPC集的使用在这样的应用中尤其有益。
图1是根据本发明的一些实施例的一示例通信系统的简化框图说明。通信设备100能通过通信信道104与通信设备102通信。
尽管本发明的范围不限于此方面,通信设备100、102包含计算机的有线或无线或线缆调制解调器且通信信道104是广域网(WAN)或局域网(LAN)。例如,系统是无线LAN系统或数字用户线(DSL)系统。或者,尽管本发明的范围不限于此,图1所示通信系统是蜂窝通信系统的部分,通信设备100、102中的一个是基站,另一个是移动台,或者通信设备100、102是移动台、寻呼通信系统、个人数字助理(PDA)和服务器等。在此情况下,尽管本发明的范围决不限于此,业内人士知道,通信设备100和102各个分别包含射频天线101和111。在蜂窝无线通信系统的情况下,根据本发明的一些实施例,图1所示通信系统是第三代合作伙伴项目(3GPP),如频域双工(FDD)、宽带码分多址(WCDMA)蜂窝系统等。
通信设备100包含发射机106(如下详述,根据本发明的实施例可包含编码器108)通信设备102包含接收机110(可包含解码器112)。
如下详述,编码器108基于线性分组码编码输入字(如块或矢量)v以生成码字x。如下所述,线性分组码用奇偶校验矩阵H表示。业内人士知道,码字x可被调制、上变频及通过通信信道104(有噪声信道)传输。
接收机110从通信信道104接收信号,所述信号在下变频和解调后,可被标识为接收字r。尽管本发明的范围不限于此,通信信道104的噪声是加性噪声,因此接收字r表示为r=x+噪声。业内人士知道,解码器112使用所述奇偶校验矩阵试图根据接收字r判定对应由编码器108编码的原始字v(或码字x)的字v’(或码字x’)。
根据本发明的一些实施例的方法在使用软件、硬件或根据本发明的实施例的专门实现的软件和/或硬件的任一组合的编码器中实现。图2是根据本发明的一些实施例示例编码器200的简化框图。编码器200包含计算单元210和耦合计算单元210的存储器220。尽管本发明的范围不限于此,计算单元210是应用专用集成电路(ASIC)、简化指令集电路(RISC)、数字信号处理器(DSP)或中央处理单元(CPU)。使计算单元执行本发明的实施例的方法的指令存储在存储器220。
编码器200用稀疏奇偶校验矩阵H的分量实现编码算法。如下所述,根据本发明的实施例的编码方法在保持低计算复杂性(如级O(n))的同时,能对各种低密度奇偶校验(LDPC)码(如LDPC的λ2≅0]]>总集)和其它类的LDPC码,例如,按O(n)阶进行编码。根据本发明的实施例的编码方法也可用于对其奇偶校验矩阵不稀疏但例如从所述奇偶校验矩阵导出的子矩阵是稀疏的码进行编码。然而,本发明的实施例也适用于对奇偶校验矩阵可能没有稀疏子矩阵的码进行编码。
业内人士认识到,本发明的实施例使用此处描述的设备和方法提供编码LDPC码(所述码是在给定总集上随机选择的)的编码器。而且,根据本发明的实施例的编码器提供一解决方案,所述解决方案作到编码具有低分组差错率(如在比特差错率(如λ2≅0]]>类型总集)级的分组差错率)的LDPC码时计算复杂性在级O(n)上。
根据本发明的实施例的编码器的变体已得到成功模拟,表明本发明的实施例使低计算复杂性(即O(n))成为可能。
根据本发明的实施例,编码器200已存储或在相关存储器220中已存储从H导出的子矩阵(如表示编码码的非系统码元的子矩阵)的下/上(LU)分解。如下所讨论,LU分解运算可离线执行,例如,使用业内所知的分解方法。可理解的是,一旦获得合适的LU分解,分解元素可由编码器重复使用。因此,涉及导出合适的H分解的计算复杂性通常与本发明的一些实施例的方法的计算复杂性前后不一。
业内知道,系统编码(映射)指其中方程(xj1,…,xjk)=(v1,…,vk)满足所有矢量v=(v1,…,vk)和被映射坐标{j1,…,jk}的某一子组的任一编码过程。业内知道,对任一线性分组码的任一给定映射,存在具有相同性能的相应系统映射。因此,可以用下面的形式表示根据本发明的一些实施例的奇偶校验矩阵HH=(A|B)(1)其中,Am×k对应系统部分而Bm×m是对应非系统部分的可逆矩阵。在此表达式中,矩阵A构成H的头k个列而矩阵B构成其余列。还应注意,如果矩阵H稀疏,则矩阵A和B也必须稀疏。
根据本发明的一实施例,以形式(x1,…,xk,xk+1,…,xn)=(v1,…,vk,xk+1,…,xn)重新按排和重写矩阵H中的元素则表明,对任何有效码字,下面方程成立-A(v1,...,vk)t=B(xk+1,...,xn)t(2)其中t表示转置。
通过计算由矩阵方程(s1,…,sm)=-A(v1,…,vk)t定义的第一矢量s,解矩阵等式B(xk+1,…,xn)t=(s1,…,sm)以获取非系统码元(xk+1,…,xn)(此处也称p=(p1,…,pm))。
下三角矩阵是如果j>i则aij=0的有项aij的矩阵,而上三角矩阵是如果j<i则aij=0的有项aij的矩阵。
如果矩阵B或B的任一子矩阵(如B’)有至少一LU分解(即Lm×mUm×m=B,其中L是下三角矩阵而U是上三角矩阵(或Ll×lUl×l=B’,其中l<m)),则下面两方程成立L(z1,...,zm)t=(s1,...,sm)t(3)和U(xk+1,...,xn)t=(z1,...,zm)t(4)其中,第二矢量z=(z1,…,zm)由方程3和4定义引入。
应注意的是,矩阵B或子矩阵B’可以有不止一个可能的LU分解,根据本发明的实施例,在此情况下,任一有效LU分解可用来编码。用于本详述,给定矩阵的LU分解是指从给定矩阵导出的任一分解其中的下三角分量和上三角分量都不是单位矩阵。还要注意的是,矩阵L、U和B’不一定是方阵。类似地,子矩阵B’不一定是可逆的。
还应注意的是,展示将矩阵H分开为矩阵A和B只用作说明目的而决不是限制本发明的范围。例如,在本发明的可选实施例中,矩阵L和U可从H的任一其它LU可分解子矩阵导出。而且,从奇偶校验矩阵H导出至少一下三角矩阵(L)和至少一上三角矩阵(U)的任一其它方法可用于本发明的可选实施例中。例如,H的子矩阵可用类似于此处描述的LU分解的上/下(UL)分解得到分解。在另一示例中,形式LDU或UDL(其中D是对角阵)的分解可从奇偶校验矩阵H导出。在另一示例中,形式ALBUC的分解可从奇偶校验矩阵H导出。业内人士认识到,如何根据从奇偶校验矩阵H精确导出L和U来修改方程(3)和(4)。
根据本发明的实施例,揭示合适的LU可分解矩阵B或B的子矩阵的过程涉及高于级O(n)的复杂性。然而,如上和如下所述,这样的复杂计算(如必需)只执行一次(通常离线),因此,这种计算不影响编码过程的计算复杂性。
业内知道,如上面方程3的形式Lz=s的方程用前向替代法解,而如上面方程4的形式Ux=z的方程用后向替代法解。在上例中,如果矩阵A、L和U都稀疏,则下面计算复杂性成立输入字v乘以矩阵A以获得第一矢量s需若干按级O(n)的运算;用业内知道的前向替代解第二矢量v的元素z1,…,zm的方程3需若干按级O(n)的运算;及用业内知道的后向替代解元素xk+1,…,xn(也可记为p=(p1,…,pm))的方程4需若干按级O(n)的运算。
在稀疏矩阵理论中有针对用LU分解解稀疏线性方程的通用数学问题(即用LU分解求解稀疏线性方程组)的众所周知的解决方案。进一步,业内知道,例如,C.Fu、X.Jiao和T.Yang在其所著的收于1998年2月出版的IEEETransactions on parallel and distributed systems的第9卷第2期的109至125页的《Efficient sparse LU factorization with partial pivoting ondistributed memory architectures》一文中解释,如果矩阵H稀疏(因而子矩阵A也稀疏),则可能获得H的稀疏LU分解(即其中三角矩阵L和U也稀疏的分解)。
参考图3的示意流程图,示出根据本发明的实施例的编码线性分组码的方法。如框300所示,在实现本发明的实施例的编码器之前,表示子矩阵A、L和U的预计算数据可被存储在存储器(如编码器200的存储器220(图2))中,或通过其它方法可为编码器200所用。
如框302所示,根据本发明的实施例的方法以接收输入字v=(v1,…,vk)(可以是表示一非编码字的矢量)开始。
然后,如框304所示,第一矢量s=(s1,…,sm)通过字v乘以上面定义的负系统部分矩阵-A而获得。
如框306所示,上面定义的第二矢量z的元素通过用上述前向替代对z1……zm求解方程s=Lz而获得。
然后,如框308所示,表示码字x的非系统元素xk+1,…,xn的矢量p通过用上述后向替代对p1,…,pm求解方程z=Up而获得。
最后,如框310所示,所述方法生成码字x=(v|p),包括表示为子矩阵v的原始非编码块及表示为子矩阵p的新编码元素。所述方法接下来生成对应码字x=(x1,…,xn)的输出信号。输出信号可以例如,如参考图1的上述地,得到进一步处理并经通信网传输。
如上提及,根据本发明的实施例的方法包括分解稀疏LDPC矩阵H以获得稀疏A、L和U矩阵或具类似特征的从H导出的其它矩阵或子矩阵的初始级。这样的系统已得到成功模拟。业内人士认识到,根据本发明的实施例从给定稀疏LDPC矩阵H获得稀疏A、L和U矩阵的过程是编码过程的初始级(即每码只执行一次),因此,该级的计算复杂性对实际编码过程不重要。而且,该分解过程可离线执行。
图2的编码器和图3的编码方法描述根据本发明的实施例的编码器的示例实现。然而,应认识到,各种其它编码器设计和编码方法也在本发明的范围内,如利用奇偶校验矩阵H的稀疏(通过将包含至少一下三角矩阵L和至少一上三角矩阵U的稀疏分解应用于或者m×m矩阵或者从H推出的l×l稀疏矩阵(其中,l<m))的任一编码器或编码方法。应理解的是,图1的编码器根据本发明的实施例归于此类编码器中。
业内人士认识到,本发明的实施例的编码器用稀疏奇偶校验矩阵为各类码,如λ2≅0]]>类的LDPC码(即λ2≅0]]>总集)提供显著改进的编码器。这样类的LDPC码在许多编码应用中是有用的,如因特网相关的编码应用中。而且,本发明的实施例的编码器对于编码是有用的,可用来编码除上面定义的LDPC码之外的其它种类的LDPC码。而且,本发明的实施例的编码器结合非稀疏奇偶校验矩阵使用。
尽管此处已说明和描述本发明的一些特征,业内人士会想到许多修改、替代、改变和对等物。因此,可以理解的是,所附权利要求用来覆盖在本发明的真实精神内的所有修改和变化。
权利要求
1.一种方法,包括基于输入字,用从一码的奇偶校验矩阵导出的第一非单位三角矩阵来计算第一中间矢量;及基于所述第一中间矢量和从所述奇偶校验矩阵导出的第二非单位三角矩阵来计算第二中间矢量,其中,所述第一矩阵和所述第二矩阵中有一个是下三角矩阵,而另一个是上三角矩阵。
2.如权利要求1所述的方法,还包含生成所述码的码字,所述码字包括所述输入字和所述第二中间矢量。
3.如权利要求1所述的方法,还包含通过将所述奇偶校验矩阵的系统部分应用于所述输入字来计算第三中间矢量,其中,计算所述第一中间矢量包括基于所述第三中间矢量和所述第一三角矩阵来计算所述第一中间矢量。
4.如权利要求1所述的方法,其特征在于,计算所述第一中间矢量包含用前向替代计算所述第一中间矢量,而计算所述第二中间矢量包含用后向替代计算所述第二中间矢量。
5.如权利要求1所述的方法,其特征在于,所述码是低密度奇偶校验码。
6.如权利要求5所述的方法,其特征在于,所述低密度奇偶校验码是λ2≌0类低密度奇偶校验码。
7.如权利要求1所述的方法,其特征在于,所述下三角矩阵是所述奇偶校验矩阵的一子矩阵的一分量,而所述上三角矩阵是所述子矩阵的另一分量。
8.如权利要求7所述的方法,其特征在于,所述子矩阵实质上是稀疏的。
9.一种设备,包含基于一输入字、非单位下三角矩阵及非单位上三角矩阵计算码的码字的至少一部分的编码器,所述下三角矩阵和上三角矩阵都从所述码的奇偶校验矩阵导出。
10.如权利要求9所述的设备,其特征在于,所述下三角矩阵是所述奇偶校验矩阵的一子矩阵的一分量,而所述上三角矩阵是所述子矩阵的另一分量。
11.如权利要求9所述的设备,其特征在于,所述编码器还包含传输所述码字的电路。
12.如权利要求9所述的设备,还包含与所述编码器相关联的存储器以存储所述下三角矩阵和所述上三角矩阵。
13.一种通信设备,包含传输电路;及编码器,所述编码器包括基于输入字、非单位下三角矩阵、及非单位上三角矩阵计算码的码字的至少一部分的计算单元,所述下三角矩阵和上三角矩阵都从所述码的奇偶校验矩阵导出。
14.如权利要求13所述的通信设备,还包含耦合所述计算单元的存储器,所述存储器能在其中存储所述下三角矩阵和上三角矩阵的表示。
15.如权利要求14所述的通信设备,其特征在于,所述计算单元包括数字信号处理器。
16.如权利要求13所述的通信设备,其特征在于,所述下三角矩阵是所述奇偶校验矩阵的一子矩阵的一分量,而所述上三角矩阵是所述子矩阵的另一分量。
17.一种通信系统,包含通过通信信道传输包括一线性分组码的码字的信号的第一通信设备,所述通信设备包括编码器,所述编码器包括基于输入字、非单位下三角矩阵、及非单位上三角矩阵来计算码的码字的至少一部分的计算单元,所述下三角矩阵和上三角矩阵都从所述码的奇偶校验矩阵导出;及能接收所述信号的第二通信设备。
18.如权利要求17所述的通信系统,其特征在于,所述下三角矩阵是所述奇偶校验矩阵的一子矩阵的一分量,而所述上三角矩阵是所述子矩阵的另一分量。
19.如权利要求17所述的通信系统,其特征在于,所述通信信道是广域网,而所述第一通信设备包括一调制解调器。
20.如权利要求17所述的通信系统,其特征在于,所述通信信道是局域网,而所述第一通信设备包括一调制解调器。
21.如权利要求17所述的通信系统,其特征在于,所述信号是射频信号。
22.一种通信系统,包括经通信信道传输包括线性分组码的码字的信号的通信设备,所述通信设备包含编码器,所述编码器包含基于输入字、非单位下三角矩阵、及非单位上三角矩阵来计算码的码字的至少一部分的计算单元,所述下三角矩阵和上三角矩阵都从所述码的奇偶校验矩阵导出;及能接收所述信号的宽带码分多址通信设备。
23.如权利要求22所述的通信系统,其特征在于,所述码是低密度奇偶校验码。
24.一种物品,所述物品包括在其上存有指令的存储媒介,当由计算平台执行时所述指令造成基于输入字,用从一码的奇偶校验矩阵导出的第一非单位三角矩阵计算第一中间矢量;及基于所述第一中间矢量和从所述奇偶校验矩阵导出的第二非单位三角矩阵计算第二中间矢量,其中,所述第一矩阵和所述第二矩阵中有一个是下三角矩阵,而所述第一矩阵和所述第二矩阵中的另一个是上三角矩阵。
25.如权利要求24所述的物品,其特征在于,所述指令当被执行时造成生成所述码的码字,所述码字包括所述输入字和所述第二中间矢量。
26.如权利要求24所述的物品,其特征在于,所述指令当被执行时还造成通过将所述奇偶校验矩阵的系统部分应用于所述输入字来计算第三中间矢量,其中,计算所述第一中间矢量包含基于所述第三中间矢量和所述第一三角矩阵来计算所述第一中间矢量。
27.如权利要求24所述的物品,其特征在于,所述下三角矩阵是所述奇偶校验矩阵的一子矩阵的一分量,而所述上三角矩阵是所述子矩阵的另一分量。
28.如权利要求27所述的物品,其特征在于,所述子矩阵实质上是稀疏的。
29.如权利要求24所述的物品,其特征在于,计算所述第一中间矢量包括用前向替代计算所述第一中间矢量,而计算所述第二中间矢量包括用后向替代计算所述第二中间矢量。
30.如权利要求24所述的物品,其特征在于,所述码是低密度奇偶校验码。
31.如权利要求30所述的物品,其特征在于,所述低密度奇偶校验码是类λ2≌0的低密度奇偶校验码。
全文摘要
简要地,一种编码线性分组码的方法,包括接收输入字和计算线性分组码的码字的至少一重要部分,所述计算是通过应用运算序列,所述运算序列包括使用从线性分组码的奇偶校验矩阵的子矩阵导出的下三角矩阵的至少一前向替换和使用从所述子矩阵导出的上三角矩阵的至少一后向替换。
文档编号H03M13/11GK1732626SQ200380107763
公开日2006年2月8日 申请日期2003年12月29日 优先权日2002年12月31日
发明者I·苏特斯科弗 申请人:英特尔公司