实施极化码的设备和方法与流程

文档序号:16511966发布日期:2019-01-05 09:23阅读:289来源:国知局
实施极化码的设备和方法与流程

本发明大体上涉及通信系统中的数据编解码。更具体而言,本发明涉及使用极化码来对数据进行编解码的设备和方法。



背景技术:

极化码定义了一种新的信道码类型,对此arikan在其开创性著作中有介绍:“信道极化:一种构造对称二进制输入无记忆信道的容量可达代码的方法(channelpolarization:amethodforconstructingcapacity-achievingcodesforsymmetricbinary-inputmemorylesschannels)”,ieee信息论学报,2009年7月。极化码在编解码复杂度o(nlogn)取决于码长n的情况下能够在各种信道上容量可达,这是编码理论中的突破进展。这些代码对于实际有限的码长也具有显著效果。如arikan的上述著作所述,最新的解码器使用连续消除(successivecancellation,sc)解码,结合列表解码(例如,2011年7月ieeeisit上tal和a.vardy发表的“极化码的列表解码(listdecodingofpolarcodes)”)和可能的附加循环冗余校验(cyclicredundancycheck,crc)来改善代码的距离属性以及改善列表解码(例如,kainiu和kaichen,“极化码的crc辅助解码”,ieee通信快报,第16卷,第10期,2012年10月)。

根据极化码的初始构造,极化码的长度n是2的幂,即n=2n,其中,n是整数。但是,近期的著作提出了对长度为n的极化码进行打孔或缩短的方法,以获得任意码长n′(n≠n′)。因此,任意码率r是可能的,其中,r=k/n,k为信息比特数量。在实际部署中,crc应用于k个信息比特。该crc显著改善了代码属性,并且在解码过程中也得以利用。

(n,k)极化码通过以下矩阵定义,其中,n=2n

其中,表示2x2基矩阵的n-次克罗内克尔积以及包含冻结比特索引的冻结集f,这些冻结比特不用于信息传输。这k个信息比特可以通过非系统编码或系统编码的方式使用长度为n的极化码进行编码。

图1(a)示出了根据arikan的上述著作的使用长度为8的极化码的四个信息比特的非系统编码示例,该极化码称为速率为r=1/2的(8,4)极化码。在该图中,用于比特ui的所谓虚拟信道的交互信息i(wi)在左侧示出。交互信息i(wi)表示比特信道的可靠性:如果i(wi)接近于1,则信道定义为“好”信道,并且可用于传输信息比特。反之,如果i(wi)接近于0,则信道定义为“坏”通道,并且不应该用于传输信息比特。因此,将对应于交互信息i(wi)的最小值的四比特索引收集到冻结比特索引集f={1,2,3,5}中,以便获得码率为r=1/2的代码。针对编码,将四个信息比特[u0u1u2u3]置于非冻结位置,并且将对应于包含在冻结比特索引集f中的索引的比特设置为0。通过矩阵复用,码位[c0c1c2c3c4c5c6c7]按如下获得:

图1(b)示出了(8,4)极化码的系统编码示例,其中,系统编码可以通过两步方案来实现,如下文所述:“灵活且复杂度低的系统极化码的编解码(flexibleandlow-complexityencodinganddecodingofsystematicpolarcodes)”,arxiv:1507.03614,2015年7月,sarkis等著。第一步与非系统编码的步骤相同。在第一步之后获得的矢量中,将冻结比特再次设置为0,并再次应用非系统编码。因此,获得系统编码器,同时信息比特成为码字中的系统比特(右侧所示的比特)。冻结比特索引集定义极化码,因此其设计对于代码性能极为重要。

在非系统编码器和系统编码器中,crc可以应用于信息比特的矢量,该矢量由上述示例中的[u0u1u2u3]进行定义。

关于通过极化码进行解码,有两种主要的解码算法:如arikan的上述著作中所建议的连续消除(successivecancellation,sc)解码,以及如tal和a.vardy在2011年7月ieeeisit上发表的“极化码的列表解码(listdecodingofpolarcodes)”和kainiu和kaichen在2012年10月ieee通信快报第16卷第10期发表的“极化码的crc辅助解码(crc-aideddecodingofpolarcodes)”中所建议的列表sc(listsc,lsc)解码。

sc解码方案的复杂度非常低,并且由于极化效应足够用于非常大的码长n。对于中长码和短码,优选lsc解码方案,因为该方案可以有效处理sc解码中的错误传播。此外,lsc解码方案能够通过更长的列表来降低解码错误率。因此,lsc解码方案允许在性能和复杂度之间进行权衡。

图2示出了在使用二进制相移键控-加性高斯白噪声(binaryphaseshiftkeying-additivewhitegaussiannoise,bpsk-awgn)信道的情况下,基于以db为单位的信噪比(signal-to-noise-ratio,snr)的不同解码方案的误码率。具体而言,允许将使用sc和lsc(l=32)解码方案的(2048,1024)极化码的性能与最新信道解码方案的性能进行比较。这一比较表明,极化码是非常强大的一种信道代码,并且预期极化码能够在未来的通信系统中发挥重要作用。

原始的极化码构造通过选择冻结集的大小可支持任何码率。但是,极化码仅支持长度为2的幂,即n=2n的代码的构造。码长限制是极化码的一个主要缺点,这需要在实际应用中克服。使用编码理论中所谓的打孔和缩短技术,可以将极化码调整为任何码长,这将在下文进行解释。在下文中,长度n=2n的极化码还称为母极化码。

图3(a)示出了打孔的主要思想。在打孔过程中,不会传输一个或多个码位。解码器通常将打孔比特处理为已擦除,并采用长度为n的母极化码的解码器。打孔具有让码率r更加灵活的优点,并且允许立即用于增量冗余,但是打孔对所得距离属性的控制能力会减弱。如果必须创建长度为n′的代码才能对具有r=k/n′的k个信息比特进行编码,则使用母(k,n)极化码对数据进行编码,其中,n>n',并且对p=n-n'个比特进行打孔。针对解码,为p个打孔码位分配的对数似然比(log-likelihoodratio,llr)为0,并且采用长度为n的母极化码的常用解码。打孔改变了代码属性和解码行为,因此需要仔细选择要打孔的位置。

图3(b)示出了缩短的主要思想。在缩短过程中,使用长度为n的母极化码的子码,在该子码中,并将一个或多个比特限制为固定值,通常为0。在使用系统编码器的情况下,可以选择一个或多个系统比特进行缩短,并且在编码过程中可以将这些系统比特简单地设置为0。这些固定比特不会被传输。在解码器侧,缩短的比特是已知的,为这些比特设置的llr的值非常大,并且采用长度为n的母极化码的解码器。缩短实现了与打孔相同的码率灵活性,而且可以更好地控制代码属性。如果必须创建长度为n′的代码才能编码k个信息比特,则首先利用s=n-n′个0(也称为缩短比特)来填充数据,并且选择n>n'的(n,k+s)母极化码。所获得的k+s个信息比特和缩短比特使用系统极化编码器进行编码。在传输之前移除s个缩短比特。这个过程保留了母极化码的最小距离,因而相比打孔,对代码属性具有更大的控制能力。在解码器侧,s个移除比特已知为零。相应地,使用大的正值(理论上无穷大)来初始化这些码位的llr。之后,采用长度为n的母极化码的常用解码。

在打孔和缩短过程中,为了获得良好的错误率性能,在母极化码设计中选择要打孔或缩短的比特位置极为重要。

在现有技术中提供了几种解决方案,以便设计冻结比特索引集、打孔比特索引集和缩短比特索引集。这些解决方案可以分为三类:最优打孔/缩短模式生成、最优冻结集生成和联合优化,这将在下文进行描述。

最佳打孔或缩短模式生成技术涉及以下处理:一旦给出母极化码的冻结集,就寻找最佳的打孔或缩短模式。这项技术在zhang等人于2014年7月ieeeisit上发表的著作“关于打孔极化码的打孔模式(onthepuncturingpatternsforpuncturedpolarcodes)”中有用到,旨在创建打孔极化码。具体而言,所选待冻结比特的可靠性低,而且要运行算法才能找到对应于所选冻结比特的最佳打孔模式。这种技术的错误率性能与其它错误率性能相比为次优,但是打孔模式计算起来复杂度较低。此外,每次必须生成(n,k)极化码时都必须运行优化算法,增加了系统时延,这也是该方法的一个缺点。

最佳冻结集生成技术涉及以下处理:一旦给出打孔或缩短模式,就寻找最佳的冻结集。在wang等人于2014年12月ieee通信快报上发表的著作“一种新的极化码打孔方案(anovelpuncturingschemeforpolarcodes)”中提出将这项技术用于对非系统极化码进行缩短,而同时在shin等人于2013年ieee信息理论学报上发表的著作“基于极化矩阵规约的长度兼容的极化码设计(designoflength-compatiblepolarcodesbasedonthereductionofpolarizingmatrices)”以及c.kai等人与2013年6月ieeeicc上发表的著作“超越turbo码:速率兼容的打孔极化码(beyondturbocodes:rate-compatiblepuncturedpolarcodes)”中也提出将这项技术用于对非系统极化码进行打孔。在wang等人的上述著作中,使用(n,k)母极化码的最后几位比特来选择缩短模式。同样,在shin等人和kai等人的上述著作中,根据某种启发式方法生成打孔模式,并运行密度演化(densityevolution,de)算法以鉴于打孔模式来寻找最佳冻结集。只要代码发生变化,每次编码和每次解码都需要计算冻结集。而且,de算法是一个相对复杂的算法。尽管这种技术的错误率性能较好,但由于de计算导致的高复杂度和由此产生的时延使得该技术在实际实施中并不具吸引力。

在v.miloslavskaya于2015年9月ieee信息理论学报上发表的著作“缩短极化码(shortenedpolarcodes)”中提出将联合优化技术用于对非系统极化码进行缩短。在这项技术中,冻结集和缩短模式共同得到优化。对于给定的(n′,k)代码,搜索所有可能的缩短模式。通过利用极化编码器的某些对称性可以大大降低这种全面搜索的复杂度。由于优化设计,此项技术的错误率性能良好。但是,需要大量的存储器来存储包括每个n'和k的冻结集和缩短模式的表格。对于需要大量码长n'和码率r的实际应用,这种方法并不实用。

尽管现有技术中的上述技术提供了一些解决方案,即解决通过使用极化码来设计具有任意长度和速率的代码的问题,但是由于这些解决方案的描述复杂度较高,因此都存在实际实施方面的缺点。现有技术的主要缺点之一是缺乏冻结集生成、打孔模式生成和缩短模式生成的结构。具体而言,不同的(n',k)代码具有不同的冻结集和打孔或缩短模式,并且对于每对(n',k)代码来说,这些冻结集和打孔或缩短模式要么进行存储要么在运行中进行计算,若进行存储则需要大容量存储器,若在运行中进行计算则会导致计算复杂度变高。

因此,需要在通信系统中实施极化码的改进设备和方法。



技术实现要素:

本发明的目的在于提供在通信系统中实施极化码的改进设备和方法。

上述及其它目的通过独立权利要求的主题来实现。进一步的实施方式在从属权利要求、说明书和附图中显而易见。

根据第一方面,本发明涉及一种用于基于长度为n的极化码将k个信息比特编码为长度为n'的码字的编码器,其中,n是2的幂并且大于或等于n'。所述编码器包括存储多个比特索引的存储器,其中,所述多个比特索引包括关联于所述长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引。此外,所述编码器包括处理器,用于:从所述存储器中检索所述多个比特索引的至少一个子集,使用所述长度为n的极化码对所述k个信息比特进行编码以获得长度为n的编码数据,以及将所述编码数据的比特数量减少到所述长度n'以获得所述长度为n'的码字。

因此,提供紧凑简单的极化码描述以生成冻结集。此外,可以对描述所述极化码所需的所述冻结比特索引集进行离线优化,使得复杂度高的算法可以应用于这种代码优化。与现有技术中使用的方法相比,这是另一个优势。在现有技术中使用的所述方法中,代码参数在线确定,并且由于发射器和接收器中的计算和时延限制必须使用低复杂度方法。此外,这种复杂度低的描述允许在需要具有各种不同长度和速率的大量极化码的系统中实际应用。

根据第一方面所述的编码器,在第一种可能的实施方式中,所述多个比特索引还包括关联于长度为m的极化码的一组m个冻结比特索引、一组m/2个打孔比特索引和/或一组m/2个缩短比特索引,其中,m是2的幂并且小于n;所述处理器用于:使用所述长度为m的极化码对所述k个信息比特进行编码,以及在n'小于或等于m的情况下将所述编码数据的比特数量减少到所述长度n′。

根据第一方面或第一方面的第一种实施方式所述的编码器,在第二种可能的实施方式中,所述多个比特索引存储在所述存储器的查找表中。

根据第一方面的第一种或第二种实施方式所述的编码器,在第三种可能的实施方式中,所述处理器用于通过对所述长度为n的编码数据进行打孔来将所述编码数据的所述比特数量减少到所述长度n'。

根据第一方面的第三种实施方式所述的编码器,在第四种可能的实施方式中,所述多个比特索引包括所述一组n个冻结比特索引,所述多个比特索引的所述检索子集包括所述一组n个冻结比特索引中前n–k个冻结比特索引。

根据第一方面的第四种实施方式所述的编码器,在第五种可能的实施方式中,所述多个比特索引还包括所述一组n/2个打孔比特索引,所述多个比特索引的所述检索子集还包括所述一组n/2个打孔比特索引中前p个打孔比特索引,其中,p=n-n'。此外,所述处理器用于通过对所述长度为n的编码数据的所述比特进行打孔来将所述编码数据的所述比特数量减少到所述长度n′,其中,所述长度n由所述一组n/2个打孔比特索引中所述前p个打孔比特索引来标识。

根据第一方面的第一种至第五种实施方式中任一项所述的编码器,在第六种可能的实施方式中,所述处理器用于通过对所述长度为n的编码数据进行缩短来将所述编码数据的所述长度减小到所述长度n'。

根据第一方面的第六种实施方式所述的编码器,在第七种可能的实施方式中,所述多个比特索引包括所述一组n个冻结比特索引,所述多个比特索引的所述检索子集包括所述一组n个冻结比特索引中前n-k-s个冻结比特索引,其中,s=n-n′。

根据第一方面的第七种实施方式所述的编码器,在第八种可能的实施方式中,所述多个比特索引还包括所述一组n/2个缩短比特索引,所述多个比特索引的所述检索子集还包括所述一组n/2个缩短比特索引中前s个缩短比特索引。此外,所述处理器用于通过对所述长度为n的编码数据的所述比特进行缩短来将所述编码数据的所述长度减小到所述长度n′,其中,所述长度n由所述一组n/2个缩短比特索引中所述前s个缩短比特索引来标识。

根据第一方面的第一种至第八种实施方式中任一项所述的编码器,在第九种可能的实施方式中,所述多个比特索引包括关于所述一组n/2个打孔比特索引的第一组n个冻结比特索引和关于所述一组n/2个缩短比特索引的第二组n个冻结比特索引。

根据第二方面,本发明涉及一种用于基于长度为n的极化码将k个信息比特编码为长度为n'的码字的方法,其中,n是2的幂并且大于或等于n'。所述方法包括以下步骤:将多个比特索引存储在存储器中,其中,所述多个比特索引包括关联于所述长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引;从所述存储器中检索所述多个比特索引的至少一个子集;使用所述长度为n的极化码对所述k个信息比特进行编码以获得长度为n的编码数据;以及将所述编码数据的比特数量减少到所述长度n'以获得所述长度为n'的码字。

根据第三方面,本发明涉及一种基于长度为n的极化码对长度为n'的码字中已编码的k个信息比特进行解码的解码器,其中,n是2的幂并且大于或等于n'。所述解码器包括:存储多个比特索引的存储器,其中,所述多个比特索引包括关联于所述长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引;以及处理器,用于:从所述存储器中检索所述多个比特索引的至少一个子集,以及使用所述长度为n的极化码对所述长度为n′的码字中已编码的所述k个信息比特进行解码,以获得维数为k的解码数据。

根据第三方面所述的解码器,在第一种可能的实施方式中,所述多个比特索引还包括关联于长度为m的极化码的一组m个冻结比特索引、一组m/2个打孔比特索引和/或一组m/2个缩短比特索引,其中,m是2的幂并且小于n,并且所述处理器用于在n'小于或等于m的情况下使用所述长度为m的极化码对所述长度为n'的码字中编码的所述k个信息比特进行解码。

根据第三方面所述的解码器,在第二种可能的实施方式中,所述多个比特索引存储在所述存储器的查找表中。

根据第四方面,本发明涉及一种基于长度为n的极化码对长度为n'的码字中编码的k个信息比特进行解码的方法,其中,n是2的幂并且大于或等于n'。所述方法包括以下步骤:将多个比特索引存储在存储器中,其中,所述多个比特索引包括关联于所述长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引;从所述存储器中检索所述多个比特索引的至少一个子集;以及使用所述长度为n的极化码对所述长度为n'的码字中已编码的所述k个信息比特进行解码,以获得维数为k的解码数据。

附图说明

本发明的具体实施方式将结合以下附图进行描述,其中:

图1示出了极化码(a)的非系统编码示例和极化码(b)的系统编码示例;

图2示出了基于以db为单位的信噪比的不同解码方案的误码率;

图3示出了说明打孔(a)和缩短(b)的主要思想的示意图;

图4示出了包括根据一项实施例的编码器和根据一项实施例的解码器的通信系统的示意图;

图5示出了根据一项实施例的使用极化码对数据进行编码的方法的示意图;

图6示出了根据一项实施例的使用极化码对数据进行解码的方法的示意图;

图7示出了根据一项实施例的极化码查找表的示意图;

图8示出了根据一项实施例的极化码的打孔方案(a)和缩短方案(b)的示意图;

图9示出了根据一项实施例的包括冻结比特索引集的查找表;

图10示出了根据一项实施例的包括打孔比特索引集的查找表;

图11示出了根据一项实施例的包括缩短比特索引集的查找表;

图12示出了根据一项实施例的使用极化码的代码性能;

图13示出了根据一项实施例的使用极化码的代码性能;

图14示出了根据一项实施例的使用极化码的代码性能;以及

图15示出了根据一项实施例的使用极化码的代码性能。

在各附图中,相同的或至少功能等同的特征使用相同的参考标号。

具体实施方式

以下结合附图进行描述,所述附图是本发明的一部分,并通过图解说明的方式示出可以实施本发明的具体方面。应明白,在不脱离本发明范围的情况下,可利用其它方面并且可作出各种结构或逻辑变化。因此,以下详细描述不应被视为具有限制意义,因为本发明的范围由所附权利要求书所限定。

例如,可以理解的是,与所描述方法有关的发明对于用于执行所述方法的相应设备或系统也同样适用,反之亦然。例如,如果描述了特定方法步骤,则对应设备可以包括用于执行所描述的方法步骤的单元,即使此类单元没有在图中明确描述或图示。

另外,在以下具体描述以及权利要求中,描述了包含相互连接或进行信号交互的不同功能块或处理单元的实施例。可以理解的是,本发明也涵盖了包含其它功能块或处理单元的实施例,这些其它功能块或处理单元设置在下述实施例中的功能块或处理单元之间。

最后,可以理解的是,此处所述的各种示例性方面的特征可以互相结合,除非另有说明。

图4示出了根据一项实施例的编码器400和解码器420的示意图,两者用于使用极化码通过通信信道410进行通信。在图4所示的实施例中,编码器400包括处理器401、存储器403和存储在存储器403中的查找表403a。在图4所示的实施例中,解码器420包括处理器421、存储器423和存储在存储器423中的查找表423a。

如将在下文进一步详述,根据本发明实施例,具有k个信息比特和速率为r=k/n′的长度为n'的短码可以通过打孔、缩短、打孔和缩短组合来从长度为n=2n的母极化码中获得,其中,n=ceil(log2(n′)),或者可以基于所需的代码参数n'和r来确定,例如,通过一个简单的函数来确定。

因此,在一项实施例中,编码器400用于基于长度为n的极化码将k个信息比特编码为长度为n'的码字,其中,n是2的幂并且大于或等于n'。存储器403存储多个比特索引,其中,所述多个比特索引包括关联于长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引。处理器401用于:从存储器403中检索多个比特索引的至少一个子集,使用长度为n的极化码对k个信息比特进行编码以获得长度为n的编码数据,以及将编码数据的比特数量减少到长度n'以获得长度为n'的码字。

在一项实施例中,上述编解码技术可以根据以下规则要求使用查找表403a和查找表423a,其中,查找表403a和查找表423a包括比特索引集。若进行打孔,可以使用一组n个冻结比特索引和一组n/2打孔比特索引。若进行缩短,可以使用一组n个冻结比特索引和一组n/2个缩短比特索引。若同时进行打孔和缩短,可以使用一组n个冻结比特索引、一组n/2个打孔比特索引和一组n/2个缩短比特索引。

在一项实施例中,可以根据以下规则通过对长度为n的母极化码进行打孔来构造长度为n'的短码:冻结集包括冻结比特索引集中前f=n-k个索引,打孔集包括打孔比特索引集中前p=n-n′个索引。

在一项实施例中,可以根据以下规则通过对长度为n的母极化码进行缩短来构造长度为n'的短码:冻结集包括冻结比特索引集中前f=n-k-s个索引,缩短集包括缩短比特索引集中前s=n-n′个索引。将用于缩短的比特设置为0。

在一项实施例中,可以从一组n个冻结比特索引中导出一组n/2个打孔比特索引和一组n/2个缩短比特索引。一组n/2个打孔比特索引按照比特反转顺序对应于一组n个冻结比特索引中前n/2个索引,一组n/2个缩短比特索引按照比特反转顺序对应于一组n个冻结比特索引中的后n/2个索引的倒置索引。

在一项实施例中,可以根据以下规则通过对长度为n的母极化码同时进行打孔和缩短来构造长度为n'的短码:冻结集包括冻结比特索引集中前f个索引,打孔集包括打孔比特索引中前p个索引,缩短集包括缩短比特索引中前s个索引。将用于缩短的比特设置为零,而f、p和s值以预定的方式基于n′和r进行选择,例如,以错误率最小化的方式。

在一项实施例中,编码器400是系统编码器400,解码器420是系统解码器420。此外,上述提出的使用长度为n的母极化码生成长度为n'的代码的技术可以使用背景技术章节中提到的系统编码方案来实施。

在一项实施例中,可以离线确定存储冻结比特索引集、打孔比特索引集和缩短比特索引集的查找表403a和查找表423a。图9、图10和图11详细描述了一种计算查找表403a和查找表423a的可能方式。

本发明提出了一种信息比特编解码解决方案,该方案仅需要小容量存储器403并且可以通过简单和快速的查找表403a和查找表423a来定义编码器400和解码器420所需要的代码。此外,查找表403a和查找表423a可以离线生成。因此,对于优化查找表403a和查找表423a而言,可以承受高复杂度,而不影响编码器400和解码器420的实际应用。

图5示出了根据一项实施例的使用极化码对数据进行编码的方法500的示意图。在本实施例中,提供了一种用于基于长度为n的极化码将k个信息比特编码为长度为n'的码字的方法500,其中,n是2的幂并且大于或等于n'。方法500包括以下步骤:将多个比特索引存储502在存储器403中,其中,该多个比特索引包括关联于长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引;从存储器403中检索504该多个比特索引的至少一个子集;使用长度为n的极化码对k个信息比特进行编码506以获得长度为n的编码数据;以及将编码数据的比特数量减少508到长度n'以获得长度为n'的码字。

图6示出了根据一项实施例的使用极化码对数据进行解码的方法600的示意图。在本实施例中,提供了一种用于基于长度为n的极化码将k个信息比特解码为长度为n'的码字的方法600,其中,n是2的幂并且大于或等于n'。方法600包括以下步骤:将多个比特索引存储602在存储器423中,其中,该多个比特索引包括关联于长度为n的极化码的一组n个冻结比特索引、一组n/2个打孔比特索引和/或一组n/2个缩短比特索引;从存储器423中检索604该多个比特索引的至少一个子集;以及使用长度为n的极化码对长度为n'的码字中编码的k个信息比特进行解码606,以获得维数为k的解码数据。

图7示出了存储在存储器403中的若干查找表403a、403b、403c和403d的示意图。在本实施例中,假设针对母极化码n的每个长度,即从n=64到n=2n,提供冻结比特索引(pn)和缩短索引(sn),其中,n是自然数,查找表403a、403b、403c和403d包括冻结比特索引(fnp和fns)。在本实施例中,fnp和fns的维数是n,pn和sn的维数都是n/2。因此,针对系统所需的每个n值,即对于每个n使得log2(n′min)≤n≤log2(n′max),可以将查找表403a、403b、403c和403d的其中一个存储在存储器403中。所存储的查找表,例如查找表403a,包括用于打孔的两组索引(fnp和pn)和用于缩短的两组索引(fns和sn)。具体而言,若进行打孔,可以将包括索引1到2n的一组大小为2n的fnp个冻结比特索引和包括索引1到2n的一组大小为2n-1的pn个打孔比特索引存储在存储器403中。若进行缩短,可以将包括索引1到2n的一组大小为2n的fns个冻结比特索引和包括索引1到2n的一组大小为2n-1的sn个缩短比特索引存储在存储器403中。因此,对于每个n值,可以将四组比特索引存储在存储器403中,从而将3×2n个比特存储在存储器403中。若同时进行缩短和打孔,包括索引集组合的泛化处理通常采用同样的思路。

图8示出了根据一项实施例的极化码的打孔方案(a)和缩短方案(b)的示意图。为了生成n′≠2n的(n',k)打孔极化码,可以计算母极化码n=2n的长度,其中,n=ceil(log2(n′)),k是信息集的维数。在一项实施例中,可以在存储器403中读取一组fnp个冻结比特索引和一组pn个打孔比特索引。在本实施例中,fnp中前n-k个索引表示冻结集的元素,而剩余k个索引对应于该信息集的比特索引。可以通过使用(n,k)母极化码的系统极化编码器400来对k个信息比特进行编码。在编码之后,可以对比特进行打孔以减小码字的长度。如(a)中所示,选择pn中前p=n-n′项作为要打孔的比特的位置。然后,丢弃打孔位置上的比特。在打孔之后,传输剩余n'个比特。在接收器处,计算接收到的码位的对数似然比(log-likelihoodratio,llr)。之后,运行用于(n,k)母极化码的解码器420,其中,打孔位置上的比特的llr值可以设置为0。

在(b)中,根据一项实施例示出了一种缩短方案,以便生成n′≠2n的(n',k)缩短极化码,母极化码的长度为n=2n,其中,n=ceil(log2(n′))。可以在存储器403中读取一组fns个冻结比特索引和一组sn个缩短比特索引。fns中前n-k-s个索引对应于包括冻结比特索引的集合中的元素,其中,s=n-n′。剩余k+s个索引表示(n,k+s)母极化码的信息比特索引。sn的前s个索引表示信息集的一个子集,并且可以用0填充,而k个信息比特可以放入一组k+s个信息比特的剩余k个索引中。对前一阶段中获得的k+s个信息比特可以通过使用(n,k+s)母极化码的系统极化编码器400进行编码。在编码之后,可以将编码比特进行缩短以减小消息的长度。可以选择sn的前s=n-n′项作为要缩短的比特的位置。之后,可以丢弃缩短位置上的比特。在缩短之后,传输剩余n'个码位。在接收器处,计算接收到的码位的llr。运行用于(n,k+s)母极化码的解码器420,其中,缩短位置上的比特的llr值可以设置为非常高的值,表明这些比特是完全已知的。

图9示出了根据一项实施例的冻结比特索引集。在本实施例中,长度为n=512(n=9)的母极化码的冻结比特索引集f9是在snr为1db时在awgn信道410上运行具有高斯近似的密度演化(densityevolution,de)算法而生成的。

图10示出了根据一项实施例的打孔比特索引集。在本实施例中,冻结比特索引集p9是指长度为n=512(n=9)的母极化码。打孔比特索引集p9使用图9所示的f9中前256项以比特反转顺序生成。

图11示出了根据一项实施例的缩短比特索引集。在本实施例中,缩短比特索引集s9是指长度为n=512(n=9)的母极化码。缩短比特索引集s9使用图9所示的f9中后256项以比特反转顺序生成。

图12示出了根据一项实施例的使用极化码的代码性能。具体而言,图12示出了基于以db为单位的信噪比(eb/n0)的不同解码方案的误码率。在本实施例中,代码的长度为n`=320,速率为r=0.5,而母极化码的长度为n=512=29,即n=9。此外,极化码使用长度为24比特的crc,并且使用列表长度为l=32的列表连续取消(listsuccessive-cancellation,lsc)解码器420对极化码进行解码。实线表示根据本发明的解码方案的性能,这些方案使用图9所示的冻结比特索引集、图10所示的打孔比特索引集和图11所示的缩短比特索引集。在本实施例中,通过使用与同时进行缩短和打孔相同的方法生成这些冻结比特索引集,因此存在唯一的冻结比特索引集,即f9p=f9s=f9。在本实施例中,查找表423a包括冻结比特索引集f9、打孔比特索引集p9和缩短比特索引集s9。

虚线表示使用最新lte-turbo解决方案(lte-turbo示例)中的解码方案的结果以及使用wang等人的上述著作(示例[4])和kai等人的上述著作(示例[6])中所示的解码方案的结果。

图13示出了根据一项实施例的使用极化码的代码性能。

这种情况与图12所述的情况相同,但是在这种情况下,信息比特的维数是k=104,因此代码的速率为r=0.325。

图14示出了根据一项实施例的使用极化码的代码性能。

这种情况与图12所述的情况相同,但是在这种情况下,信息比特的维数是k=64,因此代码的速率为r=0.2。

图15示出了根据一项实施例的使用极化码的代码性能。

这种情况与图12所述的情况相同,但是在这种情况下,信息比特的维数是k=216,因此代码的速率为r=0.675。

图12至图15所示的结果强调以下事实。在大多数情况下,根据图9、图10和图11所示的索引集生成的打孔和缩短极化码优于具有相同速率的最新lte-turbo码。此外,根据图9、图10和图11所示的索引集生成的极化码的性能损耗与上述最新解决方案中描述的高度优化且复杂的方法相比通常可忽略不计,例如,在wang等人的上述著作(曲线图中的示例[4])和kai等人的上述著作(曲线图中的示例[6])中所述。极化码和lte-turbo码甚至可以在特定情况下具有相同的性能,例如,当r=0.2和r=0.675时。因此,本发明中定义的极化码的错误率性能仍然与针对所需的长度和速率对各个代码进行优化的现有解决方案相当。此外,打孔极化码在速率低时优于缩短极化码,而速率高时则相反。在wang等人和kai等人的上述著作中也观察到相同的效果。这些事实提供了在编码器400处根据目标码率r=k/n'在打孔与缩短之间选择最佳方案的可能性。具体而言,对于某种给定机制,只能存储最佳查找表403a和查找表423a。这在存储器消耗方面提供了更多增益,以在存储器403和存储器423中存储生成表。

尽管本发明的特定特征或方面可能已经仅结合几种实施方式或实施例中的一种进行公开,但此类特征或方面可以和其它实施方式或实施例中的一个或多个特征或方面相结合,只要对任何给定或特定的应用有需要或有利即可。而且,在一定程度上,术语“包括”、“有”、“具有”或这些词的其它变形在详细的说明书或权利要求书中使用,这类术语和所述术语“包括”是类似的,都是表示包括的含义。同样,术语“示例性地”、“例如”和“如”仅作为示例示出,而不表示最好或最佳。可以使用术语“耦合”和“连接”及其派生词。应当理解,这些术语可以用于指示两个元件彼此协作或交互,而不管它们是直接物理接触还是电接触,或者它们彼此不直接接触。

尽管本文中已说明和描述特定方面,但本领域普通技术人员应了解,多种替代和/或等效实施方式可在不脱离本发明的范围的情况下替代所示和描述的特定方面。该申请旨在覆盖本文论述的特定方面的任何修改或变更。

尽管以上权利要求书中的元件是利用对应的标签按照特定顺序列举的,但是除非对权利要求的阐述另有暗示用于实施部分或所有这些元件的特定顺序,否则这些元件不必限于以所述特定顺序来实施。

通过以上启示,对于本领域技术人员来说,许多替代、修改和变化是显而易见的。当然,本领域技术人员容易认识到除本文所述的应用之外,还存在本发明的众多其它应用。虽然已参考一个或多个特定实施例描述了本发明,但本领域技术人员将认识到在不偏离本发明的范围的前提下,仍可对本发明作出许多改变。因此,应理解,只要是在所附权利要求书及其等效物的范围内,可以用不同于本文具体描述的方式来实施本发明。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1