在通信或广播系统中用于信道编码和解码的方法和设备

文档序号:1722496 发布日期:2019-12-17 浏览:14次 >En<

阅读说明:本技术 在通信或广播系统中用于信道编码和解码的方法和设备 (method and apparatus for channel encoding and decoding in a communication or broadcast system ) 是由 安硕基 金庆中 明世澔 郑鸿宝 张珉 于 2018-05-04 设计创作,主要内容包括:本公开涉及一种提供用于支持超越诸如长期演进(LTE)的第4代(4G)通信系统的更高的数据速率的准5代(5G)或5G通信系统。一种通信或广播系统中的信道编码方法包括识别输入位大小、确定块大小(Z)、确定用于LDPC编码的LDPC序列、以及基于LDPC序列和所述块大小执行LDPC编码。(The present disclosure relates to a quasi-5 generation (5G) or 5G communication system that provides for supporting higher data rates beyond a 4 th generation (4G) communication system such as Long Term Evolution (LTE). A channel encoding method in a communication or broadcasting system includes identifying an input bit size, determining a block size (Z), determining an LDPC sequence for LDPC encoding, and performing LDPC encoding based on the LDPC sequence and the block size.)

在通信或广播系统中用于信道编码和解码的方法和设备

技术领域

本公开涉及一种在通信或广播系统中用于信道编码和解码的方法和设备。

背景技术

为满足对自4G通信系统部署以来增加的无线数据业务的需求,已努力开发出改进的5G或准5G通信系统。因此,5G或准5G通信系统也被称为“超4G网络”或“后LTE系统”。

5G通信系统被认为是在更高频率(毫米波)频带、例如60GHz频带中实现的,以便实现更高的数据速率。为了减小无线电波的传播损耗并且增大传输距离,在5G通信系统中讨论了波束形成、大规模多输入多输出(MIMO)、全维MIMO(FD-MIMO)、阵列天线、模拟波束形成、大型天线技术。

此外,在5G通信系统中,基于先进的小型小区、云无线电接入网络(RAN)、超密集网络、设备到设备(D2D)通信、无线回程、移动网络、协作通信、协调多点(CoMP)、接收端干扰消除等,系统网络改进的开发正在进行中。

在5G系统中,已经开发出作为高级编码调制(ACM)的混合FSK与QAM调制(FQAM)和滑动窗口叠加编码(SWSC),以及作为高级接入技术的滤波器组多载波(FBMC)、非正交多址接入(NOMA)和稀疏码多址接入(SCMA)。

在通信或广播系统中,由于信道的各种噪声、衰落现象以及符号间干扰(ISI),链路性能可能大大降低。因此,为了实现诸如下一代移动通信、数字广播和移动互联网的需要高数据吞吐量和可靠性的高速数字通信或广播系统,期望开发出用于克服噪声、衰落和ISI的技术。作为这种技术之一,近来已研究能够有效地恢复信息的失真并提高通信的可靠性的纠错码。

发明内容

技术问题

本公开提供了能够支持各种输入长度和编码率的LDPC编码和解码方法和设备。

本公开提供了一种LDPC码设计方法以及编码和解码方法和相关设备,其适用于其中信息字具有约100位或更少的较短长度并且编码率是预定的情况。

本公开提出了一种用于通过同时考虑提升技术和陷阱集特性来设计能够支持各种长度和编码率的LDPC码的方法。

问题的解决方案

本公开提出了一种用于设计专用LDPC码的方法,所述方法适用于其中信息位的数量较小并且编码率固定的情况。

根据本公开,一种通信系统中的发射器的信道编码方法包括:基于第一信息对位序列执行低密度奇偶校验(LDPC)编码,所述第一信息基于第二信息和第三信息来识别;以及向接收器发送所述经编码的位序列,并且其中所述第二信息指示关于所述第一信息中的非零块的信息,并且其中所述第三信息指示关于与所述非零块相关联的值的信息。

所述信道编码方法还可以包括:确定将要对其应用LDPC编码的位序列的大小;基于所述位序列大小来确定块大小(Z)。

所述第二信息可以包括对应于以下给出的序列的三十二行。

所述块大小(Z)可以被确定为以下给出的值之一。

Z1'={3,6,12,24,48,96,192,384}

Z2'={11,22,44,88,176,352}

Z3'={5,10,20,40,80,160,320}

Z4'={9,18,36,72,144,288}

Z5'={2,4,8,16,32,64,128,256}

Z6'={15,30,60,120,240}

Z7'={7,14,28,56,112,224}

Z8'={13,26,52,104,208}

非零块可以是基于块大小(Z)与由第三信息指示的指数值之间的取模运算的结果确定的循环置换矩阵。所述第二信息可以能够指示多达42行和52列的块的位置。

此外,一种通信系统中的接收器的信道解码方法包括:基于第一信息对解调的接收信号执行低密度奇偶校验(LDPC)解码,所述第一信息基于第二信息和第三信息来识别,并且其中所述第二信息指示关于所述第一信息中的非零块的信息,并且其中所述第三信息指示关于与所述非零块相关联的值的信息。

此外,一种在通信系统中执行信道编码的发射器包括控制器,所述控制器被配置为控制以:基于第一信息对位序列执行低密度奇偶校验(LDPC)编码,所述第一信息基于第二信息和第三信息来识别;以及收发器,所述收发器被配置为向接收器发送所述经编码的位序列,其中所述第二信息指示关于所述第一信息中的非零块的信息,并且其中所述第三信息指示关于与所述非零块相关联的值的信息。

此外,一种在通信系统中执行信道解码的接收器包括收发器,所述收发器被配置为从发射器接收信号;以及控制器,所述控制器被配置为:基于第一信息对解调的接收信号执行低密度奇偶校验(LDPC)解码,所述第一信息基于第二信息和第三信息来识别,并且其中所述第二信息指示关于所述第一信息中的非零块的信息,并且其中所述第三信息指示关于与所述非零块相关联的值的信息。

在进行以下

具体实施方式

之前,阐述贯穿本专利文献所使用的某些单词和短语的定义可能是有利的:术语“包括”和其派生词意指包括但不限于;术语“或”是包括性的,意指和/或;短语“与……相关联”和“与其相关联”以及其派生词可以意指包括、包括于……内、与……互连、包含、包含在……内、连接到或与……连接、耦接到或与……耦接、能够与……通信、与……合作、交错、并列、接近于、绑定到或与……绑定、具有、具有……的性质等等;且术语“控制器”意指控制至少一个操作的任何装置、系统或其一部分,此设备可以用硬件、固件或软件或者其中至少两个的某一组合来实施。应注意,与任何特定控制器相关联的功能可以是集中的或分布式的,无论是本地的还是远程的。

此外,下文所描述的各种功能可以由一个或多个计算机程序实施或支持,每个计算机程序由计算机可读程序代码形成并体现于计算机可读介质中。术语“应用程序”和“程序”是指适于以合适的计算机可读程序代码实现的一个或多个计算机程序、软件部件、指令集、过程、功能、对象、类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够由计算机访问的任何类型的介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、光盘(CD)、数字视频光盘(DVD)或任何其他类型的存储器。“非暂时性”计算机可读介质排除传输暂时性电信号或其他信号的有线、无线、光学或其他通信链路。非暂时性计算机可读介质包括数据可以被永久地存储的介质和数据可以被存储并且稍后被重写的介质,诸如可重写光盘或可擦除存储器装置。

贯穿本专利文献提供了对某些字词和短语的定义,本领域普通技术人员应理解,在许多实例中(如果不是大多数实例),此类定义适用于如此定义的字词和短语的以前以及将来的使用。

发明的有益效果

根据本公开,可以有效地执行可变长度和可变速率的LDPC编码。

附图说明

为更全面地理解本公开及其优点,现参考结合附图的以下描述,在附图中相似的参考数字表示相似的部分:

图1是展示系统性LDPC码字的结构的图解。

图2是展示LDPC码的图形表示方法的图解。

图3A和图3B是展示QC-LDPC码的循环特性的图解。

图4是展示根据本公开的实施例的发送设备的框图。

图5是展示根据本公开的实施例的接收设备的框图。

图6A和图6B是展示在用于LDPC解码的校验节点和变量节点处的消息传递操作的消息结构图解。

图7是展示根据本公开的实施例的LDPC编码器的框图。

图8是展示根据本公开的实施例的LDPC解码器的框图。

图9是展示根据本公开的实施例的解码设备的配置的框图。

图10是展示根据本公开的实施例的传输块的结构的图解。

图11、图11A和图11B是展示根据本公开的实施例的LDPC码指数矩阵的实例的图解。

图12、图12A和图12B是展示根据本公开的实施例的LDPC码指数矩阵的另一实例的图解。

图13、图13A和图13B是展示根据本公开的实施例的LDPC码指数矩阵的又一实例的图解。

图14、图14A和图14B是展示根据本公开的实施例的LDPC码指数矩阵的再一实例的图解。

图15、图15A和图15B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图16、图16A和图16B是展示根据本公开的实施例的LDPC码基矩阵的实例的图解。

图17、图17A和图17B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图18、图18A和图18B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图19、图19A和图19B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图20、图20A和图20B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图21、图21A和图21B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图22、图22A和图22B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图23、图23A和图23B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图24、图24A和图24B是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图25和图25A至图25I是展示根据本公开的实施例的LDPC码基矩阵的另一实例的图解。

图26和图26A至图26I是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图27是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图28是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图29是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图30是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图31是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图32是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

图33是展示根据本公开的实施例的LDPC码指数矩阵的另一个实例的图解。

具体实施方式

下文讨论的图1至图33以及用于描述本专利文献中的本公开的原理的各种实施例仅仅是以实例说明,并且不应以任何方式解释为限制本公开的范围。本领域的技术人员将理解,本公开的原理可以在任何适当布置的系统或装置中实施。

在下文中,将参考附图详细描述本公开的实施例。在下文中,省略本领域中公知的并且与本公开不直接相关的技术的描述。这是为了通过省略不必要的解释来清楚地传达本公开的主题。此外,本文使用的术语是考虑功能性而定义的,并且可以根据用户、操作者等的意图而改变。因此,定义应当基于贯穿本公开的内容。

另外,如本领域技术人员所理解的,在不脱离本公开的范围的情况下,本公开的主题可以应用于具有类似技术背景的其他系统。

通过参考在下文参考附图详细描述的实施例,本公开的优点和特征和其实现方式将变得显而易见。然而,本公开可以许多不同形式实施,并且不应该被解释为限于本文所阐述的实施例。相反,提供这些实施例是为了将本公开的主题充分传达给本领域技术人员。贯穿本公开,相同附图标记指相同元素。

Gallager在二十世纪六十年代首次引入了低密度奇偶校验(LDPC)码,由于实施的复杂性,人们早就遗忘它。然而,由于Berrou、Glavieux和Thitimaj shima在1993年提出的涡轮码(turbo code)展示的性能接近香农的信道容量,因此关于涡轮码的性能和特性做出了许多解释,并且还进行了基于迭代解码和图形的信道编码的许多研究。由此激发,在九十年代后期再次研究LDPC码。因此,发现当将基于和积算法的迭代解码应用于对应于LDPC码的Tanner图上时,LDCP码也具有接近Shannon的信道容量的性能。

通常,LDPC码被定义为奇偶校验矩阵,并且可以使用二分图来表示,所述二分图通常称为Tanner图。

图1是展示系统性LDPC码字的结构的图解。

参考图1,对由Kldpc位或符号组成的信息字102的输入执行LDPC编码,使得生成由Nldpc位或符号组成的码字100。在下文中,为了便于解释,假定通过接收包括Kldpc位的信息字102来生成由Nldpc位组成的码字100。即,当对Kldpc输入位的信息字102进行LDPC编码时,生成码字100即,信息字和码字中的每一个都是由多个位组成的位串,并且因此,信息字位或码字位是指构成信息字或码字的每个位。通常,当码字包括信息字时,即这被称为系统码。在此,是奇偶校验位104,并且奇偶校验位的数量可以表示为Nparity(N奇偶校验)=Nldpc-Kldpc

LDPC码是一种类型的线性分组码,并且包括确定满足以下等式1的码字的过程。

[等式1]

在此,

在等式1中,H表示奇偶校验矩阵,C表示码字,ci表示码字的第i位,并且Nldpc表示LDPC码字长度。在此,hi表示奇偶校验矩阵H的第i列。

奇偶校验矩阵H由等于LDPC码字的位数的Nldpc列组成。等式1意味着奇偶校验矩阵的第i列hi与第i个码字位ci的乘积之和为零,因此意味着第i列hi与第i个码字位ci相关。

现在,将参考图2描述LDPC码的图形表示方法。

图2示出由四行和八列组成的LDPC码的奇偶校验矩阵H1及其Tanner图的实例。参考图2,具有八列的奇偶校验矩阵H1生成长度为8的码字。通过H1生成的码表示LDPC码,并且每列对应于编码的8位。

参考图2,用于基于奇偶校验矩阵H1进行编码和解码的LDPC码的Tanner图包括八个变量节点,即x1 202、x2 204、x3 206、x4 208、x5 210、x6 212、x7 214和x8 216,以及四个校验节点218、220、222和224。在此,LDPC码的奇偶校验矩阵H1的第i列和第j行分别对应于变量节点xi和第j个校验节点。在LDPC码的奇偶校验矩阵H1中的第i列和第j行的交点处的值为1、即除0以外的值表示存在连接Tanner图中的变量节点xi和第j个校验节点的边缘(或称为区段)。

在LDPC码的Tanner图中,变量节点和校验节点中的每一个的阶数(degree)是指连接到每个节点的边缘的数量,并且它等于对应于LDPC码的奇偶校验矩阵中的相关节点的列或行中的非零条目(或称为非零元素)的数量。例如,在图2中,变量节点202、204、206、208、210、212、214和216的阶数分别是4、3、3、3、2、2、2和2,并且校验节点218、220、222和224的阶数分别是6、5、5和5。另外,在图2中,对应于变量节点的奇偶校验矩阵H1的相应列中的非零条目的数量分别等于上述阶数4、3、3、3、2、2、2和2,并且对应于校验节点的奇偶校验矩阵H1的相应行中的非零条目的数量分别等于上述阶数6、5、5和5。

在图2所示的二分图上可以使用基于和积算法的迭代解码算法对LDPC码进行解码。在此,和积算法是一种消息传递算法,所述算法表示一种用于通过二分图上的边缘交换消息并且通过从输入到变量节点或校验节点的消息中计算输出消息来执行更新的算法。

在此,可以基于第i个变量节点的消息来确定第i个编码位的值。第i个编码位的值可用于硬判决和软判决两者。因此,LDPC码字的第i位ci的性能对应于Tanner图的第i个变量节点的性能,并且这可以根据奇偶校验矩阵的第i列中的1的位置和数量来确定。也即,码字的Nldpc个码字位的性能可以取决于奇偶校验矩阵的1的位置和数量。这意味着,奇偶校验矩阵会极大地影响LDPC码的性能。因此,期望一种用于设计良好的奇偶校验矩阵的方法来设计具有优异性能的LDPC码。

在通信或广播系统中,为了容易实施,通常使用准循环LDPC码(以下称为QC-LDPC码),其使用准循环形式的奇偶校验矩阵。

QC-LDPC码的特征在于具有奇偶校验矩阵,所述奇偶校验矩阵由具有小方阵形式的零矩阵或循环置换矩阵组成。在此,置换矩阵是指其中每行或每列包含单个条目1而其他条目为0的矩阵。循环置换矩阵是指通过将单位矩阵的所有条目向右循环移位而获得的矩阵。

在下文中,将详细描述QC-LDPC码。

首先,如等式2所示,定义大小为L×L的循环置换矩阵P=(Pi,j)。在此,Pi,j(0<=i,j<L)表示矩阵P中的第i行和第j列的条目(或称为元素)。

[等式2]

关于如上定义的置换矩阵P,Pi(0<=i<L)是通过将单位矩阵的各个条目向右循环移位i次而获得的循环置换矩阵。

最简单的QC-LDPC码的奇偶校验矩阵H可以以下文的等式3的形式来表示。

[等式3]

如果将P-1定义为大小为L×L的零矩阵,则等式3中的循环置换矩阵或零矩阵的每个指数ai,j具有值{-1,0,1,2,...,L-1}中的一个。另外,由于具有n个列块和m个行块,等式3的奇偶校验矩阵H的大小为mL×nL。

如果等式3的奇偶校验矩阵具有满秩,则对应于奇偶校验矩阵的QC-LDPC码的信息位的大小变为(n-m)*L。为了方便起见,对应于信息位的(n-m)个列块被称为信息字列块,并且对应于其余奇偶校验位的m个列块被称为奇偶校验列块。

通常,通过在等式3的奇偶校验矩阵中将循环置换矩阵和零矩阵分别替换为1和0而获得的大小为m×n的二元矩阵称为奇偶校验矩阵H的母矩阵或基矩阵M(H)。此外,如等式4所示通过选择循环置换矩阵和零矩阵的指数而获得的大小为m×n的整数矩阵称为奇偶校验矩阵H的指数矩阵E(H)。

[等式4]

因此,指数矩阵中包括的一个整数对应于奇偶校验矩阵中的循环置换矩阵,因此为了方便起见,指数矩阵可以表示为整数序列。所述序列将称为LDPC序列或LDPC码序列,以将其与另一个序列区分开。通常,奇偶校验矩阵不仅可以表示为指数矩阵,而且可以表示为具有代数相同特性的序列。在本公开中,奇偶校验矩阵被表示为指示奇偶校验矩阵中的1的位置的指数矩阵或序列。然而,由于存在用于区分包括在奇偶校验矩阵中的1或0的位置的各种序列标记方法,因此可以替代地表示表现出相同代数效果的多种序列形式。

此外,装置的发送/接收设备可以直接生成奇偶校验矩阵以执行LDPC编码和解码。然而,取决于实现方式的特征,可以使用具有与奇偶校验矩阵所具有的相同的代数效果的指数矩阵或序列来执行LDPC编码和解码。因此,尽管在本公开中为了方便起见描述了使用奇偶校验矩阵的编码和解码,但是本公开实际上可以通过能够实现与奇偶校验矩阵所实现相同的效果的各种方法来在装置中实现。

为了参考,相同的代数效果意味着两个或更多个不同的表示完全相同或者在逻辑上或数学上彼此转换。

尽管在本公开中描述的是其中对应于一个块的循环置换矩阵是单个的情况,但是本公开可以等同地应用于在一个块中包括多个循环置换矩阵的另一种情况。例如,如等式5所示,当两个循环置换矩阵之和包括在第i行块和第j列块的一个位置中时,指数矩阵可以表达为如等式6所示。如从等式6可以看出,在对应于包含循环置换矩阵之和的上述位置的第i行和第j列的位置中包含两个整数。

[等式5]

[等式6]

如上所述,尽管QC-LDPC码通常允许多个循环置换矩阵对应于奇偶校验矩阵中的一个行/列块,但是本公开将描述其中一个循环置换矩阵对应于一个块的情况。然而,这仅是示例性的,并且不应解释为限制。为了参考,多个循环置换矩阵在一个行/列块中重叠的大小为L×L的矩阵称为循环矩阵或循环行列式。

同时,等式5和6的奇偶校验矩阵和指数矩阵的母矩阵或基矩阵是指通过分别用1和0替换循环置换矩阵和零矩阵而获得的二元矩阵,类似于在等式3中使用的定义。另外,一个块中包括的多个循环置换矩阵的总和(即循环矩阵)简单地用1来替换。

因为LDPC码的性能是根据奇偶校验矩阵确定的,所以期望设计具有优异性能的LDPC码的奇偶校验矩阵。另外,期望能够支持各种输入长度和编码率的LDPC编码或解码方法。

提升是指不仅用于有效地设计QC-LDPC码而且用于从给定的指数矩阵生成各种长度的奇偶校验矩阵或LDPC码字的方法。即,可以通过设置L值来将提升应用于有效地设计非常大的奇偶校验矩阵,所述L值根据特定的规则来从给定的小母矩阵确定循环置换矩阵或零矩阵的大小,或者用于通过将适当的L值应用于给定的指数矩阵或对应序列而生成具有各种长度的奇偶校验矩阵或LDPC码字。

下文中参考以下参考文献描述典型的提升方法以及通过提升设计的QC-LDPC码的特性,所述参考文献通过引用整体并入本文。

参考文献[Myung2006]

S.Myung、K.Yang和Y.Kim的“用于准循环LDPC码的提升方法”,IEEE通信快报,2006年6月,第10卷,第489-491页。

当给出LDPC码C0时,假设将要通过提升方法设计的S QC-LDPC码为C1,...,CS,并且每个QC-LDPC码的奇偶校验矩阵的行块和列块的大小的值为Lk。在此,C0对应于具有C1,...,CS码的母矩阵作为奇偶校验矩阵的最小LDPC码,并且对应于行块和列块的大小的L0的值为1。此外,每个码Ck的奇偶校验矩阵Hk具有m×n大小的指数矩阵并且每个指数被选择为值{-1,0,1,2,...,Lk-1}之一。

典型的提升方法包括步骤C0→C1→...→CS,并且具有满足条件Lk+1=qk+1Lk(qk+1是正整数,k=0,1,...,S-1)的特性。如果根据提升过程的特征存储CS的奇偶校验矩阵Hs,则根据提升方法,可以使用以下等式7来表示所有QC-LDPC码C0,C1,...,CS

[等式7]

[等式8]

E(Hk)≡E(HS)modLk

不仅通过使用诸如等式7或8的合适技术从C0设计大QC-LDPC码C1,...,CS的方法而且从大码Ck设计小码Ci(i=k-1,k-2,...,1,0)的方法称为提升。

根据等式7或8的提升方法,对应于每个QC-LDPC码Ck的奇偶校验矩阵中的行块或列块的大小的Lk彼此具有倍数关系,并且还通过特定的方式选择指数矩阵。典型的提升方法改善了通过提升设计的每个奇偶校验矩阵的代数或图形特性,从而允许QC-LDPC码的设计变得容易、具有改进的错误平层特征。

然而,由于各个Lk值成倍数关系,所以存在极大地限制每个码的长度的缺点。例如,当假设诸如Lk+1=2x Lk的最小提升方案被应用于每个Lk值时,每个QC-LDPC码的奇偶校验矩阵的大小可以具有2km×2kn的大小。即,当以10个步骤(S=10)施加提升时,可以生成十个大小的奇偶校验矩阵。这意味着可以支持具有十种长度的QC-LDPC码。

因此,典型的提升方法在设计支持各种长度的QC-LDPC码时有所不利。然而,考虑到各种类型的数据传输,通常使用的通信系统需要非常高水平的长度兼容性。因此,基于典型提升方法的LDPC编码技术具有难以应用于通信系统的问题。

为了解决这种问题,本公开使用以下提升方法。

通常,提升可以认为使等式4的指数矩阵中的条目的值相对于各种L值改变,以便将其用于LDPC编码和解码。例如,当等式4的指数矩阵是E=(ai,j)时,并且当根据L值转换的指数矩阵是时,通常可以应用诸如等式9的转换等式。

[等式9]

在等式9中,f(x,L)可以以各种形式定义。例如,可以使用以下等式10中所示的定义。

[等式10]

在等式10中,mod(a,b)表示a的模b运算,并且D表示常数,所述常数是预定义的正整数。

图4是展示根据本公开的实施例的发送设备的框图。

如图4所示,为了处理可变长度输入位,发送设备400可以包括分段单元410、零填充单元420、LDPC编码器430、速率匹配单元440以及调制器450。速率匹配单元440可以包括交织器441和删余/重复/零消除单元442。

图4所示的元件被配置为对可变长度输入位执行编码和调制。然而,这些元件仅是示例性的,并且可以省略或替换其中一些元件,或者可以添加任何其他元件。

同时,发送设备400可以确定参数(例如,输入位长度,调制和编码速率(ModCod),用于零填充(或缩短)的参数,LDPC码的编码率和/或码字长度,用于交织的参数,用于重复和删余、调制方案的参数),并且在传输到接收设备500之前根据确定的参数执行编码。

输入位数是可变的。因此,如果输入位数大于预定值,则输入位可以被分段成具有等于或小于预定值的长度。另外,每个分段的块可以对应于一个LDPC编码块。如果输入位数等于或小于预定值,则不执行分段。在这种情况下,输入位可以对应于一个LDPC编码块。

发送设备400可以存储用于编码、交织和调制的各种参数。用于编码的参数可以是LDPC码的编码率、码字长度以及关于奇偶校验矩阵的信息。用于交织的参数可以是关于交织规则的信息,并且用于调制的参数可以是关于调制方案的信息。此外,关于删余的信息可以是删余长度,并且关于重复的信息可以是重复长度。当使用本公开中提出的奇偶校验矩阵时,关于奇偶校验矩阵的信息可以包括循环矩阵的指数值。

在这种情况下,构成发送设备400的各个元件可以使用上述参数来执行操作。

尽管未示出,但是发送设备400可以进一步包括用于控制发送设备400的操作的控制器(未示出)。

图5是展示根据本公开的实施例的接收设备的框图。

如图5所示,为了处理可变长度信息,接收设备500可以包括解调器510、速率解匹配单元520、LDPC解码器530、零消除单元540以及去分段单元550。速率解匹配单元520可以包括对数似然比(LLR)***单元522、LLR组合器523、解交织器524等。

图5所示的元件被配置为执行接收设备的功能。然而,这些元件仅是示例性的,并且可以省略或替换其中一些元件,或者可以添加任何其他元件。

本文公开的奇偶校验矩阵可以使用存储器读取、在发送设备或接收设备中预先给出或者由发送设备或接收设备直接生成。此外,发送设备可以存储或生成对应于奇偶校验矩阵的序列或指数矩阵并将其应用于编码。类似地,接收设备可以存储或生成对应于奇偶校验矩阵的序列或指数矩阵并将其应用于解码。

在下文中,将参考图5详细地描述接收器操作。

解调器510对从发送设备400接收的信号进行解调。

具体地,作为对应于发送设备400的调制器450的元件的解调器510对从发送设备400接收的信号进行解调,并且随后生成对应于从发送设备400发送的位的值。

为此,接收设备500可以根据模式预先存储关于由发送设备400使用的调制方案的信息。因此,取决于模式,解调器510可以对从发送设备400接收的信号进行解调,并且生成对应于LDPC码字位的值。

同时,对应于从发送设备400发送的位的值可以是对数似然比(LLR)值。

具体地,LLR值可以由从发送设备400发送的位为零的概率与所述位为一的概率之比的对数来表示。可替代地,LLR值可以是位值本身,或者是根据从发送设备400发送的位为0或1的概率所属的区间确定的代表值。

解调器510进一步对LLR值执行多路复用(未示出)。具体地,作为对应于发送设备400的位解复用器(deMUX)(未示出)的元件,解调器510可以执行对应于位解复用器的操作。

为此,接收设备500可以预先存储关于用于由发送设备400进行解复用和块交织的参数的信息。因此,MUX(未示出)可以相对于对应于单元字的LLR值(即,指示作为矢量值的LDPC码字的接收符号的信息)反向执行由位解复用器执行的解复用和块交织操作,并且以位为单位多路复用对应于单元字的LLR值。

速率解匹配单元520可以将某个LLR值***到解调器510的LLR值输出中。即,速率解匹配单元520可以在从解调器510输出的LLR值之间***预定的LLR值。

具体地,速率解匹配单元520是对应于发送设备400的速率匹配单元440的元件,并且可以执行对应于交织器441和删余/重复/零消除单元442的操作。

首先,速率解匹配单元520可以执行对应于交织器441的解交织。对应于在LDPC码字中已经填充零位的位置中的零位的LLR值被***到解交织器524的输出值。在这种情况下,对应于填充的零位(即,缩短的零位)的LLR值可以是正无穷大(∞)或负无穷大(-∞)。然而,这是理论上的,并且实际上对应于填充的零位的LLR值可以是在接收设备500中使用的LLR值的最大值或最小值。

为此,接收设备500可以预先存储关于用于由发送设备400填充零位的参数的信息。因此,速率解匹配单元520可以识别在LDPC码字中已经填充零位的位置,并且随后在所识别的位置中***对应于缩短的零位的LLR值。

此外,速率解匹配单元520的LLR***单元522可以在LDPC码字中的删余位的位置中***对应于删余位的LLR值。在这种情况下,对应于删余位的LLR值可以为零。

为此,接收设备500可以预先存储关于用于由发送设备400删余的参数的信息。因此,LLR***单元522可以将对应的LLR值***到对LDPC奇偶校验位进行删余的位置中。

速率解匹配单元520的LLR组合器523可以组合(即,求和)从LLR***单元522和解调器510输出的LLR值。具体地,作为对应于发送设备400的删余/重复/零消除单元442的元件的LLR组合器523可以执行对应于重复的操作。首先,LLR组合器523可以将对应于重复位的LLR值与其他LLR值组合。在此,其他LLR值可以是用于用作由发送设备400生成重复位的基础的位的LLR值,即用于已经被选择用于重复的LDPC奇偶校验位的LLR值。

即,如上所述,发送设备400从LDPC奇偶校验位中选择位,在LDPC信息位与LDPC奇偶校验位之间重复选择位,并且将重复位发送到接收设备500。

因此,用于LDPC奇偶校验位的LLR值可以由用于重复LDPC奇偶校验位的LLR值和用于非重复LDPC奇偶校验位(即,通过编码生成的LDPC奇偶校验位)的LLR值组成。因此,LLR组合器523可以将LLR值与相同的LDPC奇偶校验位组合。

为此,接收设备500可以预先存储关于用于由发送设备400重复的参数的信息。因此,LLR组合器523可以识别用于重复LDPC奇偶校验位的LLR值,并且将所识别的LLR值与用于重复所基于的LDPC奇偶校验位的LLR值进行组合。

此外,LLR组合器523可以将对应于重传或增量冗余(IR)位的LLR值与其他LLR值组合。在此,其他LLR值可以是用于针对在发送设备400中生成LDPC码字位而选择的位的LLR值,其中重传或IR位的生成基于所述LDPC码字位。

即,当针对混合自动重传请求(HARQ)发生否定应答(NACK)时,发送设备400可以将一些或全部码字位发送到接收设备500。

因此,LLR组合器523可以将经由重传或IR接收的位的LLR值与经由先前帧接收的LDPC码字位的另一LLR值组合。

为此,接收设备500可以预先存储关于用于通过发送设备400的重传或IR位生成的参数的信息。因此,LLR组合器523可以识别用于重传或IR位的数量的LLR值,并且将所识别的LLR值与用于重传位的生成所基于的LDPC奇偶校验位的LLR值进行组合。

速率解匹配单元520的解交织器524可以对从LLR组合器523输出的LLR值进行解交织。

具体地,解交织器524是对应于发送设备400的交织器441的元件,并且可以执行对应于交织器441的操作。

为此,接收设备500可以预先存储关于用于由发送设备400进行交织的参数的信息。因此,解交织器524可以通过对对应于LDPC码字位的LLR值反向执行由交织器441执行的交织操作来对对应于LDPC码字位的LLR值进行解交织。

LDPC解码器530可以基于从速率解匹配单元520输出的LLR值来执行LDPC解码。

具体地,LDPC解码器530是对应于发送设备400的LDPC编码器430的元件,并且可以执行对应于LDPC编码器430的操作。

为此,接收设备500可以根据模式预先存储关于由发送设备400用于LDPC编码的参数的信息。因此,取决于模式,LDPC解码器530可以基于从速率解匹配单元520输出的LLR值来执行LDPC解码。

例如,LDPC解码器530可以根据基于和积算法的迭代解码方案基于从速率解匹配单元520输出的LLR值来执行LDPC解码,并且根据LDPC解码输出纠错位。

零消除单元540可以从LDPC解码器530输出的位中去除零位。

具体地,零消除单元540是对应于发送设备400的零填充单元420的元件,并且可以执行对应于零填充单元420的操作。

为此,接收设备500可以预先存储关于用于由发送设备400填充零位的参数的信息。因此,零消除单元540可以在从LDPC解码器530输出的位中去除由零填充单元420填充的零位。

去分段单元550是对应于发送设备400的分段单元410的元件,并且可以执行对应于分段单元410的操作。

为此,接收设备500可以预先存储关于用于由发送设备400进行分段的参数的信息。因此,去分段单元550可以通过组合从零消除单元540输出的位(即,用于可变长度输入位的分段)来恢复分段之前的位。

同时,可以使用基于如图2所示的二分图上的和积算法的迭代解码算法对LDPC码进行解码。如上所述,和积算法是一种消息传递算法。

在下文中,将参考图6A和图6B描述通常在LDPC解码中使用的消息传递操作。

图6A和图6B示出在用于LDPC解码的校验节点和变量节点处的消息传递操作。

图6A示出校验节点m600和连接到校验节点m600的多个变量节点610、620、630和640。此外,Tn′,m表示从变量节点n′610传递到校验节点m600的消息,并且En,m表示从校验节点m 600传递到变量节点n 630的消息。在此,将与校验节点m 600连接的所有变量节点的集合定义为N(m),并且将通过从N(m)中排除变量节点n 630而获得的集合定义为N(m)\n。

在这种情况下,基于和积算法的消息更新规则可以由等式11表示。

[等式11]

在此,Sign(En,m)表示消息En,m的符号,并且|En,m|表示消息En,m的大小。函数Φ(x)可以由以下等式12表示。

[等式12]

同时,图6B示出变量节点x 650和连接到变量节点x 650的多个校验节点660、670、680和690。在这种情况下,Ey',x表示从校验节点y′660传递到变量节点x 650的消息,并且Ty,x表示从变量节点x 650传递到校验节点y 680的消息。在此,将连接到变量节点x 650的所有校验节点的集合定义为M(x),并且将通过从M(x)中排除校验节点y 680而获得的集合定义为M(x)\y。在这种情况下,基于和积算法的消息更新规则可以由等式13表示。

[等式13]

在此,Ex表示变量节点x的初始消息值。

在确定节点x的位值的情况下,可以使用以下等式14。

[等式14]

在这种情况下,可以根据Px值来确定对应于节点x的编码位。

因为图6A和图6B示出一般的解码方法,所以将省略详细描述。除了图6A和图6B所示的方法之外,可以应用其他方法来确定在变量节点与校验节点之间传递的消息的值。在Frank R.Kschischang、Brendan J.Frey和Hans-Andrea Loeliger的“因子图与和积算法(Factor Graphs and the Sum-Product Algorithm)”,IEEE信息理论期刊,2001年2月,第47卷,第2期,第498-519页中公开了相关描述。

图7是展示根据本公开的实施例的LDPC编码器的框图。

Kldpc位可以构成LDPC编码器710的Kldpc LDPC信息位 LDPC编码器710可以执行Kldpc LDPC信息位的系统LDPC编码,并且因此生成由Nldpc位组成的LDPC码字Λ=(c0,c1,...,cNldpc-1)=(i0,i1,...,iKldpc-1,p0,p1,...,pNldpc-Kldpc-1)。

如以上在等式1中所述,确定码字,使得LDPC码字和奇偶校验矩阵的乘积变为零矢量。

参考图7,编码设备700包括LDPC编码器710。LDPC编码器710可以基于奇偶校验矩阵或对应的指数矩阵或序列,通过对输入位执行LDPC编码来生成LDPC码字。在这种情况下,LDPC编码器710可以通过使用根据编码率(即,LDPC码的编码率)不同地定义的奇偶校验矩阵来执行LDPC编码。

编码设备700还可以包括用于存储LDPC码的编码率、码字长度以及关于奇偶校验矩阵的信息的存储器(未示出)。通过使用这种信息,LDPC编码器710可以执行LDPC编码。当使用本文提出的奇偶校验矩阵时,关于奇偶校验矩阵的信息可以包括关于循环矩阵的指数值的信息。

图8是展示根据本公开的实施例的LDPC解码器的框图。

根据图8,解码设备800可以包括LDPC解码器810。

LDPC解码器810基于奇偶校验矩阵或对应的指数矩阵或序列对LDPC码字执行LDPC解码。

例如,LDPC解码器810可以通过迭代解码算法通过传递对应于LDPC码字位的对数似然比(LLR)值来生成信息字位,并且随后执行LDPC解码。

在此,LLR值是对应于LDPC码字位的信道值,并且可以以各种方式表示。

例如,LLR值可以由通过信道从发送侧发送的位为零的概率与所述位为一的概率之比的对数来表示。可替代地,LLR值可以是根据硬判决确定的位值本身,或者是根据从发送侧发送的位为0或1的概率所属的区间确定的代表值。

在这种情况下,发送侧可以通过使用如图7所示的LDPC编码器710来生成LDPC码字。

此外,LDPC解码器810可以通过使用根据编码率(即,LDPC码的编码率)不同地定义的奇偶校验矩阵来执行LDPC解码。

同时,解码设备800还可以包括用于存储LDPC码的编码率、码字长度以及关于奇偶校验矩阵的信息的存储器(未示出)。通过使用这种信息,LDPC解码器810可以执行LDPC解码。然而,这仅是示例性的,并且这种信息可以由发送侧提供。

图9是展示根据本公开的另一实施例的解码设备的配置的框图。

如上所述,LDPC解码器810可以通过使用迭代解码算法来执行LDPC解码。在这种情况下,LDPC解码器810可以如图9所示地配置。迭代解码算法是已知的,并且如图9所示的详细配置仅是示例性的。

如图9所示,解码设备900包括输入处理器901、存储器902、变量节点计算器904、控制器906、校验节点计算器908以及输出处理器910。

输入处理器901存储输入值。具体地,输入处理器901可以存储经由无线电信道接收的信号的LLR值。

基于对应于接收信号的块大小(即,码字长度)和编码率的奇偶校验矩阵,控制器906确定输入到变量节点计算器904的值的数量、存储器902中的其地址值、输入到校验节点计算器908的值的数量以及存储器902中的其地址值。

存储器902存储变量节点计算器904和校验节点计算器908中的每一个的输入和输出数据。

变量节点计算器904基于关于从控制器906接收的输入数据的数量和地址的信息从存储器902接收数据并执行变量节点操作。随后,基于关于从控制器906接收的输出数据的数量和地址的信息,变量节点计算器904将变量节点操作的结果存储在存储器902中。另外,基于从输入处理器901和存储器902输入的数据,变量节点计算器904将变量节点操作的结果输入到输出处理器910。在此,变量节点操作如以上参考图6所述。

校验节点计算器908基于关于从控制器906接收的输入数据的数量和地址的信息从存储器902接收数据并执行校验节点操作。随后,基于关于从控制器906接收的输出数据的数量和地址的信息,校验节点计算器908将校验节点操作的结果存储在存储器902中。在此,校验节点操作如以上参考图6所述。

输出处理器910基于从变量节点计算器904接收的数据执行硬判决,以确定在发送侧处码字的信息位是零还是一。随后,输出处理器910输出硬判决的结果,并且输出处理器910的所述输出值成为最终解码的值。在这种情况下,可以基于输入到图6中的一个变量节点的所有消息值(初始消息值和从校验节点输入的所有消息值)之和来执行硬判决。

图10是展示根据本公开的另一实施例的传输块的结构的图解。

参考图10,可以添加<空(Null)>位,使得分段长度彼此相等。

另外,可以添加<空>位以匹配LDPC码的信息长度。

上文描述了用于在支持各种长度的LDPC码的通信或广播系统中基于QC-LDPC码应用各种块大小的方法。现在,将描述用于进一步改善上述方法中的编码性能的方法。

通常,在从单个LDPC指数矩阵或序列中针对各种块大小L适当地转换和使用序列的情况下,如等式9和10中所述的提升方法,在系统实现中存在许多优点,因为它只需要用一个或几个序列来实现。然而,随着将要支持的块大小的类型的数量的增加,设计对所有块大小都具有良好性能的LDPC码是非常困难的。

为了解决这种问题,提出了QCLDPC码的有效设计方法如下。在本公开中提出的是一种考虑等式9和10的提升方法以及LDPC码的奇偶校验矩阵或Tanner图上的陷阱集特性来设计具有优异性能的奇偶校验矩阵的方法。为了方便起见,尽管假设提升基于等式10的但是本公开不限于此。

现在,将详细描述可变长度Q CLDPC码的设计方法。

第一步骤是在确定用于信道码的解码成功的噪声阈值时通过执行密度演化分析同时改变密度演化和迭代解码次数的收敛规则来找到基矩阵的权重分布(即矩阵的行或列中包含的1的分布)。

第二步骤是当可以通过爬山方法改进第一步骤处获得的权重分布时,将改进的权重分布设置为基矩阵的权重分布。

第三步骤是基于在第二步骤处获得的权重分布来获得一个基矩阵。在所述步骤处,可以通过各种已知技术来设计用于获得基矩阵的方法。

提升假设等式10的即,假设对于满足2k≤L<2k+1的范围的L值,使用相同的指数矩阵进行编码和解码。

1.第四步骤是根据满足上述范围的L值在确定指数矩阵时最大化围长(即Tanner图上的循环长度的最小值),并且随后确定按照预定的去除顺序从中最大程度地去除陷阱集的指数矩阵。在此,去除陷阱集的预定顺序如下。

A.第一优先级:(4,0)陷阱集

B.第二优先级:(3,1)陷阱集

C.第三优先级:(2,2)陷阱集

D.第四优先级:(3,2)陷阱套

E.第五优先级:(4,1)陷阱集

F.第六优先级:(4,2)陷阱集

2.第五步骤是重复第一步骤至第四步骤给定次数,并且随后通过针对每个获得码的计算实验根据L值最终选择出具有最佳平均性能的码。在此,可以以各种方式定义平均性能。例如,可以在改变L值的同时找到用于实现系统中期望的块误码率(BLER)的最小信噪比(SNR),并且随后最终选择具有最小平均SNR的码。

3.设计可变长度QC LDPC码的上述方法仅是示例性的,并且可以根据信道码的要求进行修改。例如,可以通过考虑将要在系统中应用的提升方法来更改第三步骤。另外,在第四步骤处,可以根据系统中期望的信道码的特性来改变去除陷阱集的顺序。同时,用于可变长度QC LDPC码的上述设计方法也可以通过从第三步骤和第四步骤中去除提升过程而应用于固定长度。

4.例如,可以假设将信息位的数量设置为小数量来设计码,并且在低编码率的情况下,考虑到复杂性和性能两者,在信道编码之后获得的一些码字位被重复发送。在这种情况下,在上述设计可变长度QC LDPC码的方法的第一步骤中,通过将用于密度演化分析的初始值的一部分增加重复传输的次数来确定噪声阈值。另外,如果编码速率或长度是固定的,则提升过程可以排除第三步骤和第四步骤。

5.同时,由于密度演化分析方法和陷阱集的特征在本领域中是众所周知的,因此在本文省略详细描述,并且用以下参考文献代替,所述参考文献的全部内容通过引用并入本文:

6.参考文献[RSU2001]:

7.T.J.Richardson、M.A.Shokrollahi和R.L.Urbanke的“容量接近不规则低密度奇偶校验码的设计(Design of capacity-approaching irregular low-density parity-check codes)”,IEEE信息理论期刊,2001年2月,第47卷,第2期,第619-637页。

8.参考文献[KaBa2012]:

9.M.Karimi和A.H.Banihashemi的“用于找到LDPC码的主要陷阱集的有效算法(Efficient algorithm for finding dominant trapping sets of LDPC codes)”,IEEE信息理论期刊,2012年11月,第58卷,第11期,第6942-6958页。

10.通过上述设计方法设计的奇偶校验矩阵的指数矩阵或LDPC序列的实施例在图11至图15中示出。

11.图11所示的奇偶校验矩阵被分成分别在图11A和图11B中放大的两个部分。在图11中,表示两个部分的附图标记指示矩阵的对应的放大图。即,图11A和图11B的组合等于图11所示的一个奇偶校验矩阵。类似地,这适用于图12至图15。在图11至图15所示的指数矩阵中,每个空块对应于LxL大小的零矩阵。

图11所示的指数矩阵的一个特征在于由7个上行和17个前列构成的部分矩阵的阶数为2或更大。图11所示的指数矩阵的另一个特征在于从第18列到第52列的所有列的阶数均为1。即,由从第8行到第42行的行构成的大小为35x52的指数矩阵对应于大量的单个奇偶校验码。因此,图11所示的指数矩阵对应于LDPC码,所述LDPC码具有奇偶校验矩阵,所述奇偶校验矩阵由7个行块和17个列块组成、阶数为2或更大,并且具有奇偶校验矩阵,奇偶校验矩阵呈与由35个行块和52个列块组成的多个单校验码级联的形式。

应用具有单个奇偶校验码的级联方案的奇偶校验矩阵易于扩展,因此在应用增量冗余(IR)技术方面是有利的。因为IR技术对于支持混合自动重传请求(HARQ)很重要,所以高效且高性能的IR技术提高了HARQ系统的效率。基于奇偶校验矩阵的LDPC码可以通过使用从单个奇偶校验码扩展的一部分生成和发送新的奇偶校验来应用高效且高性能的IR技术。

在图11的指数矩阵中,前10列对应于信息位。因此,基于奇偶校验矩阵中的循环置换矩阵或循环矩阵的大小L,可以确定信息位的大小为10L。通常,可以通过缩短技术来支持除10L以外的信息位长度。此外,因为在图11所示的指数矩阵中存在52行,所以取决于L值,码字位长度可以是52L。如果码字位长度不是52L或者编码率不是10/52,则可以通过缩短和/或删余一些信息位来支持它。

虽然考虑到在使用以下L值的情况来设计图11,但是这仅是示例性的,并且不应解释为限制:

L={4,5,6,7}{8,9,10,11,12,13,14,15}{16,18,20,22,24,26,28,30}{32,36,40,44,48,52,56,60}{64,72,80,88,96,104,112,120}{128,144,160,176,192,208,224,240}{256}。

图12至图15所示的指数矩阵被固定为L=16,并且也固定为880的码位数。

在图12中,指数矩阵的前6列对应于信息位。类似地,图13中的指数矩阵的前5列、图14中的指数矩阵的前4列、以及前3列对应于信息位。因此,基于奇偶校验矩阵中的循环置换矩阵或循环矩阵的大小L=16,可以确定信息位的大小为96、80、64或48。通常,可以通过缩短技术来支持除96、80、64或48以外的信息位长度。如果码字位长度不是880,则可以通过缩短和/或删余一些信息位来支持它。

作为另一实施例,提出了一种用于在给定的单个基矩阵上应用多个指数矩阵或LDPC序列的方法。即,存在一个基矩阵,并且在所述基矩阵上找到LDPC码的指数矩阵或序列。随后,通过应用提升来满足来自指数矩阵或序列的每个块大小组中包括的块大小,可以执行可变长度LDPC编码和解码。换句话说,对于多个不同的LDPC码的指数矩阵或序列,对应的奇偶校验矩阵的基矩阵彼此相等。尽管在所述方案中,构成LDPC码的指数矩阵或LDPC序列的条目或数字可以具有不同的值,但是对应的条目或数字具有位置一致的特征。如上所述,指数矩阵或LDPC序列表示循环置换矩阵的指数,即一种位的循环置换值,并且通过将条目或数字的位置设置成彼此相等而容易知道对应于循环置换矩阵的位的位置。

首先,如以下等式15所示,将要支持的块大小Z被划分成多个块大小组(或集合)。应注意,块大小Z是对应于LDPC码的奇偶校验矩阵中的循环置换矩阵或循环矩阵的大小ZxZ的值。

[等式15]

Z1={12,24,48,96,192}

Z2={11,22,44,88,176}

Z3={10,20,40,80,160}

Z4={9,18,36,72,144}

Z5={8,16,32,64,128,256}

Z6={15,30,60,120,240}

Z7={14,28,56,112,224}

Z8={13,26,52,104,208}

等式15的块大小组具有不同粒度尺寸和相邻块大小的相同比率的特征。即,一组中包括的块大小是除数或倍数的关系。当对应于第p(p=1,2,...,8)组的指数矩阵是时,并且当对应于第p组中包括的Z值的指数矩阵是EP(Z)=(ei,j(Z))时,假定使用fP(x,Z)=x(modZ)来应用如等式9所示的序列转换方法。即,例如,当将块大小Z确定为Z=28时,可以相对于对应于包括Z=28的第7块大小组的指数矩阵如等式16所示地获得针对Z=28的指数矩阵E7(28)=(ei,j(28))的每个条目ei,j(28)。

[等式16]

如等式16所示的转换可以简单地如等式17表示。

[等式17]

Ep(Z)=Ep(modZ),Z∈Zp

考虑到以上等式15至17而设计的LDPC码的基矩阵和指数矩阵(或LDPC序列)在图16至图24中示出。尽管上文描述了将等式9、16或17的提升或求幂矩阵转换方法应用于对应于奇偶校验矩阵的整个指数矩阵,但是也可以部分地应用于指数矩阵。例如,对应于奇偶校验矩阵的奇偶校验位的部分矩阵通常具有用于有效编码的特殊结构。在这种情况下,编码方法或复杂性可以由于提升而改变。因此,为了维持相同的编码方法或复杂性,对于对应于奇偶校验矩阵中的奇偶性的部分矩阵,不可以对指数矩阵的一部分应用提升,或者可以对对应于信息位的部分矩阵应用除了应用于指数矩阵的提升方案之外的提升。即,在指数矩阵中,可以不同地设置应用于对应于信息位的序列的提升方案和应用于对应于奇偶校验位的序列的提升方案。另外,通过不对对应于奇偶校验位的整个或部分序列施加提升,可以使用固定值而无需序列转换。

在图16至图24中顺序地示出对应于使用基于等式15至17提出的QC LDPC码设计方法设计的LDPC码的奇偶校验矩阵的基矩阵或指数矩阵的实施例。在图16至图24所示的基矩阵和指数矩阵中,空块表示对应于ZxZ大小的零矩阵的部分。在一些情况下,图16的基矩阵中的空块可以用零表示,并且图17至图24的指数矩阵中的空块可以由诸如-1的特定值表示。图17至图24所示的LDPC码的指数矩阵具有相同的基矩阵。

图16至图24是示出42x52大小的基矩阵或LDPC指数矩阵的图解。另外,在每个指数矩阵中,由上5行和前15列形成的部分矩阵不具有1阶的列。即,这意味着可以通过对上述部分矩阵应用提升而生成的奇偶校验矩阵不具有1阶的列或列块。

此外,图16A和图16B是示出从图16所示的基矩阵划分的各个部分的放大图。在图16中,表示两个部分的附图标记表示矩阵的对应的放大图。因此,图16A和图16B的组合等于图16所示的一个基矩阵。

另外,图17A和图17B是示出从图17所示的指数矩阵划分的各个部分的放大图。在图17中,表示两个部分的附图标记表示矩阵的对应的放大图。因此,图17A和图17B的组合等于图17所示的一个指数矩阵(或一个LDPC序列)。类似地,这适用于图18至图24。

如图17至图24所示的指数矩阵的另一特征在于从第16列到第52列的所有列的阶数均为1。即,由指数矩阵中从第6行到第42行的行组成的37x52大小的基矩阵或指数矩阵对应于单个奇偶校验码。

图17至图24所示的指数矩阵对应于考虑等式15中定义的块大小组而设计的LDPC码。然而,根据系统要求,不需要支持块大小组中包括的所有块大小。因此,图17至图24所示的指数矩阵可以支持对应于等式15中定义的块大小组(或集合)的块大小,并且进一步至少支持对应于每个组(或集合)的子集的块大小。

此外,根据系统,如图16至图24所示,基矩阵和指数矩阵也可以按原样使用,或者可以仅使用其一部分。例如,在如图16至图24所示的基矩阵和指数矩阵中,可以通过将由上7行和前17列组成的7x17部分矩阵与另一个35x52大小的指数矩阵级联来生成新的指数矩阵以应用LDPC编码和解码。

类似地,在图16至图24所示的基矩阵和指数矩阵中,可以通过将由从第8行到最后一行的行和从第1列到第52列的列组成的35x52大小的部分矩阵与另一个7x17大小的部分矩阵级联来生成新的指数矩阵以执行LDPC编码和解码。

通常,通过适当地选择图16的基矩阵中的行和列而形成的部分矩阵可以作为新的基矩阵应用以执行LDPC编码和解码。同样,通过适当地选择图17至图24的指数矩阵中的行块和列块而形成的部分矩阵可以作为新的指数矩阵应用以执行LDPC编码和解码。

此外,可以通过根据编码率不同地应用码字位的删余来调整LDPC码的编码率。当基于图16至图24所示的基矩阵或指数矩阵在LDPC码中删余对应于阶数1的列的奇偶校验位时,LDPC解码器可以在不使用奇偶校验矩阵中的对应部分的情况下执行解码。因此,存在降低解码复杂性的优点。然而,在考虑编码性能的情况下,存在通过调整奇偶校验位的删余顺序或者所生成的LDPC码字的传输顺序来改善LDPC码的性能的方法。

例如,当对应于与图16至图24对应的基矩阵或指数矩阵的前两列的信息位被删余时,并且当对应于从第18列到第52列的列并且阶数为1的所有奇偶校验位进行删余时,可以发送编码率为10/15的LDPC码字。通常,通过在通过使用对应于图16至图24的基矩阵和指数矩阵生成LDPC码字之后适当地应用速率匹配,可以进一步提高性能。当然,考虑到速率匹配,通过适当地重新排列基矩阵或指数矩阵中的列的顺序,可以将其应用于LDPC编码和解码。

通常,LDPC编码过程包括确定将对其应用LDPC编码的输入位大小(或码块大小)、确定将对其应用LDPC编码的块大小(Z)、确定合适的LDPC指数矩阵或序列、并且随后基于确定的块大小(Z)和确定的指数矩阵或LDPC序列执行LDPC编码。此时,可以将LDPC指数矩阵或序列不经转换而应用于LDPC编码,或者根据块大小(Z)适当地进行转换。

类似地,LDPC解码过程包括确定所发送的LDPC码字的输入位大小(或码块大小)、确定将对其应用LDPC解码的块大小(Z)、确定合适的LDPC指数矩阵或序列、以及基于所确定的块大小(Z)和所确定的指数矩阵或LDPC序列执行LDPC解码。此时,可以将LDPC指数矩阵或序列不经转换而应用于LDPC解码,或者根据块大小(Z)适当地进行转换。

图16所示的基矩阵可以以各种形式表示。例如,可以通过使用以下等式18至21所示的序列来表示基矩阵。

等式18表示在图16的基矩阵中具有42x52大小的部分矩阵的每一行中的条目1的位置。例如,在等式18中,第二序列的第二值6表示条目1存在于基矩阵的第二行的第六列处。在此实例中,序列和矩阵中的条目的起始顺序从零开始计数。

表达式19表示在图16的基矩阵中具有42x52大小的部分矩阵的每一列中的条目1的位置。例如,在等式19中,第四序列的第三值10表示条目1存在于基矩阵中第三列的第十行处。同样在此实例中,序列和矩阵中的条目的起始顺序从零开始计数。

[等式18]

[等式19]

如果对于图16的基矩阵中的阶数1的列的位置有特定规则,则如等式20和21所示,可以省略关于对应位置的信息。当然,假定发送设备和接收设备了解这种特定规则。

如果基矩阵或指数矩阵的一部分具有某种规则,则可以更简单地表示基矩阵或指数矩阵。例如,在从第十五列块到最后一个列块的列块具有如图16至图24所示的基矩阵或指数矩阵的对角线结构的情况下,假设所述规则是已知的,则省略条目的位置及其指数值。

例如,通过从上述等式18和19中省略从第15列块到最后一列块的条目1的位置,获得以下等式20和21。

[等式20]

[等式21]

以下等式22表示如图17所示的具有42x52大小的指数矩阵的每一行中的每个条目值。例如,在等式22中,第二序列的第二值56表示指数矩阵的第二行中的第二条目的值是56。进一步考虑图16和等式18,这意味着对应于奇偶校验矩阵中的第二行块和第六列块的循环置换矩阵的指数为56。

如果指数矩阵的一部分具有某种规则,则可以更简单地表示指数矩阵。例如,在从第十五列块到最后一个列块的列块具有如图17至图24所示的指数矩阵的对角线结构的情况下,假设所述规则是已知的,则省略其指数值。

例如,以下等式23是其中从第15列块到最后一个列块省略指数值0的实例。

[等式22]

[等式23]

如上所述,基矩阵和指数矩阵可以以各种方式表示。如果应用列或行的置换,则通过适当地改变等式18至23中的序列或序列中的数字的位置,相同的表达式是可能的。

现在,将参考图25至图33描述通过本文提出的设计方法设计基矩阵和指数矩阵的实例。图25至图33的基矩阵和指数矩阵在由上22行和前32列组成并且因此具有22x32大小的部分矩阵已固定的条件下生成。即,当给出图25A至图25F时,图25的基矩阵作为通过本文提出的设计方法来设计图25G至图25I的扩展形式而获得。

类似地,图26至图33所示的指数矩阵通过类似于图25的扩展设计而获得。以这种方式,即使当基矩阵或指数矩阵的一部分预先固定为特定矩阵或序列时,也可以通过本文提出的方法来设计扩展的基矩阵或指数矩阵。

图25至图33的基矩阵或指数矩阵的大小为42x52,并且指数矩阵的空块通常对应于ZxZ大小的零矩阵,并且可以由诸如-1的特定值表示。

基本上,如等式15至17所示,每个基矩阵和指数矩阵都是在考虑各条件和方法的情况下设计的。然而,这仅是示例性的,并且不应解释为限制。例如,可以支持等式15的块大小组中包括的块大小(Z)值,并且也支持等式24所示的块大小组。此外,可以使用等式24的任何子集中包括的块大小值,并且也向等式15或24的块大小组(或集合)添加合适的值。

[等式24]

Z1'={3,6,12,24,48,96,192,384}

Z2'={11,22,44,88,176,352}

Z3'={5,10,20,40,80,160,320}

Z4'={9,18,36,72,144,288}

Z5'={2,4,8,16,32,64,128,256}

Z6'={15,30,60,120,240}

Z7'={7,14,28,56,112,224}

Z8'={13,26,52,104,208}

图26至图33示出对应于基于等式15至17或等式24设计的QC LDPC码的奇偶校验矩阵的指数矩阵的实施例。图26至图33所示的LDPC码的指数矩阵具有相同的基矩阵,其特征如图25所示。

图25A至图25I是示出从图25所示的基矩阵划分的各个部分的放大图。图25中表示相应部分的附图标记表示矩阵的对应放大图。因此,图25A至图25I的组合形成图25所示的一个基矩阵。

图26A至图26I是示出从图26所示的指数矩阵划分的各个部分的放大图。在图26中表示相应部分的附图标记表示矩阵的对应的放大图。因此,图26A至图26I的组合形成图26所示的一个指数矩阵。

图27至图33示出图26的部分A、D和G。在图27至图33中,其他部分B、C、E、F、H和I与图26相同,即与图26B、图26C、图26E、图26F、图26H和图26I所示的相同。因此,通过将图27至图33中的每个图所示的A、D和G部分与图26A、图26B、图26C、图26E、图26F、图26H和图26I组合,可以形成指数矩阵。

图25至图33的基矩阵和指数矩阵基于由上22行和前32列组成并且因此具有22x32大小的部分矩阵而生成。即,即使当基矩阵或指数矩阵的一部分预先固定为特定矩阵或序列时,也可以通过本文提出的方法来设计扩展的基矩阵或指数矩阵。

图25至图33所示的基矩阵和指数矩阵可以以各种形式表示。例如,使用以下等式25所示的序列表示是可能的。等式24表示图25的基矩阵的每一行中的条目1的位置。

[等式25]

等式26示出图25的基矩阵的每一列中的条目1的位置。

[等式26]

如果可以为基矩阵的一部分找到某种规则,则可以更简单地表示基矩阵。例如,在从第十五列到最后一列的列具有如图25所示的基矩阵的对角线结构的情况下,假设发送和接收设备了解所述规则,则可以省略条目的位置或其指数值。

为了参考,通过相对于可以基于图25至图33所示的基矩阵或指数矩阵生成的LDPC码适当地缩短一部分信息位并删余一部分码字位,可以以各种编码率和各种长度来支持LDPC编码和解码。例如,通过对图25至图33所示的基矩阵和指数矩阵中的信息位的一部分应用缩短,可以支持各种信息字长度(或码块长度)以及各种编码率,随后对对应于前两列的信息位进行删余并对一部分奇偶校验进行删余。

此外,当使用LDPC码的缩短或零填充来支持可变信息字长或可变编码率时,可以根据缩短的顺序或方法来提高码性能。如果已设置缩短顺序,则可以通过重新排列给定基矩阵的全部或一部分来提高编码性能。另外,可以通过相对于特定信息字长(或码块长度)适当地确定将要对其应用缩短的块大小或列块的大小来提高性能。

例如,当图25至图33中的前十列对应于信息字位(或码块)并且当将要用于LDPC编码的列数是Kb时,可以通过应用如下文给出的用于缩短的适当的规则并且由此确定Kb和块大小(Z)的值来获得更好的性能。

在上文中,CBS表示信息字长度或码块长度。当在上文中确定Kb的值时,可以将块大小(Z)值确定为满足ZxKb>=CBS的最小值。例如,如等式27所示确定Kb和块大小。

[等式27]

CBS=40=>Kb=6=>Z=7

CBS=48=>Kb=7=>Z=7

CBS=56=>Kb=6=>Z=10

CBS=64=>Kb=6=>Z=11

CBS=72=>Kb=6=>Z=12

CBS=80=>Kb=6=>Z=14

CBS=200=>Kb=8=>Z=26

CBS=640=>Kb=9=>Z=72

CBS=1024=>Kb=10=>Z=104

根据系统,如图25至图33所示,基矩阵或指数矩阵也可以按原样使用,或者可以仅使用其一部分。例如,在如图25至图33所示的基矩阵或指数矩阵中,可以通过与除由上22行和前32列组成的22x32部分矩阵以外的22x32LDPC基矩阵或者指数矩阵级联来生成新的指数矩阵或指数矩阵,并且将其用于LDPC编码和解码方法和设备。例如,通过使用来自等式25的等式28中所示的20个矩阵,可以通过与另一个基矩阵级联来生成新的基矩阵。

[等式28]

作为另一个实例,通过将来自等式25的如等式29所示的上32个序列与其他10个LDPC基矩阵或LDPC序列级联,可以生成新的基矩阵并将其应用于LDPC编码和解码。为了参考,如等式29所示,通过从等式25中选择上32个序列定义的基矩阵的部分矩阵与通过选择图25中的上32个行定义的基矩阵的部分矩阵相同。

如等式28和29所示,在通过使用与对应于图25或等式25的LDPC基矩阵(或序列)的部分矩阵(或序列的一部分)相对应的序列来定义新的基矩阵的情况下,还可以通过使用与对应于图26至图33的LDPC指数矩阵中的部分矩阵(或序列的一部分)相对应的部分来生成新的指数矩阵。

[等式29]

通常,通过适当地选择图25至图33的基矩阵和指数矩阵中的行和列而形成的部分矩阵可以作为新的基矩阵和指数矩阵来应用,并且用于LDPC编码和解码的方法和设备。

虽然已参考其示例性实施例具体示出并描述了本公开,但是应清楚地理解,这些仅仅通过说明和实例,并且不与本公开结合。本领域技术人员将理解,在不脱离本公开的主题和范围的情况下,可以在形式和细节上进行各种改变。

虽然已经用各种实施例描述了本公开,但是可以向本领域技术人员提出各种改变和修改。意图是本公开涵盖落入所附权利要求的范围内的这些改变和修改。

112页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于麦克风系统的滤波器、麦克风系统、微型电子装置以及装备印刷电路板的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类