1. Field of the Invention
The present invention relates to the technical field of error correcting codes (ECCs) and, more particularly, to a decoding method and system for real-time wireless channel estimation.
2. Description of Related Art
While a digital communication system transfers data, a receiving end may receive error messages because of non-predictable interferences or noises. Therefore, a channel coding is used to effectively reduce the bit error rate, without raising the transmission power, which typically occupies partial bandwidth for transmission but ensures that the bit error rate is controlled in an acceptable range. In recent years, the data transmission is required day by day. For a future data transmission, the coverage becomes wider and the transmission rate becomes faster. Accordingly, the channel coding is considered as an important part in a wireless transmission system design.
Turbo codes are an essential breakthrough in the recent channel coding, which can provide the superior error correcting capability and almost the ideal Shannon limit in transmission. Accordingly, the turbo codes are largely used in the field of wireless transmission, including satellite communications, digital image transmissions and 3GPPs.
The modulator 120 performs a BPSK modulation on the codeword c={μ,p,q} to thereby produce a modulated signal x, where xε{+1,−1}. The modulated signal x is passed through an AWGN channel for transmission. The demodulator 130 receives the modulated signal x through the AWGN channel and demodulates it to thereby produce a received signal y expressed by yi=xi+n=±1+n, for n denotes noises in the AWGN channel and contains zero mean and variance σ2.
The first decoder 310 receives Λμ, Λp and a first prior information Prior1(i), and accordingly produces a first extrinsic information E1(i), for i denotes i-th iteration and Prior1(0) is initially set to zero. The interleaver 320 produces a second prior information Prior2(i) based on the first extrinsic information E1(i) and produces interleaved systematic bits μπ having LLRs Λμπ based on the systematic bits.
The second decoder 330 receives Λμπ, Λq and the second prior information Prior2(i) to thereby produce a second extrinsic information E2(i). The second extrinsic information E2(i) is passed through the deinterleaver 340 to thereby produce the first prior information Prior1(i).
After a certain amount of iterations, the iteration can be stopped after the second decoder 330 ends the decoding, and the second decoder 330 outputs a second LLR Λout,2(i)=Λμ+E1(i)+Prior1(i).
In addition, the iteration can be stopped after the first decoder 310 ends the decoding, and the first decoder 310 outputs a first Λout,1(i)=Λμ+E1(i)+Prior1(i−1).
In wireless communication systems, a signal power can be adjusted by a power control mechanism, and each code block has a different channel noise power. The Log-MAX decoding procedure depends on the channel characteristics for optimization, which involves a non-linear operation expressed by log(ex+ey)=max(x,y)+log(1+e−|x−y|).
The Max-Log-MAP decoding procedure is a simplified version of the Log-MAX decoding procedure, which eliminates the nonlinear item log(1+e−|x−y|). Therefore, in the Max-Log-MAP decoding procedure, the LLRs can be set directly to values to be received, i.e., Λin=yi, without performing a channel estimation, but the performance is reduced by about 0.5 dB than the Log-MAX decoding procedure. When the channel estimation is not accurate, the Log-MAX decoding performance is reduced significantly in comparison with the Max-Log-MAP decoding performance.
In U.S. Pat. No. 6,393,257 granted to Holtzman for a “Wireless communications receiver and decoder for receiving encoded transmissions, such as transmissions using turbo codes, and estimating channel conditions”, channel estimation is achieved by computing the ensemble average E[|y|] of first-order absolute values of a received signal y and the ensemble average of the square received signal y E[y2]. However, computing y2 consumes much computational capability. For example, if the received signal y has K message bits, the square E[y2] for the received signal y can be expressed by:
From this equation, it is known that yi2 is computed K times for finding E[y2], which is impractical.
In addition, an improved channel estimation method is proposed in the article “Effect of Mismatched SNR on the Performance of Log-MAP Turbo Decoder,” IEEE Trans. on Vehicular Technology, vol. 52, Issue 5, September 2003, which firstly performs the Max-Log-MAP decoding one time, then uses the hard decision based on a temporary LRR to estimate the channel signal-to-noise ration (SNR), and finally performs the Log-MAX decoding. In this case, since the Max-Log-MAP decoding is performed only one time, computing the square E[y2] for the received signal y is required in the Log-MAX decoding.
Therefore, it is desirable to provide an improved turbo decoding method system to mitigate and/or obviate the aforementioned problems.
An object of the present invention is to provide a decoding method and system for real-time wireless channel estimation, which can understand the channel condition (Â, {circumflex over (σ)}) when perform a Log-MAP decoding procedure is performed and therefore avoid the problems of incorrect channel estimation and low Log-MAX decoding performance.
In accordance with one aspect of the invention, there is provided a decoding method for real-time wireless channel estimation, which decodes a received signal with a noise. The received signal is coded by a concatenation code. The method includes the steps: (A) receiving the received signal with K message bits transmitted between a base station and corresponding stations; (B) applying a Max-Log-MAP decoding procedure to perform a certain amount of decoding on the received signal; (C) using temporary log-likelihood ratios (LLRs) to compute hard decisions of the K message bits of the received signal; (D) computing an ensemble average of the K message bits based on the hard decisions and the K message bits, and assigning the ensemble average to an estimated amplitude of the received signal; (E) computing an ensemble average of a first momentum based on absolute values of the K message bits; and (F) computing a ratio based on the ensemble average of the first momentum and the estimated amplitude of the received signal, and computing an estimated variance of the noise based on the ratio.
In accordance with another aspect of the invention, there is provided a decoding system for real-time wireless channel estimation, which decodes a received signal with a noise. The received signal is coded by a concatenation code and contains K message bits. The K message bits are grouped into systematic bits, first parity bits and second parity bits. The system includes a first decoder, an interleaver, a second decoder, a deinterleaver, a channel estimator and a controller. The first decoder receives a systematic bit log-likelihood ratio (LLR), a first parity bit LLR and a first prior information, and accordingly performs a Max-Log-MAP or Log-MAP decoding for producing a first extrinsic information and a first output LLR. The interleaver is connected to the first decoder in order to receive the systematic bit LLR and the first extrinsic information for re-arrangement to thereby produce an interleaved systematic bit LLR and a second prior information. The second decoder is connected to the interleaver in order to receive the interleaved systematic bit LLR, a second parity bit LLR and the second prior information, and accordingly performs the Max-Log-MAP or Log-MAP decoding for producing a second extrinsic information and a second output LLR. The deinterleaver is connected to the second decoder in order to receive the second extrinsic information for re-arrangement to thereby produce the first prior information. The channel estimator is connected to the first and the second decoders in order to perform a channel estimation in accordance with the received signal, the first output LLR and the second output LLR to thereby produce an estimated amplitude of the received signal and an estimated variance to the first decode and the second decoder. The controller is connected to the channel estimator, the first decoder and the second decoder in order to control the first and the second decoders to first perform a certain amount of decoding on the received signal by a Max-Log-MAP decoding procedure and then by a Log-MAP decoding procedure. The first decoder and the second decoder adjust the received signal in accordance with the estimated amplitude and variance when the Log-MAP decoding procedure is performed, and therefore produce an adjusted received signal.
The decoding system further includes a memory connected to the controller and storing a specific table. The controller is based on a code rate of the concatenation code and the K value to look up the specific table and thereby obtain the certain amount.
In addition, the first decoder and the second decoder adjust the first second extrinsic information and the second extrinsic information in accordance with the estimated amplitude and variance when the Log-MAP decoding procedure is performed, and therefore produce a scaled first extrinsic information and a scaled second extrinsic information respectively.
The adjusted received signal is obtained by dividing the received signal by
where σ2 indicates the estimated variance and  indicates the estimated amplitude of the received signal.
The scaled first extrinsic information is obtained by dividing the first extrinsic information by
where σ2 indicates the estimated variance and  indicates the estimated amplitude of the received signal.
The scaled second extrinsic information is obtained by dividing the second extrinsic information by
where σ2 indicates the estimated variance and  indicates the estimated amplitude of the received signal.
The first decoder is a soft-on-soft-out decoder.
The second decoder is a soft-on-soft-out decoder.
The concatenation code is a turbo code.
Other objects, advantages, and novel features of the invention will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.
yi=GaGc√{square root over (Es)}xi+Gan=Axi+n′,
where the amplitude A=GaGc√{square root over (Es)}, and the AWGN noise n′ is Gaussian distribution with zero mean and equivalent variance σ2, where σ2=Ga2Gc2. Therefore, the effective SNR is given by:
and an effective noise variance σ2 is defined by:
Further, an input log-likelihood ratio (LLR) can be expressed by the following equation:
The system 440 includes a first decoder 510, an interleaver 520, a second decoder 530, a deinterleaver 540, a channel estimator 550, a controller 560 and a memory 570.
At the beginning of the decoding, the system 440 initializes an index to be 1 and the Prior1(i) to be 0, and sets s as a predetermined number of decoding.
The first decoder 510 is a soft-input-soft-output (SISO) decoder to receive a systematic bit log-likelihood ratio (LLR) Λμ, a first parity bit LLR Λp and a first prior information Prior1(i), and accordingly performs a Max-Log-MAP decoding. If the Max-Log-MAP decoding is performed, the first decoder 510 produces a first extrinsic information E1(1) and a first output LLR Λout,1(1).
The interleaver 520 is connected to the first decoder 510 in order to receive the first extrinsic information (E1(1)) and the systematic bit LLR Λμ for re-arrangement to thereby produce a second prior information Prior2(1) and an interleaved systematic bit LLR Λμπ.
The second decoder 530 is a soft-input-soft-output decoder connected to the interleaver 520 in order to receive the interleaved systematic bit LLR Λμπ, a second parity bit LLR Λq and the second prior information Prior2(1), and accordingly performs the Max-Log-MAP decoding. If the Max-Log-MAP decoding is performed, the second decoder 530 produces a second extrinsic information E2(1) and a second output LLR Λout,2(1).
The deinterleaver 540 is connected to the second decoder 530 in order to receive the second extrinsic information (E2(1)) for re-arrangement to thereby produce the first prior information Prior1(2). At this moment, the system 440 completes the first iteration of decoding and increases the index i with 1 to perform the second iteration of decoding.
The first stage decoding is performed with s iterations of iterative decoding. When the index i is increased to be equal to the predetermined decoding number s, the system 440 temporarily suspends the decoding and sends the LLRs (Λout,1(s), and Λout,2(s)) to the channel estimator 550 for channel estimation (Â and {circumflex over (σ)}).
The channel estimator 550 is connected to the first and the second decoders 510 and 530 in order to perform a channel estimation in accordance with the received signal, the first output LLR and the second output LLR to thereby produce estimated amplitude  and variance {circumflex over (σ)} of the received signal that are subsequently output to the first decode 510 and the second decoder 530.
The controller 560 is connected to the channel estimator 550, the first decoder 510 and the second decoder 530 in order to control the first and the second decoders 510 and 530 to perform a certain amount of decoding on the received signal by a Max-Log-MAP decoding procedure. Accordingly, the first extrinsic information and the first output LLR produced by the first decoder 510 are denoted by E1(s) and Λout,1(s) respectively. The second extrinsic information and the second output LLR produced by the second decoder 530 are denoted by E2(s) and Λout,2(s) respectively.
The controller 560 then controls the first decoder 510 and the second decoder 530 to use a Log-MAP decoding procedure in decoding. In this case, the controller 560 is based on a message length and a code rate to predetermine when the decoding procedure is changed from the Max-Log-MAP decoding procedure to the Log-MAP decoding procedure. Accordingly, the first extrinsic information and the first output LLR produced by the first decoder 510 are denoted by E1(i) and Λout,1(i) respectively. The second extrinsic information and the second output LLR produced by the second decoder 530 are denoted by E2(i) and Λout,2(i) respectively.
The memory 570 connected to the controller 560 stores a specific table. The controller 560 is based on the code rate of the concatenation code and the K value to look up the table and obtain the certain amount.
When the first decoder 510 and the second decoder 530 perform the Max-Log-MAP decoding procedure, there is no need to adjust the received signal in accordance with the estimated amplitude and variance A and a because of no need to understand the channel conditions. When the first decoder 510 and the second decoder 530 perform the Log-MAP decoding procedure, there is a need to adjust the received signal in accordance with the estimated amplitude and variance  and {circumflex over (σ)} because understanding the channel conditions is necessary, thereby producing an adjusted received signal. When the first decoder 510 and the second decoder 530 depends on the adjusted received signal to perform the Log-MAP decoding procedure, the first extrinsic information E1(i) produced by the first decoder 510 and the second extrinsic information E2(i) produced by the second decoder 530 are also adjusted in accordance with the estimated amplitude and variance  and {circumflex over (σ)} to further produce a scaled first extrinsic information and a scaled second extrinsic information.
Step (B) performs a certain amount of decoding on the received signal y by the Max-Log-MAP decoding procedure. The certain amount is obtained by looking up a specific table based on the code rate of the concatenation code and the K value.
Step (C) uses the temporary LLR of each message bit of the received signal to compute the hard decision of each message bit of the received signal. Since step (B) performs the certain amount of Max-Log-MAP decoding procedure, the temporary LLR of i-th message bit is denoted by Λi(s). The hard decision ûi(s) of the i-th message bit in step (C) can be expressed by
ûi(s)=0, if Λi(s)≧0; and
ûi(s)=1, if Λi(s)<0,
where Λi(s) indicates the temporary LLR.
Step (D) depends on the K message bits and the hard decision ûi(s) of each message bit to compute an ensemble average of the K message bits. The ensemble average of the K message bits is regarded as an estimated amplitude  of the received signal. In this case, the estimated amplitude  of the received signal in step (D) is expressed by:
where ûi(s) indicates a hard decision of i-th message bit, and yu,i indicates the i-th message bit.
In this embodiment, the entire K message bits are used in step (D). However, in other embodiments, the partial message bits can be used in step (D). For example, the partial message bits
are used to compute the estimated amplitude Â. The partial message bits can be any message bits or highest reliable values selected from the K message bits. Namely, if the partial message bits are used in step (D), the estimated amplitude  of the received signal is expressed by:
where K′ can be
In step (E), the ensemble average of a first momentum is computed in accordance with an absolute of the K message bits. The ensemble average W of the first momentum is expressed by:
where |yu,i| is an absolute of i-th message bit. If the partial message bits are used in step (D), the ensemble average W of the first momentum is expressed by
Step (F) depends on the ensemble average W of the first momentum and the estimated amplitude  of the received signal to compute a ratio a, and computes the estimated variance {circumflex over (σ)} of the noise in accordance with the ratio a. The ratio a in step (F) is expressed by:
where W indicates the ensemble of the first momentum, and  indicates the estimated amplitude of the received signal. The estimated variance {circumflex over (σ)} is computed by a polynomial, for example,
{circumflex over (σ)}2=−1.8833×a2+8.6671×a−6.5398, (4)
where a is the ratio. In this embodiment, a second-order polynomial is used. However, in other embodiments, a polynomial of different order or a polynomial with coefficients approximated to those in equation (4) can be used.
When the estimated variance {circumflex over (σ)} of the noise is obtained in step (F), the channel quality is determined accordingly. Namely, the invention can be applied in a wireless channel estimation. Therefore, the invention has a considerably reduced computational complexity in comparison with the U.S. Pat. No. 6,393,257.
Step (G) depends on the estimated variance {circumflex over (σ)} of the noise and the estimated amplitude  of the received signal to adjust the received signal to thereby obtain an adjusted received signal y′. Subsequently, the Log-MAP decoding procedure is used to decode the adjusted received signal.
In step (G), the adjusted received signal is obtained by dividing the received signal or the last adjusted received signal y′ by
where σ2 indicates the variance, and  indicates the amplitude of the received signal.
As shown in
In view of forgoing, it is known that, in the invention, when the first and second decoders 510 and 530 perform the Log-MAP decoding procedure, the channel conditions  and {circumflex over (σ)} are known, and accordingly it is able to avoid that the Log-MAX decoding has a poor performance in comparison with the Max-Log-MAX decoding when the inaccurate channel estimation occurs.
Although the present invention has been explained in relation to its preferred embodiment, it is to be understood that many other possible modifications and variations can be made without departing from the spirit and scope of the invention as hereinafter claimed.
Number | Date | Country | Kind |
---|---|---|---|
95135411 A | Sep 2006 | TW | national |
Number | Name | Date | Kind |
---|---|---|---|
6393257 | Holtzman | May 2002 | B1 |
Number | Date | Country |
---|---|---|
WO 2005062473 | Jul 2005 | WO |
Number | Date | Country | |
---|---|---|---|
20080075204 A1 | Mar 2008 | US |