Source Coding and Channel Coding Techniques in Digital Communication
Higher transmission rates and excellent dependability are two
major desirable aspects in any digital communication system (ie., low
probability of error). Baseband coding methods are utilized to achieve these
qualities. Baseband coding may be divided into two categories. Source coding
and channel coding are the two types of coding.
For an efficient representation of data generated by a
discrete source, source coding is used. By minimizing the duplication of the
information source, source coding reduces the average bit rate required for the
representation of the source.
Digital information is reliably sent over the channel via
channel coding. Channel coding increases communication performance by allowing
transmitted signals to survive different channel impairments such as noise,
interference, and fading. To give error detection and correction capabilities
to the data being broadcast, channel coding schemes include controlled
redundancy. As a result, error control coding is another name for channel
coding.
RATIONALE FOR CODING
(NEED FOR CODING)
• The transmitted signal power and channel bandwidth are the
fundamental communication resources, and these two factors, along with the
power spectral density of receiver noise, determine the signal energy per
bit-to-noise power density ratio, Eb/No.
• For a given modulation scheme, the Eb/No ratio indicates
the probability of error (Pe) or bit error rate (BER).
• Noise generated by the channel might cause mistakes in
binary data transmission. i.e., a bit 0 might become a bit 1 and vice versa.
These faults have a significant impact on the data transmission's reliability.
• As a result, in reality, it is not possible to deliver
adequate data quality with low error performance using the known modulation
techniques. In addition, the maximum value of the Eb/No ratio that may be
attained is limited.
• As a result, using coding to change data quality from
problematic to acceptable is the only feasible option for a fixed Eb/No.
• Reducing the needed Eb/No for a fixed bit error rate is
another practical reason for using coding. The needed transmission power will
be reduced when the Eb/No ratio is reduced. As a result, hardware costs are
reduced by needing a smaller antenna size.
• Figure 1 represents a digital communication system that
employs channel coding.
Figure 1: Digital Communication System with Channel Coding
In a controlled manner, the channel encoder adds additional
bits (redundancy) to the message bits.
• The encoded signal is modulated before being sent across a
noisy channel. The channel decoder finds the superfluous bits after
demodulation and utilizes them to detect and rectify faults in the message
bits. As a result, channel coding reduces the mistakes caused by channel noise.
Drawbacks of channel
coding
• Coding adds complexity to the communication system by
including redundant bits in coded signals, which increases the necessary
transmission capacity.
As a result, consideration of bandwidth and system complexity
must be factored into the design trade-offs when using error control coding to
obtain acceptable error performance.
TYPES OF CODES:
For error control coding, a variety of codes can be used. The following is a list of the various code classifications.
I.
Based on Methodology / Architecture
1.
Block Codes:
The channel
encoder receives data in k-bit blocks to create an (n, k) block code. It adds
(n-k) redundant bits to each block, resulting in an encoded block of n bits.
Memory isn't required for block codes.
2.
Convolutional Codes:
The discrete-time convolution of the input sequence with the
encoder's impulse response is the encoding process in a convolutional code. The
message bits are constantly accepted by the convolutional encoder, which then
constructs the encoded sequence. Memory is required when using convolutional
coding. Tree codes are subdivided into convolutional codes.
II.
Based on hardware mechanization required to generate
1.
Linear Code:
A linear code
has the feature that any two of its codewords may be put together in modulo-2
arithmetic to provide a third codeword. Linear codes are almost commonly employed
in practical applications.
2.
Nonlinear code:
The Modulo-2
addition of nonlinear codewords does not always result in the production of a
third codeword. Nonlinear codes have had a smaller role.
III. Based on the structure
of Architecture (Tree / Block)
In block codes, this classification relates to the way
redundant bits (check bits) are added to the message (information) bits.
1. Systematic Code:
The redundant (check) bits are introduced in a systematic
block code in such a way that the message bits appear first, followed by the
redundant (check) bits.
2. Non-Systematic Code:
It is impossible to distinguish between message bits and
redundant (check) bits in a non-systematic block coding. They're mixed in the
block.
The following is a list of the many error correction/detection codes in the linear coding class.
Figure 2: Classification of Linear Codes