A power imbalance multi-stage decoding method and system for sparse code multiple access
Through factor graph matrix grading and progressive grading power optimization algorithm, power imbalance distribution in sparse code multiple access systems is realized, which solves the problem of high bit error rate caused by inter-user interference and improves the communication quality of the SCMA system.
Patent Information
- Application Number
- CN202510069692.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-16
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2045-01-16
AI Technical Summary
In the traditional PLDPC encoding SCMA scheme, each user has equal transmission power allocation when resource allocation, and the decoding process of different users is independent of each other, which cannot effectively eliminate interference between users, resulting in a high bit error rate of the SCMA system.
The factor graph matrix is used for user grading, and power imbalance allocation is performed through a progressive grading power optimization algorithm to determine the local optimal power vector, and combined with power-oriented decoding, it eliminates inter-user interference step by step.
While keeping the total transmit power unchanged, the combination of power imbalance and multi-stage decoding can significantly reduce the bit error rate of the SCMA system and improve system performance.
Smart Images

Figure CN119865285B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of communication technology, and in particular to a power imbalance multi-stage decoding method and system for sparse code multiple access. Background Art
[0002] With the rapid development of mobile communication technology and the widespread use of smart devices, spectrum resources are becoming increasingly scarce. To address this challenge, the fifth generation of mobile communication systems (5G) introduces non-orthogonal multiple access (NOMA) technology, with sparse code multiple access (SCMA) being particularly noteworthy. SCMA offers significant advantages in spectrum efficiency, interference mitigation, and support for large-scale connections. It can accommodate more users within limited spectrum resources, meeting the massive connectivity requirements of 5G and addressing spectrum resource constraints. Furthermore, SCMA boasts strong interference mitigation, maintaining stable communication quality even in high-interference environments. Finally, SCMA supports large-scale connections, meeting the demands of 5G application scenarios such as the Internet of Things and large-scale sensor networks.
[0003] For SCMA systems, channel coding can effectively resist inter-user interference and improve data transmission reliability. A structured LDPC code called Protograph LDPC (PLDPC) code is considered to be an ideal channel coding scheme for SCMA systems. A block diagram of an uplink PLDPC-coded SCMA system is shown below. Figure 1 As shown: We consider a Independent users, In an SCMA system with uplink PLDPC coding of orthogonal resources, each user is independently PLDPC coded and equipped with one antenna. In order to achieve overloaded multi-user communication, , and define the overload factor as , where each user can only occupy Resources communicate and transmit, and each resource is user multiplexing; given a users and The SCMA system of resources can be represented by a corresponding factor graph matrix It can clearly reveal the allocation relationship between users and resources; at the transmitter, first, the user's information bit sequence can be expressed as ,in , which is input into the PLDPC encoder to obtain a coded bit sequence , where the encoding rate ; Then send the coded bit sequence to the bit-level random interleaver After that, we can get an interleaved coded bit sequence after interleaving. , interleaved coded bit sequence Zhongmei The bits are mapped by the SCMA mapper into a dimensional sparse codewords, For users Codebook A column vector in , and the codebook size is , It is also the modulation order. Due to the sparsity of SCMA, in a sparse codeword In, only elements are non-zero elements, and the remaining The first element is '0' element, and then each user The sparse codewords are superimposed and transmitted as the transmitted signal; at the receiver, the received signal vector As the formula As shown, Represents a user The channel gain, Indicates a The additive complex Gaussian white noise vector of Represents the noise power spectral density; at the receiver, the interleaved log-likelihood ratios (LLRs) corresponding to the interleaved coded bit sequences of all users are calculated by using the log-domain Message Passing Algorithm (log-MPA) , after deinterleaver processing, the LLRs sequence is obtained The PLDPC decoder uses the belief propagation (BP) algorithm to decode the data and finally detects the user's decoded bit sequence.
[0004] However, in the traditional PLDPC-coded SCMA scheme mentioned above, each user receives equal transmission power during resource allocation, and the decoding processes of different users are independent of each other, which cannot effectively eliminate inter-user interference, resulting in a high bit-error-rate (BER) in the SCMA system. Summary of the Invention
[0005] The present invention provides a power-unbalanced multi-stage decoding method and system for sparse code multiple access, which solves the technical problem in the traditional PLDPC coded SCMA scheme that each user is allocated equal transmission power during resource allocation, and the decoding processes of different users are independent of each other, which cannot effectively eliminate inter-user interference and thus leads to a high bit error rate in the SCMA system.
[0006] A first aspect of the present invention provides a power imbalance multi-stage decoding method for sparse code multiple access, comprising:
[0007] Mapping the information bits sent by multiple users into multi-dimensional sparse codewords through a preset codebook;
[0008] The factor graph matrix is constructed by using each codebook, and each user is graded according to the factor graph matrix under the preset user restriction condition to determine User level; is a positive integer greater than 1;
[0009] Based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used. performing power imbalance distribution on each user at each user level to determine a local optimal power vector;
[0010] Transmitting a transmission signal corresponding to each of the multidimensional sparse codewords according to the local optimal power vector;
[0011] The received signals corresponding to the transmitted signals associated with each user level are sequentially subjected to power-oriented decoding, and the output is A decoded bit sequence of the user level.
[0012] Optionally, the user restriction condition includes:
[0013] The number of users included in each user level must be equal;
[0014] In each user level, each resource is reused, and each resource is reused by the same number of users.
[0015] Optionally, the total transmit power is preset based on a progressive hierarchical power optimization algorithm. Performing power imbalance distribution on each user at each user level to determine a local optimal power vector includes:
[0016] After initializing the initial power of each user to equal power based on the preset total transmit power, the mutual information is calculated based on the initial power of each user using the original model external information transfer algorithm;
[0017] Performing an average operation on each mutual information to output an initial average mutual information, and assigning the initial average mutual information to the old average mutual information;
[0018] According to the power unit step Carry out the When the power is distributed, Initial power reduction for user level , and for the Initial power increase for user level , determine the User level and the The monotonic initialization power of the user level; where, is a positive number;
[0019] Based on the original model external information transfer algorithm, the monotonic initialization power is used to determine the User level and the The monotonically initialized average mutual information corresponding to the user level;
[0020] When the monotone initialized average mutual information is greater than the old average mutual information, assigning the monotone initialized average mutual information to the old average mutual information;
[0021] Regarding the Monotonic initialization power reduction at user level , for the said Monotonic initialization power increase at user level , determine the User level and the Local optimization power at the user level and count the number of allocations ;
[0022] Based on the original model external information transfer algorithm, the local optimization power is used to determine the User level and the The local optimized average mutual information corresponding to the user level;
[0023] When the local optimized average mutual information is less than or equal to the old average mutual information, The local optimization power is used as the User level and the Local optimal power at user level;
[0024] like If it is an even number, then the power unit step is The next power distribution is carried out until Secondary power distribution, determine The user-level local optimal power is formed into a local optimal power vector;
[0025] like If it is an odd number, then the power unit step is The next power distribution is carried out until After the second power distribution, Initial power reduction for user level , and increase the local optimal power of the first user level , output the The monotonic initialization power of the first user level and the new monotonic initialization power of the first user level are used to determine the corresponding local optimal power. The local optimal powers of the user levels form a local optimal power vector.
[0026] Optionally, it also includes:
[0027] When the local optimized average mutual information is greater than the old average mutual information, the allocation times are determined. Is it less than the maximum number of cycles? ;
[0028] If so, the local optimization power and the local optimization average mutual information are used as the new monotone initialization power and the new old average mutual information, and the first Monotonic initialization power reduction at user level , for the said Monotonic initialization power increase at user level , until the local optimized average mutual information is less than or equal to the old average mutual information;
[0029] If not, then The local optimization power is used as the User level and the Local optimal power at the user level.
[0030] Optionally, the power-directed decoding is performed on the received signals corresponding to the transmitted signals associated with each user level in turn, and the output is The user-level decoding bit sequence comprises:
[0031] Calculating an initial log-likelihood ratio sequence of a received signal corresponding to a transmitted signal associated with each user level;
[0032] Calculating an outer interleaved log-likelihood ratio sequence using each of the initial log-likelihood ratio sequences through a log-domain message passing algorithm;
[0033] After deinterleaving the first-level user-level external interleaved log-likelihood ratio sequence, decoding it through a belief propagation algorithm to output first-level user-level decoded bits and a first-level external log-likelihood ratio sequence;
[0034] Interleaving the first-level outer log-likelihood ratio sequences to obtain new initial log-likelihood ratio sequences at the first-level user level, and calculating new outer interleaved log-likelihood ratio sequences using a log-domain message passing algorithm based on the initial log-likelihood ratio sequences;
[0035] After deinterleaving the external interleaved log-likelihood ratio sequence of the next user level, it is decoded by the belief propagation algorithm until the output is The decoded bits of each user level are combined into a decoded bit sequence.
[0036] Optionally, the calculating an initial log-likelihood ratio sequence of a received signal corresponding to a transmitted signal associated with each user level includes:
[0037] performing a logarithmic operation on the reciprocal of the modulation order of the transmission signal associated with each user level to determine an initial log-likelihood ratio of a received signal of each transmission signal;
[0038] An initial log-likelihood ratio sequence is constructed using each of the initial log-likelihood ratios.
[0039] A second aspect of the present invention provides a power-unbalanced multi-stage decoding system for sparse code multiple access, comprising:
[0040] The transmitter is used to map the information bits sent by multiple users into multi-dimensional sparse codewords through a preset codebook; construct a factor graph matrix using each of the codebooks, classify each of the users according to the factor graph matrix under preset user restriction conditions, and determine User level; is a positive integer greater than 1; based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used according to performing power imbalance distribution on each user at each user level to determine a local optimal power vector;
[0041] A Rayleigh fading channel, configured to transmit a transmit signal corresponding to each of the multidimensional sparse codewords according to the local optimal power vector;
[0042] The receiver is used to perform power-directed decoding on the received signals corresponding to the transmitted signals associated with each user level in turn, and output A decoded bit sequence of the user level.
[0043] A third aspect of the present invention provides a computer device comprising a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, the processor performs the steps of the power imbalance multi-stage decoding method for sparse code multiple access as described in any one of the above items.
[0044] A fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed, the power imbalance multi-stage decoding method for sparse code multiple access as described in any one of the above items is implemented.
[0045] A fifth aspect of the present invention provides a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements the power imbalance multi-stage decoding method for sparse code multiple access as described in any one of the above items.
[0046] It can be seen from the above technical solutions that the present invention has the following advantages:
[0047] The above solution of the present invention provides a power imbalance multi-stage decoding method for sparse code multiple access, comprising: mapping information bits sent by multiple users into multi-dimensional sparse codewords through a preset codebook; constructing a factor graph matrix using each codebook, classifying each user according to the factor graph matrix under a preset user restriction condition, and determining User levels; is a positive integer greater than 1; based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used according to The power imbalance distribution is performed on each user level to determine the local optimal power vector; the transmission signal corresponding to each multi-dimensional sparse codeword is transmitted according to the local optimal power vector; the received signal corresponding to the transmission signal associated with each user level is power-guided decoded in turn, and the output is Based on the above scheme, the mapping relationship between users and power resources is clearly revealed through the factor graph matrix to regularly classify users. Under the premise of keeping the total transmission power unchanged, power imbalance is allocated to each level of users to obtain the local optimal power vector. The characteristics of power imbalance are used to perform power-oriented decoding. Combining power imbalance with multi-level decoding helps to further eliminate inter-user interference, thereby reducing the bit error rate of the SCMA system. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0049] Figure 1 A structural block diagram of the SCMA solution for traditional PLDPC coding provided by the present invention;
[0050] Figure 2 A flowchart of a power imbalance multi-stage decoding method for sparse code multiple access provided by an embodiment of the present invention;
[0051] Figure 3 A block diagram of a power-oriented MLD receiver according to an embodiment of the present invention;
[0052] Figure 4 AVE-BER curves of the PI-MLD-SCMA system provided by the embodiment of the present invention and the traditional system in simulation experiments;
[0053] Figure 5 This is a structural block diagram of a power imbalance multi-stage decoding system for sparse code multiple access provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0054] The embodiments of the present invention provide a power-unbalanced multi-stage decoding method and system for sparse code multiple access, which is used to solve the technical problem that in the traditional PLDPC coded SCMA scheme, each user is allocated equal transmission power during resource allocation, and the decoding processes of different users are independent of each other, which cannot effectively eliminate inter-user interference, thereby leading to a high bit error rate in the SCMA system.
[0055] In order to make the purpose, features, and advantages of the present invention more obvious and easy to understand, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the embodiments described below are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0056] See also Figure 2 , Figure 2 A flowchart of the steps of a power imbalance multi-stage decoding method for sparse code multiple access is provided in an embodiment of the present invention.
[0057] The present invention provides a power imbalance multi-stage decoding method for sparse code multiple access, comprising:
[0058] Step 101: Map information bits sent by multiple users into multi-dimensional sparse codewords through a preset codebook.
[0059] It should be noted that in the transmitter of the SCMA system, the user's information bits are processed using PLDPC coding and mapped to sparse multidimensional complex constellation points, namely multidimensional sparse codewords. These multidimensional sparse codewords can be selected from a pre-designed codebook, and each user has his or her own codebook. This direct mapping method improves spectrum efficiency and achieves a large constellation shaping gain. At the same time, these codewords are sparse in the frequency domain, that is, each codeword of each user only occupies part of the subcarriers for communication data transmission.
[0060] Step 102: Use each codebook to construct a factor graph matrix, and classify each user according to the factor graph matrix under the preset user restriction conditions to determine User levels; is a positive integer greater than 1.
[0061] User restrictions include:
[0062] The number of users included in each user level must be equal;
[0063] In each user level, each resource is reused, and each resource is reused by the same number of users.
[0064] It should be noted that for a given For the SCMA system, we use its corresponding factor graph matrix Perform user classification, where is the number of orthogonal resources, is the number of users; for example, we give a The SCMA system and a The factor graph matrix corresponding to the SCMA system is:
[0065] ;
[0066] In a factor graph matrix, each row vector represents an orthogonal resource, and each column vector represents an independent user. In the first column of the matrix, the two elements '1' indicate that user 1 occupies the second and fourth resources for communication transmission, and the '0' element represents no occupancy, and the number of resources occupied by a single user is , the number of times a single resource is reused by users ; Similarly, in the matrix In the second column, the two elements '1' represent that user 2 occupies the second resource and the sixth resource for communication transmission respectively;
[0067] Before classification, we impose the following user restrictions: (i) For a given SCMA system, the number of users that can be classified is User levels, the number of users included in each user level must be equal, that is (ii) For a given SCMA system, all the All resources are reused, and each resource is reused by the same number of users;
[0068] Based on user constraints (i) and (ii), we give an example of common SCMA system classification: for a factor graph matrix of The SCMA system can divide the six users into three levels according to the user restriction conditions. User 1 and user 2 are divided into the first level, user 3 and user 4 are divided into the first level, and user 5 and user 6 are divided into the first level. For a factor graph matrix of The SCMA system can divide all users into three levels: user 1, user 2, and user 3 are divided into level 1, user 4, user 5, and user 6 are divided into level 1, and user 7, user 8, and user 9 are divided into level 1. In addition, the user restriction conditions can also include (iii) for users with overload factors For SCMA systems, systems with the same overload factor can make the same number of classifications, e.g. SCMA system and The overload factor of the SCMA system is 1.5. SCMA system can refer to The SCMA system is graded according to the number of grades; the common SCMA system grades are shown in Table 1:
[0069] Table 1 Common SCMA system classification
[0070]
[0071] 103. Based on the preset total transmission power, a progressive hierarchical power optimization algorithm is used. The power imbalance is distributed to each user at each user level to determine the local optimal power vector.
[0072] Step 103 includes the following sub-steps:
[0073] After initializing the power of each user to equal power based on the preset total transmit power, the original model external information transfer algorithm is used to calculate the mutual information based on the initial power of each user;
[0074] Perform the mean operation on each mutual information to output the initial average mutual information, and assign the initial average mutual information to the old average mutual information;
[0075] According to the power unit step Carry out the When the power is distributed, Initial power reduction for user level , and for the Initial power increase for user level , determine the User level and The monotonic initialization power of the user level; where, is a positive number;
[0076] Based on the original model external information transfer algorithm, the monotonic initialization power is used to determine the User level and The monotonically initialized average mutual information corresponding to the user level;
[0077] When the monotone initialized average mutual information is greater than the old average mutual information, the monotone initialized average mutual information is assigned to the old average mutual information;
[0078] For the first Monotonic initialization power reduction at user level , for Monotonic initialization power increase at user level , determine the User level and Local optimization power at the user level and count the number of allocations ;
[0079] Based on the original model information transfer algorithm, the local optimization power is used to determine the User level and The local optimized average mutual information corresponding to the user level;
[0080] When the local optimized average mutual information is less than or equal to the old average mutual information, The local optimization power is used as the User level and Local optimal power at user level;
[0081] like If it is an even number, then the power unit step is The next power distribution is carried out until Secondary power distribution, determine The local optimal power of each user level is combined into a local optimal power vector;
[0082] like If it is an odd number, then the power unit step is The next power distribution is carried out until After the second power distribution, Initial power reduction for user level , and increase the local optimal power of the first user level , output The monotonic initialization power of the first user level and the new monotonic initialization power of the first user level are used to determine the corresponding local optimal power. The local optimal power vector is composed of the local optimal power at each user level.
[0083] Also includes:
[0084] When the monotone initialized average mutual information is less than or equal to the old average mutual information, the monotone initialized power is used as the first User level and Local optimal power at the user level.
[0085] Also includes:
[0086] When the local optimized average mutual information is greater than the old average mutual information, the number of allocations is determined. Is it less than the maximum number of cycles? ;
[0087] If so, the local optimized power and the local optimized average mutual information are used as the new monotone initialization power and the new old average mutual information, and the Monotonic initialization power reduction at user level , for Monotonic initialization power increase at user level , until the local optimized average mutual information is less than or equal to the old average mutual information;
[0088] If not, then The local optimization power is used as the User level and Local optimal power at the user level.
[0089] It should be noted that after classifying all users in the SCMA system, we proposed a progressive hierarchical power optimization algorithm to implement power-imbalanced allocation (PIA) for each user level. Using the protograph extrinsic information transfer (PEXIT) algorithm, a very effective system performance analysis tool, we analyzed the average mutual information (AMI) convergence behavior of the users to determine whether the PIA scheme has reached a local optimum.
[0090] Before introducing the progressive hierarchical power optimization algorithm, the following five power constraints are proposed:
[0091] (i) Under the premise that the total transmit power of the entire SCMA system remains unchanged, the power of each level is normalized to equal power (i.e., the power of all users is 1);
[0092] (ii) The transmission power of different users in the same user class is equal, while the transmission power of different users in different user classes is unequal;
[0093] (iii) Assume that a SCMA system consists of users and resources, divided into level, then the initial power vector corresponding to all levels is , then the local optimal power vector of elements must satisfy ,and ,in ;
[0094] (iv) When When it is an even number, the number of user levels with low power (power < 1) is equal to the number of user levels with high power (power > 1), which is ( represents rounding down to an integer), and when When is an odd number, the number of low-power user levels is one more than the number of high-power user levels, that is, the number of low-power levels is ( Indicates rounding up to an integer);
[0095] (v) The minimum power unit step size of PIA is set to It is understandable that the power unit step size can be adaptively set; it should be noted that before implementing PIA, all user levels can be sorted arbitrarily. The pseudo code of the specific progressive hierarchical power optimization algorithm is shown in Table 2:
[0096] Table 2 Pseudocode of the progressive hierarchical power optimization algorithm
[0097]
[0098] Combined with Table 2, it can be seen that each time the power allocation operation is performed on the power of two user levels, the power of other levels remains unchanged during each power allocation operation, and the power allocation operation on one level means that the same power allocation operation is performed on all users of this level; for example, in the During the power distribution operation, the last level, Initial power of the stage and the initial power of the first stage Perform power distribution operation; when When it is an even number, a total of Secondary power distribution operation, where Indicates the Secondary power distribution operation, when When it is an odd number, a total of Secondary power distribution operation, at this time Indicates the The following is the detailed process of the progressive hierarchical power optimization algorithm:
[0099] Step 1: Initialize the initial power of all user levels to 1, i.e. , by using the PEXIT algorithm to calculate the MI (mutual information) using the initial power of each user, and then averaging the MI of each user to obtain the initial average mutual information (AMI) , initialize the old average mutual information , used to store The value of
[0100] Step 2: Assume this is the The second power distribution operation Initial power of the stage reduce , while the Level power Add the same , and the corresponding monotonic initialization power is determined to ensure the monotonic decreasing characteristics of the power constraint condition (iii); For example, that is, the first power allocation operation, we must first Initial power of the stage reduce Get the corresponding monotonic initialization power, and at the same time the power of the first level Increase Get the corresponding monotonic initialization power; use the PEXIT algorithm based on the The monotonic initialization power of the first level and the initial power of the remaining user levels are used to calculate the new That is, the monotonically initialized average mutual information is obtained, and then the process jumps to step 4. It can be understood that in order to simplify the algorithm process, the step of calculating the monotonically initialized average mutual information can be omitted in step 2, and the process jumps directly to step 3.
[0101] Step 3: Continue to Monotonic initialization power reduction of the stage , for The monotonic initialization power of the level increases by the same , get the corresponding local optimized power, and then use the PEXIT algorithm to calculate the new That is, local optimization of the average mutual information and counting the number of allocations ;
[0102] Step 4: Compare and If the size , the monotonically initialized average mutual information or the locally optimized average mutual information The value of the old average mutual information , then loop through step 3 until the ; Assume that the monotone initialization average mutual information calculated in step 2 is Less than or equal to the old average mutual information , then directly use the monotonic initialization power allocated in step 2 as the first User level and The local optimal power of the user level; assuming that The monotonic initialization power of the first The monotonic initialization power of the first stage is executed After step 3, , then take The power distribution of step 3 is as follows: The value of AMI after iterations has reached its maximum value, which proves and The power allocation has reached a local optimum. At this time, combining steps 2 to 4, we can get Value in the power distribution operation: Level power , No. Level power ,by For example, Level power , the power of the first stage If you execute After step 3, it is still , then take the The power distribution of step 3; it should be noted that During the secondary power distribution operation, The values of may be different, and step 3 can be repeated at most times, while at the same time needing to satisfy , this is to meet the power limitation condition (iii);
[0103] Step 5: When When it is an even number, a total of The last power distribution operation is the The second time, in Level and Between levels, for example The last power allocation operation is performed on the third and second levels, and then the local optimal power vector is obtained. , the optimization process of PIA is completed; and when When it is an odd number, a total of Second power distribution operation, while the former Secondary power distribution operation and The process is the same when it is an even number (the power allocation operation of steps 2 to 4 is also carried out, but the specific power is not necessarily the same). For example, the second to last one is the Secondary power distribution operation and When it is an even number, it is similar. Level and The last power distribution operation is the The second power distribution operation is Level initial power and the local optimal power of the first stage The operation is performed between steps 3 and 4. It should be noted that since the power of the first level of the first power allocation operation has increased, the local optimal power Continue to increase on the basis of After the power allocation operation, the local optimal power vector can also be obtained , so far the optimization process of PIA is completed: For example, we first perform step 2 to step 4 power allocation operations on the third stage and the first stage, and then perform step 5 on the second stage and the first stage. The secondary power distribution operation includes steps 3 and 4.
[0104] Step 104: Transmit the transmission signal corresponding to each multi-dimensional sparse codeword according to the local optimal power vector.
[0105] It should be noted that in the transmitter, the multi-dimensional sparse codewords of each user will be superimposed into a transmission signal. Therefore, after completing the transmission power allocation for each user, each transmission signal can be transmitted to the transmitter through the Rayleigh fading channel as a medium according to the local optimal power vector.
[0106] Step 105: Perform power-directed decoding on the received signals corresponding to the transmitted signals associated with each user level, and output A user-level decoded bit sequence.
[0107] Step 105 includes the following sub-steps:
[0108] S1. Calculate the initial log-likelihood ratio sequence of the received signal corresponding to the transmitted signal associated with each user level;
[0109] S2. Calculating an outer interleaved log-likelihood ratio sequence using each initial log-likelihood ratio sequence through a log-domain message passing algorithm;
[0110] S3, after deinterleaving the first-level user-level external interleaved log-likelihood ratio sequence, decoding it using a belief propagation algorithm, and outputting first-level user-level decoded bits and a first-level external log-likelihood ratio sequence;
[0111] S4. Interleaving the first-level external log-likelihood ratio sequences to obtain new initial log-likelihood ratio sequences at the first-level user level, and calculating new external interleaved log-likelihood ratio sequences using a log-domain message passing algorithm based on the initial log-likelihood ratio sequences;
[0112] S5, after deinterleaving the external interleaved log-likelihood ratio sequence of the next user level, decode it through the belief propagation algorithm until the output is The decoded bits of each user level are combined into a decoded bit sequence.
[0113] Optionally, sub-step S1 includes:
[0114] Performing a logarithmic operation on the reciprocal of the modulation order of the transmitted signal associated with each user level to determine an initial log-likelihood ratio of the received signal of each transmitted signal;
[0115] An initial log-likelihood ratio sequence is constructed using each initial log-likelihood ratio.
[0116] It should be noted that Figure 3The block diagram of the power-guided MLD receiver designed in this embodiment is shown. It can be understood that multi-level decoding (MLD), which is widely used in multi-data stream systems, is a sequential decoding scheme. The currently decoded data stream can improve the decoding performance of subsequent data streams. The SCMA system, as a multi-user non-orthogonal multiple access technology, naturally has the characteristics of multiple data streams and is very suitable for combination with MLD. Power-guided decoding, that is, decoding different user levels from high to low power, can solve the problem of inter-user interference:
[0117] exist Figure 3 middle, Indicates the received signal, and The maximum number of iterations of the SCMA detector and PLDPC decoder are shown respectively, and the dotted line indicates all The decoding order of users of different levels; when the SCMA detector receives the received signal, it calculates the initial log-likelihood ratio of the received signal corresponding to the transmitted signal associated with each user level. Since this embodiment uses the logarithmic domain message passing algorithm and assumes that each user is equally likely to choose a multidimensional sparse codeword as the transmitted signal, in one implementation, the channel initialization method is used to calculate the received signal. ,in is the modulation order, which can be understood as the size of the codebook. Since the codebook size of each user in the same SCMA system is unified, the modulation order is also equal; then, the corresponding initial log-likelihood ratio is formed into an initial log-likelihood ratio sequence (initial LLRs sequence) according to the user level. , and then use the logarithmic message passing algorithm (log-MPA) to calculate the outer interleaved log-likelihood ratio sequence (outer interleaved LLR sequence) using each initial LLRs sequence , ;
[0118] In the designed receiver, after the SCMA detector completes the first round of detection, the first-level user with the highest power performs decoding to obtain the decoded bits, first passing through the deinterleaver. The outer interleaved log-likelihood ratio sequence for the first user level After deinterleaving, the PLDPC decoder uses the belief propagation algorithm (BP) for decoding, outputting the first-level user-level decoded bits and the first-level external log-likelihood ratio sequence. , then through the interleaver Interleave the first-level external log-likelihood ratio sequence to obtain the new initial LLRs sequence of the first-level user level ;
[0119] Because there is no gain from the previous iteration of the receiver in the first SCMA detection, the user at the highest power level can obtain a more accurate initial LLRs sequence by decoding first compared with the users at other levels. Therefore, the new initial LLRs sequence obtained after the first level decoding is compared with the initial LLRs sequences of other levels ( ) are sent to the SCMA detector for the second round of detection, and the log-MPA algorithm is used again to calculate the new outer interleaved LLRs sequence of users at all levels. ; Then, the user of the second highest power user level performs BP decoding, and similarly, the outer interleaved LLRs sequence of the second level After deinterleaving and decoding, the second-level decoded bits and the second-level external LLRs sequence are output. , interleave the second-level external LLRs sequence to obtain the second-level new initial LLRs sequence , and and other levels of initial LLRs sequences ( ) Use the log-MPA algorithm to calculate the new outer interleaved LLRs sequence According to the above process, when the user with the lowest power level completes BP decoding, the output The decoding bits of the user levels are combined into a decoding bit sequence, and the work of the receiver is completed. Since the user at the first level with the highest power obtains the performance gain brought by the power increase, the other levels ( ) all users have achieved significant performance gains brought by the above power-steering MLD receiver scheme.
[0120] To clearly illustrate the technical effect of the power-unbalanced multi-stage decoding solution for sparse code multiple access provided by this embodiment, simulations are performed on a PLDPC-coded power-unbalanced multi-stage decoding SCMA system (PI-MLD-SCMA system) and a traditional PLDPC-coded SCMA system formed by the solution of this embodiment:
[0121] For the traditional PLDPC coded SCMA system, we do not perform classification, and the power of all users is set to 1. Figure 1 The conventional receiver shown in the figure; both systems are encoded using the punctured PLDPC code designed by us, the basic matrix of the PLDPC code is As shown below:
[0122] ;
[0123] We puncture the second column with the highest degree distribution in the basic matrix. The information bit length of each user is 1200 and the code rate is 1 / 2. The simulations of the two SCMA systems are carried out under Rayleigh fading channels. The SCMA systems used include and Two scales, The SCMA system uses SCMA codebook-1 and codebook-2, and The SCMA system uses SCMA codebook-3 and codebook-4, and the modulation order is ;
[0124] After searching with the progressive hierarchical power optimization algorithm, we obtain the local optimal power vector of codebook-1 , the local optimal power vector of codebook-2 , the local optimal power vector of codebook-3 , the local optimal power vector of codebook-4 is ; The SCMA detector uses the log-MPA algorithm with a maximum number of iterations of , PLDPC decoding uses BP algorithm, and the maximum number of iterations is ;
[0125] Figure 4 Shown respectively and In the SCMA system, codebook-1~codebook-4 and their corresponding local optimal power vectors ( The average BER (AVE-BER) performance comparison between the PI-MLD-SCMA system and the traditional SCMA system shows that and In the simulation of two-scale SCMA systems with a total of four codebooks, the PI-MLD-SCMA system with a local optimal power vector achieved a gain of more than 1.6 dB compared with the traditional one, showing a significant improvement in system performance.
[0126] In an embodiment of the present invention, the mapping relationship between users and power resources is clearly revealed through a factor graph matrix to regularly classify users. While keeping the total transmitted power unchanged, power imbalance is allocated to each level of users to obtain a local optimal power vector. The characteristics of power imbalance are used to perform power-oriented decoding. In this way, power imbalance is combined with multi-level decoding, which helps to further eliminate inter-user interference and thus reduce the bit error rate of the PLDPC-coded SCMA system.
[0127] See also Figure 5 , Figure 5 This is a structural block diagram of a power imbalance multi-stage decoding system for sparse code multiple access provided by an embodiment of the present invention.
[0128] The present invention provides a power imbalance multi-stage decoding system for sparse code multiple access, comprising:
[0129] The transmitter 501 is used to map the information bits sent by multiple users into multi-dimensional sparse codewords through a preset codebook; construct a factor graph matrix using each codebook, classify each user according to the factor graph matrix under the preset user restriction conditions, and determine User levels; is a positive integer greater than 1; based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used according to Perform power imbalance allocation on each user at the user level and determine the local optimal power vector;
[0130] A Rayleigh fading channel 502 is used to transmit a transmission signal corresponding to each multidimensional sparse codeword according to a local optimal power vector;
[0131] The receiver 503 is used to perform power steering decoding on the received signals corresponding to the transmitted signals associated with each user level in turn, and output A user-level decoded bit sequence.
[0132] Optionally, user restrictions include:
[0133] The number of users included in each user level must be equal;
[0134] In each user level, each resource is reused, and each resource is reused by the same number of users.
[0135] Optionally, based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used according to The power imbalance is distributed to each user at the user level to determine the local optimal power vector, including:
[0136] After initializing the power of each user to equal power based on the preset total transmit power, the original model external information transfer algorithm is used to calculate the mutual information based on the initial power of each user;
[0137] Perform the mean operation on each mutual information to output the initial average mutual information, and assign the initial average mutual information to the old average mutual information;
[0138] According to the power unit step Carry out the When the power is distributed, Initial power reduction for user level , and for the Initial power increase for user level , determine the User level and The monotonic initialization power of the user level; where, is a positive number;
[0139] Based on the original model external information transfer algorithm, the monotonic initialization power is used to determine the User level and The monotonically initialized average mutual information corresponding to the user level;
[0140] When the monotone initialized average mutual information is greater than the old average mutual information, the monotone initialized average mutual information is assigned to the old average mutual information;
[0141] For the first Monotonic initialization power reduction at user level , for Monotonic initialization power increase at user level , determine the User level and Local optimization power at the user level and count the number of allocations ;
[0142] Based on the original model information transfer algorithm, the local optimization power is used to determine the User level and The local optimized average mutual information corresponding to the user level;
[0143] When the local optimized average mutual information is less than or equal to the old average mutual information, The local optimization power is used as the User level and Local optimal power at user level;
[0144] like If it is an even number, then the power unit step is The next power distribution is carried out until Secondary power distribution, determine The local optimal power of each user level is combined into a local optimal power vector;
[0145] like If it is an odd number, then the power unit step is The next power distribution is carried out until After the second power distribution, Initial power reduction for user level , and increase the local optimal power of the first user level , output The monotonic initialization power of the first user level and the new monotonic initialization power of the first user level are used to determine the corresponding local optimal power. The local optimal power vector is composed of the local optimal power at each user level.
[0146] Optionally, it also includes:
[0147] When the monotone initialized average mutual information is less than or equal to the old average mutual information, the monotone initialized power is used as the first User level and Local optimal power at the user level.
[0148] Optionally, it also includes:
[0149] When the local optimized average mutual information is greater than the old average mutual information, the number of allocations is determined. Is it less than the maximum number of cycles? ;
[0150] If so, the local optimized power and the local optimized average mutual information are used as the new monotone initialization power and the new old average mutual information, and the Monotonic initialization power reduction at user level , for Monotonic initialization power increase at user level , until the local optimized average mutual information is less than or equal to the old average mutual information;
[0151] If not, then The local optimization power is used as the User level and Local optimal power at the user level.
[0152] Optionally, power-directed decoding is performed on the received signals corresponding to the transmitted signals associated with each user level in turn, and the output is A user-level decoded bit sequence, including:
[0153] Calculating an initial log-likelihood ratio sequence of received signals corresponding to the transmitted signals associated with each user level;
[0154] Calculating an outer interleaved log-likelihood ratio sequence using each initial log-likelihood ratio sequence through a log-domain message passing algorithm;
[0155] After deinterleaving the first-level user-level external interleaved log-likelihood ratio sequence, decoding it through a belief propagation algorithm to output first-level user-level decoded bits and a first-level external log-likelihood ratio sequence;
[0156] Interleaving the first-level external log-likelihood ratio sequences to obtain new initial log-likelihood ratio sequences at the first-level user level, and calculating new external interleaved log-likelihood ratio sequences based on the initial log-likelihood ratio sequences using a log-domain message passing algorithm;
[0157] After deinterleaving the external interleaved log-likelihood ratio sequence of the next user level, it is decoded by the belief propagation algorithm until the output is The decoded bits of each user level are combined into a decoded bit sequence.
[0158] Optionally, calculating an initial log-likelihood ratio sequence of a received signal corresponding to a transmitted signal associated with each user level includes:
[0159] Performing a logarithmic operation on the reciprocal of the modulation order of the transmitted signal associated with each user level to determine an initial log-likelihood ratio of the received signal of each transmitted signal;
[0160] An initial log-likelihood ratio sequence is constructed using each initial log-likelihood ratio.
[0161] An embodiment of the present invention further provides a computer device comprising a memory and a processor, wherein a computer program is stored in the memory; when the computer program is executed by the processor, the processor executes the steps of the power imbalance multi-stage decoding method for sparse code multiple access as described in any of the above embodiments.
[0162] An embodiment of the present invention further provides a computer-readable storage medium having a computer program / instruction stored thereon. When the computer program / instruction is executed by a processor, the steps of the power imbalance multi-stage decoding method for sparse code multiple access as described in any of the above embodiments are implemented.
[0163] An embodiment of the present invention further provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the power imbalance multi-stage decoding method for sparse code multiple access as described in any of the above embodiments.
[0164] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described systems and units can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0165] In the several embodiments provided in this application, it should be understood that the disclosed systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of systems or units, which can be electrical, mechanical or other forms.
[0166] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0167] In addition, the functional units in the various embodiments of the present invention may be integrated into a single processing unit, each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0168] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0169] As described above, the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit the same. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that the technical solutions described in the above embodiments can still be modified, or some of the technical features thereof can be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A power imbalance multi-stage decoding method for sparse code multiple access, characterized in that: include: Mapping the information bits sent by multiple users into multi-dimensional sparse codewords through a preset codebook; The factor graph matrix is constructed by using each codebook, and each user is graded according to the factor graph matrix under the preset user restriction condition to determine User level; is a positive integer greater than 1; Based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used. performing power imbalance distribution on each user at each user level to determine a local optimal power vector; Transmitting a transmission signal corresponding to each of the multidimensional sparse codewords according to the local optimal power vector; The received signals corresponding to the transmitted signals associated with each user level are sequentially subjected to power-oriented decoding, and the output is A decoded bit sequence of the user level.
2. The power imbalance multi-stage decoding method for sparse code multiple access according to claim 1, characterized in that: The user restriction conditions include: The number of users included in each user level must be equal; In each user level, each resource is reused, and each resource is reused by the same number of users.
3. The power imbalance multi-stage decoding method for sparse code multiple access according to claim 1, characterized in that: The total transmission power based on the preset is optimized by using a progressive hierarchical power optimization algorithm. Performing power imbalance distribution on each user at each user level to determine a local optimal power vector includes: After initializing the initial power of each user to equal power based on the preset total transmit power, the mutual information is calculated based on the initial power of each user using the original model external information transfer algorithm; Performing an average operation on each mutual information to output an initial average mutual information, and assigning the initial average mutual information to the old average mutual information; According to the power unit step Carry out the When the power is distributed, Initial power reduction for user level , and for the Initial power increase for user level , determine the User level and the The monotonic initialization power of the user level; where, is a positive number; Based on the original model external information transfer algorithm, the monotonic initialization power is used to determine the User level and the The monotonically initialized average mutual information corresponding to the user level; When the monotone initialized average mutual information is greater than the old average mutual information, assigning the monotone initialized average mutual information to the old average mutual information; Regarding the Monotonic initialization power reduction at user level , for the said Monotonic initialization power increase at user level , determine the User level and the Local optimization power at the user level and count the number of allocations ; Based on the original model external information transfer algorithm, the local optimization power is used to determine the User level and the The local optimized average mutual information corresponding to the user level; When the local optimized average mutual information is less than or equal to the old average mutual information, The local optimization power is used as the User level and the Local optimal power at user level; like If it is an even number, then the power unit step is The next power distribution is carried out until Secondary power distribution, determine The user-level local optimal power is formed into a local optimal power vector; like If it is an odd number, then the power unit step is The next power distribution is carried out until After the second power distribution, Initial power reduction for user level , and increase the local optimal power of the first user level , output the The monotonic initialization power of the first user level and the new monotonic initialization power of the first user level are used to determine the corresponding local optimal power. The local optimal powers of the user levels form a local optimal power vector.
4. The power imbalance multi-stage decoding method for sparse code multiple access according to claim 3, characterized in that: Also includes: When the local optimized average mutual information is greater than the old average mutual information, the allocation times are determined. Is it less than the maximum number of cycles? ; If so, the local optimization power and the local optimization average mutual information are used as the new monotone initialization power and the new old average mutual information, and the first Monotonic initialization power reduction at user level , for the said Monotonic initialization power increase at user level , until the local optimized average mutual information is less than or equal to the old average mutual information; If not, then The local optimization power is used as the User level and the Local optimal power at the user level.
5. The power imbalance multi-stage decoding method for sparse code multiple access according to claim 1, characterized in that: The power-directed decoding is performed on the received signals corresponding to the transmitted signals associated with each user level in turn, and the output is The user-level decoding bit sequence comprises: Calculating an initial log-likelihood ratio sequence of a received signal corresponding to a transmitted signal associated with each user level; Calculating an outer interleaved log-likelihood ratio sequence using each of the initial log-likelihood ratio sequences through a log-domain message passing algorithm; After deinterleaving the first-level user-level external interleaved log-likelihood ratio sequence, decoding it through a belief propagation algorithm to output first-level user-level decoded bits and a first-level external log-likelihood ratio sequence; Interleaving the first-level outer log-likelihood ratio sequences to obtain new initial log-likelihood ratio sequences at the first-level user level, and calculating new outer interleaved log-likelihood ratio sequences using a log-domain message passing algorithm based on the initial log-likelihood ratio sequences; After deinterleaving the external interleaved log-likelihood ratio sequence of the next user level, it is decoded by the belief propagation algorithm until the output is The decoded bits of each user level are combined into a decoded bit sequence.
6. The power imbalance multi-stage decoding method for sparse code multiple access according to claim 5, characterized in that: The calculating of an initial log-likelihood ratio sequence of a received signal corresponding to a transmitted signal associated with each user level includes: performing a logarithmic operation on the reciprocal of the modulation order of the transmission signal associated with each user level to determine an initial log-likelihood ratio of a received signal of each transmission signal; An initial log-likelihood ratio sequence is constructed using each of the initial log-likelihood ratios.
7. A power imbalance multi-stage decoding system for sparse code multiple access, characterized in that: include: A transmitter, configured to map information bits sent by multiple users into multi-dimensional sparse codewords using a preset codebook; The factor graph matrix is constructed by using each codebook, and each user is graded according to the factor graph matrix under the preset user restriction condition to determine User level; is a positive integer greater than 1; based on the preset total transmit power, a progressive hierarchical power optimization algorithm is used according to performing power imbalance distribution on each user at each user level to determine a local optimal power vector; A Rayleigh fading channel, configured to transmit a transmit signal corresponding to each of the multidimensional sparse codewords according to the local optimal power vector; The receiver is used to perform power-directed decoding on the received signals corresponding to the transmitted signals associated with each user level in turn, and output A decoded bit sequence of the user level.
8. A computer device, characterized in that: The method comprises a memory and a processor, wherein a computer program is stored in the memory, and when the computer program is executed by the processor, the processor performs the steps of the power imbalance multi-stage decoding method for sparse code multiple access according to any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program / instruction stored thereon, characterized in that: When the computer program / instruction is executed by a processor, the steps of the power imbalance multi-stage decoding method for sparse code multiple access according to any one of claims 1 to 6 are implemented.
10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instruction is executed by a processor, the steps of the power imbalance multi-stage decoding method for sparse code multiple access according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Multi-user joint code modulation system
CN110430009A
Power distribution method in hybrid non-orthogonal multiple access
CN114980343A