Data processing method, communication node, storage medium and program product

By selecting an appropriate target basic matrix for LDPC coding, the problem of overlapping code rates supported by multiple basic matrices is solved, and the robustness and error correction performance of data communication are improved.

CN120811543APending Publication Date: 2025-10-17ZTE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410862375.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-06-28
Publication Date
2025-10-17

AI Technical Summary

Technical Problem

In existing LDPC coding methods, multiple basic matrices support overlapping code rates, making it impossible to select the optimal basic matrix for encoding and decoding for data to be transmitted with different information lengths and code rate ranges, resulting in insufficient robustness in data communication.

Method used

By obtaining the coding requirement information of the bit sequence to be encoded and the support information of the basic matrix set, the most suitable target basic matrix is ​​selected for encoding, which improves the error correction performance in the encoding process and the robustness of data communication.

Benefits of technology

By selecting the most suitable target basic matrix for encoding, the error correction performance of the data packet is improved and the robustness of data communication is increased.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120811543A_ABST
    Figure CN120811543A_ABST
Patent Text Reader

Abstract

The invention provides a data processing method, a communication node, a storage medium and a program product. The method is applied to a first communication node, and comprises the following steps: acquiring a to-be-coded bit sequence; determining a target basic matrix from the basic matrix set according to the coding demand information of the to-be-coded bit sequence and the support information of each basic matrix in the basic matrix set; coding the to-be-coded bit sequence through the target basic matrix, and determining a target coded bit sequence; wherein the basic matrix set at least comprises two basic matrixes. According to the coding requirement of the to-be-coded bit sequence, the target basic matrix most suitable for the to-be-coded bit sequence is selected from the basic matrix set containing the multiple basic matrixes, and then the to-be-coded bit sequence is coded through the target basic matrix, so that the error correction performance of the data packet in the coding process is improved, and the coding efficiency is improved. And the robustness of data communication is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of communication, and in particular to a data processing method, a communication node, a storage medium and a program product. BACKGROUND

[0002] With the rapid development of big data, cloud computing, latency-sensitive network and other technologies, user equipment in a wireless communication network is growing explosively, and the wireless communication network will carry diverse applications and massive data, which puts high requirements on data transmission rate, throughput, reliability, latency and the like. When data is transmitted in a data transmission channel in a wireless communication system, errors in data transmission often occur due to the influence of factors such as multipath, noise and interference. The sending end adds some redundant information to the data to be transmitted through channel coding, so that the receiving end can recover the original data to be transmitted through the redundant information, that is, eliminate the distortion caused by data transmission.

[0003] The commonly used channel coding method at present can include low density parity check (LDPC) coding, polarization coding, turbo coding and convolutional coding and the like. LDPC coding is defined by a sparse parity check matrix, and the decoding performance can be improved through iterative decoding, wherein the parity check matrix can be obtained by a base matrix and a lifting value.

[0004] However, there can be multiple different base matrices in the data channel, which are suitable for the encoding and decoding transmission of the data to be transmitted with different information lengths and code rate intervals, and since the same base matrix can support multiple code rates, there can be a situation of overlapping code rates between different base matrices, and how to select a base matrix to make the decoding performance optimal is a problem before encoding and decoding. With the increasing requirement of communication peak rate in the wireless communication system, the current channel coding method will be difficult to meet the demand of data communication robustness. SUMMARY

[0005] The present application provides a data processing method, a communication node, a storage medium and a program product to solve the problem that multiple base matrices in LDPC coding support overlapping code rates and cannot select a suitable base matrix for the encoding and decoding processing of the required transmission data, improve the error correction performance of the data packet and increase the robustness of data communication.

[0006] To achieve the above object, the embodiments of the present application provide a data processing method applied to a first communication node, comprising:

[0007] obtaining a to-be-encoded bit sequence;

[0008] According to the encoding requirement information of the to-be-encoded bit sequence and support information of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set;

[0009] The to-be-encoded bit sequence is encoded by using the target base matrix, and a target encoded bit sequence is determined;

[0010] The base matrix set includes at least two base matrices.

[0011] To achieve the above object, an embodiment of the present application provides a data processing method applied to a second communication node, and the method comprises the following steps:

[0012] Receiving a to-be-decoded bit sequence;

[0013] According to the decoding requirement information of the to-be-decoded bit sequence and support information of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set;

[0014] The to-be-decoded bit sequence is decoded by using the target base matrix, and a target decoded bit sequence is determined;

[0015] The base matrix set includes at least two base matrices.

[0016] To achieve the above object, an embodiment of the present application provides a communication node, which comprises a memory, a processor, a program stored in the memory and executable on the processor, and a data bus used for realizing connection communication between the processor and the memory, and the program is executed by the processor to realize the steps of the data processing method in any one of the embodiments of the present application.

[0017] To achieve the above object, an embodiment of the present application provides a storage medium used for computer readable storage, and the storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to realize the steps of the data processing method in any one of the embodiments of the present application.

[0018] To achieve the above object, an embodiment of the present application further provides a computer program product, which comprises a computer program, and the computer program realizes the steps of the data processing method in any one of the embodiments of the present application when executed by a processor.

[0019] The data processing method, the communication node, the storage medium and the program product provided by the embodiments of the present application can obtain a to-be-encoded bit sequence, determine a target base matrix from a base matrix set according to encoding requirement information of the to-be-encoded bit sequence and support information of each base matrix in the base matrix set, and encode the to-be-encoded bit sequence by using the target base matrix to determine a target encoded bit sequence, wherein the base matrix set includes at least two base matrices. By using the technical solution, the target base matrix most suitable for the to-be-encoded bit sequence is selected from the base matrix set including multiple base matrices according to the encoding requirement of the to-be-encoded bit sequence, and then the to-be-encoded bit sequence is encoded by using the target base matrix, so that the error correction performance of the data packet in the encoding process is improved, and the robustness of data communication is increased. BRIEF DESCRIPTION OF DRAWINGS

[0020] Figure 1 An example diagram of a data transmission implementation environment provided by the present application is shown.

[0021] Figure 2 A flowchart of a data processing method provided by the embodiments of the present application is shown.

[0022] Figure 3 An example diagram of a target base matrix selection method under different code rates provided by the embodiments of the present application is shown.

[0023] Figure 4 An example diagram of a target base matrix selection method under different code rates provided by the embodiments of the present application is shown.

[0024] Figure 5 A flowchart of a data processing method provided by the embodiments of the present application is shown.

[0025] Figure 6 A structural diagram of a data processing device provided by the embodiments of the present application is shown.

[0026] Figure 7 A structural diagram of a data processing device provided by the embodiments of the present application is shown.

[0027] Figure 8 A structural diagram of a communication node provided by the embodiments of the present application is shown. DETAILED DESCRIPTION

[0028] To make the objectives, technical solutions and advantages of the present application clearer, the embodiments of the present application will be described in detail below with reference to the drawings. It should be noted that the embodiments in the present application and the features in the embodiments can be combined with each other as long as they do not conflict.

[0029] The steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Also, although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0030] The data processing method provided in the embodiments of the present application can be applied to various mobile communication networks, including but not limited to third generation (3G), fourth generation (4G), fifth generation (5G), and future mobile communication networks such as sixth generation (6G) mobile communication networks. The mobile communication network in the embodiments of the present application can include a network side device (for example, including but not limited to a base station) and a receiving side device (for example, including but not limited to a terminal). It should be understood that in the present example, such as in the downlink, the first communication node (also referred to as the first communication node device, the first node) can be a base station side device, and the second communication node (also referred to as the second communication node device, the second node) can be a terminal side device. In some examples, such as in the uplink, the first communication node can also be a terminal side device, and the second communication node can also be a base station side device. In some examples, such as in device-to-device communication, the first communication node and the second communication node can both be base stations or terminals. The first communication node and the second communication node can be referred to as the first node and the second node, respectively. Therefore, whether the first node and the second node are base stations or terminals needs to be determined according to the context.

[0031] In order to facilitate the understanding of the technical solutions of the present application, first, the selection of the LDPC code base matrix and the application scenarios of the encoding method are introduced in detail. The data processing method provided in the embodiments of the present application can be applied to any related scenario that needs wireless data transmission. In the data transmission process, due to the influence of factors such as multipath, noise, and interference, the LDPC code as a channel coding method can eliminate the distortion caused in the transmission process.

[0032] Figure 1 An example of a data transmission implementation environment provided by the present application is shown in the figure, which includes but is not limited to a first transmission node 100 and a second transmission node 200. The first transmission node 100 and the second transmission node 200 can transmit, receive, and interact with each other wirelessly.

[0033] In one example, the first transmission node 100 and the second transmission node 200 can include, but are not limited to, the following electronic devices: a base station (BS), an access point (AP), a Node-B, a gNode-B (generalized Node-B), a radio network controller (RNC), an evolved Node B (eNB), a base station controller (BSC), a base transceiver station (BTS), a transceiver function (TF), a radio router, a radio transceiver, a basic service set (BSS), an extended service set (ESS), or a radio base station (RBS). The first transmission node 100 and the second transmission node 200 can also be an access terminal, a user equipment (UE), a subscriber unit, a subscriber station, a mobile station, a mobile, a remote station, a remote terminal, a mobile device, a user terminal, a wireless communication device, a user agent, or a user device. For example, the second processing node can be a cellular telephone, a cordless telephone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), a wireless communication-enabled handheld device, a computing device, or other processing devices connected to a wireless modem, an in-vehicle device, a wearable device, a terminal device in a 5G network or a future 5G and above network, etc., and the embodiments of the present application do not limit this.

[0034] In combination with the above data transmission implementation environment, the execution subject of the data processing method in the embodiments of the present application is generally an electronic device with certain computing capability, and in some possible implementation manners, the data processing method can be realized by a processor calling computer readable instructions stored in a memory.

[0035] In one example implementation, Figure 2A flowchart of a data processing method provided by an embodiment of the present application is shown in the figure. The method can be used to select the most suitable LDPC code base matrix for a bit sequence that needs to be encoded and decoded. The method can be executed by a data processing device, which can be executed by software and / or hardware and integrated in a communication node. The method can be applied to a first communication node, which can be, but is not limited to, a first transmission node in a data transmission implementation environment as shown in the figure, or a corresponding execution subject selected and set by a person skilled in the art according to an actual application scenario, which is not limited in the embodiment of the present application. Figure 1 The first communication node can be, but is not limited to, a first transmission node in a data transmission implementation environment as shown in the figure, or a corresponding execution subject selected and set by a person skilled in the art according to an actual application scenario, which is not limited in the embodiment of the present application.

[0036] As shown in the figure, Figure 2 The data processing method provided by the embodiment of the present application specifically includes the following steps:

[0037] S101, obtaining a to-be-encoded bit sequence.

[0038] In the embodiment, the to-be-encoded bit sequence can be specifically understood as a bit sequence composed of a plurality of information bits that need to be encoded and transmitted.

[0039] In the embodiment, when the first communication node needs to perform wireless data transmission to a second communication node corresponding thereto, the original data that needs to be transmitted can be obtained first, that is, the to-be-encoded bit sequence that needs to be encoded and transmitted is obtained.

[0040] S102, determining a target base matrix from the base matrix set according to the encoding requirement information of the to-be-encoded bit sequence and the support information of each base matrix in the base matrix set.

[0041] In the embodiment, the base matrix set includes at least two base matrices.

[0042] In the embodiment, the encoding requirement information can be specifically understood as information determined according to the requirement characteristics of the to-be-encoded bit sequence when it needs to be encoded and transmitted. The support information can be specifically understood as information determined based on the inherent characteristics of the base matrix, which can support or adapt to the requirement characteristics.

[0043] In the embodiment, the encoding requirement information of the to-be-encoded bit sequence is compared with the support information of each base matrix in the base matrix set, and the base matrix in the base matrix set whose support information is most adapted to the encoding requirement information is determined as the target base matrix.

[0044] S103, encoding the to-be-encoded bit sequence through the target base matrix to determine a target encoded bit sequence.

[0045] In the embodiment, the target base matrix is expanded based on the lifting value corresponding to the to-be-encoded bit sequence, and the to-be-encoded bit sequence is encoded by using the expanded matrix, and the encoded to-be-encoded bit sequence is processed into a code length required for transmission by puncturing or other processing methods, to obtain a target encoded bit sequence.

[0046] The data processing method provided in the embodiments of the present application comprises the following steps: obtaining a to-be-encoded bit sequence; determining a target base matrix from a base matrix set according to encoding requirement information of the to-be-encoded bit sequence and support information of each base matrix in the base matrix set; and encoding the to-be-encoded bit sequence by using the target base matrix to determine a target encoded bit sequence. The base matrix set comprises at least two base matrices. By using the above technical solution, the target base matrix most suitable for the to-be-encoded bit sequence is selected from the base matrix set comprising multiple base matrices according to the encoding requirement of the to-be-encoded bit sequence, and the to-be-encoded bit sequence is encoded by using the target base matrix, thereby improving the error correction performance of the data packet in the encoding process and increasing the robustness of data communication.

[0047] In an embodiment, the encoding requirement information comprises a code rate of the to-be-encoded bit sequence, and the support information comprises a base code rate and a code rate threshold of each base matrix. The target base matrix is determined from the base matrix set according to the encoding requirement information of the to-be-encoded bit sequence and the support information of each base matrix in the base matrix set, which comprises the following steps:

[0048] The target base matrix is determined from the base matrix set according to the code rate of the to-be-encoded bit sequence and the base code rate and the code rate threshold of each base matrix in the base matrix set.

[0049] The code rate, the base code rate and the code rate threshold are all real numbers greater than 0 and less than 1.

[0050] The absolute value of the difference between the base code rates corresponding to any two base matrices in the base matrix set is greater than or equal to a first preset difference threshold.

[0051] In the embodiment, the base code rate can be understood as the encoding code rate that can be supported by the base matrix according to the number of rows and columns of the base matrix and the puncturing condition. In some examples, the base code rate of the base matrix can be represented by the range of the encoding code rate that can be supported by the base matrix. In some examples, the starting point in the range of the encoding code rate that can be supported by the base matrix can be taken as the base code rate of the base matrix.

[0052] In the embodiment, the code rate threshold can be understood as a threshold used to distinguish the range of the encoding code rate that can be supported by different base matrices.

[0053] In the embodiment, the first preset difference threshold can be understood as a threshold value pre-set according to actual conditions, and used to ensure that the supported encoding rate ranges of the base matrices in the base matrix set are different. In an example, the first preset difference threshold can be 0.01.

[0054] In the embodiment, according to the base rates of the base matrices in the base matrix set and the rate threshold used to distinguish the supported encoding rate ranges of different base matrices, the encoding rate range that each base matrix in the base matrix set can provide for the to-be-encoded bit sequence is determined. Then, the rate of the to-be-encoded bit sequence is compared with the encoding rate range that each base matrix can provide, and the base matrix corresponding to the encoding rate range containing the rate of the to-be-encoded bit sequence is determined as the target base matrix.

[0055] In an embodiment, in the case that the number of rows of each base matrix in the base matrix set is equal, and the number of columns of each base matrix is equal, the target base matrix is determined from the base matrix set according to the rate of the to-be-encoded bit sequence, and the base rates and the rate threshold of each base matrix in the base matrix set, including at least one of the following:

[0056] In the case that the rate of the to-be-encoded bit sequence is greater than or equal to the first rate threshold and less than the second rate threshold, the latter base matrix in the adjacent base matrices distinguished by the first rate threshold is determined as the target base matrix; wherein the first rate threshold and the second rate threshold are two adjacent rate thresholds corresponding to the base matrix set in terms of numerical size.

[0057] In the case that the rate of the to-be-encoded bit sequence is less than the smallest rate threshold corresponding to the base matrix set, the base matrix with the smallest base rate in the base matrix set is determined as the target base matrix.

[0058] In the case that the rate of the to-be-encoded bit sequence is greater than or equal to the largest rate threshold corresponding to the base matrix set, the base matrix with the largest base rate in the base matrix set is determined as the target base matrix.

[0059] In the embodiment, in the case that the number of rows of each base matrix in the base matrix set is equal, and the number of columns of each base matrix is also equal, it can be considered that the base rates corresponding to the base matrices in the base matrix set are different due to different puncturing numbers. In order to enable the to-be-encoded bit sequence to select the target base matrix most suitable for its encoding requirements from the base matrix set, the determination of the target base matrix from the base matrix set can be divided into the following three cases based on the rate threshold used to distinguish the supported encoding rate ranges of different base matrices.

[0060] 1) in the case that the code rate of the bit sequence to be encoded is less than the minimum code rate threshold corresponding to the base matrix set, it can be considered that the base code rates corresponding to all the base matrices in the base matrix set are difficult to fully adapt to the encoding requirements of the bit sequence to be encoded, and the error caused by encoding the bit sequence to be encoded by using the base matrix with a larger base code rate is greater, so at this time the base matrix with the smallest base code rate in the base matrix set can be selected as the target base matrix;

[0061] 2) in the case that the code rate of the bit sequence to be encoded is greater than or equal to the maximum code rate threshold corresponding to the base matrix set, it can be considered that the base code rates corresponding to all the base matrices in the base matrix set are difficult to fully adapt to the encoding requirements of the bit sequence to be encoded, and the error caused by encoding the bit sequence to be encoded by using the base matrix with a smaller base code rate is greater, so at this time the base matrix with the largest base code rate in the base matrix set can be selected as the target base matrix;

[0062] 3) taking any two adjacent code rate thresholds corresponding to the base matrix set as a first code rate threshold and a second code rate threshold, in the case that the code rate of the bit sequence to be encoded is greater than or equal to the first code rate threshold and less than the second code rate threshold, it can be considered that the base matrix with a base code rate located in the range of the first code rate threshold and the second code rate threshold can achieve a better encoding effect when encoding the bit sequence to be encoded. At the same time, since the first code rate threshold and the second code rate threshold can be used to distinguish the base code rate and the two adjacent base matrices thereof, and when the first code rate threshold and the second code rate threshold are two adjacent code rate thresholds, it can be considered that the latter one of the two adjacent base matrices distinguished by the first code rate threshold is the same base matrix as the former one of the two adjacent base matrices distinguished by the second code rate threshold, at this time the base matrix can be selected as the target base matrix.

[0063] In some examples, it is assumed that the base matrix set contains M base matrices, and the M base matrices one-to-one correspond to M base code rates, i.e. R0, R1,..., RM-1. M-1 All are real numbers greater than 0 and less than 1, R0< R1<,...< RM-1. M-1 The base code rate R i corresponds to the base matrix Hb i in the base matrix set. Figure 3 An example diagram of a target base matrix selection method under different code rates provided by an embodiment of the present application is shown in FIG. 1. Figure 3 As shown in FIG. 1, the base code rate R i corresponds to the base matrix Hb i in the base matrix set; T i is a code rate threshold used to distinguish the i-th base matrix and the i+1-th base matrix, and its size should be located between Ri and R i+1 The target base matrix corresponding to the code rate R of the bit sequence to be encoded can be determined based on the size relationship between the code rate R and different code rate thresholds. For example, when T i-1 <R≤T i , Hb i corresponding to the code rate is selected; when T i+1 ≥R>T i , Hb i+1 corresponding to the code rate is selected; when the code rate R < T0, Hb0 corresponding to the code rate is selected; and when R ≥ T M-1 , Hb M-1 corresponding to the code rate is selected.

[0064] In one example, there are M = 3 base matrices in the base matrix set, which one-to-one correspond to M = 3 base code rates, and the number of rows mb of the 3 base matrices is equal to 4 and the number of columns nb of the 3 base matrices is equal to 12. The total number of puncturing Δnb corresponding to the three base matrices Hb0, Hb1 and Hb2 is 0, 1 and 2 respectively, and the base code rates corresponding to the three base matrices Hb0, Hb1 and Hb2 are R0 = 8 / 12, R1 = 8 / 11 and R2 = 8 / 10 respectively. That is, R0 is the base code rate obtained when Hb0 does not need to puncture any column, R1 is the base code rate obtained when Hb1 punctures one column, and R2 is the base code rate obtained when Hb2 punctures two columns. Assuming that the code rate threshold T0 = 23 / 33 is used to distinguish between Hb0 and Hb1, and the code rate threshold T1 = 42 / 55 is used to distinguish between Hb1 and Hb2, if the code rate R of the bit sequence to be encoded is 17 / 25, at this time R < T0, Hb0 can be determined as the target base matrix corresponding to the bit sequence to be encoded; if the code rate R of the bit sequence to be encoded is 18 / 25, at this time T0 < R ≤ T1, Hb1 can be determined as the target base matrix corresponding to the bit sequence to be encoded; and if the code rate R of the bit sequence to be encoded is 21 / 25, at this time R > T1, Hb2 can be determined as the target base matrix corresponding to the bit sequence to be encoded.

[0065] In one embodiment, the base code rate is determined in the following manner:

[0066] The difference between the number of columns and the number of rows of the base matrix is determined as a first difference value;

[0067] The difference between the number of columns and the total number of puncturing of the base matrix is determined as a second difference value;

[0068] The ratio of the first difference value to the second difference value is determined as the base code rate of the base matrix;

[0069] wherein the total number of puncturing is a non-negative real number less than the number of rows of the base matrix.

[0070] In some examples, assuming that the number of rows of the base matrix is mb, the number of columns of the base matrix is nb, and the total number of puncturing after puncturing the base matrix is Δnb, the first difference value can be determined as nb-mb, the second difference value can be determined as nb-Δnb, and the ratio of the first difference value to the second difference value can be determined as the base code rate. The base code rate R of the base matrix can be expressed as:

[0071]

[0072] In some embodiments, the base matrix includes a systematic column matrix and a check column matrix. In one specific example, the base matrix Hb has the following specific structure:

[0073] [Hb s ,Hb P ]

[0074] wherein Hb s is the systematic column matrix, Hb P is the check column matrix, the number of rows of the systematic column matrix Hb s is equal to the number of rows of the check column matrix Hb P , which is equal to mb; the number of columns of the systematic column matrix Hb s is equal to kb; the number of columns of the check column matrix Hb P is equal to mb; wherein kb = nb-mb, i.e., the number of columns of the systematic column matrix of the base matrix is equal to the difference between the number of columns and the number of rows of the base matrix. Wherein kb, nb and mb are all integers greater than 0.

[0075] In one example, kb is an integer greater than or equal to 6, which can be equal to at least one of the following: 6, 8, 9, 10, 12, 14, 16, 18, 20, 24, 28, 32.

[0076] As can be seen from the above, the number of columns of the check column matrix is equal to the number of rows of the base matrix, so the total number of puncturing should be a non-negative real number less than the number of rows of the base matrix.

[0077] In one embodiment, the code rate threshold is determined in the following at least one way:

[0078] by a preset expression;

[0079] by a first preset code rate threshold table; wherein the first preset code rate threshold table contains the corresponding relationship between the code rate threshold and the base code rate interval;

[0080] by a second preset code rate threshold table; wherein the second preset code rate threshold table contains the corresponding relationship between the code rate threshold, the base code rate interval and the promotion value interval;

[0081] Determined by a third preset code rate threshold table; wherein the third preset code rate threshold table includes a correspondence between code rate thresholds, basic code rate intervals, and information bit intervals where the length of the to-be-encoded bit sequence lies;

[0082] Determined by a preset process; wherein the preset process is represented by a judgment statement based on the first preset bit rate threshold table, the second preset bit rate threshold table or the third preset bit rate threshold table.

[0083] In one embodiment, the numerical relationship satisfied by the bit rate threshold in the preset expression includes at least one of the following:

[0084] Where |ΔR| is less than real number;

[0085]

[0086] Among them, R i is the basic code rate of the i-th basic matrix in the basic matrix set; R i+1 is the basic code rate of the i+1th basic matrix in the basic matrix set; T i is a coding rate threshold used to distinguish the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

[0087] In some examples, a first preset bit rate threshold table can be pre-built based on the correspondence between the bit rate threshold and the basic bit rate interval. The first preset bit rate threshold table has the following characteristics: the size of the bit rate threshold table is M-1, and the bit rate size belongs to the interval [R i ,R i+1 ) to obtain the i-th bitrate threshold T i ; The i+1th rate threshold in the rate threshold table is greater than the i-th rate threshold, and the i-th rate threshold T i Satisfy R i ≤T i <R i+1 For example, the first preset bit rate threshold table can be represented in the following table:

[0088] Base rate interval [R0≤ R < R1] [R1≤ R < R2] … [R M-2 ≤R<R M-1 ]] Rate threshold [T0]

[00100] T1 … [CAT M-2 ]]>

[0089] In one example, the code rate threshold is obtained according to a first preset code rate threshold table. In this example, there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base code rates, the number of rows mb of the 3 base matrices are all equal to 4, and the number of columns nb of the 3 base matrices are all equal to 12. The total puncturing numbers Δnb corresponding to the three base matrices Hb0, Hb1 and Hb2 are 0, 1 and 2 respectively, and the base code rates corresponding to the three base matrices Hb0, Hb1 and Hb2 are R0=8 / 12, R1=8 / 11 and R2=8 / 10 respectively. The first preset code rate threshold table is shown in the following table, and the code rate thresholds T0 and T1 are 0.70 and 0.75 respectively. At this time, if the code rate R=0.76, there is R>T1, and Hb2 can be determined as the target base matrix.

[0090] Rate interval [R0≤ R < R1] [R1≤ R < R2] Rate threshold 0.70 0.75

[0091] In some examples, a second preset code rate threshold table can be constructed in advance based on the correspondence between the code rate threshold and the base code rate interval and the lifting value interval. The second preset code rate threshold table has the following characteristics: the size of the code rate threshold table is P*(M-1), P is the number of lifting value intervals, and M-1 is the number of base code rate intervals. The code rate size belongs to the base code rate interval [R i ,R i+1 ) and the lifting value belongs to the lifting value interval [Z j ,Z j+1 ). When the code rate threshold T j,i is obtained; the (i+1)th code rate threshold in the jth row of the code rate threshold table is greater than the ith code rate threshold, that is, T j,i+1 >T j,i ; the (j+1)th code rate threshold in the ith column of the code rate threshold table is less than or equal to the jth code rate threshold, that is, T j+1,i ≤T j,i ; the code rate threshold T i,j satisfies R i ≤T j,i <R i+1 . Wherein, i is an integer greater than or equal to 0 and less than or equal to M-2, j is an integer greater than or equal to 0 and less than or equal to P-1, and Z j is a preset lifting value greater than 0. Exemplarily, the second preset code rate threshold table can be represented in the following table form:

[0092] [R0≤ R < R1] [R1≤ R < R2] … [R M-2 ≤R<R M-1 ]] [Z0≤ Z < Z1] [CAT 0,0 ]]> T 0,1 ]]> … [TECHNICAL FIELD] 0,M-2 ]] [Z1≤ Z < Z2] [CAT 1,0 ]]> [CAT 1,1 ]]> … [CAT 1,M-2 ]]> … … … … … Z P-1 ≤Z<Z P ]] [CAT P-1,0 ]]> [CAT P-1,1 ]]> … [CAT P-1,M-2 ]]>

[0093] In one example, the code rate threshold is obtained according to a second preset code rate threshold table. In this example, there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base code rates respectively, the number of rows mb of the 3 base matrices are all equal to 4, and the number of columns nb of the 3 base matrices are all equal to 12. The total puncturing numbers Δnb corresponding to the three base matrices Hb0, Hb1 and Hb2 are 0, 1 and 2 respectively, and the base code rates corresponding to the three base matrices Hb0, Hb1 and Hb2 are R0=8 / 12, R1=8 / 11 and R2=8 / 10 respectively. The second preset code rate threshold table is shown in the following table. It can be seen that when the code rate R0≤R<R1 and the promotion value is in the interval 32≤Z<256, the code rate threshold is 0.70, and when the code rate R0≤R<R1 and the promotion value is in the interval 256≤Z<513, the code rate threshold is 0.69; when the code rate R1≤R<R2 and the promotion value is in the interval 32≤Z<256, the code rate threshold is 0.76, and when the code rate R1≤R<R2 and the promotion value is in the interval 256≤Z<513, the code rate threshold is 0.75. It can be understood that the promotion value range in this example can be other values, and the embodiments of the present application do not limit this. In one embodiment, the promotion value is an integer greater than 0, for example, it can be equal to an integer power of 2, in one example, the promotion value can be equal to 8, 16, 32, 64, 128, 256 or 512; in another example, the promotion value can be equal to 3, 6, 12, 24, 48, 96, 192 or 384; in yet another example, the promotion value is equal to p*2 q , and is less than or equal to 512, p is equal to an element in the set {2, 3, 5, 7, 9, 11, 13, 15}, and q is equal to an element in the set {0, 1, 2, 3, 4, 5, 6, 7, 8}.

[0094] [R0≤ R < R1] [R1≤ R < R2] 32≤Z<256 0.70 0.76 256≤Z<513 0.69 0.75

[0095] In some examples, a third preset code rate threshold table can be constructed in advance based on the correspondence between the code rate threshold and the base code rate interval, and the information bit interval in which the length of the to-be-encoded bit sequence is located. The third preset code rate threshold table has the following characteristics: the size of the code rate threshold table is P*(M-1), P is the number of information bit intervals, and M-1 is the number of base code rate intervals. When the code rate size belongs to the base code rate interval [R i , R i+1 ] and the length of the to-be-encoded bit belongs to the information bit interval [K j , K j+1 ], the code rate threshold T j,i is obtained; the (i+1)th code rate threshold in the jth row of the code rate threshold table is greater than the ith code rate threshold, that is, T j,i+1 >T j,i ; and the (j+1)th code rate threshold in the ith column of the code rate threshold table is less than or equal to the jth code rate threshold, that is, T j+1,i ≤Tj,i a code rate threshold T i,j satisfying R i ≤ T j,i < R i+1 wherein i is an integer greater than or equal to 0 and less than or equal to M-2, j is an integer greater than or equal to 0 and less than or equal to P-1, K j is a preset information bit length greater than 0. Exemplarily, the third preset code rate threshold table can be represented in the following table form:

[0096]

[0097]

[0098] In an example, the code rate threshold is obtained according to the third preset code rate threshold table, in which there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base code rates respectively, the number of rows mb of the 3 base matrices are all equal to 4, and the number of columns nb of the 3 base matrices are all equal to 12. The total puncturing numbers Δnb corresponding to the three base matrices Hb0, Hb1 and Hb2 are 0, 1 and 2 respectively, and the base code rates corresponding to the three base matrices Hb0, Hb1 and Hb2 are R0=8 / 12, R1=8 / 11 and R2=8 / 10 respectively. The third preset code rate threshold table is shown in the following table. When the code rate R0≤R<R1 and the information length K is in the interval 1024≤K<4096, the code rate threshold is 0.69; when the code rate R1≤R<R2 and the information length K is in the interval 1024≤K<4096, the code rate threshold is 0.75. It can be understood that the information length range in the example can be other values, and the embodiments of the present application do not limit this.

[0099] [R0≤ R < R1] [R1≤ R < R2] 64≤K<1024 0.70 0.76 1024≤K<4096 0.69 0.75 4096≤K<16384 0.68 0.74

[0100] In some examples, the above-mentioned first preset code rate threshold table, second preset code rate threshold table and third preset code rate threshold table can be characterized by a judgment statement, so as to determine the code rate threshold according to the base code rate interval, the lifting value interval and the information bit interval.

[0101] In an embodiment, in the case that there are at least two base matrices with unequal row numbers, unequal column numbers and equal difference between column number and row number in the base matrix set, a target base matrix is determined from the base matrix set according to the code rate of the to-be-encoded bit sequence, and the base code rate and the code rate threshold of each base matrix in the base matrix set, including at least one of the following:

[0102] In a case that the code rate of the bit sequence to be encoded is greater than or equal to the third code rate threshold and less than the fourth code rate threshold, a latter base matrix in the adjacent base matrices distinguished by the third code rate threshold is determined as the target base matrix; the third code rate threshold and the fourth code rate threshold are two adjacent code rate thresholds corresponding to the base matrix set;

[0103] In a case that the code rate of the bit sequence to be encoded is less than the minimum code rate threshold corresponding to the base matrix set, a base matrix with the minimum base code rate in the base matrix set is determined as the target base matrix.

[0104] In a case that the code rate of the bit sequence to be encoded is greater than or equal to the maximum code rate threshold corresponding to the base matrix set, a base matrix with the maximum base code rate in the base matrix set is determined as the target base matrix.

[0105] In the embodiment, in a case that there are at least two base matrices in the base matrix set with different numbers of rows and columns and equal differences between the numbers of rows and columns, it can be considered that there is an overlapping interval in the range of the code rate that can be supported by the two adjacent base matrices in the base matrix set. At this time, a code rate threshold can be selected in the overlapping interval of the code rate that can be supported by the two adjacent base matrices to distinguish the two base matrices, and the code rate interval between the two adjacent code rate thresholds is taken as the code rate range that can be selected for the corresponding base matrix. In order to enable the bit sequence to be encoded to select the target base matrix in the base matrix set that is most suitable for the encoding requirement, the determination of the target base matrix in the base matrix set can be divided into the following three cases based on the code rate of the bit sequence to be encoded and the matrix range that can be selected for each base matrix in the base matrix set:

[0106] 1) In a case that the code rate of the bit sequence to be encoded is less than the minimum code rate threshold corresponding to the base matrix set, it can be considered that the base code rates corresponding to all the base matrices in the base matrix set are difficult to completely adapt to the encoding requirement of the bit sequence to be encoded, and the error caused by encoding the bit sequence to be encoded by using the base matrix with a greater base code rate is greater. Therefore, at this time, the base matrix with the minimum base code rate in the base matrix set can be taken as the target base matrix.

[0107] 2) In a case that the code rate of the bit sequence to be encoded is greater than or equal to the maximum code rate threshold corresponding to the base matrix set, it can be considered that the base code rates corresponding to all the base matrices in the base matrix set are difficult to completely adapt to the encoding requirement of the bit sequence to be encoded, and the error caused by encoding the bit sequence to be encoded by using the base matrix with a smaller base code rate is greater. Therefore, at this time, the base matrix with the maximum base code rate in the base matrix set can be taken as the target base matrix.

[0108] 3) taking any two adjacent code rate thresholds of the basic matrix set as the third code rate threshold and the fourth code rate threshold, in the case that the code rate of the to-be-encoded bit sequence is greater than or equal to the third code rate threshold and less than the fourth code rate threshold, it can be considered that the basic matrix whose code rate is located in the range of the third code rate threshold and the fourth code rate threshold can achieve better encoding effect when encoding the to-be-encoded bit sequence. At the same time, since the third code rate threshold and the fourth code rate threshold can be used to distinguish the two adjacent basic matrices of the basic code rate, and in the case that the third code rate threshold and the fourth code rate threshold are two adjacent code rate thresholds, it can be considered that the latter basic matrix in the two adjacent basic matrices distinguished by the third code rate threshold is the same basic matrix as the former basic matrix in the two adjacent basic matrices distinguished by the fourth code rate threshold, at this time, the basic matrix can be taken as the target basic matrix.

[0109] In some examples, Figure 4 An example diagram of a target basic matrix selection method in different code rate cases provided by the embodiment of the present application is shown in FIG. 1. Figure 4 As shown in FIG. 1, it is assumed that the basic matrix set contains M basic matrices, and the M basic matrices one-to-one correspond to M basic code rates, i.e., R0, R1,..., RM-1, RM. M-1 All are real numbers greater than 0 and less than 1, and R0< R1<,...< RM-1< RM. M-1 The basic code rate RM corresponds to the basic matrix Hb i in the basic matrix set, and the code rate range supported by the basic matrix Hb i can be expressed as wherein, is the minimum basic code rate that the basic matrix Hb i can support, is the maximum basic code rate that the basic matrix Hb i can support, is the minimum basic code rate of the basic matrix Hb i adjacent to the basic matrix Hb i+1 , is the maximum basic code rate less than which the basic matrix Hb , i is the basic matrix Hb i+1 , i exists an overlap interval i+1 for distinguishing the code rate threshold T i should belong to the overlap interval. A feasible way is to make the basic code rate The basic code rate R i corresponds to the basic matrix Hb i , and the code rate range supported by the basic matrix Hb i+1 is the basic matrix Hbi+1 The supported bitrate range is There are repeated intervals between the two When the code rate R satisfies When selecting R i The corresponding basic matrix Hb i As the target basic matrix; when the code rate R satisfies When selecting R i+1 The corresponding basic matrix Hb i+1 As the target basis matrix,

[0110] In one embodiment, the method for determining the basic bit rate includes:

[0111] Determine the difference between the number of columns and the number of rows of the base matrix as a third difference;

[0112] determining a difference between the number of columns of the basic matrix and the maximum number of punctures as a fourth difference;

[0113] Determining a ratio of the third difference to the number of columns of the basic matrix as a minimum basic bit rate supported by the basic matrix;

[0114] determining a ratio of the third difference to the fourth difference as a maximum basic bit rate supported by the basic matrix;

[0115] The maximum puncturing number is an integer greater than 1 and less than the number of rows of the basic matrix.

[0116] In some examples, it is assumed that the number of rows of the base matrix is ​​mb, the number of columns of the base matrix is ​​nb, and the maximum number of punctures allowed for the base matrix is ​​Q. Since all columns in the base matrix can be punctured in theory, but the code rate after puncturing should be less than 1, the maximum number of punctures can be an integer greater than 1 and less than the number of rows in the base matrix. In this case, kb=nb-mb is determined as the third difference, nb-Q is determined as the fourth difference, the ratio of the third difference to nb is determined as the minimum basic code rate supported by the base matrix, and the ratio of the third difference to the fourth difference is determined as the maximum basic code rate supported by the base matrix, that is, for the base matrix Hb i , the basic bit rate range it supports is

[0117] In one example, there are at least two basic matrices in the basic matrix set whose numbers of rows and columns are unequal, but whose difference between the number of columns and the number of rows is equal. The maximum number of punctures Q=2. There are M=2 basic matrices in the basic matrix set, which correspond one-to-one to M=2 basic code rates. The first basic matrix Hb0 has the number of rows mb0=5 and the number of columns nb0=15. The code rate range supported by the basic matrix Hb0 is: The number of rows of the second base matrix Hb1 is mb1=4 and the number of columns is nb1=14, and the base rate range supported by the base matrix Hb1 is: The base rates corresponding to the two base matrices Hb0 and Hb1 can be considered as R0=10 / 15 and R1=10 / 14, and the repeated interval of the rate range supported by the two base rates is Therefore, there can be a rate threshold When the rate R is less than T0, the base matrix Hb0 is selected as the target base matrix; when the rate R is greater than or equal to T0, the base matrix Hb1 is selected as the target base matrix.

[0118] In an example, there are M=2 base matrices in the base matrix set, which one-to-one correspond to M=2 base rates, and the lifting value is 512. The number of rows of the first base matrix is mb0=5, the number of columns is nb0=13, the base rate is R0=8 / 13, the number of rows of the second base matrix is mb1=4, the number of columns is nb1=12, and the base rate is R1=8 / 12. The base rates corresponding to the two base matrices Hb0 and Hb1 are R0=8 / 13 and R1=8 / 12. When the rate R=R0, the base matrix Hb0 is selected as the base matrix; when the rate R=R1, the base matrix Hb1 is selected as the base matrix.

[0119] In an example, there are M=2 base matrices in the base matrix set, which one-to-one correspond to M=2 base rates, and the lifting value is 512. The number of rows of the first base matrix is mb0=5, the number of columns is nb0=13, the base rate is R0=8 / 13, the number of rows of the second base matrix is mb1=4, the number of columns is nb1=12, and the base rate is R1=8 / 12. The base rates corresponding to the two base matrices Hb0 and Hb1 are R0=8 / 13 and R1=8 / 12. When the rate R is less than R0, the base matrix Hb0 is selected as the base matrix.

[0120] In an embodiment, the determination manner of the rate threshold comprises at least one of the following:

[0121] determined through a preset expression;

[0122] determined through a fourth preset rate threshold table; wherein the fourth preset rate threshold table comprises a corresponding relationship between the rate threshold and the base rate repeated interval;

[0123] determined through a fifth preset rate threshold table; wherein the fifth preset rate threshold table comprises a corresponding relationship between the rate threshold, the base rate repeated interval, and the lifting value interval;

[0124] determined through a sixth preset rate threshold table; wherein the sixth preset rate threshold table comprises a corresponding relationship between the rate threshold, the base rate repeated interval, and the information bit interval in which the length of the to-be-encoded bit sequence is located;

[0125] The preset flow is determined based on a fourth preset code rate threshold table, a fifth preset code rate threshold table, or a sixth preset code rate threshold table.

[0126] In an embodiment, the numerical relationship satisfied by the code length threshold in the preset expression includes at least one of the following:

[0127] wherein ΔR is a real number less than .

[0128]

[0129] wherein, is the maximum basic code rate supported by the i-th basic matrix in the basic matrix set; is the minimum basic code rate supported by the i+1-th basic matrix in the basic matrix set; T i is the code rate threshold used to distinguish the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

[0130] In one example, the maximum number of puncturing is Q=2, there are M=3 basic matrices in the basic matrix set, which one-to-one correspond to M=3 basic code rates, the boosting value is equal to 512, the number of rows of the first basic matrix is mb0=6, the number of columns is nb0=16, the basic code rate is R0=10 / 16, the number of rows of the second basic matrix is mb1=5, nb1=15, the basic code rate is R1=10 / 15, the number of rows of the third basic matrix is mb2=4, nb1=14, the basic code rate is R2=10 / 14. The code rate range supported by the basic matrix Hb0 is: The code rate range supported by the basic matrix Hb1 is: The code rate range supported by the basic matrix Hb2 is The repeated interval of the code rate range supported by Hb0 and Hb1 is The repeated interval of the code rate range supported by Hb1 and Hb2 is Based on one of the numerical relationships satisfied by the code length threshold in the above preset expression, the code rate threshold T0=(10 / 15+10 / 14) / 2=29 / 42 and the code rate threshold T1=(10 / 14+10 / 13) / 2=135 / 182 can be calculated and determined. When the code rate R belongs to [T0, T1], Hb1 can be determined as the target basic matrix.

[0131] In some examples, a fourth preset code rate threshold table can be constructed in advance based on the correspondence between the code rate threshold and the basic code rate repeated interval, and the fourth preset code rate threshold table has the following characteristics: the size of the code rate threshold table is M-1, and the code rate size belongs to the interval to obtain the i-th code rate threshold T iThe (i+1)th code rate threshold in the code rate threshold table is greater than the ith code rate threshold, and the ith code rate threshold T i satisfies For example, the fourth preset code rate threshold table can be represented in the following table form:

[0132]

[0133] In one example, the code rate threshold is obtained according to the fourth preset code rate threshold table, the maximum number of puncturing Q=2, there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base code rates, the boosting values are all equal to 512, the number of rows of the first base matrix mb0=6, the number of columns nb0=16, the base code rate R0=10 / 16, the number of rows of the second base matrix mb1=5, nb1=15, the base code rate R1=10 / 15, the number of rows of the third base matrix mb2=4, nb1=14, and the base code rate R2=10 / 14. The code rate range supported by the base matrix Hb0 is: The code rate range supported by the base matrix Hb1 is: The code rate range supported by the base matrix Hb2 is The repeated interval of the code rate range supported by Hb0 and Hb1 is The repeated interval of the code rate range supported by Hb1 and Hb2 is The fourth preset code rate threshold table is shown in the following table. When the code rate is R=0.70, the code rate threshold T0=0.69; when the code rate is R=0.75, the code rate threshold T1=0.74. If the code rate R=0.70, the target base matrix can be determined.

[0134]

[0135] In some examples, a fifth preset code rate threshold table can be constructed in advance based on the correspondence between the code rate threshold and the base code rate repeated interval and the boosting value interval, and the fifth preset code rate threshold table has the following characteristics: the size of the code rate threshold table is P*(M-1), P is the number of boosting value intervals, and M-1 is the number of base code rate repeated intervals. When the code rate size belongs to the base code rate repeated interval and the boosting value belongs to the boosting value interval [Z j ,Z j+1 ], the code rate threshold T j,i is obtained; the (i+1)th code rate threshold in the jth row of the code rate threshold table is greater than the ith code rate threshold, that is, T j,i+1 >T j,i ; the (j+1)th code rate threshold in the ith column of the code rate threshold table is less than or equal to the jth code rate threshold, that is, T j+1,i ≤T j,i ; and the code rate threshold T i,jsatisfy wherein i is an integer greater than or equal to 0 and less than or equal to M-2, j is an integer greater than or equal to 0 and less than or equal to P-1, Z j is a preset lifting value greater than 0. Exemplarily, the fifth preset code rate threshold table can be expressed in the following table form:

[0136]

[0137] In one example, the code rate threshold is obtained according to the fifth preset code rate threshold table, the maximum puncturing number Q=2 in this example, there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base code rates respectively, the lifting value is equal to 512, the number of rows of the first base matrix mb0=6, the number of columns nb0=16, the base code rate R0=10 / 16, the number of rows of the second base matrix mb1=5, nb1=15, the base code rate R1=10 / 15, the number of rows of the third base matrix mb2=4, nb1=14, and the base code rate R2=10 / 14. The code rate range supported by the base matrix Hb0 is: The code rate range supported by the base matrix Hb1 is: The code rate range supported by the base matrix Hb2 is The repeated interval of the code rate range supported by Hb0 and Hb1 is The repeated interval of the code rate range supported by Hb1 and Hb2 is The fifth preset code rate threshold table is shown in the following table. When the code rate and the lifting value is in the interval 32≤Z<256, the code rate threshold is 0.70; when the code rate and the lifting value is in the interval 256≤Z<513, the code rate threshold is 0.69; when the code rate and the lifting value is in the interval 32≤Z<256, the code rate threshold is 0.74; when the code rate and the lifting value is in the interval 256≤Z<513, the code rate threshold is 0.73.

[0138]

[0139] In some examples, a sixth preset code rate threshold table can be constructed in advance based on the correspondence between the code rate threshold and the base code rate repeated interval, and the information bit interval in which the length of the to-be-encoded bit sequence is located. The sixth preset code rate threshold table has the following characteristics: the size of the code rate threshold table is P*(M-1), P is the number of information bit intervals, and M-1 is the number of base code rate repeated intervals. When the code rate size belongs to the base code rate repeated interval and the length of the to-be-encoded bit sequence belongs to the information bit interval [K j ,K j+1 ), the code rate threshold T j,i; the (i+1)th rate threshold value in the jth row of the rate threshold value table is greater than the ith rate threshold value, i.e., T j,i+1 > j,i ; the (j+1)th rate threshold value in the ith column of the rate threshold value table is less than or equal to the jth rate threshold value, i.e., T j+1,i ≤ T j,i ; the rate threshold value T i,j satisfies R i ≤ T j,i < R i+1 . Wherein, i is an integer greater than or equal to 0 and less than or equal to M-2, j is an integer greater than or equal to 0 and less than or equal to P-1, K j is a preset information bit length greater than 0. Exemplarily, the sixth preset rate threshold value table can be expressed in the following table form:

[0140]

[0141] In an example, the rate threshold value is obtained according to the sixth preset rate threshold value table, the maximum puncturing number Q=2 in this example, there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base rates respectively, the lifting values are all equal to 512, the number of rows of the first base matrix mb0=6, the number of columns nb0=16, the base rate R0=10 / 16, the number of rows of the second base matrix mb1=5, nb1=15, the base rate R1=10 / 15, the number of rows of the third base matrix mb2=4, nb1=14, and the base rate R2=10 / 14. The rate range supported by the base matrix Hb0 is: The rate range supported by the base matrix Hb1 is: The rate range supported by the base matrix Hb2 is The repeated interval of the rate range supported by Hb0 and Hb1 is The repeated interval of the rate range supported by Hb1 and Hb2 is The sixth preset rate threshold value table is shown in the following table. When the rate and the length K of the to-be-encoded bit sequence is in the interval 1024≤K<4096, the rate threshold value is 0.69; when the rate and the length K of the to-be-encoded bit sequence is in the interval 1024≤K<4096, the rate threshold value is 0.75. It can be understood that the information length range in this example can be other values, and the embodiments of the present application do not limit this.

[0142]

[0143] In some examples, the above fourth preset rate threshold value table, fifth preset rate threshold value table and sixth preset rate threshold value table can be characterized by a judgment statement to determine the rate threshold value according to the base rate repeated interval, the lifting value interval and the information bit interval.

[0144] In an embodiment, the encoding requirement information further comprises a requirement code length and a promotion value of the to-be-encoded bit sequence; the support information further comprises a code length threshold of each base matrix; wherein the requirement code length is a code length of the target encoded bit sequence. According to the encoding requirement information of the to-be-encoded bit sequence and the support information of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set, comprising:

[0145] According to the requirement code length and the promotion value of the to-be-encoded bit sequence and the code length threshold of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set;

[0146] Wherein the requirement code length, the promotion value and the code length threshold are all integers greater than 0.

[0147] In the embodiment, the requirement code length can be specifically understood as a code length to which the to-be-encoded bit sequence is expected to be encoded, and in the embodiment, the requirement code length can be understood as a code length of the target encoded bit sequence.

[0148] In the embodiment, the code length threshold can be specifically understood as a threshold used to distinguish the code length range supported by different base matrices.

[0149] In the embodiment, according to the promotion value, the code length threshold used to distinguish the code length range supported by different base matrices can be determined, so as to determine the code length range that each base matrix in the base matrix set can provide for the to-be-encoded bit sequence. Then, the requirement code length to which the to-be-encoded bit sequence needs to be encoded is compared with the code length range that each base matrix can provide, and the base matrix corresponding to the code length range containing the requirement code length of the to-be-encoded bit sequence is determined as the target base matrix.

[0150] In an embodiment, according to the requirement code length of the to-be-encoded bit sequence and the code length threshold of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set, comprising:

[0151] In the case that the requirement code length of the to-be-encoded bit sequence is greater than or equal to a first code length threshold and less than a second code length threshold, a latter base matrix in adjacent base matrices distinguished by the first code length threshold is determined as the target base matrix; wherein the first code length threshold and the second code length threshold are two adjacent code length thresholds corresponding to the base matrix set under the promotion value;

[0152] In the case that the requirement code length of the to-be-encoded bit sequence is less than the smallest code length threshold corresponding to the base matrix set, a base matrix with the smallest base code length in the base matrix set under the promotion value is determined as the target base matrix;

[0153] In a case where the required code length of the bit sequence to be encoded is greater than or equal to the maximum code length threshold corresponding to the base matrix set, the base matrix with the maximum base code length in the base matrix set at the boosting value is determined as the target base matrix.

[0154] In the embodiment, in a case where the puncturing numbers of the base matrices in the base matrix set are different, the ranges of the supportable code lengths of the base matrices do not overlap. In order to enable the bit sequence to be encoded to select the target base matrix in the base matrix set that is most suitable for the encoding requirement of the bit sequence to be encoded, the determination of the target base matrix in the base matrix set can be divided into the following three cases based on the code length threshold used to distinguish the ranges of the supportable code lengths of the different base matrices:

[0155] 1) In a case where the required code length of the bit sequence to be encoded is less than the minimum code length threshold corresponding to the base matrix set, it can be considered that all the base matrices in the base matrix set are difficult to completely adapt to the encoding requirement of the bit sequence to be encoded at the boosting value, and the error caused by encoding the bit sequence to be encoded by using the base matrix with the larger base code length is greater. Therefore, the base matrix with the minimum base code length in the base matrix set can be used as the target base matrix.

[0156] 2) In a case where the required code length of the bit sequence to be encoded is greater than or equal to the maximum code length threshold corresponding to the base matrix set, it can be considered that all the base matrices in the base matrix set are difficult to completely adapt to the encoding requirement of the bit sequence to be encoded at the boosting value, and the error caused by encoding the bit sequence to be encoded by using the base matrix with the smaller base code length is greater. Therefore, the base matrix with the maximum base code length in the base matrix set can be used as the target base matrix.

[0157] 3) In a case where the required code length of the bit sequence to be encoded is greater than or equal to the first code length threshold and less than the second code length threshold, it can be considered that the base matrix with the base code length located in the range of the first code length threshold and the second code length threshold can achieve a better encoding effect when encoding the bit sequence to be encoded. Meanwhile, since the first code length threshold and the second code length threshold can be used to distinguish the base code length and the two adjacent base matrices, in a case where the first code length threshold and the second code length threshold are two adjacent code length thresholds in terms of value, it can be considered that the latter base matrix in the two adjacent base matrices distinguished by the first code length threshold is the same as the former base matrix in the two adjacent base matrices distinguished by the second code length threshold. Therefore, the base matrix can be used as the target base matrix.

[0158] In an embodiment, the code length threshold satisfies the following value relationship:

[0159] Wherein, ΔN is an integer less than ;

[0160] Wherein, N i is the base code length of the i-th base matrix in the base matrix set; N i+1 is the base code length of the i+1-th base matrix in the base matrix set; F i is the code length threshold used to distinguish the i-th base matrix from the i+1-th base matrix; wherein, i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0161] In the embodiment, the base code length can be specifically understood as the encoding code length that the base matrix can support, which is determined according to the number of columns of the base matrix, the puncturing condition of the base matrix and the lifting value.

[0162] In an embodiment, the determination manner of the base code length of the base matrix comprises:

[0163] determining the difference value between the number of columns of the base matrix and the total puncturing number as a fifth difference value;

[0164] determining the product of the lifting value and the fifth difference value as the base code length of the base matrix;

[0165] Wherein, the rounding manner comprises at least one of the following:

[0166] rounding up;

[0167] rounding down;

[0168] rounding to the nearest;

[0169] Wherein, the absolute value of the difference between the base code lengths corresponding to any two base matrices in the base matrix set under the lifting value is greater than or equal to a second preset difference threshold.

[0170] In the embodiment, the second preset difference threshold can be specifically understood as a threshold that is set in advance according to actual conditions and is used to ensure that there is a difference in the range of encoding code lengths supported by each base matrix in the base matrix set.

[0171] In some examples, assuming that the lifting value of the to-be-encoded bit sequence is Z, the number of columns of the base matrix is nb, and the total puncturing number after puncturing the base matrix is Δnb, then nb-Δnb can be determined as the fifth difference value, and the product obtained by multiplying the lifting value and the fifth difference value is rounded as the base code length of the base matrix, that is, the base code length N of the base matrix can be represented by one of the following formulas:

[0172] N=floor(Z*(nb-Δnb))

[0173] N=round(Z*(nb-Δnb))

[0174] N = ceil(Z * (nb - Dnb))

[0175] Wherein, floor(x) represents taking the maximum integer not greater than x, round(x) represents taking the integer closest to x, and ceil(x) represents taking the minimum integer not less than x.

[0176] In an embodiment, the target encoding bit sequence is determined by encoding the to-be-encoded bit sequence through the target base matrix, comprising:

[0177] Obtaining a lifting value matched with the to-be-encoded bit sequence;

[0178] Encoding the to-be-encoded bit sequence through the lifting value and the target base matrix to determine a first encoding bit sequence;

[0179] Bit selection is performed on the first encoding bit sequence to determine the target encoding bit sequence.

[0180] In an embodiment, the first encoding bit sequence is determined by encoding the to-be-encoded bit sequence through the lifting value and the target base matrix, comprising:

[0181] Matrix expansion is performed on the target base matrix based on the lifting value to determine a parity check matrix corresponding to the to-be-encoded bit sequence;

[0182] The first encoding bit sequence is determined by encoding the to-be-encoded bit sequence through the parity check matrix.

[0183] In some examples, the lifting value can be used as the dimension of the standard permutation matrix, and the expansion of the base matrix can be implemented, for example, replacing the element indicating the all-zero matrix in the base matrix with a Z*Z all-zero matrix, or replacing the element indicating the cyclic shift of the unit matrix in the base matrix with a cyclic shift matrix of the Z*Z unit matrix. After the replacement is completed, the parity check matrix of each base matrix can be obtained.

[0184] In one example, the check matrix H of the LDPC code is a matrix of mb*Z rows and nb*Z columns, which is composed of mb*nb sub-matrices, each of which is a different power of the Z*Z standard permutation matrix (corresponding to the cyclic shift matrix of the unit matrix) or a Z*Z all-zero matrix. The check matrix H has the following form:

[0185]

[0186] As The corresponding sub-matrix is a Z*Z all-zero matrix; if is an integer greater than or equal to 0, the corresponding sub-matrix is the k-th power of the standard permutation matrix P The standard permutation matrix P of Z*Z (i.e., the cyclic shift of the identity matrix) is shown as follows (the identity matrix is cyclically shifted 1 bit to the right to form the standard permutation matrix):

[0187]

[0188] Therefore, in the above example, Each sub-matrix can be uniquely identified. If a certain sub-matrix is a zero matrix, the corresponding is represented by -1 or a null value, if a certain sub-matrix is a cyclic shift s of the identity matrix, then is equal to s. That is, the base matrix contains two types of elements: elements indicating zero matrices and elements indicating cyclic shifts of the identity matrix.

[0189] In some examples, Z is the dimension of the standard permutation matrix (sub-matrix), and Z is referred to as the lifting size. By replacing the elements in the base matrix indicating cyclic shifts of the identity matrix with "1" and replacing all elements indicating zero matrices with "0", the base matrix of the LDPC code can be obtained. Therefore, the base matrix of the LDPC code only includes two types of elements: "0" and "1", where "0" is used to indicate that the index position is an element of a zero matrix, and "1" is used to indicate that the index position is an element of a cyclic shift of the identity matrix. For ease of description, only the elements in the base matrix indicating cyclic shifts of the identity matrix and the row and column index positions of these elements can be described, and the remaining row and column index positions are by default elements indicating zero matrices. In addition, the elements indicating cyclic shifts of the identity matrix can be represented by their cyclic shift values, and the elements indicating zero matrices can be described by -1 or a null value.

[0190] In some examples, the input bit sequence to be encoded can be represented as a = {a0, a1,..., a K-1 K is the length of the bit sequence to be encoded. Since K can be less than kb*Z, zero padding is needed to perform encoding operations through the parity check matrix. Therefore, when kb*Z ≥ K, the padded bits are zeros, and the padded bit sequence a' = {a0, a1,..., a K-1 ,0 K ,0 K+1 ,...,0 kb*Z-1} is obtained. Then, after encoding the padded bit sequence through the parity check matrix, a first encoded bit sequence b = {b0, b1,..., b E-1} can be output, where the length of the first encoded bit sequence is E bits.

[0191] In some examples, when the product of the column number kb of the systematic column matrix of the base matrix and the lifting value Z is equal to the length K of the bit sequence to be encoded, the corresponding information bits during encoding are a' = {a0, a1,..., a K-1}; when the product of the column number kb of the systematic column matrix of the base matrix and the lifting value Z is greater than the length K of the bit sequence to be encoded, kb*Z-K 0 bits are padded after the input bit sequence to be encoded to obtain a' = {a0, a1,..., a K-1 , 0 K , 0 K+1 ,..., 0 kb*Z-1}, and the corresponding information bits during encoding are a' = {a0, a1,..., a K-1 , 0 K , 0 K+1 ,..., 0 kb*Z-1}. The padded kb*Z-K 0 bits can not be transmitted when the first communication node transmits the encoded data to the second communication node.

[0192] In some examples, since the base matrix has the structure of a systematic column matrix and a parity check column matrix, each parity check matrix also contains a systematic column matrix H s and a parity check column matrix H P , i.e., the parity check matrix has the following specific structure:

[0193] [H s ,H P ]

[0194] Since the bit sequence to be encoded can be encoded based on the target base matrix Hb and the lifting value Z to obtain a first encoded bit sequence, i.e., the parity check matrix H determined by the base matrix Hb and the lifting value Z is used to calculate the bit sequence to be encoded as follows:

[0195] v = H s × a', p = (H P ) -1 × v

[0196] The first encoded bit sequence obtained above can be represented as The length of the first encoded bit sequence is E.

[0197] In some examples, the LDPC code can be shortened by selectively omitting some codeword positions while maintaining the excellent performance characteristics of the LDPC code as much as possible. Specifically, the shortening operation involves selecting certain positions in the codeword and deciding not to transmit information at these positions. In this way, the shortened positions of the codeword are known at both the transmitting and receiving ends, and 0 is usually placed at the shortened positions of the codeword. For example, the structure of a base matrix can be represented as: where Hbs is the system column matrix, Hb P is the parity check matrix, the number of columns in the systematic column matrix is ​​kb, and the number of columns in the parity check matrix is ​​mb. If the shortened position is the last L columns of the systematic column in the base matrix, then bits (kb-L)*Z through kb*Z-1 of the codeword are known at both the transmitter and receiver. It is understood that bits (kb-L)*Z through kb*Z-1 are known at both the transmitter and receiver, e.g., they are all equal to 0.

[0198] In this embodiment, after the shortened bits that are known by both the transmitting and receiving ends are removed from the coded bit sequence, a first coded bit sequence of length E is obtained. The first coded bit sequence only includes systematic bits and check bits, and does not include the shortened bits that are shortened by zero padding.

[0199] In one embodiment, since the code length required by the target coding bit sequence is often different from that of the first coding bit sequence, the target coding bit sequence may be determined by performing bit selection on the first coding bit sequence.

[0200] In one embodiment, performing bit selection on the first coded bit sequence includes at least one of the following:

[0201] Performing bit selection on the first coded bit sequence according to the required code length of the bit sequence to be coded;

[0202] Bit selection is performed on the first coded bit sequence according to the code rate of the to-be-coded bit sequence.

[0203] In one embodiment, performing bit selection on the first coded bit sequence according to the code rate of the to-be-coded bit sequence includes:

[0204] Determining the number of check column punctures according to the code rate of the to-be-encoded bit sequence, the number of rows of the target fundamental matrix, the lifting value, the length of the to-be-encoded bit sequence, and the number of systematic bit punctures;

[0205] A target coded bit sequence is obtained by puncturing a number of bits of the systematic column and a number of bits of the parity column in the first coded bit sequence.

[0206] In some examples, if the code rate satisfies T i-1 <R≤T i , then the target basic matrix selected in the LDPC coding process is Hb i After encoding the coded bit sequence to obtain the first coded bit sequence by using the target basic matrix and the lifting value Z, the target coded bit sequence with the required code length N can be obtained by the following method:

[0207] The number of puncturing positions of the check column puncParBit is: mb*Z-(floor(K / R)-K+puncSysBit). Wherein mb is the number of rows of the base matrix, K is the length of the to-be-encoded bit sequence, and puncSysBit is the number of puncturing of the systematic bits;

[0208] The puncturing positions are determined; in one example, the systematic bit puncturing positions are located at the first puncSysBit bit positions of the first encoded bit sequence, and the check bit puncturing positions are located at the last puncParBit bit positions of the first encoded bit sequence.

[0209] Based on the first encoded bit sequence, the elements at the systematic bit puncturing positions and the elements at the check bit puncturing positions are deleted to obtain a target encoded bit sequence with a length of N. Wherein the systematic bit puncturing positions and the check bit puncturing positions can be empty.

[0210] In one example, it is assumed that there are M=3 base matrices in the base matrix set, which one-to-one correspond to M=3 base code rates, and the number of rows mb of the three base matrices is equal to 4, and the number of columns nb of the three base matrices is equal to 12. The total number of puncturing Δnb corresponding to the three base matrices Hb0, Hb1 and Hb2 is 0, 1 and 2 respectively, and the base code rates corresponding to the three base matrices Hb0, Hb1 and Hb2 are R0=8 / 12, R1=8 / 11 and R2=8 / 10 respectively. The promotion value Z=512, the code rate threshold T0=23 / 33, and the code rate threshold T1=42 / 55. If the code rate of the to-be-encoded bit sequence is R=17 / 25, at this time R<T0, Hb0 is determined as the target base matrix. The length of the to-be-encoded bit sequence K=4094, the code rate R=32 / 47, the number of puncturing of the systematic bits puncSysBit=0, the number of puncturing positions of the check column puncParBit=mb*Z-(floor(K / R)-K+puncSysBit)=128, the total length of the to-be-encoded information bits and the check bits in the first encoded bit sequence E=K+mb*Z=6144, and the target encoded bit sequence is a sequence composed of the first (E-puncParBit)=6016 bits of the first encoded bit sequence. The length of the target encoded bit sequence N=6016.

[0211] In another example, based on the first coded bit sequence, elements of the system bit puncturing position are deleted, elements of the check bit puncturing position are deleted, and a target coded bit sequence with a length of N is obtained. Based on the previous example, the difference is that the number of system bit puncturing is puncSysBit=64, the number of check column puncturing position is puncParBit=mb*Z-(floor(K / R)-K+puncSysBit)=64, the total length of the first coded bit sequence is E=6144, the target coded bit sequence is a sequence composed of the 65th to 6080th bits of the first coded bit sequence, and the length of the target coded bit sequence is N=6016.

[0212] In an embodiment, after determining the target coded bit sequence, the method further includes:

[0213] Sending all bits in the target coded bit sequence or part of the bits in the target coded bit sequence to the second communication node.

[0214] In an example embodiment, Figure 5 A flowchart of a data processing method provided by the embodiments of the present application is shown. The method can be applied to selecting the most suitable LDPC code base matrix for a bit sequence that needs to be encoded and decoded. The method can be executed by a data processing device, which can be executed by software and / or hardware and integrated on a communication node. The method can be applied to a second communication node, which can be, but is not limited to, a second transmission node in the data transmission implementation environment shown, and can be a corresponding execution subject selected and set by a person skilled in the art according to an actual application scenario, which is not limited by the embodiments of the present application. Figure 1

[0215] As shown in Figure 5 The data processing method provided by the embodiments of the present application specifically includes the following steps:

[0216] S201, receiving a to-be-decoded bit sequence.

[0217] In the embodiment, the to-be-decoded bit sequence is the information corresponding to all bits of the target coded bit sequence or part of the bits in the target coded bit sequence in the above embodiments.

[0218] S202, determining a target base matrix from a base matrix set according to decoding requirement information of the to-be-decoded bit sequence and support information of each base matrix in the base matrix set.

[0219] The base matrix set includes at least two base matrices.

[0220] S203, decoding the to-be-decoded bit sequence by using the target base matrix to determine a target decoded bit sequence.​

[0221] In the embodiment, the target decoding bit sequence is the to-be-encoded bit sequence in the above embodiment.

[0222] In an embodiment, the decoding requirement information comprises a code rate of the to-be-decoded bit sequence; and the support information comprises a base code rate and a code rate threshold of each base matrix.

[0223] According to the decoding requirement information of the to-be-decoded bit sequence and the support information of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set, comprising:

[0224] According to the code rate of the to-be-decoded bit sequence and the base code rate and the code rate threshold of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set.

[0225] The code rate, the base code rate and the code rate threshold are all real numbers greater than 0 and less than 1.

[0226] The absolute value of the difference between the base code rates corresponding to any two base matrices in the base matrix set is greater than or equal to a first preset difference threshold.

[0227] In an embodiment, in the case where the number of rows of each base matrix in the base matrix set is equal and the number of columns of each base matrix is equal, according to the code rate of the to-be-decoded bit sequence and the base code rate and the code rate threshold of each base matrix in the base matrix set, a target base matrix is determined from the base matrix set, comprising at least one of the following:

[0228] In the case where the code rate of the to-be-decoded bit sequence is greater than or equal to a first code rate threshold and less than a second code rate threshold, the latter base matrix in the adjacent base matrices distinguished by the first code rate threshold is determined as the target base matrix; wherein the first code rate threshold and the second code rate threshold are two adjacent code rate thresholds corresponding to the base matrix set.

[0229] In the case where the code rate of the to-be-decoded bit sequence is less than the smallest code rate threshold corresponding to the base matrix set, the base matrix with the smallest base code rate in the base matrix set is determined as the target base matrix.

[0230] In the case where the code rate of the to-be-decoded bit sequence is greater than or equal to the largest code rate threshold corresponding to the base matrix set, the base matrix with the largest base code rate in the base matrix set is determined as the target base matrix.

[0231] In an embodiment, the determination of the base code rate comprises:

[0232] The difference between the number of columns and the number of rows of the base matrix is determined as the first difference.

[0233] determining a second difference value as a difference between the number of columns of the base matrix and the total number of puncturing;

[0234] determining a base code rate of the base matrix as a ratio of the first difference value and the second difference value;

[0235] wherein the total number of puncturing is a non-negative real number less than the number of rows of the base matrix.

[0236] In an embodiment, the code rate threshold is determined in the following manner:

[0237] by a preset expression;

[0238] by a first preset code rate threshold table, wherein the first preset code rate threshold table comprises a corresponding relationship between the code rate threshold and the base code rate interval;

[0239] by a second preset code rate threshold table, wherein the second preset code rate threshold table comprises a corresponding relationship between the code rate threshold, the base code rate interval and the lifting value interval;

[0240] by a third preset code rate threshold table, wherein the third preset code rate threshold table comprises a corresponding relationship between the code rate threshold, the base code rate interval and an information bit interval in which the length of the to-be-decoded bit sequence is located;

[0241] by a preset procedure, wherein the preset procedure is represented by a judgment statement based on the first preset code rate threshold table, the second preset code rate threshold table or the third preset code rate threshold table.

[0242] In an embodiment, the numerical relationship satisfied by the code rate threshold in the preset expression comprises at least one of the following:

[0243] wherein |AR| is a real number less than ;

[0244]

[0245] wherein R i is the base code rate of the i-th base matrix in the base matrix set; R i+1 is the base code rate of the i+1-th base matrix in the base matrix set; T i is the code rate threshold used to distinguish the i-th base matrix and the i+1-th base matrix; wherein i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0246] In an embodiment, in the case that there are at least two base matrices in the base matrix set, the number of rows of which is not equal, the number of columns of which is not equal, and the difference between the number of columns and the number of rows of which is equal, the target base matrix is determined from the base matrix set according to the code rate of the bit sequence to be decoded, and the base code rate and the code rate threshold of each base matrix in the base matrix set, including at least one of the following:

[0247] In the case that the code rate of the bit sequence to be decoded is greater than or equal to the third code rate threshold and less than the fourth code rate threshold, the latter base matrix in the adjacent base matrix distinguished by the third code rate threshold is determined as the target base matrix; wherein the third code rate threshold and the fourth code rate threshold are two adjacent code rate thresholds corresponding to the base matrix set;

[0248] In the case that the code rate of the bit sequence to be decoded is less than the smallest code rate threshold corresponding to the base matrix set, the base matrix with the smallest base code rate in the base matrix set is determined as the target base matrix;

[0249] In the case that the code rate of the bit sequence to be decoded is greater than or equal to the largest code rate threshold corresponding to the base matrix set, the base matrix with the largest base code rate in the base matrix set is determined as the target base matrix.

[0250] In an embodiment, the determination of the base code rate includes:

[0251] The difference between the number of columns and the number of rows of the base matrix is determined as a third difference value;

[0252] The difference between the number of columns of the base matrix and the maximum puncturing number is determined as a fourth difference value;

[0253] The ratio of the third difference value to the number of columns of the base matrix is determined as the minimum base code rate supported by the base matrix;

[0254] The ratio of the third difference value to the fourth difference value is determined as the maximum base code rate supported by the base matrix;

[0255] Wherein, the maximum puncturing number is an integer greater than 1 and less than the number of rows of the base matrix.

[0256] In an embodiment, the determination of the code rate threshold includes at least one of the following:

[0257] Determined by a preset expression;

[0258] Determined by a fourth preset code rate threshold table; wherein the fourth preset code rate threshold table contains the corresponding relationship between the code rate threshold and the base code rate repetition interval;

[0259] Determined by a fifth preset code rate threshold table; wherein the fifth preset code rate threshold table contains the corresponding relationship between the code rate threshold, the base code rate repetition interval and the promotion value interval.

[0260] determined by a sixth preset code rate threshold table; wherein the sixth preset code rate threshold table contains a corresponding relationship between a code rate threshold and an information bit interval in which a basic code rate repetition interval and a length of the to-be-decoded bit sequence are located;

[0261] determined by a preset procedure; wherein the preset procedure is a judgment statement based on the fourth preset code rate threshold table, the fifth preset code rate threshold table or the sixth preset code rate threshold table.

[0262] In an embodiment, the numerical relationship that the code length threshold in the preset expression satisfies includes at least one of the following:

[0263] wherein ΔR is a real number less than .

[0264]

[0265] wherein is a maximum basic code rate supported by an i-th basic matrix in the basic matrix set; is a minimum basic code rate supported by an i+1-th basic matrix in the basic matrix set; T i is a code rate threshold used to distinguish the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

[0266] In an embodiment, the decoding requirement information further includes a required code length and a promotion value of the to-be-decoded bit sequence; and the support information further includes code length thresholds of the basic matrices; wherein the required code length is a code length of a target decoding bit sequence. The target basic matrix is determined from the basic matrix set according to the decoding requirement information of the to-be-decoded bit sequence and the support information of the basic matrices in the basic matrix set, including:

[0267] The target basic matrix is determined from the basic matrix set according to the required code length and the promotion value of the to-be-decoded bit sequence and the code length thresholds of the basic matrices in the basic matrix set;

[0268] wherein the required code length, the promotion value and the code length threshold are all integers greater than 0.

[0269] In an embodiment, the target basic matrix is determined from the basic matrix set according to the required code length of the to-be-decoded bit sequence and the code length thresholds of the basic matrices in the basic matrix set, including:

[0270] In a case where the required code length of the bit sequence to be decoded is greater than or equal to the first code length threshold and less than the second code length threshold, a latter base matrix in the adjacent base matrices distinguished by the first code length threshold is determined as the target base matrix; wherein the first code length threshold and the second code length threshold are two adjacent code length thresholds corresponding to the base matrix set at the promotion value.

[0271] In a case where the required code length of the bit sequence to be decoded is less than the smallest code length threshold corresponding to the base matrix set, a base matrix with the smallest base code length in the base matrix set at the promotion value is determined as the target base matrix.

[0272] In a case where the required code length of the bit sequence to be decoded is greater than or equal to the largest code length threshold corresponding to the base matrix set, a base matrix with the largest base code length in the base matrix set at the promotion value is determined as the target base matrix.

[0273] In an embodiment, the numerical relationship satisfied by the code length threshold includes:

[0274] wherein ΔN is an integer less than .

[0275] wherein N i is the base code length of the i-th base matrix in the base matrix set; N i+1 is the base code length of the i+1-th base matrix in the base matrix set; F i is the code length threshold used to distinguish the i-th base matrix and the i+1-th base matrix; wherein i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0276] In an embodiment, the determination of the base code length of the base matrix includes:

[0277] determining the difference between the number of columns of the base matrix and the total number of puncturing as a fifth difference value;

[0278] determining the base code length of the base matrix by rounding the product of the promotion value and the fifth difference value;

[0279] wherein the rounding method includes at least one of the following:

[0280] rounding up;

[0281] rounding down;

[0282] rounding to the nearest;

[0283] wherein the absolute value of the difference between the base code lengths corresponding to any two base matrices in the base matrix set at the promotion value is greater than or equal to a second preset difference threshold.

[0284] In an embodiment, the target decoding bit sequence is determined by decoding the to-be-decoded bit sequence through the target base matrix, comprising:

[0285] obtaining a lifting value matched with the to-be-decoded bit sequence;

[0286] decoding the to-be-decoded bit sequence through the lifting value and the target base matrix to determine a first decoding bit sequence;

[0287] bit selection is performed on the first decoding bit sequence to determine the target decoding bit sequence.

[0288] In an embodiment, the first decoding bit sequence is determined by decoding the to-be-decoded bit sequence through the lifting value and the target base matrix, comprising:

[0289] matrix expansion is performed on the target base matrix based on the lifting value to determine a parity check matrix corresponding to the to-be-decoded bit sequence;

[0290] the first decoding bit sequence is determined by decoding the to-be-decoded bit sequence through the parity check matrix.

[0291] In an embodiment, since the length of the target decoding bit sequence is usually different from that of the first decoding bit sequence, bit selection can be performed on the first decoding bit sequence to determine the target decoding bit sequence.

[0292] In an embodiment, the bit selection performed on the first decoding bit sequence comprises at least one of the following:

[0293] bit selection is performed on the first decoding bit sequence through a required length of the target decoding bit sequence;

[0294] bit selection is performed on the first decoding bit sequence through a code rate of the target decoding bit sequence.

[0295] In an embodiment, the bit selection performed on the first decoding bit sequence through the code rate of the target decoding bit sequence, comprising:

[0296] the required length of the target decoding bit sequence is determined according to the code rate of the target decoding bit sequence and the length of the to-be-decoded bit sequence, and the target decoding bit sequence is obtained from the first decoding bit sequence according to the required length of the target decoding bit sequence. In one example, the first decoding bit sequence is selected as the target decoding bit sequence.

[0297] In one example embodiment, Figure 6 A structural schematic diagram of a data processing apparatus provided by an embodiment of the present application is shown in FIG. 1. The data processing apparatus is applied to a first communication node. As shown in FIG. 1, the apparatus comprises: Figure 6 a target base matrix obtaining unit 101, configured to obtain a target base matrix;

[0298] The encoding sequence obtaining module 310 is configured to obtain a to-be-encoded bit sequence;

[0299] The target matrix determining module 320 is configured to determine a target base matrix from the base matrix set according to encoding requirement information of the to-be-encoded bit sequence and support information of each base matrix in the base matrix set.

[0300] The target sequence determining module 330 is configured to encode the to-be-encoded bit sequence by using the target base matrix to determine a target encoded bit sequence.

[0301] The base matrix set includes at least two base matrices.

[0302] The data processing apparatus provided by the embodiment of the present application selects a target base matrix most suitable for the to-be-encoded bit sequence from a base matrix set including multiple base matrices according to the encoding requirement of the to-be-encoded bit sequence, and then encodes the to-be-encoded bit sequence by using the target base matrix, thereby improving the error correction performance of the data packet in the encoding process and increasing the robustness of data communication.

[0303] In an embodiment, the encoding requirement information includes a code rate of the to-be-encoded bit sequence, and the support information includes a base code rate and a code rate threshold of each base matrix. The target base matrix is determined from the base matrix set according to the encoding requirement information of the to-be-encoded bit sequence and the support information of each base matrix in the base matrix set, including:

[0304] The target base matrix is determined from the base matrix set according to the code rate of the to-be-encoded bit sequence and the base code rate and the code rate threshold of each base matrix in the base matrix set.

[0305] The code rate, the base code rate and the code rate threshold are all real numbers greater than 0 and less than 1.

[0306] The absolute value of the difference between the base code rates corresponding to any two base matrices in the base matrix set is greater than or equal to a first preset difference threshold.

[0307] In an embodiment, in the case that the number of rows of each base matrix in the base matrix set is equal and the number of columns of each base matrix is equal, the target base matrix is determined from the base matrix set according to the code rate of the to-be-encoded bit sequence and the base code rate and the code rate threshold of each base matrix in the base matrix set, including at least one of the following:

[0308] In a case that the code rate of the bit sequence to be encoded is greater than or equal to a first code rate threshold and less than a second code rate threshold, a latter base matrix in adjacent base matrices distinguished by the first code rate threshold is determined as the target base matrix; the first code rate threshold and the second code rate threshold are two adjacent code rate thresholds corresponding to the base matrix set.

[0309] In a case that the code rate of the bit sequence to be encoded is less than a smallest code rate threshold corresponding to the base matrix set, a base matrix with a smallest base code rate in the base matrix set is determined as the target base matrix.

[0310] In a case that the code rate of the bit sequence to be encoded is greater than or equal to a largest code rate threshold corresponding to the base matrix set, a base matrix with a largest base code rate in the base matrix set is determined as the target base matrix.

[0311] In an embodiment, the base code rate is determined in the following manner:

[0312] A difference between the number of columns and the number of rows of the base matrix is determined as a first difference;

[0313] A difference between the number of columns of the base matrix and a total number of puncturing is determined as a second difference;

[0314] A ratio of the first difference to the second difference is determined as the base code rate of the base matrix.

[0315] The total number of puncturing is a non-negative real number less than the number of rows of the base matrix.

[0316] In an embodiment, the code rate threshold is determined in at least one of the following manners:

[0317] By a preset expression;

[0318] By a first preset code rate threshold table; the first preset code rate threshold table contains a corresponding relationship between a code rate threshold and a base code rate interval;

[0319] By a second preset code rate threshold table; the second preset code rate threshold table contains a corresponding relationship between a code rate threshold, a base code rate interval and a boosting value interval;

[0320] By a third preset code rate threshold table; the third preset code rate threshold table contains a corresponding relationship between a code rate threshold, a base code rate interval and an information bit interval in which the length of the bit sequence to be encoded is located;

[0321] By a preset procedure; the preset procedure is represented by a judgment statement based on the first preset code rate threshold table, the second preset code rate threshold table or the third preset code rate threshold table.

[0322] In an embodiment, the numerical relationship that the code rate threshold satisfies in the preset expression comprises at least one of the following:

[0323] wherein |AR| is a real number less than .

[0324]

[0325] wherein R i is the base code rate of the i-th base matrix in the base matrix set; R i+1 is the base code rate of the i+1-th base matrix in the base matrix set; T i is the code rate threshold used to distinguish the i-th base matrix from the i+1-th base matrix; wherein i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0326] In an embodiment, in the case that there are at least two base matrices in the base matrix set that have different row numbers, different column numbers, and equal differences between column numbers and row numbers, the target base matrix is determined from the base matrix set according to the code rate of the to-be-encoded bit sequence, and the base code rates and code rate thresholds of the base matrices in the base matrix set, comprising at least one of the following:

[0327] In the case that the code rate of the to-be-encoded bit sequence is greater than or equal to a third code rate threshold and less than a fourth code rate threshold, the third code rate threshold is taken as the target base matrix in the latter one of the adjacent base matrices distinguished by the third code rate threshold; wherein the third code rate threshold and the fourth code rate threshold are two adjacent code rate thresholds corresponding to the base matrix set in terms of numerical size;

[0328] In the case that the code rate of the to-be-encoded bit sequence is less than the smallest code rate threshold corresponding to the base matrix set, the base matrix with the smallest base code rate in the base matrix set is determined as the target base matrix;

[0329] In the case that the code rate of the to-be-encoded bit sequence is greater than or equal to the largest code rate threshold corresponding to the base matrix set, the base matrix with the largest base code rate in the base matrix set is determined as the target base matrix.

[0330] In an embodiment, the determination of the base code rate comprises:

[0331] The difference between the column number and the row number of the base matrix is determined as a third difference value;

[0332] The difference between the column number of the base matrix and the maximum puncturing number is determined as a fourth difference value;

[0333] The ratio of the third difference value to the column number of the base matrix is determined as the minimum base code rate supported by the base matrix;

[0334] determining a ratio of the third difference to the fourth difference as a maximum basic bit rate supported by the basic matrix;

[0335] The maximum puncturing number is an integer greater than 1 and less than the number of rows of the basic matrix.

[0336] In one embodiment, the bit rate threshold is determined by at least one of the following methods:

[0337] Determined by a preset expression;

[0338] Determined by a fourth preset bit rate threshold table; wherein the fourth preset bit rate threshold table includes a correspondence between bit rate thresholds and basic bit rate repetition intervals;

[0339] Determined by a fifth preset bit rate threshold table; wherein the fifth preset bit rate threshold table includes a correspondence between bit rate thresholds, basic bit rate repetition intervals, and boost value intervals;

[0340] Determined by a sixth preset code rate threshold table; wherein the sixth preset code rate threshold table includes a correspondence between code rate thresholds, basic code rate repetition intervals, and information bit intervals where the length of the to-be-encoded bit sequence lies;

[0341] Determined by a preset process; wherein the preset process is represented by a judgment statement based on the fourth preset bit rate threshold table, the fifth preset bit rate threshold table or the sixth preset bit rate threshold table.

[0342] In one embodiment, the numerical relationship satisfied by the code length threshold in the preset expression includes at least one of the following:

[0343] Among them, ΔR is less than real number;

[0344]

[0345] in, is the maximum basic bit rate supported by the i-th basic matrix in the basic matrix set; is the minimum basic bit rate supported by the i+1th basic matrix in the basic matrix set; T i is a coding rate threshold used to distinguish the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

[0346] In one embodiment, the coding requirement information further includes a required code length and a boost value of the to-be-coded bit sequence; the support information further includes a code length threshold of each basic matrix; wherein the required code length is the code length of the target coded bit sequence. Based on the coding requirement information of the to-be-coded bit sequence and the support information of each basic matrix in the basic matrix set, a target basic matrix is ​​determined from the basic matrix set, including:

[0347] determining a target base matrix from the base matrix set according to a required code length of the bit sequence to be encoded and a lifting value, and code length thresholds of base matrices in the base matrix set;

[0348] wherein the required code length, the lifting value and the code length threshold are integers greater than 0.

[0349] In an embodiment, the target base matrix is determined from the base matrix set according to the required code length of the bit sequence to be encoded and the code length thresholds of base matrices in the base matrix set, including:

[0350] in a case where the required code length of the bit sequence to be encoded is greater than or equal to a first code length threshold and less than a second code length threshold, a latter base matrix in adjacent base matrices distinguished by the first code length threshold is determined as the target base matrix; wherein the first code length threshold and the second code length threshold are two adjacent code length thresholds corresponding to the base matrix set under the lifting value;

[0351] in a case where the required code length of the bit sequence to be encoded is less than a smallest code length threshold corresponding to the base matrix set, a base matrix with a smallest base code length in the base matrix set under the lifting value is determined as the target base matrix;

[0352] in a case where the required code length of the bit sequence to be encoded is greater than or equal to a largest code length threshold corresponding to the base matrix set, a base matrix with a largest base code length in the base matrix set under the lifting value is determined as the target base matrix.

[0353] In an embodiment, the numerical relationship satisfied by the code length threshold includes:

[0354] wherein ΔN is an integer less than ;

[0355] wherein N i is a base code length of an i-th base matrix in the base matrix set; N i+1 is a base code length of an i+1-th base matrix in the base matrix set; F i is a code length threshold used to distinguish the i-th base matrix and the i+1-th base matrix; wherein i+1 is a positive integer less than a number of base matrices in the base matrix set.

[0356] In an embodiment, the determination of the base code length of the base matrix includes:

[0357] determining a fifth difference value as a difference between the number of columns of the base matrix and the total puncturing number;

[0358] determining the base code length of the base matrix as an integer of a product of the lifting value and the fifth difference value.

[0359] The rounding manner includes at least one of:

[0360] rounding up;

[0361] rounding down;

[0362] rounding to the nearest;

[0363] The absolute value of the difference between the base code lengths corresponding to any two base matrices in the base matrix set is greater than or equal to a second preset difference threshold.

[0364] In an embodiment, the target code bit sequence is determined by encoding the to-be-encoded bit sequence using the target base matrix, including:

[0365] obtaining a boosting value matching the to-be-encoded bit sequence;

[0366] The first code bit sequence is determined by encoding the to-be-encoded bit sequence using the boosting value and the target base matrix;

[0367] The target code bit sequence is determined by performing bit selection on the first code bit sequence.

[0368] In an embodiment, the first code bit sequence is determined by encoding the to-be-encoded bit sequence using the boosting value and the target base matrix, including:

[0369] The parity check matrix corresponding to the to-be-encoded bit sequence is determined by performing matrix extension on the target base matrix based on the boosting value;

[0370] The first code bit sequence is determined by encoding the to-be-encoded bit sequence using the parity check matrix.

[0371] In an embodiment, since the code length required by the target code bit sequence is often different from the first code bit sequence, bit selection can be performed on the first code bit sequence to determine the target code bit sequence.

[0372] In an embodiment, the bit selection on the first code bit sequence includes at least one of:

[0373] The bit selection on the first code bit sequence is performed by using the required code length of the to-be-encoded bit sequence;

[0374] The bit selection on the first code bit sequence is performed by using the code rate of the to-be-encoded bit sequence.

[0375] In an embodiment, the bit selection on the first code bit sequence is performed by using the code rate of the to-be-encoded bit sequence, including:

[0376] The check column puncturing number is determined according to a code rate of the bit sequence to be encoded, a row number of the target base matrix, a lifting value, a length of the bit sequence to be encoded, and a system bit puncturing number.

[0377] The target encoded bit sequence is obtained by puncturing the system column bit puncturing number of bits in the first encoded bit sequence and the check column puncturing number of bits.

[0378] In an embodiment, after the target encoded bit sequence is determined, the method further includes:

[0379] All bits in the target encoded bit sequence, or part of the bits in the target encoded bit sequence, are sent to the second communication node.

[0380] In one exemplary embodiment, Figure 7 A structural schematic diagram of a data processing device provided by an embodiment of the present application is provided, and the data processing device is applied to a second communication node. As shown in the structural schematic diagram, Figure 7 The device includes:

[0381] The decoding sequence acquisition module 410 is configured to receive a bit sequence to be decoded.

[0382] The target matrix determination module 420 is configured to determine a target base matrix from the base matrix set according to decoding requirement information of the bit sequence to be decoded and support information of each base matrix in the base matrix set.

[0383] The target vector determination module 430 is configured to determine a target decoded bit sequence by decoding the bit sequence to be decoded through the target base matrix.

[0384] The base matrix set includes at least two base matrices.

[0385] In an embodiment, the decoding requirement information includes a code rate of the bit sequence to be decoded, and the support information includes a base code rate and a code rate threshold of each base matrix.

[0386] The target base matrix is determined from the base matrix set according to the decoding requirement information of the bit sequence to be decoded and the support information of each base matrix in the base matrix set, and the method includes:

[0387] The target base matrix is determined from the base matrix set according to a code rate of the bit sequence to be decoded and a base code rate and a code rate threshold of each base matrix in the base matrix set.

[0388] The code rate, the base code rate, and the code rate threshold are all real numbers greater than 0 and less than 1.

[0389] The absolute value of the difference between the base code rates corresponding to any two base matrices in the base matrix set is greater than or equal to a first preset difference threshold.

[0390] In an embodiment, in the case that the number of rows of each base matrix in the base matrix set is equal, and the number of columns of each base matrix is equal, the target base matrix is determined from the base matrix set according to the code rate of the bit sequence to be decoded, and the base code rate of each base matrix in the base matrix set and the code rate threshold, including at least one of the following:

[0391] In the case that the code rate of the bit sequence to be decoded is greater than or equal to a first code rate threshold, and less than a second code rate threshold, the latter base matrix in the adjacent base matrix distinguished by the first code rate threshold is determined as the target base matrix; wherein the first code rate threshold and the second code rate threshold are two adjacent code rate thresholds corresponding to the base matrix set in size;

[0392] In the case that the code rate of the bit sequence to be decoded is less than the smallest code rate threshold corresponding to the base matrix set, the base matrix with the smallest base code rate in the base matrix set is determined as the target base matrix;

[0393] In the case that the code rate of the bit sequence to be decoded is greater than or equal to the largest code rate threshold corresponding to the base matrix set, the base matrix with the largest base code rate in the base matrix set is determined as the target base matrix.

[0394] In an embodiment, the determination of the base code rate includes:

[0395] The difference between the number of columns and the number of rows of the base matrix is determined as a first difference value;

[0396] The difference between the number of columns of the base matrix and the total number of puncturing is determined as a second difference value;

[0397] The ratio of the first difference value to the second difference value is determined as the base code rate of the base matrix;

[0398] Wherein, the total number of puncturing is a non-negative real number less than the number of rows of the base matrix.

[0399] In an embodiment, the determination of the code rate threshold includes at least one of the following:

[0400] Determined by a preset expression;

[0401] Determined by a first preset code rate threshold table; wherein the first preset code rate threshold table contains the corresponding relationship between the code rate threshold and the base code rate interval;

[0402] Determined by a second preset code rate threshold table; wherein the second preset code rate threshold table contains the corresponding relationship between the code rate threshold, the base code rate interval and the promotion value interval;

[0403] determined by the third preset code rate threshold table; wherein the third preset code rate threshold table comprises a corresponding relationship between code rate threshold values and information bit intervals in which the base code rate intervals and the length of the to-be-decoded bit sequence are located;

[0404] determined by a preset procedure; wherein the preset procedure is a judgment statement based on the first preset code rate threshold table, the second preset code rate threshold table or the third preset code rate threshold table.

[0405] In an embodiment, the numerical relationship that the code rate threshold value satisfies in the preset expression comprises at least one of the following:

[0406] wherein |AR| is a real number less than .

[0407]

[0408] wherein R i is the base code rate of the i-th base matrix in the base matrix set; R i+1 is the base code rate of the i+1-th base matrix in the base matrix set; T i is the code rate threshold value used to distinguish the i-th base matrix from the i+1-th base matrix; wherein i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0409] In an embodiment, in the case that there are at least two base matrices in the base matrix set whose row numbers are not equal, column numbers are not equal, and the difference between the column number and the row number is equal, the target base matrix is determined from the base matrix set according to the code rate of the to-be-decoded bit sequence, and the base code rate and the code rate threshold value of each base matrix in the base matrix set, comprising at least one of the following:

[0410] In the case that the code rate of the to-be-decoded bit sequence is greater than or equal to the third code rate threshold value and less than the fourth code rate threshold value, the latter base matrix in the adjacent base matrices distinguished by the third code rate threshold value is determined as the target base matrix; wherein the third code rate threshold value and the fourth code rate threshold value are two adjacent code rate threshold values corresponding to the base matrix set in terms of numerical size.

[0411] In the case that the code rate of the to-be-decoded bit sequence is less than the smallest code rate threshold value corresponding to the base matrix set, the base matrix with the smallest base code rate in the base matrix set is determined as the target base matrix.

[0412] In the case that the code rate of the to-be-decoded bit sequence is greater than or equal to the largest code rate threshold value corresponding to the base matrix set, the base matrix with the largest base code rate in the base matrix set is determined as the target base matrix.

[0413] In an embodiment, the determination of the base code rate comprises:

[0414] determining a difference between the number of columns and the number of rows of the base matrix as a third difference value;

[0415] determining a difference between the number of columns of the base matrix and the maximum puncturing number as a fourth difference value;

[0416] determining a ratio of the third difference value and the number of columns of the base matrix as a minimum base code rate supported by the base matrix;

[0417] determining a ratio of the third difference value and the fourth difference value as a maximum base code rate supported by the base matrix;

[0418] wherein the maximum puncturing number is an integer greater than 1 and less than the number of rows of the base matrix.

[0419] In an embodiment, the code rate threshold is determined in the following manner:

[0420] by a preset expression;

[0421] by a fourth preset code rate threshold table, wherein the fourth preset code rate threshold table contains a corresponding relationship between the code rate threshold and the base code rate repetition interval;

[0422] by a fifth preset code rate threshold table, wherein the fifth preset code rate threshold table contains a corresponding relationship between the code rate threshold, the base code rate repetition interval and the lifting value interval;

[0423] by a sixth preset code rate threshold table, wherein the sixth preset code rate threshold table contains a corresponding relationship between the code rate threshold, the base code rate repetition interval and the information bit interval in which the length of the to-be-decoded bit sequence is located;

[0424] by a preset procedure, wherein the preset procedure is represented by a judgment statement based on the fourth preset code rate threshold table, the fifth preset code rate threshold table or the sixth preset code rate threshold table.

[0425] In an embodiment, the numerical relationship satisfied by the code length threshold in the preset expression includes at least one of the following:

[0426] wherein ΔR is a real number less than ;

[0427]

[0428] wherein is the maximum base code rate supported by the i-th base matrix in the base matrix set; is the minimum base code rate supported by the i+1-th base matrix in the base matrix set. ia code rate threshold used to distinguish the i-th base matrix from the i+1-th base matrix; wherein i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0429] In an embodiment, the decoding requirement information further comprises a requirement code length and a promotion value of the bit sequence to be decoded; the support information further comprises code length thresholds of the base matrices; wherein the requirement code length is a code length of the target decoded bit sequence. The target base matrix is determined from the base matrix set according to the decoding requirement information of the bit sequence to be decoded and the support information of the base matrices in the base matrix set, comprising:

[0430] The target base matrix is determined from the base matrix set according to the requirement code length and the promotion value of the bit sequence to be decoded and the code length thresholds of the base matrices in the base matrix set;

[0431] wherein the requirement code length, the promotion value and the code length threshold are all integers greater than 0.

[0432] In an embodiment, the target base matrix is determined from the base matrix set according to the requirement code length of the bit sequence to be decoded and the code length thresholds of the base matrices in the base matrix set, comprising:

[0433] In the case that the requirement code length of the bit sequence to be decoded is greater than or equal to a first code length threshold and less than a second code length threshold, the base matrix after the adjacent base matrix distinguished by the first code length threshold is determined as the target base matrix; wherein the first code length threshold and the second code length threshold are two adjacent code length thresholds corresponding to the base matrix set under the promotion value;

[0434] In the case that the requirement code length of the bit sequence to be decoded is less than the smallest code length threshold corresponding to the base matrix set, the base matrix with the smallest base code length under the promotion value in the base matrix set is determined as the target base matrix;

[0435] In the case that the requirement code length of the bit sequence to be decoded is greater than or equal to the largest code length threshold corresponding to the base matrix set, the base matrix with the largest base code length under the promotion value in the base matrix set is determined as the target base matrix.

[0436] In an embodiment, the code length threshold satisfies the following numerical relationship:

[0437] wherein ΔN is an integer less than .

[0438] wherein N i is the base code length of the i-th base matrix in the base matrix set; N i+1 is the base code length of the i+1-th base matrix in the base matrix set; F iA code length threshold used to distinguish the i-th base matrix from the i+1-th base matrix, wherein i+1 is a positive integer less than the number of base matrices in the base matrix set.

[0439] In an embodiment, the base matrix is determined in the following manner:

[0440] The difference between the number of columns of the base matrix and the total number of puncturing is determined as a fifth difference value;

[0441] The product of the lifting value and the fifth difference value is rounded to determine the base code length of the base matrix;

[0442] The rounding manner includes at least one of the following:

[0443] Upward rounding;

[0444] Downward rounding;

[0445] Nearest rounding;

[0446] The absolute value of the difference between the base code lengths corresponding to any two base matrices in the base matrix set under the lifting value is greater than or equal to a second preset difference threshold.

[0447] In an embodiment, the target decoding bit sequence is determined by decoding the to-be-decoded bit sequence using the target base matrix, including:

[0448] The lifting value matching the to-be-decoded bit sequence is obtained;

[0449] The first decoding bit sequence is determined by decoding the to-be-decoded bit sequence using the lifting value and the target base matrix;

[0450] The target decoding bit sequence is determined by performing bit selection on the first decoding bit sequence.

[0451] In an embodiment, the first decoding bit sequence is determined by decoding the to-be-decoded bit sequence using the lifting value and the target base matrix, including:

[0452] The parity check matrix corresponding to the to-be-decoded bit sequence is determined by performing matrix extension on the target base matrix based on the lifting value;

[0453] The first decoding bit sequence is determined by decoding the to-be-decoded bit sequence using the parity check matrix.

[0454] In an embodiment, since the length of the target decoding bit sequence is often different from that of the first decoding bit sequence, bit selection can be performed on the first decoding bit sequence to determine the target decoding bit sequence.

[0455] In an embodiment, the bit selection on the first decoding bit sequence includes at least one of the following:

[0456] bit-selecting the first decoded bit sequence by a required length of the target decoded bit sequence;

[0457] bit-selecting the first decoded bit sequence by a code rate of the target decoded bit sequence.

[0458] In an embodiment, the bit-selecting the first decoded bit sequence by a code rate of the target decoded bit sequence comprises:

[0459] determining a required length of the target decoded bit sequence according to the code rate of the target decoded bit sequence and a length of the bit sequence to be decoded, and obtaining the target decoded bit sequence from the first decoded bit sequence according to the required length of the target decoded bit sequence. In one example, the first decoded bit sequence is selected as the target decoded bit sequence by selecting the first target decoded bit sequence of the required length from the first decoded bit sequence.

[0460] The embodiments of the present application further provide a communication node, Figure 8 A structural schematic diagram of a communication node provided by the embodiments of the present application is shown in Figure 8 The communication node provided by the embodiments of the present application includes a memory 520, a processor 510, and a computer program stored in the memory and executable on the processor, and the processor 510 implements the above-mentioned data processing method when executing the program.

[0461] The communication node can further include a memory 520; the processor 510 in the communication node can be one or more, Figure 8 For example, the processor 510 in the foregoing embodiment is taken as an example; the memory 520 is configured to store one or more programs; the one or more programs are executed by the one or more processors 510, so that the one or more processors 510 implement the data processing method as described in the embodiments of the present application.

[0462] The communication node further includes a communication device 530, an input device 540, and an output device 550.

[0463] The processor 510, the memory 520, the communication device 530, the input device 540, and the output device 550 in the communication node are connected through a bus or other means, Figure 8 For example, the connection through the bus is taken as an example.

[0464] The input device 540 can be used to receive input digital or character information, and generate key signal input related to user settings and function control of the communication node. The output device 550 can include a display device such as a display screen.

[0465] The communication device 530 can include a receiver and a transmitter. The communication device 530 is configured to perform information receiving and transmitting communication under the control of the processor 510.

[0466] The memory 520, as a computer readable storage medium, can be configured to store software programs, computer executable programs and modules, such as program instructions / modules corresponding to the data processing method (for example, the encoding sequence obtaining module 310, the target matrix determining module 320 and the target sequence determining module 330 in the data processing device; or the decoding sequence obtaining module 410, the target matrix determining module 420 and the target vector determining module 430) described in the embodiments of the present application. The memory 520 can include a program storage area and a data storage area, wherein the program storage area can store an operating system and application programs required by at least one function; and the data storage area can store data created according to the use of the communication node, etc. In addition, the memory 520 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other non-volatile solid-state memory device. In some examples, the memory 520 can further include a memory remotely arranged with respect to the processor 510, and these remote memories can be connected to the communication node through a network. Examples of the above network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and a combination thereof.

[0467] The embodiments of the present application also provide a storage medium, which stores a computer program. The computer program is executed by a processor to implement the data processing method described in any of the embodiments of the present application.

[0468] Optionally, the data processing method is applied to a first communication node, and includes: obtaining a to-be-encoded bit sequence; determining a target base matrix from a base matrix set according to encoding requirement information of the to-be-encoded bit sequence and support information of each base matrix in the base matrix set; and encoding the to-be-encoded bit sequence by using the target base matrix to determine a target encoded bit sequence; wherein the base matrix set includes at least two base matrices.

[0469] Optionally, the data processing method is applied to a second communication node, and includes: receiving a to-be-decoded bit sequence; determining a target base matrix from a base matrix set according to decoding requirement information of the to-be-decoded bit sequence and support information of each base matrix in the base matrix set; and decoding the to-be-decoded bit sequence by using the target base matrix to determine a target decoded bit sequence; wherein the base matrix set includes at least two base matrices.

[0470] The computer storage medium of the embodiments of the present application can adopt any combination of one or more computer readable media. The computer readable medium can be a computer readable signal medium or a computer readable storage medium. The computer readable storage medium may, for example, but is not limited to, be: an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or apparatus, or any combination thereof. More specific examples (non-exhaustive list) of the computer readable storage medium include: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read only memory (ROM), an erasable programmable read only memory (EPROM), a flash memory, an optical fiber, a portable CD-ROM, an optical storage device, a magnetic storage device, or any suitable combination of the above. The computer readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, device or apparatus.

[0471] The computer readable signal medium can include a data signal propagating in baseband or propagated as a carrier wave in a propagation medium, in which computer readable program code is embodied. Such propagated data signal can take a variety of forms including, but not limited to, electro-magnetic, optical or any suitable combination thereof. The computer readable signal medium can also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate or transport program for use by or in connection with an instruction execution system, apparatus, or device.

[0472] The program code embodied on the computer readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire line, optical fiber cable, Radio Frequency (RF), etc., or any suitable combination thereof.

[0473] Computer program code for carrying out operations of the present application can be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer can be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection can be made to an external computer (for example, through the Internet using an Internet Service Provider).

[0474] Optionally, the embodiments of the present application further provide a computer program product, comprising a computer program, which, when executed by a processor, implements the data processing method provided by any of the embodiments of the present application.

[0475] The above merely provides exemplary embodiments of the present application, but shall not be used to limit the protective scope of the present application.

[0476] Those skilled in the art should understand that the term user terminal covers any suitable type of wireless user equipment, such as a mobile phone, a portable data processing apparatus, a portable web browser, or a vehicle-mounted mobile station.

[0477] Generally, the various embodiments of the present application can be implemented in hardware or special-purpose circuits, software, logic or any combination thereof. For example, some aspects can be implemented in hardware, while other aspects can be implemented in firmware or software which can be executed by a controller, microprocessor or other computing device, although the present application is not limited thereto.

[0478] Embodiments of the present application can be implemented by a data processor of a mobile device executing computer program instructions, for example in a processor entity, or by hardware, or by a combination of software and hardware. Computer program instructions can be in assemblies, Instruction Set Architecture (ISA), machine, machine-related, microcode, firmware, state setting data, or source code or object code written in any combination of one or more programming languages.

[0479] The block diagrams of any logical flow of the present application in the accompanying drawings can represent program steps or can represent interconnected logic circuits, modules, and functions, or can represent a combination of program steps and logic circuits, modules, and functions. The computer program can be stored on a memory. The memory can have any type suitable for the local technical environment and can be implemented using any suitable data storage technology, such as, but not limited to, a random access memory (RAM), a read-only memory (ROM), an optical storage device, and a system memory that is a combination of a memory device and a storage device. The computer readable media can include a non-transitory storage medium. The data processor can be of any type suitable to the local technical environment and can include, but is not limited to, a general purpose computer, a special purpose computer, a microprocessor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field-programmable gate array (FPGA), and a processor based on multi-core processor architecture.

[0480] A detailed description of exemplary embodiments of the present application has been provided above with reference to the accompanying drawings. However, various modifications and alterations of the above embodiments will be apparent to those skilled in the art without departing from the scope of the present application. Thus, the proper scope of the present application will be determined by the following claims.

Claims

1. A data processing method, characterized in that: Applied to a first communication node, comprising: Obtaining a bit sequence to be encoded; Determining a target basic matrix from the basic matrix set according to coding requirement information of the to-be-coded bit sequence and support information of each basic matrix in the basic matrix set; Encoding the to-be-encoded bit sequence using the target basic matrix to determine a target coded bit sequence; The basic matrix set includes at least two basic matrices.

2. The data processing method according to claim 1, wherein: The coding requirement information includes the code rate of the to-be-coded bit sequence; the support information includes the basic code rate and code rate threshold of each basic matrix; The step of determining a target basic matrix from the basic matrix set according to the coding requirement information of the to-be-coded bit sequence and the support information of each basic matrix in the basic matrix set includes: Determining a target basic matrix from the basic matrix set according to the code rate of the to-be-encoded bit sequence and the basic code rate and code rate threshold of each basic matrix in the basic matrix set; The bit rate, the basic bit rate, and the bit rate threshold are all real numbers greater than 0 and less than 1; The absolute value of the difference between the basic coding rates corresponding to any two basic matrices in the basic matrix set is greater than or equal to a first preset difference threshold.

3. The data processing method according to claim 2, characterized in that: When the number of rows of the basic matrices in the basic matrix set is equal and the number of columns of the basic matrices in the basic matrix set is equal, determining the target basic matrix from the basic matrix set according to the code rate of the to-be-encoded bit sequence and the basic code rate and code rate threshold of each basic matrix in the basic matrix set includes at least one of the following: When the code rate of the to-be-encoded bit sequence is greater than or equal to a first code rate threshold and less than a second code rate threshold, a subsequent basic matrix among adjacent basic matrices distinguished by the first code rate threshold is determined as a target basic matrix; wherein the first code rate threshold and the second code rate threshold are two code rate thresholds corresponding to the basic matrix set and having adjacent numerical values; When the code rate of the to-be-encoded bit sequence is less than the minimum code rate threshold corresponding to the basic matrix set, determining the basic matrix with the minimum basic code rate in the basic matrix set as the target basic matrix; When the code rate of the to-be-encoded bit sequence is greater than or equal to the maximum code rate threshold corresponding to the basic matrix set, the basic matrix with the maximum basic code rate in the basic matrix set is determined as the target basic matrix.

4. The data processing method according to claim 3, characterized in that: The method for determining the basic bit rate includes: Determine the difference between the number of columns and the number of rows of the basic matrix as a first difference; Determine the difference between the number of columns of the basic matrix and the total number of punctures as a second difference; Determining a ratio of the first difference to the second difference as a basic coding rate of the basic matrix; The total number of punctures is a non-negative real number that is smaller than the number of rows of the basic matrix.

5. The data processing method according to claim 3, wherein: The bit rate threshold is determined by at least one of the following methods: Determined by a preset expression; Determined by a first preset bit rate threshold table; wherein the first preset bit rate threshold table contains a correspondence between bit rate thresholds and basic bit rate intervals; Determined by a second preset bit rate threshold table; wherein the second preset bit rate threshold table includes a correspondence between bit rate thresholds, basic bit rate intervals, and boost value intervals; Determined by a third preset bit rate threshold table; wherein the third preset bit rate threshold table includes a correspondence between bit rate thresholds, basic bit rate intervals, and information bit intervals where the length of the bit sequence to be encoded is located; Determined by a preset process; wherein the preset process is represented by a judgment statement based on the first preset bit rate threshold table, the second preset bit rate threshold table or the third preset bit rate threshold table.

6. The data processing method according to claim 5, characterized in that: The numerical relationship satisfied by the bit rate threshold in the preset expression includes at least one of the following: Where |ΔR| is less than real number; Among them, R i is the basic code rate of the i-th basic matrix in the basic matrix set; R i+1 is the basic coding rate of the i+1th basic matrix in the basic matrix set; T i is a coding rate threshold for distinguishing the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

7. The data processing method according to claim 2, characterized in that: When there are at least two basic matrices in the basic matrix set having unequal numbers of rows and unequal numbers of columns, and having an equal difference between the number of columns and the number of rows, determining a target basic matrix from the basic matrix set according to the bit rate of the to-be-encoded bit sequence and the basic bit rate and bit rate threshold of each basic matrix in the basic matrix set includes at least one of the following: When the code rate of the to-be-encoded bit sequence is greater than or equal to a third code rate threshold and less than a fourth code rate threshold, determining a subsequent basic matrix among adjacent basic matrices distinguished by the third code rate threshold as a target basic matrix; wherein the third code rate threshold and the fourth code rate threshold are two code rate thresholds corresponding to the basic matrix set and having adjacent numerical values; When the code rate of the to-be-encoded bit sequence is less than the minimum code rate threshold corresponding to the basic matrix set, determining the basic matrix with the minimum basic code rate in the basic matrix set as the target basic matrix; When the code rate of the to-be-encoded bit sequence is greater than or equal to the maximum code rate threshold corresponding to the basic matrix set, the basic matrix with the maximum basic code rate in the basic matrix set is determined as the target basic matrix.

8. The data processing method according to claim 7, characterized in that: The method for determining the basic bit rate includes: Determine the difference between the number of columns and the number of rows of the basic matrix as a third difference; determining a difference between the number of columns of the basic matrix and the maximum number of punctures as a fourth difference; Determining a ratio of the third difference to the number of columns of the basic matrix as a minimum basic bit rate supported by the basic matrix; Determining a ratio of the third difference to the fourth difference as a maximum basic bit rate supported by the basic matrix; The maximum puncturing number is an integer greater than 1 and less than the number of rows of the basic matrix.

9. The data processing method according to claim 7, characterized in that: The bit rate threshold is determined by at least one of the following methods: Determined by a preset expression; Determined by a fourth preset bit rate threshold table; wherein the fourth preset bit rate threshold table contains a correspondence between bit rate thresholds and basic bit rate repetition intervals; Determined by a fifth preset bit rate threshold table; wherein the fifth preset bit rate threshold table includes a correspondence between bit rate thresholds, basic bit rate repetition intervals, and boost value intervals; Determined by a sixth preset code rate threshold table; wherein the sixth preset code rate threshold table includes a correspondence between code rate thresholds, a basic code rate repetition interval, and an information bit interval containing the length of the to-be-encoded bit sequence; Determined by a preset process; wherein, the preset process is represented by a judgment statement based on the fourth preset bit rate threshold table, the fifth preset bit rate threshold table or the sixth preset bit rate threshold table.

10. The data processing method according to claim 9, characterized in that: The numerical relationship satisfied by the code length threshold in the preset expression includes at least one of the following: Among them, ΔR is less than real number; in, is the maximum basic bit rate supported by the i-th basic matrix in the basic matrix set; is the minimum basic code rate supported by the i+1th basic matrix in the basic matrix set; T i is a coding rate threshold for distinguishing the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

11. The data processing method according to claim 1, wherein: The coding requirement information also includes the required code length and boost value of the to-be-encoded bit sequence; the support information also includes the code length threshold of each of the basic matrices; wherein the required code length is the code length of the target coded bit sequence; The step of determining a target basic matrix from the basic matrix set according to the coding requirement information of the to-be-coded bit sequence and the support information of each basic matrix in the basic matrix set includes: Determining a target basic matrix from the basic matrix set according to the required code length and boost value of the to-be-encoded bit sequence and the code length threshold of each basic matrix in the basic matrix set; The required code length, the improvement value, and the code length threshold are all integers greater than 0.

12. The data processing method according to claim 11, characterized in that: The step of determining a target basic matrix from the basic matrix set according to the required code length of the to-be-encoded bit sequence and the code length threshold of each basic matrix in the basic matrix set includes: When the required code length of the to-be-encoded bit sequence is greater than or equal to a first code length threshold and less than a second code length threshold, a subsequent basic matrix among adjacent basic matrices differentiated by the first code length threshold is determined as a target basic matrix; wherein the first code length threshold and the second code length threshold are two adjacent code length thresholds corresponding to the basic matrix set under the boost value; When the required code length of the to-be-encoded bit sequence is less than the minimum code length threshold corresponding to the basic matrix set, determining the basic matrix with the minimum basic code length under the boost value in the basic matrix set as the target basic matrix; When the required code length of the to-be-encoded bit sequence is greater than or equal to the maximum code length threshold corresponding to the basic matrix set, a basic matrix with the largest basic code length under the boost value in the basic matrix set is determined as a target basic matrix.

13. The data processing method according to claim 11, characterized in that: The numerical relationship satisfied by the code length threshold includes: Where ΔN is less than integer; Among them, N i is the basic code length of the i-th basic matrix in the basic matrix set; N i+1 is the basic code length of the i+1th basic matrix in the basic matrix set; F i is a code length threshold used to distinguish the i-th basic matrix from the i+1-th basic matrix; wherein i+1 is a positive integer less than the number of basic matrices in the basic matrix set.

14. The data processing method according to claim 13, wherein: The method for determining the basic code length of the basic matrix includes: determining a difference between the number of columns of the basic matrix and the total number of punctures as a fifth difference; rounding the product of the boost value and the fifth difference value to an integer and determining it as the basic code length of the basic matrix; The rounding method includes at least one of the following: Round up; Round down; Round to the nearest integer; The absolute value of the difference between the basic code lengths corresponding to any two basic matrices in the basic matrix set at the boost value is greater than or equal to a second preset difference threshold.

15. The data processing method according to claim 1, wherein: The step of encoding the to-be-encoded bit sequence by using the target basic matrix to determine a target coded bit sequence includes: Obtaining a boost value that matches the bit sequence to be encoded; Encoding the to-be-encoded bit sequence using the lifting value and the target fundamental matrix to determine a first encoded bit sequence; Bit selection is performed on the first coded bit sequence to determine a target coded bit sequence.

16. The data processing method according to claim 15, characterized in that: The step of encoding the to-be-encoded bit sequence by using the lifting value and the target fundamental matrix to determine a first encoded bit sequence includes: Performing matrix expansion on the target basic matrix based on the lifting value to determine a parity check matrix corresponding to the to-be-encoded bit sequence; The to-be-encoded bit sequence is encoded using the parity check matrix to determine a first coded bit sequence.

17. The data processing method according to claim 15, characterized in that: The performing bit selection on the first coded bit sequence includes at least one of the following: Performing bit selection on the first coding bit sequence according to the required code length of the to-be-coded bit sequence; Bit selection is performed on the first coded bit sequence according to the code rate of the to-be-coded bit sequence.

18. The data processing method according to claim 17, characterized in that: The performing bit selection on the first coded bit sequence according to the code rate of the to-be-coded bit sequence includes: Determining the number of check column punctures according to the code rate of the to-be-encoded bit sequence, the number of rows of the target fundamental matrix, the lifting value, the length of the to-be-encoded bit sequence, and the number of systematic bit punctures; Puncturing the systematic column bits by a number of bits and the parity column bits by a number of bits in the first coded bit sequence obtains a target coded bit sequence.

19. The data processing method according to claim 1, wherein: After determining the target coding bit sequence, the method further includes: All bits in the target coded bit sequence, or part of the bits in the target coded bit sequence, are sent to a second communication node.

20. A data processing method, characterized in that: Applied to a second communication node, comprising: receiving a bit sequence to be decoded; Determining a target basic matrix from the basic matrix set according to decoding requirement information of the to-be-decoded bit sequence and support information of each basic matrix in the basic matrix set; Decoding the to-be-decoded bit sequence using the target basic matrix to determine a target decoding bit sequence; The basic matrix set includes at least two basic matrices.

21. The data processing method according to claim 20, characterized in that: The decoding requirement information includes the code rate of the to-be-decoded bit sequence; the support information includes the basic code rate and code rate threshold of each basic matrix; Determining a target basic matrix from the basic matrix set according to decoding requirement information of the to-be-decoded bit sequence and support information of each basic matrix in the basic matrix set includes: Determining a target basic matrix from the basic matrix set according to the code rate of the to-be-decoded bit sequence and the basic code rate and code rate threshold of each basic matrix in the basic matrix set; The bit rate, the basic bit rate, and the bit rate threshold are all real numbers greater than 0 and less than 1; The absolute value of the difference between the basic coding rates corresponding to any two basic matrices in the basic matrix set is greater than or equal to a first preset difference threshold.

22. The data processing method according to claim 20, characterized in that: The decoding requirement information also includes the required code length and boost value of the to-be-decoded bit sequence; the support information also includes the code length threshold of each of the basic matrices; wherein the required code length is the code length of the target decoding bit sequence; Determining a target basic matrix from the basic matrix set according to decoding requirement information of the to-be-decoded bit sequence and support information of each basic matrix in the basic matrix set includes: Determining a target basic matrix from the basic matrix set according to the required code length and boost value of the to-be-decoded bit sequence and the code length threshold of each basic matrix in the basic matrix set; The required code length, the improvement value, and the code length threshold are all integers greater than 0.

23. A communication node, characterized in that: include: A memory, a processor, a program stored in the memory and executable on the processor, and a data bus for realizing connection and communication between the processor and the memory, wherein the program, when executed by the processor, realizes the steps of the data processing method according to any one of claims 1 to 22.

24. A storage medium for computer-readable storage, characterized in that: The storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the steps of the data processing method according to any one of claims 1 to 22.

25. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the steps of the data processing method according to any one of claims 1 to 22.