[go: up one dir, main page]

CN113746601B - SCMA receiving and detecting method based on state position - Google Patents

SCMA receiving and detecting method based on state position Download PDF

Info

Publication number
CN113746601B
CN113746601B CN202111039142.5A CN202111039142A CN113746601B CN 113746601 B CN113746601 B CN 113746601B CN 202111039142 A CN202111039142 A CN 202111039142A CN 113746601 B CN113746601 B CN 113746601B
Authority
CN
China
Prior art keywords
state
user
user node
node
iteration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111039142.5A
Other languages
Chinese (zh)
Other versions
CN113746601A (en
Inventor
何华
姜静
杜剑波
梁彦霞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian University of Posts and Telecommunications
Original Assignee
Xian University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xian University of Posts and Telecommunications filed Critical Xian University of Posts and Telecommunications
Priority to CN202111039142.5A priority Critical patent/CN113746601B/en
Publication of CN113746601A publication Critical patent/CN113746601A/en
Application granted granted Critical
Publication of CN113746601B publication Critical patent/CN113746601B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0036Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the receiver
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention discloses a SCMA receiving and detecting method based on a state position, which comprises the following steps: in a message passing algorithm MPA of an SCMA system, each user node j transmits M when t iterations are completedThe conditional probability of the code word is arranged according to descending order to form a state position detection vector, a state position detection matrix of any user node j when t iterations are completed is constructed according to the state detection vector, and t is carried out 1 After MPA iterative operation, removing the code words which are arranged at the tail end in the state positions and correspond to the states with equal probability, wherein the code words do not participate in the subsequent iterative process as the transmitting code words, and t is carried out 2 After MPA iterative operation, stable nodes in a plurality of user nodes in an MPA factor graph of a message passing algorithm are decoded in advance to carry out t 3 And (4) carrying out MPA iterative operation, and selectively decoding the unstable user node through a state position detection algorithm with a punishment mechanism. The method reduces decoding complexity by continuously reducing unreliable codewords, decoding reliable users in advance, and continuously reducing the number of users to be decoded.

Description

基于状态位置的SCMA接收检测方法SCMA reception detection method based on state position

技术领域Technical Field

本发明涉信号检测技术领域,更具体的涉及基于状态位置的SCMA接收检测方法。The present invention relates to the technical field of signal detection, and more specifically to a state position-based SCMA reception detection method.

背景技术Background Art

SCMA是区别于功率域NOMA的另一种NOMA解决方案,主要通过各用户使用不完全正交的时频资源来体现其非正交方式。SCMA is another NOMA solution different from power domain NOMA. It mainly reflects its non-orthogonal approach by allowing each user to use incompletely orthogonal time-frequency resources.

在SCMA编码中,直接将用户需要发送的二进制比特数据映射成多维复数码字,每个用户拥有属于自己的码本,映射的多维复数码字正是自己码本中的某一个向量,每个码字中的元素可以是复数。在同一时频资源块上,多个用户的码字可以叠加传输,使得用户数量和系统容量得到大幅度增长。In SCMA coding, the binary bit data that the user needs to send is directly mapped into multi-dimensional complex codewords. Each user has his own codebook, and the mapped multi-dimensional complex codeword is a vector in his own codebook. The elements in each codeword can be complex numbers. On the same time-frequency resource block, the codewords of multiple users can be superimposed and transmitted, which greatly increases the number of users and system capacity.

假设在一个上行SCMA通信系统中,系统可用频率资源数为K,每个用户占用的资源数为N(N<K),该系统支持的最大用户数为

Figure BDA0003248405090000011
在发送端,如图1所示,每个用户通过SCMA编码器,将B bit信息数据流直接映射成码本中对应的K维码字,M=2B为每用户码本的大小,即码本中码字的个数。每个码字中有N个非零值,说明每个用户仅使用了N个频率资源而不是全部。每个频率资源块上有dv个非零值,说明每个资源块由dv个用户占据,在接收端每个资源块上叠加着dv个用户的发送码字。Assume that in an uplink SCMA communication system, the number of available frequency resources in the system is K, the number of resources occupied by each user is N (N<K), and the maximum number of users supported by the system is
Figure BDA0003248405090000011
At the transmitting end, as shown in Figure 1, each user directly maps the B bit information data stream into the corresponding K-dimensional codeword in the codebook through the SCMA encoder, where M=2 B is the size of each user's codebook, that is, the number of codewords in the codebook. There are N non-zero values in each codeword, indicating that each user only uses N frequency resources instead of all. There are d v non-zero values on each frequency resource block, indicating that each resource block is occupied by d v users, and at the receiving end, each resource block is superimposed with the transmission codewords of d v users.

SCMA在接收端的检测主要利用的是经典的消息传递算法(MPA,Message PassingAlgorithm),在每一次消息传递迭代过程中,需要在每个资源块与其关联用户之间进行外部数据传递,用户与资源数量越多、迭代次数越多,所带来的检测复杂度越高。SCMA detection at the receiving end mainly uses the classic message passing algorithm (MPA). In each message passing iteration, external data needs to be transmitted between each resource block and its associated user. The more users and resources there are and the more iterations there are, the higher the detection complexity will be.

发明内容Summary of the invention

本发明实施例提供基于状态位置的SCMA接收检测方法,包括:在SCMA系统的消息传递算法MPA中,获取t次迭代完成时每个用户节点j发送M个码字的条件概率,并按照降序排列构成状态位置检测向量,根据状态检测向量构建任一用户节点j在t次迭代完成时的状态位置检测矩阵;An embodiment of the present invention provides a state position-based SCMA reception detection method, comprising: in a message passing algorithm MPA of an SCMA system, obtaining a conditional probability that each user node j sends M codewords when t iterations are completed, arranging them in descending order to form a state position detection vector, and constructing a state position detection matrix of any user node j when t iterations are completed according to the state detection vector;

进行t1次MPA迭代运算后,在各用户状态位置检测矩阵中,去除状态位置均排在末尾且概率相等的状态对应的码字,该码字不作为发送码字参与后续迭代过程;After performing t 1 MPA iterations, in each user state position detection matrix, remove the codewords corresponding to the states whose state positions are at the end and have equal probabilities, and the codewords will not be used as sending codewords in the subsequent iteration process;

进行t2次MPA迭代运算后,提前解码消息传递算法MPA因子图中的多个用户节点中的稳定节点,其中稳定节点是指,在状态位置检测矩阵中,状态位置均排在首位且元素概率相等的用户节点;After t 2 MPA iterations, a stable node among multiple user nodes in the MPA factor graph of the message passing algorithm is decoded in advance, wherein a stable node refers to a user node whose state position is ranked first and whose element probability is equal in the state position detection matrix;

进行t3次MPA迭代运算,通过带有惩罚机制的状态位置检测算法,对消息传递算法MPA因子图中的非稳定用户节点选择性解码。The MPA iteration operation is performed t 3 times, and the non-stable user nodes in the MPA factor graph of the message passing algorithm are selectively decoded through the state position detection algorithm with a penalty mechanism.

进一步,还包括获取每个用户节点码本中各个码字的先验概率:Furthermore, it also includes obtaining the prior probability of each codeword in the codebook of each user node:

每个用户节点码本中各个码字的先验概率包括:The prior probabilities of each codeword in each user node codebook include:

Figure BDA0003248405090000021
Figure BDA0003248405090000021

其中:用户节点j,j∈{1,2,…,J}向资源块节点k,k∈{1,2,…,K}传递外部信息,

Figure BDA0003248405090000022
表示用户节点j向资源节点k在第0次迭代时传递的第m个状态码字时的先验概率,由于每个用户节点的码本中均有M个状态码字,则将每个码字的先验概率初始化为1/M。Where: user node j, j∈{1,2,…,J} transmits external information to resource block node k, k∈{1,2,…,K},
Figure BDA0003248405090000022
represents the prior probability of the mth state codeword transmitted by user node j to resource node k at the 0th iteration. Since there are M state codewords in the codebook of each user node, the prior probability of each codeword is initialized to 1/M.

进一步,每次MPA迭代运算步骤为:Furthermore, the steps of each MPA iteration are:

资源块节点向用户节点传递外部信息进行迭代更新,其公式包括:The resource block node transmits external information to the user node for iterative update, and the formula includes:

Figure BDA0003248405090000023
Figure BDA0003248405090000023

资源块节点k,k∈{1,2,…,K}向用户节点j,j∈{1,2,…,J}传递外部信息,其中,

Figure BDA0003248405090000024
表示资源节点k向用户节点j传递的当用户节点j发送第m个状态,码字时,k资源节点其它关联用户l,每资源块上共dv-1个其它关联用户,发送不同码字的多种组合的条件概率,
Figure BDA0003248405090000031
表示其它关联用户发送码字组合的集合,该集合的数量为
Figure BDA0003248405090000032
t与t-1表示迭代次数;yk表示第k个资源块节点上接收到的占用资源块节点k的所有用户发射信号的叠加;Resource block node k, k∈{1,2,…,K} transmits external information to user node j, j∈{1,2,…,J}, where
Figure BDA0003248405090000024
It represents the conditional probability of multiple combinations of different codewords sent by resource node k to user node j when user node j sends the mth state, codeword, and other associated users l of resource node k, with a total of d v -1 other associated users on each resource block,
Figure BDA0003248405090000031
represents the set of codeword combinations sent by other associated users. The number of this set is
Figure BDA0003248405090000032
t and t-1 represent the number of iterations; y k represents the superposition of all user transmission signals occupying resource block node k received at the kth resource block node;

获得的M个资源块节点k向用户节点j传递信息的条件概率密度值

Figure BDA0003248405090000033
包括:The obtained conditional probability density value of M resource block nodes k transmitting information to user node j
Figure BDA0003248405090000033
include:

Figure BDA0003248405090000034
Figure BDA0003248405090000034

Figure BDA0003248405090000035
Figure BDA0003248405090000035

Figure BDA0003248405090000036
Figure BDA0003248405090000036

Figure BDA0003248405090000037
Figure BDA0003248405090000037

式中,ξk资源块节点k相关联的用户节点的集合;表示ξk\{j}表示除第j个用户节点以外与资源块节点k相关联的用户节点的集合;

Figure BDA0003248405090000038
表示ξk\{j}集合中的dv-1个用户发送码字的组合空间,该空间中共有
Figure BDA0003248405090000039
种组合,hk,l表示基站与第k个资源块上关联的用户l之间的信道状态信息;Wherein, ξ k is the set of user nodes associated with resource block node k; ξ k \{j} represents the set of user nodes associated with resource block node k except the jth user node;
Figure BDA0003248405090000038
represents the combination space of d v -1 user codewords in the ξ k \{j} set, which has
Figure BDA0003248405090000039
combinations, h k,l represents the channel state information between the base station and user l associated with the kth resource block;

用户节点向资源块节点传递外部信息迭代更新,条件概率计算公式包括:The user node transmits external information to the resource block node for iterative update. The conditional probability calculation formula includes:

Figure BDA00032484050900000310
Figure BDA00032484050900000310

Figure BDA00032484050900000311
表示用户节点j,j∈{1,2,…,J}向资源块节点k,k∈{1,2,…,K}传递当用户节点j发送第m个状态时的条件概率,其中,
Figure BDA00032484050900000312
表示与用户节点j相关联的资源块节点的集合,
Figure BDA00032484050900000313
表示除k资源块以外的其他与用户节点j相关联的资源块集合;
Figure BDA00032484050900000311
represents the conditional probability that user node j, j∈{1,2,…,J} transmits to resource block node k, k∈{1,2,…,K} when user node j sends the mth state, where
Figure BDA00032484050900000312
represents the set of resource block nodes associated with user node j,
Figure BDA00032484050900000313
represents the set of resource blocks other than the k resource block associated with the user node j;

对于任一用户节点j,均有M个

Figure BDA00032484050900000314
分别是:For any user node j, there are M
Figure BDA00032484050900000314
They are:

Figure BDA00032484050900000315
Figure BDA00032484050900000315

Figure BDA0003248405090000041
Figure BDA0003248405090000041

进一步,去除状态位置均排在末尾且概率相等的状态对应的码字步骤包括:Furthermore, the step of removing codewords corresponding to states whose state positions are all at the end and have equal probabilities includes:

进行t1次MPA迭代运算;Perform t 1 MPA iterations;

将任一用户节点j获得的条件概率

Figure BDA0003248405090000042
按降序排列;The conditional probability of any user node j being
Figure BDA0003248405090000042
Sort in descending order;

建立用户节点j的状态位置检测矩阵并初始化为零矩阵;Establish the state position detection matrix of user node j and initialize it to a zero matrix;

Figure BDA0003248405090000043
Figure BDA0003248405090000043

t1表示属于t1次迭代阶段,经t1次迭代后任一用户节点j的状态位置矩阵

Figure BDA0003248405090000044
可以填满;
Figure BDA0003248405090000045
中向量
Figure BDA0003248405090000046
其中,
Figure BDA0003248405090000047
中存放第t次迭代后用户节点j所获条件概率降序排列对应的状态;t 1 represents the t 1 iteration stage. After t 1 iterations, the state position matrix of any user node j is
Figure BDA0003248405090000044
can be filled;
Figure BDA0003248405090000045
Mean vector
Figure BDA0003248405090000046
in,
Figure BDA0003248405090000047
The state corresponding to the conditional probability of user node j in descending order after the tth iteration is stored in ;

Figure BDA0003248405090000048
的最后一列
Figure BDA0003248405090000049
即用户节点j在t1次迭代过程中记录的所有状态位置末位上对应的状态,若
Figure BDA00032484050900000410
中每一个元素均相等,记为
Figure BDA00032484050900000411
right
Figure BDA0003248405090000048
The last column
Figure BDA0003248405090000049
That is, the state corresponding to the last position of all state positions recorded by user node j during the t 1 iteration process, if
Figure BDA00032484050900000410
Every element in is equal, denoted by
Figure BDA00032484050900000411

所有其他用户节点也在本阶段的t1次迭代后去除了相应发送概率最低的码字信息,并令All other user nodes also remove the codeword information with the lowest corresponding transmission probability after t1 iterations in this stage, and set

Figure BDA00032484050900000412
Figure BDA00032484050900000412

其中,

Figure BDA00032484050900000413
是检测出的状态末位无变化的用户节点集合。in,
Figure BDA00032484050900000413
It is the set of user nodes whose last status has not changed.

进一步,对稳定用户解码步骤包括:Further, the step of decoding the stable user includes:

进行进行t2次MPA迭代运算;Perform t 2 MPA iterations;

构建用户节点j的状态位置检测矩阵并初始化为零矩阵;Construct the state position detection matrix of user node j and initialize it to a zero matrix;

Figure BDA00032484050900000414
Figure BDA00032484050900000414

Figure BDA00032484050900000415
中向量
Figure BDA00032484050900000416
Figure BDA00032484050900000417
中存放第t次迭代后用户节点j所获条件概率降序排列对应的状态,对
Figure BDA00032484050900000418
的第1列
Figure BDA00032484050900000419
即用户节点j在t2次迭代过程中记录的状态位置首位上对应的状态,若
Figure BDA0003248405090000051
中每一个元素均相等,记为
Figure BDA0003248405090000052
用户节点j被称为稳定节点,上标t2表示参数属于t2次迭代阶段中的参数,对稳定节点进行提前解码可得
Figure BDA00032484050900000415
Mean vector
Figure BDA00032484050900000416
Figure BDA00032484050900000417
The state corresponding to the conditional probability of user node j obtained after the tth iteration is stored in descending order.
Figure BDA00032484050900000418
Column 1
Figure BDA00032484050900000419
That is, the state corresponding to the first position of the state recorded by user node j during the t 2 iterations. If
Figure BDA0003248405090000051
Every element in is equal, denoted by
Figure BDA0003248405090000052
User node j is called a stable node. The superscript t 2 indicates that the parameter belongs to the parameter in the t 2 iteration stage. The stable node can be decoded in advance to obtain

Figure BDA0003248405090000053
Figure BDA0003248405090000053

Figure BDA0003248405090000054
Figure BDA0003248405090000054

其中,

Figure BDA0003248405090000055
是稳定用户集合。in,
Figure BDA0003248405090000055
is a stable set of users.

进一步,对非稳定用户选择性的解码步骤包括:Further, the selective decoding step for the non-stable user includes:

进行t3次MPA迭代运算;Perform t 3 MPA iterations;

为每个用户设定一个状态位置计数器,形成状态位置计数器矩阵

Figure BDA0003248405090000056
表达式为:Set a state position counter for each user to form a state position counter matrix
Figure BDA0003248405090000056
The expression is:

Figure BDA0003248405090000057
Figure BDA0003248405090000057

其中,

Figure BDA0003248405090000058
为非稳定用户集合,J为总用户集合,clj=[clj1,…,cljm,…,cljM]表示用户节点j为每一个状态设定的计数器;in,
Figure BDA0003248405090000058
is the set of non-stable users, J is the total set of users, cl j =[cl j1 ,…,cl jm ,…,cl jM ] represents the counter set for each state of user node j;

将clj中各个计数器值均初始化为clj=[c,…,c,…,c];构建用户状态位置检测矩阵

Figure BDA0003248405090000059
并初始化为零矩阵,其中,上标t3表示属于t3次迭代阶段,
Figure BDA00032484050900000510
矩阵中的向量
Figure BDA00032484050900000511
Figure BDA00032484050900000512
中存放本轮t3次迭代中,第t次迭代后用户节点j所获条件概率降序排列后对应的状态,计数器在每一次迭代后会根据用户状态位置发生增减,其过程既有奖励也有惩罚,计数器变化的规则是:在每一次迭代后,例如,在第t次迭代后,用户节点j查看存放在
Figure BDA00032484050900000513
向量中状态位置,状态位置向量
Figure BDA00032484050900000514
中第一个元素是本次迭代后用户节点j发送可能性最大的码字所对应的状态值,作为奖励,将用户节点j的计数器向量clj=[c,…,c,…,c]中第
Figure BDA00032484050900000515
个计数器值减1;另一方面,状态位置向量
Figure BDA00032484050900000516
中末位元素是本次迭代后用户节点j发送可能性最小的码字所对应的状态值,作为惩罚,将用户节点j的计数器向量clj=[c,…,c,…,c]中第
Figure BDA0003248405090000061
个计数器值加1;Initialize the counter values in cl j to cl j = [c,…,c,…,c]; construct the user state position detection matrix
Figure BDA0003248405090000059
And initialized to a zero matrix, where the superscript t 3 indicates that it belongs to the t 3 iteration stage,
Figure BDA00032484050900000510
Vectors in matrices
Figure BDA00032484050900000511
Figure BDA00032484050900000512
The corresponding states of the conditional probabilities obtained by user node j after the tth iteration in descending order are stored in t3 iterations of this round. The counter will increase or decrease according to the user state position after each iteration. The process has both rewards and penalties. The rule of counter change is: after each iteration, for example, after the tth iteration, user node j checks the state stored in
Figure BDA00032484050900000513
State position in vector, state position vector
Figure BDA00032484050900000514
The first element in is the state value corresponding to the codeword with the highest probability of being sent by user node j after this iteration. As a reward, the counter vector cl j of user node j is set to the state value of the codeword with the highest probability of being sent by user node j after this iteration.
Figure BDA00032484050900000515
The counter value decreases by 1; on the other hand, the state position vector
Figure BDA00032484050900000516
The last element in the state is the state value corresponding to the codeword with the least probability of being sent by user node j after this iteration. As a penalty, the counter vector cl j of user node j is set to the value of the first codeword in [c,…,c,…,c].
Figure BDA0003248405090000061
The counter value is increased by 1;

clj=[c,…,c,…,c]中M个计数器的值首先降为0的元素,其位置所对应的状态代表的码字可判定为用户节点j的发射码字,用户节点j可以直接解码;cl j = the element whose value of the M counters in [c, …, c, …, c] first drops to 0. The codeword represented by the state corresponding to its position can be determined as the transmitted codeword of user node j, and user node j can directly decode it.

达到最大迭代次数t3时,对仍未解码的非稳定用户,将其最后一次迭代完成后,计数器向量中计数器值最小的元素位置作为对应的解码状态,解码出最终的码字。When the maximum number of iterations t 3 is reached, for the unstable users that have not yet been decoded, the element position with the smallest counter value in the counter vector after the last iteration is completed is used as the corresponding decoding state to decode the final codeword.

进一步,迭代最大次数tmax=t1+t2+t3,其中t1<t2<t3,t1>1。Furthermore, the maximum number of iterations is t max =t 1 +t 2 +t 3 , wherein t 1 <t 2 <t 3 , and t 1 >1.

本发明实施例提供基于状态位置的SCMA接收检测方法,与现有技术相比,其有益效果如下:The embodiment of the present invention provides a state location-based SCMA reception detection method, which has the following beneficial effects compared with the prior art:

本发明提出一种基于状态位置的SCMA接收端检测算法,状态是指用户节点发射码本中的不同码字,状态位置是指在状态位置检测矩阵或状态位置检测向量中,每个状态根据每次迭代后的条件概率大小,在状态位置检测矩阵或状态位置检测向量中的排序,即条件概率越大,状态位置在状态位置检测矩阵或状态位置检测向量中越靠前。现有SCMA接收检测技术主要通过在多次迭代中,进行所有用户与其资源块进行所有可能码字的反复信息传递与概率计算,最终在收敛或达到迭代次数的条件下才能够将每个用户的发射码字检测出来,检测过程非常复杂,计算复杂度很高。而本发明中提供的基于状态位置的SCMA接收检测方法,根据状态位置的变化情况,在迭代检测的过程中可以不断减少不可靠码字、提前对可靠用户进行解码以及不断减少待解码用户数量,极大降低了检测过程的复杂度与计算复杂度。The present invention proposes a SCMA receiving end detection algorithm based on state position, where the state refers to different codewords in the user node transmission codebook, and the state position refers to the order of each state in the state position detection matrix or the state position detection vector according to the conditional probability size after each iteration, that is, the larger the conditional probability, the more forward the state position is in the state position detection matrix or the state position detection vector. The existing SCMA receiving detection technology mainly performs repeated information transmission and probability calculation of all possible codewords between all users and their resource blocks in multiple iterations, and finally can detect the transmitted codeword of each user under the condition of convergence or reaching the number of iterations. The detection process is very complicated and the computational complexity is very high. The SCMA receiving detection method based on state position provided in the present invention can continuously reduce unreliable codewords, decode reliable users in advance, and continuously reduce the number of users to be decoded during the iterative detection process according to the change of state position, which greatly reduces the complexity and computational complexity of the detection process.

附图说明BRIEF DESCRIPTION OF THE DRAWINGS

图1为本发明实施例提供的基于状态位置的SCMA接收检测方法流程图。FIG1 is a flow chart of a state location-based SCMA reception detection method provided in an embodiment of the present invention.

具体实施方式DETAILED DESCRIPTION

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments 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 creative work are within the scope of protection of the present invention.

参见图1,本发明实施例提供基于状态位置的SCMA接收检测方法,该方法包括:Referring to FIG. 1 , an embodiment of the present invention provides a state location-based SCMA reception detection method, the method comprising:

在SCMA系统的消息传递算法MPA中,获取t次迭代完成时每个用户节点j发送M个码字的条件概率,并按照降序排列构成状态位置检测向量,根据状态检测向量构建任一用户节点j在t次迭代完成时的状态位置检测矩阵;In the message passing algorithm MPA of the SCMA system, the conditional probability of each user node j sending M codewords when t iterations are completed is obtained, and the codewords are arranged in descending order to form a state position detection vector. The state position detection matrix of any user node j when t iterations are completed is constructed according to the state detection vector.

进行t1次MPA迭代运算后,在各用户状态位置检测矩阵中,去除状态位置均排在末尾且概率相等的状态对应的码字,该码字不作为发送码字参与后续迭代过程;After performing t 1 MPA iterations, in each user state position detection matrix, remove the codewords corresponding to the states whose state positions are at the end and have equal probabilities, and the codewords will not be used as sending codewords in the subsequent iteration process;

进行t2次MPA迭代运算后,提前解码消息传递算法MPA因子图中的多个用户节点中的稳定节点,其中稳定节点是指,在状态位置检测矩阵中,状态位置均排在首位且元素概率相等的用户节点;After t 2 MPA iterations, a stable node among multiple user nodes in the MPA factor graph of the message passing algorithm is decoded in advance, wherein a stable node refers to a user node whose state position is ranked first and whose element probability is equal in the state position detection matrix;

进行t3次MPA迭代运算,通过带有惩罚机制的状态位置检测算法,对消息传递算法MPA因子图中的非稳定用户节点选择性解码。The MPA iteration operation is performed t 3 times, and the non-stable user nodes in the MPA factor graph of the message passing algorithm are selectively decoded through the state position detection algorithm with a penalty mechanism.

实施例:Example:

在传统MPA检测算法中,每个资源块上虽然复用的用户数量有限,为dv个用户,但每个用户的发射码本中均具有M个可能的发射码字,在每一次迭代更新过程中,计算复杂度会达到

Figure BDA0003248405090000071
如果最大迭代次数tmax、每用户发射码字数量M和每资源块上复用用户数量dv提升,计算复杂度会迅速增长。In the traditional MPA detection algorithm, although the number of users reused on each resource block is limited to d v users, each user's transmission codebook has M possible transmission codewords. In each iterative update process, the computational complexity will reach
Figure BDA0003248405090000071
If the maximum number of iterations t max , the number of codewords transmitted by each user M and the number of multiplexed users per resource block d v are increased, the computational complexity will increase rapidly.

为了降低SCMA中接收机利用MPA算法的检测复杂度,本文提出一种基于状态位置的降低复杂度的MPA接收检测算法。该算法中状态位置具有下面的含义:在已经设计好的每个用户的码本中有M个发送码字,每个码字称作一个状态(状态代表码字),每一次信息传递迭代后,得到各用户中每个状态检测概率的排序位置,形成状态位置检测向量Sj=[sj1,sj2…sjM],j=1,…,J,各状态位置按降序排列,则用户节点j检测概率最大的状态位置在Sj中为sj1所在的第1位,sj1的值表示最大检测概率对应的状态。检测概率最小的状态位置在Sj中为sjM所在的第M位,即末位,sjM的值表示最小检测概率对应的状态。该检测算法分为三个阶段,每个阶段分别进行t1、t2和t3次信息传递迭代,t1+t2+t3=tmax,t1<t2<t3,且t1>1:In order to reduce the detection complexity of the receiver using the MPA algorithm in SCMA, this paper proposes a MPA receiving detection algorithm based on state position to reduce complexity. The state position in this algorithm has the following meaning: there are M transmitted codewords in the designed codebook of each user, and each codeword is called a state (the state represents the codeword). After each information transmission iteration, the sorted position of the detection probability of each state in each user is obtained to form a state position detection vector S j = [s j1 , s j2 ...s jM ], j = 1, ..., J, and each state position is arranged in descending order. The state position with the highest detection probability of user node j is the first position where s j1 is located in S j , and the value of s j1 represents the state corresponding to the maximum detection probability. The state position with the lowest detection probability is the Mth position where s jM is located in S j , that is, the last position, and the value of s jM represents the state corresponding to the lowest detection probability. The detection algorithm is divided into three stages, each of which carries out t 1 , t 2 and t 3 information transmission iterations respectively, t 1 +t 2 +t 3 =t max , t 1 <t 2 <t 3 , and t 1 >1:

第一阶段:去除各用户发送可能性最低的码字,不再参与后续迭代检测。本阶段进行t1次迭代,针对任一用户节点j,在每次迭代后,计算用户的码字状态位置,形成状态位置检测向量Sj,检查每次迭代后,排在Sj中末位的状态是否一致,如果一致,说明该状态对应的码字成为用户节点j发送码字的可能性最低,将不再参与后续检测迭代。Phase 1: Remove the codewords with the lowest probability of being sent by each user and no longer participate in subsequent iterative detection. This phase performs t 1 iterations. For any user node j, after each iteration, the state position of the user's codeword is calculated to form a state position detection vector S j . Check whether the state at the end of S j is consistent after each iteration. If consistent, it means that the codeword corresponding to the state has the lowest probability of being the codeword sent by user node j and will no longer participate in subsequent detection iterations.

该阶段从每用户发射码字的数量上降低了检测复杂度。需要进行说明的是,本轮迭代次数应设置为t1>1,如果t1=1,则仅经过一次迭代,可能会盲目剥夺了某个码字参与后续检测的机会,带来较大的误码。同时,t1也不宜过大,因为发送可能性低的码字经过几次迭代后,后续状态位置也不可能发生较大的改变,可以提早对这些码字进行去除,不再参与后续检测迭代过程。This stage reduces the detection complexity from the number of codewords transmitted by each user. It should be noted that the number of iterations in this round should be set to t 1 > 1. If t 1 = 1, after only one iteration, a certain codeword may be blindly deprived of the opportunity to participate in subsequent detection, resulting in large bit errors. At the same time, t 1 should not be too large, because after several iterations, the subsequent state position of codewords with low transmission probability is unlikely to change significantly. These codewords can be removed in advance and no longer participate in the subsequent detection iteration process.

第二阶段:针对稳定用户进行提前解码。本阶段进行t2次信息传递迭代,针对任一用户节点j,计算在本阶段t2次迭代过程中,每一次迭代后,是否存在某个码字的检测概率均排在状态位置向量Sj中的第1位,如果存在,将这样的用户称为稳定用户,并将该用户在t2次迭代后直接解码,后续迭代过程只需对其余非稳定用户进行检测。Phase 2: Early decoding for stable users. This phase performs t 2 information transmission iterations. For any user node j, it is calculated whether there is a codeword whose detection probability is ranked first in the state position vector S j after each iteration during the t 2 iterations of this phase. If there is such a user, such a user is called a stable user and is directly decoded after t 2 iterations. In the subsequent iterations, only the remaining unstable users need to be detected.

本阶段通过待解码用户数量的减少来降低检测复杂度。在第二阶段开展稳定用户的提前解码而没有放在第一阶段进行,是期望通过第一阶段一定次数迭代的不断收敛,再进行稳定用户的判定与提前解码可获得更高的准确性。In this stage, the detection complexity is reduced by reducing the number of users to be decoded. The early decoding of stable users is carried out in the second stage instead of in the first stage, hoping that the continuous convergence of a certain number of iterations in the first stage and then the determination and early decoding of stable users can achieve higher accuracy.

第三阶段:针对非稳定用户,设计带有惩罚机制的状态位置检测过程。该阶段总的迭代次数为t3。在第二阶段未能被提前解码的用户称为非稳定用户,这些用户在前述的迭代过程中,各个状态的位置,尤其状态位置检测向量的第1位置是不断变化着的,这样的用户无法进行提前解码,否则将会带来较高的误码率。针对这种不稳定情况,首先为每个待检测的非稳定用户节点设定一个位置状态计数器,并给计数器赋初值,用户节点在每次迭代后进行检测,其状态位置每获得一次第1位,则进行奖励,计数器值减1;相反地,状态位置每获得一次末位,则进行惩罚,计数器值加1;其他状态位置时,计数器值不变。当用户节点的某个状态计数器值变为0时,直接对用户进行提前解码,确定的解码码字正是计数器值变为0的状态对应的码字;或者当迭代次数达到t3时,算法结束,用户节点根据最后一次迭代后各码字的位置状态进行解码。The third stage: for unstable users, a state position detection process with a penalty mechanism is designed. The total number of iterations in this stage is t 3. Users that failed to be decoded in advance in the second stage are called unstable users. In the aforementioned iterative process, the positions of each state, especially the first position of the state position detection vector, are constantly changing. Such users cannot be decoded in advance, otherwise it will lead to a high bit error rate. For this unstable situation, first set a position state counter for each unstable user node to be detected, and assign an initial value to the counter. The user node performs detection after each iteration. Every time its state position obtains the first bit, it is rewarded and the counter value is reduced by 1; on the contrary, every time the state position obtains the last bit, it is punished and the counter value is increased by 1; for other state positions, the counter value remains unchanged. When the value of a state counter of the user node becomes 0, the user is directly decoded in advance, and the determined decoding codeword is the codeword corresponding to the state where the counter value becomes 0; or when the number of iterations reaches t 3 , the algorithm ends, and the user node decodes according to the position state of each codeword after the last iteration.

本阶段会将逐步稳定的用户节点进行提前解码,而不用使每个用户必须经历t3次迭代再进行解码,不断降低检测算法的复杂度。具体的算法流程如下:In this stage, gradually stable user nodes will be decoded in advance, without requiring each user to undergo t 3 iterations before decoding, thus continuously reducing the complexity of the detection algorithm. The specific algorithm flow is as follows:

第一步:初始化,设定每个用户节点码本中各个码字的先验概率相同,即

Figure BDA0003248405090000091
Step 1: Initialization, setting the prior probability of each codeword in each user node codebook to be the same, that is,
Figure BDA0003248405090000091

第二步:共t1次迭代,每次迭代过程分两个部分:Step 2: There are t 1 iterations in total. Each iteration process is divided into two parts:

(1)资源块节点向用户节点传递外部信息进行迭代更新,具体如下资源块节点k,k∈{1,2,…,K}向用户节点j,j∈{1,2,…,J}传递外部信息(1) The resource block node transmits external information to the user node for iterative update. Specifically, the resource block node k, k∈{1,2,…,K} transmits external information to the user node j, j∈{1,2,…,J}.

Figure BDA0003248405090000092
Figure BDA0003248405090000092

其中,

Figure BDA0003248405090000093
表示资源节点k向用户节点j传递的当用户节点j发送第m个状态(码字)时,其它k资源节点关联用户l(每资源块上共dv-1个关联用户)发送不同码字的多种组合的条件概率,
Figure BDA0003248405090000094
表示关联用户发送码字组合的集合,该集合的数量为
Figure BDA0003248405090000095
t与t-1表示迭代次数;yk表示第k个资源块节点上接收到的占用资源块节点k的所有用户发射信号的叠加;x[k]表示利用第k个资源块节点进行发送的用户发送符号集合;f(yk|x[k])表示第k个资源块节点上接收信号的条件概率密度函数为:in,
Figure BDA0003248405090000093
represents the conditional probability of multiple combinations of different codewords sent by the resource node k to the user node j when the user node j sends the mth state (codeword), and the other k resource nodes associated with the user l (a total of d v -1 associated users on each resource block),
Figure BDA0003248405090000094
represents the set of codeword combinations sent by the associated user, the number of which is
Figure BDA0003248405090000095
t and t-1 represent the number of iterations; yk represents the superposition of all user transmission signals occupying resource block node k received at the kth resource block node; x [k] represents the set of user transmission symbols transmitted using the kth resource block node; f( yk |x [k] ) represents the conditional probability density function of the received signal at the kth resource block node:

Figure BDA0003248405090000101
Figure BDA0003248405090000101

xk,l表示第l个用户在第k个资源块上的发送码字,l∈ξk表示用户l是与资源块k相关联的用户;ξk\{j}表示除第j个用户节点以外与资源块节点k相关联的用户节点的集合;hk,l表示基站与第k个资源块上关联的用户l之间的信道状态信息。x k,l represents the codeword sent by the lth user on the kth resource block, l∈ξ k represents that user l is the user associated with resource block k; ξ k \{j} represents the set of user nodes associated with resource block node k except the jth user node; h k,l represents the channel state information between the base station and user l associated with the kth resource block.

由式(3.2)可得,资源块节点k向用户节点j传递信息的条件概率密度值

Figure BDA0003248405090000102
共有M个,如式(3.4)所示From formula (3.2), we can get the conditional probability density value of resource block node k transmitting information to user node j:
Figure BDA0003248405090000102
There are M in total, as shown in formula (3.4)

Figure BDA0003248405090000103
Figure BDA0003248405090000103

其中,

Figure BDA0003248405090000104
表示ξk\{j}集合中的dv-1个用户发送码字的组合空间,该空间中共有
Figure BDA0003248405090000105
种组合。in,
Figure BDA0003248405090000104
represents the combination space of d v -1 user codewords in the ξ k \{j} set, which has
Figure BDA0003248405090000105
Combination of.

(2)用户节点向资源块节点传递外部信息迭代更新,具体如下:(2) The user node transmits external information to the resource block node for iterative update, as follows:

用户节点j,j∈{1,2,…,J}向资源块节点k,k∈{1,2,…,K}传递外部信息,其条件概率为:The conditional probability of user node j, j∈{1,2,…,J} transmitting external information to resource block node k, k∈{1,2,…,K} is:

Figure BDA0003248405090000106
Figure BDA0003248405090000106

其中,

Figure BDA0003248405090000107
表示与用户节点j相关联的资源块节点的集合,
Figure BDA0003248405090000108
表示除k资源块以外的其他与用户节点j相关联的资源块集合。in,
Figure BDA0003248405090000107
represents the set of resource block nodes associated with user node j,
Figure BDA0003248405090000108
represents the set of resource blocks associated with user node j except k resource block.

对于任一用户节点j,均有M个

Figure BDA0003248405090000109
分别是:For any user node j, there are M
Figure BDA0003248405090000109
They are:

Figure BDA00032484050900001010
Figure BDA00032484050900001010

Figure BDA0003248405090000111
Figure BDA0003248405090000111

首先,将本轮迭代完成时任一用户节点j获得的条件概率

Figure BDA0003248405090000112
Figure BDA0003248405090000113
按降序排列;然后,为用户节点j构建状态位置检测矩阵
Figure BDA0003248405090000114
将该矩阵初始化为零矩阵,上标t1表示属于t1次迭代阶段。
Figure BDA0003248405090000115
中向量
Figure BDA0003248405090000116
Figure BDA0003248405090000117
中存放第t次迭代后用户节点j所获条件概率降序排列对应的状态;例如:
Figure BDA0003248405090000118
表示3号码字处在状态位置向量的第1位置,第t次迭代检测结果为3号码字作为用户节点j的发送码字概率最大,而6号码字处在状态位置向量的末位,第t次迭代检测结果为6号码字作为用户节点j的发送码字概率最小。First, the conditional probability of any user node j at the end of this round of iteration is
Figure BDA0003248405090000112
Figure BDA0003248405090000113
Sort in descending order; then, construct the state position detection matrix for user node j
Figure BDA0003248405090000114
The matrix is initialized to a zero matrix, and the superscript t 1 indicates that it belongs to the t 1 iteration stage.
Figure BDA0003248405090000115
Mean vector
Figure BDA0003248405090000116
Figure BDA0003248405090000117
The state corresponding to the conditional probability of user node j obtained after the tth iteration is stored in descending order; for example:
Figure BDA0003248405090000118
It means that code word 3 is at the first position of the state position vector, and the t-th iteration detection result is that code word 3 has the highest probability of being the code word sent by user node j, while code word 6 is at the last position of the state position vector, and the t-th iteration detection result is that code word 6 has the lowest probability of being the code word sent by user node j.

经过本轮共t1次迭代后,任一用户节点j的状态位置矩阵

Figure BDA0003248405090000119
可以填满,Sj中的每一行存放的是每次迭代后,码字状态的位置信息。对
Figure BDA00032484050900001110
的最后一列
Figure BDA00032484050900001111
即用户节点j在t1次迭代过程中记录的所有状态位置末位上对应的状态,若
Figure BDA00032484050900001112
中每一个元素均相等,记为
Figure BDA00032484050900001113
则用户节点j码本中的第
Figure BDA00032484050900001114
个码字不作为发送码字参加后续的迭代过程。类似地,所有其他用户节点也在本阶段的t1次迭代后去除了相应发送概率最低的码字信息,并令After t 1 iterations in this round, the state position matrix of any user node j is
Figure BDA0003248405090000119
can be filled up, and each row in Sj stores the position information of the codeword state after each iteration.
Figure BDA00032484050900001110
The last column
Figure BDA00032484050900001111
That is, the state corresponding to the last position of all state positions recorded by user node j during the t 1 iteration process, if
Figure BDA00032484050900001112
Every element in is equal, denoted by
Figure BDA00032484050900001113
Then the first
Figure BDA00032484050900001114
The codeword is not used as a transmission codeword in the subsequent iteration process. Similarly, all other user nodes also remove the codeword information with the lowest transmission probability after t1 iterations in this stage, and set

Figure BDA00032484050900001115
Figure BDA00032484050900001115

其中,

Figure BDA00032484050900001116
是检测出的状态末位无变化的用户节点集合。in,
Figure BDA00032484050900001116
It is the set of user nodes whose last status has not changed.

第三步:共t2次迭代,每次迭代过程与第二步相似,仍分为两个部分:资源块节点向用户节点传递外部信息进行迭代更新与用户节点向资源块节点传递外部信息进行迭代更新。Step 3: There are t 2 iterations in total. Each iteration process is similar to the second step and is still divided into two parts: the resource block node transmits external information to the user node for iterative update and the user node transmits external information to the resource block node for iterative update.

构建用户节点j的状态位置矩阵

Figure BDA00032484050900001117
Figure BDA0003248405090000121
并初始化为零矩阵,上标t2表示参数属于t2次迭代阶段中的参数。
Figure BDA0003248405090000122
中向量
Figure BDA0003248405090000123
Figure BDA0003248405090000124
中存放第t次迭代后用户节点j所获条件概率降序排列对应的状态;Construct the state position matrix of user node j
Figure BDA00032484050900001117
Figure BDA0003248405090000121
And initialized to a zero matrix, the superscript t 2 indicates that the parameters belong to the t 2 iteration stage.
Figure BDA0003248405090000122
Mean vector
Figure BDA0003248405090000123
Figure BDA0003248405090000124
The state corresponding to the conditional probability of user node j in descending order after the tth iteration is stored in ;

经过本轮共t2次迭代后,任一用户节点j的状态位置矩阵

Figure BDA0003248405090000125
可以填满,
Figure BDA0003248405090000126
中的每一行存放的是每次迭代后,码字状态的位置信息。对
Figure BDA0003248405090000127
的第1列
Figure BDA0003248405090000128
即用户节点j在t2次迭代过程中记录的状态位置首位上对应的状态。若
Figure BDA0003248405090000129
中每一个元素均相等,记为
Figure BDA00032484050900001210
用户节点j被称为稳定节点,说明这些节点在每一次迭代中均稳定地将码本中的第
Figure BDA00032484050900001211
个码字作为发送码字的可能性最大,在t2次迭代完成后,对稳定节点进行提前解码可得After t 2 iterations in this round, the state position matrix of any user node j is
Figure BDA0003248405090000125
Can be filled,
Figure BDA0003248405090000126
Each row in stores the position information of the codeword state after each iteration.
Figure BDA0003248405090000127
Column 1
Figure BDA0003248405090000128
That is, the state corresponding to the first position of the state recorded by user node j during the t 2 iterations.
Figure BDA0003248405090000129
Every element in is equal, denoted by
Figure BDA00032484050900001210
User node j is called a stable node, which means that these nodes stably convert the first
Figure BDA00032484050900001211
The codeword is most likely to be the transmitted codeword. After t2 iterations are completed, the stable node is decoded in advance to obtain

Figure BDA00032484050900001212
Figure BDA00032484050900001212

Figure BDA00032484050900001213
Figure BDA00032484050900001213

其中,

Figure BDA00032484050900001214
是稳定用户集合。in,
Figure BDA00032484050900001214
is a stable set of users.

第四步:共t3次迭代,每次迭代过程与第二步相似,仍分为两个部分:资源块节点向用户节点传递外部信息进行迭代更新与用户节点向资源块节点传递外部信息进行迭代更新。为每个用户设定一个状态位置计数器,形成状态位置计数器矩阵

Figure BDA00032484050900001215
可表示为Step 4: There are t 3 iterations in total. Each iteration process is similar to the second step and is still divided into two parts: the resource block node transmits external information to the user node for iterative update and the user node transmits external information to the resource block node for iterative update. Set a state position counter for each user to form a state position counter matrix
Figure BDA00032484050900001215
It can be expressed as

Figure BDA00032484050900001216
Figure BDA00032484050900001216

其中,

Figure BDA00032484050900001217
为非稳定用户集合。clj=[clj1,…,cljm,…,cljM]表示用户节点j为每一个状态设定的计数器,将clj中各个计数器值初始化为clj=[c,…,c,…,c],计数器值最先变为0的位置所对应的状态可判定为用户节点j的发射状态,用户节点j可以提前解码,不用等到t3次迭代全部完成。in,
Figure BDA00032484050900001217
is a non-stable user set. cl j = [cl j1 , …, cl jm , …, cl jM ] represents the counters set by user node j for each state. The counter values in cl j are initialized to cl j = [c, …, c, …, c]. The state corresponding to the position where the counter value first becomes 0 can be determined as the transmitting state of user node j. User node j can decode in advance without waiting for t 3 iterations to be completed.

构建用户状态位置矩阵

Figure BDA00032484050900001218
并初始化为零矩阵,上标t3表示属于t3次迭代阶段。
Figure BDA00032484050900001219
中向量
Figure BDA00032484050900001220
Figure BDA0003248405090000131
中存放本轮t3次迭代中,第t次迭代后用户节点j所获条件概率降序排列后对应的状态。Constructing the user state position matrix
Figure BDA00032484050900001218
And initialized to a zero matrix, the superscript t 3 indicates that it belongs to the t 3 iteration stage.
Figure BDA00032484050900001219
Mean vector
Figure BDA00032484050900001220
Figure BDA0003248405090000131
The corresponding states of the conditional probabilities obtained by user node j after the tth iteration in this round of t 3 iterations are stored in descending order.

计数器在每一次迭代后会根据用户状态位置发生增减,其过程既有奖励也有惩罚,计数器变化的规则是:在每一次迭代后,例如,在第t次迭代后,用户节点j查看存放在

Figure BDA0003248405090000132
向量中状态位置。状态位置向量
Figure BDA0003248405090000133
中第一个元素是本次迭代后用户节点j发送可能性最大的码字所对应的状态值,作为奖励,将用户节点j的计数器向量clj=[c,…,c,…,c]中第
Figure BDA0003248405090000134
个计数器值减1;另一方面,状态位置向量
Figure BDA0003248405090000135
中末位元素是本次迭代后用户节点j发送可能性最小的码字所对应的状态值,作为惩罚,将用户节点j的计数器向量clj=[c,…,c,…,c]中第
Figure BDA0003248405090000136
个计数器值加1;After each iteration, the counter will increase or decrease according to the user's state position. The process has both rewards and penalties. The rule for the counter change is: after each iteration, for example, after the tth iteration, user node j checks the data stored in
Figure BDA0003248405090000132
The state position in the vector. State position vector
Figure BDA0003248405090000133
The first element in is the state value corresponding to the codeword with the highest probability of being sent by user node j after this iteration. As a reward, the counter vector cl j of user node j is set to the state value of the codeword with the highest probability of being sent by user node j after this iteration.
Figure BDA0003248405090000134
The counter value decreases by 1; on the other hand, the state position vector
Figure BDA0003248405090000135
The last element in the state is the state value corresponding to the codeword with the least probability of being sent by user node j after this iteration. As a penalty, the counter vector cl j of user node j is set to the value of the first codeword in [c,…,c,…,c].
Figure BDA0003248405090000136
The counter value is increased by 1;

clj=[c,…,c,…,c]中M个计数器的值首先降为0的元素,其位置所对应的状态代表的码字可判定为用户节点j的发射码字,用户节点j可以直接解码。The element whose value of the M counters in cl j = [c, …, c, …, c] first drops to 0, and the codeword represented by the state corresponding to its position can be determined as the transmitted codeword of user node j, and user node j can directly decode it.

第五步:当迭代次数达到最大迭代次数t3时,算法停止。若仍存在未解码的非稳定用户,以第t3次迭代,即最后一次迭代后,未解码用户计数器向量中用户状态计数器的值作为解码的最后判定结果。例如,用户节点

Figure BDA0003248405090000137
还未进行解码,它的计数器向量为
Figure BDA0003248405090000138
该向量M个元素中值最小的元素所对应的位置,判定为用户节点
Figure BDA0003248405090000139
的发送状态,该状态所代表的码字作为用户节点
Figure BDA00032484050900001310
发送码字的最终检测结果。Step 5: When the number of iterations reaches the maximum number of iterations t 3 , the algorithm stops. If there are still undecoded unstable users, the value of the user state counter in the undecoded user counter vector after the t 3th iteration, that is, the last iteration, is used as the final result of decoding. For example, user node
Figure BDA0003248405090000137
It has not yet been decoded, and its counter vector is
Figure BDA0003248405090000138
The position corresponding to the element with the smallest value among the M elements of the vector is determined as the user node
Figure BDA0003248405090000139
The sending state of the state represents the codeword as the user node
Figure BDA00032484050900001310
The final detection result of the sending codeword.

以上公开的仅为本发明的几个具体实施例,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明的精神和范围,但是,本发明实施例并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围内。Disclosed above are only a few specific embodiments of the present invention. Those skilled in the art may make various changes and modifications to the embodiments of the present invention without departing from the spirit and scope of the present invention. However, the embodiments of the present invention are not limited thereto. Any changes that can be conceived by those skilled in the art should fall within the scope of protection of the present invention.

Claims (7)

1.基于状态位置的SCMA接收检测方法,其特特征在于,包括:1. The SCMA reception detection method based on state position is characterized in that it includes: 在SCMA系统的消息传递算法MPA中,获取t次迭代完成时消息传递算法MPA因子图中每个用户节点j发送M个码字的条件概率,并按照降序排列构成状态位置检测向量,根据状态检测向量构建任一用户节点j在t次迭代完成时的状态位置检测矩阵;In the message passing algorithm MPA of the SCMA system, the conditional probability of each user node j sending M codewords in the message passing algorithm MPA factor graph when t iterations are completed is obtained, and the codewords are arranged in descending order to form a state position detection vector. According to the state detection vector, the state position detection matrix of any user node j when t iterations are completed is constructed; 进行t1次MPA迭代运算后,在各用户状态位置检测矩阵中,去除状态位置均排在末尾且概率相等的状态对应的码字,该码字不作为发送码字参与后续迭代过程;After performing t 1 MPA iterations, in each user state position detection matrix, remove the codewords corresponding to the states whose state positions are at the end and have equal probabilities, and the codewords will not be used as sending codewords in the subsequent iteration process; 进行t2次MPA迭代运算后,提前解码消息传递算法MPA因子图中的多个用户节点中的稳定节点,其中稳定节点是指,在状态位置检测矩阵中,状态位置均排在首位且元素概率相等的用户节点;After t 2 MPA iterations, a stable node among multiple user nodes in the MPA factor graph of the message passing algorithm is decoded in advance, wherein a stable node refers to a user node whose state position is ranked first and whose element probability is equal in the state position detection matrix; 进行t3次MPA迭代运算,通过带有惩罚机制的状态位置检测算法,对消息传递算法MPA因子图中的非稳定用户节点选择性解码。The MPA iteration operation is performed t 3 times, and the non-stable user nodes in the MPA factor graph of the message passing algorithm are selectively decoded through the state position detection algorithm with a penalty mechanism. 2.如权利要求1所述的基于状态位置的SCMA接收检测方法,其特征在于,还包括获取每个用户节点码本中各个码字的先验概率:2. The SCMA reception detection method based on state position according to claim 1, characterized in that it also includes obtaining the prior probability of each codeword in each user node codebook: 每个用户节点码本中各个码字的先验概率包括:The prior probabilities of each codeword in each user node codebook include:
Figure FDA0003248405080000011
Figure FDA0003248405080000011
其中:用户节点j,j∈{1,2,…,J}向资源块节点k,k∈{1,2,…,K}传递外部信息,
Figure FDA0003248405080000012
表示用户节点j向资源节点k在第0次迭代时传递的第m个状态码字时的先验概率,由于每个用户节点的码本中均有M个状态码字,则将每个码字的先验概率初始化为1/M。
Where: user node j, j∈{1,2,…,J} transmits external information to resource block node k, k∈{1,2,…,K},
Figure FDA0003248405080000012
represents the prior probability of the mth state codeword transmitted by user node j to resource node k at the 0th iteration. Since there are M state codewords in the codebook of each user node, the prior probability of each codeword is initialized to 1/M.
3.如权利要求2所述的基于状态位置的SCMA接收检测方法,其特征在于,所述MPA迭代运算步骤为:3. The SCMA reception detection method based on state position according to claim 2, characterized in that the MPA iterative operation step is: 资源块节点向用户节点传递外部信息进行迭代更新,其公式包括:The resource block node transmits external information to the user node for iterative update, and the formula includes:
Figure FDA0003248405080000021
Figure FDA0003248405080000021
资源块节点k,k∈{1,2,…,K}向用户节点j,j∈{1,2,…,J}传递外部信息,其中,
Figure FDA0003248405080000022
表示资源节点k向用户节点j传递的当用户节点j发送第m个状态,码字时,k资源节点其它关联用户l,每资源块上共dv-1个其它关联用户,发送不同码字的多种组合的条件概率,
Figure FDA0003248405080000023
表示其它关联用户发送码字组合的集合,该集合的数量为
Figure FDA0003248405080000024
t与t-1表示迭代次数;yk表示第k个资源块节点上接收到的占用资源块节点k的所有用户发射信号的叠加;
Resource block node k, k∈{1,2,…,K} transmits external information to user node j, j∈{1,2,…,J}, where
Figure FDA0003248405080000022
It represents the conditional probability of multiple combinations of different codewords sent by resource node k to user node j when user node j sends the mth state, codeword, and other associated users l of resource node k, with a total of d v -1 other associated users on each resource block,
Figure FDA0003248405080000023
represents the set of codeword combinations sent by other associated users. The number of this set is
Figure FDA0003248405080000024
t and t-1 represent the number of iterations; y k represents the superposition of all user transmission signals occupying resource block node k received at the kth resource block node;
获得的M个资源块节点k向用户节点j传递信息的条件概率密度值
Figure FDA0003248405080000025
包括:
The obtained conditional probability density value of M resource block nodes k transmitting information to user node j
Figure FDA0003248405080000025
include:
Figure FDA0003248405080000026
Figure FDA0003248405080000026
Figure FDA0003248405080000027
Figure FDA0003248405080000027
Figure FDA0003248405080000028
Figure FDA0003248405080000028
Figure FDA0003248405080000029
Figure FDA0003248405080000029
式中,ξk资源块节点k相关联的用户节点的集合;表示ξk\{j}表示除第j个用户节点以外与资源块节点k相关联的用户节点的集合;
Figure FDA00032484050800000210
表示ξk\{j}集合中的dv-1个用户发送码字的组合空间,该空间中共有
Figure FDA00032484050800000211
种组合,hk,l表示基站与第k个资源块上关联的用户l之间的信道状态信息;
Wherein, ξ k is the set of user nodes associated with resource block node k; ξ k \{j} represents the set of user nodes associated with resource block node k except the jth user node;
Figure FDA00032484050800000210
represents the combination space of d v -1 user codewords in the ξ k \{j} set, which has
Figure FDA00032484050800000211
combinations, h k,l represents the channel state information between the base station and the user l associated with the kth resource block;
用户节点向资源块节点传递外部信息迭代更新,条件概率计算公式包括:The user node transmits external information to the resource block node for iterative update. The conditional probability calculation formula includes:
Figure FDA00032484050800000212
Figure FDA00032484050800000212
Figure FDA00032484050800000213
表示用户节点j,j∈{1,2,…,J}向资源块节点k,k∈{1,2,…,K}传递当用户节点j发送第m个状态时的条件概率,其中,
Figure FDA00032484050800000214
表示与用户节点j相关联的资源块节点的集合,
Figure FDA0003248405080000031
表示除k资源块以外的其他与用户节点j相关联的资源块集合;
Figure FDA00032484050800000213
represents the conditional probability that user node j, j∈{1,2,…,J} transmits to resource block node k, k∈{1,2,…,K} when user node j sends the mth state, where,
Figure FDA00032484050800000214
represents the set of resource block nodes associated with user node j,
Figure FDA0003248405080000031
represents the set of resource blocks other than k resource block associated with user node j;
对于任一用户节点j,均有M个
Figure FDA0003248405080000032
分别是:
For any user node j, there are M
Figure FDA0003248405080000032
They are:
Figure FDA0003248405080000033
Figure FDA0003248405080000033
4.如权利要求1所述的基于状态位置的SCMA接收检测方法,其特征在于,所述去除状态位置均排在末尾且概率相等的状态对应的码字步骤包括:4. The SCMA reception detection method based on state position according to claim 1, characterized in that the step of removing the codewords corresponding to the states whose state positions are all at the end and have equal probability comprises: 进行t1次MPA迭代运算;Perform t 1 MPA iterations; 将任一用户节点j获得的条件概率
Figure FDA0003248405080000034
按降序排列;
The conditional probability of any user node j being
Figure FDA0003248405080000034
Sort in descending order;
建立用户节点j的状态位置检测矩阵并初始化为零矩阵;Establish the state position detection matrix of user node j and initialize it to a zero matrix;
Figure FDA0003248405080000035
Figure FDA0003248405080000035
t1表示属于t1次迭代阶段,经t1次迭代后任一用户节点j的状态位置矩阵
Figure FDA0003248405080000036
可以填满;
Figure FDA0003248405080000037
中向量
Figure FDA0003248405080000038
其中,
Figure FDA0003248405080000039
中存放第t次迭代后用户节点j所获条件概率降序排列对应的状态;
t 1 represents the t 1 iteration stage. After t 1 iterations, the state position matrix of any user node j is
Figure FDA0003248405080000036
can be filled;
Figure FDA0003248405080000037
Mean vector
Figure FDA0003248405080000038
in,
Figure FDA0003248405080000039
The state corresponding to the conditional probability of user node j in descending order after the tth iteration is stored in ;
Figure FDA00032484050800000310
的最后一列
Figure FDA00032484050800000311
即用户节点j在t1次迭代过程中记录的所有状态位置末位上对应的状态,若
Figure FDA00032484050800000312
中每一个元素均相等,记为
Figure FDA00032484050800000313
所有其他用户节点也在本阶段的t1次迭代后去除了相应发送概率最低的码字信息,并令
right
Figure FDA00032484050800000310
The last column
Figure FDA00032484050800000311
That is, the state corresponding to the last position of all state positions recorded by user node j during the t 1 iteration process, if
Figure FDA00032484050800000312
Every element in is equal, denoted by
Figure FDA00032484050800000313
All other user nodes also remove the codeword information with the lowest corresponding transmission probability after t1 iterations in this stage, and set
Figure FDA00032484050800000314
Figure FDA00032484050800000314
其中,
Figure FDA00032484050800000315
是检测出的状态末位无变化的用户节点集合。
in,
Figure FDA00032484050800000315
It is the set of user nodes whose last status has not changed.
5.如权利要求3所述的基于状态位置的SCMA接收检测方法,其特征在于,所述对稳定用户解码步骤包括:5. The SCMA reception detection method based on state position according to claim 3, characterized in that the step of decoding the stable user comprises: 进行进行t2次MPA迭代运算;Perform t 2 MPA iterations; 构建用户节点j的状态位置检测矩阵并初始化为零矩阵;Construct the state position detection matrix of user node j and initialize it to a zero matrix;
Figure FDA0003248405080000041
Figure FDA0003248405080000041
Figure FDA0003248405080000042
中向量
Figure FDA0003248405080000043
Figure FDA0003248405080000044
中存放第t次迭代后用户节点j所获条件概率降序排列对应的状态,对
Figure FDA0003248405080000045
的第1列
Figure FDA0003248405080000046
即用户节点j在t2次迭代过程中记录的状态位置首位上对应的状态,若
Figure FDA0003248405080000047
中每一个元素均相等,记为
Figure FDA0003248405080000048
用户节点j被称为稳定节点,上标t2表示参数属于t2次迭代阶段中的参数,对稳定节点进行提前解码可得
Figure FDA0003248405080000042
Mean vector
Figure FDA0003248405080000043
Figure FDA0003248405080000044
The state corresponding to the conditional probability of user node j obtained after the tth iteration is stored in descending order.
Figure FDA0003248405080000045
Column 1
Figure FDA0003248405080000046
That is, the state corresponding to the first position of the state recorded by user node j during the t 2 iterations. If
Figure FDA0003248405080000047
Every element in is equal, denoted by
Figure FDA0003248405080000048
User node j is called a stable node. The superscript t 2 indicates that the parameter belongs to the parameter in the t 2 iteration stage. The stable node can be decoded in advance to obtain
Figure FDA0003248405080000049
Figure FDA0003248405080000049
Figure FDA00032484050800000410
Figure FDA00032484050800000410
其中,
Figure FDA00032484050800000411
是稳定用户集合。
in,
Figure FDA00032484050800000411
is a stable set of users.
6.如权利要求1所述的基于状态位置的SCMA接收检测方法,其特征在于,所述对非稳定用户选择性的解码步骤包括:6. The SCMA reception detection method based on state position according to claim 1, characterized in that the selective decoding step for the non-stable user comprises: 进行t3次MPA迭代运算;Perform t 3 MPA iterations; 为每个用户设定一个状态位置计数器,形成状态位置计数器矩阵
Figure FDA00032484050800000412
表达式为:
Set a state position counter for each user to form a state position counter matrix
Figure FDA00032484050800000412
The expression is:
Figure FDA00032484050800000413
Figure FDA00032484050800000413
其中,
Figure FDA00032484050800000414
为非稳定用户集合,J为总用户集合,clj=[clj1,…,cljm,…,cljM]表示用户节点j为每一个状态设定的计数器;
in,
Figure FDA00032484050800000414
is the set of non-stable users, J is the total set of users, cl j =[cl j1 ,…,cl jm ,…,cl jM ] represents the counter set for each state of user node j;
将clj中各个计数器值均初始化为clj=[c,…,c,…,c];构建用户状态位置检测矩阵
Figure FDA00032484050800000415
并初始化为零矩阵,其中,上标t3表示属于t3次迭代阶段,
Figure FDA00032484050800000416
矩阵中的向量
Figure FDA00032484050800000417
Figure FDA00032484050800000418
中存放本轮t3次迭代中,第t次迭代后用户节点j所获条件概率降序排列后对应的状态,计数器在每一次迭代后会根据用户状态位置发生增减,其过程既有奖励也有惩罚,计数器变化的规则是:在每一次迭代后,例如,在第t次迭代后,用户节点j查看存放在
Figure FDA0003248405080000051
向量中状态位置,状态位置向量
Figure FDA0003248405080000052
中第一个元素是本次迭代后用户节点j发送可能性最大的码字所对应的状态值,作为奖励,将用户节点j的计数器向量clj=[c,…,c,…,c]中第
Figure FDA0003248405080000053
个计数器值减1,另一方面,状态位置向量
Figure FDA0003248405080000054
中末位元素是本次迭代后用户节点j发送可能性最小的码字所对应的状态值,作为惩罚,将用户节点j的计数器向量clj=[c,…,c,…,c]中第
Figure FDA0003248405080000055
个计数器值加1;
Initialize the counter values in cl j to cl j = [c,…,c,…,c]; construct the user state position detection matrix
Figure FDA00032484050800000415
And initialized to a zero matrix, where the superscript t 3 indicates that it belongs to the t 3 iteration stage,
Figure FDA00032484050800000416
Vectors in matrices
Figure FDA00032484050800000417
Figure FDA00032484050800000418
The corresponding states of the conditional probabilities obtained by user node j after the tth iteration in descending order are stored in t3 iterations of this round. The counter will increase or decrease according to the user state position after each iteration. The process has both rewards and penalties. The rule of counter change is: after each iteration, for example, after the tth iteration, user node j checks the state stored in
Figure FDA0003248405080000051
State position in vector, state position vector
Figure FDA0003248405080000052
The first element in is the state value corresponding to the codeword with the highest probability of being sent by user node j after this iteration. As a reward, the counter vector cl j of user node j is set to the state value of the codeword with the highest probability of being sent by user node j after this iteration.
Figure FDA0003248405080000053
The counter value is reduced by 1. On the other hand, the state position vector
Figure FDA0003248405080000054
The last element in the state is the state value corresponding to the codeword with the least probability of being sent by user node j after this iteration. As a penalty, the counter vector cl j of user node j is set to the value of the first codeword in [c,…,c,…,c].
Figure FDA0003248405080000055
The counter value is increased by 1;
clj=[c,…,c,…,c]中M个计数器的值首先降为0的元素,其位置所对应的状态代表的码字可判定为用户节点j的发射码字,用户节点j可以直接解码;cl j = the element whose value of the M counters in [c, …, c, …, c] first drops to 0. The codeword represented by the state corresponding to its position can be determined as the transmitted codeword of user node j, and user node j can directly decode it. 达到最大迭代次数tmax时,对仍未解码的非稳定用户,将其最后一次迭代完成后,计数器向量中计数器值最小的元素位置作为对应的解码状态,解码出最终的码字。When the maximum number of iterations t max is reached, for the unstable users that have not yet been decoded, the element position with the smallest counter value in the counter vector after the last iteration is completed is used as the corresponding decoding state to decode the final codeword.
7.如权利要求6所述的基于状态位置的SCMA接收检测方法,其特征在于,所述迭代最大次数tmax=t1+t2+t3,其中t1<t2<t3,t1>1。7 . The SCMA reception detection method based on state position according to claim 6 , wherein the maximum number of iterations is t max =t 1 +t 2 +t 3 , wherein t 1 <t 2 <t 3 , t 1 >1.
CN202111039142.5A 2021-09-06 2021-09-06 SCMA receiving and detecting method based on state position Active CN113746601B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111039142.5A CN113746601B (en) 2021-09-06 2021-09-06 SCMA receiving and detecting method based on state position

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111039142.5A CN113746601B (en) 2021-09-06 2021-09-06 SCMA receiving and detecting method based on state position

Publications (2)

Publication Number Publication Date
CN113746601A CN113746601A (en) 2021-12-03
CN113746601B true CN113746601B (en) 2023-06-06

Family

ID=78736128

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111039142.5A Active CN113746601B (en) 2021-09-06 2021-09-06 SCMA receiving and detecting method based on state position

Country Status (1)

Country Link
CN (1) CN113746601B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116264492A (en) * 2022-11-17 2023-06-16 中移(苏州)软件技术有限公司 SCMA decoding method, device, equipment and computer storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108737022A (en) * 2018-04-03 2018-11-02 清华大学 Low complex degree SCMA coding/decoding methods based on quantum calculation and device
CN112994850A (en) * 2021-05-18 2021-06-18 南京邮电大学 SCMA coding and decoding method combining transmitting end and receiving end

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016115531A1 (en) * 2015-01-15 2016-07-21 Huawei Technologies Co., Ltd. System and method for a message passing algorithm
US10548158B2 (en) * 2016-03-10 2020-01-28 Huawei Technologies Co., Ltd. Message passing algorithm decoder and methods

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108737022A (en) * 2018-04-03 2018-11-02 清华大学 Low complex degree SCMA coding/decoding methods based on quantum calculation and device
CN112994850A (en) * 2021-05-18 2021-06-18 南京邮电大学 SCMA coding and decoding method combining transmitting end and receiving end

Also Published As

Publication number Publication date
CN113746601A (en) 2021-12-03

Similar Documents

Publication Publication Date Title
US11652498B2 (en) Iterative bit flip decoding based on symbol reliabilities
USRE44421E1 (en) Decoding apparatus for low-density parity-check codes using sequential decoding, and method thereof
CN1210872C (en) Reduced search symbol estimation algorithm
CN101156321B (en) Method and device for controlling the decoding of a ldpc encoded codeword, in particular for dvb-s2 ldpc encoded codewords
US20080059862A1 (en) Apparatus and method to transmit/receive signal in a communication system
CN110995278A (en) Improved polar code serial elimination list bit flipping decoding method and system
JP2013219779A (en) System and method for providing h-arq rate compatible code for high-throughput application
CN110113131B (en) A method and system for network communication based on batch coding
RU2537806C2 (en) Device and method to generate matrix of parity inspection in system of communication with usage of linear block codes and device of transmission/reception and method for using it
CN116530023A (en) Serial concatenated codes with outer block codes and inner polarization-adjusted convolutional codes
US11082147B2 (en) Processing method, device and system for overlap multiplexing system
CN110233628B (en) Adaptive Belief Propagation List Decoding Method for Polar Codes
EP2025062A1 (en) Multi-theshold message passing decoding of low density parity check codes using the min-sum principle
US20130283119A1 (en) Method and Apparatus for Elementary Updating a Check Node During Decoding of a Block Encoded with a Non-binary LDPC Code
CN113746601B (en) SCMA receiving and detecting method based on state position
US7937642B2 (en) Apparatus and method for receiving signal in a communication system
US8234550B2 (en) Efficient decoding
KR101434267B1 (en) Apparatus and method for receiving signals in a communication system
CN111314030A (en) SCMA (sparse code multiple access) multi-user detection method based on spherical decoding optimization
CN111277830B (en) An encoding method, decoding method and device
US20090245400A1 (en) Method for selection of error-correction code in mimo wireless communication systems
CN114978195A (en) A method and system for searching error pattern sets related to polar code serial cancellation list decoding codewords
US20060218458A1 (en) Efficient decoding
CN102148619A (en) Self-adaptive linear programming decoding algorithm applied in LDPC (Low Density Parity Code)
CN111490797B (en) Encoding method, device and equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant