• 검색 결과가 없습니다.

Complexity-Reduced Algorithms for LDPC Decoder for DVB-S2 Systems

N/A
N/A
Protected

Academic year: 2022

Share "Complexity-Reduced Algorithms for LDPC Decoder for DVB-S2 Systems"

Copied!
4
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

ETRI Journal, Volume 27, Number 5, October 2005 Eun A Choi et al. 639

ABSTRACT⎯This paper proposes two kinds of complexity- reduced algorithms for a low density parity check (LDPC) decoder. First, sequential decoding using a partial group is proposed. It has the same hardware complexity and requires a fewer number of iterations with little performance loss. The amount of performance loss can be determined by the designer, based on a tradeoff with the desired reduction in complexity.

Second, an early detection method for reducing the computational complexity is proposed. Using a confidence criterion, some bit nodes and check node edges are detected early on during decoding. Once the edges are detected, no further iteration is required; thus early detection reduces the computational complexity.

Keywords⎯LDPC codes, low complexity, early detect algorithm.

I. Introduction

The high definition television (HDTV) satellite standard, known as the Digital Video Broadcasting (DVB-S2) transmission system, employs a low density parity check (LDPC) coding technique as a channel coding scheme. Unlike turbo codes, LDPC codes have an easily parallelizable decoding algorithm, which consists of simple operations such as addition, comparison, and creation of a look-up table.

Moreover, the degree of parallelism is ‘adjustable’, which makes it easy to trade-off both throughput and complexity.

However, the DVB-S2 system requires a large block size and large number of iterations to near Shannon’s limit. The

Manuscript received Mar. 23, 2005; revised June 19, 2005.

Eun A Choi (phone: +82 42 860 6655, email: eachoi@etri.re.kr) and Deock-Gil Oh (email:

dgoh@etri.re.kr) are with Digital Broadcasting Research Division, ETRI, Daejeon, Korea.

Ji-Won Jung (email: jwjung@hanara.kmaritime.ac.kr) is with the Department of Radio and Science Engineering, Korea Maritime University, Busan, Korea.

Nae-Soo Kim (email: nskim@etri.re.kr) is with Telematics/USN Research Division, ETRI, Daejeon, Korea.

standard recommends that the LDPC coded block size be 64800, and the number of iteration be about 70 in the case of a half-coding rate. A large number of iterations for a large block size gives rise to a large number of computation operations, mass power consumption, and decoding delay. It is necessary to reduce the iteration numbers and computation operations without performance degradation in order to implement an LDPC decoder with low power consumption. This paper proposes two kinds of complexity-reduced algorithms. First, sequential decoding with a partial group is proposed. It has the same hardware complexity, and a fewer number of iterations is required at the same level of performance in comparison with a conventional decoder algorithm. The computation of bit node weights and check node weights can seem to be as an approximate projection based on the parity-check matrix; the grouping simply says that this projection can be done in several steps to obtain an approximate answer. Secondly, an early detection method for reducing the computational complexity is proposed. Using a confidence criterion, some bit nodes and check node edges are detected early on during decoding. In this way, because early detected edges are not computed from following iterations, the computational complexity of further processing is reduced.

II. LDPC Decoding Algorithm

The purpose of the decoder is to determine the transmitted values of the bits. Bit nodes and check nodes communicate with each other to accomplish this goal. The decoding starts by assigning the channel values to the outgoing edges, from bit nodes to check nodes. Upon receiving them, the check nodes make use of the parity check equations to update the bit node information and send it back. Each bit node then performs a

Complexity-Reduced Algorithms for LDPC Decoder for DVB-S2 Systems

Eun A Choi, Ji-Won Jung, Nae-Soo Kim, and Deock-Gil Oh

(2)

640 Eun A Choi et al. ETRI Journal, Volume 27, Number 5, October 2005

soft majority vote among the information reaching him. At this point, if the hard decisions on the bits satisfy all of the parity check equations, it indicates that a valid codeword has been found and the process stops. Otherwise, the bit nodes go on sending the results of their soft majority votes to the check nodes. In the following sections, we describe the decoding algorithm in detail. The number of edges adjacent to a node is called the degree of that node.

1. Initialization

The decoding starts by assigning the channel transmit values to the outgoing edges, from bit nodes to check nodes. The initial channel value is shown in (1).

1 , , 1 , 0 2 ),

( = 2 = −

= L r L n N

un c n c

σ , (1)

where, N is the codeword size and σ is Gaussian noise variance.

2. Check Node Update

Let us denote the incoming messages to the check node k from its dc adjacent bit nodes by vn1k,vn2k, … , vndck,

Fig. 1. Message update at (a) check nodes and (b) bit nodes.

Check node k n1

wk

k

vn1 n2

wk

k

vn2 n3

wk

k

vn3

k ndc

v

ndc

wk

Bit node n

k1

vn

n

wk 1

k2

vn n

wk2 n

wk3

k3

vn n

kdv

w

kdv

vn . .

. .

. . . (a)

(b)

as shown in Fig. 1(a). Our aim is to compute the outgoing messages from check node k back to dc adjacent bit nodes. Let us denote these messages by wkn1, wkn2,…, wkndc. Each outgoing message from check node k to its adjacent bit nodes is computed as

( )

).

1 ( log ) 1

( log ) , (

and ), , ( )

, min(

) sgn(

) sgn(

) , (

, ,..., ,

,...,

, 2 1 1

1

b a b

a g

g k n k n k n k n k n n k

e e

b a LUT

b a LUT b a b

a b

a g

v v

v v

v g

w i i i dc

+

+

− +

=

+

×

×

=

= +

(2)

In practice, the LUTg(.) function is implemented using a small look-up table.

3. Bit Node Update

Let us denote the incoming messages to bit node n from its dv adjacent check nodes by wk1n, wk2n,..., wkdvn, as shown in Fig. 1(b). Our aim is to compute the outgoing messages from bit node n back to dv adjacent check nodes. Let us denote these messages by vnk1, vnk2,..., vnkdv. They are computed as

=

= + dv

j i j

n k n

k

n i u w j

v

1 ,

. (3)

Intuitively, this is a soft majority vote on the value of bit n, using all relevant information except wkjn.

III. Low Complexity Algorithms

1. Sequential Decoding Algorithm with Partial Group In this paper, we propose a new decoding structure. First, we divide check nodes by Sm

(

m=1,2,...,p

)

groups. The groups are in general randomly chosen so as to minimize the cycle-4 occurrence. Next, we decode group by group in a serial fashion.

For example, Fig. 2 shows the decoding procedure in the case when p equals 2. Check node and bit node probabilities are calculated at the first group, as shown in Fig. 2(a). When the decoding process of the first group has been completed, the second group initiates the decoding process with the calculated bit node probability from the first group, as shown in Fig. 2(b).

The proposed algorithm changes only the decoding order without any performance degradation.

If p equals one, this result is the same as a conventional decoder. The resultant extrinsic information of the first decoder is delivered to the second decoder.

The proposed algorithm is based on the same theory. Figure 3 shows the simulation results with codeword size N=64800

(3)

ETRI Journal, Volume 27, Number 5, October 2005 Eun A Choi et al. 641 Fig. 2. The bit and check node update procedure (p=2) at (a) the

first group and (b) second group.

Group 1

Group 2 Bit node

Check node

Bit node

Check node

(a) (b)

Fig. 3. Bit error rate comparison between conventional LDPC decoder and sequential LDPC decoder (p=2).

10-6 10-5 10-4 10-3 10-2 10-1 100

BER

Eb/N0 (dB)

0 1 2 3 4 5 6 7 8 9 10

Uncoded QPSK

Conventional decoder (Nr=70) Sequential decoder (Nr=35)

and information size K=32400 (number of check node, M=N–

K), comparing the bit error rate performances of the conventional and sequential LDPC decoders. With a smaller number of iterations (Nr), the sequential decoding scheme with p = 2 (Nr = 35) shows the performance is almost the same as that of a conventional scheme with p = 1 (Nr = 70).

2. Early Detection Algorithm

Another approach is early detection for reducing the computational complexity. The early detection method is based on the observation that bit nodes and check nodes with a high log-likelihood value can be considered reliable. So, detected bit nodes and check nodes are negligible for the next iteration.

This means that we don’t need to calculate the bit node and check node updates for a detected node from following iterations. Therefore, computational complexity of the next iterations is reduced. For early detection for the LDPC decoder,

the proceedings are as follows:

) 3 ( do else

1 ] [ tBit EarlyDetec then

, updates node

Bit 3.

Step

) 2 ( do else

1 ] [ tCheck EarlyDetec then

, if

updates node

Check 2.

Step

0 ] [ tBit EarlyDetec

0 ] [ tCheck EarlyDetec

tion Initializa 1.

Step

=

=

=

=

i b

k n

i c

n k

i i

k n T

v

n k T

w

k n

n k

i i

If EarlyDetectCheck[⋅] or EarlyDetectBit[⋅] are equal to one, we don’t need to calculate the bit node and check node updates, we just deliver the previous values to the bit nodes or check nodes. Therefore, it is very important to choose the early detection threshold: Tb for bit nodes and Tc for check nodes.

Fixing on Tc=10, we evaluated the performance for various values of Tb. As shown in Fig. 4, the performance of the early detection method with Tb=18 is the same as that of a conventional scheme.

Fig. 4. Bit error rate performance for different Tb (N = 64800, K=32400, dc = 7, dv = 13).

0.65 0.7 0.75 0.8 0.85 0.9

10-7 10-6 10-5 10-4 10-3 10-2 10-1

BER

Eb/N0 (dB)

Early detection (Tb=10) Early detection (Tb=15) Early detection (Tb=18) Conventional scheme (Tb=)

The required number of operations associated with the conventional and early detection algorithms are summarized in Table 1, where dc*denotes the average number of early detected edges for each check node and N* denotes the average number of early detected bit nodes. The decoding complexity of an LDPC decoder is evaluated based on (2) and (3).

Fixing on the values of Tb =18 and Tc =10, Table 2 shows the simulated d*c and N* from Nr iterations at Eb/N0=1 (dB) in the

(4)

642 Eun A Choi et al. ETRI Journal, Volume 27, Number 5, October 2005

environment of N=64800, K=32400, M=32400, and dc=7, dv=13. As shown in Table 2, the computational complexity of the early detected method is about 50% off in the case of the check node update, and 99% off in the case of the check node update compared to the standard LDPC decoder scheme.

Table 1. Decoding complexities of conventional and early detection methods.

Conventional decoder Early detection method Check nodes (g(a,b)) (M×(dc1))×Nr (M×(dcdc*1))×Nr Bit nodes (additions) (N×(dv1))×Nr ((NN*)×dv)×Nr

Table 2. The number of early detected edges.

Nr

10 20 30 40 50 60

c*

d 0.387 1.484 2.619 3.29 3.6 3.8

N* 491 19048 62372 64334 64335 64335

IV. Conclusions

This paper proposes two kinds of complexity-reduced algorithms for a LDPC decoder. First, sequential decoding with a partial group is proposed. We know that the required number of iterations is almost halved compared with a conventional algorithm maintaining the same computational complexity, and is without performance degradation. Secondly, an early detection method for reducing the computational complexity is proposed. Through Tables 1 and 2, computational complexity of the early-detected method is about 50% off in the case of a check node update, and 99% off in the case of a check node update compared to a conventional scheme. Based on these results, we conclude that the proposed algorithm provides an attractive solution to the implementation of iterative decoding of LDPC codes with large block size and a large number of iterations.

References

[1] R. G. Gallager, “Low-Density Parity-Check Codes,” IRE Trans.

Information Theory, vol.8, 1962, pp.21-28.

[2] D. J. C. Mackay and R. M. Neal, “Near Shannon Limit Performance of Low-Density Parity-Check Codes,” Electron.

Letter, vol.32, Aug.1996, pp. 1645-1646.

[3] M. Sipser and D. A. Spielman, “Expander Codes,” IEEE Trans.

Information Theory, vol.42, Aug. 1996, pp.1720-1722.

[4] T. Richardson and R. Urbanke, “Efficient Encoding of Low-

Density Parity Check Codes,” IEEE Trans. Information Theory, vol. 47, Feb. 2001, pp. 638-656.

[5] J. W. Bond, S. Hui, and H. Schmidt, “Constructing Low-Density Parity-Check Codes,” Proc. EUROCOMM 2000, 2000, pp.260-262.

[6] David J. C. Mavkay “Good Error-Correcting Codes Based on Very Sparse Matrics” IEEE Trans. Information Theory, vol. 45, no. 2, Mar. 1999.

참조

관련 문서

The index is calculated with the latest 5-year auction data of 400 selected Classic, Modern, and Contemporary Chinese painting artists from major auction houses..

• 이명의 치료에 대한 매커니즘과 디지털 음향 기술에 대한 상업적으로의 급속한 발전으로 인해 치료 옵션은 증가했 지만, 선택 가이드 라인은 거의 없음.. •

노인 만성폐쇄성폐질환 환자들은 인플루엔자에 대한 합 병증의 위험이 높아서 매년 인플루엔자 예방접종을 받아야 한다. 폐렴구균 예방접종은 논란이 되기는 하지만 평생 1회

노인에서의 수면 무호흡으로 인한 장기적 합병증이 중년 환자와 비교하여 차이가 있는지 여부는, 노인의 수면 무호 흡을 하나의 특정질환으로 간주할 것인지 아니면 노인의

혼합제를 사용하여도 천식 조 절이 되지 않는 경우 경구 약제인 류코트리엔 조절제 그리 고 (또는) 테오필린을 추가하여 사용한다. 류코트리엔은 효 과 면에서는

12) Maestu I, Gómez-Aldaraví L, Torregrosa MD, Camps C, Llorca C, Bosch C, Gómez J, Giner V, Oltra A, Albert A. Gemcitabine and low dose carboplatin in the treatment of

Levi’s ® jeans were work pants.. Male workers wore them

클라우드 매니지드 DDI는 기업이 클라우드를 통해 모든 위치의 통합 DDI 서비스를 중앙 집중식으로 관리하여 지사에 향상된 성능을 제공하고, 클라우드 기반 애플리케이션에 대 한 보다