SlideShare a Scribd company logo
1 of 13
Cyclic Code redundancy
          CRC
CRC Introduction
• CRC is technique used in the communication system to add some error
  check bits at the Transmitter side using Encoder circuits and check the
  message data for error free transmission at the Receiver side using the
  decoder circuit.
• In this method of CRC error checksum we add some CRC checksum bits at
  the transmitter side using the encoder and then send the message data
  including CRC bits to the Receiver and then decode the data which
  received at the receiver using the same CRC method.
• Now if the CRC checksum bits are zero at the receiver side it means there
  is no error else there occur some error at the transmission medium. Due
  to that the message has not properly received.
• The CRC Encoder/Decoder circuit can be design using the help of LFSR. The
  LFSR generate the CRC bit using the feedback XOR gates.
Explanation of CRC
•   Take a message data which is going to transmit over the medium.
•   Now generate the message polynomial M(x) using the data bit as the increasing
    order of the power of x.
•   Take the predefined CRC polynomial C(x) as a polynomial of x.
•   Then take the highest degree term of x from the CRC polynomial C(x) as xi.
•   Multiply the message polynomial M(x) by the xi CRC highest degree term of CRC polynomial.
•   Then divide the product of xi . M(x) by the CRC polynomial C(x). And take the remainder data
    as a polynomial of x as R(x).
•   Convert the remainder polynomial R(x) to the corresponding binary bits where the respective
    power coefficient of x occur as 1 and other as 0.
•   Append the CRC bits to the message data to the transmit the data over the medium.
•   Now at the receiver side the same CRC checksum circuit is used to decoding the data by
    passing the data over the decoder circuit in the same process as encoding.
•   Now again check the remainder data. If it is a polynomial of x as zero coefficient of each x
    term. It means there is no error else if it is a polynomial of non zero coefficient of x means
    there is a error in the transmitted data.
CRC Example
Take a example CRC – 3 checksum polynomial as x3 + x2 +1.
Now let the message data is 8 bit binary value 10101010.
Generate the message polynomial as the following
M(x) = 1 * x7 + 0 * x6+ 1 * x5 + 0 * x4 + 1 * x3 + 0 * x2 + 1 * x1 + 0* x0

M(x) = x7 + x5 + x3 + x1
The message polynomial is generated in the increasing order of x starting with x0.
Now multiply the message polynomial by the highest degree of CRC polinomial of x2.
G (x) = x3 * ( x7 + x5 + x3 + x1 )
G (x) = x10 + x8 + x6 + x4
divide the G (x) by the CRC polynomial C (x) and take the remainder and quotient.
    M (X) = C (x) * Q (x) + R(x)               : where R (x) is the remainder.
                                               : Q(x) is the quotient of G (x ) / C(x)
Division by CRC
                          x7   +   x6   +   x4   +   x3   +       x2   +   x
x3   +   x2   +   1   )   x10 +    x8   +   x6   +   x4       (
                          x10 +    x9   +   x7
                          x9   +   x8   +   x7   +   x6   +       x4
                          x9   +   x8   +   x6
                          x7   +   x4
                          x7   +   x6   +   x4
                          x6
                          x6   +   x5   +   x3
                          x5   +   x3
                          x5   +   x4   +   x2
                          x4   +   x3   +   x2
                          x4   +   x3   +   x
                          x2   +   x
Result
                               Of CRC
• The result of CRC is 110.
• Now the encoder output data is { message data : CRC bits}
•         {10101010 : 110}
• This data will go to the decoder block to check the error on the message
  data.
• If the CRC decoder bits are zero then it means there is no error.
• Repeat the same encoder process to the decoder and get the CRC data
  bits.
CRC generation using Verilog Design
•   The data is a serial data form as sin to the Encoder circuit and having a data valid
    signal at the same time and having a start signal at one clock cycle early.
•   CRC can be generated using Encoder Circuit which consist a LFSR register.
•   The Encoder circuit CRC encoder send data and CRC data to output as
    data_crc_out and data_crc_valid signals.
•   To the CRC decoder circuit which has the input data_crc_out and data_crc_valid
    and start bit is functioning same as the encoder circuit and checking the error on
    sent data if there is any error then it makes HIGH the ERROR signal else it is LOW.
•   As the ENCODER/DECODER circuit is same so there is one more signal E_D_en
    which triggering the circuit to function either Encoder or Decoder.
•   The LFSR register block consist of a number of FF as the CRC bits.
•   So as the LFSR circuit having FF so there are two more signal as clk and reset.
Block diagram for CRC
         Encoder/ Decoder
                     Top Level Black box for CRC


       clk                                                      clk
                                            Data_Crc_out
                 Data_Crc_out


                 Data_Crc_valid             Data_Crc_valid
                                   Test
                                    cr                       DECODER
ENCODER      EN_en
                                                    DC_en
                                  Bench
             Sin
                                          ERROR
             Data_valid

 rst                                                            rst
CRC- 3 ENCODER / DECODER BLOCK
           DIAGRAM
start



               clk            Data_Crc_out

               rst            Data_Crc_valid



               sin

        Data_valid

                              ERROR

                     E_D_en
Block diagram of LFSR
•   LFSR is used to create the CRC checksum bits.
•   The block diagram for a an example x3 + x2 +1.
Verilog code for CRC -3
Timing diagram for Data 10101010
      for Encoder Decoder
Result
• Hence I have verified all the operation on a CRC ENCODER/DECODER
  Circuit.
• Now it’s your time to do some CRC Checksum data calculation using some
  more example as the same method.




                                                  Thankyou

More Related Content

What's hot

block ciphers
block ciphersblock ciphers
block ciphersAsad Ali
 
DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE
DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE
DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE ShivangiSingh241
 
Multiplexing
MultiplexingMultiplexing
Multiplexingstooty s
 
Convolution codes and turbo codes
Convolution codes and turbo codesConvolution codes and turbo codes
Convolution codes and turbo codesManish Srivastava
 
Framming data link layer
Framming data link layerFramming data link layer
Framming data link layerPREMAL GAJJAR
 
Cyclic Redundancy Check in Computers Network
Cyclic Redundancy Check in Computers Network Cyclic Redundancy Check in Computers Network
Cyclic Redundancy Check in Computers Network ShivangiTak1
 
Linear block coding
Linear block codingLinear block coding
Linear block codingjknm
 
Error correction and Detection technique while sending the message
Error correction and Detection technique while sending the messageError correction and Detection technique while sending the message
Error correction and Detection technique while sending the messageAnil Kumar Sonkar Sonkar
 
Tele3113 wk10tue
Tele3113 wk10tueTele3113 wk10tue
Tele3113 wk10tueVin Voro
 

What's hot (20)

Turbo Codes
Turbo CodesTurbo Codes
Turbo Codes
 
linear codes and cyclic codes
linear codes and cyclic codeslinear codes and cyclic codes
linear codes and cyclic codes
 
block ciphers
block ciphersblock ciphers
block ciphers
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE
DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE
DIGITAL COMMUNICATION: ENCODING AND DECODING OF CYCLIC CODE
 
Lecture 5
Lecture 5Lecture 5
Lecture 5
 
Error control
Error controlError control
Error control
 
Transposition Cipher
Transposition CipherTransposition Cipher
Transposition Cipher
 
Multiplexing
MultiplexingMultiplexing
Multiplexing
 
Hamming codes
Hamming codesHamming codes
Hamming codes
 
Convolution codes and turbo codes
Convolution codes and turbo codesConvolution codes and turbo codes
Convolution codes and turbo codes
 
Hamming code system
Hamming code systemHamming code system
Hamming code system
 
Turbo Code
Turbo Code Turbo Code
Turbo Code
 
Convolutional codes
Convolutional codesConvolutional codes
Convolutional codes
 
Framming data link layer
Framming data link layerFramming data link layer
Framming data link layer
 
Cyclic Redundancy Check in Computers Network
Cyclic Redundancy Check in Computers Network Cyclic Redundancy Check in Computers Network
Cyclic Redundancy Check in Computers Network
 
RC 4
RC 4 RC 4
RC 4
 
Linear block coding
Linear block codingLinear block coding
Linear block coding
 
Error correction and Detection technique while sending the message
Error correction and Detection technique while sending the messageError correction and Detection technique while sending the message
Error correction and Detection technique while sending the message
 
Tele3113 wk10tue
Tele3113 wk10tueTele3113 wk10tue
Tele3113 wk10tue
 

Similar to CRC Error coding technique

Skr+3200+chapter+3+(kweh)
Skr+3200+chapter+3+(kweh)Skr+3200+chapter+3+(kweh)
Skr+3200+chapter+3+(kweh)Ammar Shafiq
 
CRC implementation
CRC implementation CRC implementation
CRC implementation ajay singh
 
Error Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networksError Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networksNt Arvind
 
13-DataLink_02.ppt
13-DataLink_02.ppt13-DataLink_02.ppt
13-DataLink_02.pptWinterSnow16
 
Error detection.
Error detection.Error detection.
Error detection.Wasim Akbar
 
05 directnets errors
05 directnets errors05 directnets errors
05 directnets errorsjyang1983
 
第四次课程 Chap8
第四次课程 Chap8第四次课程 Chap8
第四次课程 Chap8Emma2013
 
Viterbi Decoder Algorithm.pptx
Viterbi Decoder Algorithm.pptxViterbi Decoder Algorithm.pptx
Viterbi Decoder Algorithm.pptxChandralekhaR2
 
Error detection methods-computer networks
Error detection methods-computer networksError detection methods-computer networks
Error detection methods-computer networksDHIVYADEVAKI
 
3F4ecc.ppt
3F4ecc.ppt3F4ecc.ppt
3F4ecc.pptAnnymus
 
computer networks Error Detection Methods.pdf
computer networks Error Detection Methods.pdfcomputer networks Error Detection Methods.pdf
computer networks Error Detection Methods.pdfBalasubramanian699229
 
Encoder for (7,3) cyclic code using matlab
Encoder for (7,3) cyclic code using matlabEncoder for (7,3) cyclic code using matlab
Encoder for (7,3) cyclic code using matlabSneheshDutta
 
Code-Division Multiple Access (CDMA)
Code-Division Multiple Access (CDMA)Code-Division Multiple Access (CDMA)
Code-Division Multiple Access (CDMA)Soumen Santra
 
Convolutional Error Control Coding
Convolutional Error Control CodingConvolutional Error Control Coding
Convolutional Error Control CodingMohammed Abuibaid
 

Similar to CRC Error coding technique (20)

Skr+3200+chapter+3+(kweh)
Skr+3200+chapter+3+(kweh)Skr+3200+chapter+3+(kweh)
Skr+3200+chapter+3+(kweh)
 
CRC implementation
CRC implementation CRC implementation
CRC implementation
 
Error Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networksError Detection and correction concepts in Data communication and networks
Error Detection and correction concepts in Data communication and networks
 
Data links
Data links Data links
Data links
 
13-DataLink_02.ppt
13-DataLink_02.ppt13-DataLink_02.ppt
13-DataLink_02.ppt
 
Error detection.
Error detection.Error detection.
Error detection.
 
CRC JAVA CODE
CRC JAVA CODECRC JAVA CODE
CRC JAVA CODE
 
05 directnets errors
05 directnets errors05 directnets errors
05 directnets errors
 
B0210714
B0210714B0210714
B0210714
 
第四次课程 Chap8
第四次课程 Chap8第四次课程 Chap8
第四次课程 Chap8
 
Lecture 21
Lecture 21Lecture 21
Lecture 21
 
Viterbi Decoder Algorithm.pptx
Viterbi Decoder Algorithm.pptxViterbi Decoder Algorithm.pptx
Viterbi Decoder Algorithm.pptx
 
Error detection methods-computer networks
Error detection methods-computer networksError detection methods-computer networks
Error detection methods-computer networks
 
3F4ecc.ppt
3F4ecc.ppt3F4ecc.ppt
3F4ecc.ppt
 
computer networks Error Detection Methods.pdf
computer networks Error Detection Methods.pdfcomputer networks Error Detection Methods.pdf
computer networks Error Detection Methods.pdf
 
Encoder for (7,3) cyclic code using matlab
Encoder for (7,3) cyclic code using matlabEncoder for (7,3) cyclic code using matlab
Encoder for (7,3) cyclic code using matlab
 
BCH Codes
BCH CodesBCH Codes
BCH Codes
 
Ch3 datalink
Ch3 datalinkCh3 datalink
Ch3 datalink
 
Code-Division Multiple Access (CDMA)
Code-Division Multiple Access (CDMA)Code-Division Multiple Access (CDMA)
Code-Division Multiple Access (CDMA)
 
Convolutional Error Control Coding
Convolutional Error Control CodingConvolutional Error Control Coding
Convolutional Error Control Coding
 

More from Mantra VLSI

More from Mantra VLSI (9)

Flip Chip technology
Flip Chip technologyFlip Chip technology
Flip Chip technology
 
Number system
Number systemNumber system
Number system
 
Physical design
Physical design Physical design
Physical design
 
Basic electronics
Basic electronicsBasic electronics
Basic electronics
 
Verilog HDL
Verilog HDLVerilog HDL
Verilog HDL
 
Ethertnet data transfer.ppt
Ethertnet data transfer.pptEthertnet data transfer.ppt
Ethertnet data transfer.ppt
 
verilog code
verilog codeverilog code
verilog code
 
Divide by N clock
Divide by N clockDivide by N clock
Divide by N clock
 
Synthesis
SynthesisSynthesis
Synthesis
 

Recently uploaded

SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CANestorGamez6
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Call Girls in Nagpur High Profile
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsCharles Obaleagbon
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxjanettecruzeiro1
 
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...nagunakhan
 
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai DouxDubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Douxkojalkojal131
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation decktbatkhuu1
 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Delhi Call girls
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...kumaririma588
 
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...Suhani Kapoor
 
Design Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxDesign Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxTusharBahuguna2
 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Delhi Call girls
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girlsmodelanjalisharma4
 
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...Suhani Kapoor
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...Call Girls in Nagpur High Profile
 
Editorial design Magazine design project.pdf
Editorial design Magazine design project.pdfEditorial design Magazine design project.pdf
Editorial design Magazine design project.pdftbatkhuu1
 
Fashion trends before and after covid.pptx
Fashion trends before and after covid.pptxFashion trends before and after covid.pptx
Fashion trends before and after covid.pptxVanshNarang19
 
Stark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxStark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxjeswinjees
 
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...Yantram Animation Studio Corporation
 

Recently uploaded (20)

SCRIP Lua HTTP PROGRACMACION PLC WECON CA
SCRIP Lua HTTP PROGRACMACION PLC  WECON CASCRIP Lua HTTP PROGRACMACION PLC  WECON CA
SCRIP Lua HTTP PROGRACMACION PLC WECON CA
 
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...Top Rated  Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
Top Rated Pune Call Girls Koregaon Park ⟟ 6297143586 ⟟ Call Me For Genuine S...
 
WAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past QuestionsWAEC Carpentry and Joinery Past Questions
WAEC Carpentry and Joinery Past Questions
 
SD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptxSD_The MATATAG Curriculum Training Design.pptx
SD_The MATATAG Curriculum Training Design.pptx
 
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
Nepali Escort Girl Gomti Nagar \ 9548273370 Indian Call Girls Service Lucknow...
 
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai DouxDubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
Dubai Call Girls Pro Domain O525547819 Call Girls Dubai Doux
 
Peaches App development presentation deck
Peaches App development presentation deckPeaches App development presentation deck
Peaches App development presentation deck
 
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
Best VIP Call Girls Noida Sector 44 Call Me: 8448380779
 
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...Verified Trusted Call Girls Adugodi💘 9352852248  Good Looking standard Profil...
Verified Trusted Call Girls Adugodi💘 9352852248 Good Looking standard Profil...
 
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
VIP Russian Call Girls in Gorakhpur Deepika 8250192130 Independent Escort Ser...
 
Design Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptxDesign Inspiration for College by Slidesgo.pptx
Design Inspiration for College by Slidesgo.pptx
 
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
Best VIP Call Girls Noida Sector 47 Call Me: 8448380779
 
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call GirlsCBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
CBD Belapur Individual Call Girls In 08976425520 Panvel Only Genuine Call Girls
 
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
VIP College Call Girls Gorakhpur Bhavna 8250192130 Independent Escort Service...
 
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...Booking open Available Pune Call Girls Nanded City  6297143586 Call Hot India...
Booking open Available Pune Call Girls Nanded City 6297143586 Call Hot India...
 
Editorial design Magazine design project.pdf
Editorial design Magazine design project.pdfEditorial design Magazine design project.pdf
Editorial design Magazine design project.pdf
 
Fashion trends before and after covid.pptx
Fashion trends before and after covid.pptxFashion trends before and after covid.pptx
Fashion trends before and after covid.pptx
 
Stark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptxStark Industries Marketing Plan (1).pptx
Stark Industries Marketing Plan (1).pptx
 
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
Captivating Charm: Exploring Marseille's Hillside Villas with Our 3D Architec...
 
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance VVIP 🍎 SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SER...Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance  VVIP 🍎 SER...
Call Girls Service Mukherjee Nagar @9999965857 Delhi 🫦 No Advance VVIP 🍎 SER...
 

CRC Error coding technique

  • 2. CRC Introduction • CRC is technique used in the communication system to add some error check bits at the Transmitter side using Encoder circuits and check the message data for error free transmission at the Receiver side using the decoder circuit. • In this method of CRC error checksum we add some CRC checksum bits at the transmitter side using the encoder and then send the message data including CRC bits to the Receiver and then decode the data which received at the receiver using the same CRC method. • Now if the CRC checksum bits are zero at the receiver side it means there is no error else there occur some error at the transmission medium. Due to that the message has not properly received. • The CRC Encoder/Decoder circuit can be design using the help of LFSR. The LFSR generate the CRC bit using the feedback XOR gates.
  • 3. Explanation of CRC • Take a message data which is going to transmit over the medium. • Now generate the message polynomial M(x) using the data bit as the increasing order of the power of x. • Take the predefined CRC polynomial C(x) as a polynomial of x. • Then take the highest degree term of x from the CRC polynomial C(x) as xi. • Multiply the message polynomial M(x) by the xi CRC highest degree term of CRC polynomial. • Then divide the product of xi . M(x) by the CRC polynomial C(x). And take the remainder data as a polynomial of x as R(x). • Convert the remainder polynomial R(x) to the corresponding binary bits where the respective power coefficient of x occur as 1 and other as 0. • Append the CRC bits to the message data to the transmit the data over the medium. • Now at the receiver side the same CRC checksum circuit is used to decoding the data by passing the data over the decoder circuit in the same process as encoding. • Now again check the remainder data. If it is a polynomial of x as zero coefficient of each x term. It means there is no error else if it is a polynomial of non zero coefficient of x means there is a error in the transmitted data.
  • 4. CRC Example Take a example CRC – 3 checksum polynomial as x3 + x2 +1. Now let the message data is 8 bit binary value 10101010. Generate the message polynomial as the following M(x) = 1 * x7 + 0 * x6+ 1 * x5 + 0 * x4 + 1 * x3 + 0 * x2 + 1 * x1 + 0* x0 M(x) = x7 + x5 + x3 + x1 The message polynomial is generated in the increasing order of x starting with x0. Now multiply the message polynomial by the highest degree of CRC polinomial of x2. G (x) = x3 * ( x7 + x5 + x3 + x1 ) G (x) = x10 + x8 + x6 + x4 divide the G (x) by the CRC polynomial C (x) and take the remainder and quotient. M (X) = C (x) * Q (x) + R(x) : where R (x) is the remainder. : Q(x) is the quotient of G (x ) / C(x)
  • 5. Division by CRC x7 + x6 + x4 + x3 + x2 + x x3 + x2 + 1 ) x10 + x8 + x6 + x4 ( x10 + x9 + x7 x9 + x8 + x7 + x6 + x4 x9 + x8 + x6 x7 + x4 x7 + x6 + x4 x6 x6 + x5 + x3 x5 + x3 x5 + x4 + x2 x4 + x3 + x2 x4 + x3 + x x2 + x
  • 6. Result Of CRC • The result of CRC is 110. • Now the encoder output data is { message data : CRC bits} • {10101010 : 110} • This data will go to the decoder block to check the error on the message data. • If the CRC decoder bits are zero then it means there is no error. • Repeat the same encoder process to the decoder and get the CRC data bits.
  • 7. CRC generation using Verilog Design • The data is a serial data form as sin to the Encoder circuit and having a data valid signal at the same time and having a start signal at one clock cycle early. • CRC can be generated using Encoder Circuit which consist a LFSR register. • The Encoder circuit CRC encoder send data and CRC data to output as data_crc_out and data_crc_valid signals. • To the CRC decoder circuit which has the input data_crc_out and data_crc_valid and start bit is functioning same as the encoder circuit and checking the error on sent data if there is any error then it makes HIGH the ERROR signal else it is LOW. • As the ENCODER/DECODER circuit is same so there is one more signal E_D_en which triggering the circuit to function either Encoder or Decoder. • The LFSR register block consist of a number of FF as the CRC bits. • So as the LFSR circuit having FF so there are two more signal as clk and reset.
  • 8. Block diagram for CRC Encoder/ Decoder Top Level Black box for CRC clk clk Data_Crc_out Data_Crc_out Data_Crc_valid Data_Crc_valid Test cr DECODER ENCODER EN_en DC_en Bench Sin ERROR Data_valid rst rst
  • 9. CRC- 3 ENCODER / DECODER BLOCK DIAGRAM start clk Data_Crc_out rst Data_Crc_valid sin Data_valid ERROR E_D_en
  • 10. Block diagram of LFSR • LFSR is used to create the CRC checksum bits. • The block diagram for a an example x3 + x2 +1.
  • 12. Timing diagram for Data 10101010 for Encoder Decoder
  • 13. Result • Hence I have verified all the operation on a CRC ENCODER/DECODER Circuit. • Now it’s your time to do some CRC Checksum data calculation using some more example as the same method. Thankyou