CN109391350B - Encoding method, decoding method, encoding device and decoding device - Google Patents

Encoding method, decoding method, encoding device and decoding device Download PDF

Info

Publication number
CN109391350B
CN109391350B CN201710680670.6A CN201710680670A CN109391350B CN 109391350 B CN109391350 B CN 109391350B CN 201710680670 A CN201710680670 A CN 201710680670A CN 109391350 B CN109391350 B CN 109391350B
Authority
CN
China
Prior art keywords
crc
length
decoding
added
decoded
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.)
Expired - Fee Related
Application number
CN201710680670.6A
Other languages
Chinese (zh)
Other versions
CN109391350A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201710680670.6A priority Critical patent/CN109391350B/en
Priority to PCT/CN2018/099409 priority patent/WO2019029576A1/en
Publication of CN109391350A publication Critical patent/CN109391350A/en
Application granted granted Critical
Publication of CN109391350B publication Critical patent/CN109391350B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • 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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • 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/0061Error detection codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

The application provides an encoding method, a decoding method, an encoding device and a decoding device. The encoding method comprises the following steps: acquiring a transport block TB; adding TB _ CRC into the TB, wherein the TB _ CRC is used for carrying out CRC on the TB; determining the length corresponding to the TB added with the TB _ CRC; determining the TB added with the TB _ CRC as a coding block CB under the condition that the length corresponding to the TB added with the TB _ CRC is less than or equal to the preset length; adding CB _ CRC into the CB, wherein the CB _ CRC is used for carrying out CRC on the CB; and encoding the CB added with the CB _ CRC. The method and the device can reduce the complexity of hardware implementation of the decoding end.

Description

Encoding method, decoding method, encoding device and decoding device
Technical Field
The present application relates to the field of communication technologies, and more particularly, to an encoding method, a decoding method, an encoding apparatus, and a decoding apparatus.
Background
In an LTE system, when a coding end codes a Transport Block (TB), a CRC check bit (TB _ CRC) is generally added to the TB, and then the length corresponding to the TB after the TB _ CRC check bit is added is determined, and then a subsequent coding mode is determined according to the size relationship between the length corresponding to the TB after the TB _ CRC is added and a preset length. If the length corresponding to the TB added with the TB _ CRC is less than or equal to the preset length, the encoding end does not divide the TB (the TB corresponds to a CB at this time), but directly encodes the TB; if the length corresponding to the TB to which the TB _ CRC is added is greater than the preset length, the TB needs to be divided into a plurality of Code Blocks (CBs), and a corresponding CRC check bit (CB _ CRC) is added to each CB of the plurality of CBs.
Correspondingly, the decoding end needs to perform different check processing for different situations when decoding the TB to be decoded, when the TB is not divided, the decoding end needs to perform TB _ CRC check every time iterative decoding, and when the TB is divided into a plurality of CBs, the decoding end needs to perform CB _ CRC check every time iterative decoding. Since only one type of CRC check module is typically embedded in one type of decoder. Therefore, for the above two cases, different types of decoders (one decoder is embedded with a CB _ CRC check module, and the other decoder is embedded with a TB _ CRC check module) need to be set for decoding, and the decoders are generally implemented by complex hardware circuits, so that the complexity of hardware implementation at the decoding end is increased by setting two different types of decoders at the decoding end and switching between the different types of decoders.
Disclosure of Invention
The application provides an encoding method, a decoding method, an encoding device and a decoding device, which are used for reducing the complexity of hardware implementation of a decoding end.
In a first aspect, an encoding method is provided, which includes: acquiring a transport block TB; adding TB _ CRC into the TB, wherein the TB _ CRC is used for carrying out CRC check on the TB; determining the length corresponding to the TB added with the TB _ CRC; determining the TB added with the TB _ CRC as a coding block CB under the condition that the length corresponding to the TB added with the TB _ CRC is less than or equal to a preset length; adding CB _ CRC into the CB, wherein the CB _ CRC is used for carrying out CRC check on the CB; and coding the CB added with the CB _ CRC.
In the application, when the TB only includes one CB, the CB _ CRC is also added to the TB, so that no matter the TB includes multiple CBs or only includes a single CB, the decoding end can perform the CB _ CRC check during iterative decoding, unlike the existing scheme, different CRC check modes (different CRC check modes correspond to different decoders) need to be adopted according to different situations of the TB (the TB includes multiple CBs or only includes a single CB) during iterative decoding.
It should be understood that the above TB _ CRC is a CRC sequence for checking the TB, and the CB _ CRC is a CRC sequence for checking the CB.
With reference to the first aspect, in certain implementations of the first aspect, the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
With reference to the first aspect, in certain implementations of the first aspect, the method further includes: under the condition that the length corresponding to the TB added with the TB _ CRC is larger than the preset length, dividing the TB added with the TB _ CRC into a plurality of CBs; adding the CB _ CRC to each CB of the plurality of CBs; and coding each CB added with the CB _ CRC.
With reference to the first aspect, in certain implementations of the first aspect, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
In a second aspect, a decoding method is provided, which includes: determining the length of a Transport Block (TB) to be decoded; determining the number of CBs contained in the TB to be coded according to the length of the TB to be coded; receiving the TB to be coded; under the condition that the TB to be decoded only comprises one CB, iteratively decoding the TB to be decoded, and performing CB _ CRC (cyclic redundancy check) on a data block obtained by each iterative decoding, wherein the TB to be decoded comprises CB _ CRC and TB _ CRC, the CB _ CRC is used for performing CRC on the CB, and the TB _ CRC is used for performing CRC on the TB; and under the condition that the data block obtained by iterative decoding passes the CB _ CRC check, carrying out the TB _ CRC check on the data block obtained by the iterative decoding.
In the present application, when the TB to be decoded only includes one CB, the TB to be decoded also includes CB _ CRC, and therefore, when the TB only includes one CB, the decoding end can also perform CB _ CRC check during iterative decoding, and it is not necessary to adopt different CRC check modes according to different situations of the TB (whether the TB includes multiple CBs or only includes a single CB) during iterative decoding as in the conventional scheme.
With reference to the second aspect, in certain implementations of the second aspect, the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
With reference to the second aspect, in some implementations of the second aspect, determining the number of CBs included in the TB to be coded according to the length of the TB to be coded includes: determining that the TB to be coded only contains one CB under the condition that the length corresponding to the TB to be coded is less than or equal to a preset length; and determining that the TB to be coded comprises a plurality of CBs under the condition that the length corresponding to the TB to be coded is greater than the preset length.
With reference to the second aspect, in certain implementations of the second aspect, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
With reference to the second aspect, in certain implementations of the second aspect, the method further includes: under the condition that the TB to be decoded comprises a plurality of CBs, carrying out iterative decoding on the TB to be decoded, and carrying out CB _ CRC (cyclic redundancy check) on each data block in a plurality of data blocks obtained by iterative decoding; under the condition that each data block in the multiple data blocks obtained by iterative decoding passes CB _ CRC check, the multiple data blocks obtained by iterative decoding are connected in series to obtain a TB containing TB _ CRC; and performing TB _ CRC check on the TB containing the TB _ CRC.
In a third aspect, there is provided an encoding apparatus comprising means for performing the first aspect or various implementations thereof.
In a fourth aspect, there is provided a decoding apparatus comprising means for performing the second aspect or various implementations thereof.
In a fifth aspect, there is provided an encoding apparatus comprising a memory for storing a program, a transceiver, and a processor for executing the program, wherein when the program is executed, the processor and the transceiver perform the method of the first aspect or any possible implementation manner of the first aspect.
The encoding device may specifically be a terminal device or a network device.
A sixth aspect provides a decoding apparatus comprising a memory for storing a program, a transceiver, and a processor for executing the program, the processor and the transceiver performing the method of the second aspect or any possible implementation of the second aspect when the program is executed.
The decoding device may specifically be a terminal device or a network device.
In a seventh aspect, an encoding apparatus is provided, where the encoding apparatus includes a storage medium, which may be a non-volatile storage medium, and a central processing unit, where a computer-executable program is stored in the storage medium, and the central processing unit is connected to the non-volatile storage medium and executes the computer-executable program to implement the first aspect or the method in any possible implementation manner of the first aspect.
The encoding device may specifically be a terminal device or a network device.
In an eighth aspect, a decoding apparatus is provided, where the decoding apparatus includes a storage medium and a central processing unit, the storage medium may be a non-volatile storage medium, and a computer-executable program is stored in the storage medium, and the central processing unit is connected to the non-volatile storage medium and executes the computer-executable program to implement the method in the second aspect or any possible implementation manner of the second aspect.
The decoding device may specifically be a terminal device or a network device.
In a ninth aspect, a chip is provided, where the chip includes a processor and a communication interface, where the communication interface is used to communicate with an external device, and the processor is used to execute the method in the first aspect or any possible implementation manner of the first aspect.
Optionally, as an implementation manner, the chip may further include a memory, where instructions are stored in the memory, and the processor is configured to execute the instructions stored in the memory, and when the instructions are executed, the processor is configured to execute the first aspect or the method in any possible implementation manner of the first aspect.
Optionally, as an implementation manner, the chip is integrated on a terminal device or a network device.
A tenth aspect provides a chip comprising a processor and a communication interface, the communication interface being configured to communicate with an external device, the processor being configured to perform the method of the second aspect or any possible implementation manner of the second aspect.
Optionally, as an implementation manner, the chip may further include a memory, where instructions are stored in the memory, and the processor is configured to execute the instructions stored in the memory, and when the instructions are executed, the processor is configured to execute the method in the second aspect or any possible implementation manner of the second aspect.
Optionally, as an implementation manner, the chip is integrated on a terminal device or a network device.
In an eleventh aspect, there is provided a computer readable storage medium storing program code for execution by a device, the program code comprising instructions for performing the first aspect or the method in any possible implementation of the first aspect.
In a twelfth aspect, there is provided a computer readable storage medium storing program code for execution by a device, the program code comprising instructions for performing the method of the second aspect or any possible implementation of the second aspect.
Drawings
Fig. 1 is a schematic diagram of a possible application scenario of an embodiment of the present application.
Fig. 2 is a schematic flow chart of an encoding method of an embodiment of the present application.
Fig. 3 is a schematic diagram of dividing a TB into one CB in the embodiment of the present application.
Fig. 4 is a schematic diagram of dividing a TB into a plurality of CBs in the embodiment of the present application.
Fig. 5 is a schematic flow chart of a decoding method according to an embodiment of the present application.
Fig. 6 is a schematic diagram of block error rates when decoding is performed by the conventional decoding method and the decoding method according to the embodiment of the present application.
Fig. 7 is a schematic block diagram of an encoding apparatus according to an embodiment of the present application.
FIG. 8 is a schematic block diagram of a decoding device of an embodiment of the present application.
Fig. 9 is a schematic block diagram of an encoding apparatus according to an embodiment of the present application.
FIG. 10 is a schematic block diagram of a decoding apparatus of an embodiment of the present application.
Detailed Description
The technical solution in the present application will be described below with reference to the accompanying drawings.
The technical scheme of the embodiment of the application can be applied to various communication systems, for example: a Global System for Mobile communications (GSM) System, a Code Division Multiple Access (CDMA) System, a Wideband Code Division Multiple Access (WCDMA) System, a General Packet Radio Service (GPRS), a Long Term Evolution (Long Term Evolution, LTE) System, an LTE Frequency Division Duplex (FDD) System, an LTE Time Division Duplex (TDD), a Universal Mobile Telecommunications System (UMTS), a Worldwide Interoperability for Microwave Access (WiMAX) communication System, a future fifth Generation (5G) System, or a New Radio Network (NR), etc.
Terminal equipment in the embodiments of the present application may refer to user equipment, access terminals, subscriber units, subscriber stations, mobile stations, remote terminals, mobile devices, user terminals, wireless communication devices, user agents, or user devices. The terminal device may also be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a handheld device with Wireless communication function, a computing device or other processing device connected to a Wireless modem, a vehicle-mounted device, a wearable device, a terminal device in a future 5G Network or a terminal device in a future evolved Public Land Mobile Network (PLMN), and the like, which are not limited in this embodiment.
The Network device in this embodiment may be a device for communicating with a terminal device, where the Network device may be a Base Transceiver Station (BTS) in a Global System for Mobile communications (GSM) System or a Code Division Multiple Access (CDMA) System, may also be a Base Station (NodeB, NB) in a Wideband Code Division Multiple Access (WCDMA) System, may also be an evolved node b (eNB, or eNodeB) in an LTE System, may also be a wireless controller in a Cloud Radio Access Network (CRAN) scenario, or may be a relay Station, an Access point, a vehicle-mounted device, a wearable device, a Network device in a future 5G Network, or a Network device in a future evolved PLMN Network, and the like, and the embodiment of the present invention is not limited.
Fig. 1 is a schematic diagram of a possible application scenario of an embodiment of the present application. The communication system in fig. 1 includes a network device and a terminal device, and control information or data information may be transmitted between the network device and the terminal device through a control channel or a data channel. When the network device transmits information to the terminal device, the network device may encode data to be transmitted by using the encoding method of the embodiment of the present application, and then transmit the encoded data to the terminal device, and after receiving the data transmitted by the network device, the terminal device may decode the received data by using the decoding method of the embodiment of the present application, thereby obtaining control information or data information transmitted by the network device to the terminal device. Similarly, the terminal device may also encode data to be transmitted by using the encoding method of the embodiment of the present application, and then transmit the encoded data to the network device, and after receiving the data transmitted by the terminal device, the network device may decode the received data by using the decoding method of the embodiment of the present application, so as to obtain the control information or data information transmitted by the terminal device to the network device. The data to be encoded or decoded may be various types of data including control information or data information.
Fig. 2 is a schematic flow chart of an encoding method of an embodiment of the present application. The method 200 may be performed by an encoding end device, which may specifically be a network device or a terminal device.
The method 200 specifically includes:
210. and obtaining TB.
The TB here may be a TB transmitted from a higher layer. It should be understood that the method 200 herein may be implemented at the physical layer, and the higher layer is a layer above the physical layer, for example, the higher layer may be a Media Access Control (MAC) layer.
In addition, the TB may include data information transmitted between the network device and the terminal device through a data channel, or control information transmitted between the network device and the terminal device through a control channel.
220. A TB _ CRC is added to the TB, and this TB _ CRC is used to perform a CRC check on the TB.
As shown in fig. 3, a TB _ CRC may be added to the tail of the TB.
The TB _ CRC is a TB-level CRC sequence, corresponds to a TB, and is used to check whether the decoded TB is accurate.
230. Determining the length corresponding to the TB added with the TB _ CRC;
it should be understood that the length corresponding to the TB after the TB _ CRC is added is the sum of the length of the TB and the length of the TB _ CRC.
240. And under the condition that the length corresponding to the TB added with the TB _ CRC is less than or equal to the preset length, determining the TB added with the TB _ CRC as a coding block CB.
Optionally, the preset length in step 240 is Kmax-LCB_CRCSpecifically, when KmaxIs 6114 or 8448, respectively, the preset length in step 240 is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of CB _ CRC.
Assuming that the length of TB is A, the length of TB _ CRCDegree LTB_CRCThen, the TB after TB _ CRC is added corresponds to a length B, where B is a + LTB_CRC
When B is less than or equal to Kmax-LCB_CRCIn this case, the TB to which the TB _ CRC is added may be directly divided into one CB, that is, the TB to which the TB _ CRC is added is directly determined as a CB.
It will be appreciated that in the prior art solution, the predetermined length is KmaxIn the present application, the predetermined length is Kmax-LCB_CRC
In the present application, whether the TB is divided into one CB or into a plurality of CBs, a CB _ CRC is added in each CB, considering that the length of a data block input to the encoder is less than KmaxTherefore, the length of TB to which only TB _ CRC is added but no CB _ CRC is equal to or less than Kmax-LCB_CRCThe TB is divided into one CB, otherwise the TB is divided into a plurality of CBs. Thus, the preset length in the present application is different from the preset length in the existing scheme.
250. And adding CB _ CRC into the CB, wherein the CB _ CRC is used for checking the CB.
It should be understood that the CB _ CRC described above is a CRC sequence at a CB level, and the CB _ CRC corresponds to the CB and is used for checking whether the CB obtained by decoding is accurate.
Specifically, as shown in fig. 3, when the length corresponding to the TB to which the TB _ CRC is added is smaller than the preset length, the TB to which the TB _ CRC is added is directly divided into one CB, that is, the TB to which the TB _ CRC is added is determined as the CB directly (as shown in fig. 3, the CB includes the TB and the TB _ CRC), and then the CB _ CRC is added to the CB (as shown in fig. 3, the CB _ CRC may be located at the tail of the CB), so that the CB including both the TB _ CRC and the CB _ CRC is obtained.
Alternatively, the CB _ CRC and the TB _ CRC may be generated based on different CRC polynomials.
When the CB _ CRC and the TB _ CRC generated based on different CRC polynomials are used for CRC check, equivalently different check modes are used for checking the CB and the TB respectively, and the accuracy of CRC check can be improved.
For example, the TB _ CRC may be generated based on a polynomial (1), and the CB _ CRC may be generated based on a polynomial (2).
gCRC(D)=D24+D23+D18+D17+D14+D11+D10+D7+D6+D5+D4+D3+D+1 (1)
gCRC(D)=D24+D23+D6+D5+D+1 (2)
In addition, the TB _ CRC may be generated based on the polynomial (3), and the CB _ CRC may be generated based on the polynomial (4).
gCRC(D)=D16+D12+D5+1 (3)
gCRC(D)=D8+D7+D4+D3+D+1 (4)
260. And encoding the CB added with the CB _ CRC.
It should be understood that the CB added with the CB _ CRC in step 260 includes both the TB _ CRC and the CB _ CRC, so that the decoding end can perform the CB _ CRC check when decoding the corresponding TB.
In the application, when the TB only contains one CB, the CB _ CRC is added into the TB, so that no matter the TB contains a plurality of CBs or only contains a single CB, a decoding end can carry out the CB _ CRC check during iterative decoding, and the existing scheme does not need to adopt different CRC check modes according to different conditions of the TB (the TB contains a plurality of CBs or only contains a single CB) during iterative decoding, and the different CRC check modes correspond to different decoders. Therefore, in the present application, the decoding end only needs to adopt one type of decoder when performing iterative decoding, so that the complexity of hardware implementation of the decoder at the decoding end is reduced.
Specifically, in the existing scheme, when the length of the TB is long, the TB needs to be divided into multiple CBs, and a CB _ CRC is added to each CB, and when the length of the TB is short, the TB is directly divided into one CB, and a CB CRC is not added to the CB (at this time, only the TB _ CRC is included in the CB), so that different types of CRC checks (a CB _ CRC check and a TB _ CRC check) may need to be adopted when the decoding end performs iterative decoding. In the application, when the length of the TB is short, the TB is directly divided into one CB, and the CB _ CRC is also added in the CB, so that the decoding end only needs to adopt the CB _ CRC check during iterative decoding, the arrangement of different types of decoders at the decoding end is avoided, and the complexity of realizing the decoding end is simplified.
Optionally, a forward error correction FEC encoder may be employed in encoding the CB with the CB _ CRC added. Specifically, a Low Density Parity Check (LDPC) encoder or a Turbo encoder may be used to encode the CB to which the CB _ CRC is added. Correspondingly, the decoding end needs to adopt a decoder of a type corresponding to the encoding end to decode during decoding.
Optionally, the method 200 further includes: under the condition that the length corresponding to the TB added with the TB _ CRC is greater than the preset length, dividing the TB added with the TB _ CRC into a plurality of CBs; adding a CB _ CRC to each CB of the plurality of CBs; each CB to which the CB _ CRC is added is encoded.
Specifically, as shown in fig. 4, when the length corresponding to the TB to which the TB _ CRC is added is greater than the preset length, the TB to which the TB _ CRC is added is divided into five CBs, and the CB _ CRC is added to each CB, and then forward error correction coding (FEC Encoding) is performed on each CB to which the CB _ CRC is added.
It should be understood that the division of the TB after the TB _ CRC is added into five CBs in fig. 4 is only a specific example, and in fact, when the TBs have different lengths, the TB after the TB _ CRC is added may be divided into other numbers of CBs.
It should be understood that, in the method 200, when the length of the TB is long (the length corresponding to the TB to which the TB _ CRC is added is greater than the preset length), the TB is divided into a plurality of CBs, and a CB _ CRC is added to each CB of the plurality of CBs.
That is to say, in the method 200, no matter the length of the TB is short (the length corresponding to the TB after the TB _ CRC is added is less than or equal to the preset length) or long (the length corresponding to the TB after the TB _ CRC is added is greater than the preset length), the present application adds the CB _ CRC to the CBs obtained by dividing the TB. That is to say, no matter the TB is divided into a single CB or the TB is divided into a plurality of CBs, the CB _ CRC is added to the CB obtained by dividing the TB, so that the decoding end can adopt CB _ CRC check no matter what TB to be decoded is subjected to iterative decoding.
The encoding method of the embodiment of the present application is described above, and the decoding method of the embodiment of the present application is described below with reference to fig. 5, it should be understood that the decoding method of the embodiment of the present application corresponds to the encoding method of the embodiment of the present application, and the decoding method of the embodiment of the present application can decode the data obtained by encoding of the embodiment of the present application to obtain the final data.
Fig. 5 is a schematic flow chart of a decoding method according to an embodiment of the present application. The method 500 may be performed by a decode-side device. The encoding end device may specifically be a network device or a terminal device.
The method 500 specifically includes:
510. the length of the TB to be coded is determined.
Alternatively, when the method 500 is executed by a decoding-side device, the decoding-side device may determine the length of the TB to be decoded through control information sent by an encoding-side device.
Specifically, the decoding-side device may obtain the control information through a control channel between the decoding-side device and the encoding-side device, and then obtain the length of the TB to be decoded according to a table look-up of the control information.
520. And determining the number of CBs contained in the TB to be coded according to the length of the TB to be coded.
It should be understood that the decoding end may determine the number of CBs included in the TB to be decoded according to the length of the TB to be decoded in the same manner as the encoding end.
Optionally, determining the number of CBs included in the TB to be coded according to the length of the TB to be coded includes: determining that the TB to be decoded only contains one CB under the condition that the length of the TB to be decoded is less than or equal to the preset length; determining that the TB to be coded includes a plurality of CBs if the length of the TB to be coded is greater than a preset length.
It should be understood that the foregoing is intended to coverSet length as Kmax-LCB_CRCSpecifically, when KmaxWhen the value of (A) is 6114 or 8448, respectively, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of CB _ CRC.
It will be appreciated that in the prior art solution, the predetermined length is KmaxIn the present application, the predetermined length is Kmax-LCB_CRC
It should be understood that the length of the TB to be decoded here may be the sum of the length of the TB and the length of the TB _ CRC. The decoding end may determine the length of the TB to be decoded according to the length of the TB and the length of the TB _ CRC, and then determine the number of CBs included in the TB according to the relationship between the length of the TB to be decoded and the preset length.
Specifically, assume that the length of TB is A and the length of TB _ CRC is LTB_CRCThen, the length of the TB to be coded is B, where B ═ a + LTB_CRC. If B is less than or equal to Kmax-LCB_CRCThen the TB to be coded contains only one CB if B>Kmax-LCB_CRCThen, the TB to be coded includes multiple CBs.
530. A TB to be decoded is received.
When receiving the TB to be decoded, the rate de-matching may be performed first, and then the TB to be decoded is received.
540. And under the condition that the TB to be decoded only comprises one CB, iteratively decoding the TB to be decoded, and performing CB _ CRC (cyclic redundancy check) on the data block obtained by each iterative decoding.
In step 540, the TB to be decoded includes TB _ CRC and CB _ CRC, where TB _ CRC is a CRC sequence at TB level, the TB _ CRC corresponds to TB and is used to check whether the TB obtained by decoding is accurate, CB _ CRC is a CRC sequence at CB level, and the CB _ CRC corresponds to CB and is used to check whether the CB obtained by decoding is accurate.
It should be understood that the CB _ CRC and TB _ CRC described above may be generated based on different CRC polynomials.
For example, TB _ CRC may be generated based on the above polynomial (1) or (3), and CB _ CRC may be generated based on the above polynomial (2) or (4).
It should be understood that an FEC decoder may be used in decoding the CB, and specifically, an LDPC decoder, a Turbo decoder, or the like may also be used as long as it corresponds to the type of encoder at the encoding end.
In addition, when the TB to be decoded is subjected to iterative decoding, the TB is equivalent to the TB to be decoded is subjected to multiple decoding, CB _ CRC (cyclic redundancy check) is performed on the result obtained by each decoding, and the TB is not obtained until the result of the iterative decoding meets the CB _ CRC. Or, after the number of iterative decoding times exceeds the preset number, if the CB _ CRC check is still not met, reporting a decoding error.
550. And under the condition that the data block obtained by iterative decoding passes the CB _ CRC check, carrying out the TB _ CRC check on the data block obtained by iterative decoding.
In the application, when the TB to be decoded only includes one CB, the TB to be decoded also includes CB _ CRC, so that CB _ CRC check can be directly adopted during decoding instead of adopting different CRC check modes according to whether the TB includes multiple CBs or a single CB as in the conventional scheme, and thus, the decoding and checking can be realized by adopting one type of decoder at the decoding end, and the complexity of realizing the decoder at the decoding end is reduced.
Optionally, as an embodiment, the method 800 further includes: under the condition that the TB to be decoded comprises a plurality of CBs, iteratively decoding the TB to be decoded, and performing CB _ CRC (cyclic redundancy check) on each data block in a plurality of data blocks obtained by iterative decoding; under the condition that each data block in a plurality of data blocks obtained by iterative decoding passes CB _ CRC check, the plurality of data blocks obtained by iterative decoding are connected in series to obtain a TB containing the TB _ CRC; TB _ CRC check is performed on the TB containing TB _ CRC.
That is to say, in the method 500, no matter whether the TB to be decoded includes multiple CBs or only a single CB, the application performs CB _ CRC check when the TB to be decoded is decoded, so that the decoding end can implement decoding and checking by using one type of decoder, and complexity of implementation of the decoder at the decoding end is reduced.
The effect of the decoding method of the embodiment of the present application and the decoding method of the existing scheme is compared with fig. 6. Specifically, when the TB to be decoded only includes a single CB, the decoding method according to the embodiment of the present application performs CB _ CRC check on the TB to be decoded by using 8-bit CB _ CRC in each iterative decoding, obtains the TB when the decoding result passes the CB _ CRC check, and then performs TB _ CRC check on the obtained TB by using 8-bit TB _ CRC, and obtains the final TB if the TB _ CRC check is satisfied. When the TB to be decoded only contains a single CB, the TB to be decoded is directly checked by using a 16-bit TB _ CRC when decoded by using the decoding method in the existing scheme at each iterative decoding, and if the TB obtained by decoding meets the TB _ CRC check, the final TB is obtained.
Fig. 6 shows a block error rate of decoding using the decoding method of the embodiment of the present application and a block error rate of decoding using the decoding method of the existing scheme when a TB to be decoded contains only a single CB. As can be seen from fig. 6, the variation curve of the block error rate during decoding in the present embodiment is very close to the variation curve of the block error rate during decoding in the conventional embodiment, and therefore, the failure probability of decoding by using the decoding method in the embodiment of the present application is substantially the same as the failure probability of decoding by using the decoding method in the conventional embodiment.
The encoding method and the decoding method according to the embodiment of the present application are described in detail above with reference to fig. 1 to 6. The encoding device and the decoding device of the embodiment of the present application are described below with reference to fig. 7 to 10, it should be understood that the encoding device and the decoding device in fig. 7 to 10 correspond to the encoding method and the decoding method of the embodiment of the present application, respectively, and the encoding device in fig. 7 to 10 may perform the encoding method of the embodiment of the present application, and the decoding device in fig. 7 to 10 may perform the decoding method of the embodiment of the present application, and repeated descriptions are appropriately omitted below for brevity.
Fig. 7 is a schematic block diagram of an encoding apparatus according to an embodiment of the present application. The encoding apparatus 700 of fig. 7 includes:
an obtaining module 710, configured to obtain a transport block TB;
a processing module 720, configured to add a TB _ CRC to the TB, where the TB _ CRC is used to perform CRC check on the TB;
the processing module 720 is further configured to determine a length corresponding to the TB added with the TB _ CRC;
the processing module 720 is further configured to determine the TB with the TB _ CRC added thereto as a coding block CB when the length corresponding to the TB with the TB _ CRC added thereto is less than or equal to a preset length;
the processing module 720 is further configured to add CB _ CRC to the CB, where the CB _ CRC is used to perform CRC check on the CB;
and the coding module 730 is configured to code the CB added with the CB _ CRC.
In the application, when the TB only contains one CB, the CB _ CRC is added into the TB, so that when the decoding end carries out iterative decoding, no matter the TB contains a plurality of CBs or only contains a single CB, the CB _ CRC check can be carried out only, and different CRC check modes are not adopted according to the condition that the TB contains a plurality of CBs or a single CB in the prior art, therefore, the decoding end can realize decoding and checking by adopting one type of decoder, and the complexity of hardware realization of the decoder at the decoding end is reduced.
Optionally, as an embodiment, the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
Optionally, as an embodiment, the processing module 720 is specifically configured to: under the condition that the length corresponding to the TB added with the TB _ CRC is larger than the preset length, dividing the TB added with the TB _ CRC into a plurality of CBs; adding the CB _ CRC to each CB of the plurality of CBs; the coding module is specifically configured to code each CB to which the CB _ CRC is added.
Optionally, as an embodiment, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
FIG. 8 is a schematic block diagram of a decoding device of an embodiment of the present application. The decoding apparatus 800 of FIG. 8 comprises:
a determining module 810 for determining the length of a transport block TB to be decoded;
the determining module 810 is also for determining a number of CBs included by the TB to be coded according to a length of the TB to be coded;
a receiving module 820, configured to receive the TB to be decoded;
a processing module 830, configured to perform iterative decoding on the TB to be decoded when the TB to be decoded only includes one CB, and perform CB _ CRC check on a data block obtained by each iterative decoding, where the TB to be decoded includes CB _ CRC and TB _ CRC, the CB _ CRC is used to perform CRC check on the CB, and the TB _ CRC is used to perform CRC check on the TB;
the processing module 830 is further configured to perform TB _ CRC check on the data block obtained by iterative decoding when the data block obtained by iterative decoding passes CB _ CRC check.
In the application, when the TB to be decoded only includes one CB, the TB to be decoded also includes CB _ CRC, so that CB _ CRC check can be directly adopted during decoding instead of adopting different CRC check modes according to whether the TB includes multiple CBs or a single CB as in the conventional scheme, and thus, the decoding and checking can be realized by adopting one type of decoder at the decoding end, and the complexity of realizing the decoder at the decoding end is reduced.
Optionally, as an embodiment, the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
Optionally, as an embodiment, the determining module 810 is specifically configured to: determining that the TB to be coded only contains one CB when the length of the TB to be coded is less than or equal to a preset length; determining that the TB to be coded includes a plurality of CBs if the length of the TB to be coded is greater than the preset length.
Optionally, as an embodiment, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
Optionally, as an embodiment, the processing module 830 is specifically configured to: under the condition that the TB to be decoded comprises a plurality of CBs, carrying out iterative decoding on the TB to be decoded, and carrying out CB _ CRC (cyclic redundancy check) on each data block in a plurality of data blocks obtained by iterative decoding; under the condition that each data block in the multiple data blocks obtained by iterative decoding passes CB _ CRC check, the multiple data blocks obtained by iterative decoding are connected in series to obtain a TB containing TB _ CRC; and performing TB _ CRC check on the TB containing the TB _ CRC.
Fig. 9 is a schematic block diagram of an encoding apparatus according to an embodiment of the present application. The encoding apparatus 900 of fig. 9 includes:
a memory 910 for storing programs.
A transceiver 920 configured to obtain a transport block TB;
a processor 930 configured to execute the program stored in the memory 910, wherein when the program in the memory 910 is executed, the processor 930 is specifically configured to: adding TB _ CRC into the TB, wherein the TB _ CRC is used for carrying out CRC check on the TB; determining the length corresponding to the TB added with the TB _ CRC; determining the TB added with the TB _ CRC as a coding block CB under the condition that the length corresponding to the TB added with the TB _ CRC is less than or equal to a preset length; adding CB _ CRC into the CB, wherein the CB _ CRC is used for carrying out CRC check on the CB; and coding the CB added with the CB _ CRC.
In the application, when the TB only contains one CB, the CB _ CRC is added into the TB, so that when the decoding end carries out iterative decoding, no matter the TB contains a plurality of CBs or only contains a single CB, the CB _ CRC check can be carried out only, and different CRC check modes are not adopted according to the condition that the TB contains a plurality of CBs or a single CB in the prior art, therefore, the decoding end can realize decoding and checking by adopting one type of decoder, and the complexity of hardware realization of the decoder at the decoding end is reduced.
Optionally, as an embodiment, the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
Optionally, as an embodiment, the processor 930 is specifically configured to: under the condition that the length corresponding to the TB added with the TB _ CRC is larger than the preset length, dividing the TB added with the TB _ CRC into a plurality of CBs; adding the CB _ CRC to each CB of the plurality of CBs; the coding module is specifically configured to code each CB to which the CB _ CRC is added.
Optionally, as an embodiment, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
FIG. 10 is a schematic block diagram of a decoding apparatus of an embodiment of the present application. The decoding apparatus 1000 of fig. 10 includes:
a memory 1010 for storing programs.
A processor 1020 configured to execute the program stored in the memory 1010, wherein when the program in the memory 1010 is executed, the processor 1020 is specifically configured to: determining the length of a Transport Block (TB) to be decoded; determining the number of CBs contained in the TB to be coded according to the length of the TB to be coded;
a transceiver 1030 configured to receive the TB to be decoded;
the processor 1020 is further configured to, when the TB to be decoded only includes one CB, iteratively decode the TB to be decoded, and perform CB _ CRC check on a data block obtained by each iterative decoding, where the TB to be decoded includes CB _ CRC and TB _ CRC, the CB _ CRC is used to perform CRC check on the CB, and the TB _ CRC is used to perform CRC check on the TB;
the processor 1020 is further configured to perform TB _ CRC check on the data block obtained by iterative decoding when the data block obtained by iterative decoding passes CB _ CRC check.
In the application, when the TB to be decoded only includes one CB, the TB to be decoded also includes CB _ CRC, so that CB _ CRC check can be directly adopted during decoding instead of adopting different CRC check modes according to whether the TB includes multiple CBs or a single CB as in the conventional scheme, and thus, the decoding and checking can be realized by adopting one type of decoder at the decoding end, and the complexity of realizing the decoder at the decoding end is reduced.
Optionally, as an embodiment, the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
Optionally, as an embodiment, the processor 1020 is specifically configured to: determining that the TB to be coded only contains one CB when the length of the TB to be coded is less than or equal to a preset length; determining that the TB to be coded includes a plurality of CBs if the length of the TB to be coded is greater than the preset length.
Optionally, as an embodiment, the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
Optionally, as an embodiment, the processor 1020 is specifically configured to: under the condition that the TB to be decoded comprises a plurality of CBs, carrying out iterative decoding on the TB to be decoded, and carrying out CB _ CRC (cyclic redundancy check) on each data block in a plurality of data blocks obtained by iterative decoding; under the condition that each data block in the multiple data blocks obtained by iterative decoding passes CB _ CRC check, the multiple data blocks obtained by iterative decoding are connected in series to obtain a TB containing TB _ CRC; and performing TB _ CRC check on the TB containing the TB _ CRC.
The application provides an encoding device, which comprises a storage medium and a central processing unit, wherein the storage medium can be a nonvolatile storage medium, a computer executable program is stored in the storage medium, and the central processing unit is connected with the nonvolatile storage medium and executes an encoding method of the embodiment of the application.
The encoding device herein may specifically be a terminal device or a network device.
The application provides a decoding device, which comprises a storage medium and a central processing unit, wherein the storage medium can be a nonvolatile storage medium, a computer executable program is stored in the storage medium, and the central processing unit is connected with the nonvolatile storage medium and executes the computer executable program to realize the decoding method of the embodiment of the application.
The decoding device may specifically be a terminal device or a network device.
The application provides a chip, the chip includes a processor and a communication interface, the communication interface is used for communicating with an external device, and the processor is used for executing the coding method of the embodiment of the application.
Optionally, as an implementation manner, the chip may further include a memory, where the memory stores instructions, and the processor is configured to execute the instructions stored on the memory, and when the instructions are executed, the processor is configured to execute the encoding method according to the embodiment of the present application.
Optionally, as an implementation manner, the chip is integrated on a terminal device or a network device.
The application provides a chip, the chip includes a processor and a communication interface, the communication interface is used for communicating with an external device, and the processor is used for executing the decoding method of the embodiment of the application.
Optionally, as an implementation manner, the chip may further include a memory, where the memory stores instructions, and the processor is configured to execute the instructions stored on the memory, and when the instructions are executed, the processor is configured to execute the decoding method according to the embodiment of the present application.
Optionally, as an implementation manner, the chip is integrated on a terminal device or a network device.
The present application provides a computer-readable storage medium storing program code for execution by a device, the program code including instructions for performing the encoding method of embodiments of the present application.
The present application provides a computer-readable storage medium storing program code for execution by a device, the program code including instructions for performing the transcoding method of embodiments of the present application.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (18)

1. A method of encoding, comprising:
acquiring a transport block TB;
adding TB _ CRC into the TB, wherein the TB _ CRC is used for carrying out CRC check on the TB;
determining the length corresponding to the TB added with the TB _ CRC;
determining the TB added with the TB _ CRC as a coding block CB under the condition that the length corresponding to the TB added with the TB _ CRC is less than or equal to a preset length;
adding CB _ CRC into the CB, wherein the CB _ CRC is used for carrying out CRC check on the CB;
and coding the CB added with the CB _ CRC.
2. The method of claim 1, wherein the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
3. The method of claim 1 or 2, wherein the method further comprises:
under the condition that the length corresponding to the TB added with the TB _ CRC is larger than the preset length, dividing the TB added with the TB _ CRC into a plurality of CBs;
adding the CB _ CRC to each CB of the plurality of CBs;
and coding each CB added with the CB _ CRC.
4. The method of claim 1 or 2, wherein the predetermined length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
5. A decoding method, comprising:
determining the length of a Transport Block (TB) to be decoded;
determining the number of CBs contained in the TB to be coded according to the length of the TB to be coded;
receiving the TB to be coded;
under the condition that the TB to be decoded only comprises one CB, iteratively decoding the TB to be decoded, and performing CB _ CRC (cyclic redundancy check) on a data block obtained by each iterative decoding, wherein the TB to be decoded comprises CB _ CRC and TB _ CRC, the CB _ CRC is used for performing CRC on the CB, and the TB _ CRC is used for performing CRC on the TB;
and under the condition that the data block obtained by iterative decoding passes the CB _ CRC check, carrying out the TB _ CRC check on the data block obtained by the iterative decoding.
6. The method of claim 5, wherein the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
7. The method of claim 5 or 6, wherein determining the number of CBs contained by the TB to be coded according to the length of the TB to be coded comprises:
determining that the TB to be coded only contains one CB under the condition that the length corresponding to the TB to be coded is less than or equal to a preset length;
and determining that the TB to be coded comprises a plurality of CBs under the condition that the length corresponding to the TB to be coded is greater than the preset length.
8. The method of claim 7, wherein the predetermined length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
9. The method of claim 5 or 6, further comprising:
under the condition that the TB to be decoded comprises a plurality of CBs, carrying out iterative decoding on the TB to be decoded, and carrying out CB _ CRC (cyclic redundancy check) on each data block in a plurality of data blocks obtained by iterative decoding;
under the condition that each data block in the multiple data blocks obtained by iterative decoding passes CB _ CRC check, the multiple data blocks obtained by iterative decoding are connected in series to obtain a TB containing TB _ CRC;
and performing TB _ CRC check on the TB containing the TB _ CRC.
10. An encoding apparatus, comprising:
an obtaining module, configured to obtain a transport block TB;
the processing module is used for adding TB _ CRC into the TB, and the TB _ CRC is used for carrying out CRC on the TB;
the processing module is further configured to determine a length corresponding to the TB to which the TB _ CRC is added;
the processing module is further used for determining the TB added with the TB _ CRC as a coding block CB under the condition that the length corresponding to the TB added with the TB _ CRC is smaller than or equal to a preset length;
the processing module is further used for adding CB _ CRC in the CB, and the CB _ CRC is used for carrying out CRC check on the CB;
and the coding module is used for coding the CB added with the CB _ CRC.
11. The apparatus of claim 10, wherein the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
12. The apparatus of claim 10 or 11, wherein the processing module is specifically configured to:
under the condition that the length corresponding to the TB added with the TB _ CRC is larger than the preset length, dividing the TB added with the TB _ CRC into a plurality of CBs;
adding the CB _ CRC to each CB of the plurality of CBs;
the coding module is specifically configured to code each CB to which the CB _ CRC is added.
13. The apparatus according to claim 10 or 11, wherein the preset length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
14. A decoding apparatus, comprising:
the determining module is used for determining the length of a transmission block TB to be decoded;
the determining module is also used for determining the number of CBs contained in the TB to be coded according to the length of the TB to be coded;
a receiving module, configured to receive the TB to be decoded;
the processing module is used for carrying out iterative decoding on the TB to be decoded under the condition that the TB to be decoded only comprises one CB, and carrying out CB _ CRC (cyclic redundancy check) on a data block obtained by each iterative decoding, wherein the TB to be decoded comprises CB _ CRC and TB _ CRC, the CB _ CRC is used for carrying out CRC (cyclic redundancy check) on the CB, and the TB _ CRC is used for carrying out CRC (cyclic redundancy check) on the TB;
and the processing module is also used for carrying out TB _ CRC check on the data block obtained by iterative decoding under the condition that the data block obtained by iterative decoding passes the CB _ CRC check.
15. The apparatus of claim 14, wherein the TB _ CRC and the CB _ CRC are determined based on different CRC generator polynomials.
16. The apparatus of claim 14 or 15, wherein the determining module is specifically configured to:
determining that the TB to be coded only contains one CB under the condition that the length corresponding to the TB to be coded is less than or equal to a preset length;
and determining that the TB to be coded comprises a plurality of CBs under the condition that the length corresponding to the TB to be coded is greater than the preset length.
17. The apparatus of claim 16, wherein the predetermined length is 6114-LCB_CRCOr 8448-LCB_CRCWherein L isCB_CRCIs the length of the CB _ CRC.
18. The apparatus of claim 14 or 15, wherein the processing module is specifically configured to:
under the condition that the TB to be decoded comprises a plurality of CBs, carrying out iterative decoding on the TB to be decoded, and carrying out CB _ CRC (cyclic redundancy check) on each data block in a plurality of data blocks obtained by iterative decoding;
under the condition that each data block in the multiple data blocks obtained by iterative decoding passes CB _ CRC check, the multiple data blocks obtained by iterative decoding are connected in series to obtain a TB containing TB _ CRC;
and performing TB _ CRC check on the TB containing the TB _ CRC.
CN201710680670.6A 2017-08-10 2017-08-10 Encoding method, decoding method, encoding device and decoding device Expired - Fee Related CN109391350B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201710680670.6A CN109391350B (en) 2017-08-10 2017-08-10 Encoding method, decoding method, encoding device and decoding device
PCT/CN2018/099409 WO2019029576A1 (en) 2017-08-10 2018-08-08 Coding method, decoding method, coding device and decoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710680670.6A CN109391350B (en) 2017-08-10 2017-08-10 Encoding method, decoding method, encoding device and decoding device

Publications (2)

Publication Number Publication Date
CN109391350A CN109391350A (en) 2019-02-26
CN109391350B true CN109391350B (en) 2021-04-09

Family

ID=65271158

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710680670.6A Expired - Fee Related CN109391350B (en) 2017-08-10 2017-08-10 Encoding method, decoding method, encoding device and decoding device

Country Status (2)

Country Link
CN (1) CN109391350B (en)
WO (1) WO2019029576A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110519602B (en) * 2019-08-05 2022-07-05 北京轩宇空间科技有限公司 Method and device for data stream transmission

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753261A (en) * 2008-12-01 2010-06-23 大唐移动通信设备有限公司 Coder, decoder and coding and decoding methods
US8640011B2 (en) * 2007-11-02 2014-01-28 Broadcom Corporation Single CRC polynomial for both turbo code block CRC and transport block CRC
CN104412534A (en) * 2012-06-29 2015-03-11 高通股份有限公司 Methods and apparatus for turbo decoder throttling
CN106961319A (en) * 2016-01-12 2017-07-18 中兴通讯股份有限公司 A kind of method and apparatus of data processing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106685577B (en) * 2015-11-05 2019-03-19 华为技术有限公司 A kind of method of sending and receiving of user equipment, access network equipment and downlink data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8640011B2 (en) * 2007-11-02 2014-01-28 Broadcom Corporation Single CRC polynomial for both turbo code block CRC and transport block CRC
CN101753261A (en) * 2008-12-01 2010-06-23 大唐移动通信设备有限公司 Coder, decoder and coding and decoding methods
CN104412534A (en) * 2012-06-29 2015-03-11 高通股份有限公司 Methods and apparatus for turbo decoder throttling
CN106961319A (en) * 2016-01-12 2017-07-18 中兴通讯股份有限公司 A kind of method and apparatus of data processing

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CRC Attachment for Smaller TBs;Nokia等;《3GPP TSG RAN WG1 Meeting #89 R1-1708825》;20170506;全文 *

Also Published As

Publication number Publication date
CN109391350A (en) 2019-02-26
WO2019029576A1 (en) 2019-02-14

Similar Documents

Publication Publication Date Title
EP3573244B1 (en) Polar code encoding method and device
KR102243485B1 (en) Rate matching method, encoding device and communication device
EP3376695B1 (en) Method and communication device for processing polar code
EP3591868B1 (en) Information processing method, apparatus and device
US10892849B2 (en) Polar code coding method and apparatus
JP2011504038A (en) Transport block size determination method and signal transmission method using the same
CN112134647B (en) Data transmission method and sending end equipment
AU2018328362A1 (en) Encoding method and apparatus
US11974165B2 (en) Methods, terminal device and network device for code block segmentation
KR102520788B1 (en) Channel state information encoding method and device, storage medium and processor
WO2020048537A1 (en) Method and device for cascade coding
JP2020521350A (en) Polar code rate matching method and apparatus
US20230208554A1 (en) Encoding and Decoding Method and Apparatus
US11190213B2 (en) Coding method, wireless device, and chip
US11025277B2 (en) Data processing method, data processing apparatus, and communications device
US20240007220A1 (en) Encoding and decoding method and apparatus
CN109391350B (en) Encoding method, decoding method, encoding device and decoding device
EP3562046B1 (en) Data processing method and device
CN110034845B (en) Information processing method and wireless transmission device
CN108696283B (en) Method and apparatus for encoding and decoding data
CN108400832B (en) Data processing method and communication device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210409

Termination date: 20210810

CF01 Termination of patent right due to non-payment of annual fee