WO2018127156A1 - 编码方法和编码器 - Google Patents

编码方法和编码器 Download PDF

Info

Publication number
WO2018127156A1
WO2018127156A1 PCT/CN2018/071656 CN2018071656W WO2018127156A1 WO 2018127156 A1 WO2018127156 A1 WO 2018127156A1 CN 2018071656 W CN2018071656 W CN 2018071656W WO 2018127156 A1 WO2018127156 A1 WO 2018127156A1
Authority
WO
WIPO (PCT)
Prior art keywords
sequential
sequential index
index set
code length
index
Prior art date
Application number
PCT/CN2018/071656
Other languages
English (en)
French (fr)
Inventor
王闰昕
那崇宁
杨明远
佐野洋介
永田聪
Original Assignee
株式会社Ntt都科摩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN201710656896.2A external-priority patent/CN108282261A/zh
Application filed by 株式会社Ntt都科摩 filed Critical 株式会社Ntt都科摩
Priority to JP2019536849A priority Critical patent/JP2020505813A/ja
Priority to US16/476,051 priority patent/US11184027B2/en
Priority to CN201880006117.7A priority patent/CN110226290B/zh
Publication of WO2018127156A1 publication Critical patent/WO2018127156A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes

Definitions

  • the present disclosure relates to channel coding, and in particular to an encoding method and encoder for polar encoding an input data sequence.
  • channel coding of data is required.
  • a channel code of code length M is generated, where M > K.
  • various channel coding methods including Polar coding, have been proposed.
  • an input data sequence of length K needs to be extended into a data sequence of length N, and then the extended data sequence is encoded (basic polarization coding) to generate a code length (ie, a mother code) Long) is the mother polarization code of N, and then rate-matches the mother polarization code to generate a polarization code with a code length of M.
  • basic polarization coding basic polarization coding
  • N which has N bit positions
  • bits known to both the transmitting end and the receiving end are referred to as frozen bits, and may be, for example, zero.
  • this set of N-K bit positions is called a frozen set.
  • polarization codes having different mother code lengths, which are powers of two, such as 4, 8, 1024, or 2048. Therefore, for each possible mother code length, a frozen set needs to be determined.
  • a frozen set is predetermined for each mother code length and encoding rate of a polarization code and stored in a memory for use in communication, however this requires a large amount of storage space.
  • a method of polar coding an input data sequence to generate a polarization code comprising: generating a mother code length for the polarization code based on a first sequential index set a second sequential index set, each sequential index in the first or second sequential index set indicating a priority of transmitting information bits at bit positions indicated by the sequence index relative to transmitting information bits at bit positions indicated by other indexes Sequence; according to the second sequential index set, expanding the input data sequence into a data sequence having a number of bits equal to the mother code length; and polarising the extended data sequence to generate the polarization code.
  • an encoder for polar coding an input data sequence to generate a polarization code
  • the encoder comprising: a storage unit configured to store a first sequential index set, Each sequential index in the first or second sequential index set indicates a priority order in which information bits are transmitted at bit positions indicated by the sequence index with respect to information bits transmitted at bit positions indicated by other indexes; a generating unit configured Generating a second sequential index set for the mother code length of the polarization code based on the first sequential index set; the extension unit configured to expand the input data sequence to a number of bits equal to the number according to the second sequential index set a data sequence of a mother code length; a coding unit configured to perform polarization coding on the extended data sequence to generate the polarization code.
  • a method of polarization encoding an input data sequence to generate a polarization code comprising: obtaining an order index having a value less than a code length of a polarization code according to a first sequential index set Each sequential index in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index relative to bits transmitted at bit positions indicated by other indexes; using the acquired sequential index, The input data sequence is expanded into a data sequence having a number of bits equal to the mother code length of the polarization code; the extended data sequence is polarization coded to generate the polarization code.
  • an encoder for polar coding an input data sequence to generate a polarization code
  • the encoder comprising: a storage unit configured to store a first sequential index set, Each sequential index in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index with respect to information bits transmitted at bit positions indicated by other indexes; an obtaining unit configured to a sequential index set, obtaining a sequential index whose value is smaller than a code length of the polarization code; and an extension unit configured to expand the input data sequence to a number of bits equal to a mother code length of the polarization code by using the acquired sequential index a data sequence; a coding unit configured to perform polarization coding on the extended data sequence to generate the polarization code.
  • a method of polar coding an input data sequence to generate a polarization code comprising: expanding an input data sequence to a number of bits equal to the pole according to a first sequential index set a data sequence of a mother code length of the code, each sequence index in the first sequence index set indicating a priority of transmitting information bits at bit positions indicated by the sequence index with respect to transmitting information bits at bit positions indicated by other indexes Sequence; polarization-encoding the extended data sequence to generate the polarization code, the first sequential index set may be one of the sequential index sets shown in Figures 2(1)-2(19).
  • an encoder for polar coding an input data sequence to generate a polarization code
  • the encoder comprising: a storage unit configured to store a first sequential index set, Each sequential index in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index with respect to information bits transmitted at bit positions indicated by other indexes; an extension unit configured to utilize a sequence index set, the input data sequence is expanded into a data sequence having a number of bits equal to a mother code length of the polarization code; and a coding unit configured to perform polarization coding on the extended data sequence to generate the polarization a code, wherein the first sequential index set may be one of the sequential index sets described in Figures 2(1)-2(19).
  • Figure 1 schematically shows the principle of polarization coding.
  • FIG. 3 is a flow chart of a method of determining a sequential index set for a predetermined mother code length.
  • FIG. 4 is a polarization encoding of an input data sequence to generate a pole according to a first embodiment of the present disclosure.
  • FIG. 5 is a sequence index set for a mother code length and selected according to a first embodiment of the present disclosure.
  • FIG. 6 is a block diagram of an encoder in accordance with a first embodiment of the present disclosure.
  • FIG. 7 is a polarization encoding of an input data sequence to generate a pole according to a second embodiment of the present disclosure.
  • FIG. 8A illustrates acquiring a sequence order according to a first order index set according to a second embodiment of the present disclosure.
  • An example cited. 8B-8E show the biting of a sequential index set for a mother code length of 4096.
  • FIG. 9 is a block diagram of an encoder in accordance with a second embodiment of the present disclosure.
  • FIG. 10 is a polarization encoding of an input data sequence to generate a polarization code according to a third embodiment of the present disclosure.
  • FIG. 11 is a block diagram of an encoder in accordance with a third embodiment of the present disclosure.
  • FIG. 12 is a diagram showing an example of a hardware configuration of a radio base station and a user terminal according to an embodiment of the present invention.
  • an input data sequence having a length (number of bits) of K is expanded into an N-bit input data sequence, K ⁇ N.
  • the extended data sequence is then subjected to basic polarization coding to produce a mother code of length N.
  • the mother code of length N is rate matched to produce a polarization code of length M ( ⁇ N).
  • N may be referred to as the mother code length of the polarization code
  • M may be referred to as the code length of the polarization code.
  • Basic polarization coding and rate matching can be performed in a manner well known in the art, and will not be described again here.
  • a set of order indices (ie, a set of sequential indexes) is generated for a predetermined mother code length Npred of all possible mother code lengths of the polarization code.
  • the predetermined mother code length N pred may be the largest possible mother code length (or the maximum mother code length) of all possible mother code lengths, or may be a certain mother code length smaller than the maximum possible mother code length.
  • the mother code length N of the polarization code to be generated is different from the predetermined mother code length N pred , the polarization for generation may be generated based on the sequential index set for the predetermined mother code length N pred .
  • the sequence index set of the mother code length N of the code, and the input data sequence is extended based on the generated sequential index set, thereby generating a data sequence of length N, or may be extended directly based on the sequential index set for the predetermined mother code length
  • a sequence of data is input to produce a sequence of data of length N.
  • the sequence index set described above includes a number of sequential indexes equal to the mother code length, each sequence index indicating that information bits are transmitted at bit positions indicated by the sequence index relative to other indexes in the sequence index set.
  • the priority order in which the information bits are transmitted at the indicated bit position Specifically, the value of each sequential index indicates a bit position, and the position (or order) of each sequential index in the sequence index set indicates that the information bits are transmitted at the bit position indicated by the sequence index relative to the sequence index set.
  • the other index indicates the priority order of the information bits transmitted at the bit position.
  • 2(1) shows an example of a sequential index set for the mother code length 8, in this example, there are 8 sequential indexes equal in number to the mother code length, indicating bit positions 0-7, respectively, in order Index 000 (0) indicates bit position 0, sequence index 001 (1) indicates bit position 1, and so on.
  • the priority order corresponding to the bit positions indicated by the respective sequence indexes may be determined in a right-to-left order such that the bit positions indicated by the sequence index located on the right side of the index set correspond to the priority order (ie, the order index indicated on the right side indicates The priority order of transmitting information bits at the bit position is better than the priority order corresponding to the bit position indicated by the sequence index located on the left side of the index set (ie, the priority order of transmitting information bits at the bit position indicated by the sequence index located on the left side) .
  • the order index "111" is located at the rightmost side, so that the bit position "7" indicated by the sequence index (ie, the 8th bit position in bit positions 0-7) corresponds to The priority order is better than the priority order corresponding to the other bits 0-6.
  • the sequential index set shown in FIG. 2(1) is merely an example, and the sequential index set for the predetermined mother code length may have more or less sequential indexes (the number is the same as the mother code length) as needed.
  • the predetermined mother code length may be 4096
  • the sequence index set for the mother code length 4096 may be, for example, as shown in FIGS. 2(2), 2(3), and 2(4).
  • the predetermined mother code length may be 64
  • the sequence index set for the mother code length 64 may be, for example, one of the sequence index sets 1-6 as shown in FIG. 2 (5) or FIG. 2 (6)
  • the predetermined mother code length may be 128, and the sequence index set for the mother code length 128 may be, for example, as shown in FIG. 2 (7), FIG. 2 (8), FIG. 2 (9), and FIG. 2 ( 10), one of the sequence index sets 1-20 shown in Fig. 2 (11), Fig. 2 (12), and Fig. 2 (13).
  • the sequential index set for the mother code length 64 may be, for example, one of the three sequential index sets shown in FIG. 2 (14).
  • the sequential index set for the mother code length 128 may be, for example, one of the three index sets shown in FIG. 2 (15).
  • the predetermined mother code length may be 256, and the sequence index set for the mother code length 256 may be, for example, one of the three sequential index sets as shown in FIG. 2 (16).
  • the predetermined mother code length may be 512, and the sequential index set for the mother code length 512 may be, for example, one of the three sequential index sets as shown in FIG. 2 (17).
  • the predetermined mother code length may be 1024
  • the sequence index set for the mother code length 1024 may be, for example, one of the five sequential index sets as shown in FIG. 2 (18).
  • the sequential index set for the mother code length 1024 may be, for example, one of the two sequential index sets shown in FIG. 2 (19).
  • each of the two sequential index sets contains 512 "x", and the 512 "x"s can represent values different from each other in values 0 to 511, so that the 512 "x"
  • a sequence of length 512 may be formed, and the sequence of length 512 may be the same as the sequence shown in Fig. 2 (17), or may be any other form of sequence.
  • the priority order corresponding to the position of the sequence index may also be changed.
  • the priority order may be determined in order from left to right, such that the bit position indicated by the sequence index located on the left side of the index set corresponds to a priority order higher than the index set.
  • the bit position indicated by the sequence index on the right corresponds to the priority order.
  • the method shown in FIG. 3 can be used to determine a sequential index set for a predetermined mother code length N pred .
  • the bit positions indicated by the respective order indices in the sequence index set may be bit positions selected based on error probability of receiving the information bits when transmitting information bits at respective bit positions, respectively, calculated based on different channel conditions.
  • a signal-to-noise ratio SNR is used as an example of channel conditions.
  • the value of initializing an SNR sequence ⁇ SNR 1 , SNR 2 , ... SNR Npred ⁇ , SNR 1 , SNR 2 , ... SNR Npred may be set according to actual channel conditions and/or needs between the base station and the user equipment.
  • SNR 1 can be set to a measure of the SNR of the channel between the base station and the user equipment at a certain time. Further, settings may be made such that SNR 1 ⁇ SNR 2 ⁇ ... SNR Npred , and SNR 1 , SNR 2 , ... SNR Npred may also be set to have other relationships. As mentioned above, N pred can be the largest possible mother code length N max , or it can be other mother code lengths.
  • step 301 i is initialized to 1 and SNR i (in this case SNR 1 ) is selected from the SNR sequence.
  • step 302 when the information bits are respectively transmitted on the respective bit positions (subchannels) of the N pred bit positions according to the SNR 1 , the error probability e 1 , e 2 , ... e Npred of the information bits is received at the receiving end. .
  • the error probability can be calculated according to a method well known in the art, such as density evolution or Gaussian approximation, and a detailed description thereof is omitted here.
  • step S303 the bit position corresponding to the smallest error probability among the error probabilities e 1 , e 2 , ...
  • bit position indicated by the highest priority order index is indicated in the remaining order index of the ordered index set of the predetermined mother code length.
  • bit position 7 corresponds to the smallest error probability in bit positions 0-7, thus setting bit position 7 (or its binary representation 111) to the remaining order index (in this case, 8 sequential indexes)
  • bit position indicated by the highest priority sequential index ie, the rightmost sequential index
  • step S304 it is determined whether i is smaller than N pred .
  • the error probability e 1 , e 2 , ... e Npred of the information bits is received at the receiving end.
  • the bit position corresponding to the smallest error probability among the error probabilities e 1 , e 2 , ... e Npred is selected as the highest priority order in the remaining order index of the sequential index set for the predetermined mother code length.
  • the order position indicates the bit position. In the example of FIG.
  • bit position 6 corresponds to the smallest error probability in bit positions 0-7, so the bit position 6 (or 110) is set to the order index indicating the highest priority order in the remaining order index (from the right The second bit index from the side is indexed).
  • step S304 it is determined whether i is smaller than N pred . If so, steps S302-S304 are repeatedly performed in the manner described above. Otherwise, if not, the process ends. It should be noted that, in step S302, if the bit position corresponding to the minimum error probability selected in the calculation of a certain round of error probability has been previously selected, it has been included in the sequential index for the predetermined mother code length.
  • the bit position corresponding to the second smallest error probability may be selected to be included in the sequential index set for the predetermined mother code length if the bit position corresponding to the second smallest error probability has been previously selected Thus, it has been included in the sequential index set for the predetermined mother code length, then the bit position corresponding to the third small error probability can be selected to be included in the sequential index set for the predetermined mother code length, and so on.
  • step S302 if the bit position corresponding to the minimum error probability selected in the calculation of a certain round of error probability has been previously selected so as to be included in the sequential index set for the predetermined mother code length Within the calculation of the current error probability, the bit position selection may not be performed, but the next round of error probability calculation may be performed.
  • multiple bit positions may be selected in the next round, or may be additional A round of error probability calculation is performed and the bit position corresponding to the minimum error probability is selected until N pred bit positions are finally selected, thereby determining N pred sequential indexes for the order index set of the predetermined mother code length.
  • an SNR sequence having N pred SNRs is set in the above example, and the calculation of the N pred round error probability is performed accordingly
  • an SNR sequence having L (less than N pred ) SNRs may be set, and accordingly Performing the calculation of the L-round error probability, after each round of calculating the error probability, one or more error probabilities may be selected according to the error probability from small to large, and then the bit position corresponding to the selected one or more error probabilities It is determined to be a bit position for a sequence index indication corresponding to a predetermined mother code length order index set, thereby determining a sequence index set having N pred order indexes.
  • the first number of error probabilities may be selected in order of small to large error probabilities, and the second number of error probabilities may be selected according to the position of the selected first number of error probabilities And determining the bit position as a bit position for the sequence index indication corresponding to the predetermined mother code length order index set. For example, assuming that bit position 7 is selected after a certain round of calculation of the error probability, the bit position (eg, 6) or the spaced bit position (eg, 5) adjacent to the bit position may be further selected, and the bit position is It is determined as a bit position indicated by a sequential index corresponding to a sequence index set for a predetermined mother code length. It will be appreciated that other methods may be used to generate the first set of sequential indices without being limited to the methods described above. For example, each sequential index in the first sequential index set can be directly specified as needed.
  • the method can be performed by a base station and/or user equipment in a mobile communication system.
  • a second sequential index set for the mother code length (N) of the polarization code is generated based on the first sequential index set.
  • each of the sequential indices in the first or second sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index relative to transmission of information bits at bit positions indicated by other indices.
  • the first sequential index set is a sequential index set for a maximum possible mother code length N max of the polarization code.
  • the bit positions indicated by the respective sequential indexes in the sequence index set for the maximum possible mother code length are received according to different channel conditions, respectively, when the information bits are transmitted at the respective bit positions.
  • the first sequential index set may be determined in a manner of determining a sequence index set for the predetermined mother code length as described above (in this case, the predetermined mother code length is the maximum possible mother code length N max ), and is no longer here. Narration. It should be noted that the first sequential index set may be determined and stored before the method described in FIG. 4 is performed, or may be determined or stored as part of step S401 or before step S401 when performing the method described in FIG. A sequential index set.
  • the first sequential index set may be used as the second sequential index set for the mother code length N of the polarization code.
  • a sequential index equal to the mother code length may be selected from the first sequential index set, and generated based on the selected sequential index
  • the sequential index of the ordered index set of the mother code length For example, an order index equal to the mother code length may be selected according to the most significant bits of each order index in the first order index set, and a second order index set for the mother code length is generated based on the selected order index.
  • Order index For example, from the first sequential index set, the value of the number of the high significant bits corresponding to the mother code length may be selected to be smaller than the mother code length, and the remaining bits (low effective bits) are both 0 or both. index. In the first sequential index set shown in FIG.
  • orders may be used to select a sequential index equal to the mother code length from the first sequential index set, and to generate a sequential index for the sequence index set for the mother code length based on the selected sequential index.
  • an order index equal to the mother code length may be selected according to the least significant bits of each sequential index in the first order index set, and a second sequential index set for the mother code length is generated based on the selected order index.
  • Order index For example, from the first sequential index set, the value of the number of the low significant bits corresponding to the mother code length may be selected to be smaller than the mother code length, and the remaining bits (high effective bits) are all 0 or both. The index, which in turn, obtains a sequential index for the second sequential index set of the mother code length.
  • the first, third, fifth, and seventh sequential indexes or the second, fourth, and fourth may be selected from the first sequential index set. 6 and 8 sequential indexes, and a sequential index for the ordered index set of the mother code length is generated based on the selected sequential index.
  • the first sequence index set is a sequence index set for the code length N middle of the polarization code that is less than the maximum possible mother code length N max .
  • the first sequential index set may be determined in the manner of determining the sequential index set for the predetermined mother code length as described above (in this case, the predetermined mother code length is N middle ), where Let me repeat.
  • the first sequential index set may be used as the second sequential index set for the mother code length N of the polarization code.
  • the sequential index equal to the mother code length N may be selected from the first sequential index set in the same manner as the first implementation manner, and based on The selected sequential index produces a sequential index for the ordered index set of the mother code length N. If the mother code length N of the polarization code to be generated is larger than Nmiddle, the sequential index set for the mother code length N of the polarization code to be generated can be constructed (generated) by extending the first order index set.
  • the sequential index set for the mother code length of the polarization code to be generated can be constructed in a variety of ways.
  • a sequence index set of code lengths Take the first sequential index set for the mother code length 8 shown in FIG. 2 as an example.
  • a second order index set for the mother code length 16 can be constructed based on the first sequential index set for the mother code length 8.
  • the decimal number represented by each sequential index of the first sequential index set may be multiplied by 2 to obtain 0, 2, 4, 8, 6, 10, 12, 14, and then the first sequential index
  • the decimal number represented by each sequential index of the set is multiplied by 2 and added by 1, to obtain 1, 3, 5, 9, 7, 11, 13, 15, and then the two can be combined to obtain the sequential index set "0, 1, 2, 3, 4, 5, 8, 9, 6, 7, 10, 11, 12, 13, 14, 15" as the second sequential index set for the mother code length 16.
  • the first sequential index set may be one of the sequential index sets shown in FIG. 2(1)-2(19), in which case it may be based on the manner described above or other manners.
  • the first sequential index set shown in Figures 2(1)-2(19) produces a second sequential index set.
  • the second sequential index set may be one of the sequential index sets shown in Figures 2(1)-2(19), in which case it may be based on the manner described above or otherwise
  • a sequential index set (which may be one of the sequential index sets shown in Figures 2(1)-2(19) or other sequential index sets) produces a second sequential index set.
  • step S402 the input data sequence is expanded to a data sequence having a number of bits equal to the mother code length N according to the second sequential index set.
  • the input data sequence since the input data sequence has K bits and needs to be expanded into a data sequence having N bits, it is necessary to insert frozen bits at NK bit positions among N bit positions, and in the remaining K The information bits of the input data sequence are placed at the bit position.
  • the order of the number of bits K of the input data sequence may be selected from the second order index set according to the priority order of the respective sequential index representations in the second order index set. Specifically, the K sequential indexes may be selected in descending order of priority order. Then, each bit of the input data sequence can be sequentially placed at the bit position indicated by the selected sequential index, and the frozen bit is placed at other bit positions, thereby generating a data sequence having a number of bits equal to the mother code length N .
  • the extended data sequence is polarization coded to generate the polarization code.
  • the extended data sequence may be subjected to basic polarization coding to generate a mother polarization code having a mother code length of N, and then the mother polarization code is rate matched, and a polarization code having a code length of M has been generated.
  • Basic polarization coding and rate matching can be performed by methods well known in the art, and will not be described again here. It should be noted that, according to the rate matching method used, the method of selecting the sequential index in the above may be adaptively changed, thereby selecting the sequential index that matches the used rate matching method.
  • the encoder 600 can perform the method shown in Figure 4 and can be included in a base station or mobile station. Since the details of the operations performed by the encoder are the same as those shown in FIG. 4, the description of the same contents is omitted here.
  • the encoder 600 includes a storage unit 601, a generating unit 602, an expanding unit 603, and an encoding unit 604.
  • the storage unit 601 stores the first sequential index set.
  • each of the sequential indexes in the first or second sequential index set indicates a priority order in which information bits are transmitted at bit positions indicated by the sequence index with respect to information bits transmitted at bit positions indicated by other indexes, and For example, it may be a sequential index set as described above.
  • the first sequential index set may be pre-generated and stored in the storage unit 601.
  • the generating unit 602 may generate a second sequential index set for the mother code length (N) of the polarization code based on the first sequential index set.
  • the first sequential index set is a sequential index set for a maximum possible mother code length N max of the polarization code.
  • N max the bit positions indicated by the respective sequential indexes in the sequence index set for the maximum possible mother code length are received according to different channel conditions, respectively, when the information bits are transmitted at the respective bit positions.
  • the generating unit 602 may use the first sequential index set as the second sequential index set for the mother code length N of the polarization code. . If the mother code length of the polarization code is less than the maximum possible mother code length N max , the generating unit 602 may select a sequential index equal to the mother code length from the first sequential index set, and index based on the selected order Generates a sequential index for the ordered index set of the parent code length. For example, the generating unit 601 may select a sequential index equal to the mother code length according to the high significant bit or the low significant bit of each sequential index in the first sequential index set, and generate a mother code based on the selected sequential index. The sequential index of the long second sequential index set.
  • the first sequence index set is a sequence index set for the code length N middle of the polarization code that is less than the maximum possible mother code length N max .
  • the first sequential index set may be determined in the manner of determining the sequential index set for the predetermined mother code length as described above (in this case, the predetermined mother code length is N middle ), where Let me repeat.
  • the generating unit 602 may use the first sequential index set as the second sequential index for the mother code length N of the polarization code. set.
  • the generating unit 602 may select a sequential index equal to the mother code length N from the first sequential index set in the same manner as the first implementation manner. And generating a sequential index for the ordered index set of the mother code length N based on the selected order index.
  • the generating unit 602 can construct (generate) a sequential index set for the mother code length N of the polarization code to be generated by extending the first order index set. .
  • the generating unit 602 can construct (generate) a sequential index set for the mother code length N of the polarization code to be generated in the manner described above with reference to FIG. 4, and details are not described herein again.
  • the expansion unit 603 may expand the input data sequence into a data sequence having a number of bits equal to the mother code length N according to the second sequential index set. Specifically, since the input data sequence has K bits and needs to be expanded into a data sequence having N bits, it is necessary to insert frozen bits at NK bit positions among N bit positions, and in the remaining K The information bits of the input data sequence are placed at the bit position. To this end, the extension unit 603 may select the same number of sequential indexes from the second sequential index set as the number of bits K of the input data sequence according to the priority order of the respective sequential index representations in the second sequential index set. Specifically, the extension unit 603 may select the K sequential indexes in descending order of priority order. Then, the extension unit 603 may sequentially place the respective bits of the input data sequence on the bit position indicated by the selected sequence index, and place the freeze bits on the other bit positions, thereby generating the number of bits equal to the mother code length N The sequence of data.
  • Encoding unit 604 can polar code the extended data sequence to generate the polarization code. Specifically, the encoding unit 604 may perform basic polarization coding on the extended data sequence to generate a mother polarization code with a mother code length of N, and then perform rate matching on the mother polarization code to generate a pole with a code length of M. Code. The encoding unit 604 can perform basic polarization encoding and rate matching using methods well known in the art, and details are not described herein.
  • a sequence index set may be pre-generated and stored for a predetermined mother code length (eg, a maximum possible mother code length), and when the mother code length of the polarization code to be generated is different from the maximum possible mother At the code length, a sequential index set for the mother code length of the polarization code to be generated is generated based on the sequential index set for the largest possible mother code length. Thus, it is not necessary to pre-generate and store the sequential index set for all possible mother code lengths, thereby saving storage space. Since the mother code length of the polarization code to be generated is smaller than the maximum possible mother code length, even if the sequential index set for the mother code length of the polarization code to be generated is determined in real time, no significant delay is caused.
  • a predetermined mother code length eg, a maximum possible mother code length
  • step S701 based on the first sequential index set, a sequential index whose value is smaller than the code length of the polarization code is acquired.
  • each of the sequential indices in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index relative to information bits transmitted at bit positions indicated by other indices.
  • the first sequential index set is a sequential index set for a maximum possible mother code length of the polarization code.
  • the bit positions indicated by the respective order indexes in the sequence index set of the maximum possible mother code length of the polarization code are received when transmitting information bits at respective bit positions, respectively, calculated based on different channel conditions.
  • the bit position of the error probability of the information bit is selected.
  • the sequential index set for the maximum possible mother code length of the polarization code can be generated in the manner described above, and will not be described again here.
  • each of the sequential indexes in the first sequential index set may be bit inverted to generate a reversed sequential index set.
  • Bit-inversion is performed on each of the sequential indexes in the first sequential index set, thereby generating a reverse-order index set "000, 100, 010, 001, 110, 101, 011, 111" as shown in FIG. 8A.
  • the inverted sequence index set generated by inverting it may be as shown in FIGS. 8B-8E. Then, from the reversed order index set, a sequential index whose value is smaller than the code length of the polarization code can be selected.
  • the first sequential index set is a sequential index set obtained by bit-inverting a sequential index of a sequential index set for a maximum possible mother code length of the polarization code.
  • the first sequential index is no longer the sequential index set shown in the first row, but the inverted sequential index set shown in the second row.
  • the first order index is the inverted order index set shown in FIGS. 8B-8E.
  • step S701 from the first sequential index set (reverse order index set), a sequential index whose value is smaller than the code length of the polarization code may be selected.
  • the first sequential index set may be one of the sequential index sets shown in FIG. 2(1)-2(19), in which case it may be based on the manner described above or other manners.
  • the first order index set shown in Figures 2(1)-2(19) acquires a sequential index whose value is smaller than the code length of the polarization code.
  • the sequential index whose value is smaller than the code length of the polarization code may also be one of the sequential index sets shown in FIG. 2(1)-2(19).
  • the above may be The manner or other manner, obtaining the code whose value is smaller than the polarization code based on the first sequential index set (which may be one of the sequence index sets shown in FIG. 2(1)-2(19) or other sequence index sets) Long sequential index.
  • step S702 using the acquired sequential index, the input data sequence is expanded into a data sequence having a number of bits equal to the mother code length of the polarization code.
  • the same number of sequential indexes as the number of bits of the input data sequence may be selected from the acquired sequential indexes according to the obtained priority order of the respective sequential index representations.
  • the number of bits K of the input data sequence is 2
  • two sequential indexes can be selected from the right-to-left order from the acquired sequential indexes.
  • the selected sequential index can then be bit inverted to produce a reverse order index.
  • inversion order indexes 01 and 10 are generated.
  • each bit of the input data sequence can be sequentially placed on the bit position indicated by the inverted sequence index, and the frozen bit is placed at other bit positions, thereby generating a bit number equal to the mother code length of the polarization code.
  • Data sequence In the example of FIG. 8A, the 2 bits of the input data sequence can be placed sequentially on bit positions 1 and 2 indicated by the reverse order index, and the freeze graduation is placed on bit positions 0 and 3, thereby generating a length of 4 data sequence.
  • the same number of sequential indexes as the number of bits of the input data sequence may be selected from the acquired sequential indexes according to the obtained priority order of the respective sequential index representations. Then, each bit of the input data sequence can be sequentially placed on the bit position indicated by the selected K sequential indexes, and the frozen bits are placed at other bit positions, thereby generating a number of bits equal to the polarization code.
  • the data sequence of the mother code length may be selected from the acquired sequential indexes according to the obtained priority order of the respective sequential index representations.
  • the extended data sequence is polarization coded to generate the polarization code.
  • the extended data sequence may be subjected to basic polarization coding to generate a mother polarization code having a mother code length of N, and then the mother polarization code is rate matched, and a polarization code having a code length of M has been generated.
  • Basic polarization coding and rate matching can be performed by methods well known in the art, and will not be described again here.
  • the encoder can perform the method shown in Figure 7 and can be included in a base station or mobile station. Since the details of the operations performed by the encoder are the same as those shown in FIG. 7, the description of the same contents is omitted here.
  • the encoder 900 includes a storage unit 901, an acquisition unit 902, an extension unit 903, and an encoding unit 904.
  • the storage unit 901 stores the first sequential index set.
  • each of the sequential indexes in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index with respect to information bits transmitted at bit positions indicated by other indexes, and may be, for example, the above The sequential index set described.
  • the first sequential index set may be pre-generated and stored in the storage unit 901.
  • the obtaining unit 902 may obtain a sequential index whose value is smaller than the code length of the polarization code according to the first sequential index set.
  • the first sequential index set is a sequential index set for a maximum possible mother code length of the polarization code.
  • the bit positions indicated by the respective order indexes in the sequence index set of the maximum possible mother code length of the polarization code are received when transmitting information bits at respective bit positions, respectively, calculated based on different channel conditions.
  • the bit position of the error probability of the information bit is selected.
  • the sequential index set for the maximum possible mother code length of the polarization code can be generated in the manner described above, and will not be described again here.
  • the obtaining unit 902 may perform bit inversion on each of the sequential indexes in the first sequential index set to generate a reversed sequential index set. Then, the obtaining unit 902 may select a sequential index whose value is smaller than the code length of the polarization code from the reverse order index set.
  • the first sequential index set is a sequential index set obtained by bit-inverting a sequential index of a sequential index set for a maximum possible mother code length of the polarization code.
  • the obtaining unit 902 may select a sequential index whose value is smaller than the code length of the polarization code from the first sequential index set.
  • the extension unit 903 can expand the input data sequence into a data sequence having a number of bits equal to the mother code length of the polarization code, using the acquired sequential index.
  • the extension unit 903 may select the same number of sequential indexes from the acquired sequence index as the number of bits of the input data sequence according to the obtained priority order of the respective sequential index representations. Then, the expansion unit 903 can perform bit inversion on the selected sequential index to generate a reverse order index. Then, the extension unit 903 can sequentially place the respective bits of the input data sequence on the bit position indicated by the reverse order index, and place the frozen bits on the other bit positions, thereby generating the mother whose number of bits is equal to the polarization code. The data sequence of the code length.
  • the extension unit 903 may select the same number of sequential indexes from the acquired sequence index as the number of bits of the input data sequence according to the obtained priority order of the respective sequential index representations. Then, the extension unit 903 can sequentially place the respective bits of the input data sequence on the bit positions indicated by the selected K sequential indexes, and place the frozen bits on other bit positions, thereby generating the number of bits equal to the pole.
  • the data sequence of the mother code length of the code is the same number of sequential indexes from the acquired sequence index as the number of bits of the input data sequence according to the obtained priority order of the respective sequential index representations. Then, the extension unit 903 can sequentially place the respective bits of the input data sequence on the bit positions indicated by the selected K sequential indexes, and place the frozen bits on other bit positions, thereby generating the number of bits equal to the pole.
  • the data sequence of the mother code length of the code is the same number of sequential indexes from the acquired sequence index as the number of bits of the input data sequence according to the obtained priority order of the
  • Encoding unit 904 can polar code the extended data sequence to generate the polarization code. Specifically, the encoding unit 904 may perform basic polarization coding on the extended data sequence to generate a mother polarization code having a mother code length of N, and then perform rate matching on the mother polarization code to generate a pole having a code length of M. Code. The encoding unit 904 can perform basic polarization encoding and rate matching using methods well known in the art, and details are not described herein.
  • a sequence index set may be pre-generated and stored for a predetermined mother code length (eg, a maximum possible mother code length), and when the code length of the polarization code to be generated is different from the maximum possible mother code For a long time, the input data sequence is extended based on the sequential index set for the largest possible mother code length. Thus, it is not necessary to pre-generate and store the sequential index set for all possible mother code lengths, thereby saving storage space.
  • the sequential index set generated after the bit inversion of the sequential index for the order index set of the predetermined mother code length may be directly stored, so that the actual communication is performed. At this time, it is not necessary to perform a bit inversion operation again, thereby further reducing the amount of calculation.
  • the input data sequence is expanded into a data sequence having a number of bits equal to the mother code length of the polarization code according to the first sequential index set.
  • the first sequential index set may be the sequential index set described above with reference to the first embodiment, and may be, for example, one of the sequential index sets shown in FIGS. 2(1)-2(19). In this case, the first sequential index set has a sequential index equal to the number of mother code lengths of the polarization code. In other words, for example, when one of the sequential index sets shown in FIGS. 2(1)-2(19) has a sequential index equal to the number of mother code lengths of the polarization code, the sequential index set can be directly used to expand. Enter the data sequence.
  • each sequential index in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index relative to transmission of information bits at bit positions indicated by other indices.
  • the same order index as the number of bits K of the input data sequence may be selected from the first sequential index set according to the priority order of the respective sequential index representations in the first order index set.
  • the K sequential indexes may be selected in descending order of priority order.
  • each bit of the input data sequence can be sequentially placed at the bit position indicated by the selected sequential index, and the frozen bit is placed at other bit positions, thereby generating a data sequence having a number of bits equal to the mother code length N .
  • the extended data sequence is polarization coded to generate the polarization code.
  • the extended data sequence may be subjected to basic polarization coding to generate a mother polarization code having a mother code length of N, and then the mother polarization code is rate matched, and a polarization code having a code length of M has been generated.
  • Basic polarization coding and rate matching can be performed by methods well known in the art, and will not be described again here. It should be noted that, according to the rate matching method used, the method of selecting the sequential index in the above may be adaptively changed, thereby selecting the sequential index that matches the used rate matching method.
  • the encoder can perform the method shown in Figure 10 and can be included in a base station or mobile station. Since the details of the operations performed by the encoder are the same as those shown in FIG. 10, the description of the same contents is omitted here.
  • the encoder 1100 includes a storage unit 1101, an extension unit 1102, and an encoding unit 1103.
  • the storage unit 1101 stores the first sequential index set.
  • each of the sequential indices in the first sequential index set represents a priority order in which information bits are transmitted at bit positions indicated by the sequence index relative to information bits transmitted at bit positions indicated by other indices.
  • the first sequential index set may be pre-generated and stored in the storage unit 1101, and may be one of the sequential index sets shown in FIGS. 2(1)-2(19).
  • the extension unit 1102 can expand the input data sequence into a data sequence having a number of bits equal to the mother code length of the polarization code using the first sequential index set. This extended reference can be made with reference to the manner described above with respect to FIG.
  • the encoding unit 1103 may polar code the extended data sequence to generate the polarization code. Specifically, the encoding unit 1103 may perform basic polarization coding on the extended data sequence to generate a mother polarization code with a mother code length of N, and then perform rate matching on the mother polarization code to generate a pole with a code length of M. Code. The coding unit 1103 can perform basic polarization coding and rate matching using methods well known in the art, and details are not described herein again.
  • each functional block represents a functional block of a functional unit.
  • These functional blocks are realized by any combination of hardware and/or software.
  • the means for realizing each functional block is not particularly limited. That is, each functional block may be implemented by one device that is physically and/or logically combined, or two or more devices that are physically and/or logically separated may be directly and/or indirectly (eg, wired and/or Or wireless) connection, implemented by these multiple devices.
  • a radio base station, a user terminal, or the like in one embodiment of the present invention can function as a computer that performs processing of the radio communication method of the present invention.
  • FIG. 12 is a diagram showing an example of a hardware configuration of a radio base station and a user terminal according to an embodiment of the present invention.
  • the radio base station 10 and the user terminal 20 may be physically configured as a computer device including a processor 1201, a memory 1202, a memory 1203, a communication device 1204, an input device 1205, an output device 1206, and a bus 1207.
  • the processor 1201 can function as the encoder described above and can perform the method described above.
  • the term "device” can be interpreted as a circuit, a device, a unit, or the like.
  • the hardware configuration of the radio base station 10 and the user terminal 20 may be configured to include one or more devices shown in the drawing, or may be configured without including a part of the devices.
  • Each function in the wireless base station 10 and the user terminal 20 is configured to read a predetermined software (program) on hardware such as the processor 1201 and the memory 1202, and the processor 1201 performs calculation, and performs communication by controlling the communication device 1204.
  • a predetermined software program
  • the processor 1201 performs calculation, and performs communication by controlling the communication device 1204.
  • the reading and/or writing of data in the memory 1202 and the memory 1203 is implemented.
  • the processor 1201 operates, for example, on an operating system to control the entire computer.
  • the processor 1201 may be constituted by a central processing unit (CPU: central processing unit) including an interface with a peripheral device, a control device, an arithmetic device, a register, and the like.
  • CPU central processing unit
  • each of the above encoders and the like can be implemented by the processor 1001.
  • the processor 1201 reads a program (program code), a software module, and data from the memory 1203 and/or the communication device 1204 into the memory 1202, and executes various processes in accordance with the contents thereof.
  • program program code
  • a program for causing a computer to execute at least a part of the operations described in the above embodiments is used.
  • the above various processes are described in the execution of one processor 1201, but may be performed simultaneously or sequentially by two or more processors 1201.
  • the processor 1201 can be implemented by more than one chip. It should be noted that the program can be transmitted from the network via the communication circuit.
  • the memory 1202 is a recording medium readable by a computer, and may be, for example, a ROM (Read Only Memory), an EPROM (Erasable Programmable ROM), an EEPROM (Electrically Erasable Programmable ROM), a RAM (Random Access Memory), or the like. At least one to constitute.
  • the memory 1202 may be referred to as a register, a cache memory, a main memory (primary storage device), or the like.
  • the memory 1202 can store an executable program (program code), a software module, and the like for implementing the wireless communication method of one embodiment of the present invention.
  • the memory 1203 is a computer-readable recording medium, and may be, for example, an optical disk such as a CD-ROM (Compact Disc ROM), a hard disk drive, a floppy disk, a magneto-optical disk (for example, a compact disk, a digital versatile disk, or a Blu-ray (registered trademark) disk. At least one of a smart card, a flash memory (such as a flash memory card, a flash memory stick, a thin flash memory), a floppy disk (registered trademark of a floppy disk), and a magnetic stripe.
  • the memory 1203 may be referred to as a supplementary storage device.
  • the storage medium may be, for example, a database including a memory 1202 and/or a memory 1203, a server, or the like.
  • the communication device 1204 is hardware (transceiver device) that performs communication between computers via a wired and/or wireless network, and is also referred to as a network device, a network controller, a network card, a communication module, and the like, for example.
  • the input device 1205 is an input device (for example, a keyboard, a mouse, a microphone, a switch, a button, a sensor, etc.) that accepts input from the outside.
  • the output device 1206 is an output device (for example, a display, a speaker, an LED lamp, etc.) that performs an output to the outside. It should be noted that the input device 1205 and the output device 1206 may be an integrated structure (for example, a touch screen).
  • each device such as the processor 1201 and the memory 1202 is connected by a bus 1207 in which information is communicated.
  • the bus 1207 may be composed of a single bus or a different bus between devices.
  • the wireless base station 10 and the user terminal 20 may include a microprocessor, a digital signal processor (DSP: digital signal processor), an ASIC (application specific integrated circuit), a PLD (Programmable Logic Device), and an FPGA (Field Programmable Gate Array).
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • the hardware is configured such that some or all of the functional blocks can be realized by the hardware.
  • processor 1201 can be implemented by at least one of the hardware.
  • LTE Long Term Evolution
  • LTE-A Long Term Evolution-Advanced
  • Super 3G IMT-Advanced
  • 4G 5G
  • FRA Full Access
  • W- CDMA registered trademark
  • GSM registered trademark
  • CDMA2000 Code Division Multiple Access 2000
  • UMB Universal Mobile Broadband
  • IEEE 802.11 Wi-Fi
  • IEEE 802.16. 16 WiMAX
  • IEEE 802.20 UWB (Ultra Wide Band)
  • Bluetooth registered trademark
  • the specific actions performed by the base station in this specification are sometimes performed by their upper nodes due to the situation.
  • various operations for communication with the terminal can obviously be performed by other network nodes other than the base station and/or the base station (for example, MME or S).
  • -GW etc., but not limited to this).
  • the above exemplifies the case where there are one other network nodes than the base station, but it may be a combination of a plurality of other network nodes (for example, MME and S-GW).
  • Input and output information, etc. can be stored in a specific place (such as memory) or managed by a management table. Information such as input and output can be overwritten, updated, or added. The output information and the like can be deleted. The input information and the like can be transmitted to other devices.
  • judgment and “determination” as used in this specification sometimes include a wide variety of actions.
  • “Analyzing”, “determining” may include the example, it is determined (Judging), calculation (Calculating), is calculated (Computing), processing (Processing), deriving (Deriving), Survey (Investigating), find (looking up) (e.g. in a table , search in the database or other data structure), confirmation (ascertaining) is regarded as “judgement”, “determination” and so on.
  • “judge” and “determine” may include receiving (eg, receiving information), transmitting (eg, transmitting information), inputting (input), outputting, accessing (eg, accessing memory).
  • judging and “determining” may include resolving, selecting, selecting, establishing, comparing, etc. as “judging” and “determining”. That is to say, “judging” and “determining” may include considering certain actions as “judging” and “determining”.
  • the judgment can be performed by a value (0 or 1) represented by 1 bit, or by a true or false value (Boolean: true or false), or by comparison of numerical values (for example, comparison with a specified value). .
  • the software described above is not related to what is called software, firmware, middleware, microcode, hardware description language or other names, and can be broadly interpreted as instructions, instruction sets, code, code segments, program code, programs, sub- Programs, software modules, applications, software applications, software packages, routines, subroutines, objects, executables, threads of execution, steps, functions, and so on.
  • software, instructions, and the like can be transmitted and received via a transmission medium.
  • a transmission medium For example, software that uses wired technologies such as coaxial cable, fiber, twisted pair, and digital subscriber line (DSL) and/or wireless technologies such as infrared, wireless, and microwave to transmit from web pages, servers, or other remote data sources.
  • wired technologies such as coaxial cable, fiber, twisted pair, and digital subscriber line (DSL)
  • wireless technologies such as infrared, wireless, and microwave to transmit from web pages, servers, or other remote data sources.
  • the information, signals, etc. described in this specification can be represented using any of a variety of different techniques.
  • the data, instructions, commands, information, signals, bits, symbols, chips, etc. referred to throughout the above description may be by voltage, current, electromagnetic waves, magnetic fields or magnetic particles, light fields or photons, or any of these. Combined to represent.
  • the channel and/or symbol can be a signal.
  • the signal can be a message.
  • the information, parameters, and the like described in the present specification may be represented by absolute values, may be represented by relative values with designated values, or may be represented by corresponding other information.
  • wireless resources can be indicated by an index.
  • the names used for the above parameters are not limited at any time. Further, an equation or the like using these parameters is sometimes different from that explicitly disclosed in the present specification.
  • Various channels e.g., PUCCH, PDCCH, etc.
  • information elements e.g., TPC, etc.
  • a base station can accommodate one or more (eg, three) (also referred to as segments) cells.
  • the coverage area of the base station as a whole can be divided into a plurality of smaller areas, each of which can utilize a base station subsystem (for example, a small base station RRH: a remote radio head for indoor use)
  • a base station subsystem for example, a small base station RRH: a remote radio head for indoor use
  • the terms "cell” or “segment” refer to a portion or the entirety of a coverage area of a base station, and/or a base station subsystem that performs communication services in the coverage area.
  • the terms “base station,” “eNB,” “cell,” and “area” are used interchangeably throughout this specification.
  • a base station is sometimes also referred to as a fixed station, a NodeB, an eNodeB (eNB), an access point, a femto cell, a small cell, and the like.
  • Mobile stations vary from one skilled in the art and are sometimes referred to as subscriber stations, mobile units, user equipment, wireless units, remote units, mobile devices, wireless devices, wireless communication devices, remote devices, mobile subscriber stations, access terminals, mobile Terminal, wireless terminal, remote terminal, handheld device, user agent, mobile client, client, or other suitable terminology.
  • any reference to the elements referred to as “1st”, “2nd”, etc. used in this specification does not fully limit the quantity or order of these elements. These terms can be used in the present specification as a method of distinguishing between two or more elements. Therefore, the reference to the first and second elements does not mean that only two elements can be used, or that the first element in any form must precede the second element.

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

公开了一种对输入数据序列进行极化编码以产生极化码的方法和编码器。所述编码方法包括:基于第一顺序索引集产生用于所述极化码的母码长的第二顺序索引集,所述第一或第二顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长的数据序列;对扩展后的数据序列进行极化编码,以产生所述极化码。

Description

编码方法和编码器 技术领域
本公开涉及信道编码,并且具体涉及一种对输入数据序列进行极化编码的编码方法和编码器。
背景技术
为了保证信号传输质量,需要对数据进行信道编码。通常,对于长度(比特数)为K的输入数据序列,产生码长为M的信道码,其中M>K。为了获得更好的性能,提出了各种信道编码方法,包括极化编码(Polar coding)。
在极化编码中,需要将长度为K的输入数据序列扩展为长度为N的数据序列,然后对该扩展后的数据序列进行编码(基本极化编码),从而产生码长(即,母码长)为N的母极化码,然后对母极化码进行速率匹配,从而产生码长为M的极化码。为了产生长度为N的输入数据序列(其具有N个比特位置),需要在额外的N-K个比特位置上插入发送端与接收端均已知的比特。所述发送端和接收端均已知的比特称为冻结比特(frozen bit),例如可以是0。为了确保信号传输质量,需要在全部N个比特位置中,适当地选择这N-K个比特位置,这N-K个比特位置的集合称为冻结集合(frozen set)。
在实际的通信系统中,可能需要产生具有不同母码长的极化码,所述母码长为2的幂,例如4、8、1024或2048等。因此,对每个可能的母码长,都需要确定冻结集合。传统上,对于极化码的每个母码长和编码速率预先确定冻结集合并将其存储在存储器中以便在通信时使用,然而这需要大量的存储空间。为了减少对存储空间的需求,提出在每次通信时,根据要产生的极化码的母码长即时地确定对应的冻结集合,然而,这增大了操作的复杂度并且导致较大的延迟。
发明内容
根据本公开的一个实施例,提供了一种对输入数据序列进行极化编码以产生极化码的方法,该方法包括:基于第一顺序索引集产生用于所述极化码 的母码长的第二顺序索引集,所述第一或第二顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长的数据序列;对扩展后的数据序列进行极化编码,以产生所述极化码。
根据本公开的另一实施例,提供了一种编码器,用于对输入数据序列进行极化编码以产生极化码,该编码器包括:存储单元,被配置为存储第一顺序索引集,所述第一或第二顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;产生单元,被配置为基于第一顺序索引集产生用于所述极化码的母码长的第二顺序索引集;扩展单元,被配置为根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长的数据序列;编码单元,被配置为对扩展后的数据序列进行极化编码,以产生所述极化码。
根据本公开的另一实施例,提供了一种对输入数据序列进行极化编码以产生极化码的方法,包括:根据第一顺序索引集,获取值小于极化码的码长的顺序索引,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列;对扩展后的数据序列进行极化编码,以产生所述极化码。
根据本公开的另一实施例,提供了一种编码器,用于对输入数据序列进行极化编码以产生极化码,该编码器包括:存储单元,被配置为存储第一顺序索引集,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;获取单元,被配置为根据第一顺序索引集,获取值小于极化码的码长的顺序索引;扩展单元,被配置为利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列;编码单元,被配置为对扩展后的数据序列进行极化编码,以产生所述极化码。
根据本公开的另一实施例,提供了一种对输入数据序列进行极化编码以产生极化码的方法,包括:根据第一顺序索引集,将输入数据序列扩展为比 特数等于所述极化码的母码长的数据序列,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;对扩展后的数据序列进行极化编码,以产生所述极化码,所述第一顺序索引集可以是图2(1)-2(19)所示的顺序索引集之一。
根据本公开的另一实施例,提供了一种编码器,用于对输入数据序列进行极化编码以产生极化码,该编码器包括:存储单元,被配置为存储第一顺序索引集,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;扩展单元,被配置为利用第一顺序索引集,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列;编码单元,被配置为对扩展后的数据序列进行极化编码,以产生所述极化码,其中,所述第一顺序索引集可以是图2(1)-2(19)所述的顺序索引集之一。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1示意性地示出了极化编码的原理。
图2(1)-2(19)示出了根据本公开实施例的顺序索引集的示例。
图3是确定用于预定母码长的顺序索引集的方法的流程图。
图4是根据本公开第一实施例的对输入数据序列进行极化编码以产生极
化码的方法的流程图。
图5是根据本公开第一实施例的用于母码长的顺序索引集以及所选择的
顺序索引的示意图。
图6是根据本公开第一实施例的编码器的框图。
图7是根据本公开第二实施例的对输入数据序列进行极化编码以产生极
化码的方法的流程图。
图8A示出了根据本公开第二实施例的根据第一顺序索引集获取顺序索
引的例子。图8B-图8E示出了对用于母码长4096的顺序索引集进行比特
反转获得的反转顺序索引集的例子。
图9是根据本公开第二实施例的编码器的框图。
图10是本公开第三实施例的对输入数据序列进行极化编码以产生极化码
的方法的流程图。
图11是根据本公开第三实施例的编码器的框图。
图12是表示本发明的实施例的无线基站及用户终端的硬件构成的例子的图。
具体实施方式
为了使得本公开的目的、技术方案和优点更为明显,下面将参照附图详细描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。基于本公开中描述的本公开实施例,本领域技术人员在没有付出创造性劳动的情况下所得到的所有其它实施例都应落入本公开的保护范围之内。
首先,简单地介绍极化编码的原理。如图1所示,将长度(比特数)为K的输入数据序列扩展为N比特的输入数据序列,K<N。然后,对扩展后的数据序列进行基本极化编码以产生长度为N的母码。接下来,对长度为N的母码进行速率匹配,从而产生长度为M(≤N)的极化码。N可以称为所述极化码的母码长,M可以称为所述极化码的码长。可以采用本领域公知的方式来进行基本极化编码和速率匹配,在这里不再赘述。
如上文所述,为了将长度(比特数)为K的输入数据序列扩展为N比特的输入数据序列,需要在N个比特位置中适当地选择N-K个比特位置以插入冻结比特,并且将输入数据序列的K个比特(信息比特)放置在其余的K个比特位置上。
在本公开的实施例中,对极化码的所有可能母码长中的预定母码长N pred生成顺序索引(order index)的集合(即,顺序索引集)。所述预定母码长N pred可以是所有可能母码长中的最大可能母码长(或称为最大母码长),也 可以是小于最大可能母码长的某个母码长。在通信时,如果要产生的极化码的母码长N不同于所述预定母码长N pred,则可以基于用于预定母码长N pred的顺序索引集生成用于要产生的极化码的母码长N的顺序索引集,并且基于所产生的顺序索引集合来扩展输入数据序列,从而产生长度为N的数据序列,或者可以直接基于用于预定母码长的顺序索引集来扩展输入数据序列,从而产生长度为N的数据序列。
上文所述的顺序索引集包含与所述母码长相等的数量的顺序索引,每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在所述顺序索引集中的其他索引指示的比特位置上发送信息比特的优先顺序。具体地,每个顺序索引的值指示一个比特位置,并且每个顺序索引在顺序索引集中的位置(或顺序)表示在该顺序索引指示的比特位置上发送信息比特相对于在所述顺序索引集中的其他索引指示的比特位置上发送信息比特的优先顺序。图2(1)示出了用于母码长8的顺序索引集的示例,在该示例中,存在数量与母码长相等的8个顺序索引,分别指示比特位置0-7,其中,顺序索引000(0)指示比特位置0,顺序索引001(1)指示比特位置1,等等。可以按照从右到左的顺序确定各个顺序索引指示的比特位置对应的优先顺序,使得索引集中位于右侧的顺序索引指示的比特位置对应的优先顺序(即,在位于右侧的顺序索引指示的比特位置上发送信息比特的优先顺序)优于索引集中位于左侧的顺序索引指示的比特位置对应的优先顺序(即,在位于左侧的顺序索引指示的比特位置上发送信息比特的优先顺序)。在图2(1)所示的示例中,顺序索引“111”位于最右侧,从而该顺序索引指示的比特位置“7”(即,比特位置0-7中的第8个比特位置)对应的优先顺序优于其他比特0-6位置对应的优先顺序。需要认识到,图2(1)所示的顺序索引集仅仅是示例,根据需要,用于预定母码长的顺序索引集可以具有更多或更少的顺序索引(数目与母码长相同)。例如,所述预定母码长可以是4096,用于母码长4096的顺序索引集例如可以如图2(2)、2(3)和2(4)所示。此外,例如,所述预定母码长可以是64,用于母码长64的顺序索引集例如可以是如图2(5)所示的顺序索引集1-6之一或图2(6)所示的顺序索引集7-12之一。作为另一示例,所述预定母码长可以是128,用于母码长128的顺序索引集例如可以是如图2(7)、图2(8)、图2(9)、图2(10)、图2(11)、图2(12)和图2 (13)所示的顺序索引集1-20之一。此外,在所述预定母码长为64的情况下,用于母码长64的顺序索引集例如还可以是图2(14)所示的3个顺序索引集之一。此外,在所述预定母码长为128的情况下,用于母码长128的顺序索引集例如还可以是图2(15)所示的3个索引集之一。此外,所述预定母码长可以是256,用于母码长256的顺序索引集例如可以是如图2(16)所示的3个顺序索引集之一。此外,所述预定母码长可以是512,用于母码长512的顺序索引集例如可以是如图2(17)所示的3个顺序索引集之一。此外,所述预定母码长可以是1024,用于母码长1024的顺序索引集例如可以是如图2(18)所示的5个顺序索引集之一。此外,在所述预定码长是1024的情况下,用于母码长1024的顺序索引集例如也可以是图2(19)所示的2个顺序索引集之一。如图2(19)所示,这两个顺序索引集中的每一个包含512个“x”,这512个“x”可以表示值0~511中的彼此不同的值,使得这512个“x”可以形成长度为512的序列,该长度为512的序列可以与图2(17)所示的序列相同,也可以是任何其他形式的序列。此外,顺序索引的位置对应的优先顺序也可以改变,例如可以按照从左到右的顺序确定所述优先顺序,使得索引集中位于左侧的顺序索引指示的比特位置对应的优先顺序优于索引集中位于右侧的顺序索引指示的比特位置对应的优先顺序。在下文中,以按照从右到左的顺序确定所述优先顺序为例来描述本公开的实施例。
可以使用图3所示的方法来确定用于预定母码长N pred的顺序索引集。该顺序索引集中的各个顺序索引指示的比特位置可以是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。为便于描述,使用信噪比SNR作为信道条件的示例。首先,初始化一个SNR序列{SNR 1,SNR 2,…SNR Npred},SNR 1,SNR 2,…SNR Npred的值可以根据基站和用户设备之间的实际信道条件和/或需要来设置。例如可以将SNR 1设置为在某个时刻在基站和用户设备之间的信道的SNR的测量值。此外,可以进行设置,使得SNR 1≤SNR 2≤…≤SNR Npred,也可以将SNR 1,SNR 2,…SNR Npred设置为具有其他关系。如上文所述,N pred可以是最大可能母码长N max,也可以是其他母码长。
在步骤301中,将i初始化为1,并且从SNR序列中选择SNR i(此时为SNR 1)。在步骤302中,根据SNR 1计算分别在N pred个比特位置中的各个比 特位置(子信道)上发送信息比特时,在接收端接收该信息比特的错误概率e 1,e 2,…e Npred。可以根据本领域公知的方法,例如密度进化法或高斯逼近法来计算该错误概率,在这里省略其详细描述。然后,在步骤S303中,选择与错误概率e 1,e 2,…e Npred中最小的错误概率对应的比特位置(即,在其上发送信息比特时的错误概率最小的比特位置),作为用于预定母码长的顺序索引集的剩余顺序索引中表示最高优先顺序的顺序索引指示的比特位置。在图1的示例中,在比特位置0-7中,比特位置7对应最小的错误概率,因此将比特位置7(或其二进制表示111)设置为剩余顺序索引(此时,8个顺序索引)中表示最高优先顺序的顺序索引(即,最右侧的顺序索引)指示的比特位置。然后,在步骤S304中,确定i是否小于N pred。如果是,则进行到步骤S305,在该步骤中,设置i=i+1,并且从SNR序列中选择SNR i+1(此时为SNR 2),并且在步骤S303中根据SNR 2计算分别在N max个比特位置中的各个比特位置(子信道)上发送信息比特时,在接收端接收该信息比特的错误概率e 1,e 2,…e Npred。然后,在步骤S303中,选择与错误概率e 1,e 2,…e Npred中最小的错误概率对应的比特位置,作为用于预定母码长的顺序索引集的剩余顺序索引中表示最高优先顺序的顺序索引指示的比特位置。在图1的示例中,在比特位置0-7中,比特位置6对应最小的错误概率,因此将该比特位置6(或110)设置为剩余顺序索引中表示最高优先顺序的顺序索引(从右侧起第2个顺序索引)指示的比特位置。然后,在步骤S304中,确定i是否小于N pred。如果是,则按照上文所述的方式重复执行步骤S302-S304。反之,如果不是,则该过程结束。需要说明的是,在步骤S302中,如果在某一轮错误概率的计算中选择的与最小错误概率对应的比特位置已经在之前被选择过从而已经被包含在用于预定母码长的顺序索引集内,则可以选择与第二小的错误概率对应的比特位置以包含在用于预定母码长的顺序索引集内,如果与第二小的错误概率对应的比特位置已经在之前被选择过从而已经被包含在用于预定母码长的顺序索引集内,则可以选择与第三小的错误概率对应的比特位置以包含在用于预定母码长的顺序索引集内,以此类推。可替换地,在步骤S302中,如果在某一轮错误概率的计算中选择的与最小错误概率对应的比特位置已经在之前被选择过从而已经被包含在用于预定母码长的顺序索引集内,则对于本轮错误概率的计算,可以不进行比特位置的选择,而是进 行下一轮错误概率的计算,在这种情况下,可以在下一轮中选择多个比特位置,或者可以额外地进行一轮错误概率的计算并选择与最小错误概率对应的比特位置,直到最终选择了N pred个比特位置,从而确定用于预定母码长的顺序索引集的N pred个顺序索引为止。
这样,通过分别根据N pred个SNR计算N pred轮的所述错误概率,并且在每轮计算之后选择最小错误概率对应的一个比特位置,可以生成具有N pred个顺序索引的用于预定母码长N pred的顺序索引集。需要认识到,上述确定用于预定母码长的顺序索引集的方法是示例性的,而不是限制性的。例如,尽管在上述示例中设置了具有N pred个SNR的SNR序列,并且相应地执行N pred轮错误概率的计算,但是也可以设置具有L(小于N pred)个SNR的SNR序列,并且相应地执行L轮错误概率的计算,在每一轮计算错误概率之后,可以按照错误概率从小到大的顺序选择一个或多个错误概率,然后将与所选择的一个或多个错误概率对应的比特位置确定为用于预定母码长顺序索引集中对应的顺序索引指示的比特位置,从而确定具有N pred个顺序索引的顺序索引集。可替换地,在每一轮计算错误概率之后,可以按照错误概率从小到大的顺序选择第一数量的错误概率,并且根据所选择的第一数量的错误概率的位置选择第二数量的错误概率,然后将所述比特位置确定为用于预定母码长顺序索引集中对应的顺序索引指示的比特位置。例如,假设在某一轮计算错误概率之后选择了比特位置7,则可以进一步选择与该比特位置相邻的比特位置(例如6)或相隔的比特位置(例如5),并且将所述比特位置确定为用于预定母码长的顺序索引集中对应的顺序索引指示的比特位置。需要认识到,也可以使用其他方法来产生所述第一顺序索引集,而不限于上述方法。例如,可以根据需要而直接指定第一顺序索引集中的各个顺序索引。
下面,将参照图4来描述根据本公开第一实施例的对输入数据序列进行极化编码以产生极化码的方法。该方法可以由移动通信系统中的基站和/或用户设备执行。
如图3所示,在步骤S401中,基于第一顺序索引集产生用于所述极化码的母码长(N)的第二顺序索引集。如上所述,所述第一或第二顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序。
在第一实现方式中,所述第一顺序索引集是用于所述极化码的最大可能母码长N max的顺序索引集。如上文所述,该用于最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。可以按照上文所述的确定用于预定母码长的顺序索引集的方式来确定第一顺序索引集(此时所述预定母码长为最大可能母码长N max),在这里不再赘述。需要注意的是,可以在执行图4所述的方法之前确定并存储第一顺序索引集,也可以在执行图4所述的方法时,作为步骤S401的一部分或在步骤S401之前确定并存储第一顺序索引集。
如果所述极化码的母码长N等于最大可能母码长N max,则可以将第一顺序索引集作为用于所述极化码的母码长N的第二顺序索引集。
如果所述极化码的母码长小于最大可能母码长N max,则可以从第一顺序索引集中选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的顺序索引集中的顺序索引。例如,可以根据第一顺序索引集中的各个顺序索引的高有效位,选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的第二顺序索引集中的顺序索引。例如,可以从第一顺序索引集中,选择与所述母码长对应的数量的高有效位的值小于所述母码长,且剩余位(低有效位)均为0或均为1的顺序索引。在图2所示的第一顺序索引集中,假设母码长N为4,则可以从第一顺序索引集中,选择与所述母码长对应的数量的、高有效位(2个高有效位,即,最高有效位和次高有效位)的值小于所述母码长4且剩余位为0的顺序索引000、010、100和110。然后,由于在母码长为4的情况下只有4个比特位置,并且可以用2个比特来表示这4个比特位置,因此,可以将所选择的各个顺序索引000、010、100和110的最后一位去掉,从而产生用于母码长N=4的第二顺序索引集中的顺序索引“00,01,10,11”,如图5所示。应当认识到,也可以采用其他方式从第一顺序索引集中选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的顺序索引集中的顺序索引。例如,可以根据第一顺序索引集中的各个顺序索引的低有效位,选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的第二顺序索引集中的顺序索引。例如,可以从第一顺序索引集中,选择 与所述母码长对应的数量的低有效位的值小于所述母码长,且剩余位(高有效位)均为0或均为1的顺序索引,继而获得用于母码长的第二顺序索引集中的顺序索引。此外,例如,在图2所示的第一顺序索引集中,假设母码长N为4,则可以从第一顺序索引集选择第1、3、5和7个顺序索引或第2、4、6和8个顺序索引,并且基于所选择的顺序索引产生用于母码长的顺序索引集中的顺序索引。
在第二实现方式中,所述第一顺序索引集是用于所述极化码的某个小于最大可能母码长N max的码长N middle的顺序索引集。在这种情况下,可以按照上文所述的确定用于预定母码长的顺序索引集的方式来确定第一顺序索引集(此时所述预定母码长为N middle),在这里不再赘述。
在本实现方式中,如果要产生的极化码的码长N等于N middle,则可以将第一顺序索引集作为用于所述极化码的母码长N的第二顺序索引集。
如果所述极化码的母码长N小于N middle,则可以按照与第一实现方式相同的方式来,从第一顺序索引集中选择数量与所述母码长N相等的顺序索引,并且基于所选择的顺序索引产生用于母码长N的顺序索引集中的顺序索引。如果要产生的极化码的母码长N大于Nmiddle,则可以通过扩展第一顺序索引集来构造(产生)用于要产生的极化码的母码长N的顺序索引集。可以采用多种方式来构造用于要产生的极化码的母码长的顺序索引集。例如,例如用于母码长4的第一顺序索引集为{a,b,c,d},其中0<=a,b,c,d<4,要产生的极化码的母码长为8,则可以将第一顺序索引集扩展为{2a,2a+1,2b,2b+1,2c,2c+1,2d,2d+1},作为用于要产生的极化码的母码长的顺序索引集。以图2所示的用于母码长8的第一顺序索引集为例。假设要产生的极化码的母码长为16,则可以基于用于母码长8的第一顺序索引集构造用于母码长16的第二顺序索引集。在一个示例中,可以将第一顺序索引集的每个顺序索引表示的10进制数乘以2,获得0、2、4、8、6、10、12、14,然后将第一顺序索引集的每个顺序索引表示的10进制数乘以2再加1,获得1、3、5、9、7、11、13、15,然后可以将二者组合,获得顺序索引集“0、1、2、3、4、5、8、9、6、7、10、11、12、13、14、15”,作为用于母码长16的第二顺序索引集。
在本实施例中,第一顺序索引集可以是图2(1)-2(19)所示的顺序索 引集之一,在这种情况下,可以按照上文所述的方式或其他方式基于图2(1)-2(19)所示的第一顺序索引集产生第二顺序索引集。可替换地,第二顺序索引集可以是图2(1)-2(19)所示的顺序索引集之一,在这种情况下,可以按照上文所述的方式或其他方式,基于第一顺序索引集(可以是图2(1)-2(19)所示的顺序索引集之一或其他顺序索引集)产生第二顺序索引集。继续参照图4,在步骤S402中,根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长N的数据序列。
具体地,由于输入数据序列有K个比特,并且需要将其扩展为具有N个比特的数据序列,因此,需要在N个比特位置中的N-K个比特位置上插入冻结比特,并且在其余K个比特位置上放置输入数据序列的信息比特。为此,可以根据第二顺序索引集中各个顺序索引表示的优先顺序,从第二顺序索引集中选择与输入数据序列的比特数K相同数量的顺序索引。具体地,可以按照优先顺序的降序选择所述K个顺序索引。然后,可以将输入数据序列的各个比特依序放置在所选择的顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述母码长N的数据序列。以图4为例。假设K=2,则需要选择2个顺序索引。在该示例中,右侧的顺序索引表示的优先顺序高,因此,按照从右到左的顺序选择2个顺序索引100和110,如图5所示,并且在这两个顺序索引指示的比特位置2和比特位置3上放置输入数据序列的2个信息比特,而在比特位置0和1上插入冻结比特,从而产生长度为4的扩展的数据序列。
返回图4,在步骤S403中,对扩展后的数据序列进行极化编码,以产生所述极化码。具体地,可以对扩展后的数据序列进行基本极化编码以产生母码长为N的母极化码,然后对该母极化码进行速率匹配,已产生码长为M的极化码。可以采用本领域公知的方法进行基本极化编码以及速率匹配,在这里不再赘述。需要说明的是,根据所使用的速率匹配方法,可以适应性地改变在上文中选择顺序索引的方法,从而选择出与所使用的速率匹配方法相匹配的顺序索引。
下面,参照图6来描述根据本发明第一实施例的编码器。该编码器可以执行图4所示的方法,并且可以被包含在基站或移动台中。由于该编码器执行的操作的细节与图4所示的方法相同,因此在这里省略对相同内容的描述。如图6所示,编码器600包括存储单元601、产生单元602、扩展单元603 和编码单元604。
存储单元601存储第一顺序索引集。如上所述,所述第一或第二顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序,并且例如可以是上文所述的顺序索引集。如上文所述,所述第一顺序索引集可以是预先产生并存储在存储单元601中的。
产生单元602可以基于第一顺序索引集产生用于所述极化码的母码长(N)的第二顺序索引集。
在第一实现方式中,所述第一顺序索引集是用于所述极化码的最大可能母码长N max的顺序索引集。如上文所述,该用于最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。
如果所述极化码的母码长N等于最大可能母码长N max,则产生单元602可以将第一顺序索引集作为用于所述极化码的母码长N的第二顺序索引集。如果所述极化码的母码长小于最大可能母码长N max,则产生单元602可以从第一顺序索引集中选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的顺序索引集中的顺序索引。例如,产生单元601可以根据第一顺序索引集中的各个顺序索引的高有效位或低有效位,选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的第二顺序索引集中的顺序索引。
在第二实现方式中,所述第一顺序索引集是用于所述极化码的某个小于最大可能母码长N max的码长N middle的顺序索引集。在这种情况下,可以按照上文所述的确定用于预定母码长的顺序索引集的方式来确定第一顺序索引集(此时所述预定母码长为N middle),在这里不再赘述。
在本实现方式中,如果要产生的极化码的码长N等于N middle,则产生单元602可以将第一顺序索引集作为用于所述极化码的母码长N的第二顺序索引集。
如果所述极化码的母码长N小于N middle,则产生单元602可以按照与第一实现方式相同的方式来,从第一顺序索引集中选择数量与所述母码长N相 等的顺序索引,并且基于所选择的顺序索引产生用于母码长N的顺序索引集中的顺序索引。
如果要产生的极化码的母码长N大于N middle,则产生单元602可以通过扩展第一顺序索引集来构造(产生)用于要产生的极化码的母码长N的顺序索引集。产生单元602可以按照在上文中参照图4描述的方式来构造(产生)用于要产生的极化码的母码长N的顺序索引集,在这里不再赘述。
扩展单元603可以根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长N的数据序列。具体地,由于输入数据序列有K个比特,并且需要将其扩展为具有N个比特的数据序列,因此,需要在N个比特位置中的N-K个比特位置上插入冻结比特,并且在其余K个比特位置上放置输入数据序列的信息比特。为此,扩展单元603可以根据第二顺序索引集中各个顺序索引表示的优先顺序,从第二顺序索引集中选择与输入数据序列的比特数K相同数量的顺序索引。具体地,扩展单元603可以按照优先顺序的降序选择所述K个顺序索引。然后,扩展单元603可以将输入数据序列的各个比特依序放置在所选择的顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述母码长N的数据序列。
编码单元604可以对扩展后的数据序列进行极化编码,以产生所述极化码。具体地,编码单元604可以对扩展后的数据序列进行基本极化编码以产生母码长为N的母极化码,然后对该母极化码进行速率匹配,已产生码长为M的极化码。编码单元604可以采用本领域公知的方法进行基本极化编码以及速率匹配,在这里不再赘述。
在本公开的第一实施例中,可以对于预定母码长(例如最大可能母码长)预先产生并存储顺序索引集,并且当要产生的极化码的母码长不同于该最大可能母码长时,基于用于最大可能母码长的顺序索引集产生用于要产生的极化码的母码长的顺序索引集。由此,不需要对于全部可能母码长预先产生和存储顺序索引集,从而节省了存储空间。由于要产生的极化码的母码长小于最大可能母码长,因此,即使即时地确定用于要产生的极化码的母码长的顺序索引集,也不会引起显著的延迟。
下面,描述根据本公开第二实施例的对输入数据序列进行极化编码以产生极化码的方法。
如图7所示,在步骤S701中,根据第一顺序索引集,获取值小于极化码 的码长的顺序索引。如上所述,第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序。
在第一实现方式中,所述第一顺序索引集是用于所述极化码的最大可能母码长的顺序索引集。如上文所述,用于所述极化码的最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。可以按照上文所述的方式产生用于所述极化码的最大可能母码长的顺序索引集,在这里不再赘述。
在这种情况下,可以将第一顺序索引集中的各个顺序索引进行比特反转,以产生反转顺序索引集。以图2所述的第一顺序索引集为例。对该第一顺序索引集中的各个顺序索引进行比特反转,从而产生反转顺序索引集“000、100、010、001、110、101、011、111”,如图8A所示。又例如,当第一顺序索引集是用于母码长4096的顺序索引集时,对其进行反转产生的反转顺序索引集可以如图8B-8E所示。然后,可以从反转顺序索引集中,选择值小于所述极化码的码长的顺序索引。在图8A的示例中,假设极化码的码长M为3,则可以从反转顺序索引集中,选择值小于3的顺序索引。由于所选择的顺序索引小于4个,因此可以仅用2比特来表示对应的比特位置。
在第二实现方式中,所述第一顺序索引集是对用于所述极化码的最大可能母码长的顺序索引集的顺序索引进行比特反转获得的顺序索引集。在图8A的例子中,所述第一顺序索引不再是第一行所示的顺序索引集,而是第二行所示的反转顺序索引集。在最大可能母码长为4096的例子中,所述第一顺序索引是图8B-图8E所示的反转顺序索引集。在这种情况下,在步骤S701中,可以从该第一顺序索引集(反转顺序索引集)中,选择值小于所述极化码的码长的顺序索引。
在本实施例中,第一顺序索引集可以是图2(1)-2(19)所示的顺序索引集之一,在这种情况下,可以按照上文所述的方式或其他方式基于图2(1)-2(19)所示的第一顺序索引集获取值小于极化码的码长的顺序索引。可替换地,所述值小于极化码的码长的顺序索引也可以是图2(1)-2(19)所示的顺序索引集之一,在这种情况下,可以按照上文所述的方式或其他方式, 基于第一顺序索引集(可以是图2(1)-2(19)所示的顺序索引集之一或其他顺序索引集)获取所述值小于极化码的码长的顺序索引。
返回图7,在步骤S702中,利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列。
在第一实现方式中,首先,可以根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引。在图8A所示的例子中,假设输入数据序列的比特数K为2,则可以从所获取的顺序索引中,按照从右向左的顺序选择2个顺序索引。然后,可以将所选择的顺序索引进行比特反转,以产生反转顺序索引。在图8A的例子中,产生反转顺序索引01和10。然后,可以将输入数据序列的各个比特依序放置在反转顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。在图8A的例子中,可以将输入数据序列的2个比特依序放置在反转顺序索引指示的比特位置1和2上,并且将冻结毕业放置在比特位置0和3上,从而产生长度为4的数据序列。
在第二实现方式中,首先,可以根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引。然后,可以将输入数据序列的各个比特依序放置在所选择的这K个顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
继续参照图7,在步骤S703中,对扩展后的数据序列进行极化编码,以产生所述极化码。具体地,可以对扩展后的数据序列进行基本极化编码以产生母码长为N的母极化码,然后对该母极化码进行速率匹配,已产生码长为M的极化码。可以采用本领域公知的方法进行基本极化编码以及速率匹配,在这里不再赘述。
下面,参照图9来描述根据本发明第二实施例的编码器。该编码器可以执行图7所示的方法,并且可以被包含在基站或移动台中。由于该编码器执行的操作的细节与图7所示的方法相同,因此在这里省略对相同内容的描述。如图9所示,编码器900包括存储单元901、获取单元902、扩展单元903和编码单元904。
存储单元901存储第一顺序索引集。如上所述,第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序,并且例如可以是上文所述的顺序索引集。如上文所述,第一顺序索引集可以是预先产生并存储在存储单元901中的。
获取单元902可以根据第一顺序索引集,获取值小于极化码的码长的顺序索引。
在第一实现方式中,所述第一顺序索引集是用于所述极化码的最大可能母码长的顺序索引集。如上文所述,用于所述极化码的最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。可以按照上文所述的方式产生用于所述极化码的最大可能母码长的顺序索引集,在这里不再赘述。在这种情况下,获取单元902可以将第一顺序索引集中的各个顺序索引进行比特反转,以产生反转顺序索引集。然后,获取单元902可以从反转顺序索引集中,选择值小于所述极化码的码长的顺序索引。
在第二实现方式中,所述第一顺序索引集是对用于所述极化码的最大可能母码长的顺序索引集的顺序索引进行比特反转获得的顺序索引集。在这种情况下,获取单元902可以从第一顺序索引集中,选择值小于所述极化码的码长的顺序索引。
扩展单元903可以利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列。
在第一实现方式中,扩展单元903可以根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引。然后,扩展单元903可以将所选择的顺序索引进行比特反转,以产生反转顺序索引。然后,扩展单元903可以将输入数据序列的各个比特依序放置在反转顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
在第二实现方式中,扩展单元903可以根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同 数量的顺序索引。然后,扩展单元903可以将输入数据序列的各个比特依序放置在所选择的这K个顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
编码单元904可以对扩展后的数据序列进行极化编码,以产生所述极化码。具体地,编码单元904可以对扩展后的数据序列进行基本极化编码以产生母码长为N的母极化码,然后对该母极化码进行速率匹配,已产生码长为M的极化码。编码单元904可以采用本领域公知的方法进行基本极化编码以及速率匹配,在这里不再赘述。
在本公开的第二实施例中,可以对于预定母码长(例如最大可能母码长)预先产生并存储顺序索引集,并且当要产生的极化码的码长不同于该最大可能母码长时,基于用于最大可能母码长的顺序索引集来扩展输入数据序列。由此,不需要对于全部可能母码长预先产生和存储顺序索引集,从而节省了存储空间。可替换地,取代存储用于预定母码长的顺序索引集,也可以直接存储对用于预定母码长的顺序索引集的顺序索引进行比特反转之后产生的顺序索引集,使得在实际通信时,不需要再执行比特反转操作,从而进一步减少计算量。
下面,描述根据本公开第三实施例的对输入数据序列进行极化编码以产生极化码的方法。
如图10所示,在步骤S1001中,根据第一顺序索引集,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列。所述第一顺序索引集可以是在上文中参照第一实施例描述的顺序索引集,例如可以是图2(1)-2(19)所示的顺序索引集之一。在这种情况下,所述第一顺序索引集具有等于所述极化码的母码长的数量的顺序索引。换言之,例如,当图2(1)-2(19)所示的顺序索引集之一具有等于所述极化码的母码长的数量的顺序索引时,可以直接使用该顺序索引集来扩展输入数据序列。如上文所述,第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序。
具体地,由于输入数据序列有K个比特,并且需要将其扩展为具有N个比特的数据序列,因此,需要在N个比特位置中的N-K个比特位置上插入冻结比特,并且在其余K个比特位置上放置输入数据序列的信息比特。为此, 可以根据第一顺序索引集中各个顺序索引表示的优先顺序,从第一顺序索引集中选择与输入数据序列的比特数K相同数量的顺序索引。例如,可以按照优先顺序的降序选择所述K个顺序索引。然后,可以将输入数据序列的各个比特依序放置在所选择的顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述母码长N的数据序列。
然后,在步骤S1002中,对扩展后的数据序列进行极化编码,以产生所述极化码。具体地,可以对扩展后的数据序列进行基本极化编码以产生母码长为N的母极化码,然后对该母极化码进行速率匹配,已产生码长为M的极化码。可以采用本领域公知的方法进行基本极化编码以及速率匹配,在这里不再赘述。需要说明的是,根据所使用的速率匹配方法,可以适应性地改变在上文中选择顺序索引的方法,从而选择出与所使用的速率匹配方法相匹配的顺序索引。
下面,参照图11来描述根据本发明第三实施例的编码器。该编码器可以执行图10所示的方法,并且可以被包含在基站或移动台中。由于该编码器执行的操作的细节与图10所示的方法相同,因此在这里省略对相同内容的描述。如图11所示,编码器1100包括存储单元1101、扩展单元1102和编码单元1103。
存储单元1101存储第一顺序索引集。如上所述,第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序。如上文所述,第一顺序索引集可以是预先产生并存储在存储单元1101中的,并且可以是图2(1)-2(19)所示的顺序索引集之一。
扩展单元1102可以利用第一顺序索引集,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列。可以参照在上文中针对图10描述的方式来进行该扩展参照。
编码单元1103可以对扩展后的数据序列进行极化编码,以产生所述极化码。具体地,编码单元1103可以对扩展后的数据序列进行基本极化编码以产生母码长为N的母极化码,然后对该母极化码进行速率匹配,以产生码长为M的极化码。编码单元1103可以采用本领域公知的方法进行基本极化编码以及速率匹配,在这里不再赘述。
需要说明的是,用于上述实施方式的说明的方框图表示功能单位的功能块。这些功能块(构成部)通过硬件及/或软件的任意的组合而实现。另外,各功能块的实现手段不被特别地限定。即,各功能块可以由物理上及/或逻辑上联合的一个装置而实现,也可以将物理上及/或逻辑上分离的两个以上的装置直接及/或间接地(例如,有线及/或无线)连接,由这多个装置实现。
例如,本发明的一个实施方式中的无线基站、用户终端等,可以起到进行本发明的无线通信方法的处理的计算机的作用。图12是表示本发明的一个实施方式的无线基站及用户终端的硬件构成的一个例子的图。上述无线基站10及用户终端20,在物理上可以构成为包括处理器1201、内存1202、存储器1203、通信装置1204、输入装置1205、输出装置1206、总线1207等的计算机装置。其中,处理器1201可以充当上文所述的编码器,并且可以执行上文所述的方法。
需要说明的是,在以下的说明中,“装置”这一词能够解读为电路、设备、单元等。无线基站10及用户终端20的硬件构成可以以包括图中所示的一个或多个各装置的方式构成,也可以不包括一部分的装置而被构成。
关于无线基站10及用户终端20中的各功能,是通过在处理器1201、内存1202等硬件上读取指定的软件(程序),处理器1201进行运算,且通过控制通信装置1204进行的通信、内存1202及存储器1203中的数据的读取及/或写入来实现的。
处理器1201例如对操作系统进行操作来对计算机整体进行控制。处理器1201可以由包括与外围装置的接口、控制装置、运算装置、寄存器等的中央处理装置(CPU:中央处理单元)构成。例如,上述各编码器等可以由处理器1001实现。
另外,处理器1201将程序(程序代码)、软件模块、数据从存储器1203及/或通信装置1204读取至内存1202,按照其内容执行各种处理。作为程序,使用使计算机执行上述实施方式中说明的动作的至少一部分的程序。上述各种处理是以在一个处理器1201中执行为主旨来进行说明的,但可也可由两个以上的处理器1201同时或者依次执行。处理器1201可以通过一个以上的芯片实装。需要说明的是,程序可以经由通信电路从网络发送。
内存1202是计算机能够读取的记录介质,例如可以由ROM(只读存储 器)、EPROM(可擦除可编程ROM)、EEPROM(电可擦除可编程ROM)、RAM(随机存取存储器)等至少一个来构成。内存1202可以称作寄存器、超高速缓冲存储器、主内存(主存储装置)等。内存1202能够保存用于实施本发明的一个实施方式的无线通信方法的可执行程序(程序代码)、软件模块等。
存储器1203是计算机可读取的记录介质,例如可以由CD-ROM(Compact Disc ROM)等光盘、硬盘驱动器、软磁盘、磁光盘(例如压缩光盘、数码多功能光盘、Blu-ray(注册商标)光盘)、智能卡、闪存(例如闪存卡、闪存棒、薄式闪存)、软盘(floppy disk注册商标)、磁条等至少一种构成。存储器1203可以称作補助存储装置。上述存储介质可以是例如包括内存1202及/或存储器1203的数据库、服务器等其它合适的介质。
通信装置1204是经由有线及/或无线网络来进行计算机间的通信的硬件(收发信设备),例如也称作网络设备、网络控制器、网卡、通信模块等。
输入装置1205是接受来自外部的输入的输入设备(例如键盘、鼠标、话筒、开关、按钮、传感器等)。输出装置1206是实施向外部的输出的输出设备(例如显示器、扬声器、LED灯等)。需要说明的是,输入装置1205及输出装置1206可以是一体的结构(例如触摸屏)。
另外,处理器1201和内存1202等各装置由信息进行通信的总线1207连接。总线1207可以由单一的总线构成,也可以由装置间不同的总线构成。
另外,无线基站10及用户终端20可以包括微处理器、数字信号处理器(DSP:数字信号处理器)、ASIC(专用集成电路)、PLD(可编程逻辑器件)、FPGA(现场可编程门阵列)等硬件来进行构成,可以利用该硬件实现各功能块的一部分或者全部。例如,处理器1201可以通过至少一个所述硬件来实装。
在本说明书中说明的各方式/实施方式可以适用于LTE(长期演进)、LTE-A(LTE-Advanced)、超3G、IMT-Advanced、4G、5G、FRA(未来无限接入)、W-CDMA(注册商标)、GSM(注册商标)、CDMA2000、UMB(超移动宽带)、IEEE802.11(Wi-Fi)、IEEE802.16。16(WiMAX)、IEEE802.20、UWB(超宽带)、Bluetooth(注册商标)、利用其它合适的系统的系统及/或基于这些而被扩展的下一代系统。
在本说明书中说明的各方式/实施方式的处理步骤、次序、流程图等只要没有矛盾就可以将顺序替换。例如,在本说明书说明的方法以示例的顺序来提示各种步骤的要素,不限于提示的特定的顺序。
在本说明书中由基站进行的特定动作有时因情况而由其上位节点(upper node)来进行。在由具有基站的一个或者多个网络节点(network nodes)构成的网络中,为了其与终端的通信而进行的各种操作显然能够由基站及/或基站以外的其它网络节点(例如MME或者S-GW等,但并不限于此)来进行。上述例举了基站以外的其它网络节点为一个的情况,但也可以是多个其它网络节点的组合(例如,MME及S-GW)。
输入输出的信息等可以保存在特定的地方(例如内存),也可以由管理表管理。输入输出的信息等能够覆盖、更新、或者追加。输出的信息等可以被削除。输入的信息等可以向其它装置发送。
在本说明书中使用的“判断”、“确定”这些术语有时包括多种多样的动作。“判断”、“确定”可以包括把例如 判定(judging)、计算(calculating)、算出(computing)、处理(processing)、导出(deriving)、调查(investigating)、查找(looking up)(例如在表、数据库或者其它数据结构中的查找)、确认(ascertaining)看做进行了“判断”、“确定”等。另外,“判断”、“确定”可以包括把接收(receiving)(例如接收信息)、发送(transmitting)(例如发送信息)、输入(input)、输出(output)、访问(accessing)(例如访问内存中的数据)看做进行了“判断”、“确定”等。另外,“判断”、“确定”可以包括把解决(resolving)、选择(selecting)、选定(choosing)、确立(establishing)、比较(comparing)等看做进行了“判断”、“确定”。也就是说,“判断”、“确定”可以包括把某些动作看做进行了“判断”、“确定”。判断可以利用由1位表示的值(0或1)来进行,也可以由真假值(Boolean:true或者false)来进行,也可以由数值的比较(例如其与指定值的比较)来进行。
在本说明书中说明的各方式/实施方式可以单独使用,也可以组合使用,还可以伴随着执行而进行切换。另外,指定的信息的通知不限于显式地进行,也可以隐式地进行。
上文所述的软件与称作软件、固件、中间件、微代码、硬件描述语言或称作其它名称无关,能够广泛地解释成指令、指令集、代码、代码段、程序 代码、程序、子程序、软件模块、应用程序、软件应用程序、软件包、例行程序、子例行程序、对象、可执行文件、执行线程、步骤、功能等意思。
另外,软件、指令等可以经由传送介质来收发信。例如,软件在使用同轴线缆、光纤、双绞线及数字用户线路(DSL)等有线技术及/或红外线、无线及微波等无线技术从网页、服务器、或者其它远程数据源发送的情况下,这些有线技术及/或无线技术包含在传送介质的定义中。
在本说明书中说明的信息、信号等可以使用任一种不同的技术来表示。例如,在上述整个说明中所涉及的数据、指令、命令,信息、信号、位、码元、芯片等可以由电压、电流、电磁波、磁场或者磁性粒子、光场或者光子、或者这些的任意的组合来表示。
需要说明的是,关于在本说明书中说明的术语及/或本说明书的理解所需要的术语,可以与具有相同或者类似意思的术语相置换。例如,信道及/或码元可以是信号(signal)。另外,信号可以是消息。
另外,在本说明书中说明的信息、参数等可以由绝对值表示、也可以由与指定值的相对值表示、还可以由对应的其它信息表示。例如,无线资源可以由索引指示。用于上述参数的名称在任何时候都不被限定。此外,使用这些参数的算式等有时与在本说明书中明确公开的不同。各种信道(例如PUCCH、PDCCH等)及信息要素(例如TPC等)能够利用任何合适的名称来识别,所以这些分配给各种信道及信息要素的各种名称在任何时候都不被限定。
基站能够容纳一个或者多个(例如三个)(也称作区段)小区。在基站容纳多个小区的情况下,基站的覆盖区域整体能够区隔成多个更小的区域,每个更小的区域能够利用基站子系统(例如屋内用的小型基站RRH:远程无线头)来提供通信服务。“小区”或者“区段”这些术语是指在该覆盖区域中进行通信服务的基站、及/或基站子系统的覆盖区域的一部分或者整体。此外,“基站”、“eNB”、“小区”及“区”这些术语在本说明书中能够被互换使用。基站有时也称作固定站、NodeB、eNodeB(eNB)、接入点(access point)、毫微微小区、小型小区等。
移动台因本领域技术人员而异,有时称作用户站、移动单元、用户设备、无线单元、远程单元、移动设备、无线设备、无线通信设备、远程设备、移 动用户站、接入终端、移动终端、无线终端、远程终端、手持设备、用户代理、移动客户端、客户端、或者其它合适的术语。
在本说明书中使用的“基于”只要没有被明确说明,不表示“仅仅基于”。换句话说,“基于”表示“仅仅基于”和“至少基于”两个意思。
使用本说明书中所使用的“第1”、“第2”等称呼的要素的任何参照,不全面地限定这些要素的量或者顺序。这些称呼作为区别两个以上要素间的便利的方法而能够在本说明书中使用。因此,第1及第2要素的参照不表示仅能够采用两个要素,或者任何形式下的第1要素必须先行于第2要素。
“包括”、“包含”以及这些的变形只要在本说明书或者权利要求范围中使用,这些术语与术语“具备”同样地表示包括。此外,在本说明书或者权利要求范围中使用的术语“或者(or)”表示不是异或。
以上,对本发明进行了详细的说明,但对于本领域技术人员而言,本发明显然不限于本说明书中说明的实施方式。本发明在不脱离权利要求范围的记载所决定的本发明的主旨及范围的情况下能够进行修正及变更来实施。因此,本说明书的记载是为了举例说明,没有对本发明进行丝毫的制限的意图。

Claims (24)

  1. 一种对输入数据序列进行极化编码以产生极化码的方法,包括:
    基于第一顺序索引集产生用于所述极化码的母码长的第二顺序索引集,所述第一或第二顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;
    根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长的数据序列;
    对扩展后的数据序列进行极化编码,以产生所述极化码。
  2. 如权利要求1所述的方法,其中,所述第一顺序索引集是用于所述极化码的最大可能母码长的顺序索引集。
  3. 如权利要求2所述的方法,其中,用于最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。
  4. 如权利要求2或3所述的方法,其中,基于第一顺序索引集产生用于所述极化码的母码长的第二顺序索引集包括:
    根据第一顺序索引集中的各个顺序索引的高有效位或低有效位,选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的顺序索引集中的顺序索引。
  5. 一种编码器,用于对输入数据序列进行极化编码以产生极化码,包括:存储单元,被配置为存储第一顺序索引集,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;
    产生单元,被配置为基于第一顺序索引集产生用于所述极化码的母码长的第二顺序索引集;
    扩展单元,被配置为根据第二顺序索引集,将输入数据序列扩展为比特数等于所述母码长的数据序列;
    编码单元,被配置为对扩展后的数据序列进行极化编码,以产生所述极 化码。
  6. 如权利要求5所述的编码器,其中,所述第一顺序索引集是用于所述极化码的最大可能母码长的顺序索引集。
  7. 如权利要求6所述的编码器,其中,用于最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。
  8. 如权利要求6或7所述的编码器,其中,所述产生单元根据第一顺序索引集中的各个顺序索引的高有效位或低有效位,选择数量与所述母码长相等的顺序索引,并且基于所选择的顺序索引产生用于母码长的顺序索引集中的顺序索引。
  9. 一种对输入数据序列进行极化编码以产生极化码的方法,包括:
    根据第一顺序索引集,获取值小于极化码的码长的顺序索引,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;
    利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列;
    对扩展后的数据序列进行极化编码,以产生所述极化码。
  10. 如权利要求9所述的方法,其中,所述第一顺序索引集是用于所述极化码的最大可能母码长的顺序索引集。
  11. 如权利要求10所述的方法,其中,根据第一顺序索引集,获取值小于极化码的码长的顺序索引包括:
    将第一顺序索引集中的各个顺序索引进行比特反转,以产生反转顺序索引集;
    从反转顺序索引集中,选择值小于所述极化码的码长的顺序索引。
  12. 如权利要求9所述的方法,其中,所述第一顺序索引集是对用于所述极化码的最大可能母码长的顺序索引集的顺序索引进行比特反转获得的顺序索引集。
  13. 如权利要求12所述的方法,其中,根据第一顺序索引集,获取值小于极化码的码长的顺序索引包括:
    从第一顺序索引集中,选择值小于所述极化码的码长的顺序索引。
  14. 如权利要求10至13之一所述的方法,其中,用于所述极化码的最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。
  15. 如权利要求9至14之一所述的方法,其中,利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列包括:
    根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引;
    将所选择的顺序索引进行比特反转,以产生反转顺序索引;以及
    将输入数据序列的各个比特依序放置在反转顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
  16. 如权利要求9至14之一所述的方法,其中,利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列包括:
    根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引;以及
    将输入数据序列的各个比特依序放置在所选择的顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
  17. 一种编码器,用于对输入数据序列进行极化编码以产生极化码,该编码器包括:
    存储单元,被配置为存储第一顺序索引集,所述第一顺序索引集中的每个顺序索引表示在该顺序索引指示的比特位置上发送信息比特相对于在其他索引指示的比特位置上发送信息比特的优先顺序;
    获取单元,被配置为根据第一顺序索引集,获取值小于极化码的码长的顺序索引;
    扩展单元,被配置为利用所获取的顺序索引,将输入数据序列扩展为比特数等于所述极化码的母码长的数据序列;
    编码单元,被配置为对扩展后的数据序列进行极化编码,以产生所述极 化码。
  18. 如权利要求17所述的编码器,其中,所述第一顺序索引集是用于所述极化码的最大可能母码长的顺序索引集。
  19. 如权利要求18所述的编码器,其中,根据第一顺序索引集,获取值小于极化码的码长的顺序索引包括:
    将第一顺序索引集中的各个顺序索引进行比特反转,以产生反转顺序索引集;
    从反转顺序索引集中,选择值小于所述极化码的码长的顺序索引。
  20. 如权利要求17所述的编码器,其中,所述第一顺序索引集是对用于所述极化码的最大可能母码长的顺序索引集的顺序索引进行比特反转获得的顺序索引集。
  21. 如权利要求20所述的编码器,其中,根据第一顺序索引集,获取值小于极化码的码长的顺序索引包括:
    从第一顺序索引集中,选择值小于所述极化码的码长的顺序索引。
  22. 如权利要求18至21之一所述的编码器,其中,用于所述极化码的最大可能母码长的顺序索引集中的各个顺序索引指示的比特位置是分别根据基于不同的信道条件计算的在各个比特位置上发送信息比特时接收所述信息比特的错误概率选择的比特位置。
  23. 如权利要求17至22之一所述的编码器,其中,所述扩展单元根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引,将所选择的顺序索引进行比特反转,以产生反转顺序索引,将输入数据序列的各个比特依序放置在反转顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
  24. 如权利要求17至22之一所述的编码器,其中,所述扩展单元根据所获取的各个顺序索引表示的优先顺序,从所获取的各个顺序索引中选择与输入数据序列的比特数相同数量的顺序索引,将输入数据序列的各个比特依序放置在所选择的顺序索引指示的比特位置上,并且将冻结比特放置在其他比特位置上,从而产生比特数等于所述极化码的母码长的数据序列。
PCT/CN2018/071656 2017-01-06 2018-01-05 编码方法和编码器 WO2018127156A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019536849A JP2020505813A (ja) 2017-01-06 2018-01-05 符号化方法及び符号化装置
US16/476,051 US11184027B2 (en) 2017-01-06 2018-01-05 Encoding method and encoder
CN201880006117.7A CN110226290B (zh) 2017-01-06 2018-01-05 编码方法和编码器

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201710011206.8 2017-01-06
CN201710011206 2017-01-06
CN201710656896.2A CN108282261A (zh) 2017-01-06 2017-08-03 编码方法和编码器
CN201710656896.2 2017-08-03

Publications (1)

Publication Number Publication Date
WO2018127156A1 true WO2018127156A1 (zh) 2018-07-12

Family

ID=62789517

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/071656 WO2018127156A1 (zh) 2017-01-06 2018-01-05 编码方法和编码器

Country Status (1)

Country Link
WO (1) WO2018127156A1 (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160013810A1 (en) * 2014-07-10 2016-01-14 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
CN105811998A (zh) * 2016-03-04 2016-07-27 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统
CN106027071A (zh) * 2015-03-31 2016-10-12 旺宏电子股份有限公司 用以产生可变码长的极化码的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160013810A1 (en) * 2014-07-10 2016-01-14 The Royal Institution For The Advancement Of Learning / Mcgill University Flexible polar encoders and decoders
CN106027071A (zh) * 2015-03-31 2016-10-12 旺宏电子股份有限公司 用以产生可变码长的极化码的方法及装置
CN105811998A (zh) * 2016-03-04 2016-07-27 深圳大学 一种基于密度演进的极化码构造方法及极化码编译码系统

Similar Documents

Publication Publication Date Title
JP6859429B2 (ja) ポーラー符号を使用してデータを符号化するための方法及び装置
US20190349009A1 (en) Polar Coding Encoding/Decoding Method And Apparatus
CN112601083A (zh) 一种图像数据的编码、解码方法及装置
WO2019015592A1 (zh) 一种Polar码编码方法及装置
JP7027520B2 (ja) Polar符号化方法および装置
WO2018157853A1 (zh) 用于确定Polar码编解码的方法、装置和设备
WO2018129695A1 (en) Puncturing and repetition for data encoding
Campobello et al. Comparison of local lossless compression algorithms for wireless sensor networks
CN110226290B (zh) 编码方法和编码器
JP2019519131A (ja) ポーラ符号を用いた符号化及び復号
JP7028891B2 (ja) 通信装置及び通信方法
WO2018127155A1 (zh) 编码方法和编码器
WO2018127156A1 (zh) 编码方法和编码器
US11057154B2 (en) Method and apparatus for rate matching interleaving for polar codes
WO2022078316A1 (zh) 通信译码方法、装置、存储介质、芯片及相关设备
JP6259946B1 (ja) 機械学習システム、識別システム及びプログラム
WO2020042089A1 (zh) Scl并行译码方法、装置及设备
WO2018143124A1 (ja) 通信装置、及び系列選択方法
WO2020195147A1 (ja) 情報処理装置
US20220187895A1 (en) Information processing device
JP7016405B2 (ja) 対話サーバ
WO2018167980A1 (ja) 通信装置、符号化方法、及び復号方法
WO2018233565A1 (zh) 极化编码方法、极化编码器和无线通信设备
JP6948221B2 (ja) 在宅率推定装置
WO2018207377A1 (ja) 通信装置、符号化方法、及び復号方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18735926

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019536849

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18735926

Country of ref document: EP

Kind code of ref document: A1