1. Introduction
Paired Carrier Multiple Access (PCMA) technology is used to improve the capacity of satellite communication, which has been widely used nowadays [1-2]. In the system of cooperative PCMA communication, the sender sends signals on the uplink, and the receiver receives mixed signals on the downlink. In the system of non-cooperative PCMA communication, the third party dose not have enough prior information, so it is difficult to use the cooperative communication method directly to obtain the useful signal component. According to the positive definite condition of separation, even if multiple terminals receive PCMA signals, the condition of separation can not be satisfied. Therefore, the demodulation of PCMA signals can only be realized by single-channel separation algorithm [3-5].
The traditional single-channel separation algorithm of PCMA signals mainly includes particle filtering algorithm [6] and per-survivor processing (PSP) algorithm [7]. In order to improve the performance of algorithm, some people unite PSP algorithm and SOVA (soft output viterbi algorithm) to obtain the soft information of symbol sequence, and the iterative decoding algorithm is also used to correct the soft information, which improves the performance of demodulation [8-9]. In order to reduce the complexity of algorithm, some people improve Gibbs separation algorithm to calculate the prior probability of each symbol pair, which achieves the estimation of the symbol sequence efficiently [10]. In order to support much more rate patterns over a wide range of channel states, some people design a selective demodulation scheme based on Log-likelihood Ratio threshold (SDLT) [11]. However, the core idea of these traditional algorithms are to go through all the possible values of transmit symbol pairs. The complexity of these traditional algorithms are still very high. How to reduce the complexity of algorithm has become a difficult problem for the demodulation of PCMA signals.
Aiming at the shortcomings of traditional algorithms, a new demodulation algorithm based on neural network is proposed. The trained neural network has strong computing power, and the structure of it is stable. In order to improve the ability of information processing, some people try to apply network research to the field of communication[12-14]. Compared with the traditional algorithms, the proposed method does not need to go through all the possible values of transmit symbol pairs, which breaks through the constraint of high complexity. Firstly, the estimation of PCMA signal’s parameters under non-cooperative communication are completed [15-18]. Secondly, the reconstruction algorithm of PCMA signal and gradient algorithm of neural network are combined to train the neural network. In the training of neural network, the input data is the time-frequency characteristic matrix of training signals, and the output data is the bit sequence of training signals. In the demodulation of receipt signal, the receipt signal is converted to auxiliary signals through preprocessing module. The time-frequency characteristic matrix of auxiliary signals are segmented into neural network, and the bit sequence is output by neural network. Finally, according to the minimum principle of cumulative function, all the bit sequence is entered into decision module to get the final result, which achieves the demodulation of PCMA signal efficiently.
2. Signal Model
In the system of non-cooperative PCMA communication, the receiver receives the mixed signal of two MPSK- or QAM-modulated signal components. The receipt signal is sampled at sampling frequency \(p / T_{S}\), where \(p\) denotes oversampling multiplier, \(T_s\) denotes the cycle of symbol, and the discrete-time form of it can be written as follows [19]
\(y_{k}=\sum_{i=1}^{2} h_{i, k} e^{j\left(2 \pi f_{i, k} k T_{i} / p+\theta_{i, k}\right)} \sum_{m=-L_{k}}^{L_{e}} {a^{(i)}}_{k+m} g_{i}\left(-m T_{s} / p+\tau_{i, k}\right)+v_{k}\) (1)
where \(v_{k}(k=1,2, \ldots)\) is the sampled sequence of complex additive white Gaussian noise with zero mean and variance \(N_{0} \cdot h_{i, k}, f_{i, k}, \theta_{i, k}\) and \(\tau_{i, k}(i=1,2)\) are the amplitudes, frequency offsets, initial phase offsets and time delays, respectively. \(L\left(L=2 L_{c}+1\right)\) is defined as memory length of the channel filter. \(a^{(i)} k+m\) is the transmit symbol of \(i(i=1,2)-t h\) signal at time \(k \cdot g_{i}(\cdot)\) is the pulse response of the channel filter. Because the channel parameters are changed slowly with time in practical engineering application, it can be assumed that the channel parameters are constant within a certain period of time, so \(h_{i, k}=h_{i}, \Delta f_{i, k}=\Delta f_{i}, \theta_{i, k}=\theta_{i}, \tau_{i, k}=\tau_{i}\) . Formula (1) can be simplified as follows
\(y_{k}=\sum_{i=1}^{2} h_{i} e^{j\left(2 \pi f_i kT_s/p+\theta_{i}\right)} \sum_{m=-L_{c}}^{L_{c}} {a^{(i)}}_{k+m} g_{i}\left(-m T_{s} / p+\tau_{i}\right)+v_{k} \) (2)
\(\left.\boldsymbol{g}_{i}=\boldsymbol{h}_{i} e^{j \theta_i}\left[g_{i}\left(-L_{c}\right) T / p+\tau_{i}\right), \cdots, g_{i}\left(-L_{c} T / p+\tau_{i}\right)\right]^{\mathrm{T}} \cdot \boldsymbol{a}_{1, k}\) and \(a_{2,k}\) are defined as the symbol sequence, where \(a_{1, k}=\left\{a_{1, k-L_{c}, k+L_{c}}\right\}\) and \(a_{2, k}=\left\{a_{2 k-L_{c}, k+L_{c}}\right\}\). The receipt signal can be written as follows
\(y_{k}=g_{1}^{\mathrm{T}} a_{1, k}+g_{2}^{\mathrm{T}} a_{2, k}+v_{k}\) (3)
If the channel parameters are known, we can combine channel parameters and bit sequence \(u_{r}^{(i)}\) to achieve the reconstruction of PCMA signal.
Fig. 1. Reconstruction of PCMA signal
3. Demodulation Algorithm for PCMA Signals
3.1 Preprocessing module
Firstly, the parameter \(h_{i}, f_{i}, \theta_{i}\) and \(\tau_{i}(i=1,2)\) of receipt signal should be estimated. In this chapter, in order to make neural network distinguish the receipt signal accurately, we convert the receipt signal \(y_k\) to the auxiliary signal through preprocessing module. The parameter of the training signal are denoted as \(h_{i}^{\prime}, \theta_{i}'\) and \(\tau_{i}'(i=1,2)\), where \(h_{i}^{\prime}, \theta_{i}'\) and \(\tau_{i}'(i=1,2)\) are the amplitudes, initial phase offsets and time delays, respectively. The discrete-time form of training signal can be expressed as follows
\({z'}_{k}=\sum_{i=1}^{2} h'_{i} e^{j\left({\theta'}_{i}\right)} \sum_{m-L_{c}}^{L_{c}} {a^{(i)}}_{k+m}{g_{i}}\left(-m T_{s} / p+\tau_{i}^{\prime}\right)\) (4)
\(\boldsymbol{G}_{1, k}^{\mathrm{T}}=h'_{1} e^{j \theta'_{1}} g_{i}\left(-m T_{s} / p+\tau_{1}^{\prime}\right)\) denotes the channel response of the first training signal component. \(\boldsymbol{G}_{2, k}^{\mathrm{T}}={h_{2}}' e^{j \theta'_{2}} g_{i}\left(-m T_{s} / p+\tau_{2}^{\prime}\right)\) denotes the channel response of the second training signal component. The discrete-time form of the training signal can be simplified as follows
\(z_{k}^{\prime}=\boldsymbol{G}_{1, k}^{T} \boldsymbol{a}_{1, k}+\boldsymbol{G}_{2, k}^{T} \boldsymbol{a}_{2, k}\) (5)
In order to eliminate the frequency offsets \(f_1\) and the amplitude \(h_1\) of the first receipt signal component, we convert the receipt signal \(y_k\) to the auxiliary signal \(z_k\) as follows
\(\begin{array}{c} z_{k}=\frac{h_{1}^{\prime}}{h_{1}} y_{k} e^{-j\left(2 \pi f_{1} k T_{s} / p-\theta'_{1}+\theta_{1}\right)} \\ =h_{1}^{\prime} e^{j \theta_{1}^{\prime}} x_{1, k}+\frac{h_{1}^{\prime} h_{2}}{h_{1}} e^{j\left[2 \pi\left(f_{2} \cdot f_{1}\right) k T_{s} / p+\theta_{2}+\theta_{1}^{\prime}-\theta_{1}\right]} x_{2, k} \\ +\frac{h_{1}}{h_{1}^{\prime}} v_{k} e^{-j\left(2 \pi f_{1} k T_{s} / p+\theta_{1}-\theta_{1}^{\prime}\right)} \\ x_{i, k}=\sum_{m=-L_{c}}^{L_{c}} a_{k+m}^{(i)} g_{i}\left(-m T_{s} / p+\tau_{i}\right) \end{array}\) (6)
We interpolating and extract the auxiliary signal \(z_k\) through Gardner algorithm to get the new auxiliary signal \(\bar{z}_{k}\) , which makes the time delay \(\tau_{1}\) of the first signal component changed into \(\tau_{1}^{\prime}\) , where the time delay of extraction is \(\left(\tau_{1}^{\prime}-\tau_{1}\right)\) . The sampled auxiliary signal \(\bar{z}_{k}\) can be constructed as follows
\(\begin{array}{l} \bar{z}_{k}=h_{1}^{\prime} e^{j \theta_{1}^{\prime}} \bar{x}_{1, k}+\frac{h_{1}^{\prime} h_{2}}{h_{1}} e^{j\left[2 \pi\left(f_{2}-f_{1}\right) k T_{s} / p+\theta_{2}+\theta_{1}^{\prime}-\theta_{1}\right]} \bar{x}_{2, k}+\frac{h_{1}}{h_{1}^{\prime}} v_{k} e^{-j\left(2 \pi f_{1} k T_{s} / p+\theta_{1}-\theta_{1}^{\prime}\right)} \\ \bar{x}_{2, k}=\sum_{m=-L_{c}}^{L_{c}} a_{k+m}^{(2)} g_{i}\left(-m T_{s} / p+\tau_{2}+\tau_{1}^{\prime}-\tau_{1}\right) \\ \bar{x}_{1, k}=\sum_{m=-L_{c}}^{L_{s}} a_{k+m}^{(1)} g_{i}\left(-m T_{s} / p+\tau_{1}^{\prime}\right) \\ \overline{\boldsymbol{G}}_{2, k}^{\prime}=\left\{\frac{h_{1}^{\prime} h_{2}}{h_{1}} e^{j\left[2 \pi\left(f_{2}-f_{1}\right) k T_{s} / p+\theta_{2}+\theta_{1}^{\prime}-\theta_{1}\right]} \times g_{i}\left(L_{c} T_{s} / p+\tau_{2}+\tau_{1}^{\prime}-\tau_{1}:-L_{c} T_{s} / p+\tau_{2}+\tau_{1}^{\prime}-\tau\right)\right\} \end{array}\) (7)
\(\overline{\boldsymbol{G}}_{2, k}^{\prime}\) is defined as the channel response of the second auxiliary signal component. \(h_{1} / h_{1}^{\prime} \cdot v_{k} e^{-j\left(2 \pi f_{1} k T_{s} / p+\theta_{1}-\theta_{1}^{\prime}\right)}\) is defined as \(\overline{v}_{k}\) . The sampled auxiliary signal \(\bar{z}_{k}\) can be simplified as follows
\(\bar{z}_{k}=\boldsymbol{G}_{1, k}^{\mathrm{T}} \boldsymbol{a}_{1, k}+\overline{\boldsymbol{G}}_{2, k}^{\prime} \boldsymbol{a}_{2, k}+\bar{v}_{k}\) (8)
Where \(a_{1, k}=\left\{a_{1, k-L_{c}: k+L_{c}}\right\}\) and \(a_{2, k}=\left\{a_{2, k-L_{c} : k+L_{c}}\right\}\) . In order to eliminate the frequency offsets \(\left(f_{2}-f_{1}\right)\) of the second auxiliary signal component, the new sampled auxiliary signal \(\tilde{z}_{k}\) can be constructed as follows
\(\tilde{z}_{k}=\bar{z}_{k}-\left[\left(\overline{\boldsymbol{G}}_{2, k}^{\prime}\right)^{\mathrm{T}}-\boldsymbol{G}_{2, k}^{\mathrm{T}}\right] \tilde{\boldsymbol{a}}_{2, k}\) (9)
Where \(\tilde{\boldsymbol{a}}_{2, k}=\left\{\tilde{a}_{2, k-L_{c}: k+L_{c}}\right\}\) denotes the auxiliary symbol set of the second signal component at time \(k, \tilde{a}_{2, k}\) denotes the auxiliary symbol of the second signal component. There are \(M\) possible values of \(\tilde{a}_{2, k}\) at time \(k\) , so there are \(M^{2 L_{c}+1}\) possible values of \(\tilde{\boldsymbol{a}}_{2, k}\) at time \(k\) .
\(a_{2, k}=\left\{a_{2, k-L_{c}, k+L_{c}}\right\}\) denotes the transmit symbol set of the second receipt signal component at time \(k\) . We should go through all the possible values of \(\tilde{\boldsymbol{a}}_{2, k}\) at time \(k\) . If the value of \(\tilde{\boldsymbol{a}}_{2, k}\) is \({\boldsymbol{a}}_{2, k}\) at time \(k\), the parameters of auxiliary signal \(\bar{z}_{k}\) are close to that of the training signal according to formula (9). In this case, the trained network has the best recognition effect on the auxiliary signal \(\bar{z}_{k}\). How to extract the auxiliary signal’s characteristic matrix will be introduced in next chapter.
3.2 Demodulation module
The length of training signal is 3 symbol pairs. If we do not consider the trailing effect of adjacent symbols, there will be \(M^6\) possible values of the training signal \(z'_k\). We use “specgram” function in MATLAB to extract time-frequency spectrum matrix \(N\) of each training signal \(z'_k\), and each element in the matrix \(N\) is complex. The upper limit of frequency is 128. The length of time is \(3T_s\). \(p\) denotes the oversampling multiplier, so the time-frequency spectrum matrix \(N\) is a \(128 \times 3 p\) matrix. Then the matrix \(N(128 \times 3 p)\) is transformed into the matrix \(Q(\mathbf{1} \times 384 p)\), which is regarded as the input data of neural network. The bit sequence of each training signal is regarded as the output data of neural network. However, the trailing of adjacent symbols affect the value of matrix \(Q(\mathbf{1} \times 384 p)\), so we will discuss the effect of adjacent symbols in three stations as follows.
Fig. 2. Effect of adjacent trailing symbol in station 1
Station 1 From Fig. 2 we can see that the matrix \(Q\) of training signal segment is only affected by the adjacent trailing symbol on the right side. The length of adjacent trailing symbol \(L_c\) is symbols, so there will be \(M^{6+2 L_{e}}\) possible values of \(Q\) in this station.
Fig. 3. Effect of adjacent trailing symbol in station 2
Station 2 From Fig. 3 we can see that the matrix \(Q\) of training signal segment is only affected by the adjacent trailing symbol on the left side. The length of adjacent trailing symbol is symbols, so there will be \(M^{6+2 L_{e}}\) possible values of \(Q\) in this station.
Fig. 4. Effect of adjacent trailing symbol in station 3
Station 3 From Fig. 4, we can see that the matrix \(Q\) of training signal segment is affected by the adjacent trailing symbol on both sides. The length of adjacent trailing symbol is symbols, so there will be \(M^{6+4 L_{e}}\) possible values of \(Q\) in this station.
According to the above analysis, the number of training signals is \(M^{6}\left(M^{4 L_{e}}+2 M^{2 I_{z}}\right)\). The time-frequency feature matrix \(Q^{m}=\left(q_{1}^{m}, q_{2}^{m} \cdots q_{384 p}^{m}\right)\left(m=1,2 \cdots M^{6}\left(M^{4 L_{c}}+2 M^{2 L_{c}}\right)\right)\) of the training signals under different stations are extracted, which are used as the input data of the neural network, and the bit sequence of the training signals are regarded as the output data of the neural network. BP neural network mainly includes two processes: forward transmission and error feedback. The input data is processed from the input layer through the hidden layer to the output layer. The topology structure of the BP neural network is shown in Fig. 5.
Fig. 5. Topology structure of neural network
The constructed neural network has \(384p\) input nodes, \(H\) hidden layers and \(6 \log _{2} M\) output nodes. \(N_{i}(i=1,2, \cdots n)\) denotes the nodes of each hidden layer. \(W_{j}\) denotes weight matrix, where \(\boldsymbol{W}_{j}=\boldsymbol{W}_{j, R}+i \boldsymbol{W}_{j, I}=\left(\boldsymbol{w}_{j, 1}, \boldsymbol{w}_{j, 2}, \cdots \boldsymbol{w}_{j, N_{i}}\right)(\mathbf{l}<j \leq H+\mathbf{l})\) . \(\boldsymbol{Q}^{m}=\boldsymbol{Q}_{R}^{m}+i \boldsymbol{Q}_{I}^{m}\) denotes the input training data. The input matrix of the first hidden layer can be expressed as follows
\(\boldsymbol{I}_{\mathbf{1}}=\boldsymbol{I}_{\mathbf{1}, \boldsymbol{R}}+\boldsymbol{i} \boldsymbol{I}_\boldsymbol{1,I}=\boldsymbol{W}_{\mathbf{1}} \boldsymbol{Q}^{m}+\boldsymbol{B}_{\mathbf{1}}\) (10)
Where the threshold matrix is defined as \(\boldsymbol{B}_{\mathbf{1}}=\boldsymbol{B}_{\mathbf{1}, \boldsymbol{R}}+\boldsymbol{i} \boldsymbol{B}_{\mathbf{1}, \boldsymbol{I}}\). The output matrix of the first hidden layer can be expressed as follows
\(\boldsymbol{O}_{1}=\boldsymbol{O}_{1, R}+\boldsymbol{i} \boldsymbol{O}_{1, I}=f\left(\boldsymbol{I}_{1, R}\right)+i f\left(\boldsymbol{I}_{1, I}\right)\) (11)
Where \(f(\cdot)\) denotes the transfer function of the hidden layer. The sigmoid function is selected to be the transfer function, so \(f(x)=1 /\left(1+e^{-x}\right)\) . The input matrix and output matrix of \(l-t h(1<l \leq H)\) hidden layer can be expressed respectively as follows
\(\begin{aligned} &\boldsymbol{I}_{l}=\boldsymbol{I}_{l, R}+i \boldsymbol{I}_{l, I}=\boldsymbol{W}_{l} \boldsymbol{O}_{l-1}+\boldsymbol{B}_{l}\\ &\boldsymbol{O}_{l}=\boldsymbol{O}_{l, R}+i \boldsymbol{O}_{l, I}=f\left(\boldsymbol{I}_{l, R}\right)+i f\left(\boldsymbol{I}_{l, I}\right) \end{aligned}\) (12)
The input matrix and output matrix of output layer can be expressed respectively as follows
\(\begin{array}{l} \boldsymbol{I}_{H+1}=\boldsymbol{I}_{H+1, R}+i \boldsymbol{I}_{H+1, I}=\boldsymbol{W}_{H+1} \boldsymbol{O}_{L}+\boldsymbol{B}_{H+1} \\ \boldsymbol{O}_{H+1}=\boldsymbol{O}_{H+1, R}+i \boldsymbol{O}_{H+1, I}=g\left(\boldsymbol{I}_{H+1, R}\right)+i g\left(\boldsymbol{I}_{H+1, I}\right) \end{array}\) (13)
The expected output matrix is defined as \(\boldsymbol{V}\) , so the error function of neural network can be expressed as follows
\(\begin{aligned} E(\boldsymbol{W}, \boldsymbol{B}) &=\frac{1}{2}\left(\boldsymbol{O}_{H+1}-\boldsymbol{V}\right)\left(\boldsymbol{O}_{H+1}-\boldsymbol{V}\right)^{*} \\ &=\frac{1}{2}\left[\left(\boldsymbol{O}_{H+1, R}-\boldsymbol{V}_{R}\right)^{2}+\left(\boldsymbol{O}_{H+1, I}-\boldsymbol{V}_{I}\right)^{2}\right] \end{aligned}\) (14)
Where \(\boldsymbol{W}=\left\{\boldsymbol{W}_{1}, \boldsymbol{W}_{2}, \cdots, \boldsymbol{W}_{H+1}\right\}, \boldsymbol{B}=\left\{\boldsymbol{B}_{1}, \boldsymbol{B}_{2}, \cdots, \boldsymbol{B}_{H+1}\right\}\) .
If \(E_{R}(t)=\left[f(t)-V_{R}\right]^{2} / 2\) and \(E_{I}(t)=\left[f(t)-V_{I}\right]^{2} / 2\) , formula (14) can be simplified as follows
\(E(\boldsymbol{W}, \boldsymbol{B})=E_{R}\left(\boldsymbol{O}_{H+1, R}\right)+E_{I}\left(\boldsymbol{O}_{H+1, I}\right)\) (15)
The purpose of training is to find the best weight matrix \(\overline{W}\) and threshold matrix \(\overline{\boldsymbol{B}}\) , where \(E(\overline{\boldsymbol{W}}, \overline{\boldsymbol{B}})=\min E(\boldsymbol{W}, \boldsymbol{B})\) . The learning rate is defined as \(η\) . The update process of weight matrix and threshold matrix can be expressed respectively as follows
\(\begin{aligned} &\boldsymbol{W}_{j}=\boldsymbol{W}_{j}-\eta\left(\frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{W}_{j, R}}+i \frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{W}_{j, I}}\right)\\ &\boldsymbol{B}_{j}=\boldsymbol{B}_{j}-\eta\left(\frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{B}_{j, R}}+i \frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{B}_{j, I}}\right)\\ &\frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{W}_{j, R}}=\boldsymbol{G}_{j, R} \boldsymbol{O}_{j-1,I}^{T}+\boldsymbol{G}_{j, R} \boldsymbol{O}_{j-1,I}^{T}\\ &\frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{W}_{j, I}}=-\boldsymbol{G}_{j, R} \boldsymbol{O}_{j-1,I}^{T}+\boldsymbol{G}_{j, R} \boldsymbol{O}_{j-1, I}^{T}\\ &\frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{B}_{j, R}}=\boldsymbol{G}_{j, R}, \frac{\partial E(\boldsymbol{W}, \boldsymbol{B})}{\partial \boldsymbol{B}_{j, I}}=\boldsymbol{G}_{j, I}\\ &\boldsymbol{G}_{j, R}=\boldsymbol{O}_{j, R}-\boldsymbol{V}_{R}, \boldsymbol{G}_{j, I}=\boldsymbol{O}_{j, I}-\boldsymbol{V}_{I} \end{aligned}\) (16)
When the number of training iterations reaches the upper limit, the optimal weight matrix \(\overline{W}\) and threshold matrix \(\overline{\boldsymbol{B}}\) are given for the neural network, which indicates that the training of neural network has be completed. In the demodulation of the receipt signal, the receipt signal is converted to the auxiliary signal \(\bar{z}_{k}\) according to formula (9). We should go through all the possible values of \(\tilde{\boldsymbol{a}}_{2, k}\) at each time. There are \(M^{2 L_{c}+1}\) possible values of \(\bar{z}_{k}\) at time \(k(k=1,2 \cdots G \times p)\) . Because the length of training signal is 3 symbol pairs, each time-frequency spectrum matrix \(N_{b}\left(b=1,2 \cdots M^{G\left(2 L_{c}+1\right)}\right)\) of auxiliary signals is partitioned into \(G / 3\) matrices, where \(G \) denotes the total number of receipt symbol pairs. Each time-frequency feature matrix \(\boldsymbol{Q}_{b}=\left[\boldsymbol{Q}_{1}^{b}, \boldsymbol{Q}_{2}^{b} \cdots \boldsymbol{Q}_{G / 3}^{b}\right]\) is segmented into the neural network. The output data of the neural network is defined as matrix \(\boldsymbol{U}^{b}=\left[\boldsymbol{u}_{1}^{b}, \boldsymbol{u}_{2}^{b} \cdots \boldsymbol{u}_{G / 3}^{b}\right]\) , where \(\boldsymbol{u}_{d}^{b}=\left[u_{d, 1}^{b}, u_{d, 2}^{b} \cdots u_{d, 6 \log _{2} M}^{b}\right]^{T}(d=1,2 \cdots G / 3)\) . \(\left[u_{d, 1}^{b}, u_{d, 2}^{b} \cdots u_{d, 3 \log _{2} M}^{b}\right]^{T}\) denotes the demodulated bit sequence of the first signal component, \(\left[u_{d, 3 \log _{2} M+1}^{b} \cdots u_{d, 6 \log _{2} M}^{b}\right]^{T}\) denotes the demodulated bit sequence of the second signal component.
3.3 Decision module
In preprocessing module, we go through all the possible values of \(\tilde{\boldsymbol{a}}_{2, k}\) at each time. The receipt signal is converted to auxiliary signals, and the total number of auxiliary signals is \(M^{G\left(2 L_{c}+1\right)}\) . In the demodulation of the receipt signal, the output data U from the neural network can be expressed as follows
\(\boldsymbol{U}=\left[\begin{aligned} &\boldsymbol{u}_{1}^{1} \boldsymbol{u}_{2}^{1} \boldsymbol{u}_{3}^{1} \cdots \boldsymbol{u}_{G / 3}^{1}\\ &\boldsymbol{u}_{1}^{2} \boldsymbol{u}_{2}^{2} \boldsymbol{u}_{3}^{2} \cdots \boldsymbol{u}_{G / 3}^{2}\\ &\boldsymbol{M}_{1}^{M^{G\left(2 L_{c}+1\right)}} \cdot \cdot \boldsymbol{U}_{G / 3}^{M^{G\left(2 L_{c}+1\right)}} \end{aligned}\right]\) (17)
The cumulative function is defined as follows
\(\lambda\left(\boldsymbol{u}_{d}^{j}\right)=\sum_{i=1}^{6 \log _{2}^{M}}\left|u_{d, i}^{j}-\beta\right|, \beta=\left\{\begin{array}{l} 0,\left|u_{d, i}^{j}\right|<0.5 \\ 1,\left|u_{d, i}^{j}\right| \geq 0.5 \end{array}\right.\) (18)
Where \(j=1,2 \cdots M^{G\left(2 L_{c}+1\right)}\) . According to the minimum principle of cumulative function \(\lambda\left(\boldsymbol{u}_{d}^{j}\right)\) , the selected matrix \(\boldsymbol{u}_{d}^{j}\) in each row of matrix \(\boldsymbol{U}\) are combined into a new matrix \(\boldsymbol{U}^{\prime}=\left[\boldsymbol{u}_{1}^{\prime}, \boldsymbol{u}_{2}^{\prime} \cdots \boldsymbol{u}_{G / 3}^{\prime}\right]\) , where \(\boldsymbol{u}_{d}^{\prime}=\left[u_{d, 1}^{\prime}, u_{d, 2}^{\prime} \cdots u_{d, 6 \log _{2} M}^{\prime}\right]^{T}\) . We should transform the matrix \(\boldsymbol{U'}\) into a new two-dimensional matrix according to the arrangement rule of output data.
\(\begin{aligned} \boldsymbol{U}^{\prime} &=\left[\begin{array}{llllll} u'_{1,1} \quad u_{1,2}^{\prime} \quad \cdots \quad u'_{1,3 \log _{2} M} & \cdots\cdots u'_{G/3,1} \quad u'_{G/3,2} \cdots u'_{G/3,2 log_2 M} \\ u'_{1,3 \log _{2}^{M}+1} \quad\cdots \quad u_{1,6 \log _{2} M}^{\prime} & \cdots\cdots u_{G / 3,3 \log _{2} M+1}^{\prime} \cdots\cdots u'_{G/3,6log_2M} \end{array}\right] \\ &=\left[\begin{array}{lll} u_{1}^{(1)} & u_{2}^{(1)} & u_{3}^{(1)} & \cdots u_{b}^{(1)} \\ u_{1}^{(2)} & u_{2}^{(2)} & u_{3}^{(2)} & \cdots u_{b}^{(2)} \end{array}\right] \end{aligned}\) (19)
Where \(b=\left(1,2 \cdots G \log _{2} M\right)\) . We can get the bit sequence of the receipt signal through formula (20). The first line of the matrix \(\beta\left(\boldsymbol{U}^{\prime}\right)\) is the bit sequence of the first receipt signal component, and the second line of the matrix \(\beta\left(\boldsymbol{U}^{\prime}\right)\) is the bit sequence of the second receipt signal component.
\(\beta\left(u_{b}^{(i)}\right)=\left\{\begin{array}{l} u_{b}^{(i)}=0,\left|u_{b}^{(i)}\right|<0.5 \\ u_{b}^{(i)}=1,\left|u_{b}^{(i)}\right| \geq 0.5 \end{array}\right.\) (20)
Fig. 6. Flow chart of the proposed algorithm
4. Simulation
In this study, we use QPSK modulated PCMA signals as an example to study the performance of the proposed algorithm. The square root raised cosine FIR with a roll-off factor of 0.35 is employed in the shaping and matched filters of the two signals. The memory length of the channel filter \(L\) is 3 symbols. The parameters of neural network are selected according to “The Ohio State University DNN-toolbox” [20]. The total number of hidden layer \(H = 3\) . The number of nodes in hidden layer \(n\) is selected according to “ \(n=\sqrt{q+m}+\alpha\) ”, where \(q(q=384 p)\) denotes the total number of nodes in input layer, \(m\left(m=6 \log _{2} M\right)\) denotes the total number of nodes in output layer. \(α\) is selected in space [1,10] . The learning rate \(η\) is selected in space [0.0001,0.001]. The performance of the algorithm is measured by BER (bit error ratio), where \(B E R=N_{e b} / N_{b}, N_{e b}\) denotes the sum of wrong bits, and \(N_{b}\) denotes the sum of bits in receipt signal. The values of the simulation parameters are presented in Table 1.
Table 1. Simulation Parameters
4.1 Information factors of the proposed algorithm’s performance
In order to find the influence factors of the proposed algorithm’s performance, we just change the amplitude ratio and the delay difference \(\Delta \tau=\left|\Delta \tau_{1}^{\prime}-\Delta \tau_{2}^{\prime}\right|\) of the training signal to do some comparative experiments. From Fig. 7 and 8, we can conclude that the separated results of algorithm keep positively correlated with difference in amplitude and delay between two training signal components. Compared with \(h_{1} / h_{2}=1: 1\) in the \(10^{−2}\) order of magnitude of BER, the SNR of the proposed algorithm can be reduced nearly 4 dB and nearly 6 dB when \(h_{1} / h_{2}=1: 0.9\) and \(h_{1} / h_{2}=1: 0.7\) , respectively. Compared with \(\Delta \tau=0.1\) in the \(10^{-2}\) order of magnitude of BER, the SNR of the proposed algorithm can be reduced nearly 5 dB and nearly 7 dB when \(\Delta \tau=0.2\) and \(\Delta \tau=0.3\) , respectively. These results can be explained as follows. The difference of the two training signal components keep positively correlated with difference in the parameters between two training signal components, which makes the neural network distinguish the two signal components more easily when \(\Delta \tau=0.2\) and \(\Delta \tau=0.3\) .
Fig. 7. Demodulation performance under different amplitude ratios
Fig. 8. Demodulation performance under different delay difference
The curves of BER versus the signal-to-noise ratio (SNR) in different oversampling multiple are shown in Fig. 9. With the increase of oversampling multiple, the performance of the proposed algorithm becomes better and better. Compared with \(p = 8\) in the \(10^{−2}\) order of magnitude of BER, the SNR of the proposed algorithm can be reduced nearly 2 dB and nearly 4 dB when \(p =16\) and \(p = 24\) , respectively. These results can be explained as follows. The reliability of the input training data is related to \(p\) . Oversampling multiple \(p\) affects the size of time-frequency spectrum matrix N . The number of column in matrix \(N\) is increased with the increase in the value of \(p\) , which makes matrix N contain more detail information of signals, and the training of neural network becomes more sufficient. Therefore, the performance of the proposed algorithm is mainly affected by oversampling multiple \(p\) . However, when \(p ≥ 24\) , the difference of the performance curves is very small, which shows that the detail information of input training data is sufficient, and the performance of the algorithm reaches the upper limit.
Fig. 9. Demodulation performance under different oversampling multiples
4.2 Performance analysis of the proposed algorithm
The performance curves of the proposed algorithm and PSP algorithm are shown in Fig. 10, \(L\) denotes the memory length of the channel filter in PSP algorithm. P-method denotes the proposed algorithm. When \( L = 4\) , compared with PSP algorithm, the performance of the demodulation is obviously improved through the proposed algorithm. \(\Delta f\) denotes the frequency difference of PCMA signals, where \(\Delta f=\left|f_{1}-f_{2}\right| / f_{b}\) . If \(L = 5\) and \(\Delta f=5 \times 10^{-3}\) , the performance of the proposed algorithm is close to that of PSP algorithm. However, it can be seen from Table 2 that the complexity of demodulation is greatly reduced through the proposed algorithm. These results can be explained as follows. The main idea of the PSP algorithm is to go through all the possible values of the transmit symbol pairs of each path, and the computational complexity of it mainly comes from the calculation of branch metric and the tracking of channel response. In calculating the branch metric, \(M^{2 L}(8 L+2)\) times of real addition and \(M^{2 L}(8 L+2)\) times of real multiplication are required. In tracking the channel response, \(12 M^{2(L-1)} L\) times of real addition and \(12 M^{2(L-1)} L\) times of real multiplication are required. The computational complexity of the proposed algorithm mainly comes from the training of neural network and the demodulation of the receipt PCMA signal. The demodulation network has \(H\) hidden layers. \(\ell_{\max }\) denotes the total number of training iterations. In the training of neural network, \(768 p \ell_{\max } M^{4 L_{c}+2} \tilde{Q}\) times of real multiplication and real addition are required in forward transmission process. \(2 \ell_{\max } M^{4 L_{c}+2}\left(9 \tilde{Q}-8 Q_{H-1} Q_{H}-8 Q_{H} M^{2}\right)\) and \(4 \ell_{\max } M^{4 L_{c}+2}\left(9 \tilde{Q}-8 Q_{H-1} Q_{H}-9 Q_{H} M^{2}\right)\) times of real addition and real multiplication are required in error feedback process, which are defined as Num1 and Num2 respectively, where \(\tilde{Q}=q Q_{1}+Q_{1} Q_{2}+\cdots+Q_{H-1} Q_{H}+Q_{H} M^{2}\) . In the demodulation of the receipt signal, \(2 \tilde{Q}\) times of real multiplication and real addition are required in forward calculation process. \(4 M^{2 L_{c}+1}\left(2 L_{c}+1\right)\) times of real multiplication and real addition are required in the preprocessing module.
Table 2. Computational complexity of algorithms
Fig. 10. Demodulation performance of the proposed algorithm and PSP algorithm
Where \(M\) denotes the modulation order. The demodulation network can be used repeatedly after training, so we do not need to consider the complexity of training. Compared with PSP algorithm, we just go through the possible values of auxiliary symbols in single signal component. However, the transmit symbols of two signal components are required to be traversed in PSP algorithm. Therefore, the complexity of the proposed algorithm is greatly reduced, which breaks through the constraint of high complexity.
5. Conclusion
In order to reduce the complexity of demodulation, a new demodulation algorithm for non-cooperative PCMA signals based on neural network is proposed in this paper. The algorithm is divided into three modules: preprocessing module, demodulation module, and decision module. The time-frequency characteristic matrix of PCMA signals are used as input data, and the output data are the bit sequence of PCMA signals. In the proposed algorithm, we don’t need to go through all the possible values of transmit symbol pairs, which breaks through the constraint of high complexity. The simulation results show that the performance of the proposed algorithm is similar to that of PSP algorithm, but the computational complexity of demodulation can be greatly reduced, which provides a new idea for the efficient demodulation of non-cooperative PCMA signals.
6. Acknowledgments
This work was supported by the National Natural Science Foundation of China (No. 61401511) and the National Natural Science Foundation of China (No. U1736107).
참고문헌
- Wu C L, Liu Z, Wang X, et al., "Single-channel blind source separation of co-frequency overlapped GMSK signals under constant-modulus constraints," IEEE Commun. Lett., 20(3), 486-489, 2016. https://doi.org/10.1109/LCOMM.2016.2521737
- Yang Y, Zhang D L, Peng H, "The demodulation/decoding algorithm of PCMA mixed signals based on iteration processing," Journal of Electronics & Information Technology, 34(12), 2869-2875, 2012. https://doi.org/10.3724/SP.J.1146.2012.00633
-
Ruder M A, Lehmann A, Schober M R, et al., "Single antenna interference cancellation forGSM/VAMOS/EDGE using
$L_p$ -norm detection and decoding," IEEE Transactions on Wireless Communications, 14(5), 2413-2425, 2015. https://doi.org/10.1109/TWC.2014.2386861 - Li F, Jafarkhani H, "Interference cancellation and detection for more than two users," IEEE Transactions on Communication, vol. 59, no. 3, pp. 901-910, 2011. https://doi.org/10.1109/TCOMM.2010.011811.090307
- Wu C. L, Liu Z and Wang X, "Single-channel blind source separation of co-frequency overlapped GMSK signals under constant-modulus constraints, " IEEE Communication Letters, vol. 20, no. 3, pp. 486-489, 2016. https://doi.org/10.1109/LCOMM.2016.2521737
- Liu K, Li H, Dai X C, "Single channel blind separation of co-frequency MPSK signals," in Proc. of Communications, Internet and Information Technology, 42-46, 2006.
- Tu S L, Zhang H, Gu N, "Signal-Channel blind separation of two QPSK signals using per-survivor processing," in Proc. of IEEE Asia Pacific Conference on Ciruits and Systems, 473-476. 2009.
- Liao C H, Huang Y L, Zhou S D, "Joint separation and demodulation algorithm for paired carrier multiple access signals," Journal on Communications 31(6), 99-105, 2010.
- Du J, Gong KX, Peng H, "Algorithm for blind separation of PCMA based on CHASE decoding, " Journal on Communications, 36(3), 98-103, 2015.
- Yang Y, Zhang D L, Peng H, et al. "Single-channel blind separation of co-frequency modulated signals based on Gibbs sampler," Journal on Communications, 36(4), 156-162, 2015. https://doi.org/10.11959/j.issn.1000-436x.2015090
- Huang Y H, Dong Y, Minho J, Liu Y Z, "Selective Demodulation Scheme Based on Log-Likelihood Ratio Threshold," KSII Transactions on Internet and Information Systems, Vol.7, No.4, pp.767-783, 2013. https://doi.org/10.3837/tiis.2013.04.009
- Ge X H, Tian X T, Qiu Y H, Mao G Q, "Small Cell Networks With Fractal Coverage Characteristics," IEEE Transactions on Communications, Vol. 66, No. 11, pp. 5457 - 5469, 2018. https://doi.org/10.1109/TCOMM.2018.2849391
- Chen J Q, Ge X H, Ni Q, "Coverage and Handoff Analysis of 5G Fractal Small Cell Networks, " IEEE Transactions on Wireless Communications, publication online, 2018.
- Maksymyuk T, Han L Z, Ge X H, Chen Hsiao-Hwa, "Quasi-quadrature Modulation Method for Power Efficient Video Transmission over LTE Networks," IEEE Transactions on Vehicular Technology,Vol.63, No.5, pp.2083-2092, 2014. https://doi.org/10.1109/TVT.2014.2313658
- Guo Y M, Peng H, Yang Y, "Blind separation algorithm of PCMA signals with different symbol rates based on DG-PSP," Journal on Communications, 38(3),122-129, 2017.
- Wan J, Tu S L, "Theory and technology on blind source separation of communication signals, " Beijing: National Defense Industry Press, p. 339, 2012.
- Liao C H, Tu S L, Wan J, "Iterative algorithm on single-channel blind separation and decoding of co-frequency modulated signals," Journal on Communications, 32(8), 111-117, 2011.
- Zhang D L, Zhang J, Li J, "Blind data recovery of single-channel mixed signals based on BICM-ID," Systems Engineering and Electronics, 34(2),379-384, 2012. https://doi.org/10.3969/j.issn.1001-506X.2012.02.31
- Zhang D L, Zhang J, Li J, "Blind data recovery of single-channel mixed signals based on Turbo equalization and channel estimation," Journal on Communications, (1), 47-53, 2014.
- Wang Y X, Narayanan A, Wang D L, "On training targets for supervised speech separation," IEEE/ACM Trans Audio Speech Lang Process, 22(12), 1849-1858, 2014. https://doi.org/10.1109/TASLP.2014.2352935