Presentation is loading. Please wait.

Presentation is loading. Please wait.

Block codes. encodes each message individually into a codeword n is fixed, Input/out belong to alphabet Q of cardinality q. The set of Q-ary n-tuples.

Similar presentations


Presentation on theme: "Block codes. encodes each message individually into a codeword n is fixed, Input/out belong to alphabet Q of cardinality q. The set of Q-ary n-tuples."— Presentation transcript:

1 Block codes

2 encodes each message individually into a codeword n is fixed, Input/out belong to alphabet Q of cardinality q. The set of Q-ary n-tuples is denoted by Q n. Hamming distance = d(x,y) = |{1 ≤ i ≤ n | x i ≠ y i }|. the more x and y differ, the more unlikely one will be received if the other was transmitted.

3 Hamming distance – measures the minimum number of substitutions required to change one string into the other

4 For d(x,x) = 0, d(x,y) = d(y,x) and that the triangle inequality holds: d(x,z) ≤ d(x,y) + d(y,z) for any x,y and z in Q n. indicates hamming distances to be a of distance function To maximize the error-protection, codewords must have sufficient mutual distance.

5 If C is a block code of length n in any subset of Q n then elements of C are called codeword and when |C|=1 is called trivial. The minimum distance d of a non-trivial code C is given by d = min{d(x,y) | x ∈ C,y ∈ C,x ≠ y}. The error-correcting capability e is defined by e =└ d-1/2 ┘ codes can also be used for error-detection

6 Let t be some integer, t ≤ e. From d definition, no word in Q n can be at distance at most t from one codeword, while at the same time being at distance up to d−t−1 from some other codeword. a code C with minimum distance d can also be used to correct errors and erasures – If e and f be fixed such that 2e + f < d.

7 A received word r with at most f erasures cannot have distance ≤ e from two different codewords c 1 and c 2 at the other n − f coordinates, this will imply that d(c 1,c 2 ) ≤ 2e + f < d. It follows that C is e-error, f-erasure- correcting.

8 (Hamming bound

9

10 The rate of a q-ary code C of length n is defined by

11 Singleton bound If C be a q-ary (n,M,d) code then, – Then M ≤ q n−d+1. – where M is the cardinality Codes with parameters (n,qn−d+1,d) are called maximum-distance-separable codes (Singleton bound)

12 Gilbert-Varshamov bound

13 2.2Linear codes Most of the important codes are special types of so-called linear codes. Linear codes are of importance because they have very concise description, very nice properties, very easy encoding and in principle quite easy decoding

14 Linear codes are special sets of words of the length n over an alphabet Q{0,..,q -1}, where q is a power of prime. Since now on sets of words Q q n will be considered as vector spaces V(n,q) of vectors of length n with elements from the set {0,..,q -1} and arithmetical operations will be taken modulo q. The set {0,..,q -1} with operations + and  modulo q is called also the Galois field GF(q).

15 the error pattern, caused by the channel, is the vector e with r = c + e. The Hamming weight w(x) of a vector x is the number of non-zero coordinates in x. So w(x) = d(x,0).

16 With Q n having the structure of the vector space V n (q), the most important general class of codes can be defined. A linear code C of length n is any linear subspace of V n (q). Linear codes are also called “group codes“. If C has dimension k and minimum distance d, one says that C is an [n,k,d] code.

17 For linear codes without further structure, The minimum distance of a linear code C is equal to the minimum non-zero weight in C.

18 Generator matrix An (n,k) linear code is a k-dimensional subspace of the vector space of all the binary n-tuples, so it is possible to find k linearly independent code words g 0,g 1,···,g k−1 to span this space. So any code word can be written as a linear combination of these base vectors: c = m 0 g 0 + m 1 g 1 +···+ m k−1 g k−1

19 We can arrange these k linearly independent code words (vectors) as the rows of a k ×n matrix as follows: c = mG

20 Definition: If in all the codewords we can find exactly the corresponding information sequence, the code is called systematic. It is convenient to group all these bits either at the end or at the beginning of the code word. In this case the generator matrix can be divided into two sub matrices [P|I]. I is identity matrix and P is parity check matrix

21 Parity check matrix For any k ×n matrix G with k linearly independent rows, there exists an (n−k)×n matrix H with (n−k) linearly independent rows such that any vector in the row space of G is orthogonal to the rows of H and vice versa. So we can say: An n-tuple c is a codeword generated by G if and only if cH T = 0 Matrix H is called Parity check matrix. The rows of H span a code space called dual code of G. GH T = 0

22 For the systematic code G = [P n×n−k I k×k ], the parity check matrix is simply H = [I (n-k)x(n-k )P T (n-k)xk ] An n-tuple vector r is a codeword if rH T = 0 The product S = rH T is a (1×n−k) vector and is called the syndrome of r. If the syndrome is not zero, a transmission error is declared.

23 r is the received sequence r = c + e S = rH T = (c + e)H T = cH T + eH T = eH T


Download ppt "Block codes. encodes each message individually into a codeword n is fixed, Input/out belong to alphabet Q of cardinality q. The set of Q-ary n-tuples."

Similar presentations


Ads by Google