- Asked 2/48
- 2080 Baisakh (CS II) · 10 marks
- 2070 Asar (CS II) · 1+4 marks
(7,4) cyclic code with g(x) = x³ + x² + 1 for 1011
Short answer
For data 1011 (polynomial x^3+x+1), non-systematic codeword is 1111111. Systematic: multiply by x^3, divide by g(x)=x^3+x^2+1, remainder x^2 gives parity 100, so systematic codeword is 1011100.
What is binary Cyclic code? Construct a (7,4) binary Cyclic Code using a generator polynomial g(x) = x³ + x² + 1 with data Vector (1011).
Binary cyclic code
A binary cyclic code is a linear block code in which every cyclic shift of a codeword is also a codeword. If is a codeword, so is .
Code vectors are treated as polynomials . An cyclic code is defined by a generator polynomial of degree that divides . Every codeword is a multiple of . Cyclic codes are easy to encode and decode with shift registers (used in CRC).
Given
, , . It is a valid generator since .
Convention: the leftmost data bit is the highest power. Data :
All arithmetic is modulo 2 ().
(a) Non-systematic codeword
(three terms leave one .)
Non-systematic code vector: 1 1 1 1 1 1 1
(b) Systematic codeword
Steps: multiply by , divide by , append the remainder as parity bits.
Long division by :
x^3 + x^2 <- quotient
---------------------------
x^3+x^2+1 ) x^6 + x^4 + x^3
x^6 + x^5 + x^3
-----------------------
x^5 + x^4
x^5 + x^4 + x^2
-------------------
x^2 <- remainder
Remainder , i.e. parity bits .
Check: , a multiple of , so it is a valid codeword.
Systematic code vector: 1 0 1 1 | 1 0 0 (data bits followed by parity bits).
Shift-register encoder check
The remainder can be produced by a 3-stage feedback shift register (taps at the non-zero coefficients of ). With feedback , the update is , , .
| Input (MSB first) | ||||
|---|---|---|---|---|
| start | 0 | 0 | 0 | |
| 1 | 1 | 1 | 0 | 1 |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 0 | 0 | 1 |
After 4 shifts the register holds , i.e. remainder ; read out , the same parity bits as the long division. The 4 data bits are sent first, then the gate opens and the 3 parity bits follow.
| Form | Code vector |
|---|---|
| Non-systematic | 1111111 |
| Systematic | 1011100 |
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Hamming weight and distance; (7,4) cyclic code for 1011 · Communication Systems, chapter 8 · asked 2×
- Convolutional vs block codes; (7,4) cyclic code for 1011 · Communication Systems, chapter 8 · asked 2×
- (7,4) cyclic code g(x) = 1 + x + x³ for 1011 · Communication Systems, chapter 8 · asked 2×
- (7,4) cyclic code G(p) = p³ + p + 1 for 0101 · Communication Systems, chapter 8 · asked 2×
- Convolutional vs block coder; (7,4) cyclic code for 1010 · Communication Systems, chapter 8 · asked 2×
- Significance of dmin; (7,4) cyclic code for 1101 with g(x) = 1 + x + x² · Communication Systems, chapter 8
- Construct a (7,4) Hamming code · Data Communication, chapter 8
- Cyclic Redundancy Code with example · Instrumentation II, chapter 3
- SISO register with 1011 data · Digital Logic, chapter 7 · asked 9×
- PISO shift register with 1011 data · Digital Logic, chapter 7 · asked 4×