Error control codes are necessary for transmission and storage of large volumes of date sensitive to errors. BCH codes and Reed Solomon codes are the most important class of multiple error correcting codes for binary and non-binary channels respectively. Peterson and later Berlekamp and Massey discovered powerful algorithms which became viable with the help of new digital technology. Use of Galois fields gave a structured approach to designing of these codes. This presentation deals with above in a very structured and systematic manner.
In this video, I will explain what is QAM modulation and what is 16QAM.
QAM Stands for Quadrature Amplitude Modulation. QAM is both an analog and a digital modulation method. But here, we are only talking about QAM as a digital modulation.
Quadrature means that two carrier waves are being used, one sine wave and one cosine wave. These two waves are out of phase with each other by 90°, this is called quadrature.
At the receiving end, the sine and cosine wave can be decoded independently, this means that by using both a sine wave and a cosine wave, the communication channel's capacity is doubled comparing to using only one sine or one cosine wave. That is why quadrature is such a popular technique for digital modulation.
QAM modulation is a combination of Amplitude Shift Keying and Phase Shift Keying, both carrier wave is modulated by changing both its amplitude and phase. As shown in this 8QAM waveform, the top is the sine wave carrier, for bit 000, the sin wave has a phase shift of 0°, and an amplitude of 2. While for bit 110, the phase shift is 180°, and the amplitude now is 1. So both phase and amplitude are changed.
In 16QAM, the input binary data is combined into groups of 4 bits called QUADBITS.
As shown in this picture, the I and I' bits are sent to the sine wave modulation path, and the Q and Q' bits are sent to the cosine wave path. Since the bits are split and sent in parallel, so the symbol rate has been reduced to a quarter of the input binary bit rate. If the input binary data rate is 100 Gbps, then the symbol rate is reduced to only 25 Gbaud/second. This is the reason why 16QAM is under hot research for 100Gbps fiber optic communication.
The I and Q bits control the carrier wave's phase shift, if the bit is 0, then the phase shift is 180°, if the bit is 1, then the phase shift is 0°.
The I' and Q' bits control the carrier wave's amplitude, if bit is 0, then the amplitude is 0.22 volt, if the bit is 1, then the amplitude is 0.821 volt.
So each pair of bits has 4 different outputs. Then they are added up at the linear summer. 4X4 is 16, so there is a total of 16 different combinations at the output, that is why this is called 16QAM.
This illustration shows an example of how the QUADBIT 0000 is modulated onto the carrier waves.
Here I and I' is 00, so the output is -0.22 Volt at the 2-to-4-level converter, when timed with the sine wave carrier, we get -0.22sin(2πfct), here fc is the carrier wave's frequency. QQ' is also 00, so the other carrier wave output is -0.22cos(2πfct).
Here is the proof that quadbit 0000 is modulated as a sine wave with an amplitude of 0.311volt and a phase shift of -135°. You can now pause for a moment to study the proof.
This list shows the 16QAM modulation output with different amplitude and phase change for all 16 quadbits. On the right side is the constellation diagram which shows the positions of these quadbits on a I-Q diagram.
You can visit FO4SALE.com f
Error control codes are necessary for transmission and storage of large volumes of date sensitive to errors. BCH codes and Reed Solomon codes are the most important class of multiple error correcting codes for binary and non-binary channels respectively. Peterson and later Berlekamp and Massey discovered powerful algorithms which became viable with the help of new digital technology. Use of Galois fields gave a structured approach to designing of these codes. This presentation deals with above in a very structured and systematic manner.
In this video, I will explain what is QAM modulation and what is 16QAM.
QAM Stands for Quadrature Amplitude Modulation. QAM is both an analog and a digital modulation method. But here, we are only talking about QAM as a digital modulation.
Quadrature means that two carrier waves are being used, one sine wave and one cosine wave. These two waves are out of phase with each other by 90°, this is called quadrature.
At the receiving end, the sine and cosine wave can be decoded independently, this means that by using both a sine wave and a cosine wave, the communication channel's capacity is doubled comparing to using only one sine or one cosine wave. That is why quadrature is such a popular technique for digital modulation.
QAM modulation is a combination of Amplitude Shift Keying and Phase Shift Keying, both carrier wave is modulated by changing both its amplitude and phase. As shown in this 8QAM waveform, the top is the sine wave carrier, for bit 000, the sin wave has a phase shift of 0°, and an amplitude of 2. While for bit 110, the phase shift is 180°, and the amplitude now is 1. So both phase and amplitude are changed.
In 16QAM, the input binary data is combined into groups of 4 bits called QUADBITS.
As shown in this picture, the I and I' bits are sent to the sine wave modulation path, and the Q and Q' bits are sent to the cosine wave path. Since the bits are split and sent in parallel, so the symbol rate has been reduced to a quarter of the input binary bit rate. If the input binary data rate is 100 Gbps, then the symbol rate is reduced to only 25 Gbaud/second. This is the reason why 16QAM is under hot research for 100Gbps fiber optic communication.
The I and Q bits control the carrier wave's phase shift, if the bit is 0, then the phase shift is 180°, if the bit is 1, then the phase shift is 0°.
The I' and Q' bits control the carrier wave's amplitude, if bit is 0, then the amplitude is 0.22 volt, if the bit is 1, then the amplitude is 0.821 volt.
So each pair of bits has 4 different outputs. Then they are added up at the linear summer. 4X4 is 16, so there is a total of 16 different combinations at the output, that is why this is called 16QAM.
This illustration shows an example of how the QUADBIT 0000 is modulated onto the carrier waves.
Here I and I' is 00, so the output is -0.22 Volt at the 2-to-4-level converter, when timed with the sine wave carrier, we get -0.22sin(2πfct), here fc is the carrier wave's frequency. QQ' is also 00, so the other carrier wave output is -0.22cos(2πfct).
Here is the proof that quadbit 0000 is modulated as a sine wave with an amplitude of 0.311volt and a phase shift of -135°. You can now pause for a moment to study the proof.
This list shows the 16QAM modulation output with different amplitude and phase change for all 16 quadbits. On the right side is the constellation diagram which shows the positions of these quadbits on a I-Q diagram.
You can visit FO4SALE.com f
A second important technique in error-control coding is that of convolutional coding . In this type of coding the encoder output is not in block form, but is in the form of an encoded
sequence generated from an input information sequence.
convolutional encoding is designed so that its decoding can be performed in some structured and simplified way. One of the design assumptions that simplifies decoding
is linearity of the code. For this reason, linear convolutional codes are preferred. The source alphabet is taken from a finite field or Galois field GF(q).
Convolution coding is a popular error-correcting coding method used in digital communications.
The convolution operation encodes some redundant information into the transmitted signal, thereby improving the data capacity of the channel.
Convolution Encoding with Viterbi decoding is a powerful FEC technique that is particularly suited to a channel in which the transmitted signal is corrupted mainly by AWGN.
It is simple and has good performance with low implementation cost.
These slides deal with the basic problem of channel equalization and exposes the issue related to it and shows how it can be balanced by the usage of effective and robust algorithms.
Sampling Theorem, Quantization Noise and its types, PCM, Channel Capacity, Ny...Waqas Afzal
Sampling Theorem
Quantization
Noise and its types
Encoding-PCM
Power of Signal
Signal to noise Ratio
Channel Capacity
Nyquist Bandwidth
Shannon Capacity Formula
Multirate Digital Signal Processing-Up/Down Sampling
Applications
Robust Control of Uncertain Switched Linear Systems based on Stochastic Reach...Leo Asselborn
This presentation proposes an approach to algorithmically synthesize control strategies for
set-to-set transitions of uncertain discrete-time switched linear systems based on a combination
of tree search and reachable set computations in a stochastic setting. For given Gaussian
distributions of the initial states and disturbances, state sets wich are reachable to a chosen
confidence level under the effect of time-variant hybrid control laws are computed by using
principles of the ellipsoidal calculus. The proposed algorithm iterates over sequences of the
discrete states and LMI-constrained semi-definite programming (SDP) problems to compute
stabilizing controllers, while polytopic input constraints are considered. An example for illustration is included.
A second important technique in error-control coding is that of convolutional coding . In this type of coding the encoder output is not in block form, but is in the form of an encoded
sequence generated from an input information sequence.
convolutional encoding is designed so that its decoding can be performed in some structured and simplified way. One of the design assumptions that simplifies decoding
is linearity of the code. For this reason, linear convolutional codes are preferred. The source alphabet is taken from a finite field or Galois field GF(q).
Convolution coding is a popular error-correcting coding method used in digital communications.
The convolution operation encodes some redundant information into the transmitted signal, thereby improving the data capacity of the channel.
Convolution Encoding with Viterbi decoding is a powerful FEC technique that is particularly suited to a channel in which the transmitted signal is corrupted mainly by AWGN.
It is simple and has good performance with low implementation cost.
These slides deal with the basic problem of channel equalization and exposes the issue related to it and shows how it can be balanced by the usage of effective and robust algorithms.
Sampling Theorem, Quantization Noise and its types, PCM, Channel Capacity, Ny...Waqas Afzal
Sampling Theorem
Quantization
Noise and its types
Encoding-PCM
Power of Signal
Signal to noise Ratio
Channel Capacity
Nyquist Bandwidth
Shannon Capacity Formula
Multirate Digital Signal Processing-Up/Down Sampling
Applications
Robust Control of Uncertain Switched Linear Systems based on Stochastic Reach...Leo Asselborn
This presentation proposes an approach to algorithmically synthesize control strategies for
set-to-set transitions of uncertain discrete-time switched linear systems based on a combination
of tree search and reachable set computations in a stochastic setting. For given Gaussian
distributions of the initial states and disturbances, state sets wich are reachable to a chosen
confidence level under the effect of time-variant hybrid control laws are computed by using
principles of the ellipsoidal calculus. The proposed algorithm iterates over sequences of the
discrete states and LMI-constrained semi-definite programming (SDP) problems to compute
stabilizing controllers, while polytopic input constraints are considered. An example for illustration is included.
This is the entrance exam paper for ISI MSQE Entrance Exam for the year 2010. Much more information on the ISI MSQE Entrance Exam and ISI MSQE Entrance preparation help available on http://crackdse.com
Probabilistic Control of Switched Linear Systems with Chance ConstraintsLeo Asselborn
An approach to algorithmically synthesize control
strategies for set-to-set transitions of uncertain discrete-time
switched linear systems based on a combination of tree search
and reachable set computations in a stochastic setting is
proposed in this presentation. The initial state and disturbances
are assumed to be Gaussian distributed, and a time-variant
hybrid control law stabilizes the system towards a goal set.
The algorithmic solution computes sequences of discrete states
via tree search and the continuous controls are obtained
from solving embedded semi-definite programs (SDP). These
program taking polytopic input constraints as well as timevarying
probabilistic state constraints into account. An example
for demonstrating the principles of the solution procedure with
focus on handling the chance constraints is included.
Efficient end-to-end learning for quantizable representationsNAVER Engineering
발표자: 정연우(서울대 박사과정)
발표일: 2018.7.
유사한 이미지 검색을 위해 neural network를 이용해 이미지의 embedding을 학습시킨다. 기존 연구에서는 검색 속도 증가를 위해 binary code의 hamming distance를 활용하지만 여전히 전체 데이터 셋을 검색해야 하며 정확도가 떨어지는 다는 단점이 있다. 이 논문에서는 sparse한 binary code를 학습하여 검색 정확도가 떨어지지 않으면서 검색 속도도 향상시키는 해쉬 테이블을 생성한다. 또한 mini-batch 상에서 optimal한 sparse binary code를 minimum cost flow problem을 통해 찾을 수 있음을 보였다. 우리의 방법은 Cifar-100과 ImageNet에서 precision@k, NMI에서 최고의 검색 정확도를 보였으며 각각 98× 와 478×의 검색 속도 증가가 있었다.
Control of Uncertain Nonlinear Systems Using Ellipsoidal Reachability CalculusLeo Asselborn
This paper proposes an approach to algorithmically synthesize control strategies for discrete-time nonlinear uncertain systems based on reachable set computations using the ellipsoidal calculus. For given ellipsoidal initial sets and bounded ellipsoidal disturbances, the proposed algorithm iterates over conservatively approximating and LMI-constrained optimization problems to compute stabilizing controllers. The method uses
first-order Taylor approximation of the nonlinear dynamics and a conservative approximation of the Lagrange remainder.
Control of Discrete-Time Piecewise Affine Probabilistic Systems using Reachab...Leo Asselborn
This presentation proposes an algorithmic approach to
synthesize stabilizing control laws for discrete-time piecewise
affine probabilistic (PWAP) systems based on computations of
probabilistic reachable sets. The considered class of systems
contains probabilistic components (with Gaussian distribution)
modeling additive disturbances and state initialization. The
probabilistic reachable state sets contain all states that are
reachable with a given confidence level under the effect of
time-variant control laws. The control synthesis uses principles
of the ellipsoidal calculus, and it considers that the system
parametrization depends on the partition of the state space. The
proposed algorithm uses LMI-constrained semi-definite programming
(SDP) problems to compute stabilizing controllers,
while polytopic input constraints and transitions between regions
of the state space are considered. The formulation of
the SDP is adopted from a previous work in [1] for switched
systems, in which the switching of the continuous dynamics
is triggered by a discrete input variable. Here, as opposed
to [1], the switching occurs autonomously and an algorithmic
procedure is suggested to synthesis a stabilizing controller. An
example for illustration is included.
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...Amil Baba Dawood bangali
Contact with Dawood Bhai Just call on +92322-6382012 and we'll help you. We'll solve all your problems within 12 to 24 hours and with 101% guarantee and with astrology systematic. If you want to take any personal or professional advice then also you can call us on +92322-6382012 , ONLINE LOVE PROBLEM & Other all types of Daily Life Problem's.Then CALL or WHATSAPP us on +92322-6382012 and Get all these problems solutions here by Amil Baba DAWOOD BANGALI
#vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore#blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #blackmagicforlove #blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #Amilbabainuk #amilbabainspain #amilbabaindubai #Amilbabainnorway #amilbabainkrachi #amilbabainlahore #amilbabaingujranwalan #amilbabainislamabad
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
Immunizing Image Classifiers Against Localized Adversary Attacksgerogepatton
This paper addresses the vulnerability of deep learning models, particularly convolutional neural networks
(CNN)s, to adversarial attacks and presents a proactive training technique designed to counter them. We
introduce a novel volumization algorithm, which transforms 2D images into 3D volumetric representations.
When combined with 3D convolution and deep curriculum learning optimization (CLO), itsignificantly improves
the immunity of models against localized universal attacks by up to 40%. We evaluate our proposed approach
using contemporary CNN architectures and the modified Canadian Institute for Advanced Research (CIFAR-10
and CIFAR-100) and ImageNet Large Scale Visual Recognition Challenge (ILSVRC12) datasets, showcasing
accuracy improvements over previous techniques. The results indicate that the combination of the volumetric
input and curriculum learning holds significant promise for mitigating adversarial attacks without necessitating
adversary training.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdffxintegritypublishin
Advancements in technology unveil a myriad of electrical and electronic breakthroughs geared towards efficiently harnessing limited resources to meet human energy demands. The optimization of hybrid solar PV panels and pumped hydro energy supply systems plays a pivotal role in utilizing natural resources effectively. This initiative not only benefits humanity but also fosters environmental sustainability. The study investigated the design optimization of these hybrid systems, focusing on understanding solar radiation patterns, identifying geographical influences on solar radiation, formulating a mathematical model for system optimization, and determining the optimal configuration of PV panels and pumped hydro storage. Through a comparative analysis approach and eight weeks of data collection, the study addressed key research questions related to solar radiation patterns and optimal system design. The findings highlighted regions with heightened solar radiation levels, showcasing substantial potential for power generation and emphasizing the system's efficiency. Optimizing system design significantly boosted power generation, promoted renewable energy utilization, and enhanced energy storage capacity. The study underscored the benefits of optimizing hybrid solar PV panels and pumped hydro energy supply systems for sustainable energy usage. Optimizing the design of solar PV panels and pumped hydro energy supply systems as examined across diverse climatic conditions in a developing country, not only enhances power generation but also improves the integration of renewable energy sources and boosts energy storage capacities, particularly beneficial for less economically prosperous regions. Additionally, the study provides valuable insights for advancing energy research in economically viable areas. Recommendations included conducting site-specific assessments, utilizing advanced modeling tools, implementing regular maintenance protocols, and enhancing communication among system components.
Water scarcity is the lack of fresh water resources to meet the standard water demand. There are two type of water scarcity. One is physical. The other is economic water scarcity.
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
1. Cyclic Codes
Yunghsiang S. Han
Graduate Institute of Communication Engineering,
National Taipei University
Taiwan
E-mail: yshan@mail.ntpu.edu.tw
2. Y. S. Han Cyclic codes 1
Description of Cyclic Codes
• If the components of an n-tuple v = (v0, v1, . . . , vn−1) are
cyclically shifted i places to the right, the resultant n-tuple
would be
v(i)
= (vn−i, vn−i+1, . . . , vn−1, v0, v1, . . . , vn−i−1).
• Cyclically shifting v i places to the right is equivalent to
cyclically shifting v n − i places to the left.
• An (n, k) linear code C is called a cyclic code if every cyclic shift
of a code vector in C is also a code vector in C.
• Code polynomial v(x) of the code vector v is defined as
v(x) = v0 + v1x + · · · + vn−1xn−1
.
• v(i)
(x) = xi
v(x) mod xn
+ 1.
Graduate Institute of Communication Engineering, National Taipei University
3. Y. S. Han Cyclic codes 2
Proof: Multiplying v(x) by xi
, we obtain
xi
v(x) = v0xi
+ v1xi+1
+ · · · + vn−i−1xn−1
+ · · · + vn−1xn+i−1
.
Then we manipulate the equation into the following form:
xi
v(x) = vn−i + vn−i+1x + · · · + vn−1xi−1
+ v0xi
+ · · ·
+vn−i−1xn−1
+ vn−i(xn
+ 1) + vn−i−1x(xn
+ 1)
+ · · · + vn−1xi−1
(xn
+ 1)
= q(x)(xn
+ 1) + v(i)
(x),
where q(x) = vn−i + vn−i+1x + · · · + vn−1xi−1
.
• The nonzero code polynomial of minimum degree in a cyclic code
C is unique.
• Let g(x) = g0 + g1x + · · · + gr−1xr−1
+ xr
be the nonzero code
polynomial of minimum degree in an (n, k) cyclic code C. Then
Graduate Institute of Communication Engineering, National Taipei University
4. Y. S. Han Cyclic codes 3
the constant term g0 must be equal to 1.
Proof: Suppose that g0 = 0. Then
g(x) = g1x + g2x2
+ · · · + gr−1xr−1
+ xr
= x(g1 + g2x + · · · + gr−1xr−2
+ xr−1
).
If we shift g(x) cyclically n − 1 places to the right (or one place
to the left), we obtain a nonzero code polynomial,
g1 + g2x + · · · + gr−1xr−2
+ xr−1
, which has a degree less than r.
Contradiction.
Graduate Institute of Communication Engineering, National Taipei University
5. Y. S. Han Cyclic codes 4
A (7, 4) Cyclic Code Gnerated by g(x) = 1 + x + x3
Graduate Institute of Communication Engineering, National Taipei University
6. Y. S. Han Cyclic codes 5
• Consider the polynomial xg(x), x2
g(x), . . . , xn−r−1
g(x). Clearly,
they are cyclic shifts of g(x) and hence code polynomials in C.
Since C is linear, a linear combination of
g(x), xg(x), . . . , xn−r−1
g(x),
v(x) = u0g(x) + u1xg(x) + · · · + un−r−1xn−r−1
g(x)
= (u0 + u1x + · · · + un−r−1xn−r−1
)g(x),
is also a code polynomial where ui ∈ {0, 1}.
• Let g(x) = 1 + g1x + · · · + gr−1xr−1
+ xr
. be the nonzero code
polynomial of minimum degree in an (n, k) cyclic code C. A
binary polynomial of degree n − 1 or less is a code polynomial if
and only if it is a multiple of g(x).
Proof: Let v(x) be a binary polynomial of degree n − 1 or less.
Graduate Institute of Communication Engineering, National Taipei University
7. Y. S. Han Cyclic codes 6
Suppose that v(x) is a multiple of g(x). Then
v(x) = (a0 + a1x + · · · + an−r−1xn−r−1
)g(x)
= a0g(x) + a1xg(x) + · · · + an−r−1xn−r−1
g(x).
Since v(x) ia a linear combination of the code polynomials,
g(x), xg(x), . . . , xn−r−1
g(x), it is a code polynomial in C.
Now let v(x) be a code polynomial in C. Dividing v(x) by g(x),
we obtain
v(x) = a(x)g(x) + b(x),
where the degree of b(x) is less than the degree of g(x). Since
v(x) and a(x)g(x) are code polynomials, b(x) is also a code
polynomial. Suppose b(x) = 0. Then b(x) is a code polynomial
with less degree than that of g(x). Contradiction.
• The number of binary polynomials of degree n − 1 or less that
are multiples of g(x) is 2n−r
.
Graduate Institute of Communication Engineering, National Taipei University
8. Y. S. Han Cyclic codes 7
• There are total of 2k
code polynomials in C, 2n−r
= 2k
, i.e.,
r = n − k.
•
• The polynomial g(x) is called the generator polynomial of the
code.
• The degree of g(x) is equal toi the number of parity-check digits
of the code.
• The generator polynomial g(x) of an (n, k) cyclic code is a factor
of xn
+ 1.
Proof: We have
xk
g(x) = (xn
+ 1) + g(k)
(x).
Since g(k)
(x) is the code polynomial obtained by shifting g(x) to
Graduate Institute of Communication Engineering, National Taipei University
9. Y. S. Han Cyclic codes 8
the right cyclically k times, g(k)
(x) is a multiple of g(x). Hence,
xn
+ 1 = {xk
+ a(x)}g(x).
• If g(x) is a polynomial of degree n − k and is a factor of xn
+ 1,
then g(x) generates an (n, k) cyclic code.
Proof: A linear combination of g(x), xg(x), . . . , xk−1
g(x),
v(x) = a0g(x) + a1xg(x) + · · · + ak−1xk−1
g(x)
= (a0 + a1x + · · · + ak−1xk−1
)g(x),
is a polynomial of degree n − 1 or less and is a multiple of g(x).
There are a total of 2k
such polynomial and they form an (n, k)
linear code.
Let v(x) = v0 + v1x + · · · + vn−1xn−1
be a code polynomial in
Graduate Institute of Communication Engineering, National Taipei University
10. Y. S. Han Cyclic codes 9
this code. We have
xv(x) = v0x + v1x2
+ · · · + vn−1xn
= vn−1(xn
+ 1) + (vn−1 + v0x + · · · + vn−2xn−1
)
= vn−1 (xn
+ 1) + v(1)
(x).
Since both xv(x) and xn
+ 1 are divisible by g(x), v(1)
must be
divisible by g(x). Hence, v(1)
(x) is a code polynomial and the
code generated by g(x) is a cyclic code.
• Suppose that the message to be encoded is
u = (u0, u1, . . . , uk−1). Then
xn−k
u(x) = u0xn−k
+ u1xn−k+1
+ · · · + uk−1xn−1
.
Dividing xn−k
u(x) by g(x), we have
xn−k
u(x) = a(x)g(x) + b(x).
Graduate Institute of Communication Engineering, National Taipei University
11. Y. S. Han Cyclic codes 10
Since the degree of g(x) is n − k, the degree of b(x) must be
n − k − 1 or less. Then
b(x) + xn−k
u(x) = a(x)g(x)
is a multiple of g(x) and therefore it is a code polynomial.
b(x) + xn−k
u(x) = b0 + b1x + · · · + bn−k−1xn−k−1
+u0xn−k
+ u1xn−k+1
+ · · · + uk−1xn−1
then corresponds to the code vector
(b0, b1, . . . , bn−k−1, u0, u1, . . . , uk−1).
Graduate Institute of Communication Engineering, National Taipei University
12. Y. S. Han Cyclic codes 11
A (7, 4) Cyclic Code Gnerated by g(x) = 1 + x + x3
Graduate Institute of Communication Engineering, National Taipei University
13. Y. S. Han Cyclic codes 12
Generator and Parity-Check Matrices
• The generator matrix of an (n, k) code C is as follows:
G =
g0 g1 g2 · · · · · gn−k 0 0 0 · · 0
0 g0 g1 g2 · · · · · gn−k 0 0 · · 0
0 0 g0 g1 g2 · · · · · gn−k 0 · · 0
· ·
· ·
· ·
0 0 · · · 0 g0 g1 g2 · · · · · gn−k
• In general, G is not in systematic form. However, it can be put
into systematic form with row operation.
• Let
xn
+ 1 = g(x)h(x),
where the polynomial h(x) has the degree k and is of the
following form:
h(x) = h0 + h1x + · · · + hkxk
Graduate Institute of Communication Engineering, National Taipei University
14. Y. S. Han Cyclic codes 13
with h0 = hk = 1.
• A parity-check matrix of C may be obtained from h(x).
• Let v be a code vector in C and v(x) = a(x)g(x). Then
v(x)h(x) = a(x)g(x)h(x)
= a(x)(xn
+ 1)
= a(x) + xn
a(x).
Since the degree of a(x) is k − 1 or less, the powers
xk
, xk+1
, . . . , xn−1
do not appear in a(x) + xn
a(x). Therefore,
k
i=0
hivn−i−j = 0 for 1 ≤ j ≤ n − k.
We take the reciprocal of h(x),
xk
h(x−1
) = hk + hk−1x + hk−2x2
+ · · · + h0xk
,
Graduate Institute of Communication Engineering, National Taipei University
15. Y. S. Han Cyclic codes 14
and can see that xk
h(x−1
) is also a factor of xn
+ 1. xk
h(x−1
)
then generates an (n, n − k) cyclic code with the following
(n − k) × n matrix as a generator matrix:
H =
hk hk−1 hk−2 · · · · h0 0 0 · · 0
0 hk hk−1 hk−2 · · · · h0 0 · · 0
0 0 hk hk−1 · · · · · h0 · · 0
· ·
· ·
· ·
0 0 · · 0 hk hk−1 hk−2 · · · · h0
Then H is a parity-check matrix of the cyclic code C. We call
h(x) the parity polynomial of C.
• Let C be an (n, k) cyclic code with generator polynomial g(x).
The dual code of C is also cyclic and is generated by the
polynomial xk
h(x−1
), where h(x) = (xn
+ 1)/g(x).
• Let
xn−k−1
= ai(x)g(x) + bi(x) for 0 ≤ i ≤ k − 1,
Graduate Institute of Communication Engineering, National Taipei University
17. Y. S. Han Cyclic codes 16
Encoding of Cyclic Codes
• Encoding process: (1) Multiply u(x) by xn−k
; (2) divide
xn−k
u(x) by g(x); (3) form the code word b(x) + xn−k
u(x).
( ) ( ) ( )
n-k stage
…
Message Xn-ku(X) Code word
Parity-check
digits
g1 g2 gn-k-1
Gate
bn-k-1
b2
b1
b0
•
Graduate Institute of Communication Engineering, National Taipei University
18. Y. S. Han Cyclic codes 17
Example
• Consider the (7, 4) cyclic code generated by g(x) = 1 + x + x3
.
Suppose that the message u = (1 0 1 1) is to be encoded. The
contentents in the register are as follows:
Input Register contents
0 0 0 (initial state)
1 1 1 0 (first shift)
1 1 0 1 (second shift)
0 1 0 0 (third shift)
1 1 0 0 (fourth shift)
After four shifts, the contents of the register are (1 0 0). Thus
the complete code vector is (1 0 0 1 0 1 1).
(1 0 1 1)
Message Xn-ku(X)
Code word
Gate
Parity digits
Graduate Institute of Communication Engineering, National Taipei University
19. Y. S. Han Cyclic codes 18
Encoding by Parity Polynomial
• Since hk = 1, we have
vn−k−j =
k−1
i=0
hivn−i−j for 1 ≤ j ≤ n − k,
which is known as a difference equation.
vn−k−1 = h0vn−1+h1vn−2+· · ·+hk−1vn−k = uk−1+h1uk−2+· · ·+hk−1u0
vn−k−2 = uk−2 + h1uk−3 + · · · + hk−1vn−k−1
• Encoding circuit:
Gate2
Gate1 u0 u1 Uk-2 Uk-1
• • • • • •
h1
h2
hk-2
hk-1
+
+
+
+
k stage
° Output to channel
Graduate Institute of Communication Engineering, National Taipei University
20. Y. S. Han Cyclic codes 19
Example
• The parity polynomial of the (7, 4) cyclic code generated by
g(x) = 1 + x + x3
is
h(x) =
x7
+ 1
1 + x + x3
= 1 + x + x2
+ x4
.
The encoding circuit:
h0 = 1
Gate 2
Gate 1 p
Output
Input
Suppose that the message to be encoded is (1 0 1 1). Then
v3 = 1, v4 = 0, v5 = 1, v6 = 1. The parity-check digits are
v2 = v6 + v3 + v4 = 1 + 1 + 0 = 0
v1 = v5 + v4 + v3 = 1 + 0 + 1 = 0
Graduate Institute of Communication Engineering, National Taipei University
21. Y. S. Han Cyclic codes 20
v0 = v4 + v3 + v2 = 0 + 1 + 0 = 1.
The code vector that corresponds to the message (1 0 1 1) is
(1 0 0 1 0 1 1).
Graduate Institute of Communication Engineering, National Taipei University
22. Y. S. Han Cyclic codes 21
Syndrome Computation
• Let r = (r0, r1, . . . , rn−1) be the received vector. The syndrome is
calculated as s = r · HT
, where H is the parity-check matrix.
• If syndrome is not identical to zero, r is not a code vector and
the presence of errors has been detected.
• Dividing r(x) by the generator polynomial g(x), we obtain
r(x) = a(x)g(x) + s(x).
• The n − k coefficients of s(x) form the syndrome s. We call s(x)
the syndrome.
r(x)/g(x) g1
s0 s1
…
Gate
g2 gn-k-1
sn-k-1
r(X)
Received
vector
Graduate Institute of Communication Engineering, National Taipei University
23. Y. S. Han Cyclic codes 22
• If C is a systematic code, then the syndrome is simply the vector
sum of the received parity digits and the parity-check digits
recomputed from the received information digits.
• Let s(x) be the syndrome of a received polynomial r(x). Then
the remainder s(1)
(x) resulting from dividing xs(x) by the
generator polynomial g(x) is the syndrome of r(1)
(x), which is a
cyclic shift of r(x).
Proof: We have
xr(x) = rn−1(xn
+ 1) + r(1)
(x).
Then
c(x)g(x) + ρ(x) = rn−1g(x)h(x) + x[a(x)g(x) + s(x)],
where ρ(x) is the remainder resulting from dividing r(1)
(x) by
g(x). Then ρ(x) is the syndrome of r(1)
(x). Rearranging the
Graduate Institute of Communication Engineering, National Taipei University
24. Y. S. Han Cyclic codes 23
above equation, we have
xs(x) = [c(x) + rn−1h(x) + xa(x)]g(x) + ρ(x).
It is clearly that ρ(x) is also the remainder resulting from
dividing xs(x) by g(x). Therefore, ρ(x) = s(1)
(x).
• The remainder s(i)
(x) resulting from dividing xi
s(x) be the
generator polynomial g(x) is the syndrome of r(i)
(x), which is
the ith cyclic shift of r(x).
Graduate Institute of Communication Engineering, National Taipei University
25. Y. S. Han Cyclic codes 24
Example
Consider the (7, 4) cyclic code generated by g(x) = 1 + x + x3
.
Suppose that the received vector is r = (0 0 1 0 1 1 0). The
syndrome of r is s = (1 0 1). As the received vector is shifted into
the circuit, the contents in the register are as follows:
1 0
Gate
1
Gate
input
If the register is shifted once more with the input gate disabled, the
new contents will be s(1)
= (1 0 0), which is the syndrome of
r(1)
= (0 0 0 1 0 1 1).
Graduate Institute of Communication Engineering, National Taipei University
26. Y. S. Han Cyclic codes 25
• We may shift the received vector r(x) into the syndrome register
from the right end. However, after the entire r(x) has been
shifted into the register, the contents in the register do not form
the sybdrome of r(x); rather, they form the syndrome s(n−k)
(x)
of r(n−k)
(x).
g1
s0 s1
…
Gate
g2 gn-k-1
sn-k-1
r(X)
Received vector
xn-kr(x)/g(x)
Proof: We have
xn−k
r(x) = a(x)g(x) + ρ(x).
Graduate Institute of Communication Engineering, National Taipei University
27. Y. S. Han Cyclic codes 26
It is known that
xn−k
r(x) = b(x)(xn
+ 1) + r(n−k)
(x).
Hence,
r(n−k)
(x) = [b(x)h(x) + a(x)]g(x) + ρ(x).
When r(n−k)
(x) is divided by g(x), ρ(x) is also the remainder.
Therefore, ρ(x) is indeed the syndrome of r(n−k)
(x).
Graduate Institute of Communication Engineering, National Taipei University
28. Y. S. Han Cyclic codes 27
Error Detection
• Let v(x) be the transmitted code word and
e(x) = e0 + e1x + · · · + en−1xn−1
be the error pattern. Then
r(x) = v(x) + e(x) = b(x)g(x) + e(x).
• Following the definition of syndrome, we have
e(x) = [a(x) + b(x)]g(x) + s(x).
This shows that the syndrome is actually equal to the remainder
resulting from dividing the error pattern by the generator
polynomial.
• The decoder has to estimate e(x) based on the syndrome s(x).
• If e(x) is identical to a code vector, e(x) is an undetectable error
pattern.
Graduate Institute of Communication Engineering, National Taipei University
29. Y. S. Han Cyclic codes 28
• The error-detection circuit is simply a syndrome circuit with an
OR gate with the syndrome digits as inputs.
• For a cyclic code, an error pattern with errors confined to i
high-order positions and − i low-order positions is also regarded
as a burst of length or less. such a burst is called end-around
burst.
• An (n, k) cyclic code is capable of detecting any error burst of
length n − k or less, including the end-around bursts.
Proof: Suppose that the error pattern is a burst of length of
n − k or less. Then
e(x) = xj
B(x),
where 0 ≤ j ≤ n − 1 and B(x) is a polynomial of degree
n − k − 1 or less. Since the degree of B(x) is less than that of
g(x), B(x) is not divisible by g(x). Since g(x) is a factor of
Graduate Institute of Communication Engineering, National Taipei University
30. Y. S. Han Cyclic codes 29
xn
+ 1 and x is not a factor of g(x), g(x) and xj
must be
relatively prime. Therefore, e(x) is not divisible by g(x). The
last part of the above statement is left as an exercise.
• The fraction of undetectable bursts of length n − k + 1 is
2−(n−k−1)
.
Proof: Consider the bursts of length n − k + 1 starting from the
ith digit position and ending at the (i + n − k)th digit position.
There are 2n−k−1
such burst. Among these bursts, the only one
that cannot be detected is
e(x) = xi
g(x).
Therefore, the fraction of undetectable bursts of length n − k + 1
starting from the ith digit position is 2−(n−k−1)
.
• For n − k + 1, the fraction of undetectable error bursts of
length is 2−(n−k)
. The proof is left as an exercise.
Graduate Institute of Communication Engineering, National Taipei University
31. Y. S. Han Cyclic codes 30
Decoding of Cyclic Codes
• Decoding of linear codes consists of three steps: (1) syndrome
computation; (2) association of the syndrome to an error pattern;
(3) error correction.
• The cyclic structure structure of a cyclic code allows us to
decode a received vector r(x) in serial manner.
• The received digits are decoded one at a time and each digit is
decoded with the same circuitry.
• The decoding circuit checks whether the syndrome ß(x)
corresponds to a correctable error pattern e(x) with an error at
the highest-order position xn−1
(i.e., en−1 = 1).
• If ß(x) does not correspond to an error pattern with en−1 = 1,
the received polynomial and the syndrome register are cyclically
shifted once simultaneously. By doing this, we have r(1)
(x) and
Graduate Institute of Communication Engineering, National Taipei University
32. Y. S. Han Cyclic codes 31
s(1)
(x).
• The second digit rn−2 of r(x) becomes the first digit of r(1)
(x).
The same decoding processes.
• If the syndrome s(x) of r(x) does correspond to an error pattern
with an error at the location xn−1
, the first received digit rn−1 is
an erroneous digit and it must be corrected by taking the sum
rn−1 ⊕ en−1.
• This correction results in a modified received polynomial, denoted
by r1(x) = r0 + r1x + · · · + rn−2xn−2
+ (rn−1 ⊕ en−1)xn−1
.
• The effect of the error digit en−1 on the syndrome can be
achieved by adding the syndrome of e
(x) = xn−1
to s(x).
• The syndrome s
(1)
1 of r
(1)
1 (x) is the remainder resulting from
dividing x[s(x) + xn−1
] by the generator polynomial g(x).
Graduate Institute of Communication Engineering, National Taipei University
33. Y. S. Han Cyclic codes 32
• Since the remainders resulting from dividing xs(x) and xn
by
g(x) are s(1)
(x) and 1, respectively, we have
s
(1)
1 (x) = s(1)(x) + 1.
Graduate Institute of Communication Engineering, National Taipei University
34. Y. S. Han Cyclic codes 33
Meggitt Decoder I
Gate
Gate
Gate
Gate
Gate
Buffer registers
Syndrome register
Error pattern detection circuit
Syndrome modification
r(X)
Received
vector
Corrected
vector
Feedback connection
ri
ei
s(x) --- r(x)
s(1)(x) --- r(1)(x)
(r0, r1, … , rn-1)
=
Graduate Institute of Communication Engineering, National Taipei University
35. Y. S. Han Cyclic codes 34
Example
Consider the decoding of the (7, 4) cyclic code generated by
g(x) = 1 + x + x3
. This code has minimum distance 3 and is capable
of correcting any single error. The seven single-error patterns and
their corresponding syndromes are as follows:
(1 0 1)
(1 1 1)
(0 1 1)
(1 1 0)
(0 0 1)
(0 1 0)
(1 0 0)
s(X) = 1 + X2
s(X) = 1 + X + X2
s(X) = X + X2
s(X) = 1 + X
s(X) = X2
s(X) = X
s(X) = 1
e6(X) = X6
e5(X) = X5
e4(X) = X4
e3(X) = X3
e2(X) = X2
e1(X) = X1
e0(X) = X0
Syndrome vector
(s0, s1, s2)
Syndrome
s(X)
Error pattern
e(X)
Suppose that the code vector v = (1 0 1 1 0 1 1) is transmitted and
r = (1 0 1 1 0 1 1).
Graduate Institute of Communication Engineering, National Taipei University
36. Y. S. Han Cyclic codes 35
Gate
Gate
Gate
Multiplexer
0 1
0
r(X)
Input
Buffer register
r’(X)
Output
Graduate Institute of Communication Engineering, National Taipei University
37. Y. S. Han Cyclic codes 36
1 0 1
1 0 1
1
0
1 1 1
0 1 1
0
0
1 1 0
1 1 0
1
0
0 1 1
1 0 1
1
0
0 0 1
0 1 1
1 1 0
1 1 1
Initial
1st shift
2st shift
3rd shift
Syndrome
register
Buffer register
Pointer
Correction
Graduate Institute of Communication Engineering, National Taipei University
38. Y. S. Han Cyclic codes 37
0 0 0
1 1 1
1
0
1 0 1
1 1 1
0
1
0 1 1
0 1 0
1
0
Error corrected
1 0 1
0 0 1
1
0
Corrected word
1 0 1
0 0 0
0 0 0
0 0 0
4th shift
5th shift
6th shift
7th shift
Graduate Institute of Communication Engineering, National Taipei University
39. Y. S. Han Cyclic codes 38
Meggitt Decoder II
• To decode a cyclic code, the received polynomial r(x) may be
shifted into the syndrome register from the right end for
computing the syndrome.
• When r(x) has been shifted into the syndrome register, the
register contains s(n−k)
(x), which is the syndrome of r(n−k)
(x).
If s(n−k)
(x) corresponds to an error pattern e(x) with en−1 = 1,
the highest-order digit rn−1 of r(x) is erroneous and must be
corrected.
• In r(n−k)
(x), the digit rn−1 is at the location xn−k−1
. When rn−1
is corrected, the error effect must be removed from s(n−k)
(x).
• The new syndrome s
(n−k)
1 (x) is the sum of s(n−k)
(x) and the
remainder ρ(x) resulting from dividing xn−k−1
by g(x). Since
Graduate Institute of Communication Engineering, National Taipei University
40. Y. S. Han Cyclic codes 39
the degree of xn−k−1
is less than the degree of g(x),
s
(n−k)
1 (x) = s(n−k)
(x) + xn−k−1
.
Error-pattern detection circuit
Syndrome register
Buffer register r(X)
Gate
Gate
Gate
Gate
Gate
r(X)
Corrected
vector
Received
vector
Feedback connection
ri
ei
(Syndrome
modification)
(r0, r1, … ,rn-1)
=
Graduate Institute of Communication Engineering, National Taipei University
41. Y. S. Han Cyclic codes 40
Example
Again, we consider the decoding of the (7, 4) cyclic code generated by
g(X) = 1 + X + X3
. Suppose that the received polynomial r(X) is
shifted into the syndrome register from the right end. The seven
single-error patterns and their corresponding syndromes are as
follows:
(0 0 1)
(0 1 0)
(1 0 0)
(1 0 1)
(1 1 1)
(0 1 1)
(1 1 0)
s(3)(X) = X2
s(3)(X) = X
s(3)(X) = 1
s(3)(X) = 1 + X2
s(3)(X) = 1 + X + X2
s(3)(X) = X + X2
s(3)(X) = 1 + X
e(X) = X6
e(X) = X5
e(X) = X4
e(X) = X3
e(X) = X2
e(X) = X1
e(X) = X0
Syndrome vector
(s0, s1, s2)
Syndrome
s(3)(X)
Error pattern
e(X)
We see that only when e(X) = X6
occurs, the syndrome is (0 0 1)
Graduate Institute of Communication Engineering, National Taipei University
42. Y. S. Han Cyclic codes 41
after the entire received polynomial r(X) has been shifted into the
syndrome register. If the single error occurs at the location Xi
with
i = 6, the syndrome in the register will not be (0 0 1) after the entire
received polynomial r(X) has been shifted into the syndrome
register. However, another 6i shifts, the syndrome register will
contain (0 0 1). Based on this fact, we obtain another decoding
circuit for the (7, 4) cyclic code generated by g(X) = 1 + X + X3
.
Graduate Institute of Communication Engineering, National Taipei University
43. Y. S. Han Cyclic codes 42
Gate
Gate
Gate
Multiplexer
r(X)
Input
Buffer register
r’(X)
Output
Graduate Institute of Communication Engineering, National Taipei University