Data puncturing method and system based on SCCC protocol

By using the check bit non-punching address spacing in the SCCC protocol to calculate the non-punching address, the problem of large storage resource occupancy in the traditional punching solution is solved, and more efficient storage resource utilization is achieved.

CN119166078BActive Publication Date: 2025-03-07BEIJING RONGWEI TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411658913.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-20
Publication Date
2025-03-07
Estimated Expiration
2044-11-20

Smart Images

  • Figure CN119166078B_ABST
    Figure CN119166078B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of communications, and provides a data puncturing method and system based on the SCCC protocol, the method comprising: obtaining data to be punctured after being encoded in a target coding modulation mode based on the SCCC protocol, and storing the data to be punctured in a first memory; retrieving the check bit non-puncturing address spacing in the target coding modulation mode from a second memory; determining the check bit non-puncturing start address in the target coding modulation mode, and calculating the non-puncturing address according to the check bit non-puncturing start address and the check bit non-puncturing address spacing; reading the check bit data in the data to be punctured in the first memory according to the non-puncturing address, and obtaining the check bit data after puncturing. The solution provided by the present invention, because the puncturing link adopts the method of storing the non-puncturing address spacing, compared with the method of storing the puncturing address or the puncturing indication signal, the storage resource occupancy is effectively reduced, thereby reducing the storage resource consumption.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to a data punching method and system based on the SCCC protocol. Background Art

[0002] SCCC (Srial Concatnatd Convolutional Code) is a coding mechanism very similar to Turbo. The member decoders of SCCC are almost the same as Turbo codes, so it is also called serial Turbo code. In practical applications, based on the serial concatenated convolutional coding technology of CCSDS (Consultative Committee for Space Data Systems) 131.2-B-1 standard, the adaptive coding modulation mode of SCCC is specified. Its basic process is: outer coding, outer coding followed by puncturing, outer coding followed by interleaving, inner coding, inner coding followed by puncturing, and inner coding followed by interleaving. The SCCC protocol uses serial concatenated convolution and QPSK, 8PSK, 16PSK, 32PSK, and 64PSK modulation, and provides 27 coding modulation modes. The number of channel symbols in the coded modulation group is fixed at 8100, but the number of payloads is different.

[0003] In the related art, the puncturing address is usually stored in ROM (Read Only Memory), and taken out for puncturing when needed. Or the puncturing position is stored in ROM in the form of a puncturing indication signal, and taken out when puncturing is required, and puncturing is performed when the puncturing indication signal is high. However, since the SCCC protocol has 27 coding modulation modes, their lengths are different and the puncturing positions are inconsistent, the use of the above two puncturing schemes requires the storage of all the puncturing addresses or puncturing indication signals corresponding to the 27 coding modulation modes, which occupies a large amount of storage resources. Summary of the invention

[0004] The present invention provides a data puncturing method and system based on the SCCC protocol, which is used to solve the defect that the traditional puncturing scheme needs to store all the puncturing addresses or puncturing indication signals corresponding to 27 coding modulation modes, and occupies a large amount of storage resources.

[0005] On the one hand, the present invention provides a data puncturing method based on the SCCC protocol, comprising:

[0006] Acquire the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol, and store the data to be punctured in the first memory;

[0007] Retrieving the check bit non-puncturing address spacing corresponding to the target coding modulation mode from the second memory; wherein the second memory pre-stores the check bit non-puncturing address spacing corresponding to each coding modulation mode in the SCCC protocol;

[0008] Determine the check bit non-puncturing start address under the target coding modulation mode, and calculate the non-puncturing address according to the check bit non-puncturing start address and the corresponding check bit non-puncturing address spacing under the target coding modulation mode;

[0009] According to the non-puncturing address, the check bit data in the data to be punctured in the first memory is read to obtain the check bit data after puncturing.

[0010] According to the data puncturing method based on the SCCC protocol provided by the present invention, the corresponding check bit non-puncturing address spacing in each coding modulation mode is obtained by the following process:

[0011] According to the number of data input bits in each coding modulation mode, the actual value of the puncturing position corresponding to each of the data input bits is calculated;

[0012] Establishing a puncturing information table corresponding to each coding modulation mode, and obtaining a theoretical value of a puncturing position corresponding to each data input bit number from the puncturing information table;

[0013] Compare the actual value of the punching position corresponding to each of the data input bit numbers with the theoretical value of the punching position to obtain a comparison result;

[0014] Determine a simplified data sequence corresponding to each coding modulation mode according to a comparison result corresponding to each of the data input bit numbers;

[0015] The simplified data sequence is used to characterize the corresponding check bit non-punctured address spacing in each coding modulation mode.

[0016] According to the data puncturing method based on the SCCC protocol provided by the present invention, determining the simplified data sequence corresponding to each coding modulation mode according to the comparison result corresponding to each data input bit number includes:

[0017] Extracting the target data input digits where the comparison result is that the actual punching position value is different from the theoretical punching position value;

[0018] Setting the position corresponding to the number of bits of the target data input as a non-punching position;

[0019] Establishing a position data sequence corresponding to the non-punctured position in each coding modulation mode;

[0020] A simplified data sequence corresponding to each coding modulation mode is determined according to the position data sequence corresponding to the non-punctured position.

[0021] According to the data puncturing method based on the SCCC protocol provided by the present invention, determining the simplified data sequence corresponding to each coding modulation mode according to the position data sequence corresponding to the non-puncturing position includes:

[0022] Calculating the address spacing value between every two adjacent non-puncturing positions in the position data sequence corresponding to the non-puncturing positions;

[0023] A simplified data sequence corresponding to each coding modulation mode is established according to the address spacing value between each adjacent non-punctured position.

[0024] According to the data puncturing method based on the SCCC protocol provided by the present invention, the actual value of the puncturing position corresponding to each data input bit number is calculated according to the data input bit number in each coding modulation mode, including:

[0025] According to each data input bit number and multiple fixed parameter values ​​in the SCCC protocol, the intermediate parameter value corresponding to each data input bit number is calculated;

[0026] Perform modulo operation on the intermediate parameter value and 300 to calculate the actual value of the punching position corresponding to each number of data input bits.

[0027] According to the data puncturing method based on the SCCC protocol provided by the present invention, the non-puncturing address is calculated according to the check bit non-puncturing start address and the check bit non-puncturing address spacing corresponding to the target coding modulation mode, including:

[0028] Using the check bit non-punctured start address as the first non-punctured address;

[0029] The check bit non-punctured address spacing corresponding to the target coding modulation mode is sequentially accumulated with the previous non-punctured address to obtain each non-punctured address.

[0030] According to the data puncturing method based on the SCCC protocol provided by the present invention, reading the check bit data in the data to be punctured in the first memory according to the non-punctured address includes:

[0031] Read the check bit data in the to-be-punctured data in the first memory beat by beat according to the non-punctured address determined in each beat; or

[0032] According to the multiple non-puncturing addresses determined in each beat, the check bit data in the to-be-punctured data in the first memory is synchronously read.

[0033] According to the data puncturing method based on the SCCC protocol provided by the present invention, the method further includes:

[0034] Retrieving the information bit puncturing address spacing corresponding to the target coding modulation mode from the second memory; wherein the second memory pre-stores the information bit puncturing address spacing corresponding to each coding modulation mode in the SCCC protocol;

[0035] Determine the information bit puncturing start address under the target coding modulation mode, and calculate the puncturing address according to the information bit puncturing start address and the corresponding information bit puncturing address spacing under the target coding modulation mode;

[0036] According to the puncturing address, the information bit data in the data to be punctured in the first memory is read to obtain the information bit data after puncturing.

[0037] According to the data puncturing method based on the SCCC protocol provided by the present invention, the information bit data in the data to be punctured in the first memory is read according to the puncturing address to obtain the information bit data after puncturing, including:

[0038] According to a puncturing address determined in each beat, read the information bit data in the data to be punctured in the first memory beat by beat; or

[0039] According to the multiple puncturing addresses determined in each beat, the information bit data in the data to be punctured in the first memory is synchronously read.

[0040] On the other hand, the present invention also provides a data puncturing system based on the SCCC protocol, comprising:

[0041] A first memory is used to store the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol;

[0042] The second memory is used to store the corresponding check bit non-punctured address spacing of each coding modulation mode in the SCCC protocol;

[0043] A puncturer is connected to the first memory and the second memory respectively, and the puncturer is used to execute any of the above-mentioned data puncturing methods based on the SCCC protocol.

[0044] The data puncturing method and system based on the SCCC protocol provided by the present invention obtains the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol, stores the data to be punctured in the first memory, and retrieves the corresponding check bit non-puncturing address spacing under the target coding modulation mode from the second memory, determines the check bit non-puncturing start address under the target coding modulation mode, and calculates the non-puncturing address according to the check bit non-puncturing start address and the check bit non-puncturing address spacing corresponding to the target coding modulation mode, reads the check bit data in the data to be punctured in the first memory according to the non-puncturing address, and obtains the check bit data after puncturing. Since the puncturing link adopts the method of storing the non-puncturing address spacing, compared with the method of storing the puncturing address or the puncturing indication signal, the storage resource occupancy is effectively reduced, thereby reducing the storage resource consumption. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0046] Figure 1 1 is a flow chart of a data puncturing method based on the SCCC protocol provided in an embodiment of the present invention;

[0047] Figure 2 Schematic diagram of the principle of the check bit data puncturing process in an embodiment of the present invention;

[0048] Figure 3 is a schematic diagram of the structure of a data puncturing system based on the SCCC protocol provided in an embodiment of the present invention;

[0049] Figure 4 Schematic diagram of the structure of the puncher in the embodiment of the present invention. DETAILED DESCRIPTION

[0050] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0051] Combine the following Figures 1 to 4 The detailed scheme of the data punching method and system based on the SCCC protocol provided in the embodiment of the present invention is described.

[0052] Figure 1 It is a flowchart of a data punching method based on the SCCC protocol provided in an embodiment of the present invention.

[0053] like Figure 1 As shown, the data puncturing method based on the SCCC protocol provided in an embodiment of the present invention can be performed by a puncturer after internal coding, and the method mainly includes the following steps:

[0054] Step 110: Obtain the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol, and store the data to be punctured in the first memory.

[0055] This embodiment mainly focuses on the puncturing stage after inner coding. Therefore, the data source of the puncturing stage is the data to be punctured after inner coding in the target coding modulation mode based on the SCCC protocol. It can be understood that the target coding modulation mode refers to one of the 27 coding modulation modes in the SCCC protocol.

[0056] In practical applications, the first memory may be a RAM (Random Access Memory). It is understandable that the puncturing operation is mainly to regularly delete or not send certain bits in the data to be punctured, and the main purpose is to improve the code rate and bandwidth utilization.

[0057] Step 120: Retrieve the corresponding check bit non-punctured address spacing in the target coding modulation mode from the second memory; wherein the second memory pre-stores the corresponding check bit non-punctured address spacings in each coding modulation mode in the SCCC protocol.

[0058] In the present embodiment, considering that the 27 coding modulation modes have different data puncturing methods and puncturing positions for the information bits and check bits, and the number of puncturing corresponding to the check bit data is relatively large, in order to reduce the amount of data storage, the present embodiment only pre-stores the corresponding check bit non-puncturing address spacing under each coding modulation mode in the second memory, which is convenient for the subsequent rapid determination of the non-puncturing position, and can greatly reduce the amount of storage resources occupied.

[0059] In practical applications, the second memory may be a ROM, and the check bit non-puncturing address spacing may represent the address spacing between two adjacent non-puncturing positions corresponding to the check bits.

[0060] Step 130: Determine the check bit non-puncturing start address in the target coding modulation mode, and calculate the non-puncturing address according to the check bit non-puncturing start address and the corresponding check bit non-puncturing address spacing in the target coding modulation mode.

[0061] It can be understood that by continuously calculating the non-punched address through the check bit non-punched starting address and the pre-stored check bit non-punched address spacing, the non-punched position can be determined. Since the number of non-punched holes corresponding to the check bit data is small, the amount of data calculation in the punching link can be reduced.

[0062] Step 140: Read the check bit data in the data to be punched in the first memory according to the non-punched address to obtain the check bit data after punching.

[0063] In this embodiment, in the punching process, the check bit data in the data to be punched can be read according to the non-punching address, the data at the non-punching position can be read out, and the data at the punching position can be skipped, thereby realizing the punching operation of the check bit data in the data to be punched. Since only the check bit non-punching address spacing in each coding modulation mode is stored during the punching process, the punching operation of the check bit data in the data to be punched can be realized, and the data storage capacity is effectively low, thereby effectively reducing the consumption of storage resources.

[0064] In one embodiment, the check bit non-punctured address spacing corresponding to each coding modulation mode can be obtained by the following process:

[0065] In the first step, according to the number of data input bits in each coding modulation mode, the actual value of the puncturing position corresponding to each data input bit is calculated.

[0066] In a specific implementation, according to the number of data input bits in each coding modulation mode, the actual value of the puncturing position corresponding to each data input bit is calculated, specifically including:

[0067] Firstly, according to each data input bit number and a plurality of fixed parameter values ​​in the SCCC protocol, an intermediate parameter value corresponding to each data input bit number is calculated.

[0068] In this embodiment, the calculation formula of the intermediate parameter value is as follows:

[0069] (1)

[0070] Where π(i) is the intermediate parameter value, i is the number of data input bits, W, α, and β are all fixed parameter values ​​in the SCCC protocol, mod is the modulus operator, and I is the check bit data length.

[0071] Then, the modulo operation is performed on the intermediate parameter value and 300 to calculate the actual value of the punching position corresponding to each data input bit number.

[0072] In this embodiment, the calculation formula of the actual value of the punching position is as follows:

[0073] j=π(i)mod300(2)

[0074] Where j is the actual value of the punching position, π(i) is the intermediate parameter value, and mod is the modulo operator.

[0075] The second step is to establish a puncturing information table corresponding to each coding modulation mode, and obtain the theoretical value of the puncturing position corresponding to each data input bit number from the puncturing information table.

[0076] It is understandable that, since the payload numbers of the 27 coding modulation modes are different, the information bit and check bit lengths of the data to be punctured after inner coding are also different, but the number of symbols of the same coding modulation mode is the same. Therefore, puncturing operations of different lengths and positions can be performed for the ACM (Address Complete Message) numbers corresponding to different coding modulation modes.

[0077] For example, for ACM1, the data length of the information bit and the check bit of the data to be punched after the internal coding is 8642, and the information bit does not need to be punched, while the check bit needs to be punched for 1084 bits. For ACM9, the data length of the information bit and the check bit of the data to be punched after the internal coding is 16922, and the information bit needs to be punched for 452 bits, and the check bit needs to be punched for 9092 bits. Since the number of punches of the check bit is large, in order to reduce the storage pressure, this embodiment adopts the method of storing the non-punched address spacing of the check bit, and each beat calculates the non-punched position of the next beat according to the non-punched start address of the current beat and the non-punched address spacing of the check bit, thereby greatly reducing the resource consumption of ROM.

[0078] In practical applications, each coding modulation mode corresponds to a puncturing information table, and then the puncturing pattern corresponding to each coding modulation mode (ie, ACM number) can be obtained according to the puncturing information table. The puncturing information table corresponding to a certain coding modulation mode can be referred to in Table 1 below.

[0079] Table 1 The corresponding puncturing information table for a certain coding modulation mode

[0080]

[0081]

[0082] Referring to Table 1 above, the theoretical value of the punch position corresponding to each data input bit number in the punch information table is the value corresponding to the Punct.Pos. column, where Index represents index, Sur represents surface, Rate represents rate, and Punct.Pos. represents position.

[0083] The third step is to compare the actual value of the punching position corresponding to each data input bit number with the theoretical value of the punching position to obtain the comparison result.

[0084] It can be understood that if the comparison result is that the actual calculated value of the punching position is equal to the theoretical value of the punching position, then it means that the position corresponding to the number of data input bits is the punching position. If the comparison result is that the actual calculated value of the punching position is not equal to the theoretical value of the punching position, then it means that the position corresponding to the number of data input bits is the non-punching position.

[0085] The fourth step is to determine the simplified data sequence corresponding to each coding modulation mode according to the comparison result corresponding to each data input bit number.

[0086] In a specific implementation, determining the simplified data sequence corresponding to each coding modulation mode according to the comparison result corresponding to each data input bit number specifically includes:

[0087] First, extract the target data input bit number whose comparison result is that the actual value of the punching position is different from the theoretical value of the punching position.

[0088] Taking ACM number ACM3 as an example, through the SCCC protocol, we can know that the payload number is 5758. After external coding and puncturing interleaving, and then after internal coding, the information bit and check bit length of the data to be punctured are both 12602. The information bit needs to be punctured for 1092 bits, and the check bit needs to be punctured for 7912 bits. The total length of the data after puncturing is 16200 bits, which is 8100 symbols after QPSK modulation.

[0089] According to the SCCC protocol, the Sur value of ACM3 is 274. By referring to Table 1, it can be found that the theoretical values ​​of the puncture positions are 76, 1, 145, ..., 190, etc. After comparison, the number of target data input bits whose actual puncture position values ​​are different from the theoretical puncture position values ​​can be determined.

[0090] Then, the position corresponding to the number of target data input bits is set as a non-puncturing position.

[0091] Combined with Table 1 above, taking the first 15 positions as examples, the target data input bit numbers are 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, and 18 respectively.

[0092] Then, a position data sequence corresponding to the non-punctured position in each coding modulation mode is established.

[0093] According to the target data input bit number determined above, the position data sequence corresponding to the non-punctured positions can be obtained as (1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 18).

[0094] Finally, the simplified data sequence corresponding to each coding modulation mode is determined according to the position data sequence corresponding to the non-punctured position.

[0095] In a specific implementation, determining a simplified data sequence corresponding to each coding modulation mode according to a position data sequence corresponding to a non-punctured position specifically includes:

[0096] First, the address spacing value between every two adjacent non-puncturing positions in the position data sequence corresponding to the non-puncturing positions is calculated.

[0097] Then, a simplified data sequence corresponding to each coding modulation mode is established according to the address spacing value between each adjacent non-punctured position.

[0098] Still taking the above example as an example, according to the position data sequence (1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 18) obtained above, the first non-puncturing position 1 in the position data sequence is used as the first address spacing value in the simplified data sequence, and then the second non-puncturing position is subtracted from the first non-puncturing position in turn, that is, 2-1, to obtain the second address spacing value 1 in the simplified data sequence, and then the third non-puncturing position in the position data sequence is subtracted from the second non-puncturing position, that is, 4-2, to obtain the third address spacing value 2 in the simplified data sequence, and then, according to the above data processing method, the address spacing value between each two adjacent non-puncturing positions is calculated in turn, and the simplified data sequence can be obtained as (1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1). It is not difficult to find that this embodiment only uses a 2-bit bit width when storing data, which can save a lot of storage resources compared to the method of directly storing the puncturing address or puncturing indication signal.

[0099] For another example, suppose the length of the data to be punctured is 20 bits, set a0 to a 19 The non-punched positions are a0, a4, a9, a 15 、a 17 , then the position data sequence corresponding to the non-punctured position is (0, 4, 9, 15, 17), and the simplified data sequence obtained by calculating the address spacing value between every two adjacent non-punctured positions in the position data sequence is (0, 4, 5, 6, 2).

[0100] The fifth step is to represent the corresponding check bit non-punctured address spacing in each coding modulation mode by simplifying the data sequence.

[0101] In practical applications, the punching link can read the first number 1 from the simplified data sequence stored in the second memory, and the address is the starting address, and the check bit data corresponding to address 1 is read from the first memory accordingly. Then the next number 1 is read from the simplified data sequence stored in the second memory, and the next non-punched address is 1+1=2. By continuously accumulating the data in the simplified data sequence in the second memory, the address of the non-punched position, that is, the non-punched address, can be restored, and then the corresponding check bit data can be continuously read from the first memory to implement the punching operation of the check bit data.

[0102] In one embodiment, the non-punctured address is calculated according to the check bit non-punctured start address and the check bit non-punctured address spacing corresponding to the target coding modulation mode, specifically including:

[0103] First, the check bit non-puncturing start address is used as the first non-puncturing address.

[0104] Then, the check bit non-punctured address spacing corresponding to the target coding modulation mode is sequentially accumulated with the previous non-punctured address to obtain each non-punctured address.

[0105] For example, when the ACM number is ACM1, the information bit does not need to be punctured, and the number of punctures of the check bit is 1084. In ACM1, the check bit non-puncture start address and the information bit puncture start address are both 0, while in ACM2, the check bit non-puncture start address is 1085, and the information bit puncture start address is 0. The non-puncture address register is used to continuously accumulate the non-puncture address spacing to generate the corresponding non-puncture address.

[0106] See also Figure 2 For example, the second memory stores n non-punctured address intervals, namely A0, A1, A2, ..., A n , taking the first three non-punched addresses taken from the second memory with the spacing of A0, A1, and A2 respectively, as an example, different ACM numbers correspond to different check bit non-punched start addresses, then the first non-punched address is B0=A0, the second non-punched address is B1=B0+A1, the third non-punched address is B2=B1+A2, and so on, the nth non-punched address is B n =B n-1 +A n , so that each non-perforated address can be obtained. Subsequently, the check bit data corresponding to the non-perforated position is read from the first memory according to the obtained non-perforated address, and the data after perforation, specifically the check bit data after perforation, can be obtained.

[0107] In one embodiment, reading the check bit data in the to-be-punctured data in the first memory according to the non-punctured address specifically includes:

[0108] Read the check bit data in the data to be punctured in the first memory beat by beat according to a non-punctured address determined in each beat; or

[0109] According to the multiple non-puncturing addresses determined in each beat, the check bit data in the data to be punctured in the first memory is synchronously read.

[0110] It should be noted that, in the present embodiment, the process of reading the check bit data in the data to be punched can be performed by reading the data corresponding to a non-punctured address in each beat, or multiple check bit non-punctured address intervals can be read out at one time in one beat, thereby accumulating and generating multiple non-punctured addresses in sequence in one beat to realize parallel read operations.

[0111] In one embodiment, the data puncturing method based on the SCCC protocol may further include:

[0112] The first step is to retrieve the corresponding information bit puncturing address spacing under the target coding modulation mode from the second memory; wherein the second memory pre-stores the corresponding information bit puncturing address spacing of each coding modulation mode in the SCCC protocol.

[0113] In this embodiment, the information bit puncturing address spacing corresponding to each coding modulation mode can be obtained through the following process:

[0114] Firstly, according to the number of data input bits in each coding modulation mode, the actual value of the puncturing position corresponding to each data input bit is calculated.

[0115] Then, a puncturing information table corresponding to each coding modulation mode is established, and a theoretical value of a puncturing position corresponding to each data input bit number is obtained from the puncturing information table.

[0116] The above-mentioned process of determining the actual value of the puncture position and the theoretical value of the puncture position is consistent with the process of determining the spacing between the check bit and the non-puncture address, and will not be repeated here.

[0117] Subsequently, the data at which the actual punching position value is equal to the theoretical punching position value is input into the position where the digit is located and is set as the punching position.

[0118] Finally, according to the puncturing positions, a puncturing data sequence corresponding to each coding modulation mode is established, and the puncturing data sequence is used to represent the corresponding information bit puncturing address spacing under each coding modulation mode.

[0119] The second step is to determine the information bit puncturing start address under the target coding modulation mode, and calculate the puncturing address according to the information bit puncturing start address and the corresponding information bit puncturing address spacing under the target coding modulation mode.

[0120] The third step is to read the information bit data in the data to be punctured in the first memory according to the puncturing address to obtain the information bit data after puncturing.

[0121] It can be understood that since the number of information bit punchings is small, the information bit punching address spacing can be directly stored when storing data, so that the punching position can be continuously calculated in the punching link. In the process of reading the information bit data, the punching position is skipped and only the data at the non-punched position is read out, thereby realizing the punching operation of the information bit data.

[0122] In one embodiment, reading information bit data in the data to be punctured in the first memory according to the puncturing address to obtain the information bit data after puncturing specifically includes:

[0123] According to a puncturing address determined in each beat, information bit data in the data to be punctured in the first memory is read beat by beat; or,

[0124] According to the multiple puncturing addresses determined in each beat, the information bit data in the data to be punctured in the first memory is synchronously read.

[0125] It should be noted that, in the present embodiment, the process of reading the information bit data in the data to be punched can be performed by reading the data corresponding to a punching address in each beat, or multiple information bit punching address spacings can be read at one time in one beat, thereby accumulating and generating multiple punching addresses in sequence in one beat to realize parallel read operations.

[0126] In actual applications, the process of punching the information bit data is basically the same as the principle of the punching operation on the check bit data. The only difference is that the second memory stores the information bit punching address spacing, and the subsequent step of punching the information bit data obtains the punching address. Therefore, when reading the data, the data at the punching position corresponding to the punching address needs to be skipped.

[0127] In summary, the data punching method based on the SCCC protocol provided in the embodiment of the present invention greatly reduces the resource usage of ROM compared with the traditional data punching scheme, and can realize parallel processing. In the SCCC (coding) protocol, there are 27 coding modulation modes of different lengths, and the corresponding information bits and check bits have different punching positions and punching numbers. Using the method of storing the punching address, at least 363636 address data with a bit width of 16 bits must be stored. Using the method of storing the punching indication signal, 1854108 1-bit wide data must also be stored, occupying a large amount of BRAM resources. After adopting the solution of storing the address spacing in this embodiment, the storage bit width is reduced to 6Bit, which reduces the BRAM resource consumption by 80% compared with the method of directly storing the punching address, and reduces the BRAM resource consumption by 28% compared with the method of storing the punching indication signal, and can support parallel read operations of data, and the punching efficiency is effectively improved.

[0128] Based on the same general inventive concept, the present invention also protects a data puncturing system based on the SCCC protocol. The data puncturing system based on the SCCC protocol provided by the present invention is described below. The data puncturing system based on the SCCC protocol described below and the data puncturing method based on the SCCC protocol described above can be referenced to each other.

[0129] Figure 3 A schematic diagram of the structure of a data puncturing system based on the SCCC protocol provided in an embodiment of the present invention is shown.

[0130] See also Figure 3 The data puncturing system based on the SCCC protocol provided in an embodiment of the present invention specifically includes:

[0131] The first memory 210 is used to store the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol.

[0132] The second memory 220 is used to store the corresponding check bit non-punctured address spacing in each coding modulation mode in the SCCC protocol.

[0133] The puncher 230 is connected to the first memory 210 and the second memory 220 respectively, and is used to execute the data punching method based on the SCCC protocol provided in the above embodiments.

[0134] It is understandable that, in this embodiment, the puncher 230 adopts the improved punching method described above, and uses a method of storing intermediate values, that is, a method of storing address spacing, to indirectly calculate the non-punching address or the punching address, compared to the previous method of directly storing the punching address or the punching indication signal. This method reduces the data bit width to be stored and the number of addresses to be stored, thereby greatly reducing the storage resource usage without affecting performance.

[0135] Figure 4 It is a schematic diagram of the structure of an electronic device provided by an embodiment of the present invention.

[0136] like Figure 4 As shown, the electronic device may include: a processor 310, a communication interface 320, a memory 330 and a communication bus 340, wherein the processor 310, the communication interface 320 and the memory 330 communicate with each other through the communication bus 340. The processor 310 may call the logic instructions in the memory 330 to execute the data puncturing method based on the SCCC protocol provided in the above embodiments.

[0137] In addition, the logic instructions in the above-mentioned memory 330 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.

[0138] On the other hand, the present invention also provides a computer program product, which includes a computer program. The computer program can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the data punching method based on the SCCC protocol provided in the above-mentioned embodiments.

[0139] On the other hand, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the data puncturing method based on the SCCC protocol provided in the above-mentioned embodiments.

[0140] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.

[0141] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.

[0142] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A data puncturing method based on the SCCC protocol, characterized in that: include: Acquire the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol, and store the data to be punctured in the first memory; Retrieve the check bit non-puncturing address spacing corresponding to the target coding and modulation mode from the second memory; wherein the check bit non-puncturing address spacing corresponding to each coding and modulation mode in the SCCC protocol is pre-stored in the second memory; the check bit non-puncturing address spacing corresponding to each coding and modulation mode is obtained through the following process: according to the number of data input bits in each coding and modulation mode, calculate the actual value of the puncturing position corresponding to each data input bit; establish a puncturing information table corresponding to each coding and modulation mode, and obtain the theoretical value of the puncturing position corresponding to each data input bit from the puncturing information table; compare the actual value of the puncturing position corresponding to each data input bit with the theoretical value of the puncturing position to obtain a comparison result; determine the simplified data sequence corresponding to each coding and modulation mode according to the comparison result corresponding to each data input bit; characterize the check bit non-puncturing address spacing corresponding to each coding and modulation mode by the simplified data sequence; Determine the check bit non-puncturing start address under the target coding modulation mode, and calculate the non-puncturing address according to the check bit non-puncturing start address and the corresponding check bit non-puncturing address spacing under the target coding modulation mode; According to the non-puncturing address, the check bit data in the data to be punctured in the first memory is read to obtain the check bit data after puncturing.

2. The data puncturing method based on the SCCC protocol according to claim 1, characterized in that: The step of determining the simplified data sequence corresponding to each coding modulation mode according to the comparison result corresponding to each data input bit number includes: Extracting the target data input digits where the comparison result is that the actual punching position value is different from the theoretical punching position value; Setting the position corresponding to the number of bits of the target data input as a non-punching position; Establishing a position data sequence corresponding to the non-punctured position in each coding modulation mode; A simplified data sequence corresponding to each coding modulation mode is determined according to the position data sequence corresponding to the non-punctured position.

3. The data puncturing method based on the SCCC protocol according to claim 2, characterized in that: The determining, according to the position data sequence corresponding to the non-punctured position, a simplified data sequence corresponding to each coding modulation mode comprises: Calculating the address spacing value between every two adjacent non-puncturing positions in the position data sequence corresponding to the non-puncturing positions; A simplified data sequence corresponding to each coding modulation mode is established according to the address spacing value between each adjacent non-punctured position.

4. The data puncturing method based on the SCCC protocol according to claim 1, characterized in that: The step of calculating the actual puncturing position value corresponding to each data input bit number according to each coding modulation mode includes: According to each data input bit number and multiple fixed parameter values ​​in the SCCC protocol, the intermediate parameter value corresponding to each data input bit number is calculated; Perform modulo operation on the intermediate parameter value and 300 to calculate the actual value of the punching position corresponding to each number of data input bits.

5. The data puncturing method based on the SCCC protocol according to claim 1, characterized in that: The calculating the non-punctured address according to the check bit non-punctured start address and the check bit non-punctured address spacing corresponding to the target coding modulation mode includes: Using the check bit non-punctured start address as the first non-punctured address; The check bit non-punctured address spacing corresponding to the target coding modulation mode is sequentially accumulated with the previous non-punctured address to obtain each non-punctured address.

6. The data puncturing method based on the SCCC protocol according to claim 1, characterized in that: The step of reading the check bit data in the to-be-punctured data in the first memory according to the non-punctured address includes: Read the check bit data in the to-be-punctured data in the first memory beat by beat according to the non-punctured address determined in each beat; or According to the multiple non-puncturing addresses determined in each beat, the check bit data in the to-be-punctured data in the first memory is synchronously read.

7. The data puncturing method based on the SCCC protocol according to claim 1, characterized in that: The method further comprises: Retrieving the information bit puncturing address spacing corresponding to the target coding modulation mode from the second memory; wherein the second memory pre-stores the information bit puncturing address spacing corresponding to each coding modulation mode in the SCCC protocol; Determine the information bit puncturing start address under the target coding modulation mode, and calculate the puncturing address according to the information bit puncturing start address and the corresponding information bit puncturing address spacing under the target coding modulation mode; According to the puncturing address, the information bit data in the data to be punctured in the first memory is read to obtain the information bit data after puncturing.

8. The data puncturing method based on the SCCC protocol according to claim 1, characterized in that: The step of reading the information bit data in the data to be punctured in the first memory according to the puncturing address to obtain the information bit data after puncturing includes: According to a puncturing address determined in each beat, read the information bit data in the data to be punctured in the first memory beat by beat; or According to the multiple puncturing addresses determined in each beat, the information bit data in the data to be punctured in the first memory is synchronously read.

9. A data puncturing system based on the SCCC protocol, characterized in that: include: A first memory is used to store the data to be punctured after being encoded in the target coding modulation mode based on the SCCC protocol; The second memory is used to store the corresponding check bit non-punctured address spacing of each coding modulation mode in the SCCC protocol; A puncturer is connected to the first memory and the second memory respectively, and the puncturer is used to execute the data puncturing method based on the SCCC protocol as described in any one of claims 1 to 8.

Citation Information

Patent Citations

  • Coded cooperation based on punched polar codes

    CN106100794A

  • Data sending method, data receiving method and related equipment

    CN108696936A