• 沒有找到結果。

High-Speed Decoding of the Binary Golay Code

N/A
N/A
Protected

Academic year: 2021

Share "High-Speed Decoding of the Binary Golay Code"

Copied!
4
0
0

加載中.... (立即查看全文)

全文

(1)

Journal of Applied Research and Technology 331  

High-Speed Decoding of the Binary Golay Code

H. P. Lee*1, C. H. Chang1, S. I. Chu2

1 Department of Computer Science and Information Engineering, Fortune Institute of Technology,

Kaohsiung 83160, Taiwan *[email protected]

2 Department of Electronic Engineering,

National Kaohsiung University of Applied Sciences, Kaohsiung 807, Taiwan

ABSTRACT

Recently, some table-lookup decoding algorithms (TLDAs) have been used to correct the binary Golay code. This paper proposes an efficient high-speed TLDA called message-syndrome decoding algorithm (MSDA) by using the message syndrome to correct the binary systematic Golay code. The proposed MSDA is based on the novel message-syndrome lookup table (MSLT). The MSLT merely consists of 12 candidate syndromes and its memory size is significantly smaller than other existing lookup tables. Computer software simulation results show that the decoding speed of the proposed MSDA is superior to other proposed TLDAs.

Keywords: Golay code, weight, syndrome, error pattern  

 

1. Introduction

The well-known binary Golay code, also called the binary (23, 12, 7) quadratic residue (QR) code [2], was first discovered by Golay [1] in 1949. It is a very useful perfect linear error-correcting code; particularly, it has been used in the past decades for a variety of applications involving a parity bit being added to each word to yield a half-rate code called the binary (24, 12, 8) extended Golay code. One of its most interesting applications is the provision of error control in the Voyager missions [2]. The Golay code can allow the correction of up to

( 1)/2

 d

t =

(71)/2

3 errors, where

 

x

denotes the greatest integer less than or equal to x, t is the error-correcting capability, and d is the minimum Hamming distance of the code. In the past few decades, several decoding techniques have been developed to decode the binary Golay codes, for example, the famous algebraic decoding algorithm (ADA) developed by Elia [3], the notable shift-search algorithm proposed by Reed et al. [4] after that, and the inverse-free Berlekamp–Massey algorithm used to obtain the error-locator polynomial by Chen et al. [5]. The above is some representative literature on ADAs used to correct Golay codes.

Recently, the TLDAs given in [6-9] have acquired a prominent role in error-correcting decoding. A TLDA with a refined lookup table (RLT) has been proposed by Lin et al. [8]; the RLT only needs 168 bytes memory size. The memory size of the RLT is the smallest memory size required to correct the Golay code until now. In general, the TLDA makes considerably faster decoding speeds possible for the cyclic codes, in comparison with the ADA. However, the TLDA requires an extra memory space in the decoder chip or software and it increases the decoding cost rapidly when the code length is large. Although the ADA does not need any lookup table, it requires a large number of complicated computations in the finite field. These complicated computations will degrade the decoding performance and lead to a serious decoding delay as the code length increases [10]. Chen et al. [7] proposed the fast lookup table decoding algorithm (FLTDA) with a lookup table of 1.35K bytes by using the shift-search algorithm [4] to decode the Golay code. The famous syndrome decoding algorithm (SDA) with a reduced-size lookup table (RSLT) given in [2, p119] requires 89 syndromes and their corresponding error patterns, whereas the RSLT requires 445 bytes of memory.

(2)

High‐Speed Decoding of the Binary Golay Code, H. P. Lee et al. / 331‐337

Vol. 11, June 2013 

332 

Lin et al. [8] proposed the syndrome-weight decoding algorithm (SWDA) with RLT wh

ich

needs

168 bytes of memory, and the simulation result shows that the decoding speed is approximately 9.7 times faster than the improved Elia’s decoding algorithm (EDA).

In this paper, an efficient high-speed MSDA with a MSLT is proposed to decode the binary systematic Golay code. The novel MSLT consists only of 12 candidate syndromes which have one error in the message part of the received vector, and it merely requires 24 bytes of memory. Software simulation results show that the average decoding speed is the fastest among the TLDAs as mentioned above. In the four-error soft-decision decoder in [11], the improved EDA is the role of the hard-decision decoder. We substituted the proposed MSDA for the improved EDA in the four-error soft-decision decoder. Apparently, the decoding speed of the soft-decision decoder was faster than before. The remainder of this paper is organized as follows: The background of the binary systematic Golay code is briefly reviewed in Section 2. Some related TLDAs and related theorems are briefly introduced in Section 3. The proposed MSDA is presented in Section 4. Computer simulation results are given in Section 5. Finally, this paper concludes with a brief summary in Section 6.

2. Background of the binary systematic Golay code

The binary (23, 12, 7) Golay code can be defined as a linear cyclic code or QR code [2]. For the binary Golay code over finite field GF(211), its quadratic residue set is given by

Q23 = {i | i ≡ j2 mod 23 for 1 ≤ j ≤ 22}

= {1, 2, 3, 4, 6, 8, 9, 12, 13, 16, 18}. (1) The generator polynomial g(x) of the binary Golay code is defined by , 1 ) ( ) ( 5 6 7 9 1 1 23         

x x x x x x β x x g i Q i (2)

where  is a primitive 23rd root of unity in GF(211). Let the codeword polynomial 

1

0 ) ( ni i ix C x C ,

where Ci  GF(2) for 0 ≤ i ≤ 22, and the message

polynomial

1 0 )

(x ki mixi

m , where k = 12 is the message length and mi  GF(2) for 0 ≤ i ≤ 11.

C(x) is a multiple of g(x), namely, C(x) = m(x)g(x).

Also, let the product m(x)x11 divide by g(x), then one has m(x)x11 = q(x)g(x) + d(x). Multiplying both sides of last expression by x12 and using x23 = 1, one yields d(x)x12 + m(x) = (q(x)x12)g(x). The term (d(x)x12 + m(x)), which is a multiple of g(x), is a systematic codeword given by

c(x) = d(x)x12 + m(x) = p(x) + m(x), (3)

where 

22 12 )

(x i pixi

p denotes the parity-check polynomial [12] of a codeword and pi  GF(2) for

12 ≤ i ≤ 22.

The binary systematic Golay code is practically applied in the standard of the communication system for automatic link establishment (ALE) by the United States Department of Defense [13]. Now, let a 12-bit message be encoded into a 23-bit systematic codeword and be transmitted through a noisy channel to obtain a received word of the form r(x) = c(x) + e(x).

  22 0 )

(x i eixi

e is the error pattern polynomial, where ei  GF(2) for 0 ≤ i ≤ 22. The syndromes

of the code are defined by

      22 0 ( ) ) ( ) ( ) ( ) ( j j i j i i i i i e e e c r s      , (4) where i  Q23.

To simplify the polynomial expressions above, the message, codeword, error pattern, received word, and syndrome polynomials can be expressed as the binary vector forms m = (m11 ... m1 m0), c = (c22 ... c1 c0), e = (e22 ... e1 e0), r =

c + e = (r22 ... r1 r0), and s = (s10 ... s1 s0), respectively. For the binary systematic Golay code, it follows from [2, p85] that the systematic generator matrix G can be expressed as follows:

(3)

High‐Speed Decoding of the Binary Golay Code, H. P. Lee et al. / 331‐337 Journal of Applied Research and Technology 333

 

23 12 12 23 12 12 1 0 1 0 0 1 0 0 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 0 0 1 1 1 1 0 1 1 0 1 0 0 0 0 1 1 1 1 0 1 1 0 1 0 0 0 0 1 1 1 1 0 1 1 0 1 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 1 0 0 1 1 1 1 0 1 1 1 0 0 0 1 1 0 0 1 1 0 1 1 1 0 0 0 1 1 1 0 0 1 0 0 1 1 1 1 1 0 0 1 0 0 1 0 0 1 1 1 1 1                                           PI I G , (5)

where P and I12 denote the 1211 matrix and the 1212 identity matrix, respectively. The systematic vector form of the codeword can be obtained by

) (p22p13p12 m11m1m0 mG c . (6)

The parity-check polynomial h(x) = x12 + x10 + x7 +

x4 + x3 + x2 + x + 1 is a factor of x23 – 1. The 1123 parity-check matrix H can be expressed as follows:

 

11 1123

T

P I

H , (7)

where PT is a 1112 transpose matrix of P and I11 is a 1111 identity matrix.

The HT denotes the 23  11 transpose matrix of H;

that is, 11 23 11       P I

HT . The vector form of the

syndrome can be defined by

s = rHT. (8)

The following lemma given in [14] shows that the mapping between the syndromes and error patterns under the error-correcting capability is one-to-one.

Lemma 1. The mapping between the syndromes

of a code and the corresponding error patterns of weight ≤ t is one-to-one.

3. Related work and theorems

In this section, some related TLDAs and theorems are briefly introduced in order to develop the proposed MSDA. For the TLDA, the following definition, theorems and corollary given in [9] are needed.

Definition 1. Let the Hamming norm or weight of a

binary vector a = (an-1 ... a1 a0) be designated by

w(a). The Hamming distance between two binary

vectors a and b is defined by d(a, b) = w(a + b).

Theorem 1. Let a = (an-1 ... a1 a0) and b = (bn-1 ...

b1 b0) be two binary vectors, then

w(a + b) = w(a) + w(b) –2

ni1aibi . (9)

Corollary 1. Let a and b, defined in Definition 1,

be two binary vectors. If aibi = 0 for 1 ≤ i ≤ n, then

w(a + b) = w(a) + w(b). (10)

Theorem 2. For the binary systematic (n, k, d) QR

codes, let us assume that there are v errors in the received word, where 1 ≤ v ≤ t. All v errors occur in the n – k parity-check bits if and only if the weight of syndrome w(s) = v.

As mentioned above, the error-correcting capability of the binary Golay code is t =3. The full lookup table (FLT) in the conventional table lookup decoding algorithm (CTLDA) requires

3i1

 

23i = 2,047 syndromes and their corresponding error patterns by Lemma 1. Each syndrome and error pattern needs 2 bytes and 3 bytes, respectively, to store in the FLT. Thus, the total memory size needed for the FLT is (2047  (2 + 3)) = 10,235 bytes. However, such a large memory is less efficient in practice.

Recently, some useful TLDAs have been presented in the literature to reduce the memory size of the FLT. The LTDA [7] used the shift-search method [4] to reduce the memory size of the FLT and the binary-search method to reduce the search time in the FLT. The shift-search method deletes all v = t error patterns and keeps 1 ≤ v ≤ t – 1 error patterns.

(4)

High‐Speed Decoding of the Binary Golay Code, H. P. Lee et al. / 331‐337

Journal of Applied Research and Technology 337 difference, Property 1, and Property 2. The MSLT

of the MSDA merely requires a very small memory size of 24 bytes. These facts lead to a substantial improvement in decoding the binary systematic Golay code. Simulation results show that, following the new decoding strategies, the proposed MSDA achieves the best efficiency. Hence, it is naturally suitable and proper for DSP or embedded system software implementation.

Figure 1. Decoding Time of Two Hard-Decision Decoders at SNR of 0~6 dB.

References

[1] M. Golay, “Notes on digital coding,” Proc. IRE, vol. 37, p. 657, 1949.

[2] S. Wicker, "Error Control Systems for Digital Communication and Storage”, Prentice Hall: Upper Saddle River, NJ, 1995.

[3] M. Elia, “Algebraic decoding of the (23, 12, 7) Golay code,” IEEE Trans Inf Theory, vol. 33, no. 1, pp. 150-151, 1987.

[4] I. S. Reed et al., “Decoding the (24, 12, 8) Golay code,” IEE P-COMPUT DIG T, vol. 137, no. 3, pp. 202-206, 1990. [5] Y. H. Chen et al., Algebraic decoding of quadratic residue codes using Berlekamp-Massey algorithm, J Inf Sci Eng, vol. 23, no. 1, 2007, pp. 127-145.

[6] H. Chang et al., “A weight method of decoding the (23, 12, 7) Golay code Using Reduced Lookup Table,” 2008 International Conference On Communication, Circuits and Systems (ICCCAS 2008), Xiamen, China, 2008, pp. 1-5.

[7] Y. H. Chen et al., “Efficient decoding of systematic (23, 12, 7) and (41, 21, 9) quadratic residue codes,” J Inf Sci Eng, vol. 26, no. 5, pp. 1831-1843, 2010.

[8] T. C. Lin et al., “On the decoding of the (24, 12, 8) Golay code,” Inf Sci, vol. 180, no. 23, pp. 4729-4736, 2010. [9] T. C. Lin et al., “High speed decoding of the binary (47, 24, 11) quadratic residue code,” Inf Sci, vol. 180, no. 20, pp. 4060-4068, 2010.

[10] S. Lin and E. J. Jr Weldon, “Long BCH codes are bad,” Inf Contr, vol. 11, no. 4, pp. 445-451, 1967.

[11] S. I. Chu et al., “Fast decoding of the (23, 12, 7) Golay code with four-error-correcting capability,” Eur Trans Telecomm, vol, 22, no. 7, pp. 388-395, 2011. [12] C. A. Vázquez-Fernández and G. Vega-Hernández, “On the Weight Distribution of the Dual of some Cyclic Codes with Two Non Conjugated Zeros,” J Appl Res Technol, vol.9, no.1, pp. 36-48, 2011.

[13] MIL-STD-188/141B. Department of Defense Interface Standard: Interoperability and Performance Standards for Medium and High Frequency Radio Systems. http://www.everyspec.com/MIL-STD/MIL-STD+(0100+-+0299)/MIL_STD_188_141B_1703. [14] I. S Reed et al., “The algebraic decoding of the (41, 21, 9) quadratic residue code,” IEEE Trans Inf Theory, vol. 38, no. 3, pp. 974-986, 1992.

 

數據

Figure 1. Decoding Time of Two Hard-Decision  Decoders at SNR of 0~6 dB.

參考文獻

相關文件

By correcting for the speed of individual test takers, it is possible to reveal systematic differences between the items in a test, which were modeled by item discrimination and

H..  In contrast to the two traditional mechanisms which all involve evanescent waves, this mechanism employs propagating waves.  This mechanism features high transmission and

According to the Heisenberg uncertainty principle, if the observed region has size L, an estimate of an individual Fourier mode with wavevector q will be a weighted average of

A Boolean function described by an algebraic expression consists of binary variables, the constant 0 and 1, and the logic operation symbols.. For a given value of the binary

One, the response speed of stock return for the companies with high revenue growth rate is leading to the response speed of stock return the companies with

Binding Warning message Binding Update message AAAO: the AAA server of the old foreign network to which the OFA belongs. AAAF: the AAA server of the new foreign network to which the

„ Indicate the type and format of information included in the message body. „ Content-Length: the length of the message

The purpose of this paper is to achieve the recognition of guide routes by the neural network, which integrates the approaches of color space conversion, image binary,