CN113055021A - 译码方法、装置、网络设备及存储介质 - Google Patents
译码方法、装置、网络设备及存储介质 Download PDFInfo
- Publication number
- CN113055021A CN113055021A CN201911370321.XA CN201911370321A CN113055021A CN 113055021 A CN113055021 A CN 113055021A CN 201911370321 A CN201911370321 A CN 201911370321A CN 113055021 A CN113055021 A CN 113055021A
- Authority
- CN
- China
- Prior art keywords
- data
- unit
- data unit
- soft
- bits
- 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 69
- 230000015654 memory Effects 0.000 claims description 44
- 239000011159 matrix material Substances 0.000 claims description 29
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004080 punching Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 description 63
- 230000008569 process Effects 0.000 description 31
- 238000006243 chemical reaction Methods 0.000 description 22
- 230000005540 biological transmission Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 230000009897 systematic effect Effects 0.000 description 9
- 230000006854 communication Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 239000000945 filler Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000009966 trimming 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/11—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 using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—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
-
- 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/11—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 using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1148—Structural properties of the code parity-check or generator matrix
- H03M13/116—Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
-
- 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/27—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 using interleaving techniques
- H03M13/2703—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 using interleaving techniques the interleaver involving at least two directions
- H03M13/2707—Simple row-column interleaver, i.e. pure block interleaving
-
- 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/27—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 using interleaving techniques
- H03M13/2778—Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
-
- 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/3769—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using symbol combining, e.g. Chase combining of symbols received twice or more
-
- 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/6306—Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
-
- 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
- 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
- H04L1/0047—Decoding adapted to other signal detection operation
-
- 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/0067—Rate matching
-
- 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/0067—Rate matching
- H04L1/0068—Rate matching by puncturing
-
- 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/0071—Use of interleaving
-
- 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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1812—Hybrid protocols; Hybrid automatic repeat request [HARQ]
- H04L1/1819—Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
-
- 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/27—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 using interleaving techniques
- H03M13/276—Interleaving address generation
-
- 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/45—Soft decoding, i.e. using symbol reliability information
-
- 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/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1835—Buffer management
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)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
本申请提出一种译码方法、装置、网络设备及存储介质。该方法包括:接收解交织前数据和软比特编码位置;划分所述解交织前数据,得到第一数据单元;获取被打孔数据,并根据所述被打孔数据,得到第二数据单元,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定;根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。本申请可以提高解速率匹配和译码效率。
Description
技术领域
本申请涉及通信领域,具体涉及一种译码方法、装置、网络设备和存储介质。
背景技术
在通信系统中,速率匹配的作用是调整信道编码器输出的码率,使速率匹配模块输出的比特数与系统分配的物理资源所能承载的比特数相符合。速率匹配过程中一般伴随交织,交织用于打乱编码数据,以在信号发生错误时,将错误离散化,降低纠错处理的难度,从而保护编码数据,以提高编码性能的稳定性。
3GPP NR协议在上下行业务信道采用低密度校验矩阵编码(Low Density ParityCheck Code,LDPC),编码后先进行了速率匹配,然后再交织,这几个过程都是以码块(CodeBlock,CB)为单位的,速率匹配采用了基于循环缓存器的速率匹配机制,交织采用了常用的R行C列的分组交织。解交织、解速率匹配是速率匹配、交织的逆过程。LDPC译码为了满足吞吐率要求,通常一个周期要读取Zc个软比特进行处理,即解速率匹配或译码器需要将Zc个软比特组合到一起,间接要求解速率匹配过程有x/Zc或者x%Zc等寻址操作,其中,x为软比特在译码器的位置,而Zc为LDPC编码使用的提升因子,对应有8种取值,且都是质数,导致这种寻址操作实现复杂。
发明内容
本申请提供用于译码方法、装置、网络设备和存储介质。
本申请实施例提供一种译码方法,包括:
接收解交织前数据和软比特编码位置;
划分所述解交织前数据,得到第一数据单元;
获取被打孔数据,并根据所述被打孔数据,得到第二数据单元,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定;
根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。
本申请实施例提供一种译码装置,包括:
解交织前数据接收模块,用于接收解交织前数据和软比特编码位置;
第一数据单元生成模块,用于划分所述解交织前数据,得到第一数据单元;
第二数据单元生成模块,用于获取被打孔数据,并根据所述被打孔数据,得到第二数据单元,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定;
译码数据确定模块,用于根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。
本申请实施例提供一种网络设备,包括:至少一个处理器以及存储器;所述处理器用于执行存储器中存储的程序,以实现本申请实施例中的任意一种方法。
本申请实施例提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求本申请实施例中的任意一种方法。
本申请实施例所提供的译码方法、装置、网络设备及存储介质,通过对解交织前数据中的软比特进行划分,形成多个第一数据单元,同时获取被打孔数据,并进行软比特划分,生成多个第二数据单元,并按照软比特编码位置、第一数据单元和第二数据单元形成待译码数据并进行译码,从而实现将多个软比特形成单元进行处理,解决了现有技术中解速率匹配过程中需要按照逐个软比特进行处理导致解速率匹配的效率低的问题,可以减少解速率匹配和译码过程中逐个软比特单独寻址的情况,可以提高解速率匹配和译码效率。
关于本申请的以上实施例和其他方面以及其实现方式,在附图说明、具体实施方式和权利要求中提供更多说明。
附图说明
图1为本申请实施例中的发送端和接收端交互的流程图;
图2为本申请实施例中的译码方法的流程图;
图3为本申请实施例中的编码数据结构的示意图;
图4为本申请实施例所适用的应用场景的示意图;
图5为本申请实施例中的软比特存储格式的示意图;
图6为本申请实施例中的单元处理的时序图;
图7为本申请实施例中的速率匹配后数据的示意图;
图8为本申请实施例中的一种交织矩阵的示意图;
图9为本申请实施例中的另一种交织矩阵的示意图;
图10为本申请实施例中的译码装置的示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,下文中将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在介绍本申请实施例提供的技术方案之前,为方便理解,先介绍发送端与接收端的通信过程涉及的数据处理,具体如图1所示,
发送端根据待发送的传输块生成循环冗余校验码(Cyclic Redundancy Check,CRC),并将传输块分割形成CB作为传输单元,计算每个CB的CRC。对各码块进行低密度奇偶校验(Low Density Parity Check,LDPC)编码,得到CB对应的编码数据,并对编码数据依次经过速率匹配和交织,并将输出结果进行级联,依次进行加扰、调制、快速傅里叶逆变换,以设定频率进行发射,通过无线空口发送至接收端。
接收端根据接收到的数据分别依次进行快速傅里叶变换、信道估计和解调、解扰和解码块级联,之后将每个码块对应的数据进行解交织,并对得到的解交织前数据进行解速率匹配和软合并,从而得到待译码数据,之后对待译码数据进行LDPC译码,得到译码数据,其中,译码数据和编码数据相同。最后将得到的码块进行CRC验证,并将通过CRC验证的多个码块进行解码块分割,获取传输块。同时对传输块进行CRC验证,将通过验证的传输块,即为发送端实际发送的数据,接收端可以针对该数据进行后续处理。
其中,
设一个CB所有系统比特和CRC校验比特加起来为K′个比特,其中,有L个CRC校验比特(L>0),对应序列如下:
c0,c1,c2,……cK′-1
目前协议规定LDPC校验矩阵有2类,基图1(BG1)或基图2(BG2)。
基图确定后,根据K′以及基图可以唯一确定该CB编码时使用的LDPC提升因子Zc。
提升因子Zc可以基于公式Zc=a×2j确定,其中j=0,1,...,7,且Zc≤384,同时a为质数,a为集合{2,3,5,7,9,11,13,15}中的任意一个。Zc由一个码块包含的信息比特和CRC校验比特数之和,以及LDPC基图(取值1或2)确定。
在LDPC编码后,也就是速率匹配前的N个比特序列为:
d0,d1,d2,……dN-1
其中系统比特为
可见,系统比特为:
固定被打孔,不会发送到接收端。
填充比特(Filler Bits)位置为(包括K-K′个填充比特):
ds=<NULL>,s=K′-2Zc,…,K-1
其中当基图1时,K=22Zc;当基图2时,K=10Zc。
其余比特为根据LDPC校验矩阵生成的校验比特。
其次,进行速率匹配
设E为速率匹配后输出的比特数,则速率匹配过程为
其中Ncb≤N,Ncb为基于有限缓存的速率匹配中的循环缓存实际大小;
k0为不同冗余版本的速率匹配起始位置,k0对应的大小(即与第K'-2Zc个软比特之间包括多少个软比特)为Zc的整数倍。
该码块速率匹配后输出的比特数,即发送端实际发送比特数,取值需为Qm的整数倍。
再次,进行交织
其中Qm为调制阶数,E为速率匹配后输出的比特数,能被Qm整除。
该交织为行列交织器,其中行数R=Qm;列数C=E/Qm。
最后,进行码块级联,加扰,调制,层映射,快速傅里叶逆变换等处理,通过天线发送处理。调制时,1列Qm行个软比特都被调制到同一个星座点。
实施例
图2为本申请实施例提供的译码方法的流程图,本实施例可适用于在通信数据的接收端对通信数据进行解交织和解速率匹配的情况,该方法可以由本申请实施例提供的译码装置来执行,该装置可采用软件和/或硬件的方式实现,并一般可集成网络设备中。如图2所示,具体包括:
S110,接收解交织前数据和软比特编码位置。
解交织前数据可以是软比特。解交织前数据实际是发送端按行写入交织矩阵,按列读出的比特数据,发送端的一个比特对应接收端一个软比特。解交织前数据应当与发送端对CB进行交织得到的交织数据相同,但由于经过空口传输,接收端接收到的数据不一定正确,即解交织前数据不一定与交织数据相同。
软比特编码位置至少包括解交织前数据中各软比特在编码数据(也即译码数据)中的位置。软比特编码位置可以根据接收到的交织矩阵确定,也可以直接由发送端发送至接收端。编码数据即为发送端进行编码之后,且在进行速率匹配和交织之前的数据。
本申请实施例的译码过程对接收解交织前数据进行解速率匹配和软合并得到待译码数据,并对待译码数据进行译码的过程。待译码数据用于译码得到译码数据,编码数据和待译码数据相同。实际上,在进行译码之前,需要先恢复成未经过任何处理的编码数据,从而实现准确译码。
软比特是指接收端在接收到信号之后,不进行判决,直接输出模拟量进行量化的比特。
S120,划分所述解交织前数据,得到第一数据单元。
第一数据单元包括至少两个软比特,用于对软比特进行组合,作为解速率匹配和软合并的处理单元进行处理。
划分所述解交织前数据,实际是将解交织前数据包括的全部软比特进行分组。
S130,获取被打孔数据,并根据所述被打孔数据,生成第二数据单元,其中,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定。
其中,S120的顺序可以与S130进行调整,可以在S130之后,也可以与S130同时进行,对此,本申请实施例不作具体限制。
实际上,本申请实施例中速率匹配是发送端将重复比特或者打孔比特,以匹配物理信道的承载能力。打孔是将物理信道不能承载的比特作为冗余数据打掉,同时,将后面的软比特依次前移一位;重复是通过在缓存器中循环取数来达到重复的效果,重复的比特并不相邻。解速率匹配相反,恢复被打掉的比特并将重复的比特合并。其中,打孔和重复都是可选的。本申请实施例中速率匹配为基于循环缓存器的速率匹配机制。
被打孔数据为在速率匹配过程中被打掉的软比特。被打孔数据用于和解交织前数据进行组合生成与编码数据相同的待译码数据。
第二数据单元包括至少两个软比特,用于对软比特进行组合,作为编码数据中被打掉的处理单元,以及用于与第一数据单元进行组合形成待译码数据。
实际上,编码数据可以认为是软比特序列,经过速率匹配得到解交织前数据,其中,从编码数据中删除的数据属于被打孔数据。如图3所示,编码数据包括系统比特、填充比特(3)和校验比特。其中,在通信标准中,系统比特中包括的前2Zc个比特固定为被打孔数据。此外,系统比特还可能包括其他被打孔数据,校验比特中也可以存在其他被打孔数据。需要说明的是,系统比特包括的其他被打孔数据,校验比特包括的被打孔数据和填充比特均可以存在,也可以不存在。其中,前2Zc个比特固定为被打孔数据,但该被打孔数据的恢复操作不属于解速率匹配。其余被打孔数据的恢复操作属于解速率匹配。
软比特编码位置包括解交织前数据中各软比特在编码数据中的位置和被打孔数据中各软比特在编码数据中的位置。编码数据完成速率匹配过程,之后再进行交织等操作。从而,编码数据可以针对软比特编码位置,根据位于被打孔数据中的软比特在编码数据中的位置,确定被打孔数据。而解交织前数据可以包括多种形式的数据,例如,获取重复的软比特并进行重复形成的数据;获取重传的软比特形成的数据;获取不重复的软比特形成的数据等。其中,重复的、重传以及不重复的软比特位于解交织前数据中,由此,可以根据重复的、重传以及不重复的软比特在编码数据中的位置,确定解交织前数据中各软比特在编码数据中的位置。其中,重复的软比特实际是重复出现的,也即解交织前数据中存在多个软比特在编码数据中的位置相同。
在一个示例性的实施例方式中,所述第一数据单元和所述第二数据单元的单元长度均为目标长度,所述目标长度根据提升因子确定,所述目标长度满足所述提升因子关联的整除条件。
目标长度用于确定第一数据单元和第二数据单元包括的软比特的最大数量。提升因子可以是指在发送端中编码所使用的提升因子,表征比特数扩大的倍数。
通过配置单元的长度均为目标长度,且根据提升因子确定,可以合理配置单元的长度,同时每个单元的长度相同,方便对单元中的软比特进行寻址。
实际上,接收端是针对一个CB进行处理,当CB译码正确时,结束对该CB的解交织和解速率匹配的过程。
在CB第一次传输时,通常对HARQ中该CB中存储的历史合并数据清零。可以在解交织前数据关联的码块处理完成时,删除该码块的关联数据,或者为给码块的关联数据添加码块标识,以区分该码块的关联数据与下一码块的关联数据。其中,码块标识用于标记各码块的有效区间。
接收端接收到传输的所有数据以后,以循环缓存的格式存储到HARQ中,并以编码后的原始顺序存储到LDPC译码器中。由于译码每次处理时是针对1个Zc的数据,由此,一个地址需要存放Zc个软比特。当存储到最后一个地址时,接收到的属于最后一个地址的软比特的总数量小于Zc,可以填充0,以使最后一个地址的软比特的数量等于Zc。
其中,可选的,目标长度需要满足提升因子关联的整除条件,表明提升因子可以被目标长度整除,从而一个数据单元的数据不存在属于不同的Zc的情况,从而保证一个数据单元的数据不会跨2个Zc,可以配合在LDPC译码器中的存储格式,n个数据单元的数据正好等于一个地址可存储的Zc个软比特,保证不会超出一个地址,从而减少处理的复杂度。
在一个示例性的实施例方式中,所述目标长度为提升因子与2的设定值次方的比值,所述第一数量小于等于设定数量阈值,所述设定数量阈值根据工作频率和可用资源确定。
示例性的,CB使用LDPC编码,提升因子为LDPC编码的提升因子。
提升因子Zc可以基于公式Zc=a×2j确定,其中j=0,1,...,7,且Zc≤384,同时a为质数,a为集合{2,3,5,7,9,11,13,15}中的任意一个。Zc由一个码块包含的信息比特和CRC校验比特数之和,以及LDPC基图(取值1或2)确定。
通过配置单元的长度均为目标长度,且根据提升因子确定,可以合理配置单元的长度,同时每个单元的长度相同,方便对单元中的软比特进行寻址。
在一个示例性的实施例方式中,所述目标长度为提升因子与2的设定值次方的比值,所述第一数量小于等于设定数量阈值,所述设定数量阈值根据工作频率和可用资源确定。
具体的,目标长度为Zs。设定阈值为A,Zs≤A,A根据工作频率和可用资源确定,设定值为m。具体的,Zs根据如下过程确定:
Zs=Zc;
m=0;
如果Zs大于A,则将Zs=Zs/2,m=m+1,重复此过程,直到Zs满足Zs≤A。
通过根据提升因子确定目标长度,可以合理配置单元的长度,避免一次处理的软比特太多或太少,从而提高软比特的速率匹配效率。
S140,根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。
软比特编码位置、第一数据单元和第二数据单元用于确定待译码数据。具体的,第一数据单元和第二数据单元可以进行组合形成待译码数据,对该待译码数据进行译码,得到译码数据。可以理解的是,组合方式需要知道第一数据单元和第二数据单元的位置关系,可以根据软比特编码位置确定第一数据单元和第二数据单元中的软比特在编码数据(也即待译码数据)中的位置,由此,可以按照位置关系将第一数据单元和第二数据单元进行排列,得到待译码数据。
在一个示例性的实施例方式中,所述根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,包括:根据所述软比特编码位置以及各所述第一数据单元中首个软比特,确定各所述第一数据单元的单元编码位置;根据所述软比特编码位置以及各所述第二数据单元中首个软比特,确定各所述第二数据单元的单元编码位置;根据各所述单元编码位置分别将所述第一数据单元和所述第二数据单元存储在译码器中匹配的存储地址处,以排列所述第一数据单元和所述第二数据单元,形成待译码数据,以使所述译码器对所述待译码数据进行译码。
其中,第一数据单元和第二数据单元可以认为是软比特序列。可以用软比特序列中首个软比特在编码数据中的位置作为该软比特序列在编码数据中的位置,也即单元的单元编码位置。各单元中除首个软比特的位置可以根据软比特之间的次序,也即相对位置,以及单元编码位置确定。
相应的,在对各单元进行存储时,在单元编码位置对应的存储地址写入首个软比特,并在该存储地址的偏移1位的地址中写入下一软比特,而后,依次在后续偏移地址后写入后续的软比特,依次类推,将单元中的软比特按照次序一一写入译码器中。
译码器中匹配的存储地址与单元编码位置对应。按照各第一数据单元和各第二数据单元的单元编码位置分别存储在匹配的位置处,从而在存储的同时实现按照单元编码位置排列各第一数据单元和各第二数据单元,从而实现拼接组合形成待译码数据。
通过根据软比特编码位置确定各第一数据单元和各第二数据单元的单元编码位置,并对应将各第一数据单元和各第二数据单元存储在与单元编码位置匹配的存储地址中,以使在译码器中排列组合各第一数据单元和各第二数据单元,保证解速率匹配准确,从而准确拼接形成待译码数据。
本申请实施例所提供的译码方法、装置、网络设备及存储介质,通过对解交织前数据中的软比特进行划分,形成多个第一数据单元,同时获取被打孔数据,并进行软比特划分,生成多个第二数据单元,并按照软比特编码位置、第一数据单元和第二数据单元形成待译码数据并进行译码,从而实现将多个软比特形成单元进行处理,解决了现有技术中解速率匹配过程中需要按照逐个软比特进行处理导致解速率匹配的效率低的问题,可以减少解速率匹配和译码过程中逐个软比特单独寻址的情况,可以提高解速率匹配和译码效率。
在一个示例性的实施例方式中,所述接收解交织前数据,并划分所述解交织前数据,得到第一数据单元,包括:多路并行接收解交织矩阵按列输出的软比特;顺序存储每路接收到的软比特,生成多个第三数据单元;按照设定周期数量的时钟周期,依次对各所述第三数据单元进行软合并,形成多个第一数据单元。
实际上,解交织前数据是从解交织矩阵中获取的。解交织矩阵是按列输出,交织矩阵中一共有Qm个行,每列输出Qm个软比特。多路并行接收解交织前按列输出的软比特,在一个设定周期数量的时钟周期内,每路最多接收一个软比特。每路分别按照接收顺序存储接收到的软比特,也即一路存储的软比特是解交织矩阵中的一行中软比特。
可以配置Qm个串并转换模块,各串并转换模块并行工作,每个串并转换模块处理解交织矩阵的一行,以实现多路并行接收软比特,并顺序存储,从而独立完成第三数据单元的软比特收集,形成一个第三数据单元。同时根据软比特位置,确定第三数据单元中接收到的首个软比特在编码数据中的位置,并将该位置作为第三数据单元的单元编码位置,和形成的第三数据单元发送至下一处理模块进行后续处理。
Qm个串并转换模块,可以生成Qm的整数倍的第三数据单元。在第三数据单元的处理过程中,采用串行处理方式,依次对各第三数据单元分别进行处理。
其中,软合并是指基于混合自动重传请求(Hybrid Automatic Repeat request,HARQ)的合并。实际上,发送端在发送数据包之后需要等待接收端反馈接受正确的消息,如果没有反馈,发送端会重传该数据包或者该数据包的部分,保证接收端能够接收到正确的数据包。接收端可以在获取第三数据单元后,从HARQ存储器中匹配的缓存数据进行合并,合并后的单元作为第一数据单元,同时,该第一数据单元为传输正确的有效数据单元。
其中,串行处理的次序的确定方式可以是:按照设定规则(如轮询)依次从多路中选取1路形成的第三数据单元作为处理单元,进行处理。
设定周期数量的时钟周期,用于作为第三数据单元的处理频率,也即作为从多路中选取1路形成的第三数据单元的选择频率。设定周期数量的时钟周期可以根据需要进行设定。通常一个时钟周期的时长不够完成一个第三数据单元的处理任务,可以选择多个时钟周期作为一个处理周期,完成一个第三数据单元的处理任务。
通过并行接收解交织矩阵输出的软比特,并顺序存储软比特形成第三数据单元,将软比特转换成单元,同时通过串行处理各第三数据单元,实现以单元形式进行处理,提高软比特的处理效率。
在一个示例性的实施例方式中,所述顺序存储每路接收到的软比特,生成多个第三数据单元,包括:如果接收到的目标软比特满足填充比特起始相邻条件,则以所述目标软比特为接收到的最后一个软比特生成当前第三数据单元,并继续接收下一个软比特,以生成下一第三数据单元。
实际上,编码数据可以包括填充比特,而填充比特不在解交织前数据中,从而在存储解交织前数据时,可以在当前第三数据单元中预留出填充比特的位置,并根据接收到的下一软比特,生成下一第三数据单元。其中,如果目标软比特正好为当前第三数据单元中的最后一个软比特,则无需在当前第三数据单元中预留出填充比特的位置,直接生成当前第三数据单元。根据接收的下一个软比特形成新的第三数据单元,同时接收到的下一个软比特为第三数据单元的首个软比特。
实际上,可以预先构建第三数据单元,并在其中填充接收到的软比特,同时在填充比特的位置上不填充软比特,预留出位置。
填充比特起始相邻条件用于确定接收到的软比特在编码数据中的位置偏移目标长度的位置是否为填充比特的位置。目标软比特是指在编码数据中的位置偏移目标长度的位置为填充比特的位置的软比特。目标软比特用于确定是否结束当前第三数据单元中的软比特的获取。当前第三数据单元,是指当前待生成的第三数据单元。当前第三数据单元可以将该目标软比特作为从解交织前数据中接收到的最后一个软比特,如果目标软比特为当前第三数据单元中的最后一个软比特,则直接生成当前第三数据单元;如果不是,则预留出填充比特的位置,生成当前第三数据单元,此时,该当前第三数据单元中包括的属于解交织前数据中的软比特的数量小于目标长度。
实际上,可以对编码数据中的软比特按照排序进行编号,序号作为软比特的位置。
具体的,填充比特起始相邻条件包括软比特在编码数据中的位置是否为K′-2Zc-1。如果软比特的位置为K′-2Zc-1,确定该软比特满足填充比特起始相邻条件。
继续接收下一软比特,并将该软比特作为新的第三数据单元的首个软比特,以生成新的第三数据单元。
通过在第三数据单元中预留出填充比特的位置,可以保证第三数据单元中的软比特在编码数据中的位置均是连续的,从而在后续排列第三数据单元时,可以准确进行排列,避免一个第三数据单元中包括不连续的多个软比特,导致相应的第一数据单元需要进行分割处理才能进行排列组合,可以直接以第一数据单元为单位进行排列组合,从而提高第一数据单元的处理效率。
在一个示例性的实施例方式中,所述对所述第三数据单元进行软合并,形成第一数据单元,包括:根据所述第三数据单元对应的单元编码位置,在待合并集合中查询与所述第三数据单元匹配的待合并单元,并进行合并,得到第一数据单元;根据所述第一数据单元,在所述待合并集合中更新所述匹配的待合并单元,所述待合并单元的单元长度为所述目标长度,所述待合并单元用于存储历史合并数据,所述历史合并数据用于与所述第三数据单元中软比特进行合并,以更新所述第三数据单元中软比特。
待合并集合用于存储历史合并数据,历史合并数据是以待合并单元的形式存储。历史合并数据的初始值为0,可以将第一次传输的数据存入待合并集合,作为历史合并数据,如果接收端可以正确译码,则译码得到译码数据进行后续处理,待合并集合中的数据可以重置,或者为下一CB配置新的待合并集合。如果接收端发现无法正确译码,请求发送端重传数据,其中,该重传数据可以是CB中的全部数据,也可以是CB中的部分数据。接收端根据第二次重传的与存储的第一次传输的数据,也即历史合并数据,进行合并,并根据合并后的数据更新历史合并数据,以及进行译码,如果正确译码,则译码得到译码数据进行后续处理;如果无法正确译码,继续请求重传数据,重复上述步骤。
历史合并数据实际为将历史传输的数据进行合并后的数据。在解交织前数据中可能存在错误,相应形成的第三数据单元存在错误,此时可以根据历史合并数据进行修正,保证形成正确的第一数据单元。
待合并集合位于HARQ存储器,待合并单元在HARQ存储器的存储位置与第三数据单元的单元编码位置对应。由此,可以根据第三数据单元的单元编码位置,在HARQ存储器中查询匹配的待合并单元。
实际上,本申请实施例中的软合并为,从HARQ存储器中读取与第三数据单元匹配的待合并单元。待合并单元中的软比特和第三数据单元中的软比特进行一一对应,并行完成合并。将第三数据单元中的软比特替换为合并后的软比特,得到第一数据单元发送至译码器中存储,同时拷贝一份写回HARQ存储器中,更新原来的待合并单元,以便进行下一次的软合并操作。
通过配置软合并集合中的待合并单元的存储地址与第三数据单元的单元编码位置对应,从而准确查询第三数据单元匹配的待合并单元并进行合并,从而实现以第三数据单元为单位进行软合并操作,提高软合并操作的效率,提高数据可靠性。
在一个示例性的实施例方式中,与目标周期数量相同,或者根据目标周期数量的二分之一确定,所述设定周期数量为整数,所述目标周期数量包括从开始对所述第三数据单元进行软合并到生成第一数据单元所需时长对应的时钟周期数量。
具体的,假设一个第三数据单元完成从HARQ存储器中启动读取,到完成软合并,并最终写回同一个地址的时钟周期数为Q,P可以取Q或Q/2,若Q为奇数,则P为Q/2向上取整之后的数值。Q即为目标周期数量,P为设定周期数量。
通过配置设定周期数量,可以灵活实现第三数据单元处理的频率。
在一个示例性的实施例方式中,所述设定周期数量根据目标周期数量的二分之一确定,所述设定周期数量为整数;所述对所述第三数据单元进行软合并,形成第一数据单元,包括:如果根据当前处理的第三数据单元对应的单元编码位置和前一第三数据单元对应的单元编码位置,确定由所述当前处理的第三数据单元得到的第一数据单元满足重复速率匹配条件,则根据所述前一第三数据单元对应的待合并单元,确定所述当前处理的第三数据单元匹配的待合并单元。
重复速率匹配条件用于判断串行处理的连续两个第三数据单元中的软比特是否相同,具体的,可以根据这两个第三数据单元对应的单元编码是否相同来进行判断。如果当前处理的第三数据单元对应的单元编码位置和前一第三数据单元对应的单元编码位置相同,表明这两个第三数据单元中的软比特相同,确定当前处理的第三数据单元满足重复速率匹配条件。
实际上,一个第三数据单元从HARQ存储器中启动读取,到完成软合并,并最终写回同一个地址的时长为目标周期数量。设定周期数量为目标周期数量的二分之一,或二分之一取整后的数值,表明在一个第三数据单元未完成写回同一个地址的过程中,另外一个第三数据单元开始进行处理,即从HARQ存储器中启动读取相应待合并单元。此时,满足重复速率匹配条件的两个第三数据单元对应的待合并单元实际是同一个,第二个处理的第三数据单元从HARQ存储器中读取的待合并单元实际是未更新的,由此,可以直接根据第一个处理的第三数据单元得到的第一数据单元作为第二个处理的第三数据单元得到的待合并单元进行合并,可以减少从待合并集合中等待读取更新后的待合并单元的处理时间和读取次数。
此外,如果设定周期数量为目标周期数量,此时,任意连续两个第三数据单元中,一个第三数据单元形成第一数据单元并写回之后,另一个第三数据单元才开始处理,从而,重复速率匹配对这两个第三数据单元的处理没有影响。
在一个示例性的实施例方式中,所述获取被打孔数据,并根据所述被打孔数据,生成第二数据单元,包括:生成多个置零单元,所述置零单元包括的各软比特为0,所述置零单元的单元长度为目标长度,各所述置零单元总共包括的软比特的数量为提升因子与2的乘积,各所述置零单元对应的单元编码位置前于各所述第一数据单元对应的单元编码位置;如果所述编码数据中存在填充比特,则获取填充比特,并生成填充单元,所述填充单元的单元长度为目标长度;如果存在满足重复速率匹配条件的第一数据单元或者所述编码数据中存在冗余版本前打孔比特,则获取冗余版本前比特,并生成冗余版本前单元,所述冗余版本前单元的单元长度为目标长度,各所述冗余版本前单元分别对应的单元编码位置均前于各所述第一数据单元对应的单元编码位置;如果存在满足重复速率匹配条件的第一数据单元或者所述编码数据中存在冗余版本后打孔比特,则获取冗余版本后比特,并生成冗余版本后单元,所述冗余版本后单元的单元长度为目标长度,各所述冗余版本后单元分别对应的单元编码位置均后于各所述第一数据单元对应的单元编码位置。
具体如图3所示,编码数据中可以包括置零软比特(1)、冗余版本前打孔比特(2)、填充比特(3)和冗余版本后打孔比特(5)。其中,置零软比特(1)是编码数据中必须包括的软比特。编码数据可以包括冗余版本前打孔比特(2)、填充比特(3)和冗余版本后打孔比特(5)中的至少一项,或者均不包括。其中,发送端向接收端发送的实际数据为解交织前数据(4),其中,解交织前数据(4)中不包括填充比特(3)。此外,后续数据(6)为本CB之后的传输数据。
通常,编码数据中软比特的位置是从图3中的0开始统计。由于编码数据中固定前2Zc个软比特被打孔,不会发送到接收端,从而可以直接从前2Zc个软比特之后的第一个软比特开始统计。k0为不同冗余版本的速率匹配起始位置,k1为本次传输的冗余版本的结束位置,Nr为该CB在已经接收到的多个冗余版本中,接收到的所有软比特在循环缓存中位置最大值,Nr≤Ncb。在使用LDPC编码时,当基图1时,K=22Zc;当基图2时,K=10Zc。K′为一个CB包含的信息比特和CRC校验比特数之和。Ncb为循环缓存的结束位置。
相应的,置零单元为对置零软比特(1)进行划分形成的单元,置零单元包含的全部软比特均为0。且所有置零单元的单元编码位置均在编码数据中的循环缓存之前,也即在解交织前数据(4)各个软比特在编码数据的位置之前,也即在解交织前数据(4)形成的第一数据单元的单元编码位置之前。具体的,目标长度为Zs,则置零单元的数量为2Zc个。置零单元为系统比特中固定的前2Zc个软比特形成的数据单元。
填充单元为对填充比特(3)进行划分形成的单元。填充比特(3)可以从本地存储中获取,还可以从HARQ存储器中读取。填充比特(3)通常为发送端和接收端预先规定的软比特。同时填充比特(3)位于冗余版本前打孔比特(2)、和冗余版本后打孔比特(5)之间,以及位于解交织前数据(4)中间,由此形成的填充单元的单元编码位置位于第一数据单元的单元编码位置之间。具体的,填充比特(3)在编码数据中的起始位置为K′-2Zc,结束位置为K-2Zc,相应的填充单元的单元编码位置位于K′-2Zc和K-2Zc之间。
存在满足重复速率匹配条件的第一数据单元,表明E≥Ncb-(K-K′)。编码数据中存在冗余版本前打孔比特(2),表明首个第一数据单元的单元编码位置为0。冗余版本前打孔比特(2)可以从HARQ存储器中读取。冗余版本前单元为对冗余版本前打孔比特(2)进行划分形成的单元。冗余版本前打孔比特(2)在编码数据中的起始位置为0,结束位置为k0,相应的冗余版本前单元的单元编码位置位于0和k0之间。同时,冗余版本前打孔比特(2)在解交织前数据(4)各个软比特在编码数据的位置之前,相应的冗余版本前单元的单元编码位置在解交织前数据(4)形成的第一数据单元的单元编码位置之前。
编码数据中存在冗余版本后打孔比特,表明E+k0≥Ncb。冗余版本后打孔比特(5)可以从HARQ存储器中读取。冗余版本后单元为对冗余版本后打孔比特(5)进行划分形成的单元。冗余版本后打孔比特(5)在编码数据中的起始位置为k1,结束位置为Nr,相应的冗余版本后单元的单元编码位置位于k1和Nr之间。同时,冗余版本后打孔比特(5)在解交织前数据(4)各个软比特在编码数据的位置之后,相应的冗余版本后单元的单元编码位置在解交织前数据(4)形成的第一数据单元的单元编码位置之后。
通过配置多个第二数据单元,并按照不同的打孔方式进行恢复,得到第二数据单元,保证恢复的打孔数据的准确性,同时,恢复的打孔数据按照单元形式替换逐个软比特进行恢复,提高解速率匹配的速度。
此外,HARQ存储器中可以直接按照冗余版本前单元存储冗余版本前打孔比特,从而直接从HARQ存储器中读取冗余版本前单元。HARQ存储器中可以直接按照冗余版本后单元存储冗余版本后打孔比特,从而直接从HARQ存储器中读取冗余版本后单元。
在一个示例中,可以通过如图4所示的模块实现各个单元的处理过程。
解码块级联模块完成解码块分割,每个时钟周期输出解交织矩阵同一列的Qm个软比特。解码块级联模块从解交织矩阵中按列并行输出到Qm路串并转换模块中。
每个串并转换模块,用于接收解码块分割的数据,实现Qm路并行处理,每一路独立完成Zs个软比特的收集,形成第三数据单元,并发送给解交织仲裁模块进行处理。
解交织仲裁模块,用于从Qm路串并转换完成后的第三数据单元中选择一个,串行送给解速率匹配模块进行处理。
解速率匹配模块,用于对解交织仲裁模块送进来的第一数据单元(包括Zs个软比特)完成HARQ合并处理,并完成解速率匹配(打孔速率匹配)。
HARQ存储器负责为解速率匹配模块提供待合并单元,译码器用于译码,其中,译码器为LDPC译码器。具体的,LDPC译码器和HARQ存储器中各软比特的存储格式如图5所示。若Zc=208,Zs=13,即每个单元(Bank)依次存储13个软比特,每个Bank高11个软比特位置保留。
实际上,从交织矩阵中,针对每一行,收集到若干个(即Zs个)数据才开始进行处理,不同行收集到的数据,在处理上是串行处理,可以避免读写重读。
其中,Zs并不是随意设置的。实际上译码器是以Zc个数据的处理块为单位进行处理的,如果Zc不能被Zs整除,这会导致Zs个数据属于不同的处理块,大大增加了数据处理的复杂度。由此,可以配置Zs可以整除Zc,保证Zs个数据不会跨2个处理块,减少数据处理的复杂度。
具体的,可以为每个单元配置单元标识,以及为单元中的软比特配置比特标识,通过单元标识和比特标识确定各软比特。也即单元中的各软比特可以通过查询哪个单元,再确定单元之后在单元中查询是哪个软比特确定。
可以配置,每个Zc长度的单元包括(2m)个Zs长度的单元,根据Zs长度的单元编号Zs_i,直接得到对应Zc长度的单元中的地址Zs_i>>m,以及属于Zc长度的单元中的哪个Zs长度的单元:Zs_i%(2m);从而,每个Zs长度的单元的寻址变得非常简单。例如,Zs为16,则Zc/Zs=24,则需要计算Zs_i/24和Zs_i%24,这样计算都比较简单,从而简化了寻址操作。
首先,计算目标长度Zs=a×2m,且Zs≤A较优的,A取24。
其次,计算解交织前数据的起始位置相关参数,即解交织矩阵中各行第一列中的软比特位于哪一个单元,以及在该单元中第几个软比特。
具体的,设定解交织矩阵中每一行软比特在循环缓存中的位置为ks[i],则:
ks_nZs[i]=floor(ks[i]/Zs)
ks_oZs[i]=ks[i]%Zs
其中i=0,1,...Qm-1。
相应的,本次传输冗余版本的结束位置k0属于的单元:
k1nZs[i]=floor(k1/Zs)
再次,计算填充比特相对位置K′、K以及有限循环缓存速率匹配Ncb处的软比特属于的单元以及单元中的第几个软比特:
Kp_nZs[i]=floor((K′-2Zc)/Zs)
Kp_oZs[i]=K′%Zs
K_nZs[i]=floor((K-2Zc)/Zs)
K_oZs[i]=K%Zs
Ncb_nZs[i]=floor(Ncb/Zs)
Ncb_oZs[i]=Ncb%Zs
最后,计算实际使用的循环缓存大小Nr属于哪一个单元:
Nr_nZs[i]=floor(Nr/Zs)
(1)解交织过程:
前级解调模块,因为每层的一个星座点解调对应Qm个软比特,第i个软比特对应解交织矩阵第i行,i取0,1,...Qm-1。每个循环的解调模块可能同时输出nL层软比特,nL取值1,2,3或4。解扰模块将nL层串行处理,每个时钟周期依次输出1层的软比特。
Qm个串并转换模块并行工作,每个串并转换模块处理第i路软比特,每一路每个时钟周期最多接收1个软比特,i取0,1,...Qm-1;
串并转换的目的是根据地址a以及偏移地址,收集Zs个软比特形成一个单元,作为后续解速率匹配,以及HARQ处理的处理单位。第i个Zs长度的单元中的软比特为:
Zs×a+m,m=0,1,...Zs-1。
Qm个串并转换模块独立工作,具体处理为:
CB数据到来前,完成Qm个串并转换模块的初始化处理;
每个单元包括地址a和偏移o个计数器,其中,地址a为单元编码位置。
初始化具体是
a=ks_nZs[i]
o=ks_oZs[i]
串并转换模块关联的存储清零;
初始化完成后,循环等待软比特,直至每个串并转换模块都收集并处理完E/Qm个软比特后,结束该CB的解交织处理。
前级模块每送过来1个软比特,将该软比特存入该单元第o个位置,并更新单元的地址a和偏移o,o初始值为0,依次进行处理如下:
ar=a;
o=o+1;
flag=1。
如果o等于Zs,表明说明一个单元收集结束,则将该收集完的Zs个软比特作为一个第三数据单元以及地址ar作为单元编码位置送给解交织仲裁模块,之后串并转换模块相关存储清零,flag置0;同时,o置0,以及a=a+1。
如果o等于Kp_oZs[0],并且a等于Kp_nZs[0],表明当前软比特在编码数据中的下一个软比特在填充比特起始位置,需要跳过,也即接收到的下一软比特为在填充比特结束位置之后的软比特。如果flag等于1,将串并转换模块存储的软比特作为一个第三数据单元以及地址ar作为单元编码位置送给解交织仲裁模块,之后串并转换模块相关存储清零,flag置0;同时,o置K_oZs,并a=K_nZs。
如果o等于Kp_oZs[0],并且a等于Kp_nZs[0],表明当前软比特在编码数据中的下一个软比特在填充比特起始位置,即图3中的K′-2Zc对应的位置处,需要跳过,也即接收到的下一软比特为在填充比特结束位置之后的软比特。如果flag等于1,将串并转换模块存储的软比特作为一个第三数据单元以及地址ar作为单元编码位置送给解交织仲裁模块,之后串并转换模块相关存储清零,flag置0;同时,o置K_oZs,并a=K_nZs,即图3中的K-2Zc对应的位置处。
如果o等于Ncb_oZs,并且a等于Ncb_nZs,表明当前软比特在循环缓存的结束位置,即图3中的Ncb对应的位置处,需要循环到0位置。如果flag等于1,将串并转换模块存储的软比特作为一个第三数据单元以及地址ar作为单元编码位置送给解交织仲裁模块,之后串并转换模块相关存储清零,flag置0;同时,o置0,且a也置0。
(2)解交织仲裁:
解交织仲裁模块根据Qm路串并转换模块的写入情况,记录需要处理的一路或多路的编号。然后,每P个时钟周期(P>0),按轮询机制依次从多路数据选取1路第三数据单元以及单元编码位置ar送给解速率匹配模块进行处理,并且选出来的路数编号从待处理任务中清除。
较优的,Q为4,P取2;具体时序见图6。判断串行处理的连续相邻2个处理的第三数据单元是否是同一个地址ar,如果地址相同,则为重复速率匹配,则后一个第三数据单元不从HARQ存储器中读取待合并单元,直接使用前一个第三数据单元合并后的结果,即形成的第一数据单元继续合并。如果地址不同,则后一个第三数据单元从HARQ读取数据即可。这样,重复速率匹配为只需要判断前后2个处理的第三数据单元是否为重复,大大简化了重复速率匹配的判断和处理。
在一个例子中,K′=8384,Zc=384,Ncb=11904,相应的,LDPC编码形成的编码数据包括8448*3+2*384个软比特,其中,前2Zc=768个软比特作为被打孔数据打掉,中间第8384-8447个软比特均为填充软比特,作为被打孔数据打掉,被打掉后的软比特进行重新编号,前0-767个软比特被打掉,从768个软比特开始重新确定软比特编码位置为0,此时,打掉数据后的数据为0-9567,其中,填充比特为7616-7679,其余软比特为0-7615,以及7680-9567。经过速率匹配,打掉填充比特,并对其余软比特进行4次重复,形成速率匹配后的数据,如图7所示,速率匹配后的数据总共4*11840个比特,也即实际发送的比特的数量为4*11840。对速率匹配后的数据进行交织,即按行写入,按列读出。如图8所示,交织矩阵为4行(与循环数量相同),共11840列。如图9所示,交织矩阵为4行(与循环数量相同),共11839列。
对于图8来说,交织矩阵中各行均为0-7615(填充竖线的区域)、7680-11903(填充斜线的区域),也即交织矩阵的不同行,相同列的软比特存储的位置相同。对于图9来说,交织矩阵的各行分别为:0-7615(填充竖线的区域)、7680-11902(填充斜线的区域);11903(填充斜线的区域)、0-7615(填充竖线的区域)、7680-11901(填充斜线的区域);11902-11903(填充斜线的区域)、0-7615(填充竖线的区域)、7680-11900(填充斜线的区域);11901-11903(填充斜线的区域)、0-7615(填充竖线的区域)、7680-11899(填充斜线的区域),也即交织矩阵的不同行,且不同列的软比特存储的位置相同。在现有技术中,在进行重复解速率匹配时,需要逐行判断,但遇到图9的情况,还需要根据列偏移情况逐行查询存储到相同位置的软比特。
而本申请实施例在1个时钟周期内并行接收各行软比特,并串行处理,也即将不同行分别得到的数据单元进行串行处理之后,最多只需要判断处理过程中相邻2个Zs长度的单元的单元编码位置是否相同,如果相同,则直接在前一个Zs长度的单元对应的合并结果上,再合并入后一个Zs长度的单元即可,无需再次从待合并集合中查询和读取相应的待合并单元,节省了从待合并集合中查询和读取的时间和处理数据量。
如图8所示的交织矩阵,输出的软比特分别为0,0,0,0,1,1,1,1,2,2,2,2…,此时串行处理过程中,连续4次处理对应的都是单元编码位置为0的数据单元。从而,不需要考虑逐行判断,仅通过处理过程中相邻的两个数据单元即可,大大降低了解速率匹配的复杂度。
针对其余情况,如图9所示的交织矩阵,输出的软比特分别为0,11903,11902,11901,1,0,11903,11902…数据单元是间隔5个,重复一次,因为后一个数据单元在处理时,前一个数据单元的数据已经写入HARQ,则后一个数据单元直接从HARQ中读取相应数据即可,自然而然完成重复速率匹配合并处理。也无需进行重复速率匹配的判断,提高解速率匹配的效率。
(3)解速率匹配和HARQ合并
每个CB新传时,在初始化处理时,需要将CB对应的HARQ存储器中存储的待合并单元全部清零,可以直接将相关地址写0,或者使用标志位标识,或者其他任意等价方法实现缓存CB对应的待合并单元。
解速率匹配实际是根据解交织仲裁模块的地址ar,从HARQ存储器中读取ar对应的Zs个软比特,即待合并单元。将第三数据单元和待合并单元中形成的2组Zs个软比特一一对应各自并行完成合并,需要Zs个HARQ合并模块并行处理。合并完成后,Zs个合并后的结果,即第一数据单元将写入LDPC译码器地址为2+(ar/2m)的单元位置处,并将第一数据单元的软比特按照顺序依次写入该单元位置中地址为ar%2m的位置处。实际上,在译码器存储时,是按照单元进行存储,也即,将第一数据单元写入匹配的单元位置处,该单元位置的寻址实现上就是移位选择器,实现简单。同时将第一数据单元写回ar对应的HARQ存储器中,并覆盖对应的待合并单元。
此外,在解速率匹配处理第三数据单元的同时,同样以单元为单位,依次完成如下解打孔处理:
3.1)系统比特前2Zc个比特固定打孔,不管是否重复速率匹配,LDPC地址为0~2m +1-1的所有单元都需要写入0,形成置零单元。
3.2)如果K′==K,该步骤跳过,否则需要进行如下处理:
获取填充比特生成填充单元,填充单元对应的单元编码位置ap实际是在编码数据中地址区间Kp_nZs~Kp_nZs-1中取值,并依次写入LDPC译码器地址为2+(ap/2m)的单元位置处,将填充单元的软比特按照顺序依次写入该单元位置中地址为ap%2m的位置处。其中,每个软比特的写入值为能表示的正的最大值。
3.3)如果存在重复速率匹配,即E≥Ncb-(K-K′),或者ks_nZs[0]且ks_oZs[0]均等于0,则该步骤跳过;否则进行如下处理:
从HARQ存储器中获取与单元编码位置ap匹配的冗余版本前打孔比特生成冗余版本前单元。冗余版本前单元的单元编码位置ap实际是在编码数据中地址区间0~k_nZs[0]-1中取值,并依次写入LDPC译码器地址为2+(ap/2m)的单元位置处,将单元中软比特按照顺序依次写入该单元位置中地址为ap%2m的位置处。
3.4)如果存在重复速率匹配,即E≥Ncb-(K-K′),或者E+k0≥Ncb,则该步骤跳过;否则进行如下处理:
从HARQ存储器中获取与单元编码位置ap匹配的冗余版本后打孔比特生成冗余版本后单元。冗余版本后单元的单元编码位置ap实际是在编码数据中地址区间k1_nZs~Nr_nZs中取值,并依次写入LDPC译码器地址为2+(ap/2m)的单元位置处,将单元中软比特按照顺序依次写入该单元位置中地址为ap%2m的位置处。
从而实现将第一数据单元和第二数据单元按照在编码数据中的位置关系,进行存储,排列拼接成待译码数据,以使译码器进行译码,得到译码数据。
具体的,时序可以参考图6,一个矩形为一个时钟周期,此时,Q为4个时钟周期,P为两个时钟周期。每间隔两个时钟周期,解交织仲裁模块选择一个第三数据单元输入到解速率匹配模块中进行处理。在图6显示的时长中,解交织仲裁模块一共将选择了7个第三数据单元串行输入到解速率匹配模块中进行依次处理。具体的,在第一个P的周期内,在HARQ存储器中,根据第0个第三数据单元启动待合并单元查询;在第二个P的周期内,获取第0个第三数据单元匹配的待合并单元;在第三个P的周期内,对第0个第三数据单元进行软合并,同时根据第1个第三数据单元启动待合并单元查询;在第四个P的周期内,将第0个第三数据单元软合并形成的第一数据单元写回HARQ存储器中和/或写入译码器中,同时,获取第1个第三数据单元匹配的待合并单元。以此类推。此外,第二数据单元可以在任何P的周期内生成并存储在译码器中。
图10为本申请实施例提供的一种译码装置的示意图。本实施例是实现本申请上述任意实施例提供的译码方法的相应装置,该装置可以设置于网络设备中。
解交织前数据接收模块310,用于接收解交织前数据和软比特编码位置;
第一数据单元生成模块320,用于划分所述解交织前数据,得到第一数据单元;
第二数据单元生成模块330,用于获取被打孔数据,并根据所述被打孔数据,得到第二数据单元,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定;
译码数据确定模块340,用于根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。
本申请实施例所提供的译码方法、装置、网络设备及存储介质,通过对解交织前数据中的软比特进行划分,形成多个第一数据单元,同时获取被打孔数据,并进行软比特划分,生成多个第二数据单元,并按照软比特编码位置、第一数据单元和第二数据单元形成待译码数据并进行译码,从而实现将多个软比特形成单元进行处理,解决了现有技术中解速率匹配过程中需要按照逐个软比特进行处理导致解速率匹配的效率低的问题,可以减少解速率匹配和译码过程中逐个软比特单独寻址的情况,可以提高解速率匹配和译码效率。
在一种实施方式中,所述译码数据确定模块340,还用于:根据所述软比特编码位置以及各所述第一数据单元中首个软比特,确定各所述第一数据单元的单元编码位置;根据所述软比特编码位置以及各所述第二数据单元中首个软比特,确定各所述第二数据单元的单元编码位置;根据各所述单元编码位置分别将所述第一数据单元和所述第二数据单元存储在译码器中匹配的存储地址处,以排列所述第一数据单元和所述第二数据单元,形成待译码数据,以使所述译码器对所述待译码数据进行译码。
在一种实施方式中,所述第一数据单元和所述第二数据单元的单元长度均为目标长度,所述目标长度根据提升因子确定。
在一种实施方式中,所述目标长度为提升因子与2的设定值次方的比值,所述第一数量小于等于设定数量阈值,所述设定数量阈值根据工作频率和可用资源确定。
在一种实施方式中,所述第一数据单元生成模块320,还用于:多路并行接收解交织矩阵按列输出的软比特;顺序存储每路接收到的软比特,生成多个第三数据单元;按照设定周期数量的时钟周期,依次对各所述第三数据单元进行软合并,形成多个第一数据单元。
在一种实施方式中,所述第一数据单元生成模块320,还用于:如果接收到的目标软比特满足填充比特起始相邻条件,则以所述目标软比特为接收到的最后一个软比特生成当前第三数据单元,并继续接收下一个软比特,以生成下一第三数据单元。
在一种实施方式中,所述第一数据单元生成模块320,还用于:根据所述第三数据单元对应的单元编码位置,在待合并集合中查询与所述第三数据单元匹配的待合并单元,并进行合并,得到第一数据单元;根据所述第一数据单元,在所述待合并集合中更新所述匹配的待合并单元,所述待合并单元的单元长度为所述目标长度,所述待合并单元用于存储历史合并数据,所述历史合并数据用于与所述第三数据单元中软比特进行合并,以更新所述第三数据单元中软比特。
在一种实施方式中,所述设定周期数量与目标周期数量相同,或者根据目标周期数量的二分之一确定,所述设定周期数量为整数,所述目标周期数量包括从开始对所述第三数据单元进行软合并到生成第一数据单元所需时长对应的时钟周期数量。
在一种实施方式中,所述设定周期数量根据目标周期数量的二分之一确定,所述设定周期数量为整数;所述第一数据单元生成模块320,还用于:如果根据当前处理的第三数据单元对应的单元编码位置和前一第三数据单元对应的单元编码位置,确定由所述当前处理的第三数据单元得到的第一数据单元满足重复速率匹配条件,则根据所述前一第三数据单元对应的待合并单元,确定所述当前处理的第三数据单元匹配的待合并单元。
在一种实施方式中,所述第二数据单元生成模块330,还用于:生成多个置零单元,所述置零单元包括的各软比特为0,所述置零单元的单元长度为目标长度,各所述置零单元总共包括的软比特的数量为提升因子与2的乘积,各所述置零单元对应的单元编码位置前于各所述第一数据单元对应的单元编码位置;如果所述编码数据中存在填充比特,则获取填充比特,并生成填充单元,所述填充单元的单元长度为目标长度;如果存在满足重复速率匹配条件的第一数据单元或者所述编码数据中存在冗余版本前打孔比特,则获取冗余版本前比特,并生成冗余版本前单元,所述冗余版本前单元的单元长度为目标长度,各所述冗余版本前单元分别对应的单元编码位置均前于各所述第一数据单元对应的单元编码位置;如果存在满足重复速率匹配条件的第一数据单元或者所述编码数据中存在冗余版本后打孔比特,则获取冗余版本后比特,并生成冗余版本后单元,所述冗余版本后单元的单元长度为目标长度,各所述冗余版本后单元分别对应的单元编码位置均后于各所述第一数据单元对应的单元编码位置。
上述译码装置可执行本申请实施例所提供的译码方法,具备执行的译码方法相应的功能模块和有益效果。
本申请提供一种网络设备,所述网络设备包括处理器以及存储器;所述处理器用于执行存储器中存储的程序,以实现上述实施例中的方法。其中,网络设备为设备供电的电源设备。
存储器作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本申请实施例中的译码方法对应的程序指令/模块。
存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本申请提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例中的方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、RAM、只读存储器(Read OnlyMemory,ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、无线电频率(RadioFrequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括LAN或WAN——连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
以上所述,仅为本申请的示例性实施例而已,并非用于限定本申请的保护范围。
本领域内的技术人员应明白,术语用户终端涵盖任何适合类型的无线用户设备,例如移动电话、便携数据处理装置、便携网络浏览器或车载移动台。
一般来说,本申请的多种实施例可以在硬件或专用电路、软件、逻辑或其任何组合中实现。例如,一些方面可以被实现在硬件中,而其它方面可以被实现在可以被控制器、微处理器或其它计算装置执行的固件或软件中,尽管本申请不限于此。
本申请的实施例可以通过移动装置的数据处理器执行计算机程序指令来实现,例如在处理器实体中,或者通过硬件,或者通过软件和硬件的组合。计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码。
本申请附图中的任何逻辑流程的框图可以表示程序步骤,或者可以表示相互连接的逻辑电路、模块和功能,或者可以表示程序步骤与逻辑电路、模块和功能的组合。计算机程序可以存储在存储器上。存储器可以具有任何适合于本地技术环境的类型并且可以使用任何适合的数据存储技术实现,例如但不限于只读存储器(ROM)、随机访问存储器(RAM)、光存储器装置和系统(数码多功能光碟DVD或CD光盘)等。计算机可读介质可以包括非瞬时性存储介质。数据处理器可以是任何适合于本地技术环境的类型,例如但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、可编程逻辑器件(FGPA)以及基于多核处理器架构的处理器。
通过示范性和非限制性的示例,上文已提供了对本申请的示范实施例的详细描述。但结合附图和权利要求来考虑,对以上实施例的多种修改和调整对本领域技术人员来说是显而易见的,但不偏离本发明的范围。因此,本发明的恰当范围将根据权利要求确定。
Claims (13)
1.一种译码方法,其特征在于,包括:
接收解交织前数据和软比特编码位置;
划分所述解交织前数据,得到第一数据单元;
获取被打孔数据,并根据所述被打孔数据,得到第二数据单元,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定;
根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,包括:
根据所述软比特编码位置以及各所述第一数据单元中首个软比特,确定各所述第一数据单元的单元编码位置;
根据所述软比特编码位置以及各所述第二数据单元中首个软比特,确定各所述第二数据单元的单元编码位置;
根据各所述单元编码位置分别将所述第一数据单元和所述第二数据单元存储在译码器中匹配的存储地址处,以排列所述第一数据单元和所述第二数据单元,形成待译码数据;
通过所述译码器对所述待译码数据进行译码。
3.根据权利要求1所述的方法,其特征在于,所述第一数据单元和所述第二数据单元的单元长度均为目标长度,所述目标长度根据提升因子确定。
4.根据权利要求3所述的方法,其特征在于,所述目标长度为提升因子与2的设定值次方的比值,所述第一数量小于等于设定数量阈值,所述设定数量阈值根据工作频率和可用资源确定。
5.根据权利要求2所述的方法,其特征在于,所述接收解交织前数据,并划分所述解交织前数据,得到第一数据单元,包括:
多路并行接收交织矩阵按列输出的软比特;
顺序存储每路接收到的软比特,生成多个第三数据单元;
按照设定周期数量的时钟周期,依次对各所述第三数据单元进行软合并,形成多个第一数据单元。
6.根据权利要求5所述的方法,其特征在于,所述顺序存储每路接收到的软比特,生成多个第三数据单元,包括:
如果接收到的目标软比特满足填充比特起始相邻条件,则以所述目标软比特为接收到的最后一个软比特生成当前第三数据单元,并继续接收下一个软比特,以生成下一第三数据单元。
7.根据权利要求5所述的方法,其特征在于,所述对所述第三数据单元进行软合并,形成第一数据单元,包括:
根据所述第三数据单元对应的单元编码位置,在待合并集合中查询与所述第三数据单元匹配的待合并单元,并进行合并,得到第一数据单元;
根据所述第一数据单元,在所述待合并集合中更新所述匹配的待合并单元,所述待合并单元的单元长度为目标长度,所述待合并单元用于存储历史合并数据,所述历史合并数据用于与所述第三数据单元中软比特进行合并,以更新所述第三数据单元中软比特。
8.根据权利要求5所述的方法,其特征在于,所述设定周期数量与目标周期数量相同,或者根据目标周期数量的二分之一确定,所述设定周期数量为整数,所述目标周期数量包括从开始对所述第三数据单元进行软合并到生成第一数据单元所需时长对应的时钟周期数量。
9.根据权利要求8所述的方法,其特征在于,所述设定周期数量根据目标周期数量的二分之一确定,所述设定周期数量为整数;
所述对所述第三数据单元进行软合并,形成第一数据单元,包括:
如果根据当前处理的第三数据单元对应的单元编码位置和前一第三数据单元对应的单元编码位置,确定由所述当前处理的第三数据单元得到的第一数据单元满足重复速率匹配条件,则根据所述前一第三数据单元对应的待合并单元,确定所述当前处理的第三数据单元匹配的待合并单元。
10.根据权利要求2所述的方法,其特征在于,所述获取被打孔数据,并根据所述被打孔数据,生成第二数据单元,包括:
生成多个置零单元,所述置零单元包括的各软比特为0,所述置零单元的单元长度为目标长度,各所述置零单元总共包括的软比特的数量为提升因子与2的乘积,各所述置零单元对应的单元编码位置前于各所述第一数据单元对应的单元编码位置;
如果所述编码数据中存在填充比特,则获取填充比特,并生成填充单元,所述填充单元的单元长度为目标长度;
如果存在满足重复速率匹配条件的第一数据单元或者所述编码数据中存在冗余版本前打孔比特,则获取冗余版本前比特,并生成冗余版本前单元,所述冗余版本前单元的单元长度为目标长度,各所述冗余版本前单元分别对应的单元编码位置均前于各所述第一数据单元对应的单元编码位置;
如果存在满足重复速率匹配条件的第一数据单元或者所述编码数据中存在冗余版本后打孔比特,则获取冗余版本后比特,并生成冗余版本后单元,所述冗余版本后单元的单元长度为目标长度,各所述冗余版本后单元分别对应的单元编码位置均后于各所述第一数据单元对应的单元编码位置。
11.一种译码装置,其特征在于,包括:
解交织前数据接收模块,用于接收解交织前数据和软比特编码位置;
第一数据单元生成模块,用于划分所述解交织前数据,得到第一数据单元;
第二数据单元生成模块,用于获取被打孔数据,并根据所述被打孔数据,得到第二数据单元,所述解交织前数据和所述被打孔数据根据所述软比特编码位置在编码数据中确定;
译码数据确定模块,用于根据所述软比特编码位置、所述第一数据单元和所述第二数据单元进行译码,得到译码数据。
12.一种网络设备,所述网络设备包括至少一个处理器以及存储器;
所述处理器用于执行存储器中存储的程序,以实现权利要求1-10任一项所述的方法。
13.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-10任一项所述的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911370321.XA CN113055021A (zh) | 2019-12-26 | 2019-12-26 | 译码方法、装置、网络设备及存储介质 |
KR1020227025481A KR20220119468A (ko) | 2019-12-26 | 2020-12-28 | 디코딩 방법, 장치, 네트워크 기기 및 저장 매체 |
JP2022539294A JP2023508449A (ja) | 2019-12-26 | 2020-12-28 | 復号化方法、装置、ネットワークデバイス及び記録媒体 |
PCT/CN2020/140278 WO2021129877A1 (zh) | 2019-12-26 | 2020-12-28 | 译码方法、装置、网络设备及存储介质 |
US17/789,265 US11843396B2 (en) | 2019-12-26 | 2020-12-28 | Decoding method and apparatus, network device, and storage method |
EP20907202.4A EP4084338A4 (en) | 2019-12-26 | 2020-12-28 | DECODING METHOD AND APPARATUS, NETWORK DEVICE AND RECORDING MEDIUM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911370321.XA CN113055021A (zh) | 2019-12-26 | 2019-12-26 | 译码方法、装置、网络设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113055021A true CN113055021A (zh) | 2021-06-29 |
Family
ID=76505665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911370321.XA Pending CN113055021A (zh) | 2019-12-26 | 2019-12-26 | 译码方法、装置、网络设备及存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11843396B2 (zh) |
EP (1) | EP4084338A4 (zh) |
JP (1) | JP2023508449A (zh) |
KR (1) | KR20220119468A (zh) |
CN (1) | CN113055021A (zh) |
WO (1) | WO2021129877A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114050892A (zh) * | 2021-11-11 | 2022-02-15 | 杭州红岭通信息科技有限公司 | 一种降低上行harq合并缓存空间大小的方法 |
CN115173997A (zh) * | 2022-07-01 | 2022-10-11 | 北京神经元网络技术有限公司 | Pdcch盲检测的译码过滤处理方法、设备及介质 |
CN115173994A (zh) * | 2022-06-29 | 2022-10-11 | 哲库科技(北京)有限公司 | Pbch接收方法、装置、设备、存储介质及程序产品 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448572B (zh) * | 2022-01-28 | 2023-09-15 | 芯翼信息科技(上海)有限公司 | 软比特处理方法、装置、介质和设备 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2003270863A1 (en) | 2002-09-30 | 2004-04-23 | Advent Networks, Inc. | Implementing request/reply programming semantics using publish/subscribe middleware |
KR20100071490A (ko) * | 2008-12-19 | 2010-06-29 | 한국전자통신연구원 | 디레이트 매칭하는 방법 및 그 장치 |
WO2011069277A1 (en) | 2009-12-10 | 2011-06-16 | Texas Instruments Incorporated | Method for high-efficient implementation of de-rate matching including harq combining for lte |
KR101641147B1 (ko) * | 2010-01-26 | 2016-08-03 | 삼성전자주식회사 | 인코딩 장치 |
KR20130001098A (ko) | 2011-06-24 | 2013-01-03 | 삼성전자주식회사 | 통신/방송 시스템에서 데이터 송수신 장치 및 방법 |
CN105680983B (zh) | 2014-11-21 | 2019-01-11 | 深圳市中兴微电子技术有限公司 | 一种解速率匹配和解交织的方法和装置 |
US9584163B2 (en) * | 2014-11-24 | 2017-02-28 | Zenith Electronics Llc | Length and rate compatible LDPC encoder and decoder |
CN108011691B (zh) | 2016-10-27 | 2021-04-06 | 电信科学技术研究院 | 一种低密度奇偶校验码的传输方法及装置 |
CN108574562B (zh) | 2017-03-14 | 2020-09-29 | 华为技术有限公司 | 数据传输方法及装置 |
WO2018174569A1 (en) | 2017-03-22 | 2018-09-27 | Samsung Electronics Co., Ltd. | Apparatus and method of transmission using harq in communication or broadcasting system |
CN107248904B (zh) | 2017-07-31 | 2020-04-17 | 北京理工大学 | 一种基于联合编码的ldpc码差错控制方法 |
US10103843B1 (en) * | 2017-12-08 | 2018-10-16 | Qualcomm Incorporated | On the fly interleaving/rate matching and deinterleaving/de-rate matching for 5G NR |
US20210119848A1 (en) * | 2019-10-22 | 2021-04-22 | Nvidia Corporation | Parallel de-rate-matching and layer demapping for physical uplink shared channel |
-
2019
- 2019-12-26 CN CN201911370321.XA patent/CN113055021A/zh active Pending
-
2020
- 2020-12-28 US US17/789,265 patent/US11843396B2/en active Active
- 2020-12-28 WO PCT/CN2020/140278 patent/WO2021129877A1/zh unknown
- 2020-12-28 EP EP20907202.4A patent/EP4084338A4/en not_active Withdrawn
- 2020-12-28 KR KR1020227025481A patent/KR20220119468A/ko not_active Application Discontinuation
- 2020-12-28 JP JP2022539294A patent/JP2023508449A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114050892A (zh) * | 2021-11-11 | 2022-02-15 | 杭州红岭通信息科技有限公司 | 一种降低上行harq合并缓存空间大小的方法 |
CN114050892B (zh) * | 2021-11-11 | 2023-12-05 | 杭州红岭通信息科技有限公司 | 一种降低上行harq合并缓存空间大小的方法 |
CN115173994A (zh) * | 2022-06-29 | 2022-10-11 | 哲库科技(北京)有限公司 | Pbch接收方法、装置、设备、存储介质及程序产品 |
CN115173994B (zh) * | 2022-06-29 | 2023-09-08 | 哲库科技(北京)有限公司 | Pbch接收方法、装置、设备、存储介质 |
CN115173997A (zh) * | 2022-07-01 | 2022-10-11 | 北京神经元网络技术有限公司 | Pdcch盲检测的译码过滤处理方法、设备及介质 |
CN115173997B (zh) * | 2022-07-01 | 2023-07-18 | 北京神经元网络技术有限公司 | Pdcch盲检测的译码过滤处理方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021129877A1 (zh) | 2021-07-01 |
JP2023508449A (ja) | 2023-03-02 |
EP4084338A1 (en) | 2022-11-02 |
KR20220119468A (ko) | 2022-08-29 |
EP4084338A4 (en) | 2023-02-08 |
US20230031031A1 (en) | 2023-02-02 |
US11843396B2 (en) | 2023-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113055021A (zh) | 译码方法、装置、网络设备及存储介质 | |
JP7189161B2 (ja) | 通信及び放送システムのためのレートマッチング方法及び装置 | |
CN108347302B (zh) | 一种编译码方法和终端 | |
CN103441816B (zh) | 在无线接入系统中发送数据的装置及信道编码方法 | |
US6519732B1 (en) | Error-correcting encoding apparatus | |
CN101867443B (zh) | 速率匹配方法和装置 | |
US8958330B2 (en) | De-rate matching method and device for downlink traffic channel in long term evolution | |
CN105515719A (zh) | 一种数据传输方法及装置 | |
US20170324428A1 (en) | Data Packet Processing Method and Device | |
CN109478894B (zh) | 一种ldpc码的基矩阵生成方法、编译码方法及设备 | |
US10700816B2 (en) | Method for performing HARQ using polar code | |
CN102355341A (zh) | 一种长期演进系统用混合自动重传请求的网络编码方法 | |
RU2461970C2 (ru) | Способ и устройство для приема данных | |
CN103973402A (zh) | 数据发送方法、接收方法及设备 | |
CN102546082B (zh) | 解速率匹配方法及装置 | |
WO2020119770A1 (zh) | 信息处理方法、设备及计算机存储介质 | |
CN112202530B (zh) | 信道盲检测方法和装置以及通信装置和存储介质 | |
CN110519018B (zh) | 一种被用于信道编码的ue、基站中的方法和设备 | |
CN109039545B (zh) | 一种用于信道编码的ue、基站中的方法和设备 | |
US8839085B2 (en) | Systems and methods for a soft-input decoder of linear network codes | |
CN102412938B (zh) | 一种lte解速率匹配与harq合并的装置与方法 | |
US20180351700A1 (en) | Convolutional code data sending method and apparatus | |
CN114430279A (zh) | 一种列表维特比译码方法、装置、译码器和存储介质 | |
JP3628013B2 (ja) | 信号送信装置および符号化装置 | |
CN102624493B (zh) | 接收机解码方法及装置 |
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 | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 2nd Floor, 2nd Floor, ZTE Industrial Park, No. 2 Xili Chuangyan Road, Xili Community, Xili Street, Nanshan District, Shenzhen City, Guangdong Province 518055 Applicant after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province Applicant before: SANECHIPS TECHNOLOGY Co.,Ltd. Country or region before: China |
|
CB02 | Change of applicant information |