SlideShare a Scribd company logo
The parity bits of linear block codes are linear
combination of the message. Therefore, we can
represent the encoder by a linear system
described by matrices.
Basic Definitions
Linearity:
where m is a k-bit information sequence
c is an n-bit codeword.
is a bit-by-bit mod-2 addition without carry
Linear code: The sum of any two codewords is a
codeword.
Observation: The all-zero sequence is a codeword
in every linear block code.
then
andIf
2121
2211
ccmm
cmcm
⊕→⊕
→→
⊕
Basic Definitions (cont’d)
Def: The weight of a codeword ci , denoted by w(ci), is the
number of of nonzero elements in the codeword.
Def: The minimum weight of a code, wmin, is the smallest
weight of the nonzero codewords in the code.
Theorem: In any linear code, dmin = wmin
Systematic codes
Any linear block code can be put in systematic form
n-k
check bits
k
information bits
linear Encoder.
By linear transformation
c =m ⋅G =m0g0+ m1g0+……+ mk-1gk-1
The code C is called a k-dimensional subspace.
G is called a generator matrix of the code.
Here G is a k ×n matrix of rank k of elements from
GF(2), giis the i-th row vector of G.
The rows of G are linearly independent since G is
assumed to have rank k.
Example:
(7, 4) Hamming code over GF(2)
The encoding equation for this code is given by
c0= m0
c1= m1
c2= m2
c3= m3
c4= m0+ m1+ m2
c5= m1+ m2+ m3
c6= m0+ m1+ m3
Linear Systematic Block Code:
An (n, k) linear systematic code is completely
specified by a k × n generator matrix of the
following form.
where Ik is the k × k identity matrix.
Linear Block Codes
the number of codeworde is 2k
since there are 2k
distinct
messages.
The set of vectors {gi} are linearly independent since we
must have a set of unique codewords.
linearly independent vectors mean that no vector gi can be
expressed as a linear combination of the other vectors.
These vectors are called baises vectors of the vector space
C.
The dimension of this vector space is the number of the
basis vector which are k.
Gi є C the rows of G are all legal codewords.
Hamming Weight
the minimum hamming distance of a linear block code
is equal to the minimum hamming weight of the
nonzero code vectors.
Since each gi єC ,we must have Wh(gi)
≥dminthis a
necessary condition but not sufficient.
Therefore, if the hamming weight of one of the rows of
G is less than dmin, dmin is not correct or G not correct.
Generator Matrix
All 2k
codewords can be generated from a set of k
linearly independent codewords.
The simplest choice of this set is the k codewords
corresponding to the information sequences that have
a single nonzero element.
Illustration: The generating set for the (7,4) code:
1000 ===> 1101000
0100 ===> 0110100
0010 ===> 1110010
0001 ===> 1010001
Generator Matrix (cont’d)
Every codeword is a linear combination of these 4
codewords.
That is: c = m G, where
Storage requirement reduced from 2k
(n+k) to k(n-k).
[ ]G P | Ik
=
















=
× − ×
1 1 0
0 1 1
1 1 1
1 0 1
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
k n k k k( )
     
Parity-Check Matrix
For G = [ P | Ik], define the matrix H = [In-k | PT
]
(The size of H is (n-k)xn).
It follows that GHT
= 0.
Since c = mG, then cHT
= mGHT
= 0.
H =










1 0 0 1 0 1 1
0 1 0 1 1 1 0
0 0 1 0 1 1 1
Encoding Using H Matrix
[ ]c c c c c c c1 2 3 4 5 6 7
1 0 0
0 1 0
0 0 1
1 1 0
0 1 1
1 1 1
1 0 1
0
0
0
1 6 7
2 5 6
3 6 7
1 6 7
2 5 6
3 6 7














=
+ + =
+ + =
+ + =
⇒
+ +
+ +
+ +
0
c + c c c
c + c c c
c + c c c
c = c c c
c = c c c
c = c c c
4
4
5
4
4
5
information
Encoding Circuit
Hamming Codes
Hamming codes constitute a class of single-error
correcting codes defined as:
n = 2r
-1, k = n-r, r > 2
The minimum distance of the code dmin= 3
Hamming codes are perfect codes.
Construction rule:
The H matrix of a Hamming code of order r has as its
columns all non-zero r-bit patterns.
Size of H: r x(2r
-1)=(n-k)xn
Decoding
Let c be transmitted and r be received, where
r = c + e
e = error pattern = e1e2..... en, where
The weight of e determines the number of errors.
If the error pattern can be determined, decoding can
be achieved by:
c = r + e
e i
i
th
= 


1 if the error has occured in the location
0 otherwise
+c
e
r
Decoding (cont’d)
Consider the (7,4) code.
(1) Let 1101000 be transmitted and 1100000 be
received.
Then: e = 0001000 ( an error in the fourth
location)
(2) Let r = 1110100. What was transmitted?
c e
#2 0110100 1000000
#1 1101000 0011100
#3 1011100 0101000
The first scenario is the most probable.
The Syndrome
Huge storage memory (and searching time) is
required by standard array decoding.
Define the syndrome
s = vHT
= (c + e) HT
= eHT
The syndrome depends only on the error pattern and
not on the transmitted codeword.
Therefore, each coset in the array is associated with a
unique syndrome.
The Syndrom (cont’d)
Error Pattern Syndrome
0000000 000
1000000 100
0100000 010
0010000 001
0001000 110
0000100 011
0000010 111
0000001 101
Syndrome Decoding
Decoding Procedure:
1. For the received vector v, compute the syndrome s =
vHT
.
2. Using the table, identify the error pattern e.
3. Add e to v to recover the transmitted codeword c.
Example:
v = 1110101 ==> s = 001 ==> e = 0010000
Then, c = 1100101
Syndrome decoding reduces storage memory from nx2n
to 2n-k
(2n-k). Also, It reduces the searching time
considerably.
Decoding of Hamming Codes
Consider a single-error pattern e(i)
, where i is a
number determining the position of the error.
s = e(i)
HT
= Hi
T
= the transpose of the ith
column of H.
Example:
[ ] [ ]0 1 0 0 0 0 0
1 0 0
0 1 0
0 0 1
1 1 0
0 1 1
1 1 1
1 0 1
0 1 0
















=
Decoding of Hamming Codes
(cont’d)
That is, the (transpose of the) ith
column of H is the
syndrome corresponding to a single error in the ith
position.
Decoding rule:
1. Compute the syndrome s = vHT
2. Locate the error ( i.e. find i for which sT
= Hi)
3. Invert the ith
bit of v.
Hardware Implementation
Let v = v0 v1 v2 v3 v4 v5 v6 and s = s0 s1 s2
From the H matrix:
s0 = v0 + v3 + v5 + v6
s1 = v1 + v3 + v4 + v5
s2 = v2 + v4 + v5 + v6
From the table of syndromes and their corresponding
correctable error patterns, a truth table can be
construsted. A combinational logic circuit with s0 , s1 ,
s2 as input and e0 , e1 , e2 , e3 , e4 , e5 , e6 as outputs can
be designed.
Decoding Circuit for the (7,4) HC
v rather than r

More Related Content

What's hot

Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...
Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...
Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...
Madhumita Tamhane
 
linear codes and cyclic codes
linear codes and cyclic codeslinear codes and cyclic codes
linear codes and cyclic codes
saigopinadh bodigiri
 
Turbo codes.ppt
Turbo codes.pptTurbo codes.ppt
Turbo codes.ppt
Prasant Barik
 
Linear block coding
Linear block codingLinear block coding
Linear block coding
jknm
 
Reed solomon code
Reed solomon codeReed solomon code
Reed solomon code
Melaku Bayih Demessie
 
Digital Communication Unit 1
Digital Communication Unit 1Digital Communication Unit 1
Digital Communication Unit 1
Anjuman College of Engg. & Tech.
 
Digital Communication 1
Digital Communication 1Digital Communication 1
Digital Communication 1
admercano101
 
Linear Block Codes
Linear Block CodesLinear Block Codes
Linear Block Codes
NilaNila16
 
Fourier transforms
Fourier transformsFourier transforms
Fourier transforms
Iffat Anjum
 
Matched filter
Matched filterMatched filter
Matched filter
srkrishna341
 
Introduction to Digital Communication
Introduction to Digital CommunicationIntroduction to Digital Communication
Introduction to Digital Communication
Dr. Sanjay M. Gulhane
 
Ch04
Ch04Ch04
Forward error correction
Forward error correctionForward error correction
Forward error correction
Prankit Mishra
 
Bch codes
Bch codesBch codes
Bch codes
Gaurav Thakur
 
Convolutional codes
Convolutional codesConvolutional codes
Convolutional codes
Abdullaziz Tagawy
 
Error control coding techniques
Error control coding techniquesError control coding techniques
Error control coding techniques
DhanashriNandre
 
Basics of coding theory
Basics of coding theoryBasics of coding theory
Basics of coding theory
Madhumita Tamhane
 
6. 2 ray propagation model part 2
6. 2 ray propagation model   part 26. 2 ray propagation model   part 2
6. 2 ray propagation model part 2
JAIGANESH SEKAR
 
Image trnsformations
Image trnsformationsImage trnsformations
Image trnsformations
John Williams
 
Hamming codes
Hamming codesHamming codes
Hamming codes
GIGI JOSEPH
 

What's hot (20)

Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...
Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...
Convolution codes - Coding/Decoding Tree codes and Trellis codes for multiple...
 
linear codes and cyclic codes
linear codes and cyclic codeslinear codes and cyclic codes
linear codes and cyclic codes
 
Turbo codes.ppt
Turbo codes.pptTurbo codes.ppt
Turbo codes.ppt
 
Linear block coding
Linear block codingLinear block coding
Linear block coding
 
Reed solomon code
Reed solomon codeReed solomon code
Reed solomon code
 
Digital Communication Unit 1
Digital Communication Unit 1Digital Communication Unit 1
Digital Communication Unit 1
 
Digital Communication 1
Digital Communication 1Digital Communication 1
Digital Communication 1
 
Linear Block Codes
Linear Block CodesLinear Block Codes
Linear Block Codes
 
Fourier transforms
Fourier transformsFourier transforms
Fourier transforms
 
Matched filter
Matched filterMatched filter
Matched filter
 
Introduction to Digital Communication
Introduction to Digital CommunicationIntroduction to Digital Communication
Introduction to Digital Communication
 
Ch04
Ch04Ch04
Ch04
 
Forward error correction
Forward error correctionForward error correction
Forward error correction
 
Bch codes
Bch codesBch codes
Bch codes
 
Convolutional codes
Convolutional codesConvolutional codes
Convolutional codes
 
Error control coding techniques
Error control coding techniquesError control coding techniques
Error control coding techniques
 
Basics of coding theory
Basics of coding theoryBasics of coding theory
Basics of coding theory
 
6. 2 ray propagation model part 2
6. 2 ray propagation model   part 26. 2 ray propagation model   part 2
6. 2 ray propagation model part 2
 
Image trnsformations
Image trnsformationsImage trnsformations
Image trnsformations
 
Hamming codes
Hamming codesHamming codes
Hamming codes
 

Similar to 5 linear block codes

Coding theory.pdf
Coding theory.pdfCoding theory.pdf
Coding theory.pdf
230231060
 
error control coding
error control coding error control coding
error control coding
Suhad Malayshi
 
Channel Coding (Error Control Coding)
Channel Coding (Error Control Coding)Channel Coding (Error Control Coding)
Channel Coding (Error Control Coding)
Ola Mashaqi @ an-najah national university
 
A method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codesA method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codes
Alexander Decker
 
Reed_Solomon_Implementation
Reed_Solomon_ImplementationReed_Solomon_Implementation
Reed_Solomon_Implementation
ramya c b
 
Digital Communication: Channel Coding
Digital Communication: Channel CodingDigital Communication: Channel Coding
Digital Communication: Channel Coding
Dr. Sanjay M. Gulhane
 
Channel Coding .pptx
Channel Coding .pptxChannel Coding .pptx
Channel Coding .pptx
Mortadha96
 
Digital Communication Exam Help
Digital Communication Exam HelpDigital Communication Exam Help
Digital Communication Exam Help
Live Exam Helper
 
13-DataLink_02.ppt
13-DataLink_02.ppt13-DataLink_02.ppt
13-DataLink_02.ppt
WinterSnow16
 
Data links
Data links Data links
Data links
EshaAfzal5
 
Ch10 2 v1
Ch10 2 v1Ch10 2 v1
Ch10 2 v1
bhagavanprasad
 
Cn lec-06
Cn lec-06Cn lec-06
Cn lec-06
M Mudassar Khan
 
Ch10 2 v1
Ch10 2 v1Ch10 2 v1
Ch10 2 v1
Vivek Kumar
 
GROUP03_AMAK:ERROR DETECTION AND CORRECTION PPT
GROUP03_AMAK:ERROR DETECTION AND CORRECTION PPTGROUP03_AMAK:ERROR DETECTION AND CORRECTION PPT
GROUP03_AMAK:ERROR DETECTION AND CORRECTION PPT
Krishbathija
 
An Efficient Interpolation-Based Chase BCH Decoder
An Efficient Interpolation-Based Chase BCH DecoderAn Efficient Interpolation-Based Chase BCH Decoder
An Efficient Interpolation-Based Chase BCH Decoder
ijsrd.com
 
A method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codesA method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codes
Alexander Decker
 
Linear Block code.pdf
Linear Block code.pdfLinear Block code.pdf
Linear Block code.pdf
SuryaRamVM
 
Weight enumerators of block codes and the mc williams
Weight  enumerators of block codes and  the mc williamsWeight  enumerators of block codes and  the mc williams
Weight enumerators of block codes and the mc williams
Madhumita Tamhane
 
Digital communication coding Lectures Slides.ppt
Digital communication coding Lectures Slides.pptDigital communication coding Lectures Slides.ppt
Digital communication coding Lectures Slides.ppt
MohamadHalimAbdWahid
 
Performance bounds for unequally punctured
Performance bounds for unequally puncturedPerformance bounds for unequally punctured
Performance bounds for unequally punctured
eSAT Publishing House
 

Similar to 5 linear block codes (20)

Coding theory.pdf
Coding theory.pdfCoding theory.pdf
Coding theory.pdf
 
error control coding
error control coding error control coding
error control coding
 
Channel Coding (Error Control Coding)
Channel Coding (Error Control Coding)Channel Coding (Error Control Coding)
Channel Coding (Error Control Coding)
 
A method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codesA method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codes
 
Reed_Solomon_Implementation
Reed_Solomon_ImplementationReed_Solomon_Implementation
Reed_Solomon_Implementation
 
Digital Communication: Channel Coding
Digital Communication: Channel CodingDigital Communication: Channel Coding
Digital Communication: Channel Coding
 
Channel Coding .pptx
Channel Coding .pptxChannel Coding .pptx
Channel Coding .pptx
 
Digital Communication Exam Help
Digital Communication Exam HelpDigital Communication Exam Help
Digital Communication Exam Help
 
13-DataLink_02.ppt
13-DataLink_02.ppt13-DataLink_02.ppt
13-DataLink_02.ppt
 
Data links
Data links Data links
Data links
 
Ch10 2 v1
Ch10 2 v1Ch10 2 v1
Ch10 2 v1
 
Cn lec-06
Cn lec-06Cn lec-06
Cn lec-06
 
Ch10 2 v1
Ch10 2 v1Ch10 2 v1
Ch10 2 v1
 
GROUP03_AMAK:ERROR DETECTION AND CORRECTION PPT
GROUP03_AMAK:ERROR DETECTION AND CORRECTION PPTGROUP03_AMAK:ERROR DETECTION AND CORRECTION PPT
GROUP03_AMAK:ERROR DETECTION AND CORRECTION PPT
 
An Efficient Interpolation-Based Chase BCH Decoder
An Efficient Interpolation-Based Chase BCH DecoderAn Efficient Interpolation-Based Chase BCH Decoder
An Efficient Interpolation-Based Chase BCH Decoder
 
A method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codesA method to determine partial weight enumerator for linear block codes
A method to determine partial weight enumerator for linear block codes
 
Linear Block code.pdf
Linear Block code.pdfLinear Block code.pdf
Linear Block code.pdf
 
Weight enumerators of block codes and the mc williams
Weight  enumerators of block codes and  the mc williamsWeight  enumerators of block codes and  the mc williams
Weight enumerators of block codes and the mc williams
 
Digital communication coding Lectures Slides.ppt
Digital communication coding Lectures Slides.pptDigital communication coding Lectures Slides.ppt
Digital communication coding Lectures Slides.ppt
 
Performance bounds for unequally punctured
Performance bounds for unequally puncturedPerformance bounds for unequally punctured
Performance bounds for unequally punctured
 

Recently uploaded

GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
Javier Junquera
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
Hiike
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 

Recently uploaded (20)

GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)GNSS spoofing via SDR (Criptored Talks 2024)
GNSS spoofing via SDR (Criptored Talks 2024)
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - HiikeSystem Design Case Study: Building a Scalable E-Commerce Platform - Hiike
System Design Case Study: Building a Scalable E-Commerce Platform - Hiike
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 

5 linear block codes

  • 1. The parity bits of linear block codes are linear combination of the message. Therefore, we can represent the encoder by a linear system described by matrices.
  • 2. Basic Definitions Linearity: where m is a k-bit information sequence c is an n-bit codeword. is a bit-by-bit mod-2 addition without carry Linear code: The sum of any two codewords is a codeword. Observation: The all-zero sequence is a codeword in every linear block code. then andIf 2121 2211 ccmm cmcm ⊕→⊕ →→ ⊕
  • 3. Basic Definitions (cont’d) Def: The weight of a codeword ci , denoted by w(ci), is the number of of nonzero elements in the codeword. Def: The minimum weight of a code, wmin, is the smallest weight of the nonzero codewords in the code. Theorem: In any linear code, dmin = wmin Systematic codes Any linear block code can be put in systematic form n-k check bits k information bits
  • 4. linear Encoder. By linear transformation c =m ⋅G =m0g0+ m1g0+……+ mk-1gk-1 The code C is called a k-dimensional subspace. G is called a generator matrix of the code. Here G is a k ×n matrix of rank k of elements from GF(2), giis the i-th row vector of G. The rows of G are linearly independent since G is assumed to have rank k.
  • 5. Example: (7, 4) Hamming code over GF(2) The encoding equation for this code is given by c0= m0 c1= m1 c2= m2 c3= m3 c4= m0+ m1+ m2 c5= m1+ m2+ m3 c6= m0+ m1+ m3
  • 6. Linear Systematic Block Code: An (n, k) linear systematic code is completely specified by a k × n generator matrix of the following form. where Ik is the k × k identity matrix.
  • 7. Linear Block Codes the number of codeworde is 2k since there are 2k distinct messages. The set of vectors {gi} are linearly independent since we must have a set of unique codewords. linearly independent vectors mean that no vector gi can be expressed as a linear combination of the other vectors. These vectors are called baises vectors of the vector space C. The dimension of this vector space is the number of the basis vector which are k. Gi є C the rows of G are all legal codewords.
  • 8. Hamming Weight the minimum hamming distance of a linear block code is equal to the minimum hamming weight of the nonzero code vectors. Since each gi єC ,we must have Wh(gi) ≥dminthis a necessary condition but not sufficient. Therefore, if the hamming weight of one of the rows of G is less than dmin, dmin is not correct or G not correct.
  • 9. Generator Matrix All 2k codewords can be generated from a set of k linearly independent codewords. The simplest choice of this set is the k codewords corresponding to the information sequences that have a single nonzero element. Illustration: The generating set for the (7,4) code: 1000 ===> 1101000 0100 ===> 0110100 0010 ===> 1110010 0001 ===> 1010001
  • 10. Generator Matrix (cont’d) Every codeword is a linear combination of these 4 codewords. That is: c = m G, where Storage requirement reduced from 2k (n+k) to k(n-k). [ ]G P | Ik =                 = × − × 1 1 0 0 1 1 1 1 1 1 0 1 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 k n k k k( )      
  • 11. Parity-Check Matrix For G = [ P | Ik], define the matrix H = [In-k | PT ] (The size of H is (n-k)xn). It follows that GHT = 0. Since c = mG, then cHT = mGHT = 0. H =           1 0 0 1 0 1 1 0 1 0 1 1 1 0 0 0 1 0 1 1 1
  • 12. Encoding Using H Matrix [ ]c c c c c c c1 2 3 4 5 6 7 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 0 0 0 1 6 7 2 5 6 3 6 7 1 6 7 2 5 6 3 6 7               = + + = + + = + + = ⇒ + + + + + + 0 c + c c c c + c c c c + c c c c = c c c c = c c c c = c c c 4 4 5 4 4 5 information
  • 14. Hamming Codes Hamming codes constitute a class of single-error correcting codes defined as: n = 2r -1, k = n-r, r > 2 The minimum distance of the code dmin= 3 Hamming codes are perfect codes. Construction rule: The H matrix of a Hamming code of order r has as its columns all non-zero r-bit patterns. Size of H: r x(2r -1)=(n-k)xn
  • 15. Decoding Let c be transmitted and r be received, where r = c + e e = error pattern = e1e2..... en, where The weight of e determines the number of errors. If the error pattern can be determined, decoding can be achieved by: c = r + e e i i th =    1 if the error has occured in the location 0 otherwise +c e r
  • 16. Decoding (cont’d) Consider the (7,4) code. (1) Let 1101000 be transmitted and 1100000 be received. Then: e = 0001000 ( an error in the fourth location) (2) Let r = 1110100. What was transmitted? c e #2 0110100 1000000 #1 1101000 0011100 #3 1011100 0101000 The first scenario is the most probable.
  • 17. The Syndrome Huge storage memory (and searching time) is required by standard array decoding. Define the syndrome s = vHT = (c + e) HT = eHT The syndrome depends only on the error pattern and not on the transmitted codeword. Therefore, each coset in the array is associated with a unique syndrome.
  • 18. The Syndrom (cont’d) Error Pattern Syndrome 0000000 000 1000000 100 0100000 010 0010000 001 0001000 110 0000100 011 0000010 111 0000001 101
  • 19. Syndrome Decoding Decoding Procedure: 1. For the received vector v, compute the syndrome s = vHT . 2. Using the table, identify the error pattern e. 3. Add e to v to recover the transmitted codeword c. Example: v = 1110101 ==> s = 001 ==> e = 0010000 Then, c = 1100101 Syndrome decoding reduces storage memory from nx2n to 2n-k (2n-k). Also, It reduces the searching time considerably.
  • 20. Decoding of Hamming Codes Consider a single-error pattern e(i) , where i is a number determining the position of the error. s = e(i) HT = Hi T = the transpose of the ith column of H. Example: [ ] [ ]0 1 0 0 0 0 0 1 0 0 0 1 0 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 0 1 0                 =
  • 21. Decoding of Hamming Codes (cont’d) That is, the (transpose of the) ith column of H is the syndrome corresponding to a single error in the ith position. Decoding rule: 1. Compute the syndrome s = vHT 2. Locate the error ( i.e. find i for which sT = Hi) 3. Invert the ith bit of v.
  • 22. Hardware Implementation Let v = v0 v1 v2 v3 v4 v5 v6 and s = s0 s1 s2 From the H matrix: s0 = v0 + v3 + v5 + v6 s1 = v1 + v3 + v4 + v5 s2 = v2 + v4 + v5 + v6 From the table of syndromes and their corresponding correctable error patterns, a truth table can be construsted. A combinational logic circuit with s0 , s1 , s2 as input and e0 , e1 , e2 , e3 , e4 , e5 , e6 as outputs can be designed.
  • 23. Decoding Circuit for the (7,4) HC v rather than r