CN102315911B - A kind of low density parity check code encoding method and device - Google Patents

A kind of low density parity check code encoding method and device Download PDF

Info

Publication number
CN102315911B
CN102315911B CN201110298047.7A CN201110298047A CN102315911B CN 102315911 B CN102315911 B CN 102315911B CN 201110298047 A CN201110298047 A CN 201110298047A CN 102315911 B CN102315911 B CN 102315911B
Authority
CN
China
Prior art keywords
code
length
code block
bits
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110298047.7A
Other languages
Chinese (zh)
Other versions
CN102315911A (en
Inventor
段灿
许进
鲁照华
刘锟
宁迪浩
郁光辉
袁志锋
龚贤卫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sheyang Port Fishery Industry And Trade Development Co Of Sheyang County
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201110298047.7A priority Critical patent/CN102315911B/en
Publication of CN102315911A publication Critical patent/CN102315911A/en
Priority to PCT/CN2012/072936 priority patent/WO2012155683A1/en
Application granted granted Critical
Publication of CN102315911B publication Critical patent/CN102315911B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

The invention discloses a kind of low density parity check coding method and device, including:According to data available bit length N 'pfThe code block number N of the information sequence segmentation to needing to encode is determined with the information bit length under encoder bit rate RCW;According to the code block number NCWThe information sequence for needing to encode is split;Bit padding is carried out to the code block that segmentation is obtained;Code block after bit padding is encoded, the code block after coding is attached in order.The present invention considers resource situation when the information sequence to needing to encode determines that the code block of segmentation is digital, makes the message length of code block more reasonable, and the matching treatment in encoded later stage, makes filling or deleted bit evenly, improves systematic function.

Description

Low-density parity check code coding method and device
Technical Field
The present invention relates to the field of encoding and decoding technologies, and in particular, to a method and an apparatus for encoding a low density parity check code.
Background
At present, digital communication systems are commonly used communication systems. Fig. 1 is a block diagram of a conventional digital communication system, as shown in fig. 1, the digital communication system is composed of a transmitting end, a channel and a receiving end, wherein the transmitting end generally includes a source, a source encoder, a channel encoder and a modulator, the receiving end generally includes a demodulator, a channel decoder, a source decoder and a signal sink, a channel (or a storage medium) exists between the transmitting end and the receiving end, and a noise source exists in the channel.
In a digital communication system, a channel coding link comprises code block segmentation, coding and decoding, rate matching and the like, which are the most critical technologies of the whole digital communication physical layer and determine the effectiveness and reliability of the bottom transmission of the digital communication system.
The Low-Density Parity-Check Codes (LDPC) have excellent performance, can obtain the error resistance performance close to the Shannon limit under certain conditions, has lower error code level compared with Turbo Codes, and has high practicability under the condition of high speed due to the characteristic of parallelism.
Because the code length of LDPC can only be set at some specific values, and bits actually required to be encoded are often longer, see fig. 2, in a channel coding link, uncoded bits need to be divided into code blocks and processed to some extent, so that each code block can meet the requirement of the length of encoded information, and after encoding, certain processing needs to be performed to match the resource bearing.
In the prior art, when code blocks are segmented, generally, only the code blocks are uniformly divided as much as possible without considering the resource condition, and only the matching resources are subjected to certain processing after the coding, so that the filling or deleting bits are concentrated when the resources are matched at the later stage, and the number of the filled or deleted bits is large, thereby affecting the coding performance.
Disclosure of Invention
The invention provides a low-density parity check code coding method and device, which can avoid centralized filling or deleting of bits when resources are matched and improve coding performance.
To solve the above technical problem, a low density parity check coding method of the present invention includes:
according to available data bit length N'pfAnd determining the code for dividing the information sequence to be coded according to the information bit length at the coding code rate RNumber of blocks NCW
According to the code block number NCWDividing the information sequence to be coded;
bit filling is carried out on the segmented code blocks;
and coding the code blocks after the bit filling, and connecting the coded code blocks in sequence.
Further, the length N 'according to available data bits'pfAnd the information bit length under the coding code rate R determines the code block number N for dividing the information sequence to be codedCWThe method comprises the following steps:
taking the information bit length under the coding code rate R as the maximum information bit length N under the coding code rate Rmeslen_max
Get theWherein,indicating an upward integer.
Further, according to the code block number NCWThe information sequence to be coded is segmented, and the segmentation comprises the following steps:
determining an average basic information bit length NmeslenWherein,represents a downward integer;
determining rem, rem being Npf-NCW*NmeslenWherein N ispfThe length of the information sequence to be coded;
will requireSplitting of a coded information sequence into NCWTaking the length of rem code blocks as Nmeslen+1, taking the rest NCWLength of rem code blocks is Nmeslen
Further, the bit-filling the segmented code block includes:
determining information bit length N of code blockmeslen_cl
Determining the number of filling bits of the segmented code block, wherein the number of the filling bits is the length N of the information bitsmeslen_clDifference values with respective lengths of the segmented code blocks;
and respectively carrying out bit filling on the code blocks according to the determined filling bit number of each code block.
Further, the information bit length N of the code block is determinedmeslen_clThe method comprises the following steps:
searching for preparation information length N 'larger than code block under the coding code rate R from corresponding information of spreading factor-code rate-code length-information bit length'meslenIs used as the information bit length N of the code blockmeslen_clWherein the preparation information length of the code block
Further, still include:
determining the information bit length N of the code blockmeslen_clThen, inquiring the information bit length Nmeslen_clCorresponding spreading factor zf and code length LLDPC
Further, the encoding the bit-padded code block includes:
according to the information bit length Nmeslen_clCorresponding spreading factor zf and code length LLDPCDetermining a coding matrix, using the determined codingAnd the matrix carries out low-density parity check coding on the code blocks after the bit filling.
Further, the method further includes, after encoding the bit-padded code blocks, performing puncturing or repetition processing on the encoded code blocks before connecting the encoded code blocks in sequence, including:
calculating the total length N of quasi-transmitted bitsbitrpt=NCW*LLDPC-NpaddingWhereinNpadding,ithe number of padding bits for the ith code block obtained by segmentation is set;
calculating the length N of the code bit which can be carried by each framebitpf
Calculating the total length N of quasi-transmitted bitsbitrptThe length N of code bit which can be carried by each framebitpfDifference N ═ Nbitrpt-Nbitpf
When N is more than 0, taking the total bit number N of the punchpuncN according to NpuncDetermining the number of bits deleted from each coded code block, and executing bit deletion operation;
when N is less than 0, taking the total number of repeated bits NrepAccording to N |, byrepThe number of bits to be padded for each coded code block is determined, and the padding operation is performed.
Further, said is according to NpuncDetermining the number of bits to delete for each coded code block, and performing bit deletion operation includes: determining the number of parity bits for an average erasureDetermining remp=Npunc-Npuncpcw*NCWFor rem in the coded code blockpLast N of code block erasure check bitspuncpcw+1 bits, puncturing the rest of the code blocksLast N except the check bitspuncpcwA bit;
said according to NrepDetermining the number of bits to be padded into each coded code block, and performing padding operation comprises: determining the number of parity bits for an average repetitionDetermining remr=Nrep-Nreppcw*NCWRem in coded code blocksrEnd of code block repetition padding Nreppcw+1 bits, with N being repeatedly padded at the end of the code block for the remaining code blocksreppcwAnd (4) a bit.
Further, in the corresponding information of the spreading factor, the code rate, the code length and the information bit length, the minimum information bit length is N under different code ratesinflAnd N isinflThe corresponding spreading factor and code length are zfminAnd LLDPC,min(ii) a Greater than NinflEach level of information bit length of 2nNinflAnd 2nNinflThe corresponding spreading factor and code length are 2nzf respectivelyminAnd 2nLLDPC,minWherein n is a natural number.
Further, when the code rate is 1/2, the minimum information bit length Ninfl128, corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 256, respectively;
at code rate of 2/3, minimum information bit length Ninfl256, corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 384, respectively;
at code rate of 3/4, minimum information bit length NinflAt 384, the corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 512, respectively;
at code rate of 5/6, minimum information bit length NinflAt 640, the corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 768, respectively;
at code rate of 7/8, minimum information bit length Ninfl896, the corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 1024 respectively.
Further, a low density parity check encoding apparatus includes: code block number determination unit, code block segmentation unit, code block padding unit, coding unit and code block connection unit, wherein:
the code block number determination unit is used for determining the code block number according to the available data bit length N'pfAnd the information bit length under the coding code rate R determines the code block number N for dividing the information sequence to be codedCW
The code block segmentation unit is used for dividing the code block into N code blocks according to the number of the code blocksCWDividing the information sequence to be coded;
the code block filling unit is used for carrying out bit filling on the segmented code blocks;
the encoding unit is used for encoding the code block after the bit filling;
and the code block connecting unit is used for connecting the coded code blocks in sequence.
Further, the code block number determining unit is specifically configured to take the information bit length at the coding rate R as the maximum information bit length N at the coding rate Rmeslen_maxGet theWherein,indicating an upward integer.
Further, the code block segmentation unit is specifically configured to determine an average basic information bit length NmeslenWherein,represents a downward integer; determining rem, rem being Npf-NCW*NmeslenWherein N ispfThe length of the information sequence to be coded; dividing the information sequence to be coded into NCWTaking the length of rem code blocks as Nmeslen+1, taking the rest NCWLength of rem code blocks is Nmeslen
Further, the device also comprises a punching and repeating processing unit, wherein:
the puncturing and repeating unit is configured to puncture or repeat the encoded code block, and includes: calculating the total length N of quasi-transmitted bitsbitrptAnd the length N of the code bit which can be carried by each framebitpf(ii) a Calculating the total length N of quasi-transmitted bitsbitrptThe length N of code bit which can be carried by each framebitpfDifference N ═ Nbitrpt-Nbitpf(ii) a When N is more than 0, taking the total bit number N of the punchpuncN according to NpuncDetermining the number of bits deleted from each coded code block, and executing bit deletion operation; when N is less than 0, taking the total number of repeated bits NrepAccording to N |, byrepThe number of bits to be padded for each coded code block is determined, and the padding operation is performed.
Further, the puncturing and repetition processing unit is according to NpuncDetermining the number of bits to be deleted for each coded code block, and performing bit deletion operation, in particular determining the number of parity bits to be deleted on averageDetermining remp=Npunc-Npuncpcw*NCWFor rem in the coded code blockpLast N of code block erasure check bitspuncpcw+1 piecesBits, last N of the erasure check bits for the remaining code blockspuncpcwA bit;
the puncturing and repetition processing unit is according to NrepDetermining the number of bits to be padded into each coded code block, and performing padding operation specifically to determine the number of parity bits for average repetitionDetermining remr=Nrep-Nreppcw*NCWRem in coded code blocksrEnd of code block repetition padding Nreppcw+1 bits, with N being repeatedly padded at the end of the code block for the remaining code blocksreppcwAnd (4) a bit.
In summary, the present invention considers the resource situation when determining the code of the segmented code block for the information sequence to be encoded, so as to make the information length of the code block more reasonable, and through the matching processing at the later stage of encoding, the filling or deleting bits are more uniform, and the system performance is improved.
Drawings
FIG. 1 is a diagram of a typical digital communication system of the prior art;
FIG. 2 is a diagram illustrating a prior art process of channel coding a link and modulating data;
FIG. 3 is a flow chart of a low density parity check coding method according to an embodiment of the present invention;
fig. 4 is an architecture diagram of a low density parity check coding apparatus according to an embodiment of the present invention.
Detailed Description
In this embodiment, the length of the information sequence to be encoded is NpfThe uncoded data bit length that each frame can carry is called available data bit length N'pfThe coding rate R is known.
As shown in fig. 3, the low density parity check coding method according to this embodiment includes:
step 301: determining the number N of code blocks segmented for an information sequence to be encodedCW
The number of segmented code blocks may be according to an available data bit length of N'pfAnd determining the length of the information bit at the coding code rate R. For a determined number N of segmented code blocksCWMore reasonable, can take the maximum information bit length N under the coding code rate Rmeslen_maxDetermining the number N of segmented code blocksCW。Nmeslen_maxThe maximum information bit length in the information bit lengths corresponding to the coding rate R is the information bit length required when the maximum expansion factor at the coding rate R is used for coding.
The number of segmented code blocks is of usable data bit length N'pfAnd a maximum information bit length Nmeslen_maxThe ratio of (A) is an integer upwards, namely:wherein,indicating that an integer is taken up for x.
Step 302: determining the information bit length, the spreading factor and the code length of the code block;
the information bit length, the spreading factor, and the code length of the code block may be according to the available data bit length N'pfAnd the number N of segmented code blocksCWAnd (4) determining.
In particular, the information bit length Nmeslen_clThe preparation information length N 'larger than the code block at the coding code rate R can be searched in the table 1'meslenIs the minimum value of the information bit lengths of (1), which is the information bit length N of the code blockmeslen_cl. All in oneThen, the information bit length N can be obtainedmeslen_clCorresponding spreading factor zf and code length LLDPC
Preparation information length N 'of the code block'meslenIs a usable data bit length of N'pfAnd the number N of segmented code blocksCWThe ratio of (A) is an integer upwards, namely:
the determination of the information bit length, the spreading factor and the code length of the code block may also be performed after the code block segmentation of the information sequence to be encoded, and then the number of padding bits of each code block is determined.
In the corresponding information of the spreading factor, code rate, code length, and information bit length of the present embodiment, the minimum information bit length is N at different code ratesinflAnd N isinflThe corresponding spreading factor and code length are zfminAnd LLDPC,min(ii) a Greater than NinflEach level of information bit length of 2nNinflAnd 2nNinflThe corresponding spreading factor and code length are 2nzf respectivelyminAnd 2nLLDPC,minWherein n is a natural number. Table 1 below records some of the spreading factor-code rate-code length-information bit length correspondence information in this embodiment.
TABLE 1
Step 303: carrying out code block segmentation on the information sequence to be coded according to the number of segmented code blocks;
the code block segmentation of the information sequence to be encoded includes:
3031: determining an average basic information bit length Nmeslen,NmeslenFor the length N of the information sequence to be codedpfAnd the number N of code blocksCWThe ratio of (a) to (b) is an integer,
3032: determining rem, rem being Npf-NCW*Nmeslen
3033: dividing the information sequence to be coded, and taking the length of rem code blocks as Nmeslen+1, the remainder NCWLength of rem code blocks is Nmeslen
The length of the first rem code blocks can be taken as Nmeslen+1。
Step 304: determining the filling bit number of each code block, and filling the bits of the code blocks according to the determined filling bit number of each code block to ensure that the length of each code block reaches the information bit length Nmeslen_cl
The number of filling bits of each code block is the information bit length Nmeslen_clDetermining the number N of bits needed to be filled in the ith code block according to the difference value of the respective lengths of the code blockspadding,iComprises the following steps:
filling all 0 bits in the front of each code block according to the determined filling bit number of each code block to ensure that the length of each code block reaches the information bit length Nmeslen_cl. Total number of padding bits is
Step 305: respectively coding each code block according to the coding rate and the information bit length of the code block;
after filling bits into each code block, the obtained length is Nmeslen_clThe code block is sent to an LDPC coding module for coding, and a coding matrix consists of a coding rate R and an information bit length Nmeslen_clCorresponding spreading factor zf and code length LLDPCThus obtaining the product.
Step 306: the coded code block is subjected to punching or repeated treatment;
the front of the code block is information bits after coding, the back of the code block is check bits, the puncturing means deleting part of check bits after the code block after coding, and the repetition means adding some bit resetting after the check bits after coding.
If the total coded bits after coding do not match the length of the coded bits that can be carried by the resource after removing the number of bits of the total filling part before coding, further processing for deleting the check bits or repeating the information bits is needed.
The bits filled before coding need to be deleted after coding, so that the total length N of the bits to be transmittedbitrptIs NCW*LLDPC-NpaddingLength of coded bits N that each frame can carrybitpfThe product of the number of data symbols carried by each frame and the number of coded bits carried by each data symbol, i.e. the length N of coded bits that can be carried by each framebitpfIs Nsympss*NcbpsymCalculating the difference between the two to obtain the total number of punctured or repeated bits NpuncOr NrepTaking N as NCW*LLDPC-Npadding-Nsympss*NcbpsymAnd the difference value between the total coded bits except the total filling bits before coding and the number of coded bits which can be carried by the resource is shown.
If N is present>0, then take NpuncN, N being deleted altogetherpuncOne check bit to match the resource bearer. The number of check bits to be deleted in each code block is as uniform as possible.
remp=Npunc-Npuncpcw*NCW
Front rempCheck bit deletion last N of code blockspuncpcw+1 bits, check bits of the rest of the code blocks delete the last NpuncpcwOne bit, namely:
if N is present<0, then take NrepN is to be filled in totalrepAnd (4) a bit. The number of repeated information bits to be filled in each coding block after the check bit is also as uniform as possible.
remr=Nrep-Nreppcw*NCW
Front remrRepeated padding of the preceding N after the check bits of a code blockreppcw+1 information bits (I)0,I1…,Ireppcw) Check bits of the remaining code blocks repeatedly fill the preceding NreppcwAn information bit (I)0,I1…,Ireppcw-1) I.e. by
Step 307: the processed code blocks are concatenated in order.
Application example 1:
assuming that there are 544 OFDM data symbols per frame, the number of coded bits carried per symbol is 600 bits (both the number of symbols and the number of bits carried per symbol refer to the pure data portion, excluding the pure data portion) depending on the resourcePreamble, control signaling, pilot, etc.), the data transmitted from the upper layer is Npf174300 bits, the coding rate is 2/3, the available data bit length N'pf=Nsympf*Ncbpsym*R=544*600*2/3=217600。
According to the above hypothetical definition, the present embodiment comprises the following steps:
1, number of segmented code blocks
2, determining the information bit length N of the code blockmeslen_cl
Preparation information length is N'meslen
Minimum code rate of 2/3 in table is greater than N'meslenInformation bit length N ofmeslen_cl4096. And the same
Spreading factor zf corresponding to information bit length is 512, and code length LLDPC6144. 3, determining the average basic information bit length N of the code blockmeslen
rem=Npf-NCW*Nmeslen=174300-54*3227=42
The first 42 code blocks have a length of Nmeslen+ 1-3227 + 1-3228, and the last 12 code blocks have a length Nmeslen3227. The number of zero bits to be padded per code block is:
the number of bits per code block padding:
total number of padding bits is
The module is partitioned and bits are padded as described above.
4, sending the code block into an encoder for encoding;
and 5, deleting the zero bits filled before coding after coding, and calculating whether the total bit number is matched with the resources:
N=NCW*LLDPC-Npadding-Nsympss*Ncbpsym=54*6144-46884-326400
=-41508
N<0, then N needs to be filled in totalrep41508 bits. The number of repeated information bits to be filled after the check bits in each code block is as uniform as possible.
remr=Nrep-Nreppcw*NCW=41508-768*54=36
Repeated padding of the preceding N after the check bits of the first 36 code blocksreppcw769 information bits, and the check bits of the last 18 code blocks are then repeated to fill the previous N bitsreppcw768 information bits.
And 6, connecting the processed coded code blocks in sequence.
Application example 2:
assuming that each frame has 120 OFDM data symbols according to resources, the number of coded bits carried by each symbol is 150 bits (the number of symbols and the number of bits carried by each symbol refer to a pure data portion excluding preamble, control signaling, pilot, etc.), and the data transmitted from the upper layer is Npf10000 bits, 5/6 coding rate, N 'is available data bit length'pf=Nsympf*Ncbpsym*R=120*150*5/6=15000。
According to the above hypothetical definition, the present embodiment comprises the following steps:
1, number of segmented code blocks
2, determining the information bit length N of the code blockmeslen_cl
Preparation information length is N'meslen
Minimum code rate of 5/6 in table is greater than N'meslenInformation bit length N ofmeslen_clIs 7680. The spreading factor zf corresponding to the information bit length is 384, and the code length L isLDPC=9216。
3, determining the average basic information bit length N of the code blockmeslen
rem=Npf-NCW*Nmeslen=0
Average basic information bit length of code block is Nmeslen5000 bits, the number of zero bits to be padded per code block is:
the number of filling bits per code block is: 7680 Bisa 5000 ═ 2680
Total number of padding bits is
The module is partitioned and bits are padded as described above.
And 4, sending the code block to an encoder for encoding.
And 5, deleting the zero bits filled before coding after coding, and calculating whether the total bit number is matched with the resources:
N=NCW*LLDPC-Npadding-Nsympss*Ncbpsym=2*9216-5360-120*150=-4928
N<0, then N needs to be filled in totalrep4928 bits. The number of repeated information bits to be filled after the check bits in each code block is as uniform as possible.
remr=Nrep-Nreppcw*NCW=0
Each code block repeatedly fills the first 2464 information bits after the check bits.
And 6, connecting the processed code words of the encoders in sequence.
Fig. 4 shows a low density parity check coding apparatus according to this embodiment, including: code block number determination unit, code block segmentation unit, code block padding unit, coding unit and code block connection unit, wherein:
a code block number determination unit for determining the number of code blocks according to the available data bit length N'pfAnd the information bit length under the coding code rate R determines the code block number N for dividing the information sequence to be codedCW
The code block number determining unit is specifically configured to take the information bit length at the coding rate R as the maximum information bit length N at the coding rate Rmeslen_maxGet itWherein,indicating an upward integer.
A code block segmentation unit for dividing the code block into N code blocksCWDividing an information sequence to be coded;
the code block segmentation unit is specifically adapted to determine an average basic information bit length NmeslenWherein,represents a downward integer; determining rem, rem being Npf-NCW*NmeslenWherein N ispfThe length of the information sequence to be coded; dividing the information sequence to be coded into NCWTaking the length of rem code blocks as Nmeslen+1, taking the rest NCWLength of rem code blocks is Nmeslen
A code block padding unit for bit-padding the segmented code block;
a coding unit for coding the bit-padded code block;
and the code block connecting unit is used for connecting the coded code blocks in sequence.
The device also comprises a punching and repeating processing unit which is used for punching or repeating the coded code block and comprises: calculating the total length N of quasi-transmitted bitsbitrptAnd the length N of the code bit which can be carried by each framebitpf(ii) a Calculating the total length N of quasi-transmitted bitsbitrptThe length N of code bit which can be carried by each framebitpfDifference N ═ Nbitrpt-Nbitpf(ii) a When N is more than 0, taking the total bit number N of the punchpuncN according to NpuncDetermining the number of bits deleted from each coded code block, and executing bit deletion operation; when N is less than 0, taking the total number of repeated bits NrepAccording to N |, byrepThe number of bits to be padded for each coded code block is determined, and the padding operation is performed.
The puncturing and repetition processing unit is based on NpuncDetermining the number of bits to be deleted for each coded code block, and performing bit deletion operation, in particular determining the number of parity bits to be deleted on averageDetermining remp=Npunc-Npuncpcw*NCWFor rem in the coded code blockpLast N of code block erasure check bitspuncpcw+1 bits, last N of erasure check bits for the rest of the code blockpuncpcwA bit;
the puncturing and repetition processing unit is based on NrepDetermining the number of bits to be padded into each coded code block, and performing padding operation specifically to determine the number of parity bits for average repetitionDetermining remr=Nrep-Nreppcw*NCWRem in coded code blocksrEnd of code block repetition padding Nreppcw+1 bits, with N being repeatedly padded at the end of the code block for the remaining code blocksreppcwAnd (4) a bit.
It will be understood by those skilled in the art that all or part of the steps of the above methods may be implemented by instructing the relevant hardware through a program, and the program may be stored in a computer readable storage medium, such as a read-only memory, a magnetic or optical disk, and the like. Alternatively, all or part of the steps of the foregoing embodiments may also be implemented by using one or more integrated circuits, and accordingly, each module/unit in the foregoing embodiments may be implemented in the form of hardware, and may also be implemented in the form of a software functional module. The present invention is not limited to any specific form of combination of hardware and software.
The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (14)

1. A low density parity check coding method, comprising:
according to available data bit length N'pfAnd the information bit length under the coding code rate R determines the code block number N for dividing the information sequence to be codedCW
According to the code block number NCWDividing the information sequence to be coded;
bit filling is carried out on the segmented code blocks;
coding the code blocks after bit filling, and connecting the coded code blocks in sequence;
according to the code block number NCWThe information sequence to be coded is segmented, and the segmentation comprises the following steps:
determining an average basic information bit length NmeslenWherein,represents a downward integer;
determining rem, rem being Npf-NCW*NmeslenWherein N ispfThe length of the information sequence to be coded;
dividing the information sequence to be coded into NCWTaking the length of rem code blocks as Nmeslen+1, taking the rest NCWLength of rem code blocks is Nmeslen
2. The method of claim 1, wherein the function is according to a usable data bit length of N'pfAnd the information bit length under the coding code rate R determines the code block number N for dividing the information sequence to be codedCWThe method comprises the following steps:
taking the information bit length under the coding code rate R as the maximum information bit length N under the coding code rate Rmeslen_max
Get theWherein,indicating an upward integer.
3. The method of claim 1 or 2, wherein the bit-filling the segmented code blocks comprises:
determining information bit length N of code blockmeslen_cl
Determining the number of filling bits of the segmented code block, wherein the number of the filling bits is the length N of the information bitsmeslen_clDifference values with respective lengths of the segmented code blocks;
and respectively carrying out bit filling on the code blocks according to the determined filling bit number of each code block.
4. The method of claim 3, wherein the determining information bit length N of code blocksmeslen_clThe method comprises the following steps:
searching for preparation information length N 'larger than code block under the coding code rate R from corresponding information of spreading factor-code rate-code length-information bit length'meslenIs used as the information bit length N of the code blockmeslen_clWherein the preparation information length of the code block
5. The method of claim 4, further comprising:
determining the information bit length N of the code blockmeslen_clThen, inquiring the information bit length Nmeslen_clCorresponding spreading factor zf and code length LLDPC
6. The method of claim 5, wherein the encoding the bit-filled code block comprises:
according to the information bit length Nmeslen_clCorresponding spreading factor zf and code length LLDPCAnd determining a coding matrix, and performing low-density parity check coding on the code block subjected to bit filling by adopting the determined coding matrix.
7. The method of claim 5, further comprising puncturing or repeating the encoded code blocks after the encoding the bit-padded code blocks and before concatenating the encoded code blocks in order, comprising:
calculating the total length N of quasi-transmitted bitsbitrpt=NCW*LLDPC-NpaddingWhereinNpadding,ithe number of padding bits for the ith code block obtained by segmentation is set;
calculating the length N of the code bit which can be carried by each framebitpf
Calculating the total length N of quasi-transmitted bitsbitrptThe length N of code bit which can be carried by each framebitpfDifference N ═ Nbitrpt-Nbitpf
When N is more than 0, taking the total bit number N of the punchpuncN according to NpuncDetermining the number of bits deleted from each coded code block, and executing bit deletion operation;
when N is less than 0, taking the total number of repeated bits NrepAccording to N |, byrepThe number of bits to be padded for each coded code block is determined, and the padding operation is performed.
8. The method of claim 7, wherein:
said according to NpuncDetermining the number of bits to delete for each coded code block, and performing bit deletion operation includes: determining the number of parity bits for an average erasureDetermining remp=Npunc-Npuncpcw*NCWFor rem in the coded code blockpLast N of code block erasure check bitspuncpcw+1 bits, last N of erasure check bits for the rest of the code blockpuncpcwA bit;
said according to NrepDetermining the number of bits to be padded into each coded code block, and performing padding operation comprises: determining the number of parity bits for an average repetitionDetermining remr=Nrep-Nreppcw*NCWRem in coded code blocksrEnd of code block repetition padding Nreppcw+1 bits, with N being repeatedly padded at the end of the code block for the remaining code blocksreppcwAnd (4) a bit.
9. The method of claim 4, wherein:
in the corresponding information of the expansion factor, the code rate, the code length and the information bit length, the minimum information bit length is N under different code ratesinflAnd N isinflThe corresponding spreading factor and code length are zfminAnd LLDPC,min(ii) a Greater than NinflEach level of information bit length of 2nNinflAnd 2nNinflThe corresponding spreading factor and code length are 2nzf respectivelyminAnd 2nLLDPC,minWherein n is a natural number.
10. The method of claim 9, wherein:
at code rate of 1/2, minimum information bit length Ninfl128, corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 256, respectively;
at code rate of 2/3, minimum information bit length Ninfl256, corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 384, respectively;
at code rate of 3/4, minimum information bit length NinflAt 384, the corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 512, respectively;
at code rate of 5/6, minimum information bit length Ninfl640, corresponding minimum spreading factorChild zfminAnd a minimum code length LLDPC,min32 and 768, respectively;
at code rate of 7/8, minimum information bit length Ninfl896, the corresponding minimum spreading factor zfminAnd a minimum code length LLDPC,min32 and 1024 respectively.
11. A low density parity check encoding apparatus, comprising: code block number determination unit, code block segmentation unit, code block padding unit, coding unit and code block connection unit, wherein:
the code block number determination unit is used for determining the code block number according to the available data bit length N'pfAnd the information bit length under the coding code rate R determines the code block number N for dividing the information sequence to be codedCW
The code block segmentation unit is used for dividing the code block into N code blocks according to the number of the code blocksCWDividing the information sequence to be coded;
the code block filling unit is used for carrying out bit filling on the segmented code blocks;
the encoding unit is used for encoding the code block after the bit filling;
the code block connecting unit is used for connecting the coded code blocks in sequence;
the code block segmentation unit is specifically configured to determine an average basic information bit length NmeslenWherein,represents a downward integer; determining rem, rem being Npf-NCW*NmeslenWherein N ispfThe length of the information sequence to be coded; dividing the information sequence to be coded into NCWTaking the length of rem code blocks as Nmeslen+1, taking the rest NCWLength of rem code blocks is Nmeslen
12. The apparatus of claim 11, wherein:
the code block number determining unit is specifically configured to take the information bit length at the coding rate R as the maximum information bit length N at the coding rate Rmeslen_maxGet theWherein,indicating an upward integer.
13. The apparatus of claim 11, further comprising a puncture and repeat processing unit, wherein:
the puncturing and repeating unit is configured to puncture or repeat the encoded code block, and includes: calculating the total length N of quasi-transmitted bitsbitrptAnd the length N of the code bit which can be carried by each framebitpf(ii) a Calculating the total length N of quasi-transmitted bitsbitrptThe length N of code bit which can be carried by each framebitpfDifference N ═ Nbitrpt-Nbitpf(ii) a When N is more than 0, taking the total bit number N of the punchpuncN according to NpuncDetermining the number of bits deleted from each coded code block, and executing bit deletion operation; when N is less than 0, taking the total number of repeated bits NrepAccording to N |, byrepThe number of bits to be padded for each coded code block is determined, and the padding operation is performed.
14. The apparatus of claim 13, wherein:
the puncturing and repetition processing unit is according to NpuncDetermining the number of bits to be deleted for each coded code block, and performing bit deletion operation, in particular determining the number of parity bits to be deleted on averageDetermining remp=Npunc-Npuncpcw*NCWFor rem in the coded code blockpLast N of code block erasure check bitspuncpcw+1 bits, last N of erasure check bits for the rest of the code blockpuncpcwA bit;
the puncturing and repetition processing unit is according to NrepDetermining the number of bits to be padded into each coded code block, and performing padding operation specifically to determine the number of parity bits for average repetitionDetermining remr=Nrep-Nreppcw*NCWRem in coded code blocksrEnd of code block repetition padding Nreppcw+1 bits, with N being repeatedly padded at the end of the code block for the remaining code blocksreppcwAnd (4) a bit.
CN201110298047.7A 2011-09-29 2011-09-29 A kind of low density parity check code encoding method and device Active CN102315911B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110298047.7A CN102315911B (en) 2011-09-29 2011-09-29 A kind of low density parity check code encoding method and device
PCT/CN2012/072936 WO2012155683A1 (en) 2011-09-29 2012-03-23 Low-density parity check method and device as the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110298047.7A CN102315911B (en) 2011-09-29 2011-09-29 A kind of low density parity check code encoding method and device

Publications (2)

Publication Number Publication Date
CN102315911A CN102315911A (en) 2012-01-11
CN102315911B true CN102315911B (en) 2017-10-27

Family

ID=45428761

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110298047.7A Active CN102315911B (en) 2011-09-29 2011-09-29 A kind of low density parity check code encoding method and device

Country Status (2)

Country Link
CN (1) CN102315911B (en)
WO (1) WO2012155683A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102315911B (en) * 2011-09-29 2017-10-27 中兴通讯股份有限公司 A kind of low density parity check code encoding method and device
CN104143992B (en) * 2014-07-23 2017-05-10 西安空间无线电技术研究所 LDPC encoding method based on bit stuffing
CN108631789B (en) * 2016-10-25 2019-07-09 华为技术有限公司 Coding, interpretation method and equipment
US10608785B2 (en) * 2017-01-19 2020-03-31 Qualcomm Incorporated Resource-based code block segmentation
CN108631939B (en) * 2017-03-24 2020-03-10 华为技术有限公司 Method for dividing transmission block, wireless communication device and chip
CN108631941B (en) * 2017-03-24 2021-02-23 华为技术有限公司 Communication method and device
CN108631937B (en) * 2017-03-24 2020-06-02 华为技术有限公司 Information processing method, device and equipment
EP4187794A1 (en) 2017-06-15 2023-05-31 Huawei Technologies Co., Ltd. Qc-ldpc codes for 3gpp 5g mobile radio
CN109067407B (en) * 2017-06-15 2019-11-15 华为技术有限公司 The method, apparatus and communication equipment of information processing
CN109327225B9 (en) 2017-06-27 2021-12-10 华为技术有限公司 Information processing method and device and communication equipment
CN109257141B (en) * 2017-07-14 2021-02-12 电信科学技术研究院 Code block segmentation method, terminal, base station and computer readable storage medium
CN110266320B (en) * 2019-07-01 2021-03-12 京信通信系统(中国)有限公司 LDPC encoding and decoding method, device and encoding and decoding system
CN114257251A (en) * 2021-11-29 2022-03-29 北京中科晶上科技股份有限公司 Encoding method, encoding device and encoder

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101431396A (en) * 2007-11-09 2009-05-13 松下电器产业株式会社 Method for distributing filling bit in split code word
CN101667884A (en) * 2008-09-03 2010-03-10 中兴通讯股份有限公司 Method and device for coding channel and method and device for decoding channel
CN101867440A (en) * 2009-04-15 2010-10-20 中兴通讯股份有限公司 Preprocessing method for segmenting code blocks
EP2323329A2 (en) * 2008-11-06 2011-05-18 LG Electronics Inc. Apparatus and method for transmitting and receiving a signal
CN102098125A (en) * 2009-12-15 2011-06-15 上海贝尔股份有限公司 Method and device for processing parallel baseband

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100713371B1 (en) * 2004-08-10 2007-05-04 삼성전자주식회사 Apparatus and method for encoding/decoding a block low density parity check code
KR20090095432A (en) * 2008-03-03 2009-09-09 삼성전자주식회사 Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
CN101577553B (en) * 2009-05-31 2011-04-27 清华大学 Method for coding low-density parity check code with low complexity
CN102315911B (en) * 2011-09-29 2017-10-27 中兴通讯股份有限公司 A kind of low density parity check code encoding method and device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101431396A (en) * 2007-11-09 2009-05-13 松下电器产业株式会社 Method for distributing filling bit in split code word
CN101667884A (en) * 2008-09-03 2010-03-10 中兴通讯股份有限公司 Method and device for coding channel and method and device for decoding channel
EP2323329A2 (en) * 2008-11-06 2011-05-18 LG Electronics Inc. Apparatus and method for transmitting and receiving a signal
CN101867440A (en) * 2009-04-15 2010-10-20 中兴通讯股份有限公司 Preprocessing method for segmenting code blocks
CN102098125A (en) * 2009-12-15 2011-06-15 上海贝尔股份有限公司 Method and device for processing parallel baseband

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LTE系统中信道编码的研究及其实现;张罗成;《中国优秀硕士学位论文全文数据库(电子期刊)》;20110415;正文第1-80页 *

Also Published As

Publication number Publication date
WO2012155683A1 (en) 2012-11-22
CN102315911A (en) 2012-01-11

Similar Documents

Publication Publication Date Title
CN102315911B (en) A kind of low density parity check code encoding method and device
US11165537B2 (en) Method for encoding information bit sequence in communication network
US11310000B2 (en) Transport block segmentation for multi-level codes
KR101502623B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
CN107370560B (en) Method, device and equipment for coding and rate matching of polarization code
US10050741B2 (en) Method and apparatus for transmitting and receiving control information in a broadcasting/communication system
KR101503058B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
KR100984289B1 (en) Signal transmitting/receiving apparatus for supporting variable coding rate in a communication system and method thereof
CN107342843A (en) Speed matching method, code device and communicator
US8640009B2 (en) Methods and apparatus for providing linear erasure codes
US10848185B2 (en) Coding and decoding of polar codes extended to lengths which are not powers of two
KR102552391B1 (en) Trnasmitter, receiver and signal processing method thereof
US20220140844A1 (en) Data processing method and device
CN111670543A (en) Multi-component coding for signal shaping
KR101503656B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
CN107508656A (en) A kind of Spinal joint source-channel decoding methods on BEC channels
KR101413783B1 (en) Apparatus and method for channel encoding and decoding in communication system using variable-length ldpc codes
KR20090060106A (en) Apparatus and method for encoding and decoding channel in communication system using low-density parity-check codes
CN115765761A (en) Low-complexity LDPC (low density parity check) coding method, medium and device suitable for NR (noise-and-noise) standard
CN112398580A (en) Modulation method and device
CN102624493B (en) Receiver decoding method and device
KR101503654B1 (en) Apparatus and method for channel encoding and decoding in communication system using low-density parity-check codes
Lin et al. An effective error correction scheme for arithmetic coding
WO2024122088A1 (en) Method, data transmitter and computer program for adapting a bicm scheme to amplitude shaping in combination with puncturing

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201229

Address after: 224300 Lingang Industrial Zone, Sheyang County, Yancheng City, Jiangsu Province

Patentee after: Sheyang port fishery industry and Trade Development Company of Sheyang County

Address before: 518057 Ministry of justice, Zhongxing building, South Science and technology road, Nanshan District hi tech Industrial Park, Shenzhen, Guangdong

Patentee before: ZTE Corp.

TR01 Transfer of patent right