CN109314528A - 极性码逐位取消列表解码 - Google Patents
极性码逐位取消列表解码 Download PDFInfo
- Publication number
- CN109314528A CN109314528A CN201680087287.3A CN201680087287A CN109314528A CN 109314528 A CN109314528 A CN 109314528A CN 201680087287 A CN201680087287 A CN 201680087287A CN 109314528 A CN109314528 A CN 109314528A
- Authority
- CN
- China
- Prior art keywords
- sequence
- decoding
- decoded
- threshold value
- coded sequence
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3746—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3905—Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/3977—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using sequential decoding, e.g. the Fano or stack algorithms
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
一种方法由信息解码器来执行。方法包括获得(S102)编码序列,已经使用极性码对编码序列进行了编码。方法包括将编码序列逐位解码(S104)成解码序列的连续位。逐位解码编码序列包括执行阈值检查(S106)以用于评价位不确定性判据。逐位解码编码序列包括每当阈值检查失败总是将解码序列分支(S108)成两个候选的解码序列。
Description
技术领域
本文中呈现的实施例涉及用于将编码序列解码成解码序列的方法、信息解码器、计算机程序和计算机程序产品。
背景技术
在通信网络中,针对给定的通信协议、它的参数以及其中部署通信网络的物理环境,要获得良好的性能和容量可能存在有挑战。
例如,在数字通信中,要从发送器被传递到接收器的数据可被分成以分组的方式来发送的更小的数据段。这些数据段配有被用于将数据从发送器移至接收器的数据协议应当如何映射分组并且在一些情况下应当如何分析分组的数据内容是否正确的信息。这个信息通常可被接收器预测或所知。例如,当使用网际协议(IP)时,对于从发送器到接收器沿途的每个装置来说需要IP-分组报头来路由分组。在一些通信网络中(诸如在长期演进(LTE)无线接入网中),被服务的无线装置通常绝不会接收带有(被所谓的报头压缩利用的)错误IP-地址的IP-分组。
正如在“Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels”,IEEE Trans.Inform. Theory,2009年第55卷第3051-3073页中呈现的,极性码是容量实现码,具有明确的构造(即,不是被随机生成的)并且具有有效的编码和解码算法。除了当码长度趋于无穷大时是有效的容量实现性质之外,它们还已经针对更短的码长度显示了良好的性能。
用于解码极性码的现有机制的一个问题在于遵循极性码的位顺序的逐位解码(SD)过程。极性码的解码易于错误传播,并且因此,早期在逐位解码过程中产生的错误将不会被校正,而是相反将会一直传播到解码结束。这将导致解码错误。另外,参见图2,早期在过程中比在结束更可能产生错误。图2示出了具有索引i(对于i=1,2,…N,其中N是二进制数字的总数并且在示例中N=1024)的位可携带的信息量的示例,假定所有先前的二进制数字1,2,…,i-1是已知的,即,其中遵循了极性码解码顺序。
根据US2015/0026543A1,通过扩展最有可能是错误的二进制数字(索引)的固定列表来减轻这个问题。然而,这个列表并不依赖于瞬时信道实现,而是依赖于信道分布,并且因此在一些情况下将会被错配。根据I. Tal和A Vardy所著的“List decoding of polarcodes”,arXiv: 1206.0050,2012年5月31日,建议了分裂二进制树中的路径的过程。技术记录当前已知的最可能的路径并且忽视其余路径。然而,概率测量并不准确并且如果测量的(评价的)概率值彼此接近(但是仍然不相同并且因此是按顺序的),可导致由于概率中的错误而挑选了错误路径。
因此,仍然存在有对于用于对已经使用极性码而被编码的数据进行解码的改进机制的需要。
发明内容
本文中的实施例的目的是提供极性码的有效解码。
根据第一方面,提出了一种用于将编码序列解码成解码序列的方法。由信息解码器来执行所述方法。所述方法包括获得编码序列,已经使用极性码对编码序列进行了编码。所述方法包括将编码序列逐位解码成解码序列。逐位解码编码序列包括按照正在被解码的编码序列的顺序执行至少一些连续的二进制数字的阈值检查,阈值检查评价这些至少一些连续的二进制数字的位不确定性判据。逐位解码编码序列包括每当阈值检查失败总是将解码序列分支成两个候选的解码序列。
有利地,这提供了将已经使用极性码而被编码的序列有效解码成解码序列。
有利地,这个方法改进了准确性(由正确解码码字的概率所定义的),同时还减少了信息解码器的复杂性(由基本操作的数量所定义的)。所公开的方法相对于前面提到的论文“Channel polarization: A method for constructing capacity-achieving codesfor symmetric binary-input memoryless channels”改进了准确性并且相对于前面提到的US2015/0026543A1改进了复杂性和准确性两者。
有利地,这个方法利用极性码结构的解码顺序改进了解码性能。实质上,更可能的是将具有接近于更低索引的中间索引号的二进制数字(其不是固定的)分支。在极性码中,与具有高索引的那些二进制数字相比,具有低索引的二进制数字(即,具有更小的互信息的那些二进制数字(可以被作为信道分布上的平均确定性测量来对待))更不确定。具有低索引的许多(但是并非全部)二进制数字在极性码的设计中被先验固定。未被固定的这些二进制数字是平均来说不是明显不确定(但是从信道实现到信道实现可能是明显不确定)的中间索引的二进制数字。所建议的方法将会基于瞬时位不确定性来将被识别为不确定的并且在码设计期间还没有被先验固定的任何二进制数字分支。
根据第二方面,提出了一种用于将编码序列解码成解码序列的信息解码器。信息解码器包括处理电路系统。处理电路系统被配置为促使信息解码器获得编码序列,已经使用极性码对编码序列进行了编码。处理电路系统被配置为促使信息解码器将编码序列逐位解码成解码序列。处理电路系统被配置为促使信息解码器按照正在被解码的编码序列的顺序执行至少一些连续的二进制数字的阈值检查,阈值检查评价这些至少一些连续的二进制数字的位不确定性判据。处理电路系统被配置为每当阈值检查失败总是促使信息解码器将解码序列分支成两个候选的解码序列。
从硬件实现的角度来看,一旦二进制数字被分支(这将更经常地在(针对编码序列中具有更小的位索引的二进制数字的)解码过程的早期发生),不同的解码实例(即,不同的候选的解码序列的解码)就可以并行运行以便不会延迟不同的解码实例的二进制数字的并行概率评价。这与其中每次修剪列表时都将会需要执行当前评价的路径之间的比较的前面提到的论文“List decoding of polar codes”形成对照。
根据第三方面,提出了一种用于将编码序列解码成解码序列的信息解码器。信息解码器包括处理电路系统和计算机程序产品。计算机程序存储指令,所述指令在被处理电路系统执行时促使信息解码器执行步骤或操作。步骤或操作促使信息解码器获得编码序列,已经使用极性码对编码序列进行了编码。步骤或操作促使信息解码器将编码序列逐位解码成解码序列。步骤或操作促使信息解码器按照正在被解码的编码序列的顺序执行至少一些连续的二进制数字的阈值检查,这些阈值检查评价这些至少一些连续的二进制数字的位不确定性判据。每当阈值检查失败,步骤或操作总是促使信息解码器将解码序列分支成两个候选的解码序列。
根据第四方面,提出了一种用于将编码序列解码成解码序列的信息解码器。信息解码器包括被配置为获得编码序列的获得模块,已经使用极性码对编码序列进行了编码。信息解码器包括被配置为将编码序列逐位解码成解码序列的解码模块。信息解码器包括被配置为按照正在被解码的编码序列的顺序执行至少一些连续的二进制数字的阈值检查的检查模块,阈值检查评价这些至少一些连续的二进制数字的位不确定性判据。信息解码器包括被配置为每当阈值检查失败总是将解码序列分支成两个候选的解码序列的分支模块。
根据第五方面,提出了一种用于将编码序列解码成解码序列的计算机程序,计算机程序包括当在信息解码器上运行时促使信息解码器执行根据第一方面的方法的计算机程序代码。
根据第六方面,提出了一种包括根据第五方面的计算机程序和在其上存储了计算机程序的计算机可读存储介质的计算机程序产品。
要注意的是,在适当之处,第一、第二、第三、第四、第五和第六方面的任何特征可适用于任何其它方面。同样地,第一方面的任何优势可以分别同样地适用于第二、第三、第四、第五和/或第六方面,并且反之亦然。由下面详细的公开、由所附的从属权利要求以及由附图,所附上的实施例的其它目的、特征和优势将是显而易见的。
通常,除非本文中另有明确定义,权利要求中使用的所有术语要按照它们在技术领域中的通常含义来解释。除非另有明确说明,所有提及“元件、设备、组件、部件、步骤等/所述元件、设备、组件、部件、步骤等”要被开放式地解释为指元件、设备、组件、部件、步骤等中的至少一个实例。除非明确说明,不必以公开的精确顺序来执行本文中公开的任何方法的步骤。
附图说明
现在参考附图、通过示例的方式来描述本发明的概念,其中:
图1是说明根据实施例的通信网络的示意图;
图2是说明根据实施例的互信息的示意图;
图3是说明极性码的示意图;
图4、5和6是根据实施例的方法的流程图;
图7和8是说明根据实施例的列表解码的示意图;
图9是示出根据实施例的信息解码器的功能单元的示意图;
图10是示出根据实施例的信息解码器的功能模块的示意图;以及
图11示出了根据实施例的包括计算机可读部件的计算机程序产品的一个示例。
具体实施方式
现在将参考附图在下文中更充分地描述本发明的概念,附图中示出了本发明的概念的某些实施例。然而,可以以许多不同的形式来体现这个发明的概念并且这个发明的概念不应当被解释为限于本文中阐述的实施例;相反地,通过示例的方式来提供这些实施例,使得本公开将会是透彻和完整的,并且这些实施例将会充分地将本发明的概念的范围传达给本领域技术人员。贯穿本描述,同样的附图标记指同样的要素。通过虚线说明的任何步骤或特征应当被认为是可选的。
图1是说明通信网络100的示意图,其中可以应用本文中呈现的实施例。通信网络100包括信息编码器110和信息解码器200。信息编码器110被配置为将信息序列编码成编码序列。信息解码器200被配置为将编码序列解码成解码序列。
信息编码器110和信息解码器200被符号通信信道120分开。通信信道120模拟在信息编码器110和信息解码器200之间如何影响编码序列。例如,编码序列的传输可以引起错误要被插入编码序列中。在这里,错误要被解释为在通信信道120上的传输期间从二进制0翻转到二进制1的或者反之亦然的编码序列中的位值。因此,如由信息解码器200获得的编码序列被表示为,其中如果信道无错误则并且在别处。此外,如果,则还有,但是如果,则存在有的非零概率。为了最小化的概率,编码过程期间的信息编码器110以受控的方式将冗余添加到信息序列z,导致编码序列。通过使用极性码,以受控的方式添加冗余。相反地,在信息解码器200处,以受控的方式从接收到的编码序列中移除添加的冗余,导致解码序列。此外,通信网络100包括(可选的)数据存储设备130。假定数据存储设备130用来无损地存储数据,即没有在存储的数据中引入损失。通过通信信道120来模拟数据中的任何损失。
信息编码器110和信息解码器200使用极性码来使信息序列z免受信道失真。信息编码器110将会使用预定的极性码将信息序列z编码成将会接着被用在通信信道120上的传输的编码序列。将会由信息解码器200使用极性码逐位解码器来对如上面所公开的在经过通信信道120时可以是失真的接收到的编码序列进行解码。
图3是说明极性码300的示意图,其中w代表通信信道120。在图3的示例中,z1, z2,z3, …, zN中的一些代表信息位,并且z1, z2, z3, …, zN中其余的代表添加的冗余位(具有固定的并且因此已知的值)。使用图3中的极性码示例,信息解码器200基于接收到的编码序列来估计编码序列的概率并且接着将这些向后传播贯穿极性码结构以计算信息序列z的概率。当评价z2, z3, …, zN的概率时,向下传播基于计算的概率在z1上所作的决定。针对z2等等重复相同的操作,这定义了下面的逐位解码过程。信息解码器200越好,也就是,它可以校正接收到的编码序列中越多的错误,可以通过通信信道w输送越多的信息。
本文中公开的实施例涉及将编码序列解码成解码序列,其中已经使用极性码对编码序列进行了编码。为了获得这样的机制,提供了信息解码器200、由信息解码器200执行的方法、包括代码的计算机程序产品,例如,所述代码以计算机程序的形式,所述计算机程序当在信息解码器200上运行时促使信息解码器200执行方法。
图4、5和6是说明用于将编码序列解码成解码序列的方法的实施例的流程图。由信息解码器200执行方法。作为计算机程序来有利地提供方法。
现在参考说明如由根据实施例的信息解码器200执行的用于将编码序列解码成解码序列的方法的图4。
S102:信息解码器200获得编码序列。已经使用极性码对编码序列进行了编码。
S104:信息解码器200将编码序列逐位解码成解码序列。
逐位解码基于使用依赖于瞬时信道实现的判据以利用新的候选的候选的解码序列来扩展候选的解码序列的列表。将编码序列逐位解码成解码序列因此涉及要被配置为执行步骤S106和S108的信息解码器200:
S106:信息解码器200按照正在被解码的编码序列的顺序执行至少一些连续的二进制数字的阈值检查。阈值检查评价这些至少一些连续的二进制数字的位不确定性判据。下面将会公开这样的位不确定性判据的示范实施例。
S108:每当阈值检查失败,信息解码器200总是将解码序列分支成两个候选的解码序列。
分支因此基于使用依赖于瞬时信道实现的不确定性映射的阈值检查。
这个方法在作出是否将解码序列分支的决定的方式上不同于前面提到的US2015/0026543A1。在US2015/0026543A1中,基于预定的位索引的集合来将解码序列分支。在设计极性码时设计这个列表并且这个列表不会针对不同的信道实现而改变。从信道的角度来看,列表因此表现为确定性的。典型列表基于按照互信息(或熵)的最可靠的位索引。互信息是信道实现的分布上的平均测量。根据本文中公开的方法,基于使用依赖于瞬时信道实现的不确定性映射的阈值检查来将解码序列分支。
这个方法在作出是否将解码序列分支的决定的方式上也不同于前面提到的论文“List decoding of polar codes”。在“List decoding of polar codes”中,所有可能的解码序列被充分扩展(即,所有二进制数字被分支)直到已经达到有限的列表大小。这个分支接着后面是修剪判据以便在剩余的解码步骤中移除最不可能的解码序列,以便保持列表大小是可行的。根据本文中公开的方法,解码过程涉及相反,也就是并非所有的解码二进制数字被分支并且没有解码序列被修剪。相反,只选取特定的解码序列(借助于仅仅选择的二进制数字被分支)。
正如上面提及的,每当阈值检查失败,信息解码器200在步骤S108总是将解码序列分支成两个候选的解码序列。在这方面,当每当阈值检查是成功的时候,总是不执行分支。当阈值检查是成功的时候,按照正在被解码的编码序列的顺序的二进制数字被解码成一个解码序列,而没有它的任何分支。
当在具有极性码解码问题的若干实例(每个被候选的解码序列所定义)的可能性的情况下解码极性码时,本文中公开的用于将编码序列解码成解码序列的方法可因此使用动态列表扩展过程。通过编码序列的逐位解码来发现候选的解码序列。遵循极性码位顺序,逐位解码将解码第一位,这意味着它将会把那个位的最可能的值(二进制0或1)设置为真实的解码值。在顺序中的下一位(即第二位)被解码之前,这个信息将接着被传播贯穿极性码的结构(更新剩余二进制数字中的概率)。重复这个解码过程直到解码了所有剩余的二进制数字。根据本文中公开的方法,不具有是0或1的截然不同的概率的位将会被设置为两个值并且因此将会由正在被解码的编码序列创建两个单独的候选的解码序列,一个具有被设置为0的那个二进制数字并且另一个具有被设置为1的相同的二进制数字。
现在将公开与如由信息解码器200执行的将编码序列解码成解码序列的进一步细节有关的实施例。
可存在有分支的不同原因。例如,根据实施例,分支是由至少一些连续的二进制数字中的阈值检查失败的二进制数字具有在编码序列的逐位解码期间被解码成0和1的等概率引起的。在这方面,术语等概率可以被定义为将二进制数字解码为1的概率值处于间隔0.35-0.65,优选地处于间隔0.4-0.6,更优选地处于间隔0.45-0.55。
在执行分支时可存在有不同的方式来形成候选的解码序列。例如,根据实施例,分支引起至少一些连续的二进制数字中的阈值检查失败的二进制数字在两个候选的解码序列当中的第一候选的解码序列中被设置为二进制0并且在两个候选的解码序列当中的第二候选的解码序列中被设置为二进制1。
也就是说,信息解码器200决定是不确定的一些二进制数字(例如,如果给定的二进制数字为二进制1的概率接近于0.5,则信息解码器200无法确定这个给定的二进制数字的值是二进制0还是二进制1)可以被分支成两个解码实例:其中这个给定的二进制数字被设置为二进制0的一个候选的解码序列和其中这个给定的二进制数字被设置为二进制1的一个候选的解码序列。
现在参考说明如由根据另外的实施例的信息解码器200执行的用于将编码序列解码成解码序列的方法的图5。假定如上面所公开的那样执行步骤S102、S104、S106和S108并且因此省略其中的像这样重复的描述。
可存在有不同的方式来执行步骤S106中的阈值检查。现在将依次描述与此有关的不同实施例。例如,在极性码的逐位解码期间可获取估计的概率。因此,根据实施例,信息解码器200被配置为执行作为执行步骤S106中的阈值检查的一部分的步骤S106a:
S106a:信息解码器200确定至少一些连续的二进制数字中的每个的一个概率值。
可接着使用这个给定的二进制数字的这一个概率值来评价所述至少一些连续的二进制数字中的给定的二进制数字的位不确定性判据。
分支可基于正在被解码的二进制数字的各种不确定性量度。可因此存在有不同的方式来评价这个给定的二进制数字的位不确定性判据。例如,可使用对数似然比、熵、自信息或概率测量来评价不确定性判据。因此,根据实施例,信息解码器200被配置为执行作为执行步骤S106中的阈值检查的一部分的步骤S106b,以便评价这个给定的二进制数字的位不确定性判据:
S106b:信息解码器200使用这个给定的二进制数字的概率值来确定对数似然比、熵、自信息或概率测量中的至少一个。每当对数似然比、熵、自信息或概率测量的绝对值低于阈值的时候,阈值检查则失败。接下来将会公开这样的阈值的示例。
例如,索引i处的给定的二进制数字的对数似然比值LLRi代表那个给定的二进制数字是二进制0或二进制1的确定性。如果对数似然比值接近于零(其是阈值检查失败的指示),在这个给定的二进制数字处执行分支。阈值检查的另外的示例是:
,其中LLRi是索引i处的二进制数字的对数似然比值,其中对数似然比值被确定
,其中Hi是索引i处的二进制数字的熵值,
,其中Ii是索引i处的二进制数字的自信息值。
在这里,符号意味着基于与阈值的比较来作出决定。通过pi来表示索引i处的二进制数字被解码成二进制1的概率。可接着由在极性码的逐位解码中获取的估计的概率来确定对数似然比值,即。假定二进制对称信道,可确定熵值,即, 。可将自信息确定为。
在已经完成步骤S104、S106、S108中的逐位解码之后,信息解码器200可以被配置为匆匆看过(run through)多个并行的解码实例并且选择具有是正确的最高概率的候选的解码序列(通过例如累积那个候选的解码序列中的二进制数字上的概率)。因此,根据实施例,信息解码器200被配置为在已经执行了步骤S108之后执行步骤S110和S112:
S110:信息解码器200重复(步骤S104、S106、S108中的)逐位解码直到已经解码了编码序列的所有二进制数字。这导致至少两个候选的解码序列。
S112:信息解码器200把除至少两个候选的解码序列中的一个候选的解码序列之外的全都丢弃,导致一个单个解码序列。
在执行列表解码之后,信息解码器200可借此选择具有是正确的最高概率的候选的序列。现在将公开与信息解码器200如何可以把除至少两个候选的解码序列中的一个候选的解码序列之外的全都丢弃有关的两个实施例。
根据第一实施例,信息解码器累积候选的解码序列中的二进制数字上的概率。根据这个实施例,信息解码器200被配置为通过执行步骤S112a而在步骤S112中把除至少两个候选的解码序列中的一个候选的解码序列之外的全都丢弃:
S112a:信息解码器200把至少两个候选的解码序列中的具有最高累积的概率值的该候选的解码序列选为一个单个解码序列。
步骤S112a代表只使用信息解码器200中的信息的独立技术。另一种方式是最后执行循环冗余校验。这可以是在多个候选的解码序列之中挑选单个候选的解码序列的甚至更有把握的方式。因此,根据第二实施例,信息解码器200被配置为通过执行步骤S112b和步骤S112c而在步骤S112中把除至少两个候选的解码序列中的一个候选的解码序列之外的全都丢弃:
S112b:信息解码器200针对至少两个候选的解码序列中的每个候选的解码序列执行相应的循环冗余校验。
S112c:信息解码器200把至少两个候选的解码序列中的通过了它的循环冗余校验的该候选的解码序列选为一个单个解码序列。
虽然上面已经公开了按照正在被解码的编码序列的顺序对连续的二进制数字中的至少一些执行阈值检查,但是可以对所有这些连续的二进制数字执行阈值检查。因此,根据实施例,按照正在被解码的编码序列的顺序对每个连续的二进制数字执行步骤S106中的阈值检查。
现在参考基于上面公开的实施例中的至少一些实施例说明如由根据一个特定实施例的信息解码器200执行的用于将编码序列解码成解码序列的方法的图6。
S201:信息解码器300获得正在被解码的编码序列中的当前二进制数字的值。实现步骤S201的一种方式是执行步骤S102。
S202:信息解码器300确定索引i处的二进制数字被解码成二进制1的概率值pi(或者索引i处的二进制数字被解码成二进制0的概率1-pi)。实现步骤S202的一种方式是执行作为步骤S106的一部分的步骤S106a。
S203:信息解码器300评价索引i处的二进制数字被解码成二进制1(或二进制0)的位不确定性判据。实现步骤S203的一种方式是执行作为步骤S106的一部分的步骤S106b。
S204:如果位不确定性判据的评价是成功的,信息解码器300固定索引i处的、被解码成它的最可能的值(即,取决于pi的值而被解码成二进制0或二进制1)的二进制数字。
S205:如果位不确定性判据的评价失败,信息解码器300在索引i处的二进制数字处将解码序列分支成两个候选的解码序列。此外,信息解码器300固定索引i处的二进制数字以在两个候选的解码序列中的一个中具有二进制值0并且在两个解码的候选的解码序列中的另一个中具有二进制值1。实现步骤S205的一种方式是执行步骤S108。
逐位解码期间的每个分支因此创建候选的解码序列的列表,其中每个分支位有效地产生一对候选的解码序列,其中分支位在一个候选的解码序列中被固定到二进制0并且在另一个候选的解码序列中被固定到二进制1。
S206:信息解码器300将两个候选的序列添加到候选的解码序列的列表。
重复步骤S201-S206直到已经解码了整个编码序列,如在步骤S110中那样。
可以接着执行上面公开的步骤S112、S112a、S112b、S112c中的任何步骤以便选择单个解码序列。
图7说明了具有已经达到大小为4的列表的极性码的列表解码的示例。在这个示例中,概率表明了每个位等于1的评价的似然。其概率在0.5±0.2之间的任何位在这个示例中据说是不确定的并且因此被分支出来。这已经导致了四个不同路径。在图7的示例中,只有第三路径在位5处指示0(将位5解码为1的概率是0.18并且因此位5被解码为0)并且因此这个路径被选为正确的解码序列。
图8示出了极性码的列表解码的更一般的说明,其中不确定的二进制数字的序列可以导致候选的解码序列的子树。更详细地,图8在800处说明了正在被解码的编码序列的顺序。针对二进制数字中的一些,阈值检查是成功的并且这些二进制数字被标识为固定的位。这样的固定的位的连续顺序定义了一条路径810。针对二进制数字中的一些,阈值检查失败并且这些二进制数字被标识为不确定的位。针对阈值检查的每个失败,执行将解码序列分支成两个候选的解码序列,导致针对需要被评价的不确定的位的多条路径820a、820b。在解码结束时,极有可能基于具有累积的概率值(与所有其它候选的解码序列相比较)来选择多条路径820a、820b中的一条路径830以代表解码序列。
图9利用多个功能单元示意性地说明了根据实施例的信息解码器200的组件。使用能够执行存储在例如以存储介质230的形式的计算机程序产品1110(如在图11中)中的软件指令的适合的中央处理单元(CPU)、多处理器、微控制器、数字信号处理器(DSP)等中的一个或多个的任何组合来提供处理电路系统210。可以作为至少一个专用集成电路(ASIC)或现场可编程门阵列(FPGA)来进一步提供处理电路系统210。
具体地,如上面所公开的,处理电路系统210被配置为促使信息解码器200执行操作或步骤S102-S112的集合。例如,存储介质230可存储操作的集合并且处理电路系统210可被配置为从存储介质230检索操作的集合以促使信息解码器200执行操作的集合。可作为可执行指令的集合来提供操作的集合。
因此,处理电路系统210借此被布置为执行如本文中公开的方法。存储介质230还可包括例如可以是磁存储器、光存储器、固态存储器或者甚至远程安装的存储器中的任何单独的一种或组合的持久性存储设备。信息解码器200可以进一步包括至少被配置用于与信息编码器110进行通信的通信接口220。同样地,通信接口220可以包括一个或多个传送器和接收器(包括逻辑和数字组件)。处理电路系统210例如通过将数据和控制信号发送到通信接口220和存储介质230、通过从通信接口220接收数据和报告以及通过从存储介质230检索数据和指令来控制信息解码器200的一般操作。省略了信息解码器200的其它组件以及有关的功能性以便不会模糊本文中呈现的概念。
图10利用多个功能模块示意性地说明了根据实施例的信息解码器200的组件。图10的信息解码器200包括多个功能模块;被配置为执行步骤S102的获得模块210a、被配置为执行步骤S104的解码模块210b、被配置为执行步骤S106的检查模块210c以及被配置为执行步骤S108的分支模块210f。
图10的信息解码器200可进一步包括多个可选的功能模块,诸如下列中的任一项:被配置为执行步骤S106a的确定模块210d、被配置为执行步骤S106b的评价模块210e、被配置为执行步骤S110的重复模块210g、被配置为执行步骤S112的丢弃模块210h、被配置为执行步骤S112a的选择模块210i、被配置为执行步骤S112b的循环冗余校验(CRC)模块210j以及被配置为执行步骤S112c的选择模块210k。
概括地说,可在一个实施例中仅以硬件来实现每个功能模块210a-210k或和可在另一个实施例中在软件的帮助下来实现每个功能模块210a-210k,即,后面的实施例具有存储在存储介质230上的计算机程序指令,其当在处理电路系统上运行时使信息解码器200执行在上面与图10一起提及的对应步骤。还应当提及的是,即使模块对应于计算机程序的部分,它们在其中无需是分立的模块,而是其中以软件来实现它们的方式依赖于所使用的编程语言。优选地,可以通过处理电路系统210、可能与功能单元220和/或230合作来实现一个或多个或所有功能模块210a-210k。处理电路系统210可因此被配置为从存储介质230取如由功能模块210a-210k提供的指令并且被配置为执行这些指令,从而执行如本文中公开的任何步骤。
可作为独立装置或者作为至少一个另外的装置的一部分来提供信息解码器200。例如,可在无线接入网节点中(诸如在无线电基站、基站收发信台、节点B或演进节点B中)或者在终端用户装置中(诸如在便携式无线装置、移动台、移动电话、手机、无线本地环路电话、用户设备(UE)、智能电话、膝上型计算机、平板计算机、传感器装置、物联网装置或无线调制解调器中)提供信息解码器200。
因此,可在第一装置中执行由信息解码器200执行的指令的第一部分并且可在第二装置中执行由信息解码器200执行的指令的第二部分;本文中公开的实施例不限于在其上可执行由信息解码器200执行的指令的任何特定数量的装置。因此,根据本文中公开的实施例的方法适合被驻留在云计算环境中的信息解码器200执行。因此,虽然在图9中说明了单个处理电路系统210,但是可把处理电路系统210分配给多个装置或节点。同样适用于图10的功能模块210a-210k以及图11(参见下面)的计算机程序1120。
图11示出了包括计算机可读存储介质1130的计算机程序产品1110的一个示例。在这个计算机可读存储介质1130上,可存储计算机程序1120,那个计算机程序1120可促使处理电路系统210以及操作耦合于此的实体和装置(诸如通信接口220和存储介质230)执行根据本文中描述的实施例的方法。计算机程序1120和/或计算机程序产品1110可因此提供用于执行如本文中公开的任何步骤的部件。
在图11的示例中,作为光盘(诸如CD(压密盘)或DVD(数字化通用盘)或蓝光盘)来说明计算机程序产品1110。计算机程序产品1110还可以体现为存储器(诸如随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)或电可擦除可编程只读存储器(EEPROM))并且更具体地体现为外部存储器(诸如USB(通用串行总线)存储器或闪速存储器(诸如压密闪速存储器))中的装置的非易失性存储介质。因此,虽然计算机程序1120在这里被示意性地示出为所描绘的光盘上的轨道,但是可以以适合于计算机程序产品1110的任何方式来存储计算机程序1120。
上面已经参考了一些实施例来主要描述本发明的概念。然而,正如本领域技术人员容易意识到的,正如由所附的专利权利要求所限定的,除了上面公开的实施例以外的其它实施例同样可能在本发明的概念的范围内。例如,虽然上面公开的极性码已经被描述为是二进制值的,但是预见到本文中公开的实施例可例如通过确定任意非二进制符号的多维对数似然(或其它不确定性判据)而适用于非二进制值的极性码的解码。
Claims (16)
1.一种用于将编码序列()解码成解码序列()的方法,由信息解码器(200)来执行所述方法,所述方法包括:
获得(S102)所述编码序列,已经使用极性码对所述编码序列进行了编码;以及
通过下列操作将所述编码序列逐位解码(S104)成所述解码序列:
按照正在被解码的所述编码序列的顺序执行(S106)至少一些连续的二进制数字的阈值检查,所述阈值检查评价所述至少一些连续的二进制数字的位不确定性判据;以及
每当所述阈值检查失败总是将所述解码序列分支(S108)成两个候选的解码序列。
2.根据权利要求1所述的方法,其中执行所述阈值检查包括:
确定(S106a)所述至少一些连续的二进制数字中的每一个的一个概率值。
3.根据权利要求2所述的方法,其中使用所述至少一些连续的二进制数字中的给定的二进制数字的所述一个概率值来评价所述给定的二进制数字的所述位不确定性判据。
4.根据权利要求3所述的方法,其中评价所述给定的二进制数字的所述位不确定性判据包括:
使用所述给定的二进制数字的所述概率值来确定(S106b)对数似然比、熵、自信息或概率测量中的至少一个;以及
其中每当所述对数似然比、熵、自信息或概率测量低于阈值,所述阈值检查失败。
5.根据在前的权利要求中的任一项所述的方法,进一步包括:
重复(S110)所述逐位解码直到已经解码所述编码序列的所有二进制数字,导致至少两个候选的解码序列;以及
把除所述至少两个候选的解码序列中的一个候选的解码序列之外的全都丢弃(S112),导致一个单个解码序列。
6.根据权利要求2和5所述的方法,其中所述丢弃包括:
选择(S112a)所述至少两个候选的解码序列中的具有最高累积的概率值的该候选的解码序列作为所述一个单个解码序列。
7.根据权利要求2和5所述的方法,其中所述丢弃包括:
针对所述至少两个候选的解码序列中的每个候选的解码序列执行(S112b)相应的循环冗余校验;以及
选择(S112c)所述至少两个候选的解码序列中的通过了它的循环冗余校验的该候选的解码序列作为所述一个单个解码序列。
8.根据在前的权利要求中的任一项所述的方法,其中所述分支是由所述至少一些连续的二进制数字中的所述阈值检查失败的二进制数字具有在所述编码序列的所述逐位解码期间被解码成0和1的等概率引起的。
9.根据在前的权利要求中的任一项所述的方法,其中所述分支引起所述至少一些连续的二进制数字中的所述阈值检查失败的二进制数字在所述两个候选的解码序列当中的第一候选的解码序列中被设置为二进制0并且在所述两个候选的解码序列当中的第二候选的解码序列中被设置为二进制1。
10.根据在前的权利要求中的任一项所述的方法,其中按照正在被解码的所述编码序列的顺序对每个连续的二进制数字执行所述阈值检查。
11.一种用于将编码序列()解码成解码序列()的信息解码器(200),所述信息解码器(200)包括处理电路系统(210),所述处理电路系统被配置为促使所述信息解码器(200):
获得所述编码序列,已经使用极性码对所述编码序列进行了编码;以及
通过下列操作将所述编码序列逐位解码成所述解码序列:
按照正在被解码的所述编码序列的顺序执行至少一些连续的二进制数字的阈值检查,所述阈值检查评价所述至少一些连续的二进制数字的位不确定性判据;以及
每当所述阈值检查失败总是将所述解码序列分支成两个候选的解码序列。
12.一种用于将编码序列()解码成解码序列()的信息解码器(200),所述信息解码器(200)包括:
处理电路系统(210);以及
计算机程序产品(1110),所述计算机程序产品存储指令,所述指令在被所述处理电路系统(210)执行时促使所述信息解码器(200):
获得所述编码序列,已经使用极性码对所述编码序列进行了编码;以及
通过下列操作将所述编码序列逐位解码成所述解码序列:
按照正在被解码的所述编码序列的顺序执行至少一些连续的二进制数字的阈值检查,所述阈值检查评价所述至少一些连续的二进制数字的位不确定性判据;以及
每当所述阈值检查失败总是将所述解码序列分支成两个候选的解码序列。
13.一种用于将编码序列()解码成解码序列()的信息解码器(200),所述信息解码器(200)包括:
获得模块(210a),所述获得模块被配置为获得所述编码序列,已经使用极性码对所述编码序列进行了编码;以及
解码模块(210b),所述解码模块被配置为将所述编码序列逐位解码成所述解码序列,
检查模块(210c),所述检查模块被配置为按照正在被解码的所述编码序列的顺序执行至少一些连续的二进制数字的阈值检查,所述阈值检查评价所述至少一些连续的二进制数字的位不确定性判据;以及
分支模块(210f),所述分支模块被配置为每当所述阈值检查失败总是将所述解码序列分支成两个候选的解码序列。
14.根据权利要求11至13中的任一项所述的信息解码器(200),进一步被配置为执行根据权利要求2至10中的任一项所述的方法。
15.一种用于将编码序列()解码成解码序列()的计算机程序(1120),所述计算机程序包括计算机代码,所述计算机代码当在信息解码器(200)的处理电路系统(210)上运行时促使所述信息解码器(200):
获得(S102)所述编码序列,已经使用极性码对所述编码序列进行了编码;以及
通过下列操作将所述编码序列逐位解码(S104)成所述解码序列:
按照正在被解码的所述编码序列的顺序执行(S106)至少一些连续的二进制数字的阈值检查,所述阈值检查评价所述至少一些连续的二进制数字的位不确定性判据;以及
每当所述阈值检查失败总是将所述解码序列分支(S108)成两个候选的解码序列。
16.一种计算机程序产品(1110),所述计算机程序产品包括根据权利要求15所述的计算机程序(1120)和在其上存储了所述计算机程序的计算机可读存储介质(1130)。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2016/059656 WO2017186307A1 (en) | 2016-04-29 | 2016-04-29 | Polar code successive cancellation list decoding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109314528A true CN109314528A (zh) | 2019-02-05 |
Family
ID=55910244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680087287.3A Pending CN109314528A (zh) | 2016-04-29 | 2016-04-29 | 极性码逐位取消列表解码 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10651873B2 (zh) |
EP (1) | EP3449573A1 (zh) |
CN (1) | CN109314528A (zh) |
WO (1) | WO2017186307A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10383106B2 (en) * | 2017-01-04 | 2019-08-13 | Coherent Logix, Incorporated | Scrambling sequence design for embedding UE ID into frozen bits for DCI blind detection |
US11233532B2 (en) | 2018-03-15 | 2022-01-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Information decoder for polar codes |
EP3782289A4 (en) * | 2018-04-20 | 2021-04-07 | Telefonaktiebolaget LM Ericsson (publ) | INFORMATION DECODER FOR POLAR CODES |
US11082067B1 (en) * | 2019-10-03 | 2021-08-03 | Xilinx, Inc. | System and method for determining bit types for polar encoding and decoding |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1217838A (zh) * | 1996-05-03 | 1999-05-26 | 艾利森公司 | 应用分散误差检测位的数据通信系统和方法 |
CN101997551A (zh) * | 2009-08-12 | 2011-03-30 | 索尼公司 | 编码设备、信息处理设备、编码方法和数据传输方法 |
US20150263767A1 (en) * | 2014-03-11 | 2015-09-17 | Postech Academy-Industry Foundation | List decoding method for polar code and memory system using the same |
US20150295593A1 (en) * | 2014-04-10 | 2015-10-15 | Samsung Electronics Co., Ltd | Apparatus and method for encoding and decoding data in twisted polar code |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103368583B (zh) | 2012-04-11 | 2016-08-17 | 华为技术有限公司 | 极性码的译码方法和译码装置 |
CN103780329B (zh) * | 2012-10-17 | 2018-05-04 | 华为技术有限公司 | 一种编译码的方法、装置及系统 |
US10193578B2 (en) * | 2014-07-10 | 2019-01-29 | The Royal Institution For The Advancement Of Learning / Mcgill University | Flexible polar encoders and decoders |
EP3504801B1 (en) * | 2017-05-12 | 2021-04-07 | Huawei Technologies Co., Ltd. | Methods and apparatus for transmission and reception with polar codes |
-
2016
- 2016-04-29 EP EP16720104.5A patent/EP3449573A1/en not_active Withdrawn
- 2016-04-29 WO PCT/EP2016/059656 patent/WO2017186307A1/en active Application Filing
- 2016-04-29 US US16/095,492 patent/US10651873B2/en active Active
- 2016-04-29 CN CN201680087287.3A patent/CN109314528A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1217838A (zh) * | 1996-05-03 | 1999-05-26 | 艾利森公司 | 应用分散误差检测位的数据通信系统和方法 |
CN101997551A (zh) * | 2009-08-12 | 2011-03-30 | 索尼公司 | 编码设备、信息处理设备、编码方法和数据传输方法 |
US20150263767A1 (en) * | 2014-03-11 | 2015-09-17 | Postech Academy-Industry Foundation | List decoding method for polar code and memory system using the same |
US20150295593A1 (en) * | 2014-04-10 | 2015-10-15 | Samsung Electronics Co., Ltd | Apparatus and method for encoding and decoding data in twisted polar code |
Non-Patent Citations (2)
Title |
---|
CAO CONGZHE: "Low complexity list successive cancellation decoding of polar coeds", 《IET COMMUNICATION》 * |
ZHANG ZHAOYANG: "A Split-Reduced Successive Cancellation List Decoder for Polar Codes", 《IEEE JOURNAL ON SELECTED AREAS IN COMMUNICATIONS》 * |
Also Published As
Publication number | Publication date |
---|---|
EP3449573A1 (en) | 2019-03-06 |
US10651873B2 (en) | 2020-05-12 |
US20190132009A1 (en) | 2019-05-02 |
WO2017186307A1 (en) | 2017-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101143695B1 (ko) | 트렐리스-기반 수신기와 이를 위한 프로세서 시스템, 방법 및 컴퓨터 판독가능 매체 | |
Moosavi et al. | Fast blind recognition of channel codes | |
US10348331B2 (en) | Decoding method and apparatus of polar code | |
US10735140B2 (en) | Encoding and decoding using a polar code | |
CN109314528A (zh) | 极性码逐位取消列表解码 | |
WO2018137635A1 (zh) | Polar码编译码方法及装置 | |
CN109842418A (zh) | 一种基于比特翻转的极化码置信传播译码方法 | |
WO2016172940A1 (zh) | 极性码的译码方法和译码装置 | |
CN108574561A (zh) | 极化码编码的方法和装置 | |
CN102694625A (zh) | 一种循环冗余校验辅助的极化码译码方法 | |
CN109257140B (zh) | 一种极化信道可靠度排序的方法、极化码编码方法及装置 | |
El‐Khamy et al. | Binary polar codes are optimised codes for bitwise multistage decoding | |
CN102132512A (zh) | 用于移除电信网络中pdcch检测错误的系统和方法 | |
CN101635611A (zh) | 一种信道译码方法和装置 | |
CN107645297A (zh) | 控制解码处理的方法、计算设备及移动装置 | |
Su et al. | Blind identification of convolutional encoder parameters | |
Song et al. | Low-complexity segmented CRC-aided SC stack decoder for polar codes | |
US20170041041A1 (en) | System and Apparatus for Decoding Tree-Based Messages | |
CN109004939A (zh) | 极化码译码装置和方法 | |
US11233532B2 (en) | Information decoder for polar codes | |
CN102832954A (zh) | 一种基于软信息平均最小值的Turbo码译码迭代停止方法 | |
WO2020042089A1 (zh) | Scl并行译码方法、装置及设备 | |
JP5276673B2 (ja) | 不均一なメッセージ保護を提供するためのシステムおよび方法 | |
CN105610550B (zh) | 一种用于电力线载波通信的Viterbi译码方法 | |
EP3782289A1 (en) | Information decoder for polar codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190205 |