Disclosure of Invention
The invention aims to design a multi-user detection method of a wireless receiver, which is an iterative soft interference cancellation method applied to the wireless receiver, can greatly reduce the complexity of calculation compared with the prior similar method, and can be simultaneously applied to the situations of channel coding and channel coding absence.
The technical scheme for realizing the purpose of the invention is as follows: a method for multi-user detection in a wireless receiver, comprising the steps of:
A. setting a Soft Input Soft Output (SISO) module and a transformation module corresponding to each user;
B. setting the iteration times M and the iteration time parameters n and M, n to be positive integers;
C. setting n equal to 1, and making symbol decision on the combined output result signal of RAKE receiver by Soft Input and Soft Output (SISO) module;
D. according to the symbol decision result, carrying out parallel interference cancellation on the input discretized received signal and outputting a likelihood ratio;
E. let n be increased by 1, the transform module of the Soft Input Soft Output (SISO) module transforms the symbol decision result output by the Soft Input Soft Output (SISO) module and feeds back the result to the Soft Input Soft Output (SISO) module, and then step D, E is executed until n is M.
And step A, setting K Soft Input Soft Output (SISO) modules and K transformation modules corresponding to K users, wherein each transformation module is arranged between the feedback input end and the external information output end of the corresponding Soft Input Soft Output (SISO) module and is used for processing the iterative soft input soft output of the non-joint channel coding and decoding, and the Soft Input Soft Output (SISO) module outputs the likelihood ratio.
And step A, setting K Soft Input Soft Output (SISO) modules, K de-interleaving modules, K soft input soft output decoding modules, K interleaving modules and K transformation modules corresponding to K users, wherein each transformation module is arranged between the feedback input end of the corresponding Soft Input Soft Output (SISO) module and the external assigned information output end of the corresponding interleaving module and is used for processing the iterative soft input soft output of the joint channel coding and decoding, and the soft input soft output decoding module outputs the likelihood ratio.
Said step C is based on the following formula to perform the symbol operation of taking value on the result after RAKE combination, wherein r isk,l(i) Is the L path signal h of the L path signal of the K user in the K users obtained by aiming at the ith symbolk,l(i) Is a channel estimation value of the ith symbol, <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>sgn</mi> <mo>(</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msubsup> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> <mo>*</mo> </msubsup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>)</mo> <mo>.</mo> </mrow> </math>
step E, when not combining coding and decoding superposition, the symbol decision result lambda output by the Soft Input Soft Output (SISO) module is determined according to the following formula1[bk(i)]The transformation is carried out, and the transformation is carried out, <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>tanh</mi> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <msub> <mi>λ</mi> <mn>1</mn> </msub> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>)</mo> </mrow> <mo>.</mo> </mrow> </math>
step E, when the joint coding and decoding superposition is carried out, the symbol decision result lambda output by a Soft Input Soft Output (SISO) module is carried out according to the following formulaP 2[bk(i)]The transformation is carried out, and the transformation is carried out, <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>tanh</mi> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <msubsup> <mi>λ</mi> <mn>2</mn> <mi>p</mi> </msubsup> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>)</mo> </mrow> <mo>.</mo> </mrow> </math>
said lambdaP 2[bk(i)]Is to subtract the soft input information lambda of the soft input soft output decoder from the soft output of the soft input soft output decoder1[bk(i)]The latter likelihood ratio.
In the step D, the parallel interference cancellation is performed on the input discretized received signal by removing non-l-path signals of all K users and removing l-path signals of K-K users except the K-th user, that is, only the l-path signal of the K-th user is retained, and the processing formula is as follows: <math> <mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>r</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <munderover> <mi>Σ</mi> <mrow> <mi>la</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>la</mi> <mo>≠</mo> <mi>l</mi> </mrow> <mi>L</mi> </munderover> <msub> <mi>H</mi> <mi>la</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mover> <mi>b</mi> <mo>~</mo> </mover> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>H</mi> <mi>l</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> </math>
wherein,
indicating that the k-th component is set to zero
,H
l(i) Is a channel state matrix;
the step D of outputting the likelihood ratio further includes the following processing steps:
a. first, the weighted value of the first path signal of the kth user is calculated, wherein h isk,l(i) Is the channel state matrix Hl(i) Column k of (1) <math> <mrow> <msub> <mi>w</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> <mrow> <msup> <mi>σ</mi> <mn>2</mn> </msup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </mfrac> <mo>;</mo> </mrow> </math>
b. Multiplying and adding the two formulas respectively to obtain <math> <mrow> <msub> <mi>z</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>;</mo> </mrow> </math>
c. Using the channel state matrix Hl(i) Then, the module-taking calculation is carried out, <math> <mrow> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> <mrow> <msup> <mi>σ</mi> <mn>2</mn> </msup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </mfrac> </mrow> </math> <math> <mrow> <mi>μ</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> </math>
d. final step of utilizationb.c. calculating to obtain likelihood ratio lambda1[bk(i)]In the formula, Re is the operation of the real part, <math> <mrow> <msub> <mi>λ</mi> <mn>1</mn> </msub> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>=</mo> <mfrac> <mrow> <mn>2</mn> <mi>Re</mi> <mo>{</mo> <msub> <mi>μ</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>z</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>}</mo> </mrow> <mrow> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <mo>[</mo> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>]</mo> </mrow> </mfrac> <mo>.</mo> </mrow> </math>
the sigma is background noise variance and is estimated by adopting a traditional mean variance method; the channel state matrix Hl(i) Is estimated by a conventional channel estimation method under the condition that the channel impulse responses are assumed to be the same in one symbol i period.
The σ is the background noise variance and can be set to a constant including zero.
The simplified iterative soft interference cancellation method of the present invention is substantially different from the iterative method of reference 6, which is specifically shown in the following:
the method of the invention adopts the output of the Rake receiver as the input of the first iteration;
the method of the present invention may be applied to time-varying channels, rather than only time-invariant channels;
the method of the invention processes each path signal of the multi-path signal, thus adopting different interference offset methods and different external information (extrinsic information) formulas;
from an implementation complexity point of view, the inventive method has only a small increase compared to the conventional PIC method.
Detailed Description
The technical scheme of the invention is further explained by the embodiment and the attached drawings.
Referring to fig. 1, a signal transmission process of a cdma system is illustrated. User bit signals b for K users1,b2,...bKAre respectively pairedThe signals of 0 and 1 are converted into modulated signals after Symbol mapping, and then are correspondingly sent into Spreading modules (Spreading)4 and 5. 6 to become spread signals, the spread signals of K users are added by an adder and then sent, and the signal of the sent signal reaching a receiving end 8 through a Fading Channel 7(Fading Channel) is r (t).
The present invention relates to the technical field of Code Division Multiple Access (CDMA) systems, and when a user signal is transmitted, a symbol mapping module is required to convert '0' and '1' signals into modulated signals. The modulation mode can be various, for example, when BPSK (binary phase shift keying) modulation is adopted, 0 is mapped to-1, and 1 is mapped to + 1; and then the signal is processed by a spread spectrum module to become a spread spectrum signal. Assuming that the spreading factor is N, the signal of the first 1 bit after spreading becomes a spreading waveform of N chips after spreading.
The K user in the K users is represented by a mathematical formula [ iT, i (T +1)]The signals sent in the time period are: <math> <mrow> <munder> <mi>Σ</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </munder> <msub> <mi>A</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>c</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> <mi>ψ</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mi>iT</mi> <mo>-</mo> <mi>j</mi> <msub> <mi>T</mi> <mi>c</mi> </msub> <mo>)</mo> </mrow> <mo>.</mo> </mrow> </math>
wherein A isk(i) Is the energy factor of the kth user, indicating the difference in user energy, bk(i) Is the modulated bit transmitted by the kth user at time i, e.g., +1 or-1, c in the case of BPSK modulationk(j) Is a spreading code sequence, j 0.., N-1, ψ (t-iT-jT)c) Is a normalized chip waveform, where TcIs the time length of one chip, T is the time length of a symbol, TcT/N, where i, j denote the jth chip of the ith symbol. Let sk(t)=∑j=(1,...,N-1Ck(j)ψ(t-jTc) It is the waveform used to modulate the k user's bit. In the spreading modules 4, 5.. 6 of each user, spreading is performed with different spreading codes and then added for transmission over the fading channel 7.
Each user signal is typically channel coded (41) and interleaved (42) before transmission, the flow of which is shown in fig. 4; when the multi-user detection method of the receiver does not consider and channel decoding iterates each other, then the channel coding may not be considered. Thus two methods will be generated for the solution of the invention: one is an iterative receiving method not combined with channel decoding, the flow is as shown in fig. 2; another is an iterative receiving method combined with channel decoding, the flow of which is shown in fig. 3.
Referring to fig. 2, the signal model of the signal received by RAKE receiver 20 is r (i). In the illustration of fig. 1, the signal of the k-th user passes through a fading channel, and the signal is changed in two ways: one is influenced by multipath effect, and L waveforms are generated by one waveform; the other is that the waveform itself is distorted, so that the waveform of the jth chip of the ith bit becomes a superposition of a plurality of waveforms after passing through the channel, which can be expressed as: <math> <mrow> <munder> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>L</mi> </mrow> </munder> <msub> <mi>g</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>ψ</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mi>iT</mi> <mo>-</mo> <mi>j</mi> <msub> <mi>T</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>τ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow> </math>
wherein g isk,l(t) is a complex number representing the impulse response (waveform distortion) of the time-varying channel, τk,lIndicating a delay effect, the received signal for user k is: <math> <mrow> <msub> <mi>y</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mo>=</mo> <munder> <mi>Σ</mi> <mi>i</mi> </munder> <msub> <mi>A</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <munder> <mi>Σ</mi> <mrow> <mi>j</mi> <mo>=</mo> <mn>0</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>N</mi> <mo>-</mo> <mn>1</mn> </mrow> </munder> <msub> <mi>c</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>j</mi> <mo>)</mo> </mrow> <munder> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <mi>L</mi> </mrow> </munder> <msub> <mi>g</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>ψ</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mi>iT</mi> <mo>-</mo> <mi>j</mi> <msub> <mi>T</mi> <mi>c</mi> </msub> <mo>-</mo> <msub> <mi>τ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mo>)</mo> </mrow> </mrow> </math>
thus, the signal of user k at the receiver side is:
r(t)=∑kyk(t)+σn(t)
where n (t) is the standard gaussian noise with mean zero and variance l, and σ represents the variance of the background noise.
In fig. 2, the input to the RAKE receiver should be the discrete form of the received signal, i.e., r (i), and how to obtain r (i) from r (t) is described below. Firstly, the channel impulse response is processed with chip-level matching filtering, the filtering function is psi (t), then the signal impulse response of the ith path of the kth user is processedAfter the chip-level matching filtering, the value is { fk,l(m), expressed by the formula:
∫gk,l(t)ψ(t-iT-jTc-τk,l)ψ(t-mTc)dt
only if t is within a certain range, the above formula is not zero.
Since the spreading code values are different for different chips, the chip-level matched filter output for each chip waveform, considering the spreading code, is:
{hk,l(m)}=Ak{ck(m)}·{fk,l(m)},l=1,2,...,L
the channel states may be organized in a matrix form, i.e., a channel state matrix H
l(i):
This matrix, which is generally not accurately obtained, can be estimated by conventional channel estimation methods, for example, WMSA channel estimation methods.
Using the channel state matrix Hl(i) We can represent the received signal r (t) as the following discrete form r (i).
After all signals of the l path are matched and filtered at a chip level, the signals are: <math> <mrow> <msub> <mi>r</mi> <mrow> <mi>n</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <msubsup> <mo>∫</mo> <mrow> <mi>iT</mi> <mo>+</mo> <mi>n</mi> <msub> <mi>T</mi> <mi>c</mi> </msub> </mrow> <mrow> <mi>iT</mi> <mo>+</mo> <mrow> <mo>(</mo> <mi>n</mi> <mo>-</mo> <mn>1</mn> <mo>)</mo> </mrow> <msub> <mi>T</mi> <mi>c</mi> </msub> </mrow> </msubsup> <msub> <mi>r</mi> <mi>l</mi> </msub> <mrow> <mo>(</mo> <mi>t</mi> <mo>)</mo> </mrow> <mi>ψ</mi> <mrow> <mo>(</mo> <mi>t</mi> <mo>-</mo> <mi>iT</mi> <mo>-</mo> <mi>n</mi> <msub> <mi>T</mi> <mi>c</mi> </msub> <mo>)</mo> </mrow> <mi>dt</mi> <mo>,</mo> <mn>0</mn> <mo>≤</mo> <mi>n</mi> <mo><</mo> <mi>N</mi> <mo>.</mo> </mrow> </math>
where N (t) is the sum of the signals of the l-th path of all users, the signal of the l-th path in one symbol period has N chips, and can be expressed in a vector form: <math> <mrow> <msub> <mi>r</mi> <mi>l</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mover> <mo>=</mo> <mi>Δ</mi> </mover> <mo>[</mo> <msub> <mi>r</mi> <mrow> <mn>0</mn> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mn>1</mn> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>,</mo> <mo>.</mo> <mo>.</mo> <mo>.</mo> <mo>,</mo> <msub> <mi>r</mi> <mrow> <mi>N</mi> <mo>-</mo> <mn>1</mn> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mo>]</mo> <mi>T</mi> </msup> </mrow> </math>
depending on the transmitted signal and the channel through which it has passed, the received signal for any user can be represented as the product of the chip-level channel matrix and the transmitted signal for that user plus background noise, which is expressed as:
rl(i)=Hl(i)b(i)+σnl(i),l=1,2,...,L.
the result of the chip-level matched filtering of the user signal received at the receiver is: <math> <mrow> <mi>r</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>H</mi> <mi>l</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mi>b</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>+</mo> <mi>n</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mover> <mo>=</mo> <mi>Δ</mi> </mover> <mi>H</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mi>b</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>+</mo> <mi>n</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>.</mo> </mrow> </math>
the process flow of the iterative soft input soft output (iterative siso) method without combining with coding is described below in conjunction with fig. 2.
In addition to the original RAKE receiving part 20, the receiver also adds soft input and soft output modules 211, 212, etc. 21K for K users, and transform modules 221, 222, etc. 22K connected between the input and output terminals of each soft input and soft output module 211, 212, etc. 21K, the discretized received signal r (i) is input to the RAKE receiving part 20 and is also input to the first input terminals of each soft input and soft output module 211, 212, etc. 21K at the same time, K user signals output by the RAKE receiving part 20 are input to the second input terminals of each soft input and soft output module 211, 212, etc. 21K, the transformed signals fed back by K transform modules 221, 222, etc. 22K are input to the third input terminals of each soft input and soft output module 211, 212, etc. 21K, and the K input and soft output modules 211, 212, 21K output Extrinsic Information (Extrinsic Information) are fed back and input to the corresponding K transform modules 221 222. .., 22K, the Information bits are outputted by K soft input/soft output modules 211, 212, 21K.
The RAKE receiving section 20 performs code matching filtering using the spreading codes of the users to obtain the signal r of the l path of the k user for the i symbolk,l(i) Using the obtained channel estimate h for the ith symbolk,l(i) For Rake combining, the channel estimation can be obtained by using a common channel estimation method, such as a WMSA method.
The following steps are completed by the soft input and soft output module and the conversion module. The length of a received signal r (i) after chip-level matching filtering is given as N, the iteration times M and the iteration time parameter are given as N, N starts from 1, the increment is 1, and the iteration is finished until N is M.
Step 1, estimating a channel state matrix H by a channel estimation methodl(i)。
And step 2, starting from n-1, performing symbol decision on the result after Rake combining (the result after Rake combining is performed only under the condition that n-1), and obtaining a symbol decision result of the kth user, the ith symbol, the l-th path received signal and channel estimation: <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>sgn</mi> <mo>(</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msubsup> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> <mo>*</mo> </msubsup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>)</mo> <mo>.</mo> </mrow> </math>
where sgn represents the sign (+1 or-1) of the numerical value.
If n is 2, 3, … (i.e., in the case where n > 1), the following operation is performed: <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>tanh</mi> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <msub> <mi>λ</mi> <mn>1</mn> </msub> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>)</mo> </mrow> </mrow> </math>
this transformation is the function performed by the transformation module in fig. 2 (i.e. when n is not equal to 1, the SISO module processes the transformation result of the transformation module). Tan in the formula is taken as tangent (tan):
therefore, for
step 2, when n is 1, the combined result output from the Rake part 20 is directly input to the SISO block for processing, and when n > 1, the result λ output to the SISO block is output
1[b
k(i)]Is transformed to obtain
And then input to the SISO module.
Step 3, comprising steps a and b;
step a, carrying out parallel interference cancellation, removing non-l-path signals of all K users and removing l-path signals of other users (K-K) except the K-th user, namely only retaining the l-path signal of the K-th user, <math> <mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>r</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <munderover> <mi>Σ</mi> <mrow> <mi>la</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>la</mi> <mo>≠</mo> <mi>l</mi> </mrow> <mi>L</mi> </munderover> <msub> <mi>H</mi> <mi>la</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mover> <mi>b</mi> <mo>~</mo> </mover> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>H</mi> <mi>l</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </math>
wherein, indicating that the k-th component is set to zero
Step b, outputting the likelihood ratio value,
firstly, calculating the weighted value of the first path signal of the kth user, <math> <mrow> <msub> <mi>w</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> <mrow> <msup> <mi>σ</mi> <mn>2</mn> </msup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow> </math>
in the formula hk,l(i) (bold) is one column (kth column) in the aforementioned channel state matrix.
Multiplying and adding the formulas (1) and (2) respectively, <math> <mrow> <msub> <mi>z</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow> </math>
using the channel state matrix Hl(i) Then, the module-taking calculation is carried out, <math> <mrow> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> <mrow> <msup> <mi>σ</mi> <mn>2</mn> </msup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow> </math> <math> <mrow> <mi>μ</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow> </math>
finally, the three formulas (3), (4) and (5) are used to obtain the following formula, wherein Re is the operation of the real part: <math> <mrow> <msub> <mi>λ</mi> <mn>1</mn> </msub> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>=</mo> <mfrac> <mrow> <mn>2</mn> <mi>Re</mi> <mo>{</mo> <msub> <mi>μ</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>z</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>}</mo> </mrow> <mrow> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <mo>[</mo> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>]</mo> </mrow> </mfrac> </mrow> </math>
step 4, increasing n by 1, repeating the steps 1 to 3, stopping the iterative process until n equals M, and then outputting λ1[bk(i)]In step 1, which is repeated at this time, the channel state matrix H is simply re-estimated because n is no longer 1l(i)。
Referring to fig. 3, an iterative SISO method is shown in conjunction with decoding. The difference from the flow shown in fig. 2 is that: a de-interleaving module 33, a SISO decoding module 34 and an interleaving module 35 are added between each SISO module 31 and the corresponding transformation module 32, the interleaving module 35 outputs the extrinsic information and feeds the information back to the transformation module 32, and the SISO decoding module 34 outputs information bits. The operation of the SISO block 31 and the transform block 32 is the same as the iterative SISO method shown in fig. 2 without combination with decoding.
Still using the spread codes of users to make code matching filtering by RAKE receiving portion, and for ith symbol obtaining the signal r of ith path of kth userk,l(i) Using the obtained channel estimate h for the ith symbolk,l(i) For Rake combining, the channel estimation can be obtained by using a common channel estimation method, such as a WMSA method.
The following steps are completed by a soft input and output module, a de-interleaving module, a SISO decoding module, an interleaving module and a transformation module. The length of a received signal r (i) after chip-level matching filtering is given as N, the iteration times are given as M, an iteration time parameter is set as N, N starts from 1, increment is set as 1, and the iteration is finished until N is M.
Step 1: estimation of a channel state matrix H by a channel estimation methodl(i)。
Step 2: and (3) starting from n-1, performing symbol judgment on the result after RAKE combination (only in the case that n-1, performing symbol judgment on the result after RAKE combination to obtain a symbol judgment result of the kth user, the ith symbol, the ith path received signal and channel estimation: <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>sgn</mi> <mo>(</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msubsup> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> <mo>*</mo> </msubsup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>)</mo> </mrow> </math>
where sgn represents the sign (+1 or-1) of the numerical value.
If n is 2, 3. (i.e., if n > 1), the following operation is performed <math> <mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>tanh</mi> <mrow> <mo>(</mo> <mfrac> <mn>1</mn> <mn>2</mn> </mfrac> <msubsup> <mi>λ</mi> <mn>2</mn> <mi>p</mi> </msubsup> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>)</mo> </mrow> </mrow> </math>
This transformation is the function performed by the transformation module 32 in fig. 3 (i.e. when n is not equal to 1, the SISO module processes the transformation result of the transformation module.
Therefore, for
step 2, when n is 1, the combination result of Rake output is directly input to SISO block 31 for processing, and when n > 1, the result is output to SISO block 31
[b
k(i)](this value is different from the embodiment shown in FIG. 2) by conversion
And then fed back to the SISO block 31.
And step 3, comprising the following steps a and b:
step a, carrying out parallel interference cancellation, removing non-l-path signals of all K users and removing l-path signals of other users except the K-th user, namely only retaining the l-path signal of the K-th user, <math> <mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mi>r</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <munderover> <mi>Σ</mi> <mrow> <mi>la</mi> <mo>=</mo> <mn>1</mn> <mo>,</mo> <mi>la</mi> <mo>≠</mo> <mi>l</mi> </mrow> <mi>L</mi> </munderover> <msub> <mi>H</mi> <mi>la</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mover> <mi>b</mi> <mo>~</mo> </mover> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>H</mi> <mi>l</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mover> <mi>b</mi> <mo>~</mo> </mover> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>11</mn> <mo>)</mo> </mrow> </mrow> </math>
wherein,
indicating that the k-th component is set to zero
Step b, calculating likelihood ratio lambda1[bk(i)]:
Firstly, calculating a weighted value of the ith path signal of the kth user: <math> <mrow> <msub> <mi>w</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> </mrow> <mrow> <msup> <mi>σ</mi> <mn>2</mn> </msup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>22</mn> <mo>)</mo> </mrow> </mrow> </math>
in the formula hk,l(i) (shown in bold) is one column (kth column) in the aforementioned channel state matrix.
Therefore, by multiplying and adding the respective expressions (11) and (22), it is possible to calculate: <math> <mrow> <msub> <mi>z</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>w</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>r</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>33</mn> <mo>)</mo> </mrow> </mrow> </math>
using the channel state matrix Hl(i) And then performing modulus calculation: <math> <mrow> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mrow> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> <mrow> <msup> <mi>σ</mi> <mn>2</mn> </msup> <mo>+</mo> <mo>|</mo> <mo>|</mo> <msub> <mi>h</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <msup> <mrow> <mo>|</mo> <mo>|</mo> </mrow> <mn>2</mn> </msup> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>44</mn> <mo>)</mo> </mrow> </mrow> </math> <math> <mrow> <mi>μ</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>=</mo> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>55</mn> <mo>)</mo> </mrow> </mrow> </math>
finally, the following formula is obtained by using the three formulas (33), (44) and (55), wherein Re is an actual part: <math> <mrow> <msub> <mi>λ</mi> <mn>1</mn> </msub> <mo>[</mo> <msub> <mi>b</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>]</mo> <mo>=</mo> <mfrac> <mrow> <mn>2</mn> <mi>Re</mi> <mo>{</mo> <msub> <mi>μ</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <msub> <mi>z</mi> <mi>k</mi> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>}</mo> </mrow> <mrow> <munderover> <mi>Σ</mi> <mrow> <mi>l</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>L</mi> </munderover> <mo>[</mo> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>-</mo> <msub> <mi>μ</mi> <mrow> <mi>k</mi> <mo>,</mo> <mi>l</mi> </mrow> </msub> <msup> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mn>2</mn> </msup> <mo>]</mo> </mrow> </mfrac> </mrow> </math>
step 4, firstly, using soft output channel decoding from lambda
1[b
k(i)]Computing
[b
k(i)]Then, n is increased by 1, and the above steps 1 to 3 are repeatedly executed until n reaches the preset iteration value M, and the decoding module 34 outputs information bits (decided bits). To be explainedIn step 1, which is repeated at this time, the channel state matrix H is only re-estimated since n is no longer 1
l(i)。
The channel decoding output value of the soft output is the maximum likelihood ratio, and is the same as a general soft input soft output decoder, such as Turbo code SOVA decoding.
[b
k(i)]By subtracting the information lambda of the soft-decoded input from the output of the soft-output decoder
1[b
k(i)]The latter likelihood ratio, i.e., the a priori information added by channel decoding.
According to the flow of fig. 4, since channel decoding and interleaving are performed (completed by the channel coding module 41 and the interleaving module 42) when the user signal is sent, during decoding and feedback in fig. 3, the inverse (de) interleaving module 33 needs to perform inverse (de) interleaving (de interleaver) and the interleaving module 35 needs to perform interleaving (interleaver) respectively.
In both cases, fig. 2 and fig. 3, the calculations require some estimators, e.g., σ, Hl(i) The estimation method comprises the following steps:
the background noise variance σ can be estimated by adopting a common mean variance method; it may also simply be set to a constant, e.g. zero.
Channel state matrix Hl(i) Estimation of (2): for simple calculation, the channel estimation can be simplified greatly by assuming that the channel impulse responses are the same in one symbol period. This can be estimated using common channel estimation algorithms.
Referring to fig. 5, a graph comparing signal-to-noise ratio (SNR) and Bit Error Rate (BER) performance of RAKE reception (upper curve in the figure) with the multi-user detection hybrid iterative reception (first case not combined with coding) method (lower curve in the figure) of the present invention is shown, where the former has a higher Bit Error Rate (BER) than the latter under the same signal-to-noise ratio (SNR).
Referring to fig. 6, a graph comparing the user number and the Bit Error Rate (BER) performance of the method (the lower curve in the figure) of the present invention (the first case not combined with coding) using RAKE reception (the upper curve in the figure) and multi-user detection hybrid iterative reception (the first case not combined with coding) without channel coding is shown, where the former has a higher Bit Error Rate (BER) than the latter for the same number of Users (Users).
Referring to fig. 7, a graph of signal-to-noise ratio (SNR) and Bit Error Rate (BER) performance for a multi-user detection hybrid iterative receive method (the second case combined with coding) using the present invention for joint channel coding is shown, which has better performance than the lower curve in fig. 5.
The method of the invention adopts the output of a Rake receiver as the input of a first iteration (n is 1);
the method of the present invention can be applied to a time-varying channel, whereas the method of document 6 can only be applied to a time-invariant channel;
the method of the invention processes each path signal of the multi-path signal, thus adopting different interference offset methods and different external information (extrinsic information) formulas;
the complexity of the inventive method is only marginally increased compared to conventional PICs.