CN115149966A - Polar code decoding method and device, electronic equipment and storage medium - Google Patents
Polar code decoding method and device, electronic equipment and storage medium Download PDFInfo
- Publication number
- CN115149966A CN115149966A CN202210771615.9A CN202210771615A CN115149966A CN 115149966 A CN115149966 A CN 115149966A CN 202210771615 A CN202210771615 A CN 202210771615A CN 115149966 A CN115149966 A CN 115149966A
- Authority
- CN
- China
- Prior art keywords
- path
- paths
- decoding
- decoded
- sub
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000012545 processing Methods 0.000 claims abstract description 72
- 238000012216 screening Methods 0.000 claims abstract description 6
- 238000012795 verification Methods 0.000 claims description 37
- 238000004364 calculation method Methods 0.000 claims description 27
- 125000004122 cyclic group Chemical group 0.000 claims description 8
- 230000008030 elimination Effects 0.000 claims description 5
- 238000003379 elimination reaction Methods 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 2
- 230000010287 polarization Effects 0.000 claims 8
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 claims 1
- 241000169170 Boreogadus saida Species 0.000 abstract description 6
- 238000010295 mobile communication Methods 0.000 abstract description 3
- 230000009466 transformation Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000717 retained effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
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/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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本公开提供了一种极化码译码方法及装置、电子设备及存储介质,涉及移动通信技术领域。该方法包括:获取长度为N的待译码极化码,将待译码极化码划分为m个长度为n的待译码子段,N、m和n为2的整次幂;通过m个子段译码器分别对m个待译码子段进行SCL译码,得到分裂后的横向路径;对该横向路径进行纵向子段处理,得到多条待选路径;对多条待选路径进行横向子段处理,得到多条备选路径;对多条备选路径进行校验,得到译码路径;根据译码路径得到待译码极化码的译码结果。本公开可以通过纵向子段处理来进行全局考虑,避免筛选多条备选路径时仅考虑了其中一个待译码子段的局部概率。因而本公开可以提高极化码的译码性能。
The present disclosure provides a polar code decoding method and device, an electronic device and a storage medium, and relates to the technical field of mobile communications. The method includes: acquiring a polar code to be decoded with a length of N, dividing the polar code to be decoded into m subsections to be decoded with a length of n, where N, m and n are integer powers of 2; The m sub-segment decoders respectively perform SCL decoding on the m sub-segments to be decoded to obtain a split horizontal path; perform vertical sub-segment processing on the horizontal path to obtain multiple candidate paths; Perform horizontal sub-segment processing to obtain multiple candidate paths; check the multiple candidate paths to obtain a decoding path; and obtain a decoding result of the polar code to be decoded according to the decoding path. The present disclosure can perform global consideration through vertical sub-section processing, and avoid considering only the local probability of one of the sub-sections to be decoded when screening multiple alternative paths. Therefore, the present disclosure can improve the decoding performance of polar codes.
Description
技术领域technical field
本公开涉及移动通信技术领域,尤其涉及一种极化码译码方法及装置、电子设备及存储介质。The present disclosure relates to the field of mobile communication technologies, and in particular, to a polar code decoding method and device, an electronic device, and a storage medium.
背景技术Background technique
在移动通信技术领域,可以通过对数据进行编译码,来确保数据传输过程的可靠性。其中,极化码是一种可以理论证明达到香农极限的信道编码方法。对极化码进行译码,即可以对传输的数据进行获取。In the field of mobile communication technology, the reliability of the data transmission process can be ensured by encoding and decoding data. Among them, polar code is a channel coding method that can theoretically prove to reach the Shannon limit. By decoding the polar code, the transmitted data can be acquired.
在相关技术中,可以将极化码分为多个待译码子段,再对多个待译码子段进行并行译码,得到各个译码子段对应的满足局部最优的路径,从而得到完整的译码路径。In the related art, the polar code can be divided into a plurality of subsections to be decoded, and then the plurality of subsections to be decoded can be decoded in parallel to obtain a path corresponding to each decoding subsection that satisfies the local optimum, thereby Get the complete decoding path.
但是,相关技术提供的方法仅能对各个译码子段对应的局部最优的路径进行筛选,因而最终得到的完整的译码路径未必能够满足全局最优,因此该方法极化码译码的性能较差。However, the method provided by the related art can only screen the locally optimal paths corresponding to each decoding subsection, so the final complete decoding path may not satisfy the global optimality. Poor performance.
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。It should be noted that the information disclosed in the above Background section is only for enhancement of understanding of the background of the present disclosure, and therefore may contain information that does not form the prior art that is already known to a person of ordinary skill in the art.
发明内容SUMMARY OF THE INVENTION
本公开提供一种极化码译码方法及装置、电子设备及存储介质,至少在一定程度上克服相关技术中极化码的译码性能较差的问题。The present disclosure provides a polar code decoding method and device, an electronic device and a storage medium, which overcome the problem of poor decoding performance of polar codes in the related art at least to a certain extent.
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。Other features and advantages of the present disclosure will become apparent from the following detailed description, or be learned in part by practice of the present disclosure.
根据本公开实施例的一个方面,提供一种极化码译码方法,包括:获取长度为N的待译码极化码,将所述待译码极化码划分为m个长度为n的待译码子段,N、m和n为2的整次幂;通过m个子段译码器分别对m个待译码子段进行SCL(Successive Cancellation List,串行消除列表)译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径;对所述横向路径进行纵向子段处理,得到多条待选路径;对所述多条待选路径进行横向子段处理,得到多条备选路径;对所述多条备选路径进行校验,得到译码路径;根据所述译码路径得到所述待译码极化码的译码结果。According to an aspect of the embodiments of the present disclosure, a polar code decoding method is provided, including: acquiring a polar code to be decoded with a length of N, and dividing the polar code to be decoded into m polar codes with a length of n Subsections to be decoded, N, m, and n are integer powers of 2; the m subsections to be decoded are respectively subjected to SCL (Successive Cancellation List, serial elimination list) decoding by m subsection decoders The occurrence probability calculation of the code bit value and the path splitting are performed to obtain a split horizontal path; the vertical sub-segment processing is performed on the horizontal path to obtain a plurality of candidate paths; the horizontal sub-section processing is performed on the multiple candidate paths, Obtaining multiple candidate paths; checking the multiple candidate paths to obtain a decoding path; and obtaining the decoding result of the polar code to be decoded according to the decoding path.
在本公开的一些实施例中,所述通过m个子段译码器分别对m个待译码子段进行串行消除列表SCL译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径,包括:通过第i个子段译码器对第i个待译码子段的第j个比特进行SCL译码处理,得到第j个比特的出现概率以及2lij条横向路径,其中,i=1,2,3,…,m;j=1,2,3,…,n;2lij为第i个待译码子段的第j个比特所对应的分裂后的横向路径的数量。In some embodiments of the present disclosure, the occurrence probability calculation and path splitting of the decoded bit values of the serial elimination list SCL decoding are performed on the m sub-segments to be decoded by the m sub-segment decoders respectively, and the split is obtained. The latter horizontal path includes: performing SCL decoding processing on the jth bit of the ith subsection to be decoded by the ith subsection decoder to obtain the occurrence probability of the jth bit and 21 ij horizontal paths, Among them, i=1, 2, 3,..., m; j=1, 2, 3,..., n; 2l ij is the split horizontal path corresponding to the j-th bit of the i-th subsection to be decoded quantity.
在本公开的一些实施例中,所述对所述横向路径进行纵向子段处理,得到多条待选路径,包括:将m个待译码子段中每个待译码子段的第j个比特组成第j个纵向子段,使得任一纵向子段的总长度为m;对第j个纵向子段中的m个比特按顺序进行路径分裂,得到分裂后的纵向路径,其中,第i个比特对应的纵向路径数为2lvij,当2lvij>=Lv时,保留路径度量值最大的Lv条纵向路径,i=1,2,3,…,m;j=1,2,3,…,n;Lv与lvij均为正整数,任一纵向路径的路径度量值用于指示所述任一纵向路径的出现概率;对所述第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径;根据通过校验的第j个纵向子段的纵向路径,对所述2lij条横向路径进行筛选,保留lij或2lij条待选路径。In some embodiments of the present disclosure, performing vertical subsection processing on the horizontal path to obtain a plurality of paths to be selected includes: processing the jth subsection of each subsection to be decoded among the m subsections to be decoded. bits form the j-th vertical sub-segment, so that the total length of any vertical sub-segment is m; the m bits in the j-th vertical sub-segment are path-split in order to obtain the split vertical path, where the The number of longitudinal paths corresponding to i bits is 2l vij , when 2l vij >=L v , the L v longitudinal paths with the largest path metric value are reserved, i=1, 2, 3, ..., m; j=1, 2 , 3 , . The vertical paths are verified, and the vertical paths of the j-th vertical subsection that pass the verification are reserved; according to the vertical paths of the j-th vertical subsection that have passed the verification, the 21 ij horizontal paths are screened, and 1 are reserved. ij or 2l ij candidate paths.
在本公开的一些实施例中,所述对所述多条待选路径进行横向子段处理,得到多条备选路径,包括:通过m个子段译码器分别对多条待选路径进行横向子段处理,其中,第i个子段译码器从lij或2lij条待选路径中保留路径度量值最大的lhij条备选路径,当lij或2lij小于L时,lhij等于lij或等于2lij,当lij或2lij大于等于L时,lhij等于L,i=1,2,3,…,m;j=1,2,3,…,n;L用于指示所述备选路径的数量阈值,L为正整数;所述第i个子段译码器以lhij条备选路径为基础,对第i个横向子段的第j+1个比特进行译码比特值的出现概率计算及路径分裂,所述横向子段为长度为n的横向路径;当对第i个横向子段中的第n个比特进行译码比特值的出现概率计算及路径分裂后,得到长度为n的多条备选路径,路径分裂结束;In some embodiments of the present disclosure, performing horizontal sub-segment processing on the multiple candidate paths to obtain multiple candidate paths includes: performing horizontal sub-segment processing on the multiple candidate paths through m sub-segment decoders respectively. Sub-segment processing, wherein the i-th sub-segment decoder reserves l hij candidate paths with the largest path metric value from l ij or 2l ij candidate paths. When l ij or 2l ij is less than L, l hij is equal to l ij or equal to 2l ij , when l ij or 2l ij is greater than or equal to L, l hij is equal to L, i=1, 2, 3, ..., m; j=1, 2, 3, ..., n; L is used for Indicates the number threshold of the alternative paths, L is a positive integer; the i-th subsection decoder decodes the j+1th bit of the i-th horizontal subsection on the basis of l hij alternative paths Occurrence probability calculation and path splitting of code bit values, the horizontal subsection is a lateral path with a length of n; After that, multiple alternative paths of length n are obtained, and the path splitting ends;
所述对所述多条备选路径进行校验,得到译码路径,包括:对所述m个子段译码器的长度为n的多条备选路径分别进行校验,分别将m个子段译码器中通过校验且路径度量值最大的备选路径作为译码路径;若任一子段译码器没有备选路径通过校验,将所述任一子段译码器中路径度量值最大的备选路径作为译码路径。The performing verification on the multiple candidate paths to obtain a decoding path includes: performing verification on the multiple candidate paths with the length n of the m subsection decoders, respectively, The candidate path that passes the check and has the largest path metric value in the decoder is used as the decoding path; if no alternative path passes the check in any subsection decoder, the path metric in the any subsection decoder will be used as the decoding path. The candidate path with the largest value is used as the decoding path.
在本公开的一些实施例中,所述根据所述译码路径得到所述待译码极化码的译码结果,包括:对所述m个子段译码器的m条译码路径进行子段变换,得到m个长度为n的目标译码路径;通过m个目标译码路径组成长度为N的目标译码路径,并经位置置换后得到待译码极化码的译码结果。In some embodiments of the present disclosure, the obtaining the decoding result of the polar code to be decoded according to the decoding path includes: performing a subsection on m decoding paths of the m subsection decoders Segment transformation to obtain m target decoding paths with a length of n; a target decoding path with a length of N is formed by m target decoding paths, and the decoding result of the polar code to be decoded is obtained after position replacement.
在本公开的一些实施例中,所述根据通过校验的第j个纵向子段的纵向路径,对所述2lij条横向路径进行筛选,保留lij或2lij条待选路径,包括:若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为0,则2lij条横向路径中只保留比特值为0的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为1,则2lij条横向路径中只保留比特值为1的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值为0或1,则2lij条横向路径中保留比特值为0或1的2lij条待选路径。In some embodiments of the present disclosure, the 21 ij horizontal paths are screened according to the vertical path of the j th vertical sub-segment that has passed the verification, and the 1 ij or 21 ij candidate paths are reserved, including: If the value of the i-th bit in the vertical path of the j-th vertical subsection that passes the verification is all 0, then only the l ij candidate paths with the bit value of 0 are reserved in the 21 ij horizontal paths; In the vertical path of the jth vertical subsection of the test, the value of the ith bit is all 1, then only the candidate paths with the bit value of 1 are reserved in the 21 ij horizontal paths; In the vertical paths of the j vertical subsections, the i-th bit has a value of 0 or 1, and 21 ij candidate paths with a bit value of 0 or 1 are reserved in the 21 ij horizontal paths.
在本公开的一些实施例中,所述对所述第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径,包括:对所述第j个纵向子段的Lv条纵向路径进行奇偶校验或循环冗余校验,保留通过校验的第j个纵向子段的纵向路径。In some embodiments of the present disclosure, the performing verification on the L v longitudinal paths of the j th longitudinal sub-segment, and retaining the longitudinal paths of the j th longitudinal sub-segment that pass the verification, includes: verifying the Parity check or cyclic redundancy check is performed on the Lv vertical paths of the jth vertical subsection, and the vertical paths of the jth vertical subsection that pass the check are reserved.
在本公开的一些实施例中,所述子段变换为对所述m条译码路径的异或运算。In some embodiments of the present disclosure, the sub-segment is transformed into an XOR operation on the m decoding paths.
在本公开的一些实施例中,所述方法还包括:对所述第j个纵向子段的Lv条纵向路径进行校验,当全部纵向路径均没有通过校验,停止译码。In some embodiments of the present disclosure, the method further includes: verifying the Lv vertical paths of the jth vertical sub-segment, and stopping decoding when all vertical paths fail the verification.
根据本公开的另一个方面,提供一种极化码译码装置,包括:According to another aspect of the present disclosure, a polar code decoding apparatus is provided, comprising:
待译码极化码列获取模块,用于获取长度为N的待译码极化码,将所述待译码极化码划分为m个长度为n的待译码子段,N、m和n为2的整次幂;The polar code sequence acquisition module to be decoded is used to acquire the polar code to be decoded with a length of N, and divide the polar code to be decoded into m subsections of length n to be decoded, where N, m and n is an integer power of 2;
横向路径确定模块,用于通过m个子段译码器分别对m个待译码子段进行串行消除列表SCL译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径;The lateral path determination module is used to calculate the occurrence probability of the decoded bit value of the serial elimination list SCL decoding and the path splitting of the m subsections to be decoded by the m subsection decoders, and obtain the split lateral path ;
纵向子段处理模块,用于对所述横向路径进行纵向子段处理,得到多条待选路径;a vertical sub-segment processing module, configured to perform vertical sub-segment processing on the horizontal path to obtain a plurality of paths to be selected;
横向子段处理模块,用于对所述多条待选路径进行横向子段处理,得到多条备选路径;a lateral subsection processing module, configured to perform lateral subsection processing on the multiple candidate paths to obtain multiple candidate paths;
校验模块,用于对所述多条备选路径进行校验,得到译码路径;a verification module, configured to verify the multiple alternative paths to obtain a decoding path;
译码结果确定模块,用于根据所述译码路径得到所述待译码极化码的译码结果。A decoding result determining module, configured to obtain the decoding result of the polar code to be decoded according to the decoding path.
在本公开的一些实施例中,横向路径确定模块,用于通过第i个子段译码器对第i个待译码子段的第j个比特进行SCL译码处理,得到第j个比特的出现概率以及2lij条横向路径,其中,i=1,2,3,…,m;j=1,2,3,…,n;2lij为第i个待译码子段的第j个比特所对应的横向路径的数量。In some embodiments of the present disclosure, the lateral path determination module is configured to perform SCL decoding processing on the jth bit of the ith subsection to be decoded by the ith subsection decoder, to obtain the jth bit of the jth bit. Occurrence probability and 2l ij lateral paths, where i=1, 2, 3, ..., m; j=1, 2, 3, ..., n; 2l ij is the jth of the ith subsection to be decoded The number of lateral paths corresponding to the bits.
在本公开的一些实施例中,纵向子段处理模块,用于将m个待译码子段中每个待译码子段的第j个比特组成第j个纵向子段,使得任一纵向子段的总长度为m;对第j个纵向子段中的m个比特按顺序进行路径分裂,其中,第i个比特对应的纵向路径数为2lvij,当2lvij>=Lv时,保留路径度量值最大的Lv条纵向路径,i=1,2,3,…,m;j=1,2,3,…,n;Lv与lvij均为正整数,任一纵向路径的路径度量值用于指示所述任一纵向路径的出现概率;对所述第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径,根据通过校验的第j个纵向子段的纵向路径,对所述2lij条横向路径进行筛选,保留lij或2lij条待选路径。In some embodiments of the present disclosure, the vertical sub-segment processing module is configured to form the j-th vertical sub-segment with the j-th bit of each to-be-decoded sub-segment in the m sub-segments to be decoded, so that any vertical sub-segment The total length of the sub-segment is m; the m bits in the j-th vertical sub-segment are divided into paths in sequence, wherein the number of vertical paths corresponding to the i-th bit is 2l vij , when 2l vij >=L v , Retain the L v longitudinal paths with the largest path metric value, i=1, 2, 3, ..., m; j=1, 2, 3, ..., n; both L v and l vij are positive integers, any longitudinal path The path metric value is used to indicate the probability of occurrence of any longitudinal path; the L v longitudinal paths of the j-th longitudinal subsection are verified, and the longitudinal paths of the j-th longitudinal subsection that pass the verification are reserved , according to the vertical path of the j-th vertical subsection that has passed the verification, the 21 ij horizontal paths are screened, and the 1 ij or 21 ij candidate paths are reserved.
在本公开的一些实施例中,横向子段处理模块,用于通过m个子段译码器分别对多条待选路径进行横向子段处理,其中,第i个子段译码器从lij或2lij条待选路径中保留路径度量值最大的lhij条备选路径,当lij或2lij小于L时,lhij等于lij或等于2lij,当lij或2lij大于等于L时,lhij等于L,i=1,2,3,…,m;j=1,2,3,…,n;L用于指示所述备选路径的数量阈值,L为正整数;所述第i个子段译码器以lhij条备选路径为基础,对第i个横向子段的第j+1个比特进行译码比特值的出现概率计算及路径分裂,所述横向子段为长度为n的横向路径;当对第i个横向子段中的第n个比特进行译码比特值的出现概率计算及路径分裂后,得到长度为n的多条备选路径,路径分裂结束;In some embodiments of the present disclosure, the horizontal sub-segment processing module is configured to perform horizontal sub-segment processing on the multiple candidate paths respectively through m sub-segment decoders, wherein the i-th sub-segment decoder starts from l ij or Among the 2l ij candidate paths, the l hij candidate paths with the largest path metric value are reserved. When l ij or 2l ij is less than L, l hij is equal to l ij or equal to 2l ij , and when l ij or 2l ij is greater than or equal to L , l hij is equal to L, i=1, 2, 3, ..., m; j=1, 2, 3, ..., n; L is used to indicate the number threshold of the candidate paths, and L is a positive integer; the The i-th subsection decoder performs the occurrence probability calculation and path splitting of the decoded bit value on the j+1-th bit of the i-th horizontal subsection based on the l hij alternative paths. The horizontal subsection is: A horizontal path with a length of n; when the occurrence probability calculation of the decoding bit value and path splitting are performed on the n-th bit in the i-th horizontal subsection, multiple alternative paths with a length of n are obtained, and the path splitting ends;
校验模块,用于对所述m个子段译码器的长度为n的多条备选路径分别进行校验,分别将m个子段译码器中通过校验且路径度量值最大的备选路径作为所述译码路径;若任一子段译码器没有备选路径通过校验,将所述任一子段译码器中路径度量值最大的备选路径作为所述译码路径。The verification module is used to verify the multiple candidate paths of the m subsection decoders with a length of n respectively, and respectively check the candidates of the m subsection decoders that have passed the verification and have the largest path metric value. The path is used as the decoding path; if no candidate path in any subsection decoder passes the check, the candidate path with the largest path metric value in the any subsection decoder is used as the decoding path.
在本公开的一些实施例中,译码结果确定模块,用于对所述m个子段译码器的m条译码路径进行子段变换,得到m个长度为n的目标译码路径;通过m个目标译码路径组成长度为N的目标译码路径,并经位置置换后得到待译码极化码的译码结果。In some embodiments of the present disclosure, the decoding result determination module is configured to perform sub-segment transformation on m decoding paths of the m sub-segment decoders to obtain m target decoding paths of length n; The m target decoding paths form a target decoding path of length N, and the decoding result of the polar code to be decoded is obtained after position replacement.
在本公开的一些实施例中,纵向子段处理模块,用于若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为0,则2lij条横向路径中只保留比特值为0的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为1,则2lij条横向路径中只保留比特值为1的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值为0或1,则2lij条横向路径中保留比特值为0或1的2lij条待选路径。In some embodiments of the present disclosure, the vertical sub-segment processing module is configured to, if in the vertical path of the j-th vertical sub-segment passing the check, the value of the i-th bit is all 0, then in the 21 ij horizontal paths Only the l ij candidate paths with the bit value of 0 are reserved; if the i-th bit in the vertical path of the j-th vertical subsection passing the check is all 1, then only bits are reserved in the 2l ij horizontal paths. l ij candidate paths with a value of 1; if the value of the i th bit is 0 or 1 in the vertical path of the j th vertical subsection that passes the check, the reserved bit value in the 2 l ij horizontal paths is 0 or 1 of 2l ij candidate paths.
在本公开的一些实施例中,纵向子段处理模块,用于对所述第j个纵向子段的Lv条纵向路径进行奇偶校验或循环冗余校验,保留通过校验的第j个纵向子段的纵向路径。In some embodiments of the present disclosure, the longitudinal sub-segment processing module is configured to perform parity check or cyclic redundancy check on the L v longitudinal paths of the j-th longitudinal sub-segment, and retain the j-th longitudinal paths that pass the check. The vertical path of the vertical subsegments.
在本公开的一些实施例中,所述子段变换为对所述m条译码路径的异或运算。In some embodiments of the present disclosure, the sub-segment is transformed into an XOR operation on the m decoding paths.
在本公开的一些实施例中,所述校验模块,还用于:对所述第j个纵向子段的Lv条纵向路径进行校验,当全部纵向路径均没有通过校验,停止译码。In some embodiments of the present disclosure, the verification module is further configured to: verify the Lv vertical paths of the jth vertical subsection, and stop the translation when all the vertical paths fail the verification. code.
根据本公开的再一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的极化码译码方法。According to yet another aspect of the present disclosure, there is provided an electronic device comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the executable instructions to The polar code decoding method described above is performed.
根据本公开的又一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的极化码译码方法。According to yet another aspect of the present disclosure, a computer-readable storage medium is provided on which a computer program is stored, and when the computer program is executed by a processor, the above-mentioned polar code decoding method is implemented.
本公开的实施例所提供的技术方案,可以对待译码极化码中每一待译码子段所对应的横向路径,进行纵向子段处理。然后,再对纵向子段处理得到的多条待选路径,进行横向子段处理。因此,本公开可以通过纵向子段处理来进行全局考虑,避免筛选多条备选路径时仅考虑了其中一个待译码子段的局部概率。因而本公开可以提高极化码的译码性能。The technical solutions provided by the embodiments of the present disclosure can perform vertical subsection processing on the horizontal path corresponding to each subsection to be decoded in the polar code to be decoded. Then, perform horizontal sub-segment processing on a plurality of candidate paths obtained by processing the vertical sub-segments. Therefore, the present disclosure can take global consideration through vertical sub-section processing, and avoid considering only the local probability of one of the sub-sections to be decoded when screening multiple alternative paths. Therefore, the present disclosure can improve the decoding performance of polar codes.
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure.
附图说明Description of drawings
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the disclosure and together with the description serve to explain the principles of the disclosure. Obviously, the drawings in the following description are only some embodiments of the present disclosure, and for those of ordinary skill in the art, other drawings can also be obtained from these drawings without creative effort.
图1示出本公开实施例中一种极化码译码方法的系统架构的示意图;1 shows a schematic diagram of a system architecture of a polar code decoding method in an embodiment of the present disclosure;
图2示出本公开实施例中一种极化码译码方法的流程图;FIG. 2 shows a flowchart of a polar code decoding method in an embodiment of the present disclosure;
图3示出本公开实施例中一种得到多条待选路径的方法的流程图;3 shows a flowchart of a method for obtaining multiple paths to be selected in an embodiment of the present disclosure;
图4示出本公开实施例中一种得到多条备选路径的方法的流程图;4 shows a flowchart of a method for obtaining multiple alternative paths in an embodiment of the present disclosure;
图5示出本公开实施例中一种极化码译码的过程示意图;FIG. 5 shows a schematic diagram of a polar code decoding process in an embodiment of the present disclosure;
图6示出本公开实施例中一种极化码译码装置示意图;和FIG. 6 shows a schematic diagram of a polar code decoding apparatus in an embodiment of the present disclosure; and
图7示出本公开实施例中一种电子设备的结构框图。FIG. 7 shows a structural block diagram of an electronic device in an embodiment of the present disclosure.
具体实施方式Detailed ways
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments, however, can be embodied in various forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。Furthermore, the drawings are merely schematic illustrations of the present disclosure and are not necessarily drawn to scale. The same reference numerals in the drawings denote the same or similar parts, and thus their repeated descriptions will be omitted. Some of the block diagrams shown in the figures are functional entities that do not necessarily necessarily correspond to physically or logically separate entities. These functional entities may be implemented in software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
图1示出了一种可以应用于本公开实施例的极化码译码方法的示例性系统架构的示意图。FIG. 1 shows a schematic diagram of an exemplary system architecture that can be applied to a polar code decoding method according to an embodiment of the present disclosure.
如图1所示,系统架构100可以包括终端设备101以及基站102。As shown in FIG. 1 , the system architecture 100 may include a terminal device 101 and a base station 102 .
其中,终端设备101可以向基站102发送进行编码后的待译码极化码。基站102可以接收该待译码极化码,并通过本公开实施提供的方法对该待译码极化码进行译码,得到该待译码极化码的译码结果。The terminal device 101 may send the encoded polar code to be decoded to the base station 102 . The base station 102 may receive the polar code to be decoded, and decode the polar code to be decoded by using the method provided by the implementation of the present disclosure to obtain a decoding result of the polar code to be decoded.
或者,基站102可以向终端设备101发送进行编码后的待译码极化码。终端设备101可以接收该待译码极化码,并通过本公开实施提供的方法对该待译码极化码进行译码,得到该待译码极化码的译码结果。Alternatively, the base station 102 may send the encoded polar code to be decoded to the terminal device 101 . The terminal device 101 can receive the polar code to be decoded, and decode the polar code to be decoded by using the method provided by the implementation of the present disclosure to obtain a decoding result of the polar code to be decoded.
终端设备101可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、可穿戴设备、增强现实设备、虚拟现实设备等。The terminal device 101 may be various electronic devices, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, wearable devices, augmented reality devices, virtual reality devices, and the like.
需要说明的是,该基站102可以部署于无线接入网中,用以为终端设备与后台服务器提供通信连接,本公开不对基站102的种类进行限定,例如,该基站102可以为宏基站、微基站等。在LTE(Long Term Evolution,长期演进)通信系统中,基站102可以是eNodeB。或者,在NR(New Radio,新空口)通信系统中,基站102可以为gNB。It should be noted that the base station 102 can be deployed in the wireless access network to provide a communication connection between the terminal device and the background server. The present disclosure does not limit the type of the base station 102. For example, the base station 102 can be a macro base station, a micro base station Wait. In an LTE (Long Term Evolution, Long Term Evolution) communication system, the base station 102 may be an eNodeB. Alternatively, in an NR (New Radio, new air interface) communication system, the base station 102 may be a gNB.
本领域技术人员可以知晓,图1中的终端设备101以及基站102的数量仅仅是示意性的,根据实际需要,可以具有任意数目的终端设备101以及基站102。本公开实施例对此不作限定。Those skilled in the art may know that the numbers of terminal devices 101 and base stations 102 in FIG. 1 are only illustrative, and according to actual needs, there may be any number of terminal devices 101 and base stations 102 . This embodiment of the present disclosure does not limit this.
下面结合附图及实施例对本示例实施方式进行详细说明。The present exemplary implementation is described in detail below with reference to the accompanying drawings and embodiments.
首先,本公开实施例中提供了一种极化码译码方法,该方法可以由任意具备计算处理能力的电子设备执行。First, a polar code decoding method is provided in the embodiments of the present disclosure, and the method can be executed by any electronic device with computing processing capability.
图2示出本公开实施例中一种极化码译码方法的流程图,如图2所示,本公开实施例中提供的极化码译码方法包括如下步骤S201至S204。FIG. 2 shows a flowchart of a polar code decoding method in an embodiment of the present disclosure. As shown in FIG. 2 , the polar code decoding method provided in the embodiment of the present disclosure includes the following steps S201 to S204.
S202,获取长度为N的待译码极化码,将待译码极化码划分为m个长度为n的待译码子段,N、m和n为2的整次幂。S202: Obtain a polar code to be decoded with a length of N, and divide the polar code to be decoded into m subsections of length n to be decoded, where N, m, and n are integer powers of 2.
示例性地,该待译码极化码可以表示为一个对数似然比序列。示例性地,该待译码极化码也可成为极化码比特序列。本公开实施例不对该待译码极化码的长度以及内容进行限定,该待译码极化码的长度以及内容均可以根据应用场景进行确定。Exemplarily, the polar code to be decoded can be represented as a sequence of log-likelihood ratios. Exemplarily, the polar code to be decoded may also be a polar code bit sequence. The embodiments of the present disclosure do not limit the length and content of the polar code to be decoded, and the length and content of the polar code to be decoded can be determined according to application scenarios.
在一些实施例中,在获取待译码极化码后,可以对该待译码极化码进行待译码子段的划分,得到m个长度为n的待译码子段。例如该待译码极化码的长度为N,则m×n=N(m、n均可以为2的整次幂)。例如,可以先对该待译码极化码按照顺序划分为m个长度为n的子段,然后再对划分后的子段分别进行倒位序变换,得到m个长度为n的待译码子段。In some embodiments, after obtaining the polar code to be decoded, the polar code to be decoded may be divided into sub-segments to be decoded to obtain m sub-segments to be decoded with a length of n. For example, the length of the polar code to be decoded is N, then m×n=N (both m and n can be an integer power of 2). For example, the polar code to be decoded can be firstly divided into m sub-segments of length n in sequence, and then the sub-segments after division can be transformed in reverse order to obtain m length of n to be decoded subsection.
S204,通过m个子段译码器分别对m个待译码子段进行SCL译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径。S204 , the m sub-segment decoders respectively perform the occurrence probability calculation and path splitting of the decoded bit values of the SCL decoding on the m sub-segments to be decoded, so as to obtain a split horizontal path.
在一种可能的实施方式中,对任一待译码子段进行SCL译码的译码比特值的出现概率计算及路径分裂,可以得到一个译码树,该译码树中包含对该待译码子段进行SCL译码得到的多条横向路径。In a possible implementation manner, the occurrence probability calculation and path splitting of the decoded bit value of SCL decoding are performed on any subsection to be decoded, and a decoding tree can be obtained, and the decoding tree includes the decoded bit value to be decoded. Decode the multiple lateral paths obtained by SCL decoding of the subsection.
示例性地,在得到m个长度为n的待译码子段后,可以通过m个子段译码器分别对各个待译码子段进行并行译码。在一些实施例中,通过m个子段译码器分别对m个待译码子段进行SCL译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径,可以包括:通过第i个子段译码器对第i个待译码子段的第j个比特进行SCL译码处理,得到第j个比特的出现概率以及2lij条横向路径,其中,i=1,2,3,…,m;j=1,2,3,…,n;2lij为第i个待译码子段的第j个比特所对应的分裂后的横向路径的数量。Exemplarily, after obtaining m subsegments of length n to be decoded, each subsegment to be decoded may be decoded in parallel by using m subsegment decoders respectively. In some embodiments, the occurrence probability calculation and path splitting of the decoded bit values of the m subsections to be decoded by performing SCL decoding on the m subsection decoders, respectively, to obtain a split horizontal path, which may include: The i-th subsection decoder performs SCL decoding on the j-th bit of the i-th subsection to be decoded, and obtains the occurrence probability of the j-th bit and 21 ij horizontal paths, where i=1, 2, 3 , .
在示例性实施例中,对长度为N的待译码极化码进行待译码子段的划分后,可以得到8个长度为n的待译码子段。此时,可以通过8个子段译码器分别对8个待译码子段进行SCL译码的译码比特值的出现概率计算及路径分裂,其中,每个子段译码器负责其中的任一待译码子段。例如,第3个子段译码器可以先对某一待译码子段的第一个比特进行SCL译码处理,得到该第一个比特的比特值取0和1的出现概率,从而得到了两条横向路径。之后,该第3个子段译码器可以在第一个比特的比特值取0和1的两条横向路径的基础上,再对该待译码子段的第二个比特进行SCL译码处理,得到该第二个比特的比特值取0和1的出现概率。从而在上述的两条分裂路径的基础上,分裂得到四条分裂后的横向路径。同理,对该待译码子段的第j个比特进行SCL译码处理,则可以得到2lij条分裂后的横向路径,lij为该待译码子段的第j-1个比特所对应的分裂后的横向路径的数量。其中,i=1,2,3,…,m;j=1,2,3,…,n。因此,以i=2,j=3为例,l23即为由第2个子段译码器进行SCL译码的译码比特值的出现概率计算及路径分裂的待译码子段的第3个比特所对应的分裂后的横向路径的数量。In an exemplary embodiment, after dividing the polar code to be decoded with length N into subsections to be decoded, 8 subsections to be decoded with length n can be obtained. At this time, the occurrence probability calculation and path splitting of the decoded bit values of the SCL decoding can be performed on the eight sub-segments to be decoded by the eight sub-segment decoders, wherein each sub-segment decoder is responsible for any one of the Subsection to be decoded. For example, the third sub-segment decoder can first perform SCL decoding on the first bit of a sub-segment to be decoded, and obtain the occurrence probability that the bit value of the first bit takes 0 and 1, thereby obtaining Two lateral paths. After that, the third sub-segment decoder can perform SCL decoding processing on the second bit of the sub-segment to be decoded on the basis of the two horizontal paths in which the bit value of the first bit is 0 and 1 , to obtain the occurrence probability that the bit value of the second bit takes 0 and 1. Therefore, on the basis of the above two split paths, four split lateral paths are obtained by splitting. Similarly, by performing SCL decoding on the jth bit of the subsection to be decoded, 21 ij split horizontal paths can be obtained, where lij is the j -1th bit of the subsection to be decoded. The number of corresponding split lateral paths. Wherein, i=1, 2, 3,..., m; j=1, 2, 3,..., n. Therefore, taking i=2, j=3 as an example, l 23 is the occurrence probability calculation of the decoded bit value of the SCL decoding performed by the second sub-segment decoder and the third sub-segment to be decoded for path splitting The number of split lateral paths corresponding to bits.
在横向子段中存在一些比特值一定为0的比特,可以称之为恒0比特。这些恒0比特由偶数个冻结比特通过异或运算得到。在子段SCL译码的译码比特值的出现概率计算及路径分裂中,当译码比特为恒0比特时,比特值为0的出现概率为1,比特值为1的出现概率为0,因此只需要保留比特值为0的路径,不需要再进行路径分裂,上述的横向子段为长度为n的横向路径,即当对任一待译码子段进行SCL译码的路径分裂至最后一个比特时,得到的横向路径。In the horizontal subsection, there are some bits whose bit value must be 0, which can be called constant 0 bits. These constant 0 bits are obtained by the exclusive OR operation of an even number of frozen bits. In the calculation of the occurrence probability of the decoded bit value and the path splitting of the sub-segment SCL decoding, when the decoded bit is a constant 0 bit, the occurrence probability of the bit value of 0 is 1, and the occurrence probability of the bit value of 1 is 0. Therefore, only the path with the bit value of 0 needs to be reserved, and no further path splitting is required. The above-mentioned horizontal sub-segment is a horizontal path with a length of n, that is, when any sub-segment to be decoded is subjected to SCL decoding The path is split to the end One bit, the resulting lateral path.
S206,对横向路径进行纵向子段处理,得到多条待选路径。S206, perform vertical sub-segment processing on the horizontal path to obtain a plurality of paths to be selected.
在一些实施例中,可以先将分裂后的横向路径组成对应的纵向子段。再根据上述对各个待译码子段进行SCL译码处理的结果,对各个纵向子段进行纵向的路径分裂,得到多条待选路径。如图3所示,对横向路径进行纵向子段处理,得到多条待选路径的方法,可以包括如下S302至S306中的步骤。In some embodiments, the split lateral paths may first be formed into corresponding longitudinal sub-segments. Then, according to the result of performing the SCL decoding process on each subsection to be decoded, vertical path splitting is performed on each vertical subsection to obtain a plurality of paths to be selected. As shown in FIG. 3 , the method for performing vertical sub-segment processing on a horizontal path to obtain a plurality of paths to be selected may include the following steps in S302 to S306 .
S302,将m个待译码子段中每个待译码子段的第j个比特组成第j个纵向子段,使得任一纵向子段的总长度为m。S302, the j-th bit of each of the m sub-segments to be decoded is formed into the j-th vertical sub-segment, so that the total length of any vertical sub-segment is m.
在示例性实施例中,以有32个横向子段为例,其中任一个横向子段的总长度均可以为128,因此该32个待译码子段总共可以组成128个纵向子段,每个纵向子段的总长度均为32。In the exemplary embodiment, taking 32 horizontal sub-segments as an example, the total length of any horizontal sub-segment may be 128. Therefore, the 32 to-be-decoded sub-segments may form a total of 128 vertical sub-segments. The total length of each longitudinal sub-segment is 32.
S304,对第j个纵向子段中的m个比特按顺序进行路径分裂,得到分裂后的纵向路径,其中,第i个比特对应的纵向路径数为2lvij,当2lvij>=Lv时,保留路径度量值最大的Lv条纵向路径,i=1,2,3,…,m;j=1,2,3,…,n;Lv与lvij均为正整数,任一纵向路径的路径度量值用于指示任一纵向路径的出现概率。S304, perform path splitting on m bits in the jth vertical subsection in order to obtain a split vertical path, wherein the number of vertical paths corresponding to the ith bit is 2l vij , and when 2l vij >=L v , retain the L v longitudinal paths with the largest path metric value, i=1, 2, 3, ..., m; j=1, 2, 3, ..., n; both L v and l vij are positive integers, any longitudinal path The path metric of a path is used to indicate the probability of occurrence of any longitudinal path.
在一种可能的实施方式中,对任一纵向子段进行路径分裂,可以得到一个译码树,该译码树中包含对该纵向子段进行路径分裂而得到的多条纵向路径。In a possible implementation manner, by performing path splitting on any vertical sub-segment, a decoding tree can be obtained, and the decoding tree includes a plurality of vertical paths obtained by performing path splitting on the vertical sub-segment.
在示例性实施例中,以每一横向子段的第一个比特所组成的第一个纵向子段为例,m个子段译码器已经分别对各个待译码子段的第一个比特进行了SCL译码后,可以将各个待译码子段的第一个比特对应的0与1的出现概率按顺序进行路径分裂,第一个横向子段的第一个比特得到对应的两条纵向路径。之后,在上述的两条纵向路径的基础上,对纵向子段的第二个比特,即第二个横向子段的第一个比特,按照对应的0与1的出现概率进行路径分裂,得到对应的四条纵向路径,依次对第一个纵向子段的其它比特进行路径分裂,可以得到2lvi1条纵向路径。同理,对第j-1个纵向子段中的m个比特按顺序进行路径分裂,可以得到2lvij纵向路径,再对第j个纵向子段中的m个比特按顺序进行路径分裂,可以得到2lvij纵向路径。示例性地,以第j-1个纵向子段所对应的2lvij纵向路径为例,在该2lvij条分裂路径中,任一比特的比特值为0的纵向路径数量为lvij0,,任一比特的比特值为1的纵向路径数量为lvij1,2lvij等于lvij0和lvij1的数量之和。其中,i=1,2,3,…,m;j=1,2,3,…,n。因此,以i=2,j=3为例,2lv23即为第3个纵向子段中的第2个比特对应的纵向路径的数量。或者,2lv23也可以称为第3个纵向子段中的第2个比特对应的待选路径的数量。In the exemplary embodiment, taking the first vertical sub-segment formed by the first bits of each horizontal sub-segment as an example, the m sub-segment decoders have respectively processed the first bits of the sub-segments to be decoded. After SCL decoding is performed, the probability of occurrence of 0 and 1 corresponding to the first bit of each subsection to be decoded can be divided into paths in order, and the first bit of the first horizontal subsection can be obtained. vertical path. Then, on the basis of the above two vertical paths, the second bit of the vertical sub-segment, that is, the first bit of the second horizontal sub-segment, is subjected to path splitting according to the corresponding occurrence probability of 0 and 1 to obtain For the corresponding four vertical paths, path splitting is performed on the other bits of the first vertical sub-segment in turn, and 21 vi1 vertical paths can be obtained. Similarly, the path splitting is performed on m bits in the j-1th vertical sub-segment in order, and the 2l vij vertical path can be obtained, and then the m bits in the j-th vertical sub-segment are split in order, and then the path is split. Get 2l vij vertical path. Exemplarily, taking the 21 vij vertical path corresponding to the j-1th vertical subsection as an example, in the 21 vij split paths, the number of vertical paths with the bit value of any bit being 0 is 1 vij0 , and any The number of vertical paths with a bit value of 1 for one bit is l vij1 , and 2l vij is equal to the sum of the numbers of l vij0 and l vij1 . Wherein, i=1, 2, 3,..., m; j=1, 2, 3,..., n. Therefore, taking i=2 and j=3 as an example, 21 v23 is the number of vertical paths corresponding to the second bit in the third vertical subsection. Alternatively, 21 v23 may also be referred to as the number of paths to be selected corresponding to the second bit in the third vertical subsection.
在示例性实施例中,可以设置一个Lv的值。当纵向路径的数量大于该Lv的值,则需要对纵向路径进行筛选,使纵向路径的数量一直小于等于该Lv的值。本公开实施例不对该Lv的取值进行限定,Lv的取值会影响译码性能、译码复杂性和早停时机,可以基于技术指标或应用场景进行设定。In an exemplary embodiment, a value of L v may be set. When the number of longitudinal paths is greater than the value of L v , the longitudinal paths need to be screened so that the number of longitudinal paths is always less than or equal to the value of L v . The embodiments of the present disclosure do not limit the value of L v , and the value of L v will affect decoding performance, decoding complexity, and early stop timing, and may be set based on technical indicators or application scenarios.
在一些实施例中,可以通过各个纵向路径中的各个比特的路径度量值的大小,来对纵向路径进行筛选。从而可以保留路径度量值最大的Lv条纵向路径。本公开实施例不对各个比特的路径度量值的计算方法进行限定,示例性地,各个比特的路径度量值可以通过传输该待译码极化码时的信噪比来进行计算。示例性地,以第j-1个纵向子段所对应的lvij纵向路径为例,当2lvij>=Lv,则对该2lvij条分裂路径进行筛选,保留其中路径度量值最大的Lv条纵向路径。在该Lv条纵向路径中,任一比特的比特值为0的纵向路径数量为lvij0,任一比特的比特值为1的纵向路径数量为lvij1,2lvij等于lvij0和lvij1的数量之和。本公开实施例不对该路径度量值的表示方法进行限定,示例性地,该路径度量值可以通过对数似然比来表示。由于出现概率在程序计算中容易出现溢出等问题,例如当待译码极化码的长度N为1024时,任意一条纵向路径的出现概率会非常小,因此可以通过使用对数似然比来代替出现概率。In some embodiments, the longitudinal paths may be filtered by the size of the path metric value of each bit in each longitudinal path. Thus, L v longitudinal paths with the largest path metric value can be reserved. This embodiment of the present disclosure does not limit the method for calculating the path metric value of each bit. Exemplarily, the path metric value of each bit can be calculated by using the signal-to-noise ratio when transmitting the polar code to be decoded. Exemplarily, taking the l vij longitudinal path corresponding to the j-1 th longitudinal subsection as an example, when 2l vij >=L v , the 2l vij split paths are screened, and the L with the largest path metric value is retained. v vertical paths. In the L v vertical paths, the number of vertical paths with the bit value of any bit being 0 is l vij0 , the number of vertical paths with the bit value of any bit being 1 is l vij1 , and 2l vij is equal to the sum of l vij0 and l vij1 sum of numbers. This embodiment of the present disclosure does not limit the representation method of the path metric value. Exemplarily, the path metric value may be represented by a log-likelihood ratio. Since the probability of occurrence is prone to overflow and other problems in the program calculation, for example, when the length N of the polar code to be decoded is 1024, the probability of occurrence of any longitudinal path will be very small, so the log-likelihood ratio can be used instead. probability of occurrence.
S306,对第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径;根据通过校验的第j个纵向子段的纵向路径,对2lij条横向路径进行筛选,保留lij或2lij条待选路径。S306, verify the Lv longitudinal paths of the jth longitudinal subsection, and retain the longitudinal path of the jth longitudinal subsection that passed the verification; 2l ij horizontal paths are screened, and l ij or 2l ij candidate paths are reserved.
在一些实施例中,对第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径,包括:对第j个纵向子段的Lv条纵向路径进行奇偶校验(ParityCheck)或循环冗余校验(Cyclic Redundancy Check,CRC),保留通过校验的第j个纵向子段的纵向路径。本公开实施例不对上述奇偶校验以及循环冗余校验的校验步骤进行限定。或者,此处也可以采用其它适用的校验方法对第j个纵向子段的Lv条纵向路径进行校验。In some embodiments, verifying the L v longitudinal paths of the j th longitudinal sub-segment, and retaining the longitudinal paths of the j th longitudinal sub-segment that pass the verification, includes: checking the L v of the j th longitudinal sub-segment A parity check (ParityCheck) or a cyclic redundancy check (Cyclic Redundancy Check, CRC) is performed on each vertical path, and the vertical path of the jth vertical subsection that passes the check is reserved. The embodiments of the present disclosure do not limit the verification steps of the parity check and the cyclic redundancy check. Alternatively, other applicable verification methods may also be used here to verify the L v longitudinal paths of the j th longitudinal subsection.
本公开实施例提供的极化码译码方法还可包括:对第j个纵向子段的Lv条纵向路径进行校验,当全部纵向路径均没有通过校验,停止译码。示例性地,若没有纵向路径通过校验,则证明译码失败。此时可以实现极化码译码中的早停功能,允许提前启动重发流程,而不必继续译码。因此,本公开实施例可以降低极化码译码的计算量,并且缩短误帧重发的等待时间。The polar code decoding method provided by the embodiment of the present disclosure may further include: verifying the Lv vertical paths of the jth vertical subsection, and stopping decoding when all vertical paths fail the verification. Exemplarily, if no vertical path passes the check, it is proved that the decoding fails. At this time, the early stop function in polar code decoding can be implemented, allowing the retransmission process to be started in advance without continuing to decode. Therefore, the embodiments of the present disclosure can reduce the calculation amount of polar code decoding, and shorten the waiting time for retransmission of error frames.
在一些实施例中,根据通过校验的第j个纵向子段的纵向路径,对2lij条横向路径进行筛选,保留lij或2lij条待选路径,包括:若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为0,则2lij条横向路径中只保留比特值为0的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为1,则2lij条横向路径中只保留比特值为1的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值为0或1,则2lij条横向路径中保留比特值为0或1的2lij条待选路径。In some embodiments, 21 ij horizontal paths are screened according to the vertical path of the j th vertical subsection that passes the verification, and the 1 ij or 21 ij candidate paths are reserved, including: if the j th vertical subsection passes the verification In the vertical paths of the vertical subsections, the value of the i-th bit is all 0, then only the l ij candidate paths with the bit value of 0 are reserved in the 21 ij horizontal paths; In the vertical path of the segment, the value of the i th bit is 1, then only the 1 ij candidate paths with the bit value of 1 are reserved in the 21 ij horizontal paths; In the path, the value of the i-th bit is 0 or 1, then 21 ij candidate paths with the bit value 0 or 1 are reserved in the 21 ij horizontal paths.
示例性地,以有128个纵向子段为例,每个纵向子段的总长度均为32。当对第6个纵向子段对应的纵向路径进行校验,可以假定有9条纵向路径通过了校验。并且,通过校验的纵向路径中的第10个比特的比特值可以均为0。因此,第10个子段SCL译码器在对第7个比特进行对应的SCL译码的译码比特值的出现概率计算及路径分裂时,可以只在上述第10个比特的比特值为0的9条纵向路径的基础上进行SCL译码的译码比特值的出现概率计算及路径分裂。Exemplarily, taking 128 longitudinal sub-segments as an example, the total length of each longitudinal sub-segment is 32. When verifying the vertical paths corresponding to the sixth vertical subsection, it can be assumed that 9 vertical paths have passed the verification. In addition, the bit value of the 10th bit in the vertical path that has passed the check may all be 0. Therefore, when the 10th sub-segment SCL decoder performs the occurrence probability calculation and path splitting of the decoded bit value of the corresponding SCL decoding on the 7th bit, it can only be used when the bit value of the 10th bit is 0 On the basis of the 9 vertical paths, the occurrence probability calculation and path splitting of the decoded bit value of SCL decoding are performed.
同理,仍以上述的128个纵向子段为例,每个纵向子段的总长度均为32。当对第12个纵向子段对应的纵向路径进行校验,可以假定有10条纵向路径通过校验。并且,上述10条通过校验的纵向路径中的第18个比特的比特值可以均为1,因此,第18个子段SCL译码器在对第13个比特进行对应的SCL译码的译码比特值的出现概率计算及路径分裂时,可以只在上述第18个比特的比特值为1的10条纵向路径的基础上进行SCL译码的译码比特值的出现概率计算及路径分裂。Similarly, still taking the above 128 vertical sub-segments as an example, the total length of each vertical sub-segment is 32. When verifying the vertical paths corresponding to the 12th vertical subsection, it can be assumed that 10 vertical paths pass the verification. In addition, the bit value of the 18th bit in the above-mentioned 10 vertical paths that have passed the check can be all 1. Therefore, the 18th sub-segment SCL decoder is decoding the corresponding SCL decoding on the 13th bit. In the calculation of the occurrence probability of the bit value and the path splitting, the occurrence probability calculation and path splitting of the decoded bit value of the SCL decoding may be performed only on the basis of the 10 vertical paths whose bit value of the 18th bit is 1.
同理,仍以上述的128个纵向子段为例,每个纵向子段的总长度均为32。当对第3个纵向子段对应的纵向路径进行校验,可以假定有4条纵向路径通过校验。并且,上述4条通过校验的纵向路径中的第6个比特的比特值可以包含0与1,因此,第6个子段SCL译码器在对第4个比特进行对应的SCL译码的译码比特值的出现概率计算及路径分裂时,可以只在上述第6个比特的比特值为0或1的4条纵向路径的基础上进行SCL译码的译码比特值的出现概率计算及路径分裂。Similarly, still taking the above 128 vertical sub-segments as an example, the total length of each vertical sub-segment is 32. When verifying the vertical path corresponding to the third vertical subsection, it can be assumed that four vertical paths pass the verification. In addition, the bit value of the sixth bit in the above-mentioned four vertical paths that pass the check can include 0 and 1. Therefore, the sixth sub-segment SCL decoder is performing the corresponding SCL decoding on the fourth bit. When calculating the occurrence probability of the code bit value and the path splitting, the occurrence probability calculation and path of the decoding bit value of the SCL decoding can be performed only on the basis of the four vertical paths whose bit value of the sixth bit is 0 or 1. Split.
S208,对多条待选路径进行横向子段处理,得到多条备选路径。S208: Perform lateral sub-section processing on the multiple candidate paths to obtain multiple candidate paths.
在一些实施例中,对多条待选路径进行横向子段处理,得到多条备选路径的方法,可以如图4所示。In some embodiments, the method of performing horizontal sub-segment processing on multiple candidate paths to obtain multiple candidate paths may be as shown in FIG. 4 .
S402,通过m个子段译码器分别对多条待选路径进行横向子段处理,其中,第i个子段译码器从lij或2lij条待选路径中保留路径度量值最大的lhij条备选路径,当lij或2lij小于L时,lhij等于lij或等于2lij,当lij或2lij大于等于L时,lhij等于L,i=1,2,3,…,m;j=1,2,3,…,n;L用于指示备选路径的数量阈值,L为正整数。S402, perform horizontal subsegment processing on a plurality of paths to be selected by m subsegment decoders, wherein, the i th subsegment decoder retains the 1 hij with the largest path metric value from the 1 ij or 21 ij paths to be selected There are alternative paths, when l ij or 2l ij is less than L, l hij is equal to l ij or equal to 2l ij , when l ij or 2l ij is greater than or equal to L, l hij is equal to L, i=1, 2, 3, … , m; j=1, 2, 3, ..., n; L is used to indicate the threshold of the number of candidate paths, and L is a positive integer.
示例性地,以通过16个子段译码器分别对多条待选路径进行横向子段处理为例,其中任一待选路径的总长度均为16。其中,16个子段译码器分别对应每条待选路径中的某一个比特,例如,第1个子段译码器可以对应每条待选路径中的第一个比特。该第1个子段译码器可以对上述得到的多条待选路径进行进一步的筛选。上述得到待选路径的筛选方法可以基于横向子段的路径度量值来对横向子段进行筛选,保留路径度量值最大的lhij条备选路径。在示例性实施例中,可以设置一个L的值。当待选路径的数量大于该L的值,则需要对待选路径进行筛选,使待选路径的数量一直小于等于该L的值。本公开实施例不对该L的取值进行限定,L的取值可以基于技术指标或应用场景进行设定。Exemplarily, taking 16 sub-segment decoders for performing horizontal sub-segment processing on multiple paths to be selected respectively as an example, the total length of any path to be selected is 16. The 16 sub-segment decoders respectively correspond to a certain bit in each path to be selected. For example, the first sub-segment decoder may correspond to the first bit in each path to be selected. The first sub-segment decoder can further screen the multiple candidate paths obtained above. The above-mentioned screening method for obtaining the path to be selected may screen the horizontal sub-segments based on the path metric value of the horizontal sub-segment, and retain l hij candidate paths with the largest path metric value. In exemplary embodiments, a value of L may be set. When the number of paths to be selected is greater than the value of L, the paths to be selected need to be screened so that the number of paths to be selected is always less than or equal to the value of L. This embodiment of the present disclosure does not limit the value of L, and the value of L may be set based on technical indicators or application scenarios.
S404,第i个子段译码器以lhij条备选路径为基础,对第i个横向子段的第j+1个比特进行译码比特值的出现概率计算及路径分裂;当对第i个横向子段中的第n个比特进行译码比特值的出现概率计算及路径分裂后,得到长度为n的多条备选路径,路径分裂结束。S404, the i-th subsection decoder performs the occurrence probability calculation and path splitting of the decoding bit value on the j+1-th bit of the i-th horizontal subsection based on the l hij alternative paths; After the occurrence probability calculation of the decoded bit value and path splitting are performed on the nth bit in the horizontal subsections, multiple candidate paths of length n are obtained, and the path splitting ends.
示例性地,通过上述的横向子段处理方法,每个子段译码器均可以以前一个比特对应的备选路径为基础,对下一个比特进行译码比特值的出现概率计算及路径分裂,直至分裂至最后一个比特,得到最终的长度为n的多条备选路径。Exemplarily, through the above-mentioned horizontal sub-segment processing method, each sub-segment decoder can perform the occurrence probability calculation and path splitting of the decoded bit value for the next bit based on the alternative path corresponding to the previous bit, until Split to the last bit to get the final multiple alternative paths of length n.
S210,对多条备选路径进行校验,得到译码路径。S210, verifying the multiple candidate paths to obtain a decoding path.
在一些实施例中,对多条备选路径进行校验,得到译码路径,包括:对m个子段译码器的长度为n的多条备选路径分别进行校验,分别将m个子段译码器中通过校验且路径度量值最大的备选路径作为译码路径;若任一子段译码器没有备选路径通过校验,将任一子段译码器中路径度量值最大的备选路径作为译码路径。In some embodiments, verifying multiple candidate paths to obtain a decoding path includes: performing verification on multiple candidate paths of m subsection decoders with a length of n respectively, The candidate path that passes the check and has the largest path metric value in the decoder is used as the decoding path; if no alternative path in any sub-segment decoder passes the check, the path metric value of any sub-segment decoder is the largest. The alternative path is used as the decoding path.
在一种可能的实施方式中,若任一子段译码器没有备选路径通过校验,则证明本次译码失败。本公开实施例不对此处的对多条备选路径进行校验的方法进行限定,示例性地,此处对多条备选路径进行校验的方法可以与上述对纵向路径进行校验的方法相同,可以为奇偶校验或循环冗余校验或其它适用的校验方法。In a possible implementation manner, if no alternative path of any sub-segment decoder passes the check, it is proved that this decoding fails. This embodiment of the present disclosure does not limit the method for verifying multiple candidate paths here. Exemplarily, the method for verifying multiple candidate paths here may be the same as the above-mentioned method for verifying vertical paths. Similarly, it can be parity check or cyclic redundancy check or other suitable check methods.
S212,根据译码路径得到待译码极化码的译码结果。S212, obtaining a decoding result of the polar code to be decoded according to the decoding path.
在一些实施例中,根据译码路径得到待译码极化码的译码结果,包括:对m个子段译码器的m条译码路径进行子段变换,得到m个长度为n的目标译码路径;通过m个目标译码路径组成长度为N的目标译码路径,并经位置置换后得到待译码极化码的译码结果。In some embodiments, obtaining the decoding result of the polar code to be decoded according to the decoding path includes: performing sub-segment transformation on m decoding paths of the m sub-segment decoders to obtain m targets of length n Decoding path: A target decoding path of length N is formed by m target decoding paths, and the decoding result of the polar code to be decoded is obtained after position replacement.
在一些实施例中,子段变换为对m条译码路径的异或运算。示例性地,可以令m个子段SCL译码器分别对应的译码路径(也可以称为译码比特序列)为a,因此,m个译码比特序列a经过子段变换后可以得到长度为n的m个目标译码路径(也可以称为目标译码比特序列),可以令上述的m个目标译码路径为v。a与v之间的子段转换公式可以如公式1所示:In some embodiments, the sub-segment is transformed into an XOR operation over m decoding paths. Exemplarily, the decoding paths (also referred to as decoding bit sequences) corresponding to the m sub-segment SCL decoders can be set as a. Therefore, the length of the m decoding bit sequences a after sub-segment transformation can be obtained as The m target decoding paths of n (which may also be referred to as target decoding bit sequences) can be set as v. The sub-segment conversion formula between a and v can be shown in Equation 1:
其中, in,
另外,是阶克罗内克积。 in addition, Yes Order Kronecker product.
需要说明的是,和可以用于表示译码比特的判决值。并且,该判决值未必是发送端的原值。It should be noted, and Can be used to represent the decision value of the decoded bits. Moreover, the judgment value is not necessarily the original value of the sender.
之后,将公式1展开后可以得到如下所示的目标译码比特序列:After that, after expanding Equation 1, the target decoding bit sequence as shown below can be obtained:
需要说明的是,在本说明书中译码路径和译码比特序列的含义相同,因此目标译码路径和目标译码比特序列含义相同,备选路径和备选比特序列含义相同,分裂路径和分裂比特序列含义相同。It should be noted that the meaning of the decoding path and the decoding bit sequence is the same in this specification, so the target decoding path and the target decoding bit sequence have the same meaning, the alternative path and the alternative bit sequence have the same meaning, and the split path and split Bit sequences have the same meaning.
示例性地,如果长度为N的极化码编码过程中包含倒位序变换,则该位置置换为倒位序变换的逆处理;如果长度为N的极化码编码过程中不包含倒位序变换,则该位置置换可以保留长度为N的译码结果中比特顺序不变。Exemplarily, if the encoding process of the polar code of length N includes the inverse order transformation, the position is replaced by the inverse processing of the inverse order transformation; if the encoding process of the polar code of length N does not include the inversion order transformation, the position permutation can keep the bit order in the decoding result of length N unchanged.
示例性地,如果长度为n的待译码子段在极化码编码过程中包含倒位序变换,则在将待译码序列按照顺序划分为m个待译码子段后需要相应地进行倒位序变换,以得到待译码子段;如果长度为n的待译码子段在极化码编码过程中不包含倒位序变换,则在将待译码序列按照顺序划分为m个待译码子段后不需要进行倒位序变换,该位置置换可以保留长度为n的待译码子段译码结果中比特顺序不变。Exemplarily, if a subsection to be decoded with a length of n includes reverse order transformation in the polar code encoding process, then the sequence to be decoded is divided into m subsections to be decoded in sequence, and needs to be performed accordingly. Inverted sequence transformation to obtain the subsection to be decoded; if the subsection to be decoded with length n does not include the inverted sequence transformation in the polar code encoding process, then the sequence to be decoded is divided into m in order. After the subsection to be decoded, it is not necessary to perform reverse order transformation, and the position replacement can keep the bit order in the decoding result of the subsection to be decoded with a length of n unchanged.
本公开的实施例所提供的方法,可以对待译码极化码中每一待译码子段所对应的分裂后的横向路径,进行纵向子段处理。然后,再对纵向子段处理得到的多条待选路径,进行横向子段处理。因此,本公开可以通过纵向子段处理来进行全局考虑,避免筛选多条备选路径时仅考虑了其中一个待译码子段的局部概率。因而本公开可以提高极化码的译码性能。The method provided by the embodiments of the present disclosure can perform vertical subsection processing on the split horizontal path corresponding to each subsection to be decoded in the polar code to be decoded. Then, perform horizontal sub-segment processing on a plurality of candidate paths obtained by processing the vertical sub-segments. Therefore, the present disclosure can take global consideration through vertical sub-section processing, and avoid considering only the local probability of one of the sub-sections to be decoded when screening multiple alternative paths. Therefore, the present disclosure can improve the decoding performance of polar codes.
示例性地,一种极化码译码的过程示意图可以如图5所示。对于长度为N的待译码极化码,将待译码极化码划分为m个长度为n的待译码子段,可以通过m个子段SCL译码器同时进行SCL译码,将各个待译码子段进行SCL译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径。示例性地,对于每个待译码子段的第j个比特进行SCL译码处理,可以得到2lij条横向路径。该步骤可以参见上述S204,此处不再赘述。Exemplarily, a schematic diagram of a polar code decoding process may be shown in FIG. 5 . For the polar code to be decoded with a length of N, the polar code to be decoded is divided into m subsections of length n to be decoded, and the m subsection SCL decoders can simultaneously perform SCL decoding, and each The occurrence probability calculation of the decoded bit value of the SCL decoded subsection to be decoded and the path splitting are performed to obtain the split horizontal path. Exemplarily, by performing SCL decoding processing on the jth bit of each subsection to be decoded, 21 ij horizontal paths can be obtained. For this step, reference may be made to the above S204, and details are not repeated here.
之后,可以对横向路径进行纵向子段处理,得到多条待选路径。示例性地,对于每个待译码子段的第j个比特,可以将m个待译码子段中每个待译码子段的第j个比特组成第j个纵向子段。对第j个纵向子段中的m个比特按顺序进行路径分裂,其中,第i个比特对应的纵向路径数为2lvij,当2lvij>=Lv时,保留路径度量值最大的Lv条纵向路径。然后,可以对第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径,根据通过校验的第j个纵向子段的纵向路径,对2lij条横向路径进行筛选,保留lij或2lij条待选路径。该步骤可以参见上述S206,此处不再赘述。Afterwards, vertical sub-segment processing can be performed on the horizontal path to obtain multiple paths to be selected. Exemplarily, for the jth bit of each subsection to be decoded, the jth bit of each subsection to be decoded in the m subsections to be decoded may be formed into a jth vertical subsection. Perform path splitting on m bits in the j-th vertical subsection in sequence, where the number of vertical paths corresponding to the i-th bit is 2l vij , and when 2l vij >=L v , keep L v with the largest path metric value vertical path. Then, the Lv longitudinal paths of the j-th longitudinal subsection can be verified, and the longitudinal paths of the j-th longitudinal subsection that have passed the verification are retained. According to the longitudinal paths of the j-th longitudinal subsection that have passed the verification, 2l ij lateral paths are screened, and l ij or 2l ij candidate paths are reserved. For this step, reference may be made to the above S206, and details are not repeated here.
在得到lij或2lij条待选路径后,可以对lij或2lij条待选路径进行横向子段处理,得到多条备选路径。示例性地,可以通过m个子段译码器分别对lij或2lij条待选路径进行横向子段处理,其中,第i个子段译码器从lij或2lij条待选路径中保留路径度量值最大的lhij条备选路径,当lij或2lij小于L时,lhij等于lij或等于2lij,当lij或2lij大于等于L时,lhij等于L。该步骤可以参见上述S208,此处不再赘述。After l ij or 2l ij of candidate paths are obtained, horizontal sub-segment processing may be performed on l ij or 2l ij of candidate paths to obtain multiple candidate paths. Exemplarily, horizontal sub-segment processing may be performed on the 1 ij or 21 ij candidate paths respectively through m sub-segment decoders, wherein the i-th sub-segment decoder is reserved from the 1 ij or 21 ij candidate paths. l hij alternative paths with the largest path metric value, when l ij or 2l ij is less than L, l hij is equal to l ij or equal to 2l ij , and when l ij or 2l ij is greater than or equal to L, l hij is equal to L. For this step, reference may be made to the above S208, which will not be repeated here.
在得到上述的多条备选路径后,可以根据子段SCL译码器得到的多条备选路径对该子段SCL译码器进行下一比特的译码处理。示例性地,上述的多条备选路径是第i个子段译码器对于第j个比特得到的多条备选路径。当该备选路径的数量为L,则第j+1个比特进行SCL译码处理得到的横向路径数为2L。再根据第j+1个比特对应的2L个横向路径可以得到第j+1个纵向子段,根据第j+1个纵向子段重复上述操作,保留L或2L条待选路径。在得到L或2L条待选路径后,可以根据L或2L条待选路径重复上述操作,得到L条备选路径。After the above-mentioned multiple alternative paths are obtained, the sub-segment SCL decoder can perform the next bit decoding process according to the multiple alternative paths obtained by the sub-segment SCL decoder. Exemplarily, the above-mentioned multiple candidate paths are multiple candidate paths obtained by the ith subsection decoder for the jth bit. When the number of the candidate paths is L, the number of lateral paths obtained by performing the SCL decoding process on the j+1th bit is 2L. Then, the j+1 th vertical subsection can be obtained according to the 2L horizontal paths corresponding to the j+1 th bit, and the above operation is repeated according to the j+1 th vertical subsection, and L or 2L candidate paths are reserved. After L or 2L candidate paths are obtained, the above operation may be repeated according to the L or 2L candidate paths to obtain L candidate paths.
之后,可以对L条备选路径进行校验,得到通过了校验的译码路径。示例性地,该校验可以为CRC校验。对该译码路径进行位置置换操作,可以得到最终的待译码极化码的译码结果。该步骤可以参见上述S210与S212,此处不再赘述。Afterwards, the L candidate paths can be checked to obtain a decoding path that has passed the check. Exemplarily, the check can be a CRC check. By performing a position replacement operation on the decoding path, the final decoding result of the polar code to be decoded can be obtained. For this step, reference may be made to the above S210 and S212, which will not be repeated here.
基于同一发明构思,本公开实施例中还提供了一种极化码译码装置,如下面的实施例所述。由于该装置实施例解决问题的原理与上述方法实施例相似,因此该装置实施例的实施可以参见上述方法实施例的实施,重复之处不再赘述。Based on the same inventive concept, the embodiments of the present disclosure also provide a polar code decoding apparatus, as described in the following embodiments. Since the principle of solving the problem in this apparatus embodiment is similar to that in the foregoing method embodiment, the implementation of this apparatus embodiment may refer to the implementation of the foregoing method embodiment, and repeated details will not be repeated.
图6示出本公开实施例中一种极化码译码装置示意图,如图6所示,该装置包括:FIG. 6 shows a schematic diagram of a polar code decoding apparatus in an embodiment of the present disclosure. As shown in FIG. 6 , the apparatus includes:
待译码极化码列获取模块601,用于获取长度为N的待译码极化码,将待译码极化码划分为m个长度为n的待译码子段,N、m和n为2的整次幂;The polar code
横向路径确定模块602,用于通过m个子段译码器分别对m个待译码子段进行串行消除列表SCL译码的译码比特值的出现概率计算及路径分裂,得到分裂后的横向路径;The lateral
纵向子段处理模块603,用于对横向路径进行纵向子段处理,得到多条待选路径;The vertical
横向子段处理模块604,用于对多条待选路径进行横向子段处理,得到多条备选路径;a lateral
校验模块605,用于对多条备选路径进行校验,得到译码路径;A
译码结果确定模块606,用于根据译码路径得到待译码极化码的译码结果。The decoding
在本公开的一些实施例中,横向路径确定模块602,用于通过第i个子段译码器对第i个待译码子段的第j个比特进行SCL译码处理,得到第j个比特的出现概率以及2lij条横向路径,其中,i=1,2,3,…,m;j=1,2,3,…,n;2lij为第i个待译码子段的第j个比特所对应的分裂后的横向路径的数量。In some embodiments of the present disclosure, the lateral
在本公开的一些实施例中,纵向子段处理模块603,用于将m个待译码子段中每个待译码子段的第j个比特组成第j个纵向子段,使得任一纵向子段的总长度为m;对第j个纵向子段中的m个比特按顺序进行路径分裂,其中,第i个比特对应的纵向路径数为2lvij,当2lvij>=Lv时,保留路径度量值最大的Lv条纵向路径,i=1,2,3,…,m;j=1,2,3,…,n;Lv与lvij均为正整数,任一纵向路径的路径度量值用于指示任一纵向路径的出现概率;对第j个纵向子段的Lv条纵向路径进行校验,保留通过校验的第j个纵向子段的纵向路径,根据通过校验的第j个纵向子段的纵向路径,对2lij条分裂后的横向路径进行筛选,保留lij或2lij条待选路径。In some embodiments of the present disclosure, the vertical
在本公开的一些实施例中,横向子段处理模块604,用于通过m个子段译码器分别对多条待选路径进行横向子段处理,其中,第i个子段译码器从lij或2lij条待选路径中保留路径度量值最大的lhij条备选路径,当lij或2lij小于L时,lhij等于lij或等于2lij,当lij或2lij大于等于L时,lhij等于L,i=1,2,3,…,m;j=1,2,3,…,n;L用于指示备选路径的数量阈值,L为正整数;第i个子段译码器以lhij条备选路径为基础,对第i个横向子段的第j+1个比特进行译码比特值的出现概率计算及路径分裂,横向子段为长度为n的横向路径;当对第i个横向子段中的第n个比特进行译码比特值的出现概率计算及路径分裂后,得到长度为n的多条备选路径,路径分裂结束;In some embodiments of the present disclosure, the horizontal
校验模块605,用于对m个子段译码器的长度为n的多条备选路径分别进行校验,分别将m个子段译码器中通过校验且路径度量值最大的备选路径作为译码路径;若任一子段译码器没有备选路径通过校验,将任一子段译码器中路径度量值最大的备选路径作为译码路径。The
在本公开的一些实施例中,译码结果确定模块606,用于对m个子段译码器的m条译码路径进行子段变换,得到m个长度为n的目标译码路径;通过m个目标译码路径组成长度为N的目标译码路径,并经位置置换后得到待译码极化码的译码结果。In some embodiments of the present disclosure, the decoding
在本公开的一些实施例中,纵向子段处理模块603,用于若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为0,则2lij条横向路径中只保留比特值为0的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值都为1,则2lij条横向路径中只保留比特值为1的lij条待选路径;若通过校验的第j个纵向子段的纵向路径中,第i个比特的值为0或1,则2lij条横向路径中保留比特值为0或1的2lij条待选路径。In some embodiments of the present disclosure, the vertical
在本公开的一些实施例中,纵向子段处理模块603,用于对第j个纵向子段的Lv条纵向路径进行奇偶校验或循环冗余校验,保留通过校验的第j个纵向子段的纵向路径。In some embodiments of the present disclosure, the vertical
在本公开的一些实施例中,子段变换为对m条译码路径的异或运算。In some embodiments of the present disclosure, the sub-segment is transformed into an XOR operation on m decoding paths.
在本公开的一些实施例中,校验模块605,还用于:对第j个纵向子段的Lv条纵向路径进行校验,当全部纵向路径均没有通过校验,停止译码。In some embodiments of the present disclosure, the
本公开实施例所提供的装置,可以对待译码极化码中每一待译码子段所对应的分裂后的横向路径,进行纵向子段处理。然后,再对纵向子段处理得到的多条待选路径,进行横向子段处理。因此,本公开可以通过纵向子段处理来进行全局考虑,避免筛选多条备选路径时仅考虑了其中一个待译码子段的局部概率。因而本公开可以提高极化码的译码性能。The apparatus provided by the embodiment of the present disclosure can perform vertical subsection processing on the split horizontal path corresponding to each subsection to be decoded in the polar code to be decoded. Then, perform horizontal sub-segment processing on a plurality of candidate paths obtained by processing the vertical sub-segments. Therefore, the present disclosure can take global consideration through vertical sub-section processing, and avoid considering only the local probability of one of the sub-sections to be decoded when screening multiple alternative paths. Therefore, the present disclosure can improve the decoding performance of polar codes.
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。As will be appreciated by one skilled in the art, various aspects of the present disclosure may be implemented as a system, method or program product. Therefore, various aspects of the present disclosure can be embodied in the following forms: a complete hardware implementation, a complete software implementation (including firmware, microcode, etc.), or a combination of hardware and software aspects, which may be collectively referred to herein as implementations "circuit", "module" or "system".
下面参照图7来描述根据本公开的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。An
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730。As shown in FIG. 7,
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述“具体实施方式”部分中描述的根据本公开各种示例性实施方式的步骤。Wherein, the storage unit stores program codes, and the program codes can be executed by the
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。The
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。The
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。The
电子设备700也可以与一个或多个外部设备740(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。The
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。From the description of the above embodiments, those skilled in the art can easily understand that the exemplary embodiments described herein may be implemented by software, or may be implemented by software combined with necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure may be embodied in the form of software products, and the software products may be stored in a non-volatile storage medium (which may be CD-ROM, U disk, mobile hard disk, etc.) or on the network , including several instructions to cause a computing device (which may be a personal computer, a server, a terminal device, or a network device, etc.) to execute the method according to an embodiment of the present disclosure.
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质。其上存储有能够实现本公开上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“具体实施方式”部分中描述的根据本公开各种示例性实施方式的步骤。In an exemplary embodiment of the present disclosure, a computer-readable storage medium is also provided, and the computer-readable storage medium may be a readable signal medium or a readable storage medium. A program product capable of implementing the above-described method of the present disclosure is stored thereon. In some possible implementations, various aspects of the present disclosure may also be implemented in the form of a program product comprising program code for causing the program product to run on a terminal device when the program product is run on a terminal device. The terminal device executes the steps according to various exemplary embodiments of the present disclosure described in the above-mentioned "Description of Embodiments" section of this specification.
本公开中的计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。More specific examples of computer-readable storage media in the present disclosure may include, but are not limited to, electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), Erasable programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above.
在本公开中,计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。In the present disclosure, a computer-readable storage medium may include a data signal in baseband or propagated as part of a carrier wave, carrying readable program code therein. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing. A readable signal medium can also be any readable medium, other than a readable storage medium, that can transmit, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
可选地,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。Alternatively, program code embodied on a computer-readable storage medium may be transmitted using any suitable medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
在具体实施时,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。In particular implementation, program code for performing operations of the present disclosure may be written in any combination of one or more programming languages, including object-oriented programming languages—such as Java, C++, etc., and also This includes conventional procedural programming languages - such as the "C" language or similar programming languages. The program code may execute entirely on the user computing device, partly on the user device, as a stand-alone software package, partly on the user computing device and partly on a remote computing device, or entirely on the remote computing device or server execute on. In the case of a remote computing device, the remote computing device may be connected to the user computing device through any kind of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (eg, using an Internet service provider business via an Internet connection).
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。It should be noted that although several modules or units of the apparatus for action performance are mentioned in the above detailed description, this division is not mandatory. Indeed, according to embodiments of the present disclosure, the features and functions of two or more modules or units described above may be embodied in one module or unit. Conversely, the features and functions of one module or unit described above may be further divided into multiple modules or units to be embodied.
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。Additionally, although the various steps of the methods of the present disclosure are depicted in the figures in a particular order, this does not require or imply that the steps must be performed in the particular order or that all illustrated steps must be performed to achieve the desired result. Additionally or alternatively, certain steps may be omitted, multiple steps may be combined into one step for execution, and/or one step may be decomposed into multiple steps for execution, and the like.
通过以上实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。Those skilled in the art can easily understand from the description of the above embodiments that the exemplary embodiments described herein can be implemented by software, or can be implemented by software combined with necessary hardware. Therefore, the technical solutions according to the embodiments of the present disclosure may be embodied in the form of software products, and the software products may be stored in a non-volatile storage medium (which may be CD-ROM, U disk, mobile hard disk, etc.) or on the network , including several instructions to cause a computing device (which may be a personal computer, a server, a mobile terminal, or a network device, etc.) to execute the method according to an embodiment of the present disclosure.
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围由所附的权利要求指出。Other embodiments of the present disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common general knowledge or techniques in the technical field not disclosed by this disclosure . The specification and examples are to be regarded as exemplary only, with the true scope of the disclosure being indicated by the appended claims.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210771615.9A CN115149966A (en) | 2022-06-30 | 2022-06-30 | Polar code decoding method and device, electronic equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210771615.9A CN115149966A (en) | 2022-06-30 | 2022-06-30 | Polar code decoding method and device, electronic equipment and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115149966A true CN115149966A (en) | 2022-10-04 |
Family
ID=83409654
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210771615.9A Pending CN115149966A (en) | 2022-06-30 | 2022-06-30 | Polar code decoding method and device, electronic equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115149966A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115987454A (en) * | 2022-12-20 | 2023-04-18 | 中国电信股份有限公司 | Demodulation and decoding method, device, storage medium and electronic equipment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016191996A1 (en) * | 2015-05-31 | 2016-12-08 | 华为技术有限公司 | Path merging method and device for polar code, and decoding device |
CN108462558A (en) * | 2018-03-01 | 2018-08-28 | 西安电子科技大学 | A kind of polarization code SCL interpretation methods, device and electronic equipment |
CN109004939A (en) * | 2017-06-06 | 2018-12-14 | 华为技术有限公司 | Polarize decoder and method |
CN110635808A (en) * | 2018-06-22 | 2019-12-31 | 华为技术有限公司 | Polar code decoding method and decoding device |
US20210184701A1 (en) * | 2018-08-30 | 2021-06-17 | Huawei Technologies Co., Ltd. | Scl parallel decoding method and apparatus and device |
-
2022
- 2022-06-30 CN CN202210771615.9A patent/CN115149966A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016191996A1 (en) * | 2015-05-31 | 2016-12-08 | 华为技术有限公司 | Path merging method and device for polar code, and decoding device |
CN109004939A (en) * | 2017-06-06 | 2018-12-14 | 华为技术有限公司 | Polarize decoder and method |
CN108462558A (en) * | 2018-03-01 | 2018-08-28 | 西安电子科技大学 | A kind of polarization code SCL interpretation methods, device and electronic equipment |
CN110635808A (en) * | 2018-06-22 | 2019-12-31 | 华为技术有限公司 | Polar code decoding method and decoding device |
US20210184701A1 (en) * | 2018-08-30 | 2021-06-17 | Huawei Technologies Co., Ltd. | Scl parallel decoding method and apparatus and device |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115987454A (en) * | 2022-12-20 | 2023-04-18 | 中国电信股份有限公司 | Demodulation and decoding method, device, storage medium and electronic equipment |
CN115987454B (en) * | 2022-12-20 | 2024-12-24 | 中国电信股份有限公司 | Demodulation decoding method and device, storage medium and electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9504042B2 (en) | System and method for encoding and decoding of data with channel polarization mechanism | |
WO2014173133A1 (en) | Decoding method and decoding apparatus for polar code | |
US11847019B2 (en) | Polar code construction method and apparatus | |
CN113273083A (en) | Method and system for decoding data using compressed channel output information | |
EP3591868A1 (en) | Information processing method, apparatus and device | |
US10892783B2 (en) | Apparatus and method for decoding polar codes | |
CN115149966A (en) | Polar code decoding method and device, electronic equipment and storage medium | |
WO2019096184A1 (en) | Method and device for decoding staircase code, and storage medium | |
CN111130567B (en) | Belief Propagation List Decoding Method for Polar Codes with Added Noise Perturbation and Bit Flip | |
CN111030708B (en) | Iteratively adjustable soft serial cancellation list decoding method and device for polar codes | |
US10108483B2 (en) | Computing system with error handling mechanism and method of operation thereof | |
WO2019137231A1 (en) | Decoding method and device | |
CN113055022A (en) | Parallel soft cancellation decoding method and related device | |
WO2021213219A1 (en) | Encoding and decoding methods and apparatuses, and device | |
CN110830166B (en) | Joint detection decoding method and device, computer equipment and storage medium | |
CN112886971A (en) | Information source and channel joint polarization message transmission method and device | |
WO2020088256A1 (en) | Decoding method and device | |
CN115987454A (en) | Demodulation and decoding method, device, storage medium and electronic equipment | |
CN114362763B (en) | Joint decoding method and device, storage medium and electronic device | |
CN118540026B (en) | Confidence ordered likelihood decoding method, device, equipment and storage medium | |
CN115833847B (en) | Polar code decoding method, polar code decoding device, communication equipment and storage medium | |
CN115276900B (en) | Information transmission method and system for joint polarization of source channels of distributed source | |
CN109412610B (en) | Encoding method, decoding method, encoding device and decoding device | |
US12047094B2 (en) | Decoding method and decoding device | |
US20240333311A1 (en) | Recovering scrambling sequence initialization from frozen bits of an uncoded downlink control information vector |
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 |