CN114073024B - 极性码的卷积预编码和解码 - Google Patents
极性码的卷积预编码和解码 Download PDFInfo
- Publication number
- CN114073024B CN114073024B CN202080049814.8A CN202080049814A CN114073024B CN 114073024 B CN114073024 B CN 114073024B CN 202080049814 A CN202080049814 A CN 202080049814A CN 114073024 B CN114073024 B CN 114073024B
- Authority
- CN
- China
- Prior art keywords
- code
- convolutional
- decoding
- codeword
- list
- 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.)
- Active
Links
- 241000169170 Boreogadus saida Species 0.000 title abstract description 16
- 238000000034 method Methods 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 claims abstract description 22
- 238000012937 correction Methods 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 6
- 239000011159 matrix material Substances 0.000 claims description 16
- 230000015654 memory Effects 0.000 claims description 10
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 11
- 238000004590 computer program Methods 0.000 description 9
- 206010009944 Colon cancer Diseases 0.000 description 7
- 238000013459 approach Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000010287 polarization Effects 0.000 description 4
- 238000007476 Maximum Likelihood Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000011241 protective layer Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2933—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using a block and a convolutional code
-
- 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/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
- H03M13/235—Encoding of convolutional codes, e.g. methods or arrangements for parallel or block-wise encoding
-
- 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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2939—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using convolutional 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/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4115—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors list output Viterbi 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/61—Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
- H03M13/611—Specific encoding aspects, e.g. encoding by means of 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/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6362—Error control coding in combination with rate matching by puncturing
-
- 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0045—Arrangements at the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0064—Concatenated codes
- H04L1/0065—Serial concatenated 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/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
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0057—Block codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
公开了用于极性码的卷积预编码和解码的设备、系统和方法。一种用于在数据处理系统中进行纠错的示例方法包括:接收噪声码字,所述码字是基于外部流可解码码和内部极性码生成的,并且在由所述解码器接收之前被提供给通信信道或存储信道,所述流可解码码的特征在于网格,以及基于所述网格对所述噪声码字向量执行列表解码操作,以生成多个信息符号,列表解码操作被配置为遍历多个解码阶段的一个或多个阶段处的多个状态。
Description
相关申请的交叉引用
本专利文件要求2019年6月3日提交的题为“CONVOLUTIONAL PRECODING ANDDECODING OF POLAR CODES”的美国临时专利申请62/856,646号的优先权和权益。该专利申请的全部内容通过引用结合到本文中,作为本专利文件的公开内容的一部分。
技术领域
本文一般涉及纠错码,更具体地,涉及极性码的卷积预编码和解码。
背景技术
通信系统通常采用信道编码来提高数据传输的可靠性,并在存在各种类型的噪声和差错的情况下确保通信质量。极性编码是大约十年前提出的一种通用且非常强大的纠错技术,它目前用于第五代(5G)无线标准的eMBB模式中控制信道的编码。除了无线通信之外,极性码可以在光纤网络、数据存储、卫星通信等中具有应用。
发明内容
所公开的技术的实施例涉及用于极性码的卷积预编码和解码的方法、系统和设备,其可用于各种通信系统,包括但不限于无线系统、有线系统和数据存储系统。所描述的实施例有利地实现了具有较低实现复杂度和更好纠错能力的语音、视频、数据和其它信息的交换,从而支持高移动性环境中的高数据率。
在一个示例方面,一种用于改进解码器的纠错能力的方法包括:接收噪声码字,所述码字是基于外部流可解码码和内部极性码生成的,并且在由所述解码器接收之前被提供给通信信道或存储信道,所述流可解码码的特征在于网格,以及基于所述网格对所述噪声码字向量执行列表解码操作,以生成多个信息符号。所述列表解码操作被配置为遍历多个解码阶段的一个或多个阶段处的多个状态,其中所述外部流可解码码的任何噪声码字的第i个符号可以基于所述噪声码字的第一个i+w个符号被解码为有效符号,其中所述外部流可解码码的每个码字具有n个符号的长度。其中n>i+w,并且其中n,i和w是正整数。
在另一示例方面,一种用于改善编码器的纠错能力的方法包括:接收多个信息符号;通过对所述多个信息符号执行卷积编码操作来生成多个卷积编码符号,其中,所述卷积编码操作基于时变网格;通过对所述多个卷积编码符号执行极性编码操作来生成多个极性编码符号,以及提供所述多个极性编码符号以供传输或存储。
在又一示例方面,上述方法可以由包括处理器和/或存储器的装置或设备来实现。
在又一示例方面,这些方法可以以处理器可执行指令的形式来实现,并存储在计算机可读程序介质上。
在本专利文献中描述的主题可以以提供一个或多个以下特征的特定方式来实现。
附图说明
图1示出了极性码的卷积预编码的示例。
图2示出了生成删余模式的算法的示例。
图3示出了卷积列表连续消除解码器的示例。
图4比较了循环冗余校验(CRC)辅助列表连续消除(LSC)解码和卷积LSC解码的帧差错率(FER)性能。
图5是用于卷积LSC编码的示例方法的流程图。
图6是用于卷积LSC解码的示例方法的流程图。
图7是根据当前公开的技术的一些实施例的装置的一部分的框图表示。
具体实施方式
极性码是一种使数据传输的速率和可靠性最大化的新方法。在示例中,已经采用极性码来改善5G中的用于控制信道的编码性能。同时,降低了设计复杂度,保证了服务质量。极性码是一种线性块纠错码,其码构造基于短内核码的多次递归级联,短内核码将物理信道转换为虚拟外信道。当递归级联的数目变大时,虚拟信道往往具有非常高的可靠性或非常低的可靠性(换句话说,它们极化),并且数据比特被分配给最可靠的信道。
所公开的技术的实施例涉及极性码的卷积预编码和解码,其中极性码的卷积预编码和解码在实现极性码的性能潜力的同时降低了通信接收机的复杂性。例如,所公开的实施例可以用于减小极性码的列表连续消除(LSC)(或连续消除列表(SCL))解码中所需的列表大小,这又减小了解码器的总体计算复杂度。仿真结果表明,可以实现列表大小的至少50%的减少。在示例性实施例中,基于卷积码的时变删余模式来设计预编码,所述时变删余模式在未冻结的极化比特信道(也称为未冻结的合成信道)上提供平衡的差错校正。
在本文件中使用章节标题来改善描述的可读性,而不以任何方式将讨论或实施例(和/或实现)仅限于相应章节。因此,在不同部分中公开的实施例可以彼此一起使用。
极性码和列表连续消除(LSC)解码的介绍
极性码。在本文件中,所公开的技术的实施例使用(n,k)极性编码器,其中n=2m对应于m个极化级,并且k表示极性码中的信息比特的数量,导致n-k个冻结比特。在一些实施例中,冻结比特被设置为零。在其它实施例中,动态计算冻结比特。在其它实施例中,计算冻结比特,使得它们在发射机和接收机处都是先验已知的。发送符号{xi}与未编码信息比特{ui}之间的关系由下式给出:
这里,x=uGn被称为极化变换,并且Gn是极性码生成器(或生成)矩阵。在一些实施例中,极性码生成器矩阵是2×2内核矩阵的第m次Kronecker幂乘以长度n比特反转矩阵Bn,并且u表示包括k个信息比特和n-k个冻结比特的未编码信息比特向量。在示例中,对于m=3,给出了2×2内核矩阵(表示为F)和内核矩阵的第m次Kronecker幂:
在一些实施例中,可以使用不同的2×2内核矩阵(例如,)来生成极性码。在其它实施例中,可以使用N×N内核矩阵来生成极性码,其中N>2。在其它实施例中,在生成极性码时可以省略比特反转矩阵Bn。
列表连续消除(LSC)解码。极性码的列表连续消除(LSC)解码通常在接收机处的解码期间执行,并且通过生成L个候选码字来操作,其中L被称为列表大小。L的值决定了纠错性能和计算复杂度之间的折衷。
当执行列表连续消除解码时,在解码过程的每个阶段,维护L个残存候选者的列表。例如,在列表连续消除解码期间,在每个阶段,使用先前解码的值来解码当前值。在解码期间,如果比特值未知,则LSC解码器首先假定该值是“0”,然后是“1”,并对这两种情况执行解码操作。在解码过程期间可以进行的假设的数目对应于列表大小L。已经表明,对于中等列表大小,LSC解码接近最大似然(ML)解码。在一些现有的实现中,为了匹配Turbo和LDPC码的性能,例如,循环冗余校验(CRC)码与极性码串联级联,并且CRC比特被用于从LSC解码器的候选者中选择有效码字,尽管以更大的复杂度为代价。CRC校验点提供一些辅助信息,这些信息可以帮助解码器在整个解码过程中检测到可能发生的一些差错。
极性码的卷积预编码及解码综述
所公开的技术的实施例用卷积码代替CRC,以有利地为所有信息而不是一个或几个检查点提供连续且有目的地不等的保护层。与仅能够验证整个或大段的信息向量的CRC相比(CRC几乎不给出关于解码差错的位置的信息,并且迫使解码器基于统计知识来猜测位置),卷积码为不匹配的符号提供了精确的位置。卷积码的使用不必增加最小距离,而是在进行中提供局部纠错能力。在本文件中,提供这种进行中局部纠错能力的纠错码(包括但不限于这里描述的卷积码)被称为“流可解码码”。
卷积码用作极性信息比特上的附加保护层。由于许多信息比特与基本上无噪声的极性比特信道相关联,因此不需要进一步的保护,这是信道极化的结果,因此所公开的技术的实施例关于系统卷积码提供了删余模式,以避免过保护,从而提高了总的编码率。
此外,极性码的卷积预编码和解码有利地使得能够在极性码的连续消除解码算法中以较小的列表大小达到期望的解码差错概率,这转化为解码器的较低计算复杂度。较低的计算复杂度转化为无线通信中较小的芯片尺寸、较高的吞吐量和较低的功耗。
用于所公开的技术的实施例的编码结构的示例
图1示出了(n,k)极性码(120)和高速率卷积码(110)之间的级联方案的示例,总速率由/>给出。在一些实施例中,以至少两种方式生成高速率卷积码:
(1)具有大的母码速率的具有大量状态的较高复杂度的卷积码;或
(2)具有中等数量的状态和时变删余模式的较低复杂度的卷积码。
根据所公开的技术的实施例,卷积码提供进行中的局部纠错能力,并且被配置为具有小的解码延迟。卷积码中的解码延迟与它们的追溯深度参数相关联,追溯深度参数本身与码的约束长度相关联。在一个示例中,具有母码速率1/2的卷积码的追溯深度可以被估计为其约束长度的5倍。在另一个示例中,对于重度删余的卷积码,追溯深度可以更大。
在一个示例中,速率为1/2的母卷积码的生成矩阵表示为Gconv=[1+D2,1+D+D2]。在删余之前的编码器可以被描述为:
本文中,i=1,2,...,l且v0=v-1=0。因此,附加的编码复杂度在块长度上是线性的,这不增加总的渐近复杂度。在该框架中,卷积极性解码器的结构确实要求卷积码的终止。因此,母卷积码可以被看作/>线性块码,其中,根据与卷积预编码相关联的额外冗余度/>来确定/>的值。
可以通过在母码上删余一些坐标来产生图1所示的高速率卷积码。如果假设第i个卷积符号被表示为(u2i-1,u2i),则直观地清楚其第i个符号完全没有被删余的卷积码比其第i个符号中的一个或两个比特被删余的相同卷积码围绕第i个符号提供了更好的局部纠错。基于该方法,所公开的删余算法在所有/>个符号之外的符号中删余一个比特,其中,未删余的符号出现在更有噪声的比特信道周围。
删余算法的示例
根据所公开的技术的一些实施例,设计卷积码的时变删余模式的方法在底层传输信道是时变的或期望不等差错保护的情况下是有益的。例如,所设计的卷积码的非周期性删余模式可用于平衡时变底层通信信道的比特差错概率。这是基于将通信信道的不同实例划分成具有几乎相等的累积差错的子组,然后将相等数量的冗余比特分配给每个子集。
在一些实施例中,可以将比特信道在保持它们的顺序的同时划分成r个子集i=1,...r,这导致在SC解码期间,对于所有i≤j,集合i中的所有比特信道出现在集合j中的比特信道之前。此外,噪声被均衡,使得在每个组中产生差错的概率大致相同。这些概率可以由下式表示
该算法以空子集开始,并且将比特信道逐个添加到该子集中,同时向每个分配删余符号,直到该子集中的比特信道的总差错概率达到粗略阈值
当达到该阈值时,转而分配非删余符号。然后,该算法类似地进行到下一个部分。因此,每个部分以一个非删余符号结束,该符号是用于在整个SC解码中提供局部纠错的附加奇偶校验。在其它实施例中,多于一个的附加奇偶校验被分配给各个部分。
图2示出了用于生成删余模式的示例性实现,其中噪声级由下式给出:qj=-log(1-pj)。如图所示,算法的输出是长度为的二进制向量c,其对应于长度/>的卷积码上的删余模式,其中当第i个比特被删余时,ci=1。在该示例中,数值模拟建议在卷积符号中删余第一比特而不是第二比特(参见图2中第9行)。
在一些实施例中,时变删余模式可用于改善在时变传输信道中使用递增冗余(IR)的混合ARQ(自动重复请求)方案的性能。一旦确定在接收机处传输尚未被成功解码,IR-HARQ方案通常在后续重传中传输奇偶校验比特的不同集合(和/或增加的数量的奇偶校验)以改善所接收的SNR。可以使用时变删余模式来生成(低速率母码的)编码器的输出的不同冗余版本。
在一些实施例中,时变删余模式可用于改善速率自适应编码和调制方案的性能。在该框架中,在接收机处周期性地估计信道,并且在分开的信道上将未来信道状态的估计(预测)发送回发射机。因此,发射机通过在不同的可用的具有变化的频谱效率的传输方案之间进行选择来适应瞬时信道质量,这可以使用如本文件中描述的时变删余模式来设计。
在一些实施例中,时变删余模式可用于提供不等差错保护(UEP),该不等差错保护(UEP)经常在频带受限信道上的集成语音和数据传输中使用。例如,最近的源编码技术(例如,码激励线性预测)可以提供良好质量的语音,但是源编码器输出比特中的一些比其它的对传输差错更敏感。在该文献中描述的时变删余模式很好地适用于该应用。UEP利用了这样的事实,即较少噪声的比特信道需要较少的二次保护。因此,均衡未冻结极性比特信道的差错级明显地提高了误帧率(FER)。
用于所公开的技术的实施例的解码结构的示例
根据所公开的技术的实施例,卷积码(例如,图1中的110)不仅仅用于验证连续消除解码器的输出(如在使用级联的CRC码时的情况)。替代地,卷积码被用于修改解码算法,以便只遵循对应于验证卷积码字的那些路径。因此,在该算法中不存在检查点,并且用差错防止方案替换二次差错检测机制。此外,与CRC辅助方案中的检查点相比,以更均衡的方式在比特信道中提供性能增强。
因此,在列表连续消除解码期间,所提出的解码算法在对应于底层卷积码的网格上保持跟踪有效码字。通过这样做,解码器只探索在进行中被验证的码字,并因此防止不必要的计算。
在示例中,假设(16,8)极性码具有未冻结的索引{i1,...,i8},并且其已经用在索引{1,3,7,9}处删余的(12,6)卷积码进行了预编码。卷积SC解码器以如下排序的批次揭示极性非冻结比特:
尽管可以实现卷积SC解码器,但是利用卷积码的预编码的主要优点之一体现在卷积LSC解码器中。通常有两种通用的方法来实现在卷积码网格上跟踪路径的列表解码器,它们仅在它们的截余方法上不同。假设列表大小由L给出。卷积LSC解码器的第一实现在跟踪在相同符号时隙处结束的L个最可能的路径的同时在网格上执行顺序解码。在每个步骤,它生成2L个新路径,其中L个最可能的路径被选择用于随后的解码步骤。
在第二种方法中,在列表大小L是固定的并且等于编码器中的最大状态数。这通常由2V给出,其中v是存储器元件的数量。这里,解码器跟踪L个更可能的路径,其中每个路径以不同的状态结束。在解码器的每次迭代中,生成2L个新路径,这对于以各个状态结束的路径,给出了两个不同的选项,并且其中不太可能的路径被丢弃。这类似于如图3中的示例所示的卷积码的Viterbi算法。如图所示,对于符号Si+1,4个路径中的每一个以不同的状态结束,并且使用卷积LSC解码器计算8个新路径。对于符号Si+1中的每个状态,两个选项中更可能的路径被保留,而另一个被丢弃。
数值模拟表明,在一些实施例中,第二种方法更有效,因为如果它通过解码从ML路径发散,跟踪以不同状态结束的解码路径提供了一种分集形式,则该分集形式有助于正确路径的恢复。图4比较了CRC辅助LSC解码和卷积LSC解码的误帧率(FER)性能。在该示例中,极性码具有长度n=512和速率1/2,(在CRC辅助LSC解码中)最后8个信息比特被用于CRC,并且(在卷积LSC解码中)基于先前描述的删余算法选择8个非删余符号。如图所示,卷积LSC解码优于具有相同L(例如,图4中的L=4)的CRC辅助LSC解码,并且略差于具有两倍列表大小(例如,图4中的L=8)的CRC辅助LSC解码。
计算复杂性
在网格上跟踪码字的计算复杂度在块长度上是线性的。卷积LSC解码器的计算复杂度由列表大小或等价地由卷积编码器中的状态数决定,其可以表示为在可以使用强卷积码的示例中,可以存在更多数量的状态,这需要增加列表大小或者使用次优解码器。
所公开的技术的方法和实现
图5是用于改善编码器的纠错能力的流程图。方法500包括在操作510,接收多个信息符号。
方法500包括在操作520,通过对多个信息符号执行卷积编码操作(例如,图1中的块110)来生成多个卷积编码符号,其中,卷积编码操作基于时变网格。在一些实施例中,时变网格包括来自各个时间处的各个状态的不同数量的输出分支。在其它实施例中,时变网格包括在各个解码阶段和/或时间处的不同数量的状态。
方法500包括在操作530,通过对多个卷积编码符号执行极性编码操作(例如,图1中的块120)来生成多个极性编码符号。
方法500包括在操作540,提供用于传输或存储的多个极性编码符号。
图6是用于改善解码器的纠错能力的流程图。在操作610,方法600包括接收噪声码字,该码字是基于外部流可解码码和内部极性码生成的,并且在解码器接收之前被提供给通信信道或存储信道,该流可解码码的特征在于网格。在示例中,图1示出了包括外部流可解码码(110)和内部极性码(120)的级联码。
方法600包括,在操作620,基于网格,对噪声码字向量执行列表解码操作以生成多个信息符号,列表解码操作被配置为遍历多个解码阶段的一个或多个阶段处的多个状态。
在一些实施例中,外部流可解码码的任何噪声码字的第i个符号可以基于噪声码字的前i+w个符号被解码为有效符号,其中外部流可解码码的每个码字具有n个符号的长度,其中n>i+w,并且其中n、i和w是正整数。在示例中,如图1所示,外部流可解码码可以是卷积码,并且w可以被配置为卷积码的约束长度的5倍。
在一些实施例中,流可解码码是卷积码。
在一些实施例中,w=5×K,其中K是卷积码的约束长度,并且其中K是正整数。
在一些实施例中,卷积码是码率大于1/2的高速率卷积码。
在一些实施例中,通过将时变删余模式应用于具有≤1/2的码率的低速率卷积码来生成高速率卷积码。
在一些实施例中,方法600还包括配置列表解码操作以遍历在每个阶段处的每个状态处的单个最可能路径的操作。
在一些实施例中,方法600还包括配置列表解码操作以跟踪每个阶段处的L个最可能的路径的操作,其中L是列表解码操作的列表大小。
在一些实施例中,极性编码操作包括将用于流可解码码的编码操作的输出乘以生成矩阵(G)。
在一些实施例中,生成器矩阵被定义为
这里,表示Kronecker积,B是n×n比特反转置换矩阵,n=2m是极代码的长度,并且m和n是整数。
在一些实施例中,网格是时变网格。在示例中,可以使用具有时变网格的卷积码来更好地在极性码的未冻结比特信道上均衡二次差错保护。
在一些实施例中,网格是时不变网格。
图7是可以适应当前公开的技术的一些实施例的设备的一部分的框图表示。诸如基站或无线设备(或UE)的装置705可以包括诸如微处理器的处理器电子设备710,该处理器电子设备710实现本文档中呈现的一个或多个技术(包括但不限于方法500和600)。装置705可以包括收发器电子设备715,用于通过一个或多个通信接口(例如天线720)发送和/或接收无线信号。装置705可以包括用于发送和接收数据的其它通信接口。装置705可以包括被配置为存储诸如数据和/或指令的信息的一个或多个存储器(未明确示出)。在一些实现中,处理器电子设备710可以包括收发器电子设备715的至少一部分。在一些实施例中,所公开的技术、模块或功能中的至少一些是使用装置705来实现的。在一些实施例中,所公开的技术可以被实现为计算机系统(例如,个人计算机、智能电话、平板电脑等)的一部分,以实现对存储在与计算机系统相关联的存储设备上的数据的改进的访问。所公开的实施例提供了增强的纠错能力,这提高了计算机系统中存储和访问的数据的可靠性;同时,通过与现有技术相比降低了的计算复杂度来实现这些增强。
应当理解,可以在由各种组件、电子硬件和/或软件模块和组件组成的设备中单独地或共同地实现所公开的各种实施例。例如,这些设备可以包括彼此通信连接的处理器、存储器单元、接口,并且还可以是从台式和/或膝上型计算机到移动设备等。处理器和/或控制器可以基于存储在存储介质上的程序代码的执行来执行各种公开的操作。处理器和/或控制器可以例如与至少一个存储器和至少一个通信单元通信,该通信单元使得能够通过通信链路直接或间接地与其它实体、设备和网络交换数据和信息。通信单元可以根据一个或多个通信协议提供有线和/或无线通信能力,并且因此它可以包括适当的发射机/接收机天线、电路和端口,以及对于数据和其它信息的适当发送和/或接收可能是必需的编码/解码能力。
在本专利文件中描述的主题和功能操作的实现可以在各种系统、数字电子电路中实现,或者在计算机软件、固件或硬件中实现,其包括在本说明书中公开的结构和它们的结构等同物、或者它们中的一个或多个的组合。本说明书中描述的主题的实现可以被实现为一个或多个计算机程序产品,即,在有形的和非暂时性的计算机可读介质上编码的计算机程序指令的一个或多个模块,用于由数据处理设备执行或控制数据处理设备的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、实现机器可读传播信号的物质组成、或它们中的一个或多个的组合。术语“数据处理单元”或“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机、或多处理器或计算机。除了硬件之外,该装置还可以包括为所讨论的计算机程序创建执行环境的代码,例如构成处理器固件、协议栈、数据库管理系统、操作系统或它们中的一个或多个的组合的代码。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)来编写,并且可以以任何形式来部署,包括作为独立的程序或作为模块、组件、子例程或其他适合在计算环境中使用的单元。计算机程序不必对应于文件系统中的文件。程序可以存储在保存其它程序或数据的文件的一部分(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所述程序的单个文件中、或者存储在多个协调文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。计算机程序可被部署为在一个计算机上执行或在位于一个站点或分布在多个站点上并通过通信网络互连的多个计算机上执行。
本说明书中描述的过程和逻辑流程可以由一个或多个可编程处理器来执行,这些可编程处理器执行一个或多个计算机程序,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路(例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路))执行,并且装置也可以实现为专用逻辑电路。
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括或被可操作地联接以从一个或多个大容量存储设备接收数据和/或向一个或多个大容量存储设备传送数据,所述大容量存储设备(例如磁盘、磁光盘或光盘)用于存储数据。然而,计算机不必须具有这样的设备。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM,EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路补充或结合在专用逻辑电路中。
虽然本专利文件包含许多细节,但这些不应被解释为对任何发明的范围或所要求保护的范围的限制,而应被解释为对针对特定发明的特定实施例可能是特定的特征的描述。在本专利文件中在分开的实施例的上下文中描述的某些特征也可以在单个实施例中组合实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中分开地实现或以任何合适的子组合来实现。此外,尽管上面可能将特征描述为以某些组合作用,并且甚至最初如此要求保护,但是在一些情况下,可以从组合中去除要求保护的组合中的一个或多个特征,并且要求保护的组合可以针对子组合或子组合的变型。
类似地,虽然在附图中以特定顺序描述了操作,但这不应被理解为要求以所示的特定顺序或以顺序的顺序执行这些操作,或者要求执行所有示出的操作以获得期望的结果。此外,在本专利文献中描述的实施方案中的各种系统组件的分离不应被理解为所有实施方案中都需要这种分离。
仅描述了几个实现和示例,并且可以基于在本专利文件中描述和示出的内容来进行其他实现、增强和变化。
Claims (13)
1.一种用于提高解码器的纠错能力的方法,包括:
接收噪声码字,所述码字是基于外部流可解码码和内部极性码生成的,并且在由所述解码器接收之前被提供给通信信道或存储信道,所述流可解码码的特征在于网格;以及
基于所述网格,对噪声码字向量执行列表解码操作以生成多个信息符号,所述列表解码操作被配置为遍历多个解码阶段中的一个或多个阶段处的多个状态,
其中所述外部流可解码码的任何噪声码字的第i个符号可以基于所述噪声码字的前i+w个符号被解码为有效符号,其中所述外部流可解码码的每个码字具有n个符号的长度,其中n>i+w,并且其中n、i和w是正整数。
2.根据权利要求1所述的方法,其中所述流可解码码是卷积码。
3.根据权利要求2所述的方法,其中w=5×K,其中K是所述卷积码的约束长度,并且其中K是正整数。
4.根据权利要求2所述的方法,其中所述卷积码是码率大于1/2的高速率卷积码。
5.根据权利要求4所述的方法,其中所述高速率卷积码是通过将时变删余模式应用于具有小于或等于1/2的码率的低速率卷积码来生成的。
6.根据权利要求1所述的方法,还包括:
将所述列表解码操作配置为遍历每个阶段的每个状态处的单个最可能路径。
7.根据权利要求1所述的方法,还包括:
将所述列表解码操作配置为跟踪每个阶段处最可能的L条路径,其中L是所述列表解码操作的列表大小。
8.根据权利要求1所述的方法,其中所述码字是通过极性编码操作基于所述外部流可解码码和所述内部极性码生成的,所述极性编码操作包括将用于所述流可解码码的编码操作的输出乘以生成器矩阵(G)。
9.根据权利要求8所述的方法,其中所述生成器矩阵被定义为
其中表示Kronecker积,其中B是n×n比特反转置换矩阵,其中n=2m是所述极性码的长度,并且其中m和n是整数。
10.根据权利要求1所述的方法,其中所述网格是时变网格。
11.根据权利要求1所述的方法,其中所述网格是时不变网格。
12.一种数据处理系统中用于纠错的装置,包括具有指令的处理器和非暂时性存储器,其中所述指令在由所述处理器执行时使得所述处理器实现根据权利要求1至11中任一项所述的方法。
13.一种计算机可读的存储介质,包括存储在其上的计算机可读的代码,所述代码在由处理器执行时使所述处理器实现根据权利要求1至11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410421427.2A CN118316464A (zh) | 2019-06-03 | 2020-06-03 | 极性码的卷积预编码和解码 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962856646P | 2019-06-03 | 2019-06-03 | |
US62/856,646 | 2019-06-03 | ||
PCT/US2020/035936 WO2020247508A1 (en) | 2019-06-03 | 2020-06-03 | Convolutional precoding and decoding of polar codes |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410421427.2A Division CN118316464A (zh) | 2019-06-03 | 2020-06-03 | 极性码的卷积预编码和解码 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114073024A CN114073024A (zh) | 2022-02-18 |
CN114073024B true CN114073024B (zh) | 2024-04-26 |
Family
ID=73550512
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410421427.2A Pending CN118316464A (zh) | 2019-06-03 | 2020-06-03 | 极性码的卷积预编码和解码 |
CN202080049814.8A Active CN114073024B (zh) | 2019-06-03 | 2020-06-03 | 极性码的卷积预编码和解码 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410421427.2A Pending CN118316464A (zh) | 2019-06-03 | 2020-06-03 | 极性码的卷积预编码和解码 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11012100B2 (zh) |
EP (1) | EP3977653A4 (zh) |
CN (2) | CN118316464A (zh) |
WO (1) | WO2020247508A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118316464A (zh) * | 2019-06-03 | 2024-07-09 | 加利福尼亚大学董事会 | 极性码的卷积预编码和解码 |
WO2021051076A1 (en) * | 2019-09-13 | 2021-03-18 | Idac Holdings, Inc. | Methods and procedures for polar coded modulation |
WO2024049262A1 (ko) * | 2022-09-01 | 2024-03-07 | 엘지전자 주식회사 | 정보 블록을 전송하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체, 그리고 정보 블록을 수신하는 방법, 통신 기기, 프로세싱 장치, 및 저장 매체 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888025A (zh) * | 2017-01-19 | 2017-06-23 | 华中科技大学 | 一种基于极化码的级联纠错编译码方法和系统 |
WO2018060961A1 (en) * | 2016-09-30 | 2018-04-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Spatially coupled polar codes |
CN108880568A (zh) * | 2018-07-06 | 2018-11-23 | 中国石油大学(华东) | 一种基于卷积神经网络的串行抵消列表译码参数优化方法 |
CN109314529A (zh) * | 2016-06-13 | 2019-02-05 | 高通股份有限公司 | 无尾卷积码 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7170946B2 (en) | 2002-03-04 | 2007-01-30 | Lucent Technologies Inc. | System and method for reviving catastrophic codes |
JP4823176B2 (ja) * | 2007-08-31 | 2011-11-24 | パナソニック株式会社 | 復号方法及び復号装置 |
US9503126B2 (en) * | 2012-07-11 | 2016-11-22 | The Regents Of The University Of California | ECC polar coding and list decoding methods and codecs |
US9454552B2 (en) | 2012-07-31 | 2016-09-27 | Empire Technology Development Llc | Entropy coding and decoding using polar codes |
US9362956B2 (en) * | 2013-01-23 | 2016-06-07 | Samsung Electronics Co., Ltd. | Method and system for encoding and decoding data using concatenated polar codes |
US10313057B2 (en) * | 2016-06-01 | 2019-06-04 | Qualcomm Incorporated | Error detection in wireless communications using sectional redundancy check information |
US11184117B2 (en) * | 2016-11-04 | 2021-11-23 | Nokia Technologies Oy | Encoding system for incremental redundancy for hybrid ARQ for wireless networks |
US20180198560A1 (en) | 2017-01-09 | 2018-07-12 | Qualcomm Incorporated | Generalized polar code based on polarization of linear block codes and convolutional codes |
JP6963620B2 (ja) * | 2017-01-10 | 2021-11-10 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | インタリーブを伴う連接ポーラ符号 |
US10601447B2 (en) * | 2017-05-15 | 2020-03-24 | Qualcomm Incorporated | Field prioritization for polar codes |
US10862646B2 (en) * | 2017-07-11 | 2020-12-08 | Nokia Technologies Oy | Polar coded broadcast channel |
US10866857B2 (en) * | 2017-10-09 | 2020-12-15 | Tsofun Algorithms Ltd. | Encoding and decoding of permuted cyclic codes |
US11121728B2 (en) * | 2018-12-04 | 2021-09-14 | The Regents Of The University Of California | Pre-coding and decoding polar codes using local feedback |
CN118316464A (zh) * | 2019-06-03 | 2024-07-09 | 加利福尼亚大学董事会 | 极性码的卷积预编码和解码 |
-
2020
- 2020-06-03 CN CN202410421427.2A patent/CN118316464A/zh active Pending
- 2020-06-03 CN CN202080049814.8A patent/CN114073024B/zh active Active
- 2020-06-03 WO PCT/US2020/035936 patent/WO2020247508A1/en unknown
- 2020-06-03 US US16/892,068 patent/US11012100B2/en active Active
- 2020-06-03 EP EP20817905.1A patent/EP3977653A4/en active Pending
-
2021
- 2021-05-17 US US17/322,564 patent/US11398842B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109314529A (zh) * | 2016-06-13 | 2019-02-05 | 高通股份有限公司 | 无尾卷积码 |
WO2018060961A1 (en) * | 2016-09-30 | 2018-04-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Spatially coupled polar codes |
CN106888025A (zh) * | 2017-01-19 | 2017-06-23 | 华中科技大学 | 一种基于极化码的级联纠错编译码方法和系统 |
CN108880568A (zh) * | 2018-07-06 | 2018-11-23 | 中国石油大学(华东) | 一种基于卷积神经网络的串行抵消列表译码参数优化方法 |
Non-Patent Citations (1)
Title |
---|
Viterbi-Aided Successive-Cancellation Decoding of Polar Codes;Arman Fazeli等;GLOBECOM 2017 - 2017 IEEE Global Communications Conference;正文第4节 * |
Also Published As
Publication number | Publication date |
---|---|
EP3977653A1 (en) | 2022-04-06 |
CN118316464A (zh) | 2024-07-09 |
CN114073024A (zh) | 2022-02-18 |
US11012100B2 (en) | 2021-05-18 |
US11398842B2 (en) | 2022-07-26 |
US20210273659A1 (en) | 2021-09-02 |
US20200382138A1 (en) | 2020-12-03 |
WO2020247508A1 (en) | 2020-12-10 |
EP3977653A4 (en) | 2023-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114073024B (zh) | 极性码的卷积预编码和解码 | |
US7395495B2 (en) | Method and apparatus for decoding forward error correction codes | |
US9323611B2 (en) | Systems and methods for multi-stage soft input decoding | |
US8726137B2 (en) | Encoding and decoding methods for expurgated convolutional codes and convolutional turbo codes | |
US11121728B2 (en) | Pre-coding and decoding polar codes using local feedback | |
US11728829B2 (en) | Error detection in communication systems using polar coded data transmission | |
Mahdavifar et al. | On the construction and decoding of concatenated polar codes | |
US11990921B2 (en) | List decoding of polarization-adjusted convolutional codes | |
WO2022070043A1 (en) | Serial concatenated codes with outer block codes and inner polarization adjusted convolutional codes | |
US8843811B2 (en) | Apparatus and method for decoding in communication system | |
US20100306614A1 (en) | Method of error control | |
US11387849B2 (en) | Information decoder for polar codes | |
US11515895B2 (en) | Block code encoding and decoding methods, and apparatus therefor | |
Zhilin et al. | High-rate codes for high-reliability data transmission | |
RU2337478C2 (ru) | Декодирование высокоизбыточных кодов с контролем четности с использованием многопорогового прохождения сообщения | |
JP4900168B2 (ja) | 無線受信装置 | |
CN103095392B (zh) | 迭代译码方法及其通信装置 | |
Sui et al. | On CRC-Aided, Dual-Trellis, List Decoding for High-Rate Convolutional Codes with Short Blocklengths. | |
Li et al. | A high throughput pipeline HARQ scheme of polar codes | |
US20100058142A1 (en) | Apparatus, methods, and computer program products utilizing a generalized turbo principle |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |