1 / 43

15.1 General Properties of Prime-Length Composite Codes

15.1 General Properties of Prime-Length Composite Codes. Let F be the binary field GF(2) and F n the vector space of all binary n -tuples. Let V i be an ( n i , k i ) binary linear code for i =1, 2, where n 1 and n 2 are relatively prime.

Download Presentation

15.1 General Properties of Prime-Length Composite Codes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 15.1 General Properties of Prime-Length Composite Codes • Let F be the binary field GF(2) and Fn the vector space of all binary n-tuples. Let Vi be an (ni, ki) binary linear code for i=1, 2, where n1 and n2 are relatively prime. • With n=n1n2, the function i, i=1, 2, defined by • i:Vi → (vi, vi, ..., vi) (15.1.1) • where viVi and is repeated n/ni times, is an injective • linear map from Vi into Fn. • Let ~Vi be the image of Vi under i. Then ~Vi is a linear subspace of Fn of dimension ki. • By combining in a bit-by-bit modulo-2 addition fashion, we get a new linear code V(2) defined by • V(2) = ~V1 + ~V2 (15.1.2)

  2. 15.1 General Properties of Prime-Length Composite Codes • This code has length n = n1n2 and dimension • k = k1 + k2 – dim(  ) (15.1.3) • Since n1 and n2 are relatively prime, it easily follows that • 1, if 1n1V1 and 1n2V2 • dim(  ) = { (15.1.4) • 0, otherwise,   • where 1ni, for i=1, 2, is the all-ones word of length ni.

  3. 15.1 General Properties of Prime-Length Composite Codes THEOREM 15.1: If Vi is an (ni, ki) binary linear code for i=1, 2, and n1 and n2 are relatively prime, then the binary linear code V(2), as defined in (15.1.2), is an (n, k) code with n = n1n2 and k = k1 + k2 - a, where a=1 if both V1 and V2 contain the all-ones word and a=0 otherwise. For case of Vi, i=1, 2, being M-sequence code, there is no all-ones codeword exists, so a=0, and the dimension of V(2) is k = k1 + k2.

  4. 15.1 General Properties of Prime-Length Composite Codes The above statements can be clarified by examining the example of Figure 15.1. With suitable initial states loaded on the memory cells and with the shift register feedback circuits connected like that shown in Figure 15.1(a) (i.e., with h1(X) = 1+X+X2 and h2(X) = 1+X+X3), the M-sequences codes V1 and V2 of periods n1 = 3 and n2= 7 will respectively be generated from their shift register circuits. The corresponding code bits of these two code sequences are modulo-2 added together during each unit of clock time and results in the prime-length composite code of period n = n1n2 = 21, as can be seen from Figure 15.1(b).

  5. 15.1 General Properties of Prime-Length Composite Codes (a) + (b) Figure 15.1: An example for generating prime-length composite code.

  6. 15.1 General Properties of Prime-Length Composite Codes Note that with all possible initial loadings on the above shift register code generator, the possible codewords number of V1 is 2k1 = (1+n1) = 4, and the possible codewords number of V2 is 2k2 = (1+n2) = 8. Moreover, none of these words is the all-ones word. Hence the possible number of codewords of the prime-length composite code V(2) is 2k1+k2 = (1+n1)(1+n2) = 32.

  7. 15.1 General Properties of Prime-Length Composite Codes The codewords of the prime-length composite code V(2) are distributed among the following four cyclic classes: 1). One cyclic class is the all-zeros word. This corresponds to the case of both V1(X) and V2(X) are zero codewords; 2). One cyclic class contains n1=3 cyclic codewords. This corresponds to the case of V1(X)≠0 and V2(X)=0; 3). One cyclic class contain n2=7 cyclic codewords. This corresponds to the case of V1(X)=0 and V2(X)≠0; 4). One cyclic class contains n = n1n2 = 21 cyclic codewords. This corresponds to the case of both V1(X) and V2(X) are nonzero codewords.

  8. 15.1 General Properties of Prime-Length Composite Codes • Theorem 15.1 can be easily extended, by a recursive application, to the case of m (ni, ki) component codes Vi, where ni’s are pairwise relatively prime, for any m > 2. • For Vi’s be M-sequence codes, the structure of maximal-length code tells us that none of the ~Vi+1 is the all-ones code, hence the dimension is deduced to • k = Smi=1ki (15.1.6)

  9. 15.1 General Properties of Prime-Length Composite Codes Figure 15.2 shows the commonly adopted generator configuration of prime-length composite code made up of m pairwise relatively prime lengths component codes. The prime-length composite code constructed with the configuration of Figure 15.2 has an equivalent generator polynomial. In the Theorem 15.2 below we discuss the case when, with respect to Equ. (15.1.2), the component codes Vi’s, i=1, 2, are cyclic.

  10. 15.1 General Properties of Prime-Length Composite Codes Figure 15.2: Configuration of prime-length composite code generator.

  11. 15.1 General Properties of Prime-Length Composite Codes Theorem 15.2: If Vi is cyclic with the generator polynomial gi(X), i=1, 2, then V(2) is cyclic with the generator polynomial g(2)(X) = GCD{g1(X)(1+Xn)/(1+Xn1), g2(X)(1+Xn)/(1+Xn2)} (15.1.7)

  12. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication The recursive application of Theorem 15.2 to the case of m component codes results in the following. Corollary 15.2: If Vi is an (ni, ki) cyclic code with the generator polynomial gi(X), i=1, 2, …, m, and (ni, nj) = 1 for i≠j, then V(m) made up of Vi’s is cyclic with the generator polynomial g(m)(X) = GCD{g1(X)(1+Xn)/(1+Xn1), g2(X)(1+Xn)/(1+Xn2), …, gm(X)(1+Xn)/(1+Xnm)} (15.1.8) where n = n1n2…nm.

  13. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Concerning the weight distribution of composite code V(2) generated by the generator polynomial g(2)(X) of Equ. (15.1.7), let us consider the following. Suppose V1(X) have its j-th coordinate be v1j, j = 0, 1, 2, …, n1-1, i.e. V1(X) = v10+ v11X +… + v1,n1-1Xn1-1 (15.1.9) or in vector form, V1 = {v10, v11, …., v1,n1-1} (15.1.10)

  14. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Similarly, suppose V2(X) have its code vector of the form V2 = {v20, v21, …., v2,n2-1} (15.1.11) Let be the n2-tuple formed by repeating element v1j by n2 times, = {v1j, v1j, …, v1j} (15.1.12) and let be the n2-tuple defined by = V2 = {v1jv20, v1jv21, …, v1jv2,n2-1} (15.1.13)

  15. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication On the basis of the nature of 1 and 2, and since n1 and n2 are relatively prime, we can conclude that the composite codeword 1(V1)2(V2) is some permutation of the n-tuple and, therefore both of them have the same weight. Now, from (15.1.13), we know that 1). If v1j = 0, the = V2 and have the weight of w2, the number of “1” in V2; 2). If v1j = 1, then = V2, the complement of V2, and have the weight of (n2- w2), the number of “0” in V2;  3). Within n=n1n2 bits, the possible number of v1j = 0 is (n1- w1) and the possible number of v1j = 1 is w1.

  16. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Combining the above conditions, we conclude that the n-tuple … has the weight of the composite codeword 1(v1)2(v2). Hence we have the following theorem. Theorem 15.3: With V1, V2 and V(2) as previously defined, if viVi has weight wi, i=1, 2, then the corresponding word 1(v1)2(v2) of V(2) has weight W(2) = w1.(n2- w2) + w2.(n1- w1). (15.1.14)

  17. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Consider the case of M-sequence component codes. Recall that a binary M-sequence code is an (n=2m–1, k=m) cyclic code, all of its nonzero n=2m–1 words having the same weight of (n+1)/2 = 2m-1. If V1 and V2 are respectively (n1, k1) and (n2, k2) M-sequence codes with (n1, n2)=1, then the weight distribution of V1is given by N1(0) = 1, N1{(n1+1)/2} = n1, (15.1.15a) and that of V2 is given by N2(0) = 1, N2{(n2+1)/2} = n2, (15.1.15b)

  18. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication With the above possible weight combinations, a direct application of Theorem 15.3 will give the weight of V(2) be (15.1.16) Since with respect to Theorem 15.1, a = 0 or k = k1+k2 for case of V1 and V2 are both M-sequence codes, therefore, from Eqs. (15.1.15a) -- (15.1.16) and follow the proof procedures of Theorem 15.3, we obtain the following weight distribution of code V(2). 0, if w1 = 0, w2 = 0; n1(n2+1)/2 , if w1=0, w2=(n2+1)/2; W(2) = { n2(n1+1)/2, if w1=(n1+1)/2, w2=0; (n1n2-1)/2, ifw1=(n1+1)/2, w2=(n2+1)/2;

  19. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Theorem 15.4: If Vi is an (ni, ki) M-sequence code for i=1, 2, n1 and n2 being relatively prime, then the composite code V(2) has the weight distribution N(0) = 1, N((n1n2 - 1)/2) = n1n2, N((n1n2 + n1)/2) = n1, N((n1n2 + n2)/2) = n2, (15.1.17 ) where N(w) is the number of words of weight w.

  20. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Generally, in the case of m component codes, the weight equation of code V(m) is W(m) = W(m-1)(nm – wm) + wm(N(m-1) – W(m-1)), (15.1.18) where W(m-1) and N(m-1) = n1n2…nm-1 are respectively the weight and the length of the composite code V(m-1), while wm and nm are respectively those of the m-th component code Vm.   The importance of Theorem 15.3 or Equ.(15.1.18) lies in that, given weight distributions of Vi’s that of V(m) can be computed easily. This also means, of course, that the weight distribution of the dual of V(m) can be determined using the famous MacWilliams identities.

  21. 15.2 Correlation Spectra of Prime-Length Composite Codes Let us examine the correlation between words of prime-length composite V(m) for the case when all of the component codes Vi are M-sequence codes. Recall that an (ni=2mi-1, ki=mi) binary M-sequence code Vi has ni nonzero codewords all of which have the same weight of 2mi-1 = (ni+1)/2. Also recall that the correlation between two binary n-tuples u and v is given by q(u,v) = [n - 2dis(u,v)]/n = [n - 2|u⊕v|]/n (15.2.1) where dis(u,v) is the Hamming distance between u and v, and |u⊕v| is the Hamming weight of codeword u⊕v. For a linear code V, if both u and v are codewords of V, then u⊕v is also a word of V.

  22. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Let Sm be the set of correlations in V(m). For example, as we have known, S1 = {1, -1/n1} for M-sequence code. With reference to (15.1.18), we note that after j M-sequence component codes have been combined into V(j), j{1, 2, ..., m-1}, if we add another (j+1)th M-sequence code which has a length relatively prime to those of previous j component codes, then we will get W(j+1) = W(j)(nj+1-wj+1) + wj+1(N(j)-W(j)), (15.2.2) where W(j) is a weight in code V(j), W(j+1) is a weight in code V(j+1), and N(j)= n1n2…nj is the length of V(j). Surely, the length of code V(j+1) is N(j+1) = N(j)nj+1 = n1n2…nj+1 . (15.2.3)

  23. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication • Since the possible weight of component code Vj+1 is • either wj+1 = 0 or wj+1 = (nj+1 +1)/2, • therefore (15.2.2) gives • W(j)nj+1, if wj+1= 0; (15.2.4a) • W(j+1) = { • [N(j+1)+N(j)-2W(j)]/2, if wj+1= (nj+1+1)/2, • (15.2.4b)

  24. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication • Corresponding to (15.2.4a), we have q(j+1) = [N(j+1) - 2W(j+1)]/N(j+1) = [N(j+1) - 2W(j)nj+1]/N(j+1) = [N(j) - 2W(j)]/N(j), So that, q(j+1) = q(j), (15.2.5a)

  25. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication • Corresponding to (15.2.4b), we have • q(j+1) = [N(j+1) - 2W(j+1)]/N(j+1) • = [N(j+1) - N(j+1) - N(j) - 2W(j)]/N(j+1) • = -[N(j) - 2W(j)]/N(j+1) • = -[(N(j) - 2W(j))/N(j)]/nj+1. • So that, • q(j+1) = -1/[nj+1q(j)]. (15.2.5b)

  26. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication What (15.2.5a) and (15.2.5b) imply is that if a certain correlation value q belongs to Sj, then Sj+1 contains both q and -q/nj+1.   Recalling that S1 = {1, -1/n1}, (15.2.6a) and using (15.2.5a) and (15.2.5b) recursively, we see that S2 = S1 U (–1/n2)S1 = {1, -1/n1} U (–1/n2){1, -1/n1} = {1, -1/n1, -1/n2, 1/n1n2}, (15.2.6b) S3 = S2 U (-1/n3)S2 ={1, -1/n1,-1/n2,1/n1n2}U(-1/n3){1,-1/n1,-1/n2,1/n1n2} ={1, -1/n1,-1/n2,-1/n3,1/n1n2,1/n1n3,1/n2n3,-1/n1n2n3}(15.2.6c) and so on. Examining S1, S2, S3, …, we conclude the following

  27. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Theorem 15.5: If the component codes Vi are all (ni=2mi-1, ki=mi) binary M-sequence codes, where i=1, 2, …, m and (ni, nj)=1, then the prime- length composite code V(m) has the set Sm, of correlations, defined by Sm = 0 U 1 U 2 U … U m, where 0 is the set containing the only number of 1, and j , for j  1, is the set of numbers of the form (-1)(j)/ni1ni2…nij. To clarify the statement of the Theorem 15.5, we mention, as an example, that, if m = 5, then, say, 4 = {(-1)(4)/n1n2n3n4, (-1)(4)/n1n2n3n5, (-1)(4)/n1n2n4n5, (-1)(4)/n1n3n4n5, (-1)(4)/n2n3n4n5}.

  28. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Figures 15.3 and 15.4 give examples of the possible correlation values and their corresponding power spectra for the prime-length composite codes V(2) and V(3), respectively. In Figure 15.3, we use (n1=3, k1=2) and (n2=7, k2=3) M-sequence codes as V(2)’s component codes, while in Figure 15.4, (n1=3, k1=2), (n2=7, k2=3), and (n3=31, k3=5) M-sequence codes are used as V(3)’s component codes. In either case, note that (ni, nj)=1 for i  j. By cyclic shifting a typical codeword V(2)(X) V(2) (V(3)(X) V(3)) and counting the Hamming distance between XlV(2)(X) (XlV(3)(X)) and V(2)(X) (V(3)(X)) for l=0, 1, 2, …, n-1, where n=n1n2 (n=n1n2n3) is the code length of V(2) (V(3)), then through the operation of Equ. (15.2.1) we obtain the typical autocorrelation function of Figure 15.3(a) (Figure 15.4(a)), which obviously coincides with what we had derived in Theorem 15.5.

  29. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication

  30. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication

  31. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Corresponding to the autocorrelation function of Figures 15.3(a) and 15.4(a); the power spectra of Figures 15.3(b) and 15.4(b) are obtained from the well-known Fourier Transform relationship between correlation function and power spectrum. Alternatively, since the discussed autocorrelation function can be represented as the sum of several partial functions all of the same form but with different periods and amplitudes, the power spectrum can be approximated as the sum of several partial spectra, each corresponds to a certain partial correlation function. In any event, the resulted power spectrum is line spectrum which bears much resemblances in envelopes with that of M-sequence code. However, as we can see, the amplitudes are actually “lumpy”. This is because the based correlation functions having minor peaks within out-of-phase durations.

  32. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication From Theorem 15.5 together with Figures 15.3(a) and 15.4(a) it is clear that, among the correlations q 1, | q|  1/n1, if we assume, without losing any generality, that n1n2  … nm. Thus, when the component codes are all M-sequence codes, the magnitude of the correlation in the prime-length composite code V(m) can be kept below as small a value as desired by making the length of the shortest component code long enough.

  33. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication

  34. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication

  35. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Having derived the possible correlation values of prime-length composite codes, we now proceed to discuss the question as to the number of positions by which a codeword has to be shifted so that the correlation between the codeword and its cyclic shift is any specific value from the set of values given in Theorem 15.5.

  36. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Let VA and VB be two binary cyclic codes, VA being (nA, kA) code and VB being (nB, kB) code, where (nA, nB) = 1. Let VC be the composite code, as defined in (15.1.2), with VA and VB as the component codes, so that a codeword VC(X) of VC is given by VC(X) = VA(X) [(1+XnAnB)/(1+XnA)] +VB(X) [(1+XnAnB)/(1+XnB)] (15.2.7) where VA(X) belongs to VA and VB(X) belongs to VB.

  37. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Now let us consider F(X) = VC(X) + XVC(X) mod (1+XnAnB). (15.2.8) If  = MnA, then from (15.2.7) and (15.2.8), we have F(X) = VB(X)[(1+XnAnB)/(1+XnB)](1+XMnA) mod (1+XnAnB), (15.2.9) which can be rewritten as F(X) = (X) + XMnA(X) mod (1+XnAnB), (15.2.10) where (X) is the (nAnB)-tuple obtained by repeating VB(X) nA times, i.e., (X) = VB(X){(1+XnAnB)/(1+XnB)}. But shifting (X) cyclically by MnA positions is the same as shifting VB(X) cyclically by B positions, where B = MnA modulo nB.

  38. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication This means from (15.2.7) to (15.2.10), that, if  = MnA, 0 MnB, then |VC(X) + XMnAVC(X) mod (1+XnAnB)| = |VB(X) + XBVB(X) mod (1+XnB)| nA (15.2.11)  Setting| VB(X) + XBVB(X) mod (1+XnB)| = D, (15.2.12)

  39. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication we see that q(VB(X) + XBVB(X) mod (1+XnB)) = (nB-2D)/nB, (15.2.13)  and q(VC(X) + XMnAVC(X) mod (1+XnAnB)) = (nAnB-2nAD)/nAnB, (15.2.14)  Comparing (15.2.13) and (15.2.14) we see that they are equal.

  40. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Theorem 15.6 : Suppose VA and VB are two binary cyclic codes with the respective lengths nA and nB such that (nA, nB) = 1. Then every correlation occurring in VA (VB), for a cyclic shift of A (B) positions, occurs also in the composite code VC for a cyclic shift of MnB (MnA) positions, where M and A (B) are related through A = MnB modulo nA (B = MnA modulo nB).

  41. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication A composite code V(m) with component codes V1, V2, …, Vm can be treated as a composite code VC with component codes VA and VB, where VA is a composite code with component codes, say, Vi1, Vi2, …, Viu and VB is a composite code with component codes Vi(u+1), Vi(u+2), …, Vi[u+(-u)], where Vj {V1, V2, …, Vm}. Using this fact with reference to Theorems 15.5 and 15.6 in recursive fashion, we obtain the following:

  42. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication Theorem 15.7: With reference to Theorem 15.5, the correlation (-1)a/ni1ni2…nia occurs for a cyclic shift of bn/ni1ni2…nia positions, where b is a positive integer and not a multiple of ni1, ni2, …, nia, a is a positive integer  1 and -1, n=n1n2…nm. With respect to Theorem 15.7, we note that for other cyclic shifts we have the correlation of (-1)m/n.

  43. Chapter XV. Prime-Length Composite Coding for Multi-Users Communication To clarify the statement of Theorem 15.7, suppose m = 4. Then according to Theorem 15.5, V(4) has the set S4 of correlations given by S4 = {1, -1/n1, -1/n2, -1/n3, -1/n4, 1/n1n2, 1/n1n3, 1/n1n4, 1/n2n3, 1/n2n4, 1/n3n4, -1/n1n2n3, -1/n1n2n4, -1/n1n3n4, -1/n2n3n4, 1/n1n2n3n4}. If  is the number of positions by which the codeword is cyclically shifted, then, according to Theorem 15.7, the correlation of 1 occurs for  = 0, -1/ni for  = bn1n2n3n4/ni, 1/ninj for  = bn1n2n3n4/ninj, -1/ninjnk for  = bn1n2n3n4/ninjnk, and 1/n1n2n3n4 elsewhere. We note here that b is not a multiple of any of the numbers in the denominator for a given .

More Related