1. Generate the cyclic code for (n, k) syndrome calculator. …€¦ · · 2017-08-17What are the...
-
Upload
duongquynh -
Category
Documents
-
view
447 -
download
22
Transcript of 1. Generate the cyclic code for (n, k) syndrome calculator. …€¦ · · 2017-08-17What are the...
UNIT - IV
PART – A
1. Generate the cyclic code for (n, k) syndrome calculator. [N/D-16]
Let c be the original codeword sent and r = c + e be the received codeword, where e is the
error vector. ei = {n1, if an error has occured in the ith position0, otherwise Decoding of r
A 1 × (n − k) matrix called error syndrome matrix is calculated
S=r HT
2. What is a linear code? [N/D -07]
3. What is a linear code? [M/J-16]
A code is linear if modulo-2 sum of any two code vectors produces another code vector.
This means any code vector can be expressed as linear combination of other code vectors.
4. What is meant by constraint length of a convolution encoder? [M/J-16]
Constraint length is the number of shift over which the single message bit can influence the
encoder output. It is expressed in terms of message bits.
5. What is meant by syndrome of linear block code?
The non zero output of the produce YHT is called syndrome & it is used to detect errors in
y. Syndrome is denoted by S & given as, S=YHT.
6. What is convolution code? How is it different from block codes? [A/M -12]
Fixed number of input bits is stored in the shift register & they are combined with the help
of mod 2 adders. This operation is equivalent to binary convolution coding.
7. Write the futures of BCH Codes?
BCH codes are most extensive and powerful error correcting cyclic codes. The decoding of
BCH codes is comparatively simpler.
8. What are the advantages of convolutional codes?
Advantages:
1 .The decoding delay is small in convolutional codes since they operate o smaller blocks
of data.
2. The storage hardware required by convolutional decoder is less since the block sizes are
smaller.
Disadvantages:
1. Convolutional codes are difficult to analyze since their analysis is complex.
2. Convolutional codes are not developed much as compared to block codes.
9. What is difference between block codes and convolutional codes?
Block codes takes‟ k‟ .number of bits simultaneously form „n‟ -bit .code vector. This code
vector is also called block. Convolutional code takes one message bits at a time and
generates two or more encoded bits. Thus convolutional codes generate a string of encoded
bits for input message string.
10. What are the error detection and correction capabilities of hamming codes?
The minimum distance (dmin) of hamming codes is „3‟ . .Hence it can be used to detect
double errors or correct single errors. Hamming codes are basically linear block codes with
dmin =3.
11. What is meant by cyclic codes?
Cyclic codes are the subclasses of linear block codes. They have the property that a cyclic
shift of one codeword produces another code word.
12. Define minimum distance. (MAY-07)
It is the smallest hamming distance between the valid code vectors. The error detecting
correcting capabilities of the codes depend upon the minimum distance.
13. Define hamming weight. (MAY-09)
The number of 1’s in the code word of the hamming code is called as hamming distance.
14. What is meant by systematic and non-systematic codes?
In a Systematic block code, message bits appear first and then check bits. In the
nonsystematic code, message and check bits cannot be identified in the code vector.
PART – B
1. Describe the cyclic codes with the linear and cyclic property. Also represent the
cyclic property of a code word in polynomial notation. (16) [N/D-16]
2. Determine the generator polynomial g(X) FOR A (7, 4) cyclic code and fine the
code vector for the following data vector 1010, 1111 and 1000 (8)
n=7 k=4
q=n-k=3
To obtain the generator polynomial
(p7+1) = (p+1)(p3+p2+1)(p3+p+1)
Let G (p)= (p3+p+1)
To obtain the generator matrix in systematic form
To determine the code vector
1. code vector for M=1010
X=MG
3. Describe how the errors are corrected using Hamming code with an Example.(12)
BLOCK CODE
A block code is linear if any linear combination of two code words is also a codeword. In
the binary case this requires that if ci and c j are code words then ci ⊕c j is also a code
word, where ⊕ denotes component-wise modulo-2 addition.)
HAMMING DISTANCE
The hamming distance between two code vectors is equal to the number of elements in
which they differ. For example, let the two code words be, X = (101) and Y= (110)
These two code words differ in second and third bits. Therefore the hamming distance
between X and Y is two
The Hamming distance between two code words ci and c j is the number of components
at which the two code words differ, and is denoted by d(ci , c j ).†
The Hamming weight, or simply the weight of a code word ci is the number of nonzero
components of the code word and is denoted by w(ci ).
The minimum distance of a code is the minimum Hamming distance between any two
different code words; i.e.,
The minimum weight of a code is the minimum of the weights of the code words except
the all zero code word.
Hamming Codes. Hamming codes are a class of linear block codes with n = 2m − 1, k =
2m − m − 1 and dmin =3, for some integer m ≥ 2.this minimum distance, these codes are
capable of providing error-correction capabilities for single errors. The parity check
matrix for these codes has a very simple structure. It consists of all binary sequences of
length m except the all zero sequence. The rate of these codes is given by
A code can detect any combination of d or fewer errors if
A code can correct any combination of c or fewer errors
A code can simultaneously detect d errors and correct c < d errors if
repetition code: correct 1 error and detect up to 2 errors.
Definition: A block code is linear if any linear combination of two code words is also a
codeword. In the binary case, it is equivalent to the fact that the sum of any two code
words is also a codeword where summation is defined by component wise modulo-2
addition linear codes.)
4. What are cyclic codes. Explain the merits and demerits Give the properties of cyclic
codes. (AU- May/June 2010)
Cyclic codes forms as subclass of linear block code.
Properties of cyclic code
1. Linearity property.
The sum of two code word in the code is also a code word.
2. Cyclic property
A cyclic shift of a code word in the code is also a code word.
GENERATOR POLYNOMIAL
C(X) = a (X) g (X)
Encoding procedure
Encoder of cyclic code
5. Explain viterbi decoding algorithm for convolution code. (8)
Viterbi Decoding Algorithm Maximum Likelihood (ML) decoding rule
Viterbi Decoding Algorithm
An efficient search algorithm
Performing ML decoding rule.
Reducing the computational complexity.
Basic concept
the decoder the decoder penetrates through the code
trellis level by level in search for the transmitted code sequence
metrics of all
the partial paths entering a node
es the partial path with the larger metric and eliminates all the
other partial paths. The stored partial path is called the survivor.
Viterbi Decoding Process :
6. Assume a (2,1) convolutional coder with constraint length 6.Draw the tree diagram, state diagram and
trellis diagram for the assumed coder .Design block code for a message block of size eight that can correct
for single errors Briefly discuss on various error control codes and explain in detail with one example for
convolution code. (12) [A/M -11]
N=2, K=1 AND K=6(CONSTRAIN LENGHT)
M=K/n=6/2=3, snce constrain length k=n*M
3 storage element in shift register
N=2 two output bits
One set k=1 of shift register having 3 storage element the convolutional code structure is easy to draw from
its parameters. First draw m boxes representing the m memory register. Then draw n modulo-2 adders to
represent the n output bits. Now connect the memory registers to the adders using the generator
Polynomial
Convolutional codes k = number of bits shifted into the encoder at one time
k=1 is usually used!!
n = number of encoder output bits corresponding to the k0020information bits
r = k/n = code rate
K = constraint length, encoder memory Each encoded bit is a function of the present input bits and their past ones. Generator Sequence
7. Explain how encoding is done by convolution codes with a suitable example [A/M - 10] 8. Design a convolution coder of constraint length and rate efficiency ½.Draw its tree diagram and trellis diagram. [N/D - 12]
Convolutional codes are widely used as channel codes in practical communication systems for
error correction. *The encoded bits depend on the current k input bits and a few past input bits.
The main decoding strategy for convolutional codes is based on the widely used Viterbi
algorithm. Convolutional codes are commonly described using two parameters: the code rate
and the constraint length. The code rate, k/n, is expressed as a ratio of the number of bits into
the convolutional encoder (k) to the number of channel symbols output by the convolutional
encoder (n) in a given encoder cycle. The constraint length parameter, K, denotes the "length" of
the convolutional encoder, i.e. how many k-bit stages are available to feed the combinatorial
logic that produces the output symbols. Closely related to K is the parameter m, which can be
thought of as the memory length of the encoder. A simple convolutional encoder is shown
below(fig 3.1). The information bits are fed in small groups of k-bits at a time to a shift register.
The output encoded bits are obtained by modulo-2 addition (EXCLUSIVE-OR operation) of the
input information bits and the contents of the shift registers which are a few previous information
bits
The operation of a convolutional encoder can be explained in several but equivalent ways such
as, by a) state diagram representation. b) tree diagram representation. c) trellis diagram
representation.
a) State Diagram Representation: A convolutional encoder may be defined as a finite state
machine. Contents of the rightmost (K-1) shift register stages define the states of the encoder.
So, the encoder in has four states. The transition of an encoder from one state to another, as
caused by input bits, is depicted in the state diagram. A new input bit causes a transition from
one state to another
b) Tree Diagram Representation: The tree diagram representation shows all possible information and encoded sequences for the convolutional encoder. The encoded bits are labeled on the branches of the tree. Given an input sequence, the encoded sequence can be directly read from the tree.
9. Consider a single error correction (7,4) linear code and the corresponding decoding
table(10)
10. Find the (7,4) linear systematic block code word corresponding to 1101.Assume a
suitable generator matrix. [AUC APR/MAY 2011]
Let
n=7 k=4
q=n-k=3
code vector G=[Ik: P]
Check matrix C=MP
C1 = m1+m2+m3
C2= m2+m3+m4